vendor: 20,579 bytes, lines 1-34
1var gY=Object.defineProperty;var AY=(t,e,n)=>e in t?gY(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var vY=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var mf=(t,e,n)=>(AY(t,typeof e!="symbol"?e+"":e,n),n),Fv=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)};var Ll=(t,e,n)=>(Fv(t,e,"read from private field"),n?n.call(t):e.get(t)),Nu=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},xp=(t,e,n,i)=>(Fv(t,e,"write to private field"),i?i.call(t,n):e.set(t,n),n);var gf=(t,e,n)=>(Fv(t,e,"access private method"),n);var YTe=vY((Ae,Ks)=>{function yY(t,e){for(var n=0;n<e.length;n++){const i=e[n];if(typeof i!="string"&&!Array.isArray(i)){for(const r in i)if(r!=="default"&&!(r in t)){const s=Object.getOwnPropertyDescriptor(i,r);s&&Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:()=>i[r]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))i(r);new MutationObserver(r=>{for(const s of r)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const s={};return r.integrity&&(s.integrity=r.integrity),r.referrerPolicy&&(s.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?s.credentials="include":r.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(r){if(r.ep)return;r.ep=!0;const s=n(r);fetch(r.href,s)}})();function _9(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var zk={exports:{}},x9={},Vk={exports:{}},en={};/** 2 * @license React 3 * react.production.min.js 4 * 5 * Copyright (c) Facebook, Inc. and its affiliates. 6 * 7 * This source code is licensed under the MIT license found in the 8 * LICENSE file in the root directory of this source tree. 9 */var T4=Symbol.for("react.element"),qY=Symbol.for("react.portal"),_Y=Symbol.for("react.fragment"),xY=Symbol.for("react.strict_mode"),EY=Symbol.for("react.profiler"),SY=Symbol.for("react.provider"),TY=Symbol.for("react.context"),CY=Symbol.for("react.forward_ref"),wY=Symbol.for("react.suspense"),IY=Symbol.for("react.memo"),MY=Symbol.for("react.lazy"),hR=Symbol.iterator;function RY(t){return t===null||typeof t!="object"?null:(t=hR&&t[hR]||t["@@iterator"],typeof t=="function"?t:null)}var Gk={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Qk=Object.assign,Hk={};function E2(t,e,n){this.props=t,this.context=e,this.refs=Hk,this.updater=n||Gk}E2.prototype.isReactComponent={};E2.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};E2.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function Wk(){}Wk.prototype=E2.prototype;function IS(t,e,n){this.props=t,this.context=e,this.refs=Hk,this.updater=n||Gk}var MS=IS.prototype=new Wk;MS.constructor=IS;Qk(MS,E2.prototype);MS.isPureReactComponent=!0;var fR=Array.isArray,$k=Object.prototype.hasOwnProperty,RS={current:null},jk={key:!0,ref:!0,__self:!0,__source:!0};function Xk(t,e,n){var i,r={},s=null,o=null;if(e!=null)for(i in e.ref!==void 0&&(o=e.ref),e.key!==void 0&&(s=""+e.key),e)$k.call(e,i)&&!jk.hasOwnProperty(i)&&(r[i]=e[i]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var l=Array(a),u=0;u<a;u++)l[u]=arguments[u+2];r.children=l}if(t&&t.defaultProps)for(i in a=t.defaultProps,a)r[i]===void 0&&(r[i]=a[i]);return{$$typeof:T4,type:t,key:s,ref:o,props:r,_owner:RS.current}}function bY(t,e){return{$$typeof:T4,type:t.type,key:e,ref:t.ref,props:t.props,_owner:t._owner}}function bS(t){return typeof t=="object"&&t!==null&&t.$$typeof===T4}function PY(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(n){return e[n]})}var dR=/\/+/g;function Ov(t,e){return typeof t=="object"&&t!==null&&t.key!=null?PY(""+t.key):e.toString(36)}function u8(t,e,n,i,r){var s=typeof t;(s==="undefined"||s==="boolean")&&(t=null);var o=!1;if(t===null)o=!0;else switch(s){case"string":case"number":o=!0;break;case"object":switch(t.$$typeof){case T4:case qY:o=!0}}if(o)return o=t,r=r(o),t=i===""?"."+Ov(o,0):i,fR(r)?(n="",t!=null&&(n=t.replace(dR,"$&/")+"/"),u8(r,e,n,"",function(u){return u})):r!=null&&(bS(r)&&(r=bY(r,n+(!r.key||o&&o.key===r.key?"":(""+r.key).replace(dR,"$&/")+"/")+t)),e.push(r)),1;if(o=0,i=i===""?".":i+":",fR(t))for(var a=0;a<t.length;a++){s=t[a];var l=i+Ov(s,a);o+=u8(s,e,n,l,r)}else if(l=RY(t),typeof l=="function")for(t=l.call(t),a=0;!(s=t.next()).done;)s=s.value,l=i+Ov(s,a++),o+=u8(s,e,n,l,r);else if(s==="object")throw e=String(t),Error("Objects are not valid as a React child (found: "+(e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)+"). If you meant to render a collection of children, use an array instead.");return o}function Ep(t,e,n){if(t==null)return t;var i=[],r=0;return u8(t,i,"","",function(s){return e.call(n,s,r++)}),i}function BY(t){if(t._status===-1){var e=t._result;e=e(),e.then(function(n){(t._status===0||t._status===-1)&&(t._status=1,t._result=n)},function(n){(t._status===0||t._status===-1)&&(t._status=2,t._result=n)}),t._status===-1&&(t._status=0,t._result=e)}if(t._status===1)return t._result.default;throw t._result}var os={current:null},c8={transition:null},DY={ReactCurrentDispatcher:os,ReactCurrentBatchConfig:c8,ReactCurrentOwner:RS};en.Children={map:Ep,forEach:function(t,e,n){Ep(t,function(){e.apply(this,arguments)},n)},count:function(t){var e=0;return Ep(t,function(){e++}),e},toArray:function(t){return Ep(t,function(e){return e})||[]},only:function(t){if(!bS(t))throw Error("React.Children.only expected to receive a single React element child.");return t}};en.Component=E2;en.Fragment=_Y;en.Profiler=EY;en.PureComponent=IS;en.StrictMode=xY;en.Suspense=wY;en.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=DY;en.cloneElement=function(t,e,n){if(t==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var i=Qk({},t.props),r=t.key,s=t.ref,o=t._owner;if(e!=null){if(e.ref!==void 0&&(s=e.ref,o=RS.current),e.key!==void 0&&(r=""+e.key),t.type&&t.type.defaultProps)var a=t.type.defaultProps;for(l in e)$k.call(e,l)&&!jk.hasOwnProperty(l)&&(i[l]=e[l]===void 0&&a!==void 0?a[l]:e[l])}var l=arguments.length-2;if(l===1)i.children=n;else if(1<l){a=Array(l);for(var u=0;u<l;u++)a[u]=arguments[u+2];i.children=a}return{$$typeof:T4,type:t.type,key:r,ref:s,props:i,_owner:o}};en.createContext=function(t){return t={$$typeof:TY,_currentValue:t,_currentValue2:t,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},t.Provider={$$typeof:SY,_context:t},t.Consumer=t};en.createElement=Xk;en.createFactory=function(t){var e=Xk.bind(null,t);return e.type=t,e};en.createRef=function(){return{current:null}};en.forwardRef=function(t){return{$$typeof:CY,render:t}};en.isValidElement=bS;en.lazy=function(t){return{$$typeof:MY,_payload:{_status:-1,_result:t},_init:BY}};en.memo=function(t,e){return{$$typeof:IY,type:t,compare:e===void 0?null:e}};en.startTransition=function(t){var e=c8.transition;c8.transition={};try{t()}finally{c8.transition=e}};en.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")};en.useCallback=function(t,e){return os.current.useCallback(t,e)};en.useContext=function(t){return os.current.useContext(t)};en.useDebugValue=function(){};en.useDeferredValue=function(t){return os.current.useDeferredValue(t)};en.useEffect=function(t,e){return os.current.useEffect(t,e)};en.useId=function(){return os.current.useId()};en.useImperativeHandle=function(t,e,n){return os.current.useImperativeHandle(t,e,n)};en.useInsertionEffect=function(t,e){return os.current.useInsertionEffect(t,e)};en.useLayoutEffect=function(t,e){return os.current.useLayoutEffect(t,e)};en.useMemo=function(t,e){return os.current.useMemo(t,e)};en.useReducer=function(t,e,n){return os.current.useReducer(t,e,n)};en.useRef=function(t){return os.current.useRef(t)};en.useState=function(t){return os.current.useState(t)};en.useSyncExternalStore=function(t,e,n){return os.current.useSyncExternalStore(t,e,n)};en.useTransition=function(){return os.current.useTransition()};en.version="18.2.0";Vk.exports=en;var G=Vk.exports;const E9=_9(G),LY=yY({__proto__:null,default:E9},[G]);/** 10 * @license React 11 * react-jsx-runtime.production.min.js 12 * 13 * Copyright (c) Facebook, Inc. and its affiliates. 14 * 15 * This source code is licensed under the MIT license found in the 16 * LICENSE file in the root directory of this source tree. 17 */var NY=G,kY=Symbol.for("react.element"),FY=Symbol.for("react.fragment"),OY=Object.prototype.hasOwnProperty,UY=NY.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,zY={key:!0,ref:!0,__self:!0,__source:!0};function Yk(t,e,n){var i,r={},s=null,o=null;n!==void 0&&(s=""+n),e.key!==void 0&&(s=""+e.key),e.ref!==void 0&&(o=e.ref);for(i in e)OY.call(e,i)&&!zY.hasOwnProperty(i)&&(r[i]=e[i]);if(t&&t.defaultProps)for(i in e=t.defaultProps,e)r[i]===void 0&&(r[i]=e[i]);return{$$typeof:kY,type:t,key:s,ref:o,props:r,_owner:UY.current}}x9.Fragment=FY;x9.jsx=Yk;x9.jsxs=Yk;zk.exports=x9;var PS=zk.exports;const bc=PS.Fragment,ee=PS.jsx,dt=PS.jsxs;var p_={},Kk={exports:{}},uo={},Jk={exports:{}},Zk={};/** 18 * @license React 19 * scheduler.production.min.js 20 * 21 * Copyright (c) Facebook, Inc. and its affiliates. 22 * 23 * This source code is licensed under the MIT license found in the 24 * LICENSE file in the root directory of this source tree. 25 */(function(t){function e(B,U){var F=B.length;B.push(U);e:for(;0<F;){var k=F-1>>>1,Q=B[k];if(0<r(Q,U))B[k]=U,B[F]=Q,F=k;else break e}}function n(B){return B.length===0?null:B[0]}function i(B){if(B.length===0)return null;var U=B[0],F=B.pop();if(F!==U){B[0]=F;e:for(var k=0,Q=B.length,ce=Q>>>1;k<ce;){var ae=2*(k+1)-1,ge=B[ae],ye=ae+1,xe=B[ye];if(0>r(ge,F))ye<Q&&0>r(xe,ge)?(B[k]=xe,B[ye]=F,k=ye):(B[k]=ge,B[ae]=F,k=ae);else if(ye<Q&&0>r(xe,F))B[k]=xe,B[ye]=F,k=ye;else break e}}return U}function r(B,U){var F=B.sortIndex-U.sortIndex;return F!==0?F:B.id-U.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,h=null,f=3,m=!1,g=!1,v=!1,_=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function q(B){for(var U=n(u);U!==null;){if(U.callback===null)i(u);else if(U.startTime<=B)i(u),U.sortIndex=U.expirationTime,e(l,U);else break;U=n(u)}}function E(B){if(v=!1,q(B),!g)if(n(l)!==null)g=!0,K(T);else{var U=n(u);U!==null&&Y(E,U.startTime-B)}}function T(B,U){g=!1,v&&(v=!1,A(R),R=-1),m=!0;var F=f;try{for(q(U),h=n(l);h!==null&&(!(h.expirationTime>U)||B&&!D());){var k=h.callback;if(typeof k=="function"){h.callback=null,f=h.priorityLevel;var Q=k(h.expirationTime<=U);U=t.unstable_now(),typeof Q=="function"?h.callback=Q:h===n(l)&&i(l),q(U)}else i(l);h=n(l)}if(h!==null)var ce=!0;else{var ae=n(u);ae!==null&&Y(E,ae.startTime-U),ce=!1}return ce}finally{h=null,f=F,m=!1}}var C=!1,I=null,R=-1,M=5,b=-1;function D(){return!(t.unstable_now()-b<M)}function z(){if(I!==null){var B=t.unstable_now();b=B;var U=!0;try{U=I(!0,B)}finally{U?O():(C=!1,I=null)}}else C=!1}var O;if(typeof y=="function")O=function(){y(z)};else if(typeof MessageChannel<"u"){var W=new MessageChannel,$=W.port2;W.port1.onmessage=z,O=function(){$.postMessage(null)}}else O=function(){_(z,0)};function K(B){I=B,C||(C=!0,O())}function Y(B,U){R=_(function(){B(t.unstable_now())},U)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(B){B.callback=null},t.unstable_continueExecution=function(){g||m||(g=!0,K(T))},t.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<B?Math.floor(1e3/B):5},t.unstable_getCurrentPriorityLevel=function(){return f},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(B){switch(f){case 1:case 2:case 3:var U=3;break;default:U=f}var F=f;f=U;try{return B()}finally{f=F}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(B,U){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var F=f;f=B;try{return U()}finally{f=F}},t.unstable_scheduleCallback=function(B,U,F){var k=t.unstable_now();switch(typeof F=="object"&&F!==null?(F=F.delay,F=typeof F=="number"&&0<F?k+F:k):F=k,B){case 1:var Q=-1;break;case 2:Q=250;break;case 5:Q=1073741823;break;case 4:Q=1e4;break;default:Q=5e3}return Q=F+Q,B={id:c++,callback:U,priorityLevel:B,startTime:F,expirationTime:Q,sortIndex:-1},F>k?(B.sortIndex=F,e(u,B),n(l)===null&&B===n(u)&&(v?(A(R),R=-1):v=!0,Y(E,F-k))):(B.sortIndex=Q,e(l,B),g||m||(g=!0,K(T))),B},t.unstable_shouldYield=D,t.unstable_wrapCallback=function(B){var U=f;return function(){var F=f;f=U;try{return B.apply(this,arguments)}finally{f=F}}}})(Zk);Jk.exports=Zk;var VY=Jk.exports;/** 26 * @license React 27 * react-dom.production.min.js 28 * 29 * Copyright (c) Facebook, Inc. and its affiliates. 30 * 31 * This source code is licensed under the MIT license found in the 32 * LICENSE file in the root directory of this source tree. 33 */var eF=G,to=VY;function Ce(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,n=1;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var tF=new Set,K5={};function N1(t,e){z0(t,e),z0(t+"Capture",e)}function z0(t,e){for(K5[t]=e,t=0;t<e.length;t++)tF.add(e[t])}var ou=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),m_=Object.prototype.hasOwnProperty,GY=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,pR={},mR={};function QY(t){return m_.call(mR,t)?!0:m_.call(pR,t)?!1:GY.test(t)?mR[t]=!0:(pR[t]=!0,!1)}function HY(t,e,n,i){if(n!==null&&n.type===0)return!1;switch(typeof e){case"function":case"symbol":return!0;case"boolean":return i?!1:n!==null?!n.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function WY(t,e,n,i){if(e===null||typeof e>"u"||HY(t,e,n,i))return!0;if(i)return!1;if(n!==null)switch(n.type){case 3:return!e;case 4:return e===!1;case 5:return isNaN(e);case 6:return isNaN(e)||1>e}return!1}function as(t,e,n,i,r,s,o){this.acceptsBooleans=e===2||e===3||e===4,this.attributeName=i,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=t,this.type=e,this.sanitizeURL=s,this.removeEmptyString=o}var yr={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){yr[t]=new as(t,0,!1,t,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var e=t[0];yr[e]=new as(e,1,!1,t[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(t){yr[t]=new as(t,2,!1,t.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){yr[t]=new as(t,2,!1,t,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){yr[t]=new as(t,3,!1,t.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(t){yr[t]=new as(t,3,!0,t,null,!1,!1)});["capture","download"].forEach(function(t){yr[t]=new as(t,4,!1,t,null,!1,!1)});["cols","rows","size","span"].forEach(function(t){yr[t]=new as(t,6,!1,t,null,!1,!1)});["rowSpan","start"].forEach(function(t){yr[t]=new as(t,5,!1,t.toLowerCase(),null,!1,!1)});var BS=/[\-:]([a-z])/g;function DS(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var e=t.replace(BS,DS);yr[e]=new as(e,1,!1,t,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var e=t.replace(BS,DS);yr[e]=new as(e,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(t){var e=t.replace(BS,DS);yr[e]=new as(e,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(t){yr[t]=new as(t,1,!1,t.toLowerCase(),null,!1,!1)});yr.xlinkHref=new as("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(t){yr[t]=new as(t,1,!1,t.toLowerCase(),null,!0,!0)});function LS(t,e,n,i){var r=yr.hasOwnProperty(e)?yr[e]:null;(r!==null?r.type!==0:i||!(2<e.length)||e[0]!=="o"&&e[0]!=="O"||e[1]!=="n"&&e[1]!=="N")&&(WY(e,n,r,i)&&(n=null),i||r===null?QY(e)&&(n===null?t.removeAttribute(e):t.setAttribute(e,""+n)):r.mustUseProperty?t[r.propertyName]=n===null?r.type===3?!1:"":n:(e=r.attributeName,i=r.attributeNamespace,n===null?t.removeAttribute(e):(r=r.type,n=r===3||r===4&&n===!0?"":""+n,i?t.setAttributeNS(i,e,n):t.setAttribute(e,n))))}var _u=eF.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Sp=Symbol.for("react.element"),W3=Symbol.for("react.portal"),$3=Symbol.for("react.fragment"),NS=Symbol.for("react.strict_mode"),g_=Symbol.for("react.profiler"),nF=Symbol.for("react.provider"),iF=Symbol.for("react.context"),kS=Symbol.for("react.forward_ref"),A_=Symbol.for("react.suspense"),v_=Symbol.for("react.suspense_list"),FS=Symbol.for("react.memo"),Zu=Symbol.for("react.lazy"),rF=Symbol.for("react.offscreen"),gR=Symbol.iterator;function Af(t){return t===null||typeof t!="object"?null:(t=gR&&t[gR]||t["@@iterator"],typeof t=="function"?t:null)}var ii=Object.assign,Uv;function Jf(t){if(Uv===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);Uv=e&&e[1]||""}return` 34`+Uv+t}var zv=!1;function Vv(t,e){if(!t||zv)return"";zv=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(e)if(e=function(){throw Error()},Object.defineProperty(e.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(e,[])}catch(u){var i=u}Reflect.construct(t,[],e)}else{try{e.call()}catch(u){i=u}t.call(e.prototype)}else{try{throw Error()}catch(u){i=u}t()}}
vendor: 5,499 bytes, lines 34-37
34catch(u){if(u&&i&&typeof u.stack=="string"){for(var r=u.stack.split(` 35`),s=i.stack.split(` 36`),o=r.length-1,a=s.length-1;1<=o&&0<=a&&r[o]!==s[a];)a--;for(;1<=o&&0<=a;o--,a--)if(r[o]!==s[a]){if(o!==1||a!==1)do if(o--,a--,0>a||r[o]!==s[a]){var l=` 37`+r[o].replace(" at new "," at ");return t.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",t.displayName)),l}while(1<=o&&0<=a);break}}}finally{zv=!1,Error.prepareStackTrace=n}return(t=t?t.displayName||t.name:"")?Jf(t):""}function $Y(t){switch(t.tag){case 5:return Jf(t.type);case 16:return Jf("Lazy");case 13:return Jf("Suspense");case 19:return Jf("SuspenseList");case 0:case 2:case 15:return t=Vv(t.type,!1),t;case 11:return t=Vv(t.type.render,!1),t;case 1:return t=Vv(t.type,!0),t;default:return""}}function y_(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case $3:return"Fragment";case W3:return"Portal";case g_:return"Profiler";case NS:return"StrictMode";case A_:return"Suspense";case v_:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case iF:return(t.displayName||"Context")+".Consumer";case nF:return(t._context.displayName||"Context")+".Provider";case kS:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case FS:return e=t.displayName||null,e!==null?e:y_(t.type)||"Memo";case Zu:e=t._payload,t=t._init;try{return y_(t(e))}catch{}}return null}function jY(t){var e=t.type;switch(t.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=e.render,t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return y_(e);case 8:return e===NS?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e}return null}function Pc(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function sF(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function XY(t){var e=sF(t)?"checked":"value",n=Object.getOwnPropertyDescriptor(t.constructor.prototype,e),i=""+t[e];if(!t.hasOwnProperty(e)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var r=n.get,s=n.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return r.call(this)},set:function(o){i=""+o,s.call(this,o)}}),Object.defineProperty(t,e,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(o){i=""+o},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function Tp(t){t._valueTracker||(t._valueTracker=XY(t))}function oF(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),i="";return t&&(i=sF(t)?t.checked?"true":"false":t.value),t=i,t!==n?(e.setValue(t),!0):!1}function Q8(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function q_(t,e){var n=e.checked;return ii({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??t._wrapperState.initialChecked})}function AR(t,e){var n=e.defaultValue==null?"":e.defaultValue,i=e.checked!=null?e.checked:e.defaultChecked;n=Pc(e.value!=null?e.value:n),t._wrapperState={initialChecked:i,initialValue:n,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function aF(t,e){e=e.checked,e!=null&&LS(t,"checked",e,!1)}function __(t,e){aF(t,e);var n=Pc(e.value),i=e.type;if(n!=null)i==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+n):t.value!==""+n&&(t.value=""+n);else if(i==="submit"||i==="reset"){t.removeAttribute("value");return}e.hasOwnProperty("value")?x_(t,e.type,n):e.hasOwnProperty("defaultValue")&&x_(t,e.type,Pc(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(t.defaultChecked=!!e.defaultChecked)}function vR(t,e,n){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var i=e.type;if(!(i!=="submit"&&i!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+t._wrapperState.initialValue,n||e===t.value||(t.value=e),t.defaultValue=e}n=t.name,n!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,n!==""&&(t.name=n)}function x_(t,e,n){(e!=="number"||Q8(t.ownerDocument)!==t)&&(n==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+n&&(t.defaultValue=""+n))}var Zf=Array.isArray;function A0(t,e,n,i){if(t=t.options,e){e={};for(var r=0;r<n.length;r++)e["$"+n[r]]=!0;for(n=0;n<t.length;n++)r=e.hasOwnProperty("$"+t[n].value),t[n].selected!==r&&(t[n].selected=r),r&&i&&(t[n].defaultSelected=!0)}else{for(n=""+Pc(n),e=null,r=0;r<t.length;r++){if(t[r].value===n){t[r].selected=!0,i&&(t[r].defaultSelected=!0);return}e!==null||t[r].disabled||(e=t[r])}e!==null&&(e.selected=!0)}}function E_(t,e){if(e.dangerouslySetInnerHTML!=null)throw Error(Ce(91));return ii({},e,{value:void 0,defaultValue:void 0,children:""+t._wrapperState.initialValue})}function yR(t,e){var n=e.value;if(n==null){if(n=e.children,e=e.defaultValue,n!=null){if(e!=null)throw Error(Ce(92));
vendor: 12,694 bytes, line 37
37if(Zf(n)){if(1<n.length)throw Error(Ce(93));n=n[0]}e=n}e==null&&(e=""),n=e}t._wrapperState={initialValue:Pc(n)}}function lF(t,e){var n=Pc(e.value),i=Pc(e.defaultValue);n!=null&&(n=""+n,n!==t.value&&(t.value=n),e.defaultValue==null&&t.defaultValue!==n&&(t.defaultValue=n)),i!=null&&(t.defaultValue=""+i)}function qR(t){var e=t.textContent;e===t._wrapperState.initialValue&&e!==""&&e!==null&&(t.value=e)}function uF(t){switch(t){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function S_(t,e){return t==null||t==="http://www.w3.org/1999/xhtml"?uF(e):t==="http://www.w3.org/2000/svg"&&e==="foreignObject"?"http://www.w3.org/1999/xhtml":t}var Cp,cF=function(t){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(e,n,i,r){MSApp.execUnsafeLocalFunction(function(){return t(e,n,i,r)})}:t}(function(t,e){if(t.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in t)t.innerHTML=e;else{for(Cp=Cp||document.createElement("div"),Cp.innerHTML="<svg>"+e.valueOf().toString()+"</svg>",e=Cp.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;e.firstChild;)t.appendChild(e.firstChild)}});function J5(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var A5={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},YY=["Webkit","ms","Moz","O"];Object.keys(A5).forEach(function(t){YY.forEach(function(e){e=e+t.charAt(0).toUpperCase()+t.substring(1),A5[e]=A5[t]})});function hF(t,e,n){return e==null||typeof e=="boolean"||e===""?"":n||typeof e!="number"||e===0||A5.hasOwnProperty(t)&&A5[t]?(""+e).trim():e+"px"}function fF(t,e){t=t.style;for(var n in e)if(e.hasOwnProperty(n)){var i=n.indexOf("--")===0,r=hF(n,e[n],i);n==="float"&&(n="cssFloat"),i?t.setProperty(n,r):t[n]=r}}var KY=ii({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function T_(t,e){if(e){if(KY[t]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(Ce(137,t));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(Ce(60));if(typeof e.dangerouslySetInnerHTML!="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(Ce(61))}if(e.style!=null&&typeof e.style!="object")throw Error(Ce(62))}}function C_(t,e){if(t.indexOf("-")===-1)return typeof e.is=="string";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var w_=null;function OS(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var I_=null,v0=null,y0=null;function _R(t){if(t=I4(t)){if(typeof I_!="function")throw Error(Ce(280));var e=t.stateNode;e&&(e=I9(e),I_(t.stateNode,t.type,e))}}function dF(t){v0?y0?y0.push(t):y0=[t]:v0=t}function pF(){if(v0){var t=v0,e=y0;if(y0=v0=null,_R(t),e)for(t=0;t<e.length;t++)_R(e[t])}}function mF(t,e){return t(e)}function gF(){}var Gv=!1;function AF(t,e,n){if(Gv)return t(e,n);Gv=!0;try{return mF(t,e,n)}finally{Gv=!1,(v0!==null||y0!==null)&&(gF(),pF())}}function Z5(t,e){var n=t.stateNode;if(n===null)return null;var i=I9(n);if(i===null)return null;n=i[e];e:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(t=t.type,i=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!i;break e;default:t=!1}if(t)return null;if(n&&typeof n!="function")throw Error(Ce(231,e,typeof n));return n}var M_=!1;if(ou)try{var vf={};Object.defineProperty(vf,"passive",{get:function(){M_=!0}}),window.addEventListener("test",vf,vf),window.removeEventListener("test",vf,vf)}catch{M_=!1}function JY(t,e,n,i,r,s,o,a,l){var u=Array.prototype.slice.call(arguments,3);try{e.apply(n,u)}catch(c){this.onError(c)}}var v5=!1,H8=null,W8=!1,R_=null,ZY={onError:function(t){v5=!0,H8=t}};function eK(t,e,n,i,r,s,o,a,l){v5=!1,H8=null,JY.apply(ZY,arguments)}function tK(t,e,n,i,r,s,o,a,l){if(eK.apply(this,arguments),v5){if(v5){var u=H8;v5=!1,H8=null}else throw Error(Ce(198));W8||(W8=!0,R_=u)}}function k1(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,e.flags&4098&&(n=e.return),t=e.return;while(t)}return e.tag===3?n:null}function vF(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function xR(t){if(k1(t)!==t)throw Error(Ce(188))}function nK(t){var e=t.alternate;if(!e){if(e=k1(t),e===null)throw Error(Ce(188));return e!==t?null:t}for(var n=t,i=e;;){var r=n.return;if(r===null)break;var s=r.alternate;if(s===null){if(i=r.return,i!==null){n=i;continue}break}if(r.child===s.child){for(s=r.child;s;){if(s===n)return xR(r),t;if(s===i)return xR(r),e;s=s.sibling}throw Error(Ce(188))}if(n.return!==i.return)n=r,i=s;else{for(var o=!1,a=r.child;a;){if(a===n){o=!0,n=r,i=s;break}if(a===i){o=!0,i=r,n=s;break}a=a.sibling}if(!o){for(a=s.child;a;){if(a===n){o=!0,n=s,i=r;break}if(a===i){o=!0,i=s,n=r;break}a=a.sibling}if(!o)throw Error(Ce(189))}}if(n.alternate!==i)throw Error(Ce(190))}if(n.tag!==3)throw Error(Ce(188));return n.stateNode.current===n?t:e}function yF(t){return t=nK(t),t!==null?qF(t):null}function qF(t){if(t.tag===5||t.tag===6)return t;for(t=t.child;t!==null;){var e=qF(t);if(e!==null)return e;t=t.sibling}return null}var _F=to.unstable_scheduleCallback,ER=to.unstable_cancelCallback,iK=to.unstable_shouldYield,rK=to.unstable_requestPaint,Ti=to.unstable_now,sK=to.unstable_getCurrentPriorityLevel,US=to.unstable_ImmediatePriority,xF=to.unstable_UserBlockingPriority,$8=to.unstable_NormalPriority,oK=to.unstable_LowPriority,EF=to.unstable_IdlePriority,S9=null,il=null;function aK(t){if(il&&typeof il.onCommitFiberRoot=="function")try{il.onCommitFiberRoot(S9,t,void 0,(t.current.flags&128)===128)}catch{}}var ha=Math.clz32?Math.clz32:cK,lK=Math.log,uK=Math.LN2;function cK(t){return t>>>=0,t===0?32:31-(lK(t)/uK|0)|0}var wp=64,Ip=4194304;function e5(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function j8(t,e){var n=t.pendingLanes;if(n===0)return 0;var i=0,r=t.suspendedLanes,s=t.pingedLanes,o=n&268435455;if(o!==0){var a=o&~r;a!==0?i=e5(a):(s&=o,s!==0&&(i=e5(s)))}else o=n&~r,o!==0?i=e5(o):s!==0&&(i=e5(s));if(i===0)return 0;if(e!==0&&e!==i&&!(e&r)&&(r=i&-i,s=e&-e,r>=s||r===16&&(s&4194240)!==0))return e;if(i&4&&(i|=n&16),e=t.entangledLanes,e!==0)for(t=t.entanglements,e&=i;0<e;)n=31-ha(e),r=1<<n,i|=t[n],e&=~r;return i}function hK(t,e){switch(t){case 1:case 2:case 4:return e+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function fK(t,e){for(var n=t.suspendedLanes,i=t.pingedLanes,r=t.expirationTimes,s=t.pendingLanes;0<s;){var o=31-ha(s),a=1<<o,l=r[o];l===-1?(!(a&n)||a&i)&&(r[o]=hK(a,e)):l<=e&&(t.expiredLanes|=a),s&=~a}}function b_(t){return t=t.pendingLanes&-1073741825,t!==0?t:t&1073741824?1073741824:0}function SF(){var t=wp;return wp<<=1,!(wp&4194240)&&(wp=64),t}function Qv(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function C4(t,e,n){t.pendingLanes|=e,e!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,e=31-ha(e),t[e]=n}function dK(t,e){var n=t.pendingLanes&~e;t.pendingLanes=e,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=e,t.mutableReadLanes&=e,t.entangledLanes&=e,e=t.entanglements;var i=t.eventTimes;for(t=t.expirationTimes;0<n;){var r=31-ha(n),s=1<<r;e[r]=0,i[r]=-1,t[r]=-1,n&=~s}}function zS(t,e){var n=t.entangledLanes|=e;for(t=t.entanglements;n;){var i=31-ha(n),r=1<<i;r&e|t[i]&e&&(t[i]|=e),n&=~r}}var xn=0;function TF(t){return t&=-t,1<t?4<t?t&268435455?16:536870912:4:1}var CF,VS,wF,IF,MF,P_=!1,Mp=[],dc=null,pc=null,mc=null,ed=new Map,td=new Map,nc=[],pK="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function SR(t,e){switch(t){case"focusin":case"focusout":dc=null;break;case"dragenter":case"dragleave":pc=null;break;case"mouseover":case"mouseout":mc=null;break;case"pointerover":case"pointerout":ed.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":td.delete(e.pointerId)}}function yf(t,e,n,i,r,s){return t===null||t.nativeEvent!==s?(t={blockedOn:e,domEventName:n,eventSystemFlags:i,nativeEvent:s,targetContainers:[r]},e!==null&&(e=I4(e),e!==null&&VS(e)),t):(t.eventSystemFlags|=i,e=t.targetContainers,r!==null&&e.indexOf(r)===-1&&e.push(r),t)}function mK(t,e,n,i,r){switch(e){case"focusin":return dc=yf(dc,t,e,n,i,r),!0;case"dragenter":return pc=yf(pc,t,e,n,i,r),!0;case"mouseover":return mc=yf(mc,t,e,n,i,r),!0;case"pointerover":var s=r.pointerId;return ed.set(s,yf(ed.get(s)||null,t,e,n,i,r)),!0;case"gotpointercapture":return s=r.pointerId,td.set(s,yf(td.get(s)||null,t,e,n,i,r)),!0}return!1}function RF(t){var e=Wh(t.target);if(e!==null){var n=k1(e);if(n!==null){if(e=n.tag,e===13){if(e=vF(n),e!==null){t.blockedOn=e,MF(t.priority,function(){wF(n)});return}}else if(e===3&&n.stateNode.current.memoizedState.isDehydrated){t.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}t.blockedOn=null}function h8(t){if(t.blockedOn!==null)return!1;for(var e=t.targetContainers;0<e.length;){var n=B_(t.domEventName,t.eventSystemFlags,e[0],t.nativeEvent);if(n===null){n=t.nativeEvent;var i=new n.constructor(n.type,n);w_=i,n.target.dispatchEvent(i),w_=null}else return e=I4(n),e!==null&&VS(e),t.blockedOn=n,!1;e.shift()}return!0}function TR(t,e,n){h8(t)&&n.delete(e)}function gK(){P_=!1,dc!==null&&h8(dc)&&(dc=null),pc!==null&&h8(pc)&&(pc=null),mc!==null&&h8(mc)&&(mc=null),ed.forEach(TR),td.forEach(TR)}function qf(t,e){t.blockedOn===e&&(t.blockedOn=null,P_||(P_=!0,to.unstable_scheduleCallback(to.unstable_NormalPriority,gK)))}function nd(t){function e(r){return qf(r,t)}if(0<Mp.length){qf(Mp[0],t);for(var n=1;n<Mp.length;n++){var i=Mp[n];i.blockedOn===t&&(i.blockedOn=null)}}for(dc!==null&&qf(dc,t),pc!==null&&qf(pc,t),mc!==null&&qf(mc,t),ed.forEach(e),td.forEach(e),n=0;n<nc.length;n++)i=nc[n],i.blockedOn===t&&(i.blockedOn=null);for(;0<nc.length&&(n=nc[0],n.blockedOn===null);)RF(n),n.blockedOn===null&&nc.shift()}var q0=_u.ReactCurrentBatchConfig,X8=!0;function AK(t,e,n,i){var r=xn,s=q0.transition;q0.transition=null;try{xn=1,GS(t,e,n,i)}finally{xn=r,q0.transition=s}}function vK(t,e,n,i){var r=xn,s=q0.transition;q0.transition=null;try{xn=4,GS(t,e,n,i)}finally{xn=r,q0.transition=s}}function GS(t,e,n,i){if(X8){var r=B_(t,e,n,i);if(r===null)ey(t,e,i,Y8,n),SR(t,i);else if(mK(r,t,e,n,i))i.stopPropagation();else if(SR(t,i),e&4&&-1<pK.indexOf(t)){for(;r!==null;){var s=I4(r);if(s!==null&&CF(s),s=B_(t,e,n,i),s===null&&ey(t,e,i,Y8,n),s===r)break;r=s}r!==null&&i.stopPropagation()}else ey(t,e,i,null,n)}}var Y8=null;function B_(t,e,n,i){if(Y8=null,t=OS(i),t=Wh(t),t!==null)if(e=k1(t),e===null)t=null;else if(n=e.tag,n===13){if(t=vF(e),t!==null)return t;t=null}else if(n===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;t=null}else e!==t&&(t=null);return Y8=t,null}
vendor: 4,373 bytes, line 37
37function bF(t){switch(t){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(sK()){case US:return 1;case xF:return 4;case $8:case oK:return 16;case EF:return 536870912;default:return 16}default:return 16}}var rc=null,QS=null,f8=null;function PF(){if(f8)return f8;var t,e=QS,n=e.length,i,r="value"in rc?rc.value:rc.textContent,s=r.length;for(t=0;t<n&&e[t]===r[t];t++);var o=n-t;for(i=1;i<=o&&e[n-i]===r[s-i];i++);return f8=r.slice(t,1<i?1-i:void 0)}function d8(t){var e=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&e===13&&(t=13)):t=e,t===10&&(t=13),32<=t||t===13?t:0}function Rp(){return!0}function CR(){return!1}function co(t){function e(n,i,r,s,o){this._reactName=n,this._targetInst=r,this.type=i,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var a in t)t.hasOwnProperty(a)&&(n=t[a],this[a]=n?n(s):s[a]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Rp:CR,this.isPropagationStopped=CR,this}return ii(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Rp)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Rp)},persist:function(){},isPersistent:Rp}),e}var S2={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},HS=co(S2),w4=ii({},S2,{view:0,detail:0}),yK=co(w4),Hv,Wv,_f,T9=ii({},w4,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:WS,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==_f&&(_f&&t.type==="mousemove"?(Hv=t.screenX-_f.screenX,Wv=t.screenY-_f.screenY):Wv=Hv=0,_f=t),Hv)},movementY:function(t){return"movementY"in t?t.movementY:Wv}}),wR=co(T9),qK=ii({},T9,{dataTransfer:0}),_K=co(qK),xK=ii({},w4,{relatedTarget:0}),$v=co(xK),EK=ii({},S2,{animationName:0,elapsedTime:0,pseudoElement:0}),SK=co(EK),TK=ii({},S2,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),CK=co(TK),wK=ii({},S2,{data:0}),IR=co(wK),IK={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},MK={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},RK={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function bK(t){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(t):(t=RK[t])?!!e[t]:!1}function WS(){return bK}var PK=ii({},w4,{key:function(t){if(t.key){var e=IK[t.key]||t.key;if(e!=="Unidentified")return e}
vendor: 6,048 bytes, line 37
37return t.type==="keypress"?(t=d8(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?MK[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:WS,charCode:function(t){return t.type==="keypress"?d8(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?d8(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),BK=co(PK),DK=ii({},T9,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),MR=co(DK),LK=ii({},w4,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:WS}),NK=co(LK),kK=ii({},S2,{propertyName:0,elapsedTime:0,pseudoElement:0}),FK=co(kK),OK=ii({},T9,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),UK=co(OK),zK=[9,13,27,32],$S=ou&&"CompositionEvent"in window,y5=null;ou&&"documentMode"in document&&(y5=document.documentMode);var VK=ou&&"TextEvent"in window&&!y5,BF=ou&&(!$S||y5&&8<y5&&11>=y5),RR=String.fromCharCode(32),bR=!1;function DF(t,e){switch(t){case"keyup":return zK.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function LF(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var j3=!1;function GK(t,e){switch(t){case"compositionend":return LF(e);case"keypress":return e.which!==32?null:(bR=!0,RR);case"textInput":return t=e.data,t===RR&&bR?null:t;default:return null}}function QK(t,e){if(j3)return t==="compositionend"||!$S&&DF(t,e)?(t=PF(),f8=QS=rc=null,j3=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return BF&&e.locale!=="ko"?null:e.data;default:return null}}var HK={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function PR(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e==="input"?!!HK[t.type]:e==="textarea"}function NF(t,e,n,i){dF(i),e=K8(e,"onChange"),0<e.length&&(n=new HS("onChange","change",null,n,i),t.push({event:n,listeners:e}))}var q5=null,id=null;function WK(t){$F(t,0)}function C9(t){var e=K3(t);if(oF(e))return t}function $K(t,e){if(t==="change")return e}var kF=!1;if(ou){var jv;if(ou){var Xv="oninput"in document;if(!Xv){var BR=document.createElement("div");BR.setAttribute("oninput","return;"),Xv=typeof BR.oninput=="function"}jv=Xv}else jv=!1;kF=jv&&(!document.documentMode||9<document.documentMode)}function DR(){q5&&(q5.detachEvent("onpropertychange",FF),id=q5=null)}function FF(t){if(t.propertyName==="value"&&C9(id)){var e=[];NF(e,id,t,OS(t)),AF(WK,e)}}function jK(t,e,n){t==="focusin"?(DR(),q5=e,id=n,q5.attachEvent("onpropertychange",FF)):t==="focusout"&&DR()}function XK(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return C9(id)}function YK(t,e){if(t==="click")return C9(e)}function KK(t,e){if(t==="input"||t==="change")return C9(e)}function JK(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var ga=typeof Object.is=="function"?Object.is:JK;function rd(t,e){if(ga(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;var n=Object.keys(t),i=Object.keys(e);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var r=n[i];if(!m_.call(e,r)||!ga(t[r],e[r]))return!1}return!0}function LR(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function NR(t,e){var n=LR(t);t=0;for(var i;n;){if(n.nodeType===3){if(i=t+n.textContent.length,t<=e&&i>=e)return{node:n,offset:e-t};t=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=LR(n)}}function OF(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?OF(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function UF(){for(var t=window,e=Q8();e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=Q8(t.document)}return e}function jS(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}function ZK(t){var e=UF(),n=t.focusedElem,i=t.selectionRange;if(e!==n&&n&&n.ownerDocument&&OF(n.ownerDocument.documentElement,n)){if(i!==null&&jS(n)){if(e=i.start,t=i.end,t===void 0&&(t=e),"selectionStart"in n)n.selectionStart=e,n.selectionEnd=Math.min(t,n.value.length);else if(t=(e=n.ownerDocument||document)&&e.defaultView||window,t.getSelection){t=t.getSelection();var r=n.textContent.length,s=Math.min(i.start,r);i=i.end===void 0?s:Math.min(i.end,r),!t.extend&&s>i&&(r=i,i=s,s=r),r=NR(n,s);var o=NR(n,i);r&&o&&(t.rangeCount!==1||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)&&(e=e.createRange(),e.setStart(r.node,r.offset),t.removeAllRanges(),s>i?(t.addRange(e),t.extend(o.node,o.offset)):(e.setEnd(o.node,o.offset),t.addRange(e)))}}for(e=[],t=n;t=t.parentNode;)t.nodeType===1&&e.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<e.length;n++)t=e[n],t.element.scrollLeft=t.left,t.element.scrollTop=t.top}}var eJ=ou&&"documentMode"in document&&11>=document.documentMode,X3=null,D_=null,_5=null,L_=!1;function kR(t,e,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;L_||X3==null||X3!==Q8(i)||(i=X3,"selectionStart"in i&&jS(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focu
vendor: 4,501 bytes, line 37
37sNode:i.focusNode,focusOffset:i.focusOffset}),_5&&rd(_5,i)||(_5=i,i=K8(D_,"onSelect"),0<i.length&&(e=new HS("onSelect","select",null,e,n),t.push({event:e,listeners:i}),e.target=X3)))}function bp(t,e){var n={};return n[t.toLowerCase()]=e.toLowerCase(),n["Webkit"+t]="webkit"+e,n["Moz"+t]="moz"+e,n}var Y3={animationend:bp("Animation","AnimationEnd"),animationiteration:bp("Animation","AnimationIteration"),animationstart:bp("Animation","AnimationStart"),transitionend:bp("Transition","TransitionEnd")},Yv={},zF={};ou&&(zF=document.createElement("div").style,"AnimationEvent"in window||(delete Y3.animationend.animation,delete Y3.animationiteration.animation,delete Y3.animationstart.animation),"TransitionEvent"in window||delete Y3.transitionend.transition);function w9(t){if(Yv[t])return Yv[t];if(!Y3[t])return t;var e=Y3[t],n;for(n in e)if(e.hasOwnProperty(n)&&n in zF)return Yv[t]=e[n];return t}var VF=w9("animationend"),GF=w9("animationiteration"),QF=w9("animationstart"),HF=w9("transitionend"),WF=new Map,FR="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function jc(t,e){WF.set(t,e),N1(e,[t])}for(var Kv=0;Kv<FR.length;Kv++){var Jv=FR[Kv],tJ=Jv.toLowerCase(),nJ=Jv[0].toUpperCase()+Jv.slice(1);jc(tJ,"on"+nJ)}jc(VF,"onAnimationEnd");jc(GF,"onAnimationIteration");jc(QF,"onAnimationStart");jc("dblclick","onDoubleClick");jc("focusin","onFocus");jc("focusout","onBlur");jc(HF,"onTransitionEnd");z0("onMouseEnter",["mouseout","mouseover"]);z0("onMouseLeave",["mouseout","mouseover"]);z0("onPointerEnter",["pointerout","pointerover"]);z0("onPointerLeave",["pointerout","pointerover"]);N1("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));N1("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));N1("onBeforeInput",["compositionend","keypress","textInput","paste"]);N1("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));N1("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));N1("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var t5="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),iJ=new Set("cancel close invalid load scroll toggle".split(" ").concat(t5));function OR(t,e,n){var i=t.type||"unknown-event";t.currentTarget=n,tK(i,e,void 0,t),t.currentTarget=null}function $F(t,e){e=(e&4)!==0;for(var n=0;n<t.length;n++){var i=t[n],r=i.event;i=i.listeners;e:{var s=void 0;if(e)for(var o=i.length-1;0<=o;o--){var a=i[o],l=a.instance,u=a.currentTarget;if(a=a.listener,l!==s&&r.isPropagationStopped())break e;OR(r,a,u),s=l}else for(o=0;o<i.length;o++){if(a=i[o],l=a.instance,u=a.currentTarget,a=a.listener,l!==s&&r.isPropagationStopped())break e;OR(r,a,u),s=l}}}if(W8)throw t=R_,W8=!1,R_=null,t}function On(t,e){var n=e[U_];n===void 0&&(n=e[U_]=new Set);var i=t+"__bubble";n.has(i)||(jF(e,t,2,!1),n.add(i))}function Zv(t,e,n){var i=0;e&&(i|=4),jF(n,t,i,e)}var Pp="_reactListening"+Math.random().toString(36).slice(2);function sd(t){if(!t[Pp]){t[Pp]=!0,tF.forEach(function(n){n!=="selectionchange"&&(iJ.has(n)||Zv(n,!1,t),Zv(n,!0,t))});var e=t.nodeType===9?t:t.ownerDocument;e===null||e[Pp]||(e[Pp]=!0,Zv("selectionchange",!1,e))}}function jF(t,e,n,i){switch(bF(e)){case 1:var r=AK;break;case 4:r=vK;break;default:r=GS}n=r.bind(null,e,n,t),r=void 0,!M_||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(r=!0),i?r!==void 0?t.addEventListener(e,n,{capture:!0,passive:r}):t.addEventListener(e,n,!0):r!==void 0?t.addEventListener(e,n,{passive:r}):t.addEventListener(e,n,!1)}function ey(t,e,n,i,r){var s=i;if(!(e&1)&&!(e&2)&&i!==null)e:for(;;){if(i===null)return;var o=i.tag;if(o===3||o===4){var a=i.stateNode.containerInfo;
vendor: 4,093 bytes, line 37
37if(a===r||a.nodeType===8&&a.parentNode===r)break;if(o===4)for(o=i.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===r||l.nodeType===8&&l.parentNode===r))return;o=o.return}for(;a!==null;){if(o=Wh(a),o===null)return;if(l=o.tag,l===5||l===6){i=s=o;continue e}a=a.parentNode}}i=i.return}AF(function(){var u=s,c=OS(n),h=[];e:{var f=WF.get(t);if(f!==void 0){var m=HS,g=t;switch(t){case"keypress":if(d8(n)===0)break e;case"keydown":case"keyup":m=BK;break;case"focusin":g="focus",m=$v;break;case"focusout":g="blur",m=$v;break;case"beforeblur":case"afterblur":m=$v;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":m=wR;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":m=_K;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":m=NK;break;case VF:case GF:case QF:m=SK;break;case HF:m=FK;break;case"scroll":m=yK;break;case"wheel":m=UK;break;case"copy":case"cut":case"paste":m=CK;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":m=MR}var v=(e&4)!==0,_=!v&&t==="scroll",A=v?f!==null?f+"Capture":null:f;v=[];for(var y=u,q;y!==null;){q=y;var E=q.stateNode;if(q.tag===5&&E!==null&&(q=E,A!==null&&(E=Z5(y,A),E!=null&&v.push(od(y,E,q)))),_)break;y=y.return}0<v.length&&(f=new m(f,g,null,n,c),h.push({event:f,listeners:v}))}}if(!(e&7)){e:{if(f=t==="mouseover"||t==="pointerover",m=t==="mouseout"||t==="pointerout",f&&n!==w_&&(g=n.relatedTarget||n.fromElement)&&(Wh(g)||g[au]))break e;if((m||f)&&(f=c.window===c?c:(f=c.ownerDocument)?f.defaultView||f.parentWindow:window,m?(g=n.relatedTarget||n.toElement,m=u,g=g?Wh(g):null,g!==null&&(_=k1(g),g!==_||g.tag!==5&&g.tag!==6)&&(g=null)):(m=null,g=u),m!==g)){if(v=wR,E="onMouseLeave",A="onMouseEnter",y="mouse",(t==="pointerout"||t==="pointerover")&&(v=MR,E="onPointerLeave",A="onPointerEnter",y="pointer"),_=m==null?f:K3(m),q=g==null?f:K3(g),f=new v(E,y+"leave",m,n,c),f.target=_,f.relatedTarget=q,E=null,Wh(c)===u&&(v=new v(A,y+"enter",g,n,c),v.target=q,v.relatedTarget=_,E=v),_=E,m&&g)t:{for(v=m,A=g,y=0,q=v;q;q=f3(q))y++;for(q=0,E=A;E;E=f3(E))q++;for(;0<y-q;)v=f3(v),y--;for(;0<q-y;)A=f3(A),q--;for(;y--;){if(v===A||A!==null&&v===A.alternate)break t;v=f3(v),A=f3(A)}v=null}else v=null;m!==null&&UR(h,f,m,v,!1),g!==null&&_!==null&&UR(h,_,g,v,!0)}}e:{if(f=u?K3(u):window,m=f.nodeName&&f.nodeName.toLowerCase(),m==="select"||m==="input"&&f.type==="file")var T=$K;else if(PR(f))if(kF)T=KK;else{T=XK;var C=jK}else(m=f.nodeName)&&m.toLowerCase()==="input"&&(f.type==="checkbox"||f.type==="radio")&&(T=YK);if(T&&(T=T(t,u))){NF(h,T,n,c);break e}C&&C(t,f,u),t==="focusout"&&(C=f._wrapperState)&&C.controlled&&f.type==="number"&&x_(f,"number",f.value)}switch(C=u?K3(u):window,t){case"focusin":(PR(C)||C.contentEditable==="true")&&(X3=C,D_=u,_5=null);break;case"focusout":_5=D_=X3=null;break;case"mousedown":L_=!0;break;case"contextmenu":case"mouseup":case"dragend":L_=!1,kR(h,n,c);break;case"selectionchange":if(eJ)break;case"keydown":case"keyup":kR(h,n,c)}var I;if($S)e:{switch(t){case"compositionstart":var R="onCompositionStart";break e;case"compositionend":R="onCompositionEnd";break e;case"compositionupdate":R="onCompositionUpdate";break e}R=void 0}else j3?DF(t,n)&&(R="onCompositionEnd"):t==="keydown"&&n.keyCode===229&&(R="onCompositionStart");R&&(BF&&n.locale!=="ko"&&(j3||R!=="onCompositionStart"?R==="onCompositionEnd"&&j3&&(I=PF()):(rc=c,QS="value"in rc?rc.value:rc.textContent,j3=!0)),C=K8(u,R),0<C.length&&(R=new IR(R,t,null,n,c),h.push({event:R,listeners:C}),I?R.data=I:(I=LF(n),I!==null&&(R.data=I)))),(I=VK?GK(t,n):QK(t,n))&&(u=K8(u,"onBeforeInput"),0<u.length&&(c=new IR("onBeforeInput","beforeinput",null,n,c),h.push({event:c,listeners:u}),c.data=I))}$F(h,e)})}function od(t,e,n){return{instance:t,listener:e,currentTarget:n}}function K8(t,e){for(var n=e+"Capture",i=[];t!==null;){var r=t,s=r.stateNode;
vendor: 4,360 bytes, lines 37-38
37r.tag===5&&s!==null&&(r=s,s=Z5(t,n),s!=null&&i.unshift(od(t,s,r)),s=Z5(t,e),s!=null&&i.push(od(t,s,r))),t=t.return}return i}function f3(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5);return t||null}function UR(t,e,n,i,r){for(var s=e._reactName,o=[];n!==null&&n!==i;){var a=n,l=a.alternate,u=a.stateNode;if(l!==null&&l===i)break;a.tag===5&&u!==null&&(a=u,r?(l=Z5(n,s),l!=null&&o.unshift(od(n,l,a))):r||(l=Z5(n,s),l!=null&&o.push(od(n,l,a)))),n=n.return}o.length!==0&&t.push({event:e,listeners:o})}var rJ=/\r\n?/g,sJ=/\u0000|\uFFFD/g;function zR(t){return(typeof t=="string"?t:""+t).replace(rJ,` 38`).replace(sJ,"")}function Bp(t,e,n){if(e=zR(e),zR(t)!==e&&n)throw Error(Ce(425))}function J8(){}var N_=null,k_=null;function F_(t,e){return t==="textarea"||t==="noscript"||typeof e.children=="string"||typeof e.children=="number"||typeof e.dangerouslySetInnerHTML=="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var O_=typeof setTimeout=="function"?setTimeout:void 0,oJ=typeof clearTimeout=="function"?clearTimeout:void 0,VR=typeof Promise=="function"?Promise:void 0,aJ=typeof queueMicrotask=="function"?queueMicrotask:typeof VR<"u"?function(t){return VR.resolve(null).then(t).catch(lJ)}:O_;function lJ(t){setTimeout(function(){throw t})}function ty(t,e){var n=e,i=0;do{var r=n.nextSibling;if(t.removeChild(n),r&&r.nodeType===8)if(n=r.data,n==="/$"){if(i===0){t.removeChild(r),nd(e);return}i--}else n!=="$"&&n!=="$?"&&n!=="$!"||i++;n=r}while(n);nd(e)}function gc(t){for(;t!=null;t=t.nextSibling){var e=t.nodeType;if(e===1||e===3)break;if(e===8){if(e=t.data,e==="$"||e==="$!"||e==="$?")break;if(e==="/$")return null}}return t}function GR(t){t=t.previousSibling;for(var e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="$"||n==="$!"||n==="$?"){if(e===0)return t;e--}else n==="/$"&&e++}t=t.previousSibling}return null}var T2=Math.random().toString(36).slice(2),Wa="__reactFiber$"+T2,ad="__reactProps$"+T2,au="__reactContainer$"+T2,U_="__reactEvents$"+T2,uJ="__reactListeners$"+T2,cJ="__reactHandles$"+T2;function Wh(t){var e=t[Wa];if(e)return e;for(var n=t.parentNode;n;){if(e=n[au]||n[Wa]){if(n=e.alternate,e.child!==null||n!==null&&n.child!==null)for(t=GR(t);t!==null;){if(n=t[Wa])return n;t=GR(t)}return e}t=n,n=t.parentNode}return null}function I4(t){return t=t[Wa]||t[au],!t||t.tag!==5&&t.tag!==6&&t.tag!==13&&t.tag!==3?null:t}function K3(t){if(t.tag===5||t.tag===6)return t.stateNode;throw Error(Ce(33))}function I9(t){return t[ad]||null}var z_=[],J3=-1;function Xc(t){return{current:t}}function Vn(t){0>J3||(t.current=z_[J3],z_[J3]=null,J3--)}function Dn(t,e){J3++,z_[J3]=t.current,t.current=e}var Bc={},Qr=Xc(Bc),Es=Xc(!1),v1=Bc;function V0(t,e){var n=t.type.contextTypes;if(!n)return Bc;var i=t.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===e)return i.__reactInternalMemoizedMaskedChildContext;var r={},s;for(s in n)r[s]=e[s];return i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=e,t.__reactInternalMemoizedMaskedChildContext=r),r}function Ss(t){return t=t.childContextTypes,t!=null}function Z8(){Vn(Es),Vn(Qr)}function QR(t,e,n){if(Qr.current!==Bc)throw Error(Ce(168));Dn(Qr,e),Dn(Es,n)}function XF(t,e,n){var i=t.stateNode;if(e=e.childContextTypes,typeof i.getChildContext!="function")return n;i=i.getChildContext();for(var r in i)if(!(r in e))throw Error(Ce(108,jY(t)||"Unknown",r));return ii({},n,i)}function em(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||Bc,v1=Qr.current,Dn(Qr,t),Dn(Es,Es.current),!0}function HR(t,e,n){var i=t.stateNode;if(!i)throw Error(Ce(169));n?(t=XF(t,e,v1),i.__reactInternalMemoizedMergedChildContext=t,Vn(Es),Vn(Qr),Dn(Qr,t)):Vn(Es),Dn(Es,n)}var Wl=null,M9=!1,ny=!1;function YF(t){Wl===null?Wl=[t]:Wl.push(t)}function hJ(t){M9=!0,YF(t)}function Yc(){if(!ny&&Wl!==null){ny=!0;var t=0,e=xn;try{var n=Wl;for(xn=1;t<n.length;t++){var i=n[t];do i=i(!0);while(i!==null)}Wl=null,M9=!1}catch(r){throw Wl!==null&&(Wl=Wl.slice(t+1)),_F(US,Yc),r}finally{xn=e,ny=!1}}return null}var Z3=[],e0=0,tm=null,nm=0,Io=[],Mo=0,y1=null,Yl=1,Kl="";function Ph(t,e){Z3[e0++]=nm,Z3[e0++]=tm,tm=t,nm=e}function KF(t,e,n){Io[Mo++]=Yl,Io[Mo++]=Kl,Io[Mo++]=y1,y1=t;var i=Yl;t=Kl;var r=32-ha(i)-1;i&=~(1<<r),n+=1;var s=32-ha(e)+r;if(30<s){var o=r-r%5;s=(i&(1<<o)-1).toString(32),i>>=o,r-=o,Yl=1<<32-ha(e)+r|n<<r|i,Kl=s+t}else Yl=1<<s|n<<r|i,Kl=t}
vendor: 7,352 bytes, line 38
38function XS(t){t.return!==null&&(Ph(t,1),KF(t,1,0))}function YS(t){for(;t===tm;)tm=Z3[--e0],Z3[e0]=null,nm=Z3[--e0],Z3[e0]=null;for(;t===y1;)y1=Io[--Mo],Io[Mo]=null,Kl=Io[--Mo],Io[Mo]=null,Yl=Io[--Mo],Io[Mo]=null}var Js=null,Xs=null,Wn=!1,ua=null;function JF(t,e){var n=Po(5,null,null,0);n.elementType="DELETED",n.stateNode=e,n.return=t,e=t.deletions,e===null?(t.deletions=[n],t.flags|=16):e.push(n)}function WR(t,e){switch(t.tag){case 5:var n=t.type;return e=e.nodeType!==1||n.toLowerCase()!==e.nodeName.toLowerCase()?null:e,e!==null?(t.stateNode=e,Js=t,Xs=gc(e.firstChild),!0):!1;case 6:return e=t.pendingProps===""||e.nodeType!==3?null:e,e!==null?(t.stateNode=e,Js=t,Xs=null,!0):!1;case 13:return e=e.nodeType!==8?null:e,e!==null?(n=y1!==null?{id:Yl,overflow:Kl}:null,t.memoizedState={dehydrated:e,treeContext:n,retryLane:1073741824},n=Po(18,null,null,0),n.stateNode=e,n.return=t,t.child=n,Js=t,Xs=null,!0):!1;default:return!1}}function V_(t){return(t.mode&1)!==0&&(t.flags&128)===0}function G_(t){if(Wn){var e=Xs;if(e){var n=e;if(!WR(t,e)){if(V_(t))throw Error(Ce(418));e=gc(n.nextSibling);var i=Js;e&&WR(t,e)?JF(i,n):(t.flags=t.flags&-4097|2,Wn=!1,Js=t)}}else{if(V_(t))throw Error(Ce(418));t.flags=t.flags&-4097|2,Wn=!1,Js=t}}}function $R(t){for(t=t.return;t!==null&&t.tag!==5&&t.tag!==3&&t.tag!==13;)t=t.return;Js=t}function Dp(t){if(t!==Js)return!1;if(!Wn)return $R(t),Wn=!0,!1;var e;if((e=t.tag!==3)&&!(e=t.tag!==5)&&(e=t.type,e=e!=="head"&&e!=="body"&&!F_(t.type,t.memoizedProps)),e&&(e=Xs)){if(V_(t))throw ZF(),Error(Ce(418));for(;e;)JF(t,e),e=gc(e.nextSibling)}if($R(t),t.tag===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(Ce(317));e:{for(t=t.nextSibling,e=0;t;){if(t.nodeType===8){var n=t.data;if(n==="/$"){if(e===0){Xs=gc(t.nextSibling);break e}e--}else n!=="$"&&n!=="$!"&&n!=="$?"||e++}t=t.nextSibling}Xs=null}}else Xs=Js?gc(t.stateNode.nextSibling):null;return!0}function ZF(){for(var t=Xs;t;)t=gc(t.nextSibling)}function G0(){Xs=Js=null,Wn=!1}function KS(t){ua===null?ua=[t]:ua.push(t)}var fJ=_u.ReactCurrentBatchConfig;function oa(t,e){if(t&&t.defaultProps){e=ii({},e),t=t.defaultProps;for(var n in t)e[n]===void 0&&(e[n]=t[n]);return e}return e}var im=Xc(null),rm=null,t0=null,JS=null;function ZS(){JS=t0=rm=null}function eT(t){var e=im.current;Vn(im),t._currentValue=e}function Q_(t,e,n){for(;t!==null;){var i=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,i!==null&&(i.childLanes|=e)):i!==null&&(i.childLanes&e)!==e&&(i.childLanes|=e),t===n)break;t=t.return}}function _0(t,e){rm=t,JS=t0=null,t=t.dependencies,t!==null&&t.firstContext!==null&&(t.lanes&e&&(xs=!0),t.firstContext=null)}function zo(t){var e=t._currentValue;if(JS!==t)if(t={context:t,memoizedValue:e,next:null},t0===null){if(rm===null)throw Error(Ce(308));t0=t,rm.dependencies={lanes:0,firstContext:t}}else t0=t0.next=t;return e}var $h=null;function tT(t){$h===null?$h=[t]:$h.push(t)}function eO(t,e,n,i){var r=e.interleaved;return r===null?(n.next=n,tT(e)):(n.next=r.next,r.next=n),e.interleaved=n,lu(t,i)}function lu(t,e){t.lanes|=e;var n=t.alternate;for(n!==null&&(n.lanes|=e),n=t,t=t.return;t!==null;)t.childLanes|=e,n=t.alternate,n!==null&&(n.childLanes|=e),n=t,t=t.return;return n.tag===3?n.stateNode:null}var ec=!1;function nT(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function tO(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function tu(t,e){return{eventTime:t,lane:e,tag:0,payload:null,callback:null,next:null}}function Ac(t,e,n){var i=t.updateQueue;if(i===null)return null;if(i=i.shared,ln&2){var r=i.pending;return r===null?e.next=e:(e.next=r.next,r.next=e),i.pending=e,lu(t,n)}return r=i.interleaved,r===null?(e.next=e,tT(i)):(e.next=r.next,r.next=e),i.interleaved=e,lu(t,n)}function p8(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194240)!==0)){var i=e.lanes;i&=t.pendingLanes,n|=i,e.lanes=n,zS(t,n)}}function jR(t,e){var n=t.updateQueue,i=t.alternate;if(i!==null&&(i=i.updateQueue,n===i)){var r=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?r=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?r=s=e:s=s.next=e}else r=s=e;n={baseState:i.baseState,firstBaseUpdate:r,lastBaseUpdate:s,shared:i.shared,effects:i.effects},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}function sm(t,e,n,i){var r=t.updateQueue;ec=!1;var s=r.firstBaseUpdate,o=r.lastBaseUpdate,a=r.shared.pending;if(a!==null){r.shared.pending=null;var l=a,u=l.next;l.next=null,o===null?s=u:o.next=u,o=l;var c=t.alternate;c!==null&&(c=c.updateQueue,a=c.lastBaseUpdate,a!==o&&(a===null?c.firstBaseUpdate=u:a.next=u,c.lastBaseUpdate=l))}if(s!==null){var h=r.baseState;o=0,c=u=l=null,a=s;do{var f=a.lane,m=a.eventTime;if((i&f)===f){c!==null&&(c=c.next={eventTime:m,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var g=t,v=a;switch(f=e,m=n,v.tag){case 1:if(g=v.payload,typeof g=="function"){h=g.call(m,h,f);break e}h=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=v.payload,f=typeof g=="function"?g.call(m,h,f):g,f==null)break e;h=ii({},h,f);break e;case 2:ec=!0}}a.callback!==null&&a.lane!==0&&(t.flags|=64,f=r.effects,f===null?r.effects=[a]:f.push(a))}else m={eventTime:m,lane:f,tag:a.tag,payload:a.payload,callback:a.callback,next:null},c===null?(u=c=m,l=h):c=c.next=m,o|=f;if(a=a.next,a===null){if(a=r.shared.pending,a===null)break;f=a,a=f.next,f.next=null,r.lastBaseUpdate=f,r.shared.pending=null}}while(1);if(c===null&&(l=h),r.baseState=l,r.firstBaseUpdate=u,r.lastBaseUpdate=c,e=r.shared.interleaved,e!==null){r=e;do o|=r.lane,r=r.next;while(r!==e)}else s===null&&(r.shared.lanes=0);_1|=o,t.lanes=o,t.memoizedState=h}}function XR(t,e,n){if(t=e.effects,e.effects=null,t!==null)for(e=0;e<t.length;e++){var i=t[e],r=i.callback;if(r!==null){if(i.callback=null,i=n,typeof r!="function")throw Error(Ce(191,r));r.call(i)}}}var nO=new eF.Component().refs;function H_(t,e,n,i){e=t.memoizedState,n=n(i,e),n=n==null?e:ii({},e,n),t.memoizedState=n,t.lanes===0&&(t.updateQueue.baseState=n)}var R9={isMounted:function(t){return(t=t._reactInternals)?k1(t)===t:!1},enqueueSetState:function(t,e,n){t=t._reactInternals;var i=is(),r=yc(t),s=tu(i,r);s.payload=e,n!=null&&(s.callback=n),e=Ac(t,s,r),e!==null&&(fa(e,t,r,i),p8(e,t,r))},enqueueReplaceState:function(t,e,n){t=t._reactInternals;var i=is(),r=yc(t),s=tu(i,r);s.tag=1,s.payload=e,n!=null&&(s.callback=n),e=Ac(t,s,r),e!==null&&(fa(e,t,r,i),p8(e,t,r))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var n=is(),i=yc(t),r=tu(n,i);r.tag=2,e!=null&&(r.callback=e),e=Ac(t,r,i),e!==null&&(fa(e,t,i,n),p8(e,t,i))}};function YR(t,e,n,i,r,s,o){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(i,s,o):e.prototype&&e.prototype.isPureReactComponent?!rd(n,i)||!rd(r,s):!0}function iO(t,e,n){var i=!1,r=Bc,s=e.contextType;return typeof s=="object"&&s!==null?s=zo(s):(r=Ss(e)?v1:Qr.current,i=e.contextTypes,s=(i=i!=null)?V0(t,r):Bc),e=new e(n,s),t.memoizedState=e.state!==null&&e.state!==void 0?e.state:null,e.updater=R9,t.stateNode=e,e._reactInternals=t,i&&
vendor: 7,153 bytes, line 38
38(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=r,t.__reactInternalMemoizedMaskedChildContext=s),e}function KR(t,e,n,i){t=e.state,typeof e.componentWillReceiveProps=="function"&&e.componentWillReceiveProps(n,i),typeof e.UNSAFE_componentWillReceiveProps=="function"&&e.UNSAFE_componentWillReceiveProps(n,i),e.state!==t&&R9.enqueueReplaceState(e,e.state,null)}function W_(t,e,n,i){var r=t.stateNode;r.props=n,r.state=t.memoizedState,r.refs=nO,nT(t);var s=e.contextType;typeof s=="object"&&s!==null?r.context=zo(s):(s=Ss(e)?v1:Qr.current,r.context=V0(t,s)),r.state=t.memoizedState,s=e.getDerivedStateFromProps,typeof s=="function"&&(H_(t,e,s,n),r.state=t.memoizedState),typeof e.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(e=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),e!==r.state&&R9.enqueueReplaceState(r,r.state,null),sm(t,n,r,i),r.state=t.memoizedState),typeof r.componentDidMount=="function"&&(t.flags|=4194308)}function xf(t,e,n){if(t=n.ref,t!==null&&typeof t!="function"&&typeof t!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(Ce(309));var i=n.stateNode}if(!i)throw Error(Ce(147,t));var r=i,s=""+t;return e!==null&&e.ref!==null&&typeof e.ref=="function"&&e.ref._stringRef===s?e.ref:(e=function(o){var a=r.refs;a===nO&&(a=r.refs={}),o===null?delete a[s]:a[s]=o},e._stringRef=s,e)}if(typeof t!="string")throw Error(Ce(284));if(!n._owner)throw Error(Ce(290,t))}return t}function Lp(t,e){throw t=Object.prototype.toString.call(e),Error(Ce(31,t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t))}function JR(t){var e=t._init;return e(t._payload)}function rO(t){function e(A,y){if(t){var q=A.deletions;q===null?(A.deletions=[y],A.flags|=16):q.push(y)}}function n(A,y){if(!t)return null;for(;y!==null;)e(A,y),y=y.sibling;return null}function i(A,y){for(A=new Map;y!==null;)y.key!==null?A.set(y.key,y):A.set(y.index,y),y=y.sibling;return A}function r(A,y){return A=qc(A,y),A.index=0,A.sibling=null,A}function s(A,y,q){return A.index=q,t?(q=A.alternate,q!==null?(q=q.index,q<y?(A.flags|=2,y):q):(A.flags|=2,y)):(A.flags|=1048576,y)}function o(A){return t&&A.alternate===null&&(A.flags|=2),A}function a(A,y,q,E){return y===null||y.tag!==6?(y=uy(q,A.mode,E),y.return=A,y):(y=r(y,q),y.return=A,y)}function l(A,y,q,E){var T=q.type;return T===$3?c(A,y,q.props.children,E,q.key):y!==null&&(y.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===Zu&&JR(T)===y.type)?(E=r(y,q.props),E.ref=xf(A,y,q),E.return=A,E):(E=q8(q.type,q.key,q.props,null,A.mode,E),E.ref=xf(A,y,q),E.return=A,E)}function u(A,y,q,E){return y===null||y.tag!==4||y.stateNode.containerInfo!==q.containerInfo||y.stateNode.implementation!==q.implementation?(y=cy(q,A.mode,E),y.return=A,y):(y=r(y,q.children||[]),y.return=A,y)}function c(A,y,q,E,T){return y===null||y.tag!==7?(y=a1(q,A.mode,E,T),y.return=A,y):(y=r(y,q),y.return=A,y)}function h(A,y,q){if(typeof y=="string"&&y!==""||typeof y=="number")return y=uy(""+y,A.mode,q),y.return=A,y;if(typeof y=="object"&&y!==null){switch(y.$$typeof){case Sp:return q=q8(y.type,y.key,y.props,null,A.mode,q),q.ref=xf(A,null,y),q.return=A,q;case W3:return y=cy(y,A.mode,q),y.return=A,y;case Zu:var E=y._init;return h(A,E(y._payload),q)}if(Zf(y)||Af(y))return y=a1(y,A.mode,q,null),y.return=A,y;Lp(A,y)}return null}function f(A,y,q,E){var T=y!==null?y.key:null;if(typeof q=="string"&&q!==""||typeof q=="number")return T!==null?null:a(A,y,""+q,E);if(typeof q=="object"&&q!==null){switch(q.$$typeof){case Sp:return q.key===T?l(A,y,q,E):null;case W3:return q.key===T?u(A,y,q,E):null;case Zu:return T=q._init,f(A,y,T(q._payload),E)}if(Zf(q)||Af(q))return T!==null?null:c(A,y,q,E,null);Lp(A,q)}return null}function m(A,y,q,E,T){if(typeof E=="string"&&E!==""||typeof E=="number")return A=A.get(q)||null,a(y,A,""+E,T);if(typeof E=="object"&&E!==null){switch(E.$$typeof){case Sp:return A=A.get(E.key===null?q:E.key)||null,l(y,A,E,T);case W3:return A=A.get(E.key===null?q:E.key)||null,u(y,A,E,T);case Zu:var C=E._init;return m(A,y,q,C(E._payload),T)}if(Zf(E)||Af(E))return A=A.get(q)||null,c(y,A,E,T,null);Lp(y,E)}return null}function g(A,y,q,E){for(var T=null,C=null,I=y,R=y=0,M=null;I!==null&&R<q.length;R++){I.index>R?(M=I,I=null):M=I.sibling;var b=f(A,I,q[R],E);if(b===null){I===null&&(I=M);break}t&&I&&b.alternate===null&&e(A,I),y=s(b,y,R),C===null?T=b:C.sibling=b,C=b,I=M}if(R===q.length)return n(A,I),Wn&&Ph(A,R),T;if(I===null){for(;R<q.length;R++)I=h(A,q[R],E),I!==null&&(y=s(I,y,R),C===null?T=I:C.sibling=I,C=I);return Wn&&Ph(A,R),T}for(I=i(A,I);R<q.length;R++)M=m(I,A,R,q[R],E),M!==null&&(t&&M.alternate!==null&&I.delete(M.key===null?R:M.key),y=s(M,y,R),C===null?T=M:C.sibling=M,C=M);return t&&I.forEach(function(D){return e(A,D)}),Wn&&Ph(A,R),T}function v(A,y,q,E){var T=Af(q);if(typeof T!="function")throw Error(Ce(150));if(q=T.call(q),q==null)throw Error(Ce(151));for(var C=T=null,I=y,R=y=0,M=null,b=q.next();I!==null&&!b.done;R++,b=q.next()){I.index>R?(M=I,I=null):M=I.sibling;var D=f(A,I,b.value,E);if(D===null){I===null&&(I=M);break}t&&I&&D.alternate===null&&e(A,I),y=s(D,y,R),C===null?T=D:C.sibling=D,C=D,I=M}if(b.done)return n(A,I),Wn&&Ph(A,R),T;if(I===null){for(;!b.done;R++,b=q.next())b=h(A,b.value,E),b!==null&&(y=s(b,y,R),C===null?T=b:C.sibling=b,C=b);return Wn&&Ph(A,R),T}for(I=i(A,I);!b.done;R++,b=q.next())b=m(I,A,R,b.value,E),b!==null&&(t&&b.alternate!==null&&I.delete(b.key===null?R:b.key),y=s(b,y,R),C===null?T=b:C.sibling=b,C=b);return t&&I.forEach(function(z){return e(A,z)}),Wn&&Ph(A,R),T}function _(A,y,q,E){if(typeof q=="object"&&q!==null&&q.type===$3&&q.key===null&&(q=q.props.children),typeof q=="object"&&q!==null){switch(q.$$typeof){case Sp:e:{for(var T=q.key,C=y;C!==null;){if(C.key===T){if(T=q.type,T===$3){if(C.tag===7){n(A,C.sibling),y=r(C,q.props.children),y.return=A,A=y;break e}}else if(C.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===Zu&&JR(T)===C.type){n(A,C.sibling),y=r(C,q.props),y.ref=xf(A,C,q),y.return=A,A=y;break e}n(A,C);break}else e(A,C);C=C.sibling}q.type===$3?(y=a1(q.props.children,A.mode,E,q.key),y.return=A,A=y):(E=q8(q.type,q.key,q.props,null,A.mode,E),E.ref=xf(A,y,q),E.return=A,A=E)}return o(A);case W3:e:{for(C=q.key;y!==null;){if(y.key===C)if(y.tag===4&&y.stateNode.containerInfo===q.containerInfo&&y.stateNode.implementation===q.implementation){n(A,y.sibling),y=r(y,q.children||[]),y.return=A,A=y;break e}else{n(A,y);break}else e(A,y);y=y.sibling}y=cy(q,A.mode,E),y.return=A,A=y}return o(A);case Zu:return C=q._init,_(A,y,C(q._payload),E)}if(Zf(q))return g(A,y,q,E);if(Af(q))return v(A,y,q,E);Lp(A,q)}return typeof q=="string"&&q!==""||typeof q=="number"?(q=""+q,y!==null&&y.tag===6?(n(A,y.sibling),y=r(y,q),y.return=A,A=y):(n(A,y),y=uy(q,A.mode,E),y.return=A,A=y),o(A)):n(A,y)}return _}var Q0=rO(!0),sO=rO(!1),M4={},rl=Xc(M4),ld=Xc(M4),ud=Xc(M4);function jh(t){if(t===M4)throw Error(Ce(174));return t}function iT(t,e){switch(Dn(ud,e),Dn(ld,t),Dn(rl,M4),t=e.nodeType,t){case 9:case 11:e=(e
vendor: 20,882 bytes, lines 38-40
38=e.documentElement)?e.namespaceURI:S_(null,"");break;default:t=t===8?e.parentNode:e,e=t.namespaceURI||null,t=t.tagName,e=S_(e,t)}Vn(rl),Dn(rl,e)}function H0(){Vn(rl),Vn(ld),Vn(ud)}function oO(t){jh(ud.current);var e=jh(rl.current),n=S_(e,t.type);e!==n&&(Dn(ld,t),Dn(rl,n))}function rT(t){ld.current===t&&(Vn(rl),Vn(ld))}var jn=Xc(0);function om(t){for(var e=t;e!==null;){if(e.tag===13){var n=e.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return e}else if(e.tag===19&&e.memoizedProps.revealOrder!==void 0){if(e.flags&128)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var iy=[];function sT(){for(var t=0;t<iy.length;t++)iy[t]._workInProgressVersionPrimary=null;iy.length=0}var m8=_u.ReactCurrentDispatcher,ry=_u.ReactCurrentBatchConfig,q1=0,ti=null,Gi=null,rr=null,am=!1,x5=!1,cd=0,dJ=0;function wr(){throw Error(Ce(321))}function oT(t,e){if(e===null)return!1;for(var n=0;n<e.length&&n<t.length;n++)if(!ga(t[n],e[n]))return!1;return!0}function aT(t,e,n,i,r,s){if(q1=s,ti=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,m8.current=t===null||t.memoizedState===null?AJ:vJ,t=n(i,r),x5){s=0;do{if(x5=!1,cd=0,25<=s)throw Error(Ce(301));s+=1,rr=Gi=null,e.updateQueue=null,m8.current=yJ,t=n(i,r)}while(x5)}if(m8.current=lm,e=Gi!==null&&Gi.next!==null,q1=0,rr=Gi=ti=null,am=!1,e)throw Error(Ce(300));return t}function lT(){var t=cd!==0;return cd=0,t}function Ga(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return rr===null?ti.memoizedState=rr=t:rr=rr.next=t,rr}function Vo(){if(Gi===null){var t=ti.alternate;t=t!==null?t.memoizedState:null}else t=Gi.next;var e=rr===null?ti.memoizedState:rr.next;if(e!==null)rr=e,Gi=t;else{if(t===null)throw Error(Ce(310));Gi=t,t={memoizedState:Gi.memoizedState,baseState:Gi.baseState,baseQueue:Gi.baseQueue,queue:Gi.queue,next:null},rr===null?ti.memoizedState=rr=t:rr=rr.next=t}return rr}function hd(t,e){return typeof e=="function"?e(t):e}function sy(t){var e=Vo(),n=e.queue;if(n===null)throw Error(Ce(311));n.lastRenderedReducer=t;var i=Gi,r=i.baseQueue,s=n.pending;if(s!==null){if(r!==null){var o=r.next;r.next=s.next,s.next=o}i.baseQueue=r=s,n.pending=null}if(r!==null){s=r.next,i=i.baseState;var a=o=null,l=null,u=s;do{var c=u.lane;if((q1&c)===c)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),i=u.hasEagerState?u.eagerState:t(i,u.action);else{var h={lane:c,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(a=l=h,o=i):l=l.next=h,ti.lanes|=c,_1|=c}u=u.next}while(u!==null&&u!==s);l===null?o=i:l.next=a,ga(i,e.memoizedState)||(xs=!0),e.memoizedState=i,e.baseState=o,e.baseQueue=l,n.lastRenderedState=i}if(t=n.interleaved,t!==null){r=t;do s=r.lane,ti.lanes|=s,_1|=s,r=r.next;while(r!==t)}else r===null&&(n.lanes=0);return[e.memoizedState,n.dispatch]}function oy(t){var e=Vo(),n=e.queue;if(n===null)throw Error(Ce(311));n.lastRenderedReducer=t;var i=n.dispatch,r=n.pending,s=e.memoizedState;if(r!==null){n.pending=null;var o=r=r.next;do s=t(s,o.action),o=o.next;while(o!==r);ga(s,e.memoizedState)||(xs=!0),e.memoizedState=s,e.baseQueue===null&&(e.baseState=s),n.lastRenderedState=s}return[s,i]}function aO(){}function lO(t,e){var n=ti,i=Vo(),r=e(),s=!ga(i.memoizedState,r);if(s&&(i.memoizedState=r,xs=!0),i=i.queue,uT(hO.bind(null,n,i,t),[t]),i.getSnapshot!==e||s||rr!==null&&rr.memoizedState.tag&1){if(n.flags|=2048,fd(9,cO.bind(null,n,i,r,e),void 0,null),or===null)throw Error(Ce(349));q1&30||uO(n,e,r)}return r}function uO(t,e,n){t.flags|=16384,t={getSnapshot:e,value:n},e=ti.updateQueue,e===null?(e={lastEffect:null,stores:null},ti.updateQueue=e,e.stores=[t]):(n=e.stores,n===null?e.stores=[t]:n.push(t))}function cO(t,e,n,i){e.value=n,e.getSnapshot=i,fO(e)&&dO(t)}function hO(t,e,n){return n(function(){fO(e)&&dO(t)})}function fO(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!ga(t,n)}catch{return!0}}function dO(t){var e=lu(t,1);e!==null&&fa(e,t,1,-1)}function ZR(t){var e=Ga();return typeof t=="function"&&(t=t()),e.memoizedState=e.baseState=t,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:hd,lastRenderedState:t},e.queue=t,t=t.dispatch=gJ.bind(null,ti,t),[e.memoizedState,t]}function fd(t,e,n,i){return t={tag:t,create:e,destroy:n,deps:i,next:null},e=ti.updateQueue,e===null?(e={lastEffect:null,stores:null},ti.updateQueue=e,e.lastEffect=t.next=t):(n=e.lastEffect,n===null?e.lastEffect=t.next=t:(i=n.next,n.next=t,t.next=i,e.lastEffect=t)),t}function pO(){return Vo().memoizedState}function g8(t,e,n,i){var r=Ga();ti.flags|=t,r.memoizedState=fd(1|e,n,void 0,i===void 0?null:i)}function b9(t,e,n,i){var r=Vo();i=i===void 0?null:i;var s=void 0;if(Gi!==null){var o=Gi.memoizedState;if(s=o.destroy,i!==null&&oT(i,o.deps)){r.memoizedState=fd(e,n,s,i);return}}ti.flags|=t,r.memoizedState=fd(1|e,n,s,i)}function eb(t,e){return g8(8390656,8,t,e)}function uT(t,e){return b9(2048,8,t,e)}function mO(t,e){return b9(4,2,t,e)}function gO(t,e){return b9(4,4,t,e)}function AO(t,e){if(typeof e=="function")return t=t(),e(t),function(){e(null)};if(e!=null)return t=t(),e.current=t,function(){e.current=null}}function vO(t,e,n){return n=n!=null?n.concat([t]):null,b9(4,4,AO.bind(null,e,t),n)}function cT(){}function yO(t,e){var n=Vo();e=e===void 0?null:e;var i=n.memoizedState;return i!==null&&e!==null&&oT(e,i[1])?i[0]:(n.memoizedState=[t,e],t)}function qO(t,e){var n=Vo();e=e===void 0?null:e;var i=n.memoizedState;return i!==null&&e!==null&&oT(e,i[1])?i[0]:(t=t(),n.memoizedState=[t,e],t)}function _O(t,e,n){return q1&21?(ga(n,e)||(n=SF(),ti.lanes|=n,_1|=n,t.baseState=!0),e):(t.baseState&&(t.baseState=!1,xs=!0),t.memoizedState=n)}function pJ(t,e){var n=xn;xn=n!==0&&4>n?n:4,t(!0);var i=ry.transition;ry.transition={};try{t(!1),e()}finally{xn=n,ry.transition=i}}function xO(){return Vo().memoizedState}function mJ(t,e,n){var i=yc(t);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},EO(t))SO(e,n);else if(n=eO(t,e,n,i),n!==null){var r=is();fa(n,t,i,r),TO(n,e,i)}}function gJ(t,e,n){var i=yc(t),r={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(EO(t))SO(e,r);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,a=s(o,n);if(r.hasEagerState=!0,r.eagerState=a,ga(a,o)){var l=e.interleaved;l===null?(r.next=r,tT(e)):(r.next=l.next,l.next=r),e.interleaved=r;return}}catch{}finally{}n=eO(t,e,r,i),n!==null&&(r=is(),fa(n,t,i,r),TO(n,e,i))}}function EO(t){var e=t.alternate;return t===ti||e!==null&&e===ti}function SO(t,e){x5=am=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function TO(t,e,n){if(n&4194240){var i=e.lanes;i&=t.pendingLanes,n|=i,e.lanes=n,zS(t,n)}}var lm={readContext:zo,useCallback:wr,useContext:wr,useEffect:wr,useImperativeHandle:wr,useInsertionEffect:wr,useLayoutEffect:wr,useMemo:wr,useReducer:wr,useRef:wr,useState:wr,useDebugValue:wr,useDeferredValue:wr,useTransition:wr,useMutableSource:wr,useSyncExternalStore:wr,useId:wr,unstable_isNewReconciler:!1},AJ={readContext:zo,useCallback:function(t,e){return Ga().memoizedState=[t,e===void 0?null:e],t},useContext:zo,useEffect:eb,useImperativeHandle:function(t,e,n){return n=n!=null?n.concat([t]):null,g8(4194308,4,AO.bind(null,e,t),n)},useLayoutEffect:function(t,e){return g8(4194308,4,t,e)},useInsertionEffect:function(t,e){return g8(4,2,t,e)},useMemo:function(t,e){var n=Ga();return e=e===void 0?null:e,t=t(),n.memoizedState=[t,e],t},useReducer:function(t,e,n){var i=Ga();return e=n!==void 0?n(e):e,i.memoizedState=i.baseState=e,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:e},i.queue=t,t=t.dispatch=mJ.bind(null,ti,t),[i.memoizedState,t]},useRef:function(t){var e=Ga();return t={current:t},e.memoizedState=t},useState:ZR,useDebugValue:cT,useDeferredValue:function(t){return Ga().memoizedState=t},useTransition:function(){var t=ZR(!1),e=t[0];return t=pJ.bind(null,t[1]),Ga().memoizedState=t,[e,t]},useMutableSource:function(){},useSyncExternalStore:function(t,e,n){var i=ti,r=Ga();if(Wn){if(n===void 0)throw Error(Ce(407));n=n()}else{if(n=e(),or===null)throw Error(Ce(349));q1&30||uO(i,e,n)}r.memoizedState=n;var s={value:n,getSnapshot:e};return r.queue=s,eb(hO.bind(null,i,s,t),[t]),i.flags|=2048,fd(9,cO.bind(null,i,s,n,e),void 0,null),n},useId:function(){var t=Ga(),e=or.identifierPrefix;if(Wn){var n=Kl,i=Yl;n=(i&~(1<<32-ha(i)-1)).toString(32)+n,e=":"+e+"R"+n,n=cd++,0<n&&(e+="H"+n.toString(32)),e+=":"}else n=dJ++,e=":"+e+"r"+n.toString(32)+":";return t.memoizedState=e},unstable_isNewReconciler:!1},vJ={readContext:zo,useCallback:yO,useContext:zo,useEffect:uT,useImperativeHandle:vO,useInsertionEffect:mO,useLayoutEffect:gO,useMemo:qO,useReducer:sy,useRef:pO,useState:function(){return sy(hd)},useDebugValue:cT,useDeferredValue:function(t){var e=Vo();return _O(e,Gi.memoizedState,t)},useTransition:function(){var t=sy(hd)[0],e=Vo().memoizedState;return[t,e]},useMutableSource:aO,useSyncExternalStore:lO,useId:xO,unstable_isNewReconciler:!1},yJ={readContext:zo,useCallback:yO,useContext:zo,useEffect:uT,useImperativeHandle:vO,useInsertionEffect:mO,useLayoutEffect:gO,useMemo:qO,useReducer:oy,useRef:pO,useState:function(){return oy(hd)},useDebugValue:cT,useDeferredValue:function(t){var e=Vo();return Gi===null?e.memoizedState=t:_O(e,Gi.memoizedState,t)},useTransition:function(){var t=oy(hd)[0],e=Vo().memoizedState;return[t,e]},useMutableSource:aO,useSyncExternalStore:lO,useId:xO,unstable_isNewReconciler:!1};function W0(t,e){try{var n="",i=e;do n+=$Y(i),i=i.return;while(i);var r=n}catch(s){r=` 39Error generating stack: `+s.message+` 40`+s.stack}return{value:t,source:e,stack:r,digest:null}}function ay(t,e,n){return{value:t,source:null,stack:n??null,digest:e??null}}function $_(t,e){try{console.error(e.value)}catch(n){setTimeout(function(){throw n})}}var qJ=typeof WeakMap=="function"?WeakMap:Map;function CO(t,e,n){n=tu(-1,n),n.tag=3,n.payload={element:null};var i=e.value;return n.callback=function(){cm||(cm=!0,ix=i),$_(t,e)},n}function wO(t,e,n){n=tu(-1,n),n.tag=3;var i=t.type.getDerivedStateFromError;if(typeof i=="function"){var r=e.value;n.payload=function(){return i(r)},n.callback=function(){$_(t,e)}}var s=t.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){$_(t,e),typeof i!="function"&&(vc===null?vc=new Set([this]):vc.add(this));var o=e.stack;this.componentDidCatch(e.value,{componentStack:o!==null?o:""})}),n}function tb(t,e,n){var i=t.pingCache;if(i===null){i=t.pingCache=new qJ;var r=new Set;i.set(e,r)}else r=i.get(e),r===void 0&&(r=new Set,i.set(e,r));r.has(n)||(r.add(n),t=DJ.bind(null,t,e,n),e.then(t,t))}function nb(t){do{var e;if((e=t.tag===13)&&(e=t.memoizedState,e=e!==null?e.dehydrated!==null:!0),e)return t;t=t.return}while(t!==null);return null}function ib(t,e,n,i,r){return t.mode&1?(t.flags|=65536,t.lanes=r,t):(t===e?t.flags|=65536:(t.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(e=tu(-1,1),e.tag=2,Ac(n,e,1))),n.lanes|=1),t)}var _J=_u.ReactCurrentOwner,xs=!1;function es(t,e,n,i){e.child=t===null?sO(e,null,n,i):Q0(e,t.child,n,i)}function rb(t,e,n,i,r){n=n.render;var s=e.ref;return _0(e,r),i=aT(t,e,n,i,s,r),n=lT(),t!==null&&!xs?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,uu(t,e,r)):(Wn&&n&&XS(e),e.flags|=1,es(t,e,i,r),e.child)}function sb(t,e,n,i,r){if(t===null){var s=n.type;return typeof s=="function"&&!vT(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(e.tag=15,e.type=s,IO(t,e,s,i,r)):(t=q8(n.type,null,i,e,e.mode,r),t.ref=e.ref,t.return=e,e.child=t)}if(s=t.child,!(t.lanes&r)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:rd,n(o,i)&&t.ref===e.ref)return uu(t,e,r)}return e.flags|=1,t=qc(s,i),t.ref=e.ref,t.return=e,e.child=t}function IO(t,e,n,i,r){if(t!==null){var s=t.memoizedProps;if(rd(s,i)&&t.ref===e.ref)if(xs=!1,e.pendingProps=i=s,(t.lanes&r)!==0)t.flags&131072&&(xs=!0);else return e.lanes=t.lanes,uu(t,e,r)}return j_(t,e,n,i,r)}function MO(t,e,n){var i=e.pendingProps,r=i.children,s=t!==null?t.memoizedState:null;if(i.mode==="hidden")if(!(e.mode&1))e.memoizedState={baseLanes:0,cachePool:null,transitions:null},Dn(i0,Qs),Qs|=n;else{if(!(n&1073741824))return t=s!==null?s.baseLanes|n:n,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:t,cachePool:null,transitions:null},e.updateQueue=null,Dn(i0,Qs),Qs|=t,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=s!==null?s.baseLanes:n,Dn(i0,Qs),Qs|=i}else s!==null?(i=s.baseLanes|n,e.memoizedState=null):i=n,Dn(i0,Qs),Qs|=i;return es(t,e,r,n),e.child}function RO(t,e){var n=e.ref;(t===null&&n!==null||t!==null&&t.ref!==n)&&(e.flags|=512,e.flags|=2097152)}function j_(t,e,n,i,r){var s=Ss(n)?v1:Qr.current;return s=V0(e,s),_0(e,r),n=aT(t,e,n,i,s,r),i=lT(),t!==null&&!xs?(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~r,uu(t,e,r)):(Wn&&i&&XS(e),e.flags|=1,es(t,e,n,r),e.child)}function ob(t,e,n,i,r){if(Ss(n)){var s=!0;em(e)}else s=!1;if(_0(e,r),e.stateNode===null)A8(t,e),iO(e,n,i),W_(e,n,i,r),i=!0;else if(t===null){var o=e.stateNode,a=e.memoizedProps;o.props=a;var l=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=zo(u):(u=Ss(n)?v1:Qr.current,u=V0(e,u));var c=n.getDerivedStateFromProps,h=typeof c=="function"||typeof o.getSnapshotBeforeUpdate=="function";h||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==i||l!==u)&&KR(e,o,i,u),ec=!1;var f=e.memoizedState;o.state=f,sm(e,i,o,r),l=e.memoizedState,a!==i||f!==l||Es.current||ec?(typeof c=="function"&&(H_(e,n,c,i),l=e.memoizedState),(a=ec||YR(e,n,a,i,f,l,u))?(h||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(e.flags|=4194308)):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),e.memoizedProps=i,e.memoizedState=l),o.props=i,o.state=l,o.context=u,i=a):(typeof o.componentDidMount=="function"&&(e.flags|=4194308),i=!1)}else{o=e.stateNode,tO(t,e),a=e.memoizedProps,u=e.type===e.elementType?a:oa(e.type,a),o.props=u,h=e.pendingProps,f=o.context,l=n.contextType,typeof l=="object"&&l!==null?l=zo(l):(l=Ss(n)?v1:Qr.current,l=V0(e,l));var m=n.getDerivedStateFromProps;(c=typeof m=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(a!==h||f!==l)&&KR(e,o,i,l),ec=!1,f=e.memoizedState,o.state=f,sm(e,i,o,r);var g=e.memoizedState;a!==h||f!==g||Es.current||ec?(typeof m=="function"&&(H_(e,n,m,i),g=e.memoizedState),(u=ec||YR(e,n,u,i,f,g,l)||!1)?(c||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(i,g,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(i,g,l)),typeof o.componentDidUpdate=="function"&&(e.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(e.flags|=1024)):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&f===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&f===t.memoizedState||(e.flags|=1024),e.memoizedProps=i,e.memoizedState=g),o.props=i,o.state=g,o.context=l,i=u):(typeof o.componentDidUpdate!="function"||a===t.memoizedProps&&f===t.memoizedState||(e.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||a===t.memoizedProps&&f===t.memoizedState||(e.flags|=1024),i=!1)}return X_(t,e,n,i,s,r)}function X_(t,e,n,i,r,s){RO(t,e);var o=(e.flags&128)!==0;if(!i&&!o)return r&&HR(e,n,!1),uu(t,e,s);i=e.stateNode,_J.current=e;var a=o&&typeof n.getDerivedStateFromError!="function"?null:i.render();return e.flags|=1,t!==null&&o?(e.child=Q0(e,t.child,null,s),e.child=Q0(e,null,a,s)):es(t,e,a,s),e.memoizedState=i.state,r&&HR(e,n,!0),e.child}function bO(t){var e=t.stateNode;e.pendingContext?QR(t,e.pendingContext,e.pendingContext!==e.context):e.context&&QR(t,e.context,!1),iT(t,e.containerInfo)}function ab(t,e,n,i,r){return G0(),KS(r),e.flags|=256,es(t,e,n,i),e.child}var Y_={dehydrated:null,treeContext:null,retryLane:0};function K_(t){return{baseLanes:t,cachePool:null,transitions:null}}function PO(t,e,n){var i=e.pendingProps,r=jn.current,s=!1,o=(e.flags&128)!==0,a;if((a=o)||(a=t!==null&&t.memoizedState===null?!1:(r&2)!==0),a?(s=!0,e.flags&=-129):(t===null||t.memoizedState!==null)&&(r|=1),Dn(jn,r&1),t===null)return G_(e),t=e.memoizedState,t!==null&&(t=t.dehydrated,t!==null)?(e.mode&1?t.data==="$!"?e.lanes=8:e.lanes=1073741824:e.lanes=1,null):(o=i.children,t=i.fallback,s?(i=e.mode,s=e.child,o={mode:"hidden",children:o},!(i&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=D9(o,i,0,null),t=a1(t,i,n,null),s.return=e,t.return=e,s.sibling=t,e.child=s,e.child.memoizedState=K_(n),e.memoizedState=Y_,t):hT(e,o));if(r=t.memoizedState,r!==null&&(a=r.dehydrated,a!==null))return xJ(t,e,o,i,a,r,n);if(s){s=i.fallback,o=e.mode,r=t.child,a=r.sibling;var l={mode:"hidden",children:i.children};return!(o&1)&&e.child!==r?(i=e.child,i.childLanes=0,i.pendingProps=l,e.deletions=null):(i=qc(r,l),i.subtreeFlags=r.subtreeFlags&14680064),a!==null?s=qc(a,s):(s=a1(s,o,n,null),s.flags|=2),s.return=e,i.return=e,i.sibling=s,e.child=i,i=s,s=e.child,o=t.child.memoizedState,o=o===null?K_(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=t.childLanes&~n,e.memoizedState=Y_,i}return s=t.child,t=s.sibling,i=qc(s,{mode:"visible",children:i.children}),!(e.mode&1)&&(i.lanes=n),i.return=e,i.sibling=null,t!==null&&(n=e.deletions,n===null?(e.deletions=[t],e.flags|=16):n.push(t)),e.child=i,e.memoizedState=null,i}function hT(t,e){return e=D9({mode:"visible",children:e},t.mode,0,null),e.return=t,t.child=e}function Np(t,e,n,i){return i!==null&&KS(i),Q0(e,t.child,null,n),t=hT(e,e.pendingProps.children),t.flags|=2,e.memoizedState=null,t}function xJ(t,e,n,i,r,s,o){if(n)return e.flags&256?(e.flags&=-257,i=ay(Error(Ce(422))),Np(t,e,o,i)):e.memoizedState!==null?(e.child=t.child,e.flags|=128,null):(s=i.fallback,r=e.mode,i=D9({mode:"visible",children:i.children},r,0,null),s=a1(s,r,o,null),s.flags|=2,i.return=e,s.return=e,i.sibling=s,e.child=i,e.mode&1&&Q0(e,t.child,null,o),e.child.memoizedState=K_(o),e.memoizedState=Y_,s);if(!(e.mode&1))return Np(t,e,o,null);if(r.data==="$!"){if(i=r.nextSibling&&r.nextSibling.dataset,i)var a=i.dgst;return i=a,s=Error(Ce(419)),i=ay(s,i,void 0),Np(t,e,o,i)}if(a=(o&t.childLanes)!==0,xs||a){if(i=or,i!==null){switch(o&-o){case 4:r=2;break;case 16:r=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:r=32;break;case 536870912:r=268435456;break;default:r=0}r=r&(i.suspendedLanes|o)?0:r,r!==0&&r!==s.retryLane&&(s.retryLane=r,lu(t,r),fa(i,t,r,-1))}return AT(),i=ay(Error(Ce(421))),Np(t,e,o,i)}return r.data==="$?"?(e.flags|=128,e.child=t.child,e=LJ.bind(null,t),r._reactRetry=e,null):(t=s.treeContext,Xs=gc(r.nextSibling),Js=e,Wn=!0,ua=null,t!==null&&(Io[Mo++]=Yl,Io[Mo++]=Kl,Io[Mo++]=y1,Yl=t.id,Kl=t.overflow,y1=e),e=hT(e,i.children),e.flags|=4096,e)}function lb(t,e,n){t.lanes|=e;var i=t.alternate;i!==null&&(i.lanes|=e),Q_(t.return,e,n)}function ly(t,e,n,i,r){var s=t.memoizedState;s===null?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:r}:(s.isBackwards=e,s.rendering=null,s.renderingStartTime=0,s.last=i,s.tail=n,s.tailMode=r)}function BO(t,e,n){var i=e.pendingProps,r=i.revealOrder,s=i.tail;if(es(t,e,i.children,n),i=jn.current,i&2)i=i&1|2,e.flags|=128;else{if(t!==null&&t.flags&128)e:for(t=e.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&lb(t,n,e);else if(t.tag===19)lb(t,n,e);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}i&=1}if(Dn(jn,i),!(e.mode&1))e.memoizedState=null;else switch(r){case"forwards":for(n=e.child,r=null;n!==null;)t=n.alternate,t!==null&&om(t)===null&&(r=n),n=n.sibling;n=r,n===null?(r=e.child,e.child=null):(r=n.sibling,n.sibling=null),ly(e,!1,r,n,s);break;case"backwards":for(n=null,r=e.child,e.child=null;r!==null;){if(t=r.alternate,t!==null&&om(t)===null){e.child=r;break}t=r.sibling,r.sibling=n,n=r,r=t}ly(e,!0,n,null,s);break;case"together":ly(e,!1,null,null,void 0);break;default:e.memoizedState=null}return e.child}function A8(t,e){!(e.mode&1)&&t!==null&&(t.alternate=null,e.alternate=null,e.flags|=2)}
vendor: 4,905 bytes, line 40
40function uu(t,e,n){if(t!==null&&(e.dependencies=t.dependencies),_1|=e.lanes,!(n&e.childLanes))return null;if(t!==null&&e.child!==t.child)throw Error(Ce(153));if(e.child!==null){for(t=e.child,n=qc(t,t.pendingProps),e.child=n,n.return=e;t.sibling!==null;)t=t.sibling,n=n.sibling=qc(t,t.pendingProps),n.return=e;n.sibling=null}return e.child}function EJ(t,e,n){switch(e.tag){case 3:bO(e),G0();break;case 5:oO(e);break;case 1:Ss(e.type)&&em(e);break;case 4:iT(e,e.stateNode.containerInfo);break;case 10:var i=e.type._context,r=e.memoizedProps.value;Dn(im,i._currentValue),i._currentValue=r;break;case 13:if(i=e.memoizedState,i!==null)return i.dehydrated!==null?(Dn(jn,jn.current&1),e.flags|=128,null):n&e.child.childLanes?PO(t,e,n):(Dn(jn,jn.current&1),t=uu(t,e,n),t!==null?t.sibling:null);Dn(jn,jn.current&1);break;case 19:if(i=(n&e.childLanes)!==0,t.flags&128){if(i)return BO(t,e,n);e.flags|=128}if(r=e.memoizedState,r!==null&&(r.rendering=null,r.tail=null,r.lastEffect=null),Dn(jn,jn.current),i)break;return null;case 22:case 23:return e.lanes=0,MO(t,e,n)}return uu(t,e,n)}var DO,J_,LO,NO;DO=function(t,e){for(var n=e.child;n!==null;){if(n.tag===5||n.tag===6)t.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};J_=function(){};LO=function(t,e,n,i){var r=t.memoizedProps;if(r!==i){t=e.stateNode,jh(rl.current);var s=null;switch(n){case"input":r=q_(t,r),i=q_(t,i),s=[];break;case"select":r=ii({},r,{value:void 0}),i=ii({},i,{value:void 0}),s=[];break;case"textarea":r=E_(t,r),i=E_(t,i),s=[];break;default:typeof r.onClick!="function"&&typeof i.onClick=="function"&&(t.onclick=J8)}T_(n,i);var o;n=null;for(u in r)if(!i.hasOwnProperty(u)&&r.hasOwnProperty(u)&&r[u]!=null)if(u==="style"){var a=r[u];for(o in a)a.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(K5.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in i){var l=i[u];if(a=r!=null?r[u]:void 0,i.hasOwnProperty(u)&&l!==a&&(l!=null||a!=null))if(u==="style")if(a){for(o in a)!a.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in l)l.hasOwnProperty(o)&&a[o]!==l[o]&&(n||(n={}),n[o]=l[o])}else n||(s||(s=[]),s.push(u,n)),n=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,a=a?a.__html:void 0,l!=null&&a!==l&&(s=s||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(s=s||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(K5.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&On("scroll",t),s||a===l||(s=[])):(s=s||[]).push(u,l))}n&&(s=s||[]).push("style",n);var u=s;(e.updateQueue=u)&&(e.flags|=4)}};NO=function(t,e,n,i){n!==i&&(e.flags|=4)};function Ef(t,e){if(!Wn)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;e!==null;)e.alternate!==null&&(n=e),e=e.sibling;n===null?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?e||t.tail===null?t.tail=null:t.tail.sibling=null:i.sibling=null}}function Ir(t){var e=t.alternate!==null&&t.alternate.child===t.child,n=0,i=0;if(e)for(var r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags&14680064,i|=r.flags&14680064,r.return=t,r=r.sibling;else for(r=t.child;r!==null;)n|=r.lanes|r.childLanes,i|=r.subtreeFlags,i|=r.flags,r.return=t,r=r.sibling;return t.subtreeFlags|=i,t.childLanes=n,e}function SJ(t,e,n){var i=e.pendingProps;switch(YS(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ir(e),null;case 1:return Ss(e.type)&&Z8(),Ir(e),null;case 3:return i=e.stateNode,H0(),Vn(Es),Vn(Qr),sT(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(t===null||t.child===null)&&(Dp(e)?e.flags|=4:t===null||t.memoizedState.isDehydrated&&!(e.flags&256)||(e.flags|=1024,ua!==null&&(ox(ua),ua=null))),J_(t,e),Ir(e),null;case 5:rT(e);var r=jh(ud.current);if(n=e.type,t!==null&&e.stateNode!=null)LO(t,e,n,i,r),t.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!i){if(e.stateNode===null)throw Error(Ce(166));return Ir(e),null}if(t=jh(rl.current),Dp(e)){i=e.stateNode,n=e.type;var s=e.memoizedProps;switch(i[Wa]=e,i[ad]=s,t=(e.mode&1)!==0,n){case"dialog":On("cancel",i),On("close",i);break;case"iframe":case"object":case"embed":On("load",i);break;case"video":case"audio":for(r=0;r<t5.length;r++)On(t5[r],i);break;case"source":On("error",i);break;case"img":case"image":case"link":On("error",i),On("load",i);break;case"details":On("toggle",i);break;case"input":AR(i,s),On("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!s.multiple},On("invalid",i);break;case"textarea":yR(i,s),On("invalid",i)}T_(n,s),r=null;for(var o in s)if(s.hasOwnProperty(o)){var a=s[o];
vendor: 15,670 bytes, line 40
40o==="children"?typeof a=="string"?i.textContent!==a&&(s.suppressHydrationWarning!==!0&&Bp(i.textContent,a,t),r=["children",a]):typeof a=="number"&&i.textContent!==""+a&&(s.suppressHydrationWarning!==!0&&Bp(i.textContent,a,t),r=["children",""+a]):K5.hasOwnProperty(o)&&a!=null&&o==="onScroll"&&On("scroll",i)}switch(n){case"input":Tp(i),vR(i,s,!0);break;case"textarea":Tp(i),qR(i);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(i.onclick=J8)}i=r,e.updateQueue=i,i!==null&&(e.flags|=4)}else{o=r.nodeType===9?r:r.ownerDocument,t==="http://www.w3.org/1999/xhtml"&&(t=uF(n)),t==="http://www.w3.org/1999/xhtml"?n==="script"?(t=o.createElement("div"),t.innerHTML="<script><\/script>",t=t.removeChild(t.firstChild)):typeof i.is=="string"?t=o.createElement(n,{is:i.is}):(t=o.createElement(n),n==="select"&&(o=t,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):t=o.createElementNS(t,n),t[Wa]=e,t[ad]=i,DO(t,e,!1,!1),e.stateNode=t;e:{switch(o=C_(n,i),n){case"dialog":On("cancel",t),On("close",t),r=i;break;case"iframe":case"object":case"embed":On("load",t),r=i;break;case"video":case"audio":for(r=0;r<t5.length;r++)On(t5[r],t);r=i;break;case"source":On("error",t),r=i;break;case"img":case"image":case"link":On("error",t),On("load",t),r=i;break;case"details":On("toggle",t),r=i;break;case"input":AR(t,i),r=q_(t,i),On("invalid",t);break;case"option":r=i;break;case"select":t._wrapperState={wasMultiple:!!i.multiple},r=ii({},i,{value:void 0}),On("invalid",t);break;case"textarea":yR(t,i),r=E_(t,i),On("invalid",t);break;default:r=i}T_(n,r),a=r;for(s in a)if(a.hasOwnProperty(s)){var l=a[s];s==="style"?fF(t,l):s==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&cF(t,l)):s==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&J5(t,l):typeof l=="number"&&J5(t,""+l):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(K5.hasOwnProperty(s)?l!=null&&s==="onScroll"&&On("scroll",t):l!=null&&LS(t,s,l,o))}switch(n){case"input":Tp(t),vR(t,i,!1);break;case"textarea":Tp(t),qR(t);break;case"option":i.value!=null&&t.setAttribute("value",""+Pc(i.value));break;case"select":t.multiple=!!i.multiple,s=i.value,s!=null?A0(t,!!i.multiple,s,!1):i.defaultValue!=null&&A0(t,!!i.multiple,i.defaultValue,!0);break;default:typeof r.onClick=="function"&&(t.onclick=J8)}switch(n){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(e.flags|=4)}e.ref!==null&&(e.flags|=512,e.flags|=2097152)}return Ir(e),null;case 6:if(t&&e.stateNode!=null)NO(t,e,t.memoizedProps,i);else{if(typeof i!="string"&&e.stateNode===null)throw Error(Ce(166));if(n=jh(ud.current),jh(rl.current),Dp(e)){if(i=e.stateNode,n=e.memoizedProps,i[Wa]=e,(s=i.nodeValue!==n)&&(t=Js,t!==null))switch(t.tag){case 3:Bp(i.nodeValue,n,(t.mode&1)!==0);break;case 5:t.memoizedProps.suppressHydrationWarning!==!0&&Bp(i.nodeValue,n,(t.mode&1)!==0)}s&&(e.flags|=4)}else i=(n.nodeType===9?n:n.ownerDocument).createTextNode(i),i[Wa]=e,e.stateNode=i}return Ir(e),null;case 13:if(Vn(jn),i=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(Wn&&Xs!==null&&e.mode&1&&!(e.flags&128))ZF(),G0(),e.flags|=98560,s=!1;else if(s=Dp(e),i!==null&&i.dehydrated!==null){if(t===null){if(!s)throw Error(Ce(318));if(s=e.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(Ce(317));s[Wa]=e}else G0(),!(e.flags&128)&&(e.memoizedState=null),e.flags|=4;Ir(e),s=!1}else ua!==null&&(ox(ua),ua=null),s=!0;if(!s)return e.flags&65536?e:null}return e.flags&128?(e.lanes=n,e):(i=i!==null,i!==(t!==null&&t.memoizedState!==null)&&i&&(e.child.flags|=8192,e.mode&1&&(t===null||jn.current&1?$i===0&&($i=3):AT())),e.updateQueue!==null&&(e.flags|=4),Ir(e),null);case 4:return H0(),J_(t,e),t===null&&sd(e.stateNode.containerInfo),Ir(e),null;case 10:return eT(e.type._context),Ir(e),null;case 17:return Ss(e.type)&&Z8(),Ir(e),null;case 19:if(Vn(jn),s=e.memoizedState,s===null)return Ir(e),null;if(i=(e.flags&128)!==0,o=s.rendering,o===null)if(i)Ef(s,!1);else{if($i!==0||t!==null&&t.flags&128)for(t=e.child;t!==null;){if(o=om(t),o!==null){for(e.flags|=128,Ef(s,!1),i=o.updateQueue,i!==null&&(e.updateQueue=i,e.flags|=4),e.subtreeFlags=0,i=n,n=e.child;n!==null;)s=n,t=i,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=t,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=o.childLanes,s.lanes=o.lanes,s.child=o.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=o.memoizedProps,s.memoizedState=o.memoizedState,s.updateQueue=o.updateQueue,s.type=o.type,t=o.dependencies,s.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),n=n.sibling;return Dn(jn,jn.current&1|2),e.child}t=t.sibling}s.tail!==null&&Ti()>$0&&(e.flags|=128,i=!0,Ef(s,!1),e.lanes=4194304)}else{if(!i)if(t=om(o),t!==null){if(e.flags|=128,i=!0,n=t.updateQueue,n!==null&&(e.updateQueue=n,e.flags|=4),Ef(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!Wn)return Ir(e),null}else 2*Ti()-s.renderingStartTime>$0&&n!==1073741824&&(e.flags|=128,i=!0,Ef(s,!1),e.lanes=4194304);s.isBackwards?(o.sibling=e.child,e.child=o):(n=s.last,n!==null?n.sibling=o:e.child=o,s.last=o)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=Ti(),e.sibling=null,n=jn.current,Dn(jn,i?n&1|2:n&1),e):(Ir(e),null);case 22:case 23:return gT(),i=e.memoizedState!==null,t!==null&&t.memoizedState!==null!==i&&(e.flags|=8192),i&&e.mode&1?Qs&1073741824&&(Ir(e),e.subtreeFlags&6&&(e.flags|=8192)):Ir(e),null;case 24:return null;case 25:return null}throw Error(Ce(156,e.tag))}function TJ(t,e){switch(YS(e),e.tag){case 1:return Ss(e.type)&&Z8(),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return H0(),Vn(Es),Vn(Qr),sT(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 5:return rT(e),null;case 13:if(Vn(jn),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(Ce(340));G0()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Vn(jn),null;case 4:return H0(),null;case 10:return eT(e.type._context),null;case 22:case 23:return gT(),null;case 24:return null;default:return null}}var kp=!1,Dr=!1,CJ=typeof WeakSet=="function"?WeakSet:Set,We=null;function n0(t,e){var n=t.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){ui(t,e,i)}else n.current=null}function Z_(t,e,n){try{n()}catch(i){ui(t,e,i)}}var ub=!1;function wJ(t,e){if(N_=X8,t=UF(),jS(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else e:{n=(n=t.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,s=i.focusNode;i=i.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,a=-1,l=-1,u=0,c=0,h=t,f=null;t:for(;;){for(var m;h!==n||r!==0&&h.nodeType!==3||(a=o+r),h!==s||i!==0&&h.nodeType!==3||(l=o+i),h.nodeType===3&&(o+=h.nodeValue.length),(m=h.firstChild)!==null;)f=h,h=m;for(;;){if(h===t)break t;if(f===n&&++u===r&&(a=o),f===s&&++c===i&&(l=o),(m=h.nextSibling)!==null)break;h=f,f=h.parentNode}h=m}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(k_={focusedElem:t,selectionRange:n},X8=!1,We=e;We!==null;)if(e=We,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,We=t;else for(;We!==null;){e=We;try{var g=e.alternate;if(e.flags&1024)switch(e.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var v=g.memoizedProps,_=g.memoizedState,A=e.stateNode,y=A.getSnapshotBeforeUpdate(e.elementType===e.type?v:oa(e.type,v),_);A.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var q=e.stateNode.containerInfo;q.nodeType===1?q.textContent="":q.nodeType===9&&q.documentElement&&q.removeChild(q.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Ce(163))}}catch(E){ui(e,e.return,E)}if(t=e.sibling,t!==null){t.return=e.return,We=t;break}We=e.return}return g=ub,ub=!1,g}function E5(t,e,n){var i=e.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var r=i=i.next;do{if((r.tag&t)===t){var s=r.destroy;r.destroy=void 0,s!==void 0&&Z_(e,n,s)}r=r.next}while(r!==i)}}function P9(t,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var n=e=e.next;do{if((n.tag&t)===t){var i=n.create;n.destroy=i()}n=n.next}while(n!==e)}}function ex(t){var e=t.ref;if(e!==null){var n=t.stateNode;switch(t.tag){case 5:t=n;break;default:t=n}typeof e=="function"?e(t):e.current=t}}function kO(t){var e=t.alternate;e!==null&&(t.alternate=null,kO(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&(delete e[Wa],delete e[ad],delete e[U_],delete e[uJ],delete e[cJ])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function FO(t){return t.tag===5||t.tag===3||t.tag===4}function cb(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||FO(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function tx(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.nodeType===8?n.parentNode.insertBefore(t,e):n.insertBefore(t,e):(n.nodeType===8?(e=n.parentNode,e.insertBefore(t,n)):(e=n,e.appendChild(t)),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=J8));else if(i!==4&&(t=t.child,t!==null))for(tx(t,e,n),t=t.sibling;t!==null;)tx(t,e,n),t=t.sibling}function nx(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(i!==4&&(t=t.child,t!==null))for(nx(t,e,n),t=t.sibling;t!==null;)nx(t,e,n),t=t.sibling}var dr=null,la=!1;function ku(t,e,n){for(n=n.child;n!==null;)OO(t,e,n),n=n.sibling}function OO(t,e,n){if(il&&typeof il.onCommitFiberUnmount=="function")try{il.onCommitFiberUnmount(S9,n)}catch{}switch(n.tag){case 5:Dr||n0(n,e);case 6:var i=dr,r=la;dr=null,ku(t,e,n),dr=i,la=r,dr!==null&&(la?(t=dr,n=n.stateNode,t.nodeType===8?t.parentNode.removeChild(n):t.removeChild(n)):dr.removeChild(n.stateNode));break;case 18:dr!==null&&(la?(t=dr,n=n.stateNode,t.nodeType===8?ty(t.parentNode,n):t.nodeType===1&&ty(t,n),nd(t)):ty(dr,n.stateNode));break;case 4:i=dr,r=la,dr=n.stateNode.containerInfo,la=!0,ku(t,e,n),dr=i,la=r;break;case 0:case 11:case 14:case 15:if(!Dr&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){r=i=i.next;do{var s=r,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Z_(n,e,o),r=r.next}while(r!==i)}ku(t,e,n);break;case 1:if(!Dr&&(n0(n,e),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(a){ui(n,e,a)}ku(t,e,n);break;case 21:ku(t,e,n);break;case 22:n.mode&1?(Dr=(i=Dr)||n.memoizedState!==null,ku(t,e,n),Dr=i):ku(t,e,n);break;default:ku(t,e,n)}}function hb(t){var e=t.updateQueue;if(e!==null){t.updateQueue=null;var n=t.stateNode;n===null&&(n=t.stateNode=new CJ),e.forEach(function(i){var r=NJ.bind(null,t,i);n.has(i)||(n.add(i),i.then(r,r))})}}function na(t,e){var n=e.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i];try{var s=t,o=e,a=o;e:for(;a!==null;){switch(a.tag){case 5:dr=a.stateNode,la=!1;break e;case 3:dr=a.stateNode.containerInfo,la=!0;break e;case 4:dr=a.stateNode.containerInfo,la=!0;break e}a=a.return}if(dr===null)throw Error(Ce(160));OO(s,o,r),dr=null,la=!1;var l=r.alternate;l!==null&&(l.return=null),r.return=null}catch(u){ui(r,e,u)}}if(e.subtreeFlags&12854)for(e=e.child;e!==null;)UO(e,t),e=e.sibling}function UO(t,e){var n=t.alternate,i=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(na(e,t),za(t),i&4){try{E5(3,t,t.return),P9(3,t)}catch(v){ui(t,t.return,v)}try{E5(5,t,t.return)}catch(v){ui(t,t.return,v)}}break;case 1:na(e,t),za(t),i&512&&n!==null&&n0(n,n.return);break;case 5:if(na(e,t),za(t),i&512&&n!==null&&n0(n,n.return),t.flags&32){var r=t.stateNode;try{J5(r,"")}catch(v){ui(t,t.return,v)}}if(i&4&&(r=t.stateNode,r!=null)){var s=t.memoizedProps,o=n!==null?n.memoizedProps:s,a=t.type,l=t.updateQueue;if(t.updateQueue=null,l!==null)try{a==="input"&&s.type==="radio"&&s.name!=null&&aF(r,s),C_(a,o);var u=C_(a,s);for(o=0;o<l.length;o+=2){var c=l[o],h=l[o+1];c==="style"?fF(r,h):c==="dangerouslySetInnerHTML"?cF(r,h):c==="children"?J5(r,h):LS(r,c,h,u)}switch(a){case"input":__(r,s);break;case"textarea":lF(r,s);break;case"select":var f=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!s.multiple;var m=s.value;m!=null?A0(r,!!s.multiple,m,!1):f!==!!s.multiple&&(s.defaultValue!=null?A0(r,!!s.multiple,s.defaultValue,!0):A0(r,!!s.multiple,s.multiple?[]:"",!1))}r[ad]=s}catch(v){ui(t,t.return,v)}}break;case 6:if(na(e,t),za(t),i&4){if(t.stateNode===null)throw Error(Ce(162));r=t.stateNode,s=t.memoizedProps;try{r.nodeValue=s}catch(v){ui(t,t.return,v)}}break;case 3:if(na(e,t),za(t),i&4&&n!==null&&n.memoizedState.isDehydrated)try{nd(e.containerInfo)}catch(v){ui(t,t.return,v)}break;case 4:na(e,t),za(t);break;case 13:na(e,t),za(t),r=t.child,r.flags&8192&&(s=r.memoizedState!==null,r.stateNode.isHidden=s,!s||r.alternate!==null&&r.alternate.memoizedState!==null||(pT=Ti())),i&4&&hb(t);break;case 22:if(c=n!==null&&n.memoizedState!==null,t.mode&1?(Dr=(u=Dr)||c,na(e,t),Dr=u):na(e,t),za(t),i&8192){if(u=t.memoizedState!==null,(t.stateNode.isHidden=u)&&!c&&t.mode&1)for(We=t,c=t.child;c!==null;){for(h=We=c;We!==null;){switch(f=We,m=f.child,f.tag){case 0:case 11:case 14:case 15:E5(4,f,f.return);break;case 1:n0(f,f.return);var g=f.stateNode;if(typeof g.componentWillUnmount=="function"){i=f,n=f.return;try{e=i,g.props=e.memoizedProps,g.state=e.memoizedState,g.componentWillUnmount()}catch(v){ui(i,n,v)}}break;case 5:n0(f,f.return);break;case 22:if(f.memoizedState!==null){db(h);continue}}m!==null?(m.return=f,We=m):db(h)}c=c.sibling}e:for(c=null,h=t;;){if(h.tag===5){if(c===null){c=h;try{r=h.stateNode,u?(s=r.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(a=h.stateNode,l=h.memoizedProps.style,o=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=hF("display",o))}catch(v){ui(t,t.return,v)}}}else if(h.tag===6){if(c===null)try{h.stateNode.nodeValue=u?"":h.memoizedProps}catch(v){ui(t,t.return,v)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===t)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===t)break e;for(;h.sibling===null;){if(h.return===null||h.return===t)break e;c===h&&(c=null),h=h.return}c===h&&(c=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:na(e,t),za(t),i&4&&hb(t);break;case 21:break;default:na(e,t),za(t)}}function za(t){var e=t.flags;if(e&2){try{e:{for(var n=t.return;n!==null;){if(FO(n)){var i=n;break e}n=n.return}throw Error(Ce(160))}switch(i.tag){case 5:var r=i.stateNode;i.flags&32&&(J5(r,""),i.flags&=-33);var s=cb(t);nx(t,s,r);break;case 3:case 4:var o=i.stateNode.containerInfo,a=cb(t);tx(t,a,o);break;default:throw Error(Ce(161))}}catch(l){ui(t,t.return,l)}t.flags&=-3}e&4096&&(t.flags&=-4097)}function IJ(t,e,n){We=t,zO(t)}function zO(t,e,n){for(var i=(t.mode&1)!==0;We!==null;){var r=We,s=r.child;if(r.tag===22&&i){var o=r.memoizedState!==null||kp;if(!o){var a=r.alternate,l=a!==null&&a.memoizedState!==null||Dr;a=kp;var u=Dr;if(kp=o,(Dr=l)&&!u)for(We=r;We!==null;)o=We,l=o.child,o.tag===22&&o.memoizedState!==null?pb(r):l!==null?(l.return=o,We=l):pb(r);for(;s!==null;)We=s,zO(s),s=s.sibling;We=r,kp=a,Dr=u}fb(t)}else r.subtreeFlags&8772&&s!==null?(s.return=r,We=s):fb(t)}}function fb(t){for(;We!==null;){var e=We;if(e.flags&8772){var n=e.alternate;try{if(e.flags&8772)switch(e.tag){case 0:case 11:case 15:Dr||P9(5,e);break;case 1:var i=e.stateNode;
vendor: 9,276 bytes, line 40
40if(e.flags&4&&!Dr)if(n===null)i.componentDidMount();else{var r=e.elementType===e.type?n.memoizedProps:oa(e.type,n.memoizedProps);i.componentDidUpdate(r,n.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var s=e.updateQueue;s!==null&&XR(e,s,i);break;case 3:var o=e.updateQueue;if(o!==null){if(n=null,e.child!==null)switch(e.child.tag){case 5:n=e.child.stateNode;break;case 1:n=e.child.stateNode}XR(e,o,n)}break;case 5:var a=e.stateNode;if(n===null&&e.flags&4){n=a;var l=e.memoizedProps;switch(e.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(e.memoizedState===null){var u=e.alternate;if(u!==null){var c=u.memoizedState;if(c!==null){var h=c.dehydrated;h!==null&&nd(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(Ce(163))}Dr||e.flags&512&&ex(e)}catch(f){ui(e,e.return,f)}}if(e===t){We=null;break}if(n=e.sibling,n!==null){n.return=e.return,We=n;break}We=e.return}}function db(t){for(;We!==null;){var e=We;if(e===t){We=null;break}var n=e.sibling;if(n!==null){n.return=e.return,We=n;break}We=e.return}}function pb(t){for(;We!==null;){var e=We;try{switch(e.tag){case 0:case 11:case 15:var n=e.return;try{P9(4,e)}catch(l){ui(e,n,l)}break;case 1:var i=e.stateNode;if(typeof i.componentDidMount=="function"){var r=e.return;try{i.componentDidMount()}catch(l){ui(e,r,l)}}var s=e.return;try{ex(e)}catch(l){ui(e,s,l)}break;case 5:var o=e.return;try{ex(e)}catch(l){ui(e,o,l)}}}catch(l){ui(e,e.return,l)}if(e===t){We=null;break}var a=e.sibling;if(a!==null){a.return=e.return,We=a;break}We=e.return}}var MJ=Math.ceil,um=_u.ReactCurrentDispatcher,fT=_u.ReactCurrentOwner,ko=_u.ReactCurrentBatchConfig,ln=0,or=null,Ni=null,Ar=0,Qs=0,i0=Xc(0),$i=0,dd=null,_1=0,B9=0,dT=0,S5=null,gs=null,pT=0,$0=1/0,Ql=null,cm=!1,ix=null,vc=null,Fp=!1,sc=null,hm=0,T5=0,rx=null,v8=-1,y8=0;function is(){return ln&6?Ti():v8!==-1?v8:v8=Ti()}function yc(t){return t.mode&1?ln&2&&Ar!==0?Ar&-Ar:fJ.transition!==null?(y8===0&&(y8=SF()),y8):(t=xn,t!==0||(t=window.event,t=t===void 0?16:bF(t.type)),t):1}function fa(t,e,n,i){if(50<T5)throw T5=0,rx=null,Error(Ce(185));C4(t,n,i),(!(ln&2)||t!==or)&&(t===or&&(!(ln&2)&&(B9|=n),$i===4&&ic(t,Ar)),Ts(t,i),n===1&&ln===0&&!(e.mode&1)&&($0=Ti()+500,M9&&Yc()))}function Ts(t,e){var n=t.callbackNode;fK(t,e);var i=j8(t,t===or?Ar:0);if(i===0)n!==null&&ER(n),t.callbackNode=null,t.callbackPriority=0;else if(e=i&-i,t.callbackPriority!==e){if(n!=null&&ER(n),e===1)t.tag===0?hJ(mb.bind(null,t)):YF(mb.bind(null,t)),aJ(function(){!(ln&6)&&Yc()}),n=null;else{switch(TF(i)){case 1:n=US;break;case 4:n=xF;break;case 16:n=$8;break;case 536870912:n=EF;break;default:n=$8}n=XO(n,VO.bind(null,t))}t.callbackPriority=e,t.callbackNode=n}}function VO(t,e){if(v8=-1,y8=0,ln&6)throw Error(Ce(327));var n=t.callbackNode;if(x0()&&t.callbackNode!==n)return null;var i=j8(t,t===or?Ar:0);if(i===0)return null;if(i&30||i&t.expiredLanes||e)e=fm(t,i);else{e=i;var r=ln;ln|=2;var s=QO();(or!==t||Ar!==e)&&(Ql=null,$0=Ti()+500,o1(t,e));do try{PJ();break}catch(a){GO(t,a)}while(1);ZS(),um.current=s,ln=r,Ni!==null?e=0:(or=null,Ar=0,e=$i)}if(e!==0){if(e===2&&(r=b_(t),r!==0&&(i=r,e=sx(t,r))),e===1)throw n=dd,o1(t,0),ic(t,i),Ts(t,Ti()),n;if(e===6)ic(t,i);else{if(r=t.current.alternate,!(i&30)&&!RJ(r)&&(e=fm(t,i),e===2&&(s=b_(t),s!==0&&(i=s,e=sx(t,s))),e===1))throw n=dd,o1(t,0),ic(t,i),Ts(t,Ti()),n;switch(t.finishedWork=r,t.finishedLanes=i,e){case 0:case 1:throw Error(Ce(345));case 2:Bh(t,gs,Ql);break;case 3:if(ic(t,i),(i&130023424)===i&&(e=pT+500-Ti(),10<e)){if(j8(t,0)!==0)break;if(r=t.suspendedLanes,(r&i)!==i){is(),t.pingedLanes|=t.suspendedLanes&r;break}t.timeoutHandle=O_(Bh.bind(null,t,gs,Ql),e);break}Bh(t,gs,Ql);break;case 4:if(ic(t,i),(i&4194240)===i)break;for(e=t.eventTimes,r=-1;0<i;){var o=31-ha(i);s=1<<o,o=e[o],o>r&&(r=o),i&=~s}if(i=r,i=Ti()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*MJ(i/1960))-i,10<i){t.timeoutHandle=O_(Bh.bind(null,t,gs,Ql),i);break}Bh(t,gs,Ql);break;case 5:Bh(t,gs,Ql);break;default:throw Error(Ce(329))}}}return Ts(t,Ti()),t.callbackNode===n?VO.bind(null,t):null}function sx(t,e){var n=S5;return t.current.memoizedState.isDehydrated&&(o1(t,e).flags|=256),t=fm(t,e),t!==2&&(e=gs,gs=n,e!==null&&ox(e)),t}function ox(t){gs===null?gs=t:gs.push.apply(gs,t)}function RJ(t){for(var e=t;;){if(e.flags&16384){var n=e.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var i=0;i<n.length;i++){var r=n[i],s=r.getSnapshot;r=r.value;try{if(!ga(s(),r))return!1}catch{return!1}}}if(n=e.child,e.subtreeFlags&16384&&n!==null)n.return=e,e=n;else{if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function ic(t,e){for(e&=~dT,e&=~B9,t.suspendedLanes|=e,t.pingedLanes&=~e,t=t.expirationTimes;0<e;){var n=31-ha(e),i=1<<n;t[n]=-1,e&=~i}}function mb(t){if(ln&6)throw Error(Ce(327));x0();var e=j8(t,0);if(!(e&1))return Ts(t,Ti()),null;var n=fm(t,e);if(t.tag!==0&&n===2){var i=b_(t);i!==0&&(e=i,n=sx(t,i))}if(n===1)throw n=dd,o1(t,0),ic(t,e),Ts(t,Ti()),n;if(n===6)throw Error(Ce(345));return t.finishedWork=t.current.alternate,t.finishedLanes=e,Bh(t,gs,Ql),Ts(t,Ti()),null}function mT(t,e){var n=ln;ln|=1;try{return t(e)}finally{ln=n,ln===0&&($0=Ti()+500,M9&&Yc())}}function x1(t){sc!==null&&sc.tag===0&&!(ln&6)&&x0();var e=ln;ln|=1;var n=ko.transition,i=xn;try{if(ko.transition=null,xn=1,t)return t()}finally{xn=i,ko.transition=n,ln=e,!(ln&6)&&Yc()}}function gT(){Qs=i0.current,Vn(i0)}function o1(t,e){t.finishedWork=null,t.finishedLanes=0;var n=t.timeoutHandle;if(n!==-1&&(t.timeoutHandle=-1,oJ(n)),Ni!==null)for(n=Ni.return;n!==null;){var i=n;switch(YS(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&Z8();break;case 3:H0(),Vn(Es),Vn(Qr),sT();break;case 5:rT(i);break;case 4:H0();break;case 13:Vn(jn);break;case 19:Vn(jn);break;case 10:eT(i.type._context);break;case 22:case 23:gT()}n=n.return}if(or=t,Ni=t=qc(t.current,null),Ar=Qs=e,$i=0,dd=null,dT=B9=_1=0,gs=S5=null,$h!==null){for(e=0;e<$h.length;e++)if(n=$h[e],i=n.interleaved,i!==null){n.interleaved=null;var r=i.next,s=n.pending;if(s!==null){var o=s.next;s.next=r,i.next=o}n.pending=i}$h=null}return t}function GO(t,e){do{var n=Ni;try{if(ZS(),m8.current=lm,am){for(var i=ti.memoizedState;i!==null;){var r=i.queue;r!==null&&(r.pending=null),i=i.next}am=!1}if(q1=0,rr=Gi=ti=null,x5=!1,cd=0,fT.current=null,n===null||n.return===null){$i=1,dd=e,Ni=null;break}e:{var s=t,o=n.return,a=n,l=e;if(e=Ar,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var u=l,c=a,h=c.tag;if(!(c.mode&1)&&(h===0||h===11||h===15)){var f=c.alternate;f?(c.updateQueue=f.updateQueue,c.memoizedState=f.memoizedState,c.lanes=f.lanes):(c.updateQueue=null,c.memoizedState=null)}var m=nb(o);if(m!==null){m.flags&=-257,ib(m,o,a,s,e),m.mode&1&&tb(s,u,e),e=m,l=u;var g=e.updateQueue;if(g===null){var v=new Set;v.add(l),e.updateQueue=v}else g.add(l);break e}else{if(!(e&1)){tb(s,u,e),AT();break e}l=Error(Ce(426))}}else if(Wn&&a.mode&1){var _=nb(o);if(_!==null){!(_.flags&65536)&&(_.flags|=256),ib(_,o,a,s,e),KS(W0(l,a));break e}}s=l=W0(l,a),$i!==4&&($i=2),S5===null?S5=[s]:S5.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,e&=-e,s.lanes|=e;var A=CO(s,l,e);jR(s,A);break e;case 1:a=l;var y=s.type,q=s.stateNode;if(!(s.flags&128)&&(typeof y.getDerivedStateFromError=="function"||q!==null&&typeof q.componentDidCatch=="function"&&(vc===null||!vc.has(q)))){s.flags|=65536,e&=-e,s.lanes|=e;var E=wO(s,a,e);jR(s,E);break e}}s=s.return}while(s!==null)}WO(n)}catch(T){e=T,Ni===n&&n!==null&&(Ni=n=n.return);continue}break}while(1)}function QO(){var t=um.current;return um.current=lm,t===null?lm:t}function AT(){($i===0||$i===3||$i===2)&&($i=4),or===null||!(_1&268435455)&&!(B9&268435455)||ic(or,Ar)}function fm(t,e){var n=ln;ln|=2;var i=QO();(or!==t||Ar!==e)&&(Ql=null,o1(t,e));do try{bJ();break}catch(r){GO(t,r)}while(1);if(ZS(),ln=n,um.current=i,Ni!==null)throw Error(Ce(261));return or=null,Ar=0,$i}function bJ(){for(;Ni!==null;)HO(Ni)}function PJ(){for(;Ni!==null&&!iK();)HO(Ni)}function HO(t){var e=jO(t.alternate,t,Qs);t.memoizedProps=t.pendingProps,e===null?WO(t):Ni=e,fT.current=null}function WO(t){var e=t;do{var n=e.alternate;if(t=e.return,e.flags&32768){if(n=TJ(n,e),n!==null){n.flags&=32767,Ni=n;return}if(t!==null)t.flags|=32768,t.subtreeFlags=0,t.deletions=null;else{$i=6,Ni=null;return}}else if(n=SJ(n,e,Qs),n!==null){Ni=n;return}if(e=e.sibling,e!==null){Ni=e;return}Ni=e=t}while(e!==null);$i===0&&($i=5)}function Bh(t,e,n){var i=xn,r=ko.transition;try{ko.transition=null,xn=1,BJ(t,e,n,i)}finally{ko.transition=r,xn=i}return null}function BJ(t,e,n,i){do x0();while(sc!==null);if(ln&6)throw Error(Ce(327));n=t.finishedWork;var r=t.finishedLanes;if(n===null)return null;if(t.finishedWork=null,t.finishedLanes=0,n===t.current)throw Error(Ce(177));t.callbackNode=null,t.callbackPriority=0;var s=n.lanes|n.childLanes;if(dK(t,s),t===or&&(Ni=or=null,Ar=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Fp||(Fp=!0,XO($8,function(){return x0(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=ko.transition,ko.transition=null;var o=xn;xn=1;var a=ln;ln|=4,fT.current=null,wJ(t,n),UO(n,t),ZK(k_),X8=!!N_,k_=N_=null,t.current=n,IJ(n),rK(),ln=a,xn=o,
vendor: 5,266 bytes, line 40
40ko.transition=s}else t.current=n;if(Fp&&(Fp=!1,sc=t,hm=r),s=t.pendingLanes,s===0&&(vc=null),aK(n.stateNode),Ts(t,Ti()),e!==null)for(i=t.onRecoverableError,n=0;n<e.length;n++)r=e[n],i(r.value,{componentStack:r.stack,digest:r.digest});if(cm)throw cm=!1,t=ix,ix=null,t;return hm&1&&t.tag!==0&&x0(),s=t.pendingLanes,s&1?t===rx?T5++:(T5=0,rx=t):T5=0,Yc(),null}function x0(){if(sc!==null){var t=TF(hm),e=ko.transition,n=xn;try{if(ko.transition=null,xn=16>t?16:t,sc===null)var i=!1;else{if(t=sc,sc=null,hm=0,ln&6)throw Error(Ce(331));var r=ln;for(ln|=4,We=t.current;We!==null;){var s=We,o=s.child;if(We.flags&16){var a=s.deletions;if(a!==null){for(var l=0;l<a.length;l++){var u=a[l];for(We=u;We!==null;){var c=We;switch(c.tag){case 0:case 11:case 15:E5(8,c,s)}var h=c.child;if(h!==null)h.return=c,We=h;else for(;We!==null;){c=We;var f=c.sibling,m=c.return;if(kO(c),c===u){We=null;break}if(f!==null){f.return=m,We=f;break}We=m}}}var g=s.alternate;if(g!==null){var v=g.child;if(v!==null){g.child=null;do{var _=v.sibling;v.sibling=null,v=_}while(v!==null)}}We=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,We=o;else e:for(;We!==null;){if(s=We,s.flags&2048)switch(s.tag){case 0:case 11:case 15:E5(9,s,s.return)}var A=s.sibling;if(A!==null){A.return=s.return,We=A;break e}We=s.return}}var y=t.current;for(We=y;We!==null;){o=We;var q=o.child;if(o.subtreeFlags&2064&&q!==null)q.return=o,We=q;else e:for(o=y;We!==null;){if(a=We,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:P9(9,a)}}catch(T){ui(a,a.return,T)}if(a===o){We=null;break e}var E=a.sibling;if(E!==null){E.return=a.return,We=E;break e}We=a.return}}if(ln=r,Yc(),il&&typeof il.onPostCommitFiberRoot=="function")try{il.onPostCommitFiberRoot(S9,t)}catch{}i=!0}return i}finally{xn=n,ko.transition=e}}return!1}function gb(t,e,n){e=W0(n,e),e=CO(t,e,1),t=Ac(t,e,1),e=is(),t!==null&&(C4(t,1,e),Ts(t,e))}function ui(t,e,n){if(t.tag===3)gb(t,t,n);else for(;e!==null;){if(e.tag===3){gb(e,t,n);break}else if(e.tag===1){var i=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(vc===null||!vc.has(i))){t=W0(n,t),t=wO(e,t,1),e=Ac(e,t,1),t=is(),e!==null&&(C4(e,1,t),Ts(e,t));break}}e=e.return}}function DJ(t,e,n){var i=t.pingCache;i!==null&&i.delete(e),e=is(),t.pingedLanes|=t.suspendedLanes&n,or===t&&(Ar&n)===n&&($i===4||$i===3&&(Ar&130023424)===Ar&&500>Ti()-pT?o1(t,0):dT|=n),Ts(t,e)}function $O(t,e){e===0&&(t.mode&1?(e=Ip,Ip<<=1,!(Ip&130023424)&&(Ip=4194304)):e=1);var n=is();t=lu(t,e),t!==null&&(C4(t,e,n),Ts(t,n))}function LJ(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),$O(t,n)}function NJ(t,e){var n=0;switch(t.tag){case 13:var i=t.stateNode,r=t.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=t.stateNode;break;default:throw Error(Ce(314))}i!==null&&i.delete(e),$O(t,n)}var jO;jO=function(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps||Es.current)xs=!0;else{if(!(t.lanes&n)&&!(e.flags&128))return xs=!1,EJ(t,e,n);xs=!!(t.flags&131072)}else xs=!1,Wn&&e.flags&1048576&&KF(e,nm,e.index);switch(e.lanes=0,e.tag){case 2:var i=e.type;A8(t,e),t=e.pendingProps;var r=V0(e,Qr.current);_0(e,n),r=aT(null,e,i,t,r,n);var s=lT();return e.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,Ss(i)?(s=!0,em(e)):s=!1,e.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,nT(e),r.updater=R9,e.stateNode=r,r._reactInternals=e,W_(e,i,t,n),e=X_(null,e,i,!0,s,n)):(e.tag=0,Wn&&s&&XS(e),es(null,e,r,n),e=e.child),e;case 16:i=e.elementType;e:{switch(A8(t,e),t=e.pendingProps,r=i._init,i=r(i._payload),e.type=i,r=e.tag=FJ(i),t=oa(i,t),r){case 0:e=j_(null,e,i,t,n);break e;case 1:e=ob(null,e,i,t,n);break e;case 11:e=rb(null,e,i,t,n);break e;case 14:e=sb(null,e,i,oa(i.type,t),n);break e}throw Error(Ce(306,i,""))}return e;case 0:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:oa(i,r),j_(t,e,i,r,n);case 1:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:oa(i,r),ob(t,e,i,r,n);case 3:e:{if(bO(e),t===null)throw Error(Ce(387));i=e.pendingProps,s=e.memoizedState,r=s.element,tO(t,e),sm(e,i,null,n);var o=e.memoizedState;if(i=o.element,s.isDehydrated)if(s={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=s,e.memoizedState=s,e.flags&256){r=W0(Error(Ce(423)),e),e=ab(t,e,i,n,r);break e}else if(i!==r){r=W0(Error(Ce(424)),e),e=ab(t,e,i,n,r);break e}else for(Xs=gc(e.stateNode.containerInfo.firstChild),Js=e,Wn=!0,ua=null,n=sO(e,null,i,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(G0(),i===r){e=uu(t,e,n);break e}es(t,e,i,n)}e=e.child}return e;case 5:return oO(e),t===null&&G_(e),i=e.type,r=e.pendingProps,s=t!==null?t.memoizedProps:null,o=r.children,F_(i,r)?o=null:s!==null&&F_(i,s)&&(e.flags|=32),RO(t,e),es(t,e,o,n),e.child;case 6:return t===null&&G_(e),null;case 13:return PO(t,e,n);case 4:return iT(e,e.stateNode.containerInfo),i=e.pendingProps,t===null?e.child=Q0(e,null,i,n):es(t,e,i,n),e.child;case 11:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:oa(i,r),rb(t,e,i,r,n);case 7:return es(t,e,e.pendingProps,n),e.child;case 8:return es(t,e,e.pendingProps.children,n),e.child;case 12:return es(t,e,e.pendingProps.children,n),e.child;
vendor: 7,867 bytes, line 40
40case 10:e:{if(i=e.type._context,r=e.pendingProps,s=e.memoizedProps,o=r.value,Dn(im,i._currentValue),i._currentValue=o,s!==null)if(ga(s.value,o)){if(s.children===r.children&&!Es.current){e=uu(t,e,n);break e}}else for(s=e.child,s!==null&&(s.return=e);s!==null;){var a=s.dependencies;if(a!==null){o=s.child;for(var l=a.firstContext;l!==null;){if(l.context===i){if(s.tag===1){l=tu(-1,n&-n),l.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),Q_(s.return,n,e),a.lanes|=n;break}l=l.next}}else if(s.tag===10)o=s.type===e.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(Ce(341));o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),Q_(o,n,e),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===e){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}es(t,e,r.children,n),e=e.child}return e;case 9:return r=e.type,i=e.pendingProps.children,_0(e,n),r=zo(r),i=i(r),e.flags|=1,es(t,e,i,n),e.child;case 14:return i=e.type,r=oa(i,e.pendingProps),r=oa(i.type,r),sb(t,e,i,r,n);case 15:return IO(t,e,e.type,e.pendingProps,n);case 17:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:oa(i,r),A8(t,e),e.tag=1,Ss(i)?(t=!0,em(e)):t=!1,_0(e,n),iO(e,i,r),W_(e,i,r,n),X_(null,e,i,!0,t,n);case 19:return BO(t,e,n);case 22:return MO(t,e,n)}throw Error(Ce(156,e.tag))};function XO(t,e){return _F(t,e)}function kJ(t,e,n,i){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Po(t,e,n,i){return new kJ(t,e,n,i)}function vT(t){return t=t.prototype,!(!t||!t.isReactComponent)}function FJ(t){if(typeof t=="function")return vT(t)?1:0;if(t!=null){if(t=t.$$typeof,t===kS)return 11;if(t===FS)return 14}return 2}function qc(t,e){var n=t.alternate;return n===null?(n=Po(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&14680064,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function q8(t,e,n,i,r,s){var o=2;if(i=t,typeof t=="function")vT(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case $3:return a1(n.children,r,s,e);case NS:o=8,r|=8;break;case g_:return t=Po(12,n,e,r|2),t.elementType=g_,t.lanes=s,t;case A_:return t=Po(13,n,e,r),t.elementType=A_,t.lanes=s,t;case v_:return t=Po(19,n,e,r),t.elementType=v_,t.lanes=s,t;case rF:return D9(n,r,s,e);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case nF:o=10;break e;case iF:o=9;break e;case kS:o=11;break e;case FS:o=14;break e;case Zu:o=16,i=null;break e}throw Error(Ce(130,t==null?t:typeof t,""))}return e=Po(o,n,e,r),e.elementType=t,e.type=i,e.lanes=s,e}function a1(t,e,n,i){return t=Po(7,t,i,e),t.lanes=n,t}function D9(t,e,n,i){return t=Po(22,t,i,e),t.elementType=rF,t.lanes=n,t.stateNode={isHidden:!1},t}function uy(t,e,n){return t=Po(6,t,null,e),t.lanes=n,t}function cy(t,e,n){return e=Po(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function OJ(t,e,n,i,r){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Qv(0),this.expirationTimes=Qv(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Qv(0),this.identifierPrefix=i,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function yT(t,e,n,i,r,s,o,a,l){return t=new OJ(t,e,n,a,l),e===1?(e=1,s===!0&&(e|=8)):e=0,s=Po(3,null,null,e),t.current=s,s.stateNode=t,s.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},nT(s),t}function UJ(t,e,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W3,key:i==null?null:""+i,children:t,containerInfo:e,implementation:n}}function YO(t){if(!t)return Bc;t=t._reactInternals;e:{if(k1(t)!==t||t.tag!==1)throw Error(Ce(170));var e=t;do{switch(e.tag){case 3:e=e.stateNode.context;break e;case 1:if(Ss(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break e}}e=e.return}while(e!==null);throw Error(Ce(171))}if(t.tag===1){var n=t.type;if(Ss(n))return XF(t,n,e)}return e}function KO(t,e,n,i,r,s,o,a,l){return t=yT(n,i,!0,t,r,s,o,a,l),t.context=YO(null),n=t.current,i=is(),r=yc(n),s=tu(i,r),s.callback=e??null,Ac(n,s,r),t.current.lanes=r,C4(t,r,i),Ts(t,i),t}function L9(t,e,n,i){var r=e.current,s=is(),o=yc(r);return n=YO(n),e.context===null?e.context=n:e.pendingContext=n,e=tu(s,o),e.payload={element:t},i=i===void 0?null:i,i!==null&&(e.callback=i),t=Ac(r,e,o),t!==null&&(fa(t,r,o,s),p8(t,r,o)),o}function dm(t){if(t=t.current,!t.child)return null;switch(t.child.tag){case 5:return t.child.stateNode;default:return t.child.stateNode}}function Ab(t,e){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var n=t.retryLane;t.retryLane=n!==0&&n<e?n:e}}function qT(t,e){Ab(t,e),(t=t.alternate)&&Ab(t,e)}function zJ(){return null}var JO=typeof reportError=="function"?reportError:function(t){console.error(t)};function _T(t){this._internalRoot=t}N9.prototype.render=_T.prototype.render=function(t){var e=this._internalRoot;if(e===null)throw Error(Ce(409));L9(t,e,null,null)};N9.prototype.unmount=_T.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var e=t.containerInfo;x1(function(){L9(null,t,null,null)}),e[au]=null}};function N9(t){this._internalRoot=t}N9.prototype.unstable_scheduleHydration=function(t){if(t){var e=IF();t={blockedOn:null,target:t,priority:e};for(var n=0;n<nc.length&&e!==0&&e<nc[n].priority;n++);nc.splice(n,0,t),n===0&&RF(t)}};function xT(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function k9(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11&&(t.nodeType!==8||t.nodeValue!==" react-mount-point-unstable "))}function vb(){}function VJ(t,e,n,i,r){if(r){if(typeof i=="function"){var s=i;i=function(){var u=dm(o);s.call(u)}}var o=KO(e,i,t,0,null,!1,!1,"",vb);return t._reactRootContainer=o,t[au]=o.current,sd(t.nodeType===8?t.parentNode:t),x1(),o}for(;r=t.lastChild;)t.removeChild(r);if(typeof i=="function"){var a=i;i=function(){var u=dm(l);a.call(u)}}var l=yT(t,0,!1,null,null,!1,!1,"",vb);return t._reactRootContainer=l,t[au]=l.current,sd(t.nodeType===8?t.parentNode:t),x1(function(){L9(e,l,n,i)}),l}function F9(t,e,n,i,r){var s=n._reactRootContainer;if(s){var o=s;if(typeof r=="function"){var a=r;r=function(){var l=dm(o);a.call(l)}}L9(e,o,t,r)}else o=VJ(n,e,t,r,i);return dm(o)}CF=function(t){switch(t.tag){case 3:var e=t.stateNode;if(e.current.memoizedState.isDehydrated){var n=e5(e.pendingLanes);n!==0&&(zS(e,n|1),Ts(e,Ti()),!(ln&6)&&($0=Ti()+500,Yc()))}break;case 13:x1(function(){var i=lu(t,1);if(i!==null){var r=is();fa(i,t,1,r)}}),qT(t,1)}};VS=function(t){if(t.tag===13){var e=lu(t,134217728);if(e!==null){var n=is();fa(e,t,134217728,n)}qT(t,134217728)}};wF=function(t){if(t.tag===13){var e=yc(t),n=lu(t,e);if(n!==null){var i=is();fa(n,t,e,i)}qT(t,e)}};IF=function(){return xn};MF=function(t,e){var n=xn;try{return xn=t,e()}finally{xn=n}};
40I_=function(t,e,n){switch(e){case"input":if(__(t,n),e=n.name,n.type==="radio"&&e!=null){for(n=t;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+e)+'][type="radio"]'),e=0;e<n.length;e++){var i=n[e];if(i!==t&&i.form===t.form){var r=I9(i);if(!r)throw Error(Ce(90));oF(i),__(i,r)}}}break;case"textarea":lF(t,n);break;case"select":e=n.value,e!=null&&A0(t,!!n.multiple,e,!1)}};mF=mT;gF=x1;var GJ={usingClientEntryPoint:!1,Events:[I4,K3,I9,dF,pF,mT]},Sf={findFiberByHostInstance:Wh,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},QJ={bundleType:Sf.bundleType,version:Sf.version,rendererPackageName:Sf.rendererPackageName,rendererConfig:Sf.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:_u.ReactCurrentDispatcher,findHostInstanceByFiber:function(t){return t=yF(t),t===null?null:t.stateNode},findFiberByHostInstance:Sf.findFiberByHostInstance||zJ,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Op=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Op.isDisabled&&Op.supportsFiber)try{S9=Op.inject(QJ),il=Op}catch{}}uo.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=GJ;uo.createPortal=function(t,e){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!xT(e))throw Error(Ce(200));return UJ(t,e,null,n)};uo.createRoot=function(t,e){if(!xT(t))throw Error(Ce(299));var n=!1,i="",r=JO;return e!=null&&(e.unstable_strictMode===!0&&(n=!0),e.identifierPrefix!==void 0&&(i=e.identifierPrefix),e.onRecoverableError!==void 0&&(r=e.onRecoverableError)),e=yT(t,1,!1,null,null,n,!1,i,r),t[au]=e.current,sd(t.nodeType===8?t.parentNode:t),new _T(e)};uo.findDOMNode=function(t){if(t==null)return null;if(t.nodeType===1)return t;var e=t._reactInternals;if(e===void 0)throw typeof t.render=="function"?Error(Ce(188)):(t=Object.keys(t).join(","),Error(Ce(268,t)));return t=yF(e),t=t===null?null:t.stateNode,t};uo.flushSync=function(t){return x1(t)};uo.hydrate=function(t,e,n){if(!k9(e))throw Error(Ce(200));return F9(null,t,e,!0,n)};uo.hydrateRoot=function(t,e,n){if(!xT(t))throw Error(Ce(405));var i=n!=null&&n.hydratedSources||null,r=!1,s="",o=JO;if(n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),e=KO(e,null,t,1,n??null,r,!1,s,o),t[au]=e.current,sd(t),i)for(t=0;t<i.length;t++)n=i[t],r=n._getVersion,r=r(n._source),e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[n,r]:e.mutableSourceEagerHydrationData.push(n,r);return new N9(e)};uo.render=function(t,e,n){if(!k9(e))throw Error(Ce(200));return F9(null,t,e,!1,n)};uo.unmountComponentAtNode=function(t){if(!k9(t))throw Error(Ce(40));return t._reactRootContainer?(x1(function(){F9(null,null,t,!1,function(){t._reactRootContainer=null,t[au]=null})}),!0):!1};uo.unstable_batchedUpdates=mT;uo.unstable_renderSubtreeIntoContainer=function(t,e,n,i){if(!k9(n))throw Error(Ce(200));if(t==null||t._reactInternals===void 0)throw Error(Ce(38));return F9(t,e,n,!1,i)};uo.version="18.2.0-next-9e3b772b8-20220608";function ZO(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(ZO)}catch(t){console.error(t)}}ZO(),Kk.exports=uo;var HJ=Kk.exports,yb=HJ;p_.createRoot=yb.createRoot,p_.hydrateRoot=yb.hydrateRoot;/** 41 * @remix-run/router v1.7.2 42 * 43 * Copyright (c) Remix Software Inc. 44 * 45 * This source code is licensed under the MIT license found in the 46 * LICENSE.md file in the root directory of this source tree. 47 * 48 * @license MIT 49 */function pd(){return pd=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},pd.apply(this,arguments)}var oc;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(oc||(oc={}));const qb="popstate";function WJ(t){t===void 0&&(t={});function e(i,r){let{pathname:s,search:o,hash:a}=i.location;return ax("",{pathname:s,search:o,hash:a},r.state&&r.state.usr||null,r.state&&r.state.key||"default")}function n(i,r){return typeof r=="string"?r:pm(r)}return jJ(e,n,null,t)}function Oi(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function ET(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function $J(){return Math.random().toString(36).substr(2,8)}function _b(t,e){return{usr:t.state,key:t.key,idx:e}}function ax(t,e,n,i){return n===void 0&&(n=null),pd({pathname:typeof t=="string"?t:t.pathname,search:"",hash:""},typeof e=="string"?C2(e):e,{state:n,key:e&&e.key||i||$J()})}function pm(t){let{pathname:e="/",search:n="",hash:i=""}=t;return n&&n!=="?"&&(e+=n.charAt(0)==="?"?n:"?"+n),i&&i!=="#"&&(e+=i.charAt(0)==="#"?i:"#"+i),e}function C2(t){let e={};if(t){let n=t.indexOf("#");n>=0&&(e.hash=t.substr(n),t=t.substr(0,n));let i=t.indexOf("?");i>=0&&(e.search=t.substr(i),t=t.substr(0,i)),t&&(e.pathname=t)}return e}function jJ(t,e,n,i){i===void 0&&(i={});let{window:r=document.defaultView,v5Compat:s=!1}=i,o=r.history,a=oc.Pop,l=null,u=c();u==null&&(u=0,o.replaceState(pd({},o.state,{idx:u}),""));function c(){return(o.state||{idx:null}).idx}function h(){a=oc.Pop;let _=c(),A=_==null?null:_-u;u=_,l&&l({action:a,location:v.location,delta:A})}function f(_,A){a=oc.Push;let y=ax(v.location,_,A);n&&n(y,_),u=c()+1;let q=_b(y,u),E=v.createHref(y);try{o.pushState(q,"",E)}catch(T){if(T instanceof DOMException&&T.name==="DataCloneError")throw T;r.location.assign(E)}s&&l&&l({action:a,location:v.location,delta:1})}function m(_,A){a=oc.Replace;let y=ax(v.location,_,A);n&&n(y,_),u=c();let q=_b(y,u),E=v.createHref(y);o.replaceState(q,"",E),s&&l&&l({action:a,location:v.location,delta:0})}function g(_){let A=r.location.origin!=="null"?r.location.origin:r.location.href,y=typeof _=="string"?_:pm(_);return Oi(A,"No window.location.(origin|href) available to create URL for href: "+y),new URL(y,A)}let v={get action(){return a},get location(){return t(r,o)},listen(_){if(l)throw new Error("A history only accepts one active listener");return r.addEventListener(qb,h),l=_,()=>{r.removeEventListener(qb,h),l=null}},createHref(_){return e(r,_)},createURL:g,encodeLocation(_){let A=g(_);return{pathname:A.pathname,search:A.search,hash:A.hash}},push:f,replace:m,go(_){return o.go(_)}};return v}var xb;(function(t){t.data="data",t.deferred="deferred",t.redirect="redirect",t.error="error"})(xb||(xb={}));function XJ(t,e,n){n===void 0&&(n="/");let i=typeof e=="string"?C2(e):e,r=ST(i.pathname||"/",n);if(r==null)return null;let s=eU(t);YJ(s);let o=null;for(let a=0;o==null&&a<s.length;++a)o=sZ(s[a],lZ(r));return o}function eU(t,e,n,i){e===void 0&&(e=[]),n===void 0&&(n=[]),i===void 0&&(i="");let r=(s,o,a)=>{let l={relativePath:a===void 0?s.path||"":a,caseSensitive:s.caseSensitive===!0,childrenIndex:o,route:s};l.relativePath.startsWith("/")&&(Oi(l.relativePath.startsWith(i),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+i+'" is not val
49id. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(i.length));let u=_c([i,l.relativePath]),c=n.concat(l);s.children&&s.children.length>0&&(Oi(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),eU(s.children,e,c,u)),!(s.path==null&&!s.index)&&e.push({path:u,score:iZ(u,s.index),routesMeta:c})};return t.forEach((s,o)=>{var a;if(s.path===""||!((a=s.path)!=null&&a.includes("?")))r(s,o);else for(let l of tU(s.path))r(s,o,l)}),e}function tU(t){let e=t.split("/");if(e.length===0)return[];let[n,...i]=e,r=n.endsWith("?"),s=n.replace(/\?$/,"");if(i.length===0)return r?[s,""]:[s];let o=tU(i.join("/")),a=[];return a.push(...o.map(l=>l===""?s:[s,l].join("/"))),r&&a.push(...o),a.map(l=>t.startsWith("/")&&l===""?"/":l)}function YJ(t){t.sort((e,n)=>e.score!==n.score?n.score-e.score:rZ(e.routesMeta.map(i=>i.childrenIndex),n.routesMeta.map(i=>i.childrenIndex)))}const KJ=/^:\w+$/,JJ=3,ZJ=2,eZ=1,tZ=10,nZ=-2,Eb=t=>t==="*";function iZ(t,e){let n=t.split("/"),i=n.length;return n.some(Eb)&&(i+=nZ),e&&(i+=ZJ),n.filter(r=>!Eb(r)).reduce((r,s)=>r+(KJ.test(s)?JJ:s===""?eZ:tZ),i)}function rZ(t,e){return t.length===e.length&&t.slice(0,-1).every((i,r)=>i===e[r])?t[t.length-1]-e[e.length-1]:0}function sZ(t,e){let{routesMeta:n}=t,i={},r="/",s=[];for(let o=0;o<n.length;++o){let a=n[o],l=o===n.length-1,u=r==="/"?e:e.slice(r.length)||"/",c=oZ({path:a.relativePath,caseSensitive:a.caseSensitive,end:l},u);if(!c)return null;
vendor: 4,103 bytes, lines 49-58
49Object.assign(i,c.params);let h=a.route;s.push({params:i,pathname:_c([r,c.pathname]),pathnameBase:fZ(_c([r,c.pathnameBase])),route:h}),c.pathnameBase!=="/"&&(r=_c([r,c.pathnameBase]))}return s}function oZ(t,e){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[n,i]=aZ(t.path,t.caseSensitive,t.end),r=e.match(n);if(!r)return null;let s=r[0],o=s.replace(/(.)\/+$/,"$1"),a=r.slice(1);return{params:i.reduce((u,c,h)=>{if(c==="*"){let f=a[h]||"";o=s.slice(0,s.length-f.length).replace(/(.)\/+$/,"$1")}return u[c]=uZ(a[h]||"",c),u},{}),pathname:s,pathnameBase:o,pattern:t}}function aZ(t,e,n){e===void 0&&(e=!1),n===void 0&&(n=!0),ET(t==="*"||!t.endsWith("*")||t.endsWith("/*"),'Route path "'+t+'" will be treated as if it were '+('"'+t.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+t.replace(/\*$/,"/*")+'".'));let i=[],r="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^$?{}|()[\]]/g,"\\$&").replace(/\/:(\w+)/g,(o,a)=>(i.push(a),"/([^\\/]+)"));return t.endsWith("*")?(i.push("*"),r+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?r+="\\/*$":t!==""&&t!=="/"&&(r+="(?:(?=\\/|$))"),[new RegExp(r,e?void 0:"i"),i]}function lZ(t){try{return decodeURI(t)}catch(e){return ET(!1,'The URL path "'+t+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+e+").")),t}}function uZ(t,e){try{return decodeURIComponent(t)}catch(n){return ET(!1,'The value for the URL param "'+e+'" will not be decoded because'+(' the string "'+t+'" is a malformed URL segment. This is probably')+(" due to a bad percent encoding ("+n+").")),t}}function ST(t,e){if(e==="/")return t;if(!t.toLowerCase().startsWith(e.toLowerCase()))return null;let n=e.endsWith("/")?e.length-1:e.length,i=t.charAt(n);return i&&i!=="/"?null:t.slice(n)||"/"}function cZ(t,e){e===void 0&&(e="/");let{pathname:n,search:i="",hash:r=""}=typeof t=="string"?C2(t):t;return{pathname:n?n.startsWith("/")?n:hZ(n,e):e,search:dZ(i),hash:pZ(r)}}function hZ(t,e){let n=e.replace(/\/+$/,"").split("/");return t.split("/").forEach(r=>{r===".."?n.length>1&&n.pop():r!=="."&&n.push(r)}),n.length>1?n.join("/"):"/"}function hy(t,e,n,i){return"Cannot include a '"+t+"' character in a manually specified "+("`to."+e+"` field ["+JSON.stringify(i)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function nU(t){return t.filter((e,n)=>n===0||e.route.path&&e.route.path.length>0)}function iU(t,e,n,i){i===void 0&&(i=!1);let r;typeof t=="string"?r=C2(t):(r=pd({},t),Oi(!r.pathname||!r.pathname.includes("?"),hy("?","pathname","search",r)),Oi(!r.pathname||!r.pathname.includes("#"),hy("#","pathname","hash",r)),Oi(!r.search||!r.search.includes("#"),hy("#","search","hash",r)));let s=t===""||r.pathname==="",o=s?"/":r.pathname,a;if(i||o==null)a=n;else{let h=e.length-1;if(o.startsWith("..")){let f=o.split("/");for(;f[0]==="..";)f.shift(),h-=1;r.pathname=f.join("/")}a=h>=0?e[h]:"/"}let l=cZ(r,a),u=o&&o!=="/"&&o.endsWith("/"),c=(s||o===".")&&n.endsWith("/");return!l.pathname.endsWith("/")&&(u||c)&&(l.pathname+="/"),l}const _c=t=>t.join("/").replace(/\/\/+/g,"/"),fZ=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),dZ=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,pZ=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;function mZ(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}const rU=["post","put","patch","delete"];new Set(rU);const gZ=["get",...rU];new Set(gZ);/** 50 * React Router v6.14.2 51 * 52 * Copyright (c) Remix Software Inc. 53 * 54 * This source code is licensed under the MIT license found in the 55 * LICENSE.md file in the root directory of this source tree. 56 * 57 * @license MIT 58 */function mm(){return mm=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t}
58,mm.apply(this,arguments)}const TT=G.createContext(null),sU=G.createContext(null),F1=G.createContext(null),O9=G.createContext(null),Kc=G.createContext({outlet:null,matches:[],isDataRoute:!1}),oU=G.createContext(null);function AZ(t,e){let{relative:n}=e===void 0?{}:e;R4()||Oi(!1);let{basename:i,navigator:r}=G.useContext(F1),{hash:s,pathname:o,search:a}=CT(t,{relative:n}),l=o;return i!=="/"&&(l=o==="/"?i:_c([i,o])),r.createHref({pathname:l,search:a,hash:s})}function R4(){return G.useContext(O9)!=null}function O1(){return R4()||Oi(!1),G.useContext(O9).location}function aU(t){G.useContext(F1).static||G.useLayoutEffect(t)}function b4(){let{isDataRoute:t}=G.useContext(Kc);return t?bZ():vZ()}function vZ(){R4()||Oi(!1);let t=G.useContext(TT),{basename:e,navigator:n}=G.useContext(F1),{matches:i}=G.useContext(Kc),{pathname:r}=O1(),s=JSON.stringify(nU(i).map(l=>l.pathnameBase)),o=G.useRef(!1);return aU(()=>{o.current=!0}),G.useCallback(function(l,u){if(u===void 0&&(u={}),!o.current)return;if(typeof l=="number"){n.go(l);return}let c=iU(l,JSON.parse(s),r,u.relative==="path");t==null&&e!=="/"&&(c.pathname=c.pathname==="/"?e:_c([e,c.pathname])),(u.replace?n.replace:n.push)(c,u.state,u)},[e,n,s,r,t])}function yZ(){let{matches:t}=G.useContext(Kc),e=t[t.length-1];return e?e.params:{}}function CT(t,e){let{relative:n}=e===void 0?{}:e,{matches:i}=G.useContext(Kc),{pathname:r}=O1(),s=JSON.stringify(nU(i).map(o=>o.pathnameBase));return G.useMemo(()=>iU(t,JSON.parse(s),r,n==="path"),[t,s,r,n])}function qZ(t,e){return _Z(t,e)}function _Z(t,e,n){R4()||Oi(!1);let{navigator:i}=G.useContext(F1),{matches:r}=G.useContext(Kc),s=r[r.length-1],o=s?s.params:{};s&&s.pathname;let a=s?s.pathnameBase:"/";s&&s.route;let l=O1(),u;if(e){var c;let v=typeof e=="string"?C2(e):e;a==="/"||(c=v.pathname)!=null&&c.startsWith(a)||Oi(!1),u=v}else u=l;let h=u.pathname||"/",f=a==="/"?h:h.slice(a.length)||"/",m=XJ(t,{pathname:f}),g=CZ(m&&m.map(v=>Object.assign({},v,{params:Object.assign({},o,v.params),pathname:_c([a,i.encodeLocation?i.encodeLocation(v.pathname).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?a:_c([a,i.encodeLocation?i.encodeLocation(v.pathnameBase).pathname:v.pathnameBase])})),r,n);return e&&g?G.createElement(O9.Provider,{value:{location:mm({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:oc.Pop}},g):g}function xZ(){let t=RZ(),e=mZ(t)?t.status+" "+t.statusText:t instanceof Error?t.message:JSON.stringify(t),n=t instanceof Error?t.stack:null,r={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"},s=null;return G.createElement(G.Fragment,null,G.createElement("h2",null,"Unexpected Application Error!"),G.createElement("h3",{style:{fontStyle:"italic"}},e),n?G.createElement("pre",{style:r},n):null,s)}const EZ=G.createElement(xZ,null);class SZ extends G.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,n){return n.location!==e.location||n.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error||n.error,location:n.location,revalidation:e.revalidation||n.revalidation}}componentDidCatch(e,n){console.error("React Router caught the following error during render",e,n)}render(){return this.state.error?G.createElement(Kc.Provider,{value:this.props.routeContext},G.createElement(oU.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function TZ(t){let{routeContext:e,match:n,children:i}=t,r=G.useContext(TT);return r&&r.static&&r.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=n.route.id),G.createElement(Kc.Provider,{value:e},i)}function CZ(t,e,n){var i;if(e===void 0&&(e=[]),n===void 0&&(n=null),t==null){var r;if((r=n)!=null&&r.errors)t=n.matches;else return null}let s=t,o=(i=n)==null?void 0:i.errors;if(o!=null){let a=s.findIndex(l=>l.route.id&&(o==null?void 0:o[l.route.id]));a>=0||Oi(!1),s=s.slice(0,Math.min(s.length,a+1))}return s.reduceRight((a,l,u)=>{let c=l.route.id?o==null?void 0:o[l.route.id]:null,h=null;n&&(h=l.route.errorElement||EZ);let f=e.concat(s.slice(0,u+1)),m=()=>{let g;return c?g=h:l.route.Component?g=G.createElement(l.route.Component,null):l.route.element?g=l.route.element:g=a,G.createElement(TZ,{match:l,routeContext:{outlet:
vendor: 4,145 bytes, lines 58-62
58a,matches:f,isDataRoute:n!=null},children:g})};return n&&(l.route.ErrorBoundary||l.route.errorElement||u===0)?G.createElement(SZ,{location:n.location,revalidation:n.revalidation,component:h,error:c,children:m(),routeContext:{outlet:null,matches:f,isDataRoute:!0}}):m()},null)}var lx;(function(t){t.UseBlocker="useBlocker",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate"})(lx||(lx={}));var md;(function(t){t.UseBlocker="useBlocker",t.UseLoaderData="useLoaderData",t.UseActionData="useActionData",t.UseRouteError="useRouteError",t.UseNavigation="useNavigation",t.UseRouteLoaderData="useRouteLoaderData",t.UseMatches="useMatches",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t.UseRouteId="useRouteId"})(md||(md={}));function wZ(t){let e=G.useContext(TT);return e||Oi(!1),e}function IZ(t){let e=G.useContext(sU);return e||Oi(!1),e}function MZ(t){let e=G.useContext(Kc);return e||Oi(!1),e}function lU(t){let e=MZ(),n=e.matches[e.matches.length-1];return n.route.id||Oi(!1),n.route.id}function RZ(){var t;let e=G.useContext(oU),n=IZ(md.UseRouteError),i=lU(md.UseRouteError);return e||((t=n.errors)==null?void 0:t[i])}function bZ(){let{router:t}=wZ(lx.UseNavigateStable),e=lU(md.UseNavigateStable),n=G.useRef(!1);return aU(()=>{n.current=!0}),G.useCallback(function(r,s){s===void 0&&(s={}),n.current&&(typeof r=="number"?t.navigate(r):t.navigate(r,mm({fromRouteId:e},s)))},[t,e])}function Yu(t){Oi(!1)}function PZ(t){let{basename:e="/",children:n=null,location:i,navigationType:r=oc.Pop,navigator:s,static:o=!1}=t;R4()&&Oi(!1);let a=e.replace(/^\/*/,"/"),l=G.useMemo(()=>({basename:a,navigator:s,static:o}),[a,s,o]);typeof i=="string"&&(i=C2(i));let{pathname:u="/",search:c="",hash:h="",state:f=null,key:m="default"}=i,g=G.useMemo(()=>{let v=ST(u,a);return v==null?null:{location:{pathname:v,search:c,hash:h,state:f,key:m},navigationType:r}},[a,u,c,h,f,m,r]);return g==null?null:G.createElement(F1.Provider,{value:l},G.createElement(O9.Provider,{children:n,value:g}))}function BZ(t){let{children:e,location:n}=t;return qZ(ux(e),n)}var Sb;(function(t){t[t.pending=0]="pending",t[t.success=1]="success",t[t.error=2]="error"})(Sb||(Sb={}));new Promise(()=>{});function ux(t,e){e===void 0&&(e=[]);let n=[];return G.Children.forEach(t,(i,r)=>{if(!G.isValidElement(i))return;let s=[...e,r];if(i.type===G.Fragment){n.push.apply(n,ux(i.props.children,s));return}i.type!==Yu&&Oi(!1),!i.props.index||!i.props.children||Oi(!1);let o={id:i.props.id||s.join("-"),caseSensitive:i.props.caseSensitive,element:i.props.element,Component:i.props.Component,index:i.props.index,path:i.props.path,loader:i.props.loader,action:i.props.action,errorElement:i.props.errorElement,ErrorBoundary:i.props.ErrorBoundary,hasErrorBoundary:i.props.ErrorBoundary!=null||i.props.errorElement!=null,shouldRevalidate:i.props.shouldRevalidate,handle:i.props.handle,lazy:i.props.lazy};i.props.children&&(o.children=ux(i.props.children,s)),n.push(o)}),n}/** 59 * @license 60 * Copyright 2010-2023 Three.js Authors 61 * SPDX-License-Identifier: MIT 62 */const Sa="155",DZ={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},LZ={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},uU=0,cx=1,cU=2,NZ=3,hU=0,U9=1,C5=2,aa=3,gl=0,Fi=1,ts=2,kZ=2,bt=0,sl=1,gd=2,hx=3,fx=4,Ad=5,Ws=100,fU=101,dU=102,dx=103,px=104,j0=200,pU=201,mU=202,gU=203,vd=204,yd=205,z9=206,AU=207,V9=208,vU=209,yU=210,wT=0,IT=1,gm=2,qd=3,_d=4,MT=5,RT=6,G9=7,P4=0,qU=1,_U=2,Fo=0,xU=1,EU=2,SU=3,bT=4,TU=5,Q9=300,cu=301,Dc=302,xd=303,Ed=304,w2=306,hu=1e3,pi=1001,Sd=1002,At=1003,Am=1004,FZ=1004,w5=1005,OZ=1005,_n=1006,PT=1007,UZ=1007,Al=1008,zZ=1008,Rn=1009,CU=1010,wU=1011,U1=1012,BT=1013,Ka=1014,kr=1015,yi=1016,DT=1017,LT=1018,ol=1020,IU=1021,mi=1023,NT=1024,MU=1025,xc=1026,fu=1027,Xh=1028,kT=1029,r0=1030,FT=1031,OT=1033,E0=33776,_8=33777,x8=33778,S0=33779,Td=35840,mx=35841,Cd=35842,gx=35843,H9=36196,wd=37492,Id=37496,Md=37808,Ax=37809,vx=37810,yx=37811,qx=37812,_x=37813,xx=37814,Ex=37815,Sx=37816,Tx=37817,Cx=37818,wx=37819,Ix=37820,Mx=37821,T0=36492,RU=36283,Rx=36284,bx=36285,Px=36286,bU=2200,PU=2201,BU=2202,Rd=2300,bd=2301,E8=2302,Yh=2400,Kh=2401,Pd=2402,W9=2500,UT=2501,VZ=0,GZ=1,QZ=2,B4=3e3,al
vendor: 5,325 bytes, line 62
62=3001,Aa=3200,D4=3201,Jc=0,DU=1,Ec="",Ot="srgb",va="srgb-linear",zT="display-p3",HZ=0,S8=7680,WZ=7681,$Z=7682,jZ=7683,XZ=34055,YZ=34056,KZ=5386,JZ=512,ZZ=513,eee=514,tee=515,nee=516,iee=517,ree=518,LU=519,NU=512,kU=513,FU=514,OU=515,UU=516,zU=517,VU=518,GU=519,Bd=35044,T8=35048,see=35040,oee=35045,aee=35049,lee=35041,uee=35046,cee=35050,hee=35042,fee="100",Bx="300 es",vm=1035,Ja=2e3,Dd=2001;class $o{addEventListener(e,n){this._listeners===void 0&&(this._listeners={});const i=this._listeners;i[e]===void 0&&(i[e]=[]),i[e].indexOf(n)===-1&&i[e].push(n)}hasEventListener(e,n){if(this._listeners===void 0)return!1;const i=this._listeners;return i[e]!==void 0&&i[e].indexOf(n)!==-1}removeEventListener(e,n){if(this._listeners===void 0)return;const r=this._listeners[e];if(r!==void 0){const s=r.indexOf(n);s!==-1&&r.splice(s,1)}}dispatchEvent(e){if(this._listeners===void 0)return;const i=this._listeners[e.type];if(i!==void 0){e.target=this;const r=i.slice(0);for(let s=0,o=r.length;s<o;s++)r[s].call(this,e);e.target=null}}}const Mr=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"];let Tb=1234567;const l1=Math.PI/180,X0=180/Math.PI;function Zs(){const t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,n=Math.random()*4294967295|0,i=Math.random()*4294967295|0;return(Mr[t&255]+Mr[t>>8&255]+Mr[t>>16&255]+Mr[t>>24&255]+"-"+Mr[e&255]+Mr[e>>8&255]+"-"+Mr[e>>16&15|64]+Mr[e>>24&255]+"-"+Mr[n&63|128]+Mr[n>>8&255]+"-"+Mr[n>>16&255]+Mr[n>>24&255]+Mr[i&255]+Mr[i>>8&255]+Mr[i>>16&255]+Mr[i>>24&255]).toLowerCase()}function ci(t,e,n){return Math.max(e,Math.min(n,t))}function VT(t,e){return(t%e+e)%e}function dee(t,e,n,i,r){return i+(t-e)*(r-i)/(n-e)}function pee(t,e,n){return t!==e?(n-t)/(e-t):0}function I5(t,e,n){return(1-n)*t+n*e}function mee(t,e,n,i){return I5(t,e,1-Math.exp(-n*i))}function gee(t,e=1){return e-Math.abs(VT(t,e*2)-e)}function Aee(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*(3-2*t))}function vee(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*t*(t*(t*6-15)+10))}function yee(t,e){return t+Math.floor(Math.random()*(e-t+1))}function qee(t,e){return t+Math.random()*(e-t)}function _ee(t){return t*(.5-Math.random())}function xee(t){t!==void 0&&(Tb=t);let e=Tb+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function Eee(t){return t*l1}function See(t){return t*X0}function Dx(t){return(t&t-1)===0&&t!==0}function QU(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function ym(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}function Tee(t,e,n,i,r){const s=Math.cos,o=Math.sin,a=s(n/2),l=o(n/2),u=s((e+i)/2),c=o((e+i)/2),h=s((e-i)/2),f=o((e-i)/2),m=s((i-e)/2),g=o((i-e)/2);switch(r){case"XYX":t.set(a*c,l*h,l*f,a*u);break;case"YZY":t.set(l*f,a*c,l*h,a*u);break;case"ZXZ":t.set(l*h,l*f,a*c,a*u);break;case"XZX":t.set(a*c,l*g,l*m,a*u);break;case"YXY":t.set(l*m,a*c,l*g,a*u);break;case"ZYZ":t.set(l*g,l*m,a*c,a*u);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}}function ys(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return t/4294967295;case Uint16Array:return t/65535;case Uint8Array:return t/255;case Int32Array:return Math.max(t/2147483647,-1);case Int16Array:return Math.max(t/32767,-1);case Int8Array:return Math.max(t/127,-1);default:throw new Error("Invalid component type.")}}function Qt(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return Math.round(t*4294967295);case Uint16Array:return Math.round(t*65535);case Uint8Array:return Math.round(t*255);case Int32Array:return Math.round(t*2147483647);case Int16Array:return Math.round(t*32767);case Int8Array:return Math.round(t*127);default:throw new Error("Invalid component type.")}}const C0={DEG2RAD:l1,RAD2DEG:X0,generateUUID:Zs,clamp:ci,euclideanModulo:VT,mapLinear:dee,inverseLerp:pee,lerp:I5,damp:mee,pingpong:gee,smoothstep:Aee,smootherstep:vee,randInt:yee,randFloat:qee,randFloatSpread:_ee,seededRandom:xee,degToRad:Eee,radToDeg:See,isPowerOfTwo:Dx,ceilPowerOfTwo:QU,floorPowerOfTwo:ym,setQuaternionFromProperEuler:Tee,
vendor: 7,107 bytes, line 62
62normalize:Qt,denormalize:ys};class oe{constructor(e=0,n=0){oe.prototype.isVector2=!0,this.x=e,this.y=n}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,n){return this.x=e,this.y=n,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,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("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,n){return this.x=e.x+n.x,this.y=e.y+n.y,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,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,n){return this.x=e.x-n.x,this.y=e.y-n.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){const n=this.x,i=this.y,r=e.elements;return this.x=r[0]*n+r[3]*i+r[6],this.y=r[1]*n+r[4]*i+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,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this}clampLength(e,n){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(e,Math.min(n,i)))}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=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(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){const n=Math.sqrt(this.lengthSq()*e.lengthSq());if(n===0)return Math.PI/2;const i=this.dot(e)/n;return Math.acos(ci(i,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const n=this.x-e.x,i=this.y-e.y;return n*n+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this}lerpVectors(e,n,i){return this.x=e.x+(n.x-e.x)*i,this.y=e.y+(n.y-e.y)*i,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this}rotateAround(e,n){const i=Math.cos(n),r=Math.sin(n),s=this.x-e.x,o=this.y-e.y;return this.x=s*i-o*r+e.x,this.y=s*r+o*i+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class $t{constructor(e,n,i,r,s,o,a,l,u){$t.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,n,i,r,s,o,a,l,u)}set(e,n,i,r,s,o,a,l,u){const c=this.elements;return c[0]=e,c[1]=r,c[2]=a,c[3]=n,c[4]=s,c[5]=l,c[6]=i,c[7]=o,c[8]=u,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){const n=this.elements,i=e.elements;return n[0]=i[0],n[1]=i[1],n[2]=i[2],n[3]=i[3],n[4]=i[4],n[5]=i[5],n[6]=i[6],n[7]=i[7],n[8]=i[8],this}extractBasis(e,n,i){return e.setFromMatrix3Column(this,0),n.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(e){const n=e.elements;return this.set(n[0],n[4],n[8],n[1],n[5],n[9],n[2],n[6],n[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){const i=e.elements,r=n.elements,s=this.elements,o=i[0],a=i[3],l=i[6],u=i[1],c=i[4],h=i[7],f=i[2],m=i[5],g=i[8],v=r[0],_=r[3],A=r[6],y=r[1],q=r[4],E=r[7],T=r[2],C=r[5],I=r[8];return s[0]=o*v+a*y+l*T,s[3]=o*_+a*q+l*C,s[6]=o*A+a*E+l*I,s[1]=u*v+c*y+h*T,s[4]=u*_+c*q+h*C,s[7]=u*A+c*E+h*I,s[2]=f*v+m*y+g*T,s[5]=f*_+m*q+g*C,s[8]=f*A+m*E+g*I,this}multiplyScalar(e){const n=this.elements;return n[0]*=e,n[3]*=e,n[6]*=e,n[1]*=e,n[4]*=e,n[7]*=e,n[2]*=e,n[5]*=e,n[8]*=e,this}determinant(){const e=this.elements,n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],u=e[7],c=e[8];return n*o*c-n*a*u-i*s*c+i*a*l+r*s*u-r*o*l}invert(){const e=this.elements,n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],u=e[7],c=e[8],h=c*o-a*u,f=a*l-c*s,m=u*s-o*l,g=n*h+i*f+r*m;if(g===0)return this.set(0,0,0,0,0,0,0,0,0);const v=1/g;return e[0]=h*v,e[1]=(r*u-c*i)*v,e[2]=(a*i-r*o)*v,e[3]=f*v,e[4]=(c*n-r*l)*v,e[5]=(r*s-a*n)*v,e[6]=m*v,e[7]=(i*l-u*n)*v,e[8]=(o*n-i*s)*v,this}transpose(){let e;const n=this.elements;return e=n[1],n[1]=n[3],n[3]=e,e=n[2],n[2]=n[6],n[6]=e,e=n[5],n[5]=n[7],n[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){const n=this.elements;return e[0]=n[0],e[1]=n[3],e[2]=n[6],e[3]=n[1],e[4]=n[4],e[5]=n[7],e[6]=n[2],e[7]=n[5],e[8]=n[8],this}setUvTransform(e,n,i,r,s,o,a){const l=Math.cos(s),u=Math.sin(s);return this.set(i*l,i*u,-i*(l*o+u*a)+o+e,-r*u,r*l,-r*(-u*o+l*a)+a+n,0,0,1),this}scale(e,n){return this.premultiply(fy.makeScale(e,n)),this}rotate(e){return this.premultiply(fy.makeRotation(-e)),this}translate(e,n){return this.premultiply(fy.makeTranslation(e,n)),this}makeTranslation(e,n){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,n,0,0,1),this}makeRotation(e){const n=Math.cos(e),i=Math.sin(e);return this.set(n,-i,0,i,n,0,0,0,1),this}makeScale(e,n){return this.set(e,0,0,0,n,0,0,0,1),this}equals(e){const n=this.elements,i=e.elements;for(let r=0;r<9;r++)if(n[r]!==i[r])return!1;return!0}fromArray(e,n=0){for(let i=0;i<9;i++)this.elements[i]=e[i+n];return this}toArray(e=[],n=0){const i=this.elements;return e[n]=i[0],e[n+1]=i[1],e[n+2]=i[2],e[n+3]=i[3],e[n+4]=i[4],e[n+5]=i[5],e[n+6]=i[6],e[n+7]=i[7],e[n+8]=i[8],e}clone(){return new this.constructor().fromArray(this.elements)}}const fy=new $t;function HU(t){for(let e=t.length-1;e>=0;--e)if(t[e]>=65535)return!0;return!1}const Cee={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function s0(t,e){return new Cee[t](e)}function Ld(t){return document.createElementNS("http://www.w3.org/1999/xhtml",t)}const Cb={};function M5(t){t in Cb||(Cb[t]=!0,console.warn(t))}function w0(t){return t<.04045?t*.0773993808:Math.pow(t*.9478672986+.0521327014,2.4)}
62function dy(t){return t<.0031308?t*12.92:1.055*Math.pow(t,.41666)-.055}const wee=new $t().fromArray([.8224621,.0331941,.0170827,.177538,.9668058,.0723974,-1e-7,1e-7,.9105199]),Iee=new $t().fromArray([1.2249401,-.0420569,-.0196376,-.2249404,1.0420571,-.0786361,1e-7,0,1.0982735]);function Mee(t){return t.convertSRGBToLinear().applyMatrix3(Iee)}function Ree(t){return t.applyMatrix3(wee).convertLinearToSRGB()}const bee={[va]:t=>t,[Ot]:t=>t.convertSRGBToLinear(),[zT]:Mee},Pee={[va]:t=>t,[Ot]:t=>t.convertLinearToSRGB(),[zT]:Ree},So={enabled:!0,get legacyMode(){return console.warn("THREE.ColorManagement: .legacyMode=false renamed to .enabled=true in r150."),!this.enabled},set legacyMode(t){console.warn("THREE.ColorManagement: .legacyMode=false renamed to .enabled=true in r150."),this.enabled=!t},get workingColorSpace(){return va},set workingColorSpace(t){console.warn("THREE.ColorManagement: .workingColorSpace is readonly.")},convert:function(t,e,n){if(this.enabled===!1||e===n||!e||!n)return t;const i=bee[e],r=Pee[n];if(i===void 0||r===void 0)throw new Error(`Unsupported color space conversion, "${e}" to "${n}".`);return r(i(t))},fromWorkingColorSpace:function(t,e){return this.convert(t,this.workingColorSpace,e)},toWorkingColorSpace:function(t,e){return this.convert(t,e,this.workingColorSpace)}};let d3;class GT{static getDataURL(e){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>"u")return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{d3===void 0&&(d3=Ld("canvas")),d3.width=e.width,d3.height=e.height;const i=d3.getContext("2d");e instanceof ImageData?i.putImageData(e,0,0):i.drawImage(e,0,0,e.width,e.height),n=d3}return n.width>2048||n.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),n.toDataURL("image/jpeg",.6)):n.toDataURL("image/png")}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){const n=Ld("canvas");n.width=e.width,n.height=e.height;const i=n.getContext("2d");i.drawImage(e,0,0,e.width,e.height);const r=i.getImageData(0,0,e.width,e.height),s=r.data;for(let o=0;o<s.length;o++)s[o]=w0(s[o]/255)*255;return i.putImageData(r,0,0),n}else if(e.data){const n=e.data.slice(0);for(let i=0;i<n.length;i++)n instanceof Uint8Array||n instanceof Uint8ClampedArray?n[i]=Math.floor(w0(n[i]/255)*255):n[i]=w0(n[i]);return{data:n,width:e.width,height:e.height}}else return console.warn("THREE.ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied."),e}}let Bee=0;class Jh{constructor(e=null){this.isSource=!0,Object.defineProperty(this,"id",{value:Bee++}),this.uuid=Zs(),this.data=e,this.version=0}set needsUpdate(e){e===!0&&this.version++}toJSON(e){const n=e===void 0||typeof e=="string";if(!n&&e.images[this.uuid]!==void 0)return e.images[this.uuid];const i={uuid:this.uuid,url:""},r=this.data;if(r!==null){let s;if(Array.isArray(r)){s=[];for(let o=0,a=r.length;o<a;o++)r[o].isDataTexture?s.push(py(r[o].image)):s.push(py(r[o]))}else s=py(r);i.url=s}return n||(e.images[this.uuid]=i),i}}function py(t){return typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap?GT.getDataURL(t):t.data?{data:Array.from(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}let Dee=0;class Gn extends $o{constructor(e=Gn.DEFAULT_IMAGE,n=Gn.DEFAULT_MAPPING,i=pi,r=pi,s=_n,o=Al,a=mi,l=Rn,u=Gn.DEFAULT_ANISOTROPY,c=Ec){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:Dee++}),this.uuid=Zs(),this.name="",this.source=new Jh(e),this.mipmaps=[],this.mapping=n,this.channel=0,this.wrapS=i,this.wrapT=r,this.magFilter=s,this.minFilter=o,this.anisotropy=u,this.format=a,this.internalFormat=null,this.type=l,this.offset=new oe(0,0),this.repeat=new oe(1,1),this.center=new oe(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new $t,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,typeof c=="string"?this.colorSpace
vendor: 4,244 bytes, line 62
62=c:(M5("THREE.Texture: Property .encoding has been replaced by .colorSpace."),this.colorSpace=c===al?Ot:Ec),this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.needsPMREMUpdate=!1}get image(){return this.source.data}set image(e=null){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)}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.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.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}toJSON(e){const n=e===void 0||typeof e=="string";if(!n&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];const i={metadata:{version:4.6,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,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&&(i.userData=this.userData),n||(e.textures[this.uuid]=i),i}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(this.mapping!==Q9)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case hu:e.x=e.x-Math.floor(e.x);break;case pi:e.x=e.x<0?0:1;break;case Sd:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case hu:e.y=e.y-Math.floor(e.y);break;case pi:e.y=e.y<0?0:1;break;case Sd:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-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)}get encoding(){return M5("THREE.Texture: Property .encoding has been replaced by .colorSpace."),this.colorSpace===Ot?al:B4}set encoding(e){M5("THREE.Texture: Property .encoding has been replaced by .colorSpace."),this.colorSpace=e===al?Ot:Ec}}Gn.DEFAULT_IMAGE=null;Gn.DEFAULT_MAPPING=Q9;Gn.DEFAULT_ANISOTROPY=1;class Zt{constructor(e=0,n=0,i=0,r=1){Zt.prototype.isVector4=!0,this.x=e,this.y=n,this.z=i,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,n,i,r){return this.x=e,this.y=n,this.z=i,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,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;case 3:this.w=n;break;default:throw new Error("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 new Error("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?e.w:1,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,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this.w=e.w+n.w,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,this.w+=e.w*n,this}
vendor: 4,551 bytes, line 62
62sub(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,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.z,this.w=e.w-n.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){const n=this.x,i=this.y,r=this.z,s=this.w,o=e.elements;return this.x=o[0]*n+o[4]*i+o[8]*r+o[12]*s,this.y=o[1]*n+o[5]*i+o[9]*r+o[13]*s,this.z=o[2]*n+o[6]*i+o[10]*r+o[14]*s,this.w=o[3]*n+o[7]*i+o[11]*r+o[15]*s,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);const n=Math.sqrt(1-e.w*e.w);return n<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/n,this.y=e.y/n,this.z=e.z/n),this}setAxisAngleFromRotationMatrix(e){let n,i,r,s;const l=e.elements,u=l[0],c=l[4],h=l[8],f=l[1],m=l[5],g=l[9],v=l[2],_=l[6],A=l[10];if(Math.abs(c-f)<.01&&Math.abs(h-v)<.01&&Math.abs(g-_)<.01){if(Math.abs(c+f)<.1&&Math.abs(h+v)<.1&&Math.abs(g+_)<.1&&Math.abs(u+m+A-3)<.1)return this.set(1,0,0,0),this;n=Math.PI;const q=(u+1)/2,E=(m+1)/2,T=(A+1)/2,C=(c+f)/4,I=(h+v)/4,R=(g+_)/4;return q>E&&q>T?q<.01?(i=0,r=.707106781,s=.707106781):(i=Math.sqrt(q),r=C/i,s=I/i):E>T?E<.01?(i=.707106781,r=0,s=.707106781):(r=Math.sqrt(E),i=C/r,s=R/r):T<.01?(i=.707106781,r=.707106781,s=0):(s=Math.sqrt(T),i=I/s,r=R/s),this.set(i,r,s,n),this}let y=Math.sqrt((_-g)*(_-g)+(h-v)*(h-v)+(f-c)*(f-c));return Math.abs(y)<.001&&(y=1),this.x=(_-g)/y,this.y=(h-v)/y,this.z=(f-c)/y,this.w=Math.acos((u+m+A-1)/2),this}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.w=Math.min(this.w,e.w),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.w=Math.max(this.w,e.w),this}clamp(e,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this.z=Math.max(e.z,Math.min(n.z,this.z)),this.w=Math.max(e.w,Math.min(n.w,this.w)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this.z=Math.max(e,Math.min(n,this.z)),this.w=Math.max(e,Math.min(n,this.w)),this}clampLength(e,n){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(e,Math.min(n,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,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)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this.w+=(e.w-this.w)*n,this}lerpVectors(e,n,i){return this.x=e.x+(n.x-e.x)*i,this.y=e.y+(n.y-e.y)*i,this.z=e.z+(n.z-e.z)*i,this.w=e.w+(n.w-e.w)*i,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this.w=e[n+3],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e[n+3]=this.w,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this.w=e.getW(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class WU extends $o{constructor(e=1,n=1,i={}){super(),this.isRenderTarget=!0,this.width=e,this.height=n,this.depth=1,this.scissor=new Zt(0,0,e,n),this.scissorTest=!1,this.viewport=new Zt(0,0,e,n);const r={width:e,height:n,depth:1};i.encoding!==void 0&&(M5("THREE.WebGLRenderTarget: option.encoding has been replaced by option.colorSpace."),i.colorSpace
vendor: 6,001 bytes, line 62
62=i.encoding===al?Ot:Ec),this.texture=new Gn(r,i.mapping,i.wrapS,i.wrapT,i.magFilter,i.minFilter,i.format,i.type,i.anisotropy,i.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.flipY=!1,this.texture.generateMipmaps=i.generateMipmaps!==void 0?i.generateMipmaps:!1,this.texture.internalFormat=i.internalFormat!==void 0?i.internalFormat:null,this.texture.minFilter=i.minFilter!==void 0?i.minFilter:_n,this.depthBuffer=i.depthBuffer!==void 0?i.depthBuffer:!0,this.stencilBuffer=i.stencilBuffer!==void 0?i.stencilBuffer:!1,this.depthTexture=i.depthTexture!==void 0?i.depthTexture:null,this.samples=i.samples!==void 0?i.samples:0}setSize(e,n,i=1){(this.width!==e||this.height!==n||this.depth!==i)&&(this.width=e,this.height=n,this.depth=i,this.texture.image.width=e,this.texture.image.height=n,this.texture.image.depth=i,this.dispose()),this.viewport.set(0,0,e,n),this.scissor.set(0,0,e,n)}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.texture=e.texture.clone(),this.texture.isRenderTargetTexture=!0;const n=Object.assign({},e.texture.image);return this.texture.source=new Jh(n),this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,e.depthTexture!==null&&(this.depthTexture=e.depthTexture.clone()),this.samples=e.samples,this}dispose(){this.dispatchEvent({type:"dispose"})}}class Yt extends WU{constructor(e=1,n=1,i={}){super(e,n,i),this.isWebGLRenderTarget=!0}}class $9 extends Gn{constructor(e=null,n=1,i=1,r=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:n,height:i,depth:r},this.magFilter=At,this.minFilter=At,this.wrapR=pi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class Lee extends Yt{constructor(e=1,n=1,i=1){super(e,n),this.isWebGLArrayRenderTarget=!0,this.depth=i,this.texture=new $9(null,e,n,i),this.texture.isRenderTargetTexture=!0}}let QT=class extends Gn{constructor(e=null,n=1,i=1,r=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:n,height:i,depth:r},this.magFilter=At,this.minFilter=At,this.wrapR=pi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}};class Nee extends Yt{constructor(e=1,n=1,i=1){super(e,n),this.isWebGL3DRenderTarget=!0,this.depth=i,this.texture=new QT(null,e,n,i),this.texture.isRenderTargetTexture=!0}}class kee extends Yt{constructor(e=1,n=1,i=1,r={}){super(e,n,r),this.isWebGLMultipleRenderTargets=!0;const s=this.texture;this.texture=[];for(let o=0;o<i;o++)this.texture[o]=s.clone(),this.texture[o].isRenderTargetTexture=!0}setSize(e,n,i=1){if(this.width!==e||this.height!==n||this.depth!==i){this.width=e,this.height=n,this.depth=i;for(let r=0,s=this.texture.length;r<s;r++)this.texture[r].image.width=e,this.texture[r].image.height=n,this.texture[r].image.depth=i;this.dispose()}this.viewport.set(0,0,e,n),this.scissor.set(0,0,e,n)}copy(e){this.dispose(),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.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,e.depthTexture!==null&&(this.depthTexture=e.depthTexture.clone()),this.texture.length=0;for(let n=0,i=e.texture.length;n<i;n++)this.texture[n]=e.texture[n].clone(),this.texture[n].isRenderTargetTexture=!0;return this}}class rs{constructor(e=0,n=0,i=0,r=1){this.isQuaternion=!0,this._x=e,this._y=n,this._z=i,this._w=r}static slerpFlat(e,n,i,r,s,o,a){let l=i[r+0],u=i[r+1],c=i[r+2],h=i[r+3];const f=s[o+0],m=s[o+1],g=s[o+2],v=s[o+3];if(a===0){e[n+0]=l,e[n+1]=u,e[n+2]=c,e[n+3]=h;return}if(a===1){e[n+0]=f,e[n+1]=m,e[n+2]=g,e[n+3]=v;return}if(h!==v||l!==f||u!==m||c!==g){let _=1-a;const A=l*f+u*m+c*g+h*v,y=A>=0?1:-1,q=1-A*A;if(q>Number.EPSILON){const T=Math.sqrt(q),C=Math.atan2(T,A*y);_=Math.sin(_*C)/T,a=Math.sin(a*C)/T}const E=a*y;if(l=l*_+f*E,u=u*_+m*E,c=c*_+g*E,h=h*_+v*E,_===1-a){const T=1/Math.sqrt(l*l+u*u+c*c+h*h);l*=T,u*=T,c*=T,h*=T}}e[n]=l,e[n+1]=u,e[n+2]=c,e[n+3]=h}static multiplyQuaternionsFlat(e,n,i,r,s,o){const a=i[r],l=i[r+1],u=i[r+2],c=i[r+3],h=s[o],f=s[o+1],m=s[o+2],g=s[o+3];return e[n]=a*g+c*h+l*m-u*f,e[n+1]=l*g+c*f+u*h-a*m,e[n+2]=u*g+c*m+a*f-l*h,e[n+3]=c*g-a*h-l*f-u*m,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,n,i,r){return this._x=e,this._y=n,this._z=i,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,n){const i=e._x,r=e._y,s=e._z,o=e._order,a=Math.cos,l=Math.sin,u=a(i/2),c=a(r/2),h=a(s/2),f=l(i/2),m=l(r/2),g=l(s/2);switch(o){case"XYZ":this._x=f*c*h+u*m*g,this._y=u*m*h-f*c*g,this._z=u*c*g+f*m*h,this._w=u*c*h-f*m*g;break;case"YXZ":this._x=f*c*h+u*m*g,this._y=u*m*h-f*c*g,this._z=u*c*g-f*m*h,this._w=u*c*h+f*m*g;break;case"ZXY":this._x=f*c*h-u*m*g,this._y=u*m*h+f*c*g,this._z=u*c*g+f*m*h,this._w=u*c*h-f*m*g;break;case"ZYX":this._x=f*c*h-u*m*g,this._y=u*m*h+f*c*g,this._z=u*c*g-f*m*h,this._w=u*c*h+f*m*g;break;case"YZX":this._x=f*c*h+u*m*g,this._y=u*m*h+f*c*g,this._z=u*c*g-f*m*h,this._w=u*c*h-f*m*g;break;case"XZY":this._x=f*c*h-u*m*g,this._y=u*m*h-f*c*g,this._z=u*c*g+f*m*h,this._w=u*c*h+f*m*g;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+o)}return n!==!1&&this._onChangeCallback(),this}setFromAxisAngle(e,n){const i=n/2,r=Math.sin(i);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(e){const n=e.elements,i=n[0],r=n[4],s=n[8],o=n[1],a=n[5],l=n[9],u=n[2],c=n[6],h=n[10],f=i+a+h;if(f>0){const m=.5/Math.sqrt(f+1);this._w=.25/m,this._x=(c-l)*m,this._y=(s-u)*m,this._z=(o-r)*m}else if(i>
vendor: 10,328 bytes, line 62
62a&&i>h){const m=2*Math.sqrt(1+i-a-h);this._w=(c-l)/m,this._x=.25*m,this._y=(r+o)/m,this._z=(s+u)/m}else if(a>h){const m=2*Math.sqrt(1+a-i-h);this._w=(s-u)/m,this._x=(r+o)/m,this._y=.25*m,this._z=(l+c)/m}else{const m=2*Math.sqrt(1+h-i-a);this._w=(o-r)/m,this._x=(s+u)/m,this._y=(l+c)/m,this._z=.25*m}return this._onChangeCallback(),this}setFromUnitVectors(e,n){let i=e.dot(n)+1;return i<Number.EPSILON?(i=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=i):(this._x=0,this._y=-e.z,this._z=e.y,this._w=i)):(this._x=e.y*n.z-e.z*n.y,this._y=e.z*n.x-e.x*n.z,this._z=e.x*n.y-e.y*n.x,this._w=i),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(ci(this.dot(e),-1,1)))}rotateTowards(e,n){const i=this.angleTo(e);if(i===0)return this;const r=Math.min(1,n/i);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=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,n){const i=e._x,r=e._y,s=e._z,o=e._w,a=n._x,l=n._y,u=n._z,c=n._w;return this._x=i*c+o*a+r*u-s*l,this._y=r*c+o*l+s*a-i*u,this._z=s*c+o*u+i*l-r*a,this._w=o*c-i*a-r*l-s*u,this._onChangeCallback(),this}slerp(e,n){if(n===0)return this;if(n===1)return this.copy(e);const i=this._x,r=this._y,s=this._z,o=this._w;let a=o*e._w+i*e._x+r*e._y+s*e._z;if(a<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,a=-a):this.copy(e),a>=1)return this._w=o,this._x=i,this._y=r,this._z=s,this;const l=1-a*a;if(l<=Number.EPSILON){const m=1-n;return this._w=m*o+n*this._w,this._x=m*i+n*this._x,this._y=m*r+n*this._y,this._z=m*s+n*this._z,this.normalize(),this._onChangeCallback(),this}const u=Math.sqrt(l),c=Math.atan2(u,a),h=Math.sin((1-n)*c)/u,f=Math.sin(n*c)/u;return this._w=o*h+this._w*f,this._x=i*h+this._x*f,this._y=r*h+this._y*f,this._z=s*h+this._z*f,this._onChangeCallback(),this}slerpQuaternions(e,n,i){return this.copy(e).slerp(n,i)}random(){const e=Math.random(),n=Math.sqrt(1-e),i=Math.sqrt(e),r=2*Math.PI*Math.random(),s=2*Math.PI*Math.random();return this.set(n*Math.cos(r),i*Math.sin(s),i*Math.cos(s),n*Math.sin(r))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,n=0){return this._x=e[n],this._y=e[n+1],this._z=e[n+2],this._w=e[n+3],this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._w,e}fromBufferAttribute(e,n){return this._x=e.getX(n),this._y=e.getY(n),this._z=e.getZ(n),this._w=e.getW(n),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}}class L{constructor(e=0,n=0,i=0){L.prototype.isVector3=!0,this.x=e,this.y=n,this.z=i}set(e,n,i){return i===void 0&&(i=this.z),this.x=e,this.y=n,this.z=i,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,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;default:throw new Error("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 new Error("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,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,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,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.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,n){return this.x=e.x*n.x,this.y=e.y*n.y,this.z=e.z*n.z,this}applyEuler(e){return this.applyQuaternion(wb.setFromEuler(e))}applyAxisAngle(e,n){return this.applyQuaternion(wb.setFromAxisAngle(e,n))}applyMatrix3(e){const n=this.x,i=this.y,r=this.z,s=e.elements;return this.x=s[0]*n+s[3]*i+s[6]*r,this.y=s[1]*n+s[4]*i+s[7]*r,this.z=s[2]*n+s[5]*i+s[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){const n=this.x,i=this.y,r=this.z,s=e.elements,o=1/(s[3]*n+s[7]*i+s[11]*r+s[15]);return this.x=(s[0]*n+s[4]*i+s[8]*r+s[12])*o,this.y=(s[1]*n+s[5]*i+s[9]*r+s[13])*o,this.z=(s[2]*n+s[6]*i+s[10]*r+s[14])*o,this}applyQuaternion(e){const n=this.x,i=this.y,r=this.z,s=e.x,o=e.y,a=e.z,l=e.w,u=l*n+o*r-a*i,c=l*i+a*n-s*r,h=l*r+s*i-o*n,f=-s*n-o*i-a*r;return this.x=u*l+f*-s+c*-a-h*-o,this.y=c*l+f*-o+h*-s-u*-a,this.z=h*l+f*-a+u*-o-c*-s,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){const n=this.x,i=this.y,r=this.z,s=e.elements;return this.x=s[0]*n+s[4]*i+s[8]*r,this.y=s[1]*n+s[5]*i+s[9]*r,this.z=s[2]*n+s[6]*i+s[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,n){return this.x=Math.max(e.x,Math.min(n.x,this.x)),this.y=Math.max(e.y,Math.min(n.y,this.y)),this.z=Math.max(e.z,Math.min(n.z,this.z)),this}clampScalar(e,n){return this.x=Math.max(e,Math.min(n,this.x)),this.y=Math.max(e,Math.min(n,this.y)),this.z=Math.max(e,Math.min(n,this.z)),this}clampLength(e,n){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(e,Math.min(n,i)))}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=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(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,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this}lerpVectors(e,n,i){return this.x=e.x+(n.x-e.x)*i,this.y=e.y+(n.y-e.y)*i,this.z=e.z+(n.z-e.z)*i,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,n){const i=e.x,r=e.y,s=e.z,o=n.x,a=n.y,l=n.z;return this.x=r*l-s*a,this.y=s*o-i*l,this.z=i*a-r*o,this}projectOnVector(e){const n=e.lengthSq();if(n===0)return this.set(0,0,0);const i=e.dot(this)/n;return this.copy(e).multiplyScalar(i)}projectOnPlane(e){return my.copy(this).projectOnVector(e),this.sub(my)}reflect(e){return this.sub(my.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){const n=Math.sqrt(this.lengthSq()*e.lengthSq());if(n===0)return Math.PI/2;const i=this.dot(e)/n;return Math.acos(ci(i,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const n=this.x-e.x,i=this.y-e.y,r=this.z-e.z;return n*n+i*i+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,n,i){const r=Math.sin(n)*e;return this.x=r*Math.sin(i),this.y=Math.cos(n)*e,this.z=r*Math.cos(i),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,n,i){return this.x=e*Math.sin(n),this.y=i,this.z=e*Math.cos(n),this}setFromMatrixPosition(e){const n=e.elements;return this.x=n[12],this.y=n[13],this.z=n[14],this}setFromMatrixScale(e){const n=this.setFromMatrixColumn(e,0).length(),i=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=n,this.y=i,this.z=r,this}setFromMatrixColumn(e,n){return this.fromArray(e.elements,n*4)}setFromMatrix3Column(e,n){return this.fromArray(e.elements,n*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,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const e=(Math.random()-.5)*2,n=Math.random()*Math.PI*2,i=Math.sqrt(1-e**2);return this.x=i*Math.cos(n),this.y=i*Math.sin(n),this.z=e,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const my=new L,wb=new rs;class Ta{constructor(e=new L(1/0,1/0,1/0),n=new L(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=n}set(e,n){return this.min.copy(e),this.max.copy(n),this}setFromArray(e){this.makeEmpty();for(let n=0,i=e.length;n<i;n+=3)this.expandByPoint(kl.fromArray(e,n));return this}setFromBufferAttribute(e){this.makeEmpty();for(let n=0,i=e.count;n<i;n++)this.expandByPoint(kl.fromBufferAttribute(e,n));return this}setFromPoints(e){this.makeEmpty();for(let n=0,i=e.length;n<i;
vendor: 22,460 bytes, line 62
62n++)this.expandByPoint(e[n]);return this}setFromCenterAndSize(e,n){const i=kl.copy(n).multiplyScalar(.5);return this.min.copy(e).sub(i),this.max.copy(e).add(i),this}setFromObject(e,n=!1){return this.makeEmpty(),this.expandByObject(e,n)}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(e){return this.isEmpty()?e.set(0,0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}expandByObject(e,n=!1){if(e.updateWorldMatrix(!1,!1),e.boundingBox!==void 0)e.boundingBox===null&&e.computeBoundingBox(),p3.copy(e.boundingBox),p3.applyMatrix4(e.matrixWorld),this.union(p3);else{const r=e.geometry;if(r!==void 0)if(n&&r.attributes!==void 0&&r.attributes.position!==void 0){const s=r.attributes.position;for(let o=0,a=s.count;o<a;o++)kl.fromBufferAttribute(s,o).applyMatrix4(e.matrixWorld),this.expandByPoint(kl)}else r.boundingBox===null&&r.computeBoundingBox(),p3.copy(r.boundingBox),p3.applyMatrix4(e.matrixWorld),this.union(p3)}const i=e.children;for(let r=0,s=i.length;r<s;r++)this.expandByObject(i[r],n);return this}containsPoint(e){return!(e.x<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,n){return n.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,kl),kl.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let n,i;return e.normal.x>0?(n=e.normal.x*this.min.x,i=e.normal.x*this.max.x):(n=e.normal.x*this.max.x,i=e.normal.x*this.min.x),e.normal.y>0?(n+=e.normal.y*this.min.y,i+=e.normal.y*this.max.y):(n+=e.normal.y*this.max.y,i+=e.normal.y*this.min.y),e.normal.z>0?(n+=e.normal.z*this.min.z,i+=e.normal.z*this.max.z):(n+=e.normal.z*this.max.z,i+=e.normal.z*this.min.z),n<=-e.constant&&i>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Tf),Up.subVectors(this.max,Tf),m3.subVectors(e.a,Tf),g3.subVectors(e.b,Tf),A3.subVectors(e.c,Tf),Fu.subVectors(g3,m3),Ou.subVectors(A3,g3),yh.subVectors(m3,A3);let n=[0,-Fu.z,Fu.y,0,-Ou.z,Ou.y,0,-yh.z,yh.y,Fu.z,0,-Fu.x,Ou.z,0,-Ou.x,yh.z,0,-yh.x,-Fu.y,Fu.x,0,-Ou.y,Ou.x,0,-yh.y,yh.x,0];return!gy(n,m3,g3,A3,Up)||(n=[1,0,0,0,1,0,0,0,1],!gy(n,m3,g3,A3,Up))?!1:(zp.crossVectors(Fu,Ou),n=[zp.x,zp.y,zp.z],gy(n,m3,g3,A3,Up))}clampPoint(e,n){return n.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,kl).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(kl).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:(Nl[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Nl[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Nl[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Nl[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Nl[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Nl[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Nl[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Nl[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Nl),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)}}const Nl=[new L,new L,new L,new L,new L,new L,new L,new L],kl=new L,p3=new Ta,m3=new L,g3=new L,A3=new L,Fu=new L,Ou=new L,yh=new L,Tf=new L,Up=new L,zp=new L,qh=new L;function gy(t,e,n,i,r){for(let s=0,o=t.length-3;s<=o;s+=3){qh.fromArray(t,s);const a=r.x*Math.abs(qh.x)+r.y*Math.abs(qh.y)+r.z*Math.abs(qh.z),l=e.dot(qh),u=n.dot(qh),c=i.dot(qh);if(Math.max(-Math.max(l,u,c),Math.min(l,u,c))>a)return!1}return!0}const Fee=new Ta,Cf=new L,Ay=new L;class jo{constructor(e=new L,n=-1){this.center=e,this.radius=n}set(e,n){return this.center.copy(e),this.radius=n,this}setFromPoints(e,n){const i=this.center;n!==void 0?i.copy(n):Fee.setFromPoints(e).getCenter(i);let r=0;for(let s=0,o=e.length;s<o;s++)r=Math.max(r,i.distanceToSquared(e[s]));return this.radius=Math.sqrt(r),this}copy(e){return this.center.copy(e.center),this.radius=e.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(e){return e.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(e){return e.distanceTo(this.center)-this.radius}intersectsSphere(e){const n=this.radius+e.radius;return e.center.distanceToSquared(this.center)<=n*n}intersectsBox(e){return e.intersectsSphere(this)}intersectsPlane(e){return Math.abs(e.distanceToPoint(this.center))<=this.radius}clampPoint(e,n){const i=this.center.distanceToSquared(e);return n.copy(e),i>this.radius*this.radius&&(n.sub(this.center).normalize(),n.multiplyScalar(this.radius).add(this.center)),n}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=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;Cf.subVectors(e,this.center);const n=Cf.lengthSq();if(n>this.radius*this.radius){const i=Math.sqrt(n),r=(i-this.radius)*.5;this.center.addScaledVector(Cf,r/i),this.radius+=r}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):(Ay.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(Cf.copy(e.center).add(Ay)),this.expandByPoint(Cf.copy(e.center).sub(Ay))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}const Fl=new L,vy=new L,Vp=new L,Uu=new L,yy=new L,Gp=new L,qy=new L;class I2{constructor(e=new L,n=new L(0,0,-1)){this.origin=e,this.direction=n}set(e,n){return this.origin.copy(e),this.direction.copy(n),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,n){return n.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,Fl)),this}closestPointToPoint(e,n){n.subVectors(e,this.origin);const i=n.dot(this.direction);return i<0?n.copy(this.origin):n.copy(this.origin).addScaledVector(this.direction,i)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){const n=Fl.subVectors(e,this.origin).dot(this.direction);return n<0?this.origin.distanceToSquared(e):(Fl.copy(this.origin).addScaledVector(this.direction,n),Fl.distanceToSquared(e))}distanceSqToSegment(e,n,i,r){vy.copy(e).add(n).multiplyScalar(.5),Vp.copy(n).sub(e).normalize(),Uu.copy(this.origin).sub(vy);const s=e.distanceTo(n)*.5,o=-this.direction.dot(Vp),a=Uu.dot(this.direction),l=-Uu.dot(Vp),u=Uu.lengthSq(),c=Math.abs(1-o*o);let h,f,m,g;if(c>0)if(h=o*l-a,f=o*a-l,g=s*c,h>=0)if(f>=-g)if(f<=g){const v=1/c;h*=v,f*=v,m=h*(h+o*f+2*a)+f*(o*h+f+2*l)+u}else f=s,h=Math.max(0,-(o*f+a)),m=-h*h+f*(f+2*l)+u;else f=-s,h=Math.max(0,-(o*f+a)),m=-h*h+f*(f+2*l)+u;else f<=-g?(h=Math.max(0,-(-o*s+a)),f=h>0?-s:Math.min(Math.max(-s,-l),s),m=-h*h+f*(f+2*l)+u):f<=g?(h=0,f=Math.min(Math.max(-s,-l),s),m=f*(f+2*l)+u):(h=Math.max(0,-(o*s+a)),f=h>0?s:Math.min(Math.max(-s,-l),s),m=-h*h+f*(f+2*l)+u);else f=o>0?-s:s,h=Math.max(0,-(o*f+a)),m=-h*h+f*(f+2*l)+u;return i&&i.copy(this.origin).addScaledVector(this.direction,h),r&&r.copy(vy).addScaledVector(Vp,f),m}intersectSphere(e,n){Fl.subVectors(e.center,this.origin);const i=Fl.dot(this.direction),r=Fl.dot(Fl)-i*i,s=e.radius*e.radius;if(r>s)return null;const o=Math.sqrt(s-r),a=i-o,l=i+o;return l<0?null:a<0?this.at(l,n):this.at(a,n)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){const n=e.normal.dot(this.direction);if(n===0)return e.distanceToPoint(this.origin)===0?0:null;const i=-(this.origin.dot(e.normal)+e.constant)/n;return i>=0?i:null}intersectPlane(e,n){const i=this.distanceToPlane(e);return i===null?null:this.at(i,n)}intersectsPlane(e){const n=e.distanceToPoint(this.origin);return n===0||e.normal.dot(this.direction)*n<0}intersectBox(e,n){let i,r,s,o,a,l;const u=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,f=this.origin;return u>=0?(i=(e.min.x-f.x)*u,r=(e.max.x-f.x)*u):(i=(e.max.x-f.x)*u,r=(e.min.x-f.x)*u),c>=0?(s=(e.min.y-f.y)*c,o=(e.max.y-f.y)*c):(s=(e.max.y-f.y)*c,o=(e.min.y-f.y)*c),i>o||s>r||((s>i||isNaN(i))&&(i=s),(o<r||isNaN(r))&&(r=o),h>=0?(a=(e.min.z-f.z)*h,l=(e.max.z-f.z)*h):(a=(e.max.z-f.z)*h,l=(e.min.z-f.z)*h),i>l||a>r)||((a>i||i!==i)&&(i=a),(l<r||r!==r)&&(r=l),r<0)?null:this.at(i>=0?i:r,n)}intersectsBox(e){return this.intersectBox(e,Fl)!==null}intersectTriangle(e,n,i,r,s){yy.subVectors(n,e),Gp.subVectors(i,e),qy.crossVectors(yy,Gp);let o=this.direction.dot(qy),a;if(o>0){if(r)return null;a=1}else if(o<0)a=-1,o=-o;else return null;Uu.subVectors(this.origin,e);const l=a*this.direction.dot(Gp.crossVectors(Uu,Gp));if(l<0)return null;const u=a*this.direction.dot(yy.cross(Uu));if(u<0||l+u>o)return null;const c=-a*Uu.dot(qy);return c<0?null:this.at(c/o,s)}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)}}class st{constructor(e,n,i,r,s,o,a,l,u,c,h,f,m,g,v,_){st.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],e!==void 0&&this.set(e,n,i,r,s,o,a,l,u,c,h,f,m,g,v,_)}set(e,n,i,r,s,o,a,l,u,c,h,f,m,g,v,_){const A=this.elements;return A[0]=e,A[4]=n,A[8]=i,A[12]=r,A[1]=s,A[5]=o,A[9]=a,A[13]=l,A[2]=u,A[6]=c,A[10]=h,A[14]=f,A[3]=m,A[7]=g,A[11]=v,A[15]=_,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new st().fromArray(this.elements)}copy(e){const n=this.elements,i=e.elements;return n[0]=i[0],n[1]=i[1],n[2]=i[2],n[3]=i[3],n[4]=i[4],n[5]=i[5],n[6]=i[6],n[7]=i[7],n[8]=i[8],n[9]=i[9],n[10]=i[10],n[11]=i[11],n[12]=i[12],n[13]=i[13],n[14]=i[14],n[15]=i[15],this}copyPosition(e){const n=this.elements,i=e.elements;return n[12]=i[12],n[13]=i[13],n[14]=i[14],this}setFromMatrix3(e){const n=e.elements;return this.set(n[0],n[3],n[6],0,n[1],n[4],n[7],0,n[2],n[5],n[8],0,0,0,0,1),this}extractBasis(e,n,i){return e.setFromMatrixColumn(this,0),n.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this}makeBasis(e,n,i){return this.set(e.x,n.x,i.x,0,e.y,n.y,i.y,0,e.z,n.z,i.z,0,0,0,0,1),this}extractRotation(e){const n=this.elements,i=e.elements,r=1/v3.setFromMatrixColumn(e,0).length(),s=1/v3.setFromMatrixColumn(e,1).length(),o=1/v3.setFromMatrixColumn(e,2).length();return n[0]=i[0]*r,n[1]=i[1]*r,n[2]=i[2]*r,n[3]=0,n[4]=i[4]*s,n[5]=i[5]*s,n[6]=i[6]*s,n[7]=0,n[8]=i[8]*o,n[9]=i[9]*o,n[10]=i[10]*o,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromEuler(e){const n=this.elements,i=e.x,r=e.y,s=e.z,o=Math.cos(i),a=Math.sin(i),l=Math.cos(r),u=Math.sin(r),c=Math.cos(s),h=Math.sin(s);if(e.order==="XYZ"){const f=o*c,m=o*h,g=a*c,v=a*h;n[0]=l*c,n[4]=-l*h,n[8]=u,n[1]=m+g*u,n[5]=f-v*u,n[9]=-a*l,n[2]=v-f*u,n[6]=g+m*u,n[10]=o*l}else if(e.order==="YXZ"){const f=l*c,m=l*h,g=u*c,v=u*h;n[0]=f+v*a,n[4]=g*a-m,n[8]=o*u,n[1]=o*h,n[5]=o*c,n[9]=-a,n[2]=m*a-g,n[6]=v+f*a,n[10]=o*l}else if(e.order==="ZXY"){const f=l*c,m=l*h,g=u*c,v=u*h;n[0]=f-v*a,n[4]=-o*h,n[8]=g+m*a,n[1]=m+g*a,n[5]=o*c,n[9]=v-f*a,n[2]=-o*u,n[6]=a,n[10]=o*l}else if(e.order==="ZYX"){const f=o*c,m=o*h,g=a*c,v=a*h;n[0]=l*c,n[4]=g*u-m,n[8]=f*u+v,n[1]=l*h,n[5]=v*u+f,n[9]=m*u-g,n[2]=-u,n[6]=a*l,n[10]=o*l}else if(e.order==="YZX"){const f=o*l,m=o*u,g=a*l,v=a*u;n[0]=l*c,n[4]=v-f*h,n[8]=g*h+m,n[1]=h,n[5]=o*c,n[9]=-a*c,n[2]=-u*c,n[6]=m*h+g,n[10]=f-v*h}else if(e.order==="XZY"){const f=o*l,m=o*u,g=a*l,v=a*u;n[0]=l*c,n[4]=-h,n[8]=u*c,n[1]=f*h+v,n[5]=o*c,n[9]=m*h-g,n[2]=g*h-m,n[6]=a*c,n[10]=v*h+f}return n[3]=0,n[7]=0,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromQuaternion(e){return this.compose(Oee,e,Uee)}lookAt(e,n,i){const r=this.elements;return Vs.subVectors(e,n),Vs.lengthSq()===0&&(Vs.z=1),Vs.normalize(),zu.crossVectors(i,Vs),zu.lengthSq()===0&&(Math.abs(i.z)===1?Vs.x+=1e-4:Vs.z+=1e-4,Vs.normalize(),zu.crossVectors(i,Vs)),zu.normalize(),Qp.crossVectors(Vs,zu),r[0]=zu.x,r[4]=Qp.x,r[8]=Vs.x,r[1]=zu.y,r[5]=Qp.y,r[9]=Vs.y,r[2]=zu.z,r[6]=Qp.z,r[10]=Vs.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){const i=e.elements,r=n.elements,s=this.elements,o=i[0],a=i[4],l=i[8],u=i[12],c=i[1],h=i[5],f=i[9],m=i[13],g=i[2],v=i[6],_=i[10],A=i[14],y=i[3],q=i[7],E=i[11],T=i[15],C=r[0],I=r[4],R=r[8],M=r[12],b=r[1],D=r[5],z=r[9],O=r[13],W=r[2],$=r[6],K=r[10],Y=r[14],B=r[3],U=r[7],F=r[11],k=r[15];return s[0]=o*C+a*b+l*W+u*B,s[4]=o*I+a*D+l*$+u*U,s[8]=o*R+a*z+l*K+u*F,s[12]=o*M+a*O+l*Y+u*k,s[1]=c*C+h*b+f*W+m*B,s[5]=c*I+h*D+f*$+m*U,s[9]=c*R+h*z+f*K+m*F,s[13]=c*M+h*O+f*Y+m*k,s[2]=g*C+v*b+_*W+A*B,s[6]=g*I+v*D+_*$+A*U,s[10]=g*R+v*z+_*K+A*F,s[14]=g*M+v*O+_*Y+A*k,s[3]=y*C+q*b+E*W+T*B,s[7]=y*I+q*D+E*$+T*U,s[11]=y*R+q*z+E*K+T*F,s[15]=y*M+q*O+E*Y+T*k,this}multiplyScalar(e){const n=this.elements;return n[0]*=e,n[4]*=e,n[8]*=e,n[12]*=e,n[1]*=e,n[5]*=e,n[9]*=e,n[13]*=e,n[2]*=e,n[6]*=e,n[10]*=e,n[14]*=e,n[3]*=e,n[7]*=e,n[11]*=e,n[15]*=e,this}determinant(){const e=this.elements,n=e[0],i=e[4],r=e[8],s=e[12],o=e[1],a=e[5],l=e[9],u=e[13],c=e[2],h=e[6],f=e[10],m=e[14],g=e[3],v=e[7],_=e[11],A=e[15];return g*(+s*l*h-r*u*h-s*a*f+i*u*f+r*a*m-i*l*m)+v*(+n*l*m-n*u*f+s*o*f-r*o*m+r*u*c-s*l*c)+_*(+n*u*h-n*a*m-s*o*h+i*o*m+s*a*c-i*u*c)+A*(-r*a*c-n*l*h+n*a*f+r*o*h-i*o*f+i*l*c)}transpose(){const e=this.elements;let n;return n=e[1],e[1]=e[4],e[4]=n,n=e[2],e[2]=e[8],e[8]=n,n=e[6],e[6]=e[9],e[9]=n,n=e[3],e[3]=e[12],e[12]=n,n=e[7],e[7]=e[13],e[13]=n,n=e[11],e[11]=e[14],e[14]=n,this}setPosition(e,n,i){const r=this.elements;return e.isVector3?(r[12]=e.x,r[13]=e.y,r[14]=e.z):(r[12]=e,r[13]=n,r[14]=i),this}invert(){const e=this.elements,n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],u=e[7],c=e[8],h=e[9],f=e[10],m=e[11],g=e[12],v=e[13],_=e[14],A=e[15],y=h*_*u-v*f*u+v*l*m-a*_*m-h*l*A+a*f*A,q=g*f*u-c*_*u-g*l*m+o*_*m+c*l*A-o*f*A,E=c*v*u-g*h*u+g*a*m-o*v*m-c*a*A+o*h*A,T=g*h*l-c*v*l-g*a*f+o*v*f+c*a*_-o*h*_,C=n*y+i*q+r*E+s*T;if(C===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const I=1/C;return e[0]=y*I,e[1]=(v*f*s-h*_*s-v*r*m+i*_*m+h*r*A-i*f*A)*I,e[2]=(a*_*s-v*l*s+v*r*u-i*_*u-a*r*A+i*l*A)*I,e[3]=(h*l*s-a*f*s-h*r*u+i*f*u+a*r*m-i*l*m)*I,e[4]=q*I,e[5]=(c*_*s-g*f*s+g*r*m-n*_*m-c*r*A+n*f*A)*I,e[6]=(g*l*s-o*_*s-g*r*u+n*_*u+o*r*A-n*l*A)*I,e[7]=(o*f*s-c*l*s+c*r*u-n*f*u-o*r*m+n*l*m)*I,e[8]=E*I,e[9]=(g*h*s-c*v*s-g*i*m+n*v*m+c*i*A-n*h*A)*I,e[10]=(o*v*s-g*a*s+g*i*u-n*v*u-o*i*A+n*a*A)*I,e[11]=(c*a*s-o*h*s-c*i*u+n*h*u+o*i*m-n*a*m)*I,e[12]=T*I,e[13]=(c*v*r-g*h*r+g*i*f-n*v*f-c*i*_+n*h*_)*I,e[14]=(g*a*r-o*v*r-g*i*l+n*v*l+o*i*_-n*a*_)*I,e[15]=(o*h*r-c*a*r+c*i*l-n*h*l-o*i*f+n*a*f)*I,this}scale(e){const n=this.elements,i=e.x,r=e.y,s=e.z;return n[0]*=i,n[4]*=r,n[8]*=s,n[1]*=i,n[5]*=r,n[9]*=s,n[2]*=i,n[6]*=r,n[10]*=s,n[3]*=i,n[7]*=r,n[11]*=s,this}getMaxScaleOnAxis(){const e=this.elements,n=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],i=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(n,i,r))}makeTranslation(e,n,i){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,n,0,0,1,i,0,0,0,1),this}makeRotationX(e){const n=Math.cos(e),i=Math.sin(e);return this.set(1,0,0,0,0,n,-i,0,0,i,n,0,0,0,0,1),this}makeRotationY(e){const n=Math.cos(e),i=Math.sin(e);return this.set(n,0,i,0,0,1,0,0,-i,0,n,0,0,0,0,1),this}makeRotationZ(e){const n=Math.cos(e),i=Math.sin(e);return this.set(n,-i,0,0,i,n,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,n){const i=Math.cos(n),r=Math.sin(n),s=1-i,o=e.x,a=e.y,l=e.z,u=s*o,c=s*a;return this.set(u*o+i,u*a-r*l,u*l+r*a,0,u*a+r*l,c*a+i,c*l-r*o,0,u*l-r*a,c*l+r*o,s*l*l+i,0,0,0,0,1),this}makeScale(e,n,i){return this.set(e,0,0,0,0,n,0,0,0,0,i,0,0,0,0,1),this}makeShear(e,n,i,r,s,o){return this.set(1,i,s,0,e,1,o,0,n,r,1,0,0,0,0,1),this}compose(e,n,i){const r=this.elements,s=n._x,o=n._y,a=n._z,l=n._w,u=s+s,c=o+o,h=a+a,f=s*u,m=s*c,g=s*h,v=o*c,_=o*h,A=a*h,y=l*u,q=l*c,E=l*h,T=i.x,C=i.y,I=i.z;return r[0]=(1-(v+A))*T,r[1]=(m+E)*T,r[2]=(g-q)*T,r[3]=0,r[4]=(m-E)*C,r[5]=(1-(f+A))*C,r[6]=(_+y)*C,r[7]=0,r[8]=(g+q)*I,r[9]=(_-y)*I,r[10]=(1-(f+v))*I,r[11]=0,r[12]=e.x,r[13]=e.y,r[14]=e.z,r[15]=1,this}decompose(e,n,i){const r=this.elements;let s=v3.set(r[0],r[1],r[2]).length();const o=v3.set(r[4],r[5],r[6]).length(),a=v3.set(r[8],r[9],r[10]).length();this.determinant()<0&&(s=-s),e.x=r[12],e.y=r[13],e.z=r[14],ia.copy(this);const u=1/s,c=1/o,h=1/a;return ia.elements[0]*=u,ia.elements[1]*=u,ia.elements[2]*=u,ia.elements[4]*=c,ia.elements[5]*=c,ia.elements[6]*=c,ia.elements[8]*=h,ia.elements[9]*=h,ia.elements[10]*=h,n.setFromRotationMatrix(ia),i.x=s,i.y=o,i.z=a,this}makePerspective(e,n,i,r,s,o,a=Ja){const l=this.elements,u=2*s/(n-e),c=2*s/(i-r),h=(n+e)/(n-e),f=(i+r)/(i-r);let m,g;if(a===Ja)m=-(o+s)/(o-s),g=-2*o*s/(o-s);else if(a===Dd)m=-o/(o-s),g=-o*s/(o-s);else throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+a);return l[0]=u,l[4]=0,l[8]=h,l[12]=0,l[1]=0,l[5]=c,l[9]=f,l[13]=0,l[2]=0,l[6]=0,l[10]=m,l[14]=g,l[3]=0,l[7]=0,l[11]=-1,l[15]=0,this}makeOrthographic(e,n,i,r,s,o,a=Ja){const l=this.elements,u=1/(n-e),c=1/(i-r),h=1/(o-s),f=(n+e)*u,m=(i+r)*c;let g,v;if(a===Ja)g=(o+s)*h,v=-2*h;else if(a===Dd)g=s*h,v=-1*h;else throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+a);return l[0]=2*u,l[4]=0,l[8]=0,l[12]=-f,l[1]=0,l[5]=2*c,l[9]=0,l[13]=-m,l[2]=0,l[6]=0,l[10]=v,l[14]=-g,l[3]=0,l[7]=0,l[11]=0,l[15]=1,this}equals(e){const n=this.elements,i=e.elements;for(let r=0;r<16;r++)if(n[r]!==i[r])return!1;return!0}fromArray(e,n=0){for(let i=0;i<16;i++)this.elements[i]=e[i+n];return this}toArray(e=[],n=0){const i=this.elements;return e[n]=i[0],e[n+1]=i[1],e[n+2]=i[2],e[n+3]=i[3],e[n+4]=i[4],e[n+5]=i[5],e[n+6]=i[6],e[n+7]=i[7],e[n+8]=i[8],e[n+9]=i[9],e[n+10]=i[10],e[n+11]=i[11],e[n+12]=i[12],e[n+13]=i[13],e[n+14]=i[14],e[n+15]=i[15],e}}const v3=new L,ia=new st,Oee=new L(0,0,0),Uee=new L(1,1,1),zu=new L,Qp=new L,Vs=new L,Ib=new st,Mb=new rs;class L4{constructor(e=0,n=0,i=0,r=L4.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=n,this._z=i,this._order=r}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 order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,n,i,r=this._order){return this._x=e,this._y=n,this._z=i,this._order=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,n=this._order,i=!0){const r=e.elements,s=r[0],o=r[4],a=r[8],l=r[1],u=r[5],c=r[9],h=r[2],f=r[6],m=r[10];switch(n){case"XYZ":this._y=Math.asin(ci(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-c,m),this._z=Math.atan2(-o,s)):(this._x=Math.atan2(f,u),this._z=0);break;case"YXZ":this._x=Math.asin(-ci(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(a,m),this._z=Math.atan2(l,u)):(this._y=Math.atan2(-h,s),this._z=0);break;case"ZXY":this._x=Math.asin(ci(f,-1,1)),Math.abs(f)<.9999999?(this._y=Math.atan2(-h,m),this._z=Math.atan2(-o,u)):(this._y=0,this._z=Math.atan2(l,s));break;case"ZYX":this._y=Math.asin(-ci(h,-1,1)),Math.abs(h)<.9999999?(this._x=Math.atan2(f,m),this._z=Math.atan2(l,s)):(this._x=0,this._z=Math.atan2(-o,u));break;case"YZX":this._z=Math.asin(ci(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-c,u),this._y=Math.atan2(-h,s)):(this._x=0,this._y=Math.atan2(a,m));break;case"XZY":this._z=Math.asin(-ci(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(f,u),this._y=Math.atan2(a,s)):(this._x=Math.atan2(-c,m),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+n)}return this._order=n,i===!0&&this._onChangeCallback(),this}setFromQuaternion(e,n,i){return Ib.makeRotationFromQuaternion(e),this.setFromRotationMatrix(Ib,n,i)}setFromVector3(e,n=this._order){return this.set(e.x,e.y,e.z,n)}reorder(e){return Mb.setFromEuler(this),this.setFromQuaternion(Mb,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}L4.DEFAULT_ORDER="XYZ";class u1{constructor(){this.mask=1}set(e){this.mask=(1<<e|0)>>>0}enable(e){this.mask|=1<<e|0}enableAll(){this.mask=-1}toggle(e){this.mask^=1<<e|0}disable(e){this.mask&=~(1<<e|0)}disableAll(){this.mask=0}test(e){return(this.mask&e.mask)!==0}isEnabled(e){return(this.mask&(1<<e|0))!==0}}let zee=0;const Rb=new L,y3=new rs,Ol=new st,Hp=new L,wf=new L,Vee=new L,Gee=new rs,bb=new L(1,0,0),Pb=new L(0,1,0),Bb=new L(0,0,1),Qee={type:"added"},Db={type:"removed"};class mn extends $o{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:zee++}),this.uuid=Zs(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=mn.DEFAULT_UP.clone();
vendor: 4,951 bytes, line 62
62const e=new L,n=new L4,i=new rs,r=new L(1,1,1);function s(){i.setFromEuler(n,!1)}function o(){n.setFromQuaternion(i,void 0,!1)}n._onChange(s),i._onChange(o),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:e},rotation:{configurable:!0,enumerable:!0,value:n},quaternion:{configurable:!0,enumerable:!0,value:i},scale:{configurable:!0,enumerable:!0,value:r},modelViewMatrix:{value:new st},normalMatrix:{value:new $t}}),this.matrix=new st,this.matrixWorld=new st,this.matrixAutoUpdate=mn.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.matrixWorldAutoUpdate=mn.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.layers=new u1,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,n){this.quaternion.setFromAxisAngle(e,n)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,n){return y3.setFromAxisAngle(e,n),this.quaternion.multiply(y3),this}rotateOnWorldAxis(e,n){return y3.setFromAxisAngle(e,n),this.quaternion.premultiply(y3),this}rotateX(e){return this.rotateOnAxis(bb,e)}rotateY(e){return this.rotateOnAxis(Pb,e)}rotateZ(e){return this.rotateOnAxis(Bb,e)}translateOnAxis(e,n){return Rb.copy(e).applyQuaternion(this.quaternion),this.position.add(Rb.multiplyScalar(n)),this}translateX(e){return this.translateOnAxis(bb,e)}translateY(e){return this.translateOnAxis(Pb,e)}translateZ(e){return this.translateOnAxis(Bb,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(Ol.copy(this.matrixWorld).invert())}lookAt(e,n,i){e.isVector3?Hp.copy(e):Hp.set(e,n,i);const r=this.parent;this.updateWorldMatrix(!0,!1),wf.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Ol.lookAt(wf,Hp,this.up):Ol.lookAt(Hp,wf,this.up),this.quaternion.setFromRotationMatrix(Ol),r&&(Ol.extractRotation(r.matrixWorld),y3.setFromRotationMatrix(Ol),this.quaternion.premultiply(y3.invert()))}add(e){if(arguments.length>1){for(let n=0;n<arguments.length;n++)this.add(arguments[n]);return this}return e===this?(console.error("THREE.Object3D.add: object can't be added as a child of itself.",e),this):(e&&e.isObject3D?(e.parent!==null&&e.parent.remove(e),e.parent=this,this.children.push(e),e.dispatchEvent(Qee)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",e),this)}remove(e){if(arguments.length>1){for(let i=0;i<arguments.length;i++)this.remove(arguments[i]);return this}const n=this.children.indexOf(e);return n!==-1&&(e.parent=null,this.children.splice(n,1),e.dispatchEvent(Db)),this}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}clear(){for(let e=0;e<this.children.length;e++){const n=this.children[e];n.parent=null,n.dispatchEvent(Db)}return this.children.length=0,this}attach(e){return this.updateWorldMatrix(!0,!1),Ol.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),Ol.multiply(e.parent.matrixWorld)),e.applyMatrix4(Ol),this.add(e),e.updateWorldMatrix(!1,!0),this}getObjectById(e){return this.getObjectByProperty("id",e)}getObjectByName(e){return this.getObjectByProperty("name",e)}getObjectByProperty(e,n){if(this[e]===n)return this;for(let i=0,r=this.children.length;i<r;i++){const o=this.children[i].getObjectByProperty(e,n);if(o!==void 0)return o}}getObjectsByProperty(e,n){let i=[];this[e]===n&&i.push(this);for(let r=0,s=this.children.length;r<s;r++){const o=this.children[r].getObjectsByProperty(e,n);o.length>0&&(i=i.concat(o))}return i}getWorldPosition(e){return this.updateWorldMatrix(!0,!1),e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(wf,e,Vee),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(wf,Gee,e),e}getWorldDirection(e){this.updateWorldMatrix(!0,!1);const n=this.matrixWorld.elements;return e.set(n[8],n[9],n[10]).normalize()}raycast(){}traverse(e){e(this);const n=this.children;for(let i=0,r=n.length;i<r;i++)n[i].traverse(e)}traverseVisible(e){if(this.visible===!1)return;e(this);const n=this.children;for(let i=0,r=n.length;i<r;i++)n[i].traverseVisible(e)}traverseAncestors(e){const n=this.parent;n!==null&&(e(n),n.traverseAncestors(e))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||e)&&(this.parent===null?this.matrixWorld.copy(this.matrix
vendor: 9,232 bytes, line 62
62):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,e=!0);const n=this.children;for(let i=0,r=n.length;i<r;i++){const s=n[i];(s.matrixWorldAutoUpdate===!0||e===!0)&&s.updateMatrixWorld(e)}}updateWorldMatrix(e,n){const i=this.parent;if(e===!0&&i!==null&&i.matrixWorldAutoUpdate===!0&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),n===!0){const r=this.children;for(let s=0,o=r.length;s<o;s++){const a=r[s];a.matrixWorldAutoUpdate===!0&&a.updateWorldMatrix(!1,!0)}}}toJSON(e){const n=e===void 0||typeof e=="string",i={};n&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},i.metadata={version:4.6,type:"Object",generator:"Object3D.toJSON"});const r={};r.uuid=this.uuid,r.type=this.type,this.name!==""&&(r.name=this.name),this.castShadow===!0&&(r.castShadow=!0),this.receiveShadow===!0&&(r.receiveShadow=!0),this.visible===!1&&(r.visible=!1),this.frustumCulled===!1&&(r.frustumCulled=!1),this.renderOrder!==0&&(r.renderOrder=this.renderOrder),Object.keys(this.userData).length>0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.matrixAutoUpdate===!1&&(r.matrixAutoUpdate=!1),this.isInstancedMesh&&(r.type="InstancedMesh",r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON()));function s(a,l){return a[l.uuid]===void 0&&(a[l.uuid]=l.toJSON(e)),l.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=s(e.geometries,this.geometry);const a=this.geometry.parameters;if(a!==void 0&&a.shapes!==void 0){const l=a.shapes;if(Array.isArray(l))for(let u=0,c=l.length;u<c;u++){const h=l[u];s(e.shapes,h)}else s(e.shapes,l)}}if(this.isSkinnedMesh&&(r.bindMode=this.bindMode,r.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(s(e.skeletons,this.skeleton),r.skeleton=this.skeleton.uuid)),this.material!==void 0)if(Array.isArray(this.material)){const a=[];for(let l=0,u=this.material.length;l<u;l++)a.push(s(e.materials,this.material[l]));r.material=a}else r.material=s(e.materials,this.material);if(this.children.length>0){r.children=[];for(let a=0;a<this.children.length;a++)r.children.push(this.children[a].toJSON(e).object)}if(this.animations.length>0){r.animations=[];for(let a=0;a<this.animations.length;a++){const l=this.animations[a];r.animations.push(s(e.animations,l))}}if(n){const a=o(e.geometries),l=o(e.materials),u=o(e.textures),c=o(e.images),h=o(e.shapes),f=o(e.skeletons),m=o(e.animations),g=o(e.nodes);a.length>0&&(i.geometries=a),l.length>0&&(i.materials=l),u.length>0&&(i.textures=u),c.length>0&&(i.images=c),h.length>0&&(i.shapes=h),f.length>0&&(i.skeletons=f),m.length>0&&(i.animations=m),g.length>0&&(i.nodes=g)}return i.object=r,i;function o(a){const l=[];for(const u in a){const c=a[u];delete c.metadata,l.push(c)}return l}}clone(e){return new this.constructor().copy(this,e)}copy(e,n=!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.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,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.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),n===!0)for(let i=0;i<e.children.length;i++){const r=e.children[i];this.add(r.clone())}return this}}mn.DEFAULT_UP=new L(0,1,0);mn.DEFAULT_MATRIX_AUTO_UPDATE=!0;mn.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;const ra=new L,Ul=new L,_y=new L,zl=new L,q3=new L,_3=new L,Lb=new L,xy=new L,Ey=new L,Sy=new L;let Wp=!1;class As{constructor(e=new L,n=new L,i=new L){this.a=e,this.b=n,this.c=i}static getNormal(e,n,i,r){r.subVectors(i,n),ra.subVectors(e,n),r.cross(ra);const s=r.lengthSq();return s>0?r.multiplyScalar(1/Math.sqrt(s)):r.set(0,0,0)}static getBarycoord(e,n,i,r,s){ra.subVectors(r,n),Ul.subVectors(i,n),_y.subVectors(e,n);const o=ra.dot(ra),a=ra.dot(Ul),l=ra.dot(_y),u=Ul.dot(Ul),c=Ul.dot(_y),h=o*u-a*a;if(h===0)return s.set(-2,-1,-1);const f=1/h,m=(u*l-a*c)*f,g=(o*c-a*l)*f;return s.set(1-m-g,g,m)}static containsPoint(e,n,i,r){return this.getBarycoord(e,n,i,r,zl),zl.x>=0&&zl.y>=0&&zl.x+zl.y<=1}static getUV(e,n,i,r,s,o,a,l){return Wp===!1&&(console.warn("THREE.Triangle.getUV() has been renamed to THREE.Triangle.getInterpolation()."),Wp=!0),this.getInterpolation(e,n,i,r,s,o,a,l)}static getInterpolation(e,n,i,r,s,o,a,l){return this.getBarycoord(e,n,i,r,zl),l.setScalar(0),l.addScaledVector(s,zl.x),l.addScaledVector(o,zl.y),l.addScaledVector(a,zl.z),l}static isFrontFacing(e,n,i,r){return ra.subVectors(i,n),Ul.subVectors(e,n),ra.cross(Ul).dot(r)<0}set(e,n,i){return this.a.copy(e),this.b.copy(n),this.c.copy(i),this}setFromPointsAndIndices(e,n,i,r){return this.a.copy(e[n]),this.b.copy(e[i]),this.c.copy(e[r]),this}setFromAttributeAndIndices(e,n,i,r){return this.a.fromBufferAttribute(e,n),this.b.fromBufferAttribute(e,i),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 ra.subVectors(this.c,this.b),Ul.subVectors(this.a,this.b),ra.cross(Ul).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return As.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,n){return As.getBarycoord(e,this.a,this.b,this.c,n)}getUV(e,n,i,r,s){return Wp===!1&&(console.warn("THREE.Triangle.getUV() has been renamed to THREE.Triangle.getInterpolation()."),Wp=!0),As.getInterpolation(e,this.a,this.b,this.c,n,i,r,s)}getInterpolation(e,n,i,r,s){return As.getInterpolation(e,this.a,this.b,this.c,n,i,r,s)}containsPoint(e){return As.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return As.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,n){const i=this.a,r=this.b,s=this.c;let o,a;q3.subVectors(r,i),_3.subVectors(s,i),xy.subVectors(e,i);const l=q3.dot(xy),u=_3.dot(xy);if(l<=0&&u<=0)return n.copy(i);Ey.subVectors(e,r);const c=q3.dot(Ey),h=_3.dot(Ey);if(c>=0&&h<=c)return n.copy(r);const f=l*h-c*u;if(f<=0&&l>=0&&c<=0)return o=l/(l-c),n.copy(i).addScaledVector(q3,o);Sy.subVectors(e,s);const m=q3.dot(Sy),g=_3.dot(Sy);if(g>=0&&m<=g)return n.copy(s);const v=m*u-l*g;if(v<=0&&u>=0&&g<=0)return a=u/(u-g),n.copy(i).addScaledVector(_3,a);const _=c*g-m*h;if(_<=0&&h-c>=0&&m-g>=0)return Lb.subVectors(s,r),a=(h-c)/(h-c+(m-g)),n.copy(r).addScaledVector(Lb,a);const A=1/(_+v+f);return o=v*A,a=f*A,n.copy(i).addScaledVector(q3,o).addScaledVector(_3,a)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let Hee=0;class Ji extends $o{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Hee++}),this.uuid=Zs(),this.name="",this.type="Material",this.blending=sl,this.side=gl,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=vd,this.blendDst=yd,this.blendEquation=Ws,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=qd,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=LU,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=S8,this.stencilZFail=S8,this.stencilZPass=S8,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(const n in e){const i=e[n];if(i===void 0){console.warn(`THREE.Material: parameter '${n}' has value of undefined.`);continue}const r=this[n];if(r===void 0){console.warn(`THREE.Material: '${n}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(i):r&&r.isVector3&&i&&i.isVector3?r.copy(i):this[n]=i}}toJSON(e){const n=e===void 0||typeof e=="string";n&&(e={textures:{},images:{}});const i={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};
vendor: 7,924 bytes, line 62
62i.uuid=this.uuid,i.type=this.type,this.name!==""&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),this.roughness!==void 0&&(i.roughness=this.roughness),this.metalness!==void 0&&(i.metalness=this.metalness),this.sheen!==void 0&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),this.emissiveIntensity&&this.emissiveIntensity!==1&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(i.shininess=this.shininess),this.clearcoat!==void 0&&(i.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.iridescence!==void 0&&(i.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(i.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(i.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(i.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(i.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(e).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(e).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(e).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(e).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(e).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(i.combine=this.combine)),this.envMapIntensity!==void 0&&(i.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(i.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(i.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(i.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(i.size=this.size),this.shadowSide!==null&&(i.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(i.sizeAttenuation=this.sizeAttenuation),this.blending!==sl&&(i.blending=this.blending),this.side!==gl&&(i.side=this.side),this.vertexColors&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),this.transparent===!0&&(i.transparent=this.transparent),i.depthFunc=this.depthFunc,i.depthTest=this.depthTest,i.depthWrite=this.depthWrite,i.colorWrite=this.colorWrite,i.stencilWrite=this.stencilWrite,i.stencilWriteMask=this.stencilWriteMask,i.stencilFunc=this.stencilFunc,i.stencilRef=this.stencilRef,i.stencilFuncMask=this.stencilFuncMask,i.stencilFail=this.stencilFail,i.stencilZFail=this.stencilZFail,i.stencilZPass=this.stencilZPass,this.rotation!==void 0&&this.rotation!==0&&(i.rotation=this.rotation),this.polygonOffset===!0&&(i.polygonOffset=!0),this.polygonOffsetFactor!==0&&(i.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(i.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(i.linewidth=this.linewidth),this.dashSize!==void 0&&(i.dashSize=this.dashSize),this.gapSize!==void 0&&(i.gapSize=this.gapSize),this.scale!==void 0&&(i.scale=this.scale),this.dithering===!0&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),this.alphaHash===!0&&(i.alphaHash=this.alphaHash),this.alphaToCoverage===!0&&(i.alphaToCoverage=this.alphaToCoverage),this.premultipliedAlpha===!0&&(i.premultipliedAlpha=this.premultipliedAlpha),this.forceSinglePass===!0&&(i.forceSinglePass=this.forceSinglePass),this.wireframe===!0&&(i.wireframe=this.wireframe),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(i.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(i.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(i.flatShading=this.flatShading),this.visible===!1&&(i.visible=!1),this.toneMapped===!1&&(i.toneMapped=!1),this.fog===!1&&(i.fog=!1),Object.keys(this.userData).length>0&&(i.userData=this.userData);function r(s){const o=[];for(const a in s){const l=s[a];delete l.metadata,o.push(l)}return o}if(n){const s=r(e.textures),o=r(e.images);s.length>0&&(i.textures=s),o.length>0&&(i.images=o)}return i}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.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;const n=e.clippingPlanes;let i=null;if(n!==null){const r=n.length;i=new Array(r);for(let s=0;s!==r;++s)i[s]=n[s].clone()}return this.clippingPlanes=i,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipSh
vendor: 11,587 bytes, line 62
62adows,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.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++}}const $U={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},sa={h:0,s:0,l:0},$p={h:0,s:0,l:0};function Ty(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*6*(2/3-n):t}class Me{constructor(e,n,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,n,i)}set(e,n,i){if(n===void 0&&i===void 0){const r=e;r&&r.isColor?this.copy(r):typeof r=="number"?this.setHex(r):typeof r=="string"&&this.setStyle(r)}else this.setRGB(e,n,i);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,n=Ot){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,So.toWorkingColorSpace(this,n),this}setRGB(e,n,i,r=So.workingColorSpace){return this.r=e,this.g=n,this.b=i,So.toWorkingColorSpace(this,r),this}setHSL(e,n,i,r=So.workingColorSpace){if(e=VT(e,1),n=ci(n,0,1),i=ci(i,0,1),n===0)this.r=this.g=this.b=i;else{const s=i<=.5?i*(1+n):i+n-i*n,o=2*i-s;this.r=Ty(o,s,e+1/3),this.g=Ty(o,s,e),this.b=Ty(o,s,e-1/3)}return So.toWorkingColorSpace(this,r),this}setStyle(e,n=Ot){function i(s){s!==void 0&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(e)){let s;const o=r[1],a=r[2];switch(o){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return i(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,n);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return i(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,n);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return i(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,n);break;default:console.warn("THREE.Color: Unknown color model "+e)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(e)){const s=r[1],o=s.length;if(o===3)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,n);if(o===6)return this.setHex(parseInt(s,16),n);console.warn("THREE.Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,n);return this}setColorName(e,n=Ot){const i=$U[e.toLowerCase()];return i!==void 0?this.setHex(i,n):console.warn("THREE.Color: Unknown color "+e),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=w0(e.r),this.g=w0(e.g),this.b=w0(e.b),this}copyLinearToSRGB(e){return this.r=dy(e.r),this.g=dy(e.g),this.b=dy(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=Ot){return So.fromWorkingColorSpace(Rr.copy(this),e),Math.round(ci(Rr.r*255,0,255))*65536+Math.round(ci(Rr.g*255,0,255))*256+Math.round(ci(Rr.b*255,0,255))}getHexString(e=Ot){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,n=So.workingColorSpace){So.fromWorkingColorSpace(Rr.copy(this),n);const i=Rr.r,r=Rr.g,s=Rr.b,o=Math.max(i,r,s),a=Math.min(i,r,s);let l,u;const c=(a+o)/2;if(a===o)l=0,u=0;else{const h=o-a;switch(u=c<=.5?h/(o+a):h/(2-o-a),o){case i:l=(r-s)/h+(r<s?6:0);break;case r:l=(s-i)/h+2;break;case s:l=(i-r)/h+4;break}l/=6}return e.h=l,e.s=u,e.l=c,e}getRGB(e,n=So.workingColorSpace){return So.fromWorkingColorSpace(Rr.copy(this),n),e.r=Rr.r,e.g=Rr.g,e.b=Rr.b,e}getStyle(e=Ot){So.fromWorkingColorSpace(Rr.copy(this),e);const n=Rr.r,i=Rr.g,r=Rr.b;return e!==Ot?`color(${e} ${n.toFixed(3)} ${i.toFixed(3)} ${r.toFixed(3)})`:`rgb(${Math.round(n*255)},${Math.round(i*255)},${Math.round(r*255)})`}offsetHSL(e,n,i){return this.getHSL(sa),sa.h+=e,sa.s+=n,sa.l+=i,this.setHSL(sa.h,sa.s,sa.l),this}add(e){return this.r+=e.r,this.g+=e.g,this.b+=e.b,this}addColors(e,n){return this.r=e.r+n.r,this.g=e.g+n.g,this.b=e.b+n.b,this}addScalar(e){return this.r+=e,this.g+=e,this.b+=e,this}sub(e){return this.r=Math.max(0,this.r-e.r),this.g=Math.max(0,this.g-e.g),this.b=Math.max(0,this.b-e.b),this}multiply(e){return this.r*=e.r,this.g*=e.g,this.b*=e.b,this}multiplyScalar(e){return this.r*=e,this.g*=e,this.b*=e,this}lerp(e,n){return this.r+=(e.r-this.r)*n,this.g+=(e.g-this.g)*n,this.b+=(e.b-this.b)*n,this}lerpColors(e,n,i){return this.r=e.r+(n.r-e.r)*i,this.g=e.g+(n.g-e.g)*i,this.b=e.b+(n.b-e.b)*i,this}lerpHSL(e,n){this.getHSL(sa),e.getHSL($p);const i=I5(sa.h,$p.h,n),r=I5(sa.s,$p.s,n),s=I5(sa.l,$p.l,n);return this.setHSL(i,r,s),this}setFromVector3(e){return this.r=e.x,this.g=e.y,this.b=e.z,this}applyMatrix3(e){const n=this.r,i=this.g,r=this.b,s=e.elements;return this.r=s[0]*n+s[3]*i+s[6]*r,this.g=s[1]*n+s[4]*i+s[7]*r,this.b=s[2]*n+s[5]*i+s[8]*r,this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,n=0){return this.r=e[n],this.g=e[n+1],this.b=e[n+2],this}toArray(e=[],n=0){return e[n]=this.r,e[n+1]=this.g,e[n+2]=this.b,e}fromBufferAttribute(e,n){return this.r=e.getX(n),this.g=e.getY(n),this.b=e.getZ(n),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}}const Rr=new Me;Me.NAMES=$U;class Go extends Ji{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new Me(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.combine=P4,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.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}}const Xl=Wee();function Wee(){const t=new ArrayBuffer(4),e=new Float32Array(t),n=new Uint32Array(t),i=new Uint32Array(512),r=new Uint32Array(512);for(let l=0;l<256;++l){const u=l-127;u<-27?(i[l]=0,i[l|256]=32768,r[l]=24,r[l|256]=24):u<-14?(i[l]=1024>>-u-14,i[l|256]=1024>>-u-14|32768,r[l]=-u-1,r[l|256]=-u-1):u<=15?(i[l]=u+15<<10,i[l|256]=u+15<<10|32768,r[l]=13,r[l|256]=13):u<128?(i[l]=31744,i[l|256]=64512,r[l]=24,r[l|256]=24):(i[l]=31744,i[l|256]=64512,r[l]=13,r[l|256]=13)}const s=new Uint32Array(2048),o=new Uint32Array(64),a=new Uint32Array(64);for(let l=1;l<1024;++l){let u=l<<13,c=0;for(;!(u&8388608);)u<<=1,c-=8388608;u&=-8388609,c+=947912704,s[l]=u|c}for(let l=1024;l<2048;++l)s[l]=939524096+(l-1024<<13);for(let l=1;l<31;++l)o[l]=l<<23;o[31]=1199570944,o[32]=2147483648;for(let l=33;l<63;++l)o[l]=2147483648+(l-32<<23);o[63]=3347054592;for(let l=1;l<64;++l)l!==32&&(a[l]=1024);return{floatView:e,uint32View:n,baseTable:i,shiftTable:r,mantissaTable:s,exponentTable:o,offsetTable:a}}function ms(t){Math.abs(t)>65504&&console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."),t=ci(t,-65504,65504),Xl.floatView[0]=t;const e=Xl.uint32View[0],n=e>>23&511;return Xl.baseTable[n]+((e&8388607)>>Xl.shiftTable[n])}function n5(t){const e=t>>10;return Xl.uint32View[0]=Xl.mantissaTable[Xl.offsetTable[e]+(t&1023)]+Xl.exponentTable[e],Xl.floatView[0]}const $ee={toHalfFloat:ms,fromHalfFloat:n5},bi=new L,jp=new oe;class pn{constructor(e,n,i=!1){if(Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=n,this.count=e!==void 0?e.length/n:0,this.normalized=i,this.usage=Bd,this.updateRange={offset:0,count:-1},this.gpuType=kr,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}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,n,i){e*=this.itemSize,i*=n.itemSize;
vendor: 7,298 bytes, line 62
62for(let r=0,s=this.itemSize;r<s;r++)this.array[e+r]=n.array[i+r];return this}copyArray(e){return this.array.set(e),this}applyMatrix3(e){if(this.itemSize===2)for(let n=0,i=this.count;n<i;n++)jp.fromBufferAttribute(this,n),jp.applyMatrix3(e),this.setXY(n,jp.x,jp.y);else if(this.itemSize===3)for(let n=0,i=this.count;n<i;n++)bi.fromBufferAttribute(this,n),bi.applyMatrix3(e),this.setXYZ(n,bi.x,bi.y,bi.z);return this}applyMatrix4(e){for(let n=0,i=this.count;n<i;n++)bi.fromBufferAttribute(this,n),bi.applyMatrix4(e),this.setXYZ(n,bi.x,bi.y,bi.z);return this}applyNormalMatrix(e){for(let n=0,i=this.count;n<i;n++)bi.fromBufferAttribute(this,n),bi.applyNormalMatrix(e),this.setXYZ(n,bi.x,bi.y,bi.z);return this}transformDirection(e){for(let n=0,i=this.count;n<i;n++)bi.fromBufferAttribute(this,n),bi.transformDirection(e),this.setXYZ(n,bi.x,bi.y,bi.z);return this}set(e,n=0){return this.array.set(e,n),this}getComponent(e,n){let i=this.array[e*this.itemSize+n];return this.normalized&&(i=ys(i,this.array)),i}setComponent(e,n,i){return this.normalized&&(i=Qt(i,this.array)),this.array[e*this.itemSize+n]=i,this}getX(e){let n=this.array[e*this.itemSize];return this.normalized&&(n=ys(n,this.array)),n}setX(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize]=n,this}getY(e){let n=this.array[e*this.itemSize+1];return this.normalized&&(n=ys(n,this.array)),n}setY(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+1]=n,this}getZ(e){let n=this.array[e*this.itemSize+2];return this.normalized&&(n=ys(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+2]=n,this}getW(e){let n=this.array[e*this.itemSize+3];return this.normalized&&(n=ys(n,this.array)),n}setW(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+3]=n,this}setXY(e,n,i){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array)),this.array[e+0]=n,this.array[e+1]=i,this}setXYZ(e,n,i,r){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array)),this.array[e+0]=n,this.array[e+1]=i,this.array[e+2]=r,this}setXYZW(e,n,i,r,s){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array),s=Qt(s,this.array)),this.array[e+0]=n,this.array[e+1]=i,this.array[e+2]=r,this.array[e+3]=s,this}onUpload(e){return this.onUploadCallback=e,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){const e={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return this.name!==""&&(e.name=this.name),this.usage!==Bd&&(e.usage=this.usage),(this.updateRange.offset!==0||this.updateRange.count!==-1)&&(e.updateRange=this.updateRange),e}}class jee extends pn{constructor(e,n,i){super(new Int8Array(e),n,i)}}class Xee extends pn{constructor(e,n,i){super(new Uint8Array(e),n,i)}}class Yee extends pn{constructor(e,n,i){super(new Uint8ClampedArray(e),n,i)}}class Kee extends pn{constructor(e,n,i){super(new Int16Array(e),n,i)}}class HT extends pn{constructor(e,n,i){super(new Uint16Array(e),n,i)}}class Jee extends pn{constructor(e,n,i){super(new Int32Array(e),n,i)}}class j9 extends pn{constructor(e,n,i){super(new Uint32Array(e),n,i)}}class Zee extends pn{constructor(e,n,i){super(new Uint16Array(e),n,i),this.isFloat16BufferAttribute=!0}getX(e){let n=n5(this.array[e*this.itemSize]);return this.normalized&&(n=ys(n,this.array)),n}setX(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize]=ms(n),this}getY(e){let n=n5(this.array[e*this.itemSize+1]);return this.normalized&&(n=ys(n,this.array)),n}setY(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+1]=ms(n),this}getZ(e){let n=n5(this.array[e*this.itemSize+2]);return this.normalized&&(n=ys(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+2]=ms(n),this}getW(e){let n=n5(this.array[e*this.itemSize+3]);return this.normalized&&(n=ys(n,this.array)),n}setW(e,n){return this.normalized&&(n=Qt(n,this.array)),this.array[e*this.itemSize+3]=ms(n),this}setXY(e,n,i){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array)),this.array[e+0]=ms(n),this.array[e+1]=ms(i),this}setXYZ(e,n,i,r){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array)),this.array[e+0]=ms(n),this.array[e+1]=ms(i),this.array[e+2]=ms(r),this}setXYZW(e,n,i,r,s){return e*=this.itemSize,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array),s=Qt(s,this.array)),this.array[e+0]=ms(n),this.array[e+1]=ms(i),this.array[e+2]=ms(r),this.array[e+3]=ms(s),this}}class tt extends pn{constructor(e,n,i){super(new Float32Array(e),n,i)}}class ete extends pn{constructor(e,n,i){super(new Float64Array(e),n,i)}}let tte=0;const xo=new st,Cy=new mn,x3=new L,Gs=new Ta,If=new Ta,nr=new L;class Bt extends $o{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:tte++}),this.uuid=Zs(),this.name="",this.type="BufferGeometry",this.index=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(HU(e)?j9:HT)(e,1):this.index=e,this}getAttribute(e){return this.attributes[e]}setAttribute(e,n){return this.attributes[e]=n,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,n,i=0){this.groups.push({start:e,count:n,materialIndex:i})}clearGroups(){this.groups=[]}setDrawRange(e,n){this.drawRange.start=e,this.drawRange.count=n}applyMatrix4(e){const n=this.attributes.position;n!==void 0&&(n.applyMatrix4(e),n.needsUpdate=!0);const i=this.attributes.normal;if(i!==void 0){const s=new $t().getNormalMatrix(e);i.applyNormalMatrix(s),i.needsUpdate=!0}const 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}applyQuaternion(e){return xo.makeRotationFromQuaternion(e),this.applyMatrix4(xo),this}rotateX(e){return xo.makeRotationX(e),this.applyMatrix4(xo),this}rotateY(e){return xo.makeRotationY(e),this.applyMatrix4(xo),this}rotateZ(e){return xo.makeRotationZ(e),this.applyMatrix4(xo),this}translate(e,n,i){return xo.makeTranslation(e,n,i),this.applyMatrix4(xo),this}scale(e,n,i){return xo.makeScale(e,n,i),this.applyMatrix4(xo),this}lookAt(e){return Cy.lookAt(e),Cy.updateMatrix(),this.applyMatrix4(Cy.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(x3).negate(),this.translate(x3.x,x3.y,x3.z),this}setFromPoints(e){const n=[];for(let i=0,r=e.length;i<r;i++){const s=e[i];n.push(s.x,s.y,s.z||0)}return this.setAttribute("position",new tt(n,3)),this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new Ta);const e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set "mesh.frustumCulled" to "fal
62se".',this),this.boundingBox.set(new L(-1/0,-1/0,-1/0),new L(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),n)for(let i=0,r=n.length;i<r;i++){const s=n[i];Gs.setFromBufferAttribute(s),this.morphTargetsRelative?(nr.addVectors(this.boundingBox.min,Gs.min),this.boundingBox.expandByPoint(nr),nr.addVectors(this.boundingBox.max,Gs.max),this.boundingBox.expandByPoint(nr)):(this.boundingBox.expandByPoint(Gs.min),this.boundingBox.expandByPoint(Gs.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new jo);const e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set "mesh.frustumCulled" to "fal
62se".',this),this.boundingSphere.set(new L,1/0);return}if(e){const i=this.boundingSphere.center;if(Gs.setFromBufferAttribute(e),n)for(let s=0,o=n.length;s<o;s++){const a=n[s];If.setFromBufferAttribute(a),this.morphTargetsRelative?(nr.addVectors(Gs.min,If.min),Gs.expandByPoint(nr),nr.addVectors(Gs.max,If.max),Gs.expandByPoint(nr)):(Gs.expandByPoint(If.min),Gs.expandByPoint(If.max))}Gs.getCenter(i);let r=0;for(let s=0,o=e.count;s<o;s++)nr.fromBufferAttribute(e,s),r=Math.max(r,i.distanceToSquared(nr));if(n)for(let s=0,o=n.length;s<o;s++){const a=n[s],l=this.morphTargetsRelative;for(let u=0,c=a.count;u<c;u++)nr.fromBufferAttribute(a,u),l&&(x3.fromBufferAttribute(e,u),nr.add(x3)),r=Math.max(r,i.distanceToSquared(nr))}this.boundingSphere.radius=Math.sqrt(r),isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}}computeTangents(){const e=this.index,n=this.attributes;if(e===null||n.position===void 0||n.normal===void 0||n.uv===void 0){console.error("THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");return}const i=e.array,r=n.position.array,s=n.normal.array,o=n.uv.array,a=r.length/3;this.hasAttribute("tangent")===!1&&this.setAttribute("tangent",new pn(new Float32Array(4*a),4));const l=this.getAttribute("tangent").array,u=[],c=[];for(let b=0;b<a;b++)u[b]=new L,c[b]=new L;const h=new L,f=new L,m=new L,g=new oe,v=new oe,_=new oe,A=new L,y=new L;function q(b,D,z){h.fromArray(r,b*3),f.fromArray(r,D*3),m.fromArray(r,z*3),g.fromArray(o,b*2),v.fromArray(o,D*2),_.fromArray(o,z*2),f.sub(h),m.sub(h),v.sub(g),_.sub(g);const O=1/(v.x*_.y-_.x*v.y);isFinite(O)&&(A.copy(f).multiplyScalar(_.y).addScaledVector(m,-v.y).multiplyScalar(O),y.copy(m).multiplyScalar(v.x).addScaledVector(f,-_.x).multiplyScalar(O),u[b].add(A),u[D].add(A),u[z].add(A),c[b].add(y),c[D].add(y),c[z].add(y))}let E=this.groups;E.length===0&&(E=[{start:0,count:i.length}]);for(let b=0,D=E.length;b<D;++b){const z=E[b],O=z.start,W=z.count;for(let $=O,K=O+W;$<K;$+=3)q(i[$+0],i[$+1],i[$+2])}const T=new L,C=new L,I=new L,R=new L;function M(b){I.fromArray(s,b*3),R.copy(I);const D=u[b];T.copy(D),T.sub(I.multiplyScalar(I.dot(D))).normalize(),C.crossVectors(R,D);const O=C.dot(c[b])<0?-1:1;l[b*4]=T.x,l[b*4+1]=T.y,l[b*4+2]=T.z,l[b*4+3]=O}for(let b=0,D=E.length;b<D;++b){const z=E[b],O=z.start,W=z.count;for(let $=O,K=O+W;$<K;$+=3)M(i[$+0]),M(i[$+1]),M(i[$+2])}}computeVertexNormals(){const e=this.index,n=this.getAttribute("position");if(n!==void 0){let i=this.getAttribute("normal");if(i===void 0)i=new pn(new Float32Array(n.count*3),3),this.setAttribute("normal",i);else for(let f=0,m=i.count;f<m;f++)i.setXYZ(f,0,0,0);const r=new L,s=new L,o=new L,a=new L,l=new L,u=new L,c=new L,h=new L;if(e)for(let f=0,m=e.count;f<m;f+=3){const g=e.getX(f+0),v=e.getX(f+1),_=e.getX(f+2);r.fromBufferAttribute(n,g),s.fromBufferAttribute(n,v),o.fromBufferAttribute(n,_),c.subVectors(o,s),h.subVectors(r,s),c.cross(h),a.fromBufferAttribute(i,g),l.fromBufferAttribute(i,v),u.fromBufferAttribute(i,_),a.add(c),l.add(c),u.add(c),i.setXYZ(g,a.x,a.y,a.z),i.setXYZ(v,l.x,l.y,l.z),i.setXYZ(_,u.x,u.y,u.z)}else for(let f=0,m=n.count;f<m;f+=3)r.fromBufferAttribute(n,f+0),s.fromBufferAttribute(n,f+1),o.fromBufferAttribute(n,f+2),c.subVectors(o,s),h.subVectors(r,s),c.cross(h),i.setXYZ(f+0,c.x,c.y,c.z),i.setXYZ(f+1,c.x,c.y,c.z),i.setXYZ(f+2,c.x,c.y,c.z);this.normalizeNormals(),i.needsUpdate=!0}}normalizeNormals(){const e=this.attributes.normal;for(let n=0,i=e.count;n<i;n++)nr.fromBufferAttribute(e,n),nr.normalize(),e.setXYZ(n,nr.x,nr.y,nr.z)}toNonIndexed(){function e(a,l){const u=a.array,c=a.itemSize,h=a.normalized,f=new u.constructor(l.length*c);let m=0,g=0;for(let v=0,_=l.length;v<_;v++){a.isInterleavedBufferAttribute?m=l[v]*a.data.stride+a.offset:m=l[v]*c;for(let A=0;A<c;A++)f[g++]=u[m++]}return new pn(f,c,h)}if(this.index===null)return console.warn("THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed."),this;const n=new Bt,i=this.index.array,r=this.attributes;for(const a in r){const l=r[a],u=e(l,i);n.setAttribute(a,u)}const s=this.morphAttributes;for(const a in s){const l=[],u=s[a];for(let c=0,h=u.length;c<h;c++){const f=u[c],m=e(f,i);l.push(m)}n.morphAttributes[a]=l}n.morphTargetsRelative=this.morphTargetsRelative;const o=this.groups;for(let a=0,l=o.length;a<l;a++){const u=o[a];n.addGroup(u.start,u.count,u.materialIndex)}return n}toJSON(){const e={metadata:{version:4.6,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};
vendor: 4,099 bytes, line 62
62if(e.uuid=this.uuid,e.type=this.type,this.name!==""&&(e.name=this.name),Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0){const l=this.parameters;for(const u in l)l[u]!==void 0&&(e[u]=l[u]);return e}e.data={attributes:{}};const n=this.index;n!==null&&(e.data.index={type:n.array.constructor.name,array:Array.prototype.slice.call(n.array)});const i=this.attributes;for(const l in i){const u=i[l];e.data.attributes[l]=u.toJSON(e.data)}const r={};let s=!1;for(const l in this.morphAttributes){const u=this.morphAttributes[l],c=[];for(let h=0,f=u.length;h<f;h++){const m=u[h];c.push(m.toJSON(e.data))}c.length>0&&(r[l]=c,s=!0)}s&&(e.data.morphAttributes=r,e.data.morphTargetsRelative=this.morphTargetsRelative);const o=this.groups;o.length>0&&(e.data.groups=JSON.parse(JSON.stringify(o)));const a=this.boundingSphere;return a!==null&&(e.data.boundingSphere={center:a.center.toArray(),radius:a.radius}),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;const n={};this.name=e.name;const i=e.index;i!==null&&this.setIndex(i.clone(n));const r=e.attributes;for(const u in r){const c=r[u];this.setAttribute(u,c.clone(n))}const s=e.morphAttributes;for(const u in s){const c=[],h=s[u];for(let f=0,m=h.length;f<m;f++)c.push(h[f].clone(n));this.morphAttributes[u]=c}this.morphTargetsRelative=e.morphTargetsRelative;const o=e.groups;for(let u=0,c=o.length;u<c;u++){const h=o[u];this.addGroup(h.start,h.count,h.materialIndex)}const a=e.boundingBox;a!==null&&(this.boundingBox=a.clone());const l=e.boundingSphere;return l!==null&&(this.boundingSphere=l.clone()),this.drawRange.start=e.drawRange.start,this.drawRange.count=e.drawRange.count,this.userData=e.userData,this}dispose(){this.dispatchEvent({type:"dispose"})}}const Nb=new st,_h=new I2,Xp=new jo,kb=new L,E3=new L,S3=new L,T3=new L,wy=new L,Yp=new L,Kp=new oe,Jp=new oe,Zp=new oe,Fb=new L,Ob=new L,Ub=new L,e7=new L,t7=new L;class yn extends mn{constructor(e=new Bt,n=new Go){super(),this.isMesh=!0,this.type="Mesh",this.geometry=e,this.material=n,this.updateMorphTargets()}copy(e,n){return super.copy(e,n),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=e.material,this.geometry=e.geometry,this}updateMorphTargets(){const n=this.geometry.morphAttributes,i=Object.keys(n);if(i.length>0){const r=n[i[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=r.length;s<o;s++){const a=r[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[a]=s}}}}getVertexPosition(e,n){const i=this.geometry,r=i.attributes.position,s=i.morphAttributes.position,o=i.morphTargetsRelative;n.fromBufferAttribute(r,e);const a=this.morphTargetInfluences;if(s&&a){Yp.set(0,0,0);for(let l=0,u=s.length;l<u;l++){const c=a[l],h=s[l];c!==0&&(wy.fromBufferAttribute(h,e),o?Yp.addScaledVector(wy,c):Yp.addScaledVector(wy.sub(n),c))}n.add(Yp)}return n}raycast(e,n){const i=this.geometry,r=this.material,s=this.matrixWorld;r!==void 0&&(i.boundingSphere===null&&i.computeBoundingSphere(),Xp.copy(i.boundingSphere),Xp.applyMatrix4(s),_h.copy(e.ray).recast(e.near),!(Xp.containsPoint(_h.origin)===!1&&(_h.intersectSphere(Xp,kb)===null||_h.origin.distanceToSquared(kb)>(e.far-e.near)**2))&&(Nb.copy(s).invert(),_h.copy(e.ray).applyMatrix4(Nb),!(i.boundingBox!==null&&_h.intersectsBox(i.boundingBox)===!1)&&this._computeIntersections(e,n,_h)))}_computeIntersections(e,n,i){let r;const s=this.geometry,o=this.material,a=s.index,l=s.attributes.position,u=s.attributes.uv,c=s.attributes.uv1,h=s.attributes.normal,f=s.groups,m=s.drawRange;if(a!==null)if(Array.isArray(o))for(let g=0,v=f.length;g<v;g++){const _=f[g],A=o[_.materialIndex],y=Math.max(_.start,m.start),q=Math.min(a.count,Math.min(_.start+_.count,m.start+m.count));for(let E=y,T=q;E<T;E+=3){const C=a.getX(E),I=a.getX(E+1),R=a.getX(E+2);
vendor: 7,516 bytes, lines 62-66
62r=n7(this,A,e,i,u,c,h,C,I,R),r&&(r.faceIndex=Math.floor(E/3),r.face.materialIndex=_.materialIndex,n.push(r))}}else{const g=Math.max(0,m.start),v=Math.min(a.count,m.start+m.count);for(let _=g,A=v;_<A;_+=3){const y=a.getX(_),q=a.getX(_+1),E=a.getX(_+2);r=n7(this,o,e,i,u,c,h,y,q,E),r&&(r.faceIndex=Math.floor(_/3),n.push(r))}}else if(l!==void 0)if(Array.isArray(o))for(let g=0,v=f.length;g<v;g++){const _=f[g],A=o[_.materialIndex],y=Math.max(_.start,m.start),q=Math.min(l.count,Math.min(_.start+_.count,m.start+m.count));for(let E=y,T=q;E<T;E+=3){const C=E,I=E+1,R=E+2;r=n7(this,A,e,i,u,c,h,C,I,R),r&&(r.faceIndex=Math.floor(E/3),r.face.materialIndex=_.materialIndex,n.push(r))}}else{const g=Math.max(0,m.start),v=Math.min(l.count,m.start+m.count);for(let _=g,A=v;_<A;_+=3){const y=_,q=_+1,E=_+2;r=n7(this,o,e,i,u,c,h,y,q,E),r&&(r.faceIndex=Math.floor(_/3),n.push(r))}}}}function nte(t,e,n,i,r,s,o,a){let l;if(e.side===Fi?l=i.intersectTriangle(o,s,r,!0,a):l=i.intersectTriangle(r,s,o,e.side===gl,a),l===null)return null;t7.copy(a),t7.applyMatrix4(t.matrixWorld);const u=n.ray.origin.distanceTo(t7);return u<n.near||u>n.far?null:{distance:u,point:t7.clone(),object:t}}function n7(t,e,n,i,r,s,o,a,l,u){t.getVertexPosition(a,E3),t.getVertexPosition(l,S3),t.getVertexPosition(u,T3);const c=nte(t,e,n,i,E3,S3,T3,e7);if(c){r&&(Kp.fromBufferAttribute(r,a),Jp.fromBufferAttribute(r,l),Zp.fromBufferAttribute(r,u),c.uv=As.getInterpolation(e7,E3,S3,T3,Kp,Jp,Zp,new oe)),s&&(Kp.fromBufferAttribute(s,a),Jp.fromBufferAttribute(s,l),Zp.fromBufferAttribute(s,u),c.uv1=As.getInterpolation(e7,E3,S3,T3,Kp,Jp,Zp,new oe),c.uv2=c.uv1),o&&(Fb.fromBufferAttribute(o,a),Ob.fromBufferAttribute(o,l),Ub.fromBufferAttribute(o,u),c.normal=As.getInterpolation(e7,E3,S3,T3,Fb,Ob,Ub,new L),c.normal.dot(i.direction)>0&&c.normal.multiplyScalar(-1));const h={a,b:l,c:u,normal:new L,materialIndex:0};As.getNormal(E3,S3,T3,h.normal),c.face=h}return c}class Zc extends Bt{constructor(e=1,n=1,i=1,r=1,s=1,o=1){super(),this.type="BoxGeometry",this.parameters={width:e,height:n,depth:i,widthSegments:r,heightSegments:s,depthSegments:o};const a=this;r=Math.floor(r),s=Math.floor(s),o=Math.floor(o);const l=[],u=[],c=[],h=[];let f=0,m=0;g("z","y","x",-1,-1,i,n,e,o,s,0),g("z","y","x",1,-1,i,n,-e,o,s,1),g("x","z","y",1,1,e,i,n,r,o,2),g("x","z","y",1,-1,e,i,-n,r,o,3),g("x","y","z",1,-1,e,n,i,r,s,4),g("x","y","z",-1,-1,e,n,-i,r,s,5),this.setIndex(l),this.setAttribute("position",new tt(u,3)),this.setAttribute("normal",new tt(c,3)),this.setAttribute("uv",new tt(h,2));function g(v,_,A,y,q,E,T,C,I,R,M){const b=E/I,D=T/R,z=E/2,O=T/2,W=C/2,$=I+1,K=R+1;let Y=0,B=0;const U=new L;for(let F=0;F<K;F++){const k=F*D-O;for(let Q=0;Q<$;Q++){const ce=Q*b-z;U[v]=ce*y,U[_]=k*q,U[A]=W,u.push(U.x,U.y,U.z),U[v]=0,U[_]=0,U[A]=C>0?1:-1,c.push(U.x,U.y,U.z),h.push(Q/I),h.push(1-F/R),Y+=1}}for(let F=0;F<R;F++)for(let k=0;k<I;k++){const Q=f+k+$*F,ce=f+k+$*(F+1),ae=f+(k+1)+$*(F+1),ge=f+(k+1)+$*F;l.push(Q,ce,ge),l.push(ce,ae,ge),B+=6}a.addGroup(m,B,M),m+=B,f+=Y}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new Zc(e.width,e.height,e.depth,e.widthSegments,e.heightSegments,e.depthSegments)}}function Y0(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const r=t[n][i];r&&(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture||r.isQuaternion)?r.isRenderTargetTexture?(console.warn("UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms()."),e[n][i]=null):e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}}return e}function Jr(t){const e={};for(let n=0;n<t.length;n++){const i=Y0(t[n]);for(const r in i)e[r]=i[r]}return e}function ite(t){const e=[];for(let n=0;n<t.length;n++)e.push(t[n].clone());return e}function jU(t){return t.getRenderTarget()===null?t.outputColorSpace:va}const Kn={clone:Y0,merge:Jr};var rte=`void main() { 63 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 64}`,ste=`void main() { 65 gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 ); 66}`;class zt extends Ji{constructor(e){super(),this.isShaderMaterial=!0,this.type="ShaderMaterial",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=rte,this.fragmentShader=ste,this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.forceSinglePass=!0,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv1:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,e!==void 0&&this.setValues(e)}copy(e){return super.copy(e),this.fragmentShader=e.fragmentShader,this.vertexShader=e.vertexShader,this.uniforms=Y0(e.uniforms),this.uniformsGroups=ite(e.uniformsGroups),this.defines=Object.assign({},e.defines),this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.fog=e.fog,this.lights=e.lights,this.clipping=e.clipping,this.extensions=Object.assign({},e.extensions),this.glslVersion=e.glslVersion,this}toJSON(e){const n=super.toJSON(e);n.glslVersion=this.glslVersion,n.uniforms={};for(const r in this.uniforms){const o=this.uniforms[r].value;o&&o.isTexture?n.uniforms[r]={type:"t",value:o.toJSON(e).uuid}:o&&o.isColor?n.uniforms[r]={type:"c",value:o.getHex()}:o&&o.isVector2?n.uniforms[r]={type:"v2",value:o.toArray()}:o&&o.isVector3?n.uniforms[r]={type:"v3",value:o.toArray()}:o&&o.isVector4?n.uniforms[r]={type:"v4",value:o.toArray()}:o&&o.isMatrix3?n.uniforms[r]={type:"m3",value:o.toArray()}:o&&o.isMatrix4?n.uniforms[r]={type:"m4",value:o.toArray()}:n.uniforms[r]={value:o}}Object.keys(this.defines).length>0&&(n.defines=this.defines),n.vertexShader=this.vertexShader,n.fragmentShader=this.fragmentShader,n.lights=this.lights,n.clipping=this.clipping;const i={};for(const r in this.extensions)this.extensions[r]===!0&&(i[r]=!0);return Object.keys(i).length>0&&(n.extensions=i),n}}class M2 extends mn{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new st,this.projectionMatrix=new st,this.projectionMatrixInverse=new st,this.coordinateSystem=Ja}copy(e,n){return super.copy(e,n),this.matrixWorldInverse.copy(e.matrixWorldInverse),this.projectionMatrix.copy(e.projectionMatrix),this.projectionMatrixInverse.copy(e.projectionMatrixInverse),this.coordinateSystem=e.coordinateSystem,this}getWorldDirection(e){this.updateWorldMatrix(!0,!1);const n=this.matrixWorld.elements;return e.set(-n[8],-n[9],-n[10]).normalize()}updateMatrixWorld(e){super.updateMatrixWorld(e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(e,n){super.updateWorldMatrix(e,n),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}class Yn extends M2{constructor(e=50,n=1,i=.1,r=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=e,this.zoom=1,this.near=i,this.far=r,this.focus=10,this.aspect=n,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(e,n){return super.copy(e,n),this.fov=e.fov,this.zoom=e.zoom,this.near=e.near,this.far=e.far,this.focus=e.focus,this.aspect=e.aspect,this.view=e.view===null?null:Object.assign({},e.view),this.filmGauge=e.filmGauge,this.filmOffset=e.filmOffset,this}setFocalLength(e){const n=.5*this.getFilmHeight()/e;this.fov=X0*2*Math.atan(n),this.updateProjectionMatrix()}getFocalLength(){const e=Math.tan(l1*.5*this.fov);return .5*this.getFilmHeight()/e}
vendor: 3,737 bytes, line 66
66getEffectiveFOV(){return X0*2*Math.atan(Math.tan(l1*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(e,n,i,r,s,o){this.aspect=e/n,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=n,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=this.near;let n=e*Math.tan(l1*.5*this.fov)/this.zoom,i=2*n,r=this.aspect*i,s=-.5*r;const o=this.view;if(this.view!==null&&this.view.enabled){const l=o.fullWidth,u=o.fullHeight;s+=o.offsetX*r/l,n-=o.offsetY*i/u,r*=o.width/l,i*=o.height/u}const a=this.filmOffset;a!==0&&(s+=e*a/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+r,n,n-i,e,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const n=super.toJSON(e);return n.object.fov=this.fov,n.object.zoom=this.zoom,n.object.near=this.near,n.object.far=this.far,n.object.focus=this.focus,n.object.aspect=this.aspect,this.view!==null&&(n.object.view=Object.assign({},this.view)),n.object.filmGauge=this.filmGauge,n.object.filmOffset=this.filmOffset,n}}const C3=-90,w3=1;class XU extends mn{constructor(e,n,i){super(),this.type="CubeCamera",this.renderTarget=i,this.coordinateSystem=null;const r=new Yn(C3,w3,e,n);r.layers=this.layers,this.add(r);const s=new Yn(C3,w3,e,n);s.layers=this.layers,this.add(s);const o=new Yn(C3,w3,e,n);o.layers=this.layers,this.add(o);const a=new Yn(C3,w3,e,n);a.layers=this.layers,this.add(a);const l=new Yn(C3,w3,e,n);l.layers=this.layers,this.add(l);const u=new Yn(C3,w3,e,n);u.layers=this.layers,this.add(u)}updateCoordinateSystem(){const e=this.coordinateSystem,n=this.children.concat(),[i,r,s,o,a,l]=n;for(const u of n)this.remove(u);if(e===Ja)i.up.set(0,1,0),i.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),o.up.set(0,0,1),o.lookAt(0,-1,0),a.up.set(0,1,0),a.lookAt(0,0,1),l.up.set(0,1,0),l.lookAt(0,0,-1);else if(e===Dd)i.up.set(0,-1,0),i.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),o.up.set(0,0,-1),o.lookAt(0,-1,0),a.up.set(0,-1,0),a.lookAt(0,0,1),l.up.set(0,-1,0),l.lookAt(0,0,-1);else throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+e);for(const u of n)this.add(u),u.updateMatrixWorld()}update(e,n){this.parent===null&&this.updateMatrixWorld();const i=this.renderTarget;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());const[r,s,o,a,l,u]=this.children,c=e.getRenderTarget(),h=e.xr.enabled;e.xr.enabled=!1;const f=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,e.setRenderTarget(i,0),e.render(n,r),e.setRenderTarget(i,1),e.render(n,s),e.setRenderTarget(i,2),e.render(n,o),e.setRenderTarget(i,3),e.render(n,a),e.setRenderTarget(i,4),e.render(n,l),i.texture.generateMipmaps=f,e.setRenderTarget(i,5),e.render(n,u),e.setRenderTarget(c),e.xr.enabled=h,i.texture.needsPMREMUpdate=!0}}class N4 extends Gn{constructor(e,n,i,r,s,o,a,l,u,c){e=e!==void 0?e:[],n=n!==void 0?n:cu,super(e,n,i,r,s,o,a,l,u,c),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}}class YU extends Yt{constructor(e=1,n={}){super(e,e,n),this.isWebGLCubeRenderTarget=!0;const i={width:e,height:e,depth:1},r=[i,i,i,i,i,i];n.encoding!==void 0&&(M5("THREE.WebGLCubeRenderTarget: option.encoding has been replaced by option.colorSpace."),n.colorSpace
vendor: 10,047 bytes, lines 66-149
66=n.encoding===al?Ot:Ec),this.texture=new N4(r,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=n.generateMipmaps!==void 0?n.generateMipmaps:!1,this.texture.minFilter=n.minFilter!==void 0?n.minFilter:_n}fromEquirectangularTexture(e,n){this.texture.type=n.type,this.texture.colorSpace=n.colorSpace,this.texture.generateMipmaps=n.generateMipmaps,this.texture.minFilter=n.minFilter,this.texture.magFilter=n.magFilter;const i={uniforms:{tEquirect:{value:null}},vertexShader:` 67 68 varying vec3 vWorldDirection; 69 70 vec3 transformDirection( in vec3 dir, in mat4 matrix ) { 71 72 return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); 73 74 } 75 76 void main() { 77 78 vWorldDirection = transformDirection( position, modelMatrix ); 79 80 #include <begin_vertex> 81 #include <project_vertex> 82 83 } 84 `,fragmentShader:` 85 86 uniform sampler2D tEquirect; 87 88 varying vec3 vWorldDirection; 89 90 #include <common> 91 92 void main() { 93 94 vec3 direction = normalize( vWorldDirection ); 95 96 vec2 sampleUV = equirectUv( direction ); 97 98 gl_FragColor = texture2D( tEquirect, sampleUV ); 99 100 } 101 `},r=new Zc(5,5,5),s=new zt({name:"CubemapFromEquirect",uniforms:Y0(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader,side:Fi,blending:bt});s.uniforms.tEquirect.value=n;const o=new yn(r,s),a=n.minFilter;return n.minFilter===Al&&(n.minFilter=_n),new XU(1,10,this).update(e,o),n.minFilter=a,o.geometry.dispose(),o.material.dispose(),this}clear(e,n,i,r){const s=e.getRenderTarget();for(let o=0;o<6;o++)e.setRenderTarget(this,o),e.clear(n,i,r);e.setRenderTarget(s)}}const Iy=new L,ote=new L,ate=new $t;class Ro{constructor(e=new L(1,0,0),n=0){this.isPlane=!0,this.normal=e,this.constant=n}set(e,n){return this.normal.copy(e),this.constant=n,this}setComponents(e,n,i,r){return this.normal.set(e,n,i),this.constant=r,this}setFromNormalAndCoplanarPoint(e,n){return this.normal.copy(e),this.constant=-n.dot(this.normal),this}setFromCoplanarPoints(e,n,i){const r=Iy.subVectors(i,n).cross(ote.subVectors(e,n)).normalize();return this.setFromNormalAndCoplanarPoint(r,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){const e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,n){return n.copy(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,n){const i=e.delta(Iy),r=this.normal.dot(i);if(r===0)return this.distanceToPoint(e.start)===0?n.copy(e.start):null;const s=-(e.start.dot(this.normal)+this.constant)/r;return s<0||s>1?null:n.copy(e.start).addScaledVector(i,s)}intersectsLine(e){const n=this.distanceToPoint(e.start),i=this.distanceToPoint(e.end);return n<0&&i>0||i<0&&n>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,n){const i=n||ate.getNormalMatrix(e),r=this.coplanarPoint(Iy).applyMatrix4(e),s=this.normal.applyMatrix3(i).normalize();return this.constant=-r.dot(s),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)}}const xh=new jo,i7=new L;class X9{constructor(e=new Ro,n=new Ro,i=new Ro,r=new Ro,s=new Ro,o=new Ro){this.planes=[e,n,i,r,s,o]}set(e,n,i,r,s,o){const a=this.planes;return a[0].copy(e),a[1].copy(n),a[2].copy(i),a[3].copy(r),a[4].copy(s),a[5].copy(o),this}copy(e){const n=this.planes;for(let i=0;i<6;i++)n[i].copy(e.planes[i]);return this}setFromProjectionMatrix(e,n=Ja){const i=this.planes,r=e.elements,s=r[0],o=r[1],a=r[2],l=r[3],u=r[4],c=r[5],h=r[6],f=r[7],m=r[8],g=r[9],v=r[10],_=r[11],A=r[12],y=r[13],q=r[14],E=r[15];if(i[0].setComponents(l-s,f-u,_-m,E-A).normalize(),i[1].setComponents(l+s,f+u,_+m,E+A).normalize(),i[2].setComponents(l+o,f+c,_+g,E+y).normalize(),i[3].setComponents(l-o,f-c,_-g,E-y).normalize(),i[4].setComponents(l-a,f-h,_-v,E-q).normalize(),n===Ja)i[5].setComponents(l+a,f+h,_+v,E+q).normalize();else if(n===Dd)i[5].setComponents(a,h,v,q).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+n);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),xh.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{const n=e.geometry;n.boundingSphere===null&&n.computeBoundingSphere(),xh.copy(n.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(xh)}intersectsSprite(e){return xh.center.set(0,0,0),xh.radius=.7071067811865476,xh.applyMatrix4(e.matrixWorld),this.intersectsSphere(xh)}intersectsSphere(e){const n=this.planes,i=e.center,r=-e.radius;for(let s=0;s<6;s++)if(n[s].distanceToPoint(i)<r)return!1;return!0}intersectsBox(e){const n=this.planes;for(let i=0;i<6;i++){const r=n[i];if(i7.x=r.normal.x>0?e.max.x:e.min.x,i7.y=r.normal.y>0?e.max.y:e.min.y,i7.z=r.normal.z>0?e.max.z:e.min.z,r.distanceToPoint(i7)<0)return!1}return!0}containsPoint(e){const n=this.planes;for(let i=0;i<6;i++)if(n[i].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function KU(){let t=null,e=!1,n=null,i=null;function r(s,o){n(s,o),i=t.requestAnimationFrame(r)}return{start:function(){e!==!0&&n!==null&&(i=t.requestAnimationFrame(r),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(s){n=s},setContext:function(s){t=s}}}function lte(t,e){const n=e.isWebGL2,i=new WeakMap;function r(u,c){const h=u.array,f=u.usage,m=t.createBuffer();t.bindBuffer(c,m),t.bufferData(c,h,f),u.onUploadCallback();let g;if(h instanceof Float32Array)g=t.FLOAT;else if(h instanceof Uint16Array)if(u.isFloat16BufferAttribute)if(n)g=t.HALF_FLOAT;else throw new Error("THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2.");else g=t.UNSIGNED_SHORT;else if(h instanceof Int16Array)g=t.SHORT;else if(h instanceof Uint32Array)g=t.UNSIGNED_INT;else if(h instanceof Int32Array)g=t.INT;else if(h instanceof Int8Array)g=t.BYTE;else if(h instanceof Uint8Array)g=t.UNSIGNED_BYTE;else if(h instanceof Uint8ClampedArray)g=t.UNSIGNED_BYTE;else throw new Error("THREE.WebGLAttributes: Unsupported buffer data format: "+h);return{buffer:m,type:g,bytesPerElement:h.BYTES_PER_ELEMENT,version:u.version}}function s(u,c,h){const f=c.array,m=c.updateRange;t.bindBuffer(h,u),m.count===-1?t.bufferSubData(h,0,f):(n?t.bufferSubData(h,m.offset*f.BYTES_PER_ELEMENT,f,m.offset,m.count):t.bufferSubData(h,m.offset*f.BYTES_PER_ELEMENT,f.subarray(m.offset,m.offset+m.count)),m.count=-1),c.onUploadCallback()}function o(u){return u.isInterleavedBufferAttribute&&(u=u.data),i.get(u)}function a(u){u.isInterleavedBufferAttribute&&(u=u.data);const c=i.get(u);c&&(t.deleteBuffer(c.buffer),i.delete(u))}function l(u,c){if(u.isGLBufferAttribute){const f=i.get(u);(!f||f.version<u.version)&&i.set(u,{buffer:u.buffer,type:u.type,bytesPerElement:u.elementSize,version:u.version});return}u.isInterleavedBufferAttribute&&(u=u.data);const h=i.get(u);h===void 0?i.set(u,r(u,c)):h.version<u.version&&(s(h.buffer,u,c),h.version=u.version)}return{get:o,remove:a,update:l}}class R2 extends Bt{constructor(e=1,n=1,i=1,r=1){super(),this.type="PlaneGeometry",this.parameters={width:e,height:n,widthSegments:i,heightSegments:r};const s=e/2,o=n/2,a=Math.floor(i),l=Math.floor(r),u=a+1,c=l+1,h=e/a,f=n/l,m=[],g=[],v=[],_=[];for(let A=0;A<c;A++){const y=A*f-o;for(let q=0;q<u;q++){const E=q*h-s;g.push(E,-y,0),v.push(0,0,1),_.push(q/a),_.push(1-A/l)}}for(let A=0;A<l;A++)for(let y=0;y<a;y++){const q=y+u*A,E=y+u*(A+1),T=y+1+u*(A+1),C=y+1+u*A;m.push(q,E,C),m.push(E,T,C)}this.setIndex(m),this.setAttribute("position",new tt(g,3)),this.setAttribute("normal",new tt(v,3)),this.setAttribute("uv",new tt(_,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new R2(e.width,e.height,e.widthSegments,e.heightSegments)}}var ute=`#ifdef USE_ALPHAHASH 102 if ( diffuseColor.a < getAlphaHashThreshold( vPosition ) ) discard; 103#endif`,cte=`#ifdef USE_ALPHAHASH 104 const float ALPHA_HASH_SCALE = 0.05; 105 float hash2D( vec2 value ) { 106 return fract( 1.0e4 * sin( 17.0 * value.x + 0.1 * value.y ) * ( 0.1 + abs( sin( 13.0 * value.y + value.x ) ) ) ); 107 } 108 float hash3D( vec3 value ) { 109 return hash2D( vec2( hash2D( value.xy ), value.z ) ); 110 } 111 float getAlphaHashThreshold( vec3 position ) { 112 float maxDeriv = max( 113 length( dFdx( position.xyz ) ), 114 length( dFdy( position.xyz ) ) 115 ); 116 float pixScale = 1.0 / ( ALPHA_HASH_SCALE * maxDeriv ); 117 vec2 pixScales = vec2( 118 exp2( floor( log2( pixScale ) ) ), 119 exp2( ceil( log2( pixScale ) ) ) 120 ); 121 vec2 alpha = vec2( 122 hash3D( floor( pixScales.x * position.xyz ) ), 123 hash3D( floor( pixScales.y * position.xyz ) ) 124 ); 125 float lerpFactor = fract( log2( pixScale ) ); 126 float x = ( 1.0 - lerpFactor ) * alpha.x + lerpFactor * alpha.y; 127 float a = min( lerpFactor, 1.0 - lerpFactor ); 128 vec3 cases = vec3( 129 x * x / ( 2.0 * a * ( 1.0 - a ) ), 130 ( x - 0.5 * a ) / ( 1.0 - a ), 131 1.0 - ( ( 1.0 - x ) * ( 1.0 - x ) / ( 2.0 * a * ( 1.0 - a ) ) ) 132 ); 133 float threshold = ( x < ( 1.0 - a ) ) 134 ? ( ( x < a ) ? cases.x : cases.y ) 135 : cases.z; 136 return clamp( threshold , 1.0e-6, 1.0 ); 137 } 138#endif`,hte=`#ifdef USE_ALPHAMAP 139 diffuseColor.a *= texture2D( alphaMap, vAlphaMapUv ).g; 140#endif`,fte=`#ifdef USE_ALPHAMAP 141 uniform sampler2D alphaMap; 142#endif`,dte=`#ifdef USE_ALPHATEST 143 if ( diffuseColor.a < alphaTest ) discard; 144#endif`,pte=`#ifdef USE_ALPHATEST 145 uniform float alphaTest; 146#endif`,mte=`#ifdef USE_AOMAP 147 float ambientOcclusion = ( texture2D( aoMap, vAoMapUv ).r - 1.0 ) * aoMapIntensity + 1.0; 148 reflectedLight.indirectDiffuse *= ambientOcclusion; 149 #if defined( USE_ENVMAP ) && defined( STANDARD )
150 float dotNV = saturate( dot( geometry.normal, geometry.viewDir ) ); 151 reflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.roughness ); 152 #endif 153#endif`,gte=`#ifdef USE_AOMAP 154 uniform sampler2D aoMap; 155 uniform float aoMapIntensity; 156#endif`,Ate=`vec3 transformed = vec3( position ); 157#ifdef USE_ALPHAHASH 158 vPosition = vec3( position ); 159#endif`,vte=`vec3 objectNormal = vec3( normal ); 160#ifdef USE_TANGENT 161 vec3 objectTangent = vec3( tangent.xyz ); 162#endif`,yte=`float G_BlinnPhong_Implicit( ) { 163 return 0.25; 164} 165float D_BlinnPhong( const in float shininess, const in float dotNH ) { 166 return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess ); 167} 168vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) { 169 vec3 halfDir = normalize( lightDir + viewDir ); 170 float dotNH = saturate( dot( normal, halfDir ) ); 171 float dotVH = saturate( dot( viewDir, halfDir ) ); 172 vec3 F = F_Schlick( specularColor, 1.0, dotVH ); 173 float G = G_BlinnPhong_Implicit( ); 174 float D = D_BlinnPhong( shininess, dotNH ); 175 return F * ( G * D ); 176} // validated`,qte=`#ifdef USE_IRIDESCENCE 177 const mat3 XYZ_TO_REC709 = mat3( 178 3.2404542, -0.9692660, 0.0556434, 179 -1.5371385, 1.8760108, -0.2040259, 180 -0.4985314, 0.0415560, 1.0572252 181 ); 182 vec3 Fresnel0ToIor( vec3 fresnel0 ) { 183 vec3 sqrtF0 = sqrt( fresnel0 ); 184 return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 ); 185 } 186 vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) { 187 return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) ); 188 } 189 float IorToFresnel0( float transmittedIor, float incidentIor ) { 190 return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor )); 191 } 192 vec3 evalSensitivity( float OPD, vec3 shift ) { 193 float phase = 2.0 * PI * OPD * 1.0e-9; 194 vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 ); 195 vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 ); 196 vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 ); 197 vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( - pow2( phase ) * var ); 198 xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[ 0 ] ) * exp( - 4.5282e+09 * pow2( phase ) ); 199 xyz /= 1.0685e-7; 200 vec3 rgb = XYZ_TO_REC709 * xyz; 201 return rgb; 202 } 203 vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) { 204 vec3 I; 205 float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) ); 206 float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) ); 207 float cosTheta2Sq = 1.0 - sinTheta2Sq; 208 if ( cosTheta2Sq < 0.0 ) { 209 return vec3( 1.0 ); 210 } 211 float cosTheta2 = sqrt( cosTheta2Sq ); 212 float R0 = IorToFresnel0( iridescenceIOR, outsideIOR ); 213 float R12 = F_Schlick( R0, 1.0, cosTheta1 );
214 float T121 = 1.0 - R12; 215 float phi12 = 0.0; 216 if ( iridescenceIOR < outsideIOR ) phi12 = PI; 217 float phi21 = PI - phi12; 218 vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) ); vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR ); 219 vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 ); 220 vec3 phi23 = vec3( 0.0 ); 221 if ( baseIOR[ 0 ] < iridescenceIOR ) phi23[ 0 ] = PI; 222 if ( baseIOR[ 1 ] < iridescenceIOR ) phi23[ 1 ] = PI; 223 if ( baseIOR[ 2 ] < iridescenceIOR ) phi23[ 2 ] = PI; 224 float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2; 225 vec3 phi = vec3( phi21 ) + phi23; 226 vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 ); 227 vec3 r123 = sqrt( R123 ); 228 vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 ); 229 vec3 C0 = R12 + Rs; 230 I = C0; 231 vec3 Cm = Rs - T121; 232 for ( int m = 1; m <= 2; ++ m ) { 233 Cm *= r123; 234 vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi ); 235 I += Cm * Sm; 236 } 237 return max( I, vec3( 0.0 ) ); 238 } 239#endif`,_te=`#ifdef USE_BUMPMAP 240 uniform sampler2D bumpMap; 241 uniform float bumpScale; 242 vec2 dHdxy_fwd() { 243 vec2 dSTdx = dFdx( vBumpMapUv ); 244 vec2 dSTdy = dFdy( vBumpMapUv ); 245 float Hll = bumpScale * texture2D( bumpMap, vBumpMapUv ).x; 246 float dBx = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdx ).x - Hll; 247 float dBy = bumpScale * texture2D( bumpMap, vBumpMapUv + dSTdy ).x - Hll; 248 return vec2( dBx, dBy ); 249 } 250 vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) { 251 vec3 vSigmaX = dFdx( surf_pos.xyz ); 252 vec3 vSigmaY = dFdy( surf_pos.xyz ); 253 vec3 vN = surf_norm; 254 vec3 R1 = cross( vSigmaY, vN ); 255 vec3 R2 = cross( vN, vSigmaX ); 256 float fDet = dot( vSigmaX, R1 ) * faceDirection; 257 vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 ); 258 return normalize( abs( fDet ) * surf_norm - vGrad ); 259 } 260#endif`,xte=`#if NUM_CLIPPING_PLANES > 0 261 vec4 plane; 262 #pragma unroll_loop_start 263 for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) { 264 plane = clippingPlanes[ i ]; 265 if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard; 266 } 267 #pragma unroll_loop_end 268 #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES 269 bool clipped = true; 270 #pragma unroll_loop_start 271 for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) { 272 plane = clippingPlanes[ i ]; 273 clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped; 274 } 275 #pragma unroll_loop_end 276 if ( clipped ) discard; 277 #endif 278#endif`,Ete=`#if NUM_CLIPPING_PLANES > 0 279 varying vec3 vClipPosition; 280 uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ]; 281#endif`,Ste=`#if NUM_CLIPPING_PLANES > 0 282 varying vec3 vClipPosition; 283#endif`,Tte=`#if NUM_CLIPPING_PLANES > 0 284 vClipPosition = - mvPosition.xyz; 285#endif`,Cte=`#if defined( USE_COLOR_ALPHA ) 286 diffuseColor *= vColor; 287#elif defined( USE_COLOR ) 288 diffuseColor.rgb *= vColor; 289#endif`,wte=`#if defined( USE_COLOR_ALPHA ) 290 varying vec4 vColor; 291#elif defined( USE_COLOR ) 292 varying vec3 vColor; 293#endif`,Ite=`#if defined( USE_COLOR_ALPHA ) 294 varying vec4 vColor; 295#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) 296 varying vec3 vColor; 297#endif`,Mte=`#if defined( USE_COLOR_ALPHA ) 298 vColor = vec4( 1.0 ); 299#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) 300 vColor = vec3( 1.0 ); 301#endif 302#ifdef USE_COLOR 303 vColor *= color; 304#endif 305#ifdef USE_INSTANCING_COLOR 306 vColor.xyz *= instanceColor.xyz; 307#endif`,Rte=`#define PI 3.141592653589793 308#define PI2 6.283185307179586 309#define PI_HALF 1.5707963267948966 310#define RECIPROCAL_PI 0.3183098861837907 311#define RECIPROCAL_PI2 0.15915494309189535 312#define EPSILON 1e-6 313#ifndef saturate 314#define saturate( a ) clamp( a, 0.0, 1.0 ) 315#endif 316#define whiteComplement( a ) ( 1.0 - saturate( a ) ) 317float pow2( const in float x ) { return x*x; } 318vec3 pow2( const in vec3 x ) { return x*x; } 319float pow3( const in float x ) { return x*x*x; } 320float pow4( const in float x ) { float x2 = x*x; return x2*x2; } 321float max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); } 322float average( const in vec3 v ) { return dot( v, vec3( 0.3333333 ) ); } 323highp float rand( const in vec2 uv ) { 324 const highp float a = 12.9898, b = 78.233, c = 43758.5453; 325 highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI ); 326 return fract( sin( sn ) * c ); 327} 328#ifdef HIGH_PRECISION 329 float precisionSafeLength( vec3 v ) { return length( v ); } 330#else 331 float precisionSafeLength( vec3 v ) { 332 float maxComponent = max3( abs( v ) ); 333 return length( v / maxComponent ) * maxComponent; 334 } 335#endif 336struct IncidentLight { 337 vec3 color; 338 vec3 direction; 339 bool visible; 340}; 341struct ReflectedLight { 342 vec3 directDiffuse; 343 vec3 directSpecular; 344 vec3 indirectDiffuse; 345 vec3 indirectSpecular; 346}; 347struct GeometricContext { 348 vec3 position; 349 vec3 normal; 350 vec3 viewDir; 351#ifdef USE_CLEARCOAT 352 vec3 clearcoatNormal; 353#endif 354}; 355#ifdef USE_ALPHAHASH 356 varying vec3 vPosition; 357#endif 358vec3 transformDirection( in vec3 dir, in mat4 matrix ) { 359 return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); 360} 361vec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) { 362 return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz ); 363} 364mat3 transposeMat3( const in mat3 m ) { 365 mat3 tmp; 366 tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x ); 367 tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y ); 368 tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z ); 369 return tmp; 370} 371float luminance( const in vec3 rgb ) { 372 const vec3 weights = vec3( 0.2126729, 0.7151522, 0.0721750 ); 373 return dot( weights, rgb ); 374} 375bool isPerspectiveMatrix( mat4 m ) { 376 return m[ 2 ][ 3 ] == - 1.0; 377} 378vec2 equirectUv( in vec3 dir ) { 379 float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5; 380 float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5; 381 return vec2( u, v ); 382}
383vec3 BRDF_Lambert( const in vec3 diffuseColor ) { 384 return RECIPROCAL_PI * diffuseColor; 385} 386vec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) { 387 float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH ); 388 return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel ); 389} 390float F_Schlick( const in float f0, const in float f90, const in float dotVH ) { 391 float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH ); 392 return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel ); 393} // validated`,bte=`#ifdef ENVMAP_TYPE_CUBE_UV 394 #define cubeUV_minMipLevel 4.0 395 #define cubeUV_minTileSize 16.0 396 float getFace( vec3 direction ) { 397 vec3 absDirection = abs( direction ); 398 float face = - 1.0; 399 if ( absDirection.x > absDirection.z ) { 400 if ( absDirection.x > absDirection.y ) 401 face = direction.x > 0.0 ? 0.0 : 3.0; 402 else 403 face = direction.y > 0.0 ? 1.0 : 4.0; 404 } else { 405 if ( absDirection.z > absDirection.y ) 406 face = direction.z > 0.0 ? 2.0 : 5.0; 407 else 408 face = direction.y > 0.0 ? 1.0 : 4.0; 409 } 410 return face; 411 } 412 vec2 getUV( vec3 direction, float face ) { 413 vec2 uv; 414 if ( face == 0.0 ) { 415 uv = vec2( direction.z, direction.y ) / abs( direction.x ); 416 } else if ( face == 1.0 ) { 417 uv = vec2( - direction.x, - direction.z ) / abs( direction.y ); 418 } else if ( face == 2.0 ) { 419 uv = vec2( - direction.x, direction.y ) / abs( direction.z ); 420 } else if ( face == 3.0 ) { 421 uv = vec2( - direction.z, direction.y ) / abs( direction.x ); 422 } else if ( face == 4.0 ) { 423 uv = vec2( - direction.x, direction.z ) / abs( direction.y ); 424 } else { 425 uv = vec2( direction.x, direction.y ) / abs( direction.z ); 426 } 427 return 0.5 * ( uv + 1.0 ); 428 } 429 vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) { 430 float face = getFace( direction ); 431 float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 ); 432 mipInt = max( mipInt, cubeUV_minMipLevel ); 433 float faceSize = exp2( mipInt ); 434 highp vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0; 435 if ( face > 2.0 ) { 436 uv.y += faceSize; 437 face -= 3.0; 438 } 439 uv.x += face * faceSize; 440 uv.x += filterInt * 3.0 * cubeUV_minTileSize; 441 uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize ); 442 uv.x *= CUBEUV_TEXEL_WIDTH; 443 uv.y *= CUBEUV_TEXEL_HEIGHT; 444 #ifdef texture2DGradEXT 445 return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb; 446 #else 447 return texture2D( envMap, uv ).rgb; 448 #endif 449 } 450 #define cubeUV_r0 1.0 451 #define cubeUV_v0 0.339 452 #define cubeUV_m0 - 2.0 453 #define cubeUV_r1 0.8 454 #define cubeUV_v1 0.276 455 #define cubeUV_m1 - 1.0 456 #define cubeUV_r4 0.4 457 #define cubeUV_v4 0.046 458 #define cubeUV_m4 2.0 459 #define cubeUV_r5 0.305 460 #define cubeUV_v5 0.016 461 #define cubeUV_m5 3.0 462 #define cubeUV_r6 0.21 463 #define cubeUV_v6 0.0038 464 #define cubeUV_m6 4.0 465 float roughnessToMip( float roughness ) { 466 float mip = 0.0; 467 if ( roughness >= cubeUV_r1 ) { 468 mip = ( cubeUV_r0 - roughness ) * ( cubeUV_m1 - cubeUV_m0 ) / ( cubeUV_r0 - cubeUV_r1 ) + cubeUV_m0; 469 } else if ( roughness >= cubeUV_r4 ) { 470 mip = ( cubeUV_r1 - roughness ) * ( cubeUV_m4 - cubeUV_m1 ) / ( cubeUV_r1 - cubeUV_r4 ) + cubeUV_m1; 471 } else if ( roughness >= cubeUV_r5 ) { 472 mip = ( cubeUV_r4 - roughness ) * ( cubeUV_m5 - cubeUV_m4 ) / ( cubeUV_r4 - cubeUV_r5 ) + cubeUV_m4; 473 } else if ( roughness >= cubeUV_r6 ) { 474 mip = ( cubeUV_r5 - roughness ) * ( cubeUV_m6 - cubeUV_m5 ) / ( cubeUV_r5 - cubeUV_r6 ) + cubeUV_m5; 475 } else { 476 mip = - 2.0 * log2( 1.16 * roughness ); } 477 return mip; 478 } 479 vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) { 480 float mip = clamp( roughnessToMip( roughness ), cubeUV_m0, CUBEUV_MAX_MIP ); 481 float mipF = fract( mip ); 482 float mipInt = floor( mip ); 483 vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt ); 484 if ( mipF == 0.0 ) { 485 return vec4( color0, 1.0 ); 486 } else { 487 vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 ); 488 return vec4( mix( color0, color1, mipF ), 1.0 ); 489 } 490 } 491#endif`,Pte=`vec3 transformedNormal = objectNormal; 492#ifdef USE_INSTANCING 493 mat3 m = mat3( instanceMatrix ); 494 transformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) ); 495 transformedNormal = m * transformedNormal; 496#endif 497transformedNormal = normalMatrix * transformedNormal; 498#ifdef FLIP_SIDED 499 transformedNormal = - transformedNormal; 500#endif 501#ifdef USE_TANGENT 502 vec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz; 503 #ifdef FLIP_SIDED 504 transformedTangent = - transformedTangent; 505 #endif 506#endif`,Bte=`#ifdef USE_DISPLACEMENTMAP 507 uniform sampler2D displacementMap; 508 uniform float displacementScale; 509 uniform float displacementBias; 510#endif`,Dte=`#ifdef USE_DISPLACEMENTMAP 511 transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + dis
511placementBias ); 512#endif`,Lte=`#ifdef USE_EMISSIVEMAP 513 vec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv ); 514 totalEmissiveRadiance *= emissiveColor.rgb; 515#endif`,Nte=`#ifdef USE_EMISSIVEMAP 516 uniform sampler2D emissiveMap; 517#endif`,kte="gl_FragColor = linearToOutputTexel( gl_FragColor );",Fte=`vec4 LinearToLinear( in vec4 value ) { 518 return value; 519} 520vec4 LinearTosRGB( in vec4 value ) { 521 return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a ); 522}`,Ote=`#ifdef USE_ENVMAP 523 #ifdef ENV_WORLDPOS 524 vec3 cameraToFrag; 525 if ( isOrthographic ) { 526 cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); 527 } else { 528 cameraToFrag = normalize( vWorldPosition - cameraPosition ); 529 } 530 vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); 531 #ifdef ENVMAP_MODE_REFLECTION 532 vec3 reflectVec = reflect( cameraToFrag, worldNormal ); 533 #else 534 vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio ); 535 #endif 536 #else 537 vec3 reflectVec = vReflect; 538 #endif 539 #ifdef ENVMAP_TYPE_CUBE 540 vec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) ); 541 #else 542 vec4 envColor = vec4( 0.0 ); 543 #endif 544 #ifdef ENVMAP_BLENDING_MULTIPLY 545 outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity ); 546 #elif defined( ENVMAP_BLENDING_MIX ) 547 outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity ); 548 #elif defined( ENVMAP_BLENDING_ADD ) 549 outgoingLight += envColor.xyz * specularStrength * reflectivity; 550 #endif 551#endif`,Ute=`#ifdef USE_ENVMAP 552 uniform float envMapIntensity; 553 uniform float flipEnvMap; 554 #ifdef ENVMAP_TYPE_CUBE 555 uniform samplerCube envMap; 556 #else 557 uniform sampler2D envMap; 558 #endif 559 560#endif`,zte=`#ifdef USE_ENVMAP 561 uniform float reflectivity; 562 #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT ) 563 #define ENV_WORLDPOS 564 #endif 565 #ifdef ENV_WORLDPOS 566 varying vec3 vWorldPosition; 567 uniform float refractionRatio; 568 #else 569 varying vec3 vReflect; 570 #endif 571#endif`,Vte=`#ifdef USE_ENVMAP 572 #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT ) 573 #define ENV_WORLDPOS 574 #endif 575 #ifdef ENV_WORLDPOS 576 577 varying vec3 vWorldPosition; 578 #else 579 varying vec3 vReflect; 580 uniform float refractionRatio; 581 #endif 582#endif`,Gte=`#ifdef USE_ENVMAP 583 #ifdef ENV_WORLDPOS 584 vWorldPosition = worldPosition.xyz; 585 #else 586 vec3 cameraToVertex; 587 if ( isOrthographic ) { 588 cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); 589 } else {
590 cameraToVertex = normalize( worldPosition.xyz - cameraPosition ); 591 } 592 vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); 593 #ifdef ENVMAP_MODE_REFLECTION 594 vReflect = reflect( cameraToVertex, worldNormal ); 595 #else 596 vReflect = refract( cameraToVertex, worldNormal, refractionRatio ); 597 #endif 598 #endif 599#endif`,Qte=`#ifdef USE_FOG 600 vFogDepth = - mvPosition.z; 601#endif`,Hte=`#ifdef USE_FOG 602 varying float vFogDepth; 603#endif`,Wte=`#ifdef USE_FOG 604 #ifdef FOG_EXP2 605 float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth ); 606 #else 607 float fogFactor = smoothstep( fogNear, fogFar, vFogDepth ); 608 #endif 609 gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor ); 610#endif`,$te=`#ifdef USE_FOG 611 uniform vec3 fogColor; 612 varying float vFogDepth; 613 #ifdef FOG_EXP2 614 uniform float fogDensity; 615 #else 616 uniform float fogNear; 617 uniform float fogFar; 618 #endif 619#endif`,jte=`#ifdef USE_GRADIENTMAP 620 uniform sampler2D gradientMap; 621#endif 622vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) { 623 float dotNL = dot( normal, lightDirection ); 624 vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 ); 625 #ifdef USE_GRADIENTMAP 626 return vec3( texture2D( gradientMap, coord ).r ); 627 #else 628 vec2 fw = fwidth( coord ) * 0.5; 629 return mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) ); 630 #endif 631}`,Xte=`#ifdef USE_LIGHTMAP 632 vec4 lightMapTexel = texture2D( lightMap, vLightMapUv ); 633 vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; 634 reflectedLight.indirectDiffuse += lightMapIrradiance; 635#endif`,Yte=`#ifdef USE_LIGHTMAP 636 uniform sampler2D lightMap; 637 uniform float lightMapIntensity; 638#endif`,Kte=`LambertMaterial material; 639material.diffuseColor = diffuseColor.rgb; 640material.specularStrength = specularStrength;`,Jte=`varying vec3 vViewPosition; 641struct LambertMaterial { 642 vec3 diffuseColor; 643 float specularStrength; 644}; 645void RE_Direct_Lambert( const in IncidentLight directLight, const in GeometricContext geometry, const in LambertMaterial material, inout ReflectedLight reflectedLight ) { 646 float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); 647 vec3 irradiance = dotNL * directLight.color; 648 reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 649} 650void RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in GeometricContext geometry, const in LambertMaterial material, inout ReflectedLight reflectedLight ) { 651 reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 652} 653#define RE_Direct RE_Direct_Lambert 654#define RE_IndirectDiffuse RE_IndirectDiffuse_Lambert`,Zte=`uniform bool receiveShadow; 655uniform vec3 ambientLightColor; 656uniform vec3 lightProbe[ 9 ]; 657vec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) { 658 float x = normal.x, y = normal.y, z = normal.z; 659 vec3 result = shCoefficients[ 0 ] * 0.886227; 660 result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y; 661 result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z; 662 result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x; 663 result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y; 664 result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z; 665 result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 ); 666 result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z; 667 result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y ); 668 return result; 669} 670vec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) { 671 vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); 672 vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe ); 673 return irradiance; 674} 675vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) { 676 vec3 irradiance = ambientLightColor; 677 return irradiance; 678} 679float getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) { 680 #if defined ( LEGACY_LIGHTS ) 681 if ( cutoffDistance > 0.0 && decayExponent > 0.0 ) { 682 return pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent ); 683 } 684 return 1.0; 685 #else 686 float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 ); 687 if ( cutoffDistance > 0.0 ) { 688 distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) ); 689 } 690 return distanceFalloff; 691 #endif 692} 693float getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) { 694 return smoothstep( coneCosine, penumbraCosine, angleCosine ); 695} 696#if NUM_DIR_LIGHTS > 0 697 struct DirectionalLight { 698 vec3 direction; 699 vec3 color; 700 }; 701 uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ]; 702 void getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) { 703 light.color = directionalLight.color; 704 light.direction = directionalLight.direction; 705 light.visible = true; 706 } 707#endif 708#if NUM_POINT_LIGHTS > 0 709 struct PointLight { 710 vec3 position; 711 vec3 color; 712 float distance; 713 float decay; 714 }; 715 uniform PointLight pointLights[ NUM_POINT_LIGHTS ]; 716 void getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) { 717 vec3 lVector = pointLight.position - geometry.position; 718 light.direction = normalize( lVector ); 719 float lightDistance = length( lVector ); 720 light.color = pointLight.color; 721 light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay ); 722 light.visible = ( light.color != vec3( 0.0 ) ); 723 } 724#endif
725#if NUM_SPOT_LIGHTS > 0 726 struct SpotLight { 727 vec3 position; 728 vec3 direction; 729 vec3 color; 730 float distance; 731 float decay; 732 float coneCos; 733 float penumbraCos; 734 }; 735 uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ]; 736 void getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) { 737 vec3 lVector = spotLight.position - geometry.position; 738 light.direction = normalize( lVector ); 739 float angleCos = dot( light.direction, spotLight.direction ); 740 float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos ); 741 if ( spotAttenuation > 0.0 ) { 742 float lightDistance = length( lVector ); 743 light.color = spotLight.color * spotAttenuation; 744 light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay ); 745 light.visible = ( light.color != vec3( 0.0 ) ); 746 } else { 747 light.color = vec3( 0.0 ); 748 light.visible = false; 749 } 750 } 751#endif 752#if NUM_RECT_AREA_LIGHTS > 0 753 struct RectAreaLight { 754 vec3 color; 755 vec3 position; 756 vec3 halfWidth; 757 vec3 halfHeight; 758 }; 759 uniform sampler2D ltc_1; uniform sampler2D ltc_2; 760 uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ]; 761#endif 762#if NUM_HEMI_LIGHTS > 0 763 struct HemisphereLight { 764 vec3 direction; 765 vec3 skyColor; 766 vec3 groundColor; 767 }; 768 uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ]; 769 vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) { 770 float dotNL = dot( normal, hemiLight.direction ); 771 float hemiDiffuseWeight = 0.5 * dotNL + 0.5; 772 vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight ); 773 return irradiance; 774 } 775#endif`,ene=`#ifdef USE_ENVMAP 776 vec3 getIBLIrradiance( const in vec3 normal ) { 777 #ifdef ENVMAP_TYPE_CUBE_UV 778 vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); 779 vec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 ); 780 return PI * envMapColor.rgb * envMapIntensity; 781 #else 782 return vec3( 0.0 ); 783 #endif 784 } 785 vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) { 786 #ifdef ENVMAP_TYPE_CUBE_UV 787 vec3 reflectVec = reflect( - viewDir, normal ); 788 reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) ); 789 reflectVec = inverseTransformDirection( reflectVec, viewMatrix ); 790 vec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness ); 791 return envMapColor.rgb * envMapIntensity; 792 #else 793 return vec3( 0.0 ); 794 #endif 795 } 796 #ifdef USE_ANISOTROPY 797 vec3 getIBLAnisotropyRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in vec3 bitangent, const in float anisotropy ) { 798 #ifdef ENVMAP_TYPE_CUBE_UV 799 vec3 bentNormal = cross( bitangent, viewDir ); 800 bentNormal = normalize( cross( bentNormal, bitangent ) ); 801 bentNormal = normalize( mix( bentNormal, normal, pow2( pow2( 1.0 - anisotropy * ( 1.0 - roughness ) ) ) ) ); 802 return getIBLRadiance( viewDir, bentNormal, roughness ); 803 #else 804 return vec3( 0.0 ); 805 #endif 806 } 807 #endif 808#endif`,tne=`ToonMaterial material; 809material.diffuseColor = diffuseColor.rgb;`,nne=`varying vec3 vViewPosition; 810struct ToonMaterial { 811 vec3 diffuseColor; 812}; 813void RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { 814 vec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color; 815 reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 816} 817void RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { 818 reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 819} 820#define RE_Direct RE_Direct_Toon 821#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon`,ine=`BlinnPhongMaterial material; 822material.diffuseColor = diffuseColor.rgb; 823material.specularColor = specular; 824material.specularShininess = shininess; 825material.specularStrength = specularStrength;`,rne=`varying vec3 vViewPosition; 826struct BlinnPhongMaterial { 827 vec3 diffuseColor; 828 vec3 specularColor; 829 float specularShininess; 830 float specularStrength; 831}; 832void RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {
833 float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); 834 vec3 irradiance = dotNL * directLight.color; 835 reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 836 reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength; 837} 838void RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) { 839 reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 840} 841#define RE_Direct RE_Direct_BlinnPhong 842#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong`,sne=`PhysicalMaterial material; 843material.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor ); 844vec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) ); 845float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z ); 846material.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness; 847material.roughness = min( material.roughness, 1.0 ); 848#ifdef IOR 849 material.ior = ior; 850 #ifdef USE_SPECULAR 851 float specularIntensityFactor = specularIntensity; 852 vec3 specularColorFactor = specularColor; 853 #ifdef USE_SPECULAR_COLORMAP 854 specularColorFactor *= texture2D( specularColorMap, vSpecularColorMapUv ).rgb; 855 #endif 856 #ifdef USE_SPECULAR_INTENSITYMAP 857 specularIntensityFactor *= texture2D( specularIntensityMap, vSpecularIntensityMapUv ).a; 858 #endif 859 material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor ); 860 #else 861 float specularIntensityFactor = 1.0; 862 vec3 specularColorFactor = vec3( 1.0 ); 863 material.specularF90 = 1.0; 864 #endif 865 material.specularColor = mix( min( pow2( ( material.ior - 1.0 ) / ( material.ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor ); 866#else 867 material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor ); 868 material.specularF90 = 1.0; 869#endif 870#ifdef USE_CLEARCOAT 871 material.clearcoat = clearcoat; 872 material.clearcoatRoughness = clearcoatRoughness; 873 material.clearcoatF0 = vec3( 0.04 ); 874 material.clearcoatF90 = 1.0; 875 #ifdef USE_CLEARCOATMAP 876 material.clearcoat *= texture2D( clearcoatMap, vClearcoatMapUv ).x; 877 #endif 878 #ifdef USE_CLEARCOAT_ROUGHNESSMAP 879 material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vClearcoatRoughnessMapUv ).y; 880 #endif 881 material.clearcoat = saturate( material.clearcoat ); material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 ); 882 material.clearcoatRoughness += geometryRoughness; 883 material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 ); 884#endif 885#ifdef USE_IRIDESCENCE 886 material.iridescence = iridescence; 887 material.iridescenceIOR = iridescenceIOR; 888 #ifdef USE_IRIDESCENCEMAP 889 material.iridescence *= texture2D( iridescenceMap, vIridescenceMapUv ).r; 890 #endif 891 #ifdef USE_IRIDESCENCE_THICKNESSMAP 892 material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vIridescenceThicknessMapUv ).g + iridescenceThicknessMinimum; 893 #else 894 material.iridescenceThickness = iridescenceThicknessMaximum; 895 #endif 896#endif 897#ifdef USE_SHEEN 898 material.sheenColor = sheenColor; 899 #ifdef USE_SHEEN_COLORMAP 900 material.sheenColor *= texture2D( sheenColorMap, vSheenColorMapUv ).rgb; 901 #endif 902 material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 ); 903 #ifdef USE_SHEEN_ROUGHNESSMAP 904 material.sheenRoughness *= texture2D( sheenRoughnessMap, vSheenRoughnessMapUv ).a; 905 #endif 906#endif 907#ifdef USE_ANISOTROPY 908 #ifdef USE_ANISOTROPYMAP 909 mat2 anisotropyMat = mat2( anisotropyVector.x, anisotropyVector.y, - anisotropyVector.y, anisotropyVector.x ); 910 vec3 anisotropyPolar = texture2D( anisotropyMap, vAnisotropyMapUv ).rgb; 911 vec2 anisotropyV = anisotropyMat * normalize( 2.0 * anisotropyPolar.rg - vec2( 1.0 ) ) * anisotropyPolar.b; 912 #else 913 vec2 anisotropyV = anisotropyVector; 914 #endif 915 material.anisotropy = length( anisotropyV ); 916 anisotropyV /= material.anisotropy; 917 material.anisotropy = saturate( material.anisotropy ); 918 material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) );
919 material.anisotropyT = tbn[ 0 ] * anisotropyV.x - tbn[ 1 ] * anisotropyV.y; 920 material.anisotropyB = tbn[ 1 ] * anisotropyV.x + tbn[ 0 ] * anisotropyV.y; 921#endif`,one=`struct PhysicalMaterial { 922 vec3 diffuseColor; 923 float roughness; 924 vec3 specularColor; 925 float specularF90; 926 #ifdef USE_CLEARCOAT 927 float clearcoat; 928 float clearcoatRoughness; 929 vec3 clearcoatF0; 930 float clearcoatF90; 931 #endif 932 #ifdef USE_IRIDESCENCE 933 float iridescence; 934 float iridescenceIOR; 935 float iridescenceThickness; 936 vec3 iridescenceFresnel; 937 vec3 iridescenceF0; 938 #endif 939 #ifdef USE_SHEEN 940 vec3 sheenColor; 941 float sheenRoughness; 942 #endif 943 #ifdef IOR 944 float ior; 945 #endif 946 #ifdef USE_TRANSMISSION 947 float transmission; 948 float transmissionAlpha; 949 float thickness; 950 float attenuationDistance; 951 vec3 attenuationColor; 952 #endif 953 #ifdef USE_ANISOTROPY 954 float anisotropy; 955 float alphaT; 956 vec3 anisotropyT; 957 vec3 anisotropyB; 958 #endif 959}; 960vec3 clearcoatSpecular = vec3( 0.0 ); 961vec3 sheenSpecular = vec3(
vendor: 8,856 bytes, lines 961-1149
9610.0 ); 962vec3 Schlick_to_F0( const in vec3 f, const in float f90, const in float dotVH ) { 963 float x = clamp( 1.0 - dotVH, 0.0, 1.0 ); 964 float x2 = x * x; 965 float x5 = clamp( x * x2 * x2, 0.0, 0.9999 ); 966 return ( f - vec3( f90 ) * x5 ) / ( 1.0 - x5 ); 967} 968float V_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) { 969 float a2 = pow2( alpha ); 970 float gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) ); 971 float gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) ); 972 return 0.5 / max( gv + gl, EPSILON ); 973} 974float D_GGX( const in float alpha, const in float dotNH ) { 975 float a2 = pow2( alpha ); 976 float denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0; 977 return RECIPROCAL_PI * a2 / pow2( denom ); 978} 979#ifdef USE_ANISOTROPY 980 float V_GGX_SmithCorrelated_Anisotropic( const in float alphaT, const in float alphaB, const in float dotTV, const in float dotBV, const in float dotTL, const in float dotBL, const in float dotNV, const in float dotNL ) { 981 float gv = dotNL * length( vec3( alphaT * dotTV, alphaB * dotBV, dotNV ) ); 982 float gl = dotNV * length( vec3( alphaT * dotTL, alphaB * dotBL, dotNL ) ); 983 float v = 0.5 / ( gv + gl ); 984 return saturate(v); 985 } 986 float D_GGX_Anisotropic( const in float alphaT, const in float alphaB, const in float dotNH, const in float dotTH, const in float dotBH ) { 987 float a2 = alphaT * alphaB; 988 highp vec3 v = vec3( alphaB * dotTH, alphaT * dotBH, a2 * dotNH ); 989 highp float v2 = dot( v, v ); 990 float w2 = a2 / v2; 991 return RECIPROCAL_PI * a2 * pow2 ( w2 ); 992 } 993#endif 994#ifdef USE_CLEARCOAT 995 vec3 BRDF_GGX_Clearcoat( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material) { 996 vec3 f0 = material.clearcoatF0; 997 float f90 = material.clearcoatF90; 998 float roughness = material.clearcoatRoughness; 999 float alpha = pow2( roughness ); 1000 vec3 halfDir = normalize( lightDir + viewDir ); 1001 float dotNL = saturate( dot( normal, lightDir ) ); 1002 float dotNV = saturate( dot( normal, viewDir ) ); 1003 float dotNH = saturate( dot( normal, halfDir ) ); 1004 float dotVH = saturate( dot( viewDir, halfDir ) ); 1005 vec3 F = F_Schlick( f0, f90, dotVH ); 1006 float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV ); 1007 float D = D_GGX( alpha, dotNH ); 1008 return F * ( V * D ); 1009 } 1010#endif 1011vec3 BRDF_GGX( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in PhysicalMaterial material ) { 1012 vec3 f0 = material.specularColor; 1013 float f90 = material.specularF90; 1014 float roughness = material.roughness; 1015 float alpha = pow2( roughness ); 1016 vec3 halfDir = normalize( lightDir + viewDir ); 1017 float dotNL = saturate( dot( normal, lightDir ) ); 1018 float dotNV = saturate( dot( normal, viewDir ) ); 1019 float dotNH = saturate( dot( normal, halfDir ) ); 1020 float dotVH = saturate( dot( viewDir, halfDir ) ); 1021 vec3 F = F_Schlick( f0, f90, dotVH ); 1022 #ifdef USE_IRIDESCENCE 1023 F = mix( F, material.iridescenceFresnel, material.iridescence ); 1024 #endif 1025 #ifdef USE_ANISOTROPY 1026 float dotTL = dot( material.anisotropyT, lightDir ); 1027 float dotTV = dot( material.anisotropyT, viewDir ); 1028 float dotTH = dot( material.anisotropyT, halfDir ); 1029 float dotBL = dot( material.anisotropyB, lightDir ); 1030 float dotBV = dot( material.anisotropyB, viewDir ); 1031 float dotBH = dot( material.anisotropyB, halfDir ); 1032 float V = V_GGX_SmithCorrelated_Anisotropic( material.alphaT, alpha, dotTV, dotBV, dotTL, dotBL, dotNV, dotNL ); 1033 float D = D_GGX_Anisotropic( material.alphaT, alpha, dotNH, dotTH, dotBH ); 1034 #else 1035 float V = V_GGX_SmithCorrelated( alpha, dotNL, dotNV ); 1036 float D = D_GGX( alpha, dotNH ); 1037 #endif 1038 return F * ( V * D ); 1039} 1040vec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) { 1041 const float LUT_SIZE = 64.0; 1042 const float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE; 1043 const float LUT_BIAS = 0.5 / LUT_SIZE; 1044 float dotNV = saturate( dot( N, V ) ); 1045 vec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) ); 1046 uv = uv * LUT_SCALE + LUT_BIAS; 1047 return uv; 1048} 1049float LTC_ClippedSphereFormFactor( const in vec3 f ) { 1050 float l = length( f ); 1051 return max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 ); 1052} 1053vec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) { 1054 float x = dot( v1, v2 ); 1055 float y = abs( x ); 1056 float a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y; 1057 float b = 3.4175940 + ( 4.1616724 + y ) * y; 1058 float v = a / b; 1059 float theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v; 1060 return cross( v1, v2 ) * theta_sintheta; 1061} 1062vec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) { 1063 vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ]; 1064 vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ]; 1065 vec3 lightNormal = cross( v1, v2 ); 1066 if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 ); 1067 vec3 T1, T2; 1068 T1 = normalize( V - N * dot( V, N ) ); 1069 T2 = - cross( N, T1 ); 1070 mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) ); 1071 vec3 coords[ 4 ]; 1072 coords[ 0 ] = mat * ( rectCoords[ 0 ] - P ); 1073 coords[ 1 ] = mat * ( rectCoords[ 1 ] - P ); 1074 coords[ 2 ] = mat * ( rectCoords[ 2 ] - P ); 1075 coords[ 3 ] = mat * ( rectCoords[ 3 ] - P ); 1076 coords[ 0 ] = normalize( coords[ 0 ] ); 1077 coords[ 1 ] = normalize( coords[ 1 ] ); 1078 coords[ 2 ] = normalize( coords[ 2 ] ); 1079 coords[ 3 ] = normalize( coords[ 3 ] ); 1080 vec3 vectorFormFactor = vec3( 0.0 ); 1081 vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] ); 1082 vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] ); 1083 vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] ); 1084 vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] ); 1085 float result = LTC_ClippedSphereFormFactor( vectorFormFactor ); 1086 return vec3( result ); 1087} 1088#if defined( USE_SHEEN ) 1089float D_Charlie( float roughness, float dotNH ) { 1090 float alpha = pow2( roughness ); 1091 float invAlpha = 1.0 / alpha; 1092 float cos2h = dotNH * dotNH; 1093 float sin2h = max( 1.0 - cos2h, 0.0078125 ); 1094 return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI ); 1095} 1096float V_Neubelt( float dotNV, float dotNL ) { 1097 return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) ); 1098} 1099vec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) { 1100 vec3 halfDir = normalize( lightDir + viewDir ); 1101 float dotNL = saturate( dot( normal, lightDir ) ); 1102 float dotNV = saturate( dot( normal, viewDir ) ); 1103 float dotNH = saturate( dot( normal, halfDir ) ); 1104 float D = D_Charlie( sheenRoughness, dotNH ); 1105 float V = V_Neubelt( dotNV, dotNL ); 1106 return sheenColor * ( D * V ); 1107} 1108#endif 1109float IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness ) { 1110 float dotNV = saturate( dot( normal, viewDir ) ); 1111 float r2 = roughness * roughness; 1112 float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95; 1113 float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72; 1114 float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) ); 1115 return saturate( DG * RECIPROCAL_PI ); 1116} 1117vec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) { 1118 float dotNV = saturate( dot( normal, viewDir ) ); 1119 const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 ); 1120 const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 ); 1121 vec4 r = roughness * c0 + c1; 1122 float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y; 1123 vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw; 1124 return fab; 1125} 1126vec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) { 1127 vec2 fab = DFGApprox( normal, viewDir, roughness ); 1128 return specularColor * fab.x + specularF90 * fab.y; 1129} 1130#ifdef USE_IRIDESCENCE 1131void computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { 1132#else 1133void computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { 1134#endif 1135 vec2 fab = DFGApprox( normal, viewDir, roughness ); 1136 #ifdef USE_IRIDESCENCE 1137 vec3 Fr = mix( specularColor, iridescenceF0, iridescence ); 1138 #else 1139 vec3 Fr = specularColor; 1140 #endif 1141 vec3 FssEss = Fr * fab.x + specularF90 * fab.y; 1142 float Ess = fab.x + fab.y; 1143 float Ems = 1.0 - Ess; 1144 vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619; vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg ); 1145 singleScatter += FssEss; 1146 multiScatter += Fms * Ems; 1147} 1148#if NUM_RECT_AREA_LIGHTS > 0 1149 void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in
1149GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { 1150 vec3 normal = geometry.normal; 1151 vec3 viewDir = geometry.viewDir; 1152 vec3 position = geometry.position; 1153 vec3 lightPos = rectAreaLight.position; 1154 vec3 halfWidth = rectAreaLight.halfWidth; 1155 vec3 halfHeight = rectAreaLight.halfHeight; 1156 vec3 lightColor = rectAreaLight.color; 1157 float roughness = material.roughness; 1158 vec3 rectCoords[ 4 ]; 1159 rectCoords[ 0 ] = lightPos + halfWidth - halfHeight; rectCoords[ 1 ] = lightPos - halfWidth - halfHeight; 1160 rectCoords[ 2 ] = lightPos - halfWidth + halfHeight; 1161 rectCoords[ 3 ] = lightPos + halfWidth + halfHeight; 1162 vec2 uv = LTC_Uv( normal, viewDir, roughness ); 1163 vec4 t1 = texture2D( ltc_1, uv ); 1164 vec4 t2 = texture2D( ltc_2, uv ); 1165 mat3 mInv = mat3( 1166 vec3( t1.x, 0, t1.y ), 1167 vec3( 0, 1, 0 ), 1168 vec3( t1.z, 0, t1.w ) 1169 ); 1170 vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y ); 1171 reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords ); 1172 reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords ); 1173 } 1174#endif 1175void RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { 1176 float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); 1177 vec3 irradiance = dotNL * directLight.color; 1178 #ifdef USE_CLEARCOAT 1179 float dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) ); 1180 vec3 ccIrradiance = dotNLcc * directLight.color; 1181 clearcoatSpecular += ccIrradiance * BRDF_GGX_Clearcoat( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material ); 1182 #endif 1183 #ifdef USE_SHEEN 1184 sheenSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenColor, material.sheenRoughness ); 1185 #endif 1186 reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material ); 1187 reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 1188} 1189void RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { 1190 reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); 1191} 1192void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) { 1193 #ifdef USE_CLEARCOAT 1194 clearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness ); 1195 #endif 1196 #ifdef USE_SHEEN 1197 sheenSpecular += irradiance * material.sheenColor * IBLSheenBRDF( geometry.normal, geometry.viewDir, material.sheenRoughness ); 1198 #endif 1199 vec3 singleScattering = vec3( 0.0 ); 1200 vec3 multiScattering = vec3( 0.0 ); 1201 vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI; 1202 #ifdef USE_IRIDESCENCE 1203 computeMultiscatteringIridescence( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering ); 1204 #else 1205 computeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering ); 1206 #endif 1207 vec3 totalScattering = singleScattering + multiScattering; 1208 vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) ); 1209 reflectedLight.indirectSpecular += radiance * singleScattering; 1210 reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance; 1211 reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance; 1212} 1213#define RE_Direct RE_Direct_Physical 1214#define RE_Direct_RectArea RE_Direct_RectArea_Physical 1215#define RE_IndirectDiffuse RE_IndirectDiffuse_Physical 1216#define RE_IndirectSpecular RE_IndirectSpecular_Physical
1217float computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) { 1218 return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion ); 1219}`,ane=` 1220GeometricContext geometry; 1221geometry.position = - vViewPosition; 1222geometry.normal = normal; 1223geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition ); 1224#ifdef USE_CLEARCOAT 1225 geometry.clearcoatNormal = clearcoatNormal; 1226#endif 1227#ifdef USE_IRIDESCENCE 1228 float dotNVi = saturate( dot( normal, geometry.viewDir ) ); 1229 if ( material.iridescenceThickness == 0.0 ) { 1230 material.iridescence = 0.0; 1231 } else { 1232 material.iridescence = saturate( material.iridescence ); 1233 } 1234 if ( material.iridescence > 0.0 ) { 1235 material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor ); 1236 material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi ); 1237 } 1238#endif 1239IncidentLight directLight; 1240#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct ) 1241 PointLight pointLight; 1242 #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0 1243 PointLightShadow pointLightShadow; 1244 #endif 1245 #pragma unroll_loop_start 1246 for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) { 1247 pointLight = pointLights[ i ]; 1248 getPointLightInfo( pointLight, geometry, directLight ); 1249 #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS ) 1250 pointLightShadow = pointLightShadows[ i ]; 1251 directLight.color *= ( directLight.visible && receiveShadow ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0; 1252 #endif 1253 RE_Direct( directLight, geometry, material, reflectedLight ); 1254 } 1255 #pragma unroll_loop_end 1256#endif 1257#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct ) 1258 SpotLight spotLight; 1259 vec4 spotColor; 1260 vec3 spotLightCoord; 1261 bool inSpotLightMap; 1262 #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0 1263 SpotLightShadow spotLightShadow; 1264 #endif 1265 #pragma unroll_loop_start 1266 for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) { 1267 spotLight = spotLights[ i ]; 1268 getSpotLightInfo( spotLight, geometry, directLight ); 1269 #if ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS ) 1270 #define SPOT_LIGHT_MAP_INDEX UNROLLED_LOOP_INDEX 1271 #elif ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS ) 1272 #define SPOT_LIGHT_MAP_INDEX NUM_SPOT_LIGHT_MAPS 1273 #else 1274 #define SPOT_LIGHT_MAP_INDEX ( UNROLLED_LOOP_INDEX - NUM_SPOT_LIGHT_SHADOWS + NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS ) 1275 #endif 1276 #if ( SPOT_LIGHT_MAP_INDEX < NUM_SPOT_LIGHT_MAPS ) 1277 spotLightCoord = vSpotLightCoord[ i ].xyz / vSpotLightCoord[ i ].w; 1278 inSpotLightMap = all( lessThan( abs( spotLightCoord * 2. - 1. ), vec3( 1.0 ) ) ); 1279 spotColor = texture2D( spotLightMap[ SPOT_LIGHT_MAP_INDEX ], spotLightCoord.xy ); 1280 directLight.color = inSpotLightMap ? directLight.color * spotColor.rgb : directLight.color; 1281 #endif 1282 #undef SPOT_LIGHT_MAP_INDEX 1283 #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS ) 1284 spotLightShadow = spotLightShadows[ i ]; 1285 directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotLightCoord[ i ] ) : 1.0; 1286 #endif 1287 RE_Direct( directLight, geometry, material, reflectedLight ); 1288 } 1289 #pragma unroll_loop_end 1290#endif 1291#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct ) 1292 DirectionalLight directionalLight; 1293 #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0 1294 DirectionalLightShadow directionalLightShadow; 1295 #endif 1296 #pragma unroll_loop_start 1297 for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) { 1298 directionalLight = directionalLights[ i ]; 1299 getDirectionalLightInfo( directionalLight, geometry, directLight ); 1300 #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS ) 1301 directionalLightShadow = directionalLightShadows[ i ]; 1302 directLight.color *= ( directLight.visible && receiveShadow ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; 1303 #endif 1304 RE_Direct( directLight, geometry, material, reflectedLight ); 1305 } 1306 #pragma unroll_loop_end 1307#endif 1308#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea ) 1309 RectAreaLight rectAreaLight; 1310 #pragma unroll_loop_start 1311 for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) { 1312 rectAreaLight = rectAreaLights[ i ]; 1313 RE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight ); 1314 } 1315 #pragma unroll_loop_end 1316#endif 1317#if defined( RE_IndirectDiffuse ) 1318 vec3 iblIrradiance = vec3( 0.0 ); 1319 vec3 irradiance = getAmbientLightIrradiance( ambientLightColor ); 1320 irradiance += getLightProbeIrradiance( lightProbe, geometry.normal ); 1321 #if ( NUM_HEMI_LIGHTS > 0 ) 1322 #pragma unroll_loop_start 1323 for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) { 1324 irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal ); 1325 } 1326 #pragma unroll_loop_end 1327 #endif 1328#endif 1329#if defined( RE_IndirectSpecular ) 1330 vec3 radiance = vec3( 0.0 ); 1331 vec3 clearcoatRadiance = vec3( 0.0 ); 1332#endif`,lne=`#if defined( RE_IndirectDiffuse ) 1333 #ifdef USE_LIGHTMAP 1334 vec4 lightMapTexel = texture2D( lightMap, vLightMapUv ); 1335 vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; 1336 irradiance += lightMapIrradiance; 1337 #endif 1338 #if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV ) 1339 iblIrradiance += getIBLIrradiance( geometry.normal ); 1340 #endif 1341#endif 1342#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular ) 1343 #ifdef USE_ANISOTROPY 1344 radiance += getIBLAnisotropyRadiance( geometry.viewDir, geometry.normal, material.roughness, material.anisotropyB, material.anisotropy ); 1345 #else 1346 radiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness ); 1347 #endif 1348 #ifdef USE_CLEARCOAT 1349 clearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness ); 1350 #endif 1351#endif`,une=`#if defined( RE_IndirectDiffuse ) 1352 RE_IndirectDiffuse( irradiance, geometry, material, reflectedLight ); 1353#endif 1354#if defined( RE_IndirectSpecular ) 1355 RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight ); 1356#endif`,cne=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) 1357 gl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5; 1358#endif`,hne=`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) 1359 uniform float logDepthBufFC; 1360 varying float vFragDepth; 1361 varying float vIsPerspective; 1362#endif`,fne=`#ifdef USE_LOGDEPTHBUF 1363 #ifdef USE_LOGDEPTHBUF_EXT 1364 varying float vFragDepth; 1365 varying float vIsPerspective; 1366 #else 1367 uniform float logDepthBufFC; 1368 #endif 1369#endif`,dne=`#ifdef USE_LOGDEPTHBUF 1370 #ifdef USE_LOGDEPTHBUF_EXT 1371 vFragDepth = 1.0 + gl_Position.w; 1372 vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) ); 1373 #else 1374 if ( isPerspectiveMatrix( projectionMatrix ) ) { 1375 gl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0; 1376 gl_Position.z *= gl_Position.w; 1377 } 1378 #endif 1379#endif`,pne=`#ifdef USE_MAP 1380 diffuseColor *= texture2D( map, vMapUv ); 1381#endif`,mne=`#ifdef USE_MAP 1382 uniform sampler2D map; 1383#endif`,gne=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) 1384 #if defined( USE_POINTS_UV ) 1385 vec2 uv = vUv; 1386 #else 1387 vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy; 1388 #endif 1389#endif 1390#ifdef USE_MAP 1391 diffuseColor *= texture2D( map, uv ); 1392#endif 1393#ifdef USE_ALPHAMAP 1394 diffuseColor.a *= texture2D( alphaMap, uv ).g; 1395#endif`,Ane=`#if defined( USE_POINTS_UV ) 1396 varying vec2 vUv; 1397#else 1398 #if defined( USE_MAP ) || defined( USE_ALPHAMAP ) 1399 uniform mat3 uvTransform; 1400 #endif 1401#endif 1402#ifdef USE_MAP 1403 uniform sampler2D map; 1404#endif 1405#ifdef USE_ALPHAMAP 1406 uniform sampler2D alphaMap; 1407#endif`,vne=`float metalnessFactor = metalness; 1408#ifdef USE_METALNESSMAP 1409 vec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv ); 1410 metalnessFactor *= texelMetalness.b; 1411#endif`,yne=`#ifdef USE_METALNESSMAP 1412 uniform sampler2D metalnessMap; 1413#endif`,qne=`#if defined( USE_MORPHCOLORS ) && defined( MORPHTARGETS_TEXTURE ) 1414 vColor *= morphTargetBaseInfluence; 1415 for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { 1416 #if defined( USE_COLOR_ALPHA ) 1417 if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ]; 1418 #elif defined( USE_COLOR ) 1419 if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ]; 1420 #endif 1421 } 1422#endif`,_ne=`#ifdef USE_MORPHNORMALS 1423 objectNormal *= morphTargetBaseInfluence; 1424 #ifdef MORPHTARGETS_TEXTURE 1425 for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { 1426 if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ]; 1427 } 1428 #else 1429 objectNormal += morphNormal0 * morphTargetInfluences[ 0 ]; 1430 objectNormal += morphNormal1 * morphTargetInfluences[ 1 ]; 1431 objectNormal += morphNormal2 * morphTargetInfluences[ 2 ]; 1432 objectNormal += morphNormal3 * morphTargetInfluences[ 3 ]; 1433 #endif 1434#endif`,xne=`#ifdef USE_MORPHTARGETS 1435 uniform float morphTargetBaseInfluence; 1436 #ifdef MORPHTARGETS_TEXTURE 1437 uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ]; 1438 uniform sampler2DArray morphTargetsTexture; 1439 uniform ivec2 morphTargetsTextureSize; 1440 vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) { 1441 int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset; 1442 int y = texelIndex / morphTargetsTextureSize.x; 1443 int x = texelIndex - y * morphTargetsTextureSize.x; 1444 ivec3 morphUV = ivec3( x, y, morphTargetIndex ); 1445 return texelFetch( morphTargetsTexture, morphUV, 0 ); 1446 } 1447 #else 1448 #ifndef USE_MORPHNORMALS 1449 uniform float morphTargetInfluences[ 8 ]; 1450 #else 1451 uniform float morphTargetInfluences[ 4 ]; 1452 #endif 1453 #endif 1454#endif`,Ene=`#ifdef USE_MORPHTARGETS 1455 transformed *= morphTargetBaseInfluence; 1456 #ifdef MORPHTARGETS_TEXTURE 1457 for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { 1458 if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ]; 1459 } 1460 #else 1461 transformed += morphTarget0 * morphTargetInfluences[ 0 ]; 1462 transformed += morphTarget1 * morphTargetInfluences[ 1 ]; 1463 transformed += morphTarget2 * morphTargetInfluences[ 2 ]; 1464 transformed += morphTarget3 * morphTargetInfluences[ 3 ]; 1465 #ifndef USE_MORPHNORMALS 1466 transformed += morphTarget4 * morphTargetInfluences[ 4 ]; 1467 transformed += morphTarget5 * morphTargetInfluences[ 5 ]; 1468 transformed += morphTarget6 * morphTargetInfluences[ 6 ]; 1469 transformed += morphTarget7 * morphTargetInfluences[ 7 ]; 1470 #endif 1471 #endif 1472#endif`,Sne=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; 1473#ifdef FLAT_SHADED 1474 vec3 fdx = dFdx( vViewPosition ); 1475 vec3 fdy = dFdy( vViewPosition ); 1476 vec3 normal = normalize( cross( fdx, fdy ) ); 1477#else 1478 vec3 normal = normalize( vNormal ); 1479 #ifdef DOUBLE_SIDED 1480 normal *= faceDirection; 1481 #endif 1482#endif 1483#if defined( USE_NORMALMAP_TANGENTSPACE ) || defined( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) 1484 #ifdef USE_TANGENT 1485 mat3 tbn = mat3( normalize( vTangent ), normalize( vBitangent ), normal ); 1486 #else 1487 mat3 tbn = getTangentFrame( - vViewPosition, normal, 1488 #if defined( USE_NORMALMAP ) 1489 vNormalMapUv 1490 #elif defined( USE_CLEARCOAT_NORMALMAP ) 1491 vClearcoatNormalMapUv 1492 #else 1493 vUv 1494 #endif 1495 ); 1496 #endif 1497 #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED ) 1498 tbn[0] *= faceDirection; 1499 tbn[1] *= faceDirection; 1500 #endif 1501#endif 1502#ifdef USE_CLEARCOAT_NORMALMAP 1503 #ifdef USE_TANGENT 1504 mat3 tbn2 = mat3( normalize( vTangent ), normalize( vBitangent ), normal ); 1505 #else 1506 mat3 tbn2 = getTangentFrame( - vViewPosition, normal, vClearcoatNormalMapUv ); 1507 #endif 1508 #if defined( DOUBLE_SIDED ) && ! defined( FLAT_SHADED ) 1509 tbn2[0] *= faceDirection; 1510 tbn2[1] *= faceDirection; 1511 #endif 1512#endif 1513vec3 geometryNormal = normal;`,Tne=`#ifdef USE_NORMALMAP_OBJECTSPACE 1514 normal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0; 1515 #ifdef FLIP_SIDED 1516 normal = - normal; 1517 #endif 1518 #ifdef DOUBLE_SIDED 1519 normal = normal * faceDirection; 1520 #endif 1521 normal = normalize( normalMatrix * normal ); 1522#elif defined( USE_NORMALMAP_TANGENTSPACE ) 1523 vec3 mapN = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0; 1524 mapN.xy *= normalScale; 1525 normal = normalize( tbn * mapN ); 1526#elif defined( USE_BUMPMAP )
1527 normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection ); 1528#endif`,Cne=`#ifndef FLAT_SHADED 1529 varying vec3 vNormal; 1530 #ifdef USE_TANGENT 1531 varying vec3 vTangent; 1532 varying vec3 vBitangent; 1533 #endif 1534#endif`,wne=`#ifndef FLAT_SHADED 1535 varying vec3 vNormal; 1536 #ifdef USE_TANGENT 1537 varying vec3 vTangent; 1538 varying vec3 vBitangent; 1539 #endif 1540#endif`,Ine=`#ifndef FLAT_SHADED 1541 vNormal = normalize( transformedNormal ); 1542 #ifdef USE_TANGENT 1543 vTangent = normalize( transformedTangent ); 1544 vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w ); 1545 #endif 1546#endif`,Mne=`#ifdef USE_NORMALMAP 1547 uniform sampler2D normalMap; 1548 uniform vec2 normalScale; 1549#endif 1550#ifdef USE_NORMALMAP_OBJECTSPACE 1551 uniform mat3 normalMatrix; 1552#endif 1553#if ! defined ( USE_TANGENT ) && ( defined ( USE_NORMALMAP_TANGENTSPACE ) || defined ( USE_CLEARCOAT_NORMALMAP ) || defined( USE_ANISOTROPY ) ) 1554 mat3 getTangentFrame( vec3 eye_pos, vec3 surf_norm, vec2 uv ) { 1555 vec3 q0 = dFdx( eye_pos.xyz ); 1556 vec3 q1 = dFdy( eye_pos.xyz ); 1557 vec2 st0 = dFdx( uv.st ); 1558 vec2 st1 = dFdy( uv.st ); 1559 vec3 N = surf_norm; 1560 vec3 q1perp = cross( q1, N ); 1561 vec3 q0perp = cross( N, q0 ); 1562 vec3 T = q1perp * st0.x + q0perp * st1.x; 1563 vec3 B = q1perp * st0.y + q0perp * st1.y; 1564 float det = max( dot( T, T ), dot( B, B ) ); 1565 float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det ); 1566 return mat3( T * scale, B * scale, N ); 1567 } 1568#endif`,Rne=`#ifdef USE_CLEARCOAT 1569 vec3 clearcoatNormal = geometryNormal; 1570#endif`,bne=`#ifdef USE_CLEARCOAT_NORMALMAP 1571 vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0; 1572 clearcoatMapN.xy *= clearcoatNormalScale; 1573 clearcoatNormal = normalize( tbn2 * clearcoatMapN ); 1574#endif`,Pne=`#ifdef USE_CLEARCOATMAP 1575 uniform sampler2D clearcoatMap; 1576#endif 1577#ifdef USE_CLEARCOAT_NORMALMAP 1578 uniform sampler2D clearcoatNormalMap; 1579 uniform vec2 clearcoatNormalScale; 1580#endif 1581#ifdef USE_CLEARCOAT_ROUGHNESSMAP 1582 uniform sampler2D clearcoatRoughnessMap; 1583#endif`,Bne=`#ifdef USE_IRIDESCENCEMAP 1584 uniform sampler2D iridescenceMap; 1585#endif 1586#ifdef USE_IRIDESCENCE_THICKNESSMAP 1587 uniform sampler2D iridescenceThicknessMap; 1588#endif`,Dne=`#ifdef OPAQUE 1589diffuseColor.a = 1.0; 1590#endif 1591#ifdef USE_TRANSMISSION 1592diffuseColor.a *= material.transmissionAlpha; 1593#endif 1594gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,Lne=`vec3 packNormalToRGB( const in vec3 normal ) { 1595 return normalize( normal ) * 0.5 + 0.5; 1596} 1597vec3 unpackRGBToNormal( const in vec3 rgb ) { 1598 return 2.0 * rgb.xyz - 1.0; 1599} 1600const float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.; 1601const vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. ); 1602const vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. ); 1603const float ShiftRight8 = 1. / 256.; 1604vec4 packDepthToRGBA( const in float v ) { 1605 vec4 r = vec4( fract( v * PackFactors ), v ); 1606 r.yzw -= r.xyz * ShiftRight8; return r * PackUpscale; 1607} 1608float unpackRGBAToDepth( const in vec4 v ) { 1609 return dot( v, UnpackFactors ); 1610} 1611vec2 packDepthToRG( in highp float v ) { 1612 return packDepthToRGBA( v ).yx; 1613} 1614float unpackRGToDepth( const in highp vec2 v ) { 1615 return unpackRGBAToDepth( vec4( v.xy, 0.0, 0.0 ) ); 1616} 1617vec4 pack2HalfToRGBA( vec2 v ) { 1618 vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) ); 1619 return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w ); 1620} 1621vec2 unpackRGBATo2Half( vec4 v ) { 1622 return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) ); 1623} 1624float viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) { 1625 return ( viewZ + near ) / ( near - far ); 1626} 1627float orthographicDepthToViewZ( const in float depth, const in float near, const in float far ) { 1628 return depth * ( near - far ) - near; 1629} 1630float viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) { 1631 return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ ); 1632} 1633float perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) { 1634 return ( near * far ) / ( ( far - near ) * depth - far ); 1635}`,Nne=`#ifdef PREMULTIPLIED_ALPHA 1636 gl_FragColor.rgb *= gl_FragColor.a; 1637#endif`,kne=`vec4 mvPosition = vec4( transformed, 1.0 ); 1638#ifdef USE_INSTANCING 1639 mvPosition = instanceMatrix * mvPosition; 1640#endif 1641mvPosition = modelViewMatrix * mvPosition; 1642gl_Position = projectionMatrix * mvPosition;`,Fne=`#ifdef DITHERING 1643 gl_FragColor.rgb = dithering( gl_FragColor.rgb ); 1644#endif`,One=`#ifdef DITHERING 1645 vec3 dithering( vec3 color ) { 1646 float grid_position = rand( gl_FragCoord.xy ); 1647 vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 ); 1648 dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position ); 1649 return color + dither_shift_RGB; 1650 } 1651#endif`,Une=`float roughnessFactor = roughness; 1652#ifdef USE_ROUGHNESSMAP 1653 vec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv ); 1654 roughnessFactor *= texelRoughness.g; 1655#endif`,zne=`#ifdef USE_ROUGHNESSMAP 1656 uniform sampler2D roughnessMap;
1657#endif`,Vne=`#if NUM_SPOT_LIGHT_COORDS > 0 1658 varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ]; 1659#endif 1660#if NUM_SPOT_LIGHT_MAPS > 0 1661 uniform sampler2D spotLightMap[ NUM_SPOT_LIGHT_MAPS ]; 1662#endif 1663#ifdef USE_SHADOWMAP 1664 #if NUM_DIR_LIGHT_SHADOWS > 0 1665 uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ]; 1666 varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; 1667 struct DirectionalLightShadow { 1668 float shadowBias; 1669 float shadowNormalBias; 1670 float shadowRadius; 1671 vec2 shadowMapSize; 1672 }; 1673 uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; 1674 #endif 1675 #if NUM_SPOT_LIGHT_SHADOWS > 0 1676 uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ]; 1677 struct SpotLightShadow { 1678 float shadowBias; 1679 float shadowNormalBias; 1680 float shadowRadius; 1681 vec2 shadowMapSize; 1682 }; 1683 uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; 1684 #endif 1685 #if NUM_POINT_LIGHT_SHADOWS > 0 1686 uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ]; 1687 varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; 1688 struct PointLightShadow { 1689 float shadowBias; 1690 float shadowNormalBias; 1691 float shadowRadius; 1692 vec2 shadowMapSize; 1693 float shadowCameraNear; 1694 float shadowCameraFar; 1695 }; 1696 uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; 1697 #endif 1698 float texture2DCompare( sampler2D depths, vec2 uv, float compare ) { 1699 return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) ); 1700 } 1701 vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) { 1702 return unpackRGBATo2Half( texture2D( shadow, uv ) ); 1703 } 1704 float VSMShadow (sampler2D shadow, vec2 uv, float compare ){ 1705 float occlusion = 1.0; 1706 vec2 distribution = texture2DDistribution( shadow, uv ); 1707 float hard_shadow = step( compare , distribution.x ); 1708 if (hard_shadow != 1.0 ) { 1709 float distance = compare - distribution.x ; 1710 float variance = max( 0.00000, distribution.y * distribution.y ); 1711 float softness_probability = variance / (variance + distance * distance ); softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 ); 1712 } 1713 return occlusion; 1714 } 1715 float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) { 1716 float shadow = 1.0; 1717 shadowCoord.xyz /= shadowCoord.w; 1718 shadowCoord.z += shadowBias; 1719 bool inFrustum = shadowCoord.x >= 0.0 && shadowCoord.x <= 1.0 && shadowCoord.y >= 0.0 && shadowCoord.y <= 1.0; 1720 bool frustumTest = inFrustum && shadowCoord.z <= 1.0; 1721 if ( frustumTest ) { 1722 #if defined( SHADOWMAP_TYPE_PCF ) 1723 vec2 texelSize = vec2( 1.0 ) / shadowMapSize; 1724 float dx0 = - texelSize.x * shadowRadius; 1725 float dy0 = - texelSize.y * shadowRadius; 1726 float dx1 = + texelSize.x * shadowRadius; 1727 float dy1 = + texelSize.y * shadowRadius; 1728 float dx2 = dx0 / 2.0; 1729 float dy2 = dy0 / 2.0; 1730 float dx3 = dx1 / 2.0; 1731 float dy3 = dy1 / 2.0; 1732 shadow = ( 1733 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) + 1734 texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) + 1735 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) + 1736 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) + 1737 texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) + 1738 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) + 1739 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) + 1740 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) + 1741 texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) + 1742 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) + 1743 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) + 1744 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) + 1745 texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) + 1746 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) + 1747 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) + 1748 texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) + 1749 texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z ) 1750 ) * ( 1.0 / 17.0 ); 1751 #elif defined( SHADOWMAP_TYPE_PCF_SOFT ) 1752 vec2 texelSize = vec2( 1.0 ) / shadowMapSize; 1753 float dx = texelSize.x; 1754 float dy = texelSize.y; 1755 vec2 uv = shadowCoord.xy;
1756 vec2 f = fract( uv * shadowMapSize + 0.5 ); 1757 uv -= f * texelSize; 1758 shadow = ( 1759 texture2DCompare( shadowMap, uv, shadowCoord.z ) + 1760 texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) + 1761 texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) + 1762 texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) + 1763 mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), 1764 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ), 1765 f.x ) + 1766 mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), 1767 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ), 1768 f.x ) + 1769 mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), 1770 texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ), 1771 f.y ) + 1772 mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), 1773 texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ), 1774 f.y ) + 1775 mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), 1776 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ), 1777 f.x ), 1778 mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), 1779 texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ), 1780 f.x ), 1781 f.y ) 1782 ) * ( 1.0 / 9.0 ); 1783 #elif defined( SHADOWMAP_TYPE_VSM ) 1784 shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z ); 1785 #else 1786 shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ); 1787 #endif 1788 } 1789 return shadow; 1790 } 1791 vec2 cubeToUV( vec3 v, float texelSizeY ) { 1792 vec3 absV = abs( v ); 1793 float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) ); 1794 absV *= scaleToCube; 1795 v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY ); 1796 vec2 planar = v.xy; 1797 float almostATexel = 1.5 * texelSizeY; 1798 float almostOne = 1.0 - almostATexel; 1799 if ( absV.z >= almostOne ) { 1800 if ( v.z > 0.0 ) 1801 planar.x = 4.0 - v.x; 1802 } else if ( absV.x >= almostOne ) { 1803 float signX = sign( v.x ); 1804 planar.x = v.z * signX + 2.0 * signX; 1805 } else if ( absV.y >= almostOne ) { 1806 float signY = sign( v.y ); 1807 planar.x = v.x + 2.0 * signY + 2.0; 1808 planar.y = v.z * signY - 2.0; 1809 } 1810 return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 ); 1811 } 1812 float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) { 1813 vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) ); 1814 vec3 lightToPosition = shadowCoord.xyz; 1815 float dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); dp += shadowBias; 1816 vec3 bd3D = normalize( lightToPosition ); 1817 #if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM ) 1818 vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y; 1819 return ( 1820 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) + 1821 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) + 1822 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) + 1823 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) + 1824 texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) + 1825 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) + 1826 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) + 1827 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) + 1828 texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp ) 1829 ) * ( 1.0 / 9.0 ); 1830 #else 1831 return texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ); 1832 #endif 1833 } 1834#endif`,Gne=`#if NUM_SPOT_LIGHT_COORDS > 0 1835 uniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ]; 1836 varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ]; 1837#endif 1838#ifdef USE_SHADOWMAP 1839 #if NUM_DIR_LIGHT_SHADOWS > 0 1840 uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ]; 1841 varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; 1842 struct DirectionalLightShadow { 1843 float shadowBias; 1844 float shadowNormalBias; 1845 float shadowRadius; 1846 vec2 shadowMapSize; 1847 }; 1848 uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; 1849 #endif
1850 #if NUM_SPOT_LIGHT_SHADOWS > 0 1851 struct SpotLightShadow { 1852 float shadowBias; 1853 float shadowNormalBias; 1854 float shadowRadius; 1855 vec2 shadowMapSize; 1856 }; 1857 uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; 1858 #endif 1859 #if NUM_POINT_LIGHT_SHADOWS > 0 1860 uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ]; 1861 varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; 1862 struct PointLightShadow { 1863 float shadowBias; 1864 float shadowNormalBias; 1865 float shadowRadius; 1866 vec2 shadowMapSize; 1867 float shadowCameraNear; 1868 float shadowCameraFar; 1869 }; 1870 uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; 1871 #endif 1872#endif`,Qne=`#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 ) 1873 vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); 1874 vec4 shadowWorldPosition; 1875#endif 1876#if defined( USE_SHADOWMAP ) 1877 #if NUM_DIR_LIGHT_SHADOWS > 0 1878 #pragma unroll_loop_start 1879 for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { 1880 shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 ); 1881 vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition; 1882 } 1883 #pragma unroll_loop_end 1884 #endif 1885 #if NUM_POINT_LIGHT_SHADOWS > 0 1886 #pragma unroll_loop_start 1887 for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { 1888 shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 ); 1889 vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition; 1890 } 1891 #pragma unroll_loop_end 1892 #endif 1893#endif 1894#if NUM_SPOT_LIGHT_COORDS > 0 1895 #pragma unroll_loop_start 1896 for ( int i = 0; i < NUM_SPOT_LIGHT_COORDS; i ++ ) { 1897 shadowWorldPosition = worldPosition; 1898 #if ( defined( USE_SHADOWMAP ) && UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS ) 1899 shadowWorldPosition.xyz += shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias; 1900 #endif 1901 vSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition; 1902 } 1903 #pragma unroll_loop_end 1904#endif`,Hne=`float getShadowMask() { 1905 float shadow = 1.0; 1906 #ifdef USE_SHADOWMAP 1907 #if NUM_DIR_LIGHT_SHADOWS > 0 1908 DirectionalLightShadow directionalLight; 1909 #pragma unroll_loop_start 1910 for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { 1911 directionalLight = directionalLightShadows[ i ]; 1912 shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; 1913 } 1914 #pragma unroll_loop_end 1915 #endif 1916 #if NUM_SPOT_LIGHT_SHADOWS > 0 1917 SpotLightShadow spotLight; 1918 #pragma unroll_loop_start 1919 for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) { 1920 spotLight = spotLightShadows[ i ]; 1921 shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotLightCoord[ i ] ) : 1.0; 1922 } 1923 #pragma unroll_loop_end 1924 #endif 1925 #if NUM_POINT_LIGHT_SHADOWS > 0 1926 PointLightShadow pointLight; 1927 #pragma unroll_loop_start 1928 for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { 1929 pointLight = pointLightShadows[ i ]; 1930 shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0; 1931 } 1932 #pragma unroll_loop_end 1933 #endif 1934 #endif 1935 return shadow; 1936}`,Wne=`#ifdef USE_SKINNING 1937 mat4 boneMatX = getBoneMatrix( skinIndex.x ); 1938 mat4 boneMatY = getBoneMatrix( skinIndex.y ); 1939 mat4 boneMatZ = getBoneMatrix( skinIndex.z ); 1940 mat4 boneMatW = getBoneMatrix( skinIndex.w ); 1941#endif`,$ne=`#ifdef USE_SKINNING 1942 uniform mat4 bindMatrix; 1943 uniform mat4 bindMatrixInverse; 1944 uniform highp sampler2D boneTexture; 1945 uniform int boneTextureSize; 1946 mat4 getBoneMatrix( const in float i ) { 1947 float j = i * 4.0; 1948 float x = mod( j, float( boneTextureSize ) ); 1949 float y = floor( j / float( boneTextureSize ) ); 1950 float dx = 1.0 / float( boneTextureSize ); 1951 float dy = 1.0 / float( boneTextureSize ); 1952 y = dy * ( y + 0.5 ); 1953 vec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) ); 1954 vec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) ); 1955 vec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) ); 1956 vec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) ); 1957 mat4 bone = mat4( v1, v2, v3, v4 ); 1958 return bone; 1959 } 1960#endif`,jne=`#ifdef USE_SKINNING 1961 vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 ); 1962 vec4 skinned = vec4( 0.0 ); 1963 skinned += boneMatX * skinVertex * skinWeight.x; 1964 skinned += boneMatY * skinVertex * skinWeight.y; 1965 skinned += boneMatZ * skinVertex * skinWeight.z; 1966 skinned += boneMatW * skinVertex * skinWeight.w; 1967 transformed = ( bindMatrixInverse * skinned ).xyz; 1968#endif`,Xne=`#ifdef USE_SKINNING 1969 mat4 skinMatrix = mat4( 0.0 ); 1970 skinMatrix += skinWeight.x * boneMatX; 1971 skinMatrix += skinWeight.y * boneMatY; 1972 skinMatrix += skinWeight.z * boneMatZ; 1973 skinMatrix += skinWeight.w * boneMatW; 1974 skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix; 1975 objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz; 1976 #ifdef USE_TANGENT 1977 objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz; 1978 #endif 1979#endif`,Yne=`float specularStrength; 1980#ifdef USE_SPECULARMAP 1981 vec4 texelSpecular = texture2D( specularMap, vSpecularMapUv ); 1982 specularStrength = texelSpecular.r; 1983#else 1984 specularStrength = 1.0; 1985#endif`,Kne=`#ifdef USE_SPECULARMAP 1986 uniform sampler2D specularMap; 1987#endif`,Jne=`#if defined( TONE_MAPPING ) 1988 gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); 1989#endif`,Zne=`#ifndef saturate 1990#define saturate( a ) clamp( a, 0.0, 1.0 ) 1991#endif 1992uniform float toneMappingExposure; 1993vec3 LinearToneMapping( vec3 color ) { 1994 return saturate( toneMappingExposure * color ); 1995} 1996vec3 ReinhardToneMapping( vec3 color ) { 1997 color *= toneMappingExposure; 1998 return saturate( color / ( vec3( 1.0 ) + color ) ); 1999} 2000vec3 OptimizedCineonToneMapping( vec3 color ) { 2001 color *= toneMappingExposure; 2002 color = max( vec3( 0.0 ), color - 0.004 ); 2003 return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) ); 2004} 2005vec3 RRTAndODTFit( vec3 v ) { 2006 vec3 a = v * ( v + 0.0245786 ) - 0.000090537; 2007 vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081; 2008 return a / b; 2009} 2010vec3 ACESFilmicToneMapping( vec3 color ) { 2011 const mat3 ACESInputMat = mat3( 2012 vec3( 0.59719, 0.07600, 0.02840 ), vec3( 0.35458, 0.90834, 0.13383 ), 2013 vec3( 0.04823, 0.01566, 0.83777 ) 2014 ); 2015 const mat3 ACESOutputMat = mat3( 2016 vec3( 1.60475, -0.10208, -0.00327 ), vec3( -0.53108, 1.10813, -0.07276 ), 2017 vec3( -0.07367, -0.00605, 1.07602 ) 2018 ); 2019 color *= toneMappingExposure / 0.6; 2020 color = ACESInputMat * color; 2021 color = RRTAndODTFit( color ); 2022 color = ACESOutputMat * color; 2023 return saturate( color ); 2024} 2025vec3 CustomToneMapping( vec3 color ) { return color; }`,eie=`#ifdef USE_TRANSMISSION 2026 material.transmission = transmission; 2027 material.transmissionAlpha = 1.0; 2028 material.thickness = thickness; 2029 material.attenuationDistance = attenuationDistance; 2030 material.attenuationColor = attenuationColor; 2031 #ifdef USE_TRANSMISSIONMAP 2032 material.transmission *= texture2D( transmissionMap, vTransmissionMapUv ).r; 2033 #endif 2034 #ifdef USE_THICKNESSMAP 2035 material.thickness *= texture2D( thicknessMap, vThicknessMapUv ).g; 2036 #endif 2037 vec3 pos = vWorldPosition; 2038 vec3 v = normalize( cameraPosition - pos ); 2039 vec3 n = inverseTransformDirection( normal, viewMatrix ); 2040 vec4 transmitted = getIBLVolumeRefraction( 2041 n, v, material.roughness, material.diffuseColor, material.specularColor, material.specularF90, 2042 pos, modelMatrix, viewMatrix, projectionMatrix, material.ior, material.thickness, 2043 material.attenuationColor, material.attenuationDistance ); 2044 material.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission ); 2045 totalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission ); 2046#endif`,tie=`#ifdef USE_TRANSMISSION 2047 uniform float transmission; 2048 uniform float thickness; 2049 uniform float attenuationDistance; 2050 uniform vec3 attenuationColor; 2051 #ifdef USE_TRANSMISSIONMAP 2052 uniform sampler2D transmissionMap; 2053 #endif 2054 #ifdef USE_THICKNESSMAP 2055 uniform sampler2D thicknessMap; 2056 #endif 2057 uniform vec2 transmissionSamplerSize; 2058 uniform sampler2D transmissionSamplerMap; 2059 uniform mat4 modelMatrix; 2060 uniform mat4 projectionMatrix; 2061 varying vec3 vWorldPosition; 2062 float w0( float a ) { 2063 return ( 1.0 / 6.0 ) * ( a * ( a * ( - a + 3.0 ) - 3.0 ) + 1.0 ); 2064 } 2065 float w1( float a ) { 2066 return ( 1.0 / 6.0 ) * ( a * a * ( 3.0 * a - 6.0 ) + 4.0 ); 2067 } 2068 float w2( float a ){ 2069 return ( 1.0 / 6.0 ) * ( a * ( a * ( - 3.0 * a + 3.0 ) + 3.0 ) + 1.0 ); 2070 } 2071 float w3( float a ) { 2072 return ( 1.0 / 6.0 ) * ( a * a * a ); 2073 } 2074 float g0( float a ) { 2075 return w0( a ) + w1( a ); 2076 } 2077 float g1( float a ) { 2078 return w2( a ) + w3( a ); 2079 } 2080 float h0( float a ) { 2081 return - 1.0 + w1( a ) / ( w0( a ) + w1( a ) ); 2082 } 2083 float h1( float a ) { 2084 return 1.0 + w3( a ) / ( w2( a ) + w3( a ) ); 2085 } 2086 vec4 bicubic( sampler2D tex, vec2 uv, vec4 texelSize, float lod ) { 2087 uv = uv * texelSize.zw + 0.5; 2088 vec2 iuv = floor( uv ); 2089 vec2 fuv = fract( uv ); 2090 float g0x = g0( fuv.x ); 2091 float g1x = g1( fuv.x ); 2092 float h0x = h0( fuv.x ); 2093 float h1x = h1( fuv.x ); 2094 float h0y = h0( fuv.y ); 2095 float h1y = h1( fuv.y ); 2096 vec2 p0 = ( vec2( iuv.x + h0x, iuv.y + h0y ) - 0.5 ) * texelSize.xy; 2097 vec2 p1 = ( vec2( iuv.x + h1x, iuv.y + h0y ) - 0.5 ) * texelSize.xy; 2098 vec2 p2 = ( vec2( iuv.x + h0x, iuv.y + h1y ) - 0.5 ) * texelSize.xy; 2099 vec2 p3 = ( vec2( iuv.x + h1x, iuv.y + h1y ) - 0.5 ) * texelSize.xy; 2100 return g0( fuv.y ) * ( g0x * textureLod( tex, p0, lod ) + g1x * textureLod( tex, p1, lod ) ) + 2101 g1( fuv.y ) * ( g0x * textureLod( tex, p2, lod ) + g1x * textureLod( tex, p3, lod ) ); 2102 } 2103 vec4 textureBicubic( sampler2D sampler, vec2 uv, float lod ) { 2104 vec2 fLodSize = vec2( textureSize( sampler, int( lod ) ) ); 2105 vec2 cLodSize = vec2( textureSize( sampler, int( lod + 1.0 ) ) ); 2106 vec2 fLodSizeInv = 1.0 / fLodSize; 2107 vec2 cLodSizeInv = 1.0 / cLodSize; 2108 vec4 fSample = bicubic( sampler, uv, vec4( fLodSizeInv, fLodSize ), floor( lod ) ); 2109 vec4 cSample = bicubic( sampler, uv, vec4( cLodSizeInv, cLodSize ), ceil( lod ) ); 2110 return mix( fSample, cSample, fract( lod ) ); 2111 } 2112 vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) { 2113 vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior ); 2114 vec3 modelScale; 2115 modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) ); 2116 modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) ); 2117 modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) ); 2118 return normalize( refractionVector ) * thickness * modelScale; 2119 } 2120 float applyIorToRoughness( const in float roughness, const in float ior ) { 2121 return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 ); 2122 } 2123 vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) { 2124 float lod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior ); 2125 return textureBicubic( transmissionSamplerMap, fragCoord.xy, lod ); 2126 } 2127 vec3 volumeAttenuation( const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) { 2128 if ( isinf( attenuationDistance ) ) { 2129 return vec3( 1.0 ); 2130 } else { 2131 vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance; 2132 vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); return transmittance; 2133 } 2134 } 2135 vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor, 2136 const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix, 2137 const in mat4 viewMatrix, const in mat4 projMatrix, const in float ior, const in float thickness, 2138 const in vec3 attenuationColor, const in float attenuationDistance ) { 2139 vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix ); 2140 vec3 refractedRayExit = position + transmissionRay; 2141 vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 ); 2142 vec2 refractionCoords = ndcPos.xy / ndcPos.w; 2143 refractionCoords += 1.0; 2144 refractionCoords /= 2.0; 2145 vec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior ); 2146 vec3 transmittance = diffuseColor * volumeAttenuation( length( transmissionRay ), attenuationColor, attenuationDistance ); 2147 vec3 attenuatedColor = transmittance * transmittedLight.rgb; 2148 vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness ); 2149 float transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0; 2150 return vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor ); 2151 } 2152#endif`,nie=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) 2153 varying vec2 vUv; 2154#endif 2155#ifdef USE_MAP 2156 varying vec2 vMapUv; 2157#endif 2158#ifdef USE_ALPHAMAP
2159 varying vec2 vAlphaMapUv; 2160#endif 2161#ifdef USE_LIGHTMAP 2162 varying vec2 vLightMapUv; 2163#endif 2164#ifdef USE_AOMAP 2165 varying vec2 vAoMapUv; 2166#endif 2167#ifdef USE_BUMPMAP 2168 varying vec2 vBumpMapUv; 2169#endif 2170#ifdef USE_NORMALMAP 2171 varying vec2 vNormalMapUv; 2172#endif 2173#ifdef USE_EMISSIVEMAP 2174 varying vec2 vEmissiveMapUv; 2175#endif 2176#ifdef USE_METALNESSMAP 2177 varying vec2 vMetalnessMapUv; 2178#endif 2179#ifdef USE_ROUGHNESSMAP 2180 varying vec2 vRoughnessMapUv; 2181#endif 2182#ifdef USE_ANISOTROPYMAP 2183 varying vec2 vAnisotropyMapUv; 2184#endif 2185#ifdef USE_CLEARCOATMAP 2186 varying vec2 vClearcoatMapUv; 2187#endif 2188#ifdef USE_CLEARCOAT_NORMALMAP 2189 varying vec2 vClearcoatNormalMapUv; 2190#endif 2191#ifdef USE_CLEARCOAT_ROUGHNESSMAP 2192 varying vec2 vClearcoatRoughnessMapUv; 2193#endif 2194#ifdef USE_IRIDESCENCEMAP 2195 varying vec2 vIridescenceMapUv; 2196#endif 2197#ifdef USE_IRIDESCENCE_THICKNESSMAP 2198 varying vec2 vIridescenceThicknessMapUv; 2199#endif 2200#ifdef USE_SHEEN_COLORMAP 2201 varying vec2 vSheenColorMapUv; 2202#endif 2203#ifdef USE_SHEEN_ROUGHNESSMAP 2204 varying vec2 vSheenRoughnessMapUv; 2205#endif 2206#ifdef USE_SPECULARMAP 2207 varying vec2 vSpecularMapUv; 2208#endif 2209#ifdef USE_SPECULAR_COLORMAP 2210 varying vec2 vSpecularColorMapUv; 2211#endif 2212#ifdef USE_SPECULAR_INTENSITYMAP 2213 varying vec2 vSpecularIntensityMapUv; 2214#endif 2215#ifdef USE_TRANSMISSIONMAP 2216 uniform mat3 transmissionMapTransform; 2217 varying vec2 vTransmissionMapUv; 2218#endif 2219#ifdef USE_THICKNESSMAP 2220 uniform mat3 thicknessMapTransform; 2221 varying vec2 vThicknessMapUv; 2222#endif`,iie=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) 2223 varying vec2 vUv; 2224#endif 2225#ifdef USE_MAP 2226 uniform mat3 mapTransform; 2227 varying vec2 vMapUv; 2228#endif 2229#ifdef USE_ALPHAMAP 2230 uniform mat3 alphaMapTransform; 2231 varying vec2 vAlphaMapUv; 2232#endif 2233#ifdef USE_LIGHTMAP 2234 uniform mat3 lightMapTransform; 2235 varying vec2 vLightMapUv; 2236#endif 2237#ifdef USE_AOMAP 2238 uniform mat3 aoMapTransform; 2239 varying vec2 vAoMapUv; 2240#endif 2241#ifdef USE_BUMPMAP 2242 uniform mat3 bumpMapTransform; 2243 varying vec2 vBumpMapUv; 2244#endif 2245#ifdef USE_NORMALMAP 2246 uniform mat3 normalMapTransform; 2247 varying vec2 vNormalMapUv; 2248#endif 2249#ifdef USE_DISPLACEMENTMAP 2250 uniform mat3 displacementMapTransform; 2251 varying vec2 vDisplacementMapUv; 2252#endif 2253#ifdef USE_EMISSIVEMAP 2254 uniform mat3 emissiveMapTransform; 2255 varying vec2 vEmissiveMapUv; 2256#endif 2257#ifdef USE_METALNESSMAP 2258 uniform mat3 metalnessMapTransform; 2259 varying vec2 vMetalnessMapUv; 2260#endif 2261#ifdef USE_ROUGHNESSMAP 2262 uniform mat3 roughnessMapTransform; 2263 varying vec2 vRoughnessMapUv; 2264#endif 2265#ifdef USE_ANISOTROPYMAP 2266 uniform mat3 anisotropyMapTransform; 2267 varying vec2 vAnisotropyMapUv; 2268#endif 2269#ifdef USE_CLEARCOATMAP 2270 uniform mat3 clearcoatMapTransform; 2271 varying vec2 vClearcoatMapUv; 2272#endif 2273#ifdef USE_CLEARCOAT_NORMALMAP 2274 uniform mat3 clearcoatNormalMapTransform; 2275 varying vec2 vClearcoatNormalMapUv; 2276#endif 2277#ifdef USE_CLEARCOAT_ROUGHNESSMAP 2278 uniform mat3 clearcoatRoughnessMapTransform; 2279 varying vec2 vClearcoatRoughnessMapUv; 2280#endif 2281#ifdef USE_SHEEN_COLORMAP 2282 uniform mat3 sheenColorMapTransform; 2283 varying vec2 vSheenColorMapUv; 2284#endif 2285#ifdef USE_SHEEN_ROUGHNESSMAP 2286 uniform mat3 sheenRoughnessMapTransform; 2287 varying vec2 vSheenRoughnessMapUv; 2288#endif 2289#ifdef USE_IRIDESCENCEMAP 2290 uniform mat3 iridescenceMapTransform; 2291 varying vec2 vIridescenceMapUv; 2292#endif 2293#ifdef USE_IRIDESCENCE_THICKNESSMAP 2294 uniform mat3 iridescenceThicknessMapTransform; 2295 varying vec2 vIridescenceThicknessMapUv; 2296#endif 2297#ifdef USE_SPECULARMAP 2298 uniform mat3 specularMapTransform; 2299 varying vec2 vSpecularMapUv; 2300#endif 2301#ifdef USE_SPECULAR_COLORMAP 2302 uniform mat3 specularColorMapTransform; 2303 varying vec2 vSpecularColorMapUv; 2304#endif 2305#ifdef USE_SPECULAR_INTENSITYMAP 2306 uniform mat3 specularIntensityMapTransform; 2307 varying vec2 vSpecularIntensityMapUv; 2308#endif 2309#ifdef USE_TRANSMISSIONMAP 2310 uniform mat3 transmissionMapTransform; 2311 varying vec2 vTransmissionMapUv; 2312#endif 2313#ifdef USE_THICKNESSMAP 2314 uniform mat3 thicknessMapTransform; 2315 varying vec2 vThicknessMapUv; 2316#endif`,rie=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) 2317 vUv = vec3( uv, 1 ).xy; 2318#endif 2319#ifdef USE_MAP 2320 vMapUv = ( mapTransform * vec3( MAP_UV, 1 ) ).xy; 2321#endif 2322#ifdef USE_ALPHAMAP 2323 vAlphaMapUv = ( alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) ).xy; 2324#endif 2325#ifdef USE_LIGHTMAP 2326 vLightMapUv = ( lightMapTransform * vec3( LIGHTMAP_UV, 1 ) ).xy; 2327#endif 2328#ifdef USE_AOMAP 2329 vAoMapUv = ( aoMapTransform * vec3( AOMAP_UV, 1 ) ).xy; 2330#endif 2331#ifdef USE_BUMPMAP 2332 vBumpMapUv = ( bumpMapTransform * vec3( BUMPMAP_UV, 1 ) ).xy; 2333#endif 2334#ifdef USE_NORMALMAP 2335 vNormalMapUv = ( normalMapTransform * vec3( NORMALMAP_UV, 1 ) ).xy; 2336#endif 2337#ifdef USE_DISPLACEMENTMAP 2338 vDisplacementMapUv = ( displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) ).xy; 2339#endif 2340#ifdef USE_EMISSIVEMAP 2341 vEmissiveMapUv = ( emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) ).xy; 2342#endif 2343#ifdef USE_METALNESSMAP 2344 vMetalnessMapUv = ( metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) ).xy; 2345#endif 2346#ifdef USE_ROUGHNESSMAP 2347 vRoughnessMapUv = ( roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) ).xy; 2348#endif 2349#ifdef USE_ANISOTROPYMAP 2350 vAnisotropyMapUv = ( anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) ).xy; 2351#endif 2352#ifdef USE_CLEARCOATMAP 2353 vClearcoatMapUv = ( clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) ).xy; 2354#endif 2355#ifdef USE_CLEARCOAT_NORMALMAP 2356 vClearcoatNormalMapUv = ( clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) ).xy; 2357#endif 2358#ifdef USE_CLEARCOAT_ROUGHNESSMAP 2359 vClearcoatRoughnessMapUv = ( clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) ).xy; 2360#endif
2361#ifdef USE_IRIDESCENCEMAP 2362 vIridescenceMapUv = ( iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) ).xy; 2363#endif 2364#ifdef USE_IRIDESCENCE_THICKNESSMAP 2365 vIridescenceThicknessMapUv = ( iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) ).xy; 2366#endif 2367#ifdef USE_SHEEN_COLORMAP 2368 vSheenColorMapUv = ( sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) ).xy; 2369#endif 2370#ifdef USE_SHEEN_ROUGHNESSMAP 2371 vSheenRoughnessMapUv = ( sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) ).xy; 2372#endif 2373#ifdef USE_SPECULARMAP 2374 vSpecularMapUv = ( specularMapTransform * vec3( SPECULARMAP_UV, 1 ) ).xy; 2375#endif 2376#ifdef USE_SPECULAR_COLORMAP 2377 vSpecularColorMapUv = ( specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) ).xy; 2378#endif 2379#ifdef USE_SPECULAR_INTENSITYMAP 2380 vSpecularIntensityMapUv = ( specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) ).xy; 2381#endif 2382#ifdef USE_TRANSMISSIONMAP 2383 vTransmissionMapUv = ( transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) ).xy; 2384#endif 2385#ifdef USE_THICKNESSMAP 2386 vThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy; 2387#endif`,sie=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0 2388 vec4 worldPosition = vec4( transformed, 1.0 ); 2389 #ifdef USE_INSTANCING 2390 worldPosition = instanceMatrix * worldPosition; 2391 #endif 2392 worldPosition = modelMatrix * worldPosition; 2393#endif`;const oie=`varying vec2 vUv; 2394uniform mat3 uvTransform; 2395void main() { 2396 vUv = ( uvTransform * vec3( uv, 1 ) ).xy; 2397 gl_Position = vec4( position.xy, 1.0, 1.0 ); 2398}`,aie=`uniform sampler2D t2D; 2399uniform float backgroundIntensity; 2400varying vec2 vUv; 2401void main() { 2402 vec4 texColor = texture2D( t2D, vUv ); 2403 texColor.rgb *= backgroundIntensity; 2404 gl_FragColor = texColor; 2405 #include <tonemapping_fragment> 2406 #include <colorspace_fragment> 2407}`,lie=`varying vec3 vWorldDirection; 2408#include <common> 2409void main() { 2410 vWorldDirection = transformDirection( position, modelMatrix ); 2411 #include <begin_vertex> 2412 #include <project_vertex> 2413 gl_Position.z = gl_Position.w; 2414}`,uie=`#ifdef ENVMAP_TYPE_CUBE 2415 uniform samplerCube envMap; 2416#elif defined( ENVMAP_TYPE_CUBE_UV ) 2417 uniform sampler2D envMap; 2418#endif 2419uniform float flipEnvMap; 2420uniform float backgroundBlurriness; 2421uniform float backgroundIntensity; 2422varying vec3 vWorldDirection; 2423#include <cube_uv_reflection_fragment> 2424void main() { 2425 #ifdef ENVMAP_TYPE_CUBE 2426 vec4 texColor = textureCube( envMap, vec3( flipEnvMap * vWorldDirection.x, vWorldDirection.yz ) ); 2427 #elif defined( ENVMAP_TYPE_CUBE_UV ) 2428 vec4 texColor = textureCubeUV( envMap, vWorldDirection, backgroundBlurriness ); 2429 #else 2430 vec4 texColor = vec4( 0.0, 0.0, 0.0, 1.0 ); 2431 #endif 2432 texColor.rgb *= backgroundIntensity; 2433 gl_FragColor = texColor; 2434 #include <tonemapping_fragment> 2435 #include <colorspace_fragment> 2436}`,cie=`varying vec3 vWorldDirection; 2437#include <common> 2438void main() { 2439 vWorldDirection = transformDirection( position, modelMatrix ); 2440 #include <begin_vertex> 2441 #include <project_vertex> 2442 gl_Position.z = gl_Position.w; 2443}`,hie=`uniform samplerCube tCube; 2444uniform float tFlip; 2445uniform float opacity; 2446varying vec3 vWorldDirection; 2447void main() { 2448 vec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) ); 2449 gl_FragColor = texColor; 2450 gl_FragColor.a *= opacity; 2451 #include <tonemapping_fragment> 2452 #include <colorspace_fragment> 2453}`,fie=`#include <common> 2454#include <uv_pars_vertex> 2455#include <displacementmap_pars_vertex> 2456#include <morphtarget_pars_vertex> 2457#include <skinning_pars_vertex> 2458#include <logdepthbuf_pars_vertex> 2459#include <clipping_planes_pars_vertex> 2460varying vec2 vHighPrecisionZW; 2461void main() { 2462 #include <uv_vertex> 2463 #include <skinbase_vertex> 2464 #ifdef USE_DISPLACEMENTMAP 2465 #include <beginnormal_vertex> 2466 #include <morphnormal_vertex> 2467 #include <skinnormal_vertex> 2468 #endif 2469 #include <begin_vertex> 2470 #include <morphtarget_vertex> 2471 #include <skinning_vertex> 2472 #include <displacementmap_vertex> 2473 #include <project_vertex> 2474 #include <logdepthbuf_vertex> 2475 #include <clipping_planes_vertex> 2476 vHighPrecisionZW = gl_Position.zw; 2477}`,die=`#if DEPTH_PACKING == 3200 2478 uniform float opacity; 2479#endif 2480#include <common> 2481#include <packing> 2482#include <uv_pars_fragment> 2483#include <map_pars_fragment> 2484#include <alphamap_pars_fragment> 2485#include <alphatest_pars_fragment> 2486#include <alphahash_pars_fragment> 2487#include <logdepthbuf_pars_fragment> 2488#include <clipping_planes_pars_fragment> 2489varying vec2 vHighPrecisionZW; 2490void main() { 2491 #include <clipping_planes_fragment> 2492 vec4 diffuseColor = vec4( 1.0 ); 2493 #if DEPTH_PACKING == 3200 2494 diffuseColor.a = opacity; 2495 #endif 2496 #include <map_fragment> 2497 #include <alphamap_fragment> 2498 #include <alphatest_fragment> 2499 #include <alphahash_fragment> 2500 #include <logdepthbuf_fragment> 2501 float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5; 2502 #if DEPTH_PACKING == 3200 2503 gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity ); 2504 #elif DEPTH_PACKING == 3201 2505 gl_FragColor = packDepthToRGBA( fragCoordZ ); 2506 #endif 2507}`,pie=`#define DISTANCE 2508varying vec3 vWorldPosition; 2509#include <common> 2510#include <uv_pars_vertex> 2511#include <displacementmap_pars_vertex> 2512#include <morphtarget_pars_vertex> 2513#include <skinning_pars_vertex> 2514#include <clipping_planes_pars_vertex> 2515void main() { 2516 #include <uv_vertex> 2517 #include <skinbase_vertex> 2518 #ifdef USE_DISPLACEMENTMAP 2519 #include <beginnormal_vertex> 2520 #include <morphnormal_vertex> 2521 #include <skinnormal_vertex> 2522 #endif 2523 #include <begin_vertex> 2524 #include <morphtarget_vertex> 2525 #include <skinning_vertex> 2526 #include <displacementmap_vertex> 2527 #include <project_vertex> 2528 #include <worldpos_vertex> 2529 #include <clipping_planes_vertex> 2530 vWorldPosition = worldPosition.xyz; 2531}`,mie=`#define DISTANCE 2532uniform vec3 referencePosition; 2533uniform float nearDistance; 2534uniform float farDistance; 2535varying vec3 vWorldPosition; 2536#include <common> 2537#include <packing> 2538#include <uv_pars_fragment> 2539#include <map_pars_fragment> 2540#include <alphamap_pars_fragment> 2541#include <alphatest_pars_fragment> 2542#include <alphahash_pars_fragment> 2543#include <clipping_planes_pars_fragment> 2544void main () { 2545 #include <clipping_planes_fragment> 2546 vec4 diffuseColor = vec4( 1.0 ); 2547 #include <map_fragment> 2548 #include <alphamap_fragment> 2549 #include <alphatest_fragment> 2550 #include <alphahash_fragment> 2551 float dist = length( vWorldPosition - referencePosition ); 2552 dist = ( dist - nearDistance ) / ( farDistance - nearDistance ); 2553 dist = saturate( dist ); 2554 gl_FragColor = packDepthToRGBA( dist ); 2555}`,gie=`varying vec3 vWorldDirection; 2556#include <common> 2557void main() { 2558 vWorldDirection = transformDirection( position, modelMatrix ); 2559 #include <begin_vertex> 2560 #include <project_vertex> 2561}`,Aie=`uniform sampler2D tEquirect; 2562varying vec3 vWorldDirection; 2563#include <common> 2564void main() { 2565 vec3 direction = normalize( vWorldDirection ); 2566 vec2 sampleUV = equirectUv( direction ); 2567 gl_FragColor = texture2D( tEquirect, sampleUV ); 2568 #include <tonemapping_fragment> 2569 #include <colorspace_fragment> 2570}`,vie=`uniform float scale; 2571attribute float lineDistance; 2572varying float vLineDistance; 2573#include <common> 2574#include <uv_pars_vertex> 2575#include <color_pars_vertex> 2576#include <fog_pars_vertex> 2577#include <morphtarget_pars_vertex> 2578#include <logdepthbuf_pars_vertex> 2579#include <clipping_planes_pars_vertex> 2580void main() { 2581 vLineDistance = scale * lineDistance; 2582 #include <uv_vertex> 2583 #include <color_vertex> 2584 #include <morphcolor_vertex> 2585 #include <begin_vertex> 2586 #include <morphtarget_vertex> 2587 #include <project_vertex> 2588 #include <logdepthbuf_vertex> 2589 #include <clipping_planes_vertex> 2590 #include <fog_vertex> 2591}
2591`,yie=`uniform vec3 diffuse; 2592uniform float opacity; 2593uniform float dashSize; 2594uniform float totalSize; 2595varying float vLineDistance; 2596#include <common> 2597#include <color_pars_fragment> 2598#include <uv_pars_fragment> 2599#include <map_pars_fragment> 2600#include <fog_pars_fragment> 2601#include <logdepthbuf_pars_fragment> 2602#include <clipping_planes_pars_fragment> 2603void main() { 2604 #include <clipping_planes_fragment> 2605 if ( mod( vLineDistance, totalSize ) > dashSize ) { 2606 discard; 2607 } 2608 vec3 outgoingLight = vec3( 0.0 ); 2609 vec4 diffuseColor = vec4( diffuse, opacity ); 2610 #include <logdepthbuf_fragment> 2611 #include <map_fragment> 2612 #include <color_fragment> 2613 outgoingLight = diffuseColor.rgb; 2614 #include <opaque_fragment> 2615 #include <tonemapping_fragment> 2616 #include <colorspace_fragment> 2617 #include <fog_fragment> 2618 #include <premultiplied_alpha_fragment> 2619}`,qie=`#include <common> 2620#include <uv_pars_vertex> 2621#include <envmap_pars_vertex> 2622#include <color_pars_vertex> 2623#include <fog_pars_vertex> 2624#include <morphtarget_pars_vertex> 2625#include <skinning_pars_vertex> 2626#include <logdepthbuf_pars_vertex> 2627#include <clipping_planes_pars_vertex> 2628void main() { 2629 #include <uv_vertex> 2630 #include <color_vertex> 2631 #include <morphcolor_vertex> 2632 #if defined ( USE_ENVMAP ) || defined ( USE_SKINNING ) 2633 #include <beginnormal_vertex> 2634 #include <morphnormal_vertex> 2635 #include <skinbase_vertex> 2636 #include <skinnormal_vertex> 2637 #include <defaultnormal_vertex> 2638 #endif 2639 #include <begin_vertex> 2640 #include <morphtarget_vertex> 2641 #include <skinning_vertex> 2642 #include <project_vertex> 2643 #include <logdepthbuf_vertex> 2644 #include <clipping_planes_vertex> 2645 #include <worldpos_vertex> 2646 #include <envmap_vertex> 2647 #include <fog_vertex> 2648}`,_ie=`uniform vec3 diffuse; 2649uniform float opacity; 2650#ifndef FLAT_SHADED 2651 varying vec3 vNormal; 2652#endif 2653#include <common> 2654#include <dithering_pars_fragment> 2655#include <color_pars_fragment> 2656#include <uv_pars_fragment> 2657#include <map_pars_fragment> 2658#include <alphamap_pars_fragment> 2659#include <alphatest_pars_fragment> 2660#include <alphahash_pars_fragment> 2661#include <aomap_pars_fragment> 2662#include <lightmap_pars_fragment> 2663#include <envmap_common_pars_fragment> 2664#include <envmap_pars_fragment> 2665#include <fog_pars_fragment> 2666#include <specularmap_pars_fragment> 2667#include <logdepthbuf_pars_fragment> 2668#include <clipping_planes_pars_fragment> 2669void main() { 2670 #include <clipping_planes_fragment> 2671 vec4 diffuseColor = vec4( diffuse, opacity ); 2672 #include <logdepthbuf_fragment> 2673 #include <map_fragment> 2674 #include <color_fragment> 2675 #include <alphamap_fragment> 2676 #include <alphatest_fragment> 2677 #include <alphahash_fragment> 2678 #include <specularmap_fragment> 2679 ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); 2680 #ifdef USE_LIGHTMAP 2681 vec4 lightMapTexel = texture2D( lightMap, vLightMapUv ); 2682 reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI; 2683 #else 2684 reflectedLight.indirectDiffuse += vec3( 1.0 ); 2685 #endif 2686 #include <aomap_fragment> 2687 reflectedLight.indirectDiffuse *= diffuseColor.rgb; 2688 vec3 outgoingLight = reflectedLight.indirectDiffuse; 2689 #include <envmap_fragment> 2690 #include <opaque_fragment> 2691 #include <tonemapping_fragment> 2692 #include <colorspace_fragment> 2693 #include <fog_fragment> 2694 #include <premultiplied_alpha_fragment> 2695 #include <dithering_fragment> 2696}`,xie=`#define LAMBERT 2697varying vec3 vViewPosition; 2698#include <common> 2699#include <uv_pars_vertex> 2700#include <displacementmap_pars_vertex> 2701#include <envmap_pars_vertex> 2702#include <color_pars_vertex> 2703#include <fog_pars_vertex> 2704#include <normal_pars_vertex> 2705#include <morphtarget_pars_vertex> 2706#include <skinning_pars_vertex> 2707#include <shadowmap_pars_vertex> 2708#include <logdepthbuf_pars_vertex> 2709#include <clipping_planes_pars_vertex> 2710void main() { 2711 #include <uv_vertex> 2712 #include <color_vertex> 2713 #include <morphcolor_vertex> 2714 #include <beginnormal_vertex> 2715 #include <morphnormal_vertex> 2716 #include <skinbase_vertex> 2717 #include <skinnormal_vertex> 2718 #include <defaultnormal_vertex> 2719 #include <normal_vertex> 2720 #include <begin_vertex> 2721 #include <morphtarget_vertex> 2722 #include <skinning_vertex> 2723 #include <displacementmap_vertex> 2724 #include <project_vertex> 2725 #include <logdepthbuf_vertex> 2726 #include <clipping_planes_vertex> 2727 vViewPosition = - mvPosition.xyz; 2728 #include <worldpos_vertex> 2729 #include <envmap_vertex> 2730 #include <shadowmap_vertex> 2731 #include <fog_vertex> 2732}`,Eie=`#define LAMBERT 2733uniform vec3 diffuse; 2734uniform vec3 emissive; 2735uniform float opacity; 2736#include <common> 2737#include <packing> 2738#include <dithering_pars_fragment> 2739#include <color_pars_fragment> 2740#include <uv_pars_fragment> 2741#include <map_pars_fragment> 2742#include <alphamap_pars_fragment> 2743#include <alphatest_pars_fragment> 2744#include <alphahash_pars_fragment> 2745#include <aomap_pars_fragment> 2746#include <lightmap_pars_fragment> 2747#include <emissivemap_pars_fragment> 2748#include <envmap_common_pars_fragment> 2749#include <envmap_pars_fragment> 2750#include <fog_pars_fragment> 2751#include <bsdfs> 2752#include <lights_pars_begin> 2753#include <normal_pars_fragment> 2754#include <lights_lambert_pars_fragment> 2755#include <shadowmap_pars_fragment> 2756#include <bumpmap_pars_fragment> 2757#include <normalmap_pars_fragment> 2758#include <specularmap_pars_fragment> 2759#include <logdepthbuf_pars_fragment> 2760#include <clipping_planes_pars_fragment> 2761void main() { 2762 #include <clipping_planes_fragment> 2763 vec4 diffuseColor = vec4( diffuse, opacity ); 2764 ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); 2765 vec3 totalEmissiveRadiance = emissive; 2766 #include <logdepthbuf_fragment> 2767 #include <map_fragment> 2768 #include <color_fragment> 2769 #include <alphamap_fragment> 2770 #include <alphatest_fragment> 2771 #include <alphahash_fragment> 2772 #include <specularmap_fragment> 2773 #include <normal_fragment_begin> 2774 #include <normal_fragment_maps> 2775 #include <emissivemap_fragment> 2776 #include <lights_lambert_fragment> 2777 #include <lights_fragment_begin> 2778 #include <lights_fragment_maps> 2779 #include <lights_fragment_end> 2780 #include <aomap_fragment> 2781 vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; 2782 #include <envmap_fragment> 2783 #include <opaque_fragment> 2784 #include <tonemapping_fragment> 2785 #include <colorspace_fragment> 2786 #include <fog_fragment> 2787 #include <premultiplied_alpha_fragment> 2788 #include <dithering_fragment> 2789}`,Sie=`#define MATCAP 2790varying vec3 vViewPosition; 2791#include <common> 2792#include <uv_pars_vertex> 2793#include <color_pars_vertex> 2794#include <displacementmap_pars_vertex> 2795#include <fog_pars_vertex> 2796#include <normal_pars_vertex> 2797#include <morphtarget_pars_vertex> 2798#include <skinning_pars_vertex> 2799#include <logdepthbuf_pars_vertex> 2800#include <clipping_planes_pars_vertex> 2801void main() { 2802 #include <uv_vertex> 2803 #include <color_vertex> 2804 #include <morphcolor_vertex> 2805 #include <beginnormal_vertex> 2806 #include <morphnormal_vertex> 2807 #include <skinbase_vertex> 2808 #include <skinnormal_vertex> 2809 #include <defaultnormal_vertex> 2810 #include <normal_vertex> 2811 #include <begin_vertex> 2812 #include <morphtarget_vertex> 2813 #include <skinning_vertex> 2814 #include <displacementmap_vertex> 2815 #include <project_vertex> 2816 #include <logdepthbuf_vertex> 2817 #include <clipping_planes_vertex> 2818 #include <fog_vertex> 2819 vViewPosition = - mvPosition.xyz; 2820}`,Tie=`#define MATCAP 2821uniform vec3 diffuse; 2822uniform float opacity; 2823uniform sampler2D matcap; 2824varying vec3 vViewPosition; 2825#include <common> 2826#include <dithering_pars_fragment> 2827#include <color_pars_fragment> 2828#include <uv_pars_fragment> 2829#include <map_pars_fragment> 2830#include <alphamap_pars_fragment> 2831#include <alphatest_pars_fragment> 2832#include <alphahash_pars_fragment> 2833#include <fog_pars_fragment> 2834#include <normal_pars_fragment> 2835#include <bumpmap_pars_fragment> 2836#include <normalmap_pars_fragment> 2837#include <logdepthbuf_pars_fragment> 2838#include <clipping_planes_pars_fragment> 2839void main() { 2840 #include <clipping_planes_fragment> 2841 vec4 diffuseColor = vec4( diffuse, opacity ); 2842 #include <logdepthbuf_fragment> 2843 #include <map_fragment> 2844 #include <color_fragment> 2845 #include <alphamap_fragment> 2846 #include <alphatest_fragment> 2847 #include <alphahash_fragment> 2848 #include <normal_fragment_begin> 2849 #include <normal_fragment_maps> 2850 vec3 viewDir = normalize( vViewPosition ); 2851 vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) ); 2852 vec3 y = cross( viewDir, x ); 2853 vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5; 2854 #ifdef USE_MATCAP
2855 vec4 matcapColor = texture2D( matcap, uv ); 2856 #else 2857 vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 ); 2858 #endif 2859 vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb; 2860 #include <opaque_fragment> 2861 #include <tonemapping_fragment> 2862 #include <colorspace_fragment> 2863 #include <fog_fragment> 2864 #include <premultiplied_alpha_fragment> 2865 #include <dithering_fragment> 2866}`,Cie=`#define NORMAL 2867#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) 2868 varying vec3 vViewPosition; 2869#endif 2870#include <common> 2871#include <uv_pars_vertex> 2872#include <displacementmap_pars_vertex> 2873#include <normal_pars_vertex> 2874#include <morphtarget_pars_vertex> 2875#include <skinning_pars_vertex> 2876#include <logdepthbuf_pars_vertex> 2877#include <clipping_planes_pars_vertex> 2878void main() { 2879 #include <uv_vertex> 2880 #include <beginnormal_vertex> 2881 #include <morphnormal_vertex> 2882 #include <skinbase_vertex> 2883 #include <skinnormal_vertex> 2884 #include <defaultnormal_vertex> 2885 #include <normal_vertex> 2886 #include <begin_vertex> 2887 #include <morphtarget_vertex> 2888 #include <skinning_vertex> 2889 #include <displacementmap_vertex> 2890 #include <project_vertex> 2891 #include <logdepthbuf_vertex> 2892 #include <clipping_planes_vertex> 2893#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) 2894 vViewPosition = - mvPosition.xyz; 2895#endif 2896}`,wie=`#define NORMAL 2897uniform float opacity; 2898#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) 2899 varying vec3 vViewPosition; 2900#endif 2901#include <packing> 2902#include <uv_pars_fragment> 2903#include <normal_pars_fragment> 2904#include <bumpmap_pars_fragment> 2905#include <normalmap_pars_fragment> 2906#include <logdepthbuf_pars_fragment> 2907#include <clipping_planes_pars_fragment> 2908void main() { 2909 #include <clipping_planes_fragment> 2910 #include <logdepthbuf_fragment> 2911 #include <normal_fragment_begin> 2912 #include <normal_fragment_maps> 2913 gl_FragColor = vec4( packNormalToRGB( normal ), opacity ); 2914 #ifdef OPAQUE 2915 gl_FragColor.a = 1.0; 2916 #endif 2917}`,Iie=`#define PHONG 2918varying vec3 vViewPosition; 2919#include <common> 2920#include <uv_pars_vertex> 2921#include <displacementmap_pars_vertex> 2922#include <envmap_pars_vertex> 2923#include <color_pars_vertex> 2924#include <fog_pars_vertex> 2925#include <normal_pars_vertex> 2926#include <morphtarget_pars_vertex> 2927#include <skinning_pars_vertex> 2928#include <shadowmap_pars_vertex> 2929#include <logdepthbuf_pars_vertex> 2930#include <clipping_planes_pars_vertex> 2931void main() { 2932 #include <uv_vertex> 2933 #include <color_vertex> 2934 #include <morphcolor_vertex> 2935 #include <beginnormal_vertex> 2936 #include <morphnormal_vertex> 2937 #include <skinbase_vertex> 2938 #include <skinnormal_vertex> 2939 #include <defaultnormal_vertex> 2940 #include <normal_vertex> 2941 #include <begin_vertex> 2942 #include <morphtarget_vertex> 2943 #include <skinning_vertex> 2944 #include <displacementmap_vertex> 2945 #include <project_vertex> 2946 #include <logdepthbuf_vertex> 2947 #include <clipping_planes_vertex> 2948 vViewPosition = - mvPosition.xyz; 2949 #include <worldpos_vertex> 2950 #include <envmap_vertex> 2951 #include <shadowmap_vertex> 2952 #include <fog_vertex> 2953}`,Mie=`#define PHONG 2954uniform vec3 diffuse; 2955uniform vec3 emissive; 2956uniform vec3 specular; 2957uniform float shininess; 2958uniform float opacity; 2959#include <common> 2960#include <packing> 2961#include <dithering_pars_fragment> 2962#include <color_pars_fragment> 2963#include <uv_pars_fragment> 2964#include <map_pars_fragment> 2965#include <alphamap_pars_fragment> 2966#include <alphatest_pars_fragment> 2967#include <alphahash_pars_fragment> 2968#include <aomap_pars_fragment> 2969#include <lightmap_pars_fragment> 2970#include <emissivemap_pars_fragment> 2971#include <envmap_common_pars_fragment> 2972#include <envmap_pars_fragment> 2973#include <fog_pars_fragment> 2974#include <bsdfs> 2975#include <lights_pars_begin> 2976#include <normal_pars_fragment> 2977#include <lights_phong_pars_fragment> 2978#include <shadowmap_pars_fragment> 2979#include <bumpmap_pars_fragment> 2980#include <normalmap_pars_fragment> 2981#include <specularmap_pars_fragment> 2982#include <logdepthbuf_pars_fragment> 2983#include <clipping_planes_pars_fragment> 2984void main() { 2985 #include <clipping_planes_fragment> 2986 vec4 diffuseColor = vec4( diffuse, opacity ); 2987 ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); 2988 vec3 totalEmissiveRadiance = emissive; 2989 #include <logdepthbuf_fragment> 2990 #include <map_fragment> 2991 #include <color_fragment> 2992 #include <alphamap_fragment> 2993 #include <alphatest_fragment> 2994 #include <alphahash_fragment> 2995 #include <specularmap_fragment> 2996 #include <normal_fragment_begin> 2997 #include <normal_fragment_maps> 2998 #include <emissivemap_fragment> 2999 #include <lights_phong_fragment> 3000 #include <lights_fragment_begin> 3001 #include <lights_fragment_maps> 3002 #include <lights_fragment_end> 3003 #include <aomap_fragment> 3004 vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance; 3005 #include <envmap_fragment> 3006 #include <opaque_fragment> 3007 #include <tonemapping_fragment> 3008 #include <colorspace_fragment> 3009 #include <fog_fragment> 3010 #include <premultiplied_alpha_fragment> 3011 #include <dithering_fragment> 3012}`,Rie=`#define STANDARD 3013varying vec3 vViewPosition; 3014#ifdef USE_TRANSMISSION 3015 varying vec3 vWorldPosition; 3016#endif 3017#include <common> 3018#include <uv_pars_vertex> 3019#include <displacementmap_pars_vertex> 3020#include <color_pars_vertex> 3021#include <fog_pars_vertex> 3022#include <normal_pars_vertex> 3023#include <morphtarget_pars_vertex> 3024#include <skinning_pars_vertex> 3025#include <shadowmap_pars_vertex> 3026#include <logdepthbuf_pars_vertex> 3027#include <clipping_planes_pars_vertex> 3028void main() { 3029 #include <uv_vertex> 3030 #include <color_vertex> 3031 #include <morphcolor_vertex> 3032 #include <beginnormal_vertex> 3033 #include <morphnormal_vertex> 3034 #include <skinbase_vertex> 3035 #include <skinnormal_vertex> 3036 #include <defaultnormal_vertex> 3037 #include <normal_vertex> 3038 #include <begin_vertex> 3039 #include <morphtarget_vertex> 3040 #include <skinning_vertex> 3041 #include <displacementmap_vertex> 3042 #include <project_vertex> 3043 #include <logdepthbuf_vertex> 3044 #include <clipping_planes_vertex> 3045 vViewPosition = - mvPosition.xyz; 3046 #include <worldpos_vertex> 3047 #include <shadowmap_vertex> 3048 #include <fog_vertex> 3049#ifdef USE_TRANSMISSION 3050 vWorldPosition = worldPosition.xyz; 3051#endif 3052}`,bie=`#define STANDARD 3053#ifdef PHYSICAL 3054 #define IOR 3055 #define USE_SPECULAR 3056#endif 3057uniform vec3 diffuse; 3058uniform vec3 emissive; 3059uniform float roughness; 3060uniform float metalness; 3061uniform float opacity; 3062#ifdef IOR 3063 uniform float ior; 3064#endif 3065#ifdef USE_SPECULAR 3066 uniform float specularIntensity; 3067 uniform vec3 specularColor; 3068 #ifdef USE_SPECULAR_COLORMAP 3069 uniform sampler2D specularColorMap; 3070 #endif 3071 #ifdef USE_SPECULAR_INTENSITYMAP 3072 uniform sampler2D specularIntensityMap; 3073 #endif 3074#endif 3075#ifdef USE_CLEARCOAT 3076 uniform float clearcoat; 3077 uniform float clearcoatRoughness; 3078#endif
3079#ifdef USE_IRIDESCENCE 3080 uniform float iridescence; 3081 uniform float iridescenceIOR; 3082 uniform float iridescenceThicknessMinimum; 3083 uniform float iridescenceThicknessMaximum; 3084#endif 3085#ifdef USE_SHEEN 3086 uniform vec3 sheenColor; 3087 uniform float sheenRoughness; 3088 #ifdef USE_SHEEN_COLORMAP 3089 uniform sampler2D sheenColorMap; 3090 #endif 3091 #ifdef USE_SHEEN_ROUGHNESSMAP 3092 uniform sampler2D sheenRoughnessMap; 3093 #endif 3094#endif 3095#ifdef USE_ANISOTROPY 3096 uniform vec2 anisotropyVector; 3097 #ifdef USE_ANISOTROPYMAP 3098 uniform sampler2D anisotropyMap; 3099 #endif 3100#endif 3101varying vec3 vViewPosition; 3102#include <common> 3103#include <packing> 3104#include <dithering_pars_fragment> 3105#include <color_pars_fragment> 3106#include <uv_pars_fragment> 3107#include <map_pars_fragment> 3108#include <alphamap_pars_fragment> 3109#include <alphatest_pars_fragment> 3110#include <alphahash_pars_fragment> 3111#include <aomap_pars_fragment> 3112#include <lightmap_pars_fragment> 3113#include <emissivemap_pars_fragment> 3114#include <iridescence_fragment> 3115#include <cube_uv_reflection_fragment> 3116#include <envmap_common_pars_fragment> 3117#include <envmap_physical_pars_fragment> 3118#include <fog_pars_fragment> 3119#include <lights_pars_begin> 3120#include <normal_pars_fragment> 3121#include <lights_physical_pars_fragment> 3122#include <transmission_pars_fragment> 3123#include <shadowmap_pars_fragment> 3124#include <bumpmap_pars_fragment> 3125#include <normalmap_pars_fragment> 3126#include <clearcoat_pars_fragment> 3127#include <iridescence_pars_fragment> 3128#include <roughnessmap_pars_fragment> 3129#include <metalnessmap_pars_fragment> 3130#include <logdepthbuf_pars_fragment> 3131#include <clipping_planes_pars_fragment> 3132void main() { 3133 #include <clipping_planes_fragment> 3134 vec4 diffuseColor = vec4( diffuse, opacity ); 3135 ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); 3136 vec3 totalEmissiveRadiance = emissive; 3137 #include <logdepthbuf_fragment> 3138 #include <map_fragment> 3139 #include <color_fragment> 3140 #include <alphamap_fragment> 3141 #include <alphatest_fragment> 3142 #include <alphahash_fragment> 3143 #include <roughnessmap_fragment> 3144 #include <metalnessmap_fragment> 3145 #include <normal_fragment_begin> 3146 #include <normal_fragment_maps> 3147 #include <clearcoat_normal_fragment_begin> 3148 #include <clearcoat_normal_fragment_maps> 3149 #include <emissivemap_fragment> 3150 #include <lights_physical_fragment> 3151 #include <lights_fragment_begin> 3152 #include <lights_fragment_maps> 3153 #include <lights_fragment_end> 3154 #include <aomap_fragment> 3155 vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse; 3156 vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular; 3157 #include <transmission_fragment> 3158 vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance; 3159 #ifdef USE_SHEEN 3160 float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor ); 3161 outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular; 3162 #endif 3163 #ifdef USE_CLEARCOAT 3164 float dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) ); 3165 vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc ); 3166 outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat; 3167 #endif 3168 #include <opaque_fragment> 3169 #include <tonemapping_fragment> 3170 #include <colorspace_fragment> 3171 #include <fog_fragment> 3172 #include <premultiplied_alpha_fragment> 3173 #include <dithering_fragment> 3174}`,Pie=`#define TOON 3175varying vec3 vViewPosition; 3176#include <common> 3177#include <uv_pars_vertex> 3178#include <displacementmap_pars_vertex> 3179#include <color_pars_vertex> 3180#include <fog_pars_vertex> 3181#include <normal_pars_vertex> 3182#include <morphtarget_pars_vertex> 3183#include <skinning_pars_vertex> 3184#include <shadowmap_pars_vertex> 3185#include <logdepthbuf_pars_vertex> 3186#include <clipping_planes_pars_vertex> 3187void main() { 3188 #include <uv_vertex> 3189 #include <color_vertex> 3190 #include <morphcolor_vertex> 3191 #include <beginnormal_vertex> 3192 #include <morphnormal_vertex> 3193 #include <skinbase_vertex> 3194 #include <skinnormal_vertex> 3195 #include <defaultnormal_vertex> 3196 #include <normal_vertex> 3197 #include <begin_vertex> 3198 #include <morphtarget_vertex> 3199 #include <skinning_vertex> 3200 #include <displacementmap_vertex> 3201 #include <project_vertex> 3202 #include <logdepthbuf_vertex> 3203 #include <clipping_planes_vertex> 3204 vViewPosition = - mvPosition.xyz; 3205 #include <worldpos_vertex> 3206 #include <shadowmap_vertex> 3207 #include <fog_vertex> 3208}`,Bie=`#define TOON 3209uniform vec3 diffuse; 3210uniform vec3 emissive; 3211uniform float opacity; 3212#include <common> 3213#include <packing> 3214#include <dithering_pars_fragment> 3215#include <color_pars_fragment> 3216#include <uv_pars_fragment> 3217#include <map_pars_fragment> 3218#include <alphamap_pars_fragment> 3219#include <alphatest_pars_fragment> 3220#include <alphahash_pars_fragment> 3221#include <aomap_pars_fragment> 3222#include <lightmap_pars_fragment> 3223#include <emissivemap_pars_fragment> 3224#include <gradientmap_pars_fragment> 3225#include <fog_pars_fragment> 3226#include <bsdfs> 3227#include <lights_pars_begin> 3228#include <normal_pars_fragment> 3229#include <lights_toon_pars_fragment> 3230#include <shadowmap_pars_fragment> 3231#include <bumpmap_pars_fragment> 3232#include <normalmap_pars_fragment> 3233#include <logdepthbuf_pars_fragment> 3234#include <clipping_planes_pars_fragment> 3235void main() { 3236 #include <clipping_planes_fragment> 3237 vec4 diffuseColor = vec4( diffuse, opacity ); 3238 ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); 3239 vec3 totalEmissiveRadiance = emissive; 3240 #include <logdepthbuf_fragment> 3241 #include <map_fragment> 3242 #include <color_fragment> 3243 #include <alphamap_fragment> 3244 #include <alphatest_fragment> 3245 #include <alphahash_fragment> 3246 #include <normal_fragment_begin> 3247 #include <normal_fragment_maps> 3248 #include <emissivemap_fragment> 3249 #include <lights_toon_fragment> 3250 #include <lights_fragment_begin> 3251 #include <lights_fragment_maps> 3252 #include <lights_fragment_end> 3253 #include <aomap_fragment> 3254 vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; 3255 #include <opaque_fragment> 3256 #include <tonemapping_fragment> 3257 #include <colorspace_fragment> 3258 #include <fog_fragment> 3259 #include <premultiplied_alpha_fragment> 3260 #include <dithering_fragment> 3261}`,Die=`uniform float size; 3262uniform float scale; 3263#include <common> 3264#include <color_pars_vertex> 3265#include <fog_pars_vertex> 3266#include <morphtarget_pars_vertex> 3267#include <logdepthbuf_pars_vertex> 3268#include <clipping_planes_pars_vertex> 3269#ifdef USE_POINTS_UV 3270 varying vec2 vUv; 3271 uniform mat3 uvTransform; 3272#endif 3273void main() { 3274 #ifdef USE_POINTS_UV 3275 vUv = ( uvTransform * vec3( uv, 1 ) ).xy; 3276 #endif 3277 #include <color_vertex> 3278 #include <morphcolor_vertex> 3279 #include <begin_vertex> 3280 #include <morphtarget_vertex> 3281 #include <project_vertex> 3282 gl_PointSize = size; 3283 #ifdef USE_SIZEATTENUATION 3284 bool isPerspective = isPerspectiveMatrix( projectionMatrix ); 3285 if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z ); 3286 #endif 3287 #include <logdepthbuf_vertex> 3288 #include <clipping_planes_vertex> 3289 #include <worldpos_vertex> 3290 #include <fog_vertex> 3291}`,Lie=`uniform vec3 diffuse; 3292uniform float opacity; 3293#include <common> 3294#include <color_pars_fragment> 3295#include <map_particle_pars_fragment> 3296#include <alphatest_pars_fragment> 3297#include <alphahash_pars_fragment> 3298#include <fog_pars_fragment> 3299#include <logdepthbuf_pars_fragment> 3300#include <clipping_planes_pars_fragment> 3301void main() { 3302 #include <clipping_planes_fragment> 3303 vec3 outgoingLight = vec3( 0.0 ); 3304 vec4 diffuseColor = vec4( diffuse, opacity ); 3305 #include <logdepthbuf_fragment> 3306 #include <map_particle_fragment> 3307 #include <color_fragment> 3308 #include <alphatest_fragment> 3309 #include <alphahash_fragment> 3310 outgoingLight = diffuseColor.rgb; 3311 #include <opaque_fragment> 3312 #include <tonemapping_fragment> 3313 #include <colorspace_fragment> 3314 #include <fog_fragment> 3315 #include <premultiplied_alpha_fragment> 3316}`,Nie=`#include <common> 3317#include <fog_pars_vertex> 3318#include <morphtarget_pars_vertex> 3319#include <skinning_pars_vertex> 3320#include <logdepthbuf_pars_vertex> 3321#include <shadowmap_pars_vertex> 3322void main() { 3323 #include <beginnormal_vertex> 3324 #include <morphnormal_vertex> 3325 #include <skinbase_vertex> 3326 #include <skinnormal_vertex> 3327 #include <defaultnormal_vertex> 3328 #include <begin_vertex> 3329 #include <morphtarget_vertex> 3330 #include <skinning_vertex> 3331 #include <project_vertex> 3332 #include <logdepthbuf_vertex> 3333 #include <worldpos_vertex> 3334 #include <shadowmap_vertex> 3335 #include <fog_vertex> 3336}`,kie=`uniform vec3 color; 3337uniform float opacity; 3338#include <common> 3339#include <packing> 3340#include <fog_pars_fragment> 3341#include <bsdfs> 3342#include <lights_pars_begin> 3343#include <logdepthbuf_pars_fragment> 3344#include <shadowmap_pars_fragment> 3345#include <shadowmask_pars_fragment> 3346void main() { 3347 #include <logdepthbuf_fragment> 3348 gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) ); 3349 #include <tonemapping_fragment> 3350 #include <colorspace_fragment> 3351 #include <fog_fragment> 3352}`,Fie=`uniform float rotation; 3353uniform vec2 center; 3354#include <common> 3355#include <uv_pars_vertex> 3356#include <fog_pars_vertex> 3357#include <logdepthbuf_pars_vertex> 3358#include <clipping_planes_pars_vertex> 3359void main() { 3360 #include <uv_vertex> 3361 vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); 3362 vec2 scale; 3363 scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); 3364 scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); 3365 #ifndef USE_SIZEATTENUATION 3366 bool isPerspective = isPerspectiveMatrix( projectionMatrix ); 3367 if ( isPerspective ) scale *= - mvPosition.z; 3368 #endif 3369 vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale; 3370 vec2 rotatedPosition; 3371 rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; 3372 rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; 3373 mvPosition.xy += rotatedPosition; 3374 gl_Position = projectionMatrix * mvPosition; 3375 #include <logdepthbuf_vertex> 3376 #include <clipping_planes_vertex> 3377 #include <fog_vertex> 3378}`,Oie=`uniform vec3 diffuse; 3379uniform float opacity; 3380#include <common> 3381#include <uv_pars_fragment> 3382#include <map_pars_fragment> 3383#include <alphamap_pars_fragment> 3384#include <alphatest_pars_fragment> 3385#include <alphahash_pars_fragment> 3386#include <fog_pars_fragment> 3387#include <logdepthbuf_pars_fragment> 3388#include <clipping_planes_pars_fragment> 3389void main() { 3390 #include <clipping_planes_fragment> 3391 vec3 outgoingLight = vec3( 0.0 ); 3392 vec4 diffuseColor = vec4( diffuse, opacity ); 3393 #include <logdepthbuf_fragment> 3394 #include <map_fragment> 3395 #include <alphamap_fragment> 3396 #include <alphatest_fragment> 3397 #include <alphahash_fragment> 3398 outgoingLight = diffuseColor.rgb; 3399 #include <opaque_fragment> 3400 #include <tonemapping_fragment> 3401 #include <colorspace_fragment> 3402 #include <fog_fragment> 3403}`,Gt={alphahash_fragment:ute,alphahash_pars_fragment:cte,alphamap_fragment:hte,alphamap_pars_fragment:fte,alphatest_fragment:dte,alphatest_pars_fragment:pte,aomap_fragment:mte,aomap_pars_fragment:gte,begin_vertex:Ate,beginnormal_vertex:vte,bsdfs:yte,iridescence_fragment:qte,bumpmap_pars_fragment:_te,clipping_planes_fragment:xte,clipping_planes_pars_fragment:Ete,clipping_planes_pars_vertex:Ste,clipping_planes_vertex:Tte,color_fragment:Cte,color_pars_fragment:wte,color_pars_vertex:Ite,color_vertex:Mte,common:Rte,cube_uv_reflection_fragment:bte,defaultnormal_vertex:Pte,displacementmap_pars_vertex:Bte,displacementmap_vertex:Dte,emissivemap_fragment:Lte,emissivemap_pars_fragment:Nte,colorspace_fragment:kte,colorspace_pars_fragment:Fte,envmap_fragment:Ote,envmap_common_pars_fragment:Ute,envmap_pars_fragment:zte,envmap_pars_vertex:Vte,envmap_physical_pars_fragment:ene,envmap_vertex:Gte,fog_vertex:Qte,fog_pars_vertex:Hte,fog_fragment:Wte,fog_pars_fragment:$te,gradientmap_pars_fragment:jte,lightmap_fragment:Xte,lightmap_pars_fragment:Yte,lights_lambert_fragment:Kte,lights_lambert_pars_fragment:Jte,lights_pars_begin:Zte,lights_toon_fragment:tne,lights_toon_pars_fragment:nne,lights_phong_fragment:ine,lights_phong_pars_fragment:rne,lights_physical_fragment:sne,lights_physical_pars_fragment:one,lights_fragment_begin:ane,lights_fragment_maps:lne,lights_fragment_end:une,logdepthbuf_fragment:cne,logdepthbuf_pars_fragment:hne,logdepthbuf_pars_vertex:fne,logdepthbuf_vertex:dne,map_fragment:pne,map_pars_fragment:mne,map_particle_fragment:gne,map_particle_pars_fragment:Ane,metalnessmap_fragment:vne,metalnessmap_pars_fragment:yne,morphcolor_vertex:qne,morphnormal_vertex:_ne,morphtarget_pars_vertex:xne,morphtarget_vertex:Ene,normal_fragment_begin:Sne,normal_fragment_maps:Tne,normal_pars_fragment:Cne,normal_pars_vertex:wne,normal_vertex:Ine,normalmap_pars_fragment:Mne,clearcoat_normal_fragment_begin:Rne,clearcoat_normal_fragment_maps:bne,clearcoat_pars_fragment:Pne,iridescence_pars_fragment:Bne,opaque_fragment:Dne,packing:Lne,premultiplied_alpha_fragment:Nne,project_vertex:kne,dithering_fragment:Fne,dithering_pars_fragment:One,roughnessmap_fragment:Une,roughnessmap_pars_fragment:zne,shadowmap_pars_fragment:Vne,shadowmap_pars_vertex:Gne,shadowmap_vertex:Qne,shadowmask_pars_fragment:Hne,skinbase_vertex:Wne,skinning_pars_vertex:$ne,skinning_vertex:jne,skinnormal_vertex:Xne,specularmap_fragment:Yne,specularmap_pars_fragment:Kne,tonemapping_fragment:Jne,tonemapping_pars_fragment:Zne,transmission_fragment:eie,transmission_pars_fragment:tie,uv_pars_fragment:nie,uv_pars_vertex:iie,uv_vertex:rie,worldpos_vertex:sie,background_vert:oie,background_frag:aie,backgroundCube_vert:lie,backgroundCube_frag:uie,cube_vert:cie,cube_frag:hie,depth_vert:fie,depth_frag:die,distanceRGBA_vert:pie,distanceRGBA_frag:mie,equirect_vert:gie,equirect_frag:Aie,linedashed_vert:vie,linedashed_frag:yie,meshbasic_vert:qie,meshbasic_frag:_ie,meshlambert_vert:xie,meshlambert_frag:Eie,meshmatcap_vert:Sie,meshmatcap_frag:Tie,meshnormal_vert:Cie,meshnormal_frag:wie,meshphong_vert:Iie,meshphong_frag:Mie,meshphysical_vert:Rie,meshphysical_frag:bie,meshtoon_vert:Pie,meshtoon_frag:Bie,points_vert:Die,points_frag:Lie,shadow_vert:Nie,shadow_frag:kie,sprite_vert:Fie,sprite_frag:Oie},Ne={common:{diffuse:{value:new Me(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new $t},alphaMap:{value:null},alphaMapTransform:{value:new $t},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new $t}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new $t}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new $t}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new $t},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new $t},normalScale:{value:new oe(1,1)}}
vendor: 7,264 bytes, line 3403
3403,displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new $t},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new $t}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new $t}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new $t}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new Me(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new Me(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new $t},alphaTest:{value:0},uvTransform:{value:new $t}},sprite:{diffuse:{value:new Me(16777215)},opacity:{value:1},center:{value:new oe(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new $t},alphaMap:{value:null},alphaMapTransform:{value:new $t},alphaTest:{value:0}}},ca={basic:{uniforms:Jr([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.fog]),vertexShader:Gt.meshbasic_vert,fragmentShader:Gt.meshbasic_frag},lambert:{uniforms:Jr([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.fog,Ne.lights,{emissive:{value:new Me(0)}}]),vertexShader:Gt.meshlambert_vert,fragmentShader:Gt.meshlambert_frag},phong:{uniforms:Jr([Ne.common,Ne.specularmap,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.fog,Ne.lights,{emissive:{value:new Me(0)},specular:{value:new Me(1118481)},shininess:{value:30}}]),vertexShader:Gt.meshphong_vert,fragmentShader:Gt.meshphong_frag},standard:{uniforms:Jr([Ne.common,Ne.envmap,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.roughnessmap,Ne.metalnessmap,Ne.fog,Ne.lights,{emissive:{value:new Me(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:Gt.meshphysical_vert,fragmentShader:Gt.meshphysical_frag},toon:{uniforms:Jr([Ne.common,Ne.aomap,Ne.lightmap,Ne.emissivemap,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.gradientmap,Ne.fog,Ne.lights,{emissive:{value:new Me(0)}}]),vertexShader:Gt.meshtoon_vert,fragmentShader:Gt.meshtoon_frag},matcap:{uniforms:Jr([Ne.common,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,Ne.fog,{matcap:{value:null}}]),vertexShader:Gt.meshmatcap_vert,fragmentShader:Gt.meshmatcap_frag},points:{uniforms:Jr([Ne.points,Ne.fog]),vertexShader:Gt.points_vert,fragmentShader:Gt.points_frag},dashed:{uniforms:Jr([Ne.common,Ne.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Gt.linedashed_vert,fragmentShader:Gt.linedashed_frag},depth:{uniforms:Jr([Ne.common,Ne.displacementmap]),vertexShader:Gt.depth_vert,fragmentShader:Gt.depth_frag},normal:{uniforms:Jr([Ne.common,Ne.bumpmap,Ne.normalmap,Ne.displacementmap,{opacity:{value:1}}]),vertexShader:Gt.meshnormal_vert,fragmentShader:Gt.meshnormal_frag},sprite:{uniforms:Jr([Ne.sprite,Ne.fog]),vertexShader:Gt.sprite_vert,fragmentShader:Gt.sprite_frag},background:{uniforms:{uvTransform:{value:new $t},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:Gt.background_vert,fragmentShader:Gt.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1}},vertexShader:Gt.backgroundCube_vert,fragmentShader:Gt.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:Gt.cube_vert,fragmentShader:Gt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Gt.equirect_vert,fragmentShader:Gt.equirect_frag},distanceRGBA:{uniforms:Jr([Ne.common,Ne.displacementmap,{referencePosition:{value:new L},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Gt.distanceRGBA_vert,fragmentShader:Gt.distanceRGBA_frag},shadow:{uniforms:Jr([Ne.lights,Ne.fog,{color:{value:new Me(0)},opacity:{value:1}}]),vertexShader:Gt.shadow_vert,fragmentShader:Gt.shadow_frag}};ca.physical={uniforms:Jr([ca.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new $t},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new $t},clearcoatNormalScale:{value:new oe(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new $t},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new $t},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new $t},sheen:{value:0},sheenColor:{value:new Me(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new $t},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new $t},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new $t},transmissionSamplerSize:{value:new oe},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new $t},attenuationDistance:{value:0},attenuationColor:{value:new Me(0)},specularColor:{value:new Me(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new $t},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new $t},anisotropyVector:{value:new oe},anisotropyMap:{value:null},anisotropyMapTransform:{value:new $t}}]),vertexShader:Gt.meshphysical_vert,fragmentShader:Gt.meshphysical_frag};const r7={r:0,b:0,g:0};function Uie(t,e,n,i,r,s,o){const a=new Me(0);let l=s===!0?0:1,u,c,h=null,f=0,m=null;function g(_,A){let y=!1,q=A.isScene===!0?A.background:null;switch(q&&q.isTexture&&(q=(A.backgroundBlurriness>0?n:e).get(q)),q===null?v(a,l):q&&q.isColor&&(v(q,1),y=!0),t.xr.getEnvironmentBlendMode()){case"opaque":y=!0;break;case"additive":i.buffers.color.setClear(0,0,0,1,o),y=!0;break;case"alpha-blend":i.buffers.color.setClear(0,0,0,0,o),y=!0;break}(t.autoClear||y)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),q&&(q.isCubeTexture||q.mapping===w2)?(c===void 0&&(c=new yn(new Zc(1,1,1),new zt({name:"Backgroun
3403dCubeMaterial",uniforms:Y0(ca.backgroundCube.uniforms),vertexShader:ca.backgroundCube.vertexShader,fragmentShader:ca.backgroundCube.fragmentShader,side:Fi,depthTest:!1,depthWrite:!1,fog:!1})),c.geometry.deleteAttribute("normal"),c.geometry.deleteAttribute("uv"),c.onBeforeRender=function(C,I,R){this.matrixWorld.copyPosition(R.matrixWorld)},Object.defineProperty(c.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(c)),c.material.uniforms.envMap.value=q,c.material.uniforms.flipEnvMap.value=q.isCubeTexture&&q.isRenderTargetTexture===!1?-1:1,c.material.uniforms.backgroundBlurriness.value=A.backgroundBlurriness,c.material.uniforms.backgroundIntensity.value=A.backgroundIntensity,c.material.toneMapped=q.colorSpace!==Ot,(h!==q||f!==q.version||m!==t.toneMapping)&&(c.material.needsUpdate=!0,h=q,f=q.version,m=t.toneMapping),c.layers.enableAll(),_.unshift(c,c.geometry,c.material,0,0,null)):q&&q.isTexture&&(u===void 0&&(u=new yn(new R2(2,2),new zt({name:"BackgroundMaterial",uniforms:Y0(ca.background.uniforms),vertexShader:ca.background.vertexShader,fragmentShader:ca.background.fragmentShader,side:gl,depthTest:!1,depthWrite:!1,fog:!1})),u.geometry.deleteAttribute("normal"),Object.defineProperty(u.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(u)),u.material.uniforms.t2D.value=q,u.material.uniforms.backgroundIntensity.value=A.backgroundIntensity,u.material.toneMapped=q.colorSpace!==Ot,q.matrixAutoUpdate===!0&&q.updateMatrix(),u.material.uniforms.uvTransform.value.copy(q.matrix),(h!==q||f!==q.version||m!==t.toneMapping)&&(u.material.needsUpdate=!0,h=q,f=q.version,m=t.toneMapping),u.layers.enableAll(),_.unshift(u,u.geometry,u.material,0,0,null))}function v(_,A){_.getRGB(r7,jU(t)),i.buffers.color.setClear(r7.r,r7.g,r7.b,A,o)}return{getClearColor:function(){return a},setClearColor:function(_,A=1){a.set(_),l=A,v(a,l)},getClearAlpha:function(){return l},setClearAlpha:function(_){l=_,v(a,l)},render:g}}function zie(t,e,n,i){const r=t.getParameter(t.MAX_VERTEX_ATTRIBS),s=i.isWebGL2?null:e.get("OES_vertex_array_object"),o=i.isWebGL2||s!==null,a={},l=_(null);let u=l,c=!1;function h(W,$,K,Y,B){let U=!1;if(o){const F=v(Y,K,$);u!==F&&(u=F,m(u.object)),U=A(W,Y,K,B),U&&y(W,Y,K,B)}else{const F=$.wireframe===!0;(u.geometry!==Y.id||u.program!==K.id||u.wireframe!==F)&&(u.geometry=Y.id,u.program=K.id,u.wireframe=F,U=!0)}B!==null&&n.update(B,t.ELEMENT_ARRAY_BUFFER),(U||c)&&(c=!1,R(W,$,K,Y),B!==null&&t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,n.get(B).buffer))}function f(){return i.isWebGL2?t.createVertexArray():s.createVertexArrayOES()}function m(W){return i.isWebGL2?t.bindVertexArray(W):s.bindVertexArrayOES(W)}function g(W){return i.isWebGL2?t.deleteVertexArray(W):s.deleteVertexArrayOES(W)}function v(W,$,K){const Y=K.wireframe===!0;let B=a[W.id];B===void 0&&(B={},a[W.id]=B);let U=B[$.id];U===void 0&&(U={},B[$.id]=U);let F=U[Y];return F===void 0&&(F=_(f()),U[Y]=F),F}function _(W){const $=[],K=[],Y=[];for(let B=0;B<r;B++)$[B]=0,K[B]=0,Y[B]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:$,enabledAttributes:K,attributeDivisors:Y,object:W,attributes:{},index:null}}function A(W,$,K,Y){const B=u.attributes,U=$.attributes;let F=0;const k=K.getAttributes();for(const Q in k)if(k[Q].location>=0){const ae=B[Q];let ge=U[Q];if(ge===void 0&&(Q==="instanceMatrix"&&W.instanceMatrix&&(ge=W.instanceMatrix),Q==="instanceColor"&&W.instanceColor&&(ge=W.instanceColor)),ae===void 0||ae.attribute!==ge||ge&&ae.data!==ge.data)return!0;F++}return u.attributesNum!==F||u.index!==Y}function y(W,$,K,Y){const B={},U=$.attributes;let F=0;const k=K.getAttributes();for(const Q in k)if(k[Q].location>=0){let ae=U[Q];ae===void 0&&(Q==="instanceMatrix"&&W.instanceMatrix&&(ae=W.instanceMatrix),Q==="instanceColor"&&W.instanceColor&&(ae=W.instanceColor));const ge={};ge.attribute=ae,ae&&ae.data&&(ge.data=ae.data),B[Q]=ge,F++}u.attributes=B,u.attributesNum=F,u.index=Y}function q(){const W=u.newAttributes;for(let $=0,K=W.length;$<K;$++)W[$]=0}function E(W){T(W,0)}function T(W,$){const K=u.newAttributes,Y=u.enabledAttributes,B=u.attributeDivisors;K[W]=1,Y[W]===0&&(t.enableVertexAttribArray(W),Y[W]=1),B[W]!==$&&((i.isWebG
vendor: 2,871 bytes, line 3403
3403L2?t:e.get("ANGLE_instanced_arrays"))[i.isWebGL2?"vertexAttribDivisor":"vertexAttribDivisorANGLE"](W,$),B[W]=$)}function C(){const W=u.newAttributes,$=u.enabledAttributes;for(let K=0,Y=$.length;K<Y;K++)$[K]!==W[K]&&(t.disableVertexAttribArray(K),$[K]=0)}function I(W,$,K,Y,B,U,F){F===!0?t.vertexAttribIPointer(W,$,K,B,U):t.vertexAttribPointer(W,$,K,Y,B,U)}function R(W,$,K,Y){if(i.isWebGL2===!1&&(W.isInstancedMesh||Y.isInstancedBufferGeometry)&&e.get("ANGLE_instanced_arrays")===null)return;q();const B=Y.attributes,U=K.getAttributes(),F=$.defaultAttributeValues;for(const k in U){const Q=U[k];if(Q.location>=0){let ce=B[k];if(ce===void 0&&(k==="instanceMatrix"&&W.instanceMatrix&&(ce=W.instanceMatrix),k==="instanceColor"&&W.instanceColor&&(ce=W.instanceColor)),ce!==void 0){const ae=ce.normalized,ge=ce.itemSize,ye=n.get(ce);if(ye===void 0)continue;const xe=ye.buffer,Le=ye.type,$e=ye.bytesPerElement,Qe=i.isWebGL2===!0&&(Le===t.INT||Le===t.UNSIGNED_INT||ce.gpuType===BT);if(ce.isInterleavedBufferAttribute){const Be=ce.data,X=Be.stride,qe=ce.offset;if(Be.isInstancedInterleavedBuffer){for(let ve=0;ve<Q.locationSize;ve++)T(Q.location+ve,Be.meshPerAttribute);W.isInstancedMesh!==!0&&Y._maxInstanceCount===void 0&&(Y._maxInstanceCount=Be.meshPerAttribute*Be.count)}else for(let ve=0;ve<Q.locationSize;ve++)E(Q.location+ve);t.bindBuffer(t.ARRAY_BUFFER,xe);for(let ve=0;ve<Q.locationSize;ve++)I(Q.location+ve,ge/Q.locationSize,Le,ae,X*$e,(qe+ge/Q.locationSize*ve)*$e,Qe)}else{if(ce.isInstancedBufferAttribute){for(let Be=0;Be<Q.locationSize;Be++)T(Q.location+Be,ce.meshPerAttribute);W.isInstancedMesh!==!0&&Y._maxInstanceCount===void 0&&(Y._maxInstanceCount=ce.meshPerAttribute*ce.count)}else for(let Be=0;Be<Q.locationSize;Be++)E(Q.location+Be);t.bindBuffer(t.ARRAY_BUFFER,xe);for(let Be=0;Be<Q.locationSize;Be++)I(Q.location+Be,ge/Q.locationSize,Le,ae,ge*$e,ge/Q.locationSize*Be*$e,Qe)}}else if(F!==void 0){const ae=F[k];if(ae!==void 0)switch(ae.length){case 2:t.vertexAttrib2fv(Q.location,ae);break;case 3:t.vertexAttrib3fv(Q.location,ae);break;case 4:t.vertexAttrib4fv(Q.location,ae);break;default:t.vertexAttrib1fv(Q.location,ae)}}}}C()}function M(){z();for(const W in a){const $=a[W];for(const K in $){const Y=$[K];for(const B in Y)g(Y[B].object),delete Y[B];delete $[K]}delete a[W]}}function b(W){if(a[W.id]===void 0)return;const $=a[W.id];for(const K in $){const Y=$[K];for(const B in Y)g(Y[B].object),delete Y[B];delete $[K]}delete a[W.id]}function D(W){for(const $ in a){const K=a[$];if(K[W.id]===void 0)continue;const Y=K[W.id];for(const B in Y)g(Y[B].object),delete Y[B];delete K[W.id]}}function z(){O(),c=!0,u!==l&&(u=l,m(u.object))}function O(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:h,reset:z,resetDefaultState:O,dispose:M,releaseStatesOfGeometry:b,releaseStatesOfProgram:D,initAttributes:q,enableAttribute:E,disableUnusedAttributes:C}}
vendor: 4,111 bytes, line 3403
3403function Vie(t,e,n,i){const r=i.isWebGL2;let s;function o(u){s=u}function a(u,c){t.drawArrays(s,u,c),n.update(c,s,1)}function l(u,c,h){if(h===0)return;let f,m;if(r)f=t,m="drawArraysInstanced";else if(f=e.get("ANGLE_instanced_arrays"),m="drawArraysInstancedANGLE",f===null){console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");return}f[m](s,u,c,h),n.update(c,s,h)}this.setMode=o,this.render=a,this.renderInstances=l}function Gie(t,e,n){let i;function r(){if(i!==void 0)return i;if(e.has("EXT_texture_filter_anisotropic")===!0){const I=e.get("EXT_texture_filter_anisotropic");i=t.getParameter(I.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i}function s(I){if(I==="highp"){if(t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.HIGH_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.HIGH_FLOAT).precision>0)return"highp";I="mediump"}return I==="mediump"&&t.getShaderPrecisionFormat(t.VERTEX_SHADER,t.MEDIUM_FLOAT).precision>0&&t.getShaderPrecisionFormat(t.FRAGMENT_SHADER,t.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}const o=typeof WebGL2RenderingContext<"u"&&t.constructor.name==="WebGL2RenderingContext";let a=n.precision!==void 0?n.precision:"highp";const l=s(a);l!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",l,"instead."),a=l);const u=o||e.has("WEBGL_draw_buffers"),c=n.logarithmicDepthBuffer===!0,h=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS),f=t.getParameter(t.MAX_VERTEX_TEXTURE_IMAGE_UNITS),m=t.getParameter(t.MAX_TEXTURE_SIZE),g=t.getParameter(t.MAX_CUBE_MAP_TEXTURE_SIZE),v=t.getParameter(t.MAX_VERTEX_ATTRIBS),_=t.getParameter(t.MAX_VERTEX_UNIFORM_VECTORS),A=t.getParameter(t.MAX_VARYING_VECTORS),y=t.getParameter(t.MAX_FRAGMENT_UNIFORM_VECTORS),q=f>0,E=o||e.has("OES_texture_float"),T=q&&E,C=o?t.getParameter(t.MAX_SAMPLES):0;return{isWebGL2:o,drawBuffers:u,getMaxAnisotropy:r,getMaxPrecision:s,precision:a,logarithmicDepthBuffer:c,maxTextures:h,maxVertexTextures:f,maxTextureSize:m,maxCubemapSize:g,maxAttributes:v,maxVertexUniforms:_,maxVaryings:A,maxFragmentUniforms:y,vertexTextures:q,floatFragmentTextures:E,floatVertexTextures:T,maxSamples:C}}function Qie(t){const e=this;let n=null,i=0,r=!1,s=!1;const o=new Ro,a=new $t,l={value:null,needsUpdate:!1};this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(h,f){const m=h.length!==0||f||i!==0||r;return r=f,i=h.length,m},this.beginShadows=function(){s=!0,c(null)},this.endShadows=function(){s=!1},this.setGlobalState=function(h,f){n=c(h,f,0)},this.setState=function(h,f,m){const g=h.clippingPlanes,v=h.clipIntersection,_=h.clipShadows,A=t.get(h);if(!r||g===null||g.length===0||s&&!_)s?c(null):u();else{const y=s?0:i,q=y*4;let E=A.clippingState||null;l.value=E,E=c(g,f,q,m);for(let T=0;T!==q;++T)E[T]=n[T];A.clippingState=E,this.numIntersection=v?this.numPlanes:0,this.numPlanes+=y}};function u(){l.value!==n&&(l.value=n,l.needsUpdate=i>0),e.numPlanes=i,e.numIntersection=0}function c(h,f,m,g){const v=h!==null?h.length:0;let _=null;if(v!==0){if(_=l.value,g!==!0||_===null){const A=m+v*4,y=f.matrixWorldInverse;a.getNormalMatrix(y),(_===null||_.length<A)&&(_=new Float32Array(A));for(let q=0,E=m;q!==v;++q,E+=4)o.copy(h[q]).applyMatrix4(y,a),o.normal.toArray(_,E),_[E+3]=o.constant}l.value=_,l.needsUpdate=!0}return e.numPlanes=v,e.numIntersection=0,_}}function Hie(t){let e=new WeakMap;function n(o,a){return a===xd?o.mapping=cu:a===Ed&&(o.mapping=Dc),o}function i(o){if(o&&o.isTexture&&o.isRenderTargetTexture===!1){const a=o.mapping;if(a===xd||a===Ed)if(e.has(o)){const l=e.get(o).texture;return n(l,o.mapping)}else{const l=o.image;if(l&&l.height>0){const u=new YU(l.height/2);return u.fromEquirectangularTexture(t,o),e.set(o,u),o.addEventListener("dispose",r),n(u.texture,o.mapping)}else return null}}return o}function r(o){const a=o.target;a.removeEventListener("dispose",r);const l=e.get(a);l!==void 0&&(e.delete(a),l.dispose())}function s(){e=new WeakMap}return{get:i,dispose:s}}class b2 extends M2{constructor(e=-1,n=1,i=1,r=-1,s=.1,o=2e3){super(),this.isOrthographicCamera=!0,this.type="Orthogra
3403phicCamera",this.zoom=1,this.view=null,this.left=e,this.right=n,this.top=i,this.bottom=r,this.near=s,this.far=o,this.updateProjectionMatrix()}copy(e,n){return super.copy(e,n),this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.near=e.near,this.far=e.far,this.zoom=e.zoom,this.view=e.view===null?null:Object.assign({},e.view),this}setViewOffset(e,n,i,r,s,o){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=n,this.view.offsetX=i,this.view.offsetY=r,this.view.width=s,this.view.height=o,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=(this.right-this.left)/(2*this.zoom),n=(this.top-this.bottom)/(2*this.zoom),i=(this.right+this.left)/2,r=(this.top+this.bottom)/2;let s=i-e,o=i+e,a=r+n,l=r-n;if(this.view!==null&&this.view.enabled){const u=(this.right-this.left)/this.view.fullWidth/this.zoom,c=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=u*this.view.offsetX,o=s+u*this.view.width,a-=c*this.view.offsetY,l=a-c*this.view.height}this.projectionMatrix.makeOrthographic(s,o,a,l,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const n=super.toJSON(e);return n.object.zoom=this.zoom,n.object.left=this.left,n.object.right=this.right,n.object.top=this.top,n.object.bottom=this.bottom,n.object.near=this.near,n.object.far=this.far,this.view!==null&&(n.object.view=Object.assign({},this.view)),n}}const o0=4,zb=[.125,.215,.35,.446,.526,.582],Qh=20,My=new b2,Vb=new Me;let Ry=null;const Dh=(1+Math.sqrt(5))/2,I3=1/Dh,Gb=[new L(1,1,1),new L(-1,1,1),new L(1,1,-1),new L(-1,1,-1),new L(0,Dh,I3),new L(0,Dh,-I3),new L(I3,0,Dh),new L(-I3,0,Dh),new L(Dh,I3,0),new L(-Dh,I3,0)];class Lx{constructor(e){this._renderer=e,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(e,n=0,i=.1,r=100){Ry=this._renderer.getRenderTarget(),this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(e,i,r,s),n>0&&this._blur(s,0,0,n),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(e,n=null){return this._fromTexture(e,n)}fromCubemap(e,n=null){return this._fromTexture(e,n)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=Wb(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=Hb(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e<this._lodPlanes.length;e++)this._lodPlanes[e].dispose()}_cleanup(e){this._renderer.setRenderTarget(Ry),e.scissorTest=!1,s7(e,0,0,e.width,e.height)}_fromTexture(e,n){e.mapping===cu||e.mapping===Dc?this._setSize(e.image.length===0?16:e.image[0].width||e.image[0].image.width):this._setSize(e.image.width/4),Ry=this._renderer.getRenderTarget();const i=n||this._allocateTargets();return this._textureToCubeUV(e,i),this._applyPMREM(i),this._cleanup(i),i}_allocateTargets(){const e=3*Math.max(this._cubeSize,112),n=4*this._cubeSize,i={magFilter:_n,minFilter:_n,generateMipmaps:!1,type:yi,format:mi,colorSpace:va,depthBuffer:!1},r=Qb(e,n,i);if(this._pingPongRenderTarget===null||this._pingPongRenderTarget.width!==e||this._pingPongRenderTarget.height!==n){this._pingPongRenderTarget!==null&&this._dispose(),this._pingPongRenderTarget=Qb(e,n,i);const{_lodMax:s}=this;({sizeLods:this._sizeLods,lodPlanes:this._lodPlanes,sigmas:this._sigmas}=Wie(s)),this._blurMaterial=$ie(s,e,n)}return r}_compileMaterial(e){const n=new yn(this._lodPlanes[0],e);this._renderer.compile(n,My)}_sceneToCubeUV(e,n,i,r){const a=new Yn(90,1,n,i),l=[1,-1,1,1,1,1],u=[1,1,1,-1,-1,-1],c=this._renderer,h=c.autoClear,f=c.toneMapping;c.getClearColor(Vb),c.toneMapping=Fo,c.autoClear=!1;
vendor: 5,408 bytes, lines 3403-3478
3403const m=new Go({name:"PMREM.Background",side:Fi,depthWrite:!1,depthTest:!1}),g=new yn(new Zc,m);let v=!1;const _=e.background;_?_.isColor&&(m.color.copy(_),e.background=null,v=!0):(m.color.copy(Vb),v=!0);for(let A=0;A<6;A++){const y=A%3;y===0?(a.up.set(0,l[A],0),a.lookAt(u[A],0,0)):y===1?(a.up.set(0,0,l[A]),a.lookAt(0,u[A],0)):(a.up.set(0,l[A],0),a.lookAt(0,0,u[A]));const q=this._cubeSize;s7(r,y*q,A>2?q:0,q,q),c.setRenderTarget(r),v&&c.render(g,a),c.render(e,a)}g.geometry.dispose(),g.material.dispose(),c.toneMapping=f,c.autoClear=h,e.background=_}_textureToCubeUV(e,n){const i=this._renderer,r=e.mapping===cu||e.mapping===Dc;r?(this._cubemapMaterial===null&&(this._cubemapMaterial=Wb()),this._cubemapMaterial.uniforms.flipEnvMap.value=e.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=Hb());const s=r?this._cubemapMaterial:this._equirectMaterial,o=new yn(this._lodPlanes[0],s),a=s.uniforms;a.envMap.value=e;const l=this._cubeSize;s7(n,0,0,3*l,2*l),i.setRenderTarget(n),i.render(o,My)}_applyPMREM(e){const n=this._renderer,i=n.autoClear;n.autoClear=!1;for(let r=1;r<this._lodPlanes.length;r++){const s=Math.sqrt(this._sigmas[r]*this._sigmas[r]-this._sigmas[r-1]*this._sigmas[r-1]),o=Gb[(r-1)%Gb.length];this._blur(e,r-1,r,s,o)}n.autoClear=i}_blur(e,n,i,r,s){const o=this._pingPongRenderTarget;this._halfBlur(e,o,n,i,r,"latitudinal",s),this._halfBlur(o,e,i,i,r,"longitudinal",s)}_halfBlur(e,n,i,r,s,o,a){const l=this._renderer,u=this._blurMaterial;o!=="latitudinal"&&o!=="longitudinal"&&console.error("blur direction must be either latitudinal or longitudinal!");const c=3,h=new yn(this._lodPlanes[r],u),f=u.uniforms,m=this._sizeLods[i]-1,g=isFinite(s)?Math.PI/(2*m):2*Math.PI/(2*Qh-1),v=s/g,_=isFinite(s)?1+Math.floor(c*v):Qh;_>Qh&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${_} samples when the maximum is set to ${Qh}`);const A=[];let y=0;for(let I=0;I<Qh;++I){const R=I/v,M=Math.exp(-R*R/2);A.push(M),I===0?y+=M:I<_&&(y+=2*M)}for(let I=0;I<A.length;I++)A[I]=A[I]/y;f.envMap.value=e.texture,f.samples.value=_,f.weights.value=A,f.latitudinal.value=o==="latitudinal",a&&(f.poleAxis.value=a);const{_lodMax:q}=this;f.dTheta.value=g,f.mipInt.value=q-i;const E=this._sizeLods[r],T=3*E*(r>q-o0?r-q+o0:0),C=4*(this._cubeSize-E);s7(n,T,C,3*E,2*E),l.setRenderTarget(n),l.render(h,My)}}function Wie(t){const e=[],n=[],i=[];let r=t;const s=t-o0+1+zb.length;for(let o=0;o<s;o++){const a=Math.pow(2,r);n.push(a);let l=1/a;o>t-o0?l=zb[o-t+o0-1]:o===0&&(l=0),i.push(l);const u=1/(a-2),c=-u,h=1+u,f=[c,c,h,c,h,h,c,c,h,h,c,h],m=6,g=6,v=3,_=2,A=1,y=new Float32Array(v*g*m),q=new Float32Array(_*g*m),E=new Float32Array(A*g*m);for(let C=0;C<m;C++){const I=C%3*2/3-1,R=C>2?0:-1,M=[I,R,0,I+2/3,R,0,I+2/3,R+1,0,I,R,0,I+2/3,R+1,0,I,R+1,0];y.set(M,v*g*C),q.set(f,_*g*C);const b=[C,C,C,C,C,C];E.set(b,A*g*C)}const T=new Bt;T.setAttribute("position",new pn(y,v)),T.setAttribute("uv",new pn(q,_)),T.setAttribute("faceIndex",new pn(E,A)),e.push(T),r>o0&&r--}return{lodPlanes:e,sizeLods:n,sigmas:i}}function Qb(t,e,n){const i=new Yt(t,e,n);return i.texture.mapping=w2,i.texture.name="PMREM.cubeUv",i.scissorTest=!0,i}function s7(t,e,n,i,r){t.viewport.set(e,n,i,r),t.scissor.set(e,n,i,r)}function $ie(t,e,n){const i=new Float32Array(Qh),r=new L(0,1,0);return new zt({name:"SphericalGaussianBlur",defines:{n:Qh,CUBEUV_TEXEL_WIDTH:1/e,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${t}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:WT(),fragmentShader:` 3404 3405 precision mediump float; 3406 precision mediump int; 3407 3408 varying vec3 vOutputDirection; 3409 3410 uniform sampler2D envMap; 3411 uniform int samples; 3412 uniform float weights[ n ]; 3413 uniform bool latitudinal; 3414 uniform float dTheta; 3415 uniform float mipInt; 3416 uniform vec3 poleAxis; 3417 3418 #define ENVMAP_TYPE_CUBE_UV 3419 #include <cube_uv_reflection_fragment> 3420 3421 vec3 getSample( float theta, vec3 axis ) { 3422 3423 float cosTheta = cos( theta ); 3424 // Rodrigues' axis-angle rotation 3425 vec3 sampleDirection = vOutputDirection * cosTheta 3426 + cross( axis, vOutputDirection ) * sin( theta ) 3427 + axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta ); 3428 3429 return bilinearCubeUV( envMap, sampleDirection, mipInt ); 3430 3431 } 3432 3433 void main() { 3434 3435 vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection ); 3436 3437 if ( all( equal( axis, vec3( 0.0 ) ) ) ) { 3438 3439 axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x ); 3440 3441 } 3442 3443 axis = normalize( axis ); 3444 3445 gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 ); 3446 gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis ); 3447 3448 for ( int i = 1; i < n; i++ ) { 3449 3450 if ( i >= samples ) { 3451 3452 break; 3453 3454 } 3455 3456 float theta = dTheta * float( i ); 3457 gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis ); 3458 gl_FragColor.rgb += weights[ i ] * getSample( theta, axis ); 3459 3460 } 3461 3462 } 3463 `,blending:bt,depthTest:!1,depthWrite:!1})}function Hb(){return new zt({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:WT(),fragmentShader:` 3464 3465 precision mediump float; 3466 precision mediump int; 3467 3468 varying vec3 vOutputDirection; 3469 3470 uniform sampler2D envMap; 3471 3472 #include <common> 3473 3474 void main() { 3475 3476 vec3 outputDirection = normalize( vOutputDirection ); 3477 vec2 uv = equirectUv( outputDirection ); 3478
3479 gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); 3480 3481 } 3482 `,blending:bt,depthTest:!1,depthWrite:!1})}function Wb(){return new zt({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:WT(),fragmentShader:` 3483 3484 precision mediump float; 3485 precision mediump int; 3486 3487 uniform float flipEnvMap; 3488 3489 varying vec3 vOutputDirection; 3490 3491 uniform samplerCube envMap; 3492 3493 void main() { 3494 3495 gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); 3496 3497 } 3498 `,blending:bt,depthTest:!1,depthWrite:!1})}function WT(){return` 3499 3500 precision mediump float; 3501 precision mediump int; 3502 3503 attribute float faceIndex; 3504 3505 varying vec3 vOutputDirection; 3506 3507 // RH coordinate system; PMREM face-indexing convention 3508 vec3 getDirection( vec2 uv, float face ) { 3509 3510 uv = 2.0 * uv - 1.0; 3511 3512 vec3 direction = vec3( uv, 1.0 ); 3513 3514 if ( face == 0.0 ) { 3515 3516 direction = direction.zyx; // ( 1, v, u ) pos x 3517 3518 } else if ( face == 1.0 ) { 3519 3520 direction = direction.xzy; 3521 direction.xz *= -1.0; // ( -u, 1, -v ) pos y 3522 3523 } else if ( face == 2.0 ) { 3524 3525 direction.x *= -1.0; // ( -u, v, 1 ) pos z 3526 3527 } else if ( face == 3.0 ) { 3528 3529 direction = direction.zyx; 3530 direction.xz *= -1.0; // ( -1, v, -u ) neg x 3531 3532 } else if ( face == 4.0 ) { 3533 3534 direction = direction.xzy; 3535 direction.xy *= -1.0; // ( -u, -1, v ) neg y 3536 3537 } else if ( face == 5.0 ) { 3538 3539 direction.z *= -1.0; // ( u, v, -1 ) neg z 3540 3541 } 3542 3543 return direction; 3544 3545 } 3546 3547 void main() { 3548 3549 vOutputDirection = getDirection( uv, faceIndex ); 3550 gl_Position = vec4( position, 1.0 ); 3551 3552 } 3553 `}function jie(t){let e=new WeakMap,n=null;function i(a){if(a&&a.isTexture){const l=a.mapping,u=l===xd||l===Ed,c=l===cu||l===Dc;if(u||c)if(a.isRenderTargetTexture&&a.needsPMREMUpdate===!0){a.needsPMREMUpdate=!1;let h=e.get(a);return n===null&&(n=new Lx(t)),h=u?n.fromEquirectangular(a,h):n.fromCubemap(a,h),e.set(a,h),h.texture}else{if(e.has(a))return e.get(a).texture;{const h=a.image;if(u&&h&&h.height>0||c&&h&&r(h)){n===null&&(n=new Lx(t));const f=u?n.fromEquirectangular(a):n.fromCubemap(a);return e.set(a,f),a.addEventListener("dispose",s),f.texture}else return null}}}return a}function r(a){let l=0;const u=6;for(let c=0;c<u;c++)a[c]!==void 0&&l++;return l===u}function s(a){const l=a.target;l.removeEventListener("dispose",s);const u=e.get(l);u!==void 0&&(e.delete(l),u.dispose())}function o(){e=new WeakMap,n!==null&&(n.dispose(),n=null)}return{get:i,dispose:o}}function Xie(t){const e={};function n(i){if(e[i]!==void 0)return e[i];let r;switch(i){case"WEBGL_depth_texture":r=t.getExtension("WEBGL_depth_texture")||t.getExtension("MOZ_WEBGL_depth_texture")||t.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":r=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":r=t.getExtension("WEBGL_compressed_texture_s3tc")||t.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":r=t.getExtension("WEBGL_compressed_texture_pvrtc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:r=t.getExtension(i)}return e[i]=r,r}return{has:function(i){return n(i)!==null},init:function(i){i.isWebGL2?n("EXT_color_buffer_float"):(n("WEBGL_depth_texture"),n("OES_texture_float"),n("OES_texture_half_float"),n("OES_texture_half_float_linear"),n("OES_standard_derivatives"),n("OES_element_index_uint"),n("OES_vertex_array_object"),n("ANGLE_instanced_arrays")),n("OES_texture_float_linear"),n("EXT_color_buffer_half_float"),n("WEBGL_multisampled_render_to_texture")},get:function(i){const r=n(i);return r===null&&console.warn("THREE.WebGLRenderer: "+i+" extension not supported."),r}}}function Yie(t,e,n,i){const r={},s=new WeakMap;function o(h){const f=h.target;f.index!==null&&e.remove(f.index);for(const g in f.attributes)e.remove(f.attributes[g]);for(const g in f.morphAttributes){const v=f.morphAttributes[g];for(let _=0,A=v.length;_<A;_++)e.remove(v[_])}f.removeEventListener("dispose",o),delete r[f.id];const m=s.get(f);m&&(e.remove(m),s.delete(f)),i.releaseStatesOfGeometry(f),f.isInstancedBufferGeometry===!0&&delete f._maxInstanceCount,n.memory.geometries--}function a(h,f){return r[f.id]===!0||(f.addEventListener("dispose",o),r[f.id]=!0,n.memory.geometries++),f}function l(h){const f=h.attributes;for(const g in f)e.update(f[g],t.ARRAY_BUFFER);const m=h.morphAttributes;for(const g in m){const v=m[g];for(let _=0,A=v.length;_<A;_++)e.update(v[_],t.ARRAY_BUFFER)}}function u(h){const f=[],m=h.index,g=h.attributes.position;let v=0;if(m!==null){const y=m.array;v=m.version;for(let q=0,E=y.length;q<E;
vendor: 4,716 bytes, line 3553
3553q+=3){const T=y[q+0],C=y[q+1],I=y[q+2];f.push(T,C,C,I,I,T)}}else if(g!==void 0){const y=g.array;v=g.version;for(let q=0,E=y.length/3-1;q<E;q+=3){const T=q+0,C=q+1,I=q+2;f.push(T,C,C,I,I,T)}}else return;const _=new(HU(f)?j9:HT)(f,1);_.version=v;const A=s.get(h);A&&e.remove(A),s.set(h,_)}function c(h){const f=s.get(h);if(f){const m=h.index;m!==null&&f.version<m.version&&u(h)}else u(h);return s.get(h)}return{get:a,update:l,getWireframeAttribute:c}}function Kie(t,e,n,i){const r=i.isWebGL2;let s;function o(f){s=f}let a,l;function u(f){a=f.type,l=f.bytesPerElement}function c(f,m){t.drawElements(s,m,a,f*l),n.update(m,s,1)}function h(f,m,g){if(g===0)return;let v,_;if(r)v=t,_="drawElementsInstanced";else if(v=e.get("ANGLE_instanced_arrays"),_="drawElementsInstancedANGLE",v===null){console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");return}v[_](s,m,a,f*l,g),n.update(m,s,g)}this.setMode=o,this.setIndex=u,this.render=c,this.renderInstances=h}function Jie(t){const e={geometries:0,textures:0},n={frame:0,calls:0,triangles:0,points:0,lines:0};function i(s,o,a){switch(n.calls++,o){case t.TRIANGLES:n.triangles+=a*(s/3);break;case t.LINES:n.lines+=a*(s/2);break;case t.LINE_STRIP:n.lines+=a*(s-1);break;case t.LINE_LOOP:n.lines+=a*s;break;case t.POINTS:n.points+=a*s;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",o);break}}function r(){n.calls=0,n.triangles=0,n.points=0,n.lines=0}return{memory:e,render:n,programs:null,autoReset:!0,reset:r,update:i}}function Zie(t,e){return t[0]-e[0]}function ere(t,e){return Math.abs(e[1])-Math.abs(t[1])}function tre(t,e,n){const i={},r=new Float32Array(8),s=new WeakMap,o=new Zt,a=[];for(let u=0;u<8;u++)a[u]=[u,0];function l(u,c,h){const f=u.morphTargetInfluences;if(e.isWebGL2===!0){const g=c.morphAttributes.position||c.morphAttributes.normal||c.morphAttributes.color,v=g!==void 0?g.length:0;let _=s.get(c);if(_===void 0||_.count!==v){let $=function(){O.dispose(),s.delete(c),c.removeEventListener("dispose",$)};var m=$;_!==void 0&&_.texture.dispose();const q=c.morphAttributes.position!==void 0,E=c.morphAttributes.normal!==void 0,T=c.morphAttributes.color!==void 0,C=c.morphAttributes.position||[],I=c.morphAttributes.normal||[],R=c.morphAttributes.color||[];let M=0;q===!0&&(M=1),E===!0&&(M=2),T===!0&&(M=3);let b=c.attributes.position.count*M,D=1;b>e.maxTextureSize&&(D=Math.ceil(b/e.maxTextureSize),b=e.maxTextureSize);const z=new Float32Array(b*D*4*v),O=new $9(z,b,D,v);O.type=kr,O.needsUpdate=!0;const W=M*4;for(let K=0;K<v;K++){const Y=C[K],B=I[K],U=R[K],F=b*D*4*K;for(let k=0;k<Y.count;k++){const Q=k*W;q===!0&&(o.fromBufferAttribute(Y,k),z[F+Q+0]=o.x,z[F+Q+1]=o.y,z[F+Q+2]=o.z,z[F+Q+3]=0),E===!0&&(o.fromBufferAttribute(B,k),z[F+Q+4]=o.x,z[F+Q+5]=o.y,z[F+Q+6]=o.z,z[F+Q+7]=0),T===!0&&(o.fromBufferAttribute(U,k),z[F+Q+8]=o.x,z[F+Q+9]=o.y,z[F+Q+10]=o.z,z[F+Q+11]=U.itemSize===4?o.w:1)}}_={count:v,texture:O,size:new oe(b,D)},s.set(c,_),c.addEventListener("dispose",$)}let A=0;for(let q=0;q<f.length;q++)A+=f[q];const y=c.morphTargetsRelative?1:1-A;h.getUniforms().setValue(t,"morphTargetBaseInfluence",y),h.getUniforms().setValue(t,"morphTargetInfluences",f),h.getUniforms().setValue(t,"morphTargetsTexture",_.texture,n),h.getUniforms().setValue(t,"morphTargetsTextureSize",_.size)}else{const g=f===void 0?0:f.length;let v=i[c.id];if(v===void 0||v.length!==g){v=[];for(let E=0;E<g;E++)v[E]=[E,0];i[c.id]=v}for(let E=0;E<g;E++){const T=v[E];T[0]=E,T[1]=f[E]}v.sort(ere);for(let E=0;E<8;E++)E<g&&v[E][1]?(a[E][0]=v[E][0],a[E][1]=v[E][1]):(a[E][0]=Number.MAX_SAFE_INTEGER,a[E][1]=0);a.sort(Zie);const _=c.morphAttributes.position,A=c.morphAttributes.normal;let y=0;for(let E=0;E<8;E++){const T=a[E],C=T[0],I=T[1];C!==Number.MAX_SAFE_INTEGER&&I?(_&&c.getAttribute("morphTarget"+E)!==_[C]&&c.setAttribute("morphTarget"+E,_[C]),A&&c.getAttribute("morphNormal"+E)!==A[C]&&c.setAttribute("morphNormal"+E,A[C]),r[E]=I,y+=I):(_&&c.hasAttribute("morphTarget"+E)===!0&&c.deleteAttribute("morphTarget"+E),A&&c.hasAttribute("morphNormal"+E)===!0&&c.deleteAttribute("morphNormal"+E),r[E]=0)}const q=c.morphTargetsRelative?1:1-y;h.getUniforms().setValue(t,"morphTargetBaseInfluence",q),h.getUniforms().setValue(t,"morphTargetInfluences",r)}}return{update:l}}function nre(t,e,n,i){let r=new WeakMap;function s(l){const u=i.render.frame,c=l.geometry,h=e.get(l,c);if(r.get(h)!==u&&(e.update(h),r.set(h,u)),l.isInstancedMesh&&(l.hasEventListener("dispose",a)===!1&&l.addEventListener("dispose",a),r.get(l)!==u&&(n.update(l.instanceMatrix,t.ARRAY_BUFFER),l.instanceColor!==null&&n.update(l.instanceColor,t.ARRAY_BUFFER),r.set(l,u))),l.isSkinnedMesh){const f=l.skeleton;
vendor: 4,367 bytes, line 3553
3553r.get(f)!==u&&(f.update(),r.set(f,u))}return h}function o(){r=new WeakMap}function a(l){const u=l.target;u.removeEventListener("dispose",a),n.remove(u.instanceMatrix),u.instanceColor!==null&&n.remove(u.instanceColor)}return{update:s,dispose:o}}const JU=new Gn,ZU=new $9,ez=new QT,tz=new N4,$b=[],jb=[],Xb=new Float32Array(16),Yb=new Float32Array(9),Kb=new Float32Array(4);function P2(t,e,n){const i=t[0];if(i<=0||i>0)return t;const r=e*n;let s=$b[r];if(s===void 0&&(s=new Float32Array(r),$b[r]=s),e!==0){i.toArray(s,0);for(let o=1,a=0;o!==e;++o)a+=n,t[o].toArray(s,a)}return s}function Xi(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function Yi(t,e){for(let n=0,i=e.length;n<i;n++)t[n]=e[n]}function Y9(t,e){let n=jb[e];n===void 0&&(n=new Int32Array(e),jb[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function ire(t,e){const n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function rre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y)&&(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Xi(n,e))return;t.uniform2fv(this.addr,e),Yi(n,e)}}function sre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z)&&(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(e.r!==void 0)(n[0]!==e.r||n[1]!==e.g||n[2]!==e.b)&&(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(Xi(n,e))return;t.uniform3fv(this.addr,e),Yi(n,e)}}function ore(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z||n[3]!==e.w)&&(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Xi(n,e))return;t.uniform4fv(this.addr,e),Yi(n,e)}}function are(t,e){const n=this.cache,i=e.elements;if(i===void 0){if(Xi(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),Yi(n,e)}else{if(Xi(n,i))return;Kb.set(i),t.uniformMatrix2fv(this.addr,!1,Kb),Yi(n,i)}}function lre(t,e){const n=this.cache,i=e.elements;if(i===void 0){if(Xi(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),Yi(n,e)}else{if(Xi(n,i))return;Yb.set(i),t.uniformMatrix3fv(this.addr,!1,Yb),Yi(n,i)}}function ure(t,e){const n=this.cache,i=e.elements;if(i===void 0){if(Xi(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),Yi(n,e)}else{if(Xi(n,i))return;Xb.set(i),t.uniformMatrix4fv(this.addr,!1,Xb),Yi(n,i)}}function cre(t,e){const n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function hre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y)&&(t.uniform2i(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Xi(n,e))return;t.uniform2iv(this.addr,e),Yi(n,e)}}function fre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z)&&(t.uniform3i(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else{if(Xi(n,e))return;t.uniform3iv(this.addr,e),Yi(n,e)}}function dre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z||n[3]!==e.w)&&(t.uniform4i(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Xi(n,e))return;t.uniform4iv(this.addr,e),Yi(n,e)}}function pre(t,e){const n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function mre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y)&&(t.uniform2ui(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Xi(n,e))return;t.uniform2uiv(this.addr,e),Yi(n,e)}}function gre(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z)&&(t.uniform3ui(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else{if(Xi(n,e))return;t.uniform3uiv(this.addr,e),Yi(n,e)}}function Are(t,e){const n=this.cache;if(e.x!==void 0)(n[0]!==e.x||n[1]!==e.y||n[2]!==e.z||n[3]!==e.w)&&(t.uniform4ui(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Xi(n,e))return;t.uniform4uiv(this.addr,e),Yi(n,e)}}function vre(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2D(e||JU,r)}function yre(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||ez,r)}function qre(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTextureCube(e||tz,r)}function _re(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2DArray(e||ZU,r)}function xre(t){switch(t){case 5126:return ire;
vendor: 6,379 bytes, lines 3553-3561
3553case 35664:return rre;case 35665:return sre;case 35666:return ore;case 35674:return are;case 35675:return lre;case 35676:return ure;case 5124:case 35670:return cre;case 35667:case 35671:return hre;case 35668:case 35672:return fre;case 35669:case 35673:return dre;case 5125:return pre;case 36294:return mre;case 36295:return gre;case 36296:return Are;case 35678:case 36198:case 36298:case 36306:case 35682:return vre;case 35679:case 36299:case 36307:return yre;case 35680:case 36300:case 36308:case 36293:return qre;case 36289:case 36303:case 36311:case 36292:return _re}}function Ere(t,e){t.uniform1fv(this.addr,e)}function Sre(t,e){const n=P2(e,this.size,2);t.uniform2fv(this.addr,n)}function Tre(t,e){const n=P2(e,this.size,3);t.uniform3fv(this.addr,n)}function Cre(t,e){const n=P2(e,this.size,4);t.uniform4fv(this.addr,n)}function wre(t,e){const n=P2(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function Ire(t,e){const n=P2(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function Mre(t,e){const n=P2(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function Rre(t,e){t.uniform1iv(this.addr,e)}function bre(t,e){t.uniform2iv(this.addr,e)}function Pre(t,e){t.uniform3iv(this.addr,e)}function Bre(t,e){t.uniform4iv(this.addr,e)}function Dre(t,e){t.uniform1uiv(this.addr,e)}function Lre(t,e){t.uniform2uiv(this.addr,e)}function Nre(t,e){t.uniform3uiv(this.addr,e)}function kre(t,e){t.uniform4uiv(this.addr,e)}function Fre(t,e,n){const i=this.cache,r=e.length,s=Y9(n,r);Xi(i,s)||(t.uniform1iv(this.addr,s),Yi(i,s));for(let o=0;o!==r;++o)n.setTexture2D(e[o]||JU,s[o])}function Ore(t,e,n){const i=this.cache,r=e.length,s=Y9(n,r);Xi(i,s)||(t.uniform1iv(this.addr,s),Yi(i,s));for(let o=0;o!==r;++o)n.setTexture3D(e[o]||ez,s[o])}function Ure(t,e,n){const i=this.cache,r=e.length,s=Y9(n,r);Xi(i,s)||(t.uniform1iv(this.addr,s),Yi(i,s));for(let o=0;o!==r;++o)n.setTextureCube(e[o]||tz,s[o])}function zre(t,e,n){const i=this.cache,r=e.length,s=Y9(n,r);Xi(i,s)||(t.uniform1iv(this.addr,s),Yi(i,s));for(let o=0;o!==r;++o)n.setTexture2DArray(e[o]||ZU,s[o])}function Vre(t){switch(t){case 5126:return Ere;case 35664:return Sre;case 35665:return Tre;case 35666:return Cre;case 35674:return wre;case 35675:return Ire;case 35676:return Mre;case 5124:case 35670:return Rre;case 35667:case 35671:return bre;case 35668:case 35672:return Pre;case 35669:case 35673:return Bre;case 5125:return Dre;case 36294:return Lre;case 36295:return Nre;case 36296:return kre;case 35678:case 36198:case 36298:case 36306:case 35682:return Fre;case 35679:case 36299:case 36307:return Ore;case 35680:case 36300:case 36308:case 36293:return Ure;case 36289:case 36303:case 36311:case 36292:return zre}}class Gre{constructor(e,n,i){this.id=e,this.addr=i,this.cache=[],this.setValue=xre(n.type)}}class Qre{constructor(e,n,i){this.id=e,this.addr=i,this.cache=[],this.size=n.size,this.setValue=Vre(n.type)}}class Hre{constructor(e){this.id=e,this.seq=[],this.map={}}setValue(e,n,i){const r=this.seq;for(let s=0,o=r.length;s!==o;++s){const a=r[s];a.setValue(e,n[a.id],i)}}}const by=/(\w+)(\])?(\[|\.)?/g;function Jb(t,e){t.seq.push(e),t.map[e.id]=e}function Wre(t,e,n){const i=t.name,r=i.length;for(by.lastIndex=0;;){const s=by.exec(i),o=by.lastIndex;let a=s[1];const l=s[2]==="]",u=s[3];if(l&&(a=a|0),u===void 0||u==="["&&o+2===r){Jb(n,u===void 0?new Gre(a,t,e):new Qre(a,t,e));break}else{let h=n.map[a];h===void 0&&(h=new Hre(a),Jb(n,h)),n=h}}}class C8{constructor(e,n){this.seq=[],this.map={};const i=e.getProgramParameter(n,e.ACTIVE_UNIFORMS);for(let r=0;r<i;++r){const s=e.getActiveUniform(n,r),o=e.getUniformLocation(n,s.name);Wre(s,o,this)}}setValue(e,n,i,r){const s=this.map[n];s!==void 0&&s.setValue(e,i,r)}setOptional(e,n,i){const r=n[i];r!==void 0&&this.setValue(e,i,r)}static upload(e,n,i,r){for(let s=0,o=n.length;s!==o;++s){const a=n[s],l=i[a.id];l.needsUpdate!==!1&&a.setValue(e,l.value,r)}}static seqWithValue(e,n){const i=[];for(let r=0,s=e.length;r!==s;++r){const o=e[r];o.id in n&&i.push(o)}return i}}function Zb(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}let $re=0;function jre(t,e){const n=t.split(` 3554`),i=[],r=Math.max(e-6,0),s=Math.min(e+6,n.length);for(let o=r;o<s;o++){const a=o+1;i.push(`${a===e?">":" "} ${a}: ${n[o]}`)}return i.join(` 3555`)}function Xre(t){switch(t){case va:return["Linear","( value )"];case Ot:return["sRGB","( value )"];default:return console.warn("THREE.WebGLProgram: Unsupported color space:",t),["Linear","( value )"]}}function eP(t,e,n){const i=t.getShaderParameter(e,t.COMPILE_STATUS),r=t.getShaderInfoLog(e).trim();if(i&&r==="")return"";const s=/ERROR: 0:(\d+)/.exec(r);if(s){const o=parseInt(s[1]);return n.toUpperCase()+` 3556 3557`+r+` 3558 3559`+jre(t.getShaderSource(e),o)}else return r}function Yre(t,e){const n=Xre(e);return"vec4 "+t+"( vec4 value ) { return LinearTo"+n[0]+n[1]+"; }"}function Kre(t,e){let n;switch(e){case xU:n="Linear";break;case EU:n="Reinhard";break;case SU:n="OptimizedCineon";break;case bT:n="ACESFilmic";break;case TU:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),n="Linear"}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}function Jre(t){return[t.extensionDerivatives||t.envMapCubeUVHeight||t.bumpMap||t.normalMapTangentSpace||t.clearcoatNormalMap||t.flatShading||t.shaderID==="physical"?"#extension GL_OES_standard_derivatives : enable":"",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(t.extensionShaderTextureLOD||t.envMap||t.transmission)&&t.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(i5).join(` 3560`)}function Zre(t){const e=[];for(const n in t){const i=t[n];i!==!1&&e.push("#define "+n+" "+i)}return e.join(` 3561`)}function ese(t,e){const n={},i=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES);for(let r=0;r<i;r++){const s=t.getActiveAttrib(e,r),o=s.name;let a=1;s.type===t.FLOAT_MAT2&&(a=2),s.type===t.FLOAT_MAT3&&(a=3),s.type===t.FLOAT_MAT4&&(a=4),n[o]={type:s.type,location:t.getAttribLocation(e,o),locationSize:a}}return n}function i5(t){return t!==""}function tP(t,e){const n=e.numSpotLightShadows+e.numSpotLightMaps-e.numSpotLightShadowsWithMaps;return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_L
vendor: 4,153 bytes, lines 3561-3570
3561IGHTS/g,e.numSpotLights).replace(/NUM_SPOT_LIGHT_MAPS/g,e.numSpotLightMaps).replace(/NUM_SPOT_LIGHT_COORDS/g,n).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS_WITH_MAPS/g,e.numSpotLightShadowsWithMaps).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function nP(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const tse=/^[ \t]*#include +<([\w\d./]+)>/gm;function Nx(t){return t.replace(tse,ise)}const nse=new Map([["encodings_fragment","colorspace_fragment"],["encodings_pars_fragment","colorspace_pars_fragment"],["output_fragment","opaque_fragment"]]);function ise(t,e){let n=Gt[e];if(n===void 0){const i=nse.get(e);if(i!==void 0)n=Gt[i],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',e,i);else throw new Error("Can not resolve #include <"+e+">")}return Nx(n)}const rse=/#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 iP(t){return t.replace(rse,sse)}function sse(t,e,n,i){let r="";for(let s=parseInt(e);s<parseInt(n);s++)r+=i.replace(/\[\s*i\s*\]/g,"[ "+s+" ]").replace(/UNROLLED_LOOP_INDEX/g,s);return r}function rP(t){let e="precision "+t.precision+` float; 3562precision `+t.precision+" int;";return t.precision==="highp"?e+=` 3563#define HIGH_PRECISION`:t.precision==="mediump"?e+=` 3564#define MEDIUM_PRECISION`:t.precision==="lowp"&&(e+=` 3565#define LOW_PRECISION`),e}function ose(t){let e="SHADOWMAP_TYPE_BASIC";return t.shadowMapType===U9?e="SHADOWMAP_TYPE_PCF":t.shadowMapType===C5?e="SHADOWMAP_TYPE_PCF_SOFT":t.shadowMapType===aa&&(e="SHADOWMAP_TYPE_VSM"),e}function ase(t){let e="ENVMAP_TYPE_CUBE";if(t.envMap)switch(t.envMapMode){case cu:case Dc:e="ENVMAP_TYPE_CUBE";break;case w2:e="ENVMAP_TYPE_CUBE_UV";break}return e}function lse(t){let e="ENVMAP_MODE_REFLECTION";if(t.envMap)switch(t.envMapMode){case Dc:e="ENVMAP_MODE_REFRACTION";break}return e}function use(t){let e="ENVMAP_BLENDING_NONE";if(t.envMap)switch(t.combine){case P4:e="ENVMAP_BLENDING_MULTIPLY";break;case qU:e="ENVMAP_BLENDING_MIX";break;case _U:e="ENVMAP_BLENDING_ADD";break}return e}function cse(t){const e=t.envMapCubeUVHeight;if(e===null)return null;const n=Math.log2(e)-2,i=1/e;return{texelWidth:1/(3*Math.max(Math.pow(2,n),7*16)),texelHeight:i,maxMip:n}}function hse(t,e,n,i){const r=t.getContext(),s=n.defines;let o=n.vertexShader,a=n.fragmentShader;const l=ose(n),u=ase(n),c=lse(n),h=use(n),f=cse(n),m=n.isWebGL2?"":Jre(n),g=Zre(s),v=r.createProgram();let _,A,y=n.glslVersion?"#version "+n.glslVersion+` 3566`:"";n.isRawShaderMaterial?(_=["#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,g].filter(i5).join(` 3567`),_.length>0&&(_+=` 3568`),A=[m,"#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,g].filter(i5).join(` 3569`),A.length>0&&(A+=` 3570`)):(_=[rP(n),"#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,g,n.instancing?"#define USE_INSTANCING":"",n.instancingColor?"#define USE_INSTANCING_COLOR":"",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 "+c:"",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.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_IR
3570IDESCENCE_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.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&&n.isWebGL2?"#define USE_MORPHCOLORS":"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_TEXTURE":"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_TEXTURE_STRIDE "+n.morphTextureStride:"",n.morphTargetsCount>0&&n.isWebGL2?"#define MORPHTARGETS_COUNT "+n.morphTargetsCount:"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+l:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.useLegacyLights?"#define LEGACY_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","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","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","#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )"," attribute vec3 morphTarget0;"," attribute vec3 morphTarget1;"," attribute vec3 morphTarget2;"," attribute vec3 morphTarget3;"," #ifdef USE_MORPHNORMALS"," attribute vec3 morphNormal0;"," attribute vec3 morphNormal1;"," attribute vec3 morphNormal2;"," attribute vec3 morphNormal3;"," #else"," attribute vec3 morphTarget4;"," attribute vec3 morphTarget5;"," attribute vec3 morphTarget6;"," attribute vec3 morphTarget7;"," #endif","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif",` 3571`].filter(i5).join(` 3572`),A=[m,rP(n),"#define SHADER_TYPE "+n.shaderType,"#define SHADER_NAME "+n.shaderName,g,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+u:"",n.envMap?"#define "+c:"",n.envMap?"#define "+h:"",f?"#define CUBEUV_TEXEL_WIDTH "+f.texelWidth:"",f?"#define CUBEUV_TEXEL_HEIGHT "+f.texelHeight:"",f?"#define CUBEUV_MAX_MIP "+f.max
vendor: 39,092 bytes, lines 3572-3611
3572Mip+".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.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.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?"#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 "+l:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.useLegacyLights?"#define LEGACY_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",n.toneMapping!==Fo?"#define TONE_MAPPING":"",n.toneMapping!==Fo?Gt.tonemapping_pars_fragment:"",n.toneMapping!==Fo?Kre("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",n.opaque?"#define OPAQUE":"",Gt.colorspace_pars_fragment,Yre("linearToOutputTexel",n.outputColorSpace),n.useDepthPacking?"#define DEPTH_PACKING "+n.depthPacking:"",` 3573`].filter(i5).join(` 3574`)),o=Nx(o),o=tP(o,n),o=nP(o,n),a=Nx(a),a=tP(a,n),a=nP(a,n),o=iP(o),a=iP(a),n.isWebGL2&&n.isRawShaderMaterial!==!0&&(y=`#version 300 es 3575`,_=["precision mediump sampler2DArray;","#define attribute in","#define varying out","#define texture2D texture"].join(` 3576`)+` 3577`+_,A=["#define varying in",n.glslVersion===Bx?"":"layout(location = 0) out highp vec4 pc_fragColor;",n.glslVersion===Bx?"":"#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(` 3578`)+` 3579`+A);const q=y+_+o,E=y+A+a,T=Zb(r,r.VERTEX_SHADER,q),C=Zb(r,r.FRAGMENT_SHADER,E);if(r.attachShader(v,T),r.attachShader(v,C),n.index0AttributeName!==void 0?r.bindAttribLocation(v,0,n.index0AttributeName):n.morphTargets===!0&&r.bindAttribLocation(v,0,"position"),r.linkProgram(v),t.debug.checkShaderErrors){const M=r.getProgramInfoLog(v).trim(),b=r.getShaderInfoLog(T).trim(),D=r.getShaderInfoLog(C).trim();let z=!0,O=!0;if(r.getProgramParameter(v,r.LINK_STATUS)===!1)if(z=!1,typeof t.debug.onShaderError=="function")t.debug.onShaderError(r,v,T,C);else{const W=eP(r,T,"vertex"),$=eP(r,C,"fragment");console.error("THREE.WebGLProgram: Shader Error "+r.getError()+" - VALIDATE_STATUS "+r.getProgramParameter(v,r.VALIDATE_STATUS)+` 3580 3581Program Info Log: `+M+` 3582`+W+` 3583`+$)}else M!==""?console.warn("THREE.WebGLProgram: Program Info Log:",M):(b===""||D==="")&&(O=!1);O&&(this.diagnostics={runnable:z,programLog:M,vertexShader:{log:b,prefix:_},fragmentShader:{log:D,prefix:A}})}r.deleteShader(T),r.deleteShader(C);let I;this.getUniforms=function(){return I===void 0&&(I=new C8(r,v)),I};let R;return this.getAttributes=function(){return R===void 0&&(R=ese(r,v)),R},this.destroy=function(){i.releaseStatesOfProgram(this),r.deleteProgram(v),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=$re++,this.cacheKey=e,this.usedTimes=1,this.program=v,this.vertexShader=T,this.fragmentShader=C,this}let fse=0;class dse{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e){const n=e.vertexShader,i=e.fragmentShader,r=this._getShaderStage(n),s=this._getShaderStage(i),o=this._getShaderCacheForMaterial(e);return o.has(r)===!1&&(o.add(r),r.usedTimes++),o.has(s)===!1&&(o.add(s),s.usedTimes++),this}remove(e){const n=this.materialCache.get(e);for(const i of n)i.usedTimes--,i.usedTimes===0&&this.shaderCache.delete(i.code);return this.materialCache.delete(e),this}getVertexShaderID(e){return this._getShaderStage(e.vertexShader).id}getFragmentShaderID(e){return this._getShaderStage(e.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){const n=this.materialCache;let i=n.get(e);return i===void 0&&(i=new Set,n.set(e,i)),i}_getShaderStage(e){const n=this.shaderCache;let i=n.get(e);return i===void 0&&(i=new pse(e),n.set(e,i)),i}}class pse{constructor(e){this.id=fse++,this.code=e,this.usedTimes=0}}function mse(t,e,n,i,r,s,o){const a=new u1,l=new dse,u=[],c=r.isWebGL2,h=r.logarithmicDepthBuffer,f=r.vertexTextures;let m=r.precision;const g={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",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 v(M){return M===0?"uv":`uv${M}`}function _(M,b,D,z,O){const W=z.fog,$=O.geometry,K=M.isMeshStandardMaterial?z.environment:null,Y=(M.isMeshStandardMaterial?n:e).get(M.envMap||K),B=Y&&Y.mapping===w2?Y.image.height:null,U=g[M.type];M.precision!==null&&(m=r.getMaxPrecision(M.precision),m!==M.precision&&console.warn("THREE.WebGLProgram.getParameters:",M.precision,"not supported, using",m,"instead."));const F=$.morphAttributes.position||$.morphAttributes.normal||$.morphAttributes.color,k=F!==void 0?F.length:0;let Q=0;$.morphAttributes.position!==void 0&&(Q=1),$.morphAttributes.normal!==void 0&&(Q=2),$.morphAttributes.color!==void 0&&(Q=3);let ce,ae,ge,ye;if(U){const Tn=ca[U];ce=Tn.vertexShader,ae=Tn.fragmentShader}else ce=M.vertexShader,ae=M.fragmentShader,l.update(M),ge=l.getVertexShaderID(M),ye=l.getFragmentShaderID(M);const xe=t.getRenderTarget(),Le=O.isInstancedMesh===!0,$e=!!M.map,Qe=!!M.matcap,Be=!!Y,X=!!M.aoMap,qe=!!M.lightMap,ve=!!M.bumpMap,Se=!!M.normalMap,_e=!!M.displacementMap,it=!!M.emissiveMap,Ge=!!M.metalnessMap,He=!!M.roughnessMap,pt=M.anisotropy>0,Vt=M.clearcoat>0,Sn=M.iridescence>0,j=M.sheen>0,N=M.transmission>0,se=pt&&!!M.anisotropyMap,Te=Vt&&!!M.clearcoatMap,Ee=Vt&&!!M.clearcoatNormalMap,we=Vt&&!!M.clearcoatRoughnessMap,Ye=Sn&&!!M.iridescenceMap,Ie=Sn&&!!M.iridescenceThicknessMap,le=j&&!!M.sheenColorMap,ot=j&&!!M.sheenRoughnessMap,ut=!!M.specularMap,ft=!!M.specularColorMap,Ke=!!M.specularIntensityMap,Je=N&&!!M.transmissionMap,Ft=N&&!!M.thicknessMap,rn=!!M.gradientMap,J=!!M.alphaMap,De=M.alphaTest>0,ue=!!M.alphaHash,be=!!M.extensions,ze=!!$.attributes.uv1,tn=!!$.attributes.uv2,bn=!!$.attributes.uv3;let ri=Fo;return M.toneMapped&&(xe===null||xe.isXRRenderTarget===!0)&&(ri=t.toneMapping),{isWebGL2:c,shaderID:U,shaderType:M.type,shaderName:M.name,vertexShader:ce,fragmentShader:ae,defines:M.defines,customVertexShaderID:ge,customFragmentShaderID:ye,isRawShaderMaterial:M.isRawShaderMaterial===!0,glslVersion:M.glslVersion,precision:m,instancing:Le,instancingColor:Le&&O.instanceColor!==null,supportsVertexTextures:f,outputColorSpace:xe===null?t.outputColorSpace:xe.isXRRenderTarget===!0?xe.texture.colorSpace:va,map:$e,matcap:Qe,envMap:Be,envMapMode:Be&&Y.mapping,envMapCubeUVHeight:B,aoMap:X,lightMap:qe,bumpMap:ve,normalMap:Se,displacementMap:f&&_e,emissiveMap:it,normalMapObjectSpace:Se&&M.normalMapType===DU,normalMapTangentSpace:Se&&M.normalMapType===Jc,metalnessMap:Ge,roughnessMap:He,anisotropy:pt,anisotropyMap:se,clearcoat:Vt,clearcoatMap:Te,clearcoatNormalMap:Ee,clearcoatRoughnessMap:we,iridescence:Sn,iridescenceMap:Ye,iridescenceThicknessMap:Ie,sheen:j,sheenColorMap:le,sheenRoughnessMap:ot,specularMap:ut,specularColorMap:ft,specularIntensityMap:Ke,transmission:N,transmissionMap:Je,thicknessMap:Ft,gradientMap:rn,opaque:M.transparent===!1&&M.blending===sl,alphaMap:J,alphaTest:De,alphaHash:ue,combine:M.combine,mapUv:$e&&v(M.map.channel),aoMapUv:X&&v(M.aoMap.channel),lightMapUv:qe&&v(M.lightMap.channel),bumpMapUv:ve&&v(M.bumpMap.channel),normalMapUv:Se&&v(M.normalMap.channel),displacementMapUv:_e&&v(M.displacementMap.channel),emissiveMapUv:it&&v(M.emissiveMap.channel),metalnessMapUv:Ge&&v(M.metalnessMap.channel),roughnessMapUv:He&&v(M.roughnessMap.channel),anisotropyMapUv:se&&v(M.anisotropyMap.channel),clearcoatMapUv:Te&&v(M.clearcoatMap.channel),clearcoatNormalMapUv:Ee&&v(M.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:we&&v(M.clearcoatRoughnessMap.channel),iridescenceMapUv:Ye&&v(M.iridescenceMap.channel),iridescenceThicknessMapUv:Ie&&v(M.iridescenceThicknessMap.channel),sheenColorMapUv:le&&v(M.sheenColorMap.channel),sheenRoughnessMapUv:ot&&v(M.sheenRoughnessMap.channel),specularMapUv:ut&&v(M.specularMap.channel),specularColorMapUv:ft&&v(M.specularColorMap.channel),specularIntensityMapUv:Ke&&v(M.specularIntensityMap.channel),transmissionMapUv:Je&&v(M.transmissionMap.channel),thicknessMapUv:Ft&&v(M.thicknessMap.channel),alphaMapUv:J&&v(M.alphaMap.channel),vertexTangents:!!$.attributes.tangent&&(Se||pt),vertexColors:M.vertexColors,vertexAlphas:M.vertexColors===!0&&!!$.attributes.color&&$.attributes.color.itemSize===4,vertexUv1s:ze,vertexUv2s:tn,vertexUv3s:bn,pointsUvs:O.isPoints===!0&&!!$.attributes.uv&&($e||J),fog:!!W,useFog:M.fog===!0,fogExp2:W&&W.isFogExp2,flatShading:M.flatShading===!0,sizeAttenuation:M.sizeAttenuation===!0,logarithmicDepthBuffer:h,skinning:O.isSkinnedMesh===!0,morphTargets:$.morphAttributes.position!==void 0,morphNormals:$.morphAttributes.normal!==void 0,morphColors:$.morphAttributes.color!==void 0,morphTargetsCount:k,morphTextureStride:Q,numDirLights:b.directional.length,numPointLights:b.point.length,numSpotLights:b.spot.length,numSpotLightMaps:b.spotLightMap.length,numRectAreaLights:b.rectArea.length,numHemiLights:b.hemi.length,numDirLightShadows:b.directionalShadowMap.length,numPointLightShadows:b.pointShadowMap.length,numSpotLightShadows:b.spotShadowMap.length,numSpotLightShadowsWithMaps:b.numSpotLightShadowsWithMaps,numClippingPlanes:o.numPlanes,numClipIntersection:o.numIntersection,dithering:M.dithering,shadowMapEnabled:t.shadowMap.enabled&&D.length>0,shadowMapType:t.shadowMap.type,toneMapping:ri,useLegacyLights:t._useLegacyLights,premultipliedAlpha:M.premultipliedAlpha,doubleSided:M.side===ts,flipSided:M.side===Fi,useDepthPacking:M.depthPacking>=0,depthPacking:M.depthPacking||0,index0AttributeName:M.index0AttributeName,extensionDerivatives:be&&M.extensions.derivatives===!0,extensionFragDepth:be&&M.extensions.fragDepth===!0,extensionDrawBuffers:be&&M.extensions.drawBuffers===!0,extensionShaderTextureLOD:be&&M.extensions.shaderTextureLOD===!0,rendererExtensionFragDepth:c||i.has("EXT_frag_depth"),rendererExtensionDrawBuffers:c||i.has("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:c||i.has("EXT_shader_texture_lod"),customProgramCacheKey:M.customProgramCacheKey()}}function A(M){const b=[];if(M.shaderID?b.push(M.shaderID):(b.push(M.customVertexShaderID),b.push(M.customFragmentShaderID)),M.defines!==void 0)for(const D in M.defines)b.push(D),b.push(M.defines[D]);return M.isRawShaderMaterial===!1&&(y(b,M),q(b,M),b.push(t.outputColorSpace)),b.push(M.customProgramCacheKey),b.join()}function y(M,b){M.push(b.precision),M.push(b.outputColorSpace),M.push(b.envMapMode),M.push(b.envMapCubeUVHeight),M.push(b.mapUv),M.push(b.alphaMapUv),M.push(b.lightMapUv),M.push(b.aoMapUv),M.push(b.bumpMapUv),M.push(b.normalMapUv),M.push(b.displacementMapUv),M.push(b.emissiveMapUv),M.push(b.metalnessMapUv),M.push(b.roughnessMapUv),M.push(b.anisotropyMapUv),M.push(b.clearcoatMapUv),M.push(b.clearcoatNormalMapUv),M.push(b.clearcoatRoughnessMapUv),M.push(b.iridescenceMapUv),M.push(b.iridescenceThicknessMapUv),M.push(b.sheenColorMapUv),M.push(b.sheenRoughnessMapUv),M.push(b.specularMapUv),M.push(b.specularColorMapUv),M.push(b.specularIntensityMapUv),M.push(b.transmissionMapUv),M.push(b.thicknessMapUv),M.push(b.combine),M.push(b.fogExp2),M.push(b.sizeAttenuation),M.push(b.morphTargetsCount),M.push(b.morphAttributeCount),M.push(b.numDirLights),M.push(b.numPointLights),M.push(b.numSpotLights),M.push(b.numSpotLightMaps),M.push(b.numHemiLights),M.push(b.numRectAreaLights),M.push(b.numDirLightShadows),M.push(b.numPointLightShadows),M.push(b.numSpotLightShadows),M.push(b.numSpotLightShadowsWithMaps),M.push(b.shadowMapType),M.push(b.toneMapping),M.push(b.numClippingPlanes),M.push(b.numClipIntersection),M.push(b.depthPacking)}function q(M,b){a.disableAll(),b.isWebGL2&&a.enable(0),b.supportsVertexTextures&&a.enable(1),b.instancing&&a.enable(2),b.instancingColor&&a.enable(3),b.matcap&&a.enable(4),b.envMap&&a.enable(5),b.normalMapObjectSpace&&a.enable(6),b.normalMapTangentSpace&&a.enable(7),b.clearcoat&&a.enable(8),b.iridescence&&a.enable(9),b.alphaTest&&a.enable(10),b.vertexColors&&a.enable(11),b.vertexAlphas&&a.enable(12),b.vertexUv1s&&a.enable(13),b.vertexUv2s&&a.enable(14),b.vertexUv3s&&a.enable(15),b.vertexTangents&&a.enable(16),b.anisotropy&&a.enable(17),M.push(a.mask),a.disableAll(),b.fog&&a.enable(0),b.useFog&&a.enable(1),b.flatShading&&a.enable(2),b.logarithmicDepthBuffer&&a.enable(3),b.skinning&&a.enable(4),b.morphTargets&&a.enable(5),b.morphNormals&&a.enable(6),b.morphColors&&a.enable(7),b.premultipliedAlpha&&a.enable(8),b.shadowMapEnabled&&a.enable(9),b.useLegacyLights&&a.enable(10),b.doubleSided&&a.enable(11),b.flipSided&&a.enable(12),b.useDepthPacking&&a.enable(13),b.dithering&&a.enable(14),b.transmission&&a.enable(15),b.sheen&&a.enable(16),b.opaque&&a.enable(17),b.pointsUvs&&a.enable(18),M.push(a.mask)}function E(M){const b=g[M.type];let D;if(b){const z=ca[b];D=Kn.clone(z.uniforms)}else D=M.uniforms;return D}function T(M,b){let D;for(let z=0,O=u.length;z<O;z++){const W=u[z];if(W.cacheKey===b){D=W,++D.usedTimes;break}}return D===void 0&&(D=new hse(t,b,M,s),u.push(D)),D}function C(M){if(--M.usedTimes===0){const b=u.indexOf(M);u[b]=u[u.length-1],u.pop(),M.destroy()}}function I(M){l.remove(M)}function R(){l.dispose()}return{getParameters:_,getProgramCacheKey:A,getUniforms:E,acquireProgram:T,releaseProgram:C,releaseShaderCache:I,programs:u,dispose:R}}function gse(){let t=new WeakMap;function e(s){let o=t.get(s);return o===void 0&&(o={},t.set(s,o)),o}function n(s){t.delete(s)}function i(s,o,a){t.get(s)[o]=a}function r(){t=new WeakMap}return{get:e,remove:n,update:i,dispose:r}}function Ase(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function sP(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function oP(){const t=[];let e=0;const n=[],i=[],r=[];function s(){e=0,n.length=0,i.length=0,r.length=0}function o(h,f,m,g,v,_){let A=t[e];return A===void 0?(A={id:h.id,object:h,geometry:f,material:m,groupOrder:g,renderOrder:h.renderOrder,z:v,group:_},t[e]=A):(A.id=h.id,A.object=h,A.geometry=f,A.material=m,A.groupOrder=g,A.renderOrder=h.renderOrder,A.z=v,A.group=_),e++,A}function a(h,f,m,g,v,_){const A=o(h,f,m,g,v,_);m.transmission>0?i.push(A):m.transparent===!0?r.push(A):n.push(A)}function l(h,f,m,g,v,_){const A=o(h,f,m,g,v,_);m.transmission>0?i.unshift(A):m.transparent===!0?r.unshift(A):n.unshift(A)}function u(h,f){n.length>1&&n.sort(h||Ase),i.length>1&&i.sort(f||sP),r.length>1&&r.sort(f||sP)}function c(){for(let h=e,f=t.length;h<f;h++){const m=t[h];if(m.id===null)break;m.id=null,m.object=null,m.geometry=null,m.material=null,m.group=null}}return{opaque:n,transmissive:i,transparent:r,init:s,push:a,unshift:l,finish:c,sort:u}}function vse(){let t=new WeakMap;function e(i,r){const s=t.get(i);let o;return s===void 0?(o=new oP,t.set(i,[o])):r>=s.length?(o=new oP,s.push(o)):o=s[r],o}function n(){t=new WeakMap}return{get:e,dispose:n}}function yse(){const t={};return{get:function(e){if(t[e.id]!==void 0)return t[e.id];let n;switch(e.type){case"DirectionalLight":n={direction:new L,color:new Me};break;case"SpotLight":n={position:new L,direction:new L,color:new Me,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new L,color:new Me,distance:0,decay:0};break;case"HemisphereLight":n={direction:new L,skyColor:new Me,groundColor:new Me};break;case"RectAreaLight":n={color:new Me,position:new L,halfWidth:new L,halfHeight:new L};break}return t[e.id]=n,n}}}function qse(){const t={};return{get:function(e){if(t[e.id]!==void 0)return t[e.id];let n;switch(e.type){case"DirectionalLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new oe};break;case"SpotLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new oe};break;case"PointLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new oe,shadowCameraNear:1,shadowCameraFar:1e3};break}return t[e.id]=n,n}}}let _se=0;function xse(t,e){return(e.castShadow?2:0)-(t.castShadow?2:0)+(e.map?1:0)-(t.map?1:0)}function Ese(t,e){const n=new yse,i=qse(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-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};for(let c=0;c<9;c++)r.probe.push(new L);const s=new L,o=new st,a=new st;function l(c,h){let f=0,m=0,g=0;for(let D=0;D<9;D++)r.probe[D].set(0,0,0);let v=0,_=0,A=0,y=0,q=0,E=0,T=0,C=0,I=0,R=0;c.sort(xse);const M=h===!0?Math.PI:1;for(let D=0,z=c.length;D<z;D++){const O=c[D],W=O.color,$=O.intensity,K=O.distance,Y=O.shadow&&O.shadow.map?O.shadow.map.texture:null;if(O.isAmbientLight)f+=W.r*$*M,m+=W.g*$*M,g+=W.b*$*M;else if(O.isLightProbe)for(let B=0;B<9;B++)r.probe[B].addScaledVector(O.sh.coefficients[B],$);else if(O.isDirectionalLight){const B=n.get(O);if(B.color.copy(O.color).multiplyScalar(O.intensity*M),O.castShadow){const U=O.shadow,F=i.get(O);F.shadowBias=U.bias,F.shadowNormalBias=U.normalBias,F.shadowRadius=U.radius,F.shadowMapSize=U.mapSize,r.directionalShadow[v]=F,r.directionalShadowMap[v]=Y,r.directionalShadowMatrix[v]=O.shadow.matrix,E++}r.directional[v]=B,v++}else if(O.isSpotLight){const B=n.get(O);B.position.setFromMatrixPosition(O.matrixWorld),B.color.copy(W).multiplyScalar($*M),B.distance=K,B.coneCos=Math.cos(O.angle),B.penumbraCos=Math.cos(O.angle*(1-O.penumbra)),B.decay=O.decay,r.spot[A]=B;const U=O.shadow;if(O.map&&(r.spotLightMap[I]=O.map,I++,U.updateMatrices(O),O.castShadow&&R++),r.spotLightMatrix[A]=U.matrix,O.castShadow){const F=i.get(O);F.shadowBias=U.bias,F.shadowNormalBias=U.normalBias,F.shadowRadius=U.radius,F.shadowMapSize=U.mapSize,r.spotShadow[A]=F,r.spotShadowMap[A]=Y,C++}A++}else if(O.isRectAreaLight){const B=n.get(O);B.color.copy(W).multiplyScalar($),B.halfWidth.set(O.width*.5,0,0),B.halfHeight.set(0,O.height*.5,0),r.rectArea[y]=B,y++}else if(O.isPointLight){const B=n.get(O);if(B.color.copy(O.color).multiplyScalar(O.intensity*M),B.distance=O.distance,B.decay=O.decay,O.castShadow){const U=O.shadow,F=i.get(O);F.shadowBias=U.bias,F.shadowNormalBias=U.normalBias,F.shadowRadius=U.radius,F.shadowMapSize=U.mapSize,F.shadowCameraNear=U.camera.near,F.shadowCameraFar=U.camera.far,r.pointShadow[_]=F,r.pointShadowMap[_]=Y,r.pointShadowMatrix[_]=O.shadow.matrix,T++}r.point[_]=B,_++}else if(O.isHemisphereLight){const B=n.get(O);B.skyColor.copy(O.color).multiplyScalar($*M),B.groundColor.copy(O.groundColor).multiplyScalar($*M),r.hemi[q]=B,q++}}y>0&&(e.isWebGL2||t.has("OES_texture_float_linear")===!0?(r.rectAreaLTC1=Ne.LTC_FLOAT_1,r.rectAreaLTC2=Ne.LTC_FLOAT_2):t.has("OES_texture_half_float_linear")===!0?(r.rectAreaLTC1=Ne.LTC_HALF_1,r.rectAreaLTC2=Ne.LTC_HALF_2):console.error("THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.")),r.ambient[0]=f,r.ambient[1]=m,r.ambient[2]=g;const b=r.hash;(b.directionalLength!==v||b.pointLength!==_||b.spotLength!==A||b.rectAreaLength!==y||b.hemiLength!==q||b.numDirectionalShadows!==E||b.numPointShadows!==T||b.numSpotShadows!==C||b.numSpotMaps!==I)&&(r.directional.length=v,r.spot.length=A,r.rectArea.length=y,r.point.length=_,r.hemi.length=q,r.directionalShadow.length=E,r.directionalShadowMap.length=E,r.pointShadow.length=T,r.pointShadowMap.length=T,r.spotShadow.length=C,r.spotShadowMap.length=C,r.directionalShadowMatrix.length=E,r.pointShadowMatrix.length=T,r.spotLightMatrix.length=C+I-R,r.spotLightMap.length=I,r.numSpotLightShadowsWithMaps=R,b.directionalLength=v,b.pointLength=_,b.spotLength=A,b.rectAreaLength=y,b.hemiLength=q,b.numDirectionalShadows=E,b.numPointShadows=T,b.numSpotShadows=C,b.numSpotMaps=I,r.version=_se++)}function u(c,h){let f=0,m=0,g=0,v=0,_=0;const A=h.matrixWorldInverse;for(let y=0,q=c.length;y<q;y++){const E=c[y];if(E.isDirectionalLight){const T=r.directional[f];T.direction.setFromMatrixPosition(E.matrixWorld),s.setFromMatrixPosition(E.target.matrixWorld),T.direction.sub(s),T.direction.transformDirection(A),f++}else if(E.isSpotLight){const T=r.spot[g];T.position.setFromMatrixPosition(E.matrixWorld),T.position.applyMatrix4(A),T.direction.setFromMatrixPosition(E.matrixWorld),s.setFromMatrixPosition(E.target.matrixWorld),T.direction.sub(s),T.direction.transformDirection(A),g++}else if(E.isRectAreaLight){const T=r.rectArea[v];T.position.setFromMatrixPosition(E.matrixWorld),T.position.applyMatrix4(A),a.identity(),o.copy(E.matrixWorld),o.premultiply(A),a.extractRotation(o),T.halfWidth.set(E.width*.5,0,0),T.halfHeight.set(0,E.height*.5,0),T.halfWidth.applyMatrix4(a),T.halfHeight.applyMatrix4(a),v++}else if(E.isPointLight){const T=r.point[m];T.position.setFromMatrixPosition(E.matrixWorld),T.position.applyMatrix4(A),m++}else if(E.isHemisphereLight){const T=r.hemi[_];T.direction.setFromMatrixPosition(E.matrixWorld),T.direction.transformDirection(A),_++}}}return{setup:l,setupView:u,state:r}}function aP(t,e){const n=new Ese(t,e),i=[],r=[];function s(){i.length=0,r.length=0}function o(h){i.push(h)}function a(h){r.push(h)}function l(h){n.setup(i,h)}function u(h){n.setupView(i,h)}return{init:s,state:{lightsArray:i,shadowsArray:r,lights:n},setupLights:l,setupLightsView:u,pushLight:o,pushShadow:a}}function Sse(t,e){let n=new WeakMap;function i(s,o=0){const a=n.get(s);let l;return a===void 0?(l=new aP(t,e),n.set(s,[l])):o>=a.length?(l=new aP(t,e),a.push(l)):l=a[o],l}function r(){n=new WeakMap}return{get:i,dispose:r}}class k4 extends Ji{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=Aa,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}}class $T extends Ji{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}}const Tse=`void main() { 3584 gl_Position = vec4( position, 1.0 ); 3585}`,Cse=`uniform sampler2D shadow_pass; 3586uniform vec2 resolution; 3587uniform float radius; 3588#include <packing> 3589void main() { 3590 const float samples = float( VSM_SAMPLES ); 3591 float mean = 0.0; 3592 float squared_mean = 0.0; 3593 float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 ); 3594 float uvStart = samples <= 1.0 ? 0.0 : - 1.0; 3595 for ( float i = 0.0; i < samples; i ++ ) { 3596 float uvOffset = uvStart + i * uvStride; 3597 #ifdef HORIZONTAL_PASS 3598 vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) ); 3599 mean += distribution.x; 3600 squared_mean += distribution.y * distribution.y + distribution.x * distribution.x; 3601 #else 3602 float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) ); 3603 mean += depth; 3604 squared_mean += depth * depth; 3605 #endif 3606 } 3607 mean = mean / samples; 3608 squared_mean = squared_mean / samples; 3609 float std_dev = sqrt( squared_mean - mean * mean ); 3610 gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) ); 3611}`;function wse(t,e,n){let i=new X9;const r=new oe,s=new oe,o=new Zt,a=new k4({depthPacking:D4}),l=new $T,u={},c=n.maxTextureSize,h={[gl]:Fi,[Fi]:gl,[ts]:ts},f=new zt({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new oe},radius:{value:4}},vertexShader:Tse,fragmentShader:Cse}),m=f.clone();m.defines.HORIZONTAL_PASS=1;const g=new Bt;g.setAttribute("position",new pn(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const v=new yn(g,f),_=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=U9;let A=this.type;this.render=function(T,C,I){if(_.enabled===!1||_.autoUpdate===!1&&_.needsUpdate===!1||T.length===0)return;const R=t.getRenderTarget(),M=t.getActiveCubeFace(),b=t.getActiveMipmapLevel(),D=t.state;D.setBlending(bt),D.buffers.color.setClear(1,1,1,1),D.buffers.depth.setTest(!0),D.setScissorTest(!1);const z=A!==aa&&this.type===aa,O=A===aa&&this.type!==aa;for(let W=0,$=T.length;W<$;W++){const K=T[W],Y=K.shadow;if(Y===void 0){console.warn("THREE.WebGLShadowMap:",K,"has no shadow.");continue}if(Y.autoUpdate===!1&&Y.needsUpdate===!1)continue;r.copy(Y.mapSize);const B=Y.getFrameExtents();if(r.multiply(B),s.copy(Y.mapSize),(r.x>c||r.y>c)&&(r.x>c&&(s.x=Math.floor(c/B.x),r.x=s.x*B.x,Y.mapSize.x=s.x),r.y>c&&(s.y=Math.floor(c/B.y),r.y=s.y*B.y,Y.mapSize.y=s.y)),Y.map===null||z===!0||O===!0){const F=this.type!==aa?{minFilter:At,magFilter:At}:{};Y.map!==null&&Y.map.dispose(),Y.map=new Yt(r.x,r.y,F),Y.map.texture.name=K.name+".shadowMap",Y.camera.updateProjectionMatrix()}t.setRenderTarget(Y.map),t.clear();const U=Y.getViewportCount();for(let F=0;F<U;F++){const k=Y.getViewport(F);o.set(s.x*k.x,s.y*k.y,s.x*k.z,s.y*k.w),D.viewport(o),Y.updateMatrices(K,F),i=Y.getFrustum(),E(C,I,Y.camera,K,this.type)}Y.isPointLightShadow!==!0&&this.type===aa&&y(Y,I),Y.needsUpdate=!1}A=this.type,_.needsUpdate=!1,t.setRenderTarget(R,M,b)};function y(T,C){const I=e.update(v);f.defines.VSM_SAMPLES!==T.blurSamples&&(f.defines.VSM_SAMPLES=T.blurSamples,m.defines.VSM_SAMPLES=T.blurSamples,f.needsUpdate=!0,m.needsUpdate=!0),T.mapPass===null&&(T.mapPass=new Yt(r.x,r.y)),f.uniforms.shadow_pass.value=T.map.texture,f.uniforms.resolution.value=T.mapSize,f.uniforms.radius.value=T.radius,t.setRenderTarget(T.mapPass),t.clear(),t.renderBufferDirect(C,null,I,f,v,null),m.uniforms.shadow_pass.value=T.mapPass.texture,m.uniforms.resolution.value=T.mapSize,m.uniforms.radius.value=T.radius,t.setRenderTarget(T.map),t.clear(),t.renderBufferDirect(C,null,I,m,v,null)}function q(T,C,I,R){let M=null;const b=I.isPointLight===!0?T.customDistanceMaterial:T.customDepthMaterial;if(b!==void 0)M=b;else if(M=I.isPointLight===!0?l:a,t.localClippingEnabled&&C.clipShadows===!0&&Array.isArray(C.clippingPlanes)&&C.clippingPlanes.length!==0||C.displacementMap&&C.displacementScale!==0||C.alphaMap&&C.alphaTest>0||C.map&&C.alphaTest>0){const D=M.uuid,z=C.uuid;let O=u[D];O===void 0&&(O={},u[D]=O);let W=O[z];W===void 0&&(W=M.clone(),O[z]=W),M=W}if(M.visible=C.visible,M.wireframe=C.wireframe,R===aa?M.side=C.shadowSide!==null?C.shadowSide:C.side:M.side=C.shadowSide!==null?C.shadowSide:h[C.side],M.alphaMap=C.alphaMap,M.alphaTest=C.alphaTest,M.map=C.map,M.clipShadows=C.clipShadows,M.clippingPlanes=C.clippingPlanes,M.clipIntersection=C.clipIntersection,M.displacementMap=C.displacementMap,M.displacementScale=C.displacementScale,M.displacementBias=C.displacementBias,M.wireframeLinewidth=C.wireframeLinewidth,M.linewidth=C.linewidth,I.isPointLight===!0&&M.isMeshDistanceMaterial===!0){const D=t.properties.get(M);D.light=I}return M}function E(T,C,I,R,M){if(T.visible===!1)return;if(T.layers.test(C.layers)&&(T.isMesh||T.isLine||T.isPoints)&&(T.castShadow||T.receiveShadow&&M===aa)&&(!T.frustumCulled||i.intersectsObject(T))){T.modelViewMatrix.multiplyMatrices(I.matrixWorldInverse,T.matrixWorld);const z=e.update(T),O=T.material;if(Array.isArray(O)){const W=z.groups;for(let $=0,K=W.length;$<K;$++){const Y=W[$],B=O[Y.materialIndex];if(B&&B.visible){const U=q(T,B,R,M);t.renderBufferDirect(I,null,z,U,T,Y)}}}else if(O.visible){const W=q(T,O,R,M);t.renderBufferDirect(I,null,z,W,T,null)}}const D=T.children;for(let z=0,O=D.length;z<O;z++)E(D[z],C,I,R,M)}}function Ise(t,e,n){const i=n.isWebGL2;function r(){let J=!1;const De=new Zt;let ue=null;const be=new Zt(0,0,0,0);return{setMask:function(ze){ue!==ze&&!J&&(t.colorMask(ze,ze,ze,ze),ue=ze)},setLocked:function(ze){J=ze},setClear:function(ze,tn,bn,ri,Ko){Ko===!0&&(ze*=ri,tn*=ri,bn*=ri),De.set(ze,tn,bn,ri),be.equals(De)===!1&&(t.clearColor(ze,tn,bn,ri),be.copy(De))},reset:function(){J=!1,ue=null,be.set(-1,0,0,0)}}}function s(){let J=!1,De=null,ue=null,be=null;return{setTest:function(ze){ze?xe(t.DEPTH_TEST):Le(t.DEPTH_TEST)},setMask:function(ze){De!==ze&&!J&&(t.depthMask(ze),De=ze)},setFunc:function(ze){if(ue!==ze){switch(ze){case wT:t.depthFunc(t.NEVER);break;case IT:t.depthFunc(t.ALWAYS);break;case gm:t.depthFunc(t.LESS);break;case qd:t.depthFunc(t.LEQUAL);break;case _d:t.depthFunc(t.EQUAL);break;case MT:t.depthFunc(t.GEQUAL);break;case RT:t.depthFunc(t.GREATER);break;case G9:t.depthFunc(t.NOTEQUAL);break;default:t.depthFunc(t.LEQUAL)}ue=ze}},setLocked:function(ze){J=ze},setClear:function(ze){be!==ze&&(t.clearDepth(ze),be=ze)},reset:function(){J=!1,De=null,ue=null,be=null}}}function o(){let J=!1,De=null,ue=null,be=null,ze=null,tn=null,bn=null,ri=null,Ko=null;return{setTest:function(Tn){J||(Tn?xe(t.STENCIL_TEST):Le(t.STENCIL_TEST))},setMask:function(Tn){De!==Tn&&!J&&(t.stencilMask(Tn),De=Tn)},setFunc:function(Tn,Ns,cr){(ue!==Tn||be!==Ns||ze!==cr)&&(t.stencilFunc(Tn,Ns,cr),ue=Tn,be=Ns,ze=cr)},setOp:function(Tn,Ns,cr){(tn!==Tn||bn!==Ns||ri!==cr)&&(t.stencilOp(Tn,Ns,cr),tn=Tn,bn=Ns,ri=cr)},setLocked:function(Tn){J=Tn},setClear:function(Tn){Ko!==Tn&&(t.clearStencil(Tn),Ko=Tn)},reset:function(){J=!1,De=null,ue=null,be=null,ze=null,tn=null,bn=null,ri=null,Ko=null}}}const a=new r,l=new s,u=new o,c=new WeakMap,h=new WeakMap;let f={},m={},g=new WeakMap,v=[],_=null,A=!1,y=null,q=null,E=null,T=null,C=null,I=null,R=null,M=!1,b=null,D=null,z=null,O=null,W=null;const $=t.getParameter(t.MAX_COMBINED_TEXTURE_IMAGE_UNITS);let K=!1,Y=0;const B=t.getParameter(t.VERSION);B.indexOf("WebGL")!==-1?(Y=parseFloat(/^WebGL (\d)/.exec(B)[1]),K=Y>=1):B.indexOf("OpenGL ES")!==-1&&(Y=parseFloat(/^OpenGL ES (\d)/.exec(B)[1]),K=Y>=2);let U=null,F={};const k=t.getParameter(t.SCISSOR_BOX),Q=t.getParameter(t.VIEWPORT),ce=new Zt().fromArray(k),ae=new Zt().fromArray(Q);function ge(J,De,ue,be){const ze=new Uint8Array(4),tn=t.createTexture();t.bindTexture(J,tn),t.texParameteri(J,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(J,t.TEXTURE_MAG_FILTER,t.NEAREST);for(let bn=0;bn<ue;bn++)i&&(J===t.TEXTURE_3D||J===t.TEXTURE_2D_ARRAY)?t.texImage3D(De,0,t.RGBA,1,1,be,0,t.RGBA,t.UNSIGNED_BYTE,ze):t.texImage2D(De+bn,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,ze);return tn}const ye={};ye[t.TEXTURE_2D]=ge(t.TEXTURE_2D,t.TEXTURE_2D,1),ye[t.TEXTURE_CUBE_MAP]=ge(t.TEXTURE_CUBE_MAP,t.TEXTURE_CUBE_MAP_POSITIVE_X,6),i&&(ye[t.TEXTURE_2D_ARRAY]=ge(t.TEXTURE_2D_ARRAY,t.TEXTURE_2D_ARRAY,1,1),ye[t.TEXTURE_3D]=ge(t.TEXTURE_3D,t.TEXTURE_3D,1,1)),a.setClear(0,0,0,1),l.setClear(1),u.setClear(0),xe(t.DEPTH_TEST),l.setFunc(qd),_e(!1),it(cx),xe(t.CULL_FACE),ve(bt);function xe(J){f[J]!==!0&&(t.enable(J),f[J]=!0)}function Le(J){f[J]!==!1&&(t.disable(J),f[J]=!1)}function $e(J,De){return m[J]!==De?(t.bindFramebuffer(J,De),m[J]=De,i&&(J===t.DRAW_FRAMEBUFFER&&(m[t.FRAMEBUFFER]=De),J===t.FRAMEBUFFER&&(m[t.DRAW_FRAMEBUFFER]=De)),!0):!1}function Qe(J,De){let ue=v,be=!1;if(J)if(ue=g.get(De),ue===void 0&&(ue=[],g.set(De,ue)),J.isWebGLMultipleRenderTargets){const ze=J.texture;if(ue.length!==ze.length||ue[0]!==t.COLOR_ATTACHMENT0){for(let tn=0,bn=ze.length;tn<bn;tn++)ue[tn]=t.COLOR_ATTACHMENT0+tn;ue.length=ze.length,be=!0}}else ue[0]!==t.COLOR_ATTACHMENT0&&(ue[0]=t.COLOR_ATTACHMENT0,be=!0);else ue[0]!==t.BACK&&(ue[0]=t.BACK,be=!0);be&&(n.isWebGL2?t.drawBuffers(ue):e.get("WEBGL_draw_buffers").drawBuffersWEBGL(ue))}function Be(J){return _!==J?(t.useProgram(J),_=J,!0):!1}const X={[Ws]:t.FUNC_ADD,[fU]:t.FUNC_SUBTRACT,[dU]:t.FUNC_REVERSE_SUBTRACT};if(i)X[dx]=t.MIN,X[px]=t.MAX;else{const J=e.get("EXT_blend_minmax");J!==null&&(X[dx]=J.MIN_EXT,X[px]=J.MAX_EXT)}const qe={[j0]:t.ZERO,[pU]:t.ONE,[mU]:t.SRC_COLOR,[vd]:t.SRC_ALPHA,[yU]:t.SRC_ALPHA_SATURATE,[V9]:t.DST_COLOR,[z9]:t.DST_ALPHA,[gU]:t.ONE_MINUS_SRC_COLOR,[yd]:t.ONE_MINUS_SRC_ALPHA,[vU]:t.ONE_MINUS_DST_COLOR,[AU]:t.ONE_MINUS_DST_ALPHA};function ve(J,De,ue,be,ze,tn,bn,ri){if(J===bt){A===!0&&(Le(t.BLEND),A=!1);return}if(A===!1&&(xe(t.BLEND),A=!0),J!==Ad){if(J!==y||ri!==M){if((q!==Ws||C!==Ws)&&(t.blendEquation(t.FUNC_ADD),q=Ws,C=Ws),ri)switch(J){case sl:t.blendFuncSeparate(t.ONE,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case gd:t.blendFunc(t.ONE,t.ONE);break;case hx:t.blendFuncSeparate(t.ZERO,t.ONE_MINUS_SRC_COLOR,t.ZERO,t.ONE);break;case fx:t.blendFuncSeparate(t.ZERO,t.SRC_COLOR,t.ZERO,t.SRC_ALPHA);break;default:console.error("THREE.WebGLState: Invalid blending: ",J);break}else switch(J){case sl:t.blendFuncSeparate(t.SRC_ALPHA,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA);break;case gd:t.blendFunc(t.SRC_ALPHA,t.ONE);break;case hx:t.blendFuncSeparate(t.ZERO,t.ONE_MINUS_SRC_COLOR,t.ZERO,t.ONE);break;case fx:t.blendFunc(t.ZERO,t.SRC_COLOR);break;default:console.error("THREE.WebGLState: Invalid blending: ",J);break}E=null,T=null,I=null,R=null,y=J,M=ri}return}ze=ze||De,tn=tn||ue,bn=bn||be,(De!==q||ze!==C)&&(t.blendEquationSeparate(X[De],X[ze]),q=De,C=ze),(ue!==E||be!==T||tn!==I||bn!==R)&&(t.blendFuncSeparate(qe[ue],qe[be],qe[tn],qe[bn]),E=ue,T=be,I=tn,R=bn),y=J,M=!1}function Se(J,De){J.side===ts?Le(t.CULL_FACE):xe(t.CULL_FACE);let ue=J.side===Fi;De&&(ue=!ue),_e(ue),J.blending===sl&&J.transparent===!1?ve(bt):ve(J.blending,J.blendEquation,J.blendSrc,J.blendDst,J.blendEquationAlpha,J.blendSrcAlpha,J.blendDstAlpha,J.premultipliedAlpha),l.setFunc(J.depthFunc),l.setTest(J.depthTest),l.setMask(J.depthWrite),a.setMask(J.colorWrite);const be=J.stencilWrite;u.setTest(be),be&&(u.setMask(J.stencilWriteMask),u.setFunc(J.stencilFunc,J.stencilRef,J.stencilFuncMask),u.setOp(J.stencilFail,J.stencilZFail,J.stencilZPass)),He(J.polygonOffset,J.polygonOffsetFactor,J.polygonOffsetUnits),J.alphaToCoverage===!0?xe(t.SAMPLE_ALPHA_TO_COVERAGE):Le(t.SAMPLE_ALPHA_TO_COVERAGE)}function _e(J){b!==J&&(J?t.frontFace(t.CW):t.frontFace(t.CCW),b=J)}function it(J){J!==uU?(xe(t.CULL_FACE),J!==D&&(J===cx?t.cullFace(t.BACK):J===cU?t.cullFace(t.FRONT):t.cullFace(t.FRONT_AND_BACK))):Le(t.CULL_FACE),D=J}function Ge(J){J!==z&&(K&&t.lineWidth(J),z=J)}function He(J,De,ue){J?(xe(t.POLYGON_OFFSET_FILL),(O!==De||W!==ue)&&(t.polygonOffset(De,ue),O=De,W=ue)):Le(t.POLYGON_OFFSET_FILL)}function pt(J){J?xe(t.SCISSOR_TEST):Le(t.SCISSOR_TEST)}function Vt(J){J===void 0&&(J=t.TEXTURE0+$-1),U!==J&&(t.activeTexture(J),U=J)}function Sn(J,De,ue){ue===void 0&&(U===null?ue=t.TEXTURE0+$-1:ue=U);let be=F[ue];be===void 0&&(be={type:void 0,texture:void 0},F[ue]=be),(be.type!==J||be.texture!==De)&&(U!==ue&&(t.activeTexture(ue),U=ue),t.bindTexture(J,De||ye[J]),be.type=J,be.texture=De)}function j(){const J=F[U];J!==void 0&&J.type!==void 0&&(t.bindTexture(J.type,null),J.type=void 0,J.texture=void 0)}function N(){try{t.compressedTexImage2D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function se(){try{t.compressedTexImage3D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function Te(){try{t.texSubImage2D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function Ee(){try{t.texSubImage3D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function we(){try{t.compressedTexSubImage2D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function Ye(){try{t.compressedTexSubImage3D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function Ie(){try{t.texStorage2D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function le(){try{t.texStorage3D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function ot(){try{t.texImage2D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function ut(){try{t.texImage3D.apply(t,arguments)}catch(J){console.error("THREE.WebGLState:",J)}}function ft(J){ce.equals(J)===!1&&(t.scissor(J.x,J.y,J.z,J.w),ce.copy(J))}function Ke(J){ae.equals(J)===!1&&(t.viewport(J.x,J.y,J.z,J.w),ae.copy(J))}function Je(J,De){let ue=h.get(De);ue===void 0&&(ue=new WeakMap,h.set(De,ue));let be=ue.get(J);be===void 0&&(be=t.getUniformBlockIndex(De,J.name),ue.set(J,be))}function Ft(J,De){const be=h.get(De).get(J);c.get(De)!==be&&(t.uniformBlockBinding(De,be,J.__bindingPointIndex),c.set(De,be))}function rn(){t.disable(t.BLEND),t.disable(t.CULL_FACE),t.disable(t.DEPTH_TEST),t.disable(t.POLYGON_OFFSET_FILL),t.disable(t.SCISSOR_TEST),t.disable(t.STENCIL_TEST),t.disable(t.SAMPLE_ALPHA_TO_COVERAGE),t.blendEquation(t.FUNC_ADD),t.blendFunc(t.ONE,t.ZERO),t.blendFuncSeparate(t.ONE,t.ZERO,t.ONE,t.ZERO),t.colorMask(!0,!0,
3611!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(t.LESS),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(t.ALWAYS,0,4294967295),t.stencilOp(t.KEEP,t.KEEP,t.KEEP),t.clearStencil(0),t.cullFace(t.BACK),t.frontFace(t.CCW),t.polygonOffset(0,0),t.activeTexture(t.TEXTURE0),t.bindFramebuffer(t.FRAMEBUFFER,null),i===!0&&(t.bindFramebuffer(t.DRAW_FRAMEBUFFER,null),t.bindFramebuffer(t.READ_FRAMEBUFFER,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),f={},U=null,F={},m={},g=new WeakMap,v=[],_=null,A=!1,y=null,q=null,E=null,T=null,C=null,I=null,R=null,M=!1,b=null,D=null,z=null,O=null,W=null,ce.set(0,0,t.canvas.width,t.canvas.height),ae.set(0,0,t.canvas.width,t.canvas.height),a.reset(),l.reset(),u.reset()}return{buffers:{color:a,depth:l,stencil:u},enable:xe,disable:Le,bindFramebuffer:$e,drawBuffers:Qe,useProgram:Be,setBlending:ve,setMaterial:Se,setFlipSided:_e,setCullFace:it,setLineWidth:Ge,setPolygonOffset:He,setScissorTest:pt,activeTexture:Vt,bindTexture:Sn,unbindTexture:j,compressedTexImage2D:N,compressedTexImage3D:se,texImage2D:ot,texImage3D:ut,updateUBOMapping:Je,uniformBlockBinding:Ft,texStorage2D:Ie,texStorage3D:le,texSubImage2D:Te,texSubImage3D:Ee,compressedTexSubImage2D:we,compressedTexSubImage3D:Ye,scissor:ft,viewport:Ke,reset:rn}}function Mse(t,e,n,i,r,s,o){const a=r.isWebGL2,l=r.maxTextures,u=r.maxCubemapSize,c=r.maxTextureSize,h=r.maxSamples,f=e.has("WEBGL_multisampled_render_to_texture")?e.get("WEBGL_multisampled_render_to_texture"):null,m=typeof navigator>"u"?!1:/OculusBrowser/g.test(navigator.userAgent),g=new WeakMap;let v;const _=new WeakMap;let A=!1;try{A=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")!==null}catch{}function y(j,N){return A?new OffscreenCanvas(j,N):Ld("canvas")}function q(j,N,se,Te){let Ee=1;if((j.width>Te||j.height>Te)&&(Ee=Te/Math.max(j.width,j.height)),Ee<1||N===!0)if(typeof HTMLImageElement<"u"&&j instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&j instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&j instanceof ImageBitmap){const we=N?ym:Math.floor,Ye=we(Ee*j.width),Ie=we(Ee*j.height);v===void 0&&(v=y(Ye,Ie));const le=se?y(Ye,Ie):v;return le.width=Ye,le.height=Ie,le.getContext("2d").drawImage(j,0,0,Ye,Ie),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+j.width+"x"+j.height+") to ("+Ye+"x"+Ie+")."),le}else return"data"in j&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+j.width+"x"+j.height+")."),j;return j}function E(j){return Dx(j.width)&&Dx(j.height)}function T(j){return a?!1:j.wrapS!==pi||j.wrapT!==pi||j.minFilter!==At&&j.minFilter!==_n}function C(j,N){return j.generateMipmaps&&N&&j.minFilter!==At&&j.minFilter!==_n}function I(j){t.generateMipmap(j)}function R(j,N,se,Te,Ee=!1){if(a===!1)return N;if(j!==null){if(t[j]!==void 0)return t[j];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+j+"'")}let we=N;return N===t.RED&&(se===t.FLOAT&&(we=t.R32F),se===t.HALF_FLOAT&&(we=t.R16F),se===t.UNSIGNED_BYTE&&(we=t.R8)),N===t.RED_INTEGER&&(se===t.UNSIGNED_BYTE&&(we=t.R8UI),se===t.UNSIGNED_SHORT&&(we=t.R16UI),se===t.UNSIGNED_INT&&(we=t.R32UI),se===t.BYTE&&(we=t.R8I),se===t.SHORT&&(we=t.R16I),se===t.INT&&(we=t.R32I)),N===t.RG&&(se===t.FLOAT&&(we=t.RG32F),se===t.HALF_FLOAT&&(we=t.RG16F),se===t.UNSIGNED_BYTE&&(we=t.RG8)),N===t.RGBA&&(se===t.FLOAT&&(we=t.RGBA32F),se===t.HALF_FLOAT&&(we=t.RGBA16F),se===t.UNSIGNED_BYTE&&(we=Te===Ot&&Ee===!1?t.SRGB8_ALPHA8:t.RGBA8),se===t.UNSIGNED_SHORT_4_4_4_4&&(we=t.RGBA4),se===t.UNSIGNED_SHORT_5_5_5_1&&(we=t.RGB5_A1)),(we===t.R16F||we===t.R32F||we===t.RG16F||we===t.RG32F||we===t.RGBA16F||we===t.RGBA32F)&&e.get("EXT_color_buffer_float"),we}function M(j,N,se){return C(j,se)===!0||j.isFramebufferTexture&&j.minFilter!==At&&j.minFilter!==_n?Math.log2(Math.max(N.width,N.height))+1:j.mipmaps!==void 0&&j.mipmaps.length>0?j.mipmaps.length:j.isCompressedTexture&&Array.isArray(j.image)?N.mipmaps.length:1}function b(j){return j===At||j===Am||j===w5?t.NEAREST:t.LINEAR}function D(j){const N=j.target;N.removeEventListener("dispose",D),O(N),N.isVideoTexture&&g.delete(N)}function z(j){const N=j.target;N.removeEventListener("dispose",z),$(N)}function O(j){const N=i.get(j);if(N.__webglInit===void 0)return;const se=j.source,Te=_.get(se);if(Te){const Ee=Te[N.__cacheKey];Ee.usedTimes--,Ee.usedTimes===0&&W(j),Object.keys(Te).length===0&&_.delete(se)}i.remove(j)}function W(j){const N=i.get(j);t.deleteTexture(N.__webglTexture);const se=j.source,Te=_.get(se);
vendor: 1,151 bytes, line 3611
3611delete Te[N.__cacheKey],o.memory.textures--}function $(j){const N=j.texture,se=i.get(j),Te=i.get(N);if(Te.__webglTexture!==void 0&&(t.deleteTexture(Te.__webglTexture),o.memory.textures--),j.depthTexture&&j.depthTexture.dispose(),j.isWebGLCubeRenderTarget)for(let Ee=0;Ee<6;Ee++){if(Array.isArray(se.__webglFramebuffer[Ee]))for(let we=0;we<se.__webglFramebuffer[Ee].length;we++)t.deleteFramebuffer(se.__webglFramebuffer[Ee][we]);else t.deleteFramebuffer(se.__webglFramebuffer[Ee]);se.__webglDepthbuffer&&t.deleteRenderbuffer(se.__webglDepthbuffer[Ee])}else{if(Array.isArray(se.__webglFramebuffer))for(let Ee=0;Ee<se.__webglFramebuffer.length;Ee++)t.deleteFramebuffer(se.__webglFramebuffer[Ee]);else t.deleteFramebuffer(se.__webglFramebuffer);if(se.__webglDepthbuffer&&t.deleteRenderbuffer(se.__webglDepthbuffer),se.__webglMultisampledFramebuffer&&t.deleteFramebuffer(se.__webglMultisampledFramebuffer),se.__webglColorRenderbuffer)for(let Ee=0;Ee<se.__webglColorRenderbuffer.length;Ee++)se.__webglColorRenderbuffer[Ee]&&t.deleteRenderbuffer(se.__webglColorRenderbuffer[Ee]);se.__webglDepthRenderbuffer&&t.deleteRenderbuffer(se.__webglDepthRenderbuffer)}
3611if(j.isWebGLMultipleRenderTargets)for(let Ee=0,we=N.length;Ee<we;Ee++){const Ye=i.get(N[Ee]);Ye.__webglTexture&&(t.deleteTexture(Ye.__webglTexture),o.memory.textures--),i.remove(N[Ee])}i.remove(N),i.remove(j)}let K=0;function Y(){K=0}function B(){const j=K;return j>=l&&console.warn("THREE.WebGLTextures: Trying to use "+j+" texture units while this GPU supports only "+l),K+=1,j}function U(j){const N=[];return N.push(j.wrapS),N.push(j.wrapT),N.push(j.wrapR||0),N.push(j.magFilter),N.push(j.minFilter),N.push(j.anisotropy),N.push(j.internalFormat),N.push(j.format),N.push(j.type),N.push(j.generateMipmaps),N.push(j.premultiplyAlpha),N.push(j.flipY),N.push(j.unpackAlignment),N.push(j.colorSpace),N.join()}function F(j,N){const se=i.get(j);if(j.isVideoTexture&&Vt(j),j.isRenderTargetTexture===!1&&j.version>0&&se.__version!==j.version){const Te=j.image;if(Te===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else if(Te.complete===!1)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete");else{$e(se,j,N);return}}n.bindTexture(t.TEXTURE_2D,se.__webglTexture,t.TEXTURE0+N)}function k(j,N){const se=i.get(j);if(j.version>0&&se.__version!==j.version){$e(se,j,N);return}n.bindTexture(t.TEXTURE_2D_ARRAY,se.__webglTexture,t.TEXTURE0+N)}function Q(j,N){const se=i.get(j);if(j.version>0&&se.__version!==j.version){$e(se,j,N);return}n.bindTexture(t.TEXTURE_3D,se.__webglTexture,t.TEXTURE0+N)}function ce(j,N){const se=i.get(j);if(j.version>0&&se.__version!==j.version){Qe(se,j,N);return}n.bindTexture(t.TEXTURE_CUBE_MAP,se.__webglTexture,t.TEXTURE0+N)}const ae={[hu]:t.REPEAT,[pi]:t.CLAMP_TO_EDGE,[Sd]:t.MIRRORED_REPEAT},ge={[At]:t.NEAREST,[Am]:t.NEAREST_MIPMAP_NEAREST,[w5]:t.NEAREST_MIPMAP_LINEAR,[_n]:t.LINEAR,[PT]:t.LINEAR_MIPMAP_NEAREST,[Al]:t.LINEAR_MIPMAP_LINEAR},ye={[NU]:t.NEVER,[GU]:t.ALWAYS,[kU]:t.LESS,[OU]:t.LEQUAL,[FU]:t.EQUAL,[VU]:t.GEQUAL,[UU]:t.GREATER,[zU]:t.NOTEQUAL};function xe(j,N,se){if(se?(t.texParameteri(j,t.TEXTURE_WRAP_S,ae[N.wrapS]),t.texParameteri(j,t.TEXTURE_WRAP_T,ae[N.wrapT]),(j===t.TEXTURE_3D||j===t.TEXTURE_2D_ARRAY)&&t.texParameteri(j,t.TEXTURE_WRAP_R,ae[N.wrapR]),t.texParameteri(j,t.TEXTURE_MAG_FILTER,ge[N.magFilter]),t.texParameteri(j,t.TEXTURE_MIN_FILTER,ge[N.minFilter])):(t.texParameteri(j,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(j,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),(j===t.TEXTURE_3D||j===t.TEXTURE_2D_ARRAY)&&t.texParameteri(j,t.TEXTURE_WRAP_R,t.CLAMP_TO_EDGE),(N.wrapS!==pi||N.wrapT!==pi)&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(j,t.TEXTURE_MAG_FILTER,b(N.magFilter)),t.texParameteri(j,t.TEXTURE_MIN_FILTER,b(N.minFilter)),N.minFilter!==At&&N.minFilter!==_n&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),N.compareFunction&&(t.texParameteri(j,t.TEXTURE_COMPARE_MODE,t.COMPARE_REF_TO_TEXTURE),t.texParameteri(j,t.TEXTURE_COMPARE_FUNC,ye[N.compareFunction])),e.has("EXT_texture_filter_anisotropic")===!0){const Te=e.get("EXT_texture_filter_anisotropic");if(N.magFilter===At||N.minFilter!==w5&&N.minFilter!==Al||N.type===kr&&e.has("OES_texture_float_linear")===!1||a===!1&&N.type===yi&&e.has("OES_texture_half_float_linear")===!1)return;(N.anisotropy>1||i.get(N).__currentAnisotropy)&&(t.texParameterf(j,Te.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(N.anisotropy,r.getMaxAnisotropy())),i.get(N).__currentAnisotropy=N.anisotropy)}}function Le(j,N){let se=!1;j.__webglInit===void 0&&(j.__webglInit=!0,N.addEventListener("dispose",D));const Te=N.source;let Ee=_.get(Te);Ee===void 0&&(Ee={},_.set(Te,Ee));const we=U(N);if(we!==j.__cacheKey){Ee[we]===void 0&&(Ee[we]={texture:t.createTexture(),usedTimes:0},o.memory.textures++,se=!0),Ee[we].usedTimes++;const Ye=Ee[j.__cacheKey];Ye!==void 0&&(Ee[j.__cacheKey].usedTimes--,Ye.usedTimes===0&&W(N)),j.__cacheKey=we,j.__webglTexture=Ee[we].texture}return se}function $e(j,N,se){let Te=t.TEXTURE_2D;(N.isDataArrayTexture||N.isCompressedArrayTexture)&&(Te=t.TEXTURE_2D_ARRAY),N.isData3DTexture&&(Te=t.TEXTURE_3D);const Ee=Le(j,N),we=N.source;n.bindTexture(Te,j.__webglTexture,t.TEXTURE0+se);const Ye=i.get(we);if(we.version!==Ye.__version||Ee===!0){n.activeTexture(t.TEXTURE0+se),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,N.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,N.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,N.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,t.NONE);const Ie=T(N)&&E(N.image)===!1;let le=q(N.image,Ie,!1,c);le=Sn(N,le);const ot=E(le)||a,ut=s.convert(N.format,N.colorSpace);let ft=s.convert(N.type),Ke=R(N.internalFormat,ut,ft,N.colorSpace);xe(Te,N,ot);let Je;const Ft=N.mipmaps,rn=a&&N.isVideoTexture!==!0,J=Ye.__version===void 0||Ee===!0,De=M(N,le,ot);
3611if(N.isDepthTexture)Ke=t.DEPTH_COMPONENT,a?N.type===kr?Ke=t.DEPTH_COMPONENT32F:N.type===Ka?Ke=t.DEPTH_COMPONENT24:N.type===ol?Ke=t.DEPTH24_STENCIL8:Ke=t.DEPTH_COMPONENT16:N.type===kr&&console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),N.format===xc&&Ke===t.DEPTH_COMPONENT&&N.type!==U1&&N.type!==Ka&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),N.type=Ka,ft=s.convert(N.type)),N.format===fu&&Ke===t.DEPTH_COMPONENT&&(Ke=t.DEPTH_STENCIL,N.type!==ol&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),N.type=ol,ft=s.convert(N.type))),J&&(rn?n.texStorage2D(t.TEXTURE_2D,1,Ke,le.width,le.height):n.texImage2D(t.TEXTURE_2D,0,Ke,le.width,le.height,0,ut,ft,null));else if(N.isDataTexture)if(Ft.length>0&&ot){rn&&J&&n.texStorage2D(t.TEXTURE_2D,De,Ke,Ft[0].width,Ft[0].height);for(let ue=0,be=Ft.length;ue<be;ue++)Je=Ft[ue],rn?n.texSubImage2D(t.TEXTURE_2D,ue,0,0,Je.width,Je.height,ut,ft,Je.data):n.texImage2D(t.TEXTURE_2D,ue,Ke,Je.width,Je.height,0,ut,ft,Je.data);N.generateMipmaps=!1}else rn?(J&&n.texStorage2D(t.TEXTURE_2D,De,Ke,le.width,le.height),n.texSubImage2D(t.TEXTURE_2D,0,0,0,le.width,le.height,ut,ft,le.data)):n.texImage2D(t.TEXTURE_2D,0,Ke,le.width,le.height,0,ut,ft,le.data);else if(N.isCompressedTexture)if(N.isCompressedArrayTexture){rn&&J&&n.texStorage3D(t.TEXTURE_2D_ARRAY,De,Ke,Ft[0].width,Ft[0].height,le.depth);for(let ue=0,be=Ft.length;ue<be;ue++)Je=Ft[ue],N.format!==mi?ut!==null?rn?n.compressedTexSubImage3D(t.TEXTURE_2D_ARRAY,ue,0,0,0,Je.width,Je.height,le.depth,ut,Je.data,0,0):n.compressedTexImage3D(t.TEXTURE_2D_ARRAY,ue,Ke,Je.width,Je.height,le.depth,0,Je.data,0,0):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):rn?n.texSubImage3D(t.TEXTURE_2D_ARRAY,ue,0,0,0,Je.width,Je.height,le.depth,ut,ft,Je.data):n.texImage3D(t.TEXTURE_2D_ARRAY,ue,Ke,Je.width,Je.height,le.depth,0,ut,ft,Je.data)}else{rn&&J&&n.texStorage2D(t.TEXTURE_2D,De,Ke,Ft[0].width,Ft[0].height);for(let ue=0,be=Ft.length;ue<be;ue++)Je=Ft[ue],N.format!==mi?ut!==null?rn?n.compressedTexSubImage2D(t.TEXTURE_2D,ue,0,0,Je.width,Je.height,ut,Je.data):n.compressedTexImage2D(t.TEXTURE_2D,ue,Ke,Je.width,Je.height,0,Je.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):rn?n.texSubImage2D(t.TEXTURE_2D,ue,0,0,Je.width,Je.height,ut,ft,Je.data):n.texImage2D(t.TEXTURE_2D,ue,Ke,Je.width,Je.height,0,ut,ft,Je.data)}else if(N.isDataArrayTexture)rn?(J&&n.texStorage3D(t.TEXTURE_2D_ARRAY,De,Ke,le.width,le.height,le.depth),n.texSubImage3D(t.TEXTURE_2D_ARRAY,0,0,0,0,le.width,le.height,le.depth,ut,ft,le.data)):n.texImage3D(t.TEXTURE_2D_ARRAY,0,Ke,le.width,le.height,le.depth,0,ut,ft,le.data);else if(N.isData3DTexture)rn?(J&&n.texStorage3D(t.TEXTURE_3D,De,Ke,le.width,le.height,le.depth),n.texSubImage3D(t.TEXTURE_3D,0,0,0,0,le.width,le.height,le.depth,ut,ft,le.data)):n.texImage3D(t.TEXTURE_3D,0,Ke,le.width,le.height,le.depth,0,ut,ft,le.data);else if(N.isFramebufferTexture){if(J)if(rn)n.texStorage2D(t.TEXTURE_2D,De,Ke,le.width,le.height);else{let ue=le.width,be=le.height;for(let ze=0;ze<De;ze++)n.texImage2D(t.TEXTURE_2D,ze,Ke,ue,be,0,ut,ft,null),ue>>=1,be>>=1}}else if(Ft.length>0&&ot){rn&&J&&n.texStorage2D(t.TEXTURE_2D,De,Ke,Ft[0].width,Ft[0].height);for(let ue=0,be=Ft.length;ue<be;ue++)Je=Ft[ue],rn?n.texSubImage2D(t.TEXTURE_2D,ue,0,0,ut,ft,Je):n.texImage2D(t.TEXTURE_2D,ue,Ke,ut,ft,Je);N.generateMipmaps=!1}else rn?(J&&n.texStorage2D(t.TEXTURE_2D,De,Ke,le.width,le.height),n.texSubImage2D(t.TEXTURE_2D,0,0,0,ut,ft,le)):n.texImage2D(t.TEXTURE_2D,0,Ke,ut,ft,le);C(N,ot)&&I(Te),Ye.__version=we.version,N.onUpdate&&N.onUpdate(N)}j.__version=N.version}function Qe(j,N,se){if(N.image.length!==6)return;const Te=Le(j,N),Ee=N.source;n.bindTexture(t.TEXTURE_CUBE_MAP,j.__webglTexture,t.TEXTURE0+se);const we=i.get(Ee);if(Ee.version!==we.__version||Te===!0){n.activeTexture(t.TEXTURE0+se),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,N.flipY),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,N.premultiplyAlpha),t.pixelStorei(t.UNPACK_ALIGNMENT,N.unpackAlignment),t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL,t.NONE);const Ye=N.isCompressedTexture||N.image[0].isCompressedTexture,Ie=N.image[0]&&N.image[0].isDataTexture,le=[];for(let ue=0;ue<6;
3611ue++)!Ye&&!Ie?le[ue]=q(N.image[ue],!1,!0,u):le[ue]=Ie?N.image[ue].image:N.image[ue],le[ue]=Sn(N,le[ue]);const ot=le[0],ut=E(ot)||a,ft=s.convert(N.format,N.colorSpace),Ke=s.convert(N.type),Je=R(N.internalFormat,ft,Ke,N.colorSpace),Ft=a&&N.isVideoTexture!==!0,rn=we.__version===void 0||Te===!0;let J=M(N,ot,ut);xe(t.TEXTURE_CUBE_MAP,N,ut);let De;if(Ye){Ft&&rn&&n.texStorage2D(t.TEXTURE_CUBE_MAP,J,Je,ot.width,ot.height);for(let ue=0;ue<6;ue++){De=le[ue].mipmaps;for(let be=0;be<De.length;be++){const ze=De[be];N.format!==mi?ft!==null?Ft?n.compressedTexSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be,0,0,ze.width,ze.height,ft,ze.data):n.compressedTexImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be,Je,ze.width,ze.height,0,ze.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):Ft?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be,0,0,ze.width,ze.height,ft,Ke,ze.data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be,Je,ze.width,ze.height,0,ft,Ke,ze.data)}}}else{De=N.mipmaps,Ft&&rn&&(De.length>0&&J++,n.texStorage2D(t.TEXTURE_CUBE_MAP,J,Je,le[0].width,le[0].height));for(let ue=0;ue<6;ue++)if(Ie){Ft?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,0,0,0,le[ue].width,le[ue].height,ft,Ke,le[ue].data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,0,Je,le[ue].width,le[ue].height,0,ft,Ke,le[ue].data);for(let be=0;be<De.length;be++){const tn=De[be].image[ue].image;Ft?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be+1,0,0,tn.width,tn.height,ft,Ke,tn.data):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be+1,Je,tn.width,tn.height,0,ft,Ke,tn.data)}}else{Ft?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,0,0,0,ft,Ke,le[ue]):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,0,Je,ft,Ke,le[ue]);for(let be=0;be<De.length;be++){const ze=De[be];Ft?n.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be+1,0,0,ft,Ke,ze.image[ue]):n.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X+ue,be+1,Je,ft,Ke,ze.image[ue])}}}C(N,ut)&&I(t.TEXTURE_CUBE_MAP),we.__version=Ee.version,N.onUpdate&&N.onUpdate(N)}j.__version=N.version}function Be(j,N,se,Te,Ee,we){const Ye=s.convert(se.format,se.colorSpace),Ie=s.convert(se.type),le=R(se.internalFormat,Ye,Ie,se.colorSpace);if(!i.get(N).__hasExternalTextures){const ut=Math.max(1,N.width>>we),ft=Math.max(1,N.height>>we);Ee===t.TEXTURE_3D||Ee===t.TEXTURE_2D_ARRAY?n.texImage3D(Ee,we,le,ut,ft,N.depth,0,Ye,Ie,null):n.texImage2D(Ee,we,le,ut,ft,0,Ye,Ie,null)}n.bindFramebuffer(t.FRAMEBUFFER,j),pt(N)?f.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,Te,Ee,i.get(se).__webglTexture,0,He(N)):(Ee===t.TEXTURE_2D||Ee>=t.TEXTURE_CUBE_MAP_POSITIVE_X&&Ee<=t.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&t.framebufferTexture2D(t.FRAMEBUFFER,Te,Ee,i.get(se).__webglTexture,we),n.bindFramebuffer(t.FRAMEBUFFER,null)}function X(j,N,se){if(t.bindRenderbuffer(t.RENDERBUFFER,j),N.depthBuffer&&!N.stencilBuffer){let Te=t.DEPTH_COMPONENT16;if(se||pt(N)){const Ee=N.depthTexture;Ee&&Ee.isDepthTexture&&(Ee.type===kr?Te=t.DEPTH_COMPONENT32F:Ee.type===Ka&&(Te=t.DEPTH_COMPONENT24));const we=He(N);pt(N)?f.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,we,Te,N.width,N.height):t.renderbufferStorageMultisample(t.RENDERBUFFER,we,Te,N.width,N.height)}else t.renderbufferStorage(t.RENDERBUFFER,Te,N.width,N.height);t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.RENDERBUFFER,j)}else if(N.depthBuffer&&N.stencilBuffer){const Te=He(N);se&&pt(N)===!1?t.renderbufferStorageMultisample(t.RENDERBUFFER,Te,t.DEPTH24_STENCIL8,N.width,N.height):pt(N)?f.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,Te,t.DEPTH24_STENCIL8,N.width,N.height):t.renderbufferStorage(t.RENDERBUFFER,t.DEPTH_STENCIL,N.width,N.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.RENDERBUFFER,j)}
3611else{const Te=N.isWebGLMultipleRenderTargets===!0?N.texture:[N.texture];for(let Ee=0;Ee<Te.length;Ee++){const we=Te[Ee],Ye=s.convert(we.format,we.colorSpace),Ie=s.convert(we.type),le=R(we.internalFormat,Ye,Ie,we.colorSpace),ot=He(N);se&&pt(N)===!1?t.renderbufferStorageMultisample(t.RENDERBUFFER,ot,le,N.width,N.height):pt(N)?f.renderbufferStorageMultisampleEXT(t.RENDERBUFFER,ot,le,N.width,N.height):t.renderbufferStorage(t.RENDERBUFFER,le,N.width,N.height)}}t.bindRenderbuffer(t.RENDERBUFFER,null)}function qe(j,N){if(N&&N.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(n.bindFramebuffer(t.FRAMEBUFFER,j),!(N.depthTexture&&N.depthTexture.isDepthTexture))throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");(!i.get(N.depthTexture).__webglTexture||N.depthTexture.image.width!==N.width||N.depthTexture.image.height!==N.height)&&(N.depthTexture.image.width=N.width,N.depthTexture.image.height=N.height,N.depthTexture.needsUpdate=!0),F(N.depthTexture,0);const Te=i.get(N.depthTexture).__webglTexture,Ee=He(N);if(N.depthTexture.format===xc)pt(N)?f.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,Te,0,Ee):t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_ATTACHMENT,t.TEXTURE_2D,Te,0);else if(N.depthTexture.format===fu)pt(N)?f.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,Te,0,Ee):t.framebufferTexture2D(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.TEXTURE_2D,Te,0);else throw new Error("Unknown depthTexture format")}function ve(j){const N=i.get(j),se=j.isWebGLCubeRenderTarget===!0;if(j.depthTexture&&!N.__autoAllocateDepthBuffer){if(se)throw new Error("target.depthTexture not supported in Cube render targets");qe(N.__webglFramebuffer,j)}else if(se){N.__webglDepthbuffer=[];for(let Te=0;Te<6;Te++)n.bindFramebuffer(t.FRAMEBUFFER,N.__webglFramebuffer[Te]),N.__webglDepthbuffer[Te]=t.createRenderbuffer(),X(N.__webglDepthbuffer[Te],j,!1)}else n.bindFramebuffer(t.FRAMEBUFFER,N.__webglFramebuffer),N.__webglDepthbuffer=t.createRenderbuffer(),X(N.__webglDepthbuffer,j,!1);n.bindFramebuffer(t.FRAMEBUFFER,null)}function Se(j,N,se){const Te=i.get(j);N!==void 0&&Be(Te.__webglFramebuffer,j,j.texture,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,0),se!==void 0&&ve(j)}function _e(j){const N=j.texture,se=i.get(j),Te=i.get(N);j.addEventListener("dispose",z),j.isWebGLMultipleRenderTargets!==!0&&(Te.__webglTexture===void 0&&(Te.__webglTexture=t.createTexture()),Te.__version=N.version,o.memory.textures++);const Ee=j.isWebGLCubeRenderTarget===!0,we=j.isWebGLMultipleRenderTargets===!0,Ye=E(j)||a;if(Ee){se.__webglFramebuffer=[];for(let Ie=0;Ie<6;Ie++)if(a&&N.mipmaps&&N.mipmaps.length>0){se.__webglFramebuffer[Ie]=[];for(let le=0;le<N.mipmaps.length;le++)se.__webglFramebuffer[Ie][le]=t.createFramebuffer()}else se.__webglFramebuffer[Ie]=t.createFramebuffer()}else{if(a&&N.mipmaps&&N.mipmaps.length>0){se.__webglFramebuffer=[];for(let Ie=0;Ie<N.mipmaps.length;Ie++)se.__webglFramebuffer[Ie]=t.createFramebuffer()}else se.__webglFramebuffer=t.createFramebuffer();if(we)if(r.drawBuffers){const Ie=j.texture;for(let le=0,ot=Ie.length;le<ot;le++){const ut=i.get(Ie[le]);ut.__webglTexture===void 0&&(ut.__webglTexture=t.createTexture(),o.memory.textures++)}}else console.warn("THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.");if(a&&j.samples>0&&pt(j)===!1){const Ie=we?N:[N];se.__webglMultisampledFramebuffer=t.createFramebuffer(),se.__webglColorRenderbuffer=[],n.bindFramebuffer(t.FRAMEBUFFER,se.__webglMultisampledFramebuffer);for(let le=0;le<Ie.length;le++){const ot=Ie[le];se.__webglColorRenderbuffer[le]=t.createRenderbuffer(),t.bindRenderbuffer(t.RENDERBUFFER,se.__webglColorRenderbuffer[le]);const ut=s.convert(ot.format,ot.colorSpace),ft=s.convert(ot.type),Ke=R(ot.internalFormat,ut,ft,ot.colorSpace,j.isXRRenderTarget===!0),Je=He(j);t.renderbufferStorageMultisample(t.RENDERBUFFER,Je,Ke,j.width,j.height),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+le,t.RENDERBUFFER,se.__webglColorRen
3611derbuffer[le])}t.bindRenderbuffer(t.RENDERBUFFER,null),j.depthBuffer&&(se.__webglDepthRenderbuffer=t.createRenderbuffer(),X(se.__webglDepthRenderbuffer,j,!0)),n.bindFramebuffer(t.FRAMEBUFFER,null)}}if(Ee){n.bindTexture(t.TEXTURE_CUBE_MAP,Te.__webglTexture),xe(t.TEXTURE_CUBE_MAP,N,Ye);for(let Ie=0;Ie<6;Ie++)if(a&&N.mipmaps&&N.mipmaps.length>0)for(let le=0;le<N.mipmaps.length;le++)Be(se.__webglFramebuffer[Ie][le],j,N,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+Ie,le);else Be(se.__webglFramebuffer[Ie],j,N,t.COLOR_ATTACHMENT0,t.TEXTURE_CUBE_MAP_POSITIVE_X+Ie,0);C(N,Ye)&&I(t.TEXTURE_CUBE_MAP),n.unbindTexture()}else if(we){const Ie=j.texture;for(let le=0,ot=Ie.length;le<ot;le++){const ut=Ie[le],ft=i.get(ut);n.bindTexture(t.TEXTURE_2D,ft.__webglTexture),xe(t.TEXTURE_2D,ut,Ye),Be(se.__webglFramebuffer,j,ut,t.COLOR_ATTACHMENT0+le,t.TEXTURE_2D,0),C(ut,Ye)&&I(t.TEXTURE_2D)}n.unbindTexture()}else{let Ie=t.TEXTURE_2D;if((j.isWebGL3DRenderTarget||j.isWebGLArrayRenderTarget)&&(a?Ie=j.isWebGL3DRenderTarget?t.TEXTURE_3D:t.TEXTURE_2D_ARRAY:console.error("THREE.WebGLTextures: THREE.Data3DTexture and THREE.DataArrayTexture only supported with WebGL2.")),n.bindTexture(Ie,Te.__webglTexture),xe(Ie,N,Ye),a&&N.mipmaps&&N.mipmaps.length>0)for(let le=0;le<N.mipmaps.length;le++)Be(se.__webglFramebuffer[le],j,N,t.COLOR_ATTACHMENT0,Ie,le);else Be(se.__webglFramebuffer,j,N,t.COLOR_ATTACHMENT0,Ie,0);C(N,Ye)&&I(Ie),n.unbindTexture()}j.depthBuffer&&ve(j)}function it(j){const N=E(j)||a,se=j.isWebGLMultipleRenderTargets===!0?j.texture:[j.texture];for(let Te=0,Ee=se.length;Te<Ee;Te++){const we=se[Te];if(C(we,N)){const Ye=j.isWebGLCubeRenderTarget?t.TEXTURE_CUBE_MAP:t.TEXTURE_2D,Ie=i.get(we).__webglTexture;n.bindTexture(Ye,Ie),I(Ye),n.unbindTexture()}}}function Ge(j){if(a&&j.samples>0&&pt(j)===!1){const N=j.isWebGLMultipleRenderTargets?j.texture:[j.texture],se=j.width,Te=j.height;let Ee=t.COLOR_BUFFER_BIT;const we=[],Ye=j.stencilBuffer?t.DEPTH_STENCIL_ATTACHMENT:t.DEPTH_ATTACHMENT,Ie=i.get(j),le=j.isWebGLMultipleRenderTargets===!0;if(le)for(let ot=0;ot<N.length;ot++)n.bindFramebuffer(t.FRAMEBUFFER,Ie.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+ot,t.RENDERBUFFER,null),n.bindFramebuffer(t.FRAMEBUFFER,Ie.__webglFramebuffer),t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0+ot,t.TEXTURE_2D,null,0);n.bindFramebuffer(t.READ_FRAMEBUFFER,Ie.__webglMultisampledFramebuffer),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,Ie.__webglFramebuffer);for(let ot=0;ot<N.length;ot++){we.push(t.COLOR_ATTACHMENT0+ot),j.depthBuffer&&we.push(Ye);const ut=Ie.__ignoreDepthValues!==void 0?Ie.__ignoreDepthValues:!1;if(ut===!1&&(j.depthBuffer&&(Ee|=t.DEPTH_BUFFER_BIT),j.stencilBuffer&&(Ee|=t.STENCIL_BUFFER_BIT)),le&&t.framebufferRenderbuffer(t.READ_FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.RENDERBUFFER,Ie.__webglColorRenderbuffer[ot]),ut===!0&&(t.invalidateFramebuffer(t.READ_FRAMEBUFFER,[Ye]),t.invalidateFramebuffer(t.DRAW_FRAMEBUFFER,[Ye])),le){const ft=i.get(N[ot]).__webglTexture;t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,ft,0)}t.blitFramebuffer(0,0,se,Te,0,0,se,Te,Ee,t.NEAREST),m&&t.invalidateFramebuffer(t.READ_FRAMEBUFFER,we)}if(n.bindFramebuffer(t.READ_FRAMEBUFFER,null),n.bindFramebuffer(t.DRAW_FRAMEBUFFER,null),le)for(let ot=0;ot<N.length;ot++){n.bindFramebuffer(t.FRAMEBUFFER,Ie.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0+ot,t.RENDERBUFFER,Ie.__webglColorRenderbuffer[ot]);const ut=i.get(N[ot]).__webglTexture;n.bindFramebuffer(t.FRAMEBUFFER,Ie.__webglFramebuffer),t.framebufferTexture2D(t.DRAW_FRAMEBUFFER,t.COLOR_ATTACHMENT0+ot,t.TEXTURE_2D,ut,0)}n.bindFramebuffer(t.DRAW_FRAMEBUFFER,Ie.__webglMultisampledFramebuffer)}}function He(j){return Math.min(h,j.samples)}function pt(j){const N=i.get(j);return a&&j.samples>0&&e.has("WEBGL_multisampled_render_to_texture")===!0&&N.__useRenderToTexture!==!1}function Vt(j){const N=o.render.frame;g.get(j)!==N&&(g.set(j,N),j.update())}function Sn(j,N){const se=j.colorSpace,Te=j.format,Ee=j.type;return j.isCompressedTexture===!0||j.format===vm||se!==va&&se!==Ec&&(se===Ot?a===!1?e.has("EXT_sRGB")===!0&&Te===mi?(j.format=vm,j.minFilter=_n,j.generateMipmaps=!1):N=GT.sRGBToLinear(N):(Te!==mi||Ee!==Rn)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",se)),N}this.allocateTextureUnit=B,this.resetTextureUnits=Y,this.setTexture2D=F,this.setTexture2DArray=k,this.setTexture3D=Q,this.setTextureCube=ce,this.rebindTextures=Se,this.setupRenderTarget=_e,this.updateRenderTargetMipmap=it,this.updateMultisampleRenderTarget=Ge,this.setupDepthRenderbuffer=ve,this.setupFrameBufferTexture=Be,this.useMultisampledRTT=pt}
vendor: 18,144 bytes, line 3611
3611function nz(t,e,n){const i=n.isWebGL2;function r(s,o=Ec){let a;if(s===Rn)return t.UNSIGNED_BYTE;if(s===DT)return t.UNSIGNED_SHORT_4_4_4_4;if(s===LT)return t.UNSIGNED_SHORT_5_5_5_1;if(s===CU)return t.BYTE;if(s===wU)return t.SHORT;if(s===U1)return t.UNSIGNED_SHORT;if(s===BT)return t.INT;if(s===Ka)return t.UNSIGNED_INT;if(s===kr)return t.FLOAT;if(s===yi)return i?t.HALF_FLOAT:(a=e.get("OES_texture_half_float"),a!==null?a.HALF_FLOAT_OES:null);if(s===IU)return t.ALPHA;if(s===mi)return t.RGBA;if(s===NT)return t.LUMINANCE;if(s===MU)return t.LUMINANCE_ALPHA;if(s===xc)return t.DEPTH_COMPONENT;if(s===fu)return t.DEPTH_STENCIL;if(s===vm)return a=e.get("EXT_sRGB"),a!==null?a.SRGB_ALPHA_EXT:null;if(s===Xh)return t.RED;if(s===kT)return t.RED_INTEGER;if(s===r0)return t.RG;if(s===FT)return t.RG_INTEGER;if(s===OT)return t.RGBA_INTEGER;if(s===E0||s===_8||s===x8||s===S0)if(o===Ot)if(a=e.get("WEBGL_compressed_texture_s3tc_srgb"),a!==null){if(s===E0)return a.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(s===_8)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(s===x8)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(s===S0)return a.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(a=e.get("WEBGL_compressed_texture_s3tc"),a!==null){if(s===E0)return a.COMPRESSED_RGB_S3TC_DXT1_EXT;if(s===_8)return a.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(s===x8)return a.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(s===S0)return a.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(s===Td||s===mx||s===Cd||s===gx)if(a=e.get("WEBGL_compressed_texture_pvrtc"),a!==null){if(s===Td)return a.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(s===mx)return a.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(s===Cd)return a.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(s===gx)return a.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(s===H9)return a=e.get("WEBGL_compressed_texture_etc1"),a!==null?a.COMPRESSED_RGB_ETC1_WEBGL:null;if(s===wd||s===Id)if(a=e.get("WEBGL_compressed_texture_etc"),a!==null){if(s===wd)return o===Ot?a.COMPRESSED_SRGB8_ETC2:a.COMPRESSED_RGB8_ETC2;if(s===Id)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:a.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(s===Md||s===Ax||s===vx||s===yx||s===qx||s===_x||s===xx||s===Ex||s===Sx||s===Tx||s===Cx||s===wx||s===Ix||s===Mx)if(a=e.get("WEBGL_compressed_texture_astc"),a!==null){if(s===Md)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:a.COMPRESSED_RGBA_ASTC_4x4_KHR;if(s===Ax)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:a.COMPRESSED_RGBA_ASTC_5x4_KHR;if(s===vx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:a.COMPRESSED_RGBA_ASTC_5x5_KHR;if(s===yx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:a.COMPRESSED_RGBA_ASTC_6x5_KHR;if(s===qx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:a.COMPRESSED_RGBA_ASTC_6x6_KHR;if(s===_x)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:a.COMPRESSED_RGBA_ASTC_8x5_KHR;if(s===xx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:a.COMPRESSED_RGBA_ASTC_8x6_KHR;if(s===Ex)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:a.COMPRESSED_RGBA_ASTC_8x8_KHR;if(s===Sx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:a.COMPRESSED_RGBA_ASTC_10x5_KHR;if(s===Tx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:a.COMPRESSED_RGBA_ASTC_10x6_KHR;if(s===Cx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:a.COMPRESSED_RGBA_ASTC_10x8_KHR;if(s===wx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:a.COMPRESSED_RGBA_ASTC_10x10_KHR;if(s===Ix)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:a.COMPRESSED_RGBA_ASTC_12x10_KHR;if(s===Mx)return o===Ot?a.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:a.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(s===T0)if(a=e.get("EXT_texture_compression_bptc"),a!==null){if(s===T0)return o===Ot?a.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:a.COMPRESSED_RGBA_BPTC_UNORM_EXT}else return null;if(s===RU||s===Rx||s===bx||s===Px)if(a=e.get("EXT_texture_compression_rgtc"),a!==null){if(s===T0)return a.COMPRESSED_RED_RGTC1_EXT;if(s===Rx)return a.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(s===bx)return a.COMPRESSED_RED_GREEN_RGTC2_EXT;if(s===Px)return a.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return s===ol?i?t.UNSIGNED_INT_24_8:(a=e.get("WEBGL_depth_texture"),a!==null?a.UNSIGNED_INT_24_8_WEBGL:null):t[s]!==void 0?t[s]:null}return{convert:r}}class iz extends Yn{constructor(e=[]){super(),this.isArrayCamera=!0,this.cameras=e}}class a0 extends mn{constructor(){super(),this.isGroup=!0,this.type="Group"}}const Rse={type:"move"};class Py{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new a0,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new a0,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new L,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new L),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new a0,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new L,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new L),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}connect(e){if(e&&e.hand){const n=this._hand;if(n)for(const i of e.hand.values())this._getHandJoint(n,i)}return this.dispatchEvent({type:"connected",data:e}),this}disconnect(e){return this.dispatchEvent({type:"disconnected",data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,n,i){let r=null,s=null,o=null;const a=this._targetRay,l=this._grip,u=this._hand;if(e&&n.session.visibilityState!=="visible-blurred"){if(u&&e.hand){o=!0;for(const v of e.hand.values()){const _=n.getJointPose(v,i),A=this._getHandJoint(u,v);_!==null&&(A.matrix.fromArray(_.transform.matrix),A.matrix.decompose(A.position,A.rotation,A.scale),A.matrixWorldNeedsUpdate=!0,A.jointRadius=_.radius),A.visible=_!==null}const c=u.joints["index-finger-tip"],h=u.joints["thumb-tip"],f=c.position.distanceTo(h.position),m=.02,g=.005;u.inputState.pinching&&f>m+g?(u.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!u.inputState.pinching&&f<=m-g&&(u.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else l!==null&&e.gripSpace&&(s=n.getPose(e.gripSpace,i),s!==null&&(l.matrix.fromArray(s.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),l.matrixWorldNeedsUpdate=!0,s.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(s.linearVelocity)):l.hasLinearVelocity=!1,s.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(s.angularVelocity)):l.hasAngularVelocity=!1));a!==null&&(r=n.getPose(e.targetRaySpace,i),r===null&&s!==null&&(r=s),r!==null&&(a.matrix.fromArray(r.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),a.matrixWorldNeedsUpdate=!0,r.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(r.linearVelocity)):a.hasLinearVelocity=!1,r.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(r.angularVelocity)):a.hasAngularVelocity=!1,this.dispatchEvent(Rse)))}return a!==null&&(a.visible=r!==null),l!==null&&(l.visible=s!==null),u!==null&&(u.visible=o!==null),this}_getHandJoint(e,n){if(e.joints[n.jointName]===void 0){const i=new a0;i.matrixAutoUpdate=!1,i.visible=!1,e.joints[n.jointName]=i,e.add(i)}return e.joints[n.jointName]}}class z1 extends Gn{constructor(e,n,i,r,s,o,a,l,u,c){if(c=c!==void 0?c:xc,c!==xc&&c!==fu)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");i===void 0&&c===xc&&(i=Ka),i===void 0&&c===fu&&(i=ol),super(null,r,s,o,a,l,c,i,u),this.isDepthTexture=!0,this.image={width:e,height:n},this.magFilter=a!==void 0?a:At,this.minFilter=l!==void 0?l:At,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.compareFunction=e.compareFunction,this}toJSON(e){const n=super.toJSON(e);return this.compareFunction!==null&&(n.compareFunction=this.compareFunction),n}}class bse extends $o{constructor(e,n){super();const i=this;let r=null,s=1,o=null,a="local-floor",l=1,u=null,c=null,h=null,f=null,m=null,g=null;const v=n.getContextAttributes();let _=null,A=null;const y=[],q=[],E=new Yn;E.layers.enable(1),E.viewport=new Zt;const T=new Yn;T.layers.enable(2),T.viewport=new Zt;const C=[E,T],I=new iz;I.layers.enable(1),I.layers.enable(2);let R=null,M=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(k){let Q=y[k];return Q===void 0&&(Q=new Py,y[k]=Q),Q.getTargetRaySpace()},this.getControllerGrip=function(k){let Q=y[k];return Q===void 0&&(Q=new Py,y[k]=Q),Q.getGripSpace()},this.getHand=function(k){let Q=y[k];return Q===void 0&&(Q=new Py,y[k]=Q),Q.getHandSpace()};function b(k){const Q=q.indexOf(k.inputSource);if(Q===-1)return;const ce=y[Q];ce!==void 0&&(ce.update(k.inputSource,k.frame,u||o),ce.dispatchEvent({type:k.type,data:k.inputSource}))}function D(){r.removeEventListener("select",b),r.removeEventListener("selectstart",b),r.removeEventListener("selectend",b),r.removeEventListener("squeeze",b),r.removeEventListener("squeezestart",b),r.removeEventListener("squeezeend",b),r.removeEventListener("end",D),r.removeEventListener("inputsourceschange",z);for(let k=0;k<y.length;k++){const Q=q[k];Q!==null&&(q[k]=null,y[k].disconnect(Q))}R=null,M=null,e.setRenderTarget(_),m=null,f=null,h=null,r=null,A=null,F.stop(),i.isPresenting=!1,i.dispatchEvent({type:"sessionend"})}this.setFramebufferScaleFactor=function(k){s=k,i.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(k){a=k,i.isPresenting===!0&&console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return u||o},this.setReferenceSpace=function(k){u=k},this.getBaseLayer=function(){return f!==null?f:m},this.getBinding=function(){return h},this.getFrame=function(){return g},this.getSession=function(){return r},this.setSession=async function(k){if(r=k,r!==null){if(_=e.getRenderTarget(),r.addEventListener("select",b),r.addEventListener("selectstart",b),r.addEventListener("selectend",b),r.addEventListener("squeeze",b),r.addEventListener("squeezestart",b),r.addEventListener("squeezeend",b),r.addEventListener("end",D),r.addEventListener("inputsourceschange",z),v.xrCompatible!==!0&&await n.makeXRCompatible(),r.renderState.layers===void 0||e.capabilities.isWebGL2===!1){const Q={antialias:r.renderState.layers===void 0?v.antialias:!0,alpha:!0,depth:v.depth,stencil:v.stencil,framebufferScaleFactor:s};m=new XRWebGLLayer(r,n,Q),r.updateRenderState({baseLayer:m}),A=new Yt(m.framebufferWidth,m.framebufferHeight,{format:mi,type:Rn,colorSpace:e.outputColorSpace,stencilBuffer:v.stencil})}else{let Q=null,ce=null,ae=null;v.depth&&(ae=v.stencil?n.DEPTH24_STENCIL8:n.DEPTH_COMPONENT24,Q=v.stencil?fu:xc,ce=v.stencil?ol:Ka);const ge={colorFormat:n.RGBA8,depthFormat:ae,scaleFactor:s};h=new XRWebGLBinding(r,n),f=h.createProjectionLayer(ge),r.updateRenderState({layers:[f]}),A=new Yt(f.textureWidth,f.textureHeight,{format:mi,type:Rn,depthTexture:new z1(f.textureWidth,f.textureHeight,ce,void 0,void 0,void 0,void 0,void 0,void 0,Q),stencilBuffer:v.stencil,colorSpace:e.outputColorSpace,samples:v.antialias?4:0});const ye=e.properties.get(A);ye.__ignoreDepthValues=f.ignoreDepthValues}A.isXRRenderTarget=!0,this.setFoveation(l),u=null,o=await r.requestReferenceSpace(a),F.setContext(r),F.start(),i.isPresenting=!0,i.dispatchEvent({type:"sessionstart"})}},this.getEnvironmentBlendMode=function(){if(r!==null)return r.environmentBlendMode};function z(k){for(let Q=0;Q<k.removed.length;Q++){const ce=k.removed[Q],ae=q.indexOf(ce);ae>=0&&(q[ae]=null,y[ae].disconnect(ce))}for(let Q=0;Q<k.added.length;Q++){const ce=k.added[Q];let ae=q.indexOf(ce);if(ae===-1){for(let ye=0;ye<y.length;ye++)if(ye>=q.length){q.push(ce),ae=ye;break}else if(q[ye]===null){q[ye]=ce,ae=ye;break}if(ae===-1)break}const ge=y[ae];ge&&ge.connect(ce)}}const O=new L,W=new L;function $(k,Q,ce){O.setFromMatrixPosition(Q.matrixWorld),W.setFromMatrixPosition(ce.matrixWorld);const ae=O.distanceTo(W),ge=Q.projectionMatrix.elements,ye=ce.projectionMatrix.elements,xe=ge[14]/(ge[10]-1),Le=ge[14]/(ge[10]+1),$e=(ge[9]+1)/ge[5],Qe=(ge[9]-1)/ge[5],Be=(ge[8]-1)/ge[0],X=(ye[8]+1)/ye[0],qe=xe*Be,ve=xe*X,Se=ae/(-Be+X),_e=Se*-Be;Q.matrixWorld.decompose(k.position,k.quaternion,k.scale),k.translateX(_e),k.translateZ(Se),k.matrixWorld.compose(k.position,k.quaternion,k.scale),k.matrixWorldInverse.copy(k.matrixWorld).invert();const it=xe+Se,Ge=Le+Se,He=qe-_e,pt=ve+(ae-_e),Vt=$e*Le/Ge*it,Sn=Qe*Le/Ge*it;k.projectionMatrix.makePerspective(He,pt,Vt,Sn,it,Ge),k.projectionMatrixInverse.copy(k.projectionMatrix).invert()}function K(k,Q){Q===null?k.matrixWorld.copy(k.matrix):k.matrixWorld.multiplyMatrices(Q.matrixWorld,k.matrix),k.matrixWorldInverse.copy(k.matrixWorld).invert()}this.updateCamera=function(k){if(r===null)return;I.near=T.near=E.near=k.near,I.far=T.far=E.far=k.far,(R!==I.near||M!==I.far)&&(r.updateRenderState({depthNear:I.near,depthFar:I.far}),R=I.near,M=I.far);const Q=k.parent,ce=I.cameras;K(I,Q);for(let ae=0;ae<ce.length;ae++)K(ce[ae],Q);ce.length===2?$(I,E,T):I.projectionMatrix.copy(E.projectionMatrix),Y(k,I,Q)};function Y(k,Q,ce){ce===null?k.matrix.copy(Q.matrixWorld):(k.matrix.copy(ce.matrixWorld),k.matrix.invert(),k.matrix.multiply(Q.matrixWorld)),k.matrix.decompose(k.position,k.quaternion,k.scale),k.updateMatrixWorld(!0);const ae=k.children;for(let ge=0,ye=ae.length;ge<ye;ge++)ae[ge].updateMatrixWorld(!0);k.projectionMatrix.copy(Q.projectionMatrix),k.projectionMatrixInverse.copy(Q.projectionMatrixInverse),k.isPerspectiveCamera&&(k.fov=X0*2*Math.atan(1/k.projectionMatrix.elements[5]),k.zoom=1)}this.getCamera=function(){return I},this.getFoveation=function(){if(!(f===null&&m===null))return l},this.setFoveation=function(k){l=k,f!==null&&(f.fixedFoveation=k),m!==null&&m.fixedFoveation!==void 0&&(m.fixedFoveation=k)};let B=null;function U(k,Q){if(c=Q.getViewerPose(u||o),g=Q,c!==null){const ce=c.views;m!==null&&(e.setRenderTargetFramebuffer(A,m.framebuffer),e.setRenderTarget(A));let ae=!1;ce.length!==I.cameras.length&&(I.cameras.length=0,ae=!0);for(let ge=0;ge<ce.length;ge++){const ye=ce[ge];let xe=null;if(m!==null)xe=m.getViewport(ye);else{const $e=h.getViewSubImage(f,ye);xe=$e.viewport,ge===0&&(e.setRenderTargetTextures(A,$e.colorTexture,f.ignoreDepthValues?void 0:$e.depthStencilTexture),e.setRenderTarget(A))}let Le=C[ge];Le===void 0&&(Le=new Yn,Le.layers.enable(ge),Le.viewport=new Zt,C[ge]=Le),Le.matrix.fromArray(ye.transform.matrix),Le.matrix.decompose(Le.position,Le.quaternion,Le.scale),Le.projectionMatrix.fromArray(ye.projectionMatrix),Le.projectionMatrixInverse.copy(Le.projectionMatrix).invert(),Le.viewport.set(xe.x,xe.y,xe.width,xe.height),ge===0&&(I.matrix.copy(Le.matrix),I.matrix.decompose(I.position,I.quaternion,I.scale)),ae===!0&&I.cameras.push(Le)}}for(let ce=0;ce<y.length;ce++){const ae=q[ce],ge=y[ce];ae!==null&&ge!==void 0&&ge.update(ae,Q,u||o)}B&&B(k,Q),Q.detectedPlanes&&i.dispatchEvent({type:"planesdetected",data:Q}),g=null}const F=new KU;F.setAnimationLoop(U),this.setAnimationLoop=function(k){B=k},this.dispose=function(){}}}function Pse(t,e){function n(_,A){_.matrixAutoUpdate===!0&&_.updateMatrix(),A.value.copy(_.matrix)}function i(_,A){A.color.getRGB(_.fogColor.value,jU(t)),A.isFog?(_.fogNear.value=A.near,_.fogFar.value=A.far):A.isFogExp2&&(_.fogDensity.value=A.density)}function r(_,A,y,q,E){A.isMeshBasicMaterial||A.isMeshLambertMaterial?s(_,A):A.isMeshToonMaterial?(s(_,A),h(_,A)):A.isMeshPhongMaterial?(s(_,A),c(_,A)):A.isMeshStandardMaterial?(s(_,A),f(_,A),A.isMeshPhysicalMaterial&&m(_,A,E)):A.isMeshMatcapMaterial?(s(_,A),g(_,A)):A.isMeshDepthMaterial?s(_,A):A.isMeshDistanceMaterial?(s(_,A),v(_,A)):A.isMeshNormalMaterial?s(_,A):A.isLineBasicMaterial?(o(_,A),A.isLineDashedMaterial&&a(_,A)):A.isPointsMaterial?l(_,A,y,q):A.isSpriteMaterial?u(_,A):A.isShadowMaterial?(_.color.value.copy(A.color),_.opacity.value=A.opacity):A.isShaderMaterial&&(A.uniformsNeedUpdate=!1)}function s(_,A){_.opacity.value=A.opacity,A.color&&_.diffuse.value.copy(A.color),A.emissive&&_.emissive.value.copy(A.emissive).multiplyScalar(A.emissiveIntensity),A.map&&(_.map.value=A.map,n(A.map,_.mapTransform)),A.alphaMap&&(_.alphaMap.value=A.alphaMap,n(A.alphaMap,_.alphaMapTransform)),A.bumpMap&&(_.bumpMap.value=A.bumpMap,n(A.bumpMap,_.bumpMapTransform),_.bumpScale.value=A.bumpScale,A.side===Fi&&(_.bumpScale.value*=-1)),A.normalMap&&(_.normalMap.value=A.normalMap,n(A.normalMap,_.normalMapTransform),_.normalScale.value.copy(A.normalScale),A.side===Fi&&_.normalScale.value.negate()),A.displacementMap&&(_.displacementMap.value=A.displacementMap,n(A.displacementMap,_.displacementMapTransform),_.displacementScale.value=A.displacementScale,_.displacementBias.value=A.displacementBias),A.emissiveMap&&(_.emissiveMap.value=A.emissiveMap,n(A.emissiveMap,_.emissiveMapTransform)),A.specularMap&&(_.specularMap.value=A.specularMap,n(A.specularMap,_.specularMapTransform)),A.alphaTest>0&&(_.alphaTest.value=A.alphaTest);const y=e.get(A).envMap;if(y&&(_.envMap.value=y,_.flipEnvMap.value=y.isCubeTexture&&y.isRenderTargetTexture===!1?-1:1,_.reflectivity.value=A.reflectivity,_.ior.value=A.ior,_.refractionRatio.value=A.refractionRatio),A.lightMap){_.lightMap.value=A.lightMap;const q=t._useLegacyLights===!0?Math.PI:1;_.lightMapIntensity.value=A.lightMapIntensity*q,n(A.lightMap,_.lightMapTransform)}A.aoMap&&(_.aoMap.value=A.aoMap,_.aoMapIntensity.value=A.aoMapIntensity,n(A.aoMap,_.aoMapTransform))}function o(_,A){_.diffuse.value.copy(A.color),_.opacity.value=A.opacity,A.map&&(_.map.value=A.map,n(A.map,_.mapTransform))}function a(_,A){_.dashSize.value=A.dashSize,_.totalSize.value=A.dashSize
3611+A.gapSize,_.scale.value=A.scale}function l(_,A,y,q){_.diffuse.value.copy(A.color),_.opacity.value=A.opacity,_.size.value=A.size*y,_.scale.value=q*.5,A.map&&(_.map.value=A.map,n(A.map,_.uvTransform)),A.alphaMap&&(_.alphaMap.value=A.alphaMap,n(A.alphaMap,_.alphaMapTransform)),A.alphaTest>0&&(_.alphaTest.value=A.alphaTest)}function u(_,A){_.diffuse.value.copy(A.color),_.opacity.value=A.opacity,_.rotation.value=A.rotation,A.map&&(_.map.value=A.map,n(A.map,_.mapTransform)),A.alphaMap&&(_.alphaMap.value=A.alphaMap,n(A.alphaMap,_.alphaMapTransform)),A.alphaTest>0&&(_.alphaTest.value=A.alphaTest)}function c(_,A){_.specular.value.copy(A.specular),_.shininess.value=Math.max(A.shininess,1e-4)}function h(_,A){A.gradientMap&&(_.gradientMap.value=A.gradientMap)}function f(_,A){_.metalness.value=A.metalness,A.metalnessMap&&(_.metalnessMap.value=A.metalnessMap,n(A.metalnessMap,_.metalnessMapTransform)),_.roughness.value=A.roughness,A.roughnessMap&&(_.roughnessMap.value=A.roughnessMap,n(A.roughnessMap,_.roughnessMapTransform)),e.get(A).envMap&&(_.envMapIntensity.value=A.envMapIntensity)}function m(_,A,y){_.ior.value=A.ior,A.sheen>0&&(_.sheenColor.value.copy(A.sheenColor).multiplyScalar(A.sheen),_.sheenRoughness.value=A.sheenRoughness,A.sheenColorMap&&(_.sheenColorMap.value=A.sheenColorMap,n(A.sheenColorMap,_.sheenColorMapTransform)),A.sheenRoughnessMap&&(_.sheenRoughnessMap.value=A.sheenRoughnessMap,n(A.sheenRoughnessMap,_.sheenRoughnessMapTransform))),A.clearcoat>0&&(_.clearcoat.value=A.clearcoat,_.clearcoatRoughness.value=A.clearcoatRoughness,A.clearcoatMap&&(_.clearcoatMap.value=A.clearcoatMap,n(A.clearcoatMap,_.clearcoatMapTransform)),A.clearcoatRoughnessMap&&(_.clearcoatRoughnessMap.value=A.clearcoatRoughnessMap,n(A.clearcoatRoughnessMap,_.clearcoatRoughnessMapTransform)),A.clearcoatNormalMap&&(_.clearcoatNormalMap.value=A.clearcoatNormalMap,n(A.clearcoatNormalMap,_.clearcoatNormalMapTransform),_.clearcoatNormalScale.value.copy(A.clearcoatNormalScale),A.side===Fi&&_.clearcoatNormalScale.value.negate())),A.iridescence>0&&(_.iridescence.value=A.iridescence,_.iridescenceIOR.value=A.iridescenceIOR,_.iridescenceThicknessMinimum.value=A.iridescenceThicknessRange[0],_.iridescenceThicknessMaximum.value=A.iridescenceThicknessRange[1],A.iridescenceMap&&(_.iridescenceMap.value=A.iridescenceMap,n(A.iridescenceMap,_.iridescenceMapTransform)),A.iridescenceThicknessMap&&(_.iridescenceThicknessMap.value=A.iridescenceThicknessMap,n(A.iridescenceThicknessMap,_.iridescenceThicknessMapTransform))),A.transmission>0&&(_.transmission.value=A.transmission,_.transmissionSamplerMap.value=y.texture,_.transmissionSamplerSize.value.set(y.width,y.height),A.transmissionMap&&(_.transmissionMap.value=A.transmissionMap,n(A.transmissionMap,_.transmissionMapTransform)),_.thickness.value=A.thickness,A.thicknessMap&&(_.thicknessMap.value=A.thicknessMap,n(A.thicknessMap,_.thicknessMapTransform)),_.attenuationDistance.value=A.attenuationDistance,_.attenuationColor.value.copy(A.attenuationColor)),A.anisotropy>0&&(_.anisotropyVector.value.set(A.anisotropy*Math.cos(A.anisotropyRotation),A.anisotropy*Math.sin(A.anisotropyRotation)),A.anisotropyMap&&(_.anisotropyMap.value=A.anisotropyMap,n(A.anisotropyMap,_.anisotropyMapTransform))),_.specularIntensity.value=A.specularIntensity,_.specularColor.value.copy(A.specularColor),A.specularColorMap&&(_.specularColorMap.value=A.specularColorMap,n(A.specularColorMap,_.specularColorMapTransform)),A.specularIntensityMap&&(_.specularIntensityMap.value=A.specularIntensityMap,n(A.specularIntensityMap,_.specularIntensityMapTransform))}function g(_,A){A.matcap&&(_.matcap.value=A.matcap)}function v(_,A){const y=e.get(A).light;_.referencePosition.value.setFromMatrixPosition(y.matrixWorld),_.nearDistance.value=y.shadow.camera.near,_.farDistance.value=y.shadow.camera.far}return{refreshFogUniforms:i,refreshMaterialUniforms:r}}function Bse(t,e,n,i){let r={},s={},o=[];const a=n.isWebGL2?t.getParameter(t.MAX_UNIFORM_BUFFER_BINDINGS):0;function l(y,q){const E=q.program;i.uniformBlockBinding(y,E)}function u(y,q){let E=r[y.id];E===void 0&&(g(y),E=c(y),r[y.id]=E,y.addEventListener("dispose",_));const T=q.program;i.updateUBOMapping(y,T);const C=e.render.frame;s[y.id]!==C&&(f(y),s[y.id]=C)}function c(y){const q=h();y.__bindingPointIndex=q;const E=t.createBuffer(),T=y.__size,C=y.usage;return t.bindBuffer(t.UNIFORM_BUFFER,E),t.bufferData(t.UNIFORM_BUFFER,T,C),t.bindBuffer(t.UNIFORM_BUFFER,null),t.bindBufferBase(t.UNIFORM_BUFFER,q,E),E}function h(){for(let y=0;y<a;y++)if(o.indexOf(y)===-1)return o.push(y),y;return console.error("THREE.WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached."),0}function f(y){const q=r[y.id],E=y.uniforms,T=y.__cache;t.bindBuffer(t.UNIFORM_BUFFER,q);for(let C=0,I=E.length;C<I;C++){const R=E[C];if(m(R,C,T)===!0){const M=R.__offset,b=Array.isArray(R.value)?R.value:[R.value];let D=0;for(let z=0;z<b.length;z++){const O=b[z],W=v(O);typeof O=="number"?(R.__data[0]=O,t.bufferSubData(t.UNIFORM_BUFFER,M+D,R.__data)):O.isMatrix3?(R.__data[0]=O.elements[0],R.__data[1]=O.elements[1],R.__data[2]=O.elements[2],R.__data[3]=O.elements[0],R.__data[4]=O.elements[3],R.__data[5]=O.elements[4],R.__data[6]=O.elements[5],R.__data[7]=O.elements[0],R.__data[8]=O.elements[6],R.__data[9]=O.elements[7],R.__data[10]=O.elements[8],R.__data[11]=O.elements[0]):(O.toArray(R.__data,D),D+=W.storage/Float32Array.BYTES_PER_ELEMENT)}t.bufferSubData(t.UNIFORM_BUFFER,M,R.__data)}}t.bindBuffer(t.UNIFORM_BUFFER,null)}function m(y,q,E){const T=y.value;if(E[q]===void 0){if(typeof T=="number")E[q]=T;else{const C=Array.isArray(T)?T:[T],I=[];for(let R=0;R<C.length;R++)I.push(C[R].clone());E[q]=I}return!0}else if(typeof T=="number"){if(E[q]!==T)return E[q]=T,!0}else{const C=Array.isArray(E[q])?E[q]:[E[q]],I=Array.isArray(T)?T:[T];for(let R=0;R<C.length;R++){const M=C[R];if(M.equals(I[R])===!1)return M.copy(I[R]),!0}}return!1}function g(y){const q=y.uniforms;let E=0;const T=16;let C=0;for(let I=0,R=q.length;I<R;
3611I++){const M=q[I],b={boundary:0,storage:0},D=Array.isArray(M.value)?M.value:[M.value];for(let z=0,O=D.length;z<O;z++){const W=D[z],$=v(W);b.boundary+=$.boundary,b.storage+=$.storage}if(M.__data=new Float32Array(b.storage/Float32Array.BYTES_PER_ELEMENT),M.__offset=E,I>0){C=E%T;const z=T-C;C!==0&&z-b.boundary<0&&(E+=T-C,M.__offset=E)}E+=b.storage}return C=E%T,C>0&&(E+=T-C),y.__size=E,y.__cache={},this}function v(y){const q={boundary:0,storage:0};return typeof y=="number"?(q.boundary=4,q.storage=4):y.isVector2?(q.boundary=8,q.storage=8):y.isVector3||y.isColor?(q.boundary=16,q.storage=12):y.isVector4?(q.boundary=16,q.storage=16):y.isMatrix3?(q.boundary=48,q.storage=48):y.isMatrix4?(q.boundary=64,q.storage=64):y.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",y),q}function _(y){const q=y.target;q.removeEventListener("dispose",_);const E=o.indexOf(q.__bindingPointIndex);o.splice(E,1),t.deleteBuffer(r[q.id]),delete r[q.id],delete s[q.id]}function A(){for(const y in r)t.deleteBuffer(r[y]);o=[],r={},s={}}return{bind:l,update:u,dispose:A}}function Dse(){const t=Ld("canvas");return t.style.display="block",t}class jT{constructor(e={}){const{canvas:n=Dse(),context:i=null,depth:r=!0,stencil:s=!0,alpha:o=!1,antialias:a=!1,premultipliedAlpha:l=!0,preserveDrawingBuffer:u=!1,powerPreference:c="default",failIfMajorPerformanceCaveat:h=!1}=e;this.isWebGLRenderer=!0;let f;i!==null?f=i.getContextAttributes().alpha:f=o;const m=new Uint32Array(4),g=new Int32Array(4);let v=null,_=null;const A=[],y=[];this.domElement=n,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.outputColorSpace=Ot,this._useLegacyLights=!1,this.toneMapping=Fo,this.toneMappingExposure=1;const q=this;let E=!1,T=0,C=0,I=null,R=-1,M=null;const b=new Zt,D=new Zt;let z=null;const O=new Me(0);let W=0,$=n.width,K=n.height,Y=1,B=null,U=null;const F=new Zt(0,0,$,K),k=new Zt(0,0,$,K);let Q=!1;const ce=new X9;let ae=!1,ge=!1,ye=null;const xe=new st,Le=new oe,$e=new L,Qe={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function Be(){return I===null?Y:1}let X=i;function qe(V,ie){for(let me=0;me<V.length;me++){const ne=V[me],pe=n.getContext(ne,ie);if(pe!==null)return pe}return null}try{const V={alpha:!0,depth:r,stencil:s,antialias:a,premultipliedAlpha:l,preserveDrawingBuffer:u,powerPreference:c,failIfMajorPerformanceCaveat:h};if("setAttribute"in n&&n.setAttribute("data-engine",`three.js r${Sa}`),n.addEventListener("webglcontextlost",De,!1),n.addEventListener("webglcontextrestored",ue,!1),n.addEventListener("webglcontextcreationerror",be,!1),X===null){const ie=["webgl2","webgl","experimental-webgl"];if(q.isWebGL1Renderer===!0&&ie.shift(),X=qe(ie,V),X===null)throw qe(ie)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}typeof WebGLRenderingContext<"u"&&X instanceof WebGLRenderingContext&&console.warn("THREE.WebGLRenderer: WebGL 1 support was deprecated in r153 and will be removed in r163."),X.getShaderPrecisionFormat===void 0&&(X.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(V){throw console.error("THREE.WebGLRenderer: "+V.message),V}let ve,Se,_e,it,Ge,He,pt,Vt,Sn,j,N,se,Te,Ee,we,Ye,Ie,le,ot,ut,ft,Ke,Je,Ft;function rn(){ve=new Xie(X),Se=new Gie(X,ve,e),ve.init(Se),Ke=new nz(X,ve,Se),_e=new Ise(X,ve,Se),it=new Jie(X),Ge=new gse,He=new Mse(X,ve,_e,Ge,Se,Ke,it),pt=new Hie(q),Vt=new jie(q),Sn=new lte(X,Se),Je=new zie(X,ve,Sn,Se),j=new Yie(X,Sn,it,Je),N=new nre(X,j,Sn,it),ot=new tre(X,Se,He),Ye=new Qie(Ge),se=new mse(q,pt,Vt,ve,Se,Je,Ye),Te=new Pse(q,Ge),Ee=new vse,we=new Sse(ve,Se),le=new Uie(q,pt,Vt,_e,N,f,l),Ie=new wse(q,N,Se),Ft=new Bse(X,it,Se,_e),ut=new Vie(X,ve,it,Se),ft=new Kie(X,ve,it,Se),it.programs=se.programs,q.capabilities=Se,q.extensions=ve,q.properties=Ge,q.renderLists=Ee,q.shadowMap=Ie,q.state=_e,q.info=it}rn();const J=new bse(q,X);this.xr=J,this.getContext=function(){return X},this.getContextAttributes=function(){return X.getContextAttributes()},this.forceContextLoss=function(){const V=ve.get("WEBGL_lose_context");V&&V.loseContext()},this.forceContextRestore=function(){const V=ve.get("WEBGL_lose_context");V&&V.restoreContext()},this.getPixelRatio=function(){return Y},this.setPixelRatio=function(V){V!==void 0&&(Y=V,this.setSize($,K,!1))}
vendor: 4,713 bytes, line 3611
3611,this.getSize=function(V){return V.set($,K)},this.setSize=function(V,ie,me=!0){if(J.isPresenting){console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting.");return}$=V,K=ie,n.width=Math.floor(V*Y),n.height=Math.floor(ie*Y),me===!0&&(n.style.width=V+"px",n.style.height=ie+"px"),this.setViewport(0,0,V,ie)},this.getDrawingBufferSize=function(V){return V.set($*Y,K*Y).floor()},this.setDrawingBufferSize=function(V,ie,me){$=V,K=ie,Y=me,n.width=Math.floor(V*me),n.height=Math.floor(ie*me),this.setViewport(0,0,V,ie)},this.getCurrentViewport=function(V){return V.copy(b)},this.getViewport=function(V){return V.copy(F)},this.setViewport=function(V,ie,me,ne){V.isVector4?F.set(V.x,V.y,V.z,V.w):F.set(V,ie,me,ne),_e.viewport(b.copy(F).multiplyScalar(Y).floor())},this.getScissor=function(V){return V.copy(k)},this.setScissor=function(V,ie,me,ne){V.isVector4?k.set(V.x,V.y,V.z,V.w):k.set(V,ie,me,ne),_e.scissor(D.copy(k).multiplyScalar(Y).floor())},this.getScissorTest=function(){return Q},this.setScissorTest=function(V){_e.setScissorTest(Q=V)},this.setOpaqueSort=function(V){B=V},this.setTransparentSort=function(V){U=V},this.getClearColor=function(V){return V.copy(le.getClearColor())},this.setClearColor=function(){le.setClearColor.apply(le,arguments)},this.getClearAlpha=function(){return le.getClearAlpha()},this.setClearAlpha=function(){le.setClearAlpha.apply(le,arguments)},this.clear=function(V=!0,ie=!0,me=!0){let ne=0;if(V){let pe=!1;if(I!==null){const je=I.texture.format;pe=je===OT||je===FT||je===kT}if(pe){const je=I.texture.type,mt=je===Rn||je===Ka||je===U1||je===ol||je===DT||je===LT,Tt=le.getClearColor(),Ct=le.getClearAlpha(),jt=Tt.r,yt=Tt.g,Mt=Tt.b;mt?(m[0]=jt,m[1]=yt,m[2]=Mt,m[3]=Ct,X.clearBufferuiv(X.COLOR,0,m)):(g[0]=jt,g[1]=yt,g[2]=Mt,g[3]=Ct,X.clearBufferiv(X.COLOR,0,g))}else ne|=X.COLOR_BUFFER_BIT}ie&&(ne|=X.DEPTH_BUFFER_BIT),me&&(ne|=X.STENCIL_BUFFER_BIT),X.clear(ne)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){n.removeEventListener("webglcontextlost",De,!1),n.removeEventListener("webglcontextrestored",ue,!1),n.removeEventListener("webglcontextcreationerror",be,!1),Ee.dispose(),we.dispose(),Ge.dispose(),pt.dispose(),Vt.dispose(),N.dispose(),Je.dispose(),Ft.dispose(),se.dispose(),J.dispose(),J.removeEventListener("sessionstart",Tn),J.removeEventListener("sessionend",Ns),ye&&(ye.dispose(),ye=null),cr.stop()};function De(V){V.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),E=!0}function ue(){console.log("THREE.WebGLRenderer: Context Restored."),E=!1;const V=it.autoReset,ie=Ie.enabled,me=Ie.autoUpdate,ne=Ie.needsUpdate,pe=Ie.type;rn(),it.autoReset=V,Ie.enabled=ie,Ie.autoUpdate=me,Ie.needsUpdate=ne,Ie.type=pe}function be(V){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",V.statusMessage)}function ze(V){const ie=V.target;ie.removeEventListener("dispose",ze),tn(ie)}function tn(V){bn(V),Ge.remove(V)}function bn(V){const ie=Ge.get(V).programs;ie!==void 0&&(ie.forEach(function(me){se.releaseProgram(me)}),V.isShaderMaterial&&se.releaseShaderCache(V))}this.renderBufferDirect=function(V,ie,me,ne,pe,je){ie===null&&(ie=Qe);const mt=pe.isMesh&&pe.matrixWorld.determinant()<0,Tt=bA(V,ie,me,ne,pe);_e.setMaterial(ne,mt);let Ct=me.index,jt=1;if(ne.wireframe===!0){if(Ct=j.getWireframeAttribute(me),Ct===void 0)return;jt=2}const yt=me.drawRange,Mt=me.attributes.position;let Pn=yt.start*jt,Fn=(yt.start+yt.count)*jt;je!==null&&(Pn=Math.max(Pn,je.start*jt),Fn=Math.min(Fn,(je.start+je.count)*jt)),Ct!==null?(Pn=Math.max(Pn,0),Fn=Math.min(Fn,Ct.count)):Mt!=null&&(Pn=Math.max(Pn,0),Fn=Math.min(Fn,Mt.count));const hs=Fn-Pn;if(hs<0||hs===1/0)return;Je.setup(pe,ne,Tt,me,Ct);let ks,Cn=ut;if(Ct!==null&&(ks=Sn.get(Ct),Cn=ft,Cn.setIndex(ks)),pe.isMesh)ne.wireframe===!0?(_e.setLineWidth(ne.wireframeLinewidth*Be()),Cn.setMode(X.LINES)):Cn.setMode(X.TRIANGLES);else if(pe.isLine){let Rt=ne.linewidth;Rt===void 0&&(Rt=1),_e.setLineWidth(Rt*Be()),pe.isLineSegments?Cn.setMode(X.LINES):pe.isLineLoop?Cn.setMode(X.LINE_LOOP):Cn.setMode(X.LINE_STRIP)}else pe.isPoints?Cn.setMode(X.POINTS):pe.isSprite&&Cn.setMode(X.TRIANGLES);if(pe.isInstancedMesh)Cn.renderInstances(Pn,hs,pe.count);else if(me.isInstancedBufferGeometry){const Rt=me._maxInstanceCount!==void 0?me._maxInstanceCount:1/0,qn=Math.min(me.instanceCount,Rt);Cn.renderInstances(Pn,hs,qn)}else Cn.render(Pn,hs)},this.compile=function(V,ie){function me(ne,pe,je){ne.transparent===!0&&ne.side===ts&&ne.forceSinglePass===!1?(ne.side=Fi,ne.needsUpdate=!0,Ba(ne,pe,je),ne.side=gl,ne.needsUpdate=!0,Ba(ne,pe,je),ne.side=ts):Ba(ne,pe,je)}
vendor: 8,410 bytes, line 3611
3611_=we.get(V),_.init(),y.push(_),V.traverseVisible(function(ne){ne.isLight&&ne.layers.test(ie.layers)&&(_.pushLight(ne),ne.castShadow&&_.pushShadow(ne))}),_.setupLights(q._useLegacyLights),V.traverse(function(ne){const pe=ne.material;if(pe)if(Array.isArray(pe))for(let je=0;je<pe.length;je++){const mt=pe[je];me(mt,V,ne)}else me(pe,V,ne)}),y.pop(),_=null};let ri=null;function Ko(V){ri&&ri(V)}function Tn(){cr.stop()}function Ns(){cr.start()}const cr=new KU;cr.setAnimationLoop(Ko),typeof self<"u"&&cr.setContext(self),this.setAnimationLoop=function(V){ri=V,J.setAnimationLoop(V),V===null?cr.stop():cr.start()},J.addEventListener("sessionstart",Tn),J.addEventListener("sessionend",Ns),this.render=function(V,ie){if(ie!==void 0&&ie.isCamera!==!0){console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");return}if(E===!0)return;V.matrixWorldAutoUpdate===!0&&V.updateMatrixWorld(),ie.parent===null&&ie.matrixWorldAutoUpdate===!0&&ie.updateMatrixWorld(),J.enabled===!0&&J.isPresenting===!0&&(J.cameraAutoUpdate===!0&&J.updateCamera(ie),ie=J.getCamera()),V.isScene===!0&&V.onBeforeRender(q,V,ie,I),_=we.get(V,y.length),_.init(),y.push(_),xe.multiplyMatrices(ie.projectionMatrix,ie.matrixWorldInverse),ce.setFromProjectionMatrix(xe),ge=this.localClippingEnabled,ae=Ye.init(this.clippingPlanes,ge),v=Ee.get(V,A.length),v.init(),A.push(v),T6(V,ie,0,q.sortObjects),v.finish(),q.sortObjects===!0&&v.sort(B,U),this.info.render.frame++,ae===!0&&Ye.beginShadows();const me=_.state.shadowsArray;if(Ie.render(me,V,ie),ae===!0&&Ye.endShadows(),this.info.autoReset===!0&&this.info.reset(),le.render(v,V),_.setupLights(q._useLegacyLights),ie.isArrayCamera){const ne=ie.cameras;for(let pe=0,je=ne.length;pe<je;pe++){const mt=ne[pe];C6(v,V,mt,mt.viewport)}}else C6(v,V,ie);I!==null&&(He.updateMultisampleRenderTarget(I),He.updateRenderTargetMipmap(I)),V.isScene===!0&&V.onAfterRender(q,V,ie),Je.resetDefaultState(),R=-1,M=null,y.pop(),y.length>0?_=y[y.length-1]:_=null,A.pop(),A.length>0?v=A[A.length-1]:v=null};function T6(V,ie,me,ne){if(V.visible===!1)return;if(V.layers.test(ie.layers)){if(V.isGroup)me=V.renderOrder;else if(V.isLOD)V.autoUpdate===!0&&V.update(ie);else if(V.isLight)_.pushLight(V),V.castShadow&&_.pushShadow(V);else if(V.isSprite){if(!V.frustumCulled||ce.intersectsSprite(V)){ne&&$e.setFromMatrixPosition(V.matrixWorld).applyMatrix4(xe);const mt=N.update(V),Tt=V.material;Tt.visible&&v.push(V,mt,Tt,me,$e.z,null)}}else if((V.isMesh||V.isLine||V.isPoints)&&(!V.frustumCulled||ce.intersectsObject(V))){const mt=N.update(V),Tt=V.material;if(ne&&(V.boundingSphere!==void 0?(V.boundingSphere===null&&V.computeBoundingSphere(),$e.copy(V.boundingSphere.center)):(mt.boundingSphere===null&&mt.computeBoundingSphere(),$e.copy(mt.boundingSphere.center)),$e.applyMatrix4(V.matrixWorld).applyMatrix4(xe)),Array.isArray(Tt)){const Ct=mt.groups;for(let jt=0,yt=Ct.length;jt<yt;jt++){const Mt=Ct[jt],Pn=Tt[Mt.materialIndex];Pn&&Pn.visible&&v.push(V,mt,Pn,me,$e.z,Mt)}}else Tt.visible&&v.push(V,mt,Tt,me,$e.z,null)}}const je=V.children;for(let mt=0,Tt=je.length;mt<Tt;mt++)T6(je[mt],ie,me,ne)}function C6(V,ie,me,ne){const pe=V.opaque,je=V.transmissive,mt=V.transparent;_.setupLightsView(me),ae===!0&&Ye.setGlobalState(q.clippingPlanes,me),je.length>0&&w6(pe,je,ie,me),ne&&_e.viewport(b.copy(ne)),pe.length>0&&Cu(pe,ie,me),je.length>0&&Cu(je,ie,me),mt.length>0&&Cu(mt,ie,me),_e.buffers.depth.setTest(!0),_e.buffers.depth.setMask(!0),_e.buffers.color.setMask(!0),_e.setPolygonOffset(!1)}function w6(V,ie,me,ne){const pe=Se.isWebGL2;ye===null&&(ye=new Yt(1,1,{generateMipmaps:!0,type:ve.has("EXT_color_buffer_half_float")?yi:Rn,minFilter:Al,samples:pe?4:0})),q.getDrawingBufferSize(Le),pe?ye.setSize(Le.x,Le.y):ye.setSize(ym(Le.x),ym(Le.y));const je=q.getRenderTarget();q.setRenderTarget(ye),q.getClearColor(O),W=q.getClearAlpha(),W<1&&q.setClearColor(16777215,.5),q.clear();const mt=q.toneMapping;q.toneMapping=Fo,Cu(V,me,ne),He.updateMultisampleRenderTarget(ye),He.updateRenderTargetMipmap(ye);let Tt=!1;for(let Ct=0,jt=ie.length;Ct<jt;Ct++){const yt=ie[Ct],Mt=yt.object,Pn=yt.geometry,Fn=yt.material,hs=yt.group;if(Fn.side===ts&&Mt.layers.test(ne.layers)){const ks=Fn.side;Fn.side=Fi,Fn.needsUpdate=!0,I6(Mt,me,ne,Pn,Fn,hs),Fn.side=ks,Fn.needsUpdate=!0,Tt=!0}}Tt===!0&&(He.updateMultisampleRenderTarget(ye),He.updateRenderTargetMipmap(ye)),q.setRenderTarget(je),q.setClearColor(O,W),q.toneMapping=mt}function Cu(V,ie,me){const ne=ie.isScene===!0?ie.overrideMaterial:null;for(let pe=0,je=V.length;pe<je;pe++){const mt=V[pe],Tt=mt.object,Ct=mt.geometry,jt=ne===null?mt.material:ne,yt=mt.group;Tt.layers.test(me.layers)&&I6(Tt,ie,me,Ct,jt,yt)}}function I6(V,ie,me,ne,pe,je){V.onBeforeRender(q,ie,me,ne,pe,je),V.modelViewMatrix.multiplyMatrices(me.matrixWorldInverse,V.matrixWorld),V.normalMatrix.getNormalMatrix(V.modelViewMatrix),pe.onBeforeRender(q,ie,me,ne,V,je),pe.transparent===!0&&pe.side===ts&&pe.forceSinglePass===!1?(pe.side=Fi,pe.needsUpdate=!0,q.renderBufferDirect(me,ie,ne,pe,V,je),pe.side=gl,pe.needsUpdate=!0,q.renderBufferDirect(me,ie,ne,pe,V,je),pe.side=ts):q.renderBufferDirect(me,ie,ne,pe,V,je),V.onAfterRender(q,ie,me,ne,pe,je)}function Ba(V,ie,me){ie.isScene!==!0&&(ie=Qe);const ne=Ge.get(V),pe=_.state.lights,je=_.state.shadowsArray,mt=pe.state.version,Tt=se.getParameters(V,pe.state,je,ie,me),Ct=se.getProgramCacheKey(Tt);let jt=ne.programs;ne.environment=V.isMeshStandardMaterial?ie.environment:null,ne.fog=ie.fog,ne.envMap=(V.isMeshStandardMaterial?Vt:pt).get(V.envMap||ne.environment),jt===void 0&&(V.addEventListener("dispose",ze),jt=new Map,ne.programs=jt);let yt=jt.get(Ct);if(yt!==void 0){if(ne.currentProgram===yt&&ne.lightsStateVersion===mt)return M6(V,Tt),yt}else Tt.uniforms=se.getUniforms(V),V.onBuild(me,Tt,q),V.onBeforeCompile(Tt,q),yt=se.acquireProgram(Tt,Ct),jt.set(Ct,yt),ne.uniforms=Tt.uniforms;const Mt=ne.uniforms;(!V.isShaderMaterial&&!V.isRawShaderMaterial||V.clipping===!0)&&(Mt.clippingPlanes=Ye.uniform),M6(V,Tt),ne.needsLights=BA(V),ne.lightsStateVersion=mt,ne.needsLights&&(Mt.ambientLightColor.value=pe.state.ambient,Mt.lightProbe.value=pe.state.probe,Mt.directionalLights.value=pe.state.directional,Mt.directionalLightShadows.value=pe.state.directionalShadow,Mt.spotLights.value=pe.state.spot,Mt.spotLightShadows.value=pe.state.spotShadow,Mt.rectAreaLights.value=pe.state.rectArea,Mt.ltc_1.value=pe.state.rectAreaLTC1,Mt.ltc_2.value=pe.state.rectAreaLTC2,Mt.pointLights.value=pe.state.point,Mt.pointLightShadows.value=pe.state.pointShadow,Mt.hemisphereLights.value=pe.state.hemi,Mt.directionalShadowMap.value=pe.state.directionalShadowMap,Mt.directionalShadowMatrix.value=pe.state.directionalShadowMatrix,Mt.spotShadowMap.value=pe.state.spotShadowMap,Mt.spotLightMatrix.value=pe.state.spotLightMatrix,Mt.spotLightMap.value=pe.state.spotLightMap,Mt.pointShadowMap.value=pe.state.pointShadowMap,Mt.pointShadowMatrix.value=pe.state.pointShadowMatrix);const Pn=yt.getUniforms(),Fn=C8.seqWithValue(Pn.seq,Mt);return ne.currentProgram=yt,ne.uniformsList=Fn,yt}function M6(V,ie){const me=Ge.get(V);me.outputColorSpace=ie.outputColorSpace,me.instancing=ie.instancing,me.instancingColor=ie.instancingColor,me.skinning=ie.skinning,me.morphTargets=ie.morphTargets,me.morphNormals=ie.morphNormals,me.morphColors=ie.morphColors,me.morphTargetsCount=ie.morphTargetsCount,me.numClippingPlanes=ie.numClippingPlanes,me.numIntersection=ie.numClipIntersection,me.vertexAlphas=ie.vertexAlphas,me.vertexTangents=ie.vertexTangents,me.toneMapping=ie.toneMapping}function bA(V,ie,me,ne,pe){ie.isScene!==!0&&(ie=Qe),He.resetTextureUnits();const je=ie.fog,mt=ne.isMeshStandardMaterial?ie.environment:null,Tt=I===null?q.outputColorSpace:I.isXRRenderTarget===!0?I.texture.colorSpace:va,Ct=(ne.isMeshStandardMaterial?Vt:pt).get(ne.envMap||mt),jt=ne.vertexColors===!0&&!!me.attributes.color&&me.attributes.color.itemSize===4,yt=!!me.attributes.tangent&&(!!ne.normalMap||ne.anisotropy>0),Mt=!!me.morphAttributes.position,Pn=!!me.morphAttributes.normal,Fn=!!me.morphAttributes.color;let hs=Fo;ne.toneMapped&&(I===null||I.isXRRenderTarget===!0)&&(hs=q.toneMapping);const ks=me.morphAttributes.position||me.morphAttributes.normal||me.morphAttributes.color,Cn=ks!==void 0?ks.length:0,Rt=Ge.get(ne),qn=_.state.lights;if(ae===!0&&(ge===!0||V!==M)){const xr=V===M&&ne.id===R;Ye.setState(ne,V,xr)}let wt=!1;ne.version===Rt.__version?(Rt.needsLights&&Rt.lightsStateVersion!==qn.state.ver
vendor: 4,704 bytes, line 3611
3611sion||Rt.outputColorSpace!==Tt||pe.isInstancedMesh&&Rt.instancing===!1||!pe.isInstancedMesh&&Rt.instancing===!0||pe.isSkinnedMesh&&Rt.skinning===!1||!pe.isSkinnedMesh&&Rt.skinning===!0||pe.isInstancedMesh&&Rt.instancingColor===!0&&pe.instanceColor===null||pe.isInstancedMesh&&Rt.instancingColor===!1&&pe.instanceColor!==null||Rt.envMap!==Ct||ne.fog===!0&&Rt.fog!==je||Rt.numClippingPlanes!==void 0&&(Rt.numClippingPlanes!==Ye.numPlanes||Rt.numIntersection!==Ye.numIntersection)||Rt.vertexAlphas!==jt||Rt.vertexTangents!==yt||Rt.morphTargets!==Mt||Rt.morphNormals!==Pn||Rt.morphColors!==Fn||Rt.toneMapping!==hs||Se.isWebGL2===!0&&Rt.morphTargetsCount!==Cn)&&(wt=!0):(wt=!0,Rt.__version=ne.version);let _r=Rt.currentProgram;wt===!0&&(_r=Ba(ne,ie,pe));let Ui=!1,Ii=!1,Jo=!1;const si=_r.getUniforms(),oi=Rt.uniforms;if(_e.useProgram(_r.program)&&(Ui=!0,Ii=!0,Jo=!0),ne.id!==R&&(R=ne.id,Ii=!0),Ui||M!==V){if(si.setValue(X,"projectionMatrix",V.projectionMatrix),Se.logarithmicDepthBuffer&&si.setValue(X,"logDepthBufFC",2/(Math.log(V.far+1)/Math.LN2)),M!==V&&(M=V,Ii=!0,Jo=!0),ne.isShaderMaterial||ne.isMeshPhongMaterial||ne.isMeshToonMaterial||ne.isMeshStandardMaterial||ne.envMap){const xr=si.map.cameraPosition;xr!==void 0&&xr.setValue(X,$e.setFromMatrixPosition(V.matrixWorld))}(ne.isMeshPhongMaterial||ne.isMeshToonMaterial||ne.isMeshLambertMaterial||ne.isMeshBasicMaterial||ne.isMeshStandardMaterial||ne.isShaderMaterial)&&si.setValue(X,"isOrthographic",V.isOrthographicCamera===!0),(ne.isMeshPhongMaterial||ne.isMeshToonMaterial||ne.isMeshLambertMaterial||ne.isMeshBasicMaterial||ne.isMeshStandardMaterial||ne.isShaderMaterial||ne.isShadowMaterial||pe.isSkinnedMesh)&&si.setValue(X,"viewMatrix",V.matrixWorldInverse)}if(pe.isSkinnedMesh){si.setOptional(X,pe,"bindMatrix"),si.setOptional(X,pe,"bindMatrixInverse");const xr=pe.skeleton;xr&&(Se.floatVertexTextures?(xr.boneTexture===null&&xr.computeBoneTexture(),si.setValue(X,"boneTexture",xr.boneTexture,He),si.setValue(X,"boneTextureSize",xr.boneTextureSize)):console.warn("THREE.WebGLRenderer: SkinnedMesh can only be used with WebGL 2. With WebGL 1 OES_texture_float and vertex textures support is required."))}const wu=me.morphAttributes;if((wu.position!==void 0||wu.normal!==void 0||wu.color!==void 0&&Se.isWebGL2===!0)&&ot.update(pe,me,_r),(Ii||Rt.receiveShadow!==pe.receiveShadow)&&(Rt.receiveShadow=pe.receiveShadow,si.setValue(X,"receiveShadow",pe.receiveShadow)),ne.isMeshGouraudMaterial&&ne.envMap!==null&&(oi.envMap.value=Ct,oi.flipEnvMap.value=Ct.isCubeTexture&&Ct.isRenderTargetTexture===!1?-1:1),Ii&&(si.setValue(X,"toneMappingExposure",q.toneMappingExposure),Rt.needsLights&&PA(oi,Jo),je&&ne.fog===!0&&Te.refreshFogUniforms(oi,je),Te.refreshMaterialUniforms(oi,ne,Y,K,ye),C8.upload(X,Rt.uniformsList,oi,He)),ne.isShaderMaterial&&ne.uniformsNeedUpdate===!0&&(C8.upload(X,Rt.uniformsList,oi,He),ne.uniformsNeedUpdate=!1),ne.isSpriteMaterial&&si.setValue(X,"center",pe.center),si.setValue(X,"modelViewMatrix",pe.modelViewMatrix),si.setValue(X,"normalMatrix",pe.normalMatrix),si.setValue(X,"modelMatrix",pe.matrixWorld),ne.isShaderMaterial||ne.isRawShaderMaterial){const xr=ne.uniformsGroups;for(let J1=0,Z1=xr.length;J1<Z1;J1++)if(Se.isWebGL2){const j2=xr[J1];Ft.update(j2,_r),Ft.bind(j2,_r)}else console.warn("THREE.WebGLRenderer: Uniform Buffer Objects can only be used with WebGL 2.")}return _r}function PA(V,ie){V.ambientLightColor.needsUpdate=ie,V.lightProbe.needsUpdate=ie,V.directionalLights.needsUpdate=ie,V.directionalLightShadows.needsUpdate=ie,V.pointLights.needsUpdate=ie,V.pointLightShadows.needsUpdate=ie,V.spotLights.needsUpdate=ie,V.spotLightShadows.needsUpdate=ie,V.rectAreaLights.needsUpdate=ie,V.hemisphereLights.needsUpdate=ie}function BA(V){return V.isMeshLambertMaterial||V.isMeshToonMaterial||V.isMeshPhongMaterial||V.isMeshStandardMaterial||V.isShadowMaterial||V.isShaderMaterial&&V.lights===!0}this.getActiveCubeFace=function(){return T},this.getActiveMipmapLevel=function(){return C},this.getRenderTarget=function(){return I},this.setRenderTargetTextures=function(V,ie,me){Ge.get(V.texture).__webglTexture=ie,Ge.get(V.depthTexture).__webglTexture=me;const ne=Ge.get(V);ne.__hasExternalTextures=!0,ne.__hasExternalTextures&&(ne.__autoAllocateDepthBuffer=me===void 0,ne.__autoAllocateDepthBuffer||ve.has("WEBGL_multisampled_render_to_texture")===!0&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),ne.__useRenderToTexture=!1))},this.setRenderTargetFramebuffer=function(V,ie){const me=Ge.get(V);me.__webglFramebuffer=ie,me.__useDefaultFramebuffer=ie===void 0},this.setRenderTarget=function(V,ie=0,me=0){I=V,T=ie,C=me;let ne=!0,pe=null,je=!1,mt=!1;
vendor: 38,470 bytes, line 3611
3611if(V){const Ct=Ge.get(V);Ct.__useDefaultFramebuffer!==void 0?(_e.bindFramebuffer(X.FRAMEBUFFER,null),ne=!1):Ct.__webglFramebuffer===void 0?He.setupRenderTarget(V):Ct.__hasExternalTextures&&He.rebindTextures(V,Ge.get(V.texture).__webglTexture,Ge.get(V.depthTexture).__webglTexture);const jt=V.texture;(jt.isData3DTexture||jt.isDataArrayTexture||jt.isCompressedArrayTexture)&&(mt=!0);const yt=Ge.get(V).__webglFramebuffer;V.isWebGLCubeRenderTarget?(Array.isArray(yt[ie])?pe=yt[ie][me]:pe=yt[ie],je=!0):Se.isWebGL2&&V.samples>0&&He.useMultisampledRTT(V)===!1?pe=Ge.get(V).__webglMultisampledFramebuffer:Array.isArray(yt)?pe=yt[me]:pe=yt,b.copy(V.viewport),D.copy(V.scissor),z=V.scissorTest}else b.copy(F).multiplyScalar(Y).floor(),D.copy(k).multiplyScalar(Y).floor(),z=Q;if(_e.bindFramebuffer(X.FRAMEBUFFER,pe)&&Se.drawBuffers&&ne&&_e.drawBuffers(V,pe),_e.viewport(b),_e.scissor(D),_e.setScissorTest(z),je){const Ct=Ge.get(V.texture);X.framebufferTexture2D(X.FRAMEBUFFER,X.COLOR_ATTACHMENT0,X.TEXTURE_CUBE_MAP_POSITIVE_X+ie,Ct.__webglTexture,me)}else if(mt){const Ct=Ge.get(V.texture),jt=ie||0;X.framebufferTextureLayer(X.FRAMEBUFFER,X.COLOR_ATTACHMENT0,Ct.__webglTexture,me||0,jt)}R=-1},this.readRenderTargetPixels=function(V,ie,me,ne,pe,je,mt){if(!(V&&V.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let Tt=Ge.get(V).__webglFramebuffer;if(V.isWebGLCubeRenderTarget&&mt!==void 0&&(Tt=Tt[mt]),Tt){_e.bindFramebuffer(X.FRAMEBUFFER,Tt);try{const Ct=V.texture,jt=Ct.format,yt=Ct.type;if(jt!==mi&&Ke.convert(jt)!==X.getParameter(X.IMPLEMENTATION_COLOR_READ_FORMAT)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}const Mt=yt===yi&&(ve.has("EXT_color_buffer_half_float")||Se.isWebGL2&&ve.has("EXT_color_buffer_float"));if(yt!==Rn&&Ke.convert(yt)!==X.getParameter(X.IMPLEMENTATION_COLOR_READ_TYPE)&&!(yt===kr&&(Se.isWebGL2||ve.has("OES_texture_float")||ve.has("WEBGL_color_buffer_float")))&&!Mt){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}ie>=0&&ie<=V.width-ne&&me>=0&&me<=V.height-pe&&X.readPixels(ie,me,ne,pe,Ke.convert(jt),Ke.convert(yt),je)}finally{const Ct=I!==null?Ge.get(I).__webglFramebuffer:null;_e.bindFramebuffer(X.FRAMEBUFFER,Ct)}}},this.copyFramebufferToTexture=function(V,ie,me=0){const ne=Math.pow(2,-me),pe=Math.floor(ie.image.width*ne),je=Math.floor(ie.image.height*ne);He.setTexture2D(ie,0),X.copyTexSubImage2D(X.TEXTURE_2D,me,0,0,V.x,V.y,pe,je),_e.unbindTexture()},this.copyTextureToTexture=function(V,ie,me,ne=0){const pe=ie.image.width,je=ie.image.height,mt=Ke.convert(me.format),Tt=Ke.convert(me.type);He.setTexture2D(me,0),X.pixelStorei(X.UNPACK_FLIP_Y_WEBGL,me.flipY),X.pixelStorei(X.UNPACK_PREMULTIPLY_ALPHA_WEBGL,me.premultiplyAlpha),X.pixelStorei(X.UNPACK_ALIGNMENT,me.unpackAlignment),ie.isDataTexture?X.texSubImage2D(X.TEXTURE_2D,ne,V.x,V.y,pe,je,mt,Tt,ie.image.data):ie.isCompressedTexture?X.compressedTexSubImage2D(X.TEXTURE_2D,ne,V.x,V.y,ie.mipmaps[0].width,ie.mipmaps[0].height,mt,ie.mipmaps[0].data):X.texSubImage2D(X.TEXTURE_2D,ne,V.x,V.y,mt,Tt,ie.image),ne===0&&me.generateMipmaps&&X.generateMipmap(X.TEXTURE_2D),_e.unbindTexture()},this.copyTextureToTexture3D=function(V,ie,me,ne,pe=0){if(q.isWebGL1Renderer){console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");return}const je=V.max.x-V.min.x+1,mt=V.max.y-V.min.y+1,Tt=V.max.z-V.min.z+1,Ct=Ke.convert(ne.format),jt=Ke.convert(ne.type);let yt;if(ne.isData3DTexture)He.setTexture3D(ne,0),yt=X.TEXTURE_3D;else if(ne.isDataArrayTexture)He.setTexture2DArray(ne,0),yt=X.TEXTURE_2D_ARRAY;else{console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");return}X.pixelStorei(X.UNPACK_FLIP_Y_WEBGL,ne.flipY),X.pixelStorei(X.UNPACK_PREMULTIPLY_ALPHA_WEBGL,ne.premultiplyAlpha),X.pixelStorei(X.UNPACK_ALIGNMENT,ne.unpackAlignment);const Mt=X.getParameter(X.UNPACK_ROW_LENGTH),Pn=X.getParameter(X.UNPACK_IMAGE_HEIGHT),Fn=X.getParameter(X.UNPACK_SKIP_PIXELS),hs=X.getParameter(X.UNPACK_SKIP_ROWS),ks=X.getParameter(X.UNPACK_SKIP_IMAGES),Cn=me.isCompressedTexture?me.mipmaps[0]:me.image;X.pixelStorei(X.UNPACK_ROW_LENGTH,Cn.width),X.pixelStorei(X.UNPACK_IMAGE_HEIGHT,Cn.height),X.pixelStorei(X.UNPACK_SKIP_PIXELS,V.min.x),X.pixelStorei(X.UNPACK_SKIP_ROWS,V.min.y),X.pixelStorei(X.UNPACK_SKIP_IMAGES,V.min.z),me.isDataTexture||me.isData3DTexture?X.texSubImage3D(yt,pe,ie.x,ie.y,ie.z,je,mt,Tt,Ct,jt,Cn.data):me.isCompressedArrayTexture?(console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture."),X.compressedTexSubImage3D(yt,pe,ie.x,ie.y,ie.z,je,mt,Tt,Ct,Cn.data)):X.texSubImage3D(yt,pe,ie.x,ie.y,ie.z,je,mt,Tt,Ct,jt,Cn),X.pixelStorei(X.UNPACK_ROW_LENGTH,Mt),X.pixelStorei(X.UNPACK_IMAGE_HEIGHT,Pn),X.pixelStorei(X.UNPACK_SKIP_PIXELS,Fn),X.pixelStorei(X.UNPACK_SKIP_ROWS,hs),X.pixelStorei(X.UNPACK_SKIP_IMAGES,ks),pe===0&&ne.generateMipmaps&&X.generateMipmap(yt),_e.unbindTexture()},this.initTexture=function(V){V.isCubeTexture?He.setTextureCube(V,0):V.isData3DTexture?He.setTexture3D(V,0):V.isDataArrayTexture||V.isCompressedArrayTexture?He.setTexture2DArray(V,0):He.setTexture2D(V,0),_e.unbindTexture()},this.resetState=function(){T=0,C=0,I=null,_e.reset(),Je.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return Ja}get physicallyCorrectLights(){return console.warn("THREE.WebGLRenderer: The property .physicallyCorrectLights has been removed. Set renderer.useLegacyLights instead."),!this.useLegacyLights}set physicallyCorrectLights(e){console.warn("THREE.WebGLRenderer: The property .physicallyCorrectLights has been removed. Set renderer.useLegacyLights instead."),this.useLegacyLights=!e}get outputEncoding(){return console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."),this.outputColorSpace===Ot?al:B4}set outputEncoding(e){console.warn("THREE.WebGLRenderer: Property .outputEncoding has been removed. Use .outputColorSpace instead."),this.outputColorSpace=e===al?Ot:va}get useLegacyLights(){return console.warn("THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733."),this._useLegacyLights}set useLegacyLights(e){console.warn("THREE.WebGLRenderer: The property .useLegacyLights has been deprecated. Migrate your lighting according to the following guide: https://discourse.threejs.org/t/updates-to-lighting-in-three-js-r155/53733."),this._useLegacyLights=e}}class rz extends jT{}rz.prototype.isWebGL1Renderer=!0;class K9{constructor(e,n=25e-5){this.isFogExp2=!0,this.name="",this.color=new Me(e),this.density=n}clone(){return new K9(this.color,this.density)}toJSON(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}}class J9{constructor(e,n=1,i=1e3){this.isFog=!0,this.name="",this.color=new Me(e),this.near=n,this.far=i}clone(){return new J9(this.color,this.near,this.far)}toJSON(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}}class K0 extends mn{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,n){return super.copy(e,n),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){const n=super.toJSON(e);return this.fog!==null&&(n.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(n.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(n.object.backgroundIntensity=this.backgroundIntensity),n}}class Z9{constructor(e,n){this.isInterleavedBuffer=!0,this.array=e,this.stride=n,this.count=e!==void 0?e.length/n:0,this.usage=Bd,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=Zs()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,n,i){e*=this.stride,i*=n.stride;for(let r=0,s=this.stride;r<s;r++)this.array[e+r]=n.array[i+r];return this}set(e,n=0){return this.array.set(e,n),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Zs()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const n=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),i=new this.constructor(n,this.stride);return i.setUsage(this.usage),i}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){return e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Zs()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}const Xr=new L;class E1{constructor(e,n,i,r=!1){this.isInterleavedBufferAttribute=!0,this.name="",this.data=e,this.itemSize=n,this.offset=i,this.normalized=r}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let n=0,i=this.data.count;n<i;n++)Xr.fromBufferAttribute(this,n),Xr.applyMatrix4(e),this.setXYZ(n,Xr.x,Xr.y,Xr.z);return this}applyNormalMatrix(e){for(let n=0,i=this.count;n<i;n++)Xr.fromBufferAttribute(this,n),Xr.applyNormalMatrix(e),this.setXYZ(n,Xr.x,Xr.y,Xr.z);return this}transformDirection(e){for(let n=0,i=this.count;n<i;n++)Xr.fromBufferAttribute(this,n),Xr.transformDirection(e),this.setXYZ(n,Xr.x,Xr.y,Xr.z);return this}setX(e,n){return this.normalized&&(n=Qt(n,this.array)),this.data.array[e*this.data.stride+this.offset]=n,this}setY(e,n){return this.normalized&&(n=Qt(n,this.array)),this.data.array[e*this.data.stride+this.offset+1]=n,this}setZ(e,n){return this.normalized&&(n=Qt(n,this.array)),this.data.array[e*this.data.stride+this.offset+2]=n,this}setW(e,n){return this.normalized&&(n=Qt(n,this.array)),this.data.array[e*this.data.stride+this.offset+3]=n,this}getX(e){let n=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(n=ys(n,this.array)),n}getY(e){let n=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(n=ys(n,this.array)),n}getZ(e){let n=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(n=ys(n,this.array)),n}getW(e){let n=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(n=ys(n,this.array)),n}setXY(e,n,i){return e=e*this.data.stride+this.offset,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=i,this}setXYZ(e,n,i,r){return e=e*this.data.stride+this.offset,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=i,this.data.array[e+2]=r,this}setXYZW(e,n,i,r,s){return e=e*this.data.stride+this.offset,this.normalized&&(n=Qt(n,this.array),i=Qt(i,this.array),r=Qt(r,this.array),s=Qt(s,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=i,this.data.array[e+2]=r,this.data.array[e+3]=s,this}clone(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.");const n=[];for(let i=0;i<this.count;i++){const r=i*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)n.push(this.data.array[r+s])}return new pn(new this.array.constructor(n),this.itemSize,this.normalized)}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.clone(e)),new E1(e.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.");const n=[];for(let i=0;i<this.count;i++){const r=i*this.data.stride+this.offset;for(let s=0;s<this.itemSize;s++)n.push(this.data.array[r+s])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:n,normalized:this.normalized}}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}class XT extends Ji{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new Me(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}}let M3;const Mf=new L,R3=new L,b3=new L,P3=new oe,Rf=new oe,sz=new st,o7=new L,bf=new L,a7=new L,lP=new oe,By=new oe,uP=new oe;class oz extends mn{constructor(e){if(super(),this.isSprite=!0,this.type="Sprite",M3===void 0){M3=new Bt;const n=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),i=new Z9(n,5);M3.setIndex([0,1,2,0,2,3]),M3.setAttribute("position",new E1(i,3,0,!1)),M3.setAttribute("uv",new E1(i,2,3,!1))}this.geometry=M3,this.material=e!==void 0?e:new XT,this.center=new oe(.5,.5)}raycast(e,n){e.camera===null&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.'),R3.setFromMatrixScale(this.matrixWorld),sz.copy(e.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse,this.matrixWorld),b3.setFromMatrixPosition(this.modelViewMatrix),e.camera.isPerspectiveCamera&&this.material.sizeAttenuation===!1&&R3.multiplyScalar(-b3.z);const i=this.material.rotation;let r,s;i!==0&&(s=Math.cos(i),r=Math.sin(i));const o=this.center;l7(o7.set(-.5,-.5,0),b3,o,R3,r,s),l7(bf.set(.5,-.5,0),b3,o,R3,r,s),l7(a7.set(.5,.5,0),b3,o,R3,r,s),lP.set(0,0),By.set(1,0),uP.set(1,1);let a=e.ray.intersectTriangle(o7,bf,a7,!1,Mf);if(a===null&&(l7(bf.set(-.5,.5,0),b3,o,R3,r,s),By.set(0,1),a=e.ray.intersectTriangle(o7,a7,bf,!1,Mf),a===null))return;const l=e.ray.origin.distanceTo(Mf);l<e.near||l>e.far||n.push({distance:l,point:Mf.clone(),uv:As.getInterpolation(Mf,o7,bf,a7,lP,By,uP,new oe),face:null,object:this})}copy(e,n){return super.copy(e,n),e.center!==void 0&&this.center.copy(e.center),this.material=e.material,this}}function l7(t,e,n,i,r,s){P3.subVectors(t,n).addScalar(.5).multiply(i),r!==void 0?(Rf.x=s*P3.x-r*P3.y,Rf.y=r*P3.x+s*P3.y):Rf.copy(P3),t.copy(e),t.x+=Rf.x,t.y+=Rf.y,t.applyMatrix4(sz)}const u7=new L,cP=new L;class az extends mn{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(e){super.copy(e,!1);const n=e.levels;for(let i=0,r=n.length;i<r;i++){const s=n[i];this.addLevel(s.object.clone(),s.distance,s.hysteresis)}return this.autoUpdate=e.autoUpdate,this}addLevel(e,n=0,i=0){n=Math.abs(n);const r=this.levels;let s;for(s=0;s<r.length&&!(n<r[s].distance);s++);return r.splice(s,0,{distance:n,hysteresis:i,object:e}),this.add(e),this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(e){const n=this.levels;if(n.length>0){let i,r;for(i=1,r=n.length;i<r;i++){let s=n[i].distance;if(n[i].object.visible&&(s-=s*n[i].hysteresis),e<s)break}return n[i-1].object}return null}raycast(e,n){if(this.levels.length>0){u7.setFromMatrixPosition(this.matrixWorld);const r=e.ray.origin.distanceTo(u7);this.getObjectForDistance(r).raycast(e,n)}}update(e){const n=this.levels;if(n.length>1){u7.setFromMatrixPosition(e.matrixWorld),cP.setFromMatrixPosition(this.matrixWorld);const i=u7.distanceTo(cP)/e.zoom;n[0].object.visible=!0;let r,s;for(r=1,s=n.length;r<s;r++){let o=n[r].distance;if(n[r].object.visible&&(o-=o*n[r].hysteresis),i>=o)n[r-1].object.visible=!1,n[r].object.visible=!0;else break}for(this._currentLevel=r-1;r<s;r++)n[r].object.visible=!1}}toJSON(e){const n=super.toJSON(e);this.autoUpdate===!1&&(n.object.autoUpdate=!1),n.object.levels=[];const i=this.levels;for(let r=0,s=i.length;r<s;r++){const o=i[r];n.object.levels.push({object:o.object.uuid,distance:o.distance,hysteresis:o.hysteresis})}return n}}const hP=new L,fP=new Zt,dP=new Zt,Lse=new L,pP=new st,B3=new L,Dy=new jo,mP=new st,Ly=new I2;class lz extends yn{constructor(e,n){super(e,n),this.isSkinnedMesh=!0,this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new st,this.bindMatrixInverse=new st,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){const e=this.geometry;this.boundingBox===null&&(this.boundingBox=new Ta),this.boundingBox.makeEmpty();const n=e.getAttribute("position");for(let i=0;i<n.count;i++)B3.fromBufferAttribute(n,i),this.applyBoneTransform(i,B3),this.boundingBox.expandByPoint(B3)}computeBoundingSphere(){const e=this.geometry;this.boundingSphere===null&&(this.boundingSphere=new jo),this.boundingSphere.makeEmpty();const n=e.getAttribute("position");for(let i=0;i<n.count;i++)B3.fromBufferAttribute(n,i),this.applyBoneTransform(i,B3),this.boundingSphere.expandByPoint(B3)}copy(e,n){return super.copy(e,n),this.bindMode=e.bindMode,this.bindMatrix.copy(e.bindMatrix),this.bindMatrixInverse.copy(e.bindMatrixInverse),this.skeleton=e.skeleton,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}raycast(e,n){const i=this.material,r=this.matrixWorld;i!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Dy.copy(this.boundingSphere),Dy.applyMatrix4(r),e.ray.intersectsSphere(Dy)!==!1&&(mP.copy(r).invert(),Ly.copy(e.ray).applyMatrix4(mP),!(this.boundingBox!==null&&Ly.intersectsBox(this.boundingBox)===!1)&&this._computeIntersections(e,n,Ly)))}getVertexPosition(e,n){return super.getVertexPosition(e,n),this.applyBoneTransform(e,n),n}bind(e,n){this.skeleton=e,n===void 0&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),n=this.matrixWorld),this.bindMatrix.copy(n),this.bindMatrixInverse.copy(n).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const e=new Zt,n=this.geometry.attributes.skinWeight;for(let i=0,r=n.count;i<r;i++){e.fromBufferAttribute(n,i);const s=1/e.manhattanLength();s!==1/0?e.multiplyScalar(s):e.set(1,0,0,0),n.setXYZW(i,e.x,e.y,e.z,e.w)}}updateMatrixWorld(e){super.updateMatrixWorld(e),this.bindMode==="attached"?this.bindMatrixInverse.copy(this.matrixWorld).invert():this.bindMode==="detached"?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)}applyBoneTransform(e,n){const i=this.skeleton,r=this.geometry;fP.fromBufferAttribute(r.attributes.skinIndex,e),dP.fromBufferAttribute(r.attributes.skinWeight,e),hP.copy(n).applyMatrix4(this.bindMatrix),n.set(0,0,0);for(let s=0;s<4;s++){const o=dP.getComponent(s);if(o!==0){const a=fP.getComponent(s);pP.multiplyMatrices(i.bones[a].matrixWorld,i.boneInverses[a]),n.addScaledVector(Lse.copy(hP).applyMatrix4(pP),o)}}return n.applyMatrix4(this.bindMatrixInverse)}boneTransform(e,n){return console.warn("THREE.SkinnedMesh: .boneTransform() was renamed to .applyBoneTransform() in r151."),this.applyBoneTransform(e,n)}}class YT extends mn{constructor(){super(),this.isBone=!0,this.type="Bone"}}class ll extends Gn{constructor(e=null,n=1,i=1,r,s,o,a,l,u=At,c=At,h,f){super(null,o,a,l,u,c,r,s,h,f),this.isDataTexture=!0,this.image={data:e,width:n,height:i},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}const gP=new st,Nse=new st;class eg{constructor(e=[],n=[]){this.uuid=Zs(),this.bones=e.slice(0),this.boneInverses=n,this.boneMatrices=null,this.boneTexture=null,this.boneTextureSize=0,this.init()}init(){const e=this.bones,n=this.boneInverses;if(this.boneMatrices=new Float32Array(e.length*16),n.length===0)this.calculateInverses();else if(e.length!==n.length){console.warn("THREE.Skeleton: Number of inverse bone matrices does not match amount of bones."),this.boneInverses=[];for(let i=0,r=this.bones.length;i<r;i++)this.boneInverses.push(new st)}}calculateInverses(){this.boneInverses.length=0;for(let e=0,n=this.bones.length;e<n;e++){const i=new st;this.bones[e]&&i.copy(this.bones[e].matrixWorld).invert(),this.boneInverses.push(i)}}pose(){for(let e=0,n=this.bones.length;e<n;e++){const i=this.bones[e];i&&i.matrixWorld.copy(this.boneInverses[e]).invert()}for(let e=0,n=this.bones.length;e<n;e++){const i=this.bones[e];i&&(i.parent&&i.parent.isBone?(i.matrix.copy(i.parent.matrixWorld).invert(),i.matrix.multiply(i.matrixWorld)):i.matrix.copy(i.matrixWorld),i.matrix.decompose(i.position,i.quaternion,i.scale))}}update(){const e=this.bones,n=this.boneInverses,i=this.boneMatrices,r=this.boneTexture;for(let s=0,o=e.length;s<o;s++){const a=e[s]?e[s].matrixWorld:Nse;gP.multiplyMatrices(a,n[s]),gP.toArray(i,s*16)}r!==null&&(r.needsUpdate=!0)}clone(){return new eg(this.bones,this.boneInverses)}computeBoneTexture(){let e=Math.sqrt(this.bones.length*4);e=QU(e),e=Math.max(e,4);const n=new Float32Array(e*e*4);n.set(this.boneMatrices);const i=new ll(n,e,e,mi,kr);return i.needsUpdate=!0,this.boneMatrices=n,this.boneTexture=i,this.boneTextureSize=e,this}getBoneByName(e){for(let n=0,i=this.bones.length;n<i;n++){const r=this.bones[n];if(r.name===e)return r}}dispose(){this.boneTexture!==null&&(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(e,n){this.uuid=e.uuid;for(let i=0,r=e.bones.length;i<r;i++){const s=e.bones[i];let o=n[s];o===void 0&&(console.warn("THREE.Skeleton: No bone found with UUID:",s),o=new YT),this.bones.push(o),this.boneInverses.push(new st().fromArray(e.boneInverses[i]))}return this.init(),this}toJSON(){const e={metadata:{version:4.6,type:"Skeleton",generator:"Skeleton.toJSON"},bones:[],boneInverses:[]};e.uuid=this.uuid;const n=this.bones,i=this.boneInverses;for(let r=0,s=n.length;r<s;r++){const o=n[r];e.bones.push(o.uuid);const a=i[r];e.boneInverses.push(a.toArray())}return e}}class J0 extends pn{constructor(e,n,i,r=1){super(e,n,i),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=r}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){const e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}}const D3=new st,AP=new st,c7=[],vP=new Ta,kse=new st,Pf=new yn,Bf=new jo;class uz extends yn{constructor(e,n,i){super(e,n),this.isInstancedMesh=!0,this.instanceMatrix=new J0(new Float32Array(i*16),16),this.instanceColor=null,this.count=i,this.boundingBox=null,this.boundingSphere=null;for(let r=0;r<i;r++)this.setMatrixAt(r,kse)}computeBoundingBox(){const e=this.geometry,n=this.count;this.boundingBox===null&&(this.boundingBox=new Ta),e.boundingBox===null&&e.computeBoundingBox(),this.boundingBox.makeEmpty();for(let i=0;i<n;i++)this.getMatrixAt(i,D3),vP.copy(e.boundingBox).applyMatrix4(D3),this.boundingBox.union(vP)}computeBoundingSphere(){const e=this.geometry,n=this.count;this.boundingSphere===null&&(this.boundingSphere=new jo),e.boundingSphere===null&&e.computeBoundingSphere(),this.boundingSphere.makeEmpty();for(let i=0;i<n;i++)this.getMatrixAt(i,D3),Bf.copy(e.boundingSphere).applyMatrix4(D3),this.boundingSphere.union(Bf)}copy(e,n){return super.copy(e,n),this.instanceMatrix.copy(e.instanceMatrix),e.instanceColor!==null&&(this.instanceColor=e.instanceColor.clone()),this.count=e.count,e.boundingBox!==null&&(this.boundingBox=e.boundingBox.clone()),e.boundingSphere!==null&&(this.boundingSphere=e.boundingSphere.clone()),this}getColorAt(e,n){n.fromArray(this.instanceColor.array,e*3)}getMatrixAt(e,n){n.fromArray(this.instanceMatrix.array,e*16)}raycast(e,n){const i=this.matrixWorld,r=this.count;if(Pf.geometry=this.geometry,Pf.material=this.material,Pf.material!==void 0&&(this.boundingSphere===null&&this.computeBoundingSphere(),Bf.copy(this.boundingSphere),Bf.applyMatrix4(i),e.ray.intersectsSphere(Bf)!==!1))for(let s=0;s<r;s++){this.getMatrixAt(s,D3),AP.multiplyMatrices(i,D3),Pf.matrixWorld=AP,Pf.raycast(e,c7);for(let o=0,a=c7.length;o<a;o++){const l=c7[o];l.instanceId=s,l.object=this,n.push(l)}c7.length=0}}setColorAt(e,n){this.instanceColor===null&&(this.instanceColor=new J0(new Float32Array(this.instanceMatrix.count*3),3)),n.toArray(this.instanceColor.array,e*3)}setMatrixAt(e,n){n.toArray(this.instanceMatrix.array,e*16)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:"dispose"})}}class ls extends Ji{constructor(e){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new Me(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}}const yP=new L,qP=new L,_P=new st,Ny=new I2,h7=new jo;class Lc extends mn{constructor(e=new Bt,n=new ls){super(),this.isLine=!0,this.type="Line",this.geometry=e,this.material=n,this.updateMorphTargets()}copy(e,n){return super.copy(e,n),this.material=e.material,this.geometry=e.geometry,this}computeLineDistances(){const e=this.geometry;if(e.index===null){const n=e.attributes.position,i=[0];for(let r=1,s=n.count;r<s;r++)yP.fromBufferAttribute(n,r-1),qP.fromBufferAttribute(n,r),i[r]=i[r-1],i[r]+=yP.distanceTo(qP);e.setAttribute("lineDistance",new tt(i,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");return this}raycast(e,n){const i=this.geometry,r=this.matrixWorld,s=e.params.Line.threshold,o=i.drawRange;if(i.boundingSphere===null&&i.computeBoundingSphere(),h7.copy(i.boundingSphere),h7.applyMatrix4(r),h7.radius+=s,e.ray.intersectsSphere(h7)===!1)return;_P.copy(r).invert(),Ny.copy(e.ray).applyMatrix4(_P);const a=s/((this.scale.x+this.scale.y+this.scale.z)/3),l=a*a,u=new L,c=new L,h=new L,f=new L,m=this.isLineSegments?2:1,g=i.index,_=i.attributes.position;if(g!==null){const A=Math.max(0,o.start),y=Math.min(g.count,o.start+o.count);for(let q=A,E=y-1;q<E;q+=m){const T=g.getX(q),C=g.getX(q+1);if(u.fromBufferAttribute(_,T),c.fromBufferAttribute(_,C),Ny.distanceSqToSegment(u,c,f,h)>l)continue;f.applyMatrix4(this.matrixWorld);const R=e.ray.origin.distanceTo(f);R<e.near||R>e.far||n.push({distance:R,point:h.clone().applyMatrix4(this.matrixWorld),index:q,face:null,faceIndex:null,object:this})}}else{const A=Math.max(0,o.start),y=Math.min(_.count,o.start+o.count);for(let q=A,E=y-1;q<E;q+=m){if(u.fromBufferAttribute(_,q),c.fromBufferAttribute(_,q+1),Ny.distanceSqToSegment(u,c,f,h)>l)continue;f.applyMatrix4(this.matrixWorld);const C=e.ray.origin.distanceTo(f);C<e.near||C>e.far||n.push({distance:C,point:h.clone().applyMatrix4(this.matrixWorld),index:q,face:null,faceIndex:null,object:this})}}}updateMorphTargets(){const n=this.geometry.morphAttributes,i=Object.keys(n);if(i.length>0){const r=n[i[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=r.length;s<o;s++){const a=r[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[a]=s}}}}}const xP=new L,EP=new L;class _l extends Lc{constructor(e,n){super(e,n),this.isLineSegments=!0,this.type="LineSegments"}computeLineDistances(){const e=this.geometry;if(e.index===null){const n=e.attributes.position,i=[];for(let r=0,s=n.count;r<s;r+=2)xP.fromBufferAttribute(n,r),EP.fromBufferAttribute(n,r+1),i[r]=r===0?0:i[r-1],i[r+1]=i[r]+xP.distanceTo(EP);e.setAttribute("lineDistance",new tt(i,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");return this}}class cz extends Lc{constructor(e,n){super(e,n),this.isLineLoop=!0,this.type="LineLoop"}}class KT extends Ji{constructor(e){super(),this.isPointsMaterial=!0,this.type="PointsMaterial",this.color=new Me(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}}const SP=new st,kx=new I2,f7=new jo,d7=new L;class JT extends mn{constructor(e=new Bt,n=new KT){super(),this.isPoints=!0,this.type="Points",this.geometry=e,this.material=n,this.updateMorphTargets()}copy(e,n){return super.copy(e,n),this.material=e.material,this.geometry=e.geometry,this}raycast(e,n){const i=this.geometry,r=this.matrixWorld,s=e.params.Points.threshold,o=i.drawRange;if(i.boundingSphere===null&&i.computeBoundingSphere(),f7.copy(i.boundingSphere),f7.applyMatrix4(r),f7.radius+=s,e.ray.intersectsSphere(f7)===!1)return;SP.copy(r).invert(),kx.copy(e.ray).applyMatrix4(SP);const a=s/((this.scale.x+this.scale.y+this.scale.z)/3),l=a*a,u=i.index,h=i.attributes.position;if(u!==null){const f=Math.max(0,o.start),m=Math.min(u.count,o.start+o.count);for(let g=f,v=m;g<v;g++){const _=u.getX(g);d7.fromBufferAttribute(h,_),TP(d7,_,l,r,e,n,this)}}else{const f=Math.max(0,o.start),m=Math.min(h.count,o.start+o.count);for(let g=f,v=m;g<v;g++)d7.fromBufferAttribute(h,g),TP(d7,g,l,r,e,n,this)}}updateMorphTargets(){const n=this.geometry.morphAttributes,i=Object.keys(n);if(i.length>0){const r=n[i[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,o=r.length;s<o;s++){const a=r[s].name||String(s);this.morphTargetInfluences.push(0),this.morphTargetDictionary[a]=s}}}}}function TP(t,e,n,i,r,s,o){const a=kx.distanceSqToPoint(t);if(a<n){const l=new L;kx.closestPointToPoint(t,l),l.applyMatrix4(i);const u=r.ray.origin.distanceTo(l);if(u<r.near||u>r.far)return;s.push({distance:u,distanceToRay:Math.sqrt(a),point:l,index:e,face:null,object:o})}}class Fse extends Gn{constructor(e,n,i,r,s,o,a,l,u){super(e,n,i,r,s,o,a,l,u),this.isVideoTexture=!0,this.minFilter=o!==void 0?o:_n,this.magFilter=s!==void 0?s:_n,this.generateMipmaps=!1;const c=this;function h(){c.needsUpdate=!0,e.requestVideoFrameCallback(h)}"requestVideoFrameCallback"in e&&e.requestVideoFrameCallback(h)}clone(){return new this.constructor(this.image).copy(this)}update(){const e=this.image;"requestVideoFrameCallback"in e===!1&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}class Ose extends Gn{constructor(e,n){super({width:e,height:n}),this.isFramebufferTexture=!0,this.magFilter=At,this.minFilter=At,this.generateMipmaps=!1,this.needsUpdate=!0}}class Nc extends Gn{constructor(e,n,i,r,s,o,a,l,u,c,h,f){super(null,o,a,l,u,c,r,s,h,f),this.isCompressedTexture=!0,this.image={width:n,height:i},this.mipmaps=e,this.flipY=!1,this.generateMipmaps=!1}}let Use=class extends Nc{constructor(e,n,i,r,s,o){super(e,n,i,s,o),this.isCompressedArrayTexture=!0,this.image.depth=r,this.wrapR=pi}};class zse extends Nc{constructor(e,n,i){super(void 0,e[0].width,e[0].height,n,i,cu),this.isCompressedCubeTexture=!0,this.isCubeTexture=!0,this.image=e}}class Vse extends Gn{constructor(e,n,i,r,s,o,a,l,u){super(e,n,i,r,s,o,a,l,u),this.isCanvasTexture=!0,this.needsUpdate=!0}}class Ca{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(e,n){const i=this.getUtoTmapping(e);return this.getPoint(i,n)}getPoints(e=5){const n=[];for(let i=0;i<=e;i++)n.push(this.getPoint(i/e));return n}getSpacedPoints(e=5){const n=[];for(let i=0;i<=e;i++)n.push(this.getPointAt(i/e));return n}getLength(){const e=this.getLengths();return e[e.length-1]}getLengths(e=this.arcLengthDivisions){if(this.cacheArcLengths&&this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;const n=[];let i,r=this.getPoint(0),s=0;n.push(0);for(let o=1;o<=e;o++)i=this.getPoint(o/e),s+=i.distanceTo(r),n.push(s),r=i;return this.cacheArcLengths=n,n}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(e,n){const i=this.getLengths();let r=0;const s=i.length;let o;n?o=n:o=e*i[s-1];let a=0,l=s-1,u;for(;a<=l;)if(r=Math.floor(a+(l-a)/2),u=i[r]-o,u<0)a=r+1;else if(u>0)l=r-1;else{l=r;break}if(r=l,i[r]===o)return r/(s-1);const c=i[r],f=i[r+1]-c,m=(o-c)/f;return(r+m)/(s-1)}getTangent(e,n){let r=e-1e-4,s=e+1e-4;r<0&&(r=0),s>1&&(s=1);const o=this.getPoint(r),a=this.getPoint(s),l=n||(o.isVector2?new oe:new L);return l.copy(a).sub(o).normalize(),l}getTangentAt(e,n){const i=this.getUtoTmapping(e);return this.getTangent(i,n)}computeFrenetFrames(e,n){const i=new L,r=[],s=[],o=[],a=new L,l=new st;for(let m=0;m<=e;m++){const g=m/e;r[m]=this.getTangentAt(g,new L)}s[0]=new L,o[0]=new L;let u=Number.MAX_VALUE;const c=Math.abs(r[0].x),h=Math.abs(r[0].y),f=Math.abs(r[0].z);c<=u&&(u=c,i.set(1,0,0)),h<=u&&(u=h,i.set(0,1,0)),f<=u&&i.set(0,0,1),a.crossVectors(r[0],i).normalize(),s[0].crossVectors(r[0],a),o[0].crossVectors(r[0],s[0]);for(let m=1;m<=e;m++){if(s[m]=s[m-1].clone(),o[m]=o[m-1].clone(),a.crossVectors(r[m-1],r[m]),a.length()>Number.EPSILON){a.normalize();const g=Math.acos(ci(r[m-1].dot(r[m]),-1,1));s[m].applyMatrix4(l.makeRotationAxis(a,g))}o[m].crossVectors(r[m],s[m])}if(n===!0){let m=Math.acos(ci(s[0].dot(s[e]),-1,1));m/=e,r[0].dot(a.crossVectors(s[0],s[e]))>0&&(m=-m);for(let g=1;g<=e;g++)s[g].applyMatrix4(l.makeRotationAxis(r[g],m*g)),o[g].crossVectors(r[g],s[g])}return{tangents:r,normals:s,binormals:o}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){const e={metadata:{version:4.6,type:"Curve",generator:"Curve.toJSON"}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}}class tg extends Ca{constructor(e=0,n=0,i=1,r=1,s=0,o=Math.PI*2,a=!1,l=0){super(),this.isEllipseCurve=!0,this.type="EllipseCurve",this.aX=e,this.aY=n,this.xRadius=i,this.yRadius=r,this.aStartAngle=s,this.aEndAngle=o,this.aClockwise=a,this.aRotation=l}getPoint(e,n){const i=n||new oe,r=Math.PI*2;let s=this.aEndAngle-this.aStartAngle;const o=Math.abs(s)<Number.EPSILON;for(;s<0;)s+=r;for(;s>r;)s-=r;s<Number.EPSILON&&(o?s=0:s=r),this.aClockwise===!0&&!o&&(s===r?s=-r:s=s-r);const a=this.aStartAngle+e*s;let l=this.aX+this.xRadius*Math.cos(a),u=this.aY+this.yRadius*Math.sin(a);if(this.aRotation!==0){const c=Math.cos(this.aRotation),h=Math.sin(this.aRotation),f=l-this.aX,m=u-this.aY;l=f*c-m*h+this.aX,u=f*h+m*c+this.aY}return i.set(l,u)}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(){const 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}}class hz extends tg{constructor(e,n,i,r,s,o){super(e,n,i,i,r,s,o),this.isArcCurve=!0,this.type="ArcCurve"}}function ZT(){let t=0,e=0,n=0,i=0;function r(s,o,a,l){t=s,e=a,n=-3*s+3*o-2*a-l,i=2*s-2*o+a+l}return{initCatmullRom:function(s,o,a,l,u){r(o,a,u*(a-s),u*(l-o))},initNonuniformCatmullRom:function(s,o,a,l,u,c,h){let f=(o-s)/u-(a-s)/(u+c)+(a-o)/c,m=(a-o)/c-(l-o)/(c+h)+(l-a)/h;f*=c,m*=c,r(o,a,f,m)},calc:function(s){const o=s*s,a=o*s;return t+e*s+n*o+i*a}}}const p7=new L,ky=new ZT,Fy=new ZT,Oy=new ZT;class fz extends Ca{constructor(e=[],n=!1,i="centripetal",r=.5){super(),this.isCatmullRomCurve3=!0,this.type="CatmullRomCurve3",this.points=e,this.closed=n,this.curveType=i,this.tension=r}getPoint(e,n=new L){const i=n,r=this.points,s=r.length,o=(s-(this.closed?0:1))*e;let a=Math.floor(o),l=o-a;this.closed?a+=a>0?0:(Math.floor(Math.abs(a)/s)+1)*s:l===0&&a===s-1&&(a=s-2,l=1);let u,c;this.closed||a>0?u=r[(a-1)%s]:(p7.subVectors(r[0],r[1]).add(r[0]),u=p7);const h=r[a%s],f=r[(a+1)%s];if(this.closed||a+2<s?c=r[(a+2)%s]:(p7.subVectors(r[s-1],r[s-2]).add(r[s-1]),c=p7),this.curveType==="centripetal"||this.curveType==="chordal"){const m=this.curveType==="chordal"?.5:.25;let g=Math.pow(u.distanceToSquared(h),m),v=Math.pow(h.distanceToSquared(f),m),_=Math.pow(f.distanceToSquared(c),m);v<1e-4&&(v=1),g<1e-4&&(g=v),_<1e-4&&(_=v),ky.initNonuniformCatmullRom(u.x,h.x,f.x,c.x,g,v,_),Fy.initNonuniformCatmullRom(u.y,h.y,f.y,c.y,g,v,_),Oy.initNonuniformCatmullRom(u.z,h.z,f.z,c.z,g,v,_)}else this.curveType==="catmullrom"&&(ky.initCatmullRom(u.x,h.x,f.x,c.x,this.tension),Fy.initCatmullRom(u.y,h.y,f.y,c.y,this.tension),Oy.initCatmullRom(u.z,h.z,f.z,c.z,this.tension));return i.set(ky.calc(l),Fy.calc(l),Oy.calc(l)),i}copy(e){super.copy(e),this.points=[];for(let n=0,i=e.points.length;n<i;n++){const r=e.points[n];this.points.push(r.clone())}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}toJSON(){const e=super.toJSON();e.points=[];for(let n=0,i=this.points.length;n<i;n++){const r=this.points[n];e.points.push(r.toArray())}return e.closed=this.closed,e.curveType=this.curveType,e.tension=this.tension,e}fromJSON(e){super.fromJSON(e),this.points=[];for(let n=0,i=e.points.length;n<i;n++){const r=e.points[n];this.points.push(new L().fromArray(r))}return this.closed=e.closed,this.curveType=e.curveType,this.tension=e.tension,this}}function CP(t,e,n,i,r){const s=(i-e)*.5,o=(r-n)*.5,a=t*t,l=t*a;return(2*n-2*i+s+o)*l+(-3*n+3*i-2*s-o)*a+s*t+n}function Gse(t,e){const n=1-t;return n*n*e}function Qse(t,e){return 2*(1-t)*t*e}function Hse(t,e){return t*t*e}
vendor: 6,310 bytes, line 3611
3611function R5(t,e,n,i){return Gse(t,e)+Qse(t,n)+Hse(t,i)}function Wse(t,e){const n=1-t;return n*n*n*e}function $se(t,e){const n=1-t;return 3*n*n*t*e}function jse(t,e){return 3*(1-t)*t*t*e}function Xse(t,e){return t*t*t*e}function b5(t,e,n,i,r){return Wse(t,e)+$se(t,n)+jse(t,i)+Xse(t,r)}class eC extends Ca{constructor(e=new oe,n=new oe,i=new oe,r=new oe){super(),this.isCubicBezierCurve=!0,this.type="CubicBezierCurve",this.v0=e,this.v1=n,this.v2=i,this.v3=r}getPoint(e,n=new oe){const i=n,r=this.v0,s=this.v1,o=this.v2,a=this.v3;return i.set(b5(e,r.x,s.x,o.x,a.x),b5(e,r.y,s.y,o.y,a.y)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}}class dz extends Ca{constructor(e=new L,n=new L,i=new L,r=new L){super(),this.isCubicBezierCurve3=!0,this.type="CubicBezierCurve3",this.v0=e,this.v1=n,this.v2=i,this.v3=r}getPoint(e,n=new L){const i=n,r=this.v0,s=this.v1,o=this.v2,a=this.v3;return i.set(b5(e,r.x,s.x,o.x,a.x),b5(e,r.y,s.y,o.y,a.y),b5(e,r.z,s.z,o.z,a.z)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this.v3.copy(e.v3),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e.v3=this.v3.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this.v3.fromArray(e.v3),this}}class ng extends Ca{constructor(e=new oe,n=new oe){super(),this.isLineCurve=!0,this.type="LineCurve",this.v1=e,this.v2=n}getPoint(e,n=new oe){const i=n;return e===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(e).add(this.v1)),i}getPointAt(e,n){return this.getPoint(e,n)}getTangent(e,n=new oe){return n.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,n){return this.getTangent(e,n)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class pz extends Ca{constructor(e=new L,n=new L){super(),this.isLineCurve3=!0,this.type="LineCurve3",this.v1=e,this.v2=n}getPoint(e,n=new L){const i=n;return e===1?i.copy(this.v2):(i.copy(this.v2).sub(this.v1),i.multiplyScalar(e).add(this.v1)),i}getPointAt(e,n){return this.getPoint(e,n)}getTangent(e,n=new L){return n.subVectors(this.v2,this.v1).normalize()}getTangentAt(e,n){return this.getTangent(e,n)}copy(e){return super.copy(e),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class tC extends Ca{constructor(e=new oe,n=new oe,i=new oe){super(),this.isQuadraticBezierCurve=!0,this.type="QuadraticBezierCurve",this.v0=e,this.v1=n,this.v2=i}getPoint(e,n=new oe){const i=n,r=this.v0,s=this.v1,o=this.v2;return i.set(R5(e,r.x,s.x,o.x),R5(e,r.y,s.y,o.y)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class nC extends Ca{constructor(e=new L,n=new L,i=new L){super(),this.isQuadraticBezierCurve3=!0,this.type="QuadraticBezierCurve3",this.v0=e,this.v1=n,this.v2=i}getPoint(e,n=new L){const i=n,r=this.v0,s=this.v1,o=this.v2;return i.set(R5(e,r.x,s.x,o.x),R5(e,r.y,s.y,o.y),R5(e,r.z,s.z,o.z)),i}copy(e){return super.copy(e),this.v0.copy(e.v0),this.v1.copy(e.v1),this.v2.copy(e.v2),this}toJSON(){const e=super.toJSON();return e.v0=this.v0.toArray(),e.v1=this.v1.toArray(),e.v2=this.v2.toArray(),e}fromJSON(e){return super.fromJSON(e),this.v0.fromArray(e.v0),this.v1.fromArray(e.v1),this.v2.fromArray(e.v2),this}}class iC extends Ca{constructor(e=[]){super(),this.isSplineCurve=!0,this.type="SplineCurve",this.points=e}getPoint(e,n=new oe){const i=n,r=this.points,s=(r.length-1)*e,o=Math.floor(s),a=s-o,l=r[o===0?o:o-1],u=r[o],c=r[o>r.length-2?r.length-1:o+1],h=r[o>r.length-3?r.length-1:o+2];return i.set(CP(a,l.x,u.x,c.x,h.x),CP(a,l.y,u.y,c.y,h.y)),i}copy(e){super.copy(e),this.points=[];for(let n=0,i=e.points.length;n<i;n++){const r=e.points[n];this.points.push(r.clone())}return this}toJSON(){const e=super.toJSON();e.points=[];for(let n=0,i=this.points.length;n<i;n++){const r=this.points[n];e.points.push(r.toArray())}return e}fromJSON(e){super.fromJSON(e),this.points=[];for(let n=0,i=e.points.length;n<i;n++){const r=e.points[n];this.points.push(new oe().fromArray(r))}return this}}var rC=Object.freeze({__proto__:null,ArcCurve:hz,CatmullRomCurve3:fz,CubicBezierCurve:eC,CubicBezierCurve3:dz,EllipseCurve:tg,LineCurve:ng,LineCurve3:pz,QuadraticBezierCurve:tC,QuadraticBezierCurve3:nC,SplineCurve:iC});class mz extends Ca{constructor(){super(),this.type="CurvePath",this.curves=[],this.autoClose=!1}add(e){this.curves.push(e)}closePath(){const e=this.curves[0].getPoint(0),n=this.curves[this.curves.length-1].getPoint(1);e.equals(n)||this.curves.push(new ng(n,e))}getPoint(e,n){const i=e*this.getLength(),r=this.getCurveLengths();let s=0;for(;s<r.length;){if(r[s]>=i){const o=r[s]-i,a=this.curves[s],l=a.getLength(),u=l===0?0:1-o/l;return a.getPointAt(u,n)}s++}return null}getLength(){const e=this.getCurveLengths();return e[e.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;const e=[];let n=0;for(let i=0,r=this.curves.length;i<r;i++)n+=this.curves[i].getLength(),e.push(n);return this.cacheLengths=e,e}getSpacedPoints(e=40){const n=[];for(let i=0;i<=e;i++)n.push(this.getPoint(i/e));return this.autoClose&&n.push(n[0]),n}getPoints(e=12){const n=[];let i;for(let r=0,s=this.curves;r<s.length;r++){const o=s[r],a=o.isEllipseCurve?e*2:o.isLineCurve||o.isLineCurve3?1:o.isS
vendor: 6,560 bytes, line 3611
3611plineCurve?e*o.points.length:e,l=o.getPoints(a);for(let u=0;u<l.length;u++){const c=l[u];i&&i.equals(c)||(n.push(c),i=c)}}return this.autoClose&&n.length>1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n}copy(e){super.copy(e),this.curves=[];for(let n=0,i=e.curves.length;n<i;n++){const r=e.curves[n];this.curves.push(r.clone())}return this.autoClose=e.autoClose,this}toJSON(){const e=super.toJSON();e.autoClose=this.autoClose,e.curves=[];for(let n=0,i=this.curves.length;n<i;n++){const r=this.curves[n];e.curves.push(r.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.autoClose=e.autoClose,this.curves=[];for(let n=0,i=e.curves.length;n<i;n++){const r=e.curves[n];this.curves.push(new rC[r.type]().fromJSON(r))}return this}}let Nd=class extends mz{constructor(e){super(),this.type="Path",this.currentPoint=new oe,e&&this.setFromPoints(e)}setFromPoints(e){this.moveTo(e[0].x,e[0].y);for(let n=1,i=e.length;n<i;n++)this.lineTo(e[n].x,e[n].y);return this}moveTo(e,n){return this.currentPoint.set(e,n),this}lineTo(e,n){const i=new ng(this.currentPoint.clone(),new oe(e,n));return this.curves.push(i),this.currentPoint.set(e,n),this}quadraticCurveTo(e,n,i,r){const s=new tC(this.currentPoint.clone(),new oe(e,n),new oe(i,r));return this.curves.push(s),this.currentPoint.set(i,r),this}bezierCurveTo(e,n,i,r,s,o){const a=new eC(this.currentPoint.clone(),new oe(e,n),new oe(i,r),new oe(s,o));return this.curves.push(a),this.currentPoint.set(s,o),this}splineThru(e){const n=[this.currentPoint.clone()].concat(e),i=new iC(n);return this.curves.push(i),this.currentPoint.copy(e[e.length-1]),this}arc(e,n,i,r,s,o){const a=this.currentPoint.x,l=this.currentPoint.y;return this.absarc(e+a,n+l,i,r,s,o),this}absarc(e,n,i,r,s,o){return this.absellipse(e,n,i,i,r,s,o),this}ellipse(e,n,i,r,s,o,a,l){const u=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(e+u,n+c,i,r,s,o,a,l),this}absellipse(e,n,i,r,s,o,a,l){const u=new tg(e,n,i,r,s,o,a,l);if(this.curves.length>0){const h=u.getPoint(0);h.equals(this.currentPoint)||this.lineTo(h.x,h.y)}this.curves.push(u);const c=u.getPoint(1);return this.currentPoint.copy(c),this}copy(e){return super.copy(e),this.currentPoint.copy(e.currentPoint),this}toJSON(){const e=super.toJSON();return e.currentPoint=this.currentPoint.toArray(),e}fromJSON(e){return super.fromJSON(e),this.currentPoint.fromArray(e.currentPoint),this}};class F4 extends Bt{constructor(e=[new oe(0,-.5),new oe(.5,0),new oe(0,.5)],n=12,i=0,r=Math.PI*2){super(),this.type="LatheGeometry",this.parameters={points:e,segments:n,phiStart:i,phiLength:r},n=Math.floor(n),r=ci(r,0,Math.PI*2);const s=[],o=[],a=[],l=[],u=[],c=1/n,h=new L,f=new oe,m=new L,g=new L,v=new L;let _=0,A=0;for(let y=0;y<=e.length-1;y++)switch(y){case 0:_=e[y+1].x-e[y].x,A=e[y+1].y-e[y].y,m.x=A*1,m.y=-_,m.z=A*0,v.copy(m),m.normalize(),l.push(m.x,m.y,m.z);break;case e.length-1:l.push(v.x,v.y,v.z);break;default:_=e[y+1].x-e[y].x,A=e[y+1].y-e[y].y,m.x=A*1,m.y=-_,m.z=A*0,g.copy(m),m.x+=v.x,m.y+=v.y,m.z+=v.z,m.normalize(),l.push(m.x,m.y,m.z),v.copy(g)}for(let y=0;y<=n;y++){const q=i+y*c*r,E=Math.sin(q),T=Math.cos(q);for(let C=0;C<=e.length-1;C++){h.x=e[C].x*E,h.y=e[C].y,h.z=e[C].x*T,o.push(h.x,h.y,h.z),f.x=y/n,f.y=C/(e.length-1),a.push(f.x,f.y);const I=l[3*C+0]*E,R=l[3*C+1],M=l[3*C+0]*T;u.push(I,R,M)}}for(let y=0;y<n;y++)for(let q=0;q<e.length-1;q++){const E=q+y*e.length,T=E,C=E+e.length,I=E+e.length+1,R=E+1;s.push(T,C,R),s.push(I,R,C)}this.setIndex(s),this.setAttribute("position",new tt(o,3)),this.setAttribute("uv",new tt(a,2)),this.setAttribute("normal",new tt(u,3))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new F4(e.points,e.segments,e.phiStart,e.phiLength)}}class ig extends F4{constructor(e=1,n=1,i=4,r=8){const s=new Nd;s.absarc(0,-n/2,e,Math.PI*1.5,0),s.absarc(0,n/2,e,0,Math.PI*.5),super(s.getPoints(i),r),this.type="CapsuleGeometry",this.parameters={radius:e,length:n,capSegments:i,radialSegments:r}}static fromJSON(e){return new ig(e.radius,e.length,e.capSegments,e.radialSegments)}}class rg extends Bt{constructor(e=1,n=32,i=0,r=Math.PI*2){super(),this.type="CircleGeometry",this.parameters={radius:e,segments:n,thetaStart:i,thetaLength:r},n=Math.max(3,n);const s=[],o=[],a=[],l=[],u=new L,c=new oe;o.push(0,0,0),a.push(0,0,1),l.push(.5,.5);for(let h=0,f=3;h<=n;h++,f+=3){const m=i+h/n*r;u.x=e*Math.cos(m),u.y=e*Math.sin(m),o.push(u.x,u.y,u.z),a.push(0,0,1),c.x=(o[f]/e+1)/2,c.y=(o[f+1]/e+1)/2,l.push(c.x,c.y)}for(let h=1;h<=n;h++)s.push(h,h+1,0);this.setIndex(s),this.setAttribute("position",new tt(o,3)),this.setAttribute("normal",new tt(a,3)),this.setAttribute("uv",new tt(l,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new rg(e.radius,e.segments,e.thetaStart,e.thetaLength)}}class B2 extends Bt{constructor(e=1,n=1,i=1,r=32,s=1,o=!1,a=0,l=Math.PI*2){super(),this.type="CylinderGeometry",this.parameters={radiusTop:e,radiusBottom:n,height:i,radialSegments:r,heightSegments:s,openEnded:o,thetaStart:a,thetaLength:l};const u=this;r=Math.floor(r),s=Math.floor(s);const c=[],h=[],f=[],m=[];let g=0;const v=[],_=i/2;let A=0;y(),o===!1&&(e>0&&q(!0),n>0&&q(!1)),this.setIndex(c),this.setAttribute("position",new tt(h,3)),this.setAttribute("normal",new tt(f,3)),this.setAttribute("uv",new tt(m,2));function y(){const E=new L,T=new L;let C=0;const I=(n-e)/i;for(let R=0;R<=s;R++){const M=[],b=R/s,D=b*(n-e)+e;for(let z=0;z<=r;z++){const O=z/r,W=O*l+a,$=Math.sin(W),K=Math.cos(W);T.x=D*$,T.y=-b*i+_,T.z=D*K,h.push(T.x,T.y,T.z),E.set($,I,K).normalize(),f.push(E.x,E.y,E.z),m.push(O,1-b),M.push(g++)}v.push(M)}for(let R=0;R<r;R++)for(let M=0;M<s;M++){const b=v[M][R],D=v[M+1][R],z=v[M+1][R+1],O=v[M][R+1];c.push(b,D,O),c.push(D,z,O),C+=6}u.addGroup(A,C,0),A+=C}function q(E){const T=g,C=new oe,I=new L;let R=0;const M=E===!0?e:n,b=E===!0?1:-1;for(let z=1;z<=r;z++)h.push(0,_*b,0),f.push(0,b,0),m.push(.5,.5),g++;const D=g;for(let z=0;z<=r;z++){const W=z/r*l+a,$=Math.cos(W),K=Math.sin(W);I.x=M*K,I.y=_*b,I.z=M*$,h.push(I.x,I.y,I.z),f.push(0,b,0),C.x=$*.5+.5,C.y=K*.5*b+.5,m.push(C.x,C.y),g++}for(let z=0;z<r;z++){const O=T+z,W=D+z;E===!0?c.push(W,W+1,O):c.push(W+1,W,O),R+=3}u.addGroup(A,R,E===!0?1:2),A+=R}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new B2(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class sg extends B2{constructor(e=1,n=1,i=32,r=1,s=!1,o=0,a=Math.PI*2){super(0,e,n,i,r,s,o,a),this.type="C
3611oneGeometry",this.parameters={radius:e,height:n,radialSegments:i,heightSegments:r,openEnded:s,thetaStart:o,thetaLength:a}}static fromJSON(e){return new sg(e.radius,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}}class eh extends Bt{constructor(e=[],n=[],i=1,r=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:e,indices:n,radius:i,detail:r};const s=[],o=[];a(r),u(i),c(),this.setAttribute("position",new tt(s,3)),this.setAttribute("normal",new tt(s.slice(),3)),this.setAttribute("uv",new tt(o,2)),r===0?this.computeVertexNormals():this.normalizeNormals();function a(y){const q=new L,E=new L,T=new L;for(let C=0;C<n.length;C+=3)m(n[C+0],q),m(n[C+1],E),m(n[C+2],T),l(q,E,T,y)}function l(y,q,E,T){const C=T+1,I=[];for(let R=0;R<=C;R++){I[R]=[];const M=y.clone().lerp(E,R/C),b=q.clone().lerp(E,R/C),D=C-R;for(let z=0;z<=D;z++)z===0&&R===C?I[R][z]=M:I[R][z]=M.clone().lerp(b,z/D)}for(let R=0;R<C;R++)for(let M=0;M<2*(C-R)-1;M++){const b=Math.floor(M/2);M%2===0?(f(I[R][b+1]),f(I[R+1][b]),f(I[R][b])):(f(I[R][b+1]),f(I[R+1][b+1]),f(I[R+1][b]))}}function u(y){const q=new L;for(let E=0;E<s.length;E+=3)q.x=s[E+0],q.y=s[E+1],q.z=s[E+2],q.normalize().multiplyScalar(y),s[E+0]=q.x,s[E+1]=q.y,s[E+2]=q.z}function c(){const y=new L;for(let q=0;q<s.length;q+=3){y.x=s[q+0],y.y=s[q+1],y.z=s[q+2];const E=_(y)/2/Math.PI+.5,T=A(y)/Math.PI+.5;o.push(E,1-T)}g(),h()}function h(){for(let y=0;y<o.length;y+=6){const q=o[y+0],E=o[y+2],T=o[y+4],C=Math.max(q,E,T),I=Math.min(q,E,T);C>.9&&I<.1&&(q<.2&&(o[y+0]+=1),E<.2&&(o[y+2]+=1),T<.2&&(o[y+4]+=1))}}function f(y){s.push(y.x,y.y,y.z)}function m(y,q){const E=y*3;q.x=e[E+0],q.y=e[E+1],q.z=e[E+2]}function g(){const y=new L,q=new L,E=new L,T=new L,C=new oe,I=new oe,R=new oe;for(let M=0,b=0;M<s.length;M+=9,b+=6){y.set(s[M+0],s[M+1],s[M+2]),q.set(s[M+3],s[M+4],s[M+5]),E.set(s[M+6],s[M+7],s[M+8]),C.set(o[b+0],o[b+1]),I.set(o[b+2],o[b+3]),R.set(o[b+4],o[b+5]),T.copy(y).add(q).add(E).divideScalar(3);const D=_(T);v(C,b+0,y,D),v(I,b+2,q,D),v(R,b+4,E,D)}}function v(y,q,E,T){T<0&&y.x===1&&(o[q]=y.x-1),E.x===0&&E.z===0&&(o[q]=T/2/Math.PI+.5)}function _(y){return Math.atan2(y.z,-y.x)}function A(y){return Math.atan2(-y.y,Math.sqrt(y.x*y.x+y.z*y.z))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new eh(e.vertices,e.indices,e.radius,e.details)}}class og extends eh{constructor(e=1,n=0){const i=(1+Math.sqrt(5))/2,r=1/i,s=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-r,-i,0,-r,i,0,r,-i,0,r,i,-r,-i,0,-r,i,0,r,-i,0,r,i,0,-i,0,-r,i,0,-r,-i,0,r,i,0,r],o=[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,
vendor: 24,320 bytes, line 3611
361119,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9];super(s,o,e,n),this.type="DodecahedronGeometry",this.parameters={radius:e,detail:n}}static fromJSON(e){return new og(e.radius,e.detail)}}const m7=new L,g7=new L,Uy=new L,A7=new As;class gz extends Bt{constructor(e=null,n=1){if(super(),this.type="EdgesGeometry",this.parameters={geometry:e,thresholdAngle:n},e!==null){const r=Math.pow(10,4),s=Math.cos(l1*n),o=e.getIndex(),a=e.getAttribute("position"),l=o?o.count:a.count,u=[0,0,0],c=["a","b","c"],h=new Array(3),f={},m=[];for(let g=0;g<l;g+=3){o?(u[0]=o.getX(g),u[1]=o.getX(g+1),u[2]=o.getX(g+2)):(u[0]=g,u[1]=g+1,u[2]=g+2);const{a:v,b:_,c:A}=A7;if(v.fromBufferAttribute(a,u[0]),_.fromBufferAttribute(a,u[1]),A.fromBufferAttribute(a,u[2]),A7.getNormal(Uy),h[0]=`${Math.round(v.x*r)},${Math.round(v.y*r)},${Math.round(v.z*r)}`,h[1]=`${Math.round(_.x*r)},${Math.round(_.y*r)},${Math.round(_.z*r)}`,h[2]=`${Math.round(A.x*r)},${Math.round(A.y*r)},${Math.round(A.z*r)}`,!(h[0]===h[1]||h[1]===h[2]||h[2]===h[0]))for(let y=0;y<3;y++){const q=(y+1)%3,E=h[y],T=h[q],C=A7[c[y]],I=A7[c[q]],R=`${E}_${T}`,M=`${T}_${E}`;M in f&&f[M]?(Uy.dot(f[M].normal)<=s&&(m.push(C.x,C.y,C.z),m.push(I.x,I.y,I.z)),f[M]=null):R in f||(f[R]={index0:u[y],index1:u[q],normal:Uy.clone()})}}for(const g in f)if(f[g]){const{index0:v,index1:_}=f[g];m7.fromBufferAttribute(a,v),g7.fromBufferAttribute(a,_),m.push(m7.x,m7.y,m7.z),m.push(g7.x,g7.y,g7.z)}this.setAttribute("position",new tt(m,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}}class c1 extends Nd{constructor(e){super(e),this.uuid=Zs(),this.type="Shape",this.holes=[]}getPointsHoles(e){const n=[];for(let i=0,r=this.holes.length;i<r;i++)n[i]=this.holes[i].getPoints(e);return n}extractPoints(e){return{shape:this.getPoints(e),holes:this.getPointsHoles(e)}}copy(e){super.copy(e),this.holes=[];for(let n=0,i=e.holes.length;n<i;n++){const r=e.holes[n];this.holes.push(r.clone())}return this}toJSON(){const e=super.toJSON();e.uuid=this.uuid,e.holes=[];for(let n=0,i=this.holes.length;n<i;n++){const r=this.holes[n];e.holes.push(r.toJSON())}return e}fromJSON(e){super.fromJSON(e),this.uuid=e.uuid,this.holes=[];for(let n=0,i=e.holes.length;n<i;n++){const r=e.holes[n];this.holes.push(new Nd().fromJSON(r))}return this}}const Yse={triangulate:function(t,e,n=2){const i=e&&e.length,r=i?e[0]*n:t.length;let s=Az(t,0,r,n,!0);const o=[];if(!s||s.next===s.prev)return o;let a,l,u,c,h,f,m;if(i&&(s=toe(t,e,s,n)),t.length>80*n){a=u=t[0],l=c=t[1];for(let g=n;g<r;g+=n)h=t[g],f=t[g+1],h<a&&(a=h),f<l&&(l=f),h>u&&(u=h),f>c&&(c=f);m=Math.max(u-a,c-l),m=m!==0?32767/m:0}return kd(s,o,n,a,l,m,0),o}};function Az(t,e,n,i,r){let s,o;if(r===foe(t,e,n,i)>0)for(s=e;s<n;s+=i)o=wP(s,t[s],t[s+1],o);else for(s=n-i;s>=e;s-=i)o=wP(s,t[s],t[s+1],o);return o&&ag(o,o.next)&&(Od(o),o=o.next),o}function S1(t,e){if(!t)return t;e||(e=t);let n=t,i;do if(i=!1,!n.steiner&&(ag(n,n.next)||Jn(n.prev,n,n.next)===0)){if(Od(n),n=e=n.prev,n===n.next)break;i=!0}else n=n.next;while(i||n!==e);return e}function kd(t,e,n,i,r,s,o){if(!t)return;!o&&s&&ooe(t,i,r,s);let a=t,l,u;for(;t.prev!==t.next;){if(l=t.prev,u=t.next,s?Jse(t,i,r,s):Kse(t)){e.push(l.i/n|0),e.push(t.i/n|0),e.push(u.i/n|0),Od(t),t=u.next,a=u.next;continue}if(t=u,t===a){o?o===1?(t=Zse(S1(t),e,n),kd(t,e,n,i,r,s,2)):o===2&&eoe(t,e,n,i,r,s):kd(S1(t),e,n,i,r,s,1);break}}}function Kse(t){const e=t.prev,n=t,i=t.next;if(Jn(e,n,i)>=0)return!1;const r=e.x,s=n.x,o=i.x,a=e.y,l=n.y,u=i.y,c=r<s?r<o?r:o:s<o?s:o,h=a<l?a<u?a:u:l<u?l:u,f=r>s?r>o?r:o:s>o?s:o,m=a>l?a>u?a:u:l>u?l:u;let g=i.next;for(;g!==e;){if(g.x>=c&&g.x<=f&&g.y>=h&&g.y<=m&&l0(r,a,s,l,o,u,g.x,g.y)&&Jn(g.prev,g,g.next)>=0)return!1;g=g.next}return!0}function Jse(t,e,n,i){const r=t.prev,s=t,o=t.next;if(Jn(r,s,o)>=0)return!1;const a=r.x,l=s.x,u=o.x,c=r.y,h=s.y,f=o.y,m=a<l?a<u?a:u:l<u?l:u,g=c<h?c<f?c:f:h<f?h:f,v=a>l?a>u?a:u:l>u?l:u,_=c>h?c>f?c:f:h>f?h:f,A=Fx(m,g,e,n,i),y=Fx(v,_,e,n,i);let q=t.prevZ,E=t.nextZ;for(;q&&q.z>=A&&E&&E.z<=y;){if(q.x>=m&&q.x<=v&&q.y>=g&&q.y<=_&&q!==r&&q!==o&&l0(a,c,l,h,u,f,q.x,q.y)&&Jn(q.prev,q,q.next)>=0||(q=q.prevZ,E.x>=m&&E.x<=v&&E.y>=g&&E.y<=_&&E!==r&&E!==o&&l0(a,c,l,h,u,f,E.x,E.y)&&Jn(E.prev,E,E.next)>=0))return!1;E=E.nextZ}for(;q&&q.z>=A;){if(q.x>=m&&q.x<=v&&q.y>=g&&q.y<=_&&q!==r&&q!==o&&l0(a,c,l,h,u,f,q.x,q.y)&&Jn(q.prev,q,q.next)>=0)return!1;q=q.prevZ}for(;E&&E.z<=y;){if(E.x>=m&&E.x<=v&&E.y>=g&&E.y<=_&&E!==r&&E!==o&&l0(a,c,l,h,u,f,E.x,E.y)&&Jn(E.prev,E,E.next)>=0)return!1;E=E.nextZ}return!0}function Zse(t,e,n){let i=t;do{const r=i.prev,s=i.next.next;!ag(r,s)&&vz(r,i,i.next,s)&&Fd(r,s)&&Fd(s,r)&&(e.push(r.i/n|0),e.push(i.i/n|0),e.push(s.i/n|0),Od(i),Od(i.next),i=t=s),i=i.next}while(i!==t);return S1(i)}function eoe(t,e,n,i,r,s){let o=t;do{let a=o.next.next;for(;a!==o.prev;){if(o.i!==a.i&&uoe(o,a)){let l=yz(o,a);o=S1(o,o.next),l=S1(l,l.next),kd(o,e,n,i,r,s,0),kd(l,e,n,i,r,s,0);return}a=a.next}o=o.next}while(o!==t)}function toe(t,e,n,i){const r=[];let s,o,a,l,u;for(s=0,o=e.length;s<o;s++)a=e[s]*i,l=s<o-1?e[s+1]*i:t.length,u=Az(t,a,l,i,!1),u===u.next&&(u.steiner=!0),r.push(loe(u));for(r.sort(noe),s=0;s<r.length;s++)n=ioe(r[s],n);return n}function noe(t,e){return t.x-e.x}function ioe(t,e){const n=roe(t,e);if(!n)return e;const i=yz(n,t);return S1(i,i.next),S1(n,n.next)}function roe(t,e){let n=e,i=-1/0,r;const s=t.x,o=t.y;do{if(o<=n.y&&o>=n.next.y&&n.next.y!==n.y){const f=n.x+(o-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(f<=s&&f>i&&(i=f,r=n.x<n.next.x?n:n.next,f===s))return r}n=n.next}while(n!==e);if(!r)return null;const a=r,l=r.x,u=r.y;let c=1/0,h;n=r;do s>=n.x&&n.x>=l&&s!==n.x&&l0(o<u?s:i,o,l,u,o<u?i:s,o,n.x,n.y)&&(h=Math.abs(o-n.y)/(s-n.x),Fd(n,t)&&(h<c||h===c&&(n.x>r.x||n.x===r.x&&soe(r,n)))&&(r=n,c=h)),n=n.next;while(n!==a);return r}function soe(t,e){return Jn(t.prev,t,e.prev)<0&&Jn(e.next,t,t.next)<0}function ooe(t,e,n,i){let r=t;do r.z===0&&(r.z=Fx(r.x,r.y,e,n,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next;while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,aoe(r)}function aoe(t){let e,n,i,r,s,o,a,l,u=1;do{for(n=t,t=null,s=null,o=0;n;){for(o++,i=n,a=0,e=0;e<u&&(a++,i=i.nextZ,!!i);e++);for(l=u;a>0||l>0&&i;)a!==0&&(l===0||!i||n.z<=i.z)?(r=n,n=n.nextZ,a--):(r=i,i=i.nextZ,l--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;n=i}s.nextZ=null,u*=2}while(o>1);return t}function Fx(t,e,n,i,r){return t=(t-n)*r|0,e=(e-i)*r|0,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t|e<<1}function loe(t){let e=t,n=t;do(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next;while(e!==t);return n}function l0(t,e,n,i,r,s,o,a){return(r-o)*(e-a)>=(t-o)*(s-a)&&(t-o)*(i-a)>=(n-o)*(e-a)&&(n-o)*(s-a)>=(r-o)*(i-a)}function uoe(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!coe(t,e)&&(Fd(t,e)&&Fd(e,t)&&hoe(t,e)&&(Jn(t.prev,t,e.prev)||Jn(t,e.prev,e))||ag(t,e)&&Jn(t.prev,t,t.next)>0&&Jn(e.prev,e,e.next)>0)}function Jn(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function ag(t,e){return t.x===e.x&&t.y===e.y}function vz(t,e,n,i){const r=y7(Jn(t,e,n)),s=y7(Jn(t,e,i)),o=y7(Jn(n,i,t)),a=y7(Jn(n,i,e));return!!(r!==s&&o!==a||r===0&&v7(t,n,e)||s===0&&v7(t,i,e)||o===0&&v7(n,t,i)||a===0&&v7(n,e,i))}function v7(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function y7(t){return t>0?1:t<0?-1:0}function coe(t,e){let n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&vz(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}function Fd(t,e){return Jn(t.prev,t,t.next)<0?Jn(t,e,t.next)>=0&&Jn(t,t.prev,e)>=0:Jn(t,e,t.prev)<0||Jn(t,t.next,e)<0}function hoe(t,e){let n=t,i=!1;const r=(t.x+e.x)/2,s=(t.y+e.y)/2;do n.y>s!=n.next.y>s&&n.next.y!==n.y&&r<(n.next.x-n.x)*(s-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next;while(n!==t);return i}function yz(t,e){const n=new Ox(t.i,t.x,t.y),i=new Ox(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,n.next=r,r.prev=n,i.next=n,n.prev=i,s.next=i,i.prev=s,i}function wP(t,e,n,i){const r=new Ox(t,e,n);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function Od(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Ox(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function foe(t,e,n,i){let r=0;for(let s=e,o=n-i;s<n;s+=i)r+=(t[o]-t[s])*(t[s+1]+t[o+1]),o=s;return r}class ul{static area(e){const n=e.length;let i=0;for(let r=n-1,s=0;s<n;r=s++)i+=e[r].x*e[s].y-e[s].x*e[r].y;return i*.5}static isClockWise(e){return ul.area(e)<0}static triangulateShape(e,n){const i=[],r=[],s=[];IP(e),MP(i,e);let o=e.length;n.forEach(IP);for(let l=0;l<n.length;l++)r.push(o),o+=n[l].length,MP(i,n[l]);const a=Yse.triangulate(i,r);for(let l=0;l<a.length;l+=3)s.push(a.slice(l,l+3));return s}}function IP(t){const e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function MP(t,e){for(let n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}class O4 extends Bt{constructor(e=new c1([new oe(.5,.5),new oe(-.5,.5),new oe(-.5,-.5),new oe(.5,-.5)]),n={}){super(),this.type="ExtrudeGeometry",this.parameters={shapes:e,options:n},e=Array.isArray(e)?e:[e];const i=this,r=[],s=[];for(let a=0,l=e.length;a<l;a++){const u=e[a];o(u)}this.setAttribute("position",new tt(r,3)),this.setAttribute("uv",new tt(s,2)),this.computeVertexNormals();function o(a){const l=[],u=n.curveSegments!==void 0?n.curveSegments:12,c=n.steps!==void 0?n.steps:1,h=n.depth!==void 0?n.depth:1;let f=n.bevelEnabled!==void 0?n.bevelEnabled:!0,m=n.bevelThickness!==void 0?n.bevelThickness:.2,g=n.bevelSize!==void 0?n.bevelSize:m-.1,v=n.bevelOffset!==void 0?n.bevelOffset:0,_=n.bevelSegments!==void 0?n.bevelSegments:3;const A=n.extrudePath,y=n.UVGenerator!==void 0?n.UVGenerator:doe;let q,E=!1,T,C,I,R;A&&(q=A.getSpacedPoints(c),E=!0,f=!1,T=A.computeFrenetFrames(c,!1),C=new L,I=new L,R=new L),f||(_=0,m=0,g=0,v=0);const M=a.extractPoints(u);let b=M.shape;const D=M.holes;if(!ul.isClockWise(b)){b=b.reverse();for(let X=0,qe=D.length;X<qe;X++){const ve=D[X];ul.isClockWise(ve)&&(D[X]=ve.reverse())}}const O=ul.triangulateShape(b,D),W=b;for(let X=0,qe=D.length;X<qe;X++){const ve=D[X];b=b.concat(ve)}function $(X,qe,ve){return qe||console.error("THREE.ExtrudeGeometry: vec does not exist"),X.clone().addScaledVector(qe,ve)}const K=b.length,Y=O.length;function B(X,qe,ve){let Se,_e,it;const Ge=X.x-qe.x,He=X.y-qe.y,pt=ve.x-X.x,Vt=ve.y-X.y,Sn=Ge*Ge+He*He,j=Ge*Vt-He*pt;if(Math.abs(j)>Number.EPSILON){const N=Math.sqrt(Sn),se=Math.sqrt(pt*pt+Vt*Vt),Te=qe.x-He/N,Ee=qe.y+Ge/N,we=ve.x-Vt/se,Ye=ve.y+pt/se,Ie=((we-Te)*Vt-(Ye-Ee)*pt)/(Ge*Vt-He*pt);Se=Te+Ge*Ie-X.x,_e=Ee+He*Ie-X.y;const le=Se*Se+_e*_e;if(le<=2)return new oe(Se,_e);it=Math.sqrt(le/2)}else{let N=!1;Ge>Number.EPSILON?pt>Number.EPSILON&&(N=!0):Ge<-Number.EPSILON?pt<-Number.EPSILON&&(N=!0):Math.sign(He)===Math.sign(Vt)&&(N=!0),N?(Se=-He,_e=Ge,it=Math.sqrt(Sn)):(Se=Ge,_e=He,it=Math.sqrt(Sn/2))}return new oe(Se/it,_e/it)}const U=[];for(let X=0,qe=W.length,ve=qe-1,Se=X+1;X<qe;X++,ve++,Se++)ve===qe&&(ve=0),Se===qe&&(Se=0),U[X]=B(W[X],W[ve],W[Se]);const F=[];let k,Q=U.concat();for(let X=0,qe=D.length;X<qe;X++){const ve=D[X];k=[];for(let Se=0,_e=ve.length,it=_e-1,Ge=Se+1;Se<_e;Se++,it++,Ge++)it===_e&&(it=0),Ge===_e&&(Ge=0),k[Se]=B(ve[Se],ve[it],ve[Ge]);F.push(k),Q=Q.concat(k)}for(let X=0;X<_;X++){const qe=X/_,ve=m*Math.cos(qe*Math.PI/2),Se=g*Math.sin(qe*Math.PI/2)+v;for(let _e=0,it=W.length;_e<it;_e++){const Ge=$(W[_e],U[_e],Se);xe(Ge.x,Ge.y,-ve)}for(let _e=0,it=D.length;_e<it;_e++){const Ge=D[_e];k=F[_e];for(let He=0,pt=Ge.length;He<pt;He++){const Vt=$(Ge[He],k[He],Se);xe(Vt.x,Vt.y,-ve)}}}const ce=g+v;for(let X=0;X<K;X++){const qe=f?$(b[X],Q[X],ce):b[X];E?(I.copy(T.normals[0]).multiplyScalar(qe.x),C.copy(T.binormals[0]).multiplyScalar(qe.y),R.copy(q[0]).add(I).add(C),xe(R.x,R.y,R.z)):xe(qe.x,qe.y,0)}for(let X=1;X<=c;X++)for(let qe=0;qe<K;qe++){const ve=f?$(b[qe],Q[qe],ce):b[qe];E?(I.copy(T.normals[X]).multiplyScalar(ve.x),C.copy(T.binormals[X]).multiplyScalar(ve.y),R.copy(q[X]).add(I).add(C),xe(R.x,R.y,R.z)):xe(ve.x,ve.y,h/c*X)}for(let X=_-1;X>=0;X--){const qe=X/_,ve=m*Math.cos(qe*Math.PI/2),Se=g*Math.sin(qe*Math.PI/2)+v;for(let _e=0,it=W.length;_e<it;_e++){const Ge=$(W[_e],U[_e],Se);xe(Ge.x,Ge.y,h+ve)}for(let _e=0,it=D.length;_e<it;_e++){const Ge=D[_e];k=F[_e];for(let He=0,pt=Ge.length;He<pt;He++){const Vt=$(Ge[He],k[He],Se);E?xe(Vt.x,Vt.y+q[c-1].y,q[c-1].x+ve):xe(Vt.x,Vt.y,h+ve)}}}ae(),ge();function ae(){const X=r.length/3;if(f){let qe=0,ve=K*qe;for(let Se=0;Se<Y;Se++){const _e=O[Se];Le(_e[2]+ve,_e[1]+ve,_e[0]+ve)}qe=c+_*2,ve=K*qe;for(let Se=0;Se<Y;Se++){const _e=O[Se];Le(_e[0]+ve,_e[1]+ve,_e[2]+ve)}}else{for(let qe=0;qe<Y;qe++){const ve=O[qe];Le(ve[2],ve[1],ve[0])}for(let qe=0;qe<Y;qe++){const ve=O[qe];Le(ve[0]+K*c,ve[1]+K*c,ve[2]+K*c)}}i.addGroup(X,r.length/3-X,0)}function ge(){const X=r.length/3;let qe=0;ye(W,qe),qe+=W.length;for(let ve=0,Se=D.length;ve<Se;ve++){const _e=D[ve];ye(_e,qe),qe+=_e.length}i.addGroup(X,r.length/3-X,1)}function ye(X,qe){let ve=X.length;for(;--ve>=0;){const Se=ve;let _e=ve-1;_e<0&&(_e=X.length-1);for(let it=0,Ge=c+_*2;it<Ge;it++){const He=K*it,pt=K*(it+1),Vt=qe+Se+He,Sn=qe+_e+He,j=qe+_e+pt,N=qe+Se+pt;$e(Vt,Sn,j,N)}}}function xe(X,qe,ve){l.push(X),l.push(qe),l.push(ve)}function Le(X,qe,ve){Qe(X),Qe(qe),Qe(ve);const Se=r.length/3,_e=y.generateTopUV(i,r,Se-3,Se-2,Se-1);Be(_e[0]),Be(_e[1]),Be(_e[2])}function $e(X,qe,ve,Se){Qe(X),Qe(qe),Qe(Se),Qe(qe),Qe(ve),Qe(Se);const _e=r.length/3,it=y.generateSideWallUV(i,r,_e-6,_e-3,_e-2,_e-1);Be(it[0]),Be(it[1]),Be(it[3]),Be(it[1]),Be(it[2]),Be(it[3])}function Qe(X){r.push(l[X*3+0]),r.push(l[X*3+1]),r.push(l[X*3+2])}function Be(X){s.push(X.x),s.push(X.y)}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON(),n=this.parameters.shapes,i=this.parameters.options;return poe(n,i,e)}static fromJSON(e,n){const i=[];for(let s=0,o=e.shapes.length;s<o;s++){const a=n[e.shapes[s]];i.push(a)}const r=e.options.extrudePath;return r!==void 0&&(e.options.extrudePath=new rC[r.type]().fromJSON(r)),new O4(i,e.options)}}const doe={generateTopUV:function(t,e,n,i,r){const s=e[n*3],o=e[n*3+1],a=e[i*3],l=e[i*3+1],u=e[r*3],c=e[r*3+1];return[new oe(s,o),new oe(a,l),new oe(u,c)]},generateSideWallUV:function(t,e,n,i,r,s){const o=e[n*3],a=e[n*3+1],l=e[n*3+2],u=e[i*3],c=e[i*3+1],h=e[i*3+2],f=e[r*3],m=e[r*3+1],g=e[r*3+2],v=e[s*3],_=e[s*3+1],A=e[s*3+2];return Math.abs(a-c)<Math.abs(o-u)?[new oe(o,1-l),new oe(u,1-h),new oe(f,1-g),new oe(v,1-A)]:[new oe(a,1-l),new oe(c,1-h),new oe(m,1-g),new oe(_,1-A)]}};function poe(t,e,n){if(n.shapes=[],Array.isArray(t))for(let i=0,r=t.length;i<r;i++){const s=t[i];n.shapes.push(s.uuid)}else n.shapes.push(t.uuid);return n.options=Object.assign({},e),e.extrudePath!==void 0&&(n.options.extrudePath=e.extrudePath.toJSON()),n}class lg extends eh{constructor(e=1,n=0){const i=(1+Math.sqrt(5))/2,r=[-1,i,0,1,i,0,-1,-i,0,1,-i,0,0,-1,i,0,1,i,0,-1,-i,0,1,-i,i,0,-1,i,0,1,-i,0,-1,-i,0,1],s=[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1];super(r,s,e,n),this.type="IcosahedronGeometry",this.parameters={radius:e,detail:n}}static fromJSON(e){return new lg(e.radius,e.detail)}}class U4 extends eh{constructor(e=1,n=0){const i=[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],r=[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2];super(i,r,e,n),this.type="OctahedronGeometry",this.parameters={radius:e,detail:n}}static fromJSON(e){return new U4(e.radius,e.detail)}}class ug extends Bt{constructor(e=.5,n=1,i=32,r=1,s=0,o=Math.PI*2){super(),this.type="RingGeometry",this.parameters={innerRadius:e,outerRadius:n,thetaSegments:i,phiSegments:r,thetaStart:s,thetaLength:o},i=Math.max(3,i),r=Math.max(1,r);const a=[],l=[],u=[],c=[];let h=e;const f=(n-e)/r,m=new L,g=new oe;for(let v=0;v<=r;v++){for(let _=0;_<=i;_++){const A=s+_/i*o;m.x=h*Math.cos(A),m.y=h*Math.sin(A),l.push(m.x,m.y,m.z),u.push(0,0,1),g.x=(m.x/n+1)/2,g.y=(m.y/n+1)/2,c.push(g.x,g.y)}h+=f}for(let v=0;v<r;v++){const _=v*(i+1);for(let A=0;A<i;A++){const y=A+_,q=y,E=y+i+1,T=y+i+2,C=y+1;a.push(q,E,C),a.push(E,T,C)}}this.setIndex(a),this.setAttribute("position",new tt(l,3)),this.setAttribute("normal",new tt(u,3)),this.setAttribute("uv",new tt(c,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new ug(e.innerRadius,e.outerRadius,e.thetaSegments,e.phiSegments,e.thetaStart,e.thetaLength)}}class cg extends Bt{constructor(e=new c1([new oe(0,.5),new oe(-.5,-.5),new oe(.5,-.5)]),n=12){super(),this.type="ShapeGeometry",this.parameters={shapes:e,curveSegments:n};const i=[],r=[],s=[],o=[];let a=0,l=0;if(Array.isArray(e)===!1)u(e);else for(let c=0;c<e.length;c++)u(e[c]),this.addGroup(a,l,c),a+=l,l=0;this.setIndex(i),this.setAttribute("position",new tt(r,3)),this.setAttribute("normal",new tt(s,3)),this.setAttribute("uv",new tt(o,2));function u(c){const h=r.length/3,f=c.extractPoints(n);let m=f.shape;const g=f.holes;ul.isClockWise(m)===!1&&(m=m.reverse());for(let _=0,A=g.length;_<A;_++){const y=g[_];ul.isClockWise(y)===!0&&(g[_]=y.reverse())}const v=ul.triangulateShape(m,g);for(let _=0,A=g.length;_<A;_++){const y=g[_];m=m.concat(y)}for(let _=0,A=m.length;_<A;_++){const y=m[_];r.push(y.x,y.y,0),s.push(0,0,1),o.push(y.x,y.y)}for(let _=0,A=v.length;_<A;_++){const y=v[_],q=y[0]+h,E=y[1]+h,T=y[2]+h;i.push(q,E,T),l+=3}}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON(),n=this.parameters.shapes;return moe(n,e)}static fromJSON(e,n){const i=[];for(let r=0,s=e.shapes.length;r<s;r++){const o=n[e.shapes[r]];i.push(o)}return new cg(i,e.curveSegments)}}function moe(t,e){if(e.shapes=[],Array.isArray(t))for(let n=0,i=t.length;n<i;n++){const r=t[n];e.shapes.push(r.uuid)}else e.shapes.push(t.uuid);return e}class z4 extends Bt{constructor(e=1,n=32,i=16,r=0,s=Math.PI*2,o=0,a=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:e,widthSegments:n,heightSegments:i,phiStart:r,phiLength:s,thetaStart:o,thetaLength:a},n=Math.max(3,Math.floor(n)),i=Math.max(2,Math.floor(i));const l=Math.min(o+a,Math.PI);let u=0;const c=[],h=new L,f=new L,m=[],g=[],v=[],_=[];for(let A=0;A<=i;A++){const y=[],q=A/i;let E=0;A===0&&o===0?E=.5/n:A===i&&l===Math.PI&&(E=-.5/n);for(let T=0;T<=n;T++){const C=T/n;h.x=-e*Math.cos(r+C*s)*Math.sin(o+q*a),h.y=e*Math.cos(o+q*a),h.z=e*Math.sin(r+C*s)*Math.sin(o+q*a),g.push(h.x,h.y,h.z),f.copy(h).normalize(),v.push(f.x,f.y,f.z),_.push(C+E,1-q),y.push(u++)}c.push(y)}for(let A=0;A<i;A++)for(let y=0;y<n;y++){const q=c[A][y+1],E=c[A][y],T=c[A+1][y],C=c[A+1][y+1];(A!==0||o>0)&&m.push(q,E,C),(A!==i-1||l<Math.PI)&&m.push(E,T,C)}this.setIndex(m),this.setAttribute("position",new tt(g,3)),this.setAttribute("normal",new tt(v,3)),this.setAttribute("uv",new tt(_,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new z4(e.radius,e.widthSegments,e.heightSegments,e.phiStart,e.phiLength,e.thetaStart,e.thetaLength)}}class hg extends eh{constructor(e=1,n=0){const i=[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],r=[2,1,0,0,3,2,1,3,0,2,3,1];super(i,r,e,n),this.type="TetrahedronGeometry",this.parameters={radius:e,detail:n}}static fromJSON(e){return new hg(e.radius,e.detail)}}class fg extends Bt{constructor(e=1,n=.4,i=12,r=48,s=Math.PI*2){super(),this.type="TorusGeometry",this.parameters={radius:e,tube:n,radialSegments:i,tubularSegments:r,arc:s},i=Math.floor(i),r=Math.floor(r);const o=[],a=[],l=[],u=[],c=new L,h=new L,f=new L;for(let m=0;m<=i;m++)for(let g=0;g<=r;g++){const v=g/r*s,_=m/i*Math.PI*2;h.x=(e+n*Math.cos(_))*Math.cos(v),h.y=(e+n*Math.cos(_))*Math.sin(v),h.z=n*Math.sin(_),a.push(h.x,h.y,h.z),c.x=e*Math.cos(v),c.y=e*Math.sin(v),f.subVectors(h,c).normalize(),l.push(f.x,f.y,f.z),u.push(g/r),u.push(m/i)}for(let m=1;m<=i;m++)for(let g=1;g<=r;g++){const v=(r+1)*m+g-1,_=(r+1)*(m-1)+g-1,A=(r+1)*(m-1)+g,y=(r+1)*m+g;o.push(v,_,y),o.push(_,A,y)}this.setIndex(o),this.setAttribute("position",new tt(a,3)),this.setAttribute("normal",new tt(l,3)),this.setAttribute("uv",new tt(u,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new fg(e.radius,e.tube,e.radialSegments,e.tubularSegments,e.arc)}}class dg extends Bt{constructor(e=1,n=.4,i=64,r=8,s=2,o=3){super(),this.type="TorusKnotGeometry",this.parameters={radius:e,tube:n,tubularSegments:i,radialSegments:r,p:s,q:o},i=Math.floor(i),r=Math.floor(r);const a=[],l=[],u=[],c=[],h=new L,f=new L,m=new L,g=new L,v=new L,_=new L,A=new L;for(let q=0;q<=i;++q){const E=q/i*s*Math.PI*2;y(E,s,o,e,m),y(E+.01,s,o,e,g),_.subVectors(g,m),A.addVectors(g,m),v.crossVectors(_,A),A.crossVectors(v,_),v.normalize(),A.normalize();for(let T=0;T<=r;++T){const C=T/r*Math.PI*2,I=-n*Math.cos(C),R=n*Math.sin(C);h.x=m.x+(I*A.x+R*v.x),h.y=m.y+(I*A.y+R*v.y),h.z=m.z+(I*A.z+R*v.z),l.push(h.x,h.y,h.z),f.subVectors(h,m).normalize(),u.push(f.x,f.y,f.z),c.push(q/i),c.push(T/r)}}for(let q=1;q<=i;q++)for(let E=1;E<=r;E++){const T=(r+1)*(q-1)+(E-1),C=(r+1)*q+(E-1),I=(r+1)*q+E,R=(r+1)*(q-1)+E;a.push(T,C,R),a.push(C,I,R)}this.setIndex(a),this.setAttribute("position",new tt(l,3)),this.setAttribute("normal",new tt(u,3)),this.setAttribute("uv",new tt(c,2));function y(q,E,T,C,I){const R=Math.cos(q),M=Math.sin(q),b=T/E*q,D=Math.cos(b);I.x=C*(2+D)*.5*R,I.y=C*(2+D)*M*.5,I.z=C*Math.sin(b)*.5}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new dg(e.radius,e.tube,e.tubularSegments,e.radialSegments,e.p,e.q)}}class pg extends Bt{constructor(e=new nC(new L(-1,-1,0),new L(-1,1,0),new L(1,1,0)),n=64,i=1,r=8,s=!1){super(),this.type="TubeGeometry",this.parameters={path:e,tubularSegments:n,radius:i,radialSegments:r,closed:s};const o=e.computeFrenetFrames(n,s);this.tangents=o.tangents,this.normals=o.normals,this.binormals=o.binormals;const a=new L,l=new L,u=new oe;let c=new L;const h=[],f=[],m=[],g=[];v(),this.setIndex(g),this.setAttribute("position",new tt(h,3)),this.setAttribute("normal",new tt(f,3)),this.setAttribute("uv",new tt(m,2));function v(){for(let q=0;q<n;q++)_(q);_(s===!1?n:0),y(),A()}function _(q){c=e.getPointAt(q/n,c);const E=o.normals[q],T=o.binormals[q];for(let C=0;C<=r;C++){const I=C/r*Math.PI*2,R=Math.sin(I),M=-Math.cos(I);l.x=M*E.x+R*T.x,l.y=M*E.y+R*T.y,l.z=M*E.z+R*T.z,l.normalize(),f.push(l.x,l.y,l.z),a.x=c.x+i*l.x,a.y=c.y+i*l.y,a.z=c.z+i*l.z,h.push(a.x,a.y,a.z)}}function A(){for(let q=1;q<=n;q++)for(let E=1;E<=r;E++){const T=(r+1)*(q-1)+(E-1),C=(r+1)*q+(E-1),I=(r+1)*q+E,R=(r+1)*(q-1)+E;g.push(T,C,R),g.push(C,I,R)}}function y(){for(let q=0;q<=n;q++)for(let E=0;E<=r;E++)u.x=q/n,u.y=E/r,m.push(u.x,u.y)}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}toJSON(){const e=super.toJSON();return e.path=this.parameters.path.toJSON(),e}static fromJSON(e){return new pg(new rC[e.path.type]().fromJSON(e.path),e.tubularSegments,e.radius,e.radialSegments,e.closed)}}class qz extends Bt{constructor(e=null){if(super(),this.type="WireframeGeometry",this.parameters={geometry:e},e!==null){const n=[],i=new Set,r=new L,s=new L;if(e.index!==null){const o=e.attributes.position,a=e.index;let l=e.groups;l.length===0&&(l=[{start:0,count:a.count,materialIndex:0}]);for(let u=0,c=l.length;u<c;++u){const h=l[u],f=h.start,m=h.count;for(let g=f,v=f+m;g<v;g+=3)for(let _=0;_<3;_++){const A=a.getX(g+_),y=a.getX(g+(_+1)%3);r.fromBufferAttribute(o,A),s.fromBufferAttribute(o,y),RP(r,s,i)===!0&&(n.push(r.x,r.y,r.z),n.push(s.x,s.y,s.z))}}}else{const o=e.attributes.position;for(let a=0,l=o.count/3;a<l;a++)for(let u=0;u<3;u++){const c=3*a+u,h=3*a+(u+1)%3;r.fromBufferAttribute(o,c),s.fromBufferAttribute(o,h),RP(r,s,i)===!0&&(n.push(r.x,r.y,r.z),n.push(s.x,s.y,s.z))}}this.setAttribute("position",new tt(n,3))}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}}function RP(t,e,n){const i=`${t.x},${t.y},${t.z}-${e.x},${e.y},${e.z}`,r=`${e.x},${e.y},${e.z}-${t.x},${t.y},${t.z}`;return n.has(i)===!0||n.has(r)===!0?!1:(n.add(i),n.add(r),!0)}var bP=Object.freeze({__proto__:null,BoxGeometry:Zc,CapsuleGeometry:ig,CircleGeometry:rg,ConeGeometry:sg,CylinderGeometry:B2,DodecahedronGeometry:og,EdgesGeometry:gz,ExtrudeGeometry:O4,IcosahedronGeometry:lg,L
vendor: 11,061 bytes, line 3611
3611atheGeometry:F4,OctahedronGeometry:U4,PlaneGeometry:R2,PolyhedronGeometry:eh,RingGeometry:ug,ShapeGeometry:cg,SphereGeometry:z4,TetrahedronGeometry:hg,TorusGeometry:fg,TorusKnotGeometry:dg,TubeGeometry:pg,WireframeGeometry:qz});class _z extends Ji{constructor(e){super(),this.isShadowMaterial=!0,this.type="ShadowMaterial",this.color=new Me(0),this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.fog=e.fog,this}}class P5 extends zt{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type="RawShaderMaterial"}}class mg extends Ji{constructor(e){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new Me(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 Me(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,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.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}}class xz extends mg{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 oe(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return ci(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(n){this.ior=(1+.4*n)/(1-.4*n)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new Me(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 Me(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new Me(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=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 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.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}}class Ez extends Ji{constructor(e){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new Me(16777215),this.specular=new Me(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new Me(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=P4,this.reflectivity=1,this.refractionRatio=.98,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.color.copy(e.color),this.specular.copy(e.specular),this.shininess=e.shininess,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.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,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.flatShading=e.flatShading,this.fog=e.fog,this}}class Sz extends Ji{constructor(e){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new Me(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new Me(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,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.gradientMap=e.gradientMap,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.alphaMap=e.alphaMap,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}class D2 extends Ji{constructor(e){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(e)}copy(e){return super.copy(e),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.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.flatShading=e.flatShading,this}}class Tz extends Ji{constructor(e){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new Me(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new Me(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=P4,this.reflectivity=1,this.refractionRatio=.98,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.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.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.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,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.flatShading=e.flatShading,this.fog=e.fog,this}}
vendor: 75,706 bytes, line 3611
3611class Cz extends Ji{constructor(e){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new Me(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Jc,this.normalScale=new oe(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={MATCAP:""},this.color.copy(e.color),this.matcap=e.matcap,this.map=e.map,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.alphaMap=e.alphaMap,this.flatShading=e.flatShading,this.fog=e.fog,this}}class wz extends ls{constructor(e){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(e)}copy(e){return super.copy(e),this.scale=e.scale,this.dashSize=e.dashSize,this.gapSize=e.gapSize,this}}function wo(t,e,n){return sC(t)?new t.constructor(t.subarray(e,n!==void 0?n:t.length)):t.slice(e,n)}function Zh(t,e,n){return!t||!n&&t.constructor===e?t:typeof e.BYTES_PER_ELEMENT=="number"?new e(t):Array.prototype.slice.call(t)}function sC(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Iz(t){function e(r,s){return t[r]-t[s]}const n=t.length,i=new Array(n);for(let r=0;r!==n;++r)i[r]=r;return i.sort(e),i}function Ux(t,e,n){const i=t.length,r=new t.constructor(i);for(let s=0,o=0;o!==i;++s){const a=n[s]*e;for(let l=0;l!==e;++l)r[o++]=t[a+l]}return r}function oC(t,e,n,i){let r=1,s=t[0];for(;s!==void 0&&s[i]===void 0;)s=t[r++];if(s===void 0)return;let o=s[i];if(o!==void 0)if(Array.isArray(o))do o=s[i],o!==void 0&&(e.push(s.time),n.push.apply(n,o)),s=t[r++];while(s!==void 0);else if(o.toArray!==void 0)do o=s[i],o!==void 0&&(e.push(s.time),o.toArray(n,n.length)),s=t[r++];while(s!==void 0);else do o=s[i],o!==void 0&&(e.push(s.time),n.push(o)),s=t[r++];while(s!==void 0)}function goe(t,e,n,i,r=30){const s=t.clone();s.name=e;const o=[];for(let l=0;l<s.tracks.length;++l){const u=s.tracks[l],c=u.getValueSize(),h=[],f=[];for(let m=0;m<u.times.length;++m){const g=u.times[m]*r;if(!(g<n||g>=i)){h.push(u.times[m]);for(let v=0;v<c;++v)f.push(u.values[m*c+v])}}h.length!==0&&(u.times=Zh(h,u.times.constructor),u.values=Zh(f,u.values.constructor),o.push(u))}s.tracks=o;let a=1/0;for(let l=0;l<s.tracks.length;++l)a>s.tracks[l].times[0]&&(a=s.tracks[l].times[0]);for(let l=0;l<s.tracks.length;++l)s.tracks[l].shift(-1*a);return s.resetDuration(),s}function Aoe(t,e=0,n=t,i=30){i<=0&&(i=30);const r=n.tracks.length,s=e/i;for(let o=0;o<r;++o){const a=n.tracks[o],l=a.ValueTypeName;if(l==="bool"||l==="string")continue;const u=t.tracks.find(function(A){return A.name===a.name&&A.ValueTypeName===l});if(u===void 0)continue;let c=0;const h=a.getValueSize();a.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(c=h/3);let f=0;const m=u.getValueSize();u.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&&(f=m/3);const g=a.times.length-1;let v;if(s<=a.times[0]){const A=c,y=h-c;v=wo(a.values,A,y)}else if(s>=a.times[g]){const A=g*h+c,y=A+h-c;v=wo(a.values,A,y)}else{const A=a.createInterpolant(),y=c,q=h-c;A.evaluate(s),v=wo(A.resultBuffer,y,q)}l==="quaternion"&&new rs().fromArray(v).normalize().conjugate().toArray(v);const _=u.times.length;for(let A=0;A<_;++A){const y=A*m+f;if(l==="quaternion")rs.multiplyQuaternionsFlat(u.values,y,v,0,u.values,y);else{const q=m-f*2;for(let E=0;E<q;++E)u.values[y+E]-=v[E]}}}return t.blendMode=UT,t}const voe={arraySlice:wo,convertArray:Zh,isTypedArray:sC,getKeyframeOrder:Iz,sortedArray:Ux,flattenJSON:oC,subclip:goe,makeClipAdditive:Aoe};class V4{constructor(e,n,i,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r!==void 0?r:new n.constructor(i),this.sampleValues=n,this.valueSize=i,this.settings=null,this.DefaultSettings_={}}evaluate(e){const n=this.parameterPositions;let i=this._cachedIndex,r=n[i],s=n[i-1];e:{t:{let o;n:{i:if(!(e<r)){for(let a=i+2;;){if(r===void 0){if(e<s)break i;return i=n.length,this._cachedIndex=i,this.copySampleValue_(i-1)}if(i===a)break;if(s=r,r=n[++i],e<r)break t}o=n.length;break n}if(!(e>=s)){const a=n[1];e<a&&(i=2,s=a);for(let l=i-2;;){if(s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(i===l)break;if(r=s,s=n[--i-1],e>=s)break t}o=i,i=0;break n}break e}for(;i<o;){const a=i+o>>>1;e<n[a]?o=a:i=a+1}if(r=n[i],s=n[i-1],s===void 0)return this._cachedIndex=0,this.copySampleValue_(0);if(r===void 0)return i=n.length,this._cachedIndex=i,this.copySampleValue_(i-1)}this._cachedIndex=i,this.intervalChanged_(i,s,r)}return this.interpolate_(i,s,e,r)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(e){const n=this.resultBuffer,i=this.sampleValues,r=this.valueSize,s=e*r;for(let o=0;o!==r;++o)n[o]=i[s+o];return n}interpolate_(){throw new Error("call to abstract method")}intervalChanged_(){}}class Mz extends V4{constructor(e,n,i,r){super(e,n,i,r),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:Yh,endingEnd:Yh}}intervalChanged_(e,n,i){const r=this.parameterPositions;let s=e-2,o=e+1,a=r[s],l=r[o];if(a===void 0)switch(this.getSettings_().endingStart){case Kh:s=e,a=2*n-i;break;case Pd:s=r.length-2,a=n+r[s]-r[s+1];break;default:s=e,a=i}if(l===void 0)switch(this.getSettings_().endingEnd){case Kh:o=e,l=2*i-n;break;case Pd:o=1,l=i+r[1]-r[0];break;default:o=e-1,l=n}const u=(i-n)*.5,c=this.valueSize;this._weightPrev=u/(n-a),this._weightNext=u/(l-i),this._offsetPrev=s*c,this._offsetNext=o*c}interpolate_(e,n,i,r){const s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,l=e*a,u=l-a,c=this._offsetPrev,h=this._offsetNext,f=this._weightPrev,m=this._weightNext,g=(i-n)/(r-n),v=g*g,_=v*g,A=-f*_+2*f*v-f*g,y=(1+f)*_+(-1.5-2*f)*v+(-.5+f)*g+1,q=(-1-m)*_+(1.5+m)*v+.5*g,E=m*_-m*v;for(let T=0;T!==a;++T)s[T]=A*o[c+T]+y*o[u+T]+q*o[l+T]+E*o[h+T];return s}}class aC extends V4{constructor(e,n,i,r){super(e,n,i,r)}interpolate_(e,n,i,r){const s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,l=e*a,u=l-a,c=(i-n)/(r-n),h=1-c;for(let f=0;f!==a;++f)s[f]=o[u+f]*h+o[l+f]*c;return s}}class Rz extends V4{constructor(e,n,i,r){super(e,n,i,r)}interpolate_(e){return this.copySampleValue_(e-1)}}class wa{constructor(e,n,i,r){if(e===void 0)throw new Error("THREE.KeyframeTrack: track name is undefined");if(n===void 0||n.length===0)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+e);this.name=e,this.times=Zh(n,this.TimeBufferType),this.values=Zh(i,this.ValueBufferType),this.setInterpolation(r||this.DefaultInterpolation)}static toJSON(e){const n=e.constructor;let i;if(n.toJSON!==this.toJSON)i=n.toJSON(e);else{i={name:e.name,times:Zh(e.times,Array),values:Zh(e.values,Array)};const r=e.getInterpolation();r!==e.DefaultInterpolation&&(i.interpolation=r)}return i.type=e.ValueTypeName,i}InterpolantFactoryMethodDiscrete(e){return new Rz(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodLinear(e){return new aC(this.times,this.values,this.getValueSize(),e)}InterpolantFactoryMethodSmooth(e){return new Mz(this.times,this.values,this.getValueSize(),e)}setInterpolation(e){let n;switch(e){case Rd:n=this.InterpolantFactoryMethodDiscrete;break;case bd:n=this.InterpolantFactoryMethodLinear;break;case E8:n=this.InterpolantFactoryMethodSmooth;break}if(n===void 0){const i="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(this.createInterpolant===void 0)if(e!==this.DefaultInterpolation)this.setInterpolation(this.DefaultInterpolation);else throw new Error(i);return console.warn("THREE.KeyframeTrack:",i),this}return this.createInterpolant=n,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return Rd;case this.InterpolantFactoryMethodLinear:return bd;case this.InterpolantFactoryMethodSmooth:return E8}}getValueSize(){return this.values.length/this.times.length}shift(e){if(e!==0){const n=this.times;for(let i=0,r=n.length;i!==r;++i)n[i]+=e}return this}scale(e){if(e!==1){const n=this.times;for(let i=0,r=n.length;i!==r;++i)n[i]*=e}return this}trim(e,n){const i=this.times,r=i.length;let s=0,o=r-1;for(;s!==r&&i[s]<e;)++s;for(;o!==-1&&i[o]>n;)--o;if(++o,s!==0||o!==r){s>=o&&(o=Math.max(o,1),s=o-1);const a=this.getValueSize();this.times=wo(i,s,o),this.values=wo(this.values,s*a,o*a)}return this}validate(){let e=!0;const n=this.getValueSize();n-Math.floor(n)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);const i=this.times,r=this.values,s=i.length;s===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let o=null;for(let a=0;a!==s;a++){const l=i[a];if(typeof l=="number"&&isNaN(l)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,l),e=!1;break}if(o!==null&&o>l){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,l,o),e=!1;break}o=l}if(r!==void 0&&sC(r))for(let a=0,l=r.length;a!==l;++a){const u=r[a];if(isNaN(u)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,u),e=!1;break}}return e}optimize(){const e=wo(this.times),n=wo(this.values),i=this.getValueSize(),r=this.getInterpolation()===E8,s=e.length-1;let o=1;for(let a=1;a<s;++a){let l=!1;const u=e[a],c=e[a+1];if(u!==c&&(a!==1||u!==e[0]))if(r)l=!0;else{const h=a*i,f=h-i,m=h+i;for(let g=0;g!==i;++g){const v=n[h+g];if(v!==n[f+g]||v!==n[m+g]){l=!0;break}}}if(l){if(a!==o){e[o]=e[a];const h=a*i,f=o*i;for(let m=0;m!==i;++m)n[f+m]=n[h+m]}++o}}if(s>0){e[o]=e[s];for(let a=s*i,l=o*i,u=0;u!==i;++u)n[l+u]=n[a+u];++o}return o!==e.length?(this.times=wo(e,0,o),this.values=wo(n,0,o*i)):(this.times=e,this.values=n),this}clone(){const e=wo(this.times,0),n=wo(this.values,0),i=this.constructor,r=new i(this.name,e,n);return r.createInterpolant=this.createInterpolant,r}}wa.prototype.TimeBufferType=Float32Array;wa.prototype.ValueBufferType=Float32Array;wa.prototype.DefaultInterpolation=bd;class V1 extends wa{}V1.prototype.ValueTypeName="bool";V1.prototype.ValueBufferType=Array;V1.prototype.DefaultInterpolation=Rd;V1.prototype.InterpolantFactoryMethodLinear=void 0;V1.prototype.InterpolantFactoryMethodSmooth=void 0;class lC extends wa{}lC.prototype.ValueTypeName="color";class Ud extends wa{}Ud.prototype.ValueTypeName="number";class bz extends V4{constructor(e,n,i,r){super(e,n,i,r)}interpolate_(e,n,i,r){const s=this.resultBuffer,o=this.sampleValues,a=this.valueSize,l=(i-n)/(r-n);let u=e*a;for(let c=u+a;u!==c;u+=4)rs.slerpFlat(s,0,o,u-a,o,u,l);return s}}class L2 extends wa{InterpolantFactoryMethodLinear(e){return new bz(this.times,this.values,this.getValueSize(),e)}}L2.prototype.ValueTypeName="quaternion";L2.prototype.DefaultInterpolation=bd;L2.prototype.InterpolantFactoryMethodSmooth=void 0;class G1 extends wa{}G1.prototype.ValueTypeName="string";G1.prototype.ValueBufferType=Array;G1.prototype.DefaultInterpolation=Rd;G1.prototype.InterpolantFactoryMethodLinear=void 0;G1.prototype.InterpolantFactoryMethodSmooth=void 0;class zd extends wa{}zd.prototype.ValueTypeName="vector";class Vd{constructor(e,n=-1,i,r=W9){this.name=e,this.tracks=i,this.duration=n,this.blendMode=r,this.uuid=Zs(),this.duration<0&&this.resetDuration()}static parse(e){const n=[],i=e.tracks,r=1/(e.fps||1);for(let o=0,a=i.length;o!==a;++o)n.push(qoe(i[o]).scale(r));const s=new this(e.name,e.duration,n,e.blendMode);return s.uuid=e.uuid,s}static toJSON(e){const n=[],i=e.tracks,r={name:e.name,duration:e.duration,tracks:n,uuid:e.uuid,blendMode:e.blendMode};for(let s=0,o=i.length;s!==o;++s)n.push(wa.toJSON(i[s]));return r}static CreateFromMorphTargetSequence(e,n,i,r){const s=n.length,o=[];for(let a=0;a<s;a++){let l=[],u=[];l.push((a+s-1)%s,a,(a+1)%s),u.push(0,1,0);const c=Iz(l);l=Ux(l,1,c),u=Ux(u,1,c),!r&&l[0]===0&&(l.push(s),u.push(u[0])),o.push(new Ud(".morphTargetInfluences["+n[a].name+"]",l,u).scale(1/i))}return new this(e,-1,o)}static findByName(e,n){let i=e;if(!Array.isArray(e)){const r=e;i=r.geometry&&r.geometry.animations||r.animations}for(let r=0;r<i.length;r++)if(i[r].name===n)return i[r];return null}static CreateClipsFromMorphTargetSequences(e,n,i){const r={},s=/^([\w-]*?)([\d]+)$/;for(let a=0,l=e.length;a<l;a++){const u=e[a],c=u.name.match(s);if(c&&c.length>1){const h=c[1];let f=r[h];f||(r[h]=f=[]),f.push(u)}}const o=[];for(const a in r)o.push(this.CreateFromMorphTargetSequence(a,r[a],n,i));return o}static parseAnimation(e,n){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const i=function(h,f,m,g,v){if(m.length!==0){const _=[],A=[];oC(m,_,A,g),_.length!==0&&v.push(new h(f,_,A))}},r=[],s=e.name||"default",o=e.fps||30,a=e.blendMode;let l=e.length||-1;const u=e.hierarchy||[];for(let h=0;h<u.length;h++){const f=u[h].keys;if(!(!f||f.length===0))if(f[0].morphTargets){const m={};let g;for(g=0;g<f.length;g++)if(f[g].morphTargets)for(let v=0;v<f[g].morphTargets.length;v++)m[f[g].morphTargets[v]]=-1;for(const v in m){const _=[],A=[];for(let y=0;y!==f[g].morphTargets.length;++y){const q=f[g];_.push(q.time),A.push(q.morphTarget===v?1:0)}r.push(new Ud(".morphTargetInfluence["+v+"]",_,A))}l=m.length*o}else{const m=".bones["+n[h].name+"]";i(zd,m+".position",f,"pos",r),i(L2,m+".quaternion",f,"rot",r),i(zd,m+".scale",f,"scl",r)}}return r.length===0?null:new this(s,l,r,a)}resetDuration(){const e=this.tracks;let n=0;for(let i=0,r=e.length;i!==r;++i){const s=this.tracks[i];n=Math.max(n,s.times[s.times.length-1])}return this.duration=n,this}trim(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].trim(0,this.duration);return this}validate(){let e=!0;for(let n=0;n<this.tracks.length;n++)e=e&&this.tracks[n].validate();return e}optimize(){for(let e=0;e<this.tracks.length;e++)this.tracks[e].optimize();return this}clone(){const e=[];for(let n=0;n<this.tracks.length;n++)e.push(this.tracks[n].clone());return new this.constructor(this.name,this.duration,e,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}}function yoe(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return Ud;case"vector":case"vector2":case"vector3":case"vector4":return zd;case"color":return lC;case"quaternion":return L2;case"bool":case"boolean":return V1;case"string":return G1}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}function qoe(t){if(t.type===void 0)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");const e=yoe(t.type);if(t.times===void 0){const n=[],i=[];oC(t.keys,n,i,"value"),t.times=n,t.values=i}return e.parse!==void 0?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}const T1={enabled:!1,files:{},add:function(t,e){this.enabled!==!1&&(this.files[t]=e)},get:function(t){if(this.enabled!==!1)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}};class uC{constructor(e,n,i){const r=this;let s=!1,o=0,a=0,l;const u=[];this.onStart=void 0,this.onLoad=e,this.onProgress=n,this.onError=i,this.itemStart=function(c){a++,s===!1&&r.onStart!==void 0&&r.onStart(c,o,a),s=!0},this.itemEnd=function(c){o++,r.onProgress!==void 0&&r.onProgress(c,o,a),o===a&&(s=!1,r.onLoad!==void 0&&r.onLoad())},this.itemError=function(c){r.onError!==void 0&&r.onError(c)},this.resolveURL=function(c){return l?l(c):c},this.setURLModifier=function(c){return l=c,this},this.addHandler=function(c,h){return u.push(c,h),this},this.removeHandler=function(c){const h=u.indexOf(c);return h!==-1&&u.splice(h,2),this},this.getHandler=function(c){for(let h=0,f=u.length;h<f;h+=2){const m=u[h],g=u[h+1];if(m.global&&(m.lastIndex=0),m.test(c))return g}return null}}}const Pz=new uC;class qr{constructor(e){this.manager=e!==void 0?e:Pz,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(e,n){const i=this;return new Promise(function(r,s){i.load(e,r,n,s)})}parse(){}setCrossOrigin(e){return this.crossOrigin=e,this}setWithCredentials(e){return this.withCredentials=e,this}setPath(e){return this.path=e,this}setResourcePath(e){return this.resourcePath=e,this}setRequestHeader(e){return this.requestHeader=e,this}}qr.DEFAULT_MATERIAL_NAME="__DEFAULT";const Vl={};class _oe extends Error{constructor(e,n){super(e),this.response=n}}class Fr extends qr{constructor(e){super(e)}load(e,n,i,r){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=T1.get(e);if(s!==void 0)return this.manager.itemStart(e),setTimeout(()=>{n&&n(s),this.manager.itemEnd(e)},0),s;if(Vl[e]!==void 0){Vl[e].push({onLoad:n,onProgress:i,onError:r});return}Vl[e]=[],Vl[e].push({onLoad:n,onProgress:i,onError:r});const o=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),a=this.mimeType,l=this.responseType;fetch(o).then(u=>{if(u.status===200||u.status===0){if(u.status===0&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||u.body===void 0||u.body.getReader===void 0)return u;const c=Vl[e],h=u.body.getReader(),f=u.headers.get("Content-Length")||u.headers.get("X-File-Size"),m=f?parseInt(f):0,g=m!==0;let v=0;const _=new ReadableStream({start(A){y();function y(){h.read().then(({done:q,value:E})=>{if(q)A.close();else{v+=E.byteLength;const T=new ProgressEvent("progress",{lengthComputable:g,loaded:v,total:m});for(let C=0,I=c.length;C<I;C++){const R=c[C];R.onProgress&&R.onProgress(T)}A.enqueue(E),y()}})}}});return new Response(_)}else throw new _oe(`fetch for "${u.url}" responded with ${u.status}: ${u.statusText}`,u)}).then(u=>{switch(l){case"arraybuffer":return u.arrayBuffer();case"blob":return u.blob();case"document":return u.text().then(c=>new DOMParser().parseFromString(c,a));case"json":return u.json();default:if(a===void 0)return u.text();{const h=/charset="?([^;"\s]*)"?/i.exec(a),f=h&&h[1]?h[1].toLowerCase():void 0,m=new TextDecoder(f);return u.arrayBuffer().then(g=>m.decode(g))}}}).then(u=>{T1.add(e,u);const c=Vl[e];delete Vl[e];for(let h=0,f=c.length;h<f;h++){const m=c[h];m.onLoad&&m.onLoad(u)}}).catch(u=>{const c=Vl[e];if(c===void 0)throw this.manager.itemError(e),u;delete Vl[e];for(let h=0,f=c.length;h<f;h++){const m=c[h];m.onError&&m.onError(u)}this.manager.itemError(e)}).finally(()=>{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class xoe extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=new Fr(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(a){try{n(s.parse(JSON.parse(a)))}catch(l){r?r(l):console.error(l),s.manager.itemError(e)}},i,r)}parse(e){const n=[];for(let i=0;i<e.length;i++){const r=Vd.parse(e[i]);n.push(r)}return n}}class Eoe extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=[],a=new Nc,l=new Fr(this.manager);l.setPath(this.path),l.setResponseType("arraybuffer"),l.setRequestHeader(this.requestHeader),l.setWithCredentials(s.withCredentials);let u=0;function c(h){l.load(e[h],function(f){const m=s.parse(f,!0);o[h]={width:m.width,height:m.height,format:m.format,mipmaps:m.mipmaps},u+=1,u===6&&(m.mipmapCount===1&&(a.minFilter=_n),a.image=o,a.format=m.format,a.needsUpdate=!0,n&&n(a))},i,r)}if(Array.isArray(e))for(let h=0,f=e.length;h<f;++h)c(h);else l.load(e,function(h){const f=s.parse(h,!0);if(f.isCubemap){const m=f.mipmaps.length/f.mipmapCount;for(let g=0;g<m;g++){o[g]={mipmaps:[]};for(let v=0;v<f.mipmapCount;v++)o[g].mipmaps.push(f.mipmaps[g*f.mipmapCount+v]),o[g].format=f.format,o[g].width=f.width,o[g].height=f.height}a.image=o}else a.image.width=f.width,a.image.height=f.height,a.mipmaps=f.mipmaps;f.mipmapCount===1&&(a.minFilter=_n),a.format=f.format,a.needsUpdate=!0,n&&n(a)},i,r);return a}}class Gd extends qr{constructor(e){super(e)}load(e,n,i,r){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=this,o=T1.get(e);if(o!==void 0)return s.manager.itemStart(e),setTimeout(function(){n&&n(o),s.manager.itemEnd(e)},0),o;const a=Ld("img");function l(){c(),T1.add(e,this),n&&n(this),s.manager.itemEnd(e)}function u(h){c(),r&&r(h),s.manager.itemError(e),s.manager.itemEnd(e)}function c(){a.removeEventListener("load",l,!1),a.removeEventListener("error",u,!1)}return a.addEventListener("load",l,!1),a.addEventListener("error",u,!1),e.slice(0,5)!=="data:"&&this.crossOrigin!==void 0&&(a.crossOrigin=this.crossOrigin),s.manager.itemStart(e),a.src=e,a}}class Bz extends qr{constructor(e){super(e)}load(e,n,i,r){const s=new N4;s.colorSpace=Ot;const o=new Gd(this.manager);o.setCrossOrigin(this.crossOrigin),o.setPath(this.path);let a=0;function l(u){o.load(e[u],function(c){s.images[u]=c,a++,a===6&&(s.needsUpdate=!0,n&&n(s))},void 0,r)}for(let u=0;u<e.length;++u)l(u);return s}}class Soe extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=new ll,a=new Fr(this.manager);return a.setResponseType("arraybuffer"),a.setRequestHeader(this.requestHeader),a.setPath(this.path),a.setWithCredentials(s.withCredentials),a.load(e,function(l){let u;try{u=s.parse(l)}catch(c){if(r!==void 0)r(c);else{console.error(c);return}}if(!u)return r();u.image!==void 0?o.image=u.image:u.data!==void 0&&(o.image.width=u.width,o.image.height=u.height,o.image.data=u.data),o.wrapS=u.wrapS!==void 0?u.wrapS:pi,o.wrapT=u.wrapT!==void 0?u.wrapT:pi,o.magFilter=u.magFilter!==void 0?u.magFilter:_n,o.minFilter=u.minFilter!==void 0?u.minFilter:_n,o.anisotropy=u.anisotropy!==void 0?u.anisotropy:1,u.colorSpace!==void 0?o.colorSpace=u.colorSpace:u.encoding!==void 0&&(o.encoding=u.encoding),u.flipY!==void 0&&(o.flipY=u.flipY),u.format!==void 0&&(o.format=u.format),u.type!==void 0&&(o.type=u.type),u.mipmaps!==void 0&&(o.mipmaps=u.mipmaps,o.minFilter=Al),u.mipmapCount===1&&(o.minFilter=_n),u.generateMipmaps!==void 0&&(o.generateMipmaps=u.generateMipmaps),o.needsUpdate=!0,n&&n(o,u)},i,r),o}}class $a extends qr{constructor(e){super(e)}load(e,n,i,r){const s=new Gn,o=new Gd(this.manager);return o.setCrossOrigin(this.crossOrigin),o.setPath(this.path),o.load(e,function(a){s.image=a,s.needsUpdate=!0,n!==void 0&&n(s)},i,r),s}}class th extends mn{constructor(e,n=1){super(),this.isLight=!0,this.type="Light",this.color=new Me(e),this.intensity=n}dispose(){}copy(e,n){return super.copy(e,n),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){const n=super.toJSON(e);return n.object.color=this.color.getHex(),n.object.intensity=this.intensity,this.groundColor!==void 0&&(n.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(n.object.distance=this.distance),this.angle!==void 0&&(n.object.angle=this.angle),this.decay!==void 0&&(n.object.decay=this.decay),this.penumbra!==void 0&&(n.object.penumbra=this.penumbra),this.shadow!==void 0&&(n.object.shadow=this.shadow.toJSON()),n}}class Dz extends th{constructor(e,n,i){super(e,i),this.isHemisphereLight=!0,this.type="HemisphereLight",this.position.copy(mn.DEFAULT_UP),this.updateMatrix(),this.groundColor=new Me(n)}copy(e,n){return super.copy(e,n),this.groundColor.copy(e.groundColor),this}}const zy=new st,PP=new L,BP=new L;class cC{constructor(e){this.camera=e,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new oe(512,512),this.map=null,this.mapPass=null,this.matrix=new st,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new X9,this._frameExtents=new oe(1,1),this._viewportCount=1,this._viewports=[new Zt(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){const n=this.camera,i=this.matrix;PP.setFromMatrixPosition(e.matrixWorld),n.position.copy(PP),BP.setFromMatrixPosition(e.target.matrixWorld),n.lookAt(BP),n.updateMatrixWorld(),zy.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(zy),i.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),i.multiply(zy)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){const e={};return this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}}class Toe extends cC{constructor(){super(new Yn(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){const n=this.camera,i=X0*2*e.angle*this.focus,r=this.mapSize.width/this.mapSize.height,s=e.distance||n.far;(i!==n.fov||r!==n.aspect||s!==n.far)&&(n.fov=i,n.aspect=r,n.far=s,n.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}}class Lz extends th{constructor(e,n,i=0,r=Math.PI/3,s=0,o=2){super(e,n),this.isSpotLight=!0,this.type="SpotLight",this.position.copy(mn.DEFAULT_UP),this.updateMatrix(),this.target=new mn,this.distance=i,this.angle=r,this.penumbra=s,this.decay=o,this.map=null,this.shadow=new Toe}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,n){return super.copy(e,n),this.distance=e.distance,this.angle=e.angle,this.penumbra=e.penumbra,this.decay=e.decay,this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}const DP=new st,Df=new L,Vy=new L;class Coe extends cC{constructor(){super(new Yn(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new oe(4,2),this._viewportCount=6,this._viewports=[new Zt(2,1,1,1),new Zt(0,1,1,1),new Zt(3,1,1,1),new Zt(1,1,1,1),new Zt(3,0,1,1),new Zt(1,0,1,1)],this._cubeDirections=[new L(1,0,0),new L(-1,0,0),new L(0,0,1),new L(0,0,-1),new L(0,1,0),new L(0,-1,0)],this._cubeUps=[new L(0,1,0),new L(0,1,0),new L(0,1,0),new L(0,1,0),new L(0,0,1),new L(0,0,-1)]}updateMatrices(e,n=0){const i=this.camera,r=this.matrix,s=e.distance||i.far;s!==i.far&&(i.far=s,i.updateProjectionMatrix()),Df.setFromMatrixPosition(e.matrixWorld),i.position.copy(Df),Vy.copy(i.position),Vy.add(this._cubeDirections[n]),i.up.copy(this._cubeUps[n]),i.lookAt(Vy),i.updateMatrixWorld(),r.makeTranslation(-Df.x,-Df.y,-Df.z),DP.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),this._frustum.setFromProjectionMatrix(DP)}}class Nz extends th{constructor(e,n,i=0,r=2){super(e,n),this.isPointLight=!0,this.type="PointLight",this.distance=i,this.decay=r,this.shadow=new Coe}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,n){return super.copy(e,n),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}}class woe extends cC{constructor(){super(new b2(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class kz extends th{constructor(e,n){super(e,n),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(mn.DEFAULT_UP),this.updateMatrix(),this.target=new mn,this.shadow=new woe}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}class Fz extends th{constructor(e,n){super(e,n),this.isAmbientLight=!0,this.type="AmbientLight"}}class Oz extends th{constructor(e,n,i=10,r=10){super(e,n),this.isRectAreaLight=!0,this.type="RectAreaLight",this.width=i,this.height=r}get power(){return this.intensity*this.width*this.height*Math.PI}set power(e){this.intensity=e/(this.width*this.height*Math.PI)}copy(e){return super.copy(e),this.width=e.width,this.height=e.height,this}toJSON(e){const n=super.toJSON(e);return n.object.width=this.width,n.object.height=this.height,n}}class Uz{constructor(){this.isSphericalHarmonics3=!0,this.coefficients=[];for(let e=0;e<9;e++)this.coefficients.push(new L)}set(e){for(let n=0;n<9;n++)this.coefficients[n].copy(e[n]);return this}zero(){for(let e=0;e<9;e++)this.coefficients[e].set(0,0,0);return this}getAt(e,n){const i=e.x,r=e.y,s=e.z,o=this.coefficients;return n.copy(o[0]).multiplyScalar(.282095),n.addScaledVector(o[1],.488603*r),n.addScaledVector(o[2],.488603*s),n.addScaledVector(o[3],.488603*i),n.addScaledVector(o[4],1.092548*(i*r)),n.addScaledVector(o[5],1.092548*(r*s)),n.addScaledVector(o[6],.315392*(3*s*s-1)),n.addScaledVector(o[7],1.092548*(i*s)),n.addScaledVector(o[8],.546274*(i*i-r*r)),n}getIrradianceAt(e,n){const i=e.x,r=e.y,s=e.z,o=this.coefficients;return n.copy(o[0]).multiplyScalar(.886227),n.addScaledVector(o[1],2*.511664*r),n.addScaledVector(o[2],2*.511664*s),n.addScaledVector(o[3],2*.511664*i),n.addScaledVector(o[4],2*.429043*i*r),n.addScaledVector(o[5],2*.429043*r*s),n.addScaledVector(o[6],.743125*s*s-.247708),n.addScaledVector(o[7],2*.429043*i*s),n.addScaledVector(o[8],.429043*(i*i-r*r)),n}add(e){for(let n=0;n<9;n++)this.coefficients[n].add(e.coefficients[n]);return this}addScaledSH(e,n){for(let i=0;i<9;i++)this.coefficients[i].addScaledVector(e.coefficients[i],n);return this}scale(e){for(let n=0;n<9;n++)this.coefficients[n].multiplyScalar(e);return this}lerp(e,n){for(let i=0;i<9;i++)this.coefficients[i].lerp(e.coefficients[i],n);return this}equals(e){for(let n=0;n<9;n++)if(!this.coefficients[n].equals(e.coefficients[n]))return!1;return!0}copy(e){return this.set(e.coefficients)}clone(){return new this.constructor().copy(this)}fromArray(e,n=0){const i=this.coefficients;for(let r=0;r<9;r++)i[r].fromArray(e,n+r*3);return this}toArray(e=[],n=0){const i=this.coefficients;for(let r=0;r<9;r++)i[r].toArray(e,n+r*3);return e}static getBasisAt(e,n){const i=e.x,r=e.y,s=e.z;n[0]=.282095,n[1]=.488603*r,n[2]=.488603*s,n[3]=.488603*i,n[4]=1.092548*i*r,n[5]=1.092548*r*s,n[6]=.315392*(3*s*s-1),n[7]=1.092548*i*s,n[8]=.546274*(i*i-r*r)}}class gg extends th{constructor(e=new Uz,n=1){super(void 0,n),this.isLightProbe=!0,this.sh=e}copy(e){return super.copy(e),this.sh.copy(e.sh),this}fromJSON(e){return this.intensity=e.intensity,this.sh.fromArray(e.sh),this}toJSON(e){const n=super.toJSON(e);return n.object.sh=this.sh.toArray(),n}}class Ag extends qr{constructor(e){super(e),this.textures={}}load(e,n,i,r){const s=this,o=new Fr(s.manager);o.setPath(s.path),o.setRequestHeader(s.requestHeader),o.setWithCredentials(s.withCredentials),o.load(e,function(a){try{n(s.parse(JSON.parse(a)))}catch(l){r?r(l):console.error(l),s.manager.itemError(e)}},i,r)}parse(e){const n=this.textures;function i(s){return n[s]===void 0&&console.warn("THREE.MaterialLoader: Undefined texture",s),n[s]}const r=Ag.createMaterialFromType(e.type);if(e.uuid!==void 0&&(r.uuid=e.uuid),e.name!==void 0&&(r.name=e.name),e.color!==void 0&&r.color!==void 0&&r.color.setHex(e.color),e.roughness!==void 0&&(r.roughness=e.roughness),e.metalness!==void 0&&(r.metalness=e.metalness),e.sheen!==void 0&&(r.sheen=e.sheen),e.sheenColor!==void 0&&(r.sheenColor=new Me().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(r.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&r.emissive!==void 0&&r.emissive.setHex(e.emissive),e.specular!==void 0&&r.specular!==void 0&&r.specular.setHex(e.specular),e.specularIntensity!==void 0&&(r.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&r.specularColor!==void 0&&r.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(r.shininess=e.shininess),e.clearcoat!==void 0&&(r.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(r.clearcoatRoughness=e.clearcoatRoughness),e.iridescence!==void 0&&(r.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(r.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(r.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(r.transmission=e.transmission),e.thickness!==void 0&&(r.thickness=e.thickness),e.attenuationDistance!==void 0&&(r.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&r.attenuationColor!==void 0&&r.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(r.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(r.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(r.fog=e.fog),e.flatShading!==void 0&&(r.flatShading=e.flatShading),e.blending!==void 0&&(r.blending=e.blending),e.combine!==void 0&&(r.combine=e.combine),e.side!==void 0&&(r.side=e.side),e.shadowSide!==void 0&&(r.shadowSide=e.shadowSide),e.opacity!==void 0&&(r.opacity=e.opacity),e.transparent!==void 0&&(r.transparent=e.transparent),e.alphaTest!==void 0&&(r.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(r.alphaHash=e.alphaHash),e.depthTest!==void 0&&(r.depthTest=e.depthTest),e.depthWrite!==void 0&&(r.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(r.colorWrite=e.colorWrite),e.stencilWrite!==void 0&&(r.stencilWrite=e.stencilWrite),e.stencilWriteMask!==void 0&&(r.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(r.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(r.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(r.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(r.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(r.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(r.stencilZPass=e.stencilZPass),e.wireframe!==void 0&&(r.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(r.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(r.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(r.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(r.rotation=e.rotation),e.linewidth!==1&&(r.linewidth=e.linewidth),e.dashSize!==void 0&&(r.dashSize=e.dashSize),e.gapSize!==void 0&&(r.gapSize=e.gapSize),e.scale!==void 0&&(r.scale=e.scale),e.polygonOffset!==void 0&&(r.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(r.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(r.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(r.dithering=e.dithering),e.alphaToCoverage!==void 0&&(r.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(r.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(r.forceSinglePass=e.forceSinglePass),e.visible!==void 0&&(r.visible=e.visible),e.toneMapped!==void 0&&(r.toneMapped=e.toneMapped),e.userData!==void 0&&(r.userData=e.userData),e.vertexColors!==void 0&&(typeof e.vertexColors=="number"?r.vertexColors=e.vertexColors>0:r.vertexColors=e.vertexColors),e.uniforms!==void 0)for(const s in e.uniforms){const o=e.uniforms[s];switch(r.uniforms[s]={},o.type){case"t":r.uniforms[s].value=i(o.value);break;case"c":r.uniforms[s].value=new Me().setHex(o.value);break;case"v2":r.uniforms[s].value=new oe().fromArray(o.value);break;case"v3":r.uniforms[s].value=new L().fromArray(o.value);break;case"v4":r.uniforms[s].value=new Zt().fromArray(o.value);break;case"m3":r.uniforms[s].value=new $t().fromArray(o.value);break;case"m4":r.uniforms[s].value=new st().fromArray(o.value);break;default:r.uniforms[s].value=o.value}}if(e.defines!==void 0&&(r.defines=e.defines),e.vertexShader!==void 0&&(r.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(r.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(r.glslVersion=e.glslVersion),e.extensions!==void 0)for(const s in e.extensions)r.extensions[s]=e.extensions[s];if(e.lights!==void 0&&(r.lights=e.lights),e.clipping!==void 0&&(r.clipping=e.clipping),e.size!==void 0&&(r.size=e.size),e.sizeAttenuation!==void 0&&(r.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(r.map=i(e.map)),e.matcap!==void 0&&(r.matcap=i(e.matcap)),e.alphaMap!==void 0&&(r.alphaMap=i(e.alphaMap)),e.bumpMap!==void 0&&(r.bumpMap=i(e.bumpMap)),e.bumpScale!==void 0&&(r.bumpScale=e.bumpScale),e.normalMap!==void 0&&(r.normalMap=i(e.normalMap)),e.normalMapType!==void 0&&(r.normalMapType=e.normalMapType),e.normalScale!==void 0){let s=e.normalScale;Array.isArray(s)===!1&&(s=[s,s]),r.normalScale=new oe().fromArray(s)}return e.displacementMap!==void 0&&(r.displacementMap=i(e.displacementMap)),e.displacementScale!==void 0&&(r.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(r.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(r.roughnessMap=i(e.roughnessMap)),e.metalnessMap!==void 0&&(r.metalnessMap=i(e.metalnessMap)),e.emissiveMap!==void 0&&(r.emissiveMap=i(e.emissiveMap)),e.emissiveIntensity!==void 0&&(r.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(r.specularMap=i(e.specularMap)),e.specularIntensityMap!==void 0&&(r.specularIntensityMap=i(e.specularIntensityMap)),e.specularColorMap!==void 0&&(r.specularColorMap=i(e.specularColorMap)),e.envMap!==void 0&&(r.envMap=i(e.envMap)),e.envMapIntensity!==void 0&&(r.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(r.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(r.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(r.lightMap=i(e.lightMap)),e.lightMapIntensity!==void 0&&(r.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(r.aoMap=i(e.aoMap)),e.aoMapIntensity!==void 0&&(r.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(r.gradientMap=i(e.gradientMap)),e.clearcoatMap!==void 0&&(r.clearcoatMap=i(e.clearcoatMap)),e.clearcoatRoughnessMap!==void 0&&(r.clearcoatRoughnessMap=i(e.clearcoatRoughnessMap)),e.clearcoatNormalMap!==void 0&&(r.clearcoatNormalMap=i(e.clearcoatNormalMap)),e.clearcoatNormalScale!==void 0&&(r.clearcoatNormalScale=new oe().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(r.iridescenceMap=i(e.iridescenceMap)),e.iridescenceThicknessMap!==void 0&&(r.iridescenceThicknessMap=i(e.iridescenceThicknessMap)),e.transmissionMap!==void 0&&(r.transmissionMap=i(e.transmissionMap)),e.thicknessMap!==void 0&&(r.thicknessMap=i(e.thicknessMap)),e.anisotropyMap!==void 0&&(r.anisotropyMap=i(e.anisotropyMap)),e.sheenColorMap!==void 0&&(r.sheenColorMap=i(e.sheenColorMap)),e.sheenRoughnessMap!==void 0&&(r.sheenRoughnessMap=i(e.sheenRoughnessMap)),r}setTextures(e){return this.textures=e,this}static createMaterialFromType(e){const n={ShadowMaterial:_z,SpriteMaterial:XT,RawShaderMaterial:P5,ShaderMaterial:zt,PointsMaterial:KT,MeshPhysicalMaterial:xz,MeshStandardMaterial:mg,MeshPhongMaterial:Ez,MeshToonMaterial:Sz,MeshNormalMaterial:D2,MeshLambertMaterial:Tz,MeshDepthMaterial:k4,MeshDistanceMaterial:$T,MeshBasicMaterial:Go,MeshMatcapMaterial:Cz,LineDashedMaterial:wz,LineBasicMaterial:ls,Material:Ji};return new n[e]}}class zx{static decodeText(e){if(typeof TextDecoder<"u")return new TextDecoder().decode(e);let n="";for(let i=0,r=e.length;i<r;i++)n+=String.fromCharCode(e[i]);try{return decodeURIComponent(escape(n))}catch{return n}}static extractUrlBase(e){const n=e.lastIndexOf("/");return n===-1?"./":e.slice(0,n+1)}static resolveURL(e,n){return typeof e!="string"||e===""?"":(/^https?:\/\//i.test(n)&&/^\//.test(e)&&(n=n.replace(/(^https?:\/\/[^\/]+).*/i,"$1")),/^(https?:)?\/\//i.test(e)||/^data:.*,.*$/i.test(e)||/^blob:.*$/i.test(e)?e:n+e)}}class zz extends Bt{constructor(){super(),this.isInstancedBufferGeometry=!0,this.type="InstancedBufferGeometry",this.instanceCount=1/0}copy(e){return super.copy(e),this.instanceCount=e.instanceCount,this}toJSON(){const e=super.toJSON();return e.instanceCount=this.instanceCount,e.isInstancedBufferGeometry=!0,e}}class Vz extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=new Fr(s.manager);o.setPath(s.path),o.setRequestHeader(s.requestHeader),o.setWithCredentials(s.withCredentials),o.load(e,function(a){try{n(s.parse(JSON.parse(a)))}catch(l){r?r(l):console.error(l),s.manager.itemError(e)}},i,r)}parse(e){const n={},i={};function r(m,g){if(n[g]!==void 0)return n[g];const _=m.interleavedBuffers[g],A=s(m,_.buffer),y=s0(_.type,A),q=new Z9(y,_.stride);return q.uuid=_.uuid,n[g]=q,q}function s(m,g){if(i[g]!==void 0)return i[g];const _=m.arrayBuffers[g],A=new Uint32Array(_).buffer;return i[g]=A,A}const o=e.isInstancedBufferGeometry?new zz:new Bt,a=e.data.index;if(a!==void 0){const m=s0(a.type,a.array);o.setIndex(new pn(m,1))}const l=e.data.attributes;for(const m in l){const g=l[m];let v;if(g.isInterleavedBufferAttribute){const _=r(e.data,g.data);v=new E1(_,g.itemSize,g.offset,g.normalized)}else{const _=s0(g.type,g.array),A=g.isInstancedBufferAttribute?J0:pn;v=new A(_,g.itemSize,g.normalized)}g.name!==void 0&&(v.name=g.name),g.usage!==void 0&&v.setUsage(g.usage),g.updateRange!==void 0&&(v.updateRange.offset=g.updateRange.offset,v.updateRange.count=g.updateRange.count),o.setAttribute(m,v)}const u=e.data.morphAttributes;if(u)for(const m in u){const g=u[m],v=[];for(let _=0,A=g.length;_<A;_++){const y=g[_];let q;if(y.isInterleavedBufferAttribute){const E=r(e.data,y.data);q=new E1(E,y.itemSize,y.offset,y.normalized)}else{const E=s0(y.type,y.array);q=new pn(E,y.itemSize,y.normalized)}y.name!==void 0&&(q.name=y.name),v.push(q)}o.morphAttributes[m]=v}e.data.morphTargetsRelative&&(o.morphTargetsRelative=!0);const h=e.data.groups||e.data.drawcalls||e.data.offsets;if(h!==void 0)for(let m=0,g=h.length;m!==g;++m){const v=h[m];o.addGroup(v.start,v.count,v.materialIndex)}const f=e.data.boundingSphere;if(f!==void 0){const m=new L;f.center!==void 0&&m.fromArray(f.center),o.boundingSphere=new jo(m,f.radius)}return e.name&&(o.name=e.name),e.userData&&(o.userData=e.userData),o}}class Ioe extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=this.path===""?zx.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||o;const a=new Fr(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(e,function(l){let u=null;try{u=JSON.parse(l)}catch(h){r!==void 0&&r(h),console.error("THREE:ObjectLoader: Can't parse "+e+".",h.message);return}const c=u.metadata;if(c===void 0||c.type===void 0||c.type.toLowerCase()==="geometry"){r!==void 0&&r(new Error("THREE.ObjectLoader: Can't load "+e)),console.error("THREE.ObjectLoader: Can't load "+e);return}s.parse(u,n)},i,r)}async loadAsync(e,n){const i=this,r=this.path===""?zx.extractUrlBase(e):this.path;this.resourcePath=this.resourcePath||r;const s=new Fr(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials);const o=await s.loadAsync(e,n),a=JSON.parse(o),l=a.metadata;if(l===void 0||l.type===void 0||l.type.toLowerCase()==="geometry")throw new Error("THREE.ObjectLoader: Can't load "+e);return await i.parseAsync(a)}parse(e,n){const i=this.parseAnimations(e.animations),r=this.parseShapes(e.shapes),s=this.parseGeometries(e.geometries,r),o=this.parseImages(e.images,function(){n!==void 0&&n(u)}),a=this.parseTextures(e.textures,o),l=this.parseMaterials(e.materials,a),u=this.parseObject(e.object,s,l,a,i),c=this.parseSkeletons(e.skeletons,u);if(this.bindSkeletons(u,c),n!==void 0){let h=!1;for(const f in o)if(o[f].data instanceof HTMLImageElement){h=!0;break}h===!1&&n(u)}return u}async parseAsync(e){const n=this.parseAnimations(e.animations),i=this.parseShapes(e.shapes),r=this.parseGeometries(e.geometries,i),s=await this.parseImagesAsync(e.images),o=this.parseTextures(e.textures,s),a=this.parseMaterials(e.materials,o),l=this.parseObject(e.object,r,a,o,n),u=this.parseSkeletons(e.skeletons,l);return this.bindSkeletons(l,u),l}parseShapes(e){const n={};if(e!==void 0)for(let i=0,r=e.length;i<r;i++){const s=new c1().fromJSON(e[i]);n[s.uuid]=s}return n}parseSkeletons(e,n){const i={},r={};if(n.traverse(function(s){s.isBone&&(r[s.uuid]=s)}),e!==void 0)for(let s=0,o=e.length;s<o;s++){const a=new eg().fromJSON(e[s],r);i[a.uuid]=a}return i}parseGeometries(e,n){const i={};if(e!==void 0){const r=new Vz;for(let s=0,o=e.length;s<o;s++){let a;const l=e[s];switch(l.type){case"BufferGeometry":case"InstancedBufferGeometry":a=r.parse(l);break;default:l.type in bP?a=bP[l.type].fromJSON(l,n):console.warn(`THREE.ObjectLoader: Unsupported geometry type "${l.type}"`)}a.uuid=l.uuid,l.name!==void 0&&(a.name=l.name),l.userData!==void 0&&(a.userData=l.userData),i[l.uuid]=a}}return i}parseMaterials(e,n){const i={},r={};if(e!==void 0){const s=new Ag;s.setTextures(n);for(let o=0,a=e.length;o<a;o++){const l=e[o];i[l.uuid]===void 0&&(i[l.uuid]=s.parse(l)),r[l.uuid]=i[l.uuid]}}return r}parseAnimations(e){const n={};if(e!==void 0)for(let i=0;i<e.length;i++){const r=e[i],s=Vd.parse(r);n[s.uuid]=s}return n}parseImages(e,n){const i=this,r={};let s;function o(l){return i.manager.itemStart(l),s.load(l,function(){i.manager.itemEnd(l)},void 0,function(){i.manager.itemError(l),i.manager.itemEnd(l)})}function a(l){if(typeof l=="string"){const u=l,c=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(u)?u:i.resourcePath+u;return o(c)}else return l.data?{data:s0(l.type,l.data),width:l.width,height:l.height}:null}if(e!==void 0&&e.length>0){const l=new uC(n);s=new Gd(l),s.setCrossOrigin(this.crossOrigin);for(let u=0,c=e.length;u<c;u++){const h=e[u],f=h.url;if(Array.isArray(f)){const m=[];for(let g=0,v=f.length;g<v;g++){const _=f[g],A=a(_);A!==null&&(A instanceof HTMLImageElement?m.push(A):m.push(new ll(A.data,A.width,A.height)))}r[h.uuid]=new Jh(m)}else{const m=a(h.url);r[h.uuid]=new Jh(m)}}}return r}async parseImagesAsync(e){const n=this,i={};let r;async function s(o){if(typeof o=="string"){const a=o,l=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(a)?a:n.resourcePath+a;return await r.loadAsync(l)}else return o.data?{data:s0(o.type,o.data),width:o.width,height:o.height}:null}if(e!==void 0&&e.length>0){r=new Gd(this.manager),r.setCrossOrigin(this.crossOrigin);for(let o=0,a=e.length;o<a;o++){const l=e[o],u=l.url;if(Array.isArray(u)){const c=[];for(let h=0,f=u.length;h<f;h++){const m=u[h],g=await s(m);g!==null&&(g instanceof HTMLImageElement?c.push(g):c.push(new ll(g.data,g.width,g.height)))}i[l.uuid]=new Jh(c)}else{const c=await s(l.url);i[l.uuid]=new Jh(c)}}}return i}parseTextures(e,n){function i(s,o){return typeof s=="number"?s:(console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",s),o[s])}const r={};if(e!==void 0)for(let s=0,o=e.length;s<o;s++){const a=e[s];a.image===void 0&&console.warn('THREE.ObjectLoader: No "image" specified for',a.uuid),n[a.image]===void 0&&console.warn("THREE.ObjectLoader: Undefined image",a.image);const l=n[a.image],u=l.data;let c;Array.isArray(u)?(c=new N4,u.length===6&&(c.needsUpdate=!0)):(u&&u.data?c=new ll:c=new Gn,u&&(c.needsUpdate=!0)),c.source=l,c.uuid=a.uuid,a.name!==void 0&&(c.name=a.name),a.mapping!==void 0&&(c.mapping=i(a.mapping,Moe)),a.channel!==void 0&&(c.channel=a.channel),a.offset!==void 0&&c.offset.fromArray(a.offset),a.repeat!==void 0&&c.repeat.fromArray(a.repeat),a.center!==void 0&&c.center.fromArray(a.center),a.rotation!==void 0&&(c.rotation=a.rotation),a.wrap!==void 0&&(c.wrapS=i(a.wrap[0],LP),c.wrapT=i(a.wrap[1],LP)),a.format!==void 0&&(c.format=a.format),a.internalFormat!==void 0&&(c.internalFormat=a.internalFormat),a.type!==void 0&&(c.type=a.type),a.colorSpace!==void 0&&(c.colorSpace=a.colorSpace),a.encoding!==void 0&&(c.encoding=a.encoding),a.minFilter!==void 0&&(c.minFilter=i(a.minFilter,NP)),a.magFilter!==void 0&&(c.magFilter=i(a.magFilter,NP)),a.anisotropy!==void 0&&(c.anisotropy=a.anisotropy),a.flipY!==void 0&&(c.flipY=a.flipY),a.generateMipmaps!==void 0&&(c.generateMipmaps=a.generateMipmaps),a.premultiplyAlpha!==void 0&&(c.premultiplyAlpha=a.premultiplyAlpha),a.unpackAlignment!==void 0&&(c.unpackAlignment=a.unpackAlignment),a.compareFunction!==void 0&&(c.compareFunction=a.compareFunction),a.userData!==void 0&&(c.userData=a.userData),r[a.uuid]=c}return r}parseObject(e,n,i,r,s){let o;function a(f){return n[f]===void 0&&console.warn("THREE.ObjectLoader: Undefined geometry",f),n[f]}function l(f){if(f!==void 0){if(Array.isArray(f)){const m=[];for(let g=0,v=f.length;g<v;g++){const _=f[g];i[_]===void 0&&console.warn("THREE.ObjectLoader: Undefined material",_),m.push(i[_])}return m}return i[f]===void 0&&console.warn("THREE.ObjectLoader: Undefined material",f),i[f]}}function u(f){return r[f]===void 0&&console.warn("THREE.ObjectLoader: Undefined texture",f),r[f]}let c,h;switch(e.type){case"Scene":o=new K0,e.background!==void 0&&(Number.isInteger(e.background)?o.background=new Me(e.background):o.background=u(e.background)),e.environment!==void 0&&(o.environment=u(e.environment)),e.fog!==void 0&&(e.fog.type==="Fog"?o.fog=new J9(e.fog.color,e.fog.near,e.fog.far):e.fog.type==="FogExp2"&&(o.fog=new K9(e.fog.color,e.fog.density))),e.backgroundBlurriness!==void 0&&(o.backgroundBlurriness=e.backgroundBlurriness),e.backgroundIntensity!==void 0&&(o.backgroundIntensity=e.backgroundIntensity);break;case"PerspectiveCamera":o=new Yn(e.fov,e.aspect,e.near,e.far),e.focus!==void 0&&(o.focus=e.focus),e.zoom!==void 0&&(o.zoom=e.zoom),e.filmGauge!==void 0&&(o.filmGauge=e.filmGauge),e.filmOffset!==void 0&&(o.filmOffset=e.filmOffset),e.view!==void 0&&(o.view=Object.assign({},e.view));break;case"OrthographicCamera":o=new b2(e.left,e.right,e.top,e.bottom,e.near,e.far),e.zoom!==void 0&&(o.zoom=e.zoom),e.view!==void 0&&(o.view=Object.assign({},e.view));break;case"AmbientLight":o=new Fz(e.color,e.intensity);break;case"DirectionalLight":o=new kz(e.color,e.intensity);break;case"PointLight":o=new Nz(e.color,e.intensity,e.distance,e.decay);break;case"RectAreaLight":o=new Oz(e.color,e.intensity,e.width,e.height);break;case"SpotLight":o=new Lz(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay);break;case"HemisphereLight":o=new Dz(e.color,e.groundColor,e.intensity);break;case"LightProbe":o=new gg().fromJSON(e);break;case"SkinnedMesh":c=a(e.geometry),h=l(e.material),o=new lz(c,h),e.bindMode!==void 0&&(o.bindMode=e.bindMode),e.bindMatrix!==void 0&&o.bindMatrix.fromArray(e.bindMatrix),e.skeleton!==void 0&&(o.skeleton=e.skeleton);break;case"Mesh":c=a(e.geometry),h=l(e.material),o=new yn(c,h);break;case"InstancedMesh":c=a(e.geometry),h=l(e.material);const f=e.count,m=e.instanceMatrix,g=e.instanceColor;o=new uz(c,h,f),o.instanceMatrix=new J0(new Float32Array(m.array),16),g!==void 0&&(o.instanceColor=new J0(new Float32Array(g.array),g.itemSize));break;case"LOD":o=new az;break;case"Line":o=new Lc(a(e.geometry),l(e.material));break;case"LineLoop":o=new cz(a(e.geometry),l(e.material));break;case"LineSegments":o=new _l(a(e.geometry),l(e.material));break;case"PointCloud":case"Points":o=new JT(a(e.geometry),l(e.material));break;case"Sprite":o=new oz(l(e.material));break;case"Group":o=new a0;break;case"Bone":o=new YT;break;default:o=new mn}if(o.uuid=e.uuid,e.name!==void 0&&(o.name=e.name),e.matrix!==void 0?(o.matrix.fromArray(e.matrix),e.matrixAutoUpdate!==void 0&&(o.matrixAutoUpdate=e.matrixAutoUpdate),o.matrixAutoUpdate&&o.matrix.decompose(o.position,o.quaternion,o.scale)):(e.position!==void 0&&o.position.fromArray(e.position),e.rotation!==void 0&&o.rotation.fromArray(e.rotation),e.quaternion!==void 0&&o.quaternion.fromArray(e.quaternion),e.scale!==void 0&&o.scale.fromArray(e.scale)),e.up!==void 0&&o.up.fromArray(e.up),e.castShadow!==void 0&&(o.castShadow=e.castShadow),e.receiveShadow!==void 0&&(o.receiveShadow=e.receiveShadow),e.shadow&&(e.shadow.bias!==void 0&&(o.shadow.bias=e.shadow.bias),e.shadow.normalBias!==void 0&&(o.shadow.normalBias=e.shadow.normalBias),e.shadow.radius!==void 0&&(o.shadow.radius=e.shadow.radius),e.shadow.mapSize!==void 0&&o.shadow.mapSize.fromArray(e.shadow.mapSize),e.shadow.camera!==void 0&&(o.shadow.camera=this.parseObject(e.shadow.camera))),e.visible!==void 0&&(o.visible=e.visible),e.frustumCulled!==void 0&&(o.frustumCulled=e.frustumCulled),e.renderOrder!==void 0&&(o.renderOrder=e.renderOrder),e.userData!==void 0&&(o.userData=e.userData),e.layers!==void 0&&(o.layers.mask=e.layers),e.children!==void 0){const f=e.children;for(let m=0;m<f.length;m++)o.add(this.parseObject(f[m],n,i,r,s))}if(e.animations!==void 0){const f=e.animations;for(let m=0;m<f.length;m++){const g=f[m];o.animations.push(s[g])}}if(e.type==="LOD"){e.autoUpdate!==void 0&&(o.autoUpdate=e.autoUpdate);const f=e.levels;for(let m=0;m<f.length;m++){const g=f[m],v=o.getObjectByProperty("uuid",g.object);v!==void 0&&o.addLevel(v,g.distance,g.hysteresis)}}return o}bindSkeletons(e,n){Object.keys(n).length!==0&&e.traverse(function(i){if(i.isSkinnedMesh===!0&&i.skeleton!==void 0){const r=n[i.skeleton];r===void 0?console.warn("THREE.ObjectLoader: No skeleton found with UUID:",i.skeleton):i.bind(r,i.bindMatrix)}})}}const Moe={UVMapping:Q9,CubeReflectionMapping:cu,CubeRefractionMapping:Dc,EquirectangularReflectionMapping:xd,EquirectangularRefractionMapping:Ed,CubeUVReflectionMapping:w2},LP={RepeatWrapping:hu,ClampToEdgeWrapping:pi,MirroredRepeatWrapping:Sd},NP={NearestFilter:At,NearestMipmapNearestFilter:Am,NearestMipmapLinearFilter:w5,LinearFilter:_n,LinearMipmapNearestFilter:PT,LinearMipmapLinearFilter:Al};class Roe extends qr{constructor(e){super(e),this.isImageBitmapLoader=!0,typeof createImageBitmap>"u"&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),typeof fetch>"u"&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(e){return this.options=e,this}load(e,n,i,r){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const s=this,o=T1.get(e);if(o!==void 0)return s.manager.itemStart(e),setTimeout(function(){n&&n(o),s.manager.itemEnd(e)},0),o;const a={};a.credentials=this.crossOrigin==="anonymous"?"same-origin":"include",a.headers=this.requestHeader,fetch(e,a).then(function(l){return l.blob()}).then(function(l){return createImageBitmap(l,Object.assign(s.options,{colorSpaceConversion:"none"}))}).then(function(l){T1.add(e,l),n&&n(l),s.manager.itemEnd(e)}).catch(function(l){r&&r(l),s.manager.itemError(e),s.manager.itemEnd(e)}),s.manager.itemStart(e)}}let q7;class hC{static getContext(){return q7===void 0&&(q7=new(window.AudioContext||window.webkitAudioContext)),q7}static setContext(e){q7=e}}class boe extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=new Fr(this.manager);o.setResponseType("arraybuffer"),o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(l){try{const u=l.slice(0);hC.getContext().decodeAudioData(u,function(h){n(h)},a)}catch(u){a(u)}},i,r);function a(l){r?r(l):console.error(l),s.manager.itemError(e)}}}class Poe extends gg{constructor(e,n,i=1){super(void 0,i),this.isHemisphereLightProbe=!0;const r=new Me().set(e),s=new Me().set(n),o=new L(r.r,r.g,r.b),a=new L(s.r,s.g,s.b),l=Math.sqrt(Math.PI),u=l*Math.sqrt(.75);this.sh.coefficients[0].copy(o).add(a).multiplyScalar(l),this.sh.coefficients[1].copy(o).sub(a).multiplyScalar(u)}}class Boe extends gg{constructor(e,n=1){super(void 0,n),this.isAmbientLightProbe=!0;const i=new Me().set(e);this.sh.coefficients[0].set(i.r,i.g,i.b).multiplyScalar(2*Math.sqrt(Math.PI))}}const kP=new st,FP=new st,Eh=new st;class Doe{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new Yn,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new Yn,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(e){const n=this._cache;if(n.focus!==e.focus||n.fov!==e.fov||n.aspect!==e.aspect*this.aspect||n.near!==e.near||n.far!==e.far||n.zoom!==e.zoom||n.eyeSep!==this.eyeSep){n.focus=e.focus,n.fov=e.fov,n.aspect=e.aspect*this.aspect,n.near=e.near,n.far=e.far,n.zoom=e.zoom,n.eyeSep=this.eyeSep,Eh.copy(e.projectionMatrix);const r=n.eyeSep/2,s=r*n.near/n.focus,o=n.near*Math.tan(l1*n.fov*.5)/n.zoom;let a,l;FP.elements[12]=-r,kP.elements[12]=r,a=-o*n.aspect+s,l=o*n.aspect+s,Eh.elements[0]=2*n.near/(l-a),Eh.elements[8]=(l+a)/(l-a),this.cameraL.projectionMatrix.copy(Eh),a=-o*n.aspect-s,l=o*n.aspect-s,Eh.elements[0]=2*n.near/(l-a),Eh.elements[8]=(l+a)/(l-a),this.cameraR.projectionMatrix.copy(Eh)}this.cameraL.matrixWorld.copy(e.matrixWorld).multiply(FP),this.cameraR.matrixWorld.copy(e.matrixWorld).multiply(kP)}}class vg{constructor(e=!0){this.autoStart=e,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=OP(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let e=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const n=OP();e=(n-this.oldTime)/1e3,this.oldTime=n,this.elapsedTime+=e}return e}}function OP(){return(typeof performance>"u"?Date:performance).now()}const Sh=new L,UP=new rs,Loe=new L,Th=new L;class Noe extends mn{constructor(){super(),this.type="AudioListener",this.context=hC.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new vg}getInput(){return this.gain}removeFilter(){return this.filter!==null&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(e){return this.filter!==null?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=e,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}updateMatrixWorld(e){super.updateMatrixWorld(e);const n=this.context.listener,i=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Sh,UP,Loe),Th.set(0,0,-1).applyQuaternion(UP),n.positionX){const r=this.context.currentTime+this.timeDelta;n.positionX.linearRampToValueAtTime(Sh.x,r),n.positionY.linearRampToValueAtTime(Sh.y,r),n.positionZ.linearRampToValueAtTime(Sh.z,r),n.forwardX.linearRampToValueAtTime(Th.x,r),n.forwardY.linearRampToValueAtTime(Th.y,r),n.forwardZ.linearRampToValueAtTime(Th.z,r),n.upX.linearRampToValueAtTime(i.x,r),n.upY.linearRampToValueAtTime(i.y,r),n.upZ.linearRampToValueAtTime(i.z,r)}else n.setPosition(Sh.x,Sh.y,Sh.z),n.setOrientation(Th.x,Th.y,Th.z,i.x,i.y,i.z)}}let Gz=class extends mn{constructor(e){super(),this.type="Audio",this.listener=e,this.context=e.context,this.gain=this.context.createGain(),this.gain.connect(e.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(e){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=e,this.connect(),this}setMediaElementSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(e),this.connect(),this}setMediaStreamSource(e){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(e),this.connect(),this}setBuffer(e){return this.buffer=e,this.sourceType="buffer",this.autoplay&&this.play(),this}play(e=0){if(this.isPlaying===!0){console.warn("THREE.Audio: Audio is already playing.");return}if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}this._startedAt=this.context.currentTime+e;const n=this.context.createBufferSource();return n.buffer=this.buffer,n.loop=this.loop,n.loopStart=this.loopStart,n.loopEnd=this.loopEnd,n.onended=this.onEnded.bind(this),n.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=n,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.isPlaying===!0&&(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.loop===!0&&(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this}stop(){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this._progress=0,this.source!==null&&(this.source.stop(),this.source.onended=null),this.isPlaying=!1,this}connect(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(let e=1,n=this.filters.length;e<n;e++)this.filters[e-1].connect(this.filters[e]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(let e=1,n=this.filters.length;e<n;e++)this.filters[e-1].disconnect(this.filters[e]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}getFilters(){return this.filters}setFilters(e){return e||(e=[]),this._connected===!0?(this.disconnect(),this.filters=e.slice(),this.connect()):this.filters=e.slice(),this}setDetune(e){if(this.detune=e,this.source.detune!==void 0)return this.isPlaying===!0&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(e){return this.setFilters(e?[e]:[])}setPlaybackRate(e){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.playbackRate=e,this.isPlaying===!0&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return this.hasPlaybackControl===!1?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop}setLoop(e){if(this.hasPlaybackControl===!1){console.warn("THREE.Audio: this Audio has no playback control.");return}return this.loop=e,this.isPlaying===!0&&(this.source.loop=this.loop),this}setLoopStart(e){return this.loopStart=e,this}setLoopEnd(e){return this.loopEnd=e,this}getVolume(){return this.gain.gain.value}setVolume(e){return this.gain.gain.setTargetAtTime(e,this.context.currentTime,.01),this}};const Ch=new L,zP=new rs,koe=new L,wh=new L;class Foe extends Gz{constructor(e){super(e),this.panner=this.context.createPanner(),this.panner.panningModel="HRTF",this.panner.connect(this.gain)}connect(){super.connect(),this.panner.connect(this.gain)}disconnect(){super.disconnect(),this.panner.disconnect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(e){return this.panner.refDistance=e,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(e){return this.panner.rolloffFactor=e,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(e){return this.panner.distanceModel=e,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(e){return this.panner.maxDistance=e,this}setDirectionalCone(e,n,i){return this.panner.coneInnerAngle=e,this.panner.coneOuterAngle=n,this.panner.coneOuterGain=i,this}updateMatrixWorld(e){if(super.updateMatrixWorld(e),this.hasPlaybackControl===!0&&this.isPlaying===!1)return;this.matrixWorld.decompose(Ch,zP,koe),wh.set(0,0,1).applyQuaternion(zP);const n=this.panner;if(n.positionX){const i=this.context.currentTime+this.listener.timeDelta;n.positionX.linearRampToValueAtTime(Ch.x,i),n.positionY.linearRampToValueAtTime(Ch.y,i),n.positionZ.linearRampToValueAtTime(Ch.z,i),n.orientationX.linearRampToValueAtTime(wh.x,i),n.orientationY.linearRampToValueAtTime(wh.y,i),n.orientationZ.linearRampToValueAtTime(wh.z,i)}else n.setPosition(Ch.x,Ch.y,Ch.z),n.setOrientation(wh.x,wh.y,wh.z)}}class Ooe{constructor(e,n=2048){this.analyser=e.context.createAnalyser(),this.analyser.fftSize=n,this.data=new Uint8Array(this.analyser.frequencyBinCount),e.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let e=0;const n=this.getFrequencyData();for(let i=0;i<n.length;i++)e+=n[i];return e/n.length}}class Qz{constructor(e,n,i){this.binding=e,this.valueSize=i;let r,s,o;switch(n){case"quaternion":r=this._slerp,s=this._slerpAdditive,o=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(i*6),this._workIndex=5;break;case"string":case"bool":r=this._select,s=this._select,o=this._setAdditiveIdentityOther,this.buffer=new Array(i*5);break;default:r=this._lerp,s=this._lerpAdditive,o=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(i*5)}this._mixBufferRegion=r,this._mixBufferRegionAdditive=s,this._setIdentity=o,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(e,n){const i=this.buffer,r=this.valueSize,s=e*r+r;let o=this.cumulativeWeight;if(o===0){for(let a=0;a!==r;++a)i[s+a]=i[a];o=n}else{o+=n;const a=n/o;this._mixBufferRegion(i,s,0,a,r)}this.cumulativeWeight=o}accumulateAdditive(e){const n=this.buffer,i=this.valueSize,r=i*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(n,r,0,e,i),this.cumulativeWeightAdditive+=e}apply(e){const n=this.valueSize,i=this.buffer,r=e*n+n,s=this.cumulativeWeight,o=this.cumulativeWeightAdditive,a=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,s<1){const l=n*this._origIndex;this._mixBufferRegion(i,r,l,1-s,n)}o>0&&this._mixBufferRegionAdditive(i,r,this._addIndex*n,1,n);for(let l=n,u=n+n;l!==u;++l)if(i[l]!==i[l+n]){a.setValue(i,r);break}}saveOriginalState(){const e=this.binding,n=this.buffer,i=this.valueSize,r=i*this._origIndex;e.getValue(n,r);for(let s=i,o=r;s!==o;++s)n[s]=n[r+s%i];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){const e=this._addIndex*this.valueSize,n=e+this.valueSize;for(let i=e;i<n;i++)this.buffer[i]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){const e=this._origIndex*this.valueSize,n=this._addIndex*this.valueSize;for(let i=0;i<this.valueSize;i++)this.buffer[n+i]=this.buffer[e+i]}_select(e,n,i,r,s){if(r>=.5)for(let o=0;o!==s;++o)e[n+o]=e[i+o]}_slerp(e,n,i,r){rs.slerpFlat(e,n,e,n,e,i,r)}_slerpAdditive(e,n,i,r,s){const o=this._workIndex*s;rs.multiplyQuaternionsFlat(e,o,e,n,e,i),rs.slerpFlat(e,n,e,n,e,o,r)}_lerp(e,n,i,r,s){const o=1-r;for(let a=0;a!==s;++a){const l=n+a;e[l]=e[l]*o+e[i+a]*r}}_lerpAdditive(e,n,i,r,s){for(let o=0;o!==s;++o){const a=n+o;e[a]=e[a]+e[i+o]*r}}}const fC="\\[\\]\\.:\\/",Uoe=new RegExp("["+fC+"]","g"),dC="[^"+fC+"]",zoe="[^"+fC.replace("\\.","")+"]",Voe=/((?:WC+[\/:])*)/.source.replace("WC",dC),Goe=/(WCOD+)?/.source.replace("WCOD",zoe),Qoe=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",dC),Hoe=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",dC),Woe=new RegExp("^"+Voe+Goe+Qoe+Hoe+"$"),$oe=["material","materials","bones","map"];class joe{constructor(e,n,i){const r=i||on.parseTrackName(n);this._targetGroup=e,this._bindings=e.subscribe_(n,r)}getValue(e,n){this.bind();const i=this._targetGroup.nCachedObjects_,r=this._bindings[i];r!==void 0&&r.getValue(e,n)}setValue(e,n){const i=this._bindings;for(let r=this._targetGroup.nCachedObjects_,s=i.length;r!==s;++r)i[r].setValue(e,n)}bind(){const e=this._bindings;for(let n=this._targetGroup.nCachedObjects_,i=e.length;n!==i;++n)e[n].bind()}unbind(){const e=this._bindings;for(let n=this._targetGroup.nCachedObjects_,i=e.length;n!==i;++n)e[n].unbind()}}class on{constructor(e,n,i){this.path=n,this.parsedPath=i||on.parseTrackName(n),this.node=on.findNode(e,this.parsedPath.nodeName),this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,n,i){return e&&e.isAnimationObjectGroup?new on.Composite(e,n,i):new on(e,n,i)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(Uoe,"")}static parseTrackName(e){const n=Woe.exec(e);if(n===null)throw new Error("PropertyBinding: Cannot parse trackName: "+e);const i={nodeName:n[2],objectName:n[3],objectIndex:n[4],propertyName:n[5],propertyIndex:n[6]},r=i.nodeName&&i.nodeName.lastIndexOf(".");if(r!==void 0&&r!==-1){const s=i.nodeName.substring(r+1);$oe.indexOf(s)!==-1&&(i.nodeName=i.nodeName.substring(0,r),i.objectName=s)}if(i.propertyName===null||i.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return i}static findNode(e,n){if(n===void 0||n===""||n==="."||n===-1||n===e.name||n===e.uuid)return e;if(e.skeleton){const i=e.skeleton.getBoneByName(n);if(i!==void 0)return i}if(e.children){const i=function(s){for(let o=0;o<s.length;o++){const a=s[o];if(a.name===n||a.uuid===n)return a;const l=i(a.children);if(l)return l}return null},r=i(e.children);if(r)return r}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(e,n){e[n]=this.targetObject[this.propertyName]}_getValue_array(e,n){const i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)e[n++]=i[r]}_getValue_arrayElement(e,n){e[n]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(e,n){this.resolvedProperty.toArray(e,n)}_setValue_direct(e,n){this.targetObject[this.propertyName]=e[n]}_setValue_direct_setNeedsUpdate(e,n){this.targetObject[this.propertyName]=e[n],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(e,n){this.targetObject[this.propertyName]=e[n],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(e,n){const i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[n++]}_setValue_array_setNeedsUpdate(e,n){const i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[n++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(e,n){const i=this.resolvedProperty;for(let r=0,s=i.length;r!==s;++r)i[r]=e[n++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(e,n){this.resolvedProperty[this.propertyIndex]=e[n]}_setValue_arrayElement_setNeedsUpdate(e,n){this.resolvedProperty[this.propertyIndex]=e[n],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(e,n){this.resolvedProperty[this.propertyIndex]=e[n],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(e,n){this.resolvedProperty.fromArray(e,n)}_setValue_fromArray_setNeedsUpdate(e,n){this.resolvedProperty.fromArray(e,n),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(e,n){this.resolvedProperty.fromArray(e,n),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(e,n){this.bind(),this.getValue(e,n)}_setValue_unbound(e,n){this.bind(),this.setValue(e,n)}bind(){let e=this.node;const n=this.parsedPath,i=n.objectName,r=n.propertyName;let s=n.propertyIndex;if(e||(e=on.findNode(this.rootNode,n.nodeName),this.node=e),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!e){console.warn("THREE.PropertyBinding: No target node found for track: "+this.path+".");return}if(i){let u=n.objectIndex;switch(i){case"materials":if(!e.material){console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);return}if(!e.material.materials){console.error("THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.",this);return}e=e.material.materials;break;case"bones":if(!e.skeleton){console.error("THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.",this);return}e=e.skeleton.bones;for(let c=0;c<e.length;c++)if(e[c].name===u){u=c;break}break;case"map":if("map"in e){e=e.map;break}if(!e.material){console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);return}if(!e.material.map){console.error("THREE.PropertyBinding: Can not bind to material.map as node.material does not have a map.",this);return}e=e.material.map;break;default:if(e[i]===void 0){console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);return}e=e[i]}if(u!==void 0){if(e[u]===void 0){console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,e);return}e=e[u]}}const o=e[r];if(o===void 0){const u=n.nodeName;console.error("THREE.PropertyBinding: Trying to update property for track: "+u+"."+r+" but it wasn't found.",e);return}let a=this.Versioning.None;this.targetObject=e,e.needsUpdate!==void 0?a=this.Versioning.NeedsUpdate:e.matrixWorldNeedsUpdate!==void 0&&(a=this.Versioning.MatrixWorldNeedsUpdate);let l=this.BindingType.Direct;if(s!==void 0){if(r==="morphTargetInfluences"){if(!e.geometry){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",this);return}if(!e.geometry.morphAttributes){console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);return}e.morphTargetDictionary[s]!==void 0&&(s=e.morphTargetDictionary[s])}l=this.BindingType.ArrayElement,this.resolvedProperty=o,this.propertyIndex=s}else o.fromArray!==void 0&&o.toArray!==void 0?(l=this.BindingType.HasFromToArray,this.resolvedProperty=o):Array.isArray(o)?(l=this.BindingType.EntireArray,this.resolvedProperty=o):this.propertyName=r;this.getValue=this.GetterByBindingType[l],this.setValue=this.SetterByBindingTypeAndVersioning[l][a]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}on.Composite=joe;on.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3};on.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2};on.prototype.GetterByBindingType=[on.prototype._getValue_direct,on.prototype._getValue_array,on.prototype._getValue_arrayElement,on.prototype._getValue_toArray];on.prototype.SetterByBindingTypeAndVersioning=[[on.prototype._setValue_direct,on.prototype._setValue_direct_setNeedsUpdate,on.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[on.prototype._setValue_array,on.prototype._setValue_array_setNeedsUpdate,on.prototype._setValue_array_setMatrixWorldNeedsUpdate],[on.prototype._setValue_arrayElement,on.prototype._setValue_arrayElement_setNeedsUpdate,on.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[on.prototype._setValue_fromArray,on.prototype._setValue_fromArray_setNeedsUpdate,on.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class Xoe{constructor(){this.isAnimationObjectGroup=!0,this.uuid=Zs(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;const e={};this._indicesByUUID=e;for(let i=0,r=arguments.length;i!==r;++i)e[arguments[i].uuid]=i;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};const n=this;this.stats={objects:{get total(){return n._objects.length},get inUse(){return this.total-n.nCachedObjects_}},get bindingsPerObject(){return n._bindings.length}}}add(){const e=this._objects,n=this._indicesByUUID,i=this._paths,r=this._parsedPaths,s=this._bindings,o=s.length;let a,l=e.length,u=this.nCachedObjects_;for(let c=0,h=arguments.length;c!==h;++c){const f=arguments[c],m=f.uuid;let g=n[m];if(g===void 0){g=l++,n[m]=g,e.push(f);for(let v=0,_=o;v!==_;++v)s[v].push(new on(f,i[v],r[v]))}else if(g<u){a=e[g];const v=--u,_=e[v];n[_.uuid]=g,e[g]=_,n[m]=v,e[v]=f;for(let A=0,y=o;A!==y;++A){const q=s[A],E=q[v];let T=q[g];q[g]=E,T===void 0&&(T=new on(f,i[A],r[A])),q[v]=T}}else e[g]!==a&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastru
3611cture when reloading scenes.")}this.nCachedObjects_=u}remove(){const e=this._objects,n=this._indicesByUUID,i=this._bindings,r=i.length;let s=this.nCachedObjects_;for(let o=0,a=arguments.length;o!==a;++o){const l=arguments[o],u=l.uuid,c=n[u];if(c!==void 0&&c>=s){const h=s++,f=e[h];n[f.uuid]=c,e[c]=f,n[u]=h,e[h]=l;for(let m=0,g=r;m!==g;++m){const v=i[m],_=v[h],A=v[c];v[c]=_,v[h]=A}}}this.nCachedObjects_=s}uncache(){const e=this._objects,n=this._indicesByUUID,i=this._bindings,r=i.length;let s=this.nCachedObjects_,o=e.length;for(let a=0,l=arguments.length;a!==l;++a){const u=arguments[a],c=u.uuid,h=n[c];if(h!==void 0)if(delete n[c],h<s){const f=--s,m=e[f],g=--o,v=e[g];n[m.uuid]=h,e[h]=m,n[v.uuid]=f,e[f]=v,e.pop();for(let _=0,A=r;_!==A;++_){const y=i[_],q=y[f],E=y[g];y[h]=q,y[f]=E,y.pop()}}else{const f=--o,m=e[f];f>0&&(n[m.uuid]=h),e[h]=m,e.pop();for(let g=0,v=r;g!==v;++g){const _=i[g];_[h]=_[f],_.pop()}}}this.nCachedObjects_=s}subscribe_(e,n){const i=this._bindingsIndicesByPath;let r=i[e];const s=this._bindings;if(r!==void 0)return s[r];const o=this._paths,a=this._parsedPaths,l=this._objects,u=l.length,c=this.nCachedObjects_,h=new Array(u);r=s.length,i[e]=r,o.push(e),a.push(n),s.push(h);for(let f=c,m=l.length;f!==m;++f){const g=l[f];h[f]=new on(g,e,n)}return h}unsubscribe_(e){const n=this._bindingsIndicesByPath,i=n[e];if(i!==void 0){const r=this._paths,s=this._parsedPaths,o=this._bindings,a=o.length-1,l=o[a],u=e[a];n[u]=i,o[i]=l,o.pop(),s[i]=s[a],s.pop(),r[i]=r[a],r.pop()}}}class Hz{constructor(e,n,i=null,r=n.blendMode){this._mixer=e,this._clip=n,this._localRoot=i,this.blendMode=r;const s=n.tracks,o=s.length,a=new Array(o),l={endingStart:Yh,endingEnd:Yh};for(let u=0;u!==o;++u){const c=s[u].createInterpolant(null);a[u]=c,c.settings=l}this._interpolantSettings=l,this._interpolants=a,this._propertyBindings=new Array(o),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=PU,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&&!this.paused&&this.timeScale!==0&&this._startTime===null&&this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(e){return this._startTime=e,this}setLoop(e,n){return this.loop=e,this.repetitions=n,this}setEffectiveWeight(e){return this.weight=e,this._effectiveWeight=this.enabled?e:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(e){return this._scheduleFading(e,0,1)}fadeOut(e){return this._scheduleFading(e,1,0)}crossFadeFrom(e,n,i){if(e.fadeOut(n),this.fadeIn(n),i){const r=this._clip.duration,s=e._clip.duration,o=s/r,a=r/s;e.warp(1,o,n),this.warp(a,1,n)}return this}crossFadeTo(e,n,i){return e.crossFadeFrom(this,n,i)}stopFading(){const e=this._weightInterpolant;return e!==null&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}setEffectiveTimeScale(e){return this.timeScale=e,this._effectiveTimeScale=this.paused?0:e,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(e){return this.timeScale=this._clip.duration/e,this.stopWarping()}syncWith(e){return this.time=e.time,this.timeScale=e.timeScale,this.stopWarping()}halt(e){return this.warp(this._effectiveTimeScale,0,e)}warp(e,n,i){const r=this._mixer,s=r.time,o=this.timeScale;let a=this._timeScaleInterpolant;a===null&&(a=r._lendControlInterpolant(),this._timeScaleInterpolant=a);const l=a.parameterPositions,u=a.sampleValues;return l[0]=s,l[1]=s+i,u[0]=e/o,u[1]=n/o,this}stopWarping(){const e=this._timeScaleInterpolant;return e!==null&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(e)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(e,n,i,r){if(!this.enabled){this._updateWeight(e);return}const s=this._startTime;if(s!==null){const l=(e-s)*i;l<0||i===0?n=0:(this._startTime=null,n=i*l)}n*=this._updateTimeScale(e);const o=this._updateTime(n),a=this._updateWeight(e);if(a>0){const l=this._interpolants,u=this._propertyBindings;switch(this.blendMode){case UT:for(let c=0,h=l.length;c!==h;++c)l[c].evaluate(o),u[c].accumulateAdditive(a);break;case W9:default:for(let c=0,h=l.length;c!==h;++c)l[c].evaluate(o),u[c].accumulate(r,a)}}}_updateWeight(e){let n=0;if(this.enabled){n=this.weight;const i=this._weightInterpolant;if(i!==null){const r=i.evaluate(e)[0];n*=r,e>i.parameterPositions[1]&&(this.stopFading(),r===0&&(this.enabled=!1))}}return this._effectiveWeight=n,n}_updateTimeScale(e){let n=0;if(!this.paused){n=this.timeScale;const i=this._timeScaleInterpolant;if(i!==null){const r=i.evaluate(e)[0];n*=r,e>i.parameterPositions[1]&&(this.stopWarping(),n===0?this.paused=!0:this.timeScale=n)}}return this._effectiveTimeScale=n,n}_updateTime(e){const n=this._clip.duration,i=this.loop;let r=this.time+e,s=this._loopCount;const o=i===BU;if(e===0)return s===-1?r:o&&(s&1)===1?n-r:r;if(i===bU){s===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));e:{if(r>=n)r=n;else if(r<0)r=0;else{this.time=r;break e}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(s===-1&&(e>=0?(s=0,this._setEndings(!0,this.repetitions===0,o)):this._setEndings(this.repetitions===0,!0,o)),r>=n||r<0){const a=Math.floor(r/n);r-=n*a,s+=Math.abs(a);const l=this.repetitions-s;if(l<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,r=e>0?n:0,this.time=r,this._mixer.dispatchEvent({type:"finished",action:this,direction:e>0?1:-1});else{if(l===1){const u=e<0;this._setEndings(u,!u,o)}else this._setEndings(!1,!1,o);this._loopCount=s,this.time=r,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:a})}}else this.time=r;if(o&&(s&1)===1)return n-r}return r}_setEndings(e,n,i){const r=this._interpolantSettings;i?(r.endingStart=Kh,r.endingEnd=Kh):(e?r.endingStart=this.zeroSlopeAtStart?Kh:Yh:r.endingStart=Pd,n?r.endingEnd=this.zeroSlopeAtEnd?Kh:Yh:r.endingEnd=Pd)}
vendor: 8,484 bytes, line 3611
3611_scheduleFading(e,n,i){const r=this._mixer,s=r.time;let o=this._weightInterpolant;o===null&&(o=r._lendControlInterpolant(),this._weightInterpolant=o);const a=o.parameterPositions,l=o.sampleValues;return a[0]=s,l[0]=n,a[1]=s+e,l[1]=i,this}}const Yoe=new Float32Array(1);class Koe extends $o{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(e,n){const i=e._localRoot||this._root,r=e._clip.tracks,s=r.length,o=e._propertyBindings,a=e._interpolants,l=i.uuid,u=this._bindingsByRootAndName;let c=u[l];c===void 0&&(c={},u[l]=c);for(let h=0;h!==s;++h){const f=r[h],m=f.name;let g=c[m];if(g!==void 0)++g.referenceCount,o[h]=g;else{if(g=o[h],g!==void 0){g._cacheIndex===null&&(++g.referenceCount,this._addInactiveBinding(g,l,m));continue}const v=n&&n._propertyBindings[h].binding.parsedPath;g=new Qz(on.create(i,m,v),f.ValueTypeName,f.getValueSize()),++g.referenceCount,this._addInactiveBinding(g,l,m),o[h]=g}a[h].resultBuffer=g.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){const i=(e._localRoot||this._root).uuid,r=e._clip.uuid,s=this._actionsByClip[r];this._bindAction(e,s&&s.knownActions[0]),this._addInactiveAction(e,r,i)}const n=e._propertyBindings;for(let i=0,r=n.length;i!==r;++i){const s=n[i];s.useCount++===0&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){const n=e._propertyBindings;for(let i=0,r=n.length;i!==r;++i){const s=n[i];--s.useCount===0&&(s.restoreOriginalState(),this._takeBackBinding(s))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const 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){const n=e._cacheIndex;return n!==null&&n<this._nActiveActions}_addInactiveAction(e,n,i){const r=this._actions,s=this._actionsByClip;let o=s[n];if(o===void 0)o={knownActions:[e],actionByRoot:{}},e._byClipCacheIndex=0,s[n]=o;else{const a=o.knownActions;e._byClipCacheIndex=a.length,a.push(e)}e._cacheIndex=r.length,r.push(e),o.actionByRoot[i]=e}_removeInactiveAction(e){const n=this._actions,i=n[n.length-1],r=e._cacheIndex;i._cacheIndex=r,n[r]=i,n.pop(),e._cacheIndex=null;const s=e._clip.uuid,o=this._actionsByClip,a=o[s],l=a.knownActions,u=l[l.length-1],c=e._byClipCacheIndex;u._byClipCacheIndex=c,l[c]=u,l.pop(),e._byClipCacheIndex=null;const h=a.actionByRoot,f=(e._localRoot||this._root).uuid;delete h[f],l.length===0&&delete o[s],this._removeInactiveBindingsForAction(e)}_removeInactiveBindingsForAction(e){const n=e._propertyBindings;for(let i=0,r=n.length;i!==r;++i){const s=n[i];--s.referenceCount===0&&this._removeInactiveBinding(s)}}_lendAction(e){const n=this._actions,i=e._cacheIndex,r=this._nActiveActions++,s=n[r];e._cacheIndex=r,n[r]=e,s._cacheIndex=i,n[i]=s}_takeBackAction(e){const n=this._actions,i=e._cacheIndex,r=--this._nActiveActions,s=n[r];e._cacheIndex=r,n[r]=e,s._cacheIndex=i,n[i]=s}_addInactiveBinding(e,n,i){const r=this._bindingsByRootAndName,s=this._bindings;let o=r[n];o===void 0&&(o={},r[n]=o),o[i]=e,e._cacheIndex=s.length,s.push(e)}_removeInactiveBinding(e){const n=this._bindings,i=e.binding,r=i.rootNode.uuid,s=i.path,o=this._bindingsByRootAndName,a=o[r],l=n[n.length-1],u=e._cacheIndex;l._cacheIndex=u,n[u]=l,n.pop(),delete a[s],Object.keys(a).length===0&&delete o[r]}_lendBinding(e){const n=this._bindings,i=e._cacheIndex,r=this._nActiveBindings++,s=n[r];e._cacheIndex=r,n[r]=e,s._cacheIndex=i,n[i]=s}_takeBackBinding(e){const n=this._bindings,i=e._cacheIndex,r=--this._nActiveBindings,s=n[r];e._cacheIndex=r,n[r]=e,s._cacheIndex=i,n[i]=s}_lendControlInterpolant(){const e=this._controlInterpolants,n=this._nActiveControlInterpolants++;let i=e[n];return i===void 0&&(i=new aC(new Float32Array(2),new Float32Array(2),1,Yoe),i.__cacheIndex=n,e[n]=i),i}_takeBackControlInterpolant(e){const n=this._controlInterpolants,i=e.__cacheIndex,r=--this._nActiveControlInterpolants,s=n[r];e.__cacheIndex=r,n[r]=e,s.__cacheIndex=i,n[i]=s}clipAction(e,n,i){const r=n||this._root,s=r.uuid;let o=typeof e=="string"?Vd.findByName(r,e):e;const a=o!==null?o.uuid:e,l=this._actionsByClip[a];let u=null;if(i===void 0&&(o!==null?i=o.blendMode:i=W9),l!==void 0){const h=l.actionByRoot[s];if(h!==void 0&&h.blendMode===i)return h;u=l.knownActions[0],o===null&&(o=u._clip)}if(o===null)return null;const c=new Hz(this,o,n,i);return this._bindAction(c,u),this._addInactiveAction(c,a,s),c}existingAction(e,n){const i=n||this._root,r=i.uuid,s=typeof e=="string"?Vd.findByName(i,e):e,o=s?s.uuid:e,a=this._actionsByClip[o];return a!==void 0&&a.actionByRoot[r]||null}stopAllAction(){const e=this._actions,n=this._nActiveActions;for(let i=n-1;i>=0;--i)e[i].stop();return this}update(e){e*=this.timeScale;const n=this._actions,i=this._nActiveActions,r=this.time+=e,s=Math.sign(e),o=this._accuIndex^=1;for(let u=0;u!==i;++u)n[u]._update(r,e,s,o);const a=this._bindings,l=this._nActiveBindings;for(let u=0;u!==l;++u)a[u].apply(o);return this}setTime(e){this.time=0;for(let n=0;n<this._actions.length;n++)this._actions[n].time=0;return this.update(e)}getRoot(){return this._root}uncacheClip(e){const n=this._actions,i=e.uuid,r=this._actionsByClip,s=r[i];if(s!==void 0){const o=s.knownActions;for(let a=0,l=o.length;a!==l;++a){const u=o[a];this._deactivateAction(u);const c=u._cacheIndex,h=n[n.length-1];u._cacheIndex=null,u._byClipCacheIndex=null,h._cacheIndex=c,n[c]=h,n.pop(),this._removeInactiveBindingsForAction(u)}delete r[i]}}uncacheRoot(e){const n=e.uuid,i=this._actionsByClip;for(const o in i){const a=i[o].actionByRoot,l=a[n];l!==void 0&&(this._deactivateAction(l),this._removeInactiveAction(l))}const r=this._bindingsByRootAndName,s=r[n];if(s!==void 0)for(const o in s){const a=s[o];a.restoreOriginalState(),this._removeInactiveBinding(a)}}uncacheAction(e,n){const i=this.existingAction(e,n);i!==null&&(this._deactivateAction(i),this._removeInactiveAction(i))}}class Jt{constructor(e){this.value=e}clone(){return new Jt(this.value.clone===void 0?this.value:this.value.clone())}}let Joe=0;class Zoe extends $o{constructor(){super(),this.isUniformsGroup=!0,Object.defineProperty(this,"id",{value:Joe++}),this.name="",this.usage=Bd,this.uniforms=[]}add(e){return this.uniforms.push(e),this}remove(e){const n=this.uniforms.indexOf(e);return n!==-1&&this.uniforms.splice(n,1),this}setName(e){return this.name=e,this}setUsage(e){return this.usage=e,this}dispose(){return this.dispatchEvent({type:"dispose"}),this}copy(e){this.name=e.name,this.usage=e.usage;const n=e.uniforms;this.uniforms.length=0;for(let i=0,r=n.length;i<r;i++)this.uniforms.push(n[i].clone());return this}clone(){return new this.constructor().copy(this)}}class eae extends Z9{constructor(e,n,i=1){super(e,n),this.isInstancedInterleavedBuffer=!0,this.meshPerAttribute=i}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}clone(e){const n=super.clone(e);return n.meshPerAttribute=this.meshPerAttribute,n}toJSON(e){const n=super.toJSON(e);return n.isInstancedInterleavedBuffer=!0,n.meshPerAttribute=this.meshPerAttribute,n}}class tae{constructor(e,n,i,r,s){this.isGLBufferAttribute=!0,this.name="",this.buffer=e,this.type=n,this.itemSize=i,this.elementSize=r,this.count=s,this.version=0}set needsUpdate(e){e===!0&&this.version++}setBuffer(e){return this.buffer=e,this}setType(e,n){return this.type=e,this.elementSize=n,this}setItemSize(e){return this.itemSize=e,this}setCount(e){return this.count=e,this}}class Wz{constructor(e,n,i=0,r=1/0){this.ray=new I2(e,n),this.near=i,this.far=r,this.camera=null,this.layers=new u1,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(e,n){this.ray.set(e,n)}setFromCamera(e,n){n.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(n.matrixWorld),this.ray.direction.set(e.x,e.y,.5).unproject(n).sub(this.ray.origin).normalize(),this.camera=n):n.isOrthographicCamera?(this.ray.origin.set(e.x,e.y,(n.near+n.far)/(n.near-n.far)).unproject(n),this.ray.direction.set(0,0,-1).transformDirection(n.matrixWorld),this.camera=n):console.error("THREE.Raycaster:
3611Unsupported camera type: "+n.type)}intersectObject(e,n=!0,i=[]){return Vx(e,this,i,n),i.sort(VP),i}intersectObjects(e,n=!0,i=[]){for(let r=0,s=e.length;r<s;r++)Vx(e[r],this,i,n);return i.sort(VP),i}}function VP(t,e){return t.distance-e.distance}function Vx(t,e,n,i){if(t.layers.test(e.layers)&&t.raycast(e,n),i===!0){const r=t.children;for(let s=0,o=r.length;s<o;s++)Vx(r[s],e,n,!0)}}class nae{constructor(e=1,n=0,i=0){return this.radius=e,this.phi=n,this.theta=i,this}set(e,n,i){return this.radius=e,this.phi=n,this.theta=i,this}copy(e){return this.radius=e.radius,this.phi=e.phi,this.theta=e.theta,this}makeSafe(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,n,i){return this.radius=Math.sqrt(e*e+n*n+i*i),this.radius===0?(this.theta=0,this.phi=0):(this.theta=Math.atan2(e,i),this.phi=Math.acos(ci(n/this.radius,-1,1))),this}clone(){return new this.constructor().copy(this)}}class iae{constructor(e=1,n=0,i=0){return this.radius=e,this.theta=n,this.y=i,this}set(e,n,i){return this.radius=e,this.theta=n,this.y=i,this}copy(e){return this.radius=e.radius,this.theta=e.theta,this.y=e.y,this}setFromVector3(e){return this.setFromCartesianCoords(e.x,e.y,e.z)}setFromCartesianCoords(e,n,i){return this.radius=Math.sqrt(e*e+i*i),this.theta=Math.atan2(e,i),this.y=n,this}clone(){return new this.constructor().copy(this)}}const GP=new oe;class $z{constructor(e=new oe(1/0,1/0),n=new oe(-1/0,-1/0)){this.isBox2=!0,this.min=e,this.max=n}set(e,n){return this.min.copy(e),this.max.copy(n),this}setFromPoints(e){this.makeEmpty();for(let n=0,i=e.length;n<i;n++)this.expandByPoint(e[n]);return this}setFromCenterAndSize(e,n){const i=GP.copy(n).multiplyScalar(.5);return this.min.copy(e).sub(i),this.max.copy(e).add(i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y}getCenter(e){return this.isEmpty()?e.set(0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}containsPoint(e){return!(e.x<this.min.x||e.x>this.max.x||e.y<this.min.y||e.y>this.max.y)}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}getParameter(e,n){return n.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y))}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)}clampPoint(e,n){return n.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,GP).distanceTo(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}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)}}const QP=new L,_7=new L;class rae{constructor(e=new L,n=new L){this.start=e,this.end=n}set(e,n){return this.start.copy(e),this.end.copy(n),this}copy(e){return this.start.copy(e.start),this.end.copy(e.end),this}getCenter(e){return e.addVectors(this.start,this.end).multiplyScalar(.5)}delta(e){return e.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(e,n){return this.delta(n).multiplyScalar(e).add(this.start)}closestPointToPointParameter(e,n){QP.subVectors(e,this.start),_7.subVectors(this.end,this.start);const i=_7.dot(_7);let s=_7.dot(QP)/i;return n&&(s=ci(s,0,1)),s}closestPointToPoint(e,n,i){const r=this.closestPointToPointParameter(e,n);return this.delta(i).multiplyScalar(r).add(this.start)}applyMatrix4(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this}equals(e){return e.start.equals(this.start)&&e.end.equals(this.end)}clone(){return new this.constructor().copy(this)}}const HP=new L;class sae extends mn{constructor(e,n){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,this.type="SpotLightHelper";const i=new Bt,r=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let o=0,a=1,l=32;o<l;o++,a++){const u=o/l*Math.PI*2,c=a/l*Math.PI*2;r.push(Math.cos(u),Math.sin(u),1,Math.cos(c),Math.sin(c),1)}i.setAttribute("position",new tt(r,3));const s=new ls({fog:!1,toneMapped:!1});this.cone=new _l(i,s),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1);const e=this.light.distance?this.light.distance:1e3,n=e*Math.tan(this.light.angle);this.cone.scale.set(n,n,e),HP.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(HP),this.color!==void 0?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}}const Vu=new L,x7=new st,Gy=new st;class oae extends _l{constructor(e){const n=jz(e),i=new Bt,r=[],s=[],o=new Me(0,0,1),a=new Me(0,1,0);for(let u=0;u<n.length;u++){const c=n[u];c.parent&&c.parent.isBone&&(r.push(0,0,0),r.push(0,0,0),s.push(o.r,o.g,o.b),s.push(a.r,a.g,a.b))}i.setAttribute("position",new tt(r,3)),i.setAttribute("color",new tt(s,3));const l=new ls({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});super(i,l),this.isSkeletonHelper=!0,this.type="SkeletonHelper",this.root=e,this.bones=n,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(e){const n=this.bones,i=this.geometry,r=i.getAttribute("position");Gy.copy(this.root.matrixWorld).invert();for(let s=0,o=0;s<n.length;s++){const a=n[s];a.parent&&a.parent.isBone&&(x7.multiplyMatrices(Gy,a.matrixWorld),Vu.setFromMatrixPosition(x7),r.setXYZ(o,Vu.x,Vu.y,Vu.z),x7.multiplyMatrices(Gy,a.parent.matrixWorld),Vu.setFromMatrixPosition(x7),r.setXYZ(o+1,Vu.x,Vu.y,Vu.z),o+=2)}i.getAttribute("position").needsUpdate=!0,super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose()}}function jz(t){const e=[];t.isBone===!0&&e.push(t);for(let n=0;n<t.children.length;n++)e.push.apply(e,jz(t.children[n]));return e}class aae extends yn{constructor(e,n,i){const r=new z4(n,4,2),s=new Go({wireframe:!0,fog:!1,toneMapped:!1});super(r,s),this.light=e,this.color=i,this.type="PointLightHelper",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.color!==void 0?this.material.color.set(this.color):this.material.color.copy(this.light.color)}}const lae=new L,WP=new Me,$P=new Me;class uae extends mn{constructor(e,n,i){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=i,this.type="HemisphereLightHelper";
vendor: 14,251 bytes, line 3611
3611const r=new U4(n);r.rotateY(Math.PI*.5),this.material=new Go({wireframe:!0,fog:!1,toneMapped:!1}),this.color===void 0&&(this.material.vertexColors=!0);const s=r.getAttribute("position"),o=new Float32Array(s.count*3);r.setAttribute("color",new pn(o,3)),this.add(new yn(r,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){const e=this.children[0];if(this.color!==void 0)this.material.color.set(this.color);else{const n=e.geometry.getAttribute("color");WP.copy(this.light.color),$P.copy(this.light.groundColor);for(let i=0,r=n.count;i<r;i++){const s=i<r/2?WP:$P;n.setXYZ(i,s.r,s.g,s.b)}n.needsUpdate=!0}this.light.updateWorldMatrix(!0,!1),e.lookAt(lae.setFromMatrixPosition(this.light.matrixWorld).negate())}}class cae extends _l{constructor(e=10,n=10,i=4473924,r=8947848){i=new Me(i),r=new Me(r);const s=n/2,o=e/n,a=e/2,l=[],u=[];for(let f=0,m=0,g=-a;f<=n;f++,g+=o){l.push(-a,0,g,a,0,g),l.push(g,0,-a,g,0,a);const v=f===s?i:r;v.toArray(u,m),m+=3,v.toArray(u,m),m+=3,v.toArray(u,m),m+=3,v.toArray(u,m),m+=3}const c=new Bt;c.setAttribute("position",new tt(l,3)),c.setAttribute("color",new tt(u,3));const h=new ls({vertexColors:!0,toneMapped:!1});super(c,h),this.type="GridHelper"}dispose(){this.geometry.dispose(),this.material.dispose()}}class hae extends _l{constructor(e=10,n=16,i=8,r=64,s=4473924,o=8947848){s=new Me(s),o=new Me(o);const a=[],l=[];if(n>1)for(let h=0;h<n;h++){const f=h/n*(Math.PI*2),m=Math.sin(f)*e,g=Math.cos(f)*e;a.push(0,0,0),a.push(m,0,g);const v=h&1?s:o;l.push(v.r,v.g,v.b),l.push(v.r,v.g,v.b)}for(let h=0;h<i;h++){const f=h&1?s:o,m=e-e/i*h;for(let g=0;g<r;g++){let v=g/r*(Math.PI*2),_=Math.sin(v)*m,A=Math.cos(v)*m;a.push(_,0,A),l.push(f.r,f.g,f.b),v=(g+1)/r*(Math.PI*2),_=Math.sin(v)*m,A=Math.cos(v)*m,a.push(_,0,A),l.push(f.r,f.g,f.b)}}const u=new Bt;u.setAttribute("position",new tt(a,3)),u.setAttribute("color",new tt(l,3));const c=new ls({vertexColors:!0,toneMapped:!1});super(u,c),this.type="PolarGridHelper"}dispose(){this.geometry.dispose(),this.material.dispose()}}const jP=new L,E7=new L,XP=new L;class fae extends mn{constructor(e,n,i){super(),this.light=e,this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.color=i,this.type="DirectionalLightHelper",n===void 0&&(n=1);let r=new Bt;r.setAttribute("position",new tt([-n,n,0,n,n,0,n,-n,0,-n,-n,0,-n,n,0],3));const s=new ls({fog:!1,toneMapped:!1});this.lightPlane=new Lc(r,s),this.add(this.lightPlane),r=new Bt,r.setAttribute("position",new tt([0,0,0,0,0,1],3)),this.targetLine=new Lc(r,s),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){this.light.updateWorldMatrix(!0,!1),this.light.target.updateWorldMatrix(!0,!1),jP.setFromMatrixPosition(this.light.matrixWorld),E7.setFromMatrixPosition(this.light.target.matrixWorld),XP.subVectors(E7,jP),this.lightPlane.lookAt(E7),this.color!==void 0?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(E7),this.targetLine.scale.z=XP.length()}}const S7=new L,li=new M2;class dae extends _l{constructor(e){const n=new Bt,i=new ls({color:16777215,vertexColors:!0,toneMapped:!1}),r=[],s=[],o={};a("n1","n2"),a("n2","n4"),a("n4","n3"),a("n3","n1"),a("f1","f2"),a("f2","f4"),a("f4","f3"),a("f3","f1"),a("n1","f1"),a("n2","f2"),a("n3","f3"),a("n4","f4"),a("p","n1"),a("p","n2"),a("p","n3"),a("p","n4"),a("u1","u2"),a("u2","u3"),a("u3","u1"),a("c","t"),a("p","c"),a("cn1","cn2"),a("cn3","cn4"),a("cf1","cf2"),a("cf3","cf4");function a(g,v){l(g),l(v)}function l(g){r.push(0,0,0),s.push(0,0,0),o[g]===void 0&&(o[g]=[]),o[g].push(r.length/3-1)}n.setAttribute("position",new tt(r,3)),n.setAttribute("color",new tt(s,3)),super(n,i),this.type="CameraHelper",this.camera=e,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=e.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update();const u=new Me(16755200),c=new Me(16711680),h=new Me(43775),f=new Me(16777215),m=new Me(3355443);this.setColors(u,c,h,f,m)}setColors(e,n,i,r,s){const a=this.geometry.getAttribute("color");a.setXYZ(0,e.r,e.g,e.b),a.setXYZ(1,e.r,e.g,e.b),a.setXYZ(2,e.r,e.g,e.b),a.setXYZ(3,e.r,e.g,e.b),a.setXYZ(4,e.r,e.g,e.b),a.setXYZ(5,e.r,e.g,e.b),a.setXYZ(6,e.r,e.g,e.b),a.setXYZ(7,e.r,e.g,e.b),a.setXYZ(8,e.r,e.g,e.b),a.setXYZ(9,e.r,e.g,e.b),a.setXYZ(10,e.r,e.g,e.b),a.setXYZ(11,e.r,e.g,e.b),a.setXYZ(12,e.r,e.g,e.b),a.setXYZ(13,e.r,e.g,e.b),a.setXYZ(14,e.r,e.g,e.b),a.setXYZ(15,e.r,e.g,e.b),a.setXYZ(16,e.r,e.g,e.b),a.setXYZ(17,e.r,e.g,e.b),a.setXYZ(18,e.r,e.g,e.b),a.setXYZ(19,e.r,e.g,e.b),a.setXYZ(20,e.r,e.g,e.b),a.setXYZ(21,e.r,e.g,e.b),a.setXYZ(22,e.r,e.g,e.b),a.setXYZ(23,e.r,e.g,e.b),a.setXYZ(24,n.r,n.g,n.b),a.setXYZ(25,n.r,n.g,n.b),a.setXYZ(26,n.r,n.g,n.b),a.setXYZ(27,n.r,n.g,n.b),a.setXYZ(28,n.r,n.g,n.b),a.setXYZ(29,n.r,n.g,n.b),a.setXYZ(30,n.r,n.g,n.b),a.setXYZ(31,n.r,n.g,n.b),a.setXYZ(32,i.r,i.g,i.b),a.setXYZ(33,i.r,i.g,i.b),a.setXYZ(34,i.r,i.g,i.b),a.setXYZ(35,i.r,i.g,i.b),a.setXYZ(36,i.r,i.g,i.b),a.setXYZ(37,i.r,i.g,i.b),a.setXYZ(38,r.r,r.g,r.b),a.setXYZ(39,r.r,r.g,r.b),a.setXYZ(40,s.r,s.g,s.b),a.setXYZ(41,s.r,s.g,s.b),a.setXYZ(42,s.r,s.g,s.b),a.setXYZ(43,s.r,s.g,s.b),a.setXYZ(44,s.r,s.g,s.b),a.setXYZ(45,s.r,s.g,s.b),a.setXYZ(46,s.r,s.g,s.b),a.setXYZ(47,s.r,s.g,s.b),a.setXYZ(48,s.r,s.g,s.b),a.setXYZ(49,s.r,s.g,s.b),a.needsUpdate=!0}update(){const e=this.geometry,n=this.pointMap,i=1,r=1;li.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),Ei("c",n,e,li,0,0,-1),Ei("t",n,e,li,0,0,1),Ei("n1",n,e,li,-i,-r,-1),Ei("n2",n,e,li,i,-r,-1),Ei("n3",n,e,li,-i,r,-1),Ei("n4",n,e,li,i,r,-1),Ei("f1",n,e,li,-i,-r,1),Ei("f2",n,e,li,i,-r,1),Ei("f3",n,e,li,-i,r,1),Ei("f4",n,e,li,i,r,1),Ei("u1",n,e,li,i*.7,r*1.1,-1),Ei("u2",n,e,li,-i*.7,r*1.1,-1),Ei("u3",n,e,li,0,r*2,-1),Ei("cf1",n,e,li,-i,0,1),Ei("cf2",n,e,li,i,0,1),Ei("cf3",n,e,li,0,-r,1),Ei("cf4",n,e,li,0,r,1),Ei("cn1",n,e,li,-i,0,-1),Ei("cn2",n,e,li,i,0,-1),Ei("cn3",n,e,li,0,-r,-1),Ei("cn4",n,e,li,0,r,-1),e.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}}function Ei(t,e,n,i,r,s,o){S7.set(r,s,o).unproject(i);const a=e[t];if(a!==void 0){const l=n.getAttribute("position");for(let u=0,c=a.length;u<c;u++)l.setXYZ(a[u],S7.x,S7.y,S7.z)}}const T7=new Ta;class pae extends _l{constructor(e,n=16776960){const i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=new Float32Array(8*3),s=new Bt;s.setIndex(new pn(i,1)),s.setAttribute("position",new pn(r,3)),super(s,new ls({color:n,toneMapped:!1})),this.object=e,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(e){if(e!==void 0&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),this.object!==void 0&&T7.setFromObject(this.object),T7.isEmpty())return;const n=T7.min,i=T7.max,r=this.geometry.attributes.position,s=r.array;s[0]=i.x,s[1]=i.y,s[2]=i.z,s[3]=n.x,s[4]=i.y,s[5]=i.z,s[6]=n.x,s[7]=n.y,s[8]=i.z,s[9]=i.x,s[10]=n.y,s[11]=i.z,s[12]=i.x,s[13]=i.y,s[14]=n.z,s[15]=n.x,s[16]=i.y,s[17]=n.z,s[18]=n.x,s[19]=n.y,s[20]=n.z,s[21]=i.x,s[22]=n.y,s[23]=n.z,r.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(e){return this.object=e,this.update(),this}copy(e,n){return super.copy(e,n),this.object=e.object,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class mae extends _l{constructor(e,n=16776960){const i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),r=[1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],s=new Bt;s.setIndex(new pn(i,1)),s.setAttribute("position",new tt(r,3)),super(s,new ls({color:n,toneMapped:!1})),this.box=e,this.type="Box3Helper",this.geometry.computeBoundingSphere()}updateMatrixWorld(e){const n=this.box;n.isEmpty()||(n.getCenter(this.position),n.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(e))}dispose(){this.geometry.dispose(),this.material.dispose()}}class gae extends Lc{constructor(e,n=1,i=16776960){const r=i,s=[1,-1,0,-1,1,0,-1,-1,0,1,1,0,-1,1,0,-1,-1,0,1,-1,0,1,1,0],o=new Bt;o.setAttribute("position",new tt(s,3)),o.computeBoundingSphere(),super(o,new ls({color:r,toneMapped:!1})),this.type="PlaneHelper",this.plane=e,this.size=n;const a=[1,1,0,-1,1,0,-1,-1,0,1,1,0,-1,-1,0,1,-1,0],l=new Bt;l.setAttribute("position",new tt(a,3)),l.computeBoundingSphere(),this.add(new yn(l,new Go({color:r,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(e){this.position.set(0,0,0),this.scale.set(.5*this.size,.5*this.size,1),this.lookAt(this.plane.normal),this.translateZ(-this.plane.constant),super.updateMatrixWorld(e)}dispose(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()}}const YP=new L;let C7,Qy;class Aae extends mn{constructor(e=new L(0,0,1),n=new L(0,0,0),i=1,r=16776960,s=i*.2,o=s*.2){super(),this.type="ArrowHelper",C7===void 0&&(C7=new Bt,C7.setAttribute("position",new tt([0,0,0,0,1,0],3)),Qy=new B2(0,.5,1,5,1),Qy.translate(0,-.5,0)),this.position.copy(n),this.line=new Lc(C7,new ls({color:r,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new yn(Qy,new Go({color:r,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(e),this.setLength(i,s,o)}setDirection(e){if(e.y>.99999)this.quaternion.set(0,0,0,1);else if(e.y<-.99999)this.quaternion.set(1,0,0,0);else{YP.set(e.z,0,-e.x).normalize();const n=Math.acos(e.y);this.quaternion.setFromAxisAngle(YP,n)}}setLength(e,n=e*.2,i=n*.2){this.line.scale.set(1,Math.max(1e-4,e-n),1),this.line.updateMatrix(),this.cone.scale.set(i,n,i),this.cone.position.y=e,this.cone.updateMatrix()}setColor(e){this.line.material.color.set(e),this.cone.material.color.set(e)}copy(e){return super.copy(e,!1),this.line.copy(e.line),this.cone.copy(e.cone),this}dispose(){this.line.geometry.dispose(),this.line.material.dispose(),this.cone.geometry.dispose(),this.cone.material.dispose()}}class vae extends _l{constructor(e=1){const n=[0,0,0,e,0,0,0,0,0,0,e,0,0,0,0,0,0,e],i=[1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],r=new Bt;r.setAttribute("position",new tt(n,3)),r.setAttribute("color",new tt(i,3));const s=new ls({vertexColors:!0,toneMapped:!1});super(r,s),this.type="AxesHelper"}setColors(e,n,i){const r=new Me,s=this.geometry.attributes.color.array;return r.set(e),r.toArray(s,0),r.toArray(s,3),r.set(n),r.toArray(s,6),r.toArray(s,9),r.set(i),r.toArray(s,12),r.toArray(s,15),this.geometry.attributes.color.needsUpdate=!0,this}dispose(){this.geometry.dispose(),this.material.dispose()}}class pC{constructor(){this.type="ShapePath",this.color=new Me,this.subPaths=[],this.currentPath=null}moveTo(e,n){return this.currentPath=new Nd,this.subPaths.push(this.currentPath),this.currentPath.moveTo(e,n),this}lineTo(e,n){return this.currentPath.lineTo(e,n),this}quadraticCurveTo(e,n,i,r){return this.currentPath.quadraticCurveTo(e,n,i,r),this}bezierCurveTo(e,n,i,r,s,o){return this.currentPath.bezierCurveTo(e,n,i,r,s,o),this}splineThru(e){return this.currentPath.splineThru(e),this}toShapes(e){function n(A){const y=[];for(let q=0,E=A.length;q<E;q++){const T=A[q],C=new c1;C.curves=T.curves,y.push(C)}return y}function i(A,y){const q=y.length;let E=!1;for(let T=q-1,C=0;C<q;T=C++){let I=y[T],R=y[C],M=R.x-I.x,b=R.y-I.y;if(Math.abs(b)>Number.EPSILON){if(b<0&&(I=y[C],M=-M,R=y[T],b=-b),A.y<I.y||A.y>R.y)continue;if(A.y===I.y){if(A.x===I.x)return!0}else{const D=b*(A.x-I.x)-M*(A.y-I.y);if(D===0)return!0;if(D<0)continue;E=!E}}else{if(A.y!==I.y)continue;if(R.x<=A.x&&A.x<=I.x||I.x<=A.x&&A.x<=R.x)return!0}}return E}const r=ul.isClockWise,s=this.subPaths;if(s.length===0)return[];let o,a,l;const u=[];if(s.length===1)return a=s[0],l=new c1,l.curves=a.curves,u.push(l),u;let c=!r(s[0].getPoints());c=e?!c:c;const h=[],f=[];let m=[],g=0,v;f[g]=void 0,m[g]=[];for(let A=0,y=s.length;A<y;A++)a=s[A],v=a.getPoints(),o=r(v),o=e?!o:o,o?(!c&&f[g]&&g++,f[g]={s:new c1,p:v},f[g].s.curves=a.curves,c&&g++,m[g]=[]):m[g].push({h:a,p:v[0]});if(!f[0])return n(s);if(f.length>1){let A=!1,y=0;for(let q=0,E=f.length;q<E;q++)h[q]=[];for(let q=0,E=f.length;q<E;q++){const T=m[q];for(let C=0;C<T.length;C++){const I=T[C];let R=!0;for(let M=0;M<f.length;M++)i(I.p,f[M].p)&&(q!==M&&y++,R?(R=!1,h[M].push(I)):A=!0);R&&h[q].push(I)}}y>0&&A===!1&&(m=h)}let _;for(let A=0,y=f.length;A<y;A++){l=f[A].s,u.push(l),_=m[A];for(let q=0,E=_.length;q<E;q++)l.holes.push(_[q].h)}return u}}typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:Sa}}));typeof window<"u"&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=Sa);const yae=Object.freeze(Object.defineProperty({__proto__:null,ACESFilmicToneMapping:bT,AddEquation:Ws,AddOperation:_U,AdditiveAnimationBlendMode:UT,AdditiveBlending:gd,AlphaFormat:IU,AlwaysCompare:GU,AlwaysDepth:IT,AlwaysStencilFunc:LU,AmbientLight:Fz,AmbientLightProbe:Boe,AnimationAction:Hz,AnimationClip:Vd,AnimationLoader:xoe,AnimationMixer:Koe,AnimationObjectGroup:Xoe,AnimationUtils:voe,ArcCurve:hz,ArrayCamera:iz,ArrowHelper:Aae,Audio:Gz,AudioAnalyser:Ooe,AudioContext:hC,AudioListener:Noe,AudioLoader:boe,AxesHelper:vae,BackSide:Fi,BasicDepthPacking:Aa,BasicShadowMap:hU,Bone:YT,BooleanKeyframeTrack:V1,Box2:$z,Box3:Ta,Box3Helper:mae,BoxGeometry:Zc,BoxHelper:pae,BufferAttribute:pn,BufferGeometry:Bt,BufferGeometryLoader:Vz,ByteType:CU,Cache:T1,Camera:M2,CameraHelper:dae,CanvasTexture:Vse,CapsuleGeometry:ig,CatmullRomCurve3:fz,CineonToneMapping:SU,CircleGeometry:rg,ClampToEdgeWrapping:pi,Clock:vg,Color:Me,ColorKeyframeTrack:lC,ColorManagement:So,CompressedArrayTexture:Use,CompressedCubeTexture:zse,CompressedTexture:Nc,CompressedTextureLoader:Eoe,ConeGeometry:sg,CubeCamera:XU,CubeReflectionMapping:cu,CubeRefractionMapping:Dc,CubeTexture:N4,CubeTextureLoader:Bz,CubeUVReflectionMapping:w2,CubicBezierCurve:eC,CubicBezierCurve3:dz,CubicInterpolant:Mz,CullFaceBack:cx,CullFaceFront:cU,CullFaceFrontBack:NZ,CullFaceNone:uU,Curve:Ca,CurvePath:mz,CustomBlending:Ad,CustomToneMapping:T
3611U,CylinderGeometry:B2,Cylindrical:iae,Data3DTexture:QT,DataArrayTexture:$9,DataTexture:ll,DataTextureLoader:Soe,DataUtils:$ee,DecrementStencilOp:jZ,DecrementWrapStencilOp:YZ,DefaultLoadingManager:Pz,DepthFormat:xc,DepthStencilFormat:fu,DepthTexture:z1,DirectionalLight:kz,DirectionalLightHelper:fae,DiscreteInterpolant:Rz,DisplayP3ColorSpace:zT,DodecahedronGeometry:og,DoubleSide:ts,DstAlphaFactor:z9,DstColorFactor:V9,DynamicCopyUsage:cee,DynamicDrawUsage:T8,DynamicReadUsage:aee,EdgesGeometry:gz,EllipseCurve:tg,EqualCompare:FU,EqualDepth:_d,EqualStencilFunc:eee,EquirectangularReflectionMapping:xd,EquirectangularRefractionMapping:Ed,Euler:L4,EventDispatcher:$o,ExtrudeGeometry:O4,FileLoader:Fr,Float16BufferAttribute:Zee,Float32BufferAttribute:tt,Float64BufferAttribute:ete,FloatType:kr,Fog:J9,FogExp2:K9,FramebufferTexture:Ose,FrontSide:gl,Frustum:X9,GLBufferAttribute:tae,GLSL1:fee,GLSL3:Bx,GreaterCompare:UU,GreaterDepth:RT,GreaterEqualCompare:VU,GreaterEqualDepth:MT,GreaterEqualStencilFunc:ree,GreaterStencilFunc:nee,GridHelper:cae,Group:a0,HalfFloatType:yi,HemisphereLight:Dz,HemisphereLightHelper:uae,HemisphereLightProbe:Poe,IcosahedronGeometry:lg,ImageBitmapLoader:Roe,ImageLoader:Gd,ImageUtils:GT,IncrementStencilOp:$Z,IncrementWrapStencilOp:XZ,InstancedBufferAttribute:J0,InstancedBufferGeometry:zz,InstancedInterleavedBuffer:eae,InstancedMesh:uz,Int16BufferAttribute:Kee,Int32BufferAttribute:Jee,Int8BufferAttribute:jee,IntType:BT,InterleavedBuffer:Z9,InterleavedBufferAttribute:E1,Interpolant:V4,InterpolateDiscrete:Rd,InterpolateLinear:bd,InterpolateSmooth:E8,InvertStencilOp:KZ,KeepStencilOp:S8,KeyframeTrack:wa,LOD:az,LatheGeometry:F4,Layers:u1,LessCompare:kU,LessDepth:gm,LessEqualCompare:OU,LessEqualDepth:qd,LessEqualStencilFunc:tee,LessStencilFunc:ZZ,Light:th,LightProbe:gg,Line:Lc,Line3:rae,LineBasicMaterial:ls,LineCurve:ng,LineCurve3:pz,LineDashedMaterial:wz,LineLoop:cz,LineSegments:_l,LinearEncoding:B4,LinearFilter:_n,LinearInterpolant:aC,LinearMipMapLinearFilter:zZ,LinearMipMapNearestFilter:UZ,LinearMipmapLinearFilter:Al,LinearMipmapNearestFilter:PT,LinearSRGBColorSpace:va,LinearToneMapping:xU,Loader:qr,LoaderUtils:zx,LoadingManager:uC,LoopOnce:bU,LoopPingPong:BU,LoopRepeat:PU,LuminanceAlphaFormat:MU,LuminanceFormat:NT,MOUSE:DZ,Material:Ji,MaterialLoader:Ag,MathUtils:C0,Matrix3:$t,Matrix4:st,MaxEquation:px,Mesh:yn,MeshBasicMaterial:Go,MeshDepthMaterial:k4,MeshDistanceMaterial:$T,MeshLambertMaterial:Tz,MeshMatcapMaterial:Cz,MeshNormalMaterial:D2,MeshPhongMaterial:Ez,MeshPhysicalMaterial:xz,MeshStandardMaterial:mg,MeshToonMaterial:Sz,MinEquation:dx,MirroredRepeatWrapping:Sd,MixOperation:qU,MultiplyBlending:fx,MultiplyOperation:P4,NearestFilter:At,NearestMipMapLinearFilter:OZ,NearestMipMapNearestFilter:FZ,NearestMipmapLinearFilter:w5,NearestMipmapNearestFilter:Am,NeverCompare:NU,NeverDepth:wT,NeverStencilFunc:JZ,NoBlending:bt,NoColorSpace:Ec,NoToneMapping:Fo,NormalAnimationBlendMode:W9,NormalBlending:sl,NotEqualCompare:zU,NotEqualDepth:G9,NotEqualStencilFunc:iee,NumberKeyframeTrack:Ud,Object3D:mn,ObjectLoader:Ioe,ObjectSpaceNormalMap:DU,OctahedronGeometry:U4,OneFactor:pU,OneMinusDstAlphaFactor:AU,OneMinusDstColorFactor:vU,OneMinusSrcAlphaFactor:yd,OneMinusSrcColorFactor:gU,OrthographicCamera:b2,PCFShadowMap:U9,PCFSoftShadowMap:C5,PMREMGenerator:Lx,Path:Nd,PerspectiveCamera:Yn,Plane:Ro,PlaneGeometry:R2,PlaneHelper:gae,PointLight:Nz,PointLightHelper:aae,Points:JT,PointsMaterial:KT,PolarGridHelper:hae,PolyhedronGeometry:eh,PositionalAudio:Foe,PropertyBinding:on,PropertyMixer:Qz,QuadraticBezierCurve:tC,QuadraticBezierCurve3:nC,Quaternion:rs,QuaternionKeyframeTrack:L2,QuaternionLinearInterpolant:bz,RED_GREEN_RGTC2_Format:bx,RED_RGTC1_Format:RU,REVISION:Sa,RGBADepthPacking:D4,RGBAFormat:mi,RGBAIntegerFormat:OT,RGBA_ASTC_10x10_Format:wx,RGBA_ASTC_10x5_Format:Sx,RGBA_ASTC_10x6_Format:Tx,RGBA_ASTC_10x8_Format:Cx,RGBA_ASTC_12x10_Format:Ix,RGBA_ASTC_12x12_Format:Mx,RGBA_ASTC_4x4_Format:Md,RGBA_ASTC_5x4_Format:Ax,RGBA_ASTC_5x5_Format:vx,RGBA_ASTC_6x5_Format:yx,RGBA_ASTC_6x6_Format:qx,RGBA_ASTC_8x5_Format:_x,RGBA_ASTC_8x6_Format:xx,RGBA_ASTC_8x8_Format:Ex,RGBA_BPTC_Format:T0,RGBA_ETC2_EAC_Format:Id,RGBA_PVRTC_2BPPV1_Format:gx,RGBA_PVRTC_4BPPV1_Format:Cd,RGBA_S3TC_DXT1_Format:_8,RGBA_S3TC_DXT3_Format:x8,RGBA_S3TC_DXT5_Format:S0,RGB_ETC1_Format:H9,RGB_ETC2_Format:wd,RGB_PVRTC_2BPPV1_Format:mx,RGB_PVRTC_4BPPV1_Format:Td,RGB_S3TC_DXT1_Format:E0,RGFormat:r0,RGIntegerFormat:FT,RawShaderMaterial:P5,Ray:I2,Raycaster:Wz,RectAreaLight:Oz,RedF
vendor: 133,205 bytes, lines 3611-3653
3611ormat:Xh,RedIntegerFormat:kT,ReinhardToneMapping:EU,RenderTarget:WU,RepeatWrapping:hu,ReplaceStencilOp:WZ,ReverseSubtractEquation:dU,RingGeometry:ug,SIGNED_RED_GREEN_RGTC2_Format:Px,SIGNED_RED_RGTC1_Format:Rx,SRGBColorSpace:Ot,Scene:K0,ShaderChunk:Gt,ShaderLib:ca,ShaderMaterial:zt,ShadowMaterial:_z,Shape:c1,ShapeGeometry:cg,ShapePath:pC,ShapeUtils:ul,ShortType:wU,Skeleton:eg,SkeletonHelper:oae,SkinnedMesh:lz,Source:Jh,Sphere:jo,SphereGeometry:z4,Spherical:nae,SphericalHarmonics3:Uz,SplineCurve:iC,SpotLight:Lz,SpotLightHelper:sae,Sprite:oz,SpriteMaterial:XT,SrcAlphaFactor:vd,SrcAlphaSaturateFactor:yU,SrcColorFactor:mU,StaticCopyUsage:uee,StaticDrawUsage:Bd,StaticReadUsage:oee,StereoCamera:Doe,StreamCopyUsage:hee,StreamDrawUsage:see,StreamReadUsage:lee,StringKeyframeTrack:G1,SubtractEquation:fU,SubtractiveBlending:hx,TOUCH:LZ,TangentSpaceNormalMap:Jc,TetrahedronGeometry:hg,Texture:Gn,TextureLoader:$a,TorusGeometry:fg,TorusKnotGeometry:dg,Triangle:As,TriangleFanDrawMode:QZ,TriangleStripDrawMode:GZ,TrianglesDrawMode:VZ,TubeGeometry:pg,TwoPassDoubleSide:kZ,UVMapping:Q9,Uint16BufferAttribute:HT,Uint32BufferAttribute:j9,Uint8BufferAttribute:Xee,Uint8ClampedBufferAttribute:Yee,Uniform:Jt,UniformsGroup:Zoe,UniformsLib:Ne,UniformsUtils:Kn,UnsignedByteType:Rn,UnsignedInt248Type:ol,UnsignedIntType:Ka,UnsignedShort4444Type:DT,UnsignedShort5551Type:LT,UnsignedShortType:U1,VSMShadowMap:aa,Vector2:oe,Vector3:L,Vector4:Zt,VectorKeyframeTrack:zd,VideoTexture:Fse,WebGL1Renderer:rz,WebGL3DRenderTarget:Nee,WebGLArrayRenderTarget:Lee,WebGLCoordinateSystem:Ja,WebGLCubeRenderTarget:YU,WebGLMultipleRenderTargets:kee,WebGLRenderTarget:Yt,WebGLRenderer:jT,WebGLUtils:nz,WebGPUCoordinateSystem:Dd,WireframeGeometry:qz,WrapAroundEnding:Pd,ZeroCurvatureEnding:Yh,ZeroFactor:j0,ZeroSlopeEnding:Kh,ZeroStencilOp:HZ,_SRGBAFormat:vm,sRGBEncoding:al},Symbol.toStringTag,{value:"Module"}));var Xz={exports:{}},Q1={};/** 3612 * @license React 3613 * react-reconciler-constants.production.min.js 3614 * 3615 * Copyright (c) Facebook, Inc. and its affiliates. 3616 * 3617 * This source code is licensed under the MIT license found in the 3618 * LICENSE file in the root directory of this source tree. 3619 */Q1.ConcurrentRoot=1;Q1.ContinuousEventPriority=4;Q1.DefaultEventPriority=16;Q1.DiscreteEventPriority=1;Q1.IdleEventPriority=536870912;Q1.LegacyRoot=0;Xz.exports=Q1;var u0=Xz.exports;function qae(t){let e;const n=new Set,i=(u,c)=>{const h=typeof u=="function"?u(e):u;if(h!==e){const f=e;e=c?h:Object.assign({},e,h),n.forEach(m=>m(e,f))}},r=()=>e,s=(u,c=r,h=Object.is)=>{console.warn("[DEPRECATED] Please use `subscribeWithSelector` middleware");let f=c(e);function m(){const g=c(e);if(!h(f,g)){const v=f;u(f=g,v)}}return n.add(m),()=>n.delete(m)},l={setState:i,getState:r,subscribe:(u,c,h)=>c||h?s(u,c,h):(n.add(u),()=>n.delete(u)),destroy:()=>n.clear()};return e=t(i,r,l),l}const _ae=typeof window>"u"||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent),KP=_ae?G.useEffect:G.useLayoutEffect;function xae(t){const e=typeof t=="function"?qae(t):t,n=(i=e.getState,r=Object.is)=>{const[,s]=G.useReducer(_=>_+1,0),o=e.getState(),a=G.useRef(o),l=G.useRef(i),u=G.useRef(r),c=G.useRef(!1),h=G.useRef();h.current===void 0&&(h.current=i(o));let f,m=!1;(a.current!==o||l.current!==i||u.current!==r||c.current)&&(f=i(o),m=!r(h.current,f)),KP(()=>{m&&(h.current=f),a.current=o,l.current=i,u.current=r,c.current=!1});const g=G.useRef(o);KP(()=>{const _=()=>{try{const y=e.getState(),q=l.current(y);u.current(h.current,q)||(a.current=y,h.current=q,s())}catch{c.current=!0,s()}},A=e.subscribe(_);return e.getState()!==g.current&&_(),A},[]);const v=m?f:h.current;return G.useDebugValue(v),v};return Object.assign(n,e),n[Symbol.iterator]=function(){console.warn("[useStore, api] = create() is deprecated and will be removed in v4");const i=[n,e];return{next(){const r=i.length<=0;return{value:i.shift(),done:r}}}},n}var Yz={exports:{}},Hy={exports:{}},Wy={};/** 3620 * @license React 3621 * scheduler.production.min.js 3622 * 3623 * Copyright (c) Facebook, Inc. and its affiliates. 3624 * 3625 * This source code is licensed under the MIT license found in the 3626 * LICENSE file in the root directory of this source tree. 3627 */var JP;function Eae(){return JP||(JP=1,function(t){function e(B,U){var F=B.length;B.push(U);e:for(;0<F;){var k=F-1>>>1,Q=B[k];if(0<r(Q,U))B[k]=U,B[F]=Q,F=k;else break e}}function n(B){return B.length===0?null:B[0]}function i(B){if(B.length===0)return null;var U=B[0],F=B.pop();if(F!==U){B[0]=F;e:for(var k=0,Q=B.length,ce=Q>>>1;k<ce;){var ae=2*(k+1)-1,ge=B[ae],ye=ae+1,xe=B[ye];if(0>r(ge,F))ye<Q&&0>r(xe,ge)?(B[k]=xe,B[ye]=F,k=ye):(B[k]=ge,B[ae]=F,k=ae);else if(ye<Q&&0>r(xe,F))B[k]=xe,B[ye]=F,k=ye;else break e}}return U}function r(B,U){var F=B.sortIndex-U.sortIndex;return F!==0?F:B.id-U.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,h=null,f=3,m=!1,g=!1,v=!1,_=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function q(B){for(var U=n(u);U!==null;){if(U.callback===null)i(u);else if(U.startTime<=B)i(u),U.sortIndex=U.expirationTime,e(l,U);else break;U=n(u)}}function E(B){if(v=!1,q(B),!g)if(n(l)!==null)g=!0,K(T);else{var U=n(u);U!==null&&Y(E,U.startTime-B)}}function T(B,U){g=!1,v&&(v=!1,A(R),R=-1),m=!0;var F=f;try{for(q(U),h=n(l);h!==null&&(!(h.expirationTime>U)||B&&!D());){var k=h.callback;if(typeof k=="function"){h.callback=null,f=h.priorityLevel;var Q=k(h.expirationTime<=U);U=t.unstable_now(),typeof Q=="function"?h.callback=Q:h===n(l)&&i(l),q(U)}else i(l);h=n(l)}if(h!==null)var ce=!0;else{var ae=n(u);ae!==null&&Y(E,ae.startTime-U),ce=!1}return ce}finally{h=null,f=F,m=!1}}var C=!1,I=null,R=-1,M=5,b=-1;function D(){return!(t.unstable_now()-b<M)}function z(){if(I!==null){var B=t.unstable_now();b=B;var U=!0;try{U=I(!0,B)}finally{U?O():(C=!1,I=null)}}else C=!1}var O;if(typeof y=="function")O=function(){y(z)};else if(typeof MessageChannel<"u"){var W=new MessageChannel,$=W.port2;W.port1.onmessage=z,O=function(){$.postMessage(null)}}else O=function(){_(z,0)};function K(B){I=B,C||(C=!0,O())}function Y(B,U){R=_(function(){B(t.unstable_now())},U)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(B){B.callback=null},t.unstable_continueExecution=function(){g||m||(g=!0,K(T))},t.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<B?Math.floor(1e3/B):5},t.unstable_getCurrentPriorityLevel=function(){return f},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(B){switch(f){case 1:case 2:case 3:var U=3;break;default:U=f}var F=f;f=U;try{return B()}finally{f=F}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(B,U){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var F=f;f=B;try{return U()}finally{f=F}},t.unstable_scheduleCallback=function(B,U,F){var k=t.unstable_now();switch(typeof F=="object"&&F!==null?(F=F.delay,F=typeof F=="number"&&0<F?k+F:k):F=k,B){case 1:var Q=-1;break;case 2:Q=250;break;case 5:Q=1073741823;break;case 4:Q=1e4;break;default:Q=5e3}return Q=F+Q,B={id:c++,callback:U,priorityLevel:B,startTime:F,expirationTime:Q,sortIndex:-1},F>k?(B.sortIndex=F,e(u,B),n(l)===null&&B===n(u)&&(v?(A(R),R=-1):v=!0,Y(E,F-k))):(B.sortIndex=Q,e(l,B),g||m||(g=!0,K(T))),B},t.unstable_shouldYield=D,t.unstable_wrapCallback=function(B){var U=f;return function(){var F=f;f=U;try{return B.apply(this,arguments)}finally{f=F}}}}(Wy)),Wy}var ZP;function Sae(){return ZP||(ZP=1,Hy.exports=Eae()),Hy.exports}/** 3628 * @license React 3629 * react-reconciler.production.min.js 3630 * 3631 * Copyright (c) Facebook, Inc. and its affiliates. 3632 * 3633 * This source code is licensed under the MIT license found in the 3634 * LICENSE file in the root directory of this source tree. 3635 */var Tae=function(e){var n={},i=G,r=Sae(),s=Object.assign;function o(d){for(var p="https://reactjs.org/docs/error-decoder.html?invariant="+d,x=1;x<arguments.length;x++)p+="&args[]="+encodeURIComponent(arguments[x]);return"Minified React error #"+d+"; visit "+p+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var a=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,l=Symbol.for("react.element"),u=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),h=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),m=Symbol.for("react.provider"),g=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),_=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),q=Symbol.for("react.lazy"),E=Symbol.for("react.offscreen"),T=Symbol.iterator;function C(d){return d===null||typeof d!="object"?null:(d=T&&d[T]||d["@@iterator"],typeof d=="function"?d:null)}function I(d){if(d==null)return null;if(typeof d=="function")return d.displayName||d.name||null;if(typeof d=="string")return d;switch(d){case c:return"Fragment";case u:return"Portal";case f:return"Profiler";case h:return"StrictMode";case _:return"Suspense";case A:return"SuspenseList"}if(typeof d=="object")switch(d.$$typeof){case g:return(d.displayName||"Context")+".Consumer";case m:return(d._context.displayName||"Context")+".Provider";case v:var p=d.render;return d=d.displayName,d||(d=p.displayName||p.name||"",d=d!==""?"ForwardRef("+d+")":"ForwardRef"),d;case y:return p=d.displayName||null,p!==null?p:I(d.type)||"Memo";case q:p=d._payload,d=d._init;try{return I(d(p))}catch{}}return null}function R(d){var p=d.type;switch(d.tag){case 24:return"Cache";case 9:return(p.displayName||"Context")+".Consumer";case 10:return(p._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return d=p.render,d=d.displayName||d.name||"",p.displayName||(d!==""?"ForwardRef("+d+")":"ForwardRef");case 7:return"Fragment";case 5:return p;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return I(p);case 8:return p===h?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof p=="function")return p.displayName||p.name||null;if(typeof p=="string")return p}return null}function M(d){var p=d,x=d;if(d.alternate)for(;p.return;)p=p.return;else{d=p;do p=d,p.flags&4098&&(x=p.return),d=p.return;while(d)}return p.tag===3?x:null}function b(d){if(M(d)!==d)throw Error(o(188))}function D(d){var p=d.alternate;if(!p){if(p=M(d),p===null)throw Error(o(188));return p!==d?null:d}for(var x=d,S=p;;){var w=x.return;if(w===null)break;var P=w.alternate;if(P===null){if(S=w.return,S!==null){x=S;continue}break}if(w.child===P.child){for(P=w.child;P;){if(P===x)return b(w),d;if(P===S)return b(w),p;P=P.sibling}throw Error(o(188))}if(x.return!==S.return)x=w,S=P;else{for(var H=!1,Z=w.child;Z;){if(Z===x){H=!0,x=w,S=P;break}if(Z===S){H=!0,S=w,x=P;break}Z=Z.sibling}if(!H){for(Z=P.child;Z;){if(Z===x){H=!0,x=P,S=w;break}if(Z===S){H=!0,S=P,x=w;break}Z=Z.sibling}if(!H)throw Error(o(189))}}if(x.alternate!==S)throw Error(o(190))}if(x.tag!==3)throw Error(o(188));return x.stateNode.current===x?d:p}function z(d){return d=D(d),d!==null?O(d):null}function O(d){if(d.tag===5||d.tag===6)return d;for(d=d.child;d!==null;){var p=O(d);if(p!==null)return p;d=d.sibling}return null}function W(d){if(d.tag===5||d.tag===6)return d;for(d=d.child;d!==null;){if(d.tag!==4){var p=W(d);if(p!==null)return p}d=d.sibling}return null}var $=Array.isArray,K=e.getPublicInstance,Y=e.getRootHostContext,B=e.getChildHostContext,U=e.prepareForCommit,F=e.resetAfterCommit,k=e.createInstance,Q=e.appendInitialChild,ce=e.finalizeInitialChildren,ae=e.prepareUpdate,ge=e.shouldSetTextContent,ye=e.createTextInstance,xe=e.scheduleTimeout,Le=e.cancelTimeout,$e=e.noTimeout,Qe=e.isPrimaryRenderer,Be=e.supportsMutation,X=e.supportsPersistence,qe=e.supportsHydration,ve=e.getInstanceFromNode,Se=e.preparePortalMount,_e=e.getCurrentEventPriority,it=e.detachDeletedInstance,Ge=e.supportsMicrotasks,He=e.scheduleMicrotask,pt=e.supportsTestSelectors,Vt=e.findFiberRoot,Sn=e.getBoundingRect,j=e.getTextContent,N=e.isHiddenSubtree,se=e.matchAccessibilityRole,Te=e.setFocusIfFocusable,Ee=e.setupIntersectionObserver,we=e.appendChild,Ye=e.appendChildToContainer,Ie=e.commitTextUpdate,le=e.commitMount,ot=e.commitUpdate,ut=e.insertBefore,ft=e.insertInContainerBefore,Ke=e.removeChild,Je=e.removeChildFromContainer,Ft=e.resetTextContent,rn=e.hideInstance,J=e.hideTextInstance,De=e.unhideInstance,ue=e.unhideTextInstance,be=e.clearContainer,ze=e.cloneInstance,tn=e.createContainerChildSet,bn=e.appendChildToContainerChildSet,ri=e.finalizeContainerChildren,Ko=e.replaceContainerChildren,Tn=e.cloneHiddenInstance,Ns=e.cloneHiddenTextInstance,cr=e.canHydrateInstance,T6=e.canHydrateTextInstance,C6=e.canHydrateSuspenseInstance,w6=e.isSuspenseInstancePending,Cu=e.isSuspenseInstanceFallback,I6=e.registerSuspenseInstanceRetry,Ba=e.getNextHydratableSibling,M6=e.getFirstHydratableChild,bA=e.getFirstHydratableChildWithinContainer,PA=e.getFirstHydratableChildWithinSuspenseInstance,BA=e.hydrateInstance,V=e.hydrateTextInstance,ie=e.hydrateSuspenseInstance,me=e.getNextHydratableInstanceAfterSuspenseInstance,ne=e.commitHydratedContainer,pe=e.commitHydratedSuspenseInstance,je=e.clearSuspenseBoundary,mt=e.clearSuspenseBoundaryFromContainer,Tt=e.shouldDeleteUnhydratedTailInstances,Ct=e.didNotMatchHydratedContainerTextInstance,jt=e.didNotMatchHydratedTextInstance,yt;function Mt(d){if(yt===void 0)try{throw Error()}catch(x){var p=x.stack.trim().match(/\n( *(at )?)/);yt=p&&p[1]||""}return` 3636`+yt+d}var Pn=!1;function Fn(d,p){if(!d||Pn)return"";Pn=!0;var x=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(p)if(p=function(){throw Error()},Object.defineProperty(p.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(p,[])}catch(Pe){var S=Pe}Reflect.construct(d,[],p)}else{try{p.call()}catch(Pe){S=Pe}d.call(p.prototype)}else{try{throw Error()}catch(Pe){S=Pe}d()}}catch(Pe){if(Pe&&S&&typeof Pe.stack=="string"){for(var w=Pe.stack.split(` 3637`),P=S.stack.split(` 3638`),H=w.length-1,Z=P.length-1;1<=H&&0<=Z&&w[H]!==P[Z];)Z--;for(;1<=H&&0<=Z;H--,Z--)if(w[H]!==P[Z]){if(H!==1||Z!==1)do if(H--,Z--,0>Z||w[H]!==P[Z]){var de=` 3639`+w[H].replace(" at new "," at ");return d.displayName&&de.includes("<anonymous>")&&(de=de.replace("<anonymous>",d.displayName)),de}while(1<=H&&0<=Z);break}}}finally{Pn=!1,Error.prepareStackTrace=x}return(d=d?d.displayName||d.name:"")?Mt(d):""}var hs=Object.prototype.hasOwnProperty,ks=[],Cn=-1;function Rt(d){return{current:d}}function qn(d){0>Cn||(d.current=ks[Cn],ks[Cn]=null,Cn--)}function wt(d,p){Cn++,ks[Cn]=d.current,d.current=p}var _r={},Ui=Rt(_r),Ii=Rt(!1),Jo=_r;function si(d,p){var x=d.type.contextTypes;if(!x)return _r;var S=d.stateNode;if(S&&S.__reactInternalMemoizedUnmaskedChildContext===p)return S.__reactInternalMemoizedMaskedChildContext;var w={},P;for(P in x)w[P]=p[P];return S&&(d=d.stateNode,d.__reactInternalMemoizedUnmaskedChildContext=p,d.__reactInternalMemoizedMaskedChildContext=w),w}function oi(d){return d=d.childContextTypes,d!=null}function wu(){qn(Ii),qn(Ui)}function xr(d,p,x){if(Ui.current!==_r)throw Error(o(168));wt(Ui,p),wt(Ii,x)}function J1(d,p,x){var S=d.stateNode;if(p=p.childContextTypes,typeof S.getChildContext!="function")return x;S=S.getChildContext();for(var w in S)if(!(w in p))throw Error(o(108,R(d)||"Unknown",w));return s({},x,S)}function Z1(d){return d=(d=d.stateNode)&&d.__reactInternalMemoizedMergedChildContext||_r,Jo=Ui.current,wt(Ui,d),wt(Ii,Ii.current),!0}function j2(d,p,x){var S=d.stateNode;if(!S)throw Error(o(169));x?(d=J1(d,p,Jo),S.__reactInternalMemoizedMergedChildContext=d,qn(Ii),qn(Ui),wt(Ui,d)):qn(Ii),wt(Ii,x)}var Zo=Math.clz32?Math.clz32:wX,TX=Math.log,CX=Math.LN2;function wX(d){return d>>>=0,d===0?32:31-(TX(d)/CX|0)|0}var R6=64,b6=4194304;function X2(d){switch(d&-d){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return d&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return d&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return d}}function P6(d,p){var x=d.pendingLanes;if(x===0)return 0;var S=0,w=d.suspendedLanes,P=d.pingedLanes,H=x&268435455;if(H!==0){var Z=H&~w;Z!==0?S=X2(Z):(P&=H,P!==0&&(S=X2(P)))}else H=x&~w,H!==0?S=X2(H):P!==0&&(S=X2(P));if(S===0)return 0;if(p!==0&&p!==S&&!(p&w)&&(w=S&-S,P=p&-p,w>=P||w===16&&(P&4194240)!==0))return p;if(S&4&&(S|=x&16),p=d.entangledLanes,p!==0)for(d=d.entanglements,p&=S;0<p;)x=31-Zo(p),w=1<<x,S|=d[x],p&=~w;return S}function IX(d,p){switch(d){case 1:case 2:case 4:return p+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return p+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function MX(d,p){for(var x=d.suspendedLanes,S=d.pingedLanes,w=d.expirationTimes,P=d.pendingLanes;0<P;){var H=31-Zo(P),Z=1<<H,de=w[H];de===-1?(!(Z&x)||Z&S)&&(w[H]=IX(Z,p)):de<=p&&(d.expiredLanes|=Z),P&=~Z}}function DA(d){return d=d.pendingLanes&-1073741825,d!==0?d:d&1073741824?1073741824:0}function LA(d){for(var p=[],x=0;31>x;x++)p.push(d);return p}function Y2(d,p,x){d.pendingLanes|=p,p!==536870912&&(d.suspendedLanes=0,d.pingedLanes=0),d=d.eventTimes,p=31-Zo(p),d[p]=x}function RX(d,p){var x=d.pendingLanes&~p;d.pendingLanes=p,d.suspendedLanes=0,d.pingedLanes=0,d.expiredLanes&=p,d.mutableReadLanes&=p,d.entangledLanes&=p,p=d.entanglements;var S=d.eventTimes;for(d=d.expirationTimes;0<x;){var w=31-Zo(x),P=1<<w;p[w]=0,S[w]=-1,d[w]=-1,x&=~P}}function NA(d,p){var x=d.entangledLanes|=p;for(d=d.entanglements;x;){var S=31-Zo(x),w=1<<S;w&p|d[S]&p&&(d[S]|=p),x&=~w}}var cn=0;function DI(d){return d&=-d,1<d?4<d?d&268435455?16:536870912:4:1}var kA=r.unstable_scheduleCallback,LI=r.unstable_cancelCallback,bX=r.unstable_shouldYield,PX=r.unstable_requestPaint,Zi=r.unstable_now,FA=r.unstable_ImmediatePriority,BX=r.unstable_UserBlockingPriority,OA=r.unstable_NormalPriority,DX=r.unstable_IdlePriority,B6=null,Da=null;function LX(d){if(Da&&typeof Da.onCommitFiberRoot=="function")try{Da.onCommitFiberRoot(B6,d,void 0,(d.current.flags&128)===128)}catch{}}function NX(d,p){return d===p&&(d!==0||1/d===1/p)||d!==d&&p!==p}var La=typeof Object.is=="function"?Object.is:NX,Ml=null,D6=!1,UA=!1;function NI(d){Ml===null?Ml=[d]:Ml.push(d)}function kX(d){D6=!0,NI(d)}function Na(){if(!UA&&Ml!==null){UA=!0;var d=0,p=cn;try{var x=Ml;for(cn=1;d<x.length;d++){var S=x[d];do S=S(!0);while(S!==null)}Ml=null,D6=!1}catch(w){throw Ml!==null&&(Ml=Ml.slice(d+1)),kA(FA,Na),w}finally{cn=p,UA=!1}}return null}var FX=a.ReactCurrentBatchConfig;function L6(d,p){if(La(d,p))return!0;if(typeof d!="object"||d===null||typeof p!="object"||p===null)return!1;var x=Object.keys(d),S=Object.keys(p);if(x.length!==S.length)return!1;for(S=0;S<x.length;S++){var w=x[S];if(!hs.call(p,w)||!La(d[w],p[w]))return!1}return!0}function OX(d){switch(d.tag){case 5:return Mt(d.type);case 16:return Mt("Lazy");case 13:return Mt("Suspense");case 19:return Mt("SuspenseList");case 0:case 2:case 15:return d=Fn(d.type,!1),d;case 11:return d=Fn(d.type.render,!1),d;case 1:return d=Fn(d.type,!0),d;default:return""}}function ea(d,p){if(d&&d.defaultProps){p=s({},p),d=d.defaultProps;for(var x in d)p[x]===void 0&&(p[x]=d[x]);return p}return p}var N6=Rt(null),k6=null,e3=null,zA=null;function VA(){zA=e3=k6=null}function kI(d,p,x){Qe?(wt(N6,p._currentValue),p._currentValue=x):(wt(N6,p._currentValue2),p._currentValue2=x)}function GA(d){var p=N6.current;qn(N6),Qe?d._currentValue=p:d._currentValue2=p}function QA(d,p,x){for(;d!==null;){var S=d.alternate;if((d.childLanes&p)!==p?(d.childLanes|=p,S!==null&&(S.childLanes|=p)):S!==null&&(S.childLanes&p)!==p&&(S.childLanes|=p),d===x)break;d=d.return}}function t3(d,p){k6=d,zA=e3=null,d=d.dependencies,d!==null&&d.firstContext!==null&&(d.lanes&p&&(Us=!0),d.firstContext=null)}function po(d){var p=Qe?d._currentValue:d._currentValue2;if(zA!==d)if(d={context:d,memoizedValue:p,next:null},e3===null){if(k6===null)throw Error(o(308));e3=d,k6.dependencies={lanes:0,firstContext:d}}else e3=e3.next=d;return p}var ka=null,Iu=!1;function HA(d){d.updateQueue={baseState:d.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function FI(d,p){d=d.updateQueue,p.updateQueue===d&&(p.updateQueue={baseState:d.baseState,firstBaseUpdate:d.firstBaseUpdate,lastBaseUpdate:d.lastBaseUpdate,shared:d.shared,effects:d.effects})}function Rl(d,p){return{eventTime:d,lane:p,tag:0,payload:null,callback:null,next:null}}function Mu(d,p){var x=d.updateQueue;x!==null&&(x=x.shared,Mi!==null&&d.mode&1&&!(Xt&2)?(d=x.interleaved,d===null?(p.next=p,ka===null?ka=[x]:ka.push(x)):(p.next=d.next,d.next=p),x.interleaved=p):(d=x.pending,d===null?p.next=p:(p.next=d.next,d.next=p),x.pending=p))}function F6(d,p,x){if(p=p.updateQueue,p!==null&&(p=p.shared,(x&4194240)!==0)){var S=p.lanes;S&=d.pendingLanes,x|=S,p.lanes=x,NA(d,x)}}function OI(d,p){var x=d.updateQueue,S=d.alternate;if(S!==null&&(S=S.updateQueue,x===S)){var w=null,P=null;if(x=x.firstBaseUpdate,x!==null){do{var H={eventTime:x.eventTime,lane:x.lane,tag:x.tag,payload:x.payload,callback:x.callback,next:null};P===null?w=P=H:P=P.next=H,x=x.next}while(x!==null);P===null?w=P=p:P=P.next=p}else w=P=p;x={baseState:S.baseState,firstBaseUpdate:w,lastBaseUpdate:P,shared:S.shared,effects:S.effects},d.updateQueue=x;return}d=x.lastBaseUpdate,d===null?x.firstBaseUpdate=p:d.next=p,x.lastBaseUpdate=p}function O6(d,p,x,S){var w=d.updateQueue;Iu=!1;var P=w.firstBaseUpdate,H=w.lastBaseUpdate,Z=w.shared.pending;if(Z!==null){w.shared.pending=null;var de=Z,Pe=de.next;de.next=null,H===null?P=Pe:H.next=Pe,H=de;var Xe=d.alternate;Xe!==null&&(Xe=Xe.updateQueue,Z=Xe.lastBaseUpdate,Z!==H&&(Z===null?Xe.firstBaseUpdate=Pe:Z.next=Pe,Xe.lastBaseUpdate=de))}if(P!==null){var Lt=w.baseState;H=0,Xe=Pe=de=null,Z=P;do{var gt=Z.lane,wn=Z.eventTime;if((S>)===gt){Xe!==null&&(Xe=Xe.next={eventTime:wn,lane:0,tag:Z.tag,payload:Z.payload,callback:Z.callback,next:null});e:{var ct=d,Cr=Z;switch(gt=p,wn=x,Cr.tag){case 1:if(ct=Cr.payload,typeof ct=="function"){Lt=ct.call(wn,Lt,gt);break e}Lt=ct;break e;case 3:ct.flags=ct.flags&-65537|128;case 0:if(ct=Cr.payload,gt=typeof ct=="function"?ct.call(wn,Lt,gt):ct,gt==null)break e;Lt=s({},Lt,gt);break e;case 2:Iu=!0}}Z.callback!==null&&Z.lane!==0&&(d.flags|=64,gt=w.effects,gt===null?w.effects=[Z]:gt.push(Z))}else wn={eventTime:wn,lane:gt,tag:Z.tag,payload:Z.payload,callback:Z.callback,next:null},Xe===null?(Pe=Xe=wn,de=Lt):Xe=Xe.next=wn,H|=gt;if(Z=Z.next,Z===null){if(Z=w.shared.pending,Z===null)break;gt=Z,Z=gt.next,gt.next=null,w.lastBaseUpdate=gt,w.shared.pending=null}}while(1);if(Xe===null&&(de=Lt),w.baseState=de,w.firstBaseUpdate=Pe,w.lastBaseUpdate=Xe,p=w.shared.interleaved,p!==null){w=p;do H|=w.lane,w=w.next;while(w!==p)}else P===null&&(w.shared.lanes=0);c3|=H,d.lanes=H,d.memoizedState=Lt}}function UI(d,p,x){if(d=p.effects,p.effects=null,d!==null)for(p=0;p<d.length;p++){var S=d[p],w=S.callback;if(w!==null){if(S.callback=null,S=x,typeof w!="function")throw Error(o(191,w));w.call(S)}}}var zI=new i.Component().refs;function WA(d,p,x,S){p=d.memoizedState,x=x(S,p),x=x==null?p:s({},p,x),d.memoizedState=x,d.lanes===0&&(d.updateQueue.baseState=x)}var U6={isMounted:function(d){return(d=d._reactInternals)?M(d)===d:!1},enqueueSetState:function(d,p,x){d=d._reactInternals;var S=jr(),w=Pu(d),P=Rl(S,w);P.payload=p,x!=null&&(P.callback=x),Mu(d,P),p=yo(d,w,S),p!==null&&F6(p,d,w)},enqueueReplaceState:function(d,p,x){d=d._reactInternals;var S=jr(),w=Pu(d),P=Rl(S,w);P.tag=1,P.payload=p,x!=null&&(P.callback=x),Mu(d,P),p=yo(d,w,S),p!==null&&F6(p,d,w)},enqueueForceUpdate:function(d,p){d=d._reactInternals;var x=jr(),S=Pu(d),w=Rl(x,S);w.tag=2,p!=null&&(w.callback=p),Mu(d,w),p=yo(d,S,x),p!==null&&F6(p,d,S)}};function VI(d,p,x,S,w,P,H){return d=d.stateNode,typeof d.shouldComponentUpdate=="function"?d.shouldComponentUpdate(S,P,H):p.prototype&&p.prototype.isPureReactComponent?!L6(x,S)||!L6(w,P):!0}function GI(d,p,x){var S=!1,w=_r,P=p.contextType;return typeof P=="object"&&P!==null?P=po(P):(w=oi(p)?Jo:Ui.current,S=p.contextTypes,P=(S=S!=null)?si(d,w):_r),p=new p(x,P),d.memoizedState=p.state!==null&&p.state!==void 0?p.state:null,p.updater=U6,d.stateNode=p,p._reactInternals=d,S&&(d=d.stateNode,d.__reactInternalMemoizedUnmaskedChildContext=w,d.__reactInternalMemoizedMaskedChildContext=P),p}function QI(d,p,x,S){d=p.state,typeof p.componentWillReceiveProps=="function"&&p.componentWillReceiveProps(x,S),typeof p.UNSAFE_componentWillReceiveProps=="function"&&p.UNSAFE_componentWillReceiveProps(x,S),p.state!==d&&U6.enqueueReplaceState(p,p.state,null)}function $A(d,p,x,S){var w=d.stateNode;w.props=x,w.state=d.memoizedState,w.refs=zI,HA(d);var P=p.contextType;typeof P=="object"&&P!==null?w.context=po(P):(P=oi(p)?Jo:Ui.current,w.context=si(d,P)),w.state=d.memoizedState,P=p.getDerivedStateFromProps,typeof P=="function"&&(WA(d,p,P,x),w.state=d.memoizedState),typeof p.getDerivedStateFromProps=="function"||typeof w.getSnapshotBeforeUpdate=="function"||typeof w.UNSAFE_componentWillMount!="function"&&typeof w.componentWillMount!="function"||(p=w.state,typeof w.componentWillMount=="function"&&w.componentWillMount(),typeof w.UNSAFE_componentWillMount=="function"&&w.UNSAFE_componentWillMount(),p!==w.state&&U6.enqueueReplaceState(w,w.state,null),O6(d,x,w,S),w.state=d.memoizedState),typeof w.componentDidMount=="function"&&(d.flags|=4194308)}var n3=[],i3=0,z6=null,V6=0,mo=[],go=0,ch=null,bl=1,Pl="";function hh(d,p){n3[i3++]=V6,n3[i3++]=z6,z6=d,V6=p}function HI(d,p,x){mo[go++]=bl,mo[go++]=Pl,mo[go++]=ch,ch=d;var S=bl;d=Pl;var w=32-Zo(S)-1;S&=~(1<<w),x+=1;var P=32-Zo(p)+w;if(30<P){var H=w-w%5;P=(S&(1<<H)-1).toString(32),S>>=H,w-=H,bl=1<<32-Zo(p)+w|x<<w|S,Pl=P+d}else bl=1<<P|x<<w|S,Pl=d}function jA(d){d.return!==null&&(hh(d,1),HI(d,1,0))}function XA(d){for(;d===z6;)z6=n3[--i3],n3[i3]=null,V6=n3[--i3],n3[i3]=null;for(;d===ch;)ch=mo[--go],mo[go]=null,Pl=mo[--go],mo[go]=null,bl=mo[--go],mo[go]=null}var Fs=null,Os=null,Qn=!1,K2=!1,ta=null;function WI(d,p){var x=qo(5,null,null,0);x.elementType="DELETED",x.stateNode=p,x.return=d,p=d.deletions,p===null?(d.deletions=[x],d.flags|=16):p.push(x)}function $I(d,p){switch(d.tag){case 5:return p=cr(p,d.type,d.pendingProps),p!==null?(d.stateNode=p,Fs=d,Os=M6(p),!0):!1;case 6:return p=T6(p,d.pendingProps),p!==null?(d.stateNode=p,Fs=d,Os=null,!0):!1;case 13:if(p=C6(p),p!==null){var x=ch!==null?{id:bl,overflow:Pl}:null;return d.memoizedState={dehydrated:p,treeContext:x,retryLane:1073741824},x=qo(18,null,null,0),x.stateNode=p,x.return=d,d.child=x,Fs=d,Os=null,!0}return!1;default:return!1}}function YA(d){return(d.mode&1)!==0&&(d.flags&128)===0}function KA(d){if(Qn){var p=Os;if(p){var x=p;if(!$I(d,p)){if(YA(d))throw Error(o(418));p=Ba(x);var S=Fs;p&&$I(d,p)?WI(S,x):(d.flags=d.flags&-4097|2,Qn=!1,Fs=d)}}else{if(YA(d))throw Error(o(418));d.flags=d.flags&-4097|2,Qn=!1,Fs=d}}}function jI(d){for(d=d.return;d!==null&&d.tag!==5&&d.tag!==3&&d.tag!==13;)d=d.return;Fs=d}function J2(d){if(!qe||d!==Fs)return!1;if(!Qn)return jI(d),Qn=!0,!1;if(d.tag!==3&&(d.tag!==5||Tt(d.type)&&!ge(d.type,d.memoizedProps))){var p=Os;if(p){if(YA(d)){for(d=Os;d;)d=Ba(d);throw Error(o(418))}for(;p;)WI(d,p),p=Ba(p)}}if(jI(d),d.tag===13){if(!qe)throw Error(o(316));if(d=d.memoizedState,d=d!==null?d.dehydrated:null,!d)throw Error(o(317));Os=me(d)}else Os=Fs?Ba(d.stateNode):null;return!0}function r3(){qe&&(Os=Fs=null,K2=Qn=!1)}function JA(d){ta===null?ta=[d]:ta.push(d)}function Z2(d,p,x){if(d=x.ref,d!==null&&typeof d!="function"&&typeof d!="object"){if(x._owner){if(x=x._owner,x){if(x.tag!==1)throw Error(o(309));var S=x.stateNode}if(!S)throw Error(o(147,d));var w=S,P=""+d;return p!==null&&p.ref!==null&&typeof p.ref=="function"&&p.ref._stringRef===P?p.ref:(p=function(H){var Z=w.refs;Z===zI&&(Z=w.refs={}),H===null?delete Z[P]:Z[P]=H},p._stringRef=P,p)}if(typeof d!="string")throw Error(o(284));if(!x._owner)throw Error(o(290,d))}return d}function G6(d,p){throw d=Object.prototype.toString.call(p),Error(o(31,d==="[object Object]"?"object with keys {"+Object.keys(p).join(", ")+"}":d))}function XI(d){var p=d._init;return p(d._payload)}function YI(d){function p(re,te){if(d){var he=re.deletions;he===null?(re.deletions=[te],re.flags|=16):he.push(te)}}function x(re,te){if(!d)return null;for(;te!==null;)p(re,te),te=te.sibling;return null}function S(re,te){for(re=new Map;te!==null;)te.key!==null?re.set(te.key,te):re.set(te.index,te),te=te.sibling;return re}function w(re,te){return re=Du(re,te),re.index=0,re.sibling=null,re}function P(re,te,he){return re.index=he,d?(he=re.alternate,he!==null?(he=he.index,he<te?(re.flags|=2,te):he):(re.flags|=2,te)):(re.flags|=1048576,te)}function H(re){return d&&re.alternate===null&&(re.flags|=2),re}function Z(re,te,he,Ve){return te===null||te.tag!==6?(te=Lv(he,re.mode,Ve),te.return=re,te):(te=w(te,he),te.return=re,te)}function de(re,te,he,Ve){var at=he.type;return at===c?Xe(re,te,he.props.children,Ve,he.key):te!==null&&(te.elementType===at||typeof at=="object"&&at!==null&&at.$$typeof===q&&XI(at)===te.type)?(Ve=w(te,he.props),Ve.ref=Z2(re,te,he),Ve.return=re,Ve):(Ve=qp(he.type,he.key,he.props,null,re.mode,Ve),Ve.ref=Z2(re,te,he),Ve.return=re,Ve)}function Pe(re,te,he,Ve){return te===null||te.tag!==4||te.stateNode.containerInfo!==he.containerInfo||te.stateNode.implementation!==he.implementation?(te=Nv(he,re.mode,Ve),te.return=re,te):(te=w(te,he.children||[]),te.return=re,te)}function Xe(re,te,he,Ve,at){return te===null||te.tag!==7?(te=vh(he,re.mode,Ve,at),te.return=re,te):(te=w(te,he),te.return=re,te)}function Lt(re,te,he){if(typeof te=="string"&&te!==""||typeof te=="number")return te=Lv(""+te,re.mode,he),te.return=re,te;if(typeof te=="object"&&te!==null){switch(te.$$typeof){case l:return he=qp(te.type,te.key,te.props,null,re.mode,he),he.ref=Z2(re,null,te),he.return=re,he;case u:return te=Nv(te,re.mode,he),te.return=re,te;case q:var Ve=te._init;return Lt(re,Ve(te._payload),he)}if($(te)||C(te))return te=vh(te,re.mode,he,null),te.return=re,te;G6(re,te)}return null}function gt(re,te,he,Ve){var at=te!==null?te.key:null;if(typeof he=="string"&&he!==""||typeof he=="number")return at!==null?null:Z(re,te,""+he,Ve);if(typeof he=="object"&&he!==null){switch(he.$$typeof){case l:return he.key===at?de(re,te,he,Ve):null;case u:return he.key===at?Pe(re,te,he,Ve):null;case q:return at=he._init,gt(re,te,at(he._payload),Ve)}if($(he)||C(he))return at!==null?null:Xe(re,te,he,Ve,null);G6(re,he)}return null}function wn(re,te,he,Ve,at){if(typeof Ve=="string"&&Ve!==""||typeof Ve=="number")return re=re.get(he)||null,Z(te,re,""+Ve,at);if(typeof Ve=="object"&&Ve!==null){switch(Ve.$$typeof){case l:return re=re.get(Ve.key===null?he:Ve.key)||null,de(te,re,Ve,at);case u:return re=re.get(Ve.key===null?he:Ve.key)||null,Pe(te,re,Ve,at);case q:var Wt=Ve._init;return wn(re,te,he,Wt(Ve._payload),at)}if($(Ve)||C(Ve))return re=re.get(he)||null,Xe(te,re,Ve,at,null);G6(te,Ve)}return null}function ct(re,te,he,Ve){for(var at=null,Wt=null,Nt=te,hn=te=0,tr=null;Nt!==null&&hn<he.length;hn++){Nt.index>hn?(tr=Nt,Nt=null):tr=Nt.sibling;var fn=gt(re,Nt,he[hn],Ve);if(fn===null){Nt===null&&(Nt=tr);break}d&&Nt&&fn.alternate===null&&p(re,Nt),te=P(fn,te,hn),Wt===null?at=fn:Wt.sibling=fn,Wt=fn,Nt=tr}if(hn===he.length)return x(re,Nt),Qn&&hh(re,hn),at;if(Nt===null){for(;hn<he.length;hn++)Nt=Lt(re,he[hn],Ve),Nt!==null&&(te=P(Nt,te,hn),Wt===null?at=Nt:Wt.sibling=Nt,Wt=Nt);return Qn&&hh(re,hn),at}for(Nt=S(re,Nt);hn<he.length;hn++)tr=wn(Nt,re,hn,he[hn],Ve),tr!==null&&(d&&tr.alternate!==null&&Nt.delete(tr.key===null?hn:tr.key),te=P(tr,te,hn),Wt===null?at=tr:Wt.sibling=tr,Wt=tr);return d&&Nt.forEach(function(Lu){return p(re,Lu)}),Qn&&hh(re,hn),at}function Cr(re,te,he,Ve){var at=C(he);if(typeof at!="function")throw Error(o(150));if(he=at.call(he),he==null)throw Error(o(151));for(var Wt=at=null,Nt=te,hn=te=0,tr=null,fn=he.next();Nt!==null&&!fn.done;hn++,fn=he.next()){Nt.index>hn?(tr=Nt,Nt=null):tr=Nt.sibling;var Lu=gt(re,Nt,fn.value,Ve);if(Lu===null){Nt===null&&(Nt=tr);break}d&&Nt&&Lu.alternate===null&&p(re,Nt),te=P(Lu,te,hn),Wt===null?at=Lu:Wt.sibling=Lu,Wt=Lu,Nt=tr}if(fn.done)return x(re,Nt),Qn&&hh(re,hn),at;if(Nt===null){for(;!fn.done;hn++,fn=he.next())fn=Lt(re,fn.value,Ve),fn!==null&&(te=P(fn,te,hn),Wt===null?at=fn:Wt.sibling=fn,Wt=fn);return Qn&&hh(re,hn),at}for(Nt=S(re,Nt);!fn.done;hn++,fn=he.next())fn=wn(Nt,re,hn,fn.value,Ve),fn!==null&&(d&&fn.alternate!==null&&Nt.delete(fn.key===null?hn:fn.key),te=P(fn,te,hn),Wt===null?at=fn:Wt.sibling=fn,Wt=fn);return d&&Nt.forEach(function(mY){return p(re,mY)}),Qn&&hh(re,hn),at}function _o(re,te,he,Ve){if(typeof he=="object"&&he!==null&&he.type===c&&he.key===null&&(he=he.props.children),typeof he=="object"&&he!==null){switch(he.$$typeof){case l:e:{for(var at=he.key,Wt=te;Wt!==null;){if(Wt.key===at){if(at=he.type,at===c){if(Wt.tag===7){x(re,Wt.sibling),te=w(Wt,he.props.children),te.return=re,re=te;break e}}else if(Wt.elementType===at||typeof at=="object"&&at!==null&&at.$$typeof===q&&XI(at)===Wt.type){x(re,Wt.sibling),te=w(Wt,he.props),te.ref=Z2(re,Wt,he),te.return=re,re=te;break e}x(re,Wt);break}else p(re,Wt);Wt=Wt.sibling}he.type===c?(te=vh(he.props.children,re.mode,Ve,he.key),te.return=re,re=te):(Ve=qp(he.type,he.key,he.props,null,re.mode,Ve),Ve.ref=Z2(re,te,he),Ve.return=re,re=Ve)}return H(re);case u:e:{for(Wt=he.key;te!==null;){if(te.key===Wt)if(te.tag===4&&te.stateNode.containerInfo===he.containerInfo&&te.stateNode.implementation===he.implementation){x(re,te.sibling),te=w(te,he.children||[]),te.return=re,re=te;break e}else{x(re,te);break}else p(re,te);te=te.sibling}te=Nv(he,re.mode,Ve),te.return=re,re=te}return H(re);case q:return Wt=he._init,_o(re,te,Wt(he._payload),Ve)}if($(he))return ct(re,te,he,Ve);if(C(he))return Cr(re,te,he,Ve);G6(re,he)}return typeof he=="string"&&he!==""||typeof he=="number"?(he=""+he,te!==null&&te.tag===6?(x(re,te.sibling),te=w(te,he),te.return=re,re=te):(x(re,te),te=Lv(he,re.mode,Ve),te.return=re,re=te),H(re)):x(re,te)}return _o}var s3=YI(!0),KI=YI(!1),ef={},Ao=Rt(ef),tf=Rt(ef),o3=Rt(ef);function Fa(d){if(d===ef)throw Error(o(174));return d}function ZA(d,p){wt(o3,p),wt(tf,d),wt(Ao,ef),d=Y(p),qn(Ao),wt(Ao,d)}function a3(){qn(Ao),qn(tf),qn(o3)}function JI(d){var p=Fa(o3.current),x=Fa(Ao.current);p=B(x,d.type,p),x!==p&&(wt(tf,d),wt(Ao,p))}function ev(d){tf.current===d&&(qn(Ao),qn(tf))}var $n=Rt(0);function Q6(d){for(var p=d;p!==null;){if(p.tag===13){var x=p.memoizedState;if(x!==null&&(x=x.dehydrated,x===null||w6(x)||Cu(x)))return p}else if(p.tag===19&&p.memoizedProps.revealOrder!==void 0){if(p.flags&128)return p}else if(p.child!==null){p.child.return=p,p=p.child;continue}if(p===d)break;for(;p.sibling===null;){if(p.return===null||p.return===d)return null;p=p.return}p.sibling.return=p.return,p=p.sibling}return null}var tv=[];function nv(){for(var d=0;d<tv.length;d++){var p=tv[d];Qe?p._workInProgressVersionPrimary=null:p._workInProgressVersionSecondary=null}tv.length=0}var H6=a.ReactCurrentDispatcher,vo=a.ReactCurrentBatchConfig,l3=0,ai=null,Er=null,er=null,W6=!1,nf=!1,rf=0,UX=0;function Sr(){throw Error(o(321))}function iv(d,p){if(p===null)return!1;for(var x=0;x<p.length&&x<d.length;x++)if(!La(d[x],p[x]))return!1;return!0}function rv(d,p,x,S,w,P){if(l3=P,ai=p,p.memoizedState=null,p.updateQueue=null,p.lanes=0,H6.current=d===null||d.memoizedState===null?QX:HX,d=x(S,w),nf){P=0;do{if(nf=!1,rf=0,25<=P)throw Error(o(301));P+=1,er=Er=null,p.updateQueue=null,H6.current=WX,d=x(S,w)}while(nf)}if(H6.current=K6,p=Er!==null&&Er.next!==null,l3=0,er=Er=ai=null,W6=!1,p)throw Error(o(300));return d}function sv(){var d=rf!==0;return rf=0,d}function Bl(){var d={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return er===null?ai.memoizedState=er=d:er=er.next=d,er}function Oa(){if(Er===null){var d=ai.alternate;d=d!==null?d.memoizedState:null}else d=Er.next;var p=er===null?ai.memoizedState:er.next;if(p!==null)er=p,Er=d;else{if(d===null)throw Error(o(310));Er=d,d={memoizedState:Er.memoizedState,baseState:Er.baseState,baseQueue:Er.baseQueue,queue:Er.queue,next:null},er===null?ai.memoizedState=er=d:er=er.next=d}return er}function fh(d,p){return typeof p=="function"?p(d):p}function $6(d){var p=Oa(),x=p.queue;if(x===null)throw Error(o(311));x.lastRenderedReducer=d;var S=Er,w=S.baseQueue,P=x.pending;if(P!==null){if(w!==null){var H=w.next;w.next=P.next,P.next=H}S.baseQueue=w=P,x.pending=null}if(w!==null){P=w.next,S=S.baseState;var Z=H=null,de=null,Pe=P;do{var Xe=Pe.lane;if((l3&Xe)===Xe)de!==null&&(de=de.next={lane:0,action:Pe.action,hasEagerState:Pe.hasEagerState,eagerState:Pe.eagerState,next:null}),S=Pe.hasEagerState?Pe.eagerState:d(S,Pe.action);else{var Lt={lane:Xe,action:Pe.action,hasEagerState:Pe.hasEagerState,eagerState:Pe.eagerState,next:null};de===null?(Z=de=Lt,H=S):de=de.next=Lt,ai.lanes|=Xe,c3|=Xe}Pe=Pe.next}while(Pe!==null&&Pe!==P);de===null?H=S:de.next=Z,La(S,p.memoizedState)||(Us=!0),p.memoizedState=S,p.baseState=H,p.baseQueue=de,x.lastRenderedState=S}if(d=x.interleaved,d!==null){w=d;do P=w.lane,ai.lanes|=P,c3|=P,w=w.next;while(w!==d)}else w===null&&(x.lanes=0);return[p.memoizedState,x.dispatch]}function j6(d){var p=Oa(),x=p.queue;if(x===null)throw Error(o(311));x.lastRenderedReducer=d;var S=x.dispatch,w=x.pending,P=p.memoizedState;if(w!==null){x.pending=null;var H=w=w.next;do P=d(P,H.action),H=H.next;while(H!==w);La(P,p.memoizedState)||(Us=!0),p.memoizedState=P,p.baseQueue===null&&(p.baseState=P),x.lastRenderedState=P}return[P,S]}function ZI(){}function eM(d,p){var x=ai,S=Oa(),w=p(),P=!La(S.memoizedState,w);if(P&&(S.memoizedState=w,Us=!0),S=S.queue,of(iM.bind(null,x,S,d),[d]),S.getSnapshot!==p||P||er!==null&&er.memoizedState.tag&1){if(x.flags|=2048,sf(9,nM.bind(null,x,S,w,p),void 0,null),Mi===null)throw Error(o(349));l3&30||tM(x,p,w)}return w}function tM(d,p,x){d.flags|=16384,d={getSnapshot:p,value:x},p=ai.updateQueue,p===null?(p={lastEffect:null,stores:null},ai.updateQueue=p,p.stores=[d]):(x=p.stores,x===null?p.stores=[d]:x.push(d))}function nM(d,p,x,S){p.value=x,p.getSnapshot=S,rM(p)&&yo(d,1,-1)}function iM(d,p,x){return x(function(){rM(p)&&yo(d,1,-1)})}function rM(d){var p=d.getSnapshot;d=d.value;try{var x=p();return!La(d,x)}catch{return!0}}function ov(d){var p=Bl();return typeof d=="function"&&(d=d()),p.memoizedState=p.baseState=d,d={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:fh,lastRenderedState:d},p.queue=d,d=d.dispatch=GX.bind(null,ai,d),[p.memoizedState,d]}function sf(d,p,x,S){return d={tag:d,create:p,destroy:x,deps:S,next:null},p=ai.updateQueue,p===null?(p={lastEffect:null,stores:null},ai.updateQueue=p,p.lastEffect=d.next=d):(x=p.lastEffect,x===null?p.lastEffect=d.next=d:(S=x.next,x.next=d,d.next=S,p.lastEffect=d)),d}function sM(){return Oa().memoizedState}function X6(d,p,x,S){var w=Bl();ai.flags|=d,w.memoizedState=sf(1|p,x,void 0,S===void 0?null:S)}function Y6(d,p,x,S){var w=Oa();S=S===void 0?null:S;var P=void 0;if(Er!==null){var H=Er.memoizedState;if(P=H.destroy,S!==null&&iv(S,H.deps)){w.memoizedState=sf(p,x,P,S);return}}ai.flags|=d,w.memoizedState=sf(1|p,x,P,S)}function av(d,p){return X6(8390656,8,d,p)}function of(d,p){return Y6(2048,8,d,p)}function oM(d,p){return Y6(4,2,d,p)}function aM(d,p){return Y6(4,4,d,p)}function lM(d,p){if(typeof p=="function")return d=d(),p(d),function(){p(null)};if(p!=null)return d=d(),p.current=d,function(){p.current=null}}function uM(d,p,x){return x=x!=null?x.concat([d]):null,Y6(4,4,lM.bind(null,p,d),x)}function lv(){}function cM(d,p){var x=Oa();p=p===void 0?null:p;var S=x.memoizedState;return S!==null&&p!==null&&iv(p,S[1])?S[0]:(x.memoizedState=[d,p],d)}function hM(d,p){var x=Oa();p=p===void 0?null:p;var S=x.memoizedState;return S!==null&&p!==null&&iv(p,S[1])?S[0]:(d=d(),x.memoizedState=[d,p],d)}function zX(d,p){var x=cn;cn=x!==0&&4>x?x:4,d(!0);var S=vo.transition;vo.transition={};try{d(!1),p()}finally{cn=x,vo.transition=S}}function fM(){return Oa().memoizedState}function VX(d,p,x){var S=Pu(d);x={lane:S,action:x,hasEagerState:!1,eagerState:null,next:null},dM(d)?pM(p,x):(mM(d,p,x),x=jr(),d=yo(d,S,x),d!==null&&gM(d,p,S))}function GX(d,p,x){var S=Pu(d),w={lane:S,action:x,hasEagerState:!1,eagerState:null,next:null};if(dM(d))pM(p,w);else{mM(d,p,w);var P=d.alternate;if(d.lanes===0&&(P===null||P.lanes===0)&&(P=p.lastRenderedReducer,P!==null))try{var H=p.lastRenderedState,Z=P(H,x);if(w.hasEagerState=!0,w.eagerState=Z,La(Z,H))return}catch{}finally{}x=jr(),d=yo(d,S,x),d!==null&&gM(d,p,S)}}function dM(d){var p=d.alternate;return d===ai||p!==null&&p===ai}function pM(d,p){nf=W6=!0;var x=d.pending;x===null?p.next=p:(p.next=x.next,x.next=p),d.pending=p}function mM(d,p,x){Mi!==null&&d.mode&1&&!(Xt&2)?(d=p.interleaved,d===null?(x.next=x,ka===null?ka=[p]:ka.push(p)):(x.next=d.next,d.next=x),p.interleaved=x):(d=p.pending,d===null?x.next=x:(x.next=d.next,d.next=x),p.pending=x)}function gM(d,p,x){if(x&4194240){var S=p.lanes;S&=d.pendingLanes,x|=S,p.lanes=x,NA(d,x)}}var K6={readContext:po,useCallback:Sr,useContext:Sr,useEffect:Sr,useImperativeHandle:Sr,useInsertionEffect:Sr,useLayoutEffect:Sr,useMemo:Sr,useReducer:Sr,useRef:Sr,useState:Sr,useDebugValue:Sr,useDeferredValue:Sr,useTransition:Sr,useMutableSource:Sr,useSyncExternalStore:Sr,useId:Sr,unstable_isNewReconciler:!1},QX={readContext:po,useCallback:function(d,p){return Bl().memoizedState=[d,p===void 0?null:p],d},useContext:po,useEffect:av,useImperativeHandle:function(d,p,x){return x=x!=null?x.concat([d]):null,X6(4194308,4,lM.bind(null,p,d),x)},useLayoutEffect:function(d,p){return X6(4194308,4,d,p)},useInsertionEffect:function(d,p){return X6(4,2,d,p)},useMemo:function(d,p){var x=Bl();return p=p===void 0?null:p,d=d(),x.memoizedState=[d,p],d},useReducer:function(d,p,x){var S=Bl();return p=x!==void 0?x(p):p,S.memoizedState=S.baseState=p,d={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:d,lastRenderedState:p},S.queue=d,d=d.dispatch=VX.bind(null,ai,d),[S.memoizedState,d]},useRef:function(d){var p=Bl();return d={current:d},p.memoizedState=d},useState:ov,useDebugValue:lv,useDeferredValue:function(d){var p=ov(d),x=p[0],S=p[1];return av(function(){var w=vo.transition;vo.transition={};try{S(d)}finally{vo.transition=w}},[d]),x},useTransition:function(){var d=ov(!1),p=d[0];return d=zX.bind(null,d[1]),Bl().memoizedState=d,[p,d]},useMutableSource:function(){},useSyncExternalStore:function(d,p,x){var S=ai,w=Bl();if(Qn){if(x===void 0)throw Error(o(407));x=x()}else{if(x=p(),Mi===null)throw Error(o(349));l3&30||tM(S,p,x)}w.memoizedState=x;var P={value:x,getSnapshot:p};return w.queue=P,av(iM.bind(null,S,P,d),[d]),S.flags|=2048,sf(9,nM.bind(null,S,P,x,p),void 0,null),x},useId:function(){var d=Bl(),p=Mi.identifierPrefix;if(Qn){var x=Pl,S=bl;x=(S&~(1<<32-Zo(S)-1)).toString(32)+x,p=":"+p+"R"+x,x=rf++,0<x&&(p+="H"+x.toString(32)),p+=":"}else x=UX++,p=":"+p+"r"+x.toString(32)+":";return d.memoizedState=p},unstable_isNewReconciler:!1},HX={readContext:po,useCallback:cM,useContext:po,useEffect:of,useImperativeHandle:uM,useInsertionEffect:oM,useLayoutEffect:aM,useMemo:hM,useReducer:$6,useRef:sM,useState:function(){return $6(fh)},useDebugValue:lv,useDeferredValue:function(d){var p=$6(fh),x=p[0],S=p[1];return of(function(){var w=vo.transition;vo.transition={};try{S(d)}finally{vo.transition=w}},[d]),x},useTransition:function(){var d=$6(fh)[0],p=Oa().memoizedState;return[d,p]},useMutableSource:ZI,useSyncExternalStore:eM,useId:fM,unstable_isNewReconciler:!1},WX={readContext:po,useCallback:cM,useContext:po,useEffect:of,useImperativeHandle:uM,useInsertionEffect:oM,useLayoutEffect:aM,useMemo:hM,useReducer:j6,useRef:sM,useState:function(){return j6(fh)},useDebugValue:lv,useDeferredValue:function(d){var p=j6(fh),x=p[0],S=p[1];return of(function(){var w=vo.transition;vo.transition={};try{S(d)}finally{vo.transition=w}},[d]),x},useTransition:function(){var d=j6(fh)[0],p=Oa().memoizedState;return[d,p]},useMutableSource:ZI,useSyncExternalStore:eM,useId:fM,unstable_isNewReconciler:!1};function uv(d,p){try{var x="",S=p;do x+=OX(S),S=S.return;while(S);var w=x}catch(P){w=` 3640Error generating stack: `+P.message+` 3641`+P.stack}return{value:d,source:p,stack:w}}function cv(d,p){try{console.error(p.value)}catch(x){setTimeout(function(){throw x})}}var $X=typeof WeakMap=="function"?WeakMap:Map;function AM(d,p,x){x=Rl(-1,x),x.tag=3,x.payload={element:null};var S=p.value;return x.callback=function(){dp||(dp=!0,Iv=S),cv(d,p)},x}function vM(d,p,x){x=Rl(-1,x),x.tag=3;var S=d.type.getDerivedStateFromError;if(typeof S=="function"){var w=p.value;x.payload=function(){return S(w)},x.callback=function(){cv(d,p)}}var P=d.stateNode;return P!==null&&typeof P.componentDidCatch=="function"&&(x.callback=function(){cv(d,p),typeof S!="function"&&(Ru===null?Ru=new Set([this]):Ru.add(this));var H=p.stack;this.componentDidCatch(p.value,{componentStack:H!==null?H:""})}),x}function yM(d,p,x){var S=d.pingCache;if(S===null){S=d.pingCache=new $X;var w=new Set;S.set(p,w)}else w=S.get(p),w===void 0&&(w=new Set,S.set(p,w));w.has(x)||(w.add(x),d=aY.bind(null,d,p,x),p.then(d,d))}function qM(d){do{var p;if((p=d.tag===13)&&(p=d.memoizedState,p=p!==null?p.dehydrated!==null:!0),p)return d;d=d.return}while(d!==null);return null}function _M(d,p,x,S,w){return d.mode&1?(d.flags|=65536,d.lanes=w,d):(d===p?d.flags|=65536:(d.flags|=128,x.flags|=131072,x.flags&=-52805,x.tag===1&&(x.alternate===null?x.tag=17:(p=Rl(-1,1),p.tag=2,Mu(x,p))),x.lanes|=1),d)}function Ua(d){d.flags|=4}function xM(d,p){if(d!==null&&d.child===p.child)return!0;if(p.flags&16)return!1;for(d=p.child;d!==null;){if(d.flags&12854||d.subtreeFlags&12854)return!1;d=d.sibling}return!0}var af,lf,J6,Z6;if(Be)af=function(d,p){for(var x=p.child;x!==null;){if(x.tag===5||x.tag===6)Q(d,x.stateNode);else if(x.tag!==4&&x.child!==null){x.child.return=x,x=x.child;continue}if(x===p)break;for(;x.sibling===null;){if(x.return===null||x.return===p)return;x=x.return}x.sibling.return=x.return,x=x.sibling}},lf=function(){},J6=function(d,p,x,S,w){if(d=d.memoizedProps,d!==S){var P=p.stateNode,H=Fa(Ao.current);x=ae(P,x,d,S,w,H),(p.updateQueue=x)&&Ua(p)}},Z6=function(d,p,x,S){x!==S&&Ua(p)};else if(X){af=function(d,p,x,S){for(var w=p.child;w!==null;){if(w.tag===5){var P=w.stateNode;x&&S&&(P=Tn(P,w.type,w.memoizedProps,w)),Q(d,P)}else if(w.tag===6)P=w.stateNode,x&&S&&(P=Ns(P,w.memoizedProps,w)),Q(d,P);else if(w.tag!==4){if(w.tag===22&&w.memoizedState!==null)P=w.child,P!==null&&(P.return=w),af(d,w,!0,!0);else if(w.child!==null){w.child.return=w,w=w.child;continue}}if(w===p)break;for(;w.sibling===null;){if(w.return===null||w.return===p)return;w=w.return}w.sibling.return=w.return,w=w.sibling}};var EM=function(d,p,x,S){for(var w=p.child;w!==null;){if(w.tag===5){var P=w.stateNode;x&&S&&(P=Tn(P,w.type,w.memoizedProps,w)),bn(d,P)}else if(w.tag===6)P=w.stateNode,x&&S&&(P=Ns(P,w.memoizedProps,w)),bn(d,P);else if(w.tag!==4){if(w.tag===22&&w.memoizedState!==null)P=w.child,P!==null&&(P.return=w),EM(d,w,!0,!0);else if(w.child!==null){w.child.return=w,w=w.child;continue}}if(w===p)break;for(;w.sibling===null;){if(w.return===null||w.return===p)return;w=w.return}w.sibling.return=w.return,w=w.sibling}};lf=function(d,p){var x=p.stateNode;if(!xM(d,p)){d=x.containerInfo;var S=tn(d);EM(S,p,!1,!1),x.pendingChildren=S,Ua(p),ri(d,S)}},J6=function(d,p,x,S,w){var P=d.stateNode,H=d.memoizedProps;if((d=xM(d,p))&&H===S)p.stateNode=P;else{var Z=p.stateNode,de=Fa(Ao.current),Pe=null;H!==S&&(Pe=ae(Z,x,H,S,w,de)),d&&Pe===null?p.stateNode=P:(P=ze(P,Pe,x,H,S,p,d,Z),ce(P,x,S,w,de)&&Ua(p),p.stateNode=P,d?Ua(p):af(P,p,!1,!1))}},Z6=function(d,p,x,S){x!==S?(d=Fa(o3.current),x=Fa(Ao.current),p.stateNode=ye(S,d,x,p),Ua(p)):p.stateNode=d.stateNode}}else lf=function(){},J6=function(){},Z6=function(){};function uf(d,p){if(!Qn)switch(d.tailMode){case"hidden":p=d.tail;for(var x=null;p!==null;)p.alternate!==null&&(x=p),p=p.sibling;x===null?d.tail=null:x.sibling=null;break;case"collapsed":x=d.tail;for(var S=null;x!==null;)x.alternate!==null&&(S=x),x=x.sibling;S===null?p||d.tail===null?d.tail=null:d.tail.sibling=null:S.sibling=null}}function Tr(d){var p=d.alternate!==null&&d.alternate.child===d.child,x=0,S=0;if(p)for(var w=d.child;w!==null;)x|=w.lanes|w.childLanes,S|=w.subtreeFlags&14680064,S|=w.flags&14680064,w.return=d,w=w.sibling;else for(w=d.child;w!==null;)x|=w.lanes|w.childLanes,S|=w.subtreeFlags,S|=w.flags,w.return=d,w=w.sibling;return d.subtreeFlags|=S,d.childLanes=x,p}function jX(d,p,x){var S=p.pendingProps;switch(XA(p),p.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Tr(p),null;case 1:return oi(p.type)&&wu(),Tr(p),null;case 3:return S=p.stateNode,a3(),qn(Ii),qn(Ui),nv(),S.pendingContext&&(S.context=S.pendingContext,S.pendingContext=null),(d===null||d.child===null)&&(J2(p)?Ua(p):d===null||d.memoizedState.isDehydrated&&!(p.flags&256)||(p.flags|=1024,ta!==null&&(bv(ta),ta=null))),lf(d,p),Tr(p),null;case 5:ev(p),x=Fa(o3.current);var w=p.type;if(d!==null&&p.stateNode!=null)J6(d,p,w,S,x),d.ref!==p.ref&&(p.flags|=512,p.flags|=2097152);else{if(!S){if(p.stateNode===null)throw Error(o(166));return Tr(p),null}if(d=Fa(Ao.current),J2(p)){if(!qe)throw Error(o(175));d=BA(p.stateNode,p.type,p.memoizedProps,x,d,p,!K2),p.updateQueue=d,d!==null&&Ua(p)}else{var P=k(w,S,x,d,p);af(P,p,!1,!1),p.stateNode=P,ce(P,w,S,x,d)&&Ua(p)}p.ref!==null&&(p.flags|=512,p.flags|=2097152)}return Tr(p),null;case 6:if(d&&p.stateNode!=null)Z6(d,p,d.memoizedProps,S);else{if(typeof S!="string"&&p.stateNode===null)throw Error(o(166));if(d=Fa(o3.current),x=Fa(Ao.current),J2(p)){if(!qe)throw Error(o(176));if(d=p.stateNode,S=p.memoizedProps,(x=V(d,S,p,!K2))&&(w=Fs,w!==null))switch(P=(w.mode&1)!==0,w.tag){case 3:Ct(w.stateNode.containerInfo,d,S,P);break;case 5:jt(w.type,w.memoizedProps,w.stateNode,d,S,P)}x&&Ua(p)}else p.stateNode=ye(S,d,x,p)}return Tr(p),null;case 13:if(qn($n),S=p.memoizedState,Qn&&Os!==null&&p.mode&1&&!(p.flags&128)){for(d=Os;d;)d=Ba(d);return r3(),p.flags|=98560,p}if(S!==null&&S.dehydrated!==null){if(S=J2(p),d===null){if(!S)throw Error(o(318));if(!qe)throw Error(o(344));if(d=p.memoizedState,d=d!==null?d.dehydrated:null,!d)throw Error(o(317));ie(d,p)}else r3(),!(p.flags&128)&&(p.memoizedState=null),p.flags|=4;return Tr(p),null}return ta!==null&&(bv(ta),ta=null),p.flags&128?(p.lanes=x,p):(S=S!==null,x=!1,d===null?J2(p):x=d.memoizedState!==null,S&&!x&&(p.child.flags|=8192,p.mode&1&&(d===null||$n.current&1?zi===0&&(zi=3):Bv())),p.updateQueue!==null&&(p.flags|=4),Tr(p),null);case 4:return a3(),lf(d,p),d===null&&Se(p.stateNode.containerInfo),Tr(p),null;case 10:return GA(p.type._context),Tr(p),null;case 17:return oi(p.type)&&wu(),Tr(p),null;case 19:if(qn($n),w=p.memoizedState,w===null)return Tr(p),null;if(S=(p.flags&128)!==0,P=w.rendering,P===null)if(S)uf(w,!1);else{if(zi!==0||d!==null&&d.flags&128)for(d=p.child;d!==null;){if(P=Q6(d),P!==null){for(p.flags|=128,uf(w,!1),d=P.updateQueue,d!==null&&(p.updateQueue=d,p.flags|=4),p.subtreeFlags=0,d=x,S=p.child;S!==null;)x=S,w=d,x.flags&=14680066,P=x.alternate,P===null?(x.childLanes=0,x.lanes=w,x.child=null,x.subtreeFlags=0,x.memoizedProps=null,x.memoizedState=null,x.updateQueue=null,x.dependencies=null,x.stateNode=null):(x.childLanes=P.childLanes,x.lanes=P.lanes,x.child=P.child,x.subtreeFlags=0,x.deletions=null,x.memoizedProps=P.memoizedProps,x.memoizedState=P.memoizedState,x.updateQueue=P.updateQueue,x.type=P.type,w=P.dependencies,x.dependencies=w===null?null:{lanes:w.lanes,firstContext:w.firstContext}),S=S.sibling;return wt($n,$n.current&1|2),p.child}d=d.sibling}w.tail!==null&&Zi()>wv&&(p.flags|=128,S=!0,uf(w,!1),p.lanes=4194304)}else{if(!S)if(d=Q6(P),d!==null){if(p.flags|=128,S=!0,d=d.updateQueue,d!==null&&(p.updateQueue=d,p.flags|=4),uf(w,!0),w.tail===null&&w.tailMode==="hidden"&&!P.alternate&&!Qn)return Tr(p),null}else 2*Zi()-w.renderingStartTime>wv&&x!==1073741824&&(p.flags|=128,S=!0,uf(w,!1),p.lanes=4194304);w.isBackwards?(P.sibling=p.child,p.child=P):(d=w.last,d!==null?d.sibling=P:p.child=P,w.last=P)}return w.tail!==null?(p=w.tail,w.rendering=p,w.tail=p.sibling,w.renderingStartTime=Zi(),p.sibling=null,d=$n.current,wt($n,S?d&1|2:d&1),p):(Tr(p),null);case 22:case 23:return Pv(),S=p.memoizedState!==null,d!==null&&d.memoizedState!==null!==S&&(p.flags|=8192),S&&p.mode&1?zs&1073741824&&(Tr(p),Be&&p.subtreeFlags&6&&(p.flags|=8192)):Tr(p),null;case 24:return null;case 25:return null}throw Error(o(156,p.tag))}var XX=a.ReactCurrentOwner,Us=!1;function $r(d,p,x,S){p.child=d===null?KI(p,null,x,S):s3(p,d.child,x,S)}function SM(d,p,x,S,w){x=x.render;var P=p.ref;return t3(p,w),S=rv(d,p,x,S,P,w),x=sv(),d!==null&&!Us?(p.updateQueue=d.updateQueue,p.flags&=-2053,d.lanes&=~w,Dl(d,p,w)):(Qn&&x&&jA(p),p.flags|=1,$r(d,p,S,w),p.child)}function TM(d,p,x,S,w){if(d===null){var P=x.type;return typeof P=="function"&&!Dv(P)&&P.defaultProps===void 0&&x.compare===null&&x.defaultProps===void 0?(p.tag=15,p.type=P,CM(d,p,P,S,w)):(d=qp(x.type,null,S,p,p.mode,w),d.ref=p.ref,d.return=p,p.child=d)}if(P=d.child,!(d.lanes&w)){var H=P.memoizedProps;if(x=x.compare,x=x!==null?x:L6,x(H,S)&&d.ref===p.ref)return Dl(d,p,w)}return p.flags|=1,d=Du(P,S),d.ref=p.ref,d.return=p,p.child=d}function CM(d,p,x,S,w){if(d!==null&&L6(d.memoizedProps,S)&&d.ref===p.ref)if(Us=!1,(d.lanes&w)!==0)d.flags&131072&&(Us=!0);else return p.lanes=d.lanes,Dl(d,p,w);return hv(d,p,x,S,w)}function wM(d,p,x){var S=p.pendingProps,w=S.children,P=d!==null?d.memoizedState:null;if(S.mode==="hidden")if(!(p.mode&1))p.memoizedState={baseLanes:0,cachePool:null},wt(u3,zs),zs|=x;else if(x&1073741824)p.memoizedState={baseLanes:0,cachePool:null},S=P!==null?P.baseLanes:x,wt(u3,zs),zs|=S;else return d=P!==null?P.baseLanes|x:x,p.lanes=p.childLanes=1073741824,p.memoizedState={baseLanes:d,cachePool:null},p.updateQueue=null,wt(u3,zs),zs|=d,null;else P!==null?(S=P.baseLanes|x,p.memoizedState=null):S=x,wt(u3,zs),zs|=S;return $r(d,p,w,x),p.child}function IM(d,p){var x=p.ref;(d===null&&x!==null||d!==null&&d.ref!==x)&&(p.flags|=512,p.flags|=2097152)}function hv(d,p,x,S,w){var P=oi(x)?Jo:Ui.current;return P=si(p,P),t3(p,w),x=rv(d,p,x,S,P,w),S=sv(),d!==null&&!Us?(p.updateQueue=d.updateQueue,p.flags&=-2053,d.lanes&=~w,Dl(d,p,w)):(Qn&&S&&jA(p),p.flags|=1,$r(d,p,x,w),p.child)}function MM(d,p,x,S,w){if(oi(x)){var P=!0;Z1(p)}else P=!1;if(t3(p,w),p.stateNode===null)d!==null&&(d.alternate=null,p.alternate=null,p.flags|=2),GI(p,x,S),$A(p,x,S,w),S=!0;else if(d===null){var H=p.stateNode,Z=p.memoizedProps;H.props=Z;var de=H.context,Pe=x.contextType;typeof Pe=="object"&&Pe!==null?Pe=po(Pe):(Pe=oi(x)?Jo:Ui.current,Pe=si(p,Pe));var Xe=x.getDerivedStateFromProps,Lt=typeof Xe=="function"||typeof H.getSnapshotBeforeUpdate=="function";Lt||typeof H.UNSAFE_componentWillReceiveProps!="function"&&typeof H.componentWillReceiveProps!="function"||(Z!==S||de!==Pe)&&QI(p,H,S,Pe),Iu=!1;var gt=p.memoizedState;H.state=gt,O6(p,S,H,w),de=p.memoizedState,Z!==S||gt!==de||Ii.current||Iu?(typeof Xe=="function"&&(WA(p,x,Xe,S),de=p.memoizedState),(Z=Iu||VI(p,x,Z,S,gt,de,Pe))?(Lt||typeof H.UNSAFE_componentWillMount!="function"&&typeof H.componentWillMount!="function"||(typeof H.componentWillMount=="function"&&H.componentWillMount(),typeof H.UNSAFE_componentWillMount=="function"&&H.UNSAFE_componentWillMount()),typeof H.componentDidMount=="function"&&(p.flags|=4194308)):(typeof H.componentDidMount=="function"&&(p.flags|=4194308),p.memoizedProps=S,p.memoizedState=de),H.props=S,H.state=de,H.context=Pe,S=Z):(typeof H.componentDidMount=="function"&&(p.flags|=4194308),S=!1)}else{H=p.stateNode,FI(d,p),Z=p.memoizedProps,Pe=p.type===p.elementType?Z:ea(p.type,Z),H.props=Pe,Lt=p.pendingProps,gt=H.context,de=x.contextType,typeof de=="object"&&de!==null?de=po(de):(de=oi(x)?Jo:Ui.current,de=si(p,de));var wn=x.getDerivedStateFromProps;(Xe=typeof wn=="function"||typeof H.getSnapshotBeforeUpdate=="function")||typeof H.UNSAFE_componentWillReceiveProps!="function"&&typeof H.componentWillReceiveProps!="function"||(Z!==Lt||gt!==de)&&QI(p,H,S,de),Iu=!1,gt=p.memoizedState,H.state=gt,O6(p,S,H,w);var ct=p.memoizedState;Z!==Lt||gt!==ct||Ii.current||Iu?(typeof wn=="function"&&(WA(p,x,wn,S),ct=p.memoizedState),(Pe=Iu||VI(p,x,Pe,S,gt,ct,de)||!1)?(Xe||typeof H.UNSAFE_componentWillUpdate!="function"&&typeof H.componentWillUpdate!="function"||(typeof H.componentWillUpdate=="function"&&H.componentWillUpdate(S,ct,de),typeof H.UNSAFE_componentWillUpdate=="function"&&H.UNSAFE_componentWillUpdate(S,ct,de)),typeof H.componentDidUpdate=="function"&&(p.flags|=4),typeof H.getSnapshotBeforeUpdate=="function"&&(p.flags|=1024)):(typeof H.componentDidUpdate!="function"||Z===d.memoizedProps&>===d.memoizedState||(p.flags|=4),typeof H.getSnapshotBeforeUpdate!="function"||Z===d.memoizedProps&>===d.memoizedState||(p.flags|=1024),p.memoizedProps=S,p.memoizedState=ct),H.props=S,H.state=ct,H.context=de,S=Pe):(typeof H.componentDidUpdate!="function"||Z===d.memoizedProps&>===d.memoizedState||(p.flags|=4),typeof H.getSnapshotBeforeUpdate!="function"||Z===d.memoizedProps&>===d.memoizedState||(p.flags|=1024),S=!1)}return fv(d,p,x,S,P,w)}function fv(d,p,x,S,w,P){IM(d,p);var H=(p.flags&128)!==0;if(!S&&!H)return w&&j2(p,x,!1),Dl(d,p,P);S=p.stateNode,XX.current=p;var Z=H&&typeof x.getDerivedStateFromError!="function"?null:S.render();return p.flags|=1,d!==null&&H?(p.child=s3(p,d.child,null,P),p.child=s3(p,null,Z,P)):$r(d,p,Z,P),p.memoizedState=S.state,w&&j2(p,x,!0),p.child}function RM(d){var p=d.stateNode;p.pendingContext?xr(d,p.pendingContext,p.pendingContext!==p.context):p.context&&xr(d,p.context,!1),ZA(d,p.containerInfo)}function bM(d,p,x,S,w){return r3(),JA(w),p.flags|=256,$r(d,p,x,S),p.child}var ep={dehydrated:null,treeContext:null,retryLane:0};function tp(d){return{baseLanes:d,cachePool:null}}function PM(d,p,x){var S=p.pendingProps,w=$n.current,P=!1,H=(p.flags&128)!==0,Z;if((Z=H)||(Z=d!==null&&d.memoizedState===null?!1:(w&2)!==0),Z?(P=!0,p.flags&=-129):(d===null||d.memoizedState!==null)&&(w|=1),wt($n,w&1),d===null)return KA(p),d=p.memoizedState,d!==null&&(d=d.dehydrated,d!==null)?(p.mode&1?Cu(d)?p.lanes=8:p.lanes=1073741824:p.lanes=1,null):(w=S.children,d=S.fallback,P?(S=p.mode,P=p.child,w={mode:"hidden",children:w},!(S&1)&&P!==null?(P.childLanes=0,P.pendingProps=w):P=_p(w,S,0,null),d=vh(d,S,x,null),P.return=p,d.return=p,P.sibling=d,p.child=P,p.child.memoizedState=tp(x),p.memoizedState=ep,d):dv(p,w));if(w=d.memoizedState,w!==null){if(Z=w.dehydrated,Z!==null){if(H)return p.flags&256?(p.flags&=-257,np(d,p,x,Error(o(422)))):p.memoizedState!==null?(p.child=d.child,p.flags|=128,null):(P=S.fallback,w=p.mode,S=_p({mode:"visible",children:S.children},w,0,null),P=vh(P,w,x,null),P.flags|=2,S.return=p,P.return=p,S.sibling=P,p.child=S,p.mode&1&&s3(p,d.child,null,x),p.child.memoizedState=tp(x),p.memoizedState=ep,P);if(!(p.mode&1))p=np(d,p,x,null);else if(Cu(Z))p=np(d,p,x,Error(o(419)));else if(S=(x&d.childLanes)!==0,Us||S){if(S=Mi,S!==null){switch(x&-x){case 4:P=2;break;case 16:P=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:P=32;break;case 536870912:P=268435456;break;default:P=0}S=P&(S.suspendedLanes|x)?0:P,S!==0&&S!==w.retryLane&&(w.retryLane=S,yo(d,S,-1))}Bv(),p=np(d,p,x,Error(o(421)))}else w6(Z)?(p.flags|=128,p.child=d.child,p=lY.bind(null,d),I6(Z,p),p=null):(x=w.treeContext,qe&&(Os=PA(Z),Fs=p,Qn=!0,ta=null,K2=!1,x!==null&&(mo[go++]=bl,mo[go++]=Pl,mo[go++]=ch,bl=x.id,Pl=x.overflow,ch=p)),p=dv(p,p.pendingProps.children),p.flags|=4096);return p}return P?(S=DM(d,p,S.children,S.fallback,x),P=p.child,w=d.child.memoizedState,P.memoizedState=w===null?tp(x):{baseLanes:w.baseLanes|x,cachePool:null},P.childLanes=d.childLanes&~x,p.memoizedState=ep,S):(x=BM(d,p,S.children,x),p.memoizedState=null,x)}return P?(S=DM(d,p,S.children,S.fallback,x),P=p.child,w=d.child.memoizedState,P.memoizedState=w===null?tp(x):{baseLanes:w.baseLanes|x,cachePool:null},P.childLanes=d.childLanes&~x,p.memoizedState=ep,S):(x=BM(d,p,S.children,x),p.memoizedState=null,x)}function dv(d,p){return p=_p({mode:"visible",children:p},d.mode,0,null),p.return=d,d.child=p}function BM(d,p,x,S){var w=d.child;return d=w.sibling,x=Du(w,{mode:"visible",children:x}),!(p.mode&1)&&(x.lanes=S),x.return=p,x.sibling=null,d!==null&&(S=p.deletions,S===null?(p.deletions=[d],p.flags|=16):S.push(d)),p.child=x}function DM(d,p,x,S,w){var P=p.mode;d=d.child;var H=d.sibling,Z={mode:"hidden",children:x};return!(P&1)&&p.child!==d?(x=p.child,x.childLanes=0,x.pendingProps=Z,p.deletions=null):(x=Du(d,Z),x.subtreeFlags=d.subtreeFlags&14680064),H!==null?S=Du(H,S):(S=vh(S,P,w,null),S.flags|=2),S.return=p,x.return=p,x.sibling=S,p.child=x,S}function np(d,p,x,S){return S!==null&&JA(S),s3(p,d.child,null,x),d=dv(p,p.pendingProps.children),d.flags|=2,p.memoizedState=null,d}function LM(d,p,x){d.lanes|=p;var S=d.alternate;S!==null&&(S.lanes|=p),QA(d.return,p,x)}function pv(d,p,x,S,w){var P=d.memoizedState;P===null?d.memoizedState={isBackwards:p,rendering:null,renderingStartTime:0,last:S,tail:x,tailMode:w}:(P.isBackwards=p,P.rendering=null,P.renderingStartTime=0,P.last=S,P.tail=x,P.tailMode=w)}function NM(d,p,x){var S=p.pendingProps,w=S.revealOrder,P=S.tail;if($r(d,p,S.children,x),S=$n.current,S&2)S=S&1|2,p.flags|=128;else{if(d!==null&&d.flags&128)e:for(d=p.child;d!==null;){if(d.tag===13)d.memoizedState!==null&&LM(d,x,p);else if(d.tag===19)LM(d,x,p);else if(d.child!==null){d.child.return=d,d=d.child;continue}if(d===p)break e;for(;d.sibling===null;){if(d.return===null||d.return===p)break e;d=d.return}d.sibling.return=d.return,d=d.sibling}S&=1}if(wt($n,S),!(p.mode&1))p.memoizedState=null;else switch(w){case"forwards":for(x=p.child,w=null;x!==null;)d=x.alternate,d!==null&&Q6(d)===null&&(w=x),x=x.sibling;x=w,x===null?(w=p.child,p.child=null):(w=x.sibling,x.sibling=null),pv(p,!1,w,x,P);break;case"backwards":for(x=null,w=p.child,p.child=null;w!==null;){if(d=w.alternate,d!==null&&Q6(d)===null){p.child=w;break}d=w.sibling,w.sibling=x,x=w,w=d}pv(p,!0,x,null,P);break;case"together":pv(p,!1,null,null,void 0);break;default:p.memoizedState=null}return p.child}function Dl(d,p,x){if(d!==null&&(p.dependencies=d.dependencies),c3|=p.lanes,!(x&p.childLanes))return null;if(d!==null&&p.child!==d.child)throw Error(o(153));if(p.child!==null){for(d=p.child,x=Du(d,d.pendingProps),p.child=x,x.return=p;d.sibling!==null;)d=d.sibling,x=x.sibling=Du(d,d.pendingProps),x.return=p;x.sibling=null}return p.child}function YX(d,p,x){switch(p.tag){case 3:RM(p),r3();break;case 5:JI(p);break;case 1:oi(p.type)&&Z1(p);break;case 4:ZA(p,p.stateNode.containerInfo);break;case 10:kI(p,p.type._context,p.memoizedProps.value);break;case 13:var S=p.memoizedState;if(S!==null)return S.dehydrated!==null?(wt($n,$n.current&1),p.flags|=128,null):x&p.child.childLanes?PM(d,p,x):(wt($n,$n.current&1),d=Dl(d,p,x),d!==null?d.sibling:null);wt($n,$n.current&1);break;case 19:if(S=(x&p.childLanes)!==0,d.flags&128){if(S)return NM(d,p,x);p.flags|=128}var w=p.memoizedState;if(w!==null&&(w.rendering=null,w.tail=null,w.lastEffect=null),wt($n,$n.current),S)break;return null;case 22:case 23:return p.lanes=0,wM(d,p,x)}return Dl(d,p,x)}function KX(d,p){switch(XA(p),p.tag){case 1:return oi(p.type)&&wu(),d=p.flags,d&65536?(p.flags=d&-65537|128,p):null;case 3:return a3(),qn(Ii),qn(Ui),nv(),d=p.flags,d&65536&&!(d&128)?(p.flags=d&-65537|128,p):null;case 5:return ev(p),null;case 13:if(qn($n),d=p.memoizedState,d!==null&&d.dehydrated!==null){if(p.alternate===null)throw Error(o(340));r3()}return d=p.flags,d&65536?(p.flags=d&-65537|128,p):null;case 19:return qn($n),null;case 4:return a3(),null;case 10:return GA(p.type._context),null;case 22:case 23:return Pv(),null;case 24:return null;default:return null}}var ip=!1,dh=!1,JX=typeof WeakSet=="function"?WeakSet:Set,Ue=null;function rp(d,p){var x=d.ref;if(x!==null)if(typeof x=="function")try{x(null)}catch(S){ps(d,p,S)}else x.current=null}function mv(d,p,x){try{x()}catch(S){ps(d,p,S)}}var kM=!1;function ZX(d,p){for(U(d.containerInfo),Ue=p;Ue!==null;)if(d=Ue,p=d.child,(d.subtreeFlags&1028)!==0&&p!==null)p.return=d,Ue=p;else for(;Ue!==null;){d=Ue;try{var x=d.alternate;if(d.flags&1024)switch(d.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var S=x.memoizedProps,w=x.memoizedState,P=d.stateNode,H=P.getSnapshotBeforeUpdate(d.elementType===d.type?S:ea(d.type,S),w);P.__reactInternalSnapshotBeforeUpdate=H}break;case 3:Be&&be(d.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(o(163))}}catch(Z){ps(d,d.return,Z)}if(p=d.sibling,p!==null){p.return=d.return,Ue=p;break}Ue=d.return}return x=kM,kM=!1,x}function ph(d,p,x){var S=p.updateQueue;if(S=S!==null?S.lastEffect:null,S!==null){var w=S=S.next;do{if((w.tag&d)===d){var P=w.destroy;w.destroy=void 0,P!==void 0&&mv(p,x,P)}w=w.next}while(w!==S)}}function cf(d,p){if(p=p.updateQueue,p=p!==null?p.lastEffect:null,p!==null){var x=p=p.next;do{if((x.tag&d)===d){var S=x.create;x.destroy=S()}x=x.next}while(x!==p)}}function gv(d){var p=d.ref;if(p!==null){var x=d.stateNode;switch(d.tag){case 5:d=K(x);break;default:d=x}typeof p=="function"?p(d):p.current=d}}function FM(d,p,x){if(Da&&typeof Da.onCommitFiberUnmount=="function")try{Da.onCommitFiberUnmount(B6,p)}catch{}switch(p.tag){case 0:case 11:case 14:case 15:if(d=p.updateQueue,d!==null&&(d=d.lastEffect,d!==null)){var S=d=d.next;do{var w=S,P=w.destroy;w=w.tag,P!==void 0&&(w&2||w&4)&&mv(p,x,P),S=S.next}while(S!==d)}break;case 1:if(rp(p,x),d=p.stateNode,typeof d.componentWillUnmount=="function")try{d.props=p.memoizedProps,d.state=p.memoizedState,d.componentWillUnmount()}catch(H){ps(p,x,H)}break;case 5:rp(p,x);break;case 4:Be?QM(d,p,x):X&&X&&(p=p.stateNode.containerInfo,x=tn(p),Ko(p,x))}}function OM(d,p,x){for(var S=p;;)if(FM(d,S,x),S.child===null||Be&&S.tag===4){if(S===p)break;for(;S.sibling===null;){if(S.return===null||S.return===p)return;S=S.return}S.sibling.return=S.return,S=S.sibling}else S.child.return=S,S=S.child}function UM(d){var p=d.alternate;p!==null&&(d.alternate=null,UM(p)),d.child=null,d.deletions=null,d.sibling=null,d.tag===5&&(p=d.stateNode,p!==null&&it(p)),d.stateNode=null,d.return=null,d.dependencies=null,d.memoizedProps=null,d.memoizedState=null,d.pendingProps=null,d.stateNode=null,d.updateQueue=null}function zM(d){return d.tag===5||d.tag===3||d.tag===4}function VM(d){e:for(;;){for(;d.sibling===null;){if(d.return===null||zM(d.return))return null;d=d.return}for(d.sibling.return=d.return,d=d.sibling;d.tag!==5&&d.tag!==6&&d.tag!==18;){if(d.flags&2||d.child===null||d.tag===4)continue e;d.child.return=d,d=d.child}if(!(d.flags&2))return d.stateNode}}function GM(d){if(Be){e:{for(var p=d.return;p!==null;){if(zM(p))break e;p=p.return}throw Error(o(160))}var x=p;switch(x.tag){case 5:p=x.stateNode,x.flags&32&&(Ft(p),x.flags&=-33),x=VM(d),vv(d,x,p);break;case 3:case 4:p=x.stateNode.containerInfo,x=VM(d),Av(d,x,p);break;default:throw Error(o(161))}}}function Av(d,p,x){var S=d.tag;if(S===5||S===6)d=d.stateNode,p?ft(x,d,p):Ye(x,d);else if(S!==4&&(d=d.child,d!==null))for(Av(d,p,x),d=d.sibling;d!==null;)Av(d,p,x),d=d.sibling}function vv(d,p,x){var S=d.tag;if(S===5||S===6)d=d.stateNode,p?ut(x,d,p):we(x,d);else if(S!==4&&(d=d.child,d!==null))for(vv(d,p,x),d=d.sibling;d!==null;)vv(d,p,x),d=d.sibling}function QM(d,p,x){for(var S=p,w=!1,P,H;;){if(!w){w=S.return;e:for(;;){if(w===null)throw Error(o(160));switch(P=w.stateNode,w.tag){case 5:H=!1;break e;case 3:P=P.containerInfo,H=!0;break e;case 4:P=P.containerInfo,H=!0;break e}w=w.return}w=!0}if(S.tag===5||S.tag===6)OM(d,S,x),H?Je(P,S.stateNode):Ke(P,S.stateNode);else if(S.tag===18)H?mt(P,S.stateNode):je(P,S.stateNode);else if(S.tag===4){if(S.child!==null){P=S.stateNode.containerInfo,H=!0,S.child.return=S,S=S.child;continue}}else if(FM(d,S,x),S.child!==null){S.child.return=S,S=S.child;continue}if(S===p)break;for(;S.sibling===null;){if(S.return===null||S.return===p)return;S=S.return,S.tag===4&&(w=!1)}S.sibling.return=S.return,S=S.sibling}}function yv(d,p){if(Be){switch(p.tag){case 0:case 11:case 14:case 15:ph(3,p,p.return),cf(3,p),ph(5,p,p.return);return;case 1:return;case 5:var x=p.stateNode;if(x!=null){var S=p.memoizedProps;d=d!==null?d.memoizedProps:S;var w=p.type,P=p.updateQueue;p.updateQueue=null,P!==null&&ot(x,P,w,d,S,p)}return;case 6:if(p.stateNode===null)throw Error(o(162));x=p.memoizedProps,Ie(p.stateNode,d!==null?d.memoizedProps:x,x);return;case 3:qe&&d!==null&&d.memoizedState.isDehydrated&&ne(p.stateNode.containerInfo);return;case 12:return;case 13:sp(p);return;case 19:sp(p);return;case 17:return}throw Error(o(163))}switch(p.tag){case 0:case 11:case 14:case 15:ph(3,p,p.return),cf(3,p),ph(5,p,p.return);return;case 12:return;case 13:sp(p);return;case 19:sp(p);return;case 3:qe&&d!==null&&d.memoizedState.isDehydrated&&ne(p.stateNode.containerInfo);break;case 22:case 23:return}e:if(X){switch(p.tag){case 1:case 5:case 6:break e;case 3:case 4:p=p.stateNode,Ko(p.containerInfo,p.pendingChildren);break e}throw Error(o(163))}}function sp(d){var p=d.updateQueue;if(p!==null){d.updateQueue=null;var x=d.stateNode;x===null&&(x=d.stateNode=new JX),p.forEach(function(S){var w=uY.bind(null,d,S);x.has(S)||(x.add(S),S.then(w,w))})}}function eY(d,p){for(Ue=p;Ue!==null;){p=Ue;var x=p.deletions;if(x!==null)for(var S=0;S<x.length;S++){var w=x[S];try{var P=d;Be?QM(P,w,p):OM(P,w,p);var H=w.alternate;H!==null&&(H.return=null),w.return=null}catch(at){ps(w,p,at)}}if(x=p.child,p.subtreeFlags&12854&&x!==null)x.return=p,Ue=x;else for(;Ue!==null;){p=Ue;try{var Z=p.flags;if(Z&32&&Be&&Ft(p.stateNode),Z&512){var de=p.alternate;if(de!==null){var Pe=de.ref;Pe!==null&&(typeof Pe=="function"?Pe(null):Pe.current=null)}}if(Z&8192)switch(p.tag){case 13:if(p.memoizedState!==null){var Xe=p.alternate;(Xe===null||Xe.memoizedState===null)&&(Cv=Zi())}break;case 22:var Lt=p.memoizedState!==null,gt=p.alternate,wn=gt!==null&>.memoizedState!==null;if(x=p,Be){e:if(S=x,w=Lt,P=null,Be)for(var ct=S;;){if(ct.tag===5){if(P===null){P=ct;var Cr=ct.stateNode;w?rn(Cr):De(ct.stateNode,ct.memoizedProps)}}else if(ct.tag===6){if(P===null){var _o=ct.stateNode;w?J(_o):ue(_o,ct.memoizedProps)}}else if((ct.tag!==22&&ct.tag!==23||ct.memoizedState===null||ct===S)&&ct.child!==null){ct.child.return=ct,ct=ct.child;continue}if(ct===S)break;for(;ct.sibling===null;){if(ct.return===null||ct.return===S)break e;P===ct&&(P=null),ct=ct.return}P===ct&&(P=null),ct.sibling.return=ct.return,ct=ct.sibling}}if(Lt&&!wn&&x.mode&1){Ue=x;for(var re=x.child;re!==null;){for(x=Ue=re;Ue!==null;){S=Ue;var te=S.child;switch(S.tag){case 0:case 11:case 14:case 15:ph(4,S,S.return);break;case 1:rp(S,S.return);var he=S.stateNode;if(typeof he.componentWillUnmount=="function"){var Ve=S.return;try{he.props=S.memoizedProps,he.state=S.memoizedState,he.componentWillUnmount()}catch(at){ps(S,Ve,at)}}break;case 5:rp(S,S.return);break;case 22:if(S.memoizedState!==null){$M(x);continue}}te!==null?(te.return=S,Ue=te):$M(x)}re=re.sibling}}}switch(Z&4102){case 2:GM(p),p.flags&=-3;break;case 6:GM(p),p.flags&=-3,yv(p.alternate,p);break;case 4096:p.flags&=-4097;break;case 4100:p.flags&=-4097,yv(p.alternate,p);break;case 4:yv(p.alternate,p)}}catch(at){ps(p,p.return,at)}if(x=p.sibling,x!==null){x.return=p.return,Ue=x;break}Ue=p.return}}}function tY(d,p,x){Ue=d,HM(d)}function HM(d,p,x){for(var S=(d.mode&1)!==0;Ue!==null;){var w=Ue,P=w.child;if(w.tag===22&&S){var H=w.memoizedState!==null||ip;if(!H){var Z=w.alternate,de=Z!==null&&Z.memoizedState!==null||dh;Z=ip;var Pe=dh;if(ip=H,(dh=de)&&!Pe)for(Ue=w;Ue!==null;)H=Ue,de=H.child,H.tag===22&&H.memoizedState!==null?jM(w):de!==null?(de.return=H,Ue=de):jM(w);for(;P!==null;)Ue=P,HM(P),P=P.sibling;Ue=w,ip=Z,dh=Pe}WM(d)}else w.subtreeFlags&8772&&P!==null?(P.return=w,Ue=P):WM(d)}}function WM(d){for(;Ue!==null;){var p=Ue;if(p.flags&8772){var x=p.alternate;try{if(p.flags&8772)switch(p.tag){case 0:case 11:case 15:dh||cf(5,p);break;case 1:var S=p.stateNode;if(p.flags&4&&!dh)if(x===null)S.componentDidMount();else{var w=p.elementType===p.type?x.memoizedProps:ea(p.type,x.memoizedProps);S.componentDidUpdate(w,x.memoizedState,S.__reactInternalSnapshotBeforeUpdate)}var P=p.updateQueue;P!==null&&UI(p,P,S);break;case 3:var H=p.updateQueue;if(H!==null){if(x=null,p.child!==null)switch(p.child.tag){case 5:x=K(p.child.stateNode);break;case 1:x=p.child.stateNode}UI(p,H,x)}break;case 5:var Z=p.stateNode;x===null&&p.flags&4&&le(Z,p.type,p.memoizedProps,p);break;case 6:break;case 4:break;case 12:break;case 13:if(qe&&p.memoizedState===null){var de=p.alternate;if(de!==null){var Pe=de.memoizedState;if(Pe!==null){var Xe=Pe.dehydrated;Xe!==null&&pe(Xe)}}}break;case 19:case 17:case 21:case 22:case 23:break;default:throw Error(o(163))}dh||p.flags&512&&gv(p)}catch(Lt){ps(p,p.return,Lt)}}if(p===d){Ue=null;break}if(x=p.sibling,x!==null){x.return=p.return,Ue=x;break}Ue=p.return}}function $M(d){for(;Ue!==null;){var p=Ue;if(p===d){Ue=null;break}var x=p.sibling;if(x!==null){x.return=p.return,Ue=x;break}Ue=p.return}}function jM(d){for(;Ue!==null;){var p=Ue;try{switch(p.tag){case 0:case 11:case 15:var x=p.return;try{cf(4,p)}catch(de){ps(p,x,de)}break;case 1:var S=p.stateNode;if(typeof S.componentDidMount=="function"){var w=p.return;try{S.componentDidMount()}catch(de){ps(p,w,de)}}var P=p.return;try{gv(p)}catch(de){ps(p,P,de)}break;case 5:var H=p.return;try{gv(p)}catch(de){ps(p,H,de)}}}catch(de){ps(p,p.return,de)}if(p===d){Ue=null;break}var Z=p.sibling;if(Z!==null){Z.return=p.return,Ue=Z;break}Ue=p.return}}var op=0,ap=1,lp=2,up=3,cp=4;if(typeof Symbol=="function"&&Symbol.for){var hf=Symbol.for;op=hf("selector.component"),ap=hf("selector.has_pseudo_class"),lp=hf("selector.role"),up=hf("selector.test_id"),cp=hf("selector.text")}function qv(d){var p=ve(d);if(p!=null){if(typeof p.memoizedProps["data-testname"]!="string")throw Error(o(364));return p}if(d=Vt(d),d===null)throw Error(o(362));return d.stateNode.current}function _v(d,p){switch(p.$$typeof){case op:if(d.type===p.value)return!0;break;case ap:e:{p=p.value,d=[d,0];for(var x=0;x<d.length;){var S=d[x++],w=d[x++],P=p[w];if(S.tag!==5||!N(S)){for(;P!=null&&_v(S,P);)w++,P=p[w];if(w===p.length){p=!0;break e}else for(S=S.child;S!==null;)d.push(S,w),S=S.sibling}}p=!1}return p;case lp:if(d.tag===5&&se(d.stateNode,p.value))return!0;break;case cp:if((d.tag===5||d.tag===6)&&(d=j(d),d!==null&&0<=d.indexOf(p.value)))return!0;break;case up:if(d.tag===5&&(d=d.memoizedProps["data-testname"],typeof d=="string"&&d.toLowerCase()===p.value.toLowerCase()))return!0;break;default:throw Error(o(365))}return!1}function xv(d){switch(d.$$typeof){case op:return"<"+(I(d.value)||"Unknown")+">";case ap:return":has("+(xv(d)||"")+")";case lp:return'[role="'+d.value+'"]';case cp:return'"'+d.value+'"';case up:return'[data-testname="'+d.value+'"]';default:throw Error(o(365))}}function XM(d,p){var x=[];d=[d,0];for(var S=0;S<d.length;){var w=d[S++],P=d[S++],H=p[P];if(w.tag!==5||!N(w)){for(;H!=null&&_v(w,H);)P++,H=p[P];if(P===p.length)x.push(w);else for(w=w.child;w!==null;)d.push(w,P),w=w.sibling}}return x}function Ev(d,p){if(!pt)throw Error(o(363));d=qv(d),d=XM(d,p),p=[],d=Array.from(d);for(var x=0;x<d.length;){var S=d[x++];if(S.tag===5)N(S)||p.push(S.stateNode);else for(S=S.child;S!==null;)d.push(S),S=S.sibling}return p}var nY=Math.ceil,hp=a.ReactCurrentDispatcher,Sv=a.ReactCurrentOwner,xi=a.ReactCurrentBatchConfig,Xt=0,Mi=null,Ri=null,hr=0,zs=0,u3=Rt(0),zi=0,ff=null,c3=0,fp=0,Tv=0,df=null,fs=null,Cv=0,wv=1/0;function h3(){wv=Zi()+500}var dp=!1,Iv=null,Ru=null,pp=!1,bu=null,mp=0,pf=0,Mv=null,gp=-1,Ap=0;function jr(){return Xt&6?Zi():gp!==-1?gp:gp=Zi()}function Pu(d){return d.mode&1?Xt&2&&hr!==0?hr&-hr:FX.transition!==null?(Ap===0&&(d=R6,R6<<=1,!(R6&4194240)&&(R6=64),Ap=d),Ap):(d=cn,d!==0?d:_e()):1}function yo(d,p,x){if(50<pf)throw pf=0,Mv=null,Error(o(185));var S=vp(d,p);return S===null?null:(Y2(S,p,x),(!(Xt&2)||S!==Mi)&&(S===Mi&&(!(Xt&2)&&(fp|=p),zi===4&&Bu(S,hr)),ds(S,x),p===1&&Xt===0&&!(d.mode&1)&&(h3(),D6&&Na())),S)}function vp(d,p){d.lanes|=p;var x=d.alternate;for(x!==null&&(x.lanes|=p),x=d,d=d.return;d!==null;)d.childLanes|=p,x=d.alternate,x!==null&&(x.childLanes|=p),x=d,d=d.return;return x.tag===3?x.stateNode:null}function ds(d,p){var x=d.callbackNode;MX(d,p);var S=P6(d,d===Mi?hr:0);if(S===0)x!==null&&LI(x),d.callbackNode=null,d.callbackPriority=0;else if(p=S&-S,d.callbackPriority!==p){if(x!=null&&LI(x),p===1)d.tag===0?kX(KM.bind(null,d)):NI(KM.bind(null,d)),Ge?He(function(){Xt===0&&Na()}):kA(FA,Na),x=null;else{switch(DI(S)){case 1:x=FA;break;case 4:x=BX;break;case 16:x=OA;break;case 536870912:x=DX;break;default:x=OA}x=oR(x,YM.bind(null,d))}d.callbackPriority=p,d.callbackNode=x}}function YM(d,p){if(gp=-1,Ap=0,Xt&6)throw Error(o(327));var x=d.callbackNode;if(Ah()&&d.callbackNode!==x)return null;var S=P6(d,d===Mi?hr:0);if(S===0)return null;if(S&30||S&d.expiredLanes||p)p=yp(d,S);else{p=S;var w=Xt;Xt|=2;var P=eR();(Mi!==d||hr!==p)&&(h3(),mh(d,p));do try{sY();break}catch(Z){ZM(d,Z)}while(1);VA(),hp.current=P,Xt=w,Ri!==null?p=0:(Mi=null,hr=0,p=zi)}if(p!==0){if(p===2&&(w=DA(d),w!==0&&(S=w,p=Rv(d,w))),p===1)throw x=ff,mh(d,0),Bu(d,S),ds(d,Zi()),x;if(p===6)Bu(d,S);else{if(w=d.current.alternate,!(S&30)&&!iY(w)&&(p=yp(d,S),p===2&&(P=DA(d),P!==0&&(S=P,p=Rv(d,P))),p===1))throw x=ff,mh(d,0),Bu(d,S),ds(d,Zi()),x;switch(d.finishedWork=w,d.finishedLanes=S,p){case 0:case 1:throw Error(o(345));case 2:gh(d,fs);break;case 3:if(Bu(d,S),(S&130023424)===S&&(p=Cv+500-Zi(),10<p)){if(P6(d,0)!==0)break;if(w=d.suspendedLanes,(w&S)!==S){jr(),d.pingedLanes|=d.suspendedLanes&w;break}d.timeoutHandle=xe(gh.bind(null,d,fs),p);break}gh(d,fs);break;case 4:if(Bu(d,S),(S&4194240)===S)break;for(p=d.eventTimes,w=-1;0<S;){var H=31-Zo(S);P=1<<H,H=p[H],H>w&&(w=H),S&=~P}if(S=w,S=Zi()-S,S=(120>S?120:480>S?480:1080>S?1080:1920>S?1920:3e3>S?3e3:4320>S?4320:1960*nY(S/1960))-S,10<S){d.timeoutHandle=xe(gh.bind(null,d,fs),S);break}gh(d,fs);break;case 5:gh(d,fs);break;default:throw Error(o(329))}}}return ds(d,Zi()),d.callbackNode===x?YM.bind(null,d):null}function Rv(d,p){var x=df;return d.current.memoizedState.isDehydrated&&(mh(d,p).flags|=256),d=yp(d,p),d!==2&&(p=fs,fs=x,p!==null&&bv(p)),d}function bv(d){fs===null?fs=d:fs.push.apply(fs,d)}function iY(d){for(var p=d;;){if(p.flags&16384){var x=p.updateQueue;if(x!==null&&(x=x.stores,x!==null))for(var S=0;S<x.length;S++){var w=x[S],P=w.getSnapshot;w=w.value;try{if(!La(P(),w))return!1}catch{return!1}}}if(x=p.child,p.subtreeFlags&16384&&x!==null)x.return=p,p=x;else{if(p===d)break;for(;p.sibling===null;){if(p.return===null||p.return===d)return!0;p=p.return}p.sibling.return=p.return,p=p.sibling}}return!0}function Bu(d,p){for(p&=~Tv,p&=~fp,d.suspendedLanes|=p,d.pingedLanes&=~p,d=d.expirationTimes;0<p;){var x=31-Zo(p),S=1<<x;d[x]=-1,p&=~S}}function KM(d){if(Xt&6)throw Error(o(327));Ah();var p=P6(d,0);if(!(p&1))return ds(d,Zi()),null;var x=yp(d,p);if(d.tag!==0&&x===2){var S=DA(d);S!==0&&(p=S,x=Rv(d,S))}if(x===1)throw x=ff,mh(d,0),Bu(d,p),ds(d,Zi()),x;if(x===6)throw Error(o(345));return d.finishedWork=d.current.alternate,d.finishedLanes=p,gh(d,fs),ds(d,Zi()),null}function JM(d){bu!==null&&bu.tag===0&&!(Xt&6)&&Ah();var p=Xt;Xt|=1;var x=xi.transition,S=cn;try{if(xi.transition=null,cn=1,d)return d()}finally{cn=S,xi.transition=x,Xt=p,!(Xt&6)&&Na()}}function Pv(){zs=u3.current,qn(u3)}function mh(d,p){d.finishedWork=null,d.finishedLanes=0;var x=d.timeoutHandle;if(x!==$e&&(d.timeoutHandle=$e,Le(x)),Ri!==null)for(x=Ri.return;x!==null;){var S=x;switch(XA(S),S.tag){case 1:S=S.type.childContextTypes,S!=null&&wu();break;case 3:a3(),qn(Ii),qn(Ui),nv();break;case 5:ev(S);break;case 4:a3();break;case 13:qn($n);break;case 19:qn($n);break;case 10:GA(S.type._context);break;case 22:case 23:Pv()}x=x.return}if(Mi=d,Ri=d=Du(d.current,null),hr=zs=p,zi=0,ff=null,Tv=fp=c3=0,fs=df=null,ka!==null){for(p=0;p<ka.length;p++)if(x=ka[p],S=x.interleaved,S!==null){x.interleaved=null;var w=S.next,P=x.pending;if(P!==null){var H=P.next;P.next=w,S.next=H}x.pending=S}ka=null}return d}function ZM(d,p){do{var x=Ri;try{if(VA(),H6.current=K6,W6){for(var S=ai.memoizedState;S!==null;){var w=S.queue;w!==null&&(w.pending=null),S=S.next}W6=!1}if(l3=0,er=Er=ai=null,nf=!1,rf=0,Sv.current=null,x===null||x.return===null){zi=1,ff=p,Ri=null;break}e:{var P=d,H=x.return,Z=x,de=p;if(p=hr,Z.flags|=32768,de!==null&&typeof de=="object"&&typeof de.then=="function"){var Pe=de,Xe=Z,Lt=Xe.tag;if(!(Xe.mode&1)&&(Lt===0||Lt===11||Lt===15)){var gt=Xe.alternate;gt?(Xe.updateQueue=gt.updateQueue,Xe.memoizedState=gt.memoizedState,Xe.lanes=gt.lanes):(Xe.updateQueue=null,Xe.memoizedState=null)}var wn=qM(H);if(wn!==null){wn.flags&=-257,_M(wn,H,Z,P,p),wn.mode&1&&yM(P,Pe,p),p=wn,de=Pe;var ct=p.updateQueue;if(ct===null){var Cr=new Set;Cr.add(de),p.updateQueue=Cr}else ct.add(de);break e}else{if(!(p&1)){yM(P,Pe,p),Bv();break e}de=Error(o(426))}}else if(Qn&&Z.mode&1){var _o=qM(H);if(_o!==null){!(_o.flags&65536)&&(_o.flags|=256),_M(_o,H,Z,P,p),JA(de);break e}}P=de,zi!==4&&(zi=2),df===null?df=[P]:df.push(P),de=uv(de,Z),Z=H;do{switch(Z.tag){case 3:Z.flags|=65536,p&=-p,Z.lanes|=p;var re=AM(Z,de,p);OI(Z,re);break e;case 1:P=de;var te=Z.type,he=Z.stateNode;if(!(Z.flags&128)&&(typeof te.getDerivedStateFromError=="function"||he!==null&&typeof he.componentDidCatch=="function"&&(Ru===null||!Ru.has(he)))){Z.flags|=65536,p&=-p,Z.lanes|=p;var Ve=vM(Z,P,p);OI(Z,Ve);break e}}Z=Z.return}while(Z!==null)}nR(x)}catch(at){p=at,Ri===x&&x!==null&&(Ri=x=x.return);continue}break}while(1)}function eR(){var d=hp.current;return hp.current=K6,d===null?K6:d}function Bv(){(zi===0||zi===3||zi===2)&&(zi=4),Mi===null||!(c3&268435455)&&!(fp&268435455)||Bu(Mi,hr)}function yp(d,p){var x=Xt;Xt|=2;var S=eR();Mi===d&&hr===p||mh(d,p);do try{rY();break}catch(w){ZM(d,w)}while(1);if(VA(),Xt=x,hp.current=S,Ri!==null)throw Error(o(261));return Mi=null,hr=0,zi}function rY(){for(;Ri!==null;)tR(Ri)}function sY(){for(;Ri!==null&&!bX();)tR(Ri)}function tR(d){var p=sR(d.alternate,d,zs);d.memoizedProps=d.pendingProps,p===null?nR(d):Ri=p,Sv.current=null}function nR(d){var p=d;do{var x=p.alternate;if(d=p.return,p.flags&32768){if(x=KX(x,p),x!==null){x.flags&=32767,Ri=x;return}if(d!==null)d.flags|=32768,d.subtreeFlags=0,d.deletions=null;else{zi=6,Ri=null;return}}else if(x=jX(x,p,zs),x!==null){Ri=x;return}if(p=p.sibling,p!==null){Ri=p;return}Ri=p=d}while(p!==null);zi===0&&(zi=5)}function gh(d,p){var x=cn,S=xi.transition;try{xi.transition=null,cn=1,oY(d,p,x)}finally{xi.transition=S,cn=x}return null}function oY(d,p,x){do Ah();while(bu!==null);if(Xt&6)throw Error(o(327));var S=d.finishedWork,w=d.finishedLanes;if(S===null)return null;if(d.finishedWork=null,d.finishedLanes=0,S===d.current)throw Error(o(177));d.callbackNode=null,d.callbackPriority=0;var P=S.lanes|S.childLanes;if(RX(d,P),d===Mi&&(Ri=Mi=null,hr=0),!(S.subtreeFlags&2064)&&!(S.flags&2064)||pp||(pp=!0,oR(OA,function(){return Ah(),null})),P=(S.flags&15990)!==0,S.subtreeFlags&15990||P){P=xi.transition,xi.transition=null;var H=cn;cn=1;var Z=Xt;Xt|=4,Sv.current=null,ZX(d,S),eY(d,S),F(d.containerInfo),d.current=S,tY(S),PX(),Xt=Z,cn=H,xi.transition=P}else d.current=S;if(pp&&(pp=!1,bu=d,mp=w),P=d.pendingLanes,P===0&&(Ru=null),LX(S.stateNode),ds(d,Zi()),p!==null)for(x=d.onRecoverableError,S=0;S<p.length;S++)x(p[S]);if(dp)throw dp=!1,d=Iv,Iv=null,d;return mp&1&&d.tag!==0&&Ah(),P=d.pendingLanes,P&1?d===Mv?pf++:(pf=0,Mv=d):pf=0,Na(),null}function Ah(){if(bu!==null){var d=DI(mp),p=xi.transition,x=cn;try{if(xi.transition=null,cn=16>d?16:d,bu===null)var S=!1;else{if(d=bu,bu=null,mp=0,Xt&6)throw Error(o(331));var w=Xt;for(Xt|=4,Ue=d.current;Ue!==null;){var P=Ue,H=P.child;if(Ue.flags&16){var Z=P.deletions;if(Z!==null){for(var de=0;de<Z.length;de++){var Pe=Z[de];for(Ue=Pe;Ue!==null;){var Xe=Ue;switch(Xe.tag){case 0:case 11:case 15:ph(8,Xe,P)}var Lt=Xe.child;if(Lt!==null)Lt.return=Xe,Ue=Lt;else for(;Ue!==null;){Xe=Ue;var gt=Xe.sibling,wn=Xe.return;if(UM(Xe),Xe===Pe){Ue=null;break}if(gt!==null){gt.return=wn,Ue=gt;break}Ue=wn}}}var ct=P.alternate;if(ct!==null){var Cr=ct.child;if(Cr!==null){ct.child=null;do{var _o=Cr.sibling;Cr.sibling=null,Cr=_o}while(Cr!==null)}}Ue=P}}if(P.subtreeFlags&2064&&H!==null)H.return=P,Ue=H;else e:for(;Ue!==null;){if(P=Ue,P.flags&2048)switch(P.tag){case 0:case 11:case 15:ph(9,P,P.return)}var re=P.sibling;if(re!==null){re.return=P.return,Ue=re;break e}Ue=P.return}}var te=d.current;for(Ue=te;Ue!==null;){H=Ue;var he=H.child;if(H.subtreeFlags&2064&&he!==null)he.return=H,Ue=he;else e:for(H=te;Ue!==null;){if(Z=Ue,Z.flags&2048)try{switch(Z.tag){case 0:case 11:case 15:cf(9,Z)}}catch(at){ps(Z,Z.return,at)}if(Z===H){Ue=null;break e}var Ve=Z.sibling;if(Ve!==null){Ve.return=Z.return,Ue=Ve;break e}Ue=Z.return}}if(Xt=w,Na(),Da&&typeof Da.onPostCommitFiberRoot=="function")try{Da.onPostCommitFiberRoot(B6,d)}catch{}S=!0}return S}finally{cn=x,xi.transition=p}}return!1}function iR(d,p,x){p=uv(x,p),p=AM(d,p,1),Mu(d,p),p=jr(),d=vp(d,1),d!==null&&(Y2(d,1,p),ds(d,p))}function ps(d,p,x){if(d.tag===3)iR(d,d,x);else for(;p!==null;){if(p.tag===3){iR(p,d,x);break}else if(p.tag===1){var S=p.stateNode;if(typeof p.type.getDerivedStateFromError=="function"||typeof S.componentDidCatch=="function"&&(Ru===null||!Ru.has(S))){d=uv(x,d),d=vM(p,d,1),Mu(p,d),d=jr(),p=vp(p,1),p!==null&&(Y2(p,1,d),ds(p,d));break}}p=p.return}}function aY(d,p,x){var S=d.pingCache;S!==null&&S.delete(p),p=jr(),d.pingedLanes|=d.suspendedLanes&x,Mi===d&&(hr&x)===x&&(zi===4||zi===3&&(hr&130023424)===hr&&500>Zi()-Cv?mh(d,0):Tv|=x),ds(d,p)}function rR(d,p){p===0&&(d.mode&1?(p=b6,b6<<=1,!(b6&130023424)&&(b6=4194304)):p=1);var x=jr();d=vp(d,p),d!==null&&(Y2(d,p,x),ds(d,x))}function lY(d){var p=d.memoizedState,x=0;p!==null&&(x=p.retryLane),rR(d,x)}function uY(d,p){var x=0;switch(d.tag){case 13:var S=d.stateNode,w=d.memoizedState;w!==null&&(x=w.retryLane);break;case 19:S=d.stateNode;break;default:throw Error(o(314))}S!==null&&S.delete(p),rR(d,x)}var sR;sR=function(d,p,x){if(d!==null)if(d.memoizedProps!==p.pendingProps||Ii.current)Us=!0;else{if(!(d.lanes&x)&&!(p.flags&128))return Us=!1,YX(d,p,x);Us=!!(d.flags&131072)}else Us=!1,Qn&&p.flags&1048576&&HI(p,V6,p.index);switch(p.lanes=0,p.tag){case 2:var S=p.type;d!==null&&(d.alternate=null,p.alternate=null,p.flags|=2),d=p.pendingProps;var w=si(p,Ui.current);t3(p,x),w=rv(null,p,S,d,w,x);var P=sv();return p.flags|=1,typeof w=="object"&&w!==null&&typeof w.render=="function"&&w.$$typeof===void 0?(p.tag=1,p.memoizedState=null,p.updateQueue=null,oi(S)?(P=!0,Z1(p)):P=!1,p.memoizedState=w.state!==null&&w.state!==void 0?w.state:null,HA(p),w.updater=U6,p.stateNode=w,w._reactInternals=p,$A(p,S,d,x),p=fv(null,p,S,!0,P,x)):(p.tag=0,Qn&&P&&jA(p),$r(null,p,w,x),p=p.child),p;case 16:S=p.elementType;e:{switch(d!==null&&(d.alternate=null,p.alternate=null,p.flags|=2),d=p.pendingProps,w=S._init,S=w(S._payload),p.type=S,w=p.tag=hY(S),d=ea(S,d),w){case 0:p=hv(null,p,S,d,x);break e;case 1:p=MM(null,p,S,d,x);break e;case 11:p=SM(null,p,S,d,x);break e;case 14:p=TM(null,p,S,ea(S.type,d),x);break e}throw Error(o(306,S,""))}return p;case 0:return S=p.type,w=p.pendingProps,w=p.elementType===S?w:ea(S,w),hv(d,p,S,w,x);case 1:return S=p.type,w=p.pendingProps,w=p.elementType===S?w:ea(S,w),MM(d,p,S,w,x);case 3:e:{if(RM(p),d===null)throw Error(o(387));S=p.pendingProps,P=p.memoizedState,w=P.element,FI(d,p),O6(p,S,null,x);var H=p.memoizedState;if(S=H.element,qe&&P.isDehydrated)if(P={element:S,isDehydrated:!1,cache:H.cache,transitions:H.transitions},p.updateQueue.baseState=P,p.memoizedState=P,p.flags&256){w=Error(o(423)),p=bM(d,p,S,x,w);break e}else if(S!==w){w=Error(o(424)),p=bM(d,p,S,x,w);break e}else for(qe&&(Os=bA(p.stateNode.containerInfo),Fs=p,Qn=!0,ta=null,K2=!1),x=KI(p,null,S,x),p.child=x;x;)x.flags=x.flags&-3|4096,x=x.sibling;else{if(r3(),S===w){p=Dl(d,p,x);break e}$r(d,p,S,x)}p=p.child}return p;case 5:return JI(p),d===null&&KA(p),S=p.type,w=p.pendingProps,P=d!==null?d.memoizedProps:null,H=w.children,ge(S,w)?H=null:P!==null&&ge(S,P)&&(p.flags|=32),IM(d,p),$r(d,p,H,x),p.child;case 6:return d===null&&KA(p),null;case 13:return PM(d,p,x);case 4:return ZA(p,p.stateNode.containerInfo),S=p.pendingProps,d===null?p.child=s3(p,null,S,x):$r(d,p,S,x),p.child;case 11:return S=p.type,w=p.pendingProps,w=p.elementType===S?w:ea(S,w),SM(d,p,S,w,x);case 7:return $r(d,p,p.pendingProps,x),p.child;case 8:return $r(d,p,p.pendingProps.children,x),p.child;case 12:return $r(d,p,p.pendingProps.children,x),p.child;case 10:e:{if(S=p.type._context,w=p.pendingProps,P=p.memoizedProps,H=w.value,kI(p,S,H),P!==null)if(La(P.value,H)){if(P.children===w.children&&!Ii.current){p=Dl(d,p,x);break e}}else for(P=p.child,P!==null&&(P.return=p);P!==null;){var Z=P.dependencies;if(Z!==null){H=P.child;for(var de=Z.firstContext;de!==null;){if(de.context===S){if(P.tag===1){de=Rl(-1,x&-x),de.tag=2;var Pe=P.updateQueue;if(Pe!==null){Pe=Pe.shared;var Xe=Pe.pending;Xe===null?de.next=de:(de.next=Xe.next,Xe.next=de),Pe.pending=de}}P.lanes|=x,de=P.alternate,de!==null&&(de.lanes|=x),QA(P.return,x,p),Z.lanes|=x;break}de=de.next}}else if(P.tag===10)H=P.type===p.type?null:P.child;else if(P.tag===18){if(H=P.return,H===null)throw Error(o(341));H.lanes|=x,Z=H.alternate,Z!==null&&(Z.lanes|=x),QA(H,x,p),H=P.sibling}else H=P.child;if(H!==null)H.return=P;else for(H=P;H!==null;){if(H===p){H=null;break}if(P=H.sibling,P!==null){P.return=H.return,H=P;break}H=H.return}P=H}$r(d,p,w.children,x),p=p.child}return p;case 9:return w=p.type,S=p.pendingProps.children,t3(p,x),w=po(w),S=S(w),p.flags|=1,$r(d,p,S,x),p.child;case 14:return S=p.type,w=ea(S,p.pendingProps),w=ea(S.type,w),TM(d,p,S,w,x);case 15:return CM(d,p,p.type,p.pendingProps,x);case 17:return S=p.type,w=p.pendingProps,w=p.elementType===S?w:ea(S,w),d!==null&&(d.alternate=null,p.alternate=null,p.flags|=2),p.tag=1,oi(S)?(d=!0,Z1(p)):d=!1,t3(p,x),GI(p,S,w),$A(p,S,w,x),fv(null,p,S,!0,d,x);case 19:return NM(d,p,x);case 22:return wM(d,p,x)}throw Error(o(156,p.tag))};function oR(d,p){return kA(d,p)}function cY(d,p,x,S){this.tag=d,this.key=x,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=p,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=S,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function qo(d,p,x,S){return new cY(d,p,x,S)}function Dv(d){return d=d.prototype,!(!d||!d.isReactComponent)}function hY(d){if(typeof d=="function")return Dv(d)?1:0;if(d!=null){if(d=d.$$typeof,d===v)return 11;if(d===y)return 14}return 2}function Du(d,p){var x=d.alternate;return x===null?(x=qo(d.tag,p,d.key,d.mode),x.elementType=d.elementType,x.type=d.type,x.stateNode=d.stateNode,x.alternate=d,d.alternate=x):(x.pendingProps=p,x.type=d.type,x.flags=0,x.subtreeFlags=0,x.deletions=null),x.flags=d.flags&14680064,x.childLanes=d.childLanes,x.lanes=d.lanes,x.child=d.child,x.memoizedProps=d.memoizedProps,x.memoizedState=d.memoizedState,x.updateQueue=d.updateQueue,p=d.dependencies,x.dependencies=p===null?null:{lanes:p.lanes,firstContext:p.firstContext},x.sibling=d.sibling,x.index=d.index,x.ref=d.ref,x}function qp(d,p,x,S,w,P){var H=2;if(S=d,typeof d=="function")Dv(d)&&(H=1);else if(typeof d=="string")H=5;else e:switch(d){case c:return vh(x.children,w,P,p);case h:H=8,w|=8;break;case f:return d=qo(12,x,p,w|2),d.elementType=f,d.lanes=P,d;case _:return d=qo(13,x,p,w),d.elementType=_,d.lanes=P,d;case A:return d=qo(19,x,p,w),d.elementType=A,d.lanes=P,d;case E:return _p(x,w,P,p);default:if(typeof d=="object"&&d!==null)switch(d.$$typeof){case m:H=10;break e;case g:H=9;break e;case v:H=11;break e;case y:H=14;break e;case q:H=16,S=null;break e}throw Error(o(130,d==null?d:typeof d,""))}return p=qo(H,x,p,w),p.elementType=d,p.type=S,p.lanes=P,p}function vh(d,p,x,S){return d=qo(7,d,S,p),d.lanes=x,d}function _p(d,p,x,S){return d=qo(22,d,S,p),d.elementType=E,d.lanes=x,d.stateNode={},d}function Lv(d,p,x){return d=qo(6,d,null,p),d.lanes=x,d}function Nv(d,p,x){return p=qo(4,d.children!==null?d.children:[],d.key,p),p.lanes=x,p.stateNode={containerInfo:d.containerInfo,pendingChildren:null,implementation:d.implementation},p}function fY(d,p,x,S,w){this.tag=p,this.containerInfo=d,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=$e,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=LA(0),this.expirationTimes=LA(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=LA(0),this.identifierPrefix=S,this.onRecoverableError=w,qe&&(this.mutableSourceEagerHydrationData=null)}function aR(d,p,x,S,w,P,H,Z,de){return d=new fY(d,p,x,Z,de),p===1?(p=1,P===!0&&(p|=8)):p=0,P=qo(3,null,null,p),d.current=P,P.stateNode=d,P.memoizedState={element:S,isDehydrated:x,cache:null,transitions:null},HA(P),d}function lR(d){if(!d)return _r;d=d._reactInternals;e:{if(M(d)!==d||d.tag!==1)throw Error(o(170));var p=d;do{switch(p.tag){case 3:p=p.stateNode.context;break e;case 1:if(oi(p.type)){p=p.stateNode.__reactInternalMemoizedMergedChildContext;break e}}p=p.return}while(p!==null);throw Error(o(171))}if(d.tag===1){var x=d.type;if(oi(x))return J1(d,x,p)}return p}function uR(d){var p=d._reactInternals;if(p===void 0)throw typeof d.render=="function"?Error(o(188)):(d=Object.keys(d).join(","),Error(o(268,d)));return d=z(p),d===null?null:d.stateNode}function cR(d,p){if(d=d.memoizedState,d!==null&&d.dehydrated!==null){var x=d.retryLane;d.retryLane=x!==0&&x<p?x:p}}function kv(d,p){cR(d,p),(d=d.alternate)&&cR(d,p)}function dY(d){return d=z(d),d===null?null:d.stateNode}function pY(){return null}return n.attemptContinuousHydration=function(d){if(d.tag===13){var p=jr();yo(d,134217728,p),kv(d,134217728)}},n.attemptHydrationAtCurrentPriority=function(d){if(d.tag===13){var p=jr(),x=Pu(d);yo(d,x,p),kv(d,x)}},n.attemptSynchronousHydration=function(d){switch(d.tag){case 3:var p=d.stateNode;if(p.current.memoizedState.isDehydrated){var x=X2(p.pendingLanes);x!==0&&(NA(p,x|1),ds(p,Zi()),!(Xt&6)&&(h3(),Na()))}break;case 13:var S=jr();JM(function(){return yo(d,1,S)}),kv(d,1)}},n.batchedUpdates=function(d,p){var x=Xt;Xt|=1;try{return d(p)}finally{Xt=x,Xt===0&&(h3(),D6&&Na())}},n.createComponentSelector=function(d){return{$$typeof:op,value:d}},n.createContainer=function(d,p,x,S,w,P,H){return aR(d,p,!1,null,x,S,w,P,H)},n.createHasPseudoClassSelector=function(d){return{$$typeof:ap,value:d}},n.createHydrationContainer=function(d,p,x,S,w,P,H,Z,de){return d=aR(x,S,!0,d,w,P,H,Z,de),d.context=lR(null),x=d.current,S=jr(),w=Pu(x),P=Rl(S,w),P.callback=p??null,Mu(x,P),d.current.lanes=w,Y2(d,w,S),ds(d,S),d},n.createPortal=function(d,p,x){var S=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:u,key:S==null?null:""+S,children:d,containerInfo:p,implementation:x}},n.createRoleSelector=function(d){return{$$typeof:lp,value:d}},n.createTestNameSelector=function(d){return{$$typeof:up,value:d}},n.createTextSelector=function(d){return{$$typeof:cp,value:d}},n.deferredUpdates=function(d){var p=cn,x=xi.transition;try{return xi.transition=null,cn=16,d()}finally{cn=p,xi.transition=x}},n.discreteUpdates=function(d,p,x,S,w){var P=cn,H=xi.transition;try{return xi.transition=null,cn=1,d(p,x,S,w)}finally{cn=P,xi.transition=H,Xt===0&&h3()}},n.findAllNodes=Ev,n.findBoundingRects=function(d,p){if(!pt)throw Error(o(363));p=Ev(d,p),d=[];for(var x=0;x<p.length;x++)d.push(Sn(p[x]));for(p=d.length-1;0<p;p--){x=d[p];for(var S=x.x,w=S+x.width,P=x.y,H=P+x.height,Z=p-1;0<=Z;Z--)if(p!==Z){var de=d[Z],Pe=de.x,Xe=Pe+de.width,Lt=de.y,gt=Lt+de.height;if(S>=Pe&&P>=Lt&&w<=Xe&&H<=gt){d.splice(p,1);break}else if(S!==Pe||x.width!==de.width||gt<P||Lt>H){if(!(P!==Lt||x.height!==de.height||Xe<S||Pe>w)){Pe>S&&(de.width+=Pe-S,de.x=S),Xe<w&&(de.width=w-Pe),d.splice(p,1);break}}else{Lt>P&&(de.height+=Lt-P,de.y=P),gt<H&&(de.height=H-Lt),d.splice(p,1);break}}}return d},n.findHostInstance=uR,n.findHostInstanceWithNoPortals=function(d){return d=D(d),d=d!==null?W(d):null,d===null?null:d.stateNode},n.findHostInstanceWithWarning=function(d){return uR(d)},n.flushControlled=function(d){var p=Xt;Xt|=1;var x=xi.transition,S=cn;try{xi.transition=null,cn=1,d()}finally{cn=S,xi.transition=x,Xt=p,Xt===0&&(h3(),Na())}},n.flushPassiveEffects=Ah,n.flushSync=JM,n.focusWithin=function(d,p){if(!pt)throw Error(o(363));for(d=qv(d),p=XM(d,p),p=Array.from(p),d=0;d<p.length;){var x=p[d++];if(!N(x)){if(x.tag===5&&Te(x.stateNode))return!0;for(x=x.child;x!==null;)p.push(x),x=x.sibling}}return!1},n.getCurrentUpdatePriority=function(){return cn},n.getFindAllNodesFailureDescription=function(d,p){if(!pt)throw Error(o(363));var x=0,S=[];d=[qv(d),0];for(var w=0;w<d.length;){var P=d[w++],H=d[w++],Z=p[H];if((P.tag!==5||!N(P))&&(_v(P,Z)&&(S.push(xv(Z)),H++,H>x&&(x=H)),H<p.length))for(P=P.child;P!==null;)d.push(P,H),P=P.sibling}if(x<p.length){for(d=[];x<p.length;x++)d.push(xv(p[x]));return`findAllNodes was able to match part of the selector: 3642 `+(S.join(" > ")+` 3643 3644No matching component was found for: 3645 `)+d.join(" > ")}return null},n.getPublicRootInstance=function(d){if(d=d.current,!d.child)return null;switch(d.child.tag){case 5:return K(d.child.stateNode);default:return d.child.stateNode}},n.injectIntoDevTools=function(d){if(d={bundleType:d.bundleType,version:d.version,rendererPackageName:d.rendererPackageName,rendererConfig:d.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:a.ReactCurrentDispatcher,findHostInstanceByFiber:dY,findFiberByHostInstance:d.findFiberByHostInstance||pY,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.0.0-fc46dba67-20220329"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")d=!1;else{var p=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(p.isDisabled||!p.supportsFiber)d=!0;else{try{B6=p.inject(d),Da=p}catch{}d=!!p.checkDCE}}return d},n.isAlreadyRendering=function(){return!1},n.observeVisibleRects=function(d,p,x,S){if(!pt)throw Error(o(363));d=Ev(d,p);var w=Ee(d,x,S).disconnect;return{disconnect:function(){w()}}},n.registerMutableSourceForHydration=function(d,p){var x=p._getVersion;x=x(p._source),d.mutableSourceEagerHydrationData==null?d.mutableSourceEagerHydrationData=[p,x]:d.mutableSourceEagerHydrationData.push(p,x)},n.runWithPriority=function(d,p){var x=cn;try{return cn=d,p()}finally{cn=x}},n.shouldError=function(){return null},n.shouldSuspend=function(){return!1},n.updateContainer=function(d,p,x,S){var w=p.current,P=jr(),H=Pu(w);return x=lR(x),p.context===null?p.context=x:p.pendingContext=x,p=Rl(P,H),p.payload={element:d},S=S===void 0?null:S,S!==null&&(p.callback=S),Mu(w,p),d=yo(w,H,P),d!==null&&F6(d,w,H),H},n};Yz.exports=Tae;var Cae=Yz.exports;const wae=_9(Cae);var Kz={exports:{}},Jz={};/** 3646 * @license React 3647 * scheduler.production.min.js 3648 * 3649 * Copyright (c) Facebook, Inc. and its affiliates. 3650 * 3651 * This source code is licensed under the MIT license found in the 3652 * LICENSE file in the root directory of this source tree. 3653 */(function(t){function e(B,U){var F=B.length;B.push(U);e:for(;0<F;){var k=F-1>>>1,Q=B[k];if(0<r(Q,U))B[k]=U,B[F]=Q,F=k;else break e}}function n(B){return B.length===0?null:B[0]}function i(B){if(B.length===0)return null;var U=B[0],F=B.pop();if(F!==U){B[0]=F;e:for(var k=0,Q=B.length,ce=Q>>>1;k<ce;){var ae=2*(k+1)-1,ge=B[ae],ye=ae+1,xe=B[ye];if(0>r(ge,F))ye<Q&&0>r(xe,ge)?(B[k]=xe,B[ye]=F,k=ye):(B[k]=ge,B[ae]=F,k=ae);else if(ye<Q&&0>r(xe,F))B[k]=xe,B[ye]=F,k=ye;else break e}}return U}function r(B,U){var F=B.sortIndex-U.sortIndex;return F!==0?F:B.id-U.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,h=null,f=3,m=!1,g=!1,v=!1,_=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function q(B){for(var U=n(u);U!==null;){if(U.callback===null)i(u);else if(U.startTime<=B)i(u),U.sortIndex=U.expirationTime,e(l,U);else break;U=n(u)}}function E(B){if(v=!1,q(B),!g)if(n(l)!==null)g=!0,K(T);else{var U=n(u);U!==null&&Y(E,U.startTime-B)}}function T(B,U){g=!1,v&&(v=!1,A(R),R=-1),m=!0;var F=f;try{for(q(U),h=n(l);h!==null&&(!(h.expirationTime>U)||B&&!D());){var k=h.callback;if(typeof k=="function"){h.callback=null,f=h.priorityLevel;var Q=k(h.expirationTime<=U);U=t.unstable_now(),typeof Q=="function"?h.callback=Q:h===n(l)&&i(l),q(U)}else i(l);h=n(l)}if(h!==null)var ce=!0;else{var ae=n(u);ae!==null&&Y(E,ae.startTime-U),ce=!1}return ce}finally{h=null,f=F,m=!1}}var C=!1,I=null,R=-1,M=5,b=-1;function D(){return!(t.unstable_now()-b<M)}function z(){if(I!==null){var B=t.unstable_now();b=B;var U=!0;try{U=I(!0,B)}finally{U?O():(C=!1,I=null)}}else C=!1}var O;if(typeof y=="function")O=function(){y(z)};else if(typeof MessageChannel<"u"){var W=new MessageChannel,$=W.port2;W.port1.onmessage=z,O=function(){$.postMessage(null)}}else O=function(){_(z,0)};function K(B){I=B,C||(C=!0,O())}function Y(B,U){R=_(function(){B(t.unstable_now())},U)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(B){B.callback=null},t.unstable_continueExecution=function(){g||m||(g=!0,K(T))},t.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<B?Math.floor(1e3/B):5},t.unstable_getCurrentPriorityLevel=function(){return f},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(B){switch(f){case 1:case 2:case 3:var U=3;break;default:U=f}var F=f;f=U;try{return B()}finally{f=F}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(B,U){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var F=f;f=B;try{return U()}finally{f=F}},t.unstable_scheduleCallback=function(B,U,F){var k=t.unstable_now();switch(typeof F=="object"&&F!==null?(F=F.delay,F=typeof F=="number"&&0<F?k+F:k):F=k,B){case 1:var Q=-1;break;case 2:Q=250;break;case 5:Q=1073741823;break;case 4:Q=1e4;break;default:Q=5e3}return Q=F+Q,B={id:c++,callback:U,priorityLevel:B,startTime:F,expirationTime:Q,sortIndex:-1},F>k?(B.sortIndex=F,e(u,B),n(l)===null&&B===n(u)&&(v?(A(R),R=-1):v=!0,Y(E,F-k))):(B.sortIndex=Q,e(l,B),g||m||(g=!0,K(T))),B},t.unstable_shouldYield=D,t.unstable_wrapCallback=function(B){var U=f;return function(){var F=f;f=U;try{return B.apply(this,arguments)}finally{f=F}}}})(Jz);Kz.exports=Jz;var eB=Kz.exports;const mC={},Zz=t=>void Object.assign(mC,t);function Iae(t,e){function n(c,{args:h=[],attach:f,...m},g){let v=`${c[0].toUpperCase()}${c.slice(1)}`,_;if(c==="primitive"){if(m.object===void 0)throw new Error("R3F: Primitives without 'object' are invalid!");const A=m.object;_=z3(A,{type:c,root:g,attach:f,primitive:!0})}else{const A=mC[v];if(!A)throw new Error(`R3F: ${v} is not part of the THREE namespace! Did you forget to extend? See: https://docs.pmnd.rs/react-three-fiber/api/objects#using-3rd-party-objects-declaratively`);if(!Array.isArray(h))throw new Error("R3F: The args prop must be an array!");_=z3(new A(...h),{type:c,root:g,attach:f,memoizedProps:{args:h}})}return _.__r3f.attach===void 0&&(_ instanceof Bt?_.__r3f.attach="geometry":_ instanceof Ji&&(_.__r3f.attach="material")),v!=="inject"&&Xy(_,m),_}function i(c,h){let f=!1;if(h){var m,g;(m=h.__r3f)!=null&&m.attach?jy(c,h,h.__r3f.attach):h.isObject3D&&c.isObject3D&&(c.add(h),f=!0),f||(g=c.__r3f)==null||g.objects.push(h),h.__r3f||z3(h,{}),h.__r3f.parent=c,Qx(h),V3(h)}}function r(c,h,f){let m=!1;if(h){var g,v;if((g=h.__r3f)!=null&&g.attach)jy(c,h,h.__r3f.attach);else if(h.isObject3D&&c.isObject3D){h.parent=c,h.dispatchEvent({type:"added"});const _=c.children.filter(y=>y!==h),A=_.indexOf(f);c.children=[..._.slice(0,A),h,..._.slice(A)],m=!0}m||(v=c.__r3f)==null||v.objects.push(h),h.__r3f||z3(h,{}),h.__r3f.parent=c,Qx(h),V3(h)}}function s(c,h,f=!1){c&&[...c].forEach(m=>o(h,m,f))}function o(c,h,f){if(h){var m,g,v;if(h.__r3f&&(h.__r3f.parent=null),(m=c.__r3f)!=null&&m.objects&&(c.__r3f.objects=c.__r3f.objects.filter(E=>E!==h)),(g=h.__r3f)!=null&&g.attach)sB(c,h,h.__r3f.attach);else if(h.isObject3D&&c.isObject3D){var _;c.remove(h),(_=h.__r3f)!=null&&_.root&&Lae(h.__r3f.root,h)}const y=(v=h.__r3f)==null?void 0:v.primitive,q=f===void 0?h.dispose!==null&&!y:f;if(!y){var A;s((A=h.__r3f)==null?void 0:A.objects,h,q),s(h.children,h,q)}delete h.__r3f,q&&h.dispose&&h.type!=="Scene"&&eB.unstable_scheduleCallback(eB.unstable_IdlePriority,()=>{try{h.dispose()}catch{}}),V3(c)}}function a(c,h,f,m){var g;const v=(g=c.__r3f)==null?void 0:g.parent;if(!v)return;const _=n(h,f,c.__r3f.root);if(c.children){for(const A of c.children)A.__r3f&&i(_,A);c.children=c.children.filter(A=>!A.__r3f)}c.__r3f.objects.forEach(A=>i(_,A)),c.__r3f.objects=[],c.__r3f.autoRemovedBeforeAppend||o(v,c),_.parent&&(_.__r3f.autoRemovedBeforeAppend=!0),i(v,_),_.raycast&&_.__r3f.eventCount&&_.__r3f.root.getState().internal.interaction.push(_),[m,m.alternate].forEach(A=>{A!==null&&(A.stateNode=_,A.ref&&(typeof A.ref=="function"?A.ref(_):A.ref.current=_))})}const l=()=>console.warn("Text is not allowed in the R3F tree! This could be stray whitespace or characters.");return{reconciler:wae({createInstance:n,removeChild:o,appendChild:i,appendInitialChild:i,insertBefore:r,supportsMutation:!0,isPrimaryRenderer:!1,supportsPersistence:!1,supportsHydration:!1,noTimeout:-1,appendChildToContainer:(c,h)=>{if(!h)return;const f=c.getState().scene;f.__r3f&&(f.__r3f.root=c,i(f,h))},removeChildFromContainer:(c,h)=>{h&&o(c.getState().scene,h)},insertInContainerBefore:(c,h,f)=>{if(!h||!f)return;const m=c.getState().scene;m.__r3f&&r(m,h,f)},getRootHostContext:()=>null,getChildHostContext:c=>c,finalizeInitialChildren(c){var h;return!!((h=c==null?void 0:c.__r3f)!=null?h:{}).handlers},prepareUpdate(c,h,f,m){var g;if(((g=c==null?void 0:c.__r3f)!=null?g:{}).primitive&&m.object&&m.object!==c)return[!0];{const{args:_=[],children:A,...y}=m,{args:q=[],children:E,...T}=f;if(!Array.isArray(_))throw new Error("R3F: the args prop must be an array!");if(_.some((I,R)=>I!==q[R]))return[!0];const C=oV(c,y,T,!0);return C.changes.length?[!1,C]:null}},commitUpdate(c,[h,f],m,g,v,_){h?a(c,m,v,_):Xy(c,f)},commitMount(c,h,f,m){var g;const v=(g=c.__r3f)!=null?g:{};c.raycast&&v.handlers&&v.eventCount&&c.__r3f.root.getState().internal.interaction.push(c)},getPublicInstance:c=>c,prepareForCommit:()=>null,preparePortalMount:c=>z3(c.getState().scene),resetAfterCommit:()=>{},shouldSetTextContent:()=>!1,clearContainer:()=>!1,hideInstance(c){var h;const{attach:f,parent:m}=(h=c.__r3f)!=null?h:{};f&&m&&sB(m,c,f),c.isObject3D&&(c.visible=!1),V3(c)},unhideInstance(c,h){var f;const{attach:m,parent:g}=(f=c.__r3f)!=null?f:{};m&&g&&jy(g,c,m),(c.isObject3D&&h.visible==null||h.visible)&&(c.visible=!0),V3(c)},createTextInstance:l,hideTextInstance:l,unhideTextInstance:l,getCurrentEventPriority:()=>e?e():u0.DefaultEventPriority,beforeActiveInstanceBlur:()=>{},afterActiveInstanceBlur:()=>{},detachDeletedInstance:()=>{},now:typeof performance<"u"&&Hn.fun(performance.now)?performance.now:Hn.fun(Date.now)?Date.now:()=>0,scheduleTimeout:Hn.fun(setTimeout)?setTimeout:void 0,cancelTimeout:Hn.fun(clearTimeout)?clearTimeout:void 0}),applyProps:Xy}}var tB,nB;const $y=t=>"colorSpace"in t||"outputColorSpace"in t,eV=()=>{var t;return(t=mC.ColorManagement)!=null?t:null},tV=t=>t&&t.isOrthographicCamera,Mae=t=>t&&t.hasOwnProperty("current"),N2=typeof window<"u"&&((tB=window.document)!=null&&tB.createElement||((nB=window.navigator)==null?void 0:nB.product)==="ReactNative")?G.useLayoutEffect:G.useEffect;function nV(t){const e=G.useRef(t);return N2(()=>void(e.current=t),[t]),e}function Rae({set:t}){return N2(()=>(t(new Promise(()=>null)),()=>t(!1)),[t]),null}class iV extends G.Component{constructor(...e){super(...e),this.state={error:!1}}componentDidCatch(e){this.props.set(e)}render(){return this.state.error?null:this.props.children}}iV.getDerivedStateFromError=()=>({error:!0});const rV="__default",iB=new Map,bae=t=>t&&!!t.memoized&&!!t.changes;function sV(t){var e;const n=typeof window<"u"?(e=window.devicePixelRatio)!=null?e:2:1;return Array.isArray(t)?Math.min(Math.max(t[0],n),t[1]):t}const Lf=t=>{var e;return(e=t.__r3f)==null?void 0:e.root.getState()},Hn={obj:t=>t===Object(t)&&!Hn.arr(t)&&typeof t!="function",fun:t=>typeof t=="function",str:t=>typeof t=="string",num:t=>typeof t=="number",boo:t=>typeof t=="boolean",und:t=>t===void 0,arr:t=>Array.isArray(t),equ(t,e,{arrays:n="shallow",objects:i="reference",strict:r=!0}={}){if(typeof t!=typeof e||!!t!=!!e)return!1;if(Hn.str(t)||Hn.num(t))return t===e;const s=Hn.obj(t);if(s&&i==="reference")return t===e;const o=Hn.arr(t);if(o&&n==="reference")return t===e;if((o||s)&&t===e)return!0;let a;for(a in t)if(!(a in e))return!1;if(s&&n==="shallow"&&i==="shallow"){for(a in r?e:t)if(!Hn.equ(t[a],e[a],{strict:r,objects:"reference"}))return!1}else for(a in r?e:t)if(t[a]!==e[a])return!1;if(Hn.und(a)){if(o&&t.length===0&&e.length===0||s&&Object.keys(t).length===0&&Object.keys(e).length===0)return!0;if(t!==e)return!1}return!0}};function Pae(t){t.dispose&&t.type!=="Scene"&&t.dispose();for(const e in t)e.dispose==null||e.dispose(),delete t[e]}function z3(t,e){const n=t;return n.__r3f={type:"",root:null,previousAttach:null,memoizedProps:{},eventCount:0,handlers:{},objects:[],parent:null,...e},t}function Gx(t,e){let n=t;if(e.includes("-")){const i=e.split("-"),r=i.pop();return n=i.reduce((s,o)=>s[o],t),{target:n,key:r}}else return{target:n,key:e}}const rB=/-\d+$/;function jy(t,e,n){if(Hn.str(n)){if(rB.test(n)){const s=n.replace(rB,""),{target:o,key:a}=Gx(t,s);Array.isArray(o[a])||(o[a]=[])}const{target:i,key:r}=Gx(t,n);e.__r3f.previousAttach=i[r],i[r]=e}else e.__r3f.previousAttach=n(t,e)}function sB(t,e,n){var i,r;if(Hn.str(n)){const{target:s,key:o}=Gx(t,n),a=e.__r3f.previousAttach;a===void 0?delete s[o]:s[o]=a}else(i=e.__r3f)==null||i.previousAttach==null||i.previousAttach(t,e);(r=e.__r3f)==null||delete r.previousAttach}function oV(t,{children:e,key:n,ref:i,...r},{children:s,key:o,ref:a,...l}={},u=!1){var c;const h=(c=t==null?void 0:t.__r3f)!=null?c:{},f=Object.entries(r),m=[];if(u){const v=Object.keys(l);for(let _=0;_<v.length;_++)r.hasOwnProperty(v[_])||f.unshift([v[_],rV+"remove"])}f.forEach(([v,_])=>{var A;if((A=t.__r3f)!=null&&A.primitive&&v==="object"||Hn.equ(_,l[v]))return;if(/^on(Pointer|Click|DoubleClick|ContextMenu|Wheel)/.test(v))return m.push([v,_,!0,[]]);let y=[];v.includes("-")&&(y=v.split("-")),m.push([v,_,!1,y]);for(const q in r){const E=r[q];q.startsWith(`${v}-`)&&m.push([q,E,!1,q.split("-")])}});const g={...r};return h.memoizedProps&&h.memoizedProps.args&&(g.args=h.memoizedProps.args),h.memoizedProps&&h.memoizedProps.attach&&(g.attach=h.memoizedProps.attach),{memoized:g,changes:m}}function Xy(t,e){var n,i,r;const s=(n=t.__r3f)!=null?n:{},o=s.root,a=(i=o==null||o.getState==null?void 0:o.getState())!=null?i:{},{memoized:l,changes:u}=bae(e)?e:oV(t,e),c=s.eventCount;t.__r3f&&(t.__r3f.memoizedProps=l);for(let f=0;f<u.length;f++){let[m,g,v,_]=u[f];if($y(t)){const E="srgb",T="srgb-linear";m==="encoding"?(m="colorSpace",g=g===3001?E:T):m==="outputEncoding"&&(m="outputColorSpace",g=g===3001?E:T)}let A=t,y=A[m];if(_.length&&(y=_.reduce((q,E)=>q[E],t),!(y&&y.set))){const[q,...E]=_.reverse();A=E.reverse().reduce((T,C)=>T[C],t),m=q}if(g===rV+"remove")if(A.constructor){let q=iB.get(A.constructor);q||(q=new A.constructor,iB.set(A.constructor,q)),g=q[m]}else g=0;if(v)g?s.handlers[m]=g:delete s.handlers[m],s.eventCount=Object.keys(s.handlers).length;else if(y&&y.set&&(y.copy||y instanceof u1)){if(Array.isArray(g))y.fromArray?y.fromArray(g):y.set(...g);else if(y.copy&&g&&g.constructor&&y.constructor===g.constructor)y.copy(g);else if(g!==void 0){const q=y instanceof Me;!q&&y.setScalar?y.setScalar(g):y instanceof u1&&g instanceof u1?y.mask=g.mask:y.set(g),!eV()&&!a.linear&&q&&y.convertSRGBToLinear()}}else if(A[m]=g,A[m]instanceof Gn&&A[m].format===mi&&A[m].type===Rn){const q=A[m];$y(q)&&$y(a.gl)?q.colorSpace=a.gl.outputColorSpace:q.encoding=a.gl.outputEncoding}V3(t)}if(s.parent&&a.internal&&t.raycast&&c!==s.eventCount){const f=a.internal.interaction.indexOf(t);f>-1&&a.internal.interaction.splice(f,1),s.eventCount&&a.internal.interaction.push(t)}return!(u.length===1&&u[0][0]==="onUpdate")&&u.length&&(r=t.__r3f)!=null&&r.parent&&Qx(t),t}function V3(t){var e,n;const i=(e=t.__r3f)==null||(n=e.root)==null||n.getState==null?void 0:n.getState();i&&i.internal.frames===0&&i.invalidate()}function Qx(t){t.onUpdate==null||t.onUpdate(t)}function Bae(t,e){t.manual||(tV(t)?(t.left=e.width/-2,t.right=e.width/2,t.top=e.height/2,t.bottom=e.height/-2):t.aspect=e.width/e.height,t.updateProjectionMatrix(),t.updateMatrixWorld())}function w7(t){return(t.eventObject||t.object).uuid+"/"+t.index+t.instanceId}function Dae(){var t;const e=typeof self<"u"&&self||typeof window<"u"&&window;if(!e)return u0.DefaultEventPriority;switch((t=e.event)==null?void 0:t.type){case"click":case"contextmenu":case"dblclick":case"pointercancel":case"pointerdown":case"pointerup":return u0.DiscreteEventPriority;case"pointermove":case"pointerout":case"pointerover":case"pointerenter":case"pointerleave":case"wheel":return u0.ContinuousEventPriority;default:return u0.DefaultEventPriority}}function aV(t,e,n,i){const r=n.get(e);r&&(n.delete(e),n.size===0&&(t.delete(i),r.target.releasePointerCapture(i)))}function Lae(t,e){const{internal:n}=t.getState();n.interaction=n.interaction.filter(i=>i!==e),n.initialHits=n.initialHits.filter(i=>i!==e),n.hovered.forEach((i,r)=>{(i.eventObject===e||i.object===e)&&n.hovered.delete(r)}),n.capturedMap.forEach((i,r)=>{aV(n.capturedMap,e,i,r)})}function Nae(t){function e(l){const{internal:u}=t.getState(),c=l.offsetX-u.initialClick[0],h=l.offsetY-u.initialClick[1];return Math.round(Math.sqrt(c*c+h*h))}function n(l){return l.filter(u=>["Move","Over","Enter","Out","Leave"].some(c=>{var h;return(h=u.__r3f)==null?void 0:h.handlers["onPointer"+c]}))}function i(l,u){const c=t.getState(),h=new Set,f=[],m=u?u(c.internal.interaction):c.internal.interaction;for(let A=0;A<m.length;A++){const y=Lf(m[A]);y&&(y.raycaster.camera=void 0)}c.previousRoot||c.events.compute==null||c.events.compute(l,c);function g(A){const y=Lf(A);if(!y||!y.events.enabled||y.raycaster.camera===null)return[];if(y.raycaster.camera===void 0){var q;y.events.compute==null||y.events.compute(l,y,(q=y.previousRoot)==null?void 0:q.getState()),y.raycaster.camera===void 0&&(y.raycaster.camera=null)}return y.raycaster.camera?y.raycaster.intersectObject(A,!0):[]}let v=m.flatMap(g).sort((A,y)=>{const q=Lf(A.object),E=Lf(y.object);return!q||!E?A.distance-y.distance:E.events.priority-q.events.priority||A.distance-y.distance}).filter(A=>{const y=w7(A);return h.has(y)?!1:(h.add(y),!0)});c.events.filter&&(v=c.events.filter(v,c));for(const A of v){let y=A.object;for(;y;){var _;(_=y.__r3f)!=null&&_.eventCount&&f.push({...A,eventObject:y}),y=y.parent}}if("pointerId"in l&&c.internal.capturedMap.has(l.pointerId))for(let A of c.internal.capturedMap.get(l.pointerId).values())h.has(w7(A.intersection))||f.push(A.intersection);return f}function r(l,u,c,h){const f=t.getState();if(l.length){const m={stopped:!1};for(const g of l){const v=Lf(g.object)||f,{raycaster:_,pointer:A,camera:y,internal:q}=v,E=new L(A.x,A.y,0).unproject(y),T=b=>{var D,z;return(D=(z=q.capturedMap.get(b))==null?void 0:z.has(g.eventObject))!=null?D:!1},C=b=>{const D={intersection:g,target:u.target};q.capturedMap.has(b)?q.capturedMap.get(b).set(g.eventObject,D):q.capturedMap.set(b,new Map([[g.eventObject,D]])),u.target.setPointerCapture(b)},I=b=>{const D=q.capturedMap.get(b);D&&aV(q.capturedMap,g.eventObject,D,b)};let R={};for(let b in u){let D=u[b];typeof D!="function"&&(R[b]=D)}let M={...g,...R,pointer:A,intersections:l,stopped:m.stopped,delta:c,unprojectedPoint:E,ray:_.ray,camera:y,stopPropagation(){const b="pointerId"in u&&q.capturedMap.get(u.pointerId);if((!b||b.has(g.eventObject))&&(M.stopped=m.stopped=!0,q.hovered.size&&Array.from(q.hovered.values()).find(D=>D.eventObject===g.eventObject))){const D=l.slice(0,l.indexOf(g));s([...D,g])}},target:{hasPointerCapture:T,setPointerCapture:C,releasePointerCapture:I},currentTarget:{hasPointerCapture:T,setPointerCapture:C,releasePointerCapture:I},nativeEvent:u};if(h(M),m.stopped===!0)break}}return l}function s(l){const{internal:u}=t.getState();for(const c of u.hovered.values())if(!l.length||!l.find(h=>h.object===c.object&&h.index===c.index&&h.instanceId===c.instanceId)){const f=c.eventObject.__r3f,m=f==null?void 0:f.handlers;if(u.hovered.delete(w7(c)),f!=null&&f.eventCount){const g={...c,intersections:l};m.onPointerOut==null||m.onPointerOut(g),m.onPointerLeave==null||m.onPointerLeave(g)}}}function o(l,u){for(let c=0;c<u.length;c++){const h=u[c].__r3f;h==null||h.handlers.onPointerMissed==null||h.handlers.onPointerMissed(l)}}function a(l){switch(l){case"onPointerLeave":case"onPointerCancel":return()=>s([]);case"onLostPointerCapture":return u=>{const{internal:c}=t.getState();"pointerId"in u&&c.capturedMap.has(u.pointerId)&&requestAnimationFrame(()=>{c.capturedMap.has(u.pointerId)&&(c.capturedMap.delete(u.pointerId),s([]))})}}return function(c){const{onPointerMissed:h,internal:f}=t.getState();f.lastEvent.current=c;const m=l==="onPointerMove",g=l==="onClick"||l==="onContextMenu"||l==="onDoubleClick",_=i(c,m?n:void 0),A=g?e(c):0;l==="onPointerDown"&&(f.initialClick=[c.offsetX,c.offsetY],f.initialHits=_.map(q=>q.eventObject)),g&&!_.length&&A<=2&&(o(c,f.interaction),h&&h(c)),m&&s(_);function y(q){const E=q.eventObject,T=E.__r3f,C=T==null?void 0:T.handlers;if(T!=null&&T.eventCount)if(m){if(C.onPointerOver||C.onPointerEnter||C.onPointerOut||C.onPointerLeave){const I=w7(q),R=f.hovered.get(I);R?R.stopped&&q.stopPropagation():(f.hovered.set(I,q),C.onPointerOver==null||C.onPointerOver(q),C.onPointerEnter==null||C.onPointerEnter(q))}C.onPointerMove==null||C.onPointerMove(q)}else{const I=C[l];I?(!g||f.initialHits.includes(E))&&(o(c,f.interaction.filter(R=>!f.initialHits.includes(R))),I(q)):g&&f.initialHits.includes(E)&&o(c,f.interaction.filter(R=>!f.initialHits.includes(R)))}}r(_,c,A,y)}}return{handlePointer:a}}const lV=t=>!!(t!=null&&t.render),uV=G.createContext(null),kae=(t,e)=>{const n=xae((a,l)=>{const u=new L,c=new L,h=new L;function f(A=l().camera,y=c,q=l().size){const{width:E,height:T,top:C,left:I}=q,R=E/T;y instanceof L?h.copy(y):h.set(...y);const M=A.getWorldPosition(u).distanceTo(h);if(tV(A))return{width:E/A.zoom,height:T/A.zoom,top:C,left:I,factor:1,distance:M,aspect:R};{const b=A.fov*Math.PI/180,D=2*Math.tan(b/2)*M,z=D*(E/T);return{width:z,height:D,top:C,left:I,factor:E/z,distance:M,aspect:R}}}let m;const g=A=>a(y=>({performance:{...y.performance,current:A}})),v=new oe;return{set:a,get:l,gl:null,camera:null,raycaster:null,events:{priority:1,enabled:!0,connected:!1},xr:null,scene:null,invalidate:(A=1)=>t(l(),A),advance:(A,y)=>e(A,y,l()),legacy:!1,linear:!1,flat:!1,controls:null,clock:new vg,pointer:v,mouse:v,frameloop:"always",onPointerMissed:void 0,performance:{current:1,min:.5,max:1,debounce:200,regress:()=>{const A=l();m&&clearTimeout(m),A.performance.current!==A.performance.min&&g(A.performance.min),m=setTimeout(()=>g(l().performance.max),A.performance.debounce)}},size:{width:0,height:0,top:0,left:0,updateStyle:!1},viewport:{initialDpr:0,dpr:0,width:0,height:0,top:0,left:0,aspect:0,distance:0,factor:0,getCurrentViewport:f},setEvents:A=>a(y=>({...y,events:{...y.events,...A}})),setSize:(A,y,q,E,T)=>{const C=l().camera,I={width:A,height:y,top:E||0,left:T||0,updateStyle:q};a(R=>({size:I,viewport:{...R.viewport,...f(C,c,I)}}))},setDpr:A=>a(y=>{const q=sV(A);return{viewport:{...y.viewport,dpr:q,initialDpr:y.viewport.initialDpr||q}}}),setFrameloop:(A="always")=>{const y=l().clock;y.stop(),y.elapsedTime=0,A!=="never"&&(y.start(),y.elapsedTime=0),a(()=>({frameloop:A}))},previousRoot:void 0,internal:{active:!1,priority:0,frames:0,lastEvent:G.createRef(),interaction:[],hovered:new Map,subscribers:[],initialClick:[0,0],initialHits:[],capturedMap:new Map,subscribe:(A,y,q)=>{const E=l().internal;return E.priority=E.priority+(y>0?1:0),E.subscribers.push({ref:A,priority:y,store:q}),E.subscribers=E.subscribers.sort((T,C)=>T.priority-C.priority),()=>{const T=l().internal;T!=null&&T.subscribers&&(T.priority=T.priority-(y>0?1:0),T.subscribers=T.subscribers.filter(C=>C.ref!==A))}}}}}),i=n.getState();let r=i.size,s=i.viewport.dpr,o=i.camera;return n.subscribe(()=>{const{camera:a,size:l,viewport:u,gl:c,set:h}=n.getState();if(l!==r||u.dpr!==s){var f;r=l,s=u.dpr,Bae(a,l),c.setPixelRatio(u.dpr);const m=(f=l.updateStyle)!=null?f:typeof HTMLCanvasElement<"u"&&c.domElement instanceof HTMLCanvasElement;c.setSize(l.width,l.height,m)}a!==o&&(o=a,h(m=>({viewport:{...m.viewport,...m.viewport.getCurrentViewport(a)}})))}),n.subscribe(a=>t(a)),n};let I7,Fae=new Set,Oae=new Set,Uae=new Set;function Yy(t,e){if(t.size)for(const{callback:n}of t.values())n(e)}function Nf(t,e){switch(t){case"before":return Yy(Fae,e);case"after":return Yy(Oae,e);case"tail":return Yy(Uae,e)}}let Ky,Jy;function Zy(t,e,n){let i=e.clock.getDelta();for(e.frameloop==="never"&&typeof t=="number"&&(i=t-e.clock.elapsedTime,e.clock.oldTime=e.clock.elapsedTime,e.clock.elapsedTime=t),Ky=e.internal.subscribers,I7=0;I7<Ky.length;I7++)Jy=Ky[I7],Jy.ref.current(Jy.store.getState(),i,n);return!e.internal.priority&&e.gl.render&&e.gl.render(e.scene,e.camera),e.internal.frames=Math.max(0,e.internal.frames-1),e.frameloop==="always"?1:e.internal.frames}function zae(t){let e=!1,n,i,r;function s(l){i=requestAnimationFrame(s),e=!0,n=0,Nf("before",l);for(const c of t.values()){var u;r=c.store.getState(),r.internal.active&&(r.frameloop==="always"||r.internal.frames>0)&&!((u=r.gl.xr)!=null&&u.isPresenting)&&(n+=Zy(l,r))}if(Nf("after",l),n===0)return Nf("tail",l),e=!1,cancelAnimationFrame(i)}function o(l,u=1){var c;if(!l)return t.forEach(h=>o(h.store.getState()),u);(c=l.gl.xr)!=null&&c.isPresenting||!l.internal.active||l.frameloop==="never"||(l.internal.frames=Math.min(60,l.internal.frames+u),e||(e=!0,requestAnimationFrame(s)))}function a(l,u=!0,c,h){if(u&&Nf("before",l),c)Zy(l,c,h);else for(const f of t.values())Zy(l,f.store.getState());u&&Nf("after",l)}return{loop:s,invalidate:o,advance:a}}function Vae(t){const e=G.useRef(null);return N2(()=>void(e.current=t.current.__r3f),[t]),e}function cV(){const t=G.useContext(uV);if(!t)throw new Error("R3F: Hooks can only be used within the Canvas component!");return t}function yg(t=n=>n,e){return cV()(t,e)}function G4(t,e=0){const n=cV(),i=n.getState().internal.subscribe,r=nV(t);return N2(()=>i(r,e,n),[e,i,n]),null}const Z0=new Map,{invalidate:oB,advance:aB}=zae(Z0),{reconciler:qm,applyProps:L3}=Iae(Z0,Dae),N3={objects:"shallow",strict:!1},Gae=(t,e)=>{const n=typeof t=="function"?t(e):t;return lV(n)?n:new jT({powerPreference:"high-performance",canvas:e,antialias:!0,alpha:!0,...t})};function Qae(t,e){if(e)return e;if(typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement&&t.parentElement){const{width:n,height:i,top:r,left:s}=t.parentElement.getBoundingClientRect();return{width:n,height:i,top:r,left:s}}else if(typeof OffscreenCanvas<"u"&&t instanceof OffscreenCanvas)return{width:t.width,height:t.height,top:0,left:0};return{width:0,height:0,top:0,left:0}}function Hae(t){const e=Z0.get(t),n=e==null?void 0:e.fiber,i=e==null?void 0:e.store;e&&console.warn("R3F.createRoot should only be called once!");const r=typeof reportError=="function"?reportError:console.error,s=i||kae(oB,aB),o=n||qm.createContainer(s,u0.ConcurrentRoot,null,!1,null,"",r,null);e||Z0.set(t,{fiber:o,store:s});let a,l=!1,u;return{configure(c={}){let{gl:h,size:f,scene:m,events:g,onCreated:v,shadows:_=!1,linear:A=!1,flat:y=!1,legacy:q=!1,orthographic:E=!1,frameloop:T="always",dpr:C=[1,2],performance:I,raycaster:R,camera:M,onPointerMissed:b}=c,D=s.getState(),z=D.gl;D.gl||D.set({gl:z=Gae(h,t)});let O=D.raycaster;O||D.set({raycaster:O=new Wz});const{params:W,...$}=R||{};if(Hn.equ($,O,N3)||L3(O,{...$}),Hn.equ(W,O.params,N3)||L3(O,{params:{...O.params,...W}}),!D.camera||D.camera===u&&!Hn.equ(u,M,N3)){u=M;const Q=M instanceof M2,ce=Q?M:E?new b2(0,0,0,0,.1,1e3):new Yn(75,0,.1,1e3);Q||(ce.position.z=5,M&&L3(ce,M),!D.camera&&!(M!=null&&M.rotation)&&ce.lookAt(0,0,0)),D.set({camera:ce})}if(!D.scene){let Q;m instanceof K0?Q=m:(Q=new K0,m&&L3(Q,m)),D.set({scene:z3(Q)})}if(!D.xr){var K;const Q=(ge,ye)=>{const xe=s.getState();xe.frameloop!=="never"&&aB(ge,!0,xe,ye)},ce=()=>{const ge=s.getState();ge.gl.xr.enabled=ge.gl.xr.isPresenting,ge.gl.xr.setAnimationLoop(ge.gl.xr.isPresenting?Q:null),ge.gl.xr.isPresenting||oB(ge)},ae={connect(){const ge=s.getState().gl;ge.xr.addEventListener("sessionstart",ce),ge.xr.addEventListener("sessionend",ce)},disconnect(){const ge=s.getState().gl;ge.xr.removeEventListener("sessionstart",ce),ge.xr.removeEventListener("sessionend",ce)}};typeof((K=z.xr)==null?void 0:K.addEventListener)=="function"&&ae.connect(),D.set({xr:ae})}if(z.shadowMap){const Q=z.shadowMap.enabled,ce=z.shadowMap.type;if(z.shadowMap.enabled=!!_,Hn.boo(_))z.shadowMap.type=C5;else if(Hn.str(_)){var Y;const ae={basic:hU,percentage:U9,soft:C5,variance:aa};z.shadowMap.type=(Y=ae[_])!=null?Y:C5}else Hn.obj(_)&&Object.assign(z.shadowMap,_);(Q!==z.shadowMap.enabled||ce!==z.shadowMap.type)&&(z.shadowMap.needsUpdate=!0)}const B=eV();B&&("enabled"in B?B.enabled=!q:"legacyMode"in B&&(B.legacyMode=q)),L3(z,{outputEncoding:A?3e3:3001,toneMapping:y?Fo:bT}),D.legacy!==q&&D.set(()=>({legacy:q})),D.linear!==A&&D.set(()=>({linear:A})),D.flat!==y&&D.set(()=>({flat:y})),h&&!Hn.fun(h)&&!lV(h)&&!Hn.equ(h,z,N3)&&L3(z,h),g&&!D.events.handlers&&D.set({events:g(s)});const k=Qae(t,f);return Hn.equ(k,D.size,N3)||D.setSize(k.width,k.height,k.updateStyle,k.top,k.left),C&&D.viewport.dpr!==sV(C)&&D.setDpr(C),D.frameloop!==T&&D.setFrameloop(T),D.onPointerMissed||D.set({onPointerMissed:b}),I&&!Hn.equ(I,D.performance,N3)&&D.set(Q=>({performance:{...Q.performance,...I}})),a=v,l=!0,this},render(c){return l||this.configure(),qm.updateContainer(G.createElement(Wae,{store:s,children:c,onCreated:a,rootElement:t}),o,null,()=>{}),s},unmount(){hV(t)}}}function Wae({store:t,children:e,onCreated:n,rootElement:i}){return N2(()=>{const r=t.getState();r.set(s=>({internal:{...s.internal,active:!0}})),n&&n(r),t.getState().events.connected||r.events.connect==null||r.events.connect(i)},[]),G.createElement(uV.Provider,{value:t},e)}function hV(t,e){const n=Z0.get(t),i=n==null?void 0:n.fiber;if(i){const r=n==null?void 0:n.store.getState();r&&(r.internal.active=!1),qm.updateContainer(null,i,null,()=>{r&&setTimeout(()=>{try{var s,o,a,l;r.events.disconnect==null||r.events.disconnect(),(s=r.gl)==null||(o=s.renderLists)==null||o.dispose==null||o.dispose(),(a=r.gl)==null||a.forceContextLoss==null||a.forceContextLoss(),(l=r.gl)!=null&&l.xr&&r.xr.disconnect(),Pae(r),Z0.delete(t),e&&e(t)}catch{}},500)})}}qm.injectIntoDevTools({bundleType:0,rendererPackageName:"@react-three/fiber",version:G.version});function Qd(){return Qd=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Qd.apply(this,arguments)}function Hx(t,e,n){var i,r,s,o,a;e==null&&(e=100);function l(){var c=Date.now()-o;c<e&&c>=0?i=setTimeout(l,e-c):(i=null,n||(a=t.apply(s,r),s=r=null))}var u=function(){s=this,r=arguments,o=Date.now();var c=n&&!i;return i||(i=setTimeout(l,e)),c&&(a=t.apply(s,r),s=r=null),a};return u.clear=function(){i&&(clearTimeout(i),i=null)},u.flush=function(){i&&(a=t.apply(s,r),s=r=null,clearTimeout(i),i=null)},u}Hx.debounce=Hx;var $ae=Hx;const lB=_9($ae);function jae(t){let{debounce:e,scroll:n,polyfill:i,offsetSize:r}=t===void 0?{debounce:0,scroll:!1,offsetSize:!1}:t;const s=i||(typeof window>"u"?class{}:window.ResizeObserver);if(!s)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");const[o,a]=G.useState({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),l=G.useRef({element:null,scrollContainers:null,resizeObserver:null,lastBounds:o}),u=e?typeof e=="number"?e:e.scroll:null,c=e?typeof e=="number"?e:e.resize:null,h=G.useRef(!1);G.useEffect(()=>(h.current=!0,()=>void(h.current=!1)));const[f,m,g]=G.useMemo(()=>{const y=()=>{if(!l.current.element)return;const{left:q,top:E,width:T,height:C,bottom:I,right:R,x:M,y:b}=l.current.element.getBoundingClientRect(),D={left:q,top:E,width:T,height:C,bottom:I,right:R,x:M,y:b};l.current.element instanceof HTMLElement&&r&&(D.height=l.current.element.offsetHeight,D.width=l.current.element.offsetWidth),Object.freeze(D),h.current&&!Jae(l.current.lastBounds,D)&&a(l.current.lastBounds=D)};return[y,c?lB(y,c):y,u?lB(y,u):y]},[a,r,u,c]);function v(){l.current.scrollContainers&&(l.current.scrollContainers.forEach(y=>y.removeEventListener("scroll",g,!0)),l.current.scrollContainers=null),l.current.resizeObserver&&(l.current.resizeObserver.disconnect(),l.current.resizeObserver=null)}function _(){l.current.element&&(l.current.resizeObserver=new s(g),l.current.resizeObserver.observe(l.current.element),n&&l.current.scrollContainers&&l.current.scrollContainers.forEach(y=>y.addEventListener("scroll",g,{capture:!0,passive:!0})))}const A=y=>{!y||y===l.current.element||(v(),l.current.element=y,l.current.scrollContainers=fV(y),_())};return Yae(g,!!n),Xae(m),G.useEffect(()=>{v(),_()},[n,g,m]),G.useEffect(()=>v,[]),[A,o,f]}function Xae(t){G.useEffect(()=>{const e=t;return window.addEventListener("resize",e),()=>void window.removeEventListener("resize",e)},[t])}function Yae(t,e){G.useEffect(()=>{if(e){const n=t;return window.addEventListener("scroll",n,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",n,!0)}},[t,e])}function fV(t){const e=[];if(!t||t===document.body)return e;const{overflow:n,overflowX:i,overflowY:r}=window.getComputedStyle(t);return[n,i,r].some(s=>s==="auto"||s==="scroll")&&e.push(t),[...e,...fV(t.parentElement)]}const Kae=["x","y","top","bottom","left","right","width","height"],Jae=(t,e)=>Kae.every(n=>t[n]===e[n]);var Zae=Object.defineProperty,ele=Object.defineProperties,tle=Object.getOwnPropertyDescriptors,uB=Object.getOwnPropertySymbols,nle=Object.prototype.hasOwnProperty,ile=Object.prototype.propertyIsEnumerable,cB=(t,e,n)=>e in t?Zae(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,hB=(t,e)=>{for(var n in e||(e={}))nle.call(e,n)&&cB(t,n,e[n]);if(uB)for(var n of uB(e))ile.call(e,n)&&cB(t,n,e[n]);return t},rle=(t,e)=>ele(t,tle(e));function dV(t,e,n){if(!t)return;if(n(t)===!0)return t;let i=e?t.return:t.child;for(;i;){const r=dV(i,e,n);if(r)return r;i=e?null:i.sibling}}function pV(t){try{return Object.defineProperties(t,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return t}}const gC=pV(G.createContext(null));class mV extends G.Component{render(){return G.createElement(gC.Provider,{value:this._reactInternals},this.props.children)}}const{ReactCurrentOwner:fB,ReactCurrentDispatcher:dB}=G.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function sle(){const t=G.useContext(gC);if(t===null)throw new Error("its-fine: useFiber must be called within a <FiberProvider />!");const e=G.useId();return G.useMemo(()=>{for(const i of[fB==null?void 0:fB.current,t,t==null?void 0:t.alternate]){if(!i)continue;const r=dV(i,!1,s=>{let o=s.memoizedState;for(;o;){if(o.memoizedState===e)return!0;o=o.next}});if(r)return r}},[t,e])}function ole(){var t,e;const n=sle(),[i]=G.useState(()=>new Map);i.clear();let r=n;for(;r;){const s=(t=r.type)==null?void 0:t._context;s&&s!==gC&&!i.has(s)&&i.set(s,(e=dB==null?void 0:dB.current)==null?void 0:e.readContext(pV(s))),r=r.return}return i}
3653function ale(){const t=ole();return G.useMemo(()=>Array.from(t.keys()).reduce((e,n)=>i=>G.createElement(e,null,G.createElement(n.Provider,rle(hB({},i),{value:t.get(n)}))),e=>G.createElement(mV,hB({},e))),[t])}const eq={onClick:["click",!1],onContextMenu:["contextmenu",!1],onDoubleClick:["dblclick",!1],onWheel:["wheel",!0],onPointerDown:["pointerdown",!0],onPointerUp:["pointerup",!0],onPointerLeave:["pointerleave",!0],onPointerMove:["pointermove",!0],onPointerCancel:["pointercancel",!0],onLostPointerCapture:["lostpointercapture",!0]};function lle(t){const{handlePointer:e}=Nae(t);return{priority:1,enabled:!0,compute(n,i,r){i.pointer.set(n.offsetX/i.size.width*2-1,-(n.offsetY/i.size.height)*2+1),i.raycaster.setFromCamera(i.pointer,i.camera)},connected:void 0,handlers:Object.keys(eq).reduce((n,i)=>({...n,[i]:e(i)}),{}),update:()=>{var n;const{events:i,internal:r}=t.getState();(n=r.lastEvent)!=null&&n.current&&i.handlers&&i.handlers.onPointerMove(r.lastEvent.current)},connect:n=>{var i;const{set:r,events:s}=t.getState();s.disconnect==null||s.disconnect(),r(o=>({events:{...o.events,connected:n}})),Object.entries((i=s.handlers)!=null?i:[]).forEach(([o,a])=>{const[l,u]=eq[o];n.addEventListener(l,a,{passive:u})})},disconnect:()=>{const{set:n,events:i}=t.getState();if(i.connected){var r;Object.entries((r=i.handlers)!=null?r:[]).forEach(([s,o])=>{if(i&&i.connected instanceof HTMLElement){const[a]=eq[s];i.connected.removeEventListener(a,o)}}),n(s=>({events:{...s.events,connected:void 0}}))}}}}const ule=G.forwardRef(function({children:e,fallback:n,resize:i,style:r,gl:s,events:o=lle,eventSource:a,eventPrefix:l,shadows:u,linear:c,flat:h,legacy:f,orthographic:m,frameloop:g,dpr:v,performance:_,raycaster:A,camera:y,onPointerMissed:q,onCreated:E,...T},C){G.useMemo(()=>Zz(yae),[]);const I=ale(),[R,M]=jae({scroll:!0,debounce:{scroll:50,resize:0},...i}),b=G.useRef(null),D=G.useRef(null);G.useImperativeHandle(C,()=>b.current);const z=nV(q),[O,W]=G.useState(!1),[$,K]=G.useState(!1);if(O)throw O;if($)throw $;const Y=G.useRef(null);N2(()=>{const U=b.current;M.width>0&&M.height>0&&U&&(Y.current||(Y.current=Hae(U)),Y.current.configure({gl:s,events:o,shadows:u,linear:c,flat:h,legacy:f,orthographic:m,frameloop:g,dpr:v,performance:_,raycaster:A,camera:y,size:M,onPointerMissed:(...F)=>z.current==null?void 0:z.current(...F),onCreated:F=>{F.events.connect==null||F.events.connect(a?Mae(a)?a.current:a:D.current),l&&F.setEvents({compute:(k,Q)=>{const ce=k[l+"X"],ae=k[l+"Y"];Q.pointer.set(ce/Q.size.width*2-1,-(ae/Q.size.height)*2+1),Q.raycaster.setFromCamera(Q.pointer,Q.camera)}}),E==null||E(F)}}),Y.current.render(G.createElement(I,null,G.createElement(iV,{set:K},G.createElement(G.Suspense,{fallback:G.createElement(Rae,{set:W})},e)))))}),G.useEffect(()=>{const U=b.current;if(U)return()=>hV(U)},[]);const B=a?"none":"auto";return G.createElement("div",Qd({ref:D,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:B,...r}},T),G.createElement("div",{ref:R,style:{width:"100%",height:"100%"}},G.createElement("canvas",{ref:b,style:{display:"block"}},n)))}),gV=G.forwardRef(function(e,n){return G.createElement(mV,null,G.createElement(ule,Qd({},e,{ref:n})))}),kf=(t,e="jpg",n="Marble_Gray_002")=>`../Texture/Planet/${n}/${n}_${t}.${e}`,Lh=t=>`../Texture/Skybox/${t}.png`,cle={map:new $a().load(kf("basecolor_bw")),displacementMap:new $a().load(kf("height","png")),normalMap:new $a().load(kf("normal")),roughnessMap:new $a().load(kf("roughness")),aoMap:new $a().load(kf("ambientOcclusion"))};new $a().load(Lh("front"));const hle=new Bz,AV=hle.load([Lh("left"),Lh("right"),Lh("top"),Lh("bottom"),Lh("back"),Lh("front")]),fle=new $a().load("../Texture/Ring/PlanetRing.png");let Ys;function dle(t){Ys={};for(const e in t)if(Object.hasOwnProperty.call(t,e)){Ys[e]={};const n=t[e];for(let i=0;i<n.length;i++){const r=n[i];r!=null&&r.thumbnail?Ys[e][r.id]=new $a().load(r.thumbnail):r!=null&&r.local_thumbnail&&(Ys[e][r.id]=new $a().load("../Texture/Content/"+r.local_thumbnail))}}}function ple({size:t=1,color:e=16777215,radius:n=1.1,position:i=[0,0,0]}){const r=G.useRef(),s=G.useRef();let o=0;const a=32,l=16;return G4((u,c)=>{r.current!=null&&(o+=c,r.current.rotation.y=-o/10)}),ee(bc,{children:dt("mesh",{ref:r,position:i,children:[ee("sphereGeometry",{ref:s,args:[n*t,a,l]}),ee("meshStandardMaterial",{...cle,color:e})]})})}const pB=t=>{let e;const n=new Set,i=(l,u)=>{const c=typeof l=="function"?l(e):l;if(!Object.is(c,e)){const h=e;e=u??typeof c!="object"?c:Object.assign({}
3653,e,c),n.forEach(f=>f(e,h))}},r=()=>e,a={setState:i,getState:r,subscribe:l=>(n.add(l),()=>n.delete(l)),destroy:()=>{n.clear()}};return e=t(i,r,a),a},mle=t=>t?pB(t):pB;var vV={exports:{}},yV={},qV={exports:{}},_V={};/** 3654 * @license React 3655 * use-sync-external-store-shim.production.min.js 3656 * 3657 * Copyright (c) Facebook, Inc. and its affiliates. 3658 * 3659 * This source code is licensed under the MIT license found in the 3660 * LICENSE file in the root directory of this source tree. 3661 */var e2=G;function gle(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var Ale=typeof Object.is=="function"?Object.is:gle,vle=e2.useState,yle=e2.useEffect,qle=e2.useLayoutEffect,_le=e2.useDebugValue;function xle(t,e){var n=e(),i=vle({inst:{value:n,getSnapshot:e}}),r=i[0].inst,s=i[1];return qle(function(){r.value=n,r.getSnapshot=e,tq(r)&&s({inst:r})},[t,n,e]),yle(function(){return tq(r)&&s({inst:r}),t(function(){tq(r)&&s({inst:r})})},[t]),_le(n),n}function tq(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!Ale(t,n)}catch{return!0}}function Ele(t,e){return e()}var Sle=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Ele:xle;_V.useSyncExternalStore=e2.useSyncExternalStore!==void 0?e2.useSyncExternalStore:Sle;qV.exports=_V;var Tle=qV.exports;/** 3662 * @license React 3663 * use-sync-external-store-shim/with-selector.production.min.js 3664 * 3665 * Copyright (c) Facebook, Inc. and its affiliates. 3666 * 3667 * This source code is licensed under the MIT license found in the 3668 * LICENSE file in the root directory of this source tree. 3669 */var qg=G,Cle=Tle;function wle(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var Ile=typeof Object.is=="function"?Object.is:wle,Mle=Cle.useSyncExternalStore,Rle=qg.useRef,ble=qg.useEffect,Ple=qg.useMemo,Ble=qg.useDebugValue;yV.useSyncExternalStoreWithSelector=function(t,e,n,i,r){var s=Rle(null);if(s.current===null){var o={hasValue:!1,value:null};s.current=o}else o=s.current;s=Ple(function(){function l(m){if(!u){if(u=!0,c=m,m=i(m),r!==void 0&&o.hasValue){var g=o.value;if(r(g,m))return h=g}return h=m}if(g=h,Ile(c,m))return g;var v=i(m);return r!==void 0&&r(g,v)?g:(c=m,h=v)}var u=!1,c,h,f=n===void 0?null:n;return[function(){return l(e())},f===null?void 0:function(){return l(f())}]},[e,n,i,r]);var a=Mle(t,s[0],s[1]);return ble(function(){o.hasValue=!0,o.value=a},[a]),Ble(a),a};vV.exports=yV;var Dle=vV.exports;const Lle=_9(Dle),{useSyncExternalStoreWithSelector:Nle}=Lle;function kle(t,e=t.getState,n){const i=Nle(t.subscribe,t.getState,t.getServerState||t.getState,e,n);return G.useDebugValue(i),i}const mB=t=>{const e=typeof t=="function"?mle(t):t,n=(i,r)=>kle(e,i,r);return Object.assign(n,e),n},AC=t=>t?mB(t):mB,Wx=new Map,M7=t=>{const e=Wx.get(t);return e?Object.fromEntries(Object.entries(e.stores).map(([n,i])=>[n,i.getState()])):{}},Fle=(t,e,n)=>{if(t===void 0)return{type:"untracked",connection:e.connect(n)};const i=Wx.get(n.name);if(i)return{type:"tracked",store:t,...i};const r={connection:e.connect(n),stores:{}};return Wx.set(n.name,r),{type:"tracked",store:t,...r}},Ole=(t,e={})=>(n,i,r)=>{const{enabled:s,anonymousActionType:o,store:a,...l}=e;let u;try{u=(s??!1)&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!u)return t(n,i,r);const{connection:c,...h}=Fle(a,u,l);let f=!0;r.setState=(v,_,A)=>{const y=n(v,_);if(!f)return y;const q=A===void 0?{type:o||"anonymous"}:typeof A=="string"?{type:A}:A;return a===void 0?(c==null||c.send(q,i()),y):(c==null||c.send({...q,type:`${a}/${q.type}`},{...M7(l.name),[a]:r.getState()}),y)};const m=(...v)=>{const _=f;f=!1,n(...v),f=_},g=t(r.setState,i,r);if(h.type==="untracked"?c==null||c.init(g):(h.stores[h.store]=r,c==null||c.init(Object.fromEntries(Object.entries(h.stores).map(([v,_])=>[v,v===h.store?g:_.getState()])))),r.dispatchFromDevtools&&typeof r.dispatch=="function"){let v=!1;const _=r.dispatch;r.dispatch=(...A)=>{_(...A)}}return c.subscribe(v=>{var _;switch(v.type){case"ACTION":if(typeof v.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return nq(v.payload,A=>{if(A.type==="__setState"){if(a===void 0){m(A.state);return}
3669Object.keys(A.state).length!==1&&console.error(` 3670 [zustand devtools middleware] Unsupported __setState action format. 3671 When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(), 3672 and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } } 3673 `);const y=A.state[a];if(y==null)return;JSON.stringify(r.getState())!==JSON.stringify(y)&&m(y);return}r.dispatchFromDevtools&&typeof r.dispatch=="function"&&r.dispatch(A)});case"DISPATCH":switch(v.payload.type){case"RESET":return m(g),a===void 0?c==null?void 0:c.init(r.getState()):c==null?void 0:c.init(M7(l.name));case"COMMIT":if(a===void 0){c==null||c.init(r.getState());return}return c==null?void 0:c.init(M7(l.name));case"ROLLBACK":return nq(v.state,A=>{if(a===void 0){m(A),c==null||c.init(r.getState());return}m(A[a]),c==null||c.init(M7(l.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return nq(v.state,A=>{if(a===void 0){m(A);return}JSON.stringify(r.getState())!==JSON.stringify(A[a])&&m(A[a])});case"IMPORT_STATE":{const{nextLiftedState:A}=v.payload,y=(_=A.computedStates.slice(-1)[0])==null?void 0:_.state;if(!y)return;m(a===void 0?y:y[a]),c==null||c.send(null,A);return}case"PAUSE_RECORDING":return f=!f}return}}),g},vC=Ole,nq=(t,e)=>{let n;try{n=JSON.parse(t)}catch(i){console.error("[zustand devtools middleware] Could not parse the received json",i)}n!==void 0&&e(n)};/** 3674 * @license 3675 * Copyright 2017 Google LLC 3676 * 3677 * Licensed under the Apache License, Version 2.0 (the "License"); 3678 * you may not use this file except in compliance with the License. 3679 * You may obtain a copy of the License at 3680 * 3681 * http://www.apache.org/licenses/LICENSE-2.0 3682 * 3683 * Unless required by applicable law or agreed to in writing, software 3684 * distributed under the License is distributed on an "AS IS" BASIS, 3685 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3686 * See the License for the specific language governing permissions and 3687 * limitations under the License. 3688 *//** 3689 * @license 3690 * Copyright 2017 Google LLC 3691 * 3692 * Licensed under the Apache License, Version 2.0 (the "License"); 3693 * you may not use this file except in compliance with the License. 3694 * You may obtain a copy of the License at 3695 * 3696 * http://www.apache.org/licenses/LICENSE-2.0 3697 * 3698 * Unless required by applicable law or agreed to in writing, software 3699 * distributed under the License is distributed on an "AS IS" BASIS, 3700 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3701 * See the License for the specific language governing permissions and 3702 * limitations under the License. 3703 */const xV=function(t){const e=[];let n=0;for(let i=0;i<t.length;i++){let r=t.charCodeAt(i);r<128?e[n++]=r:r<2048?(e[n++]=r>>6|192,e[n++]=r&63|128):(r&64512)===55296&&i+1<t.length&&(t.charCodeAt(i+1)&64512)===56320?(r=65536+((r&1023)<<10)+(t.charCodeAt(++i)&1023),e[n++]=r>>18|240,e[n++]=r>>12&63|128,e[n++]=r>>6&63|128,e[n++]=r&63|128):(e[n++]=r>>12|224,e[n++]=r>>6&63|128,e[n++]=r&63|128)}return e},Ule=function(t){const e=[];let n=0,i=0;for(;n<t.length;){const r=t[n++];if(r<128)e[i++]=String.fromCharCode(r);else if(r>191&&r<224){const s=t[n++];e[i++]=String.fromCharCode((r&31)<<6|s&63)}else if(r>239&&r<365){const s=t[n++],o=t[n++],a=t[n++],l=((r&7)<<18|(s&63)<<12|(o&63)<<6|a&63)-65536;e[i++]=String.fromCharCode(55296+(l>>10)),e[i++]=String.fromCharCode(56320+(l&1023))}else{const s=t[n++],o=t[n++];e[i++]=String.fromCharCode((r&15)<<12|(s&63)<<6|o&63)}}return e.join("")},EV={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:typeof atob=="function",encodeByteArray(t,e){if(!Array.isArray(t))throw Error("encodeByteArray takes an array as a parameter");this.init_();const n=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,i=[];for(let r=0;r<t.length;r+=3){const s=t[r],o=r+1<t.length,a=o?t[r+1]:0,l=r+2<t.length,u=l?t[r+2]:0,c=s>>2,h=(s&3)<<4|a>>4;let f=(a&15)<<2|u>>6,m=u&63;l||(m=64,o||(f=64)),i.push(n[c],n[h],n[f],n[m])}return i.join("")},encodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(t):this.encodeByteArray(xV(t),e)},decodeString(t,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(t):Ule(this.decodeStringToByteArray(t,e))},decodeStringToByteArray(t,e){this.init_();const n=e?this.charToByteMapWebSafe_:this.charToByteMap_,i=[];for(let r=0;r<t.length;){const s=n[t.charAt(r++)],a=r<t.length?n[t.charAt(r)]:0;++r;
3703const u=r<t.length?n[t.charAt(r)]:64;++r;const h=r<t.length?n[t.charAt(r)]:64;if(++r,s==null||a==null||u==null||h==null)throw new zle;const f=s<<2|a>>4;if(i.push(f),u!==64){const m=a<<4&240|u>>2;if(i.push(m),h!==64){const g=u<<6&192|h;i.push(g)}}}return i},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let t=0;t<this.ENCODED_VALS.length;t++)this.byteToCharMap_[t]=this.ENCODED_VALS.charAt(t),this.charToByteMap_[this.byteToCharMap_[t]]=t,this.byteToCharMapWebSafe_[t]=this.ENCODED_VALS_WEBSAFE.charAt(t),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[t]]=t,t>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(t)]=t,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(t)]=t)}}};class zle extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const Vle=function(t){const e=xV(t);return EV.encodeByteArray(e,!0)},_m=function(t){return Vle(t).replace(/\./g,"")},Gle=function(t){try{return EV.decodeString(t,!0)}catch(e){console.error("base64Decode failed: ",e)}return null};/** 3704 * @license 3705 * Copyright 2022 Google LLC 3706 * 3707 * Licensed under the Apache License, Version 2.0 (the "License"); 3708 * you may not use this file except in compliance with the License. 3709 * You may obtain a copy of the License at 3710 * 3711 * http://www.apache.org/licenses/LICENSE-2.0 3712 * 3713 * Unless required by applicable law or agreed to in writing, software 3714 * distributed under the License is distributed on an "AS IS" BASIS, 3715 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3716 * See the License for the specific language governing permissions and 3717 * limitations under the License. 3718 */function Qle(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}/** 3719 * @license 3720 * Copyright 2022 Google LLC 3721 * 3722 * Licensed under the Apache License, Version 2.0 (the "License"); 3723 * you may not use this file except in compliance with the License. 3724 * You may obtain a copy of the License at 3725 * 3726 * http://www.apache.org/licenses/LICENSE-2.0 3727 * 3728 * Unless required by applicable law or agreed to in writing, software 3729 * distributed under the License is distributed on an "AS IS" BASIS, 3730 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3731 * See the License for the specific language governing permissions and 3732 * limitations under the License. 3733 */const Hle=()=>Qle().__FIREBASE_DEFAULTS__,Wle=()=>{if(typeof process>"u"||typeof process.env>"u")return;const t={}.__FIREBASE_DEFAULTS__;if(t)return JSON.parse(t)},$le=()=>{if(typeof document>"u")return;let t;try{t=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}const e=t&&Gle(t[1]);return e&&JSON.parse(e)},SV=()=>{try{return Hle()||Wle()||$le()}catch(t){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${t}`);return}},jle=t=>{var e,n;return(n=(e=SV())===null||e===void 0?void 0:e.emulatorHosts)===null||n===void 0?void 0:n[t]},Xle=t=>{const e=jle(t);if(!e)return;const n=e.lastIndexOf(":");if(n<=0||n+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);const i=parseInt(e.substring(n+1),10);return e[0]==="["?[e.substring(1,n-1),i]:[e.substring(0,n),i]},TV=()=>{var t;return(t=SV())===null||t===void 0?void 0:t.config};/** 3734 * @license 3735 * Copyright 2017 Google LLC 3736 * 3737 * Licensed under the Apache License, Version 2.0 (the "License"); 3738 * you may not use this file except in compliance with the License. 3739 * You may obtain a copy of the License at 3740 * 3741 * http://www.apache.org/licenses/LICENSE-2.0 3742 * 3743 * Unless required by applicable law or agreed to in writing, software 3744 * distributed under the License is distributed on an "AS IS" BASIS, 3745 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3746 * See the License for the specific language governing permissions and 3747 * limitations under the License. 3748 */class Yle{constructor(){this.reject=()=>{},this.resolve=()=>{}
3748,this.promise=new Promise((e,n)=>{this.resolve=e,this.reject=n})}wrapCallback(e){return(n,i)=>{n?this.reject(n):this.resolve(i),typeof e=="function"&&(this.promise.catch(()=>{}),e.length===1?e(n):e(n,i))}}}/** 3749 * @license 3750 * Copyright 2021 Google LLC 3751 * 3752 * Licensed under the Apache License, Version 2.0 (the "License"); 3753 * you may not use this file except in compliance with the License. 3754 * You may obtain a copy of the License at 3755 * 3756 * http://www.apache.org/licenses/LICENSE-2.0 3757 * 3758 * Unless required by applicable law or agreed to in writing, software 3759 * distributed under the License is distributed on an "AS IS" BASIS, 3760 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3761 * See the License for the specific language governing permissions and 3762 * limitations under the License. 3763 */function Kle(t,e){if(t.uid)throw new Error('The "uid" field is no longer supported by mockUserToken. Please use "sub" instead for Firebase Auth User ID.');const n={alg:"none",type:"JWT"},i=e||"demo-project",r=t.iat||0,s=t.sub||t.user_id;if(!s)throw new Error("mockUserToken must contain 'sub' or 'user_id' field!");const o=Object.assign({iss:`https://securetoken.google.com/${i}`,aud:i,iat:r,exp:r+3600,auth_time:r,sub:s,user_id:s,firebase:{sign_in_provider:"custom",identities:{}}},t),a="";return[_m(JSON.stringify(n)),_m(JSON.stringify(o)),a].join(".")}function Jle(){try{return typeof indexedDB=="object"}catch{return!1}}function Zle(){return new Promise((t,e)=>{try{let n=!0;const i="validate-browser-context-for-indexeddb-analytics-module",r=self.indexedDB.open(i);r.onsuccess=()=>{r.result.close(),n||self.indexedDB.deleteDatabase(i),t(!0)},r.onupgradeneeded=()=>{n=!1},r.onerror=()=>{var s;e(((s=r.error)===null||s===void 0?void 0:s.message)||"")}}catch(n){e(n)}})}/** 3764 * @license 3765 * Copyright 2017 Google LLC 3766 * 3767 * Licensed under the Apache License, Version 2.0 (the "License"); 3768 * you may not use this file except in compliance with the License. 3769 * You may obtain a copy of the License at 3770 * 3771 * http://www.apache.org/licenses/LICENSE-2.0 3772 * 3773 * Unless required by applicable law or agreed to in writing, software 3774 * distributed under the License is distributed on an "AS IS" BASIS, 3775 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3776 * See the License for the specific language governing permissions and 3777 * limitations under the License. 3778 */const eue="FirebaseError";class k2 extends Error{constructor(e,n,i){super(n),this.code=e,this.customData=i,this.name=eue,Object.setPrototypeOf(this,k2.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,CV.prototype.create)}}class CV{constructor(e,n,i){this.service=e,this.serviceName=n,this.errors=i}create(e,...n){const i=n[0]||{},r=`${this.service}/${e}`,s=this.errors[e],o=s?tue(s,i):"Error",a=`${this.serviceName}: ${o} (${r}).`;return new k2(r,a,i)}}function tue(t,e){return t.replace(nue,(n,i)=>{const r=e[i];return r!=null?String(r):`<${i}?>`})}const nue=/\{\$([^}]+)}/g;function $x(t,e){if(t===e)return!0;const n=Object.keys(t),i=Object.keys(e);for(const r of n){if(!i.includes(r))return!1;const s=t[r],o=e[r];if(gB(s)&&gB(o)){if(!$x(s,o))return!1}else if(s!==o)return!1}for(const r of i)if(!n.includes(r))return!1;return!0}function gB(t){return t!==null&&typeof t=="object"}/** 3779 * @license 3780 * Copyright 2021 Google LLC 3781 * 3782 * Licensed under the Apache License, Version 2.0 (the "License"); 3783 * you may not use this file except in compliance with the License. 3784 * You may obtain a copy of the License at 3785 * 3786 * http://www.apache.org/licenses/LICENSE-2.0 3787 * 3788 * Unless required by applicable law or agreed to in writing, software 3789 * distributed under the License is distributed on an "AS IS" BASIS, 3790 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3791 * See the License for the specific language governing permissions and 3792 * limitations under the License. 3793 */function iue(t){return t&&t._delegate?t._delegate:t}class Hd{constructor(e,n,i){this.name=e,this.instanceFactory=n,this.type=i,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}}/** 3794 * @license 3795 * Copyright 2019 Google LLC 3796 * 3797 * Licensed under the Apache License, Version 2.0 (the "License");
3798 * you may not use this file except in compliance with the License. 3799 * You may obtain a copy of the License at 3800 * 3801 * http://www.apache.org/licenses/LICENSE-2.0 3802 * 3803 * Unless required by applicable law or agreed to in writing, software 3804 * distributed under the License is distributed on an "AS IS" BASIS, 3805 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3806 * See the License for the specific language governing permissions and 3807 * limitations under the License. 3808 */const Nh="[DEFAULT]";/** 3809 * @license 3810 * Copyright 2019 Google LLC 3811 * 3812 * Licensed under the Apache License, Version 2.0 (the "License"); 3813 * you may not use this file except in compliance with the License. 3814 * You may obtain a copy of the License at 3815 * 3816 * http://www.apache.org/licenses/LICENSE-2.0 3817 * 3818 * Unless required by applicable law or agreed to in writing, software 3819 * distributed under the License is distributed on an "AS IS" BASIS, 3820 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3821 * See the License for the specific language governing permissions and 3822 * limitations under the License. 3823 */class rue{constructor(e,n){this.name=e,this.container=n,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){const n=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(n)){const i=new Yle;if(this.instancesDeferred.set(n,i),this.isInitialized(n)||this.shouldAutoInitialize())try{const r=this.getOrInitializeService({instanceIdentifier:n});r&&i.resolve(r)}catch{}}return this.instancesDeferred.get(n).promise}getImmediate(e){var n;const i=this.normalizeInstanceIdentifier(e==null?void 0:e.identifier),r=(n=e==null?void 0:e.optional)!==null&&n!==void 0?n:!1;if(this.isInitialized(i)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:i})}catch(s){if(r)return null;throw s}else{if(r)return null;throw Error(`Service ${this.name} is not available`)}}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,!!this.shouldAutoInitialize()){if(oue(e))try{this.getOrInitializeService({instanceIdentifier:Nh})}catch{}for(const[n,i]of this.instancesDeferred.entries()){const r=this.normalizeInstanceIdentifier(n);try{const s=this.getOrInitializeService({instanceIdentifier:r});i.resolve(s)}catch{}}}}clearInstance(e=Nh){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){const e=Array.from(this.instances.values());await Promise.all([...e.filter(n=>"INTERNAL"in n).map(n=>n.INTERNAL.delete()),...e.filter(n=>"_delete"in n).map(n=>n._delete())])}isComponentSet(){return this.component!=null}isInitialized(e=Nh){return this.instances.has(e)}getOptions(e=Nh){return this.instancesOptions.get(e)||{}}initialize(e={}){const{options:n={}}=e,i=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(i))throw Error(`${this.name}(${i}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const r=this.getOrInitializeService({instanceIdentifier:i,options:n});for(const[s,o]of this.instancesDeferred.entries()){const a=this.normalizeInstanceIdentifier(s);i===a&&o.resolve(r)}return r}onInit(e,n){var i;const r=this.normalizeInstanceIdentifier(n),s=(i=this.onInitCallbacks.get(r))!==null&&i!==void 0?i:new Set;s.add(e),this.onInitCallbacks.set(r,s);const o=this.instances.get(r);return o&&e(o,r),()=>{s.delete(e)}}invokeOnInitCallbacks(e,n){const i=this.onInitCallbacks.get(n);if(i)for(const r of i)try{r(e,n)}catch{}}getOrInitializeService({instanceIdentifier:e,options:n={}}){let i=this.instances.get(e);if(!i&&this.component&&(i=this.component.instanceFactory(this.container,{instanceIdentifier:sue(e),options:n}),this.instances.set(e,i),this.instancesOptions.set(e,n),this.invokeOnInitCallbacks(i,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,i)}catch{}return i||null}normalizeInstanceIdentifier(e=Nh){return this.component?this.component.multipleInstances?e:Nh:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}}function sue(t){return t===Nh?void 0:t}function oue(t){return t.instantiationMode==="EAGER"}/** 3824 * @license 3825 * Copyright 2019 Google LLC 3826 * 3827 * Licensed under the Apache License, Version 2.0 (the "License");
3828 * you may not use this file except in compliance with the License. 3829 * You may obtain a copy of the License at 3830 * 3831 * http://www.apache.org/licenses/LICENSE-2.0 3832 * 3833 * Unless required by applicable law or agreed to in writing, software 3834 * distributed under the License is distributed on an "AS IS" BASIS, 3835 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3836 * See the License for the specific language governing permissions and 3837 * limitations under the License. 3838 */class aue{constructor(e){this.name=e,this.providers=new Map}addComponent(e){const n=this.getProvider(e.name);if(n.isComponentSet())throw new Error(`Component ${e.name} has already been registered with ${this.name}`);n.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);const n=new rue(e,this);return this.providers.set(e,n),n}getProviders(){return Array.from(this.providers.values())}}/** 3839 * @license 3840 * Copyright 2017 Google LLC 3841 * 3842 * Licensed under the Apache License, Version 2.0 (the "License"); 3843 * you may not use this file except in compliance with the License. 3844 * You may obtain a copy of the License at 3845 * 3846 * http://www.apache.org/licenses/LICENSE-2.0 3847 * 3848 * Unless required by applicable law or agreed to in writing, software 3849 * distributed under the License is distributed on an "AS IS" BASIS, 3850 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3851 * See the License for the specific language governing permissions and 3852 * limitations under the License. 3853 */var An;(function(t){t[t.DEBUG=0]="DEBUG",t[t.VERBOSE=1]="VERBOSE",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t[t.SILENT=5]="SILENT"})(An||(An={}));const lue={debug:An.DEBUG,verbose:An.VERBOSE,info:An.INFO,warn:An.WARN,error:An.ERROR,silent:An.SILENT},uue=An.INFO,cue={[An.DEBUG]:"log",[An.VERBOSE]:"log",[An.INFO]:"info",[An.WARN]:"warn",[An.ERROR]:"error"},hue=(t,e,...n)=>{if(e<t.logLevel)return;const i=new Date().toISOString(),r=cue[e];if(r)console[r](`[${i}] ${t.name}:`,...n);else throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`)};class wV{constructor(e){this.name=e,this._logLevel=uue,this._logHandler=hue,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in An))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e=="string"?lue[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if(typeof e!="function")throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,An.DEBUG,...e),this._logHandler(this,An.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,An.VERBOSE,...e),this._logHandler(this,An.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,An.INFO,...e),this._logHandler(this,An.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,An.WARN,...e),this._logHandler(this,An.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,An.ERROR,...e),this._logHandler(this,An.ERROR,...e)}}const fue=(t,e)=>e.some(n=>t instanceof n);let AB,vB;function due(){return AB||(AB=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function pue(){return vB||(vB=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const IV=new WeakMap,jx=new WeakMap,MV=new WeakMap,iq=new WeakMap,yC=new WeakMap;function mue(t){const e=new Promise((n,i)=>{const r=()=>{t.removeEventListener("success",s),t.removeEventListener("error",o)},s=()=>{n(Sc(t.result)),r()},o=()=>{i(t.error),r()};t.addEventListener("success",s),t.addEventListener("error",o)});return e.then(n=>{n instanceof IDBCursor&&IV.set(n,t)}).catch(()=>{}),yC.set(e,t),e}function gue(t){if(jx.has(t))return;const e=new Promise((n,i)=>{const r=()=>{t.removeEventListener("complete",s),t.removeEventListener("error",o),t.removeEventListener("abort",o)},s=()=>{n(),r()},o=()=>{i(t.error||new DOMException("AbortError","AbortError")),r()};t.addEventListener("complete",s),t.addEventListener("error",o),t.addEventListener("abort",o)});jx.set(t,e)}let Xx={get(t,e,n){if(t instanceof IDBTransaction){if(e==="done")return jx.get(t);if(e==="objectStoreNames")return t.objectStoreNames||MV.get(t);if(e==="store")return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return Sc(t[e])},set(t,e,n){return t[e]=n,!0},has(t,e){return t instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in t}};function Aue(t){Xx=t(Xx)}function vue(t){return t===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...n){const i=t.call(rq(this),e,...n);return MV.set(i,e.sort?e.sort():[e]),Sc(i)}:pue().includes(t)?function(...e){return t.apply(rq(this),e),Sc(IV.get(this))}:function(...e){return Sc(t.apply(rq(this),e))}}function yue(t){return typeof t=="function"?vue(t):(t instanceof IDBTransaction&&gue(t),fue(t,due())?new Proxy(t,Xx):t)}function Sc(t){if(t instanceof IDBRequest)return mue(t);if(iq.has(t))return iq.get(t);const e=yue(t);return e!==t&&(iq.set(t,e),yC.set(e,t)),e}const rq=t=>yC.get(t);function que(t,e,{blocked:n,upgrade:i,blocking:r,terminated:s}={}){const o=indexedDB.open(t,e),a=Sc(o);return i&&o.addEventListener("upgradeneeded",l=>{i(Sc(o.result),l.oldVersion,l.newVersion,Sc(o.transaction),l)}),n&&o.addEventListener("blocked",l=>n(l.oldVersion,l.newVersion,l)),a.then(l=>{s&&l.addEventListener("close",()=>s()),r&&l.addEventListener("versionchange",u=>r(u.oldVersion,u.newVersion,u))}).catch(()=>{}),a}const _ue=["get","getKey","getAll","getAllKeys","count"],xue=["put","add","delete","clear"],sq=new Map;function yB(t,e){if(!(t instanceof IDBDatabase&&!(e in t)&&typeof e=="string"))return;if(sq.get(e))return sq.get(e);const n=e.replace(/FromIndex$/,""),i=e!==n,r=xue.includes(n);
3853if(!(n in(i?IDBIndex:IDBObjectStore).prototype)||!(r||_ue.includes(n)))return;const s=async function(o,...a){const l=this.transaction(o,r?"readwrite":"readonly");let u=l.store;return i&&(u=u.index(a.shift())),(await Promise.all([u[n](...a),r&&l.done]))[0]};return sq.set(e,s),s}Aue(t=>({...t,get:(e,n,i)=>yB(e,n)||t.get(e,n,i),has:(e,n)=>!!yB(e,n)||t.has(e,n)}));/** 3854 * @license 3855 * Copyright 2019 Google LLC 3856 * 3857 * Licensed under the Apache License, Version 2.0 (the "License"); 3858 * you may not use this file except in compliance with the License. 3859 * You may obtain a copy of the License at 3860 * 3861 * http://www.apache.org/licenses/LICENSE-2.0 3862 * 3863 * Unless required by applicable law or agreed to in writing, software 3864 * distributed under the License is distributed on an "AS IS" BASIS, 3865 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3866 * See the License for the specific language governing permissions and 3867 * limitations under the License. 3868 */class Eue{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(n=>{if(Sue(n)){const i=n.getImmediate();return`${i.library}/${i.version}`}else return null}).filter(n=>n).join(" ")}}function Sue(t){const e=t.getComponent();return(e==null?void 0:e.type)==="VERSION"}const Yx="@firebase/app",qB="0.9.15";/** 3869 * @license 3870 * Copyright 2019 Google LLC 3871 * 3872 * Licensed under the Apache License, Version 2.0 (the "License"); 3873 * you may not use this file except in compliance with the License. 3874 * You may obtain a copy of the License at 3875 * 3876 * http://www.apache.org/licenses/LICENSE-2.0 3877 * 3878 * Unless required by applicable law or agreed to in writing, software 3879 * distributed under the License is distributed on an "AS IS" BASIS, 3880 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3881 * See the License for the specific language governing permissions and 3882 * limitations under the License. 3883 */const C1=new wV("@firebase/app"),Tue="@firebase/app-compat",Cue="@firebase/analytics-compat",wue="@firebase/analytics",Iue="@firebase/app-check-compat",Mue="@firebase/app-check",Rue="@firebase/auth",bue="@firebase/auth-compat",Pue="@firebase/database",Bue="@firebase/database-compat",Due="@firebase/functions",Lue="@firebase/functions-compat",Nue="@firebase/installations",kue="@firebase/installations-compat",Fue="@firebase/messaging",Oue="@firebase/messaging-compat",Uue="@firebase/performance",zue="@firebase/performance-compat",Vue="@firebase/remote-config",Gue="@firebase/remote-config-compat",Que="@firebase/storage",Hue="@firebase/storage-compat",Wue="@firebase/firestore",$ue="@firebase/firestore-compat",jue="firebase",Xue="10.1.0";/** 3884 * @license 3885 * Copyright 2019 Google LLC 3886 * 3887 * Licensed under the Apache License, Version 2.0 (the "License"); 3888 * you may not use this file except in compliance with the License. 3889 * You may obtain a copy of the License at 3890 * 3891 * http://www.apache.org/licenses/LICENSE-2.0 3892 * 3893 * Unless required by applicable law or agreed to in writing, software 3894 * distributed under the License is distributed on an "AS IS" BASIS, 3895 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3896 * See the License for the specific language governing permissions and 3897 * limitations under the License. 3898 */const Kx="[DEFAULT]",Yue={[Yx]:"fire-core",[Tue]:"fire-core-compat",[wue]:"fire-analytics",[Cue]:"fire-analytics-compat",[Mue]:"fire-app-check",[Iue]:"fire-app-check-compat",[Rue]:"fire-auth",[bue]:"fire-auth-compat",[Pue]:"fire-rtdb",[Bue]:"fire-rtdb-compat",[Due]:"fire-fn",[Lue]:"fire-fn-compat",[Nue]:"fire-iid",[kue]:"fire-iid-compat",[Fue]:"fire-fcm",[Oue]:"fire-fcm-compat",[Uue]:"fire-perf",[zue]:"fire-perf-compat",[Vue]:"fire-rc",[Gue]:"fire-rc-compat",[Que]:"fire-gcs",[Hue]:"fire-gcs-compat",[Wue]:"fire-fst",[$ue]:"fire-fst-compat","fire-js":"fire-js",[jue]:"fire-js-all"};/** 3899 * @license 3900 * Copyright 2019 Google LLC 3901 * 3902 * Licensed under the Apache License, Version 2.0 (the "License"); 3903 * you may not use this file except in compliance with the License. 3904 * You may obtain a copy of the License at 3905 * 3906 * http://www.apache.org/licenses/LICENSE-2.0 3907 * 3908 * Unless required by applicable law or agreed to in writing, softw
3908are 3909 * distributed under the License is distributed on an "AS IS" BASIS, 3910 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3911 * See the License for the specific language governing permissions and 3912 * limitations under the License. 3913 */const xm=new Map,Jx=new Map;function Kue(t,e){try{t.container.addComponent(e)}catch(n){C1.debug(`Component ${e.name} failed to register with FirebaseApp ${t.name}`,n)}}function Em(t){const e=t.name;if(Jx.has(e))return C1.debug(`There were multiple attempts to register component ${e}.`),!1;Jx.set(e,t);for(const n of xm.values())Kue(n,t);return!0}function Jue(t,e){const n=t.container.getProvider("heartbeat").getImmediate({optional:!0});return n&&n.triggerHeartbeat(),t.container.getProvider(e)}/** 3914 * @license 3915 * Copyright 2019 Google LLC 3916 * 3917 * Licensed under the Apache License, Version 2.0 (the "License"); 3918 * you may not use this file except in compliance with the License. 3919 * You may obtain a copy of the License at 3920 * 3921 * http://www.apache.org/licenses/LICENSE-2.0 3922 * 3923 * Unless required by applicable law or agreed to in writing, software 3924 * distributed under the License is distributed on an "AS IS" BASIS, 3925 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3926 * See the License for the specific language governing permissions and 3927 * limitations under the License. 3928 */const Zue={"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invali
3928d-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}."},Tc=new CV("app","Firebase",Zue);/** 3929 * @license 3930 * Copyright 2019 Google LLC 3931 * 3932 * Licensed under the Apache License, Version 2.0 (the "License"); 3933 * you may not use this file except in compliance with the License. 3934 * You may obtain a copy of the License at 3935 * 3936 * http://www.apache.org/licenses/LICENSE-2.0 3937 * 3938 * Unless required by applicable law or agreed to in writing, software 3939 * distributed under the License is distributed on an "AS IS" BASIS, 3940 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3941 * See the License for the specific language governing permissions and 3942 * limitations under the License. 3943 */class ece{constructor(e,n,i){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},n),this._name=n.name,this._automaticDataCollectionEnabled=n.automaticDataCollectionEnabled,this._container=i,this.container.addComponent(new Hd("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw Tc.create("app-deleted",{appName:this._name})}}/** 3944 * @license 3945 * Copyright 2019 Google LLC 3946 * 3947 * Licensed under the Apache License, Version 2.0 (the "License"); 3948 * you may not use this file except in compliance with the License. 3949 * You may obtain a copy of the License at 3950 * 3951 * http://www.apache.org/licenses/LICENSE-2.0 3952 * 3953 * Unless required by applicable law or agreed to in writing, software 3954 * distributed under the License is distributed on an "AS IS" BASIS, 3955 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3956 * See the License for the specific language governing permissions and 3957 * limitations under the License. 3958 */const tce=Xue;function RV(t,e={}){let n=t;typeof e!="object"&&(e={name:e});const i=Object.assign({name:Kx,automaticDataCollectionEnabled:!1},e),r=i.name;if(typeof r!="string"||!r)throw Tc.create("bad-app-name",{appName:String(r)});if(n||(n=TV()),!n)throw Tc.create("no-options");const s=xm.get(r);if(s){if($x(n,s.options)&&$x(i,s.config))return s;throw Tc.create("duplicate-app",{appName:r})}const o=new aue(r);for(const l of Jx.values())o.addComponent(l);const a=new ece(n,i,o);return xm.set(r,a),a}function nce(t=Kx){const e=xm.get(t);if(!e&&t===Kx&&TV())return RV();if(!e)throw Tc.create("no-app",{appName:t});return e}function I0(t,e,n){var i;let r=(i=Yue[t])!==null&&i!==void 0?i:t;n&&(r+=`-${n}`);const s=r.match(/\s|\//),o=e.match(/\s|\//);if(s||o){const a=[`Unable to register library "${r}" with version "${e}":`];s&&a.push(`library name "${r}" contains illegal characters (whitespace or "/")`),s&&o&&a.push("and"),o&&a.push(`version name "${e}" contains illegal characters (whitespace or "/")`),C1.warn(a.join(" "));return}Em(new Hd(`${r}-version`,()=>({library:r,version:e}),"VERSION"))}/** 3959 * @license 3960 * Copyright 2021 Google LLC 3961 * 3962 * Licensed under the Apache License, Version 2.0 (the "License"); 3963 * you may not use this file except in compliance with the License. 3964 * You may obtain a copy of the License at 3965 * 3966 * http://www.apache.org/licenses/LICENSE-2.0 3967 * 3968 * Unless required by applicable law or agreed to in writing, software 3969 * distributed under the License is distributed on an "AS IS" BASIS, 3970 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3971 * See the License for the specific language governing permissions and 3972 * limitations under the License. 3973 */const ice="firebase-heartbeat-database",rce=1,Wd="firebase-heartbeat-store";let oq=null;function bV(){return oq||(oq=que(ice,rce,{upgrade:(t,e)=>{switch(e){case 0:t.createObjectStore(Wd)}}}).catch(t=>{throw Tc.create("idb-open",{originalErrorMessage:t.message})})),oq}async function sce(t){try{return await(await bV()).transaction(Wd).objectStore(Wd).get(PV(t))}catch(e){if(e instanceof k2)C1.warn(e.message);else{const n=Tc.create("idb-get",{originalErrorMessage:e==null?void 0:e.message});C1.warn(n.message)}}}async function _B(t,e){try{const i=(await bV()).transaction(Wd,"readwrite");await i.objectStore(Wd).put(e,PV(t)),await i.done}catch(n){if(n instanceof k2)C1.warn(n.message);else{const i=Tc.create("idb-set",{originalErrorMessage:n==null?void 0:n.message});C1.warn(i.message)}}}function PV(t){return`${t.name}!${t.options.appId}`}/** 3974 * @license 3975 * Copyright 2021 Google LLC 3976 * 3977 * Licensed under the Apache License, Version 2.0 (the "License");
3978 * you may not use this file except in compliance with the License. 3979 * You may obtain a copy of the License at 3980 * 3981 * http://www.apache.org/licenses/LICENSE-2.0 3982 * 3983 * Unless required by applicable law or agreed to in writing, software 3984 * distributed under the License is distributed on an "AS IS" BASIS, 3985 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 3986 * See the License for the specific language governing permissions and 3987 * limitations under the License. 3988 */const oce=1024,ace=30*24*60*60*1e3;class lce{constructor(e){this.container=e,this._heartbeatsCache=null;const n=this.container.getProvider("app").getImmediate();this._storage=new cce(n),this._heartbeatsCachePromise=this._storage.read().then(i=>(this._heartbeatsCache=i,i))}async triggerHeartbeat(){const n=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),i=xB();if(this._heartbeatsCache===null&&(this._heartbeatsCache=await this._heartbeatsCachePromise),!(this._heartbeatsCache.lastSentHeartbeatDate===i||this._heartbeatsCache.heartbeats.some(r=>r.date===i)))return this._heartbeatsCache.heartbeats.push({date:i,agent:n}),this._heartbeatsCache.heartbeats=this._heartbeatsCache.heartbeats.filter(r=>{const s=new Date(r.date).valueOf();return Date.now()-s<=ace}),this._storage.overwrite(this._heartbeatsCache)}async getHeartbeatsHeader(){if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,this._heartbeatsCache===null||this._heartbeatsCache.heartbeats.length===0)return"";const e=xB(),{heartbeatsToSend:n,unsentEntries:i}=uce(this._heartbeatsCache.heartbeats),r=_m(JSON.stringify({version:2,heartbeats:n}));return this._heartbeatsCache.lastSentHeartbeatDate=e,i.length>0?(this._heartbeatsCache.heartbeats=i,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),r}}function xB(){return new Date().toISOString().substring(0,10)}function uce(t,e=oce){const n=[];let i=t.slice();for(const r of t){const s=n.find(o=>o.agent===r.agent);if(s){if(s.dates.push(r.date),EB(n)>e){s.dates.pop();break}}else if(n.push({agent:r.agent,dates:[r.date]}),EB(n)>e){n.pop();break}i=i.slice(1)}return{heartbeatsToSend:n,unsentEntries:i}}class cce{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return Jle()?Zle().then(()=>!0).catch(()=>!1):!1}async read(){return await this._canUseIndexedDBPromise?await sce(this.app)||{heartbeats:[]}:{heartbeats:[]}}async overwrite(e){var n;if(await this._canUseIndexedDBPromise){const r=await this.read();return _B(this.app,{lastSentHeartbeatDate:(n=e.lastSentHeartbeatDate)!==null&&n!==void 0?n:r.lastSentHeartbeatDate,heartbeats:e.heartbeats})}else return}async add(e){var n;if(await this._canUseIndexedDBPromise){const r=await this.read();return _B(this.app,{lastSentHeartbeatDate:(n=e.lastSentHeartbeatDate)!==null&&n!==void 0?n:r.lastSentHeartbeatDate,heartbeats:[...r.heartbeats,...e.heartbeats]})}else return}}function EB(t){return _m(JSON.stringify({version:2,heartbeats:t})).length}/** 3989 * @license 3990 * Copyright 2019 Google LLC 3991 * 3992 * Licensed under the Apache License, Version 2.0 (the "License"); 3993 * you may not use this file except in compliance with the License. 3994 * You may obtain a copy of the License at 3995 * 3996 * http://www.apache.org/licenses/LICENSE-2.0 3997 * 3998 * Unless required by applicable law or agreed to in writing, software 3999 * distributed under the License is distributed on an "AS IS" BASIS, 4000 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4001 * See the License for the specific language governing permissions and 4002 * limitations under the License. 4003 */function hce(t){Em(new Hd("platform-logger",e=>new Eue(e),"PRIVATE")),Em(new Hd("heartbeat",e=>new lce(e),"PRIVATE")),I0(Yx,qB,t),I0(Yx,qB,"esm2017"),I0("fire-js","")}hce("");var fce=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Oe,qC=qC||{},Pt=fce||self;function _g(t){var e=typeof t;return e=e!="object"?e:t?Array.isArray(t)?"array":e:"null",e=="array"||e=="object"&&typeof t.length=="number"}function Q4(t){var e=typeof t;return e=="object"&&t!=null||e=="function"}function dce(t){return Object.prototype.hasOwnProperty.call(t,aq)&&t[aq]||(t[aq]=++pce)}var aq="closure_uid_"+(1e9*Math.random()>>>0),pce=0;function mce(t,e,n){return t.call.apply(t.bind,arguments)}function gce(t,e,n){if(!t)throw Error();if(2<arguments.length){var i=Array.prototype.slice.call(arguments,2);return function(){var r=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(r,i),t.apply(e,r)}}return function(){return t.apply(e,arguments)}}function Or(t,e,n){return Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?Or=mce:Or=gce,Or.apply(null,arguments)}
4003function R7(t,e){var n=Array.prototype.slice.call(arguments,1);return function(){var i=n.slice();return i.push.apply(i,arguments),t.apply(this,i)}}function ur(t,e){function n(){}n.prototype=e.prototype,t.$=e.prototype,t.prototype=new n,t.prototype.constructor=t,t.ac=function(i,r,s){for(var o=Array(arguments.length-2),a=2;a<arguments.length;a++)o[a-2]=arguments[a];return e.prototype[r].apply(i,o)}}function nh(){this.s=this.s,this.o=this.o}var Ace=0;nh.prototype.s=!1;nh.prototype.sa=function(){!this.s&&(this.s=!0,this.N(),Ace!=0)&&dce(this)};nh.prototype.N=function(){if(this.o)for(;this.o.length;)this.o.shift()()};const BV=Array.prototype.indexOf?function(t,e){return Array.prototype.indexOf.call(t,e,void 0)}:function(t,e){if(typeof t=="string")return typeof e!="string"||e.length!=1?-1:t.indexOf(e,0);for(let n=0;n<t.length;n++)if(n in t&&t[n]===e)return n;return-1};function _C(t){const e=t.length;if(0<e){const n=Array(e);for(let i=0;i<e;i++)n[i]=t[i];return n}return[]}function SB(t,e){for(let n=1;n<arguments.length;n++){const i=arguments[n];if(_g(i)){const r=t.length||0,s=i.length||0;t.length=r+s;for(let o=0;o<s;o++)t[r+o]=i[o]}else t.push(i)}}function Ur(t,e){this.type=t,this.g=this.target=e,this.defaultPrevented=!1}Ur.prototype.h=function(){this.defaultPrevented=!0};var vce=function(){if(!Pt.addEventListener||!Object.defineProperty)return!1;var t=!1,e=Object.defineProperty({},"passive",{get:function(){t=!0}});try{Pt.addEventListener("test",()=>{},e),Pt.removeEventListener("test",()=>{},e)}catch{}return t}();function $d(t){return/^[\s\xa0]*$/.test(t)}function xg(){var t=Pt.navigator;return t&&(t=t.userAgent)?t:""}function ja(t){return xg().indexOf(t)!=-1}function xC(t){return xC[" "](t),t}xC[" "]=function(){};function yce(t,e){var n=hhe;return Object.prototype.hasOwnProperty.call(n,t)?n[t]:n[t]=e(t)}var qce=ja("Opera"),t2=ja("Trident")||ja("MSIE"),DV=ja("Edge"),Zx=DV||t2,LV=ja("Gecko")&&!(xg().toLowerCase().indexOf("webkit")!=-1&&!ja("Edge"))&&!(ja("Trident")||ja("MSIE"))&&!ja("Edge"),_ce=xg().toLowerCase().indexOf("webkit")!=-1&&!ja("Edge");function NV(){var t=Pt.document;return t?t.documentMode:void 0}var eE;e:{var lq="",uq=function(){var t=xg();if(LV)return/rv:([^\);]+)(\)|;)/.exec(t);if(DV)return/Edge\/([\d\.]+)/.exec(t);if(t2)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(t);if(_ce)return/WebKit\/(\S+)/.exec(t);if(qce)return/(?:Version)[ \/]?(\S+)/.exec(t)}();if(uq&&(lq=uq?uq[1]:""),t2){var cq=NV();if(cq!=null&&cq>parseFloat(lq)){eE=String(cq);break e}}eE=lq}var tE;if(Pt.document&&t2){var TB=NV();tE=TB||parseInt(eE,10)||void 0}else tE=void 0;var xce=tE;
vendor: 4,365 bytes, line 4003
4003function jd(t,e){if(Ur.call(this,t?t.type:""),this.relatedTarget=this.g=this.target=null,this.button=this.screenY=this.screenX=this.clientY=this.clientX=0,this.key="",this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1,this.state=null,this.pointerId=0,this.pointerType="",this.i=null,t){var n=this.type=t.type,i=t.changedTouches&&t.changedTouches.length?t.changedTouches[0]:null;if(this.target=t.target||t.srcElement,this.g=e,e=t.relatedTarget){if(LV){e:{try{xC(e.nodeName);var r=!0;break e}catch{}r=!1}r||(e=null)}}else n=="mouseover"?e=t.fromElement:n=="mouseout"&&(e=t.toElement);this.relatedTarget=e,i?(this.clientX=i.clientX!==void 0?i.clientX:i.pageX,this.clientY=i.clientY!==void 0?i.clientY:i.pageY,this.screenX=i.screenX||0,this.screenY=i.screenY||0):(this.clientX=t.clientX!==void 0?t.clientX:t.pageX,this.clientY=t.clientY!==void 0?t.clientY:t.pageY,this.screenX=t.screenX||0,this.screenY=t.screenY||0),this.button=t.button,this.key=t.key||"",this.ctrlKey=t.ctrlKey,this.altKey=t.altKey,this.shiftKey=t.shiftKey,this.metaKey=t.metaKey,this.pointerId=t.pointerId||0,this.pointerType=typeof t.pointerType=="string"?t.pointerType:Ece[t.pointerType]||"",this.state=t.state,this.i=t,t.defaultPrevented&&jd.$.h.call(this)}}ur(jd,Ur);var Ece={2:"touch",3:"pen",4:"mouse"};jd.prototype.h=function(){jd.$.h.call(this);var t=this.i;t.preventDefault?t.preventDefault():t.returnValue=!1};var H4="closure_listenable_"+(1e6*Math.random()|0),Sce=0;function Tce(t,e,n,i,r){this.listener=t,this.proxy=null,this.src=e,this.type=n,this.capture=!!i,this.la=r,this.key=++Sce,this.fa=this.ia=!1}function Eg(t){t.fa=!0,t.listener=null,t.proxy=null,t.src=null,t.la=null}function EC(t,e,n){for(const i in t)e.call(n,t[i],i,t)}function Cce(t,e){for(const n in t)e.call(void 0,t[n],n,t)}function kV(t){const e={};for(const n in t)e[n]=t[n];return e}const CB="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function FV(t,e){let n,i;for(let r=1;r<arguments.length;r++){i=arguments[r];for(n in i)t[n]=i[n];for(let s=0;s<CB.length;s++)n=CB[s],Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}}function Sg(t){this.src=t,this.g={},this.h=0}Sg.prototype.add=function(t,e,n,i,r){var s=t.toString();t=this.g[s],t||(t=this.g[s]=[],this.h++);var o=iE(t,e,i,r);return-1<o?(e=t[o],n||(e.ia=!1)):(e=new Tce(e,this.src,s,!!i,r),e.ia=n,t.push(e)),e};function nE(t,e){var n=e.type;if(n in t.g){var i=t.g[n],r=BV(i,e),s;(s=0<=r)&&Array.prototype.splice.call(i,r,1),s&&(Eg(e),t.g[n].length==0&&(delete t.g[n],t.h--))}}function iE(t,e,n,i){for(var r=0;r<t.length;++r){var s=t[r];if(!s.fa&&s.listener==e&&s.capture==!!n&&s.la==i)return r}return-1}var SC="closure_lm_"+(1e6*Math.random()|0),hq={};function OV(t,e,n,i,r){if(i&&i.once)return zV(t,e,n,i,r);if(Array.isArray(e)){for(var s=0;s<e.length;s++)OV(t,e[s],n,i,r);return null}return n=wC(n),t&&t[H4]?t.O(e,n,Q4(i)?!!i.capture:!!i,r):UV(t,e,n,!1,i,r)}function UV(t,e,n,i,r,s){if(!e)throw Error("Invalid event type");var o=Q4(r)?!!r.capture:!!r,a=CC(t);if(a||(t[SC]=a=new Sg(t)),n=a.add(e,n,i,o,s),n.proxy)return n;if(i=wce(),n.proxy=i,i.src=t,i.listener=n,t.addEventListener)vce||(r=o),r===void 0&&(r=!1),t.addEventListener(e.toString(),i,r);else if(t.attachEvent)t.attachEvent(GV(e.toString()),i);else if(t.addListener&&t.removeListener)t.addListener(i);else throw Error("addEventListener and attachEvent are unavailable.");return n}function wce(){function t(n){return e.call(t.src,t.listener,n)}const e=Ice;return t}function zV(t,e,n,i,r){if(Array.isArray(e)){for(var s=0;s<e.length;s++)zV(t,e[s],n,i,r);return null}return n=wC(n),t&&t[H4]?t.P(e,n,Q4(i)?!!i.capture:!!i,r):UV(t,e,n,!0,i,r)}function VV(t,e,n,i,r){if(Array.isArray(e))for(var s=0;s<e.length;s++)VV(t,e[s],n,i,r);else i=Q4(i)?!!i.capture:!!i,n=wC(n),t&&t[H4]?(t=t.i,e=String(e).toString(),e in t.g&&(s=t.g[e],n=iE(s,n,i,r),-1<n&&(Eg(s[n]),Array.prototype.splice.call(s,n,1),s.length==0&&(delete t.g[e],t.h--)))):t&&(t=CC(t))&&(e=t.g[e.toString()],t=-1,e&&(t=iE(e,n,i,r)),(n=-1<t?e[t]:null)&&TC(n))}function TC(t){if(typeof t!="number"&&t&&!t.fa){var e=t.src;if(e&&e[H4])nE(e.i,t);else{var n=t.type,i=t.proxy;e.removeEventListener?e.removeEventListener(n,i,t.capture):e.detachEvent?e.detachEvent(GV(n),i):e.addListener&&e.removeListener&&e.removeListener(i),(n=CC(e))?(nE(n,t),n.h==0&&(n.src=null,e[SC]=null)):Eg(t)}
4003}}function GV(t){return t in hq?hq[t]:hq[t]="on"+t}function Ice(t,e){if(t.fa)t=!0;else{e=new jd(e,this);var n=t.listener,i=t.la||t.src;t.ia&&TC(t),t=n.call(i,e)}return t}function CC(t){return t=t[SC],t instanceof Sg?t:null}var fq="__closure_events_fn_"+(1e9*Math.random()>>>0);function wC(t){return typeof t=="function"?t:(t[fq]||(t[fq]=function(e){return t.handleEvent(e)}),t[fq])}function ar(){nh.call(this),this.i=new Sg(this),this.S=this,this.J=null}ur(ar,nh);ar.prototype[H4]=!0;ar.prototype.removeEventListener=function(t,e,n,i){VV(this,t,e,n,i)};function vr(t,e){var n,i=t.J;if(i)for(n=[];i;i=i.J)n.push(i);if(t=t.S,i=e.type||e,typeof e=="string")e=new Ur(e,t);else if(e instanceof Ur)e.target=e.target||t;else{var r=e;e=new Ur(i,t),FV(e,r)}if(r=!0,n)for(var s=n.length-1;0<=s;s--){var o=e.g=n[s];r=b7(o,i,!0,e)&&r}if(o=e.g=t,r=b7(o,i,!0,e)&&r,r=b7(o,i,!1,e)&&r,n)for(s=0;s<n.length;s++)o=e.g=n[s],r=b7(o,i,!1,e)&&r}ar.prototype.N=function(){if(ar.$.N.call(this),this.i){var t=this.i,e;for(e in t.g){for(var n=t.g[e],i=0;i<n.length;i++)Eg(n[i]);delete t.g[e],t.h--}}this.J=null};ar.prototype.O=function(t,e,n,i){return this.i.add(String(t),e,!1,n,i)};ar.prototype.P=function(t,e,n,i){return this.i.add(String(t),e,!0,n,i)};function b7(t,e,n,i){if(e=t.i.g[String(e)],!e)return!0;e=e.concat();for(var r=!0,s=0;s<e.length;++s){var o=e[s];if(o&&!o.fa&&o.capture==n){var a=o.listener,l=o.la||o.src;o.ia&&nE(t.i,o),r=a.call(l,i)!==!1&&r}}return r&&!i.defaultPrevented}var IC=Pt.JSON.stringify;class Mce{constructor(e,n){this.i=e,this.j=n,this.h=0,this.g=null}get(){let e;return 0<this.h?(this.h--,e=this.g,this.g=e.next,e.next=null):e=this.i(),e}}function Rce(){var t=MC;let e=null;return t.g&&(e=t.g,t.g=t.g.next,t.g||(t.h=null),e.next=null),e}class bce{constructor(){this.h=this.g=null}add(e,n){const i=QV.get();i.set(e,n),this.h?this.h.next=i:this.g=i,this.h=i}}var QV=new Mce(()=>new Pce,t=>t.reset());class Pce{constructor(){this.next=this.g=this.h=null}set(e,n){this.h=e,this.g=n,this.next=null}reset(){this.next=this.g=this.h=null}}function Bce(t){var e=1;t=t.split(":");const n=[];for(;0<e&&t.length;)n.push(t.shift()),e--;return t.length&&n.push(t.join(":")),n}function Dce(t){Pt.setTimeout(()=>{throw t},0)}let Xd,Yd=!1,MC=new bce,HV=()=>{const t=Pt.Promise.resolve(void 0);Xd=()=>{t.then(Lce)}};var Lce=()=>{for(var t;t=Rce();){try{t.h.call(t.g)}catch(n){Dce(n)}var e=QV;e.j(t),100>e.h&&(e.h++,t.next=e.g,e.g=t)}Yd=!1};function Tg(t,e){ar.call(this),this.h=t||1,this.g=e||Pt,this.j=Or(this.qb,this),this.l=Date.now()}ur(Tg,ar);Oe=Tg.prototype;Oe.ga=!1;Oe.T=null;Oe.qb=function(){if(this.ga){var t=Date.now()-this.l;0<t&&t<.8*this.h?this.T=this.g.setTimeout(this.j,this.h-t):(this.T&&(this.g.clearTimeout(this.T),this.T=null),vr(this,"tick"),this.ga&&(RC(this),this.start()))}};Oe.start=function(){this.ga=!0,this.T||(this.T=this.g.setTimeout(this.j,this.h),this.l=Date.now())};function RC(t){t.ga=!1,t.T&&(t.g.clearTimeout(t.T),t.T=null)}Oe.N=function(){Tg.$.N.call(this),RC(this),delete this.g};function bC(t,e,n){if(typeof t=="function")n&&(t=Or(t,n));else if(t&&typeof t.handleEvent=="function")t=Or(t.handleEvent,t);else throw Error("Invalid listener argument");return 2147483647<Number(e)?-1:Pt.setTimeout(t,e||0)}function WV(t){t.g=bC(()=>{t.g=null,t.i&&(t.i=!1,WV(t))},t.j);const e=t.h;t.h=null,t.m.apply(null,e)}class Nce extends nh{constructor(e,n){super(),this.m=e,this.j=n,this.h=null,this.i=!1,this.g=null}l(e){this.h=arguments,this.g?this.i=!0:WV(this)}N(){super.N(),this.g&&(Pt.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function Kd(t){nh.call(this),this.h=t,this.g={}}ur(Kd,nh);var wB=[];function $V(t,e,n,i){Array.isArray(n)||(n&&(wB[0]=n.toString()),n=wB);for(var r=0;r<n.length;r++){var s=OV(e,n[r],i||t.handleEvent,!1,t.h||t);if(!s)break;t.g[s.key]=s}}function jV(t){EC(t.g,function(e,n){this.g.hasOwnProperty(n)&&TC(e)},t),t.g={}}Kd.prototype.N=function(){Kd.$.N.call(this),jV(this)};Kd.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};function Cg(){this.g=!0}Cg.prototype.Ea=function(){this.g=!1};function kce(t,e,n,i,r,s){t.info(function(){if(t.g)if(s)for(var o="",a=s.split("&"),l=0;l<a.length;l++){var u=a[l].split("=");if(1<u.length){var c=u[0];u=u[1];var h=c.split("_");o=2<=h.length&&h[1]=="type"?o+(c+"="+u+"&"):o+(c+"=redacted&")}}else o=null;else o=s;return"XMLHTTP REQ ("+i+") [attempt "+r+"]: "+e+` 4004`+n+` 4005`+o})}function Fce(t,e,n,i,r,s,o){t.info(function(){return"XMLHTTP RESP ("+i+") [ attempt "+r+"]: "+e+` 4006`+n+` 4007`+s+" "+o})}function c0(t,e,n,i){t.info(function(){return"XMLHTTP TEXT ("+e+"): "+Uce(t,n)+(i?" "+i:"")})}function Oce(t,e){t.info(function(){return"TIMEOUT: "+e})}Cg.prototype.info=function(){};function Uce(t,e){if(!t.g)return e;if(!e)return null;try{var n=JSON.parse(e);if(n){for(t=0;t<n.length;t++)if(Array.isArray(n[t])){var i=n[t];if(!(2>i.length)){var r=i[1];if(Array.isArray(r)&&!(1>r.length)){var s=r[0];if(s!="noop"&&s!="stop"&&s!="close")for(var o=1;o<r.length;o++)r[o]=""}}}}return IC(n)}catch{return e}}var H1={},IB=null;function wg(){return IB=IB||new ar}H1.Ta="serverreachability";function XV(t){Ur.call(this,H1.Ta,t)}ur(XV,Ur);function Jd(t){const e=wg();vr(e,new XV(e))}H1.STAT_EVENT="statevent";function YV(t,e){Ur.call(this,H1.STAT_EVENT,t),this.stat=e}ur(YV,Ur);function ns(t){const e=wg();vr(e,new YV(e,t))}H1.Ua="timingevent";function KV(t,e){Ur.call(this,H1.Ua,t),this.size=e}ur(KV,Ur);function W4(t,e){if(typeof t!="function")throw Error("Fn must not be null and must be a function");return Pt.setTimeout(function(){t()},e)}var Ig={NO_ERROR:0,rb:1,Eb:2,Db:3,yb:4,Cb:5,Fb:6,Qa:7,TIMEOUT:8,Ib:9}
4007,JV={wb:"complete",Sb:"success",Ra:"error",Qa:"abort",Kb:"ready",Lb:"readystatechange",TIMEOUT:"timeout",Gb:"incrementaldata",Jb:"progress",zb:"downloadprogress",$b:"uploadprogress"};function PC(){}PC.prototype.h=null;function MB(t){return t.h||(t.h=t.i())}function ZV(){}var $4={OPEN:"a",vb:"b",Ra:"c",Hb:"d"};function BC(){Ur.call(this,"d")}ur(BC,Ur);function DC(){Ur.call(this,"c")}ur(DC,Ur);var rE;function Mg(){}ur(Mg,PC);Mg.prototype.g=function(){return new XMLHttpRequest};Mg.prototype.i=function(){return{}};rE=new Mg;function j4(t,e,n,i){this.l=t,this.j=e,this.m=n,this.W=i||1,this.U=new Kd(this),this.P=zce,t=Zx?125:void 0,this.V=new Tg(t),this.I=null,this.i=!1,this.s=this.A=this.v=this.L=this.G=this.Y=this.B=null,this.F=[],this.g=null,this.C=0,this.o=this.u=null,this.ca=-1,this.J=!1,this.O=0,this.M=null,this.ba=this.K=this.aa=this.S=!1,this.h=new eG}function eG(){this.i=null,this.g="",this.h=!1}var zce=45e3,sE={},Sm={};Oe=j4.prototype;Oe.setTimeout=function(t){this.P=t};function oE(t,e,n){t.L=1,t.v=bg(du(e)),t.s=n,t.S=!0,tG(t,null)}function tG(t,e){t.G=Date.now(),X4(t),t.A=du(t.v);var n=t.A,i=t.W;Array.isArray(i)||(i=[String(i)]),uG(n.i,"t",i),t.C=0,n=t.l.J,t.h=new eG,t.g=RG(t.l,n?e:null,!t.s),0<t.O&&(t.M=new Nce(Or(t.Pa,t,t.g),t.O)),$V(t.U,t.g,"readystatechange",t.nb),e=t.I?kV(t.I):{},t.s?(t.u||(t.u="POST"),e["Content-Type"]="application/x-www-form-urlencoded",t.g.ha(t.A,t.u,t.s,e)):(t.u="GET",t.g.ha(t.A,t.u,null,e)),Jd(),kce(t.j,t.u,t.A,t.m,t.W,t.s)}Oe.nb=function(t){t=t.target;const e=this.M;e&&Za(t)==3?e.l():this.Pa(t)};Oe.Pa=function(t){try{if(t==this.g)e:{const c=Za(this.g);var e=this.g.Ia();const h=this.g.da();if(!(3>c)&&(c!=3||Zx||this.g&&(this.h.h||this.g.ja()||BB(this.g)))){this.J||c!=4||e==7||(e==8||0>=h?Jd(3):Jd(2)),Rg(this);var n=this.g.da();this.ca=n;t:if(nG(this)){var i=BB(this.g);t="";var r=i.length,s=Za(this.g)==4;if(!this.h.i){if(typeof TextDecoder>"u"){e1(this),B5(this);var o="";break t}this.h.i=new Pt.TextDecoder}for(e=0;e<r;e++)this.h.h=!0,t+=this.h.i.decode(i[e],{stream:s&&e==r-1});i.splice(0,r),this.h.g+=t,this.C=0,o=this.h.g}else o=this.g.ja();if(this.i=n==200,Fce(this.j,this.u,this.A,this.m,this.W,c,n),this.i){if(this.aa&&
4007!this.K){t:{if(this.g){var a,l=this.g;if((a=l.g?l.g.getResponseHeader("X-HTTP-Initial-Response"):null)&&!$d(a)){var u=a;break t}}u=null}if(n=u)c0(this.j,this.m,n,"Initial handshake response via X-HTTP-Initial-Response"),this.K=!0,aE(this,n);else{this.i=!1,this.o=3,ns(12),e1(this),B5(this);break e}}this.S?(iG(this,c,o),Zx&&this.i&&c==3&&($V(this.U,this.V,"tick",this.mb),this.V.start())):(c0(this.j,this.m,o,null),aE(this,o)),c==4&&e1(this),this.i&&!this.J&&(c==4?CG(this.l,this):(this.i=!1,X4(this)))}else lhe(this.g),n==400&&0<o.indexOf("Unknown SID")?(this.o=3,ns(12)):(this.o=0,ns(13)),e1(this),B5(this)}}}catch{}finally{}};function nG(t){return t.g?t.u=="GET"&&t.L!=2&&t.l.Ha:!1}function iG(t,e,n){let i=!0,r;for(;!t.J&&t.C<n.length;)if(r=Vce(t,n),r==Sm){e==4&&(t.o=4,ns(14),i=!1),c0(t.j,t.m,null,"[Incomplete Response]");break}else if(r==sE){t.o=4,ns(15),c0(t.j,t.m,n,"[Invalid Chunk]"),i=!1;break}else c0(t.j,t.m,r,null),aE(t,r);nG(t)&&r!=Sm&&r!=sE&&(t.h.g="",t.C=0),e!=4||n.length!=0||t.h.h||(t.o=1,ns(16),i=!1),t.i=t.i&&i,i?0<n.length&&!t.ba&&(t.ba=!0,e=t.l,e.g==t&&e.ca&&!e.M&&(e.l.info("Great, no buffering proxy detected. Bytes received: "+n.length),UC(e),e.M=!0,ns(11))):(c0(t.j,t.m,n,"[Invalid Chunked Response]"),e1(t),B5(t))}Oe.mb=function(){if(this.g){var t=Za(this.g),e=this.g.ja();this.C<e.length&&(Rg(this),iG(this,t,e),this.i&&t!=4&&X4(this))}};function Vce(t,e){var n=t.C,i=e.indexOf(` 4008`,n);return i==-1?Sm:(n=Number(e.substring(n,i)),isNaN(n)?sE:(i+=1,i+n>e.length?Sm:(e=e.slice(i,i+n),t.C=i+n,e)))}Oe.cancel=function(){this.J=!0,e1(this)};function X4(t){t.Y=Date.now()+t.P,rG(t,t.P)}function rG(t,e){if(t.B!=null)throw Error("WatchDog timer not null");t.B=W4(Or(t.lb,t),e)}function Rg(t){t.B&&(Pt.clearTimeout(t.B),t.B=null)}Oe.lb=function(){this.B=null;const t=Date.now();0<=t-this.Y?(Oce(this.j,this.A),this.L!=2&&(Jd(),ns(17)),e1(this),this.o=2,B5(this)):rG(this,this.Y-t)};function B5(t){t.l.H==0||t.J||CG(t.l,t)}function e1(t){Rg(t);var e=t.M;e&&typeof e.sa=="function"&&e.sa(),t.M=null,RC(t.V),jV(t.U),t.g&&(e=t.g,t.g=null,e.abort(),e.sa())}function aE(t,e){try{var n=t.l;if(n.H!=0&&(n.g==t||lE(n.i,t))){if(!t.K&&lE(n.i,t)&&n.H==3){try{var i=n.Ja.g.parse(e)}catch{i=null}if(Array.isArray(i)&&i.length==3){var r=i;if(r[0]==0){e:if(!n.u){if(n.g)if(n.g.G+3e3<t.G)wm(n),Dg(n);else break e;OC(n),ns(18)}}else n.Fa=r[1],0<n.Fa-n.V&&37500>r[2]&&n.G&&n.A==0&&!n.v&&(n.v=W4(Or(n.ib,n),6e3));if(1>=fG(n.i)&&n.oa){try{n.oa()}catch{}n.oa=void 0}}else t1(n,11)}else if((t.K||n.g==t)&&wm(n),!$d(e))for(r=n.Ja.g.parse(e),e=0;e<r.length;e++){let u=r[e];if(n.V=u[0],u=u[1],n.H==2)if(u[0]=="c"){n.K=u[1],n.pa=u[2];const c=u[3];c!=null&&(n.ra=c,n.l.info("VER="+n.ra));const h=u[4];h!=null&&(n.Ga=h,n.l.info("SVER="+n.Ga));const f=u[5];f!=null&&typeof f=="number"&&0<f&&(i=1.5*f,n.L=i,n.l.info("backChannelRequestTimeoutMs_="+i)),i=n;const m=t.g;if(m){const g=m.g?m.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(g){var s=i.i;s.g||g.indexOf("spdy")==-1&&g.indexOf("quic")==-1&&g.indexOf("h2")==-1||(s.j=s.l,s.g=new Set,s.h&&(LC(s,s.h),s.h=null))}if(i.F){const v=m.g?m.g.getResponseHeader("X-HTTP-Session-Id"):null;v&&(i.Da=v,zn(i.I,i.F,v))}}n.H=3,n.h&&n.h.Ba(),n.ca&&(n.S=Date.now()-t.G,n.l.info("Handshake RTT: "+n.S+"ms")),i=n;var o=t;if(i.wa=MG(i,i.J?i.pa:null,i.Y),o.K){dG(i.i,o);var a=o,l=i.L;l&&a.setTimeout(l),a.B&&(Rg(a),X4(a)),i.g=o}else SG(i);0<n.j.length&&Lg(n)}else u[0]!="stop"&&u[0]!="close"||t1(n,7);else n.H==3&&(u[0]=="stop"||u[0]=="close"?u[0]=="stop"?t1(n,7):FC(n):u[0]!="noop"&&n.h&&n.h.Aa(u),n.A=0)}}Jd(4)}catch{}}function Gce(t){if(t.Z&&typeof t.Z=="function")return t.Z();if(typeof Map<"u"&&t instanceof Map||typeof Set<"u"&&t instanceof Set)return Array.from(t.values());if(typeof t=="string")return t.split("");if(_g(t)){for(var e=[],n=t.length,i=0;i<n;i++)e.push(t[i]);return e}e=[],n=0;for(i in t)e[n++]=t[i];return e}function Qce(t){if(t.ta&&typeof t.ta=="function")return t.ta();if(!t.Z||typeof t.Z!="function"){if(typeof Map<"u"&&t instanceof Map)return Array.from(t.keys());if(!(typeof Set<"u"&&t instanceof Set)){if(_g(t)||typeof t=="string"){var e=[];t=t.length;for(var n=0;n<t;n++)e.push(n);return e}e=[],n=0;for(const i in t)e[n++]=i;return e}}}function sG(t,e){if(t.forEach&&typeof t.forEach=="function")t.forEach(e,void 0);else if(_g(t)||typeof t=="string")Array.prototype.forEach.call(t,e,void 0);else for(var n=Qce(t),i=Gce(t),r=i.length,s=0;s<r;s++)e.call(void 0,i[s],n&&n[s],t)}var oG=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function Hce(t,e){if(t){t=t.split("&");for(var n=0;n<t.length;n++){var i=t[n].indexOf("="),r=null;if(0<=i){var s=t[n].substring(0,i);r=t[n].substring(i+1)}else s=t[n];e(s,r?decodeURIComponent(r.replace(/\+/g," ")):"")}}}function h1(t){if(this.g=this.s=this.j="",this.m=null,this.o=this.l="",this.h=!1,t instanceof h1){this.h=t.h,Tm(this,t.j),this.s=t.s,this.g=t.g,Cm(this,t.m),this.l=t.l;var e=t.i,n=new Zd;n.i=e.i,e.g&&(n.g=new Map(e.g),n.h=e.h),RB(this,n),this.o=t.o}else t&&(e=String(t).match(oG))?(this.h=!1,Tm(this,e[1]||"",!0),this.s=r5(e[2]||""),this.g=r5(e[3]||"",!0),Cm(this,e[4]),this.l=r5(e[5]||"",!0),RB(this,e[6]||"",!0),this.o=r5(e[7]||"")):(this.h=!1,this.i=new Zd(null,this.h))}h1.prototype.toString=function(){var t=[],e=this.j;e&&t.push(s5(e,bB,!0),":");var n=this.g;
vendor: 30,944 bytes, lines 4008-4011
4008return(n||e=="file")&&(t.push("//"),(e=this.s)&&t.push(s5(e,bB,!0),"@"),t.push(encodeURIComponent(String(n)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),n=this.m,n!=null&&t.push(":",String(n))),(n=this.l)&&(this.g&&n.charAt(0)!="/"&&t.push("/"),t.push(s5(n,n.charAt(0)=="/"?jce:$ce,!0))),(n=this.i.toString())&&t.push("?",n),(n=this.o)&&t.push("#",s5(n,Yce)),t.join("")};function du(t){return new h1(t)}function Tm(t,e,n){t.j=n?r5(e,!0):e,t.j&&(t.j=t.j.replace(/:$/,""))}function Cm(t,e){if(e){if(e=Number(e),isNaN(e)||0>e)throw Error("Bad port number "+e);t.m=e}else t.m=null}function RB(t,e,n){e instanceof Zd?(t.i=e,Kce(t.i,t.h)):(n||(e=s5(e,Xce)),t.i=new Zd(e,t.h))}function zn(t,e,n){t.i.set(e,n)}function bg(t){return zn(t,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),t}function r5(t,e){return t?e?decodeURI(t.replace(/%25/g,"%2525")):decodeURIComponent(t):""}function s5(t,e,n){return typeof t=="string"?(t=encodeURI(t).replace(e,Wce),n&&(t=t.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),t):null}function Wce(t){return t=t.charCodeAt(0),"%"+(t>>4&15).toString(16)+(t&15).toString(16)}var bB=/[#\/\?@]/g,$ce=/[#\?:]/g,jce=/[#\?]/g,Xce=/[#\?@]/g,Yce=/#/g;function Zd(t,e){this.h=this.g=null,this.i=t||null,this.j=!!e}function ih(t){t.g||(t.g=new Map,t.h=0,t.i&&Hce(t.i,function(e,n){t.add(decodeURIComponent(e.replace(/\+/g," ")),n)}))}Oe=Zd.prototype;Oe.add=function(t,e){ih(this),this.i=null,t=F2(this,t);var n=this.g.get(t);return n||this.g.set(t,n=[]),n.push(e),this.h+=1,this};function aG(t,e){ih(t),e=F2(t,e),t.g.has(e)&&(t.i=null,t.h-=t.g.get(e).length,t.g.delete(e))}function lG(t,e){return ih(t),e=F2(t,e),t.g.has(e)}Oe.forEach=function(t,e){ih(this),this.g.forEach(function(n,i){n.forEach(function(r){t.call(e,r,i,this)},this)},this)};Oe.ta=function(){ih(this);const t=Array.from(this.g.values()),e=Array.from(this.g.keys()),n=[];for(let i=0;i<e.length;i++){const r=t[i];for(let s=0;s<r.length;s++)n.push(e[i])}return n};Oe.Z=function(t){ih(this);let e=[];if(typeof t=="string")lG(this,t)&&(e=e.concat(this.g.get(F2(this,t))));else{t=Array.from(this.g.values());for(let n=0;n<t.length;n++)e=e.concat(t[n])}return e};Oe.set=function(t,e){return ih(this),this.i=null,t=F2(this,t),lG(this,t)&&(this.h-=this.g.get(t).length),this.g.set(t,[e]),this.h+=1,this};Oe.get=function(t,e){return t?(t=this.Z(t),0<t.length?String(t[0]):e):e};function uG(t,e,n){aG(t,e),0<n.length&&(t.i=null,t.g.set(F2(t,e),_C(n)),t.h+=n.length)}Oe.toString=function(){if(this.i)return this.i;if(!this.g)return"";const t=[],e=Array.from(this.g.keys());for(var n=0;n<e.length;n++){var i=e[n];const s=encodeURIComponent(String(i)),o=this.Z(i);for(i=0;i<o.length;i++){var r=s;o[i]!==""&&(r+="="+encodeURIComponent(String(o[i]))),t.push(r)}}return this.i=t.join("&")};function F2(t,e){return e=String(e),t.j&&(e=e.toLowerCase()),e}function Kce(t,e){e&&!t.j&&(ih(t),t.i=null,t.g.forEach(function(n,i){var r=i.toLowerCase();i!=r&&(aG(this,i),uG(this,r,n))},t)),t.j=e}var Jce=class{constructor(t,e){this.g=t,this.map=e}};function cG(t){this.l=t||Zce,Pt.PerformanceNavigationTiming?(t=Pt.performance.getEntriesByType("navigation"),t=0<t.length&&(t[0].nextHopProtocol=="hq"||t[0].nextHopProtocol=="h2")):t=!!(Pt.g&&Pt.g.Ka&&Pt.g.Ka()&&Pt.g.Ka().ec),this.j=t?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}var Zce=10;function hG(t){return t.h?!0:t.g?t.g.size>=t.j:!1}function fG(t){return t.h?1:t.g?t.g.size:0}function lE(t,e){return t.h?t.h==e:t.g?t.g.has(e):!1}function LC(t,e){t.g?t.g.add(e):t.h=e}function dG(t,e){t.h&&t.h==e?t.h=null:t.g&&t.g.has(e)&&t.g.delete(e)}cG.prototype.cancel=function(){if(this.i=pG(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(const t of this.g.values())t.cancel();this.g.clear()}};function pG(t){if(t.h!=null)return t.i.concat(t.h.F);if(t.g!=null&&t.g.size!==0){let e=t.i;for(const n of t.g.values())e=e.concat(n.F);return e}return _C(t.i)}var ehe=class{stringify(t){return Pt.JSON.stringify(t,void 0)}parse(t){return Pt.JSON.parse(t,void 0)}};function the(){this.g=new ehe}function nhe(t,e,n){const i=n||"";try{sG(t,function(r,s){let o=r;Q4(r)&&(o=IC(r)),e.push(i+s+"="+encodeURIComponent(o))})}catch(r){throw e.push(i+"type="+encodeURIComponent("_badmap")),r}}function ihe(t,e){const n=new Cg;if(Pt.Image){const i=new Image;i.onload=R7(P7,n,i,"TestLoadImage: loaded",!0,e),i.onerror=R7(P7,n,i,"TestLoadImage: error",!1,e),i.onabort=R7(P7,n,i,"TestLoadImage: abort",!1,e),i.ontimeout=R7(P7,n,i,"TestLoadImage: timeout",!1,e),Pt.setTimeout(function(){i.ontimeout&&i.ontimeout()},1e4),i.src=t}else e(!1)}function P7(t,e,n,i,r){try{e.onload=null,e.onerror=null,e.onabort=null,e.ontimeout=null,r(i)}catch{}}function Y4(t){this.l=t.fc||null,this.j=t.ob||!1}ur(Y4,PC);Y4.prototype.g=function(){return new Pg(this.l,this.j)};Y4.prototype.i=function(t){return function(){return t}}({});function Pg(t,e){ar.call(this),this.F=t,this.u=e,this.m=void 0,this.readyState=NC,this.status=0,this.responseType=this.responseText=this.response=this.statusText="",this.onreadystatechange=null,this.v=new Headers,this.h=null,this.C="GET",this.B="",this.g=!1,this.A=this.j=this.l=null}ur(Pg,ar);var NC=0;Oe=Pg.prototype;Oe.open=function(t,e){if(this.readyState!=NC)throw this.abort(),Error("Error reopening a connection");this.C=t,this.B=e,this.readyState=1,e4(this)};Oe.send=function(t){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;const e={headers:this.v,method:this.C,credentials:this.m,cache:void 0};t&&(e.body=t),(this.F||Pt).fetch(new Request(this.B,e)).then(this.$a.bind(this),this.ka.bind(this))};Oe.abort=function(){this.response=this.responseText="",this.v=new Headers,this.status=0,this.j&&this.j.cancel("Request was aborted.").catch(()=>{}),1<=this.readyState&&this.g&&this.readyState!=4&&(this.g=!1,K4(this)),this.readyState=NC};Oe.$a=function(t){if(this.g&&(this.l=t,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=t.headers,this.readyState=2,e4(this)),this.g&&(this.readyState=3,e4(this),this.g)))if(this.responseType==="arraybuffer")t.arrayBuffer().then(this.Ya.bind(this),this.ka.bind(this));else if(typeof Pt.ReadableStream<"u"&&"body"in t){if(this.j=t.body.getReader(),this.u){if(this.responseType)throw Error('responseType must be empty for "streamBinaryChunks" mode responses.');this.response=[]}else this.response=this.responseText="",this.A=new TextDecoder;mG(this)}else t.text().then(this.Za.bind(this),this.ka.bind(this))};function mG(t){t.j.read().then(t.Xa.bind(t)).catch(t.ka.bind(t))}Oe.Xa=function(t){if(this.g){if(this.u&&t.value)this.response.push(t.value);else if(!this.u){var e=t.value?t.value:new Uint8Array(0);(e=this.A.decode(e,{stream:!t.done}))&&(this.response=this.responseText+=e)}t.done?K4(this):e4(this),this.readyState==3&&mG(this)}};Oe.Za=function(t){this.g&&(this.response=this.responseText=t,K4(this))};Oe.Ya=function(t){this.g&&(this.response=t,K4(this))};Oe.ka=function(){this.g&&K4(this)};function K4(t){t.readyState=4,t.l=null,t.j=null,t.A=null,e4(t)}Oe.setRequestHeader=function(t,e){this.v.append(t,e)};Oe.getResponseHeader=function(t){return this.h&&this.h.get(t.toLowerCase())||""};Oe.getAllResponseHeaders=function(){if(!this.h)return"";const t=[],e=this.h.entries();for(var n=e.next();!n.done;)n=n.value,t.push(n[0]+": "+n[1]),n=e.next();return t.join(`\r 4009`)};function e4(t){t.onreadystatechange&&t.onreadystatechange.call(t)}Object.defineProperty(Pg.prototype,"withCredentials",{get:function(){return this.m==="include"},set:function(t){this.m=t?"include":"same-origin"}});var rhe=Pt.JSON.parse;function qi(t){ar.call(this),this.headers=new Map,this.u=t||null,this.h=!1,this.C=this.g=null,this.I="",this.m=0,this.j="",this.l=this.G=this.v=this.F=!1,this.B=0,this.A=null,this.K=gG,this.L=this.M=!1}ur(qi,ar);var gG="",she=/^https?$/i,ohe=["POST","PUT"];Oe=qi.prototype;Oe.Oa=function(t){this.M=t};Oe.ha=function(t,e,n,i){if(this.g)throw Error("[goog.net.XhrIo] Object is active with another request="+this.I+"; newUri="+t);e=e?e.toUpperCase():"GET",this.I=t,this.j="",this.m=0,this.F=!1,this.h=!0,this.g=this.u?this.u.g():rE.g(),this.C=this.u?MB(this.u):MB(rE),this.g.onreadystatechange=Or(this.La,this);try{this.G=!0,this.g.open(e,String(t),!0),this.G=!1}catch(s){PB(this,s);return}if(t=n||"",n=new Map(this.headers),i)if(Object.getPrototypeOf(i)===Object.prototype)for(var r in i)n.set(r,i[r]);else if(typeof i.keys=="function"&&typeof i.get=="function")for(const s of i.keys())n.set(s,i.get(s));else throw Error("Unknown input type for opt_headers: "+String(i));i=Array.from(n.keys()).find(s=>s.toLowerCase()=="content-type"),r=Pt.FormData&&t instanceof Pt.FormData,!(0<=BV(ohe,e))||i||r||n.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8");for(const[s,o]of n)this.g.setRequestHeader(s,o);this.K&&(this.g.responseType=this.K),"withCredentials"in this.g&&this.g.withCredentials!==this.M&&(this.g.withCredentials=this.M);try{yG(this),0<this.B&&((this.L=ahe(this.g))?(this.g.timeout=this.B,this.g.ontimeout=Or(this.ua,this)):this.A=bC(this.ua,this.B,this)),this.v=!0,this.g.send(t),this.v=!1}catch(s){PB(this,s)}};function ahe(t){return t2&&typeof t.timeout=="number"&&t.ontimeout!==void 0}Oe.ua=function(){typeof qC<"u"&&this.g&&(this.j="Timed out after "+this.B+"ms, aborting",this.m=8,vr(this,"timeout"),this.abort(8))};function PB(t,e){t.h=!1,t.g&&(t.l=!0,t.g.abort(),t.l=!1),t.j=e,t.m=5,AG(t),Bg(t)}function AG(t){t.F||(t.F=!0,vr(t,"complete"),vr(t,"error"))}Oe.abort=function(t){this.g&&this.h&&(this.h=!1,this.l=!0,this.g.abort(),this.l=!1,this.m=t||7,vr(this,"complete"),vr(this,"abort"),Bg(this))};Oe.N=function(){this.g&&(this.h&&(this.h=!1,this.l=!0,this.g.abort(),this.l=!1),Bg(this,!0)),qi.$.N.call(this)};Oe.La=function(){this.s||(this.G||this.v||this.l?vG(this):this.kb())};Oe.kb=function(){vG(this)};function vG(t){if(t.h&&typeof qC<"u"&&(!t.C[1]||Za(t)!=4||t.da()!=2)){if(t.v&&Za(t)==4)bC(t.La,0,t);else if(vr(t,"readystatechange"),Za(t)==4){t.h=!1;try{const o=t.da();e:switch(o){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var e=!0;break e;default:e=!1}var n;if(!(n=e)){var i;if(i=o===0){var r=String(t.I).match(oG)[1]||null;!r&&Pt.self&&Pt.self.location&&(r=Pt.self.location.protocol.slice(0,-1)),i=!she.test(r?r.toLowerCase():"")}n=i}if(n)vr(t,"complete"),vr(t,"success");else{t.m=6;try{var s=2<Za(t)?t.g.statusText:""}catch{s=""}t.j=s+" ["+t.da()+"]",AG(t)}}finally{Bg(t)}}}}function Bg(t,e){if(t.g){yG(t);const n=t.g,i=t.C[0]?()=>{}:null;t.g=null,t.C=null,e||vr(t,"ready");try{n.onreadystatechange=i}catch{}}}function yG(t){t.g&&t.L&&(t.g.ontimeout=null),t.A&&(Pt.clearTimeout(t.A),t.A=null)}Oe.isActive=function(){return!!this.g};function Za(t){return t.g?t.g.readyState:0}Oe.da=function(){try{return 2<Za(this)?this.g.status:-1}catch{return-1}};Oe.ja=function(){try{return this.g?this.g.responseText:""}catch{return""}};Oe.Wa=function(t){if(this.g){var e=this.g.responseText;return t&&e.indexOf(t)==0&&(e=e.substring(t.length)),rhe(e)}};function BB(t){try{if(!t.g)return null;if("response"in t.g)return t.g.response;switch(t.K){case gG:case"text":return t.g.responseText;case"arraybuffer":if("mozResponseArrayBuffer"in t.g)return t.g.mozResponseArrayBuffer}return null}catch{return null}}function lhe(t){const e={};t=(t.g&&2<=Za(t)&&t.g.getAllResponseHeaders()||"").split(`\r 4010`);for(let i=0;i<t.length;i++){if($d(t[i]))continue;var n=Bce(t[i]);const r=n[0];if(n=n[1],typeof n!="string")continue;n=n.trim();const s=e[r]||[];e[r]=s,s.push(n)}Cce(e,function(i){return i.join(", ")})}Oe.Ia=function(){return this.m};Oe.Sa=function(){return typeof this.j=="string"?this.j:String(this.j)};function qG(t){let e="";return EC(t,function(n,i){e+=i,e+=":",e+=n,e+=`\r 4011`}),e}function kC(t,e,n){e:{for(i in n){var i=!1;break e}i=!0}i||(n=qG(n),typeof t=="string"?n!=null&&encodeURIComponent(String(n)):zn(t,e,n))}function Ff(t,e,n){return n&&n.internalChannelParams&&n.internalChannelParams[t]||e}function _G(t){this.Ga=0,this.j=[],this.l=new Cg,this.pa=this.wa=this.I=this.Y=this.g=this.Da=this.F=this.na=this.o=this.U=this.s=null,this.fb=this.W=0,this.cb=Ff("failFast",!1,t),this.G=this.v=this.u=this.m=this.h=null,this.aa=!0,this.Fa=this.V=-1,this.ba=this.A=this.C=0,this.ab=Ff("baseRetryDelayMs",5e3,t),this.hb=Ff("retryDelaySeedMs",1e4,t),this.eb=Ff("forwardChannelMaxRetries",2,t),this.xa=Ff("forwardChannelRequestTimeoutMs",2e4,t),this.va=t&&t.xmlHttpFactory||void 0,this.Ha=t&&t.dc||!1,this.L=void 0,this.J=t&&t.supportsCrossDomainXhr||!1,this.K="",this.i=new cG(t&&t.concurrentRequestLimit),this.Ja=new the,this.P=t&&t.fastHandshake||!1,this.O=t&&t.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.bb=t&&t.bc||!1,t&&t.Ea&&this.l.Ea(),t&&t.forceLongPolling&&(this.aa=!1),this.ca=!this.P&&this.aa&&t&&t.detectBufferingProxy||!1,this.qa=void 0,t&&t.longPollingTimeout&&0<t.longPollingTimeout&&(this.qa=t.longPollingTimeout),this.oa=void 0,this.S=0,this.M=!1,this.ma=this.B=null}Oe=_G.prototype;Oe.ra=8;Oe.H=1;function FC(t){if(xG(t),t.H==3){var e=t.W++,n=du(t.I);if(zn(n,"SID",t.K),zn(n,"RID",e),zn(n,"TYPE","terminate"),J4(t,n),e=new j4(t,t.l,e),e.L=2,e.v=bg(du(n)),n=!1,Pt.navigator&&Pt.navigator.sendBeacon)try{n=Pt.navigator.sendBeacon(e.v.toString(),"")}catch{}!n&&Pt.Image&&(new Image().src=e.v,n=!0),n||(e.g=RG(e.l,null),e.g.ha(e.v)),e.G=Date.now(),X4(e)}IG(t)}function Dg(t){t.g&&(UC(t),t.g.cancel(),t.g=null)}function xG(t){Dg(t),t.u&&(Pt.clearTimeout(t.u),t.u=null),wm(t),t.i.cancel(),t.m&&(typeof t.m=="number"&&Pt.clearTimeout(t.m),t.m=null)}function Lg(t){if(!hG(t.i)&&!t.m){t.m=!0;var e=t.Na;Xd||HV(),Yd||(Xd(),Yd=!0),MC.add(e,t),t.C=0}}function uhe(t,e){return fG(t.i)>=t.i.j-(t.m?1:0)?!1:t.m?(t.j=e.F.concat(t.j),!0):t.H==1||t.H==2||t.C>=(t.cb?0:t.eb)?!1:(t.m=W4(Or(t.Na,t,e),wG(t,t.C)),t.C++,!0)}Oe.Na=function(t){if(this.m)if(this.m=null,this.H==1){if(!t){this.W=Math.floor(1e5*Math.random()),t=this.W++;const r=new j4(this,this.l,t);let s=this.s;if(this.U&&(s?(s=kV(s),FV(s,this.U)):s=this.U),this.o!==null||this.O||(r.I=s,s=null),this.P)e:{for(var e=0,n=0;n<this.j.length;n++){t:{var i=this.j[n];if("__data__"in i.map&&(i=i.map.__data__,typeof i=="string")){i=i.length;break t}i=void 0}if(i===void 0)break;if(e+=i,4096<e){e=n;break e}if(e===4096||n===this.j.length-1){e=n+1;break e}}e=1e3}else e=1e3;e=EG(this,r,e),n=du(this.I),zn(n,"RID",t),zn(n,"CVER",22),this.F&&zn(n,"X-HTTP-Session-Id",this.F),J4(this,n),s&&(this.O?e="headers="+encodeURIComponent(String(qG(s)))+"&"+e:this.o&&kC(n,this.o,s)),LC(this.i,r),this.bb&&zn(n,"TYPE","init"),this.P?(zn(n,"$req",e),zn(n,"SID","null"),r.aa=!0,oE(r,n,null)):oE(r,n,e),this.H=2}}else this.H==3&&(t?DB(this,t):this.j.length==0||hG(this.i)||DB(this))};function DB(t,e){var n;e?n=e.m:n=t.W++;const i=du(t.I);zn(i,"SID",t.K),zn(i,"RID",n),zn(i,"AID",t.V),J4(t,i),t.o&&t.s&&kC(i,t.o,t.s),n=new j4(t,t.l,n,t.C+1),t.o===null&&(n.I=t.s),e&&(t.j=e.F.concat(t.j)),e=EG(t,n,1e3),n.setTimeout(Math.round(.5*t.xa)+Math.round(.5*t.xa*Math.random())),LC(t.i,n),oE(n,i,e)}function J4(t,e){t.na&&EC(t.na,function(n,i){zn(e,i,n)}),t.h&&sG({},function(n,i){zn(e,i,n)})}function EG(t,e,n){n=Math.min(t.j.length,n);var i=t.h?Or(t.h.Va,t.h,t):null;e:{var r=t.j;let s=-1;for(;;){const o=["count="+n];s==-1?0<n?(s=r[0].g,o.push("ofs="+s)):s=0:o.push("ofs="+s);let a=!0;for(let l=0;l<n;l++){let u=r[l].g;const c=r[l].map;if(u-=s,0>u)s=Math.max(0,r[l].g-100),a=!1;else try{nhe(c,o,"req"+u+"_")}catch{i&&i(c)}}if(a){i=o.join("&");break e}}}return t=t.j.splice(0,n),e.F=t,i}function SG(t){if(!t.g&&!t.u){t.ba=1;var e=t.Ma;Xd||HV(),Yd||(Xd(),Yd=!0),MC.add(e,t),t.A=0}}function OC(t){return t.g||t.u||3<=t.A?!1:(t.ba++,t.u=W4(Or(t.Ma,t),wG(t,t.A)),t.A++,!0)}Oe.Ma=function(){if(this.u=null,TG(this),this.ca&&!(this.M||this.g==null||0>=this.S)){var t=2*this.S;this.l.info("BP detection timer enabled: "+t),this.B=W4(Or(this.jb,this),t)}};Oe.jb=function(){this.B&&(this.B=null,this.l.info("BP detection timeout reached."),this.l.info("Buffering proxy detected and switch to long-polling!"),this.G=!1,this.M=!0,ns(10),Dg(this),TG(this))};function UC(t){t.B!=null&&(Pt.clearTimeout(t.B),t.B=null)}function TG(t){t.g=new j4(t,t.l,"rpc",t.ba),t.o===null&&(t.g.I=t.s),t.g.O=0;var e=du(t.wa);zn(e,"RID","rpc"),zn(e,"SID",t.K),zn(e,"AID",t.V),zn(e,"CI",t.G?"0":"1"),!t.G&&t.qa&&zn(e,"TO",t.qa),zn(e,"TYPE","xmlhttp"),J4(t,e),t.o&&t.s&&kC(e,t.o,t.s),t.L&&t.g.setTimeout(t.L);var n=t.g;t=t.pa,n.L=1,n.v=bg(du(e)),n.s=null,n.S=!0,tG(n,t)}Oe.ib=function(){this.v!=null&&(this.v=null,Dg(this),OC(this),ns(19))};function wm(t){t.v!=null&&(Pt.clearTimeout(t.v),t.v=null)}function CG(t,e){var n=null;if(t.g==e){wm(t),UC(t),t.g=null;var i=2}else if(lE(t.i,e))n=e.F,dG(t.i,e),i=1;else return;if(t.H!=0){if(e.i)if(i==1){n=e.s?e.s.length:0,e=Date.now()-e.G;var r=t.C;i=wg(),vr(i,new KV(i,n)),Lg(t)}else SG(t);else if(r=e.o,r==3||r==0&&0<e.ca||!(i==1&&uhe(t,e)||i==2&&OC(t)))switch(n&&0<n.length&&(e=t.i,e.i=e.i.concat(n)),r){case 1:t1(t,5);break;case 4:t1(t,10);break;case 3:t1(t,6);break;default:t1(t,2)}}}function wG(t,e){let n=t.ab+Math.floor(Math.random()*t.hb);return t.isActive()||(n*=2),n*e}function t1(t,e){if(t.l.info("Error code "+e),e==2){var n=null;t.h&&(n=null);var i=Or(t.pb,t);n||(n=new h1("//www.google.com/images/cleardot.gif"),Pt.location&&Pt.location.protocol=="http"||Tm(n,"https"),bg(n)),ihe(n.toString(),i)}else ns(2);t.H=0,t.h&&t.h.za(e),IG(t),xG(t)}Oe.pb=function(t){t?(this.l.info("Successfully pinged google.com"),ns(2)):(this.l.info("Failed to ping google.com"),ns(1))};function IG(t){if(t.H=0,t.ma=[],t.h){const e=pG(t.i);(e.length!=0||t.j.length!=0)&&(SB(t.ma,e),SB(t.ma,t.j),t.i.i.length=0,_C(t.j),t.j.length=0),t.h.ya()}}function MG(t,e,n){var i=n instanceof h1?du(n):new h1(n);if(i.g!="")e&&(i.g=e+"."+i.g),Cm(i,i.m);else{var r=Pt.location;i=r.protocol,e=e?e+"."+r.hostname:r.hostname,r=+r.port;var s=new h1(null);i&&Tm(s,i),e&&(s.g=e),r&&Cm(s,r),n&&(s.l=n),i=s}return n=t.F,e=t.Da,n&&e&&zn(i,n,e),zn(i,"VER",t.ra),J4(t,i),i}function RG(t,e,n){if(e&&!t.J)throw Error("Can't create secondary domain capable XhrIo object.");return e=n&&t.Ha&&!t.va?new qi(new Y4({ob:!0})):new qi(t.va),e.Oa(t.J),e}Oe.isActive=function(){return!!this.h&&this.h.isActive(this)};function bG(){}Oe=bG.prototype;Oe.Ba=function(){};Oe.Aa=function(){};Oe.za=function(){};Oe.ya=function(){};Oe.isActive=function(){return!0};Oe.Va=function(){};function Im(){if(t2&&!(10<=Number(xce)))throw Error("Environmental error: no available transport.")}Im.prototype.g=function(t,e){return new no(t,e)};function no(t,e){ar.call(this),this.g=new _G(e),this.l=t,this.h=e&&e.messageUrlParams||null,t=e&&e.messageHeaders||null,e&&e.clientProtocolHeaderRequired&&(t?t["X-Client-Protocol"]="webchannel":t={"X-Client-Protocol":"webchannel"}),this.g.s=t,t=e&&e.initMessageHeaders||null,e&&e.messageContentType&&(t?t["X-WebChannel-Content-Type"]=e.messageContentType:t={"X-WebChannel-Content-Type":e.messageContentType}),e&&e.Ca&&(t?t["X-WebChannel-Client-Profile"]=e.Ca:t={"X-WebChannel-Client-Profile":e.Ca}),this.g.U=t,(t=e&&e.cc)&&!$d(t)&&(this.g.o=t),this.A=e&&e.supportsCrossDomainXhr||!1,this.v=e&&e.sendRawJson||!1,(e=e&&e.httpSessionIdParam)&&!$d(e)&&(this.g.F=e,t=this.h,t!==null&&e in t&&(t=this.h,e in t&&delete t[e])),this.j=new O2(this)}ur(no,ar);no.prototype.m=function(){this.g.h=this.j,this.A&&(this.g.J=!0);var t=this.g,e=this.l,n=this.h||void 0;ns(0),t.Y=e,t.na=n||{},t.G=t.aa,t.I=MG(t,null,t.Y),Lg(t)};no.prototype.close=function(){FC(this.g)};no.prototype.u=function(t){var e=this.g;if(typeof t=="string"){var n={};n.__data__=t,t=n}else this.v&&(n={},n.__data__=IC(t),t=n);e.j.push(new Jce(e.fb++,t)),e.H==3&&Lg(e)};no.prototype.N=function(){this.g.h=null,delete this.j,FC(this.g),delete this.g,no.$.N.call(this)};function PG(t){BC.call(this),t.__headers__&&(this.headers=t.__headers__,this.statusCode=t.__status__,delete t.__headers__,delete t.__status__);var e=t.__sm__;if(e){e:{for(const n in e){t=n;break e}t=void 0}(this.i=t)&&(t=this.i,e=e!==null&&t in e?e[t]:void 0),this.data=e}else this.data=t}ur(PG,BC);function BG(){DC.call(this),this.status=1}ur(BG,DC);function O2(t){this.g=t}ur(O2,bG);O2.prototype.Ba=function(){vr(this.g,"a")};O2.prototype.Aa=function(t){vr(this.g,new PG(t))};O2.prototype.za=function(t){vr(this.g,new BG)};O2.prototype.ya=function(){vr(this.g,"b")};function che(){this.blockSize=-1}function ya(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.m=Array(this.blockSize),this.i=this.h=0,this.reset()}ur(ya,che);ya.prototype.reset=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.i=this.h=0};function dq(t,e,n){n||(n=0);var i=Array(16);if(typeof e=="string")for(var r=0;16>r;++r)i[r]=e.charCodeAt(n++)|e.charCodeAt(n++)<<8|e.charCodeAt(n++)<<16|e.charCodeAt(n++)<<24;else for(r=0;16>r;++r)i[r]=e[n++]|e[n++]<<8|e[n++]<<16|e[n++]<<24;e=t.g[0],n=t.g[1],r=t.g[2];var s=t.g[3],o=e+(s^n&(r^s))+i[0]+3614090360&4294967295;e=n+(o<<7&4294967295|o>>>25),o=s+(r^e&(n^r))+i[1]+3905402710&4294967295,s=e+(o<<12&4294967295|o>>>20),o=r+(n^s&(e^n))+i[2]+606105819&4294967295,r=s+(o<<17&4294967295|o>>>15),o=n+(e^r&(s^e))+i[3]+3250441966&4294967295,n=r+(o<<22&4294967295|o>>>10),o=e+(s^n&(r^s))+i[4]+4118548399&4294967295,e=n+(o<<7&4294967295|o>>>25),o=s+(r^e&(n^r))+i[5]+1200080426&4294967295,s=e+(o<<12&4294967295|o>>>20),o=r+(n^s&(e^n))+i[6]+2821735955&4294967295,r=s+(o<<17&4294967295|o>>>15),o=n+(e^r&(s^e))+i[7]+4249261313&4294967295,n=r+(o<<22&4294967295|o>>>10),o=e+(s^n&(r^s))+i[8]+1770035416&4294967295,e=n+(o<<7&4294967295|o>>>25),o=s+(r^e&(n^r))+i[9]+2336552879&4294967295,s=e+(o<<12&4294967295|o>>>20),o=r+(n^s&(e^n))+i[10]+4294925233&4294967295,r=s+(o<<17&4294967295|o>>>15),o=n+(e^r&(s^e))+i[11]+2304563134&4294967295,n=r+(o<<22&4294967295|o>>>10),o=e+(s^n&(r^s))+i[12]+1804603682&4294967295,e=n+(o<<7&4294967295|o>>>25),o=s+(r^e&(n^r))+i[13]+4254626195&4294967295,s=e+(o<<12&4294967295|o>>>20),o=r+(n^s&(e^n))+i[14]+2792965006&4294967295,r=s+(o<<17&4294967295|o>>>15),o=n+(e^r&(s^e))+i[15]+1236535329&4294967295,n=r+(o<<22&4294967295|o>>>10),o=e+(r^s&(n^r))+i[1]+4129170786&4294967295,e=n+(o<<5&4294967295|o>>>27),o=s+(n^r&(e^n))+i[6]+3225465664&4294967295,s=e+(o<<9&4294967295|o>>>23),o=r+(e^n&(s^e))+i[11]+643717713&4294967295,r=s+(o<<14&4294967295|o>>>18),o=n+(s^e&(r^s))+i[0]+3921069994&4294967295,n=r+(o<<20&4294967295|o>>>12),o=e+(r^s&(n^r))+i[5]+3593408605&4294967295,e=n+(o<<5&4294967295|o>>>27),o=s+(n^r&(e^n))+i[10]+38016083&4294967295,s=e+(o<<9&4294967295|o>>>23),o=r+(e^n&(s^e))+i[15]+3634488961&4294967295,r=s+(o<<14&4294967295|o>>>18),o=n+(s^e&(r^s))+i[4]+3889429448&4294967295,n=r+(o<<20&4294967295|o>>>12),o=e+(r^s&(n^r))+i[9]+568446438&4294967295,e=n+(o<<5&4294967295|o>>>27),o=s+(n^r&(e^n))+i[14]+3275163606&4294967295,s=e+(o<<9&4294967295|o>>>23),o=r+(e^n&(s^e))+i[3]+4107603335&4294967295,r=s+(o<<14&4294967295|o>>>18),o=n+(s^e&(r^s))+i[8]+1163531501&4294967295,n=r+(o<<20&4294967295|o>>>12),o=e+(r^s&(n^r))+i[13]+2850285829&4294967295,e=n+(o<<5&4294967295|o>>>27),o=s+(n^r&(e^n))+i[2]+4243563512&4294967295,s=e+(o<<9&4294967295|o>>>23),o=r+(e^n&(s^e))+i[7]+1735328473&4294967295,r=s+(o<<14&4294967295|o>>>18),o=n+(s^e&(r^s))+i[12]+2368359562&4294967295,n=r+(o<<20&4294967295|o>>>12),o=e+(n^r^s)+i[5]+4294588738&4294967295,e=n+(o<<4&4294967295|o>>>28),o=s+(e^n^r)+i[8]+2272392833&4294967295,s=e+(o<<11&4294967295|o>>>21),o=r+(s^e^n)+i[11]+1839030562&4294967295,r=s+(o<<16&4294967295|o>>>16),o=n+(r^s^e)+i[14]+4259657740&4294967295,n=r+(o<<23&4294967295|o>>>9),o=e+(n^r^s)+i[1]+2763975236&4294967295,e=n+(o<<4&4294967295|o>>>28),o=s+(e^n^r)+i[4]+1272893353&4294967295,s=e+(o<<11&4294967295|o>>>21),o=r+(s^e^n)+i[7]+4139469664&4294967295,r=s+(o<<16&4294967295|o>>>16),o=n+(r^s^e)+i[10]+3200236656&4294967295,n=r+(o<<23&4294967295|o>>>9),o=e+(n^r^s)+i[13]+681279174&4294967295,e=n+(o<<4&4294967295|o>>>28),o=s+(e^n^r)+i[0]+3936430074&4294967295,s=e+(o<<11&4294967295|o>>>21),o=r+(s^e^n)+i[3]+3572445317&4294967295,r=s+(o<<16&4294967295|o>>>16),o=n+(r^s^e)+i[6]+76029189&4294967295,n=r+(o<<23&4294967295|o>>>9),o=e+(n^r^s)+i[9]+3654602809&4294967295,e=n+(o<<4&4294967295|o>>>28),o=s+(e^n^r)+i[12]+3873151461&4294967295,s=e+(o<<11&4294967295|o>>>21),o=r+(s^e^n)+i[15]+530742520&4294967295,r=s+(o<<16&4294967295|o>>>16),o=n+(r^s^e)+i[2]+3299628645&4294967295,n=r+(o<<23&4294967295|o>>>9),o=e+(r^(n|~s))+i[0]+4096336452&4294967295,e=n+(o<<6&4294967295|o>>>26),o=s+(n^(e|~r))+i[7]+1126891415&4294967295,s=e+(o<<10&4294967295|o>>>22),o=r+(e^(s|~n))+i[14]+2878612391&4294967295,r=s+(o<<15&4294967295|o>>>17),o=n+(s^(r|~e))+i[5]+4237533241&4294967295,n=r+(o<<21&4294967295|o>>>11),o=e+(r^(n|~s))+i[12]+1700485571&4294967295,e=n+(o<<6&4294967295|o>>>26),o=s+(n^(e|~r))+i[3]+2399980690&4294967295,s=e+(o<<10&4294967295|o>>>22),o=r+(e^(s|~n))+i[10]+4293915773&4294967295,r=s+(o<<15&4294967295|o>>>17),o=n+(s^(r|~e))+i[1]+2240044497&4294967295,n=r+(o<<21&4294967295|o>>>11),o=e+(r^(n|~s))+i[8]+1873313359&4294967295,e=n+(o<<6&4294967295|o>>>26),o=s+(n^(e|~r))+i[15]+4264355552&4294967295,s=e+(o<<10&4294967295|o>>>22),o=r+(e^(s|~n))+i[6]+2734768916&4294967295,r=s+(o<<15&4294967295|o>>>17),o=n+(s^(r|~e))+i[13]+1309151649&4294967295,n=r+(o<<21&4294967295|o>>>11),o=e+(r^(n|~s))+i[4]+4149444226&4294967295,e=n+(o<<6&4294967295|o>>>26),o=s+(n^(e|~r))+i[11]+3174756917&4294967295,s=e+(o<<10&4294967295|o>>>22),o=r+(e^(s|~n))+i[2]+718787259&4294967295,r=s+(o<<15&4294967295|o>>>17),o=n+(s^(r|~e))+i[9]+3951481745&4294967295,t.g[0]=t.g[0]+e&4294967295,t.g[1]=t.g[1]+(r+(o<<21&4294967295|o>>>11))&4294967295,t.g[2]=t.g[2]+r&4294967295,t.g[3]=t.g[3]+s&4294967295}ya.prototype.j=function(t,e){e===void 0&&(e=t.length);for(var n=e-this.blockSize,i=this.m,r=this.h,s=0;s<e;){if(r==0)for(;s<=n;)dq(this,t,s),s+=this.blockSize;if(typeof t=="string"){for(;s<e;)if(i[r++]=t.charCodeAt(s++),r==this.blockSize){dq(this,i),r=0;break}}else for(;s<e;)if(i[r++]=t[s++],r==this.blockSize){dq(this,i),r=0;break}}this.h=r,this.i+=e};ya.prototype.l=function(){var t=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);t[0]=128;for(var e=1;e<t.length-8;++e)t[e]=0;var n=8*this.i;for(e=t.length-8;e<t.length;++e)t[e]=n&255,n/=256;for(this.j(t),t=Array(16),e=n=0;4>e;++e)for(var i=0;32>i;i+=8)t[n++]=this.g[e]>>>i&255;return t};function En(t,e){this.h=e;for(var n=[],i=!0,r=t.length-1;0<=r;r--){var s=t[r]|0;i&&s==e||(n[r]=s,i=!1)}this.g=n}var hhe={};function zC(t){return-128<=t&&128>t?yce(t,function(e){return new En([e|0],0>e?-1:0)}):new En([t|0],0>t?-1:0)}function el(t){if(isNaN(t)||!isFinite(t))return M0;if(0>t)return mr(el(-t));for(var e=[],n=1,i=0;t>=n;i++)e[i]=t/n|0,n*=uE;return new En(e,0)}function DG(t,e){if(t.length==0)throw Error("number format error: empty string");if(e=e||10,2>e||36<e)throw Error("radix out of range: "+e);if(t.charAt(0)=="-")return mr(DG(t.substring(1),e));if(0<=t.indexOf("-"))throw Error('number format error: interior "-" character');for(var n=el(Math.pow(e,8)),i=M0,r=0;r<t.length;r+=8){var s=Math.min(8,t.length-r),o=parseInt(t.substring(r,r+s),e);8>s?(s=el(Math.pow(e,s)),i=i.R(s).add(el(o))):(i=i.R(n),i=i.add(el(o)))}return i}var uE=4294967296,M0=zC(0),cE=zC(1),LB=zC(16777216);Oe=En.prototype;Oe.ea=function(){if(bo(this))return-mr(this).ea();for(var t=0,e=1,n=0;n<this.g.length;n++){var i=this.D(n);t+=(0<=i?i:uE+i)*e,e*=uE}return t};Oe.toString=function(t){if(t=t||10,2>t||36<t)throw Error("radix out of range: "+t);if(Jl(this))return"0";if(bo(this))return"-"+mr(this).toString(t);for(var e=el(Math.pow(t,6)),n=this,i="";;){var r=Rm(n,e).g;n=Mm(n,r.R(e));var s=((0<n.g.length?n.g[0]:n.h)>>>0).toString(t);if(n=r,Jl(n))return s+i;for(;6>s.length;)s="0"+s;i=s+i}};Oe.D=function(t){return 0>t?0:t<this.g.length?this.g[t]:this.h};function Jl(t){if(t.h!=0)return!1;for(var e=0;e<t.g.length;e++)if(t.g[e]!=0)return!1;return!0}function bo(t){return t.h==-1}Oe.X=function(t){return t=Mm(this,t),bo(t)?-1:Jl(t)?0:1};function mr(t){for(var e=t.g.length,n=[],i=0;i<e;i++)n[i]=~t.g[i];return new En(n,~t.h).add(cE)}Oe.abs=function(){return bo(this)?mr(this):this};Oe.add=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],i=0,r=0;r<=e;r++){var s=i+(this.D(r)&65535)+(t.D(r)&65535),o=(s>>>16)+(this.D(r)>>>16)+(t.D(r)>>>16);i=o>>>16,s&=65535,o&=65535,n[r]=o<<16|s}return new En(n,n[n.length-1]&-2147483648?-1:0)};function Mm(t,e){return t.add(mr(e))}Oe.R=function(t){if(Jl(this)||Jl(t))return M0;if(bo(this))return bo(t)?mr(this).R(mr(t)):mr(mr(this).R(t));if(bo(t))return mr(this.R(mr(t)));if(0>this.X(LB)&&0>t.X(LB))return el(this.ea()*t.ea());for(var e=this.g.length+t.g.length,n=[],i=0;i<2*e;i++)n[i]=0;for(i=0;i<this.g.length;i++)for(var r=0;r<t.g.length;r++){var s=this.D(i)>>>16,o=this.D(i)&65535,a=t.D(r)>>>16,l=t.D(r)&65535;n[2*i+2*r]+=o*l,B7(n,2*i+2*r),n[2*i+2*r+1]+=s*l,B7(n,2*i+2*r+1),n[2*i+2*r+1]+=o*a,B7(n,2*i+2*r+1),n[2*i+2*r+2]+=s*a,B7(n,2*i+2*r+2)}for(i=0;i<e;i++)n[i]=n[2*i+1]<<16|n[2*i];for(i=e;i<2*e;i++)n[i]=0;return new En(n,0)};function B7(t,e){for(;(t[e]&65535)!=t[e];)t[e+1]+=t[e]>>>16,t[e]&=65535,e++}function Of(t,e){this.g=t,this.h=e}function Rm(t,e){if(Jl(e))throw Error("division by zero");if(Jl(t))return new Of(M0,M0);if(bo(t))return e=Rm(mr(t),e),new Of(mr(e.g),mr(e.h));if(bo(e))return e=Rm(t,mr(e)),new Of(mr(e.g),e.h);if(30<t.g.length){if(bo(t)||bo(e))throw Error("slowDivide_ only works with positive integers.");for(var n=cE,i=e;0>=i.X(t);)n=NB(n),i=NB(i);var r=k3(n,1),s=k3(i,1);for(i=k3(i,2),n=k3(n,2);!Jl(i);){var o=s.add(i);0>=o.X(t)&&(r=r.add(n),s=o),i=k3(i,1),n=k3(n,1)}return e=Mm(t,r.R(e)),new Of(r,e)}for(r=M0;0<=t.X(e);){for(n=Math.max(1,Math.floor(t.ea()/e.ea())),i=Math.ceil(Math.log(n)/Math.LN2),i=48>=i?1:Math.pow(2,i-48),s=el(n),o=s.R(e);bo(o)||0<o.X(t);)n-=i,s=el(n),o=s.R(e);Jl(s)&&(s=cE),r=r.add(s),t=Mm(t,o)}return new Of(r,t)}Oe.gb=function(t){return Rm(this,t).h};Oe.and=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],i=0;i<e;i++)n[i]=this.D(i)&t.D(i);return new En(n,this.h&t.h)};Oe.or=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],i=0;i<e;i++)n[i]=this.D(i)|t.D(i);return new En(n,this.h|t.h)};Oe.xor=function(t){for(var e=Math.max(this.g.length,t.g.length),n=[],i=0;i<e;i++)n[i]=this.D(i)^t.D(i);return new En(n,this.h^t.h)};function NB(t){for(var e=t.g.length+1,n=[],i=0;i<e;i++)n[i]=t.D(i)<<1|t.D(i-1)>>>31;return new En(n,t.h)}function k3(t,e){var n=e>>5;e%=32;for(var i=t.g.length-n,r=[],s=0;s<i;s++)r[s]=0<e?t.D(s+n)>>>e|t.D(s+n+1)<<32-e:t.D(s+n);return new En(r,t.h)}Im.prototype.createWebChannel=Im.prototype.g;no.prototype.send=no.prototype.u;no.prototype.open=no.prototype.m;no.prototype.close=no.prototype.close;Ig.NO_ERROR=0;Ig.TIMEOUT=8;Ig.HTTP_ERROR=6;JV.COMPLETE="complete";ZV.EventType=$4;$4.OPEN="a";$4.CLOSE="b";$4.ERROR="c";$4.MESSAGE="d";ar.prototype.listen=ar.prototype.O;qi.prototype.listenOnce=qi.prototype.P;qi.prototype.getLastError=qi.prototype.Sa;qi.prototype.getLastErrorCode=qi.prototype.Ia;qi.prototype.getStatus=qi.prototype.da;qi.prototype.getResponseJson=qi.prototype.Wa;
4011qi.prototype.getResponseText=qi.prototype.ja;qi.prototype.send=qi.prototype.ha;qi.prototype.setWithCredentials=qi.prototype.Oa;ya.prototype.digest=ya.prototype.l;ya.prototype.reset=ya.prototype.reset;ya.prototype.update=ya.prototype.j;En.prototype.add=En.prototype.add;En.prototype.multiply=En.prototype.R;En.prototype.modulo=En.prototype.gb;En.prototype.compare=En.prototype.X;En.prototype.toNumber=En.prototype.ea;En.prototype.toString=En.prototype.toString;En.prototype.getBits=En.prototype.D;En.fromNumber=el;En.fromString=DG;var fhe=function(){return new Im},dhe=function(){return wg()},pq=Ig,phe=JV,mhe=H1,kB={xb:0,Ab:1,Bb:2,Ub:3,Zb:4,Wb:5,Xb:6,Vb:7,Tb:8,Yb:9,PROXY:10,NOPROXY:11,Rb:12,Nb:13,Ob:14,Mb:15,Pb:16,Qb:17,tb:18,sb:19,ub:20},ghe=Y4,D7=ZV,Ahe=qi,vhe=ya,R0=En;const FB="@firebase/firestore";/** 4012 * @license 4013 * Copyright 2017 Google LLC 4014 * 4015 * Licensed under the Apache License, Version 2.0 (the "License"); 4016 * you may not use this file except in compliance with the License. 4017 * You may obtain a copy of the License at 4018 * 4019 * http://www.apache.org/licenses/LICENSE-2.0 4020 * 4021 * Unless required by applicable law or agreed to in writing, software 4022 * distributed under the License is distributed on an "AS IS" BASIS, 4023 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4024 * See the License for the specific language governing permissions and 4025 * limitations under the License. 4026 */class Br{constructor(e){this.uid=e}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?"uid:"+this.uid:"anonymous-user"}isEqual(e){return e.uid===this.uid}}Br.UNAUTHENTICATED=new Br(null),Br.GOOGLE_CREDENTIALS=new Br("google-credentials-uid"),Br.FIRST_PARTY=new Br("first-party-uid"),Br.MOCK_USER=new Br("mock-user");/** 4027 * @license 4028 * Copyright 2017 Google LLC 4029 * 4030 * Licensed under the Apache License, Version 2.0 (the "License"); 4031 * you may not use this file except in compliance with the License. 4032 * You may obtain a copy of the License at 4033 * 4034 * http://www.apache.org/licenses/LICENSE-2.0 4035 * 4036 * Unless required by applicable law or agreed to in writing, software 4037 * distributed under the License is distributed on an "AS IS" BASIS, 4038 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4039 * See the License for the specific language governing permissions and 4040 * limitations under the License. 4041 */let U2="10.1.0";/** 4042 * @license 4043 * Copyright 2017 Google LLC 4044 * 4045 * Licensed under the Apache License, Version 2.0 (the "License"); 4046 * you may not use this file except in compliance with the License. 4047 * You may obtain a copy of the License at 4048 * 4049 * http://www.apache.org/licenses/LICENSE-2.0 4050 * 4051 * Unless required by applicable law or agreed to in writing, software 4052 * distributed under the License is distributed on an "AS IS" BASIS, 4053 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4054 * See the License for the specific language governing permissions and 4055 * limitations under the License. 4056 */const w1=new wV("@firebase/firestore");function OB(){return w1.logLevel}function lt(t,...e){if(w1.logLevel<=An.DEBUG){const n=e.map(VC);w1.debug(`Firestore (${U2}): ${t}`,...n)}}function pu(t,...e){if(w1.logLevel<=An.ERROR){const n=e.map(VC);w1.error(`Firestore (${U2}): ${t}`,...n)}}function n2(t,...e){if(w1.logLevel<=An.WARN){const n=e.map(VC);w1.warn(`Firestore (${U2}): ${t}`,...n)}}function VC(t){if(typeof t=="string")return t;try{/** 4057* @license 4058* Copyright 2020 Google LLC 4059* 4060* Licensed under the Apache License, Version 2.0 (the "License"); 4061* you may not use this file except in compliance with the License. 4062* You may obtain a copy of the License at 4063* 4064* http://www.apache.org/licenses/LICENSE-2.0 4065* 4066* Unless required by applicable law or agreed to in writing, software 4067* distributed under the License is distributed on an "AS IS" BASIS, 4068* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4069* See the License for the specific language governing permissions and 4070* limitations under the License. 4071*/return function(n){return JSON.stringify(n)}(t)}catch{return t}}/** 4072 * @license 4073 * Copyright 2017 Google LLC 4074 * 4075 * Licensed under the Apache License, Version 2.0 (the "License");
4076 * you may not use this file except in compliance with the License. 4077 * You may obtain a copy of the License at 4078 * 4079 * http://www.apache.org/licenses/LICENSE-2.0 4080 * 4081 * Unless required by applicable law or agreed to in writing, software 4082 * distributed under the License is distributed on an "AS IS" BASIS, 4083 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4084 * See the License for the specific language governing permissions and 4085 * limitations under the License. 4086 */function Ht(t="Unexpected state"){const e=`FIRESTORE (${U2}) INTERNAL ASSERTION FAILED: `+t;throw pu(e),new Error(e)}function ji(t,e){t||Ht()}function gn(t,e){return t}/** 4087 * @license 4088 * Copyright 2017 Google LLC 4089 * 4090 * Licensed under the Apache License, Version 2.0 (the "License"); 4091 * you may not use this file except in compliance with the License. 4092 * You may obtain a copy of the License at 4093 * 4094 * http://www.apache.org/licenses/LICENSE-2.0 4095 * 4096 * Unless required by applicable law or agreed to in writing, software 4097 * distributed under the License is distributed on an "AS IS" BASIS, 4098 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4099 * See the License for the specific language governing permissions and 4100 * limitations under the License. 4101 */const ke={OK:"ok",CANCELLED:"cancelled",UNKNOWN:"unknown",INVALID_ARGUMENT:"invalid-argument",DEADLINE_EXCEEDED:"deadline-exceeded",NOT_FOUND:"not-found",ALREADY_EXISTS:"already-exists",PERMISSION_DENIED:"permission-denied",UNAUTHENTICATED:"unauthenticated",RESOURCE_EXHAUSTED:"resource-exhausted",FAILED_PRECONDITION:"failed-precondition",ABORTED:"aborted",OUT_OF_RANGE:"out-of-range",UNIMPLEMENTED:"unimplemented",INTERNAL:"internal",UNAVAILABLE:"unavailable",DATA_LOSS:"data-loss"};class qt extends k2{constructor(e,n){super(e,n),this.code=e,this.message=n,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}}/** 4102 * @license 4103 * Copyright 2017 Google LLC 4104 * 4105 * Licensed under the Apache License, Version 2.0 (the "License"); 4106 * you may not use this file except in compliance with the License. 4107 * You may obtain a copy of the License at 4108 * 4109 * http://www.apache.org/licenses/LICENSE-2.0 4110 * 4111 * Unless required by applicable law or agreed to in writing, software 4112 * distributed under the License is distributed on an "AS IS" BASIS, 4113 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4114 * See the License for the specific language governing permissions and 4115 * limitations under the License. 4116 */class f1{constructor(){this.promise=new Promise((e,n)=>{this.resolve=e,this.reject=n})}}/** 4117 * @license 4118 * Copyright 2017 Google LLC 4119 * 4120 * Licensed under the Apache License, Version 2.0 (the "License"); 4121 * you may not use this file except in compliance with the License. 4122 * You may obtain a copy of the License at 4123 * 4124 * http://www.apache.org/licenses/LICENSE-2.0 4125 * 4126 * Unless required by applicable law or agreed to in writing, software 4127 * distributed under the License is distributed on an "AS IS" BASIS, 4128 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4129 * See the License for the specific language governing permissions and 4130 * limitations under the License. 4131 */class LG{constructor(e,n){this.user=n,this.type="OAuth",this.headers=new Map,this.headers.set("Authorization",`Bearer ${e}`)}}class yhe{getToken(){return Promise.resolve(null)}invalidateToken(){}start(e,n){e.enqueueRetryable(()=>n(Br.UNAUTHENTICATED))}shutdown(){}}class qhe{constructor(e){this.token=e,this.changeListener=null}getToken(){return Promise.resolve(this.token)}invalidateToken(){}start(e,n){this.changeListener=n,e.enqueueRetryable(()=>n(this.token.user))}shutdown(){this.changeListener=null}}class _he{constructor(e){this.t=e,this.currentUser=Br.UNAUTHENTICATED,this.i=0,this.forceRefresh=!1,this.auth=null}start(e,n){let i=this.i;const r=l=>this.i!==i?(i=this.i,n(l)):Promise.resolve();let s=new f1;this.o=()=>{this.i++,this.currentUser=this.u(),s.resolve(),s=new f1,e.enqueueRetryable(()=>r(this.currentUser))};const o=()=>{const l=s;e.enqueueRetryable(async()=>{await l.promise,await r(this.currentUser)})},a=l=>{lt("FirebaseAuthCredentialsProvider","Auth detected"),this.auth=l,this.auth.addAuthTokenListener(this.o),o()};this.t.onInit(l=>a(l)),setTimeout(()=>{if(!this.auth){const l=this.t.getImmediate({optional:!0});l?a(l):(lt("FirebaseAuthCredentialsProvider","Auth not yet detected"),s.resolve(),s=new f1)}},0),o()}getToken(){const e=this.i,n=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(n).then(i=>this.i!==e?(lt("FirebaseAuthCredentialsProvider","getToken aborted due to token change."),this.getToken()):i?(ji(typeof i.accessToken=="string"),new LG(i.accessToken,this.currentUser)):null):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.auth&&this.auth.removeAuthTokenListener(this.o)}u(){const e=this.auth&&this.auth.getUid();return ji(e===null||typeof e=="string"),new Br(e)}}class xhe{constructor(e,n,i){this.l=e,this.h=n,this.P=i,this.type="FirstParty",this.user=Br.FIRST_PARTY,this.I=new Map}T(){return this.P?this.P():null}get headers(){this.I.set("X-Goog-AuthUser",this.l);const e=this.T();return e&&this.I.set("Authorization",e),this.h&&this.I.set("X-Goog-Iam-Authorization-Token",this.h),this.I}}class Ehe{constructor(e,n,i){this.l=e,this.h=n,this.P=i}getToken(){return Promise.resolve(new xhe(this.l,this.h,this.P))}start(e,n){e.enqueueRetryable(()=>n(Br.FIRST_PARTY))}shutdown(){}invalidateToken(){}}class She{constructor(e){this.value=e,this.type="AppCheck",this.headers=new Map,e&&e.length>0&&this.headers.set("x-firebase-appcheck",this.value)}}class The{constructor(e){this.A=e,this.forceRefresh=!1,this.appCheck=null,this.R=null}start(e,n){const i=s=>{s.error!=null&<("FirebaseAppCheckTokenProvider",`Error getting App Check token; using placeholder token instead. Error: ${s.error.message}`);const o=s.token!==this.R;return this.R=s.token,lt("FirebaseAppCheckTokenProvider",`Received ${o?"new":"existing"} token.`),o?n(s.token):Promise.resolve()};this.o=s=>{e.enqueueRetryable(()=>i(s))};const r=s=>{lt("FirebaseAppCheckTokenProvider","AppCheck detected"),this.appCheck=s,this.appCheck.addTokenListener(this.o)};this.A.onInit(s=>r(s)),setTimeout(()=>{if(!this.appCheck){const s=this.A.getImmediate({optional:!0});s?r(s):lt("FirebaseAppCheckTokenProvider","AppCheck not yet detected")}},0)}getToken(){const e=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(e).then(n=>n?(ji(typeof n.token=="string"),this.R=n.token,new She(n.token)):null):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.appCheck.removeTokenListener(this.o)}}/** 4132 * @license 4133 * Copyright 2020 Google LLC 4134 * 4135 * Licensed under the Apache License, Version 2.0 (the "License");
4136 * you may not use this file except in compliance with the License. 4137 * You may obtain a copy of the License at 4138 * 4139 * http://www.apache.org/licenses/LICENSE-2.0 4140 * 4141 * Unless required by applicable law or agreed to in writing, software 4142 * distributed under the License is distributed on an "AS IS" BASIS, 4143 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4144 * See the License for the specific language governing permissions and 4145 * limitations under the License. 4146 */function Che(t){const e=typeof self<"u"&&(self.crypto||self.msCrypto),n=new Uint8Array(t);if(e&&typeof e.getRandomValues=="function")e.getRandomValues(n);else for(let i=0;i<t;i++)n[i]=Math.floor(256*Math.random());return n}/** 4147 * @license 4148 * Copyright 2017 Google LLC 4149 * 4150 * Licensed under the Apache License, Version 2.0 (the "License"); 4151 * you may not use this file except in compliance with the License. 4152 * You may obtain a copy of the License at 4153 * 4154 * http://www.apache.org/licenses/LICENSE-2.0 4155 * 4156 * Unless required by applicable law or agreed to in writing, software 4157 * distributed under the License is distributed on an "AS IS" BASIS, 4158 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4159 * See the License for the specific language governing permissions and 4160 * limitations under the License. 4161 */class whe{static V(){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=Math.floor(256/e.length)*e.length;let i="";for(;i.length<20;){const r=Che(40);for(let s=0;s<r.length;++s)i.length<20&&r[s]<n&&(i+=e.charAt(r[s]%e.length))}return i}}function vn(t,e){return t<e?-1:t>e?1:0}function i2(t,e,n){return t.length===e.length&&t.every((i,r)=>n(i,e[r]))}/** 4162 * @license 4163 * Copyright 2017 Google LLC 4164 * 4165 * Licensed under the Apache License, Version 2.0 (the "License"); 4166 * you may not use this file except in compliance with the License. 4167 * You may obtain a copy of the License at 4168 * 4169 * http://www.apache.org/licenses/LICENSE-2.0 4170 * 4171 * Unless required by applicable law or agreed to in writing, software 4172 * distributed under the License is distributed on an "AS IS" BASIS, 4173 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4174 * See the License for the specific language governing permissions and 4175 * limitations under the License. 4176 */class Cs{constructor(e,n){if(this.seconds=e,this.nanoseconds=n,n<0)throw new qt(ke.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+n);if(n>=1e9)throw new qt(ke.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+n);if(e<-62135596800)throw new qt(ke.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e);if(e>=253402300800)throw new qt(ke.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e)}static now(){return Cs.fromMillis(Date.now())}static fromDate(e){return Cs.fromMillis(e.getTime())}static fromMillis(e){const n=Math.floor(e/1e3),i=Math.floor(1e6*(e-1e3*n));return new Cs(n,i)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/1e6}_compareTo(e){return this.seconds===e.seconds?vn(this.nanoseconds,e.nanoseconds):vn(this.seconds,e.seconds)}isEqual(e){return e.seconds===this.seconds&&e.nanoseconds===this.nanoseconds}toString(){return"Timestamp(seconds="+this.seconds+", nanoseconds="+this.nanoseconds+")"}toJSON(){return{seconds:this.seconds,nanoseconds:this.nanoseconds}}valueOf(){const e=this.seconds- -62135596800;return String(e).padStart(12,"0")+"."+String(this.nanoseconds).padStart(9,"0")}}/** 4177 * @license 4178 * Copyright 2017 Google LLC 4179 * 4180 * Licensed under the Apache License, Version 2.0 (the "License"); 4181 * you may not use this file except in compliance with the License. 4182 * You may obtain a copy of the License at 4183 * 4184 * http://www.apache.org/licenses/LICENSE-2.0 4185 * 4186 * Unless required by applicable law or agreed to in writing, software 4187 * distributed under the License is distributed on an "AS IS" BASIS, 4188 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4189 * See the License for the specific language governing permissions and 4190 * limitations under the License. 4191 */class kt{constructor(e){this.timestamp=e}static fromTimestamp(e){return new kt(e)}static min(){return new kt(new Cs(0,0))}static max(){return new kt(new Cs(253402300799,999999999))}compareTo(e){return this.timestamp._compareTo(e.timestamp)}isEqual(e){return this.timestamp.isEqual(e.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return"SnapshotVersion("+this.timestamp.toString()+")"}toTimestamp(){return this.timestamp}}/** 4192 * @license 4193 * Copyright 2017 Google LLC 4194 * 4195 * Licensed under the Apache License, Version 2.0 (the "License");
4196 * you may not use this file except in compliance with the License. 4197 * You may obtain a copy of the License at 4198 * 4199 * http://www.apache.org/licenses/LICENSE-2.0 4200 * 4201 * Unless required by applicable law or agreed to in writing, software 4202 * distributed under the License is distributed on an "AS IS" BASIS, 4203 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4204 * See the License for the specific language governing permissions and 4205 * limitations under the License. 4206 */class t4{constructor(e,n,i){n===void 0?n=0:n>e.length&&Ht(),i===void 0?i=e.length-n:i>e.length-n&&Ht(),this.segments=e,this.offset=n,this.len=i}get length(){return this.len}isEqual(e){return t4.comparator(this,e)===0}child(e){const n=this.segments.slice(this.offset,this.limit());return e instanceof t4?e.forEach(i=>{n.push(i)}):n.push(e),this.construct(n)}limit(){return this.offset+this.length}popFirst(e){return e=e===void 0?1:e,this.construct(this.segments,this.offset+e,this.length-e)}popLast(){return this.construct(this.segments,this.offset,this.length-1)}firstSegment(){return this.segments[this.offset]}lastSegment(){return this.get(this.length-1)}get(e){return this.segments[this.offset+e]}isEmpty(){return this.length===0}isPrefixOf(e){if(e.length<this.length)return!1;for(let n=0;n<this.length;n++)if(this.get(n)!==e.get(n))return!1;return!0}isImmediateParentOf(e){if(this.length+1!==e.length)return!1;for(let n=0;n<this.length;n++)if(this.get(n)!==e.get(n))return!1;return!0}forEach(e){for(let n=this.offset,i=this.limit();n<i;n++)e(this.segments[n])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(e,n){const i=Math.min(e.length,n.length);for(let r=0;r<i;r++){const s=e.get(r),o=n.get(r);if(s<o)return-1;if(s>o)return 1}return e.length<n.length?-1:e.length>n.length?1:0}}class hi extends t4{construct(e,n,i){return new hi(e,n,i)}canonicalString(){return this.toArray().join("/")}toString(){return this.canonicalString()}static fromString(...e){const n=[];for(const i of e){if(i.indexOf("//")>=0)throw new qt(ke.INVALID_ARGUMENT,`Invalid segment (${i}). Paths must not contain // in them.`);n.push(...i.split("/").filter(r=>r.length>0))}return new hi(n)}static emptyPath(){return new hi([])}}const Ihe=/^[_a-zA-Z][_a-zA-Z0-9]*$/;class qs extends t4{construct(e,n,i){return new qs(e,n,i)}static isValidIdentifier(e){return Ihe.test(e)}canonicalString(){return this.toArray().map(e=>(e=e.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),qs.isValidIdentifier(e)||(e="`"+e+"`"),e)).join(".")}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)==="__name__"}static keyField(){return new qs(["__name__"])}static fromServerFormat(e){const n=[];let i="",r=0;const s=()=>
4206{if(i.length===0)throw new qt(ke.INVALID_ARGUMENT,`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);n.push(i),i=""};let o=!1;for(;r<e.length;){const a=e[r];if(a==="\\"){if(r+1===e.length)throw new qt(ke.INVALID_ARGUMENT,"Path has trailing escape character: "+e);const l=e[r+1];if(l!=="\\"&&l!=="."&&l!=="`")throw new qt(ke.INVALID_ARGUMENT,"Path has invalid escape sequence: "+e);i+=l,r+=2}else a==="`"?(o=!o,r++):a!=="."||o?(i+=a,r++):(s(),r++)}if(s(),o)throw new qt(ke.INVALID_ARGUMENT,"Unterminated ` in path: "+e);return new qs(n)}static emptyPath(){return new qs([])}}/** 4207 * @license 4208 * Copyright 2017 Google LLC 4209 * 4210 * Licensed under the Apache License, Version 2.0 (the "License"); 4211 * you may not use this file except in compliance with the License. 4212 * You may obtain a copy of the License at 4213 * 4214 * http://www.apache.org/licenses/LICENSE-2.0 4215 * 4216 * Unless required by applicable law or agreed to in writing, software 4217 * distributed under the License is distributed on an "AS IS" BASIS, 4218 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4219 * See the License for the specific language governing permissions and 4220 * limitations under the License. 4221 */class St{constructor(e){this.path=e}static fromPath(e){return new St(hi.fromString(e))}static fromName(e){return new St(hi.fromString(e).popFirst(5))}static empty(){return new St(hi.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(e){return this.path.length>=2&&this.path.get(this.path.length-2)===e}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(e){return e!==null&&hi.comparator(this.path,e.path)===0}toString(){return this.path.toString()}static comparator(e,n){return hi.comparator(e.path,n.path)}static isDocumentKey(e){return e.length%2==0}static fromSegments(e){return new St(new hi(e.slice()))}}function Mhe(t,e){const n=t.toTimestamp().seconds,i=t.toTimestamp().nanoseconds+1,r=kt.fromTimestamp(i===1e9?new Cs(n+1,0):new Cs(n,i));return new kc(r,St.empty(),e)}function Rhe(t){return new kc(t.readTime,t.key,-1)}class kc{constructor(e,n,i){this.readTime=e,this.documentKey=n,this.largestBatchId=i}static min(){return new kc(kt.min(),St.empty(),-1)}static max(){return new kc(kt.max(),St.empty(),-1)}}function bhe(t,e){let n=t.readTime.compareTo(e.readTime);return n!==0?n:(n=St.comparator(t.documentKey,e.documentKey),n!==0?n:vn(t.largestBatchId,e.largestBatchId))}/** 4222 * @license 4223 * Copyright 2020 Google LLC 4224 * 4225 * Licensed under the Apache License, Version 2.0 (the "License"); 4226 * you may not use this file except in compliance with the License. 4227 * You may obtain a copy of the License at 4228 * 4229 * http://www.apache.org/licenses/LICENSE-2.0 4230 * 4231 * Unless required by applicable law or agreed to in writing, software 4232 * distributed under the License is distributed on an "AS IS" BASIS, 4233 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4234 * See the License for the specific language governing permissions and 4235 * limitations under the License. 4236 */const Phe="The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.";class Bhe{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(e){this.onCommittedListeners.push(e)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach(e=>e())}}/** 4237 * @license 4238 * Copyright 2017 Google LLC 4239 * 4240 * Licensed under the Apache License, Version 2.0 (the "License"); 4241 * you may not use this file except in compliance with the License. 4242 * You may obtain a copy of the License at 4243 * 4244 * http://www.apache.org/licenses/LICENSE-2.0 4245 * 4246 * Unless required by applicable law or agreed to in writing, software 4247 * distributed under the License is distributed on an "AS IS" BASIS, 4248 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4249 * See the License for the specific language governing permissions and 4250 * limitations under the License. 4251 */async function GC(t){if(t.code!==ke.FAILED_PRECONDITION||t.message!==Phe)throw t;lt("LocalStore","Unexpectedly lost primary lease")}/** 4252 * @license 4253 * Copyright 2017 Google LLC 4254 * 4255 * Licensed under the Apache License, Version 2.0 (the "License");
4256 * you may not use this file except in compliance with the License. 4257 * You may obtain a copy of the License at 4258 * 4259 * http://www.apache.org/licenses/LICENSE-2.0 4260 * 4261 * Unless required by applicable law or agreed to in writing, software 4262 * distributed under the License is distributed on an "AS IS" BASIS, 4263 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4264 * See the License for the specific language governing permissions and 4265 * limitations under the License. 4266 */class Re{constructor(e){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,e(n=>{this.isDone=!0,this.result=n,this.nextCallback&&this.nextCallback(n)},n=>{this.isDone=!0,this.error=n,this.catchCallback&&this.catchCallback(n)})}catch(e){return this.next(void 0,e)}next(e,n){return this.callbackAttached&&Ht(),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(n,this.error):this.wrapSuccess(e,this.result):new Re((i,r)=>{this.nextCallback=s=>{this.wrapSuccess(e,s).next(i,r)},this.catchCallback=s=>{this.wrapFailure(n,s).next(i,r)}})}toPromise(){return new Promise((e,n)=>{this.next(e,n)})}wrapUserFunction(e){try{const n=e();return n instanceof Re?n:Re.resolve(n)}catch(n){return Re.reject(n)}}wrapSuccess(e,n){return e?this.wrapUserFunction(()=>e(n)):Re.resolve(n)}wrapFailure(e,n){return e?this.wrapUserFunction(()=>e(n)):Re.reject(n)}static resolve(e){return new Re((n,i)=>{n(e)})}static reject(e){return new Re((n,i)=>{i(e)})}static waitFor(e){return new Re((n,i)=>{let r=0,s=0,o=!1;e.forEach(a=>{++r,a.next(()=>{++s,o&&s===r&&n()},l=>i(l))}),o=!0,s===r&&n()})}static or(e){let n=Re.resolve(!1);for(const i of e)n=n.next(r=>r?Re.resolve(r):i());return n}static forEach(e,n){const i=[];return e.forEach((r,s)=>{i.push(n.call(this,r,s))}),this.waitFor(i)}static mapArray(e,n){return new Re((i,r)=>{const s=e.length,o=new Array(s);let a=0;for(let l=0;l<s;l++){const u=l;n(e[u]).next(c=>{o[u]=c,++a,a===s&&i(o)},c=>r(c))}})}static doWhile(e,n){return new Re((i,r)=>{const s=()=>{e()===!0?n().next(()=>{s()},r):i()};s()})}}function Z4(t){return t.name==="IndexedDbTransactionError"}/** 4267 * @license 4268 * Copyright 2018 Google LLC 4269 * 4270 * Licensed under the Apache License, Version 2.0 (the "License"); 4271 * you may not use this file except in compliance with the License. 4272 * You may obtain a copy of the License at 4273 * 4274 * http://www.apache.org/licenses/LICENSE-2.0 4275 * 4276 * Unless required by applicable law or agreed to in writing, software 4277 * distributed under the License is distributed on an "AS IS" BASIS, 4278 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4279 * See the License for the specific language governing permissions and 4280 * limitations under the License. 4281 */class QC{constructor(e,n){this.previousValue=e,n&&(n.sequenceNumberHandler=i=>this.oe(i),this._e=i=>n.writeSequenceNumber(i))}oe(e){return this.previousValue=Math.max(e,this.previousValue),this.previousValue}next(){const e=++this.previousValue;return this._e&&this._e(e),e}}QC.ae=-1;function Ng(t){return t==null}function hE(t){return t===0&&1/t==-1/0}/** 4282 * @license 4283 * Copyright 2017 Google LLC 4284 * 4285 * Licensed under the Apache License, Version 2.0 (the "License"); 4286 * you may not use this file except in compliance with the License. 4287 * You may obtain a copy of the License at 4288 * 4289 * http://www.apache.org/licenses/LICENSE-2.0 4290 * 4291 * Unless required by applicable law or agreed to in writing, software 4292 * distributed under the License is distributed on an "AS IS" BASIS, 4293 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4294 * See the License for the specific language governing permissions and 4295 * limitations under the License. 4296 */function UB(t){let e=0;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&e++;return e}function kg(t,e){for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&e(n,t[n])}function Dhe(t){for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))return!1;return!0}/** 4297 * @license 4298 * Copyright 2017 Google LLC 4299 * 4300 * Licensed under the Apache License, Version 2.0 (the "License");
vendor: 5,116 bytes, lines 4301-4311
4301 * you may not use this file except in compliance with the License. 4302 * You may obtain a copy of the License at 4303 * 4304 * http://www.apache.org/licenses/LICENSE-2.0 4305 * 4306 * Unless required by applicable law or agreed to in writing, software 4307 * distributed under the License is distributed on an "AS IS" BASIS, 4308 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4309 * See the License for the specific language governing permissions and 4310 * limitations under the License. 4311 */class wi{constructor(e,n){this.comparator=e,this.root=n||pr.EMPTY}insert(e,n){return new wi(this.comparator,this.root.insert(e,n,this.comparator).copy(null,null,pr.BLACK,null,null))}remove(e){return new wi(this.comparator,this.root.remove(e,this.comparator).copy(null,null,pr.BLACK,null,null))}get(e){let n=this.root;for(;!n.isEmpty();){const i=this.comparator(e,n.key);if(i===0)return n.value;i<0?n=n.left:i>0&&(n=n.right)}return null}indexOf(e){let n=0,i=this.root;for(;!i.isEmpty();){const r=this.comparator(e,i.key);if(r===0)return n+i.left.size;r<0?i=i.left:(n+=i.left.size+1,i=i.right)}return-1}isEmpty(){return this.root.isEmpty()}get size(){return this.root.size}minKey(){return this.root.minKey()}maxKey(){return this.root.maxKey()}inorderTraversal(e){return this.root.inorderTraversal(e)}forEach(e){this.inorderTraversal((n,i)=>(e(n,i),!1))}toString(){const e=[];return this.inorderTraversal((n,i)=>(e.push(`${n}:${i}`),!1)),`{${e.join(", ")}}`}reverseTraversal(e){return this.root.reverseTraversal(e)}getIterator(){return new L7(this.root,null,this.comparator,!1)}getIteratorFrom(e){return new L7(this.root,e,this.comparator,!1)}getReverseIterator(){return new L7(this.root,null,this.comparator,!0)}getReverseIteratorFrom(e){return new L7(this.root,e,this.comparator,!0)}}class L7{constructor(e,n,i,r){this.isReverse=r,this.nodeStack=[];let s=1;for(;!e.isEmpty();)if(s=n?i(e.key,n):1,n&&r&&(s*=-1),s<0)e=this.isReverse?e.left:e.right;else{if(s===0){this.nodeStack.push(e);break}this.nodeStack.push(e),e=this.isReverse?e.right:e.left}}getNext(){let e=this.nodeStack.pop();const n={key:e.key,value:e.value};if(this.isReverse)for(e=e.left;!e.isEmpty();)this.nodeStack.push(e),e=e.right;else for(e=e.right;!e.isEmpty();)this.nodeStack.push(e),e=e.left;return n}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;const e=this.nodeStack[this.nodeStack.length-1];return{key:e.key,value:e.value}}}class pr{constructor(e,n,i,r,s){this.key=e,this.value=n,this.color=i??pr.RED,this.left=r??pr.EMPTY,this.right=s??pr.EMPTY,this.size=this.left.size+1+this.right.size}copy(e,n,i,r,s){return new pr(e??this.key,n??this.value,i??this.color,r??this.left,s??this.right)}isEmpty(){return!1}inorderTraversal(e){return this.left.inorderTraversal(e)||e(this.key,this.value)||this.right.inorderTraversal(e)}reverseTraversal(e){return this.right.reverseTraversal(e)||e(this.key,this.value)||this.left.reverseTraversal(e)}min(){return this.left.isEmpty()?this:this.left.min()}minKey(){return this.min().key}maxKey(){return this.right.isEmpty()?this.key:this.right.maxKey()}insert(e,n,i){let r=this;const s=i(e,r.key);return r=s<0?r.copy(null,null,null,r.left.insert(e,n,i),null):s===0?r.copy(null,n,null,null,null):r.copy(null,null,null,null,r.right.insert(e,n,i)),r.fixUp()}removeMin(){if(this.left.isEmpty())return pr.EMPTY;let e=this;return e.left.isRed()||e.left.left.isRed()||(e=e.moveRedLeft()),e=e.copy(null,null,null,e.left.removeMin(),null),e.fixUp()}remove(e,n){let i,r=this;if(n(e,r.key)<0)r.left.isEmpty()||r.left.isRed()||r.left.left.isRed()||(r=r.moveRedLeft()),r=r.copy(null,null,null,r.left.remove(e,n),null);else{if(r.left.isRed()&&(r=r.rotateRight()),r.right.isEmpty()||r.right.isRed()||r.right.left.isRed()||(r=r.moveRedRight()),n(e,r.key)===0){if(r.right.isEmpty())return pr.EMPTY;i=r.right.min(),r=r.copy(i.key,i.value,null,null,r.right.removeMin())}r=r.copy(null,null,null,null,r.right.remove(e,n))}return r.fixUp()}isRed(){return this.color}fixUp(){let e=this;return e.right.isRed()&&!e.left.isRed()&&(e=e.rotateLeft()),e.left.isRed()&&e.left.left.isRed()&&(e=e.rotateRight()),e.left.isRed()&&e.right.isRed()&&(e=e.colorFlip()),e}moveRedLeft(){let e=this.colorFlip();return e.right.left.isRed()&&(e=e.copy(null,null,null,null,e.right.rotateRight()),e=e.rotateLeft(),e=e.colorFlip()),e}moveRedRight(){let e=this.colorFlip();return e.left.left.isRed()&&(e=e.rotateRight(),e=e.colorFlip()),e}rotateLeft(){const e=this.copy(null,null,pr.RED,null,this.right.left);return this.right.copy(null,null,this.color,e,null)}rotateRight(){const e=this.copy(null,null,pr.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,e)}colorFlip(){const e=this.left.copy(null,null,!this.left.color,null,null),n=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,e,n)}checkMaxDepth(){const e=this.check();return Math.pow(2,e)<=this.size+1}check(){if(this.isRed()&&this.left.isRed()||this.right.isRed())throw Ht();const e=this.left.check();if(e!==this.right.check())throw Ht();return e+(this.isRed()?0:1)}}pr.EMPTY=null,pr.RED=!0,pr.BLACK=!1;
4311pr.EMPTY=new class{constructor(){this.size=0}get key(){throw Ht()}get value(){throw Ht()}get color(){throw Ht()}get left(){throw Ht()}get right(){throw Ht()}copy(e,n,i,r,s){return this}insert(e,n,i){return new pr(e,n)}remove(e,n){return this}isEmpty(){return!0}inorderTraversal(e){return!1}reverseTraversal(e){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};/** 4312 * @license 4313 * Copyright 2017 Google LLC 4314 * 4315 * Licensed under the Apache License, Version 2.0 (the "License"); 4316 * you may not use this file except in compliance with the License. 4317 * You may obtain a copy of the License at 4318 * 4319 * http://www.apache.org/licenses/LICENSE-2.0 4320 * 4321 * Unless required by applicable law or agreed to in writing, software 4322 * distributed under the License is distributed on an "AS IS" BASIS, 4323 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4324 * See the License for the specific language governing permissions and 4325 * limitations under the License. 4326 */class zr{constructor(e){this.comparator=e,this.data=new wi(this.comparator)}has(e){return this.data.get(e)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(e){return this.data.indexOf(e)}forEach(e){this.data.inorderTraversal((n,i)=>(e(n),!1))}forEachInRange(e,n){const i=this.data.getIteratorFrom(e[0]);for(;i.hasNext();){const r=i.getNext();if(this.comparator(r.key,e[1])>=0)return;n(r.key)}}forEachWhile(e,n){let i;for(i=n!==void 0?this.data.getIteratorFrom(n):this.data.getIterator();i.hasNext();)if(!e(i.getNext().key))return}firstAfterOrEqual(e){const n=this.data.getIteratorFrom(e);return n.hasNext()?n.getNext().key:null}getIterator(){return new zB(this.data.getIterator())}getIteratorFrom(e){return new zB(this.data.getIteratorFrom(e))}add(e){return this.copy(this.data.remove(e).insert(e,!0))}delete(e){return this.has(e)?this.copy(this.data.remove(e)):this}isEmpty(){return this.data.isEmpty()}unionWith(e){let n=this;return n.size<e.size&&(n=e,e=this),e.forEach(i=>{n=n.add(i)}),n}isEqual(e){if(!(e instanceof zr)||this.size!==e.size)return!1;const n=this.data.getIterator(),i=e.data.getIterator();for(;n.hasNext();){const r=n.getNext().key,s=i.getNext().key;if(this.comparator(r,s)!==0)return!1}return!0}toArray(){const e=[];return this.forEach(n=>{e.push(n)}),e}toString(){const e=[];return this.forEach(n=>e.push(n)),"SortedSet("+e.toString()+")"}copy(e){const n=new zr(this.comparator);return n.data=e,n}}class zB{constructor(e){this.iter=e}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}}/** 4327 * @license 4328 * Copyright 2020 Google LLC 4329 * 4330 * Licensed under the Apache License, Version 2.0 (the "License"); 4331 * you may not use this file except in compliance with the License. 4332 * You may obtain a copy of the License at 4333 * 4334 * http://www.apache.org/licenses/LICENSE-2.0 4335 * 4336 * Unless required by applicable law or agreed to in writing, software 4337 * distributed under the License is distributed on an "AS IS" BASIS, 4338 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4339 * See the License for the specific language governing permissions and 4340 * limitations under the License. 4341 */class ac{constructor(e){this.fields=e,e.sort(qs.comparator)}static empty(){return new ac([])}unionWith(e){let n=new zr(qs.comparator);for(const i of this.fields)n=n.add(i);for(const i of e)n=n.add(i);return new ac(n.toArray())}covers(e){for(const n of this.fields)if(n.isPrefixOf(e))return!0;return!1}isEqual(e){return i2(this.fields,e.fields,(n,i)=>n.isEqual(i))}}/** 4342 * @license 4343 * Copyright 2023 Google LLC 4344 * 4345 * Licensed under the Apache License, Version 2.0 (the "License"); 4346 * you may not use this file except in compliance with the License. 4347 * You may obtain a copy of the License at 4348 * 4349 * http://www.apache.org/licenses/LICENSE-2.0 4350 * 4351 * Unless required by applicable law or agreed to in writing, software 4352 * distributed under the License is distributed on an "AS IS" BASIS, 4353 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4354 * See the License for the specific language governing permissions and 4355 * limitations under the License.
4356 */class NG extends Error{constructor(){super(...arguments),this.name="Base64DecodeError"}}/** 4357 * @license 4358 * Copyright 2020 Google LLC 4359 * 4360 * Licensed under the Apache License, Version 2.0 (the "License"); 4361 * you may not use this file except in compliance with the License. 4362 * You may obtain a copy of the License at 4363 * 4364 * http://www.apache.org/licenses/LICENSE-2.0 4365 * 4366 * Unless required by applicable law or agreed to in writing, software 4367 * distributed under the License is distributed on an "AS IS" BASIS, 4368 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4369 * See the License for the specific language governing permissions and 4370 * limitations under the License. 4371 */class Hr{constructor(e){this.binaryString=e}static fromBase64String(e){const n=function(r){try{return atob(r)}catch(s){throw typeof DOMException<"u"&&s instanceof DOMException?new NG("Invalid base64 string: "+s):s}}(e);return new Hr(n)}static fromUint8Array(e){const n=function(r){let s="";for(let o=0;o<r.length;++o)s+=String.fromCharCode(r[o]);return s}(e);return new Hr(n)}[Symbol.iterator](){let e=0;return{next:()=>e<this.binaryString.length?{value:this.binaryString.charCodeAt(e++),done:!1}:{value:void 0,done:!0}}}toBase64(){return function(n){return btoa(n)}(this.binaryString)}toUint8Array(){return function(n){const i=new Uint8Array(n.length);for(let r=0;r<n.length;r++)i[r]=n.charCodeAt(r);return i}(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(e){return vn(this.binaryString,e.binaryString)}isEqual(e){return this.binaryString===e.binaryString}}Hr.EMPTY_BYTE_STRING=new Hr("");const Lhe=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function Fc(t){if(ji(!!t),typeof t=="string"){let e=0;const n=Lhe.exec(t);if(ji(!!n),n[1]){let r=n[1];r=(r+"000000000").substr(0,9),e=Number(r)}const i=new Date(t);return{seconds:Math.floor(i.getTime()/1e3),nanos:e}}return{seconds:Di(t.seconds),nanos:Di(t.nanos)}}function Di(t){return typeof t=="number"?t:typeof t=="string"?Number(t):0}function I1(t){return typeof t=="string"?Hr.fromBase64String(t):Hr.fromUint8Array(t)}/** 4372 * @license 4373 * Copyright 2020 Google LLC 4374 * 4375 * Licensed under the Apache License, Version 2.0 (the "License"); 4376 * you may not use this file except in compliance with the License. 4377 * You may obtain a copy of the License at 4378 * 4379 * http://www.apache.org/licenses/LICENSE-2.0 4380 * 4381 * Unless required by applicable law or agreed to in writing, software 4382 * distributed under the License is distributed on an "AS IS" BASIS, 4383 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4384 * See the License for the specific language governing permissions and 4385 * limitations under the License. 4386 */function HC(t){var e,n;return((n=(((e=t==null?void 0:t.mapValue)===null||e===void 0?void 0:e.fields)||{}).__type__)===null||n===void 0?void 0:n.stringValue)==="server_timestamp"}function WC(t){const e=t.mapValue.fields.__previous_value__;return HC(e)?WC(e):e}function n4(t){const e=Fc(t.mapValue.fields.__local_write_time__.timestampValue);return new Cs(e.seconds,e.nanos)}/** 4387 * @license 4388 * Copyright 2017 Google LLC 4389 * 4390 * Licensed under the Apache License, Version 2.0 (the "License"); 4391 * you may not use this file except in compliance with the License. 4392 * You may obtain a copy of the License at 4393 * 4394 * http://www.apache.org/licenses/LICENSE-2.0 4395 * 4396 * Unless required by applicable law or agreed to in writing, software 4397 * distributed under the License is distributed on an "AS IS" BASIS, 4398 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4399 * See the License for the specific language governing permissions and 4400 * limitations under the License. 4401 */class Nhe{constructor(e,n,i,r,s,o,a,l,u){this.databaseId=e,this.appId=n,this.persistenceKey=i,this.host=r,this.ssl=s,this.forceLongPolling=o,this.autoDetectLongPolling=a,this.longPollingOptions=l,this.useFetchStreams=u}}class i4{constructor(e,n){this.projectId=e,this.database=n||"(default)"}static empty(){return new i4("","")}get isDefaultDatabase(){return this.database==="(default)"}isEqual(e){return e instanceof i4&&e.projectId===this.projectId&&e.database===this.database}}/** 4402 * @license 4403 * Copyright 2020 Google LLC 4404 * 4405 * Licensed under the Apache License, Version 2.0 (the "License");
4406 * you may not use this file except in compliance with the License. 4407 * You may obtain a copy of the License at 4408 * 4409 * http://www.apache.org/licenses/LICENSE-2.0 4410 * 4411 * Unless required by applicable law or agreed to in writing, software 4412 * distributed under the License is distributed on an "AS IS" BASIS, 4413 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4414 * See the License for the specific language governing permissions and 4415 * limitations under the License. 4416 */const N7={mapValue:{fields:{__type__:{stringValue:"__max__"}}}};function M1(t){return"nullValue"in t?0:"booleanValue"in t?1:"integerValue"in t||"doubleValue"in t?2:"timestampValue"in t?3:"stringValue"in t?5:"bytesValue"in t?6:"referenceValue"in t?7:"geoPointValue"in t?8:"arrayValue"in t?9:"mapValue"in t?HC(t)?4:khe(t)?9007199254740991:10:Ht()}function vl(t,e){if(t===e)return!0;const n=M1(t);if(n!==M1(e))return!1;switch(n){case 0:case 9007199254740991:return!0;case 1:return t.booleanValue===e.booleanValue;case 4:return n4(t).isEqual(n4(e));case 3:return function(r,s){if(typeof r.timestampValue=="string"&&typeof s.timestampValue=="string"&&r.timestampValue.length===s.timestampValue.length)return r.timestampValue===s.timestampValue;const o=Fc(r.timestampValue),a=Fc(s.timestampValue);return o.seconds===a.seconds&&o.nanos===a.nanos}(t,e);case 5:return t.stringValue===e.stringValue;case 6:return function(r,s){return I1(r.bytesValue).isEqual(I1(s.bytesValue))}(t,e);case 7:return t.referenceValue===e.referenceValue;case 8:return function(r,s){return Di(r.geoPointValue.latitude)===Di(s.geoPointValue.latitude)&&Di(r.geoPointValue.longitude)===Di(s.geoPointValue.longitude)}(t,e);case 2:return function(r,s){if("integerValue"in r&&"integerValue"in s)return Di(r.integerValue)===Di(s.integerValue);if("doubleValue"in r&&"doubleValue"in s){const o=Di(r.doubleValue),a=Di(s.doubleValue);return o===a?hE(o)===hE(a):isNaN(o)&&isNaN(a)}return!1}(t,e);case 9:return i2(t.arrayValue.values||[],e.arrayValue.values||[],vl);case 10:return function(r,s){const o=r.mapValue.fields||{},a=s.mapValue.fields||{};if(UB(o)!==UB(a))return!1;for(const l in o)if(o.hasOwnProperty(l)&&(a[l]===void 0||!vl(o[l],a[l])))return!1;return!0}(t,e);default:return Ht()}}function r4(t,e){return(t.values||[]).find(n=>vl(n,e))!==void 0}function r2(t,e){if(t===e)return 0;const n=M1(t),i=M1(e);if(n!==i)return vn(n,i);switch(n){case 0:case 9007199254740991:return 0;case 1:return vn(t.booleanValue,e.booleanValue);case 2:return function(s,o){const a=Di(s.integerValue||s.doubleValue),l=Di(o.integerValue||o.doubleValue);return a<l?-1:a>l?1:a===l?0:isNaN(a)?isNaN(l)?0:-1:1}(t,e);case 3:return VB(t.timestampValue,e.timestampValue);case 4:return VB(n4(t),n4(e));case 5:return vn(t.stringValue,e.stringValue);case 6:return function(s,o){const a=I1(s),l=I1(o);return a.compareTo(l)}(t.bytesValue,e.bytesValue);case 7:return function(s,o){const a=s.split("/"),l=o.split("/");for(let u=0;u<a.length&&u<l.length;u++){const c=vn(a[u],l[u]);if(c!==0)return c}return vn(a.length,l.length)}(t.referenceValue,e.referenceValue);case 8:return function(s,o){const a=vn(Di(s.latitude),Di(o.latitude));return a!==0?a:vn(Di(s.longitude),Di(o.longitude))}(t.geoPointValue,e.geoPointValue);case 9:return function(s,o){const a=s.values||[],l=o.values||[];for(let u=0;u<a.length&&u<l.length;++u){const c=r2(a[u],l[u]);if(c)return c}return vn(a.length,l.length)}(t.arrayValue,e.arrayValue);case 10:return function(s,o){if(s===N7.mapValue&&o===N7.mapValue)return 0;if(s===N7.mapValue)return 1;if(o===N7.mapValue)return-1;const a=s.fields||{},l=Object.keys(a),u=o.fields||{},c=Object.keys(u);l.sort(),c.sort();for(let h=0;h<l.length&&h<c.length;++h){const f=vn(l[h],c[h]);if(f!==0)return f;const m=r2(a[l[h]],u[c[h]]);if(m!==0)return m}return vn(l.length,c.length)}(t.mapValue,e.mapValue);default:throw Ht()}}function VB(t,e){if(typeof t=="string"&&typeof e=="string"&&t.length===e.length)return vn(t,e);const n=Fc(t),i=Fc(e),r=vn(n.seconds,i.seconds);return r!==0?r:vn(n.nanos,i.nanos)}function s2(t){return fE(t)}function fE(t){return"nullValue"in t?"null":"booleanValue"in t?""+t.booleanValue:"integerValue"in t?""+t.integerValue:"doubleValue"in t?""+t.doubleValue:"timestampValue"in t?function(n){const i=Fc(n);return`time(${i.seconds},${i.nanos})`}(t.timestampValue):"stringValue"in t?t.stringValue:"bytesValue"in t?function(n){return I1(n).toBase64()}(t.bytesValue):"referenceValue"in t?function(n){return St.fromName(n).toString()}(t.referenceValue):"geoPointValue"in t?function(n){return`geo(${n.latitude},${n.longitude})`}(t.geoPointValue):"arrayValue"in t?function(n){let i="[",r=!0;for(const s of n.values||[])r?r=!1:i+=",",i+=fE(s);return i+"]"}(t.arrayValue):"mapValue"in t?function(n){const i=Object.keys(n.fields||{}).sort();let r="{",s=!0;for(const o of i)s?s=!1:r+=",",r+=`${o}:${fE(n.fields[o])}`;return r+"}"}(t.mapValue):Ht()}function dE(t){return!!t&&"integerValue"in t}function $C(t){return!!t&&"arrayValue"in t}function GB(t){return!!t&&"nullValue"in t}function QB(t){return!!t&&"doubleValue"in t&&isNaN(Number(t.doubleValue))}function mq(t){return!!t&&"mapValue"in t}function D5(t){if(t.geoPointValue)return{geoPointValue:Object.assign({},t.geoPointValue)};if(t.timestampValue&&typeof t.timestampValue=="object")return{timestampValue:Object.assign({},t.timestampValue)};if(t.mapValue){const e={mapValue:{fields:{}}};return kg(t.mapValue.fields,(n,i)=>e.mapValue.fields[n]=D5(i)),e}if(t.arrayValue){const e={arrayValue:{values:[]}};for(let n=0;n<(t.arrayValue.values||[]).length;++n)e.arrayValue.values[n]=D5(t.arrayValue.values[n]);return e}return Object.assign({},t)}function khe(t){return(((t.mapValue||{}).fields||{}).__type__||{}).stringValue==="__max__"}/** 4417 * @license 4418 * Copyright 2017 Google LLC 4419 * 4420 * Licensed under the Apache License, Version 2.0 (the "License");
4421 * you may not use this file except in compliance with the License. 4422 * You may obtain a copy of the License at 4423 * 4424 * http://www.apache.org/licenses/LICENSE-2.0 4425 * 4426 * Unless required by applicable law or agreed to in writing, software 4427 * distributed under the License is distributed on an "AS IS" BASIS, 4428 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4429 * See the License for the specific language governing permissions and 4430 * limitations under the License. 4431 */class Xa{constructor(e){this.value=e}static empty(){return new Xa({mapValue:{}})}field(e){if(e.isEmpty())return this.value;{let n=this.value;for(let i=0;i<e.length-1;++i)if(n=(n.mapValue.fields||{})[e.get(i)],!mq(n))return null;return n=(n.mapValue.fields||{})[e.lastSegment()],n||null}}set(e,n){this.getFieldsMap(e.popLast())[e.lastSegment()]=D5(n)}setAll(e){let n=qs.emptyPath(),i={},r=[];e.forEach((o,a)=>{if(!n.isImmediateParentOf(a)){const l=this.getFieldsMap(n);this.applyChanges(l,i,r),i={},r=[],n=a.popLast()}o?i[a.lastSegment()]=D5(o):r.push(a.lastSegment())});const s=this.getFieldsMap(n);this.applyChanges(s,i,r)}delete(e){const n=this.field(e.popLast());mq(n)&&n.mapValue.fields&&delete n.mapValue.fields[e.lastSegment()]}isEqual(e){return vl(this.value,e.value)}getFieldsMap(e){let n=this.value;n.mapValue.fields||(n.mapValue={fields:{}});for(let i=0;i<e.length;++i){let r=n.mapValue.fields[e.get(i)];mq(r)&&r.mapValue.fields||(r={mapValue:{fields:{}}},n.mapValue.fields[e.get(i)]=r),n=r}return n.mapValue.fields}applyChanges(e,n,i){kg(n,(r,s)=>e[r]=s);for(const r of i)delete e[r]}clone(){return new Xa(D5(this.value))}}/** 4432 * @license 4433 * Copyright 2017 Google LLC 4434 * 4435 * Licensed under the Apache License, Version 2.0 (the "License"); 4436 * you may not use this file except in compliance with the License. 4437 * You may obtain a copy of the License at 4438 * 4439 * http://www.apache.org/licenses/LICENSE-2.0 4440 * 4441 * Unless required by applicable law or agreed to in writing, software 4442 * distributed under the License is distributed on an "AS IS" BASIS, 4443 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4444 * See the License for the specific language governing permissions and 4445 * limitations under the License. 4446 */class Lr{constructor(e,n,i,r,s,o,a){this.key=e,this.documentType=n,this.version=i,this.readTime=r,this.createTime=s,this.data=o,this.documentState=a}static newInvalidDocument(e){return new Lr(e,0,kt.min(),kt.min(),kt.min(),Xa.empty(),0)}static newFoundDocument(e,n,i,r){return new Lr(e,1,n,kt.min(),i,r,0)}static newNoDocument(e,n){return new Lr(e,2,n,kt.min(),kt.min(),Xa.empty(),0)}static newUnknownDocument(e,n){return new Lr(e,3,n,kt.min(),kt.min(),Xa.empty(),2)}convertToFoundDocument(e,n){return!this.createTime.isEqual(kt.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=e),this.version=e,this.documentType=1,this.data=n,this.documentState=0,this}convertToNoDocument(e){return this.version=e,this.documentType=2,this.data=Xa.empty(),this.documentState=0,this}convertToUnknownDocument(e){return this.version=e,this.documentType=3,this.data=Xa.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=kt.min(),this}setReadTime(e){return this.readTime=e,this}get hasLocalMutations(){return this.documentState===1}get hasCommittedMutations(){return this.documentState===2}get hasPendingWrites(){return this.hasLocalMutations||this.hasCommittedMutations}isValidDocument(){return this.documentType!==0}isFoundDocument(){return this.documentType===1}isNoDocument(){return this.documentType===2}isUnknownDocument(){return this.documentType===3}isEqual(e){return e instanceof Lr&&this.key.isEqual(e.key)&&this.version.isEqual(e.version)&&this.documentType===e.documentType&&this.documentState===e.documentState&&this.data.isEqual(e.data)}mutableCopy(){return new Lr(this.key,this.documentType,this.version,this.readTime,this.createTime,this.data.clone(),this.documentState)}toString(){return`Document(${this.key}, ${this.version}, ${JSON.stringify(this.data.value)}, {createTime: ${this.createTime}}), {documentType: ${this.documentType}}), {documentState: ${this.documentState}})`}}
4446/** 4447 * @license 4448 * Copyright 2022 Google LLC 4449 * 4450 * Licensed under the Apache License, Version 2.0 (the "License"); 4451 * you may not use this file except in compliance with the License. 4452 * You may obtain a copy of the License at 4453 * 4454 * http://www.apache.org/licenses/LICENSE-2.0 4455 * 4456 * Unless required by applicable law or agreed to in writing, software 4457 * distributed under the License is distributed on an "AS IS" BASIS, 4458 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4459 * See the License for the specific language governing permissions and 4460 * limitations under the License. 4461 */class bm{constructor(e,n){this.position=e,this.inclusive=n}}function HB(t,e,n){let i=0;for(let r=0;r<t.position.length;r++){const s=e[r],o=t.position[r];if(s.field.isKeyField()?i=St.comparator(St.fromName(o.referenceValue),n.key):i=r2(o,n.data.field(s.field)),s.dir==="desc"&&(i*=-1),i!==0)break}return i}function WB(t,e){if(t===null)return e===null;if(e===null||t.inclusive!==e.inclusive||t.position.length!==e.position.length)return!1;for(let n=0;n<t.position.length;n++)if(!vl(t.position[n],e.position[n]))return!1;return!0}/** 4462 * @license 4463 * Copyright 2022 Google LLC 4464 * 4465 * Licensed under the Apache License, Version 2.0 (the "License"); 4466 * you may not use this file except in compliance with the License. 4467 * You may obtain a copy of the License at 4468 * 4469 * http://www.apache.org/licenses/LICENSE-2.0 4470 * 4471 * Unless required by applicable law or agreed to in writing, software 4472 * distributed under the License is distributed on an "AS IS" BASIS, 4473 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4474 * See the License for the specific language governing permissions and 4475 * limitations under the License. 4476 */class L5{constructor(e,n="asc"){this.field=e,this.dir=n}}function Fhe(t,e){return t.dir===e.dir&&t.field.isEqual(e.field)}/** 4477 * @license 4478 * Copyright 2022 Google LLC 4479 * 4480 * Licensed under the Apache License, Version 2.0 (the "License"); 4481 * you may not use this file except in compliance with the License. 4482 * You may obtain a copy of the License at 4483 * 4484 * http://www.apache.org/licenses/LICENSE-2.0 4485 * 4486 * Unless required by applicable law or agreed to in writing, software 4487 * distributed under the License is distributed on an "AS IS" BASIS, 4488 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4489 * See the License for the specific language governing permissions and 4490 * limitations under the License. 4491 */class kG{}class Hi extends kG{constructor(e,n,i){super(),this.field=e,this.op=n,this.value=i}static create(e,n,i){return e.isKeyField()?n==="in"||n==="not-in"?this.createKeyFieldInFilter(e,n,i):new Uhe(e,n,i):n==="array-contains"?new Ghe(e,i):n==="in"?new Qhe(e,i):n==="not-in"?new Hhe(e,i):n==="array-contains-any"?new Whe(e,i
4491):new Hi(e,n,i)}static createKeyFieldInFilter(e,n,i){return n==="in"?new zhe(e,i):new Vhe(e,i)}matches(e){const n=e.data.field(this.field);return this.op==="!="?n!==null&&this.matchesComparison(r2(n,this.value)):n!==null&&M1(this.value)===M1(n)&&this.matchesComparison(r2(n,this.value))}matchesComparison(e){switch(this.op){case"<":return e<0;case"<=":return e<=0;case"==":return e===0;case"!=":return e!==0;case">":return e>0;case">=":return e>=0;default:return Ht()}}isInequality(){return["<","<=",">",">=","!=","not-in"].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}getFirstInequalityField(){return this.isInequality()?this.field:null}}class yl extends kG{constructor(e,n){super(),this.filters=e,this.op=n,this.ce=null}static create(e,n){return new yl(e,n)}matches(e){return FG(this)?this.filters.find(n=>!n.matches(e))===void 0:this.filters.find(n=>n.matches(e))!==void 0}getFlattenedFilters(){return this.ce!==null||(this.ce=this.filters.reduce((e,n)=>e.concat(n.getFlattenedFilters()),[])),this.ce}getFilters(){return Object.assign([],this.filters)}getFirstInequalityField(){const e=this.le(n=>n.isInequality());return e!==null?e.field:null}le(e){for(const n of this.getFlattenedFilters())if(e(n))return n;return null}}function FG(t){return t.op==="and"}function OG(t){return Ohe(t)&&FG(t)}function Ohe(t){for(const e of t.filters)if(e instanceof yl)return!1;return!0}function pE(t){if(t instanceof Hi)return t.field.canonicalString()+t.op.toString()+s2(t.value);if(OG(t))return t.filters.map(e=>pE(e)).join(",");{const e=t.filters.map(n=>pE(n)).join(",");return`${t.op}(${e})`}}function UG(t,e){return t instanceof Hi?function(i,r){return r instanceof Hi&&i.op===r.op&&i.field.isEqual(r.field)&&vl(i.value,r.value)}(t,e):t instanceof yl?function(i,r){return r instanceof yl&&i.op===r.op&&i.filters.length===r.filters.length?i.filters.reduce((s,o,a)=>s&&UG(o,r.filters[a]),!0):!1}(t,e):void Ht()}function zG(t){return t instanceof Hi?function(n){return`${n.field.canonicalString()} ${n.op} ${s2(n.value)}`}(t):t instanceof yl?function(n){return n.op.toString()+" {"+n.getFilters().map(zG).join(" ,")+"}"}(t):"Filter"}class Uhe extends Hi{constructor(e,n,i){super(e,n,i),this.key=St.fromName(i.referenceValue)}matches(e){const n=St.comparator(e.key,this.key);return this.matchesComparison(n)}}class zhe extends Hi{constructor(e,n){super(e,"in",n),this.keys=VG("in",n)}matches(e){return this.keys.some(n=>n.isEqual(e.key))}}class Vhe extends Hi{constructor(e,n){super(e,"not-in",n),this.keys=VG("not-in",n)}matches(e){return!this.keys.some(n=>n.isEqual(e.key))}}function VG(t,e){var n;return(((n=e.arrayValue)===null||n===void 0?void 0:n.values)||[]).map(i=>St.fromName(i.referenceValue))}class Ghe extends Hi{constructor(e,n){super(e,"array-contains",n)}matches(e){const n=e.data.field(this.field);return $C(n)&&r4(n.arrayValue,this.value)}}class Qhe extends Hi{constructor(e,n){super(e,"in",n)}matches(e){const n=e.data.field(this.field);return n!==null&&r4(this.value.arrayValue,n)}}class Hhe extends Hi{constructor(e,n){super(e,"not-in",n)}matches(e){if(r4(this.value.arrayValue,{nullValue:"NULL_VALUE"}))return!1;const n=e.data.field(this.field);return n!==null&&!r4(this.value.arrayValue,n)}}class Whe extends Hi{constructor(e,n){super(e,"array-contains-any",n)}matches(e){const n=e.data.field(this.field);return!(!$C(n)||!n.arrayValue.values)&&n.arrayValue.values.some(i=>r4(this.value.arrayValue,i))}}/** 4492 * @license 4493 * Copyright 2019 Google LLC 4494 * 4495 * Licensed under the Apache License, Version 2.0 (the "License"); 4496 * you may not use this file except in compliance with the License. 4497 * You may obtain a copy of the License at 4498 * 4499 * http://www.apache.org/licenses/LICENSE-2.0 4500 * 4501 * Unless required by applicable law or agreed to in writing, software 4502 * distributed under the License is distributed on an "AS IS" BASIS, 4503 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4504 * See the License for the specific language governing permissions and 4505 * limitations under the License. 4506 */class $he{constructor(e,n=null,i=[],r=[],s=null,o=null,a=null){this.path=e,this.collectionGroup=n,this.orderBy=i,this.filters=r,this.limit=s,this.startAt=o,this.endAt=a,this.he=null}}function $B(t,e=null,n=[],i=[],r=null,s=null,o=null){return new $he(t,e,n,i,r,s,o)}function jC(t){const e=gn(t);if(e.he===null){let n=e.path.canonicalString();e.collectionGroup!==null&&(n+="|cg:"+e.collectionGroup),n+="|f:",n+=e.filters.map(i=>pE(i)).join(","),n+="|ob:",n+=e.orderBy.map(i=>function(s){return s.field.canonicalString()+s.dir}(i)).join(","),Ng(e.limit)||(n+="|l:",n+=e.limit),e.startAt&&(n+="|lb:",n+=e.startAt.inclusive?"b:":"a:",n+=e.startAt.position.map(i=>s2(i)).join(",")),e.endAt&&(n+="|ub:",n+=e.endAt.inclusive?"a:":"b:",n+=e.endAt.position.map(i=>s2(i)).join(",")),e.he=n}return e.he}function XC(t,e){if(t.limit!==e.limit||t.orderBy.length!==e.orderBy.length)return!1;for(let n=0;n<t.orderBy.length;n++)if(!Fhe(t.orderBy[n],e.orderBy[n]))return!1;if(t.filters.length!==e.filters.length)return!1;for(let n=0;n<t.filters.length;n++)if(!UG(t.filters[n],e.filters[n]))return!1;return t.collectionGroup===e.collectionGroup&&!!t.path.isEqual(e.path)&&!!WB(t.startAt,e.startAt)&&WB(t.endAt,e.endAt)}function mE(t){return St.isDocumentKey(t.path)&&t.collectionGroup===null&&t.filters.length===0}/** 4507 * @license 4508 * Copyright 2017 Google LLC 4509 * 4510 * Licensed under the Apache License, Version 2.0 (the "License");
4511 * you may not use this file except in compliance with the License. 4512 * You may obtain a copy of the License at 4513 * 4514 * http://www.apache.org/licenses/LICENSE-2.0 4515 * 4516 * Unless required by applicable law or agreed to in writing, software 4517 * distributed under the License is distributed on an "AS IS" BASIS, 4518 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4519 * See the License for the specific language governing permissions and 4520 * limitations under the License. 4521 */class Fg{constructor(e,n=null,i=[],r=[],s=null,o="F",a=null,l=null){this.path=e,this.collectionGroup=n,this.explicitOrderBy=i,this.filters=r,this.limit=s,this.limitType=o,this.startAt=a,this.endAt=l,this.Pe=null,this.Ie=null,this.startAt,this.endAt}}function jhe(t,e,n,i,r,s,o,a){return new Fg(t,e,n,i,r,s,o,a)}function GG(t){return new Fg(t)}function jB(t){return t.filters.length===0&&t.limit===null&&t.startAt==null&&t.endAt==null&&(t.explicitOrderBy.length===0||t.explicitOrderBy.length===1&&t.explicitOrderBy[0].field.isKeyField())}function Xhe(t){return t.explicitOrderBy.length>0?t.explicitOrderBy[0].field:null}function Yhe(t){for(const e of t.filters){const n=e.getFirstInequalityField();if(n!==null)return n}return null}function Khe(t){return t.collectionGroup!==null}function b0(t){const e=gn(t);if(e.Pe===null){e.Pe=[];const n=Yhe(e),i=Xhe(e);if(n!==null&&i===null)n.isKeyField()||e.Pe.push(new L5(n)),e.Pe.push(new L5(qs.keyField(),"asc"));else{let r=!1;for(const s of e.explicitOrderBy)e.Pe.push(s),s.field.isKeyField()&&(r=!0);if(!r){const s=e.explicitOrderBy.length>0?e.explicitOrderBy[e.explicitOrderBy.length-1].dir:"asc";e.Pe.push(new L5(qs.keyField(),s))}}}return e.Pe}function mu(t){const e=gn(t);if(!e.Ie)if(e.limitType==="F")e.Ie=$B(e.path,e.collectionGroup,b0(e),e.filters,e.limit,e.startAt,e.endAt);else{const n=[];for(const s of b0(e)){const o=s.dir==="desc"?"asc":"desc";n.push(new L5(s.field,o))}const i=e.endAt?new bm(e.endAt.position,e.endAt.inclusive):null,r=e.startAt?new bm(e.startAt.position,e.startAt.inclusive):null;e.Ie=$B(e.path,e.collectionGroup,n,e.filters,e.limit,i,r)}return e.Ie}function gE(t,e,n){return new Fg(t.path,t.collectionGroup,t.explicitOrderBy.slice(),t.filters.slice(),e,n,t.startAt,t.endAt)}function Og(t,e){return XC(mu(t),mu(e))&&t.limitType===e.limitType}function QG(t){return`${jC(mu(t))}|lt:${t.limitType}`}function AE(t){return`Query(target=${function(n){let i=n.path.canonicalString();return n.collectionGroup!==null&&(i+=" collectionGroup="+n.collectionGroup),n.filters.length>0&&(i+=`, filters: [${n.filters.map(r=>zG(r)).join(", ")}]`),Ng(n.limit)||(i+=", limit: "+n.limit),n.orderBy.length>0&&(i+=`, orderBy: [${n.orderBy.map(r=>function(o){return`${o.field.canonicalString()} (${o.dir})`}(r)).join(", ")}]`),n.startAt&&(i+=", startAt: ",i+=n.startAt.inclusive?"b:":"a:",i+=n.startAt.position.map(r=>s2(r)).join(",")),n.endAt&&(i+=", endAt: ",i+=n.endAt.inclusive?"a:":"b:",i+=n.endAt.position.map(r=>s2(r)).join(",")),`Target(${i})`}(mu(t))}; limitType=${t.limitType})`}function Ug(t,e){return e.isFoundDocument()&&function(i,r){const s=r.key.path;return i.collectionGroup!==null?r.key.hasCollectionId(i.collectionGroup)&&i.path.isPrefixOf(s):St.isDocumentKey(i.path)?i.path.isEqual(s):i.path.isImmediateParentOf(s)}(t,e)&&function(i,r){for(const s of b0(i))if(!s.field.isKeyField()&&r.data.field(s.field)===null)return!1;return!0}(t,e)&&function(i,r){for(const s of i.filters)if(!s.matches(r))return!1;return!0}(t,e)&&function(i,r){return!(i.startAt&&!function(o,a,l){const u=HB(o,a,l);return o.inclusive?u<=0:u<0}(i.startAt,b0(i),r)||i.endAt&&!function(o,a,l){const u=HB(o,a,l);return o.inclusive?u>=0:u>0}(i.endAt,b0(i),r))}(t,e)}function Jhe(t){return t.collectionGroup||(t.path.length%2==1?t.path.lastSegment():t.path.get(t.path.length-2))}function HG(t){return(e,n)=>{let i=!1;for(const r of b0(t)){const s=Zhe(r,e,n);if(s!==0)return s;i=i||r.field.isKeyField()}return 0}}function Zhe(t,e,n){const i=t.field.isKeyField()?St.comparator(e.key,n.key):function(s,o,a){const l=o.data.field(s),u=a.data.field(s);return l!==null&&u!==null?r2(l,u):Ht()}
4521(t.field,e,n);switch(t.dir){case"asc":return i;case"desc":return-1*i;default:return Ht()}}/** 4522 * @license 4523 * Copyright 2017 Google LLC 4524 * 4525 * Licensed under the Apache License, Version 2.0 (the "License"); 4526 * you may not use this file except in compliance with the License. 4527 * You may obtain a copy of the License at 4528 * 4529 * http://www.apache.org/licenses/LICENSE-2.0 4530 * 4531 * Unless required by applicable law or agreed to in writing, software 4532 * distributed under the License is distributed on an "AS IS" BASIS, 4533 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4534 * See the License for the specific language governing permissions and 4535 * limitations under the License. 4536 */class z2{constructor(e,n){this.mapKeyFn=e,this.equalsFn=n,this.inner={},this.innerSize=0}get(e){const n=this.mapKeyFn(e),i=this.inner[n];if(i!==void 0){for(const[r,s]of i)if(this.equalsFn(r,e))return s}}has(e){return this.get(e)!==void 0}set(e,n){const i=this.mapKeyFn(e),r=this.inner[i];if(r===void 0)return this.inner[i]=[[e,n]],void this.innerSize++;for(let s=0;s<r.length;s++)if(this.equalsFn(r[s][0],e))return void(r[s]=[e,n]);r.push([e,n]),this.innerSize++}delete(e){const n=this.mapKeyFn(e),i=this.inner[n];if(i===void 0)return!1;for(let r=0;r<i.length;r++)if(this.equalsFn(i[r][0],e))return i.length===1?delete this.inner[n]:i.splice(r,1),this.innerSize--,!0;return!1}forEach(e){kg(this.inner,(n,i)=>{for(const[r,s]of i)e(r,s)})}isEmpty(){return Dhe(this.inner)}size(){return this.innerSize}}/** 4537 * @license 4538 * Copyright 2017 Google LLC 4539 * 4540 * Licensed under the Apache License, Version 2.0 (the "License"); 4541 * you may not use this file except in compliance with the License. 4542 * You may obtain a copy of the License at 4543 * 4544 * http://www.apache.org/licenses/LICENSE-2.0 4545 * 4546 * Unless required by applicable law or agreed to in writing, software 4547 * distributed under the License is distributed on an "AS IS" BASIS, 4548 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4549 * See the License for the specific language governing permissions and 4550 * limitations under the License. 4551 */const e1e=new wi(St.comparator);function Oc(){return e1e}const WG=new wi(St.comparator);function o5(...t){let e=WG;for(const n of t)e=e.insert(n.key,n);return e}function t1e(t){let e=WG;return t.forEach((n,i)=>e=e.insert(n,i.overlayedDocument)),e}function n1(){return N5()}function $G(){return N5()}function N5(){return new z2(t=>t.toString(),(t,e)=>t.isEqual(e))}const n1e=new zr(St.comparator);function an(...t){let e=n1e;for(const n of t)e=e.add(n);return e}const i1e=new zr(vn);function r1e(){return i1e}/** 4552 * @license 4553 * Copyright 2020 Google LLC 4554 * 4555 * Licensed under the Apache License, Version 2.0 (the "License"); 4556 * you may not use this file except in compliance with the License. 4557 * You may obtain a copy of the License at 4558 * 4559 * http://www.apache.org/licenses/LICENSE-2.0 4560 * 4561 * Unless required by applicable law or agreed to in writing, software 4562 * distributed under the License is distributed on an "AS IS" BASIS, 4563 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4564 * See the License for the specific language governing permissions and 4565 * limitations under the License. 4566 */function s1e(t,e){if(t.useProto3Json){if(isNaN(e))return{doubleValue:"NaN"};if(e===1/0)return{doubleValue:"Infinity"};if(e===-1/0)return{doubleValue:"-Infinity"}}return{doubleValue:hE(e)?"-0":e}}function o1e(t){return{integerValue:""+t}}/** 4567 * @license 4568 * Copyright 2018 Google LLC 4569 * 4570 * Licensed under the Apache License, Version 2.0 (the "License"); 4571 * you may not use this file except in compliance with the License. 4572 * You may obtain a copy of the License at 4573 * 4574 * http://www.apache.org/licenses/LICENSE-2.0 4575 * 4576 * Unless required by applicable law or agreed to in writing, software 4577 * distributed under the License is distributed on an "AS IS" BASIS, 4578 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4579 * See the License for the specific language governing permissions and 4580 * limitations under the License. 4581 */class zg{constructor(){this._=void 0}}function a1e(t,e,n){return t instanceof vE?function(r,s){const o={fields:{__type__:{stringValue:"server_timestamp"},__local_write_time__:{timestampValue:{seconds:r.seconds,nanos:r.nanoseconds}}}};return s&&HC(s)&&(s=WC(s)),s&&(o.fields.__previous_value__=s),{mapValue:o}}(n,e):t instanceof Pm?jG(t,e):t instanceof Bm?XG(t,e):function(r,s){const o=u1e(r,s),a=XB(o)+XB(r.Te);return dE(o)&&dE(r.Te)?o1e(a):s1e(r.serializer,a)}(t,e)}function l1e(t,e,n){return t instanceof Pm?jG(t,e):t instanceof Bm?XG(t,e):n}function u1e(t,e){return t instanceof yE?function(i){return dE(i)||function(s){return!!s&&"doubleValue"in s}(i)}(e)?e:{integerValue:0}:null}class vE extends zg{}class Pm extends zg{constructor(e){super(),this.elements=e}}function jG(t,e){const n=YG(e);for(const i of t.elements)n.some(r=>vl(r,i))||n.push(i);return{arrayValue:{values:n}}}class Bm extends zg{constructor(e){super(),this.elements=e}}
4581function XG(t,e){let n=YG(e);for(const i of t.elements)n=n.filter(r=>!vl(r,i));return{arrayValue:{values:n}}}class yE extends zg{constructor(e,n){super(),this.serializer=e,this.Te=n}}function XB(t){return Di(t.integerValue||t.doubleValue)}function YG(t){return $C(t)&&t.arrayValue.values?t.arrayValue.values.slice():[]}function c1e(t,e){return t.field.isEqual(e.field)&&function(i,r){return i instanceof Pm&&r instanceof Pm||i instanceof Bm&&r instanceof Bm?i2(i.elements,r.elements,vl):i instanceof yE&&r instanceof yE?vl(i.Te,r.Te):i instanceof vE&&r instanceof vE}(t.transform,e.transform)}class d1{constructor(e,n){this.updateTime=e,this.exists=n}static none(){return new d1}static exists(e){return new d1(void 0,e)}static updateTime(e){return new d1(e)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(e){return this.exists===e.exists&&(this.updateTime?!!e.updateTime&&this.updateTime.isEqual(e.updateTime):!e.updateTime)}}function w8(t,e){return t.updateTime!==void 0?e.isFoundDocument()&&e.version.isEqual(t.updateTime):t.exists===void 0||t.exists===e.isFoundDocument()}class YC{}function KG(t,e){if(!t.hasLocalMutations||e&&e.fields.length===0)return null;if(e===null)return t.isNoDocument()?new f1e(t.key,d1.none()):new KC(t.key,t.data,d1.none());{const n=t.data,i=Xa.empty();let r=new zr(qs.comparator);for(let s of e.fields)if(!r.has(s)){let o=n.field(s);o===null&&s.length>1&&(s=s.popLast(),o=n.field(s)),o===null?i.delete(s):i.set(s,o),r=r.add(s)}return new Vg(t.key,i,new ac(r.toArray()),d1.none())}}function h1e(t,e,n){t instanceof KC?function(r,s,o){const a=r.value.clone(),l=KB(r.fieldTransforms,s,o.transformResults);a.setAll(l),s.convertToFoundDocument(o.version,a).setHasCommittedMutations()}(t,e,n):t instanceof Vg?function(r,s,o){if(!w8(r.precondition,s))return void s.convertToUnknownDocument(o.version);const a=KB(r.fieldTransforms,s,o.transformResults),l=s.data;l.setAll(JG(r)),l.setAll(a),s.convertToFoundDocument(o.version,l).setHasCommittedMutations()}(t,e,n):function(r,s,o){s.convertToNoDocument(o.version).setHasCommittedMutations()}(0,e,n)}function k5(t,e,n,i){return t instanceof KC?function(s,o,a,l){if(!w8(s.precondition,o))return a;const u=s.value.clone(),c=JB(s.fieldTransforms,l,o);return u.setAll(c),o.convertToFoundDocument(o.version,u).setHasLocalMutations(),null}(t,e,n,i):t instanceof Vg?function(s,o,a,l){if(!w8(s.precondition,o))return a;const u=JB(s.fieldTransforms,l,o),c=o.data;return c.setAll(JG(s)),c.setAll(u),o.convertToFoundDocument(o.version,c).setHasLocalMutations(),a===null?null:a.unionWith(s.fieldMask.fields).unionWith(s.fieldTransforms.map(h=>h.field))}(t,e,n,i):function(s,o,a){return w8(s.precondition,o)?(o.convertToNoDocument(o.version).setHasLocalMutations(),null):a}(t,e,n)}function YB(t,e){return t.type===e.type&&!!t.key.isEqual(e.key)&&!!t.precondition.isEqual(e.precondition)&&!!function(i,r){return i===void 0&&r===void 0||!(!i||!r)&&i2(i,r,(s,o)=>c1e(s,o))}(t.fieldTransforms,e.fieldTransforms)&&(t.type===0?t.value.isEqual(e.value):t.type!==1||t.data.isEqual(e.data)&&t.fieldMask.isEqual(e.fieldMask))}class KC extends YC{constructor(e,n,i,r=[]){super(),this.key=e,this.value=n,this.precondition=i,this.fieldTransforms=r,this.type=0}getFieldMask(){return null}}class Vg extends YC{constructor(e,n,i,r,s=[]){super(),this.key=e,this.data=n,this.fieldMask=i,this.precondition=r,this.fieldTransforms=s,this.type=1}getFieldMask(){return this.fieldMask}}function JG(t){const e=new Map;return t.fieldMask.fields.forEach(n=>{if(!n.isEmpty()){const i=t.data.field(n);e.set(n,i)}}),e}function KB(t,e,n){const i=new Map;ji(t.length===n.length);for(let r=0;r<n.length;r++){const s=t[r],o=s.transform,a=e.data.field(s.field);i.set(s.field,l1e(o,a,n[r]))}return i}function JB(t,e,n){const i=new Map;for(const r of t){const s=r.transform,o=n.data.field(r.field);i.set(r.field,a1e(s,o,e))}return i}class f1e extends YC{constructor(e,n){super(),this.key=e,this.precondition=n,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}}/** 4582 * @license 4583 * Copyright 2017 Google LLC 4584 * 4585 * Licensed under the Apache License, Version 2.0 (the "License");
4586 * you may not use this file except in compliance with the License. 4587 * You may obtain a copy of the License at 4588 * 4589 * http://www.apache.org/licenses/LICENSE-2.0 4590 * 4591 * Unless required by applicable law or agreed to in writing, software 4592 * distributed under the License is distributed on an "AS IS" BASIS, 4593 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4594 * See the License for the specific language governing permissions and 4595 * limitations under the License. 4596 */class d1e{constructor(e,n,i,r){this.batchId=e,this.localWriteTime=n,this.baseMutations=i,this.mutations=r}applyToRemoteDocument(e,n){const i=n.mutationResults;for(let r=0;r<this.mutations.length;r++){const s=this.mutations[r];s.key.isEqual(e.key)&&h1e(s,e,i[r])}}applyToLocalView(e,n){for(const i of this.baseMutations)i.key.isEqual(e.key)&&(n=k5(i,e,n,this.localWriteTime));for(const i of this.mutations)i.key.isEqual(e.key)&&(n=k5(i,e,n,this.localWriteTime));return n}applyToLocalDocumentSet(e,n){const i=$G();return this.mutations.forEach(r=>{const s=e.get(r.key),o=s.overlayedDocument;let a=this.applyToLocalView(o,s.mutatedFields);a=n.has(r.key)?null:a;const l=KG(o,a);l!==null&&i.set(r.key,l),o.isValidDocument()||o.convertToNoDocument(kt.min())}),i}keys(){return this.mutations.reduce((e,n)=>e.add(n.key),an())}isEqual(e){return this.batchId===e.batchId&&i2(this.mutations,e.mutations,(n,i)=>YB(n,i))&&i2(this.baseMutations,e.baseMutations,(n,i)=>YB(n,i))}}/** 4597 * @license 4598 * Copyright 2022 Google LLC 4599 * 4600 * Licensed under the Apache License, Version 2.0 (the "License"); 4601 * you may not use this file except in compliance with the License. 4602 * You may obtain a copy of the License at 4603 * 4604 * http://www.apache.org/licenses/LICENSE-2.0 4605 * 4606 * Unless required by applicable law or agreed to in writing, software 4607 * distributed under the License is distributed on an "AS IS" BASIS, 4608 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4609 * See the License for the specific language governing permissions and 4610 * limitations under the License. 4611 */class p1e{constructor(e,n){this.largestBatchId=e,this.mutation=n}getKey(){return this.mutation.key}isEqual(e){return e!==null&&this.mutation===e.mutation}toString(){return`Overlay{ 4612 largestBatchId: ${this.largestBatchId}, 4613 mutation: ${this.mutation.toString()} 4614 }`}}/** 4615 * @license 4616 * Copyright 2017 Google LLC 4617 * 4618 * Licensed under the Apache License, Version 2.0 (the "License"); 4619 * you may not use this file except in compliance with the License. 4620 * You may obtain a copy of the License at 4621 * 4622 * http://www.apache.org/licenses/LICENSE-2.0 4623 * 4624 * Unless required by applicable law or agreed to in writing, software 4625 * distributed under the License is distributed on an "AS IS" BASIS, 4626 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4627 * See the License for the specific language governing permissions and 4628 * limitations under the License. 4629 */class m1e{constructor(e,n){this.count=e,this.unchangedNames=n}}/** 4630 * @license 4631 * Copyright 2017 Google LLC 4632 * 4633 * Licensed under the Apache License, Version 2.0 (the "License"); 4634 * you may not use this file except in compliance with the License. 4635 * You may obtain a copy of the License at 4636 * 4637 * http://www.apache.org/licenses/LICENSE-2.0 4638 * 4639 * Unless required by applicable law or agreed to in writing, software 4640 * distributed under the License is distributed on an "AS IS" BASIS, 4641 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4642 * See the License for the specific language governing permissions and 4643 * limitations under the License. 4644 */var Pi,sn;function ZG(t){if(t===void 0)return pu("GRPC error has no .code"),ke.UNKNOWN;switch(t){case Pi.OK:return ke.OK;case Pi.CANCELLED:return ke.CANCELLED;case Pi.UNKNOWN:return ke.UNKNOWN;case Pi.DEADLINE_EXCEEDED:return ke.DEADLINE_EXCEEDED;case Pi.RESOURCE_EXHAUSTED:return ke.RESOURCE_EXHAUSTED;case Pi.INTERNAL:return ke.INTERNAL;case Pi.UNAVAILABLE:return ke.UNAVAILABLE;case Pi.UNAUTHENTICATED:return ke.UNAUTHENTICATED;case Pi.INVALID_ARGUMENT:return ke.INVALID_ARGUMENT;case Pi.NOT_FOUND:return ke.NOT_FOUND;case Pi.ALREADY_EXISTS:return ke.ALREADY_EXISTS;case Pi.PERMISSION_DENIED:return ke.PERMISSION_DENIED;case Pi.FAILED_PRECONDITION:return ke.FAILED_PRECONDITION;case Pi.ABORTED:return ke.ABORTED;case Pi.OUT_OF_RANGE:return ke.OUT_OF_RANGE;
4644case Pi.UNIMPLEMENTED:return ke.UNIMPLEMENTED;case Pi.DATA_LOSS:return ke.DATA_LOSS;default:return Ht()}}(sn=Pi||(Pi={}))[sn.OK=0]="OK",sn[sn.CANCELLED=1]="CANCELLED",sn[sn.UNKNOWN=2]="UNKNOWN",sn[sn.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",sn[sn.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",sn[sn.NOT_FOUND=5]="NOT_FOUND",sn[sn.ALREADY_EXISTS=6]="ALREADY_EXISTS",sn[sn.PERMISSION_DENIED=7]="PERMISSION_DENIED",sn[sn.UNAUTHENTICATED=16]="UNAUTHENTICATED",sn[sn.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",sn[sn.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",sn[sn.ABORTED=10]="ABORTED",sn[sn.OUT_OF_RANGE=11]="OUT_OF_RANGE",sn[sn.UNIMPLEMENTED=12]="UNIMPLEMENTED",sn[sn.INTERNAL=13]="INTERNAL",sn[sn.UNAVAILABLE=14]="UNAVAILABLE",sn[sn.DATA_LOSS=15]="DATA_LOSS";/** 4645 * @license 4646 * Copyright 2023 Google LLC 4647 * 4648 * Licensed under the Apache License, Version 2.0 (the "License"); 4649 * you may not use this file except in compliance with the License. 4650 * You may obtain a copy of the License at 4651 * 4652 * http://www.apache.org/licenses/LICENSE-2.0 4653 * 4654 * Unless required by applicable law or agreed to in writing, software 4655 * distributed under the License is distributed on an "AS IS" BASIS, 4656 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4657 * See the License for the specific language governing permissions and 4658 * limitations under the License. 4659 */class JC{constructor(){this.onExistenceFilterMismatchCallbacks=new Map}static get instance(){return k7}static getOrCreateInstance(){return k7===null&&(k7=new JC),k7}onExistenceFilterMismatch(e){const n=Symbol();return this.onExistenceFilterMismatchCallbacks.set(n,e),()=>this.onExistenceFilterMismatchCallbacks.delete(n)}notifyOnExistenceFilterMismatch(e){this.onExistenceFilterMismatchCallbacks.forEach(n=>n(e))}}let k7=null;/** 4660 * @license 4661 * Copyright 2023 Google LLC 4662 * 4663 * Licensed under the Apache License, Version 2.0 (the "License"); 4664 * you may not use this file except in compliance with the License. 4665 * You may obtain a copy of the License at 4666 * 4667 * http://www.apache.org/licenses/LICENSE-2.0 4668 * 4669 * Unless required by applicable law or agreed to in writing, software 4670 * distributed under the License is distributed on an "AS IS" BASIS, 4671 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4672 * See the License for the specific language governing permissions and 4673 * limitations under the License. 4674 */function g1e(){return new TextEncoder}/** 4675 * @license 4676 * Copyright 2022 Google LLC 4677 * 4678 * Licensed under the Apache License, Version 2.0 (the "License"); 4679 * you may not use this file except in compliance with the License. 4680 * You may obtain a copy of the License at 4681 * 4682 * http://www.apache.org/licenses/LICENSE-2.0 4683 * 4684 * Unless required by applicable law or agreed to in writing, software 4685 * distributed under the License is distributed on an "AS IS" BASIS, 4686 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4687 * See the License for the specific language governing permissions and 4688 * limitations under the License. 4689 */const A1e=new R0([4294967295,4294967295],0);function ZB(t){const e=g1e().encode(t),n=new vhe;return n.update(e),new Uint8Array(n.digest())}function eD(t){const e=new DataView(t.buffer),n=e.getUint32(0,!0),i=e.getUint32(4,!0),r=e.getUint32(8,!0),s=e.getUint32(12,!0);return[new R0([n,i],0),new R0([r,s],0)]}class ZC{constructor(e,n,i){if(this.bitmap=e,this.padding=n,this.hashCount=i,n<0||n>=8)throw new a5(`Invalid padding: ${n}`);if(i<0)throw new a5(`Invalid hash count: ${i}`);if(e.length>0&&this.hashCount===0)throw new a5(`Invalid hash count: ${i}`);if(e.length===0&&n!==0)throw new a5(`Invalid padding when bitmap length is 0: ${n}`);this.de=8*e.length-n,this.Ae=R0.fromNumber(this.de)}Re(e,n,i){let r=e.add(n.multiply(R0.fromNumber(i)));return r.compare(A1e)===1&&(r=new R0([r.getBits(0),r.getBits(1)],0)),r.modulo(this.Ae).toNumber()}Ve(e){return(this.bitmap[Math.floor(e/8)]&1<<e%8)!=0}mightContain(e){if(this.de===0)return!1;const n=ZB(e),[i,r]=eD(n);for(let s=0;s<this.hashCount;s++){const o=this.Re(i,r,s);if(!this.Ve(o))return!1}return!0}static create(e,n,i){const r=e%8==0?0:8-e%8,s=new Uint8Array(Math.ceil(e/8)),o=new ZC(s,r,n);
4689return i.forEach(a=>o.insert(a)),o}insert(e){if(this.de===0)return;const n=ZB(e),[i,r]=eD(n);for(let s=0;s<this.hashCount;s++){const o=this.Re(i,r,s);this.me(o)}}me(e){const n=Math.floor(e/8),i=e%8;this.bitmap[n]|=1<<i}}class a5 extends Error{constructor(){super(...arguments),this.name="BloomFilterError"}}/** 4690 * @license 4691 * Copyright 2017 Google LLC 4692 * 4693 * Licensed under the Apache License, Version 2.0 (the "License"); 4694 * you may not use this file except in compliance with the License. 4695 * You may obtain a copy of the License at 4696 * 4697 * http://www.apache.org/licenses/LICENSE-2.0 4698 * 4699 * Unless required by applicable law or agreed to in writing, software 4700 * distributed under the License is distributed on an "AS IS" BASIS, 4701 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4702 * See the License for the specific language governing permissions and 4703 * limitations under the License. 4704 */class Gg{constructor(e,n,i,r,s){this.snapshotVersion=e,this.targetChanges=n,this.targetMismatches=i,this.documentUpdates=r,this.resolvedLimboDocuments=s}static createSynthesizedRemoteEventForCurrentChange(e,n,i){const r=new Map;return r.set(e,e6.createSynthesizedTargetChangeForCurrentChange(e,n,i)),new Gg(kt.min(),r,new wi(vn),Oc(),an())}}class e6{constructor(e,n,i,r,s){this.resumeToken=e,this.current=n,this.addedDocuments=i,this.modifiedDocuments=r,this.removedDocuments=s}static createSynthesizedTargetChangeForCurrentChange(e,n,i){return new e6(i,n,an(),an(),an())}}/** 4705 * @license 4706 * Copyright 2017 Google LLC 4707 * 4708 * Licensed under the Apache License, Version 2.0 (the "License"); 4709 * you may not use this file except in compliance with the License. 4710 * You may obtain a copy of the License at 4711 * 4712 * http://www.apache.org/licenses/LICENSE-2.0 4713 * 4714 * Unless required by applicable law or agreed to in writing, software 4715 * distributed under the License is distributed on an "AS IS" BASIS, 4716 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4717 * See the License for the specific language governing permissions and 4718 * limitations under the License. 4719 */class I8{constructor(e,n,i,r){this.fe=e,this.removedTargetIds=n,this.key=i,this.ge=r}}class eQ{constructor(e,n){this.targetId=e,this.pe=n}}class tQ{constructor(e,n,i=Hr.EMPTY_BYTE_STRING,r=null){this.state=e,this.targetIds=n,this.resumeToken=i,this.cause=r}}class tD{constructor(){this.ye=0,this.we=iD(),this.Se=Hr.EMPTY_BYTE_STRING,this.be=!1,this.De=!0}get current(){return this.be}get resumeToken(){return this.Se}get ve(){return this.ye!==0}get Ce(){return this.De}Fe(e){e.approximateByteSize()>0&&(this.De=!0,this.Se=e)}Me(){let e=an(),n=an(),i=an();return this.we.forEach((r,s)=>{switch(s){case 0:e=e.add(r);break;case 2:n=n.add(r);break;case 1:i=i.add(r);break;default:Ht()}}),new e6(this.Se,this.be,e,n,i)}xe(){this.De=!1,this.we=iD()}Oe(e,n){this.De=!0,this.we=this.we.insert(e,n)}Ne(e){this.De=!0,this.we=this.we.remove(e)}Be(){this.ye+=1}Le(){this.ye-=1}ke(){this.De=!0,this.be=!0}}class v1e{constructor(e){this.qe=e,this.Qe=new Map,this.Ke=Oc(),this.$e=nD(),this.Ue=new wi(vn)}We(e){for(const n of e.fe)e.ge&&e.ge.isFoundDocument()?this.Ge(n,e.ge):this.ze(n,e.key,e.ge);for(const n of e.removedTargetIds)this.ze(n,e.key,e.ge)}je(e){this.forEachTarget(e,n=>{const i=this.He(n);switch(e.state){case 0:this.Je(n)&&i.Fe(e.resumeToken);break;case 1:i.Le(),i.ve||i.xe(),i.Fe(e.resumeToken);break;case 2:i.Le(),i.ve||this.removeTarget(n);break;case 3:this.Je(n)&&(i.ke(),i.Fe(e.resumeToken));break;case 4:this.Je(n)&&(this.Ye(n),i.Fe(e.resumeToken));break;default:Ht()}})}forEachTarget(e,n){e.targetIds.length>0?e.targetIds.forEach(n):this.Qe.forEach((i,r)=>{this.Je(r)&&n(r)})}Ze(e){var n,i;const r=e.targetId,s=e.pe.count,o=this.Xe(r);if(o){const a=o.target;if(mE(a))if(s===0){const l=new St(a.path);this.ze(r,l,Lr.newNoDocument(l,kt.min()))}else ji(s===1);else{const l=this.et(r);if(l!==s){const u=this.tt(e,l);if(u.status!==0){this.Ye(r);const c=u.status===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.Ue=this.Ue.insert(r,c)}(n=JC.instance)===null||n===void 0||n.notifyOnExistenceFilterMismatch(function(h,f,m,g){var v,_,A,y,q,
4719E;const T={localCacheCount:m,existenceFilterCount:g.count},C=g.unchangedNames;return C&&(T.bloomFilter={applied:h===0,hashCount:(v=C==null?void 0:C.hashCount)!==null&&v!==void 0?v:0,bitmapLength:(y=(A=(_=C==null?void 0:C.bits)===null||_===void 0?void 0:_.bitmap)===null||A===void 0?void 0:A.length)!==null&&y!==void 0?y:0,padding:(E=(q=C==null?void 0:C.bits)===null||q===void 0?void 0:q.padding)!==null&&E!==void 0?E:0},f&&(T.bloomFilter.mightContain=f)),T}(u.status,(i=u.nt)!==null&&i!==void 0?i:null,l,e.pe))}}}}tt(e,n){const{unchangedNames:i,count:r}=e.pe;if(!i||!i.bits)return{status:1};const{bits:{bitmap:s="",padding:o=0},hashCount:a=0}=i;let l,u;try{l=I1(s).toUint8Array()}catch(h){if(h instanceof NG)return n2("Decoding the base64 bloom filter in existence filter failed ("+h.message+"); ignoring the bloom filter and falling back to full re-query."),{status:1};throw h}try{u=new ZC(l,o,a)}catch(h){return n2(h instanceof a5?"BloomFilter error: ":"Applying bloom filter failed: ",h),{status:1}}const c=h=>{const f=this.qe.rt();return u.mightContain(`projects/${f.projectId}/databases/${f.database}/documents/${h}`)};return u.de===0?{status:1}:{status:r===n-this.it(e.targetId,c)?0:2,nt:c}}it(e,n){const i=this.qe.getRemoteKeysForTarget(e);let r=0;return i.forEach(s=>{n(s.path.canonicalString())||(this.ze(e,s,null),r++)}),r}st(e){const n=new Map;this.Qe.forEach((s,o)=>{const a=this.Xe(o);if(a){if(s.current&&mE(a.target)){const l=new St(a.target.path);this.Ke.get(l)!==null||this.ot(o,l)||this.ze(o,l,Lr.newNoDocument(l,e))}s.Ce&&(n.set(o,s.Me()),s.xe())}});let i=an();this.$e.forEach((s,o)=>{let a=!0;o.forEachWhile(l=>{const u=this.Xe(l);return!u||u.purpose==="TargetPurposeLimboResolution"||(a=!1,!1)}),a&&(i=i.add(s))}),this.Ke.forEach((s,o)=>o.setReadTime(e));const r=new Gg(e,n,this.Ue,this.Ke,i);return this.Ke=Oc(),this.$e=nD(),this.Ue=new wi(vn),r}Ge(e,n){if(!this.Je(e))return;const i=this.ot(e,n.key)?2:0;this.He(e).Oe(n.key,i),this.Ke=this.Ke.insert(n.key,n),this.$e=this.$e.insert(n.key,this._t(n.key).add(e))}ze(e,n,i){if(!this.Je(e))return;const r=this.He(e);this.ot(e,n)?r.Oe(n,1):r.Ne(n),this.$e=this.$e.insert(n,this._t(n).delete(e)),i&&(this.Ke=this.Ke.insert(n,i))}removeTarget(e){this.Qe.delete(e)}et(e){const n=this.He(e).Me();return this.qe.getRemoteKeysForTarget(e).size+n.addedDocuments.size-n.removedDocuments.size}Be(e){this.He(e).Be()}He(e){let n=this.Qe.get(e);return n||(n=new tD,this.Qe.set(e,n)),n}_t(e){let n=this.$e.get(e);return n||(n=new zr(vn),this.$e=this.$e.insert(e,n)),n}Je(e){const n=this.Xe(e)!==null;return n||lt("WatchChangeAggregator","Detected inactive target",e),n}Xe(e){const n=this.Qe.get(e);return n&&n.ve?null:this.qe.ut(e)}Ye(e){this.Qe.set(e,new tD),this.qe.getRemoteKeysForTarget(e).forEach(n=>{this.ze(e,n,null)})}ot(e,n){return this.qe.getRemoteKeysForTarget(e).has(n)}}function nD(){return new wi(St.comparator)}function iD(){return new wi(St.comparator)}const y1e=(()=>({asc:"ASCENDING",desc:"DESCENDING"}))(),q1e=(()=>({"<":"LESS_THAN","<=":"LESS_THAN_OR_EQUAL",">":"GREATER_THAN",">=":"GREATER_THAN_OR_EQUAL","==":"EQUAL","!=":"NOT_EQUAL","array-contains":"ARRAY_CONTAINS",in:"IN","not-in":"NOT_IN","array-contains-any":"ARRAY_CONTAINS_ANY"}))(),_1e=(()=>({and:"AND",or:"OR"}))();class x1e{constructor(e,n){this.databaseId=e,this.useProto3Json=n}}function qE(t,e){return t.useProto3Json||Ng(e)?e:{value:e}}function E1e(t,e){return t.useProto3Json?`${new Date(1e3*e.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+e.nanoseconds).slice(-9)}Z`:{seconds:""+e.seconds,nanos:e.nanoseconds}}function S1e(t,e){return t.useProto3Json?e.toBase64():e.toUint8Array()}function P0(t){return ji(!!t),kt.fromTimestamp(function(n){const i=Fc(n);return new Cs(i.seconds,i.nanos)}(t))}function T1e(t,e){return function(i){return new hi(["projects",i.projectId,"databases",i.database])}(t).child("documents").child(e).canonicalString()}function nQ(t){const e=hi.fromString(t);return ji(oQ(e)),e}function gq(t,e){const n=nQ(e);if(n.get(1)!==t.databaseId.projectId)throw new qt(ke.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+n.get(1)+" vs "+t.databaseId.projectId);
4719if(n.get(3)!==t.databaseId.database)throw new qt(ke.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+n.get(3)+" vs "+t.databaseId.database);return new St(iQ(n))}function _E(t,e){return T1e(t.databaseId,e)}function C1e(t){const e=nQ(t);return e.length===4?hi.emptyPath():iQ(e)}function rD(t){return new hi(["projects",t.databaseId.projectId,"databases",t.databaseId.database]).canonicalString()}function iQ(t){return ji(t.length>4&&t.get(4)==="documents"),t.popFirst(5)}function w1e(t,e){let n;if("targetChange"in e){e.targetChange;const i=function(u){return u==="NO_CHANGE"?0:u==="ADD"?1:u==="REMOVE"?2:u==="CURRENT"?3:u==="RESET"?4:Ht()}(e.targetChange.targetChangeType||"NO_CHANGE"),r=e.targetChange.targetIds||[],s=function(u,c){return u.useProto3Json?(ji(c===void 0||typeof c=="string"),Hr.fromBase64String(c||"")):(ji(c===void 0||c instanceof Uint8Array),Hr.fromUint8Array(c||new Uint8Array))}(t,e.targetChange.resumeToken),o=e.targetChange.cause,a=o&&function(u){const c=u.code===void 0?ke.UNKNOWN:ZG(u.code);return new qt(c,u.message||"")}(o);n=new tQ(i,r,s,a||null)}else if("documentChange"in e){e.documentChange;const i=e.documentChange;i.document,i.document.name,i.document.updateTime;const r=gq(t,i.document.name),s=P0(i.document.updateTime),o=i.document.createTime?P0(i.document.createTime):kt.min(),a=new Xa({mapValue:{fields:i.document.fields}}),l=Lr.newFoundDocument(r,s,o,a),u=i.targetIds||[],c=i.removedTargetIds||[];n=new I8(u,c,l.key,l)}else if("documentDelete"in e){e.documentDelete;const i=e.documentDelete;i.document;const r=gq(t,i.document),s=i.readTime?P0(i.readTime):kt.min(),o=Lr.newNoDocument(r,s),a=i.removedTargetIds||[];n=new I8([],a,o.key,o)}else if("documentRemove"in e){e.documentRemove;const i=e.documentRemove;i.document;const r=gq(t,i.document),s=i.removedTargetIds||[];n=new I8([],s,r,null)}else{if(!("filter"in e))return Ht();{e.filter;const i=e.filter;i.targetId;const{count:r=0,unchangedNames:s}=i,o=new m1e(r,s),a=i.targetId;n=new eQ(a,o)}}return n}function I1e(t,e){return{documents:[_E(t,e.path)]}}function M1e(t,e){const n={structuredQuery:{}},i=e.path;e.collectionGroup!==null?(n.parent=_E(t,i),n.structuredQuery.from=[{collectionId:e.collectionGroup,allDescendants:!0}]):(n.parent=_E(t,i.popLast()),n.structuredQuery.from=[{collectionId:i.lastSegment()}]);const r=function(l){if(l.length!==0)return sQ(yl.create(l,"and"))}(e.filters);r&&(n.structuredQuery.where=r);const s=function(l){if(l.length!==0)return l.map(u=>function(h){return{field:G3(h.field),direction:P1e(h.dir)}}(u))}(e.orderBy);s&&(n.structuredQuery.orderBy=s);const o=qE(t,e.limit);return o!==null&&(n.structuredQuery.limit=o),e.startAt&&(n.structuredQuery.startAt=function(l){return{before:l.inclusive,values:l.position}}(e.startAt)),e.endAt&&(n.structuredQuery.endAt=function(l){return{before:!l.inclusive,values:l.position}}(e.endAt)),n}function R1e(t){let e=C1e(t.parent);const n=t.structuredQuery,i=n.from?n.from.length:0;let r=null;if(i>0){ji(i===1);const c=n.from[0];c.allDescendants?r=c.collectionId:e=e.child(c.collectionId)}let s=[];n.where&&(s=function(h){const f=rQ(h);return f instanceof yl&&OG(f)?f.getFilters():[f]}(n.where));let o=[];n.orderBy&&(o=function(h){return h.map(f=>function(g){return new L5(Q3(g.field),function(_){switch(_){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}}(g.direction))}(f))}(n.orderBy));let a=null;n.limit&&(a=function(h){let f;return f=typeof h=="object"?h.value:h,Ng(f)?null:f}(n.limit));let l=null;n.startAt&&(l=function(h){const f=!!h.before,m=h.values||[];return new bm(m,f)}(n.startAt));let u=null;return n.endAt&&(u=function(h){const f=!h.before,m=h.values||[];return new bm(m,f)}(n.endAt)),jhe(e,r,o,s,a,"F",l,u)}function b1e(t,e){const n=function(r){switch(r){case"TargetPurposeListen":return null;case"TargetPurposeExistenceFilterMismatch":return"existence-filter-mismatch";case"TargetPurposeExistenceFilterMismatchBloom":return"existence-filter-mismatch-bloom";case"TargetPurposeLimboResolution":return"limbo-document";default:return Ht()}}(e.purpose);return n==null?null:{"goog-listen-tags":n}}function rQ(t){return t.unaryFilter!==void 0?function(n){switch(n.unaryFilter.op){case"IS_NAN":const i=Q3(n.unaryFilter.field);
4719return Hi.create(i,"==",{doubleValue:NaN});case"IS_NULL":const r=Q3(n.unaryFilter.field);return Hi.create(r,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":const s=Q3(n.unaryFilter.field);return Hi.create(s,"!=",{doubleValue:NaN});case"IS_NOT_NULL":const o=Q3(n.unaryFilter.field);return Hi.create(o,"!=",{nullValue:"NULL_VALUE"});default:return Ht()}}(t):t.fieldFilter!==void 0?function(n){return Hi.create(Q3(n.fieldFilter.field),function(r){switch(r){case"EQUAL":return"==";case"NOT_EQUAL":return"!=";case"GREATER_THAN":return">";case"GREATER_THAN_OR_EQUAL":return">=";case"LESS_THAN":return"<";case"LESS_THAN_OR_EQUAL":return"<=";case"ARRAY_CONTAINS":return"array-contains";case"IN":return"in";case"NOT_IN":return"not-in";case"ARRAY_CONTAINS_ANY":return"array-contains-any";default:return Ht()}}(n.fieldFilter.op),n.fieldFilter.value)}(t):t.compositeFilter!==void 0?function(n){return yl.create(n.compositeFilter.filters.map(i=>rQ(i)),function(r){switch(r){case"AND":return"and";case"OR":return"or";default:return Ht()}}(n.compositeFilter.op))}(t):Ht()}function P1e(t){return y1e[t]}function B1e(t){return q1e[t]}function D1e(t){return _1e[t]}function G3(t){return{fieldPath:t.canonicalString()}}function Q3(t){return qs.fromServerFormat(t.fieldPath)}function sQ(t){return t instanceof Hi?function(n){if(n.op==="=="){if(QB(n.value))return{unaryFilter:{field:G3(n.field),op:"IS_NAN"}};if(GB(n.value))return{unaryFilter:{field:G3(n.field),op:"IS_NULL"}}}else if(n.op==="!="){if(QB(n.value))return{unaryFilter:{field:G3(n.field),op:"IS_NOT_NAN"}};if(GB(n.value))return{unaryFilter:{field:G3(n.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:G3(n.field),op:B1e(n.op),value:n.value}}}(t):t instanceof yl?function(n){const i=n.getFilters().map(r=>sQ(r));return i.length===1?i[0]:{compositeFilter:{op:D1e(n.op),filters:i}}}(t):Ht()}function oQ(t){return t.length>=4&&t.get(0)==="projects"&&t.get(2)==="databases"}/** 4720 * @license 4721 * Copyright 2017 Google LLC 4722 * 4723 * Licensed under the Apache License, Version 2.0 (the "License"); 4724 * you may not use this file except in compliance with the License. 4725 * You may obtain a copy of the License at 4726 * 4727 * http://www.apache.org/licenses/LICENSE-2.0 4728 * 4729 * Unless required by applicable law or agreed to in writing, software 4730 * distributed under the License is distributed on an "AS IS" BASIS, 4731 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4732 * See the License for the specific language governing permissions and 4733 * limitations under the License. 4734 */class lc{constructor(e,n,i,r,s=kt.min(),o=kt.min(),a=Hr.EMPTY_BYTE_STRING,l=null){this.target=e,this.targetId=n,this.purpose=i,this.sequenceNumber=r,this.snapshotVersion=s,this.lastLimboFreeSnapshotVersion=o,this.resumeToken=a,this.expectedCount=l}withSequenceNumber(e){return new lc(this.target,this.targetId,this.purpose,e,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(e,n){return new lc(this.target,this.targetId,this.purpose,this.sequenceNumber,n,this.lastLimboFreeSnapshotVersion,e,null)}withExpectedCount(e){return new lc(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,e)}withLastLimboFreeSnapshotVersion(e){return new lc(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,e,this.resumeToken,this.expectedCount)}}/** 4735 * @license 4736 * Copyright 2017 Google LLC 4737 * 4738 * Licensed under the Apache License, Version 2.0 (the "License"); 4739 * you may not use this file except in compliance with the License. 4740 * You may obtain a copy of the License at 4741 * 4742 * http://www.apache.org/licenses/LICENSE-2.0 4743 * 4744 * Unless required by applicable law or agreed to in writing, software 4745 * distributed under the License is distributed on an "AS IS" BASIS, 4746 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4747 * See the License for the specific language governing permissions and 4748 * limitations under the License. 4749 */class L1e{constructor(e){this.ct=e}}function N1e(t){const e=R1e({parent:t.parent,structuredQuery:t.structuredQuery});return t.limitType==="LAST"?gE(e,e.limit,"L"):e}/** 4750 * @license 4751 * Copyright 2019 Google LLC 4752 * 4753 * Licensed under the Apache License, Version 2.0 (the "License");
4754 * you may not use this file except in compliance with the License. 4755 * You may obtain a copy of the License at 4756 * 4757 * http://www.apache.org/licenses/LICENSE-2.0 4758 * 4759 * Unless required by applicable law or agreed to in writing, software 4760 * distributed under the License is distributed on an "AS IS" BASIS, 4761 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4762 * See the License for the specific language governing permissions and 4763 * limitations under the License. 4764 */class k1e{constructor(){this.sn=new F1e}addToCollectionParentIndex(e,n){return this.sn.add(n),Re.resolve()}getCollectionParents(e,n){return Re.resolve(this.sn.getEntries(n))}addFieldIndex(e,n){return Re.resolve()}deleteFieldIndex(e,n){return Re.resolve()}getDocumentsMatchingTarget(e,n){return Re.resolve(null)}getIndexType(e,n){return Re.resolve(0)}getFieldIndexes(e,n){return Re.resolve([])}getNextCollectionGroupToUpdate(e){return Re.resolve(null)}getMinOffset(e,n){return Re.resolve(kc.min())}getMinOffsetFromCollectionGroup(e,n){return Re.resolve(kc.min())}updateCollectionGroup(e,n,i){return Re.resolve()}updateIndexEntries(e,n){return Re.resolve()}}class F1e{constructor(){this.index={}}add(e){const n=e.lastSegment(),i=e.popLast(),r=this.index[n]||new zr(hi.comparator),s=!r.has(i);return this.index[n]=r.add(i),s}has(e){const n=e.lastSegment(),i=e.popLast(),r=this.index[n];return r&&r.has(i)}getEntries(e){return(this.index[e]||new zr(hi.comparator)).toArray()}}/** 4765 * @license 4766 * Copyright 2017 Google LLC 4767 * 4768 * Licensed under the Apache License, Version 2.0 (the "License"); 4769 * you may not use this file except in compliance with the License. 4770 * You may obtain a copy of the License at 4771 * 4772 * http://www.apache.org/licenses/LICENSE-2.0 4773 * 4774 * Unless required by applicable law or agreed to in writing, software 4775 * distributed under the License is distributed on an "AS IS" BASIS, 4776 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4777 * See the License for the specific language governing permissions and 4778 * limitations under the License. 4779 */class o2{constructor(e){this.Mn=e}next(){return this.Mn+=2,this.Mn}static xn(){return new o2(0)}static On(){return new o2(-1)}}/** 4780 * @license 4781 * Copyright 2017 Google LLC 4782 * 4783 * Licensed under the Apache License, Version 2.0 (the "License"); 4784 * you may not use this file except in compliance with the License. 4785 * You may obtain a copy of the License at 4786 * 4787 * http://www.apache.org/licenses/LICENSE-2.0 4788 * 4789 * Unless required by applicable law or agreed to in writing, software 4790 * distributed under the License is distributed on an "AS IS" BASIS, 4791 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4792 * See the License for the specific language governing permissions and 4793 * limitations under the License. 4794 */class O1e{constructor(){this.changes=new z2(e=>e.toString(),(e,n)=>e.isEqual(n)),this.changesApplied=!1}addEntry(e){this.assertNotApplied(),this.changes.set(e.key,e)}removeEntry(e,n){this.assertNotApplied(),this.changes.set(e,Lr.newInvalidDocument(e).setReadTime(n))}getEntry(e,n){this.assertNotApplied();const i=this.changes.get(n);return i!==void 0?Re.resolve(i):this.getFromCache(e,n)}getEntries(e,n){return this.getAllFromCache(e,n)}apply(e){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(e)}assertNotApplied(){}}/** 4795 * @license 4796 * Copyright 2017 Google LLC 4797 * 4798 * Licensed under the Apache License, Version 2.0 (the "License"); 4799 * you may not use this file except in compliance with the License. 4800 * You may obtain a copy of the License at 4801 * 4802 * http://www.apache.org/licenses/LICENSE-2.0 4803 * 4804 * Unless required by applicable law or agreed to in writing, software 4805 * distributed under the License is distributed on an "AS IS" BASIS, 4806 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4807 * See the License for the specific language governing permissions and 4808 * limitations under the License. 4809 *//** 4810 * @license 4811 * Copyright 2022 Google LLC 4812 * 4813 * Licensed under the Apache License, Version 2.0 (the "License"); 4814 * you may not use this file except in compliance with the License. 4815 * You may obtain a copy of the License at 4816 * 4817 * http://www.apache.org/licenses/LICENSE-2.0 4818 * 4819 * Unless required by applicable law or agreed to in writing, softw
4819are 4820 * distributed under the License is distributed on an "AS IS" BASIS, 4821 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4822 * See the License for the specific language governing permissions and 4823 * limitations under the License. 4824 */class U1e{constructor(e,n){this.overlayedDocument=e,this.mutatedFields=n}}/** 4825 * @license 4826 * Copyright 2017 Google LLC 4827 * 4828 * Licensed under the Apache License, Version 2.0 (the "License"); 4829 * you may not use this file except in compliance with the License. 4830 * You may obtain a copy of the License at 4831 * 4832 * http://www.apache.org/licenses/LICENSE-2.0 4833 * 4834 * Unless required by applicable law or agreed to in writing, software 4835 * distributed under the License is distributed on an "AS IS" BASIS, 4836 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4837 * See the License for the specific language governing permissions and 4838 * limitations under the License. 4839 */class z1e{constructor(e,n,i,r){this.remoteDocumentCache=e,this.mutationQueue=n,this.documentOverlayCache=i,this.indexManager=r}getDocument(e,n){let i=null;return this.documentOverlayCache.getOverlay(e,n).next(r=>(i=r,this.remoteDocumentCache.getEntry(e,n))).next(r=>(i!==null&&k5(i.mutation,r,ac.empty(),Cs.now()),r))}getDocuments(e,n){return this.remoteDocumentCache.getEntries(e,n).next(i=>this.getLocalViewOfDocuments(e,i,an()).next(()=>i))}getLocalViewOfDocuments(e,n,i=an()){const r=n1();return this.populateOverlays(e,r,n).next(()=>this.computeViews(e,n,r,i).next(s=>{let o=o5();return s.forEach((a,l)=>{o=o.insert(a,l.overlayedDocument)}),o}))}getOverlayedDocuments(e,n){const i=n1();return this.populateOverlays(e,i,n).next(()=>this.computeViews(e,n,i,an()))}populateOverlays(e,n,i){const r=[];return i.forEach(s=>{n.has(s)||r.push(s)}),this.documentOverlayCache.getOverlays(e,r).next(s=>{s.forEach((o,a)=>{n.set(o,a)})})}computeViews(e,n,i,r){let s=Oc();const o=N5(),a=function(){return N5()}();return n.forEach((l,u)=>{const c=i.get(u.key);r.has(u.key)&&(c===void 0||c.mutation instanceof Vg)?s=s.insert(u.key,u):c!==void 0?(o.set(u.key,c.mutation.getFieldMask()),k5(c.mutation,u,c.mutation.getFieldMask(),Cs.now())):o.set(u.key,ac.empty())}),this.recalculateAndSaveOverlays(e,s).next(l=>(l.forEach((u,c)=>o.set(u,c)),n.forEach((u,c)=>{var h;return a.set(u,new U1e(c,(h=o.get(u))!==null&&h!==void 0?h:null))}),a))}recalculateAndSaveOverlays(e,n){const i=N5();let r=new wi((o,a)=>o-a),s=an();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(e,n).next(o=>{for(const a of o)a.keys().forEach(l=>{const u=n.get(l);if(u===null)return;let c=i.get(l)||ac.empty();c=a.applyToLocalView(u,c),i.set(l,c);const h=(r.get(a.batchId)||an()).add(l);r=r.insert(a.batchId,h)})}).next(()=>{const o=[],a=r.getReverseIterator();for(;a.hasNext();){const l=a.getNext(),u=l.key,c=l.value,h=$G();c.forEach(f=>{if(!s.has(f)){const m=KG(n.get(f),i.get(f));m!==null&&h.set(f,m),s=s.add(f)}}),o.push(this.documentOverlayCache.saveOverlays(e,u,h))}return Re.waitFor(o)}).next(()=>i)}recalculateAndSaveOverlaysForDocumentKeys(e,n){return this.remoteDocumentCache.getEntries(e,n).next(i=>this.recalculateAndSaveOverlays(e,i))}getDocumentsMatchingQuery(e,n,i){return function(s){return St.isDocumentKey(s.path)&&s.collectionGroup===null&&s.filters.length===0}(n)?this.getDocumentsMatchingDocumentQuery(e,n.path):Khe(n)?this.getDocumentsMatchingCollectionGroupQuery(e,n,i):this.getDocumentsMatchingCollectionQuery(e,n,i)}getNextDocuments(e,n,i,r){return this.remoteDocumentCache.getAllFromCollectionGroup(e,n,i,r).next(s=>{const o=r-s.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(e,n,i.largestBatchId,r-s.size):Re.resolve(n1());let a=-1,l=s;return o.next(u=>Re.forEach(u,(c,h)=>(a<h.largestBatchId&&(a=h.largestBatchId),s.get(c)?Re.resolve():this.remoteDocumentCache.getEntry(e,c).next(f=>{l=l.insert(c,f)}))).next(()=>this.populateOverlays(e,u,s)).next(()=>this.computeViews(e,l,u,an())).next(c=>({batchId:a,changes:t1e(c)})))})}getDocumentsMatchingDocumentQuery(e,n){return this.getDocument(e,new St(n)).next(i=>{let r=o5();
vendor: 4,211 bytes, lines 4839-4873
4839return i.isFoundDocument()&&(r=r.insert(i.key,i)),r})}getDocumentsMatchingCollectionGroupQuery(e,n,i){const r=n.collectionGroup;let s=o5();return this.indexManager.getCollectionParents(e,r).next(o=>Re.forEach(o,a=>{const l=function(c,h){return new Fg(h,null,c.explicitOrderBy.slice(),c.filters.slice(),c.limit,c.limitType,c.startAt,c.endAt)}(n,a.child(r));return this.getDocumentsMatchingCollectionQuery(e,l,i).next(u=>{u.forEach((c,h)=>{s=s.insert(c,h)})})}).next(()=>s))}getDocumentsMatchingCollectionQuery(e,n,i){let r;return this.documentOverlayCache.getOverlaysForCollection(e,n.path,i.largestBatchId).next(s=>(r=s,this.remoteDocumentCache.getDocumentsMatchingQuery(e,n,i,r))).next(s=>{r.forEach((a,l)=>{const u=l.getKey();s.get(u)===null&&(s=s.insert(u,Lr.newInvalidDocument(u)))});let o=o5();return s.forEach((a,l)=>{const u=r.get(a);u!==void 0&&k5(u.mutation,l,ac.empty(),Cs.now()),Ug(n,l)&&(o=o.insert(a,l))}),o})}}/** 4840 * @license 4841 * Copyright 2020 Google LLC 4842 * 4843 * Licensed under the Apache License, Version 2.0 (the "License"); 4844 * you may not use this file except in compliance with the License. 4845 * You may obtain a copy of the License at 4846 * 4847 * http://www.apache.org/licenses/LICENSE-2.0 4848 * 4849 * Unless required by applicable law or agreed to in writing, software 4850 * distributed under the License is distributed on an "AS IS" BASIS, 4851 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4852 * See the License for the specific language governing permissions and 4853 * limitations under the License. 4854 */class V1e{constructor(e){this.serializer=e,this.ar=new Map,this.ur=new Map}getBundleMetadata(e,n){return Re.resolve(this.ar.get(n))}saveBundleMetadata(e,n){return this.ar.set(n.id,function(r){return{id:r.id,version:r.version,createTime:P0(r.createTime)}}(n)),Re.resolve()}getNamedQuery(e,n){return Re.resolve(this.ur.get(n))}saveNamedQuery(e,n){return this.ur.set(n.name,function(r){return{name:r.name,query:N1e(r.bundledQuery),readTime:P0(r.readTime)}}(n)),Re.resolve()}}/** 4855 * @license 4856 * Copyright 2022 Google LLC 4857 * 4858 * Licensed under the Apache License, Version 2.0 (the "License"); 4859 * you may not use this file except in compliance with the License. 4860 * You may obtain a copy of the License at 4861 * 4862 * http://www.apache.org/licenses/LICENSE-2.0 4863 * 4864 * Unless required by applicable law or agreed to in writing, software 4865 * distributed under the License is distributed on an "AS IS" BASIS, 4866 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4867 * See the License for the specific language governing permissions and 4868 * limitations under the License. 4869 */class G1e{constructor(){this.overlays=new wi(St.comparator),this.cr=new Map}getOverlay(e,n){return Re.resolve(this.overlays.get(n))}getOverlays(e,n){const i=n1();return Re.forEach(n,r=>this.getOverlay(e,r).next(s=>{s!==null&&i.set(r,s)})).next(()=>i)}saveOverlays(e,n,i){return i.forEach((r,s)=>{this.ht(e,n,s)}),Re.resolve()}removeOverlaysForBatchId(e,n,i){const r=this.cr.get(i);return r!==void 0&&(r.forEach(s=>this.overlays=this.overlays.remove(s)),this.cr.delete(i)),Re.resolve()}getOverlaysForCollection(e,n,i){const r=n1(),s=n.length+1,o=new St(n.child("")),a=this.overlays.getIteratorFrom(o);for(;a.hasNext();){const l=a.getNext().value,u=l.getKey();if(!n.isPrefixOf(u.path))break;u.path.length===s&&l.largestBatchId>i&&r.set(l.getKey(),l)}return Re.resolve(r)}getOverlaysForCollectionGroup(e,n,i,r){let s=new wi((u,c)=>u-c);const o=this.overlays.getIterator();for(;o.hasNext();){const u=o.getNext().value;if(u.getKey().getCollectionGroup()===n&&u.largestBatchId>i){let c=s.get(u.largestBatchId);c===null&&(c=n1(),s=s.insert(u.largestBatchId,c)),c.set(u.getKey(),u)}}const a=n1(),l=s.getIterator();for(;l.hasNext()&&(l.getNext().value.forEach((u,c)=>a.set(u,c)),!(a.size()>=r)););return Re.resolve(a)}ht(e,n,i){const r=this.overlays.get(i.key);if(r!==null){const o=this.cr.get(r.largestBatchId).delete(i.key);this.cr.set(r.largestBatchId,o)}this.overlays=this.overlays.insert(i.key,new p1e(n,i));let s=this.cr.get(n);s===void 0&&(s=an(),this.cr.set(n,s)),this.cr.set(n,s.add(i.key))}}/** 4870 * @license 4871 * Copyright 2017 Google LLC 4872 * 4873 * Licensed under the Apache License, Version 2.0 (the "License");
4874 * you may not use this file except in compliance with the License. 4875 * You may obtain a copy of the License at 4876 * 4877 * http://www.apache.org/licenses/LICENSE-2.0 4878 * 4879 * Unless required by applicable law or agreed to in writing, software 4880 * distributed under the License is distributed on an "AS IS" BASIS, 4881 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4882 * See the License for the specific language governing permissions and 4883 * limitations under the License. 4884 */class ew{constructor(){this.lr=new zr(ir.hr),this.Pr=new zr(ir.Ir)}isEmpty(){return this.lr.isEmpty()}addReference(e,n){const i=new ir(e,n);this.lr=this.lr.add(i),this.Pr=this.Pr.add(i)}Tr(e,n){e.forEach(i=>this.addReference(i,n))}removeReference(e,n){this.Er(new ir(e,n))}dr(e,n){e.forEach(i=>this.removeReference(i,n))}Ar(e){const n=new St(new hi([])),i=new ir(n,e),r=new ir(n,e+1),s=[];return this.Pr.forEachInRange([i,r],o=>{this.Er(o),s.push(o.key)}),s}Rr(){this.lr.forEach(e=>this.Er(e))}Er(e){this.lr=this.lr.delete(e),this.Pr=this.Pr.delete(e)}Vr(e){const n=new St(new hi([])),i=new ir(n,e),r=new ir(n,e+1);let s=an();return this.Pr.forEachInRange([i,r],o=>{s=s.add(o.key)}),s}containsKey(e){const n=new ir(e,0),i=this.lr.firstAfterOrEqual(n);return i!==null&&e.isEqual(i.key)}}class ir{constructor(e,n){this.key=e,this.mr=n}static hr(e,n){return St.comparator(e.key,n.key)||vn(e.mr,n.mr)}static Ir(e,n){return vn(e.mr,n.mr)||St.comparator(e.key,n.key)}}/** 4885 * @license 4886 * Copyright 2017 Google LLC 4887 * 4888 * Licensed under the Apache License, Version 2.0 (the "License"); 4889 * you may not use this file except in compliance with the License. 4890 * You may obtain a copy of the License at 4891 * 4892 * http://www.apache.org/licenses/LICENSE-2.0 4893 * 4894 * Unless required by applicable law or agreed to in writing, software 4895 * distributed under the License is distributed on an "AS IS" BASIS, 4896 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4897 * See the License for the specific language governing permissions and 4898 * limitations under the License. 4899 */class Q1e{constructor(e,n){this.indexManager=e,this.referenceDelegate=n,this.mutationQueue=[],this.gr=1,this.pr=new zr(ir.hr)}checkEmpty(e){return Re.resolve(this.mutationQueue.length===0)}addMutationBatch(e,n,i,r){const s=this.gr;this.gr++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];const o=new d1e(s,n,i,r);this.mutationQueue.push(o);for(const a of r)this.pr=this.pr.add(new ir(a.key,s)),this.indexManager.addToCollectionParentIndex(e,a.key.path.popLast());return Re.resolve(o)}lookupMutationBatch(e,n){return Re.resolve(this.yr(n))}getNextMutationBatchAfterBatchId(e,n){const i=n+1,r=this.wr(i),s=r<0?0:r;return Re.resolve(this.mutationQueue.length>s?this.mutationQueue[s]:null)}getHighestUnacknowledgedBatchId(){return Re.resolve(this.mutationQueue.length===0?-1:this.gr-1)}getAllMutationBatches(e){return Re.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(e,n){const i=new ir(n,0),r=new ir(n,Number.POSITIVE_INFINITY),s=[];return this.pr.forEachInRange([i,r],o=>{const a=this.yr(o.mr);s.push(a)}),Re.resolve(s)}getAllMutationBatchesAffectingDocumentKeys(e,n){let i=new zr(vn);return n.forEach(r=>{const s=new ir(r,0),o=new ir(r,Number.POSITIVE_INFINITY);this.pr.forEachInRange([s,o],a=>{i=i.add(a.mr)})}),Re.resolve(this.Sr(i))}getAllMutationBatchesAffectingQuery(e,n){const i=n.path,r=i.length+1;let s=i;St.isDocumentKey(s)||(s=s.child(""));const o=new ir(new St(s),0);let a=new zr(vn);return this.pr.forEachWhile(l=>{const u=l.key.path;return!!i.isPrefixOf(u)&&(u.length===r&&(a=a.add(l.mr)),!0)},o),Re.resolve(this.Sr(a))}Sr(e){const n=[];return e.forEach(i=>{const r=this.yr(i);r!==null&&n.push(r)}),n}removeMutationBatch(e,n){ji(this.br(n.batchId,"removed")===0),this.mutationQueue.shift();let i=this.pr;return Re.forEach(n.mutations,r=>{const s=new ir(r.key,n.batchId);return i=i.delete(s),this.referenceDelegate.markPotentiallyOrphaned(e,r.key)}).next(()=>{this.pr=i})}Cn(e){}containsKey(e,n){const i=new ir(n,0),r=this.pr.firstAfterOrEqual(i);return Re.resolve(n.isEqual(r&&r.key))}
4899performConsistencyCheck(e){return this.mutationQueue.length,Re.resolve()}br(e,n){return this.wr(e)}wr(e){return this.mutationQueue.length===0?0:e-this.mutationQueue[0].batchId}yr(e){const n=this.wr(e);return n<0||n>=this.mutationQueue.length?null:this.mutationQueue[n]}}/** 4900 * @license 4901 * Copyright 2017 Google LLC 4902 * 4903 * Licensed under the Apache License, Version 2.0 (the "License"); 4904 * you may not use this file except in compliance with the License. 4905 * You may obtain a copy of the License at 4906 * 4907 * http://www.apache.org/licenses/LICENSE-2.0 4908 * 4909 * Unless required by applicable law or agreed to in writing, software 4910 * distributed under the License is distributed on an "AS IS" BASIS, 4911 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4912 * See the License for the specific language governing permissions and 4913 * limitations under the License. 4914 */class H1e{constructor(e){this.Dr=e,this.docs=function(){return new wi(St.comparator)}(),this.size=0}setIndexManager(e){this.indexManager=e}addEntry(e,n){const i=n.key,r=this.docs.get(i),s=r?r.size:0,o=this.Dr(n);return this.docs=this.docs.insert(i,{document:n.mutableCopy(),size:o}),this.size+=o-s,this.indexManager.addToCollectionParentIndex(e,i.path.popLast())}removeEntry(e){const n=this.docs.get(e);n&&(this.docs=this.docs.remove(e),this.size-=n.size)}getEntry(e,n){const i=this.docs.get(n);return Re.resolve(i?i.document.mutableCopy():Lr.newInvalidDocument(n))}getEntries(e,n){let i=Oc();return n.forEach(r=>{const s=this.docs.get(r);i=i.insert(r,s?s.document.mutableCopy():Lr.newInvalidDocument(r))}),Re.resolve(i)}getDocumentsMatchingQuery(e,n,i,r){let s=Oc();const o=n.path,a=new St(o.child("")),l=this.docs.getIteratorFrom(a);for(;l.hasNext();){const{key:u,value:{document:c}}=l.getNext();if(!o.isPrefixOf(u.path))break;u.path.length>o.length+1||bhe(Rhe(c),i)<=0||(r.has(c.key)||Ug(n,c))&&(s=s.insert(c.key,c.mutableCopy()))}return Re.resolve(s)}getAllFromCollectionGroup(e,n,i,r){Ht()}vr(e,n){return Re.forEach(this.docs,i=>n(i))}newChangeBuffer(e){return new W1e(this)}getSize(e){return Re.resolve(this.size)}}class W1e extends O1e{constructor(e){super(),this.sr=e}applyChanges(e){const n=[];
vendor: 2,333 bytes, lines 4914-4929
4914return this.changes.forEach((i,r)=>{r.isValidDocument()?n.push(this.sr.addEntry(e,r)):this.sr.removeEntry(i)}),Re.waitFor(n)}getFromCache(e,n){return this.sr.getEntry(e,n)}getAllFromCache(e,n){return this.sr.getEntries(e,n)}}/** 4915 * @license 4916 * Copyright 2017 Google LLC 4917 * 4918 * Licensed under the Apache License, Version 2.0 (the "License"); 4919 * you may not use this file except in compliance with the License. 4920 * You may obtain a copy of the License at 4921 * 4922 * http://www.apache.org/licenses/LICENSE-2.0 4923 * 4924 * Unless required by applicable law or agreed to in writing, software 4925 * distributed under the License is distributed on an "AS IS" BASIS, 4926 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4927 * See the License for the specific language governing permissions and 4928 * limitations under the License. 4929 */class $1e{constructor(e){this.persistence=e,this.Cr=new z2(n=>jC(n),XC),this.lastRemoteSnapshotVersion=kt.min(),this.highestTargetId=0,this.Fr=0,this.Mr=new ew,this.targetCount=0,this.Or=o2.xn()}forEachTarget(e,n){return this.Cr.forEach((i,r)=>n(r)),Re.resolve()}getLastRemoteSnapshotVersion(e){return Re.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(e){return Re.resolve(this.Fr)}allocateTargetId(e){return this.highestTargetId=this.Or.next(),Re.resolve(this.highestTargetId)}setTargetsMetadata(e,n,i){return i&&(this.lastRemoteSnapshotVersion=i),n>this.Fr&&(this.Fr=n),Re.resolve()}Ln(e){this.Cr.set(e.target,e);const n=e.targetId;n>this.highestTargetId&&(this.Or=new o2(n),this.highestTargetId=n),e.sequenceNumber>this.Fr&&(this.Fr=e.sequenceNumber)}addTargetData(e,n){return this.Ln(n),this.targetCount+=1,Re.resolve()}updateTargetData(e,n){return this.Ln(n),Re.resolve()}removeTargetData(e,n){return this.Cr.delete(n.target),this.Mr.Ar(n.targetId),this.targetCount-=1,Re.resolve()}removeTargets(e,n,i){let r=0;const s=[];return this.Cr.forEach((o,a)=>{a.sequenceNumber<=n&&i.get(a.targetId)===null&&(this.Cr.delete(o),s.push(this.removeMatchingKeysForTargetId(e,a.targetId)),r++)}),Re.waitFor(s).next(()=>r)}getTargetCount(e){return Re.resolve(this.targetCount)}getTargetData(e,n){const i=this.Cr.get(n)||null;return Re.resolve(i)}addMatchingKeys(e,n,i){return this.Mr.Tr(n,i),Re.resolve()}removeMatchingKeys(e,n,i){this.Mr.dr(n,i);const r=this.persistence.referenceDelegate,s=[];
vendor: 4,322 bytes, lines 4929-4963
4929return r&&n.forEach(o=>{s.push(r.markPotentiallyOrphaned(e,o))}),Re.waitFor(s)}removeMatchingKeysForTargetId(e,n){return this.Mr.Ar(n),Re.resolve()}getMatchingKeysForTargetId(e,n){const i=this.Mr.Vr(n);return Re.resolve(i)}containsKey(e,n){return Re.resolve(this.Mr.containsKey(n))}}/** 4930 * @license 4931 * Copyright 2017 Google LLC 4932 * 4933 * Licensed under the Apache License, Version 2.0 (the "License"); 4934 * you may not use this file except in compliance with the License. 4935 * You may obtain a copy of the License at 4936 * 4937 * http://www.apache.org/licenses/LICENSE-2.0 4938 * 4939 * Unless required by applicable law or agreed to in writing, software 4940 * distributed under the License is distributed on an "AS IS" BASIS, 4941 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4942 * See the License for the specific language governing permissions and 4943 * limitations under the License. 4944 */class j1e{constructor(e,n){this.Nr={},this.overlays={},this.Br=new QC(0),this.Lr=!1,this.Lr=!0,this.referenceDelegate=e(this),this.kr=new $1e(this),this.indexManager=new k1e,this.remoteDocumentCache=function(r){return new H1e(r)}(i=>this.referenceDelegate.qr(i)),this.serializer=new L1e(n),this.Qr=new V1e(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.Lr=!1,Promise.resolve()}get started(){return this.Lr}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(e){return this.indexManager}getDocumentOverlayCache(e){let n=this.overlays[e.toKey()];return n||(n=new G1e,this.overlays[e.toKey()]=n),n}getMutationQueue(e,n){let i=this.Nr[e.toKey()];return i||(i=new Q1e(n,this.referenceDelegate),this.Nr[e.toKey()]=i),i}getTargetCache(){return this.kr}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.Qr}runTransaction(e,n,i){lt("MemoryPersistence","Starting transaction:",e);const r=new X1e(this.Br.next());return this.referenceDelegate.Kr(),i(r).next(s=>this.referenceDelegate.$r(r).next(()=>s)).toPromise().then(s=>(r.raiseOnCommittedEvent(),s))}Ur(e,n){return Re.or(Object.values(this.Nr).map(i=>()=>i.containsKey(e,n)))}}class X1e extends Bhe{constructor(e){super(),this.currentSequenceNumber=e}}class tw{constructor(e){this.persistence=e,this.Wr=new ew,this.Gr=null}static zr(e){return new tw(e)}get jr(){if(this.Gr)return this.Gr;throw Ht()}addReference(e,n,i){return this.Wr.addReference(i,n),this.jr.delete(i.toString()),Re.resolve()}removeReference(e,n,i){return this.Wr.removeReference(i,n),this.jr.add(i.toString()),Re.resolve()}markPotentiallyOrphaned(e,n){return this.jr.add(n.toString()),Re.resolve()}removeTarget(e,n){this.Wr.Ar(n.targetId).forEach(r=>this.jr.add(r.toString()));const i=this.persistence.getTargetCache();return i.getMatchingKeysForTargetId(e,n.targetId).next(r=>{r.forEach(s=>this.jr.add(s.toString()))}).next(()=>i.removeTargetData(e,n))}Kr(){this.Gr=new Set}$r(e){const n=this.persistence.getRemoteDocumentCache().newChangeBuffer();return Re.forEach(this.jr,i=>{const r=St.fromPath(i);return this.Hr(e,r).next(s=>{s||n.removeEntry(r,kt.min())})}).next(()=>(this.Gr=null,n.apply(e)))}updateLimboDocument(e,n){return this.Hr(e,n).next(i=>{i?this.jr.delete(n.toString()):this.jr.add(n.toString())})}qr(e){return 0}Hr(e,n){return Re.or([()=>Re.resolve(this.Wr.containsKey(n)),()=>this.persistence.getTargetCache().containsKey(e,n),()=>this.persistence.Ur(e,n)])}}/** 4945 * @license 4946 * Copyright 2017 Google LLC 4947 * 4948 * Licensed under the Apache License, Version 2.0 (the "License"); 4949 * you may not use this file except in compliance with the License. 4950 * You may obtain a copy of the License at 4951 * 4952 * http://www.apache.org/licenses/LICENSE-2.0 4953 * 4954 * Unless required by applicable law or agreed to in writing, software 4955 * distributed under the License is distributed on an "AS IS" BASIS, 4956 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4957 * See the License for the specific language governing permissions and 4958 * limitations under the License. 4959 */class nw{constructor(e,n,i,r){this.targetId=e,this.fromCache=n,this.Li=i,this.ki=r}static qi(e,n){let i=an(),r=an();for(const s of n.docChanges)switch(s.type){case 0:i=i.add(s.doc.key);break;case 1:r=r.add(s.doc.key)}return new nw(e,n.fromCache,i,r)}}/** 4960 * @license 4961 * Copyright 2019 Google LLC 4962 * 4963 * Licensed under the Apache License, Version 2.0 (the "License");
4964 * you may not use this file except in compliance with the License. 4965 * You may obtain a copy of the License at 4966 * 4967 * http://www.apache.org/licenses/LICENSE-2.0 4968 * 4969 * Unless required by applicable law or agreed to in writing, software 4970 * distributed under the License is distributed on an "AS IS" BASIS, 4971 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4972 * See the License for the specific language governing permissions and 4973 * limitations under the License. 4974 */class Y1e{constructor(){this.Qi=!1}initialize(e,n){this.Ki=e,this.indexManager=n,this.Qi=!0}getDocumentsMatchingQuery(e,n,i,r){return this.$i(e,n).next(s=>s||this.Ui(e,n,r,i)).next(s=>s||this.Wi(e,n))}$i(e,n){if(jB(n))return Re.resolve(null);let i=mu(n);return this.indexManager.getIndexType(e,i).next(r=>r===0?null:(n.limit!==null&&r===1&&(n=gE(n,null,"F"),i=mu(n)),this.indexManager.getDocumentsMatchingTarget(e,i).next(s=>{const o=an(...s);return this.Ki.getDocuments(e,o).next(a=>this.indexManager.getMinOffset(e,i).next(l=>{const u=this.Gi(n,a);return this.zi(n,u,o,l.readTime)?this.$i(e,gE(n,null,"F")):this.ji(e,u,n,l)}))})))}Ui(e,n,i,r){return jB(n)||r.isEqual(kt.min())?this.Wi(e,n):this.Ki.getDocuments(e,i).next(s=>{const o=this.Gi(n,s);return this.zi(n,o,i,r)?this.Wi(e,n):(OB()<=An.DEBUG&<("QueryEngine","Re-using previous result from %s to execute query: %s",r.toString(),AE(n)),this.ji(e,o,n,Mhe(r,-1)))})}Gi(e,n){let i=new zr(HG(e));return n.forEach((r,s)=>{Ug(e,s)&&(i=i.add(s))}),i}zi(e,n,i,r){if(e.limit===null)return!1;if(i.size!==n.size)return!0;const s=e.limitType==="F"?n.last():n.first();return!!s&&(s.hasPendingWrites||s.version.compareTo(r)>0)}Wi(e,n){return OB()<=An.DEBUG&<("QueryEngine","Using full collection scan to execute query:",AE(n)),this.Ki.getDocumentsMatchingQuery(e,n,kc.min())}ji(e,n,i,r){return this.Ki.getDocumentsMatchingQuery(e,i,r).next(s=>(n.forEach(o=>{s=s.insert(o.key,o)}),s))}}/** 4975 * @license 4976 * Copyright 2020 Google LLC 4977 * 4978 * Licensed under the Apache License, Version 2.0 (the "License"); 4979 * you may not use this file except in compliance with the License. 4980 * You may obtain a copy of the License at 4981 * 4982 * http://www.apache.org/licenses/LICENSE-2.0 4983 * 4984 * Unless required by applicable law or agreed to in writing, software 4985 * distributed under the License is distributed on an "AS IS" BASIS, 4986 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 4987 * See the License for the specific language governing permissions and 4988 * limitations under the License. 4989 */class K1e{constructor(e,n,i,r){this.persistence=e,this.Hi=n,this.serializer=r,this.Ji=new wi(vn),this.Yi=new z2(s=>jC(s),XC),this.Zi=new Map,this.Xi=e.getRemoteDocumentCache(),this.kr=e.getTargetCache(),this.Qr=e.getBundleCache(),this.es(i)}es(e){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(e),this.indexManager=this.persistence.getIndexManager(e),this.mutationQueue=this.persistence.getMutationQueue(e,this.indexManager),this.localDocuments=new z1e(this.Xi,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.Xi.setIndexManager(this.indexManager),this.Hi.initialize(this.localDocuments,this.indexManager)}collectGarbage(e){return this.persistence.runTransaction("Collect garbage","readwrite-primary",n=>e.collect(n,this.Ji))}}function J1e(t,e,n,i){return new K1e(t,e,n,i)}async function aQ(t,e){const n=gn(t);return await n.persistence.runTransaction("Handle user change","readonly",i=>{let r;
4989return n.mutationQueue.getAllMutationBatches(i).next(s=>(r=s,n.es(e),n.mutationQueue.getAllMutationBatches(i))).next(s=>{const o=[],a=[];let l=an();for(const u of r){o.push(u.batchId);for(const c of u.mutations)l=l.add(c.key)}for(const u of s){a.push(u.batchId);for(const c of u.mutations)l=l.add(c.key)}return n.localDocuments.getDocuments(i,l).next(u=>({ts:u,removedBatchIds:o,addedBatchIds:a}))})})}function lQ(t){const e=gn(t);return e.persistence.runTransaction("Get last remote snapshot version","readonly",n=>e.kr.getLastRemoteSnapshotVersion(n))}function Z1e(t,e){const n=gn(t),i=e.snapshotVersion;let r=n.Ji;return n.persistence.runTransaction("Apply remote event","readwrite-primary",s=>{const o=n.Xi.newChangeBuffer({trackRemovals:!0});r=n.Ji;const a=[];e.targetChanges.forEach((c,h)=>{const f=r.get(h);if(!f)return;a.push(n.kr.removeMatchingKeys(s,c.removedDocuments,h).next(()=>n.kr.addMatchingKeys(s,c.addedDocuments,h)));let m=f.withSequenceNumber(s.currentSequenceNumber);e.targetMismatches.get(h)!==null?m=m.withResumeToken(Hr.EMPTY_BYTE_STRING,kt.min()).withLastLimboFreeSnapshotVersion(kt.min()):c.resumeToken.approximateByteSize()>0&&(m=m.withResumeToken(c.resumeToken,i)),r=r.insert(h,m),function(v,_,A){return v.resumeToken.approximateByteSize()===0||_.snapshotVersion.toMicroseconds()-v.snapshotVersion.toMicroseconds()>=3e8?!0:A.addedDocuments.size+A.modifiedDocuments.size+A.removedDocuments.size>0}(f,m,c)&&a.push(n.kr.updateTargetData(s,m))});let l=Oc(),u=an();if(e.documentUpdates.forEach(c=>{e.resolvedLimboDocuments.has(c)&&a.push(n.persistence.referenceDelegate.updateLimboDocument(s,c))}),a.push(e3e(s,o,e.documentUpdates).next(c=>{l=c.ns,u=c.rs})),!i.isEqual(kt.min())){const c=n.kr.getLastRemoteSnapshotVersion(s).next(h=>n.kr.setTargetsMetadata(s,s.currentSequenceNumber,i));a.push(c)}return Re.waitFor(a).next(()=>o.apply(s)).next(()=>n.localDocuments.getLocalViewOfDocuments(s,l,u)).next(()=>l)}).then(s=>(n.Ji=r,s))}function e3e(t,e,n){let i=an(),r=an();return n.forEach(s=>i=i.add(s)),e.getEntries(t,i).next(s=>{let o=Oc();return n.forEach((a,l)=>{const u=s.get(a);l.isFoundDocument()!==u.isFoundDocument()&&(r=r.add(a)),l.isNoDocument()&&l.version.isEqual(kt.min())?(e.removeEntry(a,l.readTime),o=o.insert(a,l)):!u.isValidDocument()||l.version.compareTo(u.version)>0||l.version.compareTo(u.version)===0&&u.hasPendingWrites?(e.addEntry(l),o=o.insert(a,l)):lt("LocalStore","Ignoring outdated watch update for ",a,". Current version:",u.version," Watch version:",l.version)}),{ns:o,rs:r}})}function t3e(t,e){const n=gn(t);return n.persistence.runTransaction("Allocate target","readwrite",i=>{let r;return n.kr.getTargetData(i,e).next(s=>s?(r=s,Re.resolve(r)):n.kr.allocateTargetId(i).next(o=>(r=new lc(e,o,"TargetPurposeListen",i.currentSequenceNumber),n.kr.addTargetData(i,r).next(()=>r))))}).then(i=>{const r=n.Ji.get(i.targetId);return(r===null||i.snapshotVersion.compareTo(r.snapshotVersion)>0)&&(n.Ji=n.Ji.insert(i.targetId,i),n.Yi.set(e,i.targetId)),i})}async function xE(t,e,n){const i=gn(t),r=i.Ji.get(e),s=n?"readwrite":"readwrite-primary";try{n||await i.persistence.runTransaction("Release target",s,o=>i.persistence.referenceDelegate.removeTarget(o,r))}catch(o){if(!Z4(o))throw o;lt("LocalStore",`Failed to update sequence numbers for target ${e}: ${o}`)}i.Ji=i.Ji.remove(e),i.Yi.delete(r.target)}function sD(t,e,n){const i=gn(t);let r=kt.min(),s=an();return i.persistence.runTransaction("Execute query","readonly",o=>function(l,u,c){const h=gn(l),f=h.Yi.get(c);return f!==void 0?Re.resolve(h.Ji.get(f)):h.kr.getTargetData(u,c)}(i,o,mu(e)).next(a=>{if(a)return r=a.lastLimboFreeSnapshotVersion,i.kr.getMatchingKeysForTargetId(o,a.targetId).next(l=>{s=l})}).next(()=>i.Hi.getDocumentsMatchingQuery(o,e,n?r:kt.min(),n?s:an())).next(a=>(n3e(i,Jhe(e),a),{documents:a,ss:s})))}function n3e(t,e,n){let i=t.Zi.get(e)||kt.min();n.forEach((r,s)=>{s.readTime.compareTo(i)>0&&(i=s.readTime)}),t.Zi.set(e,i)}class oD{constructor(){this.activeTargetIds=r1e()}hs(e){this.activeTargetIds=this.activeTargetIds.add(e)}Ps(e){this.activeTargetIds=this.activeTargetIds.delete(e)}ls(){const e={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(e)}}class i3e{constructor(){this.Hs=new oD,this.Js={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(e){}updateMutationState(e,n,i){}addLocalQueryTarget(e){return this.Hs.hs(e),this.Js[e]||"not-current"}updateQueryState(e,n,i){this.Js[e]=n}removeLocalQueryTarget(e){this.Hs.Ps(e)}isLocalQueryTarget(e){return this.Hs.activeTargetIds.has(e)}clearQueryState(e){delete this.Js[e]}getAllActiveQueryTargets(){return this.Hs.activeTargetIds}isActiveQueryTarget(e){return this.Hs.activeTargetIds.has(e)}start(){return this.Hs=new oD,Promise.resolve()}handleUserChange(e,n,i){}setOnlineState(e){}shutdown(){}writeSequenceNumber(e){}notifyBundleLoaded(e){}}/** 4990 * @license 4991 * Copyright 2019 Google LLC 4992 * 4993 * Licensed under the Apache License, Version 2.0 (the "License");
4994 * you may not use this file except in compliance with the License. 4995 * You may obtain a copy of the License at 4996 * 4997 * http://www.apache.org/licenses/LICENSE-2.0 4998 * 4999 * Unless required by applicable law or agreed to in writing, software 5000 * distributed under the License is distributed on an "AS IS" BASIS, 5001 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5002 * See the License for the specific language governing permissions and 5003 * limitations under the License. 5004 */class r3e{Ys(e){}shutdown(){}}/** 5005 * @license 5006 * Copyright 2019 Google LLC 5007 * 5008 * Licensed under the Apache License, Version 2.0 (the "License"); 5009 * you may not use this file except in compliance with the License. 5010 * You may obtain a copy of the License at 5011 * 5012 * http://www.apache.org/licenses/LICENSE-2.0 5013 * 5014 * Unless required by applicable law or agreed to in writing, software 5015 * distributed under the License is distributed on an "AS IS" BASIS, 5016 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5017 * See the License for the specific language governing permissions and 5018 * limitations under the License. 5019 */class aD{constructor(){this.Zs=()=>this.Xs(),this.eo=()=>this.no(),this.ro=[],this.io()}Ys(e){this.ro.push(e)}shutdown(){window.removeEventListener("online",this.Zs),window.removeEventListener("offline",this.eo)}io(){window.addEventListener("online",this.Zs),window.addEventListener("offline",this.eo)}Xs(){lt("ConnectivityMonitor","Network connectivity changed: AVAILABLE");for(const e of this.ro)e(0)}no(){lt("ConnectivityMonitor","Network connectivity changed: UNAVAILABLE");for(const e of this.ro)e(1)}static v(){return typeof window<"u"&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}}/** 5020 * @license 5021 * Copyright 2023 Google LLC 5022 * 5023 * Licensed under the Apache License, Version 2.0 (the "License"); 5024 * you may not use this file except in compliance with the License. 5025 * You may obtain a copy of the License at 5026 * 5027 * http://www.apache.org/licenses/LICENSE-2.0 5028 * 5029 * Unless required by applicable law or agreed to in writing, software 5030 * distributed under the License is distributed on an "AS IS" BASIS, 5031 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5032 * See the License for the specific language governing permissions and 5033 * limitations under the License. 5034 */let F7=null;function Aq(){return F7===null?F7=function(){return 268435456+Math.round(2147483648*Math.random())}():F7++,"0x"+F7.toString(16)}/** 5035 * @license 5036 * Copyright 2020 Google LLC 5037 * 5038 * Licensed under the Apache License, Version 2.0 (the "License"); 5039 * you may not use this file except in compliance with the License. 5040 * You may obtain a copy of the License at 5041 * 5042 * http://www.apache.org/licenses/LICENSE-2.0 5043 * 5044 * Unless required by applicable law or agreed to in writing, software 5045 * distributed under the License is distributed on an "AS IS" BASIS, 5046 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5047 * See the License for the specific language governing permissions and 5048 * limitations under the License. 5049 */const s3e={BatchGetDocuments:"batchGet",Commit:"commit",RunQuery:"runQuery",RunAggregationQuery:"runAggregationQuery"};/** 5050 * @license 5051 * Copyright 2017 Google LLC 5052 * 5053 * Licensed under the Apache License, Version 2.0 (the "License"); 5054 * you may not use this file except in compliance with the License. 5055 * You may obtain a copy of the License at 5056 * 5057 * http://www.apache.org/licenses/LICENSE-2.0 5058 * 5059 * Unless required by applicable law or agreed to in writing, software 5060 * distributed under the License is distributed on an "AS IS" BASIS, 5061 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5062 * See the License for the specific language governing permissions and 5063 * limitations under the License. 5064 */class o3e{constructor(e){this.so=e.so,this.oo=e.oo}_o(e){this.ao=e}uo(e){this.co=e}onMessage(e){this.lo=e}close(){this.oo()}send(e){this.so(e)}ho(){this.ao()}Po(e){this.co(e)}Io(e){this.lo(e)}}/** 5065 * @license 5066 * Copyright 2017 Google LLC 5067 * 5068 * Licensed under the Apache License, Version 2.0 (the "License");
5069 * you may not use this file except in compliance with the License. 5070 * You may obtain a copy of the License at 5071 * 5072 * http://www.apache.org/licenses/LICENSE-2.0 5073 * 5074 * Unless required by applicable law or agreed to in writing, software 5075 * distributed under the License is distributed on an "AS IS" BASIS, 5076 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5077 * See the License for the specific language governing permissions and 5078 * limitations under the License. 5079 */const br="WebChannelConnection";class a3e extends class{constructor(n){this.databaseInfo=n,this.databaseId=n.databaseId;const i=n.ssl?"https":"http",r=encodeURIComponent(this.databaseId.projectId),s=encodeURIComponent(this.databaseId.database);this.To=i+"://"+n.host,this.Eo=`projects/${r}/databases/${s}`,this.Ao=this.databaseId.database==="(default)"?`project_id=${r}`:`project_id=${r}&database_id=${s}`}get Ro(){return!1}Vo(n,i,r,s,o){const a=Aq(),l=this.mo(n,i);lt("RestConnection",`Sending RPC '${n}' ${a}:`,l,r);const u={"google-cloud-resource-prefix":this.Eo,"x-goog-request-params":this.Ao};return this.fo(u,s,o),this.po(n,l,u,r).then(c=>(lt("RestConnection",`Received RPC '${n}' ${a}: `,c),c),c=>{throw n2("RestConnection",`RPC '${n}' ${a} failed with error: `,c,"url: ",l,"request:",r),c})}yo(n,i,r,s,o,a){return this.Vo(n,i,r,s,o)}fo(n,i,r){n["X-Goog-Api-Client"]=function(){return"gl-js/ fire/"+U2}(),n["Content-Type"]="text/plain",this.databaseInfo.appId&&(n["X-Firebase-GMPID"]=this.databaseInfo.appId),i&&i.headers.forEach((s,o)=>n[o]=s),r&&r.headers.forEach((s,o)=>n[o]=s)}mo(n,i){const r=s3e[n];return`${this.To}/v1/${i}:${r}`}}{constructor(e){super(e),this.forceLongPolling=e.forceLongPolling,this.autoDetectLongPolling=e.autoDetectLongPolling,this.useFetchStreams=e.useFetchStreams,this.longPollingOptions=e.longPollingOptions}po(e,n,i,r){const s=Aq();return new Promise((o,a)=>{const l=new Ahe;l.setWithCredentials(!0),l.listenOnce(phe.COMPLETE,()=>{try{switch(l.getLastErrorCode()){case pq.NO_ERROR:const c=l.getResponseJson();lt(br,`XHR for RPC '${e}' ${s} received:`,JSON.stringify(c)),o(c);break;case pq.TIMEOUT:lt(br,`RPC '${e}' ${s} timed out`),a(new qt(ke.DEADLINE_EXCEEDED,"Request time out"));break;case pq.HTTP_ERROR:const h=l.getStatus();if(lt(br,`RPC '${e}' ${s} failed with status:`,h,"response text:",l.getResponseText()),h>0){let f=l.getResponseJson();Array.isArray(f)&&(f=f[0]);const m=f==null?void 0:f.error;if(m&&m.status&&m.message){const g=function(_){const A=_.toLowerCase().replace(/_/g,"-");return Object.values(ke).indexOf(A)>=0?A:ke.UNKNOWN}(m.status);a(new qt(g,m.message))}else a(new qt(ke.UNKNOWN,"Server responded with status "+l.getStatus()))}else a(new qt(ke.UNAVAILABLE,"Connection failed."));break;default:Ht()}}finally{lt(br,`RPC '${e}' ${s} completed.`)}});const u=JSON.stringify(r);lt(br,`RPC '${e}' ${s} sending request:`,r),l.send(n,"POST",u,i,15)})}wo(e,n,i){const r=Aq(),s=[this.To,"/","google.firestore.v1.Firestore","/",e,"/channel"],o=fhe(),a=dhe(),l={httpSessionIdParam:"gsessionid",initMessageHeaders:{},messageUrlParams:{database:`projects/${this.databaseId.projectId}/databases/${this.databaseId.database}`},sendRawJson:!0,supportsCrossDomainXhr:!0,internalChannelParams:{forwardChannelRequestTimeoutMs:6e5},forceLongPolling:this.forceLongPolling,detectBufferingProxy:this.autoDetectLongPolling},u=this.longPollingOptions.timeoutSeconds;u!==void 0&&(l.longPollingTimeout=Math.round(1e3*u)),this.useFetchStreams&&(l.xmlHttpFactory=new ghe({})),this.fo(l.initMessageHeaders,n,i),l.encodeInitMessageHeaders=!0;const c=s.join("");lt(br,`Creating RPC '${e}' stream ${r}: ${c}`,l);const h=o.createWebChannel(c,l);let f=!1,m=!1;const g=new o3e({so:_=>{m?lt(br,`Not sending because RPC '${e}' stream ${r} is closed:`,_):(f||(lt(br,`Opening RPC '${e}' stream ${r} transport.`),h.open(),f=!0),lt(br,`RPC '${e}' stream ${r} sending:`,_),h.send(_))},oo:()=>h.close()}),v=(_,A,y)=>{_.listen(A,q=>{try{y(q)}catch(E){setTimeout(()=>{throw E},0)}})};return v(h,D7.EventType.OPEN,()=>{m||lt(br,`RPC '${e}' stream ${r} transport opened.`)}),v(h,D7.EventType.CLOSE,()=>{m||(m=!0,lt(br,`RPC '${e}' stream ${r} transport closed`),g.Po())}
5079),v(h,D7.EventType.ERROR,_=>{m||(m=!0,n2(br,`RPC '${e}' stream ${r} transport errored:`,_),g.Po(new qt(ke.UNAVAILABLE,"The operation could not be completed")))}),v(h,D7.EventType.MESSAGE,_=>{var A;if(!m){const y=_.data[0];ji(!!y);const q=y,E=q.error||((A=q[0])===null||A===void 0?void 0:A.error);if(E){lt(br,`RPC '${e}' stream ${r} received error:`,E);const T=E.status;let C=function(M){const b=Pi[M];if(b!==void 0)return ZG(b)}(T),I=E.message;C===void 0&&(C=ke.INTERNAL,I="Unknown error status: "+T+" with message "+E.message),m=!0,g.Po(new qt(C,I)),h.close()}else lt(br,`RPC '${e}' stream ${r} received:`,y),g.Io(y)}}),v(a,mhe.STAT_EVENT,_=>{_.stat===kB.PROXY?lt(br,`RPC '${e}' stream ${r} detected buffering proxy`):_.stat===kB.NOPROXY&<(br,`RPC '${e}' stream ${r} detected no buffering proxy`)}),setTimeout(()=>{g.ho()},0),g}}function vq(){return typeof document<"u"?document:null}/** 5080 * @license 5081 * Copyright 2020 Google LLC 5082 * 5083 * Licensed under the Apache License, Version 2.0 (the "License"); 5084 * you may not use this file except in compliance with the License. 5085 * You may obtain a copy of the License at 5086 * 5087 * http://www.apache.org/licenses/LICENSE-2.0 5088 * 5089 * Unless required by applicable law or agreed to in writing, software 5090 * distributed under the License is distributed on an "AS IS" BASIS, 5091 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5092 * See the License for the specific language governing permissions and 5093 * limitations under the License. 5094 */function uQ(t){return new x1e(t,!0)}/** 5095 * @license 5096 * Copyright 2017 Google LLC 5097 * 5098 * Licensed under the Apache License, Version 2.0 (the "License"); 5099 * you may not use this file except in compliance with the License. 5100 * You may obtain a copy of the License at 5101 * 5102 * http://www.apache.org/licenses/LICENSE-2.0 5103 * 5104 * Unless required by applicable law or agreed to in writing, software 5105 * distributed under the License is distributed on an "AS IS" BASIS, 5106 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5107 * See the License for the specific language governing permissions and 5108 * limitations under the License. 5109 */class cQ{constructor(e,n,i=1e3,r=1.5,s=6e4){this.ii=e,this.timerId=n,this.So=i,this.bo=r,this.Do=s,this.vo=0,this.Co=null,this.Fo=Date.now(),this.reset()}reset(){this.vo=0}Mo(){this.vo=this.Do}xo(e){this.cancel();const n=Math.floor(this.vo+this.Oo()),i=Math.max(0,Date.now()-this.Fo),r=Math.max(0,n-i);r>0&<("ExponentialBackoff",`Backing off for ${r} ms (base delay: ${this.vo} ms, delay with jitter: ${n} ms, last attempt: ${i} ms ago)`),this.Co=this.ii.enqueueAfterDelay(this.timerId,r,()=>(this.Fo=Date.now(),e())),this.vo*=this.bo,this.vo<this.So&&(this.vo=this.So),this.vo>this.Do&&(this.vo=this.Do)}No(){this.Co!==null&&(this.Co.skipDelay(),this.Co=null)}cancel(){this.Co!==null&&(this.Co.cancel(),this.Co=null)}Oo(){return(Math.random()-.5)*this.vo}}/** 5110 * @license 5111 * Copyright 2017 Google LLC 5112 * 5113 * Licensed under the Apache License, Version 2.0 (the "License"); 5114 * you may not use this file except in compliance with the License. 5115 * You may obtain a copy of the License at 5116 * 5117 * http://www.apache.org/licenses/LICENSE-2.0 5118 * 5119 * Unless required by applicable law or agreed to in writing, software 5120 * distributed under the License is distributed on an "AS IS" BASIS, 5121 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5122 * See the License for the specific language governing permissions and 5123 * limitations under the License. 5124 */class l3e{constructor(e,n,i,r,s,o,a,l){this.ii=e,this.Bo=i,this.Lo=r,this.connection=s,this.authCredentialsProvider=o,this.appCheckCredentialsProvider=a,this.listener=l,this.state=0,this.ko=0,this.qo=null,this.Qo=null,this.stream=null,this.Ko=new cQ(e,n)}$o(){return this.state===1||this.state===5||this.Uo()}Uo(){return this.state===2||this.state===3}start(){this.state!==4?this.auth():this.Wo()}async stop(){this.$o()&&await this.close(0)}Go(){this.state=0,this.Ko.reset()}zo(){this.Uo()&&this.qo===null&&(this.qo=this.ii.enqueueAfterDelay(this.Bo,6e4,()=>this.jo()))}Ho(e){this.Jo(),this.stream.send(e)}async jo(){if(this.Uo())return this.close(0)}Jo(){this.qo&&(this.qo.cancel(),this.qo=null)}Yo(){this.Qo&&(this.Qo.cancel(),this.Qo=null)}async close(e,n){this.Jo(),this.Yo(),this.Ko.cancel(),this.ko++,e!==4?this.Ko.reset():n&&n.code===ke.RESOURCE_EXHAUSTED?(pu(n.toString()),pu("Using maximum backoff delay to prevent overloading the backend."),this.Ko.Mo()):n&&n.code===ke.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()),this.stream!==null&&(this.Zo(),this.stream.close(),this.stream=null),this.state=e,await this.listener.uo(n)}Zo(){}auth(){this.state=1;const e=this.Xo(this.ko),n=this.ko;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then(([i,r])=>{this.ko===n&&this.e_(i,r)},i=>{e(()=>{const r=new qt(ke.UNKNOWN,"Fetching auth token failed: "+i.message);return this.t_(r)})})}e_(e,n){const i=this.Xo(this.ko);this.stream=this.n_(e,n),this.stream._o(()=>{i(()=>(this.state=2,this.Qo=this.ii.enqueueAfterDelay(this.Lo,1e4,()=>(this.Uo()&&(this.state=3),Promise.resolve())),this.listener._o()))}),this.stream.uo(r=>{i(()=>this.t_(r))}),this.stream.onMessage(r=>{i(()=>this.onMessage(r))})}Wo(){this.state=5,this.Ko.xo(async()=>{this.state=0,this.start()})}t_(e){return lt("PersistentStream",`close with error: ${e}`),this.stream=null,this.close(4,e)}Xo(e){return n=>{this.ii.enqueueAndForget(()=>this.ko===e?n():(lt("PersistentStream","stream callback skipped by getCloseGuardedDispatcher."),Promise.resolve()))}}}class u3e extends l3e{constructor(e,n,i,r,s,o){super(e,"listen_stream_connection_backoff","listen_stream_idle","health_check_timeout",n,i,r,o),this.serializer
5124=s}n_(e,n){return this.connection.wo("Listen",e,n)}onMessage(e){this.Ko.reset();const n=w1e(this.serializer,e),i=function(s){if(!("targetChange"in s))return kt.min();const o=s.targetChange;return o.targetIds&&o.targetIds.length?kt.min():o.readTime?P0(o.readTime):kt.min()}(e);return this.listener.r_(n,i)}i_(e){const n={};n.database=rD(this.serializer),n.addTarget=function(s,o){let a;const l=o.target;if(a=mE(l)?{documents:I1e(s,l)}:{query:M1e(s,l)},a.targetId=o.targetId,o.resumeToken.approximateByteSize()>0){a.resumeToken=S1e(s,o.resumeToken);const u=qE(s,o.expectedCount);u!==null&&(a.expectedCount=u)}else if(o.snapshotVersion.compareTo(kt.min())>0){a.readTime=E1e(s,o.snapshotVersion.toTimestamp());const u=qE(s,o.expectedCount);u!==null&&(a.expectedCount=u)}return a}(this.serializer,e);const i=b1e(this.serializer,e);i&&(n.labels=i),this.Ho(n)}s_(e){const n={};n.database=rD(this.serializer),n.removeTarget=e,this.Ho(n)}}/** 5125 * @license 5126 * Copyright 2017 Google LLC 5127 * 5128 * Licensed under the Apache License, Version 2.0 (the "License"); 5129 * you may not use this file except in compliance with the License. 5130 * You may obtain a copy of the License at 5131 * 5132 * http://www.apache.org/licenses/LICENSE-2.0 5133 * 5134 * Unless required by applicable law or agreed to in writing, software 5135 * distributed under the License is distributed on an "AS IS" BASIS, 5136 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5137 * See the License for the specific language governing permissions and 5138 * limitations under the License. 5139 */class c3e extends class{}{constructor(e,n,i,r){super(),this.authCredentials=e,this.appCheckCredentials=n,this.connection=i,this.serializer=r,this.h_=!1}P_(){if(this.h_)throw new qt(ke.FAILED_PRECONDITION,"The client has already been terminated.")}Vo(e,n,i){return this.P_(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([r,s])=>this.connection.Vo(e,n,i,r,s)).catch(r=>{throw r.name==="FirebaseError"?(r.code===ke.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),r):new qt(ke.UNKNOWN,r.toString())})}yo(e,n,i,r){return this.P_(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([s,o])=>this.connection.yo(e,n,i,s,o,r)).catch(s=>{throw s.name==="FirebaseError"?(s.code===ke.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),s):new qt(ke.UNKNOWN,s.toString())})}terminate(){this.h_=!0}}class h3e{constructor(e,n){this.asyncQueue=e,this.onlineStateHandler=n,this.state="Unknown",this.T_=0,this.E_=null,this.d_=!0}A_(){this.T_===0&&(this.R_("Unknown"),this.E_=this.asyncQueue.enqueueAfterDelay("online_state_timeout",1e4,()=>(this.E_=null,this.V_("Backend didn't respond within 10 seconds."),this.R_("Offline"),Promise.resolve())))}m_(e){this.state==="Online"?this.R_("Unknown"):(this.T_++,this.T_>=1&&(this.f_(),this.V_(`Connection failed 1 times. Most recent error: ${e.toString()}`),this.R_("Offline")))}set(e){this.f_(),this.T_=0,e==="Online"&&(this.d_=!1),this.R_(e)}R_(e){e!==this.state&&(this.state=e,this.onlineStateHandler(e))}V_(e){const n=`Could not reach Cloud Firestore backend. ${e} 5140This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.`;this.d_?(pu(n),this.d_=!1):lt("OnlineStateTracker",n)}f_(){this.E_!==null&&(this.E_.cancel(),this.E_=null)}}/** 5141 * @license 5142 * Copyright 2017 Google LLC 5143 * 5144 * Licensed under the Apache License, Version 2.0 (the "License"); 5145 * you may not use this file except in compliance with the License. 5146 * You may obtain a copy of the License at 5147 * 5148 * http://www.apache.org/licenses/LICENSE-2.0 5149 * 5150 * Unless required by applicable law or agreed to in writing, software 5151 * distributed under the License is distributed on an "AS IS" BASIS, 5152 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5153 * See the License for the specific language governing permissions and 5154 * limitations under the License. 5155 */class f3e{constructor(e,n,i,r,s){this.localStore=e,this.datastore=n,this.asyncQueue=i,this.remoteSyncer={},this.g_=[],this.p_=new Map,this.y_=new Set,this.w_=[],this.S_=s,this.S_.Ys(o=>{i.enqueueAndForget(async()=>{n6(this)&&(lt("RemoteStore","Restarting streams for network reach
5155ability change."),await async function(l){const u=gn(l);u.y_.add(4),await t6(u),u.b_.set("Unknown"),u.y_.delete(4),await Qg(u)}(this))})}),this.b_=new h3e(i,r)}}async function Qg(t){if(n6(t))for(const e of t.w_)await e(!0)}async function t6(t){for(const e of t.w_)await e(!1)}function hQ(t,e){const n=gn(t);n.p_.has(e.targetId)||(n.p_.set(e.targetId,e),sw(n)?rw(n):V2(n).Uo()&&iw(n,e))}function fQ(t,e){const n=gn(t),i=V2(n);n.p_.delete(e),i.Uo()&&dQ(n,e),n.p_.size===0&&(i.Uo()?i.zo():n6(n)&&n.b_.set("Unknown"))}function iw(t,e){if(t.D_.Be(e.targetId),e.resumeToken.approximateByteSize()>0||e.snapshotVersion.compareTo(kt.min())>0){const n=t.remoteSyncer.getRemoteKeysForTarget(e.targetId).size;e=e.withExpectedCount(n)}V2(t).i_(e)}function dQ(t,e){t.D_.Be(e),V2(t).s_(e)}function rw(t){t.D_=new v1e({getRemoteKeysForTarget:e=>t.remoteSyncer.getRemoteKeysForTarget(e),ut:e=>t.p_.get(e)||null,rt:()=>t.datastore.serializer.databaseId}),V2(t).start(),t.b_.A_()}function sw(t){return n6(t)&&!V2(t).$o()&&t.p_.size>0}function n6(t){return gn(t).y_.size===0}function pQ(t){t.D_=void 0}async function d3e(t){t.p_.forEach((e,n)=>{iw(t,e)})}async function p3e(t,e){pQ(t),sw(t)?(t.b_.m_(e),rw(t)):t.b_.set("Unknown")}async function m3e(t,e,n){if(t.b_.set("Online"),e instanceof tQ&&e.state===2&&e.cause)try{await async function(r,s){const o=s.cause;for(const a of s.targetIds)r.p_.has(a)&&(await r.remoteSyncer.rejectListen(a,o),r.p_.delete(a),r.D_.removeTarget(a))}(t,e)}catch(i){lt("RemoteStore","Failed to remove targets %s: %s ",e.targetIds.join(","),i),await lD(t,i)}else if(e instanceof I8?t.D_.We(e):e instanceof eQ?t.D_.Ze(e):t.D_.je(e),!n.isEqual(kt.min()))try{const i=await lQ(t.localStore);n.compareTo(i)>=0&&await function(s,o){const a=s.D_.st(o);
5155return a.targetChanges.forEach((l,u)=>{if(l.resumeToken.approximateByteSize()>0){const c=s.p_.get(u);c&&s.p_.set(u,c.withResumeToken(l.resumeToken,o))}}),a.targetMismatches.forEach((l,u)=>{const c=s.p_.get(l);if(!c)return;s.p_.set(l,c.withResumeToken(Hr.EMPTY_BYTE_STRING,c.snapshotVersion)),dQ(s,l);const h=new lc(c.target,l,u,c.sequenceNumber);iw(s,h)}),s.remoteSyncer.applyRemoteEvent(a)}(t,n)}catch(i){lt("RemoteStore","Failed to raise snapshot:",i),await lD(t,i)}}async function lD(t,e,n){if(!Z4(e))throw e;t.y_.add(1),await t6(t),t.b_.set("Offline"),n||(n=()=>lQ(t.localStore)),t.asyncQueue.enqueueRetryable(async()=>{lt("RemoteStore","Retrying IndexedDB access"),await n(),t.y_.delete(1),await Qg(t)})}async function uD(t,e){const n=gn(t);n.asyncQueue.verifyOperationInProgress(),lt("RemoteStore","RemoteStore received new credentials");const i=n6(n);n.y_.add(3),await t6(n),i&&n.b_.set("Unknown"),await n.remoteSyncer.handleCredentialChange(e),n.y_.delete(3),await Qg(n)}async function g3e(t,e){const n=gn(t);e?(n.y_.delete(2),await Qg(n)):e||(n.y_.add(2),await t6(n),n.b_.set("Unknown"))}function V2(t){return t.v_||(t.v_=function(n,i,r){const s=gn(n);return s.P_(),new u3e(i,s.connection,s.authCredentials,s.appCheckCredentials,s.serializer,r)}(t.datastore,t.asyncQueue,{_o:d3e.bind(null,t),uo:p3e.bind(null,t),r_:m3e.bind(null,t)}),t.w_.push(async e=>{e?(t.v_.Go(),sw(t)?rw(t):t.b_.set("Unknown")):(await t.v_.stop(),pQ(t))})),t.v_}/** 5156 * @license 5157 * Copyright 2017 Google LLC 5158 * 5159 * Licensed under the Apache License, Version 2.0 (the "License"); 5160 * you may not use this file except in compliance with the License. 5161 * You may obtain a copy of the License at 5162 * 5163 * http://www.apache.org/licenses/LICENSE-2.0 5164 * 5165 * Unless required by applicable law or agreed to in writing, software 5166 * distributed under the License is distributed on an "AS IS" BASIS, 5167 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5168 * See the License for the specific language governing permissions and 5169 * limitations under the License. 5170 */class ow{constructor(e,n,i,r,s){this.asyncQueue=e,this.timerId=n,this.targetTimeMs=i,this.op=r,this.removalCallback=s,this.deferred=new f1,this.then=this.deferred.promise.then.bind(this.deferred.promise),this.deferred.promise.catch(o=>{})}static createAndSchedule(e,n,i,r,s){const o=Date.now()+i,a=new ow(e,n,o,r,s);return a.start(i),a}start(e){this.timerHandle=setTimeout(()=>this.handleDelayElapsed(),e)}skipDelay(){return this.handleDelayElapsed()}cancel(e){this.timerHandle!==null&&(this.clearTimeout(),this.deferred.reject(new qt(ke.CANCELLED,"Operation cancelled"+(e?": "+e:""))))}handleDelayElapsed(){this.asyncQueue.enqueueAndForget(()=>this.timerHandle!==null?(this.clearTimeout(),this.op().then(e=>this.deferred.resolve(e))):Promise.resolve())}clearTimeout(){this.timerHandle!==null&&(this.removalCallback(this),clearTimeout(this.timerHandle),this.timerHandle=null)}}function mQ(t,e){if(pu("AsyncQueue",`${e}: ${t}`),Z4(t))return new qt(ke.UNAVAILABLE,`${e}: ${t}`);throw t}/** 5171 * @license 5172 * Copyright 2017 Google LLC 5173 * 5174 * Licensed under the Apache License, Version 2.0 (the "License"); 5175 * you may not use this file except in compliance with the License. 5176 * You may obtain a copy of the License at 5177 * 5178 * http://www.apache.org/licenses/LICENSE-2.0 5179 * 5180 * Unless required by applicable law or agreed to in writing, software 5181 * distributed under the License is distributed on an "AS IS" BASIS, 5182 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5183 * See the License for the specific language governing permissions and 5184 * limitations under the License. 5185 */class B0{constructor(e){this.comparator=e?(n,i)=>e(n,i)||St.comparator(n.key,i.key):(n,i)=>St.comparator(n.key,i.key),this.keyedMap=o5(),this.sortedSet=new wi(this.comparator)}static emptySet(e){return new B0(e.comparator)}has(e){return this.keyedMap.get(e)!=null}get(e){return this.keyedMap.get(e)}first(){return this.sortedSet.minKey()}last(){return this.sortedSet.maxKey()}isEmpty(){return this.sortedSet.isEmpty()}indexOf(e){const n=this.keyedMap.get(e);return n?this.sortedSet.indexOf(n):-1}get size(){return this.sortedSet.size}forEach(e){this.sortedSet.inorderTraversal((n,i)=>(e(n),!1))}add(e){const n=this.delete(e.key);return n.copy(n.keyedMap.insert(e.key,e),n.sortedSet.insert(e,null))}delete(e){const n=this.get(e);return n?this.copy(this.keyedMap.remove(e),this.sortedSet.remove(n)):this}isEqual(e){if(!(e instanceof B0)||this.size!==e.size)return!1;const n=this.sortedSet.getIterator(),i=e.sortedSet.getIterator();for(;n.hasNext();){const r=n.getNext().key,s=i.getNext().key;if(!r.isEqual(s))return!1}return!0}toString(){const e=[];return this.forEach(n=>{e.push(n.toString())}),e.length===0?"DocumentSet ()":`DocumentSet ( 5186 `+e.join(` 5187`)+` 5188)`}copy(e,n){const i=new B0;return i.comparator=this.comparator,i.keyedMap=e,i.sortedSet=n,i}}/** 5189 * @license 5190 * Copyright 2017 Google LLC 5191 * 5192 * Licensed under the Apache License, Version 2.0 (the "License");
5193 * you may not use this file except in compliance with the License. 5194 * You may obtain a copy of the License at 5195 * 5196 * http://www.apache.org/licenses/LICENSE-2.0 5197 * 5198 * Unless required by applicable law or agreed to in writing, software 5199 * distributed under the License is distributed on an "AS IS" BASIS, 5200 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5201 * See the License for the specific language governing permissions and 5202 * limitations under the License. 5203 */class cD{constructor(){this.F_=new wi(St.comparator)}track(e){const n=e.doc.key,i=this.F_.get(n);i?e.type!==0&&i.type===3?this.F_=this.F_.insert(n,e):e.type===3&&i.type!==1?this.F_=this.F_.insert(n,{type:i.type,doc:e.doc}):e.type===2&&i.type===2?this.F_=this.F_.insert(n,{type:2,doc:e.doc}):e.type===2&&i.type===0?this.F_=this.F_.insert(n,{type:0,doc:e.doc}):e.type===1&&i.type===0?this.F_=this.F_.remove(n):e.type===1&&i.type===2?this.F_=this.F_.insert(n,{type:1,doc:i.doc}):e.type===0&&i.type===1?this.F_=this.F_.insert(n,{type:2,doc:e.doc}):Ht():this.F_=this.F_.insert(n,e)}M_(){const e=[];return this.F_.inorderTraversal((n,i)=>{e.push(i)}),e}}class a2{constructor(e,n,i,r,s,o,a,l,u){this.query=e,this.docs=n,this.oldDocs=i,this.docChanges=r,this.mutatedKeys=s,this.fromCache=o,this.syncStateChanged=a,this.excludesMetadataChanges=l,this.hasCachedResults=u}static fromInitialDocuments(e,n,i,r,s){const o=[];return n.forEach(a=>{o.push({type:0,doc:a})}),new a2(e,n,B0.emptySet(n),o,i,r,!0,!1,s)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(e){if(!(this.fromCache===e.fromCache&&this.hasCachedResults===e.hasCachedResults&&this.syncStateChanged===e.syncStateChanged&&this.mutatedKeys.isEqual(e.mutatedKeys)&&Og(this.query,e.query)&&this.docs.isEqual(e.docs)&&this.oldDocs.isEqual(e.oldDocs)))return!1;const n=this.docChanges,i=e.docChanges;if(n.length!==i.length)return!1;for(let r=0;r<n.length;r++)if(n[r].type!==i[r].type||!n[r].doc.isEqual(i[r].doc))return!1;return!0}}/** 5204 * @license 5205 * Copyright 2017 Google LLC 5206 * 5207 * Licensed under the Apache License, Version 2.0 (the "License"); 5208 * you may not use this file except in compliance with the License. 5209 * You may obtain a copy of the License at 5210 * 5211 * http://www.apache.org/licenses/LICENSE-2.0 5212 * 5213 * Unless required by applicable law or agreed to in writing, software 5214 * distributed under the License is distributed on an "AS IS" BASIS, 5215 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5216 * See the License for the specific language governing permissions and 5217 * limitations under the License. 5218 */class A3e{constructor(){this.x_=void 0,this.listeners=[]}}class v3e{constructor(){this.queries=new z2(e=>QG(e),Og),this.onlineState="Unknown",this.O_=new Set}}async function y3e(t,e){const n=gn(t),i=e.query;let r=!1,s=n.queries.get(i);if(s||(r=!0,s=new A3e),r)try{s.x_=await n.onListen(i)}catch(o){const a=mQ(o,`Initialization of query '${AE(e.query)}' failed`);return void e.onError(a)}n.queries.set(i,s),s.listeners.push(e),e.N_(n.onlineState),s.x_&&e.B_(s.x_)&&aw(n)}async function q3e(t,e){const n=gn(t),i=e.query;let r=!1;const s=n.queries.get(i);if(s){const o=s.listeners.indexOf(e);o>=0&&(s.listeners.splice(o,1),r=s.listeners.length===0)}if(r)return n.queries.delete(i),n.onUnlisten(i)}function _3e(t,e){const n=gn(t);let i=!1;for(const r of e){const s=r.query,o=n.queries.get(s);if(o){for(const a of o.listeners)a.B_(r)&&(i=!0);o.x_=r}}i&&aw(n)}function x3e(t,e,n){const i=gn(t),r=i.queries.get(e);if(r)for(const s of r.listeners)s.onError(n);i.queries.delete(e)}function aw(t){t.O_.forEach(e=>{e.next()})}class E3e{constructor(e,n,i){this.query=e,this.L_=n,this.k_=!1,this.q_=null,this.onlineState="Unknown",this.options=i||{}}B_(e){if(!this.options.includeMetadataChanges){const i=[];for(const r of e.docChanges)r.type!==3&&i.push(r);e=new a2(e.query,e.docs,e.oldDocs,i,e.mutatedKeys,e.fromCache,e.syncStateChanged,!0,e.hasCachedResults)}let n=!1;return this.k_?this.Q_(e)&&(this.L_.next(e),n=!0):this.K_(e,this.onlineState)&&(this.U_(e),n=!0),this.q_=e,n}onError(e){this.L_.error(e)}N_(e){this.onlineState=e;let n=!1;return this.q_&&!this.k_&&this.K_(this.q_,e)&&(this.U_(this.q_),n=!0),n}K_(e,n){if(!e.fromCache)return!0;const i=n!=="Offline";return(!this.options.W_||!i)&&(!e.docs.isEmpty()||e.hasCachedResults||n==="Offline")}Q_(e){if(e.docChanges.length>0)return!0;const n=this.q_&&this.q_.hasPendingWrites!==e.hasPendingWrites;return!(!e.syncStateChanged&&!n)&&this.options.includeMetadataChanges===!0}U_(e){e=a2.fromInitialDocuments(e.query,e.docs,e.mutatedKeys,e.fromCache,e.hasCachedResults),this.k_=!0,this.L_.next(e)}}/** 5219 * @license 5220 * Copyright 2017 Google LLC 5221 * 5222 * Licensed under the Apache License, Version 2.0 (the "License");
5223 * you may not use this file except in compliance with the License. 5224 * You may obtain a copy of the License at 5225 * 5226 * http://www.apache.org/licenses/LICENSE-2.0 5227 * 5228 * Unless required by applicable law or agreed to in writing, software 5229 * distributed under the License is distributed on an "AS IS" BASIS, 5230 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5231 * See the License for the specific language governing permissions and 5232 * limitations under the License. 5233 */class gQ{constructor(e){this.key=e}}class AQ{constructor(e){this.key=e}}class S3e{constructor(e,n){this.query=e,this.X_=n,this.ea=null,this.hasCachedResults=!1,this.current=!1,this.ta=an(),this.mutatedKeys=an(),this.na=HG(e),this.ra=new B0(this.na)}get ia(){return this.X_}sa(e,n){const i=n?n.oa:new cD,r=n?n.ra:this.ra;let s=n?n.mutatedKeys:this.mutatedKeys,o=r,a=!1;const l=this.query.limitType==="F"&&r.size===this.query.limit?r.last():null,u=this.query.limitType==="L"&&r.size===this.query.limit?r.first():null;if(e.inorderTraversal((c,h)=>{const f=r.get(c),m=Ug(this.query,h)?h:null,g=!!f&&this.mutatedKeys.has(f.key),v=!!m&&(m.hasLocalMutations||this.mutatedKeys.has(m.key)&&m.hasCommittedMutations);let _=!1;f&&m?f.data.isEqual(m.data)?g!==v&&(i.track({type:3,doc:m}),_=!0):this._a(f,m)||(i.track({type:2,doc:m}),_=!0,(l&&this.na(m,l)>0||u&&this.na(m,u)<0)&&(a=!0)):!f&&m?(i.track({type:0,doc:m}),_=!0):f&&!m&&(i.track({type:1,doc:f}),_=!0,(l||u)&&(a=!0)),_&&(m?(o=o.add(m),s=v?s.add(c):s.delete(c)):(o=o.delete(c),s=s.delete(c)))}),this.query.limit!==null)for(;o.size>this.query.limit;){const c=this.query.limitType==="F"?o.last():o.first();o=o.delete(c.key),s=s.delete(c.key),i.track({type:1,doc:c})}return{ra:o,oa:i,zi:a,mutatedKeys:s}}_a(e,n){return e.hasLocalMutations&&n.hasCommittedMutations&&!n.hasLocalMutations}applyChanges(e,n,i){const r=this.ra;this.ra=e.ra,this.mutatedKeys=e.mutatedKeys;const s=e.oa.M_();s.sort((u,c)=>function(f,m){const g=v=>{switch(v){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return Ht()}};return g(f)-g(m)}(u.type,c.type)||this.na(u.doc,c.doc)),this.aa(i);const o=n?this.ua():[],a=this.ta.size===0&&this.current?1:0,l=a!==this.ea;return this.ea=a,s.length!==0||l?{snapshot:new a2(this.query,e.ra,r,s,e.mutatedKeys,a===0,l,!1,!!i&&i.resumeToken.approximateByteSize()>0),ca:o}:{ca:o}}N_(e){return this.current&&e==="Offline"?(this.current=!1,this.applyChanges({ra:this.ra,oa:new cD,mutatedKeys:this.mutatedKeys,zi:!1},!1)):{ca:[]}}la(e){return!this.X_.has(e)&&!!this.ra.has(e)&&!this.ra.get(e).hasLocalMutations}aa(e){e&&(e.addedDocuments.forEach(n=>this.X_=this.X_.add(n)),e.modifiedDocuments.forEach(n=>{}),e.removedDocuments.forEach(n=>this.X_=this.X_.delete(n)),this.current=e.current)}ua(){if(!this.current)return[];const e=this.ta;this.ta=an(),this.ra.forEach(i=>{this.la(i.key)&&(this.ta=this.ta.add(i.key))});const n=[];return e.forEach(i=>{this.ta.has(i)||n.push(new AQ(i))}),this.ta.forEach(i=>{e.has(i)||n.push(new gQ(i))}),n}ha(e){this.X_=e.ss,this.ta=an();const n=this.sa(e.documents);return this.applyChanges(n,!0)}Pa(){return a2.fromInitialDocuments(this.query,this.ra,this.mutatedKeys,this.ea===0,this.hasCachedResults)}}class T3e{constructor(e,n,i){this.query=e,this.targetId=n,this.view=i}}class C3e{constructor(e){this.key=e,this.Ia=!1}}class w3e{constructor(e,n,i,r,s,o){this.localStore=e,this.remoteStore=n,this.eventManager=i,this.sharedClientState=r,this.currentUser=s,this.maxConcurrentLimboResolutions=o,this.Ta={},this.Ea=new z2(a=>QG(a),Og),this.da=new Map,this.Aa=new Set,this.Ra=new wi(St.comparator),this.Va=new Map,this.ma=new ew,this.fa={},this.ga=new Map,this.pa=o2.On(),this.onlineState="Unknown",this.ya=void 0}get isPrimaryClient(){return this.ya===!0}}async function I3e(t,e){const n=L3e(t);let i,r;const s=n.Ea.get(e);if(s)i=s.targetId,n.sharedClientState.addLocalQueryTarget(i),r=s.view.Pa();else{const o=await t3e(n.localStore,mu(e)),a=n.sharedClientState.addLocalQueryTarget(o.targetId);i=o.targetId,r=await M3e(n,e,i,a==="current",o.resumeToken),n.isPrimaryClient&&hQ(n.remoteStore,o)}return r}async function M3e(t,e,n,i,r){t.wa=(h,f,m)=>async function(v,_,A,y){let q=_.view.sa(A);
5233q.zi&&(q=await sD(v.localStore,_.query,!1).then(({documents:C})=>_.view.sa(C,q)));const E=y&&y.targetChanges.get(_.targetId),T=_.view.applyChanges(q,v.isPrimaryClient,E);return fD(v,_.targetId,T.ca),T.snapshot}(t,h,f,m);const s=await sD(t.localStore,e,!0),o=new S3e(e,s.ss),a=o.sa(s.documents),l=e6.createSynthesizedTargetChangeForCurrentChange(n,i&&t.onlineState!=="Offline",r),u=o.applyChanges(a,t.isPrimaryClient,l);fD(t,n,u.ca);const c=new T3e(e,n,o);return t.Ea.set(e,c),t.da.has(n)?t.da.get(n).push(e):t.da.set(n,[e]),u.snapshot}async function R3e(t,e){const n=gn(t),i=n.Ea.get(e),r=n.da.get(i.targetId);if(r.length>1)return n.da.set(i.targetId,r.filter(s=>!Og(s,e))),void n.Ea.delete(e);n.isPrimaryClient?(n.sharedClientState.removeLocalQueryTarget(i.targetId),n.sharedClientState.isActiveQueryTarget(i.targetId)||await xE(n.localStore,i.targetId,!1).then(()=>{n.sharedClientState.clearQueryState(i.targetId),fQ(n.remoteStore,i.targetId),EE(n,i.targetId)}).catch(GC)):(EE(n,i.targetId),await xE(n.localStore,i.targetId,!0))}async function vQ(t,e){const n=gn(t);try{const i=await Z1e(n.localStore,e);
5233e.targetChanges.forEach((r,s)=>{const o=n.Va.get(s);o&&(ji(r.addedDocuments.size+r.modifiedDocuments.size+r.removedDocuments.size<=1),r.addedDocuments.size>0?o.Ia=!0:r.modifiedDocuments.size>0?ji(o.Ia):r.removedDocuments.size>0&&(ji(o.Ia),o.Ia=!1))}),await qQ(n,i,e)}catch(i){await GC(i)}}function hD(t,e,n){const i=gn(t);if(i.isPrimaryClient&&n===0||!i.isPrimaryClient&&n===1){const r=[];i.Ea.forEach((s,o)=>{const a=o.view.N_(e);a.snapshot&&r.push(a.snapshot)}),function(o,a){const l=gn(o);l.onlineState=a;let u=!1;l.queries.forEach((c,h)=>{for(const f of h.listeners)f.N_(a)&&(u=!0)}),u&&aw(l)}(i.eventManager,e),r.length&&i.Ta.r_(r),i.onlineState=e,i.isPrimaryClient&&i.sharedClientState.setOnlineState(e)}}async function b3e(t,e,n){const i=gn(t);i.sharedClientState.updateQueryState(e,"rejected",n);const r=i.Va.get(e),s=r&&r.key;if(s){let o=new wi(St.comparator);o=o.insert(s,Lr.newNoDocument(s,kt.min()));const a=an().add(s),l=new Gg(kt.min(),new Map,new wi(vn),o,a);await vQ(i,l),i.Ra=i.Ra.remove(s),i.Va.delete(e),lw(i)}else await xE(i.localStore,e,!1).then(()=>EE(i,e,n)).catch(GC)}
5233function EE(t,e,n=null){t.sharedClientState.removeLocalQueryTarget(e);for(const i of t.da.get(e))t.Ea.delete(i),n&&t.Ta.Sa(i,n);t.da.delete(e),t.isPrimaryClient&&t.ma.Ar(e).forEach(i=>{t.ma.containsKey(i)||yQ(t,i)})}function yQ(t,e){t.Aa.delete(e.path.canonicalString());const n=t.Ra.get(e);n!==null&&(fQ(t.remoteStore,n),t.Ra=t.Ra.remove(e),t.Va.delete(n),lw(t))}function fD(t,e,n){for(const i of n)i instanceof gQ?(t.ma.addReference(i.key,e),P3e(t,i)):i instanceof AQ?(lt("SyncEngine","Document no longer in limbo: "+i.key),t.ma.removeReference(i.key,e),t.ma.containsKey(i.key)||yQ(t,i.key)):Ht()}function P3e(t,e){const n=e.key,i=n.path.canonicalString();t.Ra.get(n)||t.Aa.has(i)||(lt("SyncEngine","New document in limbo: "+n),t.Aa.add(i),lw(t))}function lw(t){for(;t.Aa.size>0&&t.Ra.size<t.maxConcurrentLimboResolutions;){const e=t.Aa.values().next().value;t.Aa.delete(e);const n=new St(hi.fromString(e)),i=t.pa.next();t.Va.set(i,new C3e(n)),t.Ra=t.Ra.insert(n,i),hQ(t.remoteStore,new lc(mu(GG(n.path)),i,"TargetPurposeLimboResolution",QC.ae))}}async function qQ(t,e,n){const i=gn(t),r=[],s=[],o=[];i.Ea.isEmpty()||(i.Ea.forEach((a,l)=>{o.push(i.wa(l,e,n).then(u=>{if((u||n)&&i.isPrimaryClient&&i.sharedClientState.updateQueryState(l.targetId,u!=null&&u.fromCache?"not-current":"current"),u){r.push(u);const c=nw.qi(l.targetId,u);s.push(c)}}))}),await Promise.all(o),i.Ta.r_(r),await async function(l,u){const c=gn(l);try{await c.persistence.runTransaction("notifyLocalViewChanges","readwrite",h=>Re.forEach(u,f=>Re.forEach(f.Li,m=>c.persistence.referenceDelegate.addReference(h,f.targetId,m)).next(()=>Re.forEach(f.ki,m=>c.persistence.referenceDelegate.removeReference(h,f.targetId,m)))))}catch(h){if(!Z4(h))throw h;lt("LocalStore","Failed to update sequence numbers: "+h)}for(const h of u){const f=h.targetId;if(!h.fromCache){const m=c.Ji.get(f),g=m.snapshotVersion,v=m.withLastLimboFreeSnapshotVersion(g);c.Ji=c.Ji.insert(f,v)}}}(i.localStore,s))}async function B3e(t,e){const n=gn(t);if(!n.currentUser.isEqual(e)){lt("SyncEngine","User change. New user:",e.toKey());const i=await aQ(n.localStore,e);n.currentUser=e,function(s,o){s.ga.forEach(a=>{a.forEach(l=>{l.reject(new qt(ke.CANCELLED,o))})}),s.ga.clear()}(n,"'waitForPendingWrites' promise is rejected due to a user change."),n.sharedClientState.handleUserChange(e,i.removedBatchIds,i.addedBatchIds),await qQ(n,i.ts)}}function D3e(t,e){const n=gn(t),i=n.Va.get(e);if(i&&i.Ia)return an().add(i.key);{let r=an();const s=n.da.get(e);if(!s)return r;for(const o of s){const a=n.Ea.get(o);r=r.unionWith(a.view.ia)}return r}}function L3e(t){const e=gn(t);return e.remoteStore.remoteSyncer.applyRemoteEvent=vQ.bind(null,e),e.remoteStore.remoteSyncer.getRemoteKeysForTarget=D3e.bind(null,e),e.remoteStore.remoteSyncer.rejectListen=b3e.bind(null,e),e.Ta.r_=_3e.bind(null,e.eventManager),e.Ta.Sa=x3e.bind(null,e.eventManager),e}class dD{constructor(){this.synchronizeTabs=!1}async initialize(e){this.serializer=uQ(e.databaseInfo.databaseId),this.sharedClientState=this.createSharedClientState(e),this.persistence=this.createPersistence(e),await this.persistence.start(),this.localStore=this.createLocalStore(e),this.gcScheduler=this.createGarbageCollectionScheduler(e,this.localStore),this.indexBackfillerScheduler=this.createIndexBackfillerScheduler(e,this.localStore)}createGarbageCollectionScheduler(e,n){return null}createIndexBackfillerScheduler(e,n){return null}createLocalStore(e){return J1e(this.persistence,new Y1e,e.initialUser,this.serializer)}createPersistence(e){return new j1e(tw.zr,this.serializer)}createSharedClientState(e){return new i3e}async terminate(){this.gcScheduler&&this.gcScheduler.stop(),await this.sharedClientState.shutdown(),await this.persistence.shutdown()}}class N3e{async initialize(e,n){this.localStore||(this.localStore=e.localStore,this.sharedClientState=e.sharedClientState,this.datastore=this.createDatastore(n),this.remoteStore=this.createRemoteStore(n),this.eventManager=this.createEventManager(n),this.syncEngine=this.createSyncEngine(n,!e.synchronizeTabs),this.sharedClientState.onlineStateHandler=i=>hD(this.syncEngine,i,1),this.remoteStore.remoteSyncer.handleCredentialChange=B3e.bind(null,this.syncEngine),await g3e(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(e){return function(){return new v3e}()}createDatastore(e){const n=uQ(e.databaseInfo.databaseId),i=function(s){return new a3e(s)}(e.databaseInfo);return function(s,o,a,l){return new c3e(s,o,a,l)}(e.authCredentials,e.appCheckCredentials,i,n)}createRemoteStore(e){return function(i,r,s,o,a){return new f3e(i,r,s,o,a)}(this.localStore,this.datastore,e.asyncQueue,n=>hD(this.syncEngine,n,0),function(){return aD.v()?new aD:new r3e}())}createSyncEngine(e,n){return function(r,s,o,a,l,u,c){const h=new w3e(r,s,o,a,l,u);return c&&(h.ya=!0),h}(this.localStore,this.remoteStore,this.eventManager,this.sharedCl
5233ientState,e.initialUser,e.maxConcurrentLimboResolutions,n)}terminate(){return async function(n){const i=gn(n);lt("RemoteStore","RemoteStore shutting down."),i.y_.add(5),await t6(i),i.S_.shutdown(),i.b_.set("Unknown")}(this.remoteStore)}}/** 5234 * @license 5235 * Copyright 2020 Google LLC 5236 * 5237 * Licensed under the Apache License, Version 2.0 (the "License"); 5238 * you may not use this file except in compliance with the License. 5239 * You may obtain a copy of the License at 5240 * 5241 * http://www.apache.org/licenses/LICENSE-2.0 5242 * 5243 * Unless required by applicable law or agreed to in writing, software 5244 * distributed under the License is distributed on an "AS IS" BASIS, 5245 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5246 * See the License for the specific language governing permissions and 5247 * limitations under the License. 5248 *//** 5249 * @license 5250 * Copyright 2017 Google LLC 5251 * 5252 * Licensed under the Apache License, Version 2.0 (the "License"); 5253 * you may not use this file except in compliance with the License. 5254 * You may obtain a copy of the License at 5255 * 5256 * http://www.apache.org/licenses/LICENSE-2.0 5257 * 5258 * Unless required by applicable law or agreed to in writing, software 5259 * distributed under the License is distributed on an "AS IS" BASIS, 5260 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5261 * See the License for the specific language governing permissions and 5262 * limitations under the License. 5263 */class k3e{constructor(e){this.observer=e,this.muted=!1}next(e){this.observer.next&&this.va(this.observer.next,e)}error(e){this.observer.error?this.va(this.observer.error,e):pu("Uncaught Error in snapshot listener:",e.toString())}Ca(){this.muted=!0}va(e,n){this.muted||setTimeout(()=>{this.muted||e(n)},0)}}/** 5264 * @license 5265 * Copyright 2017 Google LLC 5266 * 5267 * Licensed under the Apache License, Version 2.0 (the "License"); 5268 * you may not use this file except in compliance with the License. 5269 * You may obtain a copy of the License at 5270 * 5271 * http://www.apache.org/licenses/LICENSE-2.0 5272 * 5273 * Unless required by applicable law or agreed to in writing, software 5274 * distributed under the License is distributed on an "AS IS" BASIS, 5275 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5276 * See the License for the specific language governing permissions and 5277 * limitations under the License. 5278 */class F3e{constructor(e,n,i,r){this.authCredentials=e,this.appCheckCredentials=n,this.asyncQueue=i,this.databaseInfo=r,this.user=Br.UNAUTHENTICATED,this.clientId=whe.V(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this.authCredentials.start(i,async s=>{lt("FirestoreClient","Received user=",s.uid),await this.authCredentialListener(s),this.user=s}),this.appCheckCredentials.start(i,s=>(lt("FirestoreClient","Received new app check token=",s),this.appCheckCredentialListener(s,this.user)))}async getConfiguration(){return{asyncQueue:this.asyncQueue,databaseInfo:this.databaseInfo,clientId:this.clientId,authCredentials:this.authCredentials,appCheckCredentials:this.appCheckCredentials,initialUser:this.user,maxConcurrentLimboResolutions:100}}setCredentialChangeListener(e){this.authCredentialListener=e}setAppCheckTokenChangeListener(e){this.appCheckCredentialListener=e}verifyNotTerminated(){if(this.asyncQueue.isShuttingDown)throw new qt(ke.FAILED_PRECONDITION,"The client has already been terminated.")}terminate(){this.asyncQueue.enterRestrictedMode();const e=new f1;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted(async()=>{try{this._onlineComponents&&await this._onlineComponents.terminate(),this._offlineComponents&&await this._offlineComponents.terminate(),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),e.resolve()}catch(n){const i=mQ(n,"Failed to shutdown persistence");e.reject(i)}}),e.promise}}async function yq(t,e){t.asyncQueue.verifyOperationInProgress(),lt("FirestoreClient","Initializing OfflineComponentProvider");const n=await t.getConfiguration();await e.initialize(n);let i=n.initialUser;t.setCredentialChangeListener(async r=>{i.isEqual(r)||(await aQ(e.localStore,r),i=r)}),e.persistence.setDatabaseDeletedListener(()=>t.terminate()),t._offlineComponents=e}async function pD(t,e){t.asyncQueue.verifyOperationInProgress();const n=await U3e(t);lt("FirestoreClient","Initializing OnlineComponentProvider");const i=await t.getConfiguration();await e.initialize(n,i),t.setCredentialChangeListener(r=>uD(e.remoteStore,r)),t.setAppCheckTokenChangeListener((r,s)=>uD(e.remoteStore,s)),t._onlineComponents=e}function O3e(t){return t.name==="FirebaseError"?t.code===ke.FAILED_PRECONDITION||t.code===ke.UNIMPLEMENT
5278ED:!(typeof DOMException<"u"&&t instanceof DOMException)||t.code===22||t.code===20||t.code===11}async function U3e(t){if(!t._offlineComponents)if(t._uninitializedComponentsProvider){lt("FirestoreClient","Using user provided OfflineComponentProvider");try{await yq(t,t._uninitializedComponentsProvider._offline)}catch(e){const n=e;if(!O3e(n))throw n;n2("Error using user provided cache. Falling back to memory cache: "+n),await yq(t,new dD)}}else lt("FirestoreClient","Using default OfflineComponentProvider"),await yq(t,new dD);return t._offlineComponents}async function z3e(t){return t._onlineComponents||(t._uninitializedComponentsProvider?(lt("FirestoreClient","Using user provided OnlineComponentProvider"),await pD(t,t._uninitializedComponentsProvider._online)):(lt("FirestoreClient","Using default OnlineComponentProvider"),await pD(t,new N3e))),t._onlineComponents}async function V3e(t){const e=await z3e(t),n=e.eventManager;return n.onListen=I3e.bind(null,e.syncEngine),n.onUnlisten=R3e.bind(null,e.syncEngine),n}function G3e(t,e,n={}){const i=new f1;return t.asyncQueue.enqueueAndForget(async()=>function(s,o,a,l,u){const c=new k3e({next:f=>{o.enqueueAndForget(()=>q3e(s,h)),f.fromCache&&l.source==="server"?u.reject(new qt(ke.UNAVAILABLE,'Failed to get documents from server. (However, these documents may exist in the local cache. Run again without setting source to "server" to retrieve the cached documents.)')):u.resolve(f)},error:f=>u.reject(f)}),h=new E3e(a,c,{includeMetadataChanges:!0,W_:!0});return y3e(s,h)}(await V3e(t),t.asyncQueue,e,n,i)),i.promise}/** 5279 * @license 5280 * Copyright 2023 Google LLC 5281 * 5282 * Licensed under the Apache License, Version 2.0 (the "License"); 5283 * you may not use this file except in compliance with the License. 5284 * You may obtain a copy of the License at 5285 * 5286 * http://www.apache.org/licenses/LICENSE-2.0 5287 * 5288 * Unless required by applicable law or agreed to in writing, software 5289 * distributed under the License is distributed on an "AS IS" BASIS, 5290 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5291 * See the License for the specific language governing permissions and 5292 * limitations under the License. 5293 */function _Q(t){const e={};return t.timeoutSeconds!==void 0&&(e.timeoutSeconds=t.timeoutSeconds),e}/** 5294 * @license 5295 * Copyright 2020 Google LLC 5296 * 5297 * Licensed under the Apache License, Version 2.0 (the "License"); 5298 * you may not use this file except in compliance with the License. 5299 * You may obtain a copy of the License at 5300 * 5301 * http://www.apache.org/licenses/LICENSE-2.0 5302 * 5303 * Unless required by applicable law or agreed to in writing, software 5304 * distributed under the License is distributed on an "AS IS" BASIS, 5305 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5306 * See the License for the specific language governing permissions and 5307 * limitations under the License. 5308 */const mD=new Map;/** 5309 * @license 5310 * Copyright 2017 Google LLC 5311 * 5312 * Licensed under the Apache License, Version 2.0 (the "License"); 5313 * you may not use this file except in compliance with the License. 5314 * You may obtain a copy of the License at 5315 * 5316 * http://www.apache.org/licenses/LICENSE-2.0 5317 * 5318 * Unless required by applicable law or agreed to in writing, software 5319 * distributed under the License is distributed on an "AS IS" BASIS, 5320 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5321 * See the License for the specific language governing permissions and 5322 * limitations under the License. 5323 */function Q3e(t,e,n){if(!n)throw new qt(ke.INVALID_ARGUMENT,`Function ${t}() cannot be called with an empty ${e}.`)}function H3e(t,e,n,i){if(e===!0&&i===!0)throw new qt(ke.INVALID_ARGUMENT,`${t} and ${n} cannot be used together.`)}function gD(t){if(St.isDocumentKey(t))throw new qt(ke.INVALID_ARGUMENT,`Invalid collection reference. Collection references must have an odd number of segments, but ${t} has ${t.length}.`)}function W3e(t){if(t===void 0)return"undefined";if(t===null)return"null";if(typeof t=="string")return t.length>20&&(t=`${t.substring(0,20)}...`),JSON.stringify(t);if(typeof t=="number"||typeof t=="boolean")return""+t;if(typeof t=="object"){if(t instanceof Array)return"an array";{const e=function(i){return i.constructor?i.constructor.name:null}(t);return e?`a custom ${e} object`:"an object"}}return typeof t=="function"?"a function":Ht()}function SE(t,e){if("_delegate"in t&&(t=t._delegate),!(t instanceof e)){if(e.name===t.constructor.name)throw new qt(ke.INVA
5323LID_ARGUMENT,"Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?");{const n=W3e(t);throw new qt(ke.INVALID_ARGUMENT,`Expected type '${e.name}', but it was: ${n}`)}}return t}/** 5324 * @license 5325 * Copyright 2020 Google LLC 5326 * 5327 * Licensed under the Apache License, Version 2.0 (the "License"); 5328 * you may not use this file except in compliance with the License. 5329 * You may obtain a copy of the License at 5330 * 5331 * http://www.apache.org/licenses/LICENSE-2.0 5332 * 5333 * Unless required by applicable law or agreed to in writing, software 5334 * distributed under the License is distributed on an "AS IS" BASIS, 5335 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5336 * See the License for the specific language governing permissions and 5337 * limitations under the License. 5338 */class AD{constructor(e){var n,i;if(e.host===void 0){if(e.ssl!==void 0)throw new qt(ke.INVALID_ARGUMENT,"Can't provide ssl option if host option is not set");this.host="firestore.googleapis.com",this.ssl=!0}else this.host=e.host,this.ssl=(n=e.ssl)===null||n===void 0||n;if(this.credentials=e.credentials,this.ignoreUndefinedProperties=!!e.ignoreUndefinedProperties,this.localCache=e.localCache,e.cacheSizeBytes===void 0)this.cacheSizeBytes=41943040;else{if(e.cacheSizeBytes!==-1&&e.cacheSizeBytes<1048576)throw new qt(ke.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");this.cacheSizeBytes=e.cacheSizeBytes}H3e("experimentalForceLongPolling",e.experimentalForceLongPolling,"experimentalAutoDetectLongPolling",e.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!e.experimentalForceLongPolling,this.experimentalForceLongPolling?this.experimentalAutoDetectLongPolling=!1:e.experimentalAutoDetectLongPolling===void 0?this.experimentalAutoDetectLongPolling=!0:this.experimentalAutoDetectLongPolling=!!e.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=_Q((i=e.experimentalLongPollingOptions)!==null&&i!==void 0?i:{}),function(s){if(s.timeoutSeconds!==void 0){if(isNaN(s.timeoutSeconds))throw new qt(ke.INVALID_ARGUMENT,`invalid long polling timeout: ${s.timeoutSeconds} (must not be NaN)`);if(s.timeoutSeconds<5)throw new qt(ke.INVALID_ARGUMENT,`invalid long polling timeout: ${s.timeoutSeconds} (minimum allowed value is 5)`);if(s.timeoutSeconds>30)throw new qt(ke.INVALID_ARGUMENT,`invalid long polling timeout: ${s.timeoutSeconds} (maximum allowed value is 30)`)}}(this.experimentalLongPollingOptions),this.useFetchStreams=!!e.useFetchStreams}isEqual(e){return this.host===e.host&&this.ssl===e.ssl&&this.credentials===e.credentials&&this.cacheSizeBytes===e.cacheSizeBytes&&this.experimentalForceLongPolling===e.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===e.experimentalAutoDetectLongPolling&&function(i,r){return i.timeoutSeconds===r.timeoutSeconds}(this.experimentalLongPollingOptions,e.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===e.ignoreUndefinedProperties&&this.useFetchStreams===e.useFetchStreams}}class uw{constructor(e,n,i,r){this._authCredentials=e,this._appCheckCredentials=n,this._databaseId=i,this._app=r,this.type="firestore-lite",this._persistenceKey="(lite)",this._settings=new AD({}),this._settingsFrozen=!1}get app(){if(!this._app)throw new qt(ke.FAILED_PRECONDITION,"Firestore was not initialized using the Firebase SDK. 'app' is not available");return this._app}get _initialized(){return this._settingsFrozen}get _terminated(){return this._terminateTask!==void 0}_setSettings(e){if(this._settingsFrozen)throw new qt(ke.FAILED_PRECONDITION,"Firestore has already been started and its settings can no longer be changed. You can only modify settings before calling any other methods on a Firestore object.");this._settings=new AD(e),e.credentials!==void 0&&(this._authCredentials=function(i){if(!i)return new yhe;switch(i.type){case"firstParty":return new Ehe(i.sessionIndex||"0",i.iamToken||null,i.authTokenFactory||null);case"provider":return i.client;default:throw new qt(ke.INVALID_ARGUMENT,"makeAuthCredentialsProvider failed due to invalid credential type")}}(e.credentials))}_getSettings(){return this._settings}_freezeSettings(){return this._settingsFrozen=!0,this._settings}_delete(){return this._terminateTask||(this._terminateTask=this._terminate()),this._terminateTask}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return function(n){const i=mD.get(n);i&&(lt("ComponentProvider","Removing Datastore"),mD.delete(n),i.terminate())}(this),Promise.resolve()}}function $3e(t,e,n,i={}){var r;const s=(t=SE(t,uw))._getSettings(),o=`${e}:${n}`;if(s.host!=="firestore.googleapis.com"&&s.host!==o&&n2("Host has been set in both settings() and connectFirestoreEmulator(), emulator host will be used."),t._setSettings(Object.assign(Object.assign({},s),{host:o,ssl:!1})),i.mockUserToken){let a,l;if(typeof i.mockUserToken=="string")a=i.mockUserToken,l=Br.MOCK_USER;else{a=Kle(i.mockUserToken,(r=t._app)===null||r===void 0?void 0:r.options.projectId);const u=i.mockUserToken.sub||i.mockUserToken.user_id;
5338if(!u)throw new qt(ke.INVALID_ARGUMENT,"mockUserToken must contain 'sub' or 'user_id' field!");l=new Br(u)}t._authCredentials=new qhe(new LG(a,l))}}/** 5339 * @license 5340 * Copyright 2020 Google LLC 5341 * 5342 * Licensed under the Apache License, Version 2.0 (the "License"); 5343 * you may not use this file except in compliance with the License. 5344 * You may obtain a copy of the License at 5345 * 5346 * http://www.apache.org/licenses/LICENSE-2.0 5347 * 5348 * Unless required by applicable law or agreed to in writing, software 5349 * distributed under the License is distributed on an "AS IS" BASIS, 5350 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5351 * See the License for the specific language governing permissions and 5352 * limitations under the License. 5353 */class Hg{constructor(e,n,i){this.converter=n,this._query=i,this.type="query",this.firestore=e}withConverter(e){return new Hg(this.firestore,e,this._query)}}class G2{constructor(e,n,i){this.converter=n,this._key=i,this.type="document",this.firestore=e}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new D0(this.firestore,this.converter,this._key.path.popLast())}withConverter(e){return new G2(this.firestore,e,this._key)}}class D0 extends Hg{constructor(e,n,i){super(e,n,GG(i)),this._path=i,this.type="collection"}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){const e=this._path.popLast();return e.isEmpty()?null:new G2(this.firestore,null,new St(e))}withConverter(e){return new D0(this.firestore,e,this._path)}}function xQ(t,e,...n){if(t=iue(t),Q3e("collection","path",e),t instanceof uw){const i=hi.fromString(e,...n);return gD(i),new D0(t,null,i)}{if(!(t instanceof G2||t instanceof D0))throw new qt(ke.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");const i=t._path.child(hi.fromString(e,...n));return gD(i),new D0(t.firestore,null,i)}}/** 5354 * @license 5355 * Copyright 2020 Google LLC 5356 * 5357 * Licensed under the Apache License, Version 2.0 (the "License"); 5358 * you may not use this file except in compliance with the License. 5359 * You may obtain a copy of the License at 5360 * 5361 * http://www.apache.org/licenses/LICENSE-2.0 5362 * 5363 * Unless required by applicable law or agreed to in writing, software 5364 * distributed under the License is distributed on an "AS IS" BASIS, 5365 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5366 * See the License for the specific language governing permissions and 5367 * limitations under the License. 5368 */class j3e{constructor(){this.Wa=Promise.resolve(),this.Ga=[],this.za=!1,this.ja=[],this.Ha=null,this.Ja=!1,this.Ya=!1,this.Za=[],this.Ko=new cQ(this,"async_queue_retry"),this.Xa=()=>{const n=vq();n&<("AsyncQueue","Visibility state changed to "+n.visibilityState),this.Ko.No()};const e=vq();e&&typeof e.addEventListener=="function"&&e.addEventListener("visibilitychange",this.Xa)}get isShuttingDown(){return this.za}enqueueAndForget(e){this.enqueue(e)}enqueueAndForgetEvenWhileRestricted(e){this.eu(),this.tu(e)}enterRestrictedMode(e){if(!this.za){this.za=!0,this.Ya=e||!1;const n=vq();n&&typeof n.removeEventListener=="function"&&n.removeEventListener("visibilitychange",this.Xa)}}enqueue(e){if(this.eu(),this.za)return new Promise(()=>{});const n=new f1;return this.tu(()=>this.za&&this.Ya?Promise.resolve():(e().then(n.resolve,n.reject),n.promise)).then(()=>n.promise)}enqueueRetryable(e){this.enqueueAndForget(()=>(this.Ga.push(e),this.nu()))}async nu(){if(this.Ga.length!==0){try{await this.Ga[0](),this.Ga.shift(),this.Ko.reset()}catch(e){if(!Z4(e))throw e;lt("AsyncQueue","Operation failed with retryable error: "+e)}this.Ga.length>0&&this.Ko.xo(()=>this.nu())}}tu(e){const n=this.Wa.then(()=>(this.Ja=!0,e().catch(i=>{this.Ha=i,this.Ja=!1;const r=function(o){let a=o.message||"";return o.stack&&(a=o.stack.includes(o.message)?o.stack:o.message+` 5369`+o.stack),a}(i);throw pu("INTERNAL UNHANDLED ERROR: ",r),i}).then(i=>(this.Ja=!1,i))));return this.Wa=n,n}enqueueAfterDelay(e,n,i){this.eu(),this.Za.indexOf(e)>-1&&(n=0);const r=ow.createAndSchedule(this,e,n,i,s=>this.ru(s));return this.ja.push(r),r}
5369eu(){this.Ha&&Ht()}verifyOperationInProgress(){}async iu(){let e;do e=this.Wa,await e;while(e!==this.Wa)}su(e){for(const n of this.ja)if(n.timerId===e)return!0;return!1}ou(e){return this.iu().then(()=>{this.ja.sort((n,i)=>n.targetTimeMs-i.targetTimeMs);for(const n of this.ja)if(n.skipDelay(),e!=="all"&&n.timerId===e)break;return this.iu()})}_u(e){this.Za.push(e)}ru(e){const n=this.ja.indexOf(e);this.ja.splice(n,1)}}class EQ extends uw{constructor(e,n,i,r){super(e,n,i,r),this.type="firestore",this._queue=function(){return new j3e}(),this._persistenceKey=(r==null?void 0:r.name)||"[DEFAULT]"}_terminate(){return this._firestoreClient||SQ(this),this._firestoreClient.terminate()}}function X3e(t,e){const n=typeof t=="object"?t:nce(),i=typeof t=="string"?t:e||"(default)",r=Jue(n,"firestore").getImmediate({identifier:i});if(!r._initialized){const s=Xle("firestore");s&&$3e(r,...s)}return r}function Y3e(t){return t._firestoreClient||SQ(t),t._firestoreClient.verifyNotTerminated(),t._firestoreClient}function SQ(t){var e,n,i;const r=t._freezeSettings(),s=function(a,l,u,c){return new Nhe(a,l,u,c.host,c.ssl,c.experimentalForceLongPolling,c.experimentalAutoDetectLongPolling,_Q(c.experimentalLongPollingOptions),c.useFetchStreams)}(t._databaseId,((e=t._app)===null||e===void 0?void 0:e.options.appId)||"",t._persistenceKey,r);t._firestoreClient=new F3e(t._authCredentials,t._appCheckCredentials,t._queue,s),!((n=r.localCache)===null||n===void 0)&&n._offlineComponentProvider&&(!((i=r.localCache)===null||i===void 0)&&i._onlineComponentProvider)&&(t._firestoreClient._uninitializedComponentsProvider={_offlineKind:r.localCache.kind,_offline:r.localCache._offlineComponentProvider,_online:r.localCache._onlineComponentProvider})}/** 5370 * @license 5371 * Copyright 2020 Google LLC 5372 * 5373 * Licensed under the Apache License, Version 2.0 (the "License"); 5374 * you may not use this file except in compliance with the License. 5375 * You may obtain a copy of the License at 5376 * 5377 * http://www.apache.org/licenses/LICENSE-2.0 5378 * 5379 * Unless required by applicable law or agreed to in writing, software 5380 * distributed under the License is distributed on an "AS IS" BASIS, 5381 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5382 * See the License for the specific language governing permissions and 5383 * limitations under the License. 5384 */class Dm{constructor(e){this._byteString=e}static fromBase64String(e){try{return new Dm(Hr.fromBase64String(e))}catch(n){throw new qt(ke.INVALID_ARGUMENT,"Failed to construct data from Base64 string: "+n)}}static fromUint8Array(e){return new Dm(Hr.fromUint8Array(e))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return"Bytes(base64: "+this.toBase64()+")"}isEqual(e){return this._byteString.isEqual(e._byteString)}}/** 5385 * @license 5386 * Copyright 2020 Google LLC 5387 * 5388 * Licensed under the Apache License, Version 2.0 (the "License"); 5389 * you may not use this file except in compliance with the License. 5390 * You may obtain a copy of the License at 5391 * 5392 * http://www.apache.org/licenses/LICENSE-2.0 5393 * 5394 * Unless required by applicable law or agreed to in writing, software 5395 * distributed under the License is distributed on an "AS IS" BASIS, 5396 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5397 * See the License for the specific language governing permissions and 5398 * limitations under the License. 5399 */class TQ{constructor(...e){for(let n=0;n<e.length;++n)if(e[n].length===0)throw new qt(ke.INVALID_ARGUMENT,"Invalid field name at argument $(i + 1). Field names must not be empty.");this._internalPath=new qs(e)}isEqual(e){return this._internalPath.isEqual(e._internalPath)}}/** 5400 * @license 5401 * Copyright 2017 Google LLC 5402 * 5403 * Licensed under the Apache License, Version 2.0 (the "License"); 5404 * you may not use this file except in compliance with the License. 5405 * You may obtain a copy of the License at 5406 * 5407 * http://www.apache.org/licenses/LICENSE-2.0 5408 * 5409 * Unless required by applicable law or agreed to in writing, software 5410 * distributed under the License is distributed on an "AS IS" BASIS, 5411 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5412 * See the License for the specific language governing permissions and 5413 * limitations under the License. 5414 */class K3e{constructor(e,n){if(!isFinite(e)||e<-90||e>
541490)throw new qt(ke.INVALID_ARGUMENT,"Latitude must be a number between -90 and 90, but was: "+e);if(!isFinite(n)||n<-180||n>180)throw new qt(ke.INVALID_ARGUMENT,"Longitude must be a number between -180 and 180, but was: "+n);this._lat=e,this._long=n}get latitude(){return this._lat}get longitude(){return this._long}isEqual(e){return this._lat===e._lat&&this._long===e._long}toJSON(){return{latitude:this._lat,longitude:this._long}}_compareTo(e){return vn(this._lat,e._lat)||vn(this._long,e._long)}}const J3e=new RegExp("[~\\*/\\[\\]]");function Z3e(t,e,n){if(e.search(J3e)>=0)throw vD(`Invalid field path (${e}). Paths must not contain '~', '*', '/', '[', or ']'`,t,!1,void 0,n);try{return new TQ(...e.split("."))._internalPath}catch{throw vD(`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,t,!1,void 0,n)}}function vD(t,e,n,i,r){const s=i&&!i.isEmpty(),o=r!==void 0;let a=`Function ${e}() called with invalid data`;n&&(a+=" (via `toFirestore()`)"),a+=". ";let l="";return(s||o)&&(l+=" (found",s&&(l+=` in field ${i}`),o&&(l+=` in document ${r}`),l+=")"),new qt(ke.INVALID_ARGUMENT,a+t+l)}/** 5415 * @license 5416 * Copyright 2020 Google LLC 5417 * 5418 * Licensed under the Apache License, Version 2.0 (the "License"); 5419 * you may not use this file except in compliance with the License. 5420 * You may obtain a copy of the License at 5421 * 5422 * http://www.apache.org/licenses/LICENSE-2.0 5423 * 5424 * Unless required by applicable law or agreed to in writing, software 5425 * distributed under the License is distributed on an "AS IS" BASIS, 5426 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5427 * See the License for the specific language governing permissions and 5428 * limitations under the License. 5429 */class CQ{constructor(e,n,i,r,s){this._firestore=e,this._userDataWriter=n,this._key=i,this._document=r,this._converter=s}get id(){return this._key.path.lastSegment()}get ref(){return new G2(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){const e=new e0e(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(e)}return this._userDataWriter.convertValue(this._document.data.value)}}get(e){if(this._document){const n=this._document.data.field(wQ("DocumentSnapshot.get",e));if(n!==null)return this._userDataWriter.convertValue(n)}}}class e0e extends CQ{data(){return super.data()}}function wQ(t,e){return typeof e=="string"?Z3e(t,e):e instanceof TQ?e._internalPath:e._delegate._internalPath}/** 5430 * @license 5431 * Copyright 2020 Google LLC 5432 * 5433 * Licensed under the Apache License, Version 2.0 (the "License"); 5434 * you may not use this file except in compliance with the License. 5435 * You may obtain a copy of the License at 5436 * 5437 * http://www.apache.org/licenses/LICENSE-2.0 5438 * 5439 * Unless required by applicable law or agreed to in writing, software 5440 * distributed under the License is distributed on an "AS IS" BASIS, 5441 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5442 * See the License for the specific language governing permissions and 5443 * limitations under the License. 5444 */function t0e(t){if(t.limitType==="L"&&t.explicitOrderBy.length===0)throw new qt(ke.UNIMPLEMENTED,"limitToLast() queries require specifying at least one orderBy() clause")}class n0e{convertValue(e,n="none"){switch(M1(e)){case 0:return null;case 1:return e.booleanValue;case 2:return Di(e.integerValue||e.doubleValue);case 3:return this.convertTimestamp(e.timestampValue);case 4:return this.convertServerTimestamp(e,n);case 5:return e.stringValue;case 6:return this.convertBytes(I1(e.bytesValue));case 7:return this.convertReference(e.referenceValue);case 8:return this.convertGeoPoint(e.geoPointValue);case 9:return this.convertArray(e.arrayValue,n);case 10:return this.convertObject(e.mapValue,n);default:throw Ht()}}convertObject(e,n){return this.convertObjectMap(e.fields,n)}convertObjectMap(e,n="none"){const i={};return kg(e,(r,s)=>{i[r]=this.convertValue(s,n)}),i}convertGeoPoint(e){return new K3e(Di(e.latitude),Di(e.longitude))}convertArray(e,n){return(e.values||[]).map(i=>this.convertValue(i,n))}convertServerTimestamp(e,n){switch(n){case"previous":const i=WC(e);return i==null?null:this.convertValue(i,n);case"estimate":return this.convertTimestamp(n4(e));default:return null}}convertTimestamp(e){const n=Fc(e);return new Cs(n.seconds,n.nanos)}convertDocumentKey(e,n){const i=hi.fromString(e);ji(oQ(i));const r=new i4(i.get(1),i.get(3)),s=new St(i.popFirst(5));return r.isEqual(n)||pu(`Document ${s} contains a document reference within a different database (${r.projectId}/${r.database}) which is not supported. It will be treated as a reference in the current database (${n.projectId}/${n.database}) instead.`),s}}/** 5445 * @license 5446 * Copyright 2020 Google LLC 5447 * 5448 * Licensed under the Apache License, Version 2.0 (the "License");
5449 * you may not use this file except in compliance with the License. 5450 * You may obtain a copy of the License at 5451 * 5452 * http://www.apache.org/licenses/LICENSE-2.0 5453 * 5454 * Unless required by applicable law or agreed to in writing, software 5455 * distributed under the License is distributed on an "AS IS" BASIS, 5456 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5457 * See the License for the specific language governing permissions and 5458 * limitations under the License. 5459 */class O7{constructor(e,n){this.hasPendingWrites=e,this.fromCache=n}isEqual(e){return this.hasPendingWrites===e.hasPendingWrites&&this.fromCache===e.fromCache}}class i0e extends CQ{constructor(e,n,i,r,s,o){super(e,n,i,r,o),this._firestore=e,this._firestoreImpl=e,this.metadata=s}exists(){return super.exists()}data(e={}){if(this._document){if(this._converter){const n=new M8(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(n,e)}return this._userDataWriter.convertValue(this._document.data.value,e.serverTimestamps)}}get(e,n={}){if(this._document){const i=this._document.data.field(wQ("DocumentSnapshot.get",e));if(i!==null)return this._userDataWriter.convertValue(i,n.serverTimestamps)}}}class M8 extends i0e{data(e={}){return super.data(e)}}class r0e{constructor(e,n,i,r){this._firestore=e,this._userDataWriter=n,this._snapshot=r,this.metadata=new O7(r.hasPendingWrites,r.fromCache),this.query=i}get docs(){const e=[];return this.forEach(n=>e.push(n)),e}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(e,n){this._snapshot.docs.forEach(i=>{e.call(n,new M8(this._firestore,this._userDataWriter,i.key,i,new O7(this._snapshot.mutatedKeys.has(i.key),this._snapshot.fromCache),this.query.converter))})}docChanges(e={}){const n=!!e.includeMetadataChanges;if(n&&this._snapshot.excludesMetadataChanges)throw new qt(ke.INVALID_ARGUMENT,"To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().");return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===n||(this._cachedChanges=function(r,s){if(r._snapshot.oldDocs.isEmpty()){let o=0;return r._snapshot.docChanges.map(a=>{const l=new M8(r._firestore,r._userDataWriter,a.doc.key,a.doc,new O7(r._snapshot.mutatedKeys.has(a.doc.key),r._snapshot.fromCache),r.query.converter);return a.doc,{type:"added",doc:l,oldIndex:-1,newIndex:o++}})}{let o=r._snapshot.oldDocs;return r._snapshot.docChanges.filter(a=>s||a.type!==3).map(a=>{const l=new M8(r._firestore,r._userDataWriter,a.doc.key,a.doc,new O7(r._snapshot.mutatedKeys.has(a.doc.key),r._snapshot.fromCache),r.query.converter);let u=-1,c=-1;return a.type!==0&&(u=o.indexOf(a.doc.key),o=o.delete(a.doc.key)),a.type!==1&&(o=o.add(a.doc),c=o.indexOf(a.doc.key)),{type:s0e(a.type),doc:l,oldIndex:u,newIndex:c}})}}(this,n),this._cachedChangesIncludeMetadataChanges=n),this._cachedChanges}}function s0e(t){switch(t){case 0:return"added";case 2:case 3:return"modified";case 1:return"removed";default:return Ht()}}class o0e extends n0e{constructor(e){super(),this.firestore=e}convertBytes(e){return new Dm(e)}convertReference(e){const n=this.convertDocumentKey(e,this.firestore._databaseId);return new G2(this.firestore,null,n)}}function IQ(t){t=SE(t,Hg);const e=SE(t.firestore,EQ),n=Y3e(e),i=new o0e(e);return t0e(t._query),G3e(n,t._query).then(r=>new r0e(e,i,t,r))}(function(e,n=!0){(function(r){U2=r})(tce),Em(new Hd("firestore",(i,{instanceIdentifier:r,options:s})=>{const o=i.getProvider("app").getImmediate(),a=new EQ(new _he(i.getProvider("auth-internal")),new The(i.getProvider("app-check-internal")),function(u,c){if(!Object.prototype.hasOwnProperty.apply(u.options,["projectId"]))throw new qt(ke.INVALID_ARGUMENT,'"projectId" not provided in firebase.initializeApp.');return new i4(u.options.projectId,c)}(o,r),o);return s=Object.assign({useFetchStreams:n},s),a._setSettings(s),a},"PUBLIC").setMultipleInstances(!0)),I0(FB,"4.1.0",e),I0(FB,"4.1.0","esm2017")})();var a0e="firebase",l0e="10.1.0";/** 5460 * @license 5461 * Copyright 2020 Google LLC 5462 * 5463 * Licensed under the Apache License, Version 2.0 (the "License");
5464 * you may not use this file except in compliance with the License. 5465 * You may obtain a copy of the License at 5466 * 5467 * http://www.apache.org/licenses/LICENSE-2.0 5468 * 5469 * Unless required by applicable law or agreed to in writing, software 5470 * distributed under the License is distributed on an "AS IS" BASIS, 5471 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 5472 * See the License for the specific language governing permissions and 5473 * limitations under the License. 5474 */I0(a0e,l0e,"app");const u0e={apiKey:"AIzaSyD6DQxkc7SOBTgy-ypE77ys6BUKr1K3DLI",authDomain:"art-music-art.firebaseapp.com",projectId:"art-music-art",storageBucket:"art-music-art.appspot.com",messagingSenderId:"930727818315",appId:"1:930727818315:web:b15eb46cff3e28dfe189ce",measurementId:"G-L17VLN34SJ"},c0e=RV(u0e),MQ=X3e(c0e);async function h0e(t){return(await IQ(xQ(MQ,"categories",t,"contents"))).docs.map(i=>({id:i.id,categoryID:t,...i.data()}))}async function f0e(){var n;const t=await IQ(xQ(MQ,"categories"));return(n=t==null?void 0:t.docs)==null?void 0:n.map(i=>{const r=i.data();return{id:i.id,...r}})}async function d0e(t){const e={};for(let n=0;n<t.length;n++){const i=t[n],r=await h0e(i.id.toString());e[i.id]=r}return e}const $s="DESKTOP",Bo="MOBILE";function p0e(t,e){const n={[$s]:{},[Bo]:{}};return t.forEach((i,r)=>{const s=[$s,Bo];for(let o=0;o<s.length;o++){const a=s[o],l=11.5+3.5*o-(i.sub_planet?1:0),u=e[a][r];a===$s?n[a][i.id]=[u[0]+l,u[1]+1.3,u[2]]:n[a][i.id]=[u[0],u[1]+2,u[2]+l]}}),n}const m0e=t=>({deviceType:null,setDeviceType:e=>t({deviceType:e}),animation:null,setAnimation:e=>t({animation:e}),currentCategory:null,setCurrentCategory:e=>t({currentCategory:e}),currentContent:null,setCurrentContent:e=>t({currentContent:e}),onPlanets:null,setOnPlanet:(e,n)=>t(i=>{const r=i.onPlanets;if(Array.isArray(r))return r[e]=n,{onPlanets:r};console.warn("onPlanets is not an array")}),camera:null,setCamera:e=>t(()=>({camera:e})),hasScrolled:!1,setHasScrolled:e=>t({hasScrolled:e}),categories:null,contentsInfo:null,camPositions:{[Bo]:{start:[0,2,12]},[$s]:{start:[0,6,17]}},gsapAnimData:{[Bo]:{duration:1},[$s]:{duration:2.5}},planetsColor:[16338175,5978349,1914111,13449315],planetsRingColor:[16338175,7759860,12031,10433350],planetsPos:{[Bo]:[[-.7,3.5,-12],[.7,-.5,-11],[-.7,-4.5,-11],[.7,-6.5,-7]],[$s]:[[4.5,2.6,-.5],[.5,-1.5,1.4],[-6.1,1.5,-4.2],[-7.5,-3,-3]]},initFunc:async(e,n)=>{const i=n/e<1.4444444444444444?Bo:$s;let r,s;try{r=await f0e(),s=await d0e(r)}catch(a){return console.error(a),null}const o=new Array(r.length);for(let a=0;a<r.length;a++)o[a]=!1;dle(s),t(a=>{const l=p0e(r,a.planetsPos),u={};return Object.keys(l).forEach(c=>{u[c]={...a.camPositions[c],...l[c]}}),{deviceType:i,categories:r,contentsInfo:s,onPlanets:o,camPositions:u}})},resetCanvas:()=>t(e=>{let n=e.onPlanets;if(!Array.isArray(n)){console.warn("onPlanets is not an array");return}return{currentContent:null,currentCategory:null,onPlanets:n.map(()=>!1)}}),hasEntered:!0,setHasEnteredFalse:()=>t({hasEntered:!1})}),rt=AC(vC(m0e));function Hl(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function RQ(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}/*! 5475 * GSAP 3.12.2 5476 * https://greensock.com 5477 * 5478 * @license Copyright 2008-2023, GreenSock. All rights reserved. 5479 * Subject to the terms at https://greensock.com/standard-license or for 5480 * Club GreenSock members, the agreement issued with that membership. 5481 * @author: Jack Doyle, [email protected] 5482*/var eo={autoSleep:120,force3D:"auto",nullTargetWarn:1,units:{lineHeight:""}},l2={duration:.5,overwrite:!1,delay:0},cw,Vr,fi,Do=1e8,Mn=1/Do,TE=Math.PI*2,g0e=TE/4,A0e=0,bQ=Math.sqrt,v0e=Math.cos,y0e=Math.sin,lr=function(e){return typeof e=="string"},vi=function(e){return typeof e=="function"},gu=function(e){return typeof e=="number"},hw=function(e){return typeof e>"u"},ql=function(e){return typeof e=="object"},ws=function(e){return e!==!1},fw=function(){return typeof window<"u"},U7=function(e){return vi(e)||lr(e)},PQ=typeof ArrayBuffer=="function"&&ArrayBuffer.isView||function(){},Gr=Array.isArray,CE=/(?:-?\.?\d|\.)+/gi,BQ=/[-+=.]*\d+[.e\-+]*\d*[e\-+]*\d*/g,h0=/[-+=.]*\d+[.e-]*\d*[a-z%]*/g,qq=/[-+=.]*\d+\.?\d*(?:e-|e\+)?\d*/gi,DQ=/[+-]=-?[.\d]+/,LQ=/[^,'"\[\]\s]+/gi,q0e=/^[+\-=e\s\d]*\d+[.\d]*([a-z]*|%)\s*$/i,Xn,Co,wE,dw,io={},Lm={},NQ,kQ=function(e){return(Lm=R1(e,io))&&Ps},pw=function(e,n){return console.warn("Invalid property",e,"set to",n,"Missing plugin? gsap.registerPlugin()")},Nm=function(e,n){return!n&&console.warn(e)},FQ=function(e,n){return e&&(io[e]=n)&&Lm&&(Lm[e]=n)||io},s4=function(){return 0},_0e={suppressEvents:!0,isStart:!0,kill:!1},R8={suppressEvents:!0,kill:!1},x0e={suppressEvents:!0},mw={},Cc=[],IE={},OQ,Hs={},_q={},yD=30,b8=[],gw="",Aw=function(e){var n=e[0],i,r;if(ql(n)||vi(n)||(e=[e]),!(i=(n._gsap||{}).harness)){for(r=b8.length;r--&&!b8[r].targetTest(n););i=b8[r]}for(r=e.length;r--;)e[r]&&(e[r]._gsap||(e[r]._gsap=new uH(e[r],i)))||e.splice(r,1);return e},p1=function(e){return e._gsap||Aw(Lo(e))[0]._gsap},UQ=function(e,n,i){return(i=e[n])&&vi(i)?e[n]():hw(i)&&e.getAttribute&&e.getAttribute(n)||i}
vendor: 4,147 bytes, line 5482
5482,Is=function(e,n){return(e=e.split(",")).forEach(n)||e},Si=function(e){return Math.round(e*1e5)/1e5||0},gr=function(e){return Math.round(e*1e7)/1e7||0},L0=function(e,n){var i=n.charAt(0),r=parseFloat(n.substr(2));return e=parseFloat(e),i==="+"?e+r:i==="-"?e-r:i==="*"?e*r:e/r},E0e=function(e,n){for(var i=n.length,r=0;e.indexOf(n[r])<0&&++r<i;);return r<i},km=function(){var e=Cc.length,n=Cc.slice(0),i,r;for(IE={},Cc.length=0,i=0;i<e;i++)r=n[i],r&&r._lazy&&(r.render(r._lazy[0],r._lazy[1],!0)._lazy=0)},zQ=function(e,n,i,r){Cc.length&&!Vr&&km(),e.render(n,i,r||Vr&&n<0&&(e._initted||e._startAt)),Cc.length&&!Vr&&km()},VQ=function(e){var n=parseFloat(e);return(n||n===0)&&(e+"").match(LQ).length<2?n:lr(e)?e.trim():e},GQ=function(e){return e},Qo=function(e,n){for(var i in n)i in e||(e[i]=n[i]);return e},S0e=function(e){return function(n,i){for(var r in i)r in n||r==="duration"&&e||r==="ease"||(n[r]=i[r])}},R1=function(e,n){for(var i in n)e[i]=n[i];return e},qD=function t(e,n){for(var i in n)i!=="__proto__"&&i!=="constructor"&&i!=="prototype"&&(e[i]=ql(n[i])?t(e[i]||(e[i]={}),n[i]):n[i]);return e},Fm=function(e,n){var i={},r;for(r in e)r in n||(i[r]=e[r]);return i},F5=function(e){var n=e.parent||Xn,i=e.keyframes?S0e(Gr(e.keyframes)):Qo;if(ws(e.inherit))for(;n;)i(e,n.vars.defaults),n=n.parent||n._dp;return e},T0e=function(e,n){for(var i=e.length,r=i===n.length;r&&i--&&e[i]===n[i];);return i<0},QQ=function(e,n,i,r,s){i===void 0&&(i="_first"),r===void 0&&(r="_last");var o=e[r],a;if(s)for(a=n[s];o&&o[s]>a;)o=o._prev;return o?(n._next=o._next,o._next=n):(n._next=e[i],e[i]=n),n._next?n._next._prev=n:e[r]=n,n._prev=o,n.parent=n._dp=e,n},Wg=function(e,n,i,r){i===void 0&&(i="_first"),r===void 0&&(r="_last");var s=n._prev,o=n._next;s?s._next=o:e[i]===n&&(e[i]=o),o?o._prev=s:e[r]===n&&(e[r]=s),n._next=n._prev=n.parent=null},Uc=function(e,n){e.parent&&(!n||e.parent.autoRemoveChildren)&&e.parent.remove&&e.parent.remove(e),e._act=0},m1=function(e,n){if(e&&(!n||n._end>e._dur||n._start<0))for(var i=e;i;)i._dirty=1,i=i.parent;return e},C0e=function(e){for(var n=e.parent;n&&n.parent;)n._dirty=1,n.totalDuration(),n=n.parent;return e},ME=function(e,n,i,r){return e._startAt&&(Vr?e._startAt.revert(R8):e.vars.immediateRender&&!e.vars.autoRevert||e._startAt.render(n,!0,r))},w0e=function t(e){return!e||e._ts&&t(e.parent)},_D=function(e){return e._repeat?u2(e._tTime,e=e.duration()+e._rDelay)*e:0},u2=function(e,n){var i=Math.floor(e/=n);return e&&i===e?i-1:i},Om=function(e,n){return(e-n._start)*n._ts+(n._ts>=0?0:n._dirty?n.totalDuration():n._tDur)},$g=function(e){return e._end=gr(e._start+(e._tDur/Math.abs(e._ts||e._rts||Mn)||0))},jg=function(e,n){var i=e._dp;return i&&i.smoothChildTiming&&e._ts&&(e._start=gr(i._time-(e._ts>0?n/e._ts:((e._dirty?e.totalDuration():e._tDur)-n)/-e._ts)),$g(e),i._dirty||m1(i,e)),e},HQ=function(e,n){var i;if((n._time||!n._dur&&n._initted||n._start<e._time&&(n._dur||!n.add))&&(i=Om(e.rawTime(),n),(!n._dur||i6(0,n.totalDuration(),i)-n._tTime>Mn)&&n.render(i,!0)),m1(e,n)._dp&&e._initted&&e._time>=e._dur&&e._ts){if(e._dur<e.duration())for(i=e;i._dp;)i.rawTime()>=0&&i.totalTime(i._tTime),i=i._dp;e._zTime=-Mn}},Ya=function(e,n,i,r){return n.parent&&Uc(n),n._start=gr((gu(i)?i:i||e!==Xn?To(e,i,n):e._time)+n._delay),n._end=gr(n._start+(n.totalDuration()/Math.abs(n.timeScale())||0)),QQ(e,n,"_first","_last",e._sort?"_start":0),RE(n)||(e._recent=n),r||HQ(e,n),e._ts<0&&jg(e,e._tTime),e},WQ=function(e,n){return(io.ScrollTrigger||pw("scrollTrigger",n))&&io.ScrollTrigger.create(n,e)},$Q=function(e,n,i,r,s){if(yw(e,n,s),!e._initted)return 1;if(!i&&e._pt&&!Vr&&(e._dur&&e.vars.lazy!==!1||!e._dur&&e.vars.lazy)&&OQ!==js.frame)return Cc.push(e),e._lazy=[s,r],1},I0e=function t(e){var n=e.parent;return n&&n._ts&&n._initted&&!n._lock&&(n.rawTime()<0||t(n))},RE=function(e){var n=e.data;return n==="isFromStart"||n==="isStart"},M0e=function(e,n,i,r){var s=e.ratio,o=n<0||!n&&(!e._start&&I0e(e)&&!(!e._initted&&RE(e))||(e._ts<0||e._dp._ts<0)&&!RE(e))?0:1,a=e._rDelay,l=0,u,c,h;if(a&&e._repeat&&(l=i6(0,e._tDur,n),c=u2(l,a),e._yoyo&&c&1&&(o=1-o),c!==u2(e._tTime,a)&&(s=1-o,e.vars.repeatRefresh&&e._initted&&e.invali
vendor: 12,950 bytes, line 5482
5482date())),o!==s||Vr||r||e._zTime===Mn||!n&&e._zTime){if(!e._initted&&$Q(e,n,r,i,l))return;for(h=e._zTime,e._zTime=n||(i?Mn:0),i||(i=n&&!h),e.ratio=o,e._from&&(o=1-o),e._time=0,e._tTime=l,u=e._pt;u;)u.r(o,u.d),u=u._next;n<0&&ME(e,n,i,!0),e._onUpdate&&!i&&No(e,"onUpdate"),l&&e._repeat&&!i&&e.parent&&No(e,"onRepeat"),(n>=e._tDur||n<0)&&e.ratio===o&&(o&&Uc(e,1),!i&&!Vr&&(No(e,o?"onComplete":"onReverseComplete",!0),e._prom&&e._prom()))}else e._zTime||(e._zTime=n)},R0e=function(e,n,i){var r;if(i>n)for(r=e._first;r&&r._start<=i;){if(r.data==="isPause"&&r._start>n)return r;r=r._next}else for(r=e._last;r&&r._start>=i;){if(r.data==="isPause"&&r._start<n)return r;r=r._prev}},c2=function(e,n,i,r){var s=e._repeat,o=gr(n)||0,a=e._tTime/e._tDur;return a&&!r&&(e._time*=o/e._dur),e._dur=o,e._tDur=s?s<0?1e10:gr(o*(s+1)+e._rDelay*s):o,a>0&&!r&&jg(e,e._tTime=e._tDur*a),e.parent&&$g(e),i||m1(e.parent,e),e},xD=function(e){return e instanceof _s?m1(e):c2(e,e._dur)},b0e={_start:0,endTime:s4,totalDuration:s4},To=function t(e,n,i){var r=e.labels,s=e._recent||b0e,o=e.duration()>=Do?s.endTime(!1):e._dur,a,l,u;return lr(n)&&(isNaN(n)||n in r)?(l=n.charAt(0),u=n.substr(-1)==="%",a=n.indexOf("="),l==="<"||l===">"?(a>=0&&(n=n.replace(/=/,"")),(l==="<"?s._start:s.endTime(s._repeat>=0))+(parseFloat(n.substr(1))||0)*(u?(a<0?s:i).totalDuration()/100:1)):a<0?(n in r||(r[n]=o),r[n]):(l=parseFloat(n.charAt(a-1)+n.substr(a+1)),u&&i&&(l=l/100*(Gr(i)?i[0]:i).totalDuration()),a>1?t(e,n.substr(0,a-1),i)+l:o+l)):n==null?o:+n},O5=function(e,n,i){var r=gu(n[1]),s=(r?2:1)+(e<2?0:1),o=n[s],a,l;if(r&&(o.duration=n[1]),o.parent=i,e){for(a=o,l=i;l&&!("immediateRender"in a);)a=l.vars.defaults||{},l=ws(l.vars.inherit)&&l.parent;o.immediateRender=ws(a.immediateRender),e<2?o.runBackwards=1:o.startAt=n[s-1]}return new Li(n[0],o,n[s+1])},rh=function(e,n){return e||e===0?n(e):n},i6=function(e,n,i){return i<e?e:i>n?n:i},Nr=function(e,n){return!lr(e)||!(n=q0e.exec(e))?"":n[1]},P0e=function(e,n,i){return rh(i,function(r){return i6(e,n,r)})},bE=[].slice,jQ=function(e,n){return e&&ql(e)&&"length"in e&&(!n&&!e.length||e.length-1 in e&&ql(e[0]))&&!e.nodeType&&e!==Co},B0e=function(e,n,i){return i===void 0&&(i=[]),e.forEach(function(r){var s;return lr(r)&&!n||jQ(r,1)?(s=i).push.apply(s,Lo(r)):i.push(r)})||i},Lo=function(e,n,i){return fi&&!n&&fi.selector?fi.selector(e):lr(e)&&!i&&(wE||!h2())?bE.call((n||dw).querySelectorAll(e),0):Gr(e)?B0e(e,i):jQ(e)?bE.call(e,0):e?[e]:[]},PE=function(e){return e=Lo(e)[0]||Nm("Invalid scope")||{},function(n){var i=e.current||e.nativeElement||e;return Lo(n,i.querySelectorAll?i:i===e?Nm("Invalid scope")||dw.createElement("div"):e)}},XQ=function(e){return e.sort(function(){return .5-Math.random()})},YQ=function(e){if(vi(e))return e;var n=ql(e)?e:{each:e},i=g1(n.ease),r=n.from||0,s=parseFloat(n.base)||0,o={},a=r>0&&r<1,l=isNaN(r)||a,u=n.axis,c=r,h=r;return lr(r)?c=h={center:.5,edges:.5,end:1}[r]||0:!a&&l&&(c=r[0],h=r[1]),function(f,m,g){var v=(g||n).length,_=o[v],A,y,q,E,T,C,I,R,M;if(!_){if(M=n.grid==="auto"?0:(n.grid||[1,Do])[1],!M){for(I=-Do;I<(I=g[M++].getBoundingClientRect().left)&&M<v;);M--}for(_=o[v]=[],A=l?Math.min(M,v)*c-.5:r%M,y=M===Do?0:l?v*h/M-.5:r/M|0,I=0,R=Do,C=0;C<v;C++)q=C%M-A,E=y-(C/M|0),_[C]=T=u?Math.abs(u==="y"?E:q):bQ(q*q+E*E),T>I&&(I=T),T<R&&(R=T);r==="random"&&XQ(_),_.max=I-R,_.min=R,_.v=v=(parseFloat(n.amount)||parseFloat(n.each)*(M>v?v-1:u?u==="y"?v/M:M:Math.max(M,v/M))||0)*(r==="edges"?-1:1),_.b=v<0?s-v:s,_.u=Nr(n.amount||n.each)||0,i=i&&v<0?oH(i):i}return v=(_[f]-_.min)/_.max||0,gr(_.b+(i?i(v):v)*_.v)+_.u}},BE=function(e){var n=Math.pow(10,((e+"").split(".")[1]||"").length);return function(i){var r=gr(Math.round(parseFloat(i)/e)*e*n);return(r-r%1)/n+(gu(i)?0:Nr(i))}},KQ=function(e,n){var i=Gr(e),r,s;return!i&&ql(e)&&(r=i=e.radius||Do,e.values?(e=Lo(e.values),(s=!gu(e[0]))&&(r*=r)):e=BE(e.increment)),rh(n,i?vi(e)?function(o){return s=e(o),Math.abs(s-o)<=r?s:o}:function(o){for(var a=parseFloat(s?o.x:o),l=parseFloat(s?o.y:0),u=Do,c=0,h=e.length,f,m;h--;)s?(f=e[h].x-a,m=e[h].y-l,f=f*f+m*m):f=Math.abs(e[h]-a),f<u&&(u=f,c=h);return c=!r||u<=r?e[c]:o,s||c===o||gu(o)?c:c+Nr(o)}:BE(e))},JQ=function(e,n,i,r){return rh(Gr(e)?!n:i===!0?!!(i=0):!r,function(){return Gr(e)?e[~~(Math.random()*e.length)]:(i=i||1e-5)&&(r=i<1?Math.pow(10,(i+"").length-2):1)&&Math.floor(Math.round((e-i/2+Math.random()*(n-e+i*.99))/i)*i*r)/r})},D0e=function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return function(r){return n.reduce(function(s,o){return o(s)},r)}},L0e=function(e,n){return function(i){return e(parseFloat(i))+(n||Nr(i))}},N0e=function(e,n,i){return eH(e,n,0,1,i)},ZQ=function(e,n,i){return rh(i,function(r){return e[~~n(r)]})},k0e=function t(e,n,i){var r=n-e;return Gr(e)?ZQ(e,t(0,e.length),n):rh(i,function(s){return(r+(s-e)%r)%r+e})},F0e=function t(e,n,i){var r=n-e,s=r*2;return Gr(e)?ZQ(e,t(0,e.length-1),n):rh(i,function(o){return o=(s+(o-e)%s)%s||0,e+(o>r?s-o:o)})},o4=function(e){for(var n=0,i="",r,s,o,a;~(r=e.indexOf("random(",n));)o=e.indexOf(")",r),a=e.charAt(r+7)==="[",s=e.substr(r+7,o-r-7).match(a?LQ:CE),i+=e.substr(n,r-n)+JQ(a?s:+s[0],a?0:+s[1],+s[2]||1e-5),n=o+1;return i+e.substr(n,e.length-n)},eH=function(e,n,i,r,s){var o=n-e,a=r-i;return rh(s,function(l){return i+((l-e)/o*a||0)})},O0e=function t(e,n,i,r){var s=isNaN(e+n)?0:function(m){return(1-m)*e+m*n};if(!s){var o=lr(e),a={},l,u,c,h,f;if(i===!0&&(r=1)&&(i=null),o)e={p:e},n={p:n};else if(Gr(e)&&!Gr(n)){for(c=[],h=e.length,f=h-2,u=1;u<h;u++)c.push(t(e[u-1],e[u]));h--,s=function(g){g*=h;var v=Math.min(f,~~g);return c[v](g-v)},i=n}else r||(e=R1(Gr(e)?[]:{},e));if(!c){for(l in n)vw.call(a,e,l,"get",n[l]);s=function(g){return xw(g,a)||(o?e.p:e)}}}return rh(i,s)},ED=function(e,n,i){var r=e.labels,s=Do,o,a,l;for(o in r)a=r[o]-n,a<0==!!i&&a&&s>(a=Math.abs(a))&&(l=o,s=a);return l},No=function(e,n,i){var r=e.vars,s=r[n],o=fi,a=e._ctx,l,u,c;if(s)return l=r[n+"Params"],u=r.callbackScope||e,i&&Cc.length&&km(),a&&(fi=a),c=l?s.apply(u,l):s.call(u),fi=o,c},l5=function(e){return Uc(e),e.scrollTrigger&&e.scrollTrigger.kill(!!Vr),e.progress()<1&&No(e,"onInterrupt"),e},f0,tH=[],nH=function(e){if(fw()&&e){e=!e.name&&e.default||e;var n=e.name,i=vi(e),r=n&&!i&&e.init?function(){this._props=[]}:e,s={init:s4,render:xw,add:vw,kill:t2e,modifier:e2e,rawVars:0},o={targetTest:0,get:0,getSetter:_w,aliases:{},register:0};if(h2(),e!==r){if(Hs[n])return;Qo(r,Qo(Fm(e,s),o)),R1(r.prototype,R1(s,Fm(e,o))),Hs[r.prop=n]=r,e.targetTest&&(b8.push(r),mw[n]=1),n=(n==="css"?"CSS":n.charAt(0).toUpperCase()+n.substr(1))+"Plugin"}FQ(n,r),e.register&&e.register(Ps,r,Ms)}else e&&tH.push(e)},In=255,u5={aqua:[0,In,In],lime:[0,In,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,In],navy:[0,0,128],white:[In,In,In],olive:[128,128,0],yellow:[In,In,0],orange:[In,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[In,0,0],pink:[In,192,203],cyan:[0,In,In],transparent:[In,In,In,0]},xq=function(e,n,i){return e+=e<0?1:e>1?-1:0,(e*6<1?n+(i-n)*e*6:e<.5?i:e*3<2?n+(i-n)*(2/3-e)*6:n)*In+.5|0},iH=function(e,n,i){var r=e?gu(e)?[e>>16,e>>8&In,e&In]:0:u5.black,s,o,a,l,u,c,h,f,m,g;if(!r){if(e.substr(-1)===","&&(e=e.substr(0,e.length-1)),u5[e])r=u5[e];else if(e.charAt(0)==="#"){if(e.length<6&&(s=e.charAt(1),o=e.charAt(2),a=e.charAt(3),e="#"+s+s+o+o+a+a+(e.length===5?e.charAt(4)+e.charAt(4):"")),e.length===9)return r=parseInt(e.substr(1,6),16),[r>>16,r>>8&In,r&In,parseInt(e.substr(7),16)/255];e=parseInt(e.substr(1),16),r=[e>>16,e>>8&In,e&In]}else if(e.substr(0,3)==="hsl"){if(r=g=e.match(CE),!n)l=+r[0]%360/360,u=+r[1]/100,c=+r[2]/100,o=c<=.5?c*(u+1):c+u-c*u,s=c*2-o,r.length>3&&(r[3]*=1),r[0]=xq(l+1/3,s,o),r[1]=xq(l,s,o),r[2]=xq(l-1/3,s,o);else if(~e.indexOf("="))return r=e.match(BQ),i&&r.length<4&&(r[3]=1),r}else r=e.match(CE)||u5.transparent;r=r.map(Number)}return n&&!g&&(s=r[0]/In,o=r[1]/In,a=r[2]/In,h=Math.max(s,o,a),f=Math.min(s,o,a),c=(h+f)/2,h===f?l=u=0:(m=h-f,u=c>.5?m/(2-h-f):m/(h+f),l=h===s?(o-a)/m+(o<a?6:0):h===o?(a-s)/m+2:(s-o)/m+4,l*=60),r[0]=~~(l+.5),r[1]=~~(u*100+.5),r[2]=~~(c*100+.5)),i&&r.length<4&&(r[3]=1),r},rH=function(e){var n=[],i=[],r=-1;return e.split(wc).forEach(function(s){var o=s.match(h0)||[];n.push.apply(n,o),i.push(r+=o.length+1)}),n.c=i,n},SD=function(e,n,i){var r="",s=(e+r).match(wc),o=n?"hsla(":"rgba(",a=0,l,u,c,h;if(!s)return e;if(s=s.map(function(f){return(f=iH(f,n,1))&&o+(n?f[0]+","+f[1]+"%,"+f[2]+"%,"+f[3]:f.join(","))+")"}),i&&(c=rH(e),l=i.c,l.join(r)!==c.c.join(r)))for(u=e.replace(wc,"1").split(h0),h=u.length-1;a<h;a++)r+=u[a]+(~l.indexOf(a)?s.shift()||o+"0,0,0,0)":(c.length?c:s.length?s:i).shift());if(!u)for(u=e.split(wc),h=u.length-1;a<h;a++)r+=u[a]+s[a];return r+u[h]},wc=function(){var t="(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3,4}){1,2}\\b",e;for(e in u5)t+="|"+e+"\\b";return new RegExp(t+")","gi")}(),U0e=/hsl[a]?\(/,sH=function(e){var n=e.join(" "),i;if(wc.lastIndex=0,wc.test(n))return i=U0e.test(n),e[1]=SD(e[1],i),e[0]=SD(e[0],i,rH(e[1])),!0},a4,js=function(){var t=Date.now,e=500,n=33,i=t(),r=i,s=1e3/240,o=s,a=[],l,u,c,h,f,m,g=function v(_){var A=t()-r,y=_===!0,q,E,T,C;if(A>e&&(i+=A-n),r+=A,T=r-i,q=T-o,(q>0||y)&&(C=++h.frame,f=T-h.time*1e3,h.time=T=T/1e3,o+=q+(q>=s?4:s-q),E=1),y||(l=u(v)),E)for(m=0;m<a.length;m++)a[m](T,f,C,_)};return h={time:0,frame:0,tick:function(){g(!0)},deltaRatio:function(_){return f/(1e3/(_||60))},wake:function(){NQ&&(!wE&&fw()&&(Co=wE=window,dw=Co.document||{},io.gsap=Ps,(Co.gsapVersions||(Co.gsapVersions=[])).push(Ps.version),kQ(Lm||Co.GreenSockGlobals||!Co.gsap&&Co||{}),c=Co.requestAnimationFrame,tH.forEach(nH)),l&&h.sleep(),u=c||function(_){return setTimeout(_,o-h.time*1e3+1|0)},a4=1,g(2))},sleep:function(){(c?Co.cancelAnimationFrame:clearTimeout)(l),a4=0,u=s4},lagSmoothing:function(_,A){e=_||1/0,n=Math.min(A||33,e)},fps:function(_){s=1e3/(_||240),o=h.time*1e3+s},add:function(_,A,y){var q=A?function(E,T,C,I){_(E,T,C,I),h.remove(q)}:_;return h.remove(_),a[y?"unshift":"push"](q),h2(),q},remove:function(_,A){~(A=a.indexOf(_))&&a.splice(A,1)&&m>=A&&m--},_listeners:a},h}(),h2=function(){return!a4&&js.wake()},nn={},z0e=/^[\d.\-M][\d.\-,\s]/,V0e=/["']/g,G0e=function(e){for(var n={},i=e.substr(1,e.length-3).split(":"),r=i[0],s=1,o=i.length,a,l,u;s<o;s++)l=i[s],a=s!==o-1?l.lastIndexOf(","):l.length,u=l.substr(0,a),n[r]=isNaN(u)?u.replace(V0e,"").trim():+u,r=l.substr(a+1).trim();return n},Q0e=function(e){var n=e.indexOf("(")+1,i=e.indexOf(")"),r=e.indexOf("(",n);return e.substring(n,~r&&r<i?e.indexOf(")",i+1):i)},H0e=function(e){var n=(e+"").split("("),i=nn[n[0]];return i&&n.length>1&&i.config?i.config.apply(null,~e.indexOf("{")?[G0e(n[1])]:Q0e(e).split(",").map(VQ)):nn._CE&&z0e.test(e)?nn._CE("",e):i},oH=function(e){return function(n){return 1-e(1-n)}},aH=function t(e,n){for(var i=e._first,r;i;)i instanceof _s?t(i,n):i.vars.yoyoEase&&(!i._yoyo||!i._repeat)&&i._yoyo!==n&&(i.timeline?t(i.timeline,n):(r=i._ease,i._ease=i._yEase,i._yEase=r,i._yoyo=n)),i=i._next},g1=function(e,n){return e&&(vi(e)?e:nn[e]||H0e(e))||n},W1=function(e,n,i,r){i===void 0&&(i=function(l){return 1-n(1-l)}),r===void 0&&(r=function(l){return l<.5?n(l*2)/2:1-n((1-l)*2)/2});var s={easeIn:n,easeOut:i,easeInOut:r},o;return Is(e,function(a){nn[a]=io[a]=s,nn[o=a.toLowerCase()]=i;for(var l in s)nn[o+(l==="easeIn"?".in":l==="easeOut"?".out":".inOut")]=nn[a+"."+l]=s[l]}),s},lH=function(e){return function(n){return n<.5?(1-e(1-n*2))/2:.5+e((n-.5)*2)/2}},Eq=function t(e,n,i){var r=n>=1?n:1,s=(i||(e?.3:.45))/(n<1?n:1),o=s/TE*(Math.asin(1/r)||0),a=function(c){return c===1?1:r*Math.pow(2,-10*c)*y0e((c-o)*s)+1},l=e==="out"?a:e==="in"?function(u){return 1-a(1-u)}:lH(a);return s=TE/s,l.config=function(u,c){return t(e,u,c)},l},Sq=function t(e,n){n===void 0&&(n=1.70158);var i=function(o){return o?--o*o*((n+1)*o+n)+1:0},r=e==="out"?i:e==="in"?function(s){return 1-i(1-s)}:lH(i);return r.config=function(s){return t(e,s)},r};Is("Linear,Quad,Cubic,Quart,Quint,Strong",function(t,e){var n=e<5?e+1:e;W1(t+",Power"+(n-1),e?function(i){return Math.pow(i,n)}:function(i){return i},function(i){return 1-Math.pow(1-i,n)},function(i){return i<.5?Math.pow(i*2,n)/2:1-Math.pow((1-i)*2,n)/2})});nn.Linear.easeNone=nn.none=nn.Linear.easeIn;W1("Elastic",Eq("in"),Eq("out"),Eq());(function(t,e){var n=1/e,i=2*n,r=2.5*n,s=function(a){return a<n?t*a*a:a<i?t*Math.pow(a-1.5/e,2)+.75:a<r?t*(a-=2.25/e)*a+.9375:t*Math.pow(a-2.625/e,2)+.984375};W1("Bounce",function(o){return 1-s(1-o)},s)})(7.5625,2.75);W1("Expo",function(t){return t?Math.pow(2,10*(t-1)):0});W1("Circ",function(t){return-(bQ(1-t*t)-1)});W1("Sine",function(t){return t===1?1:-v0e(t*g0e)+1});W1("Back",Sq("in"),Sq("out"),Sq());nn.SteppedEase=nn.steps=io.SteppedEase={config:function(e,n){e===void 0&&(e=1);var i=1/e,r=e+(n?0:1),s=n?1:0,o=1-Mn;return function(a){return((r*i6(0,o,a)|0)+s)*i}}};l2.ease=nn["quad.out"];Is("onComplete,onUpdate,onStart,onRepeat,onReverseComplete,onInterrupt",function(t){return gw+=t+","+t+"Param
5482s,"});var uH=function(e,n){this.id=A0e++,e._gsap=this,this.target=e,this.harness=n,this.get=n?n.get:UQ,this.set=n?n.getSetter:_w},l4=function(){function t(n){this.vars=n,this._delay=+n.delay||0,(this._repeat=n.repeat===1/0?-2:n.repeat||0)&&(this._rDelay=n.repeatDelay||0,this._yoyo=!!n.yoyo||!!n.yoyoEase),this._ts=1,c2(this,+n.duration,1,1),this.data=n.data,fi&&(this._ctx=fi,fi.data.push(this)),a4||js.wake()}var e=t.prototype;return e.delay=function(i){return i||i===0?(this.parent&&this.parent.smoothChildTiming&&this.startTime(this._start+i-this._delay),this._delay=i,this):this._delay},e.duration=function(i){return arguments.length?this.totalDuration(this._repeat>0?i+(i+this._rDelay)*this._repeat:i):this.totalDuration()&&this._dur},e.totalDuration=function(i){return arguments.length?(this._dirty=0,c2(this,this._repeat<0?i:(i-this._repeat*this._rDelay)/(this._repeat+1))):this._tDur},e.totalTime=function(i,r){if(h2(),!arguments.length)return this._tTime;var s=this._dp;if(s&&s.smoothChildTiming&&this._ts){for(jg(this,i),!s._dp||s.parent||HQ(s,this);s&&s.parent;)s.parent._time!==s._start+(s._ts>=0?s._tTime/s._ts:(s.totalDuration()-s._tTime)/-s._ts)&&s.totalTime(s._tTime,!0),s=s.parent;!this.parent&&this._dp.autoRemoveChildren&&(this._ts>0&&i<this._tDur||this._ts<0&&i>0||!this._tDur&&!i)&&Ya(this._dp,this,this._start-this._delay)}return(this._tTime!==i||!this._dur&&!r||this._initted&&Math.abs(this._zTime)===Mn||!i&&!this._initted&&(this.add||this._ptLookup))&&(this._ts||(this._pTime=i),zQ(this,i,r)),this},e.time=function(i,r){return arguments.length?this.totalTime(Math.min(this.totalDuration(),i+_D(this))%(this._dur+this._rDelay)||(i?this._dur:0),r):this._time},e.totalProgress=function(i,r){return arguments.length?this.totalTime(this.totalDuration()*i,r):this.totalDuration()?Math.min(1,this._tTime/this._tDur):this.ratio},e.progress=function(i,r){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&!(this.iteration()&1)?1-i:i)+_D(this),r):this.duration()?Math.min(1,this._time/this._dur):this.ratio},e.iteration=function(i,r){var s=this.duration()+this._rDelay;return arguments.length?this.totalTime(this._time+(i-1)*s,r):this._repeat?u2(this._tTime,s)+1:1},e.timeScale=function(i){if(!arguments.length)return this._rts===-Mn?0:this._rts;if(this._rts===i)return this;var r=this.parent&&this._ts?Om(this.parent._time,this):this._tTime;return this._rts=+i||0,this._ts=this._ps||i===-Mn?0:this._rts,this.totalTime(i6(-Math.abs(this._delay),this._tDur,r),!0),$g(this),C0e(this)},e.paused=function(i){return arguments.length?(this._ps!==i&&(this._ps=i,i?(this._pTime=this._tTime||Math.max(-this._delay,this.rawTime()),this._ts=this._act=0):(h2(),this._ts=this._rts,this.totalTime(this.parent&&!this.parent.smoothChildTiming?this.rawTime():this._tTime||this._pTime,this.progress()===1&&Math.abs(this._zTime)!==Mn&&(this._tTime-=Mn)))),this):this._ps},e.startTime=function(i){if(arguments.length){this._start=i;var r=this.parent||this._dp;return r&&(r._sort||!this.parent)&&Ya(r,this,i-this._delay),this}return this._start},e.endTime=function(i){return this._start+(ws(i)?this.totalDuration():this.duration())/Math.abs(this._ts||1)},e.rawTime=function(i){var r=this.parent||this._dp;return r?i&&(!this._ts||this._repeat&&this._time&&this.totalProgress()<1)?this._tTime%(this._dur+this._rDelay):this._ts?Om(r.rawTime(i),this):this._tTime:this._tTime},e.revert=function(i){i===void 0&&(i=x0e);var r=Vr;return Vr=i,(this._initted||this._startAt)&&(this.timeline&&this.timeline.revert(i),this.totalTime(-.01,i.suppressEvents)),this.data!=="nested"&&i.kill!==!1&&this.kill(),Vr=r,this},e.globalTime=function(i){for(var r=this,s=arguments.length?i:r.rawTime();r;)s=r._start+s/(r._ts||1),r=r._dp;return!this.parent&&this._sat?this._sat.vars.immediateRender?-1/0:this._sat.globalTime(i):s},e.repeat=function(i){return arguments.length?(this._repeat=i===1/0?-2:i,xD(this)):this._repeat===-2?1/0:this._repeat},e.repeatDelay=function(i){if(arguments.length){var r=this._time;return this._rDelay=i,xD(this),r?this.time(r):this}return this._rDelay},e.yoyo=function(i){return arguments.length?(this._yoyo=i,this):this._yoyo},e.seek=function(i,r){return this.totalTime(To(this,i),ws(r))},e.restart=function(i,r){return this.play().totalTime(i?-this._delay:0,ws(r))},e.play=function(i,r){return i!=null&&this.seek(i,r),this.reversed(!1).paused(!1)},e.reverse=function(i,r){return i!=null&&this.seek(i||this.totalDuration(),r),this.reversed(!0).paused(!1)},e.pause=function(i,r){return i!=null&&this.seek(i,r),this.paused(!0)},e.resume=function(){return this.paused(!1)},e.reversed=function(i){return arguments.length?(!!i!==this.reversed()&&this.timeScale(-this._rts||(i?-Mn:0)),this):this._rts<0}
vendor: 2,779 bytes, line 5482
5482,e.invalidate=function(){return this._initted=this._act=0,this._zTime=-Mn,this},e.isActive=function(){var i=this.parent||this._dp,r=this._start,s;return!!(!i||this._ts&&this._initted&&i.isActive()&&(s=i.rawTime(!0))>=r&&s<this.endTime(!0)-Mn)},e.eventCallback=function(i,r,s){var o=this.vars;return arguments.length>1?(r?(o[i]=r,s&&(o[i+"Params"]=s),i==="onUpdate"&&(this._onUpdate=r)):delete o[i],this):o[i]},e.then=function(i){var r=this;return new Promise(function(s){var o=vi(i)?i:GQ,a=function(){var u=r.then;r.then=null,vi(o)&&(o=o(r))&&(o.then||o===r)&&(r.then=u),s(o),r.then=u};r._initted&&r.totalProgress()===1&&r._ts>=0||!r._tTime&&r._ts<0?a():r._prom=a})},e.kill=function(){l5(this)},t}();Qo(l4.prototype,{_time:0,_start:0,_end:0,_tTime:0,_tDur:0,_dirty:0,_repeat:0,_yoyo:!1,parent:null,_initted:!1,_rDelay:0,_ts:1,_dp:0,ratio:0,_zTime:-Mn,_prom:0,_ps:!1,_rts:1});var _s=function(t){RQ(e,t);function e(i,r){var s;return i===void 0&&(i={}),s=t.call(this,i)||this,s.labels={},s.smoothChildTiming=!!i.smoothChildTiming,s.autoRemoveChildren=!!i.autoRemoveChildren,s._sort=ws(i.sortChildren),Xn&&Ya(i.parent||Xn,Hl(s),r),i.reversed&&s.reverse(),i.paused&&s.paused(!0),i.scrollTrigger&&WQ(Hl(s),i.scrollTrigger),s}var n=e.prototype;return n.to=function(r,s,o){return O5(0,arguments,this),this},n.from=function(r,s,o){return O5(1,arguments,this),this},n.fromTo=function(r,s,o,a){return O5(2,arguments,this),this},n.set=function(r,s,o){return s.duration=0,s.parent=this,F5(s).repeatDelay||(s.repeat=0),s.immediateRender=!!s.immediateRender,new Li(r,s,To(this,o),1),this},n.call=function(r,s,o){return Ya(this,Li.delayedCall(0,r,s),o)},n.staggerTo=function(r,s,o,a,l,u,c){return o.duration=s,o.stagger=o.stagger||a,o.onComplete=u,o.onCompleteParams=c,o.parent=this,new Li(r,o,To(this,l)),this},n.staggerFrom=function(r,s,o,a,l,u,c){return o.runBackwards=1,F5(o).immediateRender=ws(o.immediateRender),this.staggerTo(r,s,o,a,l,u,c)},n.staggerFromTo=function(r,s,o,a,l,u,c,h){return a.startAt=o,F5(a).immediateRender=ws(a.immediateRender),this.staggerTo(r,s,a,l,u,c,h)},n.render=function(r,s,o){var a=this._time,l=this._dirty?this.totalDuration():this._tDur,u=this._dur,c=r<=0?0:gr(r),h=this._zTime<0!=r<0&&(this._initted||!u),f,m,g,v,_,A,y,q,E,T,C,I;if(this!==Xn&&c>l&&r>=0&&(c=l),c!==this._tTime||o||h){if(a!==this._time&&u&&(c+=this._time-a,r+=this._time-a),f=c,E=this._start,q=this._ts,A=!q,h&&(u||(a=this._zTime),(r||!s)&&(this._zTime=r)),this._repeat){if(C=this._yoyo,_=u+this._rDelay,this._repeat<-1&&r<0)return this.totalTime(_*100+r,s,o);if(f=gr(c%_),c===l?(v=this._repeat,f=u):(v=~~(c/_),v&&v===c/_&&(f=u,v--),f>u&&(f=u)),T=u2(this._tTime,_),!a&&this._tTime&&T!==v&&this._tTime-T*_-this._dur<=0&&(T=v),C&&v&1&&(f=u-f,I=1),v!==T&&!this._lock){var R=C&&T&1,M=R===(C&&v&1);
vendor: 20,258 bytes, line 5482
5482if(v<T&&(R=!R),a=R?0:c%u?u:c,this._lock=1,this.render(a||(I?0:gr(v*_)),s,!u)._lock=0,this._tTime=c,!s&&this.parent&&No(this,"onRepeat"),this.vars.repeatRefresh&&!I&&(this.invalidate()._lock=1),a&&a!==this._time||A!==!this._ts||this.vars.onRepeat&&!this.parent&&!this._act)return this;if(u=this._dur,l=this._tDur,M&&(this._lock=2,a=R?u:-1e-4,this.render(a,!0),this.vars.repeatRefresh&&!I&&this.invalidate()),this._lock=0,!this._ts&&!A)return this;aH(this,I)}}if(this._hasPause&&!this._forcing&&this._lock<2&&(y=R0e(this,gr(a),gr(f)),y&&(c-=f-(f=y._start))),this._tTime=c,this._time=f,this._act=!q,this._initted||(this._onUpdate=this.vars.onUpdate,this._initted=1,this._zTime=r,a=0),!a&&f&&!s&&!v&&(No(this,"onStart"),this._tTime!==c))return this;if(f>=a&&r>=0)for(m=this._first;m;){if(g=m._next,(m._act||f>=m._start)&&m._ts&&y!==m){if(m.parent!==this)return this.render(r,s,o);if(m.render(m._ts>0?(f-m._start)*m._ts:(m._dirty?m.totalDuration():m._tDur)+(f-m._start)*m._ts,s,o),f!==this._time||!this._ts&&!A){y=0,g&&(c+=this._zTime=-Mn);break}}m=g}else{m=this._last;for(var b=r<0?r:f;m;){if(g=m._prev,(m._act||b<=m._end)&&m._ts&&y!==m){if(m.parent!==this)return this.render(r,s,o);if(m.render(m._ts>0?(b-m._start)*m._ts:(m._dirty?m.totalDuration():m._tDur)+(b-m._start)*m._ts,s,o||Vr&&(m._initted||m._startAt)),f!==this._time||!this._ts&&!A){y=0,g&&(c+=this._zTime=b?-Mn:Mn);break}}m=g}}if(y&&!s&&(this.pause(),y.render(f>=a?0:-Mn)._zTime=f>=a?1:-1,this._ts))return this._start=E,$g(this),this.render(r,s,o);this._onUpdate&&!s&&No(this,"onUpdate",!0),(c===l&&this._tTime>=this.totalDuration()||!c&&a)&&(E===this._start||Math.abs(q)!==Math.abs(this._ts))&&(this._lock||((r||!u)&&(c===l&&this._ts>0||!c&&this._ts<0)&&Uc(this,1),!s&&!(r<0&&!a)&&(c||a||!l)&&(No(this,c===l&&r>=0?"onComplete":"onReverseComplete",!0),this._prom&&!(c<l&&this.timeScale()>0)&&this._prom())))}return this},n.add=function(r,s){var o=this;if(gu(s)||(s=To(this,s,r)),!(r instanceof l4)){if(Gr(r))return r.forEach(function(a){return o.add(a,s)}),this;if(lr(r))return this.addLabel(r,s);if(vi(r))r=Li.delayedCall(0,r);else return this}return this!==r?Ya(this,r,s):this},n.getChildren=function(r,s,o,a){r===void 0&&(r=!0),s===void 0&&(s=!0),o===void 0&&(o=!0),a===void 0&&(a=-Do);for(var l=[],u=this._first;u;)u._start>=a&&(u instanceof Li?s&&l.push(u):(o&&l.push(u),r&&l.push.apply(l,u.getChildren(!0,s,o)))),u=u._next;return l},n.getById=function(r){for(var s=this.getChildren(1,1,1),o=s.length;o--;)if(s[o].vars.id===r)return s[o]},n.remove=function(r){return lr(r)?this.removeLabel(r):vi(r)?this.killTweensOf(r):(Wg(this,r),r===this._recent&&(this._recent=this._last),m1(this))},n.totalTime=function(r,s){return arguments.length?(this._forcing=1,!this._dp&&this._ts&&(this._start=gr(js.time-(this._ts>0?r/this._ts:(this.totalDuration()-r)/-this._ts))),t.prototype.totalTime.call(this,r,s),this._forcing=0,this):this._tTime},n.addLabel=function(r,s){return this.labels[r]=To(this,s),this},n.removeLabel=function(r){return delete this.labels[r],this},n.addPause=function(r,s,o){var a=Li.delayedCall(0,s||s4,o);return a.data="isPause",this._hasPause=1,Ya(this,a,To(this,r))},n.removePause=function(r){var s=this._first;for(r=To(this,r);s;)s._start===r&&s.data==="isPause"&&Uc(s),s=s._next},n.killTweensOf=function(r,s,o){for(var a=this.getTweensOf(r,o),l=a.length;l--;)uc!==a[l]&&a[l].kill(r,s);return this},n.getTweensOf=function(r,s){for(var o=[],a=Lo(r),l=this._first,u=gu(s),c;l;)l instanceof Li?E0e(l._targets,a)&&(u?(!uc||l._initted&&l._ts)&&l.globalTime(0)<=s&&l.globalTime(l.totalDuration())>s:!s||l.isActive())&&o.push(l):(c=l.getTweensOf(a,s)).length&&o.push.apply(o,c),l=l._next;return o},n.tweenTo=function(r,s){s=s||{};var o=this,a=To(o,r),l=s,u=l.startAt,c=l.onStart,h=l.onStartParams,f=l.immediateRender,m,g=Li.to(o,Qo({ease:s.ease||"none",lazy:!1,immediateRender:!1,time:a,overwrite:"auto",duration:s.duration||Math.abs((a-(u&&"time"in u?u.time:o._time))/o.timeScale())||Mn,onStart:function(){if(o.pause(),!m){var _=s.duration||Math.abs((a-(u&&"time"in u?u.time:o._time))/o.timeScale());g._dur!==_&&c2(g,_,0,1).render(g._time,!0,!0),m=1}c&&c.apply(g,h||[])}},s));return f?g.render(0):g},n.tweenFromTo=function(r,s,o){return this.tweenTo(s,Qo({startAt:{time:To(this,r)}},o))},n.recent=function(){return this._recent},n.nextLabel=function(r){return r===void 0&&(r=this._time),ED(this,To(this,r))},n.previousLabel=function(r){return r===void 0&&(r=this._time),ED(this,To(this,r),1)},n.currentLabel=function(r){return arguments.length?this.seek(r,!0):this.previousLabel(this._time+Mn)},n.shiftChildren=function(r,s,o){o===void 0&&(o=0);for(var a=this._first,l=this.labels,u;a;)a._start>=o&&(a._start+=r,a._end+=r),a=a._next;if(s)for(u in l)l[u]>=o&&(l[u]+=r);return m1(this)},n.invalidate=function(r){var s=this._first;for(this._lock=0;s;)s.invalidate(r),s=s._next;return t.prototype.invalidate.call(this,r)},n.clear=function(r){r===void 0&&(r=!0);for(var s=this._first,o;s;)o=s._next,this.remove(s),s=o;return this._dp&&(this._time=this._tTime=this._pTime=0),r&&(this.labels={}),m1(this)},n.totalDuration=function(r){var s=0,o=this,a=o._last,l=Do,u,c,h;if(arguments.length)return o.timeScale((o._repeat<0?o.duration():o.totalDuration())/(o.reversed()?-r:r));if(o._dirty){for(h=o.parent;a;)u=a._prev,a._dirty&&a.totalDuration(),c=a._start,c>l&&o._sort&&a._ts&&!o._lock?(o._lock=1,Ya(o,a,c-a._delay,1)._lock=0):l=c,c<0&&a._ts&&(s-=c,(!h&&!o._dp||h&&h.smoothChildTiming)&&(o._start+=c/o._ts,o._time-=c,o._tTime-=c),o.shiftChildren(-c,!1,-1/0),l=0),a._end>s&&a._ts&&(s=a._end),a=u;c2(o,o===Xn&&o._time>s?o._time:s,1,1),o._dirty=0}return o._tDur},e.updateRoot=function(r){if(Xn._ts&&(zQ(Xn,Om(r,Xn)),OQ=js.frame),js.frame>=yD){yD+=eo.autoSleep||120;var s=Xn._first;if((!s||!s._ts)&&eo.autoSleep&&js._listeners.length<2){for(;s&&!s._ts;)s=s._next;s||js.sleep()}}},e}(l4);Qo(_s.prototype,{_lock:0,_hasPause:0,_forcing:0});var W0e=function(e,n,i,r,s,o,a){var l=new Ms(this._pt,e,n,0,1,mH,null,s),u=0,c=0,h,f,m,g,v,_,A,y;for(l.b=i,l.e=r,i+="",r+="",(A=~r.indexOf("random("))&&(r=o4(r)),o&&(y=[i,r],o(y,e,n),i=y[0],r=y[1]),f=i.match(qq)||[];h=qq.exec(r);)g=h[0],v=r.substring(u,h.index),m?m=(m+1)%5:v.substr(-5)==="rgba("&&(m=1),g!==f[c++]&&(_=parseFloat(f[c-1])||0,l._pt={_next:l._pt,p:v||c===1?v:",",s:_,c:g.charAt(1)==="="?L0(_,g)-_:parseFloat(g)-_,m:m&&m<4?Math.round:0},u=qq.lastIndex);return l.c=u<r.length?r.substring(u,r.length):"",l.fp=a,(DQ.test(r)||A)&&(l.e=0),this._pt=l,l},vw=function(e,n,i,r,s,o,a,l,u,c){vi(r)&&(r=r(s||0,e,o));var h=e[n],f=i!=="get"?i:vi(h)?u?e[n.indexOf("set")||!vi(e["get"+n.substr(3)])?n:"get"+n.substr(3)](u):e[n]():h,m=vi(h)?u?K0e:dH:qw,g;if(lr(r)&&(~r.indexOf("random(")&&(r=o4(r)),r.charAt(1)==="="&&(g=L0(f,r)+(Nr(f)||0),(g||g===0)&&(r=g))),!c||f!==r||DE)return!isNaN(f*r)&&r!==""?(g=new Ms(this._pt,e,n,+f||0,r-(f||0),typeof h=="boolean"?Z0e:pH,0,m),u&&(g.fp=u),a&&g.modifier(a,this,e),this._pt=g):(!h&&!(n in e)&&pw(n,r),W0e.call(this,e,n,f,r,m,l||eo.stringFilter,u))},$0e=function(e,n,i,r,s){if(vi(e)&&(e=U5(e,s,n,i,r)),!ql(e)||e.style&&e.nodeType||Gr(e)||PQ(e))return lr(e)?U5(e,s,n,i,r):e;var o={},a;for(a in e)o[a]=U5(e[a],s,n,i,r);return o},cH=function(e,n,i,r,s,o){var a,l,u,c;if(Hs[e]&&(a=new Hs[e]).init(s,a.rawVars?n[e]:$0e(n[e],r,s,o,i),i,r,o)!==!1&&(i._pt=l=new Ms(i._pt,s,e,0,1,a.render,a,0,a.priority),i!==f0))for(u=i._ptLookup[i._targets.indexOf(s)],c=a._props.length;c--;)u[a._props[c]]=l;return a},uc,DE,yw=function t(e,n,i){var r=e.vars,s=r.ease,o=r.startAt,a=r.immediateRender,l=r.lazy,u=r.onUpdate,c=r.onUpdateParams,h=r.callbackScope,f=r.runBackwards,m=r.yoyoEase,g=r.keyframes,v=r.autoRevert,_=e._dur,A=e._startAt,y=e._targets,q=e.parent,E=q&&q.data==="nested"?q.vars.targets:y,T=e._overwrite==="auto"&&!cw,C=e.timeline,I,R,M,b,D,z,O,W,$,K,Y,B,U;if(C&&(!g||!s)&&(s="none"),e._ease=g1(s,l2.ease),e._yEase=m?oH(g1(m===!0?s:m,l2.ease)):0,m&&e._yoyo&&!e._repeat&&(m=e._yEase,e._yEase=e._ease,e._ease=m),e._from=!C&&!!r.runBackwards,!C||g&&!r.stagger){if(W=y[0]?p1(y[0]).harness:0,B=W&&r[W.prop],I=Fm(r,mw),A&&(A._zTime<0&&A.progress(1),n<0&&f&&a&&!v?A.render(-1,!0):A.revert(f&&_?R8:_0e),A._lazy=0),o){if(Uc(e._startAt=Li.set(y,Qo({data:"isStart",overwrite:!1,parent:q,immediateRender:!0,lazy:!A&&ws(l),startAt:null,delay:0,onUpdate:u,onUpdateParams:c,callbackScope:h,stagger:0},o))),e._startAt._dp=0,e._startAt._sat=e,n<0&&(Vr||!a&&!v)&&e._startAt.revert(R8),a&&_&&n<=0&&i<=0){n&&(e._zTime=n);return}}else if(f&&_&&!A){if(n&&(a=!1),M=Qo({overwrite:!1,data:"isFromStart",lazy:a&&!A&&ws(l),immediateRender:a,stagger:0,parent:q},I),B&&(M[W.prop]=B),Uc(e._startAt=Li.set(y,M)),e._startAt._dp=0,e._startAt._sat=e,n<0&&(Vr?e._startAt.revert(R8):e._startAt.render(-1,!0)),e._zTime=n,!a)t(e._startAt,Mn,Mn);else if(!n)return}for(e._pt=e._ptCache=0,l=_&&ws(l)||l&&!_,R=0;R<y.length;R++){if(D=y[R],O=D._gsap||Aw(y)[R]._gsap,e._ptLookup[R]=K={},IE[O.id]&&Cc.length&&km(),Y=E===y?R:E.indexOf(D),W&&($=new W).init(D,B||I,e,Y,E)!==!1&&(e._pt=b=new Ms(e._pt,D,$.name,0,1,$.render,$,0,$.priority),$._props.forEach(function(F){K[F]=b}),$.priority&&(z=1)),!W||B)for(M in I)Hs[M]&&($=cH(M,I,e,Y,D,E))?$.priority&&(z=1):K[M]=b=vw.call(e,D,M,"get",I[M],Y,E,0,r.stringFilter);e._op&&e._op[R]&&e.kill(D,e._op[R]),T&&e._pt&&(uc=e,Xn.killTweensOf(D,K,e.globalTime(n)),U=!e.parent,uc=0),e._pt&&l&&(IE[O.id]=1)}z&&gH(e),e._onInit&&e._onInit(e)}e._onUpdate=u,e._initted=(!e._op||e._pt)&&!U,g&&n<=0&&C.render(Do,!0,!0)},j0e=function(e,n,i,r,s,o,a){var l=(e._pt&&e._ptCache||(e._ptCache={}))[n],u,c,h,f;if(!l)for(l=e._ptCache[n]=[],h=e._ptLookup,f=e._targets.length;f--;){if(u=h[f][n],u&&u.d&&u.d._pt)for(u=u.d._pt;u&&u.p!==n&&u.fp!==n;)u=u._next;if(!u)return DE=1,e.vars[n]="+=0",yw(e,a),DE=0,1;l.push(u)}for(f=l.length;f--;)c=l[f],u=c._pt||c,u.s=(r||r===0)&&!s?r:u.s+(r||0)+o*u.c,u.c=i-u.s,c.e&&(c.e=Si(i)+Nr(c.e)),c.b&&(c.b=u.s+Nr(c.b))},X0e=function(e,n){var i=e[0]?p1(e[0]).harness:0,r=i&&i.aliases,s,o,a,l;if(!r)return n;s=R1({},n);for(o in r)if(o in s)for(l=r[o].split(","),a=l.length;a--;)s[l[a]]=s[o];return s},Y0e=function(e,n,i,r){var s=n.ease||r||"power1.inOut",o,a;if(Gr(n))a=i[e]||(i[e]=[]),n.forEach(function(l,u){return a.push({t:u/(n.length-1)*100,v:l,e:s})});else for(o in n)a=i[o]||(i[o]=[]),o==="ease"||a.push({t:parseFloat(e),v:n[o],e:s})},U5=function(e,n,i,r,s){return vi(e)?e.call(n,i,r,s):lr(e)&&~e.indexOf("random(")?o4(e):e},hH=gw+"repeat,repeatDelay,yoyo,repeatRefresh,yoyoEase,autoRevert",fH={};Is(hH+",id,stagger,delay,duration,paused,scrollTrigger",function(t){return fH[t]=1});var Li=function(t){RQ(e,t);function e(i,r,s,o){var a;typeof r=="number"&&(s.duration=r,r=s,s=null),a=t.call(this,o?r:F5(r))||this;var l=a.vars,u=l.duration,c=l.delay,h=l.immediateRender,f=l.stagger,m=l.overwrite,g=l.keyframes,v=l.defaults,_=l.scrollTrigger,A=l.yoyoEase,y=r.parent||Xn,q=(Gr(i)||PQ(i)?gu(i[0]):"length"in r)?[i]:Lo(i),E,T,C,I,R,M,b,D;if(a._targets=q.length?Aw(q):Nm("GSAP target "+i+" not found. https://greensock.com",!eo.nullTargetWarn)||[],a._ptLookup=[],a._overwrite=m,g||f||U7(u)||U7(c)){if(r=a.vars,E=a.timeline=new _s({data:"nested",defaults:v||{},targets:y&&y.data==="nested"?y.vars.targets:q}),E.kill(),E.parent=E._dp=Hl(a),E._start=0,f||U7(u)||U7(c)){if(I=q.length,b=f&&YQ(f),ql(f))for(R in f)~hH.indexOf(R)&&(D||(D={}),D[R]=f[R]);for(T=0;T<I;T++)C=Fm(r,fH),C.stagger=0,A&&(C.yoyoEase=A),D&&R1(C,D),M=q[T],C.duration=+U5(u,Hl(a),T,M,q),C.delay=(+U5(c,Hl(a),T,M,q)||0)-a._delay,!f&&I===1&&C.delay&&(a._delay=c=C.delay,a._start+=c,C.delay=0),E.to(M,C,b?b(T,M,q):0),E._ease=nn.none;E.duration()?u=c=0:a.timeline=0}else if(g){F5(Qo(E.vars.defaults,{ease:"none"})),E._ease=g1(g.ease||r.ease||"none");var z=0,O,W,$;if(Gr(g))g.forEach(function(K){return E.to(q,K,">")}),E.duration();else{C={};for(R in g)R==="ease"||R==="easeEach"||Y0e(R,g[R],C,g.easeEach);for(R in C)for(O=C[R].sort(function(K,Y){return K.t-Y.t}),z=0,T=0;T<O.length;T++)W=O[T],$={ease:W.e,duration:(W.t-(T?O[T-1].t:0))/100*u},$[R]=W.v,E.to(q,$,z),z+=$.duration;E.duration()<u&&E.to({},{duration:u-E.duration()})}}u||a.duration(u=E.duration())}else a.timeline=0;return m===!0&&!cw&&(uc=Hl(a),Xn.killTweensOf(q),uc=0),Ya(y,Hl(a),s),r.reversed&&a.reverse(),r.paused&&a.paused(!0),(h||!u&&!g&&a._start===gr(y._time)&&ws(h)&&w0e(Hl(a))&&y.data!=="nested")&&(a._tTime=-Mn,a.render(Math.max(0,-c)||0)),_&&WQ(Hl(a),_),a}var n=e.prototype;return n.render=function(r,s,o){var a=this._time,l=this._tDur,u=this._dur,c=r<0,h=r>l-Mn&&!c?l:r<Mn?0:r,f,m,g,v,_,A,y,q,E;if(!u)M0e(this,r,s,o);else if(h!==this._tTime||!r||o||!this._initted&&this._tTime||this._startAt&&this._zTime<0!==c){if(f=h,q=this.timeline,this._repeat){if(v=u+this._rDelay,this._repeat<-1&&c)return this.totalTime(v*100+r,s,o);if(f=gr(h%v),h===l?(g=this._repeat,f=u):(g=~~(h/v),g&&g===h/v&&(f=u,g--),f>u&&(f=u)),A=this._yoyo&&g&1,A&&(E=this._yEase,f=u-f),_=u2(this._tTime,v),f===a&&!o&&this._initted)return this._tTime=h,this;g!==_&&(q&&this._yEase&&aH(q,A),this.vars.repeatRefresh&&!A&&!this._lock&&(this._lock=o=1,this.render(gr(v*g),!0).invalidate()._lock=0))}if(!this._initted){if($Q(this,c?r:f,o,s,h))return this._tTime=0,this;if(a!==this._time)return this;if(u!==this._dur)return this.render(r,s,o)}if(this._tTime=h,this._time=f,!this._act&&this._ts&&(this._act=1,this._lazy=0),this.ratio=y=(E||this._ease)(f/u),this._from&&(this.ratio=y=1-y),f&&!a&&!s&&!g&&(No(this,"onStart"),this._tTime!==h))return this;for(m=this._pt;m;)m.r(y,m.d),m=m._next;q&&q.render(r<0?r:!f&&A?-Mn:q._dur*q._ease(f/this._dur),s,o)||this._startAt&&(this._zTime=r),this._onUpdate&&!s&&(c&&ME(this,r,s,o),No(this,"onUpdate")),this._repeat&&g!==_&&this.vars.onRepeat&&!s&&this.parent&&No(this,"onRepeat"),(h===this._tDur||!h)&&this._tTime===h&&(c&&!this._onUpdate&&ME(this,r,!0,!0),(r||!u)&&(h===this._tDur&&this._ts>0||!h&&this._ts<0)&&Uc(this,1),!s&&!(c&&!a)&&(h||a||A)&&(No(this,h===l?"onComplete":"onReverseComplete",!0),this._prom&&!(h<l&&this.timeScale()>0)&&this._prom()))}return this},n.targets=function(){return this._targets},n.invalidate=function(r){return(!r||!this.vars.runBackwards)&&(this._startAt=0),this._pt=this._op=this._onUpdate=this._lazy=this.ratio=0,this._ptLookup=[],this.timeline&&this.timeline.invalidate(r),t.prototype.invalidate.call(this,r)},n.resetTo=function(r,s,o,a){a4||js.wake(),this._ts||this.play();var l=Math.min(this._dur,(this._dp._time-this._start)*this._ts),u;return this._initted||yw(this,l),u=this._ease(l/this._dur),j0e(this,r,s,o,a,u,l)?this.resetTo(r,s,o,a):(jg(this,0),this.parent||QQ(this._dp,this,"_first","_last",this._dp._sort?"_start":0),this.render(0))},n.kill=function(r,s){if(s===void 0&&(s="all"),!r&&(!s||s==="all"))return this._lazy=this._pt=0,this.parent?l5(this):this;if(this.timeline){var o=this.timeline.totalDuration();return this.timeline.killTweensOf(r,s,uc&&uc.vars.overwrite!==!0)._first||l5(this),this.parent&&o!==this.timeline.totalDuration()&&c2(this,this._dur*this.timeline._tDur/o,0,1),this}var a=this._targets,l=r?Lo(r):a,u=this._ptLookup,c=this._pt,h,f,m,g,v,_,A;if((!s||s==="all")&&T0e(a,l))return s==="all"&&(this._pt=0),l5(this);for(h=this._op=this._op||[],s!=="all"&&(lr(s)&&(v={},Is(s,function(y){return v[y]=1}),s=v),s=X0e(a,s)),A=a.length;A--;)if(~l.indexOf(a[A])){f=u[A],s==="all"?(h[A]=s,g=f,m={}):(m=h[A]=h[A]||{},g=s);for(v in g)_=f&&f[v],_&&((!("kill"in _.d)||_.d.kill(v)===!0)&&Wg(this,_,"_pt"),delete f[v]),m!=="all"&&(m[v]=1)}return this._initted&&!this._pt&&c&&l5(this),this},e.to=function(r,s){return new e(r,s,arguments[2])},e.from=function(r,s){return O5(1,arguments)},e.delayedCall=function(r,s,o,a){return new e(s,0,{immediateRender:!1,lazy:!1,overwrite:!1,delay:r,onComplete:s,onReverseComplete:s,onCompleteParams:o,onReverseCompleteParams:o,callbackScope:a})},e.fromTo=function(r,s,o){return O5(2,arguments)},e.set=function(r,s){return s.duration=0,s.repeatDelay||(s.repeat=0),new e(r,s)},e.killTweensOf=function(r,s,o){return Xn.killTweensOf(r,s,o)},e}(l4);Qo(Li.prototype,{_targets:[],_lazy:0,_startAt:0,_op:0,_onInit:0});Is("staggerTo,staggerFrom,staggerFromTo",function(t){Li[t]=function(){var e=new _s,n=bE.call(arguments,0);return n.splice(t==="staggerFromTo"?5:4,0,0),e[t].apply(e,n)}});var qw=function(e,n,i){return e[n]=i},dH=function(e,n,i){return e[n](i)},K0e=function(e,n,i,r){return e[n](r.fp,i)},J0e=function(e,n,i){return e.setAttribute(n,i)},_w=function(e,n){return vi(e[n])?dH:hw(e[n])&&e.setAttribute?J0e:qw},pH=function(e,n){return n.set(n.t,n.p,Math.round((n.s+n.c*e)*1e6)/1e6,n)},Z0e=function(e,n){return n.set(n.t,n.p,!!(n.s+n.c*e),n)},mH=function(e,n){var i=n._pt,r="";if(!e&&n.b)r=n.b;else if(e===1&&n.e)r=n.e;else{for(;i;)r=i.p+(i.m?i.m(i.s+i.c*e):Math.round((i.s+i.c*e)*1e4)/1e4)+r,i=i._next;r+=n.c}n.set(n.t,n.p,r,n)},xw=function(e,n){for(var i=n._pt;i;)i.r(e,i.d),i=i._next},e2e=function(e,n,i,r){for(var s=this._pt,o;s;)o=s._next,s.p===r&&s.modifier(e,n,i),s=o},t2e=function(e){for(var n=this._pt,i,r;n;)r=n._next,n.p===e&&!n.op||n.op===e?Wg(this,n,"_pt"):n.dep||(i=1),n=r;return!i},n2e=function(e,n,i,r){r.mSet(e,n,r.m.call(r.tween,i,r.mt),r)},gH=function(e){for(var n=e._pt,i,r,s,o;n;){for(i=n._next,r=s;r&&r.pr>n.pr;)r=r._next;(n._prev=r?r._prev:o)?n._prev._next=n:s=n,(n._next=r)?r._prev=n:o=n,n=i}e._pt=s},Ms=function(){function t(n,i,r,s,o,a,l,u,c){this.t=i,this.s=s,this.c=o,this.p=r,this.r=a||pH,this.d=l||this,this.set=u||qw,this.pr=c||0,this._next=n,n&&(n._prev=this)}var e=t.prototype;return e.modifier=function(i,r,s){this.mSet=this.mSet||this.set,this.set=n2e,this.m=i,this.mt=s,this.tween=r},t}();Is(gw+"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger",function(t){return mw[t]=1});io.TweenMax=io.TweenLite=Li;io.TimelineLite=io.TimelineMax=_s;Xn=new _s({sortChildren:!1,defaults:l2,autoRemoveChildren:!0,id:"root",smoothChildTiming:!0});eo.stringFilter=sH;var A1=[],P8={},i2e=[],TD=0,r2e=0,Tq=function(e){return(P8[e]||i2e).map(function(n){return n()})},LE=function(){var e=Date.now(),n=[];e-TD>2&&(Tq("matchMediaInit"),A1.forEach(function(i){var r=i.queries,s=i.conditions,o,a,l,u;for(a in r)o=Co.matchMedia(r[a]).matches,o&&(l=1),o!==s[a]&&(s[a]=o,u=1);u&&(i.revert(),l&&n.push(i))}),Tq("matchMediaRevert"),n.forEach(function(i){return i.onMatch(i)}),TD=e,Tq("matchMedia"))},AH=function(){function t(n,i){this.selector=i&&PE(i),this.data=[],this._r=[],this.isReverted=!1,this.id=r2e++,n&&this.add(n)}var e=t.prototype;return e.add=function(i,r,s){vi(i)&&(s=r,r=i,i=vi);var o=this,a=function(){var u=fi,c=o.selector,h;return u&&u!==o&&u.data.push(o),s&&(o.selector=PE(s)),fi=o,h=r.apply(o,arguments),vi(h)&&o._r.push(h),fi=u,o.selector=c,o.isReverted=!1,h};return o.last=a,i===vi?a(o):i?o[i]=a:a},e.ignore=function(i){var r=fi;fi=null,i(this),fi=r},e.getTweens=function(){var i=[];return this.data.forEach(function(r){return r instanceof t?i.push.apply(i,r.getTweens()):r instanceof Li&&!(r.parent&&r.parent.data==="nested")&&i.push(r)}),i},e.clear=function(){this._r.length=this.data.length=0},e.kill=function(i,r){var s=this;if(i){var o=this.getTweens();this.data.forEach(function(l){l.data==="isFlip"&&(l.revert(),l.getChildren(!0,!0,!1).forEach(function(u){return o.splice(o.indexOf(u),1)}))}),o.map(function(l){return{g:l.globalTime(0),t:l}}).sort(function(l,u){return u.g-l.g||-1/0}).forEach(function(l){return l.t.revert(i)}),this.data.forEach(function(l){return!(l instanceof Li)&&l.revert&&l.revert(i)}),this._r.forEach(function(l){return l(i,s)}),this.isReverted=!0}else this.data.forEach(function(l){return l.kill&&l.kill()});if(this.clear(),r)for(var a=A1.length;a--;)A1[a].id===this.id&&A1.splice(a,1)},e.revert=function(i){this.kill(i||{})},t}(),s2e=function(){function t(n){this.contexts=[],this.scope=n}var e=t.prototype;return e.add=function(i,r,s){ql(i)||(i={matches:i});var o=new AH(0,s||this.scope),a=o.conditions={},l,u,c;fi&&!o.selector&&(o.selector=fi.selector),this.contexts.push(o),r=o.add("onMatch",r),o.queries=i;for(u in i)u==="all"?c=1:(l=Co.matchMedia(i[u]),l&&(A1.indexOf(o)<0&&A1.push(o),(a[u]=l.matches)&&(c=1),l.addListener?l.addListener(LE):l.addEventListener("change",LE)));return c&&r(o),this},e.revert=function(i){this.kill(i||{})},e.kill=function(i){this.contexts.forEac
vendor: 1,552 bytes, line 5482
5482h(function(r){return r.kill(i,!0)})},t}(),Um={registerPlugin:function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];n.forEach(function(r){return nH(r)})},timeline:function(e){return new _s(e)},getTweensOf:function(e,n){return Xn.getTweensOf(e,n)},getProperty:function(e,n,i,r){lr(e)&&(e=Lo(e)[0]);var s=p1(e||{}).get,o=i?GQ:VQ;return i==="native"&&(i=""),e&&(n?o((Hs[n]&&Hs[n].get||s)(e,n,i,r)):function(a,l,u){return o((Hs[a]&&Hs[a].get||s)(e,a,l,u))})},quickSetter:function(e,n,i){if(e=Lo(e),e.length>1){var r=e.map(function(c){return Ps.quickSetter(c,n,i)}),s=r.length;return function(c){for(var h=s;h--;)r[h](c)}}e=e[0]||{};var o=Hs[n],a=p1(e),l=a.harness&&(a.harness.aliases||{})[n]||n,u=o?function(c){var h=new o;f0._pt=0,h.init(e,i?c+i:c,f0,0,[e]),h.render(1,h),f0._pt&&xw(1,f0)}:a.set(e,l);return o?u:function(c){return u(e,l,i?c+i:c,a,1)}},quickTo:function(e,n,i){var r,s=Ps.to(e,R1((r={},r[n]="+=0.1",r.paused=!0,r),i||{})),o=function(l,u,c){return s.resetTo(n,l,u,c)};return o.tween=s,o},isTweening:function(e){return Xn.getTweensOf(e,!0).length>0},defaults:function(e){return e&&e.ease&&(e.ease=g1(e.ease,l2.ease)),qD(l2,e||{})},config:function(e){return qD(eo,e||{})},registerEffect:function(e){var n=e.name,i=e.effect,r=e.plugins,s=e.defaults,o=e.extendTimeline;(r||"").split(",").forEach(function(a){return a&&!Hs[a]&&!io[a]&&Nm(n+" effect requires "+a+" plugin.")}),_q[n]=function(a,l,u){return i(Lo(a),Qo(l||{},s),u)},o&&(_s.prototype[n]=function(a,l,u){return this.add(_q[n](a,ql(l)?l:(u=l)&&{},this),u)})}
vendor: 14,275 bytes, lines 5482-5490
5482,registerEase:function(e,n){nn[e]=g1(n)},parseEase:function(e,n){return arguments.length?g1(e,n):nn},getById:function(e){return Xn.getById(e)},exportRoot:function(e,n){e===void 0&&(e={});var i=new _s(e),r,s;for(i.smoothChildTiming=ws(e.smoothChildTiming),Xn.remove(i),i._dp=0,i._time=i._tTime=Xn._time,r=Xn._first;r;)s=r._next,(n||!(!r._dur&&r instanceof Li&&r.vars.onComplete===r._targets[0]))&&Ya(i,r,r._start-r._delay),r=s;return Ya(Xn,i,0),i},context:function(e,n){return e?new AH(e,n):fi},matchMedia:function(e){return new s2e(e)},matchMediaRefresh:function(){return A1.forEach(function(e){var n=e.conditions,i,r;for(r in n)n[r]&&(n[r]=!1,i=1);i&&e.revert()})||LE()},addEventListener:function(e,n){var i=P8[e]||(P8[e]=[]);~i.indexOf(n)||i.push(n)},removeEventListener:function(e,n){var i=P8[e],r=i&&i.indexOf(n);r>=0&&i.splice(r,1)},utils:{wrap:k0e,wrapYoyo:F0e,distribute:YQ,random:JQ,snap:KQ,normalize:N0e,getUnit:Nr,clamp:P0e,splitColor:iH,toArray:Lo,selector:PE,mapRange:eH,pipe:D0e,unitize:L0e,interpolate:O0e,shuffle:XQ},install:kQ,effects:_q,ticker:js,updateRoot:_s.updateRoot,plugins:Hs,globalTimeline:Xn,core:{PropTween:Ms,globals:FQ,Tween:Li,Timeline:_s,Animation:l4,getCache:p1,_removeLinkedListItem:Wg,reverting:function(){return Vr},context:function(e){return e&&fi&&(fi.data.push(e),e._ctx=fi),fi},suppressOverwrites:function(e){return cw=e}}};Is("to,from,fromTo,delayedCall,set,killTweensOf",function(t){return Um[t]=Li[t]});js.add(_s.updateRoot);f0=Um.to({},{duration:0});var o2e=function(e,n){for(var i=e._pt;i&&i.p!==n&&i.op!==n&&i.fp!==n;)i=i._next;return i},a2e=function(e,n){var i=e._targets,r,s,o;for(r in n)for(s=i.length;s--;)o=e._ptLookup[s][r],o&&(o=o.d)&&(o._pt&&(o=o2e(o,r)),o&&o.modifier&&o.modifier(n[r],e,i[s],r))},Cq=function(e,n){return{name:e,rawVars:1,init:function(r,s,o){o._onInit=function(a){var l,u;if(lr(s)&&(l={},Is(s,function(c){return l[c]=1}),s=l),n){l={};for(u in s)l[u]=n(s[u]);s=l}a2e(a,s)}}}},Ps=Um.registerPlugin({name:"attr",init:function(e,n,i,r,s){var o,a,l;this.tween=i;for(o in n)l=e.getAttribute(o)||"",a=this.add(e,"setAttribute",(l||0)+"",n[o],r,s,0,0,o),a.op=o,a.b=l,this._props.push(o)},render:function(e,n){for(var i=n._pt;i;)Vr?i.set(i.t,i.p,i.b,i):i.r(e,i.d),i=i._next}},{name:"endArray",init:function(e,n){for(var i=n.length;i--;)this.add(e,i,e[i]||0,n[i],0,0,0,0,0,1)}},Cq("roundProps",BE),Cq("modifiers"),Cq("snap",KQ))||Um;Li.version=_s.version=Ps.version="3.12.2";NQ=1;fw()&&h2();nn.Power0;nn.Power1;nn.Power2;nn.Power3;nn.Power4;nn.Linear;nn.Quad;nn.Cubic;nn.Quart;nn.Quint;nn.Strong;nn.Elastic;nn.Back;nn.SteppedEase;nn.Bounce;nn.Sine;nn.Expo;nn.Circ;/*! 5483 * CSSPlugin 3.12.2 5484 * https://greensock.com 5485 * 5486 * Copyright 2008-2023, GreenSock. All rights reserved. 5487 * Subject to the terms at https://greensock.com/standard-license or for 5488 * Club GreenSock members, the agreement issued with that membership. 5489 * @author: Jack Doyle, [email protected] 5490*/var CD,cc,N0,Ew,i1,wD,Sw,l2e=function(){return typeof window<"u"},Au={},kh=180/Math.PI,k0=Math.PI/180,F3=Math.atan2,ID=1e8,Tw=/([A-Z])/g,u2e=/(left|right|width|margin|padding|x)/i,c2e=/[\s,\(]\S/,tl={autoAlpha:"opacity,visibility",scale:"scaleX,scaleY",alpha:"opacity"},NE=function(e,n){return n.set(n.t,n.p,Math.round((n.s+n.c*e)*1e4)/1e4+n.u,n)},h2e=function(e,n){return n.set(n.t,n.p,e===1?n.e:Math.round((n.s+n.c*e)*1e4)/1e4+n.u,n)},f2e=function(e,n){return n.set(n.t,n.p,e?Math.round((n.s+n.c*e)*1e4)/1e4+n.u:n.b,n)},d2e=function(e,n){var i=n.s+n.c*e;n.set(n.t,n.p,~~(i+(i<0?-.5:.5))+n.u,n)},vH=function(e,n){return n.set(n.t,n.p,e?n.e:n.b,n)},yH=function(e,n){return n.set(n.t,n.p,e!==1?n.b:n.e,n)},p2e=function(e,n,i){return e.style[n]=i},m2e=function(e,n,i){return e.style.setProperty(n,i)},g2e=function(e,n,i){return e._gsap[n]=i},A2e=function(e,n,i){return e._gsap.scaleX=e._gsap.scaleY=i},v2e=function(e,n,i,r,s){var o=e._gsap;o.scaleX=o.scaleY=i,o.renderTransform(s,o)},y2e=function(e,n,i,r,s){var o=e._gsap;o[n]=i,o.renderTransform(s,o)},Zn="transform",da=Zn+"Origin",q2e=function t(e,n){var i=this,r=this.target,s=r.style;if(e in Au&&s){if(this.tfm=this.tfm||{},e!=="transform")e=tl[e]||e,~e.indexOf(",")?e.split(",").forEach(function(o){return i.tfm[o]=$l(r,o)}):this.tfm[e]=r._gsap.x?r._gsap[e]:$l(r,e);else return tl.transform.split(",").forEach(function(o){return t.call(i,o,n)});if(this.props.indexOf(Zn)>=0)return;r._gsap.svg&&(this.svgo=r.getAttribute("data-svg-origin"),this.props.push(da,n,"")),e=Zn}(s||n)&&this.props.push(e,n,s[e])},qH=function(e){e.translate&&(e.removeProperty("translate"),e.removeProperty("scale"),e.removeProperty("rotate"))},_2e=function(){var e=this.props,n=this.target,i=n.style,r=n._gsap,s,o;for(s=0;s<e.length;s+=3)e[s+1]?n[e[s]]=e[s+2]:e[s+2]?i[e[s]]=e[s+2]:i.removeProperty(e[s].substr(0,2)==="--"?e[s]:e[s].replace(Tw,"-$1").toLowerCase());if(this.tfm){for(o in this.tfm)r[o]=this.tfm[o];r.svg&&(r.renderTransform(),n.setAttribute("data-svg-origin",this.svgo||"")),s=Sw(),(!s||!s.isStart)&&!i[Zn]&&(qH(i),r.uncache=1)}},_H=function(e,n){var i={target:e,props:[],revert:_2e,save:q2e};return e._gsap||Ps.core.getCache(e),n&&n.split(",").forEach(function(r){return i.save(r)}),i},xH,kE=function(e,n){var i=cc.createElementNS?cc.createElementNS((n||"http://www.w3.org/1999/xhtml").replace(/^https/,"http"),e):cc.createElement(e);return i.style?i:cc.createElement(e)},cl=function t(e,n,i){var r=getComputedStyle(e);return r[n]||r.getPropertyValue(n.replace(Tw,"-$1").toLowerCase())||r.getPropertyValue(n)||!i&&t(e,f2(n)||n,1)||""},MD="O,Moz,ms,Ms,Webkit".split(","),f2=function(e,n,i){var r=n||i1,s=r.style,o=5;if(e in s&&!i)return e;for(e=e.charAt(0).toUpperCase()+e.substr(1);o--&&!(MD[o]+e in s););return o<0?null:(o===3?"ms":o>=0?MD[o]:"")+e},FE=function(){l2e()&&window.document&&(CD=window,cc=CD.document,N0=cc.documentElement,i1=kE("div")||{style:{}},kE("div"),Zn=f2(Zn),da=Zn+"Origin",i1.style.cssText="border-width:0;line-height:0;position:absolute;padding:0",xH=!!f2("perspective"),Sw=Ps.core.reverting,Ew=1)},wq=function t(e){var n=kE("svg",this.ownerSVGElement&&this.ownerSVGElement.getAttribute("xmlns")||"http://www.w3.org/2000/svg"),i=this.parentNode,r=this.nextSibling,s=this.style.cssText,o;if(N0.appendChild(n),n.appendChild(this),this.style.display="block",e)try{o=this.getBBox(),this._gsapBBox=this.getBBox,this.getBBox=t}catch{}else this._gsapBBox&&(o=this._gsapBBox());return i&&(r?i.insertBefore(this,r):i.appendChild(this)),N0.removeChild(n),this.style.cssText=s,o},RD=function(e,n){for(var i=n.length;i--;)if(e.hasAttribute(n[i]))return e.getAttribute(n[i])},EH=function(e){var n;try{n=e.getBBox()}catch{n=wq.call(e,!0)}return n&&(n.width||n.height)||e.getBBox===wq||(n=wq.call(e,!0)),n&&!n.width&&!n.x&&!n.y?{x:+RD(e,["x","cx","x1"])||0,y:+RD(e,["y","cy","y1"])||0,width:0,height:0}:n},SH=function(e){return!!(e.getCTM&&(!e.parentNode||e.ownerSVGElement)&&EH(e))},u4=function(e,n){if(n){var i=e.style;n in Au&&n!==da&&(n=Zn),i.removeProperty?((n.substr(0,2)==="ms"||n.substr(0,6)==="webkit")&&(n="-"+n),i.removeProperty(n.replace(Tw,"-$1").toLowerCase())):i.removeAttribute(n)}},hc=function(e,n,i,r,s,o){var a=new Ms(e._pt,n,i,0,1,o?yH:vH);return e._pt=a,a.b=r,a.e=s,e._props.push(i),a},bD={deg:1,rad:1,turn:1},x2e={grid:1,flex:1},zc=function t(e,n,i,r){var s=parseFloat(i)||0,o=(i+"").trim().substr((s+"").length)||"px",a=i1.style,l=u2e.test(n),u=e.tagName.toLowerCase()==="svg",c=(u?"client":"offset")+(l?"Width":"Height"),h=100,f=r==="px",m=r==="%",g,v,_,A;return r===o||!s||bD[r]||bD[o]?s:(o!=="px"&&!f&&(s=t(e,n,i,"px")),A=e.getCTM&&SH(e),(m||o==="%")&&(Au[n]||~n.indexOf("adius"))?(g=A?e.getBBox()[l?"width":"height"]:e[c],Si(m?s/g*h:s/100*g)):(a[l?"width":"height"]=h+(f?o:r),v=~n.indexOf("adius")||r==="em"&&e.appendChild&&!u?e:e.parentNode,A&&(v=(e.ownerSVGElement||{}).parentNode),(!v||v===cc||!v.appendChild)&&(v=cc.body),_=v._gsap,_&&m&&_.width&&l&&_.time===js.time&&!_.uncache?Si(s/_.width*h):((m||o==="%")&&!x2e[cl(v,"display")]&&(a.position=cl(e,"position")),v===e&&(a.position="static"),v.appendChild(i1),g=i1[c],v.removeChild(i1),a.position="absolute",l&&m&&(_=p1(v),_.time=js.time,_.width=v[c]),Si(f?g*s/h:g&&s?h/g*s:0))))},$l=function(e,n,i,r){var s;return Ew||FE(),n in tl&&n!=="transform"&&(n=tl[n],~n.indexOf(",")&&(n=n.split(",")[0])),Au[n]&&n!=="transform"?(s=h4(e,r),s=n!=="transformOrigin"?s[n]:s.svg?s.origin:Vm(cl(e,da))+" "+s.zOrigin+"px"):(s=e.style[n],(!s||s==="auto"||r||~(s+"").indexOf("calc("))&&(s=zm[n]&&zm[n](e,n,i)||cl(e,n)||UQ(e,n)||(n==="opacity"?1:0))),i&&!~(s+"").trim().indexOf(" ")?zc(e,n,s,i)+i:s},E2e=function(e,n,i,r){if(!i||i==="none"){var s=f2(n,e,1),o=s&&cl(e,s,1);o&&o!==i?(n=s,i=o):n==="borderColor"&&(i=cl(e,"borderTopColor"))}var a=new Ms(this._pt,e.style,n,0,1,mH),l=0,u=0,c,h,f,m,g,v,_,A,y,q,E,T;if(a.b=i,a.e=r,i+="",r+="",r==="auto"&&(e.style[n]=r,r=cl(e,n)||r,e.style[n]=i),c=[i,r],sH(c),i=c[0],r=c[1],f=i.match(h0)||[],T=r.match(h0)||[],T.length){for(;h=h0.exec(r);)_=h[0],y=r.substring(l,h.index),g?g=(g+1)%5:(y.substr(-5)==="rgba("||y.substr(-5)==="hsla(")&&(g=1),_!==(v=f[u++]||"")&&(m=parseFloat(v)||0,E=v.substr((m+"").length),_.charAt(1)==="="&&(_=L0(m,_)+E),A=parseFloat(_),q=_.substr((A+"").length),l=h0.lastIndex-q.length,q||(q=q||eo.units[n]||E,l===r.length&&(r+=q,a.e+=q)),E!==q&&(m=zc(e,n,v,q)||0),a._pt={_next:a._pt,p:y||u===1?y:",",s:m,c:A-m,m:g&&g<4||n==="zIndex"?Math.round:0});a.c=l<r.length?r.substring(l,r.length):""}else a.r=n==="display"&&r==="none"?yH:vH;return DQ.test(r)&&(a.e=0),this._pt=a,a},PD={top:"0%",bottom:"100%",left:"0%",right:"100%",center:"50%"},S2e=function(e){var n=e.split(" "),i=n[0],r=n[1]||"50%";return(i==="top"||i==="bottom"||r==="left"||r==="right")&&(e=i,i=r,r=e),n[0]=PD[i]||i,n[1]=PD[r]||r,n.join(" ")},T2e=function(e,n){if(n.tween&&n.tween._time===n.tween._dur){var i=n.t,r=i.style,s=n.u,o=i._gsap,a,l,u;if(s==="all"||s===!0)r.cssText="",l=1;else for(s=s.split(","),u=s.length;--u>-1;)a=s[u],Au[a]&&(l=1,a=a==="transformOrigin"?da:Zn),u4(i,a);l&&(u4(i,Zn),o&&(o.svg&&i.removeAttribute("transform"),h4(i,1),o.uncache=1,qH(r)))}},zm={clearProps:function(e,n,i,r,s){if(s.data!=="isFromStart"){var o=e._pt=new Ms(e._pt,n,i,0,0,T2e);return o.u=r,o.pr=-10,o.tween=s,e._props.push(i),1}}},c4=[1,0,0,1,0,0],TH={},CH=function(e){return e==="matrix(1, 0, 0, 1, 0, 0)"||e==="none"||!e},BD=function(e){var n=cl(e,Zn);return CH(n)?c4:n.substr(7).match(BQ).map(Si)},Cw=function(e,n){var i=e._gsap||p1(e),r=e.style,s=BD(e),o,a,l,u;return i.svg&&e.getAttribute("transform")?(l=e.transform.baseVal.consolidate().matrix,s=[l.a,l.b,l.c,l.d,l.e,l.f],s.join(",")==="1,0,0,1,0,0"?c4:s):(s===c4&&!e.offsetParent&&e!==N0&&!i.svg&&(l=r.display,r.display="block",o=e.parentNode,(!o||!e.offsetParent)&&(u=1,a=e.nextElementSibling,N0.appendChild(e)),s=BD(e),l?r.display=l:u4(e,"display"),u&&(a?o.insertBefore(e,a):o?o.appendChild(e):N0.removeChild(e))),n&&s.length>6?[s[0],s[1],s[4],s[5],s[12],s[13]]:s)},OE=function(e,n,i,r,s,o){var a=e._gsap,l=s||Cw(e,!0),u=a.xOrigin||0,c=a.yOrigin||0,h=a.xOffset||0,f=a.yOffset||0,m=l[0],g=l[1],v=l[2],_=l[3],A=l[4],y=l[5],q=n.split(" "),E=parseFloat(q[0])||0,T=parseFloat(q[1])||0,C,I,R,M;i?l!==c4&&(I=m*_-g*v)&&(R=E*(_/I)+T*(-v/I)+(v*y-_*A)/I,M=E*(-g/I)+T*(m/I)-(m*y-g*A)/I,E=R,T=M):(C=EH(e),E=C.x+(~q[0].indexOf("%")?E/100*C.width:E),T=C.y+(~(q[1]||q[0]).indexOf("%")?T/100*C.height:T)),r||r!==!1&&a.smooth?(A=E-u,y=T-c,a.xOffset=h+(A*m+y*v)-A,a.yOffset=f+(A*g+y*_)-y):a.xOffset=a.yOffset=0,a.xOrigin=E,a.yOrigin=T,a.smooth=!!r,a.origin=n,a.originIsAbsolute=!!i,e.style[da]="0px 0px",o&&(hc(o,a,"xOrigin",u,E),hc(o,a,"yOrigin",c,T),hc(o,a,"xOffset",h,a.xOffset),hc(o,a,"yOffset",f,a.yOffset)),e.setAttribute("data-svg-origin",E+" "+T)},h4=function(e,n){var i=e._gsap||new uH(e);if("x"in i&&!n&&!i.uncache)return i;var r=e.style,s=i.scaleX<0,o="px",a="deg",l=getComputedStyle(e),u=cl(e,da)||"0",c,h,f,m,g,v,_,A,y,q,E,T,C,I,R,M,b,D,z,O,W,$,K,Y,B,U,F,k,Q,ce,ae,ge;return c=h=f=v=_=A=y=q=E=0,m=g=1,i.svg=!!(e.getCTM&&SH(e)),l.translate&&((l.translate!=="none"||l.scale!=="none"||l.rotate!=="none")&&(r[Zn]=(l.translate!=="none"?"translate3d("+(l.translate+" 0 0").split(" ").slice(0,3).join(", ")+") ":"")+(l.rotate!=="none"?"rotate("+l.rotate+") ":"")+(l.scale!=="none"?"scale("+l.scale.split(" ").join(",")+") ":"")+(l[Zn]!=="none"?l[Zn]:"")),r.scale=r.rotate=r.translate="none"),I=Cw(e,i.svg),i.svg&&(i.uncache?(B=e.getBBox(),u=i.xOrigin-B.x+"px "+(i.yOrigin-B.y)+"px",Y=""):Y=!n&&e.getAttribute("data-svg-origin"),OE(e,Y||u,!!Y||i.originIsAbsolute,i.smooth!==!1,I)),T=i.xOrigin||0,C=i.yOrigin||0,I!==c4&&(D=I[0],z=I[1],O=I[2],W=I[3],c=$=I[4],h=K=I[5],I.length===6?(m=Math.sqrt(D*D+z*z),g=Math.sqrt(W*W+O*O),v=D||z?F3(z,D)*kh:0,y=O||W?F3(O,W)*kh+v:0,y&&(g*=Math.abs(Math.cos(y*k0))),i.svg&&(c-=T-(T*D+C*O),h-=C-(T*z+C*W))):(ge=I[6],ce=I[7],F=I[8],k=I[9],Q=I[10],ae=I[11],c=I[12],h=I[13],f=I[14],R=F3(ge,Q),_=R*kh,R&&(M=Math.cos(-R),b=Math.sin(-R),Y=$*M+F*b,B=K*M+k*b,U=ge*M+Q*b,F=$*-b+F*M,k=K*-b+k*M,Q=ge*-b+Q*M,ae=ce*-b+ae*M,$=Y,K=B,ge=U),R=F3(-O,Q),A=R*kh,R&&(M=Math.cos(-R),b=Math.sin(-R),Y=D*M-F*b,B=z*M-k*b,U=O*M-Q*b,ae=W*b+ae*M,D=Y,z=B,O=U),R=F3(z,D),v=R*kh,R&&(M=Math.cos(R),b=Math.sin(R),Y=D*M+z*b,B=$*M+K*b,z=z*M-D*b,K=K*M-$*b,D=Y,$=B),_&&Math.abs(_)+Math.abs(v)>359.9&&(_=v=0,A=180-A),m=Si(Math.sqrt(D*D+z*z+O*O)),g=Si(Math.sqrt(K*K+ge*ge)),R=F3($,K),y=Math.abs(R)>2e-4?R*kh:0,E=ae?1/(ae<0?-ae:ae):0),i.svg&&(Y=e.getAttribute("transform"),i.forceCSS=e.setAttribute("transform","")||!CH(cl(e,Zn)),Y&&e.setAttribute("transform",Y))),Math.abs(y)>90&&Math.abs(y)<270&&(s?(m*=-1,y+=v<=0?180:-180,v+=v<=0?180:-180):(g*=-1,y+=y<=0?180:-180)),n=n||i.uncache,i.x=c-((i.xPercent=c&&(!n&&i.xPercent||(Math.round(e.offsetWidth/2)===Math.round(-c)?-50:0)))?e.offsetWidth*i.xPercent/100:0)+o,i.y=h-((i.yPercent=h&&(!n&&i.yPercent||(Math.round(e.offsetHeight/2)===Math.round(-h)?-50:0)))?e.offsetHeight*i.yPercent/100:0)+o,i.z=f+o,i.scaleX=Si(m),i.scaleY=Si(g),i.rotation=Si(v)+a,i.rotationX=Si(_)+a,i.rotationY=Si(A)+a,i.skewX=y+a,i.skewY=q+a,i.transformPerspective=E+o,(i.zOrigin=parseFloat(u.split(" ")[2])||0)&&(r[da]=Vm(u)),i.xOffset=i.yOffset=0,i.force3D=eo.force3D,i.renderTransform=i.svg?w2e:xH?wH:C2e,i.uncache=0,i},Vm=function(e){return(e=e.split(" "))[0]+" "+e[1]},Iq=function(e,n,i){var r=Nr(n);return Si(parseFloat(n)+parseFloat(zc(e,"x",i+"px",r)))+r}
vendor: 8,294 bytes, lines 5490-5498
5490,C2e=function(e,n){n.z="0px",n.rotationY=n.rotationX="0deg",n.force3D=0,wH(e,n)},Ih="0deg",Uf="0px",Mh=") ",wH=function(e,n){var i=n||this,r=i.xPercent,s=i.yPercent,o=i.x,a=i.y,l=i.z,u=i.rotation,c=i.rotationY,h=i.rotationX,f=i.skewX,m=i.skewY,g=i.scaleX,v=i.scaleY,_=i.transformPerspective,A=i.force3D,y=i.target,q=i.zOrigin,E="",T=A==="auto"&&e&&e!==1||A===!0;if(q&&(h!==Ih||c!==Ih)){var C=parseFloat(c)*k0,I=Math.sin(C),R=Math.cos(C),M;C=parseFloat(h)*k0,M=Math.cos(C),o=Iq(y,o,I*M*-q),a=Iq(y,a,-Math.sin(C)*-q),l=Iq(y,l,R*M*-q+q)}_!==Uf&&(E+="perspective("+_+Mh),(r||s)&&(E+="translate("+r+"%, "+s+"%) "),(T||o!==Uf||a!==Uf||l!==Uf)&&(E+=l!==Uf||T?"translate3d("+o+", "+a+", "+l+") ":"translate("+o+", "+a+Mh),u!==Ih&&(E+="rotate("+u+Mh),c!==Ih&&(E+="rotateY("+c+Mh),h!==Ih&&(E+="rotateX("+h+Mh),(f!==Ih||m!==Ih)&&(E+="skew("+f+", "+m+Mh),(g!==1||v!==1)&&(E+="scale("+g+", "+v+Mh),y.style[Zn]=E||"translate(0, 0)"},w2e=function(e,n){var i=n||this,r=i.xPercent,s=i.yPercent,o=i.x,a=i.y,l=i.rotation,u=i.skewX,c=i.skewY,h=i.scaleX,f=i.scaleY,m=i.target,g=i.xOrigin,v=i.yOrigin,_=i.xOffset,A=i.yOffset,y=i.forceCSS,q=parseFloat(o),E=parseFloat(a),T,C,I,R,M;l=parseFloat(l),u=parseFloat(u),c=parseFloat(c),c&&(c=parseFloat(c),u+=c,l+=c),l||u?(l*=k0,u*=k0,T=Math.cos(l)*h,C=Math.sin(l)*h,I=Math.sin(l-u)*-f,R=Math.cos(l-u)*f,u&&(c*=k0,M=Math.tan(u-c),M=Math.sqrt(1+M*M),I*=M,R*=M,c&&(M=Math.tan(c),M=Math.sqrt(1+M*M),T*=M,C*=M)),T=Si(T),C=Si(C),I=Si(I),R=Si(R)):(T=h,R=f,C=I=0),(q&&!~(o+"").indexOf("px")||E&&!~(a+"").indexOf("px"))&&(q=zc(m,"x",o,"px"),E=zc(m,"y",a,"px")),(g||v||_||A)&&(q=Si(q+g-(g*T+v*I)+_),E=Si(E+v-(g*C+v*R)+A)),(r||s)&&(M=m.getBBox(),q=Si(q+r/100*M.width),E=Si(E+s/100*M.height)),M="matrix("+T+","+C+","+I+","+R+","+q+","+E+")",m.setAttribute("transform",M),y&&(m.style[Zn]=M)},I2e=function(e,n,i,r,s){var o=360,a=lr(s),l=parseFloat(s)*(a&&~s.indexOf("rad")?kh:1),u=l-r,c=r+u+"deg",h,f;return a&&(h=s.split("_")[1],h==="short"&&(u%=o,u!==u%(o/2)&&(u+=u<0?o:-o)),h==="cw"&&u<0?u=(u+o*ID)%o-~~(u/o)*o:h==="ccw"&&u>0&&(u=(u-o*ID)%o-~~(u/o)*o)),e._pt=f=new Ms(e._pt,n,i,r,u,h2e),f.e=c,f.u="deg",e._props.push(i),f},DD=function(e,n){for(var i in n)e[i]=n[i];return e},M2e=function(e,n,i){var r=DD({},i._gsap),s="perspective,force3D,transformOrigin,svgOrigin",o=i.style,a,l,u,c,h,f,m,g;r.svg?(u=i.getAttribute("transform"),i.setAttribute("transform",""),o[Zn]=n,a=h4(i,1),u4(i,Zn),i.setAttribute("transform",u)):(u=getComputedStyle(i)[Zn],o[Zn]=n,a=h4(i,1),o[Zn]=u);for(l in Au)u=r[l],c=a[l],u!==c&&s.indexOf(l)<0&&(m=Nr(u),g=Nr(c),h=m!==g?zc(i,l,u,g):parseFloat(u),f=parseFloat(c),e._pt=new Ms(e._pt,a,l,h,f-h,NE),e._pt.u=g||0,e._props.push(l));DD(a,r)};Is("padding,margin,Width,Radius",function(t,e){var n="Top",i="Right",r="Bottom",s="Left",o=(e<3?[n,i,r,s]:[n+s,n+i,r+i,r+s]).map(function(a){return e<2?t+a:"border"+a+t});zm[e>1?"border"+t:t]=function(a,l,u,c,h){var f,m;if(arguments.length<4)return f=o.map(function(g){return $l(a,g,u)}),m=f.join(" "),m.split(f[0]).length===5?f[0]:m;f=(c+"").split(" "),m={},o.forEach(function(g,v){return m[g]=f[v]=f[v]||f[(v-1)/2|0]}),a.init(l,m,h)}});var IH={name:"css",register:FE,targetTest:function(e){return e.style&&e.nodeType},init:function(e,n,i,r,s){var o=this._props,a=e.style,l=i.vars.startAt,u,c,h,f,m,g,v,_,A,y,q,E,T,C,I,R;Ew||FE(),this.styles=this.styles||_H(e),R=this.styles.props,this.tween=i;for(v in n)if(v!=="autoRound"&&(c=n[v],!(Hs[v]&&cH(v,n,i,r,e,s)))){if(m=typeof c,g=zm[v],m==="function"&&(c=c.call(i,r,e,s),m=typeof c),m==="string"&&~c.indexOf("random(")&&(c=o4(c)),g)g(this,e,v,c,i)&&(I=1);else if(v.substr(0,2)==="--")u=(getComputedStyle(e).getPropertyValue(v)+"").trim(),c+="",wc.lastIndex=0,wc.test(u)||(_=Nr(u),A=Nr(c)),A?_!==A&&(u=zc(e,v,u,A)+A):_&&(c+=_),this.add(a,"setProperty",u,c,r,s,0,0,v),o.push(v),R.push(v,0,a[v]);else if(m!=="undefined"){if(l&&v in l?(u=typeof l[v]=="function"?l[v].call(i,r,e,s):l[v],lr(u)&&~u.indexOf("random(")&&(u=o4(u)),Nr(u+"")||(u+=eo.units[v]||Nr($l(e,v))||""),(u+"").charAt(1)==="="&&(u=$l(e,v))):u=$l(e,v),f=parseFloat(u),y=m==="string"&&c.charAt(1)==="="&&c.substr(0,2),y&&(c=c.substr(2)),h=parseFloat(c),v in tl&&(v==="autoAlpha"&&(f===1&&$l(e,"visibility")==="hidden"&&h&&(f=0),R.push("visibility",0,a.visibility),hc(this,a,"visibility",f?"inherit":"hidden",h?"inherit":"hidden",!h)),v!=="scale"&&v!=="transform"&&(v=tl[v],~v.indexOf(",")&&(v=v.split(",")[0]))),q=v in Au,q){if(this.styles.save(v),E||(T=e._gsap,T.renderTransform&&!n.parseTransform||h4(e,n.parseTransform),C=n.smoothOrigin!==!1&&T.smooth,E=this._pt=new Ms(this._pt,a,Zn,0,1,T.renderTransform,T,0,-1),E.dep=1),v==="scale")this._pt=new Ms(this._pt,T,"scaleY",T.scaleY,(y?L0(T.scaleY,y+h):h)-T.scaleY||0,NE),this._pt.u=0,o.push("scaleY",v),v+="X";else if(v==="transformOrigin"){R.push(da,0,a[da]),c=S2e(c),T.svg?OE(e,c,0,C,0,this):(A=parseFloat(c.split(" ")[2])||0,A!==T.zOrigin&&hc(this,T,"zOrigin",T.zOrigin,A),hc(this,a,v,Vm(u),Vm(c)));continue}else if(v==="svgOrigin"){OE(e,c,1,C,0,this);continue}else if(v in TH){I2e(this,T,v,f,y?L0(f,y+c):c);continue}else if(v==="smoothOrigin"){hc(this,T,"smooth",T.smooth,c);continue}else if(v==="force3D"){T[v]=c;continue}else if(v==="transform"){M2e(this,c,e);continue}}else v in a||(v=f2(v)||v);if(q||(h||h===0)&&(f||f===0)&&!c2e.test(c)&&v in a)_=(u+"").substr((f+"").length),h||(h=0),A=Nr(c)||(v in eo.units?eo.units[v]:_),_!==A&&(f=zc(e,v,u,A)),this._pt=new Ms(this._pt,q?T:a,v,f,(y?L0(f,y+h):h)-f,!q&&(A==="px"||v==="zIndex")&&n.autoRound!==!1?d2e:NE),this._pt.u=A||0,_!==A&&A!=="%"&&(this._pt.b=u,this._pt.r=f2e);else if(v in a)E2e.call(this,e,v,u,y?y+c:c);else if(v in e)this.add(e,v,u||e[v],y?y+c:c,r,s);else if(v!=="parseTransform"){pw(v,c);continue}q||(v in a?R.push(v,0,a[v]):R.push(v,1,u||e[v])),o.push(v)}}I&&gH(this)},render:function(e,n){if(n.tween._time||!Sw())for(var i=n._pt;i;)i.r(e,i.d),i=i._next;else n.styles.revert()},get:$l,aliases:tl,getSetter:function(e,n,i){var r=tl[n];return r&&r.indexOf(",")<0&&(n=r),n in Au&&n!==da&&(e._gsap.x||$l(e,"x"))?i&&wD===i?n==="scale"?A2e:g2e:(wD=i||{})&&(n==="scale"?v2e:y2e):e.style&&!hw(e.style[n])?p2e:~n.indexOf("-")?m2e:_w(e,n)},core:{_removeProperty:u4,_getMatrix:Cw}};Ps.utils.checkPrefix=f2;Ps.core.getStyleSaver=_H;(function(t,e,n,i){var r=Is(t+","+e+","+n,function(s){Au[s]=1});Is(e,function(s){eo.units[s]="deg",TH[s]=1}),tl[r[13]]=t+","+e,Is(i,function(s){var o=s.split(":");tl[o[1]]=r[o[0]]})})("x,y,z,scale,scaleX,scaleY,xPercent,yPercent","rotation,rotationX,rotationY,skewX,skewY","transform,transformOrigin,svgOrigin,force3D,smoothOrigin,transformPerspective","0:translateX,1:translateY,2:translateZ,8:rotate,8:rotationZ,8:rotateZ,9:rotateX,10:rotateY");Is("x,y,z,top,right,bottom,left,width,height,fontSize,padding,margin,perspective",function(t){eo.units[t]="px"});Ps.registerPlugin(IH);var d2=Ps.registerPlugin(IH)||Ps;d2.core.Tween;function R2e(t,e,n){const i={x:t.rotation.x,y:t.rotation.y,z:t.rotation.z},r={x:t.position.x,y:t.position.y,z:t.position.z};t.position.set(e[0],e[1],e[2]),t.lookAt(new L(n[0],n[1],n[2]));const s=t.quaternion.clone().normalize();return t.rotation.set(i.x,i.y,i.z),t.position.set(r.x,r.y,r.z),[t.quaternion.clone(),s]}function MH(t,e,n){const i=rt.getState().camera,r=rt.getState().setAnimation,[s,o]=R2e(i,t,e),a=d2.to(i.position,{x:t[0],y:t[1],z:t[2],duration:n,ease:"slow",onUpdate:function(){i.quaternion.copy(s).slerp(o,this.progress())},onStart:()=>{r(a)},onComplete:()=>{r(null)}})}/*! 5491 * paths 3.12.2 5492 * https://greensock.com 5493 * 5494 * Copyright 2008-2023, GreenSock. All rights reserved. 5495 * Subject to the terms at https://greensock.com/standard-license or for 5496 * Club GreenSock members, the agreement issued with that membership. 5497 * @author: Jack Doyle, [email protected] 5498*/var b2e=/[achlmqstvz]|(-?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/ig,P2e=/[\+\-]?\d*\.?\d+e[\+\-]?\d+/ig,B2e=Math.PI/180,z7=Math.sin,V7=Math.cos,z5=Math.abs,zf=Math.sqrt,D2e=function(e){return typeof e=="number"},LD=1e5,Gu=function(e){return Math.round(e*LD)/LD||0};function L2e(t,e,n,i,r,s,o){for(var a=t.length,l,u,c,h,f;--a>-1;)for(l=t[a],u=l.length,c=0;c<u;c+=2)h=l[c],f=l[c+1],l[c]=h*e+f*i+s,l[c+1]=h*n+f*r+o;return t._dirty=1,t}function N2e(t,e,n,i,r,s,o,a,l){if(!(t===a&&e===l)){n=z5(n),i=z5(i);var u=r%360*B2e,c=V7(u),h=z7(u),f=Math.PI,m=f*2,g=(t-a)/2,v=(e-l)/2,_=c*g+h
5498*v,A=-h*g+c*v,y=_*_,q=A*A,E=y/(n*n)+q/(i*i);E>1&&(n=zf(E)*n,i=zf(E)*i);var T=n*n,C=i*i,I=(T*C-T*q-C*y)/(T*q+C*y);I<0&&(I=0);var R=(s===o?-1:1)*zf(I),M=R*(n*A/i),b=R*-(i*_/n),D=(t+a)/2,z=(e+l)/2,O=D+(c*M-h*b),W=z+(h*M+c*b),$=(_-M)/n,K=(A-b)/i,Y=(-_-M)/n,B=(-A-b)/i,U=$*$+K*K,F=(K<0?-1:1)*Math.acos($/zf(U)),k=($*B-K*Y<0?-1:1)*Math.acos(($*Y+K*B)/zf(U*(Y*Y+B*B)));isNaN(k)&&(k=f),!o&&k>0?k-=m:o&&k<0&&(k+=m),F%=m,k%=m;var Q=Math.ceil(z5(k)/(m/4)),ce=[],ae=k/Q,ge=4/3*z7(ae/2)/(1+V7(ae/2)),ye=c*n,xe=h*n,Le=h*-i,$e=c*i,Qe;for(Qe=0;Qe<Q;Qe++)r=F+Qe*ae,_=V7(r),A=z7(r),$=V7(r+=ae),K=z7(r),ce.push(_-ge*A,A+ge*_,$+ge*K,K-ge*$,$,K);for(Qe=0;Qe<ce.length;Qe+=2)_=ce[Qe],A=ce[Qe+1],ce[Qe]=_*ye+A*Le+O,ce[Qe+1]=_*xe+A*$e+W;return ce[Qe-2]=a,ce[Qe-1]=l,ce}}function k2e(t){var e=(t+"").replace(P2e,function(M){var b=+M;return b<1e-4&&b>-1e-4?0:b}).match(b2e)||[],n=[],i=0,r=0,s=2/3,o=e.length,a=0,l="ERROR: malformed path: "+t,u,c,h,f,m,g,v,_,A,y,q,E,T,C,I,R=function(b,D,z,O){y=(z-b)/3,q=(O-D)/3,v.push(b+y,D+q,z-y,O-q,z,O)};if(!t||!isNaN(e[0])||isNaN(e[1]))return console.log(l),n;for(u=0;u<o;u++)if(T=m,isNaN(e[u])?(m=e[u].toUpperCase(),g=m!==e[u]):u--,h=+e[u+1],f=+e[u+2],g&&(h+=i,f+=r),u||(_=h,A=f),m==="M")v&&(v.length<8?n.length-=1:a+=v.length),i=_=h,r=A=f,v=[h,f],n.push(v),u+=2,m="L";else if(m==="C")v||(v=[0,0]),g||(i=r=0),v.push(h,f,i+e[u+3]*1,r+e[u+4]*1,i+=e[u+5]*1,r+=e[u+6]*1),u+=6;else if(m==="S")y=i,q=r,(T==="C"||T==="S")&&(y+=i-v[v.length-4],q+=r-v[v.length-3]),g||(i=r=0),v.push(y,q,h,f,i+=e[u+3]*1,r+=e[u+4]*1),u+=4;else if(m==="Q")y=i+(h-i)*s,q=r+(f-r)*s,g||(i=r=0),i+=e[u+3]*1,r+=e[u+4]*1,v.push(y,q,i+(h-i)*s,r+(f-r)*s,i,r),u+=4;else if(m==="T")y=i-v[v.length-4],q=r-v[v.length-3],v.push(i+y,r+q,h+(i+y*1.5-h)*s,f+(r+q*1.5-f)*s,i=h,r=f),u+=2;else if(m==="H")R(i,r,i=h,r),u+=1;else if(m==="V")R(i,r,i,r=h+(g?r-i:0)),u+=1;else if(m==="L"||m==="Z")m==="Z"&&(h=_,f=A,v.closed=!0),(m==="L"||z5(i-h)>.5||z5(r-f)>.5)&&(R(i,r,h,f),m==="L"&&(u+=2)),i=h,r=f;else if(m==="A"){if(C=e[u+4],I=e[u+5],y=e[u+6],q=e[u+7],c=7,C.length>1&&(C.length<3?(q=y,y=I,c--):(q=I,y=C.substr(2),c-=2),I=C.charAt(1),C=C.charAt(0)),E=N2e(i,r,+e[u+1],+e[u+2],+e[u+3],+C,+I,(g?i:0)+y*1,(g?r:0)+q*1),u+=c,E)for(c=0;c<E.length;c++)v.push(E[c]);i=v[v.length-2],r=v[v.length-1]}else console.log(l);return u=v.length,u<6?(n.pop(),u=0):v[0]===v[u-2]&&v[1]===v[u-1]&&(v.closed=!0),n.totalPoints=a+u,n}function F2e(t){D2e(t[0])&&(t=[t]);var e="",n=t.length,i,r,s,o;for(r=0;r<n;r++){for(o=t[r],e+="M"+Gu(o[0])+","+Gu(o[1])+" C",i=o.length,s=2;s<i;s++)e+=Gu(o[s++])+","+Gu(o[s++])+" "+Gu(o[s++])+","+Gu(o[s++])+" "+Gu(o[s++])+","+Gu(o[s])+" ";o.closed&&(e+="z")}return e}/*! 5499 * CustomEase 3.12.2 5500 * https://greensock.com 5501 * 5502 * @license Copyright 2008-2023, GreenSock. All rights reserved. 5503 * Subject to the terms at https://greensock.com/standard-license or for 5504 * Club GreenSock members, the agreement issued with that membership. 5505 * @author: Jack Doyle, [email protected] 5506*/var vs,RH,bH=function(){return vs||typeof window<"u"&&(vs=window.gsap)&&vs.registerPlugin&&vs},ND=function(){vs=bH(),vs?(vs.registerEase("_CE",f4.create),RH=1):console.warn("Please gsap.registerPlugin(CustomEase)")},O2e=1e20,G7=function(e){return~~(e*1e3+(e<0?-.5:.5))/1e3},U2e=/[-+=\.]*\d+[\.e\-\+]*\d*[e\-\+]*\d*/gi,z2e=/[cLlsSaAhHvVtTqQ]/g,V2e=function(e){var n=e.length,i=O2e,r;for(r=1;r<n;r+=6)+e[r]<i&&(i=+e[r]);return i},G2e=function(e,n,i){!i&&i!==0&&(i=Math.max(+e[e.length-1],+e[1]));var r=+e[0]*-1,s=-i,o=e.length,a=1/(+e[o-2]+r),l=-n||(Math.abs(+e[o-1]-+e[1])<.01*(+e[o-2]-+e[0])?V2e(e)+s:+e[o-1]+s),u;for(l?l=1/l:l=-a,u=0;u<o;u+=2)e[u]=(+e[u]+r)*a,e[u+1]=(+e[u+1]+s)*l},Q2e=function t(e,n,i,r,s,o,a,l,u,c,h){var f=(e+i)/2,m=(n+r)/2,g=(i+s)/2,v=(r+o)/2,_=(s+a)/2,A=(o+l)/2,y=(f+g)/2,q=(m+v)/2,E=(g+_)/2,T=(v+A)/2,C=(y+E)/2,I=(q+T)/2,R=a-e,M=l-n,b=Math.abs((i-a)*M-(r-l)*R),D=Math.abs((s-a)*M-(o-l)*R),z;return c||(c=[{x:e,y:n},{x:a,y:l}],h=1),c.splice(h||c.length-1,0,{x:C,y:I}),(b+D)*(b+D)>u*(R*R+M*M)&&(z=c.length,t(e,n,f,m,y,q,C,I,u,c,h),t(C,I,E,T,_,A,a,l,u,c,h+1+(c.length-z))),c},f4=function(){function t(n,i,r){RH||ND(),this.id=n,this.setData(i,r)}var e=t.prototype;return e.setData=function(i,r){r=r||{},i=i||"0,0,1,1";var s=i.match(U2e),o=1,a=[],l=[],u=r.precision||1,c=u<=1,h,f,m,g,v,_,A,y,q;if(this.data=i,(z2e.test(i)||~i.indexOf("M")&&i.indexOf("C")<0)&&(s=k2e(i)[0]),h=s.length,h===4)s.unshift(0,0),s.push(1,1),h=8;else if((h-2)%6)throw"Invalid CustomEase";for((+s[0]!=0||+s[h-2]!=1)&&G2e(s,r.height,r.originY),this.segment=s,g=2;g<h;g+=6)f={x:+s[g-2],y:+s[g-1]},m={x:+s[g+4],y:+s[g+5]},a.push(f,m),Q2e(f.x,f.y,+s[g],+s[g+1],+s[g+2],+s[g+3],m.x,m.y,1/(u*2e5),a,a.length-1);for(h=a.length,g=0;g<h;g++)A=a[g],y=a[g-1]||A,(A.x>y.x||y.y!==A.y&&y.x===A.x||A===y)&&A.x<=1?(y.cx=A.x-y.x,y.cy=A.y-y.y,y.n=A,y.nx=A.x,c&&g>1&&Math.abs(y.cy/y.cx-a[g-2].cy/a[g-2].cx)>2&&(c=0),y.cx<o&&(y.cx?o=y.cx:(y.cx=.001,g===h-1&&(y.x-=.001,o=Math.min(o,.001),c=0)))):(a.splice(g--,1),h--);if(h=1/o+1|0,v=1/h,_=0,A=a[0],c){for(g=0;g<h;g++)q=g*v,A.nx<q&&(A=a[++_]),f=A.y+(q-A.x)/A.cx*A.cy,l[g]={x:q,cx:v,y:f,cy:0,nx:9},g&&(l[g-1].cy=f-l[g-1].y);l[h-1].cy=a[a.length-1].y-f}else{for(g=0;g<h;g++)A.nx<g*v&&(A=a[++_]),l[g]=A;_<a.length-1&&(l[g-1]=a[a.length-2])}return this.ease=function(E){var T=l[E*h|0]||l[h-1];return T.nx<E&&(T=T.n),T.y+(E-T.x)/T.cx*T.cy},this.ease.custom=this,this.id&&vs&&vs.registerEase(this.id,this.ease),this},e.getSVGData=function(i){return t.getSVGData(this,i)},t.create=function(i,r,s){return new t(i,r,s).ease},t.register=function(i){vs=i,ND()},t.get=function(i){return vs.parseEase(i)},t.getSVGData=function(i,r){r=r||{};var s=r.width||100,o=r.height||100,a=r.x||0,l=(r.y||0)+o,u=vs.utils.toArray(r.path)[0],c,h,f,m,g,v,_,A,y,q;if(r.invert&&(o=-o,l=0),typeof i=="string"&&(i=vs.parseEase(i)),i.custom&&(i=i.custom),i instanceof t)c=F2e(L2e([i.segment],s,0,0,-o,a,l));
5506else{for(c=[a,l],_=Math.max(5,(r.precision||1)*200),m=1/_,_+=2,A=5/_,y=G7(a+m*s),q=G7(l+i(m)*-o),h=(q-l)/(y-a),f=2;f<_;f++)g=G7(a+f*m*s),v=G7(l+i(f*m)*-o),(Math.abs((v-q)/(g-y)-h)>A||f===_-1)&&(c.push(y,q),h=(v-q)/(g-y)),y=g,q=v;c="M"+c.join(",")}return u&&u.setAttribute("d",c),c},t}();bH()&&vs.registerPlugin(f4);f4.version="3.12.2";class PH extends O4{constructor(e,n={}){const i=n.font;if(i===void 0)super();else{const r=i.generateShapes(e,n.size);n.depth=n.height!==void 0?n.height:50,n.bevelThickness===void 0&&(n.bevelThickness=10),n.bevelSize===void 0&&(n.bevelSize=8),n.bevelEnabled===void 0&&(n.bevelEnabled=!1),super(r,n)}this.type="TextGeometry"}}const H2e={0:{ha:833,x_min:127,x_max:705,o:"m 416 820 q 569 768 503 820 q 670 622 634 716 q 705 402 705 527 q 670 183 705 277 q 569 37 634 89 q 416 -15 504 -15 q 264 37 329 -15 q 163 183 199 89 q 127 402 127 277 q 163 622 127 527 q 264 768 199 716 q 416 820 330 820 m 416 720 q 322 682 363 720 q 258 573 281 644 q 235 402 235 501 q 258 232 235 303 q 322 123 281 160 q 416 85 363 85 q 511 123 470 85 q 575 232 552 160 q 598 402 598 303 q 575 573 598 501 q 511 682 552 644 q 416 720 470 720 z "},1:{ha:833,x_min:149,x_max:703,o:"m 661 92 q 693 82 684 92 q 703 46 703 71 q 693 11 703 21 q 661 0 684 0 l 203 0 q 171 11 180 0 q 161 46 161 21 q 171 82 161 71 q 203 92 180 92 l 386 92 l 386 674 l 217 569 q 196 562 205 562 q 159 590 174 562 q 149 621 149 606 q 170 656 149 644 l 426 814 q 453 822 439 822 q 478 812 468 822 q 488 785 488 802 l 488 92 l 661 92 z "},2:{ha:833,x_min:127,x_max:683,o:"m 393 820 q 531 792 472 820 q 623 710 591 764 q 656 583 656 656 q 622 455 656 513 q 515 323 587 397 l 287 92 l 581 92 l 581 178 q 593 212 581 201 q 632 222 604 222 q 671 212 660 222 q 683 178 683 201 l 683 46 q 673 11 683 21 q 640 0 663 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 83 127 72 l 435 385 q 523 491 498 449 q 549 583 549 534 q 508 683 549 646 q 394 720 468 720 q 254 682 319 720 l 254 607 q 242 573 254 583 q 203 563 231 563 q 163 573 175 563 q 152 607 152 583 l 152 707 q 168 744 152 733 q 275 800 217 780 q 393 820 332 820 z "},3:{ha:833,x_min:130,x_max:685,o:"m 400 820 q 536 792 478 820 q 627 714 595 765 q 659 596 659 664 q 631 495 659 538 q 555 428 604 453 q 651 353 616 402 q 685 234 685 303 q 652 104 685 160 q 556 16 619 47 q 406 -15 493 -15 q 271 8 339 -15 q 150 71 203 31 q 130 104 130 85 q 141 138 130 118 q 180 166 159 166 q 203 157 191 166 q 300 105 248 124 q 406 85 353 85 q 534 125 490 85 q 578 234 578 165 q 533 340 578 304 q 409 376 489 376 l 359 376 q 327 387 336 376 q 317 422 317 397 q 327 458 317 448 q 359 469 336 469 l 397 469 q 514 501 474 469 q 554 596 554 534 q 514 687 554 654 q 401 720 474 720 q 267 693 322 720 l 267 648 q 256 614 267 624 q 216 604 244 604 q 177 614 189 604 q 165 648 165 624 l 165 722 q 170 745 165 736 q 184 760 174 754 q 400 820 281 820 z "},4:{ha:833,x_min:100,x_max:721,o:"m 509 820 q 568 767 568 820 l 568 336 l 678 336 q 711 326 701 336 q 721 290 721 315 q 711 255 721 265 q 678 244 701 244 l 568 244 l 568 92 l 658 92 q 691 82 681 92 q 701 46 701 71 q 691 11 701 21 q 658 0 681 0 l 366 0 q 333 11 343 0 q 323 46 323 21 q 333 82 323 71 q 366 92 343 92 l 467 92 l 467 244 l 142 244 q 110 255 119 244 q 100 290 100 265 q 106 322 100 313 l 435 779 q 467 810 450 800 q 509 820 484 820 m 235 336 l 467 336 l 472 673 l 235 336 z "},5:{ha:833,x_min:127,x_max:685,o:"m 600 805 q 633 794 623 805 q 643 759 643 784 q 633 723 643 734 q 600 713 623 713 l 284 713 l 275 495 q 421 533 343 533 q 562 498 503 533 q 653 402 622 464 q 685 262 685 341 q 650 120 685 182 q 549 21 614 57 q 399 -15 484 -15 q 268 7 334 -15 q 149 66 202 28 q 127 100 127 80 q 138 133 127 115 q 178 162 156 162 q 201 153 189 162 q 296 104 245 122 q 399 85 348 85 q 494 107 454 85 q 556 169 535 130 q 578 262 578 209 q 558 351 578 312 q 500 411 538 389 q 412 433 463 433 q 330 421 366 433 q 258 385 293 409 q 224 378 248 378 q 184 388 196 378 q 174 422 172 398 l 187 761 q 199 795 189 785 q 238 805 210 805 l 600 805 z "},6:{ha:833,x_min:136,x_max:703,o:"m 622 820 q 651 808 640 821 q 661 760 661 795 q 655 730 661 739 q 636 720 648 721 q 359 627 456 711 q 243 399 262 543 q 330 471 278 446 q 439 496 381 496 q 574 464 514 496 q 668 374 634 432 q 703 239 703 315 q 668 108 703 166 q 570 18 633 50 q 425 -15 507 -15 q 289 19 351 -15 q 189 117 227 53 q 136 347 136 207 q 186 569 136 465 q 345 743 236 673 q 622 820 454 812 m 425 395 q 336 377 375 395 q 274 325 296 358 q 252 250 252 292 q 274 165 252 202 q 334 106 295 127 q 425 85 373 85 q 515 104 476 85 q 574 158 553 123 q 595 239 595 193 q 575 321 595 286 q 516 376 5
550654 357 q 425 395 477 395 z "},7:{ha:833,x_min:155,x_max:698,o:"m 655 805 q 688 794 678 805 q 698 759 698 784 q 694 732 698 743 l 405 16 q 386 -7 399 1 q 354 -15 372 -15 q 314 -5 330 -15 q 299 21 299 5 q 302 38 299 31 l 578 713 l 257 713 l 257 614 q 245 580 257 590 q 206 570 234 570 q 167 580 178 570 q 155 614 155 590 l 155 759 q 165 794 155 784 q 198 805 175 805 l 655 805 z "},8:{ha:833,x_min:140,x_max:693,o:"m 416 820 q 544 790 487 820 q 634 709 602 761 q 667 596 667 658 q 635 498 667 541 q 554 427 604 454 q 655 348 617 399 q 693 231 693 297 q 657 105 693 161 q 558 17 621 49 q 416 -15 495 -15 q 275 17 338 -15 q 176 105 212 49 q 140 231 140 161 q 178 348 140 297 q 278 427 216 399 q 197 498 228 454 q 166 596 166 541 q 199 709 166 658 q 289 790 231 761 q 416 820 346 820 m 416 720 q 341 704 374 720 q 290 661 309 689 q 271 594 271 632 q 290 531 271 559 q 342 486 309 503 q 416 470 376 470 q 491 486 457 470 q 543 531 524 503 q 562 594 562 559 q 543 661 562 632 q 491 704 524 689 q 416 720 458 720 m 416 376 q 329 357 367 376 q 270 306 291 339 q 248 231 248 273 q 270 156 248 189 q 329 104 291 123 q 416 85 367 85 q 504 104 466 85 q 563 156 542 123 q 585 231 585 189 q 563 306 585 273 q 504 357 542 339 q 416 376 466 376 z "},9:{ha:833,x_min:130,x_max:696,o:"m 408 820 q 544 786 482 820 q 644 688 606 752 q 696 458 696 598 q 647 236 696 340 q 488 62 597 132 q 211 -15 379 -7 q 182 -3 193 -16 q 172 45 172 10 q 178 75 172 66 q 197 85 184 84 q 474 178 377 94 q 590 406 571 262 q 503 334 555 359 q 393 309 452 309 q 259 341 319 309 q 164 431 199 373 q 130 566 130 490 q 165 697 130 639 q 263 787 199 755 q 408 820 326 820 m 408 720 q 318 701 357 720 q 258 647 279 682 q 237 566 237 612 q 258 484 237 519 q 317 429 279 448 q 408 410 355 410 q 497 428 458 410 q 558 480 536 447 q 581 555 581 513 q 559 640 581 603 q 499 699 538 677 q 408 720 460 720 z "},"\r":{ha:833,x_min:0,x_max:0,o:""}," ":{ha:833,x_min:0,x_max:0,o:""},"!":{ha:833,x_min:332,x_max:501,o:"m 460 861 q 483 852 476 861 q 488 827 490 844 l 455 347 q 444 323 454 332 q 416 315 434 315 q 388 323 399 315 q 377 347 378 332 l 345 827 q 350 852 343 844 q 372 861 357 861 l 460 861 m 416 183 q 481 173 461 183 q 501 140 501 163 l 501 36 q 481 3 501 13 q 416 -7 461 -7 q 352 3 372 -7 q 332 36 332 13 l 332 140 q 352 173 332 163 q 416 183 372 183 z "},'"':{ha:833,x_min:173,x_max:660,o:"m 316 861 q 344 827 348 861 l 307 522 q 293 494 304 504 q 260 485 281 485 q 229 494 241 485 q 214 522 216 504 l 177 827 q 205 861 173 861 l 316 861 m 628 861 q 656 827 660 861 l 618 522 q 605 494 616 504 q 572 485 593 485 q 541 494 553 485 q 526 522 528 504 l 489 827 q 517 861 485 861 l 628 861 z "},"#":{ha:833,x_min:41,x_max:792,o:"m 749 587 q 782 575 772 587 q 792 538 792 564 q 782 500 792 511 q 749 489 772 489 l 618 489 l 574 323 l 702 323 q 735 312 725 323 q 745 274 745 300 q 735 236 745 248 q 702 225 725 225 l 549 225 l 492 7 q 479 -9 490 -3 q 456 -15 469 -15 q 422 -5 437 -15 q 407 22 407 5 q 408 31 407 24 l 459 225 l 281 225 l 225 7 q 212 -9 222 -3 q 189 -15 201 -15 q 155 -5 170 -15 q 140 22 140 5 q 141 31 140 24 l 192 225 l 83 225 q 51 236 60 225 q 41 274 41 248 q 51 312 41 300 q 83 323 60 323 l 217 323 l 260 489 l 131 489 q 98 500 108 489 q 88 538 88 511 q 98 575 88 564 q 131 587 108 587 l 286 587 l 340 798 q 354 814 343 808 q 377 820 364 820 q 411 810 396 820 q 426 783 426 800 q 425 774 426 781 l 376 587 l 553 587 l 608 798 q 621 814 610 808 q 644 820 631 820 q 678 810 663 820 q 693 783 693 800 q 692 774 693 781 l 643 587 l 749 587 m 484 323 l 528 489 l 351 489 l 307 323 l 484 323 z "},$:{ha:833,x_min:121,x_max:712,o:"m 412 890 q 449 879 437 890 q 460 846 460 869 l 460 728 q 579 662 524 711 l 579 692 q 591 726 579 716 q 630 736 602 736 q 669 726 658 736 q 681 692 681 716 l 681 564 q 669 530 681 540 q 630 519 658 519 q 597 537 607 519 q 460 634 557 616 l 460 467 q 597 438 546 457 q 682 381 652 418 q 712 283 712 344 q 683 178 712 223 q 596 107 653 133 q 460 80 540 81 l 460 -41 q 449 -74 460 -64 q 412 -85 437 -85 q 376 -74 387 -85 q 365 -41 365 -64 l 365 87 q 223 162 281 104 l 223 124 q 212 90 223 100 q 172 80 200 80 q 133 90 144 80 q 121 124 121 100 l 121 287 q 133 321 121 3
550611 q 172 331 144 331 q 195 325 186 331 q 209 303 203 318 q 266 223 228 252 q 365 184 304 194 l 365 373 q 229 404 277 384 q 152 458 180 423 q 125 549 125 493 q 156 651 125 608 q 241 715 186 693 q 365 736 296 736 l 365 846 q 376 879 365 869 q 412 890 387 890 m 365 638 q 267 613 302 637 q 232 549 232 590 q 246 514 232 528 q 287 492 260 500 q 365 476 311 484 l 365 638 m 460 178 q 568 210 530 182 q 605 283 605 238 q 590 321 605 306 q 547 345 575 336 q 460 362 517 355 l 460 178 z "},"%":{ha:833,x_min:34,x_max:799,o:"m 220 820 q 313 795 270 820 q 380 727 355 770 q 406 634 406 684 q 380 541 406 584 q 313 473 355 498 q 220 448 270 448 q 127 473 170 448 q 59 541 84 498 q 34 634 34 584 q 59 727 34 684 q 127 795 84 770 q 220 820 170 820 m 680 718 q 711 733 695 733 q 745 715 728 733 q 762 682 762 696 q 745 650 762 666 l 153 87 q 122 73 138 73 q 88 91 104 73 q 71 124 71 109 q 87 155 71 140 l 680 718 m 220 732 q 171 719 193 732 q 135 683 149 705 q 122 634 122 661 q 135 585 122 608 q 171 550 149 563 q 220 536 193 536 q 269 550 246 536 q 304 585 291 563 q 317 634 317 608 q 304 683 317 661 q 269 719 291 705 q 220 732 246 732 m 613 357 q 706 332 663 357 q 774 264 749 307 q 799 171 799 221 q 774 78 799 121 q 706 10 749 35 q 613 -15 663 -15 q 520 10 563 -15 q 452 78 477 35 q 427 171 427 121 q 452 264 427 221 q 520 332 477 307 q 613 357 563 357 m 613 269 q 564 255 587 269 q 529 220 542 242 q 515 171 515 197 q 529 122 515 144 q 564 86 542 100 q 613 73 587 73 q 662 86 640 73 q 697 122 684 100 q 711 171 711 144 q 697 220 711 197 q 662 255 684 242 q 613 269 640 269 z "},"&":{ha:833,x_min:100,x_max:768,o:"m 392 820 q 604 749 502 820 q 618 713 618 739 l 618 627 q 607 593 618 603 q 568 583 595 583 q 528 593 540 583 q 517 627 517 603 l 517 688 q 391 720 465 720 q 327 704 354 720 q 285 662 299 688 q 271 604 271 635 q 284 538 271 568 q 327 476 298 508 l 526 252 q 574 386 553 312 q 610 414 583 414 l 716 414 q 749 404 739 414 q 759 368 759 393 q 749 333 759 343 q 716 322 739 322 l 653 322 q 595 175 629 239 l 669 92 l 726 92 q 759 82 749 92 q 768 46 768 71 q 759 11 768 21 q 726 0 749 0 l 648 0 q 595 22 616 0 l 536 88 q 330 -15 448 -15 q 207 16 258 -15 q 127 97 155 46 q 100 210 100 149 q 134 332 100 279 q 232 430 169 386 q 165 604 165 509 q 193 713 165 664 q 273 791 221 763 q 392 820 324 820 m 294 361 q 228 292 248 328 q 207 210 207 256 q 222 146 207 175 q 266 102 238 118 q 330 85 294 85 q 471 161 410 85 l 294 361 z "},"'":{ha:833,x_min:329,x_max:504,o:"m 472 861 q 500 827 504 861 l 463 522 q 449 494 460 504 q 416 485 437 485 q 385 494 397 485 q 370 522 372 504 l 333 827 q 361 861 329 861 l 472 861 z "},"(":{ha:833,x_min:201,x_max:587,o:"m 523 932 q 537 937 530 937 q 558 929 548 937 q 575 909 568 922 q 587 873 587 890 q 578 853 587 859 q 381 650 460 776 q 302 351 302 524 q 381 53 302 178 q 578 -149 460 -72 q 587 -169 587 -155 q 575 -205 587 -186 q 558 -225 568 -218 q 537 -233 548 -233 q 523 -229 530 -233 q 367 -97 440 -179 q 248 100 294 -14 q 201 351 201 215 q 248 602 201 486 q 368 800 294 717 q 523 932 441 883 z "},")":{ha:833,x_min:246,x_max:631,o:"m 310 932 q 465 800 392 883 q 585 602 538 717 q 631 351 631 486 q 585 100 631 215 q 466 -97 538 -14 q 310 -229 393 -179 q 296 -233 302 -233 q 275 -225 285 -233 q 258 -205 265 -218 q 246 -169 246 -186 q 255 -149 246 -155 q 452 53 373 -72 q 531 351 531 178 q 452 650 531 524 q 255 853 372 776 q 246 873 246 859 q 258 909 246 890 q 275 929 265 922 q 296 937 285 937 q 310 932 302 937 z "},"*":{ha:833,x_min:130,x_max:703,o:"m 416 820 q 463 804 448 820 q 475 759 478 787 l 450 569 l 624 651 q 651 658 640 658 q 680 647 667 658 q 699 614 692 635 q 703 589 703 602 q 692 557 703 570 q 659 541 680 545 l 470 505 l 603 363 q 620 327 620 347 q 591 281 620 302 q 553 267 571 267 q 508 298 525 267 l 416 465 l 325 298 q 279 267 308 267 q 241 281 262 267 q 213 327 213 302 q 230 363 213 347 l 361 505 l 174 541 q 141 557 153 545 q 130 589 130 570 q 134 614 130 602 q 153 647 140 635 q 182 658 165 658 q 209 651 193 658 l 382 569 l 358 759 q 357 769 357 762 q 373 806 357 793 q 416 820 388 820 z "},"+":{ha:833,x_min:115,x_max:718,o:"m 416 696 q 452 686 441 696 q 463 653 463 676 l 463 441 l 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 463 349 l 463 136 q 452 103 463 113 q 416 94 441 94 q 381 103 391 94 q 370 136 370 113 l 370 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 370 441 l 370 653 q 381 686 370 676 q 416 696 391 696 z "},",":{ha:833,x_min:252,x_max:508,o:"m 484 199 q 502 193 496 199 q 508 176 508 186 q 503 157 508 16
55067 l 359 -172 q 301 -199 347 -199 q 252 -165 252 -199 q 254 -155 252 -163 l 317 172 q 329 192 320 185 q 353 199 338 199 l 484 199 z "},"-":{ha:833,x_min:115,x_max:718,o:"m 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 675 441 z "},".":{ha:833,x_min:325,x_max:508,o:"m 416 203 q 487 194 465 203 q 508 161 508 184 l 508 36 q 487 3 508 13 q 416 -7 465 -7 q 346 3 368 -7 q 325 36 325 13 l 325 161 q 346 194 325 184 q 416 203 368 203 z "},"/":{ha:833,x_min:134,x_max:699,o:"m 636 945 q 681 935 663 945 q 699 909 699 925 q 696 898 699 904 l 241 -216 q 224 -234 236 -227 q 197 -241 212 -241 q 152 -231 170 -241 q 134 -205 134 -220 q 136 -193 134 -199 l 592 921 q 609 939 597 932 q 636 945 621 945 z "},":":{ha:833,x_min:325,x_max:508,o:"m 416 423 q 346 433 368 423 q 325 466 325 443 l 325 591 q 346 624 325 614 q 416 633 368 633 q 487 624 465 633 q 508 591 508 614 l 508 466 q 487 433 508 443 q 416 423 465 423 m 416 -7 q 346 3 368 -7 q 325 36 325 13 l 325 161 q 346 194 325 184 q 416 203 368 203 q 487 194 465 203 q 508 161 508 184 l 508 36 q 487 3 508 13 q 416 -7 465 -7 z "},";":{ha:833,x_min:266,x_max:522,o:"m 416 423 q 346 433 368 423 q 325 466 325 443 l 325 591 q 346 624 325 614 q 416 633 368 633 q 487 624 465 633 q 508 591 508 614 l 508 466 q 487 433 508 443 q 416 423 465 423 m 498 199 q 515 193 509 199 q 522 176 522 186 q 517 157 522 167 l 373 -172 q 315 -199 361 -199 q 266 -165 266 -199 q 267 -155 266 -163 l 331 172 q 343 192 334 185 q 366 199 352 199 l 498 199 z "},"<":{ha:833,x_min:85,x_max:714,o:"m 644 701 q 669 707 657 707 q 706 678 691 707 q 714 650 714 662 q 686 614 714 627 l 231 395 l 686 177 q 714 141 714 163 q 706 113 714 129 q 669 83 691 83 q 644 90 657 83 l 117 349 q 92 368 100 357 q 85 395 85 378 q 92 423 85 412 q 117 442 100 434 l 644 701 z "},"=":{ha:833,x_min:115,x_max:718,o:"m 675 576 q 708 566 698 576 q 718 530 718 555 q 708 495 718 505 q 675 484 698 484 l 158 484 q 125 495 135 484 q 115 530 115 505 q 125 566 115 555 q 158 576 135 576 l 675 576 m 675 305 q 708 295 698 305 q 718 259 718 284 q 708 223 718 234 q 675 213 698 213 l 158 213 q 125 223 135 213 q 115 259 115 234 q 125 295 115 284 q 158 305 135 305 l 675 305 z "},">":{ha:833,x_min:119,x_max:748,o:"m 716 442 q 741 423 733 434 q 748 395 748 412 q 741 368 748 378 q 716 349 733 357 l 189 90 q 164 83 176 83 q 127 113 142 83 q 119 141 119 129 q 146 177 119 163 l 602 395 l 146 614 q 119 650 119 627 q 127 678 119 662 q 164 707 142 707 q 189 701 176 707 l 716 442 z "},"?":{ha:833,x_min:172,x_max:655,o:"m 419 861 q 546 834 492 861 q 627 759 599 807 q 655 648 655 711 q 632 548 655 590 q 563 476 608 507 q 443 414 517 445 l 434 317 q 389 284 431 284 q 345 317 347 284 l 336 451 q 339 473 334 465 q 356 486 345 481 l 403 505 q 489 547 457 527 q 535 591 520 566 q 551 648 551 615 q 516 730 551 699 q 420 760 482 760 q 274 735 334 760 l 274 675 q 262 641 274 651 q 223 631 251 631 q 184 641 195 631 q 172 675 172 651 l 172 761 q 176 784 172 775 q 189 799 180 793 q 419 861 292 861 m 389 156 q 449 146 431 156 q 467 113 467 136 l 467 36 q 449 3 467 13 q 389 -7 431 -7 q 330 3 348 -7 q 311 36 311 13 l 311 113 q 330 146 311 136 q 389 156 348 156 z "},"@":{ha:833,x_min:34,x_max:793,o:"m 448 731 q 630 684 551 731 q 751 553 708 637 q 793 360 793 469 q 770 221 793 281 q 703 126 746 160 q 603 93 659 93 q 527 115 559 93 q 480 180 496 138 q 413 112 445 135 q 338 90 381 90 q 278 108 305 90 q 235 160 250 126 q 219 242 219 195 q 248 372 219 304 q 327 487 277 441 q 434 532 376 532 q 521 465 492 532 l 542 507 q 559 515 546 515 q 582 510 569 515 q 603 497 595 505 q 608 479 611 488 l 556 274 q 551 239 551 256 q 565 194 551 210 q 602 178 578 178 q 682 228 653 178 q 711 360 711 278 q 679 513 711 448 q 586 613 646 578 q 444 648 526 648 q 277 597 352 648 q 160 459 202 547 q 117 264 117 372 q 148 113 117 177 q 237 14 178 49 q 380 -20 296 -20 q 472 -14 427 -20 q 553 5 517 -7 q 560 6 558 6 q 588 -24 579 6 q 591 -43 591 -37 q 575 -68 591 -62 q 487 -94 538 -85 q 381 -104 436 -104 q 195 -59 273 -104 q 76 68 117 -15 q 34 264 34 151 q 88 502 34 395 q 236 670 142 609 q 448 731 330 731 m 431 446 q 378 416 407 446 q 330 339 349 386 q 311 243 311 292 q 323 196 311 212 q 355 180 335 180 q 418 211 389 180 q 465 289 448 242 q 483 380 483 336 q 469 429 483 412 q 431 446 456 446 z "}
5506,A:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 z "},B:{ha:833,x_min:54,x_max:742,o:"m 437 805 q 572 778 516 805 q 655 702 627 751 q 684 587 684 652 q 660 495 684 535 q 593 431 637 456 q 704 356 665 408 q 742 230 742 305 q 711 107 742 159 q 623 28 681 56 q 481 0 564 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 180 92 l 180 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 437 805 m 281 462 l 422 462 q 540 494 500 462 q 580 587 580 527 q 541 681 580 649 q 422 713 501 713 l 281 713 l 281 462 m 281 92 l 461 92 q 590 128 545 92 q 635 230 635 164 q 465 370 635 370 l 281 370 l 281 92 z "},C:{ha:833,x_min:80,x_max:741,o:"m 677 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 q 741 109 741 125 q 720 74 741 89 q 583 7 657 30 q 430 -15 509 -15 q 245 37 324 -15 q 123 183 166 89 q 80 402 80 277 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 z "},D:{ha:833,x_min:54,x_max:773,o:"m 416 805 q 604 756 523 805 q 729 617 684 708 q 773 402 773 526 q 729 188 773 279 q 604 48 684 97 q 416 0 523 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 416 805 m 275 92 l 401 92 q 541 128 481 92 q 633 233 601 163 q 666 402 666 302 q 633 571 666 502 q 541 677 601 641 q 401 713 481 713 l 275 713 l 275 92 z "},E:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 z "},F:{ha:833,x_min:54,x_max:753,o:"m 710 805 q 743 794 733 805 q 753 759 753 784 l 753 580 q 741 546 753 556 q 702 536 730 536 q 663 546 674 536 q 651 580 651 556 l 651 713 l 288 713 l 288 448 l 460 448 l 460 509 q 471 543 460 533 q 509 553 481 553 q 546 543 536 553 q 557 509 557 533 l 557 294 q 546 260 557 270 q 509 250 536 250 q 471 260 481 250 q 460 294 460 270 l 460 355 l 288 355 l 288 92 l 446 92 q 478 82 469 92 q 488 46 488 71 q 478 11 488 21 q 446 0 469 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 186 92 l 186 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 710 805 z "},G:{ha:833,x_min:66,x_max:792,o:"m 669 820 q 709 810 697 820 q 720 776 720 800 l 720 579 q 709 545 720 555 q 669 535 697 535 q 630 545 642 535 q 618 579 618 555 q 596 652 618 620 q 532 702 574 684 q 430 720 489 720 q 297 681 355 720 q 206 570 239 642 q 174 402 174 498 q 204 234 174 306 q 292 124 235 163 q 423 85 349 85 q 626 124 542 85 l 626 278 l 458 278 q 426 289 435 278 q 416 324 416 299 q 426 360 416 349 q 458 370 435 370 l 749 370 q 782 360 772 370 q 792 324 792 349 q 782 289 792 299 q 749 278 772 278 l 728 278 l 728 97 q 703 50 728 64 q 575 2 648 18 q 423 -15 503 -15 q 236 37 317 -15 q 111 183 155 89 q 66 402 66 278 q 112 621 66 526 q 239 768 158 715 q 423 820 320 820 q 536 800 487 820 q 618 743 585 780 l 618 776 q 630 810 618 800 q 669 820 642 820 z "},H:{ha:833,x_min:54,x_max:779,o:"m 736 805 q 769 794 759 805 q 779 759 779 784 q 769 723 779 734 q 736 713 759 713 l 687 713 l 687 92 l 736 92 q 769 82 759 92 q 779 46 779 71 q 769 11 779 21 q 736 0 759 0 l 523 0 q 490 11 500 0 q 480 46 480 21 q 490 82 480 71 q 523 92 500 92 l 585 92 l 585 369 l 248 369 l 248 92 l 310 92 q 343 82 333 92 q 353 46 353 71 q 343 11 353 21 q 310 0 333 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 146 92 l 146 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 248 713 l 248 461 l 585 461 l 585 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 736 805 z "},I:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 z "},J:{ha:833,x_min:78,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 606 713 l 606 226 q 537 46 606 107 q 335 -15 468 -15 q 195 13 258 -15 q 89 87 132 40 q 78 122 78 100 l 78 315 q 90 349 78 339 q 129 359 101 359 q 168 349 157 359 q 180 315 180 339 l 180 136 q 336 85 237 85 q 465 125 425 85 q 505 246 505 164 l 505 713 l 273 713 q 240 723 250 713 q 231 759 231 734 q 240 794 231 784 q 273 805 250 805 l 743 805 z "},K:{ha:833,x_min:54,x_max:806,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 417 438 q 433 439 422 439 q 575 371 522 439 q 612 310 596 344 q 647 225 628 276 q 661 190 650 218 q 683 141 672 161 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 707 0 q 591 94 639 0 q 551 187 574 128 q 522 257 535 229 q 494 308 509 286 q 453 343 477 331 q 397 355 428 355 q 342 345 368 355 q 295 315 315 335 l 275 296 l 275 92 l 385 92 q 417 82 408 92 q 427 46 427 71 q 417 11 427 21 q 385 0 408 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 337 805 q 370 794 360 805 q 380 759 380 784 q 370 723 380 734 q 337 713 360 713 l 275 713 l 275 422 l 572 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},L:{ha:833,x_min:54,x_max:746,o:"m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 473 805 z "},M:{ha:833,x_min:20,x_max:812,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 715 713 l 733 92 l 770 92 q 803 82 793 92 q 812 46 812 71 q 803 11 812 21 q 770 0 793 0 l 557 0 q 524 11 534 0 q 514 46 514 21 q 524 82 514 71 q 557 92 534 92 l 632 92 l 617 648 l 479 261 q 455 227 470 237 q 416 217 441 217 q 377 227 392 217 q 354 261 363 237 l 215 648 l 201 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 63 0 q 30 11 40 0 q 20 46 20 21 q 30 82 20 71 q 63 92 40 92 l 100 92 l 117 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 227 805 q 252 800 243 805 q 266 783 262 794 l 416 370 l 566 783 q 606 805 574 805 l 749 805 z "},N:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 25 q 691 -4 704 7 q 653 -15 679 -15 q 596 22 617 -15 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},O:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 z "},P:{ha:833,x_min:54,x_max:754,o:"m 468 805 q 623 773 558 805 q 721 683 687 741 q 754 548 754 625 q 721 414 754 471 q 623 325 687 357 q 468 294 558 294 l 309 294 l 309 92 l 471 92 q 504 82 494 92 q 514 46 514 71 q 504 11 514 21 q 471 0 494 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 468 805 m 309 386 l 454 386 q 597 429 548 386 q 647 548 647 471 q 597 669 647 626 q 454 713 547 713 l 309 713 l 309 386 z "},Q:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 771 522 820 q 729 631 684 722 q 773 419 773 540 q 729 208 773 298 q 603 68 684 117 q 416 19 522 19 q 381 20 397 19 l 294 -71 q 402 -50 349 -50 q 443 -52 424 -50 q 492 -61 463 -55 q 565 -71 538 -71 q 618 -62 592 -71 q 673 -33 644 -54 q 686 -28 680 -28 q 707 -37 696 -28 q 726 -58 718 -45 q 737 -93 737 -78 q 722 -121 737 -111 q 648 -163 683 -151 q 578 -175 613 -175 q 541 -172 561 -175 q 508 -167 521 -170 q 490 -163 496 -165 q 432 -153 455 -156 q 381 -149 408 -149 q 229 -182 308 -149 q 218 -184 224 -184 q 172 -153 196 -184 q 155 -113 155 -130 q 161 -96 155 -104 l 283 42 q 119 180 178 81 q 60 419 60 279 q 104 631 60 540 q 230 771 149 722 q 416 820 311 820 m 416 720 q 285 684 341 720 q 198 580 229 648 q 167 419 167 512 q 198 258 167 326 q 285 155 229 191 q 416 119 341 119 q 548 155 492 119 q 635 258 604 191 q 666 419 666 326 q 635 580 666 512 q 548 684 604 648 q 416 720 492 720 z "},R:{ha:833,x_min:54,x_max:806,o:"m 440 805 q 586 777 525 805 q 678 696 646 748 q 709 576 709 645 q 659 446 709 499 q 522 372 609 392 q 585 324 559 357 q 621 269 606 296 q 654 201 635 241 q 683 141 673 160 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 714 0 q 645 21 673 0 q 591 94 617 43 q 554 173 576 124 q 521 242 534 218 q 491 292 509 267 q 442 335 471 320 q 374 349 414 349 l 281 349 l 281 92 l 370 92 q 402 82 393 92 q 412 46 412 71 q 402 11 412 21 q 370 0 393 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 180 92 l 180 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 440 805 m 281 441 l 419 441 q 602 576 602 441 q 556 677 602 642 q 426 713 510 713 l 281 713 l 281 441 z "},S:{ha:833,x_min:107,x_max:722,o:"m 640 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 q 689 98 722 151 q 591 15 656 45 q 435 -15 526 -15 q 310 10 368 -15 q 209 82 252 35 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 z "},T:{ha:833,x_min:83,x_max:750,o:"m 707 805 q 740 794 730 805 q 750 759 750 784 l 750 503 q 739 469 750 479 q 699 459 727 459 q 660 469 671 459 q 648 503 648 479 l 648 713 l 467 713 l 467 92 l 627 92 q 660 82 650 92 q 670 46 670 71 q 660 11 670 21 q 627 0 650 0 l 205 0 q 173 11 182 0 q 163 46 163 21 q 173 82 163 71 q 205 92 182 92 l 366 92 l 366 713 l 184 713 l 184 503 q 173 469 184 479 q 134 459 161 459 q 94 469 106 459 q 83 503 83 479 l 83 759 q 93 794 83 784 q 125 805 102 805 l 707 805 z "},U:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},V:{ha:833,x_min:7,x_max:826,o:"m 783 805 q 816 794 806 805 q 826 759 826 784 q 816 723 826 734 q 783 713 806 713 l 731 713 l 488 29 q 461 -5 479 5 q 414 -15 444 -15 q 368 -4 385 -15 q 342 29 351 6 l 101 713 l 50 713 q 17 723 26 713 q 7 759 7 734 q 17 794 7 784 q 50 805 26 805 l 303 805 q 336 794 326 805 q 346 759 346 784 q 336 723 346 734 q 303 713 326 713 l 208 713 l 415 113 l 625 713 l 557 713 q 524 723 534 713 q 514 759 514 734 q 524 794 514 784 q 557 805 534 805 l 783 805 z "},W:{ha:833,x_min:-7,x_max:840,o:"m 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 238 170 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 591 170 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 z "},X:{ha:833,x_min:34,x_max:799,o:"m 736 805 q 769 794 759 805 q 779 759 779 784 q 769 723 779 734 q 736 713 759 713 l 692 713 l 482 418 l 717 92 l 756 92 q 789 82 779 92 q 799 46 799 71 q 789 11 799 21 q 756 0 779 0 l 516 0 q 483 11 493 0 q 473 46 473 21 q 483 82 473 71 q 516 92 493 92 l 590 92 l 417 340 l 240 92 l 296 92 q 329 82 319 92 q 339 46 339 71 q 329 11 339 21 q 296 0 319 0 l 77 0 q 44 11 54 0 q 34 46 34 21 q 44 82 34 71 q 77 92 54 92 l 119 92 l 355 420 l 144 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 330 805 q 363 794 353 805 q 373 759 373 784 q 363 723 373 734 q 330 713 353 713 l 270 713 l 420 498 l 570 713 l 530 713 q 497 723 507 713 q 487 759 487 734 q 497 794 487 784 q 530 805 507 805 l 736 805 z "},Y:{ha:833,x_min:41,x_max:792,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 467 334 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 334 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 z "},Z:{ha:833,x_min:113,x_max:718,o:"m 669 805 q 702 794 692 805 q 712 759 712 784 q 705 732 712 742 l 256 92 l 616 92 l 616 275 q 628 309 616 298 q 667 319 640 319 q 707 309 695 319 q 718 275 718 298 l 718 46 q 708 11 718 21 q 675 0 699 0 l 156 0 q 123 11 133 0 q 113 46 113 21 q 123 75 113 61 l 570 713 l 229 713 l 229 544 q 218 510 229 520 q 178 500 206 500 q 139 510 151 500 q 127 544 127 520 l 127 759 q 137 794 127 784 q 170 805 147 805 l 669 805 z "},"[":{ha:833,x_min:224,x_max:590,o:"m 547 -128 q 580 -139 570 -128 q 590 -177 590 -151 q 580 -215 590 -203 q 547 -226 570 -226 l 267 -226 q 234 -215 243 -226 q 224 -180 224 -205 l 224 884 q 234 920 224 909 q 267 930 243 930 l 547 930 q 580 919 570 930 q 590 882 590 908 q 580 844 590 855 q 547 833 570 833 l 326 833 l 326 -128 l 547 -128 z "},"\\":{ha:833,x_min:134,x_max:699,o:"m 197 945 q 224 939 212 945 q 241 921 236 932 l 696 -193 q 699 -205 699 -199 q 681 -231 699 -220 q 636 -241 663 -241 q 609 -234 621 -241 q 592 -216 597 -227 l 136 898 q 134 9
550609 134 904 q 152 935 134 925 q 197 945 170 945 z "},"]":{ha:833,x_min:243,x_max:609,o:"m 566 930 q 599 920 589 930 q 609 884 609 909 l 609 -180 q 599 -215 609 -205 q 566 -226 589 -226 l 286 -226 q 253 -215 262 -226 q 243 -177 243 -203 q 253 -139 243 -151 q 286 -128 262 -128 l 507 -128 l 507 833 l 286 833 q 253 844 262 833 q 243 882 243 855 q 253 919 243 908 q 286 930 262 930 l 566 930 z "},"^":{ha:833,x_min:157,x_max:675,o:"m 416 820 q 446 814 435 820 q 463 795 456 808 l 671 394 q 675 380 675 387 q 666 359 675 368 q 642 345 656 350 q 614 340 629 340 q 591 345 601 340 q 577 357 581 349 l 416 683 l 256 357 q 242 345 252 349 q 219 340 232 340 q 191 345 203 340 q 167 359 176 350 q 157 380 157 368 q 161 394 157 387 l 370 795 q 387 814 377 808 q 416 820 397 820 z "},_:{ha:833,x_min:-19,x_max:852,o:"m 836 -171 q 848 -180 844 -171 q 852 -217 852 -189 q 848 -254 852 -245 q 836 -263 844 -263 l -3 -263 q -15 -254 -12 -263 q -19 -217 -19 -245 q -15 -180 -19 -189 q -3 -171 -12 -171 l 836 -171 z "},"`":{ha:833,x_min:212,x_max:550,o:"m 539 777 q 550 756 550 769 q 534 721 550 739 q 503 704 519 704 q 481 711 493 704 l 227 859 q 212 886 212 868 q 233 932 212 905 q 278 960 255 960 q 303 951 291 960 l 539 777 z "},a:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 z "},b:{ha:833,x_min:25,x_max:747,o:"m 196 890 q 229 879 219 890 q 239 844 239 869 l 239 530 q 454 642 326 642 q 604 602 538 642 q 709 488 671 562 q 747 313 747 414 q 709 139 747 213 q 604 25 671 64 q 454 -15 538 -15 q 331 15 387 -15 q 232 100 275 45 l 232 46 q 222 11 232 21 q 189 0 212 0 l 81 0 q 48 11 58 0 q 39 46 39 21 q 48 82 39 71 q 81 92 58 92 l 137 92 l 137 798 l 68 798 q 35 808 45 798 q 25 844 25 819 q 35 879 25 869 q 68 890 45 890 l 196 890 m 447 541 q 339 514 387 541 q 266 435 292 487 q 239 313 239 384 q 266 191 239 243 q 339 113 292 140 q 447 85 387 85 q 551 114 507 85 q 617 195 594 143 q 640 313 640 246 q 617 432 640 380 q 551 512 594 484 q 447 541 507 541 z "},c:{ha:833,x_min:86,x_max:714,o:"m 661 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 q 714 111 714 127 q 692 72 714 87 q 564 8 638 31 q 413 -15 490 -15 q 242 28 316 -15 q 127 145 168 71 q 86 313 86 220 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 621 631 610 621 q 661 642 633 642 z "},d:{ha:833,x_min:86,x_max:794,o:"m 653 890 q 686 879 676 890 q 696 844 696 869 l 696 92 l 751 92 q 784 82 774 92 q 794 46 794 71 q 784 11 794 21 q 751 0 774 0 l 644 0 q 611 11 621 0 q 601 46 601 21 l 601 100 q 502 15 558 45 q 379 -15 446 -15 q 229 25 295 -15 q 124 139 162 64 q 86 313 86 213 q 124 488 86 414 q 229 602 162 562 q 379 642 295 642 q 594 530 507 642 l 594 798 l 484 798 q 451 808 461 798 q 441 844 441 819 q 451 879 441 869 q 484 890 461 890 l 653 890 m 386 541 q 282 512 326 541 q 216 432 239 484 q 193 313 193 380 q 216 195 193 246 q 282 114 239 143 q 386 85 326 85 q 493 113 446 85 q 567 191 541 140 q 594 313 594 243 q 567 435 594 384 q 493 514 541 487 q 386 541 446 541 z "},e:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 z "},f:{ha:833,x_min:127,x_max:755,o:"m 543 893 q 723 859 633 893 q 755 814 755 846 q 753 796 755 806 q 720 758 744 758 q 703 761 712 758 q 543 794 617 794 q 406 647 406 794 l 406 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 406 480 l 406 92 l 640 92 q 673 82 663 92 q 683 46 683 71 q 673 11 683 21 q 640 0 663 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 304 92 l 304 480 l 170 480 q 137 491 146 480 q 127 526 127 501 q 137 562 127 551 q 170 572 146 572 l 304 572 l 304 656 q 367 830 304 768 q 543 893 429 893 z "},g:{ha:833,x_min:86,x_max:794,o:"m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -20 q 662 -159 696 -101 q 562 -248 627 -217 q 406 -278 497 -278 q 274 -267 340 -278 q 150 -235 208 -256 q 123 -199 123 -225 q 129 -172 123 -188 q 168 -134 141 -134 q 182 -137 175 -134 q 294 -167 235 -156 q 406 -178 352 -178 q 547 -133 499 -178 q 594 -12 594 -89 l 594 125 q 379 19 510 19 q 229 57 295 19 q 124 165 162 94 q 86 330 86 235 q 124 496 86 425 q 229 604 162 566 q 379 642 295 642 m 386 541 q 282 514 326 541 q 216 440 239 488 q 193 330 193 392 q 216 221 193 269 q 282 146 239 173 q 386 119 326 119 q 493 144 446 119 q 567 217 541 170 q 594 330 594 265 q 567 443 594 395 q 493 516 541 491 q 386 541 446 541 z "},h:{ha:833,x_min:52,x_max:786,o:"m 216 890 q 249 879 239 890 q 259 844 259 869 l 259 506 q 361 607 303 572 q 486 642 419 642 q 593 615 548 642 q 663 538 639 588 q 688 420 688 488 l 688 92 l 743 92 q 776 82 766 92 q 786 46 786 71 q 776 11 786 21 q 743 0 766 0 l 524 0 q 491 11 500 0 q 481 46 481 21 q 491 82 481 71 q 524 92 500 92 l 586 92 l 586 410 q 558 506 586 471 q 476 541 530 541 q 369 508 418 541 q 289 416 319 475 q 259 286 259 358 l 259 92 l 321 92 q 354 82 345 92 q 364 46 364 71 q 354 11 364 21 q 321 0 345 0 l 102 0 q 69 11 79 0 q 59 46 59 21 q 69 82 59 71 q 102 92 79 92 l 157 92 l 157 798 l 95 798 q 62 808 72 798 q 52 844 52 819 q 62 879 52 869 q 95 890 72 890 l 216 890 z "},i:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 419 924 q 470 915 456 924 q 484 880 484 905 l 484 792 q 470 758 484 768 q 419 748 456 748 q 368 758 382 748 q 355 792 355 768 l 355 880 q 368 915 355 905 q 419 924 382 924 z "},j:{ha:833,x_min:129,x_max:612,o:"m 570 627 q 603 616 593 627 q 612 581 612 606 l 612 -39 q 559 -218 612 -158 q 391 -278 506 -278 q 269 -257 334 -278 q 151 -202 204 -235 q 129 -167 129 -189 q 138 -136 129 -154 q 177 -105 154 -10
55065 q 198 -112 189 -105 q 295 -161 245 -142 q 391 -179 345 -179 q 484 -143 457 -179 q 511 -30 511 -107 l 511 534 l 224 534 q 191 545 201 534 q 181 581 181 555 q 191 616 181 606 q 224 627 201 627 l 570 627 m 548 924 q 599 915 585 924 q 612 880 612 905 l 612 792 q 599 758 612 768 q 548 748 585 748 q 497 758 511 748 q 484 792 484 768 l 484 880 q 497 915 484 905 q 548 924 511 924 z "},k:{ha:833,x_min:45,x_max:786,o:"m 743 92 q 776 82 766 92 q 786 46 786 71 q 776 11 786 21 q 743 0 766 0 l 524 0 q 491 11 500 0 q 481 46 481 21 q 491 82 481 71 q 524 92 500 92 l 572 92 l 402 294 l 279 186 l 279 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 102 0 q 69 11 79 0 q 59 46 59 21 q 69 82 59 71 q 102 92 79 92 l 177 92 l 177 798 l 88 798 q 55 808 65 798 q 45 844 45 819 q 55 879 45 869 q 88 890 65 890 l 236 890 q 269 879 259 890 q 279 844 279 869 l 279 307 l 537 534 l 489 534 q 456 545 466 534 q 446 581 446 555 q 456 616 446 606 q 489 627 466 627 l 715 627 q 748 616 739 627 q 758 581 758 606 q 748 545 758 555 q 715 534 739 534 l 675 534 l 476 359 l 704 92 l 743 92 z "},l:{ha:833,x_min:120,x_max:737,o:"m 434 890 q 467 879 457 890 q 477 844 477 869 l 477 92 l 694 92 q 727 82 718 92 q 737 46 737 71 q 727 11 737 21 q 694 0 718 0 l 163 0 q 130 11 140 0 q 120 46 120 21 q 130 82 120 71 q 163 92 140 92 l 375 92 l 375 798 l 190 798 q 157 808 167 798 q 147 844 147 819 q 157 879 147 869 q 190 890 167 890 l 434 890 z "},m:{ha:833,x_min:-3,x_max:850,o:"m 808 92 q 841 82 831 92 q 850 46 850 71 q 841 11 850 21 q 808 0 831 0 l 707 0 q 674 11 684 0 q 664 46 664 21 l 664 448 q 649 518 664 494 q 600 541 633 541 q 541 512 568 541 q 497 430 513 482 q 481 310 481 377 l 481 92 l 520 92 q 553 82 543 92 q 563 46 563 71 q 553 11 563 21 q 520 0 543 0 l 422 0 q 390 11 399 0 q 380 46 380 21 l 380 448 q 365 518 380 494 q 315 541 349 541 q 256 512 283 541 q 213 430 229 482 q 197 310 197 377 l 197 92 l 233 92 q 266 82 256 92 q 275 46 275 71 q 266 11 275 21 q 233 0 256 0 l 40 0 q 7 11 17 0 q -3 46 -3 21 q 7 82 -3 71 q 40 92 17 92 l 96 92 l 96 534 l 40 534 q 7 545 17 534 q -3 581 -3 555 q 7 616 -3 606 q 40 627 17 627 l 141 627 q 174 616 164 627 q 184 581 184 606 l 184 513 q 254 609 213 577 q 342 642 294 642 q 422 610 388 642 q 469 519 457 579 q 625 642 530 642 q 697 622 665 642 q 747 561 728 602 q 766 460 766 519 l 766 92 l 808 92 z "},n:{ha:833,x_min:52,x_max:793,o:"m 493 642 q 600 615 555 642 q 670 538 646 588 q 694 420 694 488 l 694 92 l 750 92 q 783 82 773 92 q 793 46 793 71 q 783 11 793 21 q 750 0 773 0 l 530 0 q 497 11 507 0 q 488 46 488 21 q 497 82 488 71 q 530 92 507 92 l 593 92 l 593 410 q 565 506 593 471 q 483 541 537 541 q 375 508 425 541 q 296 416 326 475 q 266 286 266 358 l 266 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 109 0 q 76 11 85 0 q 66 46 66 21 q 76 82 66 71 q 109 92 85 92 l 164 92 l 164 534 l 95 534 q 62 545 72 534 q 52 581 52 555 q 62 616 52 606 q 95 627 72 627 l 216 627 q 249 616 239 627 q 259 581 259 606 l 259 499 q 364 605 304 568 q 493 642 424 642 z "},o:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 z "},p:{ha:833,x_min:25,x_max:747,o:"m 454 642 q 604 602 538 642 q 709 488 671 562 q 747 313 747 414 q 709 139 747 213 q 604 25 671 64 q 454 -15 538 -15 q 239 97 326 -15 l 239 -171 l 355 -171 q 388 -181 378 -171 q 398 -217 398 -192 q 388 -253 398 -242 q 355 -263 378 -263 l 68 -263 q 35 -253 45 -263 q 25 -217 25 -242 q 35 -181 25 -192 q 68 -171 45 -171 l 137 -171 l 137 534 l 81 534 q 48 545 58 534 q 39 581 39 555 q 48 616 39 606 q 81 627 58 627 l 189 627 q 222 616 212 627 q 232 581 232 606 l 232 526 q 331 612 275 582 q 454 642 387 642 m 447 541 q 339 514 387 541 q 266 435 292 487 q 239 313 239 384 q 266 191 239 243 q 339 113 292 140 q 447 85 387 85 q 551 114 507 85 q 617 195 594 143 q 640 313 640 246 q 617 432 640 380 q 551 512 594 484 q 447 541 507 541 z "},q:{ha:833,x_min:86,x_max:808,o:"m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -171 l 765 -171 q 798 -181 788 -171 q 808 -217 808 -192 q 798 -253 808 -242 q 765 -263 788 -263 l 477 -263 q 445 -253 454 -263 q 435 -217 435 -242 q 445 -181 435 -192 q 477 -171 454 -171 l 594 -171 l 594 97 q 379 -15 507 -15 q 229 25 295 -15 q 124 139 162 64 q 86 313 86 213 q 124 488 86 414 q 229 602 162 562 q 379 642 295 642 m 386 541 q 282 512 326 541 q 216 432 239 484 q 193 313 193 380 q 216 195 193 246 q 282 114 239 143 q 386 85 326 85 q 493 113 446 85 q 567 191 541 140 q 594 313 594 243 q 567 435 594 384 q 493 514 541 487 q 386 541 446 541 z "},r:{ha:833,x_min:100,x_max:750,o:"m 624 642 q 723 614 677 642 q 750 572 750 598 q 744 544 750 560 q 705 505 730 505 q 686 511 694 505 q 614 529 652 529 q 492 487 553 529 q 390 374 430 444 q 351 224 351 303 l 351 92 l 579 92 q 612 82 602 92 q 622 46 622 71 q 612 11 622 21 q 579 0 602 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 249 92 l 249 534 l 163 534 q 130 545 140 534 q 120 581 120 555 q 130 616 120 606 q 163 627 140 627 l 301 627 q 334 616 324 627 q 344 581 344 606 l 344 444 q 422 548 376 503 q 521 617 469 593 q 624 642 573 642 z "},s:{ha:833,x_min:121,x_max:712,o:"m 630 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 q 681 81 712 127 q 591 10 650 35 q 449 -15 532 -15 q 320 5 376 -15 q 223 67 264 26 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363
5506180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 z "},t:{ha:833,x_min:79,x_max:743,o:"m 311 820 q 350 810 338 820 q 361 776 361 800 l 361 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 361 480 l 361 233 q 388 120 361 156 q 481 84 415 84 q 577 102 527 84 q 674 151 627 121 q 695 158 684 158 q 734 127 718 158 q 743 96 743 109 q 721 61 743 75 q 603 6 668 28 q 481 -15 538 -15 q 313 45 366 -15 q 260 224 260 105 l 260 480 l 122 480 q 89 491 99 480 q 79 526 79 501 q 89 562 79 551 q 122 572 99 572 l 260 572 l 260 776 q 271 810 260 800 q 311 820 283 820 z "},u:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 z "},v:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 713 534 l 494 29 q 466 -4 485 6 q 414 -15 448 -15 q 364 -4 382 -15 q 336 29 346 6 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 415 92 l 602 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 z "},w:{ha:833,x_min:-7,x_max:840,o:"m 797 627 q 830 616 820 627 q 840 581 840 606 q 830 545 840 555 q 797 534 820 534 l 781 534 l 647 29 q 627 -5 640 5 q 588 -15 614 -15 q 542 -4 559 -15 q 517 29 526 6 l 414 323 l 309 29 q 283 -4 300 6 q 237 -15 266 -15 q 198 -5 211 -15 q 179 29 185 5 l 48 534 l 36 534 q 3 545 13 534 q -7 581 -7 555 q 3 616 -7 606 q 36 627 13 627 l 235 627 q 268 616 258 627 q 278 581 278 606 q 268 545 278 555 q 235 534 258 534 l 152 534 l 250 140 l 363 454 q 380 477 368 469 q 414 486 393 486 q 467 459 457 486 l 579 140 l 680 534 l 611 534 q 578 545 588 534 q 568 581 568 555 q 578 616 568 606 q 611 627 588 627 l 797 627 z "},x:{ha:833,x_min:47,x_max:785,o:"m 736 627 q 769 616 759 627 q 779 581 779 606 q 769 545 779 555 q 736 534 759 534 l 692 534 l 490 322 l 708 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 509 0 q 476 11 486 0 q 467 46 467 21 q 476 82 467 71 q 509 92 486 92 l 574 92 l 412 267 l 250 92 l 303 92 q 336 82 326 92 q 346 46 346 71 q 336 11 346 21 q 303 0 326 0 l 90 0 q 57 11 67 0 q 47 46 47 21 q 57 82 47 71 q 90 92 67 92 l 124 92 l 345 323 l 145 534 l 97 534 q 64 545 74 534 q 54 581 54 555 q 64 616 54 606 q 97 627 74 627 l 330 627 q 363 616 353 627 q 373 581 373 606 q 363 545 373 555 q 330 534 353 534 l 279 534 l 422 378 l 567 534 l 530 534 q 497 545 507 534 q 487 581 487 555 q 497 616 487 606 q 530 627 507 627 l 736 627 z "},y:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 714 534 l 437 -34 q 351 -176 393 -124 q 256 -251 309 -227 q 128 -278 203 -275 q 92 -266 104 -279 q 79 -222 79 -254 q 115 -176 79 -178 q 218 -154 180 -172 q 289 -91 256 -136 q 368 47 321 -47 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 421 153 l 604 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 z "},z:{ha:833,x_min:121,x_max:712,o:"m 663 627 q 695 616 686 627 q 705 581 705 606 q 695 549 705 561 l 281 92 l 610 92 l 610 209 q 622 243 610 233 q 661 253 633 253 q 701 243 689 253 q 712 209 712 233 l 712 46 q 702 11 712 21 q 669 0 692 0 l 163 0 q 131 11 140 0 q 121 46 121 21 q 130 77 121 66 l 545 534 l 236 534 l 236 433 q 224 399 236 410 q 185 389 213 389 q 146 399 157 389 q 134 433 134 410 l 134 581 q 144 616 134 606 q 177 627 154 627 l 663 627 z "},"{":{ha:833,x_min:120,x_max:671,o:"m 629 930 q 662 919 652 930 q 671 882 671 908 q 662 844 671 855 q 629 833 652 833 q 516 813 557 833 q 458 752 475 793 q 444 642 441 710 l 446 593 q 412 459 450 512 q 288 370 374 406 l 288 363 q 412 290 374 338 q 450 167 450 241 q 450 144 450 152 l 444 62 q 444 37 444 54 q 488 -89 444 -50 q 629 -128 532 -128 q 662 -139 652 -128 q 671 -177 671 -151 q 662 -215 671 -203 q 629 -226 652 -226 q 417 -165 492 -226 q 341 18 341 -104 q 342 54 341 42 l 350 138 q 351 165 351 157 q 306 280 351 241 q 163 318 260 318 q 130 329 140 318 q 120 367 120 340 q 130 405 120 393 q 163 416 140 416 q 302 458 257 416 q 347 580 347 501 q 346 600 347 593 l 342 650 q 341 680 341 671 q 416 868 341 805 q 629 930 491 930 z "},"|":{ha:833,x_min:366,x_max:467,o:"m 416 945 q 456 935 444 945 q 467 901 467 925 l 467 -197 q 456 -231 467 -220 q 416 -241 444 -241 q 37
55067 -231 389 -241 q 366 -197 366 -220 l 366 901 q 377 935 366 925 q 416 945 389 945 z "},"}":{ha:833,x_min:161,x_max:713,o:"m 204 930 q 417 868 342 930 q 492 680 492 805 q 490 650 492 671 l 487 600 q 486 580 486 593 q 531 458 486 501 q 670 416 576 416 q 703 405 693 416 q 713 367 713 393 q 703 329 713 340 q 670 318 693 318 q 527 280 572 318 q 481 165 481 241 q 483 138 481 157 l 490 54 q 492 18 492 42 q 416 -165 492 -104 q 204 -226 340 -226 q 171 -215 181 -226 q 161 -177 161 -203 q 171 -139 161 -151 q 204 -128 181 -128 q 345 -89 300 -128 q 389 37 389 -50 q 389 62 389 54 l 383 144 q 382 167 382 152 q 421 290 382 241 q 545 363 459 338 l 545 370 q 421 459 458 406 q 387 593 383 512 l 389 642 q 375 752 391 710 q 317 813 358 793 q 204 833 276 833 q 171 844 181 833 q 161 882 161 855 q 171 919 161 908 q 204 930 181 930 z "},"~":{ha:833,x_min:102,x_max:731,o:"m 283 498 q 357 484 323 498 q 435 443 391 470 q 498 409 474 420 q 549 398 523 398 q 654 455 607 398 q 680 468 665 468 q 709 456 695 468 q 731 421 731 440 q 726 404 731 412 q 648 322 694 353 q 549 291 602 291 q 476 305 510 291 q 397 347 442 319 q 334 380 359 369 q 283 391 309 391 q 178 334 226 391 q 153 321 168 321 q 123 333 138 321 q 102 368 102 349 q 106 385 102 378 q 184 468 138 437 q 283 498 231 498 z "},"¡":{ha:833,x_min:332,x_max:501,o:"m 416 444 q 352 453 372 444 q 332 486 332 463 l 332 591 q 352 624 332 614 q 416 633 372 633 q 481 624 461 633 q 501 591 501 614 l 501 486 q 481 453 501 463 q 416 444 461 444 m 372 -234 q 350 -226 357 -234 q 345 -200 343 -218 l 378 279 q 389 303 379 295 q 416 312 399 312 q 445 303 434 312 q 456 279 455 295 l 488 -200 q 483 -226 490 -218 q 460 -234 476 -234 l 372 -234 z "},"¢":{ha:833,x_min:86,x_max:714,o:"m 704 239 q 714 206 714 222 q 692 167 714 182 q 588 111 648 133 q 464 83 528 90 l 464 -41 q 453 -74 464 -64 q 416 -85 441 -85 q 380 -74 391 -85 q 369 -41 369 -64 l 369 83 q 219 136 283 92 q 121 251 155 180 q 86 408 86 322 q 121 565 86 494 q 221 680 157 635 q 369 734 285 724 l 369 846 q 380 879 369 869 q 416 890 391 890 q 453 879 441 890 q 464 846 464 869 l 464 732 q 545 704 508 725 q 610 652 583 684 l 610 692 q 621 726 610 716 q 661 736 633 736 q 700 726 688 736 q 711 692 711 716 l 711 496 q 700 462 711 472 q 661 452 688 452 q 621 462 633 452 q 610 496 610 472 q 572 588 610 551 q 464 633 534 625 l 464 184 q 558 208 513 190 q 641 256 603 227 q 667 267 655 267 q 704 239 687 267 m 193 408 q 215 303 193 351 q 276 224 237 255 q 369 184 316 193 l 369 631 q 277 589 317 621 q 215 511 237 558 q 193 408
5506193 465 z "},"£":{ha:833,x_min:138,x_max:699,o:"m 419 820 q 536 801 480 820 q 638 749 591 783 q 652 713 652 739 l 652 627 q 641 593 652 603 q 602 583 629 583 q 562 593 574 583 q 551 627 551 603 l 551 688 q 418 720 498 720 q 353 704 381 720 q 309 660 324 688 q 294 600 294 633 q 304 545 294 571 q 334 479 314 518 q 363 420 351 449 l 573 420 q 606 410 596 420 q 616 374 616 399 q 606 339 616 349 q 573 328 596 328 l 385 328 q 385 304 385 320 q 289 90 385 185 q 382 106 336 106 q 423 103 404 106 q 469 94 441 100 q 535 83 511 83 q 637 121 585 83 q 650 125 644 125 q 670 119 660 125 q 688 99 680 112 q 699 67 699 83 q 695 51 699 58 q 685 38 692 43 q 611 -4 646 9 q 545 -16 577 -16 q 509 -13 526 -16 q 463 -4 492 -10 q 406 7 429 3 q 358 10 384 10 q 208 -23 288 10 q 197 -25 202 -25 q 155 0 175 -25 q 138 41 138 22 q 146 62 138 54 q 252 184 221 131 q 283 295 283 237 q 281 328 283 311 l 185 328 q 152 339 162 328 q 142 374 142 349 q 152 410 142 399 q 185 420 162 420 l 250 420 l 237 444 q 201 527 213 494 q 189 600 189 560 q 217 712 189 662 q 299 791 246 762 q 419 820 351 820 z "},"¤":{ha:833,x_min:75,x_max:758,o:"m 742 152 q 758 122 758 136 q 738 87 758 106 q 703 67 718 67 q 673 83 688 67 l 576 180 q 416 134 506 134 q 257 180 327 134 l 160 83 q 130 67 144 67 q 95 87 115 67 q 75 122 75 106 q 91 152 75 136 l 187 248 q 138 408 138 317 q 187 568 138 499 l 91 665 q 75 694 75 680 q 95 730 75 710 q 130 749 115 749 q 160 734 144 749 l 257 637 q 416 682 327 682 q 576 637 506 682 l 673 734 q 703 749 688 749 q 738 730 718 749 q 758 694 758 710 q 742 665 758 680 l 646 568 q 694 408 694 499 q 646 248 694 317 l 742 152 m 239 408 q 261 317 239 357 q 324 253 283 276 q 416 231 364 231 q 509 253 469 231 q 572 317 549 276 q 594 408 594 357 q 572 500 594 459 q 509 563 549 541 q 416 586 469 586 q 324 563 364 586 q 261 500 283 541 q 239 408 239 459 z "},"¥":{ha:833,x_min:41,x_max:792,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 606 556 l 688 556 q 721 546 711 556 q 731 510 731 535 q 721 474 731 485 q 688 464 711 464 l 548 464 l 475 346 l 675 346 q 708 335 698 346 q 718 300 718 325 q 708 264 718 275 q 675 254 698 254 l 467 254 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 254 l 158 254 q 125 264 135 254 q 115 300 115 275 q 125 335 115 325 q 158 346 135 346 l 358 346 l 285 464 l 144 464 q 112 474 121 464 q 102 510 102 485 q 112 546 102 535 q 144 556 121 556 l 228 556 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 z "},"¦":{ha:833,x_min:366,x_max:467,o:"m 416 945 q 456 935 444 945 q 467 901 467 925 l 467 495 q 456 461 467 471 q 416 451 444 451 q 377 461 389 451 q 366 495 366 471 l 366 901 q 377 935 366 925 q 416 945 389 945 m 416 254 q 456 243 444 254 q 467 210 467 233 l 467 -197 q 456 -231 467 -220 q 416 -241 444 -241 q 377 -231 389 -241 q 366 -197 366 -220 l 366 210 q 377 243 366 233 q 416 254 389 254 z "},"§":{ha:833,x_min:121,x_max:711,o:"m 627 805 q 660 794 650 805 q 670 759 670 784 l 670 625 q 659 591 670 602 q 619 581 647 581 q 580 591 591 581 q 568 625 568 602 l 568 713 l 406 713 q 311 640 311 713 q 333 575 311 604 q 399 519 355 547 l 598 396 q 683 320 654 361 q 711 222 711 279 q 688 145 711 179 q 618 77 665 111 q 629 7 629 43 q 608 -78 629 -41 q 544 -135 586 -115 q 440 -156 501 -156 l 205 -156 q 173 -145 182 -156 q 163 -110 163 -135 l 163 37 q 174 71 163 61 q 214 81 186 81 q 253 71 241 81 q 264 37 264 61 l 264 -64 l 427 -64 q 522 9 522 -64 q 500 74 522 45 q 434 130 478 102 l 235 253 q 150 329 178 288 q 121 427 121 370 q 144 504 121 470 q 215 572 167 537 q 203 642 203 605 q 225 727 203 690 q 289 784 247 764 q 393 805 332 805 l 627 805 m 267 490 q 238 459 248 475 q 229 424 229 443 q 245 377 229 397 q 296 336 261 358 l 496 212 q 565 158 534 189 q 594 190 585 174 q 604 225 604 206 q 588 272 604 252 q 536 313 572 291 l 337 437 q 267 490 295 463 z "},"¨":{ha:833,x_min:210,x_max:623,o:"m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},"©":{ha:833,x_min:24,x_max:808,o:"m 416 820 q 619 765 530 820 q 758 614 708 709 q 808 403 808 518 q 758 192 808 288 q 618 41 708 96 q 416 -15 529 -15 q 214 41 304 -15 q 75 192 125 96 q 24 403 24 288 q 75 614 24 518 q 214 765 125 709 q 416 820 303 820 m 416 739 q 256 695 326 739 q 146 575 185 652 q 107 403 107 499 q 146 230 107 307 q 256 110 185 153 q 416 66 326 66 q 577 110 507 66 q 687 230 648 153 q 726 403 726 307 q 687 575 726 499 q 577 695 648 652 q 416 739 507 739 m 427 635 q 489 628 457 635 q 549 608 520 621 q 570 593 563
5506602 q 576 572 576 585 q 572 550 576 562 q 542 523 561 523 q 522 528 534 523 q 474 545 496 540 q 427 550 452 550 q 338 512 373 550 q 304 402 304 473 q 338 293 304 331 q 427 254 373 254 q 474 259 452 254 q 522 276 496 264 q 542 281 534 281 q 572 254 561 281 q 576 232 576 243 q 570 211 576 220 q 549 196 563 203 q 489 176 520 183 q 427 169 457 169 q 316 197 365 169 q 241 278 268 225 q 214 402 214 330 q 241 527 214 474 q 316 607 268 579 q 427 635 365 635 z "},ª:{ha:833,x_min:164,x_max:701,o:"m 422 820 q 571 775 519 820 q 622 647 622 730 l 622 446 q 630 417 622 425 q 656 408 638 408 l 667 408 q 693 398 685 408 q 701 367 701 389 q 693 337 701 346 q 667 328 685 328 l 634 328 q 573 343 600 328 q 538 389 547 359 q 347 315 451 315 q 253 333 294 315 q 188 384 212 350 q 164 466 164 418 q 222 589 164 549 q 372 629 279 629 q 530 610 461 629 l 530 644 q 504 709 530 686 q 422 732 477 732 q 337 722 382 732 q 250 694 292 712 q 237 692 243 692 q 203 722 214 692 q 199 747 199 736 q 220 779 199 770 q 318 809 265 798 q 422 820 371 820 m 379 543 q 260 468 260 543 q 284 418 260 435 q 350 400 308 400 q 530 479 450 400 l 530 526 q 379 543 456 543 z "},"¬":{ha:833,x_min:95,x_max:731,o:"m 688 573 q 721 563 711 573 q 731 527 731 552 l 731 260 q 720 226 731 236 q 680 216 708 216 q 641 226 652 216 q 629 260 629 236 l 629 481 l 138 481 q 105 491 115 481 q 95 527 95 502 q 105 563 95 552 q 138 573 115 573 l 688 573 z "},"®":{ha:833,x_min:90,x_max:743,o:"m 416 905 q 585 859 511 905 q 702 733 660 812 q 743 557 743 654 q 702 381 743 461 q 585 255 660 302 q 416 209 511 209 q 248 255 322 209 q 131 381 173 302 q 90 557 90 461 q 131 733 90 654 q 248 859 173 812 q 416 905 322 905 m 416 837 q 282 801 341 837 q 191 701 224 765 q 159 557 159 637 q 191 413 159 477 q 282 313 224 349 q 416 277 341 277 q 550 313 492 277 q 642 413 609 349 q 674 557 674 477 q 642 701 674 637 q 550 801 609 765 q 416 837 492 837 m 429 740 q 502 724 471 740 q 550 680 533 708 q 566 614 566 651 q 545 543 566 572 q 484 500 524 514 l 545 435 q 559 406 559 419 q 547 382 559 393 q 523 371 536 371 q 496 385 508 371 l 408 487 l 357 487 l 357 411 q 349 383 357 391 q 321 374 341 374 q 295 383 302 374 q 287 411 287 391 l 287 704 q 296 731 287 723 q 323 740 304 740 l 429 740 m 357 553 l 417 553 q 474 569 455 553 q 493 614 493 585 q 475 658 493 642 q 422 673 457 673 l 357 673 l 357 553 z "},"¯":{ha:833,x_min:197,x_max:636,o:"m 593 848 q 626 837 616 848 q 636 799 636 825 q 626 761 636 772 q 593 750 616 750 l 239 750 q 207 761 216 750 q 197 799 197 772 q 207 837 197 825 q 239 848 216 848 l 593 848 z "},"°":{ha:833,x_min:167,x_max:547,o:"m 357 820 q 452 794 408 820 q 521 725 496 769 q 547 630 547 682 q 521 535 547 578 q 452 466 496 491 q 357 440 408 440 q 261 466 305 440 q 192 535 218 491 q 167 630 167 578 q 192 725 167 682 q 261 794 218 769 q 357 820 305 820 m 357 728 q 308 715 330 728 q 272 679 285 702 q 258 630 258 656 q 272 581 258 604 q 308 545 285 558 q 357 532 330 532 q 406 545 383 532 q 442 581 429 558 q 455 630 455 604 q 442 679 455 656 q 406 715 429 702 q 357 728 383 728 z "},"±":{ha:833,x_min:115,x_max:718,o:"m 416 764 q 452 754 441 764 q 463 721 463 744 l 463 549 l 675 549 q 708 539 698 549 q 718 503 718 528 q 708 468 718 478 q 675 457 698 457 l 463 457 l 463 286 q 452 253 463 262 q 416 243 441 243 q 381 253 391 243 q 370 286 370 262 l 370 457 l 158 457 q 125 468 135 457 q 115 503 115 478 q 125 539 115 528 q 158 549 135 549 l 370 549 l 370 721 q 381 754 370 744 q 416 764 391 764 m 675 170 q 708 159 698 170 q 718 123 718 149 q 708 88 718 98 q 675 77 698 77 l 158 77 q 125 88 135 77 q 115 123 115 98 q 125 159 115 149 q 158 170 135 170 l 675 170 z "},"²":{ha:833,x_min:195,x_max:648,o:"m 418 905 q 521 883 477 905 q 588 823 565 862 q 611 731 611 783 q 584 636 611 679 q 500 547 557 594 l 338 412 l 557 412 l 557 465 q 568 491 557 483 q 603 500 578 500 q 638 491 627 500 q 648 465 648 483 l 648 363 q 640 337 648 346 q 614 328 631 328 l 227 328 q 195 376 195 328 q 216 420 195 403 l 441 610 q 498 671 480 644 q 516 731 516 698 q 489 794 516 770 q 412 817 462 817 q 354 810 383 817 q 302 791 326 803 l 302 721 q 292 695 302 703 q 256 686 281 686 q 221 695 232 686 q 211 721 211 703 l 211 821 q 225 849 211 839 q 317 890 265 876 q 418 905 368 905 z "},"³":{ha:833,x_min:205,x_max:628,o:"m 410 905 q 516 884 471 905 q 586 827 562 864 q 610 743 610 791 q 534 621 610 661 q 603 572 578 606 q 628 488 628 538 q 573 361 628 407 q 410 315 517 315 q 310 327 360 315 q 220 359 260 338 q 205 386 205 368 q 210 412 205 397 q 243 444 222 444 q 256 441 250 444 q 330 413 291 423 q 406 403 369 403 q 500 425 467 403 q 533 488 533 447 q 501 551 533 533 q 408 570 469 570 l 373 570 q 343 612 343 570 q 350 643 343 631 q 373 654 357 654 l 399 654 q 486 674 456 654 q 515 736 515 694 q 485 797 515 776 q 402 817 455 817 q 302 798 349 817 l 302 755 q 292 729 302 737 q 256 720 281 720 q 221 729 232 720 q 211 755 211 737 l 211 829 q 225 858 211 849 q 313 893 264 881 q 410 905 361 905 z "}
5506,"´":{ha:833,x_min:283,x_max:621,o:"m 530 951 q 555 960 542 960 q 600 932 578 960 q 621 886 621 905 q 606 859 621 868 l 352 711 q 330 704 340 704 q 299 721 314 704 q 283 756 283 739 q 294 777 283 769 l 530 951 z "},μ:{ha:833,x_min:148,x_max:692,o:"m 642 633 q 681 623 669 633 q 692 589 692 613 l 692 37 q 682 3 692 14 q 645 -7 671 -7 l 644 -7 q 607 3 617 -7 q 597 37 597 14 l 597 134 q 493 26 554 68 q 363 -15 431 -15 q 250 17 295 -15 l 250 -226 q 238 -260 250 -250 q 199 -270 227 -270 l 198 -270 q 159 -260 170 -270 q 148 -226 148 -250 l 148 589 q 159 623 148 613 q 198 633 170 633 l 199 633 q 238 623 227 633 q 250 589 250 613 l 250 216 q 280 120 250 155 q 373 85 310 85 q 475 120 425 85 q 558 213 526 155 q 590 340 590 272 l 590 589 q 601 623 590 613 q 640 633 612 633 l 642 633 z "},"¶":{ha:833,x_min:89,x_max:758,o:"m 715 805 q 748 794 738 805 q 758 759 758 784 q 748 723 758 734 q 715 713 738 713 l 669 713 l 669 -234 q 657 -268 669 -258 q 618 -278 646 -278 q 578 -268 590 -278 q 567 -234 567 -258 l 567 713 l 458 713 l 458 -234 q 447 -268 458 -258 q 408 -278 435 -278 q 368 -268 380 -278 q 357 -234 357 -258 l 357 340 q 217 371 277 343 q 122 451 156 399 q 89 572 89 503 q 124 697 89 644 q 224 777 160 749 q 372 805 288 805 l 715 805 z "},"·":{ha:833,x_min:325,x_max:508,o:"m 416 498 q 487 489 465 498 q 508 456 508 479 l 508 331 q 487 298 508 308 q 416 288 465 288 q 346 298 368 288 q 325 331 325 308 l 325 456 q 346 489 325 479 q 416 498 368 498 z "},"¸":{ha:833,x_min:238,x_max:587,o:"m 450 -77 q 553 -108 518 -76 q 587 -191 587 -140 q 545 -285 587 -250 q 421 -320 503 -320 q 332 -312 375 -320 q 254 -288 288 -304 q 238 -264 238 -281 q 243 -240 238 -254 q 275 -210 255 -210 q 283 -211 280 -210 q 348 -229 313 -222 q 414 -237 382 -237 q 469 -225 449 -237 q 488 -193 488 -214 q 470 -160 488 -171 q 410 -149 452 -149 l 383 -150 q 367 -143 373 -150 q 360 -120 360 -136 l 360 19 l 450 19 l 450 -77 z "},"¹":{ha:833,x_min:209,x_max:642,o:"m 609 412 q 634 402 626 412 q 642 370 642 393 q 634 338 642 348 q 609 328 626 328 l 248 328 q 214 370 214 328 q 222 402 214 393 q 248 412 231 412 l 386 412 l 386 786 l 271 726 q 250 720 259 720 q 219 743 233 720 q 209 772 209 762 q 227 798 209 789 l 431 901 q 449 905 442 905 q 469 898 461 905 q 477 876 477 890 l 477 412 l 609 412 z "},º:{ha:833,x_min:159,x_max:673,o:"m 416 820 q 548 787 489 820 q 640 697 606 755 q 673 568 673 640 q 640 438 673 495 q 548 348 606 380 q 416 315 489 315 q 285 348 344 315 q 193 438 227 380 q 159 568 159 495 q 193 697 159 640 q 285 787 227 755 q 416 820 344 820 m 416 730 q 332 709 369 730 q 275 651 295 688 q 254 568 254 614 q 275 484 254 521 q 332 426 295 446 q 416 405 369 405 q 501 426 465 405 q 558 483 538 446 q 578 568 578 520 q 558 651 578 614 q 501 709 538 688 q 416 730 465 730 z "},"¼":{ha:833,x_min:-3,x_max:836,o:"m 359 499 q 352 472 359 480 q 331 463 345 463 l 29 463 q 1 499 1 463 q 29 534 1 534 l 144 534 l 144 846 l 49 796 q 31 791 39 791 q 5 810 16 791 q -3 835 -3 825 q 12 856 -3 848 l 182 942 q 197 945 189 945 q 214 939 208 945 q 221 922 221 933 l 221 534 l 331 534 q 352 526 345 534 q 359 499 359 517 m 748 553 q 758 528 758 541 q 748 509 758 515 l 125 129 q 115 126 121 126 q 85 145 99 126 q 75 171 75 159 q 85 189 75 183 l 707 570 q 718 572 712 572 q 748 553 734 572 m 809 52 q 829 43 823 52 q 836 16 836 35 q 829 -11 836 -3 q 809 -20 823 -20 l 747 -20 l 747 -123 q 739 -144 747 -137 q 709 -151 730 -151 q 680 -144 689 -151 q 671 -123 671 -137 l 671 -20 l 458 -20 q 436 -8 444 -20 q 427 24 427 3 q 429 41 427 35 q 437 55 431 47 l 652 311 q 672 330 662 323 q 697 336 683 336 q 732 327 717 336 q 747 304 747 317 l 747 52 l 809 52 m 671 52 l 674 232 l 524 52 l 671 52 z "},"½":{ha:833,x_min:-3,x_max:832,o:"m 359 499 q 352 472 359 480 q 331 463 345 463 l 29 463 q 1 499 1 463 q 29 534 1 534 l 144 534 l 144 846 l 49 796 q 31 791 39 791 q 5 810 16 791 q -3 835 -3 825 q 12 856 -3 848 l 182 942 q 197 945 189 945 q 214 939 208 945 q 221 922 221 933 l 221 534 l 331 534 q 352 526 345 534 q 359 499 359 517 m 748 587 q 758 562 758 575 q 748 543 758 549 l 125 163 q 115 160 121 160 q 85 179 99 160 q 75 205 75 193 q 85 223 75 217 l 707 604 q 718 606 712 606 q 748 587 734 606 m 794 -3 q 823 -10 814 -3 q 832 -31 832 -17 l 832 -116 q 804 -146 832 -146 l 481 -146 q 454 -106 454 -146 q 471 -68 454 -84 l 660 90 q 707 140 692 117 q 722 191 722
5506163 q 699 243 722 224 q 635 262 677 262 q 587 257 610 262 q 543 241 563 251 l 543 182 q 534 160 543 168 q 505 153 526 153 q 476 160 485 153 q 467 182 467 168 l 467 265 q 479 289 467 281 q 555 323 512 311 q 640 336 598 336 q 758 296 715 336 q 801 191 801 257 q 779 111 801 147 q 709 37 756 75 l 574 -75 l 756 -75 l 756 -31 q 765 -10 756 -17 q 794 -3 774 -3 z "},"¾":{ha:833,x_min:14,x_max:836,o:"m 184 946 q 274 929 236 946 q 332 881 311 912 q 352 811 352 850 q 288 709 352 743 q 346 668 326 696 q 367 597 367 640 q 321 492 367 530 q 185 454 275 454 q 102 463 144 454 q 26 491 60 473 q 14 513 14 498 q 18 534 14 522 q 46 561 28 561 q 57 559 51 561 q 118 535 85 544 q 181 527 151 527 q 260 546 232 527 q 288 598 288 564 q 261 651 288 635 q 184 666 234 666 l 154 666 q 130 701 130 666 q 136 727 130 718 q 154 737 142 737 l 176 737 q 248 753 224 737 q 273 806 273 770 q 248 856 273 839 q 178 873 222 873 q 95 857 133 873 l 95 821 q 86 799 95 806 q 57 792 77 792 q 28 799 37 792 q 19 821 19 806 l 19 883 q 31 907 19 901 q 104 936 63 926 q 184 946 144 946 m 707 576 q 718 579 712 579 q 748 560 734 579 q 758 534 758 548 q 748 516 758 522 l 125 136 q 115 133 121 133 q 85 152 99 133 q 75 178 75 165 q 85 196 75 190 l 707 576 m 697 336 q 732 327 717 336 q 747 304 747 317 l 747 52 l 809 52 q 829 43 823 52 q 836 16 836 35 q 829 -11 836 -3 q 809 -20 823 -20 l 747 -20 l 747 -123 q 739 -144 747 -137 q 709 -151 730 -151 q 680 -144 689 -151 q 671 -123 671 -137 l 671 -20 l 458 -20 q 436 -8 444 -20 q 427 24 427 3 q 429 41 427 35 q 437 55 431 47 l 652 311 q 672 330 662 323 q 697 336 683 336 m 524 52 l 671 52 l 674 232 l 524 52 z "},"¿":{ha:833,x_min:178,x_max:661,o:"m 444 471 q 384 480 402 471 q 366 513 366 490 l 366 591 q 384 624 366 614 q 444 633 402 633 q 503 624 485 633 q 522 591 522 614 l 522 513 q 503 480 522 490 q 444 471 485 471 m 414 -234 q 287 -207 340 -234 q 206 -133 234 -180 q 178 -22 178 -85 q 201 78 178 37 q 270 151 224 120 q 390 212 316 182 l 399 310 q 444 342 402 342 q 488 310 486 342 l 497 176 q 493 154 498 162 q 477 141 488 146 l 430 122 q 344 80 376 100 q 297 36 313 60 q 282 -22 282 12 q 316 -103 282 -73 q 413 -134 351 -134 q 559 -109 499 -134 l 559 -48 q 570 -14 559 -24 q 610 -4 582 -4 q 649 -14 637 -4 q 661 -48 661 -24 l 661 -134 q 656 -158 661 -149 q 644 -172 652 -167 q 414 -234 541 -234 z "}
5506,Ã:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 513 960 q 524 939 524 952 q 508 904 524 922 q 477 887 493 887 q 455 894 467 887 l 201 1042 q 186 1069 186 1051 q 207 1115 186 1088 q 252 1143 229 1143 q 277 1134 265 1143 l 513 960 z "},Ã:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 488 1134 q 513 1143 500 1143 q 558 1115 536 1143 q 578 1069 578 1088 q 564 1042 578 1051 l 310 894 q 288 887 298 887 q 257 904 272 887 q 241 939 241 922 q 252 960 241 952 l 488 1134 z "}
5506,Ã:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 403 1130 q 442 1116 427 1130 l 608 958 q 619 936 619 948 q 604 904 619 922 q 574 888 589 888 q 553 896 563 888 l 403 1013 l 253 896 q 232 888 243 888 q 202 904 216 888 q 186 936 186 922 q 197 958 186 948 l 363 1116 q 403 1130 378 1130 z "},Ã:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 308 1075 q 351 1068 332 1075 q 397 1050 370 1062 q 437 1033 421 1038 q 471 1027 454 1027 q 514 1039 493 1027 q 557 1074 534 1050 q 576 1082 565 1082 q 608 1065 593 1082 q 623 1034 623 1050 q 613 1010 623 1021 q 544 947 581 968 q 471 926 507 926 q 428 933 447 926 q 381 951 408 939 q 341 968 357 963 q 307 974 325 974 q 265 962 286 974 q 222 928 244 951 q 202 920 214 920 q 170 937 185 920 q 156 967 156 951 q 165 991 156 980 q 235 1054 198 1034 q 308 1075 272 1075 z "}
5506,Ã:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 260 1107 q 311 1098 298 1107 q 325 1063 325 1088 l 325 975 q 311 941 325 951 q 260 931 298 931 q 210 941 223 931 q 196 975 196 951 l 196 1063 q 210 1098 196 1088 q 260 1107 223 1107 m 545 1107 q 596 1098 583 1107 q 610 1063 610 1088 l 610 975 q 596 941 610 951 q 545 931 583 931 q 494 941 508 931 q 481 975 481 951 l 481 1063 q 494 1098 481 1088 q 545 1107 508 1107 z "},Ã
:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 389 1239 q 474 1217 436 1239 q 534 1157 513 1196 q 556 1072 556 1119 q 534 987 556 1025 q 474 927 513 949 q 389 905 436 905 q 304 927 342 905 q 244 987 266 949 q 222 1072 222 1025 q 244 1157 222 1119 q 304 1217 266 1196 q 389 1239 342 1239 m 389 1149 q 333 1128 354 1149 q 312 1072 312 1107 q 333 1016 312 1037 q 389 995 354 995 q 446 1016 425 995 q 467 1072 467 1037 q 446 1128 467 1107 q 389 1149 425 1149 z "},Ã:{ha:833,x_min:0,x_max:772,o:"m 721 805 q 754 794 744 805 q 764 759 764 784 l 764 587 q 752 553 764 563 q 713 543 741 543 q 673 553 685 543 q 662 587 662 563 l 662 713 l 486 713 l 486 465 l 616 465 q 649 454 639 465 q 659 418 659 444 q 649 383 659 393 q 616 372 639 372 l 486 372 l 486 92 l 670 92 l 670 248 q 682 281 670 271 q 721 292 693 292 q 760 281 749 292 q 772 248 772 271 l 772 46 q 762 11 772 21 q 729 0 752 0 l 427 0 q 394 11 404 0 q 384 46 384 21 l 384 254 l 231 254 l 182 92 l 242 92 q 275 82 265 92 q 285 46 285 71 q 275 11 285 21 q 242 0 265 0 l 43 0 q 10 11 20 0 q 0 46 0 21 q 10 82 0 71 q 43 92 20 92 l 77 92 l 267 713 l 199 713 q 166 723 176 713 q 157 759 157 734 q 166 794 157 784 q 199 805 176 805 l 721 805 m 370 713 l 259 346 l 384 346 l 384 713 l 370 713 z "},Ã:{ha:833,x_min:80,x_max:741,o:"m 729 145 q 741 109 741 125 q 720 74 741 89 q 470 -14 610 -3 l 470 -77 q 573 -108 538 -76 q 608 -191 608 -140 q 566 -285 608 -250 q 441 -320 524 -320 q 352 -312 395 -320 q 274 -288 309 -304 q 258 -264 258 -281 q 264 -240 258 -254 q 295 -210 275 -210 q 304 -211 300 -210 q 368 -229 333 -222 q 435 -237 403 -237 q 489 -225 469 -237 q 509 -193 509 -214 q 490 -160 509 -171 q 430 -149 472 -149 l 404 -150 q 387 -143 393 -150 q 380 -120 380 -136 l 380 -12 q 221 54 289 0 q 117 198 153 109 q 80 402 80 288 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 z "},Ã:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 66
55067 292 m 561 960 q 572 939 572 952 q 555 904 572 922 q 524 887 541 887 q 503 894 515 887 l 249 1042 q 234 1069 234 1051 q 254 1115 234 1088 q 300 1143 277 1143 q 325 1134 313 1143 l 561 960 z "},Ã:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 m 508 1134 q 533 1143 520 1143 q 578 1115 556 1143 q 599 1069 599 1088 q 584 1042 599 1051 l 330 894 q 309 887 318 887 q 277 904 292 887 q 261 939 261 922 q 272 960 261 952 l 508 1134 z "},Ã:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 m 437 1130 q 476 1116 461 1130 l 642 958 q 653 936 653 948 q 637 904 653 922 q 608 888 623 888 q 587 896 597 888 l 437 1013 l 287 896 q 266 888 277 888 q 236 904 250 888 q 220 936 220 922 q 231 958 220 948 l 397 1116 q 437 1130 412 1130 z "},Ã:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 m 294 1107 q 345 1098 332 1107 q 359 1063 359 1088 l 359 975 q 345 941 359 951 q 294 931 332 931 q 243 941 257 931 q 230 975 230 951 l 230 1063 q 243 1098 230 1088 q 294 1107 257 1107 m 579 1107 q 630 1098 616 1107 q 644 1063 644 1088 l 644 975 q 630 941 644 951 q 579 931 616 931 q 528 941 542 931 q 515 975 515 951 l 515 1063 q 528 1098 515 1088 q 579 1107 542 1107 z "},Ã:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 539 960 q 550 939 550 952 q 534 904 550 922 q 503 887 519 887 q 481 894 493 887 l 227 1042 q 212 1069 212 1051 q 233 1115 212 1088 q 278 1143 255 1143 q 303 1134 291 1143 l 539 960 z "},Ã:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 530 1134 q 555 1143 542 1143 q 600 1115 578 1143 q 621 1069 621 1088 q 606 1042 621 1051 l 352 894 q 330 887 340 887 q 299 904 314 887 q 283 939 283 922 q 294 960 283 952 l 530 1134 z "},Ã:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 416 1130 q 456 1116 441 1130 l 622 958 q 633 936 633 948 q 617 904 633 922 q 587 888 603 888 q 566 896 576 888 l 416 1013 l 267 896 q 245 888 256 888 q 216 904 230 888 q 200 936 200 922 q 211 958 200 948 l 377 1116 q 416 1130 392 1130 z "},Ã:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 274 1107 q 325 1098 311 1107 q 338 1063 338 1088 l 338 975 q 325 941 338 951 q 274 931 311 931 q 223 941 237 931 q 210 975 210 951 l 210 1063 q 223 1098 210 1088 q 274 1107 237 1107 m 559 1107 q 610 1098 596 1107 q 623 1063 623 1088 l 623 975 q 610 941 623 951 q 559 931 596 931 q 508 941 522 931 q 494 975 494 951 l 494 1063 q 508 1098 494 1088 q 559 1107 522 1107 z "},Ã:{ha:833,x_min:34,x_max:773,o:"m 416 805 q 604 756 523 805 q 729 61
55067 684 708 q 773 402 773 526 q 729 188 773 279 q 604 48 684 97 q 416 0 523 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 369 l 77 369 q 44 379 54 369 q 34 415 34 390 q 44 451 34 440 q 77 461 54 461 l 173 461 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 416 805 m 401 92 q 541 128 481 92 q 633 233 601 163 q 666 402 666 302 q 633 571 666 502 q 541 677 601 641 q 401 713 481 713 l 275 713 l 275 461 l 404 461 q 436 451 427 461 q 446 415 446 440 q 436 379 446 390 q 404 369 427 369 l 275 369 l 275 92 l 401 92 z "},Ã:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 25 q 691 -4 704 7 q 653 -15 679 -15 q 596 22 617 -15 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 335 1075 q 378 1068 359 1075 q 425 1050 397 1062 q 465 1033 448 1038 q 498 1027 481 1027 q 541 1039 520 1027 q 584 1074 562 1050 q 604 1082 592 1082 q 635 1065 621 1082 q 650 1034 650 1050 q 640 1010 650 1021 q 571 947 608 968 q 498 926 534 926 q 455 933 474 926 q 408 951 435 939 q 368 968 385 963 q 334 974 352 974 q 292 962 313 974 q 249 928 271 951 q 229 920 241 920 q 197 937 212 920 q 183 967 183 951 q 193 991 183 980 q 262 1054 225 1034 q 335 1075 299 1075 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 554 960 q 565 939 565 952 q 549 904 565 922 q 517 887 534 887 q 496 894 508 887 l 242 1042 q 227 1069 227 1051 q 248 1115 227 1088 q 293 1143 270 1143 q 318 1134 306 1143 l 554 960 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 515 1134 q 540 1143 527 1143 q 585 1115 563 1143 q 606 1069 606 1088 q 591 1042 606 1051 l 337 894 q 315 887 325 887 q 284 904 299 887 q 268 939 268 922 q 279 960 268 952 l 515 1134 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 416 1130 q 456 1116 441 1130 l 622 958 q 633 936 633 948 q 617 904 633 922 q 587 888 603 888 q 566 896 576 888 l 416 1013 l 267 896 q 245 888 256 888 q 216 904 230 888 q 200 936 200 922 q 211 958 200 948 l 377 1116 q 416 1130 392 1130 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 335 1075 q 378 1068 359
55061075 q 425 1050 397 1062 q 465 1033 448 1038 q 498 1027 481 1027 q 541 1039 520 1027 q 584 1074 562 1050 q 604 1082 592 1082 q 635 1065 621 1082 q 650 1034 650 1050 q 640 1010 650 1021 q 571 947 608 968 q 498 926 534 926 q 455 933 474 926 q 408 951 435 939 q 368 968 385 963 q 334 974 352 974 q 292 962 313 974 q 249 928 271 951 q 229 920 241 920 q 197 937 212 920 q 183 967 183 951 q 193 991 183 980 q 262 1054 225 1034 q 335 1075 299 1075 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 274 1107 q 325 1098 311 1107 q 338 1063 338 1088 l 338 975 q 325 941 338 951 q 274 931 311 931 q 223 941 237 931 q 210 975 210 951 l 210 1063 q 223 1098 210 1088 q 274 1107 237 1107 m 559 1107 q 610 1098 596 1107 q 623 1063 623 1088 l 623 975 q 610 941 623 951 q 559 931 596 931 q 508 941 522 931 q 494 975 494 951 l 494 1063 q 508 1098 494 1088 q 559 1107 522 1107 z "},"Ã":{ha:833,x_min:158,x_max:675,o:"m 593 637 q 623 653 610 653 q 656 635 638 653 q 675 602 675 616 q 659 572 675 588 l 481 395 l 659 218 q 675 188 675 201 q 656 155 675 173 q 623 136 638 136 q 593 153 610 136 l 416 330 l 239 153 q 210 136 223 136 q 176 155 195 136 q 158 188 158 173 q 174 218 158 201 l 351 395 l 174 572 q 158 602 158 588 q 176 635 158 616 q 210 653 195 653 q 239 637 223 653 l 416 460 l 593 637 z "},Ã:{ha:833,x_min:60,x_max:773,o:"m 726 849 q 750 814 750 832 q 740 786 750 802 l 680 699 q 749 569 725 644 q 773 402 773 493 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 223 41 307 -15 l 171 -34 q 139 -56 155 -56 q 107 -43 127 -56 q 82 -7 82 -26 q 93 20 82 4 l 153 106 q 84 236 108 161 q 60 402 60 312 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 q 609 764 526 820 l 662 840 q 694 862 677 862 q 726 849 707 862 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 216 198 167 279 l 550 680 q 416 720 492 720 m 282 126 q 416 85 340 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 616 608 666 526 l 282 126 z "},Ã:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 539 960 q 550 939 550 952 q 534 904 550 922 q 503 887 519 887 q 481 894 493 887 l 227 1042 q 212 1069 212 1051 q 233 1115 212 1088 q 278 1143 255 1143 q 303 1134 291 1143 l 539 960 z "},Ã:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 530 1134 q 555 1143 542 1143 q 600 1115 578 1143 q 621 1069 621 1088 q 606 1042 621 1051 l 352 894 q 330 887 340 887 q 299 904 314 887 q 283 939 283 922 q 294 960 283 952 l 530 1134 z "},Ã:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 416 1130 q 456 1116 441 1130 l 622 958 q 633 936 633 948 q 617 904 633 922 q 587 888 603 888 q 566 896 576 888 l 416 1013 l 267 896 q 245 888 256 888 q 216 904 230 888 q 200 936 200 922 q 211 958 200 948 l 377 1116 q 416 1130 392 1130 z "},Ã:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 274 1107 q 325 1098 311 1107 q 338 1063 338 1088 l 338 975 q 325 941 338 951 q 274 931 311 931 q 223 941 237 931 q 210 975 210 951 l 210 1063 q 223 1098 210 1088 q 274 1107 237 1107 m 559 1107 q 610 1098 596 1107 q 623 1063 623 1088 l 623 975 q 610 941 623 951 q 559 931 596 931 q 508 941 522 931 q 494 975 494 951 l 494 1063 q 508 1098 494 1088 q 559 1107 522 1107 z "},Ã:{ha:833,x_min:41,x_max:792,o:"m 536 1134 q 562 1143 549 1143 q 607 1115 585 1143 q 627 1069 627 1088 q 612 1042 627 1051 l 359 894 q 337 887 347 887 q 306 904 321 887 q 290 939 290 922 q 300 960 290 952 l 536 1134 m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 467 334 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 334 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 z "},Ã:{ha:833,x_min:75,x_max:727,o:"m 471 805 q 504 794 494 805 q 514 759 514 784 q 504 723 514 734 q 471 713 494 713 l 325 713 l 325 629 l 481 629 q 616 600 561 629 q 699 520 671 571 q 727 406 727 470 q 699 292 727 342 q 616 214 671 242 q 481 185 561 185 l 325 185 l 325 92 l 471 92 q 504 82 494 92 q 514 46 514 71 q 504 11 514 21 q 471 0 494 0 l 117 0 q 84 11 94 0 q 75 46 75 21 q 84 82 75 71 q 11
55067 92 94 92 l 223 92 l 223 713 l 117 713 q 84 723 94 713 q 75 759 75 734 q 84 794 75 784 q 117 805 94 805 l 471 805 m 325 277 l 467 277 q 581 311 541 277 q 620 406 620 345 q 582 501 620 465 q 467 536 544 536 l 325 536 l 325 277 z "},Ã:{ha:833,x_min:27,x_max:713,o:"m 418 893 q 558 862 500 893 q 645 778 616 831 q 674 659 674 725 q 643 551 674 597 q 556 476 612 505 q 671 388 629 448 q 713 244 713 327 q 678 105 713 164 q 581 16 644 47 q 437 -15 519 -15 q 392 -4 403 -15 q 380 37 380 7 q 391 74 380 62 q 424 85 401 85 q 557 127 509 85 q 606 245 606 168 q 559 374 606 328 q 432 420 512 420 q 399 431 409 420 q 389 467 389 442 q 399 502 389 491 q 432 515 409 513 q 533 559 498 522 q 568 659 568 597 q 529 759 568 722 q 415 795 489 795 q 307 751 346 795 q 268 632 268 707 l 268 46 q 258 11 268 21 q 225 0 248 0 l 70 0 q 37 11 47 0 q 27 46 27 21 q 37 82 27 71 q 70 92 47 92 l 166 92 l 166 640 q 196 771 166 714 q 283 861 227 829 q 418 893 340 893 z "},à :{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 581 777 q 592 756 592 769 q 576 721 592 739 q 545 704 561 704 q 523 711 535 704 l 269 859 q 254 886 254 868 q 275 932 254 905 q 320 960 297 960 q 345 951 333 960 l 581 777 z "},á:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 488 951 q 513 960 500 960 q 558 932 536 960 q 578 886 578 905 q 564 859 578 868 l 310 711 q 288 704 298 704 q 257 721 272 704 q 241 756 241 739 q 252 777 241 769 l 488 951 z "},â:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},ã:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 335 892 q 378 885 359 892 q 425 867 397 879 q 465 850 448 855 q 498 844 481 844 q 541 856 520 844 q 584 890 562 867 q 604 899 592 899 q 635 882 621 899 q 650 851 650 867 q 640 827 650 838 q 571 764 608 785 q 498 743 534 743 q 455 750 474 743 q 408 768 435 756 q 368 785 385 780 q 334 791 352 791 q 292 779 313 791 q 249 745 271 768 q 229 736 241 736 q 197 753 212 736 q 183 784 183 768 q 193 808 183 797 q 262 871 225 850 q 335 892 299 892 z "},ä:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},Ã¥:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 421 1056 q 506 1034 468 1056 q 566 974 545 1013 q 588 889 588 936 q 566 804 588 842 q 506 744 545 766 q 421 722 468 722 q 336 744 374 722 q 276 804 298 766 q 254 889 254 842 q 276 974 254 936 q 336 1034 298 1013 q 421 1056 374 1056 m 421 966 q 365 945 386 966 q 344 889 344 924 q 365 833 344 854 q 421 812 386 812 q 477 833 456 812 q 498 889 498 854 q 477 945 498 924 q 421 966 456 966 z "},æ:{ha:833,x_min:51,x_max:781,o:"m 578 642 q 729 563 682 642 q 781 340 777 484 q 771 308 781 317 q 738 298 761 298 l 467 298 q 578 83 471 83 q 638 96 611 83 q 694 136 665 109 q 720 148 705 148 q 758 127 741 148 q 772 93 772 110 q 754 57 772 74 q 672 3 717 22 q 578 -15 627 -15 q 413 83 468 -15 q 331 11 380 37 q 227 -15 282 -15 q 134 7 174 -15 q 73 68 94 28 q 51 163 51 109 q 135 335 51 276 q 366 393 220 393 l 366 408 q 347 510 366 477 q 277 543 328 543 q 217 532 246 543 q 157 496 188 520 q 128 486 144 486 q 93 503 109 486 q 79 537 79 519 q 94 570 79 556 q 277 642 178 642 q 427 563 380 642 q 492 622 454 602 q 578 642 530 642 m 580 543 q 505 508 532 543 q 471 393 479 473 l 674 393 q 647 505 669 467 q 580 543 625 543 m 366 298 q 206 264 257 298 q 155 163 155 231 q 175 102 155 124 q 230 81 195 81 q 299 100 268 81 q 348 154 330 119 q 366 231 366 188 l 366 298 z "},ç:{ha:833,x_min:86,x_max:714,o:"m 704 144 q 714 111 714 127 q 692 72 714 87 q 582 14 645 36 q 450 -14 518 -8 l 450 -77 q 553 -108 518 -76 q 587 -191 587 -140 q 545 -285 587 -250 q 421 -320 503 -320 q 332 -312 375 -320 q 254 -288 288 -304 q 238 -264 238 -281 q 243 -240 238 -254 q 275 -210 255 -210 q 283 -211 280 -210 q 348 -229 313 -222 q 414 -237 382 -237 q 469 -225 449 -237 q 488 -193 488 -214 q 470 -160 488 -171 q 410 -149 452 -149 l 383 -150 q 367 -143 373 -150 q 360 -120 360 -136 l 360 -12 q 215 44 277 0 q 120 159 153 89 q 86 313 86 229 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 62
55061 631 610 621 q 661 642 633 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 z "},è:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 581 777 q 592 756 592 769 q 576 721 592 739 q 545 704 561 704 q 523 711 535 704 l 269 859 q 254 886 254 868 q 275 932 254 905 q 320 960 297 960 q 345 951 333 960 l 581 777 z "},é:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 515 951 q 540 960 527 960 q 585 932 563 960 q 606 886 606 905 q 591 859 606 868 l 337 711 q 315 704 325 704 q 284 721 299 704 q 268 756 268 739 q 279 777 268 769 l 515 951 z "},ê:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 430 947 q 469 933 454 947 l 635 775 q 646 753 646 765 q 631 721 646 739 q 601 705 616 705 q 580 713 590 705 l 430 830 l 280 713 q 259 705 270 705 q 229 721 243 705 q 214 753 214 739 q 224 775 214 765 l 391 933 q 430 947 406 947 z "},ë:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 281 924 q 332 915 318 924 q 345 880 345 905 l 345 792 q 332 758 345 768 q 281 748 318 748 q 230 758 243 748 q 216 792 216 768 l 216 880 q 230 915 216 905 q 281 924 243 924 m 566 924 q 616 915 603 924 q 630 880 630 905 l 630 792 q 616 758 630 768 q 566 748 603 748 q 515 758 528 748 q 501 792 501 768 l 501 880 q 515 915 501 905 q 566 924 528 924 z "},ì:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 513 777 q 524 756 524 769 q 508 721 524 739 q 477 704 493 704 q 455 711 467 704 l 201 859 q 186 886 186 868 q 207 932 186 905 q 252 960 229 960 q 277 951 265 960 l 513 777 z "},Ã:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 488 951 q 513 960 500 960 q 558 932 536 960 q 578 886 578 905 q 564 859 578 868 l 310 711 q 288 704 298 704 q 257 721 272 704 q 241 756 241 739 q 252 7
550677 241 769 l 488 951 z "},î:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},ï:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},ð:{ha:833,x_min:95,x_max:738,o:"m 541 742 q 738 293 738 561 q 696 132 738 202 q 581 24 654 62 q 416 -15 508 -15 q 252 24 325 -15 q 137 132 178 62 q 95 293 95 202 q 137 454 95 384 q 252 562 178 524 q 416 601 325 601 q 578 549 498 601 q 437 703 529 630 l 274 642 q 253 637 262 637 q 233 645 241 637 q 218 670 224 652 q 212 695 212 683 q 241 728 212 718 l 342 766 q 260 810 312 784 q 235 842 235 823 q 244 873 235 855 q 283 903 260 903 q 307 897 295 903 q 457 809 392 856 l 618 869 q 639 874 629 874 q 659 866 651 874 q 674 841 667 859 q 680 816 680 828 q 650 783 680 793 l 541 742 m 416 85 q 529 111 480 85 q 604 184 577 137 q 631 293 631 231 q 604 402 631 355 q 529 475 577 449 q 416 500 480 500 q 304 475 353 500 q 229 402 256 449 q 202 293 202 355 q 229 184 202 231 q 304 111 256 137 q 416 85 353 85 z "},ñ:{ha:833,x_min:52,x_max:793,o:"m 493 642 q 600 615 555 642 q 670 538 646 588 q 694 420 694 488 l 694 92 l 750 92 q 783 82 773 92 q 793 46 793 71 q 783 11 793 21 q 750 0 773 0 l 530 0 q 497 11 507 0 q 488 46 488 21 q 497 82 488 71 q 530 92 507 92 l 593 92 l 593 410 q 565 506 593 471 q 483 541 537 541 q 375 508 425 541 q 296 416 326 475 q 266 286 266 358 l 266 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 109 0 q 76 11 85 0 q 66 46 66 21 q 76 82 66 71 q 109 92 85 92 l 164 92 l 164 534 l 95 534 q 62 545 72 534 q 52 581 52 555 q 62 616 52 606 q 95 627 72 627 l 216 627 q 249 616 239 627 q 259 581 259 606 l 259 499 q 364 605 304 568 q 493 642 424 642 m 335 892 q 378 885 359 892 q 425 867 397 879 q 465 850 448 855 q 498 844 481 844 q 541 856 520 844 q 584 890 562 867 q 604 899 592 899 q 635 882 621 899 q 650 851 650 867 q 640 827 650 838 q 571 764 608 785 q 498 743 534 743 q 455 750 474 743 q 408 768 435 756 q 368 785 385 780 q 334 791 352 791 q 292 779 313 791 q 249 745 271 768 q 229 736 241 736 q 197 753 212 736 q 183 784 183 768 q 193 808 183 797 q 262 871 225 850 q 335 892 299 892 z "},ò:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 554 777 q 565 756 565 769 q 549 721 565 739 q 517 704 534 704 q 496 711 508 704 l 242 859 q 227 886 227 868 q 248 932 227 905 q 293 960 270 960 q 318 951 306 960 l 554 777 z "},ó:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 515 951 q 540 960 527 960 q 585 932 563 960 q 606 886 606 905 q 591 859 606 868 l 337 711 q 315 704 325 704 q 284 721 299 704 q 268 756 268 739 q 279 777 268 769 l 515 951 z "},ô:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},õ:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 335 892 q 378 885 359 892 q 425 867 397 879 q 465 850 448 855 q 498 844 481 844 q 541 856 520 844 q 584 890 562 867 q 604 899 592 899 q 635 882 621 899 q 650 851 650 867 q 640 827 650 838 q 571 764 608 785 q 498 743 534 743 q 455 750 474 743 q 408 768 435 756 q 368 785 385 780 q 334 791 352 791 q 292 779 313 791 q 249 745 271 768 q 229 736 241 736 q 197 753 212 736 q 183 784 183 768 q 193 808 183 797 q 262 871 225 850 q 335 892 299 892 z "},ö:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},"÷":{ha:833,x_min:115,x_max:718,o:"m 416 715 q 471 706 454 715 q 488 673 488 696 l 488 602 q 471 569 488 579 q 416 559 454 559 q 362 569 378 559 q 345 602 345 579 l 345 673 q 362 706 345 696 q 416 715 378 715 m 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 675 441 m 416 231 q 471 221 454 231 q 488 188 488 211 l 488 11
55067 q 471 84 488 94 q 416 75 454 75 q 362 84 378 75 q 345 117 345 94 l 345 188 q 362 221 345 211 q 416 231 378 231 z "},ø:{ha:833,x_min:57,x_max:776,o:"m 758 643 q 776 609 776 624 q 759 578 776 594 l 686 507 q 743 313 743 423 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 307 2 358 -15 q 213 52 255 20 l 139 -20 q 109 -35 122 -35 q 75 -16 94 -35 q 57 18 57 3 q 73 48 57 32 l 147 120 q 90 313 90 203 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 q 527 625 475 642 q 620 576 578 608 l 693 646 q 724 662 710 662 q 758 643 739 662 m 197 313 q 224 194 197 245 l 545 504 q 416 541 491 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 m 636 313 q 608 433 636 381 l 288 123 q 416 85 341 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 z "},ù:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 547 777 q 558 756 558 769 q 542 721 558 739 q 511 704 527 704 q 489 711 501 704 l 235 859 q 220 886 220 868 q 241 932 220 905 q 286 960 263 960 q 311 951 299 960 l 547 777 z "},ú:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 528 951 q 553 960 541 960 q 599 932 576 960 q 619 886 619 905 q 604 859 619 868 l 351 711 q 329 704 338 704 q 298 721 313 704 q 281 756 281 739 q 292 777 281 769 l 528 951 z "},û:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 410 947 q 449 933 434 947 l 615 775 q 626 753 626 765 q 610 721 626 739 q 581 705 596 705 q 559 713 570 705 l 410 830 l 260 713 q 239 705 250 705 q 209 721 223 705 q 193 753 193 739 q 204 775 193 765 l 370 933 q 410 947 385 947 z "},ü:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 260 924 q 311 915 298 924 q 325 880 325 905 l 325 792 q 311 758 325 768 q 260 748 298 748 q 210 758 223 748 q 196 792 196 768 l 196 880 q 210 915 196 905 q 260 924 223 924 m 545 924 q 596 915 583 924 q 610 880 610 905 l 610 792 q 596 758 610 768 q 545 748 583 748 q 494 758 508 748 q 481 792 481 768 l 481 880 q 494 915 481 905 q 545 924 508 924 z "}
5506,ý:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 714 534 l 437 -34 q 351 -176 393 -124 q 256 -251 309 -227 q 128 -278 203 -275 q 92 -266 104 -279 q 79 -222 79 -254 q 115 -176 79 -178 q 218 -154 180 -172 q 289 -91 256 -136 q 368 47 321 -47 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 421 153 l 604 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 m 530 951 q 555 960 542 960 q 600 932 578 960 q 621 886 621 905 q 606 859 621 868 l 352 711 q 330 704 340 704 q 299 721 314 704 q 283 756 283 739 q 294 777 283 769 l 530 951 z "},þ:{ha:833,x_min:25,x_max:747,o:"m 196 890 q 229 879 219 890 q 239 844 239 869 l 239 530 q 454 642 326 642 q 604 602 538 642 q 709 488 671 562 q 747 313 747 414 q 709 139 747 213 q 604 25 671 64 q 454 -15 538 -15 q 239 97 326 -15 l 239 -171 l 355 -171 q 388 -181 378 -171 q 398 -217 398 -192 q 388 -253 398 -242 q 355 -263 378 -263 l 68 -263 q 35 -253 45 -263 q 25 -217 25 -242 q 35 -181 25 -192 q 68 -171 45 -171 l 137 -171 l 137 798 l 81 798 q 48 808 58 798 q 39 844 39 819 q 48 879 39 869 q 81 890 58 890 l 196 890 m 447 541 q 339 514 387 541 q 266 435 292 487 q 239 313 239 384 q 266 191 239 243 q 339 113 292 140 q 447 85 387 85 q 551 114 507 85 q 617 195 594 143 q 640 313 640 246 q 617 432 640 380 q 551 512 594 484 q 447 541 507 541 z "},ÿ:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 714 534 l 437 -34 q 351 -176 393 -124 q 256 -251 309 -227 q 128 -278 203 -275 q 92 -266 104 -279 q 79 -222 79 -254 q 115 -176 79 -178 q 218 -154 180 -172 q 289 -91 256 -136 q 368 47 321 -47 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 421 153 l 604 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},Ä:{ha:833,x_min:7,x_max:826,o:"m 559 1031 q 592 1020 583 1031 q 602 982 602 1008 q 592 944 602 956 q 559 933 583 933 l 205 933 q 173 944 182 933 q 163 982 163 956 q 173 1020 163 1008 q 205 1031 182 1031 l 559 1031 m 434 805 q 478 794 461 8
550605 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 z "},Ä:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 593 848 q 626 837 616 848 q 636 799 636 825 q 626 761 636 772 q 593 750 616 750 l 239 750 q 207 761 216 750 q 197 799 197 772 q 207 837 197 825 q 239 848 216 848 l 593 848 z "}
5506,Ä:{ha:833,x_min:7,x_max:826,o:"m 434 805 q 478 794 461 805 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 m 409 713 l 282 346 l 548 346 l 422 713 l 409 713 m 589 1112 q 616 1100 608 1107 q 625 1079 625 1092 q 625 1070 625 1074 q 552 951 609 994 q 403 909 496 909 q 253 951 310 909 q 181 1070 197 994 q 180 1079 180 1074 q 189 1100 180 1092 q 217 1112 198 1107 q 236 1114 227 1114 q 265 1097 259 1114 q 315 1026 281 1049 q 403 1003 349 1003 q 492 1026 458 1003 q 541 1097 526 1049 q 570 1114 547 1114 q 589 1112 578 1114 z "},Ä:{ha:833,x_min:92,x_max:785,o:"m 419 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 699 0 q 624 22 655 0 q 583 87 592 44 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 m 367 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 q 473 289 526 281 q 367 297 420 297 m 604 928 q 632 917 623 924 q 641 896 641 909 q 640 887 641 890 q 568 768 625 810 q 418 726 511 726 q 269 768 326 726 q 197 887 212 810 q 196 896 196 890 q 205 917 196 909 q 233 928 214 924 q 252 930 243 930 q 281 914 275 930 q 330 843 296 866 q 418 820 364 820 q 507 843 473 820 q 556 914 541 866 q 585 930 562 930 q 604 928 594 930 z "},Ä:{ha:833,x_min:7,x_max:826,o:"m 741 0 q 655 -98 681 -56 q 629 -176 629 -139 q 643 -213 629 -200 q 681 -226 657 -226 q 758 -214 716 -226 q 765 -213 763 -213 q 791 -250 785 -213 q 793 -267 793 -262 q 787 -290 793 -281 q 770 -302 781 -298 q 659 -320 719 -320 q 559 -285 595 -320 q 523 -191 523 -250 q 550 -94 523 -141 q 629 0 577 -47 l 543 0 q 510 11 520 0 q 500 46 500 21 q 510 82 500 71 q 543 92 520 92 l 635 92 l 579 254 l 250 254 l 194 92 l 276 92 q 309 82 299 92 q 319 46 319 71 q 309 11 319 21 q 276 0 299 0 l 50 0 q 17 11 26 0 q 7 46 7 21 q 17 82 7 71 q 50 92 26 92 l 87 92 l 312 713 l 185 713 q 152 723 162 713 q 142 759 142 734 q 152 794 142 784 q 185 805 162 805 l 434 805 q 478 794 461 8
550605 q 503 761 494 784 l 742 92 l 783 92 q 816 82 806 92 q 826 46 826 71 q 816 11 826 21 q 783 0 806 0 l 741 0 m 282 346 l 548 346 l 422 713 l 409 713 l 282 346 z "},Ä
:{ha:833,x_min:92,x_max:785,o:"m 744 -214 q 751 -213 749 -213 q 778 -250 772 -213 q 779 -267 779 -262 q 773 -290 779 -281 q 756 -302 768 -298 q 645 -320 705 -320 q 546 -285 582 -320 q 509 -191 509 -250 q 541 -86 509 -137 q 633 16 573 -36 q 583 87 593 39 q 462 12 527 38 q 325 -15 397 -15 q 204 8 256 -15 q 121 77 151 32 q 92 183 92 121 q 168 341 92 290 q 366 393 245 393 q 572 358 474 393 l 572 416 q 535 512 572 481 q 416 543 498 543 q 311 529 366 543 q 206 490 256 515 q 185 484 195 484 q 148 516 163 484 q 140 543 140 532 q 165 580 140 567 q 288 626 222 610 q 419 642 353 642 q 610 585 547 642 q 674 416 674 528 l 674 146 q 719 92 674 92 l 743 92 q 775 82 766 92 q 785 46 785 71 q 775 11 785 21 q 743 0 766 0 l 728 0 q 641 -98 667 -56 q 615 -176 615 -139 q 629 -213 615 -200 q 667 -226 644 -226 q 744 -214 703 -226 m 572 267 q 473 289 526 281 q 367 297 420 297 q 244 270 289 297 q 199 185 199 243 q 233 108 199 136 q 329 81 267 81 q 572 193 464 81 l 572 267 z "},Ä:{ha:833,x_min:80,x_max:741,o:"m 542 1134 q 567 1143 554 1143 q 612 1115 590 1143 q 633 1069 633 1088 q 618 1042 633 1051 l 364 894 q 342 887 352 887 q 311 904 326 887 q 295 939 295 922 q 306 960 295 952 l 542 1134 m 677 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 q 741 109 741 125 q 720 74 741 89 q 583 7 657 30 q 430 -15 509 -15 q 245 37 324 -15 q 123 183 166 89 q 80 402 80 277 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 z "},Ä:{ha:833,x_min:86,x_max:714,o:"m 661 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 q 714 111 714 127 q 692 72 714 87 q 564 8 638 31 q 413 -15 490 -15 q 242 28 316 -15 q 127 145 168 71 q 86 313 86 220 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 621 631 610 621 q 661 642 633 642 m 528 951 q 553 960 540 960 q 598 932 576 960 q 618 886 618 905 q 604 859 618 868 l 350 711 q 328 704 338 704 q 297 721 312 704 q 281 756 281 739 q 292 777 281 769 l 528 951 z "},Ä:{ha:833,x_min:80,x_max:741,o:"m 444 1130 q 483 1116 468 1130 l 649 958 q 660 936 660 948 q 644 904 660 922 q 614 888 630 888 q 593 896 604 888 l 444 1013 l 294 896 q 273 888 283 888 q 243 904 257 888 q 227 936 227 922 q 238 958 227 948 l 404 1116 q 444 1130 419 1130 m 677 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 q 741 109 741 125 q 720 74 741 89 q 583 7 657 30 q 430 -15 509 -15 q 245 37 324 -15 q 123 183 166 89 q 80 402 80 277 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 z "},Ä:{ha:833,x_min:86,x_max:714,o:"m 423 947 q 463 933 448 947 l 629 775 q 640 753 640 765 q 624 721 640 739 q 594 705 610 705 q 573 713 583 705 l 423 830 l 273 713 q 252 705 263 705 q 222 721 237 705 q 207 753 207 739 q 218 775 207 765 l 384 933 q 423 947 399 947 m 661 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 q 714 111 714 127 q 692 72 714 87 q 564 8 638 31 q 413 -15 490 -15 q 242 28 316 -15 q 127 145 168 71 q 86 313 86 220 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 62
55061 631 610 621 q 661 642 633 642 z "},Ä:{ha:833,x_min:80,x_max:741,o:"m 430 1107 q 481 1098 467 1107 q 494 1063 494 1088 l 494 975 q 481 941 494 951 q 430 931 467 931 q 379 941 393 931 q 366 975 366 951 l 366 1063 q 379 1098 366 1088 q 430 1107 393 1107 m 677 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 q 741 109 741 125 q 720 74 741 89 q 583 7 657 30 q 430 -15 509 -15 q 245 37 324 -15 q 123 183 166 89 q 80 402 80 277 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 z "},Ä:{ha:833,x_min:86,x_max:714,o:"m 661 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 q 714 111 714 127 q 692 72 714 87 q 564 8 638 31 q 413 -15 490 -15 q 242 28 316 -15 q 127 145 168 71 q 86 313 86 220 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 621 631 610 621 q 661 642 633 642 m 423 924 q 474 915 460 924 q 488 880 488 905 l 488 792 q 474 758 488 768 q 423 748 460 748 q 372 758 386 748 q 359 792 359 768 l 359 880 q 372 915 359 905 q 423 924 386 924 z "},Ä:{ha:833,x_min:80,x_max:741,o:"m 677 820 q 717 810 705 820 q 728 776 728 800 l 728 552 q 717 518 728 528 q 677 508 705 508 q 638 518 650 508 q 627 552 627 528 q 606 636 627 598 q 543 697 585 674 q 437 720 500 720 q 307 681 363 720 q 219 570 250 642 q 187 402 187 498 q 217 234 187 306 q 302 124 247 163 q 430 85 357 85 q 558 105 497 85 q 668 162 619 125 q 693 172 680 172 q 729 145 713 172 q 741 109 741 125 q 720 74 741 89 q 583 7 657 30 q 430 -15 509 -15 q 245 37 324 -15 q 123 183 166 89 q 80 402 80 277 q 124 621 80 526 q 248 768 168 715 q 430 820 328 820 q 543 798 494 820 q 627 736 593 777 l 627 776 q 638 810 627 800 q 677 820 650 820 m 437 889 q 397 903 412 889 l 231 1061 q 220 1083 220 1071 q 236 1115 220 1097 q 266 1131 250 1131 q 287 1123 277 1131 l 437 1006 l 587 1123 q 608 1131 597 1131 q 637 1115 623 1131 q 653 1083 653 1097 q 642 1061 653 1071 l 476 903 q 437 889 461 889 z "},Ä:{ha:833,x_min:86,x_max:714,o:"m 661 642 q 700 631 688 642 q 711 597 711 621 l 711 401 q 700 367 711 377 q 661 357 688 357 q 621 367 633 357 q 610 401 610 377 q 588 474 610 442 q 523 524 566 506 q 420 541 480 541 q 303 512 355 541 q 222 431 252 483 q 193 313 193 378 q 221 196 193 248 q 298 115 248 144 q 413 85 348 85 q 534 105 475 85 q 641 161 593 124 q 667 172 655 172 q 704 144 687 172 q 714 111 714 127 q 692 72 714 87 q 564 8 638 31 q 413 -15 490 -15 q 242 28 316 -15 q 127 145 168 71 q 86 313 86 220 q 127 481 86 407 q 243 599 169 556 q 413 642 317 642 q 524 620 473 642 q 610 557 574 597 l 610 597 q 621 631 610 621 q 661 642 633 642 m 423 706 q 384 720 399 706 l 218 878 q 207 900 207 888 q 222 932 207 914 q 252 948 237 948 q 273 940 263 948 l 423 823 l 573 940 q 594 948 583 948 q 624 932 610 948 q 640 900 640 914 q 629 878 640 888 l 463 720 q 423 706 448 706 z "},Ä:{ha:833,x_min:54,x_max:773,o:"m 416 805 q 604 756 523 805 q 729 617 684 708 q 773 402 773 526 q 729 188 773 279 q 604 48 684 97 q 416 0 523 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 416 805 m 275 92 l 401 92 q 541 128 481 92 q 633 233 601 163 q 666 402 666 302 q 633 571 666 502 q 541 677 601 641 q 401 713 481 713 l 275 713 l 275 92 m 396 889 q 357 903 372 889 l 191 1061 q 180 1083 180 1071 q 195 1115 180 1097 q 225 1131 210 1131 q 246 1123 236 1131 l 396 1006 l 546 1123 q 567 1131 556 1131 q 597 1115 583 1131 q 612 1083 612 1097 q 602 1061 612 1071 l 435 903 q 396 889 420 889 z "},Ä:{ha:833,x_min:86,x_max:901,o:"m 585 890 q 618 879 608 890 q 628 844 628 869 l 628 92 l 684 92 q 716 82 707 92 q 726 46 726 71 q 716 11 726 21 q 684 0 707 0 l 576 0 q 543 11 553 0 q 533 46 533 21 l 533 97 q 345 -15 464 -15 q 212 25 271 -15 q 120 139 153 64 q 86 313 86 213 q 120 488 86 414 q 212 602 153 562 q 345 642 271 642 q 526 532 460 642 l 526 798 l 416 798 q 384 808 393 798 q 374 844 374 819 q 384 879 374 869 q 416 890 393 890 l 585 890 m 882 890 q 896 885 891 890 q 901 871 901 880 q 897 855 901 865 l 806 609 q 756 585 798 585 q 727 592 737 585 q 717 613 717 600 q 718 623 717 616 l 774 868 q 802 890 779 890 l 882 890 m 352 541 q 266 512 302 541 q 212 432 231 484 q 193 313 193 380 q 212 195 193 246 q 266 114 23
55061 143 q 352 85 302 85 q 444 113 405 85 q 505 191 484 140 q 526 313 526 242 q 505 436 526 385 q 444 514 484 487 q 352 541 405 541 z "},Ä:{ha:833,x_min:54,x_max:773,o:"m 416 805 q 604 756 523 805 q 729 617 684 708 q 773 402 773 526 q 729 188 773 279 q 604 48 684 97 q 416 0 523 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 365 l 106 365 q 74 376 83 365 q 64 414 64 387 q 74 451 64 440 q 106 463 83 463 l 173 463 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 416 805 m 401 92 q 541 128 481 92 q 633 233 601 163 q 666 402 666 302 q 633 571 666 502 q 541 677 601 641 q 401 713 481 713 l 275 713 l 275 463 l 460 463 q 493 451 484 463 q 503 414 503 440 q 493 376 503 387 q 460 365 484 365 l 275 365 l 275 92 l 401 92 z "},Ä:{ha:833,x_min:101,x_max:799,o:"m 682 658 l 682 92 l 738 92 q 771 82 761 92 q 781 46 781 71 q 771 11 781 21 q 738 0 761 0 l 630 0 q 597 11 607 0 q 587 46 587 21 l 587 94 q 494 13 547 41 q 379 -15 441 -15 q 236 22 299 -15 q 137 129 173 59 q 101 293 101 199 q 137 457 101 387 q 236 564 173 527 q 379 601 299 601 q 581 501 498 601 l 581 658 l 375 658 q 342 668 352 658 q 332 704 332 679 q 342 740 332 729 q 375 750 352 750 l 581 750 l 581 798 l 471 798 q 438 808 448 798 q 428 844 428 819 q 438 879 428 869 q 471 890 448 890 l 640 890 q 672 879 663 890 q 682 844 682 869 l 682 750 l 756 750 q 789 740 779 750 q 799 704 799 729 q 789 668 799 679 q 756 658 779 658 l 682 658 m 386 85 q 486 110 442 85 q 555 182 530 135 q 581 293 581 229 q 555 404 581 357 q 486 476 530 451 q 386 500 442 500 q 289 474 330 500 q 227 400 248 448 q 205 293 205 353 q 227 185 205 233 q 289 112 248 138 q 386 85 330 85 z "},Ä:{ha:833,x_min:54,x_max:746,o:"m 608 1031 q 641 1020 631 1031 q 650 982 650 1008 q 641 944 650 956 q 608 933 631 933 l 254 933 q 221 944 231 933 q 211 982 211 956 q 221 1020 211 1008 q 254 1031 231 1031 l 608 1031 m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 z "},Ä:{ha:833,x_min:99,x_max:740,o:"m 607 848 q 640 837 630 848 q 650 799 650 825 q 640 761 650 772 q 607 750 630 750 l 253 750 q 220 761 230 750 q 210 799 210 772 q 220 837 210 825 q 253 848 230 848 l 607 848 m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 z "},Ä:{ha:833,x_min:54,x_max:746,o:"m 416 1107 q 467 1098 454 1107 q 481 1063 481 1088 l 481 975 q 467 941 481 951 q 416 931 454 931 q 366 941 379 931 q 352 975 352 951 l 352 1063 q 366 1098 352 1088 q 416 1107 379 1107 m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 66
55067 292 z "},Ä:{ha:833,x_min:99,x_max:740,o:"m 430 924 q 481 915 467 924 q 494 880 494 905 l 494 792 q 481 758 494 768 q 430 748 467 748 q 379 758 393 748 q 366 792 366 768 l 366 880 q 379 915 366 905 q 430 924 393 924 m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 z "},Ä:{ha:833,x_min:54,x_max:746,o:"m 687 0 q 601 -98 627 -56 q 574 -176 574 -139 q 589 -213 574 -200 q 627 -226 603 -226 q 703 -214 662 -226 q 711 -213 709 -213 q 737 -250 731 -213 q 739 -267 739 -262 q 733 -290 739 -281 q 715 -302 727 -298 q 604 -320 665 -320 q 505 -285 541 -320 q 469 -191 469 -250 q 496 -94 469 -141 q 574 0 523 -47 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 687 0 z "},Ä:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 629 -3 671 35 q 546 -100 571 -58 q 520 -177 520 -141 q 534 -215 520 -201 q 572 -228 549 -228 q 649 -221 610 -228 q 675 -230 665 -218 q 684 -269 684 -242 q 679 -290 684 -282 q 661 -302 673 -298 q 550 -320 610 -320 q 451 -285 487 -320 q 414 -191 414 -250 q 441 -97 414 -142 q 519 -6 468 -52 q 422 -15 468 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 z "},Ä:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 m 416 889 q 377 903 392 889 l 211 1061 q 200 1083 200 1071 q 216 1115 200 1097 q 245 1131 230 1131 q 267 1123 256 1131 l 416 1006 l 566 1123 q 587 1131 576 1131 q 617 1115 603 1131 q 633 1083 633 1097 q 622 1061 633 1071 l 456 903 q 416 889 441 889 z "},Ä:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 427 706 q 388 720 403 706 l 222 878 q 211 900 211 888 q 227 932 211 914 q 256 948 241 948 q 277 940 267 948 l 427 823 l 577 940 q 598 948 587 948 q 628 932 614 948 q 644 900 644 914 q 633 878 644 888 l 467 720 q 427 706 452 706 z "},Ä:{ha:833,x_min:66,x_max:792,o:"m 437 1130 q 476 1116 461 1130 l 642 958 q 653 936 653 948 q 637 904 653 922 q 608 888 623 888 q 587 896 597 888 l 437 1013 l 287 896 q 266 888 277 888 q 236 904 250 888 q 220 936 220 922 q 231 958 220 948 l 397 1116 q 437 1130 412 1130 m 669 820 q 709 810 697 820 q 720 776 720 800 l 720 579 q 709 545 720 555 q 669 535 697 535 q 630 545 642 535 q 618 579 618 555 q 596 652 618 620 q 532 702 574 684 q 430 720 489 720 q 297 681 355 720 q 206 570 239 642 q 174 402 174 498 q 204 234 174 306 q 292 124 235 163 q 423 85 349 85 q 626 124 542 85 l 626 278 l 458 278 q 426 289 435 278 q 416 324 416 299 q 426 360 416 349 q 458 370 435 370 l 749 370 q 782 360 772 370 q 792 324 792 349 q 782 289 792 299 q 749 278 772 278 l 728 278 l 728 97 q 703 50 728 64 q 575 2 648 18 q 423 -15 503 -15 q 236 37 317 -15 q 111 183 155 89 q 66 402 66 278 q 112 621 66 526 q 239 768 158 715 q 423 820 320 820 q 536 800 487 820 q 618 743 585 780 l 618 776 q 630 810 618 800 q 669 820 642 820 z "},Ä:{ha:833,x_min:86,x_max:794,o:"m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -20 q 662 -159 696 -101 q 562 -248 627 -217 q 406 -278 497 -278 q 274 -267 340 -278 q 150 -235 208 -256 q 123 -199 123 -225 q 129 -172 123 -188 q 168 -134 141 -134 q 182 -137 175 -134 q 294 -167 235 -156 q 406 -178 352 -178 q 547 -133 499 -178 q 594 -12 594 -89 l 594 125 q 379 19 510 19 q 229 57 295 19 q 124 165 162 94 q 86 330 86 235 q 124 496 86 425 q 229 604 162 566 q 379 642 295 642 m 386 541 q 282 514 326 541 q 216 440 239 488 q 193 330 193 392 q 216 221 193 269 q 282 146 239 173 q 386 119 326 119 q 493 144 446 119 q 567 217 541 170 q 594 330 594 265 q 567 443 594 395 q 493 516 541 491 q 386 541 446 541 m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},Ä:{ha:833,x_min:66,x_max:792,o:"m 669 820 q 709 810 697 820 q 720 776 720 800 l 720 579 q 709 545 720 555 q 669 535 697 535 q 630 545 642 535 q 618 579 618 555 q 596 652 618 620 q 532 702 574 684 q 430 720 489 720 q 297 681 355 720 q 206 570 239 642 q 174 402 174 498 q 204 234 174 306 q 292 124 235 163 q 423 85 349 85 q 626 124 542 85 l 626 278 l 458 278 q 426 289 435 278 q 416 324 416 299 q 426 360 416 349 q 458 370 435 370 l 749 370 q 782 360 772 370 q 792 324 792 349 q 782 289 792 299 q 749 278 772 278 l 728 278 l 728 97 q 703 50 728 64 q 575 2 648 18 q 423 -15 503 -15 q 236 37 317 -15 q 111 183 155 89 q 66 402 66 278 q 112 621 66 526 q 239 768 158 715 q 423 820 320 820 q 536 800 487 820 q 618 743 585 780 l 618 776 q 630 810 618 800 q 669 820 642 820 m 609 1112 q 637 1100 628 1107 q 646 1079 646 1092 q 645 1070 646 1074 q 573 951 629 994 q 423 909 516 909 q 274 951 330 909 q 201 1070 217 994 q 201 1079 201 1074 q 210 1100 201 1092 q 237 1112 218 1107 q 256 1114 248 1114 q 286 1097 279 1114 q 335 1026 301 1049 q 423 1003 369 1003 q 512 1026 478 1003 q 561 1097 546 1049 q 590 1114 567 1114 q 609 1112 599 1114 z "},Ä:{ha:833,x_min:86,x_max:794,o:"m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -20 q 662 -159 696 -101 q 562 -248 627 -217 q 406 -278 497 -278 q 274 -267 340 -278 q 150 -235 208 -256 q 123 -199 123 -225 q 129 -172 123 -188 q 168 -134 141 -134 q 182 -137 175 -134 q 294 -167 235 -156 q 406 -178 352 -178 q 547 -133 499 -178 q 594 -12 594 -89 l 594 125 q 379 19 510 19 q 229 57 295 19 q 124 165 162 94 q 86 330 86 235 q 124 496 86 425 q 229 604 162 566 q 379 642 295 642 m 386 541 q 282 514 326 541 q 216 440 239 488 q 193 330 193 392 q 216 221 193 269 q 282 146 239 173 q 386 119 326 119 q 493 144 446 119 q 567 217 541 170 q 594 330 594 265 q 567 443 594 395 q 493 516 541 491 q 386 541 446 541 m 602 928 q 630 917 621 924 q 639 896 639 909 q 638 887 639 890 q 566 768 623 810 q 416 726 509 726 q 267 768 323 726 q 195 887 210 810 q 194 896 194 890 q 203 917 194 909 q 231 928 212 924 q 250 930 241 930 q 279 914 273 930 q 328 843 294 866 q 416 820 362 820 q 505 843 471 820 q 554 914 539 866 q 583 930 560 930 q 602 928 592 930 z "},Ä :{ha:833,x_min:66,x_max:792,o:"m 423 1107 q 474 1098 460 1107 q 488 1063 488 1088 l 488 975 q 474 941 488 951 q 423 931 460 931 q 372 941 386 931 q 359 975 359 951 l 359 1063 q 372 1098 359 1088 q 423 1107 386 1107 m 669 820 q 709 810 697 820 q 720 776 720 800 l 720 579 q 709 545 720 555 q 669 535 697 535 q 630 545 642 535 q 618 579 618 555 q 596 652 618 620 q 532 702 574 684 q 430 720 489 720 q 297 681 355 720 q 206 570 239 642 q 174 402 174 498 q 204 234 174 306 q 292 124 235 163 q 423 85 349 85 q 626 124 542 85 l 626 278 l 458 278 q 426 289 435 278 q 416 324 416 299 q 426 360 416 349 q 458 370 435 370 l 749 370 q 782 360 772 370 q 792 324 792 349 q 782 289 792 299 q 749 278 772 278 l 728 278 l 728 97 q 703 50 728 64 q 575 2 648 18 q 423 -15 503 -15 q 236 37 317 -15 q 111 183 155 89 q 66 402 66 278 q 112 621 66 526 q 239 768 158 715 q 423 820 320 820 q 536 800 487 820 q 618 743 585 780 l 618 776 q 630 810 618 800 q 669 820 642 820 z "},Ä¡:{ha:833,x_min:86,x_max:794,o:"m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -20 q 662 -159 696 -101 q 562 -248 627 -217 q 406 -278 497 -278 q 274 -267 340 -278 q 150 -235 208 -256 q 123 -199 123 -225 q 129 -172 123 -188 q 168 -134 141 -134 q 182 -137 175 -134 q 294 -167 235 -156 q 406 -178 352 -178 q 547 -133 499 -178 q 594 -12 594 -89 l 594 125 q 379 19 510 19 q 229 57 295 19 q 124 165 162 94 q 86 330 86 235 q 124 496 86 425 q 229 604 162 566 q 379 642 295 642 m 386 541 q 282 514 326 541 q 216 440 239 488 q 193 330 193 392 q 216 221 193 269 q 282 146 239 173 q 386 119 326 119 q 493 144 446 119 q 567 217 541 170 q 594 330 594 265 q 567 443 594 395 q 493 516 541 491 q 386 541 446 541 m 416 924 q 467 915 454 924 q 481 880 481 905 l 481 792 q 467 758 481 768 q 416 748 454 748 q 366 758 379 748 q 352 792 352 768 l 352 880 q 366 915 352 905 q 416 924 379 924 z "},Ä¢:{ha:833,x_min:66,x_max:792,o:"m 669 820 q 709 810 697 820 q 720 776 720 800 l 720 579 q 709 545 720 555 q 669 535 697 535 q 630 545 642 535 q 618 579 618 555 q 596 652 618 620 q 532 702 574 684 q 430 720 489 720 q 297 681 355 720 q 206 570 239 642 q 174 402 174 498 q 204 234 174 306 q 292 124 235 163 q 423 85 349 85 q 626 124 542 85 l 626 278 l 458 278 q 426 289 435 278 q 416 324 416 299 q 426 360 416 349 q 458 370 435 370 l 749 370 q 782 360 772 370 q 792 324 792 349 q 782 289 792 299 q 749 278 772 278 l 728 278 l 728 97 q 703 50 728 64 q 575 2 648 18 q 423 -15 503 -15 q 236 37 317 -15 q 111 183 155 89 q 66 402 66 278 q 112 621 66 526 q 239 768 158 715 q 423 820 320 820 q 536 800 487 820 q 618 743 585 780 l 618 776 q 630 810 618 800 q 669 820 642 820 m 372 -357 q 336 -349 348 -357 q 325 -326 325 -340 q 326 -315 325 -323 l 369 -121 q 397 -99 374 -99 l 476 -99 q 495 -117 495 -99 q 491 -134 495 -125 l 412 -331 q 372 -357 401 -357 z "},Ä£:{ha:833,x_min:86,x_max:794,o:"m 473 979 q 509 971 497 979 q 520 949 520 963 q 519 938 520 946 l 476 743 q 448 722 471 722 l 369 722 q 350 739 350 722 q 354 756 350 747 l 433 954 q 473 979 444 979 m 379 642 q 502 612 446 642 q 601 526 558 582 l 601 581 q 611 616 601 606 q 644 627 621 627 l 751 627 q 784 616 774 627 q 794 581 794 606 q 784 545 794 555 q 751 534 774 534 l 696 534 l 696 -20 q 662 -159 696 -101 q 562 -248 627 -217 q 406 -278 497 -278 q 274 -267 340 -278 q 150 -235 208 -256 q 123 -199 123 -225 q 129 -172 123 -188 q 168 -134 141 -134 q 182 -137 175 -134 q 294 -167 235 -156 q 406 -178 352 -178 q 547 -133 499 -178 q 594 -12 594 -89 l 594 125 q 379 19 510 19 q 229 57 295 19 q 124 165 162 94 q 86 330 86 235 q 124 496 86 425 q 229 604 162 566 q 379 642 295 642 m 386 541 q 282 514 326 541 q 216 440 239 488 q 193 330 193 392 q 216 221 193 269 q 282 146 239 173 q 386 119 326 119 q 493 144 446 119 q 567 217 541 170 q 594 330 594 265 q 567 443 594 395 q 493 516 541 491 q 386 541 446 541 z "},Ĥ:{ha:833,x_min:54,x_max:779,o:"m 736 805 q 769 794 759 805 q 779 759 779 784 q 769 723 779 734 q 736 713 759 713 l 687 713 l 687 92 l 736 92 q 769 82 759 92 q 779 46 779 71 q 769 11 779 21 q 736 0 759 0 l 523 0 q 490 11 500 0 q 480 46 480 21 q 490 82 480 71 q 523 92 500 92 l 585 92 l 585 369 l 248 369 l 248 92 l 310 92 q 343 82 333 92 q 353 46 353 71 q 343 11 353 21 q 310 0 333 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 146 92 l 146 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 248 713 l 248 461 l 585 461 l 585 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 736 805 m 416 1130 q 456 1116 441 1130 l 622 958 q 633 936 633 948 q 617 904 633 922 q 587 888 603 888 q 566 896 576 888 l 416 1013 l 267 896 q 245 888 256 888 q 216 904 230 888 q 200 936 200 922 q 211 958 200 948 l 377 1116 q 416 1130 392 1130 z "},ĥ:{ha:833,x_min:52,x_max:786,o:"m 410 1198 q 449 1184 434 1198 l 615 1026 q 626 1004 626 1016 q 610 972 626 989 q 581 956 596 956 q 559 964 570 956 l 410 1081 l 260 964 q 239 956 250 956 q 209 972 223 956 q 193 1004 193 989 q 204 1026 193 1016 l 370 1184 q 410 1198 385 1198 m 216 890 q 249 879 239 890 q 259 844 259 869 l 259 506 q 361 607 303 572 q 486 642 419 642 q 593 615 548 642 q 663 538 639 588 q 688 420 688 488 l 688 92 l 743 92 q 776 82 766 92 q 786 46 786 71 q 776 11 786 21 q 743 0 766 0 l 524 0 q 491 11 500 0 q 481 46 481 21 q 491 82 481 71 q 524 92 500 92 l 586 92 l 586 410 q 558 506 586 471 q 476 541 530 541 q 369 508 418 541 q 289 416 319 475 q 259 286 259 358 l 259 92 l 321 92 q 354 82 345 92 q 364 46 364 71 q 354 11 364 21 q 321 0 345 0 l 102 0 q 69 11 79 0 q 59 46 59 21 q 69 82 59 71 q 102 92 79 92 l 157 92 l 157 798 l 95 798 q 62 808 72 798 q 52 844 52 819 q 62 879 52 869 q 95 890 72 890 l 216 890 z "},Ħ:{ha:833,x_min:20,x_max:812,o:"m 736 805 q 769 794 759 805 q 779 759 779 784 q 769 723 779 734 q 736 713 759 713 l 687 713 l 687 627 l 770 627 q 803 616 793 627 q 812 581 812 606 q 803 545 812 555 q 770 534 793 534 l 687 534 l 687 92 l 736 92 q 769 82 759 92 q 779 46 779 71 q 769 11 779 21 q 736 0 759 0 l 523 0 q 490 11 500 0 q 480 46 480 21 q 490 82 480 71 q 523 92 500 92 l 585 92 l 585 369 l 248 369 l 248 92 l 310 92 q 343 82 333 92 q 353 46 353 71 q 343 11 353 21 q 310 0 333 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 146 92 l 146 534 l 63 534 q 30 545 40 534 q 20 581 20 555 q 30 616 20 606 q 63 627 40 627 l 146 627 l 146 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 248 713 l 248 627 l 585 627 l 585 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 736 805 m 248 534 l 248 461 l 585 461 l 585 534 l 248 534 z "},ħ:{ha:833,x_min:14,x_max:786,o:"m 743 92 q 776 82 766 92 q 786 46 786 71 q 776 11 786 21 q 743 0 766 0 l 524 0 q 491 11 500 0 q 481 46 481 21 q 491 82 481 71 q 524 92 500 92 l 586 92 l 586 370 q 558 465 586 430 q 476 500 530 500 q 369 467 418 500 q 289 376 319 434 q 259 245 259 317 l 259 92 l 321 92 q 354 82 345 92 q 364 46 364 71 q 354 11 364 21 q 321 0 345 0 l 102 0 q 69 11 79 0 q 59 46 59 21 q 69 82 59 71 q 102 92 79 92 l 157 92 l 157 658 l 56 658 q 23 668 33 658 q 14 704 14 679 q 23 740 14 729 q 56 750 33 750 l 157 750 l 157 798 l 95 798 q 62 808 72 798 q 52 844 52 819 q 62 879 52 869 q 95 890 72 890 l 216 890 q 249 879 239 890 q 259 844 259 869 l 259 750 l 424 750 q 457 740 447 750 q 467 704 467 729 q 457 668 467 679 q 424 658 447 658 l 259 658 l 259 465 q 361 566 303 531 q 486 601 419 601 q 593 574 548 601 q 663 497 639 547 q 688 380 688 447 l 688 92 l 743 92 z "},Ī:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 593 1031 q 626 1020 616 1031 q 636 982 636 1008 q 626 944 636 956 q 593 933 616 933 l 239 933 q 207 944 216 933 q 197 982 197 956 q 207 1020 197 1008 q 239 1031 216 1031 l 593 1031 z "},ī:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 587 848 q 620 837 610 848 q 629 799 629 825 q 620 761 629 772 q 587 750 610 750 l 233 750 q 200 761 210 750 q 190 799 190 772 q 200 837 190 825 q 233 848 210 848 l 587 848 z "},Į:{ha:833,x_min:136,x_max:697,o:"m 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 470 0 q 384 -98 410 -56 q 357 -176 357 -139 q 372 -213 357 -200 q 410 -226 386
5506-226 q 486 -214 445 -226 q 494 -213 492 -213 q 520 -250 514 -213 q 522 -267 522 -262 q 516 -290 522 -281 q 498 -302 510 -298 q 387 -320 448 -320 q 288 -285 324 -320 q 252 -191 252 -250 q 279 -94 252 -141 q 357 0 306 -47 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 z "},į:{ha:833,x_min:127,x_max:744,o:"m 419 748 q 368 758 382 748 q 355 792 355 768 l 355 880 q 368 915 355 905 q 419 924 382 924 q 470 915 456 924 q 484 880 484 905 l 484 792 q 470 758 484 768 q 419 748 456 748 m 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 484 0 q 397 -98 423 -56 q 371 -176 371 -139 q 385 -213 371 -200 q 423 -226 399 -226 q 500 -214 458 -226 q 507 -213 505 -213 q 534 -250 528 -213 q 535 -267 535 -262 q 529 -290 535 -281 q 512 -302 524 -298 q 401 -320 461 -320 q 301 -285 338 -320 q 265 -191 265 -250 q 292 -94 265 -141 q 371 0 319 -47 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 z "},İ:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 416 1107 q 467 1098 454 1107 q 481 1063 481 1088 l 481 975 q 467 941 481 951 q 416 931 454 931 q 366 941 379 931 q 352 975 352 951 l 352 1063 q 366 1098 352 1088 q 416 1107 379 1107 z "},IJ:{ha:833,x_min:14,x_max:819,o:"m 281 805 q 314 794 304 805 q 324 759 324 784 q 314 723 324 734 q 281 713 304 713 l 223 713 l 223 92 l 288 92 q 321 82 311 92 q 331 46 331 71 q 321 11 331 21 q 288 0 311 0 l 56 0 q 23 11 33 0 q 14 46 14 21 q 23 82 14 71 q 56 92 33 92 l 121 92 l 121 713 l 63 713 q 30 723 40 713 q 20 759 20 734 q 30 794 20 784 q 63 805 40 805 l 281 805 m 777 805 q 809 794 800 805 q 819 759 819 784 q 809 723 819 734 q 777 713 800 713 l 728 713 l 728 158 q 684 30 728 75 q 545 -15 639 -15 q 459 4 500 -15 q 387 54 418 22 q 376 88 376 64 l 376 281 q 388 315 376 305 q 427 326 399 326 q 467 315 455 326 q 478 281 478 305 l 478 109 q 546 85 504 85 q 607 107 588 85 q 627 178 627 130 l 627 713 l 531 713 q 498 723 508 713 q 488 759 488 734 q 498 794 488 784 q 531 805 508 805 l 777 805 z "},ij:{ha:833,x_min:39,x_max:728,o:"m 229 924 q 280 915 267 924 q 294 880 294 905 l 294 792 q 280 758 294 768 q 229 748 267 748 q 178 758 192 748 q 165 792 165 768 l 165 880 q 178 915 165 905 q 229 924 192 924 m 663 924 q 714 915 701 924 q 728 880 728 905 l 728 792 q 714 758 728 768 q 663 748 701 748 q 612 758 626 748 q 599 792 599 768 l 599 880 q 612 915 599 905 q 663 924 626 924 m 251 627 q 284 616 274 627 q 294 581 294 606 l 294 92 l 410 92 q 443 82 433 92 q 452 46 452 71 q 443 11 452 21 q 410 0 433 0 l 81 0 q 48 11 58 0 q 39 46 39 21 q 48 82 39 71 q 81 92 58 92 l 192 92 l 192 534 l 109 534 q 76 545 85 534 q 66 581 66 555 q 76 616 66 606 q 109 627 85 627 l 251 627 m 685 627 q 718 616 708 627 q 728 581 728 606 l 728 -39 q 674 -218 728 -158 q 506 -278 621 -278 q 405 -265 456 -278 q 310 -231 353 -252 q 283 -193 283 -219 q 288 -168 283 -181 q 327 -132 302 -132 q 345 -136 336 -132 q 506 -179 433 -179 q 599 -143 572 -179 q 626 -30 626 -107 l 626 534 l 475 534 q 442 545 452 534 q 432 581 432 555 q 442 616 432 606 q 475 627 452 627 l 685 627 z "},Ĵ:{ha:833,x_min:78,x_max:785,o:"m 525 1130 q 564 1116 549 1130 l 730 958 q 741 936 741 948 q 726 904 741 922 q 696 888 711 888 q 675 896 685 888 l 525 1013 l 375 896 q 354 888 365 888 q 324 904 338 888 q 309 936 309 922 q 319 958 309 948 l 486 1116 q 525 1130 500 1130 m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 606 713 l 606 226 q 537 46 606 107 q 335 -15 468 -15 q 195 13 258 -15 q 89 87 132 40 q 78 122 78 100 l 78 315 q 90 349 78 339 q 129 359 101 359 q 168 349 157 359 q 180 315 180 339 l 180 136 q 336 85 237 85 q 465 125 425 85 q 505 246 505 164 l 505 713 l 273 713 q 240 723 250 713 q 231 759 231 734 q 240 794 231 784 q 273 805 250 805 l 743 805 z "}
5506,ĵ:{ha:833,x_min:129,x_max:707,o:"m 491 947 q 530 933 515 947 l 696 775 q 707 753 707 765 q 692 721 707 739 q 662 705 677 705 q 641 713 651 705 l 491 830 l 341 713 q 320 705 331 705 q 290 721 304 705 q 275 753 275 739 q 286 775 275 765 l 452 933 q 491 947 467 947 m 570 627 q 603 616 593 627 q 612 581 612 606 l 612 -39 q 559 -218 612 -158 q 391 -278 506 -278 q 269 -257 334 -278 q 151 -202 204 -235 q 129 -167 129 -189 q 138 -136 129 -154 q 177 -105 154 -105 q 198 -112 189 -105 q 295 -161 245 -142 q 391 -179 345 -179 q 484 -143 457 -179 q 511 -30 511 -107 l 511 534 l 224 534 q 191 545 201 534 q 181 581 181 555 q 191 616 181 606 q 224 627 201 627 l 570 627 z "},Ķ:{ha:833,x_min:54,x_max:806,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 417 438 q 433 439 422 439 q 575 371 522 439 q 612 310 596 344 q 647 225 628 276 q 661 190 650 218 q 683 141 672 161 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 707 0 q 591 94 639 0 q 551 187 574 128 q 522 257 535 229 q 494 308 509 286 q 453 343 477 331 q 397 355 428 355 q 342 345 368 355 q 295 315 315 335 l 275 296 l 275 92 l 385 92 q 417 82 408 92 q 427 46 427 71 q 417 11 427 21 q 385 0 408 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 173 92 l 173 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 337 805 q 370 794 360 805 q 380 759 380 784 q 370 723 380 734 q 337 713 360 713 l 275 713 l 275 422 l 572 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 372 -357 q 336 -349 348 -357 q 325 -326 325 -340 q 326 -315 325 -323 l 369 -121 q 397 -99 374 -99 l 476 -99 q 495 -117 495 -99 q 491 -134 495 -125 l 412 -331 q 372 -357 401 -357 z "},ķ:{ha:833,x_min:45,x_max:786,o:"m 743 92 q 776 82 766 92 q 786 46 786 71 q 776 11 786 21 q 743 0 766 0 l 524 0 q 491 11 500 0 q 481 46 481 21 q 491 82 481 71 q 524 92 500 92 l 572 92 l 402 294 l 279 186 l 279 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 102 0 q 69 11 79 0 q 59 46 59 21 q 69 82 59 71 q 102 92 79 92 l 177 92 l 177 798 l 88 798 q 55 808 65 798 q 45 844 45 819 q 55 879 45 869 q 88 890 65 890 l 236 890 q 269 879 259 890 q 279 844 279 869 l 279 307 l 537 534 l 489 534 q 456 545 466 534 q 446 581 446 555 q 456 616 446 606 q 489 627 466 627 l 715 627 q 748 616 739 627 q 758 581 758 606 q 748 545 758 555 q 715 534 739 534 l 675 534 l 476 359 l 704 92 l 743 92 m 351 -357 q 316 -349 328 -357 q 304 -326 304 -340 q 306 -315 304 -323 l 349 -121 q 377 -99 354 -99 l 456 -99 q 475 -117 475 -99 q 471 -134 475 -125 l 391 -331 q 351 -357 381 -357 z "},Ĺ:{ha:833,x_min:54,x_max:746,o:"m 393 1134 q 418 1143 405 1143 q 463 1115 441 1143 q 484 1069 484 1088 q 469 1042 484 1051 l 215 894 q 193 887 203 887 q 162 904 177 887 q 146 939 146 922 q 157 960 146 952 l 393 1134 m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 473 805 z "},ĺ:{ha:833,x_min:120,x_max:737,o:"m 508 1202 q 533 1211 520 1211 q 578 1183 556 1211 q 599 1137 599 1156 q 584 1110 599 1119 l 330 962 q 309 955 318 955 q 277 972 292 955 q 261 1007 261 990 q 272 1028 261 1020 l 508 1202 m 434 890 q 467 879 457 890 q 477 844 477 869 l 477 92 l 694 92 q 727 82 718 92 q 737 46 737 71 q 727 11 737 21 q 694 0 718 0 l 163 0 q 130 11 140 0 q 120 46 120 21 q 130 82 120 71 q 163 92 140 92 l 375 92 l 375 798 l 190 798 q 157 808 167 798 q 147 844 147 819 q 157 879 147 869 q 190 890 167 890 l 434 890 z "},Ļ:{ha:833,x_min:54,x_max:746,o:"m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 473 805 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},ļ:{ha:833,x_min:120,x_max:737,o:"m 434 890 q 467 879 457 890 q 477 844 477 869 l 477 92 l 694 92 q 727 82 718 92 q 737 46 737 71 q 727 11 737 21 q 694 0 718 0 l 163 0 q 130 11 140 0 q 120 46 120 21 q 130 82 120 71 q 163 92 140 92 l 375 92 l 375 798 l 190 798 q 157 808 167 798 q 147 844 147 819 q 157 879 147 869 q 190 890 167 890 l 434 890 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},Ľ:{ha:833,x_min:54,x_max:772,o:"m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 473 805 m 753 805 q 767 800 762 805 q 772 787 772 795 q 768 770 772 781 l 677 524 q 627 500 669 500 q 598 507 608 500 q 588 528 588 515 q 589 538 588 531 l 645 783 q 673 805 650 805 l 753 805 z "},ľ:{ha:833,x_min:100,x_max:765,o:"m 414 890 q 447 879 437 890 q 456 844 456 869 l 456 92 l 674 92 q 707 82 697 92 q 717 46 717 71 q 707 11 717 21 q 674 0 697 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 355 92 l 355 798 l 170 798 q 137 808 146 798 q 127 844 127 819 q 137 879 127 869 q 170 890 146 890 l 414 890 m 747 890 q 760 885 755 890 q 765 871 765 880 q 762 855 765 865 l 671 609 q 621 585 662 585 q 591 592 602 585 q 581 613 581 600 q 583 623 581 616 l 638 868 q 667 890 644 890 l 747 890 z "},Å:{ha:833,x_min:41,x_max:746,o:"m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 485 l 448 580 q 475 591 465 591 q 510 566 493 591 q 522 535 522 547 q 500 504 522 518 l 309 373 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 304 l 115 241 q 87 231 98 231 q 53 256 70 231 q 41 286 41 274 q 62 317 41 303 l 207 416 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 473 805 z "},Å:{ha:833,x_min:120,x_max:737,o:"m 434 890 q 467 879 457 890 q 477 844 477 869 l 477 558 l 590 635 q 617 646 606 646 q 652 621 635 646 q 664 591 664 603 q 642 559 664 574 l 477 447 l 477 92 l 694 92 q 727 82 718 92 q 737 46 737 71 q 727 11 737 21 q 694 0 718 0 l 163 0 q 130 11 140 0 q 120 46 120 21 q 130 82 120 71 q 163 92 140 92 l 375 92 l 375 378 l 256 297 q 229 286 240 286 q 195 311 212 286 q 182 342 182 330 q 204 373 182 359 l 375 489 l 375 798 l 190 798 q 157 808 167 798 q 147 844 147 819 q 157 879 147 869 q 190 890 167 890 l 434 890 z "},Å:{ha:833,x_min:47,x_max:785,o:"m 528 1134 q 553 1143 541 1143 q 599 1115 576 1143 q 619 1069 619 1088 q 604 1042 619 1051 l 351 894 q 329 887 338 887 q 298 904 313 887 q 281 939 281 922 q 292 960 281 952 l 528 1134 m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 25 q 691 -4 704 7 q 653 -15 679 -15 q 596 22 617 -15 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},Å:{ha:833,x_min:52,x_max:793,o:"m 493 642 q 600 615 555 642 q 670 538 646 588 q 694 420 694 488 l 694 92 l 750 92 q 783 82 773 92 q 793 46 793 71 q 783 11 793 21 q 750 0 773 0 l 530 0 q 497 11 507 0 q 488 46 488 21 q 497 82 488 71 q 530 92 507 92 l 593 92 l 593 410 q 565 506 593 471 q 483 541 537 541 q 375 508 425 541 q 296 416 326 475 q 266 286 266 358 l 266 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 109 0 q 76 11 85 0 q 66 46 66 21 q 76 82 66 71 q 109 92 85 92 l 164 92 l 164 534 l 95 534 q 62 545 72 534 q 52 581 52 555 q 62 616 52 606 q 95 627 72 627 l 216 627 q 249 616 239 627 q 259 581 259 606 l 259 499 q 364 605 304 568 q 493 642 424 642 m 528 951 q 553 960 541 960 q 599 932 576 960 q 619 886 619 905 q 604 859 619 868 l 351 711 q 329 704 338 704 q 298 721 313 704 q 281 756 281 739 q 292 777 281 769 l 528 951 z "},Å
:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 25 q 691 -4 704 7 q 653 -15 679 -15 q 596 22 617 -15 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},Å:{ha:833,x_min:52,x_max:793,o:"m 493 642 q 600 615 555 642 q 670 538 646 588 q 694 420 694 488 l 694 92 l 750 92 q 783 82 773 92 q 793 46 793 71 q 783 11 793 21 q 750 0 773 0 l 530 0 q 497 11 507 0 q 488 46 488 21 q 497 82 488 71 q 530 92 507 92 l 593 92 l 593 410 q 565 506 593 471 q 483 541 537 541 q 375 508 425 541 q 296 416 326 475 q 266 286 266 358 l 266 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 109 0 q 76 11 85 0 q 66 46 66 21 q 76 82 66 71 q 109 92 85 92 l 164 92 l 164 534 l 95 534 q 62 545 72 534 q 52 581 52 555 q 62 616 52 606 q 95 627 72 627 l 216 627 q 249 616 239 627 q 259 581 259 606 l 259 499 q 364 605 304 568 q 493 642 424 642 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},Å:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 25 q 691 -4 704 7 q 653 -15 679 -15 q 596 22 617 -15 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 416 889 q 377 903 392 889 l 211 1061 q 200 1083 200 1071 q 216 111
55065 200 1097 q 245 1131 230 1131 q 267 1123 256 1131 l 416 1006 l 566 1123 q 587 1131 576 1131 q 617 1115 603 1131 q 633 1083 633 1097 q 622 1061 633 1071 l 456 903 q 416 889 441 889 z "},Å:{ha:833,x_min:52,x_max:793,o:"m 493 642 q 600 615 555 642 q 670 538 646 588 q 694 420 694 488 l 694 92 l 750 92 q 783 82 773 92 q 793 46 793 71 q 783 11 793 21 q 750 0 773 0 l 530 0 q 497 11 507 0 q 488 46 488 21 q 497 82 488 71 q 530 92 507 92 l 593 92 l 593 410 q 565 506 593 471 q 483 541 537 541 q 375 508 425 541 q 296 416 326 475 q 266 286 266 358 l 266 92 l 328 92 q 361 82 351 92 q 371 46 371 71 q 361 11 371 21 q 328 0 351 0 l 109 0 q 76 11 85 0 q 66 46 66 21 q 76 82 66 71 q 109 92 85 92 l 164 92 l 164 534 l 95 534 q 62 545 72 534 q 52 581 52 555 q 62 616 52 606 q 95 627 72 627 l 216 627 q 249 616 239 627 q 259 581 259 606 l 259 499 q 364 605 304 568 q 493 642 424 642 m 416 706 q 377 720 392 706 l 211 878 q 200 900 200 888 q 216 932 200 914 q 245 948 230 948 q 267 940 256 948 l 416 823 l 566 940 q 587 948 576 948 q 617 932 603 948 q 633 900 633 914 q 622 878 633 888 l 456 720 q 416 706 441 706 z "},Å:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 593 1031 q 626 1020 616 1031 q 636 982 636 1008 q 626 944 636 956 q 593 933 616 933 l 239 933 q 207 944 216 933 q 197 982 197 956 q 207 1020 197 1008 q 239 1031 216 1031 l 593 1031 z "},Å:{ha:833,x_min:90,x_max:743,o:"m 593 848 q 626 837 616 848 q 636 799 636 825 q 626 761 636 772 q 593 750 616 750 l 239 750 q 207 761 216 750 q 197 799 197 772 q 207 837 197 825 q 239 848 216 848 l 593 848 m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 z "},Å:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 460 1118 q 490 1080 490 1099 q 477 1055 490 1067 l 294 897 q 269 888 283 888 q 235 899 254 888 q 215 927 215 912 q 222 943 215 936 l 382 1114 q 420 1131 398 1131 q 460 1118 439 1131 m 718 1118 q 748 1080 748 1099 q 735 1055 748 1067 l 552 897 q 527 888 541 888 q 493 899 512 888 q 473 927 473 912 q 479 943 473 936 l 640 1114 q 677 1131 656 1131 q 718 1118 696 1131 z "},Å:{ha:833,x_min:90,x_max:748,o:"m 460 935 q 490 897 490 916 q 477 872 490 884 l 294 714 q 269 705 283 705 q 235 716 254 705 q 215 744 215 729 q 222 760 215 753 l 382 931 q 420 948 398 948 q 460 935 439 948 m 718 935 q 748 897 748 916 q 735 872 748 884 l 552 714 q 527 705 541 705 q 493 716 512 705 q 473 744 473 729 q 479 760 473 753 l 640 931 q 677 948 656 948 q 718 935 696 948 m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 z "},Å:{ha:833,x_min:42,x_max:772,o:"m 721 805 q 754 794 744 805 q 764 759 764 784 l 764 587 q 752 553 764 563 q 713 543 741 543 q 673 553 685 543 q 662 587 662 563 l 662 713 l 486 713 l 486 465 l 616 465 q 649 454 639 465 q 659 418 659 444 q 649 383 659 393 q 616 372 639 372 l 486 372 l 486 92 l 670 92 l 670 248 q 682 281 670 271 q 721 292 693 292 q 760 281 749 292 q 772 248 772 271 l 772 46 q 762 11 772 21 q 729 0 752 0 l 389 0 q 206 48 285 0 q 85 188 127 97 q 42 402 42 278 q 85 617 42 526 q 206 756 127 708 q 389 805 285 805 l 721 805 m 384 712 q 260 673 313 709 q 178 568 207 637 q 149 402 149 499 q 178 236 149 305 q 260 131 207 168 q 384 92 313 95 l 384 712 z "},Å:{ha:833,x_min:47,x_max:781,o:"m 578 642 q 729 563 682 642 q 781 340 777 484 q 771 308 781 317 q 738 298 761 298 l 467 298 q 578 83 471 83 q 638 96 611 83 q 694 136 665 109 q 720 148 705 148 q 758 127 741 148 q 772 93 772 110 q 754 57 772 74 q 672 3 717 22 q 578 -15 627 -15 q 484 8 526 -15 q 416 79 443 32 q 259 -15 365 -15 q 101 70 155 -15 q 47 313 47 155 q 101 5
550656 47 471 q 259 642 155 642 q 416 547 365 642 q 484 618 443 594 q 578 642 526 642 m 580 543 q 505 508 532 543 q 471 393 479 473 l 674 393 q 647 505 669 467 q 580 543 625 543 m 259 541 q 180 487 205 541 q 155 313 155 432 q 180 140 155 195 q 259 85 205 85 q 338 140 313 85 q 363 313 363 195 q 338 487 363 432 q 259 541 313 541 z "},Å:{ha:833,x_min:54,x_max:806,o:"m 515 1134 q 540 1143 527 1143 q 585 1115 563 1143 q 606 1069 606 1088 q 591 1042 606 1051 l 337 894 q 315 887 325 887 q 284 904 299 887 q 268 939 268 922 q 279 960 268 952 l 515 1134 m 440 805 q 586 777 525 805 q 678 696 646 748 q 709 576 709 645 q 659 446 709 499 q 522 372 609 392 q 585 324 559 357 q 621 269 606 296 q 654 201 635 241 q 683 141 673 160 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 714 0 q 645 21 673 0 q 591 94 617 43 q 554 173 576 124 q 521 242 534 218 q 491 292 509 267 q 442 335 471 320 q 374 349 414 349 l 281 349 l 281 92 l 370 92 q 402 82 393 92 q 412 46 412 71 q 402 11 412 21 q 370 0 393 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 180 92 l 180 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 440 805 m 281 441 l 419 441 q 602 576 602 441 q 556 677 602 642 q 426 713 510 713 l 281 713 l 281 441 z "},Å:{ha:833,x_min:100,x_max:750,o:"m 564 951 q 589 960 576 960 q 634 932 612 960 q 654 886 654 905 q 640 859 654 868 l 386 711 q 364 704 374 704 q 333 721 348 704 q 317 756 317 739 q 328 777 317 769 l 564 951 m 624 642 q 723 614 677 642 q 750 572 750 598 q 744 544 750 560 q 705 505 730 505 q 686 511 694 505 q 614 529 652 529 q 492 487 553 529 q 390 374 430 444 q 351 224 351 303 l 351 92 l 579 92 q 612 82 602 92 q 622 46 622 71 q 612 11 622 21 q 579 0 602 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 249 92 l 249 534 l 163 534 q 130 545 140 534 q 120 581 120 555 q 130 616 120 606 q 163 627 140 627 l 301 627 q 334 616 324 627 q 344 581 344 606 l 344 444 q 422 548 376 503 q 521 617 469 593 q 624 642 573 642 z "},Å:{ha:833,x_min:54,x_max:806,o:"m 440 805 q 586 777 525 805 q 678 696 646 748 q 709 576 709 645 q 659 446 709 499 q 522 372 609 392 q 585 324 559 357 q 621 269 606 296 q 654 201 635 241 q 683 141 673 160 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 714 0 q 645 21 673 0 q 591 94 617 43 q 554 173 576 124 q 521 242 534 218 q 491 292 509 267 q 442 335 471 320 q 374 349 414 349 l 281 349 l 281 92 l 370 92 q 402 82 393 92 q 412 46 412 71 q 402 11 412 21 q 370 0 393 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 180 92 l 180 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 440 805 m 281 441 l 419 441 q 602 576 602 441 q 556 677 602 642 q 426 713 510 713 l 281 713 l 281 441 m 385 -357 q 350 -349 361 -357 q 338 -326 338 -340 q 340 -315 338 -323 l 382 -121 q 411 -99 388 -99 l 490 -99 q 509 -117 509 -99 q 505 -134 509 -125 l 425 -331 q 385 -357 415 -357 z "},Å:{ha:833,x_min:100,x_max:750,o:"m 624 642 q 723 614 677 642 q 750 572 750 598 q 744 544 750 560 q 705 505 730 505 q 686 511 694 505 q 614 529 652 529 q 492 487 553 529 q 390 374 430 444 q 351 224 351 303 l 351 92 l 579 92 q 612 82 602 92 q 622 46 622 71 q 612 11 622 21 q 579 0 602 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 249 92 l 249 534 l 163 534 q 130 545 140 534 q 120 581 120 555 q 130 616 120 606 q 163 627 140 627 l 301 627 q 334 616 324 627 q 344 581 344 606 l 344 444 q 422 548 376 503 q 521 617 469 593 q 624 642 573 642 m 283 -357 q 248 -349 260 -357 q 237 -326 237 -340 q 238 -315 237 -323 l 281 -121 q 309 -99 286 -99 l 388 -99 q 407 -117 407 -99 q 403 -134 407 -125 l 323 -331 q 283 -357 313 -357 z "},Å:{ha:833,x_min:54,x_max:806,o:"m 440 805 q 586 777 525 805 q 678 696 646 748 q 709 576 709 645 q 659 446 709 499 q 522 372 609 392 q 585 324 559 357 q 621 269 606 296 q 654 201 635 241 q 683 141 673 160 q 744 92 709 92 l 763 92 q 796 82 786 92 q 806 46 806 71 q 796 11 806 21 q 763 0 786 0 l 714 0 q 645 21 673 0 q 591 94 617 43 q 554 173 576 124 q 521 242 534 218 q 491 292 509 267 q 442 335 471 320 q 374 349 414 349 l 281 349 l 281 92 l 370 92 q 402 82 393 92 q 412 46 412 71 q 402 11 412 21 q 370 0 393 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 180 92 l 180 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 440 805 m 281 441 l 419 441 q 602 576 602 441 q 556 677 602 642 q 426 713 510 713 l 281 713 l 281 441 m 403 889 q 363 903 378 889 l 197 1061 q 186 1083 186 1071 q 202 1115 186 1097 q 232 1131 216 1131 q 253 1123 243 1131 l 403 1006 l 553 1123 q 574 1131 563 1131 q 604 1115 589 1131 q 619 1083 619 1097 q 608 1061 619 1071 l 442 903 q 403 889 427 889 z "},Å:{ha:833,x_min:100,x_max:750,o:"m 624 642 q 723 614 677 642 q 750 572 750 598 q 744 544 750 560 q 705 505 730 505 q 686 511 694 505 q 614 529 652 529 q 492 487 553 529 q 390 374 430 444 q 351 224 351 303 l 351 92 l 579 92 q 612 82 602 92 q 622 46 622 71 q 612 11 622 21 q 579 0 602 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 249 92 l 249 534 l 163 534 q 130 545 140 534 q 120 581 120 555 q 130 616 120 606 q 163 627 140 627 l 301 627 q 334 616 324 627 q 344 581 344 606 l 344 444 q 422 548 376 503 q 521 617 469 593 q 624 642 573 642 m 437 706 q 397 720 412 706 l 231 878 q 220 900 220 888 q 236 932 220 914 q 266 948 250 948 q 287 940 277 948 l 437 823 l 587 940 q 608 948 597 948 q 637 932 623 948 q 653 900 653 914 q 642 878 653 888 l 476 720 q 437 706 461 706 z "},Å:{ha:833,x_min:107,x_max:722,o:"m 640 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 q 689 98 722 151 q 591 15 656 45 q 435 -15 526 -15 q 310 10 368 -15 q 209 82 252 35 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 m 515 1134 q 540 1143 527 1143 q 585 1115 563 1143 q 606 1069 606 1088 q 591 1042 606 1051 l 337 894 q 315 887 325 887 q 284 904 299 887 q 268 939 268 922 q 279 960 268 952 l 515 1134 z "},Å:{ha:833,x_min:121,x_max:712,o:"m 630 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 q 681 81 712 127 q 591 10 650 35 q 449 -15 532 -15 q 320 5 376 -15 q 223 67 264 26 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363 180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 m 515 951 q 540 960 527 960 q 585 932 563 960 q 606 886 606 905 q 591 859 606 868 l 337 711 q 315 704 325 704 q 284 721 299 704 q 268 756 268 739 q 279 777 268 769 l 515 951 z "},Å:{ha:833,x_min:107,x_max:722,o:"m 414 1130 q 453 1116 438 1130 l 619 958 q 630 936 630 948 q 614 904 630 922 q 585 888 600 888 q 564 896 574 888 l 414 1013 l 264 896 q 243 888 254 888 q 213 904 227 888 q 197 936 197 922 q 208 958 197 948 l 374 1116 q 414 1130 389 1130 m 640 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 q 689 98 722 151 q 591 15 656 45 q 435 -15 526 -15 q 310 10 368 -15 q 209 82 252 35 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 z "},Å:{ha:833,x_min:121,x_max:712,o:"m 410 947 q 449 933 434 947 l 615 775 q 626 753 626 765 q 610 721 626 739 q 581 705 596 705 q 559 713 570 705 l 410 830 l 260 713 q 239 705 250 705 q 209 721 223 705 q 193 753 193 739 q 204 775 193 765 l 370 933 q 410 947 385 947 m 630 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 q 681 81 712 127 q 591 10 650 35 q 449 -15 532 -15 q 320 5 376 -15 q 223 67 264 26 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363 180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 z "},Å:{ha:833,x_min:107,x_max:722,o:"m 722 222 q 692 104 722 155 q 604 21 663 52 q 463 -14 546 -9 l 463 -77 q 566 -108 532 -76 q 601 -191 601 -140 q 559 -285 601 -250 q 435 -320 517 -320 q 345 -312 389 -320 q 267 -288 302 -304 q 252 -264 252 -281 q 257 -240 252 -254 q 288 -210 269 -210 q 297 -211 294 -210 q 361 -229 326 -222 q 428 -237 396 -237 q 482 -225 463 -237 q 502 -193 502 -214 q 484 -160 502 -171 q 423 -149 465 -149 l 397 -150 q 380 -143 387 -150 q 374 -120 374 -136 l 374 -9 q 209 82 273 9 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 z "},Å:{ha:833,x_min:121,x_max:712,o:"m 712 188 q 684 85 712 130 q 601 15 656 41 q 470 -14 547 -12 l 470 -77 q 573 -108 538 -76 q 608 -191 608 -140 q 566 -285 608 -250 q 441 -320 524 -320 q 352 -312 395 -320 q 274 -288 309 -304 q 258 -264 258 -281 q 264 -240 258 -254 q 295 -210 275 -210 q 304 -211 300 -210 q 368 -229 333 -222 q 435 -237 403 -237 q 489 -225 469 -237 q 509 -193 509 -214 q 490 -160 509 -171 q 430 -149 472 -149 l 404 -150 q 387 -143 393 -150 q 380 -120 380 -136 l 380 -10 q 223 67 286 5 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363 180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 z "},Å :{ha:833,x_min:107,x_max:722,o:"m 640 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 q 689 98 722 151 q 591 15 656 45 q 435 -15 526 -15 q 310 10 368 -15 q 209 82 252 35 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 m 399 889 q 360 903 375 889 l 194 1061 q 183 1083 183 1071 q 199 1115 183 1097 q 229 1131 213 1131 q 250 1123 239 1131 l 399 1006 l 549 1123 q 570 1131 559 1131 q 600 1115 586 1131 q 616 1083 616 1097 q 605 1061 616 1071 l 439 903 q 399 889 424 889 z "},Å¡:{ha:833,x_min:121,x_max:712,o:"m 630 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 q 681 81 712 127 q 591 10 650 35 q 449 -15 532 -15 q 320 5 376 -15 q 223 67 264 26 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363 180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 m 412 706 q 372 720 387 706 l 206 878 q 195 900 195 888 q 211 932 195 914 q 241 948 225 948 q 262 940 252 948 l 412 823 l 562 940 q 583 948 572 948 q 612 932 598 948 q 628 900 628 914 q 617 878 628 888 l 451 720 q 412 706 436 706 z "},È:{ha:833,x_min:83,x_max:750,o:"m 707 805 q 740 794 730 805 q 750 759 750 784 l 750 503 q 739 469 750 479 q 699 459 727 459 q 660 469 671 459 q 648 503 648 479 l 648 713 l 467 713 l 467 92 l 627 92 q 660 82 650 92 q 670 46 670 71 q 660 11 670 21 q 627 0 650 0 l 205 0 q 173 11 182 0 q 163 46 163 21 q 173 82 163 71 q 205 92 182 92 l 366 92 l 366 713 l 184 713 l 184 503 q 173 469 184 479 q 134 459 161 459 q 94 469 106 459 q 83 503 83 479 l 83 759 q 93 794 83 784 q 125 805 102 805 l 707 805 m 358 -357 q 323 -349 334 -357 q 311 -326 311 -340 q 313 -315 311 -323 l 355 -121 q 384 -99 361 -99 l 463 -99 q 481 -117 481 -99 q 477 -134 481 -125 l 398 -331 q 358 -357 388 -357 z "},È:{ha:833,x_min:79,x_max:743,o:"m 311 820 q 350 810 338 820 q 361 776 361 800 l 361 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 361 480 l 361 233 q 388 120 361 156 q 481 84 415 84 q 577 102 527 84 q 674 151 627 121 q 695 158 684 158 q 734 127 718 158 q 743 96 743 109 q 721 61 743 75 q 603 6 668 28 q 481 -15 538 -15 q 313 45 366 -15 q 260 224 260 105 l 260 480 l 122 480 q 89 491 99 480 q 79 526 79 501 q 89 562 79 551 q 122 572 99 572 l 260 572 l 260 776 q 271 810 260 800 q 311 820 283 820 m 399 -357 q 363 -349 375 -357 q 352 -326 352 -340 q 353 -315 352 -323 l 396 -121 q 425 -99 401 -99 l 503 -99 q 522 -117 522 -99 q 518 -134 522 -125 l 439 -331 q 399 -357 429 -357 z "},Ť:{ha:833,x_min:83,x_max:750,o:"m 707 805 q 740 794 730 805 q 750 759 750 784 l 750 503 q 739 469 750 479 q 699 459 727 459 q 660 469 671 459 q 648 503 648 479 l 648 713 l 467 713 l 467 92 l 627 92 q 660 82 650 92 q 670 46 670 71 q 660 11 670 21 q 627 0 650 0 l 205 0 q 173 11 182 0 q 163 46 163 21 q 173 82 163 71 q 205 92 182 92 l 366 92 l 366 713 l 184 713 l 184 503 q 173 469 184 479 q 134 459 161 459 q 94 469 106 459 q 83 503 83 479 l 83 759 q 93 794 83 784 q 125 805 102 805 l 707 805 m 416 889 q 377 903 392 889 l 211 1061 q 200 1083 200 1071 q 216 1115 200 1097 q 245 1131 230 1131 q 267 1123 256 1131 l 416 1006 l 566 1123 q 587 1131 576 1131 q 617 1115 603 1131 q 633 1083 633 1097 q 622 1061 633 1071 l 456 903 q 416 889 441 889 z "},Å¥:{ha:833,x_min:79,x_max:743,o:"m 311 820 q 350 810 338 820 q 361 776 361 800 l 361 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 361 480 l 361 233 q 388 120 361 156 q 481 84 415 84 q 577 102 527 84 q 674 151 627 121 q 695 158 684 158 q 734 127 718 158 q 743 96 743 109 q 721 61 743 75 q 603 6 668 28 q 481 -15 538 -15 q 313 45 366 -15 q 260 224 260 105 l 260 480 l 122 480 q 89 491 99 480 q 79 526 79 501 q 89 562 79 551 q 122 572 99 572 l 260 572 l 260 776 q 271 810 260 800 q 311 820 283 820 m 555 692 q 519 700 531 692 q 508 722 508 708 q 509 733 508 725 l 552 928 q 581 949 557 949 l 659 949 q 678 932 678 949 q 674 915 678 924 l 595 718 q 555 692 585 692 z "},Ū:{ha:833,x_min:47,x_max:785,o:"m 593 1031 q 626 1020 616 1031 q 636 982 636 1008 q 626 944 636 956 q 593 933 616 933 l 239 933 q 207 944 216 933 q 197 982 197 956 q 207 1020 197 1008 q 239 1031 216 1031 l 593 1031 m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},Å«:{ha:833,x_min:49,x_max:776,o:"m 593 848 q 626 837 616 848 q 636 799 636 825 q 626 761 636 772 q 593 750 616 750 l 239 750 q 207 761 216 750 q 197 799 197 772 q 207 837 197 825 q 239 848 216 848 l 593 848 m 635 627 q 668
5506616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 z "},Ŭ:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 602 1112 q 630 1100 621 1107 q 639 1079 639 1092 q 638 1070 639 1074 q 566 951 623 994 q 416 909 509 909 q 267 951 323 909 q 195 1070 210 994 q 194 1079 194 1074 q 203 1100 194 1092 q 231 1112 212 1107 q 250 1114 241 1114 q 279 1097 273 1114 q 328 1026 294 1049 q 416 1003 362 1003 q 505 1026 471 1003 q 554 1097 539 1049 q 583 1114 560 1114 q 602 1112 592 1114 z "},Å:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 589 928 q 616 917 608 924 q 625 896 625 909 q 625 887 625 890 q 552 768 609 810 q 403 726 496 726 q 253 768 310 726 q 181 887 197 810 q 180 896 180 890 q 189 917 180 909 q 217 928 198 924 q 236 930 227 930 q 265 914 259 930 q 315 843 281 866 q 403 820 349 820 q 492 843 458 820 q 541 914 526 866 q 570 930 547 930 q 589 928 578 930 z "},Å®:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 416 1239 q 502 1217 463 1239 q 562 1157 540 1196 q 583 1072 583 1119 q 562 987 583 1025 q 502 927 540 949 q 416 905 463 905 q 331 927 370 905 q 271 987 293 949 q 250 1072 250 1025 q 271 1157 250 1119 q 331 1217 293 1196 q 416 1239 370 1239 m 416 1149 q 360 1128 381 1149 q 339 1072 339 1107 q 360 1016 339 1037 q 416 995 381 995 q 473 1016 452 995 q 494 1072 494 1037 q 473 1128 494 1107 q 416 1149 452 1149 z "},ů:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 396 1056 q 481 1034 443 1056 q 541 974 519 1013 q 563 889 563 936 q 541 804 563 842 q 481 744 519 766 q 396 722 443 722 q 311 744 349 722 q 251 804 273 766 q 229 889 229 842 q 251 974 229 936 q 311 1034 273 1013 q 396 1056 349 1056 m 396 966 q 340 945 361 966 q 319 889 319 924 q 340 833 319 854 q 396 812 361 812 q 452 833 431 812 q 473 889 473 854 q 452 945 473 924 q 396 966 431 966 z "},Ű:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 m 460 1118 q 490 1080 490 1099 q 477 1055 490 1067 l 294 897 q 269 888 283 888 q 235 899 254 888 q 215 927 215 912 q 222 943 215 936 l 382 1114 q 420 1131 398 1131 q 460 1118 439 1131 m 718 1118 q 748 1080 748 1099 q 735 1055 748 1067 l 552 897 q 527 888 541 888 q 493 899 512 888 q 473 927 473 912 q 479 943 473 936 l 640 1114 q 677 1131 656 1131 q 718 1118 696 1131 z "}
5506,ű:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 433 935 q 463 897 463 916 q 450 872 463 884 l 267 714 q 242 705 256 705 q 208 716 227 705 q 188 744 188 729 q 195 760 188 753 l 355 931 q 393 948 371 948 q 433 935 412 948 m 690 935 q 721 897 721 916 q 708 872 721 884 l 525 714 q 500 705 513 705 q 466 716 485 705 q 446 744 446 729 q 452 760 446 753 l 613 931 q 650 948 629 948 q 690 935 669 948 z "},Ų:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 667 108 701 171 q 568 15 633 45 q 469 -92 498 -47 q 439 -176 439 -136 q 453 -213 439 -200 q 491 -226 467 -226 q 568 -214 526 -226 q 575 -213 573 -213 q 602 -250 595 -213 q 603 -267 603 -262 q 597 -290 603 -281 q 580 -302 591 -298 q 469 -320 529 -320 q 369 -285 406 -320 q 333 -191 333 -250 q 356 -101 333 -144 q 423 -15 379 -58 l 416 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},ų:{ha:833,x_min:49,x_max:776,o:"m 740 -214 q 747 -213 745 -213 q 774 -250 768 -213 q 775 -267 775 -262 q 769 -290 775 -281 q 752 -302 764 -298 q 641 -320 701 -320 q 542 -285 578 -320 q 505 -191 505 -250 q 533 -94 505 -140 q 612 1 560 -47 q 590 14 597 3 q 583 45 583 24 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 724 0 q 637 -98 663 -56 q 611 -176 611 -139 q 625 -213 611 -200 q 663 -226 640 -226 q 740 -214 699 -226 z "},Ÿ:{ha:833,x_min:41,x_max:792,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 467 334 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 334 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 m 274 1107 q 325 1098 311 1107 q 338 1063 338 1088 l 338 975 q 325 941 338 951 q 274 931 311 931 q 223 941 237 931 q 210 975 210 951 l 210 1063 q 223 1098 210 1088 q 274 1107 237 1107 m 559 1107 q 610 1098 596 1107 q 623 1063 623 1088 l 623 975 q 610 941 623 951 q 559 931 596 931 q 508 941 522 931 q 494 975 494 951 l 494 1063 q 508 1098 494 1088 q 559 1107 522 1107 z "},Ź:{ha:833,x_min:113,x_max:718,o:"m 669 805 q 702 794 692 805 q 712 759 712 784 q 705 732 712 742 l 256 92 l 616 92 l 616 275 q 628 309 616 298 q 667 319 640 319 q 707 309 695 319 q 718 275 718 298 l 718 46 q 708 11 718 21 q 675 0 699 0 l 156 0 q 123 11 133 0 q 113 46 113 21 q 123 75 113 61 l 570 713 l 229 713 l 229 544 q 218 510 229 520 q 178 500 206 500 q 139 510 151 500 q 127 544 127 520 l 127 759 q 137 794 127 784 q 170 805 147 805 l 669 805 m 528 1134 q 553 1143 541 1143 q 599 1115 576 1143 q 619 1069 619 1088 q 604 1042 619 1051 l 351 894 q 329 887 338 887 q 298 904 313 887 q 281 939 281 922 q 292 960 281 952 l 528 1134 z "},ź:{ha:833,x_min:121,x_max:712,o:"m 663 627 q 695 616 686 627 q 705 581 705 606 q 695 549 705 561 l 281 92 l 610 92 l 610 209 q 622 243 610 233 q 661 253 633 253 q 701 243 689 253 q 712 209 712 233 l 712 46 q 702 11 712 21 q 669 0 692 0 l 163 0 q 131 11 140 0 q 121 46 121 21 q 130 77 121 66 l 545 534 l 236 534 l 236 433 q 224 399 236 410 q 185 389 213 389 q 146 399 157 389 q 134 433 134 410 l 134 581 q 144 616 134 606 q 177 627 154 627 l 663 627 m 522 951 q 547 960 534 960 q 592 932 570 960 q 612 886 612 905 q 597 859 612 868 l 344 711 q 322 704 332 704 q 291 721 306 704 q 275 756 275 739 q 286 777 275 769 l 522 951 z "},Å»:{ha:833,x_min:113,x_max:718,o:"m 416 1107 q 467 1098 454 1107 q 481 1063 481 1088 l 481 975 q 467 941 481 951 q 416 931 454 931 q 366 941 379 931 q 352 975 352 951 l 352 1063 q 366 1098 352 1088 q 416 1107 379 1107 m 669 805 q 702 794 692 805 q 712 759 712 784 q 705 732 712 742 l 256 92 l 616 92 l 616 275 q 628 309 616 298 q 667 319 640 319 q 707 309 695 319 q 718 275 718 298 l 718 46 q 708 11 718 21 q 675 0 699 0 l 156 0 q 123 11 133 0 q 113 46 113 21 q 123 75 113 61 l 570 713 l 229 713 l 229 544 q 218 510 229 520 q 178 500 206 500 q 139 510 151 500 q 127 544 127 520 l 127 759 q 137 794 127 784 q 170 805 147 805 l 669 805 z "},ż:{ha:833,x_min:121,x_max:712,o:"m 663 627 q 695 616 686 627 q 705 581 705 606 q 695 549 705 561 l 281 92 l 610 92 l 610 209 q 622 243 610 233 q 661 253 633 253 q 701 243 689 253 q 712 209 712 233 l 712 46 q 702 11 712 21 q 669 0 692 0 l 163 0 q 131 11 140 0 q 121 46 121 21 q 130 77 121 66 l 545 534 l 236 534 l 236 433 q 224 399 236 410 q 185 389 213 389 q 146 399 157 389 q 134 433 134 410 l 134 581 q 144 616 134 606 q 177 627 154 627 l 663 627 m 423 924 q 474 915 460 924 q 488 880 488 905 l 488 792 q 474 758 488 768 q 423 748 460 748 q 372 758 386 748 q 359 792 359 768 l 359 880 q 372 915 359 905 q 423 924 386 924 z "},Ž:{ha:833,x_min:113,x_max:718,o:"m 669 805 q 702 794 692 805 q 712 759 712 784 q 705 732 712 742 l 256 92 l 616 92 l 616 275 q 628 309 616 298 q 667 319 640 319 q 707 309 695 319 q 718 275 718 298 l 718 46 q 708 11 718 21 q 675 0 699 0 l 156 0 q 123 11 133 0 q 113 46 113 21 q 123 75 113 61 l 570 713 l 229 713 l 229 544 q 218 510 229 520 q 178 500 206 500 q 139 510 151 500 q 127 544 127 520 l 127 759 q 137 794 127 784 q 170 805 147 805 l 669 805 m 422 889 q 382 903 397 889 l 216 1061 q 205 1083 205 1071 q 221 1115 205 1097 q 251 1131 235 1131 q 272 1123 262 1131 l 422 1006 l 572 1123 q 593 1131 582 1131 q 623 1115 608 1131 q 638 1083 638 1097 q 627 1061 638 1071 l 461 903 q 422 889 446 889 z "},ž:{ha:833,x_min:121,x_max:712,o:"m 663 627 q 695 616 686 627 q 705 581 705 606 q 695 549 705 561 l 281 92 l 610 92 l 610 209 q 622 243 610 233 q 661 253 633 253 q 701 243 689 253 q 712 209 712 233 l 712 46 q 702 11 712 21 q 669 0 692 0 l 163 0 q 131 11 140 0 q 121 46 121 21 q 130 77 121 66 l 545 534 l 236 534 l 236 433 q 224 399 236 410 q 185 389 213 389 q 146 399 157 389 q 134 433 134 410 l 134 581 q 144 616 134 606 q 177 627 154 627 l 663 627 m 423 699 q 384 713 399 699 l 218 871 q 207 893 207 881 q 222 925 207 907 q 252 941 237 941 q 273 933 263 941 l 423 816 l 573 933 q 594 941 583 941 q 624 925 610 941 q 640 893 640 907 q 629 871 640 881 l 463 713 q 423 699 448 699 z "},Æ:{ha:833,x_min:22,x_max:781,o:"m 610 893 q 753 872 688 893 q 781 837 781 863 q 777 812 781 827 q 739 772 766 772 q 724 774 734 772 q 600 794 662 794 q 520 763 549 794 q 484 667 491 732 l 475 572 l 633 572 q 666 562 656 572 q 676 526 676 551 q 666 491 676 501 q 633 480 656 480 l 465 480 l 420 28 q 349 -133 409 -76 q 193 -189 290 -189 q 50 -168 116 -189 q 22 -133 22 -159 q 26 -109 22 -123 q 65 -68 38 -68 q 80 -71 69 -68 q 203 -90 142 -90 q 284 -59 255 -90 q 319 37 313 -28 l 364 480 l 231 480 q 198 491 208 480 q 188 526 188 501 q 198 562 188 551 q 231 572 208 572 l 373 572 l 384 676 q 454 837 395 780 q 610 893 514 893 z "},È:{ha:833,x_min:107,x_max:722,o:"m 640 820 q 679 810 667 820 q 690 776 690 800 l 690 620 q 679 586 690 596 q 640 576 667 576 q 604 593 614 576 q 513 687 572 655 q 378 720 454 720 q 263 685 304 720 q 222 592 222 650 q 236 545 222 564 q 277 513 250 526 q 332 493 300 500 q 418 475 364 485 q 510 455 476 463 q 578 434 545 448 q 684 356 646 406 q 722 222 722 307 q 689 98 722 151 q 591 15 656 45 q 435 -15 526 -15 q 310 10 368 -15 q 209 82 252 35 l 209 29 q 197 -5 209 5 q 158 -15 186 -15 q 119 -5 130 -15 q 107 29 107 5 l 107 233 q 119 267 107 256 q 158 277 130 277 q 197 248 187 277 q 286 127 225 170 q 435 85 347 85 q 569 123 522 85 q 615 222 615 160 q 594 291 615 264 q 532 336 572 318 q 475 354 506 347 q 392 372 445 3
550661 q 299 393 336 383 q 229 416 261 402 q 145 483 175 441 q 115 592 115 524 q 148 713 115 662 q 242 792 182 765 q 378 820 302 820 q 494 797 438 820 q 589 734 549 774 l 589 776 q 600 810 589 800 q 640 820 612 820 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},È:{ha:833,x_min:121,x_max:712,o:"m 630 642 q 669 631 658 642 q 681 597 681 621 l 681 469 q 669 435 681 445 q 630 425 658 425 q 597 442 607 425 q 513 520 568 498 q 372 543 457 543 q 269 520 306 543 q 232 454 232 496 q 246 419 232 433 q 287 397 260 406 q 339 385 309 389 q 415 376 368 381 q 521 362 481 369 q 597 343 562 356 q 682 286 652 323 q 712 188 712 249 q 681 81 712 127 q 591 10 650 35 q 449 -15 532 -15 q 320 5 376 -15 q 223 67 264 26 l 223 29 q 212 -5 223 5 q 172 -15 200 -15 q 133 -5 144 -15 q 121 29 121 5 l 121 192 q 133 226 121 216 q 172 236 144 236 q 195 230 186 236 q 209 208 203 223 q 290 113 233 143 q 442 83 347 83 q 563 112 521 83 q 605 188 605 140 q 590 226 605 211 q 547 250 575 241 q 493 263 524 258 q 414 273 462 268 q 308 287 351 279 q 229 309 265 294 q 152 363 180 328 q 125 454 125 398 q 156 556 125 513 q 241 620 186 598 q 365 642 296 642 q 485 622 431 642 q 579 567 540 602 l 579 597 q 591 631 579 621 q 630 642 602 642 m 365 -357 q 330 -349 341 -357 q 318 -326 318 -340 q 319 -315 318 -323 l 362 -121 q 391 -99 368 -99 l 469 -99 q 488 -117 488 -99 q 484 -134 488 -125 l 405 -331 q 365 -357 395 -357 z "},"È·":{ha:833,x_min:129,x_max:612,o:"m 570 627 q 603 616 593 627 q 612 581 612 606 l 612 -39 q 559 -218 612 -158 q 391 -278 506 -278 q 269 -257 334 -278 q 151 -202 204 -235 q 129 -167 129 -189 q 138 -136 129 -154 q 177 -105 154 -105 q 198 -112 189 -105 q 295 -161 245 -142 q 391 -179 345 -179 q 484 -143 457 -179 q 511 -30 511 -107 l 511 534 l 224 534 q 191 545 201 534 q 181 581 181 555 q 191 616 181 606 q 224 627 201 627 l 570 627 z "},"Ë":{ha:833,x_min:200,x_max:633,o:"m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},"Ë":{ha:833,x_min:200,x_max:633,o:"m 416 706 q 377 720 392 706 l 211 878 q 200 900 200 888 q 216 932 200 914 q 245 948 230 948 q 267 940 256 948 l 416 823 l 566 940 q 587 948 576 948 q 617 932 603 948 q 633 900 633 914 q 622 878 633 888 l 456 720 q 416 706 441 706 z "},"Ë":{ha:833,x_min:194,x_max:639,o:"m 602 928 q 630 917 621 924 q 639 896 639 909 q 638 887 639 890 q 566 768 623 810 q 416 726 509 726 q 267 768 323 726 q 195 887 210 810 q 194 896 194 890 q 203 917 194 909 q 231 928 212 924 q 250 930 241 930 q 279 914 273 930 q 328 843 294 866 q 416 820 362 820 q 505 843 471 820 q 554 914 539 866 q 583 930 560 930 q 602 928 592 930 z "},"Ë":{ha:833,x_min:352,x_max:481,o:"m 416 924 q 467 915 454 924 q 481 880 481 905 l 481 792 q 467 758 481 768 q 416 748 454 748 q 366 758 379 748 q 352 792 352 768 l 352 880 q 366 915 352 905 q 416 924 379 924 z "},"Ë":{ha:833,x_min:250,x_max:583,o:"m 416 1056 q 502 1034 463 1056 q 562 974 540 1013 q 583 889 583 936 q 562 804 583 842 q 502 744 540 766 q 416 722 463 722 q 331 744 370 722 q 271 804 293 766 q 250 889 250 842 q 271 974 250 936 q 331 1034 293 1013 q 416 1056 370 1056 m 416 966 q 360 945 381 966 q 339 889 339 924 q 360 833 339 854 q 416 812 381 812 q 473 833 452 812 q 494 889 494 854 q 473 945 494 924 q 416 966 452 966 z "},"Ë":{ha:833,x_min:279,x_max:549,o:"m 518 19 q 415 -90 446 -45 q 385 -176 385 -136 q 399 -213 385 -200 q 437 -226 413 -226 q 513 -214 472 -226 q 521 -213 519 -213 q 547 -250 541 -213 q 549 -267 549 -262 q 543 -290 549 -281 q 526 -302 537 -298 q 414 -320 475 -320 q 315 -285 351 -320 q 279 -191 279 -250 q 312 -85 279 -136 q 406 19 345 -34 l 518 19 z "},"Ë":{ha:833,x_min:183,x_max:650,o:"m 335 892 q 378 885 359 892 q 425 867 397 879 q 465 850 448 855 q 498 844 481 844 q 541 856 520 844 q 584 890 562 867 q 604 899 592 899 q 635 882 621 899 q 650 851 650 867 q 640 827 650 838 q 571 764 608 785 q 498 743 534 743 q 455 750 474 743 q 408 768 435 756 q 368 785 385 780 q 334 791 352 791 q 292 779 313 791 q 249 745 271 768 q 229 736 241 736 q 197 753 212 736 q 183 784 183 768 q 193 808 183 797 q 262 871 225 850 q 335 892 299 892 z "},"Ë":{ha:833,x_min:215,x_max:748,o:"m 460 935 q 490 897 490 916 q 477 872 490 884 l 294 714 q 269 705 283 705 q 235 716 254 705 q 215 744 215 729 q 222 760 215 753 l 382 931 q 420 948 398 948 q 460 935 439 948 m 718 935 q 748 897 748 916 q 735 872 748 884 l 552 714 q 527 705 541 705 q 493 716 512 705 q 473 744 473 729 q 479 760 473 753 l 640 931 q 677 948 656 948 q 718 935 696 948 z "},Ï:{ha:833,x_min:66,x_max:766,o:"m 724 627 q 756 615 747 627 q 766 578 766 604 q 756 540 766 551 q 724 529 747 529 l 665 529 l 665 37 q 653 3 665 14 q 614 -7 642 -7 l 613 -7 q 574 3 585 -7 q 563 37 563 14 l 563 529 l 270 529 l 270 37 q 259 3 270 14 q 220 -7 248 -7 l 218 -7 q 179 3 191 -7 q 168 37 168 14 l 168 529 l 109 529 q 76 540 86 529 q 66 578 66 551 q 76 615 66 604 q 109 627 86 627 l 724 627 z "},"â":{ha:833,x_min:115,x_max:718,o:"m 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 675 441 z "},"â":{ha:833,x_min:-20,x_max:853,o:"m 810 441 q 843 430 833 441 q 853 395 853 420 q 843 359 853 370 q 810 349 833 349 l 22 349 q -11 359 -1 349 q -20 395 -20 370 q -11 430 -20 420 q 22 441 -1 441 l 810 441 z "},"â":{ha:833,x_min:286,x_max:534,o:"m 311 510 q 293 516 299 510 q 286 532 286 522 q 292 553 286 541 l 441 857 q 491 886 456 886 q 523 877 511 886 q 534 851 534 867 q 533 840 534 848 l 465 537 q 429 510 458 510 l 311 510 z "},"â":{ha:833,x_min:296,x_max:545,o:"m 520 861 q 538 854 532 861 q 545 838 545 848 q 539 818 545 830 l 390 513 q 340 484 376 484 q 308 494 320 484 q 296 519 296 503 q 298 531 296 523 l 366 833 q 401 861 372 861 l 520 861 z "},"â":{ha:833,x_min:296,x_max:545,o:"m 520 199 q 538 193 532 199 q 545 177 545 187 q 539 157 545 169 l 390 -148 q 340 -177 376 -177 q 308 -168 320 -177 q 296
5506-142 296 -158 q 298 -130 296 -138 l 366 172 q 401 199 372 199 l 520 199 z "},"â":{ha:833,x_min:120,x_max:701,o:"m 144 510 q 126 516 133 510 q 120 532 120 522 q 125 553 120 541 l 275 857 q 325 886 290 886 q 356 877 345 886 q 368 851 368 867 q 367 840 368 848 l 298 537 q 263 510 292 510 l 144 510 m 477 510 q 459 516 465 510 q 452 532 452 522 q 458 553 452 541 l 607 857 q 657 886 622 886 q 689 877 677 886 q 701 851 701 867 q 699 840 701 848 l 631 537 q 595 510 625 510 l 477 510 z "},"â":{ha:833,x_min:130,x_max:711,o:"m 354 861 q 372 854 366 861 q 378 838 378 848 q 373 818 378 830 l 224 513 q 174 484 210 484 q 142 494 154 484 q 130 519 130 503 q 132 531 130 523 l 200 833 q 235 861 206 861 l 354 861 m 686 861 q 704 854 698 861 q 711 838 711 848 q 705 818 711 830 l 556 513 q 506 484 542 484 q 474 494 486 484 q 463 519 463 503 q 464 531 463 523 l 532 833 q 568 861 538 861 l 686 861 z "},"â":{ha:833,x_min:130,x_max:711,o:"m 686 199 q 704 193 698 199 q 711 177 711 187 q 705 157 711 169 l 556 -148 q 506 -177 542 -177 q 474 -168 486 -177 q 463 -142 463 -158 q 464 -130 463 -138 l 532 172 q 568 199 538 199 l 686 199 m 354 199 q 372 193 366 199 q 378 177 378 187 q 373 157 378 169 l 224 -148 q 174 -177 210 -177 q 142 -168 154 -177 q 130 -142 130 -158 q 132 -130 130 -138 l 200 172 q 235 199 206 199 l 354 199 z "},"â ":{ha:833,x_min:197,x_max:636,o:"m 416 820 q 452 810 441 820 q 463 777 463 800 l 463 627 l 593 627 q 626 616 616 627 q 636 581 636 606 q 626 545 636 555 q 593 534 616 534 l 463 534 l 463 233 q 452 200 463 210 q 416 191 441 191 q 381 200 391 191 q 370 233 370 210 l 370 534 l 239 534 q 207 545 216 534 q 197 581 197 555 q 207 616 197 606 q 239 627 216 627 l 370 627 l 370 777 q 381 810 370 800 q 416 820 391 820 z "},"â¡":{ha:833,x_min:197,x_max:636,o:"m 416 820 q 452 810 441 820 q 463 777 463 800 l 463 661 l 593 661 q 626 650 616 661 q 636 614 636 640 q 626 579 636 589 q 593 568 616 568 l 463 568 l 463 401 l 593 401 q 626 391 616 401 q 636 355 636 380 q 626 320 636 330 q 593 309 616 309 l 463 309 l 463 193 q 452 160 463 170 q 416 150 441 150 q 381 160 391 150 q 370 193 370 170 l 370 309 l 239 309 q 207 320 216 309 q 197 355 197 330 q 207 391 197 380 q 239 401 216 401 l 370 401 l 370 568 l 239 568 q 207 579 216 568 q 197 614 197 589 q 207 650 197 640 q 239 661 216 661 l 370 661 l 370 777 q 381 810 370 800 q 416 820 391 820 z "},"â¢":{ha:833,x_min:259,x_max:574,o:"m 416 578 q 537 563 500 578 q 574 512 574 547 l 574 307 q 537 256 574 272 q 416 241 500 241 q 296 256 333 241 q 259 307 259 272 l 259 512 q 296 563 259 547 q 416 578 333 578 z "},"â¦":{ha:833,x_min:74,x_max:759,o:"m 145 156 q 200 148 183 156 q 216 120 216 139 l 216 29 q 200 2 216 10 q 145 -7 183 -7 q 91 2 107 -7 q 74 29 74 10 l 74 120 q 91 148 74 139 q 145 156 107 156 m 416 156 q 471 148 454 156 q 488 120 488 139 l 488 29 q 471 2 488 10 q 416 -7 454 -7 q 362 2 378 -7 q 345 29 345 10 l 345 120 q 362 148 345 139 q 416 156 378 156 m 688 156 q 742 148 726 156 q 759 120 759 139 l 759 29 q 742 2 759 10 q 688 -7 726 -7 q 633 2 650 -7 q 616 29 616 10 l 616 120 q 633 148 616 139 q 688 156 650 156 z "},"â°":{ha:833,x_min:34,x_max:1082,o:"m 220 820 q 313 795 270 820 q 380 727 355 770 q 406 634 406 684 q 380 541 406 584 q 313 473 355 498 q 220 448 270 448 q 127 473 170 448 q 59 541 84 498 q 34 634 34 584 q 59 727 34 684 q 127 795 84 770 q 220 820 170 820 m 680 718 q 711 733 695 733 q 745 715 728 733 q 762 682 762 696 q 745 650 762 666 l 153 87 q 122 73 138 73 q 88 91 104 73 q 71 124 71 109 q 87 155 71 140 l 680 718 m 220 732 q 171 719 193 732 q 135 683 149 705 q 122 634 122 661 q 135 585 122 608 q 171 550 149 563 q 220 536 193 536 q 269 550 246 536 q 304 585 291 563 q 317 634 317 608 q 304 683 317 661 q 269 719 291 705 q 220 732 246 732 m 897 357 q 989 332 947 357 q 1057 264 1032 307 q 1082 171 1082 221 q 1057 78 1082 121 q 989 10 1032 35 q 897 -15 947 -15 q 816 4 853 -15 q 755 56 779 23 q 693 4 730 22 q 613 -15 656 -15 q 520 10 563 -15 q 452 78 477 35 q 427 171 427 121 q 452 264 427 221 q 520 332 477 307 q 613 357 563 357 q 693 338 656 357 q 755 286 730 319 q 816 338 779 319 q 897 357 853 357 m 613 269 q 564 255 587 269 q 529 220 542 242 q 515 171 515 197 q 529 122 515 144 q 564 86 542 100 q 613 73 587 73 q 662 86 640 73 q 697 122 684 100 q 711 171 711 144 q 697 220 711 197 q 662 255 684 242 q 613 269 640 269 m 897 269 q 848 255 870 269 q 812 220 825 242 q 799 171 799 197 q 812 122 799 144 q 848 86 825 100 q 897 73 870 73 q 945 86 923 73 q 981 122 968 100 q 994 171 994 144 q 981 220 994 197 q 945 255 968 242 q 897 269 923 269 z "},"â¹":{ha:833,x_min:267,x_max:564,o:"m 480 631 q 502 642 488 642 q 543 623 521 642 q 564 588 564 604 q 554 566 564 577 l 387 382 l 554 199 q 564 177 564 188 q 543 142 564 161 q 502 123 521 123 q 480 134 488 123 l 273 366 q 267 382 267 374 q 273 399 267 393 l 480 631 z "},"âº":{ha:833,x_min:269,x_max:566,o:"m 560 399 q 566 382 566 393 q 560 366 566 374 l 353 134 q 331 123 345 123 q 290 142 312 123 q 269 177 269 161 q 279 199 269 188 l 446 382 l 279 566 q 269 588 269 577 q 290 623 269 604 q 331 642 312 642 q 353 631 345 642 l 560 399 z "},"â":{ha:833,x_min:75,x_max:758,o:"m 707 576 q 718 579 712 579 q 748 560 734 579 q 758 534 758 548 q 748 516 758 522 l 125 136 q 115 133 121 133 q 85 152 99 133 q 75 178 75 165 q 85 196 75 190 l 707 576 z "},"â¢":{ha:833,x_min:41,x_max:863,o:"m 795 897 q 829 886 818 897 q 842 852 840 876 l 862 551 q 855 517 863 528 q 823 507 846 507 q 791 517 800 507 q 781 551 782 527 l 768 727 l 705 597 q 684 573 697 581 q 656 564 671 564 q 628 573 642 564 q 608 597 615 581 l 544 727 l 532 551 q 522 517 531 527 q 490 507 513 507 q 458 517 467 507 q 451 551 450 528 l 471 852 q 484 886 473 876 q 518 897 495 897 q 560 879 552 897 l 656 676 l 753 879 q 795 897 761 897 m 342 890 q 375 881 366 890 q 385 849 385 871 q 375 818 385 827 q 342 809 366 809 l 255 809 l 255 551 q 245 517 255 528 q 213 507 236 507 q 180 517 190 507 q 171 551 171 528 l 171 809 l 83 809 q 51 818 60 809 q 41 849 41 827 q 51 881 41 871 q 83 890 60 890 l 342 890 z "},Ω:{ha:833,x_min:55,x_max:778,o:"m 416 820 q 603 770 522 820 q 729 631 684 721 q 773 422 773 541 q 729 237 773 322 q 615 98 685 152 l 735 98 q 768 86 758 98 q 778 49 778 75 q 768 11 778 22 q 735 0 758 0 l 509 0 q 476 12 486 0 q 466 53 466 24 q 477 96 466 88 q 617 236 569 155 q 666 422 666 318 q 635 580 666 513 q 548 683 604 647 q 416 720 491 720 q 285 683 342 720 q 198 580 229 647 q 167 422 167 513 q 215 236 167 318 q 355 96 264 155 q 367 53 367 88 q 357 12 367 24 q 324 0 347 0 l 98 0 q 65 11 75 0 q 55 49 55 22 q 65 86 55 75 q 98 98 75 98 l 218 98 q 104 237 148 152 q 60 422 60 322 q 104 631 60 541 q 230 770 149 721 q 416 820 311 820 z "},"â":{ha:833,x_min:113,x_max:711,o:"m 437 820 q 574 786 512 820 q 674 680 636 751 q 711 503 711 609 q 691 336 711 427 q 634 169 671 244 q 520 30 589 75 q 357 -16 452 -16 q 229 16 284 -16 q 143 102 174 47 q 113 227 113 157 q 148 367 113 306 q 244 462 183 429 q 381 496 305 496 q 515 459 458 496 q 600 357 572 423 q 616 491 616 431 q 570 656 616 597 q 435 715 524 715 q 335 699 391 715 q 325 698 332 698 q 305 706 314 698 q 288 735 296 715 q 282 762 282 751 q 303 793 282 784 q 437 820 365 820 m 390 395 q 298 374 337 395 q 239 315 260 353 q 218 226 218 277 q 256 124 218 162 q 356 85 294 85 q 481 124 430 86 q 566 239 532 161 q 506 352 553 308 q 390 395 460 395 z "},Î:{ha:833,x_min:100,x_max:732,o:"m 418 820 q 462 809 446 820 q 487 776 479 799 l 729 72 q 732 46 732 62 q 723 11 732 21 q 690 0 713 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 104 72 100 60 l 349 776 q 374 809 357 799 q 418 820 391 820 m 417 693 l 218 92 l 615 92 l 418 693 l 417 693 z "},"â":{ha:833,x_min:132,x_max:701,o:"m 658 805 q 691 794 681 805 q 701 759 701 784 l 701 37 q 689 3 701 14 q 650 -7 678 -7 l 649 -7 q 610 3 621 -7 q 599 37 599 14 l 599 707 l 234 707 l 234 37 q 223 3 234 14 q 184 -7 212 -7 l 182 -7 q 143 3 155 -7 q 132 37 132 14 l 132 759 q 142 794 132 784 q 175 805 152 805 l 658 805 z "},"â":{ha:833,x_min:112,x_max:705,o:"m 649 805 q 682 794 672 805 q 692 756 692 783 q 682 719 692 730 q 649 707 672 707 l 273 707 l 495 433 q 503 412 503 423 q 495 391 503 401 l 259 98 l 663 98 q 695 86 686 98 q 705 49 705 75 q 695 11 705 22 q 663 0 686 0 l 156 0 q 122 11 133 0 q 112 46 112 21 q 123 82 112 68 l 387 412 l 134 726 q 125 759 125 735 q 136 794 125 784 q 170 805 146 805 l 649 805 z "},"â":{ha:833,x_min:115,x_max:718,o:"m 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 675 441 z "},"â":{ha:833,x_min:79,x_max:749,o:"m 710 806 q 740 791 730 800 q 749 769 749 782 q 745 748 749 760 l 488 29 q 462 -5 479 5 q 416 -15 445 -15 q 369 -4 387 -15 q 342 29 352 6 l 212 346 l 121 346 q 89 357 98 346 q 79 395 79 368 q 89 432 79 421 q 121 444 98 444 l 252 444 q 276 438 267 444 q 290 422 286 433 l 413 123 l 646 781 q 661 804 652 797 q 683 812 669 812 q 710 806 692 812 z "},"â":{ha:833,x_min:19,x_max:814,o:"m 624 591 q 721 565 677 591 q 789 494 764 539 q 814 395 814 450 q 789 295 814 340 q 721 224 764 250 q 624 199 677 199 q 507 232 554 199 q 416 326 460 266 q 326 232 372 266 q 209 199 279 199 q 112 224 155 199 q 44 295 68 250 q 19 395 19 340 q 44 494 19 450 q 112 565 68 539 q 209 591 155 591 q 326 557 279 591 q 416 463 373 524 q 507 557 460 524 q 624 591 554 591 m 211 500 q 139 470 166 500 q 113 395 113 440 q 139 319 113 349 q 211 290 166 290 q 296 317 260 290 q 369 395 332 344 q 296 473 332 446 q 211 500 260 500 m 622 500 q 536 472 572 500 q 464 395 500 445 q 536 317 500 344 q 622 290 572 290 q 693 319 667 290 q 720 395 720 349 q 693 470 720 440 q 622 500 667 500 z "},"â«":{ha:833,x_min:3,x_max:829,o:"m 614 1029 q 712 1018 664 1029 q 804 989 761 1008 q 823 976 817 984 q 829 956 829 968 q 825 932 829 945 q 790 892 813 892 q 778 895 787 892 q 616 930 688 930 q 506 881 545 930 q 467 744 467 833 l 467 -1 q 437 -148 467 -85 q 351 -244 407 -210 q 218 -278 295 -278 q 120 -268 169 -278 q 29 -239 72 -257 q 9 -225 16 -233 q 3 -205 3 -217 q 7 -181 3 -195 q 43 -142 20 -142 q 55 -144 45 -142 q 217 -179 144 -179 q 327 -131 288 -179 q 366 7 3
550666 -82 l 366 752 q 396 899 366 836 q 482 995 426 961 q 614 1029 538 1029 z "},"â":{ha:833,x_min:102,x_max:731,o:"m 283 634 q 357 620 323 634 q 435 578 391 606 q 498 545 474 555 q 549 534 523 534 q 654 591 607 534 q 680 604 665 604 q 709 592 695 604 q 731 557 731 576 q 726 540 731 547 q 648 457 694 488 q 549 427 602 427 q 476 441 510 427 q 397 482 442 455 q 334 516 359 505 q 283 527 309 527 q 178 470 226 527 q 153 457 168 457 q 123 469 138 457 q 102 504 102 485 q 106 521 102 513 q 184 603 138 572 q 283 634 231 634 m 283 363 q 357 349 323 363 q 435 307 391 334 q 498 273 474 284 q 549 262 523 262 q 654 319 607 262 q 680 332 665 332 q 709 321 695 332 q 731 286 731 304 q 726 269 731 276 q 648 186 694 217 q 549 155 602 155 q 476 170 510 155 q 397 211 442 184 q 334 244 359 233 q 283 256 309 256 q 178 199 226 256 q 153 186 168 186 q 123 197 138 186 q 102 233 102 214 q 106 250 102 242 q 184 332 138 301 q 283 363 231 363 z "},"â ":{ha:833,x_min:115,x_max:718,o:"m 675 305 q 708 295 698 305 q 718 259 718 284 q 708 223 718 234 q 675 213 698 213 l 369 213 l 285 70 q 270 52 277 58 q 253 46 262 46 q 223 56 240 46 q 197 90 197 71 q 206 117 197 102 l 262 213 l 158 213 q 125 223 135 213 q 115 259 115 234 q 125 295 115 284 q 158 305 135 305 l 310 305 l 416 484 l 158 484 q 125 495 135 484 q 115 530 115 505 q 125 566 115 555 q 158 576 135 576 l 463 576 l 548 720 q 563 738 555 732 q 580 743 570 743 q 610 733 593 743 q 636 699 636 718 q 627 672 636 688 l 570 576 l 675 576 q 708 566 698 576 q 718 530 718 555 q 708 495 718 505 q 675 484 698 484 l 522 484 l 417 305 l 675 305 z "},"â¤":{ha:833,x_min:115,x_max:718,o:"m 651 760 q 674 764 663 764 q 711 732 699 764 q 717 707 717 719 q 684 669 717 681 l 269 512 l 684 355 q 717 317 717 343 q 711 292 717 305 q 674 260 699 260 q 651 264 663 260 l 151 461 q 124 480 133 468 q 115 512 115 492 q 124 544 115 532 q 151 563 133 556 l 651 760 m 675 170 q 708 159 698 170 q 718 123 718 149 q 708 88 718 98 q 675 77 698 77 l 158 77 q 125 88 135 77 q 115 123 115 98 q 125 159 115 149 q 158 170 135 170 l 675 170 z "},"â¥":{ha:833,x_min:115,x_max:718,o:"m 682 563 q 709 544 700 556 q 718 512 718 532 q 709 480 718 492 q 682 461 700 468 l 182 264 q 159 260 170 260 q 121 292 134 260 q 116 317 116 305 q 149 355 116 343 l 564 512 l 149 669 q 116 707 116 681 q 121 732 116 719 q 159 764 134 764 q 182 760 170 764 l 682 563 m 675 170 q 708 159 698 170 q 718 123 718 149 q 708 88 718 98 q 675 77 698 77 l 158 77 q 125 88 135 77 q 115 123 115 98 q 125 159 115 149 q 158 170 135 170 l 675 170 z "},"â":{ha:833,x_min:139,x_max:693,o:"m 416 820 q 459 810 444 820 q 488 776 475 800 l 688 422 q 693 402 693 414 q 688 382 693 391 l 488 29 q 459 -5 475 5 q 416 -15 444 -15 q 373 -5 389 -15 q 345 29 358 5 l 144 382 q 139 402 139 393 q 144 422 139 412 l 345 776 q 373 810 358 800 q 416 820 389 820 m 250 402 l 416 107 l 583 402 l 416 698 l 250 402 z "},ï¬:{ha:833,x_min:28,x_max:802,o:"m 760 92 q 792 82 783 92 q 802 46 802 71 q 792 11 802 21 q 760 0 783 0 l 452 0 q 419 11 429 0 q 410 46 410 21 q 419 82 410 71 q 452 92 429 92 l 555 92 l 555 500 l 273 500 l 273 46 q 263 11 273 21 q 230 0 253 0 l 214 0 q 181 11 191 0 q 171 46 171 21 l 171 500 l 71 500 q 38 511 48 500 q 28 547 28 522 q 38 582 28 572 q 71 593 48 593 l 171 593 l 171 663 q 234 832 171 771 q 410 893 296 893 q 590 859 500 893 q 623 814 623 846 q 621 796 623 806 q 587 758 611 758 q 570 761 579 758 q 410 794 484 794 q 273 654 273 794 l 273 593 l 614 593 q 647 582 637 593 q 657 547 657 572 l 657 92 l 760 92 z "},ï¬:{ha:833,x_min:39,x_max:795,o:"m 752 92 q 785 82 775 92 q 795 46 795 71 q 785 11 795 21 q 752 0 775 0 l 492 0 q 459 11 469 0 q 449 46 449 21 q 459 82 449 71 q 492 92 469 92 l 572 92 l 572 767 q 420 794 490 794 q 283 654 283 794 l 283 593 l 443 593 q 476 582 466 593 q 486 547 486 572 q 476 511 486 522 q 443 500 466 500 l 283 500 l 283 46 q 273 11 283 21 q 240 0 263 0 l 224 0 q 191 11 201 0 q 181 46 181 21 l 181 500 l 81 500 q 48 511 58 500 q 39 547 39 522 q 48 582 39 572 q 81 593 58 593 l 181 593 l 181 663 q 244 832 181 771 q 420 893 307 893 q 533 880 480 893 q 637 847 586 867 q 666 827 657 839 q 674 794 674 814 l 674 92 l 752 92 z "},Å¢:{ha:833,x_min:83,x_max:750,o:"m 707 805 q 740 794 730 805 q 750 759 750 784 l 750 503 q 739 469 750 479 q 699 459 727 459 q 660 469 671 459 q 648 503 648 479 l 648 713 l 467 713 l 467 92 l 627 92 q 660 82 650 92 q 670 46 670 71 q 660 11 670 21 q 627 0 650 0 l 461 0 l 461 -77 q 564 -108 530 -76 q 599 -191 599 -14
55060 q 557 -285 599 -250 q 433 -320 515 -320 q 343 -312 387 -320 q 265 -288 300 -304 q 250 -264 250 -281 q 255 -240 250 -254 q 286 -210 267 -210 q 295 -211 292 -210 q 359 -229 324 -222 q 426 -237 394 -237 q 480 -225 460 -237 q 500 -193 500 -214 q 481 -160 500 -171 q 421 -149 463 -149 l 395 -150 q 378 -143 385 -150 q 372 -120 372 -136 l 372 0 l 205 0 q 173 11 182 0 q 163 46 163 21 q 173 82 163 71 q 205 92 182 92 l 366 92 l 366 713 l 184 713 l 184 503 q 173 469 184 479 q 134 459 161 459 q 94 469 106 459 q 83 503 83 479 l 83 759 q 93 794 83 784 q 125 805 102 805 l 707 805 z "},Å£:{ha:833,x_min:79,x_max:743,o:"m 734 127 q 743 96 743 109 q 721 61 743 75 q 603 6 668 28 q 481 -15 538 -15 l 477 -15 l 477 -77 q 580 -108 545 -76 q 614 -191 614 -140 q 572 -285 614 -250 q 448 -320 530 -320 q 359 -312 402 -320 q 281 -288 315 -304 q 265 -264 265 -281 q 271 -240 265 -254 q 302 -210 282 -210 q 311 -211 307 -210 q 375 -229 340 -222 q 441 -237 410 -237 q 496 -225 476 -237 q 515 -193 515 -214 q 497 -160 515 -171 q 437 -149 479 -149 l 410 -150 q 394 -143 400 -150 q 387 -120 387 -136 l 387 -2 q 291 76 321 20 q 260 224 260 133 l 260 480 l 122 480 q 89 491 99 480 q 79 526 79 501 q 89 562 79 551 q 122 572 99 572 l 260 572 l 260 776 q 271 810 260 800 q 311 820 283 820 q 350 810 338 820 q 361 776 361 800 l 361 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 361 480 l 361 233 q 388 120 361 156 q 481 84 415 84 q 577 102 527 84 q 674 151 627 121 q 695 158 684 158 q 734 127 718 158 z "},Ä:{ha:833,x_min:54,x_max:746,o:"m 695 292 q 734 281 723 292 q 746 248 746 271 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 166 92 l 166 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 690 805 q 723 794 713 805 q 732 759 732 784 l 732 587 q 721 553 732 563 q 682 543 709 543 q 642 553 654 543 q 631 587 631 563 l 631 713 l 268 713 l 268 461 l 443 461 l 443 523 q 453 557 443 547 q 491 567 464 567 q 529 557 518 567 q 539 523 539 547 l 539 307 q 529 273 539 283 q 491 263 518 263 q 453 273 464 263 q 443 307 443 283 l 443 369 l 268 369 l 268 92 l 644 92 l 644 248 q 656 281 644 271 q 695 292 667 292 m 602 1112 q 630 1100 621 1107 q 639 1079 639 1092 q 638 1070 639 1074 q 566 951 623 994 q 416 909 509 909 q 267 951 323 909 q 195 1070 210 994 q 194 1079 194 1074 q 203 1100 194 1092 q 231 1112 212 1107 q 250 1114 241 1114 q 279 1097 273 1114 q 328 1026 294 1049 q 416 1003 362 1003 q 505 1026 471 1003 q 554 1097 539 1049 q 583 1114 560 1114 q 602 1112 592 1114 z "},Ĭ:{ha:833,x_min:136,x_max:697,o:"m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 m 602 1112 q 630 1100 621 1107 q 639 1079 639 1092 q 638 1070 639 1074 q 566 951 623 994 q 416 909 509 909 q 267 951 323 909 q 195 1070 210 994 q 194 1079 194 1074 q 203 1100 194 1092 q 231 1112 212 1107 q 250 1114 241 1114 q 279 1097 273 1114 q 328 1026 294 1049 q 416 1003 362 1003 q 505 1026 471 1003 q 554 1097 539 1049 q 583 1114 560 1114 q 602 1112 592 1114 z "},Ĩ:{ha:833,x_min:136,x_max:697,o:"m 335 1075 q 378 1068 359 1075 q 425 1050 397 1062 q 465 1033 448 1038 q 498 1027 481 1027 q 541 1039 520 1027 q 584 1074 562 1050 q 604 1082 592 1082 q 635 1065 621 1082 q 650 1034 650 1050 q 640 1010 650 1021 q 571 947 608 968 q 498 926 534 926 q 455 933 474 926 q 408 951 435 939 q 368 968 385 963 q 334 974 352 974 q 292 962 313 974 q 249 928 271 951 q 229 920 241 920 q 197 937 212 920 q 183 967 183 951 q 193 991 183 980 q 262 1054 225 1034 q 335 1075 299 1075 m 641 805 q 674 794 664 805 q 684 759 684 784 q 674 723 684 734 q 641 713 664 713 l 467 713 l 467 92 l 654 92 q 687 82 677 92 q 697 46 697 71 q 687 11 697 21 q 654 0 677 0 l 178 0 q 145 11 155 0 q 136 46 136 21 q 145 82 136 71 q 178 92 155 92 l 366 92 l 366 713 l 192 713 q 159 723 169 713 q 149 759 149 734 q 159 794 149 784 q 192 805 169 805 l 641 805 z "},Ä¿:{ha:833,x_min:54,x_max:746,o:"m 473 805 q 506 794 496 805 q 515 759 515 784 q 506 723 515 734 q 473 713 496 713 l 309 713 l 309 92 l 644 92 l 644 315 q 656 349 644 339 q 695 359 667 359 q 734 349 723 359 q 746 315 746 339 l 746 46 q 736 11 746 21 q 703 0 726 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 207 92 l 207 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 8
550605 74 805 l 473 805 m 505 577 q 552 564 530 577 q 587 529 574 551 q 600 481 600 507 q 587 434 600 456 q 552 399 574 412 q 505 386 530 386 q 457 399 479 386 q 422 434 435 412 q 409 481 409 456 q 422 529 409 507 q 457 564 435 551 q 505 577 479 577 z "},Å:{ha:833,x_min:47,x_max:785,o:"m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 704 713 l 704 -92 q 656 -230 704 -182 q 519 -278 608 -278 q 439 -269 479 -278 q 362 -244 398 -260 q 336 -209 336 -233 q 343 -180 336 -198 q 380 -148 357 -148 q 399 -152 391 -148 q 519 -179 465 -179 q 584 -154 562 -179 q 605 -73 605 -129 l 605 7 l 244 651 l 241 651 l 241 92 l 337 92 q 370 82 360 92 q 380 46 380 71 q 370 11 380 21 q 337 0 360 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 142 92 l 142 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 242 805 q 266 800 257 805 q 281 786 275 795 l 602 211 l 605 211 l 605 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},Å:{ha:833,x_min:60,x_max:773,o:"m 416 820 q 603 768 522 820 q 729 621 684 715 q 773 402 773 526 q 729 183 773 278 q 603 37 684 89 q 416 -15 522 -15 q 230 37 311 -15 q 104 183 149 89 q 60 402 60 278 q 104 621 60 526 q 230 768 149 715 q 416 820 311 820 m 416 720 q 285 681 342 720 q 198 570 229 642 q 167 402 167 498 q 198 234 167 306 q 285 124 229 163 q 416 85 342 85 q 548 124 491 85 q 635 234 604 163 q 666 402 666 306 q 635 570 666 498 q 548 681 604 642 q 416 720 491 720 m 602 1112 q 630 1100 621 1107 q 639 1079 639 1092 q 638 1070 639 1074 q 566 951 623 994 q 416 909 509 909 q 267 951 323 909 q 195 1070 210 994 q 194 1079 194 1074 q 203 1100 194 1092 q 231 1112 212 1107 q 250 1114 241 1114 q 279 1097 273 1114 q 328 1026 294 1049 q 416 1003 362 1003 q 505 1026 471 1003 q 554 1097 539 1049 q 583 1114 560 1114 q 602 1112 592 1114 z "},Ŧ:{ha:833,x_min:83,x_max:750,o:"m 707 805 q 740 794 730 805 q 750 759 750 784 l 750 503 q 739 469 750 479 q 699 459 727 459 q 660 469 671 459 q 648 503 648 479 l 648 713 l 467 713 l 467 397 l 607 397 q 640 387 630 397 q 650 351 650 376 q 640 316 650 326 q 607 305 630 305 l 467 305 l 467 92 l 627 92 q 660 82 650 92 q 670 46 670 71 q 660 11 670 21 q 627 0 650 0 l 205 0 q 173 11 182 0 q 163 46 163 21 q 173 82 163 71 q 205 92 182 92 l 366 92 l 366 305 l 226 305 q 193 316 203 305 q 183 351 183 326 q 193 387 183 376 q 226 397 203 397 l 366 397 l 366 713 l 184 713 l 184 503 q 173 469 184 479 q 134 459 161 459 q 94 469 106 459 q 83 503 83 479 l 83 759 q 93 794 83 784 q 125 805 102 805 l 707 805 z "},Ũ:{ha:833,x_min:47,x_max:785,o:"m 335 1075 q 378 1068 359 1075 q 425 1050 397 1062 q 465 1033 448 1038 q 498 1027 481 1027 q 541 1039 520 1027 q 584 1074 562 1050 q 604 1082 592 1082 q 635 1065 621 1082 q 650 1034 650 1050 q 640 1010 650 1021 q 571 947 608 968 q 498 926 534 926 q 455 933 474 926 q 408 951 435 939 q 368 968 385 963 q 334 974 352 974 q 292 962 313 974 q 249 928 271 951 q 229 920 241 920 q 197 937 212 920 q 183 967 183 951 q 193 991 183 980 q 262 1054 225 1034 q 335 1075 299 1075 m 743 805 q 775 794 766 805 q 785 759 785 784 q 775 723 785 734 q 743 713 766 713 l 701 713 l 701 267 q 626 55 701 125 q 416 -15 552 -15 q 207 55 281 -15 q 132 267 132 125 l 132 713 l 90 713 q 57 723 67 713 q 47 759 47 734 q 57 794 47 784 q 90 805 67 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 234 713 l 234 280 q 278 131 234 176 q 416 85 322 85 q 555 131 511 85 q 599 280 599 176 l 599 713 l 523 713 q 490 723 500 713 q 480 759 480 734 q 490 794 480 784 q 523 805 500 805 l 743 805 z "},áº:{ha:833,x_min:-7,x_max:840,o:"m 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 238 170 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 591 170 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 m 536 1134 q 562 1143 549 1143 q 607 1115 585 1143 q 627 1069 627 1088 q 612 1042 627 1051 l 359 894 q 337 887 347 887 q 306 904 321 887 q 290 939 290 922 q 300 960 290 952 l 536 1134 z "},Å´:{ha:833,x_min:-7,x_max:840,o:"m 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 238 170 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 591 170 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 m 416 1130 q 456 1116 441 1130 l 622 958 q 633 936 633 948 q 617 904 633 922 q 587 888 603 888 q 566 896 576 888 l 416 1013 l 267 896 q 245 888 256 888 q 216 904 230 888 q 200 936 200 922 q 211 958 200 948 l 377 1116 q 416 1130 392 1130 z "},áº:{ha:833,x_min:-7,x_max:840,o:"m 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 238 170 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 591 170 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 m 274 1107 q 325 1098 311 1107 q 338 1063 338 1088 l 338 975 q 325 941 338 951 q 274 931 311 931 q 223 941 237 931 q 210 975 210 951 l 210 1063 q 223 1098 210 1088 q 274 1107 237 1107 m 559 1107 q 610 1098 596 1107 q 623 1063 623 1088 l 623 975 q 610 941 623 951 q 559 931 596 931 q 508 941 522 931 q 494 975 494 951 l 494 1063 q 508 1098 494 1088 q 559 1107 522 1107 z "},áº:{ha:833,x_min:-7,x_max:840,o:"m 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 238 170 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 591 170 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 m 532 960 q 543 939 543 952 q 527 904 543 922 q 496 887 512 887 q 474 894 486 887 l 220 1042 q 205 1069 205 1051 q 226 1115 205 1088 q 271 1143 248 1143 q 296 1134 284 1143 l 532 960 z "},Ŷ:{ha:833,x_min:41,x_max:792,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 467 334 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 334 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 m 423 1130 q 463 1116 448 1130 l 629 958 q 640 936 640 948 q 624 904 640 922 q 594 888 610 888 q 573 896 583 888 l 423 1013 l 273 896 q 252 888 263 888 q 222 904 237 888 q 207 936 207 922 q 218 958 207 948 l 384 1116 q 423 1130 399 1130 z "},Ỳ:{ha:833,x_min:41,x_max:792,o:"m 749 805 q 782 794 772 805 q 792 759 792 784 q 782 723 792 734 q 749 713 772 713 l 703 713 l 467 334 l 467 92 l 621 92 q 653 82 644 92 q 663 46 663 71 q 653 11 663 21 q 621 0 644 0 l 212 0 q 179 11 189 0 q 170 46 170 21 q 179 82 170 71 q 212 92 189 92 l 366 92 l 366 334 l 131 713 l 83 713 q 51 723 60 713 q 41 759 41 734 q 51 794 41 784 q 83 805 60 805 l 310 805 q 343 794 333 805 q 353 759 353 784 q 343 723 353 734 q 310 713 333 713 l 247 713 l 416 435 l 587 713 l 543 713 q 510 723 520 713 q 500 759 500 734 q 510 794 500 784 q 543 805 520 805 l 749 805 m 546 960 q 557 939 557 952 q 541 904 557 922 q 509 887 526 887 q 488 894 500 887 l 234 1042 q 219 1069 219 1051 q 239 1115 219 1088 q 285 1143 262 1143 q 310 1134 298 1143 l 546 960 z "},Ä:{ha:833,x_min:99,x_max:740,o:"m 422 642 q 590 602 521 642 q 697 492 660 562 q 740 330 734 422 q 730 298 740 307 q 697 288 720 288 l 206 288 q 266 135 211 187 q 422 83 321 83 q 546 99 485 83 q 653 142 607 115 q 674 148 665 148 q 713 112 698 148 q 719 86 719 98 q 689 44 719 59 q 566 1 637 18 q 422 -15 494 -15 q 248 24 320 -15 q 137 138 175 64 q 99 313 99 212 q 140 485 99 410 q 255 601 182 559 q 422 642 328 642 m 422 543 q 284 501 339 543 q 213 383 230 458 l 627 383 q 562 502 613 461 q 422 543 511 543 m 616 928 q 644 917 635 924 q 652 896 652 909 q 652 887 652 890 q 579 768 636 810 q 430 726 523 726 q 280 768 337 726 q 208 887 224 810 q 208 896 208 890 q 216 917 208 909 q 244 928 225 924 q 263 930 254 930 q 292 914 286 930 q 342 843 308 866 q 430 820 376 820 q 519 843 485 820 q 568 914 553 866 q 597 930 574 930 q 616 928 606 930 z "},ı:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 z "},Ä:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 595 928 q 623 917 614 924 q 632 896 632 909 q 631 887 632 890 q 559 768 616 810 q 410 726 503 726 q 260 768 317 726 q 188 887 203 810 q 187 896 187 890 q 196 917 187 909 q 224 928 205 924 q 243 930 234 930 q 272 914 266 930 q 321 843 288 866 q 410 820 355 820 q 498 843 465 820 q 547 914 532 866 q 576 930 553 930 q 595 928 585 930 z "},Ä©:{ha:833,x_min:127,x_max:744,o:"m 441 627 q 474 616 464 627 q 484 581 484 606 l 484 92 l 701 92 q 734 82 724 92 q 744 46 744 71 q 734 11 744 21 q 701 0 724 0 l 170 0 q 137 11 146 0 q 127 46 127 21 q 137 82 127 71 q 170 92 146 92 l 382 92 l 382 534 l 210 534 q 177 545 187 534 q 168 581 168 555 q 177 616 168 606 q 210 627 187 627 l 441 627 m 321 892 q 365 885 345 892 q 411 867 384 879 q 451 850 435 855 q 485 844 467 844 q 527 856 507 844 q 570 890 548 867 q 590 899 578 899 q 622 882 607 899 q 636 851 636 867 q 627 827 636 838 q 557 764 594 785 q 484 743 520 743 q 441 750 460 743 q 395 768 422 756 q 355 785 371 780 q 321 791 338 791 q 278 779 299 791 q 235 745 258 768 q 216 736 227 736 q 184 753 199 736 q 170 784 170 768 q 179 808 170 797 q 249 871 212 850 q 321 892 286 892 z "},Å:{ha:833,x_min:100,x_max:725,o:"m 414 890 q 447 879 437 890 q 456 844 456 869 l 456 92 l 674 92 q 707 82 697 92 q 717 46 717 71 q 707 11 717 21 q 674 0 697 0 l 142 0 q 110 11 119 0 q 100 46 100 21 q 110 82 100 71 q 142 92 119 92 l 355 92 l 355 798 l 170 798 q 137 808 146 798 q 127 844 127 819 q 137 879 127 869 q 170 890 146 890 l 414 890 m 661 585 q 711 575 698 585 q 725 541 725 566 l 725 453 q 711 419 725 429 q 661 409 698 409 q 610 419 623 409 q 596 453 596 429 l 596 541 q 610 575 596 566 q 661 585 623 585 z "},Å:{ha:833,x_min:66,x_max:708,o:"m 507 642 q 614 615 568 642 q 684 538 659 588 q 708 420 708 488 l 708 -92 q 660 -230 708 -182 q 523 -278 612 -278 q 443 -269 484 -278 q 366 -244 402 -260 q 340 -209 340 -233 q 347 -180 340 -198 q 385 -148 361 -148 q 404 -152 395 -148 q 524 -179 469 -179 q 586 -154 566 -179 q 606 -73 606 -129 l 606 410 q 578 506 606 471 q 496 541 551 541 q 389 508 439 541 q 309 416 339 475 q 279 286 279 358 l 279 92 l 342 92 q 375 82 365 92 q 385 46 385 71 q 375 11 385 21 q 342 0 365 0 l 122 0 q 89 11 99 0 q 79 46 79 21 q 89 82 79 71 q 122 92 99 92 l 178 92 l 178 534 l 109 534 q 76 545 85 534 q 66 581 66 555 q 76 616 66 606 q 109 627 85 627 l 230 627 q 263 616 253 627 q 273 581 273 606 l 273 499 q 377 605 317 568 q 507 642 437 642 z "},Å:{ha:833,x_min:90,x_max:743,o:"m 416 642 q 584 600 509 642 q 701 483 659 557 q 743 313 743 408 q 701 144 743 219 q 584 27 659 69 q 416 -15 509 -15 q 249 27 323 -15 q 132 144 174 69 q 90 313 90 219 q 132 483 90 408 q 249 600 174 557 q 416 642 323 642 m 416 541 q 301 512 351 541 q 224 432 251 484 q 197 313 197 380 q 224 195 197 247 q 301 114 251 143 q 416 85 351 85 q 532 114 482 85 q 609 195 582 143 q 636 313 636 247 q 609 432 636 380 q 532 512 582 484 q 416 541 482 541 m 602 928 q 630 917 621 924 q 639 896 639 909 q 638 887 639 890 q 566 768 623 810 q 416 726 509 726 q 267 768 323 726 q 195 887 210 810 q 194 896 194 890 q 203 917 194 909 q 231 928 212 924 q 250 930 241 930 q 279 914 273 930 q 328 843 294 866 q 416 820 362 820 q 505 843 471 820 q 554 914 539 866 q 583 930 560 930 q 602 928 592 930 z "},ŧ:{ha:833,x_min:79,x_max:743,o:"m 734 127 q 743 96 743 109 q 721 61 743 75 q 603 6 668 28 q 481 -15 538 -15 q 313 45 366 -15 q 260 224 260 105 l 260 298 l 165 298 q 132 309 142 298 q 122 345 122 319 q 132 380 122 370 q 165 391 142 391 l 260 39
55061 l 260 480 l 122 480 q 89 491 99 480 q 79 526 79 501 q 89 562 79 551 q 122 572 99 572 l 260 572 l 260 776 q 271 810 260 800 q 311 820 283 820 q 350 810 338 820 q 361 776 361 800 l 361 572 l 640 572 q 673 562 663 572 q 683 526 683 551 q 673 491 683 501 q 640 480 663 480 l 361 480 l 361 391 l 546 391 q 579 380 569 391 q 589 345 589 370 q 579 309 589 319 q 546 298 569 298 l 361 298 l 361 233 q 388 120 361 156 q 481 84 415 84 q 577 102 527 84 q 674 151 627 121 q 695 158 684 158 q 734 127 718 158 z "},Å©:{ha:833,x_min:49,x_max:776,o:"m 635 627 q 668 616 658 627 q 677 581 677 606 l 677 92 l 733 92 q 766 82 756 92 q 776 46 776 71 q 766 11 776 21 q 733 0 756 0 l 625 0 q 592 10 602 0 q 583 45 583 20 l 583 127 q 478 22 538 58 q 349 -15 418 -15 q 241 12 287 -15 q 172 89 196 39 q 147 206 147 139 l 147 534 l 92 534 q 59 545 68 534 q 49 581 49 555 q 59 616 49 606 q 92 627 68 627 l 206 627 q 239 616 229 627 q 249 581 249 606 l 249 216 q 277 121 249 156 q 359 85 304 85 q 466 119 416 85 q 546 210 516 152 q 576 340 576 269 l 576 534 l 479 534 q 447 545 456 534 q 437 581 437 555 q 447 616 437 606 q 479 627 456 627 l 635 627 m 316 892 q 359 885 340 892 q 406 867 378 879 q 446 850 429 855 q 479 844 462 844 q 522 856 501 844 q 565 890 543 867 q 585 899 573 899 q 616 882 602 899 q 631 851 631 867 q 621 827 631 838 q 552 764 589 785 q 479 743 515 743 q 436 750 455 743 q 389 768 416 756 q 349 785 366 780 q 315 791 333 791 q 273 779 294 791 q 230 745 252 768 q 210 736 222 736 q 178 753 193 736 q 164 784 164 768 q 174 808 164 797 q 243 871 206 850 q 316 892 280 892 z "},áº:{ha:833,x_min:-7,x_max:840,o:"m 797 627 q 830 616 820 627 q 840 581 840 606 q 830 545 840 555 q 797 534 820 534 l 781 534 l 647 29 q 627 -5 640 5 q 588 -15 614 -15 q 542 -4 559 -15 q 517 29 526 6 l 414 323 l 309 29 q 283 -4 300 6 q 237 -15 266 -15 q 198 -5 211 -15 q 179 29 185 5 l 48 534 l 36 534 q 3 545 13 534 q -7 581 -7 555 q 3 616 -7 606 q 36 627 13 627 l 235 627 q 268 616 258 627 q 278 581 278 606 q 268 545 278 555 q 235 534 258 534 l 152 534 l 250 140 l 363 454 q 380 477 368 469 q 414 486 393 486 q 467 459 457 486 l 579 140 l 680 534 l 611 534 q 578 545 588 534 q 568 581 568 555 q 578 616 568 606 q 611 627 588 627 l 797 627 m 543 951 q 568 960 555 960 q 614 932 591 960 q 634 886 634 905 q 619 859 634 868 l 366 711 q 344 704 353 704 q 313 721 328 704 q 296 756 296 739 q 307 777 296 769 l 543 951 z "},ŵ:{ha:833,x_min:-7,x_max:840,o:"m 797 627 q 830 616 820 627 q 840 581 840 606 q 830 545 840 555 q 797 534 820 534 l 781 534 l 647 29 q 627 -5 640 5 q 588 -15 614 -15 q 542 -4 559 -15 q 517 29 526 6 l 414 323 l 309 29 q 283 -4 300 6 q 237 -15 266 -15 q 198 -5 211 -15 q 179 29 185 5 l 48 534 l 36 534 q 3 545 13 534 q -7 581 -7 555 q 3 616 -7 606 q 36 627 13 627 l 235 627 q 268 616 258 627 q 278 581 278 606 q 268 545 278 555 q 235 534 258 534 l 152 534 l 250 140 l 363 454 q 380 477 368 469 q 414 486 393 486 q 467 459 457 486 l 579 140 l 680 534 l 611 534 q 578 545 588 534 q 568 581 568 555 q 578 616 568 606 q 611 627 588 627 l 797 627 m 416 947 q 456 933 441 947 l 622 775 q 633 753 633 765 q 617 721 633 739 q 587 705 603 705 q 566 713 576 705 l 416 830 l 267 713 q 245 705 256 705 q 216 721 230 705 q 200 753 200 739 q 211 775 200 765 l 377 933 q 416 947 392 947 z "},áº
:{ha:833,x_min:-7,x_max:840,o:"m 797 627 q 830 616 820 627 q 840 581 840 606 q 830 545 840 555 q 797 534 820 534 l 781 534 l 647 29 q 627 -5 640 5 q 588 -15 614 -15 q 542 -4 559 -15 q 517 29 526 6 l 414 323 l 309 29 q 283 -4 300 6 q 237 -15 266 -15 q 198 -5 211 -15 q 179 29 185 5 l 48 534 l 36 534 q 3 545 13 534 q -7 581 -7 555 q 3 616 -7 606 q 36 627 13 627 l 235 627 q 268 616 258 627 q 278 581 278 606 q 268 545 278 555 q 235 534 258 534 l 152 534 l 250 140 l 363 454 q 380 477 368 469 q 414 486 393 486 q 467 459 457 486 l 579 140 l 680 534 l 611 534 q 578 545 588 534 q 568 581 568 555 q 578 616 568 606 q 611 627 588 627 l 797 627 m 274 924 q 325 915 311 924 q 338 880 338 905 l 338 792 q 325 758 338 768 q 274 748 311 748 q 223 758 237 748 q 210 792 210 768 l 210 880 q 223 915 210 905 q 274 924 237 924 m 559 924 q 610 915 596 924 q 623 880 623 905 l 623 792 q 610 758 623 768 q 559 748 596 748 q 508 758 522 748 q 494 792 494 768 l 494 880 q 508 915 494 905 q 559 924 522 924 z "},áº:{ha:833,x_min:-7,x_max:840,o:"m 797 627 q 830 616 820 627 q 840 581 840 606 q 830 545 840 555 q 797 534 820 534 l 781 534 l 647 29 q 627 -5 640 5 q 588 -15 614 -15 q 542 -4 559 -15 q 517 29 526 6 l 414 323 l 309 29 q 283 -4 300 6 q 237 -15 266 -15 q 198 -5 211 -15 q 179 29 185 5 l 48 534 l 36 534 q 3 545 13 534 q -7 581 -7 555 q 3 616 -7 606 q 36 627 13 627 l 235 627 q 268 616 258 627 q 278 581 278 606 q 268 545 278 555 q 235 534 258 534 l 152 534 l 250 140 l 363 454 q 380 477 368 469 q 414 486 393 486 q 467 459 457 486 l 579 140 l 680 534 l 611 534 q 578 545 588 534 q 568 581 568 555 q 578 616 568 606 q 611 627 588 627 l 797 627 m 526 777 q 536 756 536 769 q 520 721 536 739 q 489 704 505 704 q 467 711 479 704 l 214 859 q 199 886 199 868 q 219 932 199 905 q 264 960 241 960 q 290 951 277 960 l 526 777 z "}
5506,Å·:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 714 534 l 437 -34 q 351 -176 393 -124 q 256 -251 309 -227 q 128 -278 203 -275 q 92 -266 104 -279 q 79 -222 79 -254 q 115 -176 79 -178 q 218 -154 180 -172 q 289 -91 256 -136 q 368 47 321 -47 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 421 153 l 604 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 m 427 947 q 467 933 452 947 l 633 775 q 644 753 644 765 q 628 721 644 739 q 598 705 614 705 q 577 713 587 705 l 427 830 l 277 713 q 256 705 267 705 q 227 721 241 705 q 211 753 211 739 q 222 775 211 765 l 388 933 q 427 947 403 947 z "},ỳ:{ha:833,x_min:34,x_max:799,o:"m 756 627 q 789 616 779 627 q 799 581 799 606 q 789 545 799 555 q 756 534 779 534 l 714 534 l 437 -34 q 351 -176 393 -124 q 256 -251 309 -227 q 128 -278 203 -275 q 92 -266 104 -279 q 79 -222 79 -254 q 115 -176 79 -178 q 218 -154 180 -172 q 289 -91 256 -136 q 368 47 321 -47 l 119 534 l 77 534 q 44 545 54 534 q 34 581 34 555 q 44 616 34 606 q 77 627 54 627 l 317 627 q 350 616 340 627 q 359 581 359 606 q 350 545 359 555 q 317 534 340 534 l 230 534 l 421 153 l 604 534 l 543 534 q 510 545 520 534 q 500 581 500 555 q 510 616 500 606 q 543 627 520 627 l 756 627 m 539 777 q 550 756 550 769 q 534 721 550 739 q 503 704 519 704 q 481 711 493 704 l 227 859 q 212 886 212 868 q 233 932 212 905 q 278 960 255 960 q 303 951 291 960 l 539 777 z "},"â´":{ha:833,x_min:164,x_max:654,o:"m 488 905 q 529 894 511 905 q 547 867 547 883 l 547 564 l 621 564 q 646 554 637 564 q 654 522 654 545 q 646 490 654 500 q 621 479 637 479 l 547 479 l 547 355 q 537 330 547 338 q 502 322 526 322 q 467 330 477 322 q 456 355 456 338 l 456 479 l 201 479 q 174 493 184 479 q 164 532 164 506 q 167 552 164 544 q 176 568 170 560 l 433 875 q 458 898 446 890 q 488 905 470 905 m 280 564 l 456 564 l 460 781 l 280 564 z "},"Â":{ha:833,x_min:149,x_max:684,o:"m 641 345 q 674 335 664 345 q 684 299 684 324 q 674 263 684 274 q 641 253 664 253 l 192 253 q 159 263 169 253 q 149 299 149 274 q 159 335 149 324 q 192 345 169 345 l 641 345 z "},"â":{ha:833,x_min:115,x_max:718,o:"m 675 441 q 708 430 698 441 q 718 395 718 420 q 708 359 718 370 q 675 349 698 349 l 158 349 q 125 359 135 349 q 115 395 115 370 q 125 430 115 420 q 158 441 135 441 l 675 441 z "},"«":{ha:833,x_min:104,x_max:726,o:"m 317 631 q 339 642 326 642 q 380 623 358 642 q 401 588 401 604 q 391 566 401 577 l 224 382 l 391 199 q 401 177 401 188 q 380 142 401 161 q 339 123 358 123 q 317 134 326 123 l 110 366 q 104 382 104 374 q 110 399 104 393 l 317 631 m 643 631 q 665 642 651 642 q 705 623 684 642 q 726 588 726 604 q 717 566 726 577 l 550 382 l 717 199 q 726 177 726 188 q 705 142 726 161 q 665 123 684 123 q 643 134 651 123 l 435 366 q 429 382 429 374 q 435 399 429 393 l 643 631 z "},"»":{ha:833,x_min:106,x_max:729,o:"m 397 399 q 404 382 404 393 q 397 366 404 374 l 190 134 q 168 123 182 123 q 127 142 149 123 q 106 177 106 161 q 116 199 106 188 l 283 382 l 116 566 q 106 588 106 577 q 127 623 106 604 q 168 642 149 642 q 190 631 182 642 l 397 399 m 723 399 q 729 382 729 393 q 723 366 729 374 l 515 134 q 494 123 507 123 q 453 142 475 123 q 432 177 432 161 q 441 199 432 188 l 608 382 l 441 566 q 432 588 432 577 q 453 623 432 604 q 494 642 475 642 q 515 631 507 642 l 723 399 z "}," ":{ha:833,x_min:0,x_max:0,o:""},"â¬":{ha:833,x_min:54,x_max:755,o:"m 691 820 q 730 810 719 820 q 742 776 742 800 l 742 552 q 730 518 742 528 q 691 508 719 508 q 652 518 663 508 q 640 552 640 528 q 620 636 640 597 q 560 697 600 674 q 464 720 520 720 q 346 677 395 720 q 275 556 298 635 l 471 556 q 504 546 494 556 q 514 510 514 535 q 504 474 514 485 q 471 464 494 464 l 259 464 q 256 399 256 436 q 258 346 256 372 l 471 346 q 504 335 494 346 q 514 300 514 325 q 504 264 514 275 q 471 254 494 254 l 272 254 q 340 129 293 172 q 457 85 387 85 q 576 105 519 85 q 682 162 633 124 q 707 172 693 172 q 743 145 727 172 q 755 109 755 125 q 734 74 755 89 q 600 7 670 30 q 457
5506-15 530 -15 q 266 56 341 -15 q 163 254 191 127 l 97 254 q 64 264 74 254 q 54 300 54 275 q 64 335 54 325 q 97 346 74 346 l 151 346 q 149 399 149 370 q 152 464 149 439 l 97 464 q 64 474 74 464 q 54 510 54 485 q 64 546 54 535 q 97 556 74 556 l 165 556 q 270 750 194 680 q 457 820 346 820 q 561 798 514 820 q 640 737 608 777 l 640 776 q 652 810 640 800 q 691 820 663 820 z "},"â£":{ha:833,x_min:27,x_max:753,o:"m 710 805 q 743 794 733 805 q 753 759 753 784 l 753 580 q 741 546 753 556 q 702 536 730 536 q 663 546 674 536 q 651 580 651 556 l 651 713 l 288 713 l 288 475 l 522 475 q 555 464 545 475 q 565 429 565 454 q 555 393 565 404 q 522 382 545 382 l 288 382 l 288 285 l 587 285 q 620 274 610 285 q 629 239 629 264 q 620 203 629 214 q 587 193 610 193 l 288 193 l 288 92 l 446 92 q 478 82 469 92 q 488 46 488 71 q 478 11 488 21 q 446 0 469 0 l 97 0 q 64 11 74 0 q 54 46 54 21 q 64 82 54 71 q 97 92 74 92 l 186 92 l 186 193 l 70 193 q 37 203 47 193 q 27 239 27 214 q 37 274 27 264 q 70 285 47 285 l 186 285 l 186 713 l 97 713 q 64 723 74 713 q 54 759 54 734 q 64 794 54 784 q 97 805 74 805 l 710 805 z "},"â©":{ha:833,x_min:-20,x_max:853,o:"m 810 509 q 843 498 833 509 q 853 463 853 488 q 843 427 853 437 q 810 416 833 416 l 720 416 l 667 29 q 649 -5 663 5 q 608 -15 635 -15 q 539 29 553 -15 l 414 423 l 287 29 q 216 -15 273 -15 q 176 -5 190 -15 q 159 29 162 5 l 109 416 l 22 416 q -11 427 -1 416 q -20 463 -20 437 q -11 498 -20 488 q 22 509 -1 509 l 96 509 l 69 713 l 36 713 q 3 723 13 713 q -7 759 -7 734 q 3 794 -7 784 q 36 805 13 805 l 269 805 q 302 794 292 805 q 312 759 312 784 q 302 723 312 734 q 269 713 292 713 l 170 713 l 196 509 l 347 509 l 366 568 q 414 600 375 600 q 448 593 436 600 q 464 573 460 587 l 484 509 l 635 509 l 661 713 l 577 713 q 544 723 554 713 q 534 759 534 734 q 544 794 534 784 q 577 805 554 805 l 797 805 q 830 794 820 805 q 840 759 840 784 q 830 723 840 734 q 797 713 820 713 l 760 713 l 732 509 l 810 509 m 238 170 l 317 416 l 208 416 l 238 170 m 591 170 l 623 416 l 513 416 l 591 170 z "},"â":{ha:833,x_min:132,x_max:701,o:"m 638 1073 q 683 1063 666 1073 q 701 1036 701 1053 q 699 1025 701 1031 l 239 -214 q 223 -231 235 -224 q 195 -238 211 -238 q 150 -228 167 -238 q 132 -201 132 -218 q 134 -191 132 -197 l 594 1048 q 610 1066 598 1060 q 638 1073 622 1073 z "},µ:{ha:833,x_min:148,x_max:692,o:"m 642 633 q 681 623 669 633 q 692 589 692 613 l 692 37 q 682 3 692 14 q 645 -7 671 -7 l 644 -7 q 607 3 617 -7 q 597 37 597 14 l 597 134 q 493 26 554 68 q 363 -15 431 -15 q 250 17 295 -15 l 250 -226 q 238 -260 250 -250 q 199 -270 227 -270 l 198 -270 q 159 -260 170 -270 q 148 -226 148 -250 l 148 589 q 159 623 148 613 q 198 633 170 633 l 199 633 q 238 623 227 633 q 250 589 250 613 l 250 216 q 280 120 250 155 q 373 85 310 85 q 475 120 425 85 q 558 213 526 155 q 590 340 590 272 l 590 589 q 601 623 590 613 q 640 633 612 633 l 642 633 z "},"â²":{ha:833,x_min:281,x_max:572,o:"m 529 792 q 572 745 572 766 q 566 729 572 736 l 338 471 q 319 462 330 462 q 295 471 306 462 q 281 498 281 481 q 285 513 281 507 l 452 789 q 465 806 458 800 q 481 811 471 811 q 529 792 498 811 z "},"â³":{ha:833,x_min:145,x_max:707,o:"m 393 792 q 436 745 436 766 q 430 729 436 736 l 202 471 q 183 462 194 462 q 159 471 170 462 q 145 498 145 481 q 149 513 145 507 l 316 789 q 329 806 323 800 q 345 811 336 811 q 393 792 362 811 m 665 792 q 707 745 707 766 q 701 729 707 736 l 473 471 q 454 462 465 462 q 431 471 441 462 q 416 498 416 481 q 420 513 416 507 l 587 789 q 601 806 594 800 q 616 811 607 811 q 665 792 633 811 z "},"̦":{ha:0,x_min:-515,x_max:-345,o:"m -468 -357 q -503 -349 -492 -357 q -515 -326 -515 -340 q -513 -315 -515 -323 l -471 -121 q -442 -99 -465 -99 l -363 -99 q -345 -117 -345 -99 q -349 -134 -345 -125 l -428 -331 q -468 -357 -438 -357 z "}},W2e="Courier Prime",$2e=1085,j2e=-475,X2e=-125,Y2e=88,K2e={yMin:-357,xMin:-515,yMax:1239,xMax:2178},J2e=1e3,Z2e={format:0,copyright:"Copyright 2015 The Courier Prime Project Authors (https://github.com/quoteunquoteapps/CourierPrime).",fontFamily:"Courier Prime",fontSubfamily:"Regular",uniqueID:"3.018;QUQA;CourierPrime-Regular",fullName:"Courier Prime Regular",version:"Version 3.018",postScriptName:"CourierPrime-Regular",manufacturer:"Quote-Unquote Apps",designer:"Alan Dague-Greene, Quote-Unquote Apps",manufacturerURL:"http://quoteunquoteapps.com",designerU
5506RL:"http://basicrecipe.com",licence:"This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: http://scripts.sil.org/OFL",licenceURL:"http://scripts.sil.org/OFL"},efe="normal",tfe="normal",nfe={glyphs:H2e,familyName:W2e,ascender:$2e,descender:j2e,underlinePosition:X2e,underlineThickness:Y2e,boundingBox:K2e,resolution:J2e,original_font_information:Z2e,cssFontWeight:efe,cssFontStyle:tfe};class ife extends qr{constructor(e){super(e)}load(e,n,i,r){const s=this,o=new Fr(this.manager);o.setPath(this.path),o.setRequestHeader(this.requestHeader),o.setWithCredentials(this.withCredentials),o.load(e,function(a){const l=s.parse(JSON.parse(a));n&&n(l)},i,r)}parse(e){return new rfe(e)}}let rfe=class{constructor(e){this.isFont=!0,this.type="Font",this.data=e}generateShapes(e,n=100){const i=[],r=sfe(e,n,this.data);for(let s=0,o=r.length;s<o;s++)i.push(...r[s].toShapes());return i}};function sfe(t,e,n){const i=Array.from(t),r=e/n.resolution,s=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*r,o=[];let a=0,l=0;for(let u=0;u<i.length;u++){const c=i[u];if(c===` 5507`)a=0,l-=s;else{const h=ofe(c,r,a,l,n);a+=h.offsetX,o.push(h.path)}}return o}function ofe(t,e,n,i,r){const s=r.glyphs[t]||r.glyphs["?"];if(!s){console.error('THREE.Font: character "'+t+'" does not exists in font family '+r.familyName+".");return}const o=new pC;let a,l,u,c,h,f,m,g;if(s.o){const v=s._cachedOutline||(s._cachedOutline=s.o.split(" "));for(let _=0,A=v.length;_<A;)switch(v[_++]){case"m":a=v[_++]*e+n,l=v[_++]*e+i,o.moveTo(a,l);break;case"l":a=v[_++]*e+n,l=v[_++]*e+i,o.lineTo(a,l);break;case"q":u=v[_++]*e+n,c=v[_++]*e+i,h=v[_++]*e+n,f=v[_++]*e+i,o.quadraticCurveTo(h,f,u,c);break;case"b":u=v[_++]*e+n,c=v[_++]*e+i,h=v[_++]*e+n,f=v[_++]*e+i,m=v[_++]*e+n,g=v[_++]*e+i,o.bezierCurveTo(h,f,m,g,u,c);break}}return{offsetX:s.ha*e,path:o}}const BH=new ife().parse(nfe);Zz({TextGeometry:PH});function afe({text:t,meshProps:e={},textProps:n={},color:i=11320255}){return dt("mesh",{...e,children:[ee("textGeometry",{args:[t,{...n,font:BH}]}),ee("meshBasicMaterial",{color:i})]})}function lfe(t){const e=["and","the","or","a","an"];let n=t.replace(/-/g," ");return n=n.replace(/\b\w+/g,i=>e.includes(i)?i.toLowerCase():i.toUpperCase()),n=n.charAt(0).toUpperCase()+n.slice(1),n}
5507function ufe(t){return t.replace(/\\n/g,` 5508`)}function cfe(t){return t.split(" ").map(n=>{const i=n.split("-");return i.length>=2?(i.length===2&&(i[0]+="-"),i):n}).flat()}function hfe(t,e=12){const n=cfe(t),i=[];let r="";for(let s=0;s<n.length;s++){const o=n[s];if(o.length<=e)r.length+o.length<=e?r+=o:(i.push(r),r=o);else{r.length>0&&(i.push(r),r="");const a=Math.floor(o.length/(e-1));for(let u=1;u<=a;u++){const c=o.slice((u-1)*(e-1),u*(e-1));i.push(c+"-")}r=o.slice(a*(e-1),o.length)}s!==n.length-1&&(r+=" ")}return r.length>0&&i.push(r),i}/** 5509 * React Router DOM v6.14.2 5510 * 5511 * Copyright (c) Remix Software Inc. 5512 * 5513 * This source code is licensed under the MIT license found in the 5514 * LICENSE.md file in the root directory of this source tree. 5515 * 5516 * @license MIT 5517 */function Gm(){return Gm=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},Gm.apply(this,arguments)}function DH(t,e){if(t==null)return{};var n={},i=Object.keys(t),r,s;for(s=0;s<i.length;s++)r=i[s],!(e.indexOf(r)>=0)&&(n[r]=t[r]);return n}function ffe(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function dfe(t,e){return t.button===0&&(!e||e==="_self")&&!ffe(t)}const pfe=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"],mfe=["aria-current","caseSensitive","className","end","style","to","children"],gfe="startTransition",kD=LY[gfe];function Afe(t){let{basename:e,children:n,future:i,window:r}=t,s=G.useRef();s.current==null&&(s.current=WJ({window:r,v5Compat:!0}));let o=s.current,[a,l]=G.useState({action:o.action,location:o.location}),{v7_startTransition:u}=i||{},c=G.useCallback(h=>{u&&kD?kD(()=>l(h)):l(h)},[l,u]);return G.useLayoutEffect(()=>o.listen(c),[o,c]),G.createElement(PZ,{basename:e,children:n,location:a.location,navigationType:a.action,navigator:o})}const vfe=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",yfe=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ww=G.forwardRef(function(e,n){let{onClick:i,relative:r,reloadDocument:s,replace:o,state:a,target:l,to:u,preventScrollReset:c}=e,h=DH(e,pfe),{basename:f}=G.useContext(F1),m,g=!1;if(typeof u=="string"&&yfe.test(u)&&(m=u,vfe))try{let y=new URL(window.location.href),q=u.startsWith("//")?new URL(y.protocol+u):new URL(u),E=ST(q.pathname,f);q.origin===y.origin&&E!=null?u=E+q.search+q.hash:g=!0}catch{}let v=AZ(u,{relative:r}),_=qfe(u,{replace:o,state:a,target:l,preventScrollReset:c,relative:r});function A(y){i&&i(y),y.defaultPrevented||_(y)}return G.createElement("a",Gm({},h,{href:m||v,onClick:g||s?i:A,ref:n,target:l}))}),Vf=G.forwardRef(function(e,n){let{"aria-current":i="page",caseSensitive:r=!1,className:s="",end:o=!1,style:a,to:l,children:u}=e,c=DH(e,mfe),h=CT(l,{relative:c.relative}),f=O1(),m=G.useContext(sU),{navigator:g}=G.useContext(F1),v=g.encodeLocation?g.encodeLocation(h).pathname:h.pathname,_=f.pathname,A=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;r||(_=_.toLowerCase(),A=A?A.toLowerCase():null,v=v.toLowerCase());let y=_===v||!o&&_.startsWith(v)&&_.charAt(v.length)==="/",q=A!=null&&(A===v||!o&&A.startsWith(v)&&A.charAt(v.length)==="/"),E=y?i:void 0,T;typeof s=="function"?T=s({isActive:y,isPending:q}):T=[s,y?"active":null,q?"pending":null].filter(Boolean).join(" ");let C=typeof a=="function"?a({isActive:y,isPending:q}):a;return G.createElement(ww,Gm({},c,{"aria-current":E,className:T,ref:n,style:C,to:l}),typeof u=="function"?u({isActive:y,isPending:q}):u)});var FD;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher"})(FD||(FD={}));var OD;(function(t){t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(OD||(OD={}));function qfe(t,e){let{target:n,replace:i,state:r,preventScrollReset:s,relative:o}=e===void 0?{}:e,a=b4(),l=O1(),u=CT(t,{relative:o});return G.useCallback(c=>{if(dfe(c,n)){c.preventDefault();let h=i!==void 0?i:pm(l)===pm(u);a(t,{replace:h,state:r,preventScrollReset:s,relative:o})}},[l,a,u,i,r,n,t,s,o])}function Iw(){}Iw.prototype.s2u=function(t){for(var e=this.s2uTable,n="",i=0;i<t.length;){var r=t[i++];if(!(r>=0&&r<=126||r>=161&&r<=223)&&i<t.length&&(r=r<<8|t[i++]),e[r]===void 0)return console.error("unknown char code "+r+"."),n;n+=String.fromCharCode(e[r])}return n};Iw.prototype.s2uTable={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,10:10,11:11,12:12,13:13,14:14,15:15,16:16,17:17,18:18,19:19,20:20,21:21,22:22,23:23,24:24,25:25,26:26,27:27,28:28,29:29,30:30,31:31,32:32,33:33,34:34,35:35,36:36,37:37,38:38,39:39,40:40,41:41,42:42,43:43,44:44,45:45,46:46,47:47,48:48,49:49,50:50,51:51,52:52,53:53,54:54,55:55,56:56,57:57,58:58,59:59,60:60,61:61,62:62,63:63,64:64,65:65,66:66,67:67,68:68,69:69,70:70,71:71,72:72,73:73,74:74,75:75,76:76,77:77,78:78,79:79,80:80,81:81,82:82,83:83,84:84,85:85,86:86,87:87,88:88,89:89,90:90,91:91,92:92,93:93,94:94,95:95,96:96,97:97,98:98,99:99,100:100,101:101,102:102,103:103,104:104,105:105,106:106,107:107,108:108,109:109,110:110,111:111,112:112,113:113,114:114,115:115,116:116,117:117,118:118,119:119,120:120,121:121,122:122,123:123,124:124,125:125,126:126,161:65377,162:65378,163:65379,164:65380,165:65381,166:65382,167:65383,168:65384,169:65385,170:65386,171:65387,172:65388,173:65389,174:65390,175:65391,176:65392,177:65393,178:65394,179:65395,180:65396,181:65397,182:65398,183:65399,184:65400,185:65401,186:65402,187:65403,188:65404,189:65405,190:65406,191:65407,192:65408,193:65409,194:65410,195:65411,196:65412,197:65413,198:65414,199:65415,200:65416,201:65417,202:65418,203:65419,204:65420,205:65421,206:65422,207:65423,208:65424,209:65425,210:65426,211:65427,212:65428,213:65429,214:65430,215:65431,216:65432,217:65433,218:65434,219:65435,220:65436,221:65437,222:65438,223:65439,33088:12288,33089:12289,33090:12290,33091:65292,33092:65294,33093:12539,33094:65306,33095:65307,33096:65311,33097:65281,33098:12443,33099:12444,33100:180,33101:65344,33102:168,33103:65342,33104:65507,33105:65343,33106:12541,33107:12542,33108:12445,33109:12446,33110:12291,33111:20189,33112:12293,33113:12294,33114:12295,33115:12540,33116:8213,33117:8208,33118:65295,33119:65340,33120:65374,33121:8741,33122:65372,33123:8230,33124:8229,33125:8216,33126:8217,33127:8220,33128:8221,33129:65288,33130:65289,33131:12308,33132:12309,33133:65339,33134:65341,33135:65371,33136:65373,33137:12296,33138:12297,33139:12298,33140:12299,33141:12300,33142:12301,33143:12302,33144:12303,33145:12304,33146:12305,33147:65291,33148:65293,33149:177,33150:215,33152:247,33153:65309,33154:8800,33155:65308,33156:65310,33157:88
551706,33158:8807,33159:8734,33160:8756,33161:9794,33162:9792,33163:176,33164:8242,33165:8243,33166:8451,33167:65509,33168:65284,33169:65504,33170:65505,33171:65285,33172:65283,33173:65286,33174:65290,33175:65312,33176:167,33177:9734,33178:9733,33179:9675,33180:9679,33181:9678,33182:9671,33183:9670,33184:9633,33185:9632,33186:9651,33187:9650,33188:9661,33189:9660,33190:8251,33191:12306,33192:8594,33193:8592,33194:8593,33195:8595,33196:12307,33208:8712,33209:8715,33210:8838,33211:8839,33212:8834,33213:8835,33214:8746,33215:8745,33224:8743,33225:8744,33226:65506,33227:8658,33228:8660,33229:8704,33230:8707,33242:8736,33243:8869,33244:8978,33245:8706,33246:8711,33247:8801,33248:8786,33249:8810,33250:8811,33251:8730,33252:8765,33253:8733,33254:8757,33255:8747,33256:8748,33264:8491,33265:8240,33266:9839,33267:9837,33268:9834,33269:8224,33270:8225,33271:182,33276:9711,33359:65296,33360:65297,33361:65298,33362:65299,33363:65300,33364:65301,33365:65302,33366:65303,33367:65304,33368:65305,33376:65313,33377:65314,33378:65315,33379:65316,33380:65317,33381:65318,33382:65319,33383:65320,33384:65321,33385:65322,33386:65323,33387:65324,33388:65325,33389:65326,33390:65327,33391:65328,33392:65329,33393:65330,33394:65331,33395:65332,33396:65333,33397:65334,33398:65335,33399:65336,33400:65337,33401:65338,33409:65345,33410:65346,33411:65347,33412:65348,33413:65349,33414:65350,33415:65351,33416:65352,33417:65353,33418:65354,33419:65355,33420:65356,33421:65357,33422:65358,33423:65359,33424:65360,33425:65361,33426:65362,33427:65363,33428:65364,33429:65365,33430:65366,33431:65367,33432:65368,33433:65369,33434:65370,33439:12353,33440:12354,33441:12355,33442:12356,33443:12357,33444:12358,33445:12359,33446:12360,33447:12361,33448:12362,33449:12363,33450:12364,33451:12365,33452:12366,33453:12367,33454:12368,33455:12369,33456:12370,33457:12371,33458:12372,33459:12373,33460:12374,33461:12375,33462:12376,33463:12377,33464:12378,33465:12379,33466:12380,33467:12381,33468:12382,33469:12383,33470:12384,33471:12385,33472:12386,33473:12387,33474:12388,33475:12389,33476:12390,33477:12391,33478:12392,33479:12393,33480:12394,33481:12395,33482:12396,33483:12397,33484:12398,33485:12399,33486:12400,33487:12401,33488:12402,33489:12403,33490:12404,33491:12405,33492:12406,33493:12407,33494:12408,33495:12409,33496:12410,33497:12411,33498:12412,33499:12413,33500:12414,33501:12415,33502:12416,33503:12417,33504:12418,33505:12419,33506:12420,33507:12421,33508:12422,33509:12423,33510:12424,33511:12425,33512:12426,33513:12427,33514:12428,33515:12429,33516:12430,33517:12431,33518:12432,33519:12433,33520:12434,33521:12435,33600:12449,33601:12450,33602:12451,33603:12452,33604:12453,33605:12454,33606:12455,33607:12456,33608:12457,33609:12458,33610:12459,33611:12460,33612:12461,33613:12462,33614:12463,33615:12464,33616:12465,33617:12466,33618:12467,33619:12468,33620:12469,33621:12470,33622:12471,33623:12472,33624:12473,33625:12474,33626:12475,33627:12476,33628:12477,33629:12478,33630:12479,33631:12480,33632
5517:12481,33633:12482,33634:12483,33635:12484,33636:12485,33637:12486,33638:12487,33639:12488,33640:12489,33641:12490,33642:12491,33643:12492,33644:12493,33645:12494,33646:12495,33647:12496,33648:12497,33649:12498,33650:12499,33651:12500,33652:12501,33653:12502,33654:12503,33655:12504,33656:12505,33657:12506,33658:12507,33659:12508,33660:12509,33661:12510,33662:12511,33664:12512,33665:12513,33666:12514,33667:12515,33668:12516,33669:12517,33670:12518,33671:12519,33672:12520,33673:12521,33674:12522,33675:12523,33676:12524,33677:12525,33678:12526,33679:12527,33680:12528,33681:12529,33682:12530,33683:12531,33684:12532,33685:12533,33686:12534,33695:913,33696:914,33697:915,33698:916,33699:917,33700:918,33701:919,33702:920,33703:921,33704:922,33705:923,33706:924,33707:925,33708:926,33709:927,33710:928,33711:929,33712:931,33713:932,33714:933,33715:934,33716:935,33717:936,33718:937,33727:945,33728:946,33729:947,33730:948,33731:949,33732:950,33733:951,33734:952,33735:953,33736:954,33737:955,33738:956,33739:957,33740:958,33741:959,33742:960,33743:961,33744:963,33745:964,33746:965,33747:966,33748:967,33749:968,33750:969,33856:1040,33857:1041,33858:1042,33859:1043,33860:1044,33861:1045,33862:1025,33863:1046,33864:1047,33865:1048,33866:1049,33867:1050,33868:1051,33869:1052,33870:1053,33871:1054,33872:1055,33873:1056,33874:1057,33875:1058,33876:1059,33877:1060,33878:1061,33879:1062,33880:1063,33881:1064,33882:1065,33883:1066,33884:1067,33885:1068,33886:1069,33887:1070,33888:1071,33904:1072,33905:1073,33906:1074,33907:1075,33908:1076,33909:1077,33910:1105,33911:1078,33912:1079,33913:1080,33914:1081,33915:1082,33916:1083,33917:1084,33918:1085,33920:1086,33921:1087,33922:1088,33923:1089,33924:1090,33925:1091,33926:1092,33927:1093,33928:1094,33929:1095,33930:1096,33931:1097,33932:1098,33933:1099,33934:1100,33935:1101,33936:1102,33937:1103,33951:9472,33952:9474,33953:9484,33954:9488,33955:9496,33956:9492,33957:9500,33958:9516,33959:9508,33960:9524,33961:9532,33962:9473,33963:9475,33964:9487,33965:9491,33966:9499,33967:9495,33968:9507,33969:9523,33970:9515,33971:9531,33972:9547,33973:9504,33974:9519,33975:9512,33976:9527,33977:9535,33978:9501,33979:9520,33980:9509,33981:9528,33982:9538,34624:9312,34625:9313,34626:9314,34627:9315,34628:9316,34629:9317,34630:9318,34631:9319,34632:9320,34633:9321,34634:9322,34635:9323,34636:9324,34637:9325,34638:9326,34639:9327,34640:9328,34641:9329,34642:9330,34643:9331,34644:8544,34645:8545,34646:8546,34647:8547,34648:8548,34649:8549,34650:8550,34651:8551,34652:8552,34653:8553,34655:13129,34656:13076,34657:13090,34658:13133,34659:13080,34660:13095,34661:13059,34662:13110,34663:13137,34664:13143,34665:13069,34666:13094,34667:13091,34668:13099,34669:13130,34670:13115,34671:13212,34672:13213,34673:13214,34674:13198,34675:13199,34676:13252,34677:13217,34686:13179,34688:12317,34689:12319,34690:8470,34691:13261,34692:8481,34693:12964,34694:12965,34695:12966,34696:12967,34697:12968,34698:12849,34699:12850,34700:12857,34701:13182,34702:13181,34703:13180,34704:8786,34705:8801,34706:8747,34707:8750,34708:8721,34709:8730,34710:8869,34711:8736,34712:8735,34713:8895,34714:8757,34715:8745,34716:8746
vendor: 76,239 bytes, line 5517
5517,34975:20124,34976:21782,34977:23043,34978:38463,34979:21696,34980:24859,34981:25384,34982:23030,34983:36898,34984:33909,34985:33564,34986:31312,34987:24746,34988:25569,34989:28197,34990:26093,34991:33894,34992:33446,34993:39925,34994:26771,34995:22311,34996:26017,34997:25201,34998:23451,34999:22992,35e3:34427,35001:39156,35002:32098,35003:32190,35004:39822,35005:25110,35006:31903,35007:34999,35008:23433,35009:24245,35010:25353,35011:26263,35012:26696,35013:38343,35014:38797,35015:26447,35016:20197,35017:20234,35018:20301,35019:20381,35020:20553,35021:22258,35022:22839,35023:22996,35024:23041,35025:23561,35026:24799,35027:24847,35028:24944,35029:26131,35030:26885,35031:28858,35032:30031,35033:30064,35034:31227,35035:32173,35036:32239,35037:32963,35038:33806,35039:34915,35040:35586,35041:36949,35042:36986,35043:21307,35044:20117,35045:20133,35046:22495,35047:32946,35048:37057,35049:30959,35050:19968,35051:22769,35052:28322,35053:36920,35054:31282,35055:33576,35056:33419,35057:39983,35058:20801,35059:21360,35060:21693,35061:21729,35062:22240,35063:23035,35064:24341,35065:39154,35066:28139,35067:32996,35068:34093,35136:38498,35137:38512,35138:38560,35139:38907,35140:21515,35141:21491,35142:23431,35143:28879,35144:32701,35145:36802,35146:38632,35147:21359,35148:40284,35149:31418,35150:19985,35151:30867,35152:33276,35153:28198,35154:22040,35155:21764,35156:27421,35157:34074,35158:39995,35159:23013,35160:21417,35161:28006,35162:29916,35163:38287,35164:22082,35165:20113,35166:36939,35167:38642,35168:33615,35169:39180,35170:21473,35171:21942,35172:23344,35173:24433,35174:26144,35175:26355,35176:26628,35177:27704,35178:27891,35179:27945,35180:29787,35181:30408,35182:31310,35183:38964,35184:33521,35185:34907,35186:35424,35187:37613,35188:28082,35189:30123,35190:30410,35191:39365,35192:24742,35193:35585,35194:36234,35195:38322,35196:27022,35197:21421,35198:20870,35200:22290,35201:22576,35202:22852,35203:23476,35204:24310,35205:24616,35206:25513,35207:25588,35208:27839,35209:28436,35210:28814,35211:28948,35212:29017,35213:29141,35214:29503,35215:32257,35216:33398,35217:33489,35218:34199,35219:36960,35220:37467,35221:40219,35222:22633,35223:26044,35224:27738,35225:29989,35226:20985,35227:22830,35228:22885,35229:24448,35230:24540,35231:25276,35232:26106,35233:27178,35234:27431,35235:27572,35236:29579,35237:32705,35238:35158,35239:40236,35240:40206,35241:40644,35242:23713,35243:27798,35244:33659,35245:20740,35246:23627,35247:25014,35248:33222,35249:26742,35250:29281,35251:20057,35252:20474,35253:21368,35254:24681,35255:28201,35256:31311,35257:38899,35258:19979,35259:21270,35260:20206,35261:20309,35262:20285,35263:20385,35264:20339,35265:21152,35266:21487,35267:22025,35268:22799,35269:23233,35270:23478,35271:23521,35272:31185,35273:26247,35274:26524,35275:26550,35276:27468,35277:27827,35278:28779,35279:29634,35280:31117,35281:31166,35282:31292,35283:31623,35284:33457,35285:33499,35286:33540,35287:33655,35288:33775,35289:33747,35290:34662,35291:35506,35292:22057,35293:36008,35294:36838,35295:36942,35296:38686,35297:34442,35298:20420,35299:23784,35300:25105,35301:29273,35302:30011,35303:33253,35304:33469,35305:34558,35306:36032,35307:38597,35308:39187,35309:39381,35310:20171,35311:20250,35312:35299,35313:22238,35314:22602,35315:22730,35316:24315,35317:24555,35318:24618,35319:24724,35320:24674,35321:25040,35322:25106,35323:25296,35324:25913,35392:39745,35393:26214,35394:26800,35395:28023,35396:28784,35397:30028,35398:30342,35399:32117,35400:33445,35401:34809,35402:38283,35403:38542,35404:35997,35405:20977,35406:21182,35407:22806,35408:21683,35409:23475,35410:23830,35411:24936,35412:27010,35413:28079,35414:30861,35415:33995,35416:34903,35417:35442,35418:37799,35419:39608,35420:28012,35421:39336,35422:34521,35423:22435,35424:26623,35425:34510,35426:37390,35427:21123,35428:22151,35429:21508,35430:24275,35431:25313,35432:25785,35433:26684,35434:26680,35435:27579,35436:29554,35437:30906,35438:31339,35439:35226,35440:35282,35441:36203,35442:36611,35443:37101,35444:38307,35445:38548,35446:38761,35447:23398,35448:23731,35449:27005,35450:38989,35451:38990,35452:25499,35453:31520,35454:27179,35456:27263,35457:26806,35458:39949,35459:28511,35460:21106,35461:21917,35462:24688,35463:25324,35464:27963,35465:28167,35466:28369,35467:33883,35468:35088,35469:36676,35470:19988,35471:39993,35472:21494,35473:26907,35474:27194,35475:38788,35476:26666,35477:20828,35478:31427,35479:33970,35480:37340,35481:37772,35482:22107,35483:40232,35484:26658,35485:33541,35486:33841,35487:31909,35488:21e3,35489:33477,35490:29926,35491:20094,35492:20355,35493:20896,35494:23506,35495:21002,35496:21208,35497:21223,35498:24059,35499:21914,35500:22570,35501:23014,35502:23436,35503:23448,35504:23515,35505:24178,35506:24185,35507:24739,35508:24863,35509:24931,35510:25022,35511:25563,35512:25954,35513:26577,35514:26707,35515:26874,35516:27454,35517:27475,35518:27735,35519:28450,35520:28567,35521:28485,35522:29872,35523:29976,35524:30435,35525:30475,35526:31487,35527:31649,35528:31777,35529:32233,35530:32566,35531:32752,35532:32925,35533:33382,35534:33694,35535:35251,35536:35532,35537:36011,35538:36996,35539:37969,35540:38291,35541:38289,35542:38306,35543:38501,35544:38867,35545:39208,35546:33304,35547:20024,35548:21547,35549:23736,35550:24012,35551:29609,35552:30284,35553:30524,35554:23721,35555:32747,35556:36107,35557:38593,35558:38929,35559:38996,35560:39e3,35561:20225,35562:20238,35563:21361,35564:21916,35565:22120,35566:22522,35567:22855,35568:23305,35569:23492,35570:23696,35571:24076,35572:24190,35573:24524,35574:25582,35575:26426,35576:26071,35577:26082,35578:26399,35579:26827,35580:26820,35648:27231,35649:24112,35650:27589,35651:27671,35652:27773,35653:30079,35654:31048,35655:23395,35656:31232,35657:32e3,35658:24509,35659:35215,35660:35352,35661:36020,35662:36215,35663:36556,35664:36637,35665:39138,35666:39438,35667:39740,35668:20096,35669:20605,35670:20736,35671:22931,35672:23452,35673:25135,35674:25216,35675:25836,35676:27450,35677:29344,35678:30097,35679:31047,35680:32681,35681:34811,35682:35516,35683:35696,35684:25516,35685:33738,35686:38816,35687:21513,35688:21507,35689:21931,35690:26708,35691:27224,35692:35440,35693:30759,35694:26485,35695:40653,35696:21364,35697:23458,35698:33050,35699:34384,35700:36870,35701:19992,35702:20037,35703:20167,35704:20241,35705:21450,35706:21560,35707:23470,35708:24339,35709:24613,35710:25937,35712:26429,35713:27714,35714:27762,35715:27875,35716:28792,35717:29699,35718:31350,35719:31406,35720:31496,35721:32026,35722:31998,35723:32102,35724:26087,35725:29275,35726:21435,35727:23621,35728:24040,35729:25298,35730:25312,35731:25369,35732:28192,35733:34394,35734:35377,35735:36317,35736:37624,35737:28417,35738:31142,35739:39770,35740:20136,35741:20139,35742:20140,35743:20379,35744:20384,35745:20689,35746:20807,35747:31478,35748:20849,35749:20982,35750:21332,35751:21281,35752:21375,35753:21483,35754:21932,35755:22659,35756:23777,35757:24375,35758:24394,35759:24623,35760:24656,35761:24685,35762:25375,35763:25945,35764:27211,35765:27841,35766:29378,35767:29421,35768:30703,35769:33016,35770:33029,35771:33288,35772:34126,35773:37111,35774:37857,35775:38911,35776:39255,35777:39514,35778:20208,35779:20957,35780:23597,35781:26241,35782:26989,35783:23616,35784:26354,35785:26997,35786:29577,35787:26704,35788:31873,35789:20677,35790:21220,35791:22343,35792:24062,35793:37670,35794:26020,35795:27427,35796:27453,35797:29748,35798:31105,35799:31165,35800:31563,35801:32202,35802:33465,35803:33740,35804:34943,35805:35167,35806:35641,35807:36817,35808:37329,35809:21535,35810:37504,35811:20061,35812:20534,35813:21477,35814:21306,35815:29399,35816:29590,35817:30697,35818:33510,35819:36527,35820:39366,35821:39368,35822:39378,35823:20855,35824:24858,35825:34398,35826:21936,35827:31354,35828:20598,35829:23507,35830:36935,35831:38533,35832:20018,35833:27355,35834:37351,35835:23633,35836:23624,35904:25496,35905:31391,35906:27795,35907:38772,35908:36705,35909:31402,35910:29066,35911:38536,35912:31874,35913:26647,35914:32368,35915:26705,35916:37740,35917:21234,35918:21531,35919:34219,35920:35347,35921:32676,35922:36557,35923:37089,35924:21350,35925:34952,35926:31041,35927:20418,35928:20670,35929:21009,35930:20804,35931:21843,35932:22317,35933:29674,35934:22411,35935:22865,35936:24418,35937:24452,35938:24693,35939:24950,35940:24935,35941:25001,35942:25522,35943:25658,35944:25964,35945:26223,35946:26690,35947:28179,35948:30054,35949:31293,35950:31995,35951:32076,35952:32153,35953:32331,35954:32619,35955:33550,35956:33610,35957:34509,35958:35336,35959:35427,35960:35686,35961:36605,35962:38938,35963:40335,35964:33464,35965:36814,35966:39912,35968:21127,35969:25119,35970:25731,35971:28608,35972:38553,35973:26689,35974:20625,35975:27424,35976:27770,35977:28500,35978:31348,35979:32080,35980:34880,35981:35363,35982:26376,35983:20214,35984:20537,35985:20518,35986:20581,35987:20860,35988:21048,35989:21091,35990:21927,35991:22287,35992:22533,35993:23244,35994:24314,35995:25010,35996:25080,35997:25331,35998:25458,35999:26908,36e3:27177,36001:29309,36002:29356,36003:29486,36004:30740,36005:30831,36006:32121,36007:30476,36008:32937,36009:35211,36010:35609,36011:36066,36012:36562,36013:36963,36014:37749,36015:38522,36016:38997,36017:39443,36018:40568,36019:20803,36020:21407,36021:21427,36022:24187,36023:24358,36024:28187,36025:28304,36026:29572,36027:29694,36028:32067,36029:33335,36030:35328,36031:35578,36032:38480,36033:20046,36034:20491,36035:21476,36036:21628,36037:22266,36038:22993,36039:23396,36040:24049,36041:24235,36042:24359,36043:25144,36044:25925,36045:26543,36046:28246,36047:29392,36048:31946,36049:34996,36050:32929,36051:32993,36052:33776,36053:34382,36054:35463,36055:36328,36056:37431,36057:38599,36058:39015,36059:40723,36060:20116,36061:20114,36062:20237,36063:21320,36064:21577,36065:21566,36066:23087,36067:24460,36068:24481,36069:24735,36070:26791,36071:27278,36072:29786,36073:30849,36074:35486,36075:35492,36076:35703,36077:37264,36078:20062,36079:39881,36080:20132,36081:20348,36082:20399,36083:20505,36084:20502,36085:20809,36086:20844,36087:21151,36088:21177,36089:21246,36090:21402,36091:21475,36092:21521,36160:21518,36161:21897,36162:22353,36163:22434,36164:22909,36165:23380,36166:23389,36167:23439,36168:24037,36169:24039,36170:24055,36171:24184,36172:24195,36173:24218,36174:24247,36175:24344,36176:24658,36177:24908,36178:25239,36179:25304,36180:25511,36181:25915,36182:26114,36183:26179,36184:26356,36185:26477,36186:26657,36187:26775,36188:27083,36189:27743,36190:27946,36191:28009,36192:28207,36193:28317,36194:30002,36195:30343,36196:30828,36197:31295,36198:31968,36199:32005,36200:32024,36201:32094,36202:32177,36203:32789,36204:32771,36205:32943,36206:32945,36207:33108,36208:33167,36209:33322,36210:33618,36211:34892,36212:34913,36213:35611,36214:36002,36215:36092,36216:37066,36217:37237,36218:37489,36219:30783,36220:37628,36221:38308,36222:38477,36224:38917,36225:39321,36226:39640,36227:40251,36228:21083,36229:21163,36230:21495,36231:21512,36232:22741,36233:25335,36234:28640,36235:35946,36236:36703,36237:40633,36238:20811,36239:21051,36240:21578,36241:22269,36242:31296,36243:37239,36244:40288,36245:40658,36246:29508,36247:28425,36248:33136,36249:29969,36250:24573,36251:24794,36252:39592,36253:29403,36254:36796,36255:27492,36256:38915,36257:20170,36258:22256,36259:22372,36260:22718,36261:23130,36262:24680,36263:25031,36264:26127,36265:26118,36266:26681,36267:26801,36268:28151,36269:30165,36270:32058,36271:33390,36272:39746,36273:20123,36274:20304,36275:21449,36276:21766,36277:23919,36278:24038,36279:24046,36280:26619,36281:27801,36282:29811,36283:30722,36284:35408,36285:37782,36286:35039,36287:22352,36288:24231,36289:25387,36290:20661,36291:20652,36292:20877,36293:26368,36294:21705,36295:22622,36296:22971,36297:23472,36298:24425,36299:25165,36300:25505,36301:26685,36302:27507,36303:28168,36304:28797,36305:37319,36306:29312,36307:30741,36308:30758,36309:31085,36310:25998,36311:32048,36312:33756,36313:35009,36314:36617,36315:38555,36316:21092,36317:22312,36318:26448,36319:32618,36320:36001,36321:20916,36322:22338,36323:38442,36324:22586,36325:27018,36326:32948,36327:21682,36328:23822,36329:22524,36330:30869,36331:40442,36332:20316,36333:21066,36334:21643,36335:25662,36336:26152,36337:26388,36338:26613,36339:31364,36340:31574,36341:32034,36342:37679,36343:26716,36344:39853,36345:31545,36346:21273,36347:20874,36348:21047,36416:23519,36417:25334,36418:25774,36419:25830,36420:26413,36421:27578,36422:34217,36423:38609,36424:30352,36425:39894,36426:25420,36427:37638,36428:39851,36429:30399,36430:26194,36431:19977,36432:20632,36433:21442,36434:23665,36435:24808,36436:25746,36437:25955,36438:26719,36439:29158,36440:29642,36441:29987,36442:31639,36443:32386,36444:34453,36445:35715,36446:36059,36447:37240,36448:39184,36449:26028,36450:26283,36451:27531,36452:20181,36453:20180,36454:20282,36455:20351,36456:21050,36457:21496,36458:21490,36459:21987,36460:22235,36461:22763,36462:22987,36463:22985,36464:23039,36465:23376,36466:23629,36467:24066,36468:24107,36469:24535,36470:24605,36471:25351,36472:25903,36473:23388,36474:26031,36475:26045,36476:26088,36477:26525,36478:27490,36480:27515,36481:27663,36482:29509,36483:31049,36484:31169,36485:31992,36486:32025,36487:32043,36488:32930,36489:33026,36490:33267,36491:35222,36492:35422,36493:35433,36494:35430,36495:35468,36496:35566,36497:36039,36498:36060,36499:38604,36500:39164,36501:27503,36502:20107,36503:20284,36504:20365,36505:20816,36506:23383,36507:23546,36508:24904,36509:25345,36510:26178,36511:27425,36512:28363,36513:27835,36514:29246,36515:29885,36516:30164,36517:30913,36518:31034,36519:32780,36520:32819,36521:33258,36522:33940,36523:36766,36524:27728,36525:40575,36526:24335,36527:35672,36528:40235,36529:31482,36530:36600,36531:23437,36532:38635,36533:19971,36534:21489,36535:22519,36536:22833,36537:23241,36538:23460,36539:24713,36540:28287,36541:28422,36542:30142,36543:36074,36544:23455,36545:34048,36546:31712,36547:20594,36548:26612,36549:33437,36550:23649,36551:34122,36552:32286,36553:33294,36554:20889,36555:23556,36556:25448,36557:36198,36558:26012,36559:29038,36560:31038,36561:32023,36562:32773,36563:35613,36564:36554,36565:36974,36566:34503,36567:37034,36568:20511,36569:21242,36570:23610,36571:26451,36572:28796,36573:29237,36574:37196,36575:37320,36576:37675,36577:33509,36578:23490,36579:24369,36580:24825,36581:20027,36582:21462,36583:23432,36584:25163,36585:26417,36586:27530,36587:29417,36588:29664,36589:31278,36590:33131,36591:36259,36592:37202,36593:39318,36594:20754,36595:21463,36596:21610,36597:23551,36598:25480,36599:27193,36600:32172,36601:38656,36602:22234,36603:21454,36604:21608,36672:23447,36673:23601,36674:24030,36675:20462,36676:24833,36677:25342,36678:27954,36679:31168,36680:31179,36681:32066,36682:32333,36683:32722,36684:33261,36685:33311,36686:33936,36687:34886,36688:35186,36689:35728,36690:36468,36691:36655,36692:36913,36693:37195,36694:37228,36695:38598,36696:37276,36697:20160,36698:20303,36699:20805,36700:21313,36701:24467,36702:25102,36703:26580,36704:27713,36705:28171,36706:29539,36707:32294,36708:37325,36709:37507,36710:21460,36711:22809,36712:23487,36713:28113,36714:31069,36715:32302,36716:31899,36717:22654,36718:29087,36719:20986,36720:34899,36721:36848,36722:20426,36723:23803,36724:26149,36725:30636,36726:31459,36727:33308,36728:39423,36729:20934,36730:24490,36731:26092,36732:26991,36733:27529,36734:28147,36736:28310,36737:28516,36738:30462,36739:32020,36740:24033,36741:36981,36742:37255,36743:38918,36744:20966,36745:21021,36746:25152,36747:26257,36748:26329,36749:28186,36750:24246,36751:32210,36752:32626,36753:26360,36754:34223,36755:34295,36756:35576,36757:21161,36758:21465,36759:22899,36760:24207,36761:24464,36762:24661,36763:37604,36764:38500,36765:20663,36766:20767,36767:21213,36768:21280,36769:21319,36770:21484,36771:21736,36772:21830,36773:21809,36774:22039,36775:22888,36776:22974,36777:23100,36778:23477,36779:23558,36780:23567,36781:23569,36782:23578,36783:24196,36784:24202,36785:24288,36786:24432,36787:25215,36788:25220,36789:25307,36790:25484,36791:25463,36792:26119,36793:26124,36794:26157,36795:26230,36796:26494,36797:26786,36798:27167,36799:27189,36800:27836,36801:28040,36802:28169,36803:28248,36804:28988,36805:28966,36806:29031,36807:30151,36808:30465,36809:30813,36810:30977,36811:31077,36812:31216,36813:31456,36814:31505,36815:31911,36816:32057,36817:32918,36818:33750,36819:33931,36820:34121,36821:34909,36822:35059,36823:35359,36824:35388,36825:35412,36826:35443,36827:35937,36828:36062,36829:37284,36830:37478,36831:37758,36832:37912,36833:38556,36834:38808,36835:19978,36836:19976,36837:19998,36838:20055,36839:20887,36840:21104,36841:22478,36842:22580,36843:22732,36844:23330,36845:24120,36846:24773,36847:25854,36848:26465,36849:26454,36850:27972,36851:29366,36852:30067,36853:31331,36854:33976,36855:35698,36856:37304,36857:37664,36858:22065,36859:22516,36860:39166,36928:25325,36929:26893,36930:27542,36931:29165,36932:32340,36933:32887,36934:33394,36935:35302,36936:39135,36937:34645,36938:36785,36939:23611,36940:20280,36941:20449,36942:20405,36943:21767,36944:23072,36945:23517,36946:23529,36947:24515,36948:24910,36949:25391,36950:26032,36951:26187,36952:26862,36953:27035,36954:28024,36955:28145,36956:30003,36957:30137,36958:30495,36959:31070,36960:31206,36961:32051,36962:33251,36963:33455,36964:34218,36965:35242,36966:35386,36967:36523,36968:36763,36969:36914,36970:37341,36971:38663,36972:20154,36973:20161,36974:20995,36975:22645,36976:22764,36977:23563,36978:29978,36979:23613,36980:33102,36981:35338,36982:36805,36983:38499,36984:38765,36985:31525,36986:35535,36987:38920,36988:37218,36989:22259,36990:21416,36992:36887,36993:21561,36994:22402,36995:24101,36996:25512,36997:27700,36998:28810,36999:30561,37e3:31883,37001:32736,37002:34928,37003:36930,37004:37204,37005:37648,37006:37656,37007:38543,37008:29790,37009:39620,37010:23815,37011:23913,37012:25968,37013:26530,37014:36264,37015:38619,37016:25454,37017:26441,37018:26905,37019:33733,37020:38935,37021:38592,37022:35070,37023:28548,37024:25722,37025:23544,37026:19990,37027:28716,37028:30045,37029:26159,37030:20932,37031:21046,37032:21218,37033:22995,37034:24449,37035:24615,37036:25104,37037:25919,37038:25972,37039:26143,37040:26228,37041:26866,37042:26646,37043:27491,37044:28165,37045:29298,37046:29983,37047:30427,37048:31934,37049:32854,37050:22768,37051:35069,37052:35199,37053:35488,37054:35475,37055:35531,37056:36893,37057:37266,37058:38738,37059:38745,37060:25993,37061:31246,37062:33030,37063:38587,37064:24109,37065:24796,37066:25114,37067:26021,37068:26132,37069:26512,37070:30707,37071:31309,37072:31821,37073:32318,37074:33034,37075:36012,37076:36196,37077:36321,37078:36447,37079:30889,37080:20999,37081:25305,37082:25509,37083:25666,37084:25240,37085:35373,37086:31363,37087:31680,37088:35500,37089:38634,37090:32118,37091:33292,37092:34633,37093:20185,37094:20808,37095:21315,37096:21344,37097:23459,37098:23554,37099:23574,37100:24029,37101:25126,37102:25159,37103:25776,37104:26643,37105:26676,37106:27849,37107:27973,37108:27927,37109:26579,37110:28508,37111:29006,37112:29053,37113:26059,37114:31359,37115:31661,37116:32218,37184:32330,37185:32680,37186:33146,37187:33307,37188:33337,37189:34214,37190:35438,37191:36046,37192:36341,37193:36984,37194:36983,37195:37549,37196:37521,37197:38275,37198:39854,37199:21069,37200:21892,37201:28472,37202:28982,37203:20840,37204:31109,37205:32341,37206:33203,37207:31950,37208:22092,37209:22609,37210:23720,37211:25514,37212:26366,37213:26365,37214:26970,37215:29401,37216:30095,37217:30094,37218:30990,37219:31062,37220:31199,37221:31895,37222:32032,37223:32068,37224:34311,37225:35380,37226:38459,37227:36961,37228:40736,37229:20711,37230:21109,37231:21452,37232:21474,37233:20489,37234:21930,37235:22766,37236:22863,37237:29245,37238:23435,37239:23652,37240:21277,37241:24803,37242:24819,37243:25436,37244:25475,37245:25407,37246:25531,37248:25805,37249:26089,37250:26361,37251:24035,37252:27085,37253:27133,37254:28437,37255:29157,37256:20105,37257:30185,37258:30456,37259:31379,37260:31967,37261:32207,37262:32156,37263:32865,37264:33609,37265:33624,37266:33900,37267:33980,37268:34299,37269:35013,37270:36208,37271:36865,37272:36973,37273:37783,37274:38684,37275:39442,37276:20687,37277:22679,37278:24974,37279:33235,37280:34101,37281:36104,37282:36896,37283:20419,37284:20596,37285:21063,37286:21363,37287:24687,37288:25417,37289:26463,37290:28204,37291:36275,37292:36895,37293:20439,37294:23646,37295:36042,37296:26063,37297:32154,37298:21330,37299:34966,37300:20854,37301:25539,37302:23384,37303:23403,37304:23562,37305:25613,37306:26449,37307:36956,37308:20182,37309:22810,37310:22826,37311:27760,37312:35409,37313:21822,37314:22549,37315:22949,37316:24816,37317:25171,37318:26561,37319:33333,37320:26965,37321:38464,37322:39364,37323:39464,37324:20307,37325:22534,37326:23550,37327:32784,37328:23729,37329:24111,37330:24453,37331:24608,37332:24907,37333:25140,37334:26367,37335:27888,37336:28382,37337:32974,37338:33151,37339:33492,37340:34955,37341:36024,37342:36864,37343:36910,37344:38538,37345:40667,37346:39899,37347:20195,37348:21488,37349:22823,37350:31532,37351:37261,37352:38988,37353:40441,37354:28381,37355:28711,37356:21331,37357:21828,37358:23429,37359:25176,37360:25246,37361:25299,37362:27810,37363:28655,37364:29730,37365:35351,37366:37944,37367:28609,37368:35582,37369:33592,37370:20967,37371:34552,37372:21482,37440:21481,37441:20294,37442:36948,37443:36784,37444:22890,37445:33073,37446:24061,37447:31466,37448:36799,37449:26842,37450:35895,37451:29432,37452:40008,37453:27197,37454:35504,37455:20025,37456:21336,37457:22022,37458:22374,37459:25285,37460:25506,37461:26086,37462:27470,37463:28129,37464:28251,37465:28845,37466:30701,37467:31471,37468:31658,37469:32187,37470:32829,37471:32966,37472:34507,37473:35477,37474:37723,37475:22243,37476:22727,37477:24382,37478:26029,37479:26262,37480:27264,37481:27573,37482:30007,37483:35527,37484:20516,37485:30693,37486:22320,37487:24347,37488:24677,37489:26234,37490:27744,37491:30196,37492:31258,37493:32622,37494:33268,37495:34584,37496:36933,37497:39347,37498:31689,37499:30044,37500:31481,37501:31569,37502:33988,37504:36880,37505:31209,37506:31378,37507:33590,37508:23265,37509:30528,37510:20013,37511:20210,37512:23449,37513:24544,37514:25277,37515:26172,37516:26609,37517:27880,37518:34411,37519:34935,37520:35387,37521:37198,37522:37619,37523:39376,37524:27159,37525:28710,37526:29482,37527:33511,37528:33879,37529:36015,37530:19969,37531:20806,37532:20939,37533:21899,37534:23541,37535:24086,37536:24115,37537:24193,37538:24340,37539:24373,37540:24427,37541:24500,37542:25074,37543:25361,37544:26274,37545:26397,37546:28526,37547:29266,37548:30010,37549:30522,37550:32884,37551:33081,37552:33144,37553:34678,37554:35519,37555:35548,37556:36229,37557:36339,37558:37530,37559:38263,37560:38914,37561:40165,37562:21189,37563:25431,37564:30452,37565:26389,37566:27784,37567:29645,37568:36035,37569:37806,37570:38515,37571:27941,37572:22684,37573:26894,37574:27084,37575:36861,37576:37786,37577:30171,37578:36890,37579:22618,37580:26626,37581:25524,37582:27131,37583:20291,37584:28460,37585:26584,37586:36795,37587:34086,37588:32180,37589:37716,37590:26943,37591:28528,37592:22378,37593:22775,37594:23340,37595:32044,37596:29226,37597:21514,37598:37347,37599:40372,37600:20141,37601:20302,37602:20572,37603:20597,37604:21059,37605:35998,37606:21576,37607:22564,37608:23450,37609:24093,37610:24213,37611:24237,37612:24311,37613:24351,37614:24716,37615:25269,37616:25402,37617:25552,37618:26799,37619:27712,37620:30855,37621:31118,37622:31243,37623:32224,37624:33351,37625:35330,37626:35558,37627:36420,37628:36883,37696:37048,37697:37165,37698:37336,37699:40718,37700:27877,37701:25688,37702:25826,37703:25973,37704:28404,37705:30340,37706:31515,37707:36969,37708:37841,37709:28346,37710:21746,37711:24505,37712:25764,37713:36685,37714:36845,37715:37444,37716:20856,37717:22635,37718:22825,37719:23637,37720:24215,37721:28155,37722:32399,37723:29980,37724:36028,37725:36578,37726:39003,37727:28857,37728:20253,37729:27583,37730:28593,37731:3e4,37732:38651,37733:20814,37734:21520,37735:22581,37736:22615,37737:22956,37738:23648,37739:24466,37740:26007,37741:26460,37742:28193,37743:30331,37744:33759,37745:36077,37746:36884,37747:37117,37748:37709,37749:30757,37750:30778,37751:21162,37752:24230,37753:22303,37754:22900,37755:24594,37756:20498,37757:20826,37758:20908,37760:20941,37761:20992,37762:21776,37763:22612,37764:22616,37765:22871,37766:23445,37767:23798,37768:23947,37769:24764,37770:25237,37771:25645,37772:26481,37773:26691,37774:26812,37775:26847,37776:30423,37777:28120,37778:28271,37779:28059,37780:28783,37781:29128,37782:24403,37783:30168,37784:31095,37785:31561,37786:31572,37787:31570,37788:31958,37789:32113,37790:21040,37791:33891,37792:34153,37793:34276,37794:35342,37795:35588,37796:35910,37797:36367,37798:36867,37799:36879,37800:37913,37801:38518,37802:38957,37803:39472,37804:38360,37805:20685,37806:21205,37807:21516,37808:22530,37809:23566,37810:24999,37811:25758,37812:27934,37813:30643,37814:31461,37815:33012,37816:33796,37817:36947,37818:37509,37819:23776,37820:40199,37821:21311,37822:24471,37823:24499,37824:28060,37825:29305,37826:30563,37827:31167,37828:31716,37829:27602,37830:29420,37831:35501,37832:26627,37833:27233,37834:20984,37835:31361,37836:26932,37837:23626,37838:40182,37839:33515,37840:23493,37841:37193,37842:28702,37843:22136,37844:23663,37845:24775,37846:25958,37847:27788,37848:35930,37849:36929,37850:38931,37851:21585,37852:26311,37853:37389,37854:22856,37855:37027,37856:20869,37857:20045,37858:20970,37859:34201,37860:35598,37861:28760,37862:25466,37863:37707,37864:26978,37865:39348,37866:32260,37867:30071,37868:21335,37869:26976,37870:36575,37871:38627,37872:27741,37873:20108,37874:23612,37875:24336,37876:36841,37877:21250,37878:36049,37879:32905,37880:34425,37881:24319,37882:26085,37883:20083,37884:20837,37952:22914,37953:23615,37954:38894,37955:20219,37956:22922,37957:24525,37958:35469,37959:28641,37960:31152,37961:31074,37962:23527,37963:33905,37964:29483,37965:29105,37966:24180,37967:24565,37968:25467,37969:25754,37970:29123,37971:31896,37972:20035,37973:24316,37974:20043,37975:22492,37976:22178,37977:24745,37978:28611,37979:32013,37980:33021,37981:33075,37982:33215,37983:36786,37984:35223,37985:34468,37986:24052,37987:25226,37988:25773,37989:35207,37990:26487,37991:27874,37992:27966,37993:29750,37994:30772,37995:23110,37996:32629,37997:33453,37998:39340,37999:20467,38e3:24259,38001:25309,38002:25490,38003:25943,38004:26479,38005:30403,38006:29260,38007:32972,38008:32954,38009:36649,38010:37197,38011:20493,38012:22521,38013:23186,38014:26757,38016:26995,38017:29028,38018:29437,38019:36023,38020:22770,38021:36064,38022:38506,38023:36889,38024:34687,38025:31204,38026:30695,38027:33833,38028:20271,38029:21093,38030:21338,38031:25293,38032:26575,38033:27850,38034:30333,38035:31636,38036:31893,38037:33334,38038:34180,38039:36843,38040:26333,38041:28448,38042:29190,38043:32283,38044:33707,38045:39361,38046:40614,38047:20989,38048:31665,38049:30834,38050:31672,38051:32903,38052:31560,38053:27368,38054:24161,38055:32908,38056:30033,38057:30048,38058:20843,38059:37474,38060:28300,38061:30330,38062:37271,38063:39658,38064:20240,38065:32624,38066:25244,38067:31567,38068:38309,38069:40169,38070:22138,38071:22617,38072:34532,38073:38588,38074:20276,38075:21028,38076:21322,38077:21453,38078:21467,38079:24070,38080:25644,38081:26001,38082:26495,38083:27710,38084:27726,38085:29256,38086:29359,38087:29677,38088:30036,38089:32321,38090:33324,38091:34281,38092:36009,38093:31684,38094:37318,38095:29033,38096:38930,38097:39151,38098:25405,38099:26217,38100:30058,38101:30436,38102:30928,38103:34115,38104:34542,38105:21290,38106:21329,38107:21542,38108:22915,38109:24199,38110:24444,38111:24754,38112:25161,38113:25209,38114:25259,38115:26e3,38116:27604,38117:27852,38118:30130,38119:30382,38120:30865,38121:31192,38122:32203,38123:32631,38124:32933,38125:34987,38126:35513,38127:36027,38128:36991,38129:38750,38130:39131,38131:27147,38132:31800,38133:20633,38134:23614,38135:24494,38136:26503,38137:27608,38138:29749,38139:30473,38140:32654,38208:40763,38209:26570,38210:31255,38211:21305,38212:30091,38213:39661,38214:24422,38215:33181,38216:33777,38217:32920,38218:24380,38219:24517,38220:30050,38221:31558,38222:36924,38223:26727,38224:23019,38225:23195,38226:32016,38227:30334,38228:35628,38229:20469,38230:24426,38231:27161,38232:27703,38233:28418,38234:29922,38235:31080,38236:34920,38237:35413,38238:35961,38239:24287,38240:25551,38241:30149,38242:31186,38243:33495,38244:37672,38245:37618,38246:33948,38247:34541,38248:39981,38249:21697,38250:24428,38251:25996,38252:27996,38253:28693,38254:36007,38255:36051,38256:38971,38257:25935,38258:29942,38259:19981,38260:20184,38261:22496,38262:22827,38263:23142,38264:23500,38265:20904,38266:24067,38267:24220,38268:24598,38269:25206,38270:25975,38272:26023,38273:26222,38274:28014,38275:29238,38276:31526,38277:33104,38278:33178,38279:33433,38280:35676,38281:36e3,38282:36070,38283:36212,38284:38428,38285:38468,38286:20398,38287:25771,38288:27494,38289:33310,38290:33889,38291:34154,38292:37096,38293:23553,38294:26963,38295:39080,38296:33914,38297:34135,38298:20239,38299:21103,38300:24489,38301:24133,38302:26381,38303:31119,38304:33145,38305:35079,38306:35206,38307:28149,38308:24343,38309:25173,38310:27832,38311:20175,38312:29289,38313:39826,38314:20998,38315:21563,38316:22132,38317:22707,38318:24996,38319:25198,38320:28954,38321:22894,38322:31881,38323:31966,38324:32027,38325:38640,38326:25991,38327:32862,38328:19993,38329:20341,38330:20853,38331:22592,38332:24163,38333:24179,38334:24330,38335:26564,38336:20006,38337:34109,38338:38281,38339:38491,38340:31859,38341:38913,38342:20731,38343:22721,38344:30294,38345:30887,38346:21029,38347:30629,38348:34065,38349:31622,38350:20559,38351:22793,38352:29255,38353:31687,38354:32232,38355:36794,38356:36820,38357:36941,38358:20415,38359:21193,38360:23081,38361:24321,38362:38829,38363:20445,38364:33303,38365:37610,38366:22275,38367:25429,38368:27497,38369:29995,38370:35036,38371:36628,38372:31298,38373:21215,38374:22675,38375:24917,38376:25098,38377:26286,38378:27597,38379:31807,38380:33769,38381:20515,38382:20472,38383:21253,38384:21574,38385:22577,38386:22857,38387:23453,38388:23792,38389:23791,38390:23849,38391:24214,38392:25265,38393:25447,38394:25918,38395:26041,38396:26379,38464:27861,38465:27873,38466:28921,38467:30770,38468:32299,38469:32990,38470:33459,38471:33804,38472:34028,38473:34562,38474:35090,38475:35370,38476:35914,38477:37030,38478:37586,38479:39165,38480:40179,38481:40300,38482:20047,38483:20129,38484:20621,38485:21078,38486:22346,38487:22952,38488:24125,38489:24536,38490:24537,38491:25151,38492:26292,38493:26395,38494:26576,38495:26834,38496:20882,38497:32033,38498:32938,38499:33192,38500:35584,38501:35980,38502:36031,38503:37502,38504:38450,38505:21536,38506:38956,38507:21271,38508:20693,38509:21340,38510:22696,38511:25778,38512:26420,38513:29287,38514:30566,38515:31302,38516:37350,38517:21187,38518:27809,38519:27526,38520:22528,38521:24140,38522:22868,38523:26412,38524:32763,38525:20961,38526:30406,38528:25705,38529:30952,38530:39764,38531:40635,38532:22475,38533:22969,38534:26151,38535:26522,38536:27598,38537:21737,38538:27097,38539:24149,38540:33180,38541:26517,38542:39850,38543:26622,38544:40018,38545:26717,38546:20134,38547:20451,38548:21448,38549:25273,38550:26411,38551:27819,38552:36804,38553:20397,38554:32365,38555:40639,38556:19975,38557:24930,38558:28288,38559:28459,38560:34067,38561:21619,38562:26410,38563:39749,38564:24051,38565:31637,38566:23724,38567:23494,38568:34588,38569:28234,38570:34001,38571:31252,38572:33032,38573:22937,38574:31885,38575:27665,38576:30496,38577:21209,38578:22818,38579:28961,38580:29279,38581:30683,38582:38695,38583:40289,38584:26891,38585:23167,38586:23064,38587:20901,38588:21517,38589:21629,38590:26126,38591:30431,38592:36855,38593:37528,38594:40180,38595:23018,38596:29277,38597:28357,38598:20813,38599:26825,38600:32191,38601:32236,38602:38754,38603:40634,38604:25720,38605:27169,38606:33538,38607:22916,38608:23391,38609:27611,38610:29467,38611:30450,38612:32178,38613:32791,38614:33945,38615:20786,38616:26408,38617:40665,38618:30446,38619:26466,38620:21247,38621:39173,38622:23588,38623:25147,38624:31870,38625:36016,38626:21839,38627:24758,38628:32011,38629:38272,38630:21249,38631:20063,38632:20918,38633:22812,38634:29242,38635:32822,38636:37326,38637:24357,38638:30690,38639:21380,38640:24441,38641:32004,38642:34220,38643:35379,38644:36493,38645:38742,38646:26611,38647:34222,38648:37971,38649:24841,38650:24840,38651:27833,38652:30290,38720:35565,38721:36664,38722:21807,38723:20305,38724:20778,38725:21191,38726:21451,38727:23461,38728:24189,38729:24736,38730:24962,38731:25558,38732:26377,38733:26586,38734:28263,38735:28044,38736:29494,38737:29495,38738:30001,38739:31056,38740:35029,38741:35480,38742:36938,38743:37009,38744:37109,38745:38596,38746:34701,38747:22805,38748:20104,38749:20313,38750:19982,38751:35465,38752:36671,38753:38928,38754:20653,38755:24188,38756:22934,38757:23481,38758:24248,38759:25562,38760:25594,38761:25793,38762:26332,38763:26954,38764:27096,38765:27915,38766:28342,38767:29076,38768:29992,38769:31407,38770:32650,38771:32768,38772:33865,38773:33993,38774:35201,38775:35617,38776:36362,38777:36965,38778:38525,38779:39178,38780:24958,38781:25233,38782:27442,38784:27779,38785:28020,38786:32716,38787:32764,38788:28096,38789:32645,38790:34746,38791:35064,38792:26469,38793:33713,38794:38972,38795:38647,38796:27931,38797:32097,38798:33853,38799:37226,38800:20081,38801:21365,38802:23888,38803:27396,38804:28651,38805:34253,38806:34349,38807:35239,38808:21033,38809:21519,38810:23653,38811:26446,38812:26792,38813:29702,38814:29827,38815:30178,38816:35023,38817:35041,38818:37324,38819:38626,38820:38520,38821:24459,38822:29575,38823:31435,38824:33870,38825:25504,38826:30053,38827:21129,38828:27969,38829:28316,38830:29705,38831:30041,38832:30827,38833:31890,38834:38534,38835:31452,38836:40845,38837:20406,38838:24942,38839:26053,38840:34396,38841:20102,38842:20142,38843:20698,38844:20001,38845:20940,38846:23534,38847:26009,38848:26753,38849:28092,38850:29471,38851:30274,38852:30637,38853:31260,38854:31975,38855:33391,38856:35538,38857:36988,38858:37327,38859:38517,38860:38936,38861:21147,38862:32209,38863:20523,38864:21400,38865:26519,38866:28107,38867:29136,38868:29747,38869:33256,38870:36650,38871:38563,38872:40023,38873:40607,38874:29792,38875:22593,38876:28057,38877:32047,38878:39006,38879:20196,38880:20278,38881:20363,38882:20919,38883:21169,38884:23994,38885:24604,38886:29618,38887:31036,38888:33491,38889:37428,38890:38583,38891:38646,38892:38666,38893:40599,38894:40802,38895:26278,38896:27508,38897:21015,38898:21155,38899:28872,38900:35010,38901:24265,38902:24651,38903:24976,38904:28451,38905:29001,38906:31806,38907:32244,38908:32879,38976:34030,38977:36899,38978:37676,38979:21570,38980:39791,38981:27347,38982:28809,38983:36034,38984:36335,38985:38706,38986:21172,38987:23105,38988:24266,38989:24324,38990:26391,38991:27004,38992:27028,38993:28010,38994:28431,38995:29282,38996:29436,38997:31725,38998:32769,38999:32894,39e3:34635,39001:37070,39002:20845,39003:40595,39004:31108,39005:32907,39006:37682,39007:35542,39008:20525,39009:21644,39010:35441,39011:27498,39012:36036,39013:33031,39014:24785,39015:26528,39016:40434,39017:20121,39018:20120,39019:39952,39020:35435,39021:34241,39022:34152,39023:26880,39024:28286,39025:30871,39026:33109,39071:24332,39072:19984,39073:19989,39074:20010,39075:20017,39076:20022,39077:20028,39078:20031,39079:20034,39080:20054,39081:20056,39082:20098,39083:20101,39084:35947,39085:20106,39086:33298,39087:24333,39088:20110,39089:20126,39090:20127,39091:20128,39092:20130,39093:20144,39094:20147,39095:20150,39096:20174,39097:20173,39098:20164,39099:20166,39100:20162,39101:20183,39102:20190,39103:20205,39104:20191,39105:20215,39106:20233,39107:20314,39108:20272,39109:20315,39110:20317,39111:20311,39112:20295,39113:20342,39114:20360,39115:20367,39116:20376,39117:20347,39118:20329,39119:20336,39120:20369,39121:20335,39122:20358,39123:20374,39124:20760,39125:20436,39126:20447,39127:20430,39128:20440,39129:20443,39130:20433,39131:20442,39132:20432,39133:20452,39134:20453,39135:20506,39136:20520,39137:20500,39138:20522,39139:20517,39140:20485,39141:20252,39142:20470,39143:20513,39144:20521,39145:20524,39146:20478,39147:20463,39148:20497,39149:20486,39150:20547,39151:20551,39152:26371,39153:20565,39154:20560,39155:20552,39156:20570,39157:20566,39158:20588,39159:20600,39160:20608,39161:20634,39162:20613,39163:20660,39164:20658,39232:20681,39233:20682,39234:20659,39235:20674,39236:20694,39237:20702,39238:20709,39239:20717,39240:20707,39241:20718,39242:20729,39243:20725,39244:20745,39245:20737,39246:20738,39247:20758,39248:20757,39249:20756,39250:20762,39251:20769,39252:20794,39253:20791,39254:20796,39255:20795,39256:20799,39257:20800,39258:20818,39259:20812,39260:20820,39261:20834,39262:31480,39263:20841,39264:20842,39265:20846,39266:20864,39267:20866,39268:22232,39269:20876,39270:20873,39271:20879,39272:20881,39273:20883,39274:20885,39275:20886,39276:20900,39277:20902,39278:20898,39279:20905,39280:20906,39281:20907,39282:20915,39283:20913,39284:20914,39285:20912,39286:20917,39287:20925,39288:20933,39289:20937,39290:20955,39291:20960,39292:34389,39293:20969,39294:20973,39296:20976,39297:20981,39298:20990,39299:20996,39300:21003,39301:21012,39302:21006,39303:21031,39304:21034,39305:21038,39306:21043,39307:21049,39308:21071,39309:21060,39310:21067,39311:21068,39312:21086,39313:21076,39314:21098,39315:21108,39316:21097,39317:21107,39318:21119,39319:21117,39320:21133,39321:21140,39322:21138,39323:21105,39324:21128,39325:21137,39326:36776,39327:36775,39328:21164,39329:21165,39330:21180,39331:21173,39332:21185,39333:21197,39334:21207,39335:21214,39336:21219,39337:21222,39338:39149,39339:21216,39340:21235,39341:21237,39342:21240,39343:21241,39344:21254,39345:21256,39346:30008,39347:21261,39348:21264,39349:21263,39350:21269,39351:21274,39352:21283,39353:21295,39354:21297,39355:21299,39356:21304,39357:21312,39358:21318,39359:21317,39360:19991,39361:21321,39362:21325,39363:20950,39364:21342,39365:21353,39366:21358,39367:22808,39368:21371,39369:21367,39370:21378,39371:21398,39372:21408,39373:21414,39374:21413,39375:21422,39376:21424,39377:21430,39378:21443,39379:31762,39380:38617,39381:21471,39382:26364,39383:29166,39384:21486,39385:21480,39386:21485,39387:21498,39388:21505,39389:21565,39390:21568,39391:21548,39392:21549,39393:21564,39394:21550,39395:21558,39396:21545,39397:21533,39398:21582,39399:21647,39400:21621,39401:21646,39402:21599,39403:21617,39404:21623,39405:21616,39406:21650,39407:21627,39408:21632,39409:21622,39410:21636,39411:21648,39412:21638,39413:21703,39414:21666,39415:21688,39416:21669,39417:21676,39418:21700,39419:21704,39420:21672,39488:21675,39489:21698,39490:21668,39491:21694,39492:21692,39493:21720,39494:21733,39495:21734,39496:21775,39497:21780,39498:21757,39499:21742,39500:21741,39501:21754,39502:21730,39503:21817,39504:21824,39505:21859,39506:21836,39507:21806,39508:21852,39509:21829,39510:21846,39511:21847,39512:21816,39513:21811,39514:21853,39515:21913,39516:21888,39517:21679,39518:21898,39519:21919,39520:21883,39521:21886,39522:21912,39523:21918,39524:21934,39525:21884,39526:21891,39527:21929,39528:21895,39529:21928,39530:21978,39531:21957,39532:21983,39533:21956,39534:21980,39535:21988,39536:21972,39537:22036,39538:22007,39539:22038,39540:22014,39541:22013,39542:22043,39543:22009,39544:22094,39545:22096,39546:29151,39547:22068,39548:22070,39549:22066,39550:22072,39552:22123,39553:22116,39554:22063,39555:22124,39556:22122,39557:22150,39558:22144,39559:22154,39560:22176,39561:22164,39562:22159,39563:22181,39564:22190,39565:22198,39566:22196,39567:22210,39568:22204,39569:22209,39570:22211,39571:22208,39572:22216,39573:22222,39574:22225,39575:22227,39576:22231,39577:22254,39578:22265,39579:22272,39580:22271,39581:22276,39582:22281,39583:22280,39584:22283,39585:22285,39586:22291,39587:22296,39588:22294,39589:21959,39590:22300,39591:22310,39592:22327,39593:22328,39594:22350,39595:22331,39596:22336,39597:22351,39598:22377,39599:22464,39600:22408,39601:22369,39602:22399,39603:22409,39604:22419,39605:22432,39606:22451,39607:22436,39608:22442,39609:22448,39610:22467,39611:22470,39612:22484,39613:22482,39614:22483,39615:22538,39616:22486,39617:22499,39618:22539,39619:22553,39620:22557,39621:22642,39622:22561,39623:22626,39624:22603,39625:22640,39626:27584,39627:22610,39628:22589,39629:22649,39630:22661,39631:22713,39632:22687,39633:22699,39634:22714,39635:22750,39636:22715,39637:22712,39638:22702,39639:22725,39640:22739,39641:22737,39642:22743,39643:22745,39644:22744,39645:22757,39646:22748,39647:22756,39648:22751,39649:22767,39650:22778,39651:22777,39652:22779,39653:22780,39654:22781,39655:22786,39656:22794,39657:22800,39658:22811,39659:26790,39660:22821,39661:22828,39662:22829,39663:22834,39664:22840,39665:22846,39666:31442,39667:22869,39668:22864,39669:22862,39670:22874,39671:22872,39672:22882,39673:22880,39674:22887,39675:22892,39676:22889,39744:22904,39745:22913,39746:22941,39747:20318,39748:20395,39749:22947,39750:22962,39751:22982,39752:23016,39753:23004,39754:22925,39755:23001,39756:23002,39757:23077,39758:23071,39759:23057,39760:23068,39761:23049,39762:23066,39763:23104,39764:23148,39765:23113,39766:23093,39767:23094,39768:23138,39769:23146,39770:23194,39771:23228,39772:23230,39773:23243,39774:23234,39775:23229,39776:23267,39777:23255,39778:23270,39779:23273,39780:23254,39781:23290,39782:23291,39783:23308,39784:23307,39785:23318,39786:23346,39787:23248,39788:23338,39789:23350,39790:23358,39791:23363,39792:23365,39793:23360,39794:23377,39795:23381,39796:23386,39797:23387,39798:23397,39799:23401,39800:23408,39801:23411,39802:23413,39803:23416,39804:25992,39805:23418,39806:23424,39808:23427,39809:23462,39810:23480,39811:23491,39812:23495,39813:23497,39814:23508,39815:23504,39816:23524,39817:23526,39818:23522,39819:23518,39820:23525,39821:23531,39822:23536,39823:23542,39824:23539,39825:23557,39826:23559,39827:23560,39828:23565,39829:23571,39830:23584,39831:23586,39832:23592,39833:23608,39834:23609,39835:23617,39836:23622,39837:23630,39838:23635,39839:23632,39840:23631,39841:23409,39842:23660,39843:23662,39844:20066,39845:23670,39846:23673,39847:23692,39848:23697,39849:23700,39850:22939,39851:23723,39852:23739,39853:23734,39854:23740,39855:23735,39856:23749,39857:23742,39858:23751,39859:23769,39860:23785,39861:23805,39862:23802,39863:23789,39864:23948,39865:23786,39866:23819,39867:23829,39868:23831,39869:23900,39870:23839,39871:23835,39872:23825,39873:23828,39874:23842,39875:23834,39876:23833,39877:23832,39878:23884,39879:23890,39880:23886,39881:23883,39882:23916,39883:23923,39884:23926,39885:23943,39886:23940,39887:23938,39888:23970,39889:23965,39890:23980,39891:23982,39892:23997,39893:23952,39894:23991,39895:23996,39896:24009,39897:24013,39898:24019,39899:24018,39900:24022,39901:24027,39902:24043,39903:24050,39904:24053,39905:24075,39906:24090,39907:24089,39908:24081,39909:24091,39910:24118,39911:24119,39912:24132,39913:24131,39914:24128,39915:24142,39916:24151,39917:24148,39918:24159,39919:24162,39920:24164,39921:24135,39922:24181,39923:24182,39924:24186,39925:40636,39926:24191,39927:24224,39928:24257,39929:24258,39930:24264,39931:24272,39932:24271,4e4:24278,40001:24291,40002:24285,40003:24282,40004:24283,40005:24290,40006:24289,40007:24296,40008:24297,40009:24300,40010:24305,40011:24307,40012:24304,40013:24308,40014:24312,40015:24318,40016:24323,40017:24329,40018:24413,40019:24412,40020:24331,40021:24337,40022:24342,40023:24361,40024:24365,40025:24376,40026:24385,40027:24392,40028:24396,40029:24398,40030:24367,40031:24401,40032:24406,40033:24407,40034:24409,40035:24417,40036:24429,40037:24435,40038:24439,40039:24451,40040:24450,40041:24447,40042:24458,40043:24456,40044:24465,40045:24455,40046:24478,40047:24473,40048:24472,40049:24480,40050:24488,40051:24493,40052:24508,40053:24534,40054:24571,40055:24548,40056:24568,40057:24561,40058:24541,40059:24755,40060:24575,40061:24609,40062:24672,40064:24601,40065:24592,40066:24617,40067:24590,40068:24625,40069:24603,40070:24597,40071:24619,40072:24614,40073:24591,40074:24634,40075:24666,40076:24641,40077:24682,40078:24695,40079:24671,40080:24650,40081:24646,40082:24653,40083:24675,40084:24643,40085:24676,40086:24642,40087:24684,40088:24683,40089:24665,40090:24705,40091:24717,40092:24807,40093:24707,40094:24730,40095:24708,40096:24731,40097:24726,40098:24727,40099:24722,40100:24743,40101:24715,40102:24801,40103:24760,40104:24800,40105:24787,40106:24756,40107:24560,40108:24765,40109:24774,40110:24757,40111:24792,40112:24909,40113:24853,40114:24838,40115:24822,40116:24823,40117:24832,40118:24820,40119:24826,40120:24835,40121:24865,40122:24827,40123:24817,40124:24845,40125:24846,40126:24903,40127:24894,40128:24872,40129:24871,40130:24906,40131:24895,40132:24892,40133:24876,40134:24884,40135:24893,40136:24898,40137:24900,40138:24947,40139:24951,40140:24920,40141:24921,40142:24922,40143:24939,40144:24948,40145:24943,40146:24933,40147:24945,40148:24927,40149:24925,40150:24915,40151:24949,40152:24985,40153:24982,40154:24967,40155:25004,40156:24980,40157:24986,40158:24970,40159:24977,40160:25003,40161:25006,40162:25036,40163:25034,40164:25033,40165:25079,40166:25032,40167:25027,40168:25030,40169:25018,40170:25035,40171:32633,40172:25037,40173:25062,40174:25059,40175:25078,40176:25082,40177:25076,40178:25087,40179:25085,40180:25084,40181:25086,40182:25088,40183:25096,40184:25097,40185:25101,40186:25100,40187:25108,40188:25115,40256:25118,40257:25121,40258:25130,40259:25134,40260:25136,40261:25138,40262:25139,40263:25153,40264:25166,40265:25182,40266:25187,40267:25179,40268:25184,40269:25192,40270:25212,40271:25218,40272:25225,40273:25214,40274:25234,40275:25235,40276:25238,40277:25300,40278:25219,40279:25236,40280:25303,40281:25297,40282:25275,40283:25295,40284:25343,40285:25286,40286:25812,40287:25288,40288:25308,40289:25292,40290:25290,40291:25282,40292:25287,40293:25243,40294:25289,40295:25356,40296:25326,40297:25329,40298:25383,40299:25346,40300:25352,40301:25327,40302:25333,40303:25424,40304:25406,40305:25421,40306:25628,40307:25423,40308:25494,40309:25486,40310:25472,40311:25515,40312:25462,40313:25507,40314:25487,40315:25481,40316:25503,40317:25525,40318:25451,40320:25449,40321:25534,40322:25577,40323:25536,40324:25542,40325:25571,40326:25545,40327:25554,40328:25590,40329:25540,40330:25622,40331:25652,40332:25606,40333:25619,40334:25638,40335:25654,40336:25885,40337:25623,40338:25640,40339:25615,40340:25703,40341:25711,40342:25718,40343:25678,40344:25898,40345:25749,40346:25747,40347:25765,40348:25769,40349:25736,40350:25788,40351:25818,40352:25810,40353:25797,40354:25799,40355:25787,40356:25816,40357:25794,40358:25841,40359:25831,40360:33289,40361:25824,40362:25825,40363:25260,40364:25827,40365:25839,40366:25900,40367:25846,40368:25844,40369:25842,40370:25850,40371:25856,40372:25853,40373:25880,40374:25884,40375:25861,40376:25892,40377:25891,40378:25899,40379:25908,40380:25909,40381:25911,40382:25910,40383:25912,40384:30027,40385:25928,40386:25942,40387:25941,40388:25933,40389:25944,40390:25950,40391:25949,40392:25970,40393:25976,40394:25986,40395:25987,40396:35722,40397:26011,40398:26015,40399:26027,40400:26039,40401:26051,40402:26054,40403:26049,40404:26052,40405:26060,40406:26066,40407:26075,40408:26073,40409:26080,40410:26081,40411:26097,40412:26482,40413:26122,40414:26115,40415:26107,40416:26483,40417:26165,40418:26166,40419:26164,40420:26140,40421:26191,40422:26180,40423:26185,40424:26177,40425:26206,40426:26205,40427:26212,40428:26215,40429:26216,40430:26207,40431:26210,40432:26224,40433:26243,40434:26248,40435:26254,40436:26249,40437:26244,40438:26264,40439:26269,40440:26305,40441:26297,40442:26313,40443:26302,40444:26300,40512:26308,40513:26296,40514:26326,40515:26330,40516:26336,40517:26175,40518:26342,40519:26345,40520:26352,40521:26357,40522:26359,40523:26383,40524:26390,40525:26398,40526:26406,40527:26407,40528:38712,40529:26414,40530:26431,40531:26422,40532:26433,40533:26424,40534:26423,40535:26438,40536:26462,40537:26464,40538:26457,40539:26467,40540:26468,40541:26505,40542:26480,40543:26537,40544:26492,40545:26474,40546:26508,40547:26507,40548:26534,40549:26529,40550:26501,40551:26551,40552:26607,40553:26548,40554:26604,40555:26547,40556:26601,40557:26552,40558:26596,40559:26590,40560:26589,40561:26594,40562:26606,40563:26553,40564:26574,40565:26566,40566:26599,40567:27292,40568:26654,40569:26694,40570:26665,40571:26688,40572:26701,40573:26674,40574:26702,40576:26803,40577:26667,40578:26713,40579:26723,40580:26743,40581:26751,40582:26783,40583:26767,40584:26797,40585:26772,40586:26781,40587:26779,40588:26755,40589:27310,40590:26809,40591:26740,40592:26805,40593:26784,40594:26810,40595:26895,40596:26765,40597:26750,40598:26881,40599:26826,40600:26888,40601:26840,40602:26914,40603:26918,40604:26849,40605:26892,40606:26829,40607:26836,40608:26855,40609:26837,40610:26934,40611:26898,40612:26884,40613:26839,40614:26851,40615:26917,40616:26873,40617:26848,40618:26863,40619:26920,40620:26922,40621:26906,40622:26915,40623:26913,40624:26822,40625:27001,40626:26999,40627:26972,40628:27e3,40629:26987,40630:26964,40631:27006,40632:26990,40633:26937,40634:26996,40635:26941,40636:26969,40637:26928,40638:26977,40639:26974,40640:26973,40641:27009,40642:26986,40643:27058,40644:27054,40645:27088,40646:27071,40647:27073,40648:27091,40649:27070,40650:27086,40651:23528,40652:27082,40653:27101,40654:27067,40655:27075,40656:27047,40657:27182,40658:27025,40659:27040,40660:27036,40661:27029,40662:27060,40663:27102,40664:27112,40665:27138,40666:27163,40667:27135,40668:27402,40669:27129,40670:27122,40671:27111,40672:27141,40673:27057,40674:27166,40675:27117,40676:27156,40677:27115,40678:27146,40679:27154,40680:27329,40681:27171,40682:27155,40683:27204,40684:27148,40685:27250,40686:27190,40687:27256,40688:27207,40689:27234,40690:27225,40691:27238,40692:27208,40693:27192,40694:27170,40695:27280,40696:27277,40697:27296,40698:27268,40699:27298,40700:27299,40768:27287,40769:34327,40770:27323,40771:27331,40772:27330,40773:27320,40774:27315,40775:27308,40776:27358,40777:27345,40778:27359,40779:27306,40780:27354,40781:27370,40782:27387,40783:27397,40784:34326,40785:27386,40786:27410,40787:27414,40788:39729,40789:27423,40790:27448,40791:27447,40792:30428,40793:27449,40794:39150,40795:27463,40796:27459,40797:27465,40798:27472,40799:27481,40800:27476,40801:27483,40802:27487,40803:27489,40804:27512,40805:27513,40806:27519,40807:27520,40808:27524,40809:27523,40810:27533,40811:27544,40812:27541,40813:27550,40814:27556,40815:27562,40816:27563,40817:27567,40818:27570,40819:27569,40820:27571,40821:27575,40822:27580,40823:27590,40824:27595,40825:27603,40826:27615,40827:27628,40828:27627,40829:27635,40830:27631,40832:40638,40833:27656,40834:27667,40835:27668,40836:27675,40837:27684,40838:27683,40839:27742,40840:27733,40841:27746,40842:27754,40843:27778,40844:27789,40845:27802,40846:27777,40847:27803,40848:27774,40849:27752,40850:27763,40851:27794,40852:27792,40853:27844,40854:27889,40855:27859,40856:27837,40857:27863,40858:27845,40859:27869,40860:27822,40861:27825,40862:27838,40863:27834,40864:27867,40865:27887,40866:27865,40867:27882,40868:27935,40869:34893,40870:27958,40871:27947,40872:27965,40873:27960,40874:27929,40875:27957,40876:27955,40877:27922,40878:27916,40879:28003,40880:28051,40881:28004,40882:27994,40883:28025,40884:27993,40885:28046,40886:28053,40887:28644,40888:28037,40889:28153,40890:28181,40891:28170,40892:28085,40893:28103,40894:28134,40895:28088,40896:28102,40897:28140,40898:28126,40899:28108,40900:28136,40901:28114,40902:28101,40903:28154,40904:28121,40905:28132,40906:28117,40907:28138,40908:28142,40909:28205,40910:28270,40911:28206,40912:28185,40913:28274,40914:28255,40915:28222,40916:28195,40917:28267,40918:28203,40919:28278,40920:28237,40921:28191,40922:28227,40923:28218,40924:28238,40925:28196,40926:28415,40927:28189,40928:28216,40929:28290,40930:28330,40931:28312,40932:28361,40933:28343,40934:28371,40935:28349,40936:28335,40937:28356,40938:28338,40939:28372,40940:28373,40941:28303,40942:28325,40943:28354,40944:28319,40945:28481,40946:28433,40947:28748,40948:28396,40949:28408,40950:28414,40951:28479,40952:28402,40953:28465,40954:28399,40955:28466,40956:28364,57408:28478,57409:28435,57410:28407,57411:28550,57412:28538,57413:28536,57414:28545,57415:28544,57416:28527,57417:28507,57418:28659,57419:28525,57420:28546,57421:28540,57422:28504,57423:28558,57424:28561,57425:28610,57426:28518,57427:28595,57428:28579,57429:28577,57430:28580,57431:28601,57432:28614,57433:28586,57434:28639,57435:28629,57436:28652,57437:28628,57438:28632,57439:28657,57440:28654,57441:28635,57442:28681,57443:28683,57444:28666,57445:28689,57446:28673,57447:28687,57448:28670,57449:28699,57450:28698,57451:28532,57452:28701,57453:28696,57454:28703,57455:28720,57456:28734,57457:28722,57458:28753,57459:28771,57460:28825,57461:28818,57462:28847,57463:28913,57464:28844,57465:28856,57466:28851,57467:28846,57468:28895,57469:28875,57470:28893,57472:28889,57473:28937,57474:28925,57475:28956,57476:28953,57477:29029,57478:29013,57479:29064,57480:29030,57481:29026,57482:29004,57483:29014,57484:29036,57485:29071,57486:29179,57487:29060,57488:29077,57489:29096,57490:29100,57491:29143,57492:29113,57493:29118,57494:29138,57495:29129,57496:29140,57497:29134,57498:29152,57499:29164,57500:29159,57501:29173,57502:29180,57503:29177,57504:29183,57505:29197,57506:29200,57507:29211,57508:29224,57509:29229,57510:29228,57511:29232,57512:29234,57513:29243,57514:29244,57515:29247,57516:29248,57517:29254,57518:29259,57519:29272,57520:29300,57521:29310,57522:29314,57523:29313,57524:29319,57525:29330,57526:29334,57527:29346,57528:29351,57529:29369,57530:29362,57531:29379,57532:29382,57533:29380,57534:29390,57535:29394,57536:29410,57537:29408,57538:29409,57539:29433,57540:29431,57541:20495,57542:29463,57543:29450,57544:29468,57545:29462,57546:29469,57547:29492,57548:29487,57549:29481,57550:29477,57551:29502,57552:29518,57553:29519,57554:40664,57555:29527,57556:29546,57557:29544,57558:29552,57559:29560,57560:29557,57561:29563,57562:29562,57563:29640,57564:29619,57565:29646,57566:29627,57567:29632,57568:29669,57569:29678,57570:29662,57571:29858,57572:29701,57573:29807,57574:29733,57575:29688,57576:29746,57577:29754,57578:29781,57579:29759,57580:29791,57581:29785,57582:29761,57583:29788,57584:29801,57585:29808,57586:29795,57587:29802,57588:29814,57589:29822,57590:29835,57591:29854,57592:29863,57593:29898,57594:29903,57595:29908,57596:29681,57664:29920,57665:29923,57666:29927,57667:29929,57668:29934,57669:29938,57670:29936,57671:29937,57672:29944,57673:29943,57674:29956,57675:29955,57676:29957,57677:29964,57678:29966,57679:29965,57680:29973,57681:29971,57682:29982,57683:29990,57684:29996,57685:30012,57686:30020,57687:30029,57688:30026,57689:30025,57690:30043,57691:30022,57692:30042,57693:30057,57694:30052,57695:30055,57696:30059,57697:30061,57698:30072,57699:30070,57700:30086,57701:30087,57702:30068,57703:30090,57704:30089,57705:30082,57706:30100,57707:30106,57708:30109,57709:30117,57710:30115,57711:30146,57712:30131,57713:30147,57714:30133,57715:30141,57716:30136,57717:30140,57718:30129,57719:30157,57720:30154,57721:30162,57722:30169,57723:30179,57724:30174,57725:30206,57726:30207,57728:30204,57729:30209,57730:30192,57731:30202,57732:30194,57733:30195,57734:30219,57735:30221,57736:30217,57737:30239,57738:30247,57739:30240,57740:30241,57741:30242,57742:30244,57743:30260,57744:30256,57745:30267,57746:30279,57747:30280,57748:30278,57749:30300,57750:30296,57751:30305,57752:30306,57753:30312,57754:30313,57755:30314,57756:30311,57757:30316,57758:30320,57759:30322,57760:30326,57761:30328,57762:30332,57763:30336,57764:30339,57765:30344,57766:30347,57767:30350,57768:30358,57769:30355,57770:30361,57771:30362,57772:30384,57773:30388,57774:30392,57775:30393,57776:30394,57777:30402,57778:30413,57779:30422,57780:30418,57781:30430,57782:30433,57783:30437,57784:30439,57785:30442,57786:34351,57787:30459,57788:30472,57789:30471,57790:30468,57791:30505,57792:30500,57793:30494,57794:30501,57795:30502,57796:30491,57797:30519,57798:30520,57799:30535,57800:30554,57801:30568,57802:30571,57803:30555,57804:30565,57805:30591,57806:30590,57807:30585,57808:30606,57809:30603,57810:30609,57811:30624,57812:30622,57813:30640,57814:30646,57815:30649,57816:30655,57817:30652,57818:30653,57819:30651,57820:30663,57821:30669,57822:30679,57823:30682,57824:30684,57825:30691,57826:30702,57827:30716,57828:30732,57829:30738,57830:31014,57831:30752,57832:31018,57833:30789,57834:30862,57835:30836,57836:30854,57837:30844,57838:30874,57839:30860,57840:30883,57841:30901,57842:30890,57843:30895,57844:30929,57845:30918,57846:30923,57847:30932,57848:30910,57849:30908,57850:30917,57851:30922,57852:30956,57920:30951,57921:30938,57922:30973,57923:30964,57924:30983,57925:30994,57926:30993,57927:31001,57928:31020,57929:31019,57930:31040,57931:31072,57932:31063,57933:31071,57934:31066,57935:31061,57936:31059,57937:31098,57938:31103,57939:31114,57940:31133,57941:31143,57942:40779,57943:31146,57944:31150,57945:31155,57946:31161,57947:31162,57948:31177,57949:31189,57950:31207,57951:31212,57952:31201,57953:31203,57954:31240,57955:31245,57956:31256,57957:31257,57958:31264,57959:31263,57960:31104,57961:31281,57962:31291,57963:31294,57964:31287,57965:31299,57966:31319,57967:31305,57968:31329,57969:31330,57970:31337,57971:40861,57972:31344,57973:31353,57974:31357,57975:31368,57976:31383,57977:31381,57978:31384,57979:31382,57980:31401,57981:31432,57982:31408,57984:31414,57985:31429,57986:31428,57987:31423,57988:36995,57989:31431,57990:31434,57991:31437,57992:31439,57993:31445,57994:31443,57995:31449,57996:31450,57997:31453,57998:31457,57999:31458,58e3:31462,58001:31469,58002:31472,58003:31490,58004:31503,58005:31498,58006:31494,58007:31539,58008:31512,58009:31513,58010:31518,58011:31541,58012:31528,58013:31542,58014:31568,58015:31610,58016:31492,58017:31565,58018:31499,58019:31564,58020:31557,58021:31605,58022:31589,58023:31604,58024:31591,58025:31600,58026:31601,58027:31596,58028:31598,58029:31645,58030:31640,58031:31647,58032:31629,58033:31644,58034:31642,58035:31627,58036:31634,58037:31631,58038:31581,58039:31641,58040:31691,58041:31681,58042:31692,58043:31695,58044:31668,58045:31686,58046:31709,58047:31721,58048:31761,58049:31764,58050:31718,58051:31717,58052:31840,58053:31744,58054:31751,58055:31763,58056:31731,58057:31735,58058:31767,58059:31757,58060:31734,58061:31779,58062:31783,58063:31786,58064:31775,58065:31799,58066:31787,58067:31805,58068:31820,58069:31811,58070:31828,58071:31823,58072:31808,58073:31824,58074:31832,58075:31839,58076:31844,58077:31830,58078:31845,58079:31852,58080:31861,58081:31875,58082:31888,58083:31908,58084:31917,58085:31906,58086:31915,58087:31905,58088:31912,58089:31923,58090:31922,58091:31921,58092:31918,58093:31929,58094:31933,58095:31936,58096:31941,58097:31938,58098:31960,58099:31954,58100:31964,58101:31970,58102:39739,58103:31983,58104:31986,58105:31988,58106:31990,58107:31994,58108:32006,58176:32002,58177:32028,58178:32021,58179:32010,58180:32069,58181:32075,58182:32046,58183:32050,58184:32063,58185:32053,58186:32070,58187:32115,58188:32086,58189:32078,58190:32114,58191:32104,58192:32110,58193:32079,58194:32099,58195:32147,58196:32137,58197:32091,58198:32143,58199:32125,58200:32155,58201:32186,58202:32174,58203:32163,58204:32181,58205:32199,58206:32189,58207:32171,58208:32317,58209:32162,58210:32175,58211:32220,58212:32184,58213:32159,58214:32176,58215:32216,58216:32221,58217:32228,58218:32222,58219:32251,58220:32242,58221:32225,58222:32261,58223:32266,58224:32291,58225:32289,58226:32274,58227:32305,58228:32287,58229:32265,58230:32267,58231:32290,58232:32326,58233:32358,58234:32315,58235:32309,58236:32313,58237:32323,58238:32311,58240:32306,58241:32314,58242:32359,58243:32349,58244:32342,58245:32350,58246:32345,58247:32346,58248:32377,58249:32362,58250:32361,58251:32380,58252:32379,58253:32387,58254:32213,58255:32381,58256:36782,58257:32383,58258:32392,58259:32393,58260:32396,58261:32402,58262:32400,58263:32403,58264:32404,58265:32406,58266:32398,58267:32411,58268:32412,58269:32568,58270:32570,58271:32581,58272:32588,58273:32589,58274:32590,58275:32592,58276:32593,58277:32597,58278:32596,58279:32600,58280:32607,58281:32608,58282:32616,58283:32617,58284:32615,58285:32632,58286:32642,58287:32646,58288:32643,58289:32648,58290:32647,58291:32652,58292:32660,58293:32670,58294:32669,58295:32666,58296:32675,58297:32687,58298:32690,58299:32697,58300:32686,58301:32694,58302:32696,58303:35697,58304:32709,58305:32710,58306:32714,58307:32725,58308:32724,58309:32737,58310:32742,58311:32745,58312:32755,58313:32761,58314:39132,58315:32774,58316:32772,58317:32779,58318:32786,58319:32792,58320:32793,58321:32796,58322:32801,58323:32808,58324:32831,58325:32827,58326:32842,58327:32838,58328:32850,58329:32856,58330:32858,58331:32863,58332:32866,58333:32872,58334:32883,58335:32882,58336:32880,58337:32886,58338:32889,58339:32893,58340:32895,58341:32900,58342:32902,58343:32901,58344:32923,58345:32915,58346:32922,58347:32941,58348:20880,58349:32940,58350:32987,58351:32997,58352:32985,58353:32989,58354:32964,58355:32986,58356:32982,58357:33033,58358:33007,58359:33009,58360:33051,58361:33065,58362:33059,58363:33071,58364:33099,58432:38539,58433:33094,58434:33086,58435:33107,58436:33105,58437:33020,58438:33137,58439:33134,58440:33125,58441:33126,58442:33140,58443:33155,58444:33160,58445:33162,58446:33152,58447:33154,58448:33184,58449:33173,58450:33188,58451:33187,58452:33119,58453:33171,58454:33193,58455:33200,58456:33205,58457:33214,58458:33208,58459:33213,58460:33216,58461:33218,58462:33210,58463:33225,58464:33229,58465:33233,58466:33241,58467:33240,58468:33224,58469:33242,58470:33247,58471:33248,58472:33255,58473:33274,58474:33275,58475:33278,58476:33281,58477:33282,58478:33285,58479:33287,58480:33290,58481:33293,58482:33296,58483:33302,58484:33321,58485:33323,58486:33336,58487:33331,58488:33344,58489:33369,58490:33368,58491:33373,58492:33370,58493:33375,58494:33380,58496:33378,58497:33384,58498:33386,58499:33387,58500:33326,58501:33393,58502:33399,58503:33400,58504:33406,58505:33421,58506:33426,58507:33451,58508:33439,58509:33467,58510:33452,58511:33505,58512:33507,58513:33503,58514:33490,58515:33524,58516:33523,58517:33530,58518:33683,58519:33539,58520:33531,58521:33529,58522:33502,58523:33542,58524:33500,58525:33545,58526:33497,58527:33589,58528:33588,58529:33558,58530:33586,58531:33585,58532:33600,58533:33593,58534:33616,58535:33605,58536:33583,58537:33579,58538:33559,58539:33560,58540:33669,58541:33690,58542:33706,58543:33695,58544:33698,58545:33686,58546:33571,58547:33678,58548:33671,58549:33674,58550:33660,58551:33717,58552:33651,58553:33653,58554:33696,58555:33673,58556:33704,58557:33780,58558:33811,58559:33771,58560:33742,58561:33789,58562:33795,58563:33752,58564:33803,58565:33729,58566:33783,58567:33799,58568:33760,58569:33778,58570:33805,58571:33826,58572:33824,58573:33725,58574:33848,58575:34054,58576:33787,58577:33901,58578:33834,58579:33852,58580:34138,58581:33924,58582:33911,58583:33899,58584:33965,58585:33902,58586:33922,58587:33897,58588:33862,58589:33836,58590:33903,58591:33913,58592:33845,58593:33994,58594:33890,58595:33977,58596:33983,58597:33951,58598:34009,58599:33997,58600:33979,58601:34010,58602:34e3,58603:33985,58604:33990,58605:34006,58606:33953,58607:34081,58608:34047,58609:34036,58610:34071,58611:34072,58612:34092,58613:34079,58614:34069,58615:34068,58616:34044,58617:34112,58618:34147,58619:34136,58620:34120,58688:34113,58689:34306,58690:34123,58691:34133,58692:34176,58693:34212,58694:34184,58695:34193,58696:34186,58697:34216,58698:34157,58699:34196,58700:34203,58701:34282,58702:34183,58703:34204,58704:34167,58705:34174,58706:34192,58707:34249,58708:34234,58709:34255,58710:34233,58711:34256,58712:34261,58713:34269,58714:34277,58715:34268,58716:34297,58717:34314,58718:34323,58719:34315,58720:34302,58721:34298,58722:34310,58723:34338,58724:34330,58725:34352,58726:34367,58727:34381,58728:20053,58729:34388,58730:34399,58731:34407,58732:34417,58733:34451,58734:34467,58735:34473,58736:34474,58737:34443,58738:34444,58739:34486,58740:34479,58741:34500,58742:34502,58743:34480,58744:34505,58745:34851,58746:34475,58747:34516,58748:34526,58749:34537,58750:34540,58752:34527,58753:34523,58754:34543,58755:34578,58756:34566,58757:34568,58758:34560,58759:34563,58760:34555,58761:34577,58762:34569,58763:34573,58764:34553,58765:34570,58766:34612,58767:34623,58768:34615,58769:34619,58770:34597,58771:34601,58772:34586,58773:34656,58774:34655,58775:34680,58776:34636,58777:34638,58778:34676,58779:34647,58780:34664,58781:34670,58782:34649,58783:34643,58784:34659,58785:34666,58786:34821,58787:34722,58788:34719,58789:34690,58790:34735,58791:34763,58792:34749,58793:34752,58794:34768,58795:38614,58796:34731,58797:34756,58798:34739,58799:34759,58800:34758,58801:34747,58802:34799,58803:34802,58804:34784,58805:34831,58806:34829,58807:34814,58808:34806,58809:34807,58810:34830,58811:34770,58812:34833,58813:34838,58814:34837,58815:34850,58816:34849,58817:34865,58818:34870,58819:34873,58820:34855,58821:34875,58822:34884,58823:34882,58824:34898,58825:34905,58826:34910,58827:34914,58828:34923,58829:34945,58830:34942,58831:34974,58832:34933,58833:34941,58834:34997,58835:34930,58836:34946,58837:34967,58838:34962,58839:34990,58840:34969,58841:34978,58842:34957,58843:34980,58844:34992,58845:35007,58846:34993,58847:35011,58848:35012,58849:35028,58850:35032,58851:35033,58852:35037,58853:35065,58854:35074,58855:35068,58856:35060,58857:35048,58858:35058,58859:35076,58860:35084,58861:35082,58862:35091,58863:35139,58864:35102,58865:35109,58866:35114,58867:35115,58868:35137,58869:35140,58870:35131,58871:35126,58872:35128,58873:35148,58874:35101,58875:35168,58876:35166,58944:35174,58945:35172,58946:35181,58947:35178,58948:35183,58949:35188,58950:35191,58951:35198,58952:35203,58953:35208,58954:35210,58955:35219,58956:35224,58957:35233,58958:35241,58959:35238,58960:35244,58961:35247,58962:35250,58963:35258,58964:35261,58965:35263,58966:35264,58967:35290,58968:35292,58969:35293,58970:35303,58971:35316,58972:35320,58973:35331,58974:35350,58975:35344,58976:35340,58977:35355,58978:35357,58979:35365,58980:35382,58981:35393,58982:35419,58983:35410,58984:35398,58985:35400,58986:35452,58987:35437,58988:35436,58989:35426,58990:35461,58991:35458,58992:35460,58993:35496,58994:35489,58995:35473,58996:35493,58997:35494,58998:35482,58999:35491,59e3:35524,59001:35533,59002:35522,59003:35546,59004:35563,59005:35571,59006:35559,59008:35556,59009:35569,59010:35604,59011:35552,59012:35554,59013:35575,59014:35550,59015:35547,59016:35596,59017:35591,59018:35610,59019:35553,59020:35606,59021:35600,59022:35607,59023:35616,59024:35635,59025:38827,59026:35622,59027:35627,59028:35646,59029:35624,59030:35649,59031:35660,59032:35663,59033:35662,59034:35657,59035:35670,59036:35675,59037:35674,59038:35691,59039:35679,59040:35692,59041:35695,59042:35700,59043:35709,59044:35712,59045:35724,59046:35726,59047:35730,59048:35731,59049:35734,59050:35737,59051:35738,59052:35898,59053:35905,59054:35903,59055:35912,59056:35916,59057:35918,59058:35920,59059:35925,59060:35938,59061:35948,59062:35960,59063:35962,59064:35970,59065:35977,59066:35973,59067:35978,59068:35981,59069:35982,59070:35988,59071:35964,59072:35992,59073:25117,59074:36013,59075:36010,59076:36029,59077:36018,59078:36019,59079:36014,59080:36022,59081:36040,59082:36033,59083:36068,59084:36067,59085:36058,59086:36093,59087:36090,59088:36091,59089:36100,59090:36101,59091:36106,59092:36103,59093:36111,59094:36109,59095:36112,59096:40782,59097:36115,59098:36045,59099:36116,59100:36118,59101:36199,59102:36205,59103:36209,59104:36211,59105:36225,59106:36249,59107:36290,59108:36286,59109:36282,59110:36303,59111:36314,59112:36310,59113:36300,59114:36315,59115:36299,59116:36330,59117:36331,59118:36319,59119:36323,59120:36348,59121:36360,59122:36361,59123:36351,59124:36381,59125:36382,59126:36368,59127:36383,59128:36418,59129:36405,59130:36400,59131:36404,59132:36426,59200:36423,59201:36425,59202:36428,59203:36432,59204:36424,59205:36441,59206:36452,59207:36448,59208:36394,59209:36451,59210:36437,59211:36470,59212:36466,59213:36476,59214:36481,59215:36487,59216:36485,59217:36484,59218:36491,59219:36490,59220:36499,59221:36497,59222:36500,59223:36505,59224:36522,59225:36513,59226:36524,59227:36528,59228:36550,59229:36529,59230:36542,59231:36549,59232:36552,59233:36555,59234:36571,59235:36579,59236:36604,59237:36603,59238:36587,59239:36606,59240:36618,59241:36613,59242:36629,59243:36626,59244:36633,59245:36627,59246:36636,59247:36639,59248:36635,59249:36620,59250:36646,59251:36659,59252:36667,59253:36665,59254:36677,59255:36674,59256:36670,59257:36684,59258:36681,59259:36678,59260:36686,59261:36695,59262:36700,59264:36706,59265:36707,59266:36708,59267:36764,59268:36767,59269:36771,59270:36781,59271:36783,59272:36791,59273:36826,59274:36837,59275:36834,59276:36842,59277:36847,59278:36999,59279:36852,59280:36869,59281:36857,59282:36858,59283:36881,59284:36885,59285:36897,59286:36877,59287:36894,59288:36886,59289:36875,59290:36903,59291:36918,59292:36917,59293:36921,59294:36856,59295:36943,59296:36944,59297:36945,59298:36946,59299:36878,59300:36937,59301:36926,59302:36950,59303:36952,59304:36958,59305:36968,59306:36975,59307:36982,59308:38568,59309:36978,59310:36994,59311:36989,59312:36993,59313:36992,59314:37002,59315:37001,59316:37007,59317:37032,59318:37039,59319:37041,59320:37045,59321:37090,59322:37092,59323:25160,59324:37083,59325:37122,59326:37138,59327:37145,59328:37170,59329:37168,59330:37194,59331:37206,59332:37208,59333:37219,59334:37221,59335:37225,59336:37235,59337:37234,59338:37259,59339:37257,59340:37250,59341:37282,59342:37291,59343:37295,59344:37290,59345:37301,59346:37300,59347:37306,59348:37312,59349:37313,59350:37321,59351:37323,59352:37328,59353:37334,59354:37343,59355:37345,59356:37339,59357:37372,59358:37365,59359:37366,59360:37406,59361:37375,59362:37396,59363:37420,59364:37397,59365:37393,59366:37470,59367:37463,59368:37445,59369:37449,59370:37476,59371:37448,59372:37525,59373:37439,59374:37451,59375:37456,59376:37532,59377:37526,59378:37523,59379:37531,59380:37466,59381:37583,59382:37561,59383:37559,59384:37609,59385:37647,59386:37626,59387:37700,59388:37678,59456:37657,59457:37666,59458:37658,59459:37667,59460:37690,59461:37685,59462:37691,59463:37724,59464:37728,59465:37756,59466:37742,59467:37718,59468:37808,59469:37804,59470:37805,59471:37780,59472:37817,59473:37846,59474:37847,59475:37864,59476:37861,59477:37848,59478:37827,59479:37853,59480:37840,59481:37832,59482:37860,59483:37914,59484:37908,59485:37907,59486:37891,59487:37895,59488:37904,59489:37942,59490:37931,59491:37941,59492:37921,59493:37946,59494:37953,59495:37970,59496:37956,59497:37979,59498:37984,59499:37986,59500:37982,59501:37994,59502:37417,59503:38e3,59504:38005,59505:38007,59506:38013,59507:37978,59508:38012,59509:38014,59510:38017,59511:38015,59512:38274,59513:38279,59514:38282,59515:38292,59516:38294,59517:38296,59518:38297,59520:38304,59521:38312,59522:38311,59523:38317,59524:38332,59525:38331,59526:38329,59527:38334,59528:38346,59529:28662,59530:38339,59531:38349,59532:38348,59533:38357,59534:38356,59535:38358,59536:38364,59537:38369,59538:38373,59539:38370,59540:38433,59541:38440,59542:38446,59543:38447,59544:38466,59545:38476,59546:38479,59547:38475,59548:38519,59549:38492,59550:38494,59551:38493,59552:38495,59553:38502,59554:38514,59555:38508,59556:38541,59557:38552,59558:38549,59559:38551,59560:38570,59561:38567,59562:38577,59563:38578,59564:38576,59565:38580,59566:38582,59567:38584,59568:38585,59569:38606,59570:38603,59571:38601,59572:38605,59573:35149,59574:38620,59575:38669,59576:38613,59577:38649,59578:38660,59579:38662,59580:38664,59581:38675,59582:38670,59583:38673,59584:38671,59585:38678,59586:38681,59587:38692,59588:38698,59589:38704,59590:38713,59591:38717,59592:38718,59593:38724,59594:38726,59595:38728,59596:38722,59597:38729,59598:38748,59599:38752,59600:38756,59601:38758,59602:38760,59603:21202,59604:38763,59605:38769,59606:38777,59607:38789,59608:38780,59609:38785,59610:38778,59611:38790,59612:38795,59613:38799,59614:38800,59615:38812,59616:38824,59617:38822,59618:38819,59619:38835,59620:38836,59621:38851,59622:38854,59623:38856,59624:38859,59625:38876,59626:38893,59627:40783,59628:38898,59629:31455,59630:38902,59631:38901,59632:38927,59633:38924,59634:38968,59635:38948,59636:38945,59637:38967,59638:38973,59639:38982,59640:38991,59641:38987,59642:39019,59643:39023,59644:39024,59712:39025,59713:39028,59714:39027,59715:39082,59716:39087,59717:39089,59718:39094,59719:39108,59720:39107,59721:39110,59722:39145,59723:39147,59724:39171,59725:39177,59726:39186,59727:39188,59728:39192,59729:39201,59730:39197,59731:39198,59732:39204,59733:39200,59734:39212,59735:39214,59736:39229,59737:39230,59738:39234,59739:39241,59740:39237,59741:39248,59742:39243,59743:39249,59744:39250,59745:39244,59746:39253,59747:39319,59748:39320,59749:39333,59750:39341,59751:39342,59752:39356,59753:39391,59754:39387,59755:39389,59756:39384,59757:39377,59758:39405,59759:39406,59760:39409,59761:39410,59762:39419,59763:39416,59764:39425,59765:39439,59766:39429,59767:39394,59768:39449,59769:39467,59770:39479,59771:39493,59772:39490,59773:39488,59774:39491,59776:39486,59777:39509,59778:39501,59779:39515,59780:39511,59781:39519,59782:39522,59783:39525,59784:39524,59785:39529,59786:39531,59787:39530,59788:39597,59789:39600,59790:39612,59791:39616,59792:39631,59793:39633,59794:39635,59795:39636,59796:39646,59797:39647,59798:39650,59799:39651,59800:39654,59801:39663,59802:39659,59803:39662,59804:39668,59805:39665,59806:39671,59807:39675,59808:39686,59809:39704,59810:39706,59811:39711,59812:39714,59813:39715,59814:39717,59815:39719,59816:39720,59817:39721,59818:39722,59819:39726,59820:39727,59821:39730,59822:39748,59823:39747,59824:39759,59825:39757,59826:39758,59827:39761,59828:39768,59829:39796,59830:39827,59831:39811,59832:39825,59833:39830,59834:39831,59835:39839,59836:39840,59837:39848,59838:39860,59839:39872,59840:39882,59841:39865,59842:39878,59843:39887,59844:39889,59845:39890,59846:39907,59847:39906,59848:39908,59849:39892,59850:39905,59851:39994,59852:39922,59853:39921,59854:39920,59855:39957,59856:39956,59857:39945,59858:39955,59859:39948,59860:39942,59861:39944,59862:39954,59863:39946,59864:39940,59865:39982,59866:39963,59867:39973,59868:39972,59869:39969,59870:39984,59871:40007,59872:39986,59873:40006,59874:39998,59875:40026,59876:40032,59877:40039,59878:40054,59879:40056,59880:40167,59881:40172,59882:40176,59883:40201,59884:40200,59885:40171,59886:40195,59887:40198,59888:40234,59889:40230,59890:40367,59891:40227,59892:40223,59893:40260,59894:40213,59895:40210,59896:40257,59897:40255,59898:40254,59899:40262,59900:40264,59968:40285,59969:40286,59970:40292,59971:40273,59972:40272,59973:40281,59974:40306,59975:40329,59976:40327,59977:40363,59978:40303,59979:40314,59980:40346,59981:40356,59982:40361,59983:40370,59984:40388,59985:40385,59986:40379,59987:40376,59988:40378,59989:40390,59990:40399,59991:40386,59992:40409,59993:40403,59994:40440,59995:40422,59996:40429,59997:40431,59998:40445,59999:40474,6e4:40475,60001:40478,60002:40565,60003:40569,60004:40573,60005:40577,60006:40584,60007:40587,60008:40588,60009:40594,60010:40597,60011:40593,60012:40605,60013:40613,60014:40617,60015:40632,60016:40618,60017:40621,60018:38753,60019:40652,60020:40654,60021:40655,60022:40656,60023:40660,60024:40668,60025:40670,60026:40669,60027:40672,60028:40677,60029:40680,60030:40687,60032:40692,60033:40694,60034:40695,60035:40697,60036:40699,60037:40700,60038:40701,60039:40711,60040:40712,60041:30391,60042:40725,60043:40737,60044:40748,60045:40766,60046:40778,60047:40786,60048:40788,60049:40803,60050:40799,60051:40800,60052:40801,60053:40806,60054:40807,60055:40812,60056:40810,60057:40823,60058:40818,60059:40822,60060:40853,60061:40860,60062:40864,60063:22575,60064:27079,60065:36953,60066:29796,60067:20956,60068:29081
5517,60736:32394,60737:35100,60738:37704,60739:37512,60740:34012,60741:20425,60742:28859,60743:26161,60744:26824,60745:37625,60746:26363,60747:24389,60748:20008,60749:20193,60750:20220,60751:20224,60752:20227,60753:20281,60754:20310,60755:20370,60756:20362,60757:20378,60758:20372,60759:20429,60760:20544,60761:20514,60762:20479,60763:20510,60764:20550,60765:20592,60766:20546,60767:20628,60768:20724,60769:20696,60770:20810,60771:20836,60772:20893,60773:20926,60774:20972,60775:21013,60776:21148,60777:21158,60778:21184,60779:21211,60780:21248,60781:21255,60782:21284,60783:21362,60784:21395,60785:21426,60786:21469,60787:64014,60788:21660,60789:21642,60790:21673,60791:21759,60792:21894,60793:22361,60794:22373,60795:22444,60796:22472,60797:22471,60798:64015,60800:64016,60801:22686,60802:22706,60803:22795,60804:22867,60805:22875,60806:22877,60807:22883,60808:22948,60809:22970,60810:23382,60811:23488,60812:29999,60813:23512,60814:23532,60815:23582,60816:23718,60817:23738,60818:23797,60819:23847,60820:23891,60821:64017,60822:23874,60823:23917,60824:23992,60825:23993,60826:24016,60827:24353,60828:24372,60829:24423,60830:24503,60831:24542,60832:24669,60833:24709,60834:24714,60835:24798,60836:24789,60837:24864,60838:24818,60839:24849,60840:24887,60841:24880,60842:24984,60843:25107,60844:25254,60845:25589,60846:25696,60847:25757,60848:25806,60849:25934,60850:26112,60851:26133,60852:26171,60853:26121,60854:26158,60855:26142,60856:26148,60857:26213,60858:26199,60859:26201,60860:64018,60861:26227,60862:26265,60863:26272,60864:26290,60865:26303,60866:26362,60867:26382,60868:63785,60869:26470,60870:26555,60871:26706,60872:26560,60873:26625,60874:26692,60875:26831,60876:64019,60877:26984,60878:64020,60879:27032,60880:27106,60881:27184,60882:27243,60883:27206,60884:27251,60885:27262,60886:27362,60887:27364,60888:27606,60889:27711,60890:27740,60891:27782,60892:27759,60893:27866,60894:27908,60895:28039,60896:28015,60897:28054,60898:28076,60899:28111,60900:28152,60901:28146,60902:28156,60903:28217,60904:28252,60905:28199,60906:28220,60907:28351,60908:28552,60909:28597,60910:28661,60911:28677,60912:28679,60913:28712,60914:28805,60915:28843,60916:28943,60917:28932,60918:29020,60919:28998,60920:28999,60921:64021,60922:29121,60923:29182,60924:29361,60992:29374,60993:29476,60994:64022,60995:29559,60996:29629,60997:29641,60998:29654,60999:29667,61e3:29650,61001:29703,61002:29685,61003:29734,61004:29738,61005:29737,61006:29742,61007:29794,61008:29833,61009:29855,61010:29953,61011:30063,61012:30338,61013:30364,61014:30366,61015:30363,61016:30374,61017:64023,61018:30534,61019:21167,61020:30753,61021:30798,61022:30820,61023:30842,61024:31024,61025:64024,61026:64025,61027:64026,61028:31124,61029:64027,61030:31131,61031:31441,61032:31463,61033:64028,61034:31467,61035:31646,61036:64029,61037:32072,61038:32092,61039:32183,61040:32160,61041:32214,61042:32338,61043:32583,61044:32673,61045:64030,61046:33537,61047:33634,61048:33663,61049:33735,61050:33782,61051:33864,61052:33972,61053:34131,61054:34137,61056:34155,61057:64031,61058:34224,61059:64032,61060:64033,61061:34823,61062:35061,61063:35346,61064:35383,61065:35449,61066:35495,61067:35518,61068:35551,61069:64034,61070:35574,61071:35667,61072:35711,61073:36080,61074:36084,61075:36114,61076:36214,61077:64035,61078:36559,61079:64036,61080:64037,61081:36967,61082:37086,61083:64038,61084:37141,61085:37159,61086:37338,61087:37335,61088:37342,61089:37357,61090:37358,61091:37348,61092:37349,61093:37382,61094:37392,61095:37386,61096:37434,61097:37440,61098:37436,61099:37454,61100:37465,61101:37457,61102:37433,61103:37479,61104:37543,61105:37495,61106:37496,61107:37607,61108:37591,61109:37593,61110:37584,61111:64039,61112:37589,61113:37600,61114:37587,61115:37669,61116:37665,61117:37627,61118:64040,61119:37662,61120:37631,61121:37661,61122:37634,61123:37744,61124:37719,61125:37796,61126:37830,61127:37854,61128:37880,61129:37937,61130:37957,61131:37960,61132:38290,61133:63964,61134:64041,61135:38557,61136:38575,61137:38707,61138:38715,61139:38723,61140:38733,61141:38735,61142:38737,61143:38741,61144:38999,61145:39013,61146:64042,61147:64043,61148:39207,61149:64044,61150:39326,61151:39502,61152:39641,61153:39644,61154:39797,61155:39794,61156:39823,61157:39857,61158:39867,61159:39936,61160:40304,61161:40299,61162:64045,61163:40473,61164:40657,61167:8560,61168:8561,61169:8562,61170:8563,61171:8564,61172:8565,61173:8566,61174:8567,61175:8568,61176:8569,61177:65506,61178:65508,61179:65287,61180:65282,61504:57344,61505:57345,61506:57346,61507:57347,61508:57348,61509:57349,61510:57350,61511:57351,61512:57352,61513:57353,61514:57354,61515:57355,61516:57356,61517:57357,61518:57358,61519:57359,61520:57360,61521:57361,61522:57362,61523:57363,61524:57364,61525:57365,61526:57366,61527:57367,61528:57368,61529:57369,61530:57370,61531:57371,61532:57372,61533:57373,61534:57374,61535:57375,61536:57376,61537:57377,61538:57378,61539:57379,61540:57380,61541:57381,61542:57382,61543:57383,61544:57384,61545:57385,
551761546:57386,61547:57387,61548:57388,61549:57389,61550:57390,61551:57391,61552:57392,61553:57393,61554:57394,61555:57395,61556:57396,61557:57397,61558:57398,61559:57399,61560:57400,61561:57401,61562:57402,61563:57403,61564:57404,61565:57405,61566:57406,61568:57407,61569:57408,61570:57409,61571:57410,61572:57411,61573:57412,61574:57413,61575:57414,61576:57415,61577:57416,61578:57417,61579:57418,61580:57419,61581:57420,61582:57421,61583:57422,61584:57423,61585:57424,61586:57425,61587:57426,61588:57427,61589:57428,61590:57429,61591:57430,61592:57431,61593:57432,61594:57433,61595:57434,61596:57435,61597:57436,61598:57437,61599:57438,61600:57439,61601:57440,61602:57441,61603:57442,61604:57443,61605:57444,61606:57445,61607:57446,61608:57447,61609:57448,61610:57449,61611:57450,61612:57451,61613:57452,61614:57453,61615:57454,61616:57455,61617:57456,61618:57457,61619:57458,61620:57459,61621:57460,61622:57461,61623:57462,61624:57463,61625:57464,61626:57465,61627:57466,61628:57467,61629:57468,61630:57469,61631:57470,61632:57471,61633:57472,61634:57473,61635:57474,61636:57475,61637:57476,61638:57477,61639:57478,61640:57479,61641:57480,61642:57481,61643:57482,61644:57483,61645:57484,61646:57485,61647:57486,61648:57487,61649:57488,61650:57489,61651:57490,61652:57491,61653:57492,61654:57493,61655:57494,61656:57495,61657:57496,61658:57497,61659:57498,61660:57499,61661:57500,61662:57501,61663:57502,61664:57503,61665:57504,61666:57505,61667:57506,61668:57507,61669:57508,61670:57509,61671:57510,61672:57511,61673:57512,61674:57513,61675:57514,61676:57515,61677:57516,61678:57517,61679:57518,61680:57519,61681:57520,61682:57521,61683:57522,61684:57523,61685:57524,61686:57525,61687:57526,61688:57527,61689:57528,61690:57529,61691:57530,61692:57531,61760:57532,61761:57533,61762:57534,61763:57535,61764:57536,61765:57537,61766:57538,61767:57539,61768:57540,61769:57541,61770:57542,61771:57543,61772:57544,61773:57545,61774:57546,61775:57547,61776:57548,61777:57549,61778:57550,61779:57551,61780:57552,61781:57553,61782:57554,61783:57555,61784:57556,61785:57557,61786:57558,61787:57559,61788:57560,61789:57561,61790:57562,61791:57563,61792:57564,61793:57565,61794:57566,61795:57567,61796:57568,61797:57569,61798:57570,61799:57571,61800:57572,61801:57573,61802:57574,61803:57575,61804:57576,61805:57577,61806:57578,61807:57579,61808:57580,61809:57581,61810:57582,61811:57583,61812:57584,61813:57585,61814:57586,61815:57587,61816:57588,61817:57589,61818:57590,61819:57591,61820:57592,61821:57593,61822:57594,61824:57595,61825:57596,61826:57597,61827:57598,61828:57599,61829:57600,61830:57601,61831:57602,61832:57603,61833:57604,61834:57605,61835:57606,61836:57607,61837:57608,61838:57609,61839:57610,61840:57611,61841:57612,61842:57613,61843:57614,61844:57615,61845:57616,61846:57617,61847:57618,61848:57619,61849:57620,61850:57621,61851:57622,61852:57623,61853:57624,61854:57625,61855:57626,61856:57627,61857:57628,61858:57629,61859:57630,61860:57631,61861:57632,61862:57633,61863:57634,61864:57635,61865:57636,61866:57637,61867:57638,61868:57639,61869:57640,61870:57641,61871:57642,61872:57643,61873:57644,61874:57645,61875:57646,61876:57647,61877:57648,61878:57649,61879:57650,61880:57651,61881:57652,61882:57653,61883:57654,61884:57655,61885:57656,61886:57657,61887:57658,61888:57659,61889:57660,61890:57661,61891:57662,61892:57663,61893:57664,61894:57665,61895:57666,61896:57667,61897:57668,61898:57669,61899:57670,61900:57671,61901:57672,61902:57673,61903:57674,61904:57675,61905:57676,61906:57677,61907:57678,61908:57679,61909:57680,61910:57681,61911:57682,61912:57683,61913:57684,61914:57685,61915:57686,61916:57687,61917:57688,61918:57689,61919:57690,61920:57691,61921:57692,61922:57693,61923:57694,61924:57695,61925:57696,61926:57697,61927:57698,61928:57699,61929:57700,61930:57701,61931:57702,61932:57703,61933:57704,61934:57705,61935:57706,61936:57707,61937:57708,61938:57709,61939:57710,61940:57711,61941:57712,61942:57713,61943:57714,61944:57715,61945:57716,61946:57717,61947:57718,61948:57719,62016:57720,62017:57721,62018:57722,62019:57723,62020:57724,62021:57725,62022:57726,62023:57727,62024:57728,62025:57729,62026:57730,62027:57731,62028:57732,62029:57733,62030:57734,62031:57735,62032:57736,62033:57737,62034:57738,62035:57739,62036:57740,62037:57741,62038:57742,62039:57743,62040:57744,62041:57745,62042:57746,62043:57747,62044:57748,62045:57749,62046:57750,62047:57751,62048:57752,62049:57753,62050:57754,62051:57755,62052:57756,62053:57757,62054:57758,62055:57759,62056:57760,62057:57761,62058:57762,62059:57763,62060:57764,62061:57765,62062:57766,62063:57767,62064:57768,62065:57769,62066:57770,62067:57771,62068:57772,62069:57773,62070:57774,62071:57775,62072:57776,62073:57777,62074:57778,62075:57779,62076:57780,62077:57781,62078:57782,62080:57783,62081:57784,62082:57785,62083:57786,62084:57787,62085:57788,62086:57789,62087:57790,62088:57791,62089:57792,62090:57793,62091:
551757794,62092:57795,62093:57796,62094:57797,62095:57798,62096:57799,62097:57800,62098:57801,62099:57802,62100:57803,62101:57804,62102:57805,62103:57806,62104:57807,62105:57808,62106:57809,62107:57810,62108:57811,62109:57812,62110:57813,62111:57814,62112:57815,62113:57816,62114:57817,62115:57818,62116:57819,62117:57820,62118:57821,62119:57822,62120:57823,62121:57824,62122:57825,62123:57826,62124:57827,62125:57828,62126:57829,62127:57830,62128:57831,62129:57832,62130:57833,62131:57834,62132:57835,62133:57836,62134:57837,62135:57838,62136:57839,62137:57840,62138:57841,62139:57842,62140:57843,62141:57844,62142:57845,62143:57846,62144:57847,62145:57848,62146:57849,62147:57850,62148:57851,62149:57852,62150:57853,62151:57854,62152:57855,62153:57856,62154:57857,62155:57858,62156:57859,62157:57860,62158:57861,62159:57862,62160:57863,62161:57864,62162:57865,62163:57866,62164:57867,62165:57868,62166:57869,62167:57870,62168:57871,62169:57872,62170:57873,62171:57874,62172:57875,62173:57876,62174:57877,62175:57878,62176:57879,62177:57880,62178:57881,62179:57882,62180:57883,62181:57884,62182:57885,62183:57886,62184:57887,62185:57888,62186:57889,62187:57890,62188:57891,62189:57892,62190:57893,62191:57894,62192:57895,62193:57896,62194:57897,62195:57898,62196:57899,62197:57900,62198:57901,62199:57902,62200:57903,62201:57904,62202:57905,62203:57906,62204:57907,62272:57908,62273:57909,62274:57910,62275:57911,62276:57912,62277:57913,62278:57914,62279:57915,62280:57916,62281:57917,62282:57918,62283:57919,62284:57920,62285:57921,62286:57922,62287:57923,62288:57924,62289:57925,62290:57926,62291:57927,62292:57928,62293:57929,62294:57930,62295:57931,62296:57932,62297:57933,62298:57934,62299:57935,62300:57936,62301:57937,62302:57938,62303:57939,62304:57940,62305:57941,62306:57942,62307:57943,62308:57944,62309:57945,62310:57946,62311:57947,62312:57948,62313:57949,62314:57950,62315:57951,62316:57952,62317:57953,62318:57954,62319:57955,62320:57956,62321:57957,62322:57958,62323:57959,62324:57960,62325:57961,62326:57962,62327:57963,62328:57964,62329:57965,62330:57966,62331:57967,62332:57968,62333:57969,62334:57970,62336:57971,62337:57972,62338:57973,62339:57974,62340:57975,62341:57976,62342:57977,62343:57978,62344:57979,62345:57980,62346:57981,62347:57982,62348:57983,62349:57984,62350:57985,62351:57986,62352:57987,62353:57988,62354:57989,62355:57990,62356:57991,62357:57992,62358:57993,62359:57994,62360:57995,62361:57996,62362:57997,62363:57998,62364:57999,62365:58e3,62366:58001,62367:58002,62368:58003,62369:58004,62370:58005,62371:58006,62372:58007,62373:58008,62374:58009,62375:58010,62376:58011,62377:58012,62378:58013,62379:58014,62380:58015,62381:58016,62382:58017,62383:58018,62384:58019,62385:58020,62386:58021,62387:58022,62388:58023,62389:58024,62390:58025,62391:58026,62392:58027,62393:58028,62394:58029,62395:58030,62396:58031,62397:58032,62398:58033,62399:58034,62400:58035,62401:58036,62402:58037,62403:58038,62404:58039,62405:58040,62406:58041,62407:58042,62408:58043,62409:58044,62410:58045,62411:58046,62412:58047,62413:58048,62414:58049,62415:58050,62416:58051,62417:58052,62418:58053,62419:58054,62420:58055,62421:58056,62422:58057,62423:58058,62424:58059,62425:58060,62426:58061,62427:58062,62428:58063,62429:58064,62430:58065,62431:58066,62432:58067,62433:58068,62434:58069,62435:58070,62436:58071,62437:58072,62438:58073,62439:58074,62440:58075,62441:58076,62442:58077,62443:58078,62444:58079,62445:58080,62446:58081,62447:58082,62448:58083,62449:58084,62450:58085,62451:58086,62452:58087,62453:58088,62454:58089,62455:58090,62456:58091,62457:58092,62458:58093,62459:58094,62460:58095,62528:58096,62529:58097,62530:58098,62531:58099,62532:58100,62533:58101,62534:58102,62535:58103,62536:58104,62537:58105,62538:58106,62539:58107,62540:58108,62541:58109,62542:58110,62543:58111,62544:58112,62545:58113,62546:58114,62547:58115,62548:58116,62549:58117,62550:58118,62551:58119,62552:58120,62553:58121,62554:58122,62555:58123,62556:58124,62557:58125,62558:58126,62559:58127,62560:58128,62561:58129,62562:58130,62563:58131,62564:58132,62565:58133,62566:58134,62567:58135,62568:58136,62569:58137,62570:58138,62571:58139,62572:58140,62573:58141,62574:58142,62575:58143,62576:58144,62577:58145,62578:58146,62579:58147,62580:
551758148,62581:58149,62582:58150,62583:58151,62584:58152,62585:58153,62586:58154,62587:58155,62588:58156,62589:58157,62590:58158,62592:58159,62593:58160,62594:58161,62595:58162,62596:58163,62597:58164,62598:58165,62599:58166,62600:58167,62601:58168,62602:58169,62603:58170,62604:58171,62605:58172,62606:58173,62607:58174,62608:58175,62609:58176,62610:58177,62611:58178,62612:58179,62613:58180,62614:58181,62615:58182,62616:58183,62617:58184,62618:58185,62619:58186,62620:58187,62621:58188,62622:58189,62623:58190,62624:58191,62625:58192,62626:58193,62627:58194,62628:58195,62629:58196,62630:58197,62631:58198,62632:58199,62633:58200,62634:58201,62635:58202,62636:58203,62637:58204,62638:58205,62639:58206,62640:58207,62641:58208,62642:58209,62643:58210,62644:58211,62645:58212,62646:58213,62647:58214,62648:58215,62649:58216,62650:58217,62651:58218,62652:58219,62653:58220,62654:58221,62655:58222,62656:58223,62657:58224,62658:58225,62659:58226,62660:58227,62661:58228,62662:58229,62663:58230,62664:58231,62665:58232,62666:58233,62667:58234,62668:58235,62669:58236,62670:58237,62671:58238,62672:58239,62673:58240,62674:58241,62675:58242,62676:58243,62677:58244,62678:58245,62679:58246,62680:58247,62681:58248,62682:58249,62683:58250,62684:58251,62685:58252,62686:58253,62687:58254,62688:58255,62689:58256,62690:58257,62691:58258,62692:58259,62693:58260,62694:58261,62695:58262,62696:58263,62697:58264,62698:58265,62699:58266,62700:58267,62701:58268,62702:58269,62703:58270,62704:58271,62705:58272,62706:58273,62707:58274,62708:58275,62709:58276,62710:58277,62711:58278,62712:58279,62713:58280,62714:58281,62715:58282,62716:58283,62784:58284,62785:58285,62786:58286,62787:58287,62788:58288,62789:58289,62790:58290,62791:58291,62792:58292,62793:58293,62794:58294,62795:58295,62796:58296,62797:58297,62798:58298,62799:58299,62800:58300,62801:58301,62802:58302,62803:58303,62804:58304,62805:58305,62806:58306,62807:58307,62808:58308,62809:58309,62810:58310,62811:58311,62812:58312,62813:58313,62814:58314,62815:58315,62816:58316,62817:58317,62818:58318,62819:58319,62820:58320,62821:58321,62822:58322,62823:58323,62824:58324,62825:58325,62826:58326,62827:58327,62828:58328,62829:58329,62830:58330,62831:58331,62832:58332,62833:58333,62834:58334,62835:58335,62836:58336,62837:58337,62838:58338,62839:58339,62840:58340,62841:58341,62842:58342,62843:58343,62844:58344,62845:58345,62846:58346,62848:58347,62849:58348,62850:58349,62851:58350,62852:58351,62853:58352,62854:58353,62855:58354,62856:58355,62857:58356,62858:58357,62859:58358,62860:58359,62861:58360,62862:58361,62863:58362,62864:58363,62865:58364,62866:58365,62867:58366,62868:58367,62869:58368,62870:58369,62871:58370,62872:58371,62873:58372,62874:58373,62875:58374,62876:58375,62877:58376,62878:58377,62879:58378,62880:58379,62881:58380,62882:58381,62883:58382,62884:58383,62885:58384,62886:58385,62887:58386,62888:58387,62889:58388,62890:58389,62891:58390,62892:58391,62893:58392,62894:58393,62895:58394,62896:58395,62897:58396,62898:58397,62899:58398,62900:58399,62901:58400,62902:58401,62903:58402,62904:58403,62905:58404,62906:58405,62907:58406,62908:58407,62909:58408,62910:58409,62911:58410,62912:58411,62913:58412,62914:58413,62915:58414,62916:58415,62917:58416,62918:58417,62919:58418,62920:58419,62921:58420,62922:58421,62923:58422,62924:58423,62925:58424,62926:58425,62927:58426,62928:58427,62929:58428,62930:58429,62931:58430,62932:58431,62933:58432,62934:58433,62935:58434,62936:58435,62937:58436,62938:58437,62939:58438,62940:58439,62941:58440,62942:58441,62943:58442,62944:58443,62945:58444,62946:58445,62947:58446,62948:58447,62949:58448,62950:58449,62951:58450,62952:58451,62953:58452,62954:58453,62955:58454,62956:58455,62957:58456,62958:58457,62959:58458,62960:58459,62961:58460,62962:58461,62963:58462,62964:58463,62965:58464,62966:58465,62967:58466,62968:58467,62969:58468,62970:58469,62971:58470,62972:58471,63040:58472,63041:58473,63042:58474,63043:58475,63044:58476,63045:58477,63046:58478,63047:58479,63048:58480,63049:58481,63050:58482,63051:58483,63052:58484,63053:58485,63054:58486,63055:58487,63056:58488,63057:58489,63058:58490,63059:58491,63060:58492,63061:58493,63062:58494,63063:58495,63064:58496,63065:58497,63066:58498,63067:58499,63068:58500,63069:58501,63070:58502,63071:58503,63072:58504,63073:58505,63074:58506,63075:58507,63076:58508,63077:58509,63078:58510,63079:58511,63080:58512,63081:58513,63082:58514,63083:58515,63084:58516,63085:58517,63086:58518,63087:58519,63088:58520,63089:58521,63090:58522,63091:58523,63092:58524,63093:58525,63094:58526,63095:58527,63096:
551758528,63097:58529,63098:58530,63099:58531,63100:58532,63101:58533,63102:58534,63104:58535,63105:58536,63106:58537,63107:58538,63108:58539,63109:58540,63110:58541,63111:58542,63112:58543,63113:58544,63114:58545,63115:58546,63116:58547,63117:58548,63118:58549,63119:58550,63120:58551,63121:58552,63122:58553,63123:58554,63124:58555,63125:58556,63126:58557,63127:58558,63128:58559,63129:58560,63130:58561,63131:58562,63132:58563,63133:58564,63134:58565,63135:58566,63136:58567,63137:58568,63138:58569,63139:58570,63140:58571,63141:58572,63142:58573,63143:58574,63144:58575,63145:58576,63146:58577,63147:58578,63148:58579,63149:58580,63150:58581,63151:58582,63152:58583,63153:58584,63154:58585,63155:58586,63156:58587,63157:58588,63158:58589,63159:58590,63160:58591,63161:58592,63162:58593,63163:58594,63164:58595,63165:58596,63166:58597,63167:58598,63168:58599,63169:58600,63170:58601,63171:58602,63172:58603,63173:58604,63174:58605,63175:58606,63176:58607,63177:58608,63178:58609,63179:58610,63180:58611,63181:58612,63182:58613,63183:58614,63184:58615,63185:58616,63186:58617,63187:58618,63188:58619,63189:58620,63190:58621,63191:58622,63192:58623,63193:58624,63194:58625,63195:58626,63196:58627,63197:58628,63198:58629,63199:58630,63200:58631,63201:58632,63202:58633,63203:58634,63204:58635,63205:58636,63206:58637,63207:58638,63208:58639,63209:58640,63210:58641,63211:58642,63212:58643,63213:58644,63214:58645,63215:58646,63216:58647,63217:58648,63218:58649,63219:58650,63220:58651,63221:58652,63222:58653,63223:58654,63224:58655,63225:58656,63226:58657,63227:58658,63228:58659,63296:58660,63297:58661,63298:58662,63299:58663,63300:58664,63301:58665,63302:58666,63303:58667,63304:58668,63305:58669,63306:58670,63307:58671,63308:58672,63309:58673,63310:58674,63311:58675,63312:58676,63313:58677,63314:58678,63315:58679,63316:58680,63317:58681,63318:58682,63319:58683,63320:58684,63321:58685,63322:58686,63323:58687,63324:58688,63325:58689,63326:58690,63327:58691,63328:58692,63329:58693,63330:58694,63331:58695,63332:58696,63333:58697,63334:58698,63335:58699,63336:58700,63337:58701,63338:58702,63339:58703,63340:58704,63341:58705,63342:58706,63343:58707,63344:58708,63345:58709,63346:58710,63347:58711,63348:58712,63349:58713,63350:58714,63351:58715,63352:58716,63353:58717,63354:58718,63355:58719,63356:58720,63357:58721,63358:58722,63360:58723,63361:58724,63362:58725,63363:58726,63364:58727,63365:58728,63366:58729,63367:58730,63368:58731,63369:58732,63370:58733,63371:58734,63372:58735,63373:58736,63374:58737,63375:58738,63376:58739,63377:58740,63378:58741,63379:58742,63380:58743,63381:58744,63382:58745,63383:58746,63384:58747,63385:58748,63386:58749,63387:58750,63388:58751,63389:58752,63390:58753,63391:58754,63392:58755,63393:58756,63394:58757,63395:58758,63396:58759,63397:58760,63398:58761,63399:58762,63400:58763,63401:58764,63402:58765,63403:58766,63404:58767,63405:58768,63406:58769,63407:58770,63408:58771,63409:58772,63410:58773,63411:58774,63412:58775,63413:58776,63414:58777,63415:58778,63416:58779,63417:58780,63418:58781,63419:58782,63420:58783,63421:58784,63422:58785,63423:58786,63424:58787,63425:58788,63426:58789,63427:58790,63428:58791,63429:58792,63430:58793,63431:58794,63432:58795,63433:58796,63434:58797,63435:58798,63436:58799,63437:58800,63438:58801,63439:58802,63440:58803,63441:58804,63442:58805,63443:58806,63444:58807,63445:58808,63446:58809,63447:58810,63448:58811,63449:58812,63450:58813,63451:58814,63452:58815,63453:58816,63454:58817,63455:58818,63456:58819,63457:58820,63458:58821,63459:58822,63460:58823,63461:58824,63462:58825,63463:58826,63464:58827,63465:58828,63466:58829,63467:58830,63468:58831,63469:58832,63470:58833,63471:58834,63472:58835,63473:58836,63474:58837,63475:58838,63476:58839,63477:58840,63478:58841,63479:58842,63480:58843,63481:58844,63482:58845,63483:58846,63484:58847,63552:58848,63553:58849,63554:58850,63555:58851,63556:58852,63557:58853,63558:58854,63559:58855,63560:58856,63561:58857,63562:58858,63563:58859,63564:58860,63565:58861,63566:58862,63567:58863,63568:58864,63569:58865,63570:58866,63571:58867,63572:58868,63573:58869,63574:58870,63575:58871,63576:58872,63577:58873,63578:58874,63579:58875,63580:58876,63581:58877,63582:58878,63583:58879,63584:58880,63585:58881,63586:58882,63587:58883,63588:58884,63589:58885,63590:58886,63591:58887,63592:58888,63593:58889,63594:58890,63595:58891,63596:58892,63597:58893,63598:58894,63599:58895,63600:58896,63601:58897,63602:58898,63603:58899,63604:58900,63605:58901,63606:58902,63607:58903,63608:58904,63609:58905,63610:58906,63611:58907,63612:58908,63613:58909,63614:58910,63616:58911,63617:58912,63618:58913,63619:58914,63620:58915,63621:58916,63622:58917,63623:58918,63624:58919,63625:58920,63626:58921,63627:58922,63628:58923,63629:58924,63630:58925,63631:58926,63632:58927,63633:58928,63634:58929,63635:58930,63636:58931,63637:58932,63638:58933,63639:58934,63640:58935,63641:58936,63642:58937,63643:58938,63644:58939,63645:58940,63646:58941,63647:58942,63648:58943,63649:58944,63650:58945,63651:58946,63652:58947,63653:58948,63654:58949,63655:58950,63656:58951,63657:58952,63658:58953,63659:58954,63660:58955,63661:58956,63662:58957,63663:58958,63664:58959,63665:58960,63666:58961,63667:58962,63668:58963,63669:58964,63670:58965,63671:58966,63672:58967,63673:58968,63674:58969,63675:58970,63676:58971,63677:58972,63678:58973,63679:58974,63680:58975,63681:58976,63682:58977,63683:58978,63684:58979,63685:58980,63686:58981,63687:58982,63688:58983,63689:58984,63690:58985,63691:58986,63692:58987,63693:58988,63694:58989,63695:58990,63696:58991,63697:58992,63698:58993,63699:58994,63700:58995,63701:58996,63702:58997,63703:58998,63704:58999,63705:59e3,63706:59001,63707:59002,63708:59003,63709:59004,63710:59005,63711:59006,63712:59007,63713:59008,63714:59009,63715:59010,63716:59011,63717:59012,63718:59013,63719:59014,63720:59015,63721:59016,63722:59017,63723:59018,63724:59019,63725:59020,63726:59021,63727:59022,63728:59023,63729:59024,63730:59025,63731:59026,63732:59027,63733:59028,63734:59029,63735:59030,63736:59031,63737:59032,63738:59033,63739:59034,63740:59035,64064:8560,64065:8561,64066:8562,64067:8563,64068:8564,64069:8565,64070:8566,64071:8567,64072:8568,64073:8569,64074:8544,64075:8545,64076:8546,64077:8547,64078:8548,64079:8549,64080:8550,64081:8551,
551764082:8552,64083:8553,64084:65506,64085:65508,64086:65287,64087:65282,64088:12849,64089:8470,64090:8481,64091:8757,64092:32394,64093:35100,64094:37704,64095:37512,64096:34012,64097:20425,64098:28859,64099:26161,64100:26824,64101:37625,64102:26363,64103:24389,64104:20008,64105:20193,64106:20220,64107:20224,64108:20227,64109:20281,64110:20310,64111:20370,64112:20362,64113:20378,64114:20372,64115:20429,64116:20544,64117:20514,64118:20479,64119:20510,64120:20550,64121:20592,64122:20546,64123:20628,64124:20724,64125:20696,64126:20810,64128:20836,64129:20893,64130:20926,64131:20972,64132:21013,64133:21148,64134:21158,64135:21184,64136:21211,64137:21248,64138:21255,64139:21284,64140:21362,64141:21395,64142:21426,64143:21469,64144:64014,64145:21660,64146:21642,64147:21673,64148:21759,64149:21894,64150:22361,64151:22373,64152:22444,64153:22472,64154:22471,64155:64015,64156:64016,64157:22686,64158:22706,64159:22795,64160:22867,64161:22875,64162:22877,64163:22883,64164:22948,64165:22970,64166:23382,64167:23488,64168:29999,64169:23512,64170:23532,64171:23582,64172:23718,64173:23738,64174:23797,64175:23847,64176:23891,64177:64017,64178:23874,64179:23917,64180:23992,64181:23993,64182:24016,64183:24353,64184:24372,64185:24423,64186:24503,64187:24542,64188:24669,64189:24709,64190:24714,64191:24798,64192:24789,64193:24864,64194:24818,64195:24849,64196:24887,64197:24880,64198:24984,64199:25107,64200:25254,64201:25589,64202:25696,64203:25757,64204:25806,64205:25934,64206:26112,64207:26133,64208:26171,64209:26121,64210:26158,64211:26142,64212:26148,64213:26213,64214:26199,64215:26201,64216:64018,64217:26227,64218:26265,64219:26272,64220:26290,64221:26303,64222:26362,64223:26382,64224:63785,64225:26470,64226:26555,64227:26706,64228:26560,64229:26625,64230:26692,64231:26831,64232:64019,64233:26984,64234:64020,64235:27032,64236:27106,64237:27184,64238:27243,64239:27206,64240:27251,64241:27262,64242:27362,64243:27364,64244:27606,64245:27711,64246:27740,64247:27782,64248:27759,64249:27866,64250:27908,64251:28039,64252:28015,64320:28054,64321:28076,64322:28111,64323:28152,64324:28146,64325:28156,64326:28217,64327:28252,64328:28199,64329:28220,64330:28351,64331:28552,64332:28597,64333:28661,64334:28677,64335:28679,64336:28712,64337:28805,64338:28843,64339:28943,64340:28932,64341:29020,64342:28998,64343:28999,64344:64021,64345:29121,64346:29182,64347:29361,64348:29374,64349:29476,64350:64022,64351:29559,64352:29629,64353:29641,64354:29654,64355:29667,64356:29650,64357:29703,64358:29685,64359:29734,64360:29738,64361:29737,64362:29742,64363:29794,64364:29833,64365:29855,64366:29953,64367:30063,64368:30338,64369:30364,64370:30366,64371:30363,64372:30374,64373:64023,64374:30534,64375:21167,64376:30753,64377:30798,64378:30820,64379:30842,64380:31024,64381:64024,64382:64025,64384:64026,64385:31124,64386:64027,64387:31131,64388:31441,64389:31463,64390:64028,64391:31467,64392:31646,64393:64029,64394:32072,64395:32092,64396:32183,64397:32160,64398:32214,64399:32338,64400:32583,64401:32673,64402:64030,64403:33537,64404:33634,64405:33663,64406:33735,64407:33782,64408:33864,64409:33972,64410:34131,64411:34137,64412:34155,64413:64031,64414:34224,64415:64032,64416:64033,64417:34823,64418:35061,64419:35346,64420:35383,64421:35449,64422:35495,64423:35518,64424:35551,64425:64034,64426:35574,64427:35667,64428:35711,64429:36080,64430:36084,64431:36114,64432:36214,64433:64035,64434:36559,64435:64036,64436:64037,64437:36967,64438:37086,64439:64038,64440:37141,64441:37159,64442:37338,64443:37335,64444:37342,64445:37357,64446:37358,64447:37348,64448:37349,64449:37382,64450:37392,64451:37386,64452:37434,64453:37440,64454:37436,64455:37454,64456:37465,64457:37457,64458:37433,64459:37479,64460:37543,64461:37495,64462:37496,64463:37607,64464:37591,64465:37593,64466:37584,64467:64039,64468:37589,64469:37600,64470:37587,64471:37669,64472:37665,64473:37627,64474:64040,64475:37662,64476:37631,64477:37661,64478:37634,64479:37744,64480:37719,64481:37796,64482:37830,64483:37854,64484:37880,64485:37937,64486:37957,64487:37960,64488:38290,64489:63964,64490:64041,64491:38557,64492:38575,64493:38707,64494:38715,64495:38723,64496:38733,64497:38735,64498:38737,64499:38741,64500:38999,64501:39013,64502:64042,64503:64043,64504:39207,64505:64044,64506:39326,64507:39502,64508:39641,64576:39644,64577:39797,64578:39794,64579:39823,64580:39857,64581:39867,64582:39936,64583:40304,64584:40299,64585:64045,64586:40473,64587:40657};function UD(t,e){this.dv=new DataView(t),this.offset=0,this.littleEndian=e!==void 0?e:!0,this.encoder=new Iw}UD.prototype={constructor:UD,getInt8:function(){var t=this.dv.getInt8(this.offset);return this.offset+=1,t},getInt8Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getInt8());return e},getUint8:function(){var t=this.dv.getUint8(this.offset);return this.offset+=1,t},getUint8Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getUint8());return e},getInt16:function(){var t=this.dv.getInt16(this.offset,this.littleEndian);return this.offset+=2,t},getInt16Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getInt16());return e},getUint16:function(){var t=this.dv.getUint16(this.offset,this.littleEndian);return this.offset+=2,t},getUint16Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getUint16());return e},getInt32:function(){var t=this.dv.getInt32(this.offset,this.littleEndian);return this.offset+=4,t},getInt32Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getInt32());return e},getUint32:function(){var t=this.dv.getUint32(this.offset,this.littleEndian);return this.offset+=4,t},getUint32Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getUint32());return e},getFloat32:function(){var t=this.dv.getFloat32(this.offset,this.littleEndian);return this.offset+=4,t},getFloat32Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getFloat32());return e},getFloat64:function(){var t=this.dv.getFloat64(this.offset,this.littleEndian);return this.offset+=8,t},getFloat64Array:function(t){for(var e=[],n=0;n<t;n++)e.push(this.getFloat64());return e},getIndex:function(t,e){switch(t){case 1:return e===!0?this.getUint8():this.getInt8();case 2:return e===!0?this.getUint16():this.getInt16();case 4:return this.getInt32();default:throw"unknown number type "+t+" exception."}},getIndexArray:function(t,e,n){for(var i=[],r=0;r<e;r++)i.push(this.getIndex(t,n));return i},getChars:function(t){for(var e="";t>0;){var n=this.getUint8();if(t--,n===0)break;e+=String.fromCharCode(n)}for(;t>0;)this.getUint8(),t--;return e},getSjisStringsAsUnicode:function(t){for(var e=[];t>0;){var n=this.getUint8();if(t--,n===0)break;e.push(n)}for(;t>0;)this.getUint8(),t--;return this.encoder.s2u(new Uint8Array(e))},getUnicodeStrings:function(t){for(var e="";t>0;){var n=this.getUint16();if(t-=2,n===0)break;e+=String.fromCharCode(n)}for(;t>0;)this.getUint8(),t--;return e},getTextBuffer:function(){var t=this.getUint32();return this.getUnicodeStrings(t)}};function zD(){}zD.prototype={constructor:zD,leftToRightVector3:function(t){t[2]=-t[2]},leftToRightQuaternion:function(t){t[0]=-t[0],t[1]=-t[1]},leftToRightEuler:function(t){t[0]=-t[0],t[1]=-t[1]},leftToRightIndexOrder:function(t){var e=t[2];t[2]=t[0],t[0]=e},leftToRightVector3Range:function(t,e){var n=-e[2];e[2]=-t[2],t[2]=n},leftToRightEulerRange:function(t,e){var n=-e[0],i=-e[1];e[0]=-t[0],e[1]=-t[1],t[0]=n,t[1]=i}};const LH=0,_fe=2,xfe=0,Efe=0,Sfe=2,Tfe=0,Cfe=0,wfe=1,UE=2,Ife=1,Mfe=64,NH=0,kH=9,Mw=15,FH=16,Rw=22,OH=37,bw=43,UH=76,zH=83,VH=97,GH=100,QH=103,HH=109;class Rfe{constructor(){this.vkFormat=NH,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=LH,this.levels=[],this.dataFormatDescriptor=[{vendorId:Efe,descriptorType:xfe,descriptorBlockSize:0,versionNumber:Sfe,colorModel:Tfe,colorPrimaries:Ife,transferFunction:UE,flags:Cfe,texelBlockDimension:[0,0,0,0],bytesPlane:[0,0,0,0,0,0,0,0],samples:[]}],this.keyValue={},this.globalData=null}}class Gf{constructor(e,n,i,r){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(e.buffer,e.byteOffset+n,i),this._littleEndian=r,this._offset=0}_nextUint8(){const e=this._dataView.getUint8(this._offset);return this._offset+=1,e}_nextUint16(){const e=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,e}_nextUint32(){const e=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint64(){const e=this._dataView.getUint32(this._offset,this._littleEndian),n=this._dataView.getUint32(this._offset+4,this._littleEndian),i=e+2**32*n;return this._offset+=8,i}_nextInt32(){const e=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,e}
vendor: 3,975 bytes, line 5517
5517_skip(e){return this._offset+=e,this}_scan(e,n=0){const i=this._offset;let r=0;for(;this._dataView.getUint8(this._offset)!==n&&r<e;)r++,this._offset++;return r<e&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+i,r)}}const Yr=[171,75,84,88,32,50,48,187,13,10,26,10];function VD(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Buffer.from(t).toString("utf8")}function bfe(t){const e=new Uint8Array(t.buffer,t.byteOffset,Yr.length);if(e[0]!==Yr[0]||e[1]!==Yr[1]||e[2]!==Yr[2]||e[3]!==Yr[3]||e[4]!==Yr[4]||e[5]!==Yr[5]||e[6]!==Yr[6]||e[7]!==Yr[7]||e[8]!==Yr[8]||e[9]!==Yr[9]||e[10]!==Yr[10]||e[11]!==Yr[11])throw new Error("Missing KTX 2.0 identifier.");const n=new Rfe,i=17*Uint32Array.BYTES_PER_ELEMENT,r=new Gf(t,Yr.length,i,!0);n.vkFormat=r._nextUint32(),n.typeSize=r._nextUint32(),n.pixelWidth=r._nextUint32(),n.pixelHeight=r._nextUint32(),n.pixelDepth=r._nextUint32(),n.layerCount=r._nextUint32(),n.faceCount=r._nextUint32();const s=r._nextUint32();n.supercompressionScheme=r._nextUint32();const o=r._nextUint32(),a=r._nextUint32(),l=r._nextUint32(),u=r._nextUint32(),c=r._nextUint64(),h=r._nextUint64(),f=s*3*8,m=new Gf(t,Yr.length+i,f,!0);for(let F=0;F<s;F++)n.levels.push({levelData:new Uint8Array(t.buffer,t.byteOffset+m._nextUint64(),m._nextUint64()),uncompressedByteLength:m._nextUint64()});const g=new Gf(t,o,a,!0),v={vendorId:g._skip(4)._nextUint16(),descriptorType:g._nextUint16(),versionNumber:g._nextUint16(),descriptorBlockSize:g._nextUint16(),colorModel:g._nextUint8(),colorPrimaries:g._nextUint8(),transferFunction:g._nextUint8(),flags:g._nextUint8(),texelBlockDimension:[g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8()],bytesPlane:[g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8()],samples:[]},_=6,A=4,y=(v.descriptorBlockSize/4-_)/A;for(let F=0;F<y;F++){const k={bitOffset:g._nextUint16(),bitLength:g._nextUint8(),channelType:g._nextUint8(),samplePosition:[g._nextUint8(),g._nextUint8(),g._nextUint8(),g._nextUint8()],sampleLower:-1/0,sampleUpper:1/0};k.channelType&Mfe?(k.sampleLower=g._nextInt32(),k.sampleUpper=g._nextInt32()):(k.sampleLower=g._nextUint32(),k.sampleUpper=g._nextUint32()),v.samples[F]=k}n.dataFormatDescriptor.length=0,n.dataFormatDescriptor.push(v);const q=new Gf(t,l,u,!0);for(;q._offset<u;){const F=q._nextUint32(),k=q._scan(F),Q=VD(k),ce=q._scan(F-k.byteLength);n.keyValue[Q]=Q.match(/^ktx/i)?VD(ce):ce,q._offset%4&&q._skip(4-q._offset%4)}if(h<=0)return n;const E=new Gf(t,c,h,!0),T=E._nextUint16(),C=E._nextUint16(),I=E._nextUint32(),R=E._nextUint32(),M=E._nextUint32(),b=E._nextUint32(),D=[];for(let F=0;F<s;F++)D.push({imageFlags:E._nextUint32(),rgbSliceByteOffset:E._nextUint32(),rgbSliceByteLength:E._nextUint32(),alphaSliceByteOffset:E._nextUint32(),alphaSliceByteLength:E._nextUint32()});const z=c+E._offset,O=z+I,W=O+R,$=W+M,K=new Uint8Array(t.buffer,t.byteOffset+z,I),Y=new Uint8Array(t.buffer,t.byteOffset+O,R),B=new Uint8Array(t.buffer,t.byteOffset+W,M),U=new Uint8Array(t.buffer,t.byteOffset+$,b);return n.globalData={endpointCount:T,selectorCount:C,imageDescs:D,endpointsData:K,selectorsData:Y,tablesData:B,extendedData:U},n}let Mq,Gl,zE;const Rq={env:{emscripten_notify_memory_growth:function(t){zE=new Uint8Array(Gl.exports.memory.buffer)}}};class Pfe{init(){return Mq||(Mq=typeof fetch<"u"?fetch("data:application/wasm;base64,"+GD).then(e=>e.arrayBuffer()).then(e=>WebAssembly.instantiate(e,Rq)).then(this._init):WebAssembly.instantiate(Buffer.from(GD,"base64"),Rq).then(this._init),Mq)}_init(e){Gl=e.instance,Rq.env.emscripten_notify_memory_growth(0)}decode(e,n=0){if(!Gl)throw new Error("ZSTDDecoder: Await .init() before decoding.");const i=e.byteLength,r=Gl.exports.malloc(i);zE.set(e,r),n=n||Number(Gl.exports.ZSTD_findDecompressedSize(r,i));const s=Gl.exports.malloc(n),o=Gl.exports.ZSTD_decompress(s,n,r,i),a=zE.slice(s,s+o);return Gl.exports.free(r),Gl.exports.free(s),a}}const GD="
vendor: 3,610 bytes, line 5517
5517AGFzbQEAAAABpQEVYAF/AX9gAn9/AGADf39/AX9gBX9/f39/AX9gAX8AYAJ/fwF/YAR/f39/AX9gA39/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gAn9/AX5gAn5+AX5gAABgBX9/f39/AGAGf39/f39/AGAIf39/f39/f38AYAl/f39/f39/f38AYAABf2AIf39/f39/f38Bf2ANf39/f39/f39/f39/fwF/YAF/AX4CJwEDZW52H2Vtc2NyaXB0ZW5fbm90aWZ5X21lbW9yeV9ncm93dGgABANpaAEFAAAFAgEFCwACAQABAgIFBQcAAwABDgsBAQcAEhMHAAUBDAQEAAANBwQCAgYCBAgDAwMDBgEACQkHBgICAAYGAgQUBwYGAwIGAAMCAQgBBwUGCgoEEQAEBAEIAwgDBQgDEA8IAAcABAUBcAECAgUEAQCAAgYJAX8BQaCgwAILB2AHBm1lbW9yeQIABm1hbGxvYwAoBGZyZWUAJgxaU1REX2lzRXJyb3IAaBlaU1REX2ZpbmREZWNvbXByZXNzZWRTaXplAFQPWlNURF9kZWNvbXByZXNzAEoGX3N0YXJ0ACQJBwEAQQELASQKussBaA8AIAAgACgCBCABajYCBAsZACAAKAIAIAAoAgRBH3F0QQAgAWtBH3F2CwgAIABBiH9LC34BBH9BAyEBIAAoAgQiA0EgTQRAIAAoAggiASAAKAIQTwRAIAAQDQ8LIAAoAgwiAiABRgRAQQFBAiADQSBJGw8LIAAgASABIAJrIANBA3YiBCABIARrIAJJIgEbIgJrIgQ2AgggACADIAJBA3RrNgIEIAAgBCgAADYCAAsgAQsUAQF/IAAgARACIQIgACABEAEgAgv3AQECfyACRQRAIABCADcCACAAQQA2AhAgAEIANwIIQbh/DwsgACABNgIMIAAgAUEEajYCECACQQRPBEAgACABIAJqIgFBfGoiAzYCCCAAIAMoAAA2AgAgAUF/ai0AACIBBEAgAEEIIAEQFGs2AgQgAg8LIABBADYCBEF/DwsgACABNgIIIAAgAS0AACIDNgIAIAJBfmoiBEEBTQRAIARBAWtFBEAgACABLQACQRB0IANyIgM2AgALIAAgAS0AAUEIdCADajYCAAsgASACakF/ai0AACIBRQRAIABBADYCBEFsDwsgAEEoIAEQFCACQQN0ams2AgQgAgsWACAAIAEpAAA3AAAgACABKQAINwAICy8BAX8gAUECdEGgHWooAgAgACgCAEEgIAEgACgCBGprQR9xdnEhAiAAIAEQASACCyEAIAFCz9bTvtLHq9lCfiAAfEIfiUKHla+vmLbem55/fgsdAQF/IAAoAgggACgCDEYEfyAAKAIEQSBGBUEACwuCBAEDfyACQYDAAE8EQCAAIAEgAhBnIAAPCyAAIAJqIQMCQCAAIAFzQQNxRQRAAkAgAkEBSARAIAAhAgwBCyAAQQNxRQRAIAAhAgwBCyAAIQIDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADTw0BIAJBA3ENAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgA0F8aiIEIABJBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAsMACAAIAEpAAA3AAALQQECfyAAKAIIIgEgACgCEEkEQEEDDwsgACAAKAIEIgJBB3E2AgQgACABIAJBA3ZrIgE2AgggACABKAAANgIAQQALDAAgACABKAIANgAAC/cCAQJ/AkAgACABRg0AAkAgASACaiAASwRAIAAgAmoiBCABSw0BCyAAIAEgAhALDwsgACABc0EDcSEDAkACQCAAIAFJBEAgAwRAIAAhAwwDCyAAQQNxRQRAIAAhAwwCCyAAIQMDQCACRQ0EIAMgAS0AADoAACABQQFqIQEgAkF/aiECIANBAWoiA0EDcQ0ACwwBCwJAIAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQhBSAGQQR2IQ
vendor: 35,367 bytes, line 5517
5517RBICAAdCIAQQFyIQkgASgCACEPQQAhAiADIQYCQANAIAlBAkggAiAPS3JFBEAgAiEHAkAgCARAA0AgBEH//wNxQf//A0YEQCAHQRhqIQcgBiAQSQR/IAZBAmoiBigAACAFdgUgBUEQaiEFIARBEHYLIQQMAQsLA0AgBEEDcSIIQQNGBEAgBUECaiEFIARBAnYhBCAHQQNqIQcMAQsLIAcgCGoiByAPSw0EIAVBAmohBQNAIAIgB0kEQCANIAJBAXRqQQA7AQAgAkEBaiECDAELCyAGIA5LQQAgBiAFQQN1aiIHIAxLG0UEQCAHKAAAIAVBB3EiBXYhBAwCCyAEQQJ2IQQLIAYhBwsCfyALQX9qIAQgAEF/anEiBiAAQQF0QX9qIgggCWsiEUkNABogBCAIcSIEQQAgESAEIABIG2shBiALCyEIIA0gAkEBdGogBkF/aiIEOwEAIAlBASAGayAEIAZBAUgbayEJA0AgCSAASARAIABBAXUhACALQX9qIQsMAQsLAn8gByAOS0EAIAcgBSAIaiIFQQN1aiIGIAxLG0UEQCAFQQdxDAELIAUgDCIGIAdrQQN0awshBSACQQFqIQIgBEUhCCAGKAAAIAVBH3F2IQQMAQsLQWwgCUEBRyAFQSBKcg0BGiABIAJBf2o2AgAgBiAFQQdqQQN1aiADawwBC0FQCyEAIApBEGokACAACwkAQQFBBSAAGwsMACAAIAEoAAA2AAALqgMBCn8jAEHwAGsiCiQAIAJBAWohDiAAQQhqIQtBgIAEIAVBf2p0QRB1IQxBACECQQEhBkEBIAV0IglBf2oiDyEIA0AgAiAORkUEQAJAIAEgAkEBdCINai8BACIHQf//A0YEQCALIAhBA3RqIAI2AgQgCEF/aiEIQQEhBwwBCyAGQQAgDCAHQRB0QRB1ShshBgsgCiANaiAHOwEAIAJBAWohAgwBCwsgACAFNgIEIAAgBjYCACAJQQN2IAlBAXZqQQNqIQxBACEAQQAhBkEAIQIDQCAGIA5GBEADQAJAIAAgCUYNACAKIAsgAEEDdGoiASgCBCIGQQF0aiICIAIvAQAiAkEBajsBACABIAUgAhAUayIIOgADIAEgAiAIQf8BcXQgCWs7AQAgASAEIAZBAnQiAmooAgA6AAIgASACIANqKAIANgIEIABBAWohAAwBCwsFIAEgBkEBdGouAQAhDUEAIQcDQCAHIA1ORQRAIAsgAkEDdGogBjYCBANAIAIgDGogD3EiAiAISw0ACyAHQQFqIQcMAQsLIAZBAWohBgwBCwsgCkHwAGokAAsjAEIAIAEQCSAAhUKHla+vmLbem55/fkLj3MqV/M7y9YV/fAsQACAAQn43AwggACABNgIACyQBAX8gAARAIAEoAgQiAgRAIAEoAgggACACEQEADwsgABAmCwsfACAAIAEgAi8BABAINgIAIAEQBBogACACQQRqNgIEC0oBAX9BoCAoAgAiASAAaiIAQX9MBEBBiCBBMDYCAEF/DwsCQCAAPwBBEHRNDQAgABBmDQBBiCBBMDYCAEF/DwtBoCAgADYCACABC9cBAQh/Qbp/IQoCQCACKAIEIgggAigCACIJaiIOIAEgAGtLDQBBbCEKIAkgBCADKAIAIgtrSw0AIAAgCWoiBCACKAIIIgxrIQ0gACABQWBqIg8gCyAJQQAQKSADIAkgC2o2AgACQAJAIAwgBCAFa00EQCANIQUMAQsgDCAEIAZrSw0CIAcgDSAFayIAaiIBIAhqIAdNBEAgBCABIAgQDxoMAgsgBCABQQAgAGsQDyEBIAIgACAIaiIINgIEIAEgAGshBAsgBCAPIAUgCEEBECkLIA4hCgsgCgubAgEBfyMAQYABayINJAAgDSADNgJ8AkAgAkEDSwRAQX8hCQwBCwJAAkACQAJAIAJBAWsOAwADAgELIAZFBEBBuH8hCQwEC0FsIQkgBS0AACICIANLDQMgACAHIAJBAnQiAmooAgAgAiAIaigCABA7IAEgADYCAEEBIQkMAwsgASAJNgIAQQAhCQwCCyAKRQRAQWwhCQwCC0EAIQkgC0UgDEEZSHINAUEIIAR0QQhqIQBBACECA0AgAiAATw0CIAJBQGshAgwAAAsAC0FsIQkgDSANQfwAaiANQfgAaiAFIAYQFSICEAMNACANKAJ4IgMgBEsNACAAIA0gDSgCfCAHIAggAxAYIAEgADYCACACIQkLIA1BgAFqJAAgCQsLACAAIAEgAhALGgsQACAALwAAIAAtAAJBEHRyCy8AAn9BuH8gAUEISQ0AGkFyIAAoAAQiAEF3Sw0AGkG4fyAAQQhqIgAgACABSxsLCwkAIAAgATsAAAsDAAELigYBBX8gACAAKAIAIgVBfnE2AgBBACAAIAVBAXZqQYQgKAIAIgQgAEYbIQECQAJAIAAoAgQiAkUNACACKAIAIgNBAXENACACQQhqIgUgA0EBdkF4aiIDQQggA0EISxtnQR9zQQJ0QYAfaiIDKAIARgRAIAMgAigCDDYCAAsgAigCCCIDBEAgAyACKAIMNgIECyACKAIMIgMEQCADIAIoAgg2AgALIAIgAigCACAAKAIAQX5xajYCAEGEICEAAkACQCABRQ0AIAEgAjYCBCABKAIAIgNBAXENASADQQF2QXhqIgNBCCADQQhLG2dBH3NBAnRBgB9qIgMoAgAgAUEIakYEQCADIAEoAgw2AgALIAEoAggiAwRAIAMgASgCDDYCBAsgASgCDCIDBEAgAyABKAIINgIAQYQgKAIAIQQLIAIgAigCACABKAIAQX5xajYCACABIARGDQAgASABKAIAQQF2akEEaiEACyAAIAI2AgALIAIoAgBBAXZBeGoiAEEIIABBCEsbZ0Efc0ECdEGAH2oiASgCACEAIAEgBTYCACACIAA2AgwgAkEANgIIIABFDQEgACAFNgIADwsCQCABRQ0AIAEoAgAiAkEBcQ0AIAJBAXZBeGoiAkEIIAJBCEsbZ0Efc0ECdEGAH2oiAigCACABQQhqRgRAIAIgASgCDDYCAAsgASgCCCICBEAgAiABKAIMNgIECyABKAIMIgIEQCACIAEoAgg2AgBBhCAoAgAhBAsgACAAKAIAIAEoAgBBfnFqIgI2AgACQCABIARHBEAgASABKAIAQQF2aiAANgIEIAAoAgAhAgwBC0GEICAANgIACyACQQF2QXhqIgFBCCABQQhLG2dBH3NBAnRBgB9qIgIoAgAhASACIABBCGoiAjYCACAAIAE2AgwgAEEANgIIIAFFDQEgASACNgIADwsgBUEBdkF4aiIBQQggAUEISxtnQR9zQQJ0QYAfaiICKAIAIQEgAiAAQQhqIgI2AgAgACABNgIMIABBADYCCCABRQ0AIAEgAjYCAAsLDgAgAARAIABBeGoQJQsLgAIBA38CQCAAQQ9qQXhxQYQgKAIAKAIAQQF2ayICEB1Bf0YNAAJAQYQgKAIAIgAoAgAiAUEBcQ0AIAFBAXZBeGoiAUEIIAFBCEsbZ0Efc0ECdEGAH2oiASgCACAAQQhqRgRAIAEgACgCDDYCAAsgACgCCCIBBEAgASAAKAIMNgIECyAAKAIMIgFFDQAgASAAKAIINgIAC0EBIQEgACAAKAIAIAJBAXRqIgI2AgAgAkEBcQ0AIAJBAXZBeGoiAkEIIAJBCEsbZ0Efc0ECdEGAH2oiAygCACECIAMgAEEIaiIDNgIAIAAgAjYCDCAAQQA2AgggAkUNACACIAM2AgALIAELtwIBA38CQAJAIABBASAAGyICEDgiAA0AAkACQEGEICgCACIARQ0AIAAoAgAiA0EBcQ0AIAAgA0EBcjYCACADQQF2QXhqIgFBCCABQQhLG2dBH3NBAnRBgB9qIgEoAgAgAEEIakYEQCABIAAoAgw2AgALIAAoAggiAQRAIAEgACgCDDYCBAsgACgCDCIBBEAgASAAKAIINgIACyACECchAkEAIQFBhCAoAgAhACACDQEgACAAKAIAQX5xNgIAQQAPCyACQQ9qQXhxIgMQHSICQX9GDQIgAkEHakF4cSIAIAJHBEAgACACaxAdQX9GDQMLAkBBhCAoAgAiAUUEQEGAICAANgIADAELIAAgATYCBAtBhCAgADYCACAAIANBAXRBAXI2AgAMAQsgAEUNAQsgAEEIaiEBCyABC7kDAQJ/IAAgA2ohBQJAIANBB0wEQANAIAAgBU8NAiAAIAItAAA6AAAgAEEBaiEAIAJBAWohAgwAAAsACyAEQQFGBEACQCAAIAJrIgZBB00EQCAAIAItAAA6AAAgACACLQABOgABIAAgAi0AAjoAAiAAIAItAAM6AAMgAEEEaiACIAZBAnQiBkHAHmooAgBqIgIQFyACIAZB4B5qKAIAayECDAELIAAgAhAMCyACQQhqIQIgAEEIaiEACwJAAkACQAJAIAUgAU0EQCAAIANqIQEgBEEBRyAAIAJrQQ9Kcg0BA0AgACACEAwgAkEIaiECIABBCGoiACABSQ0ACwwFCyAAIAFLBEAgACEBDAQLIARBAUcgACACa0EPSnINASAAIQMgAiEEA0AgAyAEEAwgBEEIaiEEIANBCGoiAyABSQ0ACwwCCwNAIAAgAhAHIAJBEGohAiAAQRBqIgAgAUkNAAsMAwsgACEDIAIhBANAIAMgBBAHIARBEGohBCADQRBqIgMgAUkNAAsLIAIgASAAa2ohAgsDQCABIAVPDQEgASACLQAAOgAAIAFBAWohASACQQFqIQIMAAALAAsLQQECfyAAIAAoArjgASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigCACACaiAAQQZ2IgFBAnRBsB5qKAIAaiAAQSBxIgBFaiABRSAAQQV2cWoFQbh/CwsdACAAKAKQ4gEQWiAAQQA2AqDiASAAQgA3A5DiAQu1AwEFfyMAQZACayIKJABBuH8hBgJAIAVFDQAgBCwAACIIQf8BcSEHAkAgCEF/TARAIAdBgn9qQQF2IgggBU8NAkFsIQYgB0GBf2oiBUGAAk8NAiAEQQFqIQdBACEGA0AgBiAFTwRAIAUhBiAIIQcMAwUgACAGaiAHIAZBAXZqIgQtAABBBHY6AAAgACAGQQFyaiAELQAAQQ9xOgAAIAZBAmohBgwBCwAACwALIAcgBU8NASAAIARBAWogByAKEFMiBhADDQELIAYhBEEAIQYgAUEAQTQQECEJQQAhBQNAIAQgBkcEQCAAIAZqIggtAAAiAUELSwRAQWwhBgwDBSAJIAFBAnRqIgEgASgCAEEBajYCACAGQQFqIQZBASAILQAAdEEBdSAFaiEFDAILAAsLQWwhBiAFRQ0AIAUQFEEBaiIBQQxLDQAgAyABNgIAQQFBASABdCAFayIDEBQiAXQgA0cNACAAIARqIAFBAWoiADoAACAJIABBAnRqIgAgACgCAEEBajYCACAJKAIEIgBBAkkgAEEBcXINACACIARBAWo2AgAgB0EBaiEGCyAKQZACaiQAIAYLxhEBDH8jAEHwAGsiBSQAQWwhCwJAIANBCkkNACACLwAAIQogAi8AAiEJIAIvAAQhByAFQQhqIAQQDgJAIAMgByAJIApqakEGaiIMSQ0AIAUtAAohCCAFQdgAaiACQQZqIgIgChAGIgsQAw0BIAVBQGsgAiAKaiICIAkQBiILEAMNASAFQShqIAIgCWoiAiAHEAYiCxADDQEgBUEQaiACIAdqIAMgDGsQBiILEAMNASAAIAFqIg9BfWohECAEQQRqIQZBASELIAAgAUEDakECdiIDaiIMIANqIgIgA2oiDiEDIAIhBCAMIQcDQCALIAMgEElxBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgCS0AAyELIAcgBiAFQUBrIAgQAkECdGoiCS8BADsAACAFQUBrIAktAAIQASAJLQADIQogBCAGIAVBKGogCBACQQJ0aiIJLwEAOwAAIAVBKGogCS0AAhABIAktAAMhCSADIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgDS0AAyENIAAgC2oiCyAGIAVB2ABqIAgQAkECdGoiAC8BADsAACAFQdgAaiAALQACEAEgAC0AAyEAIAcgCmoiCiAGIAVBQGsgCBACQQJ0aiIHLwEAOwAAIAVBQGsgBy0AAhABIActAAMhByAEIAlqIgkgBiAFQShqIAgQAkECdGoiBC8BADsAACAFQShqIAQtAAIQASAELQADIQQgAyANaiIDIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgACALaiEAIAcgCmohByAEIAlqIQQgAyANLQADaiEDIAVB2ABqEA0gBUFAaxANciAFQShqEA1yIAVBEGoQDXJFIQsMAQsLIAQgDksgByACS3INAEFsIQsgACAMSw0BIAxBfWohCQNAQQAgACAJSSAFQdgAahAEGwRAIAAgBiAFQdgAaiAIEAJBAnRqIgovAQA7AAAgBUHYAGogCi0AAhABIAAgCi0AA2oiACAGIAVB2ABqIAgQAkECdGoiCi8BADsAACAFQdgAaiAKLQACEAEgACAKLQADaiEADAEFIAxBfmohCgNAIAVB2ABqEAQgACAKS3JFBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgACAJLQADaiEADAELCwNAIAAgCk0EQCAAIAYgBUHYAGogCBACQQJ0aiIJLwEAOwAAIAVB2ABqIAktAAIQASAAIAktAANqIQAMAQsLAkAgACAMTw0AIAAgBiAFQdgAaiAIEAIiAEECdGoiDC0AADoAACAMLQADQQFGBEAgBUHYAGogDC0AAhABDAELIAUoAlxBH0sNACAFQdgAaiAGIABBAnRqLQACEAEgBSgCXEEhSQ0AIAVBIDYCXAsgAkF9aiEMA0BBACAHIAxJIAVBQGsQBBsEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiIAIAYgBUFAayAIEAJBAnRqIgcvAQA7AAAgBUFAayAHLQACEAEgACAHLQADaiEHDAEFIAJBfmohDANAIAVBQGsQBCAHIAxLckUEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwNAIAcgDE0EQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwJAIAcgAk8NACAHIAYgBUFAayAIEAIiAEECdGoiAi0AADoAACACLQADQQFGBEAgBUFAayACLQACEAEMAQsgBSgCREEfSw0AIAVBQGsgBiAAQQJ0ai0AAhABIAUoAkRBIUkNACAFQSA2AkQLIA5BfWohAgNAQQAgBCACSSAFQShqEAQbBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2oiACAGIAVBKGogCBACQQJ0aiIELwEAOwAAIAVBKGogBC0AAhABIAAgBC0AA2ohBAwBBSAOQX5qIQIDQCAFQShqEAQgBCACS3JFBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsDQCAEIAJNBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsCQCAEIA5PDQAgBCAGIAVBKGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBKGogAi0AAhABDAELIAUoAixBH0sNACAFQShqIAYgAEECdGotAAIQASAFKAIsQSFJDQAgBUEgNgIsCwNAQQAgAyAQSSAFQRBqEAQbBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2oiACAGIAVBEGogCBACQQJ0aiICLwEAOwAAIAVBEGogAi0AAhABIAAgAi0AA2ohAwwBBSAPQX5qIQIDQCAFQRBqEAQgAyACS3JFBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsDQCADIAJNBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsCQCADIA9PDQAgAyAGIAVBEGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBEGogAi0AAhABDAELIAUoAhRBH0sNACAFQRBqIAYgAEECdGotAAIQASAFKAIUQSFJDQAgBUEgNgIUCyABQWwgBUHYAGoQCiAFQUBrEApxIAVBKGoQCnEgBUEQahAKcRshCwwJCwAACwALAAALAAsAAAsACwAACwALQWwhCwsgBUHwAGokACALC7UEAQ5/IwBBEGsiBiQAIAZBBGogABAOQVQhBQJAIARB3AtJDQAgBi0ABCEHIANB8ARqQQBB7AAQECEIIAdBDEsNACADQdwJaiIJIAggBkEIaiAGQQxqIAEgAhAxIhAQA0UEQCAGKAIMIgQgB0sNASADQdwFaiEPIANBpAVqIREgAEEEaiESIANBqAVqIQEgBCEFA0AgBSICQX9qIQUgCCACQQJ0aigCAEUNAAsgAkEBaiEOQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgASALaiAKNgIAIAVBAWohBSAKIAxqIQoMAQsLIAEgCjYCAEEAIQUgBigCCCELA0AgBSALRkUEQCABIAUgCWotAAAiDEECdGoiDSANKAIAIg1BAWo2AgAgDyANQQF0aiINIAw6AAEgDSAFOgAAIAVBAWohBQwBCwtBACEBIANBADYCqAUgBEF/cyAHaiEJQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgAyALaiABNgIAIAwgBSAJanQgAWohASAFQQFqIQUMAQsLIAcgBEEBaiIBIAJrIgRrQQFqIQgDQEEBIQUgBCAIT0UEQANAIAUgDk9FBEAgBUECdCIJIAMgBEE0bGpqIAMgCWooAgAgBHY2AgAgBUEBaiEFDAELCyAEQQFqIQQMAQsLIBIgByAPIAogESADIAIgARBkIAZBAToABSAGIAc6AAYgACAGKAIENgIACyAQIQULIAZBEGokACAFC8ENAQt/IwBB8ABrIgUkAEFsIQkCQCADQQpJDQAgAi8AACEKIAIvAAIhDCACLwAEIQYgBUEIaiAEEA4CQCADIAYgCiAMampBBmoiDUkNACAFLQAKIQcgBUHYAGogAkEGaiICIAoQBiIJEAMNASAFQUBrIAIgCmoiAiAMEAYiCRADDQEgBUEoaiACIAxqIgIgBhAGIgkQAw0BIAVBEGogAiAGaiADIA1rEAYiCRADDQEgACABaiIOQX1qIQ8gBEEEaiEGQQEhCSAAIAFBA2pBAnYiAmoiCiACaiIMIAJqIg0hAyAMIQQgCiECA0AgCSADIA9JcQRAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAACAGIAVBQGsgBxACQQF0aiIILQAAIQsgBUFAayAILQABEAEgAiALOgAAIAYgBUEoaiAHEAJBAXRqIggtAAAhCyAFQShqIAgtAAEQASAEIAs6AAAgBiAFQRBqIAcQAkEBdGoiCC0AACELIAVBEGogCC0AARABIAMgCzoAACAGIAVB2ABqIAcQAkEBdGoiCC0AACELIAVB2ABqIAgtAAEQASAAIAs6AAEgBiAFQUBrIAcQAkEBdGoiCC0AACELIAVBQGsgCC0AARABIAIgCzoAASAGIAVBKGogBxACQQF0aiIILQAAIQsgBUEoaiAILQABEAEgBCALOgABIAYgBUEQaiAHEAJBAXRqIggtAAAhCyAFQRBqIAgtAAEQASADIAs6AAEgA0ECaiEDIARBAmohBCACQQJqIQIgAEECaiEAIAkgBUHYAGoQDUVxIAVBQGsQDUVxIAVBKGoQDUVxIAVBEGoQDUVxIQkMAQsLIAQgDUsgAiAMS3INAEFsIQkgACAKSw0BIApBfWohCQNAIAVB2ABqEAQgACAJT3JFBEAgBiAFQdgAaiAHEAJBAXRqIggtAAAhCyAFQdgAaiAILQABEAEgACALOgAAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAASAAQQJqIQAMAQsLA0AgBUHYAGoQBCAAIApPckUEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCwNAIAAgCkkEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCyAMQX1qIQADQCAFQUBrEAQgAiAAT3JFBEAgBiAFQUBrIAcQAkEBdGoiCi0AACEJIAVBQGsgCi0AARABIAIgCToAACAGIAVBQGsgBxACQQF0aiIKLQAAIQkgBUFAayAKLQABEAEgAiAJOgABIAJBAmohAgwBCwsDQCAFQUBrEAQgAiAMT3JFBEAgBiAFQUBrIAcQAkEBdGoiAC0AACEKIAVBQGsgAC0AARABIAIgCjoAACACQQFqIQIMAQsLA0AgAiAMSQRAIAYgBUFAayAHEAJBAXRqIgAtAAAhCiAFQUBrIAAtAAEQASACIAo6AAAgAkEBaiECDAELCyANQX1qIQADQCAFQShqEAQgBCAAT3JFBEAgBiAFQShqIAcQAkEBdGoiAi0AACEKIAVBKGogAi0AARABIAQgCjoAACAGIAVBKGogBxACQQF0aiICLQAAIQogBUEoaiACLQABEAEgBCAKOgABIARBAmohBAwBCwsDQCAFQShqEAQgBCANT3JFBEAgBiAFQShqIAcQAkEBdGoiAC0AACECIAVBKGogAC0AARABIAQgAjoAACAEQQFqIQQMAQsLA0AgBCANSQRAIAYgBUEoaiAHEAJBAXRqIgAtAAAhAiAFQShqIAAtAAEQASAEIAI6AAAgBEEBaiEEDAELCwNAIAVBEGoQBCADIA9PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIAYgBUEQaiAHEAJBAXRqIgAtAAAhAiAFQRBqIAAtAAEQASADIAI6AAEgA0ECaiEDDAELCwNAIAVBEGoQBCADIA5PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIANBAWohAwwBCwsDQCADIA5JBEAgBiAFQRBqIAcQAkEBdGoiAC0AACECIAVBEGogAC0AARABIAMgAjoAACADQQFqIQMMAQsLIAFBbCAFQdgAahAKIAVBQGsQCnEgBUEoahAKcSAFQRBqEApxGyEJDAELQWwhCQsgBUHwAGokACAJC8oCAQR/IwBBIGsiBSQAIAUgBBAOIAUtAAIhByAFQQhqIAIgAxAGIgIQA0UEQCAEQQRqIQIgACABaiIDQX1qIQQDQCAFQQhqEAQgACAET3JFBEAgAiAFQQhqIAcQAkEBdGoiBi0AACEIIAVBCGogBi0AARABIAAgCDoAACACIAVBCGogBxACQQF0aiIGLQAAIQggBUEIaiAGLQABEAEgACAIOgABIABBAmohAAwBCwsDQCAFQQhqEAQgACADT3JFBEAgAiAFQQhqIAcQAkEBdGoiBC0AACEGIAVBCGogBC0AARABIAAgBjoAACAAQQFqIQAMAQsLA0AgACADT0UEQCACIAVBCGogBxACQQF0aiIELQAAIQYgBUEIaiAELQABEAEgACAGOgAAIABBAWohAAwBCwsgAUFsIAVBCGoQChshAgsgBUEgaiQAIAILtgMBCX8jAEEQayIGJAAgBkEANgIMIAZBADYCCEFUIQQCQAJAIANBQGsiDCADIAZBCGogBkEMaiABIAIQMSICEAMNACAGQQRqIAAQDiAGKAIMIgcgBi0ABEEBaksNASAAQQRqIQogBkEAOgAFIAYgBzoABiAAIAYoAgQ2AgAgB0EBaiEJQQEhBANAIAQgCUkEQCADIARBAnRqIgEoAgAhACABIAU2AgAgACAEQX9qdCAFaiEFIARBAWohBAwBCwsgB0EBaiEHQQAhBSAGKAIIIQkDQCAFIAlGDQEgAyAFIAxqLQAAIgRBAnRqIgBBASAEdEEBdSILIAAoAgAiAWoiADYCACAHIARrIQhBACEEAkAgC0EDTQRAA0AgBCALRg0CIAogASAEakEBdGoiACAIOgABIAAgBToAACAEQQFqIQQMAAALAAsDQCABIABPDQEgCiABQQF0aiIEIAg6AAEgBCAFOgAAIAQgCDoAAyAEIAU6AAIgBCAIOgAFIAQgBToABCAEIAg6AAcgBCAFOgAGIAFBBGohAQwAAAsACyAFQQFqIQUMAAALAAsgAiEECyAGQRBqJAAgBAutAQECfwJAQYQgKAIAIABHIAAoAgBBAXYiAyABa0F4aiICQXhxQQhHcgR/IAIFIAMQJ0UNASACQQhqC0EQSQ0AIAAgACgCACICQQFxIAAgAWpBD2pBeHEiASAAa0EBdHI2AgAgASAANgIEIAEgASgCAEEBcSAAIAJBAXZqIAFrIgJBAXRyNgIAQYQgIAEgAkH/////B3FqQQRqQYQgKAIAIABGGyABNgIAIAEQJQsLygIBBX8CQAJAAkAgAEEIIABBCEsbZ0EfcyAAaUEBR2oiAUEESSAAIAF2cg0AIAFBAnRB/B5qKAIAIgJFDQADQCACQXhqIgMoAgBBAXZBeGoiBSAATwRAIAIgBUEIIAVBCEsbZ0Efc0ECdEGAH2oiASgCAEYEQCABIAIoAgQ2AgALDAMLIARBHksNASAEQQFqIQQgAigCBCICDQALC0EAIQMgAUEgTw0BA0AgAUECdEGAH2ooAgAiAkUEQCABQR5LIQIgAUEBaiEBIAJFDQEMAwsLIAIgAkF4aiIDKAIAQQF2QXhqIgFBCCABQQhLG2dBH3NBAnRBgB9qIgEoAgBGBEAgASACKAIENgIACwsgAigCACIBBEAgASACKAIENgIECyACKAIEIgEEQCABIAIoAgA2AgALIAMgAygCAEEBcjYCACADIAAQNwsgAwvhCwINfwV+IwBB8ABrIgckACAHIAAoAvDhASIINgJcIAEgAmohDSAIIAAoAoDiAWohDwJAAkAgBUUEQCABIQQMAQsgACgCxOABIRAgACgCwOABIREgACgCvOABIQ4gAEEBNgKM4QFBACEIA0AgCEEDRwRAIAcgCEECdCICaiAAIAJqQazQAWooAgA2AkQgCEEBaiEIDAELC0FsIQwgB0EYaiADIAQQBhADDQEgB0EsaiAHQRhqIAAoAgAQEyAHQTRqIAdBGGogACgCCBATIAdBPGogB0EYaiAAKAIEEBMgDUFgaiESIAEhBEEAIQwDQCAHKAIwIAcoAixBA3RqKQIAIhRCEIinQf8BcSEIIAcoAkAgBygCPEEDdGopAgAiFUIQiKdB/wFxIQsgBygCOCAHKAI0QQN0aikCACIWQiCIpyEJIBVCIIghFyAUQiCIpyECAkAgFkIQiKdB/wFxIgNBAk8EQAJAIAZFIANBGUlyRQRAIAkgB0EYaiADQSAgBygCHGsiCiAKIANLGyIKEAUgAyAKayIDdGohCSAHQRhqEAQaIANFDQEgB0EYaiADEAUgCWohCQwBCyAHQRhqIAMQBSAJaiEJIAdBGGoQBBoLIAcpAkQhGCAHIAk2AkQgByAYNwNIDAELAkAgA0UEQCACBEAgBygCRCEJDAMLIAcoAkghCQwBCwJAAkAgB0EYakEBEAUgCSACRWpqIgNBA0YEQCAHKAJEQX9qIgMgA0VqIQkMAQsgA0ECdCAHaigCRCIJIAlFaiEJIANBAUYNAQsgByAHKAJINgJMCwsgByAHKAJENgJIIAcgCTYCRAsgF6chAyALBEAgB0EYaiALEAUgA2ohAwsgCCALakEUTwRAIAdBGGoQBBoLIAgEQCAHQRhqIAgQBSACaiECCyAHQRhqEAQaIAcgB0EYaiAUQhiIp0H/AXEQCCAUp0H//wNxajYCLCAHIAdBGGogFUIYiKdB/wFxEAggFadB//8DcWo2AjwgB0EYahAEGiAHIAdBGGogFkIYiKdB/wFxEAggFqdB//8DcWo2AjQgByACNgJgIAcoAlwhCiAHIAk2AmggByADNgJkAkACQAJAIAQgAiADaiILaiASSw0AIAIgCmoiEyAPSw0AIA0gBGsgC0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdBKGogACgCBBATQQAhBCAHQeAAaiEMIAdB5ABqIQoDQCAHQShqEARBAksgBCAXTnJFBEAgBygCQCAHKAI8QQN0aikCACIdQhCIp0H/AXEhCyAHKAJQIAcoAkxBA3RqKQIAIh5CEIinQf8BcSEJIAcoAkggBygCREEDdGopAgAiH0IgiKchCCAeQiCIISAgHUIgiKchAgJAIB9CEIinQf8BcSIDQQJPBEACQCAGRSADQRlJckUEQCAIIAdBKGogA0EgIAcoAixrIg0gDSADSxsiDRAFIAMgDWsiA3RqIQggB0EoahAEGiADRQ0BIAdBKGogAxAFIAhqIQgMAQsgB0EoaiADEAUgCGohCCAHQShqEAQaCyAHKQJUISEgByAINgJUIAcgITcDWAwBCwJAIANFBEAgAgRAIAcoAlQhCAwDCyAHKAJYIQgMAQsCQAJAIAdBKGpBARAFIAggAkVqaiIDQQNGBEAgBygCVEF/aiIDIANFaiEIDAELIANBAnQgB2ooAlQiCCAIRWohCCADQQFGDQELIAcgBygCWDYCXAsLIAcgBygCVDYCWCAHIAg2AlQLICCnIQMgCQRAIAdBKGogCRAFIANqIQMLIAkgC2pBFE8EQCAHQShqEAQaCyALBEAgB0EoaiALEAUgAmohAgsgB0EoahAEGiAHIAcoAmggAmoiCSADajYCaCAKIAwgCCAJSxsoAgAhDSAHIAdBKGogHUIYiKdB/wFxEAggHadB//8DcWo2AjwgByAHQShqIB5CGIinQf8BcRAIIB6nQf//A3FqNgJMIAdBKGoQBBogB0EoaiAfQhiIp0H/AXEQCCEOIAdB8ABqIARBBHRqIgsgCSANaiAIazYCDCALIAg2AgggCyADNgIEIAsgAjYCACAHIA4gH6dB//8DcWo2AkQgBEEBaiEEDAELCyAEIBdIDQEgEkFgaiEYIAdB4ABqIRogB0HkAGohGyABIQMDQCAHQShqEARBAksgBCAFTnJFBEAgBygCQCAHKAI8QQN0aikCACIdQhCIp0H/AXEhCyAHKAJQIAcoAkxBA3RqKQIAIh5CEIinQf8BcSEIIAcoAkggBygCREEDdGopAgAiH0IgiKchCSAeQiCIISAgHUIgiKchDAJAIB9CEIinQf8BcSICQQJPBEACQCAGRSACQRlJckUEQCAJIAdBKGogAkEgIAcoAixrIgogCiACSxsiChAFIAIgCmsiAnRqIQkgB0EoahAEGiACRQ0BIAdBKGogAhAFIAlqIQkMAQsgB0EoaiACEAUgCWohCSAHQShqEAQaCyAHKQJUISEgByAJNgJUIAcgITcDWAwBCwJAIAJFBEAgDARAIAcoAlQhCQwDCyAHKAJYIQkMAQsCQAJAIAdBKGpBARAFIAkgDEVqaiICQQNGBEAgBygCVEF/aiICIAJFaiEJDAELIAJBAnQgB2ooAlQiCSAJRWohCSACQQFGDQELIAcgBygCWDYCXAsLIAcgBygCVDYCWCAHIAk2AlQLICCnIRQgCARAIAdBKGogCBAFIBRqIRQLIAggC2pBFE8EQCAHQShqEAQaCyALBEAgB0EoaiALEAUgDGohDAsgB0EoahAEGiAHIAcoAmggDGoiGSAUajYCaCAbIBogCSAZSxsoAgAhHCAHIAdBKGogHUIYiKdB/wFxEAggHadB//8DcWo2AjwgByAHQShqIB5CGIinQf8BcRAIIB6nQf//A3FqNgJMIAdBKGoQBBogByAHQShqIB9CGIinQf8BcRAIIB+nQf//A3FqNgJEIAcgB0HwAGogBEEDcUEEdGoiDSkDCCIdNwPIASAHIA0pAwAiHjcDwAECQAJAAkAgBygCvAEiDiAepyICaiIWIBNLDQAgAyAHKALEASIKIAJqIgtqIBhLDQAgEiADayALQSBqTw0BCyAHIAcpA8gBNwMQIAcgBykDwAE3AwggAyASIAdBCGogB0G8AWogEyAPIBUgERAeIQsMAQsgAiADaiEIIAMgDhAHIAJBEU8EQCADQRBqIQIDQCACIA5BEGoiDhAHIAJBEGoiAiAISQ0ACwsgCCAdpyIOayECIAcgFjYCvAEgDiAIIA9rSwRAIA4gCCAVa0sEQEFsIQsMAgsgESACIA9rIgJqIhYgCmogEU0EQCAIIBYgChAPGgwCCyAIIBZBACACaxAPIQggByACIApqIgo2AsQBIAggAmshCCAPIQILIA5BEE8EQCAIIApqIQoDQCAIIAIQByACQRBqIQIgCEEQaiIIIApJDQALDAELAkAgDkEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgDkECdCIKQcAeaigCAGoiAhAXIAIgCkHgHmooAgBrIQIgBygCxAEhCgwBCyAIIAIQDAsgCkEJSQ0AIAggCmohCiAIQQhqIgggAkEIaiICa0EPTARAA0AgCCACEAwgAkEIaiECIAhBCGoiCCAKSQ0ADAIACwALA0AgCCACEAcgAkEQaiECIAhBEGoiCCAKSQ0ACwsgCxADBEAgCyEQDAQFIA0gDDYCACANIBkgHGogCWs2AgwgDSAJNgIIIA0gFDYCBCAEQQFqIQQgAyALaiEDDAILAAsLIAQgBUgNASAEIBdrIQtBACEEA0AgCyAFSARAIAcgB0HwAGogC0EDcUEEdGoiAikDCCIdNwPIASAHIAIpAwAiHjcDwAECQAJAAkAgBygCvAEiDCAepyICaiIKIBNLDQAgAyAHKALEASIJIAJqIhBqIBhLDQAgEiADayAQQSBqTw0BCyAHIAcpA8gBNwMgIAcgBykDwAE3AxggAyASIAdBGGogB0G8AWogEyAPIBUgERAeIRAMAQsgAiADaiEIIAMgDBAHIAJBEU8EQCADQRBqIQIDQCACIAxBEGoiDBAHIAJBEGoiAiAISQ0ACwsgCCAdpyIGayECIAcgCjYCvAEgBiAIIA9rSwRAIAYgCCAVa0sEQEFsIRAMAgsgESACIA9rIgJqIgwgCWogEU0EQCAIIAwgCRAPGgwCCyAIIAxBACACaxAPIQggByACIAlqIgk2AsQBIAggAmshCCAPIQILIAZBEE8EQCAIIAlqIQYDQCAIIAIQByACQRBqIQIgCEEQaiIIIAZJDQALDAELAkAgBkEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgBkECdCIGQcAeaigCAGoiAhAXIAIgBkHgHmooAgBrIQIgBygCxAEhCQwBCyAIIAIQDAsgCUEJSQ0AIAggCWohBiAIQQhqIgggAkEIaiICa0EPTARAA0AgCCACEAwgAkEIaiECIAhBCGoiCCAGSQ0ADAIACwALA0AgCCACEAcgAkEQaiECIAhBEGoiCCAGSQ0ACwsgEBADDQMgC0EBaiELIAMgEGohAwwBCwsDQCAEQQNHBEAgACAEQQJ0IgJqQazQAWogAiAHaigCVDYCACAEQQFqIQQMAQsLIAcoArwBIQgLQbp/IRAgEyAIayIAIBIgA2tLDQAgAwR/IAMgCCAAEAsgAGoFQQALIAFrIRALIAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY0AAQMyIFEAMiBg0AIANBHzYCfCADIANB/ABqIANB+ABqIAQgBCAFaiAGGyIEIAEgAmoiAiAEaxAVIgUQAw0AIAMoAnwiBkEfSw0AIAMoAngiB0EJTw0AIABBiCBqIAMgBkGAC0GADCAHEBggA0E0NgJ8IAMgA0H8AGogA0H4AGogBCAFaiIEIAIgBGsQFSIFEAMNACADKAJ8IgZBNEsNACADKAJ4IgdBCk8NACAAQZAwaiADIAZBgA1B4A4gBxAYIANBIzYCfCADIANB/ABqIANB+ABqIAQgBWoiBCACIARrEBUiBRADDQAgAygCfCIGQSNLDQAgAygCeCIHQQpPDQAgACADIAZBwBBB0BEgBxAYIAQgBWoiBEEMaiIFIAJLDQAgAiAFayEFQQAhAgNAIAJBA0cEQCAEKAAAIgZBf2ogBU8NAiAAIAJBAnRqQZzQAWogBjYCACACQQFqIQIgBEEEaiEEDAELCyAEIAFrIQgLIANBgAFqJAAgCAtGAQN/IABBCGohAyAAKAIEIQJBACEAA0AgACACdkUEQCABIAMgAEEDdGotAAJBFktqIQEgAEEBaiEADAELCyABQQggAmt0C4YDAQV/Qbh/IQcCQCADRQ0AIAItAAAiBEUEQCABQQA2AgBBAUG4fyADQQFGGw8LAn8gAkEBaiIFIARBGHRBGHUiBkF/Sg0AGiAGQX9GBEAgA0EDSA0CIAUvAABBgP4BaiEEIAJBA2oMAQsgA0ECSA0BIAItAAEgBEEIdHJBgIB+aiEEIAJBAmoLIQUgASAENgIAIAVBAWoiASACIANqIgNLDQBBbCEHIABBEGogACAFLQAAIgVBBnZBI0EJIAEgAyABa0HAEEHQEUHwEiAAKAKM4QEgACgCnOIBIAQQHyIGEAMiCA0AIABBmCBqIABBCGogBUEEdkEDcUEfQQggASABIAZqIAgbIgEgAyABa0GAC0GADEGAFyAAKAKM4QEgACgCnOIBIAQQHyIGEAMiCA0AIABBoDBqIABBBGogBUECdkEDcUE0QQkgASABIAZqIAgbIgEgAyABa0GADUHgDkGQGSAAKAKM4QEgACgCnOIBIAQQHyIAEAMNACAAIAFqIAJrIQcLIAcLrQMBCn8jAEGABGsiCCQAAn9BUiACQf8BSw0AGkFUIANBDEsNABogAkEBaiELIABBBGohCUGAgAQgA0F/anRBEHUhCkEAIQJBASEEQQEgA3QiB0F/aiIMIQUDQCACIAtGRQRAAkAgASACQQF0Ig1qLwEAIgZB//8DRgRAIAkgBUECdGogAjoAAiAFQX9qIQVBASEGDAELIARBACAKIAZBEHRBEHVKGyEECyAIIA1qIAY7AQAgAkEBaiECDAELCyAAIAQ7AQIgACADOwEAIAdBA3YgB0EBdmpBA2ohBkEAIQRBACECA0AgBCALRkUEQCABIARBAXRqLgEAIQpBACEAA0AgACAKTkUEQCAJIAJBAnRqIAQ6AAIDQCACIAZqIAxxIgIgBUsNAAsgAEEBaiEADAELCyAEQQFqIQQMAQsLQX8gAg0AGkEAIQIDfyACIAdGBH9BAAUgCCAJIAJBAnRqIgAtAAJBAXRqIgEgAS8BACIBQQFqOwEAIAAgAyABEBRrIgU6AAMgACABIAVB/wFxdCAHazsBACACQQFqIQIMAQsLCyEFIAhBgARqJAAgBQvjBgEIf0FsIQcCQCACQQNJDQACQAJAAkACQCABLQAAIgNBA3EiCUEBaw4DAwEAAgsgACgCiOEBDQBBYg8LIAJBBUkNAkEDIQYgASgAACEFAn8CQAJAIANBAnZBA3EiCEF+aiIEQQFNBEAgBEEBaw0BDAILIAVBDnZB/wdxIQQgBUEEdkH/B3EhAyAIRQwCCyAFQRJ2IQRBBCEGIAVBBHZB//8AcSEDQQAMAQsgBUEEdkH//w9xIgNBgIAISw0DIAEtAARBCnQgBUEWdnIhBEEFIQZBAAshBSAEIAZqIgogAksNAgJAIANBgQZJDQAgACgCnOIBRQ0AQQAhAgNAIAJBg4ABSw0BIAJBQGshAgwAAAsACwJ/IAlBA0YEQCABIAZqIQEgAEHw4gFqIQIgACgCDCEGIAUEQCACIAMgASAEIAYQXwwCCyACIAMgASAEIAYQXQwBCyAAQbjQAWohAiABIAZqIQEgAEHw4gFqIQYgAEGo0ABqIQggBQRAIAggBiADIAEgBCACEF4MAQsgCCAGIAMgASAEIAIQXAsQAw0CIAAgAzYCgOIBIABBATYCiOEBIAAgAEHw4gFqNgLw4QEgCUECRgRAIAAgAEGo0ABqNgIMCyAAIANqIgBBiOMBakIANwAAIABBgOMBakIANwAAIABB+OIBakIANwAAIABB8OIBakIANwAAIAoPCwJ/AkACQAJAIANBAnZBA3FBf2oiBEECSw0AIARBAWsOAgACAQtBASEEIANBA3YMAgtBAiEEIAEvAABBBHYMAQtBAyEEIAEQIUEEdgsiAyAEaiIFQSBqIAJLBEAgBSACSw0CIABB8OIBaiABIARqIAMQCyEBIAAgAzYCgOIBIAAgATYC8OEBIAEgA2oiAEIANwAYIABCADcAECAAQgA3AAggAEIANwAAIAUPCyAAIAM2AoDiASAAIAEgBGo2AvDhASAFDwsCfwJAAkACQCADQQJ2QQNxQX9qIgRBAksNACAEQQFrDgIAAgELQQEhByADQQN2DAILQQIhByABLwAAQQR2DAELIAJBBEkgARAhIgJBj4CAAUtyDQFBAyEHIAJBBHYLIQIgAEHw4gFqIAEgB2otAAAgAkEgahAQIQEgACACNgKA4gEgACABNgLw4QEgB0EBaiEHCyAHC0sAIABC+erQ0OfJoeThADcDICAAQgA3AxggAELP1tO+0ser2UI3AxAgAELW64Lu6v2J9eAANwMIIABCADcDACAAQShqQQBBKBAQGgviAgICfwV+IABBKGoiASAAKAJIaiECAn4gACkDACIDQiBaBEAgACkDECIEQgeJIAApAwgiBUIBiXwgACkDGCIGQgyJfCAAKQMgIgdCEol8IAUQGSAEEBkgBhAZIAcQGQwBCyAAKQMYQsXP2bLx5brqJ3wLIAN8IQMDQCABQQhqIgAgAk0EQEIAIAEpAAAQCSADhUIbiUKHla+vmLbem55/fkLj3MqV/M7y9YV/fCEDIAAhAQwBCwsCQCABQQRqIgAgAksEQCABIQAMAQsgASgAAK1Ch5Wvr5i23puef34gA4VCF4lCz9bTvtLHq9lCfkL5893xmfaZqxZ8IQMLA0AgACACSQRAIAAxAABCxc/ZsvHluuonfiADhUILiUKHla+vmLbem55/fiEDIABBAWohAAwBCwsgA0IhiCADhULP1tO+0ser2UJ+IgNCHYggA4VC+fPd8Zn2masWfiIDQiCIIAOFC+8CAgJ/BH4gACAAKQMAIAKtfDcDAAJAAkAgACgCSCIDIAJqIgRBH00EQCABRQ0BIAAgA2pBKGogASACECAgACgCSCACaiEEDAELIAEgAmohAgJ/IAMEQCAAQShqIgQgA2ogAUEgIANrECAgACAAKQMIIAQpAAAQCTcDCCAAIAApAxAgACkAMBAJNwMQIAAgACkDGCAAKQA4EAk3AxggACAAKQMgIABBQGspAAAQCTcDICAAKAJIIQMgAEEANgJIIAEgA2tBIGohAQsgAUEgaiACTQsEQCACQWBqIQMgACkDICEFIAApAxghBiAAKQMQIQcgACkDCCEIA0AgCCABKQAAEAkhCCAHIAEpAAgQCSEHIAYgASkAEBAJIQYgBSABKQAYEAkhBSABQSBqIgEgA00NAAsgACAFNwMgIAAgBjcDGCAAIAc3AxAgACAINwMICyABIAJPDQEgAEEoaiABIAIgAWsiBBAgCyAAIAQ2AkgLCy8BAX8gAEUEQEG2f0EAIAMbDwtBun8hBCADIAFNBH8gACACIAMQEBogAwVBun8LCy8BAX8gAEUEQEG2f0EAIAMbDwtBun8hBCADIAFNBH8gACACIAMQCxogAwVBun8LC6gCAQZ/IwBBEGsiByQAIABB2OABaikDAEKAgIAQViEIQbh/IQUCQCAEQf//B0sNACAAIAMgBBBCIgUQAyIGDQAgACgCnOIBIQkgACAHQQxqIAMgAyAFaiAGGyIKIARBACAFIAYbayIGEEAiAxADBEAgAyEFDAELIAcoAgwhBCABRQRAQbp/IQUgBEEASg0BCyAGIANrIQUgAyAKaiEDAkAgCQRAIABBADYCnOIBDAELAkACQAJAIARBBUgNACAAQdjgAWopAwBCgICACFgNAAwBCyAAQQA2ApziAQwBCyAAKAIIED8hBiAAQQA2ApziASAGQRRPDQELIAAgASACIAMgBSAEIAgQOSEFDAELIAAgASACIAMgBSAEIAgQOiEFCyAHQRBqJAAgBQtnACAAQdDgAWogASACIAAoAuzhARAuIgEQAwRAIAEPC0G4fyECAkAgAQ0AIABB7OABaigCACIBBEBBYCECIAAoApjiASABRw0BC0EAIQIgAEHw4AFqKAIARQ0AIABBkOEBahBDCyACCycBAX8QVyIERQRAQUAPCyAEIAAgASACIAMgBBBLEE8hACAEEFYgAAs/AQF/AkACQAJAIAAoAqDiAUEBaiIBQQJLDQAgAUEBaw4CAAECCyAAEDBBAA8LIABBADYCoOIBCyAAKAKU4gELvAMCB38BfiMAQRBrIgkkAEG4fyEGAkAgBCgCACIIQQVBCSAAKALs4QEiBRtJDQAgAygCACIHQQFBBSAFGyAFEC8iBRADBEAgBSEGDAELIAggBUEDakkNACAAIAcgBRBJIgYQAw0AIAEgAmohCiAAQZDhAWohCyAIIAVrIQIgBSAHaiEHIAEhBQNAIAcgAiAJECwiBhADDQEgAkF9aiICIAZJBEBBuH8hBgwCCyAJKAIAIghBAksEQEFsIQYMAgsgB0EDaiEHAn8CQAJAAkAgCEEBaw4CAgABCyAAIAUgCiAFayAHIAYQSAwCCyAFIAogBWsgByAGEEcMAQsgBSAKIAVrIActAAAgCSgCCBBGCyIIEAMEQCAIIQYMAgsgACgC8OABBEAgCyAFIAgQRQsgAiAGayECIAYgB2ohByAFIAhqIQUgCSgCBEUNAAsgACkD0OABIgxCf1IEQEFsIQYgDCAFIAFrrFINAQsgACgC8OABBEBBaiEGIAJBBEkNASALEEQhDCAHKAAAIAynRw0BIAdBBGohByACQXxqIQILIAMgBzYCACAEIAI2AgAgBSABayEGCyAJQRBqJAAgBgsuACAAECsCf0EAQQAQAw0AGiABRSACRXJFBEBBYiAAIAEgAhA9EAMNARoLQQALCzcAIAEEQCAAIAAoAsTgASABKAIEIAEoAghqRzYCnOIBCyAAECtBABADIAFFckUEQCAAIAEQWwsL0QIBB38jAEEQayIGJAAgBiAENgIIIAYgAzYCDCAFBEAgBSgCBCEKIAUoAgghCQsgASEIAkACQANAIAAoAuzhARAWIQsCQANAIAQgC0kNASADKAAAQXBxQdDUtMIBRgRAIAMgBBAiIgcQAw0EIAQgB2shBCADIAdqIQMMAQsLIAYgAzYCDCAGIAQ2AggCQCAFBEAgACAFEE5BACEHQQAQA0UNAQwFCyAAIAogCRBNIgcQAw0ECyAAIAgQUCAMQQFHQQAgACAIIAIgBkEMaiAGQQhqEEwiByIDa0EAIAMQAxtBCkdyRQRAQbh/IQcMBAsgBxADDQMgAiAHayECIAcgCGohCEEBIQwgBigCDCEDIAYoAgghBAwBCwsgBiADNgIMIAYgBDYCCEG4fyEHIAQNASAIIAFrIQcMAQsgBiADNgIMIAYgBDYCCAsgBkEQaiQAIAcLRgECfyABIAAoArjgASICRwRAIAAgAjYCxOABIAAgATYCuOABIAAoArzgASEDIAAgATYCvOABIAAgASADIAJrajYCwOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEEdCAAbiECCyAAQQh2IgEgAkEYbCIAQYwIaigCAGwgAEGICGooAgBqIgJBA3YgAmogAEGACGooAgAgAEGECGooAgAgAWxqSQs3ACAAIAMgBCAFQYAQEDMiBRADBEAgBQ8LIAUgBEkEfyABIAIgAyAFaiAEIAVrIAAQMgVBuH8LC78DAQN/IwBBIGsiBSQAIAVBCGogAiADEAYiAhADRQRAIAAgAWoiB0F9aiEGIAUgBBAOIARBBGohAiAFLQACIQMDQEEAIAAgBkkgBUEIahAEGwRAIAAgAiAFQQhqIAMQAkECdGoiBC8BADsAACAFQQhqIAQtAAIQASAAIAQtAANqIgQgAiAFQQhqIAMQAkECdGoiAC8BADsAACAFQQhqIAAtAAIQASAEIAAtAANqIQAMAQUgB0F+aiEEA0AgBUEIahAEIAAgBEtyRQRAIAAgAiAFQQhqIAMQAkECdGoiBi8BADsAACAFQQhqIAYtAAIQASAAIAYtAANqIQAMAQsLA0AgACAES0UEQCAAIAIgBUEIaiADEAJBAnRqIgYvAQA7AAAgBUEIaiAGLQACEAEgACAGLQADaiEADAELCwJAIAAgB08NACAAIAIgBUEIaiADEAIiA0ECdGoiAC0AADoAACAALQADQQFGBEAgBUEIaiAALQACEAEMAQsgBSgCDEEfSw0AIAVBCGogAiADQQJ0ai0AAhABIAUoAgxBIUkNACAFQSA2AgwLIAFBbCAFQQhqEAobIQILCwsgBUEgaiQAIAILkgIBBH8jAEFAaiIJJAAgCSADQTQQCyEDAkAgBEECSA0AIAMgBEECdGooAgAhCSADQTxqIAgQIyADQQE6AD8gAyACOgA+QQAhBCADKAI8IQoDQCAEIAlGDQEgACAEQQJ0aiAKNgEAIARBAWohBAwAAAsAC0EAIQkDQCAGIAlGRQRAIAMgBSAJQQF0aiIKLQABIgtBAnRqIgwoAgAhBCADQTxqIAotAABBCHQgCGpB//8DcRAjIANBAjoAPyADIAcgC2siCiACajoAPiAEQQEgASAKa3RqIQogAygCPCELA0AgACAEQQJ0aiALNgEAIARBAWoiBCAKSQ0ACyAMIAo2AgAgCUEBaiEJDAELCyADQUBrJAALowIBCX8jAEHQAGsiCSQAIAlBEGogBUE0EAsaIAcgBmshDyAHIAFrIRADQAJAIAMgCkcEQEEBIAEgByACIApBAXRqIgYtAAEiDGsiCGsiC3QhDSAGLQAAIQ4gCUEQaiAMQQJ0aiIMKAIAIQYgCyAPTwRAIAAgBkECdGogCyAIIAUgCEE0bGogCCAQaiIIQQEgCEEBShsiCCACIAQgCEECdGooAgAiCEEBdGogAyAIayAHIA4QYyAGIA1qIQgMAgsgCUEMaiAOECMgCUEBOgAPIAkgCDoADiAGIA1qIQggCSgCDCELA0AgBiAITw0CIAAgBkECdGogCzYBACAGQQFqIQYMAAALAAsgCUHQAGokAA8LIAwgCDYCACAKQQFqIQoMAAALAAs0ACAAIAMgBCAFEDYiBRADBEAgBQ8LIAUgBEkEfyABIAIgAyAFaiAEIAVrIAAQNAVBuH8LCyMAIAA/AEEQdGtB//8DakEQdkAAQX9GBEBBAA8LQQAQAEEBCzsBAX8gAgRAA0AgACABIAJBgCAgAkGAIEkbIgMQCyEAIAFBgCBqIQEgAEGAIGohACACIANrIgINAAsLCwYAIAAQAwsLqBUJAEGICAsNAQAAAAEAAAACAAAAAgBBoAgLswYBAAAAAQAAAAIAAAACAAAAJgAAAIIAAAAhBQAASgAAAGcIAAAmAAAAwAEAAIAAAABJBQAASgAAAL4IAAApAAAALAIAAIAAAABJBQAASgAAAL4IAAAvAAAAygIAAIAAAACKBQAASgAAAIQJAAA1AAAAcwMAAIAAAACdBQAASgAAAKAJAAA9AAAAgQMAAIAAAADrBQAASwAAAD4KAABEAAAAngMAAIAAAABNBgAASwAAAKoKAABLAAAAswMAAIAAAADBBgAATQAAAB8NAABNAAAAUwQAAIAAAAAjCAAAUQAAAKYPAABUAAAAmQQAAIAAAABLCQAAVwAAALESAABYAAAA2gQAAIAAAABvCQAAXQAAACMUAABUAAAARQUAAIAAAABUCgAAagAAAIwUAABqAAAArwUAAIAAAAB2CQAAfAAAAE4QAAB8AAAA0gIAAIAAAABjBwAAkQAAAJAHAACSAAAAAAAAAAEAAAABAAAABQAAAA0AAAAdAAAAPQAAAH0AAAD9AAAA/QEAAP0DAAD9BwAA/Q8AAP0fAAD9PwAA/X8AAP3/AAD9/wEA/f8DAP3/BwD9/w8A/f8fAP3/PwD9/38A/f//AP3//wH9//8D/f//B/3//w/9//8f/f//P/3//38AAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACUAAAAnAAAAKQAAACsAAAAvAAAAMwAAADsAAABDAAAAUwAAAGMAAACDAAAAAwEAAAMCAAADBAAAAwgAAAMQAAADIAAAA0AAAAOAAAADAAEAQeAPC1EBAAAAAQAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAQcQQC4sBAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABIAAAAUAAAAFgAAABgAAAAcAAAAIAAAACgAAAAwAAAAQAAAAIAAAAAAAQAAAAIAAAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAAAAQBBkBIL5gQBAAAAAQAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAAAEAAAAEAAAACAAAAAAAAAABAAEBBgAAAAAAAAQAAAAAEAAABAAAAAAgAAAFAQAAAAAAAAUDAAAAAAAABQQAAAAAAAAFBgAAAAAAAAUHAAAAAAAABQkAAAAAAAAFCgAAAAAAAAUMAAAAAAAABg4AAAAAAAEFEAAAAAAAAQUUAAAAAAABBRYAAAAAAAIFHAAAAAAAAwUgAAAAAAAEBTAAAAAgAAYFQAAAAAAABwWAAAAAAAAIBgABAAAAAAoGAAQAAAAADAYAEAAAIAAABAAAAAAAAAAEAQAAAAAAAAUCAAAAIAAABQQAAAAAAAAFBQAAACAAAAUHAAAAAAAABQgAAAAgAAAFCgAAAAAAAAULAAAAAAAABg0AAAAgAAEFEAAAAAAAAQUSAAAAIAABBRYAAAAAAAIFGAAAACAAAwUgAAAAAAADBSgAAAAAAAYEQAAAABAABgRAAAAAIAAHBYAAAAAAAAkGAAIAAAAACwYACAAAMAAABAAAAAAQAAAEAQAAACAAAAUCAAAAIAAABQMAAAAgAAAFBQAAACAAAAUGAAAAIAAABQgAAAAgAAAFCQAAACAAAAULAAAAIAAABQwAAAAAAAAGDwAAACAAAQUSAAAAIAABBRQAAAAgAAIFGAAAACAAAgUcAAAAIAADBSgAAAAgAAQFMAAAAAAAEAYAAAEAAAAPBgCAAAAAAA4GAEAAAAAADQYAIABBgBcLhwIBAAEBBQAAAAAAAAUAAAAAAAAGBD0AAAAAAAkF/QEAAAAADwX9fwAAAAAVBf3/HwAAAAMFBQAAAAAABwR9AAAAAAAMBf0PAAAAABIF/f8DAAAAFwX9/38AAAAFBR0AAAAAAAgE/QAAAAAADgX9PwAAAAAUBf3/DwAAAAIFAQAAABAABwR9AAAAAAALBf0HAAAAABEF/f8BAAAAFgX9/z8AAAAEBQ0AAAAQAAgE/QAAAAAADQX9HwAAAAATBf3/BwAAAAEFAQAAABAABgQ9AAAAAAAKBf0DAAAAABAF/f8AAAAAHAX9//8PAAAbBf3//wcAABoF/f//AwAAGQX9//8BAAAYBf3//wBBkBkLhgQBAAEBBgAAAAAAAAYDAAAAAAAABAQAAAAgAAAFBQAAAAAAAAUGAAAAAAAABQgAAAAAAAAFCQAAAAAAAAULAAAAAAAABg0AAAAAAAAGEAAAAAAAAAYTAAAAAAAABhYAAAAAAAAGGQAAAAAAAAYcAAAAAAAABh8AAAAAAAAGIgAAAAAAAQYlAAAAAAABBikAAAAAAAIGLwAAAAAAAwY7AAAAAAAEBlMAAAAAAAcGgwAAAAAACQYDAgAAEAAABAQAAAAAAAAEBQAAACAAAAUGAAAAAAAABQcAAAAgAAAFCQAAAAAAAAUKAAAAAAAABgwAAAAAAAAGDwAAAAAAAAYSAAAAAAAABhUAAAAAAAAGGAAAAAAAAAYbAAAAAAAABh4AAAAAAAAGIQAAAAAAAQYjAAAAAAABBicAAAAAAAIGKwAAAAAAAwYzAAAAAAAEBkMAAAAAAAUGYwAAAAAACAYDAQAAIAAABAQAAAAwAAAEBAAAABAAAAQFAAAAIAAABQcAAAAgAAAFCAAAACAAAAUKAAAAIAAABQsAAAAAAAAGDgAAAAAAAAYRAAAAAAAABhQAAAAAAAAGFwAAAAAAAAYaAAAAAAAABh0AAAAAAAAGIAAAAAAAEAYDAAEAAAAPBgOAAAAAAA4GA0AAAAAADQYDIAAAAAAMBgMQAAAAAAsGAwgAAAAACgYDBABBpB0L2QEBAAAAAwAAAAcAAAAPAAAAHwAAAD8AAAB/AAAA/wAAAP8BAAD/AwAA/wcAAP8PAAD/HwAA/z8AAP9/AAD//wAA//8BAP//AwD//wcA//8PAP//HwD//z8A//9/AP///wD///8B////A////wf///8P////H////z////9/AAAAAAEAAAACAAAABAAAAAAAAAACAAAABAAAAAgAAAAAAAAAAQAAAAIAAAABAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAACAAAAAcAAAAIAAAACQAAAAoAAAALAEGgIAsDwBBQ"
vendor: 32,059 bytes, line 5517
5517;/*! https://mths.be/codepointat v0.2.0 by @mathias */String.prototype.codePointAt||function(){var t=function(){try{var n={},i=Object.defineProperty,r=i(n,n,n)&&i}catch{}return r}(),e=function(n){if(this==null)throw TypeError();var i=String(this),r=i.length,s=n?Number(n):0;if(s!=s&&(s=0),!(s<0||s>=r)){var o=i.charCodeAt(s),a;return o>=55296&&o<=56319&&r>s+1&&(a=i.charCodeAt(s+1),a>=56320&&a<=57343)?(o-55296)*1024+a-56320+65536:o}};t?t(String.prototype,"codePointAt",{value:e,configurable:!0,writable:!0}):String.prototype.codePointAt=e}();function WH(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}var Bfe=new WH,Dfe=new WH,$H=new Uint8Array(30),jH=new Uint16Array(30),Lfe=new Uint8Array(30),Nfe=new Uint16Array(30);function XH(t,e,n,i){var r,s;for(r=0;r<n;++r)t[r]=0;for(r=0;r<30-n;++r)t[r+n]=r/n|0;for(s=i,r=0;r<30;++r)e[r]=s,s+=1<<t[r]}function kfe(t,e){var n;for(n=0;n<7;++n)t.table[n]=0;for(t.table[7]=24,t.table[8]=152,t.table[9]=112,n=0;n<24;++n)t.trans[n]=256+n;for(n=0;n<144;++n)t.trans[24+n]=n;for(n=0;n<8;++n)t.trans[24+144+n]=280+n;for(n=0;n<112;++n)t.trans[24+144+8+n]=144+n;for(n=0;n<5;++n)e.table[n]=0;for(e.table[5]=32,n=0;n<32;++n)e.trans[n]=n}kfe(Bfe,Dfe);XH($H,jH,4,3);XH(Lfe,Nfe,2,1);$H[28]=0;jH[28]=258;function O3(t,e,n,i,r){return Math.pow(1-r,3)*t+3*Math.pow(1-r,2)*r*e+3*(1-r)*Math.pow(r,2)*n+Math.pow(r,3)*i}function sh(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}sh.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)};sh.prototype.addPoint=function(t,e){typeof t=="number"&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),t<this.x1&&(this.x1=t),t>this.x2&&(this.x2=t)),typeof e=="number"&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),e<this.y1&&(this.y1=e),e>this.y2&&(this.y2=e))};sh.prototype.addX=function(t){this.addPoint(t,null)};sh.prototype.addY=function(t){this.addPoint(null,t)};sh.prototype.addBezier=function(t,e,n,i,r,s,o,a){var l=[t,e],u=[n,i],c=[r,s],h=[o,a];this.addPoint(t,e),this.addPoint(o,a);for(var f=0;f<=1;f++){var m=6*l[f]-12*u[f]+6*c[f],g=-3*l[f]+9*u[f]-9*c[f]+3*h[f],v=3*u[f]-3*l[f];if(g===0){if(m===0)continue;var _=-v/m;0<_&&_<1&&(f===0&&this.addX(O3(l[f],u[f],c[f],h[f],_)),f===1&&this.addY(O3(l[f],u[f],c[f],h[f],_)));continue}var A=Math.pow(m,2)-4*v*g;if(!(A<0)){var y=(-m+Math.sqrt(A))/(2*g);0<y&&y<1&&(f===0&&this.addX(O3(l[f],u[f],c[f],h[f],y)),f===1&&this.addY(O3(l[f],u[f],c[f],h[f],y)));var q=(-m-Math.sqrt(A))/(2*g);0<q&&q<1&&(f===0&&this.addX(O3(l[f],u[f],c[f],h[f],q)),f===1&&this.addY(O3(l[f],u[f],c[f],h[f],q)))}}};sh.prototype.addQuad=function(t,e,n,i,r,s){var o=t+.6666666666666666*(n-t),a=e+2/3*(i-e),l=o+1/3*(r-t),u=a+1/3*(s-e);this.addBezier(t,e,o,a,l,u,r,s)};function Ki(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}Ki.prototype.moveTo=function(t,e){this.commands.push({type:"M",x:t,y:e})};Ki.prototype.lineTo=function(t,e){this.commands.push({type:"L",x:t,y:e})};Ki.prototype.curveTo=Ki.prototype.bezierCurveTo=function(t,e,n,i,r,s){this.commands.push({type:"C",x1:t,y1:e,x2:n,y2:i,x:r,y:s})};Ki.prototype.quadTo=Ki.prototype.quadraticCurveTo=function(t,e,n,i){this.commands.push({type:"Q",x1:t,y1:e,x:n,y:i})};Ki.prototype.close=Ki.prototype.closePath=function(){this.commands.push({type:"Z"})};Ki.prototype.extend=function(t){if(t.commands)t=t.commands;else if(t instanceof sh){var e=t;this.moveTo(e.x1,e.y1),this.lineTo(e.x2,e.y1),this.lineTo(e.x2,e.y2),this.lineTo(e.x1,e.y2),this.close();return}Array.prototype.push.apply(this.commands,t)};Ki.prototype.getBoundingBox=function(){for(var t=new sh,e=0,n=0,i=0,r=0,s=0;s<this.commands.length;s++){var o=this.commands[s];switch(o.type){case"M":t.addPoint(o.x,o.y),e=i=o.x,n=r=o.y;break;case"L":t.addPoint(o.x,o.y),i=o.x,r=o.y;break;case"Q":t.addQuad(i,r,o.x1,o.y1,o.x,o.y),i=o.x,r=o.y;break;case"C":t.addBezier(i,r,o.x1,o.y1,o.x2,o.y2,o.x,o.y),i=o.x,r=o.y;break;case"Z":i=e,r=n;break;default:throw new Error("Unexpected path command "+o.type)}}return t.isEmpty()&&t.addPoint(0,0),t};Ki.prototype.draw=function(t){t.beginPath();for(var e=0;e<this.commands.length;e+=1){var n=this.commands[e];n.type==="M"?t.moveTo(n.x,n.y):n.type==="L"?t.lineTo(n.x,n.y):n.type==="C"?t.bezierCurveTo(n.x1,n.y1,n.x2,n.y2,n.x,n.y):n.type==="Q"?t.quadraticCurveTo(n.x1,n.y1,n.x,n.y):n.type==="Z"&&t.closePath()}this.fill&&(t.fillStyle=this.fill,t.fill()),this.stroke&&(t.strokeStyle=this.stroke,t.lineWidth=this.strokeWidth,t.stroke())};Ki.prototype.toPathData=function(t){t=t!==void 0?t:2;function e(o){return Math.round(o)===o?""+Math.round(o):o.toFixed(t)}function n(){for(var o=arguments,a="",l=0;l<arguments.length;l+=1){var u=o[l];u>=0&&l>0&&(a+=" "),a+=e(u)}return a}for(var i="",r=0;r<this.commands.length;r+=1){var s=this.commands[r];s.type==="M"?i+="M"+n(s.x,s.y):s.type==="L"?i+="L"+n(s.x,s.y):s.type==="C"?i+="C"+n(s.x1,s.y1,s.x2,s.y2,s.x,s.y):s.type==="Q"?i+="Q"+n(s.x1,s.y1,s.x,s.y):s.type==="Z"&&(i+="Z")}return i};Ki.prototype.toSVG=function(t){var e='<path d="';return e+=this.toPathData(t),e+='"',this.fill&&this.fill!=="black"&&(this.fill===null?e+=' fill="none"':e+=' fill="'+this.fill+'"'),this.stroke&&(e+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),e+="/>",e};Ki.prototype.toDOMElement=function(t){var e=this.toPathData(t),n=document.createElementNS("http://www.w3.org/2000/svg","path");return n.setAttribute("d",e),n};function YH(t){throw new Error(t)}function QD(t,e){t||YH(e)}var Dt={fail:YH,argument:QD,assert:QD},HD=32768,WD=2147483648,p2={},Fe={},It={};function Ia(t){return function(){return t}}Fe.BYTE=function(t){return Dt.argument(t>=0&&t<=255,"Byte value should be between 0 and 255."),[t]};It.BYTE=Ia(1);Fe.CHAR=function(t){return[t.charCodeAt(0)]};It.CHAR=Ia(1);Fe.CHARARRAY=function(t){typeof t>"u"&&(t="",console.warn("Undefined CHARARRAY encountered and treated as an empty string. This is probably caused by a missing glyph name."));for(var e=[],n=0;n<t.length;n+=1)e[n]=t.charCodeAt(n);return e};It.CHARARRAY=function(t){return typeof t>"u"?0:t.length};Fe.USHORT=function(t){return[t>>8&255,t&255]};It.USHORT=Ia(2);Fe.SHORT=function(t){return t>=HD&&(t=-(2*HD-t)),[t>>8&255,t&255]};It.SHORT=Ia(2);Fe.UINT24=function(t){return[t>>16&255,t>>8&255,t&255]};It.UINT24=Ia(3);Fe.ULONG=function(t){return[t>>24&255,t>>16&255,t>>8&255,t&255]};It.ULONG=Ia(4);Fe.LONG=function(t){return t>=WD&&(t=-(2*WD-t)),[t>>24&255,t>>16&255,t>>8&255,t&255]};It.LONG=Ia(4);Fe.FIXED=Fe.ULONG;It.FIXED=It.ULONG;Fe.FWORD=Fe.SHORT;It.FWORD=It.SHORT;Fe.UFWORD=Fe.USHORT;It.UFWORD=It.USHORT;Fe.LONGDATETIME=function(t){return[0,0,0,0,t>>24&255,t>>16&255,t>>8&255,t&255]};It.LONGDATETIME=Ia(8);Fe.TAG=function(t){return Dt.argument(t.length===4,"Tag should be exactly 4 ASCII characters."),[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]};It.TAG=Ia(4);Fe.Card8=Fe.BYTE;It.Card8=It.BYTE;Fe.Card16=Fe.USHORT;It.Card16=It.USHORT;Fe.OffSize=Fe.BYTE;It.OffSize=It.BYTE;Fe.SID=Fe.USHORT;It.SID=It.USHORT;Fe.NUMBER=function(t){return t>=-107&&t<=107?[t+139]:t>=108&&t<=1131?(t=t-108,[(t>>8)+247,t&255]):t>=-1131&&t<=-108?(t=-t-108,[(t>>8)+251,t&255]):t>=-32768&&t<=32767?Fe.NUMBER16(t):Fe.NUMBER32(t)};It.NUMBER=function(t){return Fe.NUMBER(t).length};Fe.NUMBER16=function(t){return[28,t>>8&255,t&255]};It.NUMBER16=Ia(3);Fe.NUMBER32=function(t){return[29,t>>24&255,t>>16&255,t>>8&255,t&255]};It.NUMBER32=Ia(5);Fe.REAL=function(t){var e=t.toString(),n=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(e);if(n){var i=parseFloat("1e"+((n[2]?+n[2]:0)+n[1].length));e=(Math.round(t*i)/i).toString()}for(var r="",s=0,o=e.length;s<o;s+=1){var a=e[s];a==="e"?r+=e[++s]==="-"?"c":"b":a==="."?r+="a":a==="-"?r+="e":r+=a}r+=r.length&1?"f":"ff";for(var l=[30],u=0,c=r.length;u<c;u+=2)l.push(parseInt(r.substr(u,2),16));return l};It.REAL=function(t){return Fe.REAL(t).length};Fe.NAME=Fe.CHARARRAY;It.NAME=It.CHARARRAY;Fe.STRING=Fe.CHARARRAY;It.STRING=It.CHARARRAY;p2.UTF8=function(t,e,n){for(var i=[],r=n,s=0;s<r;s++,e+=1)i[s]=t.getUint8(e);return String.fromCharCode.apply(null,i)};p2.UTF16=function(t,e,n){for(var i=[],r=n/2,s=0;s<r;s++,e+=2)i[s]=t.getUint16(e);return String.fromCharCode.apply(null,i)};Fe.UTF16=function(t){for(var e=[],n=0;n<t.length;n+=1){var i=t.charCodeAt(n);e[e.length]=i>>8&255,e[e.length]=i&255}return e};It.UTF16=function(t){return t.length*2};var VE={"x-mac-croatian":"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûüâ °¢£§â¢Â¶Ã®Šâ¢Â´Â¨â ŽÃâ±â¤â¥âµâââÅ¡â«ÂªÂºÎ©Å¾Ã¸Â¿Â¡Â¬âÆâÄ«Äâ¦Â ÃÃÃÅÅÄâââââ÷â©ââ¬â¹âºÃ»â·âââ°ÃÄÃÄÃÃÃÃÃÃÃÄÃÃÃÃıË˯ÏÃË¸ÃæË","x-mac-cyrillic":"ÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐРСТУФХЦЧШЩЪЫЬÐЮЯâ °Ò£§â¢Â¶Ð®©â¢ÐÑâ ÐÑâ±â¤â¥ÑµÒÐÐÑÐÑÐÑÐÑÑÐ
¬âÆââ«»â¦Â ÐÑÐÑÑââââââ÷âÐÑÐÑâÐÑÑабвгдежзийклмнопÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑ","x-mac-gaelic":"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûüâ °¢£§â¢Â¶Ã®©â¢Â´Â¨â ÃÃá¸Â±â¤â¥á¸ÄÄá¸á¸á¸á¸Ä Ä¡á¹Ã¦Ã¸á¹á¹á¹É¼ÆÅ¿á¹ «»â¦Â ÃÃÃÅÅââââââṡáºÃ¿Å¸á¹ªâ¬â¹âºÅ¶Å·á¹«Â·á»²á»³âÃÃÃÃÃÃÃÃÃÃÃâ£ÃÃÃÃıÃýŴŵáºáº
áºáºáºáº","x-mac-greek":"ù²Ã³ÃÃÎ
à âäΨçéèêë£â¢Ã®Ã¯â¢Â½â°Ã´Ã¶Â¦â¬Ã¹Ã»Ã¼â ÎÎÎÎÎΠî©ΣΪ§â °·Î±â¤â¥Â¥ÎÎÎÎÎÎÎΦΫΨΩάάÎΡâΤ«»â¦Â ΥΧÎÎÅââââââ÷ÎÎÎÎÎήίÏÎÏαβÏδεÏγηιξκλμνοÏÏÏÏÏθÏÏÏÏ
ζÏÏÎΰÂ","x-mac-icelandic":"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûü𢣧â¢Â¶Ã®©â¢Â´Â¨â ÃÃâ±â¤â¥Â¥ÂµâââÏâ«ÂªÂºÎ©Ã¦Ã¸Â¿Â¡Â¬âÆââ«»â¦Â ÃÃÃÅÅââââââ÷âÿŸââ¬ÃðÃþý·âââ°ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃıË˯ËË˸ËËË","x-mac-inuit":"ááá
áááá±á²á³á´á¸á¹áááááááá¦áá®á¯á°á²á³ááááááá°á¡á¥á¦â¢Â¶á§Â®Â©â¢á¨áªá«á»áááá
áááá¯á°á±á²á´áµá
áááááááªá¨á©áªá«áâ¦Â á®á¾áááââââââáááááááááááá¿áááááá
áááááááá±á²á³á´áµá¶áá á¡á¢á£á¤á¥á¦á¼ÅÅ","x-mac-ce":"ÃÄÄÃÄÃÃáÄ
ÄäÄÄÄ鏟ÄÃÄÄÄÄóÄôöõúÄÄüâ °Ä£§â¢Â¶Ã®©â¢Ä¨â ģĮįĪâ¤â¥Ä«Ä¶ââÅĻļĽľĹĺÅ
ÅŬâÅÅâ«»â¦Â ÅÅÃÅÅââââââ÷âÅÅÅÅâ¹âºÅÅÅÅ ââÅ¡ÅÅÃŤťÃŽžŪÃÃūŮÃůŰűŲųÃýķŻÅżĢË",macintosh:"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûüâ °¢£§â¢Â¶Ã®©â¢Â´Â¨â ÃÃâ±â¤â¥Â¥ÂµâââÏâ«ÂªÂºÎ©Ã¦Ã¸Â¿Â¡Â¬âÆââ«»â¦Â ÃÃÃÅÅââââââ÷âÿŸââ¬â¹âºï¬ï¬â¡Â·âââ°ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃıË˯ËË˸ËËË","x-mac-romanian":"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûüâ °¢£§â¢Â¶Ã®©â¢Â´Â¨â ÄÈâ±â¤â¥Â¥ÂµâââÏâ«ÂªÂºÎ©ÄÈ¿¡¬âÆââ«»â¦Â ÃÃÃÅÅââââââ÷âÿŸââ¬â¹âºÈÈâ¡Â·âââ°ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃıË˯ËË˸ËËË","x-mac-turkish":"ÃÃ
ÃÃÃÃÃáà âäãåçéèêëÃìîïñóòôöõúùûüâ °¢£§â¢Â¶Ã®©â¢Â´Â¨â ÃÃâ±â¤â¥Â¥ÂµâââÏâ«ÂªÂºÎ©Ã¦Ã¸Â¿Â¡Â¬âÆââ«»â¦Â ÃÃÃÅÅââââââ÷âÿŸÄÄİıÅÅâ¡Â·âââ°ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃï¢ Ë˯ËË˸ËËË"};p2.MACSTRING=function(t,e,n,i){var r=VE[i];if(r!==void 0){for(var s="",o=0;o<n;o++){var a=t.getUint8(e+o);a<=127?s+=String.fromCharCode(a):s+=r[a&127]}return s}};var Q7=typeof WeakMap=="function"&&new WeakMap,H7,Ffe=function(t){if(!H7){H7={};for(var e in VE)H7[e]=new String(e)}var n=H7[t];if(n!==void 0){if(Q7){var i=Q7.get(n);if(i!==void 0)return i}var r=VE[t];if(r!==void 0){for(var s={},o=0;o<r.length;o++)s[r.charCodeAt(o)]=o+128;return Q7&&Q7.set(n,s),s}}};Fe.MACSTRING=function(t,e){var n=Ffe(e);if(n!==void 0){for(var i=[],r=0;r<t.length;r++){var s=t.charCodeAt(r);if(s>=128&&(s=n[s],s===void 0))return;i[r]=s}return i}};It.MACSTRING=function(t,e){var n=Fe.MACSTRING(t,e);return n!==void 0?n.length:0};function GE(t){return t>=-128&&t<=127}function Ofe(t,e,n){for(var i=0,r=t.length;e<r&&i<64&&t[e]===0;)++e,++i;return n.push(128|i-1),e}function Ufe(t,e,n){for(var i=0,r=t.length,s=e;s<r&&i<64;){var o=t[s];if(!GE(o)||o===0&&s+1<r&&t[s+1]===0)break;++s,++i}n.push(i-1);for(var a=e;a<s;++a)n.push(t[a]+256&255);return s}function zfe(t,e,n){for(var i=0,r=t.length,s=e;s<r&&i<64;){var o=t[s];if(o===0||GE(o)&&s+1<r&&GE(t[s+1]))break;++s,++i}n.push(64|i-1);for(var a=e;a<s;++a){var l=t[a];n.push(l+65536>>8&255,l+256&255)}return s}Fe.VARDELTAS=function(t){for(var e=0,n=[];e<t.length;){var i=t[e];i===0?e=Ofe(t,e,n):i>=-128&&i<=127?e=Ufe(t,e,n):e=zfe(t,e,n)}return n};Fe.INDEX=function(t){for(var e=1,n=[e],i=[],r=0;r<t.length;r+=1){var s=Fe.OBJECT(t[r]);Array.prototype.push.apply(i,s),e+=s.length,n.push(e)}if(i.length===0)return[0,0];for(var o=[],a=1+Math.floor(Math.log(e)/Math.log(2))/8|0,l=[void 0,Fe.BYTE,Fe.USHORT,Fe.UINT24,Fe.ULONG][a],u=0;u<n.length;u+=1){var c=l(n[u]);Array.prototype.push.apply(o,c)}return Array.prototype.concat(Fe.Card16(t.length),Fe.OffSize(a),o,i)};It.INDEX=function(t){return Fe.INDEX(t).length};Fe.DICT=function(t){for(var e=[],n=Object.keys(t),i=n.length,r=0;r<i;r+=1){var s=parseInt(n[r],0),o=t[s];e=e.concat(Fe.OPERAND(o.value,o.type)),e=e.concat(Fe.OPERATOR(s))}return e};It.DICT=function(t){return Fe.DICT(t).length};Fe.OPERATOR=function(t){return t<1200?[t]:[12,t-1200]};Fe.OPERAND=function(t,e){var n=[];if(Array.isArray(e))for(var i=0;i<e.length;i+=1)Dt.argument(t.length===e.length,"Not enough arguments given for type"+e),n=n.concat(Fe.OPERAND(t[i],e[i]));else if(e==="SID")n=n.concat(Fe.NUMBER(t));else if(e==="offset")n=n.concat(Fe.NUMBER32(t));else if(e==="number")n=n.concat(Fe.NUMBER(t));else if(e==="real")n=n.concat(Fe.REAL(t));else throw new Error("Unknown operand type "+e);return n};Fe.OP=Fe.BYTE;It.OP=It.BYTE;var W7=typeof WeakMap=="function"&&new WeakMap;Fe.CHARSTRING=function(t){if(W7){var e=W7.get(t);if(e!==void 0)return e}for(var n=[],i=t.length,r=0;r<i;r+=1){var s=t[r];n=n.concat(Fe[s.type](s.value))}return W7&&W7.set(t,n),n};It.CHARSTRING=function(t){return Fe.CHARSTRING(t).length};Fe.OBJECT=function(t){var e=Fe[t.type];return Dt.argument(e!==void 0,"No encoding function for type "+t.type),e(t.value)};It.OBJECT=function(t){var e=It[t.type];return Dt.argument(e!==void 0,"No sizeOf function for type "+t.type),e(t.value)};Fe.TABLE=function(t){for(var e=[],n=t.fields.length,i=[],r=[],s=0;s<n;s+=1){var o=t.fields[s],a=Fe[o.type];Dt.argument(a!==void 0,"No encoding function for field type "+o.type+" ("+o.name+")");var l=t[o.name];l===void 0&&(l=o.value);var u=a(l);o.type==="TABLE"?(r.push(e.length),e=e.concat([0,0]),i.push(u)):e=e.concat(u)}for(var c=0;c<i.length;c+=1){var h=r[c],f=e.length;Dt.argument(f<65536,"Table "+t.tableName+" too big."),e[h]=f>>8,e[h+1]=f&255,e=e.concat(i[c])}return e};It.TABLE=function(t){for(var e=0,n=t.fields.length,i=0;i<n;i+=1){var r=t.fields[i],s=It[r.type];Dt.argument(s!==void 0,"No sizeOf function for field type "+r.type+" ("+r.name+")");var o=t[r.name];o===void 0&&(o=r.value),e+=s(o),r.type==="TABLE"&&(e+=2)}return e};Fe.RECORD=Fe.TABLE;It.RECORD=It.TABLE;Fe.LITERAL=function(t){return t};It.LITERAL=function(t){return t.length};function sr(t,e,n){if(e.length&&(e[0].name!=="coverageFormat"||e[0].value===1))for(var i=0;i<e.length;i+=1){var r=e[i];this[r.name]=r.value}if(this.tableName=t,this.fields=e,n)for(var s=Object.keys(n),o=0;o<s.length;o+=1){var a=s[o],l=n[a];this[a]!==void 0&&(this[a]=l)}}sr.prototype.encode=function(){return Fe.TABLE(this)};sr.prototype.sizeOf=function(){return It.TABLE(this)};function d4(t,e,n){n===void 0&&(n=e.length);var i=new Array(e.length+1);i[0]={name:t+"Count",type:"USHORT",value:n};for(var r=0;r<e.length;r++)i[r+1]={name:t+r,type:"USHORT",value:e[r]};return i}function QE(t,e,n){var i=e.length,r=new Array(i+1);r[0]={name:t+"Count",type:"USHORT",value:i};for(var s=0;s<i;s++)r[s+1]={name:t+s,type:"TABLE",value:n(e[s],s)};return r}function p4(t,e,n){var i=e.length,r=[];r[0]={name:t+"Count",type:"USHORT",value:i};for(var s=0;s<i;s++)r=r.concat(n(e[s],s));return r}function Qm(t){t.format===1?sr.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(d4("glyph",t.glyphs))):t.format===2?sr.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(p4("rangeRecord",t.ranges,function(e){return[{name:"startGlyphID",type:"USHORT",value:e.start},{name:"endGlyphID",type:"USHORT",value:e.end},{name:"startCoverageIndex",type:"USHORT",value:e.index}]}))):Dt.assert(!1,"Coverage format must be 1 or 2.")}Qm.prototype=Object.create(sr.prototype);Qm.prototype.constructor=Qm;function Hm(t){sr.call(this,"scriptListTable",p4("scriptRecord",t,function(e,n){var i=e.script,r=i.defaultLangSys;return Dt.assert(!!r,"Unable to write GSUB: script "+e.tag+" has no default language system."),[{name:"scriptTag"+n,type:"TAG",value:e.tag},{name:"script"+n,type:"TABLE",value:new sr("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new sr("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:r.reqFeatureIndex}].concat(d4("featureIndex",r.featureIndexes)))}].concat(p4("langSys",i.langSysRecords,function(s,o){var a=s.langSys;return[{name:"langSysTag"+o,type:"TAG",value:s.tag},{name:"langSys"+o,type:"TABLE",value:new sr("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:a.reqFeatureIndex}].concat(d4("featureIndex",a.featureIndexes)))}]})))}]}))}Hm.prototype=Object.create(sr.prototype);Hm.prototype.constructor=Hm;function Wm(t){sr.call(this,"featureListTable",p4("featureRecord",t,function(e,n){var i=e.feature;return[{name:"featureTag"+n,type:"TAG",value:e.tag},{name:"feature"+n,type:"TABLE",value:new sr("featureTable",[{name:"featureParams",type:"USHORT",value:i.featureParams}].concat(d4("lookupListIndex",i.lookupListIndexes)))}]}))}Wm.prototype=Object.create(sr.prototype);Wm.prototype.constructor=Wm;function $m(t,e){sr.call(this,"lookupListTable",QE("lookup",t,function(n){var i=e[n.lookupType];return Dt.assert(!!i,"Unable to write GSUB lookup type "+n.lookupType+" tables."),new sr("lookupTable",[{name:"lookupType",type:"USHORT",value:n.lookupType},{name:"lookupFlag",type:"USHORT",value:n.lookupFlag}].concat(QE("subtable",n.subtables,i)))}))}$m.prototype=Object.create(sr.prototype);$m.prototype.constructor=$m;var et={Table:sr,Record:sr,Coverage:Qm,ScriptList:Hm,FeatureList:Wm,LookupList:$m,ushortList:d4,tableList:QE,recordList:p4};function $D(t,e){return t.getUint8(e)}function jm(t,e){return t.getUint16(e,!1)}function Vfe(t,e){return t.getInt16(e,!1)}function Pw(t,e){return t.getUint32(e,!1)}function KH(t,e){var n=t.getInt16(e,!1),i=t.getUint16(e+2,!1);return n+i/65535}function Gfe(t,e){for(var n="",i=e;i<e+4;i+=1)n+=String.fromCharCode(t.getInt8(i));return n}function Qfe(t,e,n){for(var i=0,r=0;r<n;r+=1)i<<=8,i+=t.getUint8(e+r);return i}function Hfe(t,e,n){for(var i=[],r=e;r<n;r+=1)i.push(t.getUint8(r));return i}function Wfe(t){for(var e="",n=0;n<t.length;n+=1)e+=String.fromCharCode(t[n]);return e}var $fe={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function fe(t,e){this.data=t,this.offset=e,this.relativeOffset=0}fe.prototype.parseByte=function(){var t=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t};fe.prototype.parseChar=function(){var t=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t};fe.prototype.parseCard8=fe.prototype.parseByte;fe.prototype.parseUShort=function(){var t=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t};fe.prototype.parseCard16=fe.prototype.parseUShort;fe.prototype.parseSID=fe.prototype.parseUShort;fe.prototype.parseOffset16=fe.prototype.parseUShort;fe.prototype.parseShort=function(){var t=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t};fe.prototype.parseF2Dot14=function(){var t=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,t};fe.prototype.parseULong=function(){var t=Pw(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t};fe.prototype.parseOffset32=fe.prototype.parseULong;fe.prototype.parseFixed=function(){var t=KH(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t};fe.prototype.parseString=function(t){var e=this.data,n=this.offset+this.relativeOffset,i="";this.relativeOffset+=t;for(var r=0;r<t;r++)i+=String.fromCharCode(e.getUint8(n+r));return i};fe.prototype.parseTag=function(){return this.parseString(4)};fe.prototype.parseLongDateTime=function(){var t=Pw(this.data,this.offset+this.relativeOffset+4);return t-=2082844800,this.relativeOffset+=8,t};fe.prototype.parseVersion=function(t){var e=jm(this.data,this.offset+this.relativeOffset),n=jm(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,t===void 0&&(t=4096),e+n/t/10};fe.prototype.skip=function(t,e){e===void 0&&(e=1),this.relativeOffset+=$fe[t]*e};fe.prototype.parseULongList=function(t){t===void 0&&(t=this.parseULong());for(var e=new Array(t),n=this.data,i=this.offset+this.relativeOffset,r=0;r<t;r++)e[r]=n.getUint32(i),i+=4;return this.relativeOffset+=t*4,e};fe.prototype.parseOffset16List=fe.prototype.parseUShortList=function(t){t===void 0&&(t=this.parseUShort());for(var e=new Array(t),n=this.data,i=this.offset+this.relativeOffset,r=0;r<t;r++)e[r]=n.getUint16(i),i+=2;return this.relativeOffset+=t*2,e};fe.prototype.parseShortList=function(t){for(var e=new Array(t),n=this.data,i=this.offset+this.relativeOffset,r=0;r<t;r++)e[r]=n.getInt16(i),i+=2;return this.relativeOffset+=t*2,e};fe.prototype.parseByteList=function(t){for(var e=new Array(t),n=this.data,i=this.offset+this.relativeOffset,r=0;r<t;r++)e[r]=n.getUint8(i++);return this.relativeOffset+=t,e};fe.prototype.parseList=function(t,e){e||(e=t,t=this.parseUShort());for(var n=new Array(t),i=0;i<t;i++)n[i]=e.call(this);return n};fe.prototype.parseList32=function(t,e){e||(e=t,t=this.parseULong());for(var n=new Array(t),i=0;i<t;i++)n[i]=e.call(this);return n};fe.prototype.parseRecordList=function(t,e){e||(e=t,t=this.parseUShort());for(var n=new Array(t),i=Object.keys(e),r=0;r<t;r++){for(var s={},o=0;o<i.length;o++){var a=i[o],l=e[a];s[a]=l.call(this)}n[r]=s}return n};fe.prototype.parseRecordList32=function(t,e){e||(e=t,t=this.parseULong());for(var n=new Array(t),i=Object.keys(e),r=0;r<t;r++){for(var s={},o=0;o<i.length;o++){var a=i[o],l=e[a];s[a]=l.call(this)}n[r]=s}return n};fe.prototype.parseStruct=function(t){if(typeof t=="function")return t.call(this);for(var e=Object.keys(t),n={},i=0;i<e.length;i++){var r=e[i],s=t[r];n[r]=s.call(this)}return n};fe.prototype.parseValueRecord=function(t){if(t===void 0&&(t=this.parseUShort()),t!==0){var e={};return t&1&&(e.xPlacement=this.parseShort()),t&2&&(e.yPlacement=this.parseShort()),t&4&&(e.xAdvance=this.parseShort()),t&8&&(e.yAdvance=this.parseShort()),t&16&&(e.xPlaDevice=void 0,this.parseShort()),t&32&&(e.yPlaDevice=void 0,this.parseShort()),t&64&&(e.xAdvDevice=void 0,this.parseShort()),t&128&&(e.yAdvDevice=void 0,this.parseShort()),e}};fe.prototype.parseValueRecordList=function(){for(var t=this.parseUShort(),e=this.parseUShort(),n=new Array(e),i=0;i<e;i++)n[i]=this.parseValueRecord(t);return n};fe.prototype.parsePointer=function(t){var e=this.parseOffset16();if(e>0)return new fe(this.data,this.offset+e).parseStruct(t)};fe.prototype.parsePointer32=function(t){var e=this.parseOffset32();if(e>0)return new fe(this.data,this.offset+e).parseStruct(t)};fe.prototype.parseListOfLists=function(t){for(var e=this.parseOffset16List(),n=e.length,i=this.relativeOffset,r=new Array(n),s=0;s<n;s++){var o=e[s];if(o===0){r[s]=void 0;continue}if(this.relativeOffset=o,t){for(var a=this.parseOffset16List(),l=new Array(a.length),u=0;u<a.length;u++)this.relativeOffset=o+a[u],l[u]=t.call(this);r[s]=l}else r[s]=this.parseUShortList()}return this.relativeOffset=i,r};fe.prototype.parseCoverage=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort(),n=this.parseUShort();if(e===1)return{format:1,glyphs:this.parseUShortList(n)};if(e===2){for(var i=new Array(n),r=0;r<n;r++)i[r]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:i}}throw new Error("0x"+t.toString(16)+": Coverage format must be 1 or 2.")};fe.prototype.parseClassDef=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()};if(e===2)return{format:2,ranges:this.parseRecordList({start:fe.uShort,end:fe.uShort,classId:fe.uShort})};throw new Error("0x"+t.toString(16)+": ClassDef format must be 1 or 2.")};fe.list=function(t,e){return function(){return this.parseList(t,e)}};fe.list32=function(t,e){return function(){return this.parseList32(t,e)}};fe.recordList=function(t,e){return function(){return this.parseRecordList(t,e)}};fe.recordList32=function(t,e){return function(){return this.parseRecordList32(t,e)}};fe.pointer=function(t){return function(){return this.parsePointer(t)}};fe.pointer32=function(t){return function(){return this.parsePointer32(t)}};fe.tag=fe.prototype.parseTag;fe.byte=fe.prototype.parseByte;fe.uShort=fe.offset16=fe.prototype.parseUShort;fe.uShortList=fe.prototype.parseUShortList;fe.uLong=fe.offset32=fe.prototype.parseULong;fe.uLongList=fe.prototype.parseULongList;fe.struct=fe.prototype.parseStruct;fe.coverage=fe.prototype.parseCoverage;fe.classDef=fe.prototype.parseClassDef;var jD={reserved:fe.uShort,reqFeatureIndex:fe.uShort,featureIndexes:fe.uShortList};fe.prototype.parseScriptList=function(){return this.parsePointer(fe.recordList({tag:fe.tag,script:fe.pointer({defaultLangSys:fe.pointer(jD),langSysRecords:fe.recordList({tag:fe.tag,langSys:fe.pointer(jD)})})}))||[]};fe.prototype.parseFeatureList=function(){return this.parsePointer(fe.recordList({tag:fe.tag,feature:fe.pointer({featureParams:fe.offset16,lookupListIndexes:fe.uShortList})}))||[]};fe.prototype.parseLookupList=function(t){return this.parsePointer(fe.list(fe.pointer(function(){var e=this.parseUShort();Dt.argument(1<=e&&e<=9,"GPOS/GSUB lookup type "+e+" unknown.");var n=this.parseUShort(),i=n&16;return{lookupType:e,lookupFlag:n,subtables:this.parseList(fe.pointer(t[e])),markFilteringSet:i?this.parseUShort():void 0}})))||[]};fe.prototype.parseFeatureVariationsList=function(){return this.parsePointer32(function(){var t=this.parseUShort(),e=this.parseUShort();Dt.argument(t===1&&e<1,"GPOS/GSUB feature variations table unknown.");var n=this.parseRecordList32({conditionSetOffset:fe.offset32,featureTableSubstitutionOffset:fe.offset32});return n})||[]};var Ut={getByte:$D,getCard8:$D,getUShort:jm,getCard16:jm,getShort:Vfe,getULong:Pw,getFixed:KH,getTag:Gfe,getOffset:Qfe,getBytes:Hfe,bytesToString:Wfe,Parser:fe};function jfe(t,e){e.parseUShort(),t.length=e.parseULong(),t.language=e.parseULong();var n;t.groupCount=n=e.parseULong(),t.glyphIndexMap={};for(var i=0;i<n;i+=1)for(var r=e.parseULong(),s=e.parseULong(),o=e.parseULong(),a=r;a<=s;a+=1)t.glyphIndexMap[a]=o,o++}function Xfe(t,e,n,i,r){t.length=e.parseUShort(),t.language=e.parseUShort();var s;t.segCount=s=e.parseUShort()>>1,e.skip("uShort",3),t.glyphIndexMap={};for(var o=new Ut.Parser(n,i+r+14),a=new Ut.Parser(n,i+r+16+s*2),l=new Ut.Parser(n,i+r+16+s*4),u=new Ut.Parser(n,i+r+16+s*6),c=i+r+16+s*8,h=0;h<s-1;h+=1)for(var f=void 0,m=o.parseUShort(),g=a.parseUShort(),v=l.parseShort(),_=u.parseUShort(),A=g;A<=m;A+=1)_!==0?(c=u.offset+u.relativeOffset-2,c+=_,c+=(A-g)*2,f=Ut.getUShort(n,c),f!==0&&(f=f+v&65535)):f=A+v&65535,t.glyphIndexMap[A]=f}function Yfe(t,e){var n={};n.version=Ut.getUShort(t,e),Dt.argument(n.version===0,"cmap table version should be 0."),n.numTables=Ut.getUShort(t,e+2);for(var i=-1,r=n.numTables-1;r>=0;r-=1){var s=Ut.getUShort(t,e+4+r*8),o=Ut.getUShort(t,e+4+r*8+2);if(s===3&&(o===0||o===1||o===10)||s===0&&(o===0||o===1||o===2||o===3||o===4)){i=Ut.getULong(t,e+4+r*8+4);break}}if(i===-1)throw new Error("No valid cmap sub-tables found.");var a=new Ut.Parser(t,e+i);if(n.format=a.parseUShort(),n.format===12)jfe(n,a);else if(n.format===4)Xfe(n,a,t,e,i);else throw new Error("Only format 4 and 12 cmap tables are supported (found format "+n.format+").");return n}function Kfe(t,e,n){t.segments.push({end:e,start:e,delta:-(e-n),offset:0,glyphIndex:n})}function Jfe(t){t.segments.push({end:65535,start:65535,delta:1,offset:0})}function Zfe(t){var e=!0,n;for(n=t.length-1;n>0;n-=1){var i=t.get(n);if(i.unicode>65535){console.log("Adding CMAP format 12 (needed!)"),e=!1;break}}var r=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:e?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:e?12:12+8}];e||(r=r.concat([{name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}])),r=r.concat([{name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);var s=new et.Table("cmap",r);for(s.segments=[],n=0;n<t.length;n+=1){for(var o=t.get(n),a=0;a<o.unicodes.length;a+=1)Kfe(s,o.unicodes[a],n);s.segments=s.segments.sort(function(y,q){return y.start-q.start})}Jfe(s);var l=s.segments.length,u=0,c=[],h=[],f=[],m=[],g=[],v=[];for(n=0;n<l;n+=1){var _=s.segments[n];_.end<=65535&&_.start<=65535?(c=c.concat({name:"end_"+n,type:"USHORT",value:_.end}),h=h.concat({name:"start_"+n,type:"USHORT",value:_.start}),f=f.concat({name:"idDelta_"+n,type:"SHORT",value:_.delta}),m=m.concat({name:"idRangeOffset_"+n,type:"USHORT",value:_.offset}),_.glyphId!==void 0&&(g=g.concat({name:"glyph_"+n,type:"USHORT",value:_.glyphId}))):u+=1,!e&&_.glyphIndex!==void 0&&(v=v.concat({name:"cmap12Start_"+n,type:"ULONG",value:_.start}),v=v.concat({name:"cmap12End_"+n,type:"ULONG",value:_.end}),v=v.concat({name:"cmap12Glyph_"+n,type:"ULONG",value:_.glyphIndex}))}if(s.segCountX2=(l-u)*2,s.searchRange=Math.pow(2,Math.floor(Math.log(l-u)/Math.log(2)))*2,s.entrySelector=Math.log(s.searchRange/2)/Math.log(2),s.rangeShift=s.segCountX2-s.searchRange,s.fields=s.fields.concat(c),s.fields.push({name:"reservedPad",type:"USHORT",value:0}),s.fields=s.fields.concat(h),s.fields=s.fields.concat(f),s.fields=s.fields.concat(m),s.fields=s.fields.concat(g),s.cmap4Length=14+c.length*2+2+h.length*2+f.length*2+m.length*2+g.length*2,!e){var A=16+v.length*4;s.cmap12Offset=12+2*2+4+s.cmap4Length,s.fields=s.fields.concat([{name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:A},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:v.length/3}]),s.fields=s.fields.concat(v)}return s}var e5e={parse:Yfe,make:Zfe},B8=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodce
5517ntered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],t5e=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","end
5517ash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],n5e=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],XD=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslas
5517h","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function JH(t){this.font=t}JH.prototype.charToGlyphIndex=function(t){var e=t.codePointAt(0),n=this.font.glyphs;if(n){for(var i=0;i<n.length;i+=1)for(var r=n.get(i),s=0;s<r.unicodes.length;s+=1)if(r.unicodes[s]===e)return i}return null};function Xm(t,e){this.encoding=t,this.charset=e}Xm.prototype.charToGlyphIndex=function(t){var e=t.codePointAt(0),n=this.encoding[e];return this.charset.indexOf(n)};function i5e(t,e,n,i,r){t.beginPath(),t.moveTo(e,n),t.lineTo(i,r),t.stroke()}var Rh={line:i5e};function r5e(t,e){var n=e||new Ki;return{configurable:!0,get:function(){return typeof n=="function"&&(n=n()),n},set:function(i){n=i}}}function Xo(t){this.bindConstructorValues(t)}Xo.prototype.bindConstructorValues=function(t){this.index=t.index||0,this.name=t.name||null,this.unicode=t.unicode||void 0,this.unicodes=t.unicodes||t.unicode!==void 0?[t.unicode]:[],"xMin"in t&&(this.xMin=t.xMin),"yMin"in t&&(this.yMin=t.yMin),"xMax"in t&&(this.xMax=t.xMax),"yMax"in t&&(this.yMax=t.yMax),"advanceWidth"in t&&(this.advanceWidth=t.advanceWidth),Object.defineProperty(this,"path",r5e(this,t.path))};Xo.prototype.addUnicode=function(t){this.unicodes.length===0&&(this.unicode=t),this.unicodes.push(t)};Xo.prototype.getBoundingBox=function(){return this.path.getBoundingBox()};Xo.prototype.getPath=function(t,e,n,i,r){t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:72;var s,o;i||(i={});var a=i.xScale,l=i.yScale;if(i.hinting&&r&&r.hinting&&(o=this.path&&r.hinting.exec(this,n)),o)s=r.hinting.getCommands(o),t=Math.round(t),e=Math.round(e),a=l=1;else{s=this.path.commands;var u=1/(this.path.unitsPerEm||1e3)*n;a===void 0&&(a=u),l===void 0&&(l=u)}for(var c=new Ki,h=0;h<s.length;h+=1){var f=s[h];f.type==="M"?c.moveTo(t+f.x*a,e+-f.y*l):f.type==="L"?c.lineTo(t+f.x*a,e+-f.y*l):f.type==="Q"?c.quadraticCurveTo(t+f.x1*a,e+-f.y1*l,t+f.x*a,e+-f.y*l):f.type==="C"?c.curveTo(t+f.x1*a,e+-f.y1*l,t+f.x2*a,e+-f.y2*l,t+f.x*a,e+-f.y*l):f.type==="Z"&&c.closePath()}return c};Xo.prototype.getContours=function(){if(this.points===void 0)return[];for(var t=[],e=[],n=0;n<this.points.length;n+=1){var i=this.points[n];e.push(i),i.lastPointOfContour&&(t.push(e),e=[])}return Dt.argument(e.length===0,"There are still points left in the current contour."),t};Xo.prototype.getMetrics=function(){for(var t=this.path.commands,e=[],n=[],i=0;i<t.length;i+=1){var r=t[i];r.type!=="Z"&&(e.push(r.x),n.push(r.y)),(r.type==="Q"||r.type==="C")&&(e.push(r.x1),n.push(r.y1)),r.type==="C"&&(e.push(r.x2),n.push(r.y2))}var s={xMin:Math.min.apply(null,e),yMin:Math.min.apply(null,n),xMax:Math.max.apply(null,e),yMax:Math.max.apply(null,n),leftSideBearing:this.leftSideBearing};return isFinite(s.xMin)||(s.xMin=0),isFinite(s.xMax)||(s.xMax=this.advanceWidth),isFinite(s.yMin)||(s.yMin=0),isFinite(s.yMax)||(s.yMax=0),s.rightSideBearing=this.advanceWidth-s.leftSideBearing-(s.xMax-s.xMin),s};Xo.prototype.draw=function(t,e,n,i,r){this.getPath(e,n,i,r).draw(t)};Xo.prototype.drawPoints=function(t,e,n,i){function r(h,f,m,g){t.beginPath();for(var v=0;v<h.length;v+=1)t.moveTo(f+h[v].x*g,m+h[v].y*g),t.arc(f+h[v].x*g,m+h[v].y*g,2,0,Math.PI*2,!1);t.closePath(),t.fill()}e=e!==void 0?e:0,n=n!==void 0?n:0,i=i!==void 0?i:24;for(var s=1/this.path.unitsPerEm*i,o=[],a=[],l=this.path,u=0;u<l.commands.length;u+=1){var c=l.commands[u];c.x!==void 0&&o.push({x:c.x,y:-c.y}),c.x1!==void 0&&a.push({x:c.x1,y:-c.y1}),c.x2!==void 0&&a.push({x:c.x2,y:-c.y2})}t.fillStyle="blue",r(o,e,n,s),t.fillStyle="red",r(a,e,n,s)};Xo.prototype.drawMetrics=function(t,e,n,i){var r;e=e!==void 0?e:0,n=n!==void 0?n:0,i=i!==void 0?i:24,r=1/this.path.unitsPerEm*i,t.lineWidth=1,t.strokeStyle="black",Rh.line(t,e,-1e4,e,1e4),Rh.line(t,-1e4,n,1e4,n);var s=this.xMin||0,o=this.yMin||0,a=this.xMax||0,l=this.yMax||0,u=this.advanceWidth||0;t.strokeStyle="blue",Rh.line(t,e+s*r,-1e4,e+s*r,1e4),Rh.line(t,e+a*r,-1e4,e+a*r,1e4),Rh.line(t,-1e4,n+-o*r,1e4,n+-o*r),Rh.line(t,-1e4,n+-l*r,1e4,n+-l*r),t.strokeStyle="green",Rh.line(t,e+u*r,-1e4,e+u*r,1e4)};function $7(t,e,n){Object.defineProperty(t,e,{get:function(){return t.path,t[n]},set:function(i){t[n]=i},enumerable:!0,configurable:!0})}function Bw(t,e){if(this.font=t,this.glyphs={},Array.isArray(e))for(var n=0;n<e.length;n++){var i=e[n];i.path.unitsPerEm=t.unitsPerEm,this.glyphs[n]=i}this.length=e&&e.length||0}Bw.prototype.get=function(t){if(this.glyphs[t]===void 0){this.font._push(t),typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());var e=this.glyphs[t],n=this.font._IndexToUnicodeMap[t];if(n)for(var i=0;i<n.unicodes.length;i++)e.addUnicode(n.unicodes[i]);this.font.cffEncoding?this.font.isCIDFont?e.name="gid"+t:e.name=this.font.cffEncoding.charset[t]:this.font.glyphNames.names&&(e.name=this.font.glyphNames.glyphIndexToName(t)),this.glyphs[t].advanceWidth=this.font._hmtxTableData[t].advanceWidth,this.glyphs[t].leftSideBearing=this.font._hmtxTableData[t].leftSideBearing}else typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());return this.glyphs[t]};Bw.prototype.push=function(t,e){this.glyphs[t]=e,this.length++};function s5e(t,e){return new Xo({index:e,font:t})}function o5e(t,e,n,i,r,s){return function(){var o=new Xo({index:e,font:t});return o.path=function(){n(o,i,r);var a=s(t.glyphs,o);return a.unitsPerEm=t.unitsPerEm,a},$7(o,"xMin","_xMin"),$7(o,"xMax","_xMax"),$7(o,"yMin","_yMin"),$7(o,"yMax","_yMax"),o}}function a5e(t,e,n,i){return function(){var r=new Xo({index:e,font:t});return r.path=function(){var s=n(t,r,i);return s.unitsPerEm=t.unitsPerEm,s},r}}var hl={GlyphSet:Bw,glyphLoader:s5e,ttfGlyphLoader:o5e,cffGlyphLoader:a5e};function ZH(t,e){if(t===e)return!0;
vendor: 21,201 bytes, line 5517
5517if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return!1;for(var n=0;n<t.length;n+=1)if(!ZH(t[n],e[n]))return!1;return!0}else return!1}function HE(t){var e;return t.length<1240?e=107:t.length<33900?e=1131:e=32768,e}function Ku(t,e,n){var i=[],r=[],s=Ut.getCard16(t,e),o,a;if(s!==0){var l=Ut.getByte(t,e+2);o=e+(s+1)*l+2;for(var u=e+3,c=0;c<s+1;c+=1)i.push(Ut.getOffset(t,u,l)),u+=l;a=o+i[s]}else a=e+2;for(var h=0;h<i.length-1;h+=1){var f=Ut.getBytes(t,o+i[h],o+i[h+1]);n&&(f=n(f)),r.push(f)}return{objects:r,startOffset:e,endOffset:a}}function l5e(t,e){var n=[],i=Ut.getCard16(t,e),r,s;if(i!==0){var o=Ut.getByte(t,e+2);r=e+(i+1)*o+2;for(var a=e+3,l=0;l<i+1;l+=1)n.push(Ut.getOffset(t,a,o)),a+=o;s=r+n[i]}else s=e+2;return{offsets:n,startOffset:e,endOffset:s}}function u5e(t,e,n,i,r){var s=Ut.getCard16(n,i),o=0;if(s!==0){var a=Ut.getByte(n,i+2);o=i+(s+1)*a+2}var l=Ut.getBytes(n,o+e[t],o+e[t+1]);return r&&(l=r(l)),l}function c5e(t){for(var e="",n=15,i=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var r=t.parseByte(),s=r>>4,o=r&15;if(s===n||(e+=i[s],o===n))break;e+=i[o]}return parseFloat(e)}function h5e(t,e){var n,i,r,s;if(e===28)return n=t.parseByte(),i=t.parseByte(),n<<8|i;if(e===29)return n=t.parseByte(),i=t.parseByte(),r=t.parseByte(),s=t.parseByte(),n<<24|i<<16|r<<8|s;if(e===30)return c5e(t);if(e>=32&&e<=246)return e-139;if(e>=247&&e<=250)return n=t.parseByte(),(e-247)*256+n+108;if(e>=251&&e<=254)return n=t.parseByte(),-(e-251)*256-n-108;throw new Error("Invalid b0 "+e)}function f5e(t){for(var e={},n=0;n<t.length;n+=1){var i=t[n][0],r=t[n][1],s=void 0;if(r.length===1?s=r[0]:s=r,e.hasOwnProperty(i)&&!isNaN(e[i]))throw new Error("Object "+e+" already has key "+i);e[i]=s}return e}function eW(t,e,n){e=e!==void 0?e:0;var i=new Ut.Parser(t,e),r=[],s=[];for(n=n!==void 0?n:t.length;i.relativeOffset<n;){var o=i.parseByte();o<=21?(o===12&&(o=1200+i.parseByte()),r.push([o,s]),s=[]):s.push(h5e(i,o))}return f5e(r)}function V5(t,e){return e<=390?e=B8[e]:e=t[e-391],e}function tW(t,e,n){for(var i={},r,s=0;s<e.length;s+=1){var o=e[s];if(Array.isArray(o.type)){var a=[];a.length=o.type.length;for(var l=0;l<o.type.length;l++)r=t[o.op]!==void 0?t[o.op][l]:void 0,r===void 0&&(r=o.value!==void 0&&o.value[l]!==void 0?o.value[l]:null),o.type[l]==="SID"&&(r=V5(n,r)),a[l]=r;i[o.name]=a}else r=t[o.op],r===void 0&&(r=o.value!==void 0?o.value:null),o.type==="SID"&&(r=V5(n,r)),i[o.name]=r}return i}function d5e(t,e){var n={};return n.formatMajor=Ut.getCard8(t,e),n.formatMinor=Ut.getCard8(t,e+1),n.size=Ut.getCard8(t,e+2),n.offsetSize=Ut.getCard8(t,e+3),n.startOffset=e,n.endOffset=e+4,n}var nW=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],iW=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function p5e(t,e){var n=eW(t,0,t.byteLength);return tW(n,nW,e)}function rW(t,e,n,i){var r=eW(t,e,n);return tW(r,iW,i)}function YD(t,e,n,i){for(var r=[],s=0;s<n.length;s+=1){var o=new DataView(new Uint8Array(n[s]).buffer),a=p5e(o,i);a._subrs=[],a._subrsBias=0,a._defaultWidthX=0,a._nominalWidthX=0;var l=a.private[0],u=a.private[1];if(l!==0&&u!==0){var c=rW(t,u+e,l,i);if(a._defaultWidthX=c.defaultWidthX,a._nominalWidthX=c.nominalWidthX,c.subrs!==0){var h=u+c.subrs,f=Ku(t,h+e);a._subrs=f.objects,a._subrsBias=HE(a._subrs)}a._privateDict=c}r.push(a)}return r}function m5e(t,e,n,i){var r,s,o=new Ut.Parser(t,e);n-=1;var a=[".notdef"],l=o.parseCard8();if(l===0)for(var u=0;u<n;u+=1)r=o.parseSID(),a.push(V5(i,r));else if(l===1)for(;a.length<=n;){r=o.parseSID(),s=o.parseCard8();for(var c=0;c<=s;c+=1)a.push(V5(i,r)),r+=1}else if(l===2)for(;a.length<=n;){r=o.parseSID(),s=o.parseCard16();for(var h=0;h<=s;h+=1)a.push(V5(i,r)),r+=1}else throw new Error("Unknown charset format "+l);return a}function g5e(t,e,n){var i,r={},s=new Ut.Parser(t,e),o=s.parseCard8();if(o===0)for(var a=s.parseCard8(),l=0;l<a;l+=1)i=s.parseCard8(),r[i]=l;else if(o===1){var u=s.parseCard8();i=1;for(var c=0;c<u;c+=1)for(var h=s.parseCard8(),f=s.parseCard8(),m=h;m<=h+f;m+=1)r[m]=i,i+=1}else throw new Error("Unknown encoding format "+o);return new Xm(r,n)}function KD(t,e,n){var i,r,s,o,a=new Ki,l=[],u=0,c=!1,h=!1,f=0,m=0,g,v,_,A;if(t.isCIDFont){var y=t.tables.cff.topDict._fdSelect[e.index],q=t.tables.cff.topDict._fdArray[y];g=q._subrs,v=q._subrsBias,_=q._defaultWidthX,A=q._nominalWidthX}else g=t.tables.cff.topDict._subrs,v=t.tables.cff.topDict._subrsBias,_=t.tables.cff.topDict._defaultWidthX,A=t.tables.cff.topDict._nominalWidthX;var E=_;function T(R,M){h&&a.closePath(),a.moveTo(R,M),h=!0}function C(){var R;R=l.length%2!==0,R&&!c&&(E=l.shift()+A),u+=l.length>>1,l.length=0,c=!0}function I(R){for(var M,b,D,z,O,W,$,K,Y,B,U,F,k=0;k<R.length;){var Q=R[k];switch(k+=1,Q){case 1:C();break;case 3:C();break;case 4:l.length>1&&!c&&(E=l.shift()+A,c=!0),m+=l.pop(),T(f,m);break;case 5:for(;l.length>0;)f+=l.shift(),m+=l.shift(),a.lineTo(f,m);break;case 6:for(;l.length>0&&(f+=l.shift(),a.lineTo(f,m),l.length!==0);)m+=l.shift(),a.lineTo(f,m);break;case 7:for(;l.length>0&&(m+=l.shift(),a.lineTo(f,m),l.length!==0);)f+=l.shift(),a.lineTo(f,m);break;case 8:for(;l.length>0;)i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o+l.shift(),a.curveTo(i,r,s,o,f,m);break;case 10:O=l.pop()+v,W=g[O],W&&I(W);break;case 11:return;case 12:switch(Q=R[k],k+=1,Q){case 35:i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),$=s+l.shift(),K=o+l.shift(),Y=$+l.shift(),B=K+l.shift(),U=Y+l.shift(),F=B+l.shift(),f=U+l.shift(),m=F+l.shift(),l.shift(),a.curveTo(i,r,s,o,$,K),a.curveTo(Y,B,U,F,f,m);break;case 34:i=f+l.shift(),r=m,s=i+l.shift(),o=r+l.shift(),$=s+l.shift(),K=o,Y=$+l.shift(),B=o,U=Y+l.shift(),F=m,f=U+l.shift(),a.curveTo(i,r,s,o,$,K),a.curveTo(Y,B,U,F,f,m);break;case 36:i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),$=s+l.shift(),K=o,Y=$+l.shift(),B=o,U=Y+l.shift(),F=B+l.shift(),f=U+l.shift(),a.curveTo(i,r,s,o,$,K),a.curveTo(Y,B,U,F,f,m);break;case 37:i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),$=s+l.shift(),K=o+l.shift(),Y=$+l.shift(),B=K+l.shift(),U=Y+l.shift(),F=B+l.shift(),Math.abs(U-f)>Math.abs(F-m)?f=U+l.shift():m=F+l.shift(),a.curveTo(i,r,s,o,$,K),a.curveTo(Y,B,U,F,f,m);break;default:console.log("Glyph "+e.index+": unknown operator 1200"+Q),l.length=0}break;case 14:l.length>0&&!c&&(E=l.shift()+A,c=!0),h&&(a.closePath(),h=!1);break;case 18:C();break;case 19:case 20:C(),k+=u+7>>3;break;case 21:l.length>2&&!c&&(E=l.shift()+A,c=!0),m+=l.pop(),f+=l.pop(),T(f,m);break;case 22:l.length>1&&!c&&(E=l.shift()+A,c=!0),f+=l.pop(),T(f,m);break;case 23:C();break;case 24:for(;l.length>2;)i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o+l.shift(),a.curveTo(i,r,s,o,f,m);f+=l.shift(),m+=l.shift(),a.lineTo(f,m);break;case 25:for(;l.length>6;)f+=l.shift(),m+=l.shift(),a.lineTo(f,m);i=f+l.shift(),r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o+l.shift(),a.curveTo(i,r,s,o,f,m);break;case 26:for(l.length%2&&(f+=l.shift());l.length>0;)i=f,r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s,m=o+l.shift(),a.curveTo(i,r,s,o,f,m);break;case 27:for(l.length%2&&(m+=l.shift());l.length>0;)i=f+l.shift(),r=m,s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o,a.curveTo(i,r,s,o,f,m);break;case 28:M=R[k],b=R[k+1],l.push((M<<24|b<<16)>>16),k+=2;break;case 29:O=l.pop()+t.gsubrsBias,W=t.gsubrs[O],W&&I(W);break;case 30:for(;l.length>0&&(i=f,r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o+(l.length===1?l.shift():0),a.curveTo(i,r,s,o,f,m),l.length!==0);)i=f+l.shift(),r=m,s=i+l.shift(),o=r+l.shift(),m=o+l.shift(),f=s+(l.length===1?l.shift():0),a.curveTo(i,r,s,o,f,m);break;case 31:for(;l.length>0&&(i=f+l.shift(),r=m,s=i+l.shift(),o=r+l.shift(),m=o+l.shift(),f=s+(l.length===1?l.shift():0),a.curveTo(i,r,s,o,f,m),l.length!==0);)i=f,r=m+l.shift(),s=i+l.shift(),o=r+l.shift(),f=s+l.shift(),m=o+(l.length===1?l.shift():0),a.curveTo(i,r,s,o,f,m);break;default:Q<32?console.log("Glyph "+e.index+": unknown operator "+Q):Q<247?l.push(Q-139):Q<251?(M=R[k],k+=1,l.push((Q-247)*256+M+108)):Q<255?(M=R[k],k+=1,l.push(-(Q-251)*256-M-108)):(M=R[k],b=R[k+1],D=R[k+2],z=R[k+3],k+=4,l.push((M<<24|b<<16|D<<8|z)/65536))}}}return I(n),e.advanceWidth=E,a}function A5e(t,e,n,i){var r=[],s,o=new Ut.Parser(t,e),a=o.parseCard8();if(a===0)for(var l=0;l<n;l++){if(s=o.parseCard8(),s>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+s+" (FD count "+i+")");r.push(s)}else if(a===3){var u=o.parseCard16(),c=o.parseCard16();if(c!==0)throw new Error("CFF Table CID Font FDSelect format 3 range has bad initial GID "+c);for(var h,f=0;f<u;f++){if(s=o.parseCard8(),h=o.parseCard16(),s>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+s+" (FD count "+i+")");if(h>n)throw new Error("CFF Table CID Font FDSelect format 3 range has bad GID "+h);for(;c<h;c++)r.push(s);c=h}if(h!==n)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final GID "+h)}else throw new Error("CFF Table CID Font FDSelect table has unsupported format "+a);return r}function v5e(t,e,n,i){n.tables.cff={};var r=d5e(t,e),s=Ku(t,r.endOffset,Ut.bytesToString),o=Ku(t,s.endOffset),a=Ku(t,o.endOffset,Ut.bytesToString),l=Ku(t,a.endOffset);n.gsubrs=l.objects,n.gsubrsBias=HE(n.gsubrs);var u=YD(t,e,o.objects,a.objects);if(u.length!==1)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+u.length);var c=u[0];if(n.tables.cff.topDict=c,c._privateDict&&(n.defaultWidthX=c._privateDict.defaultWidthX,n.nominalWidthX=c._privateDict.nominalWidthX),c.ros[0]!==void 0&&c.ros[1]!==void 0&&(n.isCIDFont=!0),n.isCIDFont){var h=c.fdArray,f=c.fdSelect;if(h===0||f===0)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");h+=e;var m=Ku(t,h),g=YD(t,e,m.objects,a.objects);c._fdArray=g,f+=e,c._fdSelect=A5e(t,f,n.numGlyphs,g.length)}var v=e+c.private[1],_=rW(t,v,c.private[0],a.objects);if(n.defaultWidthX=_.defaultWidthX,n.nominalWidthX=_.nominalWidthX,_.subrs!==0){var A=v+_.subrs,y=Ku(t,A);n.subrs=y.objects,n.subrsBias=HE(n.subrs)}else n.subrs=[],n.subrsBias=0;var q;i.lowMemory?(q=l5e(t,e+c.charStrings),n.nGlyphs=q.offsets.length):(q=Ku(t,e+c.charStrings),n.nGlyphs=q.objects.length);var E=m5e(t,e+c.charset,n.nGlyphs,a.objects);if(c.encoding===0?n.cffEncoding=new Xm(t5e,E):c.encoding===1?n.cffEncoding=new Xm(n5e,E):n.cffEncoding=g5e(t,e+c.encoding,E),n.encoding=n.encoding||n.cffEncoding,n.glyphs=new hl.GlyphSet(n),i.lowMemory)n._push=function(I){var R=u5e(I,q.offsets,t,e+c.charStrings);n.glyphs.push(I,hl.cffGlyphLoader(n,I,KD,R))};else for(var T=0;T<n.nGlyphs;T+=1){var C=q.objects[T];n.glyphs.push(T,hl.cffGlyphLoader(n,T,KD,C))}}function sW(t,e){var n,i=B8.indexOf(t);return i>=0&&(n=i),i=e.indexOf(t),i>=0?n=i+B8.length:(n=B8.length+e.length,e.push(t)),n}function y5e(){return new et.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function q5e(t){var e=new et.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);e.names=[];for(var n=0;n<t.length;n+=1)e.names.push({name:"name_"+n,type:"NAME",value:t[n]});return e}function oW(t,e,n){for(var i={},r=0;r<t.length;r+=1){var s=t[r],o=e[s.name];o!==void 0&&!ZH(o,s.value)&&(s.type==="SID"&&(o=sW(o,n)),i[s.op]={name:s.name,type:s.type,value:o})}return i}function JD(t,e){var n=new et.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return n.dict=oW(nW,t,e),n}function ZD(t){var e=new et.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return e.topDicts=[{name:"topDict_0",type:"TABLE",value:t}],e}function _5e(t){var e=new et.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);e.strings=[];for(var n=0;n<t.length;n+=1)e.strings.push({name:"string_"+n,type:"STRING",value:t[n]});return e}function x5e(){return new et.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function E5e(t,e){for(var n=new et.Record("Charsets",[{name:"format",type:"Card8",value:0}]),i=0;i<t.length;i+=1){var r=t[i],s=sW(r,e);n.fields.push({name:"glyph_"+i,type:"SID",value:s})}return n}function S5e(t){var e=[],n=t.path;e.push({name:"width",type:"NUMBER",value:t.advanceWidth});for(var i=0,r=0,s=0;s<n.commands.length;s+=1){var o=void 0,a=void 0,l=n.commands[s];if(l.type==="Q"){var u=.3333333333333333,c=2/3;l={type:"C",x:l.x,y:l.y,x1:Math.round(u*i+c*l.x1),y1:Math.round(u*r+c*l.y1),x2:Math.round(u*l.x+c*l.x1),y2:Math.round(u*l.y+c*l.y1)}}if(l.type==="M")o=Math.round(l.x-i),a=Math.round(l.y-r),e.push({name:"dx",type:"NUMBER",value:o}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rmoveto",type:"OP",value:21}),i=Math.round(l.x),r=Math.round(l.y);else if(l.type==="L")o=Math.round(l.x-i),a=Math.round(l.y-r),e.push({name:"dx",type:"NUMBER",value:o}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rlineto",type:"OP",value:5}),i=Math.round(l.x),r=Math.round(l.y);else if(l.type==="C"){var h=Math.round(l.x1-i),f=Math.round(l.y1-r),m=Math.round(l.x2-l.x1),g=Math.round(l.y2-l.y1);o=Math.round(l.x-l.x2),a=Math.round(l.y-l.y2),e.push({name:"dx1",type:"NUMBER",value:h}),e.push({name:"dy1",type:"NUMBER",value:f}),e.push({name:"dx2",type:"NUMBER",value:m}),e.push({name:"dy2",type:"NUMBER",value:g}),e.push({name:"dx",type:"NUMBER",value:o}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rrcurveto",type:"OP",value:8}),i=Math.round(l.x),r=Math.round(l.y)}}return e.push({name:"endchar",type:"OP",value:14}),e}function T5e(t){for(var e=new et.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),n=0;n<t.length;n+=1){var i=t.get(n),r=S5e(i);e.charStrings.push({name:i.name,type:"CHARSTRING",value:r})}return e}function C5e(t,e){var n=new et.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return n.dict=oW(iW,t,e),n}function w5e(t,e){for(var n=new et.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),i=1/e.unitsPerEm,r={version:e.version,fullName:e.fullName,familyName:e.familyName,weight:e.weightName,fontBBox:e.fontBBox||[0,0,0,0],fontMatrix:[i,0,0,i,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},s={},o=[],a,l=1;l<t.length;l+=1)a=t.get(l),o.push(a.name);var u=[];n.header=y5e(),n.nameIndex=q5e([e.postScriptName]);var c=JD(r,u);n.topDictIndex=ZD(c),n.globalSubrIndex=x5e(),n.charsets=E5e(o,u),n.charStringsIndex=T5e(t),n.privateDict=C5e(s,u),n.stringIndex=_5e(u);var h=n.header.sizeOf()+n.nameIndex.sizeOf()+n.topDictIndex.sizeOf()+n.stringIndex.sizeOf()+n.globalSubrIndex.sizeOf();return r.charset=h,r.encoding=0,r.charStrings=r.charset+n.charsets.sizeOf(),r.private[1]=r.charStrings+n.charStringsIndex.sizeOf(),c=JD(r,u),n.topDictIndex=ZD(c),n}var I5e={parse:v5e,make:w5e};function M5e(t,e){var n={},i=new Ut.Parser(t,e);return n.version=i.parseVersion(),n.fontRevision=Math.round(i.parseFixed()*1e3)/1e3,n.checkSumAdjustment=i.parseULong(),n.magicNumber=i.parseULong(),Dt.argument(n.magicNumber===1594834165,"Font header has wrong magic number."),n.flags=i.parseUShort(),n.unitsPerEm=i.parseUShort(),n.created=i.parseLongDateTime(),n.modified=i.parseLongDateTime(),n.xMin=i.parseShort(),n.yMin=i.parseShort(),n.xMax=i.parseShort(),n.yMax=i.parseShort(),n.macStyle=i.parseUShort(),n.lowestRecPPEM=i.parseUShort(),n.fontDirectionHint=i.parseShort(),n.indexToLocFormat=i.parseShort(),n.glyphDataFormat=i.parseShort(),n}function R5e(t){var e=Math.round(new Date().getTime()/1e3)+2082844800,n=e;return t.createdTimestamp&&(n=t.createdTimestamp+2082844800),new et.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:n},{name:"modified",type:"LONGDATETIME",value:e},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],t)}var b5e={parse:M5e,make:R5e};function P5e(t,e){var n={},i=new Ut.Parser(t,e);return n.version=i.parseVersion(),n.ascender=i.parseShort(),n.descender=i.parseShort(),n.lineGap=i.parseShort(),n.advanceWidthMax=i.parseUShort(),n.minLeftSideBearing=i.parseShort(),n.minRightSideBearing=i.parseShort(),n.xMaxExtent=i.parseShort(),n.caretSlopeRise=i.parseShort(),n.caretSlopeRun=i.parseShort(),n.caretOffset=i.parseShort(),i.relativeOffset+=8,n.metricDataFormat=i.parseShort(),n.numberOfHMetrics=i.parseUShort(),n}function B5e(t){return new et.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],t)}var D5e={parse:P5e,make:B5e};function L5e(t,e,n,i,r){for(var s,o,a=new Ut.Parser(t,e),l=0;l<i;l+=1){l<n&&(s=a.parseUShort(),o=a.parseShort());var u=r.get(l);u.advanceWidth=s,u.leftSideBearing=o}}function N5e(t,e,n,i,r){t._hmtxTableData={};for(var s,o,a=new Ut.Parser(e,n),l=0;l<r;l+=1)l<i&&(s=a.parseUShort(),o=a.parseShort()),t._hmtxTableData[l]={advanceWidth:s,leftSideBearing:o}}function k5e(t,e,n,i,r,s,o){o.lowMemory?N5e(t,e,n,i,r):L5e(e,n,i,r,s)}function F5e(t){for(var e=new et.Table("hmtx",[]),n=0;n<t.length;n+=1){var i=t.get(n),r=i.advanceWidth||0,s=i.leftSideBearing||0;e.fields.push({name:"advanceWidth_"+n,type:"USHORT",value:r}),e.fields.push({name:"leftSideBearing_"+n,type:"SHORT",value:s})}return e}var O5e={parse:k5e,make:F5e};function U5e(t){for(var e=new et.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:t.length}]),n="",i=12+t.length*4,r=0;r<t.length;++r){var s=n.indexOf(t[r]);s<0&&(s=n.length,n+=t[r]),e.fields.push({name:"offset "+r,type:"USHORT",value:i+s}),e.fields.push({name:"length "+r,type:"USHORT",value:t[r].length})}return e.fields.push({name:"stringPool",type:"CHARARRAY",value:n}),e}function z5e(t,e){var n=new Ut.Parser(t,e),i=n.parseULong();Dt.argument(i===1,"Unsupported ltag table version."),n.skip("uLong",1);for(var r=n.parseULong(),s=[],o=0;o<r;o++){for(var a="",l=e+n.parseUShort(),u=n.parseUShort(),c=l;c<l+u;++c)a+=String.fromCharCode(t.getInt8(c));s.push(a)}return s}var V5e={make:U5e,parse:z5e};function G5e(t,e){var n={},i=new Ut.Parser(t,e);return n.version=i.parseVersion(),n.numGlyphs=i.parseUShort(),n.version===1&&(n.maxPoints=i.parseUShort(),n.maxContours=i.parseUShort(),n.maxCompositePoints=i.parseUShort(),n.maxCompositeContours=i.parseUShort(),n.maxZones=i.parseUShort(),n.maxTwilightPoints=i.parseUShort(),n.maxStorage=i.parseUShort(),n.maxFunctionDefs=i.parseUShort(),n.maxInstructionDefs=i.parseUShort(),n.maxStackElements=i.parseUShort(),n.maxSizeOfInstru
5517ctions=i.parseUShort(),n.maxComponentElements=i.parseUShort(),n.maxComponentDepth=i.parseUShort()),n}function Q5e(t){return new et.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:t}])}var H5e={parse:G5e,make:Q5e},aW=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],lW={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69
5517:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},W5e={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},uW={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",104
vendor: 88,744 bytes, line 5517
55170:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function $5e(t,e,n){switch(t){case 0:if(e===65535)return"und";if(n)return n[e];break;case 1:return lW[e];case 3:return uW[e]}}var WE="utf-16",j5e={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},X5e={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function cW(t,e,n){switch(t){case 0:return WE;case 1:return X5e[n]||j5e[e];case 3:if(e===1||e===10)return WE;break}}function Y5e(t,e,n){for(var i={},r=new Ut.Parser(t,e),s=r.parseUShort(),o=r.parseUShort(),a=r.offset+r.parseUShort(),l=0;l<o;l++){var u=r.parseUShort(),c=r.parseUShort(),h=r.parseUShort(),f=r.parseUShort(),m=aW[f]||f,g=r.parseUShort(),v=r.parseUShort(),_=$5e(u,h,n),A=cW(u,c,h);if(A!==void 0&&_!==void 0){var y=void 0;if(A===WE?y=p2.UTF16(t,a+v,g):y=p2.MACSTRING(t,a+v,g,A),y){var q=i[m];q===void 0&&(q=i[m]={}),q[_]=y}}}return s===1&&r.parseUShort(),i}function bq(t){var e={};for(var n in t)e[t[n]]=parseInt(n);return e}function eL(t,e,n,i,r,s){return new et.Record("NameRecord",[{name:"platformID",type:"USHORT",value:t},{name:"encodingID",type:"USHORT",value:e},{name:"languageID",type:"USHORT",value:n},{name:"nameID",type:"USHORT",value:i},{name:"length",type:"USHORT",value:r},{name:"offset",type:"USHORT",value:s}])}function K5e(t,e){var n=t.length,i=e.length-n+1;e:for(var r=0;r<i;r++)for(;r<i;r++){for(var s=0;s<n;s++)if(e[r+s]!==t[s])continue e;return r}return-1}function tL(t,e){var n=K5e(t,e);if(n<0){n=e.length;for(var i=0,r=t.length;i<r;++i)e.push(t[i])}return n}function J5e(t,e){var n,i=[],r={},s=bq(aW);for(var o in t){var a=s[o];if(a===void 0&&(a=o),n=parseInt(a),isNaN(n))throw new Error('Name table entry "'+o+'" does not exist, see nameTableNames for complete list.');r[n]=t[o],i.push(n)}for(var l=bq(lW),u=bq(uW),c=[],h=[],f=0;f<i.length;f++){n=i[f];var m=r[n];for(var g in m){var v=m[g],_=1,A=l[g],y=W5e[A],q=cW(_,y,A),E=Fe.MACSTRING(v,q);E===void 0&&(_=0,A=e.indexOf(g),A<0&&(A=e.length,e.push(g)),y=4,E=Fe.UTF16(v));var T=tL(E,h);c.push(eL(_,y,A,n,E.length,T));var C=u[g];if(C!==void 0){var I=Fe.UTF16(v),R=tL(I,h);c.push(eL(3,1,C,n,I.length,R))}}}c.sort(function(D,z){return D.platformID-z.platformID||D.encodingID-z.encodingID||D.languageID-z.languageID||D.nameID-z.nameID});for(var M=new et.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:c.length},{name:"stringOffset",type:"USHORT",value:6+c.length*12}]),b=0;b<c.length;b++)M.fields.push({name:"record_"+b,type:"RECORD",value:c[b]});return M.fields.push({name:"strings",type:"LITERAL",value:h}),M}var Z5e={parse:Y5e,make:J5e},$E=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function ede(t){for(var e=0;e<$E.length;e+=1){var n=$E[e];if(t>=n.begin&&t<n.end)return e}return-1}function tde(t,e){var n={},i=new Ut.Parser(t,e);n.version=i.parseUShort(),n.xAvgCharWidth=i.parseShort(),n.usWeightClass=i.parseUShort(),n.usWidthClass=i.parseUShort(),n.fsType=i.parseUShort(),n.ySubscriptXSize=i.parseShort(),n.ySubscriptYSize=i.parseShort(),n.ySubscriptXOffset=i.parseShort(),n.ySubscriptYOffset=i.parseShort(),n.ySuperscriptXSize=i.parseShort(),n.ySuperscriptYSize=i.parseShort(),n.ySuperscriptXOffset=i.parseShort(),n.ySuperscriptYOffset=i.parseShort(),n.yStrikeoutSize=i.parseShort(),n.yStrikeoutPosition=i.parseShort(),n.sFamilyClass=i.parseShort(),n.panose=[];for(var r=0;r<10;r++)n.panose[r]=i.parseByte();return n.ulUnicodeRange1=i.parseULong(),n.ulUnicodeRange2=i.parseULong(),n.ulUnicodeRange3=i.parseULong(),n.ulUnicodeRange4=i.parseULong(),n.achVendID=String.fromCharCode(i.parseByte(),i.parseByte(),i.parseByte(),i.parseByte()),n.fsSelection=i.parseUShort(),n.usFirstCharIndex=i.parseUShort(),n.usLastCharIndex=i.parseUShort(),n.sTypoAscender=i.parseShort(),n.sTypoDescender=i.parseShort(),n.sTypoLineGap=i.parseShort(),n.usWinAscent=i.parseUShort(),n.usWinDescent=i.parseUShort(),n.version>=1&&(n.ulCodePageRange1=i.parseULong(),n.ulCodePageRange2=i.parseULong()),n.version>=2&&(n.sxHeight=i.parseShort(),n.sCapHeight=i.parseShort(),n.usDefaultChar=i.parseUShort(),n.usBreakChar=i.parseUShort(),n.usMaxContent=i.parseUShort()),n}function nde(t){return new et.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],t)}var nL={parse:tde,make:nde,unicodeRanges:$E,getUnicodeRange:ede};function ide(t,e){var n={},i=new Ut.Parser(t,e);switch(n.version=i.parseVersion(),n.italicAngle=i.parseFixed(),n.underlinePosition=i.parseShort(),n.underlineThickness=i.parseShort(),n.isFixedPitch=i.parseULong(),n.minMemType42=i.parseULong(),n.maxMemType42=i.parseULong(),n.minMemType1=i.parseULong(),n.maxMemType1=i.parseULong(),n.version){case 1:n.names=XD.slice();break;case 2:n.numberOfGlyphs=i.parseUShort(),n.glyphNameIndex=new Array(n.numberOfGlyphs);for(var r=0;r<n.numberOfGlyphs;r++)n.glyphNameIndex[r]=i.parseUShort();n.names=[];for(var s=0;s<n.numberOfGlyphs;s++)if(n.glyphNameIndex[s]>=XD.length){var o=i.parseChar();n.names.push(i.parseString(o))}break;case 2.5:n.numberOfGlyphs=i.parseUShort(),n.offset=new Array(n.numberOfGlyphs);for(var a=0;a<n.numberOfGlyphs;a++)n.offset[a]=i.parseChar();break}return n}function rde(){return new et.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}var sde={parse:ide,make:rde},qa=new Array(9);qa[1]=function(){var e=this.offset+this.relativeOffset,n=this.parseUShort();if(n===1)return{substFormat:1,coverage:this.parsePointer(fe.coverage),deltaGlyphId:this.parseUShort()};if(n===2)return{substFormat:2,coverage:this.parsePointer(fe.coverage),substitute:this.parseOffset16List()};Dt.assert(!1,"0x"+e.toString(16)+": lookup type 1 format must be 1 or 2.")};qa[2]=function(){var e=this.parseUShort();return Dt.argument(e===1,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:e,coverage:this.parsePointer(fe.coverage),sequences:this.parseListOfLists()}};qa[3]=function(){var e=this.parseUShort();return Dt.argument(e===1,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:e,coverage:this.parsePointer(fe.coverage),alternateSets:this.parseListOfLists()}};qa[4]=function(){var e=this.parseUShort();return Dt.argument(e===1,"GSUB ligature table identifier-format must be 1"),{substFormat:e,coverage:this.parsePointer(fe.coverage),ligatureSets:this.parseListOfLists(function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}})}};var F0={sequenceIndex:fe.uShort,lookupListIndex:fe.uShort};qa[5]=function(){var e=this.offset+this.relativeOffset,n=this.parseUShort();if(n===1)return{substFormat:n,coverage:this.parsePointer(fe.coverage),ruleSets:this.parseListOfLists(function(){var s=this.parseUShort(),o=this.parseUShort();return{input:this.parseUShortList(s-1),lookupRecords:this.parseRecordList(o,F0)}})};if(n===2)return{substFormat:n,coverage:this.parsePointer(fe.coverage),classDef:this.parsePointer(fe.classDef),classSets:this.parseListOfLists(function(){var s=this.parseUShort(),o=this.parseUShort();return{classes:this.parseUShortList(s-1),lookupRecords:this.parseRecordList(o,F0)}})};if(n===3){var i=this.parseUShort(),r=this.parseUShort();return{substFormat:n,coverages:this.parseList(i,fe.pointer(fe.coverage)),lookupRecords:this.parseRecordList(r,F0)}}Dt.assert(!1,"0x"+e.toString(16)+": lookup type 5 format must be 1, 2 or 3.")};qa[6]=function(){var e=this.offset+this.relativeOffset,n=this.parseUShort();if(n===1)return{substFormat:1,coverage:this.parsePointer(fe.coverage),chainRuleSets:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(F0)}})};if(n===2)return{substFormat:2,coverage:this.parsePointer(fe.coverage),backtrackClassDef:this.parsePointer(fe.classDef),inputClassDef:this.parsePointer(fe.classDef),lookaheadClassDef:this.parsePointer(fe.classDef),chainClassSet:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(F0)}})};if(n===3)return{substFormat:3,backtrackCoverage:this.parseList(fe.pointer(fe.coverage)),inputCoverage:this.parseList(fe.pointer(fe.coverage)),lookaheadCoverage:this.parseList(fe.pointer(fe.coverage)),lookupRecords:this.parseRecordList(F0)};Dt.assert(!1,"0x"+e.toString(16)+": lookup type 6 format must be 1, 2 or 3.")};qa[7]=function(){var e=this.parseUShort();Dt.argument(e===1,"GSUB Extension Substitution subtable identifier-format must be 1");var n=this.parseUShort(),i=new fe(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:n,extension:qa[n].call(i)}};qa[8]=function(){var e=this.parseUShort();return Dt.argument(e===1,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:e,coverage:this.parsePointer(fe.coverage),backtrackCoverage:this.parseList(fe.pointer(fe.coverage)),lookaheadCoverage:this.parseList(fe.pointer(fe.coverage)),substitutes:this.parseUShortList()}};function ode(t,e){e=e||0;var n=new fe(t,e),i=n.parseVersion(1);return Dt.argument(i===1||i===1.1,"Unsupported GSUB table version."),i===1?{version:i,scripts:n.parseScriptList(),features:n.parseFeatureList(),lookups:n.parseLookupList(qa)}:{version:i,scripts:n.parseScriptList(),features:n.parseFeatureList(),lookups:n.parseLookupList(qa),variations:n.parseFeatureVariationsList()}}var Q2=new Array(9);Q2[1]=function(e){return e.substFormat===1?new et.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)},{name:"deltaGlyphID",type:"USHORT",value:e.deltaGlyphId}]):new et.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)}].concat(et.ushortList("substitute",e.substitute)))};Q2[2]=function(e){return Dt.assert(e.substFormat===1,"Lookup type 2 substFormat must be 1."),new et.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)}].concat(et.tableList("seqSet",e.sequences,function(n){return new et.Table("sequenceSetTable",et.ushortList("sequence",n))})))};Q2[3]=function(e){return Dt.assert(e.substFormat===1,"Lookup type 3 substFormat must be 1."),new et.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)}].concat(et.tableList("altSet",e.alternateSets,function(n){return new et.Table("alternateSetTable",et.ushortList("alternate",n))})))};Q2[4]=function(e){return Dt.assert(e.substFormat===1,"Lookup type 4 substFormat must be 1."),new et.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)}].concat(et.tableList("ligSet",e.ligatureSets,function(n){return new et.Table("ligatureSetTable",et.tableList("ligature",n,function(i){return new et.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:i.ligGlyph}].concat(et.ushortList("component",i.components,i.components.length+1)))}))})))};Q2[6]=function(e){if(e.substFormat===1){var n=new et.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:e.substFormat},{name:"coverage",type:"TABLE",value:new et.Coverage(e.coverage)}].concat(et.tableList("chainRuleSet",e.chainRuleSets,function(s){return new et.Table("chainRuleSetTable",et.tableList("chainRule",s,function(o){var a=et.ushortList("backtrackGlyph",o.backtrack,o.backtrack.length).concat(et.ushortList("inputGlyph",o.input,o.input.length+1)).concat(et.ushortList("lookaheadGlyph",o.lookahead,o.lookahead.length)).concat(et.ushortList("substitution",[],o.lookupRecords.length));return o.lookupRecords.forEach(function(l,u){a=a.concat({name:"sequenceIndex"+u,type:"USHORT",value:l.sequenceIndex}).concat({name:"lookupListIndex"+u,type:"USHORT",value:l.lookupListIndex})}),new et.Table("chainRuleTable",a)}))})));return n}else if(e.substFormat===2)Dt.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(e.substFormat===3){var i=[{name:"substFormat",type:"USHORT",value:e.substFormat}];i.push({name:"backtrackGlyphCount",type:"USHORT",value:e.backtrackCoverage.length}),e.backtrackCoverage.forEach(function(s,o){i.push({name:"backtrackCoverage"+o,type:"TABLE",value:new et.Coverage(s)})}),i.push({name:"inputGlyphCount",type:"USHORT",value:e.inputCoverage.length}),e.inputCoverage.forEach(function(s,o){i.push({name:"inputCoverage"+o,type:"TABLE",value:new et.Coverage(s)})}),i.push({name:"lookaheadGlyphCount",type:"USHORT",value:e.lookaheadCoverage.length}),e.lookaheadCoverage.forEach(function(s,o){i.push({name:"lookaheadCoverage"+o,type:"TABLE",value:new et.Coverage(s)})}),i.push({name:"substitutionCount",type:"USHORT",value:e.lookupRecords.length}),e.lookupRecords.forEach(function(s,o){i=i.concat({name:"sequenceIndex"+o,type:"USHORT",value:s.sequenceIndex}).concat({name:"lookupListIndex"+o,type:"USHORT",value:s.lookupListIndex})});var r=new et.Table("chainContextTable",i);return r}Dt.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};function ade(t){return new et.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new et.ScriptList(t.scripts)},{name:"features",type:"TABLE",value:new et.FeatureList(t.features)},{name:"lookups",type:"TABLE",value:new et.LookupList(t.lookups,Q2)}])}var lde={parse:ode,make:ade};function ude(t,e){var n=new Ut.Parser(t,e),i=n.parseULong();Dt.argument(i===1,"Unsupported META table version."),n.parseULong(),n.parseULong();for(var r=n.parseULong(),s={},o=0;o<r;o++){var a=n.parseTag(),l=n.parseULong(),u=n.parseULong(),c=p2.UTF8(t,e+l,u);s[a]=c}return s}function cde(t){var e=Object.keys(t).length,n="",i=16+e*12,r=new et.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:i},{name:"numTags",type:"ULONG",value:e}]);for(var s in t){var o=n.length;n+=t[s],r.fields.push({name:"tag "+s,type:"TAG",value:s}),r.fields.push({name:"offset "+s,type:"ULONG",value:i+o}),r.fields.push({name:"length "+s,type:"ULONG",value:t[s].length})}return r.fields.push({name:"stringPool",type:"CHARARRAY",value:n}),r}var hde={parse:ude,make:cde};function iL(t){return Math.log(t)/Math.log(2)|0}function Dw(t){for(;t.length%4!==0;)t.push(0);for(var e=0,n=0;n<t.length;n+=4)e+=(t[n]<<24)+(t[n+1]<<16)+(t[n+2]<<8)+t[n+3];return e%=Math.pow(2,32),e}function rL(t,e,n,i){return new et.Record("Table Record",[{name:"tag",type:"TAG",value:t!==void 0?t:""},{name:"checkSum",type:"ULONG",value:e!==void 0?e:0},{name:"offset",type:"ULONG",value:n!==void 0?n:0},{name:"length",type:"ULONG",value:i!==void 0?i:0}])}function hW(t){var e=new et.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);e.tables=t,e.numTables=t.length;var n=Math.pow(2,iL(e.numTables));e.searchRange=16*n,e.entrySelector=iL(n),e.rangeShift=e.numTables*16-e.searchRange;for(var i=[],r=[],s=e.sizeOf()+rL().sizeOf()*e.numTables;s%4!==0;)s+=1,r.push({name:"padding",type:"BYTE",value:0});for(var o=0;o<t.length;o+=1){var a=t[o];Dt.argument(a.tableName.length===4,"Table name"+a.tableName+" is invalid.");var l=a.sizeOf(),u=rL(a.tableName,Dw(a.encode()),s,l);for(i.push({name:u.tag+" Table Record",type:"RECORD",value:u}),r.push({name:a.tableName+" table",type:"RECORD",value:a}),s+=l,Dt.argument(!isNaN(s),"Something went wrong calculating the offset.");s%4!==0;)s+=1,r.push({name:"padding",type:"BYTE",value:0})}return i.sort(function(c,h){return c.value.tag>h.value.tag?1:-1}),e.fields=e.fields.concat(i),e.fields=e.fields.concat(r),e}function sL(t,e,n){for(var i=0;i<e.length;i+=1){var r=t.charToGlyphIndex(e[i]);if(r>0){var s=t.glyphs.get(r);return s.getMetrics()}}return n}function fde(t){for(var e=0,n=0;n<t.length;n+=1)e+=t[n];return e/t.length}function dde(t){for(var e=[],n=[],i=[],r=[],s=[],o=[],a=[],l,u=0,c=0,h=0,f=0,m=0,g=0;g<t.glyphs.length;g+=1){var v=t.glyphs.get(g),_=v.unicode|0;if(isNaN(v.advanceWidth))throw new Error("Glyph "+v.name+" ("+g+"): advanceWidth is not a number.");(l>_||l===void 0)&&_>0&&(l=_),u<_&&(u=_);var A=nL.getUnicodeRange(_);if(A<32)c|=1<<A;else if(A<64)h|=1<<A-32;else if(A<96)f|=1<<A-64;else if(A<123)m|=1<<A-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(v.name!==".notdef"){var y=v.getMetrics();e.push(y.xMin),n.push(y.yMin),i.push(y.xMax),r.push(y.yMax),o.push(y.leftSideBearing),a.push(y.rightSideBearing),s.push(v.advanceWidth)}}var q={xMin:Math.min.apply(null,e),yMin:Math.min.apply(null,n),xMax:Math.max.apply(null,i),yMax:Math.max.apply(null,r),advanceWidthMax:Math.max.apply(null,s),advanceWidthAvg:fde(s),minLeftSideBearing:Math.min.apply(null,o),maxLeftSideBearing:Math.max.apply(null,o),minRightSideBearing:Math.min.apply(null,a)};q.ascender=t.ascender,q.descender=t.descender;var E=b5e.make({flags:3,unitsPerEm:t.unitsPerEm,xMin:q.xMin,yMin:q.yMin,xMax:q.xMax,yMax:q.yMax,lowestRecPPEM:3,createdTimestamp:t.createdTimestamp}),T=D5e.make({ascender:q.ascender,descender:q.descender,advanceWidthMax:q.advanceWidthMax,minLeftSideBearing:q.minLeftSideBearing,minRightSideBearing:q.minRightSideBearing,xMaxExtent:q.maxLeftSideBearing+(q.xMax-q.xMin),numberOfHMetrics:t.glyphs.length}),C=H5e.make(t.glyphs.length),I=nL.make(Object.assign({xAvgCharWidth:Math.round(q.advanceWidthAvg),usFirstCharIndex:l,usLastCharIndex:u,ulUnicodeRange1:c,ulUnicodeRange2:h,ulUnicodeRange3:f,ulUnicodeRange4:m,sTypoAscender:q.ascender,sTypoDescender:q.descender,sTypoLineGap:0,usWinAscent:q.yMax,usWinDescent:Math.abs(q.yMin),ulCodePageRange1:1,sxHeight:sL(t,"xyvw",{yMax:Math.round(q.ascender/2)}).yMax,sCapHeight:sL(t,"HIKLEFJMNTZBDPRAGOQSUVWXY",q).yMax,usDefaultChar:t.hasChar(" ")?32:0,usBreakChar:t.hasChar(" ")?32:0},t.tables.os2)),R=O5e.make(t.glyphs),M=e5e.make(t.glyphs),b=t.getEnglishName("fontFamily"),D=t.getEnglishName("fontSubfamily"),z=b+" "+D,O=t.getEnglishName("postScriptName");O||(O=b.replace(/\s/g,"")+"-"+D);var W={};for(var $ in t.names)W[$]=t.names[$];W.uniqueID||(W.uniqueID={en:t.getEnglishName("manufacturer")+":"+z}),W.postScriptName||(W.postScriptName={en:O}),W.preferredFamily||(W.preferredFamily=t.names.fontFamily),W.preferredSubfamily||(W.preferredSubfamily=t.names.fontSubfamily);var K=[],Y=Z5e.make(W,K),B=K.length>0?V5e.make(K):void 0,U=sde.make(),F=I5e.make(t.glyphs,{version:t.getEnglishName("version"),fullName:z,familyName:b,weightName:D,postScriptName:O,unitsPerEm:t.unitsPerEm,fontBBox:[0,q.yMin,q.ascender,q.advanceWidthMax]}),k=t.metas&&Object.keys(t.metas).length>0?hde.make(t.metas):void 0,Q=[E,T,C,I,Y,M,U,F,R];B&&Q.push(B),t.tables.gsub&&Q.push(lde.make(t.tables.gsub)),k&&Q.push(k);for(var ce=hW(Q),ae=ce.encode(),ge=Dw(ae),ye=ce.fields,xe=!1,Le=0;Le<ye.length;Le+=1)if(ye[Le].name==="head table"){ye[Le].value.checkSumAdjustment=2981146554-ge,xe=!0;break}if(!xe)throw new Error("Could not find head table with checkSum to adjust.");return ce}var pde={make:hW,fontToTable:dde,computeCheckSum:Dw};function Pq(t,e){for(var n=0,i=t.length-1;n<=i;){var r=n+i>>>1,s=t[r].tag;if(s===e)return r;s<e?n=r+1:i=r-1}return-n-1}function oL(t,e){for(var n=0,i=t.length-1;n<=i;){var r=n+i>>>1,s=t[r];if(s===e)return r;s<e?n=r+1:i=r-1}return-n-1}function aL(t,e){for(var n,i=0,r=t.length-1;i<=r;){var s=i+r>>>1;n=t[s];var o=n.start;if(o===e)return n;o<e?i=s+1:r=s-1}if(i>0)return n=t[i-1],e>n.end?0:n}function r6(t,e){this.font=t,this.tableName=e}r6.prototype={searchTag:Pq,binSearch:oL,getTable:function(t){var e=this.font.tables[this.tableName];return!e&&t&&(e=this.font.tables[this.tableName]=this.createDefaultTable()),e},getScriptNames:function(){var t=this.getTable();return t?t.scripts.map(function(e){return e.tag}):[]},getDefaultScriptName:function(){var t=this.getTable();if(t){for(var e=!1,n=0;n<t.scripts.length;n++){var i=t.scripts[n].tag;if(i==="DFLT")return i;i==="latn"&&(e=!0)}if(e)return"latn"}},getScriptTable:function(t,e){var n=this.getTable(e);if(n){t=t||"DFLT";var i=n.scripts,r=Pq(n.scripts,t);if(r>=0)return i[r].script;if(e){var s={tag:t,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return i.splice(-1-r,0,s),s.script}}},getLangSysTable:function(t,e,n){var i=this.getScriptTable(t,n);if(i){if(!e||e==="dflt"||e==="DFLT")return i.defaultLangSys;var r=Pq(i.langSysRecords,e);if(r>=0)return i.langSysRecords[r].langSys;if(n){var s={tag:e,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return i.langSysRecords.splice(-1-r,0,s),s.langSys}}},getFeatureTable:function(t,e,n,i){var r=this.getLangSysTable(t,e,i);if(r){for(var s,o=r.featureIndexes,a=this.font.tables[this.tableName].features,l=0;l<o.length;l++)if(s=a[o[l]],s.tag===n)return s.feature;if(i){var u=a.length;return Dt.assert(u===0||n>=a[u-1].tag,"Features must be added in alphabetical order."),s={tag:n,feature:{params:0,lookupListIndexes:[]}},a.push(s),o.push(u),s.feature}}},getLookupTables:function(t,e,n,i,r){var s=this.getFeatureTable(t,e,n,r),o=[];if(s){for(var a,l=s.lookupListIndexes,u=this.font.tables[this.tableName].lookups,c=0;c<l.length;c++)a=u[l[c]],a.lookupType===i&&o.push(a);if(o.length===0&&r){a={lookupType:i,lookupFlag:0,subtables:[],markFilteringSet:void 0};var h=u.length;return u.push(a),l.push(h),[a]}}return o},getGlyphClass:function(t,e){switch(t.format){case 1:return t.startGlyph<=e&&e<t.startGlyph+t.classes.length?t.classes[e-t.startGlyph]:0;case 2:var n=aL(t.ranges,e);return n?n.classId:0}},getCoverageIndex:function(t,e){switch(t.format){case 1:var n=oL(t.glyphs,e);return n>=0?n:-1;case 2:var i=aL(t.ranges,e);return i?i.index+e-i.start:-1}},expandCoverage:function(t){if(t.format===1)return t.glyphs;for(var e=[],n=t.ranges,i=0;i<n.length;i++)for(var r=n[i],s=r.start,o=r.end,a=s;a<=o;a++)e.push(a);return e}};function s6(t){r6.call(this,t,"gpos")}s6.prototype=r6.prototype;s6.prototype.init=function(){var t=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(t)};s6.prototype.getKerningValue=function(t,e,n){for(var i=0;i<t.length;i++)for(var r=t[i].subtables,s=0;s<r.length;s++){var o=r[s],a=this.getCoverageIndex(o.coverage,e);if(!(a<0))switch(o.posFormat){case 1:for(var l=o.pairSets[a],u=0;u<l.length;u++){var c=l[u];if(c.secondGlyph===n)return c.value1&&c.value1.xAdvance||0}break;case 2:var h=this.getGlyphClass(o.classDef1,e),f=this.getGlyphClass(o.classDef2,n),m=o.classRecords[h][f];return m.value1&&m.value1.xAdvance||0}}return 0};s6.prototype.getKerningTables=function(t,e){if(this.font.tables.gpos)return this.getLookupTables(t,e,"kern",2)};function ho(t){r6.call(this,t,"gsub")}function mde(t,e){var n=t.length;if(n!==e.length)return!1;for(var i=0;i<n;i++)if(t[i]!==e[i])return!1;return!0}function Lw(t,e,n){for(var i=t.subtables,r=0;r<i.length;r++){var s=i[r];if(s.substFormat===e)return s}if(n)return i.push(n),n}ho.prototype=r6.prototype;ho.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}};ho.prototype.getSingle=function(t,e,n){for(var i=[],r=this.getLookupTables(e,n,t,1),s=0;s<r.length;s++)for(var o=r[s].subtables,a=0;a<o.length;a++){var l=o[a],u=this.expandCoverage(l.coverage),c=void 0;if(l.substFormat===1){var h=l.deltaGlyphId;for(c=0;c<u.length;c++){var f=u[c];i.push({sub:f,by:f+h})}}else{var m=l.substitute;for(c=0;c<u.length;c++)i.push({sub:u[c],by:m[c]})}}return i};ho.prototype.getMultiple=function(t,e,n){for(var i=[],r=this.getLookupTables(e,n,t,2),s=0;s<r.length;s++)for(var o=r[s].subtables,a=0;a<o.length;a++){var l=o[a],u=this.expandCoverage(l.coverage),c=void 0;for(c=0;c<u.length;c++){var h=u[c],f=l.sequences[c];i.push({sub:h,by:f})}}return i};ho.prototype.getAlternates=function(t,e,n){for(var i=[],r=this.getLookupTables(e,n,t,3),s=0;s<r.length;s++)for(var o=r[s].subtables,a=0;a<o.length;a++)for(var l=o[a],u=this.expandCoverage(l.coverage),c=l.alternateSets,h=0;h<u.length;h++)i.push({sub:u[h],by:c[h]});return i};ho.prototype.getLigatures=function(t,e,n){for(var i=[],r=this.getLookupTables(e,n,t,4),s=0;s<r.length;s++)for(var o=r[s].subtables,a=0;a<o.length;a++)for(var l=o[a],u=this.expandCoverage(l.coverage),c=l.ligatureSets,h=0;h<u.length;h++)for(var f=u[h],m=c[h],g=0;g<m.length;g++){var v=m[g];i.push({sub:[f].concat(v.components),by:v.ligGlyph})}return i};ho.prototype.addSingle=function(t,e,n,i){var r=this.getLookupTables(n,i,t,1,!0)[0],s=Lw(r,2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});Dt.assert(s.coverage.format===1,"Single: unable to modify coverage table format "+s.coverage.format);var o=e.sub,a=this.binSearch(s.coverage.glyphs,o);a<0&&(a=-1-a,s.coverage.glyphs.splice(a,0,o),s.substitute.splice(a,0,0)),s.substitute[a]=e.by};ho.prototype.addMultiple=function(t,e,n,i){Dt.assert(e.by instanceof Array&&e.by.length>1,'Multiple: "by" must be an array of two or more ids');var r=this.getLookupTables(n,i,t,2,!0)[0],s=Lw(r,1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});Dt.assert(s.coverage.format===1,"Multiple: unable to modify coverage table format "+s.coverage.format);var o=e.sub,a=this.binSearch(s.coverage.glyphs,o);a<0&&(a=-1-a,s.coverage.glyphs.splice(a,0,o),s.sequences.splice(a,0,0)),s.sequences[a]=e.by};ho.prototype.addAlternate=function(t,e,n,i){var r=this.getLookupTables(n,i,t,3,!0)[0],s=Lw(r,1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});Dt.assert(s.coverage.format===1,"Alternate: unable to modify coverage table format "+s.coverage.format);var o=e.sub,a=this.binSearch(s.coverage.glyphs,o);a<0&&(a=-1-a,s.coverage.glyphs.splice(a,0,o),s.alternateSets.splice(a,0,0)),s.alternateSets[a]=e.by};ho.prototype.addLigature=function(t,e,n,i){var r=this.getLookupTables(n,i,t,4,!0)[0],s=r.subtables[0];s||(s={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},r.subtables[0]=s),Dt.assert(s.coverage.format===1,"Ligature: unable to modify coverage table format "+s.coverage.format);var o=e.sub[0],a=e.sub.slice(1),l={ligGlyph:e.by,components:a},u=this.binSearch(s.coverage.glyphs,o);if(u>=0){for(var c=s.ligatureSets[u],h=0;h<c.length;h++)if(mde(c[h].components,a))return;c.push(l)}else u=-1-u,s.coverage.glyphs.splice(u,0,o),s.ligatureSets.splice(u,0,[l])};ho.prototype.getFeature=function(t,e,n){if(/ss\d\d/.test(t))return this.getSingle(t,e,n);switch(t){case"aalt":case"salt":return this.getSingle(t,e,n).concat(this.getAlternates(t,e,n));case"dlig":case"liga":case"rlig":return this.getLigatures(t,e,n);case"ccmp":return this.getMultiple(t,e,n).concat(this.getLigatures(t,e,n));case"stch":return this.getMultiple(t,e,n)}};ho.prototype.add=function(t,e,n,i){if(/ss\d\d/.test(t))return this.addSingle(t,e,n,i);switch(t){case"aalt":case"salt":return typeof e.by=="number"?this.addSingle(t,e,n,i):this.addAlternate(t,e,n,i);case"dlig":case"liga":case"rlig":return this.addLigature(t,e,n,i);case"ccmp":return e.by instanceof Array?this.addMultiple(t,e,n,i):this.addLigature(t,e,n,i)}};function gde(){return typeof window<"u"}function Ade(t){for(var e=new Buffer(t.byteLength),n=new Uint8Array(t),i=0;i<e.length;++i)e[i]=n[i];return e}function Qf(t,e){if(!t)throw e}function lL(t,e,n,i,r){var s;return(e&i)>0?(s=t.parseByte(),e&r||(s=-s),s=n+s):(e&r)>0?s=n:s=n+t.parseShort(),s}function fW(t,e,n){var i=new Ut.Parser(e,n);t.numberOfContours=i.parseShort(),t._xMin=i.parseShort(),t._yMin=i.parseShort(),t._xMax=i.parseShort(),t._yMax=i.parseShort();var r,s;if(t.numberOfContours>0){for(var o=t.endPointIndices=[],a=0;a<t.numberOfContours;a+=1)o.push(i.parseUShort());t.instructionLength=i.parseUShort(),t.instructions=[];for(var l=0;l<t.instructionLength;l+=1)t.instructions.push(i.parseByte());var u=o[o.length-1]+1;r=[];for(var c=0;c<u;c+=1)if(s=i.parseByte(),r.push(s),(s&8)>0)for(var h=i.parseByte(),f=0;f<h;f+=1)r.push(s),c+=1;if(Dt.argument(r.length===u,"Bad flags."),o.length>0){var m=[],g;if(u>0){for(var v=0;v<u;v+=1)s=r[v],g={},g.onCurve=!!(s&1),g.lastPointOfContour=o.indexOf(v)>=0,m.push(g);for(var _=0,A=0;A<u;A+=1)s=r[A],g=m[A],g.x=lL(i,s,_,2,16),_=g.x;for(var y=0,q=0;q<u;q+=1)s=r[q],g=m[q],g.y=lL(i,s,y,4,32),y=g.y}t.points=m}else t.points=[]}else if(t.numberOfContours===0)t.points=[];else{t.isComposite=!0,t.points=[],t.components=[];for(var E=!0;E;){r=i.parseUShort();var T={glyphIndex:i.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(r&1)>0?(r&2)>0?(T.dx=i.parseShort(),T.dy=i.parseShort()):T.matchedPoints=[i.parseUShort(),i.parseUShort()]:(r&2)>0?(T.dx=i.parseChar(),T.dy=i.parseChar()):T.matchedPoints=[i.parseByte(),i.parseByte()],(r&8)>0?T.xScale=T.yScale=i.parseF2Dot14():(r&64)>0?(T.xScale=i.parseF2Dot14(),T.yScale=i.parseF2Dot14()):(r&128)>0&&(T.xScale=i.parseF2Dot14(),T.scale01=i.parseF2Dot14(),T.scale10=i.parseF2Dot14(),T.yScale=i.parseF2Dot14()),t.components.push(T),E=!!(r&32)}if(r&256){t.instructionLength=i.parseUShort(),t.instructions=[];for(var C=0;C<t.instructionLength;C+=1)t.instructions.push(i.parseByte())}}}function Bq(t,e){for(var n=[],i=0;i<t.length;i+=1){var r=t[i],s={x:e.xScale*r.x+e.scale01*r.y+e.dx,y:e.scale10*r.x+e.yScale*r.y+e.dy,onCurve:r.onCurve,lastPointOfContour:r.lastPointOfContour};n.push(s)}return n}function vde(t){for(var e=[],n=[],i=0;i<t.length;i+=1){var r=t[i];n.push(r),r.lastPointOfContour&&(e.push(n),n=[])}return Dt.argument(n.length===0,"There are still points left in the current contour."),e}function dW(t){var e=new Ki;if(!t)return e;for(var n=vde(t),i=0;i<n.length;++i){var r=n[i],s=null,o=r[r.length-1],a=r[0];if(o.onCurve)e.moveTo(o.x,o.y);else if(a.onCurve)e.moveTo(a.x,a.y);else{var l={x:(o.x+a.x)*.5,y:(o.y+a.y)*.5};e.moveTo(l.x,l.y)}for(var u=0;u<r.length;++u)if(s=o,o=a,a=r[(u+1)%r.length],o.onCurve)e.lineTo(o.x,o.y);else{var c=a;s.onCurve||((o.x+s.x)*.5,(o.y+s.y)*.5),a.onCurve||(c={x:(o.x+a.x)*.5,y:(o.y+a.y)*.5}),e.quadraticCurveTo(o.x,o.y,c.x,c.y)}e.closePath()}return e}function pW(t,e){if(e.isComposite)for(var n=0;n<e.components.length;n+=1){var i=e.components[n],r=t.get(i.glyphIndex);if(r.getPath(),r.points){var s=void 0;if(i.matchedPoints===void 0)s=Bq(r.points,i);else{if(i.matchedPoints[0]>e.points.length-1||i.matchedPoints[1]>r.points.length-1)throw Error("Matched points out of range in "+e.name);var o=e.points[i.matchedPoints[0]],a=r.points[i.matchedPoints[1]],l={xScale:i.xScale,scale01:i.scale01,scale10:i.scale10,yScale:i.yScale,dx:0,dy:0};a=Bq([a],l)[0],l.dx=o.x-a.x,l.dy=o.y-a.y,s=Bq(r.points,l)}e.points=e.points.concat(s)}}return dW(e.points)}function yde(t,e,n,i){for(var r=new hl.GlyphSet(i),s=0;s<n.length-1;s+=1){var o=n[s],a=n[s+1];o!==a?r.push(s,hl.ttfGlyphLoader(i,s,fW,t,e+o,pW)):r.push(s,hl.glyphLoader(i,s))}return r}function qde(t,e,n,i){var r=new hl.GlyphSet(i);return i._push=function(s){var o=n[s],a=n[s+1];o!==a?r.push(s,hl.ttfGlyphLoader(i,s,fW,t,e+o,pW)):r.push(s,hl.glyphLoader(i,s))},r}function _de(t,e,n,i,r){return r.lowMemory?qde(t,e,n,i):yde(t,e,n,i)}var xde={getPath:dW,parse:_de},mW,b1,gW,jE;function AW(t){this.font=t,this.getCommands=function(e){return xde.getPath(e).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function Ede(t){return t}function vW(t){return Math.sign(t)*Math.round(Math.abs(t))}function Sde(t){return Math.sign(t)*Math.round(Math.abs(t*2))/2}function Tde(t){return Math.sign(t)*(Math.round(Math.abs(t)+.5)-.5)}function Cde(t){return Math.sign(t)*Math.ceil(Math.abs(t))}function wde(t){return Math.sign(t)*Math.floor(Math.abs(t))}var yW=function(t){var e=this.srPeriod,n=this.srPhase,i=this.srThreshold,r=1;return t<0&&(t=-t,r=-1),t+=i-n,t=Math.trunc(t/e)*e,t+=n,t<0?n*r:t*r},nl={x:1,y:0,axis:"x",distance:function(t,e,n,i){return(n?t.xo:t.x)-(i?e.xo:e.x)},interpolate:function(t,e,n,i){var r,s,o,a,l,u,c;if(!i||i===this){if(r=t.xo-e.xo,s=t.xo-n.xo,l=e.x-e.xo,u=n.x-n.xo,o=Math.abs(r),a=Math.abs(s),c=o+a,c===0){t.x=t.xo+(l+u)/2;return}t.x=t.xo+(l*a+u*o)/c;return}if(r=i.distance(t,e,!0,!0),s=i.distance(t,n,!0,!0),l=i.distance(e,e,!1,!0),u=i.distance(n,n,!1,!0),o=Math.abs(r),a=Math.abs(s),c=o+a,c===0){nl.setRelative(t,t,(l+u)/2,i,!0);return}nl.setRelative(t,t,(l*a+u*o)/c,i,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(t,e,n,i,r){if(!i||i===this){t.x=(r?e.xo:e.x)+n;return}var s=r?e.xo:e.x,o=r?e.yo:e.y,a=s+n*i.x,l=o+n*i.y;t.x=a+(t.y-l)/i.normalSlope},slope:0,touch:function(t){t.xTouched=!0},touched:function(t){return t.xTouched},untouch:function(t){t.xTouched=!1}},Zl={x:0,y:1,axis:"y",distance:function(t,e,n,i){return(n?t.yo:t.y)-(i?e.yo:e.y)},interpolate:function(t,e,n,i){var r,s,o,a,l,u,c;if(!i||i===this){if(r=t.yo-e.yo,s=t.yo-n.yo,l=e.y-e.yo,u=n.y-n.yo,o=Math.abs(r),a=Math.abs(s),c=o+a,c===0){t.y=t.yo+(l+u)/2;return}t.y=t.yo+(l*a+u*o)/c;return}if(r=i.distance(t,e,!0,!0),s=i.distance(t,n,!0,!0),l=i.distance(e,e,!1,!0),u=i.distance(n,n,!1,!0),o=Math.abs(r),a=Math.abs(s),c=o+a,c===0){Zl.setRelative(t,t,(l+u)/2,i,!0);return}Zl.setRelative(t,t,(l*a+u*o)/c,i,!0)},normalSlope:0,setRelative:function(t,e,n,i,r){if(!i||i===this){t.y=(r?e.yo:e.y)+n;return}var s=r?e.xo:e.x,o=r?e.yo:e.y,a=s+n*i.x,l=o+n*i.y;t.y=l+i.normalSlope*(t.x-a)},slope:Number.POSITIVE_INFINITY,touch:function(t){t.yTouched=!0},touched:function(t){return t.yTouched},untouch:function(t){t.yTouched=!1}};Object.freeze(nl);Object.freeze(Zl);function o6(t,e){this.x=t,this.y=e,this.axis=void 0,this.slope=e/t,this.normalSlope=-t/e,Object.freeze(this)}o6.prototype.distance=function(t,e,n,i){return this.x*nl.distance(t,e,n,i)+this.y*Zl.distance(t,e,n,i)};o6.prototype.interpolate=function(t,e,n,i){var r,s,o,a,l,u,c;if(o=i.distance(t,e,!0,!0),a=i.distance(t,n,!0,!0),r=i.distance(e,e,!1,!0),s=i.distance(n,n,!1,!0),l=Math.abs(o),u=Math.abs(a),c=l+u,c===0){this.setRelative(t,t,(r+s)/2,i,!0);return}this.setRelative(t,t,(r*u+s*l)/c,i,!0)};o6.prototype.setRelative=function(t,e,n,i,r){i=i||this;var s=r?e.xo:e.x,o=r?e.yo:e.y,a=s+n*i.x,l=o+n*i.y,u=i.normalSlope,c=this.slope,h=t.x,f=t.y;t.x=(c*h-u*a+l-f)/(c-u),t.y=c*(t.x-h)+f};o6.prototype.touch=function(t){t.xTouched=!0,t.yTouched=!0};function a6(t,e){var n=Math.sqrt(t*t+e*e);return t/=n,e/=n,t===1&&e===0?nl:t===0&&e===1?Zl:new o6(t,e)}function nu(t,e,n,i){this.x=this.xo=Math.round(t*64)/64,this.y=this.yo=Math.round(e*64)/64,this.lastPointOfContour=n,this.onCurve=i,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}nu.prototype.nextTouched=function(t){for(var e=this.nextPointOnContour;!t.touched(e)&&e!==this;)e=e.nextPointOnContour;return e};nu.prototype.prevTouched=function(t){for(var e=this.prevPointOnContour;!t.touched(e)&&e!==this;)e=e.prevPointOnContour;return e};var m4=Object.freeze(new nu(0,0)),Ide={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function fc(t,e){switch(this.env=t,this.stack=[],this.prog=e,t){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=nl,this.round=vW}}AW.prototype.exec=function(t,e){if(typeof e!="number")throw new Error("Point size is not a number!");if(!(this._errorState>2)){var n=this.font,i=this._prepState;if(!i||i.ppem!==e){var r=this._fpgmState;if(!r){fc.prototype=Ide,r=this._fpgmState=new fc("fpgm",n.tables.fpgm),r.funcs=[],r.font=n,Ae.DEBUG&&(console.log("---EXEC FPGM---"),r.step=-1);try{b1(r)}catch(u){console.log("Hinting error in FPGM:"+u),this._errorState=3;return}}fc.prototype=r,i=this._prepState=new fc("prep",n.tables.prep),i.ppem=e;var s=n.tables.cvt;if(s)for(var o=i.cvt=new Array(s.length),a=e/n.unitsPerEm,l=0;l<s.length;l++)o[l]=s[l]*a;else i.cvt=[];Ae.DEBUG&&(console.log("---EXEC PREP---"),i.step=-1);try{b1(i)}catch(u){this._errorState<2&&console.log("Hinting error in PREP:"+u),this._errorState=2}}if(!(this._errorState>1))try{return gW(t,i)}catch(u){this._errorState<1&&(console.log("Hinting error:"+u),console.log("Note: further hinting errors are silenced")),this._errorState=1;return}}};gW=function(t,e){var n=e.ppem/e.font.unitsPerEm,i=n,r=t.components,s,o,a;if(fc.prototype=e,!r)a=new fc("glyf",t.instructions),Ae.DEBUG&&(console.log("---EXEC GLYPH---"),a.step=-1),jE(t,a,n,i),o=a.gZone;else{var l=e.font;o=[],s=[];for(var u=0;u<r.length;u++){var c=r[u],h=l.glyphs.get(c.glyphIndex);a=new fc("glyf",h.instructions),Ae.DEBUG&&(console.log("---EXEC COMP "+u+"---"),a.step=-1),jE(h,a,n,i);for(var f=Math.round(c.dx*n),m=Math.round(c.dy*i),g=a.gZone,v=a.contours,_=0;_<g.length;_++){var A=g[_];A.xTouched=A.yTouched=!1,A.xo=A.x=A.x+f,A.yo=A.y=A.y+m}var y=o.length;o.push.apply(o,g);for(var q=0;q<v.length;q++)s.push(v[q]+y)}t.instructions&&!a.inhibitGridFit&&(a=new fc("glyf",t.instructions),a.gZone=a.z0=a.z1=a.z2=o,a.contours=s,o.push(new nu(0,0),new nu(Math.round(t.advanceWidth*n),0)),Ae.DEBUG&&(console.log("---EXEC COMPOSITE---"),a.step=-1),b1(a),o.length-=2)}return o};jE=function(t,e,n,i){for(var r=t.points||[],s=r.length,o=e.gZone=e.z0=e.z1=e.z2=[],a=e.contours=[],l,u=0;u<s;u++)l=r[u],o[u]=new nu(l.x*n,l.y*i,l.lastPointOfContour,l.onCurve);for(var c,h,f=0;f<s;f++)l=o[f],c||(c=l,a.push(f)),l.lastPointOfContour?(l.nextPointOnContour=c,c.prevPointOnContour=l,c=void 0):(h=o[f+1],l.nextPointOnContour=h,h.prevPointOnContour=l);if(!e.inhibitGridFit){if(Ae.DEBUG){console.log("PROCESSING GLYPH",e.stack);for(var m=0;m<s;m++)console.log(m,o[m].x,o[m].y)}if(o.push(new nu(0,0),new nu(Math.round(t.advanceWidth*n),0)),b1(e),o.length-=2,Ae.DEBUG){console.log("FINISHED GLYPH",e.stack);for(var g=0;g<s;g++)console.log(g,o[g].x,o[g].y)}}};b1=function(t){var e=t.prog;if(e){var n=e.length,i;for(t.ip=0;t.ip<n;t.ip++){if(Ae.DEBUG&&t.step++,i=mW[e[t.ip]],!i)throw new Error("unknown instruction: 0x"+Number(e[t.ip]).toString(16));i(t)}}};function Xg(t){for(var e=t.tZone=new Array(t.gZone.length),n=0;n<e.length;n++)e[n]=new nu(0,0)}function qW(t,e){var n=t.prog,i=t.ip,r=1,s;do if(s=n[++i],s===88)r++;else if(s===89)r--;else if(s===64)i+=n[i+1]+1;else if(s===65)i+=2*n[i+1]+1;else if(s>=176&&s<=183)i+=s-176+1;else if(s>=184&&s<=191)i+=(s-184+1)*2;else if(e&&r===1&&s===27)break;while(r>0);t.ip=i}function uL(t,e){Ae.DEBUG&&console.log(e.step,"SVTCA["+t.axis+"]"),e.fv=e.pv=e.dpv=t}function cL(t,e){Ae.DEBUG&&console.log(e.step,"SPVTCA["+t.axis+"]"),e.pv=e.dpv=t}function hL(t,e){Ae.DEBUG&&console.log(e.step,"SFVTCA["+t.axis+"]"),e.fv=t}function fL(t,e){var n=e.stack,i=n.pop(),r=n.pop(),s=e.z2[i],o=e.z1[r];Ae.DEBUG&&console.log("SPVTL["+t+"]",i,r);var a,l;t?(a=s.y-o.y,l=o.x-s.x):(a=o.x-s.x,l=o.y-s.y),e.pv=e.dpv=a6(a,l)}function dL(t,e){var n=e.stack,i=n.pop(),r=n.pop(),s=e.z2[i],o=e.z1[r];Ae.DEBUG&&console.log("SFVTL["+t+"]",i,r);var a,l;t?(a=s.y-o.y,l=o.x-s.x):(a=o.x-s.x,l=o.y-s.y),e.fv=a6(a,l)}function Mde(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"SPVFS[]",n,i),t.pv=t.dpv=a6(i,n)}function Rde(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"SPVFS[]",n,i),t.fv=a6(i,n)}function bde(t){var e=t.stack,n=t.pv;Ae.DEBUG&&console.log(t.step,"GPV[]"),e.push(n.x*16384),e.push(n.y*16384)}function Pde(t){var e=t.stack,n=t.fv;Ae.DEBUG&&console.log(t.step,"GFV[]"),e.push(n.x*16384),e.push(n.y*16384)}function Bde(t){t.fv=t.pv,Ae.DEBUG&&console.log(t.step,"SFVTPV[]")}function Dde(t){var e=t.stack,n=e.pop(),i=e.pop(),r=e.pop(),s=e.pop(),o=e.pop(),a=t.z0,l=t.z1,u=a[n],c=a[i],h=l[r],f=l[s],m=t.z2[o];Ae.DEBUG&&console.log("ISECT[], ",n,i,r,s,o);var g=u.x,v=u.y,_=c.x,A=c.y,y=h.x,q=h.y,E=f.x,T=f.y,C=(g-_)*(q-T)-(v-A)*(y-E),I=g*A-v*_,R=y*T-q*E;m.x=(I*(y-E)-R*(g-_))/C,m.y=(I*(q-T)-R*(v-A))/C}function Lde(t){t.rp0=t.stack.pop(),Ae.DEBUG&&console.log(t.step,"SRP0[]",t.rp0)}function Nde(t){t.rp1=t.stack.pop(),Ae.DEBUG&&console.log(t.step,"SRP1[]",t.rp1)}function kde(t){t.rp2=t.stack.pop(),Ae.DEBUG&&console.log(t.step,"SRP2[]",t.rp2)}function Fde(t){var e=t.stack.pop();switch(Ae.DEBUG&&console.log(t.step,"SZP0[]",e),t.zp0=e,e){case 0:t.tZone||Xg(t),t.z0=t.tZone;break;case 1:t.z0=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function Ode(t){var e=t.stack.pop();switch(Ae.DEBUG&&console.log(t.step,"SZP1[]",e),t.zp1=e,e){case 0:t.tZone||Xg(t),t.z1=t.tZone;break;case 1:t.z1=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function Ude(t){var e=t.stack.pop();switch(Ae.DEBUG&&console.log(t.step,"SZP2[]",e),t.zp2=e,e){case 0:t.tZone||Xg(t),t.z2=t.tZone;break;case 1:t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function zde(t){var e=t.stack.pop();switch(Ae.DEBUG&&console.log(t.step,"SZPS[]",e),t.zp0=t.zp1=t.zp2=e,e){case 0:t.tZone||Xg(t),t.z0=t.z1=t.z2=t.tZone;break;case 1:t.z0=t.z1=t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function Vde(t){t.loop=t.stack.pop(),Ae.DEBUG&&console.log(t.step,"SLOOP[]",t.loop)}function Gde(t){Ae.DEBUG&&console.log(t.step,"RTG[]"),t.round=vW}function Qde(t){Ae.DEBUG&&console.log(t.step,"RTHG[]"),t.round=Tde}function Hde(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"SMD[]",e),t.minDis=e/64}function Wde(t){Ae.DEBUG&&console.log(t.step,"ELSE[]"),qW(t,!1)}function $de(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"JMPR[]",e),t.ip+=e-1}function jde(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"SCVTCI[]",e),t.cvCutIn=e/64}function Xde(t){var e=t.stack;Ae.DEBUG&&console.log(t.step,"DUP[]"),e.push(e[e.length-1])}function Dq(t){Ae.DEBUG&&console.log(t.step,"POP[]"),t.stack.pop()}function Yde(t){Ae.DEBUG&&console.log(t.step,"CLEAR[]"),t.stack.length=0}function Kde(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"SWAP[]"),e.push(n),e.push(i)}function Jde(t){var e=t.stack;Ae.DEBUG&&console.log(t.step,"DEPTH[]"),e.push(e.length)}function Zde(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"LOOPCALL[]",n,i);var r=t.ip,s=t.prog;t.prog=t.funcs[n];for(var o=0;o<i;o++)b1(t),Ae.DEBUG&&console.log(++t.step,o+1<i?"next loopcall":"done loopcall",o);t.ip=r,t.prog=s}function e4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"CALL[]",e);var n=t.ip,i=t.prog;t.prog=t.funcs[e],b1(t),t.ip=n,t.prog=i,Ae.DEBUG&&console.log(++t.step,"returning from",e)}function t4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"CINDEX[]",n),e.push(e[e.length-n])}function n4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"MINDEX[]",n),e.push(e.splice(e.length-n,1)[0])}function i4e(t){if(t.env!=="fpgm")throw new Error("FDEF not allowed here");var e=t.stack,n=t.prog,i=t.ip,r=e.pop(),s=i;for(Ae.DEBUG&&console.log(t.step,"FDEF[]",r);n[++i]!==45;);t.ip=i,t.funcs[r]=n.slice(s+1,i)}function pL(t,e){var n=e.stack.pop(),i=e.z0[n],r=e.fv,s=e.pv;Ae.DEBUG&&console.log(e.step,"MDAP["+t+"]",n);var o=s.distance(i,m4);t&&(o=e.round(o)),r.setRelative(i,m4,o,s),r.touch(i),e.rp0=e.rp1=n}function mL(t,e){var n=e.z2,i=n.length-2,r,s,o;Ae.DEBUG&&console.log(e.step,"IUP["+t.axis+"]");for(var a=0;a<i;a++)r=n[a],!t.touched(r)&&(s=r.prevTouched(t),s!==r&&(o=r.nextTouched(t),s===o&&t.setRelative(r,r,t.distance(s,s,!1,!0),t,!0),t.interpolate(r,s,o,t)))}function gL(t,e){for(var n=e.stack,i=t?e.rp1:e.rp2,r=(t?e.z0:e.z1)[i],s=e.fv,o=e.pv,a=e.loop,l=e.z2;a--;){var u=n.pop(),c=l[u],h=o.distance(r,r,!1,!0);s.setRelative(c,c,h,o),s.touch(c),Ae.DEBUG&&console.log(e.step,(e.loop>1?"loop "+(e.loop-a)+": ":"")+"SHP["+(t?"rp1":"rp2")+"]",u)}e.loop=1}function AL(t,e){var n=e.stack,i=t?e.rp1:e.rp2,r=(t?e.z0:e.z1)[i],s=e.fv,o=e.pv,a=n.pop(),l=e.z2[e.contours[a]],u=l;Ae.DEBUG&&console.log(e.step,"SHC["+t+"]",a);var c=o.distance(r,r,!1,!0);do u!==r&&s.setRelative(u,u,c,o),u=u.nextPointOnContour;while(u!==l)}function vL(t,e){var n=e.stack,i=t?e.rp1:e.rp2,r=(t?e.z0:e.z1)[i],s=e.fv,o=e.pv,a=n.pop();Ae.DEBUG&&console.log(e.step,"SHZ["+t+"]",a);var l;switch(a){case 0:l=e.tZone;break;case 1:l=e.gZone;break;default:throw new Error("Invalid zone")}for(var u,c=o.distance(r,r,!1,!0),h=l.length-2,f=0;f<h;f++)u=l[f],s.setRelative(u,u,c,o)}function r4e(t){for(var e=t.stack,n=t.loop,i=t.fv,r=e.pop()/64,s=t.z2;n--;){var o=e.pop(),a=s[o];Ae.DEBUG&&console.log(t.step,(t.loop>1?"loop "+(t.loop-n)+": ":"")+"SHPIX[]",o,r),i.setRelative(a,a,r),i.touch(a)}t.loop=1}function s4e(t){for(var e=t.stack,n=t.rp1,i=t.rp2,r=t.loop,s=t.z0[n],o=t.z1[i],a=t.fv,l=t.dpv,u=t.z2;r--;){var c=e.pop(),h=u[c];Ae.DEBUG&&console.log(t.step,(t.loop>1?"loop "+(t.loop-r)+": ":"")+"IP[]",c,n,"<->",i),a.interpolate(h,s,o,l),a.touch(h)}t.loop=1}function yL(t,e){var n=e.stack,i=n.pop()/64,r=n.pop(),s=e.z1[r],o=e.z0[e.rp0],a=e.fv,l=e.pv;a.setRelative(s,o,i,l),a.touch(s),Ae.DEBUG&&console.log(e.step,"MSIRP["+t+"]",i,r),e.rp1=e.rp0,e.rp2=r,t&&(e.rp0=r)}function o4e(t){for(var e=t.stack,n=t.rp0,i=t.z0[n],r=t.loop,s=t.fv,o=t.pv,a=t.z1;r--;){var l=e.pop(),u=a[l];Ae.DEBUG&&console.log(t.step,(t.loop>1?"loop "+(t.loop-r)+": ":"")+"ALIGNRP[]",l),s.setRelative(u,i,0,o),s.touch(u)}t.loop=1}function a4e(t){Ae.DEBUG&&console.log(t.step,"RTDG[]"),t.round=Sde}function qL(t,e){var n=e.stack,i=n.pop(),r=n.pop(),s=e.z0[r],o=e.fv,a=e.pv,l=e.cvt[i];Ae.DEBUG&&console.log(e.step,"MIAP["+t+"]",i,"(",l,")",r);var u=a.distance(s,m4);t&&(Math.abs(u-l)<e.cvCutIn&&(u=l),u=e.round(u)),o.setRelative(s,m4,u,a),e.zp0===0&&(s.xo=s.x,s.yo=s.y),o.touch(s),e.rp0=e.rp1=r}function l4e(t){var e=t.prog,n=t.ip,i=t.stack,r=e[++n];Ae.DEBUG&&console.log(t.step,"NPUSHB[]",r);for(var s=0;s<r;s++)i.push(e[++n]);t.ip=n}function u4e(t){var e=t.ip,n=t.prog,i=t.stack,r=n[++e];Ae.DEBUG&&console.log(t.step,"NPUSHW[]",r);for(var s=0;s<r;s++){var o=n[++e]<<8|n[++e];o&32768&&(o=-((o^65535)+1)),i.push(o)}t.ip=e}function c4e(t){var e=t.stack,n=t.store;n||(n=t.store=[]);var i=e.pop(),r=e.pop();Ae.DEBUG&&console.log(t.step,"WS",i,r),n[r]=i}function h4e(t){var e=t.stack,n=t.store,i=e.pop();Ae.DEBUG&&console.log(t.step,"RS",i);var r=n&&n[i]||0;e.push(r)}function f4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"WCVTP",n,i),t.cvt[i]=n/64}function d4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"RCVT",n),e.push(t.cvt[n]*64)}function _L(t,e){var n=e.stack,i=n.pop(),r=e.z2[i];Ae.DEBUG&&console.log(e.step,"GC["+t+"]",i),n.push(e.dpv.distance(r,m4,t,!1)*64)}function xL(t,e){var n=e.stack,i=n.pop(),r=n.pop(),s=e.z1[i],o=e.z0[r],a=e.dpv.distance(o,s,t,t);Ae.DEBUG&&console.log(e.step,"MD["+t+"]",i,r,"->",a),e.stack.push(Math.round(a*64))}function p4e(t){Ae.DEBUG&&console.log(t.step,"MPPEM[]"),t.stack.push(t.ppem)}function m4e(t){Ae.DEBUG&&console.log(t.step,"FLIPON[]"),t.autoFlip=!0}function g4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"LT[]",n,i),e.push(i<n?1:0)}function A4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"LTEQ[]",n,i),e.push(i<=n?1:0)}function v4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"GT[]",n,i),e.push(i>n?1:0)}function y4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"GTEQ[]",n,i),e.push(i>=n?1:0)}function q4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"EQ[]",n,i),e.push(n===i?1:0)}function _4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"NEQ[]",n,i),e.push(n!==i?1:0)}function x4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"ODD[]",n),e.push(Math.trunc(n)%2?1:0)}function E4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"EVEN[]",n),e.push(Math.trunc(n)%2?0:1)}function S4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"IF[]",e),e||(qW(t,!0),Ae.DEBUG&&console.log(t.step,"EIF[]"))}function T4e(t){Ae.DEBUG&&console.log(t.step,"EIF[]")}function C4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"AND[]",n,i),e.push(n&&i?1:0)}function w4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"OR[]",n,i),e.push(n||i?1:0)}function I4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"NOT[]",n),e.push(n?0:1)}function Lq(t,e){var n=e.stack,i=n.pop(),r=e.fv,s=e.pv,o=e.ppem,a=e.deltaBase+(t-1)*16,l=e.deltaShift,u=e.z0;Ae.DEBUG&&console.log(e.step,"DELTAP["+t+"]",i,n);for(var c=0;c<i;c++){var h=n.pop(),f=n.pop(),m=a+((f&240)>>4);if(m===o){var g=(f&15)-8;g>=0&&g++,Ae.DEBUG&&console.log(e.step,"DELTAPFIX",h,"by",g*l);var v=u[h];r.setRelative(v,v,g*l,s)}}}function M4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"SDB[]",n),t.deltaBase=n}function R4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"SDS[]",n),t.deltaShift=Math.pow(.5,n)}function b4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"ADD[]",n,i),e.push(i+n)}function P4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"SUB[]",n,i),e.push(i-n)}function B4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"DIV[]",n,i),e.push(i*64/n)}function D4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"MUL[]",n,i),e.push(i*n/64)}function L4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"ABS[]",n),e.push(Math.abs(n))}function N4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"NEG[]",n),e.push(-n)}function k4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"FLOOR[]",n),e.push(Math.floor(n/64)*64)}function F4e(t){var e=t.stack,n=e.pop();Ae.DEBUG&&console.log(t.step,"CEILING[]",n),e.push(Math.ceil(n/64)*64)}function j7(t,e){var n=e.stack,i=n.pop();Ae.DEBUG&&console.log(e.step,"ROUND[]"),n.push(e.round(i/64)*64)}function O4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"WCVTF[]",n,i),t.cvt[i]=n*t.ppem/t.font.unitsPerEm}function Nq(t,e){var n=e.stack,i=n.pop(),r=e.ppem,s=e.deltaBase+(t-1)*16,o=e.deltaShift;Ae.DEBUG&&console.log(e.step,"DELTAC["+t+"]",i,n);for(var a=0;a<i;a++){var l=n.pop(),u=n.pop(),c=s+((u&240)>>4);if(c===r){var h=(u&15)-8;h>=0&&h++;var f=h*o;Ae.DEBUG&&console.log(e.step,"DELTACFIX",l,"by",f),e.cvt[l]+=f}}}function U4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"SROUND[]",e),t.round=yW;var n;switch(e&192){case 0:n=.5;break;case 64:n=1;break;case 128:n=2;break;default:throw new Error("invalid SROUND value")}switch(t.srPeriod=n,e&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*n;break;case 32:t.srPhase=.5*n;break;case 48:t.srPhase=.75*n;break;default:throw new Error("invalid SROUND value")}e&=15,e===0?t.srThreshold=0:t.srThreshold=(e/8-.5)*n}function z4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"S45ROUND[]",e),t.round=yW;var n;switch(e&192){case 0:n=Math.sqrt(2)/2;break;case 64:n=Math.sqrt(2);break;case 128:n=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(t.srPeriod=n,e&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*n;break;case 32:t.srPhase=.5*n;break;case 48:t.srPhase=.75*n;break;default:throw new Error("invalid S45ROUND value")}e&=15,e===0?t.srThreshold=0:t.srThreshold=(e/8-.5)*n}function V4e(t){Ae.DEBUG&&console.log(t.step,"ROFF[]"),t.round=Ede}function G4e(t){Ae.DEBUG&&console.log(t.step,"RUTG[]"),t.round=Cde}function Q4e(t){Ae.DEBUG&&console.log(t.step,"RDTG[]"),t.round=wde}function H4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"SCANCTRL[]",e)}function EL(t,e){var n=e.stack,i=n.pop(),r=n.pop(),s=e.z2[i],o=e.z1[r];Ae.DEBUG&&console.log(e.step,"SDPVTL["+t+"]",i,r);var a,l;t?(a=s.y-o.y,l=o.x-s.x):(a=o.x-s.x,l=o.y-s.y),e.dpv=a6(a,l)}function W4e(t){var e=t.stack,n=e.pop(),i=0;Ae.DEBUG&&console.log(t.step,"GETINFO[]",n),n&1&&(i=35),n&32&&(i|=4096),e.push(i)}function $4e(t){var e=t.stack,n=e.pop(),i=e.pop(),r=e.pop();Ae.DEBUG&&console.log(t.step,"ROLL[]"),e.push(i),e.push(n),e.push(r)}function j4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"MAX[]",n,i),e.push(Math.max(i,n))}function X4e(t){var e=t.stack,n=e.pop(),i=e.pop();Ae.DEBUG&&console.log(t.step,"MIN[]",n,i),e.push(Math.min(i,n))}function Y4e(t){var e=t.stack.pop();Ae.DEBUG&&console.log(t.step,"SCANTYPE[]",e)}function K4e(t){var e=t.stack.pop(),n=t.stack.pop();switch(Ae.DEBUG&&console.log(t.step,"INSTCTRL[]",e,n),e){case 1:t.inhibitGridFit=!!n;return;case 2:t.ignoreCvt=!!n;return;default:throw new Error("invalid INSTCTRL[] selector")}}function Qu(t,e){var n=e.stack,i=e.prog,r=e.ip;Ae.DEBUG&&console.log(e.step,"PUSHB["+t+"]");for(var s=0;s<t;s++)n.push(i[++r]);e.ip=r}function Hu(t,e){var n=e.ip,i=e.prog,r=e.stack;Ae.DEBUG&&console.log(e.ip,"PUSHW["+t+"]");for(var s=0;s<t;s++){var o=i[++n]<<8|i[++n];o&32768&&(o=-((o^65535)+1)),r.push(o)}e.ip=n}function Ze(t,e,n,i,r,s){var o=s.stack,a=t&&o.pop(),l=o.pop(),u=s.rp0,c=s.z0[u],h=s.z1[l],f=s.minDis,m=s.fv,g=s.dpv,v,_,A,y;_=v=g.distance(h,c,!0,!0),A=_>=0?1:-1,_=Math.abs(_),t&&(y=s.cvt[a],i&&Math.abs(_-y)<s.cvCutIn&&(_=y)),n&&_<f&&(_=f),i&&(_=s.round(_)),m.setRelative(h,c,A*_,g),m.touch(h),Ae.DEBUG&&console.log(s.step,(t?"MIRP[":"MDRP[")+(e?"M":"m")+(n?">":"_")+(i?"R":"_")+(r===0?"Gr":r===1?"Bl":r===2?"Wh":"")+"]",t?a+"("+s.cvt[a]+","+y+")":"",l,"(d =",v,"->",A*_,")"),s.rp1=s.rp0,s.rp2=l,e&&(s.rp0=l)}mW=[uL.bind(void 0,Zl),uL.bind(void 0,nl),cL.bind(void 0,Zl),cL.bind(void 0,nl),hL.bind(void 0,Zl),hL.bind(void 0,nl),fL.bind(void 0,0),fL.bind(void 0,1),dL.bind(void 0,0),dL.bind(void 0,1),Mde,Rde,bde,Pde,Bde,Dde,Lde,Nde,kde,Fde,Ode,Ude,zde,Vde,Gde,Qde,Hde,Wde,$de,jde,void 0,void 0,Xde,Dq,Yde,Kde,Jde,t4e,n4e,void 0,void 0,void 0,Zde,e4e,i4e,void 0,pL.bind(void 0,0),pL.bind(void 0,1),mL.bind(void 0,Zl),mL.bind(void 0,nl),gL.bind(void 0,0),gL.bind(void 0,1),AL.bind(void 0,0),AL.bind(void 0,1),vL.bind(void 0,0),vL.bind(void 0,1),r4e,s4e,yL.bind(void 0,0),yL.bind(void 0,1),o4e,a4e,qL.bind(void 0,0),qL.bind(void 0,1),l4e,u4e,c4e,h4e,f4e,d4e,_L.bind(void 0,0),_L.bind(void 0,1),void 0,xL.bind(void 0,0),xL.bind(void 0,1),p4e,void 0,m4e,void 0,void 0,g4e,A4e,v4e,y4e,q4e,_4e,x4e,E4e,S4e,T4e,C4e,w4e,I4e,Lq.bind(void 0,1),M4e,R4e,b4e,P4e,B4e,D4e,L4e,N4e,k4e,F4e,j7.bind(void 0,0),j7.bind(void 0,1),j7.bind(void 0,2),j7.bind(void 0,3),void 0,void 0,void 0,void 0,O4e,Lq.bind(void 0,2),Lq.bind(void 0,3),Nq.bind(void 0,1),Nq.bind(void 0,2),Nq.bind(void 0,3),U4e,z4e,void 0,void 0,V4e,void 0,G4e,Q4e,Dq,Dq,void 0,void 0,void 0,void 0,void 0,H4e,EL.bind(void 0,0),EL.bind(void 0,1),W4e,void 0,$4e,j4e,X4e,Y4e,K4e,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,Qu.bind(void 0,1),Qu.bind(void 0,2),Qu.bind(void 0,3),Qu.bind(void 0,4),Qu.bind(void 0,5),Qu.bind(void 0,6),Qu.bind(void 0,7),Qu.bind(void 0,8),Hu.bind(void 0,1),Hu.bind(void 0,2),Hu.bind(void 0,3),Hu.bind(void 0,4),Hu.bind(void 0,5),Hu.bind(void 0,6),Hu.bind(void 0,7),Hu.bind(void 0,8),Ze.bind(void 0,0,0,0,0,0),Ze.bind(void 0,0,0,0,0,1),Ze.bind(void 0,0,0,0,0,2),Ze.bind(void 0,0,0,0,0,3),Ze.bind(void 0,0,0,0,1,0),Ze.bind(void 0,0,0,0,1,1),Ze.bind(void 0,0,0,0,1,2),Ze.bind(void 0,0,0,0,1,3),Ze.bind(void 0,0,0,1,0,0),Ze.bind(void 0,0,0,1,0,1),Ze.bind(void 0,0,0,1,0,2),Ze.bind(void 0,0,0,1,0,3),Ze.bind(void 0,0,0,1,1,0),Ze.bind(void 0,0,0,1,1,1),Ze.bind(void 0,0,0,1,1,2),Ze.bind(void 0,0,0,1,1,3),Ze.bind(void 0,0,1,0,0,0),Ze.bind(void 0,0,1,0,0,1),Ze.bind(void 0,0,1,0,0,2),Ze.bind(void 0,0,1,0,0,3),Ze.bind(void 0,0,1,0,1,0),Ze.bind(void 0,0,1,0,1,1),Ze.bind(void 0,0,1,0,1,2),Ze.bind(void 0,0,1,0,1,3),Ze.bind(void 0,0,1,1,0,0),Ze.bind(void 0,0,1,1,0,1),Ze.bind(void 0,0,1,1,0,2),Ze.bind(void 0,0,1,1,0,3),Ze.bind(void 0,0,1,1,1,0),Ze.bind(void 0,0,1,1,1,1),Ze.bind(void 0,0,1,1,1,2),Ze.bind(void 0,0,1,1,1,3),Ze.bind(void 0,1,0,0,0,0),Ze.bind(void 0,1,0,0,0,1),Ze.bind(void 0,1,0,0,0,2),Ze.bind(void 0,1,0,0,0,3),Ze.bind(void 0,1,0,0,1,0),Ze.bind(void 0,1,0,0,1,1),Ze.bind(void 0,1,0,0,1,2),Ze.bind(void 0,1,0,0,1,3),Ze.bind(void 0,1,0,1,0,0),Ze.bind(void 0,1,0,1,0,1),Ze.bind(void 0,1,0,1,0,2),Ze.bind(void 0,1,0,1,0,3),Ze.bind(void 0,1,0,1,1,0),Ze.bind(void 0,1,0,1,1,1),Ze.bind(void 0,1,0,1,1,2),Ze.bind(void 0,1,0,1,1,3),Ze.bind(void 0,1,1,0,0,0),Ze.bind(void 0,1,1,0,0,1),Ze.bind(void 0,1,1,0,0,2),Ze.bind(void 0,1,1,0,0,3),Ze.bind(void 0,1,1,0,1,0),Ze.bind(void 0,1,1,0,1,1),Ze.bind(void 0,1,1,0,1,2),Ze.bind(void 0,1,1,0,1,3),Ze.bind(void 0,1,1,1,0,0),Ze.bind(void 0,1,1,1,0,1),Ze.bind(void 0,1,1,1,0,2),Ze.bind(void 0,1,1,1,0,3),Ze.bind(void 0,1,1,1,1,0),Ze.bind(void 0,1,1,1,1,1),Ze.bind(void 0,1,1,1,1,2),Ze.bind(void 0,1,1,1,1,3)];function H2(t){this.char=t,this.state={},this.activeState=null}function Nw(t,e,n){this.contextName=n,this.startIndex=t,this.endOffset=e}function J4e(t,e,n){this.contextName=t,this.openRange=null,this.ranges=[],this.checkStart=e,this.checkEnd=n}function _a(t,e){this.context=t,this.index=e,this.length=t.length,this.current=t[e],this.backtrack=t.slice(0,e),this.lookahead=t.slice(e+1)}function Yg(t){this.eventId=t,this.subscribers=[]}function Z4e(t){var e=this,n=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];n.forEach(function(r){Object.defineProperty(e.events,r,{value:new Yg(r)})}),t&&n.forEach(function(r){var s=t[r];typeof s=="function"&&e.events[r].subscribe(s)});var i=["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"];i.forEach(function(r){e.events[r].subscribe(e.updateContextsRanges)})}function _i(t){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Z4e.call(this,t)}H2.prototype.setState=function(t,e){return this.state[t]=e,this.activeState={key:t,value:this.state[t]},this.activeState};H2.prototype.getState=function(t){return this.state[t]||null};_i.prototype.inboundIndex=function(t){return t>=0&&t<this.tokens.length};_i.prototype.composeRUD=function(t){var e=this,n=!0,i=t.map(function(s){return e[s[0]].apply(e,s.slice(1).concat(n))}),r=function(s){return typeof s=="object"&&s.hasOwnProperty("FAIL")};if(i.every(r))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:i.filter(r)};this.dispatch("composeRUD",[i.filter(function(s){return!r(s)})])};_i.prototype.replaceRange=function(t,e,n,i){e=e!==null?e:this.tokens.length;var r=n.every(function(o){return o instanceof H2});if(!isNaN(t)&&this.inboundIndex(t)&&r){var s=this.tokens.splice.apply(this.tokens,[t,e].concat(n));return i||this.dispatch("replaceToken",[t,e,n]),[s,n]}else return{FAIL:"replaceRange: invalid tokens or startIndex."}};_i.prototype.replaceToken=function(t,e,n){if(!isNaN(t)&&this.inboundIndex(t)&&e instanceof H2){var i=this.tokens.splice(t,1,e);return n||this.dispatch("replaceToken",[t,e]),[i[0],e]}else return{FAIL:"replaceToken: invalid token or index."}};_i.prototype.removeRange=function(t,e,n){e=isNaN(e)?this.tokens.length:e;var i=this.tokens.splice(t,e);return n||this.dispatch("removeRange",[i,t,e]),i};_i.prototype.removeToken=function(t,e){if(!isNaN(t)&&this.inboundIndex(t)){var n=this.tokens.splice(t,1);return e||this.dispatch("removeToken",[n,t]),n}else return{FAIL:"removeToken: invalid token index."}};_i.prototype.insertToken=function(t,e,n){var i=t.every(function(r){return r instanceof H2});return i?(this.tokens.splice.apply(this.tokens,[e,0].concat(t)),n||this.dispatch("insertToken",[t,e]),t):{FAIL:"insertToken: invalid token(s)."}};_i.prototype.registerModifier=function(t,e,n){this.events.newToken.subscribe(function(i,r){var s=[i,r],o=e===null||e.apply(this,s)===!0,a=[i,r];if(o){var l=n.apply(this,a);i.setState(t,l)}}),this.registeredModifiers.push(t)};Yg.prototype.subscribe=function(t){return typeof t=="function"?this.subscribers.push(t)-1:{FAIL:"invalid '"+this.eventId+"' event handler"}};Yg.prototype.unsubscribe=function(t){this.subscribers.splice(t,1)};_a.prototype.setCurrentIndex=function(t){this.index=t,this.current=this.context[t],this.backtrack=this.context.slice(0,t),this.lookahead=this.context.slice(t+1)};_a.prototype.get=function(t){switch(!0){case t===0:return this.current;case(t<0&&Math.abs(t)<=this.backtrack.length):return this.backtrack.slice(t)[0];case(t>0&&t<=this.lookahead.length):return this.lookahead[t-1];default:return null}};_i.prototype.rangeToText=function(t){if(t instanceof Nw)return this.getRangeTokens(t).map(function(e){return e.char}).join("")};_i.prototype.getText=function(){return this.tokens.map(function(t){return t.char}).join("")};_i.prototype.getContext=function(t){var e=this.registeredContexts[t];return e||null};_i.prototype.on=function(t,e){var n=this.events[t];return n?n.subscribe(e):null};_i.prototype.dispatch=function(t,e){var n=this,i=this.events[t];i instanceof Yg&&i.subscribers.forEach(function(r){r.apply(n,e||[])})};_i.prototype.registerContextChecker=function(t,e,n){if(this.getContext(t))return{FAIL:"context name '"+t+"' is already registered."};if(typeof e!="function")return{FAIL:"missing context start check."};if(typeof n!="function")return{FAIL:"missing context end check."};var i=new J4e(t,e,n);return this.registeredContexts[t]=i,this.contextCheckers.push(i),i};_i.prototype.getRangeTokens=function(t){var e=t.startIndex+t.endOffset;return[].concat(this.tokens.slice(t.startIndex,e))};_i.prototype.getContextRanges=function(t){var e=this.getContext(t);return e?e.ranges:{FAIL:"context checker '"+t+"' is not registered."}};_i.prototype.resetContextsRanges=function(){var t=this.registeredContexts;for(var e in t)if(t.hasOwnProperty(e)){var n=t[e];n.ranges=[]}};_i.prototype.updateContextsRanges=function(){this.resetContextsRanges();for(var t=this.tokens.map(function(i){return i.char}),e=0;e<t.length;e++){var n=new _a(t,e);this.runContextCheck(n)}this.dispatch("updateContextsRanges",[this.registeredContexts])};_i.prototype.setEndOffset=function(t,e){var n=this.getContext(e).openRange.startIndex,i=new Nw(n,t,e),r=this.getContext(e).ranges;return i.rangeId=e+"."+r.length,r.push(i),this.getContext(e).openRange=null,i};_i.prototype.runContextCheck=function(t){var e=this,n=t.index;this.contextCheckers.forEach(function(i){var r=i.contextName,s=e.getContext(r).openRange;if(!s&&i.checkStart(t)&&(s=new Nw(n,null,r),e.getContext(r).openRange=s,e.dispatch("contextStart",[r,n])),s&&i.checkEnd(t)){var o=n-s.startIndex+1,a=e.setEndOffset(o,r);e.dispatch("contextEnd",[r,a])}})};_i.prototype.tokenize=function(t){this.tokens=[],this.resetContextsRanges();var e=Array.from(t);this.dispatch("start");for(var n=0;n<e.length;n++){var i=e[n],r=new _a(e,n);this.dispatch("next",[r]),this.runContextCheck(r);var s=new H2(i);this.tokens.push(s),this.dispatch("newToken",[s,r])}return this.dispatch("end",[this.tokens]),this.tokens};function Ic(t){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(t)}function _W(t){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(t)}function Vc(t){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(t)}function D8(t){return/[A-z]/.test(t)}function e6e(t){return/\s/.test(t)}function fo(t){this.font=t,this.features={}}function Hh(t){this.id=t.id,this.tag=t.tag,this.substitution=t.substitution}function l6(t,e){if(!t)return-1;switch(e.format){case 1:return e.glyphs.indexOf(t);case 2:for(var n=e.ranges,i=0;i<n.length;i++){var r=n[i];if(t>=r.start&&t<=r.end){var s=t-r.start;return r.index+s}}break;default:return-1}return-1}function t6e(t,e){var n=l6(t,e.coverage);return n===-1?null:t+e.deltaGlyphId}function n6e(t,e){var n=l6(t,e.coverage);return n===-1?null:e.substitute[n]}function kq(t,e){for(var n=[],i=0;i<t.length;i++){var r=t[i],s=e.current;s=Array.isArray(s)?s[0]:s;var o=l6(s,r);o!==-1&&n.push(o)}return n.length!==t.length?-1:n}function i6e(t,e){var n=e.inputCoverage.length+e.lookaheadCoverage.length+e.backtrackCoverage.length;if(t.context.length<n)return[];var i=kq(e.inputCoverage,t);if(i===-1)return[];var r=e.inputCoverage.length-1;if(t.lookahead.length<e.lookaheadCoverage.length)return[];for(var s=t.lookahead.slice(r);s.length&&Vc(s[0].char);)s.shift();var o=new _a(s,0),a=kq(e.lookaheadCoverage,o),l=[].concat(t.backtrack);for(l.reverse();l.length&&Vc(l[0].char);)l.shift();if(l.length<e.backtrackCoverage.length)return[];var u=new _a(l,0),c=kq(e.backtrackCoverage,u),h=i.length===e.inputCoverage.length&&a.length===e.lookaheadCoverage.length&&c.length===e.backtrackCoverage.length,f=[];if(h)for(var m=0;m<e.lookupRecords.length;m++)for(var g=e.lookupRecords[m],v=g.lookupListIndex,_=this.getLookupByIndex(v),A=0;A<_.subtables.length;A++){var y=_.subtables[A],q=this.getLookupMethod(_,y),E=this.getSubstitutionType(_,y);if(E==="12")for(var T=0;T<i.length;T++){var C=t.get(T),I=q(C);I&&f.push(I)}}return f}function r6e(t,e){var n=t.current,i=l6(n,e.coverage);if(i===-1)return null;for(var r,s=e.ligatureSets[i],o=0;o<s.length;o++){r=s[o];for(var a=0;a<r.components.length;a++){var l=t.lookahead[a],u=r.components[a];if(l!==u)break;if(a===r.components.length-1)return r}}return null}function s6e(t,e){var n=l6(t,e.coverage);return n===-1?null:e.sequences[n]}fo.prototype.getDefaultScriptFeaturesIndexes=function(){for(var t=this.font.tables.gsub.scripts,e=0;e<t.length;e++){var n=t[e];if(n.tag==="DFLT")return n.script.defaultLangSys.featureIndexes}return[]};fo.prototype.getScriptFeaturesIndexes=function(t){var e=this.font.tables;if(!e.gsub)return[];if(!t)return this.getDefaultScriptFeaturesIndexes();for(var n=this.font.tables.gsub.scripts,i=0;i<n.length;i++){var r=n[i];if(r.tag===t&&r.script.defaultLangSys)return r.script.defaultLangSys.featureIndexes;var s=r.langSysRecords;if(s)for(var o=0;o<s.length;o++){var a=s[o];if(a.tag===t){var l=a.langSys;return l.featureIndexes}}}return this.getDefaultScriptFeaturesIndexes()};fo.prototype.mapTagsToFeatures=function(t,e){for(var n={},i=0;i<t.length;i++){var r=t[i].tag,s=t[i].feature;n[r]=s}this.features[e].tags=n};fo.prototype.getScriptFeatures=function(t){var e=this.features[t];if(this.features.hasOwnProperty(t))return e;var n=this.getScriptFeaturesIndexes(t);if(!n)return null;var i=this.font.tables.gsub;return e=n.map(function(r){return i.features[r]}),this.features[t]=e,this.mapTagsToFeatures(e,t),e};fo.prototype.getSubstitutionType=function(t,e){var n=t.lookupType.toString(),i=e.substFormat.toString();return n+i};fo.prototype.getLookupMethod=function(t,e){var n=this,i=this.getSubstitutionType(t,e);switch(i){case"11":return function(r){return t6e.apply(n,[r,e])};case"12":return function(r){return n6e.apply(n,[r,e])};case"63":return function(r){return i6e.apply(n,[r,e])};case"41":return function(r){return r6e.apply(n,[r,e])};case"21":return function(r){return s6e.apply(n,[r,e])};default:throw new Error("lookupType: "+t.lookupType+" - substFormat: "+e.substFormat+" is not yet supported")}};fo.prototype.lookupFeature=function(t){var e=t.contextParams,n=e.index,i=this.getFeature({tag:t.tag,script:t.script});if(!i)return new Error("font '"+this.font.names.fullName.en+"' doesn't support feature '"+t.tag+"' for script '"+t.script+"'.");for(var r=this.getFeatureLookups(i),s=[].concat(e.context),o=0;o<r.length;o++)for(var a=r[o],l=this.getLookupSubtables(a),u=0;u<l.length;u++){var c=l[u],h=this.getSubstitutionType(a,c),f=this.getLookupMethod(a,c),m=void 0;switch(h){case"11":m=f(e.current),m&&s.splice(n,1,new Hh({id:11,tag:t.tag,substitution:m}));break;case"12":m=f(e.current),m&&s.splice(n,1,new Hh({id:12,tag:t.tag,substitution:m}));break;case"63":m=f(e),Array.isArray(m)&&m.length&&s.splice(n,1,new Hh({id:63,tag:t.tag,substitution:m}));break;case"41":m=f(e),m&&s.splice(n,1,new Hh({id:41,tag:t.tag,substitution:m}));break;case"21":m=f(e.current),m&&s.splice(n,1,new Hh({id:21,tag:t.tag,substitution:m}));break}e=new _a(s,n),!(Array.isArray(m)&&!m.length)&&(m=null)}return s.length?s:null};fo.prototype.supports=function(t){if(!t.script)return!1;this.getScriptFeatures(t.script);var e=this.features.hasOwnProperty(t.script);if(!t.tag)return e;var n=this.features[t.script].some(function(i){return i.tag===t.tag});return e&&n};fo.prototype.getLookupSubtables=function(t){return t.subtables||null};fo.prototype.getLookupByIndex=function(t){var e=this.font.tables.gsub.lookups;return e[t]||null};fo.prototype.getFeatureLookups=function(t){return t.lookupListIndexes.map(this.getLookupByIndex.bind(this))};fo.prototype.getFeature=function(e){if(!this.font)return{FAIL:"No font was found"};this.features.hasOwnProperty(e.script)||this.getScriptFeatures(e.script);var n=this.features[e.script];return n?n.tags[e.tag]?this.features[e.script].tags[e.tag]:null:{FAIL:"No feature for script "+e.script}};function o6e(t){var e=t.current,n=t.get(-1);return n===null&&Ic(e)||!Ic(n)&&Ic(e)}function a6e(t){var e=t.get(1);return e===null||!Ic(e)}var l6e={startCheck:o6e,endCheck:a6e};function u6e(t){var e=t.current,n=t.get(-1);return(Ic(e)||Vc(e))&&!Ic(n)}function c6e(t){var e=t.get(1);switch(!0){case e===null:return!0;case(!Ic(e)&&!Vc(e)):var n=e6e(e);if(!n)return!0;if(n){var i=!1;if(i=t.lookahead.some(function(r){return Ic(r)||Vc(r)}),!i)return!0}break;default:return!1}}var h6e={startCheck:u6e,endCheck:c6e};function f6e(t,e,n){e[n].setState(t.tag,t.substitution)}function d6e(t,e,n){e[n].setState(t.tag,t.substitution)}function p6e(t,e,n){t.substitution.forEach(function(i,r){var s=e[n+r];s.setState(t.tag,i)})}function m6e(t,e,n){var i=e[n];i.setState(t.tag,t.substitution.ligGlyph);for(var r=t.substitution.components.length,s=0;s<r;s++)i=e[n+s+1],i.setState("deleted",!0)}var SL={11:f6e,12:d6e,63:p6e,41:m6e};function kw(t,e,n){t instanceof Hh&&SL[t.id]&&SL[t.id](t,e,n)}function g6e(t){for(var e=[].concat(t.backtrack),n=e.length-1;n>=0;n--){var i=e[n],r=_W(i),s=Vc(i);if(!r&&!s)return!0;if(r)return!1}return!1}function A6e(t){if(_W(t.current))return!1;for(var e=0;e<t.lookahead.length;e++){var n=t.lookahead[e],i=Vc(n);if(!i)return!0}return!1}function v6e(t){var e=this,n="arab",i=this.featuresTags[n],r=this.tokenizer.getRangeTokens(t);if(r.length!==1){var s=new _a(r.map(function(a){return a.getState("glyphIndex")}),0),o=new _a(r.map(function(a){return a.char}),0);r.forEach(function(a,l){if(!Vc(a.char)){s.setCurrentIndex(l),o.setCurrentIndex(l);var u=0;g6e(o)&&(u|=1),A6e(o)&&(u|=2);var c;switch(u){case 1:c="fina";break;case 2:c="init";break;case 3:c="medi";break}if(i.indexOf(c)!==-1){var h=e.query.lookupFeature({tag:c,script:n,contextParams:s});if(h instanceof Error)return console.info(h.message);h.forEach(function(f,m){f instanceof Hh&&(kw(f,r,m),s.context[m]=f.substitution)})}}})}}function TL(t,e){var n=t.map(function(i){return i.activeState.value});return new _a(n,e||0)}function y6e(t){var e=this,n="arab",i=this.tokenizer.getRangeTokens(t),r=TL(i);r.context.forEach(function(s,o){r.setCurrentIndex(o);var a=e.query.lookupFeature({tag:"rlig",script:n,contextParams:r});a.length&&(a.forEach(function(l){return kw(l,i,o)}),r=TL(i))})}function q6e(t){var e=t.current,n=t.get(-1);return n===null&&D8(e)||!D8(n)&&D8(e)}function _6e(t){var e=t.get(1);return e===null||!D8(e)}var x6e={startCheck:q6e,endCheck:_6e};function CL(t,e){var n=t.map(function(i){return i.activeState.value});return new _a(n,e||0)}function E6e(t){var e=this,n="latn",i=this.tokenizer.getRangeTokens(t),r=CL(i);r.context.forEach(function(s,o){r.setCurrentIndex(o);var a=e.query.lookupFeature({tag:"liga",script:n,contextParams:r});a.length&&(a.forEach(function(l){return kw(l,i,o)}),r=CL(i))})}function Ma(t){this.baseDir=t||"ltr",this.tokenizer=new _i,this.featuresTags={}}Ma.prototype.setText=function(t){this.text=t};Ma.prototype.contextChecks={latinWordCheck:x6e,arabicWordCheck:l6e,arabicSentenceCheck:h6e};function Fq(t){var e=this.contextChecks[t+"Check"];return this.tokenizer.registerContextChecker(t,e.startCheck,e.endCheck)}function S6e(){return Fq.call(this,"latinWord"),Fq.call(this,"arabicWord"),Fq.call(this,"arabicSentence"),this.tokenizer.tokenize(this.text)}function T6e(){var t=this,e=this.tokenizer.getContextRanges("arabicSentence");e.forEach(function(n){var i=t.tokenizer.getRangeTokens(n);t.tokenizer.replaceRange(n.startIndex,n.endOffset,i.reverse())})}Ma.prototype.registerFeatures=function(t,e){var n=this,i=e.filter(function(r){return n.query.supports({script:t,tag:r})});this.featuresTags.hasOwnProperty(t)?this.featuresTags[t]=this.featuresTags[t].concat(i):this.featuresTags[t]=i};Ma.prototype.applyFeatures=function(t,e){if(!t)throw new Error("No valid font was provided to apply features");this.query||(this.query=new fo(t));for(var n=0;n<e.length;n++){var i=e[n];this.query.supports({script:i.script})&&this.registerFeatures(i.script,i.tags)}};Ma.prototype.registerModifier=function(t,e,n){this.tokenizer.registerModifier(t,e,n)};function Fw(){if(this.tokenizer.registeredModifiers.indexOf("glyphIndex")===-1)throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function C6e(){var t=this,e="arab";if(this.featuresTags.hasOwnProperty(e)){Fw.call(this);var n=this.tokenizer.getContextRanges("arabicWord");n.forEach(function(i){v6e.call(t,i)})}}function w6e(){var t=this,e="arab";if(this.featuresTags.hasOwnProperty(e)){var n=this.featuresTags[e];if(n.indexOf("rlig")!==-1){Fw.call(this);var i=this.tokenizer.getContextRanges("arabicWord");i.forEach(function(r){y6e.call(t,r)})}}}function I6e(){var t=this,e="latn";if(this.featuresTags.hasOwnProperty(e)){var n=this.featuresTags[e];if(n.indexOf("liga")!==-1){Fw.call(this);var i=this.tokenizer.getContextRanges("latinWord");i.forEach(function(r){E6e.call(t,r)})}}}Ma.prototype.checkContextReady=function(t){return!!this.tokenizer.getContext(t)};Ma.prototype.applyFeaturesToContexts=function(){this.checkContextReady("arabicWord")&&(C6e.call(this),w6e.call(this)),this.checkContextReady("latinWord")&&I6e.call(this),this.checkContextReady("arabicSentence")&&T6e.call(this)};Ma.prototype.processText=function(t){(!this.text||this.text!==t)&&(this.setText(t),S6e.call(this),this.applyFeaturesToContexts())};Ma.prototype.getBidiText=function(t){return this.processText(t),this.tokenizer.getText()};Ma.prototype.getTextGlyphs=function(t){this.processText(t);for(var e=[],n=0;n<this.tokenizer.tokens.length;n++){var i=this.tokenizer.tokens[n];if(!i.state.deleted){var r=i.activeState.value;e.push(Array.isArray(r)?r[0]:r)}}return e};function kn(t){t=t||{},t.tables=t.tables||{},t.empty||(Qf(t.familyName,"When creating a new Font object, familyName is required."),Qf(t.styleName,"When creating a new Font object, styleName is required."),Qf(t.unitsPerEm,"When creating a new Font object, unitsPerEm is required."),Qf(t.ascender,"When creating a new Font object, ascender is required."),Qf(t.descender<=0,"When creating a new Font object, negative descender value is required."),this.names={fontFamily:{en:t.familyName||" "},fontSubfamily:{en:t.styleName||" "},fullName:{en:t.fullName||t.familyName+" "+t.styleName},postScriptName:{en:t.postScriptName||(t.familyName+t.styleName).replace(/\s/g,"")},designer:{en:t.designer||" "},designerURL:{en:t.designerURL||" "},manufacturer:{en:t.manufacturer||" "},manufacturerURL:{en:t.manufacturerURL||" "},license:{en:t.license||" "},licenseURL:{en:t.licenseURL||" "},version:{en:t.version||"Version 0.1"},description:{en:t.description||" "},copyright:{en:t.copyright||" "},trademark:{en:t.trademark||" "}},this.unitsPerEm=t.unitsPerEm||1e3,this.ascender=t.ascender,this.descender=t.descender,this.createdTimestamp=t.createdTimestamp,this.tables=Object.assign(t.tables,{os2:Object.assign({usWeightClass:t.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:t.widthClass||this.usWidthClasses.MEDIUM,fsSelection:t.fsSelection||this.fsSelectionValues.REGULAR},t.tables.os2)})),this.supported=!0,this.glyphs=new hl.GlyphSet(this,t.glyphs||[]),this.encoding=new JH(this),this.position=new s6(this),this.substitution=new ho(this),this.tables=this.tables||{},this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){if(this._hinting)return this._hinting;if(this.outlinesFormat==="truetype")return this._hinting=new AW(this)}})}kn.prototype.hasChar=function(t){return this.encoding.charToGlyphIndex(t)!==null};kn.prototype.charToGlyphIndex=function(t){return this.encoding.charToGlyphIndex(t)};kn.prototype.charToGlyph=function(t){var e=this.charToGlyphIndex(t),n=this.glyphs.get(e);return n||(n=this.glyphs.get(0)),n};kn.prototype.updateFeatures=function(t){return this.defaultRenderOptions.features.map(function(e){return e.script==="latn"?{script:"latn",tags:e.tags.filter(function(n){return t[n]})}:e})};kn.prototype.stringToGlyphs=function(t,e){var n=this,i=new Ma,r=function(h){return n.charToGlyphIndex(h.char)};i.registerModifier("glyphIndex",null,r);var s=e?this.updateFeatures(e.features):this.defaultRenderOptions.features;i.applyFeatures(this,s);for(var o=i.getTextGlyphs(t),a=o.length,l=new Array(a),u=this.glyphs.get(0),c=0;c<a;c+=1)l[c]=this.glyphs.get(o[c])||u;return l};kn.prototype.nameToGlyphIndex=function(t){return this.glyphNames.nameToGlyphIndex(t)};kn.prototype.nameToGlyph=function(t){var e=this.nameToGlyphIndex(t),n=this.glyphs.get(e);return n||(n=this.glyphs.get(0)),n};kn.prototype.glyphIndexToName=function(t){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(t):""};kn.prototype.getKerningValue=function(t,e){t=t.index||t,e=e.index||e;var n=this.position.defaultKerningTables;return n?this.position.getKerningValue(n,t,e):this.kerningPairs[t+","+e]||0};kn.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]}]};kn.prototype.forEachGlyph=function(t,e,n,i,r,s){e=e!==void 0?e:0,n=n!==void 0?n:0,i=i!==void 0?i:72,r=Object.assign({},this.defaultRenderOptions,r);var o=1/this.unitsPerEm*i,a=this.stringToGlyphs(t,r),l;if(r.kerning){var u=r.script||this.position.getDefaultScriptName();l=this.position.getKerningTables(u,r.language)}for(var c=0;c<a.length;c+=1){var h=a[c];if(s.call(this,h,e,n,i,r),h.advanceWidth&&(e+=h.advanceWidth*o),r.kerning&&c<a.length-1){var f=l?this.position.getKerningValue(l,h.index,a[c+1].index):this.getKerningValue(h,a[c+1]);e+=f*o}r.letterSpacing?e+=r.letterSpacing*i:r.tracking&&(e+=r.tracking/1e3*i)}return e};kn.prototype.getPath=function(t,e,n,i,r){var s=new Ki;return this.forEachGlyph(t,e,n,i,r,function(o,a,l,u){var c=o.getPath(a,l,u,r,this);s.extend(c)}),s};kn.prototype.getPaths=function(t,e,n,i,r){var s=[];return this.forEachGlyph(t,e,n,i,r,function(o,a,l,u){var c=o.getPath(a,l,u,r,this);s.push(c)}),s};kn.prototype.getAdvanceWidth=function(t,e,n){return this.forEachGlyph(t,0,0,e,n,function(){})};kn.prototype.draw=function(t,e,n,i,r,s){this.getPath(e,n,i,r,s).draw(t)};kn.prototype.drawPoints=function(t,e,n,i,r,s){this.forEachGlyph(e,n,i,r,s,function(o,a,l,u){o.drawPoints(t,a,l,u)})};kn.prototype.drawMetrics=function(t,e,n,i,r,s){this.forEachGlyph(e,n,i,r,s,function(o,a,l,u){o.drawMetrics(t,a,l,u)})};kn.prototype.getEnglishName=function(t){var e=this.names[t];if(e)return e.en};kn.prototype.validate=function(){var t=this;function e(i,r){}function n(i){var r=t.getEnglishName(i);r&&r.trim().length>0}n("fontFamily"),n("weightName"),n("manufacturer"),n("copyright"),n("version"),this.unitsPerEm>0};kn.prototype.toTables=function(){return pde.fontToTable(this)};kn.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()};kn.prototype.toArrayBuffer=function(){for(var t=this.toTables(),e=t.encode(),n=new ArrayBuffer(e.length),i=new Uint8Array(n),r=0;r<e.length;r++)i[r]=e[r];return n};kn.prototype.download=function(t){var e=this.getEnglishName("fontFamily"),n=this.getEnglishName("fontSubfamily");t=t||e.replace(/\s/g,"")+"-"+n+".otf";var i=this.toArrayBuffer();if(gde())if(window.URL=window.URL||window.webkitURL,window.URL){var r=new DataView(i),s=new Blob([r],{type:"font/opentype"}),o=document.createElement("a");o.href=window.URL.createObjectURL(s),o.download=t;var a=document.createEvent("MouseEvents");a.initEvent("click",!0,!1),o.dispatchEvent(a)}else console.warn("Font file could not be downloaded. Try using a different browser.");else{var l=require("fs"),u=Ade(i);l.writeFileSync(t,u)}};kn.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512};kn.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9};kn.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};var xu=new Array(10);xu[1]=function(){var e=this.offset+this.relativeOffset,n=this.parseUShort();if(n===1)return{posFormat:1,coverage:this.parsePointer(fe.coverage),value:this.parseValueRecord()};if(n===2)return{posFormat:2,coverage:this.parsePointer(fe.coverage),values:this.parseValueRecordList()};Dt.assert(!1,"0x"+e.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")};xu[2]=function(){var e=this.offset+this.relativeOffset,n=this.parseUShort();Dt.assert(n===1||n===2,"0x"+e.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");var i=this.parsePointer(fe.coverage),r=this.parseUShort(),s=this.parseUShort();if(n===1)return{posFormat:n,coverage:i,valueFormat1:r,valueFormat2:s,pairSets:this.parseList(fe.pointer(fe.list(function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(r),value2:this.parseValueRecord(s)}})))};if(n===2){var o=this.parsePointer(fe.classDef),a=this.parsePointer(fe.classDef),l=this.parseUShort(),u=this.parseUShort();return{posFormat:n,coverage:i,valueFormat1:r,valueFormat2:s,classDef1:o,classDef2:a,class1Count:l,class2Count:u,classRecords:this.parseList(l,fe.list(u,function(){return{value1:this.parseValueRecord(r),value2:this.parseValueRecord(s)}}))}}};xu[3]=function(){return{error:"GPOS Lookup 3 not supported"}};xu[4]=function(){return{error:"GPOS Lookup 4 not supported"}};xu[5]=function(){return{error:"GPOS Lookup 5 not supported"}};
5517xu[6]=function(){return{error:"GPOS Lookup 6 not supported"}};xu[7]=function(){return{error:"GPOS Lookup 7 not supported"}};xu[8]=function(){return{error:"GPOS Lookup 8 not supported"}};xu[9]=function(){return{error:"GPOS Lookup 9 not supported"}};new Array(10);var M6e=Object.defineProperty,R6e=(t,e,n)=>e in t?M6e(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,nt=(t,e,n)=>(R6e(t,typeof e!="symbol"?e+"":e,n),n);let Hf;function b6e(){var t;if(Hf!==void 0)return Hf;try{let e;const n=document.createElement("canvas");return Hf=!!(window.WebGL2RenderingContext&&(e=n.getContext("webgl2"))),e&&((t=e.getExtension("WEBGL_lose_context"))==null||t.loseContext()),Hf}catch{return Hf=!1}}new Me;const xW=class{parse(t,e={decodeSpeed:5,encodeSpeed:5,encoderMethod:xW.MESH_EDGEBREAKER_ENCODING,quantization:[16,8,8,8,8],exportUvs:!0,exportNormals:!0,exportColor:!1}){if(t instanceof Bt&&t.isBufferGeometry)throw new Error("DRACOExporter: The first parameter of parse() is now an instance of Mesh or Points.");if(DracoEncoderModule===void 0)throw new Error("THREE.DRACOExporter: required the draco_encoder to work.");const n=t.geometry,i=DracoEncoderModule(),r=new i.Encoder;let s,o;if(!n.isBufferGeometry)throw new Error("THREE.DRACOExporter.parse(geometry, options): geometry is not a THREE.BufferGeometry instance.");if(t instanceof yn&&t.isMesh){s=new i.MeshBuilder,o=new i.Mesh;const f=n.getAttribute("position");s.AddFloatAttributeToMesh(o,i.POSITION,f.count,f.itemSize,f.array);const m=n.getIndex();if(m!==null)s.AddFacesToMesh(o,m.count/3,m.array);else{const g=new(f.count>65535?Uint32Array:Uint16Array)(f.count);for(let v=0;v<g.length;v++)g[v]=v;s.AddFacesToMesh(o,f.count,g)}if(e.exportNormals){const g=n.getAttribute("normal");g!==void 0&&s.AddFloatAttributeToMesh(o,i.NORMAL,g.count,g.itemSize,g.array)}if(e.exportUvs){const g=n.getAttribute("uv");g!==void 0&&s.AddFloatAttributeToMesh(o,i.TEX_COORD,g.count,g.itemSize,g.array)}if(e.exportColor){const g=n.getAttribute("color");g!==void 0&&s.AddFloatAttributeToMesh(o,i.COLOR,g.count,g.itemSize,g.array)}}else if(t instanceof JT&&t.isPoints){s=new i.PointCloudBuilder,o=new i.PointCloud;const f=n.getAttribute("position");if(s.AddFloatAttribute(o,i.POSITION,f.count,f.itemSize,f.array),e.exportColor){const m=n.getAttribute("color");m!==void 0&&s.AddFloatAttribute(o,i.COLOR,m.count,m.itemSize,m.array)}}else throw new Error("DRACOExporter: Unsupported object type.");const a=new i.DracoInt8Array,l=e.encodeSpeed!==void 0?e.encodeSpeed:5,u=e.decodeSpeed!==void 0?e.decodeSpeed:5;if(r.SetSpeedOptions(l,u),e.encoderMethod!==void 0&&r.SetEncodingMethod(e.encoderMethod),e.quantization!==void 0)for(let f=0;f<5;f++)e.quantization[f]!==void 0&&r.SetAttributeQuantization(f,e.quantization[f]);let c;if(t instanceof yn&&t.isMesh?c=r.EncodeMeshToDracoBuffer(o,a):c=r.EncodePointCloudToDracoBuffer(o,!0,a),i.destroy(o),c===0)throw new Error("THREE.DRACOExporter: Draco encoding failed.");const h=new Int8Array(new ArrayBuffer(c));for(let f=0;f<c;f++)h[f]=a.GetValue(f);return i.destroy(a),i.destroy(r),i.destroy(s),h}};let xl=xW;nt(xl,"MESH_EDGEBREAKER_ENCODING",1);nt(xl,"MESH_SEQUENTIAL_ENCODING",0);nt(xl,"POINT_CLOUD",0);nt(xl,"TRIANGULAR_MESH",1);nt(xl,"INVALID",-1);nt(xl,"POSITION",0);nt(xl,"NORMAL",1);nt(xl,"COLOR",2);nt(xl,"TEX_COORD",3);nt(xl,"GENERIC",4);const EW=class extends yn{constructor(t,e={}){super(t),this.isReflector=!0,this.type="Reflector",this.camera=new Yn;const n=this,i=e.color!==void 0?new Me(e.color):new Me(8355711),r=e.textureWidth||512,s=e.textureHeight||512,o=e.clipBias||0,a=e.shader||EW.ReflectorShader,l=e.multisample!==void 0?e.multisample:4,u=new Ro,c=new L,h=new L,f=new L,m=new st,g=new L(0,0,-1),v=new Zt,_=new L,A=new L,y=new Zt,q=new st,E=this.camera,T=new Yt(r,s,{samples:l,type:yi}),C=new zt({uniforms:Kn.clone(a.uniforms),fragmentShader:a.fragmentShader,vertexShader:a.vertexShader});C.uniforms.tDiffuse.value=T.texture,C.uniforms.color.value=i,C.uniforms.textureMatrix.value=q,this.material=C,this.onBeforeRender=function(I,R,M){if(h.setFromMatrixPosition(n.matrixWorld),f.setFromMatrixPosition(M.matrixWorld),m.extractRotation(n.matrixWorld),c.set(0,0,1),c.applyMatrix4(m),_.subVectors(h,f),_.dot(c)>0)return;_.reflect(c).negate(),_.add(h),m.extractRotation(M.matrixWorld),g.set(0,0,-1),g.applyM
5517atrix4(m),g.add(f),A.subVectors(h,g),A.reflect(c).negate(),A.add(h),E.position.copy(_),E.up.set(0,1,0),E.up.applyMatrix4(m),E.up.reflect(c),E.lookAt(A),E.far=M.far,E.updateMatrixWorld(),E.projectionMatrix.copy(M.projectionMatrix),q.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),q.multiply(E.projectionMatrix),q.multiply(E.matrixWorldInverse),q.multiply(n.matrixWorld),u.setFromNormalAndCoplanarPoint(c,h),u.applyMatrix4(E.matrixWorldInverse),v.set(u.normal.x,u.normal.y,u.normal.z,u.constant);const b=E.projectionMatrix;y.x=(Math.sign(v.x)+b.elements[8])/b.elements[0],y.y=(Math.sign(v.y)+b.elements[9])/b.elements[5],y.z=-1,y.w=(1+b.elements[10])/b.elements[14],v.multiplyScalar(2/v.dot(y)),b.elements[2]=v.x,b.elements[6]=v.y,b.elements[10]=v.z+1-o,b.elements[14]=v.w,n.visible=!1;const D=I.getRenderTarget(),z=I.xr.enabled,O=I.shadowMap.autoUpdate,W=I.toneMapping;let $=!1;"outputColorSpace"in I?$=I.outputColorSpace==="srgb":$=I.outputEncoding===3001,I.xr.enabled=!1,I.shadowMap.autoUpdate=!1,"outputColorSpace"in I?I.outputColorSpace
5517="linear-srgb":I.outputEncoding=3e3,I.toneMapping=Fo,I.setRenderTarget(T),I.state.buffers.depth.setMask(!0),I.autoClear===!1&&I.clear(),I.render(R,E),I.xr.enabled=z,I.shadowMap.autoUpdate=O,I.toneMapping=W,"outputColorSpace"in I?I.outputColorSpace=$?"srgb":"srgb-linear":I.outputEncoding=$?3001:3e3,I.setRenderTarget(D);const K=M.viewport;K!==void 0&&I.state.viewport(K),n.visible=!0},this.getRenderTarget=function(){return T},this.dispose=function(){T.dispose(),n.material.dispose()}}};let XE=EW;nt(XE,"ReflectorShader",{uniforms:{color:{value:null},tDiffuse:{value:null},textureMatrix:{value:null}},vertexShader:` 5518 uniform mat4 textureMatrix; 5519 varying vec4 vUv; 5520 5521 #include <common> 5522 #include <logdepthbuf_pars_vertex> 5523 5524 void main() { 5525 5526 vUv = textureMatrix * vec4( position, 1.0 ); 5527 5528 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 5529 5530 #include <logdepthbuf_vertex> 5531 5532 }`,fragmentShader:` 5533 uniform vec3 color; 5534 uniform sampler2D tDiffuse; 5535 varying vec4 vUv; 5536 5537 #include <logdepthbuf_pars_fragment> 5538 5539 float blendOverlay( float base, float blend ) { 5540 5541 return( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) ); 5542 5543 } 5544 5545 vec3 blendOverlay( vec3 base, vec3 blend ) { 5546 5547 return vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) ); 5548 5549 } 5550 5551 void main() { 5552 5553 #include <logdepthbuf_fragment> 5554 5555 vec4 base = texture2DProj( tDiffuse, vUv ); 5556 gl_FragColor = vec4( blendOverlay( base.rgb, color ), 1.0 ); 5557 5558 #include <tonemapping_fragment> 5559 #include <${parseInt(Sa.replace(/\D+/g,""))>=154?"colorspace_fragment":"encodings_fragment"}> 5560 5561 }`});const SW=class extends yn{constructor(t,e={}){super(t),this.isRefractor=!0,this.type="Refractor",this.camera=new Yn;const n=this,i=e.color!==void 0?new Me(e.color):new Me(8355711),r=e.textureWidth||512,s=e.textureHeight||512,o=e.clipBias||0,a=e.shader||SW.RefractorShader,l=e.multisample!==void 0?e.multisample:4,u=this.camera;u.matrixAutoUpdate=!1,u.userData.refractor=!0;const c=new Ro,h=new st,f=new Yt(r,s,{samples:l,type:yi});this.material=new zt({uniforms:Kn.clone(a.uniforms),vertexShader:a.vertexShader,fragmentShader:a.fragmentShader,transparent:!0}),this.material.uniforms.color.value=i,this.material.uniforms.tDiffuse.value=f.texture,this.material.uniforms.textureMatrix.value=h;const m=function(){const y=new L,q=new L,E=new st,T=new L,C=new L;return function(R){return y.setFromMatrixPosition(n.matrixWorld),q.setFromMatrixPosition(R.matrixWorld),T.subVectors(y,q),E.extractRotation(n.matrixWorld),C.set(0,0,1),C.applyMatrix4(E),T.dot(C)<0}}(),g=function(){const y=new L,q=new L,E=new rs,T=new L;return function(){n.matrixWorld.decompose(q,E,T),y.set(0,0,1).applyQuaternion(E).normalize(),y.negate(),c.setFromNormalAndCoplanarPoint(y,q)}}(),v=function(){const y=new Ro,q=new Zt,E=new Zt;return function(C){u.matrixWorld.copy(C.matrixWorld),u.matrixWorldInverse.copy(u.matrixWorld).invert(),u.projectionMatrix.copy(C.projectionMatrix),u.far=C.far,y.copy(c),y.applyMatrix4(u.matrixWorldInverse),q.set(y.normal.x,y.normal.y,y.normal.z,y.constant);const I=u.projectionMatrix;E.x=(Math.sign(q.x)+I.elements[8])/I.elements[0],E.y=(Math.sign(q.y)+I.elements[9])/I.elements[5],E.z=-1,E.w=(1+I.elements[10])/I.elements[14],q.multiplyScalar(2/q.dot(E)),I.elements[2]=q.x,I.elements[6]=q.y,I.elements[10]=q.z+1-o,I.elements[14]=q.w}}();function _(y){h.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),h.multiply(y.projectionMatrix),h.multiply(y.matrixWorldInverse),h.multiply(n.matrixWorld)}function A(y,q,E){n.visible=!1;const T=y.getRenderTarget(),C=y.xr.enabled,I=y.shadowMap.autoUpdate,R=y.toneMapping;let M=!1;"outputColorSpace"in y?M=y.outputColorSpace==="srgb":M=y.outputEncoding===3001,y.xr.enabled=!1,y.shadowMap.autoUpdate=!1,"outputColorSpace"in y?y.outputColorSpace="linear-srgb":y.outputEncoding=3e3,y.toneMapping=Fo,y.setRenderTarget(f),y.autoClear===!1&&y.clear(),y.render(q,u),y.xr.enabled=C,y.shadowMap.autoUpdate=I,y.toneMapping=R,y.setRenderTarget(T),"outputColorSpace"in y?y.outputColorSpace=M?"srgb":"srgb-linear":y.outputEncoding=M?3001:3e3;const b=E.viewport;b!==void 0&&y.state.viewport(b),n.visible=!0}this.onBeforeRender=function(y,q,E){E.userData.refractor!==!0&&m(E)&&(g(),_(E),v(E),A(y,q,E))},this.getRenderTarget=function(){return f},this.dispose=function(){f.dispose(),n.material.dispose()}}};let YE=SW;nt(YE,"RefractorShader",{uniforms:{color:{value:null},tDiffuse:{value:null},textureMatrix:{value:null}},vertexShader:` 5562 5563 uniform mat4 textureMatrix; 5564 5565 varying vec4 vUv; 5566 5567 void main() { 5568 5569 vUv = textureMatrix * vec4( position, 1.0 ); 5570 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 5571 5572 }`,fragmentShader:` 5573 5574 uniform vec3 color; 5575 uniform sampler2D tDiffuse; 5576 5577 varying vec4 vUv; 5578 5579 float blendOverlay( float base, float blend ) { 5580 5581 return( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) ); 5582 5583 } 5584 5585 vec3 blendOverlay( vec3 base, vec3 blend ) { 5586 5587 return vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) ); 5588 5589 } 5590 5591 void main() { 5592 5593 vec4 base = texture2DProj( tDiffuse, vUv ); 5594 gl_FragColor = vec4( blendOverlay( base.rgb, color ), 1.0 ); 5595 5596 #include <tonemapping_fragment> 5597 #include <${parseInt(Sa.replace(/\D+/g,""))>=154?"colorspace_fragment":"encodings_fragment"}> 5598 5599 }`});const P6e=new Bt,KE=class extends yn{constructor(){super(KE.Geometry,new Go({opacity:0,transparent:!0})),this.isLensflare=!0,this.type="Lensflare",this.frustumCulled=!1,this.renderOrder=1/0;const t=new L,e=new L,n=new ll(new Uint8Array(16*16*3),16,16,mi);n.minFilter=At,n.magFilter=At,n.wrapS=pi,n.wrapT=pi;const i=new ll(new Uint8Array(16*16*3),16,16,mi);i.minFilter=At,i.magFilter=At,i.wrapS=pi,i.wrapT=pi;const r=KE.Geometry,s=new P5({uniforms:{scale:{value:null},screenPosition:{value:null}},vertexShader:` 5600 5601 precision highp float; 5602 5603 uniform vec3 screenPosition; 5604 uniform vec2 scale; 5605 5606 attribute vec3 position; 5607 5608 void main() { 5609 5610 gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); 5611 5612 }`,fragmentShader:` 5613 5614 precision highp float; 5615 5616 void main() { 5617 5618 gl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 ); 5619 5620 }`,depthTest:!0,depthWrite:!1,transparent:!1}),o=new P5({uniforms:{map:{value:n},scale:{value:null},screenPosition:{value:null}},vertexShader:` 5621 5622 precision highp float; 5623 5624 uniform vec3 screenPosition; 5625 uniform vec2 scale; 5626 5627 attribute vec3 position; 5628 attribute vec2 uv; 5629 5630 varying vec2 vUV; 5631 5632 void main() { 5633 5634 vUV = uv; 5635 5636 gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); 5637 5638 }`,fragmentShader:` 5639 5640 precision highp float; 5641 5642 uniform sampler2D map; 5643 5644 varying vec2 vUV; 5645 5646 void main() { 5647 5648 gl_FragColor = texture2D( map, vUV ); 5649 5650 }`,depthTest:!1,depthWrite:!1,transparent:!1}),a=new yn(r,s),l=[],u=TW.Shader,c=new P5({uniforms:{map:{value:null},occlusionMap:{value:i},color:{value:new Me(16777215)},scale:{value:new oe},screenPosition:{value:new L}},vertexShader:u.vertexShader,fragmentShader:u.fragmentShader,blending:gd,transparent:!0,depthWrite:!1}),h=new yn(r,c);this.addElement=function(_){l.push(_)};const f=new oe,m=new oe,g=new $z,v=new Zt;this.onBeforeRender=function(_,A,y){_.getCurrentViewport(v);const q=v.w/v.z,E=v.z/2,T=v.w/2;let C=16/v.w;if(f.set(C*q,C),g.min.set(v.x,v.y),g.max.set(v.x+(v.z-16),v.y+(v.w-16)),e.setFromMatrixPosition(this.matrixWorld),e.applyMatrix4(y.matrixWorldInverse),!(e.z>0)&&(t.copy(e).applyMatrix4(y.projectionMatrix),m.x=v.x+t.x*E+E-8,m.y=v.y+t.y*T+T-8,g.containsPoint(m))){_.copyFramebufferToTexture(m,n);let I=s.uniforms;I.scale.value=f,I.screenPosition.value=t,_.renderBufferDirect(y,null,r,s,a,null),_.copyFramebufferToTexture(m,i
5650),I=o.uniforms,I.scale.value=f,I.screenPosition.value=t,_.renderBufferDirect(y,null,r,o,a,null);const R=-t.x*2,M=-t.y*2;for(let b=0,D=l.length;b<D;b++){const z=l[b],O=c.uniforms;O.color.value.copy(z.color),O.map.value=z.texture,O.screenPosition.value.x=t.x+R*z.distance,O.screenPosition.value.y=t.y+M*z.distance,C=z.size/v.w;const W=v.w/v.z;O.scale.value.set(C*W,C),c.uniformsNeedUpdate=!0,_.renderBufferDirect(y,null,r,c,h,null)}}},this.dispose=function(){s.dispose(),o.dispose(),c.dispose(),n.dispose(),i.dispose();for(let _=0,A=l.length;_<A;_++)l[_].texture.dispose()}}};let B6e=KE;nt(B6e,"Geometry",P6e);class TW{constructor(e,n=1,i=0,r=new Me(16777215)){this.texture=e,this.size=n,this.distance=i,this.color=r}}nt(TW,"Shader",{uniforms:{map:{value:null},occlusionMap:{value:null},color:{value:null},scale:{value:null},screenPosition:{value:null}},vertexShader:` 5651 5652 precision highp float; 5653 5654 uniform vec3 screenPosition; 5655 uniform vec2 scale; 5656 5657 uniform sampler2D occlusionMap; 5658 5659 attribute vec3 position; 5660 attribute vec2 uv; 5661 5662 varying vec2 vUV; 5663 varying float vVisibility; 5664 5665 void main() { 5666 5667 vUV = uv; 5668 5669 vec2 pos = position.xy; 5670 5671 vec4 visibility = texture2D( occlusionMap, vec2( 0.1, 0.1 ) ); 5672 visibility += texture2D( occlusionMap, vec2( 0.5, 0.1 ) ); 5673 visibility += texture2D( occlusionMap, vec2( 0.9, 0.1 ) ); 5674 visibility += texture2D( occlusionMap, vec2( 0.9, 0.5 ) ); 5675 visibility += texture2D( occlusionMap, vec2( 0.9, 0.9 ) ); 5676 visibility += texture2D( occlusionMap, vec2( 0.5, 0.9 ) ); 5677 visibility += texture2D( occlusionMap, vec2( 0.1, 0.9 ) ); 5678 visibility += texture2D( occlusionMap, vec2( 0.1, 0.5 ) ); 5679 visibility += texture2D( occlusionMap, vec2( 0.5, 0.5 ) ); 5680 5681 vVisibility = visibility.r / 9.0; 5682 vVisibility *= 1.0 - visibility.g / 9.0; 5683 vVisibility *= visibility.b / 9.0; 5684 5685 gl_Position = vec4( ( pos * scale + screenPosition.xy ).xy, screenPosition.z, 1.0 ); 5686 5687 }`,fragmentShader:` 5688 5689 precision highp float; 5690 5691 uniform sampler2D map; 5692 uniform vec3 color; 5693 5694 varying vec2 vUV; 5695 varying float vVisibility; 5696 5697 void main() { 5698 5699 vec4 texture = texture2D( map, vUV ); 5700 texture.a *= vVisibility; 5701 gl_FragColor = texture; 5702 gl_FragColor.rgb *= color; 5703 5704 }`});class G5{constructor(e=Math){nt(this,"grad3",[[1,1,0],[-1,1,0],[1,-1,0],[-1,-1,0],[1,0,1],[-1,0,1],[1,0,-1],[-1,0,-1],[0,1,1],[0,-1,1],[0,1,-1],[0,-1,-1]]),nt(this,"grad4",[[0,1,1,1],[0,1,1,-1],[0,1,-1,1],[0,1,-1,-1],[0,-1,1,1],[0,-1,1,-1],[0,-1,-1,1],[0,-1,-1,-1],[1,0,1,1],[1,0,1,-1],[1,0,-1,1],[1,0,-1,-1],[-1,0,1,1],[-1,0,1,-1],[-1,0,-1,1],[-1,0,-1,-1],[1,1,0,1],[1,1,0,-1],[1,-1,0,1],[1,-1,0,-1],[-1,1,0,1],[-1,1,0,-1],[-1,-1,0,1],[-1,-1,0,-1],[1,1,1,0],[1,1,-1,0],[1,-1,1,0],[1,-1,-1,0],[-1,1,1,0],[-1,1,-1,0],[-1,-1,1,0],[-1,-1,-1,0]]),nt(this,"p",[]),nt(this,"perm",[]),nt(this,"simplex",[[0,1,2,3],[0,1,3,2],[0,0,0,0],[0,2,3,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,3,0],[0,2,1,3],[0,0,0,0],[0,3,1,2],[0,3,2,1],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,3,2,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[1,2,0,3],[0,0,0,0],[1,3,0,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,3,0,1],[2,3,1,0],[1,0,2,3],[1,0,3,2],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,3,1],[0,0,0,0],[2,1,3,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[2,0,1,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,0,1,2],[3,0,2,1],[0,0,0,0],[3,1,2,0],[2,1,0,3],[0,0,0,0],[0,0,0,0],[0,0,0,0],[3,1,0,2],[0,0,0,0],[3,2,0,1],[3,2,1,0]]),nt(this,"dot",(n,i,r)=>n[0]*i+n[1]*r),nt(this,"dot3",(n,i,r,s)=>n[0]*i+n[1]*r+n[2]*s),nt(this,"dot4",(n,i,r,s,o)=>n[0]*i+n[1]*r+n[2]*s+n[3]*o),nt(this,"noise",(n,i)=>{let r,s,o;const a=.5*(Math.sqrt(3)-1),l=(n+i)*a,u=Math.floor(n+l),c=Math.floor(i+l),h=(3-Math.sqrt(3))/6,f=(u+c)*h,m=u-f,g=c-f,v=n-m,_=i-g;let A=0,y=1;v>_&&(A=1,y=0);const q=v-A+h,E=_-y+h,T=v-1+2*h,C=_-1+2*h,I=u&255,R=c&255,M=this.perm[I+this.perm[R]]%12,b=this.perm[I+A+this.perm[R+y]]%12,D=this.perm[I+1+this.perm[R+1]]%12;let z=.5-v*v-_*_;z<0?r=0:(z*=z,r=z*z*this.dot(this.grad3[M],v,_));let O=.5-q*q-E*E;O<0?s=0:(O*=O,s=O*O*this.dot(this.grad3[b],q,E));let W=.5-T*T-C*C;return W<0?o=0:(W*=W,o=W*W*this.dot(this.grad3[D],T,C)),70*(r+s+o)}),nt(this,"noise3d",(n,i,r)=>
5704{let s,o,a,l;const u=.3333333333333333,c=(n+i+r)*u,h=Math.floor(n+c),f=Math.floor(i+c),m=Math.floor(r+c),g=1/6,v=(h+f+m)*g,_=h-v,A=f-v,y=m-v,q=n-_,E=i-A,T=r-y;let C,I,R,M,b,D;q>=E?E>=T?(C=1,I=0,R=0,M=1,b=1,D=0):q>=T?(C=1,I=0,R=0,M=1,b=0,D=1):(C=0,I=0,R=1,M=1,b=0,D=1):E<T?(C=0,I=0,R=1,M=0,b=1,D=1):q<T?(C=0,I=1,R=0,M=0,b=1,D=1):(C=0,I=1,R=0,M=1,b=1,D=0);const z=q-C+g,O=E-I+g,W=T-R+g,$=q-M+2*g,K=E-b+2*g,Y=T-D+2*g,B=q-1+3*g,U=E-1+3*g,F=T-1+3*g,k=h&255,Q=f&255,ce=m&255,ae=this.perm[k+this.perm[Q+this.perm[ce]]]%12,ge=this.perm[k+C+this.perm[Q+I+this.perm[ce+R]]]%12,ye=this.perm[k+M+this.perm[Q+b+this.perm[ce+D]]]%12,xe=this.perm[k+1+this.perm[Q+1+this.perm[ce+1]]]%12;let Le=.6-q*q-E*E-T*T;Le<0?s=0:(Le*=Le,s=Le*Le*this.dot3(this.grad3[ae],q,E,T));let $e=.6-z*z-O*O-W*W;$e<0?o=0:($e*=$e,o=$e*$e*this.dot3(this.grad3[ge],z,O,W));let Qe=.6-$*$-K*K-Y*Y;Qe<0?a=0:(Qe*=Qe,a=Qe*Qe*this.dot3(this.grad3[ye],$,K,Y));let Be=.6-B*B-U*U-F*F;return Be<0?l=0:(Be*=Be,l=Be*Be*this.dot3(this.grad3[xe],B,U,F)),32*(s+o+a+l)}),nt(this,"noise4d",(n,i,r,s)=>{const o=this.grad4,a=this.simplex,l=this.perm,u=(Math.sqrt(5)-1)/4,c=(5-Math.sqrt(5))/20;let h,f,m,g,v;const _=(n+i+r+s)*u,A=Math.floor(n+_),y=Math.floor(i+_),q=Math.floor(r+_),E=Math.floor(s+_),T=(A+y+q+E)*c,C=A-T,I=y-T,R=q-T,M=E-T,b=n-C,D=i-I,z=r-R,O=s-M,W=b>D?32:0,$=b>z?16:0,K=D>z?8:0,Y=b>O?4:0,B=D>O?2:0,U=z>O?1:0,F=W+$+K+Y+B+U;let k,Q,ce,ae,ge,ye,xe,Le,$e,Qe,Be,X;k=a[F][0]>=3?1:0,Q=a[F][1]>=3?1:0,ce=a[F][2]>=3?1:0,ae=a[F][3]>=3?1:0,ge=a[F][0]>=2?1:0,ye=a[F][1]>=2?1:0,xe=a[F][2]>=2?1:0,Le=a[F][3]>=2?1:0,$e=a[F][0]>=1?1:0,Qe=a[F][1]>=1?1:0,Be=a[F][2]>=1?1:0,X=a[F][3]>=1?1:0;const qe=b-k+c,ve=D-Q+c,Se=z-ce+c,_e=O-ae+c,it=b-ge+2*c,Ge=D-ye+2*c,He=z-xe+2*c,pt=O-Le+2*c,Vt=b-$e+3*c,Sn=D-Qe+3*c,j=z-Be+3*c,N=O-X+3*c,se=b-1+4*c,Te=D-1+4*c,Ee=z-1+4*c,we=O-1+4*c,Ye=A&255,Ie=y&255,le=q&255,ot=E&255,ut=l[Ye+l[Ie+l[le+l[ot]]]]%32,ft=l[Ye+k+l[Ie+Q+l[le+ce+l[ot+ae]]]]%32,Ke=l[Ye+ge+l[Ie+ye+l[le+xe+l[ot+Le]]]]%32,Je=l[Ye+$e+l[Ie+Qe+l[le+Be+l[ot+X]]]]%32,Ft=l[Ye+1+l[Ie+1+l[le+1+l[ot+1]]]]%32;let rn=.6-b*b-D*D-z*z-O*O;rn<0?h=0:(rn*=rn,h=rn*rn*this.dot4(o[ut],b,D,z,O));let J=.6-qe*qe-ve*ve-Se*Se-_e*_e;J<0?f=0:(J*=J,f=J*J*this.dot4(o[ft],qe,ve,Se,_e));let De=.6-it*it-Ge*Ge-He*He-pt*pt;De<0?m=0:(De*=De,m=De*De*this.dot4(o[Ke],it,Ge,He,pt));let ue=.6-Vt*Vt-Sn*Sn-j*j-N*N;ue<0?g=0:(ue*=ue,g=ue*ue*this.dot4(o[Je],Vt,Sn,j,N));let be=.6-se*se-Te*Te-Ee*Ee-we*we;return be<0?v=0:(be*=be,v=be*be*this.dot4(o[Ft],se,Te,Ee,we)),27*(h+f+m+g+v)});for(let n=0;n<256;n++)this.p[n]=Math.floor(e.random()*256);for(let n=0;n<512;n++)this.perm[n]=this.p[n&255]}}const Kr=class extends Bt{constructor(t={}){super(),this.isLightningStrike=!0,this.type="LightningStrike",this.init(Kr.copyParameters(t,t)),this.createMesh()}static createRandomGenerator(){const e=[];for(let i=0;i<2053;i++)e.push(Math.random());const n={currentSeed:0,random:function(){const i=e[n.currentSeed];return n.currentSeed=(n.currentSeed+1)%2053,i},getSeed:function(){return n.currentSeed/2053},setSeed:function(i){n.currentSeed=Math.floor(i*2053)%2053}};return n}static copyParameters(t={},e={}){const n=function(i){return e===t?i:i.clone()};return t.sourceOffset=e.sourceOffset!==void 0?n(e.sourceOffset):new L(0,100,0),t.destOffset=e.destOffset!==void 0?n(e.destOffset):new L(0,0,0),t.timeScale=e.timeScale!==void 0?e.timeScale:1,t.roughness=e.roughness!==void 0?e.roughness:.9,t.straightness=e.straightness!==void 0?e.straightness:.7,t.up0=e.up0!==void 0?n(e.up0):new L(0,0,1),t.up1=e.up1!==void 0?n(e.up1):new L(0,0,1),t.radius0=e.radius0!==void 0?e.radius0:1,t.radius1=e.radius1!==void 0?e.radius1:1,t.radius0Factor=e.radius0Factor!==void 0?e.radius0Factor:.5,t.radius1Factor=e.radius1Factor!==void 0?e.radius1Factor:.2,t.minRadius=e.minRadius!==void 0?e.minRadius:.2,t.isEternal=e.isEternal!==void 0?e.isEternal:e.birthTime===void 0||e.deathTime===void 0,t.birthTime=e.birthTime,t.deathTime=e.deathTime,t.propagationTimeFactor=e.propagationTimeFactor!==void 0?e.propagationTimeFactor:.1,t.vanishingTimeFactor=e.vanishingTimeFactor!==void 0?e.vanishingTimeFactor:.9,t.subrayPeriod=e.subrayPeriod!==void 0?e.subrayPeriod:4,t.subrayDutyCycle=e.subrayDutyCycle!==void 0?e.subrayDutyCycle:.6,t.max
5704Iterations=e.maxIterations!==void 0?e.maxIterations:9,t.isStatic=e.isStatic!==void 0?e.isStatic:!1,t.ramification=e.ramification!==void 0?e.ramification:5,t.maxSubrayRecursion=e.maxSubrayRecursion!==void 0?e.maxSubrayRecursion:3,t.recursionProbability=e.recursionProbability!==void 0?e.recursionProbability:.6,t.generateUVs=e.generateUVs!==void 0?e.generateUVs:!1,t.randomGenerator=e.randomGenerator,t.noiseSeed=e.noiseSeed,t.onDecideSubrayCreation=e.onDecideSubrayCreation,t.onSubrayCreation=e.onSubrayCreation,t}update(t){this.isStatic||(this.rayParameters.isEternal||this.rayParameters.birthTime<=t&&t<=this.rayParameters.deathTime?(this.updateMesh(t),t<this.subrays[0].endPropagationTime?this.state=Kr.RAY_PROPAGATING:t>this.subrays[0].beginVanishingTime?this.state=Kr.RAY_VANISHING:this.state=Kr.RAY_STEADY,this.visible=!0):(this.visible=!1,t<this.rayParameters.birthTime?this.state=Kr.RAY_UNBORN:this.state=Kr.RAY_EXTINGUISHED))}init(t){this.rayParameters=t,this.maxIterations=t.maxIterations!==void 0?Math.floor(t.maxIterations):9,t.maxIterations=this.maxIterations,this.isStatic=t.isStatic!==void 0?t.isStatic:!1,t.isStatic=this.isStatic,this.ramification=t.ramification!==void 0?Math.floor(t.ramification):5,t.ramification=this.ramification,this.maxSubrayRecursion=t.maxSubrayRecursion!==void 0?Math.floor(t.maxSubrayRecursion):3,t.maxSubrayRecursion=this.maxSubrayRecursion,this.recursionProbability=t.recursionProbability!==void 0?t.recursionProbability:.6,t.recursionProbability=this.recursionProbability,this.generateUVs=t.generateUVs!==void 0?t.generateUVs:!1,t.generateUVs=this.generateUVs,t.randomGenerator!==void 0?(this.randomGenerator=t.randomGenerator,this.seedGenerator=t.randomGenerator,t.noiseSeed!==void 0&&this.seedGenerator.setSeed(t.noiseSeed)):(this.randomGenerator=Kr.createRandomGenerator(),this.seedGenerator=Math),t.onDecideSubrayCreation!==void 0?this.onDecideSubrayCreation=t.onDecideSubrayCreation:(this.createDefaultSubrayCreationCallbacks(),t.onSubrayCreation!==void 0&&(this.onSubrayCreation=t.onSubrayCreation)),this.state=Kr.RAY_INITIALIZED,this.maxSubrays=Math.ceil(1+Math.pow(this.ramification,Math.max(0,this.maxSubrayRecursion-1))),t.maxSubrays=this.maxSubrays,this.maxRaySegments=2*(1<<this.maxIterations),this.subrays=[];for(let e=0;e<this.maxSubrays;e++)this.subrays.push(this.createSubray());this.raySegments=[];for(let e=0;e<this.maxRaySegments;e++)this.raySegments.push(this.createSegment());this.time=0,this.timeFraction=0,this.currentSegmentCallback=null,this.currentCreateTriangleVertices=this.generateUVs?this.createTriangleVerticesWithUVs:this.createTriangleVerticesWithoutUVs,this.numSubrays=0,this.currentSubray=null,this.currentSegmentIndex=0,this.isInitialSegment=!1,this.subrayProbability=0,this.currentVertex=0,this.currentIndex=0,this.currentCoordinate=0,this.currentUVCoordinate=0,this.vertices=null,this.uvs=null,this.indices=null,this.positionAttribute=null,this.uvsAttribute=null,this.simplexX=new G5(this.seedGenerator),this.simplexY=new G5(this.seedGenerator),this.simplexZ=new G5(this.seedGenerator),this.forwards=new L,this.forwardsFill=new L,this.side=new L,this.down=new L,this.middlePos=new L,this.middleLinPos=new L,this.newPos=new L,this.vPos=new L,this.cross1=new L}createMesh(){const t=1<<this.maxIterations,e=3*(t+1)*this.maxSubrays,n=18*t*this.maxSubrays;this.vertices=new Float32Array(e*3),this.indices=new Uint32Array(n),this.generateUVs&&(this.uvs=new Float32Array(e*2)),this.fillMesh(0),this.setIndex(new j9(this.indices,1)),this.positionAttribute=new tt(this.vertices,3),this.setAttribute("position",this.positionAttribute),this.generateUVs&&(this.uvsAttribute=new tt(new Float32Array(this.uvs),2),this.setAttribute("uv",this.uvsAttribute)),this.isStatic||(this.index.usage=T8,this.positionAttribute.usage=T8,this.generateUVs&&(this.uvsAttribute.usage=T8)),this.vertices=this.positionAttribute.array,this.indices=this.index.array,this.generateUVs&&(this.uvs=this.uvsAttribute.array)}updateMesh(t){this.fillMesh(t),this.drawRange.count=this.currentIndex,this.index.needsUpdate=!0,this.positionAttribute.needsUpdate=!0,this.generateUVs&&(this.uvsAttribute.needsUpdate=!0)}fillMesh(t){const e=this;this.currentVertex=0,this.currentIndex=0,this.currentCoordinate=0,this.currentUVCoordinate=0,this.fractalRay(t,function(i){const r=e.currentSubray;t<r.birthTime||(this.rayParameters.isEternal&&e.currentSubray.recursion==0?(e.createPrism(i),e.onDecideSubrayCreation(i,e)):t<r.endPropagationTime?e.timeFraction>=i.fraction0*r.propagationTimeFactor&&(e.createPrism(i),e.onDecideSubrayCreation(i,e)):t<r.beginVanishingTime?(e.createPrism(i),e.onDecideSubrayCreation(i,e)):(e.timeFraction<=r.vanishingTimeFactor+i.fraction1*(1-r.vanishingTimeFactor)&&e.createPrism(i),e.onDecideSubrayCreation(i,e)))})}addNewSubray(){return this.subrays[this.numSubrays++]}initSubray(t,e){t.pos0.copy(e.sourceOffset),t.pos1.copy(e.destOffset),t.up0.copy(e.up0),t.up1.copy(e.up1),t.radiu
5704s0=e.radius0,t.radius1=e.radius1,t.birthTime=e.birthTime,t.deathTime=e.deathTime,t.timeScale=e.timeScale,t.roughness=e.roughness,t.straightness=e.straightness,t.propagationTimeFactor=e.propagationTimeFactor,t.vanishingTimeFactor=e.vanishingTimeFactor,t.maxIterations=this.maxIterations,t.seed=e.noiseSeed!==void 0?e.noiseSeed:0,t.recursion=0}fractalRay(t,e){this.time=t,this.currentSegmentCallback=e,this.numSubrays=0,this.initSubray(this.addNewSubray(),this.rayParameters);for(let n=0;n<this.numSubrays;n++){const i=this.subrays[n];this.currentSubray=i,this.randomGenerator.setSeed(i.seed),i.endPropagationTime=C0.lerp(i.birthTime,i.deathTime,i.propagationTimeFactor),i.beginVanishingTime=C0.lerp(i.deathTime,i.birthTime,1-i.vanishingTimeFactor);const r=this.randomGenerator.random;i.linPos0.set(r(),r(),r()).multiplyScalar(1e3),i.linPos1.set(r(),r(),r()).multiplyScalar(1e3),this.timeFraction=(t-i.birthTime)/(i.deathTime-i.birthTime),this.currentSegmentIndex=0,this.isInitialSegment=!0;const s=this.getNewSegment();s.iteration=0,s.pos0.copy(i.pos0),s.pos1.copy(i.pos1),s.linPos0.copy(i.linPos0),s.linPos1.copy(i.linPos1),s.up0.copy(i.up0),s.up1.copy(i.up1),s.radius0=i.radius0,s.radius1=i.radius1,s.fraction0=0,s.fraction1=1,s.positionVariationFactor=1-i.straightness,this.subrayProbability=this.ramification*Math.pow(this.recursionProbability,i.recursion)/(1<<i.maxIterations),this.fractalRayRecursive(s)}this.currentSegmentCallback=null,this.currentSubray=null}fractalRayRecursive(t){if(t.iteration>=this.currentSubray.maxIterations){this.currentSegmentCallback(t);return}this.forwards.subVectors(t.pos1,t.pos0);let e=this.forwards.length();e<1e-6&&(this.forwards.set(0,0,.01),e=this.forwards.length());const n=(t.radius0+t.radius1)*.5,i=(t.fraction0+t.fraction1)*.5,r=this.time*this.currentSubray.timeScale*Math.pow(2,t.iteration);this.middlePos.lerpVectors(t.pos0,t.pos1,.5),this.middleLinPos.lerpVectors(t.linPos0,t.linPos1,.5);const s=this.middleLinPos;this.newPos.set(this.simplexX.noise4d(s.x,s.y,s.z,r),this.simplexY.noise4d(s.x,s.y,s.z,r),this.simplexZ.noise4d(s.x,s.y,s.z,r)),this.newPos.multiplyScalar(t.positionVariationFactor*e),this.newPos.add(this.middlePos);const o=this.getNewSegment();o.pos0.copy(t.pos0),o.pos1.copy(this.newPos),o.linPos0.copy(t.linPos0),o.linPos1.copy(this.middleLinPos),o.up0.copy(t.up0),o.up1.copy(t.up1),o.radius0=t.radius0,o.radius1=n,o.fraction0=t.fraction0,o.fraction1=i,o.positionVariationFactor=t.positionVariationFactor*this.currentSubray.roughness,o.iteration=t.iteration+1;const a=this.getNewSegment();a.pos0.copy(this.newPos),a.pos1.copy(t.pos1),a.linPos0.copy(this.middleLinPos),a.linPos1.copy(t.linPos1),this.cross1.crossVectors(t.up0,this.forwards.normalize()),a.up0.crossVectors(this.forwards,this.cross1).normalize(),a.up1.copy(t.up1),a.radius0=n,a.radius1=t.radius1,a.fraction0=i,a.fraction1=t.fraction1,a.positionVariationFactor=t.positionVariationFactor*this.currentSubray.roughness,a.iteration=t.iteration+1,this.fractalRayRecursive(o),this.fractalRayRecursive(a)}createPrism(t){this.forwardsFill.subVectors(t.pos1,t.pos0).normalize(),this.isInitialSegment&&(this.currentCreateTriangleVertices(t.pos0,t.up0,this.forwardsFill,t.radius0,0),this.isInitialSegment=!1),this.currentCreateTriangleVertices(t.pos1,t.up0,this.forwardsFill,t.radius1,t.fraction1),this.createPrismFaces()}createTriangleVerticesWithoutUVs(t,e,n,i){this.side.crossVectors(e,n).multiplyScalar(i*Kr.COS30DEG),this.down.copy(e).multiplyScalar(-i*Kr.SIN30DEG);const r=this.vPos,s=this.vertices;r.copy(t).sub(this.side).add(this.down),s[this.currentCoordinate++]=r.x,s[this.currentCoordinate++]=r.y,s[this.currentCoordinate++]=r.z,r.copy(t).add(this.side).add(this.down),s[this.currentCoordinate++]=r.x,s[this.currentCoordinate++]=r.y,s[this.currentCoordinate++]=r.z,r.copy(e).multiplyScalar(i).add(t),s[this.currentCoordinate++]=r.x,s[this.currentCoordinate++]=r.y,s[this.currentCoordinate++]=r.z,this.currentVertex+=3}createTriangleVerticesWithUVs(t,e,n,i,r){this.side.crossVectors(e,n).multiplyScalar(i*Kr.COS30DEG),this.down.copy(e).multiplyScalar(-i*Kr.SIN30DEG);const s=this.vPos,o=this.vertices,a=this.uvs;s.copy(t).sub(this.side).add(this.down),o[this.currentCoordinate++]=s.x,o[this.currentCoordinate++]=s.y,o[this.currentCoordinate++]=s.z,a[this.currentUVCoordinate++]=r,a[this.currentUVCoordinate++]=0,s.copy(t).add(this.side).add(this.down),o[this.currentCoordinate++]=s.x,o[this.currentCoordinate++]=s.y,o[this.currentCoordinate++]=s.z,a[this.currentUVCoordinate++]=r,a[this.currentUVCoordinate++]=.5,s.copy(e).multiplyScalar(i).add(t),o[this.currentCoordinate++]=s.x,o[this.currentCoordinate++]=s.y,o[this.currentCoordinate++]=s.z,a[this.currentUVCoordinate++]=r,a[this.currentUVCoordinate++]=1,this.currentVertex+=3}createPrismFaces(t){const e=this.indices;t=this.currentVertex-6,e[this.currentIndex++]=t+1,e[this.currentIndex++]=t+2,e[this.currentIndex++]=t+5,e[this.currentIndex++]=t+1,e[this.currentIndex++]=t+5,e[this.currentIndex++]=t+4,e[this.currentIndex++]=t+0,e[this.currentIndex++]=t+1,e[this.currentIndex++]=t+4,e[this.currentIndex++]=t+0,e[this.currentIndex++]=t+4,e[this.currentIndex++]=t+3,e[this.currentIndex++]=t+2,e[this.currentIndex++]=t+0,e[this.currentIndex++]=t+3,e[this.currentIndex++]=t+2,e[this.currentIndex++]=t+3,e[this.currentIndex++]=t+5}createDefaultSubrayCreationCallbacks(){const t=this.randomGenerator.random;this.onDecideSubrayCreation=function(s,o){const a=o.currentSubray,l=o.rayParameters.subrayPeriod,u=o.rayParameters.subrayDutyCycle,c=o.rayParameters.isEternal&&a.recursion==0?-t()*l:C0.lerp(a.birthTime,a.endPropagationTime,s.fraction0)-t()*l,h=o.time-c,f=Math.floor(h/l),m=t()*(f+1),g=h%l<=u*l;let v=0;if(g&&(v=o.subrayProbability),a.recursion<o.maxSubrayRecursion&&o.numSubrays<o.maxSubrays&&t()<v){const _=o.addNewSubray(),A=o.randomGenerator.getSeed();_.seed=m,o.randomGenerator.setSeed(m),_.recursion=a.recursion+1,_.maxIterations=Math.max(1,a.maxIterations-1),_.linPos0.set(t(),t(),t()).multiplyScalar(1e3),_.linPos1.set(t(),t(),t()).multiplyScalar(1e3),_.up0.copy(a.up0),_.up1.copy(a.up1),_.radius0=s.radius0*o.rayParameters.radius0Factor,_.radius1=Math.min(o.rayParameters.minRadius,s.radius1*o.rayParameters.radius1Factor),_.birthTime=c+f*l,_.deathTime=_.birthTime+l*u,!o.rayParameters.isEternal&&a.recursion==0&&(_.birthTime=Math.max(_.birthTime,a.birthTime),_.deathTime=Math.min(_.deathTime,a.deathTime)),_.timeScale=a.timeScale*2,_.roughness=a.roughness,_.straightness=a.straightness,_.propagationTimeFactor=a.propagationTimeFactor,_.vanishingTimeFactor=a.vanishingTimeFactor,o.onSubrayCreation(s,a,_,o),o.randomGenerator.setSeed(A)}};const e=new L,n=new L,i=new L,r=new L;this.onSubrayCreation=function(s,o,a,l){l.subrayCylinderPosition(s,o,a,.5,.6,.2)},this.subrayConePosition=function(s,o,a,l,u,c){a.pos0.copy(s.pos0),e.subVectors(o.pos1,o.pos0),n.copy(e).normalize(),e.multiplyScalar(s.fraction0+(1-s.fraction0)*(t()*l));const h=e.length();i.crossVectors(o.up0,n);const f=2*Math.PI*t();i.multiplyScalar(Math.cos(f)),r.copy(o.up0).multiplyScalar(Math.sin(f)),a.pos1.copy(i).add(r).multiplyScalar(h*u*(c+t()*(1-c))).add(e).add(o.pos0)},this.subrayCylinderPosition=function(s,o,a,l,u,c){a.pos0.copy(s.pos0),e.subVectors(o.pos1,o.pos0),n.copy(e).normalize(),e.multiplyScalar(s.fraction0+(1-s.fraction0)*((2*t()-1)*l));const h=e.length();i.crossVectors(o.up0,n);const f=2*Math.PI*t();i.multiplyScalar(Math.cos(f)),r.copy(o.up0).multiplyScalar(Math.sin(f)),a.pos1.copy(i).add(r).multiplyScalar(h*u*(c+t()*(1-c))).add(e).add(o.pos0)}}createSubray(){return{seed:0,maxIterations:0,recursion:0,pos0:new L,pos1:new L,linPos0:new L,linPos1:new L,up0:new L,up1:new L,radius0:0,radius1:0,birthTime:0,deathTime:0,timeScale:0,roughness:0,straightness:0,propagationTimeFactor:0,vanishingTimeFactor:0,endPropagationTime:0,beginVanishingTime:0}}createSegment(){return{iteration:0,pos0:new L,pos1:new L,linPos0:new L,linPos1:new L,up0:new L,up1:new L,radius0:0,radius1:0,fraction0:0,fraction1:0,positionVariationFactor:0}}getNewSegment(){return this.raySegments[this.currentSegmentIndex++]}copy(t){return super.copy(t),this.init(Kr.copyParameters({},t.rayParameters)),this}clone(){return new this.constructor(Kr.copyParameters({},this.rayParameters))}};let oh=Kr;nt(oh,"RAY_INITIALIZED",0);nt(oh,"RAY_UNBORN",1);nt(oh,"RAY_PROPAGATING",2);nt(oh,"RAY_STEADY",3);nt(oh,"RAY_VANISHING",4);nt(oh,"RAY_EXTINGUISHED",5);
5704nt(oh,"COS30DEG",Math.cos(30*Math.PI/180));nt(oh,"SIN30DEG",Math.sin(30*Math.PI/180));const Fh=class extends yn{constructor(t,e={}){super(t),this.isReflectorForSSRPass=!0,this.type="ReflectorForSSRPass";const n=this,i=e.color!==void 0?new Me(e.color):new Me(8355711),r=e.textureWidth||512,s=e.textureHeight||512,o=e.clipBias||0,a=e.shader||Fh.ReflectorShader,l=e.useDepthTexture===!0,u=new L(0,1,0),c=new L,h=new L;n.needsUpdate=!1,n.maxDistance=Fh.ReflectorShader.uniforms.maxDistance.value,n.opacity=Fh.ReflectorShader.uniforms.opacity.value,n.color=i,n.resolution=e.resolution||new oe(window.innerWidth,window.innerHeight),n._distanceAttenuation=Fh.ReflectorShader.defines.DISTANCE_ATTENUATION,Object.defineProperty(n,"distanceAttenuation",{get(){return n._distanceAttenuation},set(D){n._distanceAttenuation!==D&&(n._distanceAttenuation=D,n.material.defines.DISTANCE_ATTENUATION=D,n.material.needsUpdate=!0)}}),n._fresnel=Fh.ReflectorShader.defines.FRESNEL,Object.defineProperty(n,"fresnel",{get(){return n._fresnel},set(D){n._fresnel!==D&&(n._fresnel=D,n.material.defines.FRESNEL=D,n.material.needsUpdate=!0)}});const f=new L,m=new L,g=new L,v=new st,_=new L(0,0,-1),A=new L,y=new L,q=new st,E=new Yn;let T;l&&(T=new z1,T.type=U1,T.minFilter=At,T.magFilter=At);const C={depthTexture:l?T:null,type:yi},I=new Yt(r,s,C),R=new zt({transparent:l,defines:Object.assign({},Fh.ReflectorShader.defines,{useDepthTexture:l}),uniforms:Kn.clone(a.uniforms),fragmentShader:a.fragmentShader,vertexShader:a.vertexShader});R.uniforms.tDiffuse.value=I.texture,R.uniforms.color.value=n.color,R.uniforms.textureMatrix.value=q,l&&(R.uniforms.tDepth.value=I.depthTexture),this.material=R;const b=[new Ro(new L(0,1,0),o)];this.doRender=function(D,z,O){if(R.uniforms.maxDistance.value=n.maxDistance,R.uniforms.color.value=n.color,R.uniforms.opacity.value=n.opacity,c.copy(O.position).normalize(),h.copy(c).reflect(u),R.uniforms.fresnelCoe.value=(c.dot(h)+1)/2,m.setFromMatrixPosition(n.matrixWorld),g.setFromMatrixPosition(O.matrixWorld),v.extractRotation(n.matrixWorld),f.set(0,0,1),f.applyMatrix4(v),A.subVectors(m,g),A.dot(f)>0)return;A.reflect(f).negate(),A.add(m),v.extractRotation(O.matrixWorld),_.set(0,0,-1),_.applyMatrix4(v),_.add(g),y.subVectors(m,_),y.reflect(f).negate(),y.add(m),E.position.copy(A),E.up.set(0,1,0),E.up.applyMatrix4(v),E.up.reflect(f),E.lookAt(y),E.far=O.far,E.updateMatrixWorld(),E.projectionMatrix.copy(O.projectionMatrix),R.uniforms.virtualCameraNear.value=O.near,R.uniforms.virtualCameraFar.value=O.far,R.uniforms.virtualCameraMatrixWorld.value=E.matrixWorld,R.uniforms.virtualCameraProjectionMatrix.value=O.projectionMatrix,R.uniforms.virtualCameraProjectionMatrixInverse.value=O.projectionMatrixInverse,R.uniforms.resolution.value=n.resolution,q.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),q.multiply(E.projectionMatrix),q.multiply(E.matrixWorldInverse),q.multiply(n.matrixWorld);const W=D.getRenderTarget(),$=D.xr.enabled,K=D.shadowMap.autoUpdate,Y=D.clippingPlanes;D.xr.enabled=!1,D.shadowMap.autoUpdate=!1,D.clippingPlanes=b,D.setRenderTarget(I),D.state.buffers.depth.setMask(!0),D.autoClear===!1&&D.clear(),D.render(z,E),D.xr.enabled=$,D.shadowMap.autoUpdate=K,D.clippingPlanes=Y,D.setRenderTarget(W);const B=O.viewport;B!==void 0&&D.state.viewport(B)},this.getRenderTarget=function(){return I}}};let D6e=Fh;nt(D6e,"ReflectorShader",{defines:{DISTANCE_ATTENUATION:!0,FRESNEL:!0},uniforms:{color:{value:null},tDiffuse:{value:null},tDepth:{value:null},textureMatrix:{value:new st},maxDistance:{value:180},opacity:{value:.5},fresnelCoe:{value:null},virtualCameraNear:{value:null},virtualCameraFar:{value:null},virtualCameraProjectionMatrix:{value:new st},virtualCameraMatrixWorld:{value:new st},virtualCameraProjectionMatrixInverse:{value:new st},resolution:{value:new oe}},vertexShader:` 5705 uniform mat4 textureMatrix; 5706 varying vec4 vUv; 5707 5708 void main() { 5709 5710 vUv = textureMatrix * vec4( position, 1.0 ); 5711 5712 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 5713 5714 }`,fragmentShader:` 5715 uniform vec3 color; 5716 uniform sampler2D tDiffuse; 5717 uniform sampler2D tDepth; 5718 uniform float maxDistance; 5719 uniform float opacity; 5720 uniform float fresnelCoe; 5721 uniform float virtualCameraNear; 5722 uniform float virtualCameraFar; 5723 uniform mat4 virtualCameraProjectionMatrix; 5724 uniform mat4 virtualCameraProjectionMatrixInverse; 5725 uniform mat4 virtualCameraMatrixWorld; 5726 uniform vec2 resolution; 5727 varying vec4 vUv; 5728 #include <packing> 5729 float blendOverlay( float base, float blend ) { 5730 return( base < 0.5 ? ( 2.0 * base * blend ) : ( 1.0 - 2.0 * ( 1.0 - base ) * ( 1.0 - blend ) ) ); 5731 } 5732 vec3 blendOverlay( vec3 base, vec3 blend ) { 5733 return vec3( blendOverlay( base.r, blend.r ), blendOverlay( base.g, blend.g ), blendOverlay( base.b, blend.b ) ); 5734 } 5735 float getDepth( const in vec2 uv ) { 5736 return texture2D( tDepth, uv ).x; 5737 } 5738 float getViewZ( const in float depth ) { 5739 return perspectiveDepthToViewZ( depth, virtualCameraNear, virtualCameraFar ); 5740 } 5741 vec3 getViewPosition( const in vec2 uv, const in float depth/*clip space*/, const in float clipW ) { 5742 vec4 clipPosition = vec4( ( vec3( uv, depth ) - 0.5 ) * 2.0, 1.0 );//ndc 5743 clipPosition *= clipW; //clip 5744 return ( virtualCameraProjectionMatrixInverse * clipPosition ).xyz;//view 5745 } 5746 void main() { 5747 vec4 base = texture2DProj( tDiffuse, vUv ); 5748 #ifdef useDepthTexture 5749 vec2 uv=(gl_FragCoord.xy-.5)/resolution.xy; 5750 uv.x=1.-uv.x; 5751 float depth = texture2DProj( tDepth, vUv ).r; 5752 float viewZ = getViewZ( depth ); 5753 float clipW = virtualCameraProjectionMatrix[2][3] * viewZ+virtualCameraProjectionMatrix[3][3]; 5754 vec3 viewPosition=getViewPosition( uv, depth, clipW ); 5755 vec3 worldPosition=(virtualCameraMatrixWorld*vec4(viewPosition,1)).xyz; 5756 if(worldPosition.y>maxDistance) discard; 5757 float op=opacity; 5758 #ifdef DISTANCE_ATTENUATION 5759 float ratio=1.-(worldPosition.y/maxDistance); 5760 float attenuation=ratio*ratio; 5761 op=opacity*attenuation; 5762 #endif 5763 #ifdef FRESNEL 5764 op*=fresnelCoe; 5765 #endif 5766 gl_FragColor = vec4( blendOverlay( base.rgb, color ), op ); 5767 #else 5768 gl_FragColor = vec4( blendOverlay( base.rgb, color ), 1.0 ); 5769 #endif 5770 } 5771 `});const L8={uniforms:{turbidity:{value:2},rayleigh:{value:1},mieCoefficient:{value:.005},mieDirectionalG:{value:.8},sunPosition:{value:new L},up:{value:new L(0,1,0)}},vertexShader:` 5772 uniform vec3 sunPosition; 5773 uniform float rayleigh; 5774 uniform float turbidity; 5775 uniform float mieCoefficient; 5776 uniform vec3 up; 5777 5778 varying vec3 vWorldPosition; 5779 varying vec3 vSunDirection; 5780 varying float vSunfade; 5781 varying vec3 vBetaR; 5782 varying vec3 vBetaM; 5783 varying float vSunE; 5784 5785 // constants for atmospheric scattering 5786 const float e = 2.71828182845904523536028747135266249775724709369995957; 5787 const float pi = 3.141592653589793238462643383279502884197169; 5788 5789 // wavelength of used primaries, according to preetham 5790 const vec3 lambda = vec3( 680E-9, 550E-9, 450E-9 ); 5791 // this pre-calcuation replaces older TotalRayleigh(vec3 lambda) function: 5792 // (8.0 * pow(pi, 3.0) * pow(pow(n, 2.0) - 1.0, 2.0) * (6.0 + 3.0 * pn)) / (3.0 * N * pow(lambda, vec3(4.0)) * (6.0 - 7.0 * pn)) 5793 const vec3 totalRayleigh = vec3( 5.804542996261093E-6, 1.3562911419845635E-5, 3.02
579365902468824876E-5 ); 5794 5795 // mie stuff 5796 // K coefficient for the primaries 5797 const float v = 4.0; 5798 const vec3 K = vec3( 0.686, 0.678, 0.666 ); 5799 // MieConst = pi * pow( ( 2.0 * pi ) / lambda, vec3( v - 2.0 ) ) * K 5800 const vec3 MieConst = vec3( 1.8399918514433978E14, 2.7798023919660528E14, 4.0790479543861094E14 ); 5801 5802 // earth shadow hack 5803 // cutoffAngle = pi / 1.95; 5804 const float cutoffAngle = 1.6110731556870734; 5805 const float steepness = 1.5; 5806 const float EE = 1000.0; 5807 5808 float sunIntensity( float zenithAngleCos ) { 5809 zenithAngleCos = clamp( zenithAngleCos, -1.0, 1.0 ); 5810 return EE * max( 0.0, 1.0 - pow( e, -( ( cutoffAngle - acos( zenithAngleCos ) ) / steepness ) ) ); 5811 } 5812 5813 vec3 totalMie( float T ) { 5814 float c = ( 0.2 * T ) * 10E-18; 5815 return 0.434 * c * MieConst; 5816 } 5817 5818 void main() { 5819 5820 vec4 worldPosition = modelMatrix * vec4( position, 1.0 ); 5821 vWorldPosition = worldPosition.xyz; 5822 5823 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 5824 gl_Position.z = gl_Position.w; // set z to camera.far 5825 5826 vSunDirection = normalize( sunPosition ); 5827 5828 vSunE = sunIntensity( dot( vSunDirection, up ) ); 5829 5830 vSunfade = 1.0 - clamp( 1.0 - exp( ( sunPosition.y / 450000.0 ) ), 0.0, 1.0 ); 5831 5832 float rayleighCoefficient = rayleigh - ( 1.0 * ( 1.0 - vSunfade ) ); 5833 5834 // extinction (absorbtion + out scattering) 5835 // rayleigh coefficients 5836 vBetaR = totalRayleigh * rayleighCoefficient; 5837 5838 // mie coefficients 5839 vBetaM = totalMie( turbidity ) * mieCoefficient; 5840 5841 } 5842 `,fragmentShader:` 5843 varying vec3 vWorldPosition; 5844 varying vec3 vSunDirection; 5845 varying float vSunfade; 5846 varying vec3 vBetaR; 5847 varying vec3 vBetaM; 5848 varying float vSunE; 5849 5850 uniform float mieDirectionalG; 5851 uniform vec3 up; 5852 5853 const vec3 cameraPos = vec3( 0.0, 0.0, 0.0 ); 5854 5855 // constants for atmospheric scattering 5856 const float pi = 3.141592653589793238462643383279502884197169; 5857 5858 const float n = 1.0003; // refractive index of air 5859 const float N = 2.545E25; // number of molecules per unit volume for air at 288.15K and 1013mb (sea level -45 celsius) 5860 5861 // optical length at zenith for molecules 5862 const float rayleighZenithLength = 8.4E3; 5863 const float mieZenithLength = 1.25E3; 5864 // 66 arc seconds -> degrees, and the cosine of that 5865 const float sunAngularDiameterCos = 0.999956676946448443553574619906976478926848692873900859324; 5866 5867 // 3.0 / ( 16.0 * pi ) 5868 const float THREE_OVER_SIXTEENPI = 0.05968310365946075; 5869 // 1.0 / ( 4.0 * pi ) 5870 const float ONE_OVER_FOURPI = 0.07957747154594767; 5871 5872 float rayleighPhase( float cosTheta ) { 5873 return THREE_OVER_SIXTEENPI * ( 1.0 + pow( cosTheta, 2.0 ) ); 5874 } 5875 5876 float hgPhase( float cosTheta, float g ) { 5877 float g2 = pow( g, 2.0 ); 5878 float inverse = 1.0 / pow( 1.0 - 2.0 * g * cosTheta + g2, 1.5 ); 5879 return ONE_OVER_FOURPI * ( ( 1.0 - g2 ) * inverse ); 5880 } 5881 5882 void main() { 5883 5884 vec3 direction = normalize( vWorldPosition - cameraPos ); 5885 5886 // optical length 5887 // cutoff angle at 90 to avoid singularity in next formula. 5888 float zenithAngle = acos( max( 0.0, dot( up, direction ) ) ); 5889 float inverse = 1.0 / ( cos( zenithAngle ) + 0.15 * pow( 93.885 - ( ( zenithAngle * 180.0 ) / pi ), -1.253 ) ); 5890 float sR = rayleighZenithLength * inverse; 5891 float sM = mieZenithLength * inverse; 5892 5893 // combined extinction factor 5894 vec3 Fex = exp( -( vBetaR * sR + vBetaM * sM ) ); 5895 5896 // in scattering 5897 float cosTheta = dot( direction, vSunDirection ); 5898 5899 float rPhase = rayleighPhase( cosTheta * 0.5 + 0.5 ); 5900 vec3 betaRTheta = vBetaR * rPhase; 5901 5902 float mPhase = hgPhase( cosTheta, mieDirectionalG ); 5903 vec3 betaMTheta = vBetaM * mPhase; 5904 5905 vec3 Lin = pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * ( 1.0 - Fex ), vec3( 1.5 ) ); 5906 Lin *= mix( vec3( 1.0 ), pow( vSunE * ( ( betaRTheta + betaMTheta ) / ( vBetaR + vBetaM ) ) * Fex, vec3( 1.0 / 2.0 ) ), clamp( pow( 1.0 - dot( up, vSunDirection ), 5.0 ), 0.0, 1.0 ) ); 5907 5908 // nightsky 5909 float theta = acos( direction.y ); // elevation --> y-axis, [-pi/2, pi/2] 5910 float phi = atan( direction.z, direction.x ); // azimuth --> x-axis [-pi/2, pi/2] 5911 vec2 uv = vec2( phi, theta ) / vec2( 2.0 * pi, pi ) + vec2( 0.5, 0.0 ); 5912 vec3 L0 = vec3( 0.1 ) * Fex; 5913 5914 // composition + solar disc 5915 float sundisk = smoothstep( sunAngularDiameterCos, sunAngularDiameterCos + 0.00002, cosTheta ); 5916 L0 += ( vSunE * 19000.0 * Fex ) * sundisk; 5917 5918 vec3 texColor = ( Lin + L0 ) * 0.04 + vec3( 0.0, 0.0003, 0.00075 ); 5919 5920 vec3 retColor = pow( texColor, vec3( 1.0 / ( 1.2 + ( 1.2 * vSunfade ) ) ) ); 5921 5922 gl_FragColor = vec4( retColor, 1.0 ); 5923 5924 #include <tonemapping_fragment> 5925 #include <${parseInt(Sa.replace(/\D+/g,""))>=154?"colorspace_fragment":"encodings_fragment"}> 5926 5927 } 5928 `},CW=new zt({name:"SkyShader",fragmentShader:L8.fragmentShader,vertexShader:L8.vertexShader,uniforms:Kn.clone(L8.uniforms),side:Fi,depthWrite:!1});class wW extends yn{constructor(){super(new Zc(1,1,1),CW)}}nt(wW,"SkyShader",L8);nt(wW,"material",CW);const IW=class extends yn{constructor(t,e={}){super(t),this.isWater=!0,this.type="Water";const n=this,i=e.color!==void 0?new Me(e.color):new Me(16777215),r=e.textureWidth||512,s=e.textureHeight||512,o=e.clipBias||0,a=e.flowDirection||new oe(1,0),l=e.flowSpeed||.03,u=e.reflectivity||.02,c=e.scale||1,h=e.shader||IW.WaterShader,f=e.encoding!==void 0?e.encoding:3e3,m=e.flowMap||void 0,g=e.normalMap0,v=e.normalMap1,_=.15,A=_*.5,y=new st,q=new vg;if(XE===void 0){console.error("THREE.Water: Required component Reflector not found.");return}if(YE===void 0){console.error("THREE.Water: Required component Refractor not found.");return}const E=new XE(t,{textureWidth:r,textureHeight:s,clipBias:o,encoding:f}),T=new YE(t,{textureWidth:r,textureHeight:s,clipBias:o,encoding:f});E.matrixAutoUpdate=!1,T.matrixAutoUpdate=!1,this.material=new zt({uniforms:Kn.merge
5928([Ne.fog,h.uniforms]),vertexShader:h.vertexShader,fragmentShader:h.fragmentShader,transparent:!0,fog:!0}),m!==void 0?(this.material.defines.USE_FLOWMAP="",this.material.uniforms.tFlowMap={type:"t",value:m}):this.material.uniforms.flowDirection={type:"v2",value:a},g.wrapS=g.wrapT=hu,v.wrapS=v.wrapT=hu,this.material.uniforms.tReflectionMap.value=E.getRenderTarget().texture,this.material.uniforms.tRefractionMap.value=T.getRenderTarget().texture,this.material.uniforms.tNormalMap0.value=g,this.material.uniforms.tNormalMap1.value=v,this.material.uniforms.color.value=i,this.material.uniforms.reflectivity.value=u,this.material.uniforms.textureMatrix.value=y,this.material.uniforms.config.value.x=0,this.material.uniforms.config.value.y=A,this.material.uniforms.config.value.z=A,this.material.uniforms.config.value.w=c;function C(R){y.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),y.multiply(R.projectionMatrix),y.multiply(R.matrixWorldInverse),y.multiply(n.matrixWorld)}function I(){const R=q.getDelta(),M=n.material.uniforms.config;M.value.x+=l*R,M.value.y=M.value.x+A,M.value.x>=_?(M.value.x=0,M.value.y=A):M.value.y>=_&&(M.value.y=M.value.y-_)}this.onBeforeRender=function(R,M,b){C(b),I(),n.visible=!1,E.matrixWorld.copy(n.matrixWorld),T.matrixWorld.copy(n.matrixWorld),E.onBeforeRender(R,M,b),T.onBeforeRender(R,M,b),n.visible=!0}}};let L6e=IW;nt(L6e,"WaterShader",{uniforms:{color:{value:null},reflectivity:{value:0},tReflectionMap:{value:null},tRefractionMap:{value:null},tNormalMap0:{value:null},tNormalMap1:{value:null},textureMatrix:{value:null},config:{value:new Zt}},vertexShader:` 5929 5930 #include <common> 5931 #include <fog_pars_vertex> 5932 #include <logdepthbuf_pars_vertex> 5933 5934 uniform mat4 textureMatrix; 5935 5936 varying vec4 vCoord; 5937 varying vec2 vUv; 5938 varying vec3 vToEye; 5939 5940 void main() { 5941 5942 vUv = uv; 5943 vCoord = textureMatrix * vec4( position, 1.0 ); 5944 5945 vec4 worldPosition = modelMatrix * vec4( position, 1.0 ); 5946 vToEye = cameraPosition - worldPosition.xyz; 5947 5948 vec4 mvPosition = viewMatrix * worldPosition; // used in fog_vertex 5949 gl_Position = projectionMatrix * mvPosition; 5950 5951 #include <logdepthbuf_vertex> 5952 #include <fog_vertex> 5953 5954 }`,fragmentShader:` 5955 5956 #include <common> 5957 #include <fog_pars_fragment> 5958 #include <logdepthbuf_pars_fragment> 5959 5960 uniform sampler2D tReflectionMap; 5961 uniform sampler2D tRefractionMap; 5962 uniform sampler2D tNormalMap0; 5963 uniform sampler2D tNormalMap1; 5964 5965 #ifdef USE_FLOWMAP 5966 uniform sampler2D tFlowMap; 5967 #else 5968 uniform vec2 flowDirection; 5969 #endif 5970 5971 uniform vec3 color; 5972 uniform float reflectivity; 5973 uniform vec4 config; 5974 5975 varying vec4 vCoord; 5976 varying vec2 vUv; 5977 varying vec3 vToEye; 5978 5979 void main() { 5980 5981 #include <logdepthbuf_fragment> 5982 5983 float flowMapOffset0 = config.x; 5984 float flowMapOffset1 = config.y; 5985 float halfCycle = config.z; 5986 float scale = config.w; 5987 5988 vec3 toEye = normalize( vToEye ); 5989 5990 // determine flow direction 5991 vec2 flow; 5992 #ifdef USE_FLOWMAP 5993 flow = texture2D( tFlowMap, vUv ).rg * 2.0 - 1.0; 5994 #else 5995 flow = flowDirection; 5996 #endif 5997 flow.x *= - 1.0; 5998 5999 // sample normal maps (distort uvs with flowdata) 6000 vec4 normalColor0 = texture2D( tNormalMap0, ( vUv * scale ) + flow * flowMapOffset0 ); 6001 vec4 normalColor1 = texture2D( tNormalMap1, ( vUv * scale ) + flow * flowMapOffset1 ); 6002 6003 // linear interpolate to get the final normal color 6004 float flowLerp = abs( halfCycle - flowMapOffset0 ) / halfCycle; 6005 vec4 normalColor = mix( normalColor0, normalColor1, flowLerp ); 6006 6007 // calculate normal vector 6008 vec3 normal = normalize( vec3( normalColor.r * 2.0 - 1.0, normalColor.b, normalColor.g * 2.0 - 1.0 ) ); 6009 6010 // calculate the fresnel term to blend reflection and refraction maps 6011 float theta = max( dot( toEye, normal ), 0.0 ); 6012 float reflectance = reflectivity + ( 1.0 - reflectivity ) * pow( ( 1.0 - theta ), 5.0 ); 6013 6014 // calculate final uv coords 6015 vec3 coord = vCoord.xyz / vCoord.w; 6016 vec2 uv = coord.xy + coord.z * normal.xz * 0.05; 6017 6018 vec4 reflectColor = texture2D( tReflectionMap, vec2( 1.0 - uv.x, uv.y ) ); 6019 vec4 refractColor = texture2D( tRefractionMap, uv ); 6020 6021 // multiply water color with the mix of both textures 6022 gl_FragColor = vec4( color, 1.0 ) * mix( refractColor, reflectColor, reflectance ); 6023 6024 #include <tonemapping_fragment> 6025 #include <${parseInt(Sa.replace(/\D+/g,""))>=154?"colorspace_fragment":"encodings_fragment"}> 6026 #include <fog_fragment> 6027 6028 }`});const Oq={uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6029`),fragmentShader:["uniform float opacity;","uniform sampler2D tDiffuse;","varying vec2 vUv;","#include <packing>","void main() {"," float depth = 1.0 - unpackRGBAToDepth( texture2D( tDiffuse, vUv ) );"," gl_FragColor = vec4( vec3( depth ), opacity );","}"].join(` 6030`)};Math.cos(70*C0.DEG2RAD);let Kg=class{constructor(){nt(this,"enabled",!0),nt(this,"needsSwap",!0),nt(this,"clear",!1),nt
6030(this,"renderToScreen",!1)}setSize(e,n){}render(e,n,i,r,s){console.error("THREE.Pass: .render() must be implemented in derived pass.")}};class Jg{constructor(e){nt(this,"camera",new b2(-1,1,1,-1,0,1)),nt(this,"geometry",new R2(2,2)),nt(this,"mesh"),this.mesh=new yn(this.geometry,e)}get material(){return this.mesh.material}set material(e){this.mesh.material=e}dispose(){this.mesh.geometry.dispose()}render(e){e.render(this.mesh,this.camera)}}const fl={uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6031`),fragmentShader:["uniform float opacity;","uniform sampler2D tDiffuse;","varying vec2 vUv;","void main() {"," vec4 texel = texture2D( tDiffuse, vUv );"," gl_FragColor = opacity * texel;","}"].join(` 6032`)},Wf={defines:{PERSPECTIVE_CAMERA:1,KERNEL_SIZE:32},uniforms:{tDiffuse:{value:null},tNormal:{value:null},tDepth:{value:null},tNoise:{value:null},kernel:{value:null},cameraNear:{value:null},cameraFar:{value:null},resolution:{value:new oe},cameraProjectionMatrix:{value:new st},cameraInverseProjectionMatrix:{value:new st},kernelRadius:{value:8},minDistance:{value:.005},maxDistance:{value:.05}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6033`),fragmentShader:["uniform sampler2D tDiffuse;","uniform sampler2D tNormal;","uniform sampler2D tDepth;","uniform sampler2D tNoise;","uniform vec3 kernel[ KERNEL_SIZE ];","uniform vec2 resolution;","uniform float cameraNear;","uniform float cameraFar;","uniform mat4 cameraProjectionMatrix;","uniform mat4 cameraInverseProjectionMatrix;","uniform float kernelRadius;","uniform float minDistance;","uniform float maxDistance;","varying vec2 vUv;","#include <packing>","float getDepth( const in vec2 screenPosition ) {"," return texture2D( tDepth, screenPosition ).x;","}","float getLinearDepth( const in vec2 screenPosition ) {"," #if PERSPECTIVE_CAMERA == 1"," float fragCoordZ = texture2D( tDepth, screenPosition ).x;"," float viewZ = perspectiveDepthToViewZ( fragCoordZ, cameraNear, cameraFar );"," return viewZToOrthographicDepth( viewZ, cameraNear, cameraFar );"," #else"," return texture2D( tDepth, screenPosition ).x;"," #endif","}","float getViewZ( const in float depth ) {"," #if PERSPECTIVE_CAMERA == 1"," return perspectiveDepthToViewZ( depth, cameraNear, cameraFar );"," #else"," return orthographicDepthToViewZ( depth, cameraNear, cameraFar );"," #endif","}","vec3 getViewPosition( const in vec2 screenPosition, const in float depth, const in float viewZ ) {"," float clipW = cameraProjectionMatrix[2][3] * viewZ + cameraProjectionMatrix[3][3];"," vec4 clipPosition = vec4( ( vec3( screenPosition, depth ) - 0.5 ) * 2.0, 1.0 );"," clipPosition *= clipW; // unprojection."," return ( cameraInverseProjectionMatrix * clipPosition ).xyz;","}","vec3 getViewNormal( const in vec2 screenPosition ) {"," return unpackRGBToNormal( texture2D( tNormal, screenPosition ).xyz );","}","void main() {"," float depth = getDepth( vUv );"," float viewZ = getViewZ( depth );"," vec3 viewPosition = getViewPosition( vUv, depth, viewZ );"," vec3 viewNormal = getViewNormal( vUv );"," vec2 noiseScale = vec2( resolution.x / 4.0, resolution.y / 4.0 );"," vec3 random = texture2D( tNoise, vUv * noiseScale ).xyz;"," vec3 tangent = normalize( random - viewNormal * dot( random, viewNormal ) );"," vec3 bitangent = cross( viewNormal, tangent );"," mat3 kernelMatrix = mat3( tangent, bitangent, viewNormal );"," float occlusion = 0.0;"," for ( int i = 0; i < KERNEL_SIZE; i ++ ) {"," vec3 sampleVector = kernelMatrix * kernel[ i ];"," vec3 samplePoint = viewPosition + ( sampleVector * kernelRadius );"," vec4 samplePointNDC = cameraProjectionMatrix * vec4( samplePoint, 1.0 );"," samplePointNDC /= samplePointNDC.w;"," vec2 samplePointUv = samplePointNDC.xy * 0.5 + 0.5;"," float realDepth = getLinearDepth( samplePointUv );"," float sampleDepth = viewZToOrthographicDepth( samplePoint.z, cameraNear, cameraFar );"," float delta = sampleDepth - realDepth;"," if ( delta > minDistance && delta < maxDistance ) {"," occlusion += 1.0;"," }"," }"," occlusion = clamp( occlusion / float( KERNEL_SIZE ), 0.0, 1.0 );"," gl_FragColor = vec4( vec3( 1.0 - occlusion ), 1.0 );","}"].join(` 6034`)},X7={defines:{PERSPECTIVE_CAMERA:1},uniforms:{tDepth:{value:null},cameraNear:{value:null},cameraFar:{value:null}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6035`),fragmentShader:["uniform sampler2D tDepth;","uniform float cameraNear;","uniform float cameraFar;","varying vec2 vUv;","#include <packing>","float getLinearDepth( const in vec2 screenPosition ) {"," #if PERSPECTIVE_CAMERA == 1"," float fragCoordZ = texture2D( tDepth, screenPosition ).x;"," float viewZ = perspectiveDepthToViewZ( fragCoordZ, cameraNear, cameraFar );"," return viewZToOrthographicDepth( viewZ, cameraNear, cameraFar );"," #else"," return texture2D( tDepth, screenPosition ).x;"," #endif","}","void main() {"," float depth = getLinearDepth( vUv );"," gl_FragColor = vec4( vec3( 1.0 - depth ), 1.0 );","}"].join(` 6036`)},Y7={uniforms:{tDiffuse:{value:null},resolution:{value:new oe}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6037`),fragmentShader:["uniform sampler2D tDiffuse;","uniform vec2 resolution;","varying vec2 vUv;","void main() {"," vec2 texelSize = ( 1.0 / resolution );"," float result = 0.0;"," for ( int i = - 2; i <= 2; i ++ ) {"," for ( int j = - 2; j <= 2; j ++ ) {"," vec2 offset = ( vec2( float( i ), float( j ) ) ) * texelSize;"," result += texture2D( tDiffuse, vUv + offset ).r;"," }"," }"," gl_FragColor = vec4( vec3( result / ( 5.0 * 5.0 ) ), 1.0 );","}"].join(` 6038`)},Oh=class extends Kg{constructor(t,e,n,i){super(),this.width=n!==void 0?n:512,this.height=i!==void 0?i:512,this.clear=!0,this.camera=e,this.scene=t,this.kernelRadius=8,this.kernelSize=32,this.kernel=[],this.noiseTexture=null,this.output=0,this.minDistance=.005,this.maxDistance=.1,this._visibilityCache=new Map,this.generateSampleKernel(),this.generateRandomKernelRotations();const r=new z1;r.format=fu,r.type=ol,this.beautyRenderTarget=new Yt(this.width,this.height),this.normalRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At,depthTexture:r}),this.ssaoRenderTarget=new Yt(this.width,this.height),this.blurRenderTarget=this.ssaoRenderTarget.clone(),Wf===void 0&&console.error("THREE.SSAOPass: The pass relies on SSAOShader."),this.ssaoMaterial=new zt({defines:Object.assign({},Wf.defines),uniforms:Kn.clone(Wf.uniforms),vertexShader:Wf.vertexShader,fragmentShader:Wf.fragmentShader,blending:bt}),this.ssaoMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.ssaoMaterial.uniforms.tNormal.value=this.normalRenderTarget.texture,this.ssaoMaterial.uniforms.tDepth.value=this.normalRenderTarget.depthTexture,this.ssaoMaterial.uniforms.tNoise.value=this.noiseTexture,this.ssaoMaterial.uniforms.kernel.value=this.kernel,this.ssaoMaterial.uniforms.cameraNear.value=this.camera.near,this.ssaoMaterial.uniforms.cameraFar.value=this.camera.far,this.ssaoMaterial.uniforms.resolution.value.set(this.width,this.height),this.ssaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.ssaoMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.normalMaterial=new D2,this.normalMaterial.blending=bt,this.blurMaterial=new zt({defines:Object.assign({},Y7.defines),uniforms:Kn.clone(Y7.uniforms),vertexShader:Y7.vertexShader,fragmentShader:Y7.fragmentShader}),this.blurMaterial.uniforms.tDiffuse.value=this.ssaoRenderTarget.texture,this.blurMaterial.uniforms.resolution.value.set(this.width,this.height),this.depthRenderMaterial=new zt({defines:Object.assign({}
6038,X7.defines),uniforms:Kn.clone(X7.uniforms),vertexShader:X7.vertexShader,fragmentShader:X7.fragmentShader,blending:bt}),this.depthRenderMaterial.uniforms.tDepth.value=this.normalRenderTarget.depthTexture,this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this.copyMaterial=new zt({uniforms:Kn.clone(fl.uniforms),vertexShader:fl.vertexShader,fragmentShader:fl.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blendSrc:V9,blendDst:j0,blendEquation:Ws,blendSrcAlpha:z9,blendDstAlpha:j0,blendEquationAlpha:Ws}),this.fsQuad=new Jg(null),this.originalClearColor=new Me}dispose(){this.beautyRenderTarget.dispose(),this.normalRenderTarget.dispose(),this.ssaoRenderTarget.dispose(),this.blurRenderTarget.dispose(),this.normalMaterial.dispose(),this.blurMaterial.dispose(),this.copyMaterial.dispose(),this.depthRenderMaterial.dispose(),this.fsQuad.dispose()}render(t,e){switch(t.capabilities.isWebGL2===!1&&(this.noiseTexture.format=NT),t.setRenderTarget(this.beautyRenderTarget),t.clear(),t.render(this.scene,this.camera),this.overrideVisibility(),this.renderOverride(t,this.normalMaterial,this.normalRenderTarget,7829503,1),this.restoreVisibility(),this.ssaoMaterial.uniforms.kernelRadius.value=this.kernelRadius,this.ssaoMaterial.uniforms.minDistance.value=this.minDistance,this.ssaoMaterial.uniforms.maxDistance.value=this.maxDistance,this.renderPass(t,this.ssaoMaterial,this.ssaoRenderTarget),this.renderPass(t,this.blurMaterial,this.blurRenderTarget),this.output){case Oh.OUTPUT.SSAO:this.copyMaterial.uniforms.tDiffuse.value=this.ssaoRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Oh.OUTPUT.Blur:this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Oh.OUTPUT.Beauty:this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Oh.OUTPUT.Depth:this.renderPass(t,this.depthRenderMaterial,this.renderToScreen?null:e);break;case Oh.OUTPUT.Normal:this.copyMaterial.uniforms.tDiffuse.value=this.normalRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Oh.OUTPUT.Default:this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e),this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget.texture,this.copyMaterial.blending=Ad,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;default:console.warn("THREE.SSAOPass: Unknown output type.")}}renderPass(t,e,n,i,r){t.getClearColor(this.originalClearColor);const s=t.getClearAlpha(),o=t.autoClear;t.setRenderTarget(n),t.autoClear=!1,i!=null&&(t.setClearColor(i),t.setClearAlpha(r||0),t.clear()),this.fsQuad.material=e,this.fsQuad.render(t),t.autoClear=o,t.setClearColor(this.originalClearColor),t.setClearAlpha(s)}renderOverride(t,e,n,i,r){t.getClearColor(this.originalClearColor);const s=t.getClearAlpha(),o=t.autoClear;t.setRenderTarget(n),t.autoClear=!1,i=e.clearColor||i,r=e.clearAlpha||r,i!=null&&(t.setClearColor(i),t.setClearAlpha(r||0),t.clear()),this.scene.overrideMaterial=e,t.render(this.scene,this.camera),this.scene.overrideMaterial=null,t.autoClear=o,t.setClearColor(this.originalClearColor),t.setClearAlpha(s)}setSize(t,e){this.width=t,this.height=e,this.beautyRenderTarget.setSize(t,e),this.ssaoRenderTarget.setSize(t,e),this.normalRenderTarget.setSize(t,e),this.blurRenderTarget.setSize(t,e),this.ssaoMaterial.uniforms.resolution.value.set(t,e),this.ssaoMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.ssaoMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.blurMaterial.uniforms.resolution.value.set(t,e)}generateSampleKernel(){const t=this.kernelSize,e=this.kernel;for(let n=0;n<t;n++){const i=new L;i.x=Math.random()*2-1,i.y=Math.random()*2-1,i.z=Math.random(),i.normalize();let r=n/t;r=C0.lerp(.1,1,r*r),i.multiplyScalar(r),e.push(i)}}generateRandomKernelRotations(){G5===void 0&&console.error("THREE.SSAOPass: The pass relies on SimplexNoise.");const n=new G5,i=4*4,r=new Float32Array(i);for(let s=0;s<i;s++){const o=Math.random()*2-1,a=Math.random()*2-1,l=0;r[s]=n.noise3d(o,a,l)}this.noiseTexture=new ll(r,4,4,Xh,kr),this.noiseTexture.wrapS=hu,this.noiseTexture.wrapT=hu,this.noiseTexture.needsUpdate=!0}overrideVisibility(){const t=this.scene,e=this._visibilityCache;
vendor: 9,239 bytes, lines 6038-6093
6038t.traverse(function(n){e.set(n,n.visible),(n.isPoints||n.isLine)&&(n.visible=!1)})}restoreVisibility(){const t=this.scene,e=this._visibilityCache;t.traverse(function(n){const i=e.get(n);n.visible=i}),e.clear()}};let N6e=Oh;nt(N6e,"OUTPUT",{Default:0,SSAO:1,Blur:2,Beauty:3,Depth:4,Normal:5});const k6e={shaderID:"luminosityHighPass",uniforms:{tDiffuse:{value:null},luminosityThreshold:{value:1},smoothWidth:{value:1},defaultColor:{value:new Me(0)},defaultOpacity:{value:0}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6039`),fragmentShader:["uniform sampler2D tDiffuse;","uniform vec3 defaultColor;","uniform float defaultOpacity;","uniform float luminosityThreshold;","uniform float smoothWidth;","varying vec2 vUv;","void main() {"," vec4 texel = texture2D( tDiffuse, vUv );"," vec3 luma = vec3( 0.299, 0.587, 0.114 );"," float v = dot( texel.xyz, luma );"," vec4 outputColor = vec4( defaultColor.rgb, defaultOpacity );"," float alpha = smoothstep( luminosityThreshold, luminosityThreshold + smoothWidth, v );"," gl_FragColor = mix( outputColor, texel, alpha );","}"].join(` 6040`)},JE=class extends Kg{constructor(t,e,n,i){super(),this.strength=e!==void 0?e:1,this.radius=n,this.threshold=i,this.resolution=t!==void 0?new oe(t.x,t.y):new oe(256,256),this.clearColor=new Me(0,0,0),this.renderTargetsHorizontal=[],this.renderTargetsVertical=[],this.nMips=5;let r=Math.round(this.resolution.x/2),s=Math.round(this.resolution.y/2);this.renderTargetBright=new Yt(r,s,{type:yi}),this.renderTargetBright.texture.name="UnrealBloomPass.bright",this.renderTargetBright.texture.generateMipmaps=!1;for(let c=0;c<this.nMips;c++){const h=new Yt(r,s,{type:yi});h.texture.name="UnrealBloomPass.h"+c,h.texture.generateMipmaps=!1,this.renderTargetsHorizontal.push(h);const f=new Yt(r,s,{type:yi});f.texture.name="UnrealBloomPass.v"+c,f.texture.generateMipmaps=!1,this.renderTargetsVertical.push(f),r=Math.round(r/2),s=Math.round(s/2)}const o=k6e;this.highPassUniforms=Kn.clone(o.uniforms),this.highPassUniforms.luminosityThreshold.value=i,this.highPassUniforms.smoothWidth.value=.01,this.materialHighPassFilter=new zt({uniforms:this.highPassUniforms,vertexShader:o.vertexShader,fragmentShader:o.fragmentShader,defines:{}}),this.separableBlurMaterials=[];const a=[3,5,7,9,11];r=Math.round(this.resolution.x/2),s=Math.round(this.resolution.y/2);for(let c=0;c<this.nMips;c++)this.separableBlurMaterials.push(this.getSeperableBlurMaterial(a[c])),this.separableBlurMaterials[c].uniforms.texSize.value=new oe(r,s),r=Math.round(r/2),s=Math.round(s/2);this.compositeMaterial=this.getCompositeMaterial(this.nMips),this.compositeMaterial.uniforms.blurTexture1.value=this.renderTargetsVertical[0].texture,this.compositeMaterial.uniforms.blurTexture2.value=this.renderTargetsVertical[1].texture,this.compositeMaterial.uniforms.blurTexture3.value=this.renderTargetsVertical[2].texture,this.compositeMaterial.uniforms.blurTexture4.value=this.renderTargetsVertical[3].texture,this.compositeMaterial.uniforms.blurTexture5.value=this.renderTargetsVertical[4].texture,this.compositeMaterial.uniforms.bloomStrength.value=e,this.compositeMaterial.uniforms.bloomRadius.value=.1,this.compositeMaterial.needsUpdate=!0;const l=[1,.8,.6,.4,.2];this.compositeMaterial.uniforms.bloomFactors.value=l,this.bloomTintColors=[new L(1,1,1),new L(1,1,1),new L(1,1,1),new L(1,1,1),new L(1,1,1)],this.compositeMaterial.uniforms.bloomTintColors.value=this.bloomTintColors;const u=fl;this.copyUniforms=Kn.clone(u.uniforms),this.copyUniforms.opacity.value=1,this.materialCopy=new zt({uniforms:this.copyUniforms,vertexShader:u.vertexShader,fragmentShader:u.fragmentShader,blending:gd,depthTest:!1,depthWrite:!1,transparent:!0}),this.enabled=!0,this.needsSwap=!1,this._oldClearColor=new Me,this.oldClearAlpha=1,this.basic=new Go,this.fsQuad=new Jg(null)}dispose(){for(let t=0;t<this.renderTargetsHorizontal.length;t++)this.renderTargetsHorizontal[t].dispose();for(let t=0;t<this.renderTargetsVertical.length;t++)this.renderTargetsVertical[t].dispose();this.renderTargetBright.dispose();for(let t=0;t<this.separableBlurMaterials.length;t++)this.separableBlurMaterials[t].dispose();this.compositeMaterial.dispose(),this.materialCopy.dispose(),this.basic.dispose(),this.fsQuad.dispose()}setSize(t,e){let n=Math.round(t/2),i=Math.round(e/2);this.renderTargetBright.setSize(n,i);for(let r=0;r<this.nMips;r++)this.renderTargetsHorizontal[r].setSize(n,i),this.renderTargetsVertical[r].setSize(n,i),this.separableBlurMaterials[r].uniforms.texSize.value=new oe(n,i),n=Math.round(n/2),i=Math.round(i/2)}render(t,e,n,i,r){t.getClearColor(this._oldClearColor),this.oldClearAlpha=t.getClearAlpha();const s=t.autoClear;t.autoClear=!1,t.setClearColor(this.clearColor,0),r&&t.state.buffers.stencil.setTest(!1),this.renderToScreen&&(this.fsQuad.material=this.basic,this.basic.map=n.texture,t.setRenderTarget(null),t.clear(),this.fsQuad.render(t)),this.highPassUniforms.tDiffuse.value=n.texture,this.highPassUniforms.luminosityThreshold.value=this.threshold,this.fsQuad.material=this.materialHighPassFilter,t.setRenderTarget(this.renderTargetBright),t.clear(),this.fsQuad.render(t);let o=this.renderTargetBright;for(let a=0;a<this.nMips;a++)this.fsQuad.material=this.separableBlurMaterials[a],this.separableBlurMaterials[a].uniforms.colorTexture.value=o.texture,this.separableBlurMaterials[a].uniforms.direction.value=JE.BlurDirectionX,t.setRenderTarget(this.renderTargetsHorizontal[a]),t.clear(),this.fsQuad.render(t),this.separableBlurMaterials[a].uniforms.colorTexture.value=this.renderTargetsHorizontal[a].texture,this.separableBlurMaterials[a].uniforms.direction.value=JE.BlurDirectionY,t.setRenderTarget(this.renderTargetsVertical[a]),t.clear(),this.fsQuad.render(t),o=this.renderTargetsVertical[a];this.fsQuad.material=this.compositeMaterial,this.compositeMaterial.uniforms.bloomStrength.value=this.strength,this.compositeMaterial.uniforms.bloomRadius.value=this.radius,this.compositeMaterial.uniforms.bloomTintColors.value=this.bloomTintColors,t.setRenderTarget(this.renderTargetsHorizontal[0]),t.clear(),this.fsQuad.render(t),this.fsQuad.material=this.materialCopy,this.copyUniforms.tDiffuse.value=this.renderTargetsHorizontal[0].texture,r&&t.state.buffers.stencil.setTest(!0),this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(n),this.fsQuad.render(t)),t.setClearColor(this._oldClearColor,this.oldClearAlpha),t.autoClear=s}getSeperableBlurMaterial(t){return new zt({defines:{KERNEL_RADIUS:t,SIGMA:t},uniforms:{colorTexture:{value:null},texSize:{value:new oe(.5,.5)},direction:{value:new oe(.5,.5)}},vertexShader:`varying vec2 vUv; 6041 void main() { 6042 vUv = uv; 6043 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 6044 }`,fragmentShader:`#include <common> 6045 varying vec2 vUv; 6046 uniform sampler2D colorTexture; 6047 uniform vec2 texSize; 6048 uniform vec2 direction; 6049 6050 float gaussianPdf(in float x, in float sigma) { 6051 return 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma; 6052 } 6053 void main() { 6054 vec2 invSize = 1.0 / texSize; 6055 float fSigma = float(SIGMA); 6056 float weightSum = gaussianPdf(0.0, fSigma); 6057 vec3 diffuseSum = texture2D( colorTexture, vUv).rgb * weightSum; 6058 for( int i = 1; i < KERNEL_RADIUS; i ++ ) { 6059 float x = float(i); 6060 float w = gaussianPdf(x, fSigma); 6061 vec2 uvOffset = direction * invSize * x; 6062 vec3 sample1 = texture2D( colorTexture, vUv + uvOffset).rgb; 6063 vec3 sample2 = texture2D( colorTexture, vUv - uvOffset).rgb; 6064 diffuseSum += (sample1 + sample2) * w; 6065 weightSum += 2.0 * w; 6066 } 6067 gl_FragColor = vec4(diffuseSum/weightSum, 1.0); 6068 }`})}getCompositeMaterial(t){return new zt({defines:{NUM_MIPS:t},uniforms:{blurTexture1:{value:null},blurTexture2:{value:null},blurTexture3:{value:null},blurTexture4:{value:null},blurTexture5:{value:null},bloomStrength:{value:1},bloomFactors:{value:null},bloomTintColors:{value:null},bloomRadius:{value:0}},vertexShader:`varying vec2 vUv; 6069 void main() { 6070 vUv = uv; 6071 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 6072 }`,fragmentShader:`varying vec2 vUv; 6073 uniform sampler2D blurTexture1; 6074 uniform sampler2D blurTexture2; 6075 uniform sampler2D blurTexture3; 6076 uniform sampler2D blurTexture4; 6077 uniform sampler2D blurTexture5; 6078 uniform float bloomStrength; 6079 uniform float bloomRadius; 6080 uniform float bloomFactors[NUM_MIPS]; 6081 uniform vec3 bloomTintColors[NUM_MIPS]; 6082 6083 float lerpBloomFactor(const in float factor) { 6084 float mirrorFactor = 1.2 - factor; 6085 return mix(factor, mirrorFactor, bloomRadius); 6086 } 6087 6088 void main() { 6089 gl_FragColor = bloomStrength * ( lerpBloomFactor(bloomFactors[0]) * vec4(bloomTintColors[0], 1.0) * texture2D(blurTexture1, vUv) + 6090 lerpBloomFactor(bloomFactors[1]) * vec4(bloomTintColors[1], 1.0) * texture2D(blurTexture2, vUv) + 6091 lerpBloomFactor(bloomFactors[2]) * vec4(bloomTintColors[2], 1.0) * texture2D(blurTexture3, vUv) + 6092 lerpBloomFactor(bloomFactors[3]) * vec4(bloomTintColors[3], 1.0) * texture2D(blurTexture4, vUv) + 6093 lerpBloomFactor(bloomFactors[4]) * vec4(bloomTintColors[4], 1.0
6093) * texture2D(blurTexture5, vUv) ); 6094 }`})}};let MW=JE;nt(MW,"BlurDirectionX",new oe(1,0));nt(MW,"BlurDirectionY",new oe(0,1));const K7={defines:{NUM_SAMPLES:7,NUM_RINGS:4,NORMAL_TEXTURE:0,DIFFUSE_TEXTURE:0,DEPTH_PACKING:1,PERSPECTIVE_CAMERA:1},uniforms:{tDepth:{value:null},tDiffuse:{value:null},tNormal:{value:null},size:{value:new oe(512,512)},cameraNear:{value:1},cameraFar:{value:100},cameraProjectionMatrix:{value:new st},cameraInverseProjectionMatrix:{value:new st},scale:{value:1},intensity:{value:.1},bias:{value:.5},minResolution:{value:0},kernelRadius:{value:100},randomSeed:{value:0}},vertexShader:["varying vec2 vUv;","void main() {"," vUv = uv;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6095`),fragmentShader:["#include <common>","varying vec2 vUv;","#if DIFFUSE_TEXTURE == 1","uniform sampler2D tDiffuse;","#endif","uniform sampler2D tDepth;","#if NORMAL_TEXTURE == 1","uniform sampler2D tNormal;","#endif","uniform float cameraNear;","uniform float cameraFar;","uniform mat4 cameraProjectionMatrix;","uniform mat4 cameraInverseProjectionMatrix;","uniform float scale;","uniform float intensity;","uniform float bias;","uniform float kernelRadius;","uniform float minResolution;","uniform vec2 size;","uniform float randomSeed;","// RGBA depth","#include <packing>","vec4 getDefaultColor( const in vec2 screenPosition ) {"," #if DIFFUSE_TEXTURE == 1"," return texture2D( tDiffuse, vUv );"," #else"," return vec4( 1.0 );"," #endif","}","float getDepth( const in vec2 screenPosition ) {"," #if DEPTH_PACKING == 1"," return unpackRGBAToDepth( texture2D( tDepth, screenPosition ) );"," #else"," return texture2D( tDepth, screenPosition ).x;"," #endif","}","float getViewZ( const in float depth ) {"," #if PERSPECTIVE_CAMERA == 1"," return perspectiveDepthToViewZ( depth, cameraNear, cameraFar );"," #else"," return orthographicDepthToViewZ( depth, cameraNear, cameraFar );"," #endif","}","vec3 getViewPosition( const in vec2 screenPosition, const in float depth, const in float viewZ ) {"," float clipW = cameraProjectionMatrix[2][3] * viewZ + cameraProjectionMatrix[3][3];"," vec4 clipPosition = vec4( ( vec3( screenPosition, depth ) - 0.5 ) * 2.0, 1.0 );"," clipPosition *= clipW; // unprojection."," return ( cameraInverseProjectionMatrix * clipPosition ).xyz;","}","vec3 getViewNormal( const in vec3 viewPosition, const in vec2 screenPosition ) {"," #if NORMAL_TEXTURE == 1"," return unpackRGBToNormal( texture2D( tNormal, screenPosition ).xyz );"," #else"," return normalize( cross( dFdx( viewPosition ), dFdy( viewPosition ) ) );"," #endif","}","float scaleDividedByCameraFar;","float minResolutionMultipliedByCameraFar;","float getOcclusion( const in vec3 centerViewPosition, const in vec3 centerViewNormal, const in vec3 sampleViewPosition ) {"," vec3 viewDelta = sampleViewPosition - centerViewPosition;"," float viewDistance = length( viewDelta );"," float scaledScreenDistance = scaleDividedByCameraFar * viewDistance;"," return max(0.0, (dot(centerViewNormal, viewDelta) - minResolutionMultipliedByCameraFar) / scaledScreenDistance - bias) / (1.0 + pow2( scaledScreenDistance ) );","}","// moving costly divides into consts","const float ANGLE_STEP = PI2 * float( NUM_RINGS ) / float( NUM_SAMPLES );","const float INV_NUM_SAMPLES = 1.0 / float( NUM_SAMPLES );","float getAmbientOcclusion( const in vec3 centerViewPosition ) {"," // precompute some variables require in getOcclusion."," scaleDividedByCameraFar = scale / cameraFar;"," minResolutionMultipliedByCameraFar = minResolution * cameraFar;"," vec3 centerViewNormal = getViewNormal( centerViewPosition, vUv );"," // jsfiddle that shows sample pattern: https://jsfiddle.net/a16ff1p7/"," float angle = rand( vUv + randomSeed ) * PI2;"," vec2 radius = vec2( kernelRadius * INV_NUM_SAMPLES ) / size;"," vec2 radiusStep = radius;"," float occlusionSum = 0.0;"," float weightSum = 0.0;"," for( int i = 0; i < NUM_SAMPLES; i ++ ) {"," vec2 sampleUv = vUv + vec2( cos( angle ), sin( angle ) ) * radius;"," radius += radiusStep;"," angle += ANGLE_STEP;"," float sampleDepth = getDepth( sampleUv );"," if( sampleDepth >= ( 1.0 - EPSILON ) ) {"," continue;"," }"," float sampleViewZ = getViewZ( sampleDepth );"," vec3 sampleViewPosition = getViewPosition( sampleUv, sampleDepth, sampleViewZ );"," occlusionSum += getOcclusion( centerViewPosition, centerViewNormal, sampleViewPosition );"," weightSum += 1.0;"," }"," if( weightSum == 0.0 ) discard;"," return occlusionSum * ( intensity / weightSum );","}","void main() {"," float centerDepth = getDepth( vUv );"," if( centerDepth >= ( 1.0 - EPSILON ) ) {"," discard;"," }"," float centerViewZ = getViewZ( centerDepth );"," vec3 viewPosition = getViewPosition( vUv, centerDepth, centerViewZ );"," float ambientOcclusion = getAmbientOcclusion( viewPosition );"," gl_FragColor = getDefaultColor( vUv );"," gl_FragColor.xyz *= 1.0 - ambientOcclusion;","}"].join(` 6096`)},Wu={defines:{KERNEL_RADIUS:4,DEPTH_PACKING:1,PERSPECTIVE_CAMERA:1},uniforms:{tDiffuse:{value:null},size:{value:new oe(512,512)},sampleUvOffsets:{value:[new oe(0,0)]},sampleWeights:{value:[1]},tDepth:{value:null},cameraNear:{value:10},cameraFar:{value:1e3},depthCutoff:{value:10}},vertexShader:["#include <common>","uniform vec2 size;","varying vec2 vUv;","varying vec2 vInvSize;","void main() {"," vUv = uv;"," vInvSize = 1.0 / size;"," gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join(` 6097`),fragmentShader:["#include <common>","#include <packing>","uniform sampler2D tDiffuse;","uniform sampler2D tDepth;","uniform float cameraNear;","uniform float cameraFar;","uniform float depthCutoff;","uniform vec2 sampleUvOffsets[ KERNEL_RADIUS + 1 ];","uniform float sampleWeights[ KERNEL_RADIUS + 1 ];","varying vec2 vUv;","varying vec2 vInvSize;","float getDepth( const in vec2 screenPosition ) {"," #if DEPTH_PACKING == 1"," return unpackRGBAToDepth( texture2D( tDepth, screenPosition ) );"," #else"," return texture2D( tDepth, screenPosition ).x;"," #endif","}","float getViewZ( const in float depth ) {"," #if PERSPECTIVE_CAMERA == 1"," return perspectiveDepthToViewZ( depth, cameraNear, cameraFar );"," #else"," return orthographicDepthToViewZ( depth, cameraNear, cameraFar );"," #endif","}","void main() {"," float depth = getDepth( vUv );"," if( depth >= ( 1.0 - EPSILON ) ) {"," discard;"," }"," float centerViewZ = -getViewZ( depth );"," bool rBreak = false, lBreak = false;"," float weightSum = sampleWeights[0];"," vec4 diffuseSum = texture2D( tDiffuse, vUv ) * weightSum;"," for( int i = 1; i <= KERNEL_RADIUS; i ++ ) {"," float sampleWeight = sampleWeights[i];"," vec2 sampleUvOffset = sampleUvOffsets[i] * vInvSize;"," vec2 sampleUv = vUv + sampleUvOffset;"," float viewZ = -getViewZ( getDepth( sampleUv ) );"," if( abs( viewZ - centerViewZ ) > depthCutoff ) rBreak = true;"," if( ! rBreak ) {"," diffuseSum += texture2D( tDiffuse, sampleUv ) * sampleWeight;"," weightSum += sampleWeight;"," }"," sampleUv = vUv - sampleUvOffset;"," viewZ = -getViewZ( getDepth( sampleUv ) );"," if( abs( viewZ - centerViewZ ) > depthCutoff ) lBreak = true;"," if( ! lBreak ) {"," diffuseSum += texture2D( tDiffuse, sampleUv ) * sampleWeight;"," weightSum += sampleWeight;"," }"," }"," gl_FragColor = diffuseSum / weightSum;","}"].join(` 6098`)},Ym={createSampleWeights:(t,e)=>{const n=(r,s)=>Math.exp(-(r*r)/(2*(s*s)))/(Math.sqrt(2*Math.PI)*s),i=[];for(let r=0;r<=t;r++)i.push(n(r,e));return i},createSampleOffsets:(t,e)=>{const n=[];for(let i=0;i<=t;i++)n.push(e.clone().multiplyScalar(i));return n},configure:(t,e,n,i)=>{t.defines.KERNEL_RADIUS=e,t.uniforms.sampleUvOffsets.value=Ym.createSampleOffsets(e,i),t.uniforms.sampleWeights.value=Ym.createSampleWeights(e,n
6098),t.needsUpdate=!0}};class F6e extends Kg{constructor(e,n,i=!1,r=!1,s=new oe(256,256)){super(),this.scene=e,this.camera=n,this.clear=!0,this.needsSwap=!1,this.supportsDepthTextureExtension=i,this.supportsNormalTexture=r,this.originalClearColor=new Me,this._oldClearColor=new Me,this.oldClearAlpha=1,this.params={output:0,saoBias:.5,saoIntensity:.18,saoScale:1,saoKernelRadius:100,saoMinResolution:0,saoBlur:!0,saoBlurRadius:8,saoBlurStdDev:4,saoBlurDepthCutoff:.01},this.resolution=new oe(s.x,s.y),this.saoRenderTarget=new Yt(this.resolution.x,this.resolution.y,{type:yi}),this.blurIntermediateRenderTarget=this.saoRenderTarget.clone(),this.beautyRenderTarget=this.saoRenderTarget.clone(),this.normalRenderTarget=new Yt(this.resolution.x,this.resolution.y,{minFilter:At,magFilter:At,type:yi}),this.depthRenderTarget=this.normalRenderTarget.clone();let o;this.supportsDepthTextureExtension&&(o=new z1,o.type=U1,this.beautyRenderTarget.depthTexture=o,this.beautyRenderTarget.depthBuffer=!0),this.depthMaterial=new k4,this.depthMaterial.depthPacking=D4,this.depthMaterial.blending=bt,this.normalMaterial=new D2,this.normalMaterial.blending=bt,this.saoMaterial=new zt({defines:Object.assign({},K7.defines),fragmentShader:K7.fragmentShader,vertexShader:K7.vertexShader,uniforms:Kn.clone(K7.uniforms)}),this.saoMaterial.extensions.derivatives=!0,this.saoMaterial.defines.DEPTH_PACKING=this.supportsDepthTextureExtension?0:1,this.saoMaterial.defines.NORMAL_TEXTURE=this.supportsNormalTexture?1:0,this.saoMaterial.defines.PERSPECTIVE_CAMERA=this.camera.isPerspectiveCamera?1:0,this.saoMaterial.uniforms.tDepth.value=this.supportsDepthTextureExtension?o:this.depthRenderTarget.texture,this.saoMaterial.uniforms.tNormal.value=this.normalRenderTarget.texture,this.saoMaterial.uniforms.size.value.set(this.resolution.x,this.resolution.y),this.saoMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.saoMaterial.uniforms.cameraProjectionMatrix.value=this.camera.projectionMatrix,this.saoMaterial.blending=bt,this.vBlurMaterial=new zt({uniforms:Kn.clone(Wu.uniforms),defines:Object.assign({},Wu.defines),vertexShader:Wu.vertexShader,fragmentShader:Wu.fragmentShader}),this.vBlurMaterial.defines.DEPTH_PACKING=this.supportsDepthTextureExtension?0:1,this.vBlurMaterial.defines.PERSPECTIVE_CAMERA=this.camera.isPerspectiveCamera?1:0,this.vBlurMaterial.uniforms.tDiffuse.value=this.saoRenderTarget.texture,this.vBlurMaterial.uniforms.tDepth.value=this.supportsDepthTextureExtension?o:this.depthRenderTarget.texture,this.vBlurMaterial.uniforms.size.value.set(this.resolution.x,this.resolution.y),this.vBlurMaterial.blending=bt,this.hBlurMaterial=new zt({uniforms:Kn.clone(Wu.uniforms),defines:Object.assign({},Wu.defines),vertexShader:Wu.vertexShader,fragmentShader:Wu.fragmentShader}),this.hBlurMaterial.defines.DEPTH_PACKING=this.supportsDepthTextureExtension?0:1,this.hBlurMaterial.defines.PERSPECTIVE_CAMERA=this.camera.isPerspectiveCamera?1:0,this.hBlurMaterial.uniforms.tDiffuse.value=this.blurIntermediateRenderTarget.texture,this.hBlurMaterial.uniforms.tDepth.value=this.supportsDepthTextureExtension?o:this.depthRenderTarget.texture,this.hBlurMaterial.uniforms.size.value.set(this.resolution.x,this.resolution.y),this.hBlurMaterial.blending=bt,this.materialCopy=new zt({uniforms:Kn.clone(fl.uniforms),vertexShader:fl.vertexShader,fragmentShader:fl.fragmentShader,blending:bt}),this.materialCopy.transparent=!0,this.materialCopy.depthTest=!1,this.materialCopy.depthWrite=!1,this.materialCopy.blending=Ad,this.materialCopy.blendSrc=V9,this.materialCopy.blendDst=j0,this.materialCopy.blendEquation=Ws,this.materialCopy.blendSrcAlpha=z9,this.materialCopy.blendDstAlpha=j0,this.materialCopy.blendEquationAlpha=Ws,this.depthCopy=new zt({uniforms:Kn.clone(Oq.uniforms),vertexShader:Oq.vertexShader,fragmentShader:Oq.fragmentShader,blending:bt}),this.fsQuad=new Jg(null)}render(e,n,i){if(this.renderToScreen&&(this.materialCopy.blending=bt,this.materialCopy.uniforms.tDiffuse.value=i.texture,this.materialCopy.needsUpdate=!0,this.renderPass(e,this.materialCopy,null)),this.params.output===1)return;e.getClearColor(this._oldClearColor),this.oldClearAlpha=e.getClearAlpha();const r=e.autoClear;e.autoClear=!1,e.setRenderTarget(this.depthRenderTarget),e.clear(),this.saoMaterial.uniforms.bi
6098as.value=this.params.saoBias,this.saoMaterial.uniforms.intensity.value=this.params.saoIntensity,this.saoMaterial.uniforms.scale.value=this.params.saoScale,this.saoMaterial.uniforms.kernelRadius.value=this.params.saoKernelRadius,this.saoMaterial.uniforms.minResolution.value=this.params.saoMinResolution,this.saoMaterial.uniforms.cameraNear.value=this.camera.near,this.saoMaterial.uniforms.cameraFar.value=this.camera.far;const s=this.params.saoBlurDepthCutoff*(this.camera.far-this.camera.near);this.vBlurMaterial.uniforms.depthCutoff.value=s,this.hBlurMaterial.uniforms.depthCutoff.value=s,this.vBlurMaterial.uniforms.cameraNear.value=this.camera.near,this.vBlurMaterial.uniforms.cameraFar.value=this.camera.far,this.hBlurMaterial.uniforms.cameraNear.value=this.camera.near,this.hBlurMaterial.uniforms.cameraFar.value=this.camera.far,this.params.saoBlurRadius=Math.floor(this.params.saoBlurRadius),(this.prevStdDev!==this.params.saoBlurStdDev||this.prevNumSamples!==this.params.saoBlurRadius)&&(Ym.configure(this.vBlurMaterial,this.params.saoBlurRadius,this.params.saoBlurStdDev,new oe(0,1)),Ym.configure(this.hBlurMaterial,this.params.saoBlurRadius,this.params.saoBlurStdDev,new oe(1,0)),this.prevStdDev=this.params.saoBlurStdDev,this.prevNumSamples=this.params.saoBlurRadius),e.setClearColor(0),e.setRenderTarget(this.beautyRenderTarget),e.clear(),e.render(this.scene,this.camera),this.supportsDepthTextureExtension||this.renderOverride(e,this.depthMaterial,this.depthRenderTarget,0,1),this.supportsNormalTexture&&this.renderOverride(e,this.normalMaterial,this.normalRenderTarget,7829503,1),this.renderPass(e,this.saoMaterial,this.saoRenderTarget,16777215,1),this.params.saoBlur&&(this.renderPass(e,this.vBlurMaterial,this.blurIntermediateRenderTarget,16777215,1),this.renderPass(e,this.hBlurMaterial,this.saoRenderTarget,16777215,1));let o=this.materialCopy;this.params.output===3?this.supportsDepthTextureExtension?(this.materialCopy.uniforms.tDiffuse.value=this.beautyRenderTarget.depthTexture,this.materialCopy.needsUpdate=!0):(this.depthCopy.uniforms.tDiffuse.value=this.depthRenderTarget.texture,this.depthCopy.needsUpdate=!0,o=this.depthCopy):this.params.output===4?(this.materialCopy.uniforms.tDiffuse.value=this.normalRenderTarget.texture,this.materialCopy.needsUpdate=!0):(this.materialCopy.uniforms.tDiffuse.value=this.saoRenderTarget.texture,this.materialCopy.needsUpdate=!0),this.params.output===0?o.blending=Ad:o.blending=bt,this.renderPass(e,o,this.renderToScreen?null:i),e.setClearColor(this._oldClearColor,this.oldClearAlpha),e.autoClear=r}renderPass(e,n,i,r,s){e.getClearColor(this.originalClearColor);const o=e.getClearAlpha(),a=e.autoClear;e.setRenderTarget(i),e.autoClear=!1,r!=null&&(e.setClearColor(r),e.setClearAlpha(s||0),e.clear()),this.fsQuad.material=n,this.fsQuad.render(e),e.autoClear=a,e.setClearColor(this.originalClearColor),e.setClearAlpha(o)}renderOverride(e,n,i,r,s){e.getClearColor(this.originalClearColor);const o=e.getClearAlpha(),a=e.autoClear;e.setRenderTarget(i),e.autoClear=!1,r=n.clearColor||r,s=n.clearAlpha||s,r!=null&&(e.setClearColor(r),e.setClearAlpha(s||0),e.clear()),this.scene.overrideMaterial=n,e.render(this.scene,this.camera),this.scene.overrideMaterial=null,e.autoClear=a,e.setClearColor(this.originalClearColor),e.setClearAlpha(o)}setSize(e,n){this.beautyRenderTarget.setSize(e,n),this.saoRenderTarget.setSize(e,n),this.blurIntermediateRenderTarget.setSize(e,n),this.normalRenderTarget.setSize(e,n),this.depthRenderTarget.setSize(e,n),this.saoMaterial.uniforms.size.value.set(e,n),this.saoMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.saoMaterial.uniforms.cameraProjectionMatrix.value=this.camera.projectionMatrix,this.saoMaterial.needsUpdate=!0,this.vBlurMaterial.uniforms.size.value.set(e,n),this.vBlurMaterial.needsUpdate=!0,this.hBlurMaterial.uniforms.size.value.set(e,n),this.hBlurMaterial.needsUpdate=!0}dispose(){this.saoRenderTarget.dispose(),this.blurIntermediateRenderTarget.dispose(),this.beautyRenderTarget.dispose(),this.normalRenderTarget.dispose(),this.depthRenderTarget.dispose(),this.depthMaterial.dispose(),this.normalMaterial.dispose(),this.saoMaterial.dispose(),this.vBlurMaterial.dispose(),this.hBlurMaterial.dispose(),this.materialCopy.dispose(),this.depthCopy.dispose(),this.fsQuad.dispose()}}nt(F6e,"OUTPUT",{Beauty:1,Default:0,SAO:2,Depth:3,Normal:4});const Va={defines:{MAX_STEP:0,isPerspectiveCamera:!0,isDistanceAttenuation:!0,isFresnel:!0,isInfiniteThick:!1,isSelective:!1},uniforms:{tDiffuse:{value:null},tNormal:{value:null},tMetalness:{value:null},tDepth:{value:null},cameraNear:{value:null},cameraFar:{value:null},resolution:{value:new oe},cameraProjectionMatrix:{value:new st},cameraInverseProjectionMatrix:{value:new st},opacity:{value:.5},maxDistance:{value:180},cameraRange:{value:0},surfDist:{value:.007},thickTolerance:{value:.03}}
6098,vertexShader:` 6099 6100 varying vec2 vUv; 6101 6102 void main() { 6103 6104 vUv = uv; 6105 6106 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 6107 6108 } 6109 6110 `,fragmentShader:` 6111 // precision highp float; 6112 precision highp sampler2D; 6113 varying vec2 vUv; 6114 uniform sampler2D tDepth; 6115 uniform sampler2D tNormal; 6116 uniform sampler2D tMetalness; 6117 uniform sampler2D tDiffuse; 6118 uniform float cameraRange; 6119 uniform vec2 resolution; 6120 uniform float opacity; 6121 uniform float cameraNear; 6122 uniform float cameraFar; 6123 uniform float maxDistance; 6124 uniform float surfDist; 6125 uniform mat4 cameraProjectionMatrix; 6126 uniform mat4 cameraInverseProjectionMatrix; 6127 uniform float thickTolerance; 6128 #include <packing> 6129 float pointToLineDistance(vec3 x0, vec3 x1, vec3 x2) { 6130 //x0: point, x1: linePointA, x2: linePointB 6131 //https://mathworld.wolfram.com/Point-LineDistance3-Dimensional.html 6132 return length(cross(x0-x1,x0-x2))/length(x2-x1); 6133 } 6134 float pointPlaneDistance(vec3 point,vec3 planePoint,vec3 planeNormal){ 6135 // https://mathworld.wolfram.com/Point-PlaneDistance.html 6136 //// https://en.wikipedia.org/wiki/Plane_(geometry) 6137 //// http://paulbourke.net/geometry/pointlineplane/ 6138 float a=planeNormal.x,b=planeNormal.y,c=planeNormal.z; 6139 float x0=point.x,y0=point.y,z0=point.z; 6140 float x=planePoint.x,y=planePoint.y,z=planePoint.z; 6141 float d=-(a*x+b*y+c*z); 6142 float distance=(a*x0+b*y0+c*z0+d)/sqrt(a*a+b*b+c*c); 6143 return distance; 6144 } 6145 float getDepth( const in vec2 uv ) { 6146 return texture2D( tDepth, uv ).x; 6147 } 6148 float getViewZ( const in float depth ) { 6149 #ifdef isPerspectiveCamera 6150 return perspectiveDepthToViewZ( depth, cameraNear, cameraFar ); 6151 #else 6152 return orthographicDepthToViewZ( depth, cameraNear, cameraFar ); 6153 #endif 6154 } 6155 vec3 getViewPosition( const in vec2 uv, const in float depth/*clip space*/, const in float clipW ) { 6156 vec4 clipPosition = vec4( ( vec3( uv, depth ) - 0.5 ) * 2.0, 1.0 );//ndc 6157 clipPosition *= clipW; //clip 6158 return ( cameraInverseProjectionMatrix * clipPosition ).xyz;//view 6159 } 6160 vec3 getViewNormal( const in vec2 uv ) { 6161 return unpackRGBToNormal( texture2D( tNormal, uv ).xyz ); 6162 } 6163 vec2 viewPositionToXY(vec3 viewPosition){ 6164 vec2 xy; 6165 vec4 clip=cameraProjectionMatrix*vec4(viewPosition,1); 6166 xy=clip.xy;//clip 6167 float clipW=clip.w; 6168 xy/=clipW;//NDC 6169 xy=(xy+1.)/2.;//uv 6170 xy*=resolution;//screen 6171 return xy; 6172 } 6173 void main(){ 6174 #ifdef isSelective 6175 float metalness=texture2D(tMetalness,vUv).r; 6176 if(metalness==0.) return; 6177 #endif 6178 6179 float depth = getDepth( vUv ); 6180 float viewZ = getViewZ( depth ); 6181 if(-viewZ>=cameraFar) return; 6182 6183 float clipW = cameraProjectionMatrix[2][3] * viewZ+cameraProjectionMatrix[3][3]; 6184 vec3 viewPosition=getViewPosition( vUv, depth, clipW ); 6185 6186 vec2 d0=gl_FragCoord.xy; 6187 vec2 d1; 6188 6189 vec3 viewNormal=getViewNormal( vUv ); 6190 6191 #ifdef isPerspectiveCamera 6192 vec3 viewIncidenceDir=normalize(viewPosition); 6193 vec3 viewReflectDir=reflect(viewIncidenceDir,viewNormal); 6194 #else 6195 vec3 viewIncidenceDir=vec3(0,0,-1); 6196 vec3 viewReflectDir=reflect(viewIncidenceDir,viewNormal); 6197 #endif 6198 6199 float maxReflectRayLen=maxDistance/dot(-viewIncidenceDir,viewNormal); 6200 // dot(a,b)==length(a)*length(b)*cos(theta) // https://www.mathsisfun.com/algebra/vectors-dot-product.html 6201 // if(a.isNormalized&&b.isNormalized) dot(a,b)==cos(theta) 6202 // maxDistance/maxReflectRayLen=cos(theta) 6203 // maxDistance/maxReflectRayLen==dot(a,b) 6204 // maxReflectRayLen==maxDistance/dot(a,b) 6205 6206 vec3 d1viewPosition=viewPosition+viewReflectDir*maxReflectRayLen; 6207 #ifdef isPerspectiveCamera 6208 if(d1viewPosition.z>-cameraNear){ 6209 //https://tutorial.math.lamar.edu/Classes/CalcIII/EqnsOfLines.aspx 6210 float t=(-cameraNear-viewPosition.z)/viewReflectDir.z; 6211 d1viewPosition=viewPosition+viewReflectDir*t; 6212 } 6213 #endif 6214 d1=viewPositionToXY(d1viewPosition); 6215 6216 float totalLen=length(d1-d0); 6217 float xLen=d1.x-d0.x; 6218 float yLen=d1.y-d0.y; 6219 float totalStep=max(abs(xLen),abs(yLen)); 6220 float xSpan=xLen/totalStep; 6221 float ySpan=yLen/totalStep; 6222 for(float i=0.;i<MAX_STEP;i++){ 6223 if(i>=totalStep) break; 6224 vec2 xy=vec2(d0.x+i*xSpan,d0.y+i*ySpan); 6225 if(xy.x<0.||xy.x>resolution.x||xy.y<0.||xy.y>resolution.y) break; 6226 float s=length(xy-d0)/totalLen; 6227 vec2 uv=xy/resolution; 6228 6229 float d = getDepth(uv); 6230 float vZ = getViewZ( d ); 6231 if(-vZ>=cameraFar) continue; 6232 float cW = cameraProjectionMatrix[2][3] * vZ+cameraProjectionMatrix[3][3]; 6233 vec3 vP=getViewPosition( uv, d, cW ); 6234 6235 #ifdef isPerspectiveCamera 6236 // https://www.comp.nus.edu.sg/~lowkl/publications/lowk_persp_interp_techrep.pdf 6237 float recipVPZ=1./viewPosition.z; 6238 float viewReflectRayZ=1./(recipVPZ+s*(1./d1viewPosition.z-recipVPZ)); 6239 float sD=surfDist*cW; 6240 #else 6241 float viewReflectRayZ=viewPosition.z+s*(d1viewPosition.z-viewPosition.z); 6242 float sD=surfDist; 6243 #endif 6244 if(viewReflectRayZ-sD>vZ) continue; 6245 6246 #ifdef isInfiniteThick 6247 if(viewReflectRayZ+thickTolerance*clipW<vP.z) break; 6248 #endif 6249 float away=pointToLineDistance(vP,viewPosition,d1viewPosition); 6250 6251 float op=opacity; 6252 6253 if(away<sD){ 6254 vec3 vN=getViewNormal( uv ); 6255 if(dot(viewReflectDir,vN)>=0.) continue; 6256 float distance=pointPlaneDistance(vP,viewPosition,viewNormal); 6257 if(distance>maxDistance) break; 6258 #ifdef isDistanceAttenuation 6259 float ratio=1.-(distance/maxDistance); 6260 float attenuation=ratio*ratio; 6261 op=opacity*attenuation; 6262 #endif 6263 #ifdef isFresnel 6264 float fresnel=(dot(viewIncidenceDir,viewReflectDir)+1.)/2.; 6265 op*=fresnel; 6266 #endif 6267 vec4 reflectColor=texture2D(tDiffuse,uv); 6268 gl_FragColor.xyz=reflectColor.xyz; 6269 gl_FragColor.a=op; 6270 break; 6271 } 6272 } 6273 } 6274 `},J7={defines:{PERSPECTIVE_CAMERA:1},uniforms:{tDepth:{value:null},cameraNear:{value:null},cameraFar:{value:null}},vertexShader:` 6275 6276 varying vec2 vUv; 6277 6278 void main() { 6279 6280 vUv = uv; 6281 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 6282 6283 } 6284 6285 `,fragmentShader:` 6286 6287 uniform sampler2D tDepth; 6288 6289 uniform float cameraNear; 6290 uniform float cameraFar; 6291 6292 varying vec2 vUv; 6293 6294 #include <packing> 6295 6296 float getLinearDepth( const in vec2 uv ) { 6297 6298 #if PERSPECTIVE_CAMERA == 1 6299 6300 float fragCoordZ = texture2D( tDepth, uv ).x; 6301 float viewZ = perspectiveDepthToViewZ( fragCoordZ, cameraNear, cameraFar ); 6302 return viewZToOrthographicDepth( viewZ, cameraNear, cameraFar ); 6303 6304 #else 6305 6306 return texture2D( tDepth, uv ).x; 6307 6308 #endif 6309 6310 } 6311 6312 void main() { 6313 6314 float depth = getLinearDepth( vUv ); 6315 float d = 1.0 - depth; 6316 // d=(d-.999)*1000.; 6317 gl_FragColor = vec4( vec3( d ), 1.0 ); 6318 6319 } 6320 6321 `},$u={uniforms:{tDiffuse:{value:null},resolution:{value:new oe},opacity:{value:.5}},vertexShader:` 6322 6323 varying vec2 vUv; 6324 6325 void main() { 6326 6327 vUv = uv; 6328 gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 6329 6330 } 6331 6332 `,fragmentShader:` 6333 6334 uniform sampler2D tDiffuse; 6335 uniform vec2 resolution; 6336 varying vec2 vUv; 6337 void main() { 6338 //reverse engineering from PhotoShop blur filter, then change coefficient 6339 6340 vec2 texelSize = ( 1.0 / resolution ); 6341 6342 vec4 c=texture2D(tDiffuse,vUv); 6343 6344 vec2 offset; 6345 6346 offset=(vec2(-1,0))*texelSize; 6347 vec4 cl=texture2D(tDiffuse,vUv+offset); 6348 6349 offset=(vec2(1,0))*texelSize; 6350 vec4 cr=texture2D(tDiffuse,vUv+offset); 6351 6352 offset=(vec2(0,-1))*texelSize; 6353 vec4 cb=texture2D(tDiffuse,vUv+offset); 6354 6355 offset=(vec2(0,1))*texelSize; 6356 vec4 ct=texture2D(tDiffuse,vUv+offset); 6357 6358 // float coeCenter=.5; 6359 // float coeSide=.125; 6360 float coeCenter=.2; 6361 float coeSide=.2; 6362 float a=c.a*coeCenter+cl.a*coeSide+cr.a*coeSide+cb.a*coeSide+ct.a*coeSide; 6363 vec3 rgb=(c.rgb*c.a*coeCenter+cl.rgb*cl.a*coeSide+cr.rgb*cr.a*coeSide+cb.rgb*cb.a*coeSide+ct.rgb*ct.a*coeSide)/a; 6364 gl_FragColor=vec4(rgb,a); 6365 6366 } 6367 `},Uh=class extends Kg{constructor({renderer:t,scene:e,camera:n,width:i,height:r,selects:s,bouncing:o=!1,groundReflector:a}){super(),this.width=i!==void 0?i:512,this.height=r!==void 0?r:512,this.clear=!0,this.renderer=t,this.scene=e,this.camera=n,this.groundReflector=a,this.opacity=Va.uniforms.opacity.value,this.output=0,this.maxDistance=Va.uniforms.maxDistance.value,this.thickness=Va.uniforms.thickness.value,this.tempColor=new Me,this._selects=s,this.selective=Array.isArray(this._selects),Object.defineProperty(this,"selects",{get(){return this._selects},set(u){this._selects!==u&&(this._selects=u,Array.isArray(u)?(this.selective=!0,this.ssrMaterial.defines.SELECTIVE=!0,this.ssrMaterial.needsUpdate=!0):(this.selective=!1,this.ssrMaterial.defines.SELECTIVE=!1,this.ssrMaterial.needsUpdate=!0))}}),this._bouncing=o,Object.defineProperty(this,"bouncing",{get(){return this._bouncing},set(u){this._bouncing!==u&&(this._bouncing=u,u?this.ssrMaterial.uniforms.tDiffuse.value=this.prevRenderTarget.texture:this.ssrMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture)}}),this.blur=!0,this._distanceAttenuation=Va.defines.DISTANCE_ATTENUATION,Object.defineProperty(this,"distanceAttenuation",{get(){return this._distanceAttenuation},set(u){this._distanceAttenuation!==u&&(this._distanceAttenuation=u,this.ssrMaterial.defines.DISTANCE_ATTENUATION=u,this.ssrMaterial.needsUpdate=!0)}}),this._fresnel=Va.defines.FRESNEL,Object.defineProperty(this,"fresnel",{get(){return this._fresnel},set(u){this._fresnel!==u&&(this._fresnel=u,this.ssrMaterial.defines.FRESNEL=u,this.ssrMaterial.needsUpdate=!0)}}),this._infiniteThick=Va.defines.INFINITE_THICK,Object.defineProperty(this,"infiniteThick",{get(){return this._infiniteThick},set(u){this._infiniteThick!==u&&(this._infiniteThick=u,this.ssrMaterial.defines.INFINITE_THICK=u,this.ssrMaterial.needsUpdate=!0)}});const l=new z1;l.type=U1,l.minFilter=At,l.magFilter=At,this.beautyRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At,type:yi,depthTexture:l,depthBuffer:!0}),this.prevRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At}),this.normalRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At,type:yi}),this.metalnessRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At,type:yi}),this.ssrRenderTarget=new Yt(this.width,this.height,{minFilter:At,magFilter:At}),this.blurRenderTarget=this.ssrRenderTarget.clone(),this.blurRenderTarget2=this.ssrRenderTarget.clone(),this.ssrMaterial=new zt({defines:Object.assign({}
6367,Va.defines,{MAX_STEP:Math.sqrt(this.width*this.width+this.height*this.height)}),uniforms:Kn.clone(Va.uniforms),vertexShader:Va.vertexShader,fragmentShader:Va.fragmentShader,blending:bt}),this.ssrMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.ssrMaterial.uniforms.tNormal.value=this.normalRenderTarget.texture,this.ssrMaterial.defines.SELECTIVE=this.selective,this.ssrMaterial.needsUpdate=!0,this.ssrMaterial.uniforms.tMetalness.value=this.metalnessRenderTarget.texture,this.ssrMaterial.uniforms.tDepth.value=this.beautyRenderTarget.depthTexture,this.ssrMaterial.uniforms.cameraNear.value=this.camera.near,this.ssrMaterial.uniforms.cameraFar.value=this.camera.far,this.ssrMaterial.uniforms.thickness.value=this.thickness,this.ssrMaterial.uniforms.resolution.value.set(this.width,this.height),this.ssrMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.ssrMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.normalMaterial=new D2,this.normalMaterial.blending=bt,this.metalnessOnMaterial=new Go({color:"white"}),this.metalnessOffMaterial=new Go({color:"black"}),this.blurMaterial=new zt({defines:Object.assign({},$u.defines),uniforms:Kn.clone($u.uniforms),vertexShader:$u.vertexShader,fragmentShader:$u.fragmentShader}),this.blurMaterial.uniforms.tDiffuse.value=this.ssrRenderTarget.texture,this.blurMaterial.uniforms.resolution.value.set(this.width,this.height),this.blurMaterial2=new zt({defines:Object.assign({},$u.defines),uniforms:Kn.clone($u.uniforms),vertexShader:$u.vertexShader,fragmentShader:$u.fragmentShader}),this.blurMaterial2.uniforms.tDiffuse.value=this.blurRenderTarget.texture,this.blurMaterial2.uniforms.resolution.value.set(this.width,this.height),this.depthRenderMaterial=new zt({defines:Object.assign({},J7.defines),uniforms:Kn.clone(J7.uniforms),vertexShader:J7.vertexShader,fragmentShader:J7.fragmentShader,blending:bt}),this.depthRenderMaterial.uniforms.tDepth.value=this.beautyRenderTarget.depthTexture,this.depthRenderMaterial.uniforms.cameraNear.value=this.camera.near,this.depthRenderMaterial.uniforms.cameraFar.value=this.camera.far,this.copyMaterial=new zt({uniforms:Kn.clone(fl.uniforms),vertexShader:fl.vertexShader,fragmentShader:fl.fragmentShader,transparent:!0,depthTest:!1,depthWrite:!1,blendSrc:vd,blendDst:yd,blendEquation:Ws,blendSrcAlpha:vd,blendDstAlpha:yd,blendEquationAlpha:Ws}),this.fsQuad=new Jg(null),this.originalClearColor=new Me}dispose(){this.beautyRenderTarget.dispose(),this.prevRenderTarget.dispose(),this.normalRenderTarget.dispose(),this.metalnessRenderTarget.dispose(),this.ssrRenderTarget.dispose(),this.blurRenderTarget.dispose(),this.blurRenderTarget2.dispose(),this.normalMaterial.dispose(),this.metalnessOnMaterial.dispose(),this.metalnessOffMaterial.dispose(),this.blurMaterial.dispose(),this.blurMaterial2.dispose(),this.copyMaterial.dispose(),this.depthRenderMaterial.dispose(),this.fsQuad.dispose()}render(t,e){switch(t.setRenderTarget(this.beautyRenderTarget),t.clear(),this.groundReflector&&(this.groundReflector.visible=!1,this.groundReflector.doRender(this.renderer,this.scene,this.camera),this.groundReflector.visible=!0),t.render(this.scene,this.camera),this.groundReflector&&(this.groundReflector.visible=!1),this.renderOverride(t,this.normalMaterial,this.normalRenderTarget,0,0),this.selective&&this.renderMetalness(t,this.metalnessOnMaterial,this.metalnessRenderTarget,0,0),this.ssrMaterial.uniforms.opacity.value=this.opacity,this.ssrMaterial.uniforms.maxDistance.value=this.maxDistance,this.ssrMaterial.uniforms.thickness.value=this.thickness,this.renderPass(t,this.ssrMaterial,this.ssrRenderTarget),this.blur&&(this.renderPass(t,this.blurMaterial,this.blurRenderTarget),this.renderPass(t,this.blurMaterial2,this.blurRenderTarget2)),this.output){case Uh.OUTPUT.Default:this.bouncing?(this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.prevRenderTarget),this.blur?this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget2.texture:this.copyMaterial.uniforms.tDiffuse.value=this.ssrRenderTarget.texture,this.copyMaterial.blending=sl,this.renderPass(t,this.copyMaterial,this.prevRenderTarget),this.copyMaterial.uniforms.tDiffuse.value=this.prevRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e)):(this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e),this.blur?this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget2.texture:this.copyMaterial.uniforms.tDiffuse.value=this.ssrRenderTarget.texture,this.copyMaterial.blending=sl,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e));break;case Uh.OUTPUT.SSR:this.blur?this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget2.texture:this.copyMaterial.uniforms.tDiffuse.value=this.ssrRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e),this.bouncing&&(this.blur?this.copyMaterial.uniforms.tDiffuse.value=this.blurRenderTarget2.texture:this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.prevRenderTarget),this.copyMaterial.uniforms.tDiffuse.value=this.ssrRenderTarget.texture,this.copyMaterial.blending=sl,this.renderPass(t,this.copyMaterial,this.prevRenderTarget));break;case Uh.OUTPUT.Beauty:this.copyMaterial.uniforms.tDiffuse.value=this.beautyRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Uh.OUTPUT.Depth:this.renderPass(t,this.depthRenderMaterial,this.renderToScreen?null:e);break;case Uh.OUTPUT.Normal:this.copyMaterial.uniforms.tDiffuse.value=this.normalRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;case Uh.OUTPUT.Metalness:this.copyMaterial.uniforms.tDiffuse.value=this.metalnessRenderTarget.texture,this.copyMaterial.blending=bt,this.renderPass(t,this.copyMaterial,this.renderToScreen?null:e);break;default:console.warn("THREE.SSRPass: Unknown output type.")}}renderPass(t,e,n,i,r){this.originalClearColor.copy(t.getClearColor(this.tempColor));const s=t.getClearAlpha(this.tempColor),o=t.autoClear;t.setRenderTarget(n),t.autoClear=!1,i!=null&&(t.setClearColor(i),t.setClearAlpha(r||0),t.clear()),this.fsQuad.material=e,this.fsQuad.render(t),t.autoClear=o,t.setClearColor(this.originalClearColor),t.setClearAlpha(s)}renderOverride(t,e,n,i,r){this.originalClearColor.copy(t.getClearColor(this.tempColor));const s=t.getClearAlpha(this.tempColor),o=t.autoClear;t.setRenderTarget(n),t.autoClear=!1,i=e.clearColor||i,r=e.clearAlpha||r,i!=null&&(t.setClearColor(i),t.setClearAlpha(r||0),t.clear()),this.scene.overrideMaterial=e,t.render(this.scene,this.camera),this.scene.overrideMaterial=null,t.autoClear=o,t.setClearColor(this.originalClearColor),t.setClearAlpha(s)}renderMetalness(t,e,n,i,r){this.originalClearColor.copy(t.getClearColor(this.tempColor));const s=t.getClearAlpha(this.tempColor),o=t.autoClear;t.setRenderTarget(n),t.autoClear=!1,i=e.clearColor||i,r=e.clearAlpha||r,i!=null&&(t.setClearColor(i),t.setClearAlpha(r||0),t.clear()),this.scene.traverseVisible(a=>{a._SSRPassBackupMaterial=a.material,this._selects.includes(a)?a.material=this.metalnessOnMaterial:a.material=this.metalnessOffMaterial}),t.render(this.scene,this.camera),this.scene.traverseVisible(a=>{a.material=a._SSRPassBackupMaterial}),t.autoClear=o,t.setClearColor(this.originalClearColor),t.setClearAlpha(s)}setSize(t,e){this.width=t,this.height=e,this.ssrMaterial.defines.MAX_STEP=Math.sqrt(t*t+e*e),this.ssrMaterial.needsUpdate=!0,this.beautyRenderTarget.setSize(t,e),this.prevRenderTarget.setSize(t,e),this.ssrRenderTarget.setSize(t,e),this.normalRenderTarget.setSize(t,e),this.metalnessRenderTarget.setSize(t,e),this.blurRenderTarget.setSize(t,e),this.blurRenderTarget2.setSize(t,e),this.ssrMaterial.uniforms.resolution.value.set(t,e),this.ssrMaterial.uniforms.cameraProjectionMatrix.value.copy(this.camera.projectionMatrix),this.ssrMaterial.uniforms.cameraInverseProjectionMatrix.value.copy(this.camera.projectionMatrixInverse),this.blurMaterial.uniforms.resolution.value.set(t,e),this.blurMaterial2.uniforms.resolution.value.set(t,e)}};let O6e=Uh;nt(O6e,"OUTPUT",{Default:0,SSR:1,Beauty:3,Depth:4,Normal:5,Metalness:7});const ZE=class{static createButton(t,e={}){const n=document.createElement("button");function i(){let a=null;async function l(c){c.addEventListener("end",u),await t.xr.setSession(c),n.textContent="EXIT VR",a=c}function u(){a.removeEventListener("end",u),n.textContent="ENTER VR",a=null}n.style.display="",n.style.cursor="pointer",n.style.left="calc(50% - 50px)",n.style.width="100px",n.textContent="ENTER VR",n.onmouseenter=()=>{n.style.opacity="1.0"},n.onmouseleave=()=>{n.style.opacity="0.5"},n.onclick=()=>{var c;if(a===null){const h=[e.optionalFeatures,"local-floor","bounded-floor","hand-tracking"].flat().filter(
6367Boolean);(c=navigator.xr)==null||c.requestSession("immersive-vr",{...e,optionalFeatures:h}).then(l)}else a.end()}}function r(){n.style.display="",n.style.cursor="auto",n.style.left="calc(50% - 75px)",n.style.width="150px",n.onmouseenter=null,n.onmouseleave=null,n.onclick=null}function s(){r(),n.textContent="VR NOT SUPPORTED"}function o(a){a.style.position="absolute",a.style.bottom="20px",a.style.padding="12px 6px",a.style.border="1px solid #fff",a.style.borderRadius="4px",a.style.background="rgba(0,0,0,0.1)",a.style.color="#fff",a.style.font="normal 13px sans-serif",a.style.textAlign="center",a.style.opacity="0.5",a.style.outline="none",a.style.zIndex="999"}if("xr"in navigator)return o(n),n.id="VRButton",n.style.display="none",navigator.xr.isSessionSupported("immersive-vr").then(a=>{a?i():s(),a&&ZE.xrSessionIsGranted&&n.click()}),n;{const a=document.createElement("a");return window.isSecureContext===!1?(a.href=document.location.href.replace(/^http:/,"https:"),a.innerHTML="WEBXR NEEDS HTTPS"):(a.href="https://immersiveweb.dev/",a.innerHTML="WEBXR NOT AVAILABLE"),a.style.left="calc(50% - 90px)",a.style.width="180px",a.style.textDecoration="none",o(a),a}}static registerSessionGrantedListener(){"xr"in navigator&&navigator.xr.addEventListener("sessiongranted",()=>{ZE.xrSessionIsGranted=!0})}};let U6e=ZE;nt(U6e,"xrSessionIsGranted",!1);class RW{constructor(e){nt(this,"data"),this.data=e}generateShapes(e,n=100,i){const r=[],s={letterSpacing:0,lineHeight:1,...i},o=z6e(e,n,this.data,s);for(let a=0,l=o.length;a<l;a++)Array.prototype.push.apply(r,o[a].toShapes(!1));return r}}nt(RW,"isFont");nt(RW,"type");function z6e(t,e,n,i){const r=Array.from(t),s=e/n.resolution,o=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*s,a=[];let l=0,u=0;for(let c=0;c<r.length;c++){const h=r[c];if(h===` 6368`)l=0,u-=o*i.lineHeight;else{const f=V6e(h,s,l,u,n);f&&(l+=f.offsetX+i.letterSpacing,a.push(f.path))}}return a}function V6e(t,e,n,i,r){const s=r.glyphs[t]||r.glyphs["?"];if(!s){console.error('THREE.Font: character "'+t+'" does not exists in font family '+r.familyName+".");return}const o=new pC;let a,l,u,c,h,f,m,g;if(s.o){const v=s._cachedOutline||(s._cachedOutline=s.o.split(" "));for(let _=0,A=v.length;_<A;)switch(v[_++]){case"m":a=parseInt(v[_++])*e+n,l=parseInt(v[_++])*e+i,o.moveTo(a,l);break;case"l":a=parseInt(v[_++])*e+n,l=parseInt(v[_++])*e+i,o.lineTo(a,l);break;case"q":u=parseInt(v[_++])*e+n,c=parseInt(v[_++])*e+i,h=parseInt(v[_++])*e+n,f=parseInt(v[_++])*e+i,o.quadraticCurveTo(h,f,u,c);break;case"b":u=parseInt(v[_++])*e+n,c=parseInt(v[_++])*e+i,h=parseInt(v[_++])*e+n,f=parseInt(v[_++])*e+i,m=parseInt(v[_++])*e+n,g=parseInt(v[_++])*e+i,o.bezierCurveTo(h,f,m,g,u,c);break}}return{offsetX:s.ha*e,path:o}}class G6e extends Gn{constructor(e=null,n=1,i=1,r=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:n,height:i,depth:r},this.magFilter=At,this.minFilter=At,this.wrapR=pi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}var Q6e=typeof global=="object"&&global&&global.Object===Object&&global;const bW=Q6e;var H6e=typeof self=="object"&&self&&self.Object===Object&&self,W6e=bW||H6e||Function("return this")();const El=W6e;var $6e=El.Symbol;const Ho=$6e;var PW=Object.prototype,j6e=PW.hasOwnProperty,X6e=PW.toString,$f=Ho?Ho.toStringTag:void 0;function Y6e(t){var e=j6e.call(t,$f),n=t[$f];try{t[$f]=void 0;var i=!0}catch{}var r=X6e.call(t);return i&&(e?t[$f]=n:delete t[$f]),r}var K6e=Object.prototype,J6e=K6e.toString;function Z6e(t){return J6e.call(t)}var epe="[object Null]",tpe="[object Undefined]",wL=Ho?Ho.toStringTag:void 0;function ah(t){return t==null?t===void 0?tpe:epe:wL&&wL in Object(t)?Y6e(t):Z6e(t)}function xa(t){return t!=null&&typeof t=="object"}var npe="[object Symbol]";function Zg(t){return typeof t=="symbol"||xa(t)&&ah(t)==npe}function u6(t,e){for(var n=-1,i=t==null?0:t.length,r=Array(i);++n<i;)r[n]=e(t[n],n,t);return r}var ipe=Array.isArray;const un=ipe;var rpe=1/0,IL=Ho?Ho.prototype:void 0,ML=IL?IL.toString:void 0;function BW(t){if(typeof t=="string")return t;if(un(t))return u6(t,BW)+"";if(Zg(t))return ML?ML.call(t):"";var e=t+"";return e=="0"&&1/t==-rpe?"-0":e}var spe=/\s/;function ope(t){for(var e=t.length;e--&&spe.test(t.charAt(e)););return e}var ape=/^\s+/;function lpe(t){return t&&t.slice(0,ope(t)+1).replace(ape,"")}function Wo(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var RL=0/0,upe=/^[-+]0x[0-9a-f]+$/i,cpe=/^0b[01]+$/i,hpe=/^0o[0-7]+$/i,fpe=parseInt;function dpe(t){if(typeof t=="number")return t;if(Zg(t))return RL;if(Wo(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Wo(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=lpe(t);var n=cpe.test(t);return n||hpe.test(t)?fpe(t.slice(2),n?2:8):upe.test(t)?RL:+t}var bL=1/0,ppe=17976931348623157e292;function mpe(t){if(!t)return t===0?t:0;if(t=dpe(t),t===bL||t===-bL){var e=t<0?-1:1;return e*ppe}return t===t?t:0}function c6(t){var e=mpe(t),n=e%1;return e===e?n?e-n:e:0}function m2(t){return t}var gpe="[object AsyncFunction]",Ape="[object Function]",vpe="[object GeneratorFunction]",ype="[object Proxy]";function Eu(t){if(!Wo(t))return!1;var e=ah(t);return e==Ape||e==vpe||e==gpe||e==ype}var qpe=El["__core-js_shared__"];const Uq=qpe;var PL=function(){var t=/[^.]+$/.exec(Uq&&Uq.keys&&Uq.keys.IE_PROTO||"");
vendor: 4,550 bytes, line 6368
6368return t?"Symbol(src)_1."+t:""}();function _pe(t){return!!PL&&PL in t}var xpe=Function.prototype,Epe=xpe.toString;function $1(t){if(t!=null){try{return Epe.call(t)}catch{}try{return t+""}catch{}}return""}var Spe=/[\\^$.*+?()[\]{}|]/g,Tpe=/^\[object .+?Constructor\]$/,Cpe=Function.prototype,wpe=Object.prototype,Ipe=Cpe.toString,Mpe=wpe.hasOwnProperty,Rpe=RegExp("^"+Ipe.call(Mpe).replace(Spe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function bpe(t){if(!Wo(t)||_pe(t))return!1;var e=Eu(t)?Rpe:Tpe;return e.test($1(t))}function Ppe(t,e){return t==null?void 0:t[e]}function j1(t,e){var n=Ppe(t,e);return bpe(n)?n:void 0}var Bpe=j1(El,"WeakMap");const eS=Bpe;var BL=Object.create,Dpe=function(){function t(){}return function(e){if(!Wo(e))return{};if(BL)return BL(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();const Lpe=Dpe;function Npe(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Vi(){}function kpe(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n<i;)e[n]=t[n];return e}var Fpe=800,Ope=16,Upe=Date.now;function zpe(t){var e=0,n=0;return function(){var i=Upe(),r=Ope-(i-n);if(n=i,r>0){if(++e>=Fpe)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function Vpe(t){return function(){return t}}var Gpe=function(){try{var t=j1(Object,"defineProperty");return t({},"",{}),t}catch{}}();const Km=Gpe;var Qpe=Km?function(t,e){return Km(t,"toString",{configurable:!0,enumerable:!1,value:Vpe(e),writable:!0})}:m2;const Hpe=Qpe;var Wpe=zpe(Hpe);const $pe=Wpe;function DW(t,e){for(var n=-1,i=t==null?0:t.length;++n<i&&e(t[n],n,t)!==!1;);return t}function LW(t,e,n,i){for(var r=t.length,s=n+(i?1:-1);i?s--:++s<r;)if(e(t[s],s,t))return s;return-1}function jpe(t){return t!==t}function Xpe(t,e,n){for(var i=n-1,r=t.length;++i<r;)if(t[i]===e)return i;return-1}function Ow(t,e,n){return e===e?Xpe(t,e,n):LW(t,jpe,n)}function NW(t,e){var n=t==null?0:t.length;return!!n&&Ow(t,e,0)>-1}var Ype=9007199254740991,Kpe=/^(?:0|[1-9]\d*)$/;function eA(t,e){var n=typeof t;return e=e??Ype,!!e&&(n=="number"||n!="symbol"&&Kpe.test(t))&&t>-1&&t%1==0&&t<e}function Uw(t,e,n){e=="__proto__"&&Km?Km(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function h6(t,e){return t===e||t!==t&&e!==e}var Jpe=Object.prototype,Zpe=Jpe.hasOwnProperty;function tA(t,e,n){var i=t[e];(!(Zpe.call(t,e)&&h6(i,n))||n===void 0&&!(e in t))&&Uw(t,e,n)}function f6(t,e,n,i){var r=!n;n||(n={});for(var s=-1,o=e.length;++s<o;){var a=e[s],l=i?i(n[a],t[a],a,n,t):void 0;l===void 0&&(l=t[a]),r?Uw(n,a,l):tA(n,a,l)}return n}var DL=Math.max;function e7e(t,e,n){return e=DL(e===void 0?t.length-1:e,0),function(){for(var i=arguments,r=-1,s=DL(i.length-e,0),o=Array(s);++r<s;)o[r]=i[e+r];r=-1;for(var a=Array(e+1);++r<e;)a[r]=i[r];return a[e]=n(o),Npe(t,this,a)}}function zw(t,e){return $pe(e7e(t,e,m2),t+"")}var t7e=9007199254740991;function Vw(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=t7e}function Sl(t){return t!=null&&Vw(t.length)&&!Eu(t)}function nA(t,e,n){if(!Wo(n))return!1;var i=typeof e;return(i=="number"?Sl(n)&&eA(e,n.length):i=="string"&&e in n)?h6(n[e],t):!1}function n7e(t){return zw(function(e,n){var i=-1,r=n.length,s=r>1?n[r-1]:void 0,o=r>2?n[2]:void 0;for(s=t.length>3&&typeof s=="function"?(r--,s):void 0,o&&nA(n[0],n[1],o)&&(s=r<3?void 0:s,r=1),e=Object(e);++i<r;){var a=n[i];a&&t(e,a,i,s)}return e})}var i7e=Object.prototype;function d6(t){var e=t&&t.constructor,n=typeof e=="function"&&e.prototype||i7e;return t===n}function r7e(t,e){for(var n=-1,i=Array(t);++n<t;)i[n]=e(n);return i}var s7e="[object Arguments]";function LL(t){return xa(t)&&ah(t)==s7e}var kW=Object.prototype,o7e=kW.hasOwnProperty,a7e=kW.propertyIsEnumerable,l7e=LL(function(){return arguments}())?LL:function(t){return xa(t)&&o7e.call(t,"callee")&&!a7e.call(t,"callee")};const iA=l7e;function u7e(){return!1}var FW=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,NL=FW&&typeof Ks=="object"&&Ks&&!Ks.nodeType&&Ks,c7e=NL&&NL.exports===FW,kL=c7e?El.Buffer:void 0,h7e=kL?kL.isBuffer:void 0,f7e=h7e||u7e;const g4=f7e;var d7e="[object Arguments]",p7e="[object Array]",m7e="[object Boolean]",g7e="[object Date]",A7e="[object Error]",v7e="[object Function]",y7e="[object Map]",q7e="[object Number]",_7e="[object Object]",x7e="[object RegExp]",E7e="[object Set]",S7e="[object String]",T7e="[object WeakMap]",C7e="[object ArrayBuffer]",w7e="[object DataView]",I7e="[object Float32Array]",M7e="[object Float64Array
6368]",R7e="[object Int8Array]",b7e="[object Int16Array]",P7e="[object Int32Array]",B7e="[object Uint8Array]",D7e="[object Uint8ClampedArray]",L7e="[object Uint16Array]",N7e="[object Uint32Array]",Un={};Un[I7e]=Un[M7e]=Un[R7e]=Un[b7e]=Un[P7e]=Un[B7e]=Un[D7e]=Un[L7e]=Un[N7e]=!0;Un[d7e]=Un[p7e]=Un[C7e]=Un[m7e]=Un[w7e]=Un[g7e]=Un[A7e]=Un[v7e]=Un[y7e]=Un[q7e]=Un[_7e]=Un[x7e]=Un[E7e]=Un[S7e]=Un[T7e]=!1;function k7e(t){return xa(t)&&Vw(t.length)&&!!Un[ah(t)]}function p6(t){return function(e){return t(e)}}var OW=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Q5=OW&&typeof Ks=="object"&&Ks&&!Ks.nodeType&&Ks,F7e=Q5&&Q5.exports===OW,zq=F7e&&bW.process,O7e=function(){try{var t=Q5&&Q5.require&&Q5.require("util").types;return t||zq&&zq.binding&&zq.binding("util")}catch{}}();const Gc=O7e;var FL=Gc&&Gc.isTypedArray,U7e=FL?p6(FL):k7e;const Gw=U7e;var z7e=Object.prototype,V7e=z7e.hasOwnProperty;function UW(t,e){var n=un(t),i=!n&&iA(t),r=!n&&!i&&g4(t),s=!n&&!i&&!r&&Gw(t),o=n||i||r||s,a=o?r7e(t.length,String):[],l=a.length;for(var u in t)(e||V7e.call(t,u))&&!(o&&(u=="length"||r&&(u=="offset"||u=="parent")||s&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||eA(u,l)))&&a.push(u);return a}function zW(t,e){return function(n){return t(e(n))}}var G7e=zW(Object.keys,Object);const Q7e=G7e;var H7e=Object.prototype,W7e=H7e.hasOwnProperty;function VW(t){if(!d6(t))return Q7e(t);var e=[];for(var n in Object(t))W7e.call(t,n)&&n!="constructor"&&e.push(n);return e}function ro(t){return Sl(t)?UW(t):VW(t)}var $7e=Object.prototype,j7e=$7e.hasOwnProperty,X7e=n7e(function(t,e){if(d6(e)||Sl(e)){f6(e,ro(e),t);return}for(var n in e)j7e.call(e,n)&&tA(t,n,e[n])});const so=X7e;function Y7e(t){var e=[];if(t!=null)for(var n in Object(t))e.push(n);return e}var K7e=Object.prototype,J7e=K7e.hasOwnProperty;function Z7e(t){if(!Wo(t))return Y7e(t);var e=d6(t),n=[];for(var i in t)i=="constructor"&&(e||!J7e.call(t,i))||n.push(i);return n}function rA(t){return Sl(t)?UW(t,!0):Z7e(t)}var e8e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,t8e=/^\w*$/;function Qw(t,e){if(un(t))return!1;var n=typeof t;return n=="number"||n=="symbol"||n=="boolean"||t==null||Zg(t)?!0:t8e.test(t)||!e8e.test(t)||e!=null&&t in Object(e)}var n8e=j1(Object,"create");const A4=n8e;function i8e(){this.__data__=A4?A4(null):{},this.size=0}function r8e(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var s8e="__lodash_hash_undefined__",o8e=Object.prototype,a8e=o8e.hasOwnProperty;function l8e(t){var e=this.__data__;if(A4){var n=e[t];return n===s8e?void 0:n}return a8e.call(e,t)?e[t]:void 0}var u8e=Object.prototype,c8e=u8e.hasOwnProperty;function h8e(t){var e=this.__data__;return A4?e[t]!==void 0:c8e.call(e,t)}var f8e="__lodash_hash_undefined__";function d8e(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=A4&&e===void 0?f8e:e,this}function P1(t){var e=-1,n=t==null?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}P1.prototype.clear=i8e;P1.prototype.delete=r8e;P1.prototype.get=l8e;P1.prototype.has=h8e;P1.prototype.set=d8e;function p8e(){this.__data__=[],this.size=0}function sA(t,e){for(var n=t.length;n--;)if(h6(t[n][0],e))return n;return-1}var m8e=Array.prototype,g8e=m8e.splice;function A8e(t){var e=this.__data__,n=sA(e,t);if(n<0)return!1;var i=e.length-1;return n==i?e.pop():g8e.call(e,n,1),--this.size,!0}function v8e(t){var e=this.__data__,n=sA(e,t);return n<0?void 0:e[n][1]}function y8e(t){return sA(this.__data__,t)>-1}function q8e(t,e){var n=this.__data__,i=sA(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}function Su(t){var e=-1,n=t==null?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}Su.prototype.clear=p8e;Su.prototype.delete=A8e;Su.prototype.get=v8e;Su.prototype.has=y8e;Su.prototype.set=q8e;var _8e=j1(El,"Map");const v4=_8e;function x8e(){this.size=0,this.__data__={hash:new P1,map:new(v4||Su),string:new P1}}function E8e(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}function oA(t,e){var n=t.__data__;return E8e(e)?n[typeof e=="string"?"string":"hash"]:n.map}function S8e(t){var e=oA(this,t).delete(t);return this.size-=e?1:0,e}function T8e(t){return oA(this,t).get(t)}function C8e(t){return oA(this,t).has(t)}function w8e(t,e){var n=oA(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}function Tu(t){var e=-1,n=t==null?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}Tu.prototype.clear=x8e;Tu.prototype.delete=S8e;Tu.prototype.get=T8e;Tu.prototype.has=C8e;Tu.prototype.set=w8e;var I8e="Expected a function";function Hw(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(I8e);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],s=n.cache;if(s.has(r))return s.get(r);
vendor: 4,338 bytes, line 6368
6368var o=t.apply(this,i);return n.cache=s.set(r,o)||s,o};return n.cache=new(Hw.Cache||Tu),n}Hw.Cache=Tu;var M8e=500;function R8e(t){var e=Hw(t,function(i){return n.size===M8e&&n.clear(),i}),n=e.cache;return e}var b8e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,P8e=/\\(\\)?/g,B8e=R8e(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(b8e,function(n,i,r,s){e.push(r?s.replace(P8e,"$1"):i||n)}),e});const D8e=B8e;function L8e(t){return t==null?"":BW(t)}function aA(t,e){return un(t)?t:Qw(t,e)?[t]:D8e(L8e(t))}var N8e=1/0;function m6(t){if(typeof t=="string"||Zg(t))return t;var e=t+"";return e=="0"&&1/t==-N8e?"-0":e}function Ww(t,e){e=aA(e,t);for(var n=0,i=e.length;t!=null&&n<i;)t=t[m6(e[n++])];return n&&n==i?t:void 0}function k8e(t,e,n){var i=t==null?void 0:Ww(t,e);return i===void 0?n:i}function $w(t,e){for(var n=-1,i=e.length,r=t.length;++n<i;)t[r+n]=e[n];return t}var OL=Ho?Ho.isConcatSpreadable:void 0;function F8e(t){return un(t)||iA(t)||!!(OL&&t&&t[OL])}function lA(t,e,n,i,r){var s=-1,o=t.length;for(n||(n=F8e),r||(r=[]);++s<o;){var a=t[s];e>0&&n(a)?e>1?lA(a,e-1,n,i,r):$w(r,a):i||(r[r.length]=a)}return r}function pa(t){var e=t==null?0:t.length;return e?lA(t,1):[]}var O8e=zW(Object.getPrototypeOf,Object);const GW=O8e;function QW(t,e,n){var i=-1,r=t.length;e<0&&(e=-e>r?0:r+e),n=n>r?r:n,n<0&&(n+=r),r=e>n?0:n-e>>>0,e>>>=0;for(var s=Array(r);++i<r;)s[i]=t[i+e];return s}function U8e(t,e,n,i){var r=-1,s=t==null?0:t.length;for(i&&s&&(n=t[++r]);++r<s;)n=e(n,t[r],r,t);return n}function z8e(){this.__data__=new Su,this.size=0}function V8e(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}function G8e(t){return this.__data__.get(t)}function Q8e(t){return this.__data__.has(t)}var H8e=200;function W8e(t,e){var n=this.__data__;if(n instanceof Su){var i=n.__data__;if(!v4||i.length<H8e-1)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new Tu(i)}return n.set(t,e),this.size=n.size,this}function dl(t){var e=this.__data__=new Su(t);this.size=e.size}dl.prototype.clear=z8e;dl.prototype.delete=V8e;dl.prototype.get=G8e;dl.prototype.has=Q8e;dl.prototype.set=W8e;function $8e(t,e){return t&&f6(e,ro(e),t)}function j8e(t,e){return t&&f6(e,rA(e),t)}var HW=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,UL=HW&&typeof Ks=="object"&&Ks&&!Ks.nodeType&&Ks,X8e=UL&&UL.exports===HW,zL=X8e?El.Buffer:void 0,VL=zL?zL.allocUnsafe:void 0;function Y8e(t,e){if(e)return t.slice();var n=t.length,i=VL?VL(n):new t.constructor(n);return t.copy(i),i}function jw(t,e){for(var n=-1,i=t==null?0:t.length,r=0,s=[];++n<i;){var o=t[n];e(o,n,t)&&(s[r++]=o)}return s}function WW(){return[]}var K8e=Object.prototype,J8e=K8e.propertyIsEnumerable,GL=Object.getOwnPropertySymbols,Z8e=GL?function(t){return t==null?[]:(t=Object(t),jw(GL(t),function(e){return J8e.call(t,e)}))}:WW;const Xw=Z8e;function eme(t,e){return f6(t,Xw(t),e)}var tme=Object.getOwnPropertySymbols,nme=tme?function(t){for(var e=[];t;)$w(e,Xw(t)),t=GW(t);return e}:WW;const $W=nme;function ime(t,e){return f6(t,$W(t),e)}function jW(t,e,n){var i=e(t);return un(t)?i:$w(i,n(t))}function tS(t){return jW(t,ro,Xw)}function XW(t){return jW(t,rA,$W)}var rme=j1(El,"DataView");const nS=rme;var sme=j1(El,"Promise");const iS=sme;var ome=j1(El,"Set");const O0=ome;var QL="[object Map]",ame="[object Object]",HL="[object Promise]",WL="[object Set]",$L="[object WeakMap]",jL="[object DataView]",lme=$1(nS),ume=$1(v4),cme=$1(iS),hme=$1(O0),fme=$1(eS),zh=ah;(nS&&zh(new nS(new ArrayBuffer(1)))!=jL||v4&&zh(new v4)!=QL||iS&&zh(iS.resolve())!=HL||O0&&zh(new O0)!=WL||eS&&zh(new eS)!=$L)&&(zh=function(t){var e=ah(t),n=e==ame?t.constructor:void 0,i=n?$1(n):"";if(i)switch(i){case lme:return jL;case ume:return QL;case cme:return HL;case hme:return WL;case fme:return $L}return e});const g2=zh;var dme=Object.prototype,pme=dme.hasOwnProperty;function mme(t){var e=t.length,n=new t.constructor(e);return e&&typeof t[0]=="string"&&pme.call(t,"index")&&(n.index=t.index,n.input=t.input),n}var gme=El.Uint8Array;const Jm=gme;function Yw(t){var e=new t.constructor(t.byteLength);return new Jm(e).set(new Jm(t)),e}function Ame(t,e){var n=e?Yw(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}var vme=/\w*$/;function yme(t){var e=new t.constructor(t.source,vme.exec(t));return e.lastIndex=t.lastIndex,e}
vendor: 4,357 bytes, line 6368
6368var XL=Ho?Ho.prototype:void 0,YL=XL?XL.valueOf:void 0;function qme(t){return YL?Object(YL.call(t)):{}}function _me(t,e){var n=e?Yw(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}var xme="[object Boolean]",Eme="[object Date]",Sme="[object Map]",Tme="[object Number]",Cme="[object RegExp]",wme="[object Set]",Ime="[object String]",Mme="[object Symbol]",Rme="[object ArrayBuffer]",bme="[object DataView]",Pme="[object Float32Array]",Bme="[object Float64Array]",Dme="[object Int8Array]",Lme="[object Int16Array]",Nme="[object Int32Array]",kme="[object Uint8Array]",Fme="[object Uint8ClampedArray]",Ome="[object Uint16Array]",Ume="[object Uint32Array]";function zme(t,e,n){var i=t.constructor;switch(e){case Rme:return Yw(t);case xme:case Eme:return new i(+t);case bme:return Ame(t,n);case Pme:case Bme:case Dme:case Lme:case Nme:case kme:case Fme:case Ome:case Ume:return _me(t,n);case Sme:return new i;case Tme:case Ime:return new i(t);case Cme:return yme(t);case wme:return new i;case Mme:return qme(t)}}function Vme(t){return typeof t.constructor=="function"&&!d6(t)?Lpe(GW(t)):{}}var Gme="[object Map]";function Qme(t){return xa(t)&&g2(t)==Gme}var KL=Gc&&Gc.isMap,Hme=KL?p6(KL):Qme;const Wme=Hme;var $me="[object Set]";function jme(t){return xa(t)&&g2(t)==$me}var JL=Gc&&Gc.isSet,Xme=JL?p6(JL):jme;const Yme=Xme;var Kme=1,Jme=2,Zme=4,YW="[object Arguments]",e9e="[object Array]",t9e="[object Boolean]",n9e="[object Date]",i9e="[object Error]",KW="[object Function]",r9e="[object GeneratorFunction]",s9e="[object Map]",o9e="[object Number]",JW="[object Object]",a9e="[object RegExp]",l9e="[object Set]",u9e="[object String]",c9e="[object Symbol]",h9e="[object WeakMap]",f9e="[object ArrayBuffer]",d9e="[object DataView]",p9e="[object Float32Array]",m9e="[object Float64Array]",g9e="[object Int8Array]",A9e="[object Int16Array]",v9e="[object Int32Array]",y9e="[object Uint8Array]",q9e="[object Uint8ClampedArray]",_9e="[object Uint16Array]",x9e="[object Uint32Array]",Bn={};Bn[YW]=Bn[e9e]=Bn[f9e]=Bn[d9e]=Bn[t9e]=Bn[n9e]=Bn[p9e]=Bn[m9e]=Bn[g9e]=Bn[A9e]=Bn[v9e]=Bn[s9e]=Bn[o9e]=Bn[JW]=Bn[a9e]=Bn[l9e]=Bn[u9e]=Bn[c9e]=Bn[y9e]=Bn[q9e]=Bn[_9e]=Bn[x9e]=!0;Bn[i9e]=Bn[KW]=Bn[h9e]=!1;function N8(t,e,n,i,r,s){var o,a=e&Kme,l=e&Jme,u=e&Zme;if(n&&(o=r?n(t,i,r,s):n(t)),o!==void 0)return o;if(!Wo(t))return t;var c=un(t);if(c){if(o=mme(t),!a)return kpe(t,o)}else{var h=g2(t),f=h==KW||h==r9e;if(g4(t))return Y8e(t,a);if(h==JW||h==YW||f&&!r){if(o=l||f?{}:Vme(t),!a)return l?ime(t,j8e(o,t)):eme(t,$8e(o,t))}else{if(!Bn[h])return r?t:{};o=zme(t,h,a)}}s||(s=new dl);var m=s.get(t);if(m)return m;s.set(t,o),Yme(t)?t.forEach(function(_){o.add(N8(_,e,n,_,t,s))}):Wme(t)&&t.forEach(function(_,A){o.set(A,N8(_,e,n,A,t,s))});var g=u?l?XW:tS:l?rA:ro,v=c?void 0:g(t);return DW(v||t,function(_,A){v&&(A=_,_=t[A]),tA(o,A,N8(_,e,n,A,t,s))}),o}var E9e=4;function Wr(t){return N8(t,E9e)}function g6(t){for(var e=-1,n=t==null?0:t.length,i=0,r=[];++e<n;){var s=t[e];s&&(r[i++]=s)}return r}var S9e="__lodash_hash_undefined__";function T9e(t){return this.__data__.set(t,S9e),this}function C9e(t){return this.__data__.has(t)}function A2(t){var e=-1,n=t==null?0:t.length;for(this.__data__=new Tu;++e<n;)this.add(t[e])}A2.prototype.add=A2.prototype.push=T9e;A2.prototype.has=C9e;function ZW(t,e){for(var n=-1,i=t==null?0:t.length;++n<i;)if(e(t[n],n,t))return!0;return!1}function Kw(t,e){return t.has(e)}var w9e=1,I9e=2;function e$(t,e,n,i,r,s){var o=n&w9e,a=t.length,l=e.length;if(a!=l&&!(o&&l>a))return!1;var u=s.get(t),c=s.get(e);if(u&&c)return u==e&&c==t;var h=-1,f=!0,m=n&I9e?new A2:void 0;for(s.set(t,e),s.set(e,t);++h<a;){var g=t[h],v=e[h];if(i)var _=o?i(v,g,h,e,t,s):i(g,v,h,t,e,s);if(_!==void 0){if(_)continue;f=!1;break}if(m){if(!ZW(e,function(A,y){if(!Kw(m,y)&&(g===A||r(g,A,n,i,s)))return m.push(y)})){f=!1;break}}else if(!(g===v||r(g,v,n,i,s))){f=!1;break}}return s.delete(t),s.delete(e),f}function M9e(t){var e=-1,n=Array(t.size);return t.forEach(function(i,r){n[++e]=[r,i]}),n}function Jw(t){var e=-1,n=Array(t.size);return t.forEach(function(i){n[++e]=i}),n}var R9e=1,b9e=2,P9e="[object Boolean]",B9e="[object Date]",D9e="[object Error]",L9e="[object Map]",N9e="[object Number]",k9e="[object RegExp]",F9e="[object Set]",O9e="[object String]",U9e="[object Symbol]",z9e="[object ArrayBuffer]",V9e="[object DataView]",ZL=Ho?Ho.prototype:void 0,Vq=ZL?ZL.valueOf
vendor: 1,687 bytes, line 6368
6368:void 0;function G9e(t,e,n,i,r,s,o){switch(n){case V9e:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case z9e:return!(t.byteLength!=e.byteLength||!s(new Jm(t),new Jm(e)));case P9e:case B9e:case N9e:return h6(+t,+e);case D9e:return t.name==e.name&&t.message==e.message;case k9e:case O9e:return t==e+"";case L9e:var a=M9e;case F9e:var l=i&R9e;if(a||(a=Jw),t.size!=e.size&&!l)return!1;var u=o.get(t);if(u)return u==e;i|=b9e,o.set(t,e);var c=e$(a(t),a(e),i,r,s,o);return o.delete(t),c;case U9e:if(Vq)return Vq.call(t)==Vq.call(e)}return!1}var Q9e=1,H9e=Object.prototype,W9e=H9e.hasOwnProperty;function $9e(t,e,n,i,r,s){var o=n&Q9e,a=tS(t),l=a.length,u=tS(e),c=u.length;if(l!=c&&!o)return!1;for(var h=l;h--;){var f=a[h];if(!(o?f in e:W9e.call(e,f)))return!1}var m=s.get(t),g=s.get(e);if(m&&g)return m==e&&g==t;var v=!0;s.set(t,e),s.set(e,t);for(var _=o;++h<l;){f=a[h];var A=t[f],y=e[f];if(i)var q=o?i(y,A,f,e,t,s):i(A,y,f,t,e,s);if(!(q===void 0?A===y||r(A,y,n,i,s):q)){v=!1;break}_||(_=f=="constructor")}if(v&&!_){var E=t.constructor,T=e.constructor;E!=T&&"constructor"in t&&"constructor"in e&&!(typeof E=="function"&&E instanceof E&&typeof T=="function"&&T instanceof T)&&(v=!1)}return s.delete(t),s.delete(e),v}var j9e=1,eN="[object Arguments]",tN="[object Array]",Z7="[object Object]",X9e=Object.prototype,nN=X9e.hasOwnProperty;function Y9e(t,e,n,i,r,s){var o=un(t),a=un(e),l=o?tN:g2(t),u=a?tN:g2(e);l=l==eN?Z7:l,u=u==eN?Z7:u;var c=l==Z7,h=u==Z7,f=l==u;if(f&&g4(t)){if(!g4(e))return!1;o=!0,c=!1}if(f&&!c)return s||(s=new dl),o||Gw(t)?e$(t,e,n,i,r,s):G9e(t,e,l,n,i,r,s);if(!(n&j9e)){var m=c&&nN.call(t,"__wrapped__"),g=h&&nN.call(e,"__wrapped__");
vendor: 5,071 bytes, line 6368
6368if(m||g){var v=m?t.value():t,_=g?e.value():e;return s||(s=new dl),r(v,_,n,i,s)}}return f?(s||(s=new dl),$9e(t,e,n,i,r,s)):!1}function Zw(t,e,n,i,r){return t===e?!0:t==null||e==null||!xa(t)&&!xa(e)?t!==t&&e!==e:Y9e(t,e,n,i,Zw,r)}var K9e=1,J9e=2;function Z9e(t,e,n,i){var r=n.length,s=r,o=!i;if(t==null)return!s;for(t=Object(t);r--;){var a=n[r];if(o&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++r<s;){a=n[r];var l=a[0],u=t[l],c=a[1];if(o&&a[2]){if(u===void 0&&!(l in t))return!1}else{var h=new dl;if(i)var f=i(u,c,l,t,e,h);if(!(f===void 0?Zw(c,u,K9e|J9e,i,h):f))return!1}}return!0}function t$(t){return t===t&&!Wo(t)}function ege(t){for(var e=ro(t),n=e.length;n--;){var i=e[n],r=t[i];e[n]=[i,r,t$(r)]}return e}function n$(t,e){return function(n){return n==null?!1:n[t]===e&&(e!==void 0||t in Object(n))}}function tge(t){var e=ege(t);return e.length==1&&e[0][2]?n$(e[0][0],e[0][1]):function(n){return n===t||Z9e(n,t,e)}}function nge(t,e){return t!=null&&e in Object(t)}function i$(t,e,n){e=aA(e,t);for(var i=-1,r=e.length,s=!1;++i<r;){var o=m6(e[i]);if(!(s=t!=null&&n(t,o)))break;t=t[o]}return s||++i!=r?s:(r=t==null?0:t.length,!!r&&Vw(r)&&eA(o,r)&&(un(t)||iA(t)))}function ige(t,e){return t!=null&&i$(t,e,nge)}var rge=1,sge=2;function oge(t,e){return Qw(t)&&t$(e)?n$(m6(t),e):function(n){var i=k8e(n,t);return i===void 0&&i===e?ige(n,t):Zw(e,i,rge|sge)}}function age(t){return function(e){return e==null?void 0:e[t]}}function lge(t){return function(e){return Ww(e,t)}}function uge(t){return Qw(t)?age(m6(t)):lge(t)}function Tl(t){return typeof t=="function"?t:t==null?m2:typeof t=="object"?un(t)?oge(t[0],t[1]):tge(t):uge(t)}function cge(t,e,n,i){for(var r=-1,s=t==null?0:t.length;++r<s;){var o=t[r];e(i,o,n(o),t)}return i}function hge(t){return function(e,n,i){for(var r=-1,s=Object(e),o=i(e),a=o.length;a--;){var l=o[t?a:++r];if(n(s[l],l,s)===!1)break}return e}}var fge=hge();const dge=fge;function pge(t,e){return t&&dge(t,e,ro)}function mge(t,e){return function(n,i){if(n==null)return n;if(!Sl(n))return t(n,i);for(var r=n.length,s=e?r:-1,o=Object(n);(e?s--:++s<r)&&i(o[s],s,o)!==!1;);return n}}var gge=mge(pge);const X1=gge;function Age(t,e,n,i){return X1(t,function(r,s,o){e(i,r,n(r),o)}),i}function vge(t,e){return function(n,i){var r=un(n)?cge:Age,s=e?e():{};return r(n,t,Tl(i),s)}}var r$=Object.prototype,yge=r$.hasOwnProperty,qge=zw(function(t,e){t=Object(t);var n=-1,i=e.length,r=i>2?e[2]:void 0;for(r&&nA(e[0],e[1],r)&&(i=1);++n<i;)for(var s=e[n],o=rA(s),a=-1,l=o.length;++a<l;){var u=o[a],c=t[u];(c===void 0||h6(c,r$[u])&&!yge.call(t,u))&&(t[u]=s[u])}return t});const eI=qge;function iN(t){return xa(t)&&Sl(t)}function s$(t,e,n){for(var i=-1,r=t==null?0:t.length;++i<r;)if(n(e,t[i]))return!0;return!1}var _ge=200;function xge(t,e,n,i){var r=-1,s=NW,o=!0,a=t.length,l=[],u=e.length;if(!a)return l;n&&(e=u6(e,p6(n))),i?(s=s$,o=!1):e.length>=_ge&&(s=Kw,o=!1,e=new A2(e));e:for(;++r<a;){var c=t[r],h=n==null?c:n(c);if(c=i||c!==0?c:0,o&&h===h){for(var f=u;f--;)if(e[f]===h)continue e;l.push(c)}else s(e,h,i)||l.push(c)}return l}var Ege=zw(function(t,e){return iN(t)?xge(t,lA(e,1,iN,!0)):[]});const uA=Ege;function v2(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}function fr(t,e,n){var i=t==null?0:t.length;return i?(e=n||e===void 0?1:c6(e),QW(t,e<0?0:e,i)):[]}function y4(t,e,n){var i=t==null?0:t.length;return i?(e=n||e===void 0?1:c6(e),e=i-e,QW(t,0,e<0?0:e)):[]}function Sge(t){return typeof t=="function"?t:m2}function xt(t,e){var n=un(t)?DW:X1;return n(t,Sge(e))}function Tge(t,e){for(var n=-1,i=t==null?0:t.length;++n<i;)if(!e(t[n],n,t))return!1;return!0}function Cge(t,e){var n=!0;return X1(t,function(i,r,s){return n=!!e(i,r,s),n}),n}function ma(t,e,n){var i=un(t)?Tge:Cge;return n&&nA(t,e,n)&&(e=void 0),i(t,Tl(e))}function o$(t,e){var n=[];return X1(t,function(i,r,s){e(i,r,s)&&n.push(i)}),n}function Yo(t,e){var n=un(t)?jw:o$;return n(t,Tl(e))}function wge(t){return function(e,n,i){var r=Object(e);if(!Sl(e)){var s=Tl(n);e=ro(e),n=function(a){return s(r[a],a,r)}}var o=t(e,n,i);return o>-1?r[s?e[o]:o]:void 0}}var Ige=Math.max;function Mge(t,e,n){var i=t==null?0:t.length;if(!i)return-1;var r=n==null?0:c6(n);return r<0&&(r=Ige(i+r,0)),LW(t,Tl(e),r)}var Rge=wge(Mge);const y2=Rge;function Ea(t){return t&&t.length?t[0]:void 0}function bge(t,e){var n=-1,i=Sl(t)?Array(t.length):[];return X1(t,function(r,s,o){i[++n]=e(r,s,o)}),i}function ht(t,e){var n=un(t)?u6:bge;return n(t,Tl(e))}function Oo(t,e){return lA(ht(t,e),1)}var Pge=Object.prototype,Bge=Pge.hasOwnProperty,Dge=vge(function(t,e,n){Bge.call(t,n)?t[n].push(e):Uw(t,n,[e])});const Lge=Dge;var Nge=Object.prototype,kge=Nge.hasOwnProperty;function Fge(t,e){return t!=null&&kge.call(t,e)}function vt(t,e){return t!=null&&i$(t,e,Fge)}var Oge="[object String]";function Bs(t){return typeof t=="string"||!un(t)&&xa(t)&&ah(t)==Oge}function Uge(t,e){return u6(e,function(n){return t[n]})}function Qi(t){return t==null?[]:Uge(t,ro(t))}var zge=Math.max;function us(t,e,n,i){t=Sl(t)?t:Qi(t),n=n&&!i?c6(n):0;var r=t.length;return n<0&&(n=zge(r+n,0)),Bs(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&Ow(t,e,n)>-1}
vendor: 8,809 bytes, line 6368
6368var Vge=Math.max;function rN(t,e,n){var i=t==null?0:t.length;if(!i)return-1;var r=n==null?0:c6(n);return r<0&&(r=Vge(i+r,0)),Ow(t,e,r)}var Gge="[object Map]",Qge="[object Set]",Hge=Object.prototype,Wge=Hge.hasOwnProperty;function Ln(t){if(t==null)return!0;if(Sl(t)&&(un(t)||typeof t=="string"||typeof t.splice=="function"||g4(t)||Gw(t)||iA(t)))return!t.length;var e=g2(t);if(e==Gge||e==Qge)return!t.size;if(d6(t))return!VW(t).length;for(var n in t)if(Wge.call(t,n))return!1;return!0}var $ge="[object RegExp]";function jge(t){return xa(t)&&ah(t)==$ge}var sN=Gc&&Gc.isRegExp,Xge=sN?p6(sN):jge;const vu=Xge;function yu(t){return t===void 0}var Yge="Expected a function";function Kge(t){if(typeof t!="function")throw new TypeError(Yge);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}function Jge(t,e,n,i){if(!Wo(t))return t;e=aA(e,t);for(var r=-1,s=e.length,o=s-1,a=t;a!=null&&++r<s;){var l=m6(e[r]),u=n;if(l==="__proto__"||l==="constructor"||l==="prototype")return t;if(r!=o){var c=a[l];u=i?i(c,l,a):void 0,u===void 0&&(u=Wo(c)?c:eA(e[r+1])?[]:{})}tA(a,l,u),a=a[l]}return t}function Zge(t,e,n){for(var i=-1,r=e.length,s={};++i<r;){var o=e[i],a=Ww(t,o);n(a,o)&&Jge(s,aA(o,t),a)}return s}function Ra(t,e){if(t==null)return{};var n=u6(XW(t),function(i){return[i]});return e=Tl(e),Zge(t,n,function(i,r){return e(i,r[0])})}function eAe(t,e,n,i,r){return r(t,function(s,o,a){n=i?(i=!1,s):e(n,s,o,a)}),n}function oo(t,e,n){var i=un(t)?U8e:eAe,r=arguments.length<3;return i(t,Tl(e),n,r,X1)}function cA(t,e){var n=un(t)?jw:o$;return n(t,Kge(Tl(e)))}function tAe(t,e){var n;return X1(t,function(i,r,s){return n=e(i,r,s),!n}),!!n}function a$(t,e,n){var i=un(t)?ZW:tAe;return n&&nA(t,e,n)&&(e=void 0),i(t,Tl(e))}var nAe=1/0,iAe=O0&&1/Jw(new O0([,-0]))[1]==nAe?function(t){return new O0(t)}:Vi;const rAe=iAe;var sAe=200;function oAe(t,e,n){var i=-1,r=NW,s=t.length,o=!0,a=[],l=a;if(n)o=!1,r=s$;else if(s>=sAe){var u=e?null:rAe(t);if(u)return Jw(u);o=!1,r=Kw,l=new A2}else l=e?[]:a;e:for(;++i<s;){var c=t[i],h=e?e(c):c;if(c=n||c!==0?c:0,o&&h===h){for(var f=l.length;f--;)if(l[f]===h)continue e;e&&l.push(h),a.push(c)}else r(l,h,n)||(l!==a&&l.push(h),a.push(c))}return a}function tI(t){return t&&t.length?oAe(t):[]}function rS(t){console&&console.error&&console.error(`Error: ${t}`)}function l$(t){console&&console.warn&&console.warn(`Warning: ${t}`)}function u$(t){const e=new Date().getTime(),n=t();return{time:new Date().getTime()-e,value:n}}function c$(t){function e(){}e.prototype=t;const n=new e;function i(){return typeof n.bar}return i(),i(),t}function aAe(t){return lAe(t)?t.LABEL:t.name}function lAe(t){return Bs(t.LABEL)&&t.LABEL!==""}class Cl{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),xt(this.definition,n=>{n.accept(e)})}}class ao extends Cl{constructor(e){super([]),this.idx=1,so(this,Ra(e,n=>n!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class W2 extends Cl{constructor(e){super(e.definition),this.orgText="",so(this,Ra(e,n=>n!==void 0))}}class Ds extends Cl{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,so(this,Ra(e,n=>n!==void 0))}}class Rs extends Cl{constructor(e){super(e.definition),this.idx=1,so(this,Ra(e,n=>n!==void 0))}}class wl extends Cl{constructor(e){super(e.definition),this.idx=1,so(this,Ra(e,n=>n!==void 0))}}class Il extends Cl{constructor(e){super(e.definition),this.idx=1,so(this,Ra(e,n=>n!==void 0))}}class Wi extends Cl{constructor(e){super(e.definition),this.idx=1,so(this,Ra(e,n=>n!==void 0))}}class ba extends Cl{constructor(e){super(e.definition),this.idx=1,so(this,Ra(e,n=>n!==void 0))}}class Pa extends Cl{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,so(this,Ra(e,n=>n!==void 0))}}class ni{constructor(e){this.idx=1,so(this,Ra(e,n=>n!==void 0))}accept(e){e.visit(this)}}function uAe(t){return ht(t,k8)}function k8(t){function e(n){return ht(n,k8)}if(t instanceof ao){const n={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return Bs(t.label)&&(n.label=t.label),n}else{if(t instanceof Ds)return{type:"Alternative",definition:e(t.definition)};if(t instanceof Rs)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof wl)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Il)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:k8(new ni({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof ba)return{type:"RepetitionWithSeparator",idx:t.idx,separator:k8(new ni({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Wi)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Pa)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof ni){const n={type:"Terminal",name:t.terminalType.name,label:aAe(t.terminalType),idx:t.idx};Bs(t.label)&&(n.terminalLabel=t.label);const i=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(n.pattern=vu(i)?i.source:i),n}else{if(t instanceof W2)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}class $2{visit(e){const n=e;switch(n.constructor){case ao:return this.visitNonTerminal(n);case Ds:return this.visitAlternative(n);case Rs:return this.visitOption(n);case wl:return this.visitRepetitionMandatory(n);case Il:return this.visitRepetitionMandatoryWithSeparator(n);case ba:return this.visitRepetitionWithSeparator(n);case Wi:return this.visitRepetition(n);case Pa:return this.visitAlternation(n);case ni:return this.visitTerminal(n);case W2:return this.visitRule(n);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}function cAe(t){return t instanceof Ds||t instanceof Rs||t instanceof Wi||t instanceof wl||t instanceof Il||t instanceof ba||t instanceof ni||t instanceof W2}function Zm(t,e=[]){return t instanceof Rs||t instanceof Wi||t instanceof ba?!0:t instanceof Pa?a$(t.definition,i=>Zm(i,e)):t instanceof ao&&us(e,t)?!1:t instanceof Cl?(t instanceof ao&&e.push(t),ma(t.definition,i=>Zm(i,e))):!1}function hAe(t){return t instanceof Pa}function Ha(t){if(t instanceof ao)return"SUBRULE";if(t instanceof Rs)return"OPTION";if(t instanceof Pa)return"OR";if(t instanceof wl)return"AT_LEAST_ONE";if(t instanceof Il)return"AT_LEAST_ONE_SEP";if(t instanceof ba)return"MANY_SEP";if(t instanceof Wi)return"MANY";if(t instanceof ni)return"CONSUME";throw Error("non exhaustive match")}class hA{walk(e,n=[]){xt(e.definition,(i,r)=>{const s=fr(e.definition,r+1);if(i instanceof ao)this.walkProdRef(i,s,n);else if(i instanceof ni)this.walkTerminal(i,s,n);else if(i instanceof Ds)this.walkFlat(i,s,n);else if(i instanceof Rs)this.walkOption(i,s,n);else if(i instanceof wl)this.walkAtLeastOne(i,s,n);else if(i instanceof Il)this.walkAtLeastOneSep(i,s,n);else if(i instanceof ba)this.walkManySep(i,s,n);else if(i instanceof Wi)this.walkMany(i,s,n);else if(i instanceof Pa)this.walkOr(i,s,n);else throw Error("non exhaustive match")})}walkTerminal(e,n,i){}walkProdRef(e,n,i){}walkFlat(e,n,i){const r=n.concat(i);this.walk(e,r)}walkOption(e,n,i){const r=n.concat(i);this.walk(e,r)}walkAtLeastOne(e,n,i){const r=[new Rs({definition:e.definition})].concat(n,i);this.walk(e,r)}walkAtLeastOneSep(e,n,i){const r=oN(e,n,i);this.walk(e,r)}walkMany(e,n,i){const r=[new Rs({definition:e.definition})].concat(n,i);this.walk(e,r)}walkManySep(e,n,i){const r=oN(e,n,i);this.walk(e,r)}walkOr(e,n,i){const r=n.concat(i);xt(e.definition,s=>{const o=new Ds({definition:[s]});this.walk(o,r)})}}function oN(t,e,n){return[new Rs({definition:[new ni({terminalType:t.separator})].concat(t.definition)})].concat(e,n)}function A6(t){if(t instanceof ao)return A6(t.referencedRule);if(t instanceof ni)return pAe(t);if(cAe(t))return fAe(t);if(hAe(t))return dAe(t);throw Error("non exhaustive match")}function fAe(t){let e=[];const n=t.definition;let i=0,r=n.length>i,s,o=!0;for(;r&&o;)s=n[i],o=Zm(s),e=e.concat(A6(s)),i=i+1,r=n.length>i;return tI(e)}function dAe(t){const e=ht(t.definition,n=>A6(n));return tI(pa(e))}function pAe(t){return[t.terminalType]}const h$="_~IN~_";class mAe extends hA{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,n,i){}
vendor: 25,898 bytes, lines 6368-6411
6368walkProdRef(e,n,i){const r=AAe(e.referencedRule,e.idx)+this.topProd.name,s=n.concat(i),o=new Ds({definition:s}),a=A6(o);this.follows[r]=a}}function gAe(t){const e={};return xt(t,n=>{const i=new mAe(n).startWalking();so(e,i)}),e}function AAe(t,e){return t.name+e+h$}function Et(t){return t.charCodeAt(0)}function Gq(t,e){Array.isArray(t)?t.forEach(function(n){e.push(n)}):e.push(t)}function jf(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function U3(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function vAe(){throw Error("Internal Error - Should never get here!")}function aN(t){return t.type==="Character"}const e9=[];for(let t=Et("0");t<=Et("9");t++)e9.push(t);const t9=[Et("_")].concat(e9);for(let t=Et("a");t<=Et("z");t++)t9.push(t);for(let t=Et("A");t<=Et("Z");t++)t9.push(t);const lN=[Et(" "),Et("\f"),Et(` 6369`),Et("\r"),Et(" "),Et("\v"),Et(" "),Et(" "),Et("á"),Et("â"),Et("â"),Et("â"),Et("â"),Et("â"),Et("â "),Et("â"),Et("â"),Et("â"),Et("â"),Et("â"),Et("\u2028"),Et("\u2029"),Et("â¯"),Et("â"),Et("ã"),Et("\uFEFF")],yAe=/[0-9a-fA-F]/,e8=/[0-9]/,qAe=/[1-9]/;class _Ae{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const n=this.disjunction();this.consumeChar("/");const i={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":jf(i,"global");break;case"i":jf(i,"ignoreCase");break;case"m":jf(i,"multiLine");break;case"u":jf(i,"unicode");break;case"y":jf(i,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:i,value:n,loc:this.loc(0)}}disjunction(){const e=[],n=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(n)}}alternative(){const e=[],n=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(n)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let n;switch(this.popChar()){case"=":n="Lookahead";break;case"!":n="NegativeLookahead";break}U3(n);const i=this.disjunction();return this.consumeChar(")"),{type:n,value:i,loc:this.loc(e)}}return vAe()}quantifier(e=!1){let n;const i=this.idx;switch(this.popChar()){case"*":n={atLeast:0,atMost:1/0};break;case"+":n={atLeast:1,atMost:1/0};break;case"?":n={atLeast:0,atMost:1};break;case"{":const r=this.integerIncludingZero();switch(this.popChar()){case"}":n={atLeast:r,atMost:r};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),n={atLeast:r,atMost:s}):n={atLeast:r,atMost:1/0},this.consumeChar("}");break}if(e===!0&&n===void 0)return;U3(n);break}if(!(e===!0&&n===void 0)&&U3(n))return this.peekChar(0)==="?"?(this.consumeChar("?"),n.greedy=!1):n.greedy=!0,n.type="Quantifier",n.loc=this.loc(i),n}atom(){let e;const n=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),U3(e))return e.loc=this.loc(n),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[Et(` 6370`),Et("\r"),Et("\u2028"),Et("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,n=!1;switch(this.popChar()){case"d":e=e9;break;case"D":e=e9,n=!0;break;case"s":e=lN;break;case"S":e=lN,n=!0;break;case"w":e=t9;break;case"W":e=t9,n=!0;break}if(U3(e))return{type:"Set",value:e,complement:n}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=Et("\f");break;case"n":e=Et(` 6371`);break;case"r":e=Et("\r");break;case"t":e=Et(" ");break;case"v":e=Et("\v");break}if(U3(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:Et("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:Et(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` 6372`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:const e=this.popChar();return{type:"Character",value:Et(e)}}}characterClass(){const e=[];let n=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),n=!0);this.isClassAtom();){const i=this.classAtom();if(i.type,aN(i)&&this.isRangeDash()){this.consumeChar("-");const r=this.classAtom();if(r.type,aN(r)){if(r.value<i.value)throw Error("Range out of order in character class");e.push({from:i.value,to:r.value})}else Gq(i.value,e),e.push(Et("-")),Gq(r.value,e)}else Gq(i.value,e)}return this.consumeChar("]"),{type:"Set",complement:n,value:e}}classAtom(){switch(this.peekChar()){case"]":case` 6373`:case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:Et("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),e=!1;break;default:this.groupIdx++;break}const n=this.disjunction();this.consumeChar(")");const i={type:"Group",capturing:e,value:n};return e&&(i.idx=this.groupIdx),i}positiveInteger(){let e=this.popChar();if(qAe.test(e)===!1)throw Error("Expecting a positive integer");for(;e8.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(e8.test(e)===!1)throw Error("Expecting an integer");for(;e8.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){const e=this.popChar();switch(e){case` 6374`:case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:Et(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return this.peekChar()==="-"&&this.isClassAtom(1)}isDigit(){return e8.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case` 6375`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!");default:return!1}}isQuantifier(){const e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case` 6376`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let n="";for(let r=0;r<e;r++){const s=this.popChar();if(yAe.test(s)===!1)throw Error("Expecting a HexDecimal digits");n+=s}return{type:"Character",value:parseInt(n,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){const e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class nI{visitChildren(e){for(const n in e){const i=e[n];e.hasOwnProperty(n)&&(i.type!==void 0?this.visit(i):Array.isArray(i)&&i.forEach(r=>{this.visit(r)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}let F8={};const xAe=new _Ae;function fA(t){const e=t.toString();if(F8.hasOwnProperty(e))return F8[e];{const n=xAe.pattern(e);return F8[e]=n,n}}function EAe(){F8={}}const f$="Complement Sets are not supported for first char optimization",n9=`Unable to use "first char" lexer optimizations: 6377`;function SAe(t,e=!1){try{const n=fA(t);return sS(n.value,{},n.flags.ignoreCase)}catch(n){if(n.message===f$)e&&l$(`${n9} Unable to optimize: < ${t.toString()} > 6378 Complement Sets cannot be automatically optimized. 6379 This will disable the lexer's first char optimizations. 6380 See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let i="";e&&(i=` 6381 This will disable the lexer's first char optimizations. 6382 See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),rS(`${n9} 6383 Failed parsing: < ${t.toString()} > 6384 Using the @chevrotain/regexp-to-ast library 6385 Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+i)}}return[]}function sS(t,e,n){switch(t.type){case"Disjunction":for(let r=0;r<t.value.length;r++)sS(t.value[r],e,n);break;case"Alternative":const i=t.value;for(let r=0;r<i.length;r++){const s=i[r];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}const o=s;switch(o.type){case"Character":t8(o.value,e,n);break;case"Set":if(o.complement===!0)throw Error(f$);xt(o.value,l=>{if(typeof l=="number")t8(l,e,n);else{const u=l;if(n===!0)for(let c=u.from;c<=u.to;c++)t8(c,e,n);else{for(let c=u.from;c<=u.to&&c<h5;c++)t8(c,e,n);if(u.to>=h5){const c=u.from>=h5?u.from:h5,h=u.to,f=Qc(c),m=Qc(h);for(let g=f;g<=m;g++)e[g]=g}}}});break;case"Group":sS(o.value,e,n);break;default:throw Error("Non Exhaustive Match")}const a=o.quantifier!==void 0&&o.quantifier.atLeast===0;if(o.type==="Group"&&oS(o)===!1||o.type!=="Group"&&a===!1)break}break;default:throw Error("non exhaustive match!")}return Qi(e)}function t8(t,e,n){const i=Qc(t);e[i]=i,n===!0&&TAe(t,e)}function TAe(t,e){const n=String.fromCharCode(t),i=n.toUpperCase();if(i!==n){const r=Qc(i.charCodeAt(0));e[r]=r}else{const r=n.toLowerCase();if(r!==n){const s=Qc(r.charCodeAt(0));e[s]=s}}}function uN(t,e){return y2(t.value,n=>{if(typeof n=="number")return us(e,n);{const i=n;return y2(e,r=>i.from<=r&&r<=i.to)!==void 0}})}function oS(t){const e=t.quantifier;return e&&e.atLeast===0?!0:t.value?un(t.value)?ma(t.value,oS):oS(t.value):!1}class CAe extends nI{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){us(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?uN(e,this.targetCharCodes)===void 0&&(this.found=!0):uN(e,this.targetCharCodes)!==void 0&&(this.found=!0)}}function iI(t,e){if(e instanceof RegExp){const n=fA(e),i=new CAe(t);return i.visit(n),i.found}else return y2(e,n=>us(t,n.charCodeAt(0)))!==void 0}const B1="PATTERN",c5="defaultMode",n8="modes";let d$=typeof new RegExp("(?:)").sticky=="boolean";function wAe(t,e){e=eI(e,{useSticky:d$,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` 6386`],tracer:(y,q)=>q()});const n=e.tracer;n("initCharCodeToOptimizedIndexMap",()=>{YAe()});let i;n("Reject Lexer.NA",()=>{i=cA(t,y=>y[B1]===Uo.NA)});let r=!1,s;n("Transform Patterns",()=>{r=!1,s=ht(i,y=>{const q=y[B1];if(vu(q)){const E=q.source;return E.length===1&&E!=="^"&&E!=="$"&&E!=="."&&!q.ignoreCase?E:E.length===2&&E[0]==="\\"&&!us(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],E[1])?E[1]:e.useSticky?hN(q):cN(q)}else{if(Eu(q))return r=!0,{exec:q};if(typeof q=="object")return r=!0,q;if(typeof q=="string"){if(q.length===1)return q;{const E=q.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),T=new RegExp(E);return e.useSticky?hN(T):cN(T)}}else throw Error("non exhaustive match")}})});let o,a,l,u,c;n("misc mapping",()=>{o=ht(i,y=>y.tokenTypeIdx),a=ht(i,y=>{const q=y.GROUP;if(q!==Uo.SKIPPED){if(Bs(q))return q;if(yu(q))return!1;throw Error("non exhaustive match")}}),l=ht(i,y=>{const q=y.LONGER_ALT;if(q)return un(q)?ht(q,T=>rN(i,T)):[rN(i,q)]}),u=ht(i,y=>y.PUSH_MODE),c=ht(i,y=>vt(y,"POP_MODE"))});let h;n("Line Terminator Handling",()=>{const y=g$(e.lineTerminatorCharacters);h=ht(i,q=>!1),e.positionTracking!=="onlyOffset"&&(h=ht(i,q=>vt(q,"LINE_BREAKS")?!!q.LINE_BREAKS:m$(q,y)===!1&&iI(y,q.PATTERN)))});let f,m,g,v;n("Misc Mapping #2",()=>{f=ht(i,p$),m=ht(s,$Ae),g=oo(i,(y,q)=>{const E=q.GROUP;return Bs(E)&&E!==Uo.SKIPPED&&(y[E]=[]),y},{}),v=ht(s,(y,q)=>({pattern:s[q],longerAlt:l[q],canLineTerminator:h[q],isCustom:f[q],short:m[q],group:a[q],push:u[q],pop:c[q],tokenTypeIdx:o[q],tokenType:i[q]}))});let _=!0,A=[];return e.safeMode||n("First Char Optimization",()=>{A=oo(i,(y,q,E)=>{if(typeof q.PATTERN=="string"){const T=q.PATTERN.charCodeAt(0),C=Qc(T);Qq(y,C,v[E])}else if(un(q.START_CHARS_HINT)){let T;xt(q.START_CHARS_HINT,C=>{const I=typeof C=="string"?C.charCodeAt(0):C,R=Qc(I);T!==R&&(T=R,Qq(y,R,v[E]))})}else if(vu(q.PATTERN))if(q.PATTERN.unicode)_=!1,e.ensureOptimizations&&rS(`${n9} Unable to analyze < ${q.PATTERN.toString()} > pattern. 6387 The regexp unicode flag is not currently supported by the regexp-to-ast library. 6388 This will disable the lexer's first char optimizations. 6389 For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const T=SAe(q.PATTERN,e.ensureOptimizations);Ln(T)&&(_=!1),xt(T,C=>{Qq(y,C,v[E])})}else e.ensureOptimizations&&rS(`${n9} TokenType: <${q.name}> is using a custom token pattern without providing <start_chars_hint> parameter. 6390 This will disable the lexer's first char optimizations. 6391 For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),_=!1;return y},[])}),{emptyGroups:g,patternIdxToConfig:v,charCodeToPatternIdxToConfig:A,hasCustom:r,canBeOptimized:_}}function IAe(t,e){let n=[];const i=RAe(t);n=n.concat(i.errors);const r=bAe(i.valid),s=r.valid;return n=n.concat(r.errors),n=n.concat(MAe(s)),n=n.concat(OAe(s)),n=n.concat(UAe(s,e)),n=n.concat(zAe(s)),n}function MAe(t){let e=[];const n=Yo(t,i=>vu(i[B1]));return e=e.concat(BAe(n)),e=e.concat(NAe(n)),e=e.concat(kAe(n)),e=e.concat(FAe(n)),e=e.concat(DAe(n)),e}function RAe(t){const e=Yo(t,r=>!vt(r,B1)),n=ht(e,r=>({message:"Token Type: ->"+r.name+"<- missing static 'PATTERN' property",type:gi.MISSING_PATTERN,tokenTypes:[r]})),i=uA(t,e);return{errors:n,valid:i}}function bAe(t){const e=Yo(t,r=>{const s=r[B1];return!vu(s)&&!Eu(s)&&!vt(s,"exec")&&!Bs(s)}),n=ht(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:gi.INVALID_PATTERN,tokenTypes:[r]})),i=uA(t,e);return{errors:n,valid:i}}const PAe=/[^\\][$]/;function BAe(t){class e extends nI{constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}const n=Yo(t,r=>{const s=r.PATTERN;try{const o=fA(s),a=new e;return a.visit(o),a.found}catch{return PAe.test(s.source)}});return ht(n,r=>({message:`Unexpected RegExp Anchor Error: 6392 Token Type: ->`+r.name+`<- static 'PATTERN' cannot contain end of input anchor '$' 6393 See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:gi.EOI_ANCHOR_FOUND,tokenTypes:[r]}))}function DAe(t){const e=Yo(t,i=>i.PATTERN.test(""));return ht(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' must not match an empty string",type:gi.EMPTY_MATCH_PATTERN,tokenTypes:[i]}))}const LAe=/[^\\[][\^]|^\^/;function NAe(t){class e extends nI{constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}const n=Yo(t,r=>{const s=r.PATTERN;try{const o=fA(s),a=new e;return a.visit(o),a.found}catch{return LAe.test(s.source)}});return ht(n,r=>({message:`Unexpected RegExp Anchor Error: 6394 Token Type: ->`+r.name+`<- static 'PATTERN' cannot contain start of input anchor '^' 6395 See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:gi.SOI_ANCHOR_FOUND,tokenTypes:[r]}))}function kAe(t){const e=Yo(t,i=>{const r=i[B1];return r instanceof RegExp&&(r.multiline||r.global)});return ht(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:gi.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[i]}))}function FAe(t){const e=[];let n=ht(t,s=>oo(t,(o,a)=>(s.PATTERN.source===a.PATTERN.source&&!us(e,a)&&a.PATTERN!==Uo.NA&&(e.push(a),o.push(a)),o),[]));n=g6(n);const i=Yo(n,s=>s.length>1);return ht(i,s=>{const o=ht(s,l=>l.name);return{message:`The same RegExp pattern ->${Ea(s).PATTERN}<-has been used in all of the following Token Types: ${o.join(", ")} <-`,type:gi.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}function OAe(t){const e=Yo(t,i=>{if(!vt(i,"GROUP"))return!1;const r=i.GROUP;return r!==Uo.SKIPPED&&r!==Uo.NA&&!Bs(r)});return ht(e,i=>({message:"Token Type: ->"+i.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:gi.INVALID_GROUP_TYPE_FOUND,tokenTypes:[i]}))}function UAe(t,e){const n=Yo(t,r=>r.PUSH_MODE!==void 0&&!us(e,r.PUSH_MODE));return ht(n,r=>({message:`Token Type: ->${r.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${r.PUSH_MODE}<-which does not exist`,type:gi.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[r]}))}function zAe(t){const e=[],n=oo(t,(i,r,s)=>{const o=r.PATTERN;return o===Uo.NA||(Bs(o)?i.push({str:o,idx:s,tokenType:r}):vu(o)&&GAe(o)&&i.push({str:o.source,idx:s,tokenType:r})),i},[]);return xt(t,(i,r)=>{xt(n,({str:s,idx:o,tokenType:a})=>{if(r<o&&VAe(s,i.PATTERN)){const l=`Token: ->${a.name}<- can never be matched. 6396Because it appears AFTER the Token Type ->${i.name}<-in the lexer's definition. 6397See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:l,type:gi.UNREACHABLE_PATTERN,tokenTypes:[i,a]})}})}),e}function VAe(t,e){if(vu(e)){const n=e.exec(t);return n!==null&&n.index===0}else{if(Eu(e))return e(t,0,[],{});if(vt(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function GAe(t){return y2([".","\\","[","]","|","^","$","(",")","?","*","+","{"],n=>t.source.indexOf(n)!==-1)===void 0}function cN(t){const e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function hN(t){const e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function QAe(t,e,n){const i=[];return vt(t,c5)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+c5+`> property in its definition 6398`,type:gi.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),vt(t,n8)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+n8+`> property in its definition 6399`,type:gi.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),vt(t,n8)&&vt(t,c5)&&!vt(t.modes,t.defaultMode)&&i.push({message:`A MultiMode Lexer cannot be initialized with a ${c5}: <${t.defaultMode}>which does not exist 6400`,type:gi.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),vt(t,n8)&&xt(t.modes,(r,s)=>{xt(r,(o,a)=>{if(yu(o))i.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${a}> 6401`,type:gi.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(vt(o,"LONGER_ALT")){const l=un(o.LONGER_ALT)?o.LONGER_ALT:[o.LONGER_ALT];xt(l,u=>{!yu(u)&&!us(r,u)&&i.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${u.name}> on token <${o.name}> outside of mode <${s}> 6402`,type:gi.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),i}function HAe(t,e,n){const i=[];let r=!1;const s=g6(pa(Qi(t.modes))),o=cA(s,l=>l[B1]===Uo.NA),a=g$(n);return e&&xt(o,l=>{const u=m$(l,a);if(u!==!1){const h={message:XAe(l,u),type:u.issue,tokenType:l};i.push(h)}else vt(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(r=!0):iI(a,l.PATTERN)&&(r=!0)}),e&&!r&&i.push({message:`Warning: No LINE_BREAKS Found. 6403 This Lexer has been defined to track line and column information, 6404 But none of the Token Types can be identified as matching a line terminator. 6405 See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS 6406 for details.`,type:gi.NO_LINE_BREAKS_FLAGS}),i}function WAe(t){const e={},n=ro(t);return xt(n,i=>{const r=t[i];if(un(r))e[i]=[];else throw Error("non exhaustive match")}),e}function p$(t){const e=t.PATTERN;if(vu(e))return!1;if(Eu(e))return!0;if(vt(e,"exec"))return!0;if(Bs(e))return!1;throw Error("non exhaustive match")}function $Ae(t){return Bs(t)&&t.length===1?t.charCodeAt(0):!1}const jAe={test:function(t){const e=t.length;for(let n=this.lastIndex;n<e;n++){const i=t.charCodeAt(n);if(i===10)return this.lastIndex=n+1,!0;if(i===13)return t.charCodeAt(n+1)===10?this.lastIndex=n+2:this.lastIndex=n+1,!0}return!1},lastIndex:0};function m$(t,e){if(vt(t,"LINE_BREAKS"))return!1;if(vu(t.PATTERN)){try{iI(e,t.PATTERN)}catch(n){return{issue:gi.IDENTIFY_TERMINATOR,errMsg:n.message}}return!1}else{if(Bs(t.PATTERN))return!1;if(p$(t))return{issue:gi.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function XAe(t,e){if(e.issue===gi.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern. 6407 The problem is in the <${t.name}> Token Type 6408 Root cause: ${e.errMsg}. 6409 For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===gi.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option. 6410 The problem is in the <${t.name}> Token Type 6411 For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function g$(t){return ht(t,n=>Bs(n)?n.charCodeAt(0):n)}function Qq(t,e,n){t[e]===void 0?t[e]=[n]:t[e].push(n)}const h5=256;let O8=[];function Qc(t){return t<h5?t:O8[t]}function YAe(){if(Ln(O8)){O8=new Array(65536);for(let t=0;t<65536;t++)O8[t]=t>255?255+~~(t/255):t}}function v6(t,e){const n=t.tokenTypeIdx;return n===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[n]===!0}function i9(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}let fN=1;const A$={};function y6(t){const e=KAe(t);JAe(e),eve(e),ZAe(e),xt(e,n=>{n.isParent=n.categoryMatches.length>0})}function KAe(t){let e=Wr(t),n=t,i=!0;for(;i;){n=g6(pa(ht(n,s=>s.CATEGORIES)));const r=uA(n,e);e=e.concat(r),Ln(r)?i=!1:n=r}return e}function JAe(t){xt(t,e=>{y$(e)||(A$[fN]=e,e.tokenTypeIdx=fN++),dN(e)&&!un(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),dN(e)||(e.CATEGORIES=[]),tve(e)||(e.categoryMatches=[]),nve(e)||(e.categoryMatchesMap={})})}function ZAe(t){xt(t,e=>{e.categoryMatches=[],xt(e.categoryMatchesMap,(n,i)=>{e.categoryMatches.push(A$[i].tokenTypeIdx)})})}function eve(t){xt(t,e=>{v$([],e)})}function v$(t,e){xt(t,n=>{e.categoryMatchesMap[n.tokenTypeIdx]=!0}),xt(e.CATEGORIES,n=>{const i=t.concat(e);us(i,n)||v$(i,n)})}function y$(t){return vt(t,"tokenTypeIdx")}function dN(t){return vt(t,"CATEGORIES")}function tve(t){return vt(t,"categoryMatches")}function nve(t){return vt(t,"categoryMatchesMap")}function ive(t){return vt(t,"tokenTypeIdx")}const rve={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}
6411<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,n,i,r){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${n} characters.`}};var gi;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(gi||(gi={}));const f5={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` 6412`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:rve,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(f5);class Uo{constructor(e,n=f5){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(r,s)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;const o=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${o}--> <${r}>`);const{time:a,value:l}=u$(s),u=a>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&u(`${o}<-- <${r}> time: ${a}ms`),this.traceInitIndent--,l}else return s()},typeof n=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. 6413a boolean 2nd argument is no longer supported`);this.config=so({},f5,n);const i=this.config.traceInitPerf;i===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof i=="number"&&(this.traceInitMaxIdent=i,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,s=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===f5.lineTerminatorsPattern)this.config.lineTerminatorsPattern=jAe;else if(this.config.lineTerminatorCharacters===f5.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config. 6414 For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(n.safeMode&&n.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),un(e)?r={modes:{defaultMode:Wr(e)},defaultMode:c5}:(s=!1,r=Wr(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(QAe(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(HAe(r,this.trackStartLines,this.config.lineTerminatorCharacters))}
vendor: 62,211 bytes, lines 6414-6466
6414)),r.modes=r.modes?r.modes:{},xt(r.modes,(a,l)=>{r.modes[l]=cA(a,u=>yu(u))});const o=ro(r.modes);if(xt(r.modes,(a,l)=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(IAe(a,o))}),Ln(this.lexerDefinitionErrors)){y6(a);let u;this.TRACE_INIT("analyzeTokenTypes",()=>{u=wAe(a,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:n.positionTracking,ensureOptimizations:n.ensureOptimizations,safeMode:n.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=u.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=u.charCodeToPatternIdxToConfig,this.emptyGroups=so({},this.emptyGroups,u.emptyGroups),this.hasCustom=u.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=u.canBeOptimized}})}),this.defaultMode=r.defaultMode,!Ln(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const l=ht(this.lexerDefinitionErrors,u=>u.message).join(`----------------------- 6415`);throw new Error(`Errors detected in definition of Lexer: 6416`+l)}xt(this.lexerDefinitionWarning,a=>{l$(a.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(d$?(this.chopInput=m2,this.match=this.matchWithTest):(this.updateLastIndex=Vi,this.match=this.matchWithExec),s&&(this.handleModes=Vi),this.trackStartLines===!1&&(this.computeNewColumn=m2),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=Vi),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{const a=oo(this.canModeBeOptimized,(l,u,c)=>(u===!1&&l.push(c),l),[]);if(n.ensureOptimizations&&!Ln(a))throw Error(`Lexer Modes: < ${a.join(", ")} > cannot be optimized. 6417 Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. 6418 Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{EAe()}),this.TRACE_INIT("toFastProperties",()=>{c$(this)})})}tokenize(e,n=this.defaultMode){if(!Ln(this.lexerDefinitionErrors)){const r=ht(this.lexerDefinitionErrors,s=>s.message).join(`----------------------- 6419`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: 6420`+r)}return this.tokenizeInternal(e,n)}tokenizeInternal(e,n){let i,r,s,o,a,l,u,c,h,f,m,g,v,_,A;const y=e,q=y.length;let E=0,T=0;const C=this.hasCustom?0:Math.floor(e.length/10),I=new Array(C),R=[];let M=this.trackStartLines?1:void 0,b=this.trackStartLines?1:void 0;const D=WAe(this.emptyGroups),z=this.trackStartLines,O=this.config.lineTerminatorsPattern;let W=0,$=[],K=[];const Y=[],B=[];Object.freeze(B);let U;function F(){return $}function k(ye){const xe=Qc(ye),Le=K[xe];return Le===void 0?B:Le}const Q=ye=>{if(Y.length===1&&ye.tokenType.PUSH_MODE===void 0){const xe=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(ye);R.push({offset:ye.startOffset,line:ye.startLine,column:ye.startColumn,length:ye.image.length,message:xe})}else{Y.pop();const xe=v2(Y);$=this.patternIdxToConfig[xe],K=this.charCodeToPatternIdxToConfig[xe],W=$.length;const Le=this.canModeBeOptimized[xe]&&this.config.safeMode===!1;K&&Le?U=k:U=F}};function ce(ye){Y.push(ye),K=this.charCodeToPatternIdxToConfig[ye],$=this.patternIdxToConfig[ye],W=$.length,W=$.length;const xe=this.canModeBeOptimized[ye]&&this.config.safeMode===!1;K&&xe?U=k:U=F}ce.call(this,n);let ae;const ge=this.config.recoveryEnabled;for(;E<q;){l=null;const ye=y.charCodeAt(E),xe=U(ye),Le=xe.length;for(i=0;i<Le;i++){ae=xe[i];const $e=ae.pattern;u=null;const Qe=ae.short;if(Qe!==!1?ye===Qe&&(l=$e):ae.isCustom===!0?(A=$e.exec(y,E,I,D),A!==null?(l=A[0],A.payload!==void 0&&(u=A.payload)):l=null):(this.updateLastIndex($e,E),l=this.match($e,e,E)),l!==null){if(a=ae.longerAlt,a!==void 0){const Be=a.length;for(s=0;s<Be;s++){const X=$[a[s]],qe=X.pattern;if(c=null,X.isCustom===!0?(A=qe.exec(y,E,I,D),A!==null?(o=A[0],A.payload!==void 0&&(c=A.payload)):o=null):(this.updateLastIndex(qe,E),o=this.match(qe,e,E)),o&&o.length>l.length){l=o,u=c,ae=X;break}}}break}}if(l!==null){if(h=l.length,f=ae.group,f!==void 0&&(m=ae.tokenTypeIdx,g=this.createTokenInstance(l,E,m,ae.tokenType,M,b,h),this.handlePayload(g,u),f===!1?T=this.addToken(I,T,g):D[f].push(g)),e=this.chopInput(e,h),E=E+h,b=this.computeNewColumn(b,h),z===!0&&ae.canLineTerminator===!0){let $e=0,Qe,Be;O.lastIndex=0;do Qe=O.test(l),Qe===!0&&(Be=O.lastIndex-1,$e++);while(Qe===!0);$e!==0&&(M=M+$e,b=h-Be,this.updateTokenEndLineColumnLocation(g,f,Be,$e,M,b,h))}this.handleModes(ae,Q,ce,g)}else{const $e=E,Qe=M,Be=b;let X=ge===!1;for(;X===!1&&E<q;)for(e=this.chopInput(e,1),E++,r=0;r<W;r++){const qe=$[r],ve=qe.pattern,Se=qe.short;if(Se!==!1?y.charCodeAt(E)===Se&&(X=!0):qe.isCustom===!0?X=ve.exec(y,E,I,D)!==null:(this.updateLastIndex(ve,E),X=ve.exec(e)!==null),X===!0)break}if(v=E-$e,b=this.computeNewColumn(b,v),_=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(y,$e,v,Qe,Be),R.push({offset:$e,line:Qe,column:Be,length:v,message:_}),ge===!1)break}}return this.hasCustom||(I.length=T),{tokens:I,groups:D,errors:R}}handleModes(e,n,i,r){if(e.pop===!0){const s=e.push;n(r),s!==void 0&&i.call(this,s)}else e.push!==void 0&&i.call(this,e.push)}chopInput(e,n){return e.substring(n)}updateLastIndex(e,n){e.lastIndex=n}updateTokenEndLineColumnLocation(e,n,i,r,s,o,a){let l,u;n!==void 0&&(l=i===a-1,u=l?-1:0,r===1&&l===!0||(e.endLine=s+u,e.endColumn=o-1+-u))}computeNewColumn(e,n){return e+n}createOffsetOnlyToken(e,n,i,r){return{image:e,startOffset:n,tokenTypeIdx:i,tokenType:r}}createStartOnlyToken(e,n,i,r,s,o){return{image:e,startOffset:n,startLine:s,startColumn:o,tokenTypeIdx:i,tokenType:r}}createFullToken(e,n,i,r,s,o,a){return{image:e,startOffset:n,endOffset:n+a-1,startLine:s,endLine:s,startColumn:o,endColumn:o+a-1,tokenTypeIdx:i,tokenType:r}}addTokenUsingPush(e,n,i){return e.push(i),n}addTokenUsingMemberAccess(e,n,i){return e[n]=i,n++,n}handlePayloadNoCustom(e,n){}handlePayloadWithCustom(e,n){n!==null&&(e.payload=n)}matchWithTest(e,n,i){return e.test(n)===!0?n.substring(i,e.lastIndex):null}matchWithExec(e,n){const i=e.exec(n);return i!==null?i[0]:null}}Uo.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";Uo.NA=/NOT_APPLICABLE/;function H5(t){return q$(t)?t.LABEL:t.name}function q$(t){return Bs(t.LABEL)&&t.LABEL!==""}const sve="parent",pN="categories",mN="label",gN="group",AN="push_mode",vN="pop_mode",yN="longer_alt",qN="line_breaks",_N="start_chars_hint";function _$(t){return ove(t)}function ove(t){const e=t.pattern,n={};if(n.name=t.name,yu(e)||(n.PATTERN=e),vt(t,sve))throw`The parent property is no longer supported. 6421See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return vt(t,pN)&&(n.CATEGORIES=t[pN]),y6([n]),vt(t,mN)&&(n.LABEL=t[mN]),vt(t,gN)&&(n.GROUP=t[gN]),vt(t,vN)&&(n.POP_MODE=t[vN]),vt(t,AN)&&(n.PUSH_MODE=t[AN]),vt(t,yN)&&(n.LONGER_ALT=t[yN]),vt(t,qN)&&(n.LINE_BREAKS=t[qN]),vt(t,_N)&&(n.START_CHARS_HINT=t[_N]),n}const D1=_$({name:"EOF",pattern:Uo.NA});y6([D1]);function rI(t,e,n,i,r,s,o,a){return{image:e,startOffset:n,endOffset:i,startLine:r,endLine:s,startColumn:o,endColumn:a,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}function ave(t,e){return v6(t,e)}const x$={buildMismatchTokenMessage({expected:t,actual:e,previous:n,ruleName:i}){return`Expecting ${q$(t)?`--> ${H5(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:n,customUserDescription:i,ruleName:r}){const s="Expecting: ",a=` 6422but found: '`+Ea(e).image+"'";if(i)return s+i+a;{const l=oo(t,(f,m)=>f.concat(m),[]),u=ht(l,f=>`[${ht(f,m=>H5(m)).join(", ")}]`),h=`one of these possible Token sequences: 6423${ht(u,(f,m)=>` ${m+1}. ${f}`).join(` 6424`)}`;return s+h+a}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:n,ruleName:i}){const r="Expecting: ",o=` 6425but found: '`+Ea(e).image+"'";if(n)return r+n+o;{const l=`expecting at least one iteration which starts with one of these possible Token sequences:: 6426 <${ht(t,u=>`[${ht(u,c=>H5(c)).join(",")}]`).join(" ,")}>`;return r+l+o}}};Object.freeze(x$);const lve={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- 6427inside top level rule: ->`+t.name+"<-"}},r1={buildDuplicateFoundError(t,e){function n(c){return c instanceof ni?c.terminalType.name:c instanceof ao?c.nonTerminalName:""}const i=t.name,r=Ea(e),s=r.idx,o=Ha(r),a=n(r),l=s>0;let u=`->${o}${l?s:""}<- ${a?`with argument: ->${a}<-`:""} 6428 appears more than once (${e.length} times) in the top level rule: ->${i}<-. 6429 For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES 6430 `;return u=u.replace(/[ \t]+/g," "),u=u.replace(/\s\s+/g,` 6431`),u},buildNamespaceConflictError(t){return`Namespace conflict found in grammar. 6432The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. 6433To resolve this make sure each Terminal and Non-Terminal names are unique 6434This is easy to accomplish by using the convention that Terminal names start with an uppercase letter 6435and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){const e=ht(t.prefixPath,r=>H5(r)).join(", "),n=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix 6436in <OR${n}> inside <${t.topLevelRule.name}> Rule, 6437<${e}> may appears as a prefix path in all these alternatives. 6438See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX 6439For Further details.`},buildAlternationAmbiguityError(t){const e=ht(t.prefixPath,r=>H5(r)).join(", "),n=t.alternation.idx===0?"":t.alternation.idx;let i=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${n}> inside <${t.topLevelRule.name}> Rule, 6440<${e}> may appears as a prefix path in all these alternatives. 6441`;return i=i+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES 6442For Further details.`,i},buildEmptyRepetitionError(t){let e=Ha(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. 6443This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule. 6444Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: 6445<OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule. 6446 has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){const e=t.topLevelRule.name,n=ht(t.leftRecursionPath,s=>s.name),i=`${e} --> ${n.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. 6447rule: <${e}> can be invoked from itself (directly or indirectly) 6448without consuming any Tokens. The grammar path that causes this is: 6449 ${i} 6450 To fix this refactor your grammar to remove the left recursion. 6451see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof W2?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function uve(t,e){const n=new cve(t,e);return n.resolveRefs(),n.errors}class cve extends $2{constructor(e,n){super(),this.nameToTopRule=e,this.errMsgProvider=n,this.errors=[]}resolveRefs(){xt(Qi(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){const n=this.nameToTopRule[e.nonTerminalName];if(n)e.referencedRule=n;else{const i=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:i,type:ss.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}class hve extends hA{constructor(e,n){super(),this.topProd=e,this.path=n,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=Wr(this.path.ruleStack).reverse(),this.occurrenceStack=Wr(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,n=[]){this.found||super.walk(e,n)}walkProdRef(e,n,i){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){const r=n.concat(i);this.updateExpectedNext(),this.walk(e.referencedRule,r)}}updateExpectedNext(){Ln(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}}class fve extends hve{constructor(e,n){super(e,n),this.path=n,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,n,i){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){const r=n.concat(i),s=new Ds({definition:r});this.possibleTokTypes=A6(s),this.found=!0}}}class dA extends hA{constructor(e,n){super(),this.topRule=e,this.occurrence=n,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}}class dve extends dA{walkMany(e,n,i){if(e.idx===this.occurrence){const r=Ea(n.concat(i));this.result.isEndOfRule=r===void 0,r instanceof ni&&(this.result.token=r.terminalType,this.result.occurrence=r.idx)}else super.walkMany(e,n,i)}}class xN extends dA{walkManySep(e,n,i){if(e.idx===this.occurrence){const r=Ea(n.concat(i));this.result.isEndOfRule=r===void 0,r instanceof ni&&(this.result.token=r.terminalType,this.result.occurrence=r.idx)}else super.walkManySep(e,n,i)}}class pve extends dA{walkAtLeastOne(e,n,i){if(e.idx===this.occurrence){const r=Ea(n.concat(i));this.result.isEndOfRule=r===void 0,r instanceof ni&&(this.result.token=r.terminalType,this.result.occurrence=r.idx)}else super.walkAtLeastOne(e,n,i)}}class EN extends dA{walkAtLeastOneSep(e,n,i){if(e.idx===this.occurrence){const r=Ea(n.concat(i));this.result.isEndOfRule=r===void 0,r instanceof ni&&(this.result.token=r.terminalType,this.result.occurrence=r.idx)}else super.walkAtLeastOneSep(e,n,i)}}function aS(t,e,n=[]){n=Wr(n);let i=[],r=0;function s(a){return a.concat(fr(t,r+1))}function o(a){const l=aS(s(a),e,n);return i.concat(l)}for(;n.length<e&&r<t.length;){const a=t[r];if(a instanceof Ds)return o(a.definition);if(a instanceof ao)return o(a.definition);if(a instanceof Rs)i=o(a.definition);else if(a instanceof wl){const l=a.definition.concat([new Wi({definition:a.definition})]);return o(l)}else if(a instanceof Il){const l=[new Ds({definition:a.definition}),new Wi({definition:[new ni({terminalType:a.separator})].concat(a.definition)})];return o(l)}else if(a instanceof ba){const l=a.definition.concat([new Wi({definition:[new ni({terminalType:a.separator})].concat(a.definition)})]);i=o(l)}else if(a instanceof Wi){const l=a.definition.concat([new Wi({definition:a.definition})]);i=o(l)}else{if(a instanceof Pa)return xt(a.definition,l=>{Ln(l.definition)===!1&&(i=o(l.definition))}),i;if(a instanceof ni)n.push(a.terminalType);else throw Error("non exhaustive match")}r++}return i.push({partialPath:n,suffixDef:fr(t,r)}),i}function E$(t,e,n,i){const r="EXIT_NONE_TERMINAL",s=[r],o="EXIT_ALTERNATIVE";let a=!1;const l=e.length,u=l-i-1,c=[],h=[];for(h.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!Ln(h);){const f=h.pop();if(f===o){a&&v2(h).idx<=u&&h.pop();continue}const m=f.def,g=f.idx,v=f.ruleStack,_=f.occurrenceStack;if(Ln(m))continue;const A=m[0];if(A===r){const y={idx:g,def:fr(m),ruleStack:y4(v),occurrenceStack:y4(_)};h.push(y)}else if(A instanceof ni)if(g<l-1){const y=g+1,q=e[y];if(n(q,A.terminalType)){const E={idx:y,def:fr(m),ruleStack:v,occurrenceStack:_};h.push(E)}}else if(g===l-1)c.push({nextTokenType:A.terminalType,nextTokenOccurrence:A.idx,ruleStack:v,occurrenceStack:_}),a=!0;else throw Error("non exhaustive match");else if(A instanceof ao){const y=Wr(v);y.push(A.nonTerminalName);const q=Wr(_);q.push(A.idx);const E={idx:g,def:A.definition.concat(s,fr(m)),ruleStack:y,occurrenceStack:q};h.push(E)}else if(A instanceof Rs){const y={idx:g,def:fr(m),ruleStack:v,occurrenceStack:_};h.push(y),h.push(o);const q={idx:g,def:A.definition.concat(fr(m)),ruleStack:v,occurrenceStack:_};h.push(q)}else if(A instanceof wl){const y=new Wi({definition:A.definition,idx:A.idx}),q=A.definition.concat([y],fr(m)),E={idx:g,def:q,ruleStack:v,occurrenceStack:_};h.push(E)}else if(A instanceof Il){const y=new ni({terminalType:A.separator}),q=new Wi({definition:[y].concat(A.definition),idx:A.idx}),E=A.definition.concat([q],fr(m)),T={idx:g,def:E,ruleStack:v,occurrenceStack:_};h.push(T)}else if(A instanceof ba){const y={idx:g,def:fr(m),ruleStack:v,occurrenceStack:_};h.push(y),h.push(o);const q=new ni({terminalType:A.separator}),E=new Wi({definition:[q].concat(A.definition),idx:A.idx}),T=A.definition.concat([E],fr(m)),C={idx:g,def:T,ruleStack:v,occurrenceStack:_};h.push(C)}else if(A instanceof Wi){const y={idx:g,def:fr(m),ruleStack:v,occurrenceStack:_};h.push(y),h.push(o);const q=new Wi({definition:A.definition,idx:A.idx}),E=A.definition.concat([q],fr(m)),T={idx:g,def:E,ruleStack:v,occurrenceStack:_};h.push(T)}else if(A instanceof Pa)for(let y=A.definition.length-1;y>=0;y--){const q=A.definition[y],E={idx:g,def:q.definition.concat(fr(m)),ruleStack:v,occurrenceStack:_};h.push(E),h.push(o)}else if(A instanceof Ds)h.push({idx:g,def:A.definition.concat(fr(m)),ruleStack:v,occurrenceStack:_});else if(A instanceof W2)h.push(mve(A,g,v,_));else throw Error("non exhaustive match")}return c}function mve(t,e,n,i){const r=Wr(n);r.push(t.name);const s=Wr(i);return s.push(1),{idx:e,def:t.definition,ruleStack:r,occurrenceStack:s}}var di;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(di||(di={}));function S$(t){if(t instanceof Rs||t==="Option")return di.OPTION;if(t instanceof Wi||t==="Repetition")return di.REPETITION;if(t instanceof wl||t==="RepetitionMandatory")return di.REPETITION_MANDATORY;if(t instanceof Il||t==="RepetitionMandatoryWithSeparator")return di.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof ba||t==="RepetitionWithSeparator")return di.REPETITION_WITH_SEPARATOR;if(t instanceof Pa||t==="Alternation")return di.ALTERNATION;throw Error("non exhaustive match")}function gve(t,e,n,i,r,s){const o=sI(t,e,n),a=w$(o)?i9:v6;return s(o,i,a,r)}function Ave(t,e,n,i,r,s){const o=oI(t,e,r,n),a=w$(o)?i9:v6;return s(o[0],a,i)}function vve(t,e,n,i){const r=t.length,s=ma(t,o=>ma(o,a=>a.length===1));if(e)return function(o){const a=ht(o,l=>l.GATE);for(let l=0;l<r;l++){const u=t[l],c=u.length,h=a[l];if(!(h!==void 0&&h.call(this)===!1))e:for(let f=0;f<c;f++){const m=u[f],g=m.length;for(let v=0;v<g;v++){const _=this.LA(v+1);if(n(_,m[v])===!1)continue e}return l}}};if(s&&!i){const o=ht(t,l=>pa(l)),a=oo(o,(l,u,c)=>(xt(u,h=>{vt(l,h.tokenTypeIdx)||(l[h.tokenTypeIdx]=c),xt(h.categoryMatches,f=>{vt(l,f)||(l[f]=c)})}),l),{});return function(){const l=this.LA(1);return a[l.tokenTypeIdx]}}else return function(){for(let o=0;o<r;o++){const a=t[o],l=a.length;e:for(let u=0;u<l;u++){const c=a[u],h=c.length;for(let f=0;f<h;f++){const m=this.LA(f+1);if(n(m,c[f])===!1)continue e}return o}}}}function yve(t,e,n){const i=ma(t,s=>s.length===1),r=t.length;if(i&&!n){const s=pa(t);if(s.length===1&&Ln(s[0].categoryMatches)){const a=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===a}}else{const o=oo(s,(a,l,u)=>(a[l.tokenTypeIdx]=!0,xt(l.categoryMatches,c=>{a[c]=!0}),a),[]);return function(){const a=this.LA(1);return o[a.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<r;s++){const o=t[s],a=o.length;for(let l=0;l<a;l++){const u=this.LA(l+1);if(e(u,o[l])===!1)continue e}return!0}return!1}}class qve extends hA{constructor(e,n,i){super(),this.topProd=e,this.targetOccurrence=n,this.targetProdType=i}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,n,i,r){return e.idx===this.targetOccurrence&&this.targetProdType===n?(this.restDef=i.concat(r),!0):!1}walkOption(e,n,i){this.checkIsTarget(e,di.OPTION,n,i)||super.walkOption(e,n,i)}walkAtLeastOne(e,n,i){this.checkIsTarget(e,di.REPETITION_MANDATORY,n,i)||super.walkOption(e,n,i)}walkAtLeastOneSep(e,n,i){this.checkIsTarget(e,di.REPETITION_MANDATORY_WITH_SEPARATOR,n,i)||super.walkOption(e,n,i)}walkMany(e,n,i){this.checkIsTarget(e,di.REPETITION,n,i)||super.walkOption(e,n,i)}walkManySep(e,n,i){this.checkIsTarget(e,di.REPETITION_WITH_SEPARATOR,n,i)||super.walkOption(e,n,i)}}class T$ extends $2{constructor(e,n,i){super(),this.targetOccurrence=e,this.targetProdType=n,this.targetRef=i,this.result=[]}checkIsTarget(e,n){e.idx===this.targetOccurrence&&this.targetProdType===n&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,di.OPTION)}visitRepetition(e){this.checkIsTarget(e,di.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,di.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,di.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,di.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,di.ALTERNATION)}}function SN(t){const e=new Array(t);for(let n=0;n<t;n++)e[n]=[];return e}function Hq(t){let e=[""];for(let n=0;n<t.length;n++){const i=t[n],r=[];for(let s=0;s<e.length;s++){const o=e[s];r.push(o+"_"+i.tokenTypeIdx);for(let a=0;a<i.categoryMatches.length;a++){const l="_"+i.categoryMatches[a];r.push(o+l)}}e=r}return e}function _ve(t,e,n){for(let i=0;i<t.length;i++){if(i===n)continue;const r=t[i];for(let s=0;s<e.length;s++){const o=e[s];if(r[o]===!0)return!1}}return!0}function C$(t,e){const n=ht(t,o=>aS([o],1)),i=SN(n.length),r=ht(n,o=>{const a={};return xt(o,l=>{const u=Hq(l.partialPath);xt(u,c=>{a[c]=!0})}),a});let s=n;for(let o=1;o<=e;o++){const a=s;s=SN(a.length);for(let l=0;l<a.length;l++){const u=a[l];for(let c=0;c<u.length;c++){const h=u[c].partialPath,f=u[c].suffixDef,m=Hq(h);if(_ve(r,m,l)||Ln(f)||h.length===e){const v=i[l];if(lS(v,h)===!1){v.push(h);for(let _=0;_<m.length;_++){const A=m[_];r[l][A]=!0}}}else{const v=aS(f,o+1,h);s[l]=s[l].concat(v),xt(v,_=>{const A=Hq(_.partialPath);xt(A,y=>{r[l][y]=!0})})}}}}return i}function sI(t,e,n,i){const r=new T$(t,di.ALTERNATION,i);return e.accept(r),C$(r.result,n)}function oI(t,e,n,i){const r=new T$(t,n);e.accept(r);const s=r.result,a=new qve(e,t,n).startWalking(),l=new Ds({definition:s}),u=new Ds({definition:a});return C$([l,u],i)}function lS(t,e){e:for(let n=0;n<t.length;n++){const i=t[n];if(i.length===e.length){for(let r=0;r<i.length;r++){const s=e[r],o=i[r];if((s===o||o.categoryMatchesMap[s.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}function xve(t,e){return t.length<e.length&&ma(t,(n,i)=>{const r=e[i];return n===r||r.categoryMatchesMap[n.tokenTypeIdx]})}function w$(t){return ma(t,e=>ma(e,n=>ma(n,i=>Ln(i.categoryMatches))))}function Eve(t){const e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return ht(e,n=>Object.assign({type:ss.CUSTOM_LOOKAHEAD_VALIDATION},n))}function Sve(t,e,n,i){const r=Oo(t,l=>Tve(l,n)),s=kve(t,e,n),o=Oo(t,l=>Bve(l,n)),a=Oo(t,l=>Ive(l,t,i,n));return r.concat(s,o,a)}function Tve(t,e){const n=new wve;t.accept(n);const i=n.allProductions,r=Lge(i,Cve),s=Ra(r,a=>a.length>1);return ht(Qi(s),a=>{const l=Ea(a),u=e.buildDuplicateFoundError(t,a),c=Ha(l),h={message:u,type:ss.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:c,occurrence:l.idx},f=I$(l);return f&&(h.parameter=f),h})}function Cve(t){return`${Ha(t)}_#_${t.idx}_#_${I$(t)}`}function I$(t){return t instanceof ni?t.terminalType.name:t instanceof ao?t.nonTerminalName:""}class wve extends $2{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}}function Ive(t,e,n,i){const r=[];if(oo(e,(o,a)=>a.name===t.name?o+1:o,0)>1){const o=i.buildDuplicateRuleNameError({topLevelRule:t,grammarName:n});r.push({message:o,type:ss.DUPLICATE_RULE_NAME,ruleName:t.name})}return r}function Mve(t,e,n){const i=[];let r;return us(e,t)||(r=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `,i.push({message:r,type:ss.INVALID_RULE_OVERRIDE,ruleName:t})),i}function M$(t,e,n,i=[]){const r=[],s=U8(e.definition);if(Ln(s))return[];{const o=t.name;us(s,t)&&r.push({message:n.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:i}),type:ss.LEFT_RECURSION,ruleName:o});const l=uA(s,i.concat([t])),u=Oo(l,c=>{const h=Wr(i);return h.push(c),M$(t,c,n,h)});return r.concat(u)}}function U8(t){let e=[];if(Ln(t))return e;const n=Ea(t);if(n instanceof ao)e.push(n.referencedRule);else if(n instanceof Ds||n instanceof Rs||n instanceof wl||n instanceof Il||n instanceof ba||n instanceof Wi)e=e.concat(U8(n.definition));else if(n instanceof Pa)e=pa(ht(n.definition,s=>U8(s.definition)));else if(!(n instanceof ni))throw Error("non exhaustive match");const i=Zm(n),r=t.length>1;if(i&&r){const s=fr(t);return e.concat(U8(s))}else return e}class aI extends $2{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}}function Rve(t,e){const n=new aI;t.accept(n);const i=n.alternations;return Oo(i,s=>{const o=y4(s.definition);return Oo(o,(a,l)=>{const u=E$([a],[],v6,1);return Ln(u)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:s,emptyChoiceIdx:l}),type:ss.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:s.idx,alternative:l+1}]:[]})})}function bve(t,e,n){const i=new aI;t.accept(i);let r=i.alternations;return r=cA(r,o=>o.ignoreAmbiguities===!0),Oo(r,o=>{const a=o.idx,l=o.maxLookahead||e,u=sI(a,t,l,o),c=Lve(u,o,t,n),h=Nve(u,o,t,n);return c.concat(h)})}class Pve extends $2{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}}function Bve(t,e){const n=new aI;t.accept(n);const i=n.alternations;return Oo(i,s=>s.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:s}),type:ss.TOO_MANY_ALTS,ruleName:t.name,occurrence:s.idx}]:[])}function Dve(t,e,n){const i=[];return xt(t,r=>{const s=new Pve;r.accept(s);const o=s.allProductions;xt(o,a=>{const l=S$(a),u=a.maxLookahead||e,c=a.idx,f=oI(c,r,l,u)[0];if(Ln(pa(f))){const m=n.buildEmptyRepetitionError({topLevelRule:r,repetition:a});i.push({message:m,type:ss.NO_NON_EMPTY_LOOKAHEAD,ruleName:r.name})}})}),i}function Lve(t,e,n,i){const r=[],s=oo(t,(a,l,u)=>(e.definition[u].ignoreAmbiguities===!0||xt(l,c=>{const h=[u];xt(t,(f,m)=>{u!==m&&lS(f,c)&&e.definition[m].ignoreAmbiguities!==!0&&h.push(m)}),h.length>1&&!lS(r,c)&&(r.push(c),a.push({alts:h,path:c}))}),a),[]);return ht(s,a=>{const l=ht(a.alts,c=>c+1);return{message:i.buildAlternationAmbiguityError({topLevelRule:n,alternation:e,ambiguityIndices:l,prefixPath:a.path}),type:ss.AMBIGUOUS_ALTS,ruleName:n.name,occurrence:e.idx,alternatives:a.alts}})}function Nve(t,e,n,i){const r=oo(t,(o,a,l)=>{const u=ht(a,c=>({idx:l,path:c}));return o.concat(u)},[]);return g6(Oo(r,o=>{if(e.definition[o.idx].ignoreAmbiguities===!0)return[];const l=o.idx,u=o.path,c=Yo(r,f=>e.definition[f.idx].ignoreAmbiguities!==!0&&f.idx<l&&xve(f.path,u));return ht(c,f=>{const m=[f.idx+1,l+1],g=e.idx===0?"":e.idx;return{message:i.buildAlternationPrefixAmbiguityError({topLevelRule:n,alternation:e,ambiguityIndices:m,prefixPath:f.path}),type:ss.AMBIGUOUS_PREFIX_ALTS,ruleName:n.name,occurrence:g,alternatives:m}})}))}function kve(t,e,n){const i=[],r=ht(e,s=>s.name);return xt(t,s=>{const o=s.name;if(us(r,o)){const a=n.buildNamespaceConflictError(s);i.push({message:a,type:ss.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:o})}}),i}function Fve(t){const e=eI(t,{errMsgProvider:lve}),n={};return xt(t.rules,i=>{n[i.name]=i}),uve(n,e.errMsgProvider)}function Ove(t){return t=eI(t,{errMsgProvider:r1}),Sve(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}const R$="MismatchedTokenException",b$="NoViableAltException",P$="EarlyExitException",B$="NotAllInputParsedException",D$=[R$,b$,P$,B$];Object.freeze(D$);function r9(t){return us(D$,t.name)}class pA extends Error{constructor(e,n){super(e),this.token=n,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}class L$ extends pA{constructor(e,n,i){super(e,n),this.previousToken=i,this.name=R$}}class Uve extends pA{constructor(e,n,i){super(e,n),this.previousToken=i,this.name=b$}}class zve extends pA{constructor(e,n){super(e,n),this.name=B$}}class Vve extends pA{constructor(e,n,i){super(e,n),this.previousToken=i,this.name=P$}}const Wq={},N$="InRuleRecoveryException";class Gve extends Error{constructor(e){super(e),this.name=N$}}class Qve{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=vt(e,"recoveryEnabled")?e.recoveryEnabled:Hc.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Hve)}getTokenToInsert(e){const n=rI(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return n.isInsertedInRecovery=!0,n}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,n,i,r){const s=this.findReSyncTokenType(),o=this.exportLexerState(),a=[];let l=!1;const u=this.LA(1);let c=this.LA(1);const h=()=>{const f=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:u,previous:f,ruleName:this.getCurrRuleFullName()}),g=new L$(m,u,this.LA(0));g.resyncedTokens=y4(a),this.SAVE_ERROR(g)};for(;!l;)if(this.tokenMatcher(c,r)){h();return}else if(i.call(this)){h(),e.apply(this,n);return}else this.tokenMatcher(c,s)?l=!0:(c=this.SKIP_TOKEN(),this.addToResyncTokens(c,a));this.importLexerState(o)}shouldInRepetitionRecoveryBeTried(e,n,i){return!(i===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,n)))}getFollowsForInRuleRecovery(e,n){const i=this.getCurrentGrammarPath(e,n);return this.getNextPossibleTokenTypes(i)}tryInRuleRecovery(e,n){if(this.canRecoverWithSingleTokenInsertion(e,n))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const i=this.SKIP_TOKEN();return this.consumeToken(),i}throw new Gve("sad sad panda")}canPerformInRuleRecovery(e,n){return this.canRecoverWithSingleTokenInsertion(e,n)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,n){if(!this.canTokenTypeBeInsertedInRecovery(e)||Ln(n))return!1;const i=this.LA(1);return y2(n,s=>this.tokenMatcher(i,s))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){const n=this.getCurrFollowKey(),i=this.getFollowSetFromFollowKey(n);return us(i,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let n=this.LA(1),i=2;for(;;){const r=y2(e,s=>ave(n,s));if(r!==void 0)return r;n=this.LA(i),i++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return Wq;const e=this.getLastExplicitRuleShortName(),n=this.getLastExplicitRuleOccurrenceIndex(),i=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:n,inRule:this.shortRuleNameToFullName(i)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,n=this.RULE_OCCURRENCE_STACK;return ht(e,(i,r)=>r===0?Wq:{ruleName:this.shortRuleNameToFullName(i),idxInCallingRule:n[r],inRule:this.shortRuleNameToFullName(e[r-1])})}flattenFollowSet(){const e=ht(this.buildFullFollowKeyStack(),n=>this.getFollowSetFromFollowKey(n));return pa(e)}getFollowSetFromFollowKey(e){if(e===Wq)return[D1];const n=e.ruleName+e.idxInCallingRule+h$+e.inRule;return this.resyncFollows[n]}addToResyncTokens(e,n){return this.tokenMatcher(e,D1)||n.push(e),n}reSyncTo(e){const n=[];let i=this.LA(1);for(;this.tokenMatcher(i,e)===!1;)i=this.SKIP_TOKEN(),this.addToResyncTokens(i,n);return y4(n)}attemptInRepetitionRecovery(e,n,i,r,s,o,a){}getCurrentGrammarPath(e,n){const i=this.getHumanReadableRuleStack(),r=Wr(this.RULE_OCCURRENCE_STACK);return{ruleStack:i,occurrenceStack:r,lastTok:e,lastTokOccurrence:n}}getHumanReadableRuleStack(){return ht(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}}function Hve(t,e,n,i,r,s,o){const a=this.getKeyForAutomaticLookahead(i,r);let l=this.firstAfterRepMap[a];if(l===void 0){const f=this.getCurrRuleFullName(),m=this.getGAstProductions()[f];l=new s(m,r).startWalking(),this.firstAfterRepMap[a]=l}let u=l.token,c=l.occurrence;const h=l.isEndOfRule;this.RULE_STACK.length===1&&h&&u===void 0&&(u=D1,c=1),!(u===void 0||c===void 0)&&this.shouldInRepetitionRecoveryBeTried(u,c,o)&&this.tryInRepetitionRecovery(t,e,n,u)}const Wve=4,lh=8,k$=1<<lh,F$=2<<lh,uS=3<<lh,cS=4<<lh,hS=5<<lh,z8=6<<lh;function $q(t,e,n){return n|e|t}class $ve{constructor(e){var n;this.maxLookahead=(n=e==null?void 0:e.maxLookahead)!==null&&n!==void 0?n:Hc.maxLookahead}validate(e){const n=this.validateNoLeftRecursion(e.rules);if(Ln(n)){const i=this.validateEmptyOrAlternatives(e.rules),r=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...n,...i,...r,...s]}return n}validateNoLeftRecursion(e){return Oo(e,n=>M$(n,n,r1))}validateEmptyOrAlternatives(e){return Oo(e,n=>Rve(n,r1))}validateAmbiguousAlternationAlternatives(e,n){return Oo(e,i=>bve(i,n,r1))}validateSomeNonEmptyLookaheadPath(e,n){return Dve(e,n,r1)}buildLookaheadForAlternation(e){return gve(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,vve)}buildLookaheadForOptional(e){return Ave(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,S$(e.prodType),yve)}}class jve{initLooksAhead(e){this.dynamicTokensEnabled=vt(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Hc.dynamicTokensEnabled,this.maxLookahead=vt(e,"maxLookahead")?e.maxLookahead:Hc.maxLookahead,this.lookaheadStrategy=vt(e,"lookaheadStrategy")?e.lookaheadStrategy:new $ve({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){xt(e,n=>{this.TRACE_INIT(`${n.name} Rule Lookahead`,()=>{const{alternation:i,repetition:r,option:s,repetitionMandatory:o,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:l}=Yve(n);xt(i,u=>{const c=u.idx===0?"":u.idx;this.TRACE_INIT(`${Ha(u)}${c}`,()=>{const h=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:u.idx,rule:n,maxLookahead:u.maxLookahead||this.maxLookahead,hasPredicates:u.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),f=$q(this.fullRuleNameToShort[n.name],k$,u.idx);this.setLaFuncCache(f,h)})}),xt(r,u=>{this.computeLookaheadFunc(n,u.idx,uS,"Repetition",u.maxLookahead,Ha(u))}),xt(s,u=>{this.computeLookaheadFunc(n,u.idx,F$,"Option",u.maxLookahead,Ha(u))}),xt(o,u=>{this.computeLookaheadFunc(n,u.idx,cS,"RepetitionMandatory",u.maxLookahead,Ha(u))}),xt(a,u=>{this.computeLookaheadFunc(n,u.idx,z8,"RepetitionMandatoryWithSeparator",u.maxLookahead,Ha(u))}),xt(l,u=>{this.computeLookaheadFunc(n,u.idx,hS,"RepetitionWithSeparator",u.maxLookahead,Ha(u))})})})}computeLookaheadFunc(e,n,i,r,s,o){this.TRACE_INIT(`${o}${n===0?"":n}`,()=>{const a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:n,rule:e,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r}),l=$q(this.fullRuleNameToShort[e.name],i,n);this.setLaFuncCache(l,a)})}getKeyForAutomaticLookahead(e,n){const i=this.getLastExplicitRuleShortName();return $q(i,e,n)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,n){this.lookAheadFuncsCache.set(e,n)}}class Xve extends $2{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}}const i8=new Xve;function Yve(t){i8.reset(),t.accept(i8);const e=i8.dslMethods;return i8.reset(),e}function TN(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}function CN(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.startColumn=e.startColumn,t.startLine=e.startLine,t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine)}function Kve(t,e,n){t.children[n]===void 0?t.children[n]=[e]:t.children[n].push(e)}function Jve(t,e,n){t.children[e]===void 0?t.children[e]=[n]:t.children[e].push(n)}const Zve="name";function O$(t,e){Object.defineProperty(t,Zve,{enumerable:!1,configurable:!0,writable:!1,value:e})}function eye(t,e){const n=ro(t),i=n.length;for(let r=0;r<i;r++){const s=n[r],o=t[s],a=o.length;for(let l=0;l<a;l++){const u=o[l];u.tokenTypeIdx===void 0&&this[u.name](u.children,e)}}}function tye(t,e){const n=function(){};O$(n,t+"BaseSemantics");const i={visit:function(r,s){if(un(r)&&(r=r[0]),!yu(r))return this[r.name](r.children,s)},validateVisitor:function(){const r=iye(this,e);if(!Ln(r)){const s=ht(r,o=>o.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: 6452 ${s.join(` 6453 6454`).replace(/\n/g,` 6455 `)}`)}}};return n.prototype=i,n.prototype.constructor=n,n._RULE_NAMES=e,n}function nye(t,e,n){const i=function(){};O$(i,t+"BaseSemanticsWithDefaults");const r=Object.create(n.prototype);return xt(e,s=>{r[s]=eye}),i.prototype=r,i.prototype.constructor=i,i}var fS;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(fS||(fS={}));function iye(t,e){return rye(t,e)}function rye(t,e){const n=Yo(e,r=>Eu(t[r])===!1),i=ht(n,r=>({msg:`Missing visitor method: <${r}> on ${t.constructor.name} CST Visitor.`,type:fS.MISSING_METHOD,methodName:r}));return g6(i)}class sye{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=vt(e,"nodeLocationTracking")?e.nodeLocationTracking:Hc.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=Vi,this.cstFinallyStateUpdate=Vi,this.cstPostTerminal=Vi,this.cstPostNonTerminal=Vi,this.cstPostRule=Vi;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=CN,this.setNodeLocationFromNode=CN,this.cstPostRule=Vi,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=Vi,this.setNodeLocationFromNode=Vi,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=TN,this.setNodeLocationFromNode=TN,this.cstPostRule=Vi,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=Vi,this.setNodeLocationFromNode=Vi,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=Vi,this.setNodeLocationFromNode=Vi,this.cstPostRule=Vi,this.setInitialNodeLocation=Vi;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){const n=this.LA(1);e.location={startOffset:n.startOffset,startLine:n.startLine,startColumn:n.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const n={name:e,children:Object.create(null)};this.setInitialNodeLocation(n),this.CST_STACK.push(n)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const n=this.LA(0),i=e.location;i.startOffset<=n.startOffset?(i.endOffset=n.endOffset,i.endLine=n.endLine,i.endColumn=n.endColumn):(i.startOffset=NaN,i.startLine=NaN,i.startColumn=NaN)}cstPostRuleOnlyOffset(e){const n=this.LA(0),i=e.location;i.startOffset<=n.startOffset?i.endOffset=n.endOffset:i.startOffset=NaN}cstPostTerminal(e,n){const i=this.CST_STACK[this.CST_STACK.length-1];Kve(i,n,e),this.setNodeLocationFromToken(i.location,n)}cstPostNonTerminal(e,n){const i=this.CST_STACK[this.CST_STACK.length-1];Jve(i,n,e),this.setNodeLocationFromNode(i.location,e.location)}getBaseCstVisitorConstructor(){if(yu(this.baseCstVisitorConstructor)){const e=tye(this.className,ro(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(yu(this.baseCstVisitorWithDefaultsConstructor)){const e=nye(this.className,ro(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}class oye{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):o9}LA(e){const n=this.currIdx+e;return n<0||this.tokVectorLength<=n?o9:this.tokVector[n]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}class aye{ACTION(e){return e.call(this)}consume(e,n,i){return this.consumeInternal(n,e,i)}subrule(e,n,i){return this.subruleInternal(n,e,i)}option(e,n){return this.optionInternal(n,e)}or(e,n){return this.orInternal(n,e)}many(e,n){return this.manyInternal(e,n)}atLeastOne(e,n){return this.atLeastOneInternal(e,n)}CONSUME(e,n){return this.consumeInternal(e,0,n)}CONSUME1(e,n){return this.consumeInternal(e,1,n)}CONSUME2(e,n){return this.consumeInternal(e,2,n)}CONSUME3(e,n){return this.consumeInternal(e,3,n)}CONSUME4(e,n){return this.consumeInternal(e,4,n)}CONSUME5(e,n){return this.consumeInternal(e,5,n)}CONSUME6(e,n){return this.consumeInternal(e,6,n)}CONSUME7(e,n){return this.consumeInternal(e,7,n)}CONSUME8(e,n){return this.consumeInternal(e,8,n)}CONSUME9(e,n){return this.consumeInternal(e,9,n)}SUBRULE(e,n){return this.subruleInternal(e,0,n)}SUBRULE1(e,n){return this.subruleInternal(e,1,n)}SUBRULE2(e,n){return this.subruleInternal(e,2,n)}SUBRULE3(e,n){return this.subruleInternal(e,3,n)}SUBRULE4(e,n){return this.subruleInternal(e,4,n)}SUBRULE5(e,n){return this.subruleInternal(e,5,n)}SUBRULE6(e,n){return this.subruleInternal(e,6,n)}SUBRULE7(e,n){return this.subruleInternal(e,7,n)}SUBRULE8(e,n){return this.subruleInternal(e,8,n)}SUBRULE9(e,n){return this.subruleInternal(e,9,n)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,n,i=a9){if(us(this.definedRulesNames,e)){const o={message:r1.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:ss.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(o)}this.definedRulesNames.push(e);const r=this.defineRule(e,n,i);return this[e]=r,r}OVERRIDE_RULE(e,n,i=a9){const r=Mve(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);const s=this.defineRule(e,n,i);return this[e]=s,s}BACKTRACK(e,n){return function(){this.isBackTrackingStack.push(1);const i=this.saveRecogState();try{return e.apply(this,n),!0}catch(r){if(r9(r))return!1;throw r}finally{this.reloadRecogState(i),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return uAe(Qi(this.gastProductionsCache))}}class lye{initRecognizerEngine(e,n){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=i9,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},vt(n,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property. 6456 See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 6457 For Further details.`);if(un(e)){if(Ln(e))throw Error(`A Token Vocabulary cannot be empty. 6458 Note that the first argument for the parser constructor 6459 is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. 6460 See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 6461 For Further details.`)}if(un(e))this.tokensMap=oo(e,(s,o)=>(s[o.name]=o,s),{});else if(vt(e,"modes")&&ma(pa(Qi(e.modes)),ive)){const s=pa(Qi(e.modes)),o=tI(s);this.tokensMap=oo(o,(a,l)=>(a[l.name]=l,a),{})}else if(Wo(e))this.tokensMap=Wr(e);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=D1;const i=vt(e,"modes")?pa(Qi(e.modes)):Qi(e),r=ma(i,s=>Ln(s.categoryMatches));this.tokenMatcher=r?i9:v6,y6(Qi(this.tokensMap))}defineRule(e,n,i){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' 6462Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const r=vt(i,"resyncEnabled")?i.resyncEnabled:a9.resyncEnabled,s=vt(i,"recoveryValueFunc")?i.recoveryValueFunc:a9.recoveryValueFunc,o=this.ruleShortNameIdx<<Wve+lh;this.ruleShortNameIdx++,this.shortRuleNameToFull[o]=e,this.fullRuleNameToShort[e]=o;let a;return this.outputCst===!0?a=function(...c){try{this.ruleInvocationStateUpdate(o,e,this.subruleIdx),n.apply(this,c);const h=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(h),h}catch(h){return this.invokeRuleCatch(h,r,s)}finally{this.ruleFinallyStateUpdate()}}:a=function(...c){try{return this.ruleInvocationStateUpdate(o,e,this.subruleIdx),n.apply(this,c)}catch(h){return this.invokeRuleCatch(h,r,s)}finally{this.ruleFinallyStateUpdate()}},Object.assign(a,{ruleName:e,originalGrammarAction:n})}invokeRuleCatch(e,n,i){const r=this.RULE_STACK.length===1,s=n&&!this.isBackTracking()&&this.recoveryEnabled;if(r9(e)){const o=e;if(s){const a=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(a))if(o.resyncedTokens=this.reSyncTo(a),this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return i(e);else{if(this.outputCst){const l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,o.partialCstResult=l}throw o}}else{if(r)return this.moveToTerminatedState(),i(e);throw o}}else throw e}optionInternal(e,n){const i=this.getKeyForAutomaticLookahead(F$,n);return this.optionInternalLogic(e,n,i)}optionInternalLogic(e,n,i){let r=this.getLaFuncFromCache(i),s;if(typeof e!="function"){s=e.DEF;const o=e.GATE;if(o!==void 0){const a=r;r=()=>o.call(this)&&a.call(this)}}else s=e;if(r.call(this)===!0)return s.call(this)}atLeastOneInternal(e,n){const i=this.getKeyForAutomaticLookahead(cS,e);return this.atLeastOneInternalLogic(e,n,i)}atLeastOneInternalLogic(e,n,i){let r=this.getLaFuncFromCache(i),s;if(typeof n!="function"){s=n.DEF;const o=n.GATE;if(o!==void 0){const a=r;r=()=>o.call(this)&&a.call(this)}}else s=n;if(r.call(this)===!0){let o=this.doSingleRepetition(s);for(;r.call(this)===!0&&o===!0;)o=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(e,di.REPETITION_MANDATORY,n.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,n],r,cS,e,pve)}atLeastOneSepFirstInternal(e,n){const i=this.getKeyForAutomaticLookahead(z8,e);this.atLeastOneSepFirstInternalLogic(e,n,i)}atLeastOneSepFirstInternalLogic(e,n,i){const r=n.DEF,s=n.SEP;if(this.getLaFuncFromCache(i).call(this)===!0){r.call(this);const a=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,a,r,EN],a,z8,e,EN)}else throw this.raiseEarlyExitException(e,di.REPETITION_MANDATORY_WITH_SEPARATOR,n.ERR_MSG)}manyInternal(e,n){const i=this.getKeyForAutomaticLookahead(uS,e);return this.manyInternalLogic(e,n,i)}manyInternalLogic(e,n,i){let r=this.getLaFuncFromCache(i),s;if(typeof n!="function"){s=n.DEF;const a=n.GATE;if(a!==void 0){const l=r;r=()=>a.call(this)&&l.call(this)}}else s=n;let o=!0;for(;r.call(this)===!0&&o===!0;)o=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[e,n],r,uS,e,dve,o)}manySepFirstInternal(e,n){const i=this.getKeyForAutomaticLookahead(hS,e);this.manySepFirstInternalLogic(e,n,i)}manySepFirstInternalLogic(e,n,i){const r=n.DEF,s=n.SEP;if(this.getLaFuncFromCache(i).call(this)===!0){r.call(this);const a=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,a,r,xN],a,hS,e,xN)}}repetitionSepSecondInternal(e,n,i,r,s){for(;i();)this.CONSUME(n),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,n,i,r,s],i,z8,e,s)}doSingleRepetition(e){const n=this.getLexerPosition();return e.call(this),this.getLexerPosition()>n}orInternal(e,n){const i=this.getKeyForAutomaticLookahead(k$,n),r=un(e)?e:e.DEF,o=this.getLaFuncFromCache(i).call(this,r);if(o!==void 0)return r[o].ALT.call(this);this.raiseNoAltException(n,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){const e=this.LA(1),n=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new zve(n,e))}}subruleInternal(e,n,i){let r;try{const s=i!==void 0?i.ARGS:void 0;return this.subruleIdx=n,r=e.apply(this,s),this.cstPostNonTerminal(r,i!==void 0&&i.LABEL!==void 0?i.LABEL:e.ruleName),r}catch(s){throw this.subruleInternalError(s,i,e.ruleName)}}subruleInternalError(e,n,i){throw r9(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,n!==void 0&&n.LABEL!==void 0?n.LABEL:i),delete e.partialCstResult),e}consumeInternal(e,n,i){let r;try{const s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),r=s):this.consumeInternalError(e,s,i)}catch(s){r=this.consumeInternalRecovery(e,n,s)}return this.cstPostTerminal(i!==void 0&&i.LABEL!==void 0?i.LABEL:e.name,r),r}consumeInternalError(e,n,i){let r;const s=this.LA(0);throw i!==void 0&&i.ERR_MSG?r=i.ERR_MSG:r=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:n,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new L$(r,n,s))}consumeInternalRecovery(e,n,i){if(this.recoveryEnabled&&i.name==="MismatchedTokenException"&&!this.isBackTracking()){const r=this.getFollowsForInRuleRecovery(e,n);try{return this.tryInRuleRecovery(e,r)}catch(s){throw s.name===N$?i:s}}else throw i}saveRecogState(){const e=this.errors,n=Wr(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:n,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,n,i){this.RULE_OCCURRENCE_STACK.push(i),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(n)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),D1)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}class uye{initErrorHandler(e){this._errors=[],this.errorMessageProvider=vt(e,"errorMessageProvider")?e.errorMessageProvider:Hc.errorMessageProvider}SAVE_ERROR(e){if(r9(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:Wr(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return Wr(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,n,i){const r=this.getCurrRuleFullName(),s=this.getGAstProductions()[r],a=oI(e,s,n,this.maxLookahead)[0],l=[];for(let c=1;c<=this.maxLookahead;c++)l.push(this.LA(c));const u=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:l,previous:this.LA(0),customUserDescription:i,ruleName:r});throw this.SAVE_ERROR(new Vve(u,this.LA(1),this.LA(0)))}raiseNoAltException(e,n){const i=this.getCurrRuleFullName(),r=this.getGAstProductions()[i],s=sI(e,r,this.maxLookahead),o=[];for(let u=1;u<=this.maxLookahead;u++)o.push(this.LA(u));const a=this.LA(0),l=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:o,previous:a,customUserDescription:n,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Uve(l,this.LA(1),a))}}class cye{initContentAssist(){}computeContentAssist(e,n){const i=this.gastProductionsCache[e];if(yu(i))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return E$([i],n,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const n=Ea(e.ruleStack),r=this.getGAstProductions()[n];return new fve(r,e).startWalking()}}const mA={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(mA);const wN=!0,IN=Math.pow(2,lh)-1,U$=_$({name:"RECORDING_PHASE_TOKEN",pattern:Uo.NA});y6([U$]);const z$=rI(U$,`This IToken indicates the Parser is in Recording Phase 6463 See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(z$);const hye={name:`This CSTNode indicates the Parser is in Recording Phase 6464 See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}};class fye{initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){const n=e>0?e:"";this[`CONSUME${n}`]=function(i,r){return this.consumeInternalRecord(i,e,r)},this[`SUBRULE${n}`]=function(i,r){return this.subruleInternalRecord(i,e,r)},this[`OPTION${n}`]=function(i){return this.optionInternalRecord(i,e)},this[`OR${n}`]=function(i){return this.orInternalRecord(i,e)},this[`MANY${n}`]=function(i){this.manyInternalRecord(e,i)},this[`MANY_SEP${n}`]=function(i){this.manySepFirstInternalRecord(e,i)},this[`AT_LEAST_ONE${n}`]=function(i){this.atLeastOneInternalRecord(e,i)},this[`AT_LEAST_ONE_SEP${n}`]=function(i){this.atLeastOneSepFirstInternalRecord(e,i)}}this.consume=function(e,n,i){return this.consumeInternalRecord(n,e,i)},this.subrule=function(e,n,i){return this.subruleInternalRecord(n,e,i)},this.option=function(e,n){return this.optionInternalRecord(n,e)},this.or=function(e,n){return this.orInternalRecord(n,e)},this.many=function(e,n){this.manyInternalRecord(e,n)},this.atLeastOne=function(e,n){this.atLeastOneInternalRecord(e,n)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{const e=this;for(let n=0;n<10;n++){const i=n>0?n:"";delete e[`CONSUME${i}`],delete e[`SUBRULE${i}`],delete e[`OPTION${i}`],delete e[`OR${i}`],delete e[`MANY${i}`],delete e[`MANY_SEP${i}`],delete e[`AT_LEAST_ONE${i}`],delete e[`AT_LEAST_ONE_SEP${i}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,n){return()=>!0}LA_RECORD(e){return o9}topLevelRuleRecord(e,n){try{const i=new W2({definition:[],name:e});return i.name=e,this.recordingProdStack.push(i),n.call(this),this.recordingProdStack.pop(),i}catch(i){if(i.KNOWN_RECORDER_ERROR!==!0)try{i.message=i.message+` 6465 This error was thrown during the "grammar recording phase" For more info see: 6466 https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw i}throw i}}optionInternalRecord(e,n){return Xf.call(this,Rs,e,n)}atLeastOneInternalRecord(e,n){Xf.call(this,wl,n,e)}atLeastOneSepFirstInternalRecord(e,n){Xf.call(this,Il,n,e,wN)}manyInternalRecord(e,n){Xf.call(this,Wi,n,e)}manySepFirstInternalRecord(e,n){Xf.call(this,ba,n,e,wN)}orInternalRecord(e,n){return dye.call(this,e,n)}subruleInternalRecord(e,n,i){if(s9(n),!e||vt(e,"ruleName")===!1){const a=new Error(`<SUBRULE${MN(n)}>
6466 argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> 6467 inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}const r=v2(this.recordingProdStack),s=e.ruleName,o=new ao({idx:n,nonTerminalName:s,label:i==null?void 0:i.LABEL,referencedRule:void 0});return r.definition.push(o),this.outputCst?hye:mA}consumeInternalRecord(e,n,i){if(s9(n),!y$(e)){const o=new Error(`<CONSUME${MN(n)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> 6468 inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}const r=v2(this.recordingProdStack),s=new ni({idx:n,terminalType:e,label:i==null?void 0:i.LABEL});return r.definition.push(s),z$}}function Xf(t,e,n,i=!1){s9(n);const r=v2(this.recordingProdStack),s=Eu(e)?e:e.DEF,o=new t({definition:[],idx:n});return i&&(o.separator=e.SEP),vt(e,"MAX_LOOKAHEAD")&&(o.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(o),s.call(this),r.definition.push(o),this.recordingProdStack.pop(),mA}function dye(t,e){s9(e);const n=v2(this.recordingProdStack),i=un(t)===!1,r=i===!1?t:t.DEF,s=new Pa({definition:[],idx:e,ignoreAmbiguities:i&&t.IGNORE_AMBIGUITIES===!0});vt(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD);const o=a$(r,a=>Eu(a.GATE));return s.hasPredicates=o,n.definition.push(s),xt(r,a=>{const l=new Ds({definition:[]});s.definition.push(l),vt(a,"IGNORE_AMBIGUITIES")?l.ignoreAmbiguities=a.IGNORE_AMBIGUITIES:vt(a,"GATE")&&(l.ignoreAmbiguities=!0),this.recordingProdStack.push(l),a.ALT.call(this),this.recordingProdStack.pop()}),mA}function MN(t){return t===0?"":`${t}`}function s9(t){if(t<0||t>IN){const e=new Error(`Invalid DSL Method idx value: <${t}> 6469 Idx value must be a none negative value smaller than ${IN+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}class pye{initPerformanceTracer(e){if(vt(e,"traceInitPerf")){const n=e.traceInitPerf,i=typeof n=="number";this.traceInitMaxIdent=i?n:1/0,this.traceInitPerf=i?n>0:n}else this.traceInitMaxIdent=0,this.traceInitPerf=Hc.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,n){if(this.traceInitPerf===!0){this.traceInitIndent++;const i=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${i}--> <${e}>`);const{time:r,value:s}=u$(n),o=r>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&o(`${i}<-- <${e}> time: ${r}ms`),this.traceInitIndent--,s}else return n()}}function mye(t,e){e.forEach(n=>{const i=n.prototype;Object.getOwnPropertyNames(i).forEach(r=>{if(r==="constructor")return;const s=Object.getOwnPropertyDescriptor(i,r);s&&(s.get||s.set)?Object.defineProperty(t.prototype,r,s):t.prototype[r]=n.prototype[r]})})}const o9=rI(D1,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(o9);const Hc=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:x$,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),a9=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0});var ss;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(ss||(ss={}));class gA{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;const n=this.className;this.TRACE_INIT("toFastProps",()=>{c$(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),xt(this.definedRulesNames,r=>{const o=this[r].originalGrammarAction;let a;this.TRACE_INIT(`${r} Rule`,()=>{a=this.topLevelRuleRecord(r,o)}),this.gastProductionsCache[r]=a})}finally{this.disableRecording()}});let i=[];if(this.TRACE_INIT("Grammar Resolving",()=>{i=Fve({rules:Qi(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(i)}),this.TRACE_INIT("Grammar Validations",()=>{if(Ln(i)&&this.skipValidations===!1){const r=Ove({rules:Qi(this.gastProductionsCache),tokenTypes:Qi(this.tokensMap),errMsgProvider:r1,grammarName:n}),s=Eve({lookaheadStrategy:this.lookaheadStrategy,rules:Qi(this.gastProductionsCache),tokenTypes:Qi(this.tokensMap),grammarName:n});this.definitionErrors=this.definitionErrors.concat(r,s)}}),Ln(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{const r=gAe(Qi(this.gastProductionsCache));this.resyncFollows=r}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var r,s;(s=(r=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(r,{rules:Qi(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Qi(this.gastProductionsCache))})),!gA.DEFER_DEFINITION_ERRORS_HANDLING&&!Ln(this.definitionErrors))throw e=ht(this.definitionErrors,r=>r.message),new Error(`Parser Definition Errors detected: 6470 ${e.join(` 6471------------------------------- 6472`)}`)})}constructor(e,n){this.definitionErrors=[],this.selfAnalysisDone=!1;const i=this;if(i.initErrorHandler(n),i.initLexerAdapter(),i.initLooksAhead(n),i.initRecognizerEngine(e,n),i.initRecoverable(n),i.initTreeBuilder(n),i.initContentAssist(),i.initGastRecorder(n),i.initPerformanceTracer(n),vt(n,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated. 6473 Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead. 6474 See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES 6475 For further details.`);this.skipValidations=vt(n,"skipValidations")?n.skipValidations:Hc.skipValidations}}gA.DEFER_DEFINITION_ERRORS_HANDLING=!1;mye(gA,[Qve,jve,sye,oye,lye,aye,uye,cye,fye,pye]);class gye{constructor(e=4){this.pool=e,this.queue=[],this.workers=[],this.workersResolve=[],this.workerStatus=0}_initWorker(e){if(!this.workers[e]){const n=this.workerCreator();n.addEventListener("message",this._onMessage.bind(this,e)),this.workers[e]=n}}_getIdleWorker(){for(let e=0;e<this.pool;e++)if(!(this.workerStatus&1<<e))return e;return-1}_onMessage(e,n){const i=this.workersResolve[e];if(i&&i(n),this.queue.length){const{resolve:r,msg:s,transfer:o}=this.queue.shift();this.workersResolve[e]=r,this.workers[e].postMessage(s,o)}else this.workerStatus^=1<<e}setWorkerCreator(e){this.workerCreator=e}setWorkerLimit(e){this.pool=e}postMessage(e,n){return new Promise(i=>{const r=this._getIdleWorker();r!==-1?(this._initWorker(r),this.workerStatus|=1<<r,this.workersResolve[r]=i,this.workers[r].postMessage(e,n)):this.queue.push({resolve:i,msg:e,transfer:n})})}
6475dispose(){this.workers.forEach(e=>e.terminate()),this.workersResolve.length=0,this.workers.length=0,this.queue.length=0,this.workerStatus=0}}class Aye extends Nc{constructor(e,n,i,r,s,o){super(e,n,i,s,o),this.isCompressedArrayTexture=!0,this.image.depth=r,this.wrapR=pi}}const jq=new WeakMap;let Xq=0,Yq;const d5=class extends qr{constructor(t){super(t),this.transcoderPath="",this.transcoderBinary=null,this.transcoderPending=null,this.workerPool=new gye,this.workerSourceURL="",this.workerConfig=null,typeof MSC_TRANSCODER<"u"&&console.warn('THREE.KTX2Loader: Please update to latest "basis_transcoder". "msc_basis_transcoder" is no longer supported in three.js r125+.')}setTranscoderPath(t){return this.transcoderPath=t,this}setWorkerLimit(t){return this.workerPool.setWorkerLimit(t),this}detectSupport(t){return this.workerConfig={astcSupported:t.extensions.has("WEBGL_compressed_texture_astc"),etc1Supported:t.extensions.has("WEBGL_compressed_texture_etc1"),etc2Supported:t.extensions.has("WEBGL_compressed_texture_etc"),dxtSupported:t.extensions.has("WEBGL_compressed_texture_s3tc"),bptcSupported:t.extensions.has("EXT_texture_compression_bptc"),pvrtcSupported:t.extensions.has("WEBGL_compressed_texture_pvrtc")||t.extensions.has("WEBKIT_WEBGL_compressed_texture_pvrtc")},t.capabilities.isWebGL2&&(this.workerConfig.etc1Supported=!1),this}init(){if(!this.transcoderPending){const t=new Fr(this.manager);t.setPath(this.transcoderPath),t.setWithCredentials(this.withCredentials);const e=t.loadAsync("basis_transcoder.js"),n=new Fr(this.manager);n.setPath(this.transcoderPath),n.setResponseType("arraybuffer"),n.setWithCredentials(this.withCredentials);const i=n.loadAsync("basis_transcoder.wasm");this.transcoderPending=Promise.all([e,i]).then(([r,s])=>{const o=d5.BasisWorker.toString(),a=["/* constants */","let _EngineFormat = "+JSON.stringify(d5.EngineFormat),"let _TranscoderFormat = "+JSON.stringify(d5.TranscoderFormat),"let _BasisFormat = "+JSON.stringify(d5.BasisFormat),"/* basis_transcoder.js */",r,"/* worker */",o.substring(o.indexOf("{")+1,o.lastIndexOf("}"))].join(` 6476`);this.workerSourceURL=URL.createObjectURL(new Blob([a])),this.transcoderBinary=s,this.workerPool.setWorkerCreator(()=>{const l=new Worker(this.workerSourceURL),u=this.transcoderBinary.slice(0);return l.postMessage({type:"init",config:this.workerConfig,transcoderBinary:u},[u]),l})}),Xq>0&&console.warn("THREE.KTX2Loader: Multiple active KTX2 loaders may cause performance issues. Use a single KTX2Loader instance, or call .dispose() on old instances."),Xq++}return this.transcoderPending}load(t,e,n,i){if(this.workerConfig===null)throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");const r=new Fr(this.manager);r.setResponseType("arraybuffer"),r.setWithCredentials(this.withCredentials),r.load(t,s=>{if(jq.has(s))return jq.get(s).promise.then(e).catch(i);this._createTexture(s).then(o=>e?e(o):null).catch(i)},n,i)}_createTextureFrom(t,e){const{mipmaps:n,width:i,height:r,format:s,type:o,error:a,dfdTransferFn:l,dfdFlags:u}=t;if(o==="error")return Promise.reject(a);const c=e.layerCount>1?new Aye(n,i,r,e.layerCount,s,Rn):new Nc(n,i,r,s,Rn);return c.minFilter=n.length===1?_n:Al,c.magFilter=_n,c.generateMipmaps=!1,c.needsUpdate=!0,"colorSpace"in c?c.colorSpace
6476=l===UE?"srgb":"srgb-linear":c.encoding=l===UE?3001:3e3,c.premultiplyAlpha=!!(u&wfe),c}async _createTexture(t,e={}){const n=bfe(new Uint8Array(t));if(n.vkFormat!==NH)return yye(n);const i=e,r=this.init().then(()=>this.workerPool.postMessage({type:"transcode",buffer:t,taskConfig:i},[t])).then(s=>this._createTextureFrom(s.data,n));return jq.set(t,{promise:r}),r}dispose(){return this.workerPool.dispose(),this.workerSourceURL&&URL.revokeObjectURL(this.workerSourceURL),Xq--,this}};let AA=d5;nt(AA,"BasisFormat",{ETC1S:0,UASTC_4x4:1});nt(AA,"TranscoderFormat",{ETC1:0,ETC2:1,BC1:2,BC3:3,BC4:4,BC5:5,BC7_M6_OPAQUE_ONLY:6,BC7_M5:7,PVRTC1_4_RGB:8,PVRTC1_4_RGBA:9,ASTC_4x4:10,ATC_RGB:11,ATC_RGBA_INTERPOLATED_ALPHA:12,RGBA32:13,RGB565:14,BGR565:15,RGBA4444:16});nt(AA,"EngineFormat",{RGBAFormat:mi,RGBA_ASTC_4x4_Format:Md,RGBA_BPTC_Format:T0,RGBA_ETC2_EAC_Format:Id,RGBA_PVRTC_4BPPV1_Format:Cd,RGBA_S3TC_DXT5_Format:S0,RGB_ETC1_Format:H9,RGB_ETC2_Format:wd,RGB_PVRTC_4BPPV1_Format:Td,RGB_S3TC_DXT1_Format:E0});nt(AA,"BasisWorker",function(){let t,e,n;const i=_EngineFormat,r=_TranscoderFormat,s=_BasisFormat;self.addEventListener("message",function(g){const v=g.data;switch(v.type){case"init":t=v.config,o(v.transcoderBinary);break;case"transcode":e.then(()=>{try{const{width:_,height:A,hasAlpha:y,mipmaps:q,format:E,dfdTransferFn:T,dfdFlags:C}=a(v.buffer),I=[];for(let R=0;R<q.length;++R)I.push(q[R].data.buffer);self.postMessage({type:"transcode",id:v.id,width:_,height:A,hasAlpha:y,mipmaps:q,format:E,dfdTransferFn:T,dfdFlags:C},I)}catch(_){console.error(_),self.postMessage({type:"error",id:v.id,error:_.message})}});break}});function o(g){e=new Promise(v=>{n={wasmBinary:g,onRuntimeInitialized:v},BASIS(n)}).then(()=>{n.initializeBasis(),n.KTX2File===void 0&&console.warn("THREE.KTX2Loader: Please update Basis Universal transcoder.")})}function a(g){const v=new n.KTX2File(new Uint8Array(g));function _(){v.close(),v.delete()}if(!v.isValid())throw _(),new Error("THREE.KTX2Loader: Invalid or unsupported .ktx2 file");const A=v.isUASTC()?s.UASTC_4x4:s.ETC1S,y=v.getWidth(),q=v.getHeight(),E=v.getLayers()||1,T=v.getLevels(),C=v.getHasAlpha(),I=v.getDFDTransferFunc(),R=v.getDFDFlags(),{transcoderFormat:M,engineFormat:b}=h(A,y,q,C);if(!y||!q||!T)throw _(),new Error("THREE.KTX2Loader: Invalid texture");if(!v.startTranscoding())throw _(),new Error("THREE.KTX2Loader: .startTranscoding failed");const D=[];for(let z=0;z<T;z++){const O=[];let W,$;for(let K=0;K<E;K++){const Y=v.getImageLevelInfo(z,K,0);W=Y.origWidth<4?Y.origWidth:Y.width,$=Y.origHeight<4?Y.origHeight:Y.height;const B=new Uint8Array(v.getImageTranscodedSizeInBytes(z,K,0,M));if(!v.transcodeImage(B,z,K,0,M,0,-1,-1))throw _(),new Error("THREE.KTX2Loader: .transcodeImage failed.");O.push(B)}D.push({data:m(O),width:W,height:$})}return _(),{width:y,height:q,hasAlpha:C,mipmaps:D,format:b,dfdTransferFn:I,dfdFlags:R}}const l=[{if:"astcSupported",basisFormat:[s.UASTC_4x4],transcoderFormat:[r.ASTC_4x4,r.ASTC_4x4],engineFormat:[i.RGBA_ASTC_4x4_Format,i.RGBA_ASTC_4x4_Format],priorityETC1S:1/0,priorityUASTC:1,needsPowerOfTwo:!1},{if:"bptcSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.BC7_M5,r.BC7_M5],engineFormat:[i.RGBA_BPTC_Format,i.RGBA_BPTC_Format],priorityETC1S:3,priorityUASTC:2,needsPowerOfTwo:!1},{if:"dxtSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.BC1,r.BC3],engineFormat:[i.RGB_S3TC_DXT1_Format,i.RGBA_S3TC_DXT5_Format],priorityETC1S:4,priorityUASTC:5,needsPowerOfTwo:!1},{if:"etc2Supported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.ETC1,r.ETC2],engineFormat:[i.RGB_ETC2_Format,i.RGBA_ETC2_EAC_Format],priorityETC1S:1,priorityUASTC:3,needsPowerOfTwo:!1},{if:"etc1Supported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.ETC1],engineFormat:[i.RGB_ETC1_Format],priorityETC1S:2,priorityUASTC:4,needsPowerOfTwo:!1},{if:"pvrtcSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.PVRTC1_4_RGB,r.PVRTC1_4_RGBA],engineFormat:[i.RGB_PVRTC_4BPPV1_Format,i.RGBA_PVRTC_4BPPV1_Format],priorityETC1S:5,priorityUASTC:6,needsPowerOfTwo:!0}],u=l.sort(function(g,v){return g.priorityETC1S-v.priorityETC1S}),c=l.sort(function(g,v){return g.priorityUASTC-v.priorityUASTC});function h(g,v,_,A){let y,q;const E=g===s.ETC1S?u:c;for(let T=0;T<E.length;T++){const C=E[T];if(t[C.if]&&C.basisFormat.includes(g)&&!(A&&C.transcoderFormat.length<2)&&!(C.needsPowerOfTwo&&!(f(v)&&f(_))))return y=C.transcoderFormat[A?1:0],q=C.engineFormat[A?1:0],{transcoderFormat:y,engineFormat:q}}return console.warn("THREE.KTX2Loader: No suitable compressed texture format found. Decoding to RGBA32."),y=r.RGBA32,q=i.RGBAFormat,{transcoderFormat:y,engineFormat:q}}function f(g){return g<=2?!0:(g&g-1)===0&&g!==0}function m(g){let v=0;for(let y=0;y<g.length;y++){const q=g[y];v+=q.byteLength}const _=new Uint8Array(v);let A=0;for(let y=0;y<g.length;y++){const q=g[y];
6476_.set(q,A),A+=q.byteLength}return _}});const RN={[HH]:mi,[VH]:mi,[OH]:mi,[bw]:mi,[QH]:r0,[zH]:r0,[FH]:r0,[Rw]:r0,[GH]:Xh,[UH]:Xh,[Mw]:Xh,[kH]:Xh},Kq={[HH]:kr,[VH]:yi,[OH]:Rn,[bw]:Rn,[QH]:kr,[zH]:yi,[FH]:Rn,[Rw]:Rn,[GH]:kr,[UH]:yi,[Mw]:Rn,[kH]:Rn},vye={[bw]:3001,[Rw]:3001,[Mw]:3001};async function yye(t){const{vkFormat:e,pixelWidth:n,pixelHeight:i,pixelDepth:r}=t;if(RN[e]===void 0)throw new Error("THREE.KTX2Loader: Unsupported vkFormat.");const s=t.levels[0];let o,a;if(t.supercompressionScheme===LH)o=s.levelData;else if(t.supercompressionScheme===_fe)Yq||(Yq=new Promise(async u=>{const c=new Pfe;await c.init(),u(c)})),o=(await Yq).decode(s.levelData,s.uncompressedByteLength);else throw new Error("THREE.KTX2Loader: Unsupported supercompressionScheme.");Kq[e]===kr?a=new Float32Array(o.buffer,o.byteOffset,o.byteLength/Float32Array.BYTES_PER_ELEMENT):Kq[e]===yi?a=new Uint16Array(o.buffer,o.byteOffset,o.byteLength/Uint16Array.BYTES_PER_ELEMENT):a=o;const l=r===0?new ll(a,n,i):new G6e(a,n,i,r);return l.type=Kq[e],l.format=RN[e],l.encoding=vye[e]||3e3,l.needsUpdate=!0,Promise.resolve(l)}const Jq=new WeakMap,p5=class extends qr{constructor(t){super(t),this.transcoderPath="",this.transcoderBinary=null,this.transcoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL="",this.workerConfig=null}setTranscoderPath(t){return this.transcoderPath=t,this}setWorkerLimit(t){return this.workerLimit=t,this}detectSupport(t){return this.workerConfig={astcSupported:t.extensions.has("WEBGL_compressed_texture_astc"),etc1Supported:t.extensions.has("WEBGL_compressed_texture_etc1"),etc2Supported:t.extensions.has("WEBGL_compressed_texture_etc"),dxtSupported:t.extensions.has("WEBGL_compressed_texture_s3tc"),bptcSupported:t.extensions.has("EXT_texture_compression_bptc"),pvrtcSupported:t.extensions.has("WEBGL_compressed_texture_pvrtc")||t.extensions.has("WEBKIT_WEBGL_compressed_texture_pvrtc")},this}load(t,e,n,i){const r=new Fr(this.manager);r.setResponseType("arraybuffer"),r.setWithCredentials(this.withCredentials);const s=new Nc;return r.load(t,o=>{if(Jq.has(o))return Jq.get(o).promise.then(e).catch(i);this._createTexture([o]).then(function(a){s.copy(a),s.needsUpdate=!0,e&&e(s)}).catch(i)},n,i),s}parseInternalAsync(t){const{levels:e}=t,n=new Set;for(let i=0;i<e.length;i++)n.add(e[i].data.buffer);return this._createTexture(Array.from(n),{...t,lowLevel:!0})}_createTexture(t,e={}){let n,i;const r=e;let s=0;for(let a=0;a<t.length;a++)s+=t[a].byteLength;const o=this._allocateWorker(s).then(a=>(n=a,i=this.workerNextTaskID++,new Promise((l,u)=>{n._callbacks[i]={resolve:l,reject:u},n.postMessage({type:"transcode",id:i,buffers:t,taskConfig:r},t)}))).then(a=>{const{mipmaps:l,width:u,height:c,format:h}=a,f=new Nc(l,u,c,h,Rn);return f.minFilter=l.length===1?_n:Al,f.magFilter=_n,f.generateMipmaps=!1,f.needsUpdate=!0,f});return o.catch(()=>!0).then(()=>{n&&i&&(n._taskLoad-=s,delete n._callbacks[i])}),Jq.set(t[0],{promise:o}),o}_initTranscoder(){if(!this.transcoderPending){const t=new Fr(this.manager);t.setPath(this.transcoderPath),t.setWithCredentials(this.withCredentials);const e=new Promise((r,s)=>{t.load("basis_transcoder.js",r,void 0,s)}),n=new Fr(this.manager);n.setPath(this.transcoderPath),n.setResponseType("arraybuffer"),n.setWithCredentials(this.withCredentials);const i=new Promise((r,s)=>{n.load("basis_transcoder.wasm",r,void 0,s)});this.transcoderPending=Promise.all([e,i]).then(([r,s])=>{const o=p5.BasisWorker.toString(),a=["/* constants */","let _EngineFormat = "+JSON.stringify(p5.EngineFormat),"let _TranscoderFormat = "+JSON.stringify(p5.TranscoderFormat),"let _BasisFormat = "+JSON.stringify(p5.BasisFormat),"/* basis_transcoder.js */",r,"/* worker */",o.substring(o.indexOf("{")+1,o.lastIndexOf("}"))].join(` 6477`);this.workerSourceURL=URL.createObjectURL(new Blob([a])),this.transcoderBinary=s})}return this.transcoderPending}_allocateWorker(t){return this._initTranscoder().then(()=>{if(this.workerPool.length<this.workerLimit){const n=new Worker(this.workerSourceURL);n._callbacks={},n._taskLoad=0,n.postMessage({type:"init",config:this.workerConfig,transcoderBinary:this.transcoderBinary}),n.onmessage=function(i){const r=i.data;switch(r.type){case"transcode":n._callbacks[r.id].resolve(r);break;case"error":n._callbacks[r.id].reject(r);break;default:console.error('THREE.BasisTextureLoader: Unexpected message, "'+r.type+'"')}},this.workerPool.push(n)}else this.workerPool.sort(function(n,i){return n._taskLoad>i._taskLoad?-1:1});const e=this.workerPool[this.workerPool.length-1];return e._taskLoad+=t,e})}dispose(){for(let t=0;t<this.workerPool.length;t++)this.workerPool[t].terminate();return this.workerPool.length=0,this}};let vA=p5;nt(vA,"BasisFormat",{ETC1S:0,UASTC_4x4:1});nt(vA,"TranscoderFormat",{ETC1:0,ETC2:1,BC1:2,BC3:3,BC4:4,BC5:5,BC7_M6_OPAQUE_ONLY:6,BC7_M5:7,PVRTC1_4_RGB:8,PVRTC1_4_RGBA:9,ASTC_4x4:10,ATC_RGB:11,ATC_RGBA_INTERPOLATED_ALPHA:12,RGBA32:13,RGB565:14,BGR565:15,RGBA4444:16});nt(vA,"EngineFormat",{RGBAFormat:mi,RGBA_ASTC_4x4_Format:Md,RGBA_BPTC_Format:T0,RGBA_ETC2_EAC_Format:Id,RGBA_PVRTC_4BPPV1_Format:Cd,RGBA_S3TC_DXT5_Format:S0,RGB_ETC1_Format:H9,RGB_ETC2_Format:wd,RGB_PVRTC_4BPPV1_Format:Td,RGB_S3TC_DXT1_Format:E0});nt(vA,"BasisWorker",function(){let t,e,n;const i=_EngineFormat,r=_TranscoderFormat,s=_BasisFormat;onmessage=function(y){const q=y.data;switch(q.type){case"init":t=q.config,o(q.transcoderBinary);break;case"transcode":e.then(()=>{try{const{width:E,height:T,hasAlpha:C,mipmaps:I,format:R}=q.taskConfig.lowLevel?a(q.taskConfig):l(q.buffers[0]),M=[];for(let b=0;
6477b<I.length;++b)M.push(I[b].data.buffer);self.postMessage({type:"transcode",id:q.id,width:E,height:T,hasAlpha:C,mipmaps:I,format:R},M)}catch(E){console.error(E),self.postMessage({type:"error",id:q.id,error:E.message})}});break}};function o(y){e=new Promise(q=>{n={wasmBinary:y,onRuntimeInitialized:q},BASIS(n)}).then(()=>{n.initializeBasis()})}function a(y){const{basisFormat:q,width:E,height:T,hasAlpha:C}=y,{transcoderFormat:I,engineFormat:R}=f(q,E,T,C),M=n.getBytesPerBlockOrPixel(I);m(n.isFormatSupported(I),"THREE.BasisTextureLoader: Unsupported format.");const b=[];if(q===s.ETC1S){const D=new n.LowLevelETC1SImageTranscoder,{endpointCount:z,endpointsData:O,selectorCount:W,selectorsData:$,tablesData:K}=y.globalData;try{let Y;Y=D.decodePalettes(z,O,W,$),m(Y,"THREE.BasisTextureLoader: decodePalettes() failed."),Y=D.decodeTables(K),m(Y,"THREE.BasisTextureLoader: decodeTables() failed.");for(let B=0;B<y.levels.length;B++){const U=y.levels[B],F=y.globalData.imageDescs[B],k=_(I,U.width,U.height),Q=new Uint8Array(k);Y=D.transcodeImage(I,Q,k/M,U.data,g(I,U.width),v(I,U.height),U.width,U.height,U.index,F.rgbSliceByteOffset,F.rgbSliceByteLength,F.alphaSliceByteOffset,F.alphaSliceByteLength,F.imageFlags,C,!1,0,0),m(Y,"THREE.BasisTextureLoader: transcodeImage() failed for level "+U.index+"."),b.push({data:Q,width:U.width,height:U.height})}}finally{D.delete()}}else for(let D=0;D<y.levels.length;D++){const z=y.levels[D],O=_(I,z.width,z.height),W=new Uint8Array(O),$=n.transcodeUASTCImage(I,W,O/M,z.data,g(I,z.width),v(I,z.height),z.width,z.height,z.index,0,z.data.byteLength,0,C,!1,0,0,-1,-1);m($,"THREE.BasisTextureLoader: transcodeUASTCImage() failed for level "+z.index+"."),b.push({data:W,width:z.width,height:z.height})}return{width:E,height:T,hasAlpha:C,mipmaps:b,format:R}}function l(y){const q=new n.BasisFile(new Uint8Array(y)),E=q.isUASTC()?s.UASTC_4x4:s.ETC1S,T=q.getImageWidth(0,0),C=q.getImageHeight(0,0),I=q.getNumLevels(0),R=q.getHasAlpha();function M(){q.close(),q.delete()}const{transcoderFormat:b,engineFormat:D}=f(E,T,C,R);if(!T||!C||!I)throw M(),new Error("THREE.BasisTextureLoader: Invalid texture");if(!q.startTranscoding())throw M(),new Error("THREE.BasisTextureLoader: .startTranscoding failed");const z=[];for(let O=0;O<I;O++){const W=q.getImageWidth(0,O),$=q.getImageHeight(0,O),K=new Uint8Array(q.getImageTranscodedSizeInBytes(0,O,b));if(!q.transcodeImage(K,0,O,b,0,R))throw M(),new Error("THREE.BasisTextureLoader: .transcodeImage failed.");z.push({data:K,width:W,height:$})}return M(),{width:T,height:C,hasAlpha:R,mipmaps:z,format:D}}const u=[{if:"astcSupported",basisFormat:[s.UASTC_4x4],transcoderFormat:[r.ASTC_4x4,r.ASTC_4x4],engineFormat:[i.RGBA_ASTC_4x4_Format,i.RGBA_ASTC_4x4_Format],priorityETC1S:1/0,priorityUASTC:1,needsPowerOfTwo:!1},{if:"bptcSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.BC7_M5,r.BC7_M5],engineFormat:[i.RGBA_BPTC_Format,i.RGBA_BPTC_Format],priorityETC1S:3,priorityUASTC:2,needsPowerOfTwo:!1},{if:"dxtSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.BC1,r.BC3],engineFormat:[i.RGB_S3TC_DXT1_Format,i.RGBA_S3TC_DXT5_Format],priorityETC1S:4,priorityUASTC:5,needsPowerOfTwo:!1},{if:"etc2Supported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.ETC1,r.ETC2],engineFormat:[i.RGB_ETC2_Format,i.RGBA_ETC2_EAC_Format],priorityETC1S:1,priorityUASTC:3,needsPowerOfTwo:!1},{if:"etc1Supported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.ETC1,r.ETC1],engineFormat:[i.RGB_ETC1_Format,i.RGB_ETC1_Format],priorityETC1S:2,priorityUASTC:4,needsPowerOfTwo:!1},{if:"pvrtcSupported",basisFormat:[s.ETC1S,s.UASTC_4x4],transcoderFormat:[r.PVRTC1_4_RGB,r.PVRTC1_4_RGBA],engineFormat:[i.RGB_PVRTC_4BPPV1_Format,i.RGBA_PVRTC_4BPPV1_Format],priorityETC1S:5,priorityUASTC:6,needsPowerOfTwo:!0}],c=u.sort(function(y,q){return y.priorityETC1S-q.priorityETC1S}),h=u.sort(function(y,q){return y.priorityUASTC-q.priorityUASTC});function f(y,q,E,T){let C,I;const R=y===s.ETC1S?c:h;for(let M=0;M<R.length;M++){const b=R[M];if(t[b.if]&&b.basisFormat.includes(y)&&!(b.needsPowerOfTwo&&!(A(q)&&A(E))))return C=b.transcoderFormat[T?1:0],I=b.engineFormat[T?1:0],{transcoderFormat:C,engineFormat:I}}return console.warn("THREE.BasisTextureLoader: No suitable compressed texture format found. Decoding to RGBA32."),C=r.RGBA32,I=i.RGBAFormat,{transcoderFormat:C,engineFormat:I}}function m(y,q){if(!y)throw new Error(q)}function g(y,q){return Math.ceil(q/n.getFormatBlockWidth(y))}function v(y,q){return Math.ceil(q/n.getFormatBlockHeight(y))}function _(y,q,E){const T=n.getBytesPerBlockOrPixel(y);if(n.formatIsUncompressed(y))return q*E*T;if(y===r.PVRTC1_4_RGB||y===r.PVRTC1_4_RGBA){const C=q+3&-4,I=E+3&-4;return(Math.max(8,C)*Math.max(8,I)*4+7)/8}return g(y,q)*v(y,E)*T}function A(y){return y<=2?!0:(y&y-1)===0&&y!==0}});const bN=G.forwardRef(function({children:e,disable:n,disableX:i,disableY:r,disableZ:s,left:o,right:a,top:l,bottom:u,front:c,back:h,onCentered:f,precise:m=!0,cacheKey:g=0,...v},_){const A=G.useRef(null),y=G.useRef(null),q=G.useRef(null);return G.useLayoutEffect(()=>{y.current.matrixWorld.identity();const E=new Ta().setFromObject(q.current,m),T=new L,C=new jo,I=E.max.x-E.min.x,R=E.max.y-E.min.y,M=E.max.z-E.min.z;E.getCenter(T),E.getBoundingSphere(C);const b=l?R/2:u?-R/2:0,D=o?-I/2:a?I/2:0,z=c?M/2:h?-M/2:0;y.current.position.set(n||i?0:-T.x+D,n||r?0:-T.y+b,n||s?0:-T.z+z),typeof f<"u"&&f({parent:A.current.parent,container:A.current,width:I,height:R,depth:M,boundingBox:E,boundingSphere:C,center:T,verticalAlignment:b,horizontalAlignment:D,depthAlignment:z})},[g,f,l,o,c,n,i,r,s,m,a,u,h]),G.useImperativeHandle(_,()=>A.current,[]),G.createElement("group",Qd({ref:A},v),G.createElement("group",{ref:y},G.createElement("group",{ref:q},e)))});function V$({title:t,id:e,imgOrColor:n,meshProps:i,textColor:r="#ffffff",from:s}){const o=G.useRef(),a=G.useRef(),l=b4(),u=t!=="Transmissions"?hfe(t,9):["Trans-","missions"],c=rt(A=>A.camera),h=rt(A=>A.setCurrentContent);d2.registerPlugin(f4);function f(){if(c){const y=c.position;if(a.current&&a.current.position){const q=new L;a.current.getWorldPosition(q);var A=d2.timeline();A.to(c.position,{x:q.x,y:q.y,z:q.z,ease:f4.create("custom","M0,0 C0.138,0.042 0.369,0.022 0.462,0.236 0.466,0.255 0.502,0.417 0.508,0.448 0.595,0.897 0.829,1 1,1 "),duration:.4,onComplete:()=>{h(e),l("/content/"+e,{state:{from:s}})}}),A.to(c.position,{x:y.x,y:y.y,z:y.z,duration:.5,delay:1})}}else h(e),l("/content/"+e,{state:{from:s}})}let m=0;const g=Math.random()*3.14,v=Math.random()*3.14,_=Math.random()*3.14;return G4((A,y)=>{var q,E,T,C,I,R;a.current&&a.current.rotation&&a.current.position&&(m+=y,a.current.rotation.x+=0,a.current.rotation.x=Math.sin(m/2.5+g)*3.14/5+((q=i==null?void 0:i.rotation)!=null&&q[0]?(E=i==null?void 0:i.rotation)==null?void 0:E[0]:0),a.current.rotation.y=Math.sin(m/2+v)*3.14/5+((T=i==null?void 0:i.rotation)!=null&&T[1]?(C=i==null?void 0:i.rotation)==null?void 0:C[1]:0),a.current.rotation.z=Math.sin(m/3+_)*3.14/6+((I=i==null?void 0:i.rotation)!=null&&I[2]?(R=i==null?void 0:i.rotation)==null?void 0:R[2]:0))}),dt("group",{ref:a,...i,onClick:f,children:[dt("mesh",{ref:o,children:[ee("boxGeometry",{args:[.8,.8,.8]}),typeof n=="string"?ee("meshStandardMaterial",{color:n}):ee("meshStandardMaterial",{map:n})]}),ee(bN,{position:[.45,0,0],children:u.map((A,y)=>ee(bN,{position:[0,.075*(u.length-y*2-1),0],children:ee(afe,{text:A,color:r,textProps:{height:.02,size:.1,curveSegments:2},meshProps:{rotation:[0,Math.PI/2,0]}},y)},y))})]})}function G$(t,e,n=[0,0,0]){const i=[],r=2*Math.PI/e;for(let s=0;s<e;s++){const o=s*r,a=n[0]+t*Math.cos(o),l=n[1]+t*Math.sin(o),u=n[2];i.push([a,l,u])}return i}var U0,S4,jl,A9,H$,v9,W$,y9,$$,q9,j$;class Q${constructor({thresholdX:e=50,thresholdY:n=100,horizontalSwipe:i=!0,handleSwipe:r}){Nu(this,A9);Nu(this,v9);Nu(this,y9);Nu(this,q9);mf(this,"startX",0);mf(this,"startY",0);mf(this,"isSwiping",!1);mf(this,"currentTouchID",null);Nu(this,U0,void 0);Nu(this,S4,void 0);Nu(this,jl,void 0);this.thresholdX=e,this.thresholdY=n,this.horizontalSwipe=i,this.handleSwipe=r,xp(this,U0,s=>gf(this,A9,H$).call(this,s)),xp(this,jl,s=>gf(this,v9,W$).call(this,s)),xp(this,jl,s=>gf(this,y9,$$).call(this,s))}addSwipeEvent(){document.addEventListener("touchstart",Ll(this,U0)),document.addEventListener("touchmove",Ll(this,S4)),document.addEventListener("touchend",Ll(this,jl)),document.addEventListener("touchcancel",Ll(this,jl))}removeSwipeEvent(){document.removeEventListener("touchstart",Ll(this,U0)),document.removeEventListener("touchmove",Ll(this,S4)),document.removeEventListener("touchend",Ll(this,jl)),document.removeEventListener("touchcancel",Ll(this,jl))}}U0=new WeakMap,S4=new WeakMap,jl=new WeakMap,A9=new WeakSet,H$=function(e){this.currentTouchID===null&&e.touches.length===1&&(this.startX=e.touches[0].pageX,this.startY=e.touches[0].pageY,this.isSwiping=!0,this.currentTouchID=e.touches[0].identifier)},v9=new WeakSet,W$=function(e){this.isSwiping&&e.touches.length>2&&(this.isSwiping=!1,this.currentTouchID=null)},y9=new WeakSet,$$=function(e){if(this.isSwiping&&e.changedTouches[0].identifier===this.currentTouchID){const n=e.changedTouches[0].pageX-this.startX,i=e.changedTouches[0].pageY-this.startY;gf(this,q9,j$).call(this,n,i),this.isSwiping=!1,this.currentTouchID=null}},q9=new WeakSet,j$=function(e,n){this.horizontalSwipe?Math.abs(e)>this.thresholdX&&Math.abs(n)<=this.thresholdY&&(e>0?this.handleSwipe(-1):this.handleSwipe(1)):Math.abs(e)<=this.thresholdX&&Math.abs(n)>this.thresholdY&&(n>0?this.handleSwipe(-1):this.handleSwipe(1))};function lI(t,e){const n=100/t;return typeof n=="number"?`hsl(${170+n*e}, 71%, 27%)`:"hsl(200, 71%, 27%)"}function qye({planetID:t,radius:e,rotationY:n=0}){const i=G.useRef(),r=rt(_=>_.deviceType),s=rt(_=>_.contentsInfo[t]),o=rt(_=>_.onPlanets[t]),a=s.length,l=2*Math.PI/a,u=G.useRef(0),c=G.useMemo(()=>G$(e,a),[e,a]),h=G.useMemo(()=>s.map(f),[s]);G.useEffect(()=>{var _;(_=i.current)!=null&&_.rotation&&(i.current.rotation.z=u.current+(r===Bo?Math.PI/2:0))},[r]);function f(_,A){var T;const y=c[A];let q=new L(1,0,0).angleTo(new L(...y));q=A<a/2?-q:q;let E=!0;return _&&_.name?ee(V$,{title:_.name,from:"/",id:_.id,imgOrColor:(T=Ys==null?void 0:Ys[t])!=null&&T[_.id]?Ys[t][_.id]:lI(s.length,A),meshProps:{visible:E,rotation:[-Math.PI/2,q+n,0],position:y}},A):null}function m(_){var C;const A=rt.getState().deviceType,y=rt.getState().currentCategory,q=rt.getState().currentContent,E=rt.getState().hasScrolled,T=rt.getState().setHasScrolled;y!==null&&q===null&&((C=i.current)!=null&&C.rotation)&&(E||T(!0),u.current+=_*l,d2.to(i.current.rotation,{z:u.current+(A===Bo?Math.PI/2:0),duration:.5}))}function g(_){_.deltaY!==0&&m(_.deltaY/Math.abs(_.deltaY))}function v(_){m(_)}return G.useEffect(()=>{const _=new Q$({handleSwipe:v});return addEventListener("wheel",g,{passive:!0}),_.addSwipeEvent(),()=>{removeEventListener("wheel",g),_.removeSwipeEvent()}},[]),o&&ee("group",{ref:i,rotation:[Math.PI/2,0,u.current+(r===Bo?Math.PI/2:0)],position:[0,.5,0],children:h})}function _ye(t,e=!1){const n=t[0].index!==null,i=new Set(Object.keys(t[0].attributes)),r=new Set(Object.keys(t[0].morphAttributes)),s={},o={}
6477,a=t[0].morphTargetsRelative,l=new Bt;let u=0;for(let c=0;c<t.length;++c){const h=t[c];let f=0;if(n!==(h.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(const m in h.attributes){if(!i.has(m))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+'. All geometries must have compatible attributes; make sure "'+m+'" attribute exists among all geometries, or in none of them.'),null;s[m]===void 0&&(s[m]=[]),s[m].push(h.attributes[m]),f++}if(f!==i.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+". Make sure all geometries have the same number of attributes."),null;if(a!==h.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(const m in h.morphAttributes){if(!r.has(m))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+". .morphAttributes must be consistent throughout all geometries."),null;o[m]===void 0&&(o[m]=[]),o[m].push(h.morphAttributes[m])}if(e){let m;if(n)m=h.index.count;else if(h.attributes.position!==void 0)m=h.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+c+". The geometry must have either an index or a position attribute"),null;l.addGroup(u,m,c),u+=m}}if(n){let c=0;const h=[];for(let f=0;f<t.length;++f){const m=t[f].index;for(let g=0;g<m.count;++g)h.push(m.getX(g)+c);c+=t[f].attributes.position.count}l.setIndex(h)}for(const c in s){const h=PN(s[c]);if(!h)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+c+" attribute."),null;l.setAttribute(c,h)}for(const c in o){const h=o[c][0].length;if(h===0)break;l.morphAttributes=l.morphAttributes||{},l.morphAttributes[c]=[];for(let f=0;f<h;++f){const m=[];for(let v=0;v<o[c].length;++v)m.push(o[c][v][f]);const g=PN(m);if(!g)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+c+" morphAttribute."),null;l.morphAttributes[c].push(g)}}return l}function PN(t){let e,n,i,r=-1,s=0;for(let u=0;u<t.length;++u){const c=t[u];if(c.isInterleavedBufferAttribute)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. InterleavedBufferAttributes are not supported."),null;if(e===void 0&&(e=c.array.constructor),e!==c.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(n===void 0&&(n=c.itemSize),n!==c.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(i===void 0&&(i=c.normalized),i!==c.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(r===-1&&(r=c.gpuType),r!==c.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;s+=c.array.length}const o=new e(s);let a=0;for(let u=0;u<t.length;++u)o.set(t[u].array,a),a+=t[u].array.length;const l=new pn(o,n,i);return r!==void 0&&(l.gpuType=r),l}function xye(...t){return _ye(t.map(n=>(n.updateMatrixWorld(),n.geometry.applyMatrix4(n.matrixWorld))),!0)}function Eye(t,{position:e=[0,0,0],rotation:n=[0,0,0],size:i=.5,height:r=.25,curveSegments:s=8,bevelEnabled:o=!1,bevelThickness:a=.5,bevelSize:l=.5,bevelOffset:u=0,bevelSegments:c=2,color:h=11320255,withMaterial:f=!1}){const m=new PH(t,{font:BH,size:i,height:r,curveSegments:s,bevelEnabled:o,bevelThickness:a,bevelSize:l,bevelOffset:u,bevelSegments:c}),g=f?new mg({color:h}):null,v=new yn(m,g);return v.position.set(...e),v.rotation.set(...n),v}const Sye=t=>({lights:null,setLights:e=>t({lights:e}),meshes:[],addMeshes:e=>t(n=>({meshes:[...n.meshes,e]})),removeMesh:e=>t(n=>({meshes:n.meshes.filter(i=>e!==i.uuid)}))}),q4=AC(vC(Sye));function q2(t){return t!==null&&!Array.isArray(t)&&typeof t=="object"&&Object.keys(t).length>0}function Tye(t){return t<10?6-Math.floor((t-1)/3):t<25?3:2}function Cye({radius:t,text:e,planetID:n,repGap:i=4,textSize:r=.55,repetitions:s,color:o=11320255}){const a=G.useRef(),l=G.useRef(),u=q4(y=>y.addMeshes),c=q4(y=>y.removeMesh),h=rt(y=>y.onPlanets[n]),f=s||Tye(e.length),m=(e.length+i)*f,g=G.useMemo(()=>G$(t,m),[t,m]);r=.5*Math.sqrt(2*t*t*(1-Math.cos(Math.PI*2/m)+.015));function v(y,q){let E=new L(1,0,0).angleTo(new L(...y))+Math.PI/2;E=q<m/2?E:-E+Math.PI;const T=q%(e.length+i),C=e[T]?e[T]:"";return Eye(C,{position:y,rotation:[Math.PI/2,E,0],size:r,height:.08})}let _=0;G4((y,q)=>{a.current!=null&&(_+=q,a.current.rotation.z=-_/5)}),G.useEffect(()=>(q2(a.current)&&(l.current=a.current.uuid,u(a.current)),()=>{c(l.current)}),[]);function A(){const y=g.map(v);return xye(...y)}return ee("mesh",{geometry:A(),ref:a,visible:!h,position:[0,-r/2,0],rotation:[Math.PI/2,Math.PI,0],children:ee("meshBasicMaterial",{color:o})})}function wye({planetID:t,radius:e}){const n=rt(i=>i.onPlanets[t]);return dt("mesh",{visible:n,rotation:[Math.PI/2,0,0],children:[ee("planeGeometry",{args:[e,e]}),ee("meshStandardMaterial",{map:fle,side:ts,opacity:.5,transparent:!0})]})}function Iye(t,e,n){const i=rt.getState().deviceType,r=rt.getState().gsapAnimData[i].duration;rt.getState().currentCategory===null&&(rt.getState().setCurrentCategory(t),rt.getState().setOnPlanet(t,!0),MH(e,n,r))}function Mye({size:t=1,id:e,category:n,position:i=[0,0,0],color:r=16777215}){const s=G.useRef(),o=rt(f=>f.deviceType),a=rt(f=>f.camPositions[o][e]),l=rt(f=>f.planetsRingColor),u=2.8*t,c=20*.85*t,h=8*.7*t;return dt("group",{position:i,children:[dt("group",{ref:s,onClick:Iye.bind(this,e,a,i),children:[ee(ple,{color:r,size:t}
6477),ee(Cye,{planetID:e,radius:u,text:n,color:l[e]}),ee(qye,{planetID:e,radius:h})]}),ee(wye,{planetID:e,radius:c})]})}function Rye(t){const e=rt(a=>a.categories),n=rt(a=>a.camera),i=rt(a=>a.deviceType),r=rt(a=>a.planetsPos[i]),s=rt(a=>a.planetsColor),o=rt(a=>a.currentCategory);return n&&ee("group",{children:e.map((a,l)=>{const u=lfe(a.name);let c;return a.sub_planet===!0&&(c=.8),(!o||o===l.toString())&&ee(Mye,{size:c,id:a.id,category:u,color:s[l],position:r[l]},l)})})}function X$(t){const{scene:e}=yg();return G.useEffect(()=>{e.background=t.cubeMap,e.backgroundIntensity=.52},[]),null}function bye(t){const{camera:e}=yg(),n=rt(l=>l.deviceType),i=rt(l=>l.setCamera),r=rt(l=>l.currentCategory),s=rt(l=>l.camPositions[n]),o=rt(l=>l.planetsPos[n]),a=rt(l=>l.animation);return G.useEffect(()=>{i(e)},[]),G.useEffect(()=>{a!==null&&typeof(a==null?void 0:a.kill)=="function"&&a.kill();const l=r?o[r]:[0,0,0],u=r?s[r]:s.start;e.position.set(...u),e.lookAt(new L(...l))},[n]),ee(bc,{})}const Pye=t=>({isAudioOn:!1,setAudio:e=>t({isAudioOn:e}),currentTime:0,setCurrentTime:e=>t({currentTime:e})}),m5=AC(vC(Pye));function Bye({musicPath:t,className:e}){const n=m5(a=>a.isAudioOn),i=m5(a=>a.setAudio),r=m5(a=>a.currentTime),s=m5(a=>a.setCurrentTime),o=G.useMemo(()=>{const a=new Audio(t);return a.autoplay=!1,a.loop=!0,a.volume=.25,a.currentTime=r,a},[]);return G.useEffect(()=>()=>{o.pause(),o.remove(),s(o.currentTime)},[]),G.useEffect(()=>{n?o.play():o.pause()},[n]),o&&ee("img",{className:e,src:n?"/Icons/volume-on-white.svg":"/Icons/volume-x-white.svg",alt:"Audio",onClick:()=>{n?(console.log("paused"),i(!1)):(console.log("play"),i(!0))}})}const Y$=G.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),yA=G.createContext({}),qA=G.createContext(null),_A=typeof document<"u",xA=_A?G.useLayoutEffect:G.useEffect,K$=G.createContext({strict:!1});function Dye(t,e,n,i){const{visualElement:r}=G.useContext(yA),s=G.useContext(K$),o=G.useContext(qA),a=G.useContext(Y$).reducedMotion,l=G.useRef();i=i||s.renderer,!l.current&&i&&(l.current=i(t,{visualState:e,parent:r,props:n,presenceContext:o,blockInitialAnimation:o?o.initial===!1:!1,reducedMotionConfig:a}));const u=l.current;G.useInsertionEffect(()=>{u&&u.update(n,o)});const c=G.useRef(!!window.HandoffAppearAnimations);return xA(()=>{u&&(u.render(),c.current&&u.animationState&&u.animationState.animateChanges())}),G.useEffect(()=>{u&&(u.updateFeatures(),!c.current&&u.animationState&&u.animationState.animateChanges(),window.HandoffAppearAnimations=void 0,c.current=!1)}),u}function d0(t){return typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function Lye(t,e,n){return G.useCallback(i=>{i&&t.mount&&t.mount(i),e&&(i?e.mount(i):e.unmount()),n&&(typeof n=="function"?n(i):d0(n)&&(n.current=i))},[e])}function _4(t){return typeof t=="string"||Array.isArray(t)}function EA(t){return typeof t=="object"&&typeof t.start=="function"}const uI=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],cI=["initial",...uI];function SA(t){return EA(t.animate)||cI.some(e=>_4(t[e]))}function J$(t){return!!(SA(t)||t.variants)}function Nye(t,e){if(SA(t)){const{initial:n,animate:i}=t;return{initial:n===!1||_4(n)?n:void 0,animate:_4(i)?i:void 0}}return t.inherit!==!1?e:{}}function kye(t){const{initial:e,animate:n}=Nye(t,G.useContext(yA));return G.useMemo(()=>({initial:e,animate:n}),[BN(e),BN(n)])}function BN(t){return Array.isArray(t)?t.join(" "):t}const DN={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},x4={};for(const t in DN)x4[t]={isEnabled:e=>DN[t].some(n=>!!e[n])};function Fye(t){for(const e in t)x4[e]={...x4[e],...t[e]}}const hI=G.createContext({}),Z$=G.createContext({}),Oye=Symbol.for("motionComponentSymbol");function Uye({preloadedFeatures:t,createVisualElement:e,useRender:n,useVisualState:i,Component:r}){t&&Fye(t);function s(a,l){let u;const c={...G.useContext(Y$),...a,layoutId:zye(a)},{isStatic:h}=c,f=kye(a),m=i(a,h);if(!h&&_A){f.visualElement=Dye(r,m,c,e);const g=G.useContext(Z$),v=G.useContext(K$).strict;f.visualElement&&(u=f.visualElement.loadFeatures(c,v,t,g))}return G.createElement(yA.Provider,{value:f},u&&f.visualElement?G.createElement(u,{visualElement:f.visualElement,...c}):null,n(r,a,Lye(m,f.visualElement,l),m,h,f.visualElement))}const o=G.forwardRef(s);return o[Oye]=r,o}function zye({layoutId:t}){const e=G.useContext(hI).id;return e&&t!==void 0?e+"-"+t:t}function Vye(t){function e(i,r={}){return Uye(t(i,r))}if(typeof Proxy>"u")return e;const n=new Map;return new Proxy(e,{get:(i,r)=>(n.has(r)||n.set(r,e(r)),n.get(r))})}const Gye=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function fI(t){return typeof t!="string"||t.includes("-")?!1:!!(Gye.indexOf(t)>-1||/[A-Z]/.test(t))}const l9={};function Qye(t){Object.assign(l9,t)}const q6=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Y1=new Set(q6);function ej(t,{layout:e,layoutId:n}){return Y1.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!l9[t]||t==="opacity")}const Ls=t=>!!(t&&t.getVelocity),Hye={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Wye=q6.length;function $ye(t,{enableHardwareAcceleration:e=!0,allowTransformNone:n=!0},i,r){let s="";for(let o=0;o<Wye;o++){const a=q6[o];if(t[a]!==void 0){const l=Hye[a]||a;s+=`${l}(${t[a]}) `}}return e&&!t.z&&(s+="translateZ(0)"),s=s.trim(),r?s=r(t,i?"":s):n&&i&&(s="none"),s}const tj=t=>e=>typeof e=="string"&&e.startsWith(t),nj=tj("--"),dS=tj("var(--"),jye=/var\s*\(\s*--[\w-]+(\s*,\s*(?:(?
6477:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\)/g,Xye=(t,e)=>e&&typeof t=="number"?e.transform(t):t,Wc=(t,e,n)=>Math.min(Math.max(n,t),e),K1={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},W5={...K1,transform:t=>Wc(0,1,t)},r8={...K1,default:1},$5=t=>Math.round(t*1e5)/1e5,TA=/(-)?([\d]*\.?[\d])+/g,ij=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,Yye=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function _6(t){return typeof t=="string"}const x6=t=>({test:e=>_6(e)&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),Ju=x6("deg"),pl=x6("%"),_t=x6("px"),Kye=x6("vh"),Jye=x6("vw"),LN={...pl,parse:t=>pl.parse(t)/100,transform:t=>pl.transform(t*100)},NN={...K1,transform:Math.round},rj={borderWidth:_t,borderTopWidth:_t,borderRightWidth:_t,borderBottomWidth:_t,borderLeftWidth:_t,borderRadius:_t,radius:_t,borderTopLeftRadius:_t,borderTopRightRadius:_t,borderBottomRightRadius:_t,borderBottomLeftRadius:_t,width:_t,maxWidth:_t,height:_t,maxHeight:_t,size:_t,top:_t,right:_t,bottom:_t,left:_t,padding:_t,paddingTop:_t,paddingRight:_t,paddingBottom:_t,paddingLeft:_t,margin:_t,marginTop:_t,marginRight:_t,marginBottom:_t,marginLeft:_t,rotate:Ju,rotateX:Ju,rotateY:Ju,rotateZ:Ju,scale:r8,scaleX:r8,scaleY:r8,scaleZ:r8,skew:Ju,skewX:Ju,skewY:Ju,distance:_t,translateX:_t,translateY:_t,translateZ:_t,x:_t,y:_t,z:_t,perspective:_t,transformPerspective:_t,opacity:W5,originX:LN,originY:LN,originZ:_t,zIndex:NN,fillOpacity:W5,strokeOpacity:W5,numOctaves:NN};function dI(t,e,n,i){const{style:r,vars:s,transform:o,transformOrigin:a}=t;let l=!1,u=!1,c=!0;for(const h in e){const f=e[h];
6477if(nj(h)){s[h]=f;continue}const m=rj[h],g=Xye(f,m);if(Y1.has(h)){if(l=!0,o[h]=g,!c)continue;f!==(m.default||0)&&(c=!1)}else h.startsWith("origin")?(u=!0,a[h]=g):r[h]=g}if(e.transform||(l||i?r.transform=$ye(t.transform,n,c,i):r.transform&&(r.transform="none")),u){const{originX:h="50%",originY:f="50%",originZ:m=0}=a;r.transformOrigin=`${h} ${f} ${m}`}}const pI=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function sj(t,e,n){for(const i in e)!Ls(e[i])&&!ej(i,n)&&(t[i]=e[i])}function Zye({transformTemplate:t},e,n){return G.useMemo(()=>{const i=pI();return dI(i,e,{enableHardwareAcceleration:!n},t),Object.assign({},i.vars,i.style)},[e])}function eqe(t,e,n){const i=t.style||{},r={};return sj(r,i,t),Object.assign(r,Zye(t,e,n)),t.transformValues?t.transformValues(r):r}function tqe(t,e,n){const i={},r=eqe(t,e,n);return t.drag&&t.dragListener!==!1&&(i.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(i.tabIndex=0),i.style=r,i}const nqe=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","transformValues","custom","inherit","onLayoutAnimationStart","onLayoutAnimationComplete","onLayoutMeasure","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","ignoreStrict","viewport"]);function u9(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||nqe.has(t)}let oj=t=>!u9(t);function iqe(t){t&&(oj=e=>e.startsWith("on")?!u9(e):t(e))}try{iqe(require("@emotion/is-prop-valid").default)}catch{}function rqe(t,e,n){const i={};for(const r in t)r==="values"&&typeof t.values=="object"||(oj(r)||n===!0&&u9(r)||!e&&!u9(r)||t.draggable&&r.startsWith("onDrag"))&&(i[r]=t[r]);return i}function kN(t,e,n){return typeof t=="string"?t:_t.transform(e+n*t)}function sqe(t,e,n){const i=kN(e,t.x,t.width),r=kN(n,t.y,t.height);return`${i} ${r}`}const oqe={offset:"stroke-dashoffset",array:"stroke-dasharray"},aqe={offset:"strokeDashoffset",array:"strokeDasharray"};function lqe(t,e,n=1,i=0,r=!0){t.pathLength=1;const s=r?oqe:aqe;t[s.offset]=_t.transform(-i);const o=_t.transform(e),a=_t.transform(n);t[s.array]=`${o} ${a}`}function mI(t,{attrX:e,attrY:n,attrScale:i,originX:r,originY:s,pathLength:o,pathSpacing:a=1,pathOffset:l=0,...u},c,h,f){if(dI(t,u,c,f),h){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:m,style:g,dimensions:v}=t;m.transform&&(v&&(g.transform=m.transform),delete m.transform),v&&(r!==void 0||s!==void 0||g.transform)&&(g.transformOrigin=sqe(v,r!==void 0?r:.5,s!==void 0?s:.5)),e!==void 0&&(m.x=e),n!==void 0&&(m.y=n),i!==void 0&&(m.scale=i),o!==void 0&&lqe(m,o,a,l,!1)}const aj=()=>({...pI(),attrs:{}}),gI=t=>typeof t=="string"&&t.toLowerCase()==="svg";function uqe(t,e,n,i){const r=G.useMemo(()=>{const s=aj();return mI(s,e,{enableHardwareAcceleration:!1},gI(i),t.transformTemplate),{...s.attrs,style:{...s.style}}},[e]);if(t.style){const s={};sj(s,t.style,t),r.style={...s,...r.style}}return r}function cqe(t=!1){return(n,i,r,{latestValues:s},o)=>{const l=(fI(n)?uqe:tqe)(i,s,o,n),c={...rqe(i,typeof n=="string",t),...l,ref:r},{children:h}=i,f=G.useMemo(()=>Ls(h)?h.get():h,[h]);return G.createElement(n,{...c,children:f})}}const AI=t=>t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();function lj(t,{style:e,vars:n},i,r){Object.assign(t.style,e,r&&r.getProjectionStyles(i));for(const s in n)t.style.setProperty(s,n[s])}const uj=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function cj(t,e,n,i){lj(t,e,void 0,i);for(const r in e.attrs)t.setAttribute(uj.has(r)?r:AI(r),e.attrs[r])}function vI(t,e){const{style:n}=t,i={};for(const r in n)(Ls(n[r])||e.style&&Ls(e.style[r])||ej(r,t))&&(i[r]=n[r]);return i}function hj(t,e){const n=vI(t,e);for(const i in t)if(Ls(t[i])||Ls(e[i])){const r=q6.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;n[r]=t[i]}return n}function yI(t,e,n,i={},r={}){return typeof e=="function"&&(e=e(n!==void 0?n:t.custom,i,r)),typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"&&(e=e(n!==void 0?n:t.custom,i,r)),e}function qI(t){const e=G.useRef(null);return e.current===null&&(e.current=t()),e.current}const c9=t=>Array.isArray(t),hqe=t=>!!(t&&typeof t=="object"&&t.mix&&t.toValue),fqe=t=>c9(t)?t[t.length-1]||0:t;function V8(t){const e=Ls(t)?t.get():t;return hqe(e)?e.toValue():e}function dqe({scrapeMotionValuesFromProps:t,createRenderState:e,onMount:n},i,r,s){const o={latestValues:pqe(i,r,s,t),renderState:e()};return n&&(o.mount=a=>n(i,a,o)),o}const fj=t=>(e,n)=>{const i=G.useContext(yA),r=G.useContext(qA),s=()=>dqe(t,e,i,r);return n?s():qI(s)};function pqe(t,e,n,i){const r={},s=i(t,{});for(const f in s)r[f]=V8(s[f]);let{initial:o,animate:a}=t;const l=SA(t),u=J$(t);e&&u&&!l&&t.inherit!==!1&&(o===void 0&&(o=e.initial),a===void 0&&(a=e.animate));let c=n?n.initial===!1:!1;c=c||o===!1;const h=c?a:o;return h&&typeof h!="boolean"&&!EA(h)&&(Array.isArray(h)?h:[h]).forEac
6477h(m=>{const g=yI(t,m);if(!g)return;const{transitionEnd:v,transition:_,...A}=g;for(const y in A){let q=A[y];if(Array.isArray(q)){const E=c?q.length-1:0;q=q[E]}q!==null&&(r[y]=q)}for(const y in v)r[y]=v[y]}),r}const Ai=t=>t;class FN{constructor(){this.order=[],this.scheduled=new Set}add(e){if(!this.scheduled.has(e))return this.scheduled.add(e),this.order.push(e),!0}remove(e){const n=this.order.indexOf(e);n!==-1&&(this.order.splice(n,1),this.scheduled.delete(e))}clear(){this.order.length=0,this.scheduled.clear()}}function mqe(t){let e=new FN,n=new FN,i=0,r=!1,s=!1;const o=new WeakSet,a={schedule:(l,u=!1,c=!1)=>{const h=c&&r,f=h?e:n;return u&&o.add(l),f.add(l)&&h&&r&&(i=e.order.length),l},cancel:l=>{n.remove(l),o.delete(l)},process:l=>{if(r){s=!0;return}if(r=!0,[e,n]=[n,e],n.clear(),i=e.order.length,i)for(let u=0;u<i;u++){const c=e.order[u];c(l),o.has(c)&&(a.schedule(c),t())}r=!1,s&&(s=!1,a.process(l))}};return a}const s8=["prepare","read","update","preRender","render","postRender"],gqe=40;function Aqe(t,e){let n=!1,i=!0;const r={delta:0,timestamp:0,isProcessing:!1},s=s8.reduce((h,f)=>(h[f]=mqe(()=>n=!0),h),{}),o=h=>s[h].process(r),a=()=>{const h=performance.now();n=!1,r.delta=i?1e3/60:Math.max(Math.min(h-r.timestamp,gqe),1),r.timestamp=h,r.isProcessing=!0,s8.forEach(o),r.isProcessing=!1,n&&e&&(i=!1,t(a))},l=()=>{n=!0,i=!0,r.isProcessing||t(a)};return{schedule:s8.reduce((h,f)=>{const m=s[f];return h[f]=(g,v=!1,_=!1)=>(n||l(),m.schedule(g,v,_)),h},{}),cancel:h=>s8.forEach(f=>s[f].cancel(h)),state:r,steps:s}}const{schedule:Nn,cancel:qu,state:Pr,steps:Zq}=Aqe(typeof requestAnimationFrame<"u"?requestAnimationFrame:Ai,!0),vqe={useVisualState:fj({scrapeMotionValuesFromProps:hj,createRenderState:aj,onMount:(t,e,{renderState:n,latestValues:i})=>{Nn.read(()=>{try{n.dimensions=typeof e.getBBox=="function"?e.getBBox():e.getBoundingClientRect()}catch{n.dimensions={x:0,y:0,width:0,height:0}}}),Nn.render(()=>{mI(n,i,{enableHardwareAcceleration:!1},gI(e.tagName),t.transformTemplate),cj(e,n)})}})},yqe={useVisualState:fj({scrapeMotionValuesFromProps:vI,createRenderState:pI})};function qqe(t,{forwardMotionProps:e=!1},n,i){return{...fI(t)?vqe:yqe,preloadedFeatures:n,useRender:cqe(e),createVisualElement:i,Component:t}}function eu(t,e,n,i={passive:!0}){return t.addEventListener(e,n,i),()=>t.removeEventListener(e,n)}const dj=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1;function CA(t,e="page"){return{point:{x:t[e+"X"],y:t[e+"Y"]}}}const _qe=t=>e=>dj(e)&&t(e,CA(e));function iu(t,e,n,i){return eu(t,e,_qe(n),i)}const xqe=(t,e)=>n=>e(t(n)),Mc=(...t)=>t.reduce(xqe);function pj(t){let e=null;return()=>{const n=()=>{e=null};return e===null?(e=t,n):!1}}const ON=pj("dragHorizontal"),UN=pj("dragVertical");function mj(t){let e=!1;if(t==="y")e=UN();else if(t==="x")e=ON();else{const n=ON(),i=UN();n&&i?e=()=>{n(),i()}:(n&&n(),i&&i())}return e}function gj(){const t=mj(!0);return t?(t(),!1):!0}class uh{constructor(e){this.isMounted=!1,this.node=e}update(){}}function zN(t,e){const n="pointer"+(e?"enter":"leave"),i="onHover"+(e?"Start":"End"),r=(s,o)=>
6477{if(s.type==="touch"||gj())return;const a=t.getProps();t.animationState&&a.whileHover&&t.animationState.setActive("whileHover",e),a[i]&&Nn.update(()=>a[i](s,o))};return iu(t.current,n,r,{passive:!t.getProps()[i]})}class Eqe extends uh{mount(){this.unmount=Mc(zN(this.node,!0),zN(this.node,!1))}unmount(){}}class Sqe extends uh{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=Mc(eu(this.node.current,"focus",()=>this.onFocus()),eu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const Aj=(t,e)=>e?t===e?!0:Aj(t,e.parentElement):!1;function e_(t,e){if(!e)return;const n=new PointerEvent("pointer"+t);e(n,CA(n))}class Tqe extends uh{constructor(){super(...arguments),this.removeStartListeners=Ai,this.removeEndListeners=Ai,this.removeAccessibleListeners=Ai,this.startPointerPress=(e,n)=>{if(this.removeEndListeners(),this.isPressing)return;const i=this.node.getProps(),s=iu(window,"pointerup",(a,l)=>{if(!this.checkPressEnd())return;const{onTap:u,onTapCancel:c}=this.node.getProps();Nn.update(()=>{Aj(this.node.current,a.target)?u&&u(a,l):c&&c(a,l)})},{passive:!(i.onTap||i.onPointerUp)}),o=iu(window,"pointercancel",(a,l)=>this.cancelPress(a,l),{passive:!(i.onTapCancel||i.onPointerCancel)});this.removeEndListeners=Mc(s,o),this.startPress(e,n)},this.startAccessiblePress=()=>{const e=s=>{if(s.key!=="Enter"||this.isPressing)return;const o=a=>{a.key!=="Enter"||!this.checkPressEnd()||e_("up",(l,u)=>{const{onTap:c}=this.node.getProps();c&&Nn.update(()=>c(l,u))})};this.removeEndListeners(),this.removeEndListeners=eu(this.node.current,"keyup",o),e_("down",(a,l)=>{this.startPress(a,l)})},n=eu(this.node.current,"keydown",e),i=()=>{this.isPressing&&e_("cancel",(s,o)=>this.cancelPress(s,o))},r=eu(this.node.current,"blur",i);this.removeAccessibleListeners=Mc(n,r)}}startPress(e,n){this.isPressing=!0;const{onTapStart:i,whileTap:r}=this.node.getProps();r&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),i&&Nn.update(()=>i(e,n))}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!gj()}cancelPress(e,n){if(!this.checkPressEnd())return;const{onTapCancel:i}=this.node.getProps();i&&Nn.update(()=>i(e,n))}mount(){const e=this.node.getProps(),n=iu(this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),i=eu(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=Mc(n,i)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}const pS=new WeakMap,t_=new WeakMap,Cqe=t=>{const e=pS.get(t.target);e&&e(t)},wqe=t=>{t.forEach(Cqe)};function Iqe({root:t,...e}){const n=t||document;t_.has(n)||t_.set(n,{});const i=t_.get(n),r=JSON.stringify(e);return i[r]||(i[r]=new IntersectionObserver(wqe,{root:t,...e})),i[r]}function Mqe(t,e,n){const i=Iqe(e);return pS.set(t,n),i.observe(t),()=>{pS.delete(t),i.unobserve(t)}}const Rqe={some:0,all:1};class bqe extends uh{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:n,margin:i,amount:r="some",once:s}=e,o={root:n?n.current:void 0,rootMargin:i,threshold:typeof r=="number"?r:Rqe[r]},a=l=>{const{isIntersecting:u}=l;if(this.isInView===u||(this.isInView=u,s&&!u&&this.hasEnteredView))return;u&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",u);const{onViewportEnter:c,onViewportLeave:h}=this.node.getProps(),f=u?c:h;f&&f(l)};return Mqe(this.node.current,o,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:n}=this.node;["amount","margin","root"].some(Pqe(e,n))&&this.startObserver()}unmount(){}}function Pqe({viewport:t={}},{viewport:e={}}={}){return n=>t[n]!==e[n]}const Bqe={inView:{Feature:bqe},tap:{Feature:Tqe},focus:{Feature:Sqe},hover:{Feature:Eqe}};function vj(t,e){if(!Array.isArray(e))return!1;const n=e.length;if(n!==t.length)return!1;for(let i=0;i<n;i++)if(e[i]!==t[i])return!1;return!0}function Dqe(t){const e={};
6477return t.values.forEach((n,i)=>e[i]=n.get()),e}function Lqe(t){const e={};return t.values.forEach((n,i)=>e[i]=n.getVelocity()),e}function wA(t,e,n){const i=t.getProps();return yI(i,e,n!==void 0?n:i.custom,Dqe(t),Lqe(t))}const Nqe="framerAppearId",kqe="data-"+AI(Nqe);let Fqe=Ai,_I=Ai;const Rc=t=>t*1e3,ru=t=>t/1e3,Oqe={current:!1},yj=t=>Array.isArray(t)&&typeof t[0]=="number";function qj(t){return!!(!t||typeof t=="string"&&_j[t]||yj(t)||Array.isArray(t)&&t.every(qj))}const g5=([t,e,n,i])=>`cubic-bezier(${t}, ${e}, ${n}, ${i})`,_j={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:g5([0,.65,.55,1]),circOut:g5([.55,0,1,.45]),backIn:g5([.31,.01,.66,-.59]),backOut:g5([.33,1.53,.69,.99])};function xj(t){if(t)return yj(t)?g5(t):Array.isArray(t)?t.map(xj):_j[t]}function Uqe(t,e,n,{delay:i=0,duration:r,repeat:s=0,repeatType:o="loop",ease:a,times:l}={}){const u={[e]:n};l&&(u.offset=l);const c=xj(a);return Array.isArray(c)&&(u.easing=c),t.animate(u,{delay:i,duration:r,easing:Array.isArray(c)?"linear":c,fill:"both",iterations:s+1,direction:o==="reverse"?"alternate":"normal"})}function zqe(t,{repeat:e,repeatType:n="loop"}){const i=e&&n!=="loop"&&e%2===1?0:t.length-1;return t[i]}const Ej=(t,e,n)=>(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t,Vqe=1e-7,Gqe=12;function Qqe(t,e,n,i,r){let s,o,a=0;do o=e+(n-e)/2,s=Ej(o,i,r)-t,s>0?n=o:e=o;while(Math.abs(s)>Vqe&&++a<Gqe);return o}function E6(t,e,n,i){if(t===e&&n===i)return Ai;const r=s=>Qqe(s,0,1,t,n);return s=>s===0||s===1?s:Ej(r(s),e,i)}const Hqe=E6(.42,0,1,1),Wqe=E6(0,0,.58,1),Sj=E6(.42,0,.58,1),$qe=t=>Array.isArray(t)&&typeof t[0]!="number",Tj=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Cj=t=>e=>1-t(1-e),wj=t=>1-Math.sin(Math.acos(t)),xI=Cj(wj),jqe=Tj(xI),Ij=E6(.33,1.53,.69,.99),EI=Cj(Ij),Xqe=Tj(EI),Yqe=t=>(t*=2)<1?.5*EI(t):.5*(2-Math.pow(2,-10*(t-1))),Kqe={linear:Ai,easeIn:Hqe,easeInOut:Sj,easeOut:Wqe,circIn:wj,circInOut:jqe,circOut:xI,backIn:EI,backInOut:Xqe,backOut:Ij,anticipate:Yqe},VN=t=>{if(Array.isArray(t)){_I(t.length===4);const[e,n,i,r]=t;return E6(e,n,i,r)}else if(typeof t=="string")return Kqe[t];return t},SI=(t,e)=>n=>!!(_6(n)&&Yye.test(n)&&n.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(n,e)),Mj=(t,e,n)=>i=>{if(!_6(i))return i;const[r,s,o,a]=i.match(TA);return{[t]:parseFloat(r),[e]:parseFloat(s),[n]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}},Jqe=t=>Wc(0,255,t),n_={...K1,transform:t=>Math.round(Jqe(t))},s1={test:SI("rgb","red"),parse:Mj("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:i=1})=>"rgba("+n_.transform(t)+", "+n_.transform(e)+", "+n_.transform(n)+", "+$5(W5.transform(i))+")"};function Zqe(t){let e="",n="",i="",r="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),i=t.substring(5,7),r=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),i=t.substring(3,4),r=t.substring(4,5),e+=e,n+=n,i+=i,r+=r),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(i,16),alpha:r?parseInt(r,16)/255:1}}const mS={test:SI("#"),parse:Zqe,transform:s1.transform},p0={test:SI("hsl","hue"),parse:Mj("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:i=1})=>"hsla("+Math.round(t)+", "+pl.transform($5(e))+", "+pl.transform($5(n))+", "+$5(W5.transform(i))+")"},Zr={test:t=>s1.test(t)||mS.test(t)||p0.test(t),parse:t=>s1.test(t)?s1.parse(t):p0.test(t)?p0.parse(t):mS.parse(t),transform:t=>_6(t)?t:t.hasOwnProperty("red")?s1.transform(t):p0.transform(t)},ei=(t,e,n)=>-n*t+n*e+t;function i_(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function e_e({hue:t,saturation:e,lightness:n,alpha:i}){t/=360,e/=100,n/=100;let r=0,s=0,o=0;if(!e)r=s=o=n;else{const a=n<.5?n*(1+e):n+e-n*e,l=2*n-a;r=i_(l,a,t+1/3),s=i_(l,a,t),o=i_(l,a,t-1/3)}return{red:Math.round(r*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:i}}const r_=(t,e,n)=>{const i=t*t;return Math.sqrt(Math.max(0,n*(e*e-i)+i))},t_e=[mS,s1,p0],n_e=t=>t_e.find(e=>e.test(t));function GN(t){const e=n_e(t);let n=e.parse(t);return e===p0&&(n=e_e(n)),n}const Rj=(t,e)=>{const n=GN(t),i=GN(e),r={...n};return s=>(r.red=r_(n.red,i.red,s),r.green=r_(n.green,i.green,s),r.blue=r_(n.blue,i.blue,s),r.alpha=ei(n.alpha,i.alpha,s),s1.transform(r))};function i_e(t){var e,n;return isNaN(t)&&_6(t)&&(((e=t.match(TA))===null||e===void 0?void 0:e.length)||0)+(((n=t.match(ij))===null||n===void 0?void 0:n.length)||0)>0}const bj={regex:jye,countKey:"Vars",token:"${v}",parse:Ai},Pj={regex:ij,countKey:"Colors",token:"${c}",parse:Zr.parse},Bj={regex:TA,countKey:"Numbers",token:"${n}",parse:K1.parse};function s_(t,{regex:e,countKey:n,token:i,parse:r}){const s=t.tokenised.match(e);s&&(t["num"+n]=s.length,t.tokenised=t.tokenised.replace(e,i),t.values.push(...s.map(r)))}function h9(t){const e=t.toString(),n={value:e,tokenised:e,values:[],numVars:0,numColors:0,numNumbers:0};return n.value.includes("var(--")&&s_(n,bj),s_(n,Pj),s_(n,Bj),n}function Dj(t){return h9(t).values}function Lj(t){const{values:e,numColors:n,numVars:i,tokenised:r}=h9(t),s=e.length;return o=>{let a=r;for(let l=0;l<s;l++)l<i?a=a.replace(bj.token,o[l]):l<i+n?a=a.replace(Pj.token,Zr.transform(o[l])):a=a.replace(Bj.token,$5(o[l]));return a}}const r_e=t=>typeof t=="number"?0:t;function s_e(t){const e=Dj(t);return Lj(t)(e.map(r_e))}const $c={test:i_e,parse:Dj,createTransformer:Lj,getAnimatableNone:s_e},Nj=(t,e)=>n=>`${n>0?e:t}`;function kj(t,e){return typeof t=="number"?n=>ei(t,e,n):Zr.test(t)?Rj(t,e):t.startsWith("var(")?Nj(t,e):Oj(t,e)}const Fj=(t,e)=>{const n=[...t],i=n.length,r=t.map((s,o)=>kj(s,e[o]));return s=>{for(let o=0;o<i;o++)n[o]=r[o](s);return n}},o_e=(t,e)=>{const n={...t,...e},i={};for(const r in n)t[r]!==void 0&&e[r]!==void 0&&(i[r]=kj(t[r],e[r]));return r=>{for(const s in i)n[s]=i[s](r);return n}},Oj=(t,e)=>{const n=$c.createTransformer(e),i=h9(t),r=h9(e);return i.numVars===r.numVars&&i.numColors===r.numColors&&i.numNumbers>=r.numNumbers?Mc(Fj(i.values,r.values),n):Nj(t,e)},E4=(t,e,n)=>{const i=e-t;return i===0?1:(n-t)/i},QN=(t,e)=>n=>ei(t,e,n);function a_e(t){return typeof t=="number"?QN:typeof t=="string"?Zr.test(t)?Rj:Oj:Array.isArray(t)?Fj:typeof t=="object"?o_e:QN}function l_e(t,e,n){const i=[],r=n||a_e(t[0]),s=t.length-1;for(let o=0;o<s;o++){let a=r(t[o],t[o+1]);if(e){const l=Array.isArray(e)?e[o]||Ai:e;a=Mc(l,a)}i.push(a)}return i}function Uj(t,e,{clamp:n=!0,ease:i,mixer:r}={}){const s=t.length;if(_I(s===e.length),s===1)return()=>e[0];t[0]>t[s-1]&&(t=[...t].reverse(),e=[...e].reverse());const o=l_e(e,i,r),a=o.length,l=u=>{let c=0;if(a>1)for(;c<t.length-2&&!(u<t[c+1]);c++);const h=E4(t[c],t[c+1],u);return o[c](h)};return n?u=>l(Wc(t[0],t[s-1],u)):l}function u_e(t,e){const n=t[t.length-1];for(let i=1;i<=e;i++){const r=E4(0,e,i);t.push(ei(n,1,r))}}function c_e(t){const e=[0];return u_e(e,t.length-1),e}function h_e(t,e){return t.map(n=>n*e)}function f_e(t,e){return t.map(()=>e||Sj).splice(0,t.length-1)}function f9({duration:t=300,keyframes:e,times:n,ease:i="easeInOut"}){const r=$qe(i)?i.map(VN):VN(i),s={done:!1,value:e[0]},o=h_e(n&&n.length===e.length?n:c_e(e),t),a=Uj(o,e,{ease:Array.isArray(r)?r:f_e(e,r)});return{calculatedDuration:t,next:l=>(s.value=a(l),s.done=l>=t,s)}}function zj(t,e){return e?t*(1e3/e):0}const d_e=5;function Vj(t,e,n){const i=Math.max(e-d_e,0);return zj(n-t(i),e-i)}const o_=.001,p_e=.01,HN=10,m_e=.05,g_e=1;function A_e({duration:t=800,bounce:e=.25,velocity:n=0,mass:i=1}){let r,s;Fqe(t<=Rc(HN));let o=1-e;o=Wc(m_e,g_e,o),t=Wc(p_e,HN,ru(t)),o<1?(r=u=>{const c=u*o,h=c*t,f=c-n,m=gS(u,o),g=Math.exp(-h);return o_-f/m*g},s=u=>{const h=u*o*t,f=h*n+n,m=Math.pow(o,2)*Math.pow(u,2)*t,g=Math.exp(-h),v=gS(Math.pow(u,2),o);return(-r(u)+o_>0?-1:1)*((f-m)*g)/v}):(r=u=>{const c=Math.exp(-u*t),h=(u-n)*t+1;return-o_+c*h},s=u=>{const c=Math.exp(-u*t),h=(n-u)*(t*t);return c*h});const a=5/t,l=y_e(r,s,a);if(t=Rc(t),isNaN(l))return{stiffness:100,damping:10,duration:t};{const u=Math.pow(l,2)*i;return{stiffness:u,damping:o*2*Math.sqrt(i*u),duration:t}}}const v_e=12;function y_e(t,e,n){let i=n;for(let r=1;r<v_e;r++)i=i-t(i)/e(i);return i}function gS(t,e){return t*Math.sqrt(1-e*e)}const q_e=["duration","bounce"],__e=["stiffness","damping","mass"];function WN(t,e){return e.some(n=>t[n]!==void 0)}function x_e(t){let e={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...t};if(!WN(t,__e)&&WN(t,q_e)){const n=A_e(t);e={...e,...n,velocity:0,mass:1},e.isResolvedFromDuration=!0}return e}
6477function Gj({keyframes:t,restDelta:e,restSpeed:n,...i}){const r=t[0],s=t[t.length-1],o={done:!1,value:r},{stiffness:a,damping:l,mass:u,velocity:c,duration:h,isResolvedFromDuration:f}=x_e(i),m=c?-ru(c):0,g=l/(2*Math.sqrt(a*u)),v=s-r,_=ru(Math.sqrt(a/u)),A=Math.abs(v)<5;n||(n=A?.01:2),e||(e=A?.005:.5);let y;if(g<1){const q=gS(_,g);y=E=>{const T=Math.exp(-g*_*E);return s-T*((m+g*_*v)/q*Math.sin(q*E)+v*Math.cos(q*E))}}else if(g===1)y=q=>s-Math.exp(-_*q)*(v+(m+_*v)*q);else{const q=_*Math.sqrt(g*g-1);y=E=>{const T=Math.exp(-g*_*E),C=Math.min(q*E,300);return s-T*((m+g*_*v)*Math.sinh(C)+q*v*Math.cosh(C))/q}}return{calculatedDuration:f&&h||null,next:q=>{const E=y(q);if(f)o.done=q>=h;else{let T=m;q!==0&&(g<1?T=Vj(y,q,E):T=0);const C=Math.abs(T)<=n,I=Math.abs(s-E)<=e;o.done=C&&I}return o.value=o.done?s:E,o}}}function $N({keyframes:t,velocity:e=0,power:n=.8,timeConstant:i=325,bounceDamping:r=10,bounceStiffness:s=500,modifyTarget:o,min:a,max:l,restDelta:u=.5,restSpeed:c}){const h=t[0],f={done:!1,value:h},m=R=>a!==void 0&&R<a||l!==void 0&&R>l,g=R=>a===void 0?l:l===void 0||Math.abs(a-R)<Math.abs(l-R)?a:l;let v=n*e;const _=h+v,A=o===void 0?_:o(_);A!==_&&(v=A-h);const y=R=>-v*Math.exp(-R/i),q=R=>A+y(R),E=R=>{const M=y(R),b=q(R);f.done=Math.abs(M)<=u,f.value=f.done?A:b};let T,C;const I=R=>{m(f.value)&&(T=R,C=Gj({keyframes:[f.value,g(f.value)],velocity:Vj(q,R,f.value),damping:r,stiffness:s,restDelta:u,restSpeed:c}))};return I(0),{calculatedDuration:null,next:R=>{let M=!1;return!C&&T===void 0&&(M=!0,E(R),I(R)),T!==void 0&&R>T?C.next(R-T):(!M&&E(R),f)}}}const E_e=t=>{const e=({timestamp:n})=>t(n);return{start:()=>Nn.update(e,!0),stop:()=>qu(e),now:()=>Pr.isProcessing?Pr.timestamp:performance.now()}},jN=2e4;function XN(t){let e=0;const n=50;let i=t.next(e);for(;!i.done&&e<jN;)e+=n,i=t.next(e);return e>=jN?1/0:e}const S_e={decay:$N,inertia:$N,tween:f9,keyframes:f9,spring:Gj};function d9({autoplay:t=!0,delay:e=0,driver:n=E_e,keyframes:i,type:r="keyframes",repeat:s=0,repeatDelay:o=0,repeatType:a="loop",onPlay:l,onStop:u,onComplete:c,onUpdate:h,...f}){let m=1,g=!1,v,_;const A=()=>{_=new Promise(k=>{v=k})};A();let y;const q=S_e[r]||f9;let E;q!==f9&&typeof i[0]!="number"&&(E=Uj([0,100],i,{clamp:!1}),i=[0,100]);const T=q({...f,keyframes:i});let C;a==="mirror"&&(C=q({...f,keyframes:[...i].reverse(),velocity:-(f.velocity||0)}));let I="idle",R=null,M=null,b=null;T.calculatedDuration===null&&s&&(T.calculatedDuration=XN(T));const{calculatedDuration:D}=T;let z=1/0,O=1/0;D!==null&&(z=D+o,O=z*(s+1)-o);let W=0;const $=k=>{if(M===null)return;m>0&&(M=Math.min(M,k)),m<0&&(M=Math.min(k-O/m,M)),R!==null?W=R:W=Math.round(k-M)*m;const Q=W-e*(m>=0?1:-1),ce=m>=0?Q<0:Q>O;W=Math.max(Q,0),I==="finished"&&R===null&&(W=O);let ae=W,ge=T;if(s){const $e=W/z;let Qe=Math.floor($e),Be=$e%1;!Be&&$e>=1&&(Be=1),Be===1&&Qe--,Qe=Math.min(Qe,s+1);const X=!!(Qe%2);X&&(a==="reverse"?(Be=1-Be,o&&(Be-=o/z)):a==="mirror"&&(ge=C));let qe=Wc(0,1,Be);W>O&&(qe=a==="reverse"&&X?1:0),ae=qe*z}const ye=ce?{done:!1,value:i[0]}:ge.next(ae);E&&(ye.value=E(ye.value));let{done:xe}=ye;!ce&&D!==null&&(xe=m>=0?W>=O:W<=0);const Le=R===null&&(I==="finished"||I==="running"&&xe);return h&&h(ye.value),Le&&B(),ye},K=()=>{y&&y.stop(),y=void 0},Y=()=>{I="idle",K(),v(),A(),M=b=null},B=()=>{I="finished",c&&c(),K(),v()},U=()=>{if(g)return;y||(y=n($));const k=y.now();l&&l(),R!==null?M=k-R:(!M||I==="finished")&&(M=k),I==="finished"&&A(),b=M,R=null,I="running",y.start()};t&&U();const F={then(k,Q){return _.then(k,Q)},get time(){return ru(W)},set time(k){k=Rc(k),W=k,R!==null||!y||m===0?R=k:M=y.now()-k/m},get duration(){const k=T.calculatedDuration===null?XN(T):T.calculatedDuration;return ru(k)},get speed(){return m},set speed(k){k===m||!y||(m=k,F.time=ru(W))},get state(){return I},play:U,pause:()=>{I="paused",R=W},stop:()=>{g=!0,I!=="idle"&&(I="idle",u&&u(),Y())},cancel:()=>{b!==null&&$(b),Y()},complete:()=>{I="finished"},sample:k=>(M=0,$(k))};return F}function T_e(t){let e;return()=>(e===void 0&&(e=t()),e)}const C_e=T_e(()=>Object.hasOwnProperty.call(Element.prototype,"animate")),w_e=new Set(["opacity","clipPath","filter","transform","backgroundColor"]),o8=10,I_e=2e4,M_e=(t,e)=>e.type==="spring"||t==="backgroundColor"||!qj(e.ease);
6477function R_e(t,e,{onUpdate:n,onComplete:i,...r}){if(!(C_e()&&w_e.has(e)&&!r.repeatDelay&&r.repeatType!=="mirror"&&r.damping!==0&&r.type!=="inertia"))return!1;let o=!1,a,l;const u=()=>{l=new Promise(y=>{a=y})};u();let{keyframes:c,duration:h=300,ease:f,times:m}=r;if(M_e(e,r)){const y=d9({...r,repeat:0,delay:0});let q={done:!1,value:c[0]};const E=[];let T=0;for(;!q.done&&T<I_e;)q=y.sample(T),E.push(q.value),T+=o8;m=void 0,c=E,h=T-o8,f="linear"}const g=Uqe(t.owner.current,e,c,{...r,duration:h,ease:f,times:m}),v=()=>g.cancel(),_=()=>{Nn.update(v),a(),u()};return g.onfinish=()=>{t.set(zqe(c,r)),i&&i(),_()},{then(y,q){return l.then(y,q)},attachTimeline(y){return g.timeline=y,g.onfinish=null,Ai},get time(){return ru(g.currentTime||0)},set time(y){g.currentTime=Rc(y)},get speed(){return g.playbackRate},set speed(y){g.playbackRate=y},get duration(){return ru(h)},play:()=>{o||(g.play(),qu(v))},pause:()=>g.pause(),stop:()=>{if(o=!0,g.playState==="idle")return;const{currentTime:y}=g;if(y){const q=d9({...r,autoplay:!1});t.setWithVelocity(q.sample(y-o8).value,q.sample(y).value,o8)}_()},complete:()=>g.finish(),cancel:_}}function b_e({keyframes:t,delay:e,onUpdate:n,onComplete:i}){const r=()=>(n&&n(t[t.length-1]),i&&i(),{time:0,speed:1,duration:0,play:Ai,pause:Ai,stop:Ai,then:s=>(s(),Promise.resolve()),cancel:Ai,complete:Ai});return e?d9({keyframes:[0,1],duration:0,delay:e,onComplete:r}):r()}const P_e={type:"spring",stiffness:500,damping:25,restSpeed:10},B_e=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),D_e={type:"keyframes",duration:.8},L_e={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},N_e=(t,{keyframes:e})=>e.length>2?D_e:Y1.has(t)?t.startsWith("scale")?B_e(e[1]):P_e:L_e,AS=(t,e)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&($c.test(e)||e==="0")&&!e.startsWith("url(")),k_e=new Set(["brightness","contrast","saturate","opacity"]);function F_e(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[i]=n.match(TA)||[];if(!i)return t;const r=n.replace(i,"");let s=k_e.has(e)?1:0;return i!==n&&(s*=100),e+"("+s+r+")"}const O_e=/([a-z-]*)\(.*?\)/g,vS={...$c,getAnimatableNone:t=>{const e=t.match(O_e);return e?e.map(F_e).join(" "):t}},U_e={...rj,color:Zr,backgroundColor:Zr,outlineColor:Zr,fill:Zr,stroke:Zr,borderColor:Zr,borderTopColor:Zr,borderRightColor:Zr,borderBottomColor:Zr,borderLeftColor:Zr,filter:vS,WebkitFilter:vS},TI=t=>U_e[t];function Qj(t,e){let n=TI(t);return n!==vS&&(n=$c),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const Hj=t=>/^0[^.\s]+$/.test(t);function z_e(t){if(typeof t=="number")return t===0;if(t!==null)return t==="none"||t==="0"||Hj(t)}function V_e(t,e,n,i){const r=AS(e,n);let s;Array.isArray(n)?s=[...n]:s=[null,n];const o=i.from!==void 0?i.from:t.get();let a;const l=[];for(let u=0;u<s.length;u++)s[u]===null&&(s[u]=u===0?o:s[u-1]),z_e(s[u])&&l.push(u),typeof s[u]=="string"&&s[u]!=="none"&&s[u]!=="0"&&(a=s[u]);if(r&&l.length&&a)for(let u=0;u<l.length;u++){const c=l[u];s[c]=Qj(e,a)}return s}function G_e({when:t,delay:e,delayChildren:n,staggerChildren:i,staggerDirection:r,repeat:s,repeatType:o,repeatDelay:a,from:l,elapsed:u,...c}){return!!Object.keys(c).length}function Wj(t,e){return t[e]||t.default||t}const CI=(t,e,n,i={})=>r=>{const s=Wj(i,t)||{},o=s.delay||i.delay||0;let{elapsed:a=0}=i;a=a-Rc(o);const l=V_e(e,t,n,s),u=l[0],c=l[l.length-1],h=AS(t,u),f=AS(t,c);let m={keyframes:l,velocity:e.getVelocity(),ease:"easeOut",...s,delay:-a,onUpdate:g=>{e.set(g),s.onUpdate&&s.onUpdate(g)},onComplete:()=>{r(),s.onComplete&&s.onComplete()}};if(G_e(s)||(m={...m,...N_e(t,m)}),m.duration&&(m.duration=Rc(m.duration)),m.repeatDelay&&(m.repeatDelay=Rc(m.repeatDelay)),!h||!f||Oqe.current||s.type===!1)return b_e(m);if(e.owner&&e.owner.current instanceof HTMLElement&&!e.owner.getProps().onUpdate){const g=R_e(e,t,m);if(g)return g}return d9(m)};function p9(t){return!!(Ls(t)&&t.add)}const $j=t=>/^\-?\d*\.?\d+$/.test(t);function wI(t,e){t.indexOf(e)===-1&&t.push(e)}function II(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class MI{constructor(){this.subscriptions=[]}add(e){return wI(this.subscriptions,e),()=>II(this.subscriptions,e)}notify(e,n,i){const r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](e,n,i);else for(let s=0;s<r;s++){const o=this.subscriptions[s];o&&o(e,n,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Q_e=t=>!isNaN(parseFloat(t));class H_e{constructor(e,n={}){this.version="10.16.2",this.timeDelta=0,this.lastUpdated=0,this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(i,r=!0)=>{this.prev=this.current,this.current=i;const{delta:s,timestamp:o}=Pr;this.lastUpdated!==o&&(this.timeDelta=s,this.lastUpdated=o,Nn.postRender(this.scheduleVelocityCheck)),this.prev!==this.current&&this.events.change&&this.events.change.notify(this.current),this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()),r&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.scheduleVelocityCheck=()=>Nn.postRender(this.velocityCheck),this.velocityCheck=({timestamp:i})=>{i!==this.lastUpdated&&(this.prev=this.current,this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()))},this.hasAnimated=!1,this.prev=this.current=e,this.canTrackVelocity=Q_e(this.current),this.owner=n.owner}onChange(e){return this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new MI);const i=this.events[e].add(n);return e==="change"?()=>{i(),Nn.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e,n=!0){!n||!this.passiveEffect?this.updateAndNotify(e,n):this.passiveEffect(e,this.updateAndNotify)}setWithVelocity(e,n,i){this.set(n),this.prev=e,this.timeDelta=i}jump(e){this.updateAndNotify(e),this.prev=e,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?zj(parseFloat(this.current)-parseFloat(this.prev),this.timeDelta):0}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _2(t,e){return new H_e(t,e)}const jj=t=>e=>e.test(t),W_e={test:t=>t==="auto",parse:t=>t},Xj=[K1,_t,pl,Ju,Jye,Kye,W_e],Yf=t=>Xj.find(jj(t)),$_e=[...Xj,Zr,$c],j_e=t=>$_e.find(jj(t));function X_e(t,e,n){t.hasValue(e)?t.getValue(e).set(n):t.addValue(e,_2(n))}function RI(t,e){const n=wA(t,e);let{transitionEnd:i={},transition:r={},...s}=n?t.makeTargetAnimatable(n,!1):{};s={...s,...i};for(const o in s){const a=fqe(s[o]);X_e(t,o,a)}}
6477function yS(t,e){[...e].reverse().forEach(i=>{const r=t.getVariant(i);r&&RI(t,r),t.variantChildren&&t.variantChildren.forEach(s=>{yS(s,e)})})}function Y_e(t,e){if(Array.isArray(e))return yS(t,e);if(typeof e=="string")return yS(t,[e]);RI(t,e)}function K_e(t,e,n){var i,r;const s=Object.keys(e).filter(a=>!t.hasValue(a)),o=s.length;if(o)for(let a=0;a<o;a++){const l=s[a],u=e[l];let c=null;Array.isArray(u)&&(c=u[0]),c===null&&(c=(r=(i=n[l])!==null&&i!==void 0?i:t.readValue(l))!==null&&r!==void 0?r:e[l]),c!=null&&(typeof c=="string"&&($j(c)||Hj(c))?c=parseFloat(c):!j_e(c)&&$c.test(u)&&(c=Qj(l,u)),t.addValue(l,_2(c,{owner:t})),n[l]===void 0&&(n[l]=c),c!==null&&t.setBaseTarget(l,c))}}function J_e(t,e){return e?(e[t]||e.default||e).from:void 0}function Z_e(t,e,n){const i={};for(const r in t){const s=J_e(r,e);if(s!==void 0)i[r]=s;else{const o=n.getValue(r);o&&(i[r]=o.get())}}return i}function exe({protectedKeys:t,needsAnimating:e},n){const i=t.hasOwnProperty(n)&&e[n]!==!0;return e[n]=!1,i}function Yj(t,e,{delay:n=0,transitionOverride:i,type:r}={}){let{transition:s=t.getDefaultTransition(),transitionEnd:o,...a}=t.makeTargetAnimatable(e);const l=t.getValue("willChange");i&&(s=i);const u=[],c=r&&t.animationState&&t.animationState.getState()[r];for(const h in a){const f=t.getValue(h),m=a[h];if(!f||m===void 0||c&&exe(c,h))continue;const g={delay:n,elapsed:0,...s};if(window.HandoffAppearAnimations&&!f.hasAnimated){const _=t.getProps()[kqe];_&&(g.elapsed=window.HandoffAppearAnimations(_,h,f,Nn))}f.start(CI(h,f,m,t.shouldReduceMotion&&Y1.has(h)?{type:!1}:g));const v=f.animation;p9(l)&&(l.add(h),v.then(()=>l.remove(h))),u.push(v)}return o&&Promise.all(u).then(()=>{o&&RI(t,o)}),u}function qS(t,e,n={}){const i=wA(t,e,n.custom);let{transition:r=t.getDefaultTransition()||{}}=i||{};n.transitionOverride&&(r=n.transitionOverride);const s=i?()=>Promise.all(Yj(t,i,n)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(l=0)=>{const{delayChildren:u=0,staggerChildren:c,staggerDirection:h}=r;return txe(t,e,u+l,c,h,n)}:()=>Promise.resolve(),{when:a}=r;if(a){const[l,u]=a==="beforeChildren"?[s,o]:[o,s];return l().then(()=>u())}else return Promise.all([s(),o(n.delay)])}function txe(t,e,n=0,i=0,r=1,s){const o=[],a=(t.variantChildren.size-1)*i,l=r===1?(u=0)=>u*i:(u=0)=>a-u*i;return Array.from(t.variantChildren).sort(nxe).forEach((u,c)=>{u.notify("AnimationStart",e),o.push(qS(u,e,{...s,delay:n+l(c)}).then(()=>u.notify("AnimationComplete",e)))}),Promise.all(o)}function nxe(t,e){return t.sortNodePosition(e)}function Kj(t,e,n={}){t.notify("AnimationStart",e);let i;if(Array.isArray(e)){const r=e.map(s=>qS(t,s,n));i=Promise.all(r)}else if(typeof e=="string")i=qS(t,e,n);else{const r=typeof e=="function"?wA(t,e,n.custom):e;i=Promise.all(Yj(t,r,n))}return i.then(()=>t.notify("AnimationComplete",e))}const ixe=[...uI].reverse(),rxe=uI.length;function sxe(t){return e=>Promise.all(e.map(({animation:n,options:i})=>Kj(t,n,i)))}function oxe(t){let e=sxe(t);const n=lxe();let i=!0;const r=(l,u)=>{const c=wA(t,u);if(c){const{transition:h,transitionEnd:f,...m}=c;l={...l,...m,...f}}return l};function s(l){e=l(t)}function o(l,u){const c=t.getProps(),h=t.getVariantContext(!0)||{},f=[],m=new Set;let g={},v=1/0;for(let A=0;A<rxe;A++){const y=ixe[A],q=n[y],E=c[y]!==void 0?c[y]:h[y],T=_4(E),C=y===u?q.isActive:null;C===!1&&(v=A);let I=E===h[y]&&E!==c[y]&&T;if(I&&i&&t.manuallyAnimateOnMount&&(I=!1),q.protectedKeys={...g},!q.isActive&&C===null||!E&&!q.prevProp||EA(E)||typeof E=="boolean")continue;const R=axe(q.prevProp,E);let M=R||y===u&&q.isActive&&!I&&T||A>v&&T;const b=Array.isArray(E)?E:[E];let D=b.reduce(r,{});C===!1&&(D={});const{prevResolvedValues:z={}}=q,O={...z,...D},W=$=>{M=!0,m.delete($),q.needsAnimating[$]=!0};for(const $ in O){const K=D[$],Y=z[$];g.hasOwnProperty($)||(K!==Y?c9(K)&&c9(Y)?!vj(K,Y)||R?W($):q.protectedKeys[$]=!0:K!==void 0?W($):m.add($):K!==void 0&&m.has($)?W($):q.protectedKeys[$]=!0)}q.prevProp=E,q.prevResolvedValues=D,q.isActive&&(g={...g,...D}),i&&t.blockInitialAnimation&&(M=!1),M&&!I&&f.push(...b.map($=>({animation:$,options:{type:y,...l}})))}if(m.size){const A={};m.forEach(y=>{const q=t.getBaseTarget(y);q!==void 0&&(A[y]=q)}
vendor: 38,737 bytes, line 6477
6477),f.push({animation:A})}let _=!!f.length;return i&&c.initial===!1&&!t.manuallyAnimateOnMount&&(_=!1),i=!1,_?e(f):Promise.resolve()}function a(l,u,c){var h;if(n[l].isActive===u)return Promise.resolve();(h=t.variantChildren)===null||h===void 0||h.forEach(m=>{var g;return(g=m.animationState)===null||g===void 0?void 0:g.setActive(l,u)}),n[l].isActive=u;const f=o(c,l);for(const m in n)n[m].protectedKeys={};return f}return{animateChanges:o,setActive:a,setAnimateFunction:s,getState:()=>n}}function axe(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!vj(e,t):!1}function bh(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function lxe(){return{animate:bh(!0),whileInView:bh(),whileHover:bh(),whileTap:bh(),whileDrag:bh(),whileFocus:bh(),exit:bh()}}class uxe extends uh{constructor(e){super(e),e.animationState||(e.animationState=oxe(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();this.unmount(),EA(e)&&(this.unmount=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:n}=this.node.prevProps||{};e!==n&&this.updateAnimationControlsSubscription()}unmount(){}}let cxe=0;class hxe extends uh{constructor(){super(...arguments),this.id=cxe++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:n,custom:i}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===r)return;const s=this.node.animationState.setActive("exit",!e,{custom:i??this.node.getProps().custom});n&&!e&&s.then(()=>n(this.id))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}const fxe={animation:{Feature:uxe},exit:{Feature:hxe}},YN=(t,e)=>Math.abs(t-e);function dxe(t,e){const n=YN(t.x,e.x),i=YN(t.y,e.y);return Math.sqrt(n**2+i**2)}class Jj{constructor(e,n,{transformPagePoint:i}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const u=l_(this.lastMoveEventInfo,this.history),c=this.startEvent!==null,h=dxe(u.offset,{x:0,y:0})>=3;if(!c&&!h)return;const{point:f}=u,{timestamp:m}=Pr;this.history.push({...f,timestamp:m});const{onStart:g,onMove:v}=this.handlers;c||(g&&g(this.lastMoveEvent,u),this.startEvent=this.lastMoveEvent),v&&v(this.lastMoveEvent,u)},this.handlePointerMove=(u,c)=>{this.lastMoveEvent=u,this.lastMoveEventInfo=a_(c,this.transformPagePoint),Nn.update(this.updatePoint,!0)},this.handlePointerUp=(u,c)=>{if(this.end(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const{onEnd:h,onSessionEnd:f}=this.handlers,m=l_(u.type==="pointercancel"?this.lastMoveEventInfo:a_(c,this.transformPagePoint),this.history);this.startEvent&&h&&h(u,m),f&&f(u,m)},!dj(e))return;this.handlers=n,this.transformPagePoint=i;const r=CA(e),s=a_(r,this.transformPagePoint),{point:o}=s,{timestamp:a}=Pr;this.history=[{...o,timestamp:a}];const{onSessionStart:l}=n;l&&l(e,l_(s,this.history)),this.removeListeners=Mc(iu(window,"pointermove",this.handlePointerMove),iu(window,"pointerup",this.handlePointerUp),iu(window,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),qu(this.updatePoint)}}function a_(t,e){return e?{point:e(t.point)}:t}function KN(t,e){return{x:t.x-e.x,y:t.y-e.y}}function l_({point:t},e){return{point:t,delta:KN(t,Zj(e)),offset:KN(t,pxe(e)),velocity:mxe(e,.1)}}function pxe(t){return t[0]}function Zj(t){return t[t.length-1]}function mxe(t,e){if(t.length<2)return{x:0,y:0};let n=t.length-1,i=null;const r=Zj(t);for(;n>=0&&(i=t[n],!(r.timestamp-i.timestamp>Rc(e)));)n--;if(!i)return{x:0,y:0};const s=ru(r.timestamp-i.timestamp);if(s===0)return{x:0,y:0};const o={x:(r.x-i.x)/s,y:(r.y-i.y)/s};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function lo(t){return t.max-t.min}function _S(t,e=0,n=.01){return Math.abs(t-e)<=n}function JN(t,e,n,i=.5){t.origin=i,t.originPoint=ei(e.min,e.max,t.origin),t.scale=lo(n)/lo(e),(_S(t.scale,1,1e-4)||isNaN(t.scale))&&(t.scale=1),t.translate=ei(n.min,n.max,t.origin)-t.originPoint,(_S(t.translate)||isNaN(t.translate))&&(t.translate=0)}function j5(t,e,n,i){JN(t.x,e.x,n.x,i?i.originX:void 0),JN(t.y,e.y,n.y,i?i.originY:void 0)}function ZN(t,e,n){t.min=n.min+e.min,t.max=t.min+lo(e)}function gxe(t,e,n){ZN(t.x,e.x,n.x),ZN(t.y,e.y,n.y)}function ek(t,e,n){t.min=e.min-n.min,t.max=t.min+lo(e)}function X5(t,e,n){ek(t.x,e.x,n.x),ek(t.y,e.y,n.y)}function Axe(t,{min:e,max:n},i){return e!==void 0&&t<e?t=i?ei(e,t,i.min):Math.max(t,e):n!==void 0&&t>n&&(t=i?ei(n,t,i.max):Math.min(t,n)),t}function tk(t,e,n){return{min:e!==void 0?t.min+e:void 0,max:n!==void 0?t.max+n-(t.max-t.min):void 0}}function vxe(t,{top:e,left:n,bottom:i,right:r}){return{x:tk(t.x,n,r),y:tk(t.y,e,i)}}function nk(t,e){let n=e.min-t.min,i=e.max-t.max;return e.max-e.min<t.max-t.min&&([n,i]=[i,n]),{min:n,max:i}}function yxe(t,e){return{x:nk(t.x,e.x),y:nk(t.y,e.y)}}function qxe(t,e){let n=.5;const i=lo(t),r=lo(e);return r>i?n=E4(e.min,e.max-i,t.min):i>r&&(n=E4(t.min,t.max-r,e.min)),Wc(0,1,n)}function _xe(t,e){const n={};return e.min!==void 0&&(n.min=e.min-t.min),e.max!==void 0&&(n.max=e.max-t.min),n}const xS=.35;function xxe(t=xS){return t===!1?t=0:t===!0&&(t=xS),{x:ik(t,"left","right"),y:ik(t,"top","bottom")}}function ik(t,e,n){return{min:rk(t,e),max:rk(t,n)}}function rk(t,e){return typeof t=="number"?t:t[e]||0}const sk=()=>({translate:0,scale:1,origin:0,originPoint:0}),m0=()=>({x:sk(),y:sk()}),ok=()=>({min:0,max:0}),Bi=()=>({x:ok(),y:ok()});function Qa(t){return[t("x"),t("y")]}function eX({top:t,left:e,right:n,bottom:i}){return{x:{min:e,max:n},y:{min:t,max:i}}}function Exe({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function Sxe(t,e){if(!e)return t;const n=e({x:t.left,y:t.top}),i=e({x:t.right,y:t.bottom});return{top:n.y,left:n.x,bottom:i.y,right:i.x}}function u_(t){return t===void 0||t===1}function ES({scale:t,scaleX:e,scaleY:n}){return!u_(t)||!u_(e)||!u_(n)}function Vh(t){return ES(t)||tX(t)||t.z||t.rotate||t.rotateX||t.rotateY}function tX(t){return ak(t.x)||ak(t.y)}function ak(t){return t&&t!=="0%"}function m9(t,e,n){const i=t-n,r=e*i;return n+r}function lk(t,e,n,i,r){return r!==void 0&&(t=m9(t,r,i)),m9(t,n,i)+e}function SS(t,e=0,n=1,i,r){t.min=lk(t.min,e,n,i,r),t.max=lk(t.max,e,n,i,r)}function nX(t,{x:e,y:n}){SS(t.x,e.translate,e.scale,e.originPoint),SS(t.y,n.translate,n.scale,n.originPoint)}function Txe(t,e,n,i=!1){const r=n.length;if(!r)return;e.x=e.y=1;let s,o;for(let a=0;a<r;a++){s=n[a],o=s.projectionDelta;const l=s.instance;l&&l.style&&l.style.display==="contents"||(i&&s.options.layoutScroll&&s.scroll&&s!==s.root&&g0(t,{x:-s.scroll.offset.x,y:-s.scroll.offset.y}),o&&(e.x*=o.x.scale,e.y*=o.y.scale,nX(t,o)),i&&Vh(s.latestValues)&&g0(t,s.latestValues))}e.x=uk(e.x),e.y=uk(e.y)}function uk(t){return Number.isInteger(t)||t>1.0000000000001||t<.999999999999?t:1}function tc(t,e){t.min=t.min+e,t.max=t.max+e}function ck(t,e,[n,i,r]){const s=e[r]!==void 0?e[r]:.5,o=ei(t.min,t.max,s);SS(t,e[n],e[i],o,e.scale)}const Cxe=["x","scaleX","originX"],wxe=["y","scaleY","originY"];function g0(t,e){ck(t.x,e,Cxe),ck(t.y,e,wxe)}function iX(t,e){return eX(Sxe(t.getBoundingClientRect(),e))}function Ixe(t,e,n){const i=iX(t,n),{scroll:r}=e;return r&&(tc(i.x,r.offset.x),tc(i.y,r.offset.y)),i}const Mxe=new WeakMap;class Rxe{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Bi(),this.visualElement=e}start(e,{snapToCursor:n=!1}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const r=l=>{this.stopAnimation(),n&&this.snapToCursor(CA(l,"page").point)},s=(l,u)=>{const{drag:c,dragPropagation:h,onDragStart:f}=this.getProps();if(c&&!h&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=mj(c),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Qa(g=>{let v=this.getAxisMotionValue(g).get()||0;if(pl.test(v)){const{projection:_}=this.visualElement;if(_&&_.layout){const A=_.layout.layoutBox[g];A&&(v=lo(A)*(parseFloat(v)/100))}}this.originPoint[g]=v}),f&&Nn.update(()=>f(l,u),!1,!0);const{animationState:m}=this.visualElement;m&&m.setActive("whileDrag",!0)},o=(l,u)=>{const{dragPropagation:c,dragDirectionLock:h,onDirectionLock:f,onDrag:m}=this.getProps();if(!c&&!this.openGlobalLock)return;const{offset:g}=u;if(h&&this.currentDirection===null){this.currentDirection=bxe(g),this.currentDirection!==null&&f&&f(this.currentDirection);return}this.updateAxis("x",u.point,g),this.updateAxis("y",u.point,g),this.visualElement.render(),m&&m(l,u)},a=(l,u)=>this.stop(l,u);this.panSession=new Jj(e,{onSessionStart:r,onStart:s,onMove:o,onSessionEnd:a},{transformPagePoint:this.visualElement.getTransformPagePoint()})}stop(e,n){const i=this.isDragging;if(this.cancel(),!i)return;const{velocity:r}=n;this.startAnimation(r);const{onDragEnd:s}=this.getProps();s&&Nn.update(()=>s(e,n))}cancel(){this.isDragging=!1;const{projection:e,animationState:n}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:i}=this.getProps();!i&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(e,n,i){const{drag:r}=this.getProps();if(!i||!a8(e,r,this.currentDirection))return;const s=this.getAxisMotionValue(e);let o=this.originPoint[e]+i[e];this.constraints&&this.constraints[e]&&(o=Axe(o,this.constraints[e],this.elastic[e])),s.set(o)}resolveConstraints(){const{dragConstraints:e,dragElastic:n}=this.getProps(),{layout:i}=this.visualElement.projection||{},r=this.constraints;e&&d0(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&i?this.constraints=vxe(i.layoutBox,e):this.constraints=!1,this.elastic=xxe(n),r!==this.constraints&&i&&this.constraints&&!this.hasMutatedConstraints&&Qa(s=>{this.getAxisMotionValue(s)&&(this.constraints[s]=_xe(i.layoutBox[s],this.constraints[s]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:n}=this.getProps();if(!e||!d0(e))return!1;const i=e.current,{projection:r}=this.visualElement;if(!r||!r.layout)return!1;const s=Ixe(i,r.root,this.visualElement.getTransformPagePoint());let o=yxe(r.layout.layoutBox,s);if(n){const a=n(Exe(o));this.hasMutatedConstraints=!!a,a&&(o=eX(a))}return o}startAnimation(e){const{drag:n,dragMomentum:i,dragElastic:r,dragTransition:s,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),l=this.constraints||{},u=Qa(c=>{if(!a8(c,n,this.currentDirection))return;let h=l&&l[c]||{};o&&(h={min:0,max:0});const f=r?200:1e6,m=r?40:1e7,g={type:"inertia",velocity:i?e[c]:0,bounceStiffness:f,bounceDamping:m,timeConstant:750,restDelta:1,restSpeed:10,...s,...h};return this.startAxisValueAnimation(c,g)});return Promise.all(u).then(a)}startAxisValueAnimation(e,n){const i=this.getAxisMotionValue(e);return i.start(CI(e,i,0,n))}stopAnimation(){Qa(e=>this.getAxisMotionValue(e).stop())}getAxisMotionValue(e){const n="_drag"+e.toUpperCase(),i=this.visualElement.getProps(),r=i[n];return r||this.visualElement.getValue(e,(i.initial?i.initial[e]:void 0)||0)}snapToCursor(e){Qa(n=>{const{drag:i}=this.getProps();if(!a8(n,i,this.currentDirection))return;const{projection:r}=this.visualElement,s=this.getAxisMotionValue(n);if(r&&r.layout){const{min:o,max:a}=r.layout.layoutBox[n];s.set(e[n]-ei(o,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:n}=this.getProps(),{projection:i}=this.visualElement;if(!d0(n)||!i||!this.constraints)return;this.stopAnimation();const r={x:0,y:0};Qa(o=>{const a=this.getAxisMotionValue(o);if(a){const l=a.get();r[o]=qxe({min:l,max:l},this.constraints[o])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.resolveConstraints(),Qa(o=>{if(!a8(o,e,null))return;const a=this.getAxisMotionValue(o),{min:l,max:u}=this.constraints[o];a.set(ei(l,u,r[o]))})}addListeners(){if(!this.visualElement.current)return;Mxe.set(this.visualElement,this);const e=this.visualElement.current,n=iu(e,"pointerdown",l=>{const{drag:u,dragListener:c=!0}=this.getProps();u&&c&&this.start(l)}),i=()=>{const{dragConstraints:l}=this.getProps();d0(l)&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,s=r.addEventListener("measure",i);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),i();const o=eu(window,"resize",()=>this.scalePositionWithinConstraints()),a=r.addEventListener("didUpdate",({delta:l,hasLayoutChanged:u})=>{this.isDragging&&u&&(Qa(c=>{const h=this.getAxisMotionValue(c);h&&(this.originPoint[c]+=l[c].translate,h.set(h.get()+l[c].translate))}),this.visualElement.render())});return()=>{o(),n(),s(),a&&a()}}getProps(){const e=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:i=!1,dragPropagation:r=!1,dragConstraints:s=!1,dragElastic:o=xS,dragMomentum:a=!0}=e;return{...e,drag:n,dragDirectionLock:i,dragPropagation:r,dragConstraints:s,dragElastic:o,dragMomentum:a}}}function a8(t,e,n){return(e===!0||e===t)&&(n===null||n===t)}function bxe(t,e=10){let n=null;return Math.abs(t.y)>e?n="y":Math.abs(t.x)>e&&(n="x"),n}class Pxe extends uh{constructor(e){super(e),this.removeGroupControls=Ai,this.removeListeners=Ai,this.controls=new Rxe(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Ai}unmount(){this.removeGroupControls(),this.removeListeners()}}const hk=t=>(e,n)=>{t&&Nn.update(()=>t(e,n))};class Bxe extends uh{constructor(){super(...arguments),this.removePointerDownListener=Ai}onPointerDown(e){this.session=new Jj(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint()})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:n,onPan:i,onPanEnd:r}=this.node.getProps();return{onSessionStart:hk(e),onStart:hk(n),onMove:i,onEnd:(s,o)=>{delete this.session,r&&Nn.update(()=>r(s,o))}}}mount(){this.removePointerDownListener=iu(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}function Dxe(){const t=G.useContext(qA);if(t===null)return[!0,null];const{isPresent:e,onExitComplete:n,register:i}=t,r=G.useId();return G.useEffect(()=>i(r),[]),!e&&n?[!1,()=>n&&n(r)]:[!0]}const G8={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function fk(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const Kf={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(_t.test(t))t=parseFloat(t);else return t;const n=fk(t,e.target.x),i=fk(t,e.target.y);return`${n}% ${i}%`}},Lxe={correct:(t,{treeScale:e,projectionDelta:n})=>{const i=t,r=$c.parse(t);if(r.length>5)return i;const s=$c.createTransformer(t),o=typeof r[0]!="number"?1:0,a=n.x.scale*e.x,l=n.y.scale*e.y;r[0+o]/=a,r[1+o]/=l;const u=ei(a,l,.5);return typeof r[2+o]=="number"&&(r[2+o]/=u),typeof r[3+o]=="number"&&(r[3+o]/=u),s(r)}};class Nxe extends E9.Component{componentDidMount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i,layoutId:r}=this.props,{projection:s}=e;Qye(kxe),s&&(n.group&&n.group.add(s),i&&i.register&&r&&i.register(s),s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions({...s.options,onExitComplete:()=>this.safeToRemove()})),G8.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:n,visualElement:i,drag:r,isPresent:s}=this.props,o=i.projection;return o&&(o.isPresent=s,r||e.layoutDependency!==n||n===void 0?o.willUpdate():this.safeToRemove(),e.isPresent!==s&&(s?o.promote():o.relegate()||Nn.postRender(()=>{const a=o.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),queueMicrotask(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i}=this.props,{projection:r}=e;r&&(r.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(r),i&&i.deregister&&i.deregister(r))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function rX(t){const[e,n]=Dxe(),i=G.useContext(hI);return E9.createElement(Nxe,{...t,layoutGroup:i,switchLayoutGroup:G.useContext(Z$),isPresent:e,safeToRemove:n})}const kxe={borderRadius:{...Kf,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Kf,borderTopRightRadius:Kf,borderBottomLeftRadius:Kf,borderBottomRightRadius:Kf,boxShadow:Lxe},sX=["TopLeft","TopRight","BottomLeft","BottomRight"],Fxe=sX.length,dk=t=>typeof t=="string"?parseFloat(t):t,pk=t=>typeof t=="number"||_t.test(t);function Oxe(t,e,n,i,r,s){r?(t.opacity=ei(0,n.opacity!==void 0?n.opacity:1,Uxe(i)),t.opacityExit=ei(e.opacity!==void 0?e.opacity:1,0,zxe(i))):s&&(t.opacity=ei(e.opacity!==void 0?e.opacity:1,n.opacity!==void 0?n.opacity:1,i));for(let o=0;o<Fxe;o++){const a=`border${sX[o]}Radius`;let l=mk(e,a),u=mk(n,a);if(l===void 0&&u===void 0)continue;l||(l=0),u||(u=0),l===0||u===0||pk(l)===pk(u)?(t[a]=Math.max(ei(dk(l),dk(u),i),0),(pl.test(u)||pl.test(l))&&(t[a]+="%")):t[a]=u}(e.rotate||n.rotate)&&(t.rotate=ei(e.rotate||0,n.rotate||0,i))}function mk(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const Uxe=oX(0,.5,xI),zxe=oX(.5,.95,Ai);function oX(t,e,n){return i=>i<t?0:i>e?1:n(E4(t,e,i))}function gk(t,e){t.min=e.min,t.max=e.max}function Eo(t,e){gk(t.x,e.x),gk(t.y,e.y)}function Ak(t,e,n,i,r){return t-=e,t=m9(t,1/n,i),r!==void 0&&(t=m9(t,1/r,i)),t}function Vxe(t,e=0,n=1,i=.5,r,s=t,o=t){if(pl.test(e)&&(e=parseFloat(e),e=ei(o.min,o.max,e/100)-o.min),typeof e!="number")return;let a=ei(s.min,s.max,i);t===s&&(a-=e),t.min=Ak(t.min,e,n,a,r),t.max=Ak(t.max,e,n,a,r)}function vk(t,e,[n,i,r],s,o){Vxe(t,e[n],e[i],e[r],e.scale,s,o)}const Gxe=["x","scaleX","originX"],Qxe=["y","scaleY","originY"];function yk(t,e,n,i){vk(t.x,e,Gxe,n?n.x:void 0,i?i.x:void 0),vk(t.y,e,Qxe,n?n.y:void 0,i?i.y:void 0)}function qk(t){return t.translate===0&&t.scale===1}function aX(t){return qk(t.x)&&qk(t.y)}function Hxe(t,e){return t.x.min===e.x.min&&t.x.max===e.x.max&&t.y.min===e.y.min&&t.y.max===e.y.max}function lX(t,e){return Math.round(t.x.min)===Math.round(e.x.min)&&Math.round(t.x.max)===Math.round(e.x.max)&&Math.round(t.y.min)===Math.round(e.y.min)&&Math.round(t.y.max)===Math.round(e.y.max)}function _k(t){return lo(t.x)/lo(t.y)}class Wxe{constructor(){this.members=[]}add(e){wI(this.members,e),e.scheduleRender()}remove(e){if(II(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(e){const n=this.members.findIndex(r=>e===r);if(n===0)return!1;let i;for(let r=n;r>=0;r--){const s=this.members[r];if(s.isPresent!==!1){i=s;break}}return i?(this.promote(i),!0):!1}promote(e,n){const i=this.lead;if(e!==i&&(this.prevLead=i,this.lead=e,e.show(),i)){i.instance&&i.scheduleRender(),e.scheduleRender(),e.resumeFrom=i,n&&(e.resumeFrom.preserveOpacity=!0),i.snapshot&&(e.snapshot=i.snapshot,e.snapshot.latestValues=i.animationValues||i.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:r}=e.options;r===!1&&i.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:n,resumingFrom:i}=e;n.onExitComplete&&n.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function xk(t,e,n){let i="";const r=t.x.translate/e.x,s=t.y.translate/e.y;if((r||s)&&(i=`translate3d(${r}px, ${s}px, 0) `),(e.x!==1||e.y!==1)&&(i+=`scale(${1/e.x}, ${1/e.y}) `),n){const{rotate:l,rotateX:u,rotateY:c}=n;l&&(i+=`rotate(${l}deg) `),u&&(i+=`rotateX(${u}deg) `),c&&(i+=`rotateY(${c}deg) `)}const o=t.x.scale*e.x,a=t.y.scale*e.y;return(o!==1||a!==1)&&(i+=`scale(${o}, ${a})`),i||"none"}const $xe=(t,e)=>t.depth-e.depth;class jxe{constructor(){this.children=[],this.isDirty=!1}add(e){wI(this.children,e),this.isDirty=!0}remove(e){II(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort($xe),this.isDirty=!1,this.children.forEach(e)}}function Xxe(t,e){const n=performance.now(),i=({timestamp:r})=>{const s=r-n;s>=e&&(qu(i),t(s-e))};return Nn.read(i,!0),()=>qu(i)}function Yxe(t){window.MotionDebug&&window.MotionDebug.record(t)}function Kxe(t){return t instanceof SVGElement&&t.tagName!=="svg"}function Jxe(t,e,n){const i=Ls(t)?t:_2(t);return i.start(CI("",i,e,n)),i.animation}const Ek=["","X","Y","Z"],Sk=1e3;let Zxe=0;const Gh={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function uX({attachResizeListener:t,defaultParent:e,measureScroll:n,checkIsScrollRoot:i,resetTransform:r}){return class{constructor(o={},a=e==null?void 0:e()){this.id=Zxe++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{Gh.totalNodes=Gh.resolvedTargetDeltas=Gh.recalculatedProjection=0,this.nodes.forEach(nEe),this.nodes.forEach(aEe),this.nodes.forEach(lEe),this.nodes.forEach(iEe),Yxe(Gh)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,this.root=a?a.root||a:this,this.path=a?[...a.path,a]:[],this.parent=a,this.depth=a?a.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new jxe)}addEventListener(o,a){return this.eventHandlers.has(o)||this.eventHandlers.set(o,new MI),this.eventHandlers.get(o).add(a)}notifyListeners(o,...a){const l=this.eventHandlers.get(o);l&&l.notify(...a)}hasListeners(o){return this.eventHandlers.has(o)}mount(o,a=this.root.hasTreeAnimated){if(this.instance)return;this.isSVG=Kxe(o),this.instance=o;const{layoutId:l,layout:u,visualElement:c}=this.options;if(c&&!c.current&&c.mount(o),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),a&&(u||l)&&(this.isLayoutDirty=!0),t){let h;const f=()=>this.root.updateBlockedByResize=!1;t(o,()=>{this.root.updateBlockedByResize=!0,h&&h(),h=Xxe(f,250),G8.hasAnimatedSinceResize&&(G8.hasAnimatedSinceResize=!1,this.nodes.forEach(Ck))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&c&&(l||u)&&this.addEventListener("didUpdate",({delta:h,hasLayoutChanged:f,hasRelativeTargetChanged:m,layout:g})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const v=this.options.transition||c.getDefaultTransition()||dEe,{onLayoutAnimationStart:_,onLayoutAnimationComplete:A}=c.getProps(),y=!this.targetLayout||!lX(this.targetLayout,g)||m,q=!f&&m;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||q||f&&(y||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(h,q);const E={...Wj(v,"layout"),onPlay:_,onComplete:A};(c.shouldReduceMotion||this.options.layoutRoot)&&(E.delay=0,E.type=!1),this.startAnimation(E)}else f||Ck(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=g})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,qu(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(uEe),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let c=0;c<this.path.length;c++){const h=this.path[c];h.shouldResetTransform=!0,h.updateScroll("snapshot"),h.options.layoutRoot&&h.willUpdate(!1)}const{layoutId:a,layout:l}=this.options;if(a===void 0&&!l)return;const u=this.getTransformTemplate();this.prevTransformTemplateValue=u?u(this.latestValues,""):void 0,this.updateSnapshot(),o&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(Tk);return}this.isUpdating||this.nodes.forEach(sEe),this.isUpdating=!1,this.nodes.forEach(oEe),this.nodes.forEach(eEe),this.nodes.forEach(tEe),this.clearAllSnapshots();const a=performance.now();Pr.delta=Wc(0,1e3/60,a-Pr.timestamp),Pr.timestamp=a,Pr.isProcessing=!0,Zq.update.process(Pr),Zq.preRender.process(Pr),Zq.render.process(Pr),Pr.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,queueMicrotask(()=>this.update()))}clearAllSnapshots(){this.nodes.forEach(rEe),this.sharedNodes.forEach(cEe)}scheduleUpdateProjection(){Nn.preRender(this.updateProjection,!1,!0)}scheduleCheckAfterUnmount(){Nn.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const o=this.layout;this.layout=this.measure(!1),this.layoutCorrected=Bi(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:a}=this.options;a&&a.notify("LayoutMeasure",this.layout.layoutBox,o?o.layoutBox:void 0)}updateScroll(o="measure"){let a=!!(this.options.layoutScroll&&this.instance);this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===o&&(a=!1),a&&(this.scroll={animationId:this.root.animationId,phase:o,isRoot:i(this.instance),offset:n(this.instance)})}resetTransform(){if(!r)return;const o=this.isLayoutDirty||this.shouldResetTransform,a=this.projectionDelta&&!aX(this.projectionDelta),l=this.getTransformTemplate(),u=l?l(this.latestValues,""):void 0,c=u!==this.prevTransformTemplateValue;o&&(a||Vh(this.latestValues)||c)&&(r(this.instance,u),this.shouldResetTransform=!1,this.scheduleRender())}measure(o=!0){const a=this.measurePageBox();let l=this.removeElementScroll(a);return o&&(l=this.removeTransform(l)),pEe(l),{animationId:this.root.animationId,measuredBox:a,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:o}=this.options;if(!o)return Bi();const a=o.measureViewportBox(),{scroll:l}=this.root;return l&&(tc(a.x,l.offset.x),tc(a.y,l.offset.y)),a}removeElementScroll(o){const a=Bi();Eo(a,o);for(let l=0;l<this.path.length;l++){const u=this.path[l],{scroll:c,options:h}=u;if(u!==this.root&&c&&h.layoutScroll){if(c.isRoot){Eo(a,o);const{scroll:f}=this.root;f&&(tc(a.x,-f.offset.x),tc(a.y,-f.offset.y))}tc(a.x,c.offset.x),tc(a.y,c.offset.y)}}return a}applyTransform(o,a=!1){const l=Bi();Eo(l,o);for(let u=0;u<this.path.length;u++){const c=this.path[u];!a&&c.options.layoutScroll&&c.scroll&&c!==c.root&&g0(l,{x:-c.scroll.offset.x,y:-c.scroll.offset.y}),Vh(c.latestValues)&&g0(l,c.latestValues)}return Vh(this.latestValues)&&g0(l,this.latestValues),l}removeTransform(o){const a=Bi();Eo(a,o);for(let l=0;l<this.path.length;l++){const u=this.path[l];if(!u.instance||!Vh(u.latestValues))continue;ES(u.latestValues)&&u.updateSnapshot();const c=Bi(),h=u.measurePageBox();Eo(c,h),yk(a,u.latestValues,u.snapshot?u.snapshot.layoutBox:void 0,c)}return Vh(this.latestValues)&&yk(a,this.latestValues),a}setTargetDelta(o){this.targetDelta=o,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(o){this.options={...this.options,...o,crossfade:o.crossfade!==void 0?o.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==Pr.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(o=!1){var a;const l=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=l.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=l.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=l.isSharedProjectionDirty);const u=!!this.resumingFrom||this!==l;if(!(o||u&&this.isSharedProjectionDirty||this.isProjectionDirty||!((a=this.parent)===null||a===void 0)&&a.isProjectionDirty||this.attemptToResolveRelativeTarget))return;const{layout:h,layoutId:f}=this.options;if(!(!this.layout||!(h||f))){if(this.resolvedRelativeTargetAt=Pr.timestamp,!this.targetDelta&&!this.relativeTarget){const m=this.getClosestProjectingParent();m&&m.layout&&this.animationProgress!==1?(this.relativeParent=m,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Bi(),this.relativeTargetOrigin=Bi(),X5(this.relativeTargetOrigin,this.layout.layoutBox,m.layout.layoutBox),Eo(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)){if(this.target||(this.target=Bi(),this.targetWithTransforms=Bi()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),gxe(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):Eo(this.target,this.layout.layoutBox),nX(this.target,this.targetDelta)):Eo(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget){this.attemptToResolveRelativeTarget=!1;const m=this.getClosestProjectingParent();m&&!!m.resumingFrom==!!this.resumingFrom&&!m.options.layoutScroll&&m.target&&this.animationProgress!==1?(this.relativeParent=m,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Bi(),this.relativeTargetOrigin=Bi(),X5(this.relativeTargetOrigin,this.target,m.target),Eo(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}Gh.resolvedTargetDeltas++}}}getClosestProjectingParent(){if(!(!this.parent||ES(this.parent.latestValues)||tX(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var o;const a=this.getLead(),l=!!this.resumingFrom||this!==a;let u=!0;if((this.isProjectionDirty||!((o=this.parent)===null||o===void 0)&&o.isProjectionDirty)&&(u=!1),l&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(u=!1),this.resolvedRelativeTargetAt===Pr.timestamp&&(u=!1),u)return;const{layout:c,layoutId:h}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||h))return;Eo(this.layoutCorrected,this.layout.layoutBox);const f=this.treeScale.x,m=this.treeScale.y;Txe(this.layoutCorrected,this.treeScale,this.path,l),a.layout&&!a.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(a.target=a.layout.layoutBox);const{target:g}=a;if(!g){this.projectionTransform&&(this.projectionDelta=m0(),this.projectionTransform="none",this.scheduleRender());return}this.projectionDelta||(this.projectionDelta=m0(),this.projectionDeltaWithTransform=m0());const v=this.projectionTransform;j5(this.projectionDelta,this.layoutCorrected,g,this.latestValues),this.projectionTransform=xk(this.projectionDelta,this.treeScale),(this.projectionTransform!==v||this.treeScale.x!==f||this.treeScale.y!==m)&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",g)),Gh.recalculatedProjection++}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(o=!0){if(this.options.scheduleRender&&this.options.scheduleRender(),o){const a=this.getStack();a&&a.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}setAnimationOrigin(o,a=!1){const l=this.snapshot,u=l?l.latestValues:{},c={...this.latestValues},h=m0();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const f=Bi(),m=l?l.source:void 0,g=this.layout?this.layout.source:void 0,v=m!==g,_=this.getStack(),A=!_||_.members.length<=1,y=!!(v&&!A&&this.options.crossfade===!0&&!this.path.some(fEe));this.animationProgress=0;let q;this.mixTargetDelta=E=>{const T=E/1e3;wk(h.x,o.x,T),wk(h.y,o.y,T),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(X5(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),hEe(this.relativeTarget,this.relativeTargetOrigin,f,T),q&&Hxe(this.relativeTarget,q)&&(this.isProjectionDirty=!1),q||(q=Bi()),Eo(q,this.relativeTarget)),v&&(this.animationValues=c,Oxe(c,u,this.latestValues,T,y,A)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=T},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(qu(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Nn.update(()=>{G8.hasAnimatedSinceResize=!0,this.currentAnimation=Jxe(0,Sk,{...o,onUpdate:a=>{this.mixTargetDelta(a),o.onUpdate&&o.onUpdate(a)},onComplete:()=>{o.onComplete&&o.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Sk),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:a,target:l,layout:u,latestValues:c}=o;if(!(!a||!l||!u)){if(this!==o&&this.layout&&u&&cX(this.options.animationType,this.layout.layoutBox,u.layoutBox)){l=this.target||Bi();const h=lo(this.layout.layoutBox.x);l.x.min=o.target.x.min,l.x.max=l.x.min+h;const f=lo(this.layout.layoutBox.y);l.y.min=o.target.y.min,l.y.max=l.y.min+f}Eo(a,l),g0(a,c),j5(this.projectionDeltaWithTransform,this.layoutCorrected,a,c)}}registerSharedNode(o,a){this.sharedNodes.has(o)||this.sharedNodes.set(o,new Wxe),this.sharedNodes.get(o).add(a);const u=a.options.initialPromotionConfig;a.promote({transition:u?u.transition:void 0,preserveFollowOpacity:u&&u.shouldPreserveFollowOpacity?u.shouldPreserveFollowOpacity(a):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var o;const{layoutId:a}=this.options;return a?((o=this.getStack())===null||o===void 0?void 0:o.lead)||this:this}getPrevLead(){var o;const{layoutId:a}=this.options;return a?(o=this.getStack())===null||o===void 0?void 0:o.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:a,preserveFollowOpacity:l}={}){const u=this.getStack();u&&u.promote(this,l),o&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetRotation(){const{visualElement:o}=this.options;if(!o)return;let a=!1;const{latestValues:l}=o;if((l.rotate||l.rotateX||l.rotateY||l.rotateZ)&&(a=!0),!a)return;const u={};for(let c=0;c<Ek.length;c++){const h="rotate"+Ek[c];l[h]&&(u[h]=l[h],o.setStaticValue(h,0))}o.render();for(const c in u)o.setStaticValue(c,u[c]);o.scheduleRender()}getProjectionStyles(o={}){var a,l;const u={};if(!this.instance||this.isSVG)return u;if(this.isVisible)u.visibility="";else return{visibility:"hidden"};const c=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,u.opacity="",u.pointerEvents=V8(o.pointerEvents)||"",u.transform=c?c(this.latestValues,""):"none",u;const h=this.getLead();if(!this.projectionDelta||!this.layout||!h.target){const v={};return this.options.layoutId&&(v.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,v.pointerEvents=V8(o.pointerEvents)||""),this.hasProjected&&!Vh(this.latestValues)&&(v.transform=c?c({},""):"none",this.hasProjected=!1),v}const f=h.animationValues||h.latestValues;this.applyTransformsToTarget(),u.transform=xk(this.projectionDeltaWithTransform,this.treeScale,f),c&&(u.transform=c(f,u.transform));const{x:m,y:g}=this.projectionDelta;u.transformOrigin=`${m.origin*100}% ${g.origin*100}% 0`,h.animationValues?u.opacity=h===this?(l=(a=f.opacity)!==null&&a!==void 0?a:this.latestValues.opacity)!==null&&l!==void 0?l:1:this.preserveOpacity?this.latestValues.opacity:f.opacityExit:u.opacity=h===this?f.opacity!==void 0?f.opacity:"":f.opacityExit!==void 0?f.opacityExit:0;for(const v in l9){if(f[v]===void 0)continue;const{correct:_,applyTo:A}=l9[v],y=u.transform==="none"?f[v]:_(f[v],h);if(A){const q=A.length;for(let E=0;E<q;E++)u[A[E]]=y}else u[v]=y}return this.options.layoutId&&(u.pointerEvents=h===this?V8(o.pointerEvents)||"":"none"),u}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}
6477resetTree(){this.root.nodes.forEach(o=>{var a;return(a=o.currentAnimation)===null||a===void 0?void 0:a.stop()}),this.root.nodes.forEach(Tk),this.root.sharedNodes.clear()}}}function eEe(t){t.updateLayout()}function tEe(t){var e;const n=((e=t.resumeFrom)===null||e===void 0?void 0:e.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&n&&t.hasListeners("didUpdate")){const{layoutBox:i,measuredBox:r}=t.layout,{animationType:s}=t.options,o=n.source!==t.layout.source;s==="size"?Qa(h=>{const f=o?n.measuredBox[h]:n.layoutBox[h],m=lo(f);f.min=i[h].min,f.max=f.min+m}):cX(s,n.layoutBox,i)&&Qa(h=>{const f=o?n.measuredBox[h]:n.layoutBox[h],m=lo(i[h]);f.max=f.min+m,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[h].max=t.relativeTarget[h].min+m)});const a=m0();j5(a,i,n.layoutBox);const l=m0();o?j5(l,t.applyTransform(r,!0),n.measuredBox):j5(l,i,n.layoutBox);const u=!aX(a);let c=!1;if(!t.resumeFrom){const h=t.getClosestProjectingParent();if(h&&!h.resumeFrom){const{snapshot:f,layout:m}=h;if(f&&m){const g=Bi();X5(g,n.layoutBox,f.layoutBox);const v=Bi();X5(v,i,m.layoutBox),lX(g,v)||(c=!0),h.options.layoutRoot&&(t.relativeTarget=v,t.relativeTargetOrigin=g,t.relativeParent=h)}}}t.notifyListeners("didUpdate",{layout:i,snapshot:n,delta:l,layoutDelta:a,hasLayoutChanged:u,hasRelativeTargetChanged:c})}else if(t.isLead()){const{onExitComplete:i}=t.options;i&&i()}t.options.transition=void 0}function nEe(t){Gh.totalNodes++,t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function iEe(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function rEe(t){t.clearSnapshot()}function Tk(t){t.clearMeasurements()}function sEe(t){t.isLayoutDirty=!1}function oEe(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function Ck(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function aEe(t){t.resolveTargetDelta()}function lEe(t){t.calcProjection()}function uEe(t){t.resetRotation()}function cEe(t){t.removeLeadSnapshot()}function wk(t,e,n){t.translate=ei(e.translate,0,n),t.scale=ei(e.scale,1,n),t.origin=e.origin,t.originPoint=e.originPoint}function Ik(t,e,n,i){t.min=ei(e.min,n.min,i),t.max=ei(e.max,n.max,i)}function hEe(t,e,n,i){Ik(t.x,e.x,n.x,i),Ik(t.y,e.y,n.y,i)}function fEe(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const dEe={duration:.45,ease:[.4,0,.1,1]},Mk=t=>typeof navigator<"u"&&navigator.userAgent.toLowerCase().includes(t),Rk=Mk("applewebkit/")&&!Mk("chrome/")?Math.round:Ai;function bk(t){t.min=Rk(t.min),t.max=Rk(t.max)}function pEe(t){bk(t.x),bk(t.y)}function cX(t,e,n){return t==="position"||t==="preserve-aspect"&&!_S(_k(e),_k(n),.2)}const mEe=uX({attachResizeListener:(t,e)=>eu(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),c_={current:void 0},hX=uX({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!c_.current){const t=new mEe({});t.mount(window),t.setOptions({layoutScroll:!0}),c_.current=t}return c_.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),gEe={pan:{Feature:Bxe},drag:{Feature:Pxe,ProjectionNode:hX,MeasureLayout:rX}},AEe=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;function vEe(t){const e=AEe.exec(t);if(!e)return[,];const[,n,i]=e;return[n,i]}function TS(t,e,n=1){const[i,r]=vEe(t);if(!i)return;const s=window.getComputedStyle(e).getPropertyValue(i);if(s){const o=s.trim();return $j(o)?parseFloat(o):o}else return dS(r)?TS(r,e,n+1):r}function yEe(t,{...e},n){const i=t.current;if(!(i instanceof Element))return{target:e,transitionEnd:n};n&&(n={...n}),t.values.forEach(r=>{const s=r.get();if(!dS(s))return;const o=TS(s,i);o&&r.set(o)});for(const r in e){const s=e[r];if(!dS(s))continue;const o=TS(s,i);o&&(e[r]=o,n||(n={}),n[r]===void 0&&(n[r]=s))}return{target:e,transitionEnd:n}}const qEe=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),fX=t=>qEe.has(t),_Ee=t=>Object.keys(t).some(fX),Pk=t=>t===K1||t===_t,Bk=(t,e)=>parseFloat(t.split(", ")[e]),Dk=(t,e)=>(n,{transform:i})=>{if(i==="none"||!i)return 0;const r=i.match(/^matrix3d\((.+)\)$/);if(r)return Bk(r[1],e);{const s=i.match(/^matrix\((.+)\)$/);return s?Bk(s[1],t):0}},xEe=new Set(["x","y","z"]),EEe=q6.filter(t=>!xEe.has(t));function SEe(t){const e=[];return EEe.forEach(n=>{const i=t.getValue(n);i!==void 0&&(e.push([n,i.get()]),i.set(n.startsWith("scale")?1:0))}),e.length&&t.render(),e}const x2={width:({x:t},{paddingLeft:e="0",paddingRight:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),height:({y:t},{paddingTop:e="0",paddingBottom:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:Dk(4,13),y:Dk(5,14)};x2.translateX=x2.x;x2.translateY=x2.y;const TEe=(t,e,n)=>{const i=e.measureViewportBox(),r=e.current,s=getComputedStyle(r),{display:o}=s,a={};o==="none"&&e.setStaticValue("display",t.display||"block"),n.forEac
vendor: 12,335 bytes, lines 6477-6485
6477h(u=>{a[u]=x2[u](i,s)}),e.render();const l=e.measureViewportBox();return n.forEach(u=>{const c=e.getValue(u);c&&c.jump(a[u]),t[u]=x2[u](l,s)}),t},CEe=(t,e,n={},i={})=>{e={...e},i={...i};const r=Object.keys(e).filter(fX);let s=[],o=!1;const a=[];if(r.forEach(l=>{const u=t.getValue(l);if(!t.hasValue(l))return;let c=n[l],h=Yf(c);const f=e[l];let m;if(c9(f)){const g=f.length,v=f[0]===null?1:0;c=f[v],h=Yf(c);for(let _=v;_<g&&f[_]!==null;_++)m?_I(Yf(f[_])===m):m=Yf(f[_])}else m=Yf(f);if(h!==m)if(Pk(h)&&Pk(m)){const g=u.get();typeof g=="string"&&u.set(parseFloat(g)),typeof f=="string"?e[l]=parseFloat(f):Array.isArray(f)&&m===_t&&(e[l]=f.map(parseFloat))}else h!=null&&h.transform&&(m!=null&&m.transform)&&(c===0||f===0)?c===0?u.set(m.transform(c)):e[l]=h.transform(f):(o||(s=SEe(t),o=!0),a.push(l),i[l]=i[l]!==void 0?i[l]:e[l],u.jump(f))}),a.length){const l=a.indexOf("height")>=0?window.pageYOffset:null,u=TEe(e,t,a);return s.length&&s.forEach(([c,h])=>{t.getValue(c).set(h)}),t.render(),_A&&l!==null&&window.scrollTo({top:l}),{target:u,transitionEnd:i}}else return{target:e,transitionEnd:i}};function wEe(t,e,n,i){return _Ee(e)?CEe(t,e,n,i):{target:e,transitionEnd:i}}const IEe=(t,e,n,i)=>{const r=yEe(t,e,i);return e=r.target,i=r.transitionEnd,wEe(t,e,n,i)},CS={current:null},dX={current:!1};function MEe(){if(dX.current=!0,!!_A)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>CS.current=t.matches;t.addListener(e),e()}else CS.current=!1}function REe(t,e,n){const{willChange:i}=e;for(const r in e){const s=e[r],o=n[r];if(Ls(s))t.addValue(r,s),p9(i)&&i.add(r);else if(Ls(o))t.addValue(r,_2(s,{owner:t})),p9(i)&&i.remove(r);else if(o!==s)if(t.hasValue(r)){const a=t.getValue(r);!a.hasAnimated&&a.set(s)}else{const a=t.getStaticValue(r);t.addValue(r,_2(a!==void 0?a:s,{owner:t}))}}for(const r in n)e[r]===void 0&&t.removeValue(r);return e}const Lk=new WeakMap,pX=Object.keys(x4),bEe=pX.length,Nk=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],PEe=cI.length;class BEe{constructor({parent:e,props:n,presenceContext:i,reducedMotionConfig:r,visualState:s},o={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>Nn.render(this.render,!1,!0);const{latestValues:a,renderState:l}=s;this.latestValues=a,this.baseTarget={...a},this.initialValues=n.initial?{...a}:{},this.renderState=l,this.parent=e,this.props=n,this.presenceContext=i,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.options=o,this.isControllingVariants=SA(n),this.isVariantNode=J$(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...c}=this.scrapeMotionValuesFromProps(n,{});for(const h in c){const f=c[h];a[h]!==void 0&&Ls(f)&&(f.set(a[h],!1),p9(u)&&u.add(h))}}scrapeMotionValuesFromProps(e,n){return{}}mount(e){this.current=e,Lk.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,i)=>this.bindToMotionValue(i,n)),dX.current||MEe(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:CS.current,this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){Lk.delete(this.current),this.projection&&this.projection.unmount(),qu(this.notifyUpdate),qu(this.render),this.valueSubscriptions.forEach(e=>e()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(e,n){const i=Y1.has(e),r=n.on("change",o=>{this.latestValues[e]=o,this.props.onUpdate&&Nn.update(this.notifyUpdate,!1,!0),i&&this.projection&&(this.projection.isTransformDirty=!0)}),s=n.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,()=>{r(),s()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}loadFeatures({children:e,...n},i,r,s){let o,a;for(let l=0;l<bEe;l++){const u=pX[l],{isEnabled:c,Feature:h,ProjectionNode:f,MeasureLayout:m}=x4[u];f&&(o=f),c(n)&&(!this.features[u]&&h&&(this.features[u]=new h(this)),m&&(a=m))}if(!this.projection&&o){this.projection=new o(this.latestValues,this.parent&&this.parent.projection);const{layoutId:l,layout:u,drag:c,dragConstraints:h,layoutScroll:f,layoutRoot:m}=n;this.projection.setOptions({layoutId:l,layout:u,alwaysMeasureLayout:!!c||h&&d0(h),visualElement:this,scheduleRender:()=>this.scheduleRender(),animationType:typeof u=="string"?u:"both",initialPromotionConfig:s,layoutScroll:f,layoutRoot:m})}return a}updateFeatures(){for(const e in this.features){const n=this.features[e];n.isMounted?n.update():(n.mount(),n.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Bi()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}makeTargetAnimatable(e,n=!0){return this.makeTargetAnimatableFromInstance(e,this.props,n)}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let i=0;i<Nk.length;i++){const r=Nk[i];this.propEventSubscriptions[r]&&(this.propEventSubscriptions[r](),delete this.propEventSubscriptions[r]);const s=e["on"+r];s&&(this.propEventSubscriptions[r]=this.on(r,s))}this.prevMotionValues=REe(this,this.scrapeMotionValuesFromProps(e,this.prevProps),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}getVariantContext(e=!1){if(e)return this.parent?this.parent.getVariantContext():void 0;if(!this.isControllingVariants){const i=this.parent?this.parent.getVariantContext()||{}:{};return this.props.initial!==void 0&&(i.initial=this.props.initial),i}const n={};for(let i=0;i<PEe;i++){const r=cI[i],s=this.props[r];(_4(s)||s===!1)&&(n[r]=s)}return n}addVariantChild(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){n!==this.values.get(e)&&(this.removeValue(e),this.bindToMotionValue(e,n)),this.values.set(e,n),this.latestValues[e]=n.get()}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let i=this.values.get(e);return i===void 0&&n!==void 0&&(i=_2(n,{owner:this}),this.addValue(e,i)),i}readValue(e){var n;return this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:(n=this.getBaseTargetFromProps(this.props,e))!==null&&n!==void 0?n:this.readValueFromInstance(this.current,e,this.options)}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){var n;const{initial:i}=this.props,r=typeof i=="string"||typeof i=="object"?(n=yI(this.props,i))===null||n===void 0?void 0:n[e]:void 0;if(i&&r!==void 0)return r;const s=this.getBaseTargetFromProps(this.props,e);return s!==void 0&&!Ls(s)?s:this.initialValues[e]!==void 0&&r===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new MI),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}}class mX extends BEe{sortInstanceNodePosition(e,n){return e.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(e,n){return e.style?e.style[n]:void 0}removeValueFromRenderState(e,{vars:n,style:i}){delete n[e],delete i[e]}makeTargetAnimatableFromInstance({transition:e,transitionEnd:n,...i},{transformValues:r},s){let o=Z_e(i,e||{},this);if(r&&(n&&(n=r(n)),i&&(i=r(i)),o&&(o=r(o))),s){K_e(this,i,o);const a=IEe(this,i,o,n);n=a.transitionEnd,i=a.target}return{transition:e,transitionEnd:n,...i}}}function DEe(t){return window.getComputedStyle(t)}class LEe extends mX{readValueFromInstance(e,n){if(Y1.has(n)){const i=TI(n);return i&&i.default||0}else{const i=DEe(e),r=(nj(n)?i.getPropertyValue(n):i[n])||0;return typeof r=="string"?r.trim():r}}measureInstanceViewportBox(e,{transformPagePoint:n}){return iX(e,n)}build(e,n,i,r){dI(e,n,i,r.transformTemplate)}scrapeMotionValuesFromProps(e,n){return vI(e,n)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;Ls(e)&&(this.childSubscription=e.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}renderInstance(e,n,i,r){lj(e,n,i,r)}}class NEe extends mX{constructor(){super(...arguments),this.isSVGTag=!1}getBaseTargetFromProps(e,n){return e[n]}readValueFromInstance(e,n){if(Y1.has(n)){const i=TI(n);return i&&i.default||0}return n=uj.has(n)?n:AI(n),e.getAttribute(n)}measureInstanceViewportBox(){return Bi()}scrapeMotionValuesFromProps(e,n){return hj(e,n)}build(e,n,i,r){mI(e,n,i,this.isSVGTag,r.transformTemplate)}renderInstance(e,n,i,r){cj(e,n,i,r)}mount(e){this.isSVGTag=gI(e.tagName),super.mount(e)}}const kEe=(t,e)=>fI(t)?new NEe(e,{enableHardwareAcceleration:!1}):new LEe(e,{enableHardwareAcceleration:!0}),FEe={layout:{ProjectionNode:hX,MeasureLayout:rX}},OEe={...fxe,...Bqe,...gEe,...FEe},bs=Vye((t,e)=>qqe(t,e,OEe,kEe));function gX(){const t=G.useRef(!1);return xA(()=>(t.current=!0,()=>{t.current=!1}),[]),t}function UEe(){const t=gX(),[e,n]=G.useState(0),i=G.useCallback(()=>{t.current&&n(e+1)},[e]);return[G.useCallback(()=>Nn.postRender(i),[i]),e]}class zEe extends G.Component{getSnapshotBeforeUpdate(e){const n=this.props.childRef.current;if(n&&e.isPresent&&!this.props.isPresent){const i=this.props.sizeRef.current;i.height=n.offsetHeight||0,i.width=n.offsetWidth||0,i.top=n.offsetTop,i.left=n.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function VEe({children:t,isPresent:e}){const n=G.useId(),i=G.useRef(null),r=G.useRef({width:0,height:0,top:0,left:0});return G.useInsertionEffect(()=>{const{width:s,height:o,top:a,left:l}=r.current;if(e||!i.current||!s||!o)return;i.current.dataset.motionPopId=n;const u=document.createElement("style");return document.head.appendChild(u),u.sheet&&u.sheet.insertRule(` 6478 [data-motion-pop-id="${n}"] { 6479 position: absolute !important; 6480 width: ${s}px !important; 6481 height: ${o}px !important; 6482 top: ${a}px !important; 6483 left: ${l}px !important; 6484 } 6485 `),()=>{document.head.removeChild(u)}},[e]),G.createElement(zEe,{isPresent:e,childRef:i,sizeRef:r},G.cloneElement(t,{ref:i}))}const h_=({children:t,initial:e,isPresent:n,onExitComplete:i,custom:r,presenceAffectsLayout:s,mode:o})=>{const a=qI(GEe),l=G.useId(),u=G.useMemo(()=>({id:l,initial:e,isPresent:n,custom:r,onExitComplete:c=>{a.set(c,!0);for(const h of a.values())if(!h)return;i&&i()},register:c=>(a.set(c,!1),()=>a.delete(c))}),s?void 0:[n]);return G.useMemo(()=>{a.forEach((c,h)=>a.set(h,!1))},[n]),G.useEffect(()=>{!n&&!a.size&&i&&i()},[n]),o==="popLayout"&&(t=G.createElement(VEe,{isPresent:n},t)),G.createElement(qA.Provider,{value:u},t)};function GEe(){return new Map}function QEe(t){return G.useEffect(()=>()=>t(),[])}const H3=t=>t.key||"";function HEe(t,e){t.forEach(n=>{const i=H3(n);e.set(i,n)})}function WEe(t){const e=[];
6485return G.Children.forEach(t,n=>{G.isValidElement(n)&&e.push(n)}),e}const IA=({children:t,custom:e,initial:n=!0,onExitComplete:i,exitBeforeEnter:r,presenceAffectsLayout:s=!0,mode:o="sync"})=>{const a=G.useContext(hI).forceRender||UEe()[0],l=gX(),u=WEe(t);let c=u;const h=G.useRef(new Map).current,f=G.useRef(c),m=G.useRef(new Map).current,g=G.useRef(!0);if(xA(()=>{g.current=!1,HEe(u,m),f.current=c}),QEe(()=>{g.current=!0,m.clear(),h.clear()}),g.current)return G.createElement(G.Fragment,null,c.map(y=>G.createElement(h_,{key:H3(y),isPresent:!0,initial:n?void 0:!1,presenceAffectsLayout:s,mode:o},y)));c=[...c];const v=f.current.map(H3),_=u.map(H3),A=v.length;for(let y=0;y<A;y++){const q=v[y];_.indexOf(q)===-1&&!h.has(q)&&h.set(q,void 0)}return o==="wait"&&h.size&&(c=[]),h.forEach((y,q)=>{if(_.indexOf(q)!==-1)return;const E=m.get(q);if(!E)return;const T=v.indexOf(q);let C=y;if(!C){const I=()=>{m.delete(q),h.delete(q);const R=f.current.findIndex(M=>M.key===q);if(f.current.splice(R,1),!h.size){if(f.current=u,l.current===!1)return;a(),i&&i()}};C=G.createElement(h_,{key:H3(E),isPresent:!1,onExitComplete:I,custom:e,presenceAffectsLayout:s,mode:o},E),h.set(q,C)}c.splice(T,0,C)}),c=c.map(y=>{const q=y.key;return h.has(q)?y:G.createElement(h_,{key:H3(y),isPresent:!0,presenceAffectsLayout:s,mode:o},y)}),G.createElement(G.Fragment,null,h.size?c:c.map(y=>G.cloneElement(y)))};function $Ee(t){t.values.forEach(e=>e.stop())}function jEe(){const t=new Set,e={subscribe(n){return t.add(n),()=>void t.delete(n)},start(n,i){const r=[];return t.forEach(s=>{r.push(Kj(s,n,{transitionOverride:i}))}),Promise.all(r)},set(n){return t.forEach(i=>{Y_e(i,n)})},stop(){t.forEach(n=>{$Ee(n)})},mount(){return()=>{e.stop()}}};return e}function XEe(){const t=qI(jEe);return xA(t.mount,[]),t}function YEe(t){const e=rt(r=>r.currentCategory),n=rt(r=>r.deviceType),i=rt(r=>r.hasScrolled);return ee(IA,{children:e!==null&&!i&&ee(bs.div,{initial:{opacity:0}
6485,animate:{opacity:1,transition:{type:"spring",duration:3,delay:n===Bo?1.2:3.5}},exit:{opacity:0,transition:{type:"spring",duration:.9,delay:0}},children:dt(bs.div,{className:"navigation-text",animate:{scale:1.3,textShadow:"0px 0px 5px rgb(255, 255, 255)"},transition:{repeat:1/0,repeatType:"mirror",duration:1,delay:n===Bo?4.2:6.5},children:[ee("p",{children:"SCROLL or SWIPE"}),ee("p",{className:"font-10",children:"to explore artworks"})]})})})}function AX(){return dt("div",{className:"bottom-bar",children:[ee(YEe,{}),ee(Bye,{className:"sound-icon",musicPath:"/Music/Landscape Spirit.mp3"})]})}function KEe({color:t=16777215,intensity:e=5,radius:n=10}){const i=G.useRef(),r=G.useRef(),s=q4(o=>o.setLights);return G.useEffect(()=>{i.current&&r.current?s([i.current,r.current]):console.log("not find")},[]),G4(o=>{if(i.current){const a=o.clock.getElapsedTime();let l,u,c;n=3,l=n*Math.cos(a/2),u=n*Math.cos(Math.PI/3.5),c=n*Math.sin(a/2),i.current.position.set(l,u,c)}}),dt(bc,{children:[ee("directionalLight",{position:[0,Math.PI/3.5,Math.PI/3.5],ref:i,color:t,intensity:e}),ee("ambientLight",{ref:r,color:16777215,intensity:.8})]})}const JEe=G.createContext(null);/** 6486 * postprocessing v6.33.4 build Sat Dec 02 2023 6487 * https://github.com/pmndrs/postprocessing 6488 * Copyright 2015-2023 Raoul van Rüschen 6489 * @license Zlib 6490 */var bI="varying vec2 vUv;void main(){vUv=position.xy*0.5+0.5;gl_Position=vec4(position.xy,1.0,1.0);}",Kt={SKIP:9,SET:30,ADD:0,ALPHA:1,AVERAGE:2,COLOR:3,COLOR_BURN:4,COLOR_DODGE:5,DARKEN:6,DIFFERENCE:7,DIVIDE:8,DST:9,EXCLUSION:10,HARD_LIGHT:11,HARD_MIX:12,HUE:13,INVERT:14,INVERT_RGB:15,LIGHTEN:16,LINEAR_BURN:17,LINEAR_DODGE:18,LINEAR_LIGHT:19,LUMINOSITY:20,MULTIPLY:21,NEGATION:22,NORMAL:23,OVERLAY:24,PIN_LIGHT:25,REFLECT:26,SATURATION:27,SCREEN:28,SOFT_LIGHT:29,SRC:30,SUBTRACT:31,VIVID_LIGHT:32},vX="",ki="srgb",MA="srgb-linear",Y5={DEFAULT:0,KEEP_MAX_DEPTH:1,DISCARD_MAX_DEPTH:2},ml={NONE:0,DEPTH:1,CONVOLUTION:2},dn={FRAGMENT_HEAD:"FRAGMENT_HEAD",FRAGMENT_MAIN_UV:"FRAGMENT_MAIN_UV",FRAGMENT_MAIN_IMAGE:"FRAGMENT_MAIN_IMAGE",VERTEX_HEAD:"VERTEX_HEAD",VERTEX_MAIN_SUPPORT:"VERTEX_MAIN_SUPPORT"},RA={VERY_SMALL:0,SMALL:1,MEDIUM:2,LARGE:3,VERY_LARGE:4,HUGE:5},yX=Number(Sa.replace(/\D+/g,"")),qX=yX>=152,ZEe=new Map([[B4,MA],[al,ki]]),eSe=new Map([[MA,B4],[ki,al]]);function L1(t){return t===null?null:qX?t.outputColorSpace:ZEe.get(t.outputEncoding)}function su(t,e){t!==null&&(qX?t.colorSpace=e:t.encoding=eSe.get(e))}function S6(t){return yX<154?t.replace("colorspace_fragment","encodings_fragment"):t}var tSe=`#ifdef FRAMEBUFFER_PRECISION_HIGH 6491uniform mediump sampler2D inputBuffer; 6492#else 6493uniform lowp sampler2D inputBuffer; 6494#endif 6495varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec4 sum=texture2D(inputBuffer,vUv0);sum+=texture2D(inputBuffer,vUv1);sum+=texture2D(inputBuffer,vUv2);sum+=texture2D(inputBuffer,vUv3);gl_FragColor=sum*0.25; 6496#include <colorspace_fragment> 6497}`,nSe="uniform vec4 texelSize;uniform float kernel;uniform float scale;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec2 uv=position.xy*0.5+0.5;vec2 dUv=(texelSize.xy*vec2(kernel)+texelSize.zw)*scale;vUv0=vec2(uv.x-dUv.x,uv.y+dUv.y);vUv1=vec2(uv.x+dUv.x,uv.y+dUv.y);vUv2=vec2(uv.x+dUv.x,uv.y-dUv.y);vUv3=vec2(uv.x-dUv.x,uv.y-dUv.y);gl_Position=vec4(position.xy,1.0,1.0);}",iSe=[new Float32Array([0,0]),new Float32Array([0,1,1]),new Float32Array([0,1,1,2]),new Float32Array([0,1,2,2,3]),new Float32Array([0,1,2,3,4,4,5]),new Float32Array([0,1,2,3,4,5,7,8,9,10])],rSe=class extends zt{constructor(t=new Zt){super({name:"KawaseBlurMaterial",uniforms:{inputBuffer:new Jt(null),texelSize:new Jt(new Zt),scale:new Jt(1),kernel:new Jt(0)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:tSe,vertexShader:nSe}),this.fragmentShader=S6(this.fragmentShader),this.setTexelSize(t.x,t.y),this.kernelSize=RA.MEDIUM}set inputBuffer(t){this.uniforms.inputBuffer.value=t}setInputBuffer(t){this.inputBuffer=t}get kernelSequence(){return iSe[this.kernelSize]}get scale(){return this.uniforms.scale.value}set scale(t){this.uniforms.scale.value=t}getScale(){return this.uniforms.scale.value}setScale(t){this.uniforms.scale.value=t}getKernel(){return null}get kernel(){return this.uniforms.kernel.value}set kernel(t){this.uniforms.kernel.value=t}setKernel(t){this.kernel=t}setTexelSize(t,e){this.uniforms.texelSize.value.set(t,e,t*.5,e*.5)}setSize(t,e){const n=1/t,i=1/e;this.uniforms.texelSize.value.set(n,i,n*.5,i*.5)}},sSe=`#include <common> 6498#include <dithering_pars_fragment> 6499#ifdef FRAMEBUFFER_PRECISION_HIGH 6500uniform mediump sampler2D inputBuffer; 6501#else 6502uniform lowp sampler2D inputBuffer; 6503#endif 6504uniform float opacity;varying vec2 vUv;void main(){vec4 texel=texture2D(inputBuffer,vUv);gl_FragColor=opacity*texel; 6505#include <colorspace_fragment> 6506#include <dithering_fragment> 6507}`,_X=class extends zt{constructor(){super({name:"CopyMaterial",uniforms:{inputBuffer:new Jt(null),opacity:new Jt(1)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:sSe,vertexShader:bI}),this.fragmentShader=S6(this.fragmentShader)}set inputBuffer(t){this.uniforms.inputBuffer.value=t}setInputBuffer(t){this.uniforms.inputBuffer.value=t}getOpacity(t){return this.uniforms.opacity.value}setOpacity(t){this.uniforms.opacity.value=t}},oSe=`#include <packing> 6508#ifdef GL_FRAGMENT_PRECISION_HIGH 6509uniform highp sampler2D depthBuffer; 6510#else 6511uniform mediump sampler2D depthBuffer; 6512#endif 6513#ifdef DOWNSAMPLE_NORMALS 6514uniform lowp sampler2D normalBuffer; 6515#endif 6516varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;float readDepth(const in vec2 uv){ 6517#if DEPTH_PACKING == 3201 6518return unpackRGBAToDepth(texture2D(depthBuffer,uv)); 6519#else 6520return texture2D(depthBuffer,uv).r; 6521#endif 6522}int findBestDepth(const in float samples[4]){float c=(samples[0]+samples[1]+samples[2]+samples[3])*0.25;float distances[4];distances[0]=abs(c-samples[0]);distances[1]=abs(c-samples[1]);distances[2]=abs(c-samples[2]);distances[3]=abs(c-samples[3]);float maxDistance=max(max(distances[0],distances[1]),max(distances[2],distances[3]));int remaining[3];int rejected[3];int i,j,k;for(i=0,j=0,k=0;i<4;++i){if(distances[i]<maxDistance){remaining[j++]=i;}else{rejected[k++]=i;}}for(;j<3;++j){remaining[j]=rejected[--k];}vec3 s=vec3(samples[remaining[0]],samples[remaining[1]],samples[remaining[2]]);c=(s.x+s.y+s.z)/3.0;distances[0]=abs(c-s.x);distances[1]=abs(c-s.y);distances[2]=abs(c-s.z);float minDistance=min(distances[0],min(distances[1],distances[2]));for(i=0;i<3;++i){if(distances[i]==minDistance){break;}}return remaining[i];}void main(){float d[4];d[0]=readDepth(vUv0);d[1]=readDepth(vUv1);d[2]=readDepth(vUv2);d[3]=readDepth(vUv3);int index=findBestDepth(d); 6523#ifdef DOWNSAMPLE_NORMALS 6524vec3 n[4];n[0]=texture2D(normalBuffer,vUv0).rgb;n[1]=texture2D(normalBuffer,vUv1).rgb;n[2]=texture2D(normalBuffer,vUv2).rgb;n[3]=texture2D(normalBuffer,vUv3).rgb; 6525#else 6526vec3 n[4];n[0]=vec3(0.0);n[1]=vec3(0.0);n[2]=vec3(0.0);n[3]=vec3(0.0); 6527#endif 6528gl_FragColor=vec4(n[index],d[index]);}`,aSe="uniform vec2 texelSize;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;void main(){vec2 uv=position.xy*0.5+0.5;vUv0=uv;vUv1=vec2(uv.x,uv.y+texelSize.y);vUv2=vec2(uv.x+texelSize.x,uv.y);vUv3=uv+texelSize;gl_Position=vec4(position.xy,1.0,1.0);}",lSe=class extends zt{constructor(){super({name:"DepthDownsamplingMaterial",defines:{DEPTH_PACKING:"0"},uniforms:{depthBuffer:new Jt(null),normalBuffer:new Jt(null),texelSize:new Jt(new oe)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:oSe,vertexShader:aSe})}set depthBuffer(t){this.uniforms.depthBuffer.value=t}set depthPacking(t){this.defines.DEPTH_PACKING=t.toFixed(0),this.needsUpdate=!0}setDepthBuffer(t,e=Aa){this.depthBuffer=t,this.depthPacking=e}set normalBuffer(t){this.uniforms.normalBuffer.value=t,t!==null?this.defines.DOWNSAMPLE_NORMALS="1":delete this.defines.DOWNSAMPLE_NORMALS,this.needsUpdate=!0}setNormalBuffer(t){this.normalBuffer=t}setTexelSize(t,e){this.uniforms.texelSize.value.set(t,e)}setSize(t,e){this.uniforms.texelSize.value.set(1/t,1/e)}},uSe=`#include <common> 6529#include <packing> 6530#ifdef GL_FRAGMENT_PRECISION_HIGH 6531uniform highp sampler2D depthBuffer0;uniform highp sampler2D depthBuffer1; 6532#else 6533uniform mediump sampler2D depthBuffer0;uniform mediump sampler2D depthBuffer1; 6534#endif 6535uniform sampler2D inputBuffer;uniform vec2 cameraNearFar;float getViewZ(const in float depth){ 6536#ifdef PERSPECTIVE_CAMERA 6537return perspectiveDepthToViewZ(depth,cameraNearFar.x,cameraNearFar.y); 6538#else 6539return orthographicDepthToViewZ(depth,cameraNearFar.x,cameraNearFar.y); 6540#endif 6541}varying vec2 vUv;void main(){vec2 depth; 6542#if DEPTH_PACKING_0 == 3201 6543depth.x=unpackRGBAToDepth(texture2D(depthBuffer0,vUv)); 6544#else 6545depth.x=texture2D(depthBuffer0,vUv).r; 6546#ifdef LOG_DEPTH 6547float d=pow(2.0,depth.x*log2(cameraNearFar.y+1.0))-1.0;float a=cameraNearFar.y/(cameraNearFar.y-cameraNearFar.x);float b=cameraNearFar.y*cameraNearFar.x/(cameraNearFar.x-cameraNearFar.y);depth.x=a+b/d; 6548#endif 6549#endif 6550#if DEPTH_PACKING_1 == 3201 6551depth.y=unpackRGBAToDepth(texture2D(depthBuffer1,vUv)); 6552#else 6553depth.y=texture2D(depthBuffer1,vUv).r; 6554#ifdef LOG_DEPTH 6555float d=pow(2.0,depth.y*log2(cameraNearFar.y+1.0))-1.0;float a=cameraNearFar.y/(cameraNearFar.y-cameraNearFar.x);float b=cameraNearFar.y*cameraNearFar.x/(cameraNearFar.x-cameraNearFar.y);depth.y=a+b/d; 6556#endif 6557#endif 6558bool isMaxDepth=(depth.x==1.0); 6559#ifdef PERSPECTIVE_CAMERA
6560depth.x=viewZToOrthographicDepth(getViewZ(depth.x),cameraNearFar.x,cameraNearFar.y);depth.y=viewZToOrthographicDepth(getViewZ(depth.y),cameraNearFar.x,cameraNearFar.y); 6561#endif 6562#if DEPTH_TEST_STRATEGY == 0 6563bool keep=depthTest(depth.x,depth.y); 6564#elif DEPTH_TEST_STRATEGY == 1 6565bool keep=isMaxDepth||depthTest(depth.x,depth.y); 6566#else 6567bool keep=!isMaxDepth&&depthTest(depth.x,depth.y); 6568#endif 6569if(keep){gl_FragColor=texture2D(inputBuffer,vUv);}else{discard;}}`,cSe=class extends zt{constructor(){super({name:"DepthMaskMaterial",defines:{DEPTH_EPSILON:"0.0001",DEPTH_PACKING_0:"0",DEPTH_PACKING_1:"0",DEPTH_TEST_STRATEGY:Y5.KEEP_MAX_DEPTH},uniforms:{inputBuffer:new Jt(null),depthBuffer0:new Jt(null),depthBuffer1:new Jt(null),cameraNearFar:new Jt(new oe(1,1))},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:uSe,vertexShader:bI}),this.depthMode=gm}set depthBuffer0(t){this.uniforms.depthBuffer0.value=t}set depthPacking0(t){this.defines.DEPTH_PACKING_0=t.toFixed(0),this.needsUpdate=!0}setDepthBuffer0(t,e=Aa){this.depthBuffer0=t,this.depthPacking0=e}set depthBuffer1(t){this.uniforms.depthBuffer1.value=t}set depthPacking1(t){this.defines.DEPTH_PACKING_1=t.toFixed(0),this.needsUpdate=!0}setDepthBuffer1(t,e=Aa){this.depthBuffer1=t,this.depthPacking1=e}get maxDepthStrategy(){return Number(this.defines.DEPTH_TEST_STRATEGY)}set maxDepthStrategy(t){this.defines.DEPTH_TEST_STRATEGY=t.toFixed(0),this.needsUpdate=!0}get keepFar(){return this.maxDepthStrategy}set keepFar(t){this.maxDepthStrategy=t?Y5.KEEP_MAX_DEPTH:Y5.DISCARD_MAX_DEPTH}getMaxDepthStrategy(){return this.maxDepthStrategy}setMaxDepthStrategy(t){this.maxDepthStrategy=t}get epsilon(){return Number(this.defines.DEPTH_EPSILON)}set epsilon(t){this.defines.DEPTH_EPSILON=t.toFixed(16),this.needsUpdate=!0}getEpsilon(){return this.epsilon}setEpsilon(t){this.epsilon=t}get depthMode(){return Number(this.defines.DEPTH_MODE)}set depthMode(t){let e;switch(t){case wT:e="false";break;case IT:e="true";break;case _d:e="abs(d1 - d0) <= DEPTH_EPSILON";break;case G9:e="abs(d1 - d0) > DEPTH_EPSILON";break;case gm:e="d0 > d1";break;case qd:e="d0 >= d1";break;case MT:e="d0 <= d1";break;case RT:default:e="d0 < d1";break}this.defines.DEPTH_MODE=t.toFixed(0),this.defines["depthTest(d0, d1)"]=e,this.needsUpdate=!0}getDepthMode(){return this.depthMode}setDepthMode(t){this.depthMode=t}adoptCameraSettings(t){this.copyCameraSettings(t)}copyCameraSettings(t){t&&(this.uniforms.cameraNearFar.value.set(t.near,t.far),t instanceof Yn?this.defines.PERSPECTIVE_CAMERA="1":delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}},hSe=`#ifdef FRAMEBUFFER_PRECISION_HIGH 6570uniform mediump sampler2D inputBuffer; 6571#else 6572uniform lowp sampler2D inputBuffer; 6573#endif 6574#define WEIGHT_INNER 0.125 6575#define WEIGHT_OUTER 0.0555555 6576varying vec2 vUv;varying vec2 vUv00;varying vec2 vUv01;varying vec2 vUv02;varying vec2 vUv03;varying vec2 vUv04;varying vec2 vUv05;varying vec2 vUv06;varying vec2 vUv07;varying vec2 vUv08;varying vec2 vUv09;varying vec2 vUv10;varying vec2 vUv11;float clampToBorder(const in vec2 uv){return float(uv.s>=0.0&&uv.s<=1.0&&uv.t>=0.0&&uv.t<=1.0);}void main(){vec4 c=vec4(0.0);vec4 w=WEIGHT_INNER*vec4(clampToBorder(vUv00),clampToBorder(vUv01),clampToBorder(vUv02),clampToBorder(vUv03));c+=w.x*texture2D(inputBuffer,vUv00);c+=w.y*texture2D(inputBuffer,vUv01);c+=w.z*texture2D(inputBuffer,vUv02);c+=w.w*texture2D(inputBuffer,vUv03);w=WEIGHT_OUTER*vec4(clampToBorder(vUv04),clampToBorder(vUv05),clampToBorder(vUv06),clampToBorder(vUv07));c+=w.x*texture2D(inputBuffer,vUv04);c+=w.y*texture2D(inputBuffer,vUv05);c+=w.z*texture2D(inputBuffer,vUv06);c+=w.w*texture2D(inputBuffer,vUv07);w=WEIGHT_OUTER*vec4(clampToBorder(vUv08),clampToBorder(vUv09),clampToBorder(vUv10),clampToBorder(vUv11));c+=w.x*texture2D(inputBuffer,vUv08);c+=w.y*texture2D(inputBuffer,vUv09);c+=w.z*texture2D(inputBuffer,vUv10);c+=w.w*texture2D(inputBuffer,vUv11);c+=WEIGHT_OUTER*texture2D(inputBuffer,vUv);gl_FragColor=c; 6577#include <colorspace_fragment> 6578}`,fSe="uniform vec2 texelSize;varying vec2 vUv;varying vec2 vUv00;varying vec2 vUv01;varying vec2 vUv02;varying vec2 vUv03;varying vec2 vUv04;varying vec2 vUv05;varying vec2 vUv06;varying vec2 vUv07;varying vec2 vUv08;varying vec2 vUv09;varying vec2 vUv10;varying vec2 vUv11;void main(){vUv=position.xy*0.5+0.5;
6578vUv00=vUv+texelSize*vec2(-1.0,1.0);vUv01=vUv+texelSize*vec2(1.0,1.0);vUv02=vUv+texelSize*vec2(-1.0,-1.0);vUv03=vUv+texelSize*vec2(1.0,-1.0);vUv04=vUv+texelSize*vec2(-2.0,2.0);vUv05=vUv+texelSize*vec2(0.0,2.0);vUv06=vUv+texelSize*vec2(2.0,2.0);vUv07=vUv+texelSize*vec2(-2.0,0.0);vUv08=vUv+texelSize*vec2(2.0,0.0);vUv09=vUv+texelSize*vec2(-2.0,-2.0);vUv10=vUv+texelSize*vec2(0.0,-2.0);vUv11=vUv+texelSize*vec2(2.0,-2.0);gl_Position=vec4(position.xy,1.0,1.0);}",dSe=class extends zt{constructor(){super({name:"DownsamplingMaterial",uniforms:{inputBuffer:new Jt(null),texelSize:new Jt(new oe)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:hSe,vertexShader:fSe}),this.fragmentShader=S6(this.fragmentShader)}set inputBuffer(t){this.uniforms.inputBuffer.value=t}setSize(t,e){this.uniforms.texelSize.value.set(1/t,1/e)}},pSe=`#include <common> 6579#include <packing> 6580#include <dithering_pars_fragment> 6581#define packFloatToRGBA(v) packDepthToRGBA(v) 6582#define unpackRGBAToFloat(v) unpackRGBAToDepth(v) 6583#ifdef FRAMEBUFFER_PRECISION_HIGH 6584uniform mediump sampler2D inputBuffer; 6585#else 6586uniform lowp sampler2D inputBuffer; 6587#endif 6588#if DEPTH_PACKING == 3201 6589uniform lowp sampler2D depthBuffer; 6590#elif defined(GL_FRAGMENT_PRECISION_HIGH) 6591uniform highp sampler2D depthBuffer; 6592#else 6593uniform mediump sampler2D depthBuffer; 6594#endif 6595uniform vec2 resolution;uniform vec2 texelSize;uniform float cameraNear;uniform float cameraFar;uniform float aspect;uniform float time;varying vec2 vUv; 6596#if THREE_REVISION < 143 6597#define luminance(v) linearToRelativeLuminance(v) 6598#endif 6599#if THREE_REVISION >= 137 6600vec4 sRGBToLinear(const in vec4 value){return vec4(mix(pow(value.rgb*0.9478672986+vec3(0.0521327014),vec3(2.4)),value.rgb*0.0773993808,vec3(lessThanEqual(value.rgb,vec3(0.04045)))),value.a);} 6601#endif 6602float readDepth(const in vec2 uv){ 6603#if DEPTH_PACKING == 3201 6604return unpackRGBAToDepth(texture2D(depthBuffer,uv)); 6605#else 6606return texture2D(depthBuffer,uv).r; 6607#endif 6608}float getViewZ(const in float depth){ 6609#ifdef PERSPECTIVE_CAMERA 6610return perspectiveDepthToViewZ(depth,cameraNear,cameraFar); 6611#else 6612return orthographicDepthToViewZ(depth,cameraNear,cameraFar); 6613#endif 6614}vec3 RGBToHCV(const in vec3 RGB){vec4 P=mix(vec4(RGB.bg,-1.0,2.0/3.0),vec4(RGB.gb,0.0,-1.0/3.0),step(RGB.b,RGB.g));vec4 Q=mix(vec4(P.xyw,RGB.r),vec4(RGB.r,P.yzx),step(P.x,RGB.r));float C=Q.x-min(Q.w,Q.y);float H=abs((Q.w-Q.y)/(6.0*C+EPSILON)+Q.z);return vec3(H,C,Q.x);}vec3 RGBToHSL(const in vec3 RGB){vec3 HCV=RGBToHCV(RGB);float L=HCV.z-HCV.y*0.5;float S=HCV.y/(1.0-abs(L*2.0-1.0)+EPSILON);return vec3(HCV.x,S,L);}vec3 HueToRGB(const in float H){float R=abs(H*6.0-3.0)-1.0;float G=2.0-abs(H*6.0-2.0);float B=2.0-abs(H*6.0-4.0);return clamp(vec3(R,G,B),0.0,1.0);}vec3 HSLToRGB(const in vec3 HSL){vec3 RGB=HueToRGB(HSL.x);float C=(1.0-abs(2.0*HSL.z-1.0))*HSL.y;return(RGB-0.5)*C+HSL.z;}FRAGMENT_HEAD void main(){FRAGMENT_MAIN_UV vec4 color0=texture2D(inputBuffer,UV);vec4 color1=vec4(0.0);FRAGMENT_MAIN_IMAGE color0.a=clamp(color0.a,0.0,1.0);gl_FragColor=color0; 6615#ifdef ENCODE_OUTPUT 6616#include <colorspace_fragment> 6617#endif 6618#include <dithering_fragment> 6619}`,mSe="uniform vec2 resolution;uniform vec2 texelSize;uniform float cameraNear;uniform float cameraFar;uniform float aspect;uniform float time;varying vec2 vUv;VERTEX_HEAD void main(){vUv=position.xy*0.5+0.5;VERTEX_MAIN_SUPPORT gl_Position=vec4(position.xy,1.0,1.0);}",gSe=class extends zt{constructor(t,e,n,i,r=!1){super({name:"EffectMaterial",defines:{THREE_REVISION:Sa.replace(/\D+/g,""),DEPTH_PACKING:"0",ENCODE_OUTPUT:"1"},uniforms:{inputBuffer:new Jt(null),depthBuffer:new Jt(null),resolution:new Jt(new oe),texelSize:new Jt(new oe),cameraNear:new Jt(.3),cameraFar:new Jt(1e3),aspect:new Jt(1),time:new Jt(0)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,dithering:r}),t&&this.setShaderParts(t),e&&this.setDefines(e),n&&this.setUniforms(n),this.copyCameraSettings(i)}set inputBuffer(t){this.uniforms.inputBuffer.value=t}setInputBuffer(t){this.uniforms.inputBuffer.value=t}get depthBuffer(){return this.uniforms.depthBuffer.value}set depthBuffer(t){this.uniforms.depthBuffer.value=t}get depthPacking(){return Number(this.defines.DEPTH_PACKING)}set depthPacking(t){this.defines.DEPTH_PACKING=t.toFixed(0),this.needsUpdate=!0}setDepthBuffer(t,e=Aa){this.depthBuffer=t,this.depthPacking=e}setShaderData(t){this.setShaderParts(t.shaderParts),this.setDefines(t.defines),this.setUniforms(t.uniforms),this.setExtensions(t.extensions)}setShaderParts(t){return this.fragmentShader=pSe.replace(dn.FRAGMENT_HEAD,t.get(dn.FRAGMENT_HEAD)||"").replace(dn.FRAGMENT_MAIN_UV,t.get(dn.FRAGMENT_MAIN_UV)||"").replace(dn.FRAGMENT_MAIN_IMAGE,t.get(dn.FRAGMENT_MAIN_IMAGE)||""),this.vertexShader=mSe.replace(dn.VERTEX_HEAD,t.get(dn.VERTEX_HEAD)||"").replace(dn.VERTEX_MAIN_SUPPORT,t.get(dn.VERTEX_MAIN_SUPPORT)||""),this.fragmentShader=S6(this.fragmentShader),this.needsUpdate=!0,this}setDefines(t){for(const e of t.entries())this.defines[e[0]]=e[1];return this.needsUpdate=!0,this}setUniforms(t){for(const e of t.entries())this.uniforms[e[0]]=e[1];return this}setExtensions(t){this.extensions={};for(const e of t)this.extensions[e]=!0;return this}get encodeOutput(){return this.defines.ENCODE_OUTPUT!==void 0}set encodeOutput(t){this.encodeOutput!==t&&(t?this.defines.ENCODE_OUTPUT="1":delete this.defines.ENCODE_OUTPUT,this.needsUpdate=!0)}isOutputEncodingEnabled(t){return this.encodeOutput}setOutputEncodingEnabled(t){this.encodeOutput=t}get time(){return this.uniforms.time.value}set time(t){this.uniforms.time.value=t}setDeltaTime(t){this.uniforms.time.value+=t}adoptCameraSettings(t){this.copyCameraSettings(t)}copyCameraSettings(t){t&&(this.uniforms.cameraNear.value=t.near,this.uniforms.cameraFar.value=t.far,t instanceof Yn?this.defines.PERSPECTIVE_CAMERA="1":delete this.defines.PERSPECTIVE_CAMERA,this.needsUpdate=!0)}setSize(t,e){const n=this.uniforms;n.resolution.value.set(t,e),n.texelSize.value.set(1/t,1/e),n.aspect.value=t/e}static get Section(){return dn}},ASe=`#include <common> 6620#if THREE_REVISION < 143 6621#define luminance(v) linearToRelativeLuminance(v) 6622#endif 6623#ifdef FRAMEBUFFER_PRECISION_HIGH 6624uniform mediump sampler2D inputBuffer; 6625#else 6626uniform lowp sampler2D inputBuffer; 6627#endif 6628#ifdef RANGE 6629uniform vec2 range; 6630#elif defined(THRESHOLD) 6631uniform float threshold;uniform float smoothing; 6632#endif 6633varying vec2 vUv;void main(){vec4 texel=texture2D(inputBuffer,vUv);float l=luminance(texel.rgb); 6634#ifdef RANGE 6635float low=step(range.x,l);float high=step(l,range.y);l*=low*high; 6636#elif defined(THRESHOLD) 6637l=smoothstep(threshold,threshold+smoothing,l); 6638#endif 6639#ifdef COLOR 6640gl_FragColor=vec4(texel.rgb*l,l); 6641#else 6642gl_FragColor=vec4(l); 6643#endif 6644}`,vSe=class extends zt{constructor(t=!1,e=null){super({name:"LuminanceMaterial",defines:{THREE_REVISION:Sa.replace(/\D+/g,"")},uniforms:{inputBuffer:new Jt(null),threshold:new Jt(0),smoothing:new Jt(1),range:new Jt(null)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ASe,vertexShader:bI}),this.colorOutput=t,this.luminanceRange=e}set inputBuffer(t){this.uniforms.inputBuffer.value=t}setInputBuffer(t){this.uniforms.inputBuffer.value=t}get threshold(){return this.uniforms.threshold.value}set threshold(t){this.smoothing>0||t>0?this.defines.THRESHOLD="1":delete this.defines.THRESHOLD,this.uniforms.threshold.value=t}getThreshold(){return this.threshold}setThreshold(t){this.threshold=t}get smoothing(){return this.uniforms.smoothing.value}set smoothing(t){this.threshold>0||t>0?this.defines.THRESHOLD="1":delete this.defines.THRESHOLD,this.uniforms.smoothing.value=t}getSmoothingFactor(){return this.smoothing}setSmoothingFactor(t){this.smoothing=t}get useThreshold(){return this.threshold>0||this.smoothing>0}set useThreshold(t){}get colorOutput(){return this.defines.COLOR!==void 0}set colorOutput(t){t?this.defines.COLOR="1":delete this.defines.COLOR,this.needsUpdate=!0}isColorOutputEnabled(t){return this.colorOutput}setColorOutputEnabled(t){this.colorOutput=t}get useRange(){return this.luminanceRange!==null}set useRange(t){this.luminanceRange=null}get luminanceRange(){return this.uniforms.range.value}set luminanceRange(t){t!==null?this.defines.RANGE="1":delete this.defines.RANGE,this.uniforms.range.value=t,this.needsUpdate=!0}getLuminanceRange(){return this.luminanceRange}setLuminanceRange(t){this.luminanceRange=t}},ySe=`#ifdef FRAMEBUFFER_PRECISION_HIGH 6645uniform mediump sampler2D inputBuffer;
6645uniform mediump sampler2D supportBuffer; 6646#else 6647uniform lowp sampler2D inputBuffer;uniform lowp sampler2D supportBuffer; 6648#endif 6649uniform float radius;varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5;varying vec2 vUv6;varying vec2 vUv7;void main(){vec4 c=vec4(0.0);c+=texture2D(inputBuffer,vUv0)*0.0625;c+=texture2D(inputBuffer,vUv1)*0.125;c+=texture2D(inputBuffer,vUv2)*0.0625;c+=texture2D(inputBuffer,vUv3)*0.125;c+=texture2D(inputBuffer,vUv)*0.25;c+=texture2D(inputBuffer,vUv4)*0.125;c+=texture2D(inputBuffer,vUv5)*0.0625;c+=texture2D(inputBuffer,vUv6)*0.125;c+=texture2D(inputBuffer,vUv7)*0.0625;vec4 baseColor=texture2D(supportBuffer,vUv);gl_FragColor=mix(baseColor,c,radius); 6650#include <colorspace_fragment> 6651}`,qSe="uniform vec2 texelSize;varying vec2 vUv;varying vec2 vUv0;varying vec2 vUv1;varying vec2 vUv2;varying vec2 vUv3;varying vec2 vUv4;varying vec2 vUv5;varying vec2 vUv6;varying vec2 vUv7;void main(){vUv=position.xy*0.5+0.5;vUv0=vUv+texelSize*vec2(-1.0,1.0);vUv1=vUv+texelSize*vec2(0.0,1.0);vUv2=vUv+texelSize*vec2(1.0,1.0);vUv3=vUv+texelSize*vec2(-1.0,0.0);vUv4=vUv+texelSize*vec2(1.0,0.0);vUv5=vUv+texelSize*vec2(-1.0,-1.0);vUv6=vUv+texelSize*vec2(0.0,-1.0);vUv7=vUv+texelSize*vec2(1.0,-1.0);gl_Position=vec4(position.xy,1.0,1.0);}",_Se=class extends zt{constructor(){super({name:"UpsamplingMaterial",uniforms:{inputBuffer:new Jt(null),supportBuffer:new Jt(null),texelSize:new Jt(new oe),radius:new Jt(.85)},blending:bt,toneMapped:!1,depthWrite:!1,depthTest:!1,fragmentShader:ySe,vertexShader:qSe}),this.fragmentShader=S6(this.fragmentShader)}set inputBuffer(t){this.uniforms.inputBuffer.value=t}set supportBuffer(t){this.uniforms.supportBuffer.value=t}get radius(){return this.uniforms.radius.value}set radius(t){this.uniforms.radius.value=t}setSize(t,e){this.uniforms.texelSize.value.set(1/t,1/e)}},xSe=new M2,ju=null;function ESe(){if(ju===null){const t=new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),e=new Float32Array([0,0,2,0,0,2]);ju=new Bt,ju.setAttribute!==void 0?(ju.setAttribute("position",new pn(t,3)),ju.setAttribute("uv",new pn(e,2))):(ju.addAttribute("position",new pn(t,3)),ju.addAttribute("uv",new pn(e,2)))}return ju}var cs=class xX{constructor(e="Pass",n=new K0,i=xSe){this.name=e,this.renderer=null,this.scene=n,this.camera=i,this.screen=null,this.rtt=!0,this.needsSwap=!0,this.needsDepthTexture=!1,this.enabled=!0}get renderToScreen(){return!this.rtt}set renderToScreen(e){if(this.rtt===e){const n=this.fullscreenMaterial;n!==null&&(n.needsUpdate=!0),this.rtt=!e}}set mainScene(e){}set mainCamera(e){}setRenderer(e){this.renderer=e}isEnabled(){return this.enabled}setEnabled(e){this.enabled=e}get fullscreenMaterial(){return this.screen!==null?this.screen.material:null}set fullscreenMaterial(e){let n=this.screen;n!==null?n.material=e:(n=new yn(ESe(),e),n.frustumCulled=!1,this.scene===null&&(this.scene=new K0),this.scene.add(n),this.screen=n)}getFullscreenMaterial(){return this.fullscreenMaterial}setFullscreenMaterial(e){this.fullscreenMaterial=e}getDepthTexture(){return null}setDepthTexture(e,n=Aa){}render(e,n,i,r,s){throw new Error("Render method not implemented!")}setSize(e,n){}initialize(e,n,i){}dispose(){for(const e of Object.keys(this)){const n=this[e];(n instanceof Yt||n instanceof Ji||n instanceof Gn||n instanceof xX)&&this[e].dispose()}}},SSe=class extends cs{constructor(t,e=!0){super("CopyPass"),this.fullscreenMaterial=new _X,this.needsSwap=!1,this.renderTarget=t,t===void 0&&(this.renderTarget=new Yt(1,1,{minFilter:_n,magFilter:_n,stencilBuffer:!1,depthBuffer:!1}),this.renderTarget.texture.name="CopyPass.Target"),this.autoResize=e}get resize(){return this.autoResize}set resize(t){this.autoResize=t}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}setAutoResizeEnabled(t){this.autoResize=t}render(t,e,n,i,r){this.fullscreenMaterial.inputBuffer=e.texture,t.setRenderTarget(this.renderToScreen?null:this.renderTarget),t.render(this.scene,this.camera)}setSize(t,e){this.autoResize&&this.renderTarget.setSize(t,e)}initialize(t,e,n){n!==void 0&&(this.renderTarget.texture.type=n,n!==Rn?this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1":L1(t)===ki&&su(this.renderTarget.texture,ki))}},TSe=class extends cs{constructor(){super("ClearMaskPass",null,null),this.needsSwap=!1}render(t,e,n,i,r){const s=t.state.buffers.stencil;s.setLocked(!1),s.setTest(!1)}},kk=new Me,PI=class extends cs{constructor(t=!0,e=!0,n=!1){super("ClearPass",null,null),this.needsSwap=!1,this.color=t,this.depth=e,this.stencil=n,this.overrideClearColor=null,this.overrideClearAlpha=-1}setClearFlags(t,e,n){this.color=t,this.depth=e,this.stencil=n}getOverrideClearColor(){return this.overrideClearColor}setOverrideClearColor(t){this.overrideClearColor=t}getOverrideClearAlpha(){return this.overrideClearAlpha}setOverrideClearAlpha(t){this.overrideClearAlpha=t}render(t,e,n,i,r){const s=this.overrideClearColor,o=this.overrideClearAlpha,a=t.getClearAlpha(),l=s!==null,u=o>=0;
vendor: 6,386 bytes, lines 6651-6655
6651l?(t.getClearColor(kk),t.setClearColor(s,u?o:a)):u&&t.setClearAlpha(o),t.setRenderTarget(this.renderToScreen?null:e),t.clear(this.color,this.depth,this.stencil),l?t.setClearColor(kk,a):u&&t.setClearAlpha(a)}},BI=class extends cs{constructor(t,e,n=null){super("RenderPass",t,e),this.needsSwap=!1,this.clearPass=new PI,this.overrideMaterialManager=n===null?null:new Ok(n),this.ignoreBackground=!1,this.skipShadowMapUpdate=!1,this.selection=null}set mainScene(t){this.scene=t}set mainCamera(t){this.camera=t}get renderToScreen(){return super.renderToScreen}set renderToScreen(t){super.renderToScreen=t,this.clearPass.renderToScreen=t}get overrideMaterial(){const t=this.overrideMaterialManager;return t!==null?t.material:null}set overrideMaterial(t){const e=this.overrideMaterialManager;t!==null?e!==null?e.setMaterial(t):this.overrideMaterialManager=new Ok(t):e!==null&&(e.dispose(),this.overrideMaterialManager=null)}getOverrideMaterial(){return this.overrideMaterial}setOverrideMaterial(t){this.overrideMaterial=t}get clear(){return this.clearPass.enabled}set clear(t){this.clearPass.enabled=t}getSelection(){return this.selection}setSelection(t){this.selection=t}isBackgroundDisabled(){return this.ignoreBackground}setBackgroundDisabled(t){this.ignoreBackground=t}isShadowMapDisabled(){return this.skipShadowMapUpdate}setShadowMapDisabled(t){this.skipShadowMapUpdate=t}getClearPass(){return this.clearPass}render(t,e,n,i,r){const s=this.scene,o=this.camera,a=this.selection,l=o.layers.mask,u=s.background,c=t.shadowMap.autoUpdate,h=this.renderToScreen?null:e;a!==null&&o.layers.set(a.getLayer()),this.skipShadowMapUpdate&&(t.shadowMap.autoUpdate=!1),(this.ignoreBackground||this.clearPass.overrideClearColor!==null)&&(s.background=null),this.clearPass.enabled&&this.clearPass.render(t,e),t.setRenderTarget(h),this.overrideMaterialManager!==null?this.overrideMaterialManager.render(t,s,o):t.render(s,o),o.layers.mask=l,s.background=u,t.shadowMap.autoUpdate=c}},CSe=class extends cs{constructor(t,e,{renderTarget:n,resolutionScale:i=1,width:r=Ci.AUTO_SIZE,height:s=Ci.AUTO_SIZE,resolutionX:o=r,resolutionY:a=s}={}){super("DepthPass"),this.needsSwap=!1,this.renderPass=new BI(t,e,new k4({depthPacking:D4}));const l=this.renderPass;l.skipShadowMapUpdate=!0,l.ignoreBackground=!0;const u=l.clearPass;u.overrideClearColor=new Me(16777215),u.overrideClearAlpha=1,this.renderTarget=n,this.renderTarget===void 0&&(this.renderTarget=new Yt(1,1,{minFilter:At,magFilter:At}),this.renderTarget.texture.name="DepthPass.Target");const c=this.resolution=new Ci(this,o,a,i);c.addEventListener("change",h=>this.setSize(c.baseWidth,c.baseHeight))}set mainScene(t){this.renderPass.mainScene=t}set mainCamera(t){this.renderPass.mainCamera=t}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(t){this.resolution.scale=t}render(t,e,n,i,r){const s=this.renderToScreen?null:this.renderTarget;this.renderPass.render(t,s)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e),this.renderTarget.setSize(n.width,n.height)}},wSe=class extends cs{constructor({normalBuffer:t=null,resolutionScale:e=.5,width:n=Ci.AUTO_SIZE,height:i=Ci.AUTO_SIZE,resolutionX:r=n,resolutionY:s=i}={}){super("DepthDownsamplingPass");const o=new lSe;o.normalBuffer=t,this.fullscreenMaterial=o,this.needsDepthTexture=!0,this.needsSwap=!1,this.renderTarget=new Yt(1,1,{minFilter:At,magFilter:At,depthBuffer:!1,type:kr}),this.renderTarget.texture.name="DepthDownsamplingPass.Target",this.renderTarget.texture.generateMipmaps=!1;const a=this.resolution=new Ci(this,r,s,e);a.addEventListener("change",l=>this.setSize(a.baseWidth,a.baseHeight))}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}setDepthTexture(t,e=Aa){this.fullscreenMaterial.depthBuffer=t,this.fullscreenMaterial.depthPacking=e}render(t,e,n,i,r){t.setRenderTarget(this.renderToScreen?null:this.renderTarget),t.render(this.scene,this.camera)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e),this.renderTarget.setSize(n.width,n.height),this.fullscreenMaterial.setSize(t,e)}initialize(t,e,n){const i=t.getContext();if(!(i.getExtension("EXT_color_buffer_float")||i.getExtension("EXT_color_buffer_half_float")))throw new Error("Rendering to float texture is not supported.")}};function Fk(t,e,n){for(const i of e){const r="$1"+t+i.charAt(0).toUpperCase()+i.slice(1),s=new RegExp("([^\\.])(\\b"+i+"\\b)","g");for(const o of n.entries())o[1]!==null&&n.set(o[0],o[1].replace(s,r))}}function ISe(t,e,n){let i=e.getFragmentShader(),r=e.getVertexShader();const s=i!==void 0&&/mainImage/.test(i),o=i!==void 0&&/mainUv/.test(i);if(n.attributes|=e.getAttributes(),i===void 0)throw new Error(`Missing fragment shader (${e.name})`);if(o&&n.attributes&ml.CONVOLUTION)throw new Error(`Effects that transform UVs are incompatible with convolution effects (${e.name})`);if(!s&&!o)throw new Error(`Could not find mainImage or mainUv function (${e.name})`);{const a=/\w+\s+(\w+)\([\w\s,]*\)\s*{/g,l=n.shaderParts;let u=l.get(dn.FRAGMENT_HEAD)||"",c=l.get(dn.FRAGMENT_MAIN_UV)||"",h=l.get(dn.FRAGMENT_MAIN_IMAGE)||"",f=l.get(dn.VERTEX_HEAD)||"",m=l.get(dn.VERTEX_MAIN_SUPPORT)||"";const g=new Set,v=new Set;if(o&&(c+=` ${t}MainUv(UV); 6652`,n.uvTransformation=!0),r!==null&&/mainSupport/.test(r)){const y=/mainSupport *\([\w\s]*?uv\s*?\)/.test(r);m+=` ${t}MainSupport(`,m+=y?`vUv); 6653`:`); 6654`;for(const q of r.matchAll(/(?:varying\s+\w+\s+([\S\s]*?);)/g))for(const E of q[1].split(/\s*,\s*/))n.varyings.add(E),g.add(E),v.add(E);for(const q of r.matchAll(a))v.add(q[1])}for(const y of i.matchAll(a))v.add(y[1]);for(const y of e.defines.keys())v.add(y.replace(/\([\w\s,]*\)/g,""));for(const y of e.uniforms.keys())v.add(y);v.delete("while"),v.delete("for"),v.delete("if"),e.uniforms.forEach((y,q)=>n.uniforms.set(t+q.charAt(0).toUpperCase()+q.slice(1),y)),e.defines.forEach((y,q)=>n.defines.set(t+q.charAt(0).toUpperCase()+q.slice(1),y));const _=new Map([["fragment",i],["vertex",r]]);Fk(t,v,n.defines),Fk(t,v,_),i=_.get("fragment"),r=_.get("vertex");const A=e.blendMode;if(n.blendModes.set(A.blendFunction,A),s){e.inputColorSpace!==null&&e.inputColorSpace!==n.colorSpace&&(h+=e.inputColorSpace===ki?`color0 = LinearTosRGB(color0); 6655 `:`color0 = sRGBToLinear(color0);
6656 `),e.outputColorSpace!==vX?n.colorSpace=e.outputColorSpace:e.inputColorSpace!==null&&(n.colorSpace=e.inputColorSpace);const y=/MainImage *\([\w\s,]*?depth[\w\s,]*?\)/;h+=`${t}MainImage(color0, UV, `,n.attributes&ml.DEPTH&&y.test(i)&&(h+="depth, ",n.readDepth=!0),h+=`color1); 6657 `;const q=t+"BlendOpacity";n.uniforms.set(q,A.opacity),h+=`color0 = blend${A.blendFunction}(color0, color1, ${q}); 6658 6659 `,u+=`uniform float ${q}; 6660 6661`}if(u+=i+` 6662`,r!==null&&(f+=r+` 6663`),l.set(dn.FRAGMENT_HEAD,u),l.set(dn.FRAGMENT_MAIN_UV,c),l.set(dn.FRAGMENT_MAIN_IMAGE,h),l.set(dn.VERTEX_HEAD,f),l.set(dn.VERTEX_MAIN_SUPPORT,m),e.extensions!==null)for(const y of e.extensions)n.extensions.add(y)}}var MSe=class extends cs{constructor(t,...e){super("EffectPass"),this.fullscreenMaterial=new gSe(null,null,null,t),this.listener=n=>this.handleEvent(n),this.effects=[],this.setEffects(e),this.skipRendering=!1,this.minTime=1,this.maxTime=Number.POSITIVE_INFINITY,this.timeScale=1}set mainScene(t){for(const e of this.effects)e.mainScene=t}set mainCamera(t){this.fullscreenMaterial.copyCameraSettings(t);for(const e of this.effects)e.mainCamera=t}get encodeOutput(){return this.fullscreenMaterial.encodeOutput}set encodeOutput(t){this.fullscreenMaterial.encodeOutput=t}get dithering(){return this.fullscreenMaterial.dithering}set dithering(t){const e=this.fullscreenMaterial;e.dithering=t,e.needsUpdate=!0}setEffects(t){for(const e of this.effects)e.removeEventListener("change",this.listener);this.effects=t.sort((e,n)=>n.attributes-e.attributes);for(const e of this.effects)e.addEventListener("change",this.listener)}updateMaterial(){const t=new OSe;let e=0;for(const o of this.effects)if(o.blendMode.blendFunction===Kt.DST)t.attributes|=o.getAttributes()&ml.DEPTH;else{if(t.attributes&o.getAttributes()&ml.CONVOLUTION)throw new Error(`Convolution effects cannot be merged (${o.name})`);ISe("e"+e++,o,t)}let n=t.shaderParts.get(dn.FRAGMENT_HEAD),i=t.shaderParts.get(dn.FRAGMENT_MAIN_IMAGE),r=t.shaderParts.get(dn.FRAGMENT_MAIN_UV);const s=/\bblend\b/g;for(const o of t.blendModes.values())n+=o.getShaderCode().replace(s,`blend${o.blendFunction}`)+` 6664`;t.attributes&ml.DEPTH?(t.readDepth&&(i=`float depth = readDepth(UV); 6665 6666 `+i),this.needsDepthTexture=this.getDepthTexture()===null):this.needsDepthTexture=!1,t.colorSpace===ki&&(i+=`color0 = sRGBToLinear(color0); 6667 `),t.uvTransformation?(r=`vec2 transformedUv = vUv; 6668`+r,t.defines.set("UV","transformedUv")):t.defines.set("UV","vUv"),t.shaderParts.set(dn.FRAGMENT_HEAD,n),t.shaderParts.set(dn.FRAGMENT_MAIN_IMAGE,i),t.shaderParts.set(dn.FRAGMENT_MAIN_UV,r);for(const[o,a]of t.shaderParts)a!==null&&t.shaderParts.set(o,a.trim().replace(/^#/,` 6669#`));this.skipRendering=e===0,this.needsSwap=!this.skipRendering,this.fullscreenMaterial.setShaderData(t)}recompile(){this.updateMaterial()}getDepthTexture(){return this.fullscreenMaterial.depthBuffer}setDepthTexture(t,e=Aa){this.fullscreenMaterial.depthBuffer=t,this.fullscreenMaterial.depthPacking=e;for(const n of this.effects)n.setDepthTexture(t,e)}render(t,e,n,i,r){for(const s of this.effects)s.update(t,e,i);if(!this.skipRendering||this.renderToScreen){const s=this.fullscreenMaterial;s.inputBuffer=e.texture,s.time+=i*this.timeScale,t.setRenderTarget(this.renderToScreen?null:n),t.render(this.scene,this.camera)}}setSize(t,e){this.fullscreenMaterial.setSize(t,e);for(const n of this.effects)n.setSize(t,e)}initialize(t,e,n){this.renderer=t;for(const i of this.effects)i.initialize(t,e,n);this.updateMaterial(),n!==void 0&&n!==Rn&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}dispose(){super.dispose();for(const t of this.effects)t.removeEventListener("change",this.listener),t.dispose()}handleEvent(t){switch(t.type){case"change":this.recompile();break}}},RSe=class extends cs{constructor({kernelSize:t=RA.MEDIUM,resolutionScale:e=.5,width:n=Ci.AUTO_SIZE,height:i=Ci.AUTO_SIZE,resolutionX:r=n,resolutionY:s=i}={}){super("KawaseBlurPass"),this.renderTargetA=new Yt(1,1,{depthBuffer:!1}),this.renderTargetA.texture.name="Blur.Target.A",this.renderTargetB=this.renderTargetA.clone(),this.renderTargetB.texture.name="Blur.Target.B";const o=this.resolution=new Ci(this,r,s,e);o.addEventListener("change",a=>this.setSize(o.baseWidth,o.baseHeight)),this._blurMaterial=new rSe,this._blurMaterial.kernelSize=t,this.copyMaterial=new _X}getResolution(){return this.resolution}get blurMaterial(){return this._blurMaterial}set blurMaterial(t){this._blurMaterial=t}get dithering(){return this.copyMaterial.dithering}set dithering(t){this.copyMaterial.dithering=t}get kernelSize(){return this.blurMaterial.kernelSize}set kernelSize(t){this.blurMaterial.kernelSize=t}get width(){return this.resolution.width}set width(t){this.resolution.preferredWidth=t}get height(){return this.resolution.height}set height(t){this.resolution.preferredHeight=t}get scale(){return this.blurMaterial.scale}set scale(t){this.blurMaterial.scale=t}getScale(){return this.blurMaterial.scale}setScale(t){this.blurMaterial.scale=t}getKernelSize(){return this.kernelSize}setKernelSize(t){this.kernelSize=t}getResolutionScale(){return this.resolution.scale}setResolutionScale(t){this.resolution.scale=t}render(t,e,n,i,r){const s=this.scene,o=this.camera,a=this.renderTargetA,l=this.renderTargetB,u=this.blurMaterial,c=u.kernelSequence;let h=e;this.fullscreenMaterial=u;for(let f=0,m=c.length;f<m;++f){const g=f&1?l:a;u.kernel=c[f],u.inputBuffer=h.texture,t.setRenderTarget(g),t.render(s,o),h=g}this.fullscreenMaterial=this.copyMaterial,this.copyMaterial.inputBuffer=h.texture,t.setRenderTarget(this.renderToScreen?null:n),t.render(s,o)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e);const i=n.width,r=n.height;this.renderTargetA.setSize(i,r),this.renderTargetB.setSize(i,r),this.blurMaterial.setSize(t,e)}initialize(t,e,n){n!==void 0&&(this.renderTargetA.texture.type=n,this.renderTargetB.texture.type=n,n!==Rn?(this.blurMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1",this.copyMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1"):L1(t)===ki&&(su(this.renderTargetA.texture,ki),su(this.renderTargetB.texture,ki)))}static get AUTO_SIZE(){return Ci.AUTO_SIZE}},bSe=class extends cs{constructor({renderTarget:t,luminanceRange:e,colorOutput:n,resolutionScale:i=1,width:r=Ci.AUTO_SIZE,height:s=Ci.AUTO_SIZE,resolutionX:o=r,resolutionY:a=s}={}){super("LuminancePass"),this.fullscreenMaterial=new vSe(n,e),this.needsSwap=!1,this.renderTarget=t,this.renderTarget===void 0&&(this.renderTarget=new Yt(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="LuminancePass.Target");const l=this.resolution=new Ci(this,o,a,i);l.addEventListener("change",u=>this.setSize(l.baseWidth,l.baseHeight))}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}render(t,e,n,i,r){const s=this.fullscreenMaterial;s.inputBuffer=e.texture,t.setRenderTarget(this.renderToScreen?null:this.renderTarget),t.render(this.scene,this.camera)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e),this.renderTarget.setSize(n.width,n.height)}initialize(t,e,n){n!==void 0&&n!==Rn&&(this.renderTarget.texture.type=n,this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}},PSe=class extends cs{constructor(t,e){super("MaskPass",t,e),this.needsSwap=!1,this.clearPass=new PI(!1,!1,!0),this.inverse=!1}set mainScene(t){this.scene=t}set mainCamera(t){this.camera=t}get inverted(){return this.inverse}set inverted(t){this.inverse=t}get clear(){return this.clearPass.enabled}set clear(t){this.clearPass.enabled=t}getClearPass(){return this.clearPass}isInverted(){return this.inverted}setInverted(t){this.inverted=t}render(t,e,n,i,r){const s=t.getContext(),o=t.state.buffers,a=this.scene,l=this.camera,u=this.clearPass,c=this.inverted?0:1,h=1-c;o.color.setMask(!1),o.depth.setMask(!1),o.color.setLocked(!0),o.depth.setLocked(!0),o.stencil.setTest(!0),o.stencil.setOp(s.REPLACE,s.REPLACE,s.REPLACE),o.stencil.setFunc(s.ALWAYS,c,4294967295),o.stencil.setClear(h),o.stencil.setLocked(!0),this.clearPass.enabled&&(this.renderToScreen?u.render(t,null):(u.render(t,e),u.render(t,n))),this.renderToScreen?(t.setRenderTarget(null),t.render(a,l)):(t.setRenderTarget(e),t.render(a,l),t.setRenderTarget(n),t.render(a,l)),o.color.setLocked(!1),o.depth.setLocked(!1),o.stencil.setLocked(!1),o.stencil.setFunc(s.EQUAL,1,4294967295),o.stencil.setOp(s.KEEP,s.KEEP,s.KEEP),o.stencil.setLocked(!0)}},BSe=class extends cs{constructor(){super("MipmapBlurPass"),this.needsSwap=!1,this.renderTarget=new Yt(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="Upsampling.Mipmap0",this.downsamplingMipmaps=[],this.upsamplingMipmaps=[],this.downsamplingMaterial=new dSe,this.upsamplingMaterial=new _Se,this.resolution=new oe}get texture(){return this.renderTarget.texture}get levels(){return this.downsamplingMipmaps.length}set levels(t){if(this.levels!==t){const e=this.renderTarget;this.dispose(),this.downsamplingMipmaps=[],this.upsamplingMipmaps=[];for(let n=0;n<t;++n){const i=e.clone();i.texture.name="Downsampling.Mipmap"+n,this.downsamplingMipmaps.push(i)}this.upsamplingMipmaps.push(e);for(let n=1,i=t-1;n<i;++n){const r=e.clone();r.texture.name="Upsampling.Mipmap"+n,this.upsamplingMipmaps.push(r)}this.setSize(this.resolution.x,this.resolution.y)}}
vendor: 16,530 bytes, line 6669
6669get radius(){return this.upsamplingMaterial.radius}set radius(t){this.upsamplingMaterial.radius=t}render(t,e,n,i,r){const{scene:s,camera:o}=this,{downsamplingMaterial:a,upsamplingMaterial:l}=this,{downsamplingMipmaps:u,upsamplingMipmaps:c}=this;let h=e;this.fullscreenMaterial=a;for(let f=0,m=u.length;f<m;++f){const g=u[f];a.setSize(h.width,h.height),a.inputBuffer=h.texture,t.setRenderTarget(g),t.render(s,o),h=g}this.fullscreenMaterial=l;for(let f=c.length-1;f>=0;--f){const m=c[f];l.setSize(h.width,h.height),l.inputBuffer=h.texture,l.supportBuffer=u[f].texture,t.setRenderTarget(m),t.render(s,o),h=m}}setSize(t,e){const n=this.resolution;n.set(t,e);let i=n.width,r=n.height;for(let s=0,o=this.downsamplingMipmaps.length;s<o;++s)i=Math.round(i*.5),r=Math.round(r*.5),this.downsamplingMipmaps[s].setSize(i,r),s<this.upsamplingMipmaps.length&&this.upsamplingMipmaps[s].setSize(i,r)}initialize(t,e,n){if(n!==void 0){const i=this.downsamplingMipmaps.concat(this.upsamplingMipmaps);for(const r of i)r.texture.type=n;if(n!==Rn)this.downsamplingMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1",this.upsamplingMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1";else if(L1(t)===ki)for(const r of i)su(r.texture,ki)}}dispose(){super.dispose();for(const t of this.downsamplingMipmaps.concat(this.upsamplingMipmaps))t.dispose()}},DSe=class extends cs{constructor(t,e,{renderTarget:n,resolutionScale:i=1,width:r=Ci.AUTO_SIZE,height:s=Ci.AUTO_SIZE,resolutionX:o=r,resolutionY:a=s}={}){super("NormalPass"),this.needsSwap=!1,this.renderPass=new BI(t,e,new D2);const l=this.renderPass;l.ignoreBackground=!0,l.skipShadowMapUpdate=!0;const u=l.getClearPass();u.overrideClearColor=new Me(7829503),u.overrideClearAlpha=1,this.renderTarget=n,this.renderTarget===void 0&&(this.renderTarget=new Yt(1,1,{minFilter:At,magFilter:At}),this.renderTarget.texture.name="NormalPass.Target");const c=this.resolution=new Ci(this,o,a,i);c.addEventListener("change",h=>this.setSize(c.baseWidth,c.baseHeight))}set mainScene(t){this.renderPass.mainScene=t}set mainCamera(t){this.renderPass.mainCamera=t}get texture(){return this.renderTarget.texture}getTexture(){return this.renderTarget.texture}getResolution(){return this.resolution}getResolutionScale(){return this.resolution.scale}setResolutionScale(t){this.resolution.scale=t}render(t,e,n,i,r){const s=this.renderToScreen?null:this.renderTarget;this.renderPass.render(t,s,s)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e),this.renderTarget.setSize(n.width,n.height)}},LSe=class extends cs{constructor(t,e="inputBuffer"){super("ShaderPass"),this.fullscreenMaterial=t,this.input=e}setInput(t){this.input=t}render(t,e,n,i,r){const s=this.fullscreenMaterial.uniforms;e!==null&&s!==void 0&&s[this.input]!==void 0&&(s[this.input].value=e.texture),t.setRenderTarget(this.renderToScreen?null:n),t.render(this.scene,this.camera)}initialize(t,e,n){n!==void 0&&n!==Rn&&(this.fullscreenMaterial.defines.FRAMEBUFFER_PRECISION_HIGH="1")}},f_=1/1e3,NSe=1e3,kSe=class{constructor(){this.startTime=performance.now(),this.previousTime=0,this.currentTime=0,this._delta=0,this._elapsed=0,this._fixedDelta=1e3/60,this.timescale=1,this.useFixedDelta=!1,this._autoReset=!1}get autoReset(){return this._autoReset}set autoReset(t){typeof document<"u"&&document.hidden!==void 0&&(t?document.addEventListener("visibilitychange",this):document.removeEventListener("visibilitychange",this),this._autoReset=t)}get delta(){return this._delta*f_}get fixedDelta(){return this._fixedDelta*f_}set fixedDelta(t){this._fixedDelta=t*NSe}get elapsed(){return this._elapsed*f_}update(t){this.useFixedDelta?this._delta=this.fixedDelta:(this.previousTime=this.currentTime,this.currentTime=(t!==void 0?t:performance.now())-this.startTime,this._delta=this.currentTime-this.previousTime),this._delta*=this.timescale,this._elapsed+=this._delta}reset(){this._delta=0,this._elapsed=0,this.currentTime=performance.now()-this.startTime}handleEvent(t){document.hidden||(this.currentTime=performance.now()-this.startTime)}dispose(){this.autoReset=!1}},FSe=class{constructor(e=null,{depthBuffer:n=!0,stencilBuffer:i=!1,multisampling:r=0,frameBufferType:s}={}){this.renderer=null,this.inputBuffer=this.createBuffer(n,i,s,r),this.outputBuffer=this.inputBuffer.clone(),this.copyPass=new SSe,this.depthTexture=null,this.passes=[],this.timer=new kSe,this.autoRenderToScreen=!0,this.setRenderer(e)}get multisampling(){return this.inputBuffer.samples||0}set multisampling(e){const n=this.inputBuffer,i=this.multisampling;i>0&&e>0?(this.inputBuffer.samples=e,this.outputBuffer.samples=e,this.inputBuffer.dispose(),this.outputBuffer.dispose()):i!==e&&(this.inputBuffer.dispose(),this.outputBuffer.dispose(),this.inputBuffer=this.createBuffer(n.depthBuffer,n.stencilBuffer,n.texture.type,e),this.inputBuffer.depthTexture=this.depthTexture,this.outputBuffer=this.inputBuffer.clone())}getTimer(){return this.timer}getRenderer(){return this.renderer}setRenderer(e){if(this.renderer=e,e!==null){const n=e.getSize(new oe),i=e.getContext().getContextAttributes().alpha,r=this.inputBuffer.texture.type;r===Rn&&L1(e)===ki&&(su(this.inputBuffer.texture,ki),su(this.outputBuffer.texture,ki),this.inputBuffer.dispose(),this.outputBuffer.dispose()),e.autoClear=!1,this.setSize(n.width,n.height);for(const s of this.passes)s.initialize(e,i,r)}}replaceRenderer(e,n=!0){const i=this.renderer,r=i.domElement.parentNode;return this.setRenderer(e),n&&r!==null&&(r.removeChild(i.domElement),r.appendChild(e.domElement)),i}createDepthTexture(){const e=this.depthTexture=new z1;return this.inputBuffer.depthTexture=e,this.inputBuffer.dispose(),this.inputBuffer.stencilBuffer?(e.format=fu,e.type=ol):e.type=Ka,e}deleteDepthTexture(){if(this.depthTexture!==null){this.depthTexture.dispose(),this.depthTexture=null,this.inputBuffer.depthTexture=null,this.inputBuffer.dispose();for(const e of this.passes)e.setDepthTexture(null)}}createBuffer(e,n,i,r){const s=this.renderer,o=s===null?new oe:s.getDrawingBufferSize(new oe),a={minFilter:_n,magFilter:_n,stencilBuffer:n,depthBuffer:e,type:i},l=new Yt(o.width,o.height,a);return r>0&&(l.ignoreDepthForMultisampleCopy=!1,l.samples=r),i===Rn&&L1(s)===ki&&su(l.texture,ki),l.texture.name="EffectComposer.Buffer",l.texture.generateMipmaps=!1,l}setMainScene(e){for(const n of this.passes)n.mainScene=e}setMainCamera(e){for(const n of this.passes)n.mainCamera=e}addPass(e,n){const i=this.passes,r=this.renderer,s=r.getDrawingBufferSize(new oe),o=r.getContext().getContextAttributes().alpha,a=this.inputBuffer.texture.type;if(e.setRenderer(r),e.setSize(s.width,s.height),e.initialize(r,o,a),this.autoRenderToScreen&&(i.length>0&&(i[i.length-1].renderToScreen=!1),e.renderToScreen&&(this.autoRenderToScreen=!1)),n!==void 0?i.splice(n,0,e):i.push(e),this.autoRenderToScreen&&(i[i.length-1].renderToScreen=!0),e.needsDepthTexture||this.depthTexture!==null)if(this.depthTexture===null){const l=this.createDepthTexture();for(e of i)e.setDepthTexture(l)}else e.setDepthTexture(this.depthTexture)}removePass(e){const n=this.passes,i=n.indexOf(e);if(i!==-1&&n.splice(i,1).length>0){if(this.depthTexture!==null){const o=(l,u)=>l||u.needsDepthTexture;n.reduce(o,!1)||(e.getDepthTexture()===this.depthTexture&&e.setDepthTexture(null),this.deleteDepthTexture())}this.autoRenderToScreen&&i===n.length&&(e.renderToScreen=!1,n.length>0&&(n[n.length-1].renderToScreen=!0))}}removeAllPasses(){const e=this.passes;this.deleteDepthTexture(),e.length>0&&(this.autoRenderToScreen&&(e[e.length-1].renderToScreen=!1),this.passes=[])}render(e){const n=this.renderer,i=this.copyPass;let r=this.inputBuffer,s=this.outputBuffer,o=!1,a,l,u;e===void 0&&(this.timer.update(),e=this.timer.delta);for(const c of this.passes)c.enabled&&(c.render(n,r,s,e,o),c.needsSwap&&(o&&(i.renderToScreen=c.renderToScreen,a=n.getContext(),l=n.state.buffers.stencil,l.setFunc(a.NOTEQUAL,1,4294967295),i.render(n,r,s,e,o),l.setFunc(a.EQUAL,1,4294967295)),u=r,r=s,s=u),c instanceof PSe?o=!0:c instanceof TSe&&(o=!1))}setSize(e,n,i){const r=this.renderer,s=r.getSize(new oe);(e===void 0||n===void 0)&&(e=s.width,n=s.height),(s.width!==e||s.height!==n)&&r.setSize(e,n,i);const o=r.getDrawingBufferSize(new oe);this.inputBuffer.setSize(o.width,o.height),this.outputBuffer.setSize(o.width,o.height);for(const a of this.passes)a.setSize(o.width,o.height)}reset(){const e=this.timer.autoReset;this.dispose(),this.autoRenderToScreen=!0,this.timer.autoReset=e}dispose(){for(const e of this.passes)e.dispose();this.passes=[],this.inputBuffer!==null&&this.inputBuffer.dispose(),this.outputBuffer!==null&&this.outputBuffer.dispose(),this.deleteDepthTexture(),this.copyPass.dispose(),this.timer.dispose()}},OSe=class{constructor(){this.shaderParts=new Map([[dn.FRAGMENT_HEAD,null],[dn.FRAGMENT_MAIN_UV,null],[dn.FRAGMENT_MAIN_IMAGE,null],[dn.VERTEX_HEAD,null],[dn.VERTEX_MAIN_SUPPORT,null]]),this.defines=new Map,this.uniforms=new Map,this.blendModes=new Map,this.extensions=new Set,this.attributes=ml.NONE,this.varyings=new Set,this.uvTransformation=!1,this.readDepth=!1,this.colorSpace=MA}},d_=!1,Ok=class{constructor(t=null){this.originalMaterials=new Map,this.material=null,this.materials=null,this.materialsBackSide=null,this.materialsDoubleSide=null,this.materialsFlatShaded=null,this.materialsFlatShadedBackSide=null,this.materialsFlatShadedDoubleSide=null,this.setMaterial(t),this.meshCount=0,this.replaceMaterial=e=>{if(e.isMesh){let n;if(e.material.flatShading)switch(e.material.side){case ts:n=this.materialsFlatShadedDoubleSide;break;case Fi:n=this.materialsFlatShadedBackSide;break;default:n=this.materialsFlatShaded;break}else switch(e.material.side){case ts:n=this.materialsDoubleSide;break;case Fi:n=this.materialsBackSide;break;default:n=this.materials;break}this.originalMaterials.set(e,e.material),e.isSkinnedMesh?e.material=n[2]:e.isInstancedMesh?e.material=n[1]:e.material=n[0],++this.meshCount}}}cloneMaterial(t){if(!(t instanceof zt))return t.clone();const e=t.uniforms,n=new Map;for(const r in e){const s=e[r].value;s.isRenderTargetTexture&&(e[r].value=null,n.set(r,s))}const i=t.clone();for(const r of n)e[r[0]].value=r[1],i.uniforms[r[0]].value=r[1];return i}setMaterial(t){if(this.disposeMaterials(),this.material=t,t!==null){const e=this.materials=[this.cloneMaterial(t),this.cloneMaterial(t),this.cloneMaterial(t)];for(const n of e)n.uniforms=Object.assign({},t.uniforms),n.side=gl;e[2].skinning=!0,this.materialsBackSide=e.map(n=>{const i=this.cloneMaterial(n);return i.uniforms=Object.assign({},t.uniforms),i.side=Fi,i}),this.materialsDoubleSide=e.map(n=>{const i=this.cloneMaterial(n);return i.uniforms=Object.assign({},t.uniforms),i.side=ts,i}),this.materialsFlatShaded=e.map(n=>{const i=this.cloneMaterial(n);return i.uniforms=Object.assign({},t.uniforms),i.flatShading=!0,i}),this.materialsFlatShadedBackSide=e.map(n=>{const i=this.cloneMaterial(n);return i.uniforms=Object.assign({},t.uniforms),i.flatShading=!0,i.side=Fi,i}),this.materialsFlatShadedDoubleSide=e.map(n=>{const i=this.cloneMaterial(n);return i.uniforms=Object.assign({},t.uniforms),i.flatShading=!0,i.side=ts,i})}}render(t,e,n){const i=t.shadowMap.enabled;if(t.shadowMap.enabled=!1,d_){const r=this.originalMaterials;this.meshCount=0,e.traverse(this.replaceMaterial),t.render(e,n);for(const s of r)s[0].material=s[1];this.meshCount!==r.size&&r.clear()}else{const r=e.overrideMaterial;e.overrideMaterial=this.material,t.render(e,n),e.overrideMaterial=r}t.shadowMap.enabled=i}disposeMaterials(){if(this.material!==null){const t=this.materials.concat(this.materialsBackSide).concat(this.materialsDoubleSide).concat(this.materialsFlatShaded).concat(this.materialsFlatShadedBackSide).concat(this.materialsFlatShadedDoubleSide);for(const e of t)e.dispose()}}dispose(){this.originalMaterials.clear(),this.disposeMaterials()}static get workaroundEnabled(){return d_}static set workaroundEnabled(t){d_=t}},Xu=-1,Ci=class extends $o{constructor(t,e=Xu,n=Xu,i=1){super(),this.resizable=t,this.baseSize=new oe(1,1),this.preferredSize=new oe(e,n),this.target=this.preferredSize,this.s=i,this.effectiveSize=new oe,this.addEventListener("change",()=>this.updateEffectiveSize()),this.updateEffectiveSize()}updateEffectiveSize(){const t=this.baseSize,e=this.preferredSize,n=this.effectiveSize,i=this.scale;e.width!==Xu?n.width=e.width:e.height!==Xu?n.width=Math.round(e.height*(t.width/Math.max(t.height,1))):n.width=Math.round(t.width*i),e.height!==Xu?n.height=e.height:e.width!==Xu?n.height=Math.round(e.width/Math.max(t.width/Math.max(t.height,1),1)):n.height=Math.round(t.height*i)}get width(){return this.effectiveSize.width}set width(t){this.preferredWidth=t}get height(){return this.effectiveSize.height}set height(t){this.preferredHeight=t}getWidth(){return this.width}getHeight(){return this.height}get scale(){return this.s}set scale(t){this.s!==t&&(this.s=t,this.preferredSize.setScalar(Xu),this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}getScale(){return this.scale}setScale(t){this.scale=t}get baseWidth(){return this.baseSize.width}set baseWidth(t){this.baseSize.width!==t&&(this.baseSize.width=t,this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}getBaseWidth(){return this.baseWidth}setBaseWidth(t){this.baseWidth=t}get baseHeight(){return this.baseSize.height}set baseHeight(t){this.baseSize.height!==t&&(this.baseSize.height=t,this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}getBaseHeight(){return this.baseHeight}setBaseHeight(t){this.baseHeight=t}setBaseSize(t,e){(this.baseSize.width!==t||this.baseSize.height!==e)&&(this.baseSize.set(t,e),this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}get preferredWidth(){return this.preferredSize.width}set preferredWidth(t){this.preferredSize.width!==t&&(this.preferredSize.width=t,this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}getPreferredWidth(){return this.preferredWidth}setPreferredWidth(t){this.preferredWidth=t}get preferredHeight(){return this.preferredSize.height}set preferredHeight(t){this.preferredSize.height!==t&&(this.preferredSize.height=t,this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}getPreferredHeight(){return this.preferredHeight}setPreferredHeight(t){this.preferredHeight=t}setPreferredSize(t,e){(this.preferredSize.width!==t||this.preferredSize.height!==e)&&(this.preferredSize.set(t,e),this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height))}copy(t){this.s=t.scale,this.baseSize.set(t.baseWidth,t.baseHeight),this.preferredSize.set(t.preferredWidth,t.preferredHeight),this.dispatchEvent({type:"change"}),this.resizable.setSize(this.baseSize.width,this.baseSize.height)}static get AUTO_SIZE(){return Xu}},USe=class extends Set{constructor(t,e=10){super(),this.l=e,this.exclusive=!1,t!==void 0&&this.set(t)}get layer(){return this.l}set layer(t){const e=this.l;for(const n of this)n.layers.disable(e),n.layers.enable(t);this.l=t}getLayer(){return this.layer}setLayer(t){this.layer=t}isExclusive(){return this.exclusive}setExclusive(t){this.exclusive=t}clear(){const t=this.layer;for(const e of this)e.layers.disable(t);return super.clear()}set(t){this.clear();for(const e of t)this.add(e);return this}indexOf(t){return this.has(t)?0:-1}add(t){return this.exclusive?t.layers.set(this.layer):t.layers.enable(this.layer),super.add(t)}delete(t){return this.has(t)&&t.layers.disable(this.layer),super.delete(t)}toggle(t){let e;return this.has(t)?(this.delete(t),e=!1):(this.add(t),e=!0),e}setVisible(t){for(const e of this)t?e.layers.enable(0):e.layers.disable(0);return this}},zSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,x+y,opacity);}",VSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,y,min(y.a,opacity));}",GSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,(x+y)*0.5,opacity);}",QSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec3 xHSL=RGBToHSL(x.rgb);vec3 yHSL=RGBToHSL(y.rgb);vec3 z=HSLToRGB(vec3(yHSL.rg,xHSL.b));return vec4(mix(x.rgb,z,opacity),y.a);}",HSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 z=mix(step(0.0,y)*(1.0-min(vec4(1.0),(1.0-x)/y)),vec4(1.0),step(1.0,x));return mix(x,z,opacity);}",WSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 z=step(0.0,x)*mix(min(vec4(1.
66690),x/max(1.0-y,1e-9)),vec4(1.0),step(1.0,y));return mix(x,z,opacity);}",$Se="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,min(x,y),opacity);}",jSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,abs(x-y),opacity);}",XSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,x/max(y,1e-12),opacity);}",YSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,(x+y-2.0*x*y),opacity);}",KSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 a=min(x,1.0),b=min(y,1.0);vec4 z=mix(2.0*a*b,1.0-2.0*(1.0-a)*(1.0-b),step(0.5,y));return mix(x,z,opacity);}",JSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,step(1.0,x+y),opacity);}",ZSe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec3 xHSL=RGBToHSL(x.rgb);vec3 yHSL=RGBToHSL(y.rgb);vec3 z=HSLToRGB(vec3(yHSL.r,xHSL.gb));return vec4(mix(x.rgb,z,opacity),y.a);}",eTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,1.0-y,opacity);}",tTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,y*(1.0-x),opacity);}",nTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,max(x,y),opacity);}",iTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,clamp(y+x-1.0,0.0,1.0),opacity);}",rTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,min(x+y,1.0),opacity);}",sTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,clamp(2.0*y+x-1.0,0.0,1.0),opacity);}",oTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec3 xHSL=RGBToHSL(x.rgb);vec3 yHSL=RGBToHSL(y.rgb);vec3 z=HSLToRGB(vec3(xHSL.rg,yHSL.b));return vec4(mix(x.rgb,z,opacity),y.a);}",aTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,x*y,opacity);}",lTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,1.0-abs(1.0-x-y),opacity);}",uTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,y,opacity);}",cTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 z=mix(2.0*y*x,1.0-2.0*(1.0-y)*(1.0-x),step(0.5,x));return mix(x,z,opacity);}",hTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 y2=2.0*y;vec4 z=mix(mix(y2,x,step(0.5*x,y)),max(vec4(0.0),y2-1.0),step(x,(y2-1.0)));return mix(x,z,opacity);}",fTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 z=mix(min(x*x/max(1.0-y,1e-12),1.0),y,step(1.0,y));return mix(x,z,opacity);}",dTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec3 xHSL=RGBToHSL(x.rgb);vec3 yHSL=RGBToHSL(y.rgb);vec3 z=HSLToRGB(vec3(xHSL.r,yHSL.g,xHSL.b));return vec4(mix(x.rgb,z,opacity),y.a);}",pTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,x+y-min(x*y,1.0),opacity);}",mTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 y2=2.0*y;vec4 w=step(0.5,y);vec4 z=mix(x-(1.0-y2)*x*(1.0-x),mix(x+(y2-1.0)*(sqrt(x)-x),x+(y2-1.0)*x*((16.0*x-12.0)*x+3.0),w*(1.0-step(0.25,x))),w);return mix(x,z,opacity);}",gTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return y;}",ATe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){return mix(x,max(x+y-1.0,0.0),opacity);}",vTe="vec4 blend(const in vec4 x,const in vec4 y,const in float opacity){vec4 z=mix(max(1.0-min((1.0-x)/(2.0*y),1.0),0.0),min(x/(2.0*(1.0-y)),1.0),step(0.5,y));return mix(x,z,opacity);}",yTe=new Map([[Kt.ADD,zSe],[Kt.ALPHA,VSe],[Kt.AVERAGE,GSe],[Kt.COLOR,QSe],[Kt.COLOR_BURN,HSe],[Kt.COLOR_DODGE,WSe],[Kt.DARKEN,$Se],[Kt.DIFFERENCE,jSe],[Kt.DIVIDE,XSe],[Kt.DST,null],[Kt.EXCLUSION,YSe],[Kt.HARD_LIGHT,KSe],[Kt.HARD_MIX,JSe],[Kt.HUE,ZSe],[Kt.INVERT,eTe],[Kt.INVERT_RGB,tTe],[Kt.LIGHTEN,nTe],[Kt.LINEAR_BURN,iTe],[Kt.LINEAR_DODGE,rTe],[Kt.LINEAR_LIGHT,sTe],[Kt.LUMINOSITY,oTe],[Kt.MULTIPLY,aTe],[Kt.NEGATION,lTe],[Kt.NORMAL,uTe],[Kt.OVERLAY,cTe],[Kt.PIN_LIGHT,hTe],[Kt.REFLECT,fTe],[Kt.SATURATION,dTe],[Kt.SCREEN,pTe],[Kt.SOFT_LIGHT,mTe],[Kt.SRC,gTe],[Kt.SUBTRACT,ATe],[Kt.VIVID_LIGHT,vTe]]),qTe=class extends $o{constructor(t,e=1){super(),this._blendFunction=t,this.opacity=new Jt(e)}getOpacity(){return this.opacity.value}setOpacity(t){this.opacity.value=t}get blendFunction(){return this._blendFunction}set blendFunction(t){this._blendFunction=t,this.dispatchEvent({type:"change"})}getBlendFunction(){return this.blendFunction}setBlendFunction(t){this.blendFunction=t}getShaderCode(){return yTe.get(this.blendFunction)}},wS=class extends $o{constructor(t,e,{attributes:n=ml.NONE,blendFunction:i=Kt.NORMAL,defines:r=new Map,uniforms:s=new Map,extensions:o=null,vertexShader:a=null}={}){super(),this.name=t,this.renderer=null,this.attributes=n,this.fragmentShader=e,this.vertexShader=a,this.defines=r,this.uniforms=s,this.extensions=o,this.blendMode=new qTe(i),this.blendMode.addEventListener("change",l=>
vendor: 4,828 bytes, lines 6669-6674
6669this.setChanged()),this._inputColorSpace=MA,this._outputColorSpace=vX}get inputColorSpace(){return this._inputColorSpace}set inputColorSpace(t){this._inputColorSpace=t,this.setChanged()}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t,this.setChanged()}set mainScene(t){}set mainCamera(t){}getName(){return this.name}setRenderer(t){this.renderer=t}getDefines(){return this.defines}getUniforms(){return this.uniforms}getExtensions(){return this.extensions}getBlendMode(){return this.blendMode}getAttributes(){return this.attributes}setAttributes(t){this.attributes=t,this.setChanged()}getFragmentShader(){return this.fragmentShader}setFragmentShader(t){this.fragmentShader=t,this.setChanged()}getVertexShader(){return this.vertexShader}setVertexShader(t){this.vertexShader=t,this.setChanged()}setChanged(){this.dispatchEvent({type:"change"})}setDepthTexture(t,e=Aa){}update(t,e,n){}setSize(t,e){}initialize(t,e,n){}dispose(){for(const t of Object.keys(this)){const e=this[t];(e instanceof Yt||e instanceof Ji||e instanceof Gn||e instanceof cs)&&this[t].dispose()}}},_Te=`#ifdef FRAMEBUFFER_PRECISION_HIGH 6670uniform mediump sampler2D map; 6671#else 6672uniform lowp sampler2D map; 6673#endif 6674uniform float intensity;void mainImage(const in vec4 inputColor,const in vec2 uv,out vec4 outputColor){vec4 texel=texture2D(map,uv);outputColor=vec4(texel.rgb*intensity,texel.a);}`,xTe=class extends wS{constructor({blendFunction:t=Kt.SCREEN,luminanceThreshold:e=.9,luminanceSmoothing:n=.025,mipmapBlur:i=!1,intensity:r=1,radius:s=.85,levels:o=8,kernelSize:a=RA.LARGE,resolutionScale:l=.5,width:u=Ci.AUTO_SIZE,height:c=Ci.AUTO_SIZE,resolutionX:h=u,resolutionY:f=c}={}){super("BloomEffect",_Te,{blendFunction:t,uniforms:new Map([["map",new Jt(null)],["intensity",new Jt(r)]])}),this.renderTarget=new Yt(1,1,{depthBuffer:!1}),this.renderTarget.texture.name="Bloom.Target",this.blurPass=new RSe({kernelSize:a}),this.luminancePass=new bSe({colorOutput:!0}),this.luminanceMaterial.threshold=e,this.luminanceMaterial.smoothing=n,this.mipmapBlurPass=new BSe,this.mipmapBlurPass.enabled=i,this.mipmapBlurPass.radius=s,this.mipmapBlurPass.levels=o,this.uniforms.get("map").value=i?this.mipmapBlurPass.texture:this.renderTarget.texture;const m=this.resolution=new Ci(this,h,f,l);m.addEventListener("change",g=>this.setSize(m.baseWidth,m.baseHeight))}get texture(){return this.mipmapBlurPass.enabled?this.mipmapBlurPass.texture:this.renderTarget.texture}getTexture(){return this.texture}getResolution(){return this.resolution}getBlurPass(){return this.blurPass}getLuminancePass(){return this.luminancePass}get luminanceMaterial(){return this.luminancePass.fullscreenMaterial}getLuminanceMaterial(){return this.luminancePass.fullscreenMaterial}get width(){return this.resolution.width}set width(t){this.resolution.preferredWidth=t}get height(){return this.resolution.height}set height(t){this.resolution.preferredHeight=t}get dithering(){return this.blurPass.dithering}set dithering(t){this.blurPass.dithering=t}get kernelSize(){return this.blurPass.kernelSize}set kernelSize(t){this.blurPass.kernelSize=t}get distinction(){return console.warn(this.name,"distinction was removed"),1}set distinction(t){console.warn(this.name,"distinction was removed")}get intensity(){return this.uniforms.get("intensity").value}set intensity(t){this.uniforms.get("intensity").value=t}getIntensity(){return this.intensity}setIntensity(t){this.intensity=t}getResolutionScale(){return this.resolution.scale}setResolutionScale(t){this.resolution.scale=t}update(t,e,n){const i=this.renderTarget,r=this.luminancePass;r.enabled?(r.render(t,e),this.mipmapBlurPass.enabled?this.mipmapBlurPass.render(t,r.renderTarget):this.blurPass.render(t,r.renderTarget,i)):this.mipmapBlurPass.enabled?this.mipmapBlurPass.render(t,e):this.blurPass.render(t,e,i)}setSize(t,e){const n=this.resolution;n.setBaseSize(t,e),this.renderTarget.setSize(n.width,n.height),this.blurPass.resolution.copy(n),this.luminancePass.setSize(t,e),this.mipmapBlurPass.setSize(t,e)}initialize(t,e,n){this.blurPass.initialize(t,e,n),this.luminancePass.initialize(t,e,n),this.mipmapBlurPass.initialize(t,e,n),n!==void 0&&(this.renderTarget.texture.type=n,L1(t)===ki&&su(this.renderTarget.texture,ki))}},ETe=class extends xTe{constructor(t,e,n){super(n),this.setAttributes(this.getAttributes()|ml.DEPTH),this.camera=e,this.depthPass=new CSe(t,e),this.clearPass=new PI(!0,!1,!1),this.clearPass.overrideClearColor=new Me(0),this.depthMaskPass=new LSe(new cSe);const i=this.depthMaskMaterial;i.copyCameraSettings(e),i.depthBuffer1=this.depthPass.texture,i.depthPacking1=D4,i.depthMode=_d,this.renderTargetMasked=new Yt(1,1,{depthBuffer:!1}),this.renderTargetMasked.texture.name="Bloom.Masked",this.selection=new USe,this.selection.layer=11,this._inverted=!1,this._ignoreBackgroun
6674d=!1}set mainScene(t){this.depthPass.mainScene=t}set mainCamera(t){this.camera=t,this.depthPass.mainCamera=t,this.depthMaskMaterial.copyCameraSettings(t)}getSelection(){return this.selection}get depthMaskMaterial(){return this.depthMaskPass.fullscreenMaterial}get inverted(){return this._inverted}set inverted(t){this._inverted=t,this.depthMaskMaterial.depthMode=t?G9:_d}isInverted(){return this.inverted}setInverted(t){this.inverted=t}get ignoreBackground(){return this._ignoreBackground}set ignoreBackground(t){this._ignoreBackground=t,this.depthMaskMaterial.maxDepthStrategy=t?Y5.DISCARD_MAX_DEPTH:Y5.KEEP_MAX_DEPTH}isBackgroundDisabled(){return this.ignoreBackground}setBackgroundDisabled(t){this.ignoreBackground=t}setDepthTexture(t,e=Aa){this.depthMaskMaterial.depthBuffer0=t,this.depthMaskMaterial.depthPacking0=e}update(t,e,n){const i=this.camera,r=this.selection,s=this.inverted;let o=e;if(this.ignoreBackground||!s||r.size>0){const a=i.layers.mask;i.layers.set(r.layer),this.depthPass.render(t),i.layers.mask=a,o=this.renderTargetMasked,this.clearPass.render(t,o),this.depthMaskPass.render(t,e,o)}super.update(t,o,n)}setSize(t,e){super.setSize(t,e),this.renderTargetMasked.setSize(t,e),this.depthPass.setSize(t,e)}initialize(t,e,n){super.initialize(t,e,n),this.clearPass.initialize(t,e,n),this.depthPass.initialize(t,e,n),this.depthMaskPass.initialize(t,e,n),t.capabilities.logarithmicDepthBuffer&&(this.depthMaskPass.fullscreenMaterial.defines.LOG_DEPTH="1"),n!==void 0&&(this.renderTargetMasked.texture.type=n,L1(t)===ki&&su(this.renderTargetMasked.texture,ki))}};const EX=G.createContext(null),Uk=t=>(t.getAttributes()&ml.CONVOLUTION)===ml.CONVOLUTION,STe=E9.memo(G.forwardRef(({children:t,camera:e,scene:n,resolutionScale:i,enabled:r=!0,renderPriority:s=1,autoClear:o=!0,depthBuffer:a,disableNormalPass:l,stencilBuffer:u,multisampling:c=8,frameBufferType:h=yi},f)=>{const{gl:m,scene:g,camera:v,size:_}=yg(),A=n||g,y=e||v,[q,E,T]=G.useMemo(()=>{const M=b6e(),b=new FSe(m,{depthBuffer:a,stencilBuffer:u,multisampling:c>0&&M?c:0,frameBufferType:h});b.addPass(new BI(A,y));let D=null,z=null;return l||(z=new DSe(A,y),z.enabled=!1,b.addPass(z),i!==void 0&&M&&(D=new wSe({normalBuffer:z.texture,resolutionScale:i}),D.enabled=!1,b.addPass(D))),[b,z,D]},[y,m,a,u,c,h,A,l,i]);G.useEffect(()=>q==null?void 0:q.setSize(_.width,_.height),[q,_]),G4((M,b)=>{if(r){const D=m.autoClear;m.autoClear=o,u&&!o&&m.clearStencil(),q.render(b),m.autoClear=D}},r?s:0);const C=G.useRef(null),I=Vae(C);G.useLayoutEffect(()=>{const M=[];if(C.current&&I.current&&q){const b=I.current.objects;for(let D=0;D<b.length;D++){const z=b[D];if(z instanceof wS){const O=[z];if(!Uk(z)){let $=null;for(;($=b[D+1])instanceof wS&&!Uk($);)O.push($),D++}const W=new MSe(y,...O);M.push(W)}else z instanceof cs&&M.push(z)}for(const D of M)q==null||q.addPass(D);E&&(E.enabled=!0),T&&(T.enabled=!0)}return()=>{for(const b of M)q==null||q.removePass(b);E&&(E.enabled=!1),T&&(T.enabled=!1)}},[q,t,y,E,T,I]);const R=G.useMemo(()=>({composer:q,normalPass:E,downSamplingPass:T,resolutionScale:i,camera:y,scene:A}),[q,E,T,i,y,A]);return G.useImperativeHandle(f,()=>q,[q]),ee(EX.Provider,{value:R,children:ee("group",{ref:C,children:t})})})),l8=t=>typeof t=="object"&&t!=null&&"current"in t?t.current:t,TTe=(t,e)=>t.layers.enable(e.selection.layer),CTe=(t,e)=>t.layers.disable(e.selection.layer),wTe=G.forwardRef(function({selection:e=[],selectionLayer:n=10,lights:i=[],luminanceThreshold:r,luminanceSmoothing:s,intensity:o,width:a,height:l,kernelSize:u,mipmapBlur:c,...h},f){i.length===0&&console.warn("SelectiveBloom requires lights to work.");const m=yg(y=>y.invalidate),{scene:g,camera:v}=G.useContext(EX),_=G.useMemo(()=>new ETe(g,v,{blendFunction:Kt.ADD,luminanceThreshold:r,luminanceSmoothing:s,intensity:o,width:a,height:l,kernelSize:u,mipmapBlur:c,...h}),[g,v,r,s,o,a,l,u,c,h]),A=G.useContext(JEe);return G.useEffect(()=>{if(!A&&e)return _.selection.set(Array.isArray(e)?e.map(l8):[l8(e)]),m(),()=>{_.selection.clear(),m()}},[_,e,A,m]),G.useEffect(()=>{_.selection.layer=n,m()},[_,m,n]),G.useEffect(()=>{if(i&&i.length>
66740)return i.forEach(y=>TTe(l8(y),_)),m(),()=>{i.forEach(y=>CTe(l8(y),_)),m()}},[_,m,i,n]),G.useEffect(()=>{var y;if(A&&A.enabled&&(y=A.selected)!=null&&y.length)return _.selection.set(A.selected),m(),()=>{_.selection.clear(),m()}},[A,_.selection,m]),ee("primitive",{ref:f,object:_,dispose:null})});function ITe({}){const t=q4(n=>n.lights),e=q4(n=>n.meshes);return Array.isArray(t)&&Array.isArray(e)&&e.length>0&&ee(STe,{children:ee(wTe,{lights:[...t],selection:[...e],selectionLayer:10,intensity:.5,blurPass:void 0,width:Ci.AUTO_SIZE,height:Ci.AUTO_SIZE,kernelSize:RA.LARGE,luminanceThreshold:1e-4,luminanceSmoothing:.025})})}function SX(t){return console.log("Loading"),ee(IA,{children:ee(bs.div,{className:"loading-container",children:ee(bs.h1,{exit:{x:-100,transition:{duration:1}},children:"Loading..."})})})}const g9=(t=1.2,e=8)=>({hover:{scale:t,textShadow:"0px 0px "+e.toString()+"px rgb(255, 255, 255)"}}),MTe=(t=-30,e=0)=>({initial:{opacity:0,y:t},animate:{opacity:1,y:e}});function RTe(){const[t,e]=G.useState(!0),n=m5(s=>s.setAudio),i=rt(s=>s.hasEntered),r=rt(s=>s.setHasEnteredFalse);return ee(IA,{children:i&&t&&dt(bs.div,{className:"loading-enter-container",exit:{opacity:0,transition:{duration:.6}},children:[dt(bs.div,{className:"title",initial:"initial",animate:"animate",variants:MTe(0),transition:{duration:2,ease:"easeOut",delay:0},children:[ee("h3",{children:"Welcome to Eva Sidéns website"}),ee("img",{src:"/Icons/LogoLong.svg",alt:"Art Music Art"})]}),ee(bs.div,{className:"outer-circle",onClick:()=>{e(!1),n(!0),r()},initial:{opacity:0}
6674,animate:{opacity:1,transition:{duration:2,ease:"easeOut",delay:0}},whileHover:{scale:1.2,transition:{duration:.4}},children:ee("div",{className:"inner-circle",children:ee("span",{className:"circle-text",children:"Enter"})})})]})})}function bTe(){const t=rt(n=>n.setHasScrolled),e=rt(n=>n.setCurrentContent);return G.useEffect(()=>{e(null),t(!1)},[]),dt(bc,{children:[ee(RTe,{}),dt("div",{className:"container",children:[ee(AX,{}),ee(G.Suspense,{fallback:ee(SX,{}),children:dt(gV,{className:"canvas",camera:{fov:45,aspect:innerWidth/innerHeight},children:[ee(bye,{}),ee(Rye,{}),ee(KEe,{}),ee(X$,{cubeMap:AV}),ee(ITe,{})]})})]})]})}function PTe(){const t=b4();return dt("div",{className:"page notfound-container",children:[dt("h1",{className:"title",children:["Sorry, ",ee("br",{}),"Could not found the page"]}),ee("button",{className:"main-button",onClick:()=>{t("/")},children:"Back Home"})]})}function BTe({contentInfo:t}){return ee("div",{className:"audio-player",children:ee("iframe",{width:"100%",height:"100%",style:{border:"none"},src:"https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/"+t.id+"&color=%23ff5500&auto_play=false&hide_related=false&show_comments=false&show_user=false&show_reposts=false&show_teaser=true&visual=false&sharing=false&show_playcount=false"})})}function DTe({contentInfo:t}){return ee("div",{className:"video",children:ee("iframe",{width:"100%",height:"100%",style:{border:"none"},src:t.youtube_url,title:t.name,allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0})})}function LTe(t,e,n=null,i="id"){if(!q2(t)||typeof e!="string")return!1;if(typeof n=="string"&&Array.isArray(t[n]))return t[n].find(r=>(r==null?void 0:r[i])===e);for(const r in t)if(Object.hasOwnProperty.call(t,r)){const s=t[r];if(Array.isArray(s)){const o=s.find(a=>(a==null?void 0:a[i])===e);if(q2(o))return o}}}function NTe(t){return t!=null&&t.thumbnail?t.thumbnail:t!=null&&t.local_thumbnail?"/Texture/Content/"+t.local_thumbnail:!1}function kTe(t){const e=Object.values(t);let n=e.length;return e.forEach(i=>{Array.isArray(i)&&(n+=i.length)}),n}function FTe(){const{id:t}=yZ(),e=b4();let n=rt(l=>l.currentCategory);const i=rt(l=>l.contentsInfo),[r,s]=G.useState(),o=XEe();G.useEffect(()=>{const l=LTe(i,t,n);q2(l)?s(l):e("/notfound"),o.set({opacity:0,x:20}),o.start({opacity:1,x:0,transition:{duration:.8,type:"easeIn"}})},[t]);function a(l,u){if(l.id!==r.id){let c=function(){const h=NTe(l);if(h)return ee("img",{src:h,alt:"image"});const f=lI(i[r.categoryID].length,u);return ee("div",{style:{backgroundColor:f.toString(),width:"100%",height:"100%"}})};return dt(ww,{to:"/content/"+l.id.toString(),state:{from:"content"},className:"rec-card",children:[ee("div",{className:"img-container",children:c()}),ee("p",{children:l.name})]},l.id)}}return r&&ee(bs.div,{initial:{opacity:.5,y:-20},animate:{opacity:1,y:0},transition:{duration:1.5,type:"spring"},className:"content-container",children:dt(bs.div,{animate:o,className:"content",children:[ee("h1",{className:"title",children:r.name}),ee("p",{className:"author-name",children:"Eva Sidén"}),r.player_embed_url?ee("div",{className:"video",children:ee("iframe",{src:r.player_embed_url+"&badge=0&autopause=0&player_id=0&app_id=270951",allow:"autoplay; fullscreen; picture-in-picture",title:r.name})}):r.youtube_url?ee(DTe,{contentInfo:r}):ee(BTe,{contentInfo:r}),dt("div",{className:"section description",children:[ee("h2",{children:"Description"}),ee("p",{children:ufe(r.description)})]}),dt("div",{className:"section",children:[ee("h2",{children:"Recommendation"}),ee("div",{className:"rec-section",children:Array.isArray(i[r.categoryID])?i[r.categoryID].map(a):null})]})]})})}function OTe(){const t=rt(a=>a.deviceType),e=rt(a=>a.camPositions[t].start),n=rt(a=>a.gsapAnimData[t].duration),i=rt(a=>a.currentCategory),r=rt(a=>a.setCurrentCategory),s=rt(a=>a.setOnPlanet);function o(){i!==null&&(r(null),s(i,!1),MH(e,[0,0,0],n))}return ee("div",{className:"back-button-container",children:i!==null&&ee(bs.img,{onClick:o,variants:g9(),whileHover:"hover",initial:{opacity:0}
6674,animate:{opacity:1},src:"/Icons/BackArrow.svg",alt:"BACK"})})}function UTe(){var o,a,l;const t=rt(u=>u.setCurrentContent),e=rt(u=>u.setCurrentCategory),n=rt(u=>u.setOnPlanet),i=b4(),r=O1(),s=/^\/content\/\w+$/;return ee(bs.div,{className:"back-button-container",variants:g9(),whileHover:"hover",initial:{opacity:0},animate:{opacity:1},onClick:()=>{var u;if(!s.test(r.pathname)){e(null);for(let c=0;c<4;c++)n(c,!1)}t(null),i(((u=r.state)==null?void 0:u.from)!=="archive"?"/":"archive")},children:((o=r.state)==null?void 0:o.from)==="archive"||((a=r.state)==null?void 0:a.from)==="/"||((l=r.state)==null?void 0:l.from)==="content"?ee("img",{src:"/Icons/BackArrow.svg",alt:"BACK"}):ee("p",{children:"HOME"})})}function zTe(){const[t,e]=G.useState(!1),n=rt(r=>r.resetCanvas);function i(){e(!1),n()}return dt("div",{className:"menu-container",children:[ee(IA,{children:t&&dt(bs.div,{className:"link",initial:{y:-20,opacity:0},animate:{y:0,opacity:1},exit:{y:-20,opacity:0},transition:{type:"tween",duration:.1},children:[ee(Vf,{onClick:i,to:"/",end:!0,children:"Home"}),ee(Vf,{onClick:i,to:"/about",end:!0,children:"About"}),ee(Vf,{onClick:i,to:"/archive",end:!0,children:"Archive"}),ee(Vf,{onClick:i,to:"/contact",end:!0,children:"Contact"}),ee(Vf,{onClick:i,to:"/credits",end:!0,children:"Credits"})]})}),ee("div",{className:"menu",onClick:()=>{e(r=>!r)},children:t?ee(bs.img,{className:"close",src:"/Icons/CloseIcon.svg",alt:"Close",variants:g9(),whileHover:"hover"}):ee(bs.img,{className:"menu-icon",variants:g9(1.3),whileHover:"hover",src:"/Icons/MenuIcon.svg",alt:"Menu"})})]})}function VTe(){const t=O1();return ee(bc,{children:dt("nav",{className:"navbar",children:[ee("div",{className:"left-section",children:ee(zTe,{})}),ee("div",{className:"center-section",children:dt(ww,{to:"/",className:"logo",children:[ee("img",{className:"mobile-none",src:"/Icons/FermataLogo2.svg",alt:""}),dt("div",{className:"flex-col",children:[ee("div",{className:"line top"}),ee("img",{src:"/Icons/LogoLong.svg",alt:"Art Music Art"}),ee("div",{className:"line bottom"})]})]})}),ee("div",{className:"right-section",children:t.pathname==="/"?ee(OTe,{}):ee(UTe,{})})]})})}function GTe(t){return dt("div",{className:"page about-page-container",children:[ee("h1",{children:"ABOUT THIS PAGE"}),dt("p",{children:["Art-Music-Art is part of the company Gamla Stans Music&Prod. Stockholm, Sweden, founded by the",ee("br",{}),"composer, concertpianist and soundartist Eva Sidén."]}),ee("p",{children:"Art-Music-Art is a platform with music, videos, festivals, and projects, where you can listen to music and look at films from various concerts, compositions, art and sound-art made by Eva Sidén."}),ee("p",{children:"Also, colleagues and organizations are sometimes invited to show their projects at occasional pop-up events and festivals."}),ee("p",{children:"Welcome to navigating in space!"}),dt("div",{className:"links",children:[ee("h3",{children:"Links to purchase scores and music-files, CD,s and more."}),dt("div",{className:"contents mobile-none",children:[dt("p",{children:[ee("a",{href:"www.swedartmusic.com",children:"www.swedartmusic.com"})," â Composers publishing of music where you can purchase my music, instrumental and electroacoustic works and scores."]}),dt("p",{children:[ee("a",{href:"www.svenskmusik.org",children:"www.svenskmusik.org"})," â Swedish music, publishing of Swedish composers music. Here you can find scores of most of my instrumentalmusic, piano, percussion, various ensembles and my music for voice, choir, chamberopera and more. (but no electronic files whicha are part of some of my works, for that you have to contact me)."]}),dt("p",{children:[ee("a",{href:"www.evasiden.se",children:"www.evasiden.se"})," â More info about Eva Sidén"]})]}),dt("div",{className:"mobile-only",children:[dt("div",{className:"content",children:[ee("p",{children:ee("a",{href:"www.swedartmusic.com",children:"www.swedartmusic.com"})}),ee("p",{children:"Composers publishing of music where you can purchase my music, instrumental and electroacoustic works and scores."})]}),dt("div",{className:"content",children:[ee("p",{children:ee("a",{href:"www.svenskmusik.org",children:"www.svenskmusik.org"})}),ee("p",{children:"Swedish music, publishing of Swedish composers music. Here you can find scores of most of my instrumentalmusic, piano, percussion, various ensembles and my music for voice, choir, chambero
6674pera and more. (but no electronic files whicha are part of some of my works, for that you have to contact me)."})]}),dt("div",{className:"content",children:[ee("p",{children:ee("a",{href:"www.evasiden.se",children:"www.evasiden.se"})}),ee("p",{children:" More info about Eva Sidén"})]})]})]}),ee("br",{}),ee("a",{href:"PDF/CV_Eva_Sidén_2024_compressed.pdf",download:!0,children:"Download Eva Sidén's CV"})]})}function QTe(t){return dt("div",{className:"page credits-page-container",children:[ee("h1",{children:"CREDITS"}),dt("section",{className:"Provider",children:[ee("h2",{children:"Website Creator"}),ee("h3",{children:"Eva Sidén"}),ee("p",{children:"Content Owner and Content Provider"}),ee("h3",{children:"Elisabeth Chen"}),ee("p",{children:"Web Developer"})]}),dt("section",{children:[ee("h2",{children:"Textures"}),ee("h3",{children:"Space Skybox"}),dt("p",{children:["Texture created by ",ee("i",{children:"Elisabeth Chen"})," using ",ee("i",{children:"wwwtyro"}),`'s Software "space-3d"`]}),dt("p",{children:["License: ",ee("a",{href:"https://github.com/wwwtyro/space-3d/blob/master/LICENSE",children:"The Unlicense"})]}),ee("h3",{children:"Planet Texture"}),ee("p",{children:"Texture Name: marble grey 002"}),ee("p",{children:"From Website: 3D Textures"}),dt("p",{children:["License: ",ee("a",{href:"https://creativecommons.org/publicdomain/zero/1.0/deed.en",children:"CC0 1.0"})]})]}),dt("section",{children:[ee("h2",{children:"Fonts"}),ee("h3",{children:"Newsreader"}),ee("p",{children:"From Website: Google Fonts"}),ee("p",{children:"Author: Production Type"}),dt("p",{children:["License: ",ee("a",{href:"http://scripts.sil.org/OFL",children:"Open Font License (OFL)"})]}),ee("h3",{children:"Courier Prime"}),ee("p",{children:"From Website: Google Fonts"}),ee("p",{children:"Author: Alan Dague-Greene"}),dt("p",{children:["License: ",ee("a",{href:"http://scripts.sil.org/OFL",children:"Open Font License (OFL)"})]})]}),dt("section",{children:[ee("h2",{children:"Icons"}),ee("h3",{children:"volume-2 & volume-x Icons"}),ee("p",{children:"Website: Feather Icons"}),ee("p",{children:"Author: @colebemis"}),dt("p",{children:["License: ",ee("a",{href:"https://github.com/feathericons/feather/blob/main/LICENSE",children:"MIT License"})]}),ee("p",{children:"Copyright: Copyright (c) 2013-2023 Cole Bemis"}),ee("p",{children:"Changes: The icon is filled and the color is inverted"})]}
6674),dt("section",{children:[ee("h2",{children:"Background Music"}),ee("h3",{children:"Landscape Spirit"}),ee("p",{children:"Composer: Eva Sidèn"})]})]})}function HTe(t){return dt("div",{className:"page contact-page-container",children:[ee("h1",{children:"CONTACT"}),dt("div",{className:"contact-section",children:[ee("h3",{children:"Eva Sidén"}),ee("p",{children:"+46 (0) 73 996 74 49"}),ee("p",{children:"[email protected]"})]})]})}function WTe(t,e,n){return t>n?n:t<e?e:t}function $Te({fov:t,camDist:e}){const n=rt(y=>y.deviceType),i=G.useRef(),r=rt(y=>y.contentsInfo),s=r?kTe(r):0;let o=-1;const a=t*(Math.PI/180),l=-5,u=3,c=(e-l)*Math.tan(a/2),h=n===$s?Math.PI/5:Math.PI/3,f=c/2,m=f*Math.cos(h),g=f*Math.sin(h);let v=0;function _(y){if(i.current){const E=rt.getState().deviceType===$s?Math.PI/5:Math.PI/3,T=f*Math.cos(E),C=f*Math.sin(E);v+=y,v=WTe(v,-2,Math.floor(s/(u+1)));const I=-v*T,R=v*C;d2.to(i.current.position,{x:I,z:R,duration:.5})}}function A(y){y.deltaY!==0&&_(y.deltaY/Math.abs(y.deltaY))}return G.useEffect(()=>{const y=new Q$({handleSwipe:_});return y.addSwipeEvent(),addEventListener("wheel",A),()=>{y.removeSwipeEvent(),removeEventListener("wheel",A)}},[]),G.useEffect(()=>{if(i.current){const y=i.current.position.x,q=n!==$s?Math.PI/5:Math.PI/3,E=f*Math.cos(q),T=y/E;i.current.position.x=T*m,i.current.position.z=-T*g}},[n]),ee(bc,{children:ee("group",{ref:i,children:Object.values(r).map(y=>y.map((q,E)=>{var T;return o+=1,ee(V$,{title:q.name,id:q.id,imgOrColor:(T=Ys==null?void 0:Ys[q.categoryID])!=null&&T[q.id]?Ys[q.categoryID][q.id]:lI(y.length,E),meshProps:{rotation:[0,-Math.PI/2,0],position:[m*(Math.floor(o/u)-(n===$s?1.5:1)),c/2*(o%u-1),l-g*(Math.floor(o/u)-(n===$s?2:1))]},from:"archive"},E)}))})})}function jTe(t){const n=innerWidth/innerHeight,i=5;return dt("div",{className:"archive-page-container",children:[dt(gV,{className:"canvas",camera:{fov:45,aspect:n,position:[0,0,i]},children:[ee(X$,{cubeMap:AV}),ee("directionalLight",{position:[-Math.PI/3,Math.PI/2,0],color:"#ffffff",intensity:5}),ee("ambientLight",{color:16777215,intensity:.8}),ee($Te,{fov:45,camDist:i})]}),ee(AX,{})]})}function XTe(){const t=rt(s=>s.contentsInfo),e=rt(s=>s.initFunc),n=rt(s=>s.deviceType),i=rt(s=>s.setDeviceType);function r(s){const o=innerWidth/innerHeight<1.1363636363636365?Bo:$s;o!==n&&i(o)}return G.useEffect(()=>(addEventListener("resize",r),e(innerHeight,innerWidth),()=>removeEventListener("resize",r)),[]),ee(bc,{children:n&&q2(t)&&q2(Ys)?dt(bc,{children:[ee(VTe,{}),dt(BZ,{children:[ee(Yu,{path:"/",element:ee(bTe,{})}),ee(Yu,{path:"/content/:id",element:ee(FTe,{})}),ee(Yu,{path:"/about",element:ee(GTe,{})}),ee(Yu,{path:"/contact",element:ee(HTe,{})}),ee(Yu,{path:"/archive",element:ee(jTe,{})}),ee(Yu,{path:"/credits",element:ee(QTe,{})}),ee(Yu,{path:"*",element:ee(PTe,{})})]})]}):ee(SX,{})})}p_.createRoot(document.getElementById("root")).render(ee(Afe,{children:ee(XTe,{})}))});export default YTe();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.