hyperframes 0.6.28 → 0.6.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,362 +0,0 @@
1
- (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function t(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(i){if(i.ep)return;i.ep=!0;const a=t(i);fetch(i.href,a)}})();function X$(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var dg={exports:{}},Ru={};/**
2
- * @license React
3
- * react-jsx-runtime.production.js
4
- *
5
- * Copyright (c) Meta Platforms, Inc. and 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 l3;function U$(){if(l3)return Ru;l3=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(r,i,a){var s=null;if(a!==void 0&&(s=""+a),i.key!==void 0&&(s=""+i.key),"key"in i){a={};for(var o in i)o!=="key"&&(a[o]=i[o])}else a=i;return i=a.ref,{$$typeof:n,type:r,key:s,ref:i!==void 0?i:null,props:a}}return Ru.Fragment=e,Ru.jsx=t,Ru.jsxs=t,Ru}var o3;function q$(){return o3||(o3=1,dg.exports=U$()),dg.exports}var y=q$(),hg={exports:{}},Ke={};/**
10
- * @license React
11
- * react.production.js
12
- *
13
- * Copyright (c) Meta Platforms, Inc. and 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 c3;function Y$(){if(c3)return Ke;c3=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),s=Symbol.for("react.context"),o=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),O=Symbol.iterator;function b(_){return _===null||typeof _!="object"?null:(_=O&&_[O]||_["@@iterator"],typeof _=="function"?_:null)}var S={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,T={};function w(_,j,H){this.props=_,this.context=j,this.refs=T,this.updater=H||S}w.prototype.isReactComponent={},w.prototype.setState=function(_,j){if(typeof _!="object"&&typeof _!="function"&&_!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,_,j,"setState")},w.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function A(){}A.prototype=w.prototype;function E(_,j,H){this.props=_,this.context=j,this.refs=T,this.updater=H||S}var C=E.prototype=new A;C.constructor=E,k(C,w.prototype),C.isPureReactComponent=!0;var P=Array.isArray;function $(){}var M={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function N(_,j,H){var F=H.ref;return{$$typeof:n,type:_,key:j,ref:F!==void 0?F:null,props:H}}function Z(_,j){return N(_.type,j,_.props)}function D(_){return typeof _=="object"&&_!==null&&_.$$typeof===n}function I(_){var j={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(H){return j[H]})}var U=/\/+/g;function K(_,j){return typeof _=="object"&&_!==null&&_.key!=null?I(""+_.key):j.toString(36)}function q(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then($,$):(_.status="pending",_.then(function(j){_.status==="pending"&&(_.status="fulfilled",_.value=j)},function(j){_.status==="pending"&&(_.status="rejected",_.reason=j)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function L(_,j,H,F,Y){var ae=typeof _;(ae==="undefined"||ae==="boolean")&&(_=null);var ie=!1;if(_===null)ie=!0;else switch(ae){case"bigint":case"string":case"number":ie=!0;break;case"object":switch(_.$$typeof){case n:case e:ie=!0;break;case m:return ie=_._init,L(ie(_._payload),j,H,F,Y)}}if(ie)return Y=Y(_),ie=F===""?"."+K(_,0):F,P(Y)?(H="",ie!=null&&(H=ie.replace(U,"$&/")+"/"),L(Y,j,H,"",function(me){return me})):Y!=null&&(D(Y)&&(Y=Z(Y,H+(Y.key==null||_&&_.key===Y.key?"":(""+Y.key).replace(U,"$&/")+"/")+ie)),j.push(Y)),1;ie=0;var Oe=F===""?".":F+":";if(P(_))for(var de=0;de<_.length;de++)F=_[de],ae=Oe+K(F,de),ie+=L(F,j,H,ae,Y);else if(de=b(_),typeof de=="function")for(_=de.call(_),de=0;!(F=_.next()).done;)F=F.value,ae=Oe+K(F,de++),ie+=L(F,j,H,ae,Y);else if(ae==="object"){if(typeof _.then=="function")return L(q(_),j,H,F,Y);throw j=String(_),Error("Objects are not valid as a React child (found: "+(j==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":j)+"). If you meant to render a collection of children, use an array instead.")}return ie}function W(_,j,H){if(_==null)return _;var F=[],Y=0;return L(_,F,"","",function(ae){return j.call(H,ae,Y++)}),F}function ee(_){if(_._status===-1){var j=_._result;j=j(),j.then(function(H){(_._status===0||_._status===-1)&&(_._status=1,_._result=H)},function(H){(_._status===0||_._status===-1)&&(_._status=2,_._result=H)}),_._status===-1&&(_._status=0,_._result=j)}if(_._status===1)return _._result.default;throw _._result}var X=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var j=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(j))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)},B={map:W,forEach:function(_,j,H){W(_,function(){j.apply(this,arguments)},H)},count:function(_){var j=0;return W(_,function(){j++}),j},toArray:function(_){return W(_,function(j){return j})||[]},only:function(_){if(!D(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return Ke.Activity=p,Ke.Children=B,Ke.Component=w,Ke.Fragment=t,Ke.Profiler=i,Ke.PureComponent=E,Ke.StrictMode=r,Ke.Suspense=u,Ke.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=M,Ke.__COMPILER_RUNTIME={__proto__:null,c:function(_){return M.H.useMemoCache(_)}},Ke.cache=function(_){return function(){return _.apply(null,arguments)}},Ke.cacheSignal=function(){return null},Ke.cloneElement=function(_,j,H){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var F=k({},_.props),Y=_.key;if(j!=null)for(ae in j.key!==void 0&&(Y=""+j.key),j)!R.call(j,ae)||ae==="key"||ae==="__self"||ae==="__source"||ae==="ref"&&j.ref===void 0||(F[ae]=j[ae]);var ae=arguments.length-2;if(ae===1)F.children=H;else if(1<ae){for(var ie=Array(ae),Oe=0;Oe<ae;Oe++)ie[Oe]=arguments[Oe+2];F.children=ie}return N(_.type,Y,F)},Ke.createContext=function(_){return _={$$typeof:s,_currentValue:_,_currentValue2:_,_threadCount:0,Provider:null,Consumer:null},_.Provider=_,_.Consumer={$$typeof:a,_context:_},_},Ke.createElement=function(_,j,H){var F,Y={},ae=null;if(j!=null)for(F in j.key!==void 0&&(ae=""+j.key),j)R.call(j,F)&&F!=="key"&&F!=="__self"&&F!=="__source"&&(Y[F]=j[F]);var ie=arguments.length-2;if(ie===1)Y.children=H;else if(1<ie){for(var Oe=Array(ie),de=0;de<ie;de++)Oe[de]=arguments[de+2];Y.children=Oe}if(_&&_.defaultProps)for(F in ie=_.defaultProps,ie)Y[F]===void 0&&(Y[F]=ie[F]);return N(_,ae,Y)},Ke.createRef=function(){return{current:null}},Ke.forwardRef=function(_){return{$$typeof:o,render:_}},Ke.isValidElement=D,Ke.lazy=function(_){return{$$typeof:m,_payload:{_status:-1,_result:_},_init:ee}},Ke.memo=function(_,j){return{$$typeof:d,type:_,compare:j===void 0?null:j}},Ke.startTransition=function(_){var j=M.T,H={};M.T=H;try{var F=_(),Y=M.S;Y!==null&&Y(H,F),typeof F=="object"&&F!==null&&typeof F.then=="function"&&F.then($,X)}catch(ae){X(ae)}finally{j!==null&&H.types!==null&&(j.types=H.types),M.T=j}},Ke.unstable_useCacheRefresh=function(){return M.H.useCacheRefresh()},Ke.use=function(_){return M.H.use(_)},Ke.useActionState=function(_,j,H){return M.H.useActionState(_,j,H)},Ke.useCallback=function(_,j){return M.H.useCallback(_,j)},Ke.useContext=function(_){return M.H.useContext(_)},Ke.useDebugValue=function(){},Ke.useDeferredValue=function(_,j){return M.H.useDeferredValue(_,j)},Ke.useEffect=function(_,j){return M.H.useEffect(_,j)},Ke.useEffectEvent=function(_){return M.H.useEffectEvent(_)},Ke.useId=function(){return M.H.useId()},Ke.useImperativeHandle=function(_,j,H){return M.H.useImperativeHandle(_,j,H)},Ke.useInsertionEffect=function(_,j){return M.H.useInsertionEffect(_,j)},Ke.useLayoutEffect=function(_,j){return M.H.useLayoutEffect(_,j)},Ke.useMemo=function(_,j){return M.H.useMemo(_,j)},Ke.useOptimistic=function(_,j){return M.H.useOptimistic(_,j)},Ke.useReducer=function(_,j,H){return M.H.useReducer(_,j,H)},Ke.useRef=function(_){return M.H.useRef(_)},Ke.useState=function(_){return M.H.useState(_)},Ke.useSyncExternalStore=function(_,j,H){return M.H.useSyncExternalStore(_,j,H)},Ke.useTransition=function(){return M.H.useTransition()},Ke.version="19.2.6",Ke}var u3;function DO(){return u3||(u3=1,hg.exports=Y$()),hg.exports}var h=DO();const wd=X$(h);var mg={exports:{}},Qu={},pg={exports:{}},gg={};/**
18
- * @license React
19
- * scheduler.production.js
20
- *
21
- * Copyright (c) Meta Platforms, Inc. and 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
- */var f3;function W$(){return f3||(f3=1,(function(n){function e(L,W){var ee=L.length;L.push(W);e:for(;0<ee;){var X=ee-1>>>1,B=L[X];if(0<i(B,W))L[X]=W,L[ee]=B,ee=X;else break e}}function t(L){return L.length===0?null:L[0]}function r(L){if(L.length===0)return null;var W=L[0],ee=L.pop();if(ee!==W){L[0]=ee;e:for(var X=0,B=L.length,_=B>>>1;X<_;){var j=2*(X+1)-1,H=L[j],F=j+1,Y=L[F];if(0>i(H,ee))F<B&&0>i(Y,H)?(L[X]=Y,L[F]=ee,X=F):(L[X]=H,L[j]=ee,X=j);else if(F<B&&0>i(Y,ee))L[X]=Y,L[F]=ee,X=F;else break e}}return W}function i(L,W){var ee=L.sortIndex-W.sortIndex;return ee!==0?ee:L.id-W.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var a=performance;n.unstable_now=function(){return a.now()}}else{var s=Date,o=s.now();n.unstable_now=function(){return s.now()-o}}var u=[],d=[],m=1,p=null,O=3,b=!1,S=!1,k=!1,T=!1,w=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,E=typeof setImmediate<"u"?setImmediate:null;function C(L){for(var W=t(d);W!==null;){if(W.callback===null)r(d);else if(W.startTime<=L)r(d),W.sortIndex=W.expirationTime,e(u,W);else break;W=t(d)}}function P(L){if(k=!1,C(L),!S)if(t(u)!==null)S=!0,$||($=!0,I());else{var W=t(d);W!==null&&q(P,W.startTime-L)}}var $=!1,M=-1,R=5,N=-1;function Z(){return T?!0:!(n.unstable_now()-N<R)}function D(){if(T=!1,$){var L=n.unstable_now();N=L;var W=!0;try{e:{S=!1,k&&(k=!1,A(M),M=-1),b=!0;var ee=O;try{t:{for(C(L),p=t(u);p!==null&&!(p.expirationTime>L&&Z());){var X=p.callback;if(typeof X=="function"){p.callback=null,O=p.priorityLevel;var B=X(p.expirationTime<=L);if(L=n.unstable_now(),typeof B=="function"){p.callback=B,C(L),W=!0;break t}p===t(u)&&r(u),C(L)}else r(u);p=t(u)}if(p!==null)W=!0;else{var _=t(d);_!==null&&q(P,_.startTime-L),W=!1}}break e}finally{p=null,O=ee,b=!1}W=void 0}}finally{W?I():$=!1}}}var I;if(typeof E=="function")I=function(){E(D)};else if(typeof MessageChannel<"u"){var U=new MessageChannel,K=U.port2;U.port1.onmessage=D,I=function(){K.postMessage(null)}}else I=function(){w(D,0)};function q(L,W){M=w(function(){L(n.unstable_now())},W)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(L){L.callback=null},n.unstable_forceFrameRate=function(L){0>L||125<L?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):R=0<L?Math.floor(1e3/L):5},n.unstable_getCurrentPriorityLevel=function(){return O},n.unstable_next=function(L){switch(O){case 1:case 2:case 3:var W=3;break;default:W=O}var ee=O;O=W;try{return L()}finally{O=ee}},n.unstable_requestPaint=function(){T=!0},n.unstable_runWithPriority=function(L,W){switch(L){case 1:case 2:case 3:case 4:case 5:break;default:L=3}var ee=O;O=L;try{return W()}finally{O=ee}},n.unstable_scheduleCallback=function(L,W,ee){var X=n.unstable_now();switch(typeof ee=="object"&&ee!==null?(ee=ee.delay,ee=typeof ee=="number"&&0<ee?X+ee:X):ee=X,L){case 1:var B=-1;break;case 2:B=250;break;case 5:B=1073741823;break;case 4:B=1e4;break;default:B=5e3}return B=ee+B,L={id:m++,callback:W,priorityLevel:L,startTime:ee,expirationTime:B,sortIndex:-1},ee>X?(L.sortIndex=ee,e(d,L),t(u)===null&&L===t(d)&&(k?(A(M),M=-1):k=!0,q(P,ee-X))):(L.sortIndex=B,e(u,L),S||b||(S=!0,$||($=!0,I()))),L},n.unstable_shouldYield=Z,n.unstable_wrapCallback=function(L){var W=O;return function(){var ee=O;O=W;try{return L.apply(this,arguments)}finally{O=ee}}}})(gg)),gg}var d3;function G$(){return d3||(d3=1,pg.exports=W$()),pg.exports}var Og={exports:{}},Qn={};/**
26
- * @license React
27
- * react-dom.production.js
28
- *
29
- * Copyright (c) Meta Platforms, Inc. and 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 h3;function K$(){if(h3)return Qn;h3=1;var n=DO();function e(u){var d="https://react.dev/errors/"+u;if(1<arguments.length){d+="?args[]="+encodeURIComponent(arguments[1]);for(var m=2;m<arguments.length;m++)d+="&args[]="+encodeURIComponent(arguments[m])}return"Minified React error #"+u+"; visit "+d+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function t(){}var r={d:{f:t,r:function(){throw Error(e(522))},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},i=Symbol.for("react.portal");function a(u,d,m){var p=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:i,key:p==null?null:""+p,children:u,containerInfo:d,implementation:m}}var s=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function o(u,d){if(u==="font")return"";if(typeof d=="string")return d==="use-credentials"?d:""}return Qn.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,Qn.createPortal=function(u,d){var m=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!d||d.nodeType!==1&&d.nodeType!==9&&d.nodeType!==11)throw Error(e(299));return a(u,d,null,m)},Qn.flushSync=function(u){var d=s.T,m=r.p;try{if(s.T=null,r.p=2,u)return u()}finally{s.T=d,r.p=m,r.d.f()}},Qn.preconnect=function(u,d){typeof u=="string"&&(d?(d=d.crossOrigin,d=typeof d=="string"?d==="use-credentials"?d:"":void 0):d=null,r.d.C(u,d))},Qn.prefetchDNS=function(u){typeof u=="string"&&r.d.D(u)},Qn.preinit=function(u,d){if(typeof u=="string"&&d&&typeof d.as=="string"){var m=d.as,p=o(m,d.crossOrigin),O=typeof d.integrity=="string"?d.integrity:void 0,b=typeof d.fetchPriority=="string"?d.fetchPriority:void 0;m==="style"?r.d.S(u,typeof d.precedence=="string"?d.precedence:void 0,{crossOrigin:p,integrity:O,fetchPriority:b}):m==="script"&&r.d.X(u,{crossOrigin:p,integrity:O,fetchPriority:b,nonce:typeof d.nonce=="string"?d.nonce:void 0})}},Qn.preinitModule=function(u,d){if(typeof u=="string")if(typeof d=="object"&&d!==null){if(d.as==null||d.as==="script"){var m=o(d.as,d.crossOrigin);r.d.M(u,{crossOrigin:m,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0})}}else d==null&&r.d.M(u)},Qn.preload=function(u,d){if(typeof u=="string"&&typeof d=="object"&&d!==null&&typeof d.as=="string"){var m=d.as,p=o(m,d.crossOrigin);r.d.L(u,m,{crossOrigin:p,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0,type:typeof d.type=="string"?d.type:void 0,fetchPriority:typeof d.fetchPriority=="string"?d.fetchPriority:void 0,referrerPolicy:typeof d.referrerPolicy=="string"?d.referrerPolicy:void 0,imageSrcSet:typeof d.imageSrcSet=="string"?d.imageSrcSet:void 0,imageSizes:typeof d.imageSizes=="string"?d.imageSizes:void 0,media:typeof d.media=="string"?d.media:void 0})}},Qn.preloadModule=function(u,d){if(typeof u=="string")if(d){var m=o(d.as,d.crossOrigin);r.d.m(u,{as:typeof d.as=="string"&&d.as!=="script"?d.as:void 0,crossOrigin:m,integrity:typeof d.integrity=="string"?d.integrity:void 0})}else r.d.m(u)},Qn.requestFormReset=function(u){r.d.r(u)},Qn.unstable_batchedUpdates=function(u,d){return u(d)},Qn.useFormState=function(u,d,m){return s.H.useFormState(u,d,m)},Qn.useFormStatus=function(){return s.H.useHostTransitionStatus()},Qn.version="19.2.6",Qn}var m3;function Mw(){if(m3)return Og.exports;m3=1;function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),Og.exports=K$(),Og.exports}/**
34
- * @license React
35
- * react-dom-client.production.js
36
- *
37
- * Copyright (c) Meta Platforms, Inc. and affiliates.
38
- *
39
- * This source code is licensed under the MIT license found in the
40
- * LICENSE file in the root directory of this source tree.
41
- */var p3;function J$(){if(p3)return Qu;p3=1;var n=G$(),e=DO(),t=Mw();function r(l){var c="https://react.dev/errors/"+l;if(1<arguments.length){c+="?args[]="+encodeURIComponent(arguments[1]);for(var f=2;f<arguments.length;f++)c+="&args[]="+encodeURIComponent(arguments[f])}return"Minified React error #"+l+"; visit "+c+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)}function a(l){var c=l,f=l;if(l.alternate)for(;c.return;)c=c.return;else{l=c;do c=l,(c.flags&4098)!==0&&(f=c.return),l=c.return;while(l)}return c.tag===3?f:null}function s(l){if(l.tag===13){var c=l.memoizedState;if(c===null&&(l=l.alternate,l!==null&&(c=l.memoizedState)),c!==null)return c.dehydrated}return null}function o(l){if(l.tag===31){var c=l.memoizedState;if(c===null&&(l=l.alternate,l!==null&&(c=l.memoizedState)),c!==null)return c.dehydrated}return null}function u(l){if(a(l)!==l)throw Error(r(188))}function d(l){var c=l.alternate;if(!c){if(c=a(l),c===null)throw Error(r(188));return c!==l?null:l}for(var f=l,g=c;;){var x=f.return;if(x===null)break;var v=x.alternate;if(v===null){if(g=x.return,g!==null){f=g;continue}break}if(x.child===v.child){for(v=x.child;v;){if(v===f)return u(x),l;if(v===g)return u(x),c;v=v.sibling}throw Error(r(188))}if(f.return!==g.return)f=x,g=v;else{for(var Q=!1,z=x.child;z;){if(z===f){Q=!0,f=x,g=v;break}if(z===g){Q=!0,g=x,f=v;break}z=z.sibling}if(!Q){for(z=v.child;z;){if(z===f){Q=!0,f=v,g=x;break}if(z===g){Q=!0,g=v,f=x;break}z=z.sibling}if(!Q)throw Error(r(189))}}if(f.alternate!==g)throw Error(r(190))}if(f.tag!==3)throw Error(r(188));return f.stateNode.current===f?l:c}function m(l){var c=l.tag;if(c===5||c===26||c===27||c===6)return l;for(l=l.child;l!==null;){if(c=m(l),c!==null)return c;l=l.sibling}return null}var p=Object.assign,O=Symbol.for("react.element"),b=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),T=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),A=Symbol.for("react.consumer"),E=Symbol.for("react.context"),C=Symbol.for("react.forward_ref"),P=Symbol.for("react.suspense"),$=Symbol.for("react.suspense_list"),M=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),N=Symbol.for("react.activity"),Z=Symbol.for("react.memo_cache_sentinel"),D=Symbol.iterator;function I(l){return l===null||typeof l!="object"?null:(l=D&&l[D]||l["@@iterator"],typeof l=="function"?l:null)}var U=Symbol.for("react.client.reference");function K(l){if(l==null)return null;if(typeof l=="function")return l.$$typeof===U?null:l.displayName||l.name||null;if(typeof l=="string")return l;switch(l){case k:return"Fragment";case w:return"Profiler";case T:return"StrictMode";case P:return"Suspense";case $:return"SuspenseList";case N:return"Activity"}if(typeof l=="object")switch(l.$$typeof){case S:return"Portal";case E:return l.displayName||"Context";case A:return(l._context.displayName||"Context")+".Consumer";case C:var c=l.render;return l=l.displayName,l||(l=c.displayName||c.name||"",l=l!==""?"ForwardRef("+l+")":"ForwardRef"),l;case M:return c=l.displayName||null,c!==null?c:K(l.type)||"Memo";case R:c=l._payload,l=l._init;try{return K(l(c))}catch{}}return null}var q=Array.isArray,L=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=t.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee={pending:!1,data:null,method:null,action:null},X=[],B=-1;function _(l){return{current:l}}function j(l){0>B||(l.current=X[B],X[B]=null,B--)}function H(l,c){B++,X[B]=l.current,l.current=c}var F=_(null),Y=_(null),ae=_(null),ie=_(null);function Oe(l,c){switch(H(ae,c),H(Y,l),H(F,null),c.nodeType){case 9:case 11:l=(l=c.documentElement)&&(l=l.namespaceURI)?Mx(l):0;break;default:if(l=c.tagName,c=c.namespaceURI)c=Mx(c),l=$x(c,l);else switch(l){case"svg":l=1;break;case"math":l=2;break;default:l=0}}j(F),H(F,l)}function de(){j(F),j(Y),j(ae)}function me(l){l.memoizedState!==null&&H(ie,l);var c=F.current,f=$x(c,l.type);c!==f&&(H(Y,l),H(F,f))}function Te(l){Y.current===l&&(j(F),j(Y)),ie.current===l&&(j(ie),Cu._currentValue=ee)}var Ce,Ne;function Xe(l){if(Ce===void 0)try{throw Error()}catch(f){var c=f.stack.trim().match(/\n( *(at )?)/);Ce=c&&c[1]||"",Ne=-1<f.stack.indexOf(`
42
- at`)?" (<anonymous>)":-1<f.stack.indexOf("@")?"@unknown:0:0":""}return`
43
- `+Ce+l+Ne}var V=!1;function fe(l,c){if(!l||V)return"";V=!0;var f=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var g={DetermineComponentFrameRoot:function(){try{if(c){var ve=function(){throw Error()};if(Object.defineProperty(ve.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ve,[])}catch(pe){var he=pe}Reflect.construct(l,[],ve)}else{try{ve.call()}catch(pe){he=pe}l.call(ve.prototype)}}else{try{throw Error()}catch(pe){he=pe}(ve=l())&&typeof ve.catch=="function"&&ve.catch(function(){})}}catch(pe){if(pe&&he&&typeof pe.stack=="string")return[pe.stack,he.stack]}return[null,null]}};g.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var x=Object.getOwnPropertyDescriptor(g.DetermineComponentFrameRoot,"name");x&&x.configurable&&Object.defineProperty(g.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var v=g.DetermineComponentFrameRoot(),Q=v[0],z=v[1];if(Q&&z){var J=Q.split(`
44
- `),ue=z.split(`
45
- `);for(x=g=0;g<J.length&&!J[g].includes("DetermineComponentFrameRoot");)g++;for(;x<ue.length&&!ue[x].includes("DetermineComponentFrameRoot");)x++;if(g===J.length||x===ue.length)for(g=J.length-1,x=ue.length-1;1<=g&&0<=x&&J[g]!==ue[x];)x--;for(;1<=g&&0<=x;g--,x--)if(J[g]!==ue[x]){if(g!==1||x!==1)do if(g--,x--,0>x||J[g]!==ue[x]){var xe=`
46
- `+J[g].replace(" at new "," at ");return l.displayName&&xe.includes("<anonymous>")&&(xe=xe.replace("<anonymous>",l.displayName)),xe}while(1<=g&&0<=x);break}}}finally{V=!1,Error.prepareStackTrace=f}return(f=l?l.displayName||l.name:"")?Xe(f):""}function te(l,c){switch(l.tag){case 26:case 27:case 5:return Xe(l.type);case 16:return Xe("Lazy");case 13:return l.child!==c&&c!==null?Xe("Suspense Fallback"):Xe("Suspense");case 19:return Xe("SuspenseList");case 0:case 15:return fe(l.type,!1);case 11:return fe(l.type.render,!1);case 1:return fe(l.type,!0);case 31:return Xe("Activity");default:return""}}function le(l){try{var c="",f=null;do c+=te(l,f),f=l,l=l.return;while(l);return c}catch(g){return`
47
- Error generating stack: `+g.message+`
48
- `+g.stack}}var ce=Object.prototype.hasOwnProperty,ge=n.unstable_scheduleCallback,ye=n.unstable_cancelCallback,be=n.unstable_shouldYield,Me=n.unstable_requestPaint,Pe=n.unstable_now,Ve=n.unstable_getCurrentPriorityLevel,Ye=n.unstable_ImmediatePriority,_e=n.unstable_UserBlockingPriority,Fe=n.unstable_NormalPriority,_t=n.unstable_LowPriority,qt=n.unstable_IdlePriority,In=n.log,hr=n.unstable_setDisableYieldValue,mr=null,Yt=null;function Sn(l){if(typeof In=="function"&&hr(l),Yt&&typeof Yt.setStrictMode=="function")try{Yt.setStrictMode(mr,l)}catch{}}var Mt=Math.clz32?Math.clz32:Un,si=Math.log,Hs=Math.LN2;function Un(l){return l>>>=0,l===0?32:31-(si(l)/Hs|0)|0}var li=256,jr=262144,qn=4194304;function hn(l){var c=l&42;if(c!==0)return c;switch(l&-l){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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return l&261888;case 262144:case 524288:case 1048576:case 2097152:return l&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return l&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return l}}function pr(l,c,f){var g=l.pendingLanes;if(g===0)return 0;var x=0,v=l.suspendedLanes,Q=l.pingedLanes;l=l.warmLanes;var z=g&134217727;return z!==0?(g=z&~v,g!==0?x=hn(g):(Q&=z,Q!==0?x=hn(Q):f||(f=z&~l,f!==0&&(x=hn(f))))):(z=g&~v,z!==0?x=hn(z):Q!==0?x=hn(Q):f||(f=g&~l,f!==0&&(x=hn(f)))),x===0?0:c!==0&&c!==x&&(c&v)===0&&(v=x&-x,f=c&-c,v>=f||v===32&&(f&4194048)!==0)?c:x}function ra(l,c){return(l.pendingLanes&~(l.suspendedLanes&~l.pingedLanes)&c)===0}function Lc(l,c){switch(l){case 1:case 2:case 4:case 8:case 64:return c+250;case 16:case 32: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 c+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ul(){var l=qn;return qn<<=1,(qn&62914560)===0&&(qn=4194304),l}function Ai(l){for(var c=[],f=0;31>f;f++)c.push(l);return c}function je(l,c){l.pendingLanes|=c,c!==268435456&&(l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0)}function Pt(l,c,f,g,x,v){var Q=l.pendingLanes;l.pendingLanes=f,l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0,l.expiredLanes&=f,l.entangledLanes&=f,l.errorRecoveryDisabledLanes&=f,l.shellSuspendCounter=0;var z=l.entanglements,J=l.expirationTimes,ue=l.hiddenUpdates;for(f=Q&~f;0<f;){var xe=31-Mt(f),ve=1<<xe;z[xe]=0,J[xe]=-1;var he=ue[xe];if(he!==null)for(ue[xe]=null,xe=0;xe<he.length;xe++){var pe=he[xe];pe!==null&&(pe.lane&=-536870913)}f&=~ve}g!==0&&$e(l,g,0),v!==0&&x===0&&l.tag!==0&&(l.suspendedLanes|=v&~(Q&~c))}function $e(l,c,f){l.pendingLanes|=c,l.suspendedLanes&=~c;var g=31-Mt(c);l.entangledLanes|=c,l.entanglements[g]=l.entanglements[g]|1073741824|f&261930}function it(l,c){var f=l.entangledLanes|=c;for(l=l.entanglements;f;){var g=31-Mt(f),x=1<<g;x&c|l[g]&c&&(l[g]|=c),f&=~x}}function vt(l,c){var f=c&-c;return f=(f&42)!==0?1:un(f),(f&(l.suspendedLanes|c))!==0?0:f}function un(l){switch(l){case 2:l=1;break;case 8:l=4;break;case 32:l=16;break;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:l=128;break;case 268435456:l=134217728;break;default:l=0}return l}function ia(l){return l&=-l,2<l?8<l?(l&134217727)!==0?32:268435456:8:2}function zc(){var l=W.p;return l!==0?l:(l=window.event,l===void 0?32:e3(l.type))}function Ya(l,c){var f=W.p;try{return W.p=l,c()}finally{W.p=f}}var Wa=Math.random().toString(36).slice(2),kn="__reactFiber$"+Wa,Yn="__reactProps$"+Wa,ql="__reactContainer$"+Wa,rm="__reactEvents$"+Wa,NE="__reactListeners$"+Wa,jE="__reactHandles$"+Wa,O4="__reactResources$"+Wa,Bc="__reactMarker$"+Wa;function im(l){delete l[kn],delete l[Yn],delete l[rm],delete l[NE],delete l[jE]}function Yl(l){var c=l[kn];if(c)return c;for(var f=l.parentNode;f;){if(c=f[ql]||f[kn]){if(f=c.alternate,c.child!==null||f!==null&&f.child!==null)for(l=Dx(l);l!==null;){if(f=l[kn])return f;l=Dx(l)}return c}l=f,f=l.parentNode}return null}function Wl(l){if(l=l[kn]||l[ql]){var c=l.tag;if(c===5||c===6||c===13||c===31||c===26||c===27||c===3)return l}return null}function Hc(l){var c=l.tag;if(c===5||c===26||c===27||c===6)return l.stateNode;throw Error(r(33))}function Gl(l){var c=l[O4];return c||(c=l[O4]={hoistableStyles:new Map,hoistableScripts:new Map}),c}function mn(l){l[Bc]=!0}var y4=new Set,b4={};function Fs(l,c){Kl(l,c),Kl(l+"Capture",c)}function Kl(l,c){for(b4[l]=c,l=0;l<c.length;l++)y4.add(c[l])}var ZE=RegExp("^[: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]*$"),x4={},S4={};function DE(l){return ce.call(S4,l)?!0:ce.call(x4,l)?!1:ZE.test(l)?S4[l]=!0:(x4[l]=!0,!1)}function df(l,c,f){if(DE(c))if(f===null)l.removeAttribute(c);else{switch(typeof f){case"undefined":case"function":case"symbol":l.removeAttribute(c);return;case"boolean":var g=c.toLowerCase().slice(0,5);if(g!=="data-"&&g!=="aria-"){l.removeAttribute(c);return}}l.setAttribute(c,""+f)}}function hf(l,c,f){if(f===null)l.removeAttribute(c);else{switch(typeof f){case"undefined":case"function":case"symbol":case"boolean":l.removeAttribute(c);return}l.setAttribute(c,""+f)}}function aa(l,c,f,g){if(g===null)l.removeAttribute(f);else{switch(typeof g){case"undefined":case"function":case"symbol":case"boolean":l.removeAttribute(f);return}l.setAttributeNS(c,f,""+g)}}function Zr(l){switch(typeof l){case"bigint":case"boolean":case"number":case"string":case"undefined":return l;case"object":return l;default:return""}}function k4(l){var c=l.type;return(l=l.nodeName)&&l.toLowerCase()==="input"&&(c==="checkbox"||c==="radio")}function VE(l,c,f){var g=Object.getOwnPropertyDescriptor(l.constructor.prototype,c);if(!l.hasOwnProperty(c)&&typeof g<"u"&&typeof g.get=="function"&&typeof g.set=="function"){var x=g.get,v=g.set;return Object.defineProperty(l,c,{configurable:!0,get:function(){return x.call(this)},set:function(Q){f=""+Q,v.call(this,Q)}}),Object.defineProperty(l,c,{enumerable:g.enumerable}),{getValue:function(){return f},setValue:function(Q){f=""+Q},stopTracking:function(){l._valueTracker=null,delete l[c]}}}}function am(l){if(!l._valueTracker){var c=k4(l)?"checked":"value";l._valueTracker=VE(l,c,""+l[c])}}function v4(l){if(!l)return!1;var c=l._valueTracker;if(!c)return!0;var f=c.getValue(),g="";return l&&(g=k4(l)?l.checked?"true":"false":l.value),l=g,l!==f?(c.setValue(l),!0):!1}function mf(l){if(l=l||(typeof document<"u"?document:void 0),typeof l>"u")return null;try{return l.activeElement||l.body}catch{return l.body}}var IE=/[\n"\\]/g;function Dr(l){return l.replace(IE,function(c){return"\\"+c.charCodeAt(0).toString(16)+" "})}function sm(l,c,f,g,x,v,Q,z){l.name="",Q!=null&&typeof Q!="function"&&typeof Q!="symbol"&&typeof Q!="boolean"?l.type=Q:l.removeAttribute("type"),c!=null?Q==="number"?(c===0&&l.value===""||l.value!=c)&&(l.value=""+Zr(c)):l.value!==""+Zr(c)&&(l.value=""+Zr(c)):Q!=="submit"&&Q!=="reset"||l.removeAttribute("value"),c!=null?lm(l,Q,Zr(c)):f!=null?lm(l,Q,Zr(f)):g!=null&&l.removeAttribute("value"),x==null&&v!=null&&(l.defaultChecked=!!v),x!=null&&(l.checked=x&&typeof x!="function"&&typeof x!="symbol"),z!=null&&typeof z!="function"&&typeof z!="symbol"&&typeof z!="boolean"?l.name=""+Zr(z):l.removeAttribute("name")}function w4(l,c,f,g,x,v,Q,z){if(v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"&&(l.type=v),c!=null||f!=null){if(!(v!=="submit"&&v!=="reset"||c!=null)){am(l);return}f=f!=null?""+Zr(f):"",c=c!=null?""+Zr(c):f,z||c===l.value||(l.value=c),l.defaultValue=c}g=g??x,g=typeof g!="function"&&typeof g!="symbol"&&!!g,l.checked=z?l.checked:!!g,l.defaultChecked=!!g,Q!=null&&typeof Q!="function"&&typeof Q!="symbol"&&typeof Q!="boolean"&&(l.name=Q),am(l)}function lm(l,c,f){c==="number"&&mf(l.ownerDocument)===l||l.defaultValue===""+f||(l.defaultValue=""+f)}function Jl(l,c,f,g){if(l=l.options,c){c={};for(var x=0;x<f.length;x++)c["$"+f[x]]=!0;for(f=0;f<l.length;f++)x=c.hasOwnProperty("$"+l[f].value),l[f].selected!==x&&(l[f].selected=x),x&&g&&(l[f].defaultSelected=!0)}else{for(f=""+Zr(f),c=null,x=0;x<l.length;x++){if(l[x].value===f){l[x].selected=!0,g&&(l[x].defaultSelected=!0);return}c!==null||l[x].disabled||(c=l[x])}c!==null&&(c.selected=!0)}}function T4(l,c,f){if(c!=null&&(c=""+Zr(c),c!==l.value&&(l.value=c),f==null)){l.defaultValue!==c&&(l.defaultValue=c);return}l.defaultValue=f!=null?""+Zr(f):""}function A4(l,c,f,g){if(c==null){if(g!=null){if(f!=null)throw Error(r(92));if(q(g)){if(1<g.length)throw Error(r(93));g=g[0]}f=g}f==null&&(f=""),c=f}f=Zr(c),l.defaultValue=f,g=l.textContent,g===f&&g!==""&&g!==null&&(l.value=g),am(l)}function eo(l,c){if(c){var f=l.firstChild;if(f&&f===l.lastChild&&f.nodeType===3){f.nodeValue=c;return}}l.textContent=c}var LE=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function P4(l,c,f){var g=c.indexOf("--")===0;f==null||typeof f=="boolean"||f===""?g?l.setProperty(c,""):c==="float"?l.cssFloat="":l[c]="":g?l.setProperty(c,f):typeof f!="number"||f===0||LE.has(c)?c==="float"?l.cssFloat=f:l[c]=(""+f).trim():l[c]=f+"px"}function C4(l,c,f){if(c!=null&&typeof c!="object")throw Error(r(62));if(l=l.style,f!=null){for(var g in f)!f.hasOwnProperty(g)||c!=null&&c.hasOwnProperty(g)||(g.indexOf("--")===0?l.setProperty(g,""):g==="float"?l.cssFloat="":l[g]="");for(var x in c)g=c[x],c.hasOwnProperty(x)&&f[x]!==g&&P4(l,x,g)}else for(var v in c)c.hasOwnProperty(v)&&P4(l,v,c[v])}function om(l){if(l.indexOf("-")===-1)return!1;switch(l){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 zE=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),BE=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function pf(l){return BE.test(""+l)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":l}function sa(){}var cm=null;function um(l){return l=l.target||l.srcElement||window,l.correspondingUseElement&&(l=l.correspondingUseElement),l.nodeType===3?l.parentNode:l}var to=null,no=null;function E4(l){var c=Wl(l);if(c&&(l=c.stateNode)){var f=l[Yn]||null;e:switch(l=c.stateNode,c.type){case"input":if(sm(l,f.value,f.defaultValue,f.defaultValue,f.checked,f.defaultChecked,f.type,f.name),c=f.name,f.type==="radio"&&c!=null){for(f=l;f.parentNode;)f=f.parentNode;for(f=f.querySelectorAll('input[name="'+Dr(""+c)+'"][type="radio"]'),c=0;c<f.length;c++){var g=f[c];if(g!==l&&g.form===l.form){var x=g[Yn]||null;if(!x)throw Error(r(90));sm(g,x.value,x.defaultValue,x.defaultValue,x.checked,x.defaultChecked,x.type,x.name)}}for(c=0;c<f.length;c++)g=f[c],g.form===l.form&&v4(g)}break e;case"textarea":T4(l,f.value,f.defaultValue);break e;case"select":c=f.value,c!=null&&Jl(l,!!f.multiple,c,!1)}}}var fm=!1;function M4(l,c,f){if(fm)return l(c,f);fm=!0;try{var g=l(c);return g}finally{if(fm=!1,(to!==null||no!==null)&&(nd(),to&&(c=to,l=no,no=to=null,E4(c),l)))for(c=0;c<l.length;c++)E4(l[c])}}function Fc(l,c){var f=l.stateNode;if(f===null)return null;var g=f[Yn]||null;if(g===null)return null;f=g[c];e:switch(c){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(g=!g.disabled)||(l=l.type,g=!(l==="button"||l==="input"||l==="select"||l==="textarea")),l=!g;break e;default:l=!1}if(l)return null;if(f&&typeof f!="function")throw Error(r(231,c,typeof f));return f}var la=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),dm=!1;if(la)try{var Xc={};Object.defineProperty(Xc,"passive",{get:function(){dm=!0}}),window.addEventListener("test",Xc,Xc),window.removeEventListener("test",Xc,Xc)}catch{dm=!1}var Ga=null,hm=null,gf=null;function $4(){if(gf)return gf;var l,c=hm,f=c.length,g,x="value"in Ga?Ga.value:Ga.textContent,v=x.length;for(l=0;l<f&&c[l]===x[l];l++);var Q=f-l;for(g=1;g<=Q&&c[f-g]===x[v-g];g++);return gf=x.slice(l,1<g?1-g:void 0)}function Of(l){var c=l.keyCode;return"charCode"in l?(l=l.charCode,l===0&&c===13&&(l=13)):l=c,l===10&&(l=13),32<=l||l===13?l:0}function yf(){return!0}function R4(){return!1}function Wn(l){function c(f,g,x,v,Q){this._reactName=f,this._targetInst=x,this.type=g,this.nativeEvent=v,this.target=Q,this.currentTarget=null;for(var z in l)l.hasOwnProperty(z)&&(f=l[z],this[z]=f?f(v):v[z]);return this.isDefaultPrevented=(v.defaultPrevented!=null?v.defaultPrevented:v.returnValue===!1)?yf:R4,this.isPropagationStopped=R4,this}return p(c.prototype,{preventDefault:function(){this.defaultPrevented=!0;var f=this.nativeEvent;f&&(f.preventDefault?f.preventDefault():typeof f.returnValue!="unknown"&&(f.returnValue=!1),this.isDefaultPrevented=yf)},stopPropagation:function(){var f=this.nativeEvent;f&&(f.stopPropagation?f.stopPropagation():typeof f.cancelBubble!="unknown"&&(f.cancelBubble=!0),this.isPropagationStopped=yf)},persist:function(){},isPersistent:yf}),c}var Xs={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(l){return l.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},bf=Wn(Xs),Uc=p({},Xs,{view:0,detail:0}),HE=Wn(Uc),mm,pm,qc,xf=p({},Uc,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Om,button:0,buttons:0,relatedTarget:function(l){return l.relatedTarget===void 0?l.fromElement===l.srcElement?l.toElement:l.fromElement:l.relatedTarget},movementX:function(l){return"movementX"in l?l.movementX:(l!==qc&&(qc&&l.type==="mousemove"?(mm=l.screenX-qc.screenX,pm=l.screenY-qc.screenY):pm=mm=0,qc=l),mm)},movementY:function(l){return"movementY"in l?l.movementY:pm}}),Q4=Wn(xf),FE=p({},xf,{dataTransfer:0}),XE=Wn(FE),UE=p({},Uc,{relatedTarget:0}),gm=Wn(UE),qE=p({},Xs,{animationName:0,elapsedTime:0,pseudoElement:0}),YE=Wn(qE),WE=p({},Xs,{clipboardData:function(l){return"clipboardData"in l?l.clipboardData:window.clipboardData}}),GE=Wn(WE),KE=p({},Xs,{data:0}),_4=Wn(KE),JE={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},eM={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"},tM={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function nM(l){var c=this.nativeEvent;return c.getModifierState?c.getModifierState(l):(l=tM[l])?!!c[l]:!1}function Om(){return nM}var rM=p({},Uc,{key:function(l){if(l.key){var c=JE[l.key]||l.key;if(c!=="Unidentified")return c}return l.type==="keypress"?(l=Of(l),l===13?"Enter":String.fromCharCode(l)):l.type==="keydown"||l.type==="keyup"?eM[l.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Om,charCode:function(l){return l.type==="keypress"?Of(l):0},keyCode:function(l){return l.type==="keydown"||l.type==="keyup"?l.keyCode:0},which:function(l){return l.type==="keypress"?Of(l):l.type==="keydown"||l.type==="keyup"?l.keyCode:0}}),iM=Wn(rM),aM=p({},xf,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),N4=Wn(aM),sM=p({},Uc,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Om}),lM=Wn(sM),oM=p({},Xs,{propertyName:0,elapsedTime:0,pseudoElement:0}),cM=Wn(oM),uM=p({},xf,{deltaX:function(l){return"deltaX"in l?l.deltaX:"wheelDeltaX"in l?-l.wheelDeltaX:0},deltaY:function(l){return"deltaY"in l?l.deltaY:"wheelDeltaY"in l?-l.wheelDeltaY:"wheelDelta"in l?-l.wheelDelta:0},deltaZ:0,deltaMode:0}),fM=Wn(uM),dM=p({},Xs,{newState:0,oldState:0}),hM=Wn(dM),mM=[9,13,27,32],ym=la&&"CompositionEvent"in window,Yc=null;la&&"documentMode"in document&&(Yc=document.documentMode);var pM=la&&"TextEvent"in window&&!Yc,j4=la&&(!ym||Yc&&8<Yc&&11>=Yc),Z4=" ",D4=!1;function V4(l,c){switch(l){case"keyup":return mM.indexOf(c.keyCode)!==-1;case"keydown":return c.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function I4(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var ro=!1;function gM(l,c){switch(l){case"compositionend":return I4(c);case"keypress":return c.which!==32?null:(D4=!0,Z4);case"textInput":return l=c.data,l===Z4&&D4?null:l;default:return null}}function OM(l,c){if(ro)return l==="compositionend"||!ym&&V4(l,c)?(l=$4(),gf=hm=Ga=null,ro=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(c.ctrlKey||c.altKey||c.metaKey)||c.ctrlKey&&c.altKey){if(c.char&&1<c.char.length)return c.char;if(c.which)return String.fromCharCode(c.which)}return null;case"compositionend":return j4&&c.locale!=="ko"?null:c.data;default:return null}}var yM={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 L4(l){var c=l&&l.nodeName&&l.nodeName.toLowerCase();return c==="input"?!!yM[l.type]:c==="textarea"}function z4(l,c,f,g){to?no?no.push(g):no=[g]:to=g,c=cd(c,"onChange"),0<c.length&&(f=new bf("onChange","change",null,f,g),l.push({event:f,listeners:c}))}var Wc=null,Gc=null;function bM(l){wx(l,0)}function Sf(l){var c=Hc(l);if(v4(c))return l}function B4(l,c){if(l==="change")return c}var H4=!1;if(la){var bm;if(la){var xm="oninput"in document;if(!xm){var F4=document.createElement("div");F4.setAttribute("oninput","return;"),xm=typeof F4.oninput=="function"}bm=xm}else bm=!1;H4=bm&&(!document.documentMode||9<document.documentMode)}function X4(){Wc&&(Wc.detachEvent("onpropertychange",U4),Gc=Wc=null)}function U4(l){if(l.propertyName==="value"&&Sf(Gc)){var c=[];z4(c,Gc,l,um(l)),M4(bM,c)}}function xM(l,c,f){l==="focusin"?(X4(),Wc=c,Gc=f,Wc.attachEvent("onpropertychange",U4)):l==="focusout"&&X4()}function SM(l){if(l==="selectionchange"||l==="keyup"||l==="keydown")return Sf(Gc)}function kM(l,c){if(l==="click")return Sf(c)}function vM(l,c){if(l==="input"||l==="change")return Sf(c)}function wM(l,c){return l===c&&(l!==0||1/l===1/c)||l!==l&&c!==c}var gr=typeof Object.is=="function"?Object.is:wM;function Kc(l,c){if(gr(l,c))return!0;if(typeof l!="object"||l===null||typeof c!="object"||c===null)return!1;var f=Object.keys(l),g=Object.keys(c);if(f.length!==g.length)return!1;for(g=0;g<f.length;g++){var x=f[g];if(!ce.call(c,x)||!gr(l[x],c[x]))return!1}return!0}function q4(l){for(;l&&l.firstChild;)l=l.firstChild;return l}function Y4(l,c){var f=q4(l);l=0;for(var g;f;){if(f.nodeType===3){if(g=l+f.textContent.length,l<=c&&g>=c)return{node:f,offset:c-l};l=g}e:{for(;f;){if(f.nextSibling){f=f.nextSibling;break e}f=f.parentNode}f=void 0}f=q4(f)}}function W4(l,c){return l&&c?l===c?!0:l&&l.nodeType===3?!1:c&&c.nodeType===3?W4(l,c.parentNode):"contains"in l?l.contains(c):l.compareDocumentPosition?!!(l.compareDocumentPosition(c)&16):!1:!1}function G4(l){l=l!=null&&l.ownerDocument!=null&&l.ownerDocument.defaultView!=null?l.ownerDocument.defaultView:window;for(var c=mf(l.document);c instanceof l.HTMLIFrameElement;){try{var f=typeof c.contentWindow.location.href=="string"}catch{f=!1}if(f)l=c.contentWindow;else break;c=mf(l.document)}return c}function Sm(l){var c=l&&l.nodeName&&l.nodeName.toLowerCase();return c&&(c==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||c==="textarea"||l.contentEditable==="true")}var TM=la&&"documentMode"in document&&11>=document.documentMode,io=null,km=null,Jc=null,vm=!1;function K4(l,c,f){var g=f.window===f?f.document:f.nodeType===9?f:f.ownerDocument;vm||io==null||io!==mf(g)||(g=io,"selectionStart"in g&&Sm(g)?g={start:g.selectionStart,end:g.selectionEnd}:(g=(g.ownerDocument&&g.ownerDocument.defaultView||window).getSelection(),g={anchorNode:g.anchorNode,anchorOffset:g.anchorOffset,focusNode:g.focusNode,focusOffset:g.focusOffset}),Jc&&Kc(Jc,g)||(Jc=g,g=cd(km,"onSelect"),0<g.length&&(c=new bf("onSelect","select",null,c,f),l.push({event:c,listeners:g}),c.target=io)))}function Us(l,c){var f={};return f[l.toLowerCase()]=c.toLowerCase(),f["Webkit"+l]="webkit"+c,f["Moz"+l]="moz"+c,f}var ao={animationend:Us("Animation","AnimationEnd"),animationiteration:Us("Animation","AnimationIteration"),animationstart:Us("Animation","AnimationStart"),transitionrun:Us("Transition","TransitionRun"),transitionstart:Us("Transition","TransitionStart"),transitioncancel:Us("Transition","TransitionCancel"),transitionend:Us("Transition","TransitionEnd")},wm={},J4={};la&&(J4=document.createElement("div").style,"AnimationEvent"in window||(delete ao.animationend.animation,delete ao.animationiteration.animation,delete ao.animationstart.animation),"TransitionEvent"in window||delete ao.transitionend.transition);function qs(l){if(wm[l])return wm[l];if(!ao[l])return l;var c=ao[l],f;for(f in c)if(c.hasOwnProperty(f)&&f in J4)return wm[l]=c[f];return l}var ey=qs("animationend"),ty=qs("animationiteration"),ny=qs("animationstart"),AM=qs("transitionrun"),PM=qs("transitionstart"),CM=qs("transitioncancel"),ry=qs("transitionend"),iy=new Map,Tm="abort auxClick beforeToggle 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(" ");Tm.push("scrollEnd");function oi(l,c){iy.set(l,c),Fs(c,[l])}var kf=typeof reportError=="function"?reportError:function(l){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var c=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof l=="object"&&l!==null&&typeof l.message=="string"?String(l.message):String(l),error:l});if(!window.dispatchEvent(c))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",l);return}console.error(l)},Vr=[],so=0,Am=0;function vf(){for(var l=so,c=Am=so=0;c<l;){var f=Vr[c];Vr[c++]=null;var g=Vr[c];Vr[c++]=null;var x=Vr[c];Vr[c++]=null;var v=Vr[c];if(Vr[c++]=null,g!==null&&x!==null){var Q=g.pending;Q===null?x.next=x:(x.next=Q.next,Q.next=x),g.pending=x}v!==0&&ay(f,x,v)}}function wf(l,c,f,g){Vr[so++]=l,Vr[so++]=c,Vr[so++]=f,Vr[so++]=g,Am|=g,l.lanes|=g,l=l.alternate,l!==null&&(l.lanes|=g)}function Pm(l,c,f,g){return wf(l,c,f,g),Tf(l)}function Ys(l,c){return wf(l,null,null,c),Tf(l)}function ay(l,c,f){l.lanes|=f;var g=l.alternate;g!==null&&(g.lanes|=f);for(var x=!1,v=l.return;v!==null;)v.childLanes|=f,g=v.alternate,g!==null&&(g.childLanes|=f),v.tag===22&&(l=v.stateNode,l===null||l._visibility&1||(x=!0)),l=v,v=v.return;return l.tag===3?(v=l.stateNode,x&&c!==null&&(x=31-Mt(f),l=v.hiddenUpdates,g=l[x],g===null?l[x]=[c]:g.push(c),c.lane=f|536870912),v):null}function Tf(l){if(50<Su)throw Su=0,jp=null,Error(r(185));for(var c=l.return;c!==null;)l=c,c=l.return;return l.tag===3?l.stateNode:null}var lo={};function EM(l,c,f,g){this.tag=l,this.key=f,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=c,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=g,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Or(l,c,f,g){return new EM(l,c,f,g)}function Cm(l){return l=l.prototype,!(!l||!l.isReactComponent)}function oa(l,c){var f=l.alternate;return f===null?(f=Or(l.tag,c,l.key,l.mode),f.elementType=l.elementType,f.type=l.type,f.stateNode=l.stateNode,f.alternate=l,l.alternate=f):(f.pendingProps=c,f.type=l.type,f.flags=0,f.subtreeFlags=0,f.deletions=null),f.flags=l.flags&65011712,f.childLanes=l.childLanes,f.lanes=l.lanes,f.child=l.child,f.memoizedProps=l.memoizedProps,f.memoizedState=l.memoizedState,f.updateQueue=l.updateQueue,c=l.dependencies,f.dependencies=c===null?null:{lanes:c.lanes,firstContext:c.firstContext},f.sibling=l.sibling,f.index=l.index,f.ref=l.ref,f.refCleanup=l.refCleanup,f}function sy(l,c){l.flags&=65011714;var f=l.alternate;return f===null?(l.childLanes=0,l.lanes=c,l.child=null,l.subtreeFlags=0,l.memoizedProps=null,l.memoizedState=null,l.updateQueue=null,l.dependencies=null,l.stateNode=null):(l.childLanes=f.childLanes,l.lanes=f.lanes,l.child=f.child,l.subtreeFlags=0,l.deletions=null,l.memoizedProps=f.memoizedProps,l.memoizedState=f.memoizedState,l.updateQueue=f.updateQueue,l.type=f.type,c=f.dependencies,l.dependencies=c===null?null:{lanes:c.lanes,firstContext:c.firstContext}),l}function Af(l,c,f,g,x,v){var Q=0;if(g=l,typeof l=="function")Cm(l)&&(Q=1);else if(typeof l=="string")Q=_$(l,f,F.current)?26:l==="html"||l==="head"||l==="body"?27:5;else e:switch(l){case N:return l=Or(31,f,c,x),l.elementType=N,l.lanes=v,l;case k:return Ws(f.children,x,v,c);case T:Q=8,x|=24;break;case w:return l=Or(12,f,c,x|2),l.elementType=w,l.lanes=v,l;case P:return l=Or(13,f,c,x),l.elementType=P,l.lanes=v,l;case $:return l=Or(19,f,c,x),l.elementType=$,l.lanes=v,l;default:if(typeof l=="object"&&l!==null)switch(l.$$typeof){case E:Q=10;break e;case A:Q=9;break e;case C:Q=11;break e;case M:Q=14;break e;case R:Q=16,g=null;break e}Q=29,f=Error(r(130,l===null?"null":typeof l,"")),g=null}return c=Or(Q,f,c,x),c.elementType=l,c.type=g,c.lanes=v,c}function Ws(l,c,f,g){return l=Or(7,l,g,c),l.lanes=f,l}function Em(l,c,f){return l=Or(6,l,null,c),l.lanes=f,l}function ly(l){var c=Or(18,null,null,0);return c.stateNode=l,c}function Mm(l,c,f){return c=Or(4,l.children!==null?l.children:[],l.key,c),c.lanes=f,c.stateNode={containerInfo:l.containerInfo,pendingChildren:null,implementation:l.implementation},c}var oy=new WeakMap;function Ir(l,c){if(typeof l=="object"&&l!==null){var f=oy.get(l);return f!==void 0?f:(c={value:l,source:c,stack:le(c)},oy.set(l,c),c)}return{value:l,source:c,stack:le(c)}}var oo=[],co=0,Pf=null,eu=0,Lr=[],zr=0,Ka=null,Pi=1,Ci="";function ca(l,c){oo[co++]=eu,oo[co++]=Pf,Pf=l,eu=c}function cy(l,c,f){Lr[zr++]=Pi,Lr[zr++]=Ci,Lr[zr++]=Ka,Ka=l;var g=Pi;l=Ci;var x=32-Mt(g)-1;g&=~(1<<x),f+=1;var v=32-Mt(c)+x;if(30<v){var Q=x-x%5;v=(g&(1<<Q)-1).toString(32),g>>=Q,x-=Q,Pi=1<<32-Mt(c)+x|f<<x|g,Ci=v+l}else Pi=1<<v|f<<x|g,Ci=l}function $m(l){l.return!==null&&(ca(l,1),cy(l,1,0))}function Rm(l){for(;l===Pf;)Pf=oo[--co],oo[co]=null,eu=oo[--co],oo[co]=null;for(;l===Ka;)Ka=Lr[--zr],Lr[zr]=null,Ci=Lr[--zr],Lr[zr]=null,Pi=Lr[--zr],Lr[zr]=null}function uy(l,c){Lr[zr++]=Pi,Lr[zr++]=Ci,Lr[zr++]=Ka,Pi=c.id,Ci=c.overflow,Ka=l}var vn=null,Rt=null,ut=!1,Ja=null,Br=!1,Qm=Error(r(519));function es(l){var c=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw tu(Ir(c,l)),Qm}function fy(l){var c=l.stateNode,f=l.type,g=l.memoizedProps;switch(c[kn]=l,c[Yn]=g,f){case"dialog":st("cancel",c),st("close",c);break;case"iframe":case"object":case"embed":st("load",c);break;case"video":case"audio":for(f=0;f<vu.length;f++)st(vu[f],c);break;case"source":st("error",c);break;case"img":case"image":case"link":st("error",c),st("load",c);break;case"details":st("toggle",c);break;case"input":st("invalid",c),w4(c,g.value,g.defaultValue,g.checked,g.defaultChecked,g.type,g.name,!0);break;case"select":st("invalid",c);break;case"textarea":st("invalid",c),A4(c,g.value,g.defaultValue,g.children)}f=g.children,typeof f!="string"&&typeof f!="number"&&typeof f!="bigint"||c.textContent===""+f||g.suppressHydrationWarning===!0||Cx(c.textContent,f)?(g.popover!=null&&(st("beforetoggle",c),st("toggle",c)),g.onScroll!=null&&st("scroll",c),g.onScrollEnd!=null&&st("scrollend",c),g.onClick!=null&&(c.onclick=sa),c=!0):c=!1,c||es(l,!0)}function dy(l){for(vn=l.return;vn;)switch(vn.tag){case 5:case 31:case 13:Br=!1;return;case 27:case 3:Br=!0;return;default:vn=vn.return}}function uo(l){if(l!==vn)return!1;if(!ut)return dy(l),ut=!0,!1;var c=l.tag,f;if((f=c!==3&&c!==27)&&((f=c===5)&&(f=l.type,f=!(f!=="form"&&f!=="button")||Gp(l.type,l.memoizedProps)),f=!f),f&&Rt&&es(l),dy(l),c===13){if(l=l.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(r(317));Rt=Zx(l)}else if(c===31){if(l=l.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(r(317));Rt=Zx(l)}else c===27?(c=Rt,ms(l.type)?(l=ng,ng=null,Rt=l):Rt=c):Rt=vn?Fr(l.stateNode.nextSibling):null;return!0}function Gs(){Rt=vn=null,ut=!1}function _m(){var l=Ja;return l!==null&&(er===null?er=l:er.push.apply(er,l),Ja=null),l}function tu(l){Ja===null?Ja=[l]:Ja.push(l)}var Nm=_(null),Ks=null,ua=null;function ts(l,c,f){H(Nm,c._currentValue),c._currentValue=f}function fa(l){l._currentValue=Nm.current,j(Nm)}function jm(l,c,f){for(;l!==null;){var g=l.alternate;if((l.childLanes&c)!==c?(l.childLanes|=c,g!==null&&(g.childLanes|=c)):g!==null&&(g.childLanes&c)!==c&&(g.childLanes|=c),l===f)break;l=l.return}}function Zm(l,c,f,g){var x=l.child;for(x!==null&&(x.return=l);x!==null;){var v=x.dependencies;if(v!==null){var Q=x.child;v=v.firstContext;e:for(;v!==null;){var z=v;v=x;for(var J=0;J<c.length;J++)if(z.context===c[J]){v.lanes|=f,z=v.alternate,z!==null&&(z.lanes|=f),jm(v.return,f,l),g||(Q=null);break e}v=z.next}}else if(x.tag===18){if(Q=x.return,Q===null)throw Error(r(341));Q.lanes|=f,v=Q.alternate,v!==null&&(v.lanes|=f),jm(Q,f,l),Q=null}else Q=x.child;if(Q!==null)Q.return=x;else for(Q=x;Q!==null;){if(Q===l){Q=null;break}if(x=Q.sibling,x!==null){x.return=Q.return,Q=x;break}Q=Q.return}x=Q}}function fo(l,c,f,g){l=null;for(var x=c,v=!1;x!==null;){if(!v){if((x.flags&524288)!==0)v=!0;else if((x.flags&262144)!==0)break}if(x.tag===10){var Q=x.alternate;if(Q===null)throw Error(r(387));if(Q=Q.memoizedProps,Q!==null){var z=x.type;gr(x.pendingProps.value,Q.value)||(l!==null?l.push(z):l=[z])}}else if(x===ie.current){if(Q=x.alternate,Q===null)throw Error(r(387));Q.memoizedState.memoizedState!==x.memoizedState.memoizedState&&(l!==null?l.push(Cu):l=[Cu])}x=x.return}l!==null&&Zm(c,l,f,g),c.flags|=262144}function Cf(l){for(l=l.firstContext;l!==null;){if(!gr(l.context._currentValue,l.memoizedValue))return!0;l=l.next}return!1}function Js(l){Ks=l,ua=null,l=l.dependencies,l!==null&&(l.firstContext=null)}function wn(l){return hy(Ks,l)}function Ef(l,c){return Ks===null&&Js(l),hy(l,c)}function hy(l,c){var f=c._currentValue;if(c={context:c,memoizedValue:f,next:null},ua===null){if(l===null)throw Error(r(308));ua=c,l.dependencies={lanes:0,firstContext:c},l.flags|=524288}else ua=ua.next=c;return f}var MM=typeof AbortController<"u"?AbortController:function(){var l=[],c=this.signal={aborted:!1,addEventListener:function(f,g){l.push(g)}};this.abort=function(){c.aborted=!0,l.forEach(function(f){return f()})}},$M=n.unstable_scheduleCallback,RM=n.unstable_NormalPriority,rn={$$typeof:E,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Dm(){return{controller:new MM,data:new Map,refCount:0}}function nu(l){l.refCount--,l.refCount===0&&$M(RM,function(){l.controller.abort()})}var ru=null,Vm=0,ho=0,mo=null;function QM(l,c){if(ru===null){var f=ru=[];Vm=0,ho=zp(),mo={status:"pending",value:void 0,then:function(g){f.push(g)}}}return Vm++,c.then(my,my),c}function my(){if(--Vm===0&&ru!==null){mo!==null&&(mo.status="fulfilled");var l=ru;ru=null,ho=0,mo=null;for(var c=0;c<l.length;c++)(0,l[c])()}}function _M(l,c){var f=[],g={status:"pending",value:null,reason:null,then:function(x){f.push(x)}};return l.then(function(){g.status="fulfilled",g.value=c;for(var x=0;x<f.length;x++)(0,f[x])(c)},function(x){for(g.status="rejected",g.reason=x,x=0;x<f.length;x++)(0,f[x])(void 0)}),g}var py=L.S;L.S=function(l,c){Kb=Pe(),typeof c=="object"&&c!==null&&typeof c.then=="function"&&QM(l,c),py!==null&&py(l,c)};var el=_(null);function Im(){var l=el.current;return l!==null?l:Ct.pooledCache}function Mf(l,c){c===null?H(el,el.current):H(el,c.pool)}function gy(){var l=Im();return l===null?null:{parent:rn._currentValue,pool:l}}var po=Error(r(460)),Lm=Error(r(474)),$f=Error(r(542)),Rf={then:function(){}};function Oy(l){return l=l.status,l==="fulfilled"||l==="rejected"}function yy(l,c,f){switch(f=l[f],f===void 0?l.push(c):f!==c&&(c.then(sa,sa),c=f),c.status){case"fulfilled":return c.value;case"rejected":throw l=c.reason,xy(l),l;default:if(typeof c.status=="string")c.then(sa,sa);else{if(l=Ct,l!==null&&100<l.shellSuspendCounter)throw Error(r(482));l=c,l.status="pending",l.then(function(g){if(c.status==="pending"){var x=c;x.status="fulfilled",x.value=g}},function(g){if(c.status==="pending"){var x=c;x.status="rejected",x.reason=g}})}switch(c.status){case"fulfilled":return c.value;case"rejected":throw l=c.reason,xy(l),l}throw nl=c,po}}function tl(l){try{var c=l._init;return c(l._payload)}catch(f){throw f!==null&&typeof f=="object"&&typeof f.then=="function"?(nl=f,po):f}}var nl=null;function by(){if(nl===null)throw Error(r(459));var l=nl;return nl=null,l}function xy(l){if(l===po||l===$f)throw Error(r(483))}var go=null,iu=0;function Qf(l){var c=iu;return iu+=1,go===null&&(go=[]),yy(go,l,c)}function au(l,c){c=c.props.ref,l.ref=c!==void 0?c:null}function _f(l,c){throw c.$$typeof===O?Error(r(525)):(l=Object.prototype.toString.call(c),Error(r(31,l==="[object Object]"?"object with keys {"+Object.keys(c).join(", ")+"}":l)))}function Sy(l){function c(se,re){if(l){var oe=se.deletions;oe===null?(se.deletions=[re],se.flags|=16):oe.push(re)}}function f(se,re){if(!l)return null;for(;re!==null;)c(se,re),re=re.sibling;return null}function g(se){for(var re=new Map;se!==null;)se.key!==null?re.set(se.key,se):re.set(se.index,se),se=se.sibling;return re}function x(se,re){return se=oa(se,re),se.index=0,se.sibling=null,se}function v(se,re,oe){return se.index=oe,l?(oe=se.alternate,oe!==null?(oe=oe.index,oe<re?(se.flags|=67108866,re):oe):(se.flags|=67108866,re)):(se.flags|=1048576,re)}function Q(se){return l&&se.alternate===null&&(se.flags|=67108866),se}function z(se,re,oe,Se){return re===null||re.tag!==6?(re=Em(oe,se.mode,Se),re.return=se,re):(re=x(re,oe),re.return=se,re)}function J(se,re,oe,Se){var qe=oe.type;return qe===k?xe(se,re,oe.props.children,Se,oe.key):re!==null&&(re.elementType===qe||typeof qe=="object"&&qe!==null&&qe.$$typeof===R&&tl(qe)===re.type)?(re=x(re,oe.props),au(re,oe),re.return=se,re):(re=Af(oe.type,oe.key,oe.props,null,se.mode,Se),au(re,oe),re.return=se,re)}function ue(se,re,oe,Se){return re===null||re.tag!==4||re.stateNode.containerInfo!==oe.containerInfo||re.stateNode.implementation!==oe.implementation?(re=Mm(oe,se.mode,Se),re.return=se,re):(re=x(re,oe.children||[]),re.return=se,re)}function xe(se,re,oe,Se,qe){return re===null||re.tag!==7?(re=Ws(oe,se.mode,Se,qe),re.return=se,re):(re=x(re,oe),re.return=se,re)}function ve(se,re,oe){if(typeof re=="string"&&re!==""||typeof re=="number"||typeof re=="bigint")return re=Em(""+re,se.mode,oe),re.return=se,re;if(typeof re=="object"&&re!==null){switch(re.$$typeof){case b:return oe=Af(re.type,re.key,re.props,null,se.mode,oe),au(oe,re),oe.return=se,oe;case S:return re=Mm(re,se.mode,oe),re.return=se,re;case R:return re=tl(re),ve(se,re,oe)}if(q(re)||I(re))return re=Ws(re,se.mode,oe,null),re.return=se,re;if(typeof re.then=="function")return ve(se,Qf(re),oe);if(re.$$typeof===E)return ve(se,Ef(se,re),oe);_f(se,re)}return null}function he(se,re,oe,Se){var qe=re!==null?re.key:null;if(typeof oe=="string"&&oe!==""||typeof oe=="number"||typeof oe=="bigint")return qe!==null?null:z(se,re,""+oe,Se);if(typeof oe=="object"&&oe!==null){switch(oe.$$typeof){case b:return oe.key===qe?J(se,re,oe,Se):null;case S:return oe.key===qe?ue(se,re,oe,Se):null;case R:return oe=tl(oe),he(se,re,oe,Se)}if(q(oe)||I(oe))return qe!==null?null:xe(se,re,oe,Se,null);if(typeof oe.then=="function")return he(se,re,Qf(oe),Se);if(oe.$$typeof===E)return he(se,re,Ef(se,oe),Se);_f(se,oe)}return null}function pe(se,re,oe,Se,qe){if(typeof Se=="string"&&Se!==""||typeof Se=="number"||typeof Se=="bigint")return se=se.get(oe)||null,z(re,se,""+Se,qe);if(typeof Se=="object"&&Se!==null){switch(Se.$$typeof){case b:return se=se.get(Se.key===null?oe:Se.key)||null,J(re,se,Se,qe);case S:return se=se.get(Se.key===null?oe:Se.key)||null,ue(re,se,Se,qe);case R:return Se=tl(Se),pe(se,re,oe,Se,qe)}if(q(Se)||I(Se))return se=se.get(oe)||null,xe(re,se,Se,qe,null);if(typeof Se.then=="function")return pe(se,re,oe,Qf(Se),qe);if(Se.$$typeof===E)return pe(se,re,oe,Ef(re,Se),qe);_f(re,Se)}return null}function De(se,re,oe,Se){for(var qe=null,pt=null,Be=re,tt=re=0,ct=null;Be!==null&&tt<oe.length;tt++){Be.index>tt?(ct=Be,Be=null):ct=Be.sibling;var gt=he(se,Be,oe[tt],Se);if(gt===null){Be===null&&(Be=ct);break}l&&Be&&gt.alternate===null&&c(se,Be),re=v(gt,re,tt),pt===null?qe=gt:pt.sibling=gt,pt=gt,Be=ct}if(tt===oe.length)return f(se,Be),ut&&ca(se,tt),qe;if(Be===null){for(;tt<oe.length;tt++)Be=ve(se,oe[tt],Se),Be!==null&&(re=v(Be,re,tt),pt===null?qe=Be:pt.sibling=Be,pt=Be);return ut&&ca(se,tt),qe}for(Be=g(Be);tt<oe.length;tt++)ct=pe(Be,se,tt,oe[tt],Se),ct!==null&&(l&&ct.alternate!==null&&Be.delete(ct.key===null?tt:ct.key),re=v(ct,re,tt),pt===null?qe=ct:pt.sibling=ct,pt=ct);return l&&Be.forEach(function(bs){return c(se,bs)}),ut&&ca(se,tt),qe}function We(se,re,oe,Se){if(oe==null)throw Error(r(151));for(var qe=null,pt=null,Be=re,tt=re=0,ct=null,gt=oe.next();Be!==null&&!gt.done;tt++,gt=oe.next()){Be.index>tt?(ct=Be,Be=null):ct=Be.sibling;var bs=he(se,Be,gt.value,Se);if(bs===null){Be===null&&(Be=ct);break}l&&Be&&bs.alternate===null&&c(se,Be),re=v(bs,re,tt),pt===null?qe=bs:pt.sibling=bs,pt=bs,Be=ct}if(gt.done)return f(se,Be),ut&&ca(se,tt),qe;if(Be===null){for(;!gt.done;tt++,gt=oe.next())gt=ve(se,gt.value,Se),gt!==null&&(re=v(gt,re,tt),pt===null?qe=gt:pt.sibling=gt,pt=gt);return ut&&ca(se,tt),qe}for(Be=g(Be);!gt.done;tt++,gt=oe.next())gt=pe(Be,se,tt,gt.value,Se),gt!==null&&(l&&gt.alternate!==null&&Be.delete(gt.key===null?tt:gt.key),re=v(gt,re,tt),pt===null?qe=gt:pt.sibling=gt,pt=gt);return l&&Be.forEach(function(F$){return c(se,F$)}),ut&&ca(se,tt),qe}function At(se,re,oe,Se){if(typeof oe=="object"&&oe!==null&&oe.type===k&&oe.key===null&&(oe=oe.props.children),typeof oe=="object"&&oe!==null){switch(oe.$$typeof){case b:e:{for(var qe=oe.key;re!==null;){if(re.key===qe){if(qe=oe.type,qe===k){if(re.tag===7){f(se,re.sibling),Se=x(re,oe.props.children),Se.return=se,se=Se;break e}}else if(re.elementType===qe||typeof qe=="object"&&qe!==null&&qe.$$typeof===R&&tl(qe)===re.type){f(se,re.sibling),Se=x(re,oe.props),au(Se,oe),Se.return=se,se=Se;break e}f(se,re);break}else c(se,re);re=re.sibling}oe.type===k?(Se=Ws(oe.props.children,se.mode,Se,oe.key),Se.return=se,se=Se):(Se=Af(oe.type,oe.key,oe.props,null,se.mode,Se),au(Se,oe),Se.return=se,se=Se)}return Q(se);case S:e:{for(qe=oe.key;re!==null;){if(re.key===qe)if(re.tag===4&&re.stateNode.containerInfo===oe.containerInfo&&re.stateNode.implementation===oe.implementation){f(se,re.sibling),Se=x(re,oe.children||[]),Se.return=se,se=Se;break e}else{f(se,re);break}else c(se,re);re=re.sibling}Se=Mm(oe,se.mode,Se),Se.return=se,se=Se}return Q(se);case R:return oe=tl(oe),At(se,re,oe,Se)}if(q(oe))return De(se,re,oe,Se);if(I(oe)){if(qe=I(oe),typeof qe!="function")throw Error(r(150));return oe=qe.call(oe),We(se,re,oe,Se)}if(typeof oe.then=="function")return At(se,re,Qf(oe),Se);if(oe.$$typeof===E)return At(se,re,Ef(se,oe),Se);_f(se,oe)}return typeof oe=="string"&&oe!==""||typeof oe=="number"||typeof oe=="bigint"?(oe=""+oe,re!==null&&re.tag===6?(f(se,re.sibling),Se=x(re,oe),Se.return=se,se=Se):(f(se,re),Se=Em(oe,se.mode,Se),Se.return=se,se=Se),Q(se)):f(se,re)}return function(se,re,oe,Se){try{iu=0;var qe=At(se,re,oe,Se);return go=null,qe}catch(Be){if(Be===po||Be===$f)throw Be;var pt=Or(29,Be,null,se.mode);return pt.lanes=Se,pt.return=se,pt}finally{}}}var rl=Sy(!0),ky=Sy(!1),ns=!1;function zm(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Bm(l,c){l=l.updateQueue,c.updateQueue===l&&(c.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,callbacks:null})}function rs(l){return{lane:l,tag:0,payload:null,callback:null,next:null}}function is(l,c,f){var g=l.updateQueue;if(g===null)return null;if(g=g.shared,(yt&2)!==0){var x=g.pending;return x===null?c.next=c:(c.next=x.next,x.next=c),g.pending=c,c=Tf(l),ay(l,null,f),c}return wf(l,g,c,f),Tf(l)}function su(l,c,f){if(c=c.updateQueue,c!==null&&(c=c.shared,(f&4194048)!==0)){var g=c.lanes;g&=l.pendingLanes,f|=g,c.lanes=f,it(l,f)}}function Hm(l,c){var f=l.updateQueue,g=l.alternate;if(g!==null&&(g=g.updateQueue,f===g)){var x=null,v=null;if(f=f.firstBaseUpdate,f!==null){do{var Q={lane:f.lane,tag:f.tag,payload:f.payload,callback:null,next:null};v===null?x=v=Q:v=v.next=Q,f=f.next}while(f!==null);v===null?x=v=c:v=v.next=c}else x=v=c;f={baseState:g.baseState,firstBaseUpdate:x,lastBaseUpdate:v,shared:g.shared,callbacks:g.callbacks},l.updateQueue=f;return}l=f.lastBaseUpdate,l===null?f.firstBaseUpdate=c:l.next=c,f.lastBaseUpdate=c}var Fm=!1;function lu(){if(Fm){var l=mo;if(l!==null)throw l}}function ou(l,c,f,g){Fm=!1;var x=l.updateQueue;ns=!1;var v=x.firstBaseUpdate,Q=x.lastBaseUpdate,z=x.shared.pending;if(z!==null){x.shared.pending=null;var J=z,ue=J.next;J.next=null,Q===null?v=ue:Q.next=ue,Q=J;var xe=l.alternate;xe!==null&&(xe=xe.updateQueue,z=xe.lastBaseUpdate,z!==Q&&(z===null?xe.firstBaseUpdate=ue:z.next=ue,xe.lastBaseUpdate=J))}if(v!==null){var ve=x.baseState;Q=0,xe=ue=J=null,z=v;do{var he=z.lane&-536870913,pe=he!==z.lane;if(pe?(ot&he)===he:(g&he)===he){he!==0&&he===ho&&(Fm=!0),xe!==null&&(xe=xe.next={lane:0,tag:z.tag,payload:z.payload,callback:null,next:null});e:{var De=l,We=z;he=c;var At=f;switch(We.tag){case 1:if(De=We.payload,typeof De=="function"){ve=De.call(At,ve,he);break e}ve=De;break e;case 3:De.flags=De.flags&-65537|128;case 0:if(De=We.payload,he=typeof De=="function"?De.call(At,ve,he):De,he==null)break e;ve=p({},ve,he);break e;case 2:ns=!0}}he=z.callback,he!==null&&(l.flags|=64,pe&&(l.flags|=8192),pe=x.callbacks,pe===null?x.callbacks=[he]:pe.push(he))}else pe={lane:he,tag:z.tag,payload:z.payload,callback:z.callback,next:null},xe===null?(ue=xe=pe,J=ve):xe=xe.next=pe,Q|=he;if(z=z.next,z===null){if(z=x.shared.pending,z===null)break;pe=z,z=pe.next,pe.next=null,x.lastBaseUpdate=pe,x.shared.pending=null}}while(!0);xe===null&&(J=ve),x.baseState=J,x.firstBaseUpdate=ue,x.lastBaseUpdate=xe,v===null&&(x.shared.lanes=0),cs|=Q,l.lanes=Q,l.memoizedState=ve}}function vy(l,c){if(typeof l!="function")throw Error(r(191,l));l.call(c)}function wy(l,c){var f=l.callbacks;if(f!==null)for(l.callbacks=null,l=0;l<f.length;l++)vy(f[l],c)}var Oo=_(null),Nf=_(0);function Ty(l,c){l=xa,H(Nf,l),H(Oo,c),xa=l|c.baseLanes}function Xm(){H(Nf,xa),H(Oo,Oo.current)}function Um(){xa=Nf.current,j(Oo),j(Nf)}var yr=_(null),Hr=null;function as(l){var c=l.alternate;H(Wt,Wt.current&1),H(yr,l),Hr===null&&(c===null||Oo.current!==null||c.memoizedState!==null)&&(Hr=l)}function qm(l){H(Wt,Wt.current),H(yr,l),Hr===null&&(Hr=l)}function Ay(l){l.tag===22?(H(Wt,Wt.current),H(yr,l),Hr===null&&(Hr=l)):ss()}function ss(){H(Wt,Wt.current),H(yr,yr.current)}function br(l){j(yr),Hr===l&&(Hr=null),j(Wt)}var Wt=_(0);function jf(l){for(var c=l;c!==null;){if(c.tag===13){var f=c.memoizedState;if(f!==null&&(f=f.dehydrated,f===null||eg(f)||tg(f)))return c}else if(c.tag===19&&(c.memoizedProps.revealOrder==="forwards"||c.memoizedProps.revealOrder==="backwards"||c.memoizedProps.revealOrder==="unstable_legacy-backwards"||c.memoizedProps.revealOrder==="together")){if((c.flags&128)!==0)return c}else if(c.child!==null){c.child.return=c,c=c.child;continue}if(c===l)break;for(;c.sibling===null;){if(c.return===null||c.return===l)return null;c=c.return}c.sibling.return=c.return,c=c.sibling}return null}var da=0,et=null,wt=null,an=null,Zf=!1,yo=!1,il=!1,Df=0,cu=0,bo=null,NM=0;function Bt(){throw Error(r(321))}function Ym(l,c){if(c===null)return!1;for(var f=0;f<c.length&&f<l.length;f++)if(!gr(l[f],c[f]))return!1;return!0}function Wm(l,c,f,g,x,v){return da=v,et=c,c.memoizedState=null,c.updateQueue=null,c.lanes=0,L.H=l===null||l.memoizedState===null?cb:fp,il=!1,v=f(g,x),il=!1,yo&&(v=Cy(c,f,g,x)),Py(l),v}function Py(l){L.H=du;var c=wt!==null&&wt.next!==null;if(da=0,an=wt=et=null,Zf=!1,cu=0,bo=null,c)throw Error(r(300));l===null||sn||(l=l.dependencies,l!==null&&Cf(l)&&(sn=!0))}function Cy(l,c,f,g){et=l;var x=0;do{if(yo&&(bo=null),cu=0,yo=!1,25<=x)throw Error(r(301));if(x+=1,an=wt=null,l.updateQueue!=null){var v=l.updateQueue;v.lastEffect=null,v.events=null,v.stores=null,v.memoCache!=null&&(v.memoCache.index=0)}L.H=ub,v=c(f,g)}while(yo);return v}function jM(){var l=L.H,c=l.useState()[0];return c=typeof c.then=="function"?uu(c):c,l=l.useState()[0],(wt!==null?wt.memoizedState:null)!==l&&(et.flags|=1024),c}function Gm(){var l=Df!==0;return Df=0,l}function Km(l,c,f){c.updateQueue=l.updateQueue,c.flags&=-2053,l.lanes&=~f}function Jm(l){if(Zf){for(l=l.memoizedState;l!==null;){var c=l.queue;c!==null&&(c.pending=null),l=l.next}Zf=!1}da=0,an=wt=et=null,yo=!1,cu=Df=0,bo=null}function Ln(){var l={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return an===null?et.memoizedState=an=l:an=an.next=l,an}function Gt(){if(wt===null){var l=et.alternate;l=l!==null?l.memoizedState:null}else l=wt.next;var c=an===null?et.memoizedState:an.next;if(c!==null)an=c,wt=l;else{if(l===null)throw et.alternate===null?Error(r(467)):Error(r(310));wt=l,l={memoizedState:wt.memoizedState,baseState:wt.baseState,baseQueue:wt.baseQueue,queue:wt.queue,next:null},an===null?et.memoizedState=an=l:an=an.next=l}return an}function Vf(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function uu(l){var c=cu;return cu+=1,bo===null&&(bo=[]),l=yy(bo,l,c),c=et,(an===null?c.memoizedState:an.next)===null&&(c=c.alternate,L.H=c===null||c.memoizedState===null?cb:fp),l}function If(l){if(l!==null&&typeof l=="object"){if(typeof l.then=="function")return uu(l);if(l.$$typeof===E)return wn(l)}throw Error(r(438,String(l)))}function ep(l){var c=null,f=et.updateQueue;if(f!==null&&(c=f.memoCache),c==null){var g=et.alternate;g!==null&&(g=g.updateQueue,g!==null&&(g=g.memoCache,g!=null&&(c={data:g.data.map(function(x){return x.slice()}),index:0})))}if(c==null&&(c={data:[],index:0}),f===null&&(f=Vf(),et.updateQueue=f),f.memoCache=c,f=c.data[c.index],f===void 0)for(f=c.data[c.index]=Array(l),g=0;g<l;g++)f[g]=Z;return c.index++,f}function ha(l,c){return typeof c=="function"?c(l):c}function Lf(l){var c=Gt();return tp(c,wt,l)}function tp(l,c,f){var g=l.queue;if(g===null)throw Error(r(311));g.lastRenderedReducer=f;var x=l.baseQueue,v=g.pending;if(v!==null){if(x!==null){var Q=x.next;x.next=v.next,v.next=Q}c.baseQueue=x=v,g.pending=null}if(v=l.baseState,x===null)l.memoizedState=v;else{c=x.next;var z=Q=null,J=null,ue=c,xe=!1;do{var ve=ue.lane&-536870913;if(ve!==ue.lane?(ot&ve)===ve:(da&ve)===ve){var he=ue.revertLane;if(he===0)J!==null&&(J=J.next={lane:0,revertLane:0,gesture:null,action:ue.action,hasEagerState:ue.hasEagerState,eagerState:ue.eagerState,next:null}),ve===ho&&(xe=!0);else if((da&he)===he){ue=ue.next,he===ho&&(xe=!0);continue}else ve={lane:0,revertLane:ue.revertLane,gesture:null,action:ue.action,hasEagerState:ue.hasEagerState,eagerState:ue.eagerState,next:null},J===null?(z=J=ve,Q=v):J=J.next=ve,et.lanes|=he,cs|=he;ve=ue.action,il&&f(v,ve),v=ue.hasEagerState?ue.eagerState:f(v,ve)}else he={lane:ve,revertLane:ue.revertLane,gesture:ue.gesture,action:ue.action,hasEagerState:ue.hasEagerState,eagerState:ue.eagerState,next:null},J===null?(z=J=he,Q=v):J=J.next=he,et.lanes|=ve,cs|=ve;ue=ue.next}while(ue!==null&&ue!==c);if(J===null?Q=v:J.next=z,!gr(v,l.memoizedState)&&(sn=!0,xe&&(f=mo,f!==null)))throw f;l.memoizedState=v,l.baseState=Q,l.baseQueue=J,g.lastRenderedState=v}return x===null&&(g.lanes=0),[l.memoizedState,g.dispatch]}function np(l){var c=Gt(),f=c.queue;if(f===null)throw Error(r(311));f.lastRenderedReducer=l;var g=f.dispatch,x=f.pending,v=c.memoizedState;if(x!==null){f.pending=null;var Q=x=x.next;do v=l(v,Q.action),Q=Q.next;while(Q!==x);gr(v,c.memoizedState)||(sn=!0),c.memoizedState=v,c.baseQueue===null&&(c.baseState=v),f.lastRenderedState=v}return[v,g]}function Ey(l,c,f){var g=et,x=Gt(),v=ut;if(v){if(f===void 0)throw Error(r(407));f=f()}else f=c();var Q=!gr((wt||x).memoizedState,f);if(Q&&(x.memoizedState=f,sn=!0),x=x.queue,ap(Ry.bind(null,g,x,l),[l]),x.getSnapshot!==c||Q||an!==null&&an.memoizedState.tag&1){if(g.flags|=2048,xo(9,{destroy:void 0},$y.bind(null,g,x,f,c),null),Ct===null)throw Error(r(349));v||(da&127)!==0||My(g,c,f)}return f}function My(l,c,f){l.flags|=16384,l={getSnapshot:c,value:f},c=et.updateQueue,c===null?(c=Vf(),et.updateQueue=c,c.stores=[l]):(f=c.stores,f===null?c.stores=[l]:f.push(l))}function $y(l,c,f,g){c.value=f,c.getSnapshot=g,Qy(c)&&_y(l)}function Ry(l,c,f){return f(function(){Qy(c)&&_y(l)})}function Qy(l){var c=l.getSnapshot;l=l.value;try{var f=c();return!gr(l,f)}catch{return!0}}function _y(l){var c=Ys(l,2);c!==null&&tr(c,l,2)}function rp(l){var c=Ln();if(typeof l=="function"){var f=l;if(l=f(),il){Sn(!0);try{f()}finally{Sn(!1)}}}return c.memoizedState=c.baseState=l,c.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ha,lastRenderedState:l},c}function Ny(l,c,f,g){return l.baseState=f,tp(l,wt,typeof g=="function"?g:ha)}function ZM(l,c,f,g,x){if(Hf(l))throw Error(r(485));if(l=c.action,l!==null){var v={payload:x,action:l,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(Q){v.listeners.push(Q)}};L.T!==null?f(!0):v.isTransition=!1,g(v),f=c.pending,f===null?(v.next=c.pending=v,jy(c,v)):(v.next=f.next,c.pending=f.next=v)}}function jy(l,c){var f=c.action,g=c.payload,x=l.state;if(c.isTransition){var v=L.T,Q={};L.T=Q;try{var z=f(x,g),J=L.S;J!==null&&J(Q,z),Zy(l,c,z)}catch(ue){ip(l,c,ue)}finally{v!==null&&Q.types!==null&&(v.types=Q.types),L.T=v}}else try{v=f(x,g),Zy(l,c,v)}catch(ue){ip(l,c,ue)}}function Zy(l,c,f){f!==null&&typeof f=="object"&&typeof f.then=="function"?f.then(function(g){Dy(l,c,g)},function(g){return ip(l,c,g)}):Dy(l,c,f)}function Dy(l,c,f){c.status="fulfilled",c.value=f,Vy(c),l.state=f,c=l.pending,c!==null&&(f=c.next,f===c?l.pending=null:(f=f.next,c.next=f,jy(l,f)))}function ip(l,c,f){var g=l.pending;if(l.pending=null,g!==null){g=g.next;do c.status="rejected",c.reason=f,Vy(c),c=c.next;while(c!==g)}l.action=null}function Vy(l){l=l.listeners;for(var c=0;c<l.length;c++)(0,l[c])()}function Iy(l,c){return c}function Ly(l,c){if(ut){var f=Ct.formState;if(f!==null){e:{var g=et;if(ut){if(Rt){t:{for(var x=Rt,v=Br;x.nodeType!==8;){if(!v){x=null;break t}if(x=Fr(x.nextSibling),x===null){x=null;break t}}v=x.data,x=v==="F!"||v==="F"?x:null}if(x){Rt=Fr(x.nextSibling),g=x.data==="F!";break e}}es(g)}g=!1}g&&(c=f[0])}}return f=Ln(),f.memoizedState=f.baseState=c,g={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Iy,lastRenderedState:c},f.queue=g,f=sb.bind(null,et,g),g.dispatch=f,g=rp(!1),v=up.bind(null,et,!1,g.queue),g=Ln(),x={state:c,dispatch:null,action:l,pending:null},g.queue=x,f=ZM.bind(null,et,x,v,f),x.dispatch=f,g.memoizedState=l,[c,f,!1]}function zy(l){var c=Gt();return By(c,wt,l)}function By(l,c,f){if(c=tp(l,c,Iy)[0],l=Lf(ha)[0],typeof c=="object"&&c!==null&&typeof c.then=="function")try{var g=uu(c)}catch(Q){throw Q===po?$f:Q}else g=c;c=Gt();var x=c.queue,v=x.dispatch;return f!==c.memoizedState&&(et.flags|=2048,xo(9,{destroy:void 0},DM.bind(null,x,f),null)),[g,v,l]}function DM(l,c){l.action=c}function Hy(l){var c=Gt(),f=wt;if(f!==null)return By(c,f,l);Gt(),c=c.memoizedState,f=Gt();var g=f.queue.dispatch;return f.memoizedState=l,[c,g,!1]}function xo(l,c,f,g){return l={tag:l,create:f,deps:g,inst:c,next:null},c=et.updateQueue,c===null&&(c=Vf(),et.updateQueue=c),f=c.lastEffect,f===null?c.lastEffect=l.next=l:(g=f.next,f.next=l,l.next=g,c.lastEffect=l),l}function Fy(){return Gt().memoizedState}function zf(l,c,f,g){var x=Ln();et.flags|=l,x.memoizedState=xo(1|c,{destroy:void 0},f,g===void 0?null:g)}function Bf(l,c,f,g){var x=Gt();g=g===void 0?null:g;var v=x.memoizedState.inst;wt!==null&&g!==null&&Ym(g,wt.memoizedState.deps)?x.memoizedState=xo(c,v,f,g):(et.flags|=l,x.memoizedState=xo(1|c,v,f,g))}function Xy(l,c){zf(8390656,8,l,c)}function ap(l,c){Bf(2048,8,l,c)}function VM(l){et.flags|=4;var c=et.updateQueue;if(c===null)c=Vf(),et.updateQueue=c,c.events=[l];else{var f=c.events;f===null?c.events=[l]:f.push(l)}}function Uy(l){var c=Gt().memoizedState;return VM({ref:c,nextImpl:l}),function(){if((yt&2)!==0)throw Error(r(440));return c.impl.apply(void 0,arguments)}}function qy(l,c){return Bf(4,2,l,c)}function Yy(l,c){return Bf(4,4,l,c)}function Wy(l,c){if(typeof c=="function"){l=l();var f=c(l);return function(){typeof f=="function"?f():c(null)}}if(c!=null)return l=l(),c.current=l,function(){c.current=null}}function Gy(l,c,f){f=f!=null?f.concat([l]):null,Bf(4,4,Wy.bind(null,c,l),f)}function sp(){}function Ky(l,c){var f=Gt();c=c===void 0?null:c;var g=f.memoizedState;return c!==null&&Ym(c,g[1])?g[0]:(f.memoizedState=[l,c],l)}function Jy(l,c){var f=Gt();c=c===void 0?null:c;var g=f.memoizedState;if(c!==null&&Ym(c,g[1]))return g[0];if(g=l(),il){Sn(!0);try{l()}finally{Sn(!1)}}return f.memoizedState=[g,c],g}function lp(l,c,f){return f===void 0||(da&1073741824)!==0&&(ot&261930)===0?l.memoizedState=c:(l.memoizedState=f,l=ex(),et.lanes|=l,cs|=l,f)}function eb(l,c,f,g){return gr(f,c)?f:Oo.current!==null?(l=lp(l,f,g),gr(l,c)||(sn=!0),l):(da&42)===0||(da&1073741824)!==0&&(ot&261930)===0?(sn=!0,l.memoizedState=f):(l=ex(),et.lanes|=l,cs|=l,c)}function tb(l,c,f,g,x){var v=W.p;W.p=v!==0&&8>v?v:8;var Q=L.T,z={};L.T=z,up(l,!1,c,f);try{var J=x(),ue=L.S;if(ue!==null&&ue(z,J),J!==null&&typeof J=="object"&&typeof J.then=="function"){var xe=_M(J,g);fu(l,c,xe,kr(l))}else fu(l,c,g,kr(l))}catch(ve){fu(l,c,{then:function(){},status:"rejected",reason:ve},kr())}finally{W.p=v,Q!==null&&z.types!==null&&(Q.types=z.types),L.T=Q}}function IM(){}function op(l,c,f,g){if(l.tag!==5)throw Error(r(476));var x=nb(l).queue;tb(l,x,c,ee,f===null?IM:function(){return rb(l),f(g)})}function nb(l){var c=l.memoizedState;if(c!==null)return c;c={memoizedState:ee,baseState:ee,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ha,lastRenderedState:ee},next:null};var f={};return c.next={memoizedState:f,baseState:f,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ha,lastRenderedState:f},next:null},l.memoizedState=c,l=l.alternate,l!==null&&(l.memoizedState=c),c}function rb(l){var c=nb(l);c.next===null&&(c=l.alternate.memoizedState),fu(l,c.next.queue,{},kr())}function cp(){return wn(Cu)}function ib(){return Gt().memoizedState}function ab(){return Gt().memoizedState}function LM(l){for(var c=l.return;c!==null;){switch(c.tag){case 24:case 3:var f=kr();l=rs(f);var g=is(c,l,f);g!==null&&(tr(g,c,f),su(g,c,f)),c={cache:Dm()},l.payload=c;return}c=c.return}}function zM(l,c,f){var g=kr();f={lane:g,revertLane:0,gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null},Hf(l)?lb(c,f):(f=Pm(l,c,f,g),f!==null&&(tr(f,l,g),ob(f,c,g)))}function sb(l,c,f){var g=kr();fu(l,c,f,g)}function fu(l,c,f,g){var x={lane:g,revertLane:0,gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null};if(Hf(l))lb(c,x);else{var v=l.alternate;if(l.lanes===0&&(v===null||v.lanes===0)&&(v=c.lastRenderedReducer,v!==null))try{var Q=c.lastRenderedState,z=v(Q,f);if(x.hasEagerState=!0,x.eagerState=z,gr(z,Q))return wf(l,c,x,0),Ct===null&&vf(),!1}catch{}finally{}if(f=Pm(l,c,x,g),f!==null)return tr(f,l,g),ob(f,c,g),!0}return!1}function up(l,c,f,g){if(g={lane:2,revertLane:zp(),gesture:null,action:g,hasEagerState:!1,eagerState:null,next:null},Hf(l)){if(c)throw Error(r(479))}else c=Pm(l,f,g,2),c!==null&&tr(c,l,2)}function Hf(l){var c=l.alternate;return l===et||c!==null&&c===et}function lb(l,c){yo=Zf=!0;var f=l.pending;f===null?c.next=c:(c.next=f.next,f.next=c),l.pending=c}function ob(l,c,f){if((f&4194048)!==0){var g=c.lanes;g&=l.pendingLanes,f|=g,c.lanes=f,it(l,f)}}var du={readContext:wn,use:If,useCallback:Bt,useContext:Bt,useEffect:Bt,useImperativeHandle:Bt,useLayoutEffect:Bt,useInsertionEffect:Bt,useMemo:Bt,useReducer:Bt,useRef:Bt,useState:Bt,useDebugValue:Bt,useDeferredValue:Bt,useTransition:Bt,useSyncExternalStore:Bt,useId:Bt,useHostTransitionStatus:Bt,useFormState:Bt,useActionState:Bt,useOptimistic:Bt,useMemoCache:Bt,useCacheRefresh:Bt};du.useEffectEvent=Bt;var cb={readContext:wn,use:If,useCallback:function(l,c){return Ln().memoizedState=[l,c===void 0?null:c],l},useContext:wn,useEffect:Xy,useImperativeHandle:function(l,c,f){f=f!=null?f.concat([l]):null,zf(4194308,4,Wy.bind(null,c,l),f)},useLayoutEffect:function(l,c){return zf(4194308,4,l,c)},useInsertionEffect:function(l,c){zf(4,2,l,c)},useMemo:function(l,c){var f=Ln();c=c===void 0?null:c;var g=l();if(il){Sn(!0);try{l()}finally{Sn(!1)}}return f.memoizedState=[g,c],g},useReducer:function(l,c,f){var g=Ln();if(f!==void 0){var x=f(c);if(il){Sn(!0);try{f(c)}finally{Sn(!1)}}}else x=c;return g.memoizedState=g.baseState=x,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:x},g.queue=l,l=l.dispatch=zM.bind(null,et,l),[g.memoizedState,l]},useRef:function(l){var c=Ln();return l={current:l},c.memoizedState=l},useState:function(l){l=rp(l);var c=l.queue,f=sb.bind(null,et,c);return c.dispatch=f,[l.memoizedState,f]},useDebugValue:sp,useDeferredValue:function(l,c){var f=Ln();return lp(f,l,c)},useTransition:function(){var l=rp(!1);return l=tb.bind(null,et,l.queue,!0,!1),Ln().memoizedState=l,[!1,l]},useSyncExternalStore:function(l,c,f){var g=et,x=Ln();if(ut){if(f===void 0)throw Error(r(407));f=f()}else{if(f=c(),Ct===null)throw Error(r(349));(ot&127)!==0||My(g,c,f)}x.memoizedState=f;var v={value:f,getSnapshot:c};return x.queue=v,Xy(Ry.bind(null,g,v,l),[l]),g.flags|=2048,xo(9,{destroy:void 0},$y.bind(null,g,v,f,c),null),f},useId:function(){var l=Ln(),c=Ct.identifierPrefix;if(ut){var f=Ci,g=Pi;f=(g&~(1<<32-Mt(g)-1)).toString(32)+f,c="_"+c+"R_"+f,f=Df++,0<f&&(c+="H"+f.toString(32)),c+="_"}else f=NM++,c="_"+c+"r_"+f.toString(32)+"_";return l.memoizedState=c},useHostTransitionStatus:cp,useFormState:Ly,useActionState:Ly,useOptimistic:function(l){var c=Ln();c.memoizedState=c.baseState=l;var f={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return c.queue=f,c=up.bind(null,et,!0,f),f.dispatch=c,[l,c]},useMemoCache:ep,useCacheRefresh:function(){return Ln().memoizedState=LM.bind(null,et)},useEffectEvent:function(l){var c=Ln(),f={impl:l};return c.memoizedState=f,function(){if((yt&2)!==0)throw Error(r(440));return f.impl.apply(void 0,arguments)}}},fp={readContext:wn,use:If,useCallback:Ky,useContext:wn,useEffect:ap,useImperativeHandle:Gy,useInsertionEffect:qy,useLayoutEffect:Yy,useMemo:Jy,useReducer:Lf,useRef:Fy,useState:function(){return Lf(ha)},useDebugValue:sp,useDeferredValue:function(l,c){var f=Gt();return eb(f,wt.memoizedState,l,c)},useTransition:function(){var l=Lf(ha)[0],c=Gt().memoizedState;return[typeof l=="boolean"?l:uu(l),c]},useSyncExternalStore:Ey,useId:ib,useHostTransitionStatus:cp,useFormState:zy,useActionState:zy,useOptimistic:function(l,c){var f=Gt();return Ny(f,wt,l,c)},useMemoCache:ep,useCacheRefresh:ab};fp.useEffectEvent=Uy;var ub={readContext:wn,use:If,useCallback:Ky,useContext:wn,useEffect:ap,useImperativeHandle:Gy,useInsertionEffect:qy,useLayoutEffect:Yy,useMemo:Jy,useReducer:np,useRef:Fy,useState:function(){return np(ha)},useDebugValue:sp,useDeferredValue:function(l,c){var f=Gt();return wt===null?lp(f,l,c):eb(f,wt.memoizedState,l,c)},useTransition:function(){var l=np(ha)[0],c=Gt().memoizedState;return[typeof l=="boolean"?l:uu(l),c]},useSyncExternalStore:Ey,useId:ib,useHostTransitionStatus:cp,useFormState:Hy,useActionState:Hy,useOptimistic:function(l,c){var f=Gt();return wt!==null?Ny(f,wt,l,c):(f.baseState=l,[l,f.queue.dispatch])},useMemoCache:ep,useCacheRefresh:ab};ub.useEffectEvent=Uy;function dp(l,c,f,g){c=l.memoizedState,f=f(g,c),f=f==null?c:p({},c,f),l.memoizedState=f,l.lanes===0&&(l.updateQueue.baseState=f)}var hp={enqueueSetState:function(l,c,f){l=l._reactInternals;var g=kr(),x=rs(g);x.payload=c,f!=null&&(x.callback=f),c=is(l,x,g),c!==null&&(tr(c,l,g),su(c,l,g))},enqueueReplaceState:function(l,c,f){l=l._reactInternals;var g=kr(),x=rs(g);x.tag=1,x.payload=c,f!=null&&(x.callback=f),c=is(l,x,g),c!==null&&(tr(c,l,g),su(c,l,g))},enqueueForceUpdate:function(l,c){l=l._reactInternals;var f=kr(),g=rs(f);g.tag=2,c!=null&&(g.callback=c),c=is(l,g,f),c!==null&&(tr(c,l,f),su(c,l,f))}};function fb(l,c,f,g,x,v,Q){return l=l.stateNode,typeof l.shouldComponentUpdate=="function"?l.shouldComponentUpdate(g,v,Q):c.prototype&&c.prototype.isPureReactComponent?!Kc(f,g)||!Kc(x,v):!0}function db(l,c,f,g){l=c.state,typeof c.componentWillReceiveProps=="function"&&c.componentWillReceiveProps(f,g),typeof c.UNSAFE_componentWillReceiveProps=="function"&&c.UNSAFE_componentWillReceiveProps(f,g),c.state!==l&&hp.enqueueReplaceState(c,c.state,null)}function al(l,c){var f=c;if("ref"in c){f={};for(var g in c)g!=="ref"&&(f[g]=c[g])}if(l=l.defaultProps){f===c&&(f=p({},f));for(var x in l)f[x]===void 0&&(f[x]=l[x])}return f}function hb(l){kf(l)}function mb(l){console.error(l)}function pb(l){kf(l)}function Ff(l,c){try{var f=l.onUncaughtError;f(c.value,{componentStack:c.stack})}catch(g){setTimeout(function(){throw g})}}function gb(l,c,f){try{var g=l.onCaughtError;g(f.value,{componentStack:f.stack,errorBoundary:c.tag===1?c.stateNode:null})}catch(x){setTimeout(function(){throw x})}}function mp(l,c,f){return f=rs(f),f.tag=3,f.payload={element:null},f.callback=function(){Ff(l,c)},f}function Ob(l){return l=rs(l),l.tag=3,l}function yb(l,c,f,g){var x=f.type.getDerivedStateFromError;if(typeof x=="function"){var v=g.value;l.payload=function(){return x(v)},l.callback=function(){gb(c,f,g)}}var Q=f.stateNode;Q!==null&&typeof Q.componentDidCatch=="function"&&(l.callback=function(){gb(c,f,g),typeof x!="function"&&(us===null?us=new Set([this]):us.add(this));var z=g.stack;this.componentDidCatch(g.value,{componentStack:z!==null?z:""})})}function BM(l,c,f,g,x){if(f.flags|=32768,g!==null&&typeof g=="object"&&typeof g.then=="function"){if(c=f.alternate,c!==null&&fo(c,f,x,!0),f=yr.current,f!==null){switch(f.tag){case 31:case 13:return Hr===null?rd():f.alternate===null&&Ht===0&&(Ht=3),f.flags&=-257,f.flags|=65536,f.lanes=x,g===Rf?f.flags|=16384:(c=f.updateQueue,c===null?f.updateQueue=new Set([g]):c.add(g),Vp(l,g,x)),!1;case 22:return f.flags|=65536,g===Rf?f.flags|=16384:(c=f.updateQueue,c===null?(c={transitions:null,markerInstances:null,retryQueue:new Set([g])},f.updateQueue=c):(f=c.retryQueue,f===null?c.retryQueue=new Set([g]):f.add(g)),Vp(l,g,x)),!1}throw Error(r(435,f.tag))}return Vp(l,g,x),rd(),!1}if(ut)return c=yr.current,c!==null?((c.flags&65536)===0&&(c.flags|=256),c.flags|=65536,c.lanes=x,g!==Qm&&(l=Error(r(422),{cause:g}),tu(Ir(l,f)))):(g!==Qm&&(c=Error(r(423),{cause:g}),tu(Ir(c,f))),l=l.current.alternate,l.flags|=65536,x&=-x,l.lanes|=x,g=Ir(g,f),x=mp(l.stateNode,g,x),Hm(l,x),Ht!==4&&(Ht=2)),!1;var v=Error(r(520),{cause:g});if(v=Ir(v,f),xu===null?xu=[v]:xu.push(v),Ht!==4&&(Ht=2),c===null)return!0;g=Ir(g,f),f=c;do{switch(f.tag){case 3:return f.flags|=65536,l=x&-x,f.lanes|=l,l=mp(f.stateNode,g,l),Hm(f,l),!1;case 1:if(c=f.type,v=f.stateNode,(f.flags&128)===0&&(typeof c.getDerivedStateFromError=="function"||v!==null&&typeof v.componentDidCatch=="function"&&(us===null||!us.has(v))))return f.flags|=65536,x&=-x,f.lanes|=x,x=Ob(x),yb(x,l,f,g),Hm(f,x),!1}f=f.return}while(f!==null);return!1}var pp=Error(r(461)),sn=!1;function Tn(l,c,f,g){c.child=l===null?ky(c,null,f,g):rl(c,l.child,f,g)}function bb(l,c,f,g,x){f=f.render;var v=c.ref;if("ref"in g){var Q={};for(var z in g)z!=="ref"&&(Q[z]=g[z])}else Q=g;return Js(c),g=Wm(l,c,f,Q,v,x),z=Gm(),l!==null&&!sn?(Km(l,c,x),ma(l,c,x)):(ut&&z&&$m(c),c.flags|=1,Tn(l,c,g,x),c.child)}function xb(l,c,f,g,x){if(l===null){var v=f.type;return typeof v=="function"&&!Cm(v)&&v.defaultProps===void 0&&f.compare===null?(c.tag=15,c.type=v,Sb(l,c,v,g,x)):(l=Af(f.type,null,g,c,c.mode,x),l.ref=c.ref,l.return=c,c.child=l)}if(v=l.child,!vp(l,x)){var Q=v.memoizedProps;if(f=f.compare,f=f!==null?f:Kc,f(Q,g)&&l.ref===c.ref)return ma(l,c,x)}return c.flags|=1,l=oa(v,g),l.ref=c.ref,l.return=c,c.child=l}function Sb(l,c,f,g,x){if(l!==null){var v=l.memoizedProps;if(Kc(v,g)&&l.ref===c.ref)if(sn=!1,c.pendingProps=g=v,vp(l,x))(l.flags&131072)!==0&&(sn=!0);else return c.lanes=l.lanes,ma(l,c,x)}return gp(l,c,f,g,x)}function kb(l,c,f,g){var x=g.children,v=l!==null?l.memoizedState:null;if(l===null&&c.stateNode===null&&(c.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),g.mode==="hidden"){if((c.flags&128)!==0){if(v=v!==null?v.baseLanes|f:f,l!==null){for(g=c.child=l.child,x=0;g!==null;)x=x|g.lanes|g.childLanes,g=g.sibling;g=x&~v}else g=0,c.child=null;return vb(l,c,v,f,g)}if((f&536870912)!==0)c.memoizedState={baseLanes:0,cachePool:null},l!==null&&Mf(c,v!==null?v.cachePool:null),v!==null?Ty(c,v):Xm(),Ay(c);else return g=c.lanes=536870912,vb(l,c,v!==null?v.baseLanes|f:f,f,g)}else v!==null?(Mf(c,v.cachePool),Ty(c,v),ss(),c.memoizedState=null):(l!==null&&Mf(c,null),Xm(),ss());return Tn(l,c,x,f),c.child}function hu(l,c){return l!==null&&l.tag===22||c.stateNode!==null||(c.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),c.sibling}function vb(l,c,f,g,x){var v=Im();return v=v===null?null:{parent:rn._currentValue,pool:v},c.memoizedState={baseLanes:f,cachePool:v},l!==null&&Mf(c,null),Xm(),Ay(c),l!==null&&fo(l,c,g,!0),c.childLanes=x,null}function Xf(l,c){return c=qf({mode:c.mode,children:c.children},l.mode),c.ref=l.ref,l.child=c,c.return=l,c}function wb(l,c,f){return rl(c,l.child,null,f),l=Xf(c,c.pendingProps),l.flags|=2,br(c),c.memoizedState=null,l}function HM(l,c,f){var g=c.pendingProps,x=(c.flags&128)!==0;if(c.flags&=-129,l===null){if(ut){if(g.mode==="hidden")return l=Xf(c,g),c.lanes=536870912,hu(null,l);if(qm(c),(l=Rt)?(l=jx(l,Br),l=l!==null&&l.data==="&"?l:null,l!==null&&(c.memoizedState={dehydrated:l,treeContext:Ka!==null?{id:Pi,overflow:Ci}:null,retryLane:536870912,hydrationErrors:null},f=ly(l),f.return=c,c.child=f,vn=c,Rt=null)):l=null,l===null)throw es(c);return c.lanes=536870912,null}return Xf(c,g)}var v=l.memoizedState;if(v!==null){var Q=v.dehydrated;if(qm(c),x)if(c.flags&256)c.flags&=-257,c=wb(l,c,f);else if(c.memoizedState!==null)c.child=l.child,c.flags|=128,c=null;else throw Error(r(558));else if(sn||fo(l,c,f,!1),x=(f&l.childLanes)!==0,sn||x){if(g=Ct,g!==null&&(Q=vt(g,f),Q!==0&&Q!==v.retryLane))throw v.retryLane=Q,Ys(l,Q),tr(g,l,Q),pp;rd(),c=wb(l,c,f)}else l=v.treeContext,Rt=Fr(Q.nextSibling),vn=c,ut=!0,Ja=null,Br=!1,l!==null&&uy(c,l),c=Xf(c,g),c.flags|=4096;return c}return l=oa(l.child,{mode:g.mode,children:g.children}),l.ref=c.ref,c.child=l,l.return=c,l}function Uf(l,c){var f=c.ref;if(f===null)l!==null&&l.ref!==null&&(c.flags|=4194816);else{if(typeof f!="function"&&typeof f!="object")throw Error(r(284));(l===null||l.ref!==f)&&(c.flags|=4194816)}}function gp(l,c,f,g,x){return Js(c),f=Wm(l,c,f,g,void 0,x),g=Gm(),l!==null&&!sn?(Km(l,c,x),ma(l,c,x)):(ut&&g&&$m(c),c.flags|=1,Tn(l,c,f,x),c.child)}function Tb(l,c,f,g,x,v){return Js(c),c.updateQueue=null,f=Cy(c,g,f,x),Py(l),g=Gm(),l!==null&&!sn?(Km(l,c,v),ma(l,c,v)):(ut&&g&&$m(c),c.flags|=1,Tn(l,c,f,v),c.child)}function Ab(l,c,f,g,x){if(Js(c),c.stateNode===null){var v=lo,Q=f.contextType;typeof Q=="object"&&Q!==null&&(v=wn(Q)),v=new f(g,v),c.memoizedState=v.state!==null&&v.state!==void 0?v.state:null,v.updater=hp,c.stateNode=v,v._reactInternals=c,v=c.stateNode,v.props=g,v.state=c.memoizedState,v.refs={},zm(c),Q=f.contextType,v.context=typeof Q=="object"&&Q!==null?wn(Q):lo,v.state=c.memoizedState,Q=f.getDerivedStateFromProps,typeof Q=="function"&&(dp(c,f,Q,g),v.state=c.memoizedState),typeof f.getDerivedStateFromProps=="function"||typeof v.getSnapshotBeforeUpdate=="function"||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(Q=v.state,typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount(),Q!==v.state&&hp.enqueueReplaceState(v,v.state,null),ou(c,g,v,x),lu(),v.state=c.memoizedState),typeof v.componentDidMount=="function"&&(c.flags|=4194308),g=!0}else if(l===null){v=c.stateNode;var z=c.memoizedProps,J=al(f,z);v.props=J;var ue=v.context,xe=f.contextType;Q=lo,typeof xe=="object"&&xe!==null&&(Q=wn(xe));var ve=f.getDerivedStateFromProps;xe=typeof ve=="function"||typeof v.getSnapshotBeforeUpdate=="function",z=c.pendingProps!==z,xe||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(z||ue!==Q)&&db(c,v,g,Q),ns=!1;var he=c.memoizedState;v.state=he,ou(c,g,v,x),lu(),ue=c.memoizedState,z||he!==ue||ns?(typeof ve=="function"&&(dp(c,f,ve,g),ue=c.memoizedState),(J=ns||fb(c,f,J,g,he,ue,Q))?(xe||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount()),typeof v.componentDidMount=="function"&&(c.flags|=4194308)):(typeof v.componentDidMount=="function"&&(c.flags|=4194308),c.memoizedProps=g,c.memoizedState=ue),v.props=g,v.state=ue,v.context=Q,g=J):(typeof v.componentDidMount=="function"&&(c.flags|=4194308),g=!1)}else{v=c.stateNode,Bm(l,c),Q=c.memoizedProps,xe=al(f,Q),v.props=xe,ve=c.pendingProps,he=v.context,ue=f.contextType,J=lo,typeof ue=="object"&&ue!==null&&(J=wn(ue)),z=f.getDerivedStateFromProps,(ue=typeof z=="function"||typeof v.getSnapshotBeforeUpdate=="function")||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(Q!==ve||he!==J)&&db(c,v,g,J),ns=!1,he=c.memoizedState,v.state=he,ou(c,g,v,x),lu();var pe=c.memoizedState;Q!==ve||he!==pe||ns||l!==null&&l.dependencies!==null&&Cf(l.dependencies)?(typeof z=="function"&&(dp(c,f,z,g),pe=c.memoizedState),(xe=ns||fb(c,f,xe,g,he,pe,J)||l!==null&&l.dependencies!==null&&Cf(l.dependencies))?(ue||typeof v.UNSAFE_componentWillUpdate!="function"&&typeof v.componentWillUpdate!="function"||(typeof v.componentWillUpdate=="function"&&v.componentWillUpdate(g,pe,J),typeof v.UNSAFE_componentWillUpdate=="function"&&v.UNSAFE_componentWillUpdate(g,pe,J)),typeof v.componentDidUpdate=="function"&&(c.flags|=4),typeof v.getSnapshotBeforeUpdate=="function"&&(c.flags|=1024)):(typeof v.componentDidUpdate!="function"||Q===l.memoizedProps&&he===l.memoizedState||(c.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||Q===l.memoizedProps&&he===l.memoizedState||(c.flags|=1024),c.memoizedProps=g,c.memoizedState=pe),v.props=g,v.state=pe,v.context=J,g=xe):(typeof v.componentDidUpdate!="function"||Q===l.memoizedProps&&he===l.memoizedState||(c.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||Q===l.memoizedProps&&he===l.memoizedState||(c.flags|=1024),g=!1)}return v=g,Uf(l,c),g=(c.flags&128)!==0,v||g?(v=c.stateNode,f=g&&typeof f.getDerivedStateFromError!="function"?null:v.render(),c.flags|=1,l!==null&&g?(c.child=rl(c,l.child,null,x),c.child=rl(c,null,f,x)):Tn(l,c,f,x),c.memoizedState=v.state,l=c.child):l=ma(l,c,x),l}function Pb(l,c,f,g){return Gs(),c.flags|=256,Tn(l,c,f,g),c.child}var Op={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function yp(l){return{baseLanes:l,cachePool:gy()}}function bp(l,c,f){return l=l!==null?l.childLanes&~f:0,c&&(l|=Sr),l}function Cb(l,c,f){var g=c.pendingProps,x=!1,v=(c.flags&128)!==0,Q;if((Q=v)||(Q=l!==null&&l.memoizedState===null?!1:(Wt.current&2)!==0),Q&&(x=!0,c.flags&=-129),Q=(c.flags&32)!==0,c.flags&=-33,l===null){if(ut){if(x?as(c):ss(),(l=Rt)?(l=jx(l,Br),l=l!==null&&l.data!=="&"?l:null,l!==null&&(c.memoizedState={dehydrated:l,treeContext:Ka!==null?{id:Pi,overflow:Ci}:null,retryLane:536870912,hydrationErrors:null},f=ly(l),f.return=c,c.child=f,vn=c,Rt=null)):l=null,l===null)throw es(c);return tg(l)?c.lanes=32:c.lanes=536870912,null}var z=g.children;return g=g.fallback,x?(ss(),x=c.mode,z=qf({mode:"hidden",children:z},x),g=Ws(g,x,f,null),z.return=c,g.return=c,z.sibling=g,c.child=z,g=c.child,g.memoizedState=yp(f),g.childLanes=bp(l,Q,f),c.memoizedState=Op,hu(null,g)):(as(c),xp(c,z))}var J=l.memoizedState;if(J!==null&&(z=J.dehydrated,z!==null)){if(v)c.flags&256?(as(c),c.flags&=-257,c=Sp(l,c,f)):c.memoizedState!==null?(ss(),c.child=l.child,c.flags|=128,c=null):(ss(),z=g.fallback,x=c.mode,g=qf({mode:"visible",children:g.children},x),z=Ws(z,x,f,null),z.flags|=2,g.return=c,z.return=c,g.sibling=z,c.child=g,rl(c,l.child,null,f),g=c.child,g.memoizedState=yp(f),g.childLanes=bp(l,Q,f),c.memoizedState=Op,c=hu(null,g));else if(as(c),tg(z)){if(Q=z.nextSibling&&z.nextSibling.dataset,Q)var ue=Q.dgst;Q=ue,g=Error(r(419)),g.stack="",g.digest=Q,tu({value:g,source:null,stack:null}),c=Sp(l,c,f)}else if(sn||fo(l,c,f,!1),Q=(f&l.childLanes)!==0,sn||Q){if(Q=Ct,Q!==null&&(g=vt(Q,f),g!==0&&g!==J.retryLane))throw J.retryLane=g,Ys(l,g),tr(Q,l,g),pp;eg(z)||rd(),c=Sp(l,c,f)}else eg(z)?(c.flags|=192,c.child=l.child,c=null):(l=J.treeContext,Rt=Fr(z.nextSibling),vn=c,ut=!0,Ja=null,Br=!1,l!==null&&uy(c,l),c=xp(c,g.children),c.flags|=4096);return c}return x?(ss(),z=g.fallback,x=c.mode,J=l.child,ue=J.sibling,g=oa(J,{mode:"hidden",children:g.children}),g.subtreeFlags=J.subtreeFlags&65011712,ue!==null?z=oa(ue,z):(z=Ws(z,x,f,null),z.flags|=2),z.return=c,g.return=c,g.sibling=z,c.child=g,hu(null,g),g=c.child,z=l.child.memoizedState,z===null?z=yp(f):(x=z.cachePool,x!==null?(J=rn._currentValue,x=x.parent!==J?{parent:J,pool:J}:x):x=gy(),z={baseLanes:z.baseLanes|f,cachePool:x}),g.memoizedState=z,g.childLanes=bp(l,Q,f),c.memoizedState=Op,hu(l.child,g)):(as(c),f=l.child,l=f.sibling,f=oa(f,{mode:"visible",children:g.children}),f.return=c,f.sibling=null,l!==null&&(Q=c.deletions,Q===null?(c.deletions=[l],c.flags|=16):Q.push(l)),c.child=f,c.memoizedState=null,f)}function xp(l,c){return c=qf({mode:"visible",children:c},l.mode),c.return=l,l.child=c}function qf(l,c){return l=Or(22,l,null,c),l.lanes=0,l}function Sp(l,c,f){return rl(c,l.child,null,f),l=xp(c,c.pendingProps.children),l.flags|=2,c.memoizedState=null,l}function Eb(l,c,f){l.lanes|=c;var g=l.alternate;g!==null&&(g.lanes|=c),jm(l.return,c,f)}function kp(l,c,f,g,x,v){var Q=l.memoizedState;Q===null?l.memoizedState={isBackwards:c,rendering:null,renderingStartTime:0,last:g,tail:f,tailMode:x,treeForkCount:v}:(Q.isBackwards=c,Q.rendering=null,Q.renderingStartTime=0,Q.last=g,Q.tail=f,Q.tailMode=x,Q.treeForkCount=v)}function Mb(l,c,f){var g=c.pendingProps,x=g.revealOrder,v=g.tail;g=g.children;var Q=Wt.current,z=(Q&2)!==0;if(z?(Q=Q&1|2,c.flags|=128):Q&=1,H(Wt,Q),Tn(l,c,g,f),g=ut?eu:0,!z&&l!==null&&(l.flags&128)!==0)e:for(l=c.child;l!==null;){if(l.tag===13)l.memoizedState!==null&&Eb(l,f,c);else if(l.tag===19)Eb(l,f,c);else if(l.child!==null){l.child.return=l,l=l.child;continue}if(l===c)break e;for(;l.sibling===null;){if(l.return===null||l.return===c)break e;l=l.return}l.sibling.return=l.return,l=l.sibling}switch(x){case"forwards":for(f=c.child,x=null;f!==null;)l=f.alternate,l!==null&&jf(l)===null&&(x=f),f=f.sibling;f=x,f===null?(x=c.child,c.child=null):(x=f.sibling,f.sibling=null),kp(c,!1,x,f,v,g);break;case"backwards":case"unstable_legacy-backwards":for(f=null,x=c.child,c.child=null;x!==null;){if(l=x.alternate,l!==null&&jf(l)===null){c.child=x;break}l=x.sibling,x.sibling=f,f=x,x=l}kp(c,!0,f,null,v,g);break;case"together":kp(c,!1,null,null,void 0,g);break;default:c.memoizedState=null}return c.child}function ma(l,c,f){if(l!==null&&(c.dependencies=l.dependencies),cs|=c.lanes,(f&c.childLanes)===0)if(l!==null){if(fo(l,c,f,!1),(f&c.childLanes)===0)return null}else return null;if(l!==null&&c.child!==l.child)throw Error(r(153));if(c.child!==null){for(l=c.child,f=oa(l,l.pendingProps),c.child=f,f.return=c;l.sibling!==null;)l=l.sibling,f=f.sibling=oa(l,l.pendingProps),f.return=c;f.sibling=null}return c.child}function vp(l,c){return(l.lanes&c)!==0?!0:(l=l.dependencies,!!(l!==null&&Cf(l)))}function FM(l,c,f){switch(c.tag){case 3:Oe(c,c.stateNode.containerInfo),ts(c,rn,l.memoizedState.cache),Gs();break;case 27:case 5:me(c);break;case 4:Oe(c,c.stateNode.containerInfo);break;case 10:ts(c,c.type,c.memoizedProps.value);break;case 31:if(c.memoizedState!==null)return c.flags|=128,qm(c),null;break;case 13:var g=c.memoizedState;if(g!==null)return g.dehydrated!==null?(as(c),c.flags|=128,null):(f&c.child.childLanes)!==0?Cb(l,c,f):(as(c),l=ma(l,c,f),l!==null?l.sibling:null);as(c);break;case 19:var x=(l.flags&128)!==0;if(g=(f&c.childLanes)!==0,g||(fo(l,c,f,!1),g=(f&c.childLanes)!==0),x){if(g)return Mb(l,c,f);c.flags|=128}if(x=c.memoizedState,x!==null&&(x.rendering=null,x.tail=null,x.lastEffect=null),H(Wt,Wt.current),g)break;return null;case 22:return c.lanes=0,kb(l,c,f,c.pendingProps);case 24:ts(c,rn,l.memoizedState.cache)}return ma(l,c,f)}function $b(l,c,f){if(l!==null)if(l.memoizedProps!==c.pendingProps)sn=!0;else{if(!vp(l,f)&&(c.flags&128)===0)return sn=!1,FM(l,c,f);sn=(l.flags&131072)!==0}else sn=!1,ut&&(c.flags&1048576)!==0&&cy(c,eu,c.index);switch(c.lanes=0,c.tag){case 16:e:{var g=c.pendingProps;if(l=tl(c.elementType),c.type=l,typeof l=="function")Cm(l)?(g=al(l,g),c.tag=1,c=Ab(null,c,l,g,f)):(c.tag=0,c=gp(null,c,l,g,f));else{if(l!=null){var x=l.$$typeof;if(x===C){c.tag=11,c=bb(null,c,l,g,f);break e}else if(x===M){c.tag=14,c=xb(null,c,l,g,f);break e}}throw c=K(l)||l,Error(r(306,c,""))}}return c;case 0:return gp(l,c,c.type,c.pendingProps,f);case 1:return g=c.type,x=al(g,c.pendingProps),Ab(l,c,g,x,f);case 3:e:{if(Oe(c,c.stateNode.containerInfo),l===null)throw Error(r(387));g=c.pendingProps;var v=c.memoizedState;x=v.element,Bm(l,c),ou(c,g,null,f);var Q=c.memoizedState;if(g=Q.cache,ts(c,rn,g),g!==v.cache&&Zm(c,[rn],f,!0),lu(),g=Q.element,v.isDehydrated)if(v={element:g,isDehydrated:!1,cache:Q.cache},c.updateQueue.baseState=v,c.memoizedState=v,c.flags&256){c=Pb(l,c,g,f);break e}else if(g!==x){x=Ir(Error(r(424)),c),tu(x),c=Pb(l,c,g,f);break e}else{switch(l=c.stateNode.containerInfo,l.nodeType){case 9:l=l.body;break;default:l=l.nodeName==="HTML"?l.ownerDocument.body:l}for(Rt=Fr(l.firstChild),vn=c,ut=!0,Ja=null,Br=!0,f=ky(c,null,g,f),c.child=f;f;)f.flags=f.flags&-3|4096,f=f.sibling}else{if(Gs(),g===x){c=ma(l,c,f);break e}Tn(l,c,g,f)}c=c.child}return c;case 26:return Uf(l,c),l===null?(f=zx(c.type,null,c.pendingProps,null))?c.memoizedState=f:ut||(f=c.type,l=c.pendingProps,g=ud(ae.current).createElement(f),g[kn]=c,g[Yn]=l,An(g,f,l),mn(g),c.stateNode=g):c.memoizedState=zx(c.type,l.memoizedProps,c.pendingProps,l.memoizedState),null;case 27:return me(c),l===null&&ut&&(g=c.stateNode=Vx(c.type,c.pendingProps,ae.current),vn=c,Br=!0,x=Rt,ms(c.type)?(ng=x,Rt=Fr(g.firstChild)):Rt=x),Tn(l,c,c.pendingProps.children,f),Uf(l,c),l===null&&(c.flags|=4194304),c.child;case 5:return l===null&&ut&&((x=g=Rt)&&(g=S$(g,c.type,c.pendingProps,Br),g!==null?(c.stateNode=g,vn=c,Rt=Fr(g.firstChild),Br=!1,x=!0):x=!1),x||es(c)),me(c),x=c.type,v=c.pendingProps,Q=l!==null?l.memoizedProps:null,g=v.children,Gp(x,v)?g=null:Q!==null&&Gp(x,Q)&&(c.flags|=32),c.memoizedState!==null&&(x=Wm(l,c,jM,null,null,f),Cu._currentValue=x),Uf(l,c),Tn(l,c,g,f),c.child;case 6:return l===null&&ut&&((l=f=Rt)&&(f=k$(f,c.pendingProps,Br),f!==null?(c.stateNode=f,vn=c,Rt=null,l=!0):l=!1),l||es(c)),null;case 13:return Cb(l,c,f);case 4:return Oe(c,c.stateNode.containerInfo),g=c.pendingProps,l===null?c.child=rl(c,null,g,f):Tn(l,c,g,f),c.child;case 11:return bb(l,c,c.type,c.pendingProps,f);case 7:return Tn(l,c,c.pendingProps,f),c.child;case 8:return Tn(l,c,c.pendingProps.children,f),c.child;case 12:return Tn(l,c,c.pendingProps.children,f),c.child;case 10:return g=c.pendingProps,ts(c,c.type,g.value),Tn(l,c,g.children,f),c.child;case 9:return x=c.type._context,g=c.pendingProps.children,Js(c),x=wn(x),g=g(x),c.flags|=1,Tn(l,c,g,f),c.child;case 14:return xb(l,c,c.type,c.pendingProps,f);case 15:return Sb(l,c,c.type,c.pendingProps,f);case 19:return Mb(l,c,f);case 31:return HM(l,c,f);case 22:return kb(l,c,f,c.pendingProps);case 24:return Js(c),g=wn(rn),l===null?(x=Im(),x===null&&(x=Ct,v=Dm(),x.pooledCache=v,v.refCount++,v!==null&&(x.pooledCacheLanes|=f),x=v),c.memoizedState={parent:g,cache:x},zm(c),ts(c,rn,x)):((l.lanes&f)!==0&&(Bm(l,c),ou(c,null,null,f),lu()),x=l.memoizedState,v=c.memoizedState,x.parent!==g?(x={parent:g,cache:g},c.memoizedState=x,c.lanes===0&&(c.memoizedState=c.updateQueue.baseState=x),ts(c,rn,g)):(g=v.cache,ts(c,rn,g),g!==x.cache&&Zm(c,[rn],f,!0))),Tn(l,c,c.pendingProps.children,f),c.child;case 29:throw c.pendingProps}throw Error(r(156,c.tag))}function pa(l){l.flags|=4}function wp(l,c,f,g,x){if((c=(l.mode&32)!==0)&&(c=!1),c){if(l.flags|=16777216,(x&335544128)===x)if(l.stateNode.complete)l.flags|=8192;else if(ix())l.flags|=8192;else throw nl=Rf,Lm}else l.flags&=-16777217}function Rb(l,c){if(c.type!=="stylesheet"||(c.state.loading&4)!==0)l.flags&=-16777217;else if(l.flags|=16777216,!Ux(c))if(ix())l.flags|=8192;else throw nl=Rf,Lm}function Yf(l,c){c!==null&&(l.flags|=4),l.flags&16384&&(c=l.tag!==22?Ul():536870912,l.lanes|=c,wo|=c)}function mu(l,c){if(!ut)switch(l.tailMode){case"hidden":c=l.tail;for(var f=null;c!==null;)c.alternate!==null&&(f=c),c=c.sibling;f===null?l.tail=null:f.sibling=null;break;case"collapsed":f=l.tail;for(var g=null;f!==null;)f.alternate!==null&&(g=f),f=f.sibling;g===null?c||l.tail===null?l.tail=null:l.tail.sibling=null:g.sibling=null}}function Qt(l){var c=l.alternate!==null&&l.alternate.child===l.child,f=0,g=0;if(c)for(var x=l.child;x!==null;)f|=x.lanes|x.childLanes,g|=x.subtreeFlags&65011712,g|=x.flags&65011712,x.return=l,x=x.sibling;else for(x=l.child;x!==null;)f|=x.lanes|x.childLanes,g|=x.subtreeFlags,g|=x.flags,x.return=l,x=x.sibling;return l.subtreeFlags|=g,l.childLanes=f,c}function XM(l,c,f){var g=c.pendingProps;switch(Rm(c),c.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Qt(c),null;case 1:return Qt(c),null;case 3:return f=c.stateNode,g=null,l!==null&&(g=l.memoizedState.cache),c.memoizedState.cache!==g&&(c.flags|=2048),fa(rn),de(),f.pendingContext&&(f.context=f.pendingContext,f.pendingContext=null),(l===null||l.child===null)&&(uo(c)?pa(c):l===null||l.memoizedState.isDehydrated&&(c.flags&256)===0||(c.flags|=1024,_m())),Qt(c),null;case 26:var x=c.type,v=c.memoizedState;return l===null?(pa(c),v!==null?(Qt(c),Rb(c,v)):(Qt(c),wp(c,x,null,g,f))):v?v!==l.memoizedState?(pa(c),Qt(c),Rb(c,v)):(Qt(c),c.flags&=-16777217):(l=l.memoizedProps,l!==g&&pa(c),Qt(c),wp(c,x,l,g,f)),null;case 27:if(Te(c),f=ae.current,x=c.type,l!==null&&c.stateNode!=null)l.memoizedProps!==g&&pa(c);else{if(!g){if(c.stateNode===null)throw Error(r(166));return Qt(c),null}l=F.current,uo(c)?fy(c):(l=Vx(x,g,f),c.stateNode=l,pa(c))}return Qt(c),null;case 5:if(Te(c),x=c.type,l!==null&&c.stateNode!=null)l.memoizedProps!==g&&pa(c);else{if(!g){if(c.stateNode===null)throw Error(r(166));return Qt(c),null}if(v=F.current,uo(c))fy(c);else{var Q=ud(ae.current);switch(v){case 1:v=Q.createElementNS("http://www.w3.org/2000/svg",x);break;case 2:v=Q.createElementNS("http://www.w3.org/1998/Math/MathML",x);break;default:switch(x){case"svg":v=Q.createElementNS("http://www.w3.org/2000/svg",x);break;case"math":v=Q.createElementNS("http://www.w3.org/1998/Math/MathML",x);break;case"script":v=Q.createElement("div"),v.innerHTML="<script><\/script>",v=v.removeChild(v.firstChild);break;case"select":v=typeof g.is=="string"?Q.createElement("select",{is:g.is}):Q.createElement("select"),g.multiple?v.multiple=!0:g.size&&(v.size=g.size);break;default:v=typeof g.is=="string"?Q.createElement(x,{is:g.is}):Q.createElement(x)}}v[kn]=c,v[Yn]=g;e:for(Q=c.child;Q!==null;){if(Q.tag===5||Q.tag===6)v.appendChild(Q.stateNode);else if(Q.tag!==4&&Q.tag!==27&&Q.child!==null){Q.child.return=Q,Q=Q.child;continue}if(Q===c)break e;for(;Q.sibling===null;){if(Q.return===null||Q.return===c)break e;Q=Q.return}Q.sibling.return=Q.return,Q=Q.sibling}c.stateNode=v;e:switch(An(v,x,g),x){case"button":case"input":case"select":case"textarea":g=!!g.autoFocus;break e;case"img":g=!0;break e;default:g=!1}g&&pa(c)}}return Qt(c),wp(c,c.type,l===null?null:l.memoizedProps,c.pendingProps,f),null;case 6:if(l&&c.stateNode!=null)l.memoizedProps!==g&&pa(c);else{if(typeof g!="string"&&c.stateNode===null)throw Error(r(166));if(l=ae.current,uo(c)){if(l=c.stateNode,f=c.memoizedProps,g=null,x=vn,x!==null)switch(x.tag){case 27:case 5:g=x.memoizedProps}l[kn]=c,l=!!(l.nodeValue===f||g!==null&&g.suppressHydrationWarning===!0||Cx(l.nodeValue,f)),l||es(c,!0)}else l=ud(l).createTextNode(g),l[kn]=c,c.stateNode=l}return Qt(c),null;case 31:if(f=c.memoizedState,l===null||l.memoizedState!==null){if(g=uo(c),f!==null){if(l===null){if(!g)throw Error(r(318));if(l=c.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(r(557));l[kn]=c}else Gs(),(c.flags&128)===0&&(c.memoizedState=null),c.flags|=4;Qt(c),l=!1}else f=_m(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=f),l=!0;if(!l)return c.flags&256?(br(c),c):(br(c),null);if((c.flags&128)!==0)throw Error(r(558))}return Qt(c),null;case 13:if(g=c.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(x=uo(c),g!==null&&g.dehydrated!==null){if(l===null){if(!x)throw Error(r(318));if(x=c.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(r(317));x[kn]=c}else Gs(),(c.flags&128)===0&&(c.memoizedState=null),c.flags|=4;Qt(c),x=!1}else x=_m(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=x),x=!0;if(!x)return c.flags&256?(br(c),c):(br(c),null)}return br(c),(c.flags&128)!==0?(c.lanes=f,c):(f=g!==null,l=l!==null&&l.memoizedState!==null,f&&(g=c.child,x=null,g.alternate!==null&&g.alternate.memoizedState!==null&&g.alternate.memoizedState.cachePool!==null&&(x=g.alternate.memoizedState.cachePool.pool),v=null,g.memoizedState!==null&&g.memoizedState.cachePool!==null&&(v=g.memoizedState.cachePool.pool),v!==x&&(g.flags|=2048)),f!==l&&f&&(c.child.flags|=8192),Yf(c,c.updateQueue),Qt(c),null);case 4:return de(),l===null&&Xp(c.stateNode.containerInfo),Qt(c),null;case 10:return fa(c.type),Qt(c),null;case 19:if(j(Wt),g=c.memoizedState,g===null)return Qt(c),null;if(x=(c.flags&128)!==0,v=g.rendering,v===null)if(x)mu(g,!1);else{if(Ht!==0||l!==null&&(l.flags&128)!==0)for(l=c.child;l!==null;){if(v=jf(l),v!==null){for(c.flags|=128,mu(g,!1),l=v.updateQueue,c.updateQueue=l,Yf(c,l),c.subtreeFlags=0,l=f,f=c.child;f!==null;)sy(f,l),f=f.sibling;return H(Wt,Wt.current&1|2),ut&&ca(c,g.treeForkCount),c.child}l=l.sibling}g.tail!==null&&Pe()>ed&&(c.flags|=128,x=!0,mu(g,!1),c.lanes=4194304)}else{if(!x)if(l=jf(v),l!==null){if(c.flags|=128,x=!0,l=l.updateQueue,c.updateQueue=l,Yf(c,l),mu(g,!0),g.tail===null&&g.tailMode==="hidden"&&!v.alternate&&!ut)return Qt(c),null}else 2*Pe()-g.renderingStartTime>ed&&f!==536870912&&(c.flags|=128,x=!0,mu(g,!1),c.lanes=4194304);g.isBackwards?(v.sibling=c.child,c.child=v):(l=g.last,l!==null?l.sibling=v:c.child=v,g.last=v)}return g.tail!==null?(l=g.tail,g.rendering=l,g.tail=l.sibling,g.renderingStartTime=Pe(),l.sibling=null,f=Wt.current,H(Wt,x?f&1|2:f&1),ut&&ca(c,g.treeForkCount),l):(Qt(c),null);case 22:case 23:return br(c),Um(),g=c.memoizedState!==null,l!==null?l.memoizedState!==null!==g&&(c.flags|=8192):g&&(c.flags|=8192),g?(f&536870912)!==0&&(c.flags&128)===0&&(Qt(c),c.subtreeFlags&6&&(c.flags|=8192)):Qt(c),f=c.updateQueue,f!==null&&Yf(c,f.retryQueue),f=null,l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(f=l.memoizedState.cachePool.pool),g=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(g=c.memoizedState.cachePool.pool),g!==f&&(c.flags|=2048),l!==null&&j(el),null;case 24:return f=null,l!==null&&(f=l.memoizedState.cache),c.memoizedState.cache!==f&&(c.flags|=2048),fa(rn),Qt(c),null;case 25:return null;case 30:return null}throw Error(r(156,c.tag))}function UM(l,c){switch(Rm(c),c.tag){case 1:return l=c.flags,l&65536?(c.flags=l&-65537|128,c):null;case 3:return fa(rn),de(),l=c.flags,(l&65536)!==0&&(l&128)===0?(c.flags=l&-65537|128,c):null;case 26:case 27:case 5:return Te(c),null;case 31:if(c.memoizedState!==null){if(br(c),c.alternate===null)throw Error(r(340));Gs()}return l=c.flags,l&65536?(c.flags=l&-65537|128,c):null;case 13:if(br(c),l=c.memoizedState,l!==null&&l.dehydrated!==null){if(c.alternate===null)throw Error(r(340));Gs()}return l=c.flags,l&65536?(c.flags=l&-65537|128,c):null;case 19:return j(Wt),null;case 4:return de(),null;case 10:return fa(c.type),null;case 22:case 23:return br(c),Um(),l!==null&&j(el),l=c.flags,l&65536?(c.flags=l&-65537|128,c):null;case 24:return fa(rn),null;case 25:return null;default:return null}}function Qb(l,c){switch(Rm(c),c.tag){case 3:fa(rn),de();break;case 26:case 27:case 5:Te(c);break;case 4:de();break;case 31:c.memoizedState!==null&&br(c);break;case 13:br(c);break;case 19:j(Wt);break;case 10:fa(c.type);break;case 22:case 23:br(c),Um(),l!==null&&j(el);break;case 24:fa(rn)}}function pu(l,c){try{var f=c.updateQueue,g=f!==null?f.lastEffect:null;if(g!==null){var x=g.next;f=x;do{if((f.tag&l)===l){g=void 0;var v=f.create,Q=f.inst;g=v(),Q.destroy=g}f=f.next}while(f!==x)}}catch(z){St(c,c.return,z)}}function ls(l,c,f){try{var g=c.updateQueue,x=g!==null?g.lastEffect:null;if(x!==null){var v=x.next;g=v;do{if((g.tag&l)===l){var Q=g.inst,z=Q.destroy;if(z!==void 0){Q.destroy=void 0,x=c;var J=f,ue=z;try{ue()}catch(xe){St(x,J,xe)}}}g=g.next}while(g!==v)}}catch(xe){St(c,c.return,xe)}}function _b(l){var c=l.updateQueue;if(c!==null){var f=l.stateNode;try{wy(c,f)}catch(g){St(l,l.return,g)}}}function Nb(l,c,f){f.props=al(l.type,l.memoizedProps),f.state=l.memoizedState;try{f.componentWillUnmount()}catch(g){St(l,c,g)}}function gu(l,c){try{var f=l.ref;if(f!==null){switch(l.tag){case 26:case 27:case 5:var g=l.stateNode;break;case 30:g=l.stateNode;break;default:g=l.stateNode}typeof f=="function"?l.refCleanup=f(g):f.current=g}}catch(x){St(l,c,x)}}function Ei(l,c){var f=l.ref,g=l.refCleanup;if(f!==null)if(typeof g=="function")try{g()}catch(x){St(l,c,x)}finally{l.refCleanup=null,l=l.alternate,l!=null&&(l.refCleanup=null)}else if(typeof f=="function")try{f(null)}catch(x){St(l,c,x)}else f.current=null}function jb(l){var c=l.type,f=l.memoizedProps,g=l.stateNode;try{e:switch(c){case"button":case"input":case"select":case"textarea":f.autoFocus&&g.focus();break e;case"img":f.src?g.src=f.src:f.srcSet&&(g.srcset=f.srcSet)}}catch(x){St(l,l.return,x)}}function Tp(l,c,f){try{var g=l.stateNode;p$(g,l.type,f,c),g[Yn]=c}catch(x){St(l,l.return,x)}}function Zb(l){return l.tag===5||l.tag===3||l.tag===26||l.tag===27&&ms(l.type)||l.tag===4}function Ap(l){e:for(;;){for(;l.sibling===null;){if(l.return===null||Zb(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.tag===27&&ms(l.type)||l.flags&2||l.child===null||l.tag===4)continue e;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function Pp(l,c,f){var g=l.tag;if(g===5||g===6)l=l.stateNode,c?(f.nodeType===9?f.body:f.nodeName==="HTML"?f.ownerDocument.body:f).insertBefore(l,c):(c=f.nodeType===9?f.body:f.nodeName==="HTML"?f.ownerDocument.body:f,c.appendChild(l),f=f._reactRootContainer,f!=null||c.onclick!==null||(c.onclick=sa));else if(g!==4&&(g===27&&ms(l.type)&&(f=l.stateNode,c=null),l=l.child,l!==null))for(Pp(l,c,f),l=l.sibling;l!==null;)Pp(l,c,f),l=l.sibling}function Wf(l,c,f){var g=l.tag;if(g===5||g===6)l=l.stateNode,c?f.insertBefore(l,c):f.appendChild(l);else if(g!==4&&(g===27&&ms(l.type)&&(f=l.stateNode),l=l.child,l!==null))for(Wf(l,c,f),l=l.sibling;l!==null;)Wf(l,c,f),l=l.sibling}function Db(l){var c=l.stateNode,f=l.memoizedProps;try{for(var g=l.type,x=c.attributes;x.length;)c.removeAttributeNode(x[0]);An(c,g,f),c[kn]=l,c[Yn]=f}catch(v){St(l,l.return,v)}}var ga=!1,ln=!1,Cp=!1,Vb=typeof WeakSet=="function"?WeakSet:Set,pn=null;function qM(l,c){if(l=l.containerInfo,Yp=Od,l=G4(l),Sm(l)){if("selectionStart"in l)var f={start:l.selectionStart,end:l.selectionEnd};else e:{f=(f=l.ownerDocument)&&f.defaultView||window;var g=f.getSelection&&f.getSelection();if(g&&g.rangeCount!==0){f=g.anchorNode;var x=g.anchorOffset,v=g.focusNode;g=g.focusOffset;try{f.nodeType,v.nodeType}catch{f=null;break e}var Q=0,z=-1,J=-1,ue=0,xe=0,ve=l,he=null;t:for(;;){for(var pe;ve!==f||x!==0&&ve.nodeType!==3||(z=Q+x),ve!==v||g!==0&&ve.nodeType!==3||(J=Q+g),ve.nodeType===3&&(Q+=ve.nodeValue.length),(pe=ve.firstChild)!==null;)he=ve,ve=pe;for(;;){if(ve===l)break t;if(he===f&&++ue===x&&(z=Q),he===v&&++xe===g&&(J=Q),(pe=ve.nextSibling)!==null)break;ve=he,he=ve.parentNode}ve=pe}f=z===-1||J===-1?null:{start:z,end:J}}else f=null}f=f||{start:0,end:0}}else f=null;for(Wp={focusedElem:l,selectionRange:f},Od=!1,pn=c;pn!==null;)if(c=pn,l=c.child,(c.subtreeFlags&1028)!==0&&l!==null)l.return=c,pn=l;else for(;pn!==null;){switch(c=pn,v=c.alternate,l=c.flags,c.tag){case 0:if((l&4)!==0&&(l=c.updateQueue,l=l!==null?l.events:null,l!==null))for(f=0;f<l.length;f++)x=l[f],x.ref.impl=x.nextImpl;break;case 11:case 15:break;case 1:if((l&1024)!==0&&v!==null){l=void 0,f=c,x=v.memoizedProps,v=v.memoizedState,g=f.stateNode;try{var De=al(f.type,x);l=g.getSnapshotBeforeUpdate(De,v),g.__reactInternalSnapshotBeforeUpdate=l}catch(We){St(f,f.return,We)}}break;case 3:if((l&1024)!==0){if(l=c.stateNode.containerInfo,f=l.nodeType,f===9)Jp(l);else if(f===1)switch(l.nodeName){case"HEAD":case"HTML":case"BODY":Jp(l);break;default:l.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((l&1024)!==0)throw Error(r(163))}if(l=c.sibling,l!==null){l.return=c.return,pn=l;break}pn=c.return}}function Ib(l,c,f){var g=f.flags;switch(f.tag){case 0:case 11:case 15:ya(l,f),g&4&&pu(5,f);break;case 1:if(ya(l,f),g&4)if(l=f.stateNode,c===null)try{l.componentDidMount()}catch(Q){St(f,f.return,Q)}else{var x=al(f.type,c.memoizedProps);c=c.memoizedState;try{l.componentDidUpdate(x,c,l.__reactInternalSnapshotBeforeUpdate)}catch(Q){St(f,f.return,Q)}}g&64&&_b(f),g&512&&gu(f,f.return);break;case 3:if(ya(l,f),g&64&&(l=f.updateQueue,l!==null)){if(c=null,f.child!==null)switch(f.child.tag){case 27:case 5:c=f.child.stateNode;break;case 1:c=f.child.stateNode}try{wy(l,c)}catch(Q){St(f,f.return,Q)}}break;case 27:c===null&&g&4&&Db(f);case 26:case 5:ya(l,f),c===null&&g&4&&jb(f),g&512&&gu(f,f.return);break;case 12:ya(l,f);break;case 31:ya(l,f),g&4&&Bb(l,f);break;case 13:ya(l,f),g&4&&Hb(l,f),g&64&&(l=f.memoizedState,l!==null&&(l=l.dehydrated,l!==null&&(f=r$.bind(null,f),v$(l,f))));break;case 22:if(g=f.memoizedState!==null||ga,!g){c=c!==null&&c.memoizedState!==null||ln,x=ga;var v=ln;ga=g,(ln=c)&&!v?ba(l,f,(f.subtreeFlags&8772)!==0):ya(l,f),ga=x,ln=v}break;case 30:break;default:ya(l,f)}}function Lb(l){var c=l.alternate;c!==null&&(l.alternate=null,Lb(c)),l.child=null,l.deletions=null,l.sibling=null,l.tag===5&&(c=l.stateNode,c!==null&&im(c)),l.stateNode=null,l.return=null,l.dependencies=null,l.memoizedProps=null,l.memoizedState=null,l.pendingProps=null,l.stateNode=null,l.updateQueue=null}var Nt=null,Gn=!1;function Oa(l,c,f){for(f=f.child;f!==null;)zb(l,c,f),f=f.sibling}function zb(l,c,f){if(Yt&&typeof Yt.onCommitFiberUnmount=="function")try{Yt.onCommitFiberUnmount(mr,f)}catch{}switch(f.tag){case 26:ln||Ei(f,c),Oa(l,c,f),f.memoizedState?f.memoizedState.count--:f.stateNode&&(f=f.stateNode,f.parentNode.removeChild(f));break;case 27:ln||Ei(f,c);var g=Nt,x=Gn;ms(f.type)&&(Nt=f.stateNode,Gn=!1),Oa(l,c,f),Tu(f.stateNode),Nt=g,Gn=x;break;case 5:ln||Ei(f,c);case 6:if(g=Nt,x=Gn,Nt=null,Oa(l,c,f),Nt=g,Gn=x,Nt!==null)if(Gn)try{(Nt.nodeType===9?Nt.body:Nt.nodeName==="HTML"?Nt.ownerDocument.body:Nt).removeChild(f.stateNode)}catch(v){St(f,c,v)}else try{Nt.removeChild(f.stateNode)}catch(v){St(f,c,v)}break;case 18:Nt!==null&&(Gn?(l=Nt,_x(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,f.stateNode),Ro(l)):_x(Nt,f.stateNode));break;case 4:g=Nt,x=Gn,Nt=f.stateNode.containerInfo,Gn=!0,Oa(l,c,f),Nt=g,Gn=x;break;case 0:case 11:case 14:case 15:ls(2,f,c),ln||ls(4,f,c),Oa(l,c,f);break;case 1:ln||(Ei(f,c),g=f.stateNode,typeof g.componentWillUnmount=="function"&&Nb(f,c,g)),Oa(l,c,f);break;case 21:Oa(l,c,f);break;case 22:ln=(g=ln)||f.memoizedState!==null,Oa(l,c,f),ln=g;break;default:Oa(l,c,f)}}function Bb(l,c){if(c.memoizedState===null&&(l=c.alternate,l!==null&&(l=l.memoizedState,l!==null))){l=l.dehydrated;try{Ro(l)}catch(f){St(c,c.return,f)}}}function Hb(l,c){if(c.memoizedState===null&&(l=c.alternate,l!==null&&(l=l.memoizedState,l!==null&&(l=l.dehydrated,l!==null))))try{Ro(l)}catch(f){St(c,c.return,f)}}function YM(l){switch(l.tag){case 31:case 13:case 19:var c=l.stateNode;return c===null&&(c=l.stateNode=new Vb),c;case 22:return l=l.stateNode,c=l._retryCache,c===null&&(c=l._retryCache=new Vb),c;default:throw Error(r(435,l.tag))}}function Gf(l,c){var f=YM(l);c.forEach(function(g){if(!f.has(g)){f.add(g);var x=i$.bind(null,l,g);g.then(x,x)}})}function Kn(l,c){var f=c.deletions;if(f!==null)for(var g=0;g<f.length;g++){var x=f[g],v=l,Q=c,z=Q;e:for(;z!==null;){switch(z.tag){case 27:if(ms(z.type)){Nt=z.stateNode,Gn=!1;break e}break;case 5:Nt=z.stateNode,Gn=!1;break e;case 3:case 4:Nt=z.stateNode.containerInfo,Gn=!0;break e}z=z.return}if(Nt===null)throw Error(r(160));zb(v,Q,x),Nt=null,Gn=!1,v=x.alternate,v!==null&&(v.return=null),x.return=null}if(c.subtreeFlags&13886)for(c=c.child;c!==null;)Fb(c,l),c=c.sibling}var ci=null;function Fb(l,c){var f=l.alternate,g=l.flags;switch(l.tag){case 0:case 11:case 14:case 15:Kn(c,l),Jn(l),g&4&&(ls(3,l,l.return),pu(3,l),ls(5,l,l.return));break;case 1:Kn(c,l),Jn(l),g&512&&(ln||f===null||Ei(f,f.return)),g&64&&ga&&(l=l.updateQueue,l!==null&&(g=l.callbacks,g!==null&&(f=l.shared.hiddenCallbacks,l.shared.hiddenCallbacks=f===null?g:f.concat(g))));break;case 26:var x=ci;if(Kn(c,l),Jn(l),g&512&&(ln||f===null||Ei(f,f.return)),g&4){var v=f!==null?f.memoizedState:null;if(g=l.memoizedState,f===null)if(g===null)if(l.stateNode===null){e:{g=l.type,f=l.memoizedProps,x=x.ownerDocument||x;t:switch(g){case"title":v=x.getElementsByTagName("title")[0],(!v||v[Bc]||v[kn]||v.namespaceURI==="http://www.w3.org/2000/svg"||v.hasAttribute("itemprop"))&&(v=x.createElement(g),x.head.insertBefore(v,x.querySelector("head > title"))),An(v,g,f),v[kn]=l,mn(v),g=v;break e;case"link":var Q=Fx("link","href",x).get(g+(f.href||""));if(Q){for(var z=0;z<Q.length;z++)if(v=Q[z],v.getAttribute("href")===(f.href==null||f.href===""?null:f.href)&&v.getAttribute("rel")===(f.rel==null?null:f.rel)&&v.getAttribute("title")===(f.title==null?null:f.title)&&v.getAttribute("crossorigin")===(f.crossOrigin==null?null:f.crossOrigin)){Q.splice(z,1);break t}}v=x.createElement(g),An(v,g,f),x.head.appendChild(v);break;case"meta":if(Q=Fx("meta","content",x).get(g+(f.content||""))){for(z=0;z<Q.length;z++)if(v=Q[z],v.getAttribute("content")===(f.content==null?null:""+f.content)&&v.getAttribute("name")===(f.name==null?null:f.name)&&v.getAttribute("property")===(f.property==null?null:f.property)&&v.getAttribute("http-equiv")===(f.httpEquiv==null?null:f.httpEquiv)&&v.getAttribute("charset")===(f.charSet==null?null:f.charSet)){Q.splice(z,1);break t}}v=x.createElement(g),An(v,g,f),x.head.appendChild(v);break;default:throw Error(r(468,g))}v[kn]=l,mn(v),g=v}l.stateNode=g}else Xx(x,l.type,l.stateNode);else l.stateNode=Hx(x,g,l.memoizedProps);else v!==g?(v===null?f.stateNode!==null&&(f=f.stateNode,f.parentNode.removeChild(f)):v.count--,g===null?Xx(x,l.type,l.stateNode):Hx(x,g,l.memoizedProps)):g===null&&l.stateNode!==null&&Tp(l,l.memoizedProps,f.memoizedProps)}break;case 27:Kn(c,l),Jn(l),g&512&&(ln||f===null||Ei(f,f.return)),f!==null&&g&4&&Tp(l,l.memoizedProps,f.memoizedProps);break;case 5:if(Kn(c,l),Jn(l),g&512&&(ln||f===null||Ei(f,f.return)),l.flags&32){x=l.stateNode;try{eo(x,"")}catch(De){St(l,l.return,De)}}g&4&&l.stateNode!=null&&(x=l.memoizedProps,Tp(l,x,f!==null?f.memoizedProps:x)),g&1024&&(Cp=!0);break;case 6:if(Kn(c,l),Jn(l),g&4){if(l.stateNode===null)throw Error(r(162));g=l.memoizedProps,f=l.stateNode;try{f.nodeValue=g}catch(De){St(l,l.return,De)}}break;case 3:if(hd=null,x=ci,ci=fd(c.containerInfo),Kn(c,l),ci=x,Jn(l),g&4&&f!==null&&f.memoizedState.isDehydrated)try{Ro(c.containerInfo)}catch(De){St(l,l.return,De)}Cp&&(Cp=!1,Xb(l));break;case 4:g=ci,ci=fd(l.stateNode.containerInfo),Kn(c,l),Jn(l),ci=g;break;case 12:Kn(c,l),Jn(l);break;case 31:Kn(c,l),Jn(l),g&4&&(g=l.updateQueue,g!==null&&(l.updateQueue=null,Gf(l,g)));break;case 13:Kn(c,l),Jn(l),l.child.flags&8192&&l.memoizedState!==null!=(f!==null&&f.memoizedState!==null)&&(Jf=Pe()),g&4&&(g=l.updateQueue,g!==null&&(l.updateQueue=null,Gf(l,g)));break;case 22:x=l.memoizedState!==null;var J=f!==null&&f.memoizedState!==null,ue=ga,xe=ln;if(ga=ue||x,ln=xe||J,Kn(c,l),ln=xe,ga=ue,Jn(l),g&8192)e:for(c=l.stateNode,c._visibility=x?c._visibility&-2:c._visibility|1,x&&(f===null||J||ga||ln||sl(l)),f=null,c=l;;){if(c.tag===5||c.tag===26){if(f===null){J=f=c;try{if(v=J.stateNode,x)Q=v.style,typeof Q.setProperty=="function"?Q.setProperty("display","none","important"):Q.display="none";else{z=J.stateNode;var ve=J.memoizedProps.style,he=ve!=null&&ve.hasOwnProperty("display")?ve.display:null;z.style.display=he==null||typeof he=="boolean"?"":(""+he).trim()}}catch(De){St(J,J.return,De)}}}else if(c.tag===6){if(f===null){J=c;try{J.stateNode.nodeValue=x?"":J.memoizedProps}catch(De){St(J,J.return,De)}}}else if(c.tag===18){if(f===null){J=c;try{var pe=J.stateNode;x?Nx(pe,!0):Nx(J.stateNode,!1)}catch(De){St(J,J.return,De)}}}else if((c.tag!==22&&c.tag!==23||c.memoizedState===null||c===l)&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===l)break e;for(;c.sibling===null;){if(c.return===null||c.return===l)break e;f===c&&(f=null),c=c.return}f===c&&(f=null),c.sibling.return=c.return,c=c.sibling}g&4&&(g=l.updateQueue,g!==null&&(f=g.retryQueue,f!==null&&(g.retryQueue=null,Gf(l,f))));break;case 19:Kn(c,l),Jn(l),g&4&&(g=l.updateQueue,g!==null&&(l.updateQueue=null,Gf(l,g)));break;case 30:break;case 21:break;default:Kn(c,l),Jn(l)}}function Jn(l){var c=l.flags;if(c&2){try{for(var f,g=l.return;g!==null;){if(Zb(g)){f=g;break}g=g.return}if(f==null)throw Error(r(160));switch(f.tag){case 27:var x=f.stateNode,v=Ap(l);Wf(l,v,x);break;case 5:var Q=f.stateNode;f.flags&32&&(eo(Q,""),f.flags&=-33);var z=Ap(l);Wf(l,z,Q);break;case 3:case 4:var J=f.stateNode.containerInfo,ue=Ap(l);Pp(l,ue,J);break;default:throw Error(r(161))}}catch(xe){St(l,l.return,xe)}l.flags&=-3}c&4096&&(l.flags&=-4097)}function Xb(l){if(l.subtreeFlags&1024)for(l=l.child;l!==null;){var c=l;Xb(c),c.tag===5&&c.flags&1024&&c.stateNode.reset(),l=l.sibling}}function ya(l,c){if(c.subtreeFlags&8772)for(c=c.child;c!==null;)Ib(l,c.alternate,c),c=c.sibling}function sl(l){for(l=l.child;l!==null;){var c=l;switch(c.tag){case 0:case 11:case 14:case 15:ls(4,c,c.return),sl(c);break;case 1:Ei(c,c.return);var f=c.stateNode;typeof f.componentWillUnmount=="function"&&Nb(c,c.return,f),sl(c);break;case 27:Tu(c.stateNode);case 26:case 5:Ei(c,c.return),sl(c);break;case 22:c.memoizedState===null&&sl(c);break;case 30:sl(c);break;default:sl(c)}l=l.sibling}}function ba(l,c,f){for(f=f&&(c.subtreeFlags&8772)!==0,c=c.child;c!==null;){var g=c.alternate,x=l,v=c,Q=v.flags;switch(v.tag){case 0:case 11:case 15:ba(x,v,f),pu(4,v);break;case 1:if(ba(x,v,f),g=v,x=g.stateNode,typeof x.componentDidMount=="function")try{x.componentDidMount()}catch(ue){St(g,g.return,ue)}if(g=v,x=g.updateQueue,x!==null){var z=g.stateNode;try{var J=x.shared.hiddenCallbacks;if(J!==null)for(x.shared.hiddenCallbacks=null,x=0;x<J.length;x++)vy(J[x],z)}catch(ue){St(g,g.return,ue)}}f&&Q&64&&_b(v),gu(v,v.return);break;case 27:Db(v);case 26:case 5:ba(x,v,f),f&&g===null&&Q&4&&jb(v),gu(v,v.return);break;case 12:ba(x,v,f);break;case 31:ba(x,v,f),f&&Q&4&&Bb(x,v);break;case 13:ba(x,v,f),f&&Q&4&&Hb(x,v);break;case 22:v.memoizedState===null&&ba(x,v,f),gu(v,v.return);break;case 30:break;default:ba(x,v,f)}c=c.sibling}}function Ep(l,c){var f=null;l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(f=l.memoizedState.cachePool.pool),l=null,c.memoizedState!==null&&c.memoizedState.cachePool!==null&&(l=c.memoizedState.cachePool.pool),l!==f&&(l!=null&&l.refCount++,f!=null&&nu(f))}function Mp(l,c){l=null,c.alternate!==null&&(l=c.alternate.memoizedState.cache),c=c.memoizedState.cache,c!==l&&(c.refCount++,l!=null&&nu(l))}function ui(l,c,f,g){if(c.subtreeFlags&10256)for(c=c.child;c!==null;)Ub(l,c,f,g),c=c.sibling}function Ub(l,c,f,g){var x=c.flags;switch(c.tag){case 0:case 11:case 15:ui(l,c,f,g),x&2048&&pu(9,c);break;case 1:ui(l,c,f,g);break;case 3:ui(l,c,f,g),x&2048&&(l=null,c.alternate!==null&&(l=c.alternate.memoizedState.cache),c=c.memoizedState.cache,c!==l&&(c.refCount++,l!=null&&nu(l)));break;case 12:if(x&2048){ui(l,c,f,g),l=c.stateNode;try{var v=c.memoizedProps,Q=v.id,z=v.onPostCommit;typeof z=="function"&&z(Q,c.alternate===null?"mount":"update",l.passiveEffectDuration,-0)}catch(J){St(c,c.return,J)}}else ui(l,c,f,g);break;case 31:ui(l,c,f,g);break;case 13:ui(l,c,f,g);break;case 23:break;case 22:v=c.stateNode,Q=c.alternate,c.memoizedState!==null?v._visibility&2?ui(l,c,f,g):Ou(l,c):v._visibility&2?ui(l,c,f,g):(v._visibility|=2,So(l,c,f,g,(c.subtreeFlags&10256)!==0||!1)),x&2048&&Ep(Q,c);break;case 24:ui(l,c,f,g),x&2048&&Mp(c.alternate,c);break;default:ui(l,c,f,g)}}function So(l,c,f,g,x){for(x=x&&((c.subtreeFlags&10256)!==0||!1),c=c.child;c!==null;){var v=l,Q=c,z=f,J=g,ue=Q.flags;switch(Q.tag){case 0:case 11:case 15:So(v,Q,z,J,x),pu(8,Q);break;case 23:break;case 22:var xe=Q.stateNode;Q.memoizedState!==null?xe._visibility&2?So(v,Q,z,J,x):Ou(v,Q):(xe._visibility|=2,So(v,Q,z,J,x)),x&&ue&2048&&Ep(Q.alternate,Q);break;case 24:So(v,Q,z,J,x),x&&ue&2048&&Mp(Q.alternate,Q);break;default:So(v,Q,z,J,x)}c=c.sibling}}function Ou(l,c){if(c.subtreeFlags&10256)for(c=c.child;c!==null;){var f=l,g=c,x=g.flags;switch(g.tag){case 22:Ou(f,g),x&2048&&Ep(g.alternate,g);break;case 24:Ou(f,g),x&2048&&Mp(g.alternate,g);break;default:Ou(f,g)}c=c.sibling}}var yu=8192;function ko(l,c,f){if(l.subtreeFlags&yu)for(l=l.child;l!==null;)qb(l,c,f),l=l.sibling}function qb(l,c,f){switch(l.tag){case 26:ko(l,c,f),l.flags&yu&&l.memoizedState!==null&&N$(f,ci,l.memoizedState,l.memoizedProps);break;case 5:ko(l,c,f);break;case 3:case 4:var g=ci;ci=fd(l.stateNode.containerInfo),ko(l,c,f),ci=g;break;case 22:l.memoizedState===null&&(g=l.alternate,g!==null&&g.memoizedState!==null?(g=yu,yu=16777216,ko(l,c,f),yu=g):ko(l,c,f));break;default:ko(l,c,f)}}function Yb(l){var c=l.alternate;if(c!==null&&(l=c.child,l!==null)){c.child=null;do c=l.sibling,l.sibling=null,l=c;while(l!==null)}}function bu(l){var c=l.deletions;if((l.flags&16)!==0){if(c!==null)for(var f=0;f<c.length;f++){var g=c[f];pn=g,Gb(g,l)}Yb(l)}if(l.subtreeFlags&10256)for(l=l.child;l!==null;)Wb(l),l=l.sibling}function Wb(l){switch(l.tag){case 0:case 11:case 15:bu(l),l.flags&2048&&ls(9,l,l.return);break;case 3:bu(l);break;case 12:bu(l);break;case 22:var c=l.stateNode;l.memoizedState!==null&&c._visibility&2&&(l.return===null||l.return.tag!==13)?(c._visibility&=-3,Kf(l)):bu(l);break;default:bu(l)}}function Kf(l){var c=l.deletions;if((l.flags&16)!==0){if(c!==null)for(var f=0;f<c.length;f++){var g=c[f];pn=g,Gb(g,l)}Yb(l)}for(l=l.child;l!==null;){switch(c=l,c.tag){case 0:case 11:case 15:ls(8,c,c.return),Kf(c);break;case 22:f=c.stateNode,f._visibility&2&&(f._visibility&=-3,Kf(c));break;default:Kf(c)}l=l.sibling}}function Gb(l,c){for(;pn!==null;){var f=pn;switch(f.tag){case 0:case 11:case 15:ls(8,f,c);break;case 23:case 22:if(f.memoizedState!==null&&f.memoizedState.cachePool!==null){var g=f.memoizedState.cachePool.pool;g!=null&&g.refCount++}break;case 24:nu(f.memoizedState.cache)}if(g=f.child,g!==null)g.return=f,pn=g;else e:for(f=l;pn!==null;){g=pn;var x=g.sibling,v=g.return;if(Lb(g),g===f){pn=null;break e}if(x!==null){x.return=v,pn=x;break e}pn=v}}}var WM={getCacheForType:function(l){var c=wn(rn),f=c.data.get(l);return f===void 0&&(f=l(),c.data.set(l,f)),f},cacheSignal:function(){return wn(rn).controller.signal}},GM=typeof WeakMap=="function"?WeakMap:Map,yt=0,Ct=null,at=null,ot=0,xt=0,xr=null,os=!1,vo=!1,$p=!1,xa=0,Ht=0,cs=0,ll=0,Rp=0,Sr=0,wo=0,xu=null,er=null,Qp=!1,Jf=0,Kb=0,ed=1/0,td=null,us=null,fn=0,fs=null,To=null,Sa=0,_p=0,Np=null,Jb=null,Su=0,jp=null;function kr(){return(yt&2)!==0&&ot!==0?ot&-ot:L.T!==null?zp():zc()}function ex(){if(Sr===0)if((ot&536870912)===0||ut){var l=jr;jr<<=1,(jr&3932160)===0&&(jr=262144),Sr=l}else Sr=536870912;return l=yr.current,l!==null&&(l.flags|=32),Sr}function tr(l,c,f){(l===Ct&&(xt===2||xt===9)||l.cancelPendingCommit!==null)&&(Ao(l,0),ds(l,ot,Sr,!1)),je(l,f),((yt&2)===0||l!==Ct)&&(l===Ct&&((yt&2)===0&&(ll|=f),Ht===4&&ds(l,ot,Sr,!1)),Mi(l))}function tx(l,c,f){if((yt&6)!==0)throw Error(r(327));var g=!f&&(c&127)===0&&(c&l.expiredLanes)===0||ra(l,c),x=g?e$(l,c):Dp(l,c,!0),v=g;do{if(x===0){vo&&!g&&ds(l,c,0,!1);break}else{if(f=l.current.alternate,v&&!KM(f)){x=Dp(l,c,!1),v=!1;continue}if(x===2){if(v=c,l.errorRecoveryDisabledLanes&v)var Q=0;else Q=l.pendingLanes&-536870913,Q=Q!==0?Q:Q&536870912?536870912:0;if(Q!==0){c=Q;e:{var z=l;x=xu;var J=z.current.memoizedState.isDehydrated;if(J&&(Ao(z,Q).flags|=256),Q=Dp(z,Q,!1),Q!==2){if($p&&!J){z.errorRecoveryDisabledLanes|=v,ll|=v,x=4;break e}v=er,er=x,v!==null&&(er===null?er=v:er.push.apply(er,v))}x=Q}if(v=!1,x!==2)continue}}if(x===1){Ao(l,0),ds(l,c,0,!0);break}e:{switch(g=l,v=x,v){case 0:case 1:throw Error(r(345));case 4:if((c&4194048)!==c)break;case 6:ds(g,c,Sr,!os);break e;case 2:er=null;break;case 3:case 5:break;default:throw Error(r(329))}if((c&62914560)===c&&(x=Jf+300-Pe(),10<x)){if(ds(g,c,Sr,!os),pr(g,0,!0)!==0)break e;Sa=c,g.timeoutHandle=Rx(nx.bind(null,g,f,er,td,Qp,c,Sr,ll,wo,os,v,"Throttled",-0,0),x);break e}nx(g,f,er,td,Qp,c,Sr,ll,wo,os,v,null,-0,0)}}break}while(!0);Mi(l)}function nx(l,c,f,g,x,v,Q,z,J,ue,xe,ve,he,pe){if(l.timeoutHandle=-1,ve=c.subtreeFlags,ve&8192||(ve&16785408)===16785408){ve={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:sa},qb(c,v,ve);var De=(v&62914560)===v?Jf-Pe():(v&4194048)===v?Kb-Pe():0;if(De=j$(ve,De),De!==null){Sa=v,l.cancelPendingCommit=De(ux.bind(null,l,c,v,f,g,x,Q,z,J,xe,ve,null,he,pe)),ds(l,v,Q,!ue);return}}ux(l,c,v,f,g,x,Q,z,J)}function KM(l){for(var c=l;;){var f=c.tag;if((f===0||f===11||f===15)&&c.flags&16384&&(f=c.updateQueue,f!==null&&(f=f.stores,f!==null)))for(var g=0;g<f.length;g++){var x=f[g],v=x.getSnapshot;x=x.value;try{if(!gr(v(),x))return!1}catch{return!1}}if(f=c.child,c.subtreeFlags&16384&&f!==null)f.return=c,c=f;else{if(c===l)break;for(;c.sibling===null;){if(c.return===null||c.return===l)return!0;c=c.return}c.sibling.return=c.return,c=c.sibling}}return!0}function ds(l,c,f,g){c&=~Rp,c&=~ll,l.suspendedLanes|=c,l.pingedLanes&=~c,g&&(l.warmLanes|=c),g=l.expirationTimes;for(var x=c;0<x;){var v=31-Mt(x),Q=1<<v;g[v]=-1,x&=~Q}f!==0&&$e(l,f,c)}function nd(){return(yt&6)===0?(ku(0),!1):!0}function Zp(){if(at!==null){if(xt===0)var l=at.return;else l=at,ua=Ks=null,Jm(l),go=null,iu=0,l=at;for(;l!==null;)Qb(l.alternate,l),l=l.return;at=null}}function Ao(l,c){var f=l.timeoutHandle;f!==-1&&(l.timeoutHandle=-1,y$(f)),f=l.cancelPendingCommit,f!==null&&(l.cancelPendingCommit=null,f()),Sa=0,Zp(),Ct=l,at=f=oa(l.current,null),ot=c,xt=0,xr=null,os=!1,vo=ra(l,c),$p=!1,wo=Sr=Rp=ll=cs=Ht=0,er=xu=null,Qp=!1,(c&8)!==0&&(c|=c&32);var g=l.entangledLanes;if(g!==0)for(l=l.entanglements,g&=c;0<g;){var x=31-Mt(g),v=1<<x;c|=l[x],g&=~v}return xa=c,vf(),f}function rx(l,c){et=null,L.H=du,c===po||c===$f?(c=by(),xt=3):c===Lm?(c=by(),xt=4):xt=c===pp?8:c!==null&&typeof c=="object"&&typeof c.then=="function"?6:1,xr=c,at===null&&(Ht=1,Ff(l,Ir(c,l.current)))}function ix(){var l=yr.current;return l===null?!0:(ot&4194048)===ot?Hr===null:(ot&62914560)===ot||(ot&536870912)!==0?l===Hr:!1}function ax(){var l=L.H;return L.H=du,l===null?du:l}function sx(){var l=L.A;return L.A=WM,l}function rd(){Ht=4,os||(ot&4194048)!==ot&&yr.current!==null||(vo=!0),(cs&134217727)===0&&(ll&134217727)===0||Ct===null||ds(Ct,ot,Sr,!1)}function Dp(l,c,f){var g=yt;yt|=2;var x=ax(),v=sx();(Ct!==l||ot!==c)&&(td=null,Ao(l,c)),c=!1;var Q=Ht;e:do try{if(xt!==0&&at!==null){var z=at,J=xr;switch(xt){case 8:Zp(),Q=6;break e;case 3:case 2:case 9:case 6:yr.current===null&&(c=!0);var ue=xt;if(xt=0,xr=null,Po(l,z,J,ue),f&&vo){Q=0;break e}break;default:ue=xt,xt=0,xr=null,Po(l,z,J,ue)}}JM(),Q=Ht;break}catch(xe){rx(l,xe)}while(!0);return c&&l.shellSuspendCounter++,ua=Ks=null,yt=g,L.H=x,L.A=v,at===null&&(Ct=null,ot=0,vf()),Q}function JM(){for(;at!==null;)lx(at)}function e$(l,c){var f=yt;yt|=2;var g=ax(),x=sx();Ct!==l||ot!==c?(td=null,ed=Pe()+500,Ao(l,c)):vo=ra(l,c);e:do try{if(xt!==0&&at!==null){c=at;var v=xr;t:switch(xt){case 1:xt=0,xr=null,Po(l,c,v,1);break;case 2:case 9:if(Oy(v)){xt=0,xr=null,ox(c);break}c=function(){xt!==2&&xt!==9||Ct!==l||(xt=7),Mi(l)},v.then(c,c);break e;case 3:xt=7;break e;case 4:xt=5;break e;case 7:Oy(v)?(xt=0,xr=null,ox(c)):(xt=0,xr=null,Po(l,c,v,7));break;case 5:var Q=null;switch(at.tag){case 26:Q=at.memoizedState;case 5:case 27:var z=at;if(Q?Ux(Q):z.stateNode.complete){xt=0,xr=null;var J=z.sibling;if(J!==null)at=J;else{var ue=z.return;ue!==null?(at=ue,id(ue)):at=null}break t}}xt=0,xr=null,Po(l,c,v,5);break;case 6:xt=0,xr=null,Po(l,c,v,6);break;case 8:Zp(),Ht=6;break e;default:throw Error(r(462))}}t$();break}catch(xe){rx(l,xe)}while(!0);return ua=Ks=null,L.H=g,L.A=x,yt=f,at!==null?0:(Ct=null,ot=0,vf(),Ht)}function t$(){for(;at!==null&&!be();)lx(at)}function lx(l){var c=$b(l.alternate,l,xa);l.memoizedProps=l.pendingProps,c===null?id(l):at=c}function ox(l){var c=l,f=c.alternate;switch(c.tag){case 15:case 0:c=Tb(f,c,c.pendingProps,c.type,void 0,ot);break;case 11:c=Tb(f,c,c.pendingProps,c.type.render,c.ref,ot);break;case 5:Jm(c);default:Qb(f,c),c=at=sy(c,xa),c=$b(f,c,xa)}l.memoizedProps=l.pendingProps,c===null?id(l):at=c}function Po(l,c,f,g){ua=Ks=null,Jm(c),go=null,iu=0;var x=c.return;try{if(BM(l,x,c,f,ot)){Ht=1,Ff(l,Ir(f,l.current)),at=null;return}}catch(v){if(x!==null)throw at=x,v;Ht=1,Ff(l,Ir(f,l.current)),at=null;return}c.flags&32768?(ut||g===1?l=!0:vo||(ot&536870912)!==0?l=!1:(os=l=!0,(g===2||g===9||g===3||g===6)&&(g=yr.current,g!==null&&g.tag===13&&(g.flags|=16384))),cx(c,l)):id(c)}function id(l){var c=l;do{if((c.flags&32768)!==0){cx(c,os);return}l=c.return;var f=XM(c.alternate,c,xa);if(f!==null){at=f;return}if(c=c.sibling,c!==null){at=c;return}at=c=l}while(c!==null);Ht===0&&(Ht=5)}function cx(l,c){do{var f=UM(l.alternate,l);if(f!==null){f.flags&=32767,at=f;return}if(f=l.return,f!==null&&(f.flags|=32768,f.subtreeFlags=0,f.deletions=null),!c&&(l=l.sibling,l!==null)){at=l;return}at=l=f}while(l!==null);Ht=6,at=null}function ux(l,c,f,g,x,v,Q,z,J){l.cancelPendingCommit=null;do ad();while(fn!==0);if((yt&6)!==0)throw Error(r(327));if(c!==null){if(c===l.current)throw Error(r(177));if(v=c.lanes|c.childLanes,v|=Am,Pt(l,f,v,Q,z,J),l===Ct&&(at=Ct=null,ot=0),To=c,fs=l,Sa=f,_p=v,Np=x,Jb=g,(c.subtreeFlags&10256)!==0||(c.flags&10256)!==0?(l.callbackNode=null,l.callbackPriority=0,a$(Fe,function(){return px(),null})):(l.callbackNode=null,l.callbackPriority=0),g=(c.flags&13878)!==0,(c.subtreeFlags&13878)!==0||g){g=L.T,L.T=null,x=W.p,W.p=2,Q=yt,yt|=4;try{qM(l,c,f)}finally{yt=Q,W.p=x,L.T=g}}fn=1,fx(),dx(),hx()}}function fx(){if(fn===1){fn=0;var l=fs,c=To,f=(c.flags&13878)!==0;if((c.subtreeFlags&13878)!==0||f){f=L.T,L.T=null;var g=W.p;W.p=2;var x=yt;yt|=4;try{Fb(c,l);var v=Wp,Q=G4(l.containerInfo),z=v.focusedElem,J=v.selectionRange;if(Q!==z&&z&&z.ownerDocument&&W4(z.ownerDocument.documentElement,z)){if(J!==null&&Sm(z)){var ue=J.start,xe=J.end;if(xe===void 0&&(xe=ue),"selectionStart"in z)z.selectionStart=ue,z.selectionEnd=Math.min(xe,z.value.length);else{var ve=z.ownerDocument||document,he=ve&&ve.defaultView||window;if(he.getSelection){var pe=he.getSelection(),De=z.textContent.length,We=Math.min(J.start,De),At=J.end===void 0?We:Math.min(J.end,De);!pe.extend&&We>At&&(Q=At,At=We,We=Q);var se=Y4(z,We),re=Y4(z,At);if(se&&re&&(pe.rangeCount!==1||pe.anchorNode!==se.node||pe.anchorOffset!==se.offset||pe.focusNode!==re.node||pe.focusOffset!==re.offset)){var oe=ve.createRange();oe.setStart(se.node,se.offset),pe.removeAllRanges(),We>At?(pe.addRange(oe),pe.extend(re.node,re.offset)):(oe.setEnd(re.node,re.offset),pe.addRange(oe))}}}}for(ve=[],pe=z;pe=pe.parentNode;)pe.nodeType===1&&ve.push({element:pe,left:pe.scrollLeft,top:pe.scrollTop});for(typeof z.focus=="function"&&z.focus(),z=0;z<ve.length;z++){var Se=ve[z];Se.element.scrollLeft=Se.left,Se.element.scrollTop=Se.top}}Od=!!Yp,Wp=Yp=null}finally{yt=x,W.p=g,L.T=f}}l.current=c,fn=2}}function dx(){if(fn===2){fn=0;var l=fs,c=To,f=(c.flags&8772)!==0;if((c.subtreeFlags&8772)!==0||f){f=L.T,L.T=null;var g=W.p;W.p=2;var x=yt;yt|=4;try{Ib(l,c.alternate,c)}finally{yt=x,W.p=g,L.T=f}}fn=3}}function hx(){if(fn===4||fn===3){fn=0,Me();var l=fs,c=To,f=Sa,g=Jb;(c.subtreeFlags&10256)!==0||(c.flags&10256)!==0?fn=5:(fn=0,To=fs=null,mx(l,l.pendingLanes));var x=l.pendingLanes;if(x===0&&(us=null),ia(f),c=c.stateNode,Yt&&typeof Yt.onCommitFiberRoot=="function")try{Yt.onCommitFiberRoot(mr,c,void 0,(c.current.flags&128)===128)}catch{}if(g!==null){c=L.T,x=W.p,W.p=2,L.T=null;try{for(var v=l.onRecoverableError,Q=0;Q<g.length;Q++){var z=g[Q];v(z.value,{componentStack:z.stack})}}finally{L.T=c,W.p=x}}(Sa&3)!==0&&ad(),Mi(l),x=l.pendingLanes,(f&261930)!==0&&(x&42)!==0?l===jp?Su++:(Su=0,jp=l):Su=0,ku(0)}}function mx(l,c){(l.pooledCacheLanes&=c)===0&&(c=l.pooledCache,c!=null&&(l.pooledCache=null,nu(c)))}function ad(){return fx(),dx(),hx(),px()}function px(){if(fn!==5)return!1;var l=fs,c=_p;_p=0;var f=ia(Sa),g=L.T,x=W.p;try{W.p=32>f?32:f,L.T=null,f=Np,Np=null;var v=fs,Q=Sa;if(fn=0,To=fs=null,Sa=0,(yt&6)!==0)throw Error(r(331));var z=yt;if(yt|=4,Wb(v.current),Ub(v,v.current,Q,f),yt=z,ku(0,!1),Yt&&typeof Yt.onPostCommitFiberRoot=="function")try{Yt.onPostCommitFiberRoot(mr,v)}catch{}return!0}finally{W.p=x,L.T=g,mx(l,c)}}function gx(l,c,f){c=Ir(f,c),c=mp(l.stateNode,c,2),l=is(l,c,2),l!==null&&(je(l,2),Mi(l))}function St(l,c,f){if(l.tag===3)gx(l,l,f);else for(;c!==null;){if(c.tag===3){gx(c,l,f);break}else if(c.tag===1){var g=c.stateNode;if(typeof c.type.getDerivedStateFromError=="function"||typeof g.componentDidCatch=="function"&&(us===null||!us.has(g))){l=Ir(f,l),f=Ob(2),g=is(c,f,2),g!==null&&(yb(f,g,c,l),je(g,2),Mi(g));break}}c=c.return}}function Vp(l,c,f){var g=l.pingCache;if(g===null){g=l.pingCache=new GM;var x=new Set;g.set(c,x)}else x=g.get(c),x===void 0&&(x=new Set,g.set(c,x));x.has(f)||($p=!0,x.add(f),l=n$.bind(null,l,c,f),c.then(l,l))}function n$(l,c,f){var g=l.pingCache;g!==null&&g.delete(c),l.pingedLanes|=l.suspendedLanes&f,l.warmLanes&=~f,Ct===l&&(ot&f)===f&&(Ht===4||Ht===3&&(ot&62914560)===ot&&300>Pe()-Jf?(yt&2)===0&&Ao(l,0):Rp|=f,wo===ot&&(wo=0)),Mi(l)}function Ox(l,c){c===0&&(c=Ul()),l=Ys(l,c),l!==null&&(je(l,c),Mi(l))}function r$(l){var c=l.memoizedState,f=0;c!==null&&(f=c.retryLane),Ox(l,f)}function i$(l,c){var f=0;switch(l.tag){case 31:case 13:var g=l.stateNode,x=l.memoizedState;x!==null&&(f=x.retryLane);break;case 19:g=l.stateNode;break;case 22:g=l.stateNode._retryCache;break;default:throw Error(r(314))}g!==null&&g.delete(c),Ox(l,f)}function a$(l,c){return ge(l,c)}var sd=null,Co=null,Ip=!1,ld=!1,Lp=!1,hs=0;function Mi(l){l!==Co&&l.next===null&&(Co===null?sd=Co=l:Co=Co.next=l),ld=!0,Ip||(Ip=!0,l$())}function ku(l,c){if(!Lp&&ld){Lp=!0;do for(var f=!1,g=sd;g!==null;){if(l!==0){var x=g.pendingLanes;if(x===0)var v=0;else{var Q=g.suspendedLanes,z=g.pingedLanes;v=(1<<31-Mt(42|l)+1)-1,v&=x&~(Q&~z),v=v&201326741?v&201326741|1:v?v|2:0}v!==0&&(f=!0,Sx(g,v))}else v=ot,v=pr(g,g===Ct?v:0,g.cancelPendingCommit!==null||g.timeoutHandle!==-1),(v&3)===0||ra(g,v)||(f=!0,Sx(g,v));g=g.next}while(f);Lp=!1}}function s$(){yx()}function yx(){ld=Ip=!1;var l=0;hs!==0&&O$()&&(l=hs);for(var c=Pe(),f=null,g=sd;g!==null;){var x=g.next,v=bx(g,c);v===0?(g.next=null,f===null?sd=x:f.next=x,x===null&&(Co=f)):(f=g,(l!==0||(v&3)!==0)&&(ld=!0)),g=x}fn!==0&&fn!==5||ku(l),hs!==0&&(hs=0)}function bx(l,c){for(var f=l.suspendedLanes,g=l.pingedLanes,x=l.expirationTimes,v=l.pendingLanes&-62914561;0<v;){var Q=31-Mt(v),z=1<<Q,J=x[Q];J===-1?((z&f)===0||(z&g)!==0)&&(x[Q]=Lc(z,c)):J<=c&&(l.expiredLanes|=z),v&=~z}if(c=Ct,f=ot,f=pr(l,l===c?f:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),g=l.callbackNode,f===0||l===c&&(xt===2||xt===9)||l.cancelPendingCommit!==null)return g!==null&&g!==null&&ye(g),l.callbackNode=null,l.callbackPriority=0;if((f&3)===0||ra(l,f)){if(c=f&-f,c===l.callbackPriority)return c;switch(g!==null&&ye(g),ia(f)){case 2:case 8:f=_e;break;case 32:f=Fe;break;case 268435456:f=qt;break;default:f=Fe}return g=xx.bind(null,l),f=ge(f,g),l.callbackPriority=c,l.callbackNode=f,c}return g!==null&&g!==null&&ye(g),l.callbackPriority=2,l.callbackNode=null,2}function xx(l,c){if(fn!==0&&fn!==5)return l.callbackNode=null,l.callbackPriority=0,null;var f=l.callbackNode;if(ad()&&l.callbackNode!==f)return null;var g=ot;return g=pr(l,l===Ct?g:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),g===0?null:(tx(l,g,c),bx(l,Pe()),l.callbackNode!=null&&l.callbackNode===f?xx.bind(null,l):null)}function Sx(l,c){if(ad())return null;tx(l,c,!0)}function l$(){b$(function(){(yt&6)!==0?ge(Ye,s$):yx()})}function zp(){if(hs===0){var l=ho;l===0&&(l=li,li<<=1,(li&261888)===0&&(li=256)),hs=l}return hs}function kx(l){return l==null||typeof l=="symbol"||typeof l=="boolean"?null:typeof l=="function"?l:pf(""+l)}function vx(l,c){var f=c.ownerDocument.createElement("input");return f.name=c.name,f.value=c.value,l.id&&f.setAttribute("form",l.id),c.parentNode.insertBefore(f,c),l=new FormData(l),f.parentNode.removeChild(f),l}function o$(l,c,f,g,x){if(c==="submit"&&f&&f.stateNode===x){var v=kx((x[Yn]||null).action),Q=g.submitter;Q&&(c=(c=Q[Yn]||null)?kx(c.formAction):Q.getAttribute("formAction"),c!==null&&(v=c,Q=null));var z=new bf("action","action",null,g,x);l.push({event:z,listeners:[{instance:null,listener:function(){if(g.defaultPrevented){if(hs!==0){var J=Q?vx(x,Q):new FormData(x);op(f,{pending:!0,data:J,method:x.method,action:v},null,J)}}else typeof v=="function"&&(z.preventDefault(),J=Q?vx(x,Q):new FormData(x),op(f,{pending:!0,data:J,method:x.method,action:v},v,J))},currentTarget:x}]})}}for(var Bp=0;Bp<Tm.length;Bp++){var Hp=Tm[Bp],c$=Hp.toLowerCase(),u$=Hp[0].toUpperCase()+Hp.slice(1);oi(c$,"on"+u$)}oi(ey,"onAnimationEnd"),oi(ty,"onAnimationIteration"),oi(ny,"onAnimationStart"),oi("dblclick","onDoubleClick"),oi("focusin","onFocus"),oi("focusout","onBlur"),oi(AM,"onTransitionRun"),oi(PM,"onTransitionStart"),oi(CM,"onTransitionCancel"),oi(ry,"onTransitionEnd"),Kl("onMouseEnter",["mouseout","mouseover"]),Kl("onMouseLeave",["mouseout","mouseover"]),Kl("onPointerEnter",["pointerout","pointerover"]),Kl("onPointerLeave",["pointerout","pointerover"]),Fs("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Fs("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Fs("onBeforeInput",["compositionend","keypress","textInput","paste"]),Fs("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Fs("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Fs("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var vu="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(" "),f$=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(vu));function wx(l,c){c=(c&4)!==0;for(var f=0;f<l.length;f++){var g=l[f],x=g.event;g=g.listeners;e:{var v=void 0;if(c)for(var Q=g.length-1;0<=Q;Q--){var z=g[Q],J=z.instance,ue=z.currentTarget;if(z=z.listener,J!==v&&x.isPropagationStopped())break e;v=z,x.currentTarget=ue;try{v(x)}catch(xe){kf(xe)}x.currentTarget=null,v=J}else for(Q=0;Q<g.length;Q++){if(z=g[Q],J=z.instance,ue=z.currentTarget,z=z.listener,J!==v&&x.isPropagationStopped())break e;v=z,x.currentTarget=ue;try{v(x)}catch(xe){kf(xe)}x.currentTarget=null,v=J}}}}function st(l,c){var f=c[rm];f===void 0&&(f=c[rm]=new Set);var g=l+"__bubble";f.has(g)||(Tx(c,l,2,!1),f.add(g))}function Fp(l,c,f){var g=0;c&&(g|=4),Tx(f,l,g,c)}var od="_reactListening"+Math.random().toString(36).slice(2);function Xp(l){if(!l[od]){l[od]=!0,y4.forEach(function(f){f!=="selectionchange"&&(f$.has(f)||Fp(f,!1,l),Fp(f,!0,l))});var c=l.nodeType===9?l:l.ownerDocument;c===null||c[od]||(c[od]=!0,Fp("selectionchange",!1,c))}}function Tx(l,c,f,g){switch(e3(c)){case 2:var x=V$;break;case 8:x=I$;break;default:x=lg}f=x.bind(null,c,f,l),x=void 0,!dm||c!=="touchstart"&&c!=="touchmove"&&c!=="wheel"||(x=!0),g?x!==void 0?l.addEventListener(c,f,{capture:!0,passive:x}):l.addEventListener(c,f,!0):x!==void 0?l.addEventListener(c,f,{passive:x}):l.addEventListener(c,f,!1)}function Up(l,c,f,g,x){var v=g;if((c&1)===0&&(c&2)===0&&g!==null)e:for(;;){if(g===null)return;var Q=g.tag;if(Q===3||Q===4){var z=g.stateNode.containerInfo;if(z===x)break;if(Q===4)for(Q=g.return;Q!==null;){var J=Q.tag;if((J===3||J===4)&&Q.stateNode.containerInfo===x)return;Q=Q.return}for(;z!==null;){if(Q=Yl(z),Q===null)return;if(J=Q.tag,J===5||J===6||J===26||J===27){g=v=Q;continue e}z=z.parentNode}}g=g.return}M4(function(){var ue=v,xe=um(f),ve=[];e:{var he=iy.get(l);if(he!==void 0){var pe=bf,De=l;switch(l){case"keypress":if(Of(f)===0)break e;case"keydown":case"keyup":pe=iM;break;case"focusin":De="focus",pe=gm;break;case"focusout":De="blur",pe=gm;break;case"beforeblur":case"afterblur":pe=gm;break;case"click":if(f.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":pe=Q4;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":pe=XE;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":pe=lM;break;case ey:case ty:case ny:pe=YE;break;case ry:pe=cM;break;case"scroll":case"scrollend":pe=HE;break;case"wheel":pe=fM;break;case"copy":case"cut":case"paste":pe=GE;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":pe=N4;break;case"toggle":case"beforetoggle":pe=hM}var We=(c&4)!==0,At=!We&&(l==="scroll"||l==="scrollend"),se=We?he!==null?he+"Capture":null:he;We=[];for(var re=ue,oe;re!==null;){var Se=re;if(oe=Se.stateNode,Se=Se.tag,Se!==5&&Se!==26&&Se!==27||oe===null||se===null||(Se=Fc(re,se),Se!=null&&We.push(wu(re,Se,oe))),At)break;re=re.return}0<We.length&&(he=new pe(he,De,null,f,xe),ve.push({event:he,listeners:We}))}}if((c&7)===0){e:{if(he=l==="mouseover"||l==="pointerover",pe=l==="mouseout"||l==="pointerout",he&&f!==cm&&(De=f.relatedTarget||f.fromElement)&&(Yl(De)||De[ql]))break e;if((pe||he)&&(he=xe.window===xe?xe:(he=xe.ownerDocument)?he.defaultView||he.parentWindow:window,pe?(De=f.relatedTarget||f.toElement,pe=ue,De=De?Yl(De):null,De!==null&&(At=a(De),We=De.tag,De!==At||We!==5&&We!==27&&We!==6)&&(De=null)):(pe=null,De=ue),pe!==De)){if(We=Q4,Se="onMouseLeave",se="onMouseEnter",re="mouse",(l==="pointerout"||l==="pointerover")&&(We=N4,Se="onPointerLeave",se="onPointerEnter",re="pointer"),At=pe==null?he:Hc(pe),oe=De==null?he:Hc(De),he=new We(Se,re+"leave",pe,f,xe),he.target=At,he.relatedTarget=oe,Se=null,Yl(xe)===ue&&(We=new We(se,re+"enter",De,f,xe),We.target=oe,We.relatedTarget=At,Se=We),At=Se,pe&&De)t:{for(We=d$,se=pe,re=De,oe=0,Se=se;Se;Se=We(Se))oe++;Se=0;for(var qe=re;qe;qe=We(qe))Se++;for(;0<oe-Se;)se=We(se),oe--;for(;0<Se-oe;)re=We(re),Se--;for(;oe--;){if(se===re||re!==null&&se===re.alternate){We=se;break t}se=We(se),re=We(re)}We=null}else We=null;pe!==null&&Ax(ve,he,pe,We,!1),De!==null&&At!==null&&Ax(ve,At,De,We,!0)}}e:{if(he=ue?Hc(ue):window,pe=he.nodeName&&he.nodeName.toLowerCase(),pe==="select"||pe==="input"&&he.type==="file")var pt=B4;else if(L4(he))if(H4)pt=vM;else{pt=SM;var Be=xM}else pe=he.nodeName,!pe||pe.toLowerCase()!=="input"||he.type!=="checkbox"&&he.type!=="radio"?ue&&om(ue.elementType)&&(pt=B4):pt=kM;if(pt&&(pt=pt(l,ue))){z4(ve,pt,f,xe);break e}Be&&Be(l,he,ue),l==="focusout"&&ue&&he.type==="number"&&ue.memoizedProps.value!=null&&lm(he,"number",he.value)}switch(Be=ue?Hc(ue):window,l){case"focusin":(L4(Be)||Be.contentEditable==="true")&&(io=Be,km=ue,Jc=null);break;case"focusout":Jc=km=io=null;break;case"mousedown":vm=!0;break;case"contextmenu":case"mouseup":case"dragend":vm=!1,K4(ve,f,xe);break;case"selectionchange":if(TM)break;case"keydown":case"keyup":K4(ve,f,xe)}var tt;if(ym)e:{switch(l){case"compositionstart":var ct="onCompositionStart";break e;case"compositionend":ct="onCompositionEnd";break e;case"compositionupdate":ct="onCompositionUpdate";break e}ct=void 0}else ro?V4(l,f)&&(ct="onCompositionEnd"):l==="keydown"&&f.keyCode===229&&(ct="onCompositionStart");ct&&(j4&&f.locale!=="ko"&&(ro||ct!=="onCompositionStart"?ct==="onCompositionEnd"&&ro&&(tt=$4()):(Ga=xe,hm="value"in Ga?Ga.value:Ga.textContent,ro=!0)),Be=cd(ue,ct),0<Be.length&&(ct=new _4(ct,l,null,f,xe),ve.push({event:ct,listeners:Be}),tt?ct.data=tt:(tt=I4(f),tt!==null&&(ct.data=tt)))),(tt=pM?gM(l,f):OM(l,f))&&(ct=cd(ue,"onBeforeInput"),0<ct.length&&(Be=new _4("onBeforeInput","beforeinput",null,f,xe),ve.push({event:Be,listeners:ct}),Be.data=tt)),o$(ve,l,ue,f,xe)}wx(ve,c)})}function wu(l,c,f){return{instance:l,listener:c,currentTarget:f}}function cd(l,c){for(var f=c+"Capture",g=[];l!==null;){var x=l,v=x.stateNode;if(x=x.tag,x!==5&&x!==26&&x!==27||v===null||(x=Fc(l,f),x!=null&&g.unshift(wu(l,x,v)),x=Fc(l,c),x!=null&&g.push(wu(l,x,v))),l.tag===3)return g;l=l.return}return[]}function d$(l){if(l===null)return null;do l=l.return;while(l&&l.tag!==5&&l.tag!==27);return l||null}function Ax(l,c,f,g,x){for(var v=c._reactName,Q=[];f!==null&&f!==g;){var z=f,J=z.alternate,ue=z.stateNode;if(z=z.tag,J!==null&&J===g)break;z!==5&&z!==26&&z!==27||ue===null||(J=ue,x?(ue=Fc(f,v),ue!=null&&Q.unshift(wu(f,ue,J))):x||(ue=Fc(f,v),ue!=null&&Q.push(wu(f,ue,J)))),f=f.return}Q.length!==0&&l.push({event:c,listeners:Q})}var h$=/\r\n?/g,m$=/\u0000|\uFFFD/g;function Px(l){return(typeof l=="string"?l:""+l).replace(h$,`
49
- `).replace(m$,"")}function Cx(l,c){return c=Px(c),Px(l)===c}function Tt(l,c,f,g,x,v){switch(f){case"children":typeof g=="string"?c==="body"||c==="textarea"&&g===""||eo(l,g):(typeof g=="number"||typeof g=="bigint")&&c!=="body"&&eo(l,""+g);break;case"className":hf(l,"class",g);break;case"tabIndex":hf(l,"tabindex",g);break;case"dir":case"role":case"viewBox":case"width":case"height":hf(l,f,g);break;case"style":C4(l,g,v);break;case"data":if(c!=="object"){hf(l,"data",g);break}case"src":case"href":if(g===""&&(c!=="a"||f!=="href")){l.removeAttribute(f);break}if(g==null||typeof g=="function"||typeof g=="symbol"||typeof g=="boolean"){l.removeAttribute(f);break}g=pf(""+g),l.setAttribute(f,g);break;case"action":case"formAction":if(typeof g=="function"){l.setAttribute(f,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof v=="function"&&(f==="formAction"?(c!=="input"&&Tt(l,c,"name",x.name,x,null),Tt(l,c,"formEncType",x.formEncType,x,null),Tt(l,c,"formMethod",x.formMethod,x,null),Tt(l,c,"formTarget",x.formTarget,x,null)):(Tt(l,c,"encType",x.encType,x,null),Tt(l,c,"method",x.method,x,null),Tt(l,c,"target",x.target,x,null)));if(g==null||typeof g=="symbol"||typeof g=="boolean"){l.removeAttribute(f);break}g=pf(""+g),l.setAttribute(f,g);break;case"onClick":g!=null&&(l.onclick=sa);break;case"onScroll":g!=null&&st("scroll",l);break;case"onScrollEnd":g!=null&&st("scrollend",l);break;case"dangerouslySetInnerHTML":if(g!=null){if(typeof g!="object"||!("__html"in g))throw Error(r(61));if(f=g.__html,f!=null){if(x.children!=null)throw Error(r(60));l.innerHTML=f}}break;case"multiple":l.multiple=g&&typeof g!="function"&&typeof g!="symbol";break;case"muted":l.muted=g&&typeof g!="function"&&typeof g!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(g==null||typeof g=="function"||typeof g=="boolean"||typeof g=="symbol"){l.removeAttribute("xlink:href");break}f=pf(""+g),l.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",f);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":g!=null&&typeof g!="function"&&typeof g!="symbol"?l.setAttribute(f,""+g):l.removeAttribute(f);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":g&&typeof g!="function"&&typeof g!="symbol"?l.setAttribute(f,""):l.removeAttribute(f);break;case"capture":case"download":g===!0?l.setAttribute(f,""):g!==!1&&g!=null&&typeof g!="function"&&typeof g!="symbol"?l.setAttribute(f,g):l.removeAttribute(f);break;case"cols":case"rows":case"size":case"span":g!=null&&typeof g!="function"&&typeof g!="symbol"&&!isNaN(g)&&1<=g?l.setAttribute(f,g):l.removeAttribute(f);break;case"rowSpan":case"start":g==null||typeof g=="function"||typeof g=="symbol"||isNaN(g)?l.removeAttribute(f):l.setAttribute(f,g);break;case"popover":st("beforetoggle",l),st("toggle",l),df(l,"popover",g);break;case"xlinkActuate":aa(l,"http://www.w3.org/1999/xlink","xlink:actuate",g);break;case"xlinkArcrole":aa(l,"http://www.w3.org/1999/xlink","xlink:arcrole",g);break;case"xlinkRole":aa(l,"http://www.w3.org/1999/xlink","xlink:role",g);break;case"xlinkShow":aa(l,"http://www.w3.org/1999/xlink","xlink:show",g);break;case"xlinkTitle":aa(l,"http://www.w3.org/1999/xlink","xlink:title",g);break;case"xlinkType":aa(l,"http://www.w3.org/1999/xlink","xlink:type",g);break;case"xmlBase":aa(l,"http://www.w3.org/XML/1998/namespace","xml:base",g);break;case"xmlLang":aa(l,"http://www.w3.org/XML/1998/namespace","xml:lang",g);break;case"xmlSpace":aa(l,"http://www.w3.org/XML/1998/namespace","xml:space",g);break;case"is":df(l,"is",g);break;case"innerText":case"textContent":break;default:(!(2<f.length)||f[0]!=="o"&&f[0]!=="O"||f[1]!=="n"&&f[1]!=="N")&&(f=zE.get(f)||f,df(l,f,g))}}function qp(l,c,f,g,x,v){switch(f){case"style":C4(l,g,v);break;case"dangerouslySetInnerHTML":if(g!=null){if(typeof g!="object"||!("__html"in g))throw Error(r(61));if(f=g.__html,f!=null){if(x.children!=null)throw Error(r(60));l.innerHTML=f}}break;case"children":typeof g=="string"?eo(l,g):(typeof g=="number"||typeof g=="bigint")&&eo(l,""+g);break;case"onScroll":g!=null&&st("scroll",l);break;case"onScrollEnd":g!=null&&st("scrollend",l);break;case"onClick":g!=null&&(l.onclick=sa);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!b4.hasOwnProperty(f))e:{if(f[0]==="o"&&f[1]==="n"&&(x=f.endsWith("Capture"),c=f.slice(2,x?f.length-7:void 0),v=l[Yn]||null,v=v!=null?v[f]:null,typeof v=="function"&&l.removeEventListener(c,v,x),typeof g=="function")){typeof v!="function"&&v!==null&&(f in l?l[f]=null:l.hasAttribute(f)&&l.removeAttribute(f)),l.addEventListener(c,g,x);break e}f in l?l[f]=g:g===!0?l.setAttribute(f,""):df(l,f,g)}}}function An(l,c,f){switch(c){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":st("error",l),st("load",l);var g=!1,x=!1,v;for(v in f)if(f.hasOwnProperty(v)){var Q=f[v];if(Q!=null)switch(v){case"src":g=!0;break;case"srcSet":x=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,c));default:Tt(l,c,v,Q,f,null)}}x&&Tt(l,c,"srcSet",f.srcSet,f,null),g&&Tt(l,c,"src",f.src,f,null);return;case"input":st("invalid",l);var z=v=Q=x=null,J=null,ue=null;for(g in f)if(f.hasOwnProperty(g)){var xe=f[g];if(xe!=null)switch(g){case"name":x=xe;break;case"type":Q=xe;break;case"checked":J=xe;break;case"defaultChecked":ue=xe;break;case"value":v=xe;break;case"defaultValue":z=xe;break;case"children":case"dangerouslySetInnerHTML":if(xe!=null)throw Error(r(137,c));break;default:Tt(l,c,g,xe,f,null)}}w4(l,v,z,J,ue,Q,x,!1);return;case"select":st("invalid",l),g=Q=v=null;for(x in f)if(f.hasOwnProperty(x)&&(z=f[x],z!=null))switch(x){case"value":v=z;break;case"defaultValue":Q=z;break;case"multiple":g=z;default:Tt(l,c,x,z,f,null)}c=v,f=Q,l.multiple=!!g,c!=null?Jl(l,!!g,c,!1):f!=null&&Jl(l,!!g,f,!0);return;case"textarea":st("invalid",l),v=x=g=null;for(Q in f)if(f.hasOwnProperty(Q)&&(z=f[Q],z!=null))switch(Q){case"value":g=z;break;case"defaultValue":x=z;break;case"children":v=z;break;case"dangerouslySetInnerHTML":if(z!=null)throw Error(r(91));break;default:Tt(l,c,Q,z,f,null)}A4(l,g,x,v);return;case"option":for(J in f)if(f.hasOwnProperty(J)&&(g=f[J],g!=null))switch(J){case"selected":l.selected=g&&typeof g!="function"&&typeof g!="symbol";break;default:Tt(l,c,J,g,f,null)}return;case"dialog":st("beforetoggle",l),st("toggle",l),st("cancel",l),st("close",l);break;case"iframe":case"object":st("load",l);break;case"video":case"audio":for(g=0;g<vu.length;g++)st(vu[g],l);break;case"image":st("error",l),st("load",l);break;case"details":st("toggle",l);break;case"embed":case"source":case"link":st("error",l),st("load",l);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(ue in f)if(f.hasOwnProperty(ue)&&(g=f[ue],g!=null))switch(ue){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,c));default:Tt(l,c,ue,g,f,null)}return;default:if(om(c)){for(xe in f)f.hasOwnProperty(xe)&&(g=f[xe],g!==void 0&&qp(l,c,xe,g,f,void 0));return}}for(z in f)f.hasOwnProperty(z)&&(g=f[z],g!=null&&Tt(l,c,z,g,f,null))}function p$(l,c,f,g){switch(c){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var x=null,v=null,Q=null,z=null,J=null,ue=null,xe=null;for(pe in f){var ve=f[pe];if(f.hasOwnProperty(pe)&&ve!=null)switch(pe){case"checked":break;case"value":break;case"defaultValue":J=ve;default:g.hasOwnProperty(pe)||Tt(l,c,pe,null,g,ve)}}for(var he in g){var pe=g[he];if(ve=f[he],g.hasOwnProperty(he)&&(pe!=null||ve!=null))switch(he){case"type":v=pe;break;case"name":x=pe;break;case"checked":ue=pe;break;case"defaultChecked":xe=pe;break;case"value":Q=pe;break;case"defaultValue":z=pe;break;case"children":case"dangerouslySetInnerHTML":if(pe!=null)throw Error(r(137,c));break;default:pe!==ve&&Tt(l,c,he,pe,g,ve)}}sm(l,Q,z,J,ue,xe,v,x);return;case"select":pe=Q=z=he=null;for(v in f)if(J=f[v],f.hasOwnProperty(v)&&J!=null)switch(v){case"value":break;case"multiple":pe=J;default:g.hasOwnProperty(v)||Tt(l,c,v,null,g,J)}for(x in g)if(v=g[x],J=f[x],g.hasOwnProperty(x)&&(v!=null||J!=null))switch(x){case"value":he=v;break;case"defaultValue":z=v;break;case"multiple":Q=v;default:v!==J&&Tt(l,c,x,v,g,J)}c=z,f=Q,g=pe,he!=null?Jl(l,!!f,he,!1):!!g!=!!f&&(c!=null?Jl(l,!!f,c,!0):Jl(l,!!f,f?[]:"",!1));return;case"textarea":pe=he=null;for(z in f)if(x=f[z],f.hasOwnProperty(z)&&x!=null&&!g.hasOwnProperty(z))switch(z){case"value":break;case"children":break;default:Tt(l,c,z,null,g,x)}for(Q in g)if(x=g[Q],v=f[Q],g.hasOwnProperty(Q)&&(x!=null||v!=null))switch(Q){case"value":he=x;break;case"defaultValue":pe=x;break;case"children":break;case"dangerouslySetInnerHTML":if(x!=null)throw Error(r(91));break;default:x!==v&&Tt(l,c,Q,x,g,v)}T4(l,he,pe);return;case"option":for(var De in f)if(he=f[De],f.hasOwnProperty(De)&&he!=null&&!g.hasOwnProperty(De))switch(De){case"selected":l.selected=!1;break;default:Tt(l,c,De,null,g,he)}for(J in g)if(he=g[J],pe=f[J],g.hasOwnProperty(J)&&he!==pe&&(he!=null||pe!=null))switch(J){case"selected":l.selected=he&&typeof he!="function"&&typeof he!="symbol";break;default:Tt(l,c,J,he,g,pe)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var We in f)he=f[We],f.hasOwnProperty(We)&&he!=null&&!g.hasOwnProperty(We)&&Tt(l,c,We,null,g,he);for(ue in g)if(he=g[ue],pe=f[ue],g.hasOwnProperty(ue)&&he!==pe&&(he!=null||pe!=null))switch(ue){case"children":case"dangerouslySetInnerHTML":if(he!=null)throw Error(r(137,c));break;default:Tt(l,c,ue,he,g,pe)}return;default:if(om(c)){for(var At in f)he=f[At],f.hasOwnProperty(At)&&he!==void 0&&!g.hasOwnProperty(At)&&qp(l,c,At,void 0,g,he);for(xe in g)he=g[xe],pe=f[xe],!g.hasOwnProperty(xe)||he===pe||he===void 0&&pe===void 0||qp(l,c,xe,he,g,pe);return}}for(var se in f)he=f[se],f.hasOwnProperty(se)&&he!=null&&!g.hasOwnProperty(se)&&Tt(l,c,se,null,g,he);for(ve in g)he=g[ve],pe=f[ve],!g.hasOwnProperty(ve)||he===pe||he==null&&pe==null||Tt(l,c,ve,he,g,pe)}function Ex(l){switch(l){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function g$(){if(typeof performance.getEntriesByType=="function"){for(var l=0,c=0,f=performance.getEntriesByType("resource"),g=0;g<f.length;g++){var x=f[g],v=x.transferSize,Q=x.initiatorType,z=x.duration;if(v&&z&&Ex(Q)){for(Q=0,z=x.responseEnd,g+=1;g<f.length;g++){var J=f[g],ue=J.startTime;if(ue>z)break;var xe=J.transferSize,ve=J.initiatorType;xe&&Ex(ve)&&(J=J.responseEnd,Q+=xe*(J<z?1:(z-ue)/(J-ue)))}if(--g,c+=8*(v+Q)/(x.duration/1e3),l++,10<l)break}}if(0<l)return c/l/1e6}return navigator.connection&&(l=navigator.connection.downlink,typeof l=="number")?l:5}var Yp=null,Wp=null;function ud(l){return l.nodeType===9?l:l.ownerDocument}function Mx(l){switch(l){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function $x(l,c){if(l===0)switch(c){case"svg":return 1;case"math":return 2;default:return 0}return l===1&&c==="foreignObject"?0:l}function Gp(l,c){return l==="textarea"||l==="noscript"||typeof c.children=="string"||typeof c.children=="number"||typeof c.children=="bigint"||typeof c.dangerouslySetInnerHTML=="object"&&c.dangerouslySetInnerHTML!==null&&c.dangerouslySetInnerHTML.__html!=null}var Kp=null;function O$(){var l=window.event;return l&&l.type==="popstate"?l===Kp?!1:(Kp=l,!0):(Kp=null,!1)}var Rx=typeof setTimeout=="function"?setTimeout:void 0,y$=typeof clearTimeout=="function"?clearTimeout:void 0,Qx=typeof Promise=="function"?Promise:void 0,b$=typeof queueMicrotask=="function"?queueMicrotask:typeof Qx<"u"?function(l){return Qx.resolve(null).then(l).catch(x$)}:Rx;function x$(l){setTimeout(function(){throw l})}function ms(l){return l==="head"}function _x(l,c){var f=c,g=0;do{var x=f.nextSibling;if(l.removeChild(f),x&&x.nodeType===8)if(f=x.data,f==="/$"||f==="/&"){if(g===0){l.removeChild(x),Ro(c);return}g--}else if(f==="$"||f==="$?"||f==="$~"||f==="$!"||f==="&")g++;else if(f==="html")Tu(l.ownerDocument.documentElement);else if(f==="head"){f=l.ownerDocument.head,Tu(f);for(var v=f.firstChild;v;){var Q=v.nextSibling,z=v.nodeName;v[Bc]||z==="SCRIPT"||z==="STYLE"||z==="LINK"&&v.rel.toLowerCase()==="stylesheet"||f.removeChild(v),v=Q}}else f==="body"&&Tu(l.ownerDocument.body);f=x}while(f);Ro(c)}function Nx(l,c){var f=l;l=0;do{var g=f.nextSibling;if(f.nodeType===1?c?(f._stashedDisplay=f.style.display,f.style.display="none"):(f.style.display=f._stashedDisplay||"",f.getAttribute("style")===""&&f.removeAttribute("style")):f.nodeType===3&&(c?(f._stashedText=f.nodeValue,f.nodeValue=""):f.nodeValue=f._stashedText||""),g&&g.nodeType===8)if(f=g.data,f==="/$"){if(l===0)break;l--}else f!=="$"&&f!=="$?"&&f!=="$~"&&f!=="$!"||l++;f=g}while(f)}function Jp(l){var c=l.firstChild;for(c&&c.nodeType===10&&(c=c.nextSibling);c;){var f=c;switch(c=c.nextSibling,f.nodeName){case"HTML":case"HEAD":case"BODY":Jp(f),im(f);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(f.rel.toLowerCase()==="stylesheet")continue}l.removeChild(f)}}function S$(l,c,f,g){for(;l.nodeType===1;){var x=f;if(l.nodeName.toLowerCase()!==c.toLowerCase()){if(!g&&(l.nodeName!=="INPUT"||l.type!=="hidden"))break}else if(g){if(!l[Bc])switch(c){case"meta":if(!l.hasAttribute("itemprop"))break;return l;case"link":if(v=l.getAttribute("rel"),v==="stylesheet"&&l.hasAttribute("data-precedence"))break;if(v!==x.rel||l.getAttribute("href")!==(x.href==null||x.href===""?null:x.href)||l.getAttribute("crossorigin")!==(x.crossOrigin==null?null:x.crossOrigin)||l.getAttribute("title")!==(x.title==null?null:x.title))break;return l;case"style":if(l.hasAttribute("data-precedence"))break;return l;case"script":if(v=l.getAttribute("src"),(v!==(x.src==null?null:x.src)||l.getAttribute("type")!==(x.type==null?null:x.type)||l.getAttribute("crossorigin")!==(x.crossOrigin==null?null:x.crossOrigin))&&v&&l.hasAttribute("async")&&!l.hasAttribute("itemprop"))break;return l;default:return l}}else if(c==="input"&&l.type==="hidden"){var v=x.name==null?null:""+x.name;if(x.type==="hidden"&&l.getAttribute("name")===v)return l}else return l;if(l=Fr(l.nextSibling),l===null)break}return null}function k$(l,c,f){if(c==="")return null;for(;l.nodeType!==3;)if((l.nodeType!==1||l.nodeName!=="INPUT"||l.type!=="hidden")&&!f||(l=Fr(l.nextSibling),l===null))return null;return l}function jx(l,c){for(;l.nodeType!==8;)if((l.nodeType!==1||l.nodeName!=="INPUT"||l.type!=="hidden")&&!c||(l=Fr(l.nextSibling),l===null))return null;return l}function eg(l){return l.data==="$?"||l.data==="$~"}function tg(l){return l.data==="$!"||l.data==="$?"&&l.ownerDocument.readyState!=="loading"}function v$(l,c){var f=l.ownerDocument;if(l.data==="$~")l._reactRetry=c;else if(l.data!=="$?"||f.readyState!=="loading")c();else{var g=function(){c(),f.removeEventListener("DOMContentLoaded",g)};f.addEventListener("DOMContentLoaded",g),l._reactRetry=g}}function Fr(l){for(;l!=null;l=l.nextSibling){var c=l.nodeType;if(c===1||c===3)break;if(c===8){if(c=l.data,c==="$"||c==="$!"||c==="$?"||c==="$~"||c==="&"||c==="F!"||c==="F")break;if(c==="/$"||c==="/&")return null}}return l}var ng=null;function Zx(l){l=l.nextSibling;for(var c=0;l;){if(l.nodeType===8){var f=l.data;if(f==="/$"||f==="/&"){if(c===0)return Fr(l.nextSibling);c--}else f!=="$"&&f!=="$!"&&f!=="$?"&&f!=="$~"&&f!=="&"||c++}l=l.nextSibling}return null}function Dx(l){l=l.previousSibling;for(var c=0;l;){if(l.nodeType===8){var f=l.data;if(f==="$"||f==="$!"||f==="$?"||f==="$~"||f==="&"){if(c===0)return l;c--}else f!=="/$"&&f!=="/&"||c++}l=l.previousSibling}return null}function Vx(l,c,f){switch(c=ud(f),l){case"html":if(l=c.documentElement,!l)throw Error(r(452));return l;case"head":if(l=c.head,!l)throw Error(r(453));return l;case"body":if(l=c.body,!l)throw Error(r(454));return l;default:throw Error(r(451))}}function Tu(l){for(var c=l.attributes;c.length;)l.removeAttributeNode(c[0]);im(l)}var Xr=new Map,Ix=new Set;function fd(l){return typeof l.getRootNode=="function"?l.getRootNode():l.nodeType===9?l:l.ownerDocument}var ka=W.d;W.d={f:w$,r:T$,D:A$,C:P$,L:C$,m:E$,X:$$,S:M$,M:R$};function w$(){var l=ka.f(),c=nd();return l||c}function T$(l){var c=Wl(l);c!==null&&c.tag===5&&c.type==="form"?rb(c):ka.r(l)}var Eo=typeof document>"u"?null:document;function Lx(l,c,f){var g=Eo;if(g&&typeof c=="string"&&c){var x=Dr(c);x='link[rel="'+l+'"][href="'+x+'"]',typeof f=="string"&&(x+='[crossorigin="'+f+'"]'),Ix.has(x)||(Ix.add(x),l={rel:l,crossOrigin:f,href:c},g.querySelector(x)===null&&(c=g.createElement("link"),An(c,"link",l),mn(c),g.head.appendChild(c)))}}function A$(l){ka.D(l),Lx("dns-prefetch",l,null)}function P$(l,c){ka.C(l,c),Lx("preconnect",l,c)}function C$(l,c,f){ka.L(l,c,f);var g=Eo;if(g&&l&&c){var x='link[rel="preload"][as="'+Dr(c)+'"]';c==="image"&&f&&f.imageSrcSet?(x+='[imagesrcset="'+Dr(f.imageSrcSet)+'"]',typeof f.imageSizes=="string"&&(x+='[imagesizes="'+Dr(f.imageSizes)+'"]')):x+='[href="'+Dr(l)+'"]';var v=x;switch(c){case"style":v=Mo(l);break;case"script":v=$o(l)}Xr.has(v)||(l=p({rel:"preload",href:c==="image"&&f&&f.imageSrcSet?void 0:l,as:c},f),Xr.set(v,l),g.querySelector(x)!==null||c==="style"&&g.querySelector(Au(v))||c==="script"&&g.querySelector(Pu(v))||(c=g.createElement("link"),An(c,"link",l),mn(c),g.head.appendChild(c)))}}function E$(l,c){ka.m(l,c);var f=Eo;if(f&&l){var g=c&&typeof c.as=="string"?c.as:"script",x='link[rel="modulepreload"][as="'+Dr(g)+'"][href="'+Dr(l)+'"]',v=x;switch(g){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":v=$o(l)}if(!Xr.has(v)&&(l=p({rel:"modulepreload",href:l},c),Xr.set(v,l),f.querySelector(x)===null)){switch(g){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(f.querySelector(Pu(v)))return}g=f.createElement("link"),An(g,"link",l),mn(g),f.head.appendChild(g)}}}function M$(l,c,f){ka.S(l,c,f);var g=Eo;if(g&&l){var x=Gl(g).hoistableStyles,v=Mo(l);c=c||"default";var Q=x.get(v);if(!Q){var z={loading:0,preload:null};if(Q=g.querySelector(Au(v)))z.loading=5;else{l=p({rel:"stylesheet",href:l,"data-precedence":c},f),(f=Xr.get(v))&&rg(l,f);var J=Q=g.createElement("link");mn(J),An(J,"link",l),J._p=new Promise(function(ue,xe){J.onload=ue,J.onerror=xe}),J.addEventListener("load",function(){z.loading|=1}),J.addEventListener("error",function(){z.loading|=2}),z.loading|=4,dd(Q,c,g)}Q={type:"stylesheet",instance:Q,count:1,state:z},x.set(v,Q)}}}function $$(l,c){ka.X(l,c);var f=Eo;if(f&&l){var g=Gl(f).hoistableScripts,x=$o(l),v=g.get(x);v||(v=f.querySelector(Pu(x)),v||(l=p({src:l,async:!0},c),(c=Xr.get(x))&&ig(l,c),v=f.createElement("script"),mn(v),An(v,"link",l),f.head.appendChild(v)),v={type:"script",instance:v,count:1,state:null},g.set(x,v))}}function R$(l,c){ka.M(l,c);var f=Eo;if(f&&l){var g=Gl(f).hoistableScripts,x=$o(l),v=g.get(x);v||(v=f.querySelector(Pu(x)),v||(l=p({src:l,async:!0,type:"module"},c),(c=Xr.get(x))&&ig(l,c),v=f.createElement("script"),mn(v),An(v,"link",l),f.head.appendChild(v)),v={type:"script",instance:v,count:1,state:null},g.set(x,v))}}function zx(l,c,f,g){var x=(x=ae.current)?fd(x):null;if(!x)throw Error(r(446));switch(l){case"meta":case"title":return null;case"style":return typeof f.precedence=="string"&&typeof f.href=="string"?(c=Mo(f.href),f=Gl(x).hoistableStyles,g=f.get(c),g||(g={type:"style",instance:null,count:0,state:null},f.set(c,g)),g):{type:"void",instance:null,count:0,state:null};case"link":if(f.rel==="stylesheet"&&typeof f.href=="string"&&typeof f.precedence=="string"){l=Mo(f.href);var v=Gl(x).hoistableStyles,Q=v.get(l);if(Q||(x=x.ownerDocument||x,Q={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},v.set(l,Q),(v=x.querySelector(Au(l)))&&!v._p&&(Q.instance=v,Q.state.loading=5),Xr.has(l)||(f={rel:"preload",as:"style",href:f.href,crossOrigin:f.crossOrigin,integrity:f.integrity,media:f.media,hrefLang:f.hrefLang,referrerPolicy:f.referrerPolicy},Xr.set(l,f),v||Q$(x,l,f,Q.state))),c&&g===null)throw Error(r(528,""));return Q}if(c&&g!==null)throw Error(r(529,""));return null;case"script":return c=f.async,f=f.src,typeof f=="string"&&c&&typeof c!="function"&&typeof c!="symbol"?(c=$o(f),f=Gl(x).hoistableScripts,g=f.get(c),g||(g={type:"script",instance:null,count:0,state:null},f.set(c,g)),g):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,l))}}function Mo(l){return'href="'+Dr(l)+'"'}function Au(l){return'link[rel="stylesheet"]['+l+"]"}function Bx(l){return p({},l,{"data-precedence":l.precedence,precedence:null})}function Q$(l,c,f,g){l.querySelector('link[rel="preload"][as="style"]['+c+"]")?g.loading=1:(c=l.createElement("link"),g.preload=c,c.addEventListener("load",function(){return g.loading|=1}),c.addEventListener("error",function(){return g.loading|=2}),An(c,"link",f),mn(c),l.head.appendChild(c))}function $o(l){return'[src="'+Dr(l)+'"]'}function Pu(l){return"script[async]"+l}function Hx(l,c,f){if(c.count++,c.instance===null)switch(c.type){case"style":var g=l.querySelector('style[data-href~="'+Dr(f.href)+'"]');if(g)return c.instance=g,mn(g),g;var x=p({},f,{"data-href":f.href,"data-precedence":f.precedence,href:null,precedence:null});return g=(l.ownerDocument||l).createElement("style"),mn(g),An(g,"style",x),dd(g,f.precedence,l),c.instance=g;case"stylesheet":x=Mo(f.href);var v=l.querySelector(Au(x));if(v)return c.state.loading|=4,c.instance=v,mn(v),v;g=Bx(f),(x=Xr.get(x))&&rg(g,x),v=(l.ownerDocument||l).createElement("link"),mn(v);var Q=v;return Q._p=new Promise(function(z,J){Q.onload=z,Q.onerror=J}),An(v,"link",g),c.state.loading|=4,dd(v,f.precedence,l),c.instance=v;case"script":return v=$o(f.src),(x=l.querySelector(Pu(v)))?(c.instance=x,mn(x),x):(g=f,(x=Xr.get(v))&&(g=p({},f),ig(g,x)),l=l.ownerDocument||l,x=l.createElement("script"),mn(x),An(x,"link",g),l.head.appendChild(x),c.instance=x);case"void":return null;default:throw Error(r(443,c.type))}else c.type==="stylesheet"&&(c.state.loading&4)===0&&(g=c.instance,c.state.loading|=4,dd(g,f.precedence,l));return c.instance}function dd(l,c,f){for(var g=f.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),x=g.length?g[g.length-1]:null,v=x,Q=0;Q<g.length;Q++){var z=g[Q];if(z.dataset.precedence===c)v=z;else if(v!==x)break}v?v.parentNode.insertBefore(l,v.nextSibling):(c=f.nodeType===9?f.head:f,c.insertBefore(l,c.firstChild))}function rg(l,c){l.crossOrigin==null&&(l.crossOrigin=c.crossOrigin),l.referrerPolicy==null&&(l.referrerPolicy=c.referrerPolicy),l.title==null&&(l.title=c.title)}function ig(l,c){l.crossOrigin==null&&(l.crossOrigin=c.crossOrigin),l.referrerPolicy==null&&(l.referrerPolicy=c.referrerPolicy),l.integrity==null&&(l.integrity=c.integrity)}var hd=null;function Fx(l,c,f){if(hd===null){var g=new Map,x=hd=new Map;x.set(f,g)}else x=hd,g=x.get(f),g||(g=new Map,x.set(f,g));if(g.has(l))return g;for(g.set(l,null),f=f.getElementsByTagName(l),x=0;x<f.length;x++){var v=f[x];if(!(v[Bc]||v[kn]||l==="link"&&v.getAttribute("rel")==="stylesheet")&&v.namespaceURI!=="http://www.w3.org/2000/svg"){var Q=v.getAttribute(c)||"";Q=l+Q;var z=g.get(Q);z?z.push(v):g.set(Q,[v])}}return g}function Xx(l,c,f){l=l.ownerDocument||l,l.head.insertBefore(f,c==="title"?l.querySelector("head > title"):null)}function _$(l,c,f){if(f===1||c.itemProp!=null)return!1;switch(l){case"meta":case"title":return!0;case"style":if(typeof c.precedence!="string"||typeof c.href!="string"||c.href==="")break;return!0;case"link":if(typeof c.rel!="string"||typeof c.href!="string"||c.href===""||c.onLoad||c.onError)break;switch(c.rel){case"stylesheet":return l=c.disabled,typeof c.precedence=="string"&&l==null;default:return!0}case"script":if(c.async&&typeof c.async!="function"&&typeof c.async!="symbol"&&!c.onLoad&&!c.onError&&c.src&&typeof c.src=="string")return!0}return!1}function Ux(l){return!(l.type==="stylesheet"&&(l.state.loading&3)===0)}function N$(l,c,f,g){if(f.type==="stylesheet"&&(typeof g.media!="string"||matchMedia(g.media).matches!==!1)&&(f.state.loading&4)===0){if(f.instance===null){var x=Mo(g.href),v=c.querySelector(Au(x));if(v){c=v._p,c!==null&&typeof c=="object"&&typeof c.then=="function"&&(l.count++,l=md.bind(l),c.then(l,l)),f.state.loading|=4,f.instance=v,mn(v);return}v=c.ownerDocument||c,g=Bx(g),(x=Xr.get(x))&&rg(g,x),v=v.createElement("link"),mn(v);var Q=v;Q._p=new Promise(function(z,J){Q.onload=z,Q.onerror=J}),An(v,"link",g),f.instance=v}l.stylesheets===null&&(l.stylesheets=new Map),l.stylesheets.set(f,c),(c=f.state.preload)&&(f.state.loading&3)===0&&(l.count++,f=md.bind(l),c.addEventListener("load",f),c.addEventListener("error",f))}}var ag=0;function j$(l,c){return l.stylesheets&&l.count===0&&gd(l,l.stylesheets),0<l.count||0<l.imgCount?function(f){var g=setTimeout(function(){if(l.stylesheets&&gd(l,l.stylesheets),l.unsuspend){var v=l.unsuspend;l.unsuspend=null,v()}},6e4+c);0<l.imgBytes&&ag===0&&(ag=62500*g$());var x=setTimeout(function(){if(l.waitingForImages=!1,l.count===0&&(l.stylesheets&&gd(l,l.stylesheets),l.unsuspend)){var v=l.unsuspend;l.unsuspend=null,v()}},(l.imgBytes>ag?50:800)+c);return l.unsuspend=f,function(){l.unsuspend=null,clearTimeout(g),clearTimeout(x)}}:null}function md(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)gd(this,this.stylesheets);else if(this.unsuspend){var l=this.unsuspend;this.unsuspend=null,l()}}}var pd=null;function gd(l,c){l.stylesheets=null,l.unsuspend!==null&&(l.count++,pd=new Map,c.forEach(Z$,l),pd=null,md.call(l))}function Z$(l,c){if(!(c.state.loading&4)){var f=pd.get(l);if(f)var g=f.get(null);else{f=new Map,pd.set(l,f);for(var x=l.querySelectorAll("link[data-precedence],style[data-precedence]"),v=0;v<x.length;v++){var Q=x[v];(Q.nodeName==="LINK"||Q.getAttribute("media")!=="not all")&&(f.set(Q.dataset.precedence,Q),g=Q)}g&&f.set(null,g)}x=c.instance,Q=x.getAttribute("data-precedence"),v=f.get(Q)||g,v===g&&f.set(null,x),f.set(Q,x),this.count++,g=md.bind(this),x.addEventListener("load",g),x.addEventListener("error",g),v?v.parentNode.insertBefore(x,v.nextSibling):(l=l.nodeType===9?l.head:l,l.insertBefore(x,l.firstChild)),c.state.loading|=4}}var Cu={$$typeof:E,Provider:null,Consumer:null,_currentValue:ee,_currentValue2:ee,_threadCount:0};function D$(l,c,f,g,x,v,Q,z,J){this.tag=1,this.containerInfo=l,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ai(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ai(0),this.hiddenUpdates=Ai(null),this.identifierPrefix=g,this.onUncaughtError=x,this.onCaughtError=v,this.onRecoverableError=Q,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=J,this.incompleteTransitions=new Map}function qx(l,c,f,g,x,v,Q,z,J,ue,xe,ve){return l=new D$(l,c,f,Q,J,ue,xe,ve,z),c=1,v===!0&&(c|=24),v=Or(3,null,null,c),l.current=v,v.stateNode=l,c=Dm(),c.refCount++,l.pooledCache=c,c.refCount++,v.memoizedState={element:g,isDehydrated:f,cache:c},zm(v),l}function Yx(l){return l?(l=lo,l):lo}function Wx(l,c,f,g,x,v){x=Yx(x),g.context===null?g.context=x:g.pendingContext=x,g=rs(c),g.payload={element:f},v=v===void 0?null:v,v!==null&&(g.callback=v),f=is(l,g,c),f!==null&&(tr(f,l,c),su(f,l,c))}function Gx(l,c){if(l=l.memoizedState,l!==null&&l.dehydrated!==null){var f=l.retryLane;l.retryLane=f!==0&&f<c?f:c}}function sg(l,c){Gx(l,c),(l=l.alternate)&&Gx(l,c)}function Kx(l){if(l.tag===13||l.tag===31){var c=Ys(l,67108864);c!==null&&tr(c,l,67108864),sg(l,67108864)}}function Jx(l){if(l.tag===13||l.tag===31){var c=kr();c=un(c);var f=Ys(l,c);f!==null&&tr(f,l,c),sg(l,c)}}var Od=!0;function V$(l,c,f,g){var x=L.T;L.T=null;var v=W.p;try{W.p=2,lg(l,c,f,g)}finally{W.p=v,L.T=x}}function I$(l,c,f,g){var x=L.T;L.T=null;var v=W.p;try{W.p=8,lg(l,c,f,g)}finally{W.p=v,L.T=x}}function lg(l,c,f,g){if(Od){var x=og(g);if(x===null)Up(l,c,g,yd,f),t3(l,g);else if(z$(x,l,c,f,g))g.stopPropagation();else if(t3(l,g),c&4&&-1<L$.indexOf(l)){for(;x!==null;){var v=Wl(x);if(v!==null)switch(v.tag){case 3:if(v=v.stateNode,v.current.memoizedState.isDehydrated){var Q=hn(v.pendingLanes);if(Q!==0){var z=v;for(z.pendingLanes|=2,z.entangledLanes|=2;Q;){var J=1<<31-Mt(Q);z.entanglements[1]|=J,Q&=~J}Mi(v),(yt&6)===0&&(ed=Pe()+500,ku(0))}}break;case 31:case 13:z=Ys(v,2),z!==null&&tr(z,v,2),nd(),sg(v,2)}if(v=og(g),v===null&&Up(l,c,g,yd,f),v===x)break;x=v}x!==null&&g.stopPropagation()}else Up(l,c,g,null,f)}}function og(l){return l=um(l),cg(l)}var yd=null;function cg(l){if(yd=null,l=Yl(l),l!==null){var c=a(l);if(c===null)l=null;else{var f=c.tag;if(f===13){if(l=s(c),l!==null)return l;l=null}else if(f===31){if(l=o(c),l!==null)return l;l=null}else if(f===3){if(c.stateNode.current.memoizedState.isDehydrated)return c.tag===3?c.stateNode.containerInfo:null;l=null}else c!==l&&(l=null)}}return yd=l,null}function e3(l){switch(l){case"beforetoggle":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"toggle":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 2;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"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Ve()){case Ye:return 2;case _e:return 8;case Fe:case _t:return 32;case qt:return 268435456;default:return 32}default:return 32}}var ug=!1,ps=null,gs=null,Os=null,Eu=new Map,Mu=new Map,ys=[],L$="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".split(" ");function t3(l,c){switch(l){case"focusin":case"focusout":ps=null;break;case"dragenter":case"dragleave":gs=null;break;case"mouseover":case"mouseout":Os=null;break;case"pointerover":case"pointerout":Eu.delete(c.pointerId);break;case"gotpointercapture":case"lostpointercapture":Mu.delete(c.pointerId)}}function $u(l,c,f,g,x,v){return l===null||l.nativeEvent!==v?(l={blockedOn:c,domEventName:f,eventSystemFlags:g,nativeEvent:v,targetContainers:[x]},c!==null&&(c=Wl(c),c!==null&&Kx(c)),l):(l.eventSystemFlags|=g,c=l.targetContainers,x!==null&&c.indexOf(x)===-1&&c.push(x),l)}function z$(l,c,f,g,x){switch(c){case"focusin":return ps=$u(ps,l,c,f,g,x),!0;case"dragenter":return gs=$u(gs,l,c,f,g,x),!0;case"mouseover":return Os=$u(Os,l,c,f,g,x),!0;case"pointerover":var v=x.pointerId;return Eu.set(v,$u(Eu.get(v)||null,l,c,f,g,x)),!0;case"gotpointercapture":return v=x.pointerId,Mu.set(v,$u(Mu.get(v)||null,l,c,f,g,x)),!0}return!1}function n3(l){var c=Yl(l.target);if(c!==null){var f=a(c);if(f!==null){if(c=f.tag,c===13){if(c=s(f),c!==null){l.blockedOn=c,Ya(l.priority,function(){Jx(f)});return}}else if(c===31){if(c=o(f),c!==null){l.blockedOn=c,Ya(l.priority,function(){Jx(f)});return}}else if(c===3&&f.stateNode.current.memoizedState.isDehydrated){l.blockedOn=f.tag===3?f.stateNode.containerInfo:null;return}}}l.blockedOn=null}function bd(l){if(l.blockedOn!==null)return!1;for(var c=l.targetContainers;0<c.length;){var f=og(l.nativeEvent);if(f===null){f=l.nativeEvent;var g=new f.constructor(f.type,f);cm=g,f.target.dispatchEvent(g),cm=null}else return c=Wl(f),c!==null&&Kx(c),l.blockedOn=f,!1;c.shift()}return!0}function r3(l,c,f){bd(l)&&f.delete(c)}function B$(){ug=!1,ps!==null&&bd(ps)&&(ps=null),gs!==null&&bd(gs)&&(gs=null),Os!==null&&bd(Os)&&(Os=null),Eu.forEach(r3),Mu.forEach(r3)}function xd(l,c){l.blockedOn===c&&(l.blockedOn=null,ug||(ug=!0,n.unstable_scheduleCallback(n.unstable_NormalPriority,B$)))}var Sd=null;function i3(l){Sd!==l&&(Sd=l,n.unstable_scheduleCallback(n.unstable_NormalPriority,function(){Sd===l&&(Sd=null);for(var c=0;c<l.length;c+=3){var f=l[c],g=l[c+1],x=l[c+2];if(typeof g!="function"){if(cg(g||f)===null)continue;break}var v=Wl(f);v!==null&&(l.splice(c,3),c-=3,op(v,{pending:!0,data:x,method:f.method,action:g},g,x))}}))}function Ro(l){function c(J){return xd(J,l)}ps!==null&&xd(ps,l),gs!==null&&xd(gs,l),Os!==null&&xd(Os,l),Eu.forEach(c),Mu.forEach(c);for(var f=0;f<ys.length;f++){var g=ys[f];g.blockedOn===l&&(g.blockedOn=null)}for(;0<ys.length&&(f=ys[0],f.blockedOn===null);)n3(f),f.blockedOn===null&&ys.shift();if(f=(l.ownerDocument||l).$$reactFormReplay,f!=null)for(g=0;g<f.length;g+=3){var x=f[g],v=f[g+1],Q=x[Yn]||null;if(typeof v=="function")Q||i3(f);else if(Q){var z=null;if(v&&v.hasAttribute("formAction")){if(x=v,Q=v[Yn]||null)z=Q.formAction;else if(cg(x)!==null)continue}else z=Q.action;typeof z=="function"?f[g+1]=z:(f.splice(g,3),g-=3),i3(f)}}}function a3(){function l(v){v.canIntercept&&v.info==="react-transition"&&v.intercept({handler:function(){return new Promise(function(Q){return x=Q})},focusReset:"manual",scroll:"manual"})}function c(){x!==null&&(x(),x=null),g||setTimeout(f,20)}function f(){if(!g&&!navigation.transition){var v=navigation.currentEntry;v&&v.url!=null&&navigation.navigate(v.url,{state:v.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var g=!1,x=null;return navigation.addEventListener("navigate",l),navigation.addEventListener("navigatesuccess",c),navigation.addEventListener("navigateerror",c),setTimeout(f,100),function(){g=!0,navigation.removeEventListener("navigate",l),navigation.removeEventListener("navigatesuccess",c),navigation.removeEventListener("navigateerror",c),x!==null&&(x(),x=null)}}}function fg(l){this._internalRoot=l}kd.prototype.render=fg.prototype.render=function(l){var c=this._internalRoot;if(c===null)throw Error(r(409));var f=c.current,g=kr();Wx(f,g,l,c,null,null)},kd.prototype.unmount=fg.prototype.unmount=function(){var l=this._internalRoot;if(l!==null){this._internalRoot=null;var c=l.containerInfo;Wx(l.current,2,null,l,null,null),nd(),c[ql]=null}};function kd(l){this._internalRoot=l}kd.prototype.unstable_scheduleHydration=function(l){if(l){var c=zc();l={blockedOn:null,target:l,priority:c};for(var f=0;f<ys.length&&c!==0&&c<ys[f].priority;f++);ys.splice(f,0,l),f===0&&n3(l)}};var s3=e.version;if(s3!=="19.2.6")throw Error(r(527,s3,"19.2.6"));W.findDOMNode=function(l){var c=l._reactInternals;if(c===void 0)throw typeof l.render=="function"?Error(r(188)):(l=Object.keys(l).join(","),Error(r(268,l)));return l=d(c),l=l!==null?m(l):null,l=l===null?null:l.stateNode,l};var H$={bundleType:0,version:"19.2.6",rendererPackageName:"react-dom",currentDispatcherRef:L,reconcilerVersion:"19.2.6"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var vd=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!vd.isDisabled&&vd.supportsFiber)try{mr=vd.inject(H$),Yt=vd}catch{}}return Qu.createRoot=function(l,c){if(!i(l))throw Error(r(299));var f=!1,g="",x=hb,v=mb,Q=pb;return c!=null&&(c.unstable_strictMode===!0&&(f=!0),c.identifierPrefix!==void 0&&(g=c.identifierPrefix),c.onUncaughtError!==void 0&&(x=c.onUncaughtError),c.onCaughtError!==void 0&&(v=c.onCaughtError),c.onRecoverableError!==void 0&&(Q=c.onRecoverableError)),c=qx(l,1,!1,null,null,f,g,null,x,v,Q,a3),l[ql]=c.current,Xp(l),new fg(c)},Qu.hydrateRoot=function(l,c,f){if(!i(l))throw Error(r(299));var g=!1,x="",v=hb,Q=mb,z=pb,J=null;return f!=null&&(f.unstable_strictMode===!0&&(g=!0),f.identifierPrefix!==void 0&&(x=f.identifierPrefix),f.onUncaughtError!==void 0&&(v=f.onUncaughtError),f.onCaughtError!==void 0&&(Q=f.onCaughtError),f.onRecoverableError!==void 0&&(z=f.onRecoverableError),f.formState!==void 0&&(J=f.formState)),c=qx(l,1,!0,c,f??null,g,x,J,v,Q,z,a3),c.context=Yx(null),f=c.current,g=kr(),g=un(g),x=rs(g),x.callback=null,is(f,x,g),f=g,c.current.lanes=f,je(c,f),Mi(c),l[ql]=c.current,Xp(l),new kd(c)},Qu.version="19.2.6",Qu}var g3;function eR(){if(g3)return mg.exports;g3=1;function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),mg.exports=J$(),mg.exports}var tR=eR();function nR(n){const[e,t]=h.useState([]),r=h.useRef(null),i=h.useRef(null),a=h.useCallback(async()=>{if(n)try{const d=await fetch(`/api/projects/${n}/renders`);if(!d.ok)return;const m=await d.json();Array.isArray(m.renders)&&t(p=>{const O=new Set(p.map(S=>S.id)),b=m.renders.filter(S=>!O.has(S.id)).map(S=>({id:S.id,status:S.status==="failed"?"failed":"complete",progress:100,filename:S.filename,createdAt:S.createdAt,durationMs:S.durationMs}));return[...p,...b]})}catch{}},[n]);h.useEffect(()=>{a()},[a]);const s=h.useCallback(async(d={})=>{if(!n)return;const m=d.fps??30,p=d.quality??"standard",O=d.format??"mp4",b=d.resolution,S=d.composition,k=Date.now(),T={fps:m,quality:p,format:O};b&&b!=="auto"&&(T.resolution=b),S&&(T.composition=S);let w;try{w=await fetch(`/api/projects/${n}/render`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(T)})}catch{const M={id:crypto.randomUUID(),status:"failed",progress:0,error:"Could not reach render server. Use `hyperframes render` from the CLI instead.",filename:"Export failed",createdAt:k};t(R=>[...R,M]);return}if(!w.ok){const M={id:crypto.randomUUID(),status:"failed",progress:0,error:`Server error (${w.status}). Check the terminal for details.`,filename:"Export failed",createdAt:k};t(R=>[...R,M]);return}const{jobId:A}=await w.json(),C={mp4:".mp4",webm:".webm",mov:".mov"}[O]??".mp4",P={id:A,status:"rendering",progress:0,filename:`${A}${C}`,createdAt:k};t(M=>[...M,P]),i.current=A;const $=new EventSource(`/api/render/${A}/progress`);return r.current=$,$.addEventListener("progress",M=>{try{const R=JSON.parse(M.data);t(N=>N.map(Z=>Z.id===A?{...Z,progress:R.progress??Z.progress,stage:R.stage??R.message??Z.stage,status:R.status==="complete"?"complete":R.status==="failed"?"failed":Z.status,durationMs:R.status==="complete"?Date.now()-k:void 0,error:R.error??Z.error}:Z)),(R.status==="complete"||R.status==="failed")&&($.close(),i.current=null)}catch{}}),$.onerror=()=>{$.close(),t(M=>M.map(R=>R.id===A&&R.status==="rendering"?{...R,status:"failed",error:"Connection lost. Is the render server running?"}:R)),i.current=null},A},[n]),o=h.useCallback(async d=>{try{await fetch(`/api/render/${d}`,{method:"DELETE"})}catch{}t(m=>m.filter(p=>p.id!==d))},[]),u=h.useCallback(()=>{t(d=>d.filter(m=>m.status==="rendering"))},[]);return h.useEffect(()=>()=>{var d;(d=r.current)==null||d.close(),r.current=null},[n]),{jobs:e,startRender:s,deleteRender:o,clearCompleted:u,isRendering:e.some(d=>d.status==="rendering")}}const rR="modulepreload",iR=function(n){return"/"+n},O3={},aR=function(e,t,r){let i=Promise.resolve();if(t&&t.length>0){let s=function(d){return Promise.all(d.map(m=>Promise.resolve(m).then(p=>({status:"fulfilled",value:p}),p=>({status:"rejected",reason:p}))))};document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),u=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));i=s(t.map(d=>{if(d=iR(d),d in O3)return;O3[d]=!0;const m=d.endsWith(".css"),p=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${d}"]${p}`))return;const O=document.createElement("link");if(O.rel=m?"stylesheet":rR,m||(O.as="script"),O.crossOrigin="",O.href=d,u&&O.setAttribute("nonce",u),document.head.appendChild(O),m)return new Promise((b,S)=>{O.addEventListener("load",b),O.addEventListener("error",()=>S(new Error(`Unable to preload CSS for ${d}`)))})}))}function a(s){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s}return i.then(s=>{for(const o of s||[])o.status==="rejected"&&a(o.reason);return e().catch(a)})};function sR(n){if(typeof n!="object"||n===null)return!0;const e=n;return e.isLoaded===!0||typeof e.totalFrames=="number"&&e.totalFrames>0}function zt(n){h.useEffect(n,[])}const $w={primary:["bg-white text-neutral-950 font-medium","shadow-btn-primary","hover:bg-neutral-200","active:scale-[0.97]"].join(" "),secondary:["bg-transparent text-neutral-300 font-medium","border border-border","hover:bg-surface-hover hover:text-white hover:border-border-strong","active:scale-[0.98]"].join(" "),danger:["bg-accent-red text-white font-medium","hover:bg-red-600","active:scale-[0.97]"].join(" "),ghost:["bg-transparent text-neutral-400","hover:bg-surface-hover hover:text-white","active:scale-[0.98]"].join(" ")},lR={sm:"h-7 px-2.5 text-xs gap-1.5 rounded-button",md:"h-8 px-3 text-sm gap-1.5 rounded-button",lg:"h-9 px-4 text-base gap-2 rounded-button"},oR=h.forwardRef(({variant:n="secondary",size:e="md",loading:t,icon:r,children:i,className:a="",disabled:s,...o},u)=>y.jsxs("button",{ref:u,disabled:s||t,className:["inline-flex items-center justify-center","transition-all duration-press ease-standard","disabled:opacity-40 disabled:pointer-events-none","select-none cursor-pointer",$w[n],lR[e],a].join(" "),...o,children:[t?y.jsxs("svg",{className:"animate-spin h-3.5 w-3.5",viewBox:"0 0 24 24",fill:"none",children:[y.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),y.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}):r?y.jsx("span",{className:"flex-shrink-0",children:r}):null,i&&y.jsx("span",{children:i})]}));oR.displayName="Button";const cR={sm:"min-w-7 min-h-7 rounded-button",md:"min-w-8 min-h-8 rounded-button",lg:"min-w-9 min-h-9 rounded-button"},uR=h.forwardRef(({icon:n,size:e="md",variant:t="ghost",className:r="",...i},a)=>y.jsx("button",{ref:a,className:["inline-flex items-center justify-center","transition-all duration-press ease-standard","disabled:opacity-40 disabled:pointer-events-none","select-none cursor-pointer",$w[t],cR[e],r].join(" "),...i,children:n}));uR.displayName="IconButton";function y3({title:n,detail:e,mono:t,size:r=64,progress:i}){const a=typeof i=="number"&&Number.isFinite(i)?Math.min(1,Math.max(0,i)):void 0,s=Math.round(r*1.16);return y.jsxs("div",{className:"hf-loader",draggable:!1,children:[y.jsx("div",{className:"hf-loader-mark-frame",style:{width:s,height:s},draggable:!1,children:y.jsxs("svg",{className:"hf-loader-mark",width:r,height:r,viewBox:"0 0 100 100",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[y.jsx("g",{className:"hf-loader-mark__mark",transform:"translate(50 50)",children:y.jsx("g",{className:"hf-loader-mark__core",transform:"scale(1)",opacity:".92",children:y.jsxs("g",{transform:"translate(-50 -50)",children:[y.jsx("path",{d:"M10.1851 57.8021L33.1145 73.8313C36.2202 75.9978 41.5173 73.5433 42.4816 69.4984L51.7611 30.4271C52.7253 26.3822 48.5802 23.9277 44.4602 26.0942L13.917 42.1235C6.96677 45.7676 4.97564 54.1579 10.1851 57.8021Z",fill:"url(#hf-loader-grad-left)"}),y.jsx("path",{d:"M87.5129 57.5141L56.9696 73.5433C52.8371 75.7098 48.7046 73.2553 49.6688 69.2104L58.9483 30.1391C59.9125 26.0942 65.2097 23.6397 68.3154 25.8062L91.2447 41.8354C96.4668 45.4796 94.4631 53.8699 87.5129 57.5141Z",fill:"url(#hf-loader-grad-right)"})]})})}),y.jsxs("defs",{children:[y.jsxs("linearGradient",{id:"hf-loader-grad-left",x1:"48.5676",y1:"25",x2:"44.7804",y2:"71.9384",gradientUnits:"userSpaceOnUse",children:[y.jsx("stop",{stopColor:"#06E3FA"}),y.jsx("stop",{offset:"1",stopColor:"#4FDB5E"})]}),y.jsxs("linearGradient",{id:"hf-loader-grad-right",x1:"54.8282",y1:"73.8392",x2:"72.0989",y2:"32.8932",gradientUnits:"userSpaceOnUse",children:[y.jsx("stop",{stopColor:"#06E3FA"}),y.jsx("stop",{offset:"1",stopColor:"#4FDB5E"})]})]})]})}),y.jsx("div",{className:"hf-loader-title",children:n}),e&&y.jsx("div",{className:"hf-loader-detail",children:e}),a!==void 0&&y.jsx("div",{className:"hf-loader-progress","aria-hidden":"true",children:y.jsx("div",{className:"hf-loader-progress__fill",style:{transform:`scaleX(${a})`}})}),t&&y.jsx("div",{className:"hf-loader-mono",children:t})]})}const fR=3,dR=3;function b3(n){return typeof n=="object"&&n!==null}function hR(n){if(!(n instanceof CustomEvent))return null;const e=n.detail;if(!b3(e))return null;const t=e.state;return b3(t)?t.loading===!0&&t.ready!==!0:null}const mR=400;function pR(n){const e=n.shadowRoot;if(!e)return;const t=e.querySelector(".hfp-container"),r=e.querySelector(".hfp-iframe");t==null||t.style.setProperty("pointer-events","auto"),r==null||r.style.setProperty("pointer-events","auto")}function gR(n){const e=n.tagName.toLowerCase();return e==="video"||e==="audio"}function x3(n,e){try{const t=n.contentWindow,r=n.contentDocument;if(!t||!r)return e;for(const a of r.querySelectorAll("video, audio"))if(gR(a)&&!a.error&&a.networkState!==dR&&a.readyState<fR)return!0;const i=t.__hfLottie;if(i!=null&&i.length){for(const a of i)if(!sR(a))return!0}return!1}catch{return e}}const Y2=h.forwardRef(({projectId:n,directUrl:e,onLoad:t,onCompositionLoadingChange:r,portrait:i,style:a,suppressLoadingOverlay:s},o)=>{const u=h.useRef(null),d=h.useRef(0),m=h.useRef(null),p=h.useRef(null),[O,b]=h.useState(!1),[S,k]=h.useState(!1),[T,w]=h.useState(!1),[A,E]=h.useState(!1),[C,P]=h.useState(!0),[$,M]=h.useState(!0);h.useEffect(()=>{if(!C){M(!0);return}const Z=setTimeout(()=>M(!1),mR);return()=>clearTimeout(Z)},[C]),zt(()=>{const Z=u.current;if(!Z)return;let D=!1,I;return aR(()=>import("./hyperframes-player-CWb0VPYD.js"),[]).then(()=>{if(D)return;const U=document.createElement("hyperframes-player"),K=e||`/api/projects/${n}/preview`;if(U.setAttribute("shader-capture-scale","1"),U.setAttribute("shader-loading","player"),U.setAttribute("src",K),U.setAttribute("width",String(i?1080:1920)),U.setAttribute("height",String(i?1920:1080)),U.style.width="100%",U.style.height="100%",U.style.display="block",U.style.background="transparent",Z.appendChild(U),U.shadowRoot){const _=document.createElement("style");_.textContent=".hfp-container{overflow:visible}.hfp-iframe{box-shadow:0 0 0 1px rgba(255,255,255,0.08),0 4px 32px rgba(0,0,0,.7)}",U.shadowRoot.appendChild(_)}pR(U);const q=U.iframeElement;typeof o=="function"?o(q):o&&(o.current=q);const L=_=>_.stopImmediatePropagation();U.addEventListener("click",L,{capture:!0});const W=_=>{const j=hR(_);j!==null&&E(j)};U.addEventListener("shadertransitionstate",W);const ee=()=>{P(!1)},X=()=>{P(!1)};U.addEventListener("ready",ee),U.addEventListener("error",X);const B=()=>{if(d.current++,E(!1),P(!0),d.current>1){Z.classList.remove("preview-revealing"),Z.offsetWidth,Z.classList.add("preview-revealing");const H=()=>Z.classList.remove("preview-revealing");Z.addEventListener("animationend",H,{once:!0})}t(),m.current&&clearInterval(m.current);let j=d.current>1?!1:x3(q,!1);if(j){b(!0);let H=0;m.current=setInterval(()=>{H+=1,j=x3(q,j),(!j||H>100)&&(m.current&&clearInterval(m.current),m.current=null,b(!1),j&&console.debug("[Player] Asset-loading overlay timed out after 10s; hiding anyway. Check network or asset integrity."))},100)}else b(!1)};q.addEventListener("load",B),I=()=>{if(q.removeEventListener("load",B),U.removeEventListener("click",L,{capture:!0}),U.removeEventListener("shadertransitionstate",W),U.removeEventListener("ready",ee),U.removeEventListener("error",X),m.current&&clearInterval(m.current),m.current=null,Z.removeChild(U),typeof o!="function"){if(o){const _=o;_.current===q&&(_.current=null)}}}}),()=>{D=!0,I==null||I()}}),h.useEffect(()=>{if(p.current&&(clearTimeout(p.current),p.current=null),O){k(!0),w(!1);return}return w(!0),p.current=setTimeout(()=>{k(!1),w(!1),p.current=null},240),()=>{p.current&&(clearTimeout(p.current),p.current=null)}},[O]);const R=!s&&!$&&C,N=S&&!A&&!R;return h.useEffect(()=>{r==null||r(R||N)},[r,R,N]),y.jsxs("div",{className:"relative w-full h-full max-w-full max-h-full overflow-hidden flex items-center justify-center",style:a,children:[y.jsx("div",{ref:u,className:"w-full h-full"}),R&&y.jsx("div",{className:"absolute inset-0 bg-black flex items-center justify-center z-30 select-none","data-hyperframes-ignore":"","data-testid":"composition-loading-overlay",draggable:!1,onDragStart:Z=>Z.preventDefault(),onMouseDown:Z=>Z.preventDefault(),onPointerDown:Z=>Z.preventDefault(),children:y.jsx(y3,{title:"Loading composition",detail:"Preparing the Studio preview.",size:56})}),N&&y.jsx("div",{className:"absolute inset-0 bg-black flex items-center justify-center z-20 select-none","data-hyperframes-ignore":"",draggable:!1,style:{opacity:T?0:1,pointerEvents:T?"none":"auto",transition:"opacity 240ms ease-out"},onDragStart:Z=>Z.preventDefault(),onMouseDown:Z=>Z.preventDefault(),onPointerDown:Z=>Z.preventDefault(),children:y.jsx(y3,{title:"Preparing preview assets",detail:"Waiting for media and motion assets before playback starts.",size:56})})]})});Y2.displayName="Player";const W0=30;function $n(n){if(!Number.isFinite(n)||n<0)return"0:00";const e=Math.floor(n/60),t=Math.floor(n%60);return`${e}:${t.toString().padStart(2,"0")}`}function W2(n,e=W0){return!Number.isFinite(n)||n<=0||!Number.isFinite(e)||e<=0?0:Math.round(n*e)}function Rw(n,e=W0){return!Number.isFinite(n)||n<=0||!Number.isFinite(e)||e<=0?0:n/e}function G2(n,e,t=W0){const r=W2(n,t),i=Math.max(0,r+e);return Rw(i,t)}function S3(n,e,t=W0){const r=W2(n,t),i=W2(e,t);return`${r}f / ${i}f`}function Qw(n){return Number.isFinite(n)&&n>0}function k3(n,e){const t=Math.max(0,Number.isFinite(e)?e:0),r=Math.max(0,Number.isFinite(n)?n:0);return t>0?Math.min(r,t):r}function yg(n){if(!n)return 0;try{const e=Number(n.getDuration());return Qw(e)?e:0}catch{return 0}}function OR(n){return{now:()=>n.performance.now(),requestAnimationFrame:e=>n.requestAnimationFrame(e),cancelAnimationFrame:e=>n.cancelAnimationFrame(e)}}function yR(n,e,t,r=()=>1){var b;const i=Math.max(0,Number.isFinite(e)?e:0);let a=k3(Number(((b=n.getTime)==null?void 0:b.call(n))??0),i),s=!1,o=0,u=a,d=t.now();const m=S=>{var k;if(a=k3(S,i),typeof n.renderSeek=="function"){n.renderSeek(a);return}(k=n.seek)==null||k.call(n,a)},p=()=>{o&&(t.cancelAnimationFrame(o),o=0)},O=S=>{if(!s)return;const k=Math.max(.1,Number(r())||1),T=(S-d)/1e3*k;if(m(u+T),a>=i){s=!1,o=0;return}o=t.requestAnimationFrame(O)};return{play:()=>{s||i<=0||(a>=i&&m(0),s=!0,u=a,d=t.now(),p(),o=t.requestAnimationFrame(O))},pause:()=>{s=!1,p()},seek:S=>{m(S),s&&(u=a,d=t.now())},getTime:()=>a,getDuration:()=>i,isPlaying:()=>s}}function v3(n){return{play:()=>n.play(),pause:()=>n.pause(),seek:(e,t)=>{t!=null&&t.keepPlaying||n.pause(),n.seek(e)},getTime:()=>n.time(),getDuration:()=>n.duration(),isPlaying:()=>n.isActive()}}function w3(n){if(!n)return 0;const e=Number.parseFloat(n.getAttribute("data-duration")??"")||Number.parseFloat(n.getAttribute("data-hf-authored-duration")??"");return Qw(e)?e:0}function bR(n){if(!n)return 0;const e=w3(n.querySelector("[data-composition-id]"));if(e>0)return e;let t=0;for(const r of Array.from(n.querySelectorAll("[data-start]"))){const i=Number.parseFloat(r.getAttribute("data-start")??""),a=w3(r);!Number.isFinite(i)||i<0||a<=0||(t=Math.max(t,i+a))}return t}function K2(n){var t;const e=((t=n.ownerDocument.defaultView)==null?void 0:t.HTMLElement)??globalThis.HTMLElement;return typeof e<"u"&&n instanceof e}function _w(n){const e=n.ownerDocument.defaultView??window,t=e.HTMLMediaElement??globalThis.HTMLMediaElement,r=e.HTMLImageElement??globalThis.HTMLImageElement;if(n instanceof t||n instanceof r)return n;const i=n.querySelector("video, audio, img");return i instanceof t||i instanceof r?i:null}function Nw(n,e){const t=e.getAttribute("data-playback-start")?"playback-start":e.getAttribute("data-media-start")?"media-start":void 0,r=e.getAttribute("data-playback-start")??e.getAttribute("data-media-start");if(r!=null){const p=parseFloat(r);Number.isFinite(p)&&(n.playbackStart=p)}t&&(n.playbackStartAttr=t);const i=_w(e);if(!i)return;n.tag=i.tagName.toLowerCase();const a=i.getAttribute("src");a&&(n.src=a);const o=(i.ownerDocument.defaultView??window).HTMLMediaElement??globalThis.HTMLMediaElement;if(typeof o>"u"||!(i instanceof o))return;const u=e.getAttribute("data-source-duration")??i.getAttribute("data-source-duration"),d=u?parseFloat(u):i.duration;Number.isFinite(d)&&d>0&&(n.sourceDuration=d);const m=i.defaultPlaybackRate;Number.isFinite(m)&&m>0&&(n.playbackRate=m)}function G0(n){var i,a,s;const e=(i=n.label)==null?void 0:i.trim();if(e)return e;const t=(a=n.id)==null?void 0:a.trim();if(t)return t;const r=(s=n.tag)==null?void 0:s.trim().toLowerCase();return r?`${r} clip`:"Timeline clip"}const xR=new Set(["base","link","meta","noscript","script","style","template"]);function T3(n){return n.trim().replace(/[_-]+/g," ").replace(/\s+/g," ").replace(/\b\w/g,e=>e.toUpperCase())}function SR(n){const e=n.getAttribute("data-timeline-label")??n.getAttribute("data-label")??n.getAttribute("aria-label");if(e!=null&&e.trim())return e.trim();if(n.id.trim())return T3(n.id);const t=n.className.split(/\s+/).filter(Boolean),r=t.find(i=>i!=="clip")??t[0];return r?T3(r):G0({tag:n.tagName})}function Tl(n){if(K2(n)&&n.id)return`#${n.id}`;const e=n.getAttribute("data-composition-id");if(e)return`[data-composition-id="${e}"]`;if(K2(n)){const t=n.className.split(/\s+/).filter(Boolean),r=t.find(i=>i!=="clip")??t[0];if(r)return`.${r}`}}function x0(n){var t;const e=(t=n.parentElement)==null?void 0:t.closest("[data-composition-id]");return(e==null?void 0:e.getAttribute("data-composition-file"))??(e==null?void 0:e.getAttribute("data-composition-src"))??void 0}function S0(n,e,t){if(!(!t||t.startsWith("#")||t.startsWith("[data-composition-id=")))try{const i=Array.from(n.querySelectorAll(t)).indexOf(e);return i>=0?i:void 0}catch{return}}function J2(n){const e=n.sourceFile??"index.html";return n.domId?`${e}#${n.domId}`:n.selector?`${e}:${n.selector}:${n.selectorIndex??0}`:`${e}:${n.id}:${n.fallbackIndex}`}function k0(n){var r;const e=((r=n.preferredId)==null?void 0:r.trim())||J2({id:n.label,fallbackIndex:n.fallbackIndex,domId:n.domId,selector:n.selector,selectorIndex:n.selectorIndex,sourceFile:n.sourceFile}),t=J2({id:e,fallbackIndex:n.fallbackIndex,domId:n.domId,selector:n.selector,selectorIndex:n.selectorIndex,sourceFile:n.sourceFile});return{id:e,key:t}}function e8(n){return n.key??n.id}function kR(n){const e=n.querySelector("[data-composition-id]");return Array.from(n.querySelectorAll("[data-start]")).filter(t=>t!==e)}function A3(n,e){return Math.abs(n-e)<.001}function vR(n,e){var s;const t=(s=e.tagName)==null?void 0:s.toLowerCase();if(t&&n.tagName.toLowerCase()!==t)return!1;const r=Number.parseFloat(n.getAttribute("data-start")??"");if(Number.isFinite(r)&&!A3(r,e.start))return!1;const i=Number.parseFloat(n.getAttribute("data-duration")??"");if(Number.isFinite(i)&&!A3(i,e.duration))return!1;const a=Number.parseInt(n.getAttribute("data-track-index")??"",10);return!(Number.isFinite(a)&&a!==e.track)}function wR(n,e){return n.getElementById(e)??n.querySelector(`[data-composition-id="${e}"]`)??n.querySelector(`.${e}`)??null}function TR(n,e,t,r=new Set){const i=e.id?wR(n,e.id):null;if(i&&!r.has(i))return i;const a=kR(n).filter(o=>!r.has(o)),s=a.find(o=>vR(o,e));return s||(a[t]??null)}function AR(n,e){if(!K2(e)||e.parentElement!==n)return!1;const t=e.tagName.toLowerCase();return xR.has(t)||e.hasAttribute("data-start")||e.hasAttribute("data-track-index")?!1:!!Tl(e)}function PR(n,e){n.documentElement&&(n.documentElement.style.overflow="hidden",n.documentElement.style.margin="0"),n.body&&(n.body.style.overflow="hidden",n.body.style.margin="0"),e.scrollTo({top:0,left:0,behavior:"auto"})}function CR(n){const e=/data-composition-id=["']([^"']+)["']/gi,t=new Set,r=Array.from(n.querySelectorAll("style, script"));for(const s of r){const o=s.textContent||"";if(!o)continue;let u;for(;(u=e.exec(o))!==null;){const d=(u[1]||"").trim();d&&t.add(d)}}if(t.size===0)return;const i=new Set,a=Array.from(n.querySelectorAll("[data-composition-id]"));for(const s of a){const o=s.getAttribute("data-composition-id");o&&i.add(o)}for(const s of t){if(s==="root"||i.has(s))continue;const o=n.getElementById(`${s}-layer`)||n.getElementById(`${s}-comp`)||n.getElementById(s);o&&(o.getAttribute("data-composition-id")||o.setAttribute("data-composition-id",s))}}function ER(n){return n instanceof HTMLElement}function jw(n){const e=n.getRootNode();return typeof ShadowRoot<"u"&&e instanceof ShadowRoot&&ER(e.host)?e.host:null}function Zw(n,e,t){var r;(r=n.contentWindow)==null||r.postMessage({source:"hf-parent",type:"control",action:e,...t},"*")}function Dw(n,e){return n||e>1}function MR(n,e){if(n)try{const t=jw(n);if(t&&typeof t.muted=="boolean"){t.muted=e;return}Zw(n,"set-muted",{muted:e})}catch(t){console.warn("[useTimelinePlayer] Failed to set preview media mute state",t)}}function $R(n,e){if(!n)return;const t=Number.isFinite(e)&&e>0?e:1;try{const r=jw(n);if(r&&typeof r.playbackRate=="number"){r.playbackRate=t;return}Zw(n,"set-playback-rate",{playbackRate:t})}catch(r){console.warn("[useTimelinePlayer] Failed to set preview playback rate",r)}}function RR(n,e,t,r){const i=new Set(t.map(p=>p.id)),a=n.querySelector("[data-composition-id]"),s=a==null?void 0:a.getAttribute("data-composition-id"),o=n.querySelectorAll("[data-composition-id][data-start]"),u=[];o.forEach(p=>{var Z,D,I,U,K,q,L,W,ee;const O=p,b=O.getAttribute("data-composition-id");if(!b||b===s||i.has(O.id)||i.has(b))return;const S=O.getAttribute("data-start")??"0";let k=parseFloat(S);if(isNaN(k)){const X=n.getElementById(S)||n.querySelector(`[data-composition-id="${S}"]`);if(X){const B=X.getAttribute("data-start")??"0";let _=parseFloat(B);if(isNaN(_)){const F=n.getElementById(B)||n.querySelector(`[data-composition-id="${B}"]`),Y=parseFloat((F==null?void 0:F.getAttribute("data-start"))??"0")||0,ae=F==null?void 0:F.getAttribute("data-composition-id"),ie=parseFloat((F==null?void 0:F.getAttribute("data-duration"))??"")||(ae?((I=(D=(Z=e.__timelines)==null?void 0:Z[ae])==null?void 0:D.duration)==null?void 0:I.call(D))??0:0);_=Y+ie}const j=X.getAttribute("data-composition-id"),H=parseFloat(X.getAttribute("data-duration")??"")||(j?((q=(K=(U=e.__timelines)==null?void 0:U[j])==null?void 0:K.duration)==null?void 0:q.call(K))??0:0);k=_+H}else k=0}let T=parseFloat(O.getAttribute("data-duration")??"");if((isNaN(T)||T<=0)&&(T=((ee=(W=(L=e.__timelines)==null?void 0:L[b])==null?void 0:W.duration)==null?void 0:ee.call(W))??0),!Number.isFinite(T)||T<=0||(Number.isFinite(k)||(k=0),Number.isFinite(r)&&r>0&&(k>=r||(T=Math.min(T,Math.max(0,r-k)),T<=0))))return;const w=O.getAttribute("data-track-index"),A=w!=null?parseInt(w,10):0,E=O.getAttribute("data-composition-src")||O.getAttribute("data-composition-file"),C=Tl(O),P=x0(O),$=S0(n,O,C),M=G0({id:O.id||b||null,label:O.getAttribute("data-timeline-label")??O.getAttribute("data-label"),tag:O.tagName}),R=k0({preferredId:O.id||b||null,label:M,fallbackIndex:u.length,domId:O.id||void 0,selector:C,selectorIndex:$,sourceFile:P}),N={id:R.id,label:M,key:R.key,tag:O.tagName.toLowerCase(),start:k,duration:T,track:isNaN(A)?0:A,domId:O.id||void 0,selector:C,selectorIndex:$,sourceFile:P};if(E)N.compositionSrc=E;else{const X=O.querySelector("video[src]");X&&(N.src=X.getAttribute("src")||void 0,N.tag="video")}u.push(N)});let d=!1;const m=t.map(p=>{if(p.compositionSrc)return p;const O=n.getElementById(p.id)??n.querySelector(`[data-composition-id="${p.id}"]`);if(!O)return p;const b=O.getAttribute("data-composition-src")||O.getAttribute("data-composition-file");return b?(d=!0,{...p,compositionSrc:b}):p});return{missing:u,updatedEls:m,patched:d}}const P3=n=>{let e;const t=new Set,r=(d,m)=>{const p=typeof d=="function"?d(e):d;if(!Object.is(p,e)){const O=e;e=m??(typeof p!="object"||p===null)?p:Object.assign({},e,p),t.forEach(b=>b(e,O))}},i=()=>e,o={setState:r,getState:i,getInitialState:()=>u,subscribe:d=>(t.add(d),()=>t.delete(d))},u=e=n(r,i,o);return o},QR=(n=>n?P3(n):P3),_R=n=>n;function NR(n,e=_R){const t=wd.useSyncExternalStore(n.subscribe,wd.useCallback(()=>e(n.getState()),[n,e]),wd.useCallback(()=>e(n.getInitialState()),[n,e]));return wd.useDebugValue(t),t}const C3=n=>{const e=QR(n),t=r=>NR(e,r);return Object.assign(t,e),t},Vw=(n=>n?C3(n):C3),Iw="hf-studio-ui-preferences";function E3(n){return typeof n=="object"&&n!==null}function Lw(){if(typeof window>"u")return null;try{return window.localStorage}catch{return null}}function zw(n){if(!n)return{};try{const e=n.getItem(Iw);if(!e)return{};const t=JSON.parse(e);if(!E3(t))return{};const r={};if(typeof t.leftCollapsed=="boolean"&&(r.leftCollapsed=t.leftCollapsed),typeof t.timelineVisible=="boolean"&&(r.timelineVisible=t.timelineVisible),typeof t.playbackRate=="number"&&Number.isFinite(t.playbackRate)&&(r.playbackRate=t.playbackRate),typeof t.audioMuted=="boolean"&&(r.audioMuted=t.audioMuted),E3(t.previewZoom)){const{zoomPercent:i,panX:a,panY:s}=t.previewZoom;typeof i=="number"&&Number.isFinite(i)&&typeof a=="number"&&Number.isFinite(a)&&typeof s=="number"&&Number.isFinite(s)&&(r.previewZoom={zoomPercent:i,panX:a,panY:s})}return Array.isArray(t.recentBlocks)&&(r.recentBlocks=t.recentBlocks.filter(i=>typeof i=="string")),r}catch{return{}}}function v0(n=Lw()){return zw(n)}function w0(n,e=Lw()){if(e)try{const t={...zw(e),...n};e.setItem(Iw,JSON.stringify(t))}catch{}}const bg=new Set,Kr={notify:n=>bg.forEach(e=>e(n)),subscribe:n=>(bg.add(n),()=>bg.delete(n))},Ae=Vw(n=>({isPlaying:!1,currentTime:0,duration:0,timelineReady:!1,elements:[],selectedElementId:null,playbackRate:v0().playbackRate??1,audioMuted:v0().audioMuted??!1,loopEnabled:!1,zoomMode:"fit",manualZoomPercent:100,inPoint:null,outPoint:null,requestedSeekTime:null,requestSeek:e=>n({requestedSeekTime:e}),clearSeekRequest:()=>n({requestedSeekTime:null}),setIsPlaying:e=>n({isPlaying:e}),setPlaybackRate:e=>{w0({playbackRate:e}),n({playbackRate:e})},setAudioMuted:e=>{w0({audioMuted:e}),n({audioMuted:e})},setLoopEnabled:e=>n({loopEnabled:e}),setZoomMode:e=>n({zoomMode:e}),setInPoint:e=>n(t=>{const r=e!==null&&Number.isFinite(e)?e:null;return{inPoint:r,outPoint:r!==null&&t.outPoint!==null&&r>=t.outPoint?null:t.outPoint,loopEnabled:r!==null?!0:t.loopEnabled}}),setOutPoint:e=>n(t=>{const r=e!==null&&Number.isFinite(e)?e:null;return{outPoint:r,inPoint:r!==null&&t.inPoint!==null&&r<=t.inPoint?null:t.inPoint,loopEnabled:r!==null?!0:t.loopEnabled}}),setManualZoomPercent:e=>n({manualZoomPercent:Math.max(10,Math.min(2e3,Math.round(e)))}),setCurrentTime:e=>n({currentTime:Number.isFinite(e)?e:0}),setDuration:e=>n({duration:Number.isFinite(e)?e:0}),setTimelineReady:e=>n({timelineReady:e}),setElements:e=>n({elements:e}),setSelectedElementId:e=>n({selectedElementId:e}),updateElement:(e,t)=>n(r=>({elements:r.elements.map(i=>(i.key??i.id)===e?{...i,...t}:i)})),reset:()=>n({isPlaying:!1,currentTime:0,duration:0,timelineReady:!1,elements:[],selectedElementId:null,inPoint:null,outPoint:null})})),jR=[.25,.5,1,1.5,2],ZR=8,DR=[{title:"Playback",hints:[{key:"Space",label:"Play / Pause"},{key:"J",label:"Play backward"},{key:"K",label:"Stop"},{key:"L",label:"Play forward"},{key:"←/→",label:"Step 1 frame"},{key:"⇧←/⇧→",label:"Step 10 frames"}]},{title:"Work area",hints:[{key:"I",label:"Set in-point"},{key:"⇧I",label:"Clear in-point"},{key:"O",label:"Set out-point"},{key:"⇧O",label:"Clear out-point"},{key:"A",label:"Jump to in-point"},{key:"E",label:"Jump to out-point"}]}];function M3(n,e,t){if(!Number.isFinite(t)||t<=0)return 0;const r=(n-e)/t,i=Math.max(0,Math.min(1,r)),a=Math.min(.5,ZR/t);return i<=a?0:i>=1-a?1:i}const VR=h.memo(function({onTogglePlay:e,onSeek:t,disabled:r=!1}){const i=Ae(me=>me.isPlaying),a=Ae(me=>me.duration),s=Ae(me=>me.timelineReady),o=Ae(me=>me.playbackRate),u=Ae(me=>me.audioMuted),d=Ae(me=>me.loopEnabled),m=Ae.getState().setPlaybackRate,p=Ae.getState().setAudioMuted,O=Ae.getState().setLoopEnabled,b=Ae(me=>me.inPoint),S=Ae(me=>me.outPoint),k=Ae.getState().setInPoint,T=Ae.getState().setOutPoint,[w,A]=h.useState(!1),[E,C]=h.useState(!1),[P,$]=h.useState("time"),[M,R]=h.useState(""),N=h.useRef(null),Z=h.useRef(null),D=h.useRef(null),I=h.useRef(null),U=h.useRef(null),K=h.useRef(null),q=h.useRef(null),L=h.useRef(!1),W=h.useRef(0),ee=h.useRef(P);ee.current=P;const X=h.useRef(a);X.current=a;const B=r||!s,_=o>1,j=Dw(u,o),H=_?"Audio muted above 1x speed":u?"Unmute audio":"Mute audio";zt(()=>{const me=Ne=>{W.current=Ne;const Xe=X.current,V=Xe>0?Math.min(100,Ne/Xe*100):0;N.current&&(N.current.style.width=`${V}%`),Z.current&&(Z.current.style.left=`${V}%`),D.current&&(D.current.textContent=ee.current==="frame"?S3(Ne,Xe):$n(Ne)),U.current&&U.current.setAttribute("aria-valuenow",String(Math.round(Ne)))},Te=Kr.subscribe(me);me(Ae.getState().currentTime);const Ce=setInterval(()=>{const Ne=Ae.getState().currentTime,Xe=Ae.getState().duration;if(Xe>0&&Ne>0){const V=Math.min(100,Ne/Xe*100);N.current&&(N.current.style.width=`${V}%`),Z.current&&(Z.current.style.left=`${V}%`)}},500);return()=>{Te(),clearInterval(Ce)}}),h.useEffect(()=>{if(!D.current)return;const me=W.current;D.current.textContent=P==="frame"?S3(me,a):$n(me)},[a,P]),h.useEffect(()=>{if(!w)return;const me=Te=>{K.current&&!K.current.contains(Te.target)&&A(!1)};return document.addEventListener("mousedown",me),()=>{document.removeEventListener("mousedown",me)}},[w]),h.useEffect(()=>{if(!E)return;const me=Te=>{q.current&&!q.current.contains(Te.target)&&C(!1)};return document.addEventListener("mousedown",me),()=>{document.removeEventListener("mousedown",me)}},[E]);const F=h.useCallback(me=>{if(r)return;const Te=I.current;if(!Te||a<=0)return;const Ce=Te.getBoundingClientRect(),Ne=M3(me,Ce.left,Ce.width),Xe=Ne*100;N.current&&(N.current.style.width=`${Xe}%`),Z.current&&(Z.current.style.left=`${Xe}%`),t(Ne*a)},[r,a,t]),Y=h.useCallback(me=>{if(me.button!==0)return;me.preventDefault(),me.currentTarget.focus(),L.current=!0;const Te=me.currentTarget,Ce=me.pointerId;try{Te.setPointerCapture(Ce)}catch{}F(me.clientX);let Ne=0,Xe=me.clientX;const V=ce=>{if(ce.pointerId!==Ce||!L.current)return;Xe=ce.clientX;const ge=I.current,ye=X.current;if(ge&&ye>0){const be=ge.getBoundingClientRect(),Me=M3(ce.clientX,be.left,be.width)*100;N.current&&(N.current.style.width=`${Me}%`),Z.current&&(Z.current.style.left=`${Me}%`)}Ne||(Ne=requestAnimationFrame(()=>{Ne=0,L.current&&F(Xe)}))},fe=()=>{L.current=!1,Ne&&(cancelAnimationFrame(Ne),Ne=0),F(Xe);try{Te.releasePointerCapture(Ce)}catch{}Te.removeEventListener("pointermove",V),Te.removeEventListener("pointerup",te),Te.removeEventListener("pointercancel",te),window.removeEventListener("pointerup",te),window.removeEventListener("pointercancel",te),document.removeEventListener("visibilitychange",le),window.removeEventListener("blur",fe)},te=ce=>{ce.pointerId===Ce&&fe()},le=()=>{document.visibilityState==="hidden"&&fe()};Te.addEventListener("pointermove",V),Te.addEventListener("pointerup",te),Te.addEventListener("pointercancel",te),window.addEventListener("pointerup",te),window.addEventListener("pointercancel",te),document.addEventListener("visibilitychange",le),window.addEventListener("blur",fe)},[F]),ae=h.useCallback(me=>{if(r||!s||a<=0)return;const Te=me.shiftKey?10:1;me.key==="ArrowLeft"?(me.preventDefault(),t(G2(W.current,-Te))):me.key==="ArrowRight"&&(me.preventDefault(),t(Math.min(a,G2(W.current,Te))))},[r,s,a,t]),ie=h.useCallback(()=>{if(r)return;const me=Number.parseInt(M,10);!Number.isFinite(me)||a<=0||t(Math.min(a,Rw(Math.max(0,me))))},[r,a,M,t]),Oe=h.useCallback(me=>{me.preventDefault(),ie()},[ie]),de=h.useCallback(me=>{me.key==="Enter"&&(me.preventDefault(),ie())},[ie]);return y.jsxs("div",{className:"px-4 py-2 flex flex-wrap items-center gap-x-2 gap-y-1","aria-disabled":r||void 0,style:{borderTop:"1px solid rgba(255,255,255,0.04)",paddingBottom:"calc(0.5rem + env(safe-area-inset-bottom))"},children:[y.jsx("button",{type:"button","aria-label":i?"Pause":"Play",onClick:e,disabled:B,className:"flex-shrink-0 w-8 h-8 flex items-center justify-center rounded-lg disabled:opacity-30 disabled:pointer-events-none transition-colors",style:{background:"rgba(255,255,255,0.06)"},children:i?y.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"#FAFAFA","aria-hidden":"true",children:[y.jsx("rect",{x:"6",y:"4",width:"4",height:"16",rx:"1"}),y.jsx("rect",{x:"14",y:"4",width:"4",height:"16",rx:"1"})]}):y.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"#FAFAFA","aria-hidden":"true",children:y.jsx("polygon",{points:"6,3 20,12 6,21"})})}),y.jsxs("button",{type:"button",onClick:()=>$(me=>me==="time"?"frame":"time"),disabled:r,title:P==="time"?"Switch to frame display":"Switch to time display",className:"font-mono text-[11px] tabular-nums flex-shrink-0 w-[118px] text-left transition-colors disabled:pointer-events-none hover:opacity-80",style:{color:"#A1A1AA",cursor:"pointer"},children:[y.jsx("span",{ref:D,children:$n(0)}),P==="time"?y.jsxs(y.Fragment,{children:[y.jsx("span",{style:{color:"#3F3F46",margin:"0 2px"},children:"/"}),y.jsx("span",{style:{color:"#52525B"},children:$n(a)})]}):null]}),y.jsx("div",{ref:me=>{I.current=me,U.current=me},role:"slider",tabIndex:r?-1:0,"aria-label":"Seek","aria-disabled":r||void 0,"aria-valuemin":0,"aria-valuemax":Math.round(a),"aria-valuenow":0,className:`min-w-[96px] flex-1 h-6 flex items-center group ${r?"cursor-not-allowed opacity-50":"cursor-pointer"}`,style:{touchAction:"none"},onPointerDown:Y,onKeyDown:ae,children:y.jsxs("div",{className:"w-full rounded-full relative",style:{background:"rgba(255,255,255,0.15)",height:"3px"},children:[(b!==null||S!==null)&&a>0&&y.jsx("div",{className:"absolute top-0 bottom-0 pointer-events-none",style:{left:`${b!==null?Math.min(100,b/a*100):0}%`,right:`${S!==null?100-Math.min(100,S/a*100):0}%`,background:"rgba(60,230,172,0.15)"}}),y.jsx("div",{ref:N,className:"absolute top-0 bottom-0 left-0 z-[1] rounded-full",style:{background:"linear-gradient(90deg, var(--hf-accent, #3CE6AC), #2BBFA0)"}}),b!==null&&a>0&&y.jsx("div",{className:"absolute z-[3] pointer-events-none",style:{left:`${Math.min(100,b/a*100)}%`,top:"50%",transform:"translate(-50%, -50%)",width:"2px",height:"10px",background:"#3CE6AC",borderRadius:"1px"}}),S!==null&&a>0&&y.jsx("div",{className:"absolute z-[3] pointer-events-none",style:{left:`${Math.min(100,S/a*100)}%`,top:"50%",transform:"translate(-50%, -50%)",width:"2px",height:"10px",background:"#3CE6AC",borderRadius:"1px"}}),y.jsx("div",{ref:Z,className:"absolute top-1/2 z-[4] w-3 h-3 rounded-full -translate-y-1/2 -translate-x-1/2 transition-transform group-hover:scale-125",style:{background:"var(--hf-accent, #3CE6AC)",boxShadow:"0 0 6px rgba(60,230,172,0.4), 0 1px 4px rgba(0,0,0,0.4)"}})]})}),y.jsx("button",{type:"button",onClick:()=>{_||p(!u)},disabled:B||_,title:H,"aria-label":H,"aria-pressed":j,className:`h-7 w-7 flex-shrink-0 flex items-center justify-center rounded-md border transition-colors disabled:pointer-events-none ${j?"text-studio-accent bg-studio-accent/10 border-studio-accent/30":"border-neutral-700 text-neutral-400 hover:border-neutral-500 hover:bg-neutral-800"} ${_?"opacity-70":""}`,children:j?y.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"M11 5 6 9H3v6h3l5 4V5Z"}),y.jsx("path",{d:"m19 9-6 6"}),y.jsx("path",{d:"m13 9 6 6"})]}):y.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"M11 5 6 9H3v6h3l5 4V5Z"}),y.jsx("path",{d:"M15.5 8.5a5 5 0 0 1 0 7"}),y.jsx("path",{d:"M18.5 5.5a9 9 0 0 1 0 13"})]})}),y.jsxs("div",{ref:K,className:"relative flex-shrink-0",children:[y.jsx("button",{type:"button",onClick:()=>A(me=>!me),disabled:r,className:"w-10 px-2 py-1 rounded-md text-[10px] font-mono tabular-nums transition-colors",style:{color:"#71717A",background:"rgba(255,255,255,0.04)"},children:o===1?"1x":`${o}x`}),w&&y.jsx("div",{className:"absolute bottom-full right-0 mb-1.5 rounded-lg shadow-xl z-50 min-w-[56px] overflow-hidden",style:{background:"#161618",border:"1px solid rgba(255,255,255,0.08)"},children:jR.map(me=>y.jsxs("button",{onClick:()=>{m(me),A(!1)},className:"block w-full px-3 py-1.5 text-[11px] text-left font-mono tabular-nums transition-colors",style:{color:me===o?"#FAFAFA":"#71717A",background:me===o?"rgba(255,255,255,0.06)":"transparent"},onMouseEnter:Te=>{me!==o&&(Te.currentTarget.style.background="rgba(255,255,255,0.04)")},onMouseLeave:Te=>{me!==o&&(Te.currentTarget.style.background="transparent")},children:[me,"x"]},me))})]}),y.jsx("button",{type:"button",onClick:()=>O(!d),disabled:r,className:`h-7 w-7 flex items-center justify-center rounded-md border transition-colors ${d?"text-studio-accent bg-studio-accent/10 border-studio-accent/30":"border-neutral-700 text-neutral-400 hover:border-neutral-500 hover:bg-neutral-800"}`,title:"Loop playback","aria-label":d?"Disable loop playback":"Enable loop playback","aria-pressed":d,children:y.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"M17 2l4 4-4 4"}),y.jsx("path",{d:"M3 11V9a4 4 0 0 1 4-4h14"}),y.jsx("path",{d:"M7 22l-4-4 4-4"}),y.jsx("path",{d:"M21 13v2a4 4 0 0 1-4 4H3"})]})}),y.jsxs("div",{ref:q,className:"relative flex-shrink-0",children:[y.jsx("button",{type:"button",onClick:()=>C(me=>!me),className:`w-6 h-6 flex items-center justify-center rounded border transition-colors ${E?"border-neutral-600 text-neutral-200 bg-neutral-800":"border-neutral-800 text-neutral-600 hover:text-neutral-300 hover:border-neutral-600"}`,"aria-label":"Shortcuts and tools","aria-expanded":E,children:y.jsxs("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("rect",{x:"2",y:"4",width:"20",height:"16",rx:"2"}),y.jsx("path",{d:"M6 8h.01M10 8h.01M14 8h.01M18 8h.01M6 12h.01M10 12h.01M14 12h.01M18 12h.01M8 16h8"})]})}),E&&y.jsxs("div",{className:"absolute bottom-full right-0 mb-2 z-50 rounded-lg shadow-xl min-w-[220px] overflow-y-auto",style:{background:"#161618",border:"1px solid rgba(255,255,255,0.08)",maxHeight:"min(280px, calc(100vh - 80px))"},children:[y.jsxs("div",{className:"px-3 pt-3 pb-2.5",children:[y.jsx("p",{className:"text-[9px] font-medium text-neutral-500 uppercase tracking-wider mb-1.5",children:"Jump to frame"}),y.jsxs("form",{onSubmit:Oe,className:"flex items-center gap-1.5",children:[y.jsx("input",{value:M,onChange:me=>R(me.target.value),disabled:r,inputMode:"numeric",pattern:"[0-9]*","aria-label":"Jump to frame",placeholder:"frame number",className:"h-6 flex-1 rounded border border-neutral-700 bg-neutral-900 px-2 text-[10px] font-mono tabular-nums text-neutral-200 outline-none transition-colors placeholder:text-neutral-600 focus:border-studio-accent/60",onKeyDown:de,onBlur:ie}),y.jsx("button",{type:"submit",disabled:r,className:"h-6 px-2 rounded border border-neutral-700 text-[10px] text-neutral-300 transition-colors hover:border-neutral-500 hover:bg-neutral-800 disabled:opacity-40",children:"Go"})]})]}),y.jsx("div",{style:{borderTop:"1px solid rgba(255,255,255,0.06)"}}),y.jsxs("div",{className:"px-3 pt-2.5 pb-2",children:[y.jsx("p",{className:"text-[9px] font-medium text-neutral-500 uppercase tracking-wider mb-1.5",children:"Work area"}),y.jsxs("div",{className:"flex flex-col gap-1",children:[y.jsxs("div",{className:"flex items-center justify-between gap-2",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("span",{className:"font-mono text-[10px] rounded border border-neutral-700 px-1.5 py-0.5 text-neutral-300 min-w-[20px] text-center",style:{background:"rgba(255,255,255,0.05)"},children:"I"}),y.jsx("span",{className:"text-[10px] text-neutral-400",children:"In-point"})]}),y.jsx("div",{className:"flex items-center gap-1.5",children:b!==null?y.jsxs(y.Fragment,{children:[y.jsx("span",{className:"font-mono text-[10px] text-neutral-300",children:$n(b)}),y.jsx("button",{type:"button",onClick:()=>k(null),className:"w-4 h-4 flex items-center justify-center rounded text-neutral-500 hover:text-neutral-200 transition-colors","aria-label":"Clear in-point",children:y.jsx("svg",{width:"8",height:"8",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:y.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}):y.jsx("span",{className:"text-[10px] text-neutral-600",children:"—"})})]}),y.jsxs("div",{className:"flex items-center justify-between gap-2",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("span",{className:"font-mono text-[10px] rounded border border-neutral-700 px-1.5 py-0.5 text-neutral-300 min-w-[20px] text-center",style:{background:"rgba(255,255,255,0.05)"},children:"O"}),y.jsx("span",{className:"text-[10px] text-neutral-400",children:"Out-point"})]}),y.jsx("div",{className:"flex items-center gap-1.5",children:S!==null?y.jsxs(y.Fragment,{children:[y.jsx("span",{className:"font-mono text-[10px] text-neutral-300",children:$n(S)}),y.jsx("button",{type:"button",onClick:()=>T(null),className:"w-4 h-4 flex items-center justify-center rounded text-neutral-500 hover:text-neutral-200 transition-colors","aria-label":"Clear out-point",children:y.jsx("svg",{width:"8",height:"8",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",children:y.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}):y.jsx("span",{className:"text-[10px] text-neutral-600",children:"—"})})]})]})]}),y.jsx("div",{style:{borderTop:"1px solid rgba(255,255,255,0.06)"}}),y.jsx("div",{className:"px-3 pt-2.5 pb-3 flex flex-col gap-3",children:DR.map(me=>y.jsxs("div",{children:[y.jsx("p",{className:"text-[9px] font-medium text-neutral-500 uppercase tracking-wider mb-1.5",children:me.title}),y.jsx("div",{className:"flex flex-col gap-1",children:me.hints.map(Te=>y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx("span",{className:"font-mono text-[10px] rounded border border-neutral-700 px-1.5 py-0.5 text-neutral-300 min-w-[36px] text-center",style:{background:"rgba(255,255,255,0.05)"},children:Te.key}),y.jsx("span",{className:"text-[10px] text-neutral-400",children:Te.label})]},Te.key))})]},me.title))})]})]})]})}),$3=100;function qo(n){return Math.round(n*$3)/$3}function T0(n,e,t){return Math.min(Math.max(n,e),t)}const R3=.55,Td=40,Q3=12;function _3(n,e,t){const r=(i,a,s)=>{if(s<i+Td){const o=Math.max(0,1-(s-i)/Td);return-Math.round(Q3*o)}if(s>a-Td){const o=Math.max(0,1-(a-s)/Td);return Math.round(Q3*o)}return 0};return{x:r(n.left,n.right,e),y:r(n.top,n.bottom,t)}}function IR(n,e,t){const r=(n.currentScrollLeft??0)-(n.originScrollLeft??0),i=(n.currentScrollTop??0)-(n.originScrollTop??0),a=(e-n.originClientX+r)/Math.max(n.pixelsPerSecond,1),s=(t-n.originClientY+i)/Math.max(n.trackHeight,1),o=Math.round(s),u=Math.max(0,n.trackOrder.indexOf(n.track)),d=u+o,m=T0(d,0,Math.max(0,n.trackOrder.length-1)),p=Math.min(...n.trackOrder),O=Math.max(...n.trackOrder);let b=n.trackOrder[m]??n.track;const S=u===0,k=u===n.trackOrder.length-1;return S&&d<0&&u+s<=-R3?b=p-1:k&&d>n.trackOrder.length-1&&u+s>=n.trackOrder.length-1+R3&&(b=O+1),{start:T0(qo(n.start+a),0,Math.max(0,n.maxStart)),track:b}}function LR(n,e,t){const r=Math.max(.05,n.minDuration??.1),i=(t-n.originClientX)/Math.max(n.pixelsPerSecond,1);if(e==="end"){const b=T0(qo(n.duration+i),r,Math.max(r,n.maxEnd-n.start));return{start:n.start,duration:b,playbackStart:n.playbackStart}}const a=Math.max(.1,n.playbackRate??1),s=n.playbackStart!=null?n.playbackStart/a:Number.POSITIVE_INFINITY,o=-Math.min(n.start-n.minStart,s),u=n.duration-r,d=T0(i,o,u),m=qo(n.start+d),p=qo(n.duration-d),O=n.playbackStart!=null?qo(Math.max(0,n.playbackStart+d*a)):void 0;return{start:m,duration:p,playbackStart:O}}function zR(n){if(n.compositionSrc||n.playbackStartAttr!=null||n.sourceDuration!=null&&Number.isFinite(n.sourceDuration)&&n.sourceDuration>0)return!0;const e=n.tag.toLowerCase();return["video","audio","img"].includes(e)}function BR(n){return!!(n.domId||n.selector)}function N3(n){if(n.timingSource==="implicit")return{canMove:!1,canTrimStart:!1,canTrimEnd:!1};const e=BR(n),t=Number.isFinite(n.duration)&&n.duration>0,r=zR(n);return{canMove:e&&(r||t),canTrimEnd:e&&t,canTrimStart:e&&t}}function HR(n){if(n.capabilities.canMove)return null;const e=Math.max(0,n.width),t=T0(n.offsetX,0,e),r=Math.max(0,n.handleWidth);return t<=r&&!n.capabilities.canTrimStart?"resize-start":t>=Math.max(0,e-r)&&!n.capabilities.canTrimEnd?"resize-end":"move"}function FR(n,e){return{start:n.start,end:n.start+n.duration,anchorX:e.anchorX,anchorY:e.anchorY}}function XR({rangeStart:n,rangeEnd:e,elements:t,prompt:r}){const i=Math.min(n,e),a=Math.max(n,e),s=t.map(o=>`- #${o.id} (${o.tag}) — ${$n(o.start)} to ${$n(o.start+o.duration)}, track ${o.track}`).join(`
50
- `);return`Edit the following HyperFrames composition:
51
-
52
- Time range: ${$n(i)} — ${$n(a)}
53
-
54
- Elements in range:
55
- ${s||"(none)"}
56
-
57
- User request:
58
- ${r.trim()||"(no prompt provided)"}
59
-
60
- Instructions:
61
- Modify only the elements listed above within the specified time range.
62
- The composition uses HyperFrames data attributes (data-start, data-duration, data-track-index) and GSAP for animations.
63
- Preserve all other elements and timing outside this range.`}function j3(n){return n.trim()}function ir(n){return Number(qo(n).toFixed(2)).toString()}function Z3(n){if(typeof document>"u"||!document.body||!document.execCommand)return!1;const e=document.createElement("textarea");e.value=n,e.setAttribute("readonly","true"),e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.width="1px",e.style.height="1px",e.style.padding="0",e.style.border="0",e.style.opacity="0",e.style.pointerEvents="none",document.body.appendChild(e),e.focus({preventScroll:!0}),e.select(),e.setSelectionRange(0,n.length);try{return document.execCommand("copy")}catch{return!1}finally{document.body.removeChild(e)}}function UR(){if(typeof navigator>"u")return!1;const n=navigator.userAgent;return/Safari/i.test(n)&&!/Chrome|Chromium|CriOS|FxiOS|Edg|OPR/i.test(n)}async function A0(n){const e=UR();if(e&&Z3(n))return!0;const t=typeof navigator<"u"?navigator.clipboard:void 0;if(t!=null&&t.writeText)try{return await t.writeText(n),!0}catch{}return!e&&Z3(n)}function qR({rangeStart:n,rangeEnd:e,anchorX:t,anchorY:r,onClose:i}){const a=Ae(P=>P.elements),[s,o]=h.useState(""),[u,d]=h.useState(!1),[m,p]=h.useState(!1),O=h.useRef(null),b=h.useRef(null),S=Math.min(n,e),k=Math.max(n,e),T=h.useMemo(()=>a.filter(P=>{const $=P.start+P.duration;return P.start<k&&$>S}),[a,S,k]);zt(()=>{setTimeout(()=>{var P;return(P=b.current)==null?void 0:P.focus()},50)}),zt(()=>{const P=$=>{$.key==="Escape"&&i()};return window.addEventListener("keydown",P),()=>window.removeEventListener("keydown",P)}),zt(()=>{const P=$=>{O.current&&!O.current.contains($.target)&&i()};return setTimeout(()=>window.addEventListener("mousedown",P),100),()=>window.removeEventListener("mousedown",P)});const w=h.useCallback(()=>XR({rangeStart:S,rangeEnd:k,elements:T,prompt:s}),[S,k,T,s]),A=h.useCallback(async()=>{await A0(w())&&(d(!0),setTimeout(()=>{d(!1),i()},800))},[w,i]),E=h.useCallback(async()=>{const P=j3(s);!P||!await A0(P)||(p(!0),setTimeout(()=>{p(!1)},800))},[s]),C={position:"fixed",left:Math.max(8,Math.min(t-160,window.innerWidth-336)),top:Math.max(8,r-280),zIndex:200};return y.jsx("div",{ref:O,style:C,children:y.jsxs("div",{className:"w-80 bg-neutral-900 border border-neutral-700/60 rounded-xl shadow-2xl shadow-black/40 overflow-hidden",children:[y.jsxs("div",{className:"flex items-center justify-between px-4 py-2.5 border-b border-neutral-800/60",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-studio-accent"}),y.jsxs("span",{className:"text-[11px] font-medium text-neutral-300",children:[$n(S)," — ",$n(k)]})]}),y.jsxs("span",{className:"text-[10px] text-neutral-600",children:[T.length," element",T.length!==1?"s":""]})]}),T.length>0&&y.jsx("div",{className:"px-4 py-2 border-b border-neutral-800/40 max-h-24 overflow-y-auto",children:T.map(P=>y.jsxs("div",{className:"flex items-center justify-between py-0.5",children:[y.jsxs("span",{className:"text-[10px] font-mono text-studio-accent/80",children:["#",P.id]}),y.jsx("span",{className:"text-[10px] text-neutral-600",children:P.tag})]},P.id))}),y.jsx("div",{className:"p-3",children:y.jsx("textarea",{ref:b,value:s,onChange:P=>o(P.target.value),onKeyDown:P=>{P.key==="Enter"&&(P.metaKey||P.ctrlKey)&&(P.preventDefault(),A())},placeholder:"What should change?",rows:2,className:"w-full px-3 py-2 text-xs bg-neutral-800/60 border border-neutral-700/40 rounded-lg text-neutral-200 placeholder:text-neutral-600 resize-none focus:outline-none focus:border-studio-accent/40 transition-colors"})}),y.jsxs("div",{className:"grid grid-cols-2 gap-2 px-3 pb-3",children:[y.jsx("button",{onClick:E,disabled:!j3(s),className:`py-1.5 text-[11px] font-medium rounded-lg transition-all border ${m?"bg-green-500/20 text-green-400 border-green-500/30":"bg-neutral-800/70 text-neutral-200 border-neutral-700/50 hover:bg-neutral-800"} disabled:opacity-50 disabled:cursor-not-allowed`,children:m?"Prompt Copied!":"Copy Prompt"}),y.jsxs("button",{onClick:A,className:`py-1.5 text-[11px] font-medium rounded-lg transition-all ${u?"bg-green-500/20 text-green-400 border border-green-500/30":"bg-studio-accent/15 text-studio-accent border border-studio-accent/25 hover:bg-studio-accent/25"}`,children:[u?"Copied!":"Copy to Agent",!u&&y.jsx("span",{className:"text-[9px] text-studio-accent/50 ml-1.5",children:"Cmd+Enter"})]})]})]})})}const D3="#3CE6AC",YR="#E9FFF6",WR="rgba(60,230,172,0.12)";function Ni(){return{clip:D3,accent:D3,label:YR,iconBackground:WR}}const V3={video:Ni(),audio:Ni(),img:Ni(),div:Ni(),span:Ni(),p:Ni(),h1:Ni(),section:Ni(),sfx:Ni()},GR=Ni(),Bw={shellBackground:"#0A0A0B",shellBorder:"rgba(255,255,255,0.05)",rulerBorder:"rgba(255,255,255,0.045)",rowBackground:"#0A0A0B",rowBorder:"rgba(255,255,255,0.05)",gutterBackground:"#0A0A0B",gutterBorder:"rgba(255,255,255,0.05)",textPrimary:"#E8EDF5",textSecondary:"#8391A8",tickText:"rgba(131,145,168,0.92)",tickMajor:"rgba(255,255,255,0.13)",tickMinor:"rgba(255,255,255,0.08)",clipBackground:"linear-gradient(180deg, rgba(20,25,34,0.98), rgba(14,18,27,0.98))",clipBackgroundActive:"linear-gradient(180deg, rgba(24,30,40,0.99), rgba(15,20,29,0.99))",clipBorder:"rgba(255,255,255,0.07)",clipBorderHover:"rgba(255,255,255,0.11)",clipBorderActive:"rgba(255,255,255,0.14)",clipShadow:"inset 0 1px 0 rgba(255,255,255,0.03), 0 6px 18px rgba(0,0,0,0.18)",clipShadowHover:"inset 0 1px 0 rgba(255,255,255,0.035), 0 8px 20px rgba(0,0,0,0.2)",clipShadowActive:"inset 0 1px 0 rgba(255,255,255,0.04), 0 10px 24px rgba(0,0,0,0.22), 0 0 0 1px rgba(255,255,255,0.035)",clipShadowDragging:"inset 0 1px 0 rgba(255,255,255,0.04), 0 18px 36px rgba(0,0,0,0.34), 0 8px 16px rgba(0,0,0,0.18), 0 0 0 1px rgba(255,255,255,0.04)",handleColor:"rgba(255,255,255,0.11)",panelResizeSeam:"rgba(255,255,255,0.12)",panelResizeActive:"rgba(255,255,255,0.24)",clipRadius:"11px 15px 13px 9px / 10px 14px 12px 10px"};function KR(n){const e=n.toLowerCase();return e.startsWith("h")&&e.length===2&&"123456".includes(e[1]??"")?V3.h1:V3[e]??GR}function JR({isHovered:n,isSelected:e,isDragging:t}){return t?.95:e?.82:n?.76:0}function eQ({element:n,draggedElementId:e,previewStart:t,previewTrack:r}){return(n.key??n.id)!==e||t===null||r===null?n:{...n,start:t,track:r}}const on=32,P0=72,xc=24,I3=3,tQ=18,nQ=20;function rQ(n,e){const t=[.25,.5,1,2,5,10,15,30,60,120,300,600];if(Number.isFinite(e)&&(e??0)>0)return t.find(s=>s*(e??0)>=128)??600;const r=[.25,.5,1,2,5,10,15,30,60],i=n/6;return r.find(a=>a>=i)??60}function iQ(n,e){let t=n/2;return n>=30?t=n/6:n>=15?t=n/3:n>=5?t=n/5:n>=1&&(t=n/4),Number.isFinite(e)&&(e??0)>0&&t*(e??0)<20?Math.max(.25,n/2):Math.max(.25,t)}function aQ(n,e){if(n<=0||!Number.isFinite(n)||n>7200)return{major:[],minor:[]};const t=rQ(n,e),r=iQ(t,e),i=[],a=[],s=2e3;for(let o=0;o<=n+.001&&i.length+a.length<s;o+=r){const u=Math.round(o*100)/100;Math.abs(u%t)<.01||Math.abs(u%t-t)<.01?i.push(u):a.push(u)}return{major:i,minor:a}}function sQ(n,e,t){if(!Number.isFinite(n))return"0:00";const r=Math.max(0,n);if(t<1){const i=Math.round(r*10),a=Math.floor(i/10),s=i%10;return`${$n(a)}.${s}`}if(e>=3600||r>=3600){const i=Math.floor(r),a=Math.floor(i/3600),s=Math.floor(i%3600/60),o=i%60;return`${a}:${s.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`}return $n(r)}function L3(n,e,t){return n==="fit"||!Number.isFinite(e)||!Number.isFinite(t)?!1:e-t>1}function lQ(n,e,t){return n==="manual"&&e==="fit"?0:t}function oQ(n){const e=Math.max(0,n.currentPixelsPerSecond),t=Math.max(0,n.nextPixelsPerSecond);if(!Number.isFinite(n.pointerX)||!Number.isFinite(n.currentScrollLeft)||!Number.isFinite(n.duration)||n.duration<=0||e<=0||t<=0)return Math.max(0,n.currentScrollLeft);const r=Math.max(0,n.currentScrollLeft+n.pointerX-n.gutter),i=Math.max(0,Math.min(n.duration,r/e));return Math.max(0,n.gutter+i*t-n.pointerX)}function z3(n,e){return!Number.isFinite(n)||!Number.isFinite(e)?on:on+Math.max(0,n)*Math.max(0,e)}function cQ(n){return xc+Math.max(0,n)*P0+nQ}function uQ(n,e){return!Number.isFinite(n)||!Number.isFinite(e)?!0:n-e<=1}function fQ(n,e){return n.length===0?0:e==null||e<0?n[0]:e>=n.length?Math.max(...n)+1:n[e]??n[n.length-1]??0}function xg(n,e,t){const r=e-n.rectLeft+n.scrollLeft-on,i=t-n.rectTop+n.scrollTop-xc,a=Math.max(0,Math.min(n.duration,Math.round(r/Math.max(n.pixelsPerSecond,1)*100)/100)),s=Math.floor(i/Math.max(n.trackHeight,1));return{start:a,track:fQ(n.trackOrder,s)}}function dQ({scrollRef:n,ppsRef:e,effectiveDuration:t,pps:r,onSeek:i,seekFromX:a,autoScrollDuringDrag:s,dragScrollRaf:o,isDragging:u,setShowPopover:d}){const m=h.useRef(!1),p=h.useRef(0),[O,b]=h.useState(null),S=h.useRef(null),k=h.useRef(0),T=h.useRef(0),w=h.useCallback(C=>{var P,$;if(C.button===0){if(C.shiftKey){C.currentTarget.setPointerCapture(C.pointerId),m.current=!0,d(!1);const M=(P=n.current)==null?void 0:P.getBoundingClientRect();if(M){const R=C.clientX-M.left+((($=n.current)==null?void 0:$.scrollLeft)??0)-on,N=Math.max(0,R/r);p.current=N,b({start:N,end:N,anchorX:C.clientX,anchorY:C.clientY})}return}S.current=null,!C.target.closest("[data-clip]")&&(C.currentTarget.setPointerCapture(C.pointerId),u.current=!0,b(null),d(!1),a(C.clientX))}},[a,r,n,u,d]),A=h.useCallback(C=>{var $,M;if(m.current){const R=($=n.current)==null?void 0:$.getBoundingClientRect();if(R){const N=C.clientX-R.left+(((M=n.current)==null?void 0:M.scrollLeft)??0)-on;b(Z=>Z?{...Z,end:Math.max(0,N/r),anchorX:C.clientX,anchorY:C.clientY}:null)}return}if(!u.current)return;T.current=C.clientX;const P=n.current;if(P){const R=P.getBoundingClientRect(),N=C.clientX-R.left+P.scrollLeft-on;if(N>=0){const Z=P.scrollWidth/r;Kr.notify(Math.max(0,Math.min(Z,N/r)))}}k.current||(k.current=requestAnimationFrame(()=>{k.current=0,u.current&&(a(T.current),s(T.current))}))},[a,s,r,n,u]),E=h.useCallback(()=>{if(m.current){m.current=!1;const C=S.current;S.current=null,b(P=>P&&C&&Math.abs(P.end-P.start)<=.2?(d(!0),FR(C.element,C)):P&&Math.abs(P.end-P.start)>.2?(d(!0),P):null);return}k.current&&(cancelAnimationFrame(k.current),k.current=0),a(T.current),u.current=!1,cancelAnimationFrame(o.current)},[u,o,d,a]);return{rangeSelection:O,setRangeSelection:b,shiftClickClipRef:S,handlePointerDown:w,handlePointerMove:A,handlePointerUp:E}}const hQ=10,mQ=2e3,pQ=.8,gQ=1.25,OQ=.0035;function VO(n){return Number.isFinite(n)?Math.max(hQ,Math.min(mQ,Math.round(n))):100}function w1(n,e){return n==="fit"?100:VO(e)}function yQ(n,e,t){if(!Number.isFinite(n)||n<=0)return 100;const r=w1(e,t);return e==="fit"?n:n*(r/100)}function B3(n,e,t){const r=w1(e,t),i=n==="in"?r*gQ:r*pQ;return VO(i)}function bQ(n,e,t){const r=w1(e,t);return!Number.isFinite(n)||n===0?r:VO(r*Math.exp(-n*OQ))}function xQ({playheadRef:n,scrollRef:e,ppsRef:t,durationRef:r,isDragging:i,currentTime:a,zoomMode:s,zoomModeRef:o,manualZoomPercentRef:u,fitPps:d,fitPpsRef:m,effectiveDuration:p,pps:O,timelineReady:b,elementsLength:S,setZoomMode:k,setManualZoomPercent:T,onSeek:w}){const A=h.useRef(0),E=h.useRef(s),C=h.useCallback(R=>{!n.current||r.current<=0||(n.current.style.left=`${z3(R,t.current)}px`)},[n,r,t]);h.useEffect(()=>{C(a)},[a,O,C]),h.useEffect(()=>{const R=e.current;if(!R){E.current=s;return}R.scrollLeft=lQ(E.current,s,R.scrollLeft),E.current=s},[s,e]),zt(()=>Kr.subscribe(N=>{if(!n.current||r.current<=0)return;const Z=z3(N,t.current);n.current.style.left=`${Z}px`;const D=e.current;if(D&&!i.current&&L3(o.current,D.scrollWidth,D.clientWidth)){const I=D.clientWidth*.12;Z>D.scrollLeft+D.clientWidth-I?D.scrollLeft=Z-D.clientWidth*.15:Z<D.scrollLeft+on&&(D.scrollLeft=Math.max(0,Z-on))}}));const P=h.useCallback(R=>{const N=e.current;if(!N||p<=0)return;const Z=N.getBoundingClientRect(),D=R-Z.left+N.scrollLeft-on;if(D<0)return;const I=Math.max(0,Math.min(p,D/O));Kr.notify(I),w==null||w(I)},[e,p,O,w]),$=h.useCallback(R=>{cancelAnimationFrame(A.current);const N=e.current;if(!N||!i.current||!L3(o.current,N.scrollWidth,N.clientWidth))return;const Z=N.getBoundingClientRect(),D=40,I=12;let U=0;R<Z.left+D?U=-I*Math.max(0,1-(R-Z.left)/D):R>Z.right-D&&(U=I*Math.max(0,1-(Z.right-R)/D)),U!==0&&(N.scrollLeft+=U,P(R),A.current=requestAnimationFrame(()=>$(R)))},[e,i,o,P]),M=h.useCallback(R=>{if(!R.ctrlKey)return;const N=e.current;if(!N||r.current<=0||m.current<=0||t.current<=0)return;R.preventDefault(),R.stopPropagation();const Z=N.getBoundingClientRect(),D=bQ(R.deltaY,o.current,u.current);if(D===u.current&&o.current==="manual")return;const I=m.current*(D/100),U=oQ({pointerX:R.clientX-Z.left,currentScrollLeft:N.scrollLeft,gutter:on,currentPixelsPerSecond:t.current,nextPixelsPerSecond:I,duration:r.current});k("manual"),T(D),requestAnimationFrame(()=>{const K=Math.max(0,N.scrollWidth-N.clientWidth);N.scrollLeft=Math.min(K,U)})},[e,r,m,t,o,u,T,k]);return h.useEffect(()=>{const R=e.current;if(R)return R.addEventListener("wheel",M,{passive:!1,capture:!0}),()=>{R.removeEventListener("wheel",M,{capture:!0})}},[M,e,b,S]),{seekFromX:P,autoScrollDuringDrag:$,dragScrollRaf:A}}const _c="/icons/timeline";function Nc({src:n}){return y.jsx("img",{src:n,alt:"",width:12,height:12,style:{filter:"brightness(0) invert(1)"},draggable:!1})}const SQ=y.jsx(Nc,{src:`${_c}/captions.svg`}),H3=y.jsx(Nc,{src:`${_c}/image.svg`}),kQ=y.jsx(Nc,{src:`${_c}/music.svg`}),F3=y.jsx(Nc,{src:`${_c}/text.svg`}),t8=y.jsx(Nc,{src:`${_c}/composition.svg`}),vQ=y.jsx(Nc,{src:`${_c}/audio.svg`}),X3={video:H3,audio:kQ,img:H3,div:t8,span:SQ,p:F3,h1:F3,section:t8,sfx:vQ};function U3(n){const e=KR(n),t=n.toLowerCase(),r=t.startsWith("h")&&t.length===2&&"123456".includes(t[1]??"")?X3.h1:X3[t]??t8;return{...e,icon:r}}const C0=/\.(jpg|jpeg|png|gif|webp|svg|ico)$/i,IO=/\.(mp4|webm|mov)$/i,LO=/\.(mp3|wav|ogg|m4a|aac)$/i,mh=/\.(woff|woff2|ttf|ttc|otf|eot)$/i,Hw=/\.(mp4|webm|mov|mp3|wav|ogg|m4a|aac|jpg|jpeg|png|gif|webp|svg|ico)$/i;function Fw(n){return Hw.test(n)}const n8="application/x-hyperframes-asset",r8="application/x-hyperframes-block",wQ=5;function q3(n){return C0.test(n)?"image":IO.test(n)?"video":LO.test(n)?"audio":null}function TQ(n,e){const i=(n.split("/").pop()??"asset").replace(/\.[^.]+$/,"").replace(/[^a-zA-Z0-9_-]+/g,"_").replace(/^_+|_+$/g,"").toLowerCase()||"asset",a=new Set(e);if(!a.has(i))return i;let s=2;for(;a.has(`${i}_${s}`);)s+=1;return`${i}_${s}`}function AQ(n,e){const t=n.includes("/")?n.slice(0,n.lastIndexOf("/")):"";if(!t)return e;const r=t.split("/").filter(Boolean),i=e.split("/").filter(Boolean);for(;r.length>0&&i.length>0&&r[0]===i[0];)r.shift(),i.shift();return[...r.map(()=>".."),...i].join("/")||e.split("/").pop()||e}function PQ(n,e,t=[]){let r=Math.round(Math.max(0,n.start)*100)/100;const i=r,a=e.map(d=>Number.isFinite(d)&&d>0?d:wQ),s=a.reduce((d,m)=>Math.round((d+m)*100)/100,i),u=t.some(d=>{if(d.track!==n.track)return!1;const m=Math.max(0,d.start),p=m+Math.max(0,d.duration);return i<p&&s>m})?Math.max(n.track,...t.map(d=>d.track))+1:n.track;return a.map(d=>{const m=r;return r=Math.round((r+d)*100)/100,{start:m,track:u}})}function Xw(n){var r,i;const e=Number.parseFloat(((r=n.match(/\bdata-width=(["'])([^"']+)\1/i))==null?void 0:r[2])??""),t=Number.parseFloat(((i=n.match(/\bdata-height=(["'])([^"']+)\1/i))==null?void 0:i[2])??"");return{left:0,top:0,width:Number.isFinite(e)&&e>0?Math.round(e):640,height:Number.isFinite(t)&&t>0?Math.round(t):360}}function CQ(n){const e=`id="${n.id}" class="clip" src="${n.assetPath}" data-start="${n.start}" data-duration="${n.duration}" data-track-index="${n.track}"`,t=n.geometry??{left:0,top:0,width:640,height:360},r=`position: absolute; left: ${t.left}px; top: ${t.top}px; width: ${t.width}px; height: ${t.height}px; object-fit: contain; z-index: ${n.zIndex}`;return n.kind==="image"?`<img ${e} style="${r}" />`:n.kind==="video"?`<video ${e} muted playsinline style="${r}"></video>`:`<audio ${e} style="z-index: ${n.zIndex}"></audio>`}function zO(n,e){const r=/<[^>]*data-composition-id="[^"]+"[^>]*>/i.exec(n);if(!r||r.index==null)throw new Error("No composition root found in target source");const i=r.index+r[0].length;return`${n.slice(0,i)}${e}${n.slice(i)}`}function EQ({isDragOver:n,onFileDrop:e,onDragOver:t,onDragLeave:r,onDrop:i}){return y.jsxs("div",{className:`h-full border-t bg-[#0a0a0b] flex flex-col select-none transition-colors duration-150 ${n?"border-studio-accent/50 bg-studio-accent/[0.03]":"border-neutral-800/50"}`,onDragOver:t,onDragLeave:r,onDrop:i,children:[y.jsx("div",{className:"flex-shrink-0 border-b border-neutral-800/40 flex items-end relative",style:{height:xc,paddingLeft:on},children:[0,10,20,30,40,50].map(a=>y.jsxs("div",{className:"flex flex-col items-center",style:{position:"absolute",left:on+a*14},children:[y.jsx("span",{className:"text-[9px] text-neutral-600 font-mono tabular-nums leading-none mb-0.5",children:`${Math.floor(a/60)}:${(a%60).toString().padStart(2,"0")}`}),y.jsx("div",{className:"w-px h-[5px] bg-neutral-700/40"})]},a))}),y.jsx("div",{className:"flex-1 flex items-center justify-center",children:y.jsx("div",{className:`flex items-center gap-3 px-6 py-3 border border-dashed rounded-lg transition-colors duration-150 ${n?"border-studio-accent/60 bg-studio-accent/[0.06]":"border-neutral-700/50"}`,children:n?y.jsxs(y.Fragment,{children:[y.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-studio-accent flex-shrink-0",children:[y.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),y.jsx("polyline",{points:"7 10 12 15 17 10"}),y.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]}),y.jsx("span",{className:"text-[13px] text-studio-accent",children:"Drop media files to import"})]}):y.jsxs(y.Fragment,{children:[y.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-neutral-600 flex-shrink-0",children:[y.jsx("rect",{x:"2",y:"2",width:"20",height:"20",rx:"2"}),y.jsx("path",{d:"M7 2v20"}),y.jsx("path",{d:"M17 2v20"}),y.jsx("path",{d:"M2 7h20"}),y.jsx("path",{d:"M2 17h20"})]}),y.jsx("span",{className:"text-[13px] text-neutral-500",children:e?"Drop media here or describe your video to start":"Describe your video to start creating"})]})})})]})}const Y3=h.memo(function({el:e,pps:t,clipY:r,isSelected:i,isHovered:a,isDragging:s=!1,hasCustomContent:o,capabilities:u,theme:d=Bw,trackStyle:m,isComposition:p,onHoverStart:O,onHoverEnd:b,onPointerDown:S,onResizeStart:k,onClick:T,onDoubleClick:w,children:A}){const E=e.start*t,C=Math.max(e.duration*t,4),P=JR({isHovered:a,isSelected:i,isDragging:s}),$=i?d.clipBorderActive:a?d.clipBorderHover:d.clipBorder,M=s?d.clipShadowDragging:i?d.clipShadowActive:a?d.clipShadowHover:d.clipShadow,R=e.label||e.id||e.tag,N=P>.01;return y.jsxs("div",{"data-clip":"true",className:o?"absolute overflow-hidden":"absolute flex items-center overflow-hidden",style:{left:E,width:C,top:r,bottom:r,borderRadius:d.clipRadius,background:i?`linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0)), linear-gradient(120deg, ${m.accent}22, transparent 28%), ${d.clipBackgroundActive}`:`linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)), linear-gradient(120deg, ${m.accent}1e, transparent 28%), ${d.clipBackground}`,backgroundImage:p&&!o?"repeating-linear-gradient(135deg, transparent, transparent 3px, rgba(255,255,255,0.05) 3px, rgba(255,255,255,0.05) 6px)":void 0,border:`1px solid ${$}`,boxShadow:M,transition:"border-color 120ms ease-out, box-shadow 140ms ease-out, background 140ms ease-out",zIndex:s?20:i?10:a?5:1,cursor:u.canMove?"grab":"default",transform:s?"translateY(-1px)":void 0},title:p?`${e.compositionSrc} • Double-click to open`:`${R} • ${e.start.toFixed(1)}s – ${(e.start+e.duration).toFixed(1)}s`,onPointerEnter:O,onPointerLeave:b,onPointerDown:S,onClick:T,onDoubleClick:w,children:[y.jsx("div",{"aria-hidden":"true",role:"presentation",onPointerDown:Z=>k==null?void 0:k("start",Z),style:{position:"absolute",left:0,top:0,bottom:0,width:18,opacity:N&&u.canTrimStart?1:0,pointerEvents:k&&u.canTrimStart?"auto":"none",zIndex:4,transition:"opacity 120ms ease-out",cursor:"col-resize",background:N&&u.canTrimStart?`linear-gradient(90deg, ${m.accent}4d 0%, ${m.accent}22 42%, transparent 100%)`:"transparent"},children:y.jsx("div",{style:{position:"absolute",left:6,top:7,bottom:7,width:3,borderRadius:999,background:d.handleColor,boxShadow:`0 0 0 1px ${m.accent}38, 0 0 12px ${m.accent}18`,opacity:P,pointerEvents:"none"}})}),y.jsx("div",{"aria-hidden":"true",role:"presentation",onPointerDown:Z=>k==null?void 0:k("end",Z),style:{position:"absolute",right:0,top:0,bottom:0,width:18,opacity:N&&u.canTrimEnd?1:0,pointerEvents:k&&u.canTrimEnd?"auto":"none",zIndex:4,transition:"opacity 120ms ease-out",cursor:"col-resize",background:N&&u.canTrimEnd?`linear-gradient(270deg, ${m.accent}4d 0%, ${m.accent}22 42%, transparent 100%)`:"transparent"},children:y.jsx("div",{style:{position:"absolute",right:6,top:7,bottom:7,width:3,borderRadius:999,background:d.handleColor,boxShadow:`0 0 0 1px ${m.accent}38, 0 0 12px ${m.accent}18`,opacity:P,pointerEvents:"none"}})}),A]})}),MQ=h.memo(function({major:e,minor:t,pps:r,trackContentWidth:i,totalH:a,effectiveDuration:s,majorTickInterval:o,shiftHeld:u,rangeSelection:d,theme:m}){return y.jsxs(y.Fragment,{children:[y.jsx("svg",{className:"absolute pointer-events-none",style:{left:on,width:i},height:a,children:e.map(p=>{const O=p*r;return y.jsx("line",{x1:O,y1:xc,x2:O,y2:a,stroke:m.tickMinor,strokeWidth:"1"},`g-${p}`)})}),y.jsxs("div",{className:"relative overflow-hidden",style:{height:xc,marginLeft:on,width:i},children:[u&&!d&&y.jsx("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none z-10",children:y.jsx("span",{className:"text-[9px] font-medium",style:{color:m.textSecondary},children:"Drag or click a clip to edit range"})}),t.map(p=>y.jsx("div",{className:"absolute bottom-0",style:{left:p*r},children:y.jsx("div",{className:"w-px h-[3px]",style:{background:m.tickMinor}})},`m-${p}`)),e.map(p=>y.jsxs("div",{className:"absolute bottom-0 flex flex-col items-center",style:{left:p*r},children:[y.jsx("span",{className:"text-[9px] font-mono tabular-nums leading-none mb-0.5",style:{color:m.tickText},children:sQ(p,s,o)}),y.jsx("div",{className:"w-px h-[5px]",style:{background:m.tickMajor}})]},`M-${p}`))]})]})}),$Q=h.memo(function({major:e,minor:t,pps:r,trackContentWidth:i,totalH:a,effectiveDuration:s,majorTickInterval:o,shiftHeld:u,rangeSelection:d,theme:m,displayTrackOrder:p,trackOrder:O,tracks:b,trackStyles:S,selectedElementId:k,hoveredClip:T,draggedClip:w,resizingClip:A,blockedClipRef:E,suppressClickRef:C,scrollRef:P,renderClipContent:$,renderClipOverlay:M,playheadRef:R,onResizeElement:N,onMoveElement:Z,onDrillDown:D,onSelectElement:I,setHoveredClip:U,setShowPopover:K,setRangeSelection:q,setResizingClip:L,setDraggedClip:W,setSelectedElementId:ee,syncClipDragAutoScroll:X,shiftClickClipRef:B,getPreviewElement:_,getTrackStyle:j}){const H=(w==null?void 0:w.element)??null,F=(w==null?void 0:w.started)===!0&&H?eQ({element:H,draggedElementId:H.key??H.id,previewStart:w.previewStart,previewTrack:w.previewTrack}):null,Y=(w==null?void 0:w.started)===!0&&F&&P.current?{left:w.pointerClientX-P.current.getBoundingClientRect().left+P.current.scrollLeft-w.pointerOffsetX,top:w.pointerClientY-P.current.getBoundingClientRect().top+P.current.scrollTop-w.pointerOffsetY}:null,ae=(ie,Oe)=>y.jsxs(y.Fragment,{children:[M==null?void 0:M(ie),y.jsx("div",{className:$?"absolute inset-0 overflow-hidden":"flex flex-col justify-center overflow-hidden flex-1 min-w-0 px-6",children:($==null?void 0:$(ie,Oe))??y.jsxs("div",{className:"flex h-full min-h-0 flex-col justify-between py-3",children:[y.jsx("span",{className:"max-w-full truncate rounded-md px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-[0.08em] leading-none",style:{color:Oe.label,background:`${Oe.accent}26`,boxShadow:`inset 0 0 0 1px ${Oe.accent}33`},children:ie.tag}),y.jsxs("span",{className:"max-w-full truncate rounded-md px-1.5 py-0.5 text-[10px] font-medium tabular-nums leading-none",style:{color:m.textSecondary,background:"rgba(255,255,255,0.04)"},children:[$n(ie.start)," ","→"," ",$n(ie.start+ie.duration)]})]})})]});return y.jsxs("div",{className:"relative",style:{height:a,width:on+i},children:[y.jsx(MQ,{major:e,minor:t,pps:r,trackContentWidth:i,totalH:a,effectiveDuration:s,majorTickInterval:o,shiftHeld:u,rangeSelection:d,theme:m}),p.map(ie=>{var Te;const Oe=((Te=b.find(([Ce])=>Ce===ie))==null?void 0:Te[1])??[],de=S.get(ie)??j(""),me=(w==null?void 0:w.started)===!0&&!O.includes(ie)&&Oe.length===0;return y.jsxs("div",{className:"relative flex",style:{height:P0,background:m.rowBackground,borderBottom:`1px solid ${m.rowBorder}`},children:[y.jsx("div",{className:"flex-shrink-0 flex items-center justify-center",style:{width:on,background:m.gutterBackground,borderRight:`1px solid ${m.gutterBorder}`},children:y.jsx("div",{className:"flex items-center justify-center",style:{width:18,height:18,borderRadius:6,backgroundColor:de.iconBackground,border:`1px solid ${m.gutterBorder}`,color:"#fff"},children:de.icon})}),y.jsxs("div",{style:{width:i},className:"relative",children:[me&&y.jsx("div",{className:"absolute inset-0 flex items-center",style:{paddingLeft:16,color:de.label,fontSize:11,letterSpacing:"0.08em",textTransform:"uppercase",background:`linear-gradient(90deg, ${de.accent}14, transparent 28%)`,boxShadow:`inset 0 0 0 1px ${de.accent}24`},children:"New track"}),Oe.map((Ce,Ne)=>{const Xe=j(Ce.tag),V=Ce.key??Ce.id,fe=N3(Ce),te=k===V,le=!!Ce.compositionSrc,ce=`${V}-${Ne}`;if((w==null?void 0:w.started)===!0&&((H==null?void 0:H.key)??(H==null?void 0:H.id))===V)return null;const ye=_(Ce);return y.jsx(Y3,{el:ye,pps:r,clipY:I3,isSelected:te,isHovered:T===ce,isDragging:!1,hasCustomContent:!!$,capabilities:fe,theme:m,trackStyle:Xe,isComposition:le,onHoverStart:()=>U(ce),onHoverEnd:()=>U(null),onResizeStart:(be,Me)=>{Me.button!==0||Me.shiftKey||!N||be==="start"&&!fe.canTrimStart||be==="end"&&!fe.canTrimEnd||(Me.stopPropagation(),E.current=null,K(!1),q(null),L({element:Ce,edge:be,originClientX:Me.clientX,previewStart:Ce.start,previewDuration:Ce.duration,previewPlaybackStart:Ce.playbackStart,started:!1}))},onPointerDown:be=>{var Ye,_e;if(be.button!==0)return;if(be.shiftKey){B.current={element:Ce,anchorX:be.clientX,anchorY:be.clientY};return}const Pe=be.currentTarget.getBoundingClientRect(),Ve=HR({width:Pe.width,offsetX:be.clientX-Pe.left,handleWidth:tQ,capabilities:fe});if(Ve&&(Ve==="move"&&Z||Ve!=="move"&&N)){E.current={element:Ce,intent:Ve,originClientX:be.clientX,originClientY:be.clientY,started:!1};return}!Z||!fe.canMove||(E.current=null,K(!1),q(null),W({element:Ce,originClientX:be.clientX,originClientY:be.clientY,originScrollLeft:((Ye=P.current)==null?void 0:Ye.scrollLeft)??0,originScrollTop:((_e=P.current)==null?void 0:_e.scrollTop)??0,pointerClientX:be.clientX,pointerClientY:be.clientY,pointerOffsetX:be.clientX-Pe.left,pointerOffsetY:be.clientY-Pe.top,previewStart:Ce.start,previewTrack:Ce.track,started:!1}),X(be.clientX,be.clientY))},onClick:be=>{if(be.stopPropagation(),C.current)return;const Me=te?null:Ce;ee(Me?V:null),I==null||I(Me)},onDoubleClick:be=>{be.stopPropagation(),!C.current&&le&&D&&D(Ce)},children:ae(ye,Xe)},ce)})]})]},ie)}),F&&Y&&y.jsx("div",{className:"absolute pointer-events-none",style:{top:Y.top,left:Y.left,width:Math.max(F.duration*r,4),height:P0-I3*2,zIndex:40},children:y.jsx(Y3,{el:{...F,start:0},pps:r,clipY:0,isSelected:k===(F.key??F.id),isHovered:!1,isDragging:!0,hasCustomContent:!!$,capabilities:N3(F),theme:m,trackStyle:j(F.tag),isComposition:!!F.compositionSrc,onHoverStart:()=>{},onHoverEnd:()=>{},onResizeStart:()=>{},onClick:()=>{},onDoubleClick:()=>{},children:ae(F,j(F.tag))})}),d&&y.jsx("div",{className:"absolute pointer-events-none",style:{left:on+Math.min(d.start,d.end)*r,width:Math.abs(d.end-d.start)*r,top:xc,bottom:0,backgroundColor:"rgba(59, 130, 246, 0.12)",borderLeft:"1px solid rgba(59, 130, 246, 0.4)",borderRight:"1px solid rgba(59, 130, 246, 0.4)",zIndex:50}}),y.jsxs("div",{ref:R,className:"absolute top-0 bottom-0 pointer-events-none",style:{left:`${on}px`,zIndex:100},children:[y.jsx("div",{className:"absolute top-0 bottom-0",style:{left:"50%",width:2,marginLeft:-1,background:"var(--hf-accent, #3CE6AC)",boxShadow:"0 0 8px rgba(60,230,172,0.5)"}}),y.jsx("div",{className:"absolute",style:{left:"50%",top:0,transform:"translateX(-50%)"},children:y.jsx("div",{style:{width:0,height:0,borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:"8px solid var(--hf-accent, #3CE6AC)",filter:"drop-shadow(0 1px 3px rgba(0,0,0,0.6))"}})})]})]})});function RQ({scrollRef:n,ppsRef:e,durationRef:t,trackOrderRef:r,onMoveElement:i,onResizeElement:a,onBlockedEditAttempt:s,setShowPopover:o,setRangeSelectionRef:u}){const d=Ae(U=>U.updateElement),[m,p]=h.useState(null),O=h.useRef(null);O.current=m;const[b,S]=h.useState(null),k=h.useRef(null);k.current=b;const T=h.useRef(null),w=h.useRef(!1),A=h.useRef(i);A.current=i;const E=h.useRef(a);E.current=a;const C=h.useRef(0),P=h.useRef(null),$=h.useCallback((U,K,q)=>{const L=n.current,W=IR({start:U.element.start,track:U.element.track,duration:U.element.duration,originClientX:U.originClientX,originClientY:U.originClientY,originScrollLeft:U.originScrollLeft,originScrollTop:U.originScrollTop,currentScrollLeft:(L==null?void 0:L.scrollLeft)??U.originScrollLeft,currentScrollTop:(L==null?void 0:L.scrollTop)??U.originScrollTop,pixelsPerSecond:e.current,trackHeight:P0,maxStart:Math.max(0,t.current-U.element.duration),trackOrder:r.current},K,q);return{...U,started:!0,pointerClientX:K,pointerClientY:q,previewStart:W.start,previewTrack:W.track}},[n,e,t,r]),M=h.useCallback(()=>{P.current=null,C.current&&(cancelAnimationFrame(C.current),C.current=0)},[]),R=h.useCallback(()=>{C.current=0;const U=O.current,K=P.current,q=n.current;if(!U||!K||!q)return;const L=q.getBoundingClientRect(),W=_3(L,K.clientX,K.clientY);if(W.x===0&&W.y===0)return;const ee=Math.max(0,q.scrollWidth-q.clientWidth),X=Math.max(0,q.scrollHeight-q.clientHeight),B=Math.max(0,Math.min(ee,q.scrollLeft+W.x)),_=Math.max(0,Math.min(X,q.scrollTop+W.y));B===q.scrollLeft&&_===q.scrollTop||(q.scrollLeft=B,q.scrollTop=_,p(j=>j&&$(j,K.clientX,K.clientY)),C.current=requestAnimationFrame(R))},[n,$]),N=h.useCallback((U,K)=>{P.current={clientX:U,clientY:K};const q=n.current;if(!q)return;const L=q.getBoundingClientRect(),W=_3(L,U,K);if(W.x===0&&W.y===0){C.current&&(cancelAnimationFrame(C.current),C.current=0);return}C.current||(C.current=requestAnimationFrame(R))},[n,R]),Z=h.useRef($);Z.current=$;const D=h.useRef(N);D.current=N;const I=h.useRef(M);return I.current=M,zt(()=>{const U=()=>{requestAnimationFrame(()=>{w.current=!1})},K=L=>{var _,j,H;const W=O.current,ee=k.current,X=T.current;if(ee){const F=Math.abs(L.clientX-ee.originClientX);if(!ee.started&&F<2)return;o(!1),(_=u.current)==null||_.call(u,null);const Y=ee.element.sourceDuration!=null?Math.max(0,(ee.element.sourceDuration-(ee.element.playbackStart??0))/Math.max(ee.element.playbackRate??1,.1)):Number.POSITIVE_INFINITY,ae=ee.element.tag.toLowerCase(),ie=ae==="audio"||ae==="video",Oe=LR({start:ee.element.start,duration:ee.element.duration,originClientX:ee.originClientX,pixelsPerSecond:e.current,minStart:0,maxEnd:Math.min(t.current,ee.element.start+Y),playbackStart:ee.edge==="start"&&ie?ee.element.playbackStart??0:ee.element.playbackStart,playbackRate:ee.element.playbackRate},ee.edge,L.clientX);S(de=>de&&{...de,started:!0,previewStart:Oe.start,previewDuration:Oe.duration,previewPlaybackStart:Oe.playbackStart});return}if(X){const F=Math.hypot(L.clientX-X.originClientX,L.clientY-X.originClientY),Y=X.intent==="move"?4:2;if(!X.started&&F<Y)return;X.started||(X.started=!0,T.current=X,w.current=!0,o(!1),(j=u.current)==null||j.call(u,null),s==null||s(X.element,X.intent));return}if(!W)return;const B=Math.hypot(L.clientX-W.originClientX,L.clientY-W.originClientY);!W.started&&B<4||(o(!1),(H=u.current)==null||H.call(u,null),p(F=>F&&Z.current(F,L.clientX,L.clientY)),D.current(L.clientX,L.clientY))},q=()=>{var B,_;I.current();const L=k.current;if(L){if(k.current=null,S(null),!L.started||(w.current=!0,U(),!(L.previewStart!==L.element.start||L.previewDuration!==L.element.duration||L.previewPlaybackStart!==L.element.playbackStart)))return;d(L.element.key??L.element.id,{start:L.previewStart,duration:L.previewDuration,playbackStart:L.previewPlaybackStart}),Promise.resolve((B=E.current)==null?void 0:B.call(E,L.element,{start:L.previewStart,duration:L.previewDuration,playbackStart:L.previewPlaybackStart})).catch(H=>{d(L.element.key??L.element.id,{start:L.element.start,duration:L.element.duration,playbackStart:L.element.playbackStart}),console.error("[Timeline] Failed to persist clip resize",H)});return}const W=T.current;if(W){if(T.current=null,!W.started)return;U();return}const ee=O.current;!ee||(O.current=null,p(null),!ee.started)||(w.current=!0,U(),!(ee.previewStart!==ee.element.start||ee.previewTrack!==ee.element.track))||(d(ee.element.key??ee.element.id,{start:ee.previewStart,track:ee.previewTrack}),Promise.resolve((_=A.current)==null?void 0:_.call(A,ee.element,{start:ee.previewStart,track:ee.previewTrack})).catch(j=>{d(ee.element.key??ee.element.id,{start:ee.element.start,track:ee.element.track}),console.error("[Timeline] Failed to persist clip move",j)}))};return window.addEventListener("pointermove",K),window.addEventListener("pointerup",q),window.addEventListener("pointercancel",q),()=>{I.current(),window.removeEventListener("pointermove",K),window.removeEventListener("pointerup",q),window.removeEventListener("pointercancel",q)}}),{draggedClip:m,setDraggedClip:p,resizingClip:b,setResizingClip:S,blockedClipRef:T,suppressClickRef:w,syncClipDragAutoScroll:N,stopClipDragAutoScroll:M}}const QQ=h.memo(function({onSeek:e,onDrillDown:t,renderClipContent:r,renderClipOverlay:i,onFileDrop:a,onAssetDrop:s,onBlockDrop:o,onDeleteElement:u,onMoveElement:d,onResizeElement:m,onBlockedEditAttempt:p,onSelectElement:O,theme:b}={}){const S=h.useMemo(()=>({...Bw,...b}),[b]),k=Ae($e=>$e.elements),T=Ae($e=>$e.duration),w=Ae($e=>$e.timelineReady),A=Ae($e=>$e.selectedElementId),E=Ae($e=>$e.setSelectedElementId),C=Ae($e=>$e.currentTime),P=Ae($e=>$e.zoomMode),$=Ae($e=>$e.manualZoomPercent),M=Ae($e=>$e.setZoomMode),R=Ae($e=>$e.setManualZoomPercent),N=h.useRef(null),Z=h.useRef(null),D=h.useRef(null),[I,U]=h.useState(null),K=h.useRef(!1),[q,L]=h.useState(!1);zt(()=>{const $e=un=>un.key==="Shift"&&L(!0),it=un=>un.key==="Shift"&&L(!1),vt=()=>L(!1);return window.addEventListener("keydown",$e),window.addEventListener("keyup",it),window.addEventListener("blur",vt),()=>{window.removeEventListener("keydown",$e),window.removeEventListener("keyup",it),window.removeEventListener("blur",vt)}});const[W,ee]=h.useState(!1),[X,B]=h.useState(!0),[_,j]=h.useState(0),H=h.useRef(null),F=h.useRef(0),Y=h.useCallback(()=>{const $e=D.current;B($e?uQ($e.scrollHeight,$e.clientHeight):!0)},[]),ae=h.useCallback(()=>{F.current&&cancelAnimationFrame(F.current),F.current=requestAnimationFrame(()=>{F.current=0,Y()})},[Y]),ie=h.useCallback($e=>{H.current&&(H.current.disconnect(),H.current=null),Z.current=$e,$e&&(j($e.clientWidth),ae(),H.current=new ResizeObserver(([it])=>{j(it.contentRect.width),ae()}),H.current.observe($e))},[ae]);zt(()=>()=>{var $e;($e=H.current)==null||$e.disconnect(),F.current&&cancelAnimationFrame(F.current)});const Oe=h.useMemo(()=>{const $e=Number.isFinite(T)?T:0;if(k.length===0)return $e;const it=Math.max(...k.map(un=>un.start+un.duration)),vt=Math.max($e,it);return Number.isFinite(vt)?vt:$e},[k,T]),de=h.useMemo(()=>{const $e=new Map;for(const it of k){const vt=$e.get(it.track)??[];vt.push(it),$e.set(it.track,vt)}return Array.from($e.entries()).sort(([it],[vt])=>it-vt)},[k]),me=h.useMemo(()=>{var it;const $e=new Map;for(const[vt,un]of de)$e.set(vt,U3(((it=un[0])==null?void 0:it.tag)??""));return $e},[de]),Te=h.useMemo(()=>de.map(([$e])=>$e),[de]),Ce=h.useRef(Te);Ce.current=Te;const Ne=h.useRef(100),Xe=h.useRef(Oe);Xe.current=Oe;const V=h.useRef(null),{draggedClip:fe,setDraggedClip:te,resizingClip:le,setResizingClip:ce,blockedClipRef:ge,suppressClickRef:ye,syncClipDragAutoScroll:be}=RQ({scrollRef:D,ppsRef:Ne,durationRef:Xe,trackOrderRef:Ce,onMoveElement:d,onResizeElement:m,onBlockedEditAttempt:p,setShowPopover:ee,setRangeSelectionRef:V}),Me=h.useMemo(()=>!(fe!=null&&fe.started)||Te.length===0||Te.includes(fe.previewTrack)?Te:[...Te,fe.previewTrack].sort(($e,it)=>$e-it),[fe,Te]),Pe=cQ(Me.length),Ve=h.useMemo(()=>k.find($e=>($e.key??$e.id)===A)??null,[k,A]),Ye=h.useRef(Ve);Ye.current=Ve;const _e=_>on&&Oe>0?(_-on-2)/Oe:100,Fe=yQ(_e,P,$);Ne.current=Fe;const _t=Math.max(0,Oe*Fe),qt=h.useRef(P);qt.current=P;const In=h.useRef($);In.current=$;const hr=h.useRef(_e);hr.current=_e;const{seekFromX:mr,autoScrollDuringDrag:Yt,dragScrollRaf:Sn}=xQ({playheadRef:N,scrollRef:D,ppsRef:Ne,durationRef:Xe,isDragging:K,currentTime:C,zoomMode:P,zoomModeRef:qt,manualZoomPercentRef:In,fitPps:_e,fitPpsRef:hr,effectiveDuration:Oe,pps:Fe,timelineReady:w,elementsLength:k.length,setZoomMode:M,setManualZoomPercent:R,onSeek:e}),{rangeSelection:Mt,setRangeSelection:si,shiftClickClipRef:Hs,handlePointerDown:Un,handlePointerMove:li,handlePointerUp:jr}=dQ({scrollRef:D,ppsRef:Ne,effectiveDuration:Oe,pps:Fe,onSeek:e,seekFromX:mr,autoScrollDuringDrag:Yt,dragScrollRaf:Sn,isDragging:K,setShowPopover:ee});V.current=si;const qn=h.useRef(Ye.current);h.useEffect(()=>{const $e=qn.current,it=Ye.current;qn.current=it,$e&&!it&&(ee(!1),si(null))});const{major:hn,minor:pr}=h.useMemo(()=>aQ(Oe,Fe),[Oe,Fe]),ra=hn.length>=2?Math.max(.25,hn[1]-hn[0]):Oe;h.useEffect(()=>{Y()},[Y,w,k.length,Pe]);const Lc=h.useCallback($e=>le&&(le.element.key??le.element.id)===($e.key??$e.id)?{...$e,start:le.previewStart,duration:le.previewDuration,playbackStart:le.previewPlaybackStart}:$e,[le]),[Ul,Ai]=h.useState(!1),je=h.useCallback($e=>{const it=$e.dataTransfer.files.length>0,vt=Array.from($e.dataTransfer.types),un=vt.includes(n8),ia=vt.includes(r8);!it&&!un&&!ia||($e.preventDefault(),(un||ia)&&($e.dataTransfer.dropEffect="copy"),Ai(!0))},[]),Pt=h.useCallback($e=>{$e.preventDefault(),Ai(!1);const it=D.current,vt=it==null?void 0:it.getBoundingClientRect(),un={rectLeft:(vt==null?void 0:vt.left)??0,rectTop:(vt==null?void 0:vt.top)??0,scrollLeft:(it==null?void 0:it.scrollLeft)??0,scrollTop:(it==null?void 0:it.scrollTop)??0,pixelsPerSecond:Ne.current,duration:Xe.current,trackHeight:P0,trackOrder:Ce.current};if(a&&$e.dataTransfer.files.length>0){a(Array.from($e.dataTransfer.files),it&&vt?xg(un,$e.clientX,$e.clientY):void 0);return}const ia=$e.dataTransfer.getData(n8);if(ia&&s&&it&&vt){try{const Ya=JSON.parse(ia);Ya.path&&s(Ya.path,xg(un,$e.clientX,$e.clientY))}catch{}return}const zc=$e.dataTransfer.getData(r8);if(zc&&o&&it&&vt)try{const Ya=JSON.parse(zc);Ya.name&&o(Ya.name,xg(un,$e.clientX,$e.clientY))}catch{}},[s,o,a]);return!w||k.length===0?y.jsx(EQ,{isDragOver:Ul,onFileDrop:!!a,onDragOver:je,onDragLeave:()=>Ai(!1),onDrop:Pt}):y.jsxs("div",{ref:ie,"aria-label":"Timeline",className:`relative border-t select-none h-full overflow-hidden ${q?"cursor-crosshair":"cursor-default"}`,style:{touchAction:"pan-x pan-y",background:S.shellBackground,borderColor:S.shellBorder},children:[y.jsx("div",{ref:D,className:`${P==="fit"?"overflow-x-hidden":"overflow-x-auto"} overflow-y-auto h-full`,onDragOver:je,onDragLeave:()=>Ai(!1),onDrop:Pt,onPointerDown:Un,onPointerMove:li,onPointerUp:jr,onLostPointerCapture:jr,children:y.jsx($Q,{major:hn,minor:pr,pps:Fe,trackContentWidth:_t,totalH:Pe,effectiveDuration:Oe,majorTickInterval:ra,shiftHeld:q,rangeSelection:Mt,theme:S,displayTrackOrder:Me,trackOrder:Te,tracks:de,trackStyles:me,selectedElementId:A,hoveredClip:I,draggedClip:fe,resizingClip:le,blockedClipRef:ge,suppressClickRef:ye,scrollRef:D,renderClipContent:r,renderClipOverlay:i,playheadRef:N,onResizeElement:m,onMoveElement:d,onDrillDown:t,onSelectElement:O,setHoveredClip:U,setShowPopover:ee,setRangeSelection:si,setResizingClip:ce,setDraggedClip:te,setSelectedElementId:E,syncClipDragAutoScroll:be,shiftClickClipRef:Hs,getPreviewElement:Lc,getTrackStyle:U3})}),X&&!W&&!Mt&&y.jsx("div",{className:"absolute bottom-2 right-3 pointer-events-none z-20",children:y.jsxs("div",{className:"flex items-center gap-1.5 px-2 py-1 rounded-md border",style:{background:"rgba(17,23,35,0.84)",borderColor:S.gutterBorder},children:[y.jsx("kbd",{className:"text-[9px] font-mono px-1 py-0.5 rounded",style:{color:S.textSecondary,background:"rgba(255,255,255,0.06)"},children:"Shift"}),y.jsx("span",{className:"text-[9px]",style:{color:S.textSecondary},children:"+ drag/click to edit range"})]})}),W&&Mt&&y.jsx(qR,{rangeStart:Mt.start,rangeEnd:Mt.end,anchorX:Mt.anchorX,anchorY:Mt.anchorY,onClose:()=>{ee(!1),si(null)}})]})}),W3=66,G3=6,_Q=h.memo(function({videoSrc:e,label:t,labelColor:r,duration:i=5}){const[a,s]=h.useState(0),[o,u]=h.useState(!1),[d,m]=h.useState([]),[p,O]=h.useState(16/9),b=h.useRef(null),S=h.useRef(null),k=h.useRef(!1),T=h.useCallback(E=>{var $,M,R;if(($=b.current)==null||$.disconnect(),(M=S.current)==null||M.disconnect(),!E)return;const C=((R=E.parentElement)==null?void 0:R.clientWidth)||E.clientWidth;s(C),b.current=new IntersectionObserver(([N])=>{var Z;N.isIntersecting&&(u(!0),(Z=b.current)==null||Z.disconnect())},{rootMargin:"200px"}),b.current.observe(E);const P=E.parentElement||E;S.current=new ResizeObserver(([N])=>{s(N.contentRect.width)}),S.current.observe(P)},[]);zt(()=>()=>{var E,C;(E=b.current)==null||E.disconnect(),(C=S.current)==null||C.disconnect()}),h.useEffect(()=>{if(!o||k.current)return;k.current=!0;const E=document.createElement("video");E.crossOrigin="anonymous",E.muted=!0,E.preload="auto";const C=document.createElement("canvas"),P=C.getContext("2d");if(!P){k.current=!1;return}const $=[],M=Math.min(.4,i*.05);for(let D=0;D<G3;D++){const I=D/(G3-1)*i;$.push(Math.max(I,M))}let R=0,N=!1;const Z=()=>{if(N||R>=$.length){N||(E.src="",E.load());return}E.currentTime=$[R]};return E.addEventListener("loadedmetadata",()=>{if(E.videoWidth>0&&E.videoHeight>0){O(E.videoWidth/E.videoHeight);const D=W3*2,I=Math.round(D*(E.videoWidth/E.videoHeight));C.width=I,C.height=D}Z()}),E.addEventListener("seeked",()=>{if(N)return;P.drawImage(E,0,0,C.width,C.height);const D=C.toDataURL("image/jpeg",.6);m(I=>[...I,D]),R++,Z()}),E.addEventListener("error",()=>{}),E.src=e,E.load(),()=>{N=!0,k.current=!1,m([]),E.src="",E.load()}},[o,e,i]);const w=Math.round(W3*p),A=a>0?Math.max(1,Math.ceil(a/w)):1;return y.jsxs("div",{ref:T,className:"absolute inset-0 overflow-hidden",children:[o&&d.length>0&&y.jsx("div",{className:"absolute inset-0 flex",children:Array.from({length:A}).map((E,C)=>{const P=d[C%d.length];return y.jsx("div",{className:"flex-shrink-0 h-full relative overflow-hidden bg-neutral-900",style:{width:w},children:y.jsx("img",{src:P,alt:"",draggable:!1,className:"absolute inset-0 w-full h-full object-cover"})},C)})}),o&&d.length===0&&y.jsx("div",{className:"absolute inset-0 animate-pulse",style:{background:"linear-gradient(90deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0.02) 100%)"}}),y.jsx("div",{className:"absolute bottom-0 left-0 right-0 z-10 px-1.5 pb-0.5 pt-3",style:{background:"linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 60%, transparent 100%)"},children:y.jsx("span",{className:"text-[9px] font-semibold truncate block leading-tight",style:{color:r,textShadow:"0 1px 2px rgba(0,0,0,0.9)"},children:t})})]})}),NQ=66,jQ="v3",K3=10;function ZQ({previewUrl:n,seekTime:e=2,duration:t=5,selector:r,selectorIndex:i,origin:a}){const s=n.replace("/preview/comp/","/thumbnail/").replace(/\/preview$/,"/thumbnail/index.html"),o=e+t/2,u=new URL(s,a);return u.searchParams.set("t",o.toFixed(2)),u.searchParams.set("v",jQ),r&&(u.searchParams.set("selector",r),i!=null&&i>0&&u.searchParams.set("selectorIndex",String(i))),u.toString()}const Sg=h.memo(function({previewUrl:e,label:t,labelColor:r,accentColor:i="#6B7280",selector:a,selectorIndex:s,seekTime:o=2,duration:u=5}){const[d,m]=h.useState(0),[p,O]=h.useState(!1),[b,S]=h.useState(16/9),k=h.useRef(null),T=h.useCallback(C=>{var M,R;if((M=k.current)==null||M.disconnect(),!C)return;const P=((R=C.parentElement)==null?void 0:R.clientWidth)||C.clientWidth;m(P);const $=C.parentElement||C;k.current=new ResizeObserver(([N])=>{m(N.contentRect.width)}),k.current.observe($)},[]);zt(()=>()=>{var C;(C=k.current)==null||C.disconnect()});const w=ZQ({previewUrl:e,seekTime:o,duration:u,selector:a,selectorIndex:s,origin:window.location.origin}),A=Math.max(48,Math.round(NQ*b)),E=d>0?Math.max(1,Math.ceil(d/A)):1;return y.jsxs("div",{ref:T,className:"absolute inset-0 overflow-hidden",children:[y.jsx("img",{src:w,alt:"",draggable:!1,loading:"eager",onLoad:C=>{const P=C.currentTarget;P.naturalWidth>0&&P.naturalHeight>0&&S(P.naturalWidth/P.naturalHeight),O(!0)},className:"hidden"}),p?y.jsx("div",{className:"absolute inset-0 flex",children:Array.from({length:E}).map((C,P)=>y.jsx("div",{className:"relative h-full flex-shrink-0 overflow-hidden",style:{width:A},children:y.jsx("img",{src:w,alt:"",draggable:!1,className:"absolute inset-0 h-full w-full object-cover opacity-60"})},P))}):y.jsx("div",{className:"absolute inset-0 animate-pulse",style:{background:"linear-gradient(90deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0.02) 100%)"}}),y.jsx("div",{className:"absolute inset-0",style:{background:`linear-gradient(120deg, ${i}2e, transparent 34%), linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.08))`}}),y.jsx("div",{className:"absolute left-2 top-2",style:{zIndex:K3},children:y.jsx("span",{className:"block max-w-full truncate rounded-md px-1.5 py-0.5 text-[9px] font-semibold uppercase leading-none",style:{color:r,background:`${i}2e`,boxShadow:`inset 0 0 0 1px ${i}40`},children:t})}),y.jsx("div",{className:"absolute bottom-0 left-0 right-0 px-1.5 pb-0.5 pt-3",style:{zIndex:K3,background:"linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 60%, transparent 100%)"},children:y.jsx("span",{className:"block truncate text-[9px] font-semibold leading-tight",style:{color:r,textShadow:"0 1px 2px rgba(0,0,0,0.9)"},children:t})})]})});let DQ=0;const J3={isEditMode:!1,model:null,selectedSegmentIds:new Set,selectedGroupId:null,sourceFilePath:null},ht=Vw(n=>({...J3,setEditMode:e=>n({isEditMode:e}),setModel:e=>n({model:e}),setSourceFilePath:e=>n({sourceFilePath:e}),selectSegment:(e,t=!1)=>n(r=>{if(t){const i=new Set(r.selectedSegmentIds);return i.has(e)?i.delete(e):i.add(e),{selectedSegmentIds:i,selectedGroupId:null}}return{selectedSegmentIds:new Set([e]),selectedGroupId:null}}),selectGroup:e=>n(t=>{var i;const r=(i=t.model)==null?void 0:i.groups.get(e);return r?{selectedSegmentIds:new Set(r.segmentIds),selectedGroupId:e}:{}}),selectAll:()=>n(e=>e.model?{selectedSegmentIds:new Set(e.model.segments.keys()),selectedGroupId:null}:{}),clearSelection:()=>n({selectedSegmentIds:new Set,selectedGroupId:null}),updateSegmentStyle:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.segments.get(e);if(!i)return{};const a=new Map(r.model.segments);return a.set(e,{...i,style:{...i.style,...t}}),{model:{...r.model,segments:a}}}),updateSegmentText:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.segments.get(e);if(!i)return{};const a=new Map(r.model.segments);return a.set(e,{...i,text:t}),{model:{...r.model,segments:a}}}),updateSegmentTiming:(e,t,r)=>n(i=>{if(!i.model)return{};const a=i.model.segments.get(e);if(!a)return{};const s=new Map(i.model.segments);return s.set(e,{...a,start:t,end:r}),{model:{...i.model,segments:s}}}),updateGroupStyle:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.groups.get(e);if(!i)return{};const a=new Map(r.model.groups);return a.set(e,{...i,style:{...i.style,...t}}),{model:{...r.model,groups:a}}}),updateGroupContainer:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.groups.get(e);if(!i)return{};const a=new Map(r.model.groups);return a.set(e,{...i,containerStyle:{...i.containerStyle,...t}}),{model:{...r.model,groups:a}}}),updateGroupAnimation:(e,t,r)=>n(i=>{if(!i.model)return{};const a=i.model.groups.get(e);if(!a)return{};const s=new Map(i.model.groups),o=a.animation[t],u=o!==null?{...o,...r}:r;return s.set(e,{...a,animation:{...a.animation,[t]:u}}),{model:{...i.model,groups:s}}}),splitGroup:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.groups.get(e);if(!i)return{};const a=i.segmentIds.indexOf(t);if(a<=0)return{};const s=i.segmentIds.slice(0,a),o=i.segmentIds.slice(a),u=`group-split-${DQ++}`,d=new Map(r.model.groups);d.set(e,{...i,segmentIds:s}),d.set(u,{...i,id:u,segmentIds:o});const m=r.model.groupOrder.indexOf(e),p=[...r.model.groupOrder];p.splice(m+1,0,u);const O=new Map(r.model.segments);return o.forEach((b,S)=>{const k=O.get(b);k&&O.set(b,{...k,groupIndex:S})}),{model:{...r.model,groups:d,segments:O,groupOrder:p}}}),mergeGroups:(e,t)=>n(r=>{if(!r.model)return{};const i=r.model.groups.get(e),a=r.model.groups.get(t);if(!i||!a)return{};const s=[...i.segmentIds,...a.segmentIds],o=new Map(r.model.groups);o.set(e,{...i,segmentIds:s}),o.delete(t);const u=r.model.groupOrder.filter(p=>p!==t),d=new Map(r.model.segments);a.segmentIds.forEach((p,O)=>{const b=d.get(p);b&&d.set(p,{...b,groupIndex:i.segmentIds.length+O})});const m=r.selectedGroupId===t?null:r.selectedGroupId;return{model:{...r.model,groups:o,segments:d,groupOrder:u},selectedGroupId:m}}),updateSelectedStyle:e=>n(t=>{if(!t.model||t.selectedSegmentIds.size===0)return{};const r=new Map(t.model.segments);for(const i of t.selectedSegmentIds){const a=r.get(i);a&&r.set(i,{...a,style:{...a.style,...e}})}return{model:{...t.model,segments:r}}}),applyAnimationToAll:e=>n(t=>{if(!t.model)return{};const r=new Map(t.model.groups);for(const[i,a]of r)r.set(i,{...a,animation:e});return{model:{...t.model,groups:r}}}),reset:()=>n({...J3,selectedSegmentIds:new Set})})),VQ=new Set(["ArrowLeft","ArrowRight"]),IQ=["input","textarea","select","button","a[href]","[contenteditable='true']","[role='button']","[role='checkbox']","[role='combobox']","[role='menuitem']","[role='radio']","[role='slider']","[role='spinbutton']","[role='switch']","[role='textbox']"].join(",");function LQ(n){if(!n||typeof n!="object")return!1;const e=n;return typeof e.closest!="function"?!1:e.closest.call(n,IQ)!==null}function zQ(n,e={isCaptionEditMode:!1,selectedCaptionSegmentCount:0}){return n.metaKey||n.ctrlKey||n.altKey||LQ(n.target)?!0:VQ.has(n.code)&&e.isCaptionEditMode&&e.selectedCaptionSegmentCount>0}const e5=[1,2,4];function BQ({iframeRef:n,shuttleDirectionRef:e,shuttleSpeedIndexRef:t,iframeShortcutCleanupRef:r,getAdapter:i,play:a,playBackward:s,pause:o,seek:u}){const d=h.useRef(new Set),m=h.useRef(()=>{}),p=h.useRef(()=>{}),O=h.useCallback(A=>{const E=i(),C=(E==null?void 0:E.getTime())??Ae.getState().currentTime;u(G2(C,A,W0))},[i,u]),b=h.useCallback(A=>{e.current===A?t.current=Math.min(t.current+1,e5.length-1):t.current=0;const E=e5[t.current];Ae.getState().setPlaybackRate(E),A==="forward"?a():s(E)},[a,s,e,t]),S=h.useCallback(()=>{Ae.getState().isPlaying?o():a()},[a,o]),k=h.useCallback(A=>{var P,$,M;if(A.defaultPrevented)return;const E=ht.getState();if(zQ(A,{isCaptionEditMode:E.isEditMode,selectedCaptionSegmentCount:E.selectedSegmentIds.size}))return;const C=A.key.toLowerCase();if(d.current.add(C),A.code==="Space"){A.preventDefault(),S();return}if(A.code==="ArrowLeft"){A.preventDefault(),O(A.shiftKey?-10:-1);return}if(A.code==="ArrowRight"){A.preventDefault(),O(A.shiftKey?10:1);return}if(!A.repeat){if(C==="k"){A.preventDefault(),o();return}if(C==="j"){if(A.preventDefault(),d.current.has("k")){O(-1);return}b("backward");return}if(C==="l"){if(A.preventDefault(),d.current.has("k")){O(1);return}b("forward");return}if(C==="i"){A.preventDefault();const R=((P=i())==null?void 0:P.getTime())??Ae.getState().currentTime;Ae.getState().setInPoint(A.shiftKey?null:R);return}if(C==="o"){A.preventDefault();const R=(($=i())==null?void 0:$.getTime())??Ae.getState().currentTime;Ae.getState().setOutPoint(A.shiftKey?null:R);return}if(C==="a"){A.preventDefault(),u(Ae.getState().inPoint??0,{keepPlaying:!0});return}if(C==="e"){A.preventDefault();const{outPoint:R}=Ae.getState();u(R??((M=i())==null?void 0:M.getDuration())??Ae.getState().duration,{keepPlaying:!0});return}}},[o,b,O,S,i,u]),T=h.useCallback(A=>{d.current.delete(A.key.toLowerCase())},[]);m.current=k,p.current=T;const w=h.useCallback(()=>{var $,M,R;($=r.current)==null||$.call(r),r.current=null;const A=(M=n.current)==null?void 0:M.contentWindow,E=(R=n.current)==null?void 0:R.contentDocument;if(!A&&!E)return;const C=N=>m.current(N),P=N=>p.current(N);A==null||A.addEventListener("keydown",C,!0),A==null||A.addEventListener("keyup",P,!0),E==null||E.addEventListener("keydown",C,!0),E==null||E.addEventListener("keyup",P,!0),r.current=()=>{A==null||A.removeEventListener("keydown",C,!0),A==null||A.removeEventListener("keyup",P,!0),E==null||E.removeEventListener("keydown",C,!0),E==null||E.removeEventListener("keyup",P,!0)}},[n,r]);return{playbackKeyDownRef:m,playbackKeyUpRef:p,attachIframeShortcutListeners:w,togglePlay:S}}function HQ(n){const{clip:e,fallbackIndex:t,doc:r}=n;let i=n.hostEl??null;const a=G0({id:e.id,label:e.label,tag:e.tagName||e.kind});let s,o,u,d;i&&(s=i.id||void 0,o=Tl(i),u=r&&o?S0(r,i,o):void 0,d=x0(i));const m=k0({preferredId:e.id,label:a,fallbackIndex:t,domId:s,selector:o,selectorIndex:u,sourceFile:d}),p={id:m.id,label:a,key:m.key,tag:e.tagName||e.kind,start:e.start,duration:e.duration,track:e.track,domId:s,selector:o,selectorIndex:u,sourceFile:d};if(i&&Nw(p,i),e.assetUrl&&(p.src=e.assetUrl),e.kind==="composition"&&e.compositionId){let O=e.compositionSrc;if(O||(i=(r==null?void 0:r.querySelector(`[data-composition-id="${e.compositionId}"]`))??i,O=(i==null?void 0:i.getAttribute("data-composition-src"))??(i==null?void 0:i.getAttribute("data-composition-file"))??null),O)p.compositionSrc=O;else if(i){const b=i.querySelector("video[src]");b&&(p.src=b.getAttribute("src")||void 0,p.tag="video")}if(i){p.domId=i.id||void 0,p.selector=Tl(i),p.selectorIndex=r&&p.selector?S0(r,i,p.selector):void 0,p.sourceFile=x0(i);const b=k0({preferredId:e.id,label:a,fallbackIndex:t,domId:p.domId,selector:p.selector,selectorIndex:p.selectorIndex,sourceFile:p.sourceFile});p.id=b.id,p.key=b.key}}return p}function Uw(n,e,t=[]){if(!Number.isFinite(e)||e<=0)return[];const r=n.querySelector("[data-composition-id]");if(!r)return[];const i=new Set(t.map(e8)),a=t.reduce((o,u)=>Math.max(o,Number.isFinite(u.track)?u.track:0),-1),s=[];for(const o of Array.from(r.children)){if(!AR(r,o))continue;const u=Tl(o);if(!u)continue;const d=S0(n,o,u),m=x0(o),p=SR(o),O=k0({preferredId:o.id||null,label:p,fallbackIndex:t.length+s.length,domId:o.id||void 0,selector:u,selectorIndex:d,sourceFile:m});i.has(O.key)||i.has(O.id)||s.push({domId:o.id||void 0,duration:e,id:O.id,key:O.key,label:p,selector:u,selectorIndex:d,sourceFile:m,start:0,tag:o.tagName.toLowerCase(),timingSource:"implicit",track:a+1+s.length})}return s}function qw(n,e){const t=n.querySelector("[data-composition-id]"),r=n.querySelectorAll("[data-start]"),i=[];let a=0;return r.forEach(s=>{if(s===t)return;const o=s,u=o.getAttribute("data-start");if(u==null)return;const d=parseFloat(u);if(isNaN(d)||Number.isFinite(e)&&e>0&&d>=e)return;const m=o.tagName.toLowerCase();let p=0;const O=o.getAttribute("data-duration");if(O!=null&&(p=parseFloat(O)),(isNaN(p)||p<=0)&&(p=Math.max(0,e-d)),Number.isFinite(e)&&e>0&&(p=Math.min(p,Math.max(0,e-d))),!Number.isFinite(p)||p<=0)return;const b=o.getAttribute("data-track-index"),S=b!=null?parseInt(b,10):a++,k=o.getAttribute("data-composition-id"),T=Tl(o),w=x0(o),A=S0(n,o,T),E=G0({id:o.id||k||null,label:o.getAttribute("data-timeline-label")??o.getAttribute("data-label"),tag:m}),C=k0({preferredId:o.id||k||null,label:E,fallbackIndex:i.length,domId:o.id||void 0,selector:T,selectorIndex:A,sourceFile:w}),P={id:C.id,label:E,key:C.key,tag:m,start:d,duration:p,track:isNaN(S)?0:S,domId:o.id||void 0,selector:T,selectorIndex:A,sourceFile:w,timingSource:"authored"},$=_w(o);if($){$.tagName==="IMG"&&(P.tag="img");const R=$.getAttribute("src");R&&(P.src=R);const N=o.getAttribute("data-volume")??$.getAttribute("data-volume");N&&(P.volume=parseFloat(N)),Nw(P,o)}const M=o.getAttribute("data-composition-src")||o.getAttribute("data-composition-file");if(M)P.compositionSrc=M;else if(k&&k!==(t==null?void 0:t.getAttribute("data-composition-id"))){const R=o.querySelector("video[src]");R&&(P.src=R.getAttribute("src")||void 0,P.tag="video")}i.push(P)}),[...i,...Uw(n,e,i)]}function FQ(n,e,t,r){const i=Number.isFinite(t)?t:0,a=Number.isFinite(r)?r:0;if(n.length===0||e.length>=n.length||a>i)return e;const s=new Set(e.map(e8)),o=n.filter(u=>!s.has(e8(u)));return o.length===0?e:[...e,...o]}function XQ(n){const e=n.match(/\/preview\/comp\/(.+?)(?:\?|$)/);return e?decodeURIComponent(e[1]):void 0}function UQ(n){if(!Number.isFinite(n.rootDuration)||n.rootDuration<=0)return null;const e=XQ(n.iframeSrc);return{id:n.compositionId,label:G0({id:n.compositionId,tag:n.tagName}),key:J2({id:n.compositionId,fallbackIndex:0,selector:n.selector,selectorIndex:n.selectorIndex,sourceFile:e}),tag:n.tagName.toLowerCase()||"div",start:0,duration:n.rootDuration,track:0,compositionSrc:e,selector:n.selector,selectorIndex:n.selectorIndex,sourceFile:e}}function qQ({iframeRef:n,probeIntervalRef:e,pendingSeekRef:t,isRefreshingRef:r,getAdapter:i,syncTimelineElements:a,setDuration:s,setCurrentTime:o,setTimelineReady:u,setIsPlaying:d,attachIframeShortcutListeners:m,applyPreviewAudioState:p}){const O=h.useCallback(A=>{var U;if(!A.clips||A.clips.length===0)return;const E=new Set(A.clips.map(K=>K.compositionId).filter(Boolean)),C=A.clips.filter(K=>!K.parentCompositionId||!E.has(K.parentCompositionId));let P=null;try{P=((U=n.current)==null?void 0:U.contentDocument)??null}catch{P=null}const $=new Set,M=C.map((K,q)=>{const L=P?TR(P,K,q,$):null;return L&&$.add(L),HQ({clip:K,fallbackIndex:q,doc:P,hostEl:L})}),R=A.durationInFrames/30,N=Number.isFinite(R)&&R<7200?R:0,Z=N>0?N:Ae.getState().duration,D=Z>0?M.filter(K=>K.start<Z).map(K=>({...K,duration:Math.min(K.duration,Z-K.start)})).filter(K=>K.duration>0):M,I=P&&Z>0?[...D,...Uw(P,Z,D)]:D;I.length>0&&a(I,N>0?N:void 0)},[n,a]),b=h.useCallback(()=>{try{const A=n.current,E=A==null?void 0:A.contentDocument,C=A==null?void 0:A.contentWindow;if(!E||!C)return;const P=Ae.getState().elements,$=Ae.getState().duration,{missing:M,updatedEls:R,patched:N}=RR(E,C,P,$);if(M.length>0||N){const Z=new Set(R.map(I=>I.id)),D=M.filter(I=>!Z.has(I.id));a([...R,...D])}}catch(A){console.warn("[useTimelinePlayer] enrichMissingCompositions failed",A)}},[n,a]),S=h.useCallback(()=>{const A=i();if(!A||A.getDuration()<=0)return!1;A.pause();const E=t.current;t.current=null;const C=E!=null?Math.min(E,A.getDuration()):0;A.seek(C),Kr.notify(C);const P=A.getDuration();Number.isFinite(P)&&P>0&&P<7200&&P!==Ae.getState().duration&&s(P),o(C),r.current||u(!0),r.current=!1,d(!1);try{const $=n.current,M=$==null?void 0:$.contentDocument,R=$==null?void 0:$.contentWindow;M&&R&&(PR(M,R),CR(M),m());const N=R==null?void 0:R.__clipManifest;if(N&&N.clips.length>0&&O(N),b(),p(),Ae.getState().elements.length===0&&M){const Z=qw(M,A.getDuration());Z.length>0&&a(Z)}if(Ae.getState().elements.length===0&&M){const Z=M.querySelector("[data-composition-id]"),D=A.getDuration();if(Z&&D>0){const I=UQ({compositionId:Z.getAttribute("data-composition-id")||"composition",tagName:Z.tagName||"div",rootDuration:D,iframeSrc:($==null?void 0:$.src)||"",selector:Tl(Z)});I&&a([I])}}}catch($){console.warn("[useTimelinePlayer] Could not read timeline elements from iframe",$)}return!0},[i,s,o,u,d,O,b,a,m,p,n,r,t]),k=h.useCallback(()=>{if(p(),e.current&&clearInterval(e.current),S())return;const A=n.current;let E=!1;const C=()=>{E||S()&&(E=!0,window.removeEventListener("message",P),e.current&&clearInterval(e.current))},P=$=>{if($.source&&A&&$.source!==A.contentWindow)return;const M=$.data;(M==null?void 0:M.source)==="hf-preview"&&((M==null?void 0:M.type)==="state"||(M==null?void 0:M.type)==="timeline")&&C()};window.addEventListener("message",P),e.current=setTimeout(()=>{E||(C(),E||console.warn("[useTimelinePlayer] Runtime did not signal readiness within 5s")),window.removeEventListener("message",P)},5e3)},[S,n,e,p]);return{processTimelineMessage:O,processTimelineMessageRef:{current:O},enrichMissingCompositions:b,enrichMissingCompositionsRef:{current:b},initializeAdapter:S,onIframeLoad:k}}/*!
64
- * Copyright (c) 2026-present, Vanilagy and contributors
65
- *
66
- * This Source Code Form is subject to the terms of the Mozilla Public
67
- * License, v. 2.0. If a copy of the MPL was not distributed with this
68
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
69
- */function G(n){if(!n)throw new Error("Assertion failed.")}const Yw=n=>{const e=(n%360+360)%360;if(e===0||e===90||e===180||e===270)return e;throw new Error(`Invalid rotation ${n}.`)},Rr=n=>n&&n[n.length-1],Re=n=>{let e=0;for(;n.readBits(1)===0&&e<32;)e++;if(e>=32)throw new Error("Invalid exponential-Golomb code.");return(1<<e)-1+n.readBits(e)},_a=n=>{const e=Re(n);return(e&1)===0?-(e>>1):e+1>>1},Ww=n=>n.constructor===Uint8Array?n:ArrayBuffer.isView(n)?new Uint8Array(n.buffer,n.byteOffset,n.byteLength):new Uint8Array(n),Dt=n=>n.constructor===DataView?n:ArrayBuffer.isView(n)?new DataView(n.buffer,n.byteOffset,n.byteLength):new DataView(n),Mr=new TextDecoder,BO=n=>Object.fromEntries(Object.entries(n).map(([e,t])=>[t,e])),Gw={bt709:1,bt470bg:5,smpte170m:6,bt2020:9,smpte432:12},Rh=BO(Gw),Kw={bt709:1,smpte170m:6,linear:8,"iec61966-2-1":13,pq:16,hlg:18},Qh=BO(Kw),Jw={rgb:0,bt709:1,bt470bg:5,smpte170m:6,"bt2020-ncl":9},_h=BO(Jw);class T1{constructor(){this.currentPromise=Promise.resolve(),this.pending=0}async acquire(){let e;const t=new Promise(i=>{let a=!1;e=()=>{a||(i(),this.pending--,a=!0)}}),r=this.currentPromise;return this.currentPromise=t,this.pending++,await r,e}}const YQ=/^[0-9a-fA-F]+$/,E0=n=>[...n].map(e=>e.toString(16).padStart(2,"0")).join(""),WQ=n=>{G(n.length%2===0);const e=new Uint8Array(n.length/2);for(let t=0;t<n.length;t+=2)e[t/2]=parseInt(n.slice(t,t+2),16);return e},t5=n=>(n=n>>1&1431655765|(n&1431655765)<<1,n=n>>2&858993459|(n&858993459)<<2,n=n>>4&252645135|(n&252645135)<<4,n=n>>8&16711935|(n&16711935)<<8,n=n>>16&65535|(n&65535)<<16,n>>>0),K0=(n,e,t)=>{let r=0,i=n.length-1,a=-1;for(;r<=i;){const s=r+i>>1,o=t(n[s]);o===e?(a=s,i=s-1):o<e?r=s+1:i=s-1}return a},Ot=(n,e,t)=>{let r=0,i=n.length-1,a=-1;for(;r<=i;){const s=r+(i-r+1)/2|0;t(n[s])<=e?(a=s,r=s+1):i=s-1}return a},Yo=()=>{let n,e;return{promise:new Promise((r,i)=>{n=r,e=i}),resolve:n,reject:e}},GQ=(n,e)=>{const t=n.indexOf(e);t!==-1&&n.splice(t,1)},e7=(n,e)=>{for(let t=n.length-1;t>=0;t--)if(e(n[t]))return n[t]},HO=(n,e)=>{for(let t=n.length-1;t>=0;t--)if(e(n[t]))return t;return-1},t7=n=>{throw new Error(`Unexpected value: ${n}`)},n7=(n,e,t)=>{const r=n.getUint8(e),i=n.getUint8(e+1),a=n.getUint8(e+2);return r<<16|i<<8|a},i8=(n,e,t)=>Math.max(e,Math.min(t,n)),Bn="und",M0=n=>{const e=Math.round(n);return Math.abs(n/e-1)<10*Number.EPSILON?e:n},KQ=(n,e)=>Math.round(n/e)*e,r7=(n,e)=>Math.round(n*e)/e,kg=(n,e)=>Math.floor(n/e)*e,JQ=n=>{let e=0;for(;n;)e++,n>>=1;return e},e_=/^[a-z]{3}$/,i7=n=>e_.test(n),n5=1e6*(1+Number.EPSILON),t_=(n,e)=>{const t={...n,...e};if(n.headers||e.headers){const r=n.headers?r5(n.headers):{},i=e.headers?r5(e.headers):{},a={...r};Object.entries(i).forEach(([s,o])=>{const u=Object.keys(a).find(d=>d.toLowerCase()===s.toLowerCase());u&&delete a[u],a[s]=o}),t.headers=a}return t},r5=n=>{if(n instanceof Headers){const e={};return n.forEach((t,r)=>{e[r]=t}),e}if(Array.isArray(n)){const e={};return n.forEach(([t,r])=>{e[t]=r}),e}return n},n_=async(n,e,t,r,i)=>{let a=0;for(;;)try{return await n(e,t)}catch(s){if(i())throw s;a++;const o=r(a,s,e);if(o===null)throw s;if(console.error("Retrying failed fetch. Error:",s),!Number.isFinite(o)||o<0)throw new TypeError("Retry delay must be a non-negative finite number.");if(o>0&&await XO(1e3*o),i())throw s}};let vg=null;const r_=()=>{var n;return vg!==null?vg:vg=!!(typeof navigator<"u"&&((n=navigator.vendor)!=null&&n.includes("Google Inc")||/Chrome/.test(navigator.userAgent)))};let wg=null;const i_=()=>{if(wg!==null)return wg;if(typeof navigator>"u")return null;const n=/\bChrome\/(\d+)/.exec(navigator.userAgent);return n?wg=Number(n[1]):null},jo=(n,e)=>n!==-1?n:e,a8=(n,e,t,r)=>n<=r&&t<=e,a7=n=>{const e=atob(n),t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t},a_=(n,e)=>{if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0},s7=()=>{Symbol.dispose??(Symbol.dispose=Symbol("Symbol.dispose"))},FO=n=>typeof n=="number"&&!Number.isNaN(n),Cs=(n,e)=>{if(e.includes("://"))return e;if(n.includes("://")){const o=n.indexOf("?");o!==-1&&(n=n.slice(0,o))}let t;if(e.startsWith("/")){const o=n.indexOf("://");if(o===-1)t=e;else{const u=n.indexOf("/",o+3);u===-1?t=n+e:t=n.slice(0,u)+e}}else{const o=n.lastIndexOf("/");o===-1?t=e:t=n.slice(0,o+1)+e}let r="";const i=t.indexOf("://");if(i!==-1){const o=t.indexOf("/",i+3);o!==-1&&(r=t.slice(0,o),t=t.slice(o))}const a=t.split("/"),s=[];for(const o of a)o===".."?s.pop():o!=="."&&s.push(o);return r+s.join("/")},qu=(n,e)=>{let t=0;for(let r=0;r<n.length;r++)e(n[r])&&t++;return t},l7=(n,e)=>{let t=-1,r=1/0;for(let i=0;i<n.length;i++){const a=e(n[i]);a<r&&(r=a,t=i)}return t},i5=n=>{G(Number.isInteger(n.num)),G(Number.isInteger(n.den)),G(n.den!==0);let e=Math.abs(n.num),t=Math.abs(n.den);for(;t!==0;){const i=e%t;e=t,t=i}const r=e||1;return{num:n.num/r,den:n.den/r}},XO=n=>new Promise(e=>setTimeout(e,n));class o7{constructor(){this._listeners=new Map}on(e,t,r){this._listeners.has(e)||this._listeners.set(e,new Set);const i={fn:t,once:(r==null?void 0:r.once)??!1};return this._listeners.get(e).add(i),()=>{var a;(a=this._listeners.get(e))==null||a.delete(i)}}_emit(...e){const[t,r]=e,i=this._listeners.get(t);if(i)for(const a of i){try{a.fn(r)}catch(s){console.error(s)}a.once&&i.delete(a)}}}/*!
70
- * Copyright (c) 2026-present, Vanilagy and contributors
71
- *
72
- * This Source Code Form is subject to the terms of the Mozilla Public
73
- * License, v. 2.0. If a copy of the MPL was not distributed with this
74
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
75
- */class ph{constructor(e,t){if(this.data=e,this.mimeType=t,!(e instanceof Uint8Array))throw new TypeError("data must be a Uint8Array.");if(typeof t!="string")throw new TypeError("mimeType must be a string.")}}class s_{constructor(e,t,r,i){if(this.data=e,this.mimeType=t,this.name=r,this.description=i,!(e instanceof Uint8Array))throw new TypeError("data must be a Uint8Array.");if(t!==void 0&&typeof t!="string")throw new TypeError("mimeType, when provided, must be a string.");if(r!==void 0&&typeof r!="string")throw new TypeError("name, when provided, must be a string.");if(i!==void 0&&typeof i!="string")throw new TypeError("description, when provided, must be a string.")}}const Xa={default:!0,primary:!0,forced:!1,original:!1,commentary:!1,hearingImpaired:!1,visuallyImpaired:!1};/*!
76
- * Copyright (c) 2026-present, Vanilagy and contributors
77
- *
78
- * This Source Code Form is subject to the terms of the Mozilla Public
79
- * License, v. 2.0. If a copy of the MPL was not distributed with this
80
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
81
- */class kt{constructor(e){this.bytes=e,this.pos=0}seekToByte(e){this.pos=8*e}readBit(){const e=Math.floor(this.pos/8),t=this.bytes[e]??0,r=7-(this.pos&7),i=(t&1<<r)>>r;return this.pos++,i}readBits(e){if(e===1)return this.readBit();let t=0;for(let r=0;r<e;r++)t<<=1,t|=this.readBit();return t}writeBits(e,t){const r=this.pos+e;for(let i=this.pos;i<r;i++){const a=Math.floor(i/8);let s=this.bytes[a];const o=7-(i&7);s&=~(1<<o),s|=(t&1<<r-i-1)>>r-i-1<<o,this.bytes[a]=s}this.pos=r}readAlignedByte(){if(this.pos%8!==0)throw new Error("Bitstream is not byte-aligned.");const e=this.pos/8,t=this.bytes[e]??0;return this.pos+=8,t}skipBits(e){this.pos+=e}getBitsLeft(){return this.bytes.length*8-this.pos}clone(){const e=new kt(this.bytes);return e.pos=this.pos,e}}/*!
82
- * Copyright (c) 2026-present, Vanilagy and contributors
83
- *
84
- * This Source Code Form is subject to the terms of the Mozilla Public
85
- * License, v. 2.0. If a copy of the MPL was not distributed with this
86
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
87
- */const $0=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],UO=[-1,1,2,3,4,5,6,8],c7=n=>{if(!n||n.byteLength<2)throw new TypeError("AAC description must be at least 2 bytes long.");const e=new kt(n);let t=e.readBits(5);t===31&&(t=32+e.readBits(6));const r=e.readBits(4);let i=null;r===15?i=e.readBits(24):r<$0.length&&(i=$0[r]);const a=e.readBits(4);let s=null;return a>=1&&a<=7&&(s=UO[a]),{objectType:t,frequencyIndex:r,sampleRate:i,channelConfiguration:a,numberOfChannels:s}};/*!
88
- * Copyright (c) 2026-present, Vanilagy and contributors
89
- *
90
- * This Source Code Form is subject to the terms of the Mozilla Public
91
- * License, v. 2.0. If a copy of the MPL was not distributed with this
92
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
93
- */const a5=["avc","hevc","vp9","av1","vp8"],A1=["pcm-s16","pcm-s16be","pcm-s24","pcm-s24be","pcm-s32","pcm-s32be","pcm-f32","pcm-f32be","pcm-f64","pcm-f64be","pcm-u8","pcm-s8","ulaw","alaw"],l_=["aac","opus","mp3","vorbis","flac","ac3","eac3"],s5=[...l_,...A1],l5=[{maxMacroblocks:99,maxBitrate:64e3,maxDpbMbs:396,level:10},{maxMacroblocks:396,maxBitrate:192e3,maxDpbMbs:900,level:11},{maxMacroblocks:396,maxBitrate:384e3,maxDpbMbs:2376,level:12},{maxMacroblocks:396,maxBitrate:768e3,maxDpbMbs:2376,level:13},{maxMacroblocks:396,maxBitrate:2e6,maxDpbMbs:2376,level:20},{maxMacroblocks:792,maxBitrate:4e6,maxDpbMbs:4752,level:21},{maxMacroblocks:1620,maxBitrate:4e6,maxDpbMbs:8100,level:22},{maxMacroblocks:1620,maxBitrate:1e7,maxDpbMbs:8100,level:30},{maxMacroblocks:3600,maxBitrate:14e6,maxDpbMbs:18e3,level:31},{maxMacroblocks:5120,maxBitrate:2e7,maxDpbMbs:20480,level:32},{maxMacroblocks:8192,maxBitrate:2e7,maxDpbMbs:32768,level:40},{maxMacroblocks:8192,maxBitrate:5e7,maxDpbMbs:32768,level:41},{maxMacroblocks:8704,maxBitrate:5e7,maxDpbMbs:34816,level:42},{maxMacroblocks:22080,maxBitrate:135e6,maxDpbMbs:110400,level:50},{maxMacroblocks:36864,maxBitrate:24e7,maxDpbMbs:184320,level:51},{maxMacroblocks:36864,maxBitrate:24e7,maxDpbMbs:184320,level:52},{maxMacroblocks:139264,maxBitrate:24e7,maxDpbMbs:696320,level:60},{maxMacroblocks:139264,maxBitrate:48e7,maxDpbMbs:696320,level:61},{maxMacroblocks:139264,maxBitrate:8e8,maxDpbMbs:696320,level:62}],Wo=[{maxPictureSize:36864,maxBitrate:2e5,level:10},{maxPictureSize:73728,maxBitrate:8e5,level:11},{maxPictureSize:122880,maxBitrate:18e5,level:20},{maxPictureSize:245760,maxBitrate:36e5,level:21},{maxPictureSize:552960,maxBitrate:72e5,level:30},{maxPictureSize:983040,maxBitrate:12e6,level:31},{maxPictureSize:2228224,maxBitrate:18e6,level:40},{maxPictureSize:2228224,maxBitrate:3e7,level:41},{maxPictureSize:8912896,maxBitrate:6e7,level:50},{maxPictureSize:8912896,maxBitrate:12e7,level:51},{maxPictureSize:8912896,maxBitrate:18e7,level:52},{maxPictureSize:35651584,maxBitrate:18e7,level:60},{maxPictureSize:35651584,maxBitrate:24e7,level:61},{maxPictureSize:35651584,maxBitrate:48e7,level:62}],o5=".01.01.01.01.00",c5=".0.110.01.01.01.0",qO=n=>{const{codec:e,codecDescription:t,colorSpace:r,avcCodecInfo:i,hevcCodecInfo:a,vp9CodecInfo:s,av1CodecInfo:o}=n;if(e==="avc"){if(G(n.avcType!==null),i){const u=new Uint8Array([i.avcProfileIndication,i.profileCompatibility,i.avcLevelIndication]);return`avc${n.avcType}.${E0(u)}`}if(!t||t.byteLength<4)throw new TypeError("AVC decoder description is not provided or is not at least 4 bytes long.");return`avc${n.avcType}.${E0(t.subarray(1,4))}`}else if(e==="hevc"){let u,d,m,p,O,b;if(a)u=a.generalProfileSpace,d=a.generalProfileIdc,m=t5(a.generalProfileCompatibilityFlags),p=a.generalTierFlag,O=a.generalLevelIdc,b=[...a.generalConstraintIndicatorFlags];else{if(!t||t.byteLength<23)throw new TypeError("HEVC decoder description is not provided or is not at least 23 bytes long.");const k=Dt(t),T=k.getUint8(1);u=T>>6&3,d=T&31,m=t5(k.getUint32(2)),p=T>>5&1,O=k.getUint8(12),b=[];for(let w=0;w<6;w++)b.push(k.getUint8(6+w))}let S="hev1.";for(S+=["","A","B","C"][u]+d,S+=".",S+=m.toString(16).toUpperCase(),S+=".",S+=p===0?"L":"H",S+=O;b.length>0&&b[b.length-1]===0;)b.pop();return b.length>0&&(S+=".",S+=b.map(k=>k.toString(16).toUpperCase()).join(".")),S}else{if(e==="vp8")return"vp8";if(e==="vp9"){if(!s){const w=n.width*n.height;let A=Rr(Wo).level;for(const E of Wo)if(w<=E.maxPictureSize){A=E.level;break}return`vp09.00.${A.toString().padStart(2,"0")}.08`}const u=s.profile.toString().padStart(2,"0"),d=s.level.toString().padStart(2,"0"),m=s.bitDepth.toString().padStart(2,"0"),p=s.chromaSubsampling.toString().padStart(2,"0"),O=s.colourPrimaries.toString().padStart(2,"0"),b=s.transferCharacteristics.toString().padStart(2,"0"),S=s.matrixCoefficients.toString().padStart(2,"0"),k=s.videoFullRangeFlag.toString().padStart(2,"0");let T=`vp09.${u}.${d}.${m}.${p}`;return T+=`.${O}.${b}.${S}.${k}`,T.endsWith(o5)&&(T=T.slice(0,-o5.length)),T}else if(e==="av1"){if(!o){const E=n.width*n.height;let C=Rr(Wo).level;for(const P of Wo)if(E<=P.maxPictureSize){C=P.level;break}return`av01.0.${C.toString().padStart(2,"0")}M.08`}const u=o.profile,d=o.level.toString().padStart(2,"0"),m=o.tier?"H":"M",p=o.bitDepth.toString().padStart(2,"0"),O=o.monochrome?"1":"0",b=100*o.chromaSubsamplingX+10*o.chromaSubsamplingY+1*(o.chromaSubsamplingX&&o.chromaSubsamplingY?o.chromaSamplePosition:0),S=r!=null&&r.primaries?Gw[r.primaries]:1,k=r!=null&&r.transfer?Kw[r.transfer]:1,T=r!=null&&r.matrix?Jw[r.matrix]:1,w=r!=null&&r.fullRange?1:0;let A=`av01.${u}.${d}${m}.${p}`;return A+=`.${O}.${b.toString().padStart(3,"0")}`,A+=`.${S.toString().padStart(2,"0")}`,A+=`.${k.toString().padStart(2,"0")}`,A+=`.${T.toString().padStart(2,"0")}`,A+=`.${w}`,A.endsWith(c5)&&(A=A.slice(0,-c5.length)),A}}throw new TypeError(`Unhandled codec '${e}'.`)},YO=n=>{const{codec:e,codecDescription:t,aacCodecInfo:r}=n;if(e==="aac"){if(!r)throw new TypeError("AAC codec info must be provided.");if(r.isMpeg2)return"mp4a.67";{let i;return r.objectType!==null?i=r.objectType:i=c7(t).objectType,`mp4a.40.${i}`}}else{if(e==="mp3")return"mp3";if(e==="opus")return"opus";if(e==="vorbis")return"vorbis";if(e==="flac")return"flac";if(e==="ac3")return"ac-3";if(e==="eac3")return"ec-3";if(e&&A1.includes(e))return e}throw new TypeError(`Unhandled codec '${e}'.`)},P1=48e3,u7=/^pcm-([usf])(\d+)(be)?$/,o_=n=>{if(G(A1.includes(n)),n==="ulaw")return{dataType:"ulaw",sampleSize:1,littleEndian:!0,silentValue:255};if(n==="alaw")return{dataType:"alaw",sampleSize:1,littleEndian:!0,silentValue:213};const e=u7.exec(n);G(e);let t;e[1]==="u"?t="unsigned":e[1]==="s"?t="signed":t="float";const r=Number(e[2])/8,i=e[3]!=="be",a=n==="pcm-u8"?2**7:0;return{dataType:t,sampleSize:r,littleEndian:i,silentValue:a}},s0=n=>n.startsWith("avc1")||n.startsWith("avc3")?"avc":n.startsWith("hev1")||n.startsWith("hvc1")?"hevc":n==="vp8"?"vp8":n.startsWith("vp09")?"vp9":n.startsWith("av01")?"av1":n==="mp3"||n==="mp4a.69"||n==="mp4a.6B"||n==="mp4a.6b"||n==="mp4a.40.34"?"mp3":n.startsWith("mp4a.40.")||n==="mp4a.67"?"aac":n==="opus"?"opus":n==="vorbis"?"vorbis":n==="flac"?"flac":n==="ac-3"||n==="ac3"?"ac3":n==="ec-3"||n==="eac3"?"eac3":n==="ulaw"?"ulaw":n==="alaw"?"alaw":u7.test(n)?n:n==="webvtt"?"webvtt":null;/*!
94
- * Copyright (c) 2026-present, Vanilagy and contributors
95
- *
96
- * This Source Code Form is subject to the terms of the Mozilla Public
97
- * License, v. 2.0. If a copy of the MPL was not distributed with this
98
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
99
- */const vl=4,c_=[44100,48e3,32e3],u_=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1,-1,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1,-1,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1,-1,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1,-1,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],f7=1483304551,d7=1231971951,f_=(n,e,t,r,i)=>e===0?0:e===1?Math.floor(144*t/(r<<n))+i:e===2?Math.floor(144*t/r)+i:(Math.floor(12*t/r)+i)*4,d_=(n,e,t,r)=>e===0?0:e===1?144*t/(r<<n):e===2?144*t/r:12*t/r*4,h7=(n,e)=>n===3?e===3?21:36:e===3?13:21,WO=(n,e)=>{const t=n>>>24,r=n>>>16&255,i=n>>>8&255,a=n&255;if(t!==255&&r!==255&&i!==255&&a!==255)return{header:null,bytesAdvanced:4};if(t!==255)return{header:null,bytesAdvanced:1};if((r&224)!==224)return{header:null,bytesAdvanced:1};let s=0,o=0;r&16?s=r&8?0:1:(s=1,o=1);const u=r>>3&3,d=r>>1&3,m=i>>4&15,p=(i>>2&3)%3,O=i>>1&1,b=a>>6&3,S=a>>4&3,k=a>>3&1,T=a>>2&1,w=a&3,A=u_[s*16*4+d*16+m];if(A===-1)return{header:null,bytesAdvanced:1};const E=A*1e3,C=c_[p]>>s+o,P=f_(s,d,E,C,O);if(e!==null&&e<P)return{header:null,bytesAdvanced:1};let $;return u===3?$=d===3?384:1152:d===3?$=384:d===2?$=1152:$=576,{header:{totalSize:P,mpegVersionId:u,lowSamplingFrequency:s,layer:d,bitrate:E,frequencyIndex:p,sampleRate:C,channel:b,modeExtension:S,copyright:k,original:T,emphasis:w,audioSamplesInFrame:$},bytesAdvanced:1}},s8=n=>{let e=2130706432,t=0;for(;e!==0;)t>>=1,t|=n&e,e>>=8;return t};var Nh;(function(n){n[n.FrameCount=1]="FrameCount",n[n.FileSize=2]="FileSize",n[n.Toc=4]="Toc"})(Nh||(Nh={}));/*!
100
- * Copyright (c) 2026-present, Vanilagy and contributors
101
- *
102
- * This Source Code Form is subject to the terms of the Mozilla Public
103
- * License, v. 2.0. If a copy of the MPL was not distributed with this
104
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
105
- */const C1=[48e3,44100,32e3],m7=[24e3,22050,16e3];/*!
106
- * Copyright (c) 2026-present, Vanilagy and contributors
107
- *
108
- * This Source Code Form is subject to the terms of the Mozilla Public
109
- * License, v. 2.0. If a copy of the MPL was not distributed with this
110
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
111
- */var Li;(function(n){n[n.NON_IDR_SLICE=1]="NON_IDR_SLICE",n[n.SLICE_DPA=2]="SLICE_DPA",n[n.SLICE_DPB=3]="SLICE_DPB",n[n.SLICE_DPC=4]="SLICE_DPC",n[n.IDR=5]="IDR",n[n.SEI=6]="SEI",n[n.SPS=7]="SPS",n[n.PPS=8]="PPS",n[n.AUD=9]="AUD",n[n.SPS_EXT=13]="SPS_EXT"})(Li||(Li={}));var ar;(function(n){n[n.RASL_N=8]="RASL_N",n[n.RASL_R=9]="RASL_R",n[n.BLA_W_LP=16]="BLA_W_LP",n[n.RSV_IRAP_VCL23=23]="RSV_IRAP_VCL23",n[n.VPS_NUT=32]="VPS_NUT",n[n.SPS_NUT=33]="SPS_NUT",n[n.PPS_NUT=34]="PPS_NUT",n[n.AUD_NUT=35]="AUD_NUT",n[n.PREFIX_SEI_NUT=39]="PREFIX_SEI_NUT",n[n.SUFFIX_SEI_NUT=40]="SUFFIX_SEI_NUT"})(ar||(ar={}));const E1=function*(n){let e=0,t=-1;for(;e<n.length-2;){const r=n.indexOf(0,e);if(r===-1||r>=n.length-2)break;e=r;let i=0;if(e+3<n.length&&n[e+1]===0&&n[e+2]===0&&n[e+3]===1?i=4:n[e+1]===0&&n[e+2]===1&&(i=3),i===0){e++;continue}t!==-1&&e>t&&(yield{offset:t,length:e-t}),t=e+i,e=t}t!==-1&&t<n.length&&(yield{offset:t,length:n.length-t})},p7=function*(n,e){let t=0;const r=new DataView(n.buffer,n.byteOffset,n.byteLength);for(;t+e<=n.length;){let i;e===1?i=r.getUint8(t):e===2?i=r.getUint16(t,!1):e===3?i=n7(r,t):(G(e===4),i=r.getUint32(t,!1)),t+=e,yield{offset:t,length:i},t+=i}},h_=(n,e)=>{if(e.description){const i=(Ww(e.description)[4]&3)+1;return p7(n,i)}else return E1(n)},GO=n=>n&31,M1=n=>{const e=[],t=n.length;for(let r=0;r<t;r++)r+2<t&&n[r]===0&&n[r+1]===0&&n[r+2]===3?(e.push(0,0),r+=2):e.push(n[r]);return new Uint8Array(e)},g7=n=>{try{const e=[],t=[],r=[];for(const o of E1(n)){const u=n.subarray(o.offset,o.offset+o.length),d=GO(u[0]);d===Li.SPS?e.push(u):d===Li.PPS?t.push(u):d===Li.SPS_EXT&&r.push(u)}if(e.length===0||t.length===0)return null;const i=e[0],a=y7(i);G(a!==null);const s=a.profileIdc===100||a.profileIdc===110||a.profileIdc===122||a.profileIdc===144;return{configurationVersion:1,avcProfileIndication:a.profileIdc,profileCompatibility:a.constraintFlags,avcLevelIndication:a.levelIdc,lengthSizeMinusOne:3,sequenceParameterSets:e,pictureParameterSets:t,chromaFormat:s?a.chromaFormatIdc:null,bitDepthLumaMinus8:s?a.bitDepthLumaMinus8:null,bitDepthChromaMinus8:s?a.bitDepthChromaMinus8:null,sequenceParameterSetExt:s?r:null}}catch(e){return console.error("Error building AVC Decoder Configuration Record:",e),null}},O7={1:{num:1,den:1},2:{num:12,den:11},3:{num:10,den:11},4:{num:16,den:11},5:{num:40,den:33},6:{num:24,den:11},7:{num:20,den:11},8:{num:32,den:11},9:{num:80,den:33},10:{num:18,den:11},11:{num:15,den:11},12:{num:64,den:33},13:{num:160,den:99},14:{num:4,den:3},15:{num:3,den:2},16:{num:2,den:1}},y7=n=>{try{const e=new kt(M1(n));if(e.skipBits(1),e.skipBits(2),e.readBits(5)!==7)return null;const r=e.readAlignedByte(),i=e.readAlignedByte(),a=e.readAlignedByte();Re(e);let s=1,o=0,u=0,d=0;if((r===100||r===110||r===122||r===244||r===44||r===83||r===86||r===118||r===128)&&(s=Re(e),s===3&&(d=e.readBits(1)),o=Re(e),u=Re(e),e.skipBits(1),e.readBits(1))){for(let I=0;I<(s!==3?8:12);I++)if(e.readBits(1)){const K=I<6?16:64;let q=8,L=8;for(let W=0;W<K;W++){if(L!==0){const ee=_a(e);L=(q+ee+256)%256}q=L===0?q:L}}}Re(e);const m=Re(e);if(m===0)Re(e);else if(m===1){e.skipBits(1),_a(e),_a(e);const D=Re(e);for(let I=0;I<D;I++)_a(e)}Re(e),e.skipBits(1);const p=Re(e),O=Re(e),b=16*(p+1),S=16*(O+1);let k=b,T=S;const w=e.readBits(1);if(w||e.skipBits(1),e.skipBits(1),e.readBits(1)){const D=Re(e),I=Re(e),U=Re(e),K=Re(e);let q,L;if((d===0?s:0)===0)q=1,L=2-w;else{const ee=s===3?1:2,X=s===1?2:1;q=ee,L=X*(2-w)}k-=q*(D+I),T-=L*(U+K)}let E=2,C=2,P=2,$=0,M={num:1,den:1},R=null,N=null;if(e.readBits(1)){if(e.readBits(1)){const X=e.readBits(8);if(X===255)M={num:e.readBits(16),den:e.readBits(16)};else{const B=O7[X];B&&(M=B)}}e.readBits(1)&&e.skipBits(1),e.readBits(1)&&(e.skipBits(3),$=e.readBits(1),e.readBits(1)&&(E=e.readBits(8),C=e.readBits(8),P=e.readBits(8))),e.readBits(1)&&(Re(e),Re(e)),e.readBits(1)&&(e.skipBits(32),e.skipBits(32),e.skipBits(1));const L=e.readBits(1);L&&u5(e);const W=e.readBits(1);W&&u5(e),(L||W)&&e.skipBits(1),e.skipBits(1),e.readBits(1)&&(e.skipBits(1),Re(e),Re(e),Re(e),Re(e),R=Re(e),N=Re(e))}if(R===null){G(N===null);const D=i&16;if((r===44||r===86||r===100||r===110||r===122||r===244)&&D)R=0,N=0;else{const I=p+1,U=O+1,K=(2-w)*U,q=l5.find(W=>W.level>=a)??Rr(l5),L=Math.min(Math.floor(q.maxDpbMbs/(I*K)),16);R=L,N=L}}return G(N!==null),{profileIdc:r,constraintFlags:i,levelIdc:a,frameMbsOnlyFlag:w,chromaFormatIdc:s,bitDepthLumaMinus8:o,bitDepthChromaMinus8:u,codedWidth:b,codedHeight:S,displayWidth:k,displayHeight:T,pixelAspectRatio:M,colourPrimaries:E,matrixCoefficients:P,transferCharacteristics:C,fullRangeFlag:$,numReorderFrames:R,maxDecFrameBuffering:N}}catch(e){return console.error("Error parsing AVC SPS:",e),null}},u5=n=>{const e=Re(n);n.skipBits(4),n.skipBits(4);for(let t=0;t<=e;t++)Re(n),Re(n),n.skipBits(1);n.skipBits(5),n.skipBits(5),n.skipBits(5),n.skipBits(5)},m_=(n,e)=>{if(e.description){const i=(Ww(e.description)[21]&3)+1;return p7(n,i)}else return E1(n)},jh=n=>n>>1&63,b7=n=>{try{const e=new kt(M1(n));e.skipBits(16),e.readBits(4);const t=e.readBits(3),r=e.readBits(1),{general_profile_space:i,general_tier_flag:a,general_profile_idc:s,general_profile_compatibility_flags:o,general_constraint_indicator_flags:u,general_level_idc:d}=p_(e,t);Re(e);const m=Re(e);let p=0;m===3&&(p=e.readBits(1));const O=Re(e),b=Re(e);let S=O,k=b;if(e.readBits(1)){const I=Re(e),U=Re(e),K=Re(e),q=Re(e);let L=1,W=1;const ee=p===0?m:0;ee===1?(L=2,W=2):ee===2&&(L=2,W=1),S-=(I+U)*L,k-=(K+q)*W}const T=Re(e),w=Re(e);Re(e);const E=e.readBits(1)?0:t;let C=0;for(let I=E;I<=t;I++)Re(e),C=Re(e),Re(e);Re(e),Re(e),Re(e),Re(e),Re(e),Re(e),e.readBits(1)&&e.readBits(1)&&g_(e),e.skipBits(1),e.skipBits(1),e.readBits(1)&&(e.skipBits(4),e.skipBits(4),Re(e),Re(e),e.skipBits(1));const P=Re(e);if(O_(e,P),e.readBits(1)){const I=Re(e);for(let U=0;U<I;U++)Re(e),e.skipBits(1)}e.skipBits(1),e.skipBits(1);let $=2,M=2,R=2,N=0,Z=0,D={num:1,den:1};if(e.readBits(1)){const I=b_(e,t);D=I.pixelAspectRatio,$=I.colourPrimaries,M=I.transferCharacteristics,R=I.matrixCoefficients,N=I.fullRangeFlag,Z=I.minSpatialSegmentationIdc}return{displayWidth:S,displayHeight:k,pixelAspectRatio:D,colourPrimaries:$,transferCharacteristics:M,matrixCoefficients:R,fullRangeFlag:N,maxDecFrameBuffering:C+1,spsMaxSubLayersMinus1:t,spsTemporalIdNestingFlag:r,generalProfileSpace:i,generalTierFlag:a,generalProfileIdc:s,generalProfileCompatibilityFlags:o,generalConstraintIndicatorFlags:u,generalLevelIdc:d,chromaFormatIdc:m,bitDepthLumaMinus8:T,bitDepthChromaMinus8:w,minSpatialSegmentationIdc:Z}}catch(e){return console.error("Error parsing HEVC SPS:",e),null}},x7=n=>{try{const e=[],t=[],r=[],i=[];for(const d of E1(n)){const m=n.subarray(d.offset,d.offset+d.length),p=jh(m[0]);p===ar.VPS_NUT?e.push(m):p===ar.SPS_NUT?t.push(m):p===ar.PPS_NUT?r.push(m):(p===ar.PREFIX_SEI_NUT||p===ar.SUFFIX_SEI_NUT)&&i.push(m)}if(t.length===0||r.length===0)return null;const a=b7(t[0]);if(!a)return null;let s=0;if(r.length>0){const d=r[0],m=new kt(M1(d));m.skipBits(16),Re(m),Re(m),m.skipBits(1),m.skipBits(1),m.skipBits(3),m.skipBits(1),m.skipBits(1),Re(m),Re(m),_a(m),m.skipBits(1),m.skipBits(1),m.readBits(1)&&Re(m),_a(m),_a(m),m.skipBits(1),m.skipBits(1),m.skipBits(1),m.skipBits(1);const p=m.readBits(1),O=m.readBits(1);!p&&!O?s=0:p&&!O?s=2:!p&&O?s=3:s=0}const o=[...e.length?[{arrayCompleteness:1,nalUnitType:ar.VPS_NUT,nalUnits:e}]:[],...t.length?[{arrayCompleteness:1,nalUnitType:ar.SPS_NUT,nalUnits:t}]:[],...r.length?[{arrayCompleteness:1,nalUnitType:ar.PPS_NUT,nalUnits:r}]:[],...i.length?[{arrayCompleteness:1,nalUnitType:jh(i[0][0]),nalUnits:i}]:[]];return{configurationVersion:1,generalProfileSpace:a.generalProfileSpace,generalTierFlag:a.generalTierFlag,generalProfileIdc:a.generalProfileIdc,generalProfileCompatibilityFlags:a.generalProfileCompatibilityFlags,generalConstraintIndicatorFlags:a.generalConstraintIndicatorFlags,generalLevelIdc:a.generalLevelIdc,minSpatialSegmentationIdc:a.minSpatialSegmentationIdc,parallelismType:s,chromaFormatIdc:a.chromaFormatIdc,bitDepthLumaMinus8:a.bitDepthLumaMinus8,bitDepthChromaMinus8:a.bitDepthChromaMinus8,avgFrameRate:0,constantFrameRate:0,numTemporalLayers:a.spsMaxSubLayersMinus1+1,temporalIdNested:a.spsTemporalIdNestingFlag,lengthSizeMinusOne:3,arrays:o}}catch(e){return console.error("Error building HEVC Decoder Configuration Record:",e),null}},p_=(n,e)=>{const t=n.readBits(2),r=n.readBits(1),i=n.readBits(5);let a=0;for(let m=0;m<32;m++)a=a<<1|n.readBits(1);const s=new Uint8Array(6);for(let m=0;m<6;m++)s[m]=n.readBits(8);const o=n.readBits(8),u=[],d=[];for(let m=0;m<e;m++)u.push(n.readBits(1)),d.push(n.readBits(1));if(e>0)for(let m=e;m<8;m++)n.skipBits(2);for(let m=0;m<e;m++)u[m]&&n.skipBits(88),d[m]&&n.skipBits(8);return{general_profile_space:t,general_tier_flag:r,general_profile_idc:i,general_profile_compatibility_flags:a,general_constraint_indicator_flags:s,general_level_idc:o}},g_=n=>{for(let e=0;e<4;e++)for(let t=0;t<(e===3?2:6);t++)if(!n.readBits(1))Re(n);else{const i=Math.min(64,1<<4+(e<<1));e>1&&_a(n);for(let a=0;a<i;a++)_a(n)}},O_=(n,e)=>{const t=[];for(let r=0;r<e;r++)t[r]=y_(n,r,e,t)},y_=(n,e,t,r)=>{let i=0,a=0,s=0;if(e!==0&&(a=n.readBits(1)),a){if(e===t){const u=Re(n);s=e-(u+1)}else s=e-1;n.readBits(1),Re(n);const o=r[s]??0;for(let u=0;u<=o;u++)n.readBits(1)||n.readBits(1);i=r[s]}else{const o=Re(n),u=Re(n);for(let d=0;d<o;d++)Re(n),n.readBits(1);for(let d=0;d<u;d++)Re(n),n.readBits(1);i=o+u}return i},b_=(n,e)=>{let t=2,r=2,i=2,a=0,s=0,o={num:1,den:1};if(n.readBits(1)){const u=n.readBits(8);if(u===255)o={num:n.readBits(16),den:n.readBits(16)};else{const d=O7[u];d&&(o=d)}}return n.readBits(1)&&n.readBits(1),n.readBits(1)&&(n.readBits(3),a=n.readBits(1),n.readBits(1)&&(t=n.readBits(8),r=n.readBits(8),i=n.readBits(8))),n.readBits(1)&&(Re(n),Re(n)),n.readBits(1),n.readBits(1),n.readBits(1),n.readBits(1)&&(Re(n),Re(n),Re(n),Re(n)),n.readBits(1)&&(n.readBits(32),n.readBits(32),n.readBits(1)&&Re(n),n.readBits(1)&&x_(n,!0,e)),n.readBits(1)&&(n.readBits(1),n.readBits(1),n.readBits(1),s=Re(n),Re(n),Re(n),Re(n),Re(n)),{pixelAspectRatio:o,colourPrimaries:t,transferCharacteristics:r,matrixCoefficients:i,fullRangeFlag:a,minSpatialSegmentationIdc:s}},x_=(n,e,t)=>{let r=!1,i=!1,a=!1;r=n.readBits(1)===1,i=n.readBits(1)===1,(r||i)&&(a=n.readBits(1)===1,a&&(n.readBits(8),n.readBits(5),n.readBits(1),n.readBits(5)),n.readBits(4),n.readBits(4),a&&n.readBits(4),n.readBits(5),n.readBits(5),n.readBits(5));for(let s=0;s<=t;s++){const o=n.readBits(1)===1;let u=!0;o||(u=n.readBits(1)===1);let d=!1;u?Re(n):d=n.readBits(1)===1;let m=1;d||(m=Re(n)+1),r&&f5(n,m,a),i&&f5(n,m,a)}},f5=(n,e,t)=>{for(let r=0;r<e;r++)Re(n),Re(n),t&&(Re(n),Re(n)),n.readBits(1)};var d5;(function(n){n[n.audAllowed=0]="audAllowed",n[n.beforeFirstVcl=1]="beforeFirstVcl",n[n.afterFirstVcl=2]="afterFirstVcl",n[n.eoBitstreamAllowed=3]="eoBitstreamAllowed",n[n.noMoreDataAllowed=4]="noMoreDataAllowed"})(d5||(d5={}));const S7=n=>{const e=new kt(n);if(e.readBits(2)!==2)return null;const r=e.readBits(1),a=(e.readBits(1)<<1)+r;if(a===3&&e.skipBits(1),e.readBits(1)===1||e.readBits(1)!==0||(e.skipBits(2),e.readBits(24)!==4817730))return null;let d=8;a>=2&&(d=e.readBits(1)?12:10);const m=e.readBits(3);let p=0,O=0;if(m!==7)if(O=e.readBits(1),a===1||a===3){const M=e.readBits(1),R=e.readBits(1);p=!M&&!R?3:M&&!R?2:1,e.skipBits(1)}else p=1;else p=3,O=1;const b=e.readBits(16),S=e.readBits(16),k=b+1,T=S+1,w=k*T;let A=Rr(Wo).level;for(const $ of Wo)if(w<=$.maxPictureSize){A=$.level;break}return{profile:a,level:A,bitDepth:d,chromaSubsampling:p,videoFullRangeFlag:O,colourPrimaries:m===2?1:m===1?6:2,transferCharacteristics:m===2?1:m===1?6:2,matrixCoefficients:m===7?0:m===2?1:m===1?6:2}},k7=function*(n){const e=new kt(n),t=()=>{let r=0;for(let i=0;i<8;i++){const a=e.readAlignedByte();if(r|=(a&127)<<i*7,!(a&128))break;if(i===7&&a&128)return null}return r>=2**32-1?null:r};for(;e.getBitsLeft()>=8;){e.skipBits(1);const r=e.readBits(4),i=e.readBits(1),a=e.readBits(1);e.skipBits(1),i&&e.skipBits(8);let s;if(a){const o=t();if(o===null)return;s=o}else s=Math.floor(e.getBitsLeft()/8);G(e.pos%8===0),yield{type:r,data:n.subarray(e.pos/8,e.pos/8+s)},e.skipBits(s*8)}},v7=n=>{for(const{type:e,data:t}of k7(n)){if(e!==1)continue;const r=new kt(t),i=r.readBits(3);r.readBits(1);const a=r.readBits(1);let s=0,o=0,u=0;if(a)s=r.readBits(5);else{if(r.readBits(1)&&(r.skipBits(32),r.skipBits(32),r.readBits(1)))return null;const P=r.readBits(1);P&&(u=r.readBits(5),r.skipBits(32),r.skipBits(5),r.skipBits(5));const $=r.readBits(5);for(let M=0;M<=$;M++){r.skipBits(12);const R=r.readBits(5);if(M===0&&(s=R),R>7){const Z=r.readBits(1);M===0&&(o=Z)}if(P&&r.readBits(1)){const D=u+1;r.skipBits(D),r.skipBits(D),r.skipBits(1)}r.readBits(1)&&r.skipBits(4)}}const d=r.readBits(4),m=r.readBits(4),p=d+1;r.skipBits(p);const O=m+1;r.skipBits(O);let b=0;if(a?b=0:b=r.readBits(1),b&&(r.skipBits(4),r.skipBits(3)),r.skipBits(1),r.skipBits(1),r.skipBits(1),!a){r.skipBits(1),r.skipBits(1),r.skipBits(1),r.skipBits(1);const C=r.readBits(1);C&&(r.skipBits(1),r.skipBits(1));const P=r.readBits(1);let $=0;P?$=2:$=r.readBits(1),$>0&&(r.readBits(1)||r.skipBits(1)),C&&r.skipBits(3)}r.skipBits(1),r.skipBits(1),r.skipBits(1);const S=r.readBits(1);let k=8;i===2&&S?k=r.readBits(1)?12:10:i<=2&&(k=S?10:8);let T=0;i!==1&&(T=r.readBits(1));let w=1,A=1,E=0;return T||(i===0?(w=1,A=1):i===1?(w=0,A=0):k===12&&(w=r.readBits(1),w&&(A=r.readBits(1))),w&&A&&(E=r.readBits(2))),{profile:i,level:s,tier:o,bitDepth:k,monochrome:T,chromaSubsamplingX:w,chromaSubsamplingY:A,chromaSamplePosition:E}}return null},S_=n=>{const e=Dt(n),t=e.getUint8(9),r=e.getUint16(10,!0),i=e.getUint32(12,!0),a=e.getInt16(16,!0),s=e.getUint8(18);let o=null;return s&&(o=n.subarray(19,21+t)),{outputChannelCount:t,preSkip:r,inputSampleRate:i,outputGain:a,channelMappingFamily:s,channelMappingTable:o}},k_=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960],v_=n=>{const e=n[0]>>3;return{durationInSamples:k_[e]}},w_=n=>{if(n.length<7)throw new Error("Setup header is too short.");if(n[0]!==5)throw new Error("Wrong packet type in Setup header.");if(String.fromCharCode(...n.slice(1,7))!=="vorbis")throw new Error("Invalid packet signature in Setup header.");const t=n.length,r=new Uint8Array(t);for(let p=0;p<t;p++)r[p]=n[t-1-p];const i=new kt(r);let a=0;for(;i.getBitsLeft()>97;)if(i.readBits(1)===1){a=i.pos;break}if(a===0)throw new Error("Invalid Setup header: framing bit not found.");let s=0,o=!1,u=0;for(;i.getBitsLeft()>=97;){const p=i.pos,O=i.readBits(8),b=i.readBits(16),S=i.readBits(16);if(O>63||b!==0||S!==0){i.pos=p;break}if(i.skipBits(1),s++,s>64)break;i.clone().readBits(6)+1===s&&(o=!0,u=s)}if(!o)throw new Error("Invalid Setup header: mode header not found.");if(u>63)throw new Error(`Unsupported mode count: ${u}.`);const d=u;i.pos=0,i.skipBits(a);const m=Array(d).fill(0);for(let p=d-1;p>=0;p--)i.skipBits(40),m[p]=i.readBits(1);return{modeBlockflags:m}},w7=(n,e,t)=>{switch(n){case"avc":{for(const r of h_(t,e)){const i=t[r.offset],a=GO(i);if(a>=Li.NON_IDR_SLICE&&a<=Li.SLICE_DPC)return"delta";if(a===Li.IDR)return"key";if(a===Li.SEI&&(!r_()||i_()>=144)){const s=t.subarray(r.offset,r.offset+r.length),o=M1(s);let u=1;do{let d=0;for(;;){const O=o[u++];if(O===void 0||(d+=O,O<255))break}let m=0;for(;;){const O=o[u++];if(O===void 0||(m+=O,O<255))break}if(d===6){const O=new kt(o);O.pos=8*u;const b=Re(O),S=O.readBits(1);if(b===0&&S===1)return"key"}u+=m}while(u<o.length-1)}}return"delta"}case"hevc":{for(const r of m_(t,e)){const i=jh(t[r.offset]);if(i<ar.BLA_W_LP)return"delta";if(i<=ar.RSV_IRAP_VCL23)return"key"}return"delta"}case"vp8":return(t[0]&1)===0?"key":"delta";case"vp9":{const r=new kt(t);if(r.readBits(2)!==2)return null;const i=r.readBits(1);return(r.readBits(1)<<1)+i===3&&r.skipBits(1),r.readBits(1)?null:r.readBits(1)===0?"key":"delta"}case"av1":{let r=!1;for(const{type:i,data:a}of k7(t))if(i===1){const s=new kt(a);s.skipBits(4),r=!!s.readBits(1)}else if(i===3||i===6||i===7){if(r)return"key";const s=new kt(a);return s.readBits(1)?null:s.readBits(2)===0?"key":"delta"}return null}default:t7(n),G(!1)}};var cc;(function(n){n[n.STREAMINFO=0]="STREAMINFO",n[n.VORBIS_COMMENT=4]="VORBIS_COMMENT",n[n.PICTURE=6]="PICTURE"})(cc||(cc={}));const l8=(n,e)=>{var o,u;const t=Dt(n);let r=0;const i=t.getUint32(r,!0);r+=4;const a=Mr.decode(n.subarray(r,r+i));r+=i,i>0&&(e.raw??(e.raw={}),(o=e.raw).vendor??(o.vendor=a));const s=t.getUint32(r,!0);r+=4;for(let d=0;d<s;d++){const m=t.getUint32(r,!0);r+=4;const p=Mr.decode(n.subarray(r,r+m));r+=m;const O=p.indexOf("=");if(O===-1)continue;const b=p.slice(0,O).toUpperCase(),S=p.slice(O+1);switch(e.raw??(e.raw={}),(u=e.raw)[b]??(u[b]=S),b){case"TITLE":e.title??(e.title=S);break;case"DESCRIPTION":e.description??(e.description=S);break;case"ARTIST":e.artist??(e.artist=S);break;case"ALBUM":e.album??(e.album=S);break;case"ALBUMARTIST":e.albumArtist??(e.albumArtist=S);break;case"COMMENT":e.comment??(e.comment=S);break;case"LYRICS":e.lyrics??(e.lyrics=S);break;case"TRACKNUMBER":{const k=S.split("/"),T=Number.parseInt(k[0],10),w=k[1]&&Number.parseInt(k[1],10);Number.isInteger(T)&&T>0&&(e.trackNumber??(e.trackNumber=T)),w&&Number.isInteger(w)&&w>0&&(e.tracksTotal??(e.tracksTotal=w))}break;case"TRACKTOTAL":{const k=Number.parseInt(S,10);Number.isInteger(k)&&k>0&&(e.tracksTotal??(e.tracksTotal=k))}break;case"DISCNUMBER":{const k=S.split("/"),T=Number.parseInt(k[0],10),w=k[1]&&Number.parseInt(k[1],10);Number.isInteger(T)&&T>0&&(e.discNumber??(e.discNumber=T)),w&&Number.isInteger(w)&&w>0&&(e.discsTotal??(e.discsTotal=w))}break;case"DISCTOTAL":{const k=Number.parseInt(S,10);Number.isInteger(k)&&k>0&&(e.discsTotal??(e.discsTotal=k))}break;case"DATE":{const k=new Date(S);Number.isNaN(k.getTime())||(e.date??(e.date=k))}break;case"GENRE":e.genre??(e.genre=S);break;case"METADATA_BLOCK_PICTURE":{const k=a7(S),T=Dt(k),w=T.getUint32(0,!1),A=T.getUint32(4,!1),E=String.fromCharCode(...k.subarray(8,8+A)),C=T.getUint32(8+A,!1),P=Mr.decode(k.subarray(12+A,12+A+C)),$=T.getUint32(A+C+28),M=k.subarray(A+C+32,A+C+32+$);e.images??(e.images=[]),e.images.push({data:M,mimeType:E,kind:w===3?"coverFront":w===4?"coverBack":"unknown",name:void 0,description:P||void 0})}break}}},KO=[2,1,2,3,3,4,4,5],T_=n=>{if(n.length<7||n[0]!==11||n[1]!==119)return null;const e=new kt(n);e.skipBits(16),e.skipBits(16);const t=e.readBits(2);if(t===3)return null;const r=e.readBits(6),i=e.readBits(5);if(i>8)return null;const a=e.readBits(3),s=e.readBits(3);(s&1)!==0&&s!==1&&e.skipBits(2),(s&4)!==0&&e.skipBits(2),s===2&&e.skipBits(2);const o=e.readBits(1),u=Math.floor(r/2);return{fscod:t,bsid:i,bsmod:a,acmod:s,lfeon:o,bitRateCode:u}},A_=[128,138,192,128,140,192,160,174,240,160,176,240,192,208,288,192,210,288,224,242,336,224,244,336,256,278,384,256,280,384,320,348,480,320,350,480,384,416,288*2,384,418,288*2,448,486,336*2,448,488,336*2,256*2,278*2,384*2,256*2,279*2,384*2,320*2,348*2,480*2,320*2,349*2,480*2,384*2,417*2,576*2,384*2,418*2,576*2,448*2,487*2,672*2,448*2,488*2,672*2,512*2,557*2,768*2,512*2,558*2,768*2,640*2,696*2,960*2,640*2,697*2,960*2,768*2,835*2,1152*2,768*2,836*2,1152*2,896*2,975*2,1344*2,896*2,976*2,1344*2,1024*2,1114*2,1536*2,1024*2,1115*2,1536*2,1152*2,1253*2,1728*2,1152*2,1254*2,1728*2,1280*2,1393*2,1920*2,1280*2,1394*2,1920*2],P_=1536,T7=[1,2,3,6],C_=n=>{if(n.length<6||n[0]!==11||n[1]!==119)return null;const e=new kt(n);e.skipBits(16);const t=e.readBits(2);if(e.skipBits(3),t!==0&&t!==2)return null;const r=e.readBits(11),i=e.readBits(2);let a=0,s;i===3?(a=e.readBits(2),s=3):s=e.readBits(2);const o=e.readBits(3),u=e.readBits(1),d=e.readBits(5);if(d<11||d>16)return null;const m=T7[s];let p;return i<3?p=C1[i]/1e3:p=m7[a]/1e3,{dataRate:Math.round((r+1)*p/(m*16)),substreams:[{fscod:i,fscod2:a,bsid:d,bsmod:0,acmod:o,lfeon:u,numDepSub:0,chanLoc:0}]}},E_=n=>{if(n.length<2)return null;const e=new kt(n),t=e.readBits(13),r=e.readBits(3),i=[];for(let a=0;a<=r&&!(Math.ceil(e.pos/8)+3>n.length);a++){const s=e.readBits(2),o=e.readBits(5);e.skipBits(1),e.skipBits(1);const u=e.readBits(3),d=e.readBits(3),m=e.readBits(1);e.skipBits(3);const p=e.readBits(4);let O=0;p>0?O=e.readBits(9):e.skipBits(1),i.push({fscod:s,fscod2:null,bsid:o,bsmod:u,acmod:d,lfeon:m,numDepSub:p,chanLoc:O})}return i.length===0?null:{dataRate:t,substreams:i}},A7=n=>{const e=n.substreams[0];return G(e),e.fscod<3?C1[e.fscod]:e.fscod2!==null&&e.fscod2<3?m7[e.fscod2]:null},P7=n=>{const e=n.substreams[0];G(e);let t=KO[e.acmod]+e.lfeon;if(e.numDepSub>0){const r=[2,2,1,1,2,2,2,1,1];for(let i=0;i<9;i++)e.chanLoc&1<<8-i&&(t+=r[i])}return t};/*!
112
- * Copyright (c) 2026-present, Vanilagy and contributors
113
- *
114
- * This Source Code Form is subject to the terms of the Mozilla Public
115
- * License, v. 2.0. If a copy of the MPL was not distributed with this
116
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
117
- */class Ua{constructor(e){this.input=e}dispose(){}}/*!
118
- * Copyright (c) 2026-present, Vanilagy and contributors
119
- *
120
- * This Source Code Form is subject to the terms of the Mozilla Public
121
- * License, v. 2.0. If a copy of the MPL was not distributed with this
122
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
123
- */const Qr=new Uint8Array(0);class bn{constructor(e,t,r,i,a=-1,s,o){if(this.data=e,this.type=t,this.timestamp=r,this.duration=i,this.sequenceNumber=a,e===Qr&&s===void 0)throw new Error("Internal error: byteLength must be explicitly provided when constructing metadata-only packets.");if(s===void 0&&(s=e.byteLength),!(e instanceof Uint8Array))throw new TypeError("data must be a Uint8Array.");if(t!=="key"&&t!=="delta")throw new TypeError('type must be either "key" or "delta".');if(!Number.isFinite(r))throw new TypeError("timestamp must be a number.");if(!Number.isFinite(i)||i<0)throw new TypeError("duration must be a non-negative number.");if(!Number.isFinite(a))throw new TypeError("sequenceNumber must be a number.");if(!Number.isInteger(s)||s<0)throw new TypeError("byteLength must be a non-negative integer.");if(o!==void 0&&(typeof o!="object"||!o))throw new TypeError("sideData, when provided, must be an object.");if((o==null?void 0:o.alpha)!==void 0&&!(o.alpha instanceof Uint8Array))throw new TypeError("sideData.alpha, when provided, must be a Uint8Array.");if((o==null?void 0:o.alphaByteLength)!==void 0&&(!Number.isInteger(o.alphaByteLength)||o.alphaByteLength<0))throw new TypeError("sideData.alphaByteLength, when provided, must be a non-negative integer.");this.byteLength=s,this.sideData=o??{},this.sideData.alpha&&this.sideData.alphaByteLength===void 0&&(this.sideData.alphaByteLength=this.sideData.alpha.byteLength)}get isMetadataOnly(){return this.data===Qr}get microsecondTimestamp(){return Math.trunc(n5*this.timestamp)}get microsecondDuration(){return Math.trunc(n5*this.duration)}toEncodedVideoChunk(){if(this.isMetadataOnly)throw new TypeError("Metadata-only packets cannot be converted to a video chunk.");if(typeof EncodedVideoChunk>"u")throw new Error("Your browser does not support EncodedVideoChunk.");return new EncodedVideoChunk({data:this.data,type:this.type,timestamp:this.microsecondTimestamp,duration:this.microsecondDuration})}alphaToEncodedVideoChunk(e=this.type){if(!this.sideData.alpha)throw new TypeError("This packet does not contain alpha side data.");if(this.isMetadataOnly)throw new TypeError("Metadata-only packets cannot be converted to a video chunk.");if(typeof EncodedVideoChunk>"u")throw new Error("Your browser does not support EncodedVideoChunk.");return new EncodedVideoChunk({data:this.sideData.alpha,type:e,timestamp:this.microsecondTimestamp,duration:this.microsecondDuration})}toEncodedAudioChunk(){if(this.isMetadataOnly)throw new TypeError("Metadata-only packets cannot be converted to an audio chunk.");if(typeof EncodedAudioChunk>"u")throw new Error("Your browser does not support EncodedAudioChunk.");return new EncodedAudioChunk({data:this.data,type:this.type,timestamp:this.microsecondTimestamp,duration:this.microsecondDuration})}static fromEncodedChunk(e,t){if(!(e instanceof EncodedVideoChunk||e instanceof EncodedAudioChunk))throw new TypeError("chunk must be an EncodedVideoChunk or EncodedAudioChunk.");const r=new Uint8Array(e.byteLength);return e.copyTo(r),new bn(r,e.type,e.timestamp/1e6,(e.duration??0)/1e6,void 0,void 0,t)}clone(e){if(e!==void 0&&(typeof e!="object"||e===null))throw new TypeError("options, when provided, must be an object.");if((e==null?void 0:e.data)!==void 0&&!(e.data instanceof Uint8Array))throw new TypeError("options.data, when provided, must be a Uint8Array.");if((e==null?void 0:e.type)!==void 0&&e.type!=="key"&&e.type!=="delta")throw new TypeError('options.type, when provided, must be either "key" or "delta".');if((e==null?void 0:e.timestamp)!==void 0&&!Number.isFinite(e.timestamp))throw new TypeError("options.timestamp, when provided, must be a number.");if((e==null?void 0:e.duration)!==void 0&&!Number.isFinite(e.duration))throw new TypeError("options.duration, when provided, must be a number.");if((e==null?void 0:e.sequenceNumber)!==void 0&&!Number.isFinite(e.sequenceNumber))throw new TypeError("options.sequenceNumber, when provided, must be a number.");if((e==null?void 0:e.sideData)!==void 0&&(typeof e.sideData!="object"||e.sideData===null))throw new TypeError("options.sideData, when provided, must be an object.");return new bn((e==null?void 0:e.data)??this.data,(e==null?void 0:e.type)??this.type,(e==null?void 0:e.timestamp)??this.timestamp,(e==null?void 0:e.duration)??this.duration,(e==null?void 0:e.sequenceNumber)??this.sequenceNumber,this.byteLength,(e==null?void 0:e.sideData)??this.sideData)}}/*!
124
- * Copyright (c) 2026-present, Vanilagy and contributors
125
- *
126
- * This Source Code Form is subject to the terms of the Mozilla Public
127
- * License, v. 2.0. If a copy of the MPL was not distributed with this
128
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
129
- */const M_=n=>{let t=(n.hasVideo?"video/":n.hasAudio?"audio/":"application/")+(n.isQuickTime?"quicktime":"mp4");if(n.codecStrings.length>0){const r=[...new Set(n.codecStrings)];t+=`; codecs="${r.join(", ")}"`}return t},C7=n=>{const e=Dt(n);let t=0;const r=e.getUint8(t);t+=1,t+=3;const i=E0(n.subarray(t,t+16));t+=16;let a=null;if(r>0){const o=e.getUint32(t);if(t+=4,o>0){a=[];for(let u=0;u<o;u++)a.push(E0(n.subarray(t,t+16))),t+=16}}const s=e.getUint32(t);return t+=4,{systemId:i,keyIds:a,data:n.slice(t,t+s)}},E7=(n,e)=>n.systemId===e.systemId&&a_(n.data,e.data);/*!
130
- * Copyright (c) 2026-present, Vanilagy and contributors
131
- *
132
- * This Source Code Form is subject to the terms of the Mozilla Public
133
- * License, v. 2.0. If a copy of the MPL was not distributed with this
134
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
135
- */const Zo=8,Yu=16,ks=n=>{let e=Ee(n);const t=Lt(n,4);let r=8;e===1&&(e=qr(n),r=16);const a=e-r;return a<0?null:{name:t,totalSize:e,headerSize:r,contentSize:a}},ol=n=>Ol(n)/65536,Tg=n=>Ol(n)/1073741824,Ag=n=>{let e=0;for(let t=0;t<4;t++){e<<=7;const r=Ie(n);if(e|=r&127,(r&128)===0)break}return e},$i=n=>{let e=Kt(n);return n.skip(2),e=Math.min(e,n.remainingLength),Mr.decode(He(n,e))},$_=n=>{const e=ks(n);if(!e||e.name!=="data"||n.remainingLength<8)return null;const t=Ee(n);n.skip(4);const r=He(n,e.contentSize-8);switch(t){case 1:return Mr.decode(r);case 2:return new TextDecoder("utf-16be").decode(r);case 13:return new ph(r,"image/jpeg");case 14:return new ph(r,"image/png");case 27:return new ph(r,"image/bmp");default:return r}};/*!
136
- * Copyright (c) 2026-present, Vanilagy and contributors
137
- *
138
- * This Source Code Form is subject to the terms of the Mozilla Public
139
- * License, v. 2.0. If a copy of the MPL was not distributed with this
140
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
141
- */const Zi=16,wa=new Uint32Array(256),Do=new Uint32Array(256),Vo=new Uint32Array(256),Io=new Uint32Array(256),Lo=new Uint32Array(256),En=new Uint32Array(256),M7=new Uint32Array(10);let $7=!1;const R_=()=>{const n=new Uint8Array(256),e=new Uint8Array(256),t=new Uint8Array(256);for(let a=0,s=1;a<256;a++)t[a]=s,e[s]=a,s=s^s<<1^(s&128?283:0);const r=(a,s)=>a&&s?t[(e[a]+e[s])%255]:0;n[0]=99;for(let a=1;a<256;a++){const s=t[255-e[a]];let o=s^s<<1^s<<2^s<<3^s<<4;o=o>>>8^o&255^99,n[a]=o}for(let a=0;a<256;a++){const s=n[a],o=n.indexOf(a);wa[a]=s<<24|s<<16|s<<8|s,En[a]=o<<24|o<<16|o<<8|o;const u=r(o,14),d=r(o,9),m=r(o,13),p=r(o,11),O=u<<24|d<<16|m<<8|p;Do[a]=O,Vo[a]=O>>>8|O<<24,Io[a]=O>>>16|O<<16,Lo[a]=O>>>24|O<<8}let i=1;for(let a=0;a<10;a++)M7[a]=i<<24,i=i<<1^(i&128?283:0);$7=!0};class R7{constructor(){this.roundkey=new Uint32Array(44),this.iv=new Uint32Array(Zi/Uint32Array.BYTES_PER_ELEMENT),this.in=new Uint8Array(Zi),this.out=new Uint8Array(Zi),this.inView=new DataView(this.in.buffer),this.outView=new DataView(this.out.buffer)}init({key:e,iv:t}){G(e.byteLength===16),G(t.byteLength===16),$7||R_();const r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=new DataView(t.buffer,t.byteOffset,t.byteLength);this.roundkey[0]=r.getUint32(0,!1),this.roundkey[1]=r.getUint32(4,!1),this.roundkey[2]=r.getUint32(8,!1),this.roundkey[3]=r.getUint32(12,!1),this.iv[0]=i.getUint32(0,!1),this.iv[1]=i.getUint32(4,!1),this.iv[2]=i.getUint32(8,!1),this.iv[3]=i.getUint32(12,!1);for(let a=4;a<44;a+=4){const s=this.roundkey[a-1];this.roundkey[a]=this.roundkey[a-4]^wa[s>>>16&255]&4278190080^wa[s>>>8&255]&16711680^wa[s>>>0&255]&65280^wa[s>>>24&255]&255^M7[a/4-1],this.roundkey[a+1]=this.roundkey[a-3]^this.roundkey[a],this.roundkey[a+2]=this.roundkey[a-2]^this.roundkey[a+1],this.roundkey[a+3]=this.roundkey[a-1]^this.roundkey[a+2]}for(let a=0,s=40;a<s;a+=4,s-=4)for(let o=0;o<4;o++){const u=this.roundkey[a+o];this.roundkey[a+o]=this.roundkey[s+o],this.roundkey[s+o]=u}for(let a=4;a<40;a+=4)for(let s=0;s<4;s++){const o=this.roundkey[a+s];this.roundkey[a+s]=Do[wa[o>>>24&255]&255]^Vo[wa[o>>>16&255]&255]^Io[wa[o>>>8&255]&255]^Lo[wa[o>>>0&255]&255]}}decrypt(){let e=this.inView.getUint32(0,!1)^this.roundkey[0],t=this.inView.getUint32(4,!1)^this.roundkey[1],r=this.inView.getUint32(8,!1)^this.roundkey[2],i=this.inView.getUint32(12,!1)^this.roundkey[3];const a=this.inView.getUint32(0,!1),s=this.inView.getUint32(4,!1),o=this.inView.getUint32(8,!1),u=this.inView.getUint32(12,!1);let d,m,p,O;for(let w=1;w<10;w++){const A=w*4;d=Do[e>>>24]^Vo[i>>>16&255]^Io[r>>>8&255]^Lo[t&255]^this.roundkey[A],m=Do[t>>>24]^Vo[e>>>16&255]^Io[i>>>8&255]^Lo[r&255]^this.roundkey[A+1],p=Do[r>>>24]^Vo[t>>>16&255]^Io[e>>>8&255]^Lo[i&255]^this.roundkey[A+2],O=Do[i>>>24]^Vo[r>>>16&255]^Io[t>>>8&255]^Lo[e&255]^this.roundkey[A+3],e=d,t=m,r=p,i=O}const b=En[e>>>24&255]&4278190080^En[i>>>16&255]&16711680^En[r>>>8&255]&65280^En[t>>>0&255]&255^this.roundkey[40],S=En[t>>>24&255]&4278190080^En[e>>>16&255]&16711680^En[i>>>8&255]&65280^En[r>>>0&255]&255^this.roundkey[41],k=En[r>>>24&255]&4278190080^En[t>>>16&255]&16711680^En[e>>>8&255]&65280^En[i>>>0&255]&255^this.roundkey[42],T=En[i>>>24&255]&4278190080^En[r>>>16&255]&16711680^En[t>>>8&255]&65280^En[e>>>0&255]&255^this.roundkey[43];this.outView.setUint32(0,b^this.iv[0],!1),this.outView.setUint32(4,S^this.iv[1],!1),this.outView.setUint32(8,k^this.iv[2],!1),this.outView.setUint32(12,T^this.iv[3],!1),this.iv[0]=a,this.iv[1]=s,this.iv[2]=o,this.iv[3]=u}}const Q_=(n,e,t)=>{let r=!1,i=0;const a=2**16,s=16,o=new R7;return new ReadableStream({pull:async u=>{r||(o.init(await e()),r=!0);const d=a+s;let m=n.requestSliceRange(i,0,d);if(m instanceof Promise&&(m=await m),!m||m.length===0)throw new Error("Invalid ciphertext.");const p=m.length;if(p%16!==0)throw new Error("Invalid ciphertext.");const O=p===d?p-s:p,b=He(m,O),S=new Uint8Array(O);for(let k=0;k<O;k+=16)o.in.set(b.subarray(k,k+16)),o.decrypt(),S.set(o.out,k);if(O<p)u.enqueue(S),i+=O;else{const k=S[O-1];if(k===0||k>16)throw new Error("Invalid PKCS#7 padding. Incorrect key or corrupted data.");const T=S.subarray(0,O-k);u.enqueue(T),u.close(),t()}},cancel:()=>{t()}})};/*!
142
- * Copyright (c) 2026-present, Vanilagy and contributors
143
- *
144
- * This Source Code Form is subject to the terms of the Mozilla Public
145
- * License, v. 2.0. If a copy of the MPL was not distributed with this
146
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
147
- */class JO extends Ua{constructor(e){super(e),this.moovSlice=null,this.currentTrack=null,this.tracks=[],this.metadataPromise=null,this.movieTimescale=-1,this.movieDurationInTimescale=-1,this.isQuickTime=!1,this.metadataTags={},this.currentMetadataKeys=null,this.isFragmented=!1,this.fragmentTrackDefaults=[],this.psshBoxes=[],this.currentFragment=null,this.lastReadFragment=null,this.decryptionKeyCache=new Map,this.reader=e._reader}async getTrackBackings(){return await this.readMetadata(),this.tracks.map(e=>e.trackBacking)}async getMimeType(){await this.readMetadata();const e=await this.getTrackBackings(),t=await Promise.all(e.map(r=>r.getDecoderConfig().then(i=>(i==null?void 0:i.codec)??null)));return M_({isQuickTime:this.isQuickTime,hasVideo:this.tracks.some(r=>{var i;return((i=r.info)==null?void 0:i.type)==="video"}),hasAudio:this.tracks.some(r=>{var i;return((i=r.info)==null?void 0:i.type)==="audio"}),codecStrings:t.filter(Boolean)})}async getMetadataTags(){return await this.readMetadata(),this.metadataTags}readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{let e=0,t=!1;for(;;){let r=this.reader.requestSliceRange(e,Zo,Yu);if(r instanceof Promise&&(r=await r),!r)break;const i=e,a=ks(r);if(!a)break;if(a.name==="ftyp"||a.name==="styp"){const s=Lt(r,4);this.isQuickTime=s==="qt "}else if(a.name==="moov"){let s=this.reader.requestSlice(r.filePos,a.contentSize);if(s instanceof Promise&&(s=await s),!s)break;this.moovSlice=s,this.readContiguousBoxes(this.moovSlice);for(const o of this.tracks){const u=o.editListPreviousSegmentDurations/this.movieTimescale;o.editListOffset-=Math.round(u*o.timescale)}t=this.isFragmented&&this.reader.fileSize!==null&&this.reader.fileSize>i+a.totalSize;break}else if(a.name==="moof"){if(!this.input._initInput)throw new Error('"moof" box encountered with no "moov" box present; this file is likely a Segment as described in ISO/IEC 14496-12 Section 8.16. A separate init file that contains a "moov" box is required to read this file, please provide it using InputOptions.initInput.');const s=await this.input._initInput._getDemuxer();if(s.constructor!==JO)throw new Error("Init input must match the input's format.");await s.readMetadata(),this.movieTimescale=s.movieTimescale,this.movieDurationInTimescale=s.movieDurationInTimescale,this.metadataTags=s.metadataTags,this.isFragmented=!0,this.fragmentTrackDefaults=s.fragmentTrackDefaults,this.psshBoxes=s.psshBoxes;for(const o of s.tracks){const u={id:o.id,demuxer:this,trackBacking:null,disposition:o.disposition,timescale:o.timescale,durationInMediaTimescale:o.durationInMediaTimescale,durationInMovieTimescale:o.durationInMovieTimescale,rotation:o.rotation,internalCodecId:o.internalCodecId,name:o.name,languageCode:o.languageCode,sampleTableByteOffset:null,sampleTable:null,fragmentLookupTable:[],currentFragmentState:null,fragmentPositionCache:[],editListPreviousSegmentDurations:o.editListPreviousSegmentDurations,editListOffset:o.editListOffset,encryptionInfo:o.encryptionInfo,encryptionAuxInfo:null,frmaCodecString:null,info:o.info};if(o.trackBacking){if(G(u.info),u.info.type==="video"&&u.info.width!==-1){const d=u;u.trackBacking=new h5(d),this.tracks.push(u)}else if(u.info.type==="audio"&&u.info.numberOfChannels!==-1){const d=u;u.trackBacking=new m5(d),this.tracks.push(u)}}}t=!1;break}e=i+a.totalSize}if(t){G(this.reader.fileSize!==null);let r=this.reader.requestSlice(this.reader.fileSize-4,4);r instanceof Promise&&(r=await r),G(r);const i=Ee(r),a=this.reader.fileSize-i;if(a>=0&&a<=this.reader.fileSize-Yu){let s=this.reader.requestSliceRange(a,Zo,Yu);if(s instanceof Promise&&(s=await s),s){const o=ks(s);if(o&&o.name==="mfra"){let u=this.reader.requestSlice(s.filePos,o.contentSize);u instanceof Promise&&(u=await u),u&&this.readContiguousBoxes(u)}}}}})())}getSampleTableForTrack(e){var a,s;if(e.sampleTable)return e.sampleTable;const t={sampleTimingEntries:[],sampleCompositionTimeOffsets:[],sampleSizes:[],keySampleIndices:null,chunkOffsets:[],sampleToChunk:[],presentationTimestamps:null,presentationTimestampIndexMap:null};if(e.sampleTable=t,e.sampleTableByteOffset===null)return t;G(this.moovSlice);const r=this.moovSlice.slice(e.sampleTableByteOffset);if(this.currentTrack=e,this.traverseBox(r),this.currentTrack=null,((a=e.info)==null?void 0:a.type)==="audio"&&e.info.codec&&A1.includes(e.info.codec)&&t.sampleCompositionTimeOffsets.length===0){G(((s=e.info)==null?void 0:s.type)==="audio");const o=o_(e.info.codec),u=[],d=[];for(let m=0;m<t.sampleToChunk.length;m++){const p=t.sampleToChunk[m],O=t.sampleToChunk[m+1],b=(O?O.startChunkIndex:t.chunkOffsets.length)-p.startChunkIndex;for(let S=0;S<b;S++){const k=p.startSampleIndex+S*p.samplesPerChunk,T=k+p.samplesPerChunk,w=Ot(t.sampleTimingEntries,k,Z=>Z.startIndex),A=t.sampleTimingEntries[w],E=Ot(t.sampleTimingEntries,T,Z=>Z.startIndex),C=t.sampleTimingEntries[E],P=A.startDecodeTimestamp+(k-A.startIndex)*A.delta,M=C.startDecodeTimestamp+(T-C.startIndex)*C.delta-P,R=Rr(u);R&&R.delta===M?R.count++:u.push({startIndex:p.startChunkIndex+S,startDecodeTimestamp:P,count:1,delta:M});const N=p.samplesPerChunk*o.sampleSize*e.info.numberOfChannels;d.push(N)}p.startSampleIndex=p.startChunkIndex,p.samplesPerChunk=1}t.sampleTimingEntries=u,t.sampleSizes=d}if(t.sampleCompositionTimeOffsets.length>0){t.presentationTimestamps=[];for(const o of t.sampleTimingEntries)for(let u=0;u<o.count;u++)t.presentationTimestamps.push({presentationTimestamp:o.startDecodeTimestamp+u*o.delta,sampleIndex:o.startIndex+u});for(const o of t.sampleCompositionTimeOffsets)for(let u=0;u<o.count;u++){const d=o.startIndex+u,m=t.presentationTimestamps[d];m&&(m.presentationTimestamp+=o.offset)}t.presentationTimestamps.sort((o,u)=>o.presentationTimestamp-u.presentationTimestamp),t.presentationTimestampIndexMap=Array(t.presentationTimestamps.length).fill(-1);for(let o=0;o<t.presentationTimestamps.length;o++)t.presentationTimestampIndexMap[t.presentationTimestamps[o].sampleIndex]=o}return t}async readFragment(e){var s;if(((s=this.lastReadFragment)==null?void 0:s.moofOffset)===e)return this.lastReadFragment;let t=this.reader.requestSliceRange(e,Zo,Yu);t instanceof Promise&&(t=await t),G(t);const r=ks(t);G((r==null?void 0:r.name)==="moof");let i=this.reader.requestSlice(e,r.totalSize);i instanceof Promise&&(i=await i),G(i),this.traverseBox(i);const a=this.lastReadFragment;G(a&&a.moofOffset===e);for(const[,o]of a.trackData){const u=o.track,{fragmentPositionCache:d}=u;if(!o.startTimestampIsFinal){const p=u.fragmentLookupTable.find(O=>O.moofOffset===a.moofOffset);if(p)Pg(o,p.timestamp);else{const O=Ot(d,a.moofOffset-1,b=>b.moofOffset);if(O!==-1){const b=d[O];Pg(o,b.endTimestamp)}}o.startTimestampIsFinal=!0}const m=Ot(d,o.startTimestamp,p=>p.startTimestamp);if((m===-1||d[m].moofOffset!==a.moofOffset)&&d.splice(m+1,0,{moofOffset:a.moofOffset,startTimestamp:o.startTimestamp,endTimestamp:o.endTimestamp}),o.encryptionAuxInfo&&u.encryptionInfo){const p=await _7(this.reader,u.encryptionInfo,o.encryptionAuxInfo);for(let O=0;O<Math.min(o.samples.length,p.length);O++){const b=p[O];o.samples[O].encryption=b}}}return a}readContiguousBoxes(e){const t=e.filePos;for(;e.filePos-t<=e.length-Zo&&this.traverseBox(e););}*iterateContiguousBoxes(e){const t=e.filePos;for(;e.filePos-t<=e.length-Zo;){const r=e.filePos,i=ks(e);if(!i)break;yield{boxInfo:i,slice:e},e.filePos=r+i.totalSize}}traverseBox(e){var s,o,u,d,m,p,O,b,S,k,T,w,A,E,C,P,$,M,R,N,Z,D,I,U,K,q,L,W,ee,X,B,_,j,H,F,Y,ae,ie,Oe,de,me,Te,Ce,Ne,Xe;const t=e.filePos,r=ks(e);if(!r)return!1;const i=e.filePos,a=t+r.totalSize;switch(r.name){case"mdia":case"minf":case"dinf":case"mfra":case"edts":case"sinf":case"schi":this.readContiguousBoxes(e.slice(i,r.contentSize));break;case"mvhd":{const V=Ie(e);e.skip(3),V===1?(e.skip(16),this.movieTimescale=Ee(e),this.movieDurationInTimescale=qr(e)):(e.skip(8),this.movieTimescale=Ee(e),this.movieDurationInTimescale=Ee(e))}break;case"trak":{const V={id:-1,demuxer:this,trackBacking:null,disposition:{...Xa,primary:!1},info:null,timescale:-1,durationInMovieTimescale:-1,durationInMediaTimescale:-1,rotation:0,internalCodecId:null,name:null,languageCode:Bn,sampleTableByteOffset:-1,sampleTable:null,fragmentLookupTable:[],currentFragmentState:null,fragmentPositionCache:[],editListPreviousSegmentDurations:0,editListOffset:0,encryptionInfo:null,encryptionAuxInfo:null,frmaCodecString:null};if(this.currentTrack=V,this.readContiguousBoxes(e.slice(i,r.contentSize)),V.id!==-1&&V.timescale!==-1&&V.info!==null){if(V.info.type==="video"&&V.info.width!==-1){const fe=V;V.trackBacking=new h5(fe),this.tracks.push(V)}else if(V.info.type==="audio"&&V.info.numberOfChannels!==-1){const fe=V;V.trackBacking=new m5(fe),this.tracks.push(V)}}this.currentTrack=null}break;case"tkhd":{const V=this.currentTrack;if(!V)break;const fe=Ie(e),le=!!(Ta(e)&1);if(V.disposition.default=le,fe===0)e.skip(8),V.id=Ee(e),e.skip(4),V.durationInMovieTimescale=Ee(e);else if(fe===1)e.skip(16),V.id=Ee(e),e.skip(4),V.durationInMovieTimescale=qr(e);else throw new Error(`Incorrect track header version ${fe}.`);e.skip(16);const ce=[ol(e),ol(e),Tg(e),ol(e),ol(e),Tg(e),ol(e),ol(e),Tg(e)],ge=Yw(KQ(Z_(ce),90));G(ge===0||ge===90||ge===180||ge===270),V.rotation=ge}break;case"elst":{const V=this.currentTrack;if(!V)break;const fe=Ie(e);e.skip(3);let te=!1,le=0;const ce=Ee(e);for(let ge=0;ge<ce;ge++){const ye=fe===1?qr(e):Ee(e),be=fe===1?sj(e):Ol(e),Me=ol(e);if(ye!==0){if(te){console.warn("Unsupported edit list: multiple edits are not currently supported. Only using first edit.");break}if(be===-1){le+=ye;continue}if(Me!==1){console.warn("Unsupported edit list entry: media rate must be 1.");break}V.editListPreviousSegmentDurations=le,V.editListOffset=be,te=!0}}}break;case"mdhd":{const V=this.currentTrack;if(!V)break;const fe=Ie(e);e.skip(3),fe===0?(e.skip(8),V.timescale=Ee(e),V.durationInMediaTimescale=Ee(e)):fe===1&&(e.skip(16),V.timescale=Ee(e),V.durationInMediaTimescale=qr(e));let te=Kt(e);if(te>0){V.languageCode="";for(let le=0;le<3;le++)V.languageCode=String.fromCharCode(96+(te&31))+V.languageCode,te>>=5;i7(V.languageCode)||(V.languageCode=Bn)}}break;case"hdlr":{const V=this.currentTrack;if(!V)break;e.skip(8);const fe=Lt(e,4);fe==="vide"?V.info={type:"video",width:-1,height:-1,squarePixelWidth:-1,squarePixelHeight:-1,codec:null,codecDescription:null,colorSpace:null,avcType:null,avcCodecInfo:null,hevcCodecInfo:null,vp9CodecInfo:null,av1CodecInfo:null}:fe==="soun"&&(V.info={type:"audio",numberOfChannels:-1,sampleRate:-1,codec:null,codecDescription:null,aacCodecInfo:null,pcmLittleEndian:!1,pcmSampleSize:null})}break;case"stbl":{const V=this.currentTrack;if(!V)break;V.sampleTableByteOffset=t,this.readContiguousBoxes(e.slice(i,r.contentSize))}break;case"stsd":{const V=this.currentTrack;if(!V||V.info===null||V.sampleTable)break;const fe=Ie(e);e.skip(3);const te=Ee(e);for(let le=0;le<te;le++){const ce=e.filePos,ge=ks(e);if(!ge)break;V.internalCodecId=ge.name;const ye=ge.name.toLowerCase();if(V.info.type==="video"){e.skip(24),V.info.width=Kt(e),V.info.height=Kt(e),V.info.squarePixelWidth=V.info.width,V.info.squarePixelHeight=V.info.height,e.skip(50),V.frmaCodecString=null,this.readContiguousBoxes(e.slice(e.filePos,ce+ge.totalSize-e.filePos));const be=ye==="encv"?V.frmaCodecString:ye;V.frmaCodecString=null,be==="avc1"||be==="avc3"?(V.info.codec="avc",V.info.avcType=be==="avc1"?1:3):be==="hvc1"||be==="hev1"?V.info.codec="hevc":be==="vp08"?V.info.codec="vp8":be==="vp09"?V.info.codec="vp9":be==="av01"?V.info.codec="av1":console.warn(be===null?"Unknown encrypted video codec due to missing frma box.":`Unsupported video codec (sample entry type '${ge.name}').`)}else{e.skip(8);const be=Kt(e);e.skip(6);let Me=Kt(e),Pe=Kt(e);e.skip(4);let Ve=Ee(e)/65536,Ye=null;fe===0&&be>0&&(be===1?(e.skip(4),Pe=8*Ee(e),e.skip(8)):be===2&&(e.skip(4),Ve=rT(e),Me=Ee(e),e.skip(4),Pe=Ee(e),Ye=Ee(e),e.skip(8))),V.info.numberOfChannels=Me,V.info.sampleRate=Ve,V.frmaCodecString=null,this.readContiguousBoxes(e.slice(e.filePos,ce+ge.totalSize-e.filePos));const _e=ye==="enca"?V.frmaCodecString:ye;if(V.frmaCodecString=null,_e!=="mp4a")if(_e==="opus")V.info.codec="opus",V.info.sampleRate=P1;else if(_e==="flac")V.info.codec="flac";else if(_e==="ulaw")V.info.codec="ulaw";else if(_e==="alaw")V.info.codec="alaw";else if(_e==="ac-3")V.info.codec="ac3";else if(_e==="ec-3")V.info.codec="eac3";else if(_e==="twos")Pe===8?V.info.codec="pcm-s8":Pe===16?V.info.codec=V.info.pcmLittleEndian?"pcm-s16":"pcm-s16be":(console.warn(`Unsupported sample size ${Pe} for codec 'twos'.`),V.info.codec=null);else if(_e==="sowt")Pe===8?V.info.codec="pcm-s8":Pe===16?V.info.codec="pcm-s16":(console.warn(`Unsupported sample size ${Pe} for codec 'sowt'.`),V.info.codec=null);else if(_e==="raw ")V.info.codec="pcm-u8";else if(_e==="in24")V.info.codec=V.info.pcmLittleEndian?"pcm-s24":"pcm-s24be";else if(_e==="in32")V.info.codec=V.info.pcmLittleEndian?"pcm-s32":"pcm-s32be";else if(_e==="fl32")V.info.codec=V.info.pcmLittleEndian?"pcm-f32":"pcm-f32be";else if(_e==="fl64")V.info.codec=V.info.pcmLittleEndian?"pcm-f64":"pcm-f64be";else if(_e==="ipcm"){const Fe=V.info.pcmSampleSize;V.info.pcmLittleEndian?Fe===16?V.info.codec="pcm-s16":Fe===24?V.info.codec="pcm-s24":Fe===32?V.info.codec="pcm-s32":(console.warn(`Invalid ipcm sample size ${Fe}.`),V.info.codec=null):Fe===16?V.info.codec="pcm-s16be":Fe===24?V.info.codec="pcm-s24be":Fe===32?V.info.codec="pcm-s32be":(console.warn(`Invalid ipcm sample size ${Fe}.`),V.info.codec=null)}else if(_e==="fpcm"){const Fe=V.info.pcmSampleSize;V.info.pcmLittleEndian?Fe===32?V.info.codec="pcm-f32":Fe===64?V.info.codec="pcm-f64":(console.warn(`Invalid fpcm sample size ${Fe}.`),V.info.codec=null):Fe===32?V.info.codec="pcm-f32be":Fe===64?V.info.codec="pcm-f64be":(console.warn(`Invalid fpcm sample size ${Fe}.`),V.info.codec=null)}else if(_e==="lpcm"&&Ye!==null){const Fe=Pe+7>>3,_t=!!(Ye&1),qt=!!(Ye&2),In=Ye&4?-1:0;Pe>0&&Pe<=64&&(_t?Pe===32&&(V.info.codec=qt?"pcm-f32be":"pcm-f32"):In&1<<Fe-1?Fe===1?V.info.codec="pcm-s8":Fe===2?V.info.codec=qt?"pcm-s16be":"pcm-s16":Fe===3?V.info.codec=qt?"pcm-s24be":"pcm-s24":Fe===4&&(V.info.codec=qt?"pcm-s32be":"pcm-s32"):Fe===1&&(V.info.codec="pcm-u8")),V.info.codec===null&&console.warn("Unsupported PCM format.")}else console.warn(_e===null?"Unknown encrypted audio codec due to missing frma box.":`Unsupported audio codec (sample entry type '${ge.name}').`)}e.filePos=ce+ge.totalSize}}break;case"frma":{const V=this.currentTrack;if(!V)break;const te=Lt(e,4).toLowerCase();V.frmaCodecString=te}break;case"schm":{const V=this.currentTrack;if(!V)break;e.skip(4);const fe=Lt(e,4);fe==="cenc"||fe==="cens"||fe==="cbcs"?V.encryptionInfo={scheme:fe,defaultKid:null,defaultIsProtected:null,defaultPerSampleIvSize:null,defaultConstantIv:null,defaultCryptByteBlock:null,defaultSkipByteBlock:null}:console.warn(`Unsupported encryption scheme '${fe}'.`)}break;case"tenc":{const V=this.currentTrack;if(!V||!V.encryptionInfo)break;const fe=Ie(e);e.skip(3),e.skip(1);const te=Ie(e);if(fe>0?(V.encryptionInfo.defaultCryptByteBlock=te>>4,V.encryptionInfo.defaultSkipByteBlock=te&15):(V.encryptionInfo.defaultCryptByteBlock=0,V.encryptionInfo.defaultSkipByteBlock=0),V.encryptionInfo.defaultIsProtected=Ie(e)!==0,V.encryptionInfo.defaultPerSampleIvSize=Ie(e),V.encryptionInfo.defaultKid=E0(He(e,16)),V.encryptionInfo.defaultIsProtected&&V.encryptionInfo.defaultPerSampleIvSize===0){const le=Ie(e),ce=new Uint8Array(16);ce.set(He(e,le),0),V.encryptionInfo.defaultConstantIv=ce}}break;case"avcC":{const V=this.currentTrack;if(!V)break;G(V.info),V.info.codecDescription=He(e,r.contentSize)}break;case"hvcC":{const V=this.currentTrack;if(!V)break;G(V.info),V.info.codecDescription=He(e,r.contentSize)}break;case"vpcC":{const V=this.currentTrack;if(!V)break;G(((s=V.info)==null?void 0:s.type)==="video"),e.skip(4);const fe=Ie(e),te=Ie(e),le=Ie(e),ce=le>>4,ge=le>>1&7,ye=le&1,be=Ie(e),Me=Ie(e),Pe=Ie(e);V.info.vp9CodecInfo={profile:fe,level:te,bitDepth:ce,chromaSubsampling:ge,videoFullRangeFlag:ye,colourPrimaries:be,transferCharacteristics:Me,matrixCoefficients:Pe}}break;case"av1C":{const V=this.currentTrack;if(!V)break;G(((o=V.info)==null?void 0:o.type)==="video"),e.skip(1);const fe=Ie(e),te=fe>>5,le=fe&31,ce=Ie(e),ge=ce>>7,ye=ce>>6&1,be=ce>>5&1,Me=ce>>4&1,Pe=ce>>3&1,Ve=ce>>2&1,Ye=ce&3,_e=te===2&&ye?be?12:10:ye?10:8;V.info.av1CodecInfo={profile:te,level:le,tier:ge,bitDepth:_e,monochrome:Me,chromaSubsamplingX:Pe,chromaSubsamplingY:Ve,chromaSamplePosition:Ye}}break;case"colr":{const V=this.currentTrack;if(!V||(G(((u=V.info)==null?void 0:u.type)==="video"),Lt(e,4)!=="nclx"))break;const te=Kt(e),le=Kt(e),ce=Kt(e),ge=!!(Ie(e)&128);V.info.colorSpace={primaries:Rh[te],transfer:Qh[le],matrix:_h[ce],fullRange:ge}}break;case"pasp":{const V=this.currentTrack;if(!V)break;G(((d=V.info)==null?void 0:d.type)==="video");const fe=Ee(e),te=Ee(e);fe>0&&te>0&&(fe>te?V.info.squarePixelWidth=Math.round(V.info.width*fe/te):V.info.squarePixelHeight=Math.round(V.info.height*te/fe))}break;case"wave":this.readContiguousBoxes(e.slice(i,r.contentSize));break;case"esds":{const V=this.currentTrack;if(!V)break;G(((m=V.info)==null?void 0:m.type)==="audio"),e.skip(4);const fe=Ie(e);G(fe===3),Ag(e),e.skip(2);const te=Ie(e),le=(te&128)!==0,ce=(te&64)!==0,ge=(te&32)!==0;if(le&&e.skip(2),ce){const Ve=Ie(e);e.skip(Ve)}ge&&e.skip(2);const ye=Ie(e);G(ye===4);const be=Ag(e),Me=e.filePos,Pe=Ie(e);if(Pe===64||Pe===103?(V.info.codec="aac",V.info.aacCodecInfo={isMpeg2:Pe===103,objectType:null}):Pe===105||Pe===107?V.info.codec="mp3":Pe===221?V.info.codec="vorbis":console.warn(`Unsupported audio codec (objectTypeIndication ${Pe}) - discarding track.`),e.skip(12),be>e.filePos-Me){const Ve=Ie(e);G(Ve===5);const Ye=Ag(e);if(V.info.codecDescription=He(e,Ye),V.info.codec==="aac"){const _e=c7(V.info.codecDescription);_e.numberOfChannels!==null&&(V.info.numberOfChannels=_e.numberOfChannels),_e.sampleRate!==null&&(V.info.sampleRate=_e.sampleRate)}}}break;case"enda":{const V=this.currentTrack;if(!V)break;G(((p=V.info)==null?void 0:p.type)==="audio"),V.info.pcmLittleEndian=!!(Kt(e)&255)}break;case"pcmC":{const V=this.currentTrack;if(!V)break;G(((O=V.info)==null?void 0:O.type)==="audio"),e.skip(4);const fe=Ie(e);V.info.pcmLittleEndian=!!(fe&1),V.info.pcmSampleSize=Ie(e)}break;case"dOps":{const V=this.currentTrack;if(!V)break;G(((b=V.info)==null?void 0:b.type)==="audio"),e.skip(1);const fe=Ie(e),te=Kt(e),le=Ee(e),ce=p8(e),ge=Ie(e);let ye;ge!==0?ye=He(e,2+fe):ye=new Uint8Array(0);const be=new Uint8Array(19+ye.byteLength),Me=new DataView(be.buffer);Me.setUint32(0,1332770163,!1),Me.setUint32(4,1214603620,!1),Me.setUint8(8,1),Me.setUint8(9,fe),Me.setUint16(10,te,!0),Me.setUint32(12,le,!0),Me.setInt16(16,ce,!0),Me.setUint8(18,ge),be.set(ye,19),V.info.codecDescription=be,V.info.numberOfChannels=fe}break;case"dfLa":{const V=this.currentTrack;if(!V)break;G(((S=V.info)==null?void 0:S.type)==="audio"),e.skip(4);const fe=127,te=128,le=e.filePos;for(;e.filePos<a;){const Me=Ie(e),Pe=Ta(e);if((Me&fe)===cc.STREAMINFO){e.skip(10);const Ye=Ee(e),_e=Ye>>>12,Fe=(Ye>>9&7)+1;V.info.sampleRate=_e,V.info.numberOfChannels=Fe,e.skip(20)}else e.skip(Pe);if(Me&te)break}const ce=e.filePos;e.filePos=le;const ge=He(e,ce-le),ye=new Uint8Array(4+ge.byteLength);new DataView(ye.buffer).setUint32(0,1716281667,!1),ye.set(ge,4),V.info.codecDescription=ye}break;case"dac3":{const V=this.currentTrack;if(!V)break;G(((k=V.info)==null?void 0:k.type)==="audio");const fe=He(e,3),te=new kt(fe),le=te.readBits(2);te.skipBits(8);const ce=te.readBits(3),ge=te.readBits(1);le<3&&(V.info.sampleRate=C1[le]),V.info.numberOfChannels=KO[ce]+ge}break;case"dec3":{const V=this.currentTrack;if(!V)break;G(((T=V.info)==null?void 0:T.type)==="audio");const fe=He(e,r.contentSize),te=E_(fe);if(!te){console.warn("Invalid dec3 box contents, ignoring.");break}const le=A7(te);le!==null&&(V.info.sampleRate=le),V.info.numberOfChannels=P7(te)}break;case"stts":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e);let te=0,le=0;for(let ce=0;ce<fe;ce++){const ge=Ee(e),ye=Ee(e);V.sampleTable.sampleTimingEntries.push({startIndex:te,startDecodeTimestamp:le,count:ge,delta:ye}),te+=ge,le+=ge*ye}}break;case"ctts":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e);let te=0;for(let le=0;le<fe;le++){const ce=Ee(e),ge=Ol(e);V.sampleTable.sampleCompositionTimeOffsets.push({startIndex:te,count:ce,offset:ge}),te+=ce}}break;case"stsz":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e),te=Ee(e);if(fe===0)for(let le=0;le<te;le++){const ce=Ee(e);V.sampleTable.sampleSizes.push(ce)}else V.sampleTable.sampleSizes.push(fe)}break;case"stz2":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4),e.skip(3);const fe=Ie(e),te=Ee(e),le=He(e,Math.ceil(te*fe/8)),ce=new kt(le);for(let ge=0;ge<te;ge++){const ye=ce.readBits(fe);V.sampleTable.sampleSizes.push(ye)}}break;case"stss":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4),V.sampleTable.keySampleIndices=[];const fe=Ee(e);for(let te=0;te<fe;te++){const le=Ee(e)-1;V.sampleTable.keySampleIndices.push(le)}V.sampleTable.keySampleIndices[0]!==0&&V.sampleTable.keySampleIndices.unshift(0)}break;case"stsc":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e);for(let le=0;le<fe;le++){const ce=Ee(e)-1,ge=Ee(e),ye=Ee(e);V.sampleTable.sampleToChunk.push({startSampleIndex:-1,startChunkIndex:ce,samplesPerChunk:ge,sampleDescriptionIndex:ye})}let te=0;for(let le=0;le<V.sampleTable.sampleToChunk.length;le++)if(V.sampleTable.sampleToChunk[le].startSampleIndex=te,le<V.sampleTable.sampleToChunk.length-1){const ge=V.sampleTable.sampleToChunk[le+1].startChunkIndex-V.sampleTable.sampleToChunk[le].startChunkIndex;te+=ge*V.sampleTable.sampleToChunk[le].samplesPerChunk}}break;case"stco":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e);for(let te=0;te<fe;te++){const le=Ee(e);V.sampleTable.chunkOffsets.push(le)}}break;case"co64":{const V=this.currentTrack;if(!V||!V.sampleTable)break;e.skip(4);const fe=Ee(e);for(let te=0;te<fe;te++){const le=qr(e);V.sampleTable.chunkOffsets.push(le)}}break;case"mvex":this.isFragmented=!0,this.readContiguousBoxes(e.slice(i,r.contentSize));break;case"mehd":{const V=Ie(e);e.skip(3);const fe=V===1?qr(e):Ee(e);this.movieDurationInTimescale=fe}break;case"trex":{e.skip(4);const V=Ee(e),fe=Ee(e),te=Ee(e),le=Ee(e),ce=Ee(e);this.fragmentTrackDefaults.push({trackId:V,defaultSampleDescriptionIndex:fe,defaultSampleDuration:te,defaultSampleSize:le,defaultSampleFlags:ce})}break;case"tfra":{const V=Ie(e);e.skip(3);const fe=Ee(e),te=this.tracks.find(_e=>_e.id===fe);if(!te)break;const le=Ee(e),ce=(le&48)>>4,ge=(le&12)>>2,ye=le&3,be=[Ie,Kt,Ta,Ee],Me=be[ce],Pe=be[ge],Ve=be[ye],Ye=Ee(e);for(let _e=0;_e<Ye;_e++){const Fe=V===1?qr(e):Ee(e),_t=V===1?qr(e):Ee(e);Me(e),Pe(e),Ve(e),te.fragmentLookupTable.push({timestamp:Fe,moofOffset:_t})}te.fragmentLookupTable.sort((_e,Fe)=>_e.timestamp-Fe.timestamp);for(let _e=0;_e<te.fragmentLookupTable.length-1;_e++){const Fe=te.fragmentLookupTable[_e],_t=te.fragmentLookupTable[_e+1];Fe.timestamp===_t.timestamp&&(te.fragmentLookupTable.splice(_e+1,1),_e--)}}break;case"moof":this.currentFragment={moofOffset:t,moofSize:r.totalSize,implicitBaseDataOffset:t,trackData:new Map,psshBoxes:[]},this.readContiguousBoxes(e.slice(i,r.contentSize)),this.lastReadFragment=this.currentFragment,this.currentFragment=null;break;case"traf":if(G(this.currentFragment),this.readContiguousBoxes(e.slice(i,r.contentSize)),this.currentTrack){const V=this.currentFragment.trackData.get(this.currentTrack.id);if(V){this.currentFragment.implicitBaseDataOffset=V.currentOffset,V.presentationTimestamps=V.samples.map((ce,ge)=>({presentationTimestamp:ce.presentationTimestamp,sampleIndex:ge})).sort((ce,ge)=>ce.presentationTimestamp-ge.presentationTimestamp);for(let ce=0;ce<V.presentationTimestamps.length;ce++){const ge=V.presentationTimestamps[ce],ye=V.samples[ge.sampleIndex];if(V.firstKeyFrameTimestamp===null&&ye.isKeyFrame&&(V.firstKeyFrameTimestamp=ye.presentationTimestamp),ce<V.presentationTimestamps.length-1){const Me=V.presentationTimestamps[ce+1].presentationTimestamp-ge.presentationTimestamp;ye.duration=Me}}const fe=V.samples[V.presentationTimestamps[0].sampleIndex],te=V.samples[Rr(V.presentationTimestamps).sampleIndex];V.startTimestamp=fe.presentationTimestamp,V.endTimestamp=te.presentationTimestamp+te.duration;const{currentFragmentState:le}=this.currentTrack;G(le),le.startTimestamp!==null&&(Pg(V,le.startTimestamp),V.startTimestampIsFinal=!0),le.encryptionAuxInfo&&!V.samples[0].encryption&&(V.encryptionAuxInfo=le.encryptionAuxInfo)}this.currentTrack.currentFragmentState=null,this.currentTrack=null}break;case"pssh":{if((w=this.input._formatOptions.isobmff)!=null&&w._suppressPsshParsing)break;const V=C7(He(e,r.contentSize));this.currentFragment?this.currentFragment.psshBoxes.push(V):this.currentTrack||this.psshBoxes.push(V)}break;case"tfhd":{G(this.currentFragment),e.skip(1);const V=Ta(e),fe=!!(V&1),te=!!(V&2),le=!!(V&8),ce=!!(V&16),ge=!!(V&32),ye=!!(V&65536),be=!!(V&131072),Me=Ee(e),Pe=this.tracks.find(Ye=>Ye.id===Me);if(!Pe)break;const Ve=this.fragmentTrackDefaults.find(Ye=>Ye.trackId===Me);this.currentTrack=Pe,Pe.currentFragmentState={baseDataOffset:this.currentFragment.implicitBaseDataOffset,sampleDescriptionIndex:(Ve==null?void 0:Ve.defaultSampleDescriptionIndex)??null,defaultSampleDuration:(Ve==null?void 0:Ve.defaultSampleDuration)??null,defaultSampleSize:(Ve==null?void 0:Ve.defaultSampleSize)??null,defaultSampleFlags:(Ve==null?void 0:Ve.defaultSampleFlags)??null,startTimestamp:null,encryptionAuxInfo:null},fe?Pe.currentFragmentState.baseDataOffset=qr(e):be&&(Pe.currentFragmentState.baseDataOffset=this.currentFragment.moofOffset),te&&(Pe.currentFragmentState.sampleDescriptionIndex=Ee(e)),le&&(Pe.currentFragmentState.defaultSampleDuration=Ee(e)),ce&&(Pe.currentFragmentState.defaultSampleSize=Ee(e)),ge&&(Pe.currentFragmentState.defaultSampleFlags=Ee(e)),ye&&(Pe.currentFragmentState.defaultSampleDuration=0)}break;case"tfdt":{const V=this.currentTrack;if(!V)break;G(V.currentFragmentState);const fe=Ie(e);e.skip(3);const te=fe===0?Ee(e):qr(e);V.currentFragmentState.startTimestamp=te}break;case"trun":{const V=this.currentTrack;if(!V)break;G(this.currentFragment),G(V.currentFragmentState);const fe=Ie(e),te=Ta(e),le=!!(te&1),ce=!!(te&4),ge=!!(te&256),ye=!!(te&512),be=!!(te&1024),Me=!!(te&2048),Pe=Ee(e);let Ve=null;le&&(Ve=Ol(e));let Ye=null;ce&&(Ye=Ee(e));let _e;if(this.currentFragment.trackData.has(V.id)?(_e=this.currentFragment.trackData.get(V.id),Ve!==null&&(_e.currentOffset=V.currentFragmentState.baseDataOffset+Ve)):(_e={track:V,currentTimestamp:0,currentOffset:V.currentFragmentState.baseDataOffset+(Ve??0),startTimestamp:0,endTimestamp:0,firstKeyFrameTimestamp:null,samples:[],presentationTimestamps:[],startTimestampIsFinal:!1,encryptionAuxInfo:null},this.currentFragment.trackData.set(V.id,_e)),Pe===0){this.currentFragment.implicitBaseDataOffset=_e.currentOffset;break}for(let Fe=0;Fe<Pe;Fe++){let _t;ge?_t=Ee(e):(G(V.currentFragmentState.defaultSampleDuration!==null),_t=V.currentFragmentState.defaultSampleDuration);let qt;ye?qt=Ee(e):(G(V.currentFragmentState.defaultSampleSize!==null),qt=V.currentFragmentState.defaultSampleSize);let In;be?In=Ee(e):(G(V.currentFragmentState.defaultSampleFlags!==null),In=V.currentFragmentState.defaultSampleFlags),Fe===0&&Ye!==null&&(In=Ye);let hr=0;Me&&(fe===0?hr=Ee(e):hr=Ol(e));const mr=!(In&65536);_e.samples.push({presentationTimestamp:_e.currentTimestamp+hr,duration:_t,byteOffset:_e.currentOffset,byteSize:qt,isKeyFrame:mr,encryption:null}),_e.currentOffset+=qt,_e.currentTimestamp+=_t}}break;case"saiz":{const V=this.currentTrack;if(!V||!V.encryptionInfo)break;if(e.skip(1),Ta(e)&1){const ye=Lt(e,4),be=Ee(e);if(ye!==V.encryptionInfo.scheme||be!==0)break}const te=Ie(e),le=Ee(e);let ce=null;te===0&&le>0&&(ce=He(e,le));const ge=g5(V);ge.defaultSampleInfoSize=te,ge.sampleSizes=ce,ge.sampleCount=le}break;case"saio":{const V=this.currentTrack;if(!V||!V.encryptionInfo)break;const fe=Ie(e);if(Ta(e)&1){const ye=Lt(e,4),be=Ee(e);if(ye!==V.encryptionInfo.scheme||be!==0)break}const le=Ee(e);if(le===0)break;le>1&&console.warn("Multiple saio entries are not supported; using the first offset only.");let ce=fe===0?Ee(e):Number(qr(e));this.currentFragment&&(ce+=this.currentFragment.moofOffset);const ge=g5(V);ge.offset=ce}break;case"senc":{const V=this.currentTrack;if(!V||!V.encryptionInfo)break;G(this.currentFragment);const fe=this.currentFragment.trackData.get(V.id);if(!fe)break;e.skip(1);const le=!!(Ta(e)&2),ce=Ee(e),ge=V.encryptionInfo.defaultPerSampleIvSize;G(ge!==null);for(let ye=0;ye<Math.min(ce,fe.samples.length);ye++){const be=new Uint8Array(16);ge>0?be.set(He(e,ge),0):be.set(V.encryptionInfo.defaultConstantIv,0);let Me=null;if(le){const Ve=Kt(e);Me=[];for(let Ye=0;Ye<Ve;Ye++){const _e=Kt(e),Fe=Ee(e);Me.push({clearLen:_e,protectedLen:Fe})}}const Pe=fe.samples[ye];Pe.encryption={iv:be,subsamples:Me}}}break;case"udta":{const V=this.iterateContiguousBoxes(e.slice(i,r.contentSize));for(const{boxInfo:fe,slice:te}of V){if(fe.name!=="meta"&&!this.currentTrack){const le=te.filePos;(A=this.metadataTags).raw??(A.raw={}),fe.name[0]==="©"?(E=this.metadataTags.raw)[C=fe.name]??(E[C]=$i(te)):(P=this.metadataTags.raw)[$=fe.name]??(P[$]=He(te,fe.contentSize)),te.filePos=le}switch(fe.name){case"meta":te.skip(-fe.headerSize),this.traverseBox(te);break;case"©nam":case"name":this.currentTrack?this.currentTrack.name=Mr.decode(He(te,fe.contentSize)):(M=this.metadataTags).title??(M.title=$i(te));break;case"©des":this.currentTrack||((R=this.metadataTags).description??(R.description=$i(te)));break;case"©ART":this.currentTrack||((N=this.metadataTags).artist??(N.artist=$i(te)));break;case"©alb":this.currentTrack||((Z=this.metadataTags).album??(Z.album=$i(te)));break;case"albr":this.currentTrack||((D=this.metadataTags).albumArtist??(D.albumArtist=$i(te)));break;case"©gen":this.currentTrack||((I=this.metadataTags).genre??(I.genre=$i(te)));break;case"©day":if(!this.currentTrack){const le=new Date($i(te));Number.isNaN(le.getTime())||((U=this.metadataTags).date??(U.date=le))}break;case"©cmt":this.currentTrack||((K=this.metadataTags).comment??(K.comment=$i(te)));break;case"©lyr":this.currentTrack||((q=this.metadataTags).lyrics??(q.lyrics=$i(te)));break}}}break;case"meta":{if(this.currentTrack)break;const fe=Ee(e)!==0;this.currentMetadataKeys=new Map,fe?this.readContiguousBoxes(e.slice(i,r.contentSize)):this.readContiguousBoxes(e.slice(i+4,r.contentSize-4)),this.currentMetadataKeys=null}break;case"keys":{if(!this.currentMetadataKeys)break;e.skip(4);const V=Ee(e);for(let fe=0;fe<V;fe++){const te=Ee(e);e.skip(4);const le=Mr.decode(He(e,te-8));this.currentMetadataKeys.set(fe+1,le)}}break;case"ilst":{if(!this.currentMetadataKeys)break;const V=this.iterateContiguousBoxes(e.slice(i,r.contentSize));for(const{boxInfo:fe,slice:te}of V){let le=fe.name;const ce=(le.charCodeAt(0)<<24)+(le.charCodeAt(1)<<16)+(le.charCodeAt(2)<<8)+le.charCodeAt(3);this.currentMetadataKeys.has(ce)&&(le=this.currentMetadataKeys.get(ce));const ge=$_(te);switch((L=this.metadataTags).raw??(L.raw={}),(W=this.metadataTags.raw)[le]??(W[le]=ge),le){case"©nam":case"titl":case"com.apple.quicktime.title":case"title":typeof ge=="string"&&((ee=this.metadataTags).title??(ee.title=ge));break;case"©des":case"desc":case"dscp":case"com.apple.quicktime.description":case"description":typeof ge=="string"&&((X=this.metadataTags).description??(X.description=ge));break;case"©ART":case"com.apple.quicktime.artist":case"artist":typeof ge=="string"&&((B=this.metadataTags).artist??(B.artist=ge));break;case"©alb":case"albm":case"com.apple.quicktime.album":case"album":typeof ge=="string"&&((_=this.metadataTags).album??(_.album=ge));break;case"aART":case"album_artist":typeof ge=="string"&&((j=this.metadataTags).albumArtist??(j.albumArtist=ge));break;case"©cmt":case"com.apple.quicktime.comment":case"comment":typeof ge=="string"&&((H=this.metadataTags).comment??(H.comment=ge));break;case"©gen":case"gnre":case"com.apple.quicktime.genre":case"genre":typeof ge=="string"&&((F=this.metadataTags).genre??(F.genre=ge));break;case"©lyr":case"lyrics":typeof ge=="string"&&((Y=this.metadataTags).lyrics??(Y.lyrics=ge));break;case"©day":case"rldt":case"com.apple.quicktime.creationdate":case"date":if(typeof ge=="string"){const ye=new Date(ge);Number.isNaN(ye.getTime())||((ae=this.metadataTags).date??(ae.date=ye))}break;case"covr":case"com.apple.quicktime.artwork":ge instanceof ph?((ie=this.metadataTags).images??(ie.images=[]),this.metadataTags.images.push({data:ge.data,kind:"coverFront",mimeType:ge.mimeType})):ge instanceof Uint8Array&&((Oe=this.metadataTags).images??(Oe.images=[]),this.metadataTags.images.push({data:ge,kind:"coverFront",mimeType:"image/*"}));break;case"track":if(typeof ge=="string"){const ye=ge.split("/"),be=Number.parseInt(ye[0],10),Me=ye[1]&&Number.parseInt(ye[1],10);Number.isInteger(be)&&be>0&&((de=this.metadataTags).trackNumber??(de.trackNumber=be)),Me&&Number.isInteger(Me)&&Me>0&&((me=this.metadataTags).tracksTotal??(me.tracksTotal=Me))}break;case"trkn":if(ge instanceof Uint8Array&&ge.length>=6){const ye=Dt(ge),be=ye.getUint16(2,!1),Me=ye.getUint16(4,!1);be>0&&((Te=this.metadataTags).trackNumber??(Te.trackNumber=be)),Me>0&&((Ce=this.metadataTags).tracksTotal??(Ce.tracksTotal=Me))}break;case"disc":case"disk":if(ge instanceof Uint8Array&&ge.length>=6){const ye=Dt(ge),be=ye.getUint16(2,!1),Me=ye.getUint16(4,!1);be>0&&((Ne=this.metadataTags).discNumber??(Ne.discNumber=be)),Me>0&&((Xe=this.metadataTags).discsTotal??(Xe.discsTotal=Me))}break}}}break}return e.filePos=a,!0}}class Q7{constructor(e){this.internalTrack=e,this.packetToSampleIndex=new WeakMap,this.packetToFragmentLocation=new WeakMap}getId(){return this.internalTrack.id}getNumber(){const e=this.internalTrack.demuxer,t=this.internalTrack.trackBacking.getType();let r=0;for(const i of e.tracks)if(i.trackBacking.getType()===t&&r++,i===this.internalTrack)break;return r}getCodec(){throw new Error("Not implemented on base class.")}getInternalCodecId(){return this.internalTrack.internalCodecId}getName(){return this.internalTrack.name}getLanguageCode(){return this.internalTrack.languageCode}getTimeResolution(){return this.internalTrack.timescale}isRelativeToUnixEpoch(){return!1}getDisposition(){return this.internalTrack.disposition}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){const e=this.internalTrack;if(e.durationInMediaTimescale<=0)return null;G(e.trackBacking);const t=await e.trackBacking.getFirstPacket({metadataOnly:!0});return((t==null?void 0:t.timestamp)??0)+e.durationInMediaTimescale/e.timescale}async getLiveRefreshInterval(){return null}async getFirstPacket(e){const t=await this.fetchPacketForSampleIndex(0,e);return t||!this.internalTrack.demuxer.isFragmented?t:this.performFragmentedLookup(null,r=>r.trackData.get(this.internalTrack.id)?{sampleIndex:0,correctSampleFound:!0}:{sampleIndex:-1,correctSampleFound:!1},-1/0,1/0,e)}mapTimestampIntoTimescale(e){return M0(e*this.internalTrack.timescale)+this.internalTrack.editListOffset}async getPacket(e,t){const r=this.mapTimestampIntoTimescale(e),i=this.internalTrack.demuxer.getSampleTableForTrack(this.internalTrack),a=o8(i,r),s=await this.fetchPacketForSampleIndex(a,t);return!p5(i)||!this.internalTrack.demuxer.isFragmented?s:this.performFragmentedLookup(null,o=>{const u=o.trackData.get(this.internalTrack.id);if(!u)return{sampleIndex:-1,correctSampleFound:!1};const d=Ot(u.presentationTimestamps,r,O=>O.presentationTimestamp),m=d!==-1?u.presentationTimestamps[d].sampleIndex:-1,p=d!==-1&&r<u.endTimestamp;return{sampleIndex:m,correctSampleFound:p}},r,r,t)}async getNextPacket(e,t){const r=this.packetToSampleIndex.get(e);if(r!==void 0)return this.fetchPacketForSampleIndex(r+1,t);const i=this.packetToFragmentLocation.get(e);if(i===void 0)throw new Error("Packet was not created from this track.");return this.performFragmentedLookup(i.fragment,a=>{if(a===i.fragment){const s=a.trackData.get(this.internalTrack.id);if(i.sampleIndex+1<s.samples.length)return{sampleIndex:i.sampleIndex+1,correctSampleFound:!0}}else if(a.trackData.get(this.internalTrack.id))return{sampleIndex:0,correctSampleFound:!0};return{sampleIndex:-1,correctSampleFound:!1}},-1/0,1/0,t)}async getKeyPacket(e,t){const r=this.mapTimestampIntoTimescale(e),i=this.internalTrack.demuxer.getSampleTableForTrack(this.internalTrack),a=__(i,r),s=await this.fetchPacketForSampleIndex(a,t);return!p5(i)||!this.internalTrack.demuxer.isFragmented?s:this.performFragmentedLookup(null,o=>{const u=o.trackData.get(this.internalTrack.id);if(!u)return{sampleIndex:-1,correctSampleFound:!1};const d=HO(u.presentationTimestamps,O=>u.samples[O.sampleIndex].isKeyFrame&&O.presentationTimestamp<=r),m=d!==-1?u.presentationTimestamps[d].sampleIndex:-1,p=d!==-1&&r<u.endTimestamp;return{sampleIndex:m,correctSampleFound:p}},r,r,t)}async getNextKeyPacket(e,t){const r=this.packetToSampleIndex.get(e);if(r!==void 0){const a=this.internalTrack.demuxer.getSampleTableForTrack(this.internalTrack),s=j_(a,r);return this.fetchPacketForSampleIndex(s,t)}const i=this.packetToFragmentLocation.get(e);if(i===void 0)throw new Error("Packet was not created from this track.");return this.performFragmentedLookup(i.fragment,a=>{if(a===i.fragment){const o=a.trackData.get(this.internalTrack.id).samples.findIndex((u,d)=>u.isKeyFrame&&d>i.sampleIndex);if(o!==-1)return{sampleIndex:o,correctSampleFound:!0}}else{const s=a.trackData.get(this.internalTrack.id);if(s&&s.firstKeyFrameTimestamp!==null){const o=s.samples.findIndex(u=>u.isKeyFrame);return G(o!==-1),{sampleIndex:o,correctSampleFound:!0}}}return{sampleIndex:-1,correctSampleFound:!1}},-1/0,1/0,t)}async fetchPacketForSampleIndex(e,t){if(e===-1)return null;const r=this.internalTrack.demuxer.getSampleTableForTrack(this.internalTrack),i=N_(r,e);if(!i)return null;let a;if(t.metadataOnly)a=Qr;else{let d=this.internalTrack.demuxer.reader.requestSlice(i.sampleOffset,i.sampleSize);if(d instanceof Promise&&(d=await d),!d)return null;if(a=He(d,i.sampleSize),this.internalTrack.encryptionAuxInfo){G(this.internalTrack.encryptionInfo);const m=await _7(this.internalTrack.demuxer.reader,this.internalTrack.encryptionInfo,this.internalTrack.encryptionAuxInfo);e<m.length&&(a=await O5(this.internalTrack,m[e],a,null))}}const s=(i.presentationTimestamp-this.internalTrack.editListOffset)/this.internalTrack.timescale,o=i.duration/this.internalTrack.timescale,u=new bn(a,i.isKeyFrame?"key":"delta",s,o,e,i.sampleSize);return this.packetToSampleIndex.set(u,e),u}async fetchPacketInFragment(e,t,r){if(t===-1)return null;const a=e.trackData.get(this.internalTrack.id).samples[t];G(a);let s;if(r.metadataOnly)s=Qr;else{let m=this.internalTrack.demuxer.reader.requestSlice(a.byteOffset,a.byteSize);if(m instanceof Promise&&(m=await m),!m)return null;s=He(m,a.byteSize),a.encryption&&(s=await O5(this.internalTrack,a.encryption,s,e))}const o=(a.presentationTimestamp-this.internalTrack.editListOffset)/this.internalTrack.timescale,u=a.duration/this.internalTrack.timescale,d=new bn(s,a.isKeyFrame?"key":"delta",o,u,e.moofOffset+t,a.byteSize);return this.packetToFragmentLocation.set(d,{fragment:e,sampleIndex:t}),d}async performFragmentedLookup(e,t,r,i,a){const s=this.internalTrack.demuxer;let o=null,u=null,d=-1;if(e){const{sampleIndex:T,correctSampleFound:w}=t(e);if(w)return this.fetchPacketInFragment(e,T,a);T!==-1&&(u=e,d=T)}const m=Ot(this.internalTrack.fragmentLookupTable,r,T=>T.timestamp),p=m!==-1?this.internalTrack.fragmentLookupTable[m]:null,O=Ot(this.internalTrack.fragmentPositionCache,r,T=>T.startTimestamp),b=O!==-1?this.internalTrack.fragmentPositionCache[O]:null,S=Math.max((p==null?void 0:p.moofOffset)??0,(b==null?void 0:b.moofOffset)??0)||null;let k;for(e?S===null||e.moofOffset>=S?(k=e.moofOffset+e.moofSize,o=e):k=S:k=S??0;;){if(o){const E=o.trackData.get(this.internalTrack.id);if(E&&E.startTimestamp>i)break}let T=s.reader.requestSliceRange(k,Zo,Yu);if(T instanceof Promise&&(T=await T),!T)break;const w=k,A=ks(T);if(!A)break;if(A.name==="moof"){o=await s.readFragment(w);const{sampleIndex:E,correctSampleFound:C}=t(o);if(C)return this.fetchPacketInFragment(o,E,a);E!==-1&&(u=o,d=E)}k=w+A.totalSize}if(p&&(!u||u.moofOffset<p.moofOffset)){const T=this.internalTrack.fragmentLookupTable[m-1];G(!T||T.timestamp<p.timestamp);const w=(T==null?void 0:T.timestamp)??-1/0;return this.performFragmentedLookup(null,t,w,i,a)}return u?this.fetchPacketInFragment(u,d,a):null}}class h5 extends Q7{constructor(e){super(e),this.decoderConfigPromise=null,this.internalTrack=e}getType(){return"video"}getCodec(){return this.internalTrack.info.codec}getCodedWidth(){return this.internalTrack.info.width}getCodedHeight(){return this.internalTrack.info.height}getSquarePixelWidth(){return this.internalTrack.info.squarePixelWidth}getSquarePixelHeight(){return this.internalTrack.info.squarePixelHeight}getRotation(){return this.internalTrack.rotation}async getColorSpace(){var e,t,r,i;return{primaries:(e=this.internalTrack.info.colorSpace)==null?void 0:e.primaries,transfer:(t=this.internalTrack.info.colorSpace)==null?void 0:t.transfer,matrix:(r=this.internalTrack.info.colorSpace)==null?void 0:r.matrix,fullRange:(i=this.internalTrack.info.colorSpace)==null?void 0:i.fullRange}}async canBeTransparent(){return!1}async getDecoderConfig(){return this.internalTrack.info.codec?this.decoderConfigPromise??(this.decoderConfigPromise=(async()=>{if(this.internalTrack.info.codec==="vp9"&&!this.internalTrack.info.vp9CodecInfo){const t=await this.getFirstPacket({});this.internalTrack.info.vp9CodecInfo=t&&S7(t.data)}else if(this.internalTrack.info.codec==="av1"&&!this.internalTrack.info.av1CodecInfo){const t=await this.getFirstPacket({});this.internalTrack.info.av1CodecInfo=t&&v7(t.data)}const e={codec:qO(this.internalTrack.info),codedWidth:this.internalTrack.info.width,codedHeight:this.internalTrack.info.height,description:this.internalTrack.info.codecDescription??void 0,colorSpace:this.internalTrack.info.colorSpace??void 0};return(this.internalTrack.info.width!==this.internalTrack.info.squarePixelWidth||this.internalTrack.info.height!==this.internalTrack.info.squarePixelHeight)&&(e.displayAspectWidth=this.internalTrack.info.squarePixelWidth,e.displayAspectHeight=this.internalTrack.info.squarePixelHeight),e})()):null}}class m5 extends Q7{constructor(e){super(e),this.decoderConfig=null,this.internalTrack=e}getType(){return"audio"}getCodec(){return this.internalTrack.info.codec}getNumberOfChannels(){return this.internalTrack.info.numberOfChannels}getSampleRate(){return this.internalTrack.info.sampleRate}async getDecoderConfig(){return this.internalTrack.info.codec?this.decoderConfig??(this.decoderConfig={codec:YO(this.internalTrack.info),numberOfChannels:this.internalTrack.info.numberOfChannels,sampleRate:this.internalTrack.info.sampleRate,description:this.internalTrack.info.codecDescription??void 0}):null}}const o8=(n,e)=>{if(n.presentationTimestamps){const t=Ot(n.presentationTimestamps,e,r=>r.presentationTimestamp);return t===-1?-1:n.presentationTimestamps[t].sampleIndex}else{const t=Ot(n.sampleTimingEntries,e,i=>i.startDecodeTimestamp);if(t===-1)return-1;const r=n.sampleTimingEntries[t];return r.startIndex+Math.min(Math.floor((e-r.startDecodeTimestamp)/r.delta),r.count-1)}},__=(n,e)=>{if(!n.keySampleIndices)return o8(n,e);if(n.presentationTimestamps){const t=Ot(n.presentationTimestamps,e,r=>r.presentationTimestamp);if(t===-1)return-1;for(let r=t;r>=0;r--){const i=n.presentationTimestamps[r].sampleIndex;if(K0(n.keySampleIndices,i,s=>s)!==-1)return i}return-1}else{const t=o8(n,e),r=Ot(n.keySampleIndices,t,i=>i);return n.keySampleIndices[r]??-1}},N_=(n,e)=>{const t=Ot(n.sampleTimingEntries,e,w=>w.startIndex),r=n.sampleTimingEntries[t];if(!r||r.startIndex+r.count<=e)return null;let a=r.startDecodeTimestamp+(e-r.startIndex)*r.delta;const s=Ot(n.sampleCompositionTimeOffsets,e,w=>w.startIndex),o=n.sampleCompositionTimeOffsets[s];o&&e-o.startIndex<o.count&&(a+=o.offset);const u=n.sampleSizes[Math.min(e,n.sampleSizes.length-1)],d=Ot(n.sampleToChunk,e,w=>w.startSampleIndex),m=n.sampleToChunk[d];G(m);const p=m.startChunkIndex+Math.floor((e-m.startSampleIndex)/m.samplesPerChunk),O=n.chunkOffsets[p],b=m.startSampleIndex+(p-m.startChunkIndex)*m.samplesPerChunk;let S=0,k=O;if(n.sampleSizes.length===1)k+=u*(e-b),S+=u*m.samplesPerChunk;else for(let w=b;w<b+m.samplesPerChunk;w++){const A=n.sampleSizes[w];w<e&&(k+=A),S+=A}let T=r.delta;if(n.presentationTimestamps){const w=n.presentationTimestampIndexMap[e];G(w!==void 0),w<n.presentationTimestamps.length-1&&(T=n.presentationTimestamps[w+1].presentationTimestamp-a)}return{presentationTimestamp:a,duration:T,sampleOffset:k,sampleSize:u,chunkOffset:O,chunkSize:S,isKeyFrame:n.keySampleIndices?K0(n.keySampleIndices,e,w=>w)!==-1:!0}},j_=(n,e)=>{if(!n.keySampleIndices)return e+1;const t=Ot(n.keySampleIndices,e,r=>r);return n.keySampleIndices[t+1]??-1},Pg=(n,e)=>{n.startTimestamp+=e,n.endTimestamp+=e;for(const t of n.samples)t.presentationTimestamp+=e;for(const t of n.presentationTimestamps)t.presentationTimestamp+=e},Z_=n=>{const[e,t]=n,r=Math.atan2(t,e);return Number.isFinite(r)?r*(180/Math.PI):0},p5=n=>n.sampleSizes.length===0,g5=n=>{var e;return n.currentFragmentState?(e=n.currentFragmentState).encryptionAuxInfo??(e.encryptionAuxInfo={defaultSampleInfoSize:0,sampleSizes:null,sampleCount:0,offset:null,resolved:null}):n.encryptionAuxInfo??(n.encryptionAuxInfo={defaultSampleInfoSize:0,sampleSizes:null,sampleCount:0,offset:null,resolved:null})},_7=async(n,e,t)=>{if(t.resolved)return t.resolved;if(t.offset===null||t.sampleCount===0)throw new Error("Incomplete saiz/saio info; cannot resolve encryption data.");let r=0;if(t.defaultSampleInfoSize>0)r=t.defaultSampleInfoSize*t.sampleCount;else{G(t.sampleSizes);for(let o=0;o<t.sampleCount;o++)r+=t.sampleSizes[o]}let i=n.requestSlice(t.offset,r);if(i instanceof Promise&&(i=await i),!i)throw new Error("Failed to read auxiliary encryption info.");const a=e.defaultPerSampleIvSize;G(a!==null);const s=[];for(let o=0;o<t.sampleCount;o++){const u=t.defaultSampleInfoSize>0?t.defaultSampleInfoSize:t.sampleSizes[o],d=new Uint8Array(16);a>0?d.set(He(i,a),0):d.set(e.defaultConstantIv,0);let m=null;if(u>a){const p=Kt(i);m=[];for(let O=0;O<p;O++){const b=Kt(i),S=Ee(i);m.push({clearLen:b,protectedLen:S})}}s.push({iv:d,subsamples:m})}return t.resolved=s,s},O5=async(n,e,t,r)=>{var u;G(n.encryptionInfo);const i=n.encryptionInfo;G(i.defaultKid!==null);const a=i.defaultKid;let s;const o=n.demuxer.decryptionKeyCache.get(a);if(o)s=await o;else{if(!((u=n.demuxer.input._formatOptions.isobmff)!=null&&u.resolveKeyId))throw new Error("Encrypted media samples encountered. To decrypt them, please provide a callback for InputOptions.formatOptions.isobmff.resolveKeyId.");const d=(async()=>{let m=n.demuxer.psshBoxes;if(r){m=[...m,...r.psshBoxes].filter(O=>O.keyIds===null||O.keyIds.includes(a));for(let O=0;O<m.length-1;O++)for(let b=O+1;b<m.length;b++)E7(m[O],m[b])&&(m.splice(b,1),b--)}const p=await n.demuxer.input._formatOptions.isobmff.resolveKeyId({keyId:a,psshBoxes:m});if(!(typeof p=="string"&&p.length===32&&YQ.test(p)||p instanceof Uint8Array&&p.byteLength===16))throw new TypeError("resolveKeyId must return a 32-character hex string or a 16-byte Uint8Array containing the decryption key.");return p instanceof Uint8Array?p:WQ(p)})();n.demuxer.decryptionKeyCache.set(a,d),s=await d}return i.scheme==="cenc"||i.scheme==="cens"?D_(s,i,e,t):V_(s,i,e,t)},D_=async(n,e,t,r)=>{const i=new Uint8Array(16);i.set(t.iv,0);const a=await crypto.subtle.importKey("raw",n,{name:"AES-CTR"},!1,["decrypt"]),s=async S=>{const k=await crypto.subtle.decrypt({name:"AES-CTR",counter:i,length:64},a,S);return new Uint8Array(k)};if(!t.subsamples)return s(r);G(e.defaultCryptByteBlock!==null&&e.defaultSkipByteBlock!==null);const o=N7(t.subsamples,e.defaultCryptByteBlock,e.defaultSkipByteBlock);let u=0;for(const S of o)for(const k of S.perSubsample)u+=k.length;const d=new Uint8Array(u);let m=0;for(const S of o)for(const k of S.perSubsample)d.set(r.subarray(k.offset,k.offset+k.length),m),m+=k.length;const p=await s(d),O=new Uint8Array(r);let b=0;for(const S of o)for(const k of S.perSubsample)O.set(p.subarray(b,b+k.length),k.offset),b+=k.length;return O},V_=(n,e,t,r)=>{const i=new R7;i.init({key:n,iv:t.iv});const a=e.defaultCryptByteBlock,s=e.defaultSkipByteBlock;if(G(a!==null&&s!==null),!t.subsamples){const m=new Uint8Array(r),p=Math.floor(r.length/16);for(let O=0;O<p;O++){const b=O*16;i.in.set(r.subarray(b,b+16)),i.decrypt(),m.set(i.out,b)}return m}if(a===0&&s===0)throw new Error("cbcs with subsamples requires pattern encryption.");const o=new Uint8Array(r),u=N7(t.subsamples,a,s),d=new DataView(t.iv.buffer,t.iv.byteOffset,16);for(const m of u){i.iv[0]=d.getUint32(0,!1),i.iv[1]=d.getUint32(4,!1),i.iv[2]=d.getUint32(8,!1),i.iv[3]=d.getUint32(12,!1);for(const p of m.perSubsample){const O=p.length/16;for(let b=0;b<O;b++){const S=p.offset+b*16;i.in.set(r.subarray(S,S+16)),i.decrypt(),o.set(i.out,S)}}}return o},N7=(n,e,t)=>{const r=[],i=e!==0||t!==0;let a=0;for(const s of n){a+=s.clearLen;const o=[];if(!i)s.protectedLen>0&&o.push({offset:a,length:s.protectedLen}),a+=s.protectedLen;else{let u=s.protectedLen,d=a;for(;u>0&&!(u<16*e);){const m=16*e;o.push({offset:d,length:m}),d+=m,u-=m;const p=Math.min(16*t,u);d+=p,u-=p}a+=s.protectedLen}r.push({perSubsample:o})}return r};/*!
148
- * Copyright (c) 2026-present, Vanilagy and contributors
149
- *
150
- * This Source Code Form is subject to the terms of the Mozilla Public
151
- * License, v. 2.0. If a copy of the MPL was not distributed with this
152
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
153
- */var ke;(function(n){n[n.EBML=440786851]="EBML",n[n.EBMLVersion=17030]="EBMLVersion",n[n.EBMLReadVersion=17143]="EBMLReadVersion",n[n.EBMLMaxIDLength=17138]="EBMLMaxIDLength",n[n.EBMLMaxSizeLength=17139]="EBMLMaxSizeLength",n[n.DocType=17026]="DocType",n[n.DocTypeVersion=17031]="DocTypeVersion",n[n.DocTypeReadVersion=17029]="DocTypeReadVersion",n[n.Void=236]="Void",n[n.Segment=408125543]="Segment",n[n.SeekHead=290298740]="SeekHead",n[n.Seek=19899]="Seek",n[n.SeekID=21419]="SeekID",n[n.SeekPosition=21420]="SeekPosition",n[n.Duration=17545]="Duration",n[n.Info=357149030]="Info",n[n.TimestampScale=2807729]="TimestampScale",n[n.MuxingApp=19840]="MuxingApp",n[n.WritingApp=22337]="WritingApp",n[n.Tracks=374648427]="Tracks",n[n.TrackEntry=174]="TrackEntry",n[n.TrackNumber=215]="TrackNumber",n[n.TrackUID=29637]="TrackUID",n[n.TrackType=131]="TrackType",n[n.FlagEnabled=185]="FlagEnabled",n[n.FlagDefault=136]="FlagDefault",n[n.FlagForced=21930]="FlagForced",n[n.FlagOriginal=21934]="FlagOriginal",n[n.FlagHearingImpaired=21931]="FlagHearingImpaired",n[n.FlagVisualImpaired=21932]="FlagVisualImpaired",n[n.FlagCommentary=21935]="FlagCommentary",n[n.FlagLacing=156]="FlagLacing",n[n.Name=21358]="Name",n[n.Language=2274716]="Language",n[n.LanguageBCP47=2274717]="LanguageBCP47",n[n.CodecID=134]="CodecID",n[n.CodecPrivate=25506]="CodecPrivate",n[n.CodecDelay=22186]="CodecDelay",n[n.SeekPreRoll=22203]="SeekPreRoll",n[n.DefaultDuration=2352003]="DefaultDuration",n[n.Video=224]="Video",n[n.PixelWidth=176]="PixelWidth",n[n.PixelHeight=186]="PixelHeight",n[n.DisplayWidth=21680]="DisplayWidth",n[n.DisplayHeight=21690]="DisplayHeight",n[n.DisplayUnit=21682]="DisplayUnit",n[n.AlphaMode=21440]="AlphaMode",n[n.Audio=225]="Audio",n[n.SamplingFrequency=181]="SamplingFrequency",n[n.Channels=159]="Channels",n[n.BitDepth=25188]="BitDepth",n[n.SimpleBlock=163]="SimpleBlock",n[n.BlockGroup=160]="BlockGroup",n[n.Block=161]="Block",n[n.BlockAdditions=30113]="BlockAdditions",n[n.BlockMore=166]="BlockMore",n[n.BlockAdditional=165]="BlockAdditional",n[n.BlockAddID=238]="BlockAddID",n[n.BlockDuration=155]="BlockDuration",n[n.ReferenceBlock=251]="ReferenceBlock",n[n.Cluster=524531317]="Cluster",n[n.Timestamp=231]="Timestamp",n[n.Cues=475249515]="Cues",n[n.CuePoint=187]="CuePoint",n[n.CueTime=179]="CueTime",n[n.CueTrackPositions=183]="CueTrackPositions",n[n.CueTrack=247]="CueTrack",n[n.CueClusterPosition=241]="CueClusterPosition",n[n.Colour=21936]="Colour",n[n.MatrixCoefficients=21937]="MatrixCoefficients",n[n.TransferCharacteristics=21946]="TransferCharacteristics",n[n.Primaries=21947]="Primaries",n[n.Range=21945]="Range",n[n.Projection=30320]="Projection",n[n.ProjectionType=30321]="ProjectionType",n[n.ProjectionPoseRoll=30325]="ProjectionPoseRoll",n[n.Attachments=423732329]="Attachments",n[n.AttachedFile=24999]="AttachedFile",n[n.FileDescription=18046]="FileDescription",n[n.FileName=18030]="FileName",n[n.FileMediaType=18016]="FileMediaType",n[n.FileData=18012]="FileData",n[n.FileUID=18094]="FileUID",n[n.Chapters=272869232]="Chapters",n[n.Tags=307544935]="Tags",n[n.Tag=29555]="Tag",n[n.Targets=25536]="Targets",n[n.TargetTypeValue=26826]="TargetTypeValue",n[n.TargetType=25546]="TargetType",n[n.TagTrackUID=25541]="TagTrackUID",n[n.TagEditionUID=25545]="TagEditionUID",n[n.TagChapterUID=25540]="TagChapterUID",n[n.TagAttachmentUID=25542]="TagAttachmentUID",n[n.SimpleTag=26568]="SimpleTag",n[n.TagName=17827]="TagName",n[n.TagLanguage=17530]="TagLanguage",n[n.TagString=17543]="TagString",n[n.TagBinary=17541]="TagBinary",n[n.ContentEncodings=28032]="ContentEncodings",n[n.ContentEncoding=25152]="ContentEncoding",n[n.ContentEncodingOrder=20529]="ContentEncodingOrder",n[n.ContentEncodingScope=20530]="ContentEncodingScope",n[n.ContentCompression=20532]="ContentCompression",n[n.ContentCompAlgo=16980]="ContentCompAlgo",n[n.ContentCompSettings=16981]="ContentCompSettings",n[n.ContentEncryption=20533]="ContentEncryption"})(ke||(ke={}));const I_=[ke.EBML,ke.Segment],R0=[ke.SeekHead,ke.Info,ke.Cluster,ke.Tracks,ke.Cues,ke.Attachments,ke.Chapters,ke.Tags],gh=[...I_,...R0],c8=8,Wr=2,Ma=2*c8,j7=n=>{if(n.remainingLength<1)return null;const e=Ie(n);if(n.skip(-1),e===0)return null;let t=1,r=128;for(;(e&r)===0;)t++,r>>=1;return n.remainingLength<t?null:t},Wu=n=>{if(n.remainingLength<1)return null;const e=Ie(n);if(e===0)return null;let t=1,r=128;for(;(e&r)===0;)t++,r>>=1;if(n.remainingLength<t-1)return null;let i=e&r-1;for(let a=1;a<t;a++)i*=256,i+=Ie(n);return i},nt=(n,e)=>{if(e<1||e>8)throw new Error("Bad unsigned int size "+e);let t=0;for(let r=0;r<e;r++)t*=256,t+=Ie(n);return t},L_=(n,e)=>{if(e<1)throw new Error("Bad unsigned int size "+e);let t=0n;for(let r=0;r<e;r++)t<<=8n,t+=BigInt(Ie(n));return t},e6=n=>{const e=j7(n);return e===null||n.remainingLength<e?null:nt(n,e)},Z7=n=>{if(n.remainingLength<1)return null;if(Ie(n)===255)return;n.skip(-1);const t=Wu(n);if(t===null)return null;if(t!==72057594037927940)return t},Ca=n=>{G(n.remainingLength>=Wr);const e=e6(n);if(e===null)return null;const t=Z7(n);return t===null?null:{id:e,size:t}},zo=(n,e)=>{const t=He(n,e);let r=0;for(;r<e&&t[r]!==0;)r+=1;return String.fromCharCode(...t.subarray(0,r))},_u=(n,e)=>{const t=He(n,e);let r=0;for(;r<e&&t[r]!==0;)r+=1;return Mr.decode(t.subarray(0,r))},Cg=(n,e)=>{if(e===0)return 0;if(e!==4&&e!==8)throw new Error("Bad float size "+e);return e===4?oj(n):rT(n)},u8=async(n,e,t,r)=>{const i=new Set(t);let a=e;for(;r===null||a<r;){let s=n.requestSliceRange(a,Wr,Ma);if(s instanceof Promise&&(s=await s),!s)break;const o=Ca(s);if(!o)break;if(i.has(o.id))return{pos:a,found:!0};Ss(o.size),a=s.filePos+o.size}return{pos:r!==null&&r>a?r:a,found:!1}},D7=async(n,e,t,r)=>{const a=new Set(t);let s=e;for(;s<r;){let o=n.requestSliceRange(s,0,Math.min(65536,r-s));if(o instanceof Promise&&(o=await o),!o||o.length<c8)break;for(let u=0;u<o.length-c8;u++){o.filePos=s;const d=e6(o);if(d!==null&&a.has(d))return s;s++}}return null},Ur={avc:"V_MPEG4/ISO/AVC",hevc:"V_MPEGH/ISO/HEVC",vp8:"V_VP8",vp9:"V_VP9",av1:"V_AV1",aac:"A_AAC",mp3:"A_MPEG/L3",opus:"A_OPUS",vorbis:"A_VORBIS",flac:"A_FLAC",ac3:"A_AC3",eac3:"A_EAC3"};function Ss(n){if(n===void 0)throw new Error("Undefined element size is used in a place where it is not supported.")}/*!
154
- * Copyright (c) 2026-present, Vanilagy and contributors
155
- *
156
- * This Source Code Form is subject to the terms of the Mozilla Public
157
- * License, v. 2.0. If a copy of the MPL was not distributed with this
158
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
159
- */const z_=n=>{let t=(n.hasVideo?"video/":n.hasAudio?"audio/":"application/")+(n.isWebM?"webm":"x-matroska");if(n.codecStrings.length>0){const r=[...new Set(n.codecStrings.filter(Boolean))];t+=`; codecs="${r.join(", ")}"`}return t};/*!
160
- * Copyright (c) 2026-present, Vanilagy and contributors
161
- *
162
- * This Source Code Form is subject to the terms of the Mozilla Public
163
- * License, v. 2.0. If a copy of the MPL was not distributed with this
164
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
165
- */var Aa;(function(n){n[n.None=0]="None",n[n.Xiph=1]="Xiph",n[n.FixedSize=2]="FixedSize",n[n.Ebml=3]="Ebml"})(Aa||(Aa={}));var Zh;(function(n){n[n.Block=1]="Block",n[n.Private=2]="Private",n[n.Next=4]="Next"})(Zh||(Zh={}));var l0;(function(n){n[n.Zlib=0]="Zlib",n[n.Bzlib=1]="Bzlib",n[n.lzo1x=2]="lzo1x",n[n.HeaderStripping=3]="HeaderStripping"})(l0||(l0={}));const Eg=[{id:ke.SeekHead,flag:"seekHeadSeen"},{id:ke.Info,flag:"infoSeen"},{id:ke.Tracks,flag:"tracksSeen"},{id:ke.Cues,flag:"cuesSeen"}],V7=10*2**20;class B_ extends Ua{constructor(e){super(e),this.readMetadataPromise=null,this.segments=[],this.currentSegment=null,this.currentTrack=null,this.currentCluster=null,this.currentBlock=null,this.currentBlockAdditional=null,this.currentCueTime=null,this.currentDecodingInstruction=null,this.currentTagTargetIsMovie=!0,this.currentSimpleTagName=null,this.currentAttachedFile=null,this.isWebM=!1,this.reader=e._reader}async getTrackBackings(){return await this.readMetadata(),this.segments.flatMap(e=>e.tracks.map(t=>t.trackBacking))}async getMimeType(){await this.readMetadata();const e=await this.getTrackBackings(),t=await Promise.all(e.map(r=>r.getDecoderConfig().then(i=>(i==null?void 0:i.codec)??null)));return z_({isWebM:this.isWebM,hasVideo:this.segments.some(r=>r.tracks.some(i=>{var a;return((a=i.info)==null?void 0:a.type)==="video"})),hasAudio:this.segments.some(r=>r.tracks.some(i=>{var a;return((a=i.info)==null?void 0:a.type)==="audio"})),codecStrings:t.filter(Boolean)})}async getMetadataTags(){await this.readMetadata();for(const t of this.segments)t.metadataTagsCollected||(this.reader.fileSize!==null&&await this.loadSegmentMetadata(t),t.metadataTagsCollected=!0);let e={};for(const t of this.segments)e={...e,...t.metadataTags};return e}readMetadata(){return this.readMetadataPromise??(this.readMetadataPromise=(async()=>{let e=0;for(;;){let t=this.reader.requestSliceRange(e,Wr,Ma);if(t instanceof Promise&&(t=await t),!t)break;const r=Ca(t);if(!r)break;const i=r.id;let a=r.size;const s=t.filePos;if(i===ke.EBML){Ss(a);let o=this.reader.requestSlice(s,a);if(o instanceof Promise&&(o=await o),!o)break;this.readContiguousElements(o)}else if(i===ke.Segment){if(await this.readSegment(s,a),a===void 0||this.reader.fileSize===null)break}else if(i===ke.Cluster){if(this.reader.fileSize===null)break;a===void 0&&(a=(await u8(this.reader,s,gh,this.reader.fileSize)).pos-s);const o=Rr(this.segments);o&&(o.elementEndPos=s+a)}Ss(a),e=s+a}})())}async readSegment(e,t){this.currentSegment={seekHeadSeen:!1,infoSeen:!1,tracksSeen:!1,cuesSeen:!1,tagsSeen:!1,attachmentsSeen:!1,timestampScale:-1,timestampFactor:-1,duration:-1,seekEntries:[],tracks:[],cuePoints:[],dataStartPos:e,elementEndPos:t===void 0?null:e+t,clusterSeekStartPos:e,lastReadCluster:null,metadataTags:{},metadataTagsCollected:!1},this.segments.push(this.currentSegment);let r=e;for(;this.currentSegment.elementEndPos===null||r<this.currentSegment.elementEndPos;){let o=this.reader.requestSliceRange(r,Wr,Ma);if(o instanceof Promise&&(o=await o),!o)break;const u=r,d=Ca(o);if(!d||!R0.includes(d.id)&&d.id!==ke.Void){const S=await D7(this.reader,u,R0,Math.min(this.currentSegment.elementEndPos??1/0,u+V7));if(S){r=S;continue}else break}const{id:m,size:p}=d,O=o.filePos,b=Eg.findIndex(S=>S.id===m);if(b!==-1){const S=Eg[b].flag;this.currentSegment[S]=!0,Ss(p);let k=this.reader.requestSlice(O,p);k instanceof Promise&&(k=await k),k&&this.readContiguousElements(k)}else if(m===ke.Tags||m===ke.Attachments){m===ke.Tags?this.currentSegment.tagsSeen=!0:this.currentSegment.attachmentsSeen=!0,Ss(p);let S=this.reader.requestSlice(O,p);S instanceof Promise&&(S=await S),S&&this.readContiguousElements(S)}else if(m===ke.Cluster){this.currentSegment.clusterSeekStartPos=u;break}if(p===void 0)break;r=O+p}if(this.currentSegment.seekEntries.sort((o,u)=>o.segmentPosition-u.segmentPosition),this.reader.fileSize!==null)for(const o of this.currentSegment.seekEntries){const u=Eg.find(S=>S.id===o.id);if(!u||this.currentSegment[u.flag])continue;let d=this.reader.requestSliceRange(e+o.segmentPosition,Wr,Ma);if(d instanceof Promise&&(d=await d),!d)continue;const m=Ca(d);if(!m)continue;const{id:p,size:O}=m;if(p!==u.id)continue;Ss(O),this.currentSegment[u.flag]=!0;let b=this.reader.requestSlice(d.filePos,O);b instanceof Promise&&(b=await b),b&&this.readContiguousElements(b)}this.currentSegment.timestampScale===-1&&(this.currentSegment.timestampScale=1e6,this.currentSegment.timestampFactor=1e9/1e6);for(const o of this.currentSegment.tracks)o.defaultDurationNs!==null&&(o.defaultDuration=this.currentSegment.timestampFactor*o.defaultDurationNs/1e9);const i=new Map(this.currentSegment.tracks.map(o=>[o.id,o]));for(const o of this.currentSegment.cuePoints){const u=i.get(o.trackId);u&&u.cuePoints.push(o)}for(const o of this.currentSegment.tracks){o.cuePoints.sort((u,d)=>u.time-d.time);for(let u=0;u<o.cuePoints.length-1;u++){const d=o.cuePoints[u],m=o.cuePoints[u+1];d.time===m.time&&(o.cuePoints.splice(u+1,1),u--)}}let a=null,s=-1/0;for(const o of this.currentSegment.tracks)o.cuePoints.length>s&&(s=o.cuePoints.length,a=o);for(const o of this.currentSegment.tracks)o.cuePoints.length===0&&(o.cuePoints=a.cuePoints);this.currentSegment=null}async readCluster(e,t){var p;if(((p=t.lastReadCluster)==null?void 0:p.elementStartPos)===e)return t.lastReadCluster;let r=this.reader.requestSliceRange(e,Wr,Ma);r instanceof Promise&&(r=await r),G(r);const i=e,a=Ca(r);G(a);const s=a.id;G(s===ke.Cluster);let o=a.size;const u=r.filePos;o===void 0&&(o=(await u8(this.reader,u,gh,t.elementEndPos)).pos-u);let d=this.reader.requestSlice(u,o);d instanceof Promise&&(d=await d);const m={segment:t,elementStartPos:i,elementEndPos:u+o,dataStartPos:u,timestamp:-1,trackData:new Map};if(this.currentCluster=m,d){const O=this.readContiguousElements(d,gh);m.elementEndPos=O}for(const[,O]of m.trackData){const b=O.track;G(O.blocks.length>0);let S=!1;for(let A=0;A<O.blocks.length;A++){const E=O.blocks[A];E.timestamp+=m.timestamp,S||(S=E.lacing!==Aa.None)}O.presentationTimestamps=O.blocks.map((A,E)=>({timestamp:A.timestamp,blockIndex:E})).sort((A,E)=>A.timestamp-E.timestamp);for(let A=0;A<O.presentationTimestamps.length;A++){const E=O.presentationTimestamps[A],C=O.blocks[E.blockIndex];if(O.firstKeyFrameTimestamp===null&&C.isKeyFrame&&(O.firstKeyFrameTimestamp=C.timestamp),A<O.presentationTimestamps.length-1){const P=O.presentationTimestamps[A+1];C.duration=P.timestamp-C.timestamp}else C.duration===0&&b.defaultDuration!=null&&C.lacing===Aa.None&&(C.duration=b.defaultDuration)}S&&(this.expandLacedBlocks(O.blocks,b),O.presentationTimestamps=O.blocks.map((A,E)=>({timestamp:A.timestamp,blockIndex:E})).sort((A,E)=>A.timestamp-E.timestamp));const k=O.blocks[O.presentationTimestamps[0].blockIndex],T=O.blocks[Rr(O.presentationTimestamps).blockIndex];O.startTimestamp=k.timestamp,O.endTimestamp=T.timestamp+T.duration;const w=Ot(b.clusterPositionCache,O.startTimestamp,A=>A.startTimestamp);(w===-1||b.clusterPositionCache[w].elementStartPos!==i)&&b.clusterPositionCache.splice(w+1,0,{elementStartPos:m.elementStartPos,startTimestamp:O.startTimestamp})}return t.lastReadCluster=m,m}getTrackDataInCluster(e,t){let r=e.trackData.get(t);if(!r){const i=e.segment.tracks.find(a=>a.id===t);if(!i)return null;r={track:i,startTimestamp:0,endTimestamp:0,firstKeyFrameTimestamp:null,blocks:[],presentationTimestamps:[]},e.trackData.set(t,r)}return r}expandLacedBlocks(e,t){for(let r=0;r<e.length;r++){const i=e[r];if(i.lacing===Aa.None)continue;i.decoded||(i.data=this.decodeBlockData(t,i.data),i.decoded=!0);const a=Oi.tempFromBytes(i.data),s=[],o=Ie(a)+1;switch(i.lacing){case Aa.Xiph:{let d=0;for(let m=0;m<o-1;m++){let p=0;for(;a.bufferPos<a.length;){const O=Ie(a);if(p+=O,O<255){s.push(p),d+=p;break}}}s.push(a.length-(a.bufferPos+d))}break;case Aa.FixedSize:{const d=a.length-1,m=Math.floor(d/o);for(let p=0;p<o;p++)s.push(m)}break;case Aa.Ebml:{const d=Wu(a);G(d!==null);let m=d;s.push(m);let p=m;for(let O=1;O<o-1;O++){const b=a.bufferPos,S=Wu(a);G(S!==null);const k=S,w=(1<<(a.bufferPos-b)*7-1)-1,A=k-w;m+=A,s.push(m),p+=m}s.push(a.length-(a.bufferPos+p))}break;default:G(!1)}G(s.length===o),e.splice(r,1);const u=i.duration||o*(t.defaultDuration??0);for(let d=0;d<o;d++){const m=s[d],p=He(a,m),O=i.timestamp+u*d/o,b=u/o;e.splice(r+d,0,{timestamp:O,duration:b,isKeyFrame:i.isKeyFrame,data:p,lacing:Aa.None,decoded:!0,mainAdditional:i.mainAdditional})}r+=o,r--}}async loadSegmentMetadata(e){for(const t of e.seekEntries){if(!(t.id===ke.Tags&&!e.tagsSeen)){if(!(t.id===ke.Attachments&&!e.attachmentsSeen))continue}let r=this.reader.requestSliceRange(e.dataStartPos+t.segmentPosition,Wr,Ma);if(r instanceof Promise&&(r=await r),!r)continue;const i=Ca(r);if(!i||i.id!==t.id)continue;const{size:a}=i;Ss(a),G(!this.currentSegment),this.currentSegment=e;let s=this.reader.requestSlice(r.filePos,a);s instanceof Promise&&(s=await s),s&&this.readContiguousElements(s),this.currentSegment=null,t.id===ke.Tags?e.tagsSeen=!0:t.id===ke.Attachments&&(e.attachmentsSeen=!0)}}readContiguousElements(e,t){for(;e.remainingLength>=Wr;){const r=e.filePos;if(!this.traverseElement(e,t))return r}return e.filePos}traverseElement(e,t){var o,u,d,m,p,O,b,S,k,T,w,A,E,C,P,$,M,R,N,Z,D,I,U,K,q,L,W,ee,X,B,_,j,H,F,Y,ae,ie,Oe,de,me,Te,Ce,Ne,Xe,V,fe;const r=Ca(e);if(!r||t&&t.includes(r.id))return!1;const{id:i,size:a}=r,s=e.filePos;switch(Ss(a),i){case ke.DocType:this.isWebM=zo(e,a)==="webm";break;case ke.Seek:{if(!this.currentSegment)break;const te={id:-1,segmentPosition:-1};this.currentSegment.seekEntries.push(te),this.readContiguousElements(e.slice(s,a)),(te.id===-1||te.segmentPosition===-1)&&this.currentSegment.seekEntries.pop()}break;case ke.SeekID:{const te=(o=this.currentSegment)==null?void 0:o.seekEntries[this.currentSegment.seekEntries.length-1];if(!te)break;te.id=nt(e,a)}break;case ke.SeekPosition:{const te=(u=this.currentSegment)==null?void 0:u.seekEntries[this.currentSegment.seekEntries.length-1];if(!te)break;te.segmentPosition=nt(e,a)}break;case ke.TimestampScale:{if(!this.currentSegment)break;this.currentSegment.timestampScale=nt(e,a),this.currentSegment.timestampFactor=1e9/this.currentSegment.timestampScale}break;case ke.Duration:{if(!this.currentSegment)break;this.currentSegment.duration=Cg(e,a)}break;case ke.TrackEntry:{if(!this.currentSegment||(this.currentTrack={id:-1,segment:this.currentSegment,demuxer:this,clusterPositionCache:[],cuePoints:[],disposition:{...Xa,primary:!1},trackBacking:null,codecId:null,codecPrivate:null,defaultDuration:null,defaultDurationNs:null,name:null,languageCode:"eng",hasLanguageBcp47:!1,decodingInstructions:[],info:null},this.readContiguousElements(e.slice(s,a)),!this.currentTrack))break;if(this.currentTrack.decodingInstructions.some(te=>{var le;return((le=te.data)==null?void 0:le.type)!=="decompress"||te.scope!==Zh.Block||te.data.algorithm!==l0.HeaderStripping})&&(console.warn(`Track #${this.currentTrack.id} has an unsupported content encoding; dropping.`),this.currentTrack=null),this.currentTrack&&this.currentTrack.id!==-1&&this.currentTrack.codecId&&this.currentTrack.info){const te=this.currentTrack.codecId.indexOf("/"),le=te===-1?this.currentTrack.codecId:this.currentTrack.codecId.slice(0,te);if(this.currentTrack.info.type==="video"&&this.currentTrack.info.width!==-1&&this.currentTrack.info.height!==-1){if(this.currentTrack.info.squarePixelWidth=this.currentTrack.info.width,this.currentTrack.info.squarePixelHeight=this.currentTrack.info.height,this.currentTrack.info.displayWidth!==null&&this.currentTrack.info.displayHeight!==null){const ge=this.currentTrack.info.displayWidth*this.currentTrack.info.height,ye=this.currentTrack.info.displayHeight*this.currentTrack.info.width;ge>0&&ye>0&&(ge>ye?this.currentTrack.info.squarePixelWidth=Math.round(this.currentTrack.info.width*ge/ye):this.currentTrack.info.squarePixelHeight=Math.round(this.currentTrack.info.height*ye/ge))}this.currentTrack.codecId===Ur.avc?(this.currentTrack.info.codec="avc",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):this.currentTrack.codecId===Ur.hevc?(this.currentTrack.info.codec="hevc",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):le===Ur.vp8?this.currentTrack.info.codec="vp8":le===Ur.vp9?this.currentTrack.info.codec="vp9":le===Ur.av1&&(this.currentTrack.info.codec="av1");const ce=this.currentTrack;this.currentTrack.trackBacking=new H_(ce),this.currentSegment.tracks.push(this.currentTrack)}else if(this.currentTrack.info.type==="audio"){le===Ur.aac?(this.currentTrack.info.codec="aac",this.currentTrack.info.aacCodecInfo={isMpeg2:this.currentTrack.codecId.includes("MPEG2"),objectType:null},this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):this.currentTrack.codecId===Ur.mp3?this.currentTrack.info.codec="mp3":le===Ur.opus?(this.currentTrack.info.codec="opus",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate,this.currentTrack.info.sampleRate=P1):le===Ur.vorbis?(this.currentTrack.info.codec="vorbis",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):le===Ur.flac?(this.currentTrack.info.codec="flac",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):le===Ur.ac3?(this.currentTrack.info.codec="ac3",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):le===Ur.eac3?(this.currentTrack.info.codec="eac3",this.currentTrack.info.codecDescription=this.currentTrack.codecPrivate):this.currentTrack.codecId==="A_PCM/INT/LIT"?this.currentTrack.info.bitDepth===8?this.currentTrack.info.codec="pcm-u8":this.currentTrack.info.bitDepth===16?this.currentTrack.info.codec="pcm-s16":this.currentTrack.info.bitDepth===24?this.currentTrack.info.codec="pcm-s24":this.currentTrack.info.bitDepth===32&&(this.currentTrack.info.codec="pcm-s32"):this.currentTrack.codecId==="A_PCM/INT/BIG"?this.currentTrack.info.bitDepth===8?this.currentTrack.info.codec="pcm-u8":this.currentTrack.info.bitDepth===16?this.currentTrack.info.codec="pcm-s16be":this.currentTrack.info.bitDepth===24?this.currentTrack.info.codec="pcm-s24be":this.currentTrack.info.bitDepth===32&&(this.currentTrack.info.codec="pcm-s32be"):this.currentTrack.codecId==="A_PCM/FLOAT/IEEE"&&(this.currentTrack.info.bitDepth===32?this.currentTrack.info.codec="pcm-f32":this.currentTrack.info.bitDepth===64&&(this.currentTrack.info.codec="pcm-f64"));const ce=this.currentTrack;this.currentTrack.trackBacking=new F_(ce),this.currentSegment.tracks.push(this.currentTrack)}}this.currentTrack=null}break;case ke.TrackNumber:{if(!this.currentTrack)break;this.currentTrack.id=nt(e,a)}break;case ke.TrackType:{if(!this.currentTrack)break;const te=nt(e,a);te===1?this.currentTrack.info={type:"video",width:-1,height:-1,displayWidth:null,displayHeight:null,displayUnit:null,squarePixelWidth:-1,squarePixelHeight:-1,rotation:0,codec:null,codecDescription:null,colorSpace:null,alphaMode:!1}:te===2&&(this.currentTrack.info={type:"audio",numberOfChannels:1,sampleRate:8e3,bitDepth:-1,codec:null,codecDescription:null,aacCodecInfo:null})}break;case ke.FlagEnabled:{if(!this.currentTrack)break;nt(e,a)||(this.currentTrack=null)}break;case ke.FlagDefault:{if(!this.currentTrack)break;this.currentTrack.disposition.default=!!nt(e,a)}break;case ke.FlagForced:{if(!this.currentTrack)break;this.currentTrack.disposition.forced=!!nt(e,a)}break;case ke.FlagOriginal:{if(!this.currentTrack)break;this.currentTrack.disposition.original=!!nt(e,a)}break;case ke.FlagHearingImpaired:{if(!this.currentTrack)break;this.currentTrack.disposition.hearingImpaired=!!nt(e,a)}break;case ke.FlagVisualImpaired:{if(!this.currentTrack)break;this.currentTrack.disposition.visuallyImpaired=!!nt(e,a)}break;case ke.FlagCommentary:{if(!this.currentTrack)break;this.currentTrack.disposition.commentary=!!nt(e,a)}break;case ke.CodecID:{if(!this.currentTrack)break;this.currentTrack.codecId=zo(e,a)}break;case ke.CodecPrivate:{if(!this.currentTrack)break;this.currentTrack.codecPrivate=He(e,a)}break;case ke.DefaultDuration:{if(!this.currentTrack)break;this.currentTrack.defaultDurationNs=nt(e,a)}break;case ke.Name:{if(!this.currentTrack)break;this.currentTrack.name=_u(e,a)}break;case ke.Language:{if(!this.currentTrack||this.currentTrack.hasLanguageBcp47)break;this.currentTrack.languageCode=zo(e,a),i7(this.currentTrack.languageCode)||(this.currentTrack.languageCode=Bn)}break;case ke.LanguageBCP47:{if(!this.currentTrack)break;const le=zo(e,a).split("-")[0];le?this.currentTrack.languageCode=le:this.currentTrack.languageCode=Bn,this.currentTrack.hasLanguageBcp47=!0}break;case ke.Video:{if(((m=(d=this.currentTrack)==null?void 0:d.info)==null?void 0:m.type)!=="video")break;this.readContiguousElements(e.slice(s,a))}break;case ke.PixelWidth:{if(((O=(p=this.currentTrack)==null?void 0:p.info)==null?void 0:O.type)!=="video")break;this.currentTrack.info.width=nt(e,a)}break;case ke.PixelHeight:{if(((S=(b=this.currentTrack)==null?void 0:b.info)==null?void 0:S.type)!=="video")break;this.currentTrack.info.height=nt(e,a)}break;case ke.DisplayWidth:{if(((T=(k=this.currentTrack)==null?void 0:k.info)==null?void 0:T.type)!=="video")break;this.currentTrack.info.displayWidth=nt(e,a)}break;case ke.DisplayHeight:{if(((A=(w=this.currentTrack)==null?void 0:w.info)==null?void 0:A.type)!=="video")break;this.currentTrack.info.displayHeight=nt(e,a)}break;case ke.DisplayUnit:{if(((C=(E=this.currentTrack)==null?void 0:E.info)==null?void 0:C.type)!=="video")break;this.currentTrack.info.displayUnit=nt(e,a)}break;case ke.AlphaMode:{if((($=(P=this.currentTrack)==null?void 0:P.info)==null?void 0:$.type)!=="video")break;this.currentTrack.info.alphaMode=nt(e,a)===1}break;case ke.Colour:{if(((R=(M=this.currentTrack)==null?void 0:M.info)==null?void 0:R.type)!=="video")break;this.currentTrack.info.colorSpace={},this.readContiguousElements(e.slice(s,a))}break;case ke.MatrixCoefficients:{if(((Z=(N=this.currentTrack)==null?void 0:N.info)==null?void 0:Z.type)!=="video"||!this.currentTrack.info.colorSpace)break;const te=nt(e,a),le=_h[te]??null;this.currentTrack.info.colorSpace.matrix=le}break;case ke.Range:{if(((I=(D=this.currentTrack)==null?void 0:D.info)==null?void 0:I.type)!=="video"||!this.currentTrack.info.colorSpace)break;this.currentTrack.info.colorSpace.fullRange=nt(e,a)===2}break;case ke.TransferCharacteristics:{if(((K=(U=this.currentTrack)==null?void 0:U.info)==null?void 0:K.type)!=="video"||!this.currentTrack.info.colorSpace)break;const te=nt(e,a),le=Qh[te]??null;this.currentTrack.info.colorSpace.transfer=le}break;case ke.Primaries:{if(((L=(q=this.currentTrack)==null?void 0:q.info)==null?void 0:L.type)!=="video"||!this.currentTrack.info.colorSpace)break;const te=nt(e,a),le=Rh[te]??null;this.currentTrack.info.colorSpace.primaries=le}break;case ke.Projection:{if(((ee=(W=this.currentTrack)==null?void 0:W.info)==null?void 0:ee.type)!=="video")break;this.readContiguousElements(e.slice(s,a))}break;case ke.ProjectionPoseRoll:{if(((B=(X=this.currentTrack)==null?void 0:X.info)==null?void 0:B.type)!=="video")break;const le=-Cg(e,a);try{this.currentTrack.info.rotation=Yw(le)}catch{}}break;case ke.Audio:{if(((j=(_=this.currentTrack)==null?void 0:_.info)==null?void 0:j.type)!=="audio")break;this.readContiguousElements(e.slice(s,a))}break;case ke.SamplingFrequency:{if(((F=(H=this.currentTrack)==null?void 0:H.info)==null?void 0:F.type)!=="audio")break;this.currentTrack.info.sampleRate=Cg(e,a)}break;case ke.Channels:{if(((ae=(Y=this.currentTrack)==null?void 0:Y.info)==null?void 0:ae.type)!=="audio")break;this.currentTrack.info.numberOfChannels=nt(e,a)}break;case ke.BitDepth:{if(((Oe=(ie=this.currentTrack)==null?void 0:ie.info)==null?void 0:Oe.type)!=="audio")break;this.currentTrack.info.bitDepth=nt(e,a)}break;case ke.CuePoint:{if(!this.currentSegment)break;this.readContiguousElements(e.slice(s,a)),this.currentCueTime=null}break;case ke.CueTime:this.currentCueTime=nt(e,a);break;case ke.CueTrackPositions:{if(this.currentCueTime===null)break;G(this.currentSegment);const te={time:this.currentCueTime,trackId:-1,clusterPosition:-1};this.currentSegment.cuePoints.push(te),this.readContiguousElements(e.slice(s,a)),(te.trackId===-1||te.clusterPosition===-1)&&this.currentSegment.cuePoints.pop()}break;case ke.CueTrack:{const te=(de=this.currentSegment)==null?void 0:de.cuePoints[this.currentSegment.cuePoints.length-1];if(!te)break;te.trackId=nt(e,a)}break;case ke.CueClusterPosition:{const te=(me=this.currentSegment)==null?void 0:me.cuePoints[this.currentSegment.cuePoints.length-1];if(!te)break;G(this.currentSegment),te.clusterPosition=this.currentSegment.dataStartPos+nt(e,a)}break;case ke.Timestamp:{if(!this.currentCluster)break;this.currentCluster.timestamp=nt(e,a)}break;case ke.SimpleBlock:{if(!this.currentCluster)break;const te=Wu(e);if(te===null)break;const le=this.getTrackDataInCluster(this.currentCluster,te);if(!le)break;const ce=p8(e),ge=Ie(e),ye=ge>>1&3;let be=!!(ge&128);((Te=le.track.info)==null?void 0:Te.type)==="audio"&&le.track.info.codec&&(be=!0);const Me=He(e,a-(e.filePos-s)),Pe=le.track.decodingInstructions.length>0;le.blocks.push({timestamp:ce,duration:0,isKeyFrame:be,data:Me,lacing:ye,decoded:!Pe,mainAdditional:null})}break;case ke.BlockGroup:{if(!this.currentCluster)break;this.readContiguousElements(e.slice(s,a)),this.currentBlock=null}break;case ke.Block:{if(!this.currentCluster)break;const te=Wu(e);if(te===null)break;const le=this.getTrackDataInCluster(this.currentCluster,te);if(!le)break;const ce=p8(e),ye=Ie(e)>>1&3,be=He(e,a-(e.filePos-s)),Me=le.track.decodingInstructions.length>0;this.currentBlock={timestamp:ce,duration:0,isKeyFrame:!0,data:be,lacing:ye,decoded:!Me,mainAdditional:null},le.blocks.push(this.currentBlock)}break;case ke.BlockAdditions:this.readContiguousElements(e.slice(s,a));break;case ke.BlockMore:{if(!this.currentBlock)break;this.currentBlockAdditional={addId:1,data:null},this.readContiguousElements(e.slice(s,a)),this.currentBlockAdditional.data&&this.currentBlockAdditional.addId===1&&(this.currentBlock.mainAdditional=this.currentBlockAdditional.data),this.currentBlockAdditional=null}break;case ke.BlockAdditional:{if(!this.currentBlockAdditional)break;this.currentBlockAdditional.data=He(e,a)}break;case ke.BlockAddID:{if(!this.currentBlockAdditional)break;this.currentBlockAdditional.addId=nt(e,a)}break;case ke.BlockDuration:{if(!this.currentBlock)break;this.currentBlock.duration=nt(e,a)}break;case ke.ReferenceBlock:{if(!this.currentBlock)break;this.currentBlock.isKeyFrame=!1}break;case ke.Tag:this.currentTagTargetIsMovie=!0,this.readContiguousElements(e.slice(s,a));break;case ke.Targets:this.readContiguousElements(e.slice(s,a));break;case ke.TargetTypeValue:nt(e,a)!==50&&(this.currentTagTargetIsMovie=!1);break;case ke.TagTrackUID:case ke.TagEditionUID:case ke.TagChapterUID:case ke.TagAttachmentUID:this.currentTagTargetIsMovie=!1;break;case ke.SimpleTag:{if(!this.currentTagTargetIsMovie)break;this.currentSimpleTagName=null,this.readContiguousElements(e.slice(s,a))}break;case ke.TagName:this.currentSimpleTagName=_u(e,a);break;case ke.TagString:{if(!this.currentSimpleTagName)break;const te=_u(e,a);this.processTagValue(this.currentSimpleTagName,te)}break;case ke.TagBinary:{if(!this.currentSimpleTagName)break;const te=He(e,a);this.processTagValue(this.currentSimpleTagName,te)}break;case ke.AttachedFile:{if(!this.currentSegment)break;this.currentAttachedFile={fileUid:null,fileName:null,fileMediaType:null,fileData:null,fileDescription:null},this.readContiguousElements(e.slice(s,a));const te=this.currentSegment.metadataTags;if(this.currentAttachedFile.fileUid&&this.currentAttachedFile.fileData&&(te.raw??(te.raw={}),te.raw[this.currentAttachedFile.fileUid.toString()]=new s_(this.currentAttachedFile.fileData,this.currentAttachedFile.fileMediaType??void 0,this.currentAttachedFile.fileName??void 0,this.currentAttachedFile.fileDescription??void 0)),(Ce=this.currentAttachedFile.fileMediaType)!=null&&Ce.startsWith("image/")&&this.currentAttachedFile.fileData){const le=this.currentAttachedFile.fileName;let ce="unknown";if(le){const ge=le.toLowerCase();ge.startsWith("cover.")?ce="coverFront":ge.startsWith("back.")&&(ce="coverBack")}te.images??(te.images=[]),te.images.push({data:this.currentAttachedFile.fileData,mimeType:this.currentAttachedFile.fileMediaType,kind:ce,name:this.currentAttachedFile.fileName??void 0,description:this.currentAttachedFile.fileDescription??void 0})}this.currentAttachedFile=null}break;case ke.FileUID:{if(!this.currentAttachedFile)break;this.currentAttachedFile.fileUid=L_(e,a)}break;case ke.FileName:{if(!this.currentAttachedFile)break;this.currentAttachedFile.fileName=_u(e,a)}break;case ke.FileMediaType:{if(!this.currentAttachedFile)break;this.currentAttachedFile.fileMediaType=zo(e,a)}break;case ke.FileData:{if(!this.currentAttachedFile)break;this.currentAttachedFile.fileData=He(e,a)}break;case ke.FileDescription:{if(!this.currentAttachedFile)break;this.currentAttachedFile.fileDescription=_u(e,a)}break;case ke.ContentEncodings:{if(!this.currentTrack)break;this.readContiguousElements(e.slice(s,a)),this.currentTrack.decodingInstructions.sort((te,le)=>le.order-te.order)}break;case ke.ContentEncoding:this.currentDecodingInstruction={order:0,scope:Zh.Block,data:null},this.readContiguousElements(e.slice(s,a)),this.currentDecodingInstruction.data&&this.currentTrack.decodingInstructions.push(this.currentDecodingInstruction),this.currentDecodingInstruction=null;break;case ke.ContentEncodingOrder:{if(!this.currentDecodingInstruction)break;this.currentDecodingInstruction.order=nt(e,a)}break;case ke.ContentEncodingScope:{if(!this.currentDecodingInstruction)break;this.currentDecodingInstruction.scope=nt(e,a)}break;case ke.ContentCompression:{if(!this.currentDecodingInstruction)break;this.currentDecodingInstruction.data={type:"decompress",algorithm:l0.Zlib,settings:null},this.readContiguousElements(e.slice(s,a))}break;case ke.ContentCompAlgo:{if(((Xe=(Ne=this.currentDecodingInstruction)==null?void 0:Ne.data)==null?void 0:Xe.type)!=="decompress")break;this.currentDecodingInstruction.data.algorithm=nt(e,a)}break;case ke.ContentCompSettings:{if(((fe=(V=this.currentDecodingInstruction)==null?void 0:V.data)==null?void 0:fe.type)!=="decompress")break;this.currentDecodingInstruction.data.settings=He(e,a)}break;case ke.ContentEncryption:{if(!this.currentDecodingInstruction)break;this.currentDecodingInstruction.data={type:"decrypt"}}break}return e.filePos=s+a,!0}decodeBlockData(e,t){G(e.decodingInstructions.length>0);let r=t;for(const i of e.decodingInstructions)switch(G(i.data),i.data.type){case"decompress":switch(i.data.algorithm){case l0.HeaderStripping:if(i.data.settings&&i.data.settings.length>0){const a=i.data.settings,s=new Uint8Array(a.length+r.length);s.set(a,0),s.set(r,a.length),r=s}break}break}return r}processTagValue(e,t){var i,a;if(!((i=this.currentSegment)!=null&&i.metadataTags))return;const r=this.currentSegment.metadataTags;if(r.raw??(r.raw={}),(a=r.raw)[e]??(a[e]=t),typeof t=="string")switch(e.toLowerCase()){case"title":r.title??(r.title=t);break;case"description":r.description??(r.description=t);break;case"artist":r.artist??(r.artist=t);break;case"album":r.album??(r.album=t);break;case"album_artist":r.albumArtist??(r.albumArtist=t);break;case"genre":r.genre??(r.genre=t);break;case"comment":r.comment??(r.comment=t);break;case"lyrics":r.lyrics??(r.lyrics=t);break;case"date":{const s=new Date(t);Number.isNaN(s.getTime())||(r.date??(r.date=s))}break;case"track_number":case"part_number":{const s=t.split("/"),o=Number.parseInt(s[0],10),u=s[1]&&Number.parseInt(s[1],10);Number.isInteger(o)&&o>0&&(r.trackNumber??(r.trackNumber=o)),u&&Number.isInteger(u)&&u>0&&(r.tracksTotal??(r.tracksTotal=u))}break;case"disc_number":case"disc":{const s=t.split("/"),o=Number.parseInt(s[0],10),u=s[1]&&Number.parseInt(s[1],10);Number.isInteger(o)&&o>0&&(r.discNumber??(r.discNumber=o)),u&&Number.isInteger(u)&&u>0&&(r.discsTotal??(r.discsTotal=u))}break}}}class I7{constructor(e){this.internalTrack=e,this.packetToClusterLocation=new WeakMap}getId(){return this.internalTrack.id}getNumber(){const e=this.internalTrack.demuxer,t=this.internalTrack.trackBacking.getType();let r=0;for(const i of e.segments)for(const a of i.tracks)if(a.trackBacking.getType()===t&&r++,a===this.internalTrack)break;return r}getCodec(){throw new Error("Not implemented on base class.")}getInternalCodecId(){return this.internalTrack.codecId}getName(){return this.internalTrack.name}getLanguageCode(){return this.internalTrack.languageCode}getTimeResolution(){return this.internalTrack.segment.timestampFactor}isRelativeToUnixEpoch(){return!1}getDisposition(){return this.internalTrack.disposition}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){const e=this.internalTrack.segment;if(e.duration<=0)return null;let t=e.duration/e.timestampFactor;const r=await this.getFirstPacket({metadataOnly:!0});return t+=(r==null?void 0:r.timestamp)??0,t}async getLiveRefreshInterval(){return null}async getFirstPacket(e){return this.performClusterLookup(null,t=>t.trackData.get(this.internalTrack.id)?{blockIndex:0,correctBlockFound:!0}:{blockIndex:-1,correctBlockFound:!1},-1/0,1/0,e)}intoTimescale(e){return M0(e*this.internalTrack.segment.timestampFactor)}async getPacket(e,t){const r=this.intoTimescale(e);return this.performClusterLookup(null,i=>{const a=i.trackData.get(this.internalTrack.id);if(!a)return{blockIndex:-1,correctBlockFound:!1};const s=Ot(a.presentationTimestamps,r,d=>d.timestamp),o=s!==-1?a.presentationTimestamps[s].blockIndex:-1,u=s!==-1&&r<a.endTimestamp;return{blockIndex:o,correctBlockFound:u}},r,r,t)}async getNextPacket(e,t){const r=this.packetToClusterLocation.get(e);if(r===void 0)throw new Error("Packet was not created from this track.");return this.performClusterLookup(r.cluster,i=>{if(i===r.cluster){const a=i.trackData.get(this.internalTrack.id);if(r.blockIndex+1<a.blocks.length)return{blockIndex:r.blockIndex+1,correctBlockFound:!0}}else if(i.trackData.get(this.internalTrack.id))return{blockIndex:0,correctBlockFound:!0};return{blockIndex:-1,correctBlockFound:!1}},-1/0,1/0,t)}async getKeyPacket(e,t){const r=this.intoTimescale(e);return this.performClusterLookup(null,i=>{const a=i.trackData.get(this.internalTrack.id);if(!a)return{blockIndex:-1,correctBlockFound:!1};const s=HO(a.presentationTimestamps,d=>a.blocks[d.blockIndex].isKeyFrame&&d.timestamp<=r),o=s!==-1?a.presentationTimestamps[s].blockIndex:-1,u=s!==-1&&r<a.endTimestamp;return{blockIndex:o,correctBlockFound:u}},r,r,t)}async getNextKeyPacket(e,t){const r=this.packetToClusterLocation.get(e);if(r===void 0)throw new Error("Packet was not created from this track.");return this.performClusterLookup(r.cluster,i=>{if(i===r.cluster){const s=i.trackData.get(this.internalTrack.id).blocks.findIndex((o,u)=>o.isKeyFrame&&u>r.blockIndex);if(s!==-1)return{blockIndex:s,correctBlockFound:!0}}else{const a=i.trackData.get(this.internalTrack.id);if(a&&a.firstKeyFrameTimestamp!==null){const s=a.blocks.findIndex(o=>o.isKeyFrame);return G(s!==-1),{blockIndex:s,correctBlockFound:!0}}}return{blockIndex:-1,correctBlockFound:!1}},-1/0,1/0,t)}async fetchPacketInCluster(e,t,r){var p;if(t===-1)return null;const a=e.trackData.get(this.internalTrack.id).blocks[t];G(a),a.decoded||(a.data=this.internalTrack.demuxer.decodeBlockData(this.internalTrack,a.data),a.decoded=!0);const s=r.metadataOnly?Qr:a.data,o=a.timestamp/this.internalTrack.segment.timestampFactor,u=a.duration/this.internalTrack.segment.timestampFactor,d={};a.mainAdditional&&((p=this.internalTrack.info)==null?void 0:p.type)==="video"&&this.internalTrack.info.alphaMode&&(d.alpha=r.metadataOnly?Qr:a.mainAdditional,d.alphaByteLength=a.mainAdditional.byteLength);const m=new bn(s,a.isKeyFrame?"key":"delta",o,u,e.dataStartPos+t,a.data.byteLength,d);return this.packetToClusterLocation.set(m,{cluster:e,blockIndex:t}),m}async performClusterLookup(e,t,r,i,a){const{demuxer:s,segment:o}=this.internalTrack;let u=null,d=null,m=-1;if(e){const{blockIndex:w,correctBlockFound:A}=t(e);if(A)return this.fetchPacketInCluster(e,w,a);w!==-1&&(d=e,m=w)}const p=Ot(this.internalTrack.cuePoints,r,w=>w.time),O=p!==-1?this.internalTrack.cuePoints[p]:null,b=Ot(this.internalTrack.clusterPositionCache,r,w=>w.startTimestamp),S=b!==-1?this.internalTrack.clusterPositionCache[b]:null,k=Math.max((O==null?void 0:O.clusterPosition)??0,(S==null?void 0:S.elementStartPos)??0)||null;let T;for(e?k===null||e.elementStartPos>=k?(T=e.elementEndPos,u=e):T=k:T=k??o.clusterSeekStartPos;o.elementEndPos===null||T<=o.elementEndPos-Wr;){if(u){const R=u.trackData.get(this.internalTrack.id);if(R&&R.startTimestamp>i)break}let w=s.reader.requestSliceRange(T,Wr,Ma);if(w instanceof Promise&&(w=await w),!w)break;const A=T,E=Ca(w);if(!E||!R0.includes(E.id)&&E.id!==ke.Void){const R=await D7(s.reader,A,R0,Math.min(o.elementEndPos??1/0,A+V7));if(R){T=R;continue}else break}const C=E.id;let P=E.size;const $=w.filePos;if(C===ke.Cluster){u=await s.readCluster(A,o),P=u.elementEndPos-$;const{blockIndex:R,correctBlockFound:N}=t(u);if(N)return this.fetchPacketInCluster(u,R,a);R!==-1&&(d=u,m=R)}P===void 0&&(G(C!==ke.Cluster),P=(await u8(s.reader,$,gh,o.elementEndPos)).pos-$);const M=$+P;if(o.elementEndPos===null){let R=s.reader.requestSliceRange(M,Wr,Ma);if(R instanceof Promise&&(R=await R),!R)break;if(e6(R)===ke.Segment){o.elementEndPos=M;break}}T=M}if(O&&(!d||d.elementStartPos<O.clusterPosition)){const w=this.internalTrack.cuePoints[p-1];G(!w||w.time<O.time);const A=(w==null?void 0:w.time)??-1/0;return this.performClusterLookup(null,t,A,i,a)}return d?this.fetchPacketInCluster(d,m,a):null}}class H_ extends I7{constructor(e){super(e),this.decoderConfigPromise=null,this.internalTrack=e}getType(){return"video"}getCodec(){return this.internalTrack.info.codec}getCodedWidth(){return this.internalTrack.info.width}getCodedHeight(){return this.internalTrack.info.height}getSquarePixelWidth(){return this.internalTrack.info.squarePixelWidth}getSquarePixelHeight(){return this.internalTrack.info.squarePixelHeight}getRotation(){return this.internalTrack.info.rotation}async getColorSpace(){var e,t,r,i;return{primaries:(e=this.internalTrack.info.colorSpace)==null?void 0:e.primaries,transfer:(t=this.internalTrack.info.colorSpace)==null?void 0:t.transfer,matrix:(r=this.internalTrack.info.colorSpace)==null?void 0:r.matrix,fullRange:(i=this.internalTrack.info.colorSpace)==null?void 0:i.fullRange}}async canBeTransparent(){return this.internalTrack.info.alphaMode}async getDecoderConfig(){return this.internalTrack.info.codec?this.decoderConfigPromise??(this.decoderConfigPromise=(async()=>{let e=null;(this.internalTrack.info.codec==="vp9"||this.internalTrack.info.codec==="av1"||this.internalTrack.info.codec==="avc"&&!this.internalTrack.info.codecDescription||this.internalTrack.info.codec==="hevc"&&!this.internalTrack.info.codecDescription)&&(e=await this.getFirstPacket({}));const r={codec:qO({width:this.internalTrack.info.width,height:this.internalTrack.info.height,codec:this.internalTrack.info.codec,codecDescription:this.internalTrack.info.codecDescription,colorSpace:this.internalTrack.info.colorSpace,avcType:1,avcCodecInfo:this.internalTrack.info.codec==="avc"&&e?g7(e.data):null,hevcCodecInfo:this.internalTrack.info.codec==="hevc"&&e?x7(e.data):null,vp9CodecInfo:this.internalTrack.info.codec==="vp9"&&e?S7(e.data):null,av1CodecInfo:this.internalTrack.info.codec==="av1"&&e?v7(e.data):null}),codedWidth:this.internalTrack.info.width,codedHeight:this.internalTrack.info.height,description:this.internalTrack.info.codecDescription??void 0,colorSpace:this.internalTrack.info.colorSpace??void 0};return(this.internalTrack.info.width!==this.internalTrack.info.squarePixelWidth||this.internalTrack.info.height!==this.internalTrack.info.squarePixelHeight)&&(r.displayAspectWidth=this.internalTrack.info.squarePixelWidth,r.displayAspectHeight=this.internalTrack.info.squarePixelHeight),r})()):null}}class F_ extends I7{constructor(e){super(e),this.decoderConfig=null,this.internalTrack=e}getType(){return"audio"}getCodec(){return this.internalTrack.info.codec}getNumberOfChannels(){return this.internalTrack.info.numberOfChannels}getSampleRate(){return this.internalTrack.info.sampleRate}async getDecoderConfig(){return this.internalTrack.info.codec?this.decoderConfig??(this.decoderConfig={codec:YO({codec:this.internalTrack.info.codec,codecDescription:this.internalTrack.info.codecDescription,aacCodecInfo:this.internalTrack.info.aacCodecInfo}),numberOfChannels:this.internalTrack.info.numberOfChannels,sampleRate:this.internalTrack.info.sampleRate,description:this.internalTrack.info.codecDescription??void 0}):null}}/*!
166
- * Copyright (c) 2026-present, Vanilagy and contributors
167
- *
168
- * This Source Code Form is subject to the terms of the Mozilla Public
169
- * License, v. 2.0. If a copy of the MPL was not distributed with this
170
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
171
- */const f8=async(n,e,t)=>{let i=e;for(;t===null||i<t;){const a=t!==null?Math.min(65536,t-i):65536;let s=n.requestSliceRange(i,vl,a);if(s instanceof Promise&&(s=await s),!s||s.length<vl)break;for(;s.remainingLength>=vl;){const o=s.filePos,u=Ee(s),d=n.fileSize!==null?n.fileSize-i:null,m=WO(u,d);if(m.header)return{header:m.header,startPos:i};s.filePos=o+m.bytesAdvanced,i=s.filePos}}return null};/*!
172
- * Copyright (c) 2026-present, Vanilagy and contributors
173
- *
174
- * This Source Code Form is subject to the terms of the Mozilla Public
175
- * License, v. 2.0. If a copy of the MPL was not distributed with this
176
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
177
- */class X_ extends Ua{constructor(e){super(e),this.metadataPromise=null,this.firstFrameHeader=null,this.firstFrameHeaderPos=null,this.loadedSamples=[],this.metadataTags=null,this.xingData=null,this.trackBackings=[],this.readingMutex=new T1,this.lastSampleLoaded=!1,this.lastLoadedPos=0,this.nextTimestampInSamples=0,this.reader=e._reader}async readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{for(;!this.firstFrameHeader&&!this.lastSampleLoaded;)await this.advanceReader();if(!this.firstFrameHeader)throw new Error("No valid MP3 frame found.");this.trackBackings=[new U_(this)]})())}async advanceReader(){if(this.lastLoadedPos===0)for(;;){let o=this.reader.requestSlice(this.lastLoadedPos,Va);if(o instanceof Promise&&(o=await o),!o){this.lastSampleLoaded=!0;return}const u=Al(o);if(!u)break;this.lastLoadedPos=o.filePos+u.size}const e=await f8(this.reader,this.lastLoadedPos,this.reader.fileSize);if(!e){this.lastSampleLoaded=!0;return}const t=e.header;this.lastLoadedPos=e.startPos+t.totalSize-1;const r=h7(t.mpegVersionId,t.channel);let i=this.reader.requestSlice(e.startPos+r,4);if(i instanceof Promise&&(i=await i),i){const o=Ee(i);if(o===f7||o===d7){if(!this.xingData){let d=this.reader.requestSlice(e.startPos+r+4,12);if(d instanceof Promise&&(d=await d),d){const m=He(d,12),p=Dt(m),O=p.getUint32(0,!1);this.xingData={frameCount:O&Nh.FrameCount?p.getUint32(4,!1):null,fileSize:O&Nh.FileSize?p.getUint32(8,!1):null}}}return}}this.firstFrameHeader||(this.firstFrameHeader=t,this.firstFrameHeaderPos=e.startPos),t.sampleRate!==this.firstFrameHeader.sampleRate&&console.warn(`MP3 changed sample rate mid-file: ${this.firstFrameHeader.sampleRate} Hz to ${t.sampleRate} Hz. Might be a bug, so please report this file.`);const a=t.audioSamplesInFrame/this.firstFrameHeader.sampleRate,s={timestamp:this.nextTimestampInSamples/this.firstFrameHeader.sampleRate,duration:a,dataStart:e.startPos,dataSize:t.totalSize};this.loadedSamples.push(s),this.nextTimestampInSamples+=t.audioSamplesInFrame}async getMimeType(){return"audio/mpeg"}async getTrackBackings(){return await this.readMetadata(),this.trackBackings}async getMetadataTags(){const e=await this.readingMutex.acquire();try{if(await this.readMetadata(),this.metadataTags)return this.metadataTags;this.metadataTags={};let t=0,r=!1;for(;;){let i=this.reader.requestSlice(t,Va);if(i instanceof Promise&&(i=await i),!i)break;const a=Al(i);if(!a)break;r=!0;let s=this.reader.requestSlice(i.filePos,a.size);if(s instanceof Promise&&(s=await s),!s)break;r6(s,a,this.metadataTags),t=i.filePos+a.size}if(!r&&this.reader.fileSize!==null&&this.reader.fileSize>=yh){let i=this.reader.requestSlice(this.reader.fileSize-yh,yh);i instanceof Promise&&(i=await i),G(i),Lt(i,3)==="TAG"&&cj(i,this.metadataTags)}return this.metadataTags}finally{e()}}}class U_{constructor(e){this.demuxer=e}getType(){return"audio"}getId(){return 1}getNumber(){return 1}getTimeResolution(){return G(this.demuxer.firstFrameHeader),this.demuxer.firstFrameHeader.sampleRate/this.demuxer.firstFrameHeader.audioSamplesInFrame}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){const e=this.demuxer;if(G(e.firstFrameHeader!==null),G(e.firstFrameHeaderPos!==null),e.xingData){if(e.xingData.frameCount!==null)return e.xingData.frameCount*e.firstFrameHeader.audioSamplesInFrame/e.firstFrameHeader.sampleRate}else if(e.reader.fileSize!==null){const t=d_(e.firstFrameHeader.lowSamplingFrequency,e.firstFrameHeader.layer,e.firstFrameHeader.bitrate,e.firstFrameHeader.sampleRate),r=(e.reader.fileSize-e.firstFrameHeaderPos)/t;return Math.round(r)*e.firstFrameHeader.audioSamplesInFrame/e.firstFrameHeader.sampleRate}return null}async getLiveRefreshInterval(){return null}getName(){return null}getLanguageCode(){return Bn}getCodec(){return"mp3"}getInternalCodecId(){return null}getNumberOfChannels(){return G(this.demuxer.firstFrameHeader),this.demuxer.firstFrameHeader.channel===3?1:2}getSampleRate(){return G(this.demuxer.firstFrameHeader),this.demuxer.firstFrameHeader.sampleRate}getDisposition(){return{...Xa}}async getDecoderConfig(){return G(this.demuxer.firstFrameHeader),{codec:"mp3",numberOfChannels:this.demuxer.firstFrameHeader.channel===3?1:2,sampleRate:this.demuxer.firstFrameHeader.sampleRate}}async getPacketAtIndex(e,t){if(e===-1)return null;const r=this.demuxer.loadedSamples[e];if(!r)return null;let i;if(t.metadataOnly)i=Qr;else{let a=this.demuxer.reader.requestSlice(r.dataStart,r.dataSize);if(a instanceof Promise&&(a=await a),!a)return null;i=He(a,r.dataSize)}return new bn(i,"key",r.timestamp,r.duration,e,r.dataSize)}getFirstPacket(e){return this.getPacketAtIndex(0,e)}async getNextPacket(e,t){const r=await this.demuxer.readingMutex.acquire();try{const i=K0(this.demuxer.loadedSamples,e.timestamp,s=>s.timestamp);if(i===-1)throw new Error("Packet was not created from this track.");const a=i+1;for(;a>=this.demuxer.loadedSamples.length&&!this.demuxer.lastSampleLoaded;)await this.demuxer.advanceReader();return this.getPacketAtIndex(a,t)}finally{r()}}async getPacket(e,t){const r=await this.demuxer.readingMutex.acquire();try{for(;;){const i=Ot(this.demuxer.loadedSamples,e,a=>a.timestamp);if(i===-1&&this.demuxer.loadedSamples.length>0)return null;if(this.demuxer.lastSampleLoaded)return this.getPacketAtIndex(i,t);if(i>=0&&i+1<this.demuxer.loadedSamples.length)return this.getPacketAtIndex(i,t);await this.demuxer.advanceReader()}}finally{r()}}getKeyPacket(e,t){return this.getPacket(e,t)}getNextKeyPacket(e,t){return this.getNextPacket(e,t)}}/*!
178
- * Copyright (c) 2026-present, Vanilagy and contributors
179
- *
180
- * This Source Code Form is subject to the terms of the Mozilla Public
181
- * License, v. 2.0. If a copy of the MPL was not distributed with this
182
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
183
- */const L7=1399285583,q_=79764919,z7=new Uint32Array(256);for(let n=0;n<256;n++){let e=n<<24;for(let t=0;t<8;t++)e=e&2147483648?e<<1^q_:e<<1;z7[n]=e>>>0&4294967295}const Y_=n=>{const e=Dt(n),t=e.getUint32(22,!0);e.setUint32(22,0,!0);let r=0;for(let i=0;i<n.length;i++){const a=n[i];r=(r<<8^z7[r>>>24^a])>>>0}return e.setUint32(22,t,!0),r},W_=(n,e,t)=>{let r=0,i=null;if(n.length>0)if(e.codec==="vorbis"){G(e.vorbisInfo);const a=e.vorbisInfo.modeBlockflags.length,o=(1<<JQ(a-1))-1<<1,u=(n[0]&o)>>1;if(u>=e.vorbisInfo.modeBlockflags.length)throw new Error("Invalid mode number.");let d=t;const m=e.vorbisInfo.modeBlockflags[u];if(i=e.vorbisInfo.blocksizes[m],m===1){const p=(o|1)+1,O=n[0]&p?1:0;d=e.vorbisInfo.blocksizes[O]}r=d!==null?d+i>>2:0}else e.codec==="opus"&&(r=v_(n).durationInSamples);return{durationInSamples:r,vorbisBlockSize:i}},G_=n=>{let e="audio/ogg";if(n.codecStrings){const t=[...new Set(n.codecStrings)];e+=`; codecs="${t.join(", ")}"`}return e};/*!
184
- * Copyright (c) 2026-present, Vanilagy and contributors
185
- *
186
- * This Source Code Form is subject to the terms of the Mozilla Public
187
- * License, v. 2.0. If a copy of the MPL was not distributed with this
188
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
189
- */const gl=27,uc=282,K_=uc+65025,o0=n=>{const e=n.filePos;if(Ko(n)!==L7)return null;n.skip(1);const r=Ie(n),i=lj(n),a=Ko(n),s=Ko(n),o=Ko(n),u=Ie(n),d=new Uint8Array(u);for(let b=0;b<u;b++)d[b]=Ie(n);const m=27+u,p=d.reduce((b,S)=>b+S,0),O=m+p;return{headerStartPos:e,totalSize:O,dataStartPos:e+m,dataSize:p,headerType:r,granulePosition:i,serialNumber:a,sequenceNumber:s,checksum:o,lacingValues:d}},J_=(n,e)=>{for(;n.filePos<e-3;){const t=Ko(n),r=t&255,i=t>>>8&255,a=t>>>16&255,s=t>>>24&255,o=79;if(!(r!==o&&i!==o&&a!==o&&s!==o)){if(n.skip(-4),t===L7)return!0;n.skip(1)}}return!1};/*!
190
- * Copyright (c) 2026-present, Vanilagy and contributors
191
- *
192
- * This Source Code Form is subject to the terms of the Mozilla Public
193
- * License, v. 2.0. If a copy of the MPL was not distributed with this
194
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
195
- */class eN extends Ua{constructor(e){super(e),this.metadataPromise=null,this.bitstreams=[],this.trackBackings=[],this.metadataTags={},this.reader=e._reader}async readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{let e=0;for(;;){let t=this.reader.requestSliceRange(e,gl,uc);if(t instanceof Promise&&(t=await t),!t)break;const r=o0(t);if(!r||!!!(r.headerType&2))break;this.bitstreams.push({serialNumber:r.serialNumber,bosPage:r,description:null,numberOfChannels:-1,sampleRate:-1,codecInfo:{codec:null,vorbisInfo:null,opusInfo:null},lastMetadataPacket:null}),e=r.headerStartPos+r.totalSize}for(const t of this.bitstreams){const r=await this.readPacket(t.bosPage,0);r&&(r.data.byteLength>=7&&r.data[0]===1&&r.data[1]===118&&r.data[2]===111&&r.data[3]===114&&r.data[4]===98&&r.data[5]===105&&r.data[6]===115?await this.readVorbisMetadata(r,t):r.data.byteLength>=8&&r.data[0]===79&&r.data[1]===112&&r.data[2]===117&&r.data[3]===115&&r.data[4]===72&&r.data[5]===101&&r.data[6]===97&&r.data[7]===100&&await this.readOpusMetadata(r,t),t.codecInfo.codec!==null&&this.trackBackings.push(new tN(t,this)))}})())}async readVorbisMetadata(e,t){let r=await this.findNextPacketStart(e);if(!r)return;const i=await this.readPacket(r.startPage,r.startSegmentIndex);if(!i||(r=await this.findNextPacketStart(i),!r))return;const a=await this.readPacket(r.startPage,r.startSegmentIndex);if(!a||i.data[0]!==3||a.data[0]!==5)return;const s=[],o=p=>{for(;s.push(Math.min(255,p)),!(p<255);)p-=255};o(e.data.length),o(i.data.length);const u=new Uint8Array(1+s.length+e.data.length+i.data.length+a.data.length);u[0]=2,u.set(s,1),u.set(e.data,1+s.length),u.set(i.data,1+s.length+e.data.length),u.set(a.data,1+s.length+e.data.length+i.data.length),t.codecInfo.codec="vorbis",t.description=u,t.lastMetadataPacket=a;const d=Dt(e.data);t.numberOfChannels=d.getUint8(11),t.sampleRate=d.getUint32(12,!0);const m=d.getUint8(28);t.codecInfo.vorbisInfo={blocksizes:[1<<(m&15),1<<(m>>4)],modeBlockflags:w_(a.data).modeBlockflags},l8(i.data.subarray(7),this.metadataTags)}async readOpusMetadata(e,t){const r=await this.findNextPacketStart(e);if(!r)return;const i=await this.readPacket(r.startPage,r.startSegmentIndex);if(!i)return;t.codecInfo.codec="opus",t.description=e.data,t.lastMetadataPacket=i;const a=S_(e.data);t.numberOfChannels=a.outputChannelCount,t.sampleRate=P1,t.codecInfo.opusInfo={preSkip:a.preSkip},l8(i.data.subarray(8),this.metadataTags)}async readPacket(e,t){G(t<e.lacingValues.length);let r=0;for(let p=0;p<t;p++)r+=e.lacingValues[p];let i=e,a=r,s=t;const o=[];e:for(;;){let p=this.reader.requestSlice(i.dataStartPos,i.dataSize);p instanceof Promise&&(p=await p),G(p);const O=He(p,i.dataSize);for(;;){if(s===i.lacingValues.length){o.push(O.subarray(r,a));break}const S=i.lacingValues[s];if(a+=S,S<255){o.push(O.subarray(r,a));break e}s++}let b=i.headerStartPos+i.totalSize;for(;;){let S=this.reader.requestSliceRange(b,gl,uc);if(S instanceof Promise&&(S=await S),!S)return null;const k=o0(S);if(!k)return null;if(i=k,i.serialNumber===e.serialNumber)break;b=i.headerStartPos+i.totalSize}r=0,a=0,s=0}const u=o.reduce((p,O)=>p+O.length,0);if(u===0)return null;const d=new Uint8Array(u);let m=0;for(let p=0;p<o.length;p++){const O=o[p];d.set(O,m),m+=O.length}return{data:d,endPage:i,endSegmentIndex:s}}async findNextPacketStart(e){if(e.endSegmentIndex<e.endPage.lacingValues.length-1)return{startPage:e.endPage,startSegmentIndex:e.endSegmentIndex+1};if(!!(e.endPage.headerType&4))return null;let r=e.endPage.headerStartPos+e.endPage.totalSize;for(;;){let i=this.reader.requestSliceRange(r,gl,uc);if(i instanceof Promise&&(i=await i),!i)return null;const a=o0(i);if(!a)return null;if(a.serialNumber===e.endPage.serialNumber)return{startPage:a,startSegmentIndex:0};r=a.headerStartPos+a.totalSize}}async getMimeType(){await this.readMetadata();const e=await Promise.all(this.trackBackings.map(t=>t.getDecoderConfig().then(r=>(r==null?void 0:r.codec)??null)));return G_({codecStrings:e.filter(Boolean)})}async getTrackBackings(){return await this.readMetadata(),this.trackBackings}async getMetadataTags(){return await this.readMetadata(),this.metadataTags}}class tN{constructor(e,t){this.bitstream=e,this.demuxer=t,this.encodedPacketToMetadata=new WeakMap,this.sequentialScanCache=[],this.sequentialScanMutex=new T1,this.internalSampleRate=e.codecInfo.codec==="opus"?P1:e.sampleRate}getType(){return"audio"}getId(){return this.bitstream.serialNumber}getNumber(){const e=this.demuxer.trackBackings.findIndex(t=>t.bitstream===this.bitstream);return G(e!==-1),e+1}getNumberOfChannels(){return this.bitstream.numberOfChannels}getSampleRate(){return this.bitstream.sampleRate}getTimeResolution(){return this.bitstream.sampleRate}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){return null}async getLiveRefreshInterval(){return null}getCodec(){return this.bitstream.codecInfo.codec}getInternalCodecId(){return null}async getDecoderConfig(){return G(this.bitstream.codecInfo.codec),{codec:this.bitstream.codecInfo.codec,numberOfChannels:this.bitstream.numberOfChannels,sampleRate:this.bitstream.sampleRate,description:this.bitstream.description??void 0}}getName(){return null}getLanguageCode(){return Bn}getDisposition(){return{...Xa,primary:!1}}granulePositionToTimestampInSamples(e){return this.bitstream.codecInfo.codec==="opus"?(G(this.bitstream.codecInfo.opusInfo),e-this.bitstream.codecInfo.opusInfo.preSkip):e}createEncodedPacketFromOggPacket(e,t,r){if(!e)return null;const{durationInSamples:i,vorbisBlockSize:a}=W_(e.data,this.bitstream.codecInfo,t.vorbisLastBlocksize),s=new bn(r.metadataOnly?Qr:e.data,"key",Math.max(0,t.timestampInSamples)/this.internalSampleRate,i/this.internalSampleRate,e.endPage.headerStartPos+e.endSegmentIndex,e.data.byteLength);return this.encodedPacketToMetadata.set(s,{packet:e,timestampInSamples:t.timestampInSamples,durationInSamples:i,vorbisLastBlockSize:t.vorbisLastBlocksize,vorbisBlockSize:a}),s}async getFirstPacket(e){G(this.bitstream.lastMetadataPacket);const t=await this.demuxer.findNextPacketStart(this.bitstream.lastMetadataPacket);if(!t)return null;let r=0;this.bitstream.codecInfo.codec==="opus"&&(G(this.bitstream.codecInfo.opusInfo),r-=this.bitstream.codecInfo.opusInfo.preSkip);const i=await this.demuxer.readPacket(t.startPage,t.startSegmentIndex);return this.createEncodedPacketFromOggPacket(i,{timestampInSamples:r,vorbisLastBlocksize:null},e)}async getNextPacket(e,t){const r=this.encodedPacketToMetadata.get(e);if(!r)throw new Error("Packet was not created from this track.");const i=await this.demuxer.findNextPacketStart(r.packet);if(!i)return null;const a=r.timestampInSamples+r.durationInSamples,s=await this.demuxer.readPacket(i.startPage,i.startSegmentIndex);return this.createEncodedPacketFromOggPacket(s,{timestampInSamples:a,vorbisLastBlocksize:r.vorbisBlockSize},t)}async getPacket(e,t){if(this.demuxer.reader.fileSize===null)return this.getPacketSequential(e,t);const r=M0(e*this.internalSampleRate);if(r===0)return this.getFirstPacket(t);if(r<0)return null;G(this.bitstream.lastMetadataPacket);const i=await this.demuxer.findNextPacketStart(this.bitstream.lastMetadataPacket);if(!i)return null;let a=i.startPage,s=this.demuxer.reader.fileSize;const o=[a];e:for(;a.headerStartPos+a.totalSize<s;){const A=a.headerStartPos,E=Math.floor((A+s)/2);let C=E;for(;;){const P=Math.min(C+K_,s-gl);let $=this.demuxer.reader.requestSlice(C,P-C);if($ instanceof Promise&&($=await $),G($),!J_($,P)){s=E+gl;continue e}let R=this.demuxer.reader.requestSliceRange($.filePos,gl,uc);R instanceof Promise&&(R=await R),G(R);const N=o0(R);G(N);let Z=!1;if(N.serialNumber===this.bitstream.serialNumber)Z=!0;else{let I=this.demuxer.reader.requestSlice(N.headerStartPos,N.totalSize);I instanceof Promise&&(I=await I),G(I);const U=He(I,N.totalSize);Z=Y_(U)===N.checksum}if(!Z){C=N.headerStartPos+4;continue}if(Z&&N.serialNumber!==this.bitstream.serialNumber){C=N.headerStartPos+N.totalSize;continue}if(N.granulePosition===-1){C=N.headerStartPos+N.totalSize;continue}this.granulePositionToTimestampInSamples(N.granulePosition)>r?s=N.headerStartPos:(a=N,o.push(N));continue e}}let u=i.startPage;for(const A of o){if(A.granulePosition===a.granulePosition)break;(!u||A.headerStartPos>u.headerStartPos)&&(u=A)}let d=u;const m=[d];for(;!(d.serialNumber===this.bitstream.serialNumber&&d.granulePosition===a.granulePosition);){const A=d.headerStartPos+d.totalSize;let E=this.demuxer.reader.requestSliceRange(A,gl,uc);E instanceof Promise&&(E=await E),G(E);const C=o0(E);G(C),d=C,d.serialNumber===this.bitstream.serialNumber&&m.push(d)}G(d.granulePosition!==-1);let p=null,O,b,S=d,k=0;if(d.headerStartPos===i.startPage.headerStartPos)O=this.granulePositionToTimestampInSamples(0),b=!0,p=0;else{O=0,b=!1;for(let C=d.lacingValues.length-1;C>=0;C--)if(d.lacingValues[C]<255){p=C+1;break}if(p===null)throw new Error("Invalid page with granule position: no packets end on this page.");k=p-1;const A={data:Qr,endPage:S,endSegmentIndex:k};if(await this.demuxer.findNextPacketStart(A)){const C=b5(m,d,p);G(C);const P=y5(m,C.page,C.segmentIndex);P&&(d=P.page,p=P.segmentIndex)}else for(;;){const C=b5(m,d,p);if(!C)break;const P=y5(m,C.page,C.segmentIndex);if(!P)break;if(d=P.page,p=P.segmentIndex,C.page.headerStartPos!==S.headerStartPos){S=C.page,k=C.segmentIndex;break}}}let T=null,w=null;for(;d!==null;){G(p!==null);const A=await this.demuxer.readPacket(d,p);if(!A)break;if(!(d.headerStartPos===i.startPage.headerStartPos&&p<i.startSegmentIndex)){let P=this.createEncodedPacketFromOggPacket(A,{timestampInSamples:O,vorbisLastBlocksize:(w==null?void 0:w.vorbisBlockSize)??null},t);G(P);let $=this.encodedPacketToMetadata.get(P);if(G($),!b&&A.endPage.headerStartPos===S.headerStartPos&&A.endSegmentIndex===k?(O=this.granulePositionToTimestampInSamples(d.granulePosition),b=!0,P=this.createEncodedPacketFromOggPacket(A,{timestampInSamples:O-$.durationInSamples,vorbisLastBlocksize:(w==null?void 0:w.vorbisBlockSize)??null},t),G(P),$=this.encodedPacketToMetadata.get(P),G($)):O+=$.durationInSamples,T=P,w=$,b&&(Math.max(O,0)>r||Math.max($.timestampInSamples,0)===r))break}const C=await this.demuxer.findNextPacketStart(A);if(!C)break;d=C.startPage,p=C.startSegmentIndex}return T}async getPacketSequential(e,t){const r=await this.sequentialScanMutex.acquire();try{const i=M0(e*this.internalSampleRate);e=i/this.internalSampleRate;const a=Ot(this.sequentialScanCache,i,u=>u.timestampInSamples);let s;if(a!==-1){const u=this.sequentialScanCache[a];s=this.createEncodedPacketFromOggPacket(u.packet,{timestampInSamples:u.timestampInSamples,vorbisLastBlocksize:u.vorbisLastBlockSize},t)}else s=await this.getFirstPacket(t);let o=0;for(;s&&s.timestamp<e;){const u=await this.getNextPacket(s,t);if(!u||u.timestamp>e)break;if(s=u,o++,o===100){o=0;const d=this.encodedPacketToMetadata.get(s);G(d),this.sequentialScanCache.length>0&&G(Rr(this.sequentialScanCache).timestampInSamples<=d.timestampInSamples),this.sequentialScanCache.push(d)}}return s}finally{r()}}getKeyPacket(e,t){return this.getPacket(e,t)}getNextKeyPacket(e,t){return this.getNextPacket(e,t)}}const y5=(n,e,t)=>{let r=e,i=t;e:for(;;){for(i--,i;i>=0;i--)if(r.lacingValues[i]<255){i++;break e}if(G(i===-1),!(r.headerType&1)){i=0;break}const s=e7(n,o=>o.headerStartPos<r.headerStartPos);if(!s)return null;r=s,i=r.lacingValues.length}if(G(i!==-1),i===r.lacingValues.length){const a=n[n.indexOf(r)+1];G(a),r=a,i=0}return{page:r,segmentIndex:i}},b5=(n,e,t)=>{if(t>0)return{page:e,segmentIndex:t-1};const r=e7(n,i=>i.headerStartPos<e.headerStartPos);return r?{page:r,segmentIndex:r.lacingValues.length-1}:null};/*!
196
- * Copyright (c) 2026-present, Vanilagy and contributors
197
- *
198
- * This Source Code Form is subject to the terms of the Mozilla Public
199
- * License, v. 2.0. If a copy of the MPL was not distributed with this
200
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
201
- */var Pa;(function(n){n[n.PCM=1]="PCM",n[n.IEEE_FLOAT=3]="IEEE_FLOAT",n[n.ALAW=6]="ALAW",n[n.MULAW=7]="MULAW",n[n.EXTENSIBLE=65534]="EXTENSIBLE"})(Pa||(Pa={}));class nN extends Ua{constructor(e){super(e),this.metadataPromise=null,this.dataStart=-1,this.dataSize=-1,this.audioInfo=null,this.trackBackings=[],this.lastKnownPacketIndex=0,this.metadataTags={},this.reader=e._reader}async readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{let e=this.reader.requestSlice(0,12);e instanceof Promise&&(e=await e),G(e);const t=Lt(e,4),r=t!=="RIFX",i=t==="RF64",a=Ms(e,r);let s=i?this.reader.fileSize:Math.min(a+8,this.reader.fileSize??1/0);if(Lt(e,4)!=="WAVE")throw new Error("Invalid WAVE file - wrong format");let u=0,d=null,m=e.filePos;for(;s===null||m<s;){let O=this.reader.requestSlice(m,8);if(O instanceof Promise&&(O=await O),!O)break;const b=Lt(O,4),S=Ms(O,r),k=O.filePos;if(i&&u===0&&b!=="ds64")throw new Error('Invalid RF64 file: First chunk must be "ds64".');if(b==="fmt ")await this.parseFmtChunk(k,S,r);else if(b==="data"){if(d??(d=S),this.dataStart=O.filePos,this.dataSize=Math.min(d,(s??1/0)-this.dataStart),this.reader.fileSize===null)break}else if(b==="ds64"){let T=this.reader.requestSlice(k,S);if(T instanceof Promise&&(T=await T),!T)break;const w=B5(T,r);d=B5(T,r),s=Math.min(w+8,this.reader.fileSize??1/0)}else b==="LIST"?await this.parseListChunk(k,S,r):(b==="ID3 "||b==="id3 ")&&await this.parseId3Chunk(k,S);m=k+S+(S&1),u++}if(!this.audioInfo)throw new Error('Invalid WAVE file - missing "fmt " chunk');if(this.dataStart===-1)throw new Error('Invalid WAVE file - missing "data" chunk');const p=this.audioInfo.blockSizeInBytes;this.dataSize=Math.floor(this.dataSize/p)*p,this.trackBackings.push(new rN(this))})())}async parseFmtChunk(e,t,r){let i=this.reader.requestSlice(e,t);if(i instanceof Promise&&(i=await i),!i)return;let a=Zu(i,r);const s=Zu(i,r),o=Ms(i,r);i.skip(4);const u=Zu(i,r);let d;if(t===14?d=8:d=Zu(i,r),t>=18&&a!==357){const m=Zu(i,r),p=t-18;if(Math.min(p,m)>=22&&a===Pa.EXTENSIBLE){i.skip(6);const b=He(i,16);a=b[0]|b[1]<<8}}(a===Pa.MULAW||a===Pa.ALAW)&&(d=8),this.audioInfo={format:a,numberOfChannels:s,sampleRate:o,sampleSizeInBytes:Math.ceil(d/8),blockSizeInBytes:u}}async parseListChunk(e,t,r){var o,u,d,m,p,O,b,S,k,T,w;let i=this.reader.requestSlice(e,t);if(i instanceof Promise&&(i=await i),!i)return;const a=Lt(i,4);if(a!=="INFO"&&a!=="INF0")return;let s=i.filePos;for(;s<=e+t-8;){i.filePos=s;const A=Lt(i,4),E=Ms(i,r),C=He(i,E);let P=0;for(let M=0;M<C.length&&C[M]!==0;M++)P++;const $=String.fromCharCode(...C.subarray(0,P));switch((o=this.metadataTags).raw??(o.raw={}),this.metadataTags.raw[A]=$,A){case"INAM":case"TITL":(u=this.metadataTags).title??(u.title=$);break;case"TIT3":(d=this.metadataTags).description??(d.description=$);break;case"IART":(m=this.metadataTags).artist??(m.artist=$);break;case"IPRD":(p=this.metadataTags).album??(p.album=$);break;case"IPRT":case"ITRK":case"TRCK":{const M=$.split("/"),R=Number.parseInt(M[0],10),N=M[1]&&Number.parseInt(M[1],10);Number.isInteger(R)&&R>0&&((O=this.metadataTags).trackNumber??(O.trackNumber=R)),N&&Number.isInteger(N)&&N>0&&((b=this.metadataTags).tracksTotal??(b.tracksTotal=N))}break;case"ICRD":case"IDIT":{const M=new Date($);Number.isNaN(M.getTime())||((S=this.metadataTags).date??(S.date=M))}break;case"YEAR":{const M=Number.parseInt($,10);Number.isInteger(M)&&M>0&&((k=this.metadataTags).date??(k.date=new Date(M,0,1)))}break;case"IGNR":case"GENR":(T=this.metadataTags).genre??(T.genre=$);break;case"ICMT":case"CMNT":case"COMM":(w=this.metadataTags).comment??(w.comment=$);break}s+=8+E+(E&1)}}async parseId3Chunk(e,t){let r=this.reader.requestSlice(e,t);if(r instanceof Promise&&(r=await r),!r)return;const i=Al(r);if(i){const a=t-Va;if(i.size=Math.min(i.size,a),i.size>0){const s=r.slice(e+Va,i.size);r6(s,i,this.metadataTags)}}}getCodec(){if(G(this.audioInfo),this.audioInfo.format===Pa.MULAW)return"ulaw";if(this.audioInfo.format===Pa.ALAW)return"alaw";if(this.audioInfo.format===Pa.PCM){if(this.audioInfo.sampleSizeInBytes===1)return"pcm-u8";if(this.audioInfo.sampleSizeInBytes===2)return"pcm-s16";if(this.audioInfo.sampleSizeInBytes===3)return"pcm-s24";if(this.audioInfo.sampleSizeInBytes===4)return"pcm-s32"}return this.audioInfo.format===Pa.IEEE_FLOAT&&this.audioInfo.sampleSizeInBytes===4?"pcm-f32":null}async getMimeType(){return"audio/wav"}async getTrackBackings(){return await this.readMetadata(),this.trackBackings}async getMetadataTags(){return await this.readMetadata(),this.metadataTags}}const Qo=2048;class rN{constructor(e){this.demuxer=e}getType(){return"audio"}getId(){return 1}getNumber(){return 1}getCodec(){return this.demuxer.getCodec()}getInternalCodecId(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.format}async getDecoderConfig(){const e=this.demuxer.getCodec();return e?(G(this.demuxer.audioInfo),{codec:e,numberOfChannels:this.demuxer.audioInfo.numberOfChannels,sampleRate:this.demuxer.audioInfo.sampleRate}):null}getNumberOfChannels(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.numberOfChannels}getSampleRate(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.sampleRate}getTimeResolution(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.sampleRate}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){return G(this.demuxer.dataSize!==-1),this.demuxer.dataSize/this.demuxer.audioInfo.blockSizeInBytes/this.demuxer.audioInfo.sampleRate}async getLiveRefreshInterval(){return null}getName(){return null}getLanguageCode(){return Bn}getDisposition(){return{...Xa}}async getPacketAtIndex(e,t){G(e>=0),G(this.demuxer.audioInfo);const r=e*Qo*this.demuxer.audioInfo.blockSizeInBytes;if(r>=this.demuxer.dataSize)return null;const i=Math.min(Qo*this.demuxer.audioInfo.blockSizeInBytes,this.demuxer.dataSize-r);if(this.demuxer.reader.fileSize===null){let u=this.demuxer.reader.requestSlice(this.demuxer.dataStart+r,i);if(u instanceof Promise&&(u=await u),!u)return null}let a;if(t.metadataOnly)a=Qr;else{let u=this.demuxer.reader.requestSlice(this.demuxer.dataStart+r,i);u instanceof Promise&&(u=await u),G(u),a=He(u,i)}const s=e*Qo/this.demuxer.audioInfo.sampleRate,o=i/this.demuxer.audioInfo.blockSizeInBytes/this.demuxer.audioInfo.sampleRate;return this.demuxer.lastKnownPacketIndex=Math.max(e,this.demuxer.lastKnownPacketIndex),new bn(a,"key",s,o,e,i)}getFirstPacket(e){return this.getPacketAtIndex(0,e)}async getPacket(e,t){G(this.demuxer.audioInfo);const r=Math.floor(Math.min(e*this.demuxer.audioInfo.sampleRate/Qo,(this.demuxer.dataSize-1)/(Qo*this.demuxer.audioInfo.blockSizeInBytes)));if(r<0)return null;const i=await this.getPacketAtIndex(r,t);if(i)return i;if(r===0)return null;G(this.demuxer.reader.fileSize===null);let a=await this.getPacketAtIndex(this.demuxer.lastKnownPacketIndex,t);for(;a;){const s=await this.getNextPacket(a,t);if(!s)break;a=s}return a}getNextPacket(e,t){G(this.demuxer.audioInfo);const r=Math.round(e.timestamp*this.demuxer.audioInfo.sampleRate/Qo);return this.getPacketAtIndex(r+1,t)}getKeyPacket(e,t){return this.getPacket(e,t)}getNextKeyPacket(e,t){return this.getNextPacket(e,t)}}/*!
202
- * Copyright (c) 2026-present, Vanilagy and contributors
203
- *
204
- * This Source Code Form is subject to the terms of the Mozilla Public
205
- * License, v. 2.0. If a copy of the MPL was not distributed with this
206
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
207
- */const d8=7,fc=9,Q0=n=>{const e=n.filePos,t=He(n,9),r=new kt(t);if(r.readBits(12)!==4095||(r.skipBits(1),r.readBits(2)!==0))return null;const s=r.readBits(1),o=r.readBits(2)+1,u=r.readBits(4);if(u===15)return null;r.skipBits(1);const d=r.readBits(3);if(d===0)throw new Error("ADTS frames with channel configuration 0 are not supported.");r.skipBits(1),r.skipBits(1),r.skipBits(1),r.skipBits(1);const m=r.readBits(13);r.skipBits(11);const p=r.readBits(2)+1;if(p!==1)throw new Error("ADTS frames with more than one AAC frame are not supported.");let O=null;return s===1?n.filePos-=2:O=r.readBits(16),{objectType:o,samplingFrequencyIndex:u,channelConfiguration:d,frameLength:m,numberOfAacFrames:p,crcCheck:O,startPos:e}};/*!
208
- * Copyright (c) 2026-present, Vanilagy and contributors
209
- *
210
- * This Source Code Form is subject to the terms of the Mozilla Public
211
- * License, v. 2.0. If a copy of the MPL was not distributed with this
212
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
213
- */const Dh=1024;class iN extends Ua{constructor(e){super(e),this.metadataPromise=null,this.firstFrameHeader=null,this.loadedSamples=[],this.metadataTags=null,this.trackBackings=[],this.readingMutex=new T1,this.lastSampleLoaded=!1,this.lastLoadedPos=0,this.nextTimestampInSamples=0,this.reader=e._reader}async readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{for(;!this.firstFrameHeader&&!this.lastSampleLoaded;)await this.advanceReader();G(this.firstFrameHeader),this.trackBackings=[new aN(this)]})())}async advanceReader(){if(this.lastLoadedPos===0)for(;;){let s=this.reader.requestSlice(this.lastLoadedPos,Va);if(s instanceof Promise&&(s=await s),!s){this.lastSampleLoaded=!0;return}const o=Al(s);if(!o)break;this.lastLoadedPos=s.filePos+o.size}let e=this.reader.requestSliceRange(this.lastLoadedPos,d8,fc);if(e instanceof Promise&&(e=await e),!e){this.lastSampleLoaded=!0;return}const t=Q0(e);if(!t){this.lastSampleLoaded=!0;return}if(this.reader.fileSize!==null&&t.startPos+t.frameLength>this.reader.fileSize){this.lastSampleLoaded=!0;return}this.firstFrameHeader||(this.firstFrameHeader=t);const r=$0[t.samplingFrequencyIndex];G(r!==void 0);const i=Dh/r,a={timestamp:this.nextTimestampInSamples/r,duration:i,dataStart:t.startPos,dataSize:t.frameLength};this.loadedSamples.push(a),this.nextTimestampInSamples+=Dh,this.lastLoadedPos=t.startPos+t.frameLength}async getMimeType(){return"audio/aac"}async getTrackBackings(){return await this.readMetadata(),this.trackBackings}async getMetadataTags(){const e=await this.readingMutex.acquire();try{if(await this.readMetadata(),this.metadataTags)return this.metadataTags;this.metadataTags={};let t=0;for(;;){let r=this.reader.requestSlice(t,Va);if(r instanceof Promise&&(r=await r),!r)break;const i=Al(r);if(!i)break;let a=this.reader.requestSlice(r.filePos,i.size);if(a instanceof Promise&&(a=await a),!a)break;r6(a,i,this.metadataTags),t=r.filePos+i.size}return this.metadataTags}finally{e()}}}class aN{constructor(e){this.demuxer=e}getType(){return"audio"}getId(){return 1}getNumber(){return 1}getTimeResolution(){return this.getSampleRate()/Dh}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){return null}async getLiveRefreshInterval(){return null}getName(){return null}getLanguageCode(){return Bn}getCodec(){return"aac"}getInternalCodecId(){return G(this.demuxer.firstFrameHeader),this.demuxer.firstFrameHeader.objectType}getNumberOfChannels(){G(this.demuxer.firstFrameHeader);const e=UO[this.demuxer.firstFrameHeader.channelConfiguration];return G(e!==void 0),e}getSampleRate(){G(this.demuxer.firstFrameHeader);const e=$0[this.demuxer.firstFrameHeader.samplingFrequencyIndex];return G(e!==void 0),e}getDisposition(){return{...Xa}}async getDecoderConfig(){return G(this.demuxer.firstFrameHeader),{codec:`mp4a.40.${this.demuxer.firstFrameHeader.objectType}`,numberOfChannels:this.getNumberOfChannels(),sampleRate:this.getSampleRate()}}async getPacketAtIndex(e,t){if(e===-1)return null;const r=this.demuxer.loadedSamples[e];if(!r)return null;let i;if(t.metadataOnly)i=Qr;else{let a=this.demuxer.reader.requestSlice(r.dataStart,r.dataSize);if(a instanceof Promise&&(a=await a),!a)return null;i=He(a,r.dataSize)}return new bn(i,"key",r.timestamp,r.duration,e,r.dataSize)}getFirstPacket(e){return this.getPacketAtIndex(0,e)}async getNextPacket(e,t){const r=await this.demuxer.readingMutex.acquire();try{const i=K0(this.demuxer.loadedSamples,e.timestamp,s=>s.timestamp);if(i===-1)throw new Error("Packet was not created from this track.");const a=i+1;for(;a>=this.demuxer.loadedSamples.length&&!this.demuxer.lastSampleLoaded;)await this.demuxer.advanceReader();return this.getPacketAtIndex(a,t)}finally{r()}}async getPacket(e,t){const r=await this.demuxer.readingMutex.acquire();try{for(;;){const i=Ot(this.demuxer.loadedSamples,e,a=>a.timestamp);if(i===-1&&this.demuxer.loadedSamples.length>0)return null;if(this.demuxer.lastSampleLoaded)return this.getPacketAtIndex(i,t);if(i>=0&&i+1<this.demuxer.loadedSamples.length)return this.getPacketAtIndex(i,t);await this.demuxer.advanceReader()}}finally{r()}}getKeyPacket(e,t){return this.getPacket(e,t)}getNextKeyPacket(e,t){return this.getNextPacket(e,t)}}/*!
214
- * Copyright (c) 2026-present, Vanilagy and contributors
215
- *
216
- * This Source Code Form is subject to the terms of the Mozilla Public
217
- * License, v. 2.0. If a copy of the MPL was not distributed with this
218
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
219
- */const sN=n=>n===0?null:n===1?192:n>=2&&n<=5?144*2**n:n===6?"uncommon-u8":n===7?"uncommon-u16":n>=8&&n<=15?2**n:null,lN=(n,e)=>{switch(n){case 0:return e;case 1:return 88200;case 2:return 176400;case 3:return 192e3;case 4:return 8e3;case 5:return 16e3;case 6:return 22050;case 7:return 24e3;case 8:return 32e3;case 9:return 44100;case 10:return 48e3;case 11:return 96e3;case 12:return"uncommon-u8";case 13:return"uncommon-u16";case 14:return"uncommon-u16-10";default:return null}},oN=n=>{let e=0;const t=new kt(He(n,1));for(;t.readBits(1)===1;)e++;if(e===0)return t.readBits(7);const r=[],i=e-1,a=new kt(He(n,i)),s=8-e-1;for(let u=0;u<s;u++)r.unshift(t.readBits(1));for(let u=0;u<i;u++)for(let d=0;d<8;d++){const m=a.readBits(1);d<2||r.unshift(m)}return r.reduce((u,d,m)=>u|d<<m,0)},cN=(n,e)=>{if(e==="uncommon-u16")return Kt(n)+1;if(e==="uncommon-u8")return Ie(n)+1;if(typeof e=="number")return e;t7(e),G(!1)},uN=(n,e)=>e==="uncommon-u16"?Kt(n):e==="uncommon-u16-10"?Kt(n)*10:e==="uncommon-u8"?Ie(n):typeof e=="number"?e:null,fN=n=>{let t=0;for(const r of n){t^=r;for(let i=0;i<8;i++)(t&128)!==0?t=t<<1^7:t<<=1,t&=255}return t};/*!
220
- * Copyright (c) 2026-present, Vanilagy and contributors
221
- *
222
- * This Source Code Form is subject to the terms of the Mozilla Public
223
- * License, v. 2.0. If a copy of the MPL was not distributed with this
224
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
225
- */class dN extends Ua{constructor(e){super(e),this.loadedSamples=[],this.metadataPromise=null,this.trackBacking=null,this.metadataTags={},this.audioInfo=null,this.lastLoadedPos=null,this.blockingBit=null,this.readingMutex=new T1,this.lastSampleLoaded=!1,this.reader=e._reader}async getMetadataTags(){return await this.readMetadata(),this.metadataTags}async getTrackBackings(){return await this.readMetadata(),G(this.trackBacking),[this.trackBacking]}async getMimeType(){return"audio/flac"}async readMetadata(){let e=4;return this.metadataPromise??(this.metadataPromise=(async()=>{var t;for(;this.reader.fileSize===null||e<this.reader.fileSize;){let r=this.reader.requestSlice(e,4);if(r instanceof Promise&&(r=await r),e+=4,r===null)throw new Error(`Metadata block at position ${e} is too small! Corrupted file.`);G(r);const i=Ie(r),a=Ta(r),s=(i&128)!==0;switch(i&127){case cc.STREAMINFO:{let u=this.reader.requestSlice(e,a);if(u instanceof Promise&&(u=await u),G(u),u===null)throw new Error(`StreamInfo block at position ${e} is too small! Corrupted file.`);const d=He(u,34),m=new kt(d),p=m.readBits(16),O=m.readBits(16),b=m.readBits(24),S=m.readBits(24),k=m.readBits(20),T=m.readBits(3)+1;m.readBits(5);const w=m.readBits(36);m.skipBits(128);const A=new Uint8Array(42);A.set(new Uint8Array([102,76,97,67]),0),A.set(new Uint8Array([128,0,0,34]),4),A.set(d,8),this.audioInfo={numberOfChannels:T,sampleRate:k,totalSamples:w,minimumBlockSize:p,maximumBlockSize:O,minimumFrameSize:b,maximumFrameSize:S,description:A},this.trackBacking=new hN(this);break}case cc.VORBIS_COMMENT:{let u=this.reader.requestSlice(e,a);u instanceof Promise&&(u=await u),G(u),l8(He(u,a),this.metadataTags);break}case cc.PICTURE:{let u=this.reader.requestSlice(e,a);u instanceof Promise&&(u=await u),G(u);const d=Ee(u),m=Ee(u),p=Mr.decode(He(u,m)),O=Ee(u),b=Mr.decode(He(u,O));u.skip(16);const S=Ee(u),k=He(u,S);(t=this.metadataTags).images??(t.images=[]),this.metadataTags.images.push({data:k,mimeType:p,kind:d===3?"coverFront":d===4?"coverBack":"unknown",description:b});break}}if(e+=a,s){this.lastLoadedPos=e;break}}if(!this.audioInfo)throw new Error("Missing STREAMINFO metadata block! Corrupted FLAC file.")})())}async readNextFlacFrame({startPos:e,isFirstPacket:t}){G(this.audioInfo);const r=6,i=16,a=10,s=this.audioInfo.maximumBlockSize*this.audioInfo.numberOfChannels*4+i+2,o=this.audioInfo.minimumFrameSize||a,d=(this.audioInfo.maximumFrameSize||s)+i,m=await this.reader.requestSliceRange(e,i,d);if(!m)return null;const p=this.readFlacFrameHeader({slice:m,isFirstPacket:t});if(!p)return null;for(m.filePos=e+o;;){if(m.filePos>m.end-r)return{num:p.num,blockSize:p.blockSize,sampleRate:p.sampleRate,size:m.end-e,isLastFrame:!0};if(Ie(m)===255){const b=m.filePos,S=Ie(m),k=this.blockingBit===1?249:248;if(S!==k){m.filePos=b;continue}m.skip(-2);const T=m.filePos-e,w=this.readFlacFrameHeader({slice:m,isFirstPacket:!1});if(!w){m.filePos=b;continue}if(this.blockingBit===0){if(w.num-p.num!==1){m.filePos=b;continue}}else if(w.num-p.num!==p.blockSize){m.filePos=b;continue}return{num:p.num,blockSize:p.blockSize,sampleRate:p.sampleRate,size:T,isLastFrame:!1}}}}readFlacFrameHeader({slice:e,isFirstPacket:t}){const r=e.filePos,i=He(e,4),a=new kt(i);if(a.readBits(15)!==32764)return null;if(this.blockingBit===null){G(t);const T=a.readBits(1);this.blockingBit=T}else if(this.blockingBit===1){if(G(!t),a.readBits(1)!==1)return null}else if(this.blockingBit===0){if(G(!t),a.readBits(1)!==0)return null}else throw new Error("Invalid blocking bit");const o=sN(a.readBits(4));if(!o)return null;G(this.audioInfo);const u=lN(a.readBits(4),this.audioInfo.sampleRate);if(!u||(a.readBits(4),a.readBits(3),a.readBits(1)!==0))return null;const m=oN(e),p=cN(e,o),O=uN(e,u);if(O===null||O!==this.audioInfo.sampleRate)return null;const b=e.filePos-r,S=Ie(e);e.skip(-b),e.skip(-1);const k=fN(He(e,b));return S!==k?null:{num:m,blockSize:p,sampleRate:O}}async advanceReader(){await this.readMetadata(),G(this.lastLoadedPos!==null),G(this.audioInfo);const e=this.lastLoadedPos,t=await this.readNextFlacFrame({startPos:e,isFirstPacket:this.loadedSamples.length===0});if(!t){this.lastSampleLoaded=!0;return}const r=this.loadedSamples[this.loadedSamples.length-1],a={blockOffset:r?r.blockOffset+r.blockSize:0,blockSize:t.blockSize,byteOffset:e,byteSize:t.size};if(this.lastLoadedPos=this.lastLoadedPos+t.size,this.loadedSamples.push(a),t.isLastFrame){this.lastSampleLoaded=!0;return}}}class hN{constructor(e){this.demuxer=e}getType(){return"audio"}getId(){return 1}getNumber(){return 1}getCodec(){return"flac"}getInternalCodecId(){return null}getNumberOfChannels(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.numberOfChannels}getSampleRate(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.sampleRate}getName(){return null}getLanguageCode(){return Bn}getTimeResolution(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.sampleRate}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){return G(this.demuxer.audioInfo),this.demuxer.audioInfo.totalSamples===0?null:this.demuxer.audioInfo.totalSamples/this.demuxer.audioInfo.sampleRate}async getLiveRefreshInterval(){return null}getDisposition(){return{...Xa}}async getDecoderConfig(){return G(this.demuxer.audioInfo),{codec:"flac",numberOfChannels:this.demuxer.audioInfo.numberOfChannels,sampleRate:this.demuxer.audioInfo.sampleRate,description:this.demuxer.audioInfo.description}}async getPacket(e,t){if(G(this.demuxer.audioInfo),e<0)return null;const r=await this.demuxer.readingMutex.acquire();try{for(;;){const i=Ot(this.demuxer.loadedSamples,e,u=>u.blockOffset/this.demuxer.audioInfo.sampleRate);if(i===-1){await this.demuxer.advanceReader();continue}const a=this.demuxer.loadedSamples[i],s=a.blockOffset/this.demuxer.audioInfo.sampleRate,o=a.blockSize/this.demuxer.audioInfo.sampleRate;if(s+o<=e){if(this.demuxer.lastSampleLoaded)return this.getPacketAtIndex(this.demuxer.loadedSamples.length-1,t);await this.demuxer.advanceReader();continue}return this.getPacketAtIndex(i,t)}}finally{r()}}async getNextPacket(e,t){const r=await this.demuxer.readingMutex.acquire();try{const i=e.sequenceNumber+1;if(this.demuxer.lastSampleLoaded&&i>=this.demuxer.loadedSamples.length)return null;for(;i>=this.demuxer.loadedSamples.length&&!this.demuxer.lastSampleLoaded;)await this.demuxer.advanceReader();return this.getPacketAtIndex(i,t)}finally{r()}}getKeyPacket(e,t){return this.getPacket(e,t)}getNextKeyPacket(e,t){return this.getNextPacket(e,t)}async getPacketAtIndex(e,t){const r=this.demuxer.loadedSamples[e];if(!r)return null;let i;if(t.metadataOnly)i=Qr;else{let o=this.demuxer.reader.requestSlice(r.byteOffset,r.byteSize);if(o instanceof Promise&&(o=await o),!o)return null;i=He(o,r.byteSize)}G(this.demuxer.audioInfo);const a=r.blockOffset/this.demuxer.audioInfo.sampleRate,s=r.blockSize/this.demuxer.audioInfo.sampleRate;return new bn(i,"key",a,s,e,r.byteSize)}async getFirstPacket(e){for(;this.demuxer.loadedSamples.length===0&&!this.demuxer.lastSampleLoaded;)await this.demuxer.advanceReader();return this.getPacketAtIndex(0,e)}}/*!
226
- * Copyright (c) 2026-present, Vanilagy and contributors
227
- *
228
- * This Source Code Form is subject to the terms of the Mozilla Public
229
- * License, v. 2.0. If a copy of the MPL was not distributed with this
230
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
231
- */const $a=9e4,Pr=188,mN=n=>{let e="video/MP2T";const t=[...new Set(n.filter(Boolean))];return t.length>0&&(e+=`; codecs="${t.join(", ")}"`),e};/*!
232
- * Copyright (c) 2026-present, Vanilagy and contributors
233
- *
234
- * This Source Code Form is subject to the terms of the Mozilla Public
235
- * License, v. 2.0. If a copy of the MPL was not distributed with this
236
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
237
- */const B7="PES packet is missing PTS where it was expected. PES packets without PTS are not currently supported. If you think this file should be supported, please report it.",x5=new Set;class pN extends Ua{constructor(e){super(e),this.metadataPromise=null,this.elementaryStreams=[],this.trackBackingEntries=[],this.packetOffset=0,this.packetStride=-1,this.sectionEndPositions=[],this.seekChunkSize=5*1024*1024,this.minReferencePointByteDistance=-1,this.reader=e._reader}async readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{const e=Pr+16+1;let t=this.reader.requestSlice(0,e);t instanceof Promise&&(t=await t),G(t);const r=He(t,e);if(r[0]===71&&r[Pr]===71)this.packetOffset=0,this.packetStride=Pr;else if(r[0]===71&&r[Pr+16]===71)this.packetOffset=0,this.packetStride=Pr+16;else if(r[4]===71&&r[4+Pr+4]===71)this.packetOffset=4,this.packetStride=Pr+4;else throw new Error("Unreachable.");const i=256;this.minReferencePointByteDistance=i*this.packetStride;let a=this.packetOffset,s=null,o=!1,u=!1;for(;;){const d=await this.readPacketHeader(a);if(!d)break;if(d.payloadUnitStartIndicator===0){a+=this.packetStride;continue}const m=await this.readSection(a,!0,!u);if(!m)break;const p=3,O=32;let b=!1;if(!u&&m.pid!==0&&!(m.payload[0]===0&&m.payload[1]===0&&m.payload[2]===1)){const T=new kt(m.payload),w=T.readAlignedByte();T.skipBits(8*w),b=T.readBits(8)===2}if(m.pid===0&&!o){const k=new kt(m.payload),T=k.readAlignedByte();k.skipBits(8*T),k.skipBits(14);const w=k.readBits(10);for(k.skipBits(40);8*(w+p)-k.pos>O;){const A=k.readBits(16);k.skipBits(3);const E=k.readBits(13);if(A!==0){if(s!==null)throw new Error("Only files with a single program are supported.");s=E}}if(s===null)throw new Error("Program Association Table must link to a Program Map Table.");o=!0}else if((m.pid===s||b)&&!u){const k=new kt(m.payload),T=k.readAlignedByte();k.skipBits(8*T),k.skipBits(12);const w=k.readBits(12);k.skipBits(43),k.readBits(13),k.skipBits(6);const A=k.readBits(10);for(k.skipBits(8*A);8*(w+p)-k.pos>O;){const E=k.readBits(8);k.skipBits(3);const C=k.readBits(13);k.skipBits(6);const P=k.readBits(10),$=k.pos+8*P;let M=!1,R=!1;for(;k.pos<$;){const Z=k.readBits(8),D=k.readBits(8);Z===106?M=!0:(Z===122||Z===204)&&(R=!0),k.skipBits(8*D)}let N=null;switch(E){case 27:case 36:N={type:"video",codec:E===27?"avc":"hevc",decoderConfig:null,avcCodecInfo:null,hevcCodecInfo:null,colorSpace:{primaries:null,transfer:null,matrix:null,fullRange:null},width:-1,height:-1,squarePixelWidth:-1,squarePixelHeight:-1,reorderSize:-1};break;case 3:case 4:case 15:case 129:case 135:{let Z;if(E===3||E===4)Z="mp3";else if(E===15)Z="aac";else if(E===129)Z="ac3";else if(E===135)Z="eac3";else throw new Error("Unreachable.");N={type:"audio",codec:Z,decoderConfig:null,aacCodecInfo:null,numberOfChannels:-1,sampleRate:-1}}break;case 6:R?N={type:"audio",codec:"eac3",decoderConfig:null,aacCodecInfo:null,numberOfChannels:-1,sampleRate:-1}:M&&(N={type:"audio",codec:"ac3",decoderConfig:null,aacCodecInfo:null,numberOfChannels:-1,sampleRate:-1});break;default:x5.has(E)||(console.warn(`Note: MPEG-TS streams with stream_type 0x${E.toString(16)} are not currently supported.`),x5.add(E))}N&&this.elementaryStreams.push({demuxer:this,pid:C,streamType:E,initialized:!1,firstSection:null,canBeTrustedWithKeyPackets:!1,info:N,referencePesPackets:[]})}u=!0}else{const k=this.elementaryStreams.find(T=>T.pid===m.pid);e:if(k&&!k.initialized){const T=Go(m,!0);if(!T)throw new Error(`Couldn't read first PES packet for Elementary Stream with PID ${k.pid}`);if(k.firstSection=m,k.canBeTrustedWithKeyPackets=m.randomAccessIndicator===1,this.input._initInput){const E=(await this.input._initInput._getDemuxer()).elementaryStreams.find(C=>C.pid===m.pid&&C.info.codec===k.info.codec);if(E){k.info=E.info,k.initialized=!0;break e}}const w=new Gu(k,T);if(k.info.type==="video"){for(;;){const A=w;if(A.suppliedPacket=null,await w.markNextPacket(),k.info.codec==="avc"){if(!w.suppliedPacket)throw new Error("Invalid AVC video stream; could not extract AVCDecoderConfigurationRecord from any packet.");if(k.info.avcCodecInfo=g7(w.suppliedPacket.data),!k.info.avcCodecInfo)continue;const E=k.info.avcCodecInfo.sequenceParameterSets[0];G(E);const C=y7(E);k.info.width=C.displayWidth,k.info.height=C.displayHeight;const P=C.pixelAspectRatio.num,$=C.pixelAspectRatio.den;P>0&&$>0&&(P>$?(k.info.squarePixelWidth=Math.round(k.info.width*P/$),k.info.squarePixelHeight=k.info.height):(k.info.squarePixelWidth=k.info.width,k.info.squarePixelHeight=Math.round(k.info.height*$/P))),k.info.colorSpace={primaries:Rh[C.colourPrimaries],transfer:Qh[C.transferCharacteristics],matrix:_h[C.matrixCoefficients],fullRange:!!C.fullRangeFlag},k.info.reorderSize=C.maxDecFrameBuffering;break}else if(k.info.codec==="hevc"){if(!w.suppliedPacket)throw new Error("Invalid HEVC video stream; could not extract HVCDecoderConfigurationRecord from first packet.");if(k.info.hevcCodecInfo=x7(w.suppliedPacket.data),!k.info.hevcCodecInfo)continue;const C=k.info.hevcCodecInfo.arrays.find($=>$.nalUnitType===ar.SPS_NUT).nalUnits[0];G(C);const P=b7(C);k.info.width=P.displayWidth,k.info.height=P.displayHeight,P.pixelAspectRatio.num>P.pixelAspectRatio.den?(k.info.squarePixelWidth=Math.round(k.info.width*P.pixelAspectRatio.num/P.pixelAspectRatio.den),k.info.squarePixelHeight=k.info.height):(k.info.squarePixelWidth=k.info.width,k.info.squarePixelHeight=Math.round(k.info.height*P.pixelAspectRatio.den/P.pixelAspectRatio.num)),k.info.colorSpace={primaries:Rh[P.colourPrimaries],transfer:Qh[P.transferCharacteristics],matrix:_h[P.matrixCoefficients],fullRange:!!P.fullRangeFlag},k.info.reorderSize=P.maxDecFrameBuffering;break}else throw new Error("Unhandled.")}k.info.decoderConfig={codec:qO({width:k.info.width,height:k.info.height,codec:k.info.codec,codecDescription:null,colorSpace:k.info.colorSpace,avcType:1,avcCodecInfo:k.info.avcCodecInfo,hevcCodecInfo:k.info.hevcCodecInfo,vp9CodecInfo:null,av1CodecInfo:null}),codedWidth:k.info.width,codedHeight:k.info.height,colorSpace:k.info.colorSpace},(k.info.width!==k.info.squarePixelWidth||k.info.height!==k.info.squarePixelHeight)&&(k.info.decoderConfig.displayAspectWidth=k.info.squarePixelWidth,k.info.decoderConfig.displayAspectHeight=k.info.squarePixelHeight),k.initialized=!0}else{if(await w.markNextPacket(),!w.suppliedPacket)throw new Error(`Couldn't parse first media packet for Elementary Stream with PID ${k.pid}`);if(k.info.codec==="aac"){const A=Oi.tempFromBytes(w.suppliedPacket.data),E=Q0(A);if(!E)throw new Error("Invalid AAC audio stream; could not read ADTS frame header from first packet.");k.info.aacCodecInfo={isMpeg2:!1,objectType:E.objectType},k.info.numberOfChannels=UO[E.channelConfiguration],k.info.sampleRate=$0[E.samplingFrequencyIndex]}else if(k.info.codec==="mp3"){const A=Ee(Oi.tempFromBytes(w.suppliedPacket.data)),E=WO(A,w.suppliedPacket.data.byteLength);if(!E.header)throw new Error("Invalid MP3 audio stream; could not read frame header from first packet.");k.info.numberOfChannels=E.header.channel===3?1:2,k.info.sampleRate=E.header.sampleRate}else if(k.info.codec==="ac3"){const A=T_(w.suppliedPacket.data);if(!A)throw new Error("Invalid AC-3 audio stream; could not read sync frame from first packet.");if(A.fscod===3)throw new Error("Invalid AC-3 audio stream; reserved sample rate code found in first packet.");k.info.numberOfChannels=KO[A.acmod]+A.lfeon,k.info.sampleRate=C1[A.fscod]}else if(k.info.codec==="eac3"){const A=C_(w.suppliedPacket.data);if(!A)throw new Error("Invalid E-AC-3 audio stream; could not read sync frame from first packet.");const E=A7(A);if(E===null)throw new Error("Invalid E-AC-3 audio stream; reserved sample rate code found in first packet.");k.info.numberOfChannels=P7(A),k.info.sampleRate=E}else throw new Error("Unhandled.");k.info.decoderConfig={codec:YO({codec:k.info.codec,codecDescription:null,aacCodecInfo:k.info.aacCodecInfo}),numberOfChannels:k.info.numberOfChannels,sampleRate:k.info.sampleRate},k.initialized=!0}}}if(u&&this.elementaryStreams.every(k=>k.initialized))break;a+=this.packetStride}if(!u)throw o?new Error("No Program Map Table found in the file."):new Error("No Program Association Table found in the file.");for(const d of this.elementaryStreams)d.info.type==="video"?this.trackBackingEntries.push(new gN(d)):this.trackBackingEntries.push(new ON(d))})())}async getTrackBackings(){return await this.readMetadata(),this.trackBackingEntries}async getMetadataTags(){return{}}async getMimeType(){await this.readMetadata();const e=await Promise.all(this.trackBackingEntries.map(t=>t.getDecoderConfig().then(r=>(r==null?void 0:r.codec)??null)));return mN(e)}async readSection(e,t,r=!1){let i=e,a=e;const s=[];let o=0,u=null,d=!0,m=0;for(;;){const O=await this.readPacket(a);if(a+=this.packetStride,!O)break;if(u){if(O.pid!==u.pid){if(r)break;continue}if(O.payloadUnitStartIndicator===1)break}else{if(O.payloadUnitStartIndicator===0)break;u=O}const b=!!(O.adaptationFieldControl&2),S=!!(O.adaptationFieldControl&1);let k=0;if(b&&(k=1+O.body[0],O===u&&k>1&&(m=O.body[1]>>6&1)),S&&(k===0?(s.push(O.body),o+=O.body.byteLength):(s.push(O.body.subarray(k)),o+=O.body.byteLength-k)),i=a,!t&&o>=64){d=!1;break}if(K0(this.sectionEndPositions,i,w=>w)!==-1){d=!1;break}}if(d){const O=Ot(this.sectionEndPositions,i,b=>b);this.sectionEndPositions.splice(O+1,0,i)}if(!u)return null;let p;if(s.length===1)p=s[0];else{const O=s.reduce((S,k)=>S+k.length,0);p=new Uint8Array(O);let b=0;for(const S of s)p.set(S,b),b+=S.length}return{startPos:e,endPos:t?i:null,pid:u.pid,payload:p,randomAccessIndicator:m}}async readPacketHeader(e){let t=this.reader.requestSlice(e,4);if(t instanceof Promise&&(t=await t),!t)return null;if(Ie(t)!==71)throw new Error("Invalid TS packet sync byte. Likely an internal bug, please report this file.");const i=Kt(t),a=i>>14&1,s=i&8191,u=Ie(t)>>4&3;return{payloadUnitStartIndicator:a,pid:s,adaptationFieldControl:u}}async readPacket(e){let t=this.reader.requestSlice(e,Pr);if(t instanceof Promise&&(t=await t),!t)return null;const r=He(t,Pr);if(r[0]!==71)throw new Error("Invalid TS packet sync byte. Likely an internal bug, please report this file.");const a=(r[1]<<8)+r[2],s=a>>14&1,o=a&8191,d=r[3]>>4&3;return{payloadUnitStartIndicator:s,pid:o,adaptationFieldControl:d,body:r.subarray(4)}}}const fl=(n,e)=>{if(n.payload.byteLength<3)return null;const t=new kt(n.payload);if(t.readBits(24)!==1)return null;const i=t.readBits(8);if(t.skipBits(16),i===188||i===190||i===191||i===240||i===241||i===255||i===242||i===248)return null;t.skipBits(8);const a=t.readBits(2);t.skipBits(14);let s=null;if(a===2||a===3)s=0,t.skipBits(4),s+=t.readBits(3)*(1<<30),t.skipBits(1),s+=t.readBits(15)*32768,t.skipBits(1),s+=t.readBits(15);else if(e)throw new Error(B7);return{sectionStartPos:n.startPos,sectionEndPos:n.endPos,pts:s,randomAccessIndicator:n.randomAccessIndicator}},Go=(n,e)=>{G(n.endPos!==null);const t=fl(n,e);if(!t)return null;const r=new kt(n.payload);r.skipBits(32);const i=r.readBits(16),a=6;r.skipBits(16);const s=r.readBits(8),o=r.pos+8*s;r.pos=o;const u=o/8;G(Number.isInteger(u));const d=n.payload.subarray(u,i>0?a+i:n.payload.byteLength);return{...t,data:d}};class $1{constructor(e){this.elementaryStream=e,this.packetBuffers=new WeakMap,this.packetSectionStarts=new WeakMap}getId(){return this.elementaryStream.pid}getNumber(){const e=this.elementaryStream.demuxer,t=this.elementaryStream.info.type;let r=0;for(const i of e.trackBackingEntries)if(i.getType()===t&&r++,G(i instanceof $1),i.elementaryStream===this.elementaryStream)break;return r}getCodec(){throw new Error("Not implemented on base class.")}getInternalCodecId(){return this.elementaryStream.streamType}getName(){return null}getLanguageCode(){return Bn}getDisposition(){return{...Xa,primary:!1}}getTimeResolution(){return $a}isRelativeToUnixEpoch(){return!1}getPairingMask(){return 1n}getBitrate(){return null}getAverageBitrate(){return null}async getDurationFromMetadata(){return null}async getLiveRefreshInterval(){return null}createEncodedPacket(e,t,r){let i;return this.allPacketsAreKeyPackets()?i="key":i=e.randomAccessIndicator===1?"key":"delta",new bn(r.metadataOnly?Qr:e.data,i,e.pts/$a,Math.max(t/$a,0),e.sequenceNumber,e.data.byteLength)}async getFirstPacket(e){const t=this.elementaryStream.firstSection;G(t);const r=Go(t,!0);G(r);const i=new Gu(this.elementaryStream,r),a=new Mg(this,i),s=await a.readNext();if(!s)return null;const o=this.createEncodedPacket(s.packet,s.duration,e);return this.packetBuffers.set(o,a),this.packetSectionStarts.set(o,s.packet.sectionStartPos),o}async getNextPacket(e,t){let r=this.packetBuffers.get(e);if(r){const m=await r.readNext();if(!m)return null;this.packetBuffers.delete(e);const p=this.createEncodedPacket(m.packet,m.duration,t);return this.packetBuffers.set(p,r),this.packetSectionStarts.set(p,m.packet.sectionStartPos),p}const i=this.packetSectionStarts.get(e);if(i===void 0)throw new Error("Packet was not created from this track.");const s=await this.elementaryStream.demuxer.readSection(i,!0);G(s);const o=Go(s,!0);G(o);const u=new Gu(this.elementaryStream,o);r=new Mg(this,u);const d=e.sequenceNumber;for(;;){const m=await r.readNext();if(!m)return null;if(m.packet.sequenceNumber>d){const p=this.createEncodedPacket(m.packet,m.duration,t);return this.packetBuffers.set(p,r),this.packetSectionStarts.set(p,m.packet.sectionStartPos),p}}}async getNextKeyPacket(e,t){let r=e;for(;;){if(r=await this.getNextPacket(r,t),!r)return null;if(r.type==="key")return r}}getPacket(e,t){return this.doPacketLookup(e,!1,t)}getKeyPacket(e,t){return this.doPacketLookup(e,!0,t)}async doPacketLookup(e,t,r){var C;const i=M0(e*$a),a=this.elementaryStream.demuxer,{reader:s,seekChunkSize:o}=a,u=this.elementaryStream.pid,d=async(P,$,M)=>{let R=P;for(;R<$;){const N=await a.readPacketHeader(R);if(!N)return null;if(N.pid===u&&N.payloadUnitStartIndicator===1){const Z=await a.readSection(R,M);if(!Z)return null;const D=fl(Z,!1);if(D&&D.pts!==null)return{pesPacketHeader:D,section:Z}}R+=a.packetStride}return null},m=this.elementaryStream.firstSection;G(m);const p=fl(m,!0);if(G(p),i<p.pts)return null;let O;const b=this.elementaryStream.referencePesPackets,S=Ot(b,i,P=>P.pts),k=S!==-1?b[S]:null;if(k&&i-k.pts<$a/2)O=k.sectionStartPos;else{let P=0;if(s.fileSize!==null){const $=Math.ceil(s.fileSize/o);if($>1){let M=0,R=$-1;for(P=M;M<=R;){const N=Math.floor((M+R)/2),Z=kg(N*o,a.packetStride)+p.sectionStartPos,D=Z+o,I=await d(Z,D,!1);if(!I){R=N-1;continue}I.pesPacketHeader.pts<=i?(P=N,M=N+1):R=N-1}}}O=kg(P*o,a.packetStride)+p.sectionStartPos}const T=await d(O,s.fileSize??1/0,!1);let w=(T==null?void 0:T.pesPacketHeader)??null;w||(w=p);const A=this.getReorderSize(),E=async(P,$)=>{var L;const M=await a.readSection(P,!0);G(M);const R=Go(M,!0);G(R);const N=new Gu(this.elementaryStream,R),Z=new Mg(this,N);for(;!((((L=Rr(Z.presentationOrderPackets))==null?void 0:L.pts)??-1/0)>=i||!await Z.readNextPacket()););const D=HO(Z.presentationOrderPackets,$);if(D===-1)return null;const I=Z.presentationOrderPackets[D],U=D===0?0:I.pts-Z.presentationOrderPackets[D-1].pts;for(;Z.decodeOrderPackets[0]!==I;)Z.decodeOrderPackets.shift();Z.lastDuration=U;const K=await Z.readNext();G(K);const q=this.createEncodedPacket(K.packet,K.duration,r);return this.packetBuffers.set(q,Z),this.packetSectionStarts.set(q,K.packet.sectionStartPos),q};if(!t||this.allPacketsAreKeyPackets()){e:for(;;){let P=w.sectionStartPos+a.packetStride;for(;;){const $=await a.readPacketHeader(P);if(!$)break e;if($.pid===u&&$.payloadUnitStartIndicator===1){const M=await a.readSection(P,!1);if(M){const R=fl(M,!1);if(R&&R.pts!==null){if(R.pts>i)break e;w=R,h8(this.elementaryStream,w);break}}}P+=a.packetStride}}e:for(let P=0;P<A+1;P++){let $=w.sectionStartPos-a.packetStride;for(;$>=a.packetOffset;){const M=await a.readPacketHeader($);if(!M)break e;if(M.pid===u&&M.payloadUnitStartIndicator===1){const R=await a.readSection($,!1);if(R){const N=fl(R,!1);if(N&&N.pts!==null){w=N;break}}}$-=a.packetStride}}return E(w.sectionStartPos,P=>P.pts<=i)}else{let P=O,$=null;const M=!this.elementaryStream.canBeTrustedWithKeyPackets;for(;;){let R=null;const N=P<=p.sectionStartPos;let Z,D=null;if(N)Z=p,D=m;else{const K=await d(P,s.fileSize??1/0,M);Z=(K==null?void 0:K.pesPacketHeader)??null,D=(K==null?void 0:K.section)??null}let I=!1,U=0;e:for(;Z&&!($!==null&&Z.sectionStartPos>=$);){if(Z.pts<=i){let q;if(this.elementaryStream.canBeTrustedWithKeyPackets)q=Z.randomAccessIndicator===1;else{G(D);const L=Go(D,!0);G(L);const W=new Gu(this.elementaryStream,L);await W.markNextPacket(),q=((C=W.suppliedPacket)==null?void 0:C.randomAccessIndicator)===1}q&&(R=Z)}if(Z.pts>i&&(I=!0),I&&(U++,U>A))break;let K=Z.sectionStartPos+a.packetStride;for(;;){const q=await a.readPacketHeader(K);if(!q)break e;if(q.pid===u&&q.payloadUnitStartIndicator===1){const L=await a.readSection(K,M);if(L){const W=fl(L,!1);if(W&&W.pts!==null){Z=W,D=L,h8(this.elementaryStream,Z);break}}}K+=a.packetStride}}if(R){let K=R;if(U===0)e:for(let L=0;L<A;L++){let W=K.sectionStartPos-a.packetStride;for(;W>=a.packetOffset;){const ee=await a.readPacketHeader(W);if(!ee)break e;if(ee.pid===u&&ee.payloadUnitStartIndicator===1){const X=await a.readSection(W,M);if(X){const B=fl(X,!1);if(B&&B.pts!==null){K=B;break}}}W-=a.packetStride}}const q=await E(K.sectionStartPos,L=>L.pts<=i&&L.randomAccessIndicator===1);return G(q),q}if(N)return null;$=P,P=Math.max(kg(P-p.sectionStartPos-o,a.packetStride)+p.sectionStartPos,p.sectionStartPos)}}}}class gN extends $1{getType(){return"video"}getCodec(){return this.elementaryStream.info.codec}getCodedWidth(){return this.elementaryStream.info.width}getCodedHeight(){return this.elementaryStream.info.height}getSquarePixelWidth(){return this.elementaryStream.info.squarePixelWidth}getSquarePixelHeight(){return this.elementaryStream.info.squarePixelHeight}getRotation(){return 0}async getColorSpace(){return this.elementaryStream.info.colorSpace}async canBeTransparent(){return!1}async getDecoderConfig(){return G(this.elementaryStream.info.decoderConfig),this.elementaryStream.info.decoderConfig}allPacketsAreKeyPackets(){return!1}getReorderSize(){return this.elementaryStream.info.reorderSize}}class ON extends $1{getType(){return"audio"}getCodec(){return this.elementaryStream.info.codec}getNumberOfChannels(){return this.elementaryStream.info.numberOfChannels}getSampleRate(){return this.elementaryStream.info.sampleRate}async getDecoderConfig(){return G(this.elementaryStream.info.decoderConfig),this.elementaryStream.info.decoderConfig}allPacketsAreKeyPackets(){return!0}getReorderSize(){return 0}}const h8=(n,e)=>{const t=n.referencePesPackets,r=Ot(t,e.sectionStartPos,i=>i.sectionStartPos);if(r>=0){const i=t[r];if(e.pts<=i.pts)return!1;const a=n.demuxer.minReferencePointByteDistance;if(e.sectionStartPos-i.sectionStartPos<a)return!1;if(r<t.length-1){const s=t[r+1];if(s.pts<e.pts||s.sectionStartPos-e.sectionStartPos<a)return!1}}return t.splice(r+1,0,e),!0};class Gu{constructor(e,t){this.currentPos=0,this.pesPackets=[],this.currentPesPacketIndex=0,this.currentPesPacketPos=0,this.endPos=0,this.lastSuppliedPesPacket=null,this.nextPts=null,this.suppliedPacket=null,this.elementaryStream=e,this.pid=e.pid,this.demuxer=e.demuxer,this.startingPesPacket=t}ensureBuffered(e){const t=this.endPos-this.currentPos;return t>=e?e:this.bufferData(e-t).then(()=>Math.min(this.endPos-this.currentPos,e))}getCurrentPesPacket(){const e=this.pesPackets[this.currentPesPacketIndex];return G(e),e}async bufferData(e){const t=this.endPos+e;for(;this.endPos<t;){let r;if(this.pesPackets.length===0)r=this.startingPesPacket;else{let i=Rr(this.pesPackets).sectionEndPos;for(G(i!==null);;){const a=await this.demuxer.readPacketHeader(i);if(!a)return;if(a.pid===this.pid){const s=await this.demuxer.readSection(i,!0);if(!s)return;const o=Go(s,!1);if(o){r=o;break}}i+=this.demuxer.packetStride}}this.pesPackets.push(r),this.endPos+=r.data.byteLength}}readBytes(e){const t=this.getCurrentPesPacket(),r=this.currentPos-this.currentPesPacketPos,i=r+e;if(this.currentPos+=e,i<=t.data.byteLength)return t.data.subarray(r,i);const a=new Uint8Array(e);a.set(t.data.subarray(r));let s=t.data.byteLength-r;for(;;){this.advanceCurrentPacket();const o=this.getCurrentPesPacket(),u=e-s;if(u<=o.data.byteLength){a.set(o.data.subarray(0,u),s);break}a.set(o.data,s),s+=o.data.byteLength}return a}readU8(){let e=this.getCurrentPesPacket();const t=this.currentPos-this.currentPesPacketPos;return this.currentPos++,t<e.data.byteLength?e.data[t]:(this.advanceCurrentPacket(),e=this.getCurrentPesPacket(),e.data[0])}seekTo(e){if(e!==this.currentPos){if(e<this.currentPos)for(;e<this.currentPesPacketPos;){this.currentPesPacketIndex--;const t=this.getCurrentPesPacket();this.currentPesPacketPos-=t.data.byteLength}else for(;;){const t=this.getCurrentPesPacket(),r=this.currentPesPacketPos+t.data.byteLength;if(e<r)break;this.currentPesPacketPos+=t.data.byteLength,this.currentPesPacketIndex++}this.currentPos=e}}skip(e){this.seekTo(this.currentPos+e)}advanceCurrentPacket(){this.currentPesPacketPos+=this.getCurrentPesPacket().data.byteLength,this.currentPesPacketIndex++}async markNextPacket(){G(!this.suppliedPacket);const e=this.elementaryStream;if(e.info.type==="video"){const t=e.info.codec,r=1024;if(t!=="avc"&&t!=="hevc")throw new Error("Unhandled.");let i=null;for(;;){let a=this.ensureBuffered(r);if(a instanceof Promise&&(a=await a),a===0)break;const s=this.currentPos,o=this.readBytes(a),u=o.byteLength;let d=0;for(;d<u;){const m=o.indexOf(0,d);if(m===-1||m>=u)break;d=m;const p=s+d;if(d+4>=u){this.seekTo(p);break}const O=o[d+1],b=o[d+2],S=o[d+3];let k=0,T=null;if(O===0&&b===0&&S===1?(k=4,T=o[d+4]):O===0&&b===1&&(k=3,T=S),k===0){d++;continue}const w=p;if(i===null){i=w,d+=k;continue}if(T!==null){const A=t==="avc"?GO(T):jh(T);if(t==="avc"?A===Li.AUD:A===ar.AUD_NUT){const C=w-i;return this.seekTo(i),this.supplyPacket(C,0)}}d+=k}if(a<r)break}if(i!==null){const a=this.endPos-i;return this.seekTo(i),this.supplyPacket(a,0)}}else{const t=e.info.codec,r=128;for(;;){let i=this.ensureBuffered(r);i instanceof Promise&&(i=await i);const a=this.currentPos;for(;this.currentPos-a<i;){const s=this.readU8();if(t==="aac"){if(s!==255)continue;this.skip(-1);const o=this.currentPos;let u=this.ensureBuffered(fc);if(u instanceof Promise&&(u=await u),u<fc)return;const d=this.readBytes(fc),m=Q0(Oi.tempFromBytes(d));if(m){this.seekTo(o);let p=this.ensureBuffered(m.frameLength);return p instanceof Promise&&(p=await p),this.supplyPacket(p,Math.round(Dh*$a/e.info.sampleRate))}else this.seekTo(o+1)}else if(t==="mp3"){if(s!==255)continue;this.skip(-1);const o=this.currentPos;let u=this.ensureBuffered(vl);if(u instanceof Promise&&(u=await u),u<vl)return;const d=this.readBytes(vl),m=Dt(d).getUint32(0),p=WO(m,null);if(p.header){this.seekTo(o);let O=this.ensureBuffered(p.header.totalSize);O instanceof Promise&&(O=await O);const b=p.header.audioSamplesInFrame*$a/e.info.sampleRate;return this.supplyPacket(O,Math.round(b))}else this.seekTo(o+1)}else if(t==="ac3"){if(s!==11)continue;this.skip(-1);const o=this.currentPos;let u=this.ensureBuffered(5);if(u instanceof Promise&&(u=await u),u<5)return;const d=this.readBytes(5);if(d[0]!==11||d[1]!==119){this.seekTo(o+1);continue}const m=d[4]>>6,p=d[4]&63;if(m===3||p>37){this.seekTo(o+1);continue}const O=A_[3*p+m];G(O!==void 0),this.seekTo(o),u=this.ensureBuffered(O),u instanceof Promise&&(u=await u);const b=Math.round(P_*$a/e.info.sampleRate);return this.supplyPacket(u,b)}else if(t==="eac3"){if(s!==11)continue;this.skip(-1);const o=this.currentPos;let u=this.ensureBuffered(5);if(u instanceof Promise&&(u=await u),u<5)return;const d=this.readBytes(5);if(d[0]!==11||d[1]!==119){this.seekTo(o+1);continue}const p=(((d[2]&7)<<8|d[3])+1)*2,b=d[4]>>6===3?3:d[4]>>4&3,S=T7[b];this.seekTo(o),u=this.ensureBuffered(p),u instanceof Promise&&(u=await u);const k=S*256,T=Math.round(k*$a/e.info.sampleRate);return this.supplyPacket(u,T)}else throw new Error("Unhandled.")}if(i<r)break}}}supplyPacket(e,t){const r=this.getCurrentPesPacket();let i;if(this.lastSuppliedPesPacket===r)G(this.nextPts!==null),i=this.nextPts;else{if(r.pts===null)throw new Error(B7);i=r.pts,h8(this.elementaryStream,r)}this.lastSuppliedPesPacket=r,this.nextPts=i+t;const a=r.sectionStartPos,s=a+(this.currentPos-this.currentPesPacketPos),o=this.readBytes(e);let u=r.randomAccessIndicator;if(u===0&&!this.elementaryStream.canBeTrustedWithKeyPackets){if(this.elementaryStream.info.type==="audio")u=1;else if(this.elementaryStream.info.decoderConfig){const d=w7(this.elementaryStream.info.codec,this.elementaryStream.info.decoderConfig,o)==="key";u=Number(d)}}this.suppliedPacket={pts:i,data:o,sequenceNumber:s,sectionStartPos:a,randomAccessIndicator:u},this.pesPackets.splice(0,this.currentPesPacketIndex),this.currentPesPacketIndex=0}}class Mg{constructor(e,t){this.decodeOrderPackets=[],this.reorderBuffer=[],this.presentationOrderPackets=[],this.reachedEnd=!1,this.lastDuration=0,this.backing=e,this.context=t,this.reorderSize=e.getReorderSize(),G(this.reorderSize>=0)}async readNext(){if(this.decodeOrderPackets.length===0&&!await this.readNextPacket())return null;await this.ensureCurrentPacketHasNext();const e=this.decodeOrderPackets[0],t=this.presentationOrderPackets.indexOf(e);G(t!==-1);let r;for(t===this.presentationOrderPackets.length-1?r=this.lastDuration:(r=this.presentationOrderPackets[t+1].pts-e.pts,this.lastDuration=r),this.decodeOrderPackets.shift();this.presentationOrderPackets.length>0;){const i=this.presentationOrderPackets[0];if(this.decodeOrderPackets.includes(i))break;this.presentationOrderPackets.shift()}return{packet:e,duration:r}}async readNextPacket(){if(this.reachedEnd)return!1;let e;return this.context.suppliedPacket?e=this.context.suppliedPacket:(await this.context.markNextPacket(),e=this.context.suppliedPacket),this.context.suppliedPacket=null,e?(this.decodeOrderPackets.push(e),this.processPacketThroughReorderBuffer(e),!0):(this.reachedEnd=!0,this.flushReorderBuffer(),!1)}async ensureCurrentPacketHasNext(){const e=this.decodeOrderPackets[0];for(G(e);;){const t=this.presentationOrderPackets.indexOf(e);if(t!==-1&&t<=this.presentationOrderPackets.length-2||!await this.readNextPacket())break}}processPacketThroughReorderBuffer(e){if(this.reorderBuffer.push(e),this.reorderBuffer.length>this.reorderSize){let t=0;for(let i=1;i<this.reorderBuffer.length;i++)this.reorderBuffer[i].pts<this.reorderBuffer[t].pts&&(t=i);const r=this.reorderBuffer[t];this.presentationOrderPackets.push(r),this.reorderBuffer.splice(t,1)}}flushReorderBuffer(){this.reorderBuffer.sort((e,t)=>e.pts-t.pts),this.presentationOrderPackets.push(...this.reorderBuffer),this.reorderBuffer.length=0}}/*!
238
- * Copyright (c) 2026-present, Vanilagy and contributors
239
- *
240
- * This Source Code Form is subject to the terms of the Mozilla Public
241
- * License, v. 2.0. If a copy of the MPL was not distributed with this
242
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
243
- */const H7="application/vnd.apple.mpegurl",S5="#EXT-X-STREAM-INF:",k5="#EXT-X-I-FRAME-STREAM-INF:",v5="#EXT-X-MEDIA:",m8="#EXTINF:",w5="#EXT-X-MAP:",T5="#EXT-X-KEY:",A5="#EXT-X-MEDIA-SEQUENCE:",P5="#EXT-X-BYTERANGE:",C5="#EXT-X-PROGRAM-DATE-TIME:",yN="#EXT-X-DISCONTINUITY",E5="#EXT-X-TARGETDURATION:",bN="#EXT-X-ENDLIST",M5="#EXT-X-PLAYLIST-TYPE:",xN="#EXT-X-I-FRAMES-ONLY",F7=n=>n.length===0||n.startsWith("#")&&!n.startsWith("#EXT");class c0{constructor(e){this._attributes={};let t="",r="",i=!1,a=!1;for(let s=0;s<e.length;s++){const o=e[s];o==='"'?a=!a:o==="="&&!i&&!a?i=!0:o===","&&!a?(t&&(this._attributes[t.trim().toLowerCase()]=r),t="",r="",i=!1):i?r+=o:t+=o}t&&(this._attributes[t.trim().toLowerCase()]=r)}get(e){return this._attributes[e.toLowerCase()]??null}getAsNumber(e){const t=this.get(e);if(t===null)return null;const r=Number(t);return Number.isFinite(r)?r:null}merge(e){Object.assign(this._attributes,e._attributes)}}/*!
244
- * Copyright (c) 2026-present, Vanilagy and contributors
245
- *
246
- * This Source Code Form is subject to the terms of the Mozilla Public
247
- * License, v. 2.0. If a copy of the MPL was not distributed with this
248
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
249
- */class SN{constructor(e,t,r){this.nextInputCacheAge=0,this.inputCache=[],this.trackBackingsPromise=null,this.firstSegment=null,this.firstSegmentFirstTimestamps=new WeakMap,this.firstTimestampCache=new WeakMap,this.input=e,this.path=t,this.trackDeclarations=r}async getDurationFromMetadata(e){const t=await this.getSegmentAt(1/0,{skipLiveWait:e.skipLiveWait});return t?t.timestamp+t.duration:null}async getTrackBackings(){return this.trackBackingsPromise??(this.trackBackingsPromise=(async()=>{const e=[];if(this.trackDeclarations){for(const t of this.trackDeclarations)if(t.type==="video"){const r=qu(e,i=>i.getType()==="video")+1;e.push(new $5(this,t,r))}else if(t.type==="audio"){const r=qu(e,i=>i.getType()==="audio")+1;e.push(new R5(this,t,r))}}else{if(this.firstSegment=await this.getFirstSegment({}),!this.firstSegment)return[];const r=await this.getInputForSegment(this.firstSegment).getTracks();for(const i of r)if(i.type==="video"){const a=qu(e,s=>s.getType()==="video")+1;e.push(new $5(this,{id:e.length+1,type:"video"},a))}else if(i.type==="audio"){const a=qu(e,s=>s.getType()==="audio")+1;e.push(new R5(this,{id:e.length+1,type:"audio"},a))}}return e})())}async getFirstTimestampForInput(e){const t=this.firstTimestampCache.get(e);if(t!==void 0)return t;const r=await e.getFirstTimestamp();return this.firstTimestampCache.set(e,r),r}async getMediaOffset(e,t){const r=e.firstSegment??e;let i;if(this.firstSegmentFirstTimestamps.has(r))i=this.firstSegmentFirstTimestamps.get(r);else{const d=this.getInputForSegment(r);i=await this.getFirstTimestampForInput(d),this.firstSegmentFirstTimestamps.set(r,i)}if(r===e)return r.timestamp-i;const a=await this.getFirstTimestampForInput(t),s=e.timestamp-r.timestamp,u=a-i-s;return Math.abs(u)<=Math.min(.25,s)?r.timestamp-i:e.timestamp-a}dispose(){for(const e of this.inputCache)e.input.dispose();this.inputCache.length=0}}class X7{constructor(e,t,r){this.packetInfos=new WeakMap,this.hydrationPromise=null,this.firstInputTrack=null,this.segmentedInput=e,this.decl=t,this.number=r}hydrate(){return this.hydrationPromise??(this.hydrationPromise=(async()=>{var i;if((i=this.segmentedInput).firstSegment??(i.firstSegment=await this.segmentedInput.getFirstSegment({})),!this.segmentedInput.firstSegment)throw new Error("Missing first segment, can't retrieve track.");const r=(await this.segmentedInput.getInputForSegment(this.segmentedInput.firstSegment).getTracks()).find(a=>a.type===this.decl.type&&a.number===this.number);if(!r)throw new Error("No matching track found in underlying media data.");this.firstInputTrack=r})())}getId(){return this.decl.id}getType(){return this.decl.type}getNumber(){return this.number}delegate(e){return this.firstInputTrack?e():this.hydrate().then(e)}async getDecoderConfig(){return this.delegate(()=>this.firstInputTrack._backing.getDecoderConfig())}getHasOnlyKeyPackets(){return this.delegate(()=>{var e,t;return((t=(e=this.firstInputTrack._backing).getHasOnlyKeyPackets)==null?void 0:t.call(e))??null})}getPairingMask(){return 1n}getCodec(){return this.delegate(()=>this.firstInputTrack._backing.getCodec())}getInternalCodecId(){return this.delegate(()=>this.firstInputTrack._backing.getInternalCodecId())}getDisposition(){return this.delegate(()=>this.firstInputTrack._backing.getDisposition())}getLanguageCode(){return this.delegate(()=>this.firstInputTrack._backing.getLanguageCode())}getName(){return this.delegate(()=>this.firstInputTrack._backing.getName())}getTimeResolution(){return this.delegate(()=>this.firstInputTrack._backing.getTimeResolution())}async isRelativeToUnixEpoch(){return await this.hydrate(),G(this.segmentedInput.firstSegment),this.segmentedInput.firstSegment.relativeToUnixEpoch}getBitrate(){return this.delegate(()=>this.firstInputTrack._backing.getBitrate())}getAverageBitrate(){return this.delegate(()=>this.firstInputTrack._backing.getAverageBitrate())}getDurationFromMetadata(e){return this.segmentedInput.getDurationFromMetadata(e)}getLiveRefreshInterval(){return this.segmentedInput.getLiveRefreshInterval()}async createAdjustedPacket(e,t,r){G(e.sequenceNumber>=0),G(this.segmentedInput.firstSegment);const i=await this.segmentedInput.getMediaOffset(t,r.input),a=t.timestamp-this.segmentedInput.firstSegment.timestamp,s=e.clone({timestamp:r7(e.timestamp+i,await r.getTimeResolution()),sequenceNumber:Math.floor(1e8*a)+e.sequenceNumber});return this.packetInfos.set(s,{segment:t,track:r,sourcePacket:e}),s}async getFirstPacket(e){await this.hydrate(),G(this.segmentedInput.firstSegment),G(this.firstInputTrack);const t=await this.firstInputTrack._backing.getFirstPacket(e);return t?this.createAdjustedPacket(t,this.segmentedInput.firstSegment,this.firstInputTrack):null}getNextPacket(e,t){return this._getNextInternal(e,t,!1)}getNextKeyPacket(e,t){return this._getNextInternal(e,t,!0)}async _getNextInternal(e,t,r){const i=this.packetInfos.get(e);if(!i)throw new Error("Packet was not created from this track.");const a=r?await i.track._backing.getNextKeyPacket(i.sourcePacket,t):await i.track._backing.getNextPacket(i.sourcePacket,t);if(a)return this.createAdjustedPacket(a,i.segment,i.track);let s=i.segment;for(;;){const o=await this.segmentedInput.getNextSegment(s,{skipLiveWait:t.skipLiveWait});if(!o)return null;const m=(await this.segmentedInput.getInputForSegment(o).getTracks()).find(O=>O.type===i.track.type&&O.number===i.track.number);if(!m){s=o;continue}const p=await m._backing.getFirstPacket(t);return p?this.createAdjustedPacket(p,o,m):null}}getPacket(e,t){return this._getPacketInternal(e,t,!1)}getKeyPacket(e,t){return this._getPacketInternal(e,t,!0)}async _getPacketInternal(e,t,r){let i=await this.segmentedInput.getSegmentAt(e,{skipLiveWait:t.skipLiveWait});if(!i)return null;for(await this.hydrate();i;){const a=this.segmentedInput.getInputForSegment(i),o=(await a.getTracks()).find(p=>p.type===this.firstInputTrack.type&&p.number===this.firstInputTrack.number);if(!o){i=await this.segmentedInput.getPreviousSegment(i,{skipLiveWait:t.skipLiveWait});continue}const u=await this.segmentedInput.getMediaOffset(i,a),d=e-u,m=r?await o._backing.getKeyPacket(d,t):await o._backing.getPacket(d,t);if(!m){i=await this.segmentedInput.getPreviousSegment(i,{skipLiveWait:t.skipLiveWait});continue}return this.createAdjustedPacket(m,i,o)}return null}}class $5 extends X7{getType(){return"video"}getCodec(){return this.delegate(()=>this.firstInputTrack._backing.getCodec())}getCodedWidth(){return this.delegate(()=>this.firstInputTrack._backing.getCodedWidth())}getCodedHeight(){return this.delegate(()=>this.firstInputTrack._backing.getCodedHeight())}getSquarePixelWidth(){return this.delegate(()=>this.firstInputTrack._backing.getSquarePixelWidth())}getSquarePixelHeight(){return this.delegate(()=>this.firstInputTrack._backing.getSquarePixelHeight())}getRotation(){return this.delegate(()=>this.firstInputTrack._backing.getRotation())}async getColorSpace(){return this.delegate(()=>this.firstInputTrack._backing.getColorSpace())}async canBeTransparent(){return this.delegate(()=>this.firstInputTrack._backing.canBeTransparent())}async getDecoderConfig(){return this.delegate(()=>this.firstInputTrack._backing.getDecoderConfig())}}class R5 extends X7{getType(){return"audio"}getCodec(){return this.delegate(()=>this.firstInputTrack._backing.getCodec())}getNumberOfChannels(){return this.delegate(()=>this.firstInputTrack._backing.getNumberOfChannels())}getSampleRate(){return this.delegate(()=>this.firstInputTrack._backing.getSampleRate())}async getDecoderConfig(){return this.delegate(()=>this.firstInputTrack._backing.getDecoderConfig())}}/*!
250
- * Copyright (c) 2026-present, Vanilagy and contributors
251
- *
252
- * This Source Code Form is subject to the terms of the Mozilla Public
253
- * License, v. 2.0. If a copy of the MPL was not distributed with this
254
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
255
- */s7();const U7=0,q7=1/0;class Na extends o7{constructor(){super(...arguments),this._disposed=!1,this._refCount=0,this._usedForHls=!1,this._sizePromise=null,this.onread=null}async getSizeOrNull(){if(this._disposed)throw new di;return this._sizePromise??(this._sizePromise=(async()=>{let e=this._getFileSize();return e!==void 0||(await this._read(0,1,U7,q7),e=this._getFileSize(),G(e!==void 0)),e})())}async getSize(){if(this._disposed)throw new di;const e=await this.getSizeOrNull();if(e===null)throw new Error("Cannot determine the size of an unsized source.");return e}slice(e,t){if(!Number.isInteger(e)||e<0)throw new TypeError("offset must be a non-negative integer.");if(t!==void 0&&(!Number.isInteger(t)||t<0))throw new TypeError("length, when provided, must be a non-negative integer.");return new CN(this,e,t)}_dispatchRead(e,t){var r;(r=this.onread)==null||r.call(this,e,t),this._emit("read",{start:e,end:t})}ref(){return new t6(this)}}class t6{constructor(e){if(this._freed=!1,e._disposed)throw new Error("Cannot ref a disposed source.");e._refCount++,this._source=e}get source(){if(!this._source)throw new Error("Can't get source; ref has already been freed.");return this._source}get freed(){return this._freed}free(){if(this._freed)throw new Error("Illegal operation: double free on SourceRef.");const e=this.source;G(e._refCount>0),e._refCount--,e._refCount===0&&(e._dispose(),e._disposed=!0),this._freed=!0,this._source=null}[Symbol.dispose](){this.freed||this.free()}}class J0 extends Na{constructor(e,t){if(typeof e!="string")throw new TypeError("rootPath must be a string.");if(typeof t!="function")throw new TypeError("requestHandler must be a function.");super(),this.rootPath=e,this.requestHandler=t}_resolveRequest(e){const t=this.requestHandler(e),r=i=>{var s;if(!(i instanceof Na||i instanceof t6))throw new TypeError("requestHandler must return or resolve to a Source or SourceRef.");const a=i instanceof Na?i.ref():i;return(s=a.source)._usedForHls||(s._usedForHls=this._usedForHls),a};return t instanceof Promise?t.then(r):r(t)}}const Q5=(n,e)=>n.path===e.path;class kN extends J0{constructor(){super(...arguments),this._root=null,this._rootRequest=null}_read(e,t,r,i){if(!this._root){if(!this._rootRequest){const a=this._resolveRequest({path:this.rootPath,isRoot:!0}),s=o=>{const u=o instanceof Na?o.ref():o;return this._root=u,this._rootRequest=null,u};a instanceof Promise?this._rootRequest=a.then(s):(s(a),G(this._root))}if(this._rootRequest)return this._rootRequest.then(a=>a.source._read(e,t,r,i))}return this._root.source._read(e,t,r,i)}_getFileSize(){if(this._root)return this._root.source._getFileSize()}_dispose(){this._root?this._root.free():this._rootRequest&&this._rootRequest.then(e=>e.free())}}const vN=.5*2**20,wN=((n,e,t)=>{if(e instanceof Error&&(e.message.includes("Failed to fetch")||e.message.includes("Load failed")||e.message.includes("NetworkError when attempting to fetch resource"))&&typeof window<"u"){let i=null;try{typeof window<"u"&&typeof window.location<"u"&&(i=new URL(t instanceof Request?t.url:t,window.location.href).origin)}catch{}if((typeof navigator<"u"&&typeof navigator.onLine=="boolean"?navigator.onLine:!0)&&i!==null&&i!==window.location.origin)return console.warn("Request will not be retried because a CORS error was suspected due to different origins. You can modify this behavior by providing your own function for the 'getRetryDelay' option."),null}return Math.min(2**(n-2),16)}),_5=new Set;class n6 extends J0{constructor(e,t={}){if(typeof e!="string"&&!(e instanceof URL)&&!(typeof Request<"u"&&e instanceof Request))throw new TypeError("url must be a string, URL or Request.");if(!t||typeof t!="object")throw new TypeError("options must be an object.");if(t.requestInit!==void 0&&(!t.requestInit||typeof t.requestInit!="object"))throw new TypeError("options.requestInit, when provided, must be an object.");if(t.getRetryDelay!==void 0&&typeof t.getRetryDelay!="function")throw new TypeError("options.getRetryDelay, when provided, must be a function.");if(t.maxCacheSize!==void 0&&(!FO(t.maxCacheSize)||t.maxCacheSize<0))throw new TypeError("options.maxCacheSize, when provided, must be a non-negative number.");if(t.parallelism!==void 0&&(!Number.isInteger(t.parallelism)||t.parallelism<1))throw new TypeError("options.parallelism, when provided, must be a positive number.");if(t.fetchFn!==void 0&&typeof t.fetchFn!="function")throw new TypeError("options.fetchFn, when provided, must be a function.");const r=e instanceof Request?e.url:e instanceof URL?e.href:e;super(r,a=>new n6(a.path,this._options)),this._fileSizeDetermined=!1,this._url=e,this._options=t,this._getRetryDelay=t.getRetryDelay??wN;const i=2;this._orchestrator=new PN({maxCacheSize:t.maxCacheSize??64*2**20,maxWorkerCount:t.parallelism??i,runWorker:this._runWorker.bind(this),prefetchProfile:AN.network})}_getFileSize(){return this._fileSizeDetermined?this._orchestrator.fileSize:void 0}_read(e,t,r,i){return this._orchestrator.read(e,t,r,i)}async _runWorker(e){for(;;){const t=new AbortController,r=await n_(this._options.fetchFn??fetch,this._url,t_(this._options.requestInit??{},{headers:{Range:`bytes=${e.currentPos}-`},signal:t.signal}),this._getRetryDelay,()=>this._disposed);if(!r.ok)throw new Error(`Error fetching ${String(this._url)}: ${r.status} ${r.statusText}`);e:if(this._orchestrator.fileSize===null){const a=r.headers.get("Content-Range");if(a){const o=/\/(\d+)/.exec(a);if(o){this._orchestrator.supplyFileSize(Number(o[1]));break e}}const s=r.headers.get("Content-Length");s&&this._orchestrator.supplyFileSize(e.currentPos+Number(s))}if(this._fileSizeDetermined=!0,r.status!==206){if(!this._usedForHls){const a=new URL(this._url instanceof Request?this._url.url:this._url,typeof window<"u"?window.location.href:void 0);a.origin!=="null"&&!(a.pathname.endsWith(".m3u8")||a.pathname.endsWith(".m3u"))&&(_5.has(a.origin)||(console.log(this._usedForHls,this._url,a.pathname),console.warn(`HTTP server (origin ${a.origin}) did not respond to a range request with 206 Partial Content, meaning the entire resource will now be downloaded. To enable efficient media file streaming across a network, please make sure your server supports range requests.`),_5.add(a.origin)))}e.currentPos=0,this._orchestrator.options.maxCacheSize=1/0,this._orchestrator.fileSize!==null?e.targetPos=this._orchestrator.fileSize:(e.targetPos=1/0,e.strictTarget=!1),this._orchestrator.consolidateEverythingIntoOneWorker(e)}if(!r.body)throw new Error("Missing HTTP response body stream. The used fetch function must provide the response body as a ReadableStream.");const i=r.body.getReader();for(;;){if(e.currentPos>=e.targetPos||e.aborted){t.abort(),this._orchestrator.signalWorkerStoppedRunning(e);return}let a;try{a=await i.read()}catch(u){if(this._disposed)throw u;const d=this._getRetryDelay(1,u,this._url);if(d!==null){console.error("Error while reading response stream. Attempting to resume.",u),await XO(1e3*d);break}else throw u}if(e.aborted)continue;const{done:s,value:o}=a;if(s){if(e.currentPos>=e.targetPos){this._orchestrator.onWorkerFinished(e);return}if(e.strictTarget)break;this._orchestrator.onWorkerFinished(e);return}this._dispatchRead(e.currentPos,e.currentPos+o.length),this._orchestrator.supplyWorkerData(e,o)}}}_dispose(){this._orchestrator.dispose()}}class TN extends Na{constructor(e,t={}){if(!(e instanceof ReadableStream))throw new TypeError("stream must be a ReadableStream.");if(!t||typeof t!="object")throw new TypeError("options must be an object.");if(t.maxCacheSize!==void 0&&(!FO(t.maxCacheSize)||t.maxCacheSize<0))throw new TypeError("options.maxCacheSize, when provided, must be a non-negative number.");super(),this._reader=null,this._cache=[],this._pendingSlices=[],this._currentIndex=0,this._targetIndex=0,this._maxRequestedIndex=0,this._endIndex=null,this._pulling=!1,this._stream=e,this._maxCacheSize=t.maxCacheSize??32*2**20}_getFileSize(){return this._endIndex}_read(e,t){if(this._endIndex!==null&&t>this._endIndex)return null;this._maxRequestedIndex=Math.max(this._maxRequestedIndex,t);const r=Ot(this._cache,e,m=>m.start),i=r!==-1?this._cache[r]:null;if(i&&i.start<=e&&t<=i.end)return{bytes:i.bytes,view:i.view,offset:i.start};let a=e;const s=new Uint8Array(t-e);if(r!==-1)for(let m=r;m<this._cache.length;m++){const p=this._cache[m];if(p.start>=t)break;const O=Math.max(e,p.start);O>a&&this._throwDueToCacheMiss();const b=Math.min(t,p.end);O<b&&(s.set(p.bytes.subarray(O-p.start,b-p.start),O-e),a=b)}if(a===t)return{bytes:s,view:Dt(s),offset:e};this._currentIndex>a&&this._throwDueToCacheMiss();const{promise:o,resolve:u,reject:d}=Yo();return this._pendingSlices.push({start:e,end:t,bytes:s,resolve:u,reject:d}),this._targetIndex=Math.max(this._targetIndex,t),this._pulling||(this._pulling=!0,this._pull().catch(m=>{if(this._pulling=!1,this._pendingSlices.length>0)this._pendingSlices.forEach(p=>p.reject(m)),this._pendingSlices.length=0;else throw m})),o}_throwDueToCacheMiss(){throw new Error("Read is before the cached region. With ReadableStreamSource, you must access the data more sequentially or increase the size of its cache.")}async _pull(){for(this._reader??(this._reader=this._stream.getReader());this._currentIndex<this._targetIndex&&!this._disposed;){const{done:e,value:t}=await this._reader.read();if(e){for(const a of this._pendingSlices)a.resolve(null);this._pendingSlices.length=0,this._endIndex=this._currentIndex;break}const r=this._currentIndex,i=this._currentIndex+t.byteLength;this._dispatchRead(r,i);for(let a=0;a<this._pendingSlices.length;a++){const s=this._pendingSlices[a],o=Math.max(r,s.start),u=Math.min(i,s.end);o<u&&(s.bytes.set(t.subarray(o-r,u-r),o-s.start),u===s.end&&(s.resolve({bytes:s.bytes,view:Dt(s.bytes),offset:s.start}),this._pendingSlices.splice(a,1),a--))}for(this._cache.push({start:r,end:i,bytes:t,view:Dt(t),age:0});this._cache.length>0;){const a=this._cache[0];if(this._maxRequestedIndex-a.end<=this._maxCacheSize)break;this._cache.shift()}this._currentIndex+=t.byteLength}this._pulling=!1}_dispose(){var e;this._pendingSlices.length=0,this._cache.length=0,(e=this._reader)==null||e.cancel()}}const AN={network:(n,e,t)=>{n=Math.max(0,Math.floor((n-65536)/65536)*65536);for(const i of t){const s=Math.max((i.startPos+i.targetPos)/2,i.targetPos-8388608);if(a8(n,e,s,i.targetPos)){const o=i.targetPos-i.startPos,u=Math.ceil((o+1)/8388608)*8388608,d=2**Math.ceil(Math.log2(o+1)),m=Math.min(d,u);e=Math.max(e,i.startPos+m)}}return e=Math.max(e,n+vN),{start:n,end:e}}};class PN{constructor(e){this.options=e,this.fileSize=null,this.nextAge=0,this.workers=[],this.cache=[],this.currentCacheSize=0,this.disposed=!1,this.queuedReads=[]}read(e,t,r,i){G(!this.disposed);const a=this.options.prefetchProfile(e,t,this.workers),s=Math.max(a.start,r),o=Math.min(a.end,this.fileSize??1/0,i);G(s<=e&&t<=o);let u=null;const d=Ot(this.cache,e,P=>P.start),m=d!==-1?this.cache[d]:null;m&&m.start<=e&&t<=m.end&&(m.age=this.nextAge++,u={bytes:m.bytes,view:m.view,offset:m.start});const p=Ot(this.cache,s,P=>P.start),O=u?null:new Uint8Array(t-e);let b=0,S=s;const k=[];if(p!==-1){for(let P=p;P<this.cache.length;P++){const $=this.cache[P];if($.start>=o)break;if($.end<=s)continue;const M=Math.max(s,$.start),R=Math.min(o,$.end);if(G(M<=R),S<M&&k.push({start:S,end:M}),S=R,O){const N=Math.max(e,$.start),Z=Math.min(t,$.end);if(N<Z){const D=N-e;O.set($.bytes.subarray(N-$.start,Z-$.start),D),D===b&&(b=Z-e)}}$.age=this.nextAge++}S<o&&k.push({start:S,end:o})}else k.push({start:s,end:o});if(O&&b>=O.length&&(u={bytes:O,view:Dt(O),offset:e}),k.length===0)return G(u),u;const{promise:T,resolve:w,reject:A}=Yo(),E=[];for(const P of k){const $=Math.max(e,P.start),M=Math.min(t,P.end);$===P.start&&M===P.end?E.push(P):$<M&&E.push({start:$,end:M})}const C=O&&{start:e,bytes:O,holes:E,resolve:w,reject:A};e:for(const P of k){for(const R of this.workers)if(this.checkHoleAgainstWorker(R,P,C?[C]:[])){this.checkQueuedReadsAgainstWorker(R);continue e}const $=P.end<o||this.fileSize!==null,M=this.createWorker(P.start,P.end,$);if(M)C&&(M.pendingSlices=[C]),this.runWorker(M);else{let R=Ot(this.queuedReads,P.start,Z=>Z.hole.start),N=R!==-1?this.queuedReads[R]:null;for(N&&P.start<=N.hole.end?(N.hole.end=Math.max(N.hole.end,P.end),N.strictTarget&&(N.strictTarget=$),C&&N.pendingSlices.push(C)):(R++,N={hole:{start:P.start,end:P.end},strictTarget:$,pendingSlices:C?[C]:[],age:this.nextAge++},this.queuedReads.splice(R,0,N));R+1<this.queuedReads.length;){const Z=this.queuedReads[R+1];if(Z.hole.start>N.hole.end)break;N.hole.end=Math.max(N.hole.end,Z.hole.end),N.pendingSlices.push(...Z.pendingSlices),N.strictTarget&&(N.strictTarget=Z.strictTarget),N.age=Math.min(N.age,Z.age),this.queuedReads.splice(R+1,1)}}}return u||(G(O),u=T.then(P=>P&&{bytes:P,view:Dt(P),offset:e})),u}checkHoleAgainstWorker(e,t,r){if(a8(t.start-131072,t.start,e.currentPos,e.targetPos)){e.targetPos=Math.max(e.targetPos,t.end);for(let a=0;a<r.length;a++){const s=r[a];e.pendingSlices.includes(s)||e.pendingSlices.push(s)}return e.running||this.runWorker(e),!0}return!1}checkQueuedReadsAgainstWorker(e){let t=!1;for(let r=0;r<this.queuedReads.length;r++){const i=this.queuedReads[r];if(this.checkHoleAgainstWorker(e,i.hole,i.pendingSlices))this.queuedReads.splice(r,1),r--,t=!0;else if(t)break}}createWorker(e,t,r){if(this.workers.length>=this.options.maxWorkerCount){let a=null,s=null;for(let o=0;o<this.workers.length;o++){const u=this.workers[o];!u.running&&u.pendingSlices.length===0&&(!a||u.age<a.age)&&(s=o,a=u)}if(a)G(s!==null),G(a.pendingSlices.length===0),this.workers.splice(s,1);else return null}const i={startPos:e,currentPos:e,targetPos:t,strictTarget:r,running:!1,aborted:this.disposed,pendingSlices:[],age:this.nextAge++};return this.workers.push(i),i}runWorker(e){G(!e.running),G(e.currentPos<e.targetPos),e.running=!0,e.age=this.nextAge++,this.options.runWorker(e).catch(t=>{if(e.running=!1,e.pendingSlices.length>0)e.pendingSlices.forEach(r=>r.reject(t)),e.pendingSlices.length=0;else throw t}).finally(()=>{if(!e.running&&this.queuedReads.length>0){let t=0;for(let a=1;a<this.queuedReads.length;a++)this.queuedReads[a].age<this.queuedReads[t].age&&(t=a);const r=this.queuedReads[t];this.queuedReads.splice(t,1);const i=this.createWorker(r.hole.start,r.hole.end,r.strictTarget);G(i),i.pendingSlices=r.pendingSlices,this.runWorker(i)}})}consolidateEverythingIntoOneWorker(e){const t=new Set(e.pendingSlices);for(let r=0;r<this.workers.length;r++){const i=this.workers[r];if(i!==e){for(const a of i.pendingSlices)t.add(a);i.aborted=!0,i.pendingSlices.length=0,this.workers.splice(r,1),r--}}for(let r=0;r<this.queuedReads.length;r++){const i=this.queuedReads[r];for(const a of i.pendingSlices)t.add(a)}e.pendingSlices=[...t],this.queuedReads.length=0}supplyWorkerData(e,t){G(!e.aborted);const r=e.currentPos,i=r+t.length;this.insertIntoCache({start:r,end:i,bytes:t,view:Dt(t),age:this.nextAge++}),e.currentPos+=t.length,e.currentPos>e.targetPos&&(e.targetPos=e.currentPos,this.checkQueuedReadsAgainstWorker(e));for(let a=0;a<e.pendingSlices.length;a++){const s=e.pendingSlices[a],o=Math.max(r,s.start),u=Math.min(i,s.start+s.bytes.length);o<u&&s.bytes.set(t.subarray(o-r,u-r),o-s.start);for(let d=0;d<s.holes.length;d++){const m=s.holes[d];r<=m.start&&i>m.start&&(m.start=i),m.end<=m.start&&(s.holes.splice(d,1),d--)}s.holes.length===0&&(s.resolve(s.bytes),e.pendingSlices.splice(a,1),a--)}for(let a=0;a<this.workers.length;a++){const s=this.workers[a];e===s||s.running||a8(r,i,s.currentPos,s.targetPos)&&(this.workers.splice(a,1),a--)}}supplyFileSize(e){G(this.fileSize===null),this.fileSize=e;for(const t of this.workers){t.targetPos=Math.min(t.targetPos,e),t.strictTarget=!0;for(let r=0;r<t.pendingSlices.length;r++){const i=t.pendingSlices[r];for(const a of i.holes)if(a.end>e){i.resolve(null),t.pendingSlices.splice(r,1),r--;break}}}for(let t=0;t<this.queuedReads.length;t++){const r=this.queuedReads[t];if(r.hole.start>=e){for(const i of r.pendingSlices)i.resolve(null);this.queuedReads.splice(t,1),t--}else if(r.hole.end>e){r.hole.end=e,r.strictTarget=!0;for(let i=0;i<r.pendingSlices.length;i++){const a=r.pendingSlices[i];a.start>=e&&(a.resolve(null),r.pendingSlices.splice(i,1),i--)}}}}signalWorkerStoppedRunning(e){e.running=!1,e.pendingSlices.length=0}onWorkerFinished(e){const t=this.workers.indexOf(e);G(t!==-1),e.running=!1,this.workers.splice(t,1),this.fileSize===null&&this.supplyFileSize(e.currentPos);for(const r of e.pendingSlices)r.resolve(null)}insertIntoCache(e){if(this.options.maxCacheSize===0)return;let t=Ot(this.cache,e.start,r=>r.start)+1;if(t>0){const r=this.cache[t-1];if(r.end>=e.end)return;if(r.end>e.start){const i=new Uint8Array(e.end-r.start);i.set(r.bytes,0),i.set(e.bytes,e.start-r.start),this.currentCacheSize+=e.end-r.end,r.bytes=i,r.view=Dt(i),r.end=e.end,t--,e=r}else this.cache.splice(t,0,e),this.currentCacheSize+=e.bytes.length}else this.cache.splice(t,0,e),this.currentCacheSize+=e.bytes.length;for(let r=t+1;r<this.cache.length;r++){const i=this.cache[r];if(e.end<=i.start)break;if(e.end>=i.end){this.cache.splice(r,1),this.currentCacheSize-=i.bytes.length,r--;continue}const a=new Uint8Array(i.end-e.start);a.set(e.bytes,0),a.set(i.bytes,i.start-e.start),this.currentCacheSize-=e.end-i.start,e.bytes=a,e.view=Dt(a),e.end=i.end,this.cache.splice(r,1);break}for(;this.currentCacheSize>this.options.maxCacheSize;){let r=0,i=this.cache[0];for(let a=1;a<this.cache.length;a++){const s=this.cache[a];s.age<i.age&&(r=a,i=s)}if(this.currentCacheSize-i.bytes.length<=this.options.maxCacheSize)break;this.cache.splice(r,1),this.currentCacheSize-=i.bytes.length}}dispose(){for(const e of this.workers)e.aborted=!0;this.workers.length=0,this.cache.length=0,this.disposed=!0}}class CN extends Na{constructor(e,t,r){if(super(),this._ref=null,e._disposed)throw new Error("Cannot create a slice of a disposed source.");this._baseSource=e,this._offset=t,this._length=r??null}_getFileSize(){const e=this._baseSource._getFileSize();return e===void 0?this._length!==null?this._length:void 0:e===null?this._length!==null?this._length:null:i8(e-this._offset,0,this._length??1/0)}_read(e,t,r,i){if(this._length!==null&&t>this._length)return null;const a=this._baseSource._read(this._offset+e,this._offset+t,this._offset+r,this._offset+i);return a instanceof Promise?a.then(s=>s?(s.offset-=this._offset,s):null):a?(a.offset-=this._offset,a):null}_dispose(){var e;(e=this._ref)==null||e.free()}ref(){return this._ref??(this._ref=this._baseSource.ref()),super.ref()}}/*!
256
- * Copyright (c) 2026-present, Vanilagy and contributors
257
- *
258
- * This Source Code Form is subject to the terms of the Mozilla Public
259
- * License, v. 2.0. If a copy of the MPL was not distributed with this
260
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
261
- */var N5=function(n,e,t){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var r,i;if(t){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=e[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=e[Symbol.dispose],t&&(i=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");i&&(r=function(){try{i.call(this)}catch(a){return Promise.reject(a)}}),n.stack.push({value:e,dispose:r,async:t})}else t&&n.stack.push({async:!0});return e},j5=(function(n){return function(e){function t(s){e.error=e.hasError?new n(s,e.error,"An error was suppressed during disposal."):s,e.hasError=!0}var r,i=0;function a(){for(;r=e.stack.pop();)try{if(!r.async&&i===1)return i=0,e.stack.push(r),Promise.resolve().then(a);if(r.dispose){var s=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(s).then(a,function(o){return t(o),a()})}else i|=1}catch(o){t(o)}if(i===1)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}return a()}})(typeof SuppressedError=="function"?SuppressedError:function(n,e,t){var r=new Error(t);return r.name="SuppressedError",r.error=n,r.suppressed=e,r});const EN=/^0[xX][0-9a-fA-F]+$/,MN=/^data:.*;base64,/i;class Z5 extends SN{constructor(e,t,r,i){super(e.input,t,r),this.segments=[],this.nextLines=null,this.currentUpdateSegmentsPromise=null,this.streamHasEnded=!1,this.lastSegmentUpdateTime=-1/0,this.refreshInterval=5,this.demuxer=e,this.nextLines=i}runUpdateSegments(){return this.currentUpdateSegmentsPromise??(this.currentUpdateSegmentsPromise=(async()=>{try{const e=this.getRemainingWaitTimeMs();e>0&&await XO(e),this.lastSegmentUpdateTime=performance.now(),await this.updateSegments()}finally{this.currentUpdateSegmentsPromise=null}})())}getRemainingWaitTimeMs(){const e=performance.now()-this.lastSegmentUpdateTime,t=Math.max(0,1e3*this.refreshInterval-e);return t<=50?0:t}async updateSegments(){let e=this.nextLines;if(this.nextLines=null,!e){const w={stack:[],error:void 0,hasError:!1};try{const A=N5(w,await this.demuxer.input._getSourceUncached({path:this.path,isRoot:!1}),!1),C=await new Oh(A.source).requestEntireFile();G(C),e=iT(C,C.length,{ignore:F7})}catch(A){w.error=A,w.hasError=!0}finally{j5(w)}}let t=!1,r=0,i=null,a=null,s=0,o=null,u=null,d=null,m=null,p=null,O=null,b=!1,S=Rr(this.segments)??null;const k=w=>{const A=w.indexOf("@"),E=Number(A===-1?w:w.slice(0,A));if(!Number.isInteger(E)||E<0)throw new Error(`Invalid #EXT-X-BYTERANGE length '${w}'.`);let C=null;if(A!==-1&&(C=Number(w.slice(A+1)),!Number.isInteger(C)||C<0))throw new Error(`Invalid #EXT-X-BYTERANGE offset '${w}'.`);return{length:E,offset:C}},T=w=>{s=w,S&&(G(S.sequenceNumber!==null),S.sequenceNumber<w&&(r=S.timestamp+S.duration,o=S.firstSegment,u=S.initSegment,p=S.lastProgramDateTimeSeconds,S=null))};for(let w=0;w<e.length;w++){const A=e[w];if(!t){if(A!=="#EXTM3U")throw new Error("Invalid M3U8 file; expected first line to be #EXTM3U.");t=!0;continue}if(!A.startsWith("#")){if(!S){if(i===null)throw new Error("Invalid M3U8 file; a segment must be preceded by an #EXTINF tag.");let E=a;if(E&&E.method==="AES-128"&&!E.iv){const M=new Uint8Array(Zi),R=Dt(M);R.setUint32(8,Math.floor(s/2**32)),R.setUint32(12,s),E={...E,iv:M}}const P={path:Cs(this.path,A),offset:(m==null?void 0:m.offset)??0,length:(m==null?void 0:m.length)??null},$={timestamp:r,relativeToUnixEpoch:p!==null,firstSegment:o,sequenceNumber:s,location:P,duration:i,encryption:E,initSegment:u,lastProgramDateTimeSeconds:p};o??(o=$),r+=i,this.segments.push($)}i=null,m===null?d=null:m=null,T(s+1)}if(A.startsWith(m8)){if(S){b=!0;continue}b||(p===null&&s>0&&O!==null&&(r=s*O),b=!0);const E=A.slice(m8.length),C=E.indexOf(","),P=C===-1?E:E.slice(0,C),$=Number(P);if(!Number.isFinite($)||$<0)throw new Error(`Invalid #EXTINF tag duration '${P}'.`);i=$}else if(A.startsWith(w5)){const E=new c0(A.slice(w5.length)),C=E.get("uri");if(!C)throw new Error("Invalid #EXT-X-MAP tag; missing URI attribute.");const P=E.get("byterange");let $=null;if(P!==null&&($=k(P)),$&&$.offset===null)throw new Error("Invalid #EXT-X-MAP tag; BYTERANGE attribute must have a specified offset.");if(!S){const R={path:Cs(this.path,C),offset:($==null?void 0:$.offset)??0,length:($==null?void 0:$.length)??null};if((a==null?void 0:a.method)==="AES-128"&&!a.iv)throw new Error("IV attribute must be set on #EXT-X-KEY tag preceding the #EXT-X-MAP tag.");u={timestamp:r,relativeToUnixEpoch:p!==null,firstSegment:null,sequenceNumber:null,location:R,duration:0,encryption:a,initSegment:null,lastProgramDateTimeSeconds:p}}i=null,m===null?d=null:m=null}else if(A.startsWith(T5)){const E=new c0(A.slice(T5.length)),C=E.get("method");if(C==="NONE")a=null;else if(C==="AES-128"){const P=E.get("uri");if(!P)throw new Error("Invalid #EXT-X-KEY: AES-128 requires a URI attribute.");let $=null;const M=E.get("iv");if(M){if(!EN.test(M))throw new Error(`Unsupported IV format '${M}'.`);let N=M.slice(2);N=N.padStart(Zi*2,"0"),$=new Uint8Array(Zi);for(let Z=0;Z<Zi;Z++){const D=-Zi*2+Z;$[Z]=parseInt(N.slice(D,D+2),16)}}const R=E.get("keyformat")??"identity";if(R!=="identity")throw new Error("For AES-128 encryption, only the 'identity' KEYFORMAT is currently supported. If you think other formats should be supported, please raise an issue.");a={method:"AES-128",keyUri:Cs(this.path,P),iv:$,keyFormat:R}}else if(C==="SAMPLE-AES"||C==="SAMPLE-AES-CTR"){const P=E.get("uri");if(!P)throw new Error(`Invalid #EXT-X-KEY: ${C} requires a URI attribute.`);if((E.get("keyformat")??"identity")==="identity")throw new Error("For SAMPLE-AES and SAMPLE-AES-CTR encryption, the 'identity' KEYFORMAT is not supported. If you think this format should be supported, please raise an issue.");let M=null;if(MN.test(P)){const R=P.indexOf(","),N=a7(P.slice(R+1));if(N.length>=8&&N[4]===112&&N[5]===115&&N[6]===115&&N[7]===104){const Z=Dt(N).getUint32(0);M=C7(N.subarray(8,Math.min(Z,N.length)))}}a={method:C,psshBox:M}}else throw new Error(`Unsupported encryption method '${C}'. If you think this method should be supported, please raise an issue.`)}else if(A.startsWith(A5)){const E=A.slice(A5.length),C=Number(E);if(!Number.isInteger(C)||C<0)throw new Error(`Invalid EXT-X-MEDIA-SEQUENCE value '${E}'.`);T(C)}else if(A.startsWith(P5)){const E=k(A.slice(P5.length));if(E.offset===null){if(d===null)throw new Error("Invalid M3U8 file; #EXT-X-BYTERANGE without offset requires a previous byte range.");E.offset=d}m=E,d=E.offset+E.length}else if(A.startsWith(C5)){if(S)continue;const E=A.slice(C5.length),C=Date.parse(E);if(!Number.isFinite(C))continue;const P=C/1e3;if(p===P)continue;if(p===null&&this.segments.length>0){const $=Rr(this.segments),M=$.timestamp+$.duration,R=P-M;for(const N of this.segments)N.timestamp+=R,N.relativeToUnixEpoch=!0;r+=R}p=P,r=P}else if(A===yN)o=null;else if(A.startsWith(E5)){const E=A.slice(E5.length),C=Number(E);if(!Number.isFinite(C)||C<0)throw new Error(`Invalid EXT-X-TARGETDURATION value '${E}'.`);this.refreshInterval=C,O=C}else if(A===bN){this.streamHasEnded=!0;break}else A.startsWith(M5)&&A.slice(M5.length).toLowerCase()==="vod"&&(this.streamHasEnded=!0)}if(!t)throw new Error("Invalid M3U8 file; no #EXTM3U header.")}async getFirstSegment(){return this.segments.length===0&&await this.runUpdateSegments(),this.segments[0]??null}async getSegmentAt(e,t){this.segments.length===0&&await this.runUpdateSegments();let r=!!t.skipLiveWait&&this.getRemainingWaitTimeMs()>0;for(;;){const i=Ot(this.segments,e,s=>s.timestamp);if(i===-1)return null;if(i<this.segments.length-1||this.streamHasEnded||r)return this.segments[i];const a=this.segments[i];if(e<a.timestamp+a.duration)return a;await this.runUpdateSegments(),t.skipLiveWait&&(r=!0)}}async getNextSegment(e,t){const r=this.segments.indexOf(e);G(r!==-1);const i=r+1;let a=!!t.skipLiveWait&&this.getRemainingWaitTimeMs()>0;for(;;){if(i<this.segments.length)return this.segments[i];if(this.streamHasEnded||a)return null;await this.runUpdateSegments(),t.skipLiveWait&&(a=!0)}}async getPreviousSegment(e){const t=this.segments.indexOf(e);return G(t!==-1),this.segments[t-1]??null}getInputForSegment(e){var u;const t=e,r=this.inputCache.find(d=>d.segment===t);if(r)return r.age=this.nextInputCacheAge++,r.input;let i=null;(t.initSegment||t.firstSegment)&&(i=this.getInputForSegment(t.initSegment??t.firstSegment));const a={...this.input._formatOptions,isobmff:{...this.input._formatOptions.isobmff,resolveKeyId:((u=this.input._formatOptions.isobmff)==null?void 0:u.resolveKeyId)&&(d=>{if(!t.encryption||!(t.encryption.method==="SAMPLE-AES"||t.encryption.method==="SAMPLE-AES-CTR")||!t.encryption.psshBox)return this.input._formatOptions.isobmff.resolveKeyId(d);let m=d.psshBoxes;const{psshBox:p}=t.encryption;return(p.keyIds===null||p.keyIds.includes(d.keyId))&&!m.some(O=>E7(O,p))&&(m=[...m,p]),this.input._formatOptions.isobmff.resolveKeyId({...d,psshBoxes:m})})}},s=new R1({source:new kN(t.location.path,async d=>{G(d.isRoot);const m={...d,isRoot:!1};let p;const O=t.location.offset>0||t.location.length!==null;if(!t.encryption||t.encryption.method==="SAMPLE-AES"||t.encryption.method==="SAMPLE-AES-CTR"){if(p=await this.input._getSourceCached(m),O){const S=p.source.slice(t.location.offset,t.location.length??void 0).ref();p.free(),p=S}}else if(t.encryption.method==="AES-128"){const b=t.encryption;G(b.iv);let S=await this.input._getSourceCached(m);if(O){const A=S.source.slice(t.location.offset,t.location.length??void 0).ref();S.free(),S=A}const k=new Oh(S.source),T=Q_(k,async()=>{const w={stack:[],error:void 0,hasError:!1};try{const A=N5(w,await this.input._getSourceCached({path:b.keyUri,isRoot:!1},ij),!1),C=await new Oh(A.source).requestSlice(0,Zi);if(!C)throw new Error("Invalid AES-128 key; expected at least 16 bytes of data.");return{key:He(C,Zi),iv:b.iv}}catch(A){w.error=A,w.hasError=!0}finally{j5(w)}},()=>{S.free()});p=new TN(T).ref()}else G(!1);return p}),formats:this.input._formats.filter(d=>!(d instanceof eT)),initInput:i??void 0,formatOptions:a});if(s._onFormatDetermined=d=>{var m,p;if((((m=t.encryption)==null?void 0:m.method)==="SAMPLE-AES"||((p=t.encryption)==null?void 0:p.method)==="SAMPLE-AES-CTR")&&!d._isIsobmff)throw new Error("The SAMPLE-AES and SAMPLE-AES-CTR encryption methods are currently only supported for ISOBMFF files.")},this.inputCache.push({segment:t,input:s,age:this.nextInputCacheAge++}),this.inputCache.length>4){const d=l7(this.inputCache,m=>m.age);G(d!==-1),this.inputCache.splice(d,1)}return s}async getLiveRefreshInterval(){return this.getRemainingWaitTimeMs()===0&&await this.runUpdateSegments(),this.streamHasEnded?null:this.refreshInterval}}/*!
262
- * Copyright (c) 2026-present, Vanilagy and contributors
263
- *
264
- * This Source Code Form is subject to the terms of the Mozilla Public
265
- * License, v. 2.0. If a copy of the MPL was not distributed with this
266
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
267
- */class $N extends Ua{constructor(e){super(e),this.metadataPromise=null,this.trackBackings=null,this.internalTracks=null,this.segmentedInputs=[],this.hasMasterPlaylist=!0}readMetadata(){return this.metadataPromise??(this.metadataPromise=(async()=>{G(this.input._rootSource instanceof J0);const{rootPath:e}=this.input._rootSource,t=await this.input._reader.requestEntireFile();G(t);const r=iT(t,t.length,{ignore:F7}),i=[],a=[];for(let p=1;p<r.length;p++){const O=r[p];if(O.startsWith(S5)){const b=p,S=r[++p];if(S===void 0)throw new Error("Incorrect M3U8 file; a line must follow the #EXT-X-STREAM-INF tag.");const k=Cs(e,S),T=new c0(O.slice(S5.length));if(T.getAsNumber("bandwidth")===null)throw new Error("Invalid M3U8 file; #EXT-X-STREAM-INF tag requires a BANDWIDTH attribute with a valid numerical value.");i.push({fullPath:k,attributes:T,lineNumber:b,hasOnlyKeyPackets:!1})}else if(O.startsWith(k5)){const b=new c0(O.slice(k5.length)),S=b.get("uri");if(S===null)throw new Error("Invalid M3U8 file; #EXT-X-I-FRAME-STREAM-INF tag requires a URI attribute.");if(b.getAsNumber("bandwidth")===null)throw new Error("Invalid M3U8 file; #EXT-X-I-FRAME-STREAM-INF tag requires a BANDWIDTH attribute with a valid numerical value.");const T=Cs(e,S);i.push({fullPath:T,attributes:b,lineNumber:p,hasOnlyKeyPackets:!0})}else if(O.startsWith(v5)){const b=new c0(O.slice(v5.length));if(b.get("type")===null)throw new Error("Invalid M3U8 file; #EXT-X-MEDIA tag requires a TYPE attribute.");if(b.get("group-id")===null)throw new Error("Invalid M3U8 file; #EXT-X-MEDIA tag requires a GROUP-ID attribute.");let T=null;const w=b.get("uri");w!==null&&(T=Cs(e,w)),a.push({fullPath:T,attributes:b,lineNumber:p})}else if(O!==xN){if(O.startsWith(m8)){const b=new Z5(this,e,null,r);this.segmentedInputs=[b],this.hasMasterPlaylist=!1,this.trackBackings=await b.getTrackBackings();return}}}const s=[...new Set(a.filter(p=>p.attributes.get("type").toLowerCase()==="video").map(p=>p.attributes.get("group-id")))],o=[...new Set(a.filter(p=>p.attributes.get("type").toLowerCase()==="audio").map(p=>p.attributes.get("group-id")))],u=await Promise.all(i.map(async(p,O)=>{const b=[],S=p.attributes.get("codecs");let k;if(S)k=S.split(",").map(N=>N.trim());else{const Z=await this.getSegmentedInputForPath(p.fullPath).getTrackBackings(),D=await Promise.all(Z.map(async I=>({track:I,codec:await I.getCodec()})));k=await Promise.all(D.filter(I=>I.codec!==null).map(I=>I.track.getDecoderConfig().then(U=>U.codec)))}const T=p.attributes.get("video"),w=p.attributes.get("audio"),A=k.some(N=>a5.includes(s0(N))),E=k.some(N=>s5.includes(s0(N)));if(T!==null&&!A){if(!s.includes(T))throw new Error(`Invalid M3U8 file; variant stream references video group "${T}" which is not defined in any #EXT-X-MEDIA tags.`);const N=a.find(Z=>{const D=Z.attributes.get("group-id"),I=Z.attributes.get("type");return D===T&&I.toLowerCase()==="video"});e:if(N){const Z=N.attributes.get("uri");if(Z===null)break e;const D=Cs(e,Z),K=(await this.getSegmentedInputForPath(D).getTrackBackings()).find(L=>L.getType()==="video");if(!K||await K.getCodec()===null)break e;const q=await K.getDecoderConfig().then(L=>(L==null?void 0:L.codec)??null);G(q!==null),k.push(q)}}if(w!==null&&!E){if(!o.includes(w))throw new Error(`Invalid M3U8 file; variant stream references audio group "${w}" which is not defined in any #EXT-X-MEDIA tags.`);const N=a.find(Z=>{const D=Z.attributes.get("group-id"),I=Z.attributes.get("type");return D===w&&I.toLowerCase()==="audio"});e:if(N){const Z=N.attributes.get("uri");if(Z===null)break e;const D=Cs(e,Z),K=(await this.getSegmentedInputForPath(D).getTrackBackings()).find(L=>L.getType()==="audio");if(!K||await K.getCodec()===null)break e;const q=await K.getDecoderConfig().then(L=>(L==null?void 0:L.codec)??null);G(q!==null),k.push(q)}}k=[...new Set(k)];let C=null,P=null;const $=p.attributes.getAsNumber("bandwidth");G($!==null);const M=p.attributes.getAsNumber("average-bandwidth"),R=p.attributes.get("name");for(const N of k){const Z=s0(N);if(Z!==null){if(a5.includes(Z)){if(C!==null)throw new Error("Unsupported M3U8 file; multiple video codecs found in the CODECS attribute of a variant stream.");C=N;const D=p.attributes.get("video");if(D===null){const I=p.attributes.get("resolution");let U=null,K=null;if(I){const q=I.match(/^(\d+)x(\d+)$/);q&&(U=Number(q[1]),K=Number(q[2]))}b.push({id:-1,demuxer:this,backingTrack:null,default:!0,autoselect:!0,languageCode:Bn,lineNumber:p.lineNumber,fullPath:p.fullPath,fullCodecString:C,pairingMask:1n<<BigInt(O),peakBitrate:$,averageBitrate:M,name:R,hasOnlyKeyPackets:p.hasOnlyKeyPackets,info:{type:"video",width:U,height:K}})}else{if(!s.includes(D))throw new Error(`Invalid M3U8 file; variant stream references video group "${D}" which is not defined in any #EXT-X-MEDIA tags.`);for(const I of a){const U=I.attributes.get("group-id"),K=I.attributes.get("type");if(U!==D||K.toLowerCase()!=="video")continue;const q=I.attributes.get("resolution")??p.attributes.get("resolution");let L=null,W=null;if(q){const ee=q.match(/^(\d+)x(\d+)$/);ee&&(L=Number(ee[1]),W=Number(ee[2]))}b.push({id:-1,demuxer:this,backingTrack:null,default:Ad(I.attributes),autoselect:Ad(I.attributes)||D5(I.attributes),languageCode:V5(I.attributes.get("language")),lineNumber:I.lineNumber,fullPath:I.fullPath??p.fullPath,fullCodecString:C,pairingMask:1n<<BigInt(O),peakBitrate:null,averageBitrate:null,name:I.attributes.get("name"),hasOnlyKeyPackets:p.hasOnlyKeyPackets,info:{type:"video",width:L,height:W}})}}}else if(s5.includes(Z)){if(P!==null)throw new Error("Unsupported M3U8 file; multiple audio codecs found in the CODECS attribute of a variant stream.");P=N;const D=p.attributes.get("audio");if(D===null){const I=p.attributes.get("channels"),U=I!==null?Number(I.split("/")[0]):null;b.push({id:-1,demuxer:this,backingTrack:null,default:!0,autoselect:!0,languageCode:Bn,lineNumber:p.lineNumber,fullPath:p.fullPath,fullCodecString:P,pairingMask:1n<<BigInt(O),peakBitrate:$,averageBitrate:M,name:R,hasOnlyKeyPackets:p.hasOnlyKeyPackets,info:{type:"audio",numberOfChannels:U!==null&&Number.isInteger(U)&&U>0?U:null}})}else{if(!o.includes(D))throw new Error(`Invalid M3U8 file; variant stream references audio group "${D}" which is not defined in any #EXT-X-MEDIA tags.`);for(const I of a){const U=I.attributes.get("group-id"),K=I.attributes.get("type");if(U!==D||K.toLowerCase()!=="audio")continue;const q=I.attributes.get("channels")??p.attributes.get("channels"),L=q!==null?Number(q.split("/")[0]):null;b.push({id:-1,demuxer:this,backingTrack:null,default:Ad(I.attributes),autoselect:Ad(I.attributes)||D5(I.attributes),languageCode:V5(I.attributes.get("language")),lineNumber:I.lineNumber,fullPath:I.fullPath??p.fullPath,fullCodecString:P,pairingMask:1n<<BigInt(O),peakBitrate:null,averageBitrate:null,name:I.attributes.get("name"),hasOnlyKeyPackets:p.hasOnlyKeyPackets,info:{type:"audio",numberOfChannels:L!==null&&Number.isInteger(L)&&L>0?L:null}})}}}}}return b})),d=[],m=p=>{const O=d.find(b=>b.fullPath===p.fullPath&&b.info.type===p.info.type);O?(O.pairingMask|=p.pairingMask,O.default||(O.default=p.default),O.autoselect||(O.autoselect=p.autoselect),O.lineNumber=Math.min(O.lineNumber,p.lineNumber),p.peakBitrate!==null&&(O.peakBitrate=Math.max(O.peakBitrate??-1/0,p.peakBitrate)),p.averageBitrate!==null&&(O.averageBitrate=Math.max(O.averageBitrate??-1/0,p.averageBitrate)),O.languageCode===Bn&&(O.languageCode=p.languageCode)):(p.id=d.length+1,d.push(p))};for(const p of u)for(const O of p)m(O);d.sort((p,O)=>p.lineNumber-O.lineNumber),this.trackBackings=[];for(const p of d)p.info.type==="video"?this.trackBackings.push(new W7(p)):this.trackBackings.push(new G7(p));this.internalTracks=d})())}async getTrackBackings(){return await this.readMetadata(),G(this.trackBackings),this.trackBackings}getSegmentedInputForPath(e){let t=this.segmentedInputs.find(i=>i.path===e);if(t)return t;let r=null;return this.internalTracks&&(r=this.internalTracks.filter(a=>a.fullPath===e).map(a=>({id:a.id,type:a.info.type}))),t=new Z5(this,e,r,null),this.segmentedInputs.push(t),t}async getMetadataTags(){return{}}async getMimeType(){return H7}dispose(){if(this.segmentedInputs){for(const e of this.segmentedInputs)e.dispose();this.segmentedInputs.length=0}}}class Y7{constructor(e){this.internalTrack=e,this.hydrationPromise=null}hydrate(){return this.hydrationPromise??(this.hydrationPromise=(async()=>{const e=this.internalTrack.demuxer.getSegmentedInputForPath(this.internalTrack.fullPath);let t=null;const i=(await e.getTrackBackings()).filter(a=>a.getType()===this.getType());if(i.length===1)t=i[0];else if(this instanceof W7){for(const a of i)if(await a.getCodec()===this.getCodec()){t=a;break}}else{G(this instanceof G7);for(const a of i)if(await a.getCodec()===this.getCodec()){t=a;break}}if(!t)throw new Error("Could not find matching track in underlying media data.");this.internalTrack.backingTrack=t})())}delegate(e){return this.internalTrack.backingTrack?e():this.hydrate().then(e)}getCodec(){throw new Error("Not implemented on base class.")}getDisposition(){return{...Xa,default:this.internalTrack.autoselect,primary:this.internalTrack.default}}getId(){return this.internalTrack.id}getPairingMask(){return this.internalTrack.pairingMask}getInternalCodecId(){return null}getLanguageCode(){return this.internalTrack.languageCode}getName(){return this.internalTrack.name}getNumber(){G(this.internalTrack.demuxer.internalTracks);const e=this.internalTrack.info.type;let t=0;for(const r of this.internalTrack.demuxer.internalTracks)if(r.info.type===e&&t++,r===this.internalTrack)break;return t}getTimeResolution(){return this.delegate(()=>this.internalTrack.backingTrack.getTimeResolution())}isRelativeToUnixEpoch(){return this.delegate(()=>this.internalTrack.backingTrack.isRelativeToUnixEpoch())}getBitrate(){return this.internalTrack.peakBitrate}getAverageBitrate(){return this.internalTrack.averageBitrate}async getDurationFromMetadata(e){return await this.hydrate(),this.internalTrack.backingTrack.getDurationFromMetadata(e)}async getLiveRefreshInterval(){return await this.hydrate(),this.internalTrack.backingTrack.getLiveRefreshInterval()}getHasOnlyKeyPackets(){return this.internalTrack.hasOnlyKeyPackets||null}async getFirstPacket(e){return await this.hydrate(),this.internalTrack.backingTrack.getFirstPacket(e)}async getPacket(e,t){return await this.hydrate(),this.internalTrack.backingTrack.getPacket(e,t)}async getKeyPacket(e,t){return await this.hydrate(),this.internalTrack.backingTrack.getKeyPacket(e,t)}async getNextPacket(e,t){return await this.hydrate(),this.internalTrack.backingTrack.getNextPacket(e,t)}async getNextKeyPacket(e,t){return await this.hydrate(),this.internalTrack.backingTrack.getNextKeyPacket(e,t)}}class W7 extends Y7{constructor(e){super(e)}get backingVideoTrack(){return this.internalTrack.backingTrack}getType(){return"video"}getCodec(){return s0(this.internalTrack.fullCodecString)}getCodedWidth(){return this.delegate(()=>this.backingVideoTrack.getCodedWidth())}getCodedHeight(){return this.delegate(()=>this.backingVideoTrack.getCodedHeight())}getSquarePixelWidth(){return this.delegate(()=>this.backingVideoTrack.getSquarePixelWidth())}getSquarePixelHeight(){return this.delegate(()=>this.backingVideoTrack.getSquarePixelHeight())}getMetadataDisplayWidth(){return this.backingVideoTrack?null:this.internalTrack.info.width}getMetadataDisplayHeight(){return this.backingVideoTrack?null:this.internalTrack.info.height}getRotation(){return this.delegate(()=>this.backingVideoTrack.getRotation())}async getColorSpace(){return await this.hydrate(),this.backingVideoTrack.getColorSpace()}async canBeTransparent(){return await this.hydrate(),this.backingVideoTrack.canBeTransparent()}getMetadataCodecParameterString(){return this.backingVideoTrack?null:this.internalTrack.fullCodecString}async getDecoderConfig(){return await this.hydrate(),this.backingVideoTrack.getDecoderConfig()}}class G7 extends Y7{constructor(e){super(e)}get backingAudioTrack(){return this.internalTrack.backingTrack}getType(){return"audio"}getCodec(){return s0(this.internalTrack.fullCodecString)}getNumberOfChannels(){return this.internalTrack.info.numberOfChannels!==null?this.internalTrack.info.numberOfChannels:this.delegate(()=>this.backingAudioTrack.getNumberOfChannels())}getSampleRate(){return this.delegate(()=>this.backingAudioTrack.getSampleRate())}getMetadataCodecParameterString(){return this.backingAudioTrack?null:this.internalTrack.fullCodecString}async getDecoderConfig(){return await this.hydrate(),this.backingAudioTrack.getDecoderConfig()}}const Ad=n=>{const e=n.get("default");if(e===null)return!1;const t=e.toUpperCase();if(t==="YES")return!0;if(t==="NO")return!1;throw new Error(`Invalid M3U8 file; #EXT-X-MEDIA DEFAULT attribute must be YES or NO, got "${e}".`)},D5=n=>{const e=n.get("autoselect");if(e===null)return!1;const t=e.toUpperCase();if(t==="YES")return!0;if(t==="NO")return!1;throw new Error(`Invalid M3U8 file; #EXT-X-MEDIA AUTOSELECT attribute must be YES or NO, got "${e}".`)},V5=n=>{if(n===null)return Bn;const e=n.split("-")[0];return e||Bn};/*!
268
- * Copyright (c) 2026-present, Vanilagy and contributors
269
- *
270
- * This Source Code Form is subject to the terms of the Mozilla Public
271
- * License, v. 2.0. If a copy of the MPL was not distributed with this
272
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
273
- */class na{constructor(){this._isIsobmff=!1}}class K7 extends na{constructor(){super(...arguments),this._isIsobmff=!0}async _getMajorBrand(e){let t=e._reader.requestSlice(0,12);if(t instanceof Promise&&(t=await t),!t)return null;t.skip(4);const r=Lt(t,4);return r!=="ftyp"&&r!=="styp"?null:Lt(t,4)}_createDemuxer(e){return new JO(e)}}class RN extends K7{async _canReadInput(e){const t=await this._getMajorBrand(e);if(t!==null)return t!=="qt ";let r=e._reader.requestSlice(4,4);if(r instanceof Promise&&(r=await r),!r)return!1;const i=Lt(r,4);return i==="moof"||i==="sidx"}get name(){return"MP4"}get mimeType(){return"video/mp4"}}class QN extends K7{async _canReadInput(e){return await this._getMajorBrand(e)==="qt "}get name(){return"QuickTime File Format"}get mimeType(){return"video/quicktime"}}class J7 extends na{async isSupportedEBMLOfDocType(e,t){let r=e._reader.requestSlice(0,Ma);if(r instanceof Promise&&(r=await r),!r)return!1;const i=j7(r);if(i===null||i<1||i>8||nt(r,i)!==ke.EBML)return!1;const s=Z7(r);if(typeof s!="number")return!1;let o=e._reader.requestSlice(r.filePos,s);if(o instanceof Promise&&(o=await o),!o)return!1;const u=r.filePos;for(;o.filePos<=u+s-Wr;){const d=Ca(o);if(!d)break;const{id:m,size:p}=d,O=o.filePos;if(p===void 0)return!1;switch(m){case ke.EBMLVersion:if(nt(o,p)!==1)return!1;break;case ke.EBMLReadVersion:if(nt(o,p)!==1)return!1;break;case ke.DocType:if(zo(o,p)!==t)return!1;break;case ke.DocTypeVersion:if(nt(o,p)>4)return!1;break}o.filePos=O+p}return!0}_canReadInput(e){return this.isSupportedEBMLOfDocType(e,"matroska")}_createDemuxer(e){return new B_(e)}get name(){return"Matroska"}get mimeType(){return"video/x-matroska"}}class _N extends J7{_canReadInput(e){return this.isSupportedEBMLOfDocType(e,"webm")}get name(){return"WebM"}get mimeType(){return"video/webm"}}class NN extends na{async _canReadInput(e){let t=0;for(;;){let p=e._reader.requestSlice(t,Va);if(p instanceof Promise&&(p=await p),!p)break;const O=Al(p);if(!O)break;t=p.filePos+O.size}const r=await f8(e._reader,t,t+4096);if(!r)return!1;const i=r.header,a=h7(i.mpegVersionId,i.channel);let s=e._reader.requestSlice(r.startPos+a,4);if(s instanceof Promise&&(s=await s),!s)return!1;const o=Ee(s);if(o===f7||o===d7)return!0;t=r.startPos+r.header.totalSize;const d=await f8(e._reader,t,t+vl);if(!d)return!1;const m=d.header;return!(i.channel!==m.channel||i.sampleRate!==m.sampleRate)}_createDemuxer(e){return new X_(e)}get name(){return"MP3"}get mimeType(){return"audio/mpeg"}}class jN extends na{async _canReadInput(e){let t=e._reader.requestSlice(0,12);if(t instanceof Promise&&(t=await t),!t)return!1;const r=Lt(t,4);return r!=="RIFF"&&r!=="RIFX"&&r!=="RF64"?!1:(t.skip(4),Lt(t,4)==="WAVE")}_createDemuxer(e){return new nN(e)}get name(){return"WAVE"}get mimeType(){return"audio/wav"}}class ZN extends na{async _canReadInput(e){let t=e._reader.requestSlice(0,4);return t instanceof Promise&&(t=await t),t?Lt(t,4)==="OggS":!1}_createDemuxer(e){return new eN(e)}get name(){return"Ogg"}get mimeType(){return"application/ogg"}}class DN extends na{async _canReadInput(e){let t=e._reader.requestSlice(0,4);return t instanceof Promise&&(t=await t),t?Lt(t,4)==="fLaC":!1}get name(){return"FLAC"}get mimeType(){return"audio/flac"}_createDemuxer(e){return new dN(e)}}class VN extends na{async _canReadInput(e){let t=0;for(;;){let s=e._reader.requestSlice(t,Va);if(s instanceof Promise&&(s=await s),!s)break;const o=Al(s);if(!o)break;t=s.filePos+o.size}let r=e._reader.requestSliceRange(t,d8,fc);if(r instanceof Promise&&(r=await r),!r)return!1;const i=Q0(r);if(!i||(t+=i.frameLength,r=e._reader.requestSliceRange(t,d8,fc),r instanceof Promise&&(r=await r),!r))return!1;const a=Q0(r);return a?i.objectType===a.objectType&&i.samplingFrequencyIndex===a.samplingFrequencyIndex&&i.channelConfiguration===a.channelConfiguration:!1}_createDemuxer(e){return new iN(e)}get name(){return"ADTS"}get mimeType(){return"audio/aac"}}class IN extends na{async _canReadInput(e){const t=Pr+16+1;let r=e._reader.requestSlice(0,t);if(r instanceof Promise&&(r=await r),!r)return!1;const i=He(r,t);return i[0]===71&&i[Pr]===71||i[0]===71&&i[Pr+16]===71?!0:i[4]===71&&i[4+Pr+4]===71}_createDemuxer(e){return new pN(e)}get name(){return"MPEG Transport Stream"}get mimeType(){return"video/MP2T"}}class eT extends na{async _canReadInput(e){let t=e._reader.requestSlice(0,7);if(t instanceof Promise&&(t=await t),!t||!(Lt(t,7)==="#EXTM3U"))return!1;if(!(e._rootSource instanceof J0))throw new TypeError("HLS inputs require `InputOptions.source` to be a PathedSource or a ref to one.");return e._rootSource._usedForHls=!0,!0}_createDemuxer(e){return new $N(e)}get name(){return"HTTP Live Streaming (HLS)"}get mimeType(){return H7}}const LN=new RN,zN=new QN,BN=new J7,HN=new _N,FN=new NN,XN=new jN,UN=new ZN,qN=new VN,YN=new DN,WN=new IN,GN=new eT,KN=[GN,LN,zN,BN,HN,XN,UN,YN,FN,qN,WN],JN=(n,e)=>{if(!n||typeof n!="object")throw new TypeError(`${e}, when provided, must be an object.`);if(n.isobmff!==void 0){if(!n.isobmff||typeof n.isobmff!="object")throw new TypeError(`${e}.isobmff, when provided, must be an object.`);if(n.isobmff.resolveKeyId!==void 0&&typeof n.isobmff.resolveKeyId!="function")throw new TypeError(`${e}.isobmff.resolveKeyId, when provided, must be a function.`)}};/*!
274
- * Copyright (c) 2026-present, Vanilagy and contributors
275
- *
276
- * This Source Code Form is subject to the terms of the Mozilla Public
277
- * License, v. 2.0. If a copy of the MPL was not distributed with this
278
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
279
- */const ej=[],tj=[];/*!
280
- * Copyright (c) 2026-present, Vanilagy and contributors
281
- *
282
- * This Source Code Form is subject to the terms of the Mozilla Public
283
- * License, v. 2.0. If a copy of the MPL was not distributed with this
284
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
285
- */const cl=n=>{if(!n||typeof n!="object")throw new TypeError("options must be an object.");if(n.metadataOnly!==void 0&&typeof n.metadataOnly!="boolean")throw new TypeError("options.metadataOnly, when defined, must be a boolean.");if(n.verifyKeyPackets!==void 0&&typeof n.verifyKeyPackets!="boolean")throw new TypeError("options.verifyKeyPackets, when defined, must be a boolean.");if(n.verifyKeyPackets&&n.metadataOnly)throw new TypeError("options.verifyKeyPackets and options.metadataOnly cannot be enabled together.");if(n.skipLiveWait!==void 0&&typeof n.skipLiveWait!="boolean")throw new TypeError("options.skipLiveWait, when defined, must be a boolean.")},I5=n=>{if(!FO(n))throw new TypeError("timestamp must be a number.")},$g=(n,e,t)=>t.verifyKeyPackets?e.then(async r=>{if(!r||r.type==="delta")return r;const i=await n.determinePacketType(r);return i&&(r.type=i),r}):e;class nj{constructor(e){if(!(e instanceof ef))throw new TypeError("track must be an InputTrack.");this._track=e}async getFirstPacket(e={}){if(cl(e),this._track.input._disposed)throw new di;return $g(this._track,this._track._backing.getFirstPacket(e),e)}async getFirstKeyPacket(e={}){cl(e);const t=await this.getFirstPacket(e);return t?t.type==="key"?t:this.getNextKeyPacket(t,e):null}async getPacket(e,t={}){if(I5(e),cl(t),this._track.input._disposed)throw new di;return $g(this._track,this._track._backing.getPacket(e,t),t)}async getNextPacket(e,t={}){if(!(e instanceof bn))throw new TypeError("packet must be an EncodedPacket.");if(cl(t),this._track.input._disposed)throw new di;return $g(this._track,this._track._backing.getNextPacket(e,t),t)}async getKeyPacket(e,t={}){if(I5(e),cl(t),this._track.input._disposed)throw new di;if(!t.verifyKeyPackets)return this._track._backing.getKeyPacket(e,t);const r=await this._track._backing.getKeyPacket(e,t);return r&&(G(r.type==="key"),await this._track.determinePacketType(r)==="delta"?this.getKeyPacket(r.timestamp-1/await this._track.getTimeResolution(),t):r)}async getNextKeyPacket(e,t={}){if(!(e instanceof bn))throw new TypeError("packet must be an EncodedPacket.");if(cl(t),this._track.input._disposed)throw new di;if(!t.verifyKeyPackets)return this._track._backing.getNextKeyPacket(e,t);const r=await this._track._backing.getNextKeyPacket(e,t);return r&&(G(r.type==="key"),await this._track.determinePacketType(r)==="delta"?this.getNextKeyPacket(r,t):r)}packets(e,t,r={}){if(e!==void 0&&!(e instanceof bn))throw new TypeError("startPacket must be an EncodedPacket.");if(e!==void 0&&e.isMetadataOnly&&!(r!=null&&r.metadataOnly))throw new TypeError("startPacket can only be metadata-only if options.metadataOnly is enabled.");if(t!==void 0&&!(t instanceof bn))throw new TypeError("endPacket must be an EncodedPacket.");if(cl(r),this._track.input._disposed)throw new di;const i=[];let{promise:a,resolve:s}=Yo(),{promise:o,resolve:u}=Yo(),d=!1,m=!1,p=null;const O=[],b=()=>Math.max(2,O.length);(async()=>{let k=e??await this.getFirstPacket(r);for(;k&&!m&&!this._track.input._disposed&&!(t&&k.sequenceNumber>=(t==null?void 0:t.sequenceNumber));){if(i.length>b()){({promise:o,resolve:u}=Yo()),await o;continue}i.push(k),s(),{promise:a,resolve:s}=Yo(),k=await this.getNextPacket(k,r)}d=!0,s()})().catch(k=>{p||(p=k,s())});const S=this._track;return{async next(){for(;;){if(S.input._disposed)throw new di;if(m)return{value:void 0,done:!0};if(p)throw p;if(i.length>0){const k=i.shift(),T=performance.now();for(O.push(T);O.length>0&&T-O[0]>=1e3;)O.shift();return u(),{value:k,done:!1}}else{if(d)return{value:void 0,done:!0};await a}}},async return(){return m=!0,u(),s(),{value:void 0,done:!0}},async throw(k){throw k},[Symbol.asyncIterator](){return this}}}}/*!
286
- * Copyright (c) 2026-present, Vanilagy and contributors
287
- *
288
- * This Source Code Form is subject to the terms of the Mozilla Public
289
- * License, v. 2.0. If a copy of the MPL was not distributed with this
290
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
291
- */class ef{constructor(e,t){this.input=e,this._backing=t}isVideoTrack(){return this instanceof tT}isAudioTrack(){return this instanceof nT}get id(){return this._backing.getId()}get number(){return this._backing.getNumber()}async getInternalCodecId(){return this._backing.getInternalCodecId()}get internalCodecId(){return jt(this._backing.getInternalCodecId(),"internalCodecId","getInternalCodecId")}async getLanguageCode(){return this._backing.getLanguageCode()}get languageCode(){return jt(this._backing.getLanguageCode(),"languageCode","getLanguageCode")}async getName(){return this._backing.getName()}get name(){return jt(this._backing.getName(),"name","getName")}async getTimeResolution(){return this._backing.getTimeResolution()}get timeResolution(){return jt(this._backing.getTimeResolution(),"timeResolution","getTimeResolution")}async isRelativeToUnixEpoch(){return this._backing.isRelativeToUnixEpoch()}async getDisposition(){return this._backing.getDisposition()}get disposition(){return jt(this._backing.getDisposition(),"disposition","getDisposition")}async getBitrate(){return this._backing.getBitrate()}async getAverageBitrate(){return this._backing.getAverageBitrate()}async getFirstTimestamp(){const e=await this._backing.getFirstPacket({metadataOnly:!0});return(e==null?void 0:e.timestamp)??0}async computeDuration(e){const t=await this._backing.getPacket(1/0,{metadataOnly:!0,...e}),r=((t==null?void 0:t.timestamp)??0)+((t==null?void 0:t.duration)??0);return r7(r,await this.getTimeResolution())}async getDurationFromMetadata(e={}){return this._backing.getDurationFromMetadata(e)}async computePacketStats(e=1/0,t){const r=new nj(this);let i=1/0,a=-1/0,s=0,o=0;for await(const u of r.packets(void 0,void 0,{metadataOnly:!0,...t})){if(s>=e&&u.timestamp>=a)break;i=Math.min(i,u.timestamp),a=Math.max(a,u.timestamp+u.duration),s++,o+=u.byteLength}return{packetCount:s,averagePacketRate:s?Number((s/(a-i)).toPrecision(16)):0,averageBitrate:s?Number((8*o/(a-i)).toPrecision(16)):0}}async isLive(){return await this._backing.getLiveRefreshInterval()!==null}async getLiveRefreshInterval(){return this._backing.getLiveRefreshInterval()}canBePairedWith(e){if(!(e instanceof ef))throw new TypeError("other must be an InputTrack.");return this.input!==e.input||this===e?!1:(this._backing.getPairingMask()&e._backing.getPairingMask())!==0n}async getPairableTracks(e){return this.input.getTracks(ml({filter:t=>t.canBePairedWith(this)},e))}async getPairableVideoTracks(e){return this.input.getVideoTracks(ml({filter:t=>t.canBePairedWith(this)},e))}async getPairableAudioTracks(e){return this.input.getAudioTracks(ml({filter:t=>t.canBePairedWith(this)},e))}async getPrimaryPairableVideoTrack(e){return this.input.getPrimaryVideoTrack(ml({filter:t=>t.canBePairedWith(this)},e))}async getPrimaryPairableAudioTrack(e){return this.input.getPrimaryAudioTrack(ml({filter:t=>t.canBePairedWith(this)},e))}async hasPairableTrack(e){e&&(e=Rg(e));const t=await this.input.getTracks();for(const r of t)if(this.canBePairedWith(r)&&(!e||await e(r)))return!0;return!1}hasPairableVideoTrack(e){return e&&(e=Rg(e)),this.hasPairableTrack(async t=>t.isVideoTrack()&&(!e||await e(t)))}hasPairableAudioTrack(e){return e&&(e=Rg(e)),this.hasPairableTrack(async t=>t.isAudioTrack()&&(!e||await e(t)))}}const jt=(n,e,t)=>{if(n instanceof Promise)throw new Error(`'${e}' is deprecated and not available synchronously for this track. Use the preferred '${t}()' instead.`);return n},Rg=n=>{if(n!==void 0&&typeof n!="function")throw new TypeError("predicate, when provided, must be a function.");return n?e=>{const t=i=>{if(typeof i!="boolean")throw new TypeError("predicate must return or resolve to a boolean value.");return i},r=n(e);return r instanceof Promise?r.then(t):t(r)}:void 0};class tT extends ef{constructor(e,t){super(e,t),this._pixelAspectRatioCache=null,this._backing=t}get type(){return"video"}async getCodec(){return this._backing.getCodec()}get codec(){return jt(this._backing.getCodec(),"codec","getCodec")}async hasOnlyKeyPackets(){var e,t;return await((t=(e=this._backing).getHasOnlyKeyPackets)==null?void 0:t.call(e))??!1}async getCodedWidth(){return this._backing.getCodedWidth()}get codedWidth(){return jt(this._backing.getCodedWidth(),"codedWidth","getCodedWidth")}async getCodedHeight(){return this._backing.getCodedHeight()}get codedHeight(){return jt(this._backing.getCodedHeight(),"codedHeight","getCodedHeight")}async getRotation(){return this._backing.getRotation()}get rotation(){return jt(this._backing.getRotation(),"rotation","getRotation")}async getSquarePixelWidth(){return this._backing.getSquarePixelWidth()}get squarePixelWidth(){return jt(this._backing.getSquarePixelWidth(),"squarePixelWidth","getSquarePixelWidth")}async getSquarePixelHeight(){return this._backing.getSquarePixelHeight()}get squarePixelHeight(){return jt(this._backing.getSquarePixelHeight(),"squarePixelHeight","getSquarePixelHeight")}async getPixelAspectRatio(){return this._pixelAspectRatioCache??(this._pixelAspectRatioCache=i5({num:await this.getSquarePixelWidth()*await this.getCodedHeight(),den:await this.getSquarePixelHeight()*await this.getCodedWidth()}))}get pixelAspectRatio(){return this._pixelAspectRatioCache??(this._pixelAspectRatioCache=i5({num:jt(this._backing.getSquarePixelWidth(),"pixelAspectRatio","getPixelAspectRatio")*jt(this._backing.getCodedHeight(),"pixelAspectRatio","getPixelAspectRatio"),den:jt(this._backing.getSquarePixelHeight(),"pixelAspectRatio","getPixelAspectRatio")*jt(this._backing.getCodedWidth(),"pixelAspectRatio","getPixelAspectRatio")}))}async getDisplayWidth(){var r,i;const e=await((i=(r=this._backing).getMetadataDisplayWidth)==null?void 0:i.call(r));return e??(await this.getRotation()%180===0?this.getSquarePixelWidth():this.getSquarePixelHeight())}get displayWidth(){var i,a;const e=(a=(i=this._backing).getMetadataDisplayWidth)==null?void 0:a.call(i);if(e!==void 0){const s=jt(e,"displayWidth","getDisplayWidth");if(s!==null)return s}const r=jt(this._backing.getRotation(),"displayWidth","getDisplayWidth")%180===0?this._backing.getSquarePixelWidth():this._backing.getSquarePixelHeight();return jt(r,"displayWidth","getDisplayWidth")}async getDisplayHeight(){var r,i;const e=await((i=(r=this._backing).getMetadataDisplayHeight)==null?void 0:i.call(r));return e??(await this.getRotation()%180===0?this.getSquarePixelHeight():this.getSquarePixelWidth())}get displayHeight(){var i,a;const e=(a=(i=this._backing).getMetadataDisplayHeight)==null?void 0:a.call(i);if(e!==void 0){const s=jt(e,"displayHeight","getDisplayHeight");if(s!==null)return s}const r=jt(this._backing.getRotation(),"displayHeight","getDisplayHeight")%180===0?this._backing.getSquarePixelHeight():this._backing.getSquarePixelWidth();return jt(r,"displayHeight","getDisplayHeight")}async getColorSpace(){return this._backing.getColorSpace()}async hasHighDynamicRange(){const e=await this._backing.getColorSpace();return e.primaries==="bt2020"||e.primaries==="smpte432"||e.transfer==="pg"||e.transfer==="hlg"||e.matrix==="bt2020-ncl"}async canBeTransparent(){return this._backing.canBeTransparent()}async getDecoderConfig(){return this._backing.getDecoderConfig()}async getCodecParameterString(){var r,i;const e=await((i=(r=this._backing).getMetadataCodecParameterString)==null?void 0:i.call(r));if(e!=null)return e;const t=await this._backing.getDecoderConfig();return(t==null?void 0:t.codec)??null}async canDecode(){try{const e=await this._backing.getDecoderConfig();if(!e)return!1;const t=await this._backing.getCodec();return G(t!==null),ej.some(i=>i.supports(t,e))?!0:typeof VideoDecoder>"u"?!1:(await VideoDecoder.isConfigSupported(e)).supported===!0}catch(e){return console.error("Error during decodability check:",e),!1}}async determinePacketType(e){if(!(e instanceof bn))throw new TypeError("packet must be an EncodedPacket.");if(e.isMetadataOnly)throw new TypeError("packet must not be metadata-only to determine its type.");const t=await this.getCodec();if(t===null)return null;const r=await this.getDecoderConfig();return G(r),w7(t,r,e.data)}}class nT extends ef{constructor(e,t){super(e,t),this._backing=t}get type(){return"audio"}async getCodec(){return this._backing.getCodec()}get codec(){return jt(this._backing.getCodec(),"codec","getCodec")}async hasOnlyKeyPackets(){var e,t;return await((t=(e=this._backing).getHasOnlyKeyPackets)==null?void 0:t.call(e))??!0}async getNumberOfChannels(){return this._backing.getNumberOfChannels()}get numberOfChannels(){return jt(this._backing.getNumberOfChannels(),"numberOfChannels","getNumberOfChannels")}async getSampleRate(){return this._backing.getSampleRate()}get sampleRate(){return jt(this._backing.getSampleRate(),"sampleRate","getSampleRate")}async getDecoderConfig(){return this._backing.getDecoderConfig()}async getCodecParameterString(){var r,i;const e=await((i=(r=this._backing).getMetadataCodecParameterString)==null?void 0:i.call(r));if(e!=null)return e;const t=await this._backing.getDecoderConfig();return(t==null?void 0:t.codec)??null}async canDecode(){try{const e=await this._backing.getDecoderConfig();if(!e)return!1;const t=await this._backing.getCodec();return G(t!==null),tj.some(r=>r.supports(t,e))||e.codec.startsWith("pcm-")?!0:typeof AudioDecoder>"u"?!1:(await AudioDecoder.isConfigSupported(e)).supported===!0}catch(e){return console.error("Error during decodability check:",e),!1}}async determinePacketType(e){if(!(e instanceof bn))throw new TypeError("packet must be an EncodedPacket.");return await this.getCodec()===null?null:"key"}}const L5=n=>-(n??-1/0),Nu=n=>-n,ju=n=>{if(typeof n!="object"||!n)throw new TypeError("query must be an object.");if(n.filter!==void 0&&typeof n.filter!="function")throw new TypeError("query.filter, when provided, must be a function.");if(n.sortBy!==void 0&&typeof n.sortBy!="function")throw new TypeError("query.sortBy, when provided, must be a function.");return{filter:n.filter?e=>{const t=i=>{if(typeof i!="boolean")throw new TypeError("query.filter must return or resolve to a boolean.");return i},r=n.filter(e);return r instanceof Promise?r.then(t):t(r)}:void 0,sortBy:n.sortBy?e=>{const t=i=>{if(typeof i!="number"&&(!Array.isArray(i)||!i.every(a=>typeof a=="number")))throw new TypeError("query.sortBy must return or resolve to a number or an array of numbers.");return i},r=n.sortBy(e);return r instanceof Promise?r.then(t):t(r)}:void 0}},ml=(n,e)=>({filter:n!=null&&n.filter||e!=null&&e.filter?t=>{var a;const r=((a=n==null?void 0:n.filter)==null?void 0:a.call(n,t))??!0,i=s=>{var o;return s===!1?!1:((o=e==null?void 0:e.filter)==null?void 0:o.call(e,t))??!0};return r instanceof Promise?r.then(i):i(r)}:void 0,sortBy:n!=null&&n.sortBy||e!=null&&e.sortBy?t=>{var s,o;const r=((s=n==null?void 0:n.sortBy)==null?void 0:s.call(n,t))??[],i=((o=e==null?void 0:e.sortBy)==null?void 0:o.call(e,t))??[],a=(u,d)=>[...Array.isArray(u)?u:[u],...Array.isArray(d)?d:[d]];return r instanceof Promise||i instanceof Promise?Promise.all([r,i]).then(([u,d])=>a(u,d)):a(r,i)}:void 0}),Qg=async(n,e)=>{let t=n;if(e!=null&&e.filter){const s=n.map(u=>e.filter(u));if(s.some(u=>u instanceof Promise)){const u=await Promise.all(s);t=n.filter((d,m)=>u[m])}else t=n.filter((u,d)=>s[d])}if(!(e!=null&&e.sortBy))return t;const r=t.map(s=>e.sortBy(s)),a=r.some(s=>s instanceof Promise)?await Promise.all(r):r;return t.map((s,o)=>({track:s,sortValue:a[o]})).sort((s,o)=>{const u=Array.isArray(s.sortValue)?s.sortValue:[s.sortValue],d=Array.isArray(o.sortValue)?o.sortValue:[o.sortValue],m=Math.max(u.length,d.length);for(let p=0;p<m;p++){const O=u[p]??0,b=d[p]??0;if(O!==b)return O-b}return 0}).map(s=>s.track)};/*!
292
- * Copyright (c) 2026-present, Vanilagy and contributors
293
- *
294
- * This Source Code Form is subject to the terms of the Mozilla Public
295
- * License, v. 2.0. If a copy of the MPL was not distributed with this
296
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
297
- */s7();const rj=1,ij=2;let dl=null;typeof FinalizationRegistry<"u"&&(dl=new FinalizationRegistry(n=>{for(const e of n)e.freed||e.free()}));class R1 extends o7{get disposed(){return this._disposed}constructor(e){if(super(),this._demuxerPromise=null,this._format=null,this._trackBackingsCache=null,this._backingToTrack=new Map,this._disposed=!1,this._nextSourceCacheAge=0,this._sourceRefs=[],this._sourceCache=[],this._sourceCachePromises=[],this._onFormatDetermined=null,!e||typeof e!="object")throw new TypeError("options must be an object.");if(!Array.isArray(e.formats)||e.formats.some(t=>!(t instanceof na)))throw new TypeError("options.formats must be an array of InputFormat.");if(!(e.source instanceof Na||e.source instanceof t6))throw new TypeError("options.source must be a Source or SourceRef.");if(e.source instanceof Na&&e.source._disposed)throw new TypeError("options.source must not be a disposed Source.");if(e.initInput!==void 0&&!(e.initInput instanceof R1))throw new TypeError("options.initInput, when provided, must be an Input.");e.formatOptions!==void 0&&JN(e.formatOptions,"formatOptions"),this._formats=e.formats,this._initInput=e.initInput??null,this._formatOptions=e.formatOptions??{},e.source instanceof Na?this._rootRef=e.source.ref():this._rootRef=e.source,this._sourceRefs.push(this._rootRef),dl==null||dl.register(this,this._sourceRefs,this)}get _rootSource(){return this._rootRef.source}async _getSourceUncached(e){G(this._rootSource instanceof J0);const t=await this._rootSource._resolveRequest(e);return this._emit("source",{source:t.source,request:e,isRoot:e.isRoot}),t}_getSourceCached(e,t=rj){const r=this._sourceCache.find(s=>s.cacheGroup===t&&Q5(s.request,e));if(r)return r.age++,Promise.resolve(r.sourceRef.source.ref());const i=this._sourceCachePromises.find(s=>s.cacheGroup===t&&Q5(s.request,e));if(i)return i.promise.then(s=>s.sourceRef.source.ref());const a=(async()=>{const s=await this._getSourceUncached(e);if(qu(this._sourceCache,p=>p.cacheGroup===t&&p.sourceRef.source._refCount===1)>=4){const p=l7(this._sourceCache,b=>b.cacheGroup===t&&b.sourceRef.source._refCount===1?b.age:1/0);G(p!==-1);const O=this._sourceCache[p];this._sourceCache.splice(p,1),O.sourceRef.free(),GQ(this._sourceRefs,O.sourceRef)}this._sourceRefs.push(s);const d=this._sourceCachePromises.findIndex(p=>p.request===e);return G(d!==-1),this._sourceCachePromises.splice(d,1),{request:e,sourceRef:s,age:this._nextSourceCacheAge++,cacheGroup:t}})();return this._sourceCachePromises.push({request:e,cacheGroup:t,promise:a}),a.then(s=>{const o=s.sourceRef.source.ref();return this._sourceCache.push(s),o})}_getDemuxer(){return this._demuxerPromise??(this._demuxerPromise=(async()=>{var e;this._reader=new Oh(this._rootSource),this._emit("source",{source:this._rootSource,request:null,isRoot:!0});for(const t of this._formats)if(await t._canReadInput(this))return this._format=t,(e=this._onFormatDetermined)==null||e.call(this,t),t._createDemuxer(this);throw new z5})())}get source(){return this._rootSource}async getFormat(){return await this._getDemuxer(),G(this._format),this._format}async canRead(){try{return await this._getDemuxer(),!0}catch(e){if(e instanceof z5)return!1;throw e}}async getFirstTimestamp(e){e??(e=await this.getTracks());const t=e.filter(i=>i!==null);if(t.length===0)return 0;const r=await Promise.all(t.map(i=>i.getFirstTimestamp()));return Math.min(...r)}async computeDuration(e,t){e??(e=await this.getTracks());const r=e.filter(a=>a!==null);if(r.length===0)return 0;const i=await Promise.all(r.map(a=>a.computeDuration(t)));return Math.max(...i)}async getDurationFromMetadata(e,t){e??(e=await this.getTracks());const r=e.filter(s=>s!==null),a=(await Promise.all(r.map(s=>s.getDurationFromMetadata(t)))).filter(s=>s!==null);return a.length===0?null:Math.max(...a)}async getTracks(e){e&&(e=ju(e));const r=(await this._getTrackBackings()).map(i=>this._wrapBackingAsTrack(i));return Qg(r,e)}async getVideoTracks(e){e&&(e=ju(e));const r=(await this.getTracks()).filter(i=>i.isVideoTrack());return Qg(r,e)}async getAudioTracks(e){e&&(e=ju(e));const r=(await this.getTracks()).filter(i=>i.isAudioTrack());return Qg(r,e)}async getPrimaryVideoTrack(e){e&&(e=ju(e));const t=ml(e,{sortBy:async i=>[Nu((await i.getDisposition()).default),Nu(await i.hasPairableAudioTrack()),Nu(!await i.hasOnlyKeyPackets()),L5(await i.getBitrate())]});return(await this.getVideoTracks(t))[0]??null}async getPrimaryAudioTrack(e){e&&(e=ju(e));const t=await this.getPrimaryVideoTrack(),r=ml(e,{sortBy:async a=>[Nu(!t||a.canBePairedWith(t)),Nu((await a.getDisposition()).default),L5(await a.getBitrate())]});return(await this.getAudioTracks(r))[0]??null}async _getTrackBackings(){const e=await this._getDemuxer();return this._trackBackingsCache??(this._trackBackingsCache=await e.getTrackBackings())}_wrapBackingAsTrack(e){const t=this._backingToTrack.get(e);if(t)return t;const i=e.getType()==="video"?new tT(this,e):new nT(this,e);return this._backingToTrack.set(e,i),i}async getMimeType(){return(await this._getDemuxer()).getMimeType()}async getMetadataTags(){return(await this._getDemuxer()).getMetadataTags()}dispose(){var e;if(!this._disposed){this._disposed=!0;for(const t of this._sourceRefs)t.free();this._sourceRefs.length=0,dl==null||dl.unregister(this),(e=this._demuxerPromise)==null||e.then(t=>t.dispose())}}[Symbol.dispose](){this.dispose()}}class z5 extends Error{constructor(e="Input has an unsupported or unrecognizable format."){super(e),this.name="UnsupportedInputFormatError"}}class di extends Error{constructor(e="Input has been disposed."){super(e),this.name="InputDisposedError"}}/*!
298
- * Copyright (c) 2026-present, Vanilagy and contributors
299
- *
300
- * This Source Code Form is subject to the terms of the Mozilla Public
301
- * License, v. 2.0. If a copy of the MPL was not distributed with this
302
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
303
- */class Oh{constructor(e){this.source=e}get fileSize(){const e=this.source._getFileSize();if(e===void 0)throw new Error("Reading file size too early; read required first.");return e}get fileSizeNonStrict(){return this.source._getFileSize()??null}requestSlice(e,t){if(this.source._disposed)throw new di;if(e<0||this.fileSizeNonStrict!==null&&e+t>this.fileSizeNonStrict)return null;if(t===0){const a=new Uint8Array(0);return new Oi(a,Dt(a),0,e,e)}const r=e+t,i=this.source._read(e,r,U7,q7);return i instanceof Promise?i.then(a=>a?new Oi(a.bytes,a.view,a.offset,e,r):null):i?new Oi(i.bytes,i.view,i.offset,e,r):null}requestSliceRange(e,t,r){if(this.source._disposed)throw new di;if(e<0)return null;if(this.fileSizeNonStrict!==null)return this.requestSlice(e,i8(this.fileSizeNonStrict-e,t,r));{const i=this.requestSlice(e,r),a=s=>s||(G(this.fileSizeNonStrict!==null),this.requestSlice(e,i8(this.fileSizeNonStrict-e,t,r)));return i instanceof Promise?i.then(a):a(i)}}requestEntireFile(){if(this.fileSizeNonStrict!==null)return this.requestSlice(0,this.fileSizeNonStrict);const e=1024;return(async()=>{const t=[];let r=0;for(;;){if(t.length===1&&this.fileSizeNonStrict!==null)return this.requestSlice(0,this.fileSizeNonStrict);const s=t.length*e;let o=this.requestSliceRange(s,0,e);if(o instanceof Promise&&(o=await o),!o)break;t.push(He(o,o.length)),r+=o.length}const i=new Uint8Array(r);let a=0;for(const s of t)i.set(s,a),a+=s.length;return new Oi(i,Dt(i),0,0,r)})()}}class Oi{constructor(e,t,r,i,a){this.bytes=e,this.view=t,this.offset=r,this.start=i,this.end=a,this.bufferPos=i-r}static tempFromBytes(e){return new Oi(e,Dt(e),0,0,e.length)}get length(){return this.end-this.start}get filePos(){return this.offset+this.bufferPos}set filePos(e){this.bufferPos=e-this.offset}get remainingLength(){return Math.max(this.end-this.filePos,0)}skip(e){this.bufferPos+=e}slice(e,t=this.end-e){if(e<this.start||e+t>this.end)throw new RangeError("Slicing outside of original slice.");return new Oi(this.bytes,this.view,this.offset,e,e+t)}}const dr=(n,e)=>{if(n.filePos<n.start||n.filePos+e>n.end)throw new RangeError(`Tried reading [${n.filePos}, ${n.filePos+e}), but slice is [${n.start}, ${n.end}). This is likely an internal error, please report it alongside the file that caused it.`)},He=(n,e)=>{dr(n,e);const t=n.bytes.subarray(n.bufferPos,n.bufferPos+e);return n.bufferPos+=e,t},Ie=n=>(dr(n,1),n.view.getUint8(n.bufferPos++)),Zu=(n,e)=>{dr(n,2);const t=n.view.getUint16(n.bufferPos,e);return n.bufferPos+=2,t},Kt=n=>{dr(n,2);const e=n.view.getUint16(n.bufferPos,!1);return n.bufferPos+=2,e},Ta=n=>{dr(n,3);const e=n7(n.view,n.bufferPos);return n.bufferPos+=3,e},p8=n=>{dr(n,2);const e=n.view.getInt16(n.bufferPos,!1);return n.bufferPos+=2,e},Ms=(n,e)=>{dr(n,4);const t=n.view.getUint32(n.bufferPos,e);return n.bufferPos+=4,t},Ee=n=>{dr(n,4);const e=n.view.getUint32(n.bufferPos,!1);return n.bufferPos+=4,e},Ko=n=>{dr(n,4);const e=n.view.getUint32(n.bufferPos,!0);return n.bufferPos+=4,e},Ol=n=>{dr(n,4);const e=n.view.getInt32(n.bufferPos,!1);return n.bufferPos+=4,e},aj=n=>{dr(n,4);const e=n.view.getInt32(n.bufferPos,!0);return n.bufferPos+=4,e},B5=(n,e)=>{let t,r;return e?(t=Ms(n,!0),r=Ms(n,!0)):(r=Ms(n,!1),t=Ms(n,!1)),r*4294967296+t},qr=n=>{const e=Ee(n),t=Ee(n);return e*4294967296+t},sj=n=>{const e=Ol(n),t=Ee(n);return e*4294967296+t},lj=n=>{const e=Ko(n);return aj(n)*4294967296+e},oj=n=>{dr(n,4);const e=n.view.getFloat32(n.bufferPos,!1);return n.bufferPos+=4,e},rT=n=>{dr(n,8);const e=n.view.getFloat64(n.bufferPos,!1);return n.bufferPos+=8,e},Lt=(n,e)=>{dr(n,e);let t="";for(let r=0;r<e;r++)t+=String.fromCharCode(n.bytes[n.bufferPos++]);return t},iT=(n,e,t)=>Mr.decode(He(n,e)).split(`
304
- `).map(a=>a.trim()).filter(a=>{var s;return a.length>0&&!((s=t==null?void 0:t.ignore)!=null&&s.call(t,a))});/*!
305
- * Copyright (c) 2026-present, Vanilagy and contributors
306
- *
307
- * This Source Code Form is subject to the terms of the Mozilla Public
308
- * License, v. 2.0. If a copy of the MPL was not distributed with this
309
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
310
- */var Jo;(function(n){n[n.Unsynchronisation=128]="Unsynchronisation",n[n.ExtendedHeader=64]="ExtendedHeader",n[n.ExperimentalIndicator=32]="ExperimentalIndicator",n[n.Footer=16]="Footer"})(Jo||(Jo={}));var ec;(function(n){n[n.ISO_8859_1=0]="ISO_8859_1",n[n.UTF_16_WITH_BOM=1]="UTF_16_WITH_BOM",n[n.UTF_16_BE_NO_BOM=2]="UTF_16_BE_NO_BOM",n[n.UTF_8=3]="UTF_8"})(ec||(ec={}));const yh=128,Va=10,tc=["Blues","Classic rock","Country","Dance","Disco","Funk","Grunge","Hip-hop","Jazz","Metal","New age","Oldies","Other","Pop","Rhythm and blues","Rap","Reggae","Rock","Techno","Industrial","Alternative","Ska","Death metal","Pranks","Soundtrack","Euro-techno","Ambient","Trip-hop","Vocal","Jazz & funk","Fusion","Trance","Classical","Instrumental","Acid","House","Game","Sound clip","Gospel","Noise","Alternative rock","Bass","Soul","Punk","Space","Meditative","Instrumental pop","Instrumental rock","Ethnic","Gothic","Darkwave","Techno-industrial","Electronic","Pop-folk","Eurodance","Dream","Southern rock","Comedy","Cult","Gangsta","Top 40","Christian rap","Pop/funk","Jungle music","Native US","Cabaret","New wave","Psychedelic","Rave","Showtunes","Trailer","Lo-fi","Tribal","Acid punk","Acid jazz","Polka","Retro","Musical","Rock 'n' roll","Hard rock","Folk","Folk rock","National folk","Swing","Fast fusion","Bebop","Latin","Revival","Celtic","Bluegrass","Avantgarde","Gothic rock","Progressive rock","Psychedelic rock","Symphonic rock","Slow rock","Big band","Chorus","Easy listening","Acoustic","Humour","Speech","Chanson","Opera","Chamber music","Sonata","Symphony","Booty bass","Primus","Porn groove","Satire","Slow jam","Club","Tango","Samba","Folklore","Ballad","Power ballad","Rhythmic Soul","Freestyle","Duet","Punk rock","Drum solo","A cappella","Euro-house","Dance hall","Goa music","Drum & bass","Club-house","Hardcore techno","Terror","Indie","Britpop","Negerpunk","Polsk punk","Beat","Christian gangsta rap","Heavy metal","Black metal","Crossover","Contemporary Christian","Christian rock","Merengue","Salsa","Thrash metal","Anime","Jpop","Synthpop","Christmas","Art rock","Baroque","Bhangra","Big beat","Breakbeat","Chillout","Downtempo","Dub","EBM","Eclectic","Electro","Electroclash","Emo","Experimental","Garage","Global","IDM","Illbient","Industro-Goth","Jam Band","Krautrock","Leftfield","Lounge","Math rock","New romantic","Nu-breakz","Post-punk","Post-rock","Psytrance","Shoegaze","Space rock","Trop rock","World music","Neoclassical","Audiobook","Audio theatre","Neue Deutsche Welle","Podcast","Indie rock","G-Funk","Dubstep","Garage rock","Psybient"],cj=(n,e)=>{var p;const t=n.filePos;e.raw??(e.raw={}),(p=e.raw).TAG??(p.TAG=He(n,yh-3)),n.filePos=t;const r=_o(n,30);r&&(e.title??(e.title=r));const i=_o(n,30);i&&(e.artist??(e.artist=i));const a=_o(n,30);a&&(e.album??(e.album=a));const s=_o(n,4),o=Number.parseInt(s,10);Number.isInteger(o)&&o>0&&(e.date??(e.date=new Date(o,0,1)));const u=He(n,30);let d;if(u[28]===0&&u[29]!==0){const O=u[29];O>0&&(e.trackNumber??(e.trackNumber=O)),n.skip(-30),d=_o(n,28),n.skip(2)}else n.skip(-30),d=_o(n,30);d&&(e.comment??(e.comment=d));const m=Ie(n);m<tc.length&&(e.genre??(e.genre=tc[m]))},_o=(n,e)=>{const t=He(n,e),r=jo(t.indexOf(0),t.length),i=t.subarray(0,r);let a="";for(let s=0;s<i.length;s++)a+=String.fromCharCode(i[s]);return a.trimEnd()},Al=n=>{const e=n.filePos,t=Lt(n,3),r=Ie(n),i=Ie(n),a=Ie(n),s=Ee(n);if(t!=="ID3"||r===255||i===255||(s&2155905152)!==0)return n.filePos=e,null;const o=s8(s);return{majorVersion:r,revision:i,flags:a,size:o}},r6=(n,e,t)=>{var a,s,o,u,d;if(![2,3,4].includes(e.majorVersion)){console.warn(`Unsupported ID3v2 major version: ${e.majorVersion}`);return}const r=He(n,e.size),i=new uj(e,r);if(e.flags&Jo.Footer&&i.removeFooter(),e.flags&Jo.Unsynchronisation&&e.majorVersion===3&&i.ununsynchronizeAll(),e.flags&Jo.ExtendedHeader){const m=i.readU32();e.majorVersion===3?i.pos+=m:i.pos+=m-4}for(;i.pos<=i.bytes.length-i.frameHeaderSize();){const m=i.readId3V2Frame();if(!m)break;const p=i.pos,O=i.pos+m.size;let b=!1,S=!1,k=!1;if(e.majorVersion===3?(b=!!(m.flags&64),S=!!(m.flags&128)):e.majorVersion===4&&(b=!!(m.flags&4),S=!!(m.flags&8),k=!!(m.flags&2)||!!(e.flags&Jo.Unsynchronisation)),b){console.warn(`Skipping encrypted ID3v2 frame ${m.id}`),i.pos=O;continue}if(S){console.warn(`Skipping compressed ID3v2 frame ${m.id}`),i.pos=O;continue}if(k&&i.ununsynchronizeRegion(i.pos,O),t.raw??(t.raw={}),m.id==="TXXX"){const T=(a=t.raw).TXXX??(a.TXXX={}),w=i.readId3V2TextEncoding(),A=i.readId3V2Text(w,O),E=i.readId3V2Text(w,O);T[A]??(T[A]=E)}else m.id[0]==="T"?(s=t.raw)[o=m.id]??(s[o]=i.readId3V2EncodingAndText(O)):(u=t.raw)[d=m.id]??(u[d]=i.readBytes(m.size));switch(i.pos=p,m.id){case"TIT2":case"TT2":t.title??(t.title=i.readId3V2EncodingAndText(O));break;case"TIT3":case"TT3":t.description??(t.description=i.readId3V2EncodingAndText(O));break;case"TPE1":case"TP1":t.artist??(t.artist=i.readId3V2EncodingAndText(O));break;case"TALB":case"TAL":t.album??(t.album=i.readId3V2EncodingAndText(O));break;case"TPE2":case"TP2":t.albumArtist??(t.albumArtist=i.readId3V2EncodingAndText(O));break;case"TRCK":case"TRK":{const w=i.readId3V2EncodingAndText(O).split("/"),A=Number.parseInt(w[0],10),E=w[1]&&Number.parseInt(w[1],10);Number.isInteger(A)&&A>0&&(t.trackNumber??(t.trackNumber=A)),E&&Number.isInteger(E)&&E>0&&(t.tracksTotal??(t.tracksTotal=E))}break;case"TPOS":case"TPA":{const w=i.readId3V2EncodingAndText(O).split("/"),A=Number.parseInt(w[0],10),E=w[1]&&Number.parseInt(w[1],10);Number.isInteger(A)&&A>0&&(t.discNumber??(t.discNumber=A)),E&&Number.isInteger(E)&&E>0&&(t.discsTotal??(t.discsTotal=E))}break;case"TCON":case"TCO":{const T=i.readId3V2EncodingAndText(O);let w=/^\((\d+)\)/.exec(T);if(w){const A=Number.parseInt(w[1]);if(tc[A]!==void 0){t.genre??(t.genre=tc[A]);break}}if(w=/^\d+$/.exec(T),w){const A=Number.parseInt(w[0]);if(tc[A]!==void 0){t.genre??(t.genre=tc[A]);break}}t.genre??(t.genre=T)}break;case"TDRC":case"TDAT":{const T=i.readId3V2EncodingAndText(O),w=new Date(T);Number.isNaN(w.getTime())||(t.date??(t.date=w))}break;case"TYER":case"TYE":{const T=i.readId3V2EncodingAndText(O),w=Number.parseInt(T,10);Number.isInteger(w)&&(t.date??(t.date=new Date(w,0,1)))}break;case"USLT":case"ULT":{const T=i.readU8();i.pos+=3,i.readId3V2Text(T,O),t.lyrics??(t.lyrics=i.readId3V2Text(T,O))}break;case"COMM":case"COM":{const T=i.readU8();i.pos+=3,i.readId3V2Text(T,O),t.comment??(t.comment=i.readId3V2Text(T,O))}break;case"APIC":case"PIC":{const T=i.readId3V2TextEncoding();let w;if(e.majorVersion===2){const P=i.readAscii(3);w=P==="PNG"?"image/png":P==="JPG"?"image/jpeg":"image/*"}else w=i.readId3V2Text(T,O);const A=i.readU8(),E=i.readId3V2Text(T,O).trimEnd(),C=O-i.pos;if(C>=0){const P=i.readBytes(C);t.images||(t.images=[]),t.images.push({data:P,mimeType:w,kind:A===3?"coverFront":A===4?"coverBack":"unknown",description:E})}}break;default:i.pos+=m.size;break}i.pos=O}};class uj{constructor(e,t){this.header=e,this.bytes=t,this.pos=0,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength)}frameHeaderSize(){return this.header.majorVersion===2?6:10}ununsynchronizeAll(){const e=[];for(let t=0;t<this.bytes.length;t++){const r=this.bytes[t];e.push(r),r===255&&t!==this.bytes.length-1&&this.bytes[t]===0&&t++}this.bytes=new Uint8Array(e),this.view=new DataView(this.bytes.buffer)}ununsynchronizeRegion(e,t){const r=[];for(let s=e;s<t;s++){const o=this.bytes[s];r.push(o),o===255&&s!==t-1&&this.bytes[s+1]===0&&s++}const i=this.bytes.subarray(0,e),a=this.bytes.subarray(t);this.bytes=new Uint8Array(i.length+r.length+a.length),this.bytes.set(i,0),this.bytes.set(r,i.length),this.bytes.set(a,i.length+r.length),this.view=new DataView(this.bytes.buffer)}removeFooter(){this.bytes=this.bytes.subarray(0,this.bytes.length-Va),this.view=new DataView(this.bytes.buffer)}readBytes(e){const t=this.bytes.subarray(this.pos,this.pos+e);return this.pos+=e,t}readU8(){const e=this.view.getUint8(this.pos);return this.pos+=1,e}readU16(){const e=this.view.getUint16(this.pos,!1);return this.pos+=2,e}readU24(){const e=this.view.getUint16(this.pos,!1),t=this.view.getUint8(this.pos+2);return this.pos+=3,e*256+t}readU32(){const e=this.view.getUint32(this.pos,!1);return this.pos+=4,e}readAscii(e){let t="";for(let r=0;r<e;r++)t+=String.fromCharCode(this.view.getUint8(this.pos+r));return this.pos+=e,t}readId3V2Frame(){if(this.header.majorVersion===2){const e=this.readAscii(3);if(e==="\0\0\0")return null;const t=this.readU24();return{id:e,size:t,flags:0}}else{const e=this.readAscii(4);if(e==="\0\0\0\0")return null;const t=this.readU32();let r=this.header.majorVersion===4?s8(t):t;const i=this.readU16(),a=this.pos,s=o=>{const u=this.pos+o;if(u>this.bytes.length)return!1;if(u<=this.bytes.length-this.frameHeaderSize()){this.pos+=o;const d=this.readAscii(4);if(d!=="\0\0\0\0"&&!/[0-9A-Z]{4}/.test(d))return!1}return!0};if(!s(r)){const o=this.header.majorVersion===4?t:s8(t);s(o)&&(r=o)}return this.pos=a,{id:e,size:r,flags:i}}}readId3V2TextEncoding(){const e=this.readU8();if(e>3)throw new Error(`Unsupported text encoding: ${e}`);return e}readId3V2Text(e,t){const r=this.pos,i=this.readBytes(t-this.pos);switch(e){case ec.ISO_8859_1:{let a="";for(let s=0;s<i.length;s++){const o=i[s];if(o===0){this.pos=r+s+1;break}a+=String.fromCharCode(o)}return a}case ec.UTF_16_WITH_BOM:if(i[0]===255&&i[1]===254){const a=new TextDecoder("utf-16le"),s=jo(i.findIndex((o,u)=>o===0&&i[u+1]===0&&u%2===0),i.length);return this.pos=r+Math.min(s+2,i.length),a.decode(i.subarray(2,s))}else if(i[0]===254&&i[1]===255){const a=new TextDecoder("utf-16be"),s=jo(i.findIndex((o,u)=>o===0&&i[u+1]===0&&u%2===0),i.length);return this.pos=r+Math.min(s+2,i.length),a.decode(i.subarray(2,s))}else{const a=jo(i.findIndex(s=>s===0),i.length);return this.pos=r+Math.min(a+1,i.length),Mr.decode(i.subarray(0,a))}case ec.UTF_16_BE_NO_BOM:{const a=new TextDecoder("utf-16be"),s=jo(i.findIndex((o,u)=>o===0&&i[u+1]===0&&u%2===0),i.length);return this.pos=r+Math.min(s+2,i.length),a.decode(i.subarray(0,s))}case ec.UTF_8:{const a=jo(i.findIndex(s=>s===0),i.length);return this.pos=r+Math.min(a+1,i.length),Mr.decode(i.subarray(0,a))}}}readId3V2EncodingAndText(e){if(this.pos>=e)return"";const t=this.readId3V2TextEncoding();return this.readId3V2Text(t,e)}}const g8=new Map,_g=new Map;function aT(n){try{return new URL(n,window.location.href).href}catch{return n}}async function fj(n){const e=new R1({source:new n6(n),formats:KN});try{const t=await e.getDurationFromMetadata();if(t==null||!Number.isFinite(t)||t<=0)return null;const r=await e.getPrimaryVideoTrack(),i=await e.getAudioTracks();return{duration:t,width:r==null?void 0:r.displayWidth,height:r==null?void 0:r.displayHeight,hasVideo:r!=null,hasAudio:i.length>0}}catch{return null}finally{e.dispose()}}function dj(n){return g8.get(aT(n))}async function hj(n){const e=aT(n),t=g8.get(e);if(t)return t;let r=_g.get(e);return r||(r=fj(e).then(i=>(_g.delete(e),i&&g8.set(e,i),i)),_g.set(e,r),r)}function mj(){const n=h.useRef(null),e=h.useRef(0),t=h.useRef(void 0),r=h.useRef(null),i=h.useRef(!1),a=h.useRef(0),s=h.useRef(null),o=h.useRef(0),u=h.useRef(null),d=h.useRef(0),m=h.useRef(null),{setIsPlaying:p,setCurrentTime:O,setDuration:b,setTimelineReady:S,setElements:k}=Ae.getState(),T=h.useCallback((j,H)=>{const F=Ae.getState(),Y=H??F.duration,ae=FQ(F.elements,j,F.duration,Y);(ae.length!==F.elements.length||ae.some((de,me)=>{const Te=F.elements[me];return!Te||de.id!==Te.id||de.start!==Te.start||de.duration!==Te.duration||de.track!==Te.track}))&&k(ae),Number.isFinite(H)&&(H??0)>0&&H!==F.duration&&b(H??0),F.timelineReady||S(!0);const Oe=ae.filter(de=>de.src&&de.sourceDuration==null&&["video","audio"].includes(de.tag.toLowerCase())&&!dj(de.src));Oe.length>0&&Promise.allSettled(Oe.map(async de=>{const me=await hj(de.src);if(!me)return;const Te=de.key??de.id;Ae.setState(Ce=>{const Ne=Ce.elements.findIndex(V=>(V.key??V.id)===Te);if(Ne===-1||Ce.elements[Ne].sourceDuration!=null)return{};const Xe=Ce.elements.slice();return Xe[Ne]={...Ce.elements[Ne],sourceDuration:me.duration},{elements:Xe}})}))},[k,S,b]),w=h.useCallback(()=>{var j,H;try{const F=n.current,Y=F==null?void 0:F.contentWindow;if(!F||!Y)return null;const ae=Y.__player&&typeof Y.__player.play=="function"?Y.__player:null,ie=bR(F.contentDocument),Oe=yg(ae);if(Oe>0&&ie<=Oe)return ae;let de=null;if(Y.__timeline){const Ce=v3(Y.__timeline),Ne=yg(Ce);if(Ne>0&&ie<=Ne)return Ce;Ne>0&&(de??(de=Ce))}if(Y.__timelines){const Ce=Object.keys(Y.__timelines);if(Ce.length>0){const Ne=(H=(j=F==null?void 0:F.contentDocument)==null?void 0:j.querySelector("[data-composition-id]"))==null?void 0:H.getAttribute("data-composition-id"),Xe=Ne&&Ne in Y.__timelines?Ne:Ce[Ce.length-1],V=v3(Y.__timelines[Xe]),fe=yg(V);if(fe>0&&ie<=fe)return V;fe>0&&(de??(de=V))}}const me=ae??de,Te=Math.max(Ae.getState().duration,ie,Oe);if(me&&Te>0&&("renderSeek"in me||typeof me.seek=="function")){const Ce=m.current;if((Ce==null?void 0:Ce.player)===me&&Ce.duration===Te)return Ce.adapter;Ce==null||Ce.adapter.pause();const Ne=yR(me,Te,OR(Y),()=>Ae.getState().playbackRate);return m.current={player:me,duration:Te,adapter:Ne},Ne}return me}catch(F){return console.warn("[useTimelinePlayer] Could not get playback adapter (cross-origin)",F),null}},[]),A=h.useCallback(()=>{cancelAnimationFrame(a.current)},[]),E=h.useCallback(()=>{const j=()=>{const H=w();if(H){const F=H.getTime(),Y=H.getDuration();Kr.notify(F);const{inPoint:ae,outPoint:ie}=Ae.getState(),Oe=ie!==null?ie:Y,de=ae!==null?ae:0,me=de<Oe?Oe:Y,Te=de<Oe?de:0;if(F>=me){if(Ae.getState().loopEnabled&&Y>0){H.seek(Te),Kr.notify(Te),H.play(),p(!0),e.current=requestAnimationFrame(j);return}H.isPlaying()&&H.pause(),O(F),p(!1),cancelAnimationFrame(e.current);return}}e.current=requestAnimationFrame(j)};e.current=requestAnimationFrame(j)},[w,O,p]),C=h.useCallback(()=>{cancelAnimationFrame(e.current)},[]),P=h.useCallback(j=>{const H=n.current;if(H){$R(H,j);try{const F=H.contentWindow;if(F!=null&&F.__timelines)for(const Y of Object.values(F.__timelines))Y&&typeof Y.timeScale=="function"&&Y.timeScale(j)}catch(F){console.warn("[useTimelinePlayer] Could not set playback rate (cross-origin)",F)}}},[]),$=h.useCallback(j=>{const{audioMuted:H,playbackRate:F}=Ae.getState(),Y=j??F;MR(n.current,Dw(H,Y))},[]),M=h.useCallback(()=>{C(),A();const j=w();j&&(j.getTime()>=j.getDuration()&&j.seek(Ae.getState().inPoint??0),P(Ae.getState().playbackRate),$(),j.play(),s.current="forward",p(!0),E())},[w,p,E,P,$,C,A]),R=h.useCallback(j=>{C(),A();const H=w();if(!H)return;const F=Math.max(0,H.getDuration()),Y=H.getTime()<=0&&F>0?F:H.getTime();H.pause(),Y!==H.getTime()&&H.seek(Y);const ae=Math.max(.1,Math.min(4,j));P(ae),$(ae);let ie=Y,Oe=performance.now();const de=me=>{const Te=(me-Oe)/1e3*ae;let Ce=ie-Te;const{inPoint:Ne,outPoint:Xe}=Ae.getState(),V=Xe!==null?Xe:F,fe=Ne!==null?Ne:0,te=fe<V?V:F,le=fe<V?fe:0;if(Ce<=le)if(Ae.getState().loopEnabled&&F>0)ie=te,Oe=me,Ce=te;else{H.seek(le),Kr.notify(le),O(le),p(!1),s.current=null,a.current=0;return}H.seek(Math.max(0,Ce)),Kr.notify(Math.max(0,Ce)),p(!0),a.current=requestAnimationFrame(de)};p(!0),s.current="backward",a.current=requestAnimationFrame(de)},[w,O,p,P,$,C,A]),N=h.useCallback(()=>{A();const j=w();j&&(j.pause(),O(j.getTime()),p(!1),s.current=null,o.current=0,C())},[w,O,p,C,A]),Z=h.useCallback((j,H)=>{const F=s.current==="backward";A();const Y=w();if(!Y)return r.current=Math.max(0,j),!1;const ae=Math.max(0,Y.getDuration()),ie=Math.max(0,ae>0?Math.min(ae,j):j);return Y.seek(ie,H),Kr.notify(ie),O(ie),(!(H!=null&&H.keepPlaying)||F)&&(C(),Ae.getState().isPlaying&&p(!1),s.current=null,o.current=0),!0},[w,r,O,p,C,A,s,o]);h.useEffect(()=>Ae.subscribe((j,H)=>{j.requestedSeekTime!==null&&j.requestedSeekTime!==H.requestedSeekTime&&(Z(j.requestedSeekTime),Ae.getState().clearSeekRequest())}),[Z]);const{playbackKeyDownRef:D,playbackKeyUpRef:I,attachIframeShortcutListeners:U,togglePlay:K}=BQ({iframeRef:n,shuttleDirectionRef:s,shuttleSpeedIndexRef:o,iframeShortcutCleanupRef:u,getAdapter:w,play:M,playBackward:R,pause:N,seek:Z}),{processTimelineMessageRef:q,enrichMissingCompositionsRef:L,onIframeLoad:W}=qQ({iframeRef:n,probeIntervalRef:t,pendingSeekRef:r,isRefreshingRef:i,getAdapter:w,syncTimelineElements:T,setDuration:b,setCurrentTime:O,setTimelineReady:S,setIsPlaying:p,attachIframeShortcutListeners:U,applyPreviewAudioState:$}),ee=h.useCallback(()=>{const j=w();r.current=j?j.getTime():Ae.getState().currentTime??0,i.current=!0,C(),A(),p(!1)},[w,C,p,A]),X=h.useCallback(()=>{const j=n.current;if(!j)return;ee();const H=j.src,F=new URL(H,window.location.origin);F.searchParams.set("_t",String(Date.now())),j.src=F.toString()},[ee]),B=h.useRef(w);B.current=w,zt(()=>{const j=ae=>D.current(ae),H=ae=>I.current(ae),F=ae=>{const ie=ae.data,Oe=n.current;if(!(ae.source&&Oe&&ae.source!==Oe.contentWindow)){if((ie==null?void 0:ie.source)==="hf-preview"&&(ie==null?void 0:ie.type)==="state")try{if(Ae.getState().elements.length===0){const me=Oe==null?void 0:Oe.contentWindow,Te=me==null?void 0:me.__clipManifest;Te&&Te.clips.length>0&&q.current(Te)}Date.now()-d.current>500&&L.current()}catch(de){console.warn("[useTimelinePlayer] Could not read clip manifest from iframe",de)}if((ie==null?void 0:ie.source)==="hf-preview"&&(ie==null?void 0:ie.type)==="timeline"&&Array.isArray(ie.clips)&&(d.current=Date.now(),q.current(ie),L.current(),Ae.getState().elements.length===0))try{const de=Oe==null?void 0:Oe.contentDocument,me=w();if(de&&me){const Te=qw(de,me.getDuration());Te.length>0&&T(Te)}}catch(de){console.warn("[useTimelinePlayer] Could not read timeline elements on navigate (cross-origin)",de)}}},Y=()=>{var ae;if(document.hidden&&Ae.getState().isPlaying){const ie=(ae=B.current)==null?void 0:ae.call(B);ie&&(ie.pause(),p(!1),C())}};return window.addEventListener("keydown",j,!0),window.addEventListener("keyup",H,!0),window.addEventListener("message",F),document.addEventListener("visibilitychange",Y),()=>{var ae;window.removeEventListener("keydown",j,!0),window.removeEventListener("keyup",H,!0),(ae=u.current)==null||ae.call(u),u.current=null,window.removeEventListener("message",F),document.removeEventListener("visibilitychange",Y),C(),A(),t.current&&clearInterval(t.current)}});const _=h.useCallback(()=>{C(),A(),t.current&&clearInterval(t.current),Ae.getState().reset()},[C,A]);return h.useEffect(()=>Ae.subscribe((j,H)=>{const F=j.playbackRate!==H.playbackRate,Y=j.audioMuted!==H.audioMuted;!F&&!Y||(F&&P(j.playbackRate),$())}),[P,$]),{iframeRef:n,play:M,pause:N,togglePlay:K,seek:Z,onIframeLoad:W,refreshPlayer:X,saveSeekPosition:ee,resetPlayer:_}}const pj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M244,56v48a12,12,0,0,1-12,12H184a12,12,0,1,1,0-24H201.1l-19-17.38c-.13-.12-.26-.24-.38-.37A76,76,0,1,0,127,204h1a75.53,75.53,0,0,0,52.15-20.72,12,12,0,0,1,16.49,17.45A99.45,99.45,0,0,1,128,228h-1.37A100,100,0,1,1,198.51,57.06L220,76.72V56a12,12,0,0,1,24,0Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z",opacity:"0.2"}),h.createElement("path",{d:"M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1,0-16H211.4L184.81,71.64l-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,0,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60L224,85.8V56a8,8,0,1,1,16,0Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1-5.66-13.66l17-17-10.55-9.65-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,1,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60l10.93,10L226.34,50.3A8,8,0,0,1,240,56Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M238,56v48a6,6,0,0,1-6,6H184a6,6,0,0,1,0-12h32.55l-30.38-27.8c-.06-.06-.12-.13-.19-.19a82,82,0,1,0-1.7,117.65,6,6,0,0,1,8.24,8.73A93.46,93.46,0,0,1,128,222h-1.28A94,94,0,1,1,194.37,61.4L226,90.35V56a6,6,0,1,1,12,0Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1,0-16H211.4L184.81,71.64l-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,0,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60L224,85.8V56a8,8,0,1,1,16,0Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M236,56v48a4,4,0,0,1-4,4H184a4,4,0,0,1,0-8h37.7L187.53,68.69l-.13-.12a84,84,0,1,0-1.75,120.51,4,4,0,0,1,5.5,5.82A91.43,91.43,0,0,1,128,220h-1.26A92,92,0,1,1,193,62.84l35,32.05V56a4,4,0,1,1,8,0Z"}))]]),gj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M228,128a100,100,0,0,1-98.66,100H128a99.39,99.39,0,0,1-68.62-27.29,12,12,0,0,1,16.48-17.45,76,76,0,1,0-1.57-109c-.13.13-.25.25-.39.37L54.89,92H72a12,12,0,0,1,0,24H24a12,12,0,0,1-12-12V56a12,12,0,0,1,24,0V76.72L57.48,57.06A100,100,0,0,1,228,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z",opacity:"0.2"}),h.createElement("path",{d:"M224,128a96,96,0,0,1-94.71,96H128A95.38,95.38,0,0,1,62.1,197.8a8,8,0,0,1,11-11.63A80,80,0,1,0,71.43,71.39a3.07,3.07,0,0,1-.26.25L44.59,96H72a8,8,0,0,1,0,16H24a8,8,0,0,1-8-8V56a8,8,0,0,1,16,0V85.8L60.25,60A96,96,0,0,1,224,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a96,96,0,0,1-94.71,96H128A95.38,95.38,0,0,1,62.1,197.8a8,8,0,0,1,11-11.63A80,80,0,1,0,71.43,71.39a3.07,3.07,0,0,1-.26.25L60.63,81.29l17,17A8,8,0,0,1,72,112H24a8,8,0,0,1-8-8V56A8,8,0,0,1,29.66,50.3L49.31,70,60.25,60A96,96,0,0,1,224,128Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M222,128a94,94,0,0,1-92.74,94H128a93.43,93.43,0,0,1-64.5-25.65,6,6,0,1,1,8.24-8.72A82,82,0,1,0,70,70l-.19.19L39.44,98H72a6,6,0,0,1,0,12H24a6,6,0,0,1-6-6V56a6,6,0,0,1,12,0V90.34L61.63,61.4A94,94,0,0,1,222,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a96,96,0,0,1-94.71,96H128A95.38,95.38,0,0,1,62.1,197.8a8,8,0,0,1,11-11.63A80,80,0,1,0,71.43,71.39a3.07,3.07,0,0,1-.26.25L44.59,96H72a8,8,0,0,1,0,16H24a8,8,0,0,1-8-8V56a8,8,0,0,1,16,0V85.8L60.25,60A96,96,0,0,1,224,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M220,128a92,92,0,0,1-90.77,92H128a91.47,91.47,0,0,1-63.13-25.1,4,4,0,1,1,5.5-5.82A84,84,0,1,0,68.6,68.57l-.13.12L34.3,100H72a4,4,0,0,1,0,8H24a4,4,0,0,1-4-4V56a4,4,0,0,1,8,0V94.89l35-32A92,92,0,0,1,220,128Z"}))]]),Oj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M228,128a12,12,0,0,1-12,12H69l51.52,51.51a12,12,0,0,1-17,17l-72-72a12,12,0,0,1,0-17l72-72a12,12,0,0,1,17,17L69,116H216A12,12,0,0,1,228,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M112,56V200L40,128Z",opacity:"0.2"}),h.createElement("path",{d:"M216,120H120V56a8,8,0,0,0-13.66-5.66l-72,72a8,8,0,0,0,0,11.32l72,72A8,8,0,0,0,120,200V136h96a8,8,0,0,0,0-16ZM104,180.69,51.31,128,104,75.31Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H120v64a8,8,0,0,1-13.66,5.66l-72-72a8,8,0,0,1,0-11.32l72-72A8,8,0,0,1,120,56v64h96A8,8,0,0,1,224,128Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M222,128a6,6,0,0,1-6,6H54.49l61.75,61.76a6,6,0,1,1-8.48,8.48l-72-72a6,6,0,0,1,0-8.48l72-72a6,6,0,0,1,8.48,8.48L54.49,122H216A6,6,0,0,1,222,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H59.31l58.35,58.34a8,8,0,0,1-11.32,11.32l-72-72a8,8,0,0,1,0-11.32l72-72a8,8,0,0,1,11.32,11.32L59.31,120H216A8,8,0,0,1,224,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M220,128a4,4,0,0,1-4,4H49.66l65.17,65.17a4,4,0,0,1-5.66,5.66l-72-72a4,4,0,0,1,0-5.66l72-72a4,4,0,0,1,5.66,5.66L49.66,124H216A4,4,0,0,1,220,128Z"}))]]),yj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M87.51,64.49a12,12,0,0,1,0-17l32-32a12,12,0,0,1,17,0l32,32a12,12,0,0,1-17,17L140,53V96a12,12,0,0,1-24,0V53L104.49,64.49A12,12,0,0,1,87.51,64.49Zm64,127L140,203V160a12,12,0,0,0-24,0v43l-11.51-11.52a12,12,0,0,0-17,17l32,32a12,12,0,0,0,17,0l32-32a12,12,0,0,0-17-17Zm89-72-32-32a12,12,0,0,0-17,17L203,116H160a12,12,0,0,0,0,24h43l-11.52,11.51a12,12,0,0,0,17,17l32-32A12,12,0,0,0,240.49,119.51ZM53,140H96a12,12,0,0,0,0-24H53l11.52-11.51a12,12,0,1,0-17-17l-32,32a12,12,0,0,0,0,17l32,32a12,12,0,1,0,17-17Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232,128,128,232,24,128,128,24Z",opacity:"0.2"}),h.createElement("path",{d:"M90.34,61.66a8,8,0,0,1,0-11.32l32-32a8,8,0,0,1,11.32,0l32,32a8,8,0,0,1-11.32,11.32L136,43.31V96a8,8,0,0,1-16,0V43.31L101.66,61.66A8,8,0,0,1,90.34,61.66Zm64,132.68L136,212.69V160a8,8,0,0,0-16,0v52.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Zm83.32-72-32-32a8,8,0,0,0-11.32,11.32L212.69,120H160a8,8,0,0,0,0,16h52.69l-18.35,18.34a8,8,0,0,0,11.32,11.32l32-32A8,8,0,0,0,237.66,122.34ZM43.31,136H96a8,8,0,0,0,0-16H43.31l18.35-18.34A8,8,0,0,0,50.34,90.34l-32,32a8,8,0,0,0,0,11.32l32,32a8,8,0,0,0,11.32-11.32Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M96,136H64v24a8,8,0,0,1-13.66,5.66l-32-32a8,8,0,0,1,0-11.32l32-32A8,8,0,0,1,64,96v24H96a8,8,0,0,1,0,16Zm0-72h24V96a8,8,0,0,0,16,0V64h24a8,8,0,0,0,5.66-13.66l-32-32a8,8,0,0,0-11.32,0l-32,32A8,8,0,0,0,96,64Zm141.66,58.34-32-32A8,8,0,0,0,192,96v24H160a8,8,0,0,0,0,16h32v24a8,8,0,0,0,13.66,5.66l32-32A8,8,0,0,0,237.66,122.34ZM160,192H136V160a8,8,0,0,0-16,0v32H96a8,8,0,0,0-5.66,13.66l32,32a8,8,0,0,0,11.32,0l32-32A8,8,0,0,0,160,192Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M91.76,60.24a6,6,0,0,1,0-8.48l32-32a6,6,0,0,1,8.48,0l32,32a6,6,0,1,1-8.48,8.48L134,38.49V96a6,6,0,0,1-12,0V38.49L100.24,60.24A6,6,0,0,1,91.76,60.24Zm64,135.52L134,217.51V160a6,6,0,0,0-12,0v57.51l-21.76-21.75a6,6,0,0,0-8.48,8.48l32,32a6,6,0,0,0,8.48,0l32-32a6,6,0,0,0-8.48-8.48Zm80.48-72-32-32a6,6,0,0,0-8.48,8.48L217.51,122H160a6,6,0,0,0,0,12h57.51l-21.75,21.76a6,6,0,1,0,8.48,8.48l32-32A6,6,0,0,0,236.24,123.76ZM38.49,134H96a6,6,0,0,0,0-12H38.49l21.75-21.76a6,6,0,0,0-8.48-8.48l-32,32a6,6,0,0,0,0,8.48l32,32a6,6,0,0,0,8.48-8.48Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M90.34,61.66a8,8,0,0,1,0-11.32l32-32a8,8,0,0,1,11.32,0l32,32a8,8,0,0,1-11.32,11.32L136,43.31V96a8,8,0,0,1-16,0V43.31L101.66,61.66A8,8,0,0,1,90.34,61.66Zm64,132.68L136,212.69V160a8,8,0,0,0-16,0v52.69l-18.34-18.35a8,8,0,0,0-11.32,11.32l32,32a8,8,0,0,0,11.32,0l32-32a8,8,0,0,0-11.32-11.32Zm83.32-72-32-32a8,8,0,0,0-11.32,11.32L212.69,120H160a8,8,0,0,0,0,16h52.69l-18.35,18.34a8,8,0,0,0,11.32,11.32l32-32A8,8,0,0,0,237.66,122.34ZM43.31,136H96a8,8,0,0,0,0-16H43.31l18.35-18.34A8,8,0,0,0,50.34,90.34l-32,32a8,8,0,0,0,0,11.32l32,32a8,8,0,0,0,11.32-11.32Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M93.17,58.83a4,4,0,0,1,0-5.66l32-32a4,4,0,0,1,5.66,0l32,32a4,4,0,0,1-5.66,5.66L132,33.66V96a4,4,0,0,1-8,0V33.66L98.83,58.83A4,4,0,0,1,93.17,58.83Zm64,138.34L132,222.34V160a4,4,0,0,0-8,0v62.34L98.83,197.17a4,4,0,0,0-5.66,5.66l32,32a4,4,0,0,0,5.66,0l32-32a4,4,0,0,0-5.66-5.66Zm77.66-72-32-32a4,4,0,0,0-5.66,5.66L222.34,124H160a4,4,0,0,0,0,8h62.34l-25.17,25.17a4,4,0,0,0,5.66,5.66l32-32A4,4,0,0,0,234.83,125.17ZM33.66,132H96a4,4,0,0,0,0-8H33.66L58.83,98.83a4,4,0,0,0-5.66-5.66l-32,32a4,4,0,0,0,0,5.66l32,32a4,4,0,1,0,5.66-5.66Z"}))]]),bj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,52H182.42L170,33.34A12,12,0,0,0,160,28H96a12,12,0,0,0-10,5.34L73.57,52H48A28,28,0,0,0,20,80V192a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V80A28,28,0,0,0,208,52Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V80a4,4,0,0,1,4-4H80a12,12,0,0,0,10-5.34L102.42,52h51.15L166,70.66A12,12,0,0,0,176,76h32a4,4,0,0,1,4,4ZM128,84a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,84Zm0,72a24,24,0,1,1,24-24A24,24,0,0,1,128,156Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,64H176L160,40H96L80,64H48A16,16,0,0,0,32,80V192a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V80A16,16,0,0,0,208,64ZM128,168a36,36,0,1,1,36-36A36,36,0,0,1,128,168Z",opacity:"0.2"}),h.createElement("path",{d:"M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm-44,76a36,36,0,1,1-36-36A36,36,0,0,1,164,132Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,58H179.21L165,36.67A6,6,0,0,0,160,34H96a6,6,0,0,0-5,2.67L76.78,58H48A22,22,0,0,0,26,80V192a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V80A22,22,0,0,0,208,58Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V80A10,10,0,0,1,48,70H80a6,6,0,0,0,5-2.67L99.21,46h57.57L171,67.33A6,6,0,0,0,176,70h32a10,10,0,0,1,10,10ZM128,90a42,42,0,1,0,42,42A42,42,0,0,0,128,90Zm0,72a30,30,0,1,1,30-30A30,30,0,0,1,128,162Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,56H180.28L166.65,35.56A8,8,0,0,0,160,32H96a8,8,0,0,0-6.65,3.56L75.71,56H48A24,24,0,0,0,24,80V192a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V80A24,24,0,0,0,208,56Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H80a8,8,0,0,0,6.66-3.56L100.28,48h55.43l13.63,20.44A8,8,0,0,0,176,72h32a8,8,0,0,1,8,8ZM128,88a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,88Zm0,72a28,28,0,1,1,28-28A28,28,0,0,1,128,160Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,60H178.13L163.32,37.78A4,4,0,0,0,160,36H96a4,4,0,0,0-3.32,1.78L77.85,60H48A20,20,0,0,0,28,80V192a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V80A20,20,0,0,0,208,60Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V80A12,12,0,0,1,48,68H80a4,4,0,0,0,3.33-1.78L98.13,44h59.72l14.82,22.22A4,4,0,0,0,176,68h32a12,12,0,0,1,12,12ZM128,92a40,40,0,1,0,40,40A40,40,0,0,0,128,92Zm0,72a32,32,0,1,1,32-32A32,32,0,0,1,128,164Z"}))]]),xj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,96l-80,80L48,96Z",opacity:"0.2"}),h.createElement("path",{d:"M215.39,92.94A8,8,0,0,0,208,88H48a8,8,0,0,0-5.66,13.66l80,80a8,8,0,0,0,11.32,0l80-80A8,8,0,0,0,215.39,92.94ZM128,164.69,67.31,104H188.69Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,48,88H208a8,8,0,0,1,5.66,13.66Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,100.24l-80,80a6,6,0,0,1-8.48,0l-80-80a6,6,0,0,1,8.48-8.48L128,167.51l75.76-75.75a6,6,0,0,1,8.48,8.48Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,98.83l-80,80a4,4,0,0,1-5.66,0l-80-80a4,4,0,0,1,5.66-5.66L128,170.34l77.17-77.17a4,4,0,1,1,5.66,5.66Z"}))]]),Sj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M184.49,136.49l-80,80a12,12,0,0,1-17-17L159,128,87.51,56.49a12,12,0,1,1,17-17l80,80A12,12,0,0,1,184.49,136.49Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M176,128,96,208V48Z",opacity:"0.2"}),h.createElement("path",{d:"M181.66,122.34l-80-80A8,8,0,0,0,88,48V208a8,8,0,0,0,13.66,5.66l80-80A8,8,0,0,0,181.66,122.34ZM104,188.69V67.31L164.69,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M181.66,133.66l-80,80A8,8,0,0,1,88,208V48a8,8,0,0,1,13.66-5.66l80,80A8,8,0,0,1,181.66,133.66Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M180.24,132.24l-80,80a6,6,0,0,1-8.48-8.48L167.51,128,91.76,52.24a6,6,0,0,1,8.48-8.48l80,80A6,6,0,0,1,180.24,132.24Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M178.83,130.83l-80,80a4,4,0,0,1-5.66-5.66L170.34,128,93.17,50.83a4,4,0,0,1,5.66-5.66l80,80A4,4,0,0,1,178.83,130.83Z"}))]]),kj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M84,100A12,12,0,0,1,96,88h64a12,12,0,0,1,0,24H96A12,12,0,0,1,84,100Zm12,52h64a12,12,0,0,0,0-24H96a12,12,0,0,0,0,24ZM236,56V184a20,20,0,0,1-20,20H157.89l-12.52,21.92a20,20,0,0,1-34.74,0L98.11,204H40a20,20,0,0,1-20-20V56A20,20,0,0,1,40,36H216A20,20,0,0,1,236,56Zm-24,4H44V180h61.07a12,12,0,0,1,10.42,6.05L128,207.94l12.51-21.89A12,12,0,0,1,150.93,180H212Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,56V184a8,8,0,0,1-8,8H150.93l-16,28a8,8,0,0,1-13.9,0l-16-28H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8H216A8,8,0,0,1,224,56Z",opacity:"0.2"}),h.createElement("path",{d:"M88,104a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,104Zm8,40h64a8,8,0,0,0,0-16H96a8,8,0,0,0,0,16ZM232,56V184a16,16,0,0,1-16,16H155.57l-13.68,23.94a16,16,0,0,1-27.78,0L100.43,200H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Zm-16,0H40V184h65.07a8,8,0,0,1,7,4l16,28,16-28a8,8,0,0,1,7-4H216Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V184a16,16,0,0,0,16,16h60.43l13.68,23.94a16,16,0,0,0,27.78,0L155.57,200H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM160,144H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M166,104a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,104Zm-6,26H96a6,6,0,0,0,0,12h64a6,6,0,0,0,0-12Zm70-74V184a14,14,0,0,1-14,14H154.41L140.16,223a14,14,0,0,1-24.32,0L101.59,198H40a14,14,0,0,1-14-14V56A14,14,0,0,1,40,42H216A14,14,0,0,1,230,56Zm-12,0a2,2,0,0,0-2-2H40a2,2,0,0,0-2,2V184a2,2,0,0,0,2,2h65.07a6,6,0,0,1,5.21,3l16,28a2,2,0,0,0,3.48,0l16-28a6,6,0,0,1,5.21-3H216a2,2,0,0,0,2-2Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M88,104a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,104Zm8,40h64a8,8,0,0,0,0-16H96a8,8,0,0,0,0,16ZM232,56V184a16,16,0,0,1-16,16H155.57l-13.68,23.94a16,16,0,0,1-27.78,0L100.43,200H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Zm-16,0H40V184h65.07a8,8,0,0,1,7,4l16,28,16-28a8,8,0,0,1,7-4H216Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M164,104a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,104Zm-4,28H96a4,4,0,0,0,0,8h64a4,4,0,0,0,0-8Zm68-76V184a12,12,0,0,1-12,12H153.25L138.42,222a12,12,0,0,1-20.84,0L102.75,196H40a12,12,0,0,1-12-12V56A12,12,0,0,1,40,44H216A12,12,0,0,1,228,56Zm-8,0a4,4,0,0,0-4-4H40a4,4,0,0,0-4,4V184a4,4,0,0,0,4,4h65.07a4,4,0,0,1,3.47,2l16,28a4,4,0,0,0,6.94,0l16-28a4,4,0,0,1,3.47-2H216a4,4,0,0,0,4-4Z"}))]]),vj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",opacity:"0.2"}),h.createElement("path",{d:"M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z"}))]]),wj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M176.49,95.51a12,12,0,0,1,0,17l-56,56a12,12,0,0,1-17,0l-24-24a12,12,0,1,1,17-17L112,143l47.51-47.52A12,12,0,0,1,176.49,95.51ZM236,128A108,108,0,1,1,128,20,108.12,108.12,0,0,1,236,128Zm-24,0a84,84,0,1,0-84,84A84.09,84.09,0,0,0,212,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),h.createElement("path",{d:"M173.66,98.34a8,8,0,0,1,0,11.32l-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35A8,8,0,0,1,173.66,98.34ZM232,128A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm45.66,85.66-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35a8,8,0,0,1,11.32,11.32Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M172.24,99.76a6,6,0,0,1,0,8.48l-56,56a6,6,0,0,1-8.48,0l-24-24a6,6,0,0,1,8.48-8.48L112,151.51l51.76-51.75A6,6,0,0,1,172.24,99.76ZM230,128A102,102,0,1,1,128,26,102.12,102.12,0,0,1,230,128Zm-12,0a90,90,0,1,0-90,90A90.1,90.1,0,0,0,218,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M173.66,98.34a8,8,0,0,1,0,11.32l-56,56a8,8,0,0,1-11.32,0l-24-24a8,8,0,0,1,11.32-11.32L112,148.69l50.34-50.35A8,8,0,0,1,173.66,98.34ZM232,128A104,104,0,1,1,128,24,104.11,104.11,0,0,1,232,128Zm-16,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M170.83,101.17a4,4,0,0,1,0,5.66l-56,56a4,4,0,0,1-5.66,0l-24-24a4,4,0,0,1,5.66-5.66L112,154.34l53.17-53.17A4,4,0,0,1,170.83,101.17ZM228,128A100,100,0,1,1,128,28,100.11,100.11,0,0,1,228,128Zm-8,0a92,92,0,1,0-92,92A92.1,92.1,0,0,0,220,128Z"}))]]),Tj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M172,164a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,164Zm-12-52H96a12,12,0,0,0,0,24h64a12,12,0,0,0,0-24Zm60-64V216a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V48A20,20,0,0,1,56,28H90.53a51.88,51.88,0,0,1,74.94,0H200A20,20,0,0,1,220,48ZM100.29,60h55.42a28,28,0,0,0-55.42,0ZM196,52H178.59A52.13,52.13,0,0,1,180,64v8a12,12,0,0,1-12,12H88A12,12,0,0,1,76,72V64a52.13,52.13,0,0,1,1.41-12H60V212H196Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,48V216a8,8,0,0,1-8,8H56a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H96a39.83,39.83,0,0,0-8,24v8h80V64a39.83,39.83,0,0,0-8-24h40A8,8,0,0,1,208,48Z",opacity:"0.2"}),h.createElement("path",{d:"M168,152a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,152Zm-8-40H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Zm56-64V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V48A16,16,0,0,1,56,32H92.26a47.92,47.92,0,0,1,71.48,0H200A16,16,0,0,1,216,48ZM96,64h64a32,32,0,0,0-64,0ZM200,48H173.25A47.93,47.93,0,0,1,176,64v8a8,8,0,0,1-8,8H88a8,8,0,0,1-8-8V64a47.93,47.93,0,0,1,2.75-16H56V216H200Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,32H163.74a47.92,47.92,0,0,0-71.48,0H56A16,16,0,0,0,40,48V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V48A16,16,0,0,0,200,32Zm-72,0a32,32,0,0,1,32,32H96A32,32,0,0,1,128,32Zm32,128H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M166,152a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,152Zm-6-38H96a6,6,0,0,0,0,12h64a6,6,0,0,0,0-12Zm54-66V216a14,14,0,0,1-14,14H56a14,14,0,0,1-14-14V48A14,14,0,0,1,56,34H93.17a45.91,45.91,0,0,1,69.66,0H200A14,14,0,0,1,214,48ZM94,64v2h68V64a34,34,0,0,0-68,0ZM202,48a2,2,0,0,0-2-2H170.33A45.77,45.77,0,0,1,174,64v8a6,6,0,0,1-6,6H88a6,6,0,0,1-6-6V64a45.77,45.77,0,0,1,3.67-18H56a2,2,0,0,0-2,2V216a2,2,0,0,0,2,2H200a2,2,0,0,0,2-2Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M168,152a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,152Zm-8-40H96a8,8,0,0,0,0,16h64a8,8,0,0,0,0-16Zm56-64V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V48A16,16,0,0,1,56,32H92.26a47.92,47.92,0,0,1,71.48,0H200A16,16,0,0,1,216,48ZM96,64h64a32,32,0,0,0-64,0ZM200,48H173.25A47.93,47.93,0,0,1,176,64v8a8,8,0,0,1-8,8H88a8,8,0,0,1-8-8V64a47.93,47.93,0,0,1,2.75-16H56V216H200Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M164,152a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,152Zm-4-36H96a4,4,0,0,0,0,8h64a4,4,0,0,0,0-8Zm52-68V216a12,12,0,0,1-12,12H56a12,12,0,0,1-12-12V48A12,12,0,0,1,56,36H94.08a44,44,0,0,1,67.84,0H200A12,12,0,0,1,212,48ZM92,64v4h72V64a36,36,0,0,0-72,0ZM204,48a4,4,0,0,0-4-4H167.17A43.71,43.71,0,0,1,172,64v8a4,4,0,0,1-4,4H88a4,4,0,0,1-4-4V64a43.71,43.71,0,0,1,4.83-20H56a4,4,0,0,0-4,4V216a4,4,0,0,0,4,4H200a4,4,0,0,0,4-4Z"}))]]),Aj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm0,192a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,212Zm68-84a12,12,0,0,1-12,12H128a12,12,0,0,1-12-12V72a12,12,0,0,1,24,0v44h44A12,12,0,0,1,196,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),h.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm64-88a8,8,0,0,1-8,8H128a8,8,0,0,1-8-8V72a8,8,0,0,1,16,0v48h48A8,8,0,0,1,192,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm56,112H128a8,8,0,0,1-8-8V72a8,8,0,0,1,16,0v48h48a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm0,192a90,90,0,1,1,90-90A90.1,90.1,0,0,1,128,218Zm62-90a6,6,0,0,1-6,6H128a6,6,0,0,1-6-6V72a6,6,0,0,1,12,0v50h50A6,6,0,0,1,190,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,192a88,88,0,1,1,88-88A88.1,88.1,0,0,1,128,216Zm64-88a8,8,0,0,1-8,8H128a8,8,0,0,1-8-8V72a8,8,0,0,1,16,0v48h48A8,8,0,0,1,192,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm0,192a92,92,0,1,1,92-92A92.1,92.1,0,0,1,128,220Zm60-92a4,4,0,0,1-4,4H128a4,4,0,0,1-4-4V72a4,4,0,0,1,8,0v52h52A4,4,0,0,1,188,128Z"}))]]),Pj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,28H88A12,12,0,0,0,76,40V76H40A12,12,0,0,0,28,88V216a12,12,0,0,0,12,12H168a12,12,0,0,0,12-12V180h36a12,12,0,0,0,12-12V40A12,12,0,0,0,216,28ZM156,204H52V100H156Zm48-48H180V88a12,12,0,0,0-12-12H100V52H204Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40V168H168V88H88V40Z",opacity:"0.2"}),h.createElement("path",{d:"M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32ZM160,208H48V96H160Zm48-48H176V88a8,8,0,0,0-8-8H96V48H208Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32Zm-8,128H176V88a8,8,0,0,0-8-8H96V48H208Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,34H88a6,6,0,0,0-6,6V82H40a6,6,0,0,0-6,6V216a6,6,0,0,0,6,6H168a6,6,0,0,0,6-6V174h42a6,6,0,0,0,6-6V40A6,6,0,0,0,216,34ZM162,210H46V94H162Zm48-48H174V88a6,6,0,0,0-6-6H94V46H210Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32ZM160,208H48V96H160Zm48-48H176V88a8,8,0,0,0-8-8H96V48H208Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,36H88a4,4,0,0,0-4,4V84H40a4,4,0,0,0-4,4V216a4,4,0,0,0,4,4H168a4,4,0,0,0,4-4V172h44a4,4,0,0,0,4-4V40A4,4,0,0,0,216,36ZM164,212H44V92H164Zm48-48H172V88a4,4,0,0,0-4-4H92V44H212Z"}))]]),Cj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M251,123.13c-.37-.81-9.13-20.26-28.48-39.61C196.63,57.67,164,44,128,44S59.37,57.67,33.51,83.52C14.16,102.87,5.4,122.32,5,123.13a12.08,12.08,0,0,0,0,9.75c.37.82,9.13,20.26,28.49,39.61C59.37,198.34,92,212,128,212s68.63-13.66,94.48-39.51c19.36-19.35,28.12-38.79,28.49-39.61A12.08,12.08,0,0,0,251,123.13Zm-46.06,33C183.47,177.27,157.59,188,128,188s-55.47-10.73-76.91-31.88A130.36,130.36,0,0,1,29.52,128,130.45,130.45,0,0,1,51.09,99.89C72.54,78.73,98.41,68,128,68s55.46,10.73,76.91,31.89A130.36,130.36,0,0,1,226.48,128,130.45,130.45,0,0,1,204.91,156.12ZM128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,64a20,20,0,1,1,20-20A20,20,0,0,1,128,148Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,56C48,56,16,128,16,128s32,72,112,72,112-72,112-72S208,56,128,56Zm0,112a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z",opacity:"0.2"}),h.createElement("path",{d:"M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.47,133.47,0,0,1,25,128,133.33,133.33,0,0,1,48.07,97.25C70.33,75.19,97.22,64,128,64s57.67,11.19,79.93,33.25A133.46,133.46,0,0,1,231.05,128C223.84,141.46,192.43,192,128,192Zm0-112a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M245.48,125.57c-.34-.78-8.66-19.23-27.24-37.81C201,70.54,171.38,50,128,50S55,70.54,37.76,87.76c-18.58,18.58-26.9,37-27.24,37.81a6,6,0,0,0,0,4.88c.34.77,8.66,19.22,27.24,37.8C55,185.47,84.62,206,128,206s73-20.53,90.24-37.75c18.58-18.58,26.9-37,27.24-37.8A6,6,0,0,0,245.48,125.57ZM128,194c-31.38,0-58.78-11.42-81.45-33.93A134.77,134.77,0,0,1,22.69,128,134.56,134.56,0,0,1,46.55,95.94C69.22,73.42,96.62,62,128,62s58.78,11.42,81.45,33.94A134.56,134.56,0,0,1,233.31,128C226.94,140.21,195,194,128,194Zm0-112a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M247.31,124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57,61.26,162.88,48,128,48S61.43,61.26,36.34,86.35C17.51,105.18,9,124,8.69,124.76a8,8,0,0,0,0,6.5c.35.79,8.82,19.57,27.65,38.4C61.43,194.74,93.12,208,128,208s66.57-13.26,91.66-38.34c18.83-18.83,27.3-37.61,27.65-38.4A8,8,0,0,0,247.31,124.76ZM128,192c-30.78,0-57.67-11.19-79.93-33.25A133.47,133.47,0,0,1,25,128,133.33,133.33,0,0,1,48.07,97.25C70.33,75.19,97.22,64,128,64s57.67,11.19,79.93,33.25A133.46,133.46,0,0,1,231.05,128C223.84,141.46,192.43,192,128,192Zm0-112a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M243.66,126.38c-.34-.76-8.52-18.89-26.83-37.2C199.87,72.22,170.7,52,128,52S56.13,72.22,39.17,89.18c-18.31,18.31-26.49,36.44-26.83,37.2a4.08,4.08,0,0,0,0,3.25c.34.77,8.52,18.89,26.83,37.2,17,17,46.14,37.17,88.83,37.17s71.87-20.21,88.83-37.17c18.31-18.31,26.49-36.43,26.83-37.2A4.08,4.08,0,0,0,243.66,126.38Zm-32.7,35c-23.07,23-51,34.62-83,34.62s-59.89-11.65-83-34.62A135.71,135.71,0,0,1,20.44,128,135.69,135.69,0,0,1,45,94.62C68.11,71.65,96,60,128,60s59.89,11.65,83,34.62A135.79,135.79,0,0,1,235.56,128,135.71,135.71,0,0,1,211,161.38ZM128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Z"}))]]),Ej=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,79.52l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40V216a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.52ZM160,57l23,23H160ZM60,212V44h76V92a12,12,0,0,0,12,12h48V212Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40V216a14,14,0,0,0,14,14H200a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM200,218H56a2,2,0,0,1-2-2V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216A2,2,0,0,1,200,218Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40V216a12,12,0,0,0,12,12H200a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM200,220H56a4,4,0,0,1-4-4V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216A4,4,0,0,1,200,220Z"}))]]),Mj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M180.49,143.51a12,12,0,0,1,0,17l-24,24a12,12,0,0,1-17-17L155,152l-15.52-15.51a12,12,0,1,1,17-17Zm-64-24a12,12,0,0,0-17,0l-24,24a12,12,0,0,0,0,17l24,24a12,12,0,0,0,17-17L101,152l15.52-15.51A12,12,0,0,0,116.49,119.51ZM220,88V216a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.52l56,56A12,12,0,0,1,220,88ZM160,57V80h23Zm36,155V104H148a12,12,0,0,1-12-12V44H60V212Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M181.66,146.34a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32Zm-72-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,0,11.32l24,24a8,8,0,0,0,11.32-11.32L91.31,152l18.35-18.34A8,8,0,0,0,109.66,122.34ZM216,88V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Zm40,136V96H152a8,8,0,0,1-8-8V40H56V216H200Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34Zm-104,88a8,8,0,0,1-11.32,11.32l-24-24a8,8,0,0,1,0-11.32l24-24a8,8,0,0,1,11.32,11.32L91.31,152Zm72-12.68-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32l24,24A8,8,0,0,1,181.66,157.66ZM152,88V44l44,44Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M180.24,147.76a6,6,0,0,1,0,8.48l-24,24a6,6,0,0,1-8.48-8.48L167.51,152l-19.75-19.76a6,6,0,1,1,8.48-8.48Zm-72-24a6,6,0,0,0-8.48,0l-24,24a6,6,0,0,0,0,8.48l24,24a6,6,0,1,0,8.48-8.48L88.49,152l19.75-19.76A6,6,0,0,0,108.24,123.76ZM214,88V216a14,14,0,0,1-14,14H56a14,14,0,0,1-14-14V40A14,14,0,0,1,56,26h96a6,6,0,0,1,4.25,1.76l56,56A6,6,0,0,1,214,88Zm-56-6h35.52L158,46.48Zm44,134V94H152a6,6,0,0,1-6-6V38H56a2,2,0,0,0-2,2V216a2,2,0,0,0,2,2H200A2,2,0,0,0,202,216Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M181.66,146.34a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32Zm-72-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,0,11.32l24,24a8,8,0,0,0,11.32-11.32L91.31,152l18.35-18.34A8,8,0,0,0,109.66,122.34ZM216,88V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Zm40,136V96H152a8,8,0,0,1-8-8V40H56V216H200Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M178.83,149.17a4,4,0,0,1,0,5.66l-24,24a4,4,0,0,1-5.66-5.66L170.34,152l-21.17-21.17a4,4,0,1,1,5.66-5.66Zm-72-24a4,4,0,0,0-5.66,0l-24,24a4,4,0,0,0,0,5.66l24,24a4,4,0,1,0,5.66-5.66L85.66,152l21.17-21.17A4,4,0,0,0,106.83,125.17ZM212,88V216a12,12,0,0,1-12,12H56a12,12,0,0,1-12-12V40A12,12,0,0,1,56,28h96a4,4,0,0,1,2.83,1.17l56,56A4,4,0,0,1,212,88Zm-56-4h42.34L156,41.65Zm48,132V92H152a4,4,0,0,1-4-4V36H56a4,4,0,0,0-4,4V216a4,4,0,0,0,4,4H200A4,4,0,0,0,204,216Z"}))]]),$j=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,180c0,8.67,5.5,16,12,16a10.27,10.27,0,0,0,7.33-3.43,12,12,0,1,1,17.34,16.6A34,34,0,0,1,60,220C40.15,220,24,202,24,180s16.15-40,36-40a34,34,0,0,1,24.67,10.83,12,12,0,1,1-17.34,16.6A10.27,10.27,0,0,0,60,164C53.5,164,48,171.31,48,180Zm97.51-5.71c-5.12-3.45-11.32-5.24-16.8-6.82a79.5,79.5,0,0,1-7.91-2.59c2.45-1.18,9.71-1.3,16.07.33A12,12,0,0,0,143,142a69,69,0,0,0-12-1.86c-9.93-.66-18,1.08-24.1,5.17a24.45,24.45,0,0,0-10.69,17.76c-1.1,8.74,2.49,16.27,10.11,21.19,4.78,3.09,10.36,4.7,15.75,6.26,3,.89,7.94,2.3,9.88,3.53a2.48,2.48,0,0,1-.21.71c-1.37,1.55-9.58,1.79-16.39-.06a12,12,0,1,0-6.46,23.11A63.75,63.75,0,0,0,125.1,220c6.46,0,13.73-1.17,19.73-5.15a24.73,24.73,0,0,0,10.95-18C157,187.53,153.33,179.53,145.51,174.27Zm68,0c-5.12-3.45-11.32-5.24-16.8-6.82a79.5,79.5,0,0,1-7.91-2.59c2.45-1.18,9.71-1.3,16.07.33A12,12,0,0,0,211,142a69,69,0,0,0-12-1.86c-9.93-.66-18,1.08-24.1,5.17a24.45,24.45,0,0,0-10.69,17.76c-1.1,8.74,2.49,16.27,10.11,21.19,4.78,3.09,10.36,4.7,15.75,6.26,3,.89,7.94,2.3,9.88,3.53a2.48,2.48,0,0,1-.21.71c-1.37,1.55-9.58,1.79-16.39-.06a12,12,0,1,0-6.46,23.11A63.75,63.75,0,0,0,193.1,220c6.46,0,13.73-1.17,19.73-5.15a24.73,24.73,0,0,0,10.95-18C225,187.53,221.33,179.53,213.51,174.27ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.51l56,56A12,12,0,0,1,220,88v20a12,12,0,1,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,1,1-24,0ZM160,80h23L160,57Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M48,180c0,11,7.18,20,16,20a14.2,14.2,0,0,0,10.22-4.66A8,8,0,1,1,85.77,206.4,30,30,0,0,1,64,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a30,30,0,0,1,21.77,9.6,8,8,0,1,1-11.55,11.06A14.24,14.24,0,0,0,64,160C55.18,160,48,169,48,180Zm79.6-8.69c-4-1.16-8.14-2.35-10.45-3.84-1.26-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.35-1.73,19.83-.56a8,8,0,0,0,4.07-15.48c-2.12-.55-21-5.22-32.83,2.76a20.55,20.55,0,0,0-9,14.95c-2,15.88,13.64,20.41,23,23.11,12.07,3.49,13.13,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.14,3.93-4.6,3.06-15.17,1.56-19.55.36a8,8,0,0,0-4.3,15.41,61.23,61.23,0,0,0,15.18,2c5.83,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C154,179,137.48,174.17,127.6,171.31Zm64,0c-4-1.16-8.14-2.35-10.45-3.84-1.25-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.82-.56a8,8,0,0,0,4.07-15.48c-2.11-.55-21-5.22-32.83,2.76a20.58,20.58,0,0,0-8.95,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.15,3.93-4.6,3.06-15.16,1.56-19.54.36A8,8,0,0,0,173.93,214a61.34,61.34,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.81,20.81,0,0,0,9.18-15.23C218,179,201.48,174.17,191.59,171.31ZM40,112V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v24a8,8,0,1,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0ZM160,80h28.68L160,51.31Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,180c0,11,7.18,20,16,20a14.18,14.18,0,0,0,10.06-4.5,8.2,8.2,0,0,1,10.9-.91,8,8,0,0,1,.81,11.81A30,30,0,0,1,64,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a30,30,0,0,1,21.38,9.19,8.26,8.26,0,0,1,.74,11.09,8,8,0,0,1-11.9.38A14.2,14.2,0,0,0,64,160C55.18,160,48,169,48,180Zm79.6-8.69c-4-1.16-8.14-2.35-10.45-3.84-1.26-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.35-1.73,19.83-.56a8,8,0,0,0,4.07-15.48c-2.12-.55-21-5.22-32.83,2.76a20.55,20.55,0,0,0-9,14.95c-2,15.88,13.64,20.41,23,23.11,12.07,3.49,13.13,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.14,3.93-4.6,3.06-15.17,1.56-19.55.36a8,8,0,0,0-4.3,15.41,61.23,61.23,0,0,0,15.18,2c5.83,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C154,179,137.48,174.17,127.6,171.31Zm64,0c-4-1.16-8.14-2.35-10.45-3.84-1.25-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.82-.56a8,8,0,0,0,4.07-15.48c-2.11-.55-21-5.22-32.83,2.76a20.58,20.58,0,0,0-8.95,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.15,3.93-4.6,3.06-15.16,1.56-19.54.36A8,8,0,0,0,173.93,214a61.34,61.34,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.81,20.81,0,0,0,9.18-15.23C218,179,201.48,174.17,191.59,171.31ZM40,116V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v28a4,4,0,0,1-4,4H44A4,4,0,0,1,40,116ZM152,88h44L152,44Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M46,180c0,12.13,8.07,22,18,22a16.21,16.21,0,0,0,11.66-5.28,6,6,0,0,1,8.67,8.3A28.09,28.09,0,0,1,64,214c-16.54,0-30-15.25-30-34s13.46-34,30-34a28.09,28.09,0,0,1,20.33,9,6,6,0,0,1-8.67,8.3A16.21,16.21,0,0,0,64,158C54.07,158,46,167.86,46,180Zm81-6.77c-10.85-3.13-13.4-4.69-13-7.91a6.56,6.56,0,0,1,2.88-5.08c5.59-3.79,17.66-1.82,21.44-.84a6,6,0,1,0,3.06-11.6c-2-.53-20.09-5-31.2,2.48a18.62,18.62,0,0,0-8.09,13.54c-1.79,14.19,12.27,18.25,21.57,20.94,12.12,3.5,14.78,5.33,14.21,9.76a6.89,6.89,0,0,1-3,5.34c-5.6,3.73-17.48,1.64-21.18.62A6,6,0,1,0,110.48,212a59.29,59.29,0,0,0,14.67,2c5.49,0,11.55-.95,16.36-4.14a18.89,18.89,0,0,0,8.31-13.81C151.83,180.39,136.92,176.08,127,173.22Zm64,0c-10.85-3.13-13.41-4.69-13-7.91a6.59,6.59,0,0,1,2.88-5.08c5.6-3.79,17.65-1.83,21.44-.84a6,6,0,0,0,3.07-11.6c-2-.54-20.1-5-31.21,2.48a18.64,18.64,0,0,0-8.08,13.54c-1.8,14.19,12.26,18.25,21.57,20.94,12.12,3.5,14.77,5.33,14.2,9.76a6.85,6.85,0,0,1-3,5.34c-5.61,3.73-17.48,1.64-21.19.62A6,6,0,0,0,174.47,212a59.41,59.41,0,0,0,14.68,2c5.49,0,11.54-.95,16.36-4.14a18.89,18.89,0,0,0,8.31-13.81C215.83,180.39,200.91,176.08,191,173.22ZM202,94H152a6,6,0,0,1-6-6V38H56a2,2,0,0,0-2,2v72a6,6,0,1,1-12,0V40A14,14,0,0,1,56,26h96a6,6,0,0,1,4.24,1.76l56,56A6,6,0,0,1,214,88v24a6,6,0,1,1-12,0ZM193.5,82,158,46.48V82Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,180c0,11,7.18,20,16,20a14.24,14.24,0,0,0,10.22-4.66A8,8,0,1,1,85.77,206.4,30,30,0,0,1,64,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a30,30,0,0,1,21.77,9.6,8,8,0,1,1-11.55,11.06A14.24,14.24,0,0,0,64,160C55.18,160,48,169,48,180Zm79.6-8.69c-4-1.16-8.14-2.35-10.45-3.84-1.26-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.83-.56a8,8,0,0,0,4.07-15.48c-2.12-.55-21-5.22-32.83,2.76a20.55,20.55,0,0,0-9,14.95c-2,15.88,13.64,20.41,23,23.11,12.07,3.49,13.13,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.14,3.93-4.6,3.06-15.17,1.56-19.55.36a8,8,0,0,0-4.3,15.41,61.23,61.23,0,0,0,15.18,2c5.83,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C154,179,137.48,174.17,127.6,171.31Zm64,0c-4-1.16-8.14-2.35-10.45-3.84-1.25-.81-1.23-1-1.12-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.82-.56a8,8,0,0,0,4.07-15.48c-2.11-.55-21-5.22-32.83,2.76a20.58,20.58,0,0,0-8.95,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.34-2.15,3.93-4.6,3.06-15.16,1.56-19.54.36A8,8,0,0,0,173.93,214a61.34,61.34,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.81,20.81,0,0,0,9.18-15.23C218,179,201.48,174.17,191.59,171.31ZM40,112V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v24a8,8,0,1,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0ZM160,80h28.68L160,51.31Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M44,180c0,13.23,9,24,20,24a18.15,18.15,0,0,0,13.11-5.9,4,4,0,0,1,5.78,5.54A26.13,26.13,0,0,1,64,212c-15.44,0-28-14.36-28-32s12.56-32,28-32a26.13,26.13,0,0,1,18.89,8.36,4,4,0,0,1-5.78,5.54A18.15,18.15,0,0,0,64,156C53,156,44,166.77,44,180Zm82.49-4.85c-10.53-3-15.08-4.91-14.43-10.08a8.57,8.57,0,0,1,3.75-6.49c6.26-4.23,18.77-2.24,23.07-1.11a4,4,0,0,0,2-7.74,61.11,61.11,0,0,0-10.47-1.61c-8.12-.54-14.54.75-19.1,3.82a16.63,16.63,0,0,0-7.22,12.13c-1.58,12.49,10.46,16,20.14,18.77,11.25,3.25,16.47,5.49,15.63,11.94a8.93,8.93,0,0,1-3.9,6.75c-6.28,4.17-18.61,2.05-22.83.88a4,4,0,1,0-2.15,7.7A57.79,57.79,0,0,0,125.19,212c5.18,0,10.83-.86,15.22-3.77a17,17,0,0,0,7.43-12.41C149.64,181.84,136.26,178,126.49,175.15Zm64,0c-10.53-3-15.08-4.91-14.43-10.08a8.57,8.57,0,0,1,3.75-6.49c6.26-4.23,18.77-2.24,23.07-1.11a4,4,0,0,0,2-7.74,61.33,61.33,0,0,0-10.48-1.61c-8.11-.54-14.54.75-19.09,3.82a16.63,16.63,0,0,0-7.22,12.13c-1.59,12.49,10.46,16,20.14,18.77,11.25,3.25,16.46,5.49,15.63,11.94a8.93,8.93,0,0,1-3.9,6.75c-6.28,4.17-18.61,2.05-22.83.88a4,4,0,1,0-2.15,7.7A57.7,57.7,0,0,0,189.19,212c5.17,0,10.83-.86,15.22-3.77a17,17,0,0,0,7.43-12.41C213.63,181.84,200.26,178,190.49,175.15ZM204,92H152a4,4,0,0,1-4-4V36H56a4,4,0,0,0-4,4v72a4,4,0,0,1-8,0V40A12,12,0,0,1,56,28h96a4,4,0,0,1,2.83,1.17l56,56A4,4,0,0,1,212,88v24a4,4,0,0,1-8,0Zm-5.65-8L156,41.65V84Z"}))]]),Rj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,128a12,12,0,0,0,12-12V44h76V92a12,12,0,0,0,12,12h48v12a12,12,0,0,0,24,0V88a12,12,0,0,0-3.51-8.49l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v76A12,12,0,0,0,48,128ZM183,80H160V57ZM68,160v48a12,12,0,0,1-24,0V196H32v12a12,12,0,0,1-24,0V160a12,12,0,0,1,24,0v12H44V160a12,12,0,0,1,24,0Zm60,0a12,12,0,0,1-12,12h-4v36a12,12,0,0,1-24,0V172H84a12,12,0,0,1,0-24h32A12,12,0,0,1,128,160Zm72,0v48a12,12,0,0,1-24,0v-9.36l-.11.16a12,12,0,0,1-19.78,0l-.11-.16V208a12,12,0,0,1-24,0V160a12,12,0,0,1,21.89-6.8L166,170.82l12.11-17.62A12,12,0,0,1,200,160Zm56,48a12,12,0,0,1-12,12H220a12,12,0,0,1-12-12V160a12,12,0,0,1,24,0v36h12A12,12,0,0,1,256,208Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M216,120V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v80a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48v24a8,8,0,0,0,16,0ZM160,51.31,188.69,80H160ZM68,160v48a8,8,0,0,1-16,0V192H32v16a8,8,0,0,1-16,0V160a8,8,0,0,1,16,0v16H52V160a8,8,0,0,1,16,0Zm56,0a8,8,0,0,1-8,8h-8v40a8,8,0,0,1-16,0V168H84a8,8,0,0,1,0-16h32A8,8,0,0,1,124,160Zm72,0v48a8,8,0,0,1-16,0V184l-9.6,12.8a8,8,0,0,1-12.8,0L148,184v24a8,8,0,0,1-16,0V160a8,8,0,0,1,14.4-4.8L164,178.67l17.6-23.47A8,8,0,0,1,196,160Zm56,48a8,8,0,0,1-8,8H216a8,8,0,0,1-8-8V160a8,8,0,0,1,16,0v40h20A8,8,0,0,1,252,208Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M44,128H212a4,4,0,0,0,4-4V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v84A4,4,0,0,0,44,128ZM152,44l44,44H152ZM68,160v48a8,8,0,0,1-16,0V192H32v16a8,8,0,0,1-16,0V160a8,8,0,0,1,16,0v16H52V160a8,8,0,0,1,16,0Zm56,0a8,8,0,0,1-8,8h-8v40a8,8,0,0,1-16,0V168H84a8,8,0,0,1,0-16h32A8,8,0,0,1,124,160Zm72,0v48a8,8,0,0,1-16,0V184l-9.6,12.8a8,8,0,0,1-12.8,0L148,184v24a8,8,0,0,1-16,0V160a8,8,0,0,1,14.4-4.8L164,178.67l17.6-23.47A8,8,0,0,1,196,160Zm56,48a8,8,0,0,1-8,8H216a8,8,0,0,1-8-8V160a8,8,0,0,1,16,0v40h20A8,8,0,0,1,252,208Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M214,120V88a6,6,0,0,0-1.76-4.24l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v80a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50v26a6,6,0,0,0,12,0ZM158,46.48,193.52,82H158ZM66,160v48a6,6,0,0,1-12,0V190H30v18a6,6,0,0,1-12,0V160a6,6,0,0,1,12,0v18H54V160a6,6,0,0,1,12,0Zm56,0a6,6,0,0,1-6,6H106v42a6,6,0,0,1-12,0V166H84a6,6,0,0,1,0-12h32A6,6,0,0,1,122,160Zm72,0v48a6,6,0,0,1-12,0V178l-13.2,17.6a6,6,0,0,1-9.6,0L146,178v30a6,6,0,0,1-12,0V160a6,6,0,0,1,10.8-3.6L164,182l19.2-25.6A6,6,0,0,1,194,160Zm56,48a6,6,0,0,1-6,6H216a6,6,0,0,1-6-6V160a6,6,0,0,1,12,0v42h22A6,6,0,0,1,250,208Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,120V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v80a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48v24a8,8,0,0,0,16,0ZM160,51.31,188.69,80H160ZM68,160v48a8,8,0,0,1-16,0V192H32v16a8,8,0,0,1-16,0V160a8,8,0,0,1,16,0v16H52V160a8,8,0,0,1,16,0Zm56,0a8,8,0,0,1-8,8h-8v40a8,8,0,0,1-16,0V168H84a8,8,0,0,1,0-16h32A8,8,0,0,1,124,160Zm72,0v48a8,8,0,0,1-16,0V184l-9.6,12.8a8,8,0,0,1-12.8,0L148,184v24a8,8,0,0,1-16,0V160a8,8,0,0,1,14.4-4.8L164,178.67l17.6-23.47A8,8,0,0,1,196,160Zm56,48a8,8,0,0,1-8,8H216a8,8,0,0,1-8-8V160a8,8,0,0,1,16,0v40h20A8,8,0,0,1,252,208Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212,88a4,4,0,0,0-1.17-2.83l-2-2h0l-54-54A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v80a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52v28a4,4,0,0,0,8,0ZM156,41.65,198.34,84H156ZM64,160v48a4,4,0,0,1-8,0V188H28v20a4,4,0,0,1-8,0V160a4,4,0,0,1,8,0v20H56V160a4,4,0,0,1,8,0Zm56,0a4,4,0,0,1-4,4H104v44a4,4,0,0,1-8,0V164H84a4,4,0,0,1,0-8h32A4,4,0,0,1,120,160Zm72,0v48a4,4,0,0,1-8,0V172l-16.8,22.4a4,4,0,0,1-6.4,0L144,172v36a4,4,0,0,1-8,0V160a4,4,0,0,1,7.2-2.4L164,185.33l20.8-27.73A4,4,0,0,1,192,160Zm56,48a4,4,0,0,1-4,4H216a4,4,0,0,1-4-4V160a4,4,0,0,1,8,0v44h24A4,4,0,0,1,248,208Z"}))]]),Qj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M120,140H104a12,12,0,0,0-12,12v56a12,12,0,0,0,24,0v-4h4a32,32,0,0,0,0-64Zm0,40h-4V164h4a8,8,0,0,1,0,16Zm104,20.87a12,12,0,0,1-3.33,8.3A34,34,0,0,1,196,220c-19.85,0-36-17.94-36-40s16.15-40,36-40a33.39,33.39,0,0,1,18.71,5.8,12,12,0,1,1-13.42,19.89A9.39,9.39,0,0,0,196,164c-6.5,0-12,7.33-12,16s5.5,16,12,16a9,9,0,0,0,2.7-.42A12,12,0,0,1,208,176h4a12,12,0,0,1,12,12ZM80,152v38a30,30,0,0,1-60,0,12,12,0,0,1,24,0,6,6,0,0,0,12,0V152a12,12,0,0,1,24,0ZM48,120a12,12,0,0,0,12-12V44h76V92a12,12,0,0,0,12,12h48v4a12,12,0,0,0,24,0V88a12,12,0,0,0-3.51-8.48l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68A12,12,0,0,0,48,120ZM160,57l23,23H160Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M120,144H104a8,8,0,0,0-8,8v56a8,8,0,0,0,16,0v-8h8a28,28,0,0,0,0-56Zm0,40h-8V160h8a12,12,0,0,1,0,24Zm96,0v16.87a8,8,0,0,1-2.22,5.53A30.06,30.06,0,0,1,192,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.38,29.38,0,0,1,16.48,5.12,8,8,0,0,1-9,13.26A13.21,13.21,0,0,0,192,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.63,13.63,0,0,0,8-2.71V192a8,8,0,0,1,0-16h8A8,8,0,0,1,216,184ZM80,152v38a26,26,0,0,1-52,0,8,8,0,0,1,16,0,10,10,0,0,0,20,0V152a8,8,0,0,1,16,0ZM213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88A8,8,0,0,0,213.66,82.34ZM160,80V51.31L188.69,80Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M44,120H212a4,4,0,0,0,4-4V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76A4,4,0,0,0,44,120ZM152,44l44,44H152ZM120,144H104a8,8,0,0,0-8,8v55.73a8.17,8.17,0,0,0,7.47,8.25,8,8,0,0,0,8.53-8v-8h7.4c15.24,0,28.13-11.92,28.59-27.15A28,28,0,0,0,120,144Zm-.35,40H112V160h8a12,12,0,0,1,11.94,13.16A12.23,12.23,0,0,1,119.65,184ZM216,200.87a8,8,0,0,1-2.26,5.57A30,30,0,0,1,192,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.36,29.36,0,0,1,16.09,4.86,8.21,8.21,0,0,1,3,10.64,8,8,0,0,1-11.55,2.88A13.21,13.21,0,0,0,192,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.63,13.63,0,0,0,8-2.71V192a8,8,0,0,1-8-8.53,8.17,8.17,0,0,1,8.25-7.47H208a8,8,0,0,1,8,8ZM80,152v37.41c0,14.22-11.18,26.26-25.41,26.58A26,26,0,0,1,28,190.37,8.17,8.17,0,0,1,35.31,182,8,8,0,0,1,44,190.22a8.89,8.89,0,0,0,4,8c7.85,4.82,16-.75,16-8.2V152.27A8.17,8.17,0,0,1,71.47,144,8,8,0,0,1,80,152Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M120,146H104a6,6,0,0,0-6,6v56a6,6,0,0,0,12,0V198h10a26,26,0,0,0,0-52Zm0,40H110V158h10a14,14,0,0,1,0,28Zm94-2v16.87a6,6,0,0,1-1.67,4.15A28.06,28.06,0,0,1,192,214c-16.54,0-30-15.25-30-34s13.46-34,30-34a27.43,27.43,0,0,1,15.36,4.77,6,6,0,0,1-6.72,9.95A15.25,15.25,0,0,0,192,158c-9.93,0-18,9.87-18,22s8.07,22,18,22a15.75,15.75,0,0,0,10-3.73V190h-2a6,6,0,0,1,0-12h8A6,6,0,0,1,214,184ZM78,152v38a24,24,0,0,1-48,0,6,6,0,0,1,12,0,12,12,0,0,0,24,0V152a6,6,0,0,1,12,0ZM212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50v18a6,6,0,0,0,12,0V88A6,6,0,0,0,212.24,83.76ZM158,82V46.48L193.52,82Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M120,144H104a8,8,0,0,0-8,8v56a8,8,0,0,0,16,0v-8h8a28,28,0,0,0,0-56Zm0,40h-8V160h8a12,12,0,0,1,0,24Zm96,0v16.87a8,8,0,0,1-2.22,5.53A30.06,30.06,0,0,1,192,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a29.38,29.38,0,0,1,16.48,5.12,8,8,0,0,1-9,13.26A13.21,13.21,0,0,0,192,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.63,13.63,0,0,0,8-2.71V192a8,8,0,0,1,0-16h8A8,8,0,0,1,216,184ZM80,152v38a26,26,0,0,1-52,0,8,8,0,0,1,16,0,10,10,0,0,0,20,0V152a8,8,0,0,1,16,0ZM213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88A8,8,0,0,0,213.66,82.34ZM160,80V51.31L188.69,80Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M120,148H104a4,4,0,0,0-4,4v56a4,4,0,0,0,8,0V196h12a24,24,0,0,0,0-48Zm0,40H108V156h12a16,16,0,0,1,0,32Zm92-4v16.87a4,4,0,0,1-1.11,2.77A26.11,26.11,0,0,1,192,212c-15.44,0-28-14.36-28-32s12.56-32,28-32a25.41,25.41,0,0,1,14.24,4.43,4,4,0,1,1-4.48,6.63A17.45,17.45,0,0,0,192,156c-11,0-20,10.77-20,24s9,24,20,24a17.87,17.87,0,0,0,12-4.82V188h-4a4,4,0,0,1,0-8h8A4,4,0,0,1,212,184ZM76,152v38a22,22,0,0,1-44,0,4,4,0,0,1,8,0,14,14,0,0,0,28,0V152a4,4,0,0,1,8,0ZM210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52v20a4,4,0,0,0,8,0V88A4,4,0,0,0,210.83,85.17ZM156,84V41.65L198.34,84Z"}))]]),_j=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212H180a12,12,0,0,0,0,24h20a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Zm-4.22,139.85a24.75,24.75,0,0,1-10.95,18.06c-6,4-13.27,5.15-19.73,5.15a63.75,63.75,0,0,1-16.23-2.21,12,12,0,0,1,6.46-23.12c6.81,1.86,15,1.61,16.39.06a2.48,2.48,0,0,0,.21-.71c-1.94-1.23-6.83-2.64-9.88-3.52-5.39-1.56-11-3.18-15.75-6.27-7.62-4.92-11.21-12.45-10.11-21.2a24.45,24.45,0,0,1,10.69-17.75c6.06-4.09,14.17-5.84,24.1-5.18A68.53,68.53,0,0,1,143,142a12,12,0,0,1-6.1,23.21c-6.36-1.63-13.62-1.51-16.07-.33a79.5,79.5,0,0,0,7.91,2.59c5.48,1.58,11.68,3.37,16.8,6.82C153.33,179.55,157,187.55,155.78,196.82ZM84,152v38a30,30,0,0,1-60,0,12,12,0,0,1,24,0,6,6,0,0,0,12,0V152a12,12,0,0,1,24,0Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216H176a8,8,0,0,0,0,16h24a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Zm-12.19,145a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216A61.14,61.14,0,0,1,106,214a8,8,0,1,1,4.3-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150.05,179,147.81,196.31ZM80,152v38a26,26,0,0,1-52,0,8,8,0,0,1,16,0,10,10,0,0,0,20,0V152a8,8,0,0,1,16,0Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H164a4,4,0,0,1,4,4V228a4,4,0,0,0,4,4h28a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Zm-4.19,108.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216a61.34,61.34,0,0,1-15.19-2,8,8,0,0,1,4.31-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.34-2.67-.72-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.58,20.58,0,0,1,9-14.95c11.85-8,30.72-3.31,32.84-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.57,4.57,0,0,0-2,3.67c-.11.9-.13,1.09,1.12,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150,179,147.81,196.31ZM80,152v37.41c0,14.22-11.18,26.26-25.41,26.58A26,26,0,0,1,28,190.37,8.17,8.17,0,0,1,35.31,182,8,8,0,0,1,44,190.22a8.89,8.89,0,0,0,4,8c7.85,4.82,16-.75,16-8.2V152.27A8.17,8.17,0,0,1,71.47,144,8,8,0,0,1,80,152Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216a2,2,0,0,1-2,2H176a6,6,0,0,0,0,12h24a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM145.83,196.06a18.89,18.89,0,0,1-8.31,13.81c-4.82,3.19-10.87,4.14-16.36,4.14a58.89,58.89,0,0,1-14.68-2,6,6,0,0,1,3.23-11.56c3.71,1,15.58,3.11,21.19-.62a6.85,6.85,0,0,0,3-5.34c.58-4.43-2.08-6.26-14.2-9.76-9.31-2.69-23.37-6.75-21.57-20.94a18.61,18.61,0,0,1,8.08-13.54c11.11-7.49,29.18-3,31.21-2.48a6,6,0,0,1-3.06,11.6c-3.78-1-15.85-3-21.45.84a6.59,6.59,0,0,0-2.88,5.08c-.41,3.22,2.14,4.78,13,7.91C132.92,176.09,147.84,180.4,145.83,196.06ZM78,152v38a24,24,0,0,1-48,0,6,6,0,0,1,12,0,12,12,0,0,0,24,0V152a6,6,0,0,1,12,0Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216H176a8,8,0,0,0,0,16h24a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Zm-12.19,145a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216a61.34,61.34,0,0,1-15.19-2,8,8,0,0,1,4.31-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.34-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150.05,179,147.81,196.31ZM80,152v38a26,26,0,0,1-52,0,8,8,0,0,1,16,0,10,10,0,0,0,20,0V152a8,8,0,0,1,16,0Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216a4,4,0,0,1-4,4H176a4,4,0,0,0,0,8h24a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM143.84,195.8a17,17,0,0,1-7.43,12.41c-4.39,2.91-10,3.77-15.22,3.77A57.89,57.89,0,0,1,107,210.11a4,4,0,0,1,2.15-7.7c4.22,1.17,16.56,3.29,22.83-.88a8.94,8.94,0,0,0,3.91-6.75c.83-6.45-4.38-8.69-15.64-11.94-9.68-2.8-21.72-6.28-20.14-18.77a16.66,16.66,0,0,1,7.22-12.13c4.56-3.07,11-4.36,19.1-3.82a61.33,61.33,0,0,1,10.48,1.61,4,4,0,0,1-2.05,7.74c-4.29-1.13-16.81-3.12-23.06,1.11a8.51,8.51,0,0,0-3.75,6.49c-.66,5.17,3.89,7,14.42,10.08C132.26,178,145.64,181.84,143.84,195.8ZM76,152v38a22,22,0,0,1-44,0,4,4,0,0,1,8,0,14,14,0,0,0,28,0V152a4,4,0,0,1,8,0Z"}))]]),Nj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M151.78,196.8a24.73,24.73,0,0,1-10.95,18c-6,4-13.27,5.15-19.73,5.15a63.75,63.75,0,0,1-16.23-2.21,12,12,0,1,1,6.46-23.11c6.81,1.85,15,1.61,16.39.06a2.48,2.48,0,0,0,.21-.71c-1.94-1.23-6.83-2.64-9.88-3.53-5.39-1.56-11-3.17-15.75-6.26-7.63-4.92-11.21-12.45-10.11-21.19a24.45,24.45,0,0,1,10.69-17.76c6.06-4.09,14.17-5.83,24.1-5.17A69,69,0,0,1,139,142a12,12,0,0,1-6.1,23.21c-6.36-1.63-13.62-1.51-16.07-.33a79.5,79.5,0,0,0,7.91,2.59c5.47,1.58,11.68,3.37,16.8,6.82C149.33,179.53,153,187.53,151.78,196.8ZM68,140a12,12,0,0,0-12,12v38a6,6,0,0,1-12,0,12,12,0,0,0-24,0,30,30,0,0,0,60,0V152A12,12,0,0,0,68,140Zm138.75,40,15-21a12,12,0,0,0-19.53-14L192,159.34,181.76,145a12,12,0,0,0-19.53,14l15,21-15,21A12,12,0,1,0,181.76,215L192,200.62,202.23,215A12,12,0,0,0,221.76,201ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.51l56,56A12,12,0,0,1,220,88v20a12,12,0,1,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,1,1-24,0ZM160,80h23L160,57Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M147.81,196.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216A60.43,60.43,0,0,1,106,214a8,8,0,1,1,4.3-15.41c4.38,1.21,15,2.71,19.55-.35.88-.6,1.83-1.52,2.14-3.93.34-2.67-.72-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.12a20.58,20.58,0,0,1,9-14.94c11.85-8,30.72-3.31,32.84-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.08,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150,179,147.81,196.31ZM72,144a8,8,0,0,0-8,8v38a10,10,0,0,1-20,0,8,8,0,0,0-16,0,26,26,0,0,0,52,0V152A8,8,0,0,0,72,144Zm140.65,1.49a8,8,0,0,0-11.16,1.86L188,166.24l-13.49-18.89a8,8,0,0,0-13,9.3L178.17,180l-16.68,23.35a8,8,0,0,0,13,9.3L188,193.76l13.49,18.89a8,8,0,0,0,13-9.3L197.83,180l16.68-23.35A8,8,0,0,0,212.65,145.49ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H212a4,4,0,0,0,4-4V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Zm-4.19,108.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216a60.63,60.63,0,0,1-15.19-2,8,8,0,0,1,4.31-15.41c4.38,1.21,15,2.71,19.55-.35.88-.6,1.83-1.52,2.14-3.93.34-2.67-.72-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.12a20.58,20.58,0,0,1,9-14.94c11.85-8,30.72-3.31,32.84-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.57,4.57,0,0,0-2,3.67c-.11.9-.13,1.08,1.12,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150,179,147.81,196.31ZM80,152v37.4c0,14.23-11.18,26.27-25.41,26.59A26,26,0,0,1,28,190.37,8.17,8.17,0,0,1,35.31,182,8,8,0,0,1,44,190.22a8.89,8.89,0,0,0,4,8c7.85,4.82,16-.76,16-8.2V152.27A8.17,8.17,0,0,1,71.47,144,8,8,0,0,1,80,152Zm134.51,4.65L197.83,180l16.68,23.35a8,8,0,0,1-13,9.3L188,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L178.17,180l-16.68-23.35a8,8,0,0,1,13-9.3L188,166.24l13.49-18.89a8,8,0,0,1,13,9.3Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M145.83,196.05a18.89,18.89,0,0,1-8.31,13.81c-4.82,3.19-10.87,4.14-16.36,4.14a59.41,59.41,0,0,1-14.68-2,6,6,0,0,1,3.23-11.56c3.71,1,15.58,3.11,21.19-.62a6.85,6.85,0,0,0,3-5.34c.58-4.43-2.08-6.26-14.2-9.76-9.31-2.69-23.37-6.75-21.57-20.94a18.61,18.61,0,0,1,8.08-13.54c11.11-7.49,29.18-3,31.21-2.48a6,6,0,0,1-3.06,11.6c-3.79-1-15.85-2.95-21.45.84a6.59,6.59,0,0,0-2.88,5.08c-.41,3.22,2.14,4.78,13,7.91C132.92,176.08,147.84,180.39,145.83,196.05ZM72,146a6,6,0,0,0-6,6v38a12,12,0,0,1-24,0,6,6,0,0,0-12,0,24,24,0,0,0,48,0V152A6,6,0,0,0,72,146Zm139.49,1.12a6,6,0,0,0-8.37,1.39L188,169.67,172.88,148.5a6,6,0,0,0-9.76,7L180.63,180,163.12,204.5a6,6,0,1,0,9.76,7L188,190.31l15.12,21.16a6,6,0,1,0,9.76-7L195.37,180l17.51-24.51A6,6,0,0,0,211.49,147.11ZM214,88v24a6,6,0,1,1-12,0V94H152a6,6,0,0,1-6-6V38H56a2,2,0,0,0-2,2v72a6,6,0,1,1-12,0V40A14,14,0,0,1,56,26h96a6,6,0,0,1,4.25,1.76l56,56A6,6,0,0,1,214,88Zm-20.49-6L158,46.48V82Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M147.81,196.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216a60.63,60.63,0,0,1-15.19-2,8,8,0,0,1,4.31-15.41c4.38,1.21,15,2.71,19.55-.35.88-.6,1.83-1.52,2.14-3.93.34-2.67-.72-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.58,20.58,0,0,1,9-14.95c11.85-8,30.72-3.31,32.84-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.08,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150,179,147.81,196.31ZM72,144a8,8,0,0,0-8,8v38a10,10,0,0,1-20,0,8,8,0,0,0-16,0,26,26,0,0,0,52,0V152A8,8,0,0,0,72,144Zm140.65,1.49a8,8,0,0,0-11.16,1.86L188,166.24l-13.49-18.89a8,8,0,0,0-13,9.3L178.17,180l-16.68,23.35a8,8,0,0,0,13,9.3L188,193.76l13.49,18.89a8,8,0,0,0,13-9.3L197.83,180l16.68-23.35A8,8,0,0,0,212.65,145.49ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M143.84,195.8a17,17,0,0,1-7.43,12.41c-4.39,2.91-10,3.77-15.22,3.77A57.89,57.89,0,0,1,107,210.11a4,4,0,1,1,2.15-7.7c4.22,1.17,16.56,3.29,22.83-.88a8.94,8.94,0,0,0,3.91-6.75c.83-6.45-4.38-8.69-15.64-11.94-9.68-2.8-21.72-6.28-20.14-18.77a16.66,16.66,0,0,1,7.22-12.13c4.56-3.07,11-4.36,19.1-3.82a61.33,61.33,0,0,1,10.48,1.61,4,4,0,0,1-2.05,7.74c-4.29-1.13-16.81-3.12-23.06,1.11a8.51,8.51,0,0,0-3.75,6.49c-.66,5.17,3.89,7,14.42,10.08C132.26,178,145.64,181.84,143.84,195.8ZM72,148a4,4,0,0,0-4,4v38a14,14,0,0,1-28,0,4,4,0,0,0-8,0,22,22,0,0,0,44,0V152A4,4,0,0,0,72,148Zm138.32.75a4,4,0,0,0-5.58.92L188,173.12l-16.75-23.45a4,4,0,0,0-6.51,4.66L183.08,180l-18.34,25.67a4,4,0,0,0,.93,5.58,4,4,0,0,0,5.58-.92L188,186.88l16.74,23.45A4,4,0,0,0,208,212a3.91,3.91,0,0,0,2.32-.75,4,4,0,0,0,.93-5.58L192.92,180l18.33-25.67A4,4,0,0,0,210.32,148.75ZM212,88v24a4,4,0,0,1-8,0V92H152a4,4,0,0,1-4-4V36H56a4,4,0,0,0-4,4v72a4,4,0,0,1-8,0V40A12,12,0,0,1,56,28h96a4,4,0,0,1,2.83,1.17l56,56A4,4,0,0,1,212,88Zm-13.66-4L156,41.65V84Z"}))]]),jj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M100,152v56a12,12,0,0,1-24,0V190.07l-6.17,8.81a12,12,0,0,1-19.66,0L44,190.07V208a12,12,0,0,1-24,0V152a12,12,0,0,1,21.83-6.88L60,171.07l18.17-25.95A12,12,0,0,1,100,152Zm84,28a40,40,0,0,1-40,40H128a12,12,0,0,1-12-12V152a12,12,0,0,1,12-12h16A40,40,0,0,1,184,180Zm-24,0a16,16,0,0,0-16-16h-4v32h4A16,16,0,0,0,160,180Zm60-92V224a12,12,0,0,1-24,0V104H148a12,12,0,0,1-12-12V44H60v64a12,12,0,0,1-24,0V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.52l56,56A12,12,0,0,1,220,88Zm-60-8h23L160,57Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V224a8,8,0,0,0,16,0V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM144,144H128a8,8,0,0,0-8,8v56a8,8,0,0,0,8,8h16a36,36,0,0,0,0-72Zm0,56h-8V160h8a20,20,0,0,1,0,40Zm-40-48v56a8,8,0,0,1-16,0V177.38L74.55,196.59a8,8,0,0,1-13.1,0L48,177.38V208a8,8,0,0,1-16,0V152a8,8,0,0,1,14.55-4.59L68,178.05l21.45-30.64A8,8,0,0,1,104,152Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H196a4,4,0,0,1,4,4V224a8,8,0,0,0,9.19,7.91,8.15,8.15,0,0,0,6.81-8.16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Zm-8,56H128a8,8,0,0,0-8,8v56a8,8,0,0,0,8,8h15.32c19.66,0,36.21-15.48,36.67-35.13A36,36,0,0,0,144,144Zm-.49,56H136V160h8a20,20,0,0,1,20,20.77C163.58,191.59,154.34,200,143.51,200ZM104,152v55.73A8.17,8.17,0,0,1,96.53,216,8,8,0,0,1,88,208V177.38l-13.32,19a8.3,8.3,0,0,1-4.2,3.2,8,8,0,0,1-9-3L48,177.38v30.35A8.17,8.17,0,0,1,40.53,216,8,8,0,0,1,32,208V152.31a8.27,8.27,0,0,1,4.56-7.53,8,8,0,0,1,10,2.63L68,178.05l21.27-30.39a8.28,8.28,0,0,1,8.06-3.55A8,8,0,0,1,104,152Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V224a6,6,0,0,0,12,0V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM144,146H128a6,6,0,0,0-6,6v56a6,6,0,0,0,6,6h16a34,34,0,0,0,0-68Zm0,56H134V158h10a22,22,0,0,1,0,44Zm-42-50v56a6,6,0,0,1-12,0V171L72.92,195.44a6,6,0,0,1-9.84,0L46,171v37a6,6,0,0,1-12,0V152a6,6,0,0,1,10.92-3.44l23.08,33,23.08-33A6,6,0,0,1,102,152Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V224a8,8,0,0,0,16,0V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM144,144H128a8,8,0,0,0-8,8v56a8,8,0,0,0,8,8h16a36,36,0,0,0,0-72Zm0,56h-8V160h8a20,20,0,0,1,0,40Zm-40-48v56a8,8,0,0,1-16,0V177.38L74.55,196.59a8,8,0,0,1-13.1,0L48,177.38V208a8,8,0,0,1-16,0V152a8,8,0,0,1,14.55-4.59L68,178.05l21.45-30.64A8,8,0,0,1,104,152Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V224a4,4,0,0,0,8,0V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM144,148H128a4,4,0,0,0-4,4v56a4,4,0,0,0,4,4h16a32,32,0,0,0,0-64Zm0,56H132V156h12a24,24,0,0,1,0,48Zm-44-52v56a4,4,0,0,1-8,0V164.69l-20.72,29.6a4,4,0,0,1-6.56,0L44,164.69V208a4,4,0,0,1-8,0V152a4,4,0,0,1,7.28-2.29L68,185l24.72-35.31A4,4,0,0,1,100,152Z"}))]]),Zj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40V216a20,20,0,0,0,20,20H200a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160ZM60,212V44h76V92a12,12,0,0,0,12,12h48V212Zm104-60a12,12,0,0,1-12,12H140v12a12,12,0,0,1-24,0V164H104a12,12,0,0,1,0-24h12V128a12,12,0,0,1,24,0v12h12A12,12,0,0,1,164,152Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Zm-40-64a8,8,0,0,1-8,8H136v16a8,8,0,0,1-16,0V160H104a8,8,0,0,1,0-16h16V128a8,8,0,0,1,16,0v16h16A8,8,0,0,1,160,152Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,160H136v16a8,8,0,0,1-16,0V160H104a8,8,0,0,1,0-16h16V128a8,8,0,0,1,16,0v16h16a8,8,0,0,1,0,16Zm0-72V43.31L196.69,88Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40V216a14,14,0,0,0,14,14H200a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM200,218H56a2,2,0,0,1-2-2V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216A2,2,0,0,1,200,218Zm-42-66a6,6,0,0,1-6,6H134v18a6,6,0,0,1-12,0V158H104a6,6,0,0,1,0-12h18V128a6,6,0,0,1,12,0v18h18A6,6,0,0,1,158,152Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM200,216H56V40h88V88a8,8,0,0,0,8,8h48V216Zm-40-64a8,8,0,0,1-8,8H136v16a8,8,0,0,1-16,0V160H104a8,8,0,0,1,0-16h16V128a8,8,0,0,1,16,0v16h16A8,8,0,0,1,160,152Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40V216a12,12,0,0,0,12,12H200a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM200,220H56a4,4,0,0,1-4-4V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216A4,4,0,0,1,200,220Zm-44-68a4,4,0,0,1-4,4H132v20a4,4,0,0,1-8,0V156H104a4,4,0,0,1,0-8h20V128a4,4,0,0,1,8,0v20h20A4,4,0,0,1,156,152Z"}))]]),Dj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M56,140H40a12,12,0,0,0-12,12v56a12,12,0,0,0,24,0v-4h4a32,32,0,0,0,0-64Zm0,40H52V164h4a8,8,0,0,1,0,16Zm176,20.87a12,12,0,0,1-3.33,8.3A34,34,0,0,1,204,220c-19.85,0-36-17.95-36-40s16.15-40,36-40a33.39,33.39,0,0,1,18.71,5.8,12,12,0,1,1-13.42,19.89A9.39,9.39,0,0,0,204,164c-6.5,0-12,7.33-12,16s5.5,16,12,16a9,9,0,0,0,2.7-.42A12,12,0,0,1,216,176h4a12,12,0,0,1,12,12ZM160,152v56a12,12,0,0,1-8.34,11.43A12.15,12.15,0,0,1,148,220a12,12,0,0,1-9.76-5L120,189.44V208a12,12,0,0,1-24,0V152a12,12,0,0,1,21.76-7L136,170.55V152a12,12,0,0,1,24,0ZM48,120a12,12,0,0,0,12-12V44h76V92a12,12,0,0,0,12,12h48v4a12,12,0,0,0,24,0V88a12,12,0,0,0-3.51-8.49l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68A12,12,0,0,0,48,120ZM160,57l23,23H160Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M60,144H44a8,8,0,0,0-8,8v56a8,8,0,0,0,16,0v-8h8a28,28,0,0,0,0-56Zm0,40H52V160h8a12,12,0,0,1,0,24Zm164,16.87a8,8,0,0,1-2.22,5.53A30.06,30.06,0,0,1,200,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.45,29.45,0,0,1,16.48,5.11,8,8,0,0,1-9,13.27A13.21,13.21,0,0,0,200,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.57,13.57,0,0,0,8-2.72V192a8,8,0,0,1,0-16h8a8,8,0,0,1,8,8ZM156,152v56a8,8,0,0,1-5.56,7.62A7.91,7.91,0,0,1,148,216a8,8,0,0,1-6.51-3.35L116,177v31a8,8,0,0,1-16,0V152a8,8,0,0,1,14.51-4.65L140,183V152a8,8,0,0,1,16,0ZM48,120a8,8,0,0,0,8-8V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72A8,8,0,0,0,48,120ZM160,51.31,188.69,80H160Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M44,120H212a4,4,0,0,0,4-4V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76A4,4,0,0,0,44,120ZM152,44l44,44H152ZM60,144H44a8,8,0,0,0-8,8v55.72A8.17,8.17,0,0,0,43.47,216,8,8,0,0,0,52,208v-8h7.4c15.24,0,28.14-11.92,28.59-27.15A28,28,0,0,0,60,144Zm-.35,40H52V160h8a12,12,0,0,1,12,13.16A12.25,12.25,0,0,1,59.65,184ZM224,200.87a8,8,0,0,1-2.26,5.57A30.07,30.07,0,0,1,200,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.36,29.36,0,0,1,16.09,4.86,8.21,8.21,0,0,1,3,10.64,8,8,0,0,1-11.55,2.88A13.21,13.21,0,0,0,200,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.57,13.57,0,0,0,8-2.72V192a8,8,0,0,1-8-8.53,8.17,8.17,0,0,1,8.25-7.47H216a8,8,0,0,1,8,8ZM156,152v55.76a8.22,8.22,0,0,1-4.12,7.24,8,8,0,0,1-10.39-2.35L116,177v30.76a8.17,8.17,0,0,1-7.47,8.26,8,8,0,0,1-8.53-8V152.31a8.27,8.27,0,0,1,4.53-7.52,8,8,0,0,1,10,2.56L140,183V152.27a8.17,8.17,0,0,1,7.47-8.25A8,8,0,0,1,156,152Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M60,146H44a6,6,0,0,0-6,6v56a6,6,0,0,0,12,0V198H60a26,26,0,0,0,0-52Zm0,40H50V158H60a14,14,0,0,1,0,28Zm162,14.87a6,6,0,0,1-1.67,4.15A28.06,28.06,0,0,1,200,214c-16.54,0-30-15.25-30-34s13.46-34,30-34a27.43,27.43,0,0,1,15.36,4.77,6,6,0,0,1-6.72,9.95A15.25,15.25,0,0,0,200,158c-9.93,0-18,9.87-18,22s8.07,22,18,22a15.75,15.75,0,0,0,10-3.73V190h-2a6,6,0,0,1,0-12h8a6,6,0,0,1,6,6ZM154,152v56a6,6,0,0,1-4.17,5.71A5.78,5.78,0,0,1,148,214a6,6,0,0,1-4.88-2.51L114,170.72V208a6,6,0,0,1-12,0V152a6,6,0,0,1,10.88-3.49L142,189.28V152a6,6,0,0,1,12,0ZM48,118a6,6,0,0,0,6-6V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50v18a6,6,0,0,0,12,0V88a6,6,0,0,0-1.76-4.24l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72A6,6,0,0,0,48,118ZM158,46.48,193.52,82H158Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M60,144H44a8,8,0,0,0-8,8v56a8,8,0,0,0,16,0v-8h8a28,28,0,0,0,0-56Zm0,40H52V160h8a12,12,0,0,1,0,24Zm164,16.87a8,8,0,0,1-2.22,5.53A30.06,30.06,0,0,1,200,216c-17.65,0-32-16.15-32-36s14.35-36,32-36a29.45,29.45,0,0,1,16.48,5.11,8,8,0,0,1-9,13.27A13.21,13.21,0,0,0,200,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.57,13.57,0,0,0,8-2.72V192a8,8,0,0,1,0-16h8a8,8,0,0,1,8,8ZM156,152v56a8,8,0,0,1-5.56,7.62A7.91,7.91,0,0,1,148,216a8,8,0,0,1-6.51-3.35L116,177v31a8,8,0,0,1-16,0V152a8,8,0,0,1,14.51-4.65L140,183V152a8,8,0,0,1,16,0ZM48,120a8,8,0,0,0,8-8V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72A8,8,0,0,0,48,120ZM160,51.31,188.69,80H160Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M60,148H44a4,4,0,0,0-4,4v56a4,4,0,0,0,8,0V196H60a24,24,0,0,0,0-48Zm0,40H48V156H60a16,16,0,0,1,0,32Zm160,12.87a4,4,0,0,1-1.11,2.77A26.11,26.11,0,0,1,200,212c-15.44,0-28-14.36-28-32s12.56-32,28-32a25.41,25.41,0,0,1,14.24,4.43,4,4,0,1,1-4.48,6.63A17.45,17.45,0,0,0,200,156c-11,0-20,10.77-20,24s9,24,20,24a17.87,17.87,0,0,0,12-4.82V188h-4a4,4,0,0,1,0-8h8a4,4,0,0,1,4,4ZM152,152v56a4,4,0,0,1-2.78,3.81A3.93,3.93,0,0,1,148,212a4,4,0,0,1-3.25-1.67L112,164.48V208a4,4,0,0,1-8,0V152a4,4,0,0,1,7.25-2.33L144,195.52V152a4,4,0,0,1,8,0Zm52-40a4,4,0,0,0,8,0V88a4,4,0,0,0-1.17-2.83l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52ZM156,84V41.65L198.34,84Z"}))]]),Vj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,120a12,12,0,0,0,12-12V44h76V92a12,12,0,0,0,12,12h48v4a12,12,0,1,0,24,0V88a12,12,0,0,0-3.51-8.48l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68A12,12,0,0,0,48,120ZM183,80H160V57ZM87.78,196.8a24.72,24.72,0,0,1-10.94,18c-6,4-13.27,5.15-19.74,5.15a63.75,63.75,0,0,1-16.23-2.21,12,12,0,1,1,6.46-23.11c6.82,1.85,15,1.61,16.39.06a2.48,2.48,0,0,0,.21-.71c-1.94-1.23-6.82-2.64-9.88-3.53-5.39-1.56-11-3.17-15.75-6.26-7.62-4.92-11.21-12.45-10.1-21.19a24.44,24.44,0,0,1,10.68-17.76c6.07-4.09,14.17-5.82,24.1-5.17A69,69,0,0,1,75,142a12,12,0,0,1-6.1,23.21c-6.35-1.63-13.61-1.51-16.07-.33a79.69,79.69,0,0,0,7.92,2.59c5.47,1.58,11.67,3.37,16.8,6.82C85.33,179.53,89,187.53,87.78,196.8ZM155.3,156l-20,56a12,12,0,0,1-22.6,0l-20-56A12,12,0,1,1,115.3,148L124,172.3,132.7,148A12,12,0,1,1,155.3,156ZM224,188v12.87a12,12,0,0,1-3.33,8.3A34,34,0,0,1,196,220c-19.85,0-36-17.94-36-40s16.15-40,36-40a33.39,33.39,0,0,1,18.71,5.8,12,12,0,1,1-13.42,19.89A9.39,9.39,0,0,0,196,164c-6.5,0-12,7.33-12,16s5.5,16,12,16a9,9,0,0,0,2.7-.42A12,12,0,0,1,208,176h4A12,12,0,0,1,224,188Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,1,0,16,0V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Zm-72.18,145a20.82,20.82,0,0,1-9.19,15.23C73.44,215,67,216,61.14,216A61.23,61.23,0,0,1,46,214a8,8,0,0,1,4.3-15.41c4.38,1.2,14.95,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.55,20.55,0,0,1,9-14.95c11.84-8,30.72-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.48-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.11.9-.14,1.09,1.12,1.9,2.31,1.49,6.44,2.68,10.45,3.84C73.5,174.17,90.06,179,87.82,196.31Zm63.72-41.62-20,56a8,8,0,0,1-15.07,0l-20-56a8,8,0,1,1,15.06-5.38L124,184.21l12.46-34.9a8,8,0,0,1,15.07,5.38ZM216,184v16.87a8,8,0,0,1-2.22,5.53A30.06,30.06,0,0,1,192,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.38,29.38,0,0,1,16.48,5.12,8,8,0,0,1-8.95,13.26A13.27,13.27,0,0,0,192,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.38,13.38,0,0,0,8-2.71V192a8,8,0,0,1,0-16h8A8,8,0,0,1,216,184Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H212a4,4,0,0,0,4-4V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44ZM87.82,196.31a20.82,20.82,0,0,1-9.19,15.23C73.44,215,67,216,61.14,216A61.23,61.23,0,0,1,46,214a8,8,0,0,1,4.3-15.41c4.38,1.2,14.95,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.55,20.55,0,0,1,9-14.95c11.84-8,30.72-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.48-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.11.9-.14,1.09,1.12,1.9,2.31,1.49,6.44,2.68,10.45,3.84C73.5,174.17,90.06,179,87.82,196.31Zm63.72-41.62-19.9,55.72a8.25,8.25,0,0,1-6.5,5.51,8,8,0,0,1-8.67-5.23L96.59,155a8.21,8.21,0,0,1,4.5-10.45,8,8,0,0,1,10.45,4.76L124,184.21l12.46-34.9a8,8,0,0,1,15.07,5.38ZM216,184v16.87a8,8,0,0,1-2.26,5.57A30,30,0,0,1,192,216c-17.64,0-32-16.15-32-36s14.36-36,32-36a29.36,29.36,0,0,1,16.09,4.86,8.22,8.22,0,0,1,3,10.64,8,8,0,0,1-11.54,2.88A13.27,13.27,0,0,0,192,160c-8.82,0-16,9-16,20s7.18,20,16,20a13.38,13.38,0,0,0,8-2.71V192a8,8,0,0,1-8-8.53,8.18,8.18,0,0,1,8.26-7.47H208A8,8,0,0,1,216,184Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.75l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50v18a6,6,0,1,0,12,0V88A6,6,0,0,0,212.24,83.75ZM158,46.48,193.52,82H158ZM85.83,196.05a18.85,18.85,0,0,1-8.3,13.81C72.71,213.05,66.66,214,61.16,214a59.38,59.38,0,0,1-14.67-2,6,6,0,0,1,3.23-11.56c3.71,1,15.58,3.11,21.19-.62a6.85,6.85,0,0,0,3-5.34c.57-4.43-2.08-6.26-14.2-9.76-9.31-2.69-23.37-6.75-21.57-20.94a18.61,18.61,0,0,1,8.08-13.54c11.11-7.49,29.18-3,31.2-2.48a6,6,0,0,1-3,11.6c-3.79-1-15.85-2.95-21.45.84a6.59,6.59,0,0,0-2.88,5.08c-.41,3.22,2.14,4.78,13,7.91C72.93,176.08,87.85,180.39,85.83,196.05Zm63.82-42-20,56a6,6,0,0,1-11.3,0l-20-56a6,6,0,1,1,11.3-4L124,190.15,138.35,150a6,6,0,0,1,11.3,4ZM214,184v16.87a6,6,0,0,1-1.67,4.15A28.06,28.06,0,0,1,192,214c-16.54,0-30-15.25-30-34s13.46-34,30-34a27.43,27.43,0,0,1,15.36,4.77,6,6,0,0,1-6.72,10A15.25,15.25,0,0,0,192,158c-9.92,0-18,9.87-18,22s8.08,22,18,22a15.7,15.7,0,0,0,10-3.74V190h-2a6,6,0,0,1,0-12h8A6,6,0,0,1,214,184Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M87.82,196.31a20.82,20.82,0,0,1-9.19,15.23C73.44,215,67,216,61.14,216A61.23,61.23,0,0,1,46,214a8,8,0,0,1,4.3-15.41c4.38,1.2,14.95,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.55,20.55,0,0,1,9-14.95c11.84-8,30.72-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.48-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.11.9-.14,1.09,1.12,1.9,2.31,1.49,6.44,2.68,10.45,3.84C73.5,174.17,90.06,179,87.82,196.31ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,1,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.65,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Zm-13.3,64.47a8,8,0,0,0-10.23,4.84L124,184.21l-12.47-34.9a8,8,0,1,0-15.06,5.38l20,56a8,8,0,0,0,15.07,0l20-56A8,8,0,0,0,146.7,144.47ZM208,176h-8a8,8,0,0,0,0,16v5.29a13.38,13.38,0,0,1-8,2.71c-8.82,0-16-9-16-20s7.18-20,16-20a13.27,13.27,0,0,1,7.53,2.38,8,8,0,0,0,8.95-13.26A29.38,29.38,0,0,0,192,144c-17.64,0-32,16.15-32,36s14.36,36,32,36a30.06,30.06,0,0,0,21.78-9.6,8,8,0,0,0,2.22-5.53V184A8,8,0,0,0,208,176Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,1,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52v20a4,4,0,0,0,8,0V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM83.85,195.8a17,17,0,0,1-7.43,12.41C72,211.12,66.38,212,61.2,212A57.89,57.89,0,0,1,47,210.11a4,4,0,1,1,2.15-7.7c4.22,1.17,16.56,3.29,22.83-.88a8.94,8.94,0,0,0,3.91-6.75c.83-6.45-4.38-8.69-15.64-11.94-9.68-2.8-21.72-6.28-20.14-18.77a16.66,16.66,0,0,1,7.22-12.13c4.56-3.07,11-4.36,19.1-3.82a61.11,61.11,0,0,1,10.47,1.61,4,4,0,0,1-2,7.74c-4.29-1.13-16.81-3.12-23.06,1.11a8.51,8.51,0,0,0-3.75,6.49c-.66,5.17,3.89,7,14.42,10.08C72.27,178,85.65,181.84,83.85,195.8Zm63.92-42.45-20,56a4,4,0,0,1-7.53,0l-20-56a4,4,0,1,1,7.53-2.7L124,196.11l16.23-45.46a4,4,0,1,1,7.53,2.7ZM212,184v16.87a4,4,0,0,1-1.11,2.77A26.11,26.11,0,0,1,192,212c-15.44,0-28-14.36-28-32s12.56-32,28-32a25.41,25.41,0,0,1,14.24,4.43,4,4,0,1,1-4.48,6.63A17.43,17.43,0,0,0,192,156c-11,0-20,10.77-20,24s9,24,20,24a17.87,17.87,0,0,0,12-4.82V188h-4a4,4,0,0,1,0-8h8A4,4,0,0,1,212,184Z"}))]]),Ij=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212H180a12,12,0,0,0,0,24h20a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Zm-4.22,139.85a24.75,24.75,0,0,1-10.95,18.06c-6,4-13.27,5.15-19.73,5.15a63.75,63.75,0,0,1-16.23-2.21,12,12,0,0,1,6.46-23.12c6.81,1.86,15,1.61,16.39.06a2.48,2.48,0,0,0,.21-.71c-1.94-1.23-6.83-2.64-9.88-3.52-5.39-1.56-11-3.18-15.75-6.27-7.62-4.92-11.21-12.45-10.11-21.2a24.45,24.45,0,0,1,10.69-17.75c6.06-4.09,14.17-5.83,24.1-5.18A68.53,68.53,0,0,1,143,142a12,12,0,0,1-6.1,23.21c-6.36-1.63-13.62-1.51-16.07-.33a79.5,79.5,0,0,0,7.91,2.59c5.48,1.58,11.68,3.37,16.8,6.82C153.33,179.55,157,187.55,155.78,196.82ZM92,152a12,12,0,0,1-12,12H72v44a12,12,0,0,1-24,0V164H40a12,12,0,0,1,0-24H80A12,12,0,0,1,92,152Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216H176a8,8,0,0,0,0,16h24a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160Zm-12.19,145a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216A61.14,61.14,0,0,1,106,214a8,8,0,1,1,4.3-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150.05,179,147.81,196.31ZM88,152a8,8,0,0,1-8,8H68v48a8,8,0,0,1-16,0V160H40a8,8,0,0,1,0-16H80A8,8,0,0,1,88,152Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H164a4,4,0,0,1,4,4V228a4,4,0,0,0,4,4h28a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Zm-4.19,108.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216A61.14,61.14,0,0,1,106,214a8,8,0,1,1,4.3-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.35-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150.05,179,147.81,196.31ZM88,152.53A8.17,8.17,0,0,1,79.73,160H68v47.73A8.17,8.17,0,0,1,60.53,216,8,8,0,0,1,52,208V160H40.27A8.17,8.17,0,0,1,32,152.53,8,8,0,0,1,40,144H80A8,8,0,0,1,88,152.53Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216a2,2,0,0,1-2,2H176a6,6,0,0,0,0,12h24a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158ZM145.83,196.06a18.89,18.89,0,0,1-8.31,13.81c-4.82,3.19-10.87,4.14-16.36,4.14a58.89,58.89,0,0,1-14.68-2,6,6,0,0,1,3.23-11.56c3.71,1,15.58,3.11,21.19-.62a6.85,6.85,0,0,0,3-5.34c.58-4.43-2.08-6.26-14.2-9.76-9.31-2.69-23.37-6.75-21.57-20.94a18.61,18.61,0,0,1,8.08-13.54c11.11-7.49,29.18-3,31.21-2.48a6,6,0,0,1-3.06,11.6c-3.78-1-15.85-3-21.45.84a6.59,6.59,0,0,0-2.88,5.08c-.41,3.22,2.14,4.78,13,7.91C132.92,176.09,147.84,180.4,145.83,196.06ZM86,152a6,6,0,0,1-6,6H66v50a6,6,0,0,1-12,0V158H40a6,6,0,0,1,0-12H80A6,6,0,0,1,86,152Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M147.81,196.31a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216a61.34,61.34,0,0,1-15.19-2,8,8,0,0,1,4.31-15.41c4.38,1.2,15,2.7,19.55-.36.88-.59,1.83-1.52,2.14-3.93.34-2.67-.71-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.11a20.56,20.56,0,0,1,9-14.95c11.84-8,30.71-3.31,32.83-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.09,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150.05,179,147.81,196.31ZM216,88V216a16,16,0,0,1-16,16H176a8,8,0,0,1,0-16h24V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31ZM80,144H40a8,8,0,0,0,0,16H52v48a8,8,0,0,0,16,0V160H80a8,8,0,0,0,0-16Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216a4,4,0,0,1-4,4H176a4,4,0,0,0,0,8h24a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM143.84,195.8a17,17,0,0,1-7.43,12.41c-4.39,2.91-10,3.77-15.22,3.77A57.89,57.89,0,0,1,107,210.11a4,4,0,0,1,2.15-7.7c4.22,1.17,16.56,3.29,22.83-.88a8.94,8.94,0,0,0,3.91-6.75c.83-6.45-4.38-8.69-15.64-11.94-9.68-2.8-21.72-6.28-20.14-18.77a16.66,16.66,0,0,1,7.22-12.13c4.56-3.07,11-4.36,19.1-3.82a61.33,61.33,0,0,1,10.48,1.61,4,4,0,0,1-2.05,7.74c-4.29-1.13-16.81-3.12-23.06,1.11a8.51,8.51,0,0,0-3.75,6.49c-.66,5.17,3.89,7,14.42,10.08C132.26,178,145.64,181.84,143.84,195.8ZM84,152a4,4,0,0,1-4,4H64v52a4,4,0,0,1-8,0V156H40a4,4,0,0,1,0-8H80A4,4,0,0,1,84,152Z"}))]]),Lj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M221.76,201A12,12,0,1,1,202.23,215L192,200.62,181.76,215A12,12,0,1,1,162.23,201l15-21-15-21a12,12,0,0,1,19.53-14L192,159.34,202.23,145a12,12,0,0,1,19.53,14l-15,21Zm-80.25-26.73c-5.12-3.45-11.33-5.24-16.8-6.82a79.5,79.5,0,0,1-7.91-2.59c2.45-1.18,9.71-1.3,16.07.33A12,12,0,0,0,139,142a69,69,0,0,0-12-1.86c-9.93-.66-18,1.08-24.1,5.17a24.45,24.45,0,0,0-10.69,17.76c-1.1,8.74,2.48,16.27,10.11,21.19,4.78,3.09,10.36,4.7,15.75,6.26,3,.89,7.94,2.3,9.88,3.53a2.48,2.48,0,0,1-.21.71c-1.37,1.55-9.58,1.79-16.39-.06a12,12,0,1,0-6.46,23.11A63.75,63.75,0,0,0,121.1,220c6.46,0,13.73-1.17,19.73-5.15a24.73,24.73,0,0,0,10.95-18C153,187.53,149.33,179.53,141.51,174.27ZM76,140H36a12,12,0,0,0,0,24h8v44a12,12,0,0,0,24,0V164h8a12,12,0,0,0,0-24ZM36,108V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.51l56,56A12,12,0,0,1,220,88v20a12,12,0,1,1-24,0v-4H148a12,12,0,0,1-12-12V44H60v64a12,12,0,1,1-24,0ZM160,80h23L160,57Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M214.51,156.65,197.83,180l16.68,23.35a8,8,0,0,1-13,9.3L188,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L178.17,180l-16.68-23.35a8,8,0,0,1,13-9.3L188,166.24l13.49-18.89a8,8,0,0,1,13,9.3ZM123.6,171.31c-4-1.16-8.14-2.35-10.45-3.84-1.25-.82-1.23-1-1.11-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.83-.56A8,8,0,0,0,138,145.86c-2.12-.55-21-5.22-32.84,2.76a20.58,20.58,0,0,0-9,14.94c-2,15.89,13.65,20.42,23,23.12,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.33-2.14,3.93-4.6,3.06-15.17,1.56-19.55.35A8,8,0,1,0,106,214a60.43,60.43,0,0,0,15.18,2c5.82,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C150,179,133.49,174.17,123.6,171.31ZM80,144H40a8,8,0,0,0,0,16H52v48a8,8,0,0,0,16,0V160H80a8,8,0,0,0,0-16ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v76a4,4,0,0,0,4,4H212a4,4,0,0,0,4-4V88A8,8,0,0,0,213.66,82.34ZM152,88V44l44,44Zm62.51,68.65L197.83,180l16.68,23.35a8,8,0,0,1-13,9.3L188,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L178.17,180l-16.68-23.35a8,8,0,0,1,2.3-11.46,8.19,8.19,0,0,1,10.88,2.38L188,166.24l13.49-18.89a8,8,0,0,1,13,9.3Zm-66.7,39.66a20.82,20.82,0,0,1-9.19,15.23C133.43,215,127,216,121.13,216A60.43,60.43,0,0,1,106,214a8,8,0,1,1,4.3-15.41c4.38,1.21,15,2.71,19.55-.35.88-.6,1.83-1.52,2.14-3.93.34-2.67-.72-4.1-12.78-7.59-9.35-2.7-25-7.23-23-23.12a20.58,20.58,0,0,1,9-14.94c11.85-8,30.72-3.31,32.84-2.76a8,8,0,0,1-4.07,15.48c-4.49-1.17-15.23-2.56-19.83.56a4.54,4.54,0,0,0-2,3.67c-.12.9-.14,1.08,1.11,1.9,2.31,1.49,6.45,2.68,10.45,3.84C133.49,174.17,150,179,147.81,196.31ZM88,152.53A8.18,8.18,0,0,1,79.73,160H68v47.72A8.18,8.18,0,0,1,60.53,216,8,8,0,0,1,52,208V160H40.27A8.18,8.18,0,0,1,32,152.53,8,8,0,0,1,40,144H80A8,8,0,0,1,88,152.53Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.88,155.48,195.37,180l17.51,24.51a6,6,0,1,1-9.76,7L188,190.31l-15.12,21.16a6,6,0,1,1-9.76-7L180.63,180l-17.51-24.51a6,6,0,0,1,9.76-7L188,169.67l15.12-21.17a6,6,0,1,1,9.76,7Zm-89.83,17.74c-10.86-3.13-13.41-4.69-13-7.91a6.59,6.59,0,0,1,2.88-5.08c5.6-3.79,17.66-1.83,21.45-.84a6,6,0,0,0,3.06-11.6c-2-.53-20.1-5-31.21,2.48a18.61,18.61,0,0,0-8.08,13.54c-1.8,14.19,12.26,18.25,21.57,20.94,12.12,3.5,14.78,5.33,14.2,9.76a6.85,6.85,0,0,1-3,5.34c-5.61,3.73-17.48,1.64-21.19.62A6,6,0,0,0,106.48,212a59.41,59.41,0,0,0,14.68,2c5.49,0,11.54-.95,16.36-4.14a18.89,18.89,0,0,0,8.31-13.81C147.84,180.39,132.92,176.08,123.05,173.22ZM80,146H40a6,6,0,0,0,0,12H54v50a6,6,0,0,0,12,0V158H80a6,6,0,0,0,0-12ZM214,88v24a6,6,0,1,1-12,0V94H152a6,6,0,0,1-6-6V38H56a2,2,0,0,0-2,2v72a6,6,0,1,1-12,0V40A14,14,0,0,1,56,26h96a6,6,0,0,1,4.25,1.76l56,56A6,6,0,0,1,214,88Zm-20.49-6L158,46.48V82Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M214.51,156.65,197.83,180l16.68,23.35a8,8,0,0,1-13,9.3L188,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L178.17,180l-16.68-23.35a8,8,0,0,1,13-9.3L188,166.24l13.49-18.89a8,8,0,0,1,13,9.3ZM123.6,171.31c-4-1.16-8.14-2.35-10.45-3.84-1.25-.82-1.23-1-1.11-1.9a4.54,4.54,0,0,1,2-3.67c4.6-3.12,15.34-1.73,19.83-.56A8,8,0,0,0,138,145.86c-2.12-.55-21-5.22-32.84,2.76a20.58,20.58,0,0,0-9,14.95c-2,15.88,13.65,20.41,23,23.11,12.06,3.49,13.12,4.92,12.78,7.59-.31,2.41-1.26,3.33-2.14,3.93-4.6,3.06-15.17,1.56-19.55.35A8,8,0,0,0,105.94,214a60.63,60.63,0,0,0,15.19,2c5.82,0,12.3-1,17.49-4.46a20.82,20.82,0,0,0,9.19-15.23C150,179,133.49,174.17,123.6,171.31ZM80,144H40a8,8,0,0,0,0,16H52v48a8,8,0,0,0,16,0V160H80a8,8,0,0,0,0-16ZM216,88v24a8,8,0,0,1-16,0V96H152a8,8,0,0,1-8-8V40H56v72a8,8,0,0,1-16,0V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-27.31-8L160,51.31V80Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M211.25,154.33,192.92,180l18.33,25.67a4,4,0,0,1-.93,5.58A3.91,3.91,0,0,1,208,212a4,4,0,0,1-3.26-1.67L188,186.88l-16.75,23.45a4,4,0,0,1-6.51-4.66L183.08,180l-18.34-25.67a4,4,0,0,1,6.51-4.66L188,173.12l16.74-23.45a4,4,0,0,1,6.51,4.66Zm-88.76,20.82c-10.53-3-15.08-4.91-14.42-10.08a8.51,8.51,0,0,1,3.75-6.49c6.25-4.23,18.77-2.24,23.06-1.11a4,4,0,0,0,2.05-7.74,61.33,61.33,0,0,0-10.48-1.61c-8.12-.54-14.54.75-19.1,3.82a16.66,16.66,0,0,0-7.22,12.13c-1.58,12.49,10.46,16,20.14,18.77,11.26,3.25,16.47,5.49,15.64,11.94a8.94,8.94,0,0,1-3.91,6.75c-6.27,4.17-18.61,2.05-22.83.88a4,4,0,1,0-2.15,7.7A57.89,57.89,0,0,0,121.19,212c5.18,0,10.83-.86,15.22-3.77a17,17,0,0,0,7.43-12.41C145.64,181.84,132.26,178,122.49,175.15ZM80,148H40a4,4,0,0,0,0,8H56v52a4,4,0,0,0,8,0V156H80a4,4,0,0,0,0-8ZM212,88v24a4,4,0,0,1-8,0V92H152a4,4,0,0,1-4-4V36H56a4,4,0,0,0-4,4v72a4,4,0,0,1-8,0V40A12,12,0,0,1,56,28h96a4,4,0,0,1,2.83,1.17l56,56A4,4,0,0,1,212,88Zm-13.66-4L156,41.65V84Z"}))]]),zj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,120a12,12,0,0,0,12-12V44h76V92a12,12,0,0,0,12,12h48v4a12,12,0,0,0,24,0V88a12,12,0,0,0-3.51-8.49l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68A12,12,0,0,0,48,120ZM183,80H160V57Zm-25.27,79-15,21,15,21A12,12,0,1,1,138.24,215L128,200.65,117.76,215A12,12,0,1,1,98.24,201l15-21-15-21A12,12,0,1,1,117.76,145L128,159.35,138.24,145A12,12,0,1,1,157.76,159ZM92,152a12,12,0,0,1-12,12H72v44a12,12,0,0,1-24,0V164H40a12,12,0,0,1,0-24H80A12,12,0,0,1,92,152Zm136,0a12,12,0,0,1-12,12h-8v44a12,12,0,0,1-24,0V164h-8a12,12,0,0,1,0-24h40A12,12,0,0,1,228,152Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),h.createElement("path",{d:"M48,120a8,8,0,0,0,8-8V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72A8,8,0,0,0,48,120ZM160,51.31,188.69,80H160Zm-5.49,105.34L137.83,180l16.68,23.35a8,8,0,0,1-13,9.3L128,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L118.17,180l-16.68-23.35a8,8,0,1,1,13-9.3L128,166.24l13.49-18.89a8,8,0,0,1,13,9.3ZM92,152a8,8,0,0,1-8,8H72v48a8,8,0,0,1-16,0V160H44a8,8,0,0,1,0-16H84A8,8,0,0,1,92,152Zm128,0a8,8,0,0,1-8,8H200v48a8,8,0,0,1-16,0V160H172a8,8,0,0,1,0-16h40A8,8,0,0,1,220,152Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M154.31,156.92,137.83,180l16.53,23.14a8.18,8.18,0,0,1-1.22,11,8,8,0,0,1-11.65-1.48L128,193.76l-13.49,18.89a8,8,0,0,1-11.64,1.49,8.17,8.17,0,0,1-1.23-11L118.17,180l-16.48-23.08a8.22,8.22,0,0,1,1.46-11.28,8,8,0,0,1,11.36,1.71L128,166.24l13.49-18.89a8,8,0,0,1,11.36-1.71A8.22,8.22,0,0,1,154.31,156.92ZM84,144H44.27A8.18,8.18,0,0,0,36,151.47,8,8,0,0,0,44,160H56v47.73A8.17,8.17,0,0,0,63.47,216,8,8,0,0,0,72,208V160H83.73A8.18,8.18,0,0,0,92,152.53,8,8,0,0,0,84,144Zm128,0H172.27a8.18,8.18,0,0,0-8.25,7.47,8,8,0,0,0,8,8.53h12v47.73a8.17,8.17,0,0,0,7.47,8.25,8,8,0,0,0,8.53-8V160h11.73a8.18,8.18,0,0,0,8.25-7.47A8,8,0,0,0,212,144ZM40,116V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88v28a4,4,0,0,1-4,4H44A4,4,0,0,1,40,116ZM152,88h44L152,44Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,118a6,6,0,0,0,6-6V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50v18a6,6,0,0,0,12,0V88a6,6,0,0,0-1.76-4.24l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72A6,6,0,0,0,48,118ZM158,46.48,193.52,82H158Zm-5.12,109L135.37,180l17.51,24.51a6,6,0,1,1-9.76,7L128,190.32l-15.12,21.17a6,6,0,0,1-9.76-7L120.63,180l-17.51-24.51a6,6,0,1,1,9.76-7L128,169.68l15.12-21.17a6,6,0,0,1,9.76,7ZM90,152a6,6,0,0,1-6,6H70v50a6,6,0,0,1-12,0V158H44a6,6,0,0,1,0-12H84A6,6,0,0,1,90,152Zm128,0a6,6,0,0,1-6,6H198v50a6,6,0,0,1-12,0V158H172a6,6,0,0,1,0-12h40A6,6,0,0,1,218,152Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M48,120a8,8,0,0,0,8-8V40h88V88a8,8,0,0,0,8,8h48v16a8,8,0,0,0,16,0V88a8,8,0,0,0-2.34-5.66l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72A8,8,0,0,0,48,120ZM160,51.31,188.69,80H160Zm-5.49,105.34L137.83,180l16.68,23.35a8,8,0,0,1-13,9.3L128,193.76l-13.49,18.89a8,8,0,1,1-13-9.3L118.17,180l-16.68-23.35a8,8,0,1,1,13-9.3L128,166.24l13.49-18.89a8,8,0,0,1,13,9.3ZM92,152a8,8,0,0,1-8,8H72v48a8,8,0,0,1-16,0V160H44a8,8,0,0,1,0-16H84A8,8,0,0,1,92,152Zm128,0a8,8,0,0,1-8,8H200v48a8,8,0,0,1-16,0V160H172a8,8,0,0,1,0-16h40A8,8,0,0,1,220,152Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M204,112a4,4,0,0,0,8,0V88a4,4,0,0,0-1.17-2.83l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52ZM156,41.65,198.34,84H156Zm-4.75,112.67L132.92,180l18.33,25.67a4,4,0,1,1-6.5,4.65L128,186.88l-16.75,23.44a4,4,0,1,1-6.5-4.65L123.08,180l-18.33-25.68a4,4,0,1,1,6.5-4.65L128,173.12l16.75-23.45a4,4,0,1,1,6.5,4.65ZM88,152a4,4,0,0,1-4,4H68v52a4,4,0,0,1-8,0V156H44a4,4,0,0,1,0-8H84A4,4,0,0,1,88,152Zm128,0a4,4,0,0,1-4,4H196v52a4,4,0,0,1-8,0V156H172a4,4,0,0,1,0-8h40A4,4,0,0,1,216,152Z"}))]]),Bj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,79.51l-56-56A12,12,0,0,0,152,20H56A20,20,0,0,0,36,40v68a12,12,0,0,0,24,0V44h76V92a12,12,0,0,0,12,12h48V212a12,12,0,0,0,0,24h4a20,20,0,0,0,20-20V88A12,12,0,0,0,216.49,79.51ZM160,57l23,23H160Zm-1.91,84.69a12,12,0,0,0-11.92-.15L126.5,152.44A20,20,0,0,0,108,140H48a20,20,0,0,0-20,20v48a20,20,0,0,0,20,20h60a20,20,0,0,0,18.5-12.44l19.67,10.93A12,12,0,0,0,164,216V152A12,12,0,0,0,158.09,141.66ZM104,204H52V164h52Zm36-8.39-12-6.67v-9.88l12-6.67Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,88H152V32Zm-88,72a8,8,0,0,0-8-8H48a8,8,0,0,0-8,8v48a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V196l32,20V152l-32,20Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM112,208H48V160h64v48Zm32-6.43-16-10V176.43l16-10Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM144,201.57l-16-10V176.43l16-10Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,83.76l-56-56A6,6,0,0,0,152,26H56A14,14,0,0,0,42,40v72a6,6,0,0,0,12,0V40a2,2,0,0,1,2-2h90V88a6,6,0,0,0,6,6h50V216a2,2,0,0,1-2,2h-8a6,6,0,0,0,0,12h8a14,14,0,0,0,14-14V88A6,6,0,0,0,212.24,83.76ZM158,46.48,193.52,82H158Zm-3.09,100.27a6,6,0,0,0-6.09.16L126,161.17V160a14,14,0,0,0-14-14H48a14,14,0,0,0-14,14v48a14,14,0,0,0,14,14h64a14,14,0,0,0,14-14v-1.17l22.82,14.26A6,6,0,0,0,158,216V152A6,6,0,0,0,154.91,146.75ZM114,208a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V160a2,2,0,0,1,2-2h64a2,2,0,0,1,2,2Zm32-2.83-20-12.5V175.33l20-12.5Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40v72a8,8,0,0,0,16,0V40h88V88a8,8,0,0,0,8,8h48V216h-8a8,8,0,0,0,0,16h8a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34ZM160,51.31,188.69,80H160ZM155.88,145a8,8,0,0,0-8.12.22l-19.95,12.46A16,16,0,0,0,112,144H48a16,16,0,0,0-16,16v48a16,16,0,0,0,16,16h64a16,16,0,0,0,15.81-13.68l19.95,12.46A8,8,0,0,0,160,216V152A8,8,0,0,0,155.88,145ZM112,208H48V160h64v48Zm32-6.43-16-10V176.43l16-10Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,85.17l-56-56A4,4,0,0,0,152,28H56A12,12,0,0,0,44,40v72a4,4,0,0,0,8,0V40a4,4,0,0,1,4-4h92V88a4,4,0,0,0,4,4h52V216a4,4,0,0,1-4,4h-8a4,4,0,0,0,0,8h8a12,12,0,0,0,12-12V88A4,4,0,0,0,210.83,85.17ZM156,41.65,198.34,84H156ZM153.94,148.5a4,4,0,0,0-4.06.11L124,164.78V160a12,12,0,0,0-12-12H48a12,12,0,0,0-12,12v48a12,12,0,0,0,12,12h64a12,12,0,0,0,12-12v-4.78l25.88,16.17A4,4,0,0,0,152,220a4.06,4.06,0,0,0,1.94-.5A4,4,0,0,0,156,216V152A4,4,0,0,0,153.94,148.5ZM116,208a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V160a4,4,0,0,1,4-4h64a4,4,0,0,1,4,4Zm32,.78-24-15V174.22l24-15Z"}))]]),Hj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,36H40A20,20,0,0,0,20,56V200a20,20,0,0,0,20,20H216a20,20,0,0,0,20-20V56A20,20,0,0,0,216,36ZM44,100h72v56H44Zm96-24V60h24V76Zm-24,0H92V60h24Zm0,104v16H92V180Zm24,0h24v16H140Zm0-24V100h72v56Zm72-80H188V60h24ZM68,60V76H44V60ZM44,180H68v16H44Zm144,16V180h24v16Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M32,176H224v24a8,8,0,0,1-8,8H40a8,8,0,0,1-8-8ZM216,48H40a8,8,0,0,0-8,8V80H224V56A8,8,0,0,0,216,48Z",opacity:"0.2"}),h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,88h80v80H40Zm96-16V56h32V72Zm-16,0H88V56h32Zm0,112v16H88V184Zm16,0h32v16H136Zm0-16V88h80v80Zm80-96H184V56h32ZM72,56V72H40V56ZM40,184H72v16H40Zm176,16H184V184h32v16Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM184,56h32V72H184ZM72,200H40V184H72ZM72,72H40V56H72Zm48,128H88V184h32Zm0-128H88V56h32Zm48,128H136V184h32Zm0-128H136V56h32Zm48,128H184V184h32v16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,42H40A14,14,0,0,0,26,56V200a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A14,14,0,0,0,216,42ZM38,86h84v84H38Zm96-12V54h36V74Zm-12,0H86V54h36Zm0,108v20H86V182Zm12,0h36v20H134Zm0-12V86h84v84ZM218,56V74H182V54h34A2,2,0,0,1,218,56ZM40,54H74V74H38V56A2,2,0,0,1,40,54ZM38,200V182H74v20H40A2,2,0,0,1,38,200Zm178,2H182V182h36v18A2,2,0,0,1,216,202Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,88h80v80H40Zm96-16V56h32V72Zm-16,0H88V56h32Zm0,112v16H88V184Zm16,0h32v16H136Zm0-16V88h80v80Zm80-96H184V56h32ZM72,56V72H40V56ZM40,184H72v16H40Zm176,16H184V184h32v16Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,44H40A12,12,0,0,0,28,56V200a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A12,12,0,0,0,216,44ZM36,84h88v88H36Zm96-8V52h40V76Zm-8,0H84V52h40Zm0,104v24H84V180Zm8,0h40v24H132Zm0-8V84h88v88ZM220,56V76H180V52h36A4,4,0,0,1,220,56ZM40,52H76V76H36V56A4,4,0,0,1,40,52ZM36,200V180H76v24H40A4,4,0,0,1,36,200Zm180,4H180V180h40v20A4,4,0,0,1,216,204Z"}))]]),Fj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,68H132L105.33,48a20.12,20.12,0,0,0-12-4H40A20,20,0,0,0,20,64V200a20,20,0,0,0,20,20H216.89A19.13,19.13,0,0,0,236,200.89V88A20,20,0,0,0,216,68Zm-4,128H44V68H92l28.8,21.6A12,12,0,0,0,128,92h84Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,88V200.89a7.11,7.11,0,0,1-7.11,7.11H40a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H93.33a8,8,0,0,1,4.8,1.6L128,80h88A8,8,0,0,1,224,88Z",opacity:"0.2"}),h.createElement("path",{d:"M216,72H130.67L102.93,51.2a16.12,16.12,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V200a16,16,0,0,0,16,16H216.89A15.13,15.13,0,0,0,232,200.89V88A16,16,0,0,0,216,72Zm0,128H40V64H93.33L123.2,86.4A8,8,0,0,0,128,88h88Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232,88V200.89A15.13,15.13,0,0,1,216.89,216H40a16,16,0,0,1-16-16V64A16,16,0,0,1,40,48H93.33a16.12,16.12,0,0,1,9.6,3.2L130.67,72H216A16,16,0,0,1,232,88Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,74H130L101.73,52.8a14,14,0,0,0-8.4-2.8H40A14,14,0,0,0,26,64V200a14,14,0,0,0,14,14H216.89A13.12,13.12,0,0,0,230,200.89V88A14,14,0,0,0,216,74Zm2,126.89a1.11,1.11,0,0,1-1.11,1.11H40a2,2,0,0,1-2-2V64a2,2,0,0,1,2-2H93.33a2,2,0,0,1,1.2.4L124.4,84.8A6,6,0,0,0,128,86h88a2,2,0,0,1,2,2Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,72H130.67L102.93,51.2a16.12,16.12,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V200a16,16,0,0,0,16,16H216.89A15.13,15.13,0,0,0,232,200.89V88A16,16,0,0,0,216,72Zm0,128H40V64H93.33L123.2,86.4A8,8,0,0,0,128,88h88Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,76H129.33l-28.8-21.6a12.05,12.05,0,0,0-7.2-2.4H40A12,12,0,0,0,28,64V200a12,12,0,0,0,12,12H216.89A11.12,11.12,0,0,0,228,200.89V88A12,12,0,0,0,216,76Zm4,124.89a3.12,3.12,0,0,1-3.11,3.11H40a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H93.33a4,4,0,0,1,2.4.8L125.6,83.2a4,4,0,0,0,2.4.8h88a4,4,0,0,1,4,4Z"}))]]),Xj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,68H132L105.33,48a20.12,20.12,0,0,0-12-4H40A20,20,0,0,0,20,64V200a20,20,0,0,0,20,20H216.89A19.13,19.13,0,0,0,236,200.89V88A20,20,0,0,0,216,68Zm-4,128H44V68H92l28.8,21.6A12,12,0,0,0,128,92h84Zm-84-88a12,12,0,0,1,12,12v12h12a12,12,0,0,1,0,24H140v12a12,12,0,0,1-24,0V156H104a12,12,0,0,1,0-24h12V120A12,12,0,0,1,128,108Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,88V200.89a7.11,7.11,0,0,1-7.11,7.11H40a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H93.33a8,8,0,0,1,4.8,1.6L128,80h88A8,8,0,0,1,224,88Z",opacity:"0.2"}),h.createElement("path",{d:"M216,72H130.67L102.93,51.2a16.12,16.12,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V200a16,16,0,0,0,16,16H216.89A15.13,15.13,0,0,0,232,200.89V88A16,16,0,0,0,216,72Zm0,128H40V64H93.33L123.2,86.4A8,8,0,0,0,128,88h88Zm-56-56a8,8,0,0,1-8,8H136v16a8,8,0,0,1-16,0V152H104a8,8,0,0,1,0-16h16V120a8,8,0,0,1,16,0v16h16A8,8,0,0,1,160,144Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,72H130.67L102.93,51.2a16.12,16.12,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V200a16,16,0,0,0,16,16H216.89A15.13,15.13,0,0,0,232,200.89V88A16,16,0,0,0,216,72Zm-64,80H136v16a8,8,0,0,1-16,0V152H104a8,8,0,0,1,0-16h16V120a8,8,0,0,1,16,0v16h16a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,74H130L101.73,52.8a14,14,0,0,0-8.4-2.8H40A14,14,0,0,0,26,64V200a14,14,0,0,0,14,14H216.89A13.12,13.12,0,0,0,230,200.89V88A14,14,0,0,0,216,74Zm2,126.89a1.11,1.11,0,0,1-1.11,1.11H40a2,2,0,0,1-2-2V64a2,2,0,0,1,2-2H93.33a2,2,0,0,1,1.2.4L124.4,84.8A6,6,0,0,0,128,86h88a2,2,0,0,1,2,2ZM158,144a6,6,0,0,1-6,6H134v18a6,6,0,0,1-12,0V150H104a6,6,0,0,1,0-12h18V120a6,6,0,0,1,12,0v18h18A6,6,0,0,1,158,144Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,72H130.67L102.93,51.2a16.12,16.12,0,0,0-9.6-3.2H40A16,16,0,0,0,24,64V200a16,16,0,0,0,16,16H216.89A15.13,15.13,0,0,0,232,200.89V88A16,16,0,0,0,216,72Zm0,128H40V64H93.33L123.2,86.4A8,8,0,0,0,128,88h88Zm-56-56a8,8,0,0,1-8,8H136v16a8,8,0,0,1-16,0V152H104a8,8,0,0,1,0-16h16V120a8,8,0,0,1,16,0v16h16A8,8,0,0,1,160,144Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,76H129.33l-28.8-21.6a12.05,12.05,0,0,0-7.2-2.4H40A12,12,0,0,0,28,64V200a12,12,0,0,0,12,12H216.89A11.12,11.12,0,0,0,228,200.89V88A12,12,0,0,0,216,76Zm4,124.89a3.12,3.12,0,0,1-3.11,3.11H40a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H93.33a4,4,0,0,1,2.4.8L125.6,83.2a4,4,0,0,0,2.4.8h88a4,4,0,0,1,4,4ZM156,144a4,4,0,0,1-4,4H132v20a4,4,0,0,1-8,0V148H104a4,4,0,0,1,0-8h20V120a4,4,0,0,1,8,0v20h20A4,4,0,0,1,156,144Z"}))]]),Uj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z",opacity:"0.2"}),h.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z"}))]]),qj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M144,96a16,16,0,1,1,16,16A16,16,0,0,1,144,96Zm92-40V200a20,20,0,0,1-20,20H40a20,20,0,0,1-20-20V56A20,20,0,0,1,40,36H216A20,20,0,0,1,236,56ZM44,60v79.72l33.86-33.86a20,20,0,0,1,28.28,0L147.31,147l17.18-17.17a20,20,0,0,1,28.28,0L212,149.09V60Zm0,136H162.34L92,125.66l-48,48Zm168,0V183l-33.37-33.37L164.28,164l32,32Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,56V178.06l-39.72-39.72a8,8,0,0,0-11.31,0L147.31,164,97.66,114.34a8,8,0,0,0-11.32,0L32,168.69V56a8,8,0,0,1,8-8H216A8,8,0,0,1,224,56Z",opacity:"0.2"}),h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40Zm0,16V158.75l-26.07-26.06a16,16,0,0,0-22.63,0l-20,20-44-44a16,16,0,0,0-22.62,0L40,149.37V56ZM40,172l52-52,80,80H40Zm176,28H194.63l-36-36,20-20L216,181.38V200ZM144,100a12,12,0,1,1,12,12A12,12,0,0,1,144,100Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM156,88a12,12,0,1,1-12,12A12,12,0,0,1,156,88Zm60,112H40V160.69l46.34-46.35a8,8,0,0,1,11.32,0h0L165,181.66a8,8,0,0,0,11.32-11.32l-17.66-17.65L173,138.34a8,8,0,0,1,11.31,0L216,170.07V200Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,42H40A14,14,0,0,0,26,56V200a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A14,14,0,0,0,216,42ZM40,54H216a2,2,0,0,1,2,2V163.57L188.53,134.1a14,14,0,0,0-19.8,0l-21.42,21.42L101.9,110.1a14,14,0,0,0-19.8,0L38,154.2V56A2,2,0,0,1,40,54ZM38,200V171.17l52.58-52.58a2,2,0,0,1,2.84,0L176.83,202H40A2,2,0,0,1,38,200Zm178,2H193.8l-38-38,21.41-21.42a2,2,0,0,1,2.83,0l38,38V200A2,2,0,0,1,216,202ZM146,100a10,10,0,1,1,10,10A10,10,0,0,1,146,100Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40Zm0,16V158.75l-26.07-26.06a16,16,0,0,0-22.63,0l-20,20-44-44a16,16,0,0,0-22.62,0L40,149.37V56ZM40,172l52-52,80,80H40Zm176,28H194.63l-36-36,20-20L216,181.38V200ZM144,100a12,12,0,1,1,12,12A12,12,0,0,1,144,100Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,44H40A12,12,0,0,0,28,56V200a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A12,12,0,0,0,216,44ZM40,52H216a4,4,0,0,1,4,4V168.4l-32.89-32.89a12,12,0,0,0-17,0l-22.83,22.83-46.82-46.83a12,12,0,0,0-17,0L36,159V56A4,4,0,0,1,40,52ZM36,200V170.34l53.17-53.17a4,4,0,0,1,5.66,0L181.66,204H40A4,4,0,0,1,36,200Zm180,4H193l-40-40,22.83-22.83a4,4,0,0,1,5.66,0L220,179.71V200A4,4,0,0,1,216,204ZM148,100a8,8,0,1,1,8,8A8,8,0,0,1,148,100Z"}))]]),Yj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M219.71,117.38a12,12,0,0,0-7.25-8.52L161.28,88.39l10.59-70.61a12,12,0,0,0-20.64-10l-112,120a12,12,0,0,0,4.31,19.33l51.18,20.47L84.13,238.22a12,12,0,0,0,20.64,10l112-120A12,12,0,0,0,219.71,117.38ZM113.6,203.55l6.27-41.77a12,12,0,0,0-7.41-12.92L68.74,131.37,142.4,52.45l-6.27,41.77a12,12,0,0,0,7.41,12.92l43.72,17.49Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M96,240l16-80L48,136,160,16,144,96l64,24Z",opacity:"0.2"}),h.createElement("path",{d:"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.85,125.46l-112,120a8,8,0,0,1-13.69-7l14.66-73.33L45.19,143.49a8,8,0,0,1-3-13l112-120a8,8,0,0,1,13.69,7L153.18,90.9l57.63,21.61a8,8,0,0,1,3,12.95Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.84,118.63a6,6,0,0,0-3.73-4.25L150.88,92.17l15-75a6,6,0,0,0-10.27-5.27l-112,120a6,6,0,0,0,2.28,9.71l59.23,22.21-15,75a6,6,0,0,0,3.14,6.52A6.07,6.07,0,0,0,96,246a6,6,0,0,0,4.39-1.91l112-120A6,6,0,0,0,213.84,118.63ZM106,220.46l11.85-59.28a6,6,0,0,0-3.77-6.8l-55.6-20.85,91.46-98L138.12,94.82a6,6,0,0,0,3.77,6.8l55.6,20.85Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M211.89,119.09a4,4,0,0,0-2.49-2.84l-60.81-22.8,15.33-76.67a4,4,0,0,0-6.84-3.51l-112,120a4,4,0,0,0-1,3.64,4,4,0,0,0,2.49,2.84l60.81,22.8L92.08,239.22a4,4,0,0,0,6.84,3.51l112-120A4,4,0,0,0,211.89,119.09ZM102.68,227l13.24-66.2a4,4,0,0,0-2.52-4.53L55,134.36,153.32,29l-13.24,66.2a4,4,0,0,0,2.52,4.53L201,121.64Z"}))]]),Wj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M211.45,52.51l-80-24A12,12,0,0,0,116,40V140.22A52,52,0,1,0,140,184V104.13l64.55,19.36A12,12,0,0,0,220,112V64A12,12,0,0,0,211.45,52.51ZM88,212a28,28,0,1,1,28-28A28,28,0,0,1,88,212ZM196,95.87l-56-16.8V56.13l56,16.8Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,184a40,40,0,1,1-40-40A40,40,0,0,1,128,184Z",opacity:"0.2"}),h.createElement("path",{d:"M210.3,56.34l-80-24A8,8,0,0,0,120,40V148.26A48,48,0,1,0,136,184V98.75l69.7,20.91A8,8,0,0,0,216,112V64A8,8,0,0,0,210.3,56.34ZM88,216a32,32,0,1,1,32-32A32,32,0,0,1,88,216ZM200,101.25l-64-19.2V50.75L200,70Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.3,56.34l-80-24A8,8,0,0,0,120,40V148.26A48,48,0,1,0,136,184V98.75l69.7,20.91A8,8,0,0,0,216,112V64A8,8,0,0,0,210.3,56.34Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M209.72,58.25l-80-24A6,6,0,0,0,122,40V153.05A46,46,0,1,0,134,184V96.06l72.28,21.69A6,6,0,0,0,214,112V64A6,6,0,0,0,209.72,58.25ZM88,218a34,34,0,1,1,34-34A34,34,0,0,1,88,218ZM202,103.94l-68-20.4V48.06l68,20.4Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.3,56.34l-80-24A8,8,0,0,0,120,40V148.26A48,48,0,1,0,136,184V98.75l69.7,20.91A8,8,0,0,0,216,112V64A8,8,0,0,0,210.3,56.34ZM88,216a32,32,0,1,1,32-32A32,32,0,0,1,88,216ZM200,101.25l-64-19.2V50.75L200,70Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M209.15,60.17l-80-24A4,4,0,0,0,124,40V158.75A44,44,0,1,0,132,184V93.38l74.85,22.45A4,4,0,0,0,212,112V64A4,4,0,0,0,209.15,60.17ZM88,220a36,36,0,1,1,36-36A36,36,0,0,1,88,220ZM204,106.62,132,85V45.38L204,67Z"}))]]),Gj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M203.57,51A107.9,107.9,0,0,0,20,128c0,44.72,27.6,82.25,72,97.94A36,36,0,0,0,140,192a12,12,0,0,1,12-12h46.21a35.79,35.79,0,0,0,35.1-28A108.6,108.6,0,0,0,236,127.09,107.23,107.23,0,0,0,203.57,51Zm6.34,95.67a11.91,11.91,0,0,1-11.7,9.3H152a36,36,0,0,0-36,36,12,12,0,0,1-16,11.3c-16.65-5.88-30.65-15.76-40.48-28.56A76,76,0,0,1,44,128a84,84,0,0,1,83.13-84H128a84.35,84.35,0,0,1,84,83.29A84.72,84.72,0,0,1,209.91,146.71ZM144,76a16,16,0,1,1-16-16A16,16,0,0,1,144,76Zm-44,24A16,16,0,1,1,84,84,16,16,0,0,1,100,100Zm0,56a16,16,0,1,1-16-16A16,16,0,0,1,100,156Zm88-56a16,16,0,1,1-16-16A16,16,0,0,1,188,100Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,127.17a96.48,96.48,0,0,1-2.39,22.18A24,24,0,0,1,198.21,168H152a24,24,0,0,0-24,24,24,24,0,0,1-32,22.61C58.73,201.44,32,169.81,32,128a96,96,0,0,1,95-96C179.84,31.47,223.55,74.35,224,127.17Z",opacity:"0.2"}),h.createElement("path",{d:"M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89Zm13,93.71A15.89,15.89,0,0,1,198.21,160H152a32,32,0,0,0-32,32,16,16,0,0,1-21.31,15.07C62.49,194.3,40,164,40,128a88,88,0,0,1,87.09-88h.9a88.35,88.35,0,0,1,88,87.25A88.86,88.86,0,0,1,213.81,147.6ZM140,76a12,12,0,1,1-12-12A12,12,0,0,1,140,76ZM96,100A12,12,0,1,1,84,88,12,12,0,0,1,96,100Zm0,56a12,12,0,1,1-12-12A12,12,0,0,1,96,156Zm88-56a12,12,0,1,1-12-12A12,12,0,0,1,184,100Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89ZM84,168a12,12,0,1,1,12-12A12,12,0,0,1,84,168Zm0-56a12,12,0,1,1,12-12A12,12,0,0,1,84,112Zm44-24a12,12,0,1,1,12-12A12,12,0,0,1,128,88Zm44,24a12,12,0,1,1,12-12A12,12,0,0,1,172,112Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M199.37,55.31A101.32,101.32,0,0,0,128,26h-1A102,102,0,0,0,26,128c0,42.09,26.07,77.44,68,92.26A30.21,30.21,0,0,0,104.11,222,30.06,30.06,0,0,0,134,192a18,18,0,0,1,18-18h46.21a29.82,29.82,0,0,0,29.25-23.31A102.71,102.71,0,0,0,230,127.11,101.25,101.25,0,0,0,199.37,55.31ZM215.76,148a17.89,17.89,0,0,1-17.55,14H152a30,30,0,0,0-30,30,18,18,0,0,1-24,17C61,195.86,38,164.85,38,128a90,90,0,0,1,89.07-90H128a90.34,90.34,0,0,1,90,89.22A90.46,90.46,0,0,1,215.76,148ZM138,76a10,10,0,1,1-10-10A10,10,0,0,1,138,76ZM94,100A10,10,0,1,1,84,90,10,10,0,0,1,94,100Zm0,56a10,10,0,1,1-10-10A10,10,0,0,1,94,156Zm88-56a10,10,0,1,1-10-10A10,10,0,0,1,182,100Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200.77,53.89A103.27,103.27,0,0,0,128,24h-1.07A104,104,0,0,0,24,128c0,43,26.58,79.06,69.36,94.17A32,32,0,0,0,136,192a16,16,0,0,1,16-16h46.21a31.81,31.81,0,0,0,31.2-24.88,104.43,104.43,0,0,0,2.59-24A103.28,103.28,0,0,0,200.77,53.89Zm13,93.71A15.89,15.89,0,0,1,198.21,160H152a32,32,0,0,0-32,32,16,16,0,0,1-21.31,15.07C62.49,194.3,40,164,40,128a88,88,0,0,1,87.09-88h.9a88.35,88.35,0,0,1,88,87.25A88.86,88.86,0,0,1,213.81,147.6ZM140,76a12,12,0,1,1-12-12A12,12,0,0,1,140,76ZM96,100A12,12,0,1,1,84,88,12,12,0,0,1,96,100Zm0,56a12,12,0,1,1-12-12A12,12,0,0,1,96,156Zm88-56a12,12,0,1,1-12-12A12,12,0,0,1,184,100Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M198,56.74A99.31,99.31,0,0,0,128,28h-1A100,100,0,0,0,28,128c0,41.22,25.55,75.85,66.69,90.38a28.34,28.34,0,0,0,9.42,1.63A28,28,0,0,0,132,192a20,20,0,0,1,20-20h46.21a27.84,27.84,0,0,0,27.3-21.76,100.37,100.37,0,0,0,2.49-23.1A99.26,99.26,0,0,0,198,56.74Zm19.74,91.72A19.89,19.89,0,0,1,198.21,164H152a28,28,0,0,0-28,28,20,20,0,0,1-26.64,18.83C59.51,197.46,36,165.72,36,128a92,92,0,0,1,91.05-92H128a92,92,0,0,1,89.72,112.46ZM136,76a8,8,0,1,1-8-8A8,8,0,0,1,136,76ZM92,100a8,8,0,1,1-8-8A8,8,0,0,1,92,100Zm0,56a8,8,0,1,1-8-8A8,8,0,0,1,92,156Zm88-56a8,8,0,1,1-8-8A8,8,0,0,1,180,100Z"}))]]),Kj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M230.14,70.54,185.46,25.85a20,20,0,0,0-28.29,0L33.86,149.17A19.85,19.85,0,0,0,28,163.31V208a20,20,0,0,0,20,20H92.69a19.86,19.86,0,0,0,14.14-5.86L230.14,98.82a20,20,0,0,0,0-28.28ZM91,204H52V165l84-84,39,39ZM192,103,153,64l18.34-18.34,39,39Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M221.66,90.34,192,120,136,64l29.66-29.66a8,8,0,0,1,11.31,0L221.66,79A8,8,0,0,1,221.66,90.34Z",opacity:"0.2"}),h.createElement("path",{d:"M227.31,73.37,182.63,28.68a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H92.69A15.86,15.86,0,0,0,104,219.31L227.31,96a16,16,0,0,0,0-22.63ZM92.69,208H48V163.31l88-88L180.69,120ZM192,108.68,147.31,64l24-24L216,84.68Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M227.31,73.37,182.63,28.68a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H92.69A15.86,15.86,0,0,0,104,219.31L227.31,96a16,16,0,0,0,0-22.63ZM192,108.68,147.31,64l24-24L216,84.68Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M225.9,74.78,181.21,30.09a14,14,0,0,0-19.8,0L38.1,153.41a13.94,13.94,0,0,0-4.1,9.9V208a14,14,0,0,0,14,14H92.69a13.94,13.94,0,0,0,9.9-4.1L225.9,94.58a14,14,0,0,0,0-19.8ZM94.1,209.41a2,2,0,0,1-1.41.59H48a2,2,0,0,1-2-2V163.31a2,2,0,0,1,.59-1.41L136,72.48,183.51,120ZM217.41,86.1,192,111.51,144.49,64,169.9,38.58a2,2,0,0,1,2.83,0l44.68,44.69a2,2,0,0,1,0,2.83Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M227.31,73.37,182.63,28.68a16,16,0,0,0-22.63,0L36.69,152A15.86,15.86,0,0,0,32,163.31V208a16,16,0,0,0,16,16H92.69A15.86,15.86,0,0,0,104,219.31L227.31,96a16,16,0,0,0,0-22.63ZM92.69,208H48V163.31l88-88L180.69,120ZM192,108.68,147.31,64l24-24L216,84.68Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224.49,76.2,179.8,31.51a12,12,0,0,0-17,0L133.17,61.17h0L39.52,154.83A11.9,11.9,0,0,0,36,163.31V208a12,12,0,0,0,12,12H92.69a12,12,0,0,0,8.48-3.51L224.48,93.17a12,12,0,0,0,0-17Zm-129,134.63A4,4,0,0,1,92.69,212H48a4,4,0,0,1-4-4V163.31a4,4,0,0,1,1.17-2.83L136,69.65,186.34,120ZM218.83,87.51,192,114.34,141.66,64l26.82-26.83a4,4,0,0,1,5.66,0l44.69,44.68a4,4,0,0,1,0,5.66Z"}))]]),Jj=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M228,128a12,12,0,0,1-12,12H140v76a12,12,0,0,1-24,0V140H40a12,12,0,0,1,0-24h76V40a12,12,0,0,1,24,0v76h76A12,12,0,0,1,228,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",opacity:"0.2"}),h.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,136H136v48a8,8,0,0,1-16,0V136H72a8,8,0,0,1,0-16h48V72a8,8,0,0,1,16,0v48h48a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M222,128a6,6,0,0,1-6,6H134v82a6,6,0,0,1-12,0V134H40a6,6,0,0,1,0-12h82V40a6,6,0,0,1,12,0v82h82A6,6,0,0,1,222,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a8,8,0,0,1-8,8H136v80a8,8,0,0,1-16,0V136H40a8,8,0,0,1,0-16h80V40a8,8,0,0,1,16,0v80h80A8,8,0,0,1,224,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M220,128a4,4,0,0,1-4,4H132v84a4,4,0,0,1-8,0V132H40a4,4,0,0,1,0-8h84V40a4,4,0,0,1,8,0v84h84A4,4,0,0,1,220,128Z"}))]]),eZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V48A20,20,0,0,0,208,28Zm-4,176H52V52H204Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H208A8,8,0,0,1,216,48Z",opacity:"0.2"}),h.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,48V208a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V48A16,16,0,0,1,48,32H208A16,16,0,0,1,224,48Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,34H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V48A14,14,0,0,0,208,34Zm2,174a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32Zm0,176H48V48H208V208Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V48A12,12,0,0,0,208,36Zm4,172a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Z"}))]]),tZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M234.36,170A12,12,0,0,1,230,186.37l-96,56a12,12,0,0,1-12.1,0l-96-56a12,12,0,0,1,12.09-20.74l90,52.48L218,165.63A12,12,0,0,1,234.36,170ZM218,117.63,128,170.11,38.05,117.63A12,12,0,0,0,26,138.37l96,56a12,12,0,0,0,12.1,0l96-56A12,12,0,0,0,218,117.63ZM20,80a12,12,0,0,1,6-10.37l96-56a12.06,12.06,0,0,1,12.1,0l96,56a12,12,0,0,1,0,20.74l-96,56a12,12,0,0,1-12.1,0l-96-56A12,12,0,0,1,20,80Zm35.82,0L128,122.11,200.18,80,128,37.89Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,80l-96,56L32,80l96-56Z",opacity:"0.2"}),h.createElement("path",{d:"M230.91,172A8,8,0,0,1,228,182.91l-96,56a8,8,0,0,1-8.06,0l-96-56A8,8,0,0,1,36,169.09l92,53.65,92-53.65A8,8,0,0,1,230.91,172ZM220,121.09l-92,53.65L36,121.09A8,8,0,0,0,28,134.91l96,56a8,8,0,0,0,8.06,0l96-56A8,8,0,1,0,220,121.09ZM24,80a8,8,0,0,1,4-6.91l96-56a8,8,0,0,1,8.06,0l96,56a8,8,0,0,1,0,13.82l-96,56a8,8,0,0,1-8.06,0l-96-56A8,8,0,0,1,24,80Zm23.88,0L128,126.74,208.12,80,128,33.26Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M220,169.09l-92,53.65L36,169.09A8,8,0,0,0,28,182.91l96,56a8,8,0,0,0,8.06,0l96-56A8,8,0,1,0,220,169.09Z"}),h.createElement("path",{d:"M220,121.09l-92,53.65L36,121.09A8,8,0,0,0,28,134.91l96,56a8,8,0,0,0,8.06,0l96-56A8,8,0,1,0,220,121.09Z"}),h.createElement("path",{d:"M28,86.91l96,56a8,8,0,0,0,8.06,0l96-56a8,8,0,0,0,0-13.82l-96-56a8,8,0,0,0-8.06,0l-96,56a8,8,0,0,0,0,13.82Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M229.18,173a6,6,0,0,1-2.16,8.2l-96,56a6,6,0,0,1-6,0l-96-56a6,6,0,0,1,6-10.36l93,54.23,93-54.23A6,6,0,0,1,229.18,173ZM221,122.82l-93,54.23L35,122.82a6,6,0,0,0-6,10.36l96,56a6,6,0,0,0,6,0l96-56a6,6,0,0,0-6-10.36ZM26,80a6,6,0,0,1,3-5.18l96-56a6,6,0,0,1,6,0l96,56a6,6,0,0,1,0,10.36l-96,56a6,6,0,0,1-6,0l-96-56A6,6,0,0,1,26,80Zm17.91,0L128,129.05,212.09,80,128,31Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M230.91,172A8,8,0,0,1,228,182.91l-96,56a8,8,0,0,1-8.06,0l-96-56A8,8,0,0,1,36,169.09l92,53.65,92-53.65A8,8,0,0,1,230.91,172ZM220,121.09l-92,53.65L36,121.09A8,8,0,0,0,28,134.91l96,56a8,8,0,0,0,8.06,0l96-56A8,8,0,1,0,220,121.09ZM24,80a8,8,0,0,1,4-6.91l96-56a8,8,0,0,1,8.06,0l96,56a8,8,0,0,1,0,13.82l-96,56a8,8,0,0,1-8.06,0l-96-56A8,8,0,0,1,24,80Zm23.88,0L128,126.74,208.12,80,128,33.26Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M227.45,174a4,4,0,0,1-1.44,5.48l-96,56a4,4,0,0,1-4,0l-96-56a4,4,0,0,1,4-6.92l94,54.83,94-54.83A4,4,0,0,1,227.45,174ZM222,124.54l-94,54.83L34,124.54a4,4,0,0,0-4,6.92l96,56a4,4,0,0,0,4,0l96-56a4,4,0,0,0-4-6.92ZM28,80a4,4,0,0,1,2-3.46l96-56a4,4,0,0,1,4,0l96,56a4,4,0,0,1,0,6.92l-96,56a4,4,0,0,1-4,0l-96-56A4,4,0,0,1,28,80Zm11.94,0L128,131.37,216.06,80,128,28.63Z"}))]]),nZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M90.86,50.89a12,12,0,0,0-21.72,0l-64,136a12,12,0,0,0,21.71,10.22L42.44,164h75.12l15.58,33.11a12,12,0,0,0,21.72-10.22ZM53.74,140,80,84.18,106.27,140ZM200,84c-13.85,0-24.77,3.86-32.45,11.48a12,12,0,1,0,16.9,17c3-3,8.26-4.52,15.55-4.52,11,0,20,7.18,20,16v4.39A47.28,47.28,0,0,0,200,124c-24.26,0-44,17.94-44,40s19.74,40,44,40a47.18,47.18,0,0,0,22-5.38A12,12,0,0,0,244,192V124C244,101.94,224.26,84,200,84Zm0,96c-11,0-20-7.18-20-16s9-16,20-16,20,7.18,20,16S211,180,200,180Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232,164c0,15.46-14.33,28-32,28s-32-12.54-32-28,14.33-28,32-28S232,148.54,232,164ZM34.82,152h90.36L80,56Z",opacity:"0.2"}),h.createElement("path",{d:"M87.24,52.59a8,8,0,0,0-14.48,0l-64,136a8,8,0,1,0,14.48,6.81L39.9,160h80.2l16.66,35.4a8,8,0,1,0,14.48-6.81ZM47.43,144,80,74.79,112.57,144ZM200,96c-12.76,0-22.73,3.47-29.63,10.32a8,8,0,0,0,11.26,11.36c3.8-3.77,10-5.68,18.37-5.68,13.23,0,24,9,24,20v3.22A42.76,42.76,0,0,0,200,128c-22.06,0-40,16.15-40,36s17.94,36,40,36a42.73,42.73,0,0,0,24-7.25,8,8,0,0,0,16-.75V132C240,112.15,222.06,96,200,96Zm0,88c-13.23,0-24-9-24-20s10.77-20,24-20,24,9,24,20S213.23,184,200,184Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,156c0,6.5-7.33,12-16,12s-16-5.5-16-12,7.33-12,16-12S200,149.5,200,156ZM232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56ZM143.37,172.88l-44-104a8,8,0,0,0-14.74,0l-44,104a8,8,0,0,0,14.74,6.24L66.84,152h50.32l11.47,27.12a8,8,0,0,0,14.74-6.24ZM216,124c0-15.44-14.36-28-32-28a34.86,34.86,0,0,0-20.78,6.68,8,8,0,0,0,9.56,12.83A18.84,18.84,0,0,1,184,112c8.56,0,15.8,5.36,16,11.76v8A35.24,35.24,0,0,0,184,128c-17.64,0-32,12.56-32,28s14.36,28,32,28a35.13,35.13,0,0,0,16.93-4.26A8,8,0,0,0,216,176ZM73.61,136h36.78L92,92.53Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M85.43,53.45a6,6,0,0,0-10.86,0l-64,136a6,6,0,1,0,10.86,5.11L38.63,158h82.74l17.2,36.55a6,6,0,1,0,10.86-5.11ZM44.28,146,80,70.09,115.72,146ZM200,98c-12.21,0-21.71,3.28-28.23,9.74a6,6,0,0,0,8.46,8.52c4.18-4.15,10.84-6.26,19.77-6.26,14.34,0,26,9.87,26,22v7.24A40.36,40.36,0,0,0,200,130c-20.95,0-38,15.25-38,34s17.05,34,38,34a40.36,40.36,0,0,0,26-9.24V192a6,6,0,0,0,12,0V132C238,113.25,221,98,200,98Zm0,88c-14.34,0-26-9.87-26-22s11.66-22,26-22,26,9.87,26,22S214.34,186,200,186Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M87.24,52.59a8,8,0,0,0-14.48,0l-64,136a8,8,0,1,0,14.48,6.81L39.9,160h80.2l16.66,35.4a8,8,0,1,0,14.48-6.81ZM47.43,144,80,74.79,112.57,144ZM200,96c-12.76,0-22.73,3.47-29.63,10.32a8,8,0,0,0,11.26,11.36c3.8-3.77,10-5.68,18.37-5.68,13.23,0,24,9,24,20v3.22A42.76,42.76,0,0,0,200,128c-22.06,0-40,16.15-40,36s17.94,36,40,36a42.73,42.73,0,0,0,24-7.25,8,8,0,0,0,16-.75V132C240,112.15,222.06,96,200,96Zm0,88c-13.23,0-24-9-24-20s10.77-20,24-20,24,9,24,20S213.23,184,200,184Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M83.62,54.3a4,4,0,0,0-7.24,0l-64,136a4,4,0,0,0,7.24,3.4L37.36,156h85.28l17.74,37.7a4,4,0,1,0,7.24-3.4ZM41.13,148,80,65.39,118.87,148ZM200,100c-11.67,0-20.69,3.08-26.82,9.16a4,4,0,1,0,5.64,5.68c4.57-4.54,11.7-6.84,21.18-6.84,15.44,0,28,10.77,28,24v11.92A37.78,37.78,0,0,0,200,132c-19.85,0-36,14.35-36,32s16.15,32,36,32a37.78,37.78,0,0,0,28-11.92V192a4,4,0,0,0,8,0V132C236,114.36,219.85,100,200,100Zm0,88c-15.44,0-28-10.77-28-24s12.56-24,28-24,28,10.77,28,24S215.44,188,200,188Z"}))]]),rZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212,56V88a12,12,0,0,1-24,0V68H140V188h20a12,12,0,0,1,0,24H96a12,12,0,0,1,0-24h20V68H68V88a12,12,0,0,1-24,0V56A12,12,0,0,1,56,44H200A12,12,0,0,1,212,56Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,56V184a16,16,0,0,1-16,16H72a16,16,0,0,1-16-16V56Z",opacity:"0.2"}),h.createElement("path",{d:"M208,56V88a8,8,0,0,1-16,0V64H136V192h24a8,8,0,0,1,0,16H96a8,8,0,0,1,0-16h24V64H64V88a8,8,0,0,1-16,0V56a8,8,0,0,1,8-8H200A8,8,0,0,1,208,56Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM184,96a8,8,0,0,1-16,0V88H136v88h12a8,8,0,0,1,0,16H108a8,8,0,0,1,0-16h12V88H88v8a8,8,0,0,1-16,0V80a8,8,0,0,1,8-8h96a8,8,0,0,1,8,8Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M206,56V88a6,6,0,0,1-12,0V62H134V194h26a6,6,0,0,1,0,12H96a6,6,0,0,1,0-12h26V62H62V88a6,6,0,0,1-12,0V56a6,6,0,0,1,6-6H200A6,6,0,0,1,206,56Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,56V88a8,8,0,0,1-16,0V64H136V192h24a8,8,0,0,1,0,16H96a8,8,0,0,1,0-16h24V64H64V88a8,8,0,0,1-16,0V56a8,8,0,0,1,8-8H200A8,8,0,0,1,208,56Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M204,56V88a4,4,0,0,1-8,0V60H132V196h28a4,4,0,0,1,0,8H96a4,4,0,0,1,0-8h28V60H60V88a4,4,0,0,1-8,0V56a4,4,0,0,1,4-4H200A4,4,0,0,1,204,56Z"}))]]),iZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48H180V36A28,28,0,0,0,152,8H104A28,28,0,0,0,76,36V48H40a12,12,0,0,0,0,24h4V208a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V72h4a12,12,0,0,0,0-24ZM100,36a4,4,0,0,1,4-4h48a4,4,0,0,1,4,4V48H100Zm88,168H68V72H188ZM116,104v64a12,12,0,0,1-24,0V104a12,12,0,0,1,24,0Zm48,0v64a12,12,0,0,1-24,0V104a12,12,0,0,1,24,0Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,56V208a8,8,0,0,1-8,8H64a8,8,0,0,1-8-8V56Z",opacity:"0.2"}),h.createElement("path",{d:"M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM96,40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96Zm96,168H64V64H192ZM112,104v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM112,168a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm0-120H96V40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,50H174V40a22,22,0,0,0-22-22H104A22,22,0,0,0,82,40V50H40a6,6,0,0,0,0,12H50V208a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V62h10a6,6,0,0,0,0-12ZM94,40a10,10,0,0,1,10-10h48a10,10,0,0,1,10,10V50H94ZM194,208a2,2,0,0,1-2,2H64a2,2,0,0,1-2-2V62H194ZM110,104v64a6,6,0,0,1-12,0V104a6,6,0,0,1,12,0Zm48,0v64a6,6,0,0,1-12,0V104a6,6,0,0,1,12,0Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48H176V40a24,24,0,0,0-24-24H104A24,24,0,0,0,80,40v8H40a8,8,0,0,0,0,16h8V208a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V64h8a8,8,0,0,0,0-16ZM96,40a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96Zm96,168H64V64H192ZM112,104v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm48,0v64a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,52H172V40a20,20,0,0,0-20-20H104A20,20,0,0,0,84,40V52H40a4,4,0,0,0,0,8H52V208a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V60h12a4,4,0,0,0,0-8ZM92,40a12,12,0,0,1,12-12h48a12,12,0,0,1,12,12V52H92ZM196,208a4,4,0,0,1-4,4H64a4,4,0,0,1-4-4V60H196ZM108,104v64a4,4,0,0,1-8,0V104a4,4,0,0,1,8,0Zm48,0v64a4,4,0,0,1-8,0V104a4,4,0,0,1,8,0Z"}))]]),aZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M240.26,186.1,152.81,34.23h0a28.74,28.74,0,0,0-49.62,0L15.74,186.1a27.45,27.45,0,0,0,0,27.71A28.31,28.31,0,0,0,40.55,228h174.9a28.31,28.31,0,0,0,24.79-14.19A27.45,27.45,0,0,0,240.26,186.1Zm-20.8,15.7a4.46,4.46,0,0,1-4,2.2H40.55a4.46,4.46,0,0,1-4-2.2,3.56,3.56,0,0,1,0-3.73L124,46.2a4.77,4.77,0,0,1,8,0l87.44,151.87A3.56,3.56,0,0,1,219.46,201.8ZM116,136V104a12,12,0,0,1,24,0v32a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,176Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M215.46,216H40.54C27.92,216,20,202.79,26.13,192.09L113.59,40.22c6.3-11,22.52-11,28.82,0l87.46,151.87C236,202.79,228.08,216,215.46,216Z",opacity:"0.2"}),h.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM120,104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm8,88a12,12,0,1,1,12-12A12,12,0,0,1,128,192Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M235.07,189.09,147.61,37.22h0a22.75,22.75,0,0,0-39.22,0L20.93,189.09a21.53,21.53,0,0,0,0,21.72A22.35,22.35,0,0,0,40.55,222h174.9a22.35,22.35,0,0,0,19.6-11.19A21.53,21.53,0,0,0,235.07,189.09ZM224.66,204.8a10.46,10.46,0,0,1-9.21,5.2H40.55a10.46,10.46,0,0,1-9.21-5.2,9.51,9.51,0,0,1,0-9.72L118.79,43.21a10.75,10.75,0,0,1,18.42,0l87.46,151.87A9.51,9.51,0,0,1,224.66,204.8ZM122,144V104a6,6,0,0,1,12,0v40a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,180Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M233.34,190.09,145.88,38.22h0a20.75,20.75,0,0,0-35.76,0L22.66,190.09a19.52,19.52,0,0,0,0,19.71A20.36,20.36,0,0,0,40.54,220H215.46a20.36,20.36,0,0,0,17.86-10.2A19.52,19.52,0,0,0,233.34,190.09ZM226.4,205.8a12.47,12.47,0,0,1-10.94,6.2H40.54a12.47,12.47,0,0,1-10.94-6.2,11.45,11.45,0,0,1,0-11.72L117.05,42.21a12.76,12.76,0,0,1,21.9,0L226.4,194.08A11.45,11.45,0,0,1,226.4,205.8ZM124,144V104a4,4,0,0,1,8,0v40a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,180Z"}))]]),sZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M60,96v64a12,12,0,0,1-24,0V96a12,12,0,0,1,24,0ZM88,20A12,12,0,0,0,76,32V224a12,12,0,0,0,24,0V32A12,12,0,0,0,88,20Zm40,32a12,12,0,0,0-12,12V192a12,12,0,0,0,24,0V64A12,12,0,0,0,128,52Zm40,32a12,12,0,0,0-12,12v64a12,12,0,0,0,24,0V96A12,12,0,0,0,168,84Zm40-16a12,12,0,0,0-12,12v96a12,12,0,0,0,24,0V80A12,12,0,0,0,208,68Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,96v64H48V96Z",opacity:"0.2"}),h.createElement("path",{d:"M56,96v64a8,8,0,0,1-16,0V96a8,8,0,0,1,16,0ZM88,24a8,8,0,0,0-8,8V224a8,8,0,0,0,16,0V32A8,8,0,0,0,88,24Zm40,32a8,8,0,0,0-8,8V192a8,8,0,0,0,16,0V64A8,8,0,0,0,128,56Zm40,32a8,8,0,0,0-8,8v64a8,8,0,0,0,16,0V96A8,8,0,0,0,168,88Zm40-16a8,8,0,0,0-8,8v96a8,8,0,0,0,16,0V80A8,8,0,0,0,208,72Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM72,152a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm32,32a8,8,0,0,1-16,0V72a8,8,0,0,1,16,0Zm32-16a8,8,0,0,1-16,0V88a8,8,0,0,1,16,0Zm32-16a8,8,0,0,1-16,0V104a8,8,0,0,1,16,0Zm32,8a8,8,0,0,1-16,0V96a8,8,0,0,1,16,0Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M54,96v64a6,6,0,0,1-12,0V96a6,6,0,0,1,12,0ZM88,26a6,6,0,0,0-6,6V224a6,6,0,0,0,12,0V32A6,6,0,0,0,88,26Zm40,32a6,6,0,0,0-6,6V192a6,6,0,0,0,12,0V64A6,6,0,0,0,128,58Zm40,32a6,6,0,0,0-6,6v64a6,6,0,0,0,12,0V96A6,6,0,0,0,168,90Zm40-16a6,6,0,0,0-6,6v96a6,6,0,0,0,12,0V80A6,6,0,0,0,208,74Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M56,96v64a8,8,0,0,1-16,0V96a8,8,0,0,1,16,0ZM88,24a8,8,0,0,0-8,8V224a8,8,0,0,0,16,0V32A8,8,0,0,0,88,24Zm40,32a8,8,0,0,0-8,8V192a8,8,0,0,0,16,0V64A8,8,0,0,0,128,56Zm40,32a8,8,0,0,0-8,8v64a8,8,0,0,0,16,0V96A8,8,0,0,0,168,88Zm40-16a8,8,0,0,0-8,8v96a8,8,0,0,0,16,0V80A8,8,0,0,0,208,72Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M52,96v64a4,4,0,0,1-8,0V96a4,4,0,0,1,8,0ZM88,28a4,4,0,0,0-4,4V224a4,4,0,0,0,8,0V32A4,4,0,0,0,88,28Zm40,32a4,4,0,0,0-4,4V192a4,4,0,0,0,8,0V64A4,4,0,0,0,128,60Zm40,32a4,4,0,0,0-4,4v64a4,4,0,0,0,8,0V96A4,4,0,0,0,168,92Zm40-16a4,4,0,0,0-4,4v96a4,4,0,0,0,8,0V80A4,4,0,0,0,208,76Z"}))]]),lZ=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",opacity:"0.2"}),h.createElement("path",{d:"M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z"}))]]),oZ=h.createContext({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),Ge=h.forwardRef((n,e)=>{const{alt:t,color:r,size:i,weight:a,mirrored:s,children:o,weights:u,...d}=n,{color:m="currentColor",size:p,weight:O="regular",mirrored:b=!1,...S}=h.useContext(oZ);return h.createElement("svg",{ref:e,xmlns:"http://www.w3.org/2000/svg",width:i??p,height:i??p,fill:r??m,viewBox:"0 0 256 256",transform:s||b?"scale(-1, 1)":void 0,...S,...d},!!t&&h.createElement("title",null,t),o,u.get(a??O))});Ge.displayName="IconBase";const sT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:pj}));sT.displayName="ArrowClockwiseIcon";const cZ=sT,lT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:gj}));lT.displayName="ArrowCounterClockwiseIcon";const uZ=lT,oT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Oj}));oT.displayName="ArrowLeftIcon";const fZ=oT,cT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:yj}));cT.displayName="ArrowsOutCardinalIcon";const dZ=cT,uT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:bj}));uT.displayName="CameraIcon";const hZ=uT,fT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:xj}));fT.displayName="CaretDownIcon";const mZ=fT,Vh=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Sj}));Vh.displayName="CaretRightIcon";const dT=Vh,hT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:kj}));hT.displayName="ChatCenteredTextIcon";const pZ=hT,mT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:vj}));mT.displayName="CheckIcon";const gZ=mT,pT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:wj}));pT.displayName="CheckCircleIcon";const gT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Tj}));gT.displayName="ClipboardTextIcon";const OZ=gT,OT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Aj}));OT.displayName="ClockIcon";const yZ=OT,yT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Pj}));yT.displayName="CopyIcon";const bZ=yT,bT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Cj}));bT.displayName="EyeIcon";const xZ=bT,xT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Ej}));xT.displayName="FileIcon";const SZ=xT,ST=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Mj}));ST.displayName="FileCodeIcon";const kZ=ST,kT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:$j}));kT.displayName="FileCssIcon";const vZ=kT,vT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Rj}));vT.displayName="FileHtmlIcon";const wZ=vT,wT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Qj}));wT.displayName="FileJpgIcon";const TZ=wT,TT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:_j}));TT.displayName="FileJsIcon";const AZ=TT,AT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Nj}));AT.displayName="FileJsxIcon";const PZ=AT,PT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:jj}));PT.displayName="FileMdIcon";const CZ=PT,CT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Zj}));CT.displayName="FilePlusIcon";const H5=CT,ET=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Dj}));ET.displayName="FilePngIcon";const EZ=ET,MT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Vj}));MT.displayName="FileSvgIcon";const MZ=MT,$T=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Ij}));$T.displayName="FileTsIcon";const $Z=$T,RT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Lj}));RT.displayName="FileTsxIcon";const RZ=RT,QT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:zj}));QT.displayName="FileTxtIcon";const QZ=QT,_T=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Bj}));_T.displayName="FileVideoIcon";const _Z=_T,NT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Hj}));NT.displayName="FilmStripIcon";const NZ=NT,jT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Fj}));jT.displayName="FolderSimpleIcon";const jZ=jT,ZT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Xj}));ZT.displayName="FolderSimplePlusIcon";const DT=ZT,VT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Uj}));VT.displayName="GearIcon";const ZZ=VT,IT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:qj}));IT.displayName="ImageIcon";const DZ=IT,LT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Yj}));LT.displayName="LightningIcon";const VZ=LT,zT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Wj}));zT.displayName="MusicNoteIcon";const IZ=zT,BT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Gj}));BT.displayName="PaletteIcon";const LZ=BT,HT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Kj}));HT.displayName="PencilSimpleIcon";const zZ=HT,FT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:Jj}));FT.displayName="PlusIcon";const XT=FT,UT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:eZ}));UT.displayName="SquareIcon";const BZ=UT,qT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:tZ}));qT.displayName="StackIcon";const HZ=qT,YT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:nZ}));YT.displayName="TextAaIcon";const FZ=YT,WT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:rZ}));WT.displayName="TextTIcon";const XZ=WT,GT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:iZ}));GT.displayName="TrashIcon";const UZ=GT,bh=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:aZ}));bh.displayName="WarningIcon";const KT=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:sZ}));KT.displayName="WaveformIcon";const qZ=KT,i6=h.forwardRef((n,e)=>h.createElement(Ge,{ref:e,...n,weights:lZ}));i6.displayName="XIcon";const YZ=i6;function F5({findings:n,projectId:e,onClose:t}){const r=n.filter(d=>d.severity==="error"),i=n.filter(d=>d.severity==="warning"),a=n.length>0,[s,o]=h.useState(!1),u=async()=>{const d=n.map(O=>{let b=`[${O.severity}] ${O.message}`;return O.file&&(b+=`
311
- File: ${O.file}`),O.fixHint&&(b+=`
312
- Fix: ${O.fixHint}`),b}),m=`Fix these HyperFrames lint issues for project "${e}":
313
-
314
- Project path: ${window.location.href}
315
-
316
- ${d.join(`
317
-
318
- `)}`;await A0(m)&&(o(!0),setTimeout(()=>o(!1),2e3))};return y.jsx("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:t,children:y.jsxs("div",{className:"bg-neutral-950 border border-neutral-800 rounded-xl shadow-2xl w-full max-w-xl max-h-[80vh] flex flex-col overflow-hidden",onClick:d=>d.stopPropagation(),children:[y.jsxs("div",{className:"flex items-center justify-between px-5 py-4 border-b border-neutral-800",children:[y.jsxs("div",{className:"flex items-center gap-3",children:[a?y.jsx("div",{className:"w-8 h-8 rounded-full bg-red-500/10 flex items-center justify-center",children:y.jsx(bh,{size:18,className:"text-red-400",weight:"fill"})}):y.jsx("div",{className:"w-8 h-8 rounded-full bg-studio-accent/10 flex items-center justify-center",children:y.jsx(pT,{size:18,className:"text-studio-accent",weight:"fill"})}),y.jsxs("div",{children:[y.jsx("h2",{className:"text-sm font-semibold text-neutral-200",children:a?`${r.length} error${r.length!==1?"s":""}, ${i.length} warning${i.length!==1?"s":""}`:"All checks passed"}),y.jsx("p",{className:"text-xs text-neutral-500",children:"HyperFrame Lint Results"})]})]}),y.jsx("button",{onClick:t,className:"p-1.5 rounded-lg text-neutral-500 hover:text-neutral-200 hover:bg-neutral-800 transition-colors",children:y.jsx(i6,{size:16})})]}),a&&y.jsx("div",{className:"flex items-center justify-end px-5 py-2 border-b border-neutral-800/50",children:y.jsx("button",{onClick:u,className:`px-3 py-1 text-xs font-medium rounded-lg transition-colors ${s?"bg-green-600 text-white":"bg-studio-accent hover:bg-studio-accent/80 text-white"}`,children:s?"Copied!":"Copy to Agent"})}),y.jsxs("div",{className:"flex-1 overflow-y-auto px-5 py-3",children:[!a&&y.jsx("div",{className:"py-8 text-center text-neutral-500 text-sm",children:"No errors or warnings found. Your composition looks good!"}),r.map((d,m)=>y.jsx("div",{className:"py-3 border-b border-neutral-800/50 last:border-0",children:y.jsxs("div",{className:"flex items-start gap-2",children:[y.jsx(bh,{size:14,className:"text-red-400 flex-shrink-0 mt-0.5",weight:"fill"}),y.jsxs("div",{className:"min-w-0",children:[y.jsx("p",{className:"text-sm text-neutral-200",children:d.message}),d.file&&y.jsx("p",{className:"text-xs text-neutral-600 font-mono mt-0.5",children:d.file}),d.fixHint&&y.jsxs("div",{className:"flex items-start gap-1 mt-1.5",children:[y.jsx(Vh,{size:10,className:"text-studio-accent flex-shrink-0 mt-0.5"}),y.jsx("p",{className:"text-xs text-studio-accent",children:d.fixHint})]})]})]})},`e-${m}`)),i.map((d,m)=>y.jsx("div",{className:"py-3 border-b border-neutral-800/50 last:border-0",children:y.jsxs("div",{className:"flex items-start gap-2",children:[y.jsx(bh,{size:14,className:"text-amber-400 flex-shrink-0 mt-0.5"}),y.jsxs("div",{className:"min-w-0",children:[y.jsx("p",{className:"text-sm text-neutral-300",children:d.message}),d.file&&y.jsx("p",{className:"text-xs text-neutral-600 font-mono mt-0.5",children:d.file}),d.fixHint&&y.jsxs("div",{className:"flex items-start gap-1 mt-1.5",children:[y.jsx(Vh,{size:10,className:"text-studio-accent flex-shrink-0 mt-0.5"}),y.jsx("p",{className:"text-xs text-studio-accent",children:d.fixHint})]})]})]})},`w-${m}`))]})]})})}function WZ(n){const e=[];let t=0;for(const r of n.groupOrder){const i=n.groups.get(r);if(i)for(const a of i.segmentIds){const s=n.segments.get(a);if(s&&Object.keys(s.style).length>0){const o={wordIndex:t};s.wordId&&(o.wordId=s.wordId);const u=s.style;u.x!==void 0&&(o.x=u.x),u.y!==void 0&&(o.y=u.y),u.scaleX!==void 0&&(o.scale=u.scaleX),u.rotation!==void 0&&(o.rotation=u.rotation),u.activeColor!==void 0&&(o.activeColor=u.activeColor),u.dimColor!==void 0&&(o.dimColor=u.dimColor),u.opacity!==void 0&&(o.opacity=u.opacity),u.fontSize!==void 0&&(o.fontSize=u.fontSize),u.fontWeight!==void 0&&(o.fontWeight=u.fontWeight),u.fontFamily!==void 0&&(o.fontFamily=u.fontFamily),e.push(o)}t++}}return e}function GZ(n){const e=h.useRef(n);e.current=n;const t=h.useRef(null),r=h.useRef(!1),i=h.useCallback(()=>{const s=ht.getState();if(!s.model||!s.sourceFilePath||!s.isEditMode)return;const o=e.current;if(!o)return;const u=WZ(s.model);fetch(`/api/projects/${o}/files/${encodeURIComponent("caption-overrides.json")}`,{method:"PUT",headers:{"Content-Type":"text/plain"},body:JSON.stringify(u,null,2)}).catch(d=>console.warn("[captions] auto-save failed:",d))},[]);zt(()=>{let s=ht.getState().model;const o=ht.subscribe(u=>{if(!(!u.isEditMode||u.model===s||!u.model)){if(s=u.model,r.current){r.current=!1;return}t.current&&clearTimeout(t.current),t.current=setTimeout(i,800)}});return()=>{o(),t.current&&clearTimeout(t.current)}});const a=h.useCallback(async()=>{const s=ht.getState();if(!s.model||!s.sourceFilePath)return;const o=e.current;if(o)try{const u=await fetch(`/api/projects/${o}/files/${encodeURIComponent("caption-overrides.json")}`);if(!u.ok)return;const d=await u.json();if(!d.content)return;const m=JSON.parse(d.content);if(!Array.isArray(m))return;const p=s.model,O=[],b=new Map;for(const k of p.groupOrder){const T=p.groups.get(k);if(T)for(const w of T.segmentIds){O.push(w);const A=p.segments.get(w);A!=null&&A.wordId&&b.set(A.wordId,w)}}const S=new Map(p.segments);for(const k of m){const T=(k.wordId?b.get(k.wordId):void 0)??O[k.wordIndex];if(!T)continue;const w=S.get(T);if(!w)continue;const A={...w.style};k.x!==void 0&&(A.x=k.x),k.y!==void 0&&(A.y=k.y),k.scale!==void 0&&(A.scaleX=k.scale,A.scaleY=k.scale),k.rotation!==void 0&&(A.rotation=k.rotation),k.activeColor!==void 0&&(A.activeColor=k.activeColor),k.dimColor!==void 0&&(A.dimColor=k.dimColor),k.opacity!==void 0&&(A.opacity=k.opacity),k.fontSize!==void 0&&(A.fontSize=k.fontSize),k.fontWeight!==void 0&&(A.fontWeight=k.fontWeight),k.fontFamily!==void 0&&(A.fontFamily=k.fontFamily),S.set(T,{...w,style:A})}r.current=!0,ht.getState().setModel({...p,segments:S})}catch{}},[]);return{save:i,loadOverrides:a}}const KZ=100,JZ=1500;function O8(n){let e=2166136261;for(let t=0;t<n.length;t+=1)e^=n.charCodeAt(t),e=Math.imul(e,16777619);return(e>>>0).toString(16).padStart(8,"0")}function y8(n){return{version:1,updatedAt:0,undo:[],redo:[]}}function eD(n){const e={};for(const[t,r]of Object.entries(n.files))r.before!==r.after&&(e[t]={before:r.before,after:r.after,beforeHash:O8(r.before),afterHash:O8(r.after)});return{id:n.id,projectId:n.projectId,label:n.label,kind:n.kind??"manual",coalesceKey:n.coalesceKey,createdAt:n.now,files:e}}function tD(n,e,t){if(Object.keys(e.files).length===0)return n;const r=JZ,i=KZ,a=n.undo[n.undo.length-1];let s=n.undo;if(a&&a.coalesceKey&&a.coalesceKey===e.coalesceKey&&e.createdAt-a.createdAt<=r){const o={};for(const[u,d]of Object.entries(e.files)){const m=a.files[u];o[u]=m?{before:m.before,after:d.after,beforeHash:m.beforeHash,afterHash:d.afterHash}:d}s=[...n.undo.slice(0,-1),{...e,files:o}]}else s=[...n.undo,e];return{version:1,updatedAt:e.createdAt,undo:s.slice(Math.max(0,s.length-i)),redo:[]}}function JT(n,e,t){for(const[r,i]of Object.entries(n.files)){const a=e==="undo"?i.afterHash:i.beforeHash;if(t[r]!==a)return{ok:!1,reason:"content-mismatch",path:r}}return{ok:!0}}function nD(n,e,t){const r=n.undo[n.undo.length-1];if(!r)return{ok:!1,reason:"empty",state:n,filesToWrite:{}};const i=JT(r,"undo",e);return i.ok?{ok:!0,entry:r,filesToWrite:Object.fromEntries(Object.entries(r.files).map(([a,s])=>[a,s.before])),state:{version:1,updatedAt:t,undo:n.undo.slice(0,-1),redo:[...n.redo,r]}}:{ok:!1,reason:i.reason,path:i.path,state:n,filesToWrite:{}}}function rD(n,e,t){const r=n.redo[n.redo.length-1];if(!r)return{ok:!1,reason:"empty",state:n,filesToWrite:{}};const i=JT(r,"redo",e);return i.ok?{ok:!0,entry:r,filesToWrite:Object.fromEntries(Object.entries(r.files).map(([a,s])=>[a,s.after])),state:{version:1,updatedAt:t,undo:[...n.undo,r],redo:n.redo.slice(0,-1)}}:{ok:!1,reason:i.reason,path:i.path,state:n,filesToWrite:{}}}const iD="hyperframes-studio-edit-history",aD=1,Ih="project-history";function sD(){return new Promise((n,e)=>{if(!globalThis.indexedDB){e(new Error("IndexedDB is not available"));return}const t=globalThis.indexedDB.open(iD,aD);t.onupgradeneeded=()=>{const r=t.result;r.objectStoreNames.contains(Ih)||r.createObjectStore(Ih)},t.onerror=()=>e(t.error??new Error("Failed to open edit history db")),t.onsuccess=()=>n(t.result)})}function Ng(n,e){return sD().then(t=>new Promise((r,i)=>{const a=t.transaction(Ih,n),s=e(a.objectStore(Ih));s.onerror=()=>i(s.error??new Error("IndexedDB request failed")),s.onsuccess=()=>r(s.result),a.oncomplete=()=>t.close(),a.onerror=()=>{t.close(),i(a.error??new Error("IndexedDB transaction failed"))}}))}function lD(){return{async get(n){return await Ng("readonly",e=>e.get(n))??null},async set(n,e){await Ng("readwrite",t=>t.put(e,n))},async delete(n){await Ng("readwrite",e=>e.delete(n))}}}async function oD(n,e){return await n.get(e)??y8()}async function cD(n,e,t){await n.set(e,t)}function uD(n){return`edit-${n.toString(36)}-${Math.random().toString(36).slice(2,10)}`}function e9(n){const e=n.undo[n.undo.length-1]??null,t=n.redo[n.redo.length-1]??null;return{canUndo:!!e,canRedo:!!t,undoLabel:(e==null?void 0:e.label)??null,redoLabel:(t==null?void 0:t.label)??null,undoPaths:e?Object.keys(e.files):[],redoPaths:t?Object.keys(t.files):[],state:n}}async function X5(n,e){const t={},r={};for(const i of n){const a=await e(i);t[i]=a,r[i]=O8(a)}return{currentFiles:t,currentHashes:r}}async function U5({files:n,rollbackFiles:e,writeFile:t}){const r=[];try{for(const[i,a]of Object.entries(n))await t(i,a),r.push(i)}catch(i){try{for(const a of r.reverse())await t(a,e[a])}catch(a){throw new AggregateError([i,a],"Failed to apply edit history and rollback did not complete")}throw i}}function q5({projectId:n,storage:e,initialState:t,now:r=Date.now,onChange:i}){let a=t,s=Promise.resolve();const o=async d=>{a=d,i(d);try{await cD(e,n,d)}catch{}},u=async d=>{const m=s.then(async()=>{const{state:p,result:O}=await d(a);return p!==a&&await o(p),O});return s=m.then(()=>{},()=>{}),m};return{snapshot:()=>e9(a),async recordEdit(d){await u(async m=>{const p=r(),O=eD({...d,id:uD(p),projectId:n,now:p});return{state:tD(m,O),result:void 0}})},async undo(d){return u(async m=>{const p=m.undo[m.undo.length-1];if(!p)return{state:m,result:{ok:!1,reason:"empty"}};const{currentFiles:O,currentHashes:b}=await X5(Object.keys(p.files),d.readFile),S=nD(m,b,r());return S.ok?(await U5({files:S.filesToWrite,rollbackFiles:O,writeFile:d.writeFile}),{state:S.state,result:{ok:!0,label:S.entry.label,paths:Object.keys(S.entry.files)}}):{state:m,result:{ok:!1,reason:S.reason}}})},async redo(d){return u(async m=>{const p=m.redo[m.redo.length-1];if(!p)return{state:m,result:{ok:!1,reason:"empty"}};const{currentFiles:O,currentHashes:b}=await X5(Object.keys(p.files),d.readFile),S=rD(m,b,r());return S.ok?(await U5({files:S.filesToWrite,rollbackFiles:O,writeFile:d.writeFile}),{state:S.state,result:{ok:!0,label:S.entry.label,paths:Object.keys(S.entry.files)}}):{state:m,result:{ok:!1,reason:S.reason}}})}}}function fD(n){const e=h.useMemo(()=>n.storage??lD(),[n.storage]),t=n.now??Date.now,[r,i]=h.useState(()=>y8()),[a,s]=h.useState(!1),o=n.projectId,u=h.useRef(null);h.useEffect(()=>{let O=!1;const b=y8();if(u.current=null,i(b),s(!1),!o){s(!0);return}return oD(e,o).then(S=>{O||(u.current=q5({projectId:o,storage:e,initialState:S,now:t,onChange:i}),i(S))}).catch(()=>{O||(u.current=q5({projectId:o,storage:e,initialState:b,now:t,onChange:i}),i(b))}).finally(()=>{O||s(!0)}),()=>{O=!0}},[t,o,e]);const d=h.useCallback(async O=>{var b;await((b=u.current)==null?void 0:b.recordEdit(O))},[]),m=h.useCallback(async O=>{var b;return((b=u.current)==null?void 0:b.undo(O))??{ok:!1,reason:"empty"}},[]),p=h.useCallback(async O=>{var b;return((b=u.current)==null?void 0:b.redo(O))??{ok:!1,reason:"empty"}},[]);return{loaded:a,...e9(r),recordEdit:d,undo:m,redo:p}}function dD(n){const[e,t]=h.useState(240),[r,i]=h.useState(400),[a,s]=h.useState(()=>v0().leftCollapsed??!1),[o,u]=h.useState((n==null?void 0:n.rightCollapsed)??!0),[d,m]=h.useState((n==null?void 0:n.rightPanelTab)??"renders"),p=h.useRef(null),O=h.useCallback(()=>{s(T=>(w0({leftCollapsed:!T}),!T))},[]),b=h.useCallback((T,w)=>{w.preventDefault(),w.target.setPointerCapture(w.pointerId),p.current={side:T,startX:w.clientX,startW:T==="left"?e:r}},[e,r]),S=h.useCallback(T=>{const w=p.current;if(!w)return;const A=T.clientX-w.startX,E=Math.floor(window.innerWidth*.5),C=Math.max(160,Math.min(w.side==="left"?E:600,w.startW+(w.side==="left"?A:-A)));w.side==="left"?t(C):i(C)},[]),k=h.useCallback(()=>{p.current=null},[]);return{leftWidth:e,setLeftWidth:t,rightWidth:r,leftCollapsed:a,setLeftCollapsed:s,rightCollapsed:o,setRightCollapsed:u,rightPanelTab:d,setRightPanelTab:m,toggleLeftSidebar:O,handlePanelResizeStart:b,handlePanelResizeMove:S,handlePanelResizeEnd:k}}const hD=/\.(eot|otf|ttc|ttf|woff2?)$/i,Y5=/\s+(thin|extralight|extra light|light|regular|roman|medium|semibold|semi bold|bold|extrabold|extra bold|black|italic|oblique|variable)$/i;function W5(n){return JSON.stringify(n)}function Sc(n){const e=decodeURIComponent(n.split(/[\\/]/).pop()??n).replace(hD,"");let t=e.replace(/[_-]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").replace(/\s+/g," ").trim();for(;Y5.test(t);)t=t.replace(Y5,"").trim();return t||e}function a6(n,e=n.url){return`@font-face { font-family: ${W5(n.family)}; src: url(${W5(e)}); font-display: swap; }`}async function _s({label:n,kind:e,coalesceKey:t,files:r,readFile:i,writeFile:a,recordEdit:s}){const o={};for(const[m,p]of Object.entries(r)){const O=await i(m);O!==p&&(o[m]={before:O,after:p})}const u=Object.keys(o);if(u.length===0)return[];const d=[];try{for(const m of u)await a(m,o[m].after),d.push(m);await s({label:n,kind:e,coalesceKey:t,files:o})}catch(m){try{for(const p of d.reverse())await a(p,o[p].before)}catch(p){throw new AggregateError([m,p],"Failed to save project files and rollback did not complete")}throw m}return u}function Hn(n){return n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function G5(n,e){return e==='"'?n.replace(/"/g,"&quot;"):n.replace(/'/g,"&#39;")}function s6(n){return n.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function mD(n){return n.replace(/&quot;/g,'"').replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&")}function pD(n){const e=[];let t="",r=null,i=!1,a=0;for(const s of n){if(i){t+=s,s===";"&&(i=!1);continue}if(s==="&"){i=!0,t+=s;continue}if(r){t+=s,s===r&&(r=null);continue}if(s==='"'||s==="'"){r=s,t+=s;continue}if(s==="("){a+=1,t+=s;continue}if(s===")"){a=Math.max(0,a-1),t+=s;continue}if(s===";"&&a===0){e.push(t),t="";continue}t+=s}return t&&e.push(t),e}function gD(n,e,t,r){const a=new RegExp(`(<[^>]*\\bid=(["'])${Hn(e)}\\2[^>]*)>`,"i").exec(n);if(!a)return n;const s=a[1];return t9(n,s,t,r)}function t9(n,e,t,r){if(!e)return n;const i=/\bstyle=(["'])([\s\S]*?)\1/.exec(e);if(i){const a=i[2],s=i[1],o=new Map;for(const m of pD(a)){const p=m.indexOf(":");if(p<0)continue;const O=m.slice(0,p).trim(),b=m.slice(p+1).trim();O&&o.set(O,b)}r===null?o.delete(t):o.set(t,r);const u=Array.from(o.entries()).map(([m,p])=>`${m}: ${G5(p,s)}`).join("; "),d=e.replace(i[0],`style=${s}${u}${s}`);return n.replace(e,d)}else{if(r===null)return n;const a=/\s*\/$/.test(e),o=`${a?e.replace(/\s*\/$/,""):e} style="${t}: ${G5(r,'"')}"${a?" /":""}`;return n.replace(e,o)}}function OD(n,e,t,r){const i=Ns(n,e);if(!i)return n;const a=t9(i.tag,i.tag,t,r);return u0(n,i,a)}function u0(n,e,t){return`${n.slice(0,e.start)}${t}${n.slice(e.end)}`}function Ns(n,e){if(e.id){const a=new RegExp(`(<[^>]*\\bid=(["'])${Hn(e.id)}\\2[^>]*)>`,"i").exec(n);if((a==null?void 0:a.index)!=null)return{tag:a[1],start:a.index,end:a.index+a[1].length}}if(!e.selector)return null;const t=e.selector.match(/^\[data-composition-id="([^"]+)"\]$/);if(t){const i=t[1],s=new RegExp(`(<[^>]*\\bdata-composition-id=(["'])${Hn(i)}\\2[^>]*)>`,"i").exec(n);if((s==null?void 0:s.index)!=null)return{tag:s[1],start:s.index,end:s.index+s[1].length}}const r=e.selector.match(/^\.([a-zA-Z0-9_-]+)$/);if(r){const i=r[1],a=new RegExp(`(<[^>]*\\bclass=(["'])[^"']*\\b${Hn(i)}\\b[^"']*\\2[^>]*)>`,"gi"),s=e.selectorIndex??0;let o,u=0;for(;(o=a.exec(n))!==null;){if(u===s&&o.index!=null)return{tag:o[1],start:o.index,end:o.index+o[1].length};u+=1}}return null}function K5(n,e,t){const r=Ns(n,e);if(!r)return;const i=t.startsWith("data-")?t:`data-${t}`,a=new RegExp(`\\b${i}=(["'])([^"']*)\\1`).exec(r.tag);return(a==null?void 0:a[2])!=null?mD(a[2]):void 0}function yD(n,e){const t=Ns(n,e);return t==null?void 0:t.tag}function bD(n,e,t,r){const i=Ns(n,e);if(!i)return n;const a=t.startsWith("data-")?t:`data-${t}`,s=new RegExp(`\\b${Hn(a)}=(["'])([^"']*)\\1`),o=i.tag;if(r===null){if(!s.test(o))return n;const m=new RegExp(`\\s+${Hn(a)}=(["'])[^"']*\\1`),p=o.replace(m,"");return u0(n,i,p)}const u=s6(r);if(s.test(o)){const m=o.replace(s,`${a}="${u}"`);return u0(n,i,m)}const d=o+` ${a}="${u}"`;return u0(n,i,d)}function xD(n,e,t,r){const a=new RegExp(`(<[^>]*\\bid=(["'])${Hn(e)}\\2[^>]*)>`,"i").exec(n);if(!a)return n;const s=a[1],o=t.startsWith("data-")?t:`data-${t}`,u=new RegExp(`\\b${Hn(o)}=(["'])([^"']*)\\1`);if(r===null){if(!u.test(s))return n;const m=new RegExp(`\\s+${Hn(o)}=(["'])[^"']*\\1`),p=s.replace(m,"");return n.replace(s,p)}const d=s6(r);if(u.test(s)){const m=s.replace(u,`${o}="${d}"`);return n.replace(s,m)}else{const m=s+` ${o}="${d}"`;return n.replace(s,m)}}function SD(n,e,t){const i=new RegExp(`(<([a-z0-9-]+)[^>]*\\bid=(["'])${Hn(e)}\\3[^>]*>)`,"i").exec(n);if(!i||i.index==null)return n;const a=i[1],s=i[2],o=i.index+a.length,u=n9(n,s,o);return u<0?n:`${n.slice(0,o)}${t}${n.slice(u)}`}function n9(n,e,t){const r=new RegExp(`</?${Hn(e)}\\b[^>]*>`,"gi");r.lastIndex=t;let i=1,a;for(;(a=r.exec(n))!==null;){const s=a[0];if(s.startsWith("</")){if(i-=1,i===0)return a.index;continue}s.endsWith("/>")||(i+=1)}return-1}const kD=new Set(["loop","muted","autoplay","playsinline","controls","default","defer","disabled","hidden","nomodule","open","readonly","required","reversed","selected"]);function r9(n,e,t,r){if(!e)return n;if(kD.has(t)){const u=Hn(t),d=new RegExp(`(?:^|\\s)${u}(?:\\s|=|$)`).test(e);if(r===null||r===""||r==="false"){if(!d)return n;const p=new RegExp(`\\s+${u}(?:=(["'])[^"']*\\1)?`),O=e.replace(p,"");return n.replace(e,O)}if(d)return n;const m=e+` ${t}`;return n.replace(e,m)}const a=new RegExp(`\\b${Hn(t)}=(["'])([^"']*)\\1`);if(r===null){if(!a.test(e))return n;const u=new RegExp(`\\s+${Hn(t)}=(["'])[^"']*\\1`),d=e.replace(u,"");return n.replace(e,d)}const s=s6(r);if(a.test(e)){const u=e.replace(a,`${t}="${s}"`);return n.replace(e,u)}const o=e+` ${t}="${s}"`;return n.replace(e,o)}function vD(n,e,t,r){const a=new RegExp(`(<[^>]*\\bid=(["'])${Hn(e)}\\2[^>]*)>`,"i").exec(n);return a?r9(n,a[1],t,r):n}function wD(n,e,t,r){const i=Ns(n,e);if(!i)return n;const a=r9(i.tag,i.tag,t,r);return u0(n,i,a)}function TD(n,e,t){const r=Ns(n,e);if(!r)return n;const i=/^<([a-z0-9-]+)/i.exec(r.tag),a=i==null?void 0:i[1];if(!a)return n;const s=n9(n,a,r.end+1);return s<0?n:`${n.slice(0,r.end+1)}${t}${n.slice(s)}`}function AD(n,e,t){switch(t.type){case"inline-style":return gD(n,e,t.property,t.value);case"attribute":return xD(n,e,t.property,t.value);case"html-attribute":return vD(n,e,t.property,t.value);case"text-content":return t.value!==null?SD(n,e,t.value):n;default:return n}}function Bo(n,e,t){if(e.id){const r=AD(n,e.id,t);if(r!==n||!e.selector)return r}switch(t.type){case"inline-style":return OD(n,e,t.property,t.value);case"attribute":return bD(n,e,t.property,t.value);case"html-attribute":return wD(n,e,t.property,t.value);case"text-content":return t.value!==null?TD(n,e,t.value):n;default:return n}}function PD({projectId:n,showToast:e,recordEdit:t,domEditSaveTimestampRef:r,setRefreshKey:i}){const[a,s]=h.useState(null),[o,u]=h.useState(null),[d,m]=h.useState([]),[p,O]=h.useState(!1),[b,S]=h.useState(null),k=h.useRef(a==null?void 0:a.path);k.current=a==null?void 0:a.path;const T=h.useRef(n);T.current=n;const w=h.useRef(null),A=h.useRef(null),E=h.useRef([]);h.useEffect(()=>{if(!n){O(!1);return}let Y=!1;return O(!1),fetch(`/api/projects/${n}`).then(ae=>ae.json()).then(ae=>{!Y&&ae.files&&m(ae.files),Y||u(typeof ae.dir=="string"?ae.dir:null)}).catch(()=>{Y||u(null)}).finally(()=>{Y||O(!0)}),()=>{Y=!0}},[n]);const C=h.useCallback(async Y=>{const ae=T.current;if(!ae)throw new Error("No active project");const ie=await fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y)}`);if(!ie.ok)throw new Error(`Failed to read ${Y}`);const Oe=await ie.json();if(typeof Oe.content!="string")throw new Error(`Missing file contents for ${Y}`);return Oe.content},[]),P=h.useCallback(async(Y,ae)=>{const ie=T.current;if(!ie)throw new Error("No active project");if(!(await fetch(`/api/projects/${ie}/files/${encodeURIComponent(Y)}`,{method:"PUT",headers:{"Content-Type":"text/plain"},body:ae})).ok)throw new Error(`Failed to save ${Y}`);k.current===Y&&s({path:Y,content:ae})},[]),$=h.useCallback(async Y=>{const ae=T.current;if(!ae)throw new Error("No active project");const ie=await fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y)}?optional=1`);if(!ie.ok)throw new Error(`Failed to read ${Y}`);const Oe=await ie.json();return typeof Oe.content=="string"?Oe.content:""},[]),M=h.useCallback(Y=>{const ae=T.current;if(ae){if(Fw(Y)){s({path:Y,content:null});return}fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y)}`).then(ie=>ie.json()).then(ie=>{ie.content!=null&&s({path:Y,content:ie.content})}).catch(()=>{})}},[]),R=h.useCallback(Y=>{const ae=T.current;if(!ae)return;const ie=k.current;ie&&(w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{r.current=Date.now(),_s({projectId:ae,label:"Edit source",kind:"source",coalesceKey:`source:${ie}`,files:{[ie]:Y},readFile:C,writeFile:P,recordEdit:t}).then(()=>{A.current&&clearTimeout(A.current),A.current=setTimeout(()=>i(Oe=>Oe+1),600)}).catch(()=>{})},600))},[r,C,t,i,P]),N=h.useRef(0),Z=h.useRef(null),D=h.useCallback((Y,ae)=>{var me;const ie=T.current;if(!ie||!Y)return;if((me=Z.current)==null||me.abort(),Z.current=null,k.current===Y&&(a==null?void 0:a.content)!=null){const Te=Ns(a.content,ae);S(Te?Te.start:null);return}const Oe=++N.current,de=new AbortController;Z.current=de,fetch(`/api/projects/${ie}/files/${encodeURIComponent(Y)}`,{signal:de.signal}).then(Te=>Te.json()).then(Te=>{if(Oe===N.current&&Te.content!=null){s({path:Y,content:Te.content});const Ce=Ns(Te.content,ae);S(Ce?Ce.start:null)}}).catch(()=>{})},[a==null?void 0:a.content]),I=h.useCallback(async()=>{const Y=T.current;if(!Y)return;const ie=await(await fetch(`/api/projects/${Y}`)).json();ie.files&&m(ie.files)},[]),U=h.useCallback(async(Y,ae)=>{var Te,Ce;const ie=T.current,Oe=Array.from(Y);if(!ie||Oe.length===0)return[];const de=new FormData;for(const Ne of Oe)de.append("file",Ne);const me=ae?`?dir=${encodeURIComponent(ae)}`:"";try{const Ne=await fetch(`/api/projects/${ie}/upload${me}`,{method:"POST",body:de});if(Ne.ok){const Xe=await Ne.json();if((Te=Xe.skipped)!=null&&Te.length&&e(`Skipped (too large): ${Xe.skipped.join(", ")}`),(Ce=Xe.invalid)!=null&&Ce.length){const V=Xe.invalid.map(fe=>fe.name).join(", ");e(`Unsupported media skipped: ${V}`)}return await I(),i(V=>V+1),Array.isArray(Xe.files)?Xe.files:[]}else Ne.status===413?e("Upload rejected: payload too large"):e(`Upload failed (${Ne.status})`)}catch{e("Upload failed: network error")}return[]},[I,i,e]),K=h.useCallback(async Y=>{const ae=T.current;if(!ae)return;let ie="";Y.endsWith(".html")&&(ie=`<!DOCTYPE html>
319
- <html>
320
- <head>
321
- <meta charset="UTF-8">
322
- </head>
323
- <body>
324
-
325
- </body>
326
- </html>
327
- `);const Oe=await fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y)}`,{method:"POST",headers:{"Content-Type":"text/plain"},body:ie});if(Oe.ok)await I(),M(Y);else{const de=await Oe.json().catch(()=>({error:"unknown"}));console.error(`Create file failed: ${de.error}`)}},[I,M]),q=h.useCallback(async Y=>{const ae=T.current;if(!ae)return;const ie=await fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y+"/.gitkeep")}`,{method:"POST",headers:{"Content-Type":"text/plain"},body:""});if(ie.ok)await I();else{const Oe=await ie.json().catch(()=>({error:"unknown"}));console.error(`Create folder failed: ${Oe.error}`)}},[I]),L=h.useCallback(async Y=>{const ae=T.current;if(!ae)return;const ie=await fetch(`/api/projects/${ae}/files/${encodeURIComponent(Y)}`,{method:"DELETE"});if(ie.ok)k.current===Y&&s(null),await I();else{const Oe=await ie.json().catch(()=>({error:"unknown"}));console.error(`Delete failed: ${Oe.error}`)}},[I]),W=h.useCallback(async(Y,ae)=>{const ie=T.current;if(!ie)return;const Oe=await fetch(`/api/projects/${ie}/files/${encodeURIComponent(Y)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({newPath:ae})});if(Oe.ok)k.current===Y&&M(ae),await I(),i(de=>de+1);else{const de=await Oe.json().catch(()=>({error:"unknown"}));console.error(`Rename failed: ${de.error}`)}},[I,M,i]),ee=h.useCallback(async Y=>{const ae=T.current;if(!ae)return;const ie=await fetch(`/api/projects/${ae}/duplicate-file`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:Y})});if(ie.ok){const Oe=await ie.json();await I(),Oe.path&&M(Oe.path)}else{const Oe=await ie.json().catch(()=>({error:"unknown"}));console.error(`Duplicate failed: ${Oe.error}`)}},[I,M]),X=W,B=h.useCallback(async(Y,ae)=>U(Array.from(Y),ae),[U]),_=h.useCallback(async Y=>{const ae=await U(Array.from(Y).filter(de=>mh.test(de.name)),"assets/fonts"),ie=T.current,Oe=ae.filter(de=>mh.test(de)).map(de=>({family:Sc(de),path:de,url:`/api/projects/${ie}/preview/${de}`}));return E.current=[...Oe,...E.current.filter(de=>!Oe.some(me=>me.family.toLowerCase()===de.family.toLowerCase()))],Oe},[U]),j=h.useMemo(()=>d.filter(Y=>Y==="index.html"||Y.startsWith("compositions/")),[d]),H=h.useMemo(()=>d.filter(Y=>!Y.endsWith(".html")&&!Y.endsWith(".md")&&!Y.endsWith(".json")),[d]),F=h.useMemo(()=>H.filter(Y=>mh.test(Y)).map(Y=>({family:Sc(Y),path:Y,url:`/api/projects/${n}/preview/${Y}`})),[H,n]);return{editingFile:a,setEditingFile:s,projectDir:o,fileTree:d,fileTreeLoaded:p,setFileTree:m,editingPathRef:k,projectIdRef:T,saveTimerRef:w,importedFontAssetsRef:E,readProjectFile:C,writeProjectFile:P,readOptionalProjectFile:$,revealSourceOffset:b,openSourceForSelection:D,handleFileSelect:M,handleContentChange:R,refreshFileTree:I,uploadProjectFiles:U,handleCreateFile:K,handleCreateFolder:q,handleDeleteFile:L,handleRenameFile:W,handleDuplicateFile:ee,handleMoveFile:X,handleImportFiles:B,handleImportFonts:_,compositions:j,assets:H,fontAssets:F}}const ni="--hf-studio-offset-x",ri="--hf-studio-offset-y",Yi="--hf-studio-width",Wi="--hf-studio-height",ii="--hf-studio-rotation",Ia="data-hf-studio-path-offset",_0="data-hf-studio-manual-edit-gesture",La="data-hf-studio-box-size",za="data-hf-studio-rotation",Gi="data-hf-studio-original-translate",Ki="data-hf-studio-original-inline-translate",Pl="data-hf-studio-original-width",Cl="data-hf-studio-original-height",El="data-hf-studio-original-min-width",Ml="data-hf-studio-original-min-height",$l="data-hf-studio-original-max-width",Rl="data-hf-studio-original-max-height",Ql="data-hf-studio-original-flex-basis",_l="data-hf-studio-original-flex-grow",Nl="data-hf-studio-original-flex-shrink",jl="data-hf-studio-original-box-sizing",xi="data-hf-studio-original-scale",Ba="data-hf-studio-original-transform-origin",Zl="data-hf-studio-original-display",Ji="data-hf-studio-original-rotate",ea="data-hf-studio-original-inline-rotate",ki="data-hf-studio-original-rotation-transform-origin",Bl="data-hf-studio-rotation-draft",Dn="data-hf-studio-original-transform-display",CD="__hfStudioManualEditsApply",b8="__hfStudioManualEditsWrapped",Pd="__hfStudioManualEditsPlaybackFrame",ED="center center";function MD(n){return typeof n=="number"&&Number.isFinite(n)?n:null}function i9(n){return Math.round(n*10)/10}function Cd(n){return n.trim().replace(/\\/g,"/").replace(/^\.?\//,"")}function x8(n){if(typeof n=="string"){const t=n.trim();if(!t)return null;if(t.startsWith("{"))try{return x8(JSON.parse(t))}catch{return Cd(t)}return Cd(t)}if(!n||typeof n!="object")return null;const e=n;return typeof e.path=="string"?Cd(e.path):typeof e.filePath=="string"?Cd(e.filePath):"data"in e?x8(e.data):null}function $D(n){return x8(n)}const S8=".hyperframes/studio-motion.json",jg="studio-motion",js="data-hf-studio-motion",Dl="data-hf-studio-motion-original-transform",kc="data-hf-studio-motion-original-opacity",vc="data-hf-studio-motion-original-visibility",Ed=["none","power1.in","power1.out","power1.inOut","power2.in","power2.out","power2.inOut","power3.in","power3.out","power3.inOut","power4.in","power4.out","power4.inOut","sine.in","sine.out","sine.inOut","expo.in","expo.out","expo.inOut","circ.in","circ.out","circ.inOut","back.in(1.7)","back.out(1.7)","back.inOut(1.7)","elastic.out(1, 0.45)","bounce.out"],Ku={x1:.215,y1:.61,x2:.355,y2:1},RD={none:{x1:0,y1:0,x2:1,y2:1},"power1.in":{x1:.55,y1:.085,x2:.68,y2:.53},"power1.out":{x1:.25,y1:.46,x2:.45,y2:.94},"power1.inOut":{x1:.455,y1:.03,x2:.515,y2:.955},"power2.in":{x1:.55,y1:.055,x2:.675,y2:.19},"power2.out":{x1:.215,y1:.61,x2:.355,y2:1},"power2.inOut":{x1:.645,y1:.045,x2:.355,y2:1},"power3.in":{x1:.895,y1:.03,x2:.685,y2:.22},"power3.out":{x1:.165,y1:.84,x2:.44,y2:1},"power3.inOut":{x1:.77,y1:0,x2:.175,y2:1},"power4.in":{x1:.755,y1:.05,x2:.855,y2:.06},"power4.out":{x1:.23,y1:1,x2:.32,y2:1},"power4.inOut":{x1:.86,y1:0,x2:.07,y2:1},"sine.in":{x1:.47,y1:0,x2:.745,y2:.715},"sine.out":{x1:.39,y1:.575,x2:.565,y2:1},"sine.inOut":{x1:.445,y1:.05,x2:.55,y2:.95},"expo.in":{x1:.95,y1:.05,x2:.795,y2:.035},"expo.out":{x1:.19,y1:1,x2:.22,y2:1},"expo.inOut":{x1:1,y1:0,x2:0,y2:1},"circ.in":{x1:.6,y1:.04,x2:.98,y2:.335},"circ.out":{x1:.075,y1:.82,x2:.165,y2:1},"circ.inOut":{x1:.785,y1:.135,x2:.15,y2:.86},"back.in(1.7)":{x1:.6,y1:-.28,x2:.735,y2:.045},"back.out(1.7)":{x1:.175,y1:.885,x2:.32,y2:1.275},"back.inOut(1.7)":{x1:.68,y1:-.55,x2:.265,y2:1.55},"elastic.out(1, 0.45)":{x1:.16,y1:1.32,x2:.28,y2:.86},"bounce.out":{x1:.34,y1:1.56,x2:.64,y2:.74}},QD=/^M\s*0\s*,\s*0\s*C\s*(-?\d+(?:\.\d+)?)\s*,\s*(-?\d+(?:\.\d+)?)\s+(-?\d+(?:\.\d+)?)\s*,\s*(-?\d+(?:\.\d+)?)\s+1\s*,\s*1\s*$/i;function J5(n,e){return Number.isFinite(n)&&n>0?n:e}function _D(n,e){return Number.isFinite(n)&&n>=0?n:e}function ND(n){return n.trim()||"none"}function Ju(n){return Math.round(n*1e3)/1e3}function Md(n,e,t,r){return Number.isFinite(n)?Math.min(t,Math.max(e,n)):r}function $d(n){const e=Ju(n);return Object.is(e,-0)?"0":`${e}`}function k8(n){return typeof n=="number"&&Number.isFinite(n)?n:null}function l6(n){return{x1:Ju(Md(n.x1??Ku.x1,0,1,.215)),y1:Ju(Md(n.y1??Ku.y1,-.6,1.6,.61)),x2:Ju(Md(n.x2??Ku.x2,0,1,.355)),y2:Ju(Md(n.y2??Ku.y2,-.6,1.6,1))}}function eS(n){if(!n)return null;const e=n.trim().match(QD);if(!e)return null;const t={x1:Number.parseFloat(e[1]??""),y1:Number.parseFloat(e[2]??""),x2:Number.parseFloat(e[3]??""),y2:Number.parseFloat(e[4]??"")};return Object.values(t).every(Number.isFinite)?l6(t):null}function a9(n){const e=l6(n);return`M0,0 C${$d(e.x1)},${$d(e.y1)} ${$d(e.x2)},${$d(e.y2)} 1,1`}function s9(n){return RD[n]??Ku}function jD(n,e){const t=_D(e.start,0),r=J5(e.duration,.6),i=J5(e.distance,32),a=ND(e.ease),s=e.direction??"up",o={start:t,duration:r,ease:a,customEase:e.customEase};if(n==="pop")return{...o,from:{scale:.88,autoAlpha:0},to:{scale:1,autoAlpha:1}};if(n==="slide"){const u=s==="right"?-i:s==="left"?i:0,d=s==="down"?-i:s==="up"?i:0;return{...o,from:{x:u,y:d,autoAlpha:0},to:{x:0,y:0,autoAlpha:1}}}return{...o,from:{y:s==="down"?-i:i,autoAlpha:0},to:{y:0,autoAlpha:1}}}function tS(n){if(!n||typeof n!="object")return null;const e=n,t={};for(const r of["x","y","scale","rotation","opacity","autoAlpha"]){const i=k8(e[r]);i!=null&&(t[r]=i)}return Object.keys(t).length>0?t:null}function ZD(n){if(!n||typeof n!="object")return;const e=n,t=typeof e.id=="string"?e.id.trim():"",r=typeof e.data=="string"?e.data.trim():"";if(!(!t||!r))return{id:t,data:r}}function l9(n){const e=n.getAttribute(js);if(!e||e==="true")return null;try{const t=JSON.parse(e);if(!t||typeof t!="object")return null;const r=t,i=k8(r.start),a=k8(r.duration);if(i==null||a==null||i<0||a<=0)return null;const s=typeof r.ease=="string"&&r.ease.trim()?r.ease.trim():"none",o=tS(r.from),u=tS(r.to);return!o||!u?null:{start:i,duration:a,ease:s,customEase:ZD(r.customEase),from:o,to:u}}catch{return null}}function DD(n,e){n.getAttribute(Dl)||(n.setAttribute(Dl,n.style.transform),n.setAttribute(kc,n.style.opacity),n.setAttribute(vc,n.style.visibility));const t={start:e.start,duration:e.duration,ease:e.ease,from:e.from,to:e.to};e.customEase&&(t.customEase=e.customEase),n.setAttribute(js,JSON.stringify(t))}function VD(n,e){var t;n.hasAttribute(js)&&((t=e==null?void 0:e.set)==null||t.call(e,n,{clearProps:"transform,opacity,visibility"}),n.style.transform=n.getAttribute(Dl)??"",n.style.opacity=n.getAttribute(kc)??"",n.style.visibility=n.getAttribute(vc)??"",n.removeAttribute(js),n.removeAttribute(Dl),n.removeAttribute(kc),n.removeAttribute(vc))}function ID(n,e){var t,r,i,a;try{const s=(r=(t=n.__player)==null?void 0:t.getTime)==null?void 0:r.call(t);if(typeof s=="number"&&Number.isFinite(s))return Math.max(0,s)}catch{}try{const s=(a=(i=n.__timeline)==null?void 0:i.time)==null?void 0:a.call(i);if(typeof s=="number"&&Number.isFinite(s))return Math.max(0,s)}catch{}return 0}function v8(n,e){var d,m,p,O,b,S;const t=n.defaultView;if(!t)return 0;const r=t.gsap;t.__timelines=t.__timelines??{},(m=(d=t.__timelines[jg])==null?void 0:d.kill)==null||m.call(d),delete t.__timelines[jg];const i=(p=n.defaultView)==null?void 0:p.HTMLElement;if(!i)return 0;const a=[];for(const k of Array.from(n.querySelectorAll(`[${js}]`))){if(!(k instanceof i))continue;const T=l9(k);T&&a.push({element:k,motion:T})}if(!(r!=null&&r.timeline)||a.length===0)return 0;const s=r.timeline({paused:!0,defaults:{overwrite:"auto"}});let o=0;for(const{element:k,motion:T}of a){if(!s.fromTo)continue;const w={...T.from},A=LD(t,T),E={...T.to,duration:T.duration,ease:A,overwrite:"auto",immediateRender:!1};s.fromTo(k,w,E,T.start),o+=1}if(o===0)return(O=s.kill)==null||O.call(s),0;t.__timelines[jg]=s,(b=s.pause)==null||b.call(s);const u=ID(t);return s.totalTime?s.totalTime(u,!1):(S=s.time)==null||S.call(s,u),o}function LD(n,e){var i,a;const t=e.customEase;if(!t)return e.ease;const r=n.CustomEase;if(typeof(r==null?void 0:r.create)!="function")return e.ease;try{return(a=(i=n.gsap)==null?void 0:i.registerPlugin)==null||a.call(i,r),r.create(t.id,t.data),t.id}catch{return e.ease}}let nS=0;function o9(n){nS+=1;const e=`gesture-${nS}`;return n.setAttribute(_0,e),e}function fi(n,e){e&&n.getAttribute(_0)!==e||n.removeAttribute(_0)}function c9(n){return n.hasAttribute(_0)}function Rd(n,e){return n.getAttribute(_0)===e}function Lh(n,e){const t=Number.parseFloat(n.style.getPropertyValue(e));return Number.isFinite(t)?t:0}function w8(n){return{x:Lh(n,ni),y:Lh(n,ri)}}function zh(n){return{width:Lh(n,Yi),height:Lh(n,Wi)}}function u9(n){const e=Number.parseFloat(n.style.getPropertyValue(ii));return{angle:Number.isFinite(e)?e:0}}function o6(n,e){var t;try{return((t=n.ownerDocument.defaultView)==null?void 0:t.getComputedStyle(n).getPropertyValue(e))??""}catch{return""}}function T8(n,e){return n.style.getPropertyValue(e)||o6(n,e)}function f9(n,e){const t=T8(n,e).trim();return t==="none"?"":t}function A8(n){return n.includes(ni)||n.includes(ri)}function rS(n){return n.includes(Yi)||n.includes(Wi)}function P8(n){return n.includes(ii)}function iS(n){return n.replace(/\s+/g,"").toLowerCase()}function zD(n,e){if(!n.hasAttribute(Bl))return!1;const t=n.style.getPropertyValue(ii).trim();return!t||!e.trim()?!1:iS(e)===iS(f6(n,t))}function jc(n){o6(n,"display")==="inline"&&(n.hasAttribute(Dn)||n.setAttribute(Dn,n.style.getPropertyValue("display")),n.style.setProperty("display","inline-block"))}function c6(n){const e=n.getAttribute(Dn);e!=null&&(e===""?n.style.removeProperty("display"):n.style.setProperty("display",e),n.removeAttribute(Dn))}function BD(n){const e=[];let t=0,r="";for(const i of n.trim())i==="("&&(t+=1),i===")"&&(t=Math.max(0,t-1)),/\s/.test(i)&&t===0?(r&&e.push(r),r=""):r+=i;return r&&e.push(r),e}function d9(n,e,t){var a;const r=(a=n.getAttribute(Gi))==null?void 0:a.trim();if(!r||r==="none")return`${e} ${t}`;const i=BD(r);return i.length===1?`calc(${i[0]} + ${e}) ${t}`:i.length===2?`calc(${i[0]} + ${e}) calc(${i[1]} + ${t})`:i.length===3?`calc(${i[0]} + ${e}) calc(${i[1]} + ${t}) ${i[2]}`:`${e} ${t}`}function HD(n,e){const t=n.style.getPropertyValue("translate"),r=f9(n,"translate"),i=n.hasAttribute(Ia),a=!A8(r);i?e&&a&&!c9(n)&&n.setAttribute(Gi,r):(n.setAttribute(Ki,A8(t)?"":t),n.setAttribute(Gi,a?r:""))}function h9(n,e,t={}){HD(n,t.updateBase??!0),n.setAttribute(Ia,"true"),n.style.setProperty(ni,`${Math.round(e.x)}px`),n.style.setProperty(ri,`${Math.round(e.y)}px`)}function m9(n){const e=n.style.getPropertyValue("transform");if(!e||e==="none")return;const t=n.ownerDocument.defaultView,r=t==null?void 0:t.DOMMatrix;if(r)try{const i=new r(e);if(i.m41===0&&i.m42===0)return;i.m41=0,i.m42=0,i.is2D&&i.a===1&&i.b===0&&i.c===0&&i.d===1?n.style.removeProperty("transform"):n.style.setProperty("transform",i.toString())}catch{}}function Bh(n,e,t={}){jc(n),h9(n,e,{updateBase:t.updateBase??!0}),n.style.setProperty("translate",d9(n,`var(${ni}, 0px)`,`var(${ri}, 0px)`)),m9(n)}function xh(n,e){jc(n),h9(n,e,{updateBase:!1}),n.style.setProperty("translate",d9(n,`${Math.round(e.x)}px`,`${Math.round(e.y)}px`)),m9(n)}function FD(n,e){const t=n.parentElement;if(!t)return null;const r=T8(t,"display").trim();if(r!=="flex"&&r!=="inline-flex")return null;const i=T8(t,"flex-direction").trim();return Math.round(Math.max(1,i.startsWith("column")?e.height:e.width))}function XD(n){if(!n.hasAttribute(xi))return;const e=n.getAttribute(xi);e==null||e===""?n.style.removeProperty("scale"):n.style.setProperty("scale",e),n.removeAttribute(xi);const t=n.getAttribute(Ba);t==null||t===""?n.style.removeProperty("transform-origin"):n.style.setProperty("transform-origin",t),n.removeAttribute(Ba)}function UD(n,e){n.hasAttribute(La)||(n.setAttribute(Pl,n.style.getPropertyValue("width")),n.setAttribute(Cl,n.style.getPropertyValue("height")),n.setAttribute(El,n.style.getPropertyValue("min-width")),n.setAttribute(Ml,n.style.getPropertyValue("min-height")),n.setAttribute($l,n.style.getPropertyValue("max-width")),n.setAttribute(Rl,n.style.getPropertyValue("max-height")),n.setAttribute(Ql,n.style.getPropertyValue("flex-basis")),n.setAttribute(_l,n.style.getPropertyValue("flex-grow")),n.setAttribute(Nl,n.style.getPropertyValue("flex-shrink")),n.setAttribute(jl,n.style.getPropertyValue("box-sizing")),n.setAttribute(xi,n.style.getPropertyValue("scale")),n.setAttribute(Ba,n.style.getPropertyValue("transform-origin")),n.setAttribute(Zl,n.style.getPropertyValue("display"))),n.setAttribute(La,"true"),n.style.setProperty(Yi,`${Math.round(Math.max(1,e.width))}px`),n.style.setProperty(Wi,`${Math.round(Math.max(1,e.height))}px`)}function p9(n,e){UD(n,e),XD(n);const t=Math.round(Math.max(1,e.width)),r=Math.round(Math.max(1,e.height));n.style.setProperty("box-sizing","border-box"),n.style.setProperty("width",`${t}px`),n.style.setProperty("height",`${r}px`),n.style.setProperty("min-width","0px"),n.style.setProperty("min-height","0px"),n.style.setProperty("max-width","none"),n.style.setProperty("max-height","none");const i=FD(n,e);i!=null&&(n.style.setProperty("flex-basis",`${i}px`),n.style.setProperty("flex-grow","0"),n.style.setProperty("flex-shrink","0")),o6(n,"display")==="inline"&&n.style.setProperty("display","inline-block")}function u6(n,e){jc(n),p9(n,e)}function qD(n,e){jc(n),p9(n,e)}function YD(n){return/^-?(?:\d+(?:\.\d+)?|\.\d+)(?:deg|rad|turn|grad)$/.test(n.trim())}function f6(n,e){var r;const t=(r=n.getAttribute(Ji))==null?void 0:r.trim();return!t||t==="none"||!YD(t)?e:`calc(${t} + ${e})`}function WD(n,e){const t=n.style.getPropertyValue("rotate"),r=f9(n,"rotate"),i=n.hasAttribute(za),a=!P8(r)&&!zD(n,r);i?e&&a&&!c9(n)&&n.setAttribute(Ji,r):(n.setAttribute(ea,P8(t)?"":t),n.setAttribute(Ji,a?r:"")),n.hasAttribute(ki)||n.setAttribute(ki,n.style.getPropertyValue("transform-origin"))}function g9(n,e,t={}){WD(n,t.updateBase??!0),n.setAttribute(za,"true"),n.style.setProperty(ii,`${i9(e.angle)}deg`),n.style.setProperty("transform-origin",ED)}function d6(n,e){jc(n),g9(n,e),n.removeAttribute(Bl),n.style.setProperty("rotate",f6(n,`var(${ii}, 0deg)`))}function GD(n,e){jc(n),g9(n,e,{updateBase:!1}),n.setAttribute(Bl,"true"),n.style.setProperty("rotate",f6(n,`${i9(e.angle)}deg`))}function aS(n){const e=n.style.getPropertyValue(ni),t=n.style.getPropertyValue(ri),r=n.style.getPropertyValue("translate"),i=n.getAttribute(Gi),a=n.getAttribute(Ki),s=n.style.getPropertyValue("display"),o=n.getAttribute(Dn),u=[];return e&&u.push({type:"inline-style",property:ni,value:e}),t&&u.push({type:"inline-style",property:ri,value:t}),r&&u.push({type:"inline-style",property:"translate",value:r}),u.push({type:"attribute",property:Ia,value:"true"}),i!==null&&u.push({type:"attribute",property:Gi,value:i}),a!==null&&u.push({type:"attribute",property:Ki,value:a}),s&&u.push({type:"inline-style",property:"display",value:s}),o!==null&&u.push({type:"attribute",property:Dn,value:o}),u}function KD(n){const e=n.getAttribute(Ki),t=[{type:"inline-style",property:ni,value:null},{type:"inline-style",property:ri,value:null},{type:"inline-style",property:"translate",value:e||null},{type:"attribute",property:Ia,value:null},{type:"attribute",property:Gi,value:null},{type:"attribute",property:Ki,value:null}],r=n.getAttribute(Dn);return r!==null&&(t.push({type:"inline-style",property:"display",value:r||null}),t.push({type:"attribute",property:Dn,value:null})),t}function JD(n){const e=[],t=n.style.getPropertyValue(Yi),r=n.style.getPropertyValue(Wi);t&&e.push({type:"inline-style",property:Yi,value:t}),r&&e.push({type:"inline-style",property:Wi,value:r});const i=n.style.getPropertyValue("width"),a=n.style.getPropertyValue("height"),s=n.style.getPropertyValue("min-width"),o=n.style.getPropertyValue("min-height"),u=n.style.getPropertyValue("max-width"),d=n.style.getPropertyValue("max-height"),m=n.style.getPropertyValue("flex-basis"),p=n.style.getPropertyValue("flex-grow"),O=n.style.getPropertyValue("flex-shrink"),b=n.style.getPropertyValue("box-sizing"),S=n.style.getPropertyValue("scale"),k=n.style.getPropertyValue("transform-origin"),T=n.style.getPropertyValue("display");i&&e.push({type:"inline-style",property:"width",value:i}),a&&e.push({type:"inline-style",property:"height",value:a}),s&&e.push({type:"inline-style",property:"min-width",value:s}),o&&e.push({type:"inline-style",property:"min-height",value:o}),u&&e.push({type:"inline-style",property:"max-width",value:u}),d&&e.push({type:"inline-style",property:"max-height",value:d}),m&&e.push({type:"inline-style",property:"flex-basis",value:m}),p&&e.push({type:"inline-style",property:"flex-grow",value:p}),O&&e.push({type:"inline-style",property:"flex-shrink",value:O}),b&&e.push({type:"inline-style",property:"box-sizing",value:b}),S&&e.push({type:"inline-style",property:"scale",value:S}),k&&e.push({type:"inline-style",property:"transform-origin",value:k}),T&&e.push({type:"inline-style",property:"display",value:T}),e.push({type:"attribute",property:La,value:"true"});const w=n.getAttribute(Pl),A=n.getAttribute(Cl),E=n.getAttribute(El),C=n.getAttribute(Ml),P=n.getAttribute($l),$=n.getAttribute(Rl),M=n.getAttribute(Ql),R=n.getAttribute(_l),N=n.getAttribute(Nl),Z=n.getAttribute(jl),D=n.getAttribute(xi),I=n.getAttribute(Ba),U=n.getAttribute(Zl),K=n.getAttribute(Dn);return w!==null&&e.push({type:"attribute",property:Pl,value:w}),A!==null&&e.push({type:"attribute",property:Cl,value:A}),E!==null&&e.push({type:"attribute",property:El,value:E}),C!==null&&e.push({type:"attribute",property:Ml,value:C}),P!==null&&e.push({type:"attribute",property:$l,value:P}),$!==null&&e.push({type:"attribute",property:Rl,value:$}),M!==null&&e.push({type:"attribute",property:Ql,value:M}),R!==null&&e.push({type:"attribute",property:_l,value:R}),N!==null&&e.push({type:"attribute",property:Nl,value:N}),Z!==null&&e.push({type:"attribute",property:jl,value:Z}),D!==null&&e.push({type:"attribute",property:xi,value:D}),I!==null&&e.push({type:"attribute",property:Ba,value:I}),U!==null&&e.push({type:"attribute",property:Zl,value:U}),K!==null&&e.push({type:"attribute",property:Dn,value:K}),e}function eV(n){const e=[{type:"inline-style",property:Yi,value:null},{type:"inline-style",property:Wi,value:null},{type:"attribute",property:La,value:null}],t=[[Pl,"width"],[Cl,"height"],[El,"min-width"],[Ml,"min-height"],[$l,"max-width"],[Rl,"max-height"],[Ql,"flex-basis"],[_l,"flex-grow"],[Nl,"flex-shrink"],[jl,"box-sizing"],[xi,"scale"],[Ba,"transform-origin"],[Zl,"display"]];for(const[i,a]of t){const s=n.getAttribute(i);s!==null&&e.push({type:"inline-style",property:a,value:s||null}),e.push({type:"attribute",property:i,value:null})}const r=n.getAttribute(Dn);return r!==null&&(e.push({type:"inline-style",property:"display",value:r||null}),e.push({type:"attribute",property:Dn,value:null})),e}function tV(n){const e=[],t=n.style.getPropertyValue(ii),r=n.style.getPropertyValue("rotate"),i=n.style.getPropertyValue("transform-origin"),a=n.style.getPropertyValue("display");t&&e.push({type:"inline-style",property:ii,value:t}),r&&e.push({type:"inline-style",property:"rotate",value:r}),i&&e.push({type:"inline-style",property:"transform-origin",value:i}),a&&e.push({type:"inline-style",property:"display",value:a}),e.push({type:"attribute",property:za,value:"true"});const s=n.getAttribute(Ji),o=n.getAttribute(ea),u=n.getAttribute(ki),d=n.getAttribute(Dn);return s!==null&&e.push({type:"attribute",property:Ji,value:s}),o!==null&&e.push({type:"attribute",property:ea,value:o}),u!==null&&e.push({type:"attribute",property:ki,value:u}),d!==null&&e.push({type:"attribute",property:Dn,value:d}),e}function nV(n){const e=n.getAttribute(ea),t=n.getAttribute(ki),r=[{type:"inline-style",property:ii,value:null},{type:"inline-style",property:"rotate",value:e||null},{type:"inline-style",property:"transform-origin",value:t!==null&&t||null},{type:"attribute",property:za,value:null},{type:"attribute",property:Bl,value:null},{type:"attribute",property:Ji,value:null},{type:"attribute",property:ea,value:null},{type:"attribute",property:ki,value:null}],i=n.getAttribute(Dn);return i!==null&&(r.push({type:"inline-style",property:"display",value:i||null}),r.push({type:"attribute",property:Dn,value:null})),r}function rV(n){const e=n.getAttribute(js);if(!e)return[];const t=[{type:"attribute",property:js,value:e}],r=n.getAttribute(Dl);r!==null&&t.push({type:"attribute",property:Dl,value:r});const i=n.getAttribute(kc);i!==null&&t.push({type:"attribute",property:kc,value:i});const a=n.getAttribute(vc);return a!==null&&t.push({type:"attribute",property:vc,value:a}),t}function iV(n){return[{type:"attribute",property:js,value:null},{type:"attribute",property:Dl,value:null},{type:"attribute",property:kc,value:null},{type:"attribute",property:vc,value:null}]}function aV(n){var a;const e=(a=n.defaultView)==null?void 0:a.HTMLElement;if(!e)return;const t=Array.from(n.querySelectorAll(`[${Ia}="true"]`)).filter(s=>s instanceof e);for(const s of t){const o=s.style.getPropertyValue(ni),u=s.style.getPropertyValue(ri);(o||u)&&Bh(s,{x:Number.parseFloat(o)||0,y:Number.parseFloat(u)||0})}const r=Array.from(n.querySelectorAll(`[${La}="true"]`)).filter(s=>s instanceof e);for(const s of r){const o=Number.parseFloat(s.style.getPropertyValue(Yi)),u=Number.parseFloat(s.style.getPropertyValue(Wi));Number.isFinite(o)&&Number.isFinite(u)&&o>0&&u>0&&u6(s,{width:o,height:u})}const i=Array.from(n.querySelectorAll(`[${za}="true"]`)).filter(s=>s instanceof e);for(const s of i){const o=Number.parseFloat(s.style.getPropertyValue(ii));Number.isFinite(o)&&d6(s,{angle:o})}v8(n)}function sV(n){return{width:n.style.getPropertyValue("width"),height:n.style.getPropertyValue("height"),minWidth:n.style.getPropertyValue("min-width"),minHeight:n.style.getPropertyValue("min-height"),maxWidth:n.style.getPropertyValue("max-width"),maxHeight:n.style.getPropertyValue("max-height"),flexBasis:n.style.getPropertyValue("flex-basis"),flexGrow:n.style.getPropertyValue("flex-grow"),flexShrink:n.style.getPropertyValue("flex-shrink"),boxSizing:n.style.getPropertyValue("box-sizing"),scale:n.style.getPropertyValue("scale"),transformOrigin:n.style.getPropertyValue("transform-origin"),display:n.style.getPropertyValue("display"),studioWidth:n.style.getPropertyValue(Yi),studioHeight:n.style.getPropertyValue(Wi),marker:n.getAttribute(La),originalWidth:n.getAttribute(Pl),originalHeight:n.getAttribute(Cl),originalMinWidth:n.getAttribute(El),originalMinHeight:n.getAttribute(Ml),originalMaxWidth:n.getAttribute($l),originalMaxHeight:n.getAttribute(Rl),originalFlexBasis:n.getAttribute(Ql),originalFlexGrow:n.getAttribute(_l),originalFlexShrink:n.getAttribute(Nl),originalBoxSizing:n.getAttribute(jl),originalScale:n.getAttribute(xi),originalTransformOrigin:n.getAttribute(Ba),originalDisplay:n.getAttribute(Zl)}}function lV(n){return{rotate:n.style.getPropertyValue("rotate"),transformOrigin:n.style.getPropertyValue("transform-origin"),studioRotation:n.style.getPropertyValue(ii),marker:n.getAttribute(za),draftMarker:n.getAttribute(Bl),originalRotate:n.getAttribute(Ji),originalInlineRotate:n.getAttribute(ea),originalTransformOrigin:n.getAttribute(ki)}}function h6(n){return{translate:n.style.getPropertyValue("translate"),x:n.style.getPropertyValue(ni),y:n.style.getPropertyValue(ri),marker:n.getAttribute(Ia),originalTranslate:n.getAttribute(Gi),originalInlineTranslate:n.getAttribute(Ki)}}function Ft(n,e,t){t==null?n.removeAttribute(e):n.setAttribute(e,t)}function gn(n,e,t){t?n.style.setProperty(e,t):n.style.removeProperty(e)}function Zg(n,e){gn(n,"width",e.width),gn(n,"height",e.height),gn(n,"min-width",e.minWidth),gn(n,"min-height",e.minHeight),gn(n,"max-width",e.maxWidth),gn(n,"max-height",e.maxHeight),gn(n,"flex-basis",e.flexBasis),gn(n,"flex-grow",e.flexGrow),gn(n,"flex-shrink",e.flexShrink),gn(n,"box-sizing",e.boxSizing),gn(n,"scale",e.scale),gn(n,"transform-origin",e.transformOrigin),gn(n,"display",e.display),gn(n,Yi,e.studioWidth),gn(n,Wi,e.studioHeight),Ft(n,La,e.marker),Ft(n,Pl,e.originalWidth),Ft(n,Cl,e.originalHeight),Ft(n,El,e.originalMinWidth),Ft(n,Ml,e.originalMinHeight),Ft(n,$l,e.originalMaxWidth),Ft(n,Rl,e.originalMaxHeight),Ft(n,Ql,e.originalFlexBasis),Ft(n,_l,e.originalFlexGrow),Ft(n,Nl,e.originalFlexShrink),Ft(n,jl,e.originalBoxSizing),Ft(n,xi,e.originalScale),Ft(n,Ba,e.originalTransformOrigin),Ft(n,Zl,e.originalDisplay)}function Dg(n,e){gn(n,"rotate",e.rotate),gn(n,"transform-origin",e.transformOrigin),gn(n,ii,e.studioRotation),Ft(n,za,e.marker),Ft(n,Bl,e.draftMarker),Ft(n,Ji,e.originalRotate),Ft(n,ea,e.originalInlineRotate),Ft(n,ki,e.originalTransformOrigin)}function yl(n,e){e.translate?n.style.setProperty("translate",e.translate):n.style.removeProperty("translate"),e.x?n.style.setProperty(ni,e.x):n.style.removeProperty(ni),e.y?n.style.setProperty(ri,e.y):n.style.removeProperty(ri),Ft(n,Ia,e.marker),Ft(n,Gi,e.originalTranslate),Ft(n,Ki,e.originalInlineTranslate)}function vr(n,e,t){const r=n.getAttribute(t);r==null||r===""?n.style.removeProperty(e):n.style.setProperty(e,r),n.removeAttribute(t)}function oV(n){const e=n.getAttribute(ea);e==null||e===""?n.style.removeProperty("rotate"):n.style.setProperty("rotate",e),n.removeAttribute(ea),n.removeAttribute(Ji);const t=n.getAttribute(ki);t!=null&&(t===""?n.style.removeProperty("transform-origin"):n.style.setProperty("transform-origin",t)),n.removeAttribute(ki)}function cV(n){const e=n.getAttribute(Ki);e==null||e===""?n.style.removeProperty("translate"):n.style.setProperty("translate",e),n.removeAttribute(Ki),n.removeAttribute(Gi)}function uV(n){(n.hasAttribute(Ia)||A8(n.style.getPropertyValue("translate")))&&cV(n),c6(n),n.style.removeProperty(ni),n.style.removeProperty(ri),n.removeAttribute(Ia),n.removeAttribute(Gi),n.removeAttribute(Ki)}function fV(n){(n.hasAttribute(za)||P8(n.style.getPropertyValue("rotate")))&&oV(n),c6(n),n.style.removeProperty(ii),n.removeAttribute(za),n.removeAttribute(Bl),n.removeAttribute(Ji),n.removeAttribute(ea),n.removeAttribute(ki)}function dV(n){(n.hasAttribute(La)||rS(n.style.getPropertyValue("width"))||rS(n.style.getPropertyValue("height"))||n.hasAttribute(xi))&&(vr(n,"width",Pl),vr(n,"height",Cl),vr(n,"min-width",El),vr(n,"min-height",Ml),vr(n,"max-width",$l),vr(n,"max-height",Rl),vr(n,"flex-basis",Ql),vr(n,"flex-grow",_l),vr(n,"flex-shrink",Nl),vr(n,"box-sizing",jl),vr(n,"scale",xi),vr(n,"transform-origin",Ba),vr(n,"display",Zl)),c6(n),n.style.removeProperty(Yi),n.style.removeProperty(Wi),n.removeAttribute(La)}function m6(n){try{Object.defineProperty(n,b8,{configurable:!1,enumerable:!1,value:!0})}catch{try{n[b8]=!0}catch{}}}function p6(n){return!!n[b8]}function Du(n,e,t){const r=e==null?void 0:e[t];if(!e||typeof r!="function")return!1;const i=r;if(p6(i))return!0;const a=function(...s){var u;const o=i.apply(this,s);return(u=n.__hfStudioManualEditsApply)==null||u.call(n),o};m6(a);try{e[t]=a}catch{return!1}return!0}function Vu(n,e){const t=n[e];if(typeof t!="function")return null;try{return MD(t.call(n))}catch{return null}}function hV(n){const e=Vu(n,"duration")??Vu(n,"getDuration");if(e==null)return!0;if(e<=0)return!1;const t=Vu(n,"time")??Vu(n,"totalTime")??Vu(n,"getTime");return t==null?!0:t<e}function Vg(n){if(!n)return!1;const e=n.isPlaying;if(typeof e=="function")try{return!!e.call(n)}catch{return!1}const t=n.paused;if(typeof t=="function"){try{if(t.call(n))return!1}catch{return!1}const i=n.isActive;if(typeof i=="function")try{if(i.call(n))return!0}catch{return!1}return hV(n)}const r=n.isActive;if(typeof r=="function")try{return!!r.call(n)}catch{return!1}return!1}function O9(n){return Vg(n.__player)||Vg(n.__timeline)?!0:Object.values(n.__timelines??{}).some(Vg)}function y9(n){var t;if((t=n.__hfStudioManualEditsApply)==null||t.call(n),n[Pd]!=null)return;const e=()=>{var r;if((r=n.__hfStudioManualEditsApply)==null||r.call(n),!O9(n)){n[Pd]=null;return}n[Pd]=n.requestAnimationFrame(e)};n[Pd]=n.requestAnimationFrame(e)}function Ig(n,e,t){const r=e==null?void 0:e[t];if(!e||typeof r!="function")return!1;const i=r;if(p6(i))return!0;const a=function(...s){const o=i.apply(this,s);return y9(n),o};m6(a);try{e[t]=a}catch{return!1}return!0}function Lg(n,e,t){const r=e==null?void 0:e[t];if(!e||typeof r!="function")return!1;const i=r;if(p6(i))return!0;const a=function(...s){var u;const o=i.apply(this,s);return(u=n.__hfStudioManualEditsApply)==null||u.call(n),o};m6(a);try{e[t]=a}catch{return!1}return!0}function mV(n,e){const t=n;t[CD]=e;const r=Du(t,t.__hf,"seek"),i=Du(t,t.__player,"seek"),a=Du(t,t.__player,"renderSeek"),s=Du(t,t.__timeline,"seek"),o=Ig(t,t.__player,"play"),u=Ig(t,t.__timeline,"play"),d=Lg(t,t.__player,"pause"),m=Lg(t,t.__timeline,"pause");let p=!1,O=!1,b=!1;for(const S of Object.values(t.__timelines??{}))p=Du(t,S,"seek")||p,O=Ig(t,S,"play")||O,b=Lg(t,S,"pause")||b;return O9(t)&&y9(t),r||i||a||s||o||u||d||m||p||O||b}function pV({projectId:n,showToast:e,readOptionalProjectFile:t,writeProjectFile:r,recordEdit:i,previewIframeRef:a,activeCompPathRef:s,domEditSaveTimestampRef:o,reloadPreview:u,pendingTimelineEditPathRef:d}){const m=h.useRef(0),p=h.useRef(Promise.resolve()),O=h.useRef(async()=>{}),b=h.useRef(n);b.current=n;const S=h.useCallback(E=>{const C=p.current.catch(()=>{}).then(E);return p.current=C.then(()=>{},()=>{}),C},[]),k=h.useCallback(async()=>{await p.current.catch(()=>{})},[]),T=h.useCallback((E=a.current)=>{var R,N,Z,D,I,U;if(!E)return;let C=null;try{C=E.contentDocument}catch{return}if(!C)return;const P=()=>{let K=null;try{K=E.contentDocument}catch{return}K&&aV(K)},$=()=>{P(),E.contentWindow&&mV(E.contentWindow,P)},M=E.contentWindow;$(),(R=M==null?void 0:M.requestAnimationFrame)==null||R.call(M,$),(N=M==null?void 0:M.setTimeout)==null||N.call(M,$,80),(Z=M==null?void 0:M.setTimeout)==null||Z.call(M,$,250),(D=M==null?void 0:M.setTimeout)==null||D.call(M,$,500),(I=M==null?void 0:M.setTimeout)==null||I.call(M,$,1e3),(U=M==null?void 0:M.setTimeout)==null||U.call(M,$,2e3)},[a]),w=h.useCallback(async(E=a.current)=>{T(E)},[T,a]);O.current=w;const A=h.useCallback(async E=>{u()},[u]);return zt(()=>{t(S8).then(E=>{if(E){try{const C=JSON.parse(E);if(!Array.isArray(C.motions)||C.motions.length===0)return}catch{return}return r(S8,JSON.stringify({version:1,motions:[]}))}}).catch(()=>{})}),zt(()=>{const E=P=>{const $=$D(P);if(!$)return;const M=Date.now()-o.current<4e3;if(d!=null&&d.current.has($)){d.current.delete($);return}M||u()},C=new EventSource("/api/events");return C.addEventListener("file-change",E),()=>C.close()}),{domTextCommitVersionRef:m,domEditSaveQueueRef:p,applyStudioManualEditsToPreviewRef:O,queueDomEditSave:S,waitForPendingDomEditSaves:k,applyCurrentStudioManualEditsToPreview:T,applyStudioManualEditsToPreview:w,syncHistoryPreviewAfterApply:A}}function Ho(n){return n.label||n.id||n.tag}function sS(n){const e=n.trim(),t=/^[a-z]+:\/\//i.test(e)?new URL(e).pathname:e;return decodeURIComponent(t).replace(/\\/g,"/").replace(/^\.?\//,"")}function gV(n,e){const t=sS(n).split("/").filter(Boolean),r=sS(e).split("/").filter(Boolean);for(t.pop();t.length>0&&r.length>0&&t[0]===r[0];)t.shift(),r.shift();return[...t.map(()=>".."),...r].join("/")||e}function OV(n){return/^(?:\/|[A-Za-z]:[\\/]|\\\\)/.test(n)}function yV(n,e){const t=e.trim();if(!t)return;const r=t.replace(/\\/g,"/");if(OV(r))return r;const i=n==null?void 0:n.trim().replace(/\\/g,"/").replace(/\/+$/,"");if(i)return`${i}/${r.replace(/^\.?\//,"")}`}function zg(n,e){const t=e.trim();return t&&(["border-radius","border-width","font-size","letter-spacing"].includes(n)&&/^-?\d+(\.\d+)?$/.test(t)?`${t}px`:t)}function lS(n){return/^url\(/i.test(n.trim())}function bV(n){return n==="left"||n==="top"||n==="width"||n==="height"}function b9(n){if(!n||typeof n!="object")return null;const e=n;return e.nodeType===1?n:e.nodeType===3&&e.parentElement?e.parentElement:null}function oS(n){const e=b9(n);return e?!!e.closest("input, textarea, select, [contenteditable='true'], [role='textbox'], .cm-editor"):!1}function Qd(n){const t=typeof navigator<"u"&&/Mac|iPhone|iPad|iPod/i.test(navigator.platform)?"Cmd":"Ctrl";return n==="undo"?`${t}+Z`:`${t}+Shift+Z`}function C8(n,e){const t=n.sourceFile||"index.html";for(const r of e){const i=r.sourceFile||"index.html";if(n.id&&r.domId===n.id&&i===t||n.isCompositionHost&&n.compositionSrc&&r.compositionSrc===n.compositionSrc||n.selector&&r.selector===n.selector&&(r.selectorIndex??0)===(n.selectorIndex??0)&&(r.sourceFile??"index.html")===n.sourceFile)return r.key??r.id}return null}function xV(n,e){if(!e||!Number.isFinite(e.start)||!Number.isFinite(e.duration))return null;const t=Math.max(0,e.start),r=Math.max(t,t+Math.max(0,e.duration)),i=Number.isFinite(n)?n:t;return N0(i,t,r)}function N0(n,e,t){return t<e?e:Math.min(Math.max(n,e),t)}function g6(n){return Array.from(n.matchAll(/\bid="([^"]+)"/g),e=>e[1]??"")}const _d={image:3,video:5,audio:5};async function cS(n,e,t){if(t==="image")return _d.image;const r=document.createElement(t==="video"?"video":"audio");r.preload="metadata",r.src=`/api/projects/${n}/preview/${e}`;const i=await new Promise(a=>{const s=window.setTimeout(()=>a(_d[t]),3e3),o=u=>{window.clearTimeout(s),a(u)};r.addEventListener("loadedmetadata",()=>{const u=Number(r.duration);o(Number.isFinite(u)&&u>0?Math.round(u*100)/100:_d[t])},{once:!0}),r.addEventListener("error",()=>o(_d[t]),{once:!0})});return r.src="",r.load(),i}function x9(n){return n.domId?{id:n.domId,selector:n.selector,selectorIndex:n.selectorIndex}:n.selector?{selector:n.selector,selectorIndex:n.selectorIndex}:null}function uS(n,e,t){try{const r=n==null?void 0:n.contentDocument;if(!r)return;const i=e.domId?r.getElementById(e.domId):e.selector?r.querySelectorAll(e.selector)[e.selectorIndex??0]??null:null;if(!i)return;for(const[a,s]of t)i.setAttribute(a,s)}catch{}}function SV(n,e,t,r){if(r.playbackStart!=null)return{attrName:t.playbackStartAttr==="playback-start"?"playback-start":"media-start",value:r.playbackStart};const i=r.start-t.start;if(i===0)return null;const a=K5(n,e,"playback-start")??K5(n,e,"media-start"),s=a!=null?parseFloat(a):void 0;return s==null||!Number.isFinite(s)?null:{attrName:t.playbackStartAttr==="playback-start"?"playback-start":"media-start",value:Math.max(0,s+i*Math.max(t.playbackRate??1,.1))}}async function kV(n){const e=n.element.sourceFile||n.activeCompPath||"index.html",t=await E8(n.projectId,e),r=x9(n.element);if(!r)throw new Error(`Timeline element ${n.element.id} is missing a patchable target`);const i=n.buildPatches(t,r);if(i===t)throw new Error(`Unable to patch timeline element ${n.element.id} in ${e}`);n.pendingTimelineEditPathRef.current.add(e),n.domEditSaveTimestampRef.current=Date.now(),await _s({projectId:n.projectId,label:n.label,kind:"timeline",files:{[e]:i},readFile:async()=>t,writeFile:n.writeProjectFile,recordEdit:n.recordEdit}),n.domEditSaveTimestampRef.current=Date.now()}async function E8(n,e){const t=await fetch(`/api/projects/${n}/files/${encodeURIComponent(e)}`);if(!t.ok)throw new Error(`Failed to read ${e}`);const r=await t.json();if(typeof r.content!="string")throw new Error(`Missing file contents for ${e}`);return r.content}function vV({projectId:n,activeCompPath:e,timelineElements:t,showToast:r,writeProjectFile:i,recordEdit:a,domEditSaveTimestampRef:s,reloadPreview:o,previewIframeRef:u,pendingTimelineEditPathRef:d,uploadProjectFiles:m}){const p=h.useRef(n);p.current=n;const O=h.useRef(Promise.resolve()),b=h.useRef(0),S=h.useCallback((P,$,M)=>{const R=p.current;if(!R)return Promise.resolve();const N=O.current.then(()=>kV({projectId:R,element:P,activeCompPath:e,label:$,buildPatches:M,writeProjectFile:i,recordEdit:a,domEditSaveTimestampRef:s,pendingTimelineEditPathRef:d}));return O.current=N.catch(Z=>{console.error(`[Timeline] Failed to persist: ${$}`,Z)}),N},[e,a,i,s,d]),k=h.useCallback((P,$)=>(uS(u.current,P,[["data-start",ir($.start)],["data-track-index",String($.track)]]),S(P,"Move timeline clip",(M,R)=>{let N=Bo(M,R,{type:"attribute",property:"start",value:ir($.start)});return Bo(N,R,{type:"attribute",property:"track-index",value:String($.track)})})),[u,S]),T=h.useCallback((P,$)=>(uS(u.current,P,[["data-start",ir($.start)],["data-duration",ir($.duration)]]),S(P,"Resize timeline clip",(M,R)=>{const N=SV(M,R,P,$);let Z=Bo(M,R,{type:"attribute",property:"start",value:ir($.start)});return Z=Bo(Z,R,{type:"attribute",property:"duration",value:ir($.duration)}),N&&(Z=Bo(Z,R,{type:"attribute",property:N.attrName,value:ir(N.value)})),Z})),[u,S]),w=h.useCallback(async P=>{const $=p.current;if(!$)throw new Error("No active project");const M=Ho(P),R=P.sourceFile||e||"index.html";try{const N=await E8($,R),Z=x9(P);if(!Z)throw new Error(`Timeline element ${P.id} is missing a patchable target`);const D=await fetch(`/api/projects/${$}/file-mutations/remove-element/${encodeURIComponent(R)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({target:Z})});if(!D.ok)throw new Error(`Failed to delete ${P.id} from ${R}`);const I=await D.json(),U=typeof I.content=="string"?I.content:N;s.current=Date.now(),await _s({projectId:$,label:"Delete timeline clip",kind:"timeline",files:{[R]:U},readFile:async()=>N,writeFile:i,recordEdit:a}),Ae.getState().setElements(t.filter(K=>(K.key??K.id)!==(P.key??P.id))),Ae.getState().setSelectedElementId(null),o(),r(`Deleted ${M}. Use Undo to restore it.`,"info")}catch(N){const Z=N instanceof Error?N.message:"Failed to delete timeline clip";r(Z)}},[e,a,r,t,i,s,o]),A=h.useCallback(async(P,$,M)=>{const R=p.current;if(!R)throw new Error("No active project");const N=q3(P);if(!N){r("Only image, video, and audio assets can be dropped onto the timeline.");return}const Z=e||"index.html";try{const D=await E8(R,Z),I=Number(ir($.start)),U=Number.isFinite(M)&&M!=null&&M>0?M:await cS(R,P,N),K=Number(ir(U)),q=TQ(P,g6(D)),L=AQ(Z,P),W=Z||"index.html",ee=t.filter(_=>(_.sourceFile||e||"index.html")===W),X=Math.max(1,ee.length+1),B=zO(D,CQ({id:q,assetPath:L,kind:N,start:I,duration:K,track:$.track,zIndex:X,geometry:Xw(D)}));s.current=Date.now(),await _s({projectId:R,label:"Add timeline asset",kind:"timeline",files:{[Z]:B},readFile:async()=>D,writeFile:i,recordEdit:a}),o()}catch(D){const I=D instanceof Error?D.message:"Failed to drop asset onto timeline";r(I)}},[e,a,r,t,i,s,o]),E=h.useCallback(async(P,$)=>{const M=p.current;if(!M)return;const R=await m(P);if(R.length===0)return;const N=[];for(const D of R){const I=q3(D),U=I?await cS(M,D,I):0;N.push(Number(ir(U)))}const Z=PQ($??{start:0,track:0},N,t.filter(D=>(D.sourceFile||e||"index.html")===(e||"index.html")).map(D=>({start:D.start,duration:D.duration,track:D.track})));for(const[D,I]of R.entries())await A(I,Z[D]??Z[0],N[D])},[e,A,t,m]),C=h.useCallback(P=>{const $=Date.now();$-b.current<1500||(b.current=$,r("This clip can't be moved or resized from the timeline yet.","info"))},[r]);return{handleTimelineElementMove:k,handleTimelineElementResize:T,handleTimelineElementDelete:w,handleTimelineAssetDrop:A,handleTimelineFileDrop:E,handleBlockedTimelineEdit:C}}function wV(n,e){const t=new Set(e);if(!t.has(n))return n;let r=2;for(;t.has(`${n}_${r}`);)r++;return`${n}_${r}`}async function fS(n){const{projectId:e,blockName:t,activeCompPath:r,placement:i,timelineElements:a,readProjectFile:s,writeProjectFile:o,recordEdit:u,refreshFileTree:d,reloadPreview:m,showToast:p}=n;try{const O=await fetch(`/api/projects/${e}/registry/install`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({blockName:t})});if(!O.ok){const T=await O.json().catch(()=>({error:"Install failed"}));return p(T.error||"Failed to install block"),null}const{written:b,block:S}=await O.json(),k=b.find(T=>T.endsWith(".html"))??b[0];if(!k)return p("Installed but no composition file was written"),null;if(S.type==="hyperframes:component"){const T=await s(k),w=T.replace(/background:\s*(?:#(?:0a0a0a|000000|000|0a0805)|rgba?\([^)]*\))\s*;/g,"background: transparent;");w!==T&&await o(k,w)}{const T=r||"index.html",w=await s(T),A=g6(w),E=wV(S.name,A),C=T||"index.html",P=a.filter(L=>(L.sourceFile||r||"index.html")===C),$=S.type==="hyperframes:block",M=Xw(w),R=i?Number(ir(i.start)):$?P.reduce((L,W)=>Math.max(L,(W.start??0)+(W.duration??0)),0):0,N=$?S.duration:P.reduce((L,W)=>Math.max(L,(W.start??0)+(W.duration??0)),10),Z=(i==null?void 0:i.track)??($?0:P.length>0?Math.max(...P.map(L=>L.track))+1:1),D=Math.max(1,P.length+1),I=$?S.dimensions.width:M.width,U=$?S.dimensions.height:M.height,K=`<div data-composition-id="${E}" data-composition-src="${k}" data-start="${ir(R)}" data-duration="${ir(N)}" data-track-index="${Z}" data-width="${I}" data-height="${U}" style="position: absolute; left: 0px; top: 0px; width: ${I}px; height: ${U}px; z-index: ${D}"></div>`,q=zO(w,K);await _s({projectId:e,label:`Add ${$?"block":"component"}: ${S.title}`,kind:"timeline",files:{[T]:q},readFile:async()=>w,writeFile:o,recordEdit:u})}return await d(),m(),{block:S,compositionPath:k}}catch(O){const b=O instanceof Error?O.message:"Failed to add block";return p(b),null}}const TV={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},AV="VITE_STUDIO_ENABLE_PREVIEW_MANUAL_DRAGGING",PV="VITE_STUDIO_ENABLE_INSPECTOR_PANELS",CV="VITE_STUDIO_ENABLE_MOTION_PANEL",EV=new Set(["1","true","yes","on","enabled"]),MV=new Set(["0","false","no","off","disabled"]);function Q1(n,e,t){for(const r of e){const i=n[r];if(typeof i=="boolean")return i;if(typeof i!="string")continue;const a=i.trim().toLowerCase();if(a){if(EV.has(a))return!0;if(MV.has(a))return!1}}return t}const _1=TV??{},$V=Q1(_1,[AV,"VITE_STUDIO_PREVIEW_MANUAL_EDITING_ENABLED"],!0),yn=Q1(_1,[PV,"VITE_STUDIO_INSPECTOR_PANELS_ENABLED"],!0),O6=Q1(_1,[CV,"VITE_STUDIO_MOTION_PANEL_ENABLED"],!1),Bg=Q1(_1,["VITE_STUDIO_ENABLE_BLOCKS_PANEL","VITE_STUDIO_BLOCKS_PANEL_ENABLED"],!1),M8=yn,dS="Manual editing is temporarily disabled",S9=["position","display","top","left","right","bottom","inset","width","height","gap","justify-content","align-items","flex-direction","font-size","font-style","font-weight","font-family","line-height","letter-spacing","text-align","text-transform","color","background-color","background-image","opacity","mix-blend-mode","border-radius","border-width","border-style","border-color","border-top-width","border-top-style","border-top-color","outline-color","overflow","clip-path","box-shadow","filter","backdrop-filter","z-index","transform","object-fit","object-position"];function Si(n){return typeof n=="object"&&n!==null&&"nodeType"in n&&typeof n.nodeType=="number"&&n.nodeType===1}function xs(n){if(!n)return null;const e=n.trim();if(!e.endsWith("px"))return null;const t=parseFloat(e);return Number.isFinite(t)?t:null}function RV(n){const e=(n??"none").trim();if(!e||e==="none")return!0;const t=e.match(/^matrix\(([^)]+)\)$/i);if(t){const s=t[1].split(",").map(o=>Number.parseFloat(o.trim()));return s.length!==6||s.some(o=>!Number.isFinite(o))?!1:Math.abs(s[0]-1)<1e-4&&Math.abs(s[1])<1e-4&&Math.abs(s[2])<1e-4&&Math.abs(s[3]-1)<1e-4&&Math.abs(s[4])<1e-4&&Math.abs(s[5])<1e-4}const r=e.match(/^matrix3d\(([^)]+)\)$/i);if(!r)return!1;const i=r[1].split(",").map(s=>Number.parseFloat(s.trim()));if(i.length!==16||i.some(s=>!Number.isFinite(s)))return!1;const a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return i.every((s,o)=>Math.abs(s-a[o])<1e-4)}function QV(n){return["div","span","p","strong","h1","h2","h3","h4","h5","h6"].includes(n)}function k9(n){var r;const e={},t=(r=n.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(n);if(!t)return e;for(const i of S9){const a=t.getPropertyValue(i);a&&(e[i]=a)}return e}function v9(n){const e={};for(const t of S9){const r=n.style.getPropertyValue(t);r&&(e[t]=r)}return e}function _V(n){const e={};for(const t of n.attributes)t.name.startsWith("data-")&&(e[t.name.slice(5)]=t.value);return e}function hS(n,e){let t=n;for(;t;){const r=t;if(e.some(i=>r.hasAttribute(i)))return r;t=t.parentElement}return null}function wl(n,e){const t=hS(n,["data-composition-file","data-composition-src"]),r=hS(n,["data-composition-id"]),i=(t==null?void 0:t.getAttribute("data-composition-file"))??(t==null?void 0:t.getAttribute("data-composition-src"))??(r==null?void 0:r.getAttribute("data-composition-file"))??(r==null?void 0:r.getAttribute("data-composition-src"))??e??"index.html";return{sourceFile:i,compositionPath:i}}function mS(n){const e=n==null?void 0:n.trim();if(!e)return;let t=e;try{t=new URL(e,"http://studio.local").pathname}catch{t=e}for(const r of["/preview/comp/","/preview/"]){const i=t.indexOf(r);if(i<0)continue;return t.slice(i+r.length).replace(/^\/+/,"")||e}return e}function w9(n){const e=globalThis.CSS;if(typeof(e==null?void 0:e.escape)=="function")return e.escape(n);if(n==="-")return"\\-";let t="";for(let r=0;r<n.length;r+=1){const i=n[r]??"",a=i.charCodeAt(0);if(a===0){t+="�";continue}const s=a>=48&&a<=57,o=a>=65&&a<=90,u=a>=97&&a<=122,d=a>=1&&a<=31||a===127,m=r===0&&s,p=r===1&&n.startsWith("-")&&s;if(d||m||p){t+=`\\${a.toString(16)} `;continue}if(o||u||s||i==="-"||i==="_"||a>=128){t+=i;continue}t+=`\\${i}`}return t}function $8(n){return n.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\a ").replace(/\r/g,"\\d ").replace(/\f/g,"\\c ")}function R8(n,e){try{return Array.from(n.querySelectorAll(e))}catch{return[]}}function Nd(n){var e;return((e=n.replace(/\.html$/i,"").replace(/^compositions\//i,"").split("/").at(-1))==null?void 0:e.replace(/[-_]+/g," ").replace(/\b\w/g,t=>t.toUpperCase()))??n}function T9(n){if(n.id)return`#${w9(n.id)}`;const e=n.getAttribute("data-composition-id");return e?`[data-composition-id="${$8(e)}"]`:A9(n)}function A9(n){const e=Array.from(n.classList).map(r=>r.trim()).filter(Boolean);if(e.length===0)return;const t=e.find(r=>r!=="clip"&&!r.startsWith("__hf-"))??e[0];return t?`.${w9(t)}`:void 0}function P9(n,e,t,r,i){if(!(t!=null&&t.startsWith(".")))return;const s=R8(n,t).filter(o=>Si(o)&&wl(o,i).sourceFile===r).indexOf(e);return s>=0?s:void 0}function y6(n){const e=n.ownerDocument.defaultView;if(!e)return!0;let t=n;for(;t;){const r=e.getComputedStyle(t);if(r.display==="none"||r.visibility==="hidden")return!1;const i=Number.parseFloat(r.opacity);if(Number.isFinite(i)&&i<=.01)return!1;t=t.parentElement}return!0}const pS=new Set(["img","video","canvas","svg","audio"]);function NV(n){const e=n.tagName.toLowerCase();if(pS.has(e))return!1;const{children:t}=n;if(t.length===0)return(n.textContent??"").trim().length===0;for(let r=0;r<t.length;r+=1){const i=t[r];if(Si(i)&&(pS.has(i.tagName.toLowerCase())||y6(i)))return!1}return!0}function jV(n){const e=n.getBoundingClientRect();return!(e.width<=1||e.height<=1||!y6(n)||NV(n))}const ZV=new Set(["base","br","canvas","link","meta","script","source","style","template","track","wbr"]);function DV(n){var r;const e=n.tagName.toLowerCase();if(ZV.has(e))return!1;const t=(r=n.ownerDocument.defaultView)==null?void 0:r.getComputedStyle(n);return!((t==null?void 0:t.display)==="none"||(t==null?void 0:t.visibility)==="hidden")}function N1(n,e){if(!DV(n)||n.hasAttribute("data-composition-id"))return null;const t=T9(n);if(!t)return null;const{sourceFile:r}=wl(n,e);return{id:n.id||void 0,selector:t,selectorIndex:P9(n.ownerDocument,n,t,r,e),sourceFile:r}}function VV(n){let e=n;for(;e;){if(e.classList.contains("clip")&&(!(e.hasAttribute("data-composition-src")||e.hasAttribute("data-composition-file"))||e===n))return e;e=e.parentElement}return null}function IV(n,e){if(e.preferClipAncestor){const t=VV(n);if(t)return t}return n}function LV(n,e){const t=[];for(const i of n)Si(i)&&jV(i)&&N1(i,e.activeCompositionPath)&&t.push(i);if(t.length===0)return null;let r=t[0];for(let i=1;i<t.length;i++){const a=t[i];r.contains(a)&&(r=a)}return r}function sr(n,e,t=null){if(e.id){const i=n.getElementById(e.id);if(Si(i)&&(!e.sourceFile||wl(i,t).sourceFile===e.sourceFile))return i}return e.selector?e.selector.startsWith(".")&&e.selectorIndex!=null?R8(n,e.selector).filter(a=>Si(a)&&(!e.sourceFile||wl(a,t).sourceFile===e.sourceFile))[e.selectorIndex]??null:R8(n,e.selector).filter(i=>Si(i)&&(!e.sourceFile||wl(i,t).sourceFile===e.sourceFile))[0]??null:null}function zV(n,e,t){var p;const r=typeof e.id=="string"?e.id:"",i=mS(e.compositionSrc)??((p=t.compIdToSrc)==null?void 0:p.get(r)),a=i??mS(e.sourceFile)??t.activeCompositionPath??"index.html",s=$8(r),o=i?$8(i):null,u=e.selector??(i?`[data-composition-src="${o}"],[data-composition-file="${o}"],[data-composition-id="${s}"]`:s?`[data-composition-id="${s}"]`:void 0);if(u||e.domId){const O=sr(n,{id:e.domId??void 0,selector:u,selectorIndex:e.selectorIndex,sourceFile:a},t.activeCompositionPath);if(O)return O}const d=!!(e.domId||e.selector||i);if(t.isMasterView||d||!t.activeCompositionPath)return null;const m=n.querySelector("[data-composition-id]");return Si(m)&&wl(m,t.activeCompositionPath).sourceFile===a?m:null}function BV(n,e){return Array.from(n.children).filter(t=>Si(t)&&N1(t,e.activeCompositionPath)!==null)}function Hg(n){return QV(n.tagName.toLowerCase())&&n.children.length===0}function HV(n,e,t,r){return r==="self"||t===1?"Content":`Text ${e+1}`}function Fg(n,e,t,r){const i=n.tagName.toLowerCase();return{key:n.getAttribute("data-hf-text-key")??`${r}:${e}:${i}`,label:HV(i,e,t,r),value:n.textContent??"",tagName:i,attributes:Array.from(n.attributes).filter(s=>s.name!=="style").map(s=>({name:s.name,value:s.value})),inlineStyles:v9(n),computedStyles:k9(n),source:r}}function FV(n){const e=Array.from(n.children).filter(Si).filter(Hg);if(e.length>0){if(Array.from(n.childNodes).some(r=>{var i;return r.nodeType===3&&((i=r.textContent)==null?void 0:i.trim())})){const r=[];let i=0;for(const a of n.childNodes)if(a.nodeType===3){const s=a.textContent??"";if(!s.trim())continue;r.push({key:`text-node:${i}`,label:`Text ${i+1}`,value:s,tagName:"#text",attributes:[],inlineStyles:{},computedStyles:{},source:"text-node"}),i++}else Si(a)&&Hg(a)&&(r.push(Fg(a,i,e.length,"child")),i++);return r}return e.map((r,i)=>Fg(r,i,e.length,"child"))}return Hg(n)?[Fg(n,0,1,"self")]:[]}function gS(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function XV(n){const e=Object.entries(n.inlineStyles).filter(([,t])=>!!t);return e.length===0?"":e.map(([t,r])=>`${t}: ${r}`).join("; ")}function OS(n){return n.filter(e=>e.source==="child"||e.source==="text-node").map(e=>{if(e.source==="text-node")return gS(e.value);const t=[...e.attributes.filter(a=>a.name!=="data-hf-text-key"),{name:"data-hf-text-key",value:e.key}].map(a=>` ${a.name}="${a.value.replace(/"/g,"&quot;")}"`).join(""),r=XV(e),i=r?` style="${r.replace(/"/g,"&quot;")}"`:"";return`<${e.tagName}${t}${i}>${gS(e.value)}</${e.tagName}>`}).join("")}function UV(n){var e,t,r,i;return{key:`child:new:${Date.now()}`,label:"Text",value:"New text",tagName:"span",attributes:[],inlineStyles:{"font-family":((e=n==null?void 0:n.computedStyles)==null?void 0:e["font-family"])??"inherit","font-size":((t=n==null?void 0:n.computedStyles)==null?void 0:t["font-size"])??"16px","font-weight":((r=n==null?void 0:n.computedStyles)==null?void 0:r["font-weight"])??"400",color:((i=n==null?void 0:n.computedStyles)==null?void 0:i.color)??"inherit"},computedStyles:{},source:"child"}}function qV(n){if(!n.selector)return{canSelect:!1,canEditStyles:!1,canMove:!1,canResize:!1,canApplyManualOffset:!1,canApplyManualSize:!1,canApplyManualRotation:!1,reasonIfDisabled:"Studio could not resolve a stable patch target for this element."};const e=n.computedStyles.position,t=xs(n.inlineStyles.left)??xs(n.computedStyles.left),r=xs(n.inlineStyles.top)??xs(n.computedStyles.top),i=xs(n.inlineStyles.width)??xs(n.computedStyles.width),a=xs(n.inlineStyles.height)??xs(n.computedStyles.height),s=!RV(n.computedStyles.transform),o=(e==="absolute"||e==="fixed")&&t!=null&&r!=null&&!s,u=o&&(i!=null||a!=null),d=!n.isCompositionHost,m=d,p=d,O=d,b=d?void 0:"Select an internal layer to transform it.";return n.isCompositionHost&&n.isMasterView?{canSelect:!0,canEditStyles:!1,canMove:o,canResize:u,canApplyManualOffset:m,canApplyManualSize:p,canApplyManualRotation:O,reasonIfDisabled:b}:{canSelect:!0,canEditStyles:!0,canMove:o,canResize:u,canApplyManualOffset:m,canApplyManualSize:p,canApplyManualRotation:O,reasonIfDisabled:b}}function C9(n){const e=n.getAttribute("data-composition-id");if(e&&e!=="main")return Nd(e);const t=n.getAttribute("data-composition-src")??n.getAttribute("data-composition-file");if(t)return Nd(t);if(n.id)return Nd(n.id);const r=A9(n);if(r)return Nd(r.replace(/^\./,""));const i=(n.textContent??"").trim().replace(/\s+/g," ");return i?i.length>40?`${i.slice(0,39)}…`:i:n.tagName.toLowerCase()}function E9(n,e){var i;if(!n)return null;const t=n.ownerDocument;let r=IV(n,e);for(;r&&r!==t.body&&r!==t.documentElement;){const a=T9(r);if(!a){r=r.parentElement;continue}const{sourceFile:s,compositionPath:o}=wl(r,e.activeCompositionPath),u=P9(t,r,a,s,e.activeCompositionPath),d=r.getAttribute("data-composition-src")??r.getAttribute("data-composition-file")??void 0,m=v9(r),p=k9(r),O=FV(r),b=qV({selector:a,tagName:r.tagName.toLowerCase(),className:r.className,inlineStyles:m,computedStyles:p,isCompositionHost:!!d,isMasterView:e.isMasterView}),S=r.getBoundingClientRect();return{element:r,id:r.id||void 0,selector:a,selectorIndex:u,sourceFile:s,compositionPath:o,compositionSrc:d,isCompositionHost:!!d,label:C9(r),tagName:r.tagName.toLowerCase(),boundingBox:{x:S.left,y:S.top,width:S.width,height:S.height},textContent:((i=r.textContent)==null?void 0:i.trim())||null,dataAttributes:_V(r),inlineStyles:m,computedStyles:p,textFields:O,capabilities:b}}return null}function M9(n){const e=n.selectorIndex??0;return`${n.sourceFile}:${n.id??n.selector??"layer"}:${e}`}function YV(n,e,t=80){if(!n)return[];const r=[],i=(a,s)=>{if(r.length>=t)return;const o=N1(a,e.activeCompositionPath);o&&r.push({key:M9(o),element:a,label:C9(a),tagName:a.tagName.toLowerCase(),depth:s,childCount:BV(a,e).length,id:o.id??void 0,selector:o.selector??void 0,selectorIndex:o.selectorIndex,sourceFile:o.sourceFile});const u=o?s+1:s;for(const d of Array.from(a.children))if(Si(d)&&(i(d,u),r.length>=t))return};return i(n,0),r}function jd(n,e){return{type:"inline-style",property:n,value:e}}function yS(n){return{type:"text-content",property:"text",value:n}}function hi(n){return[n.sourceFile||"index.html",n.id??"",n.selector??"",n.selectorIndex??""].join("|")}function b6(n){return n.textFields.length>0&&!n.isCompositionHost}function WV(n){return`x=${Math.round(n.x)}, y=${Math.round(n.y)}, width=${Math.round(n.width)}, height=${Math.round(n.height)}`}function bS(n){return Object.entries(n).filter(([,e])=>e&&e!=="initial").map(([e,t])=>`${e}: ${t}`).join(`
328
- `)}function GV(n){return n.map(e=>`- key=${e.key}; tag=<${e.tagName}>; source=${e.source}; text=${JSON.stringify(e.value)}`).join(`
329
- `)}function KV({selection:n,currentTime:e,tagSnippet:t,selectionContext:r,userInstruction:i,sourceFilePath:a}){const s=(a==null?void 0:a.trim())||n.sourceFile,o=["## HyperFrames element edit request v1","Schema version: 1","",(i==null?void 0:i.trim())||"Edit this selected HyperFrames element.","",`Composition: ${n.compositionPath}`,`Playback time: ${$n(e)}`,`Source file: ${s}`,`DOM id: ${n.id??"(none)"}`,`Selector: ${n.selector??"(none)"}`,`Selector index: ${n.selectorIndex??0}`,`Tag: <${n.tagName}>`,`Bounds: ${WV(n.boundingBox)}`];n.textContent&&o.push(`Text: ${n.textContent}`);const u=r==null?void 0:r.trim();u&&o.push("","Selection context:",u);const d=GV(n.textFields);d&&o.push("","Text fields:",d);const m=bS(n.inlineStyles);m&&o.push("","Inline styles:",m);const p=bS(n.computedStyles);return p&&o.push("","Computed styles (browser-resolved):",p),t&&o.push("","Target HTML:",t),o.push("","Guardrails:","- Make a targeted change to this element only.","- Preserve the rest of the composition and its timing.","- Do not modify other elements' data-* attributes or positioning.","- Prefer existing inline styles or existing CSS rules for this element over adding unrelated selectors."),o.join(`
330
- `)}function JV({activeCompPath:n,projectDir:e,projectIdRef:t,currentTime:r,showToast:i,domEditSelectionRef:a,domEditSelection:s}){const[o,u]=h.useState(),[d,m]=h.useState(),[p,O]=h.useState(null),[b,S]=h.useState(!1),[k,T]=h.useState(!1),w=h.useRef(null),A=h.useCallback(async P=>{const $=t.current;if(!$)return;const M=P.sourceFile||n||"index.html";try{const R=await fetch(`/api/projects/${$}/files/${encodeURIComponent(M)}`);if(!R.ok)return;const Z=(await R.json()).content,D=typeof Z=="string"?yD(Z,P):void 0;u(I=>a.current!==P?I:D)}catch{}},[n,a,t]),E=h.useCallback(()=>{s&&(u(void 0),m(void 0),O(null),A(s),T(!0))},[s,A]),C=h.useCallback(async P=>{if(!s)return;const $=s.sourceFile||n||"index.html",M=o??s.element.outerHTML,R=KV({selection:s,currentTime:r,tagSnippet:M,selectionContext:d,userInstruction:P,sourceFilePath:yV(e,$)});if(!await A0(R)){i("Could not copy prompt to clipboard.","error");return}T(!1),m(void 0),O(null),w.current&&clearTimeout(w.current),S(!0),w.current=setTimeout(()=>S(!1),1600)},[n,d,o,r,s,e,i]);return h.useEffect(()=>{u(void 0),m(void 0),O(null),S(!1)},[s]),h.useEffect(()=>()=>{w.current&&clearTimeout(w.current)},[]),{agentModalOpen:k,agentModalAnchorPoint:p,copiedAgentPrompt:b,agentPromptSelectionContext:d,setAgentModalOpen:T,setAgentPromptSelectionContext:m,setAgentModalAnchorPoint:O,preloadAgentPromptSnippet:A,handleAskAgent:E,handleAgentModalSubmit:C}}function eI(n,e,t,r,i){const a=n.getBoundingClientRect(),s=e.querySelector("[data-composition-id]")??e.documentElement??null,o=s==null?void 0:s.getBoundingClientRect(),u=(o==null?void 0:o.width)||t.innerWidth,d=(o==null?void 0:o.height)||t.innerHeight;if(!u||!d)return null;const m=a.width/u,p=a.height/d;return{x:(r-a.left)/m,y:(i-a.top)/p,viewport:{width:u,height:d}}}const tI="__hf_studio_pointer_events_override__";function nI(n){try{const e=n.createElement("style");return e.id=tI,e.textContent="* { pointer-events: auto !important; }",n.head.appendChild(e),e}catch{return null}}function rI(n){try{n==null||n.remove()}catch{}}function iI(n,e,t,r){let i=null,a=null;try{i=n.contentDocument,a=n.contentWindow}catch{return null}if(!i||!a)return null;const s=eI(n,i,a,e,t);if(!s)return null;const o=nI(i);try{if(typeof i.elementsFromPoint=="function"){const d=LV(i.elementsFromPoint(s.x,s.y),{activeCompositionPath:r});if(d)return d}const u=b9(i.elementFromPoint(s.x,s.y));return!u||!N1(u,r)||!y6(u)?null:u}finally{rI(o)}}function Zd(n){return n&&(typeof n=="object"||typeof n=="function")?n:null}function Xg(n,e){const t=n?Reflect.get(n,e):null;if(typeof t=="function")try{t.call(n)}catch{}}function Ug(n,e){const t=n?Reflect.get(n,e):null;if(typeof t!="function")return null;try{const r=t.call(n);return typeof r=="number"&&Number.isFinite(r)?r:null}catch{return null}}function aI(n){const e=n==null?void 0:n.contentWindow;if(!e)return null;try{const t=Zd(Reflect.get(e,"__player")),r=Ug(t,"getTime");if(typeof(t?Reflect.get(t,"pause"):null)=="function")return Xg(t,"pause"),r;let a=null;const s=Zd(Reflect.get(e,"__timeline"));a=a??Ug(s,"time"),Xg(s,"pause");const o=Zd(Reflect.get(e,"__timelines"));if(o)for(const u of Object.values(o)){const d=Zd(u);a=a??Ug(d,"time"),Xg(d,"pause")}return a}catch{return null}}function bl(n,e){return n===e?!0:!n||!e?!1:hi(n)===hi(e)}function f0(n,e){return e?n.some(t=>bl(t,e)):!1}function sI(n,e){return f0(n,e)?n.filter(t=>!bl(t,e)):[...n,e]}function lI(n,e){let t=!1;const r=n.map(i=>bl(i,e)?(t=!0,e):i);return t?r:[...n,e]}function oI(n,e){return!e||f0(n,e)?n:[e,...n]}function cI({projectId:n,activeCompPath:e,isMasterView:t,compIdToSrc:r,captionEditMode:i,previewIframeRef:a,timelineElements:s,setSelectedTimelineElementId:o,setRightCollapsed:u,setRightPanelTab:d,previewIframe:m,refreshKey:p,rightPanelTab:O}){const[b,S]=h.useState(null),[k,T]=h.useState([]),[w,A]=h.useState(null),E=h.useRef(b),C=h.useRef(k),P=h.useRef(w);E.current=b,C.current=k,P.current=w;const $=h.useCallback((q,L)=>{if(!q){E.current=null,C.current=[],S(null),T([]),o(null);return}if(!yn){E.current=null,C.current=[],S(null),T([]),o(null);return}const W=!!(L!=null&&L.additive),ee=E.current,X=C.current,B=W?oI(X,ee):X,_=f0(B,q),j=L!=null&&L.preserveGroup?lI(B,q):W?sI(B,q):[q],H=L!=null&&L.preserveGroup?q:W&&_?bl(ee,q)?j[0]??null:f0(j,ee)?ee:j[0]??null:q;if(E.current=H,C.current=j,S(H),T(j),H){(L==null?void 0:L.revealPanel)!==!1&&(u(!1),O!=="layers"&&d("design"));const F=C8(H,s);o(F);return}o(null)},[o,s,u,d,O]),M=h.useCallback(()=>{$(null,{revealPanel:!1})},[$]),R=h.useCallback((q,L)=>E9(q,{activeCompositionPath:e,isMasterView:t,preferClipAncestor:L==null?void 0:L.preferClipAncestor}),[e,t]),N=h.useCallback((q,L,W)=>{const ee=a.current;if(!ee||i)return null;const X=iI(ee,q,L,e);return X?R(X,{preferClipAncestor:W==null?void 0:W.preferClipAncestor}):null},[e,R,i,a]),Z=h.useCallback(q=>{bl(P.current,q)||(P.current=q,A(q))},[]),D=h.useCallback(q=>{const L=a.current;let W=null;try{W=(L==null?void 0:L.contentDocument)??null}catch{return null}if(!W)return null;const ee=zV(W,q,{activeCompositionPath:e,compIdToSrc:r,isMasterView:t});return ee?R(ee,{preferClipAncestor:!1}):null},[e,R,r,t,a]),I=h.useCallback(q=>{if(!yn)return;if(!q){$(null,{revealPanel:!1});return}const L=D(q);L&&$(L)},[$,D]),U=h.useCallback(q=>{const L=a.current;let W=null;try{W=(L==null?void 0:L.contentDocument)??null}catch{return}if(!W)return;const ee=sr(W,q,e);if(!ee)return;const X=R(ee);X&&$(X,{revealPanel:!1,preserveGroup:!0})},[e,$,R,a]),K=h.useCallback(q=>{const L=a.current;let W=null;try{W=(L==null?void 0:L.contentDocument)??null}catch{return}if(!W)return;const ee=[];for(const _ of q){const j=sr(W,_,e);if(!j)continue;const H=R(j);H&&ee.push(H)}if(ee.length===0)return;const X=E.current,B=ee.find(_=>bl(_,X))??ee[0]??null;E.current=B,C.current=ee,S(B),T(ee),o(B?C8(B,s):null)},[e,R,o,s,a]);return h.useEffect(()=>{i&&Z(null)},[i,Z]),h.useEffect(()=>{Z(null)},[e,n,m,p,Z]),h.useEffect(()=>{if(!w)return;const q=bl(w,b),L=f0(k,w);!q&&!L||Z(null)},[k,w,b,Z]),h.useEffect(()=>{w&&(w.element.isConnected||Z(null))},[w,Z]),h.useEffect(()=>{i&&$(null,{revealPanel:!1})},[$,i]),h.useEffect(()=>{yn||(Z(null),$(null,{revealPanel:!1}),O!=="renders"&&d("renders"))},[$,O,Z,d]),{domEditSelection:b,domEditGroupSelections:k,domEditHoverSelection:w,domEditSelectionRef:E,domEditGroupSelectionsRef:C,domEditHoverSelectionRef:P,setDomEditSelection:S,setDomEditGroupSelections:T,applyDomSelection:$,clearDomSelection:M,buildDomSelectionFromTarget:R,resolveDomSelectionFromPreviewPoint:N,updateDomEditHoverSelection:Z,buildDomSelectionForTimelineElement:D,handleTimelineElementSelect:I,refreshDomEditSelectionFromPreview:U,refreshDomEditGroupSelectionsFromPreview:K}}function uI({captionEditMode:n,compositionLoading:e,previewIframeRef:t,showToast:r,applyDomSelection:i,resolveDomSelectionFromPreviewPoint:a,updateDomEditHoverSelection:s,onClickToSource:o}){const u=h.useCallback((b,S)=>{if(!M8||n||e)return;const k=a(b.clientX,b.clientY,{preferClipAncestor:(S==null?void 0:S.preferClipAncestor)??!1});if(!k){b.shiftKey||i(null,{revealPanel:!1});return}b.preventDefault(),b.stopPropagation(),i(k,{additive:b.shiftKey}),!b.shiftKey&&b.altKey&&o&&o(k)},[i,n,e,o,a]),d=h.useCallback((b,S)=>{if(!M8||n||e)return s(null),null;const k=a(b.clientX,b.clientY,{preferClipAncestor:(S==null?void 0:S.preferClipAncestor)??!1});return s(k),k},[n,e,a,s]),m=h.useCallback(()=>{s(null)},[s]),p=h.useCallback(b=>{r(b.capabilities.reasonIfDisabled??"This element can't be adjusted directly from the preview.","info")},[r]),O=h.useCallback(()=>{const b=aI(t.current),S=Ae.getState();S.setIsPlaying(!1),b!=null&&(S.setCurrentTime(b),Kr.notify(b))},[t]);return{handlePreviewCanvasMouseDown:u,handlePreviewCanvasPointerMove:d,handlePreviewCanvasPointerLeave:m,handleBlockedDomMove:p,handleDomManualDragStart:O}}const xS=["ABeeZee","Abel","Abril Fatface","Alegreya","Alegreya Sans","Anton","Archivo","Archivo Black","Arimo","Assistant","Barlow","Barlow Condensed","Bebas Neue","Bitter","Bricolage Grotesque","Cabin","Cardo","Catamaran","Caveat","Chivo","Cormorant Garamond","Crimson Text","Dancing Script","DM Sans","DM Serif Display","Domine","EB Garamond","Exo 2","Figtree","Fira Code","Fira Sans","Fraunces","Fredoka","IBM Plex Mono","IBM Plex Sans","IBM Plex Serif","Inconsolata","Instrument Sans","Instrument Serif","Inter","JetBrains Mono","Josefin Sans","Jost","Kanit","Karla","Lato","League Gothic","Lexend","Libre Baskerville","Libre Franklin","Lora","Manrope","Merriweather","Montserrat","Mukta","Mulish","Newsreader","Noto Sans","Noto Sans JP","Noto Serif","Nunito","Nunito Sans","Open Sans","Oswald","Outfit","Overpass","Pacifico","Pathway Extreme","Permanent Marker","Playfair Display","Plus Jakarta Sans","Poppins","Prata","PT Sans","PT Serif","Public Sans","Quicksand","Raleway","Red Hat Display","Roboto","Roboto Condensed","Roboto Mono","Roboto Serif","Rubik","Schibsted Grotesk","Signika","Source Code Pro","Source Sans 3","Source Serif 4","Space Grotesk","Space Mono","Spectral","Sora","Syne","Teko","Titillium Web","Ubuntu","Ubuntu Mono","Unbounded","Urbanist","Varela Round","Work Sans","Young Serif","Zilla Slab"],Q8=["TT Norms Pro","SF Pro Display","SF Pro Text","Avenir","Avenir Next","Helvetica Neue","Arial","Georgia","Times New Roman","Menlo","Monaco","Courier New"];function $9(n){return`https://fonts.googleapis.com/css2?family=${encodeURIComponent(n.trim()).replace(/%20/g,"+")}:wght@300;400;500;600;700;800;900&display=swap`}const fI=new Set(["inherit","initial","revert","revert-layer","serif","sans-serif","monospace","cursive","fantasy","system-ui","ui-sans-serif","ui-serif","ui-monospace","ui-rounded","emoji","math","fangsong"]);function dI(n){return(n.split(",")[0]??"").trim().replace(/^["']|["']$/g,"")}function hI(n){var e;return((e=n.split(",")[0])==null?void 0:e.trim().replace(/^["']|["']$/g,"").trim())??""}function SS(n,e){const t=dI(e);if(!t||fI.has(t.toLowerCase()))return;const r=`studio-preview-google-font-${t.toLowerCase().replace(/[^a-z0-9]+/g,"-")}`;if(n.getElementById(r))return;const i=n.createElement("link");i.id=r,i.rel="stylesheet",i.href=$9(t),n.head.appendChild(i)}function kS(n,e){const t=`studio-imported-font-${e.family.toLowerCase().replace(/[^a-z0-9]+/g,"-")}`;if(n.getElementById(t))return;const r=n.createElement("style");r.id=t,r.textContent=a6(e),n.head.appendChild(r)}function vS(n,e,t){const r=a6(e,gV(t,e.path));if(n.includes(r))return n;const a=/<style\b[^>]*data-hf-studio-fonts=(["'])true\1[^>]*>([\s\S]*?)<\/style>/i.exec(n);if(a){const o=`${a[2].trim()}
331
- ${r}`.trim();return n.replace(a[0],`<style data-hf-studio-fonts="true">
332
- ${o}
333
- </style>`)}const s=`<style data-hf-studio-fonts="true">
334
- ${r}
335
- </style>`;return/<\/head>/i.test(n)?n.replace(/<\/head>/i,` ${s}
336
- </head>`):`${s}
337
- ${n}`}function mI({activeCompPath:n,previewIframeRef:e,domEditSelection:t,applyDomSelection:r,refreshDomEditSelectionFromPreview:i,buildDomSelectionFromTarget:a,persistDomEditOperations:s,resolveImportedFontAsset:o}){const u=h.useRef(0),d=h.useCallback(async(w,A)=>{if(!t||bV(w)||!t.capabilities.canEditStyles)return;const E=w==="font-family"?o(A):null,C=e.current,P=C==null?void 0:C.contentDocument;if(P){const R=sr(P,t,n);R&&(R.style.setProperty(w,zg(w,A)),w==="font-family"&&(SS(P,A),E&&kS(P,E)),w==="background-image"&&lS(A)&&(R.style.setProperty("background-position","center"),R.style.setProperty("background-repeat","no-repeat"),R.style.setProperty("background-size","contain")))}const $=[jd(w,zg(w,A))];w==="background-image"&&lS(A)&&$.push(jd("background-position","center"),jd("background-repeat","no-repeat"),jd("background-size","contain"));const M=w!=="z-index";try{await s(t,$,{label:"Edit layer style",skipRefresh:M,prepareContent:E?(R,N)=>vS(R,E,N):void 0})}catch(R){console.warn("[Studio] Style persist failed:",R instanceof Error?R.message:R)}i(t)},[n,t,s,i,o,e]),m=h.useCallback(async(w,A)=>{if(!t)return;const E=e.current,C=E==null?void 0:E.contentDocument;if(C){const $=sr(C,t,n);$&&$.setAttribute(`data-${w}`,A)}const P={type:"attribute",property:w,value:A};try{await s(t,[P],{label:`Edit ${w.replace(/-/g," ")}`,coalesceKey:`attr:${w}:${hi(t)}`,skipRefresh:!1})}catch($){console.warn("[Studio] Attribute persist failed:",$ instanceof Error?$.message:$)}i(t)},[n,t,s,i,e]),p=h.useCallback(async(w,A)=>{if(!t)return;const E=e.current,C=E==null?void 0:E.contentDocument;if(C){const $=sr(C,t,n);$&&(A===null||A===""||A==="false"?$.removeAttribute(w):$.setAttribute(w,A))}const P={type:"html-attribute",property:w,value:A};try{await s(t,[P],{label:`Edit ${w}`,coalesceKey:`html-attr:${w}:${hi(t)}`,skipRefresh:!1})}catch($){console.warn("[Studio] HTML attribute persist failed:",$ instanceof Error?$.message:$)}i(t)},[n,t,s,i,e]),O=h.useCallback(async(w,A)=>{if(!t||!b6(t))return;const E=u.current+1;u.current=E;const C=t.textFields.length>0?t.textFields.map(R=>R.key===A?{...R,value:w}:R):[],P=C.length>1||C.some(R=>R.source==="child")?OS(C):w,$=e.current,M=$==null?void 0:$.contentDocument;if(M){const R=sr(M,t,n);R&&(C.length>1||C.some(N=>N.source==="child")?R.innerHTML=P:R.textContent=w)}if(await s(t,[yS(P)],{label:"Edit text",skipRefresh:!0,shouldSave:()=>u.current===E}),u.current===E&&M){const R=sr(M,t,n);if(R){const N=a(R);N&&r(N,{revealPanel:!1,preserveGroup:!0})}}},[n,r,a,t,s,e]),b=h.useCallback(async(w,A,E)=>{var R;const C=A.length>1||A.some(N=>N.source==="child")?OS(A):((R=A[0])==null?void 0:R.value)??"",P=e.current,$=P==null?void 0:P.contentDocument;if($){const N=sr($,w,n);N&&(A.length>1||A.some(Z=>Z.source==="child")?N.innerHTML=C:N.textContent=C)}const M=(E==null?void 0:E.importedFont)??null;if(await s(w,[yS(C)],{label:"Edit text",skipRefresh:!0,prepareContent:M?(N,Z)=>vS(N,M,Z):void 0}),$){const N=sr($,w,n);if(N){const Z=a(N);Z&&r(Z,{revealPanel:!1,preserveGroup:!0})}}},[n,r,a,s,e]),S=h.useCallback(async(w,A,E)=>{var R;if(!t)return;const C=t.textFields.find(N=>N.key===w);if(!C)return;if(C.source==="self"){await d(A,E);return}const P=zg(A,E),$=A==="font-family"?o(E):null;if(A==="font-family"){const N=(R=e.current)==null?void 0:R.contentDocument;N&&(SS(N,P),$&&kS(N,$))}const M=t.textFields.map(N=>N.key===w?{...N,inlineStyles:{...N.inlineStyles,[A]:P},computedStyles:{...N.computedStyles,[A]:P}}:N);await b(t,M,{importedFont:$})},[b,t,d,o,e]),k=h.useCallback(async w=>{if(!t||!t.textFields.some($=>$.source==="child"))return null;const A=t.textFields.findIndex($=>$.key===w),E=t.textFields[A>=0?A:0]??t.textFields[0],C=UV(E),P=[...t.textFields];return P.splice(A>=0?A+1:P.length,0,C),await b(t,P),C.key},[b,t]),T=h.useCallback(async w=>{if(!t)return;const A=t.textFields.find(C=>C.key===w);if(!A)return;if(A.source==="self"){await O("",w);return}const E=t.textFields.filter(C=>C.key!==w);await b(t,E)},[b,t,O]);return{handleDomStyleCommit:d,handleDomAttributeCommit:m,handleDomHtmlAttributeCommit:p,handleDomTextCommit:O,commitDomTextFields:b,handleDomTextFieldStyleCommit:S,handleDomAddTextField:k,handleDomRemoveTextField:T}}function pI({activeCompPath:n,previewIframeRef:e,showToast:t,queueDomEditSave:r,writeProjectFile:i,domEditSaveTimestampRef:a,editHistory:s,fileTree:o,importedFontAssetsRef:u,projectId:d,projectIdRef:m,reloadPreview:p,domEditSelection:O,applyDomSelection:b,clearDomSelection:S,refreshDomEditSelectionFromPreview:k,buildDomSelectionFromTarget:T}){const w=h.useCallback(B=>{const _=hI(B);if(!_)return null;const j=u.current.find(F=>F.family.toLowerCase()===_.toLowerCase());if(j)return j;const H=o.find(F=>mh.test(F)&&Sc(F).toLowerCase()===_.toLowerCase());return H?{family:Sc(H),path:H,url:`/api/projects/${d}/preview/${H}`}:null},[o,d,u]),A=h.useCallback(async(B,_,j)=>{const H=m.current;if(!H)throw new Error("No active project");if(j!=null&&j.shouldSave&&!j.shouldSave())return;const F=B.sourceFile||n||"index.html",Y=await fetch(`/api/projects/${H}/files/${encodeURIComponent(F)}`);if(!Y.ok)throw new Error(`Failed to read ${F}`);const ie=(await Y.json()).content;if(typeof ie!="string")throw new Error(`Missing file contents for ${F}`);let Oe=ie;for(const de of _)Oe=Bo(Oe,B,de);if(j!=null&&j.prepareContent&&(Oe=j.prepareContent(Oe,F)),!(j!=null&&j.shouldSave&&!j.shouldSave())){if(Oe===ie)throw new Error(`Unable to patch ${B.selector??B.id??"selection"}`);await _s({projectId:H,label:(j==null?void 0:j.label)??"Edit layer",kind:"manual",coalesceKey:j==null?void 0:j.coalesceKey,files:{[F]:Oe},readFile:async()=>ie,writeFile:i,recordEdit:s.recordEdit}),j!=null&&j.skipRefresh?a.current=Date.now():p()}},[n,s.recordEdit,i,m,a,p]),{handleDomStyleCommit:E,handleDomAttributeCommit:C,handleDomHtmlAttributeCommit:P,handleDomTextCommit:$,commitDomTextFields:M,handleDomTextFieldStyleCommit:R,handleDomAddTextField:N,handleDomRemoveTextField:Z}=mI({activeCompPath:n,previewIframeRef:e,domEditSelection:O,applyDomSelection:b,refreshDomEditSelectionFromPreview:k,buildDomSelectionFromTarget:T,persistDomEditOperations:A,resolveImportedFontAsset:w}),D=h.useCallback((B,_,j)=>{r(async()=>{await A(B,_,{label:j.label,coalesceKey:j.coalesceKey,skipRefresh:j.skipRefresh??!0})}).catch(H=>{const F=H instanceof Error?H.message:"Failed to save position";t(F)})},[A,r,t]),I=h.useCallback((B,_)=>{Bh(B.element,_),D(B,aS(B.element),{label:"Move layer",coalesceKey:`path-offset:${hi(B)}`})},[D]),U=h.useCallback(B=>{if(B.length===0)return;const _=B.map(j=>hi(j.selection)).sort().join(":");for(const{selection:j,next:H}of B)Bh(j.element,H),D(j,aS(j.element),{label:`Move ${B.length} layers`,coalesceKey:`group-path-offset:${_}`})},[D]),K=h.useCallback((B,_)=>{u6(B.element,_),D(B,JD(B.element),{label:"Resize layer box",coalesceKey:`box-size:${hi(B)}`})},[D]),q=h.useCallback((B,_)=>{d6(B.element,_),D(B,tV(B.element),{label:"Rotate layer",coalesceKey:`rotation:${hi(B)}`})},[D]),L=h.useCallback(B=>{const _=B.element,j=[...KD(_),...eV(_),...nV(_)];uV(_),dV(_),fV(_),D(B,j,{label:"Reset layer edits",coalesceKey:`manual-reset:${hi(B)}`,skipRefresh:!1})},[D]),W=h.useCallback((B,_)=>{var F;DD(B.element,_);let j=null;try{j=((F=e.current)==null?void 0:F.contentDocument)??null}catch{}j&&v8(j);const H=rV(B.element);D(B,H,{label:"Set GSAP motion",coalesceKey:`motion:${hi(B)}`}),k(B)},[D,e,k]),ee=h.useCallback(B=>{var F,Y,ae;const _=iV(B.element);let j;try{j=(Y=(F=e.current)==null?void 0:F.contentWindow)==null?void 0:Y.gsap}catch{}VD(B.element,j);let H=null;try{H=((ae=e.current)==null?void 0:ae.contentDocument)??null}catch{}H&&v8(H),D(B,_,{label:"Clear GSAP motion",coalesceKey:`motion:${hi(B)}`,skipRefresh:!1}),k(B)},[D,e,k]),X=h.useCallback(async B=>{const _=m.current;if(!_)return;const j=B.label||B.id||B.selector||B.tagName,H=B.sourceFile||n||"index.html";try{const F=await fetch(`/api/projects/${_}/files/${encodeURIComponent(H)}`);if(!F.ok)throw new Error(`Failed to read ${H}`);const ae=(await F.json()).content;if(typeof ae!="string")throw new Error(`Missing file contents for ${H}`);const ie=B.id?{id:B.id,selector:B.selector,selectorIndex:B.selectorIndex}:B.selector?{selector:B.selector,selectorIndex:B.selectorIndex}:{};if(!ie.id&&!ie.selector)throw new Error("Selected element has no patchable target");const Oe=await fetch(`/api/projects/${_}/file-mutations/remove-element/${encodeURIComponent(H)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({target:ie})});if(!Oe.ok)throw new Error(`Failed to delete element from ${H}`);const de=await Oe.json(),me=typeof de.content=="string"?de.content:ae;a.current=Date.now(),await _s({projectId:_,label:"Delete element",kind:"timeline",files:{[H]:me},readFile:async()=>ae,writeFile:i,recordEdit:s.recordEdit}),S(),Ae.getState().setSelectedElementId(null),p(),t(`Deleted ${j}. Use Undo to restore it.`,"info")}catch(F){const Y=F instanceof Error?F.message:"Failed to delete element";t(Y)}},[n,S,a,s.recordEdit,m,p,t,i]);return{resolveImportedFontAsset:w,handleDomStyleCommit:E,handleDomAttributeCommit:C,handleDomHtmlAttributeCommit:P,handleDomTextCommit:$,commitDomTextFields:M,handleDomTextFieldStyleCommit:R,handleDomAddTextField:N,handleDomRemoveTextField:Z,handleDomPathOffsetCommit:I,handleDomGroupPathOffsetCommit:U,handleDomBoxSizeCommit:K,handleDomRotationCommit:q,handleDomManualEditsReset:L,handleDomMotionCommit:W,handleDomMotionClear:ee,handleDomEditElementDelete:X}}function gI({projectId:n,activeCompPath:e,isMasterView:t,compIdToSrc:r,captionEditMode:i,compositionLoading:a,previewIframeRef:s,timelineElements:o,currentTime:u,setSelectedTimelineElementId:d,setRightCollapsed:m,setRightPanelTab:p,showToast:O,refreshPreviewDocumentVersion:b,queueDomEditSave:S,readProjectFile:k,writeProjectFile:T,domEditSaveTimestampRef:w,editHistory:A,fileTree:E,importedFontAssetsRef:C,projectDir:P,projectIdRef:$,previewIframe:M,refreshKey:R,rightPanelTab:N,applyStudioManualEditsToPreviewRef:Z,syncPreviewHistoryHotkey:D,reloadPreview:I,setRefreshKey:U,openSourceForSelection:K,selectSidebarTab:q}){const L=h.useCallback(Un=>{!K||!q||Un.sourceFile&&(q("code"),K(Un.sourceFile,{id:Un.id,selector:Un.selector,selectorIndex:Un.selectorIndex}))},[K,q]),{domEditSelection:W,domEditGroupSelections:ee,domEditHoverSelection:X,domEditSelectionRef:B,applyDomSelection:_,clearDomSelection:j,buildDomSelectionFromTarget:H,resolveDomSelectionFromPreviewPoint:F,updateDomEditHoverSelection:Y,buildDomSelectionForTimelineElement:ae,handleTimelineElementSelect:ie,refreshDomEditSelectionFromPreview:Oe}=cI({projectId:n,activeCompPath:e,isMasterView:t,compIdToSrc:r,captionEditMode:i,previewIframeRef:s,timelineElements:o,setSelectedTimelineElementId:d,setRightCollapsed:m,setRightPanelTab:p,previewIframe:M,refreshKey:R,rightPanelTab:N}),{agentModalOpen:de,agentModalAnchorPoint:me,copiedAgentPrompt:Te,agentPromptSelectionContext:Ce,setAgentModalOpen:Ne,setAgentPromptSelectionContext:Xe,setAgentModalAnchorPoint:V,handleAskAgent:fe,handleAgentModalSubmit:te}=JV({activeCompPath:e,projectDir:P,projectIdRef:$,currentTime:u,showToast:O,domEditSelectionRef:B,domEditSelection:W}),{handlePreviewCanvasMouseDown:le,handlePreviewCanvasPointerMove:ce,handlePreviewCanvasPointerLeave:ge,handleBlockedDomMove:ye,handleDomManualDragStart:be}=uI({captionEditMode:i,compositionLoading:a,previewIframeRef:s,showToast:O,applyDomSelection:_,resolveDomSelectionFromPreviewPoint:F,updateDomEditHoverSelection:Y,onClickToSource:L}),{resolveImportedFontAsset:Me,handleDomStyleCommit:Pe,handleDomAttributeCommit:Ve,handleDomHtmlAttributeCommit:Ye,handleDomTextCommit:_e,handleDomTextFieldStyleCommit:Fe,handleDomAddTextField:_t,handleDomRemoveTextField:qt,handleDomPathOffsetCommit:In,handleDomGroupPathOffsetCommit:hr,handleDomBoxSizeCommit:mr,handleDomRotationCommit:Yt,handleDomManualEditsReset:Sn,handleDomMotionCommit:Mt,handleDomMotionClear:si,handleDomEditElementDelete:Hs}=pI({activeCompPath:e,previewIframeRef:s,showToast:O,queueDomEditSave:S,writeProjectFile:T,domEditSaveTimestampRef:w,editHistory:A,fileTree:E,importedFontAssetsRef:C,projectId:n,projectIdRef:$,reloadPreview:I,domEditSelection:W,applyDomSelection:_,clearDomSelection:j,refreshDomEditSelectionFromPreview:Oe,buildDomSelectionFromTarget:H});return h.useEffect(()=>{if(!M)return;const Un=()=>{if(!yn||i)return;const jr=B.current;if(!jr)return;let qn=null;try{qn=M.contentDocument}catch{return}if(!qn)return;const hn=sr(qn,jr,e);if(!hn){_(null,{revealPanel:!1});return}const pr=H(hn);pr&&_(pr,{revealPanel:!1,preserveGroup:!0})};D(M),Z.current(M),Un(),b();const li=()=>{D(M),Z.current(M),Un(),b()};return M.addEventListener("load",li),()=>{M.removeEventListener("load",li)}},[e,_,H,i,B,M,b,D,Z]),{domEditSelection:W,domEditGroupSelections:ee,domEditHoverSelection:X,agentModalOpen:de,agentModalAnchorPoint:me,copiedAgentPrompt:Te,agentPromptSelectionContext:Ce,domEditSelectionRef:B,handleTimelineElementSelect:ie,handlePreviewCanvasMouseDown:le,handlePreviewCanvasPointerMove:ce,handlePreviewCanvasPointerLeave:ge,applyDomSelection:_,clearDomSelection:j,handleDomStyleCommit:Pe,handleDomAttributeCommit:Ve,handleDomHtmlAttributeCommit:Ye,handleDomPathOffsetCommit:In,handleDomGroupPathOffsetCommit:hr,handleDomBoxSizeCommit:mr,handleDomRotationCommit:Yt,handleDomManualEditsReset:Sn,handleDomMotionCommit:Mt,handleDomMotionClear:si,handleDomTextCommit:_e,handleDomTextFieldStyleCommit:Fe,handleDomAddTextField:_t,handleDomRemoveTextField:qt,handleAskAgent:fe,handleAgentModalSubmit:te,handleBlockedDomMove:ye,handleDomManualDragStart:be,handleDomEditElementDelete:Hs,buildDomSelectionFromTarget:H,buildDomSelectionForTimelineElement:ae,updateDomEditHoverSelection:Y,resolveImportedFontAsset:Me,setAgentModalOpen:Ne,setAgentPromptSelectionContext:Xe,setAgentModalAnchorPoint:V}}const R9="Shift+T";function e0(n){var i,a,s;if(!n||typeof n!="object")return!1;const e=n,t=(i=e.tagName)==null?void 0:i.toLowerCase();if(t==="input"||t==="textarea"||t==="select"||e.isContentEditable)return!0;const r=(a=e.getAttribute)==null?void 0:a.call(e,"role");return r==="textbox"||r==="searchbox"||r==="combobox"?!0:!!((s=e.closest)!=null&&s.call(e,"input, textarea, select, [contenteditable='true'], [role='textbox'], .cm-editor"))}function OI(n){return n.metaKey||n.ctrlKey||n.altKey||!n.shiftKey||n.key.toLowerCase()!=="t"?!1:!e0(n.target)}function Q9(n){return`${n?"Hide":"Show"} timeline editor (${R9})`}function yI({toggleTimelineVisibility:n,handleTimelineElementDelete:e,handleDomEditElementDelete:t,domEditSelectionRef:r,editHistory:i,readOptionalProjectFile:a,readProjectFile:s,writeProjectFile:o,domEditSaveTimestampRef:u,showToast:d,syncHistoryPreviewAfterApply:m,waitForPendingDomEditSaves:p,leftSidebarRef:O,handleCopy:b,handlePaste:S,handleCut:k}){const T=h.useRef(null),w=h.useRef(void 0),A=h.useRef(null),E=h.useCallback(B=>{OI(B)&&(B.preventDefault(),n())},[n]),C=h.useCallback(async B=>B===S8?a(B):s(B),[a,s]),P=h.useCallback(async(B,_)=>{u.current=Date.now(),await o(B,_)},[u,o]),$=h.useCallback(async()=>{await p();const B=await i.undo({readFile:C,writeFile:P});if(!B.ok&&B.reason==="content-mismatch"){d("File changed outside Studio. Undo history was not applied.","info");return}B.ok&&B.label&&(await m(B.paths),d(`Undid ${B.label}`,"info"))},[i,C,d,m,p,P]),M=h.useCallback(async()=>{await p();const B=await i.redo({readFile:C,writeFile:P});if(!B.ok&&B.reason==="content-mismatch"){d("File changed outside Studio. Redo history was not applied.","info");return}B.ok&&B.label&&(await m(B.paths),d(`Redid ${B.label}`,"info"))},[i,C,d,m,p,P]),R=h.useRef(E);R.current=E;const N=h.useRef(e);N.current=e;const Z=h.useRef(t);Z.current=t;const D=h.useRef($);D.current=$;const I=h.useRef(M);I.current=M;const U=h.useRef(b);U.current=b;const K=h.useRef(S);K.current=S;const q=h.useRef(k);q.current=k,w.current=B=>{var _,j;if(R.current(B),B.metaKey||B.ctrlKey){if(!oS(B.target)){const F=B.key.toLowerCase();if(F==="z"&&!B.shiftKey){B.preventDefault(),D.current();return}if(F==="z"&&B.shiftKey||B.ctrlKey&&!B.metaKey&&F==="y"){B.preventDefault(),I.current();return}}if(B.key==="1"){B.preventDefault(),(_=O.current)==null||_.selectTab("compositions");return}if(B.key==="2"){B.preventDefault(),(j=O.current)==null||j.selectTab("assets");return}const H=B.key.toLowerCase();if(H==="c"&&!B.shiftKey&&!B.altKey&&!e0(B.target)){U.current()&&B.preventDefault();return}if(H==="v"&&!B.shiftKey&&!B.altKey&&!e0(B.target)){B.preventDefault(),K.current();return}if(H==="x"&&!B.shiftKey&&!B.altKey&&!e0(B.target)){(!!Ae.getState().selectedElementId||!!r.current)&&(B.preventDefault(),q.current());return}}if((B.key==="Delete"||B.key==="Backspace")&&!B.metaKey&&!B.ctrlKey&&!B.altKey&&!e0(B.target)){const{selectedElementId:H,elements:F}=Ae.getState();if(H){const ae=F.find(ie=>(ie.key??ie.id)===H);if(ae){B.preventDefault(),N.current(ae);return}}const Y=r.current;Y&&(B.preventDefault(),Z.current(Y))}},h.useEffect(()=>{function B(_){var j;(j=w.current)==null||j.call(w,_)}return window.addEventListener("keydown",B,!0),()=>window.removeEventListener("keydown",B,!0)},[]);const L=h.useCallback(B=>{var _;(_=w.current)==null||_.call(w,B)},[]),W=h.useCallback(B=>{const _=(B==null?void 0:B.contentWindow)??null;T.current!==_&&(T.current&&T.current.removeEventListener("keydown",L),T.current=_,_==null||_.addEventListener("keydown",L,!0))},[L]);h.useEffect(()=>()=>{T.current&&(T.current.removeEventListener("keydown",L),T.current=null)},[L]);const ee=h.useCallback(B=>{if(!(B.metaKey||B.ctrlKey)||oS(B.target))return;const _=B.key.toLowerCase();if(_==="z"&&!B.shiftKey){B.preventDefault(),D.current();return}(_==="z"&&B.shiftKey||B.ctrlKey&&!B.metaKey&&_==="y")&&(B.preventDefault(),I.current())},[]),X=h.useCallback(B=>{var H;(H=A.current)==null||H.call(A),A.current=null;const _=(B==null?void 0:B.contentWindow)??null;let j=null;try{j=(B==null?void 0:B.contentDocument)??null}catch{j=null}!_&&!j||(_==null||_.addEventListener("keydown",ee,!0),j==null||j.addEventListener("keydown",ee,!0),A.current=()=>{_==null||_.removeEventListener("keydown",ee,!0),j==null||j.removeEventListener("keydown",ee,!0)})},[ee]);return h.useEffect(()=>()=>{var B;(B=A.current)==null||B.call(A),A.current=null},[]),{handleUndo:$,handleRedo:M,syncPreviewTimelineHotkey:W,syncPreviewHistoryHotkey:X,handleTimelineToggleHotkey:E}}function bI(n,e,t,r){if(t){const s=r??0;let o=0,u=null;if(t.startsWith("#")){const d=t.slice(1);u=new RegExp(`<[a-z][^>]*\\bid="${d}"[^>]*>`,"gi")}else if(t.startsWith(".")){const d=t.slice(1);u=new RegExp(`<[a-z][^>]*\\bclass="[^"]*\\b${d}\\b[^"]*"[^>]*>`,"gi")}else if(t.startsWith("[")){const d=t.slice(1,-1);u=new RegExp(`<[a-z][^>]*\\b${d}[^>]*>`,"gi")}if(u){let d;for(;(d=u.exec(n))!==null;){if(o===s){const m=xI(n,d.index);if(m>0)return n.slice(0,m)+`
338
- `+e+n.slice(m)}o++}}}const a=/<[^>]*data-composition-id="[^"]+"[^>]*>/i.exec(n);if(a&&a.index!=null){const s=a.index+a[0].length;return n.slice(0,s)+e+n.slice(s)}return n+e}function xI(n,e){const t=n.indexOf(">",e);if(t<0)return-1;if(n[t-1]==="/")return t+1;const r=n.slice(e).match(/^<([a-z][a-z0-9]*)/i);if(!r)return-1;const i=r[1];let a=1,s=t+1;const o=new RegExp(`<${i}(?:\\s|>|/>)`,"gi"),u=new RegExp(`</${i}\\s*>`,"gi");for(;a>0&&s<n.length;){o.lastIndex=s,u.lastIndex=s;const d=o.exec(n),m=u.exec(n);if(!m)return-1;if(d&&d.index<m.index)n.lastIndexOf("/",n.indexOf(">",d.index))>d.index||a++,s=n.indexOf(">",d.index)+1;else{if(a--,a===0)return m.index+m[0].length;s=m.index+m[0].length}}return-1}function SI(n,e){const t=new Set(e);return n.replace(new RegExp('(?<=\\s)id="([^"]+)"',"g"),(r,i)=>{if(!t.has(i))return r;let a=2;for(;t.has(`${i}-${a}`);)a++;const s=`${i}-${a}`;return t.add(s),`id="${s}"`})}async function kI(n,e){const t=await fetch(`/api/projects/${n}/files/${encodeURIComponent(e)}`);if(!t.ok)throw new Error(`Failed to read ${e}`);const r=await t.json();if(typeof r.content!="string")throw new Error(`Missing file contents for ${e}`);return r.content}function vI(n,e){var i;let t=null;try{t=((i=n.current)==null?void 0:i.contentDocument)??null}catch{return null}if(!t)return null;let r=null;return e.id&&(r=t.getElementById(e.id)),!r&&e.selector&&(r=t.querySelectorAll(e.selector)[e.selectorIndex??0]??null),r&&"outerHTML"in r?r.outerHTML:null}function wI({projectId:n,activeCompPath:e,domEditSelectionRef:t,showToast:r,writeProjectFile:i,recordEdit:a,domEditSaveTimestampRef:s,reloadPreview:o,handleTimelineElementDelete:u,handleDomEditElementDelete:d,previewIframeRef:m}){const p=h.useRef(null),O=h.useRef(n);O.current=n;const b=h.useCallback(()=>{var E;const{selectedElementId:T,elements:w}=Ae.getState();if(T){const C=w.find(R=>(R.key??R.id)===T);if(!C)return!1;const P=C.sourceFile||e||"index.html";let $=null;try{const R=(E=m.current)==null?void 0:E.contentDocument;if(R){let N=null;C.domId&&(N=R.getElementById(C.domId)),!N&&C.selector&&(N=R.querySelectorAll(C.selector)[C.selectorIndex??0]??null),N&&"outerHTML"in N&&($=N.outerHTML)}}catch{}if(!$)return r("Unable to copy this element.","info"),!1;const M={kind:"timeline-clip",html:$,sourceFile:P};return p.current=M,r("Copied clip","info"),!0}const A=t.current;if(A){const C=vI(m,A);if(!C)return r("Unable to copy this element.","info"),!1;const P=A.sourceFile||e||"index.html",$={kind:"dom-element",html:C,sourceFile:P,originSelector:A.selector,originSelectorIndex:A.selectorIndex};return p.current=$,r("Copied element","info"),!0}return!1},[e,t,m,r]),S=h.useCallback(async()=>{const T=p.current;if(!T){r("Nothing to paste.","info");return}const w=O.current;if(!w)return;const A=e||"index.html";try{const E=await kI(w,A),C=g6(E),P=SI(T.html,C);let $;if(T.kind==="timeline-clip"){const{currentTime:M}=Ae.getState(),R=P.indexOf(">"),D=(R>=0?P.slice(0,R+1):P).replace(/data-start="[^"]*"/,`data-start="${ir(M)}"`)+P.slice(R+1);$=zO(E,D)}else $=bI(E,P,T.originSelector,T.originSelectorIndex);s.current=Date.now(),await _s({projectId:w,label:T.kind==="timeline-clip"?"Paste clip":"Paste element",kind:"timeline",files:{[A]:$},readFile:async()=>E,writeFile:i,recordEdit:a}),o(),r(T.kind==="timeline-clip"?"Pasted clip":"Pasted element","info")}catch(E){const C=E instanceof Error?E.message:"Failed to paste";r(C)}},[e,s,a,o,r,i]),k=h.useCallback(async()=>{if(!b())return!1;const{selectedElementId:w,elements:A}=Ae.getState();if(w){const C=A.find(P=>(P.key??P.id)===w);if(C)return await u(C),!0}const E=t.current;return E&&await d(E),!0},[b,t,u,d]);return{handleCopy:b,handlePaste:S,handleCut:k}}const _9={fontFamily:"sans-serif",fontSize:48,fontWeight:700,fontStyle:"normal",textDecoration:"none",textTransform:"none",letterSpacing:0,lineHeight:1.2,color:"#ffffff",activeColor:"#ffffff",dimColor:"rgba(255, 255, 255, 0.3)",opacity:1,gradientFill:null,strokeWidth:0,strokeColor:"#000000",shadows:[],glow:null,x:0,y:0,rotation:0,scaleX:1,scaleY:1,skewX:0,skewY:0,transformOrigin:"center center",blendMode:"normal"},TI={backgroundColor:"transparent",backgroundOpacity:0,paddingTop:0,paddingRight:0,paddingBottom:0,paddingLeft:0,borderRadius:0,borderWidth:0,borderColor:"transparent",borderStyle:"solid",boxShadow:"none"},wS={preset:"fade",duration:.2,ease:"power2.out",stagger:0,staggerDirection:"start",intensity:1},No={entrance:wS,highlight:null,exit:{...wS}};function AI(n,e){const{width:t,height:r,duration:i,wordsPerGroup:a=5}=e,s=new Map,o=new Map,u=[];for(let d=0;d<n.length;d+=a){const m=n.slice(d,d+a),p=`group-${d/a}`,O=[];m.forEach((S,k)=>{const T=`segment-${d+k}`,w={id:T,wordId:S.id??`w${d+k}`,text:S.text,start:S.start,end:S.end,groupIndex:k,style:{},animation:{}};s.set(T,w),O.push(T)});const b={id:p,segmentIds:O,style:{..._9},animation:{entrance:{...No.entrance},highlight:No.highlight,exit:{...No.exit}},containerStyle:{...TI}};o.set(p,b),u.push(p)}return{width:t,height:r,duration:i,segments:s,groups:o,groupOrder:u,defaultAnimation:{entrance:{...No.entrance},highlight:No.highlight,exit:{...No.exit}}}}function PI(n){const e=/(?:const|let|var)\s+(?:TRANSCRIPT|script)\s*=\s*(\[[\s\S]*?\]);/,t=n.match(e);if(!t)return[];const r=t[1];try{return EI(r)}catch{return[]}}function CI(n,e,t,r,i,a){const s=PI(t);if(s.length===0)return null;const o=n.querySelectorAll(".caption-group, .caption-line, .caption-block"),u=n.querySelectorAll(".word, .caption-word");let d=5;o.length>0&&u.length>0&&(d=Math.round(u.length/o.length),d<1&&(d=1));const m=AI(s,{width:r,height:i,duration:a,wordsPerGroup:d}),p=u.item(0),O=o.item(0),b=p??O;if(b){const S=e.getComputedStyle(b),k={},T=parseFloat(S.fontSize);!isNaN(T)&&T>0&&(k.fontSize=T);const w=S.fontWeight;if(w){const M=parseInt(w,10);k.fontWeight=isNaN(M)?w:M}const A=S.fontFamily;A&&(k.fontFamily=A);const E=S.color;E&&(k.color=E);const C=S.textTransform;(C==="none"||C==="uppercase"||C==="lowercase"||C==="capitalize")&&(k.textTransform=C);const P=S.letterSpacing;if(P&&P!=="normal"){const M=parseFloat(P),R=k.fontSize??_9.fontSize;!isNaN(M)&&R>0&&(k.letterSpacing=M/R)}const $={};if(O){const M=e.getComputedStyle(O),R=M.backgroundColor;R&&R!=="rgba(0, 0, 0, 0)"&&R!=="transparent"&&($.backgroundColor=R,$.backgroundOpacity=1);const N=parseFloat(M.borderRadius);!isNaN(N)&&N>0&&($.borderRadius=N);const Z=parseFloat(M.paddingTop),D=parseFloat(M.paddingRight),I=parseFloat(M.paddingBottom),U=parseFloat(M.paddingLeft);isNaN(Z)||($.paddingTop=Z),isNaN(D)||($.paddingRight=D),isNaN(I)||($.paddingBottom=I),isNaN(U)||($.paddingLeft=U)}for(const M of m.groupOrder){const R=m.groups.get(M);R&&(R.style={...R.style,...k},R.containerStyle={...R.containerStyle,...$})}}return m}function EI(n){let e;try{e=JSON.parse(n)}catch{let r=n;r=r.replace(/'((?:[^'\\]|\\.)*)'/g,(i,a)=>`"${a.replace(/\\'/g,"'").replace(/"/g,'\\"')}"`),r=r.replace(/([{,]\s*)([a-zA-Z_$][a-zA-Z0-9_$]*)\s*:/g,'$1"$2":'),r=r.replace(/,(\s*[}\]])/g,"$1"),e=JSON.parse(r)}if(!Array.isArray(e))return[];const t=[];for(const r of e)if(r!==null&&typeof r=="object"&&typeof r.text=="string"&&typeof r.start=="number"&&typeof r.end=="number"){const i=r;t.push({...typeof i.id=="string"?{id:i.id}:{},text:i.text,start:i.start,end:i.end})}return t}function MI({projectId:n,activeCompPath:e,compIdToSrc:t,captionEditMode:r,captionHasSelection:i,previewIframeRef:a,captionSync:s,setRightCollapsed:o}){h.useEffect(()=>{if(!n)return;let u=!1;const d=()=>{if(ht.getState().isEditMode||u)return;const p=a.current;let O=null,b=null;try{O=(p==null?void 0:p.contentDocument)??null,b=(p==null?void 0:p.contentWindow)??null}catch{return}if(!O||!b||O.querySelectorAll(".caption-group").length===0)return;let k=null;const T=O.querySelectorAll("[data-composition-src], [data-composition-file]");for(const A of T){const E=A.getAttribute("data-composition-src")||A.getAttribute("data-composition-file");if(E&&E.includes("captions")){k=E;break}}if(!k){for(const[A,E]of t)if(A.includes("caption")||E.includes("caption")){k=E;break}}if(!k&&(e!=null&&e.includes("captions"))&&(k=e),!k){const A=O.querySelector('[data-composition-id*="caption"]');if(A){const E=A.getAttribute("data-composition-id")||"";k=t.get(E)||null}}if(!k)return;u=!0;const w=k;fetch(`/api/projects/${n}/files/${encodeURIComponent(w)}`).then(A=>A.json()).then(A=>{if(!A.content||!O||!b||ht.getState().isEditMode)return;const E=O.querySelector("[data-composition-id]"),C=parseInt((E==null?void 0:E.getAttribute("data-width"))??"1920",10),P=parseInt((E==null?void 0:E.getAttribute("data-height"))??"1080",10),$=parseFloat((E==null?void 0:E.getAttribute("data-duration"))??"0"),M=CI(O,b,A.content,C,P,$);if(!M)return;const R=ht.getState();R.setModel(M),R.setSourceFilePath(w),R.setEditMode(!0),s.loadOverrides()}).catch(()=>{}).finally(()=>{u=!1})},m=p=>{const O=p.data;(O==null?void 0:O.source)==="hf-preview"&&((O==null?void 0:O.type)==="state"||(O==null?void 0:O.type)==="timeline")&&d()};return window.addEventListener("message",m),d(),()=>{window.removeEventListener("message",m)}},[e,n,t,s,a]),h.useEffect(()=>{r&&o(!i)},[i,r,o])}const N9=2,$I=1,TS=N9+$I;function RI(n,e){const t=[],r=Math.floor(n.length/e);if(r===0)return Array(e).fill(0);for(let a=0;a<e;a++){let s=0;const o=a*r,u=Math.min(o+r,n.length);for(let d=o;d<u;d++){const m=Math.abs(n[d]??0);m>s&&(s=m)}t.push(s)}const i=Math.max(...t,.001);return t.map(a=>a/i)}function QI(n,e){let t=0;for(let a=0;a<n.length;a++)t=(t<<5)-t+n.charCodeAt(a)|0;t=Math.abs(t)||42;const r=()=>(t=t*16807%2147483647,(t&2147483647)/2147483647),i=[];for(let a=0;a<e;a++){const s=a/e,o=.3+.3*Math.sin(s*Math.PI*3.2)+.2*Math.sin(s*Math.PI*7.1);i.push(Math.max(.05,Math.min(1,o*(.4+.6*r()))))}return i}const AS=new Map,qg=new Map,_I=h.memo(function({audioUrl:e,waveformUrl:t,label:r,labelColor:i}){const a=h.useRef(null),s=h.useRef(null),o=h.useRef(null),u=t??e,[d,m]=h.useState(AS.get(u)??null);h.useEffect(()=>{if(d||!u)return;let b=!1,S=qg.get(u);return S||(S=(t?fetch(t).then(k=>k.json()).then(k=>{if(!Array.isArray(k.peaks))throw new Error("bad response");return k.peaks}):fetch(e).then(k=>k.arrayBuffer()).then(k=>{const T=new AudioContext;return T.decodeAudioData(k).finally(()=>T.close())}).then(k=>RI(k.getChannelData(0),4e3))).catch(()=>QI(u,4e3)).then(k=>(AS.set(u,k),k)).finally(()=>qg.delete(u)),qg.set(u,S)),S.then(k=>{b||m(k)}),()=>{b=!0}},[e,t,u,d]);const p=h.useCallback(()=>{const b=a.current,S=s.current;if(!b||!S||!d)return;const k=b.clientWidth||400,T=Math.min(Math.floor(k/TS),d.length);let w="";for(let A=0;A<T;A++){const E=Math.floor(A/T*d.length),C=d[E]??0,P=Math.max(3,Math.round(C*100)),$=(.45+C*.4).toFixed(2);w+=`<div style="position:absolute;bottom:0;left:${A*TS}px;width:${N9}px;height:${P}%;background:rgba(75,163,210,${$})"></div>`}S.innerHTML=w},[d]),O=h.useCallback(b=>{var S;(S=o.current)==null||S.disconnect(),a.current=b,b&&(p(),o.current=new ResizeObserver(()=>p()),o.current.observe(b))},[p]);return h.useEffect(()=>{p()},[p]),h.useEffect(()=>()=>{var b;(b=o.current)==null||b.disconnect()},[]),y.jsxs("div",{ref:O,className:"absolute inset-0 overflow-hidden",children:[y.jsx("div",{ref:s,className:"absolute left-0 right-0 bottom-0",style:{top:16}}),!d&&y.jsx("div",{className:"absolute left-0 right-0 bottom-0 animate-pulse",style:{top:16,background:"linear-gradient(90deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0.02) 100%)"}}),y.jsx("div",{className:"absolute top-0 left-0 right-0 px-1.5 py-0.5 z-10",children:y.jsx("span",{className:"text-[9px] font-semibold truncate block leading-tight",style:{color:i,textShadow:"0 1px 3px rgba(0,0,0,0.9)"},children:r})})]})});function NI({projectIdRef:n,compIdToSrc:e,activePreviewUrl:t,effectiveTimelineDuration:r}){return h.useCallback((i,a)=>{var d;const s=n.current;if(!s)return null;let o=i.compositionSrc;if(o&&e.size>0){const m=e.get(i.id)||e.get(o.replace(/^compositions\//,"").replace(/\.html$/,""));m&&(o=m)}if(o)return h.createElement(Sg,{previewUrl:`/api/projects/${s}/preview/comp/${o}`,label:Ho(i),labelColor:a.label,accentColor:a.clip,seekTime:0,duration:i.duration});if(t&&i.duration>0)return h.createElement(Sg,{previewUrl:t,label:Ho(i),labelColor:a.label,accentColor:a.clip,selector:i.selector,selectorIndex:i.selectorIndex,seekTime:i.start,duration:i.duration});const u=i.duration>0&&r>0&&i.duration<r*.92&&!/(backdrop|background|overlay|scrim|mask)/i.test(i.id);if(i.tag==="audio"){const m=`/api/projects/${s}/preview/`,p=(d=i.src)!=null&&d.startsWith("http")?i.src.indexOf(m):-1,O=i.src?p!==-1?decodeURIComponent(i.src.slice(p+m.length)):i.src.startsWith("http")?null:i.src:null,b=O?`/api/projects/${s}/preview/${O}`:i.src??"",S=O?`/api/projects/${s}/waveform/${O}`:void 0;return h.createElement(_I,{audioUrl:b,waveformUrl:S,label:Ho(i),labelColor:a.label})}if((i.tag==="video"||i.tag==="img")&&i.src){const m=i.src.startsWith("http")?i.src:`/api/projects/${s}/preview/${i.src}`;return h.createElement(_Q,{videoSrc:m,label:Ho(i),labelColor:a.label,duration:i.duration})}return u?h.createElement(Sg,{previewUrl:`/api/projects/${s}/preview`,label:Ho(i),labelColor:a.label,accentColor:a.clip,selector:i.selector,selectorIndex:i.selectorIndex,seekTime:i.start,duration:i.duration}):null},[n,e,t,r])}function jI(n){const[e,t]=h.useState(null),r=h.useRef([]),i=h.useCallback(()=>{r.current=[],t(null)},[]);return h.useEffect(()=>{if(!n)return;const a=()=>{try{const o=n.contentWindow;if(!o||o.__hfErrorCapture)return;o.__hfErrorCapture=!0;const u=o.console.error.bind(o.console);o.console.error=function(...d){u(...d);const m=d.map(p=>p instanceof Error?p.message:String(p)).join(" ");m.includes("favicon")||(r.current=[...r.current,{severity:"error",message:m}],t([...r.current]))},o.addEventListener("error",d=>{const m=d.message||String(d);r.current=[...r.current,{severity:"error",message:m}],t([...r.current])})}catch{}};a();const s=()=>{r.current=[],t(null),a()};return n.addEventListener("load",s),()=>n.removeEventListener("load",s)},[n]),{consoleErrors:e,setConsoleErrors:t,resetErrors:i}}const _8="#project/";function ZI(n){try{return decodeURIComponent(n)}catch{return n}}function DI(n){if(!n)return new URLSearchParams;if(n instanceof URLSearchParams)return n;const e=new URLSearchParams;for(const[t,r]of Object.entries(n))!t||r==null||r===""||e.set(t,r);return e}function j9(n){return encodeURIComponent(n)}function Z9(n,e){const t=DI(e).toString();return`${_8}${j9(n)}${t?`?${t}`:""}`}function D9(n){if(!n.startsWith(_8))return null;const e=n.slice(_8.length),t=e.indexOf("?"),r=t>=0?e.slice(0,t):e;if(!r||r.includes("/"))return null;const i=t>=0?e.slice(t+1):"";return{projectId:ZI(r),params:new URLSearchParams(i)}}function VI(n){var e;return((e=D9(n))==null?void 0:e.projectId)??null}function II(n,e=""){const t=e&&!e.startsWith("/")?`/${e}`:e;return`/api/projects/${j9(n)}${t}`}function V9(n){return n&&n!=="master"?n:"index.html"}function PS({projectId:n,compositionPath:e,currentTime:t,origin:r=window.location.origin}){const i=V9(e),a=new URL(II(n,`/thumbnail/${encodeURIComponent(i)}`),r);return a.searchParams.set("t",Math.max(0,t).toFixed(3)),a.searchParams.set("format","png"),a.searchParams.set("v",String(Date.now())),a.toString()}function CS(n,e){var a;const r=((a=V9(n).split("/").pop())==null?void 0:a.replace(/\.html$/i,""))||"frame",i=Math.max(0,e).toFixed(3).replace(".","-");return`${r}-${i}s.png`}function LI({projectId:n,activeCompPath:e,showToast:t,waitForPendingDomEditSaves:r}){const[i,a]=h.useState(0);zt(()=>(a(Ae.getState().currentTime),Kr.subscribe(a)));const s=h.useCallback(()=>{a(Ae.getState().currentTime)},[]),o=h.useCallback(async m=>{if(n){m.preventDefault();try{const p=Ae.getState().currentTime;a(p),await Promise.race([r(),new Promise((T,w)=>setTimeout(()=>w(new Error("Save queue timed out")),5e3))]);const O=PS({projectId:n,compositionPath:e,currentTime:p}),b=CS(e,p),S=new AbortController,k=setTimeout(()=>S.abort(),3e4);try{const T=await fetch(O,{cache:"no-store",signal:S.signal});if(clearTimeout(k),!T.ok){let C=`Capture failed (${T.status})`;try{const P=await T.json();P!=null&&P.error&&(C=P.error)}catch{}throw new Error(C)}const w=await T.blob(),A=URL.createObjectURL(w),E=document.createElement("a");E.href=A,E.download=b,document.body.appendChild(E),E.click(),E.remove(),setTimeout(()=>URL.revokeObjectURL(A),0)}catch(T){throw clearTimeout(k),T instanceof DOMException&&T.name==="AbortError"?new Error("Capture timed out — the server took too long to respond"):T}}catch(p){t(p instanceof Error?p.message:"Capture failed","error")}}},[e,n,t,r]),u=n?PS({projectId:n,compositionPath:e,currentTime:i}):"#",d=CS(e,i);return{captureFrameHref:u,captureFrameFilename:d,handleCaptureFrameClick:o,refreshCaptureFrameTime:s}}function zI(n){const[e,t]=h.useState(null),[r,i]=h.useState(!1),a=h.useCallback(async()=>{if(n){i(!0);try{const u=await(await fetch(`/api/projects/${n}/lint`)).json();t((u.findings??[]).map(d=>({severity:d.severity==="error"?"error":"warning",message:d.message??"",file:d.file,fixHint:d.fixHint})))}catch(o){const u=o instanceof Error?o.message:String(o);t([{severity:"error",message:`Failed to run lint: ${u}`}])}finally{i(!1)}}},[n]),s=h.useCallback(()=>t(null),[]);return{lintModal:e,linting:r,handleLint:a,closeLintModal:s}}function BI(){const[n,e]=h.useState(null);return zt(()=>{const t=r=>{const i=r.data;if((i==null?void 0:i.source)!=="hf-preview"||(i==null?void 0:i.type)!=="stage-size")return;const{width:a,height:s}=i;!(a>0)||!(s>0)||e(o=>o&&o.width===a&&o.height===s?o:{width:a,height:s})};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}),n}function HI(){const[n,e]=h.useState(null),t=h.useRef(null),r=h.useCallback((i,a="error")=>{t.current&&clearTimeout(t.current),e({message:i,tone:a}),t.current=setTimeout(()=>e(null),4e3)},[]);return zt(()=>()=>{t.current&&clearTimeout(t.current)}),{appToast:n,showToast:r}}const I9=["layers","design","motion","renders"];function FI(n,e={}){if(!n||!I9.includes(n))return null;const t=e.inspectorPanelsEnabled??yn,r=e.motionPanelEnabled??O6;return!t&&n!=="renders"?"renders":n==="motion"&&!r?"design":n}function XI(n,e){return!n||n==="index.html"?null:e.includes(n)?n:null}function ES(n){return n==="1"?!0:n==="0"?!1:null}function L9(n){if(n==null||n==="")return null;const e=Number(n);return Number.isFinite(e)?e:null}function UI(n){return I9.includes(n)?n:null}function qI(n){const e=n.get("selFile")||void 0,t=n.get("selId")||void 0,r=n.get("selSelector")||void 0,i=L9(n.get("selIndex"));return!e&&!t&&!r?null:{sourceFile:e,id:t,selector:r,selectorIndex:i!=null?Math.max(0,Math.floor(i)):void 0}}function z9(){return{activeCompPath:null,currentTime:null,rightPanelTab:null,rightCollapsed:null,timelineVisible:null,selection:null}}function YI(n){const e=D9(n);if(!e)return z9();const{params:t}=e;return{activeCompPath:t.get("comp")||null,currentTime:L9(t.get("t")),rightPanelTab:FI(UI(t.get("tab"))),rightCollapsed:ES(t.get("rc")),timelineVisible:ES(t.get("tv")),selection:qI(t)}}function WI(){return typeof window>"u"?z9():YI(window.location.hash)}function MS(n,e){const t=new URLSearchParams;return t.set("v","1"),e.activeCompPath&&t.set("comp",e.activeCompPath),e.currentTime!=null&&Number.isFinite(e.currentTime)&&t.set("t",String(Math.max(0,Math.round(e.currentTime*1e3)/1e3))),e.rightPanelTab&&t.set("tab",e.rightPanelTab),e.rightCollapsed!=null&&t.set("rc",e.rightCollapsed?"1":"0"),e.timelineVisible!=null&&t.set("tv",e.timelineVisible?"1":"0"),e.selection&&(e.selection.sourceFile&&t.set("selFile",e.selection.sourceFile),e.selection.id&&t.set("selId",e.selection.id),e.selection.selector&&t.set("selSelector",e.selection.selector),typeof e.selection.selectorIndex=="number"&&t.set("selIndex",String(Math.max(0,Math.floor(e.selection.selectorIndex))))),Z9(n,t)}function GI(n){return!n||!n.id&&!n.selector?null:{sourceFile:n.sourceFile||void 0,id:n.id||void 0,selector:n.selector||void 0,selectorIndex:n.selectorIndex??void 0}}function $S(n){typeof window>"u"||window.location.hash!==n&&window.history.replaceState(null,"",n)}function KI({projectId:n,activeCompPath:e,currentTime:t,duration:r,isPlaying:i,compositionLoading:a,refreshKey:s,previewIframeRef:o,rightPanelTab:u,rightCollapsed:d,timelineVisible:m,activeCompPathHydrated:p,domEditSelection:O,buildDomSelectionFromTarget:b,applyDomSelection:S,initialState:k}){const T=h.useRef(k.currentTime==null),w=h.useRef(k.currentTime==null),A=h.useRef(k.selection==null),E=h.useRef(k.selection),C=h.useRef(k.currentTime),P=h.useCallback(()=>({activeCompPath:e,currentTime:C.current,rightPanelTab:u,rightCollapsed:d,timelineVisible:m,selection:A.current?GI(O):E.current}),[e,O,d,u,m]);h.useEffect(()=>{if(!n||T.current||a)return;const $=r>0?N0(k.currentTime??0,0,r):Math.max(0,k.currentTime??0);Ae.getState().requestSeek($),C.current=$,T.current=!0},[n,a,r,k.currentTime]),h.useEffect(()=>{var D;if(!n||A.current||a||!T.current||k.currentTime!=null&&Math.abs(t-C.current)>.05)return;const M=E.current;if(!M){A.current=!0;return}let R=null;try{R=((D=o.current)==null?void 0:D.contentDocument)??null}catch{return}if(!R)return;const N=sr(R,{sourceFile:M.sourceFile??"",id:M.id,selector:M.selector,selectorIndex:M.selectorIndex},e);if(!N){S(null,{revealPanel:!1}),A.current=!0,E.current=null;return}const Z=b(N,{preferClipAncestor:!1});S(Z,{revealPanel:!1}),A.current=!0,E.current=null},[e,S,b,a,t,k.currentTime,o,n,s]),h.useEffect(()=>{if(w.current)return;const $=C.current;if($==null){w.current=!0;return}Math.abs(t-$)>.05||(w.current=!0)},[t]),h.useEffect(()=>{if(!p||!T.current||!w.current||!n||i)return;const $=window.setTimeout(()=>{C.current=N0(t,0,Math.max(0,r)),$S(MS(n,P()))},200);return()=>window.clearTimeout($)},[p,P,t,r,i,n]),h.useEffect(()=>{p&&n&&$S(MS(n,P()))},[p,P,n])}function JI(n){if(!n||typeof window>"u")return;const e=480,t=270,r=16,i=N0(n.x,r+e/2,window.innerWidth-r-e/2),a=N0(n.y+12,r,window.innerHeight-r-t);return{left:i,top:a,transform:"translateX(-50%)"}}function eL({selectionLabel:n,anchorPoint:e=null,onSubmit:t,onClose:r}){const[i,a]=h.useState(""),s=h.useRef(null),o=JI(e);zt(()=>{requestAnimationFrame(()=>{var d;return(d=s.current)==null?void 0:d.focus()})});const u=()=>{i.trim()&&t(i.trim())};return y.jsx("div",{className:e?"fixed inset-0 z-[100] bg-black/60 backdrop-blur-sm":"fixed inset-0 z-[100] flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:r,children:y.jsxs("div",{className:`w-[480px] rounded-2xl border border-neutral-800 bg-neutral-950 shadow-2xl ${e?"fixed":""}`,style:o,onClick:d=>d.stopPropagation(),children:[y.jsxs("div",{className:"flex items-center justify-between px-5 py-4 border-b border-neutral-800/60",children:[y.jsxs("div",{children:[y.jsx("h3",{className:"text-sm font-medium text-neutral-200",children:"Ask agent"}),y.jsx("p",{className:"text-xs text-neutral-500 mt-0.5",children:n.length>50?`${n.slice(0,49)}…`:n})]}),y.jsx("button",{className:"p-1 rounded-md text-neutral-500 hover:text-neutral-300 hover:bg-neutral-800/50",onClick:r,children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[y.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),y.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]}),y.jsx("div",{className:"px-5 py-4",children:y.jsx("textarea",{ref:s,className:"w-full h-24 px-3 py-2 rounded-lg border border-neutral-800 bg-neutral-900/60 text-sm text-neutral-200 placeholder-neutral-600 resize-none focus:outline-none focus:border-studio-accent/60 focus:ring-1 focus:ring-studio-accent/30",placeholder:"Describe what you want to change…",value:i,onChange:d=>a(d.target.value),onKeyDown:d=>{d.key==="Enter"&&(d.metaKey||d.ctrlKey)&&u(),d.key==="Escape"&&r()}})}),y.jsxs("div",{className:"flex items-center justify-between px-5 py-3 border-t border-neutral-800/60",children:[y.jsxs("span",{className:"text-[11px] text-neutral-600",children:[navigator.platform.includes("Mac")?"⌘":"Ctrl","+Enter to copy"]}),y.jsx("button",{className:"px-4 py-1.5 rounded-lg bg-studio-accent/90 text-xs font-medium text-neutral-950 hover:bg-studio-accent disabled:opacity-40 disabled:cursor-not-allowed",disabled:!i.trim(),onClick:u,children:"Copy prompt"})]})]})})}function tL(){return y.jsx("div",{className:"absolute inset-0 z-[90] flex items-center justify-center bg-black/50 backdrop-blur-sm pointer-events-none",children:y.jsxs("div",{className:"flex flex-col items-center gap-3 px-8 py-6 rounded-xl border-2 border-dashed border-studio-accent/60 bg-studio-accent/[0.06]",children:[y.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-studio-accent",children:[y.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),y.jsx("polyline",{points:"7 10 12 15 17 10"}),y.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]}),y.jsx("span",{className:"text-sm font-medium text-studio-accent",children:"Drop files to import into project"})]})})}const nn=n=>({title:t,...r})=>y.jsx(n,{alt:t,"aria-label":t,"aria-hidden":t?void 0:!0,...r}),nL=nn(gZ),rL=nn(yZ),B9=nn(xZ),iL=nn(NZ),Hh=nn(HZ),aL=nn(pZ),sL=nn(dZ),lL=nn(IZ),oL=nn(LZ),x6=nn(XT),cL=nn(BZ),RS=nn(XZ),j1=nn(YZ),S6=nn(VZ),uL=nn(mZ),fL=nn(dT),dL=nn(OZ),k6=nn(uZ),hL=nn(hZ),mL=nn(cZ),pL=nn(ZZ),H9=h.createContext(null);function tf(){const n=h.useContext(H9);if(!n)throw new Error("useStudioContext must be used within StudioProvider");return n}function gL({value:n,children:e}){const{projectId:t,activeCompPath:r,setActiveCompPath:i,showToast:a,previewIframeRef:s,captionEditMode:o,compositionLoading:u,refreshKey:d,setRefreshKey:m,currentTime:p,timelineElements:O,isPlaying:b,editHistory:S,handleUndo:k,handleRedo:T,renderQueue:w,compositionDimensions:A,waitForPendingDomEditSaves:E,handlePreviewIframeRef:C,refreshPreviewDocumentVersion:P,timelineVisible:$,toggleTimelineVisibility:M}=n,R=h.useMemo(()=>({projectId:t,activeCompPath:r,setActiveCompPath:i,showToast:a,previewIframeRef:s,captionEditMode:o,compositionLoading:u,refreshKey:d,setRefreshKey:m,currentTime:p,timelineElements:O,isPlaying:b,editHistory:S,handleUndo:k,handleRedo:T,renderQueue:w,compositionDimensions:A,waitForPendingDomEditSaves:E,handlePreviewIframeRef:C,refreshPreviewDocumentVersion:P,timelineVisible:$,toggleTimelineVisibility:M}),[t,r,o,u,d,p,b,A,$,S,O,w,i,a,s,m,k,T,E,C,P,M]);return y.jsx(H9,{value:R,children:e})}const F9=h.createContext(null);function v6(){const n=h.useContext(F9);if(!n)throw new Error("usePanelLayoutContext must be used within PanelLayoutProvider");return n}function OL({value:{leftWidth:n,setLeftWidth:e,rightWidth:t,leftCollapsed:r,setLeftCollapsed:i,rightCollapsed:a,setRightCollapsed:s,rightPanelTab:o,setRightPanelTab:u,toggleLeftSidebar:d,handlePanelResizeStart:m,handlePanelResizeMove:p,handlePanelResizeEnd:O},children:b}){const S=h.useMemo(()=>({leftWidth:n,setLeftWidth:e,rightWidth:t,leftCollapsed:r,setLeftCollapsed:i,rightCollapsed:a,setRightCollapsed:s,rightPanelTab:o,setRightPanelTab:u,toggleLeftSidebar:d,handlePanelResizeStart:m,handlePanelResizeMove:p,handlePanelResizeEnd:O}),[n,e,t,r,i,a,s,o,u,d,m,p,O]);return y.jsx(F9,{value:S,children:b})}const X9=h.createContext(null);function Z1(){const n=h.useContext(X9);if(!n)throw new Error("useDomEditContext must be used within DomEditProvider");return n}function yL({value:{domEditSelection:n,domEditGroupSelections:e,domEditHoverSelection:t,agentModalOpen:r,agentModalAnchorPoint:i,copiedAgentPrompt:a,agentPromptSelectionContext:s,domEditSelectionRef:o,handleTimelineElementSelect:u,handlePreviewCanvasMouseDown:d,handlePreviewCanvasPointerMove:m,handlePreviewCanvasPointerLeave:p,applyDomSelection:O,clearDomSelection:b,handleDomStyleCommit:S,handleDomAttributeCommit:k,handleDomHtmlAttributeCommit:T,handleDomPathOffsetCommit:w,handleDomGroupPathOffsetCommit:A,handleDomBoxSizeCommit:E,handleDomRotationCommit:C,handleDomManualEditsReset:P,handleDomMotionCommit:$,handleDomMotionClear:M,handleDomTextCommit:R,handleDomTextFieldStyleCommit:N,handleDomAddTextField:Z,handleDomRemoveTextField:D,handleAskAgent:I,handleAgentModalSubmit:U,handleBlockedDomMove:K,handleDomManualDragStart:q,handleDomEditElementDelete:L,buildDomSelectionFromTarget:W,buildDomSelectionForTimelineElement:ee,updateDomEditHoverSelection:X,resolveImportedFontAsset:B,setAgentModalOpen:_,setAgentPromptSelectionContext:j,setAgentModalAnchorPoint:H},children:F}){const Y=h.useMemo(()=>({domEditSelection:n,domEditGroupSelections:e,domEditHoverSelection:t,agentModalOpen:r,agentModalAnchorPoint:i,copiedAgentPrompt:a,agentPromptSelectionContext:s,domEditSelectionRef:o,handleTimelineElementSelect:u,handlePreviewCanvasMouseDown:d,handlePreviewCanvasPointerMove:m,handlePreviewCanvasPointerLeave:p,applyDomSelection:O,clearDomSelection:b,handleDomStyleCommit:S,handleDomAttributeCommit:k,handleDomHtmlAttributeCommit:T,handleDomPathOffsetCommit:w,handleDomGroupPathOffsetCommit:A,handleDomBoxSizeCommit:E,handleDomRotationCommit:C,handleDomManualEditsReset:P,handleDomMotionCommit:$,handleDomMotionClear:M,handleDomTextCommit:R,handleDomTextFieldStyleCommit:N,handleDomAddTextField:Z,handleDomRemoveTextField:D,handleAskAgent:I,handleAgentModalSubmit:U,handleBlockedDomMove:K,handleDomManualDragStart:q,handleDomEditElementDelete:L,buildDomSelectionFromTarget:W,buildDomSelectionForTimelineElement:ee,updateDomEditHoverSelection:X,resolveImportedFontAsset:B,setAgentModalOpen:_,setAgentPromptSelectionContext:j,setAgentModalAnchorPoint:H}),[n,e,t,r,i,a,s,o,u,d,m,p,O,b,S,k,T,w,A,E,C,P,$,M,R,N,Z,D,I,U,K,q,L,W,ee,X,B,_,j,H]);return y.jsx(X9,{value:Y,children:F})}function bL(){const e=Math.round(93.21518987341773);return y.jsxs("svg",{width:e,height:28,viewBox:"0 0 263 79",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-label":"Hyperframes",children:[y.jsxs("defs",{children:[y.jsxs("linearGradient",{id:"hf-g0",x1:"225.869",y1:"0",x2:"222.845",y2:"37.482",gradientUnits:"userSpaceOnUse",children:[y.jsx("stop",{stopColor:"#06E3FA"}),y.jsx("stop",{offset:"1",stopColor:"#4FDB5E"})]}),y.jsxs("linearGradient",{id:"hf-g1",x1:"230.87",y1:"39",x2:"244.661",y2:"6.303",gradientUnits:"userSpaceOnUse",children:[y.jsx("stop",{stopColor:"#06E3FA"}),y.jsx("stop",{offset:"1",stopColor:"#4FDB5E"})]})]}),y.jsx("path",{d:"M0 16.6738H4.96V23.3838H11.53V16.6738H16.49V35.4538H11.53V27.6738H4.96V35.4538H0V16.6738Z",fill:"white"}),y.jsx("path",{d:"M17.8899 28.0137C17.8899 23.4237 21.2399 20.0237 25.7999 20.0237C30.0099 20.0237 32.9399 23.0837 32.9399 27.5637C32.9399 28.2037 32.8599 28.8237 32.8299 29.3337H22.6099C23.0399 31.1337 24.6199 32.1237 27.1399 32.1237C28.7199 32.1237 30.2199 31.7237 31.2999 31.0237V34.6737C30.1699 35.3937 28.2999 35.8537 26.3599 35.8537C21.2599 35.8537 17.8799 32.6037 17.8799 28.0237L17.8899 28.0137ZM28.5699 26.1937C28.4899 24.5337 27.3899 23.5637 25.7499 23.5637C24.1099 23.5637 22.9599 24.5337 22.6099 26.1937H28.5699Z",fill:"white"}),y.jsx("path",{d:"M37.85 33.8638L32 20.4238H37.29L40.46 28.1538L43.6 20.4238H48.48L40.33 39.5738H35.26L37.86 33.8638H37.85Z",fill:"white"}),y.jsx("path",{d:"M48.1797 26.1138C48.1797 20.4238 52.7097 16.2438 58.9397 16.2438C61.2997 16.2438 63.5297 16.8038 64.8197 17.7238V21.9338C63.5597 20.9138 61.6797 20.2938 59.7497 20.2938C55.7797 20.2938 53.2597 22.6238 53.2597 26.1438C53.2597 29.6638 55.5697 31.8838 58.8897 31.8838C59.6397 31.8838 60.4997 31.7538 61.1997 31.5038V27.8838H57.4697V24.2338H65.5197V33.7038C63.6697 35.0938 61.1997 35.8738 58.5997 35.8738C52.5397 35.8738 48.1897 31.7438 48.1897 26.1138H48.1797Z",fill:"white"}),y.jsx("path",{d:"M66.6604 28.0137C66.6604 23.4237 70.0104 20.0237 74.5704 20.0237C78.7804 20.0237 81.7104 23.0837 81.7104 27.5637C81.7104 28.2037 81.6304 28.8237 81.6004 29.3337H71.3804C71.8104 31.1337 73.3904 32.1237 75.9104 32.1237C77.4904 32.1237 78.9904 31.7237 80.0704 31.0237V34.6737C78.9404 35.3937 77.0704 35.8537 75.1304 35.8537C70.0304 35.8537 66.6504 32.6037 66.6504 28.0237L66.6604 28.0137ZM77.3404 26.1937C77.2604 24.5337 76.1604 23.5637 74.5204 23.5637C72.8804 23.5637 71.7304 24.5337 71.3804 26.1937H77.3404Z",fill:"white"}),y.jsx("path",{d:"M82.9688 20.4238H87.8488V22.4138C88.7588 20.9638 90.3488 20.1038 92.3288 20.1038C95.4988 20.1038 97.3988 22.3338 97.3988 25.8138V35.4438H92.5188V26.8638C92.5188 25.0438 91.8188 24.1838 90.4788 24.1838C88.9488 24.1838 87.8488 25.3638 87.8488 27.2638V35.4438H82.9688V20.4238Z",fill:"white"}),y.jsx("path",{d:"M195.219 26.1937L213.529 38.9937C216.009 40.7237 220.239 38.7637 221.009 35.5337L228.419 4.33374C229.189 1.10374 225.879 -0.856262 222.589 0.873738L198.199 13.6737C192.649 16.5837 191.059 23.2837 195.219 26.1937Z",fill:"url(#hf-g0)"}),y.jsx("path",{d:"M256.97 25.9638L232.58 38.7638C229.28 40.4938 225.98 38.5338 226.75 35.3038L234.16 4.10376C234.93 0.873757 239.16 -1.08624 241.64 0.643757L259.95 13.4438C264.12 16.3538 262.52 23.0538 256.97 25.9638Z",fill:"url(#hf-g1)"}),y.jsx("path",{d:"M0 71.9996V42.7256H7.7367V53.1806H17.9826V42.7256H25.7193V71.9996H17.9826V59.8718H7.7367V71.9996H0Z",fill:"white"}),y.jsx("path",{d:"M31.9606 78.4405L36.0171 69.5329L26.9004 48.5811H35.1389L40.0737 60.6252L44.9666 48.5811H52.5779L39.8646 78.4405H31.9606Z",fill:"white"}),y.jsx("path",{d:"M53.3711 78.4404V48.5809H60.9823V52.052C62.446 49.501 65.0807 48.0791 68.3008 48.0791C74.3647 48.0791 78.9649 53.3066 78.9649 60.2487C78.9649 67.2745 74.3229 72.4602 68.259 72.4602C65.0807 72.4602 62.446 71.1637 60.9823 68.78V78.4404H53.3711ZM66.1262 66.1872C69.2627 66.1872 71.3119 63.7616 71.3119 60.2905C71.3119 56.8195 69.2627 54.4357 66.1262 54.4357C62.7388 54.4357 60.9823 57.2795 60.9823 59.7051V60.9178C60.9823 63.3434 62.7388 66.1872 66.1262 66.1872Z",fill:"white"}),y.jsx("path",{d:"M93.4397 72.6269C85.4939 72.6269 80.2246 67.5667 80.2246 60.4155C80.2246 53.2643 85.4521 47.9531 92.5615 47.9531C99.1273 47.9531 103.686 52.7206 103.686 59.7045C103.686 60.7082 103.56 61.6701 103.518 62.4647H87.5849C88.2541 65.2666 90.7214 66.8139 94.6525 66.8139C97.1199 66.8139 99.4618 66.1866 101.135 65.0993V70.7868C99.3782 71.916 96.4508 72.6269 93.4397 72.6269ZM87.5849 57.5717H96.869C96.7435 54.9789 95.0289 53.4734 92.4779 53.4734C89.9687 53.4734 88.1286 54.9789 87.5849 57.5717Z",fill:"white"}),y.jsx("path",{d:"M105.645 72V48.5808H113.214V52.9719C114.218 50.0445 116.183 48.2881 118.692 48.2881C119.361 48.2881 119.989 48.4135 120.407 48.6645V55.8993C119.822 55.5648 119.111 55.4393 118.274 55.4393C115.138 55.4393 113.256 57.6558 113.256 61.2941V72H105.645Z",fill:"white"}),y.jsx("path",{d:"M122.643 71.9996V42.7256H139.371V49.124H130.379V54.477H138.911V60.5827H130.379V71.9996H122.643Z",fill:"white"}),y.jsx("path",{d:"M141.258 72V48.5808H148.827V52.9719C149.831 50.0445 151.796 48.2881 154.306 48.2881C154.975 48.2881 155.602 48.4135 156.02 48.6645V55.8993C155.435 55.5648 154.724 55.4393 153.887 55.4393C150.751 55.4393 148.869 57.6558 148.869 61.2941V72H141.258Z",fill:"white"}),y.jsx("path",{d:"M167.26 72.4602C161.154 72.4602 156.596 67.2745 156.596 60.3324C156.596 53.3066 161.196 48.0791 167.302 48.0791C170.438 48.0791 173.031 49.4173 174.536 51.8429V48.5809H182.148V72.0001H174.536V68.4873C173.031 71.0801 170.438 72.4602 167.26 72.4602ZM169.393 66.1872C172.78 66.1872 174.536 63.3434 174.536 60.876V59.6632C174.536 57.2377 172.78 54.4357 169.393 54.4357C166.298 54.4357 164.207 56.7777 164.207 60.2905C164.207 63.7616 166.298 66.1872 169.393 66.1872Z",fill:"white"}),y.jsx("path",{d:"M184.998 72.0001V48.5809H192.609V51.6756C193.989 49.4173 196.373 48.0791 199.426 48.0791C202.521 48.0791 204.779 49.5428 206.075 52.052C207.497 49.5846 210.132 48.0791 213.352 48.0791C218.245 48.0791 221.214 51.592 221.214 57.0286V72.0001H213.603V58.5341C213.603 55.774 212.557 54.4357 210.634 54.4357C208.459 54.4357 206.912 56.234 206.912 59.0778V72.0001H199.3V58.5341C199.3 55.774 198.255 54.4357 196.373 54.4357C194.157 54.4357 192.609 56.234 192.609 59.0778V72.0001H184.998Z",fill:"white"}),y.jsx("path",{d:"M236.338 72.6269C228.392 72.6269 223.123 67.5667 223.123 60.4155C223.123 53.2643 228.351 47.9531 235.46 47.9531C242.026 47.9531 246.584 52.7206 246.584 59.7045C246.584 60.7082 246.459 61.6701 246.417 62.4647H230.483C231.152 65.2666 233.62 66.8139 237.551 66.8139C240.018 66.8139 242.36 66.1866 244.033 65.0993V70.7868C242.277 71.916 239.349 72.6269 236.338 72.6269ZM230.483 57.5717H239.767C239.642 54.9789 237.927 53.4734 235.376 53.4734C232.867 53.4734 231.027 54.9789 230.483 57.5717Z",fill:"white"}),y.jsx("path",{d:"M252.115 72.502C250.192 72.502 248.268 72.0838 246.93 71.3728V65.6853C247.808 66.3126 248.937 66.689 250.066 66.689C251.739 66.689 252.784 65.8526 252.784 64.5562C252.784 63.8452 252.492 63.0925 251.655 62.0888L249.899 59.956C248.728 58.4923 248.226 56.9031 248.226 55.2721C248.226 51.0065 251.864 48.0791 256.883 48.0791C258.723 48.0791 260.438 48.4555 261.65 49.0828V54.7703C260.898 54.2266 259.768 53.8503 258.723 53.8503C257.092 53.8503 256.046 54.6867 256.046 55.8994C256.046 56.6522 256.423 57.405 257.259 58.4086L258.974 60.4996C260.187 62.047 260.73 63.5943 260.73 65.2671C260.73 69.5746 257.05 72.502 252.115 72.502Z",fill:"white"})]})}function xL({captureFrameHref:n,captureFrameFilename:e,handleCaptureFrameClick:t,refreshCaptureFrameTime:r,inspectorButtonActive:i,inspectorPanelActive:a}){const{projectId:s,editHistory:o,handleUndo:u,handleRedo:d}=tf(),{rightCollapsed:m,setRightCollapsed:p,setRightPanelTab:O}=v6(),{clearDomSelection:b}=Z1();return y.jsxs("div",{className:"flex items-center justify-between h-10 px-3 bg-neutral-900 border-b border-neutral-800 flex-shrink-0",children:[y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx(bL,{}),y.jsx("span",{className:"text-neutral-700 select-none","aria-hidden":"true",children:"|"}),y.jsx("span",{className:"text-[11px] font-medium text-neutral-300",children:s})]}),y.jsxs("div",{className:"flex items-center gap-1.5",children:[y.jsx("button",{type:"button",onClick:()=>void u(),disabled:!o.canUndo,className:`h-7 w-7 flex items-center justify-center rounded-md border transition-colors ${o.canUndo?"border-neutral-700 text-neutral-300 hover:border-neutral-500 hover:bg-neutral-800":"border-neutral-900 text-neutral-700"}`,title:o.undoLabel?`Undo ${o.undoLabel} (${Qd("undo")})`:`Undo (${Qd("undo")})`,"aria-label":"Undo",children:y.jsx(k6,{size:14})}),y.jsx("button",{type:"button",onClick:()=>void d(),disabled:!o.canRedo,className:`h-7 w-7 flex items-center justify-center rounded-md border transition-colors ${o.canRedo?"border-neutral-700 text-neutral-300 hover:border-neutral-500 hover:bg-neutral-800":"border-neutral-900 text-neutral-700"}`,title:o.redoLabel?`Redo ${o.redoLabel} (${Qd("redo")})`:`Redo (${Qd("redo")})`,"aria-label":"Redo",children:y.jsx(mL,{size:14})}),y.jsxs("a",{href:n,download:e,onClick:t,onFocus:r,onPointerDown:r,className:"h-7 flex items-center gap-1.5 px-2.5 rounded-md text-[11px] font-medium border border-neutral-700 text-neutral-300 transition-colors hover:border-neutral-500 hover:bg-neutral-800",title:"Capture current frame","aria-label":"Capture current frame",children:[y.jsx(hL,{size:14}),y.jsx("span",{children:"Capture"})]}),y.jsxs("button",{type:"button",onClick:()=>{if(yn){if(m||!a){O("design"),p(!1);return}b(),p(!0)}},disabled:!yn,className:`h-7 flex items-center gap-1.5 px-2.5 rounded-md text-[11px] font-medium border transition-colors ${i?"text-studio-accent bg-studio-accent/10 border-studio-accent/30":yn?"text-neutral-500 hover:text-neutral-300 hover:bg-neutral-800 border-transparent":"cursor-not-allowed border-transparent text-neutral-700"}`,title:yn?"Inspector":dS,"aria-label":yn?"Inspector":dS,children:[y.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[y.jsx("circle",{cx:"12",cy:"12",r:"10"}),y.jsx("polygon",{points:"10 8 16 12 10 16",fill:"currentColor",stroke:"none"})]}),"Inspector"]})]})]})}let N8=[],U9=[];(()=>{let n="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<n.length;e++)(e%2?U9:N8).push(t=t+n[e])})();function SL(n){if(n<768)return!1;for(let e=0,t=N8.length;;){let r=e+t>>1;if(n<N8[r])t=r;else if(n>=U9[r])e=r+1;else return!0;if(e==t)return!1}}function QS(n){return n>=127462&&n<=127487}const _S=8205;function kL(n,e,t=!0,r=!0){return(t?q9:vL)(n,e,r)}function q9(n,e,t){if(e==n.length)return e;e&&Y9(n.charCodeAt(e))&&W9(n.charCodeAt(e-1))&&e--;let r=Yg(n,e);for(e+=NS(r);e<n.length;){let i=Yg(n,e);if(r==_S||i==_S||t&&SL(i))e+=NS(i),r=i;else if(QS(i)){let a=0,s=e-2;for(;s>=0&&QS(Yg(n,s));)a++,s-=2;if(a%2==0)break;e+=2}else break}return e}function vL(n,e,t){for(;e>0;){let r=q9(n,e-2,t);if(r<e)return r;e--}return 0}function Yg(n,e){let t=n.charCodeAt(e);if(!W9(t)||e+1==n.length)return t;let r=n.charCodeAt(e+1);return Y9(r)?(t-55296<<10)+(r-56320)+65536:t}function Y9(n){return n>=56320&&n<57344}function W9(n){return n>=55296&&n<56320}function NS(n){return n<65536?1:2}class ft{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,r){[e,t]=wc(this,e,t);let i=[];return this.decompose(0,e,i,2),r.length&&r.decompose(0,r.length,i,3),this.decompose(t,this.length,i,1),Vi.from(i,this.length-(t-e)+r.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=wc(this,e,t);let r=[];return this.decompose(e,t,r,0),Vi.from(r,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),r=this.length-this.scanIdentical(e,-1),i=new d0(this),a=new d0(e);for(let s=t,o=t;;){if(i.next(s),a.next(s),s=0,i.lineBreak!=a.lineBreak||i.done!=a.done||i.value!=a.value)return!1;if(o+=i.value.length,i.done||o>=r)return!0}}iter(e=1){return new d0(this,e)}iterRange(e,t=this.length){return new G9(this,e,t)}iterLines(e,t){let r;if(e==null)r=this.iter();else{t==null&&(t=this.lines+1);let i=this.line(e).from;r=this.iterRange(i,Math.max(i,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new K9(r)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?ft.empty:e.length<=32?new Jt(e):Vi.from(Jt.split(e,[]))}}class Jt extends ft{constructor(e,t=wL(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,r,i){for(let a=0;;a++){let s=this.text[a],o=i+s.length;if((t?r:o)>=e)return new TL(i,o,r,s);i=o+1,r++}}decompose(e,t,r,i){let a=e<=0&&t>=this.length?this:new Jt(jS(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(i&1){let s=r.pop(),o=Sh(a.text,s.text.slice(),0,a.length);if(o.length<=32)r.push(new Jt(o,s.length+a.length));else{let u=o.length>>1;r.push(new Jt(o.slice(0,u)),new Jt(o.slice(u)))}}else r.push(a)}replace(e,t,r){if(!(r instanceof Jt))return super.replace(e,t,r);[e,t]=wc(this,e,t);let i=Sh(this.text,Sh(r.text,jS(this.text,0,e)),t),a=this.length+r.length-(t-e);return i.length<=32?new Jt(i,a):Vi.from(Jt.split(i,[]),a)}sliceString(e,t=this.length,r=`
339
- `){[e,t]=wc(this,e,t);let i="";for(let a=0,s=0;a<=t&&s<this.text.length;s++){let o=this.text[s],u=a+o.length;a>e&&s&&(i+=r),e<u&&t>a&&(i+=o.slice(Math.max(0,e-a),t-a)),a=u+1}return i}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let r=[],i=-1;for(let a of e)r.push(a),i+=a.length+1,r.length==32&&(t.push(new Jt(r,i)),r=[],i=-1);return i>-1&&t.push(new Jt(r,i)),t}}class Vi extends ft{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let r of e)this.lines+=r.lines}lineInner(e,t,r,i){for(let a=0;;a++){let s=this.children[a],o=i+s.length,u=r+s.lines-1;if((t?u:o)>=e)return s.lineInner(e,t,r,i);i=o+1,r=u+1}}decompose(e,t,r,i){for(let a=0,s=0;s<=t&&a<this.children.length;a++){let o=this.children[a],u=s+o.length;if(e<=u&&t>=s){let d=i&((s<=e?1:0)|(u>=t?2:0));s>=e&&u<=t&&!d?r.push(o):o.decompose(e-s,t-s,r,d)}s=u+1}}replace(e,t,r){if([e,t]=wc(this,e,t),r.lines<this.lines)for(let i=0,a=0;i<this.children.length;i++){let s=this.children[i],o=a+s.length;if(e>=a&&t<=o){let u=s.replace(e-a,t-a,r),d=this.lines-s.lines+u.lines;if(u.lines<d>>4&&u.lines>d>>6){let m=this.children.slice();return m[i]=u,new Vi(m,this.length-(t-e)+r.length)}return super.replace(a,o,u)}a=o+1}return super.replace(e,t,r)}sliceString(e,t=this.length,r=`
340
- `){[e,t]=wc(this,e,t);let i="";for(let a=0,s=0;a<this.children.length&&s<=t;a++){let o=this.children[a],u=s+o.length;s>e&&a&&(i+=r),e<u&&t>s&&(i+=o.sliceString(e-s,t-s,r)),s=u+1}return i}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof Vi))return 0;let r=0,[i,a,s,o]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;i+=t,a+=t){if(i==s||a==o)return r;let u=this.children[i],d=e.children[a];if(u!=d)return r+u.scanIdentical(d,t);r+=u.length+1}}static from(e,t=e.reduce((r,i)=>r+i.length+1,-1)){let r=0;for(let b of e)r+=b.lines;if(r<32){let b=[];for(let S of e)S.flatten(b);return new Jt(b,t)}let i=Math.max(32,r>>5),a=i<<1,s=i>>1,o=[],u=0,d=-1,m=[];function p(b){let S;if(b.lines>a&&b instanceof Vi)for(let k of b.children)p(k);else b.lines>s&&(u>s||!u)?(O(),o.push(b)):b instanceof Jt&&u&&(S=m[m.length-1])instanceof Jt&&b.lines+S.lines<=32?(u+=b.lines,d+=b.length+1,m[m.length-1]=new Jt(S.text.concat(b.text),S.length+1+b.length)):(u+b.lines>i&&O(),u+=b.lines,d+=b.length+1,m.push(b))}function O(){u!=0&&(o.push(m.length==1?m[0]:Vi.from(m,d)),d=-1,u=m.length=0)}for(let b of e)p(b);return O(),o.length==1?o[0]:new Vi(o,t)}}ft.empty=new Jt([""],0);function wL(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Sh(n,e,t=0,r=1e9){for(let i=0,a=0,s=!0;a<n.length&&i<=r;a++){let o=n[a],u=i+o.length;u>=t&&(u>r&&(o=o.slice(0,r-i)),i<t&&(o=o.slice(t-i)),s?(e[e.length-1]+=o,s=!1):e.push(o)),i=u+1}return e}function jS(n,e,t){return Sh(n,[""],e,t)}class d0{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof Jt?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let r=this.nodes.length-1,i=this.nodes[r],a=this.offsets[r],s=a>>1,o=i instanceof Jt?i.text.length:i.children.length;if(s==(t>0?o:0)){if(r==0)return this.done=!0,this.value="",this;t>0&&this.offsets[r-1]++,this.nodes.pop(),this.offsets.pop()}else if((a&1)==(t>0?0:1)){if(this.offsets[r]+=t,e==0)return this.lineBreak=!0,this.value=`
341
- `,this;e--}else if(i instanceof Jt){let u=i.text[s+(t<0?-1:0)];if(this.offsets[r]+=t,u.length>Math.max(0,e))return this.value=e==0?u:t>0?u.slice(e):u.slice(0,u.length-e),this;e-=u.length}else{let u=i.children[s+(t<0?-1:0)];e>u.length?(e-=u.length,this.offsets[r]+=t):(t<0&&this.offsets[r]--,this.nodes.push(u),this.offsets.push(t>0?1:(u instanceof Jt?u.text.length:u.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class G9{constructor(e,t,r){this.value="",this.done=!1,this.cursor=new d0(e,t>r?-1:1),this.pos=t>r?e.length:0,this.from=Math.min(t,r),this.to=Math.max(t,r)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let r=t<0?this.pos-this.from:this.to-this.pos;e>r&&(e=r),r-=e;let{value:i}=this.cursor.next(e);return this.pos+=(i.length+e)*t,this.value=i.length<=r?i:t<0?i.slice(i.length-r):i.slice(0,r),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class K9{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:r,value:i}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):r?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=i,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(ft.prototype[Symbol.iterator]=function(){return this.iter()},d0.prototype[Symbol.iterator]=G9.prototype[Symbol.iterator]=K9.prototype[Symbol.iterator]=function(){return this});class TL{constructor(e,t,r,i){this.from=e,this.to=t,this.number=r,this.text=i}get length(){return this.to-this.from}}function wc(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function xn(n,e,t=!0,r=!0){return kL(n,e,t,r)}function AL(n){return n>=56320&&n<57344}function PL(n){return n>=55296&&n<56320}function Hl(n,e){let t=n.charCodeAt(e);if(!PL(t)||e+1==n.length)return t;let r=n.charCodeAt(e+1);return AL(r)?(t-55296<<10)+(r-56320)+65536:t}function J9(n){return n<=65535?String.fromCharCode(n):(n-=65536,String.fromCharCode((n>>10)+55296,(n&1023)+56320))}function nf(n){return n<65536?1:2}const j8=/\r\n?|\n/;var jn=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(jn||(jn={}));class Ui{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let r=this.sections[t+1];e+=r<0?this.sections[t]:r}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,r=0,i=0;t<this.sections.length;){let a=this.sections[t++],s=this.sections[t++];s<0?(e(r,i,a),i+=a):i+=s,r+=a}}iterChangedRanges(e,t=!1){Z8(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let r=this.sections[t++],i=this.sections[t++];i<0?e.push(r,i):e.push(i,r)}return new Ui(e)}composeDesc(e){return this.empty?e:e.empty?this:eA(this,e)}mapDesc(e,t=!1){return e.empty?this:D8(this,e,t)}mapPos(e,t=-1,r=jn.Simple){let i=0,a=0;for(let s=0;s<this.sections.length;){let o=this.sections[s++],u=this.sections[s++],d=i+o;if(u<0){if(d>e)return a+(e-i);a+=o}else{if(r!=jn.Simple&&d>=e&&(r==jn.TrackDel&&i<e&&d>e||r==jn.TrackBefore&&i<e||r==jn.TrackAfter&&d>e))return null;if(d>e||d==e&&t<0&&!o)return e==i||t<0?a:a+u;a+=u}i=d}if(e>i)throw new RangeError(`Position ${e} is out of range for changeset of length ${i}`);return a}touchesRange(e,t=e){for(let r=0,i=0;r<this.sections.length&&i<=t;){let a=this.sections[r++],s=this.sections[r++],o=i+a;if(s>=0&&i<=t&&o>=e)return i<e&&o>t?"cover":!0;i=o}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let r=this.sections[t++],i=this.sections[t++];e+=(e?" ":"")+r+(i>=0?":"+i:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Ui(e)}static create(e){return new Ui(e)}}class dn extends Ui{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Z8(this,(t,r,i,a,s)=>e=e.replace(i,i+(r-t),s),!1),e}mapDesc(e,t=!1){return D8(this,e,t,!0)}invert(e){let t=this.sections.slice(),r=[];for(let i=0,a=0;i<t.length;i+=2){let s=t[i],o=t[i+1];if(o>=0){t[i]=o,t[i+1]=s;let u=i>>1;for(;r.length<u;)r.push(ft.empty);r.push(s?e.slice(a,a+s):ft.empty)}a+=s}return new dn(t,r)}compose(e){return this.empty?e:e.empty?this:eA(this,e,!0)}map(e,t=!1){return e.empty?this:D8(this,e,t,!0)}iterChanges(e,t=!1){Z8(this,e,t)}get desc(){return Ui.create(this.sections)}filter(e){let t=[],r=[],i=[],a=new j0(this);e:for(let s=0,o=0;;){let u=s==e.length?1e9:e[s++];for(;o<u||o==u&&a.len==0;){if(a.done)break e;let m=Math.min(a.len,u-o);_n(i,m,-1);let p=a.ins==-1?-1:a.off==0?a.ins:0;_n(t,m,p),p>0&&$s(r,t,a.text),a.forward(m),o+=m}let d=e[s++];for(;o<d;){if(a.done)break e;let m=Math.min(a.len,d-o);_n(t,m,-1),_n(i,m,a.ins==-1?-1:a.off==0?a.ins:0),a.forward(m),o+=m}}return{changes:new dn(t,r),filtered:Ui.create(i)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let r=this.sections[t],i=this.sections[t+1];i<0?e.push(r):i==0?e.push([r]):e.push([r].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,r){let i=[],a=[],s=0,o=null;function u(m=!1){if(!m&&!i.length)return;s<t&&_n(i,t-s,-1);let p=new dn(i,a);o=o?o.compose(p.map(o)):p,i=[],a=[],s=0}function d(m){if(Array.isArray(m))for(let p of m)d(p);else if(m instanceof dn){if(m.length!=t)throw new RangeError(`Mismatched change set length (got ${m.length}, expected ${t})`);u(),o=o?o.compose(m.map(o)):m}else{let{from:p,to:O=p,insert:b}=m;if(p>O||p<0||O>t)throw new RangeError(`Invalid change range ${p} to ${O} (in doc of length ${t})`);let S=b?typeof b=="string"?ft.of(b.split(r||j8)):b:ft.empty,k=S.length;if(p==O&&k==0)return;p<s&&u(),p>s&&_n(i,p-s,-1),_n(i,O-p,k),$s(a,i,S),s=O}}return d(e),u(!o),o}static empty(e){return new dn(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],r=[];for(let i=0;i<e.length;i++){let a=e[i];if(typeof a=="number")t.push(a,-1);else{if(!Array.isArray(a)||typeof a[0]!="number"||a.some((s,o)=>o&&typeof s!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(a.length==1)t.push(a[0],0);else{for(;r.length<i;)r.push(ft.empty);r[i]=ft.of(a.slice(1)),t.push(a[0],r[i].length)}}}return new dn(t,r)}static createSet(e,t){return new dn(e,t)}}function _n(n,e,t,r=!1){if(e==0&&t<=0)return;let i=n.length-2;i>=0&&t<=0&&t==n[i+1]?n[i]+=e:i>=0&&e==0&&n[i]==0?n[i+1]+=t:r?(n[i]+=e,n[i+1]+=t):n.push(e,t)}function $s(n,e,t){if(t.length==0)return;let r=e.length-2>>1;if(r<n.length)n[n.length-1]=n[n.length-1].append(t);else{for(;n.length<r;)n.push(ft.empty);n.push(t)}}function Z8(n,e,t){let r=n.inserted;for(let i=0,a=0,s=0;s<n.sections.length;){let o=n.sections[s++],u=n.sections[s++];if(u<0)i+=o,a+=o;else{let d=i,m=a,p=ft.empty;for(;d+=o,m+=u,u&&r&&(p=p.append(r[s-2>>1])),!(t||s==n.sections.length||n.sections[s+1]<0);)o=n.sections[s++],u=n.sections[s++];e(i,d,a,m,p),i=d,a=m}}}function D8(n,e,t,r=!1){let i=[],a=r?[]:null,s=new j0(n),o=new j0(e);for(let u=-1;;){if(s.done&&o.len||o.done&&s.len)throw new Error("Mismatched change set lengths");if(s.ins==-1&&o.ins==-1){let d=Math.min(s.len,o.len);_n(i,d,-1),s.forward(d),o.forward(d)}else if(o.ins>=0&&(s.ins<0||u==s.i||s.off==0&&(o.len<s.len||o.len==s.len&&!t))){let d=o.len;for(_n(i,o.ins,-1);d;){let m=Math.min(s.len,d);s.ins>=0&&u<s.i&&s.len<=m&&(_n(i,0,s.ins),a&&$s(a,i,s.text),u=s.i),s.forward(m),d-=m}o.next()}else if(s.ins>=0){let d=0,m=s.len;for(;m;)if(o.ins==-1){let p=Math.min(m,o.len);d+=p,m-=p,o.forward(p)}else if(o.ins==0&&o.len<m)m-=o.len,o.next();else break;_n(i,d,u<s.i?s.ins:0),a&&u<s.i&&$s(a,i,s.text),u=s.i,s.forward(s.len-m)}else{if(s.done&&o.done)return a?dn.createSet(i,a):Ui.create(i);throw new Error("Mismatched change set lengths")}}}function eA(n,e,t=!1){let r=[],i=t?[]:null,a=new j0(n),s=new j0(e);for(let o=!1;;){if(a.done&&s.done)return i?dn.createSet(r,i):Ui.create(r);if(a.ins==0)_n(r,a.len,0,o),a.next();else if(s.len==0&&!s.done)_n(r,0,s.ins,o),i&&$s(i,r,s.text),s.next();else{if(a.done||s.done)throw new Error("Mismatched change set lengths");{let u=Math.min(a.len2,s.len),d=r.length;if(a.ins==-1){let m=s.ins==-1?-1:s.off?0:s.ins;_n(r,u,m,o),i&&m&&$s(i,r,s.text)}else s.ins==-1?(_n(r,a.off?0:a.len,u,o),i&&$s(i,r,a.textBit(u))):(_n(r,a.off?0:a.len,s.off?0:s.ins,o),i&&!s.off&&$s(i,r,s.text));o=(a.ins>u||s.ins>=0&&s.len>u)&&(o||r.length>d),a.forward2(u),s.forward(u)}}}}class j0{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?ft.empty:e[t]}textBit(e){let{inserted:t}=this.set,r=this.i-2>>1;return r>=t.length&&!e?ft.empty:t[r].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class xl{constructor(e,t,r){this.from=e,this.to=t,this.flags=r}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,t=-1){let r,i;return this.empty?r=i=e.mapPos(this.from,t):(r=e.mapPos(this.from,1),i=e.mapPos(this.to,-1)),r==this.from&&i==this.to?this:new xl(r,i,this.flags)}extend(e,t=e,r=0){if(e<=this.anchor&&t>=this.anchor)return we.range(e,t,void 0,void 0,r);let i=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return we.range(this.anchor,i,void 0,void 0,r)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return we.range(e.anchor,e.head)}static create(e,t,r){return new xl(e,t,r)}}class we{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:we.create(this.ranges.map(r=>r.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let r=0;r<this.ranges.length;r++)if(!this.ranges[r].eq(e.ranges[r],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new we([this.main],0)}addRange(e,t=!0){return we.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let r=this.ranges.slice();return r[t]=e,we.create(r,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new we(e.ranges.map(t=>xl.fromJSON(t)),e.main)}static single(e,t=e){return new we([we.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let r=0,i=0;i<e.length;i++){let a=e[i];if(a.empty?a.from<=r:a.from<r)return we.normalized(e.slice(),t);r=a.to}return new we(e,t)}static cursor(e,t=0,r,i){return xl.create(e,e,(t==0?0:t<0?8:16)|(r==null?7:Math.min(6,r))|(i??16777215)<<6)}static range(e,t,r,i,a){let s=(r??16777215)<<6|(i==null?7:Math.min(6,i));return!a&&e!=t&&(a=t<e?1:-1),t<e?xl.create(t,e,48|s):xl.create(e,t,(a?a<0?8:16:0)|s)}static normalized(e,t=0){let r=e[t];e.sort((i,a)=>i.from-a.from),t=e.indexOf(r);for(let i=1;i<e.length;i++){let a=e[i],s=e[i-1];if(a.empty?a.from<=s.to:a.from<s.to){let o=s.from,u=Math.max(a.to,s.to);i<=t&&t--,e.splice(--i,2,a.anchor>a.head?we.range(u,o):we.range(o,u))}}return new we(e,t)}}function tA(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let w6=0;class ze{constructor(e,t,r,i,a){this.combine=e,this.compareInput=t,this.compare=r,this.isStatic=i,this.id=w6++,this.default=e([]),this.extensions=typeof a=="function"?a(this):a}get reader(){return this}static define(e={}){return new ze(e.combine||(t=>t),e.compareInput||((t,r)=>t===r),e.compare||(e.combine?(t,r)=>t===r:T6),!!e.static,e.enables)}of(e){return new kh([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new kh(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new kh(e,this,2,t)}from(e,t){return t||(t=r=>r),this.compute([e],r=>t(r.field(e)))}}function T6(n,e){return n==e||n.length==e.length&&n.every((t,r)=>t===e[r])}class kh{constructor(e,t,r,i){this.dependencies=e,this.facet=t,this.type=r,this.value=i,this.id=w6++}dynamicSlot(e){var t;let r=this.value,i=this.facet.compareInput,a=this.id,s=e[a]>>1,o=this.type==2,u=!1,d=!1,m=[];for(let p of this.dependencies)p=="doc"?u=!0:p=="selection"?d=!0:(((t=e[p.id])!==null&&t!==void 0?t:1)&1)==0&&m.push(e[p.id]);return{create(p){return p.values[s]=r(p),1},update(p,O){if(u&&O.docChanged||d&&(O.docChanged||O.selection)||V8(p,m)){let b=r(p);if(o?!ZS(b,p.values[s],i):!i(b,p.values[s]))return p.values[s]=b,1}return 0},reconfigure:(p,O)=>{let b,S=O.config.address[a];if(S!=null){let k=Xh(O,S);if(this.dependencies.every(T=>T instanceof ze?O.facet(T)===p.facet(T):T instanceof _r?O.field(T,!1)==p.field(T,!1):!0)||(o?ZS(b=r(p),k,i):i(b=r(p),k)))return p.values[s]=k,0}else b=r(p);return p.values[s]=b,1}}}}function ZS(n,e,t){if(n.length!=e.length)return!1;for(let r=0;r<n.length;r++)if(!t(n[r],e[r]))return!1;return!0}function V8(n,e){let t=!1;for(let r of e)h0(n,r)&1&&(t=!0);return t}function CL(n,e,t){let r=t.map(u=>n[u.id]),i=t.map(u=>u.type),a=r.filter(u=>!(u&1)),s=n[e.id]>>1;function o(u){let d=[];for(let m=0;m<r.length;m++){let p=Xh(u,r[m]);if(i[m]==2)for(let O of p)d.push(O);else d.push(p)}return e.combine(d)}return{create(u){for(let d of r)h0(u,d);return u.values[s]=o(u),1},update(u,d){if(!V8(u,a))return 0;let m=o(u);return e.compare(m,u.values[s])?0:(u.values[s]=m,1)},reconfigure(u,d){let m=V8(u,r),p=d.config.facets[e.id],O=d.facet(e);if(p&&!m&&T6(t,p))return u.values[s]=O,0;let b=o(u);return e.compare(b,O)?(u.values[s]=O,0):(u.values[s]=b,1)}}}const Dd=ze.define({static:!0});class _r{constructor(e,t,r,i,a){this.id=e,this.createF=t,this.updateF=r,this.compareF=i,this.spec=a,this.provides=void 0}static define(e){let t=new _r(w6++,e.create,e.update,e.compare||((r,i)=>r===i),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(Dd).find(r=>r.field==this);return((t==null?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:r=>(r.values[t]=this.create(r),1),update:(r,i)=>{let a=r.values[t],s=this.updateF(a,i);return this.compareF(a,s)?0:(r.values[t]=s,1)},reconfigure:(r,i)=>{let a=r.facet(Dd),s=i.facet(Dd),o;return(o=a.find(u=>u.field==this))&&o!=s.find(u=>u.field==this)?(r.values[t]=o.create(r),1):i.config.address[this.id]!=null?(r.values[t]=i.field(this),0):(r.values[t]=this.create(r),1)}}}init(e){return[this,Dd.of({field:this,create:e})]}get extension(){return this}}const pl={lowest:4,low:3,default:2,high:1,highest:0};function Iu(n){return e=>new nA(e,n)}const rf={highest:Iu(pl.highest),high:Iu(pl.high),default:Iu(pl.default),low:Iu(pl.low),lowest:Iu(pl.lowest)};class nA{constructor(e,t){this.inner=e,this.prec=t}}class D1{of(e){return new I8(this,e)}reconfigure(e){return D1.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class I8{constructor(e,t){this.compartment=e,this.inner=t}}class Fh{constructor(e,t,r,i,a,s){for(this.base=e,this.compartments=t,this.dynamicSlots=r,this.address=i,this.staticValues=a,this.facets=s,this.statusTemplate=[];this.statusTemplate.length<r.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,r){let i=[],a=Object.create(null),s=new Map;for(let O of EL(e,t,s))O instanceof _r?i.push(O):(a[O.facet.id]||(a[O.facet.id]=[])).push(O);let o=Object.create(null),u=[],d=[];for(let O of i)o[O.id]=d.length<<1,d.push(b=>O.slot(b));let m=r==null?void 0:r.config.facets;for(let O in a){let b=a[O],S=b[0].facet,k=m&&m[O]||[];if(b.every(T=>T.type==0))if(o[S.id]=u.length<<1|1,T6(k,b))u.push(r.facet(S));else{let T=S.combine(b.map(w=>w.value));u.push(r&&S.compare(T,r.facet(S))?r.facet(S):T)}else{for(let T of b)T.type==0?(o[T.id]=u.length<<1|1,u.push(T.value)):(o[T.id]=d.length<<1,d.push(w=>T.dynamicSlot(w)));o[S.id]=d.length<<1,d.push(T=>CL(T,S,b))}}let p=d.map(O=>O(o));return new Fh(e,s,p,o,u,a)}}function EL(n,e,t){let r=[[],[],[],[],[]],i=new Map;function a(s,o){let u=i.get(s);if(u!=null){if(u<=o)return;let d=r[u].indexOf(s);d>-1&&r[u].splice(d,1),s instanceof I8&&t.delete(s.compartment)}if(i.set(s,o),Array.isArray(s))for(let d of s)a(d,o);else if(s instanceof I8){if(t.has(s.compartment))throw new RangeError("Duplicate use of compartment in extensions");let d=e.get(s.compartment)||s.inner;t.set(s.compartment,d),a(d,o)}else if(s instanceof nA)a(s.inner,s.prec);else if(s instanceof _r)r[o].push(s),s.provides&&a(s.provides,o);else if(s instanceof kh)r[o].push(s),s.facet.extensions&&a(s.facet.extensions,pl.default);else{let d=s.extension;if(!d)throw new Error(`Unrecognized extension value in extension set (${s}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(d,o)}}return a(n,pl.default),r.reduce((s,o)=>s.concat(o))}function h0(n,e){if(e&1)return 2;let t=e>>1,r=n.status[t];if(r==4)throw new Error("Cyclic dependency between fields and/or facets");if(r&2)return r;n.status[t]=4;let i=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|i}function Xh(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}const rA=ze.define(),L8=ze.define({combine:n=>n.some(e=>e),static:!0}),iA=ze.define({combine:n=>n.length?n[0]:void 0,static:!0}),aA=ze.define(),sA=ze.define(),lA=ze.define(),oA=ze.define({combine:n=>n.length?n[0]:!1});class qa{constructor(e,t){this.type=e,this.value=t}static define(){return new ML}}class ML{of(e){return new qa(this,e)}}class $L{constructor(e){this.map=e}of(e){return new mt(this,e)}}class mt{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new mt(this.type,t)}is(e){return this.type==e}static define(e={}){return new $L(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let r=[];for(let i of e){let a=i.map(t);a&&r.push(a)}return r}}mt.reconfigure=mt.define();mt.appendConfig=mt.define();class cn{constructor(e,t,r,i,a,s){this.startState=e,this.changes=t,this.selection=r,this.effects=i,this.annotations=a,this.scrollIntoView=s,this._doc=null,this._state=null,r&&tA(r,t.newLength),a.some(o=>o.type==cn.time)||(this.annotations=a.concat(cn.time.of(Date.now())))}static create(e,t,r,i,a,s){return new cn(e,t,r,i,a,s)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(cn.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}cn.time=qa.define();cn.userEvent=qa.define();cn.addToHistory=qa.define();cn.remote=qa.define();function RL(n,e){let t=[];for(let r=0,i=0;;){let a,s;if(r<n.length&&(i==e.length||e[i]>=n[r]))a=n[r++],s=n[r++];else if(i<e.length)a=e[i++],s=e[i++];else return t;!t.length||t[t.length-1]<a?t.push(a,s):t[t.length-1]<s&&(t[t.length-1]=s)}}function cA(n,e,t){var r;let i,a,s;return t?(i=e.changes,a=dn.empty(e.changes.length),s=n.changes.compose(e.changes)):(i=e.changes.map(n.changes),a=n.changes.mapDesc(e.changes,!0),s=n.changes.compose(i)),{changes:s,selection:e.selection?e.selection.map(a):(r=n.selection)===null||r===void 0?void 0:r.map(i),effects:mt.mapEffects(n.effects,i).concat(mt.mapEffects(e.effects,a)),annotations:n.annotations.length?n.annotations.concat(e.annotations):e.annotations,scrollIntoView:n.scrollIntoView||e.scrollIntoView}}function z8(n,e,t){let r=e.selection,i=dc(e.annotations);return e.userEvent&&(i=i.concat(cn.userEvent.of(e.userEvent))),{changes:e.changes instanceof dn?e.changes:dn.of(e.changes||[],t,n.facet(iA)),selection:r&&(r instanceof we?r:we.single(r.anchor,r.head)),effects:dc(e.effects),annotations:i,scrollIntoView:!!e.scrollIntoView}}function uA(n,e,t){let r=z8(n,e.length?e[0]:{},n.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let a=1;a<e.length;a++){e[a].filter===!1&&(t=!1);let s=!!e[a].sequential;r=cA(r,z8(n,e[a],s?r.changes.newLength:n.doc.length),s)}let i=cn.create(n,r.changes,r.selection,r.effects,r.annotations,r.scrollIntoView);return _L(t?QL(i):i)}function QL(n){let e=n.startState,t=!0;for(let i of e.facet(aA)){let a=i(n);if(a===!1){t=!1;break}Array.isArray(a)&&(t=t===!0?a:RL(t,a))}if(t!==!0){let i,a;if(t===!1)a=n.changes.invertedDesc,i=dn.empty(e.doc.length);else{let s=n.changes.filter(t);i=s.changes,a=s.filtered.mapDesc(s.changes).invertedDesc}n=cn.create(e,i,n.selection&&n.selection.map(a),mt.mapEffects(n.effects,a),n.annotations,n.scrollIntoView)}let r=e.facet(sA);for(let i=r.length-1;i>=0;i--){let a=r[i](n);a instanceof cn?n=a:Array.isArray(a)&&a.length==1&&a[0]instanceof cn?n=a[0]:n=uA(e,dc(a),!1)}return n}function _L(n){let e=n.startState,t=e.facet(lA),r=n;for(let i=t.length-1;i>=0;i--){let a=t[i](n);a&&Object.keys(a).length&&(r=cA(r,z8(e,a,n.changes.newLength),!0))}return r==n?n:cn.create(e,n.changes,n.selection,r.effects,r.annotations,r.scrollIntoView)}const NL=[];function dc(n){return n==null?NL:Array.isArray(n)?n:[n]}var Vt=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(Vt||(Vt={}));const jL=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let B8;try{B8=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function ZL(n){if(B8)return B8.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>"€"&&(t.toUpperCase()!=t.toLowerCase()||jL.test(t)))return!0}return!1}function DL(n){return e=>{if(!/\S/.test(e))return Vt.Space;if(ZL(e))return Vt.Word;for(let t=0;t<n.length;t++)if(e.indexOf(n[t])>-1)return Vt.Word;return Vt.Other}}class dt{constructor(e,t,r,i,a,s){this.config=e,this.doc=t,this.selection=r,this.values=i,this.status=e.statusTemplate.slice(),this.computeSlot=a,s&&(s._state=this);for(let o=0;o<this.config.dynamicSlots.length;o++)h0(this,o<<1);this.computeSlot=null}field(e,t=!0){let r=this.config.address[e.id];if(r==null){if(t)throw new RangeError("Field is not present in this state");return}return h0(this,r),Xh(this,r)}update(...e){return uA(this,e,!0)}applyTransaction(e){let t=this.config,{base:r,compartments:i}=t;for(let o of e.effects)o.is(D1.reconfigure)?(t&&(i=new Map,t.compartments.forEach((u,d)=>i.set(d,u)),t=null),i.set(o.value.compartment,o.value.extension)):o.is(mt.reconfigure)?(t=null,r=o.value):o.is(mt.appendConfig)&&(t=null,r=dc(r).concat(o.value));let a;t?a=e.startState.values.slice():(t=Fh.resolve(r,i,this),a=new dt(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(u,d)=>d.reconfigure(u,this),null).values);let s=e.startState.facet(L8)?e.newSelection:e.newSelection.asSingle();new dt(t,e.newDoc,s,a,(o,u)=>u.update(o,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:we.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,r=e(t.ranges[0]),i=this.changes(r.changes),a=[r.range],s=dc(r.effects);for(let o=1;o<t.ranges.length;o++){let u=e(t.ranges[o]),d=this.changes(u.changes),m=d.map(i);for(let O=0;O<o;O++)a[O]=a[O].map(m);let p=i.mapDesc(d,!0);a.push(u.range.map(p)),i=i.compose(m),s=mt.mapEffects(s,m).concat(mt.mapEffects(dc(u.effects),p))}return{changes:i,selection:we.create(a,t.mainIndex),effects:s}}changes(e=[]){return e instanceof dn?e:dn.of(e,this.doc.length,this.facet(dt.lineSeparator))}toText(e){return ft.of(e.split(this.facet(dt.lineSeparator)||j8))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(h0(this,t),Xh(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let r in e){let i=e[r];i instanceof _r&&this.config.address[i.id]!=null&&(t[r]=i.spec.toJSON(this.field(e[r]),this))}return t}static fromJSON(e,t={},r){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let i=[];if(r){for(let a in r)if(Object.prototype.hasOwnProperty.call(e,a)){let s=r[a],o=e[a];i.push(s.init(u=>s.spec.fromJSON(o,u)))}}return dt.create({doc:e.doc,selection:we.fromJSON(e.selection),extensions:t.extensions?i.concat([t.extensions]):i})}static create(e={}){let t=Fh.resolve(e.extensions||[],new Map),r=e.doc instanceof ft?e.doc:ft.of((e.doc||"").split(t.staticFacet(dt.lineSeparator)||j8)),i=e.selection?e.selection instanceof we?e.selection:we.single(e.selection.anchor,e.selection.head):we.single(0);return tA(i,r.length),t.staticFacet(L8)||(i=i.asSingle()),new dt(t,r,i,t.dynamicSlots.map(()=>null),(a,s)=>s.create(a),null)}get tabSize(){return this.facet(dt.tabSize)}get lineBreak(){return this.facet(dt.lineSeparator)||`
342
- `}get readOnly(){return this.facet(oA)}phrase(e,...t){for(let r of this.facet(dt.phrases))if(Object.prototype.hasOwnProperty.call(r,e)){e=r[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(r,i)=>{if(i=="$")return"$";let a=+(i||1);return!a||a>t.length?r:t[a-1]})),e}languageDataAt(e,t,r=-1){let i=[];for(let a of this.facet(rA))for(let s of a(this,t,r))Object.prototype.hasOwnProperty.call(s,e)&&i.push(s[e]);return i}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return DL(t.length?t[0]:"")}wordAt(e){let{text:t,from:r,length:i}=this.doc.lineAt(e),a=this.charCategorizer(e),s=e-r,o=e-r;for(;s>0;){let u=xn(t,s,!1);if(a(t.slice(u,s))!=Vt.Word)break;s=u}for(;o<i;){let u=xn(t,o);if(a(t.slice(o,u))!=Vt.Word)break;o=u}return s==o?null:we.range(s+r,o+r)}}dt.allowMultipleSelections=L8;dt.tabSize=ze.define({combine:n=>n.length?n[0]:4});dt.lineSeparator=iA;dt.readOnly=oA;dt.phrases=ze.define({compare(n,e){let t=Object.keys(n),r=Object.keys(e);return t.length==r.length&&t.every(i=>n[i]==e[i])}});dt.languageData=rA;dt.changeFilter=aA;dt.transactionFilter=sA;dt.transactionExtender=lA;D1.reconfigure=mt.define();function Zc(n,e,t={}){let r={};for(let i of n)for(let a of Object.keys(i)){let s=i[a],o=r[a];if(o===void 0)r[a]=s;else if(!(o===s||s===void 0))if(Object.hasOwnProperty.call(t,a))r[a]=t[a](o,s);else throw new Error("Config merge conflict for field "+a)}for(let i in e)r[i]===void 0&&(r[i]=e[i]);return r}class Zs{eq(e){return this==e}range(e,t=e){return H8.create(e,t,this)}}Zs.prototype.startSide=Zs.prototype.endSide=0;Zs.prototype.point=!1;Zs.prototype.mapMode=jn.TrackDel;function A6(n,e){return n==e||n.constructor==e.constructor&&n.eq(e)}let H8=class fA{constructor(e,t,r){this.from=e,this.to=t,this.value=r}static create(e,t,r){return new fA(e,t,r)}};function F8(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}class P6{constructor(e,t,r,i){this.from=e,this.to=t,this.value=r,this.maxPoint=i}get length(){return this.to[this.to.length-1]}findIndex(e,t,r,i=0){let a=r?this.to:this.from;for(let s=i,o=a.length;;){if(s==o)return s;let u=s+o>>1,d=a[u]-e||(r?this.value[u].endSide:this.value[u].startSide)-t;if(u==s)return d>=0?s:o;d>=0?o=u:s=u+1}}between(e,t,r,i){for(let a=this.findIndex(t,-1e9,!0),s=this.findIndex(r,1e9,!1,a);a<s;a++)if(i(this.from[a]+e,this.to[a]+e,this.value[a])===!1)return!1}map(e,t){let r=[],i=[],a=[],s=-1,o=-1;for(let u=0;u<this.value.length;u++){let d=this.value[u],m=this.from[u]+e,p=this.to[u]+e,O,b;if(m==p){let S=t.mapPos(m,d.startSide,d.mapMode);if(S==null||(O=b=S,d.startSide!=d.endSide&&(b=t.mapPos(m,d.endSide),b<O)))continue}else if(O=t.mapPos(m,d.startSide),b=t.mapPos(p,d.endSide),O>b||O==b&&d.startSide>0&&d.endSide<=0)continue;(b-O||d.endSide-d.startSide)<0||(s<0&&(s=O),d.point&&(o=Math.max(o,b-O)),r.push(d),i.push(O-s),a.push(b-s))}return{mapped:r.length?new P6(i,a,r,o):null,pos:s}}}class lt{constructor(e,t,r,i){this.chunkPos=e,this.chunk=t,this.nextLayer=r,this.maxPoint=i}static create(e,t,r,i){return new lt(e,t,r,i)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:r=!1,filterFrom:i=0,filterTo:a=this.length}=e,s=e.filter;if(t.length==0&&!s)return this;if(r&&(t=t.slice().sort(F8)),this.isEmpty)return t.length?lt.of(t):this;let o=new dA(this,null,-1).goto(0),u=0,d=[],m=new Vl;for(;o.value||u<t.length;)if(u<t.length&&(o.from-t[u].from||o.startSide-t[u].value.startSide)>=0){let p=t[u++];m.addInner(p.from,p.to,p.value)||d.push(p)}else o.rangeIndex==1&&o.chunkIndex<this.chunk.length&&(u==t.length||this.chunkEnd(o.chunkIndex)<t[u].from)&&(!s||i>this.chunkEnd(o.chunkIndex)||a<this.chunkPos[o.chunkIndex])&&m.addChunk(this.chunkPos[o.chunkIndex],this.chunk[o.chunkIndex])?o.nextChunk():((!s||i>o.to||a<o.from||s(o.from,o.to,o.value))&&(m.addInner(o.from,o.to,o.value)||d.push(H8.create(o.from,o.to,o.value))),o.next());return m.finishInner(this.nextLayer.isEmpty&&!d.length?lt.empty:this.nextLayer.update({add:d,filter:s,filterFrom:i,filterTo:a}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],r=[],i=-1;for(let s=0;s<this.chunk.length;s++){let o=this.chunkPos[s],u=this.chunk[s],d=e.touchesRange(o,o+u.length);if(d===!1)i=Math.max(i,u.maxPoint),t.push(u),r.push(e.mapPos(o));else if(d===!0){let{mapped:m,pos:p}=u.map(o,e);m&&(i=Math.max(i,m.maxPoint),t.push(m),r.push(p))}}let a=this.nextLayer.map(e);return t.length==0?a:new lt(r,t,a||lt.empty,i)}between(e,t,r){if(!this.isEmpty){for(let i=0;i<this.chunk.length;i++){let a=this.chunkPos[i],s=this.chunk[i];if(t>=a&&e<=a+s.length&&s.between(a,e-a,t-a,r)===!1)return}this.nextLayer.between(e,t,r)}}iter(e=0){return Z0.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Z0.from(e).goto(t)}static compare(e,t,r,i,a=-1){let s=e.filter(p=>p.maxPoint>0||!p.isEmpty&&p.maxPoint>=a),o=t.filter(p=>p.maxPoint>0||!p.isEmpty&&p.maxPoint>=a),u=DS(s,o,r),d=new Lu(s,u,a),m=new Lu(o,u,a);r.iterGaps((p,O,b)=>VS(d,p,m,O,b,i)),r.empty&&r.length==0&&VS(d,0,m,0,0,i)}static eq(e,t,r=0,i){i==null&&(i=999999999);let a=e.filter(m=>!m.isEmpty&&t.indexOf(m)<0),s=t.filter(m=>!m.isEmpty&&e.indexOf(m)<0);if(a.length!=s.length)return!1;if(!a.length)return!0;let o=DS(a,s),u=new Lu(a,o,0).goto(r),d=new Lu(s,o,0).goto(r);for(;;){if(u.to!=d.to||!X8(u.active,d.active)||u.point&&(!d.point||!A6(u.point,d.point)))return!1;if(u.to>i)return!0;u.next(),d.next()}}static spans(e,t,r,i,a=-1){let s=new Lu(e,null,a).goto(t),o=t,u=s.openStart;for(;;){let d=Math.min(s.to,r);if(s.point){let m=s.activeForPoint(s.to),p=s.pointFrom<t?m.length+1:s.point.startSide<0?m.length:Math.min(m.length,u);i.point(o,d,s.point,m,p,s.pointRank),u=Math.min(s.openEnd(d),m.length)}else d>o&&(i.span(o,d,s.active,u),u=s.openEnd(d));if(s.to>r)return u+(s.point&&s.to>r?1:0);o=s.to,s.next()}}static of(e,t=!1){let r=new Vl;for(let i of e instanceof H8?[e]:t?VL(e):e)r.add(i.from,i.to,i.value);return r.finish()}static join(e){if(!e.length)return lt.empty;let t=e[e.length-1];for(let r=e.length-2;r>=0;r--)for(let i=e[r];i!=lt.empty;i=i.nextLayer)t=new lt(i.chunkPos,i.chunk,t,Math.max(i.maxPoint,t.maxPoint));return t}}lt.empty=new lt([],[],null,-1);function VL(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let r=n[t];if(F8(e,r)>0)return n.slice().sort(F8);e=r}return n}lt.empty.nextLayer=lt.empty;class Vl{finishChunk(e){this.chunks.push(new P6(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,t,r){this.addInner(e,t,r)||(this.nextLayer||(this.nextLayer=new Vl)).add(e,t,r)}addInner(e,t,r){let i=e-this.lastTo||r.startSide-this.last.endSide;if(i<=0&&(e-this.lastFrom||r.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return i<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=r,this.lastFrom=e,this.lastTo=t,this.value.push(r),r.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let r=t.value.length-1;return this.last=t.value[r],this.lastFrom=t.from[r]+e,this.lastTo=t.to[r]+e,!0}finish(){return this.finishInner(lt.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=lt.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function DS(n,e,t){let r=new Map;for(let a of n)for(let s=0;s<a.chunk.length;s++)a.chunk[s].maxPoint<=0&&r.set(a.chunk[s],a.chunkPos[s]);let i=new Set;for(let a of e)for(let s=0;s<a.chunk.length;s++){let o=r.get(a.chunk[s]);o!=null&&(t?t.mapPos(o):o)==a.chunkPos[s]&&!(t!=null&&t.touchesRange(o,o+a.chunk[s].length))&&i.add(a.chunk[s])}return i}class dA{constructor(e,t,r,i=0){this.layer=e,this.skip=t,this.minPoint=r,this.rank=i}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,r){for(;this.chunkIndex<this.layer.chunk.length;){let i=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(i)||this.layer.chunkEnd(this.chunkIndex)<e||i.maxPoint<this.minPoint))break;this.chunkIndex++,r=!1}if(this.chunkIndex<this.layer.chunk.length){let i=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!r||this.rangeIndex<i)&&this.setRangeIndex(i)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],t=this.layer.chunk[this.chunkIndex],r=e+t.from[this.rangeIndex];if(this.from=r,this.to=e+t.to[this.rangeIndex],this.value=t.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}}class Z0{constructor(e){this.heap=e}static from(e,t=null,r=-1){let i=[];for(let a=0;a<e.length;a++)for(let s=e[a];!s.isEmpty;s=s.nextLayer)s.maxPoint>=r&&i.push(new dA(s,t,r,a));return i.length==1?i[0]:new Z0(i)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let r of this.heap)r.goto(e,t);for(let r=this.heap.length>>1;r>=0;r--)Wg(this.heap,r);return this.next(),this}forward(e,t){for(let r of this.heap)r.forward(e,t);for(let r=this.heap.length>>1;r>=0;r--)Wg(this.heap,r);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Wg(this.heap,0)}}}function Wg(n,e){for(let t=n[e];;){let r=(e<<1)+1;if(r>=n.length)break;let i=n[r];if(r+1<n.length&&i.compare(n[r+1])>=0&&(i=n[r+1],r++),t.compare(i)<0)break;n[r]=t,n[e]=i,e=r}}class Lu{constructor(e,t,r){this.minPoint=r,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Z0.from(e,t,r)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){Vd(this.active,e),Vd(this.activeTo,e),Vd(this.activeRank,e),this.minActive=IS(this.active,this.activeTo)}addActive(e){let t=0,{value:r,to:i,rank:a}=this.cursor;for(;t<this.activeRank.length&&(a-this.activeRank[t]||i-this.activeTo[t])>0;)t++;Id(this.active,t,r),Id(this.activeTo,t,i),Id(this.activeRank,t,a),e&&Id(e,t,this.cursor.from),this.minActive=IS(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let r=this.openStart<0?[]:null;for(;;){let i=this.minActive;if(i>-1&&(this.activeTo[i]-this.cursor.from||this.active[i].endSide-this.cursor.startSide)<0){if(this.activeTo[i]>e){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),r&&Vd(r,i)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let a=this.cursor.value;if(!a.point)this.addActive(r),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=a,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=a.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(r){this.openStart=0;for(let i=r.length-1;i>=0&&r[i]<e;i--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let r=this.active.length-1;r>=0&&!(this.activeRank[r]<this.pointRank);r--)(this.activeTo[r]>e||this.activeTo[r]==e&&this.active[r].endSide>=this.point.endSide)&&t.push(this.active[r]);return t.reverse()}openEnd(e){let t=0;for(let r=this.activeTo.length-1;r>=0&&this.activeTo[r]>e;r--)t++;return t}}function VS(n,e,t,r,i,a){n.goto(e),t.goto(r);let s=r+i,o=r,u=r-e,d=!!a.boundChange;for(let m=!1;;){let p=n.to+u-t.to,O=p||n.endSide-t.endSide,b=O<0?n.to+u:t.to,S=Math.min(b,s);if(n.point||t.point?(n.point&&t.point&&A6(n.point,t.point)&&X8(n.activeForPoint(n.to),t.activeForPoint(t.to))||a.comparePoint(o,S,n.point,t.point),m=!1):(m&&a.boundChange(o),S>o&&!X8(n.active,t.active)&&a.compareRange(o,S,n.active,t.active),d&&S<s&&(p||n.openEnd(b)!=t.openEnd(b))&&(m=!0)),b>s)break;o=b,O<=0&&n.next(),O>=0&&t.next()}}function X8(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t]&&!A6(n[t],e[t]))return!1;return!0}function Vd(n,e){for(let t=e,r=n.length-1;t<r;t++)n[t]=n[t+1];n.pop()}function Id(n,e,t){for(let r=n.length-1;r>=e;r--)n[r+1]=n[r];n[e]=t}function IS(n,e){let t=-1,r=1e9;for(let i=0;i<e.length;i++)(e[i]-r||n[i].endSide-n[t].endSide)<0&&(t=i,r=e[i]);return t}function V1(n,e,t=n.length){let r=0;for(let i=0;i<t&&i<n.length;)n.charCodeAt(i)==9?(r+=e-r%e,i++):(r++,i=xn(n,i));return r}function IL(n,e,t,r){for(let i=0,a=0;;){if(a>=e)return i;if(i==n.length)break;a+=n.charCodeAt(i)==9?t-a%t:1,i=xn(n,i)}return n.length}const U8="ͼ",LS=typeof Symbol>"u"?"__"+U8:Symbol.for(U8),q8=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),zS=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class Ds{constructor(e,t){this.rules=[];let{finish:r}=t||{};function i(s){return/^@/.test(s)?[s]:s.split(/,\s*/)}function a(s,o,u,d){let m=[],p=/^@(\w+)\b/.exec(s[0]),O=p&&p[1]=="keyframes";if(p&&o==null)return u.push(s[0]+";");for(let b in o){let S=o[b];if(/&/.test(b))a(b.split(/,\s*/).map(k=>s.map(T=>k.replace(/&/,T))).reduce((k,T)=>k.concat(T)),S,u);else if(S&&typeof S=="object"){if(!p)throw new RangeError("The value of a property ("+b+") should be a primitive value.");a(i(b),S,m,O)}else S!=null&&m.push(b.replace(/_.*/,"").replace(/[A-Z]/g,k=>"-"+k.toLowerCase())+": "+S+";")}(m.length||O)&&u.push((r&&!p&&!d?s.map(r):s).join(", ")+" {"+m.join(" ")+"}")}for(let s in e)a(i(s),e[s],this.rules)}getRules(){return this.rules.join(`
343
- `)}static newName(){let e=zS[LS]||1;return zS[LS]=e+1,U8+e.toString(36)}static mount(e,t,r){let i=e[q8],a=r&&r.nonce;i?a&&i.setNonce(a):i=new LL(e,a),i.mount(Array.isArray(t)?t:[t],e)}}let BS=new Map;class LL{constructor(e,t){let r=e.ownerDocument||e,i=r.defaultView;if(!e.head&&e.adoptedStyleSheets&&i.CSSStyleSheet){let a=BS.get(r);if(a)return e[q8]=a;this.sheet=new i.CSSStyleSheet,BS.set(r,this)}else this.styleTag=r.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[q8]=this}mount(e,t){let r=this.sheet,i=0,a=0;for(let s=0;s<e.length;s++){let o=e[s],u=this.modules.indexOf(o);if(u<a&&u>-1&&(this.modules.splice(u,1),a--,u=-1),u==-1){if(this.modules.splice(a++,0,o),r)for(let d=0;d<o.rules.length;d++)r.insertRule(o.rules[d],i++)}else{for(;a<u;)i+=this.modules[a++].rules.length;i+=o.rules.length,a++}}if(r)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let s="";for(let u=0;u<this.modules.length;u++)s+=this.modules[u].getRules()+`
344
- `;this.styleTag.textContent=s;let o=t.head||t;this.styleTag.parentNode!=o&&o.insertBefore(this.styleTag,o.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}}var Vs={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},D0={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},zL=typeof navigator<"u"&&/Mac/.test(navigator.platform),BL=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Rn=0;Rn<10;Rn++)Vs[48+Rn]=Vs[96+Rn]=String(Rn);for(var Rn=1;Rn<=24;Rn++)Vs[Rn+111]="F"+Rn;for(var Rn=65;Rn<=90;Rn++)Vs[Rn]=String.fromCharCode(Rn+32),D0[Rn]=String.fromCharCode(Rn);for(var Gg in Vs)D0.hasOwnProperty(Gg)||(D0[Gg]=Vs[Gg]);function HL(n){var e=zL&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||BL&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?D0:Vs)[n.keyCode]||n.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function On(){var n=arguments[0];typeof n=="string"&&(n=document.createElement(n));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var i=t[r];typeof i=="string"?n.setAttribute(r,i):i!=null&&(n[r]=i)}e++}for(;e<arguments.length;e++)hA(n,arguments[e]);return n}function hA(n,e){if(typeof e=="string")n.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)n.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)hA(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}let zn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Y8=typeof document<"u"?document:{documentElement:{style:{}}};const W8=/Edge\/(\d+)/.exec(zn.userAgent),mA=/MSIE \d/.test(zn.userAgent),G8=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(zn.userAgent),I1=!!(mA||G8||W8),HS=!I1&&/gecko\/(\d+)/i.test(zn.userAgent),Kg=!I1&&/Chrome\/(\d+)/.exec(zn.userAgent),FL="webkitFontSmoothing"in Y8.documentElement.style,K8=!I1&&/Apple Computer/.test(zn.vendor),FS=K8&&(/Mobile\/\w+/.test(zn.userAgent)||zn.maxTouchPoints>2);var Ze={mac:FS||/Mac/.test(zn.platform),windows:/Win/.test(zn.platform),linux:/Linux|X11/.test(zn.platform),ie:I1,ie_version:mA?Y8.documentMode||6:G8?+G8[1]:W8?+W8[1]:0,gecko:HS,gecko_version:HS?+(/Firefox\/(\d+)/.exec(zn.userAgent)||[0,0])[1]:0,chrome:!!Kg,chrome_version:Kg?+Kg[1]:0,ios:FS,android:/Android\b/.test(zn.userAgent),webkit_version:FL?+(/\bAppleWebKit\/(\d+)/.exec(zn.userAgent)||[0,0])[1]:0,safari:K8,safari_version:K8?+(/\bVersion\/(\d+(\.\d+)?)/.exec(zn.userAgent)||[0,0])[1]:0,tabSize:Y8.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function C6(n,e){for(let t in n)t=="class"&&e.class?e.class+=" "+n.class:t=="style"&&e.style?e.style+=";"+n.style:e[t]=n[t];return e}const Uh=Object.create(null);function E6(n,e,t){if(n==e)return!0;n||(n=Uh),e||(e=Uh);let r=Object.keys(n),i=Object.keys(e);if(r.length-0!=i.length-0)return!1;for(let a of r)if(a!=t&&(i.indexOf(a)==-1||n[a]!==e[a]))return!1;return!0}function XL(n,e){for(let t=n.attributes.length-1;t>=0;t--){let r=n.attributes[t].name;e[r]==null&&n.removeAttribute(r)}for(let t in e){let r=e[t];t=="style"?n.style.cssText=r:n.getAttribute(t)!=r&&n.setAttribute(t,r)}}function XS(n,e,t){let r=!1;if(e)for(let i in e)t&&i in t||(r=!0,i=="style"?n.style.cssText="":n.removeAttribute(i));if(t)for(let i in t)e&&e[i]==t[i]||(r=!0,i=="style"?n.style.cssText=t[i]:n.setAttribute(i,t[i]));return r}function UL(n){let e=Object.create(null);for(let t=0;t<n.attributes.length;t++){let r=n.attributes[t];e[r.name]=r.value}return e}class Fl{eq(e){return!1}updateDOM(e,t,r){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,r){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}}var cr=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(cr||(cr={}));class Je extends Zs{constructor(e,t,r,i){super(),this.startSide=e,this.endSide=t,this.widget=r,this.spec=i}get heightRelevant(){return!1}static mark(e){return new af(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),r=!!e.block;return t+=r&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new Il(e,t,t,r,e.widget||null,!1)}static replace(e){let t=!!e.block,r,i;if(e.isBlockGap)r=-5e8,i=4e8;else{let{start:a,end:s}=pA(e,t);r=(a?t?-3e8:-1:5e8)-1,i=(s?t?2e8:1:-6e8)+1}return new Il(e,r,i,t,e.widget||null,!0)}static line(e){return new sf(e)}static set(e,t=!1){return lt.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Je.none=lt.empty;class af extends Je{constructor(e){let{start:t,end:r}=pA(e);super(t?-1:5e8,r?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?C6(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||Uh}eq(e){return this==e||e instanceof af&&this.tagName==e.tagName&&E6(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}af.prototype.point=!1;class sf extends Je{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof sf&&this.spec.class==e.spec.class&&E6(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}sf.prototype.mapMode=jn.TrackBefore;sf.prototype.point=!0;class Il extends Je{constructor(e,t,r,i,a,s){super(t,r,a,e),this.block=i,this.isReplace=s,this.mapMode=i?t<=0?jn.TrackBefore:jn.TrackAfter:jn.TrackDel}get type(){return this.startSide!=this.endSide?cr.WidgetRange:this.startSide<=0?cr.WidgetBefore:cr.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof Il&&qL(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}Il.prototype.point=!0;function pA(n,e=!1){let{inclusiveStart:t,inclusiveEnd:r}=n;return t==null&&(t=n.inclusive),r==null&&(r=n.inclusive),{start:t??e,end:r??e}}function qL(n,e){return n==e||!!(n&&e&&n.compare(e))}function hc(n,e,t,r=0){let i=t.length-1;i>=0&&t[i]+r>=n?t[i]=Math.max(t[i],e):t.push(n,e)}class V0 extends Zs{constructor(e,t){super(),this.tagName=e,this.attributes=t}eq(e){return e==this||e instanceof V0&&this.tagName==e.tagName&&E6(this.attributes,e.attributes)}static create(e){return new V0(e.tagName,e.attributes||Uh)}static set(e,t=!1){return lt.of(e,t)}}V0.prototype.startSide=V0.prototype.endSide=-1;function I0(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function J8(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function m0(n,e){if(!e.anchorNode)return!1;try{return J8(n,e.anchorNode)}catch{return!1}}function vh(n){return n.nodeType==3?L0(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function p0(n,e,t,r){return t?US(n,e,t,r,-1)||US(n,e,t,r,1):!1}function Is(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function qh(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function US(n,e,t,r,i){for(;;){if(n==t&&e==r)return!0;if(e==(i<0?0:Ha(n))){if(n.nodeName=="DIV")return!1;let a=n.parentNode;if(!a||a.nodeType!=1)return!1;e=Is(n)+(i<0?0:1),n=a}else if(n.nodeType==1){if(n=n.childNodes[e+(i<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=i<0?Ha(n):0}else return!1}}function Ha(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Yh(n,e){let t=e?n.left:n.right;return{left:t,right:t,top:n.top,bottom:n.bottom}}function YL(n){let e=n.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:n.innerWidth,top:0,bottom:n.innerHeight}}function gA(n,e){let t=e.width/n.offsetWidth,r=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(r>.995&&r<1.005||!isFinite(r)||Math.abs(e.height-n.offsetHeight)<1)&&(r=1),{scaleX:t,scaleY:r}}function WL(n,e,t,r,i,a,s,o){let u=n.ownerDocument,d=u.defaultView||window;for(let m=n,p=!1;m&&!p;)if(m.nodeType==1){let O,b=m==u.body,S=1,k=1;if(b)O=YL(d);else{if(/^(fixed|sticky)$/.test(getComputedStyle(m).position)&&(p=!0),m.scrollHeight<=m.clientHeight&&m.scrollWidth<=m.clientWidth){m=m.assignedSlot||m.parentNode;continue}let A=m.getBoundingClientRect();({scaleX:S,scaleY:k}=gA(m,A)),O={left:A.left,right:A.left+m.clientWidth*S,top:A.top,bottom:A.top+m.clientHeight*k}}let T=0,w=0;if(i=="nearest")e.top<O.top?(w=e.top-(O.top+s),t>0&&e.bottom>O.bottom+w&&(w=e.bottom-O.bottom+s)):e.bottom>O.bottom&&(w=e.bottom-O.bottom+s,t<0&&e.top-w<O.top&&(w=e.top-(O.top+s)));else{let A=e.bottom-e.top,E=O.bottom-O.top;w=(i=="center"&&A<=E?e.top+A/2-E/2:i=="start"||i=="center"&&t<0?e.top-s:e.bottom-E+s)-O.top}if(r=="nearest"?e.left<O.left?(T=e.left-(O.left+a),t>0&&e.right>O.right+T&&(T=e.right-O.right+a)):e.right>O.right&&(T=e.right-O.right+a,t<0&&e.left<O.left+T&&(T=e.left-(O.left+a))):T=(r=="center"?e.left+(e.right-e.left)/2-(O.right-O.left)/2:r=="start"==o?e.left-a:e.right-(O.right-O.left)+a)-O.left,T||w)if(b)d.scrollBy(T,w);else{let A=0,E=0;if(w){let C=m.scrollTop;m.scrollTop+=w/k,E=(m.scrollTop-C)*k}if(T){let C=m.scrollLeft;m.scrollLeft+=T/S,A=(m.scrollLeft-C)*S}e={left:e.left-A,top:e.top-E,right:e.right-A,bottom:e.bottom-E},A&&Math.abs(A-T)<1&&(r="nearest"),E&&Math.abs(E-w)<1&&(i="nearest")}if(b)break;(e.top<O.top||e.bottom>O.bottom||e.left<O.left||e.right>O.right)&&(e={left:Math.max(e.left,O.left),right:Math.min(e.right,O.right),top:Math.max(e.top,O.top),bottom:Math.min(e.bottom,O.bottom)}),m=m.assignedSlot||m.parentNode}else if(m.nodeType==11)m=m.host;else break}function OA(n,e=!0){let t=n.ownerDocument,r=null,i=null;for(let a=n.parentNode;a&&!(a==t.body||(!e||r)&&i);)if(a.nodeType==1)!i&&a.scrollHeight>a.clientHeight&&(i=a),e&&!r&&a.scrollWidth>a.clientWidth&&(r=a),a=a.assignedSlot||a.parentNode;else if(a.nodeType==11)a=a.host;else break;return{x:r,y:i}}class GL{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:r}=e;this.set(t,Math.min(e.anchorOffset,t?Ha(t):0),r,Math.min(e.focusOffset,r?Ha(r):0))}set(e,t,r,i){this.anchorNode=e,this.anchorOffset=t,this.focusNode=r,this.focusOffset=i}}let hl=null;Ze.safari&&Ze.safari_version>=26&&(hl=!1);function yA(n){if(n.setActive)return n.setActive();if(hl)return n.focus(hl);let e=[];for(let t=n;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(n.focus(hl==null?{get preventScroll(){return hl={preventScroll:!0},!0}}:void 0),!hl){hl=!1;for(let t=0;t<e.length;){let r=e[t++],i=e[t++],a=e[t++];r.scrollTop!=i&&(r.scrollTop=i),r.scrollLeft!=a&&(r.scrollLeft=a)}}}let qS;function L0(n,e,t=e){let r=qS||(qS=document.createRange());return r.setEnd(n,t),r.setStart(n,e),r}function mc(n,e,t,r){let i={key:e,code:e,keyCode:t,which:t,cancelable:!0};r&&({altKey:i.altKey,ctrlKey:i.ctrlKey,shiftKey:i.shiftKey,metaKey:i.metaKey}=r);let a=new KeyboardEvent("keydown",i);a.synthetic=!0,n.dispatchEvent(a);let s=new KeyboardEvent("keyup",i);return s.synthetic=!0,n.dispatchEvent(s),a.defaultPrevented||s.defaultPrevented}function KL(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function JL(n,e){let t=e.focusNode,r=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=r)return!1;for(r=Math.min(r,Ha(t));;)if(r){if(t.nodeType!=1)return!1;let i=t.childNodes[r-1];i.contentEditable=="false"?r--:(t=i,r=Ha(t))}else{if(t==n)return!0;r=Is(t),t=t.parentNode}}function bA(n){return n instanceof Window?n.pageYOffset>Math.max(0,n.document.documentElement.scrollHeight-n.innerHeight-4):n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function xA(n,e){for(let t=n,r=e;;){if(t.nodeType==3&&r>0)return{node:t,offset:r};if(t.nodeType==1&&r>0){if(t.contentEditable=="false")return null;t=t.childNodes[r-1],r=Ha(t)}else if(t.parentNode&&!qh(t))r=Is(t),t=t.parentNode;else return null}}function SA(n,e){for(let t=n,r=e;;){if(t.nodeType==3&&r<t.nodeValue.length)return{node:t,offset:r};if(t.nodeType==1&&r<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[r],r=0}else if(t.parentNode&&!qh(t))r=Is(t)+1,t=t.parentNode;else return null}}class yi{constructor(e,t,r=!0){this.node=e,this.offset=t,this.precise=r}static before(e,t){return new yi(e.parentNode,Is(e),t)}static after(e,t){return new yi(e.parentNode,Is(e)+1,t)}}var en=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(en||(en={}));const Ll=en.LTR,M6=en.RTL;function kA(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}const ez=kA("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),tz=kA("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),eO=Object.create(null),Ri=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);eO[e]=t,eO[t]=-e}function vA(n){return n<=247?ez[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?tz[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}const nz=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class zi{get dir(){return this.level%2?M6:Ll}constructor(e,t,r){this.from=e,this.to=t,this.level=r}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,r,i){let a=-1;for(let s=0;s<e.length;s++){let o=e[s];if(o.from<=t&&o.to>=t){if(o.level==r)return s;(a<0||(i!=0?i<0?o.from<t:o.to>t:e[a].level>o.level))&&(a=s)}}if(a<0)throw new RangeError("Index out of range");return a}}function wA(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++){let r=n[t],i=e[t];if(r.from!=i.from||r.to!=i.to||r.direction!=i.direction||!wA(r.inner,i.inner))return!1}return!0}const Et=[];function rz(n,e,t,r,i){for(let a=0;a<=r.length;a++){let s=a?r[a-1].to:e,o=a<r.length?r[a].from:t,u=a?256:i;for(let d=s,m=u,p=u;d<o;d++){let O=vA(n.charCodeAt(d));O==512?O=m:O==8&&p==4&&(O=16),Et[d]=O==4?2:O,O&7&&(p=O),m=O}for(let d=s,m=u,p=u;d<o;d++){let O=Et[d];if(O==128)d<o-1&&m==Et[d+1]&&m&24?O=Et[d]=m:Et[d]=256;else if(O==64){let b=d+1;for(;b<o&&Et[b]==64;)b++;let S=d&&m==8||b<t&&Et[b]==8?p==1?1:8:256;for(let k=d;k<b;k++)Et[k]=S;d=b-1}else O==8&&p==1&&(Et[d]=1);m=O,O&7&&(p=O)}}}function iz(n,e,t,r,i){let a=i==1?2:1;for(let s=0,o=0,u=0;s<=r.length;s++){let d=s?r[s-1].to:e,m=s<r.length?r[s].from:t;for(let p=d,O,b,S;p<m;p++)if(b=eO[O=n.charCodeAt(p)])if(b<0){for(let k=o-3;k>=0;k-=3)if(Ri[k+1]==-b){let T=Ri[k+2],w=T&2?i:T&4?T&1?a:i:0;w&&(Et[p]=Et[Ri[k]]=w),o=k;break}}else{if(Ri.length==189)break;Ri[o++]=p,Ri[o++]=O,Ri[o++]=u}else if((S=Et[p])==2||S==1){let k=S==i;u=k?0:1;for(let T=o-3;T>=0;T-=3){let w=Ri[T+2];if(w&2)break;if(k)Ri[T+2]|=2;else{if(w&4)break;Ri[T+2]|=4}}}}}function az(n,e,t,r){for(let i=0,a=r;i<=t.length;i++){let s=i?t[i-1].to:n,o=i<t.length?t[i].from:e;for(let u=s;u<o;){let d=Et[u];if(d==256){let m=u+1;for(;;)if(m==o){if(i==t.length)break;m=t[i++].to,o=i<t.length?t[i].from:e}else if(Et[m]==256)m++;else break;let p=a==1,O=(m<e?Et[m]:r)==1,b=p==O?p?1:2:r;for(let S=m,k=i,T=k?t[k-1].to:n;S>u;)S==T&&(S=t[--k].from,T=k?t[k-1].to:n),Et[--S]=b;u=m}else a=d,u++}}}function tO(n,e,t,r,i,a,s){let o=r%2?2:1;if(r%2==i%2)for(let u=e,d=0;u<t;){let m=!0,p=!1;if(d==a.length||u<a[d].from){let k=Et[u];k!=o&&(m=!1,p=k==16)}let O=!m&&o==1?[]:null,b=m?r:r+1,S=u;e:for(;;)if(d<a.length&&S==a[d].from){if(p)break e;let k=a[d];if(!m)for(let T=k.to,w=d+1;;){if(T==t)break e;if(w<a.length&&a[w].from==T)T=a[w++].to;else{if(Et[T]==o)break e;break}}if(d++,O)O.push(k);else{k.from>u&&s.push(new zi(u,k.from,b));let T=k.direction==Ll!=!(b%2);nO(n,T?r+1:r,i,k.inner,k.from,k.to,s),u=k.to}S=k.to}else{if(S==t||(m?Et[S]!=o:Et[S]==o))break;S++}O?tO(n,u,S,r+1,i,O,s):u<S&&s.push(new zi(u,S,b)),u=S}else for(let u=t,d=a.length;u>e;){let m=!0,p=!1;if(!d||u>a[d-1].to){let k=Et[u-1];k!=o&&(m=!1,p=k==16)}let O=!m&&o==1?[]:null,b=m?r:r+1,S=u;e:for(;;)if(d&&S==a[d-1].to){if(p)break e;let k=a[--d];if(!m)for(let T=k.from,w=d;;){if(T==e)break e;if(w&&a[w-1].to==T)T=a[--w].from;else{if(Et[T-1]==o)break e;break}}if(O)O.push(k);else{k.to<u&&s.push(new zi(k.to,u,b));let T=k.direction==Ll!=!(b%2);nO(n,T?r+1:r,i,k.inner,k.from,k.to,s),u=k.from}S=k.from}else{if(S==e||(m?Et[S-1]!=o:Et[S-1]==o))break;S--}O?tO(n,S,u,r+1,i,O,s):S<u&&s.push(new zi(S,u,b)),u=S}}function nO(n,e,t,r,i,a,s){let o=e%2?2:1;rz(n,i,a,r,o),iz(n,i,a,r,o),az(i,a,r,o),tO(n,i,a,e,t,r,s)}function sz(n,e,t){if(!n)return[new zi(0,0,e==M6?1:0)];if(e==Ll&&!t.length&&!nz.test(n))return TA(n.length);if(t.length)for(;n.length>Et.length;)Et[Et.length]=256;let r=[],i=e==Ll?0:1;return nO(n,i,i,t,0,n.length,r),r}function TA(n){return[new zi(0,n,0)]}let AA="";function lz(n,e,t,r,i){var a;let s=r.head-n.from,o=zi.find(e,s,(a=r.bidiLevel)!==null&&a!==void 0?a:-1,r.assoc),u=e[o],d=u.side(i,t);if(s==d){let O=o+=i?1:-1;if(O<0||O>=e.length)return null;u=e[o=O],s=u.side(!i,t),d=u.side(i,t)}let m=xn(n.text,s,u.forward(i,t));(m<u.from||m>u.to)&&(m=d),AA=n.text.slice(Math.min(s,m),Math.max(s,m));let p=o==(i?e.length-1:0)?null:e[o+(i?1:-1)];return p&&m==d&&p.level+(i?0:1)<u.level?we.cursor(p.side(!i,t)+n.from,p.forward(i,t)?1:-1,p.level):we.cursor(m+n.from,u.forward(i,t)?-1:1,u.level)}function oz(n,e,t){for(let r=e;r<t;r++){let i=vA(n.charCodeAt(r));if(i==1)return Ll;if(i==2||i==4)return M6}return Ll}const PA=ze.define(),CA=ze.define(),EA=ze.define(),MA=ze.define(),rO=ze.define(),$A=ze.define(),RA=ze.define(),$6=ze.define(),R6=ze.define(),QA=ze.define({combine:n=>n.some(e=>e)}),cz=ze.define({combine:n=>n.some(e=>e)}),_A=ze.define();class pc{constructor(e,t="nearest",r="nearest",i=5,a=5,s=!1){this.range=e,this.y=t,this.x=r,this.yMargin=i,this.xMargin=a,this.isSnapshot=s}map(e){return e.empty?this:new pc(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new pc(we.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const Ld=mt.define({map:(n,e)=>n.map(e)}),NA=mt.define();function Bi(n,e,t){let r=n.facet(MA);r.length?r[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}const Ra=ze.define({combine:n=>n.length?n[0]:!0});let uz=0;const nc=ze.define({combine(n){return n.filter((e,t)=>{for(let r=0;r<t;r++)if(n[r].plugin==e.plugin)return!1;return!0})}});class ur{constructor(e,t,r,i,a){this.id=e,this.create=t,this.domEventHandlers=r,this.domEventObservers=i,this.baseExtensions=a(this),this.extension=this.baseExtensions.concat(nc.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(nc.of({plugin:this,arg:e}))}static define(e,t){const{eventHandlers:r,eventObservers:i,provide:a,decorations:s}=t||{};return new ur(uz++,e,r,i,o=>{let u=[];return s&&u.push(L1.of(d=>{let m=d.plugin(o);return m?s(m):Je.none})),a&&u.push(a(o)),u})}static fromClass(e,t){return ur.define((r,i)=>new e(r,i),t)}}class Jg{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(r){if(Bi(t.state,r,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){Bi(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(r){Bi(e.state,r,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const jA=ze.define(),Q6=ze.define(),L1=ze.define(),ZA=ze.define(),_6=ze.define(),lf=ze.define(),DA=ze.define();function YS(n,e){let t=n.state.facet(DA);if(!t.length)return t;let r=t.map(a=>a instanceof Function?a(n):a),i=[];return lt.spans(r,e.from,e.to,{point(){},span(a,s,o,u){let d=a-e.from,m=s-e.from,p=i;for(let O=o.length-1;O>=0;O--,u--){let b=o[O].spec.bidiIsolate,S;if(b==null&&(b=oz(e.text,d,m)),u>0&&p.length&&(S=p[p.length-1]).to==d&&S.direction==b)S.to=m,p=S.inner;else{let k={from:d,to:m,direction:b,inner:[]};p.push(k),p=k.inner}}}}),i}const VA=ze.define();function IA(n){let e=0,t=0,r=0,i=0;for(let a of n.state.facet(VA)){let s=a(n);s&&(s.left!=null&&(e=Math.max(e,s.left)),s.right!=null&&(t=Math.max(t,s.right)),s.top!=null&&(r=Math.max(r,s.top)),s.bottom!=null&&(i=Math.max(i,s.bottom)))}return{left:e,right:t,top:r,bottom:i}}const t0=ze.define();class Jr{constructor(e,t,r,i){this.fromA=e,this.toA=t,this.fromB=r,this.toB=i}join(e){return new Jr(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,r=this;for(;t>0;t--){let i=e[t-1];if(!(i.fromA>r.toA)){if(i.toA<r.fromA)break;r=r.join(i),e.splice(t-1,1)}}return e.splice(t,0,r),e}static extendWithRanges(e,t){if(t.length==0)return e;let r=[];for(let i=0,a=0,s=0;;){let o=i<e.length?e[i].fromB:1e9,u=a<t.length?t[a]:1e9,d=Math.min(o,u);if(d==1e9)break;let m=d+s,p=d,O=m;for(;;)if(a<t.length&&t[a]<=p){let b=t[a+1];a+=2,p=Math.max(p,b);for(let S=i;S<e.length&&e[S].fromB<=p;S++)s=e[S].toA-e[S].toB;O=Math.max(O,b+s)}else if(i<e.length&&e[i].fromB<=p){let b=e[i++];p=Math.max(p,b.toB),O=Math.max(O,b.toA),s=b.toA-b.toB}else break;r.push(new Jr(m,O,d,p))}return r}}class Wh{constructor(e,t,r){this.view=e,this.state=t,this.transactions=r,this.flags=0,this.startState=e.state,this.changes=dn.empty(this.startState.doc.length);for(let a of r)this.changes=this.changes.compose(a.changes);let i=[];this.changes.iterChangedRanges((a,s,o,u)=>i.push(new Jr(a,s,o,u))),this.changedRanges=i}static create(e,t,r){return new Wh(e,t,r)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}const fz=[];class Ut{constructor(e,t,r=0){this.dom=e,this.length=t,this.flags=r,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return fz}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let t=this.domAttrs;t&&XL(this.dom,t)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let r=t;for(let i of this.children){if(i==e)return r;r+=i.length+i.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t){return null}domPosFor(e,t){let r=Is(this.dom),i=this.length?e>0:t>0;return new yi(this.parent.dom,r+(i?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof B1)return e;return null}static get(e){return e.cmTile}}class z1 extends Ut{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let t=this.dom,r=null,i,a=(e==null?void 0:e.node)==t?e:null,s=0;for(let o of this.children){if(o.sync(e),s+=o.length+o.breakAfter,i=r?r.nextSibling:t.firstChild,a&&i!=o.dom&&(a.written=!0),o.dom.parentNode==t)for(;i&&i!=o.dom;)i=WS(i);else t.insertBefore(o.dom,i);r=o.dom}for(i=r?r.nextSibling:t.firstChild,a&&i&&(a.written=!0);i;)i=WS(i);this.length=s}}function WS(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}class B1 extends z1{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=Ut.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],r=this,i=0,a=0;;)if(i==r.children.length){if(!t.length)return;r=r.parent,r.breakAfter&&a++,i=t.pop()}else{let s=r.children[i++];if(s instanceof ja)t.push(i),r=s,i=0;else{let o=a+s.length,u=e(s,a);if(u!==void 0)return u;a=o+s.breakAfter}}}resolveBlock(e,t){let r,i=-1,a,s=-1;if(this.blockTiles((o,u)=>{let d=u+o.length;if(e>=u&&e<=d){if(o.isWidget()&&t>=-1&&t<=1){if(o.flags&32)return!0;o.flags&16&&(r=void 0)}(u<e||e==d&&(t<-1?o.length:o.covers(1)))&&(!r||!o.isWidget()&&r.isWidget())&&(r=o,i=e-u),(d>e||e==u&&(t>1?o.length:o.covers(-1)))&&(!a||!o.isWidget()&&a.isWidget())&&(a=o,s=e-u)}}),!r&&!a)throw new Error("No tile at position "+e);return r&&t<0||!a?{tile:r,offset:i}:{tile:a,offset:s}}}class ja extends z1{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,t){let r=new ja(t||document.createElement(e.tagName),e);return t||(r.flags|=4),r}}class Tc extends z1{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,r){let i=new Tc(t||document.createElement("div"),e);return(!t||!r)&&(i.flags|=4),i}get domAttrs(){return this.attrs}resolveInline(e,t,r){let i=null,a=-1,s=null,o=-1;function u(m,p){for(let O=0,b=0;O<m.children.length&&b<=p;O++){let S=m.children[O],k=b+S.length;k>=p&&(S.isComposite()?u(S,p-b):(!s||s.isHidden&&(t>0||r&&hz(s,S)))&&(k>p||S.flags&32)?(s=S,o=p-b):(b<p||S.flags&16&&!S.isHidden)&&(i=S,a=p-b)),b=k}}u(this,e);let d=(t<0?i:s)||i||s;return d?{tile:d,offset:d==i?a:o}:null}coordsIn(e,t){let r=this.resolveInline(e,t,!0);return r?r.tile.coordsIn(Math.max(0,r.offset),t):dz(this)}domIn(e,t){let r=this.resolveInline(e,t);if(r){let{tile:i,offset:a}=r;if(this.dom.contains(i.dom))return i.isText()?new yi(i.dom,Math.min(i.dom.nodeValue.length,a)):i.domPosFor(a,i.flags&16?1:i.flags&32?-1:t);let s=r.tile.parent,o=!1;for(let u of s.children){if(o)return new yi(u.dom,0);u==r.tile&&(o=!0)}}return new yi(this.dom,0)}}function dz(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=vh(e);return t[t.length-1]||null}function hz(n,e){let t=n.coordsIn(0,1),r=e.coordsIn(0,1);return t&&r&&r.top<t.bottom}class lr extends z1{constructor(e,t){super(e),this.mark=t}get domAttrs(){return this.mark.attrs}static of(e,t){let r=new lr(t||document.createElement(e.tagName),e);return t||(r.flags|=4),r}}class Sl extends Ut{constructor(e,t){super(e,t.length),this.text=t}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,t){let r=this.dom.nodeValue.length;e>r&&(e=r);let i=e,a=e,s=0;e==0&&t<0||e==r&&t>=0?Ze.chrome||Ze.gecko||(e?(i--,s=1):a<r&&(a++,s=-1)):t<0?i--:a<r&&a++;let o=L0(this.dom,i,a).getClientRects();if(!o.length)return null;let u=o[(s?s<0:t>=0)?0:o.length-1];return Ze.safari&&!s&&u.width==0&&(u=Array.prototype.find.call(o,d=>d.width)||u),s?Yh(u,s<0):u||null}static of(e,t){let r=new Sl(t||document.createTextNode(e),e);return t||(r.flags|=2),r}}class zl extends Ut{constructor(e,t,r,i){super(e,t,i),this.widget=r}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,r){let i=this.widget.coordsAt(this.dom,e,t);if(i)return i;if(r)return Yh(this.dom.getBoundingClientRect(),this.length?e==0:t<=0);{let a=this.dom.getClientRects(),s=null;if(!a.length)return null;let o=this.flags&16?!0:this.flags&32?!1:e>0;for(let u=o?a.length-1:0;s=a[u],!(e>0?u==0:u==a.length-1||s.top<s.bottom);u+=o?-1:1);return Yh(s,!o)}}get overrideDOMText(){if(!this.length)return ft.empty;let{root:e}=this;if(!e)return ft.empty;let t=this.posAtStart;return e.view.state.doc.slice(t,t+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,t,r,i,a){return a||(a=e.toDOM(t),e.editable||(a.contentEditable="false")),new zl(a,r,e,i)}}class Gh extends Ut{constructor(e){let t=document.createElement("img");t.className="cm-widgetBuffer",t.setAttribute("aria-hidden","true"),super(t,0,e)}get isHidden(){return!0}get overrideDOMText(){return ft.empty}coordsIn(e){return this.dom.getBoundingClientRect()}}class mz{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,t,r){let{tile:i,index:a,beforeBreak:s,parents:o}=this;for(;e||t>0;)if(i.isComposite())if(s){if(!e)break;r&&r.break(),e--,s=!1}else if(a==i.children.length){if(!e&&!o.length)break;r&&r.leave(i),s=!!i.breakAfter,{tile:i,index:a}=o.pop(),a++}else{let u=i.children[a],d=u.breakAfter;(t>0?u.length<=e:u.length<e)&&(!r||r.skip(u,0,u.length)!==!1||!u.isComposite)?(s=!!d,a++,e-=u.length):(o.push({tile:i,index:a}),i=u,a=0,r&&u.isComposite()&&r.enter(u))}else if(a==i.length)s=!!i.breakAfter,{tile:i,index:a}=o.pop(),a++;else if(e){let u=Math.min(e,i.length-a);r&&r.skip(i,a,a+u),e-=u,a+=u}else break;return this.tile=i,this.index=a,this.beforeBreak=s,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}}class pz{constructor(e,t,r,i){this.from=e,this.to=t,this.wrapper=r,this.rank=i}}class gz{constructor(e,t,r){this.cache=e,this.root=t,this.blockWrappers=r,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,t,r,i){var a;this.flushBuffer();let s=this.ensureMarks(t,r),o=s.lastChild;if(o&&o.isText()&&!(o.flags&8)&&o.length+e.length<512){this.cache.reused.set(o,2);let u=s.children[s.children.length-1]=new Sl(o.dom,o.text+e);u.parent=s}else s.append(i||Sl.of(e,(a=this.cache.find(Sl))===null||a===void 0?void 0:a.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,t){let r=this.curLine;r.dom!=t.line.dom&&(r.setDOM(this.cache.reused.has(t.line)?e2(t.line.dom):t.line.dom),this.cache.reused.set(t.line,2));let i=r;for(let o=t.marks.length-1;o>=0;o--){let u=t.marks[o],d=i.lastChild;if(d instanceof lr&&d.mark.eq(u.mark))d.dom!=u.dom&&d.setDOM(e2(u.dom)),i=d;else{if(this.cache.reused.get(u)){let p=Ut.get(u.dom);p&&p.setDOM(e2(u.dom))}let m=lr.of(u.mark,u.dom);i.append(m),i=m}this.cache.reused.set(u,2)}let a=Ut.get(e.text);a&&this.cache.reused.set(a,2);let s=new Sl(e.text,e.text.nodeValue);s.flags|=8,i.append(s)}addInlineWidget(e,t,r){let i=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);i||this.flushBuffer();let a=this.ensureMarks(t,r);!i&&!(e.flags&16)&&a.append(this.getBuffer(1)),a.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,r){this.flushBuffer(),this.ensureMarks(t,r).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let t=this.afterWidget||this.lastBlock;t.length+=e,this.pos+=e}addLineStart(e,t){var r;e||(e=LA);let i=Tc.start(e,t||((r=this.cache.find(Tc))===null||r===void 0?void 0:r.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=i)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var r;let i=this.curLine;for(let a=e.length-1;a>=0;a--){let s=e[a],o;if(t>0&&(o=i.lastChild)&&o instanceof lr&&o.mark.eq(s))i=o,t--;else{let u=lr.of(s,(r=this.cache.find(lr,d=>d.mark.eq(s)))===null||r===void 0?void 0:r.dom);i.append(u),i=u,t=0}}return i}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!GS(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(Ze.ios&&GS(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(t2,0,32)||new zl(t2.toDOM(),0,t2,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let t=new pz(e.from,e.to,e.value,e.rank),r=this.wrappers.length;for(;r>0&&(this.wrappers[r-1].rank-t.rank||this.wrappers[r-1].to-t.to)<0;)r--;this.wrappers.splice(r,0,t)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let r of this.wrappers){let i=t.lastChild;if(r.from<this.pos&&i instanceof ja&&i.wrapper.eq(r.wrapper))t=i;else{let a=ja.of(r.wrapper,(e=this.cache.find(ja,s=>s.wrapper.eq(r.wrapper)))===null||e===void 0?void 0:e.dom);t.append(a),t=a}}return t}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let t=2|(e<0?16:32),r=this.cache.find(Gh,void 0,1);return r&&(r.flags=t),r||new Gh(t)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class Oz{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:i,lineBreak:a,done:s}=this.cursor.next(this.skipCount);if(this.skipCount=0,s)throw new Error("Ran out of text content when drawing inline views");this.text=i;let o=this.textOff=Math.min(e,i.length);return a?null:i.slice(0,o)}let t=Math.min(this.text.length,this.textOff+e),r=this.text.slice(this.textOff,t);return this.textOff=t,r}}const Kh=[zl,Tc,Sl,lr,Gh,ja,B1];for(let n=0;n<Kh.length;n++)Kh[n].bucket=n;class yz{constructor(e){this.view=e,this.buckets=Kh.map(()=>[]),this.index=Kh.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,r=this.buckets[t];r.length<6?r.push(e):r[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,r=2){let i=e.bucket,a=this.buckets[i],s=this.index[i];for(let o=a.length-1;o>=0;o--){let u=(o+s)%a.length,d=a[u];if((!t||t(d))&&!this.reused.has(d))return a.splice(u,1),u<s&&this.index[i]--,this.reused.set(d,r),d}return null}findWidget(e,t,r){let i=this.buckets[0];if(i.length)for(let a=0,s=0;;a++){if(a==i.length){if(s)return null;s=1,a=0}let o=i[a];if(!this.reused.has(o)&&(s==0?o.widget.compare(e):o.widget.constructor==e.constructor&&e.updateDOM(o.dom,this.view,o.widget)))return i.splice(a,1),a<this.index[0]&&this.index[0]--,o.widget==e&&o.length==t&&(o.flags&497)==r?(this.reused.set(o,1),o):(this.reused.set(o,2),new zl(o.dom,t,e,o.flags&-498|r))}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,t=2){if(!this.reused.has(e))return this.reused.set(e,t),e.dom}clear(){for(let e=0;e<this.buckets.length;e++)this.buckets[e].length=this.index[e]=0}}class bz{constructor(e,t,r,i,a){this.view=e,this.decorations=i,this.disallowBlockEffectsFor=a,this.openWidget=!1,this.openMarks=0,this.cache=new yz(e),this.text=new Oz(e.state.doc),this.builder=new gz(this.cache,new B1(e,e.contentDOM),lt.iter(r)),this.cache.reused.set(t,2),this.old=new mz(t),this.reuseWalker={skip:(s,o,u)=>{if(this.cache.add(s),s.isComposite())return!1},enter:s=>this.cache.add(s),leave:()=>{},break:()=>{}}}run(e,t){let r=t&&this.getCompositionContext(t.text);for(let i=0,a=0,s=0;;){let o=s<e.length?e[s++]:null,u=o?o.fromA:this.old.root.length;if(u>i){let d=u-i;this.preserve(d,!s,!o),i=u,a+=d}if(!o)break;t&&o.fromA<=t.range.fromA&&o.toA>=t.range.toA?(this.forward(o.fromA,t.range.fromA,t.range.fromA<t.range.toA?1:-1),this.emit(a,t.range.fromB),this.cache.clear(),this.builder.addComposition(t,r),this.text.skip(t.range.toB-t.range.fromB),this.forward(t.range.fromA,o.toA),this.emit(t.range.toB,o.toB)):(this.forward(o.fromA,o.toA),this.emit(a,o.toB)),a=o.toB,i=o.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,t,r){let i=kz(this.old),a=this.openMarks;this.old.advance(e,r?1:-1,{skip:(s,o,u)=>{if(s.isWidget())if(this.openWidget)this.builder.continueWidget(u-o);else{let d=u>0||o<s.length?zl.of(s.widget,this.view,u-o,s.flags&496,this.cache.maybeReuse(s)):this.cache.reuse(s);d.flags&256?(d.flags&=-2,this.builder.addBlockWidget(d)):(this.builder.ensureLine(null),this.builder.addInlineWidget(d,i,a),a=i.length)}else if(s.isText())this.builder.ensureLine(null),!o&&u==s.length&&!this.cache.reused.has(s)?this.builder.addText(s.text,i,a,this.cache.reuse(s)):(this.cache.add(s),this.builder.addText(s.text.slice(o,u),i,a)),a=i.length;else if(s.isLine())s.flags&=-2,this.cache.reused.set(s,1),this.builder.addLine(s);else if(s instanceof Gh)this.cache.add(s);else if(s instanceof lr)this.builder.ensureLine(null),this.builder.addMark(s,i,a),this.cache.reused.set(s,1),a=i.length;else return!1;this.openWidget=!1},enter:s=>{s.isLine()?this.builder.addLineStart(s.attrs,this.cache.maybeReuse(s)):(this.cache.add(s),s instanceof lr&&i.unshift(s.mark)),this.openWidget=!1},leave:s=>{s.isLine()?i.length&&(i.length=a=0):s instanceof lr&&(i.shift(),a=Math.min(a,i.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let r=null,i=this.builder,a=0,s=lt.spans(this.decorations,e,t,{point:(o,u,d,m,p,O)=>{if(d instanceof Il){if(this.disallowBlockEffectsFor[O]){if(d.block)throw new RangeError("Block decorations may not be specified via plugins");if(u>this.view.state.doc.lineAt(o).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(a=m.length,p>m.length)i.continueWidget(u-o);else{let b=d.widget||(d.block?Ac.block:Ac.inline),S=xz(d),k=this.cache.findWidget(b,u-o,S)||zl.of(b,this.view,u-o,S);d.block?(d.startSide>0&&i.addLineStartIfNotCovered(r),i.addBlockWidget(k)):(i.ensureLine(r),i.addInlineWidget(k,m,p))}r=null}else r=Sz(r,d);u>o&&this.text.skip(u-o)},span:(o,u,d,m)=>{for(let p=o;p<u;){let O=this.text.next(Math.min(512,u-p));O==null?(i.addLineStartIfNotCovered(r),i.addBreak(),p++):(i.ensureLine(r),i.addText(O,d,p==o?m:d.length),p+=O.length),r=null}}});i.addLineStartIfNotCovered(r),this.openWidget=s>a,this.openMarks=s}forward(e,t,r=1){t-e<=10?this.old.advance(t-e,r,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,r,this.reuseWalker))}getCompositionContext(e){let t=[],r=null;for(let i=e.parentNode;;i=i.parentNode){let a=Ut.get(i);if(i==this.view.contentDOM)break;a instanceof lr?t.push(a):a!=null&&a.isLine()?r=a:a instanceof ja||(i.nodeName=="DIV"&&!r&&i!=this.view.contentDOM?r=new Tc(i,LA):r||t.push(lr.of(new af({tagName:i.nodeName.toLowerCase(),attributes:UL(i)}),i)))}return{line:r,marks:t}}}function GS(n,e){let t=r=>{for(let i of r.children)if((e?i.isText():i.length)||t(i))return!0;return!1};return t(n)}function xz(n){let e=n.isReplace?(n.startSide<0?64:0)|(n.endSide>0?128:0):n.startSide>0?32:16;return n.block&&(e|=256),e}const LA={class:"cm-line"};function Sz(n,e){let t=e.spec.attributes,r=e.spec.class;return!t&&!r||(n||(n={class:"cm-line"}),t&&C6(t,n),r&&(n.class+=" "+r)),n}function kz(n){let e=[];for(let t=n.parents.length;t>1;t--){let r=t==n.parents.length?n.tile:n.parents[t].tile;r instanceof lr&&e.push(r.mark)}return e}function e2(n){let e=Ut.get(n);return e&&e.setDOM(n.cloneNode()),n}class Ac extends Fl{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}Ac.inline=new Ac("span");Ac.block=new Ac("div");const t2=new class extends Fl{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class KS{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=Je.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new B1(e,e.contentDOM),this.updateInner([new Jr(0,0,0,e.state.doc.length)],null)}update(e){var t;let r=e.changedRanges;this.minWidth>0&&r.length&&(r.every(({fromA:m,toA:p})=>p<this.minWidthFrom||m>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let i=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?i=this.domChanged.newSel.head:!$z(e.changes,this.hasComposition)&&!e.selectionSet&&(i=e.state.selection.main.head));let a=i>-1?wz(this.view,e.changes,i):null;if(this.domChanged=null,this.hasComposition){let{from:m,to:p}=this.hasComposition;r=new Jr(m,p,e.changes.mapPos(m,-1),e.changes.mapPos(p,1)).addToSet(r.slice())}this.hasComposition=a?{from:a.range.fromB,to:a.range.toB}:null,(Ze.ie||Ze.chrome)&&!a&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let s=this.decorations,o=this.blockWrappers;this.updateDeco();let u=Pz(s,this.decorations,e.changes);u.length&&(r=Jr.extendWithRanges(r,u));let d=Ez(o,this.blockWrappers,e.changes);return d.length&&(r=Jr.extendWithRanges(r,d)),a&&!r.some(m=>m.fromA<=a.range.fromA&&m.toA>=a.range.toA)&&(r=a.range.addToSet(r.slice())),this.tile.flags&2&&r.length==0?!1:(this.updateInner(r,a),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:r}=this.view;r.ignore(()=>{if(t||e.length){let s=this.tile,o=new bz(this.view,s,this.blockWrappers,this.decorations,this.dynamicDecorationMap);t&&Ut.get(t.text)&&o.cache.reused.set(Ut.get(t.text),2),this.tile=o.run(e,t),iO(s,o.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let a=Ze.chrome||Ze.ios?{node:r.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(a),a&&(a.written||r.selectionRange.focusNode!=a.node||!this.tile.dom.contains(a.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let i=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let a of this.tile.children)a.isWidget()&&a.widget instanceof n2&&i.push(a.dom);r.updateGaps(i)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let r of t.effects)r.is(NA)&&(this.editContextFormatting=r.value)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:r}=this.tile,i=this.view.root.activeElement,a=i==r,s=!a&&!(this.view.state.facet(Ra)||r.tabIndex>-1)&&m0(r,this.view.observer.selectionRange)&&!(i&&r.contains(i));if(!(a||t||s))return;let o=this.forceSelection;this.forceSelection=!1;let u=this.view.state.selection.main,d,m;if(u.empty?m=d=this.inlineDOMNearPos(u.anchor,u.assoc||1):(m=this.inlineDOMNearPos(u.head,u.head==u.from?1:-1),d=this.inlineDOMNearPos(u.anchor,u.anchor==u.from?1:-1)),Ze.gecko&&u.empty&&!this.hasComposition&&vz(d)){let O=document.createTextNode("");this.view.observer.ignore(()=>d.node.insertBefore(O,d.node.childNodes[d.offset]||null)),d=m=new yi(O,0),o=!0}let p=this.view.observer.selectionRange;(o||!p.focusNode||(!p0(d.node,d.offset,p.anchorNode,p.anchorOffset)||!p0(m.node,m.offset,p.focusNode,p.focusOffset))&&!this.suppressWidgetCursorChange(p,u))&&(this.view.observer.ignore(()=>{Ze.android&&Ze.chrome&&r.contains(p.focusNode)&&Mz(p.focusNode,r)&&(r.blur(),r.focus({preventScroll:!0}));let O=I0(this.view.root);if(O)if(u.empty){if(Ze.gecko){let b=Tz(d.node,d.offset);if(b&&b!=3){let S=(b==1?xA:SA)(d.node,d.offset);S&&(d=new yi(S.node,S.offset))}}O.collapse(d.node,d.offset),u.bidiLevel!=null&&O.caretBidiLevel!==void 0&&(O.caretBidiLevel=u.bidiLevel)}else if(O.extend){O.collapse(d.node,d.offset);try{O.extend(m.node,m.offset)}catch{}}else{let b=document.createRange();u.anchor>u.head&&([d,m]=[m,d]),b.setEnd(m.node,m.offset),b.setStart(d.node,d.offset),O.removeAllRanges(),O.addRange(b)}s&&this.view.root.activeElement==r&&(r.blur(),i&&i.focus())}),this.view.observer.setSelectionRange(d,m)),this.impreciseAnchor=d.precise?null:new yi(p.anchorNode,p.anchorOffset),this.impreciseHead=m.precise?null:new yi(p.focusNode,p.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&p0(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,r=I0(e.root),{anchorNode:i,anchorOffset:a}=e.observer.selectionRange;if(!r||!t.empty||!t.assoc||!r.modify)return;let s=this.lineAt(t.head,t.assoc);if(!s)return;let o=s.posAtStart;if(t.head==o||t.head==o+s.length)return;let u=this.coordsAt(t.head,-1),d=this.coordsAt(t.head,1);if(!u||!d||u.bottom>d.top)return;let m=this.domAtPos(t.head+t.assoc,t.assoc);r.collapse(m.node,m.offset),r.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let p=e.observer.selectionRange;e.docView.posFromDOM(p.anchorNode,p.anchorOffset)!=t.from&&r.collapse(i,a)}posFromDOM(e,t){let r=this.tile.nearest(e);if(!r)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let i=r.posAtStart;if(r.isComposite()){let a;if(e==r.dom)a=r.dom.childNodes[t];else{let s=Ha(e)==0?0:t==0?-1:1;for(;;){let o=e.parentNode;if(o==r.dom)break;s==0&&o.firstChild!=o.lastChild&&(e==o.firstChild?s=-1:s=1),e=o}s<0?a=e:a=e.nextSibling}if(a==r.dom.firstChild)return i;for(;a&&!Ut.get(a);)a=a.nextSibling;if(!a)return i+r.length;for(let s=0,o=i;;s++){let u=r.children[s];if(u.dom==a)return o;o+=u.length+u.breakAfter}}else return r.isText()?e==r.dom?i+t:i+(t?r.length:0):i}domAtPos(e,t){let{tile:r,offset:i}=this.tile.resolveBlock(e,t);return r.isWidget()?r.domPosFor(e,t):r.domIn(i,t)}inlineDOMNearPos(e,t){let r,i=-1,a=!1,s,o=-1,u=!1;return this.tile.blockTiles((d,m)=>{if(d.isWidget()){if(d.flags&32&&m>=e)return!0;d.flags&16&&(a=!0)}else{let p=m+d.length;if(m<=e&&(r=d,i=e-m,a=p<e),p>=e&&!s&&(s=d,o=e-m,u=m>e),m>e&&s)return!0}}),!r&&!s?this.domAtPos(e,t):(a&&s?r=null:u&&r&&(s=null),r&&t<0||!s?r.domIn(i,t):s.domIn(o,t))}coordsAt(e,t){let{tile:r,offset:i}=this.tile.resolveBlock(e,t);return r.isWidget()?r.widget instanceof n2?null:r.coordsInWidget(i,t,!0):r.coordsIn(i,t)}lineAt(e,t){let{tile:r}=this.tile.resolveBlock(e,t);return r.isLine()?r:null}coordsForChar(e){let{tile:t,offset:r}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;function i(a,s){if(a.isComposite())for(let o of a.children){if(o.length>=s){let u=i(o,s);if(u)return u}if(s-=o.length,s<0)break}else if(a.isText()&&s<a.length){let o=xn(a.text,s);if(o==s)return null;let u=L0(a.dom,s,o).getClientRects();for(let d=0;d<u.length;d++){let m=u[d];if(d==u.length-1||m.top<m.bottom&&m.left<m.right)return m}}return null}return i(t,r)}measureVisibleLineHeights(e){let t=[],{from:r,to:i}=e,a=this.view.contentDOM.clientWidth,s=a>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,o=-1,u=this.view.textDirection==en.LTR,d=0,m=(p,O,b)=>{for(let S=0;S<p.children.length&&!(O>i);S++){let k=p.children[S],T=O+k.length,w=k.dom.getBoundingClientRect(),{height:A}=w;if(b&&!S&&(d+=w.top-b.top),k instanceof ja)T>r&&m(k,O,w);else if(O>=r&&(d>0&&t.push(-d),t.push(A+d),d=0,s)){let E=k.dom.lastChild,C=E?vh(E):[];if(C.length){let P=C[C.length-1],$=u?P.right-w.left:w.right-P.left;$>o&&(o=$,this.minWidth=a,this.minWidthFrom=O,this.minWidthTo=T)}}b&&S==p.children.length-1&&(d+=b.bottom-w.bottom),O=T+k.breakAfter}};return m(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return getComputedStyle(t.dom).direction=="rtl"?en.RTL:en.LTR}measureTextSize(){let e=this.tile.blockTiles(s=>{if(s.isLine()&&s.children.length&&s.length<=20){let o=0,u;for(let d of s.children){if(!d.isText()||/[^ -~]/.test(d.text))return;let m=vh(d.dom);if(m.length!=1)return;o+=m[0].width,u=m[0].height}if(o)return{lineHeight:s.dom.getBoundingClientRect().height,charWidth:o/s.length,textHeight:u}}});if(e)return e;let t=document.createElement("div"),r,i,a;return t.className="cm-line",t.style.width="99999px",t.style.position="absolute",t.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(t);let s=vh(t.firstChild)[0];r=t.getBoundingClientRect().height,i=s&&s.width?s.width/27:7,a=s&&s.height?s.height:r,t.remove()}),{lineHeight:r,charWidth:i,textHeight:a}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let r=0,i=0;;i++){let a=i==t.viewports.length?null:t.viewports[i],s=a?a.from-1:this.view.state.doc.length;if(s>r){let o=(t.lineBlockAt(s).bottom-t.lineBlockAt(r).top)/this.view.scaleY;e.push(Je.replace({widget:new n2(o),block:!0,inclusive:!0,isBlockGap:!0}).range(r,s))}if(!a)break;r=a.to+1}return Je.set(e)}updateDeco(){let e=1,t=this.view.state.facet(L1).map(a=>(this.dynamicDecorationMap[e++]=typeof a=="function")?a(this.view):a),r=!1,i=this.view.state.facet(_6).map((a,s)=>{let o=typeof a=="function";return o&&(r=!0),o?a(this.view):a});for(i.length&&(this.dynamicDecorationMap[e++]=r,t.push(lt.join(i))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(ZA).map(a=>typeof a=="function"?a(this.view):a)}scrollIntoView(e){var t;if(e.isSnapshot){let m=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=m.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let m of this.view.state.facet(_A))try{if(m(this.view,e.range,e))return!0}catch(p){Bi(this.view.state,p,"scroll handler")}let{range:r}=e,i=this.coordsAt(r.head,(t=r.assoc)!==null&&t!==void 0?t:r.empty?0:r.head>r.anchor?-1:1),a;if(!i)return;!r.empty&&(a=this.coordsAt(r.anchor,r.anchor>r.head?-1:1))&&(i={left:Math.min(i.left,a.left),top:Math.min(i.top,a.top),right:Math.max(i.right,a.right),bottom:Math.max(i.bottom,a.bottom)});let s=IA(this.view),o={left:i.left-s.left,top:i.top-s.top,right:i.right+s.right,bottom:i.bottom+s.bottom},{offsetWidth:u,offsetHeight:d}=this.view.scrollDOM;if(WL(this.view.scrollDOM,o,r.head<r.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,u),-u),Math.max(Math.min(e.yMargin,d),-d),this.view.textDirection==en.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(i.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||i.bottom<window.pageYOffset+window.visualViewport.offsetTop)){let m=this.view.docView.lineAt(r.head,1);m&&m.dom.scrollIntoView({block:"nearest"})}}lineHasWidget(e){let t=r=>r.isWidget()||r.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){iO(this.tile)}}function iO(n,e){let t=e==null?void 0:e.get(n);if(t!=1){t==null&&n.destroy();for(let r of n.children)iO(r,e)}}function vz(n){return n.node.nodeType==1&&n.node.firstChild&&(n.offset==0||n.node.childNodes[n.offset-1].contentEditable=="false")&&(n.offset==n.node.childNodes.length||n.node.childNodes[n.offset].contentEditable=="false")}function zA(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let r=xA(t.focusNode,t.focusOffset),i=SA(t.focusNode,t.focusOffset),a=r||i;if(i&&r&&i.node!=r.node){let o=Ut.get(i.node);if(!o||o.isText()&&o.text!=i.node.nodeValue)a=i;else if(n.docView.lastCompositionAfterCursor){let u=Ut.get(r.node);!u||u.isText()&&u.text!=r.node.nodeValue||(a=i)}}if(n.docView.lastCompositionAfterCursor=a!=r,!a)return null;let s=e-a.offset;return{from:s,to:s+a.node.nodeValue.length,node:a.node}}function wz(n,e,t){let r=zA(n,t);if(!r)return null;let{node:i,from:a,to:s}=r,o=i.nodeValue;if(/[\n\r]/.test(o)||n.state.doc.sliceString(r.from,r.to)!=o)return null;let u=e.invertedDesc;return{range:new Jr(u.mapPos(a),u.mapPos(s),a,s),text:i}}function Tz(n,e){return n.nodeType!=1?0:(e&&n.childNodes[e-1].contentEditable=="false"?1:0)|(e<n.childNodes.length&&n.childNodes[e].contentEditable=="false"?2:0)}let Az=class{constructor(){this.changes=[]}compareRange(e,t){hc(e,t,this.changes)}comparePoint(e,t){hc(e,t,this.changes)}boundChange(e){hc(e,e,this.changes)}};function Pz(n,e,t){let r=new Az;return lt.compare(n,e,t,r),r.changes}class Cz{constructor(){this.changes=[]}compareRange(e,t){hc(e,t,this.changes)}comparePoint(){}boundChange(e){hc(e,e,this.changes)}}function Ez(n,e,t){let r=new Cz;return lt.compare(n,e,t,r),r.changes}function Mz(n,e){for(let t=n;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function $z(n,e){let t=!1;return e&&n.iterChangedRanges((r,i)=>{r<e.to&&i>e.from&&(t=!0)}),t}class n2 extends Fl{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function Rz(n,e,t=1){let r=n.charCategorizer(e),i=n.doc.lineAt(e),a=e-i.from;if(i.length==0)return we.cursor(e);a==0?t=1:a==i.length&&(t=-1);let s=a,o=a;t<0?s=xn(i.text,a,!1):o=xn(i.text,a);let u=r(i.text.slice(s,o));for(;s>0;){let d=xn(i.text,s,!1);if(r(i.text.slice(d,s))!=u)break;s=d}for(;o<i.length;){let d=xn(i.text,o);if(r(i.text.slice(o,d))!=u)break;o=d}return we.range(s+i.from,o+i.from)}function Qz(n,e,t,r,i){let a=Math.round((r-e.left)*n.defaultCharacterWidth);if(n.lineWrapping&&t.height>n.defaultLineHeight*1.5){let o=n.viewState.heightOracle.textHeight,u=Math.floor((i-t.top-(n.defaultLineHeight-o)*.5)/o);a+=u*n.viewState.heightOracle.lineLength}let s=n.state.sliceDoc(t.from,t.to);return t.from+IL(s,a,n.state.tabSize)}function _z(n,e,t){let r=n.lineBlockAt(e);if(Array.isArray(r.type)){let i;for(let a of r.type){if(a.from>e)break;if(!(a.to<e)){if(a.from<e&&a.to>e)return a;(!i||a.type==cr.Text&&(i.type!=a.type||(t<0?a.from<e:a.to>e)))&&(i=a)}}return i||r}return r}function Nz(n,e,t,r){let i=_z(n,e.head,e.assoc||-1),a=!r||i.type!=cr.Text||!(n.lineWrapping||i.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>i.from?e.head-1:e.head);if(a){let s=n.dom.getBoundingClientRect(),o=n.textDirectionAt(i.from),u=n.posAtCoords({x:t==(o==en.LTR)?s.right-1:s.left+1,y:(a.top+a.bottom)/2});if(u!=null)return we.cursor(u,t?-1:1)}return we.cursor(t?i.to:i.from,t?-1:1)}function JS(n,e,t,r){let i=n.state.doc.lineAt(e.head),a=n.bidiSpans(i),s=n.textDirectionAt(i.from);for(let o=e,u=null;;){let d=lz(i,a,s,o,t),m=AA;if(!d){if(i.number==(t?n.state.doc.lines:1))return o;m=`
345
- `,i=n.state.doc.line(i.number+(t?1:-1)),a=n.bidiSpans(i),d=n.visualLineSide(i,!t)}if(u){if(!u(m))return o}else{if(!r)return d;u=r(m)}o=d}}function jz(n,e,t){let r=n.state.charCategorizer(e),i=r(t);return a=>{let s=r(a);return i==Vt.Space&&(i=s),i==s}}function Zz(n,e,t,r){let i=e.head,a=t?1:-1;if(i==(t?n.state.doc.length:0))return we.cursor(i,e.assoc);let s=e.goalColumn,o,u=n.contentDOM.getBoundingClientRect(),d=n.coordsAtPos(i,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),m=n.documentTop;if(d)s==null&&(s=d.left-u.left),o=a<0?d.top:d.bottom;else{let S=n.viewState.lineBlockAt(i);s==null&&(s=Math.min(u.right-u.left,n.defaultCharacterWidth*(i-S.from))),o=(a<0?S.top:S.bottom)+m}let p=u.left+s,O=n.viewState.heightOracle.textHeight>>1,b=r??O;for(let S=0;;S+=O){let k=o+(b+S)*a,T=aO(n,{x:p,y:k},!1,a);if(t?k>u.bottom:k<u.top)return we.cursor(T.pos,T.assoc);let w=n.coordsAtPos(T.pos,T.assoc),A=w?(w.top+w.bottom)/2:0;if(!w||(t?A>o:A<o))return we.cursor(T.pos,T.assoc,void 0,s)}}function g0(n,e,t){for(;;){let r=0;for(let i of n)i.between(e-1,e+1,(a,s,o)=>{if(e>a&&e<s){let u=r||t||(e-a<s-e?-1:1);e=u<0?a:s,r=u}});if(!r)return e}}function BA(n,e){let t=null;for(let r=0;r<e.ranges.length;r++){let i=e.ranges[r],a=null;if(i.empty){let s=g0(n,i.from,0);s!=i.from&&(a=we.cursor(s,-1))}else{let s=g0(n,i.from,-1),o=g0(n,i.to,1);(s!=i.from||o!=i.to)&&(a=we.range(i.from==i.anchor?s:o,i.from==i.head?s:o))}a&&(t||(t=e.ranges.slice()),t[r]=a)}return t?we.create(t,e.mainIndex):e}function r2(n,e,t){let r=g0(n.state.facet(lf).map(i=>i(n)),t.from,e.head>t.from?-1:1);return r==t.from?t:we.cursor(r,r<t.from?1:-1)}class Ii{constructor(e,t){this.pos=e,this.assoc=t}}function aO(n,e,t,r){let i=n.contentDOM.getBoundingClientRect(),a=i.top+n.viewState.paddingTop,{x:s,y:o}=e,u=o-a,d;for(;;){if(u<0)return new Ii(0,1);if(u>n.viewState.docHeight)return new Ii(n.state.doc.length,-1);if(d=n.elementAtHeight(u),r==null)break;if(d.type==cr.Text){if(r<0?d.to<n.viewport.from:d.from>n.viewport.to)break;let O=n.docView.coordsAt(r<0?d.from:d.to,r>0?-1:1);if(O&&(r<0?O.top<=u+a:O.bottom>=u+a))break}let p=n.viewState.heightOracle.textHeight/2;u=r>0?d.bottom+p:d.top-p}if(n.viewport.from>=d.to||n.viewport.to<=d.from){if(t)return null;if(d.type==cr.Text){let p=Qz(n,i,d,s,o);return new Ii(p,p==d.from?1:-1)}}if(d.type!=cr.Text)return u<(d.top+d.bottom)/2?new Ii(d.from,1):new Ii(d.to,-1);let m=n.docView.lineAt(d.from,2);return(!m||m.length!=d.length)&&(m=n.docView.lineAt(d.from,-2)),new Dz(n,s,o,n.textDirectionAt(d.from)).scanTile(m,d.from)}class Dz{constructor(e,t,r,i){this.view=e,this.x=t,this.y=r,this.baseDir=i,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:r,spans:i}=this.bidiSpansAt(e);return i[zi.find(i,e-r.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:r,spans:i}=this.bidiSpansAt(e);return i[zi.find(i,e-r.from,-1,t)].dir}bidiIn(e,t){let{spans:r,line:i}=this.bidiSpansAt(e);return r.length>1||r.length&&(r[0].level!=this.baseDir||r[0].to+i.from<t)}scan(e,t){let r=0,i=e.length-1,a=new Set,s=this.bidiIn(e[0],e[i]),o,u,d=-1,m=1e9,p;e:for(;r<i;){let b=i-r,S=r+i>>1;t:if(a.has(S)){let T=r+Math.floor(Math.random()*b);for(let w=0;w<b;w++){if(!a.has(T)){S=T;break t}T++,T==i&&(T=r)}break e}a.add(S);let k=t(S);if(k)for(let T=0;T<k.length;T++){let w=k[T],A=0;if(!(w.width==0&&k.length>1)){if(w.bottom<this.y)(!o||o.bottom<w.bottom)&&(o=w),A=1;else if(w.top>this.y)(!u||u.top>w.top)&&(u=w),A=-1;else{let E=w.left>this.x?this.x-w.left:w.right<this.x?this.x-w.right:0,C=Math.abs(E);C<m&&(d=S,m=C,p=w),E&&(A=E<0==(this.baseDir==en.LTR)?-1:1)}A==-1&&(!s||this.baseDirAt(e[S],1))?i=S:A==1&&(!s||this.baseDirAt(e[S+1],-1))&&(r=S+1)}}}if(!p){let b=o&&(!u||this.y-o.bottom<u.top-this.y)?o:u;return this.y=(b.top+b.bottom)/2,this.scan(e,t)}let O=(s?this.dirAt(e[d],1):this.baseDir)==en.LTR;return{i:d,after:this.x>(p.left+p.right)/2==O}}scanText(e,t){let r=[];for(let a=0;a<e.length;a=xn(e.text,a))r.push(t+a);r.push(t+e.length);let i=this.scan(r,a=>{let s=r[a]-t,o=r[a+1]-t;return L0(e.dom,s,o).getClientRects()});return i.after?new Ii(r[i.i+1],-1):new Ii(r[i.i],1)}scanTile(e,t){if(!e.length)return new Ii(t,1);if(e.children.length==1){let o=e.children[0];if(o.isText())return this.scanText(o,t);if(o.isComposite())return this.scanTile(o,t)}let r=[t];for(let o=0,u=t;o<e.children.length;o++)r.push(u+=e.children[o].length);let i=this.scan(r,o=>{let u=e.children[o];return u.flags&48?null:(u.dom.nodeType==1?u.dom:L0(u.dom,0,u.length)).getClientRects()}),a=e.children[i.i],s=r[i.i];return a.isText()?this.scanText(a,s):a.isComposite()?this.scanTile(a,s):i.after?new Ii(r[i.i+1],-1):new Ii(s,1)}}const Fo="￿";class Vz{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(dt.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=Fo}readRange(e,t){if(!e)return this;let r=e.parentNode;for(let i=e;;){this.findPointBefore(r,i);let a=this.text.length;this.readNode(i);let s=Ut.get(i),o=i.nextSibling;if(o==t){s!=null&&s.breakAfter&&!o&&r!=this.view.contentDOM&&this.lineBreak();break}let u=Ut.get(o);(s&&u?s.breakAfter:(s?s.breakAfter:qh(i))||qh(o)&&(i.nodeName!="BR"||s!=null&&s.isWidget())&&this.text.length>a)&&!Lz(o,t)&&this.lineBreak(),i=o}return this.findPointBefore(r,t),this}readTextNode(e){let t=e.nodeValue;for(let r of this.points)r.node==e&&(r.pos=this.text.length+Math.min(r.offset,t.length));for(let r=0,i=this.lineSeparator?null:/\r\n?|\n/g;;){let a=-1,s=1,o;if(this.lineSeparator?(a=t.indexOf(this.lineSeparator,r),s=this.lineSeparator.length):(o=i.exec(t))&&(a=o.index,s=o[0].length),this.append(t.slice(r,a<0?t.length:a)),a<0)break;if(this.lineBreak(),s>1)for(let u of this.points)u.node==e&&u.pos>this.text.length&&(u.pos-=s-1);r=a+s}}readNode(e){let t=Ut.get(e),r=t&&t.overrideDOMText;if(r!=null){this.findPointInside(e,r.length);for(let i=r.iter();!i.next().done;)i.lineBreak?this.lineBreak():this.append(i.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let r of this.points)r.node==e&&e.childNodes[r.offset]==t&&(r.pos=this.text.length)}findPointInside(e,t){for(let r of this.points)(e.nodeType==3?r.node==e:e.contains(r.node))&&(r.pos=this.text.length+(Iz(e,r.node,r.offset)?t:0))}}function Iz(n,e,t){for(;;){if(!e||t<Ha(e))return!1;if(e==n)return!0;t=Is(e)+1,e=e.parentNode}}function Lz(n,e){let t;for(;!(n==e||!n);n=n.nextSibling){let r=Ut.get(n);if(!(r!=null&&r.isWidget()))return!1;r&&(t||(t=[])).push(r)}if(t)for(let r of t){let i=r.overrideDOMText;if(i!=null&&i.length)return!1}return!0}class ek{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class zz{constructor(e,t,r,i){this.typeOver=i,this.bounds=null,this.text="",this.domChanged=t>-1;let{impreciseHead:a,impreciseAnchor:s}=e.docView,o=e.state.selection;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=HA(e.docView.tile,t,r,0))){let u=a||s?[]:Hz(e),d=new Vz(u,e);d.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=d.text,this.newSel=Fz(u,this.bounds.from)}else{let u=e.observer.selectionRange,d=a&&a.node==u.focusNode&&a.offset==u.focusOffset||!J8(e.contentDOM,u.focusNode)?o.main.head:e.docView.posFromDOM(u.focusNode,u.focusOffset),m=s&&s.node==u.anchorNode&&s.offset==u.anchorOffset||!J8(e.contentDOM,u.anchorNode)?o.main.anchor:e.docView.posFromDOM(u.anchorNode,u.anchorOffset),p=e.viewport;if((Ze.ios||Ze.chrome)&&o.main.empty&&d!=m&&(p.from>0||p.to<e.state.doc.length)){let O=Math.min(d,m),b=Math.max(d,m),S=p.from-O,k=p.to-b;(S==0||S==1||O==0)&&(k==0||k==-1||b==e.state.doc.length)&&(d=0,m=e.state.doc.length)}if(e.inputState.composing>-1&&o.ranges.length>1)this.newSel=o.replaceRange(we.range(m,d));else if(e.lineWrapping&&m==d&&!(o.main.empty&&o.main.head==d)&&e.inputState.lastTouchTime>Date.now()-100){let O=e.coordsAtPos(d,-1),b=0;O&&(b=e.inputState.lastTouchY<=O.bottom?-1:1),this.newSel=we.create([we.cursor(d,b)])}else this.newSel=we.single(m,d)}}}function HA(n,e,t,r){if(n.isComposite()){let i=-1,a=-1,s=-1,o=-1;for(let u=0,d=r,m=r;u<n.children.length;u++){let p=n.children[u],O=d+p.length;if(d<e&&O>t)return HA(p,e,t,d);if(O>=e&&i==-1&&(i=u,a=d),d>t&&p.dom.parentNode==n.dom){s=u,o=m;break}m=O,d=O+p.breakAfter}return{from:a,to:o<0?r+n.length:o,startDOM:(i?n.children[i-1].dom.nextSibling:null)||n.dom.firstChild,endDOM:s<n.children.length&&s>=0?n.children[s].dom:null}}else return n.isText()?{from:r,to:r+n.length,startDOM:n.dom,endDOM:n.dom.nextSibling}:null}function FA(n,e){let t,{newSel:r}=e,{state:i}=n,a=i.selection.main,s=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:u}=e.bounds,d=a.from,m=null;(s===8||Ze.android&&e.text.length<u-o)&&(d=a.to,m="end");let p=i.doc.sliceString(o,u,Fo),O,b;!a.empty&&a.from>=o&&a.to<=u&&(e.typeOver||p!=e.text)&&p.slice(0,a.from-o)==e.text.slice(0,a.from-o)&&p.slice(a.to-o)==e.text.slice(O=e.text.length-(p.length-(a.to-o)))?t={from:a.from,to:a.to,insert:ft.of(e.text.slice(a.from-o,O).split(Fo))}:(b=XA(p,e.text,d-o,m))&&(Ze.chrome&&s==13&&b.toB==b.from+2&&e.text.slice(b.from,b.toB)==Fo+Fo&&b.toB--,t={from:o+b.from,to:o+b.toA,insert:ft.of(e.text.slice(b.from,b.toB).split(Fo))})}else r&&(!n.hasFocus&&i.facet(Ra)||Jh(r,a))&&(r=null);if(!t&&!r)return!1;if((Ze.mac||Ze.android)&&t&&t.from==t.to&&t.from==a.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(r&&t.insert.length==2&&(r=we.single(r.main.anchor-1,r.main.head-1)),t={from:t.from,to:t.to,insert:ft.of([t.insert.toString().replace("."," ")])}):i.doc.lineAt(a.from).to<a.to&&n.docView.lineHasWidget(a.to)&&n.inputState.insertingTextAt>Date.now()-50?t={from:a.from,to:a.to,insert:i.toText(n.inputState.insertingText)}:Ze.chrome&&t&&t.from==t.to&&t.from==a.head&&t.insert.toString()==`
346
- `&&n.lineWrapping&&(r&&(r=we.single(r.main.anchor-1,r.main.head-1)),t={from:a.from,to:a.to,insert:ft.of([" "])}),t)return N6(n,t,r,s);if(r&&!Jh(r,a)){let o=!1,u="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(o=!0),u=n.inputState.lastSelectionOrigin,u=="select.pointer"&&(r=BA(i.facet(lf).map(d=>d(n)),r))),n.dispatch({selection:r,scrollIntoView:o,userEvent:u}),!0}else return!1}function N6(n,e,t,r=-1){if(Ze.ios&&n.inputState.flushIOSKey(e))return!0;let i=n.state.selection.main;if(Ze.android&&(e.to==i.to&&(e.from==i.from||e.from==i.from-1&&n.state.sliceDoc(e.from,i.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&mc(n.contentDOM,"Enter",13)||(e.from==i.from-1&&e.to==i.to&&e.insert.length==0||r==8&&e.insert.length<e.to-e.from&&e.to>i.head)&&mc(n.contentDOM,"Backspace",8)||e.from==i.from&&e.to==i.to+1&&e.insert.length==0&&mc(n.contentDOM,"Delete",46)))return!0;let a=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let s,o=()=>s||(s=Bz(n,e,t));return n.state.facet($A).some(u=>u(n,e.from,e.to,a,o))||n.dispatch(o()),!0}function Bz(n,e,t){let r,i=n.state,a=i.selection.main,s=-1;if(e.from==e.to&&e.from<a.from||e.from>a.to){let u=e.from<a.from?-1:1,d=u<0?a.from:a.to,m=g0(i.facet(lf).map(p=>p(n)),d,u);e.from==m&&(s=m)}if(s>-1)r={changes:e,selection:we.cursor(e.from+e.insert.length,-1)};else if(e.from>=a.from&&e.to<=a.to&&e.to-e.from>=(a.to-a.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let u=a.from<e.from?i.sliceDoc(a.from,e.from):"",d=a.to>e.to?i.sliceDoc(e.to,a.to):"";r=i.replaceSelection(n.state.toText(u+e.insert.sliceString(0,void 0,n.state.lineBreak)+d))}else{let u=i.changes(e),d=t&&t.main.to<=u.newLength?t.main:void 0;if(i.selection.ranges.length>1&&(n.inputState.composing>=0||n.inputState.compositionPendingChange)&&e.to<=a.to+10&&e.to>=a.to-10){let m=n.state.sliceDoc(e.from,e.to),p,O=t&&zA(n,t.main.head);if(O){let S=e.insert.length-(e.to-e.from);p={from:O.from,to:O.to-S}}else p=n.state.doc.lineAt(a.head);let b=a.to-e.to;r=i.changeByRange(S=>{if(S.from==a.from&&S.to==a.to)return{changes:u,range:d||S.map(u)};let k=S.to-b,T=k-m.length;if(n.state.sliceDoc(T,k)!=m||k>=p.from&&T<=p.to)return{range:S};let w=i.changes({from:T,to:k,insert:e.insert}),A=S.to-a.to;return{changes:w,range:d?we.range(Math.max(0,d.anchor+A),Math.max(0,d.head+A)):S.map(w)}})}else r={changes:u,selection:d&&i.selection.replaceRange(d)}}let o="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,o+=".compose",n.inputState.compositionFirstChange&&(o+=".start",n.inputState.compositionFirstChange=!1)),i.update(r,{userEvent:o,scrollIntoView:!0})}function XA(n,e,t,r){let i=Math.min(n.length,e.length),a=0;for(;a<i&&n.charCodeAt(a)==e.charCodeAt(a);)a++;if(a==i&&n.length==e.length)return null;let s=n.length,o=e.length;for(;s>0&&o>0&&n.charCodeAt(s-1)==e.charCodeAt(o-1);)s--,o--;if(r=="end"){let u=Math.max(0,a-Math.min(s,o));t-=s+u-a}if(s<a&&n.length<e.length){let u=t<=a&&t>=s?a-t:0;a-=u,o=a+(o-s),s=a}else if(o<a){let u=t<=a&&t>=o?a-t:0;a-=u,s=a+(s-o),o=a}return{from:a,toA:s,toB:o}}function Hz(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:r,focusNode:i,focusOffset:a}=n.observer.selectionRange;return t&&(e.push(new ek(t,r)),(i!=t||a!=r)&&e.push(new ek(i,a))),e}function Fz(n,e){if(n.length==0)return null;let t=n[0].pos,r=n.length==2?n[1].pos:t;return t>-1&&r>-1?we.single(t+e,r+e):null}function Jh(n,e){return e.head==n.main.head&&e.anchor==n.main.anchor}class Xz{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,Ze.safari&&e.contentDOM.addEventListener("input",()=>null),Ze.gecko&&lB(e.contentDOM.ownerDocument)}handleEvent(e){!eB(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let r=this.handlers[e];if(r){for(let i of r.observers)i(this.view,t);for(let i of r.handlers){if(t.defaultPrevented)break;if(i(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=Uz(e),r=this.handlers,i=this.view.contentDOM;for(let a in t)if(a!="scroll"){let s=!t[a].handlers.length,o=r[a];o&&s!=!o.handlers.length&&(i.removeEventListener(a,this.handleEvent),o=null),o||i.addEventListener(a,this.handleEvent,{passive:s})}for(let a in r)a!="scroll"&&!t[a]&&i.removeEventListener(a,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&qA.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),Ze.android&&Ze.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return Ze.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&!e.shiftKey&&((t=UA.find(r=>r.keyCode==e.keyCode))&&!e.ctrlKey||qz.indexOf(e.key)>-1&&e.ctrlKey)?(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let t=this.pendingIOSKey;return!t||t.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,mc(this.view.contentDOM,t.key,t.keyCode,t instanceof KeyboardEvent?t:void 0))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:Ze.safari&&!Ze.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function tk(n,e){return(t,r)=>{try{return e.call(n,r,t)}catch(i){Bi(t.state,i)}}}function Uz(n){let e=Object.create(null);function t(r){return e[r]||(e[r]={observers:[],handlers:[]})}for(let r of n){let i=r.spec,a=i&&i.plugin.domEventHandlers,s=i&&i.plugin.domEventObservers;if(a)for(let o in a){let u=a[o];u&&t(o).handlers.push(tk(r.value,u))}if(s)for(let o in s){let u=s[o];u&&t(o).observers.push(tk(r.value,u))}}for(let r in vi)t(r).handlers.push(vi[r]);for(let r in fr)t(r).observers.push(fr[r]);return e}const UA=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],qz="dthko",qA=[16,17,18,20,91,92,224,225],zd=6;function Bd(n){return Math.max(0,n)*.7+8}function Yz(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class Wz{constructor(e,t,r,i){this.view=e,this.startEvent=t,this.style=r,this.mustSelect=i,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=OA(e.contentDOM),this.atoms=e.state.facet(lf).map(s=>s(e));let a=e.contentDOM.ownerDocument;a.addEventListener("mousemove",this.move=this.move.bind(this)),a.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(dt.allowMultipleSelections)&&Gz(e,t),this.dragging=Jz(e,t)&&GA(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&Yz(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,r=0,i=0,a=0,s=this.view.win.innerWidth,o=this.view.win.innerHeight;this.scrollParents.x&&({left:i,right:s}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:a,bottom:o}=this.scrollParents.y.getBoundingClientRect());let u=IA(this.view);e.clientX-u.left<=i+zd?t=-Bd(i-e.clientX):e.clientX+u.right>=s-zd&&(t=Bd(e.clientX-s)),e.clientY-u.top<=a+zd?r=-Bd(a-e.clientY):e.clientY+u.bottom>=o-zd&&(r=Bd(e.clientY-o)),this.setScrollSpeed(t,r)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,r=BA(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!r.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:r,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function Gz(n,e){let t=n.state.facet(PA);return t.length?t[0](e):Ze.mac?e.metaKey:e.ctrlKey}function Kz(n,e){let t=n.state.facet(CA);return t.length?t[0](e):Ze.mac?!e.altKey:!e.ctrlKey}function Jz(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let r=I0(n.root);if(!r||r.rangeCount==0)return!0;let i=r.getRangeAt(0).getClientRects();for(let a=0;a<i.length;a++){let s=i[a];if(s.left<=e.clientX&&s.right>=e.clientX&&s.top<=e.clientY&&s.bottom>=e.clientY)return!0}return!1}function eB(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,r;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(r=Ut.get(t))&&r.isWidget()&&!r.isHidden&&r.widget.ignoreEvent(e))return!1;return!0}const vi=Object.create(null),fr=Object.create(null),YA=Ze.ie&&Ze.ie_version<15||Ze.ios&&Ze.webkit_version<604;function tB(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),WA(n,t.value)},50)}function H1(n,e,t){for(let r of n.facet(e))t=r(t,n);return t}function WA(n,e){e=H1(n.state,$6,e);let{state:t}=n,r,i=1,a=t.toText(e),s=a.lines==t.selection.ranges.length;if(sO!=null&&t.selection.ranges.every(u=>u.empty)&&sO==a.toString()){let u=-1;r=t.changeByRange(d=>{let m=t.doc.lineAt(d.from);if(m.from==u)return{range:d};u=m.from;let p=t.toText((s?a.line(i++).text:e)+t.lineBreak);return{changes:{from:m.from,insert:p},range:we.cursor(d.from+p.length)}})}else s?r=t.changeByRange(u=>{let d=a.line(i++);return{changes:{from:u.from,to:u.to,insert:d.text},range:we.cursor(u.from+d.length)}}):r=t.replaceSelection(a);n.dispatch(r,{userEvent:"input.paste",scrollIntoView:!0})}fr.scroll=n=>{n.inputState.lastScrollTop=n.scrollDOM.scrollTop,n.inputState.lastScrollLeft=n.scrollDOM.scrollLeft};fr.wheel=fr.mousewheel=n=>{n.inputState.lastWheelEvent=Date.now()};vi.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);fr.touchstart=(n,e)=>{let t=n.inputState,r=e.targetTouches[0];t.lastTouchTime=Date.now(),r&&(t.lastTouchX=r.clientX,t.lastTouchY=r.clientY),t.setSelectionOrigin("select.pointer")};fr.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};vi.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let r of n.state.facet(EA))if(t=r(n,e),t)break;if(!t&&e.button==0&&(t=rB(n,e)),t){let r=!n.hasFocus;n.inputState.startMouseSelection(new Wz(n,e,t,r)),r&&n.observer.ignore(()=>{yA(n.contentDOM);let a=n.root.activeElement;a&&!a.contains(n.contentDOM)&&a.blur()});let i=n.inputState.mouseSelection;if(i)return i.start(e),i.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function nk(n,e,t,r){if(r==1)return we.cursor(e,t);if(r==2)return Rz(n.state,e,t);{let i=n.docView.lineAt(e,t),a=n.state.doc.lineAt(i?i.posAtEnd:e),s=i?i.posAtStart:a.from,o=i?i.posAtEnd:a.to;return o<n.state.doc.length&&o==a.to&&o++,we.range(s,o)}}const nB=Ze.ie&&Ze.ie_version<=11;let rk=null,ik=0,ak=0;function GA(n){if(!nB)return n.detail;let e=rk,t=ak;return rk=n,ak=Date.now(),ik=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(ik+1)%3:1}function rB(n,e){let t=n.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),r=GA(e),i=n.state.selection;return{update(a){a.docChanged&&(t.pos=a.changes.mapPos(t.pos),i=i.map(a.changes))},get(a,s,o){let u=n.posAndSideAtCoords({x:a.clientX,y:a.clientY},!1),d,m=nk(n,u.pos,u.assoc,r);if(t.pos!=u.pos&&!s){let p=nk(n,t.pos,t.assoc,r),O=Math.min(p.from,m.from),b=Math.max(p.to,m.to);m=O<m.from?we.range(O,b,m.assoc):we.range(b,O,m.assoc)}return s?i.replaceRange(i.main.extend(m.from,m.to,m.assoc)):o&&r==1&&i.ranges.length>1&&(d=iB(i,u.pos))?d:o?i.addRange(m):we.create([m])}}}function iB(n,e){for(let t=0;t<n.ranges.length;t++){let{from:r,to:i}=n.ranges[t];if(r<=e&&i>=e)return we.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}vi.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let i=n.docView.tile.nearest(e.target);if(i&&i.isWidget()){let a=i.posAtStart,s=a+i.length;(a>=t.to||s<=t.from)&&(t=we.range(a,s))}}let{inputState:r}=n;return r.mouseSelection&&(r.mouseSelection.dragging=!0),r.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",H1(n.state,R6,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};vi.dragend=n=>(n.inputState.draggedContent=null,!1);function sk(n,e,t,r){if(t=H1(n.state,$6,t),!t)return;let i=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:a}=n.inputState,s=r&&a&&Kz(n,e)?{from:a.from,to:a.to}:null,o={from:i,insert:t},u=n.state.changes(s?[s,o]:o);n.focus(),n.dispatch({changes:u,selection:{anchor:u.mapPos(i,-1),head:u.mapPos(i,1)},userEvent:s?"move.drop":"input.drop"}),n.inputState.draggedContent=null}vi.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let r=Array(t.length),i=0,a=()=>{++i==t.length&&sk(n,e,r.filter(s=>s!=null).join(n.state.lineBreak),!1)};for(let s=0;s<t.length;s++){let o=new FileReader;o.onerror=a,o.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(o.result)||(r[s]=o.result),a()},o.readAsText(t[s])}return!0}else{let r=e.dataTransfer.getData("Text");if(r)return sk(n,e,r,!0),!0}return!1};vi.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=YA?null:e.clipboardData;return t?(WA(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(tB(n),!1)};function aB(n,e){let t=n.dom.parentNode;if(!t)return;let r=t.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=e,r.focus(),r.selectionEnd=e.length,r.selectionStart=0,setTimeout(()=>{r.remove(),n.focus()},50)}function sB(n){let e=[],t=[],r=!1;for(let i of n.selection.ranges)i.empty||(e.push(n.sliceDoc(i.from,i.to)),t.push(i));if(!e.length){let i=-1;for(let{from:a}of n.selection.ranges){let s=n.doc.lineAt(a);s.number>i&&(e.push(s.text),t.push({from:s.from,to:Math.min(n.doc.length,s.to+1)})),i=s.number}r=!0}return{text:H1(n,R6,e.join(n.lineBreak)),ranges:t,linewise:r}}let sO=null;vi.copy=vi.cut=(n,e)=>{if(!m0(n.contentDOM,n.observer.selectionRange))return!1;let{text:t,ranges:r,linewise:i}=sB(n.state);if(!t&&!i)return!1;sO=i?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"});let a=YA?null:e.clipboardData;return a?(a.clearData(),a.setData("text/plain",t),!0):(aB(n,t),!1)};const KA=qa.define();function JA(n,e){let t=[];for(let r of n.facet(RA)){let i=r(n,e);i&&t.push(i)}return t.length?n.update({effects:t,annotations:KA.of(!0)}):null}function eP(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=JA(n.state,e);t?n.dispatch(t):n.update([])}},10)}fr.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),eP(n)};fr.blur=n=>{n.observer.clearSelectionRange(),eP(n)};fr.compositionstart=fr.compositionupdate=n=>{n.observer.editContext||(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0))};fr.compositionend=n=>{n.observer.editContext||(n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,Ze.chrome&&Ze.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};fr.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};vi.beforeinput=(n,e)=>{var t,r;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(n.inputState.insertingText=e.data,n.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&n.observer.editContext){let a=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),s=e.getTargetRanges();if(a&&s.length){let o=s[0],u=n.posAtDOM(o.startContainer,o.startOffset),d=n.posAtDOM(o.endContainer,o.endOffset);return N6(n,{from:u,to:d,insert:n.state.toText(a)},null),!0}}let i;if(Ze.chrome&&Ze.android&&(i=UA.find(a=>a.inputType==e.inputType))&&(n.observer.delayAndroidKey(i.key,i.keyCode),i.key=="Backspace"||i.key=="Delete")){let a=((r=window.visualViewport)===null||r===void 0?void 0:r.height)||0;setTimeout(()=>{var s;(((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0)>a+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}return Ze.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),Ze.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>fr.compositionend(n,e),20),!1};const lk=new Set;function lB(n){lk.has(n)||(lk.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}const ok=["pre-wrap","normal","pre-line","break-spaces"];let Pc=!1;function ck(){Pc=!1}class oB{constructor(e){this.lineWrapping=e,this.doc=ft.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let r=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(r+=Math.max(0,Math.ceil((t-e-r*this.lineLength*.5)/this.lineLength))),this.lineHeight*r}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return ok.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let r=0;r<e.length;r++){let i=e[r];i<0?r++:this.heightSamples[Math.floor(i*10)]||(t=!0,this.heightSamples[Math.floor(i*10)]=!0)}return t}refresh(e,t,r,i,a,s){let o=ok.indexOf(e)>-1,u=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=o||Math.abs(r-this.charWidth)>.1;if(this.lineWrapping=o,this.lineHeight=t,this.charWidth=r,this.textHeight=i,this.lineLength=a,u){this.heightSamples={};for(let d=0;d<s.length;d++){let m=s[d];m<0?d++:this.heightSamples[Math.floor(m*10)]=!0}}return u}}class cB{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class pi{constructor(e,t,r,i,a){this.from=e,this.length=t,this.top=r,this.height=i,this._content=a}get type(){return typeof this._content=="number"?cr.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof Il?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new pi(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var $t=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})($t||($t={}));const wh=.001;class Fn{constructor(e,t,r=2){this.length=e,this.height=t,this.flags=r}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>wh&&(Pc=!0),this.height=e)}replace(e,t,r){return Fn.of(r)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,r,i){let a=this,s=r.doc;for(let o=i.length-1;o>=0;o--){let{fromA:u,toA:d,fromB:m,toB:p}=i[o],O=a.lineAt(u,$t.ByPosNoHeight,r.setDoc(t),0,0),b=O.to>=d?O:a.lineAt(d,$t.ByPosNoHeight,r,0,0);for(p+=b.to-d,d=b.to;o>0&&O.from<=i[o-1].toA;)u=i[o-1].fromA,m=i[o-1].fromB,o--,u<O.from&&(O=a.lineAt(u,$t.ByPosNoHeight,r,0,0));m+=O.from-u,u=O.from;let S=j6.build(r.setDoc(s),e,m,p);a=e1(a,a.replace(u,d,S))}return a.updateHeight(r,0)}static empty(){return new Cr(0,0,0)}static of(e){if(e.length==1)return e[0];let t=0,r=e.length,i=0,a=0;for(;;)if(t==r)if(i>a*2){let o=e[t-1];o.break?e.splice(--t,1,o.left,null,o.right):e.splice(--t,1,o.left,o.right),r+=1+o.break,i-=o.size}else if(a>i*2){let o=e[r];o.break?e.splice(r,1,o.left,null,o.right):e.splice(r,1,o.left,o.right),r+=2+o.break,a-=o.size}else break;else if(i<a){let o=e[t++];o&&(i+=o.size)}else{let o=e[--r];o&&(a+=o.size)}let s=0;return e[t-1]==null?(s=1,t--):e[t]==null&&(s=1,r++),new fB(Fn.of(e.slice(0,t)),s,Fn.of(e.slice(r)))}}function e1(n,e){return n==e?n:(n.constructor!=e.constructor&&(Pc=!0),e)}Fn.prototype.size=1;const uB=Je.replace({});class tP extends Fn{constructor(e,t,r){super(e,t),this.deco=r,this.spaceAbove=0}mainBlock(e,t){return new pi(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,t,r,i){return this.spaceAbove&&e<r+this.spaceAbove?new pi(i,0,r,this.spaceAbove,uB):this.mainBlock(r,i)}lineAt(e,t,r,i,a){let s=this.mainBlock(i,a);return this.spaceAbove?this.blockAt(0,r,i,a).join(s):s}forEachLine(e,t,r,i,a,s){e<=a+this.length&&t>=a&&s(this.lineAt(0,$t.ByPos,r,i,a))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more&&this.setMeasuredHeight(i),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Cr extends tP{constructor(e,t,r){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=r}mainBlock(e,t){return new pi(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,r){let i=r[0];return r.length==1&&(i instanceof Cr||i instanceof Mn&&i.flags&4)&&Math.abs(this.length-i.length)<10?(i instanceof Mn?i=new Cr(i.length,this.height,this.spaceAbove):i.height=this.height,this.outdated||(i.outdated=!1),i):Fn.of(r)}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more?this.setMeasuredHeight(i):(r||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class Mn extends Fn{constructor(e){super(e,0)}heightMetrics(e,t){let r=e.doc.lineAt(t).number,i=e.doc.lineAt(t+this.length).number,a=i-r+1,s,o=0;if(e.lineWrapping){let u=Math.min(this.height,e.lineHeight*a);s=u/a,this.length>a+1&&(o=(this.height-u)/(this.length-a-1))}else s=this.height/a;return{firstLine:r,lastLine:i,perLine:s,perChar:o}}blockAt(e,t,r,i){let{firstLine:a,lastLine:s,perLine:o,perChar:u}=this.heightMetrics(t,i);if(t.lineWrapping){let d=i+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-r)/this.height))*this.length)),m=t.doc.lineAt(d),p=o+m.length*u,O=Math.max(r,e-p/2);return new pi(m.from,m.length,O,p,0)}else{let d=Math.max(0,Math.min(s-a,Math.floor((e-r)/o))),{from:m,length:p}=t.doc.line(a+d);return new pi(m,p,r+o*d,o,0)}}lineAt(e,t,r,i,a){if(t==$t.ByHeight)return this.blockAt(e,r,i,a);if(t==$t.ByPosNoHeight){let{from:b,to:S}=r.doc.lineAt(e);return new pi(b,S-b,0,0,0)}let{firstLine:s,perLine:o,perChar:u}=this.heightMetrics(r,a),d=r.doc.lineAt(e),m=o+d.length*u,p=d.number-s,O=i+o*p+u*(d.from-a-p);return new pi(d.from,d.length,Math.max(i,Math.min(O,i+this.height-m)),m,0)}forEachLine(e,t,r,i,a,s){e=Math.max(e,a),t=Math.min(t,a+this.length);let{firstLine:o,perLine:u,perChar:d}=this.heightMetrics(r,a);for(let m=e,p=i;m<=t;){let O=r.doc.lineAt(m);if(m==e){let S=O.number-o;p+=u*S+d*(e-a-S)}let b=u+d*O.length;s(new pi(O.from,O.length,p,b,0)),p+=b,m=O.to+1}}replace(e,t,r){let i=this.length-t;if(i>0){let a=r[r.length-1];a instanceof Mn?r[r.length-1]=new Mn(a.length+i):r.push(null,new Mn(i-1))}if(e>0){let a=r[0];a instanceof Mn?r[0]=new Mn(e+a.length):r.unshift(new Mn(e-1),null)}return Fn.of(r)}decomposeLeft(e,t){t.push(new Mn(e-1),null)}decomposeRight(e,t){t.push(null,new Mn(this.length-e-1))}updateHeight(e,t=0,r=!1,i){let a=t+this.length;if(i&&i.from<=t+this.length&&i.more){let s=[],o=Math.max(t,i.from),u=-1;for(i.from>t&&s.push(new Mn(i.from-t-1).updateHeight(e,t));o<=a&&i.more;){let m=e.doc.lineAt(o).length;s.length&&s.push(null);let p=i.heights[i.index++],O=0;p<0&&(O=-p,p=i.heights[i.index++]),u==-1?u=p:Math.abs(p-u)>=wh&&(u=-2);let b=new Cr(m,p,O);b.outdated=!1,s.push(b),o+=m+1}o<=a&&s.push(null,new Mn(a-o).updateHeight(e,o));let d=Fn.of(s);return(u<0||Math.abs(d.height-this.height)>=wh||Math.abs(u-this.heightMetrics(e,t).perLine)>=wh)&&(Pc=!0),e1(this,d)}else(r||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class fB extends Fn{constructor(e,t,r){super(e.length+t+r.length,e.height+r.height,t|(e.outdated||r.outdated?2:0)),this.left=e,this.right=r,this.size=e.size+r.size}get break(){return this.flags&1}blockAt(e,t,r,i){let a=r+this.left.height;return e<a?this.left.blockAt(e,t,r,i):this.right.blockAt(e,t,a,i+this.left.length+this.break)}lineAt(e,t,r,i,a){let s=i+this.left.height,o=a+this.left.length+this.break,u=t==$t.ByHeight?e<s:e<o,d=u?this.left.lineAt(e,t,r,i,a):this.right.lineAt(e,t,r,s,o);if(this.break||(u?d.to<o:d.from>o))return d;let m=t==$t.ByPosNoHeight?$t.ByPosNoHeight:$t.ByPos;return u?d.join(this.right.lineAt(o,m,r,s,o)):this.left.lineAt(o,m,r,i,a).join(d)}forEachLine(e,t,r,i,a,s){let o=i+this.left.height,u=a+this.left.length+this.break;if(this.break)e<u&&this.left.forEachLine(e,t,r,i,a,s),t>=u&&this.right.forEachLine(e,t,r,o,u,s);else{let d=this.lineAt(u,$t.ByPos,r,i,a);e<d.from&&this.left.forEachLine(e,d.from-1,r,i,a,s),d.to>=e&&d.from<=t&&s(d),t>d.to&&this.right.forEachLine(d.to+1,t,r,o,u,s)}}replace(e,t,r){let i=this.left.length+this.break;if(t<i)return this.balanced(this.left.replace(e,t,r),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-i,t-i,r));let a=[];e>0&&this.decomposeLeft(e,a);let s=a.length;for(let o of r)a.push(o);if(e>0&&uk(a,s-1),t<this.length){let o=a.length;this.decomposeRight(t,a),uk(a,o)}return Fn.of(a)}decomposeLeft(e,t){let r=this.left.length;if(e<=r)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(r++,e>=r&&t.push(null)),e>r&&this.right.decomposeLeft(e-r,t)}decomposeRight(e,t){let r=this.left.length,i=r+this.break;if(e>=i)return this.right.decomposeRight(e-i,t);e<r&&this.left.decomposeRight(e,t),this.break&&e<i&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?Fn.of(this.break?[e,null,t]:[e,t]):(this.left=e1(this.left,e),this.right=e1(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,r=!1,i){let{left:a,right:s}=this,o=t+a.length+this.break,u=null;return i&&i.from<=t+a.length&&i.more?u=a=a.updateHeight(e,t,r,i):a.updateHeight(e,t,r),i&&i.from<=o+s.length&&i.more?u=s=s.updateHeight(e,o,r,i):s.updateHeight(e,o,r),u?this.balanced(a,s):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function uk(n,e){let t,r;n[e]==null&&(t=n[e-1])instanceof Mn&&(r=n[e+1])instanceof Mn&&n.splice(e-1,3,new Mn(t.length+1+r.length))}const dB=5;class j6{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let r=Math.min(t,this.lineEnd),i=this.nodes[this.nodes.length-1];i instanceof Cr?i.length+=r-this.pos:(r>this.pos||!this.isCovered)&&this.nodes.push(new Cr(r-this.pos,-1,0)),this.writtenTo=r,t>r&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,r){if(e<t||r.heightRelevant){let i=r.widget?r.widget.estimatedHeight:0,a=r.widget?r.widget.lineBreaks:0;i<0&&(i=this.oracle.lineHeight);let s=t-e;r.block?this.addBlock(new tP(s,i,r)):(s||a||i>=dB)&&this.addLineDeco(i,a,s)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new Cr(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let r=new Mn(t-e);return this.oracle.doc.lineAt(e).to==t&&(r.flags|=4),r}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Cr)return e;let t=new Cr(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,r){let i=this.ensureLine();i.length+=r,i.collapsed+=r,i.widgetHeight=Math.max(i.widgetHeight,e),i.breaks+=t,this.writtenTo=this.pos=this.pos+r}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof Cr)&&!this.isCovered?this.nodes.push(new Cr(0,-1,0)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let r=e;for(let i of this.nodes)i instanceof Cr&&i.updateHeight(this.oracle,r),r+=i?i.length:1;return this.nodes}static build(e,t,r,i){let a=new j6(r,e);return lt.spans(t,r,i,a,0),a.finish(r)}}function hB(n,e,t){let r=new mB;return lt.compare(n,e,t,r,0),r.changes}class mB{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,r,i){(e<t||r&&r.heightRelevant||i&&i.heightRelevant)&&hc(e,t,this.changes,5)}}function pB(n,e){let t=n.getBoundingClientRect(),r=n.ownerDocument,i=r.defaultView||window,a=Math.max(0,t.left),s=Math.min(i.innerWidth,t.right),o=Math.max(0,t.top),u=Math.min(i.innerHeight,t.bottom);for(let d=n.parentNode;d&&d!=r.body;)if(d.nodeType==1){let m=d,p=window.getComputedStyle(m);if((m.scrollHeight>m.clientHeight||m.scrollWidth>m.clientWidth)&&p.overflow!="visible"){let O=m.getBoundingClientRect();a=Math.max(a,O.left),s=Math.min(s,O.right),o=Math.max(o,O.top),u=Math.min(d==n.parentNode?i.innerHeight:u,O.bottom)}d=p.position=="absolute"||p.position=="fixed"?m.offsetParent:m.parentNode}else if(d.nodeType==11)d=d.host;else break;return{left:a-t.left,right:Math.max(a,s)-t.left,top:o-(t.top+e),bottom:Math.max(o,u)-(t.top+e)}}function gB(n){let e=n.getBoundingClientRect(),t=n.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function OB(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class i2{constructor(e,t,r,i){this.from=e,this.to=t,this.size=r,this.displaySize=i}static same(e,t){if(e.length!=t.length)return!1;for(let r=0;r<e.length;r++){let i=e[r],a=t[r];if(i.from!=a.from||i.to!=a.to||i.size!=a.size)return!1}return!0}draw(e,t){return Je.replace({widget:new yB(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}}class yB extends Fl{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class fk{constructor(e,t){this.view=e,this.state=t,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scaleX=1,this.scaleY=1,this.scrollOffset=0,this.scrolledToBottom=!1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=dk,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=en.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let r=t.facet(Q6).some(i=>typeof i!="function"&&i.class=="cm-lineWrapping");this.heightOracle=new oB(r),this.stateDeco=hk(t),this.heightMap=Fn.empty().applyChanges(this.stateDeco,ft.empty,this.heightOracle.setDoc(t.doc),[new Jr(0,0,0,t.doc.length)]);for(let i=0;i<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());i++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Je.set(this.lineGaps.map(i=>i.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let r=0;r<=1;r++){let i=r?t.head:t.anchor;if(!e.some(({from:a,to:s})=>i>=a&&i<=s)){let{from:a,to:s}=this.lineBlockAt(i);e.push(new Hd(a,s))}}return this.viewports=e.sort((r,i)=>r.from-i.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?dk:new Z6(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(n0(e,this.scaler))})}update(e,t=null){this.state=e.state;let r=this.stateDeco;this.stateDeco=hk(this.state);let i=e.changedRanges,a=Jr.extendWithRanges(i,hB(r,this.stateDeco,e?e.changes:dn.empty(this.state.doc.length))),s=this.heightMap.height,o=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);ck(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),a),(this.heightMap.height!=s||Pc)&&(e.flags|=2),o?(this.scrollAnchorPos=e.changes.mapPos(o.from,-1),this.scrollAnchorHeight=o.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=s);let u=a.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<u.from||t.range.head>u.to)||!this.viewportIsAppropriate(u))&&(u=this.getViewport(0,t));let d=u.from!=this.viewport.from||u.to!=this.viewport.to;this.viewport=u,e.flags|=this.updateForViewport(),(d||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(cz)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,t=e.contentDOM,r=window.getComputedStyle(t),i=this.heightOracle,a=r.whiteSpace;this.defaultTextDirection=r.direction=="rtl"?en.RTL:en.LTR;let s=this.heightOracle.mustRefreshForWrapping(a)||this.mustMeasureContent==="refresh",o=t.getBoundingClientRect(),u=s||this.mustMeasureContent||this.contentDOMHeight!=o.height;this.contentDOMHeight=o.height,this.mustMeasureContent=!1;let d=0,m=0;if(o.width&&o.height){let{scaleX:P,scaleY:$}=gA(t,o);(P>.005&&Math.abs(this.scaleX-P)>.005||$>.005&&Math.abs(this.scaleY-$)>.005)&&(this.scaleX=P,this.scaleY=$,d|=16,s=u=!0)}let p=(parseInt(r.paddingTop)||0)*this.scaleY,O=(parseInt(r.paddingBottom)||0)*this.scaleY;(this.paddingTop!=p||this.paddingBottom!=O)&&(this.paddingTop=p,this.paddingBottom=O,d|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(i.lineWrapping&&(u=!0),this.editorWidth=e.scrollDOM.clientWidth,d|=16);let b=OA(this.view.contentDOM,!1).y;b!=this.scrollParent&&(this.scrollParent=b,this.scrollAnchorHeight=-1,this.scrollOffset=0);let S=this.getScrollOffset();this.scrollOffset!=S&&(this.scrollAnchorHeight=-1,this.scrollOffset=S),this.scrolledToBottom=bA(this.scrollParent||e.win);let k=(this.printing?OB:pB)(t,this.paddingTop),T=k.top-this.pixelViewport.top,w=k.bottom-this.pixelViewport.bottom;this.pixelViewport=k;let A=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(A!=this.inView&&(this.inView=A,A&&(u=!0)),!this.inView&&!this.scrollTarget&&!gB(e.dom))return 0;let E=o.width;if((this.contentDOMWidth!=E||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=o.width,this.editorHeight=e.scrollDOM.clientHeight,d|=16),u){let P=e.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(P)&&(s=!0),s||i.lineWrapping&&Math.abs(E-this.contentDOMWidth)>i.charWidth){let{lineHeight:$,charWidth:M,textHeight:R}=e.docView.measureTextSize();s=$>0&&i.refresh(a,$,M,R,Math.max(5,E/M),P),s&&(e.docView.minWidth=0,d|=16)}T>0&&w>0?m=Math.max(T,w):T<0&&w<0&&(m=Math.min(T,w)),ck();for(let $ of this.viewports){let M=$.from==this.viewport.from?P:e.docView.measureVisibleLineHeights($);this.heightMap=(s?Fn.empty().applyChanges(this.stateDeco,ft.empty,this.heightOracle,[new Jr(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(i,0,s,new cB($.from,M))}Pc&&(d|=2)}let C=!this.viewportIsAppropriate(this.viewport,m)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return C&&(d&2&&(d|=this.updateScaler()),this.viewport=this.getViewport(m,this.scrollTarget),d|=this.updateForViewport()),(d&2||C)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(s?[]:this.lineGaps,e)),d|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),d}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let r=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),i=this.heightMap,a=this.heightOracle,{visibleTop:s,visibleBottom:o}=this,u=new Hd(i.lineAt(s-r*1e3,$t.ByHeight,a,0,0).from,i.lineAt(o+(1-r)*1e3,$t.ByHeight,a,0,0).to);if(t){let{head:d}=t.range;if(d<u.from||d>u.to){let m=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),p=i.lineAt(d,$t.ByPos,a,0,0),O;t.y=="center"?O=(p.top+p.bottom)/2-m/2:t.y=="start"||t.y=="nearest"&&d<u.from?O=p.top:O=p.bottom-m,u=new Hd(i.lineAt(O-1e3/2,$t.ByHeight,a,0,0).from,i.lineAt(O+m+1e3/2,$t.ByHeight,a,0,0).to)}}return u}mapViewport(e,t){let r=t.mapPos(e.from,-1),i=t.mapPos(e.to,1);return new Hd(this.heightMap.lineAt(r,$t.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(i,$t.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},r=0){if(!this.inView)return!0;let{top:i}=this.heightMap.lineAt(e,$t.ByPos,this.heightOracle,0,0),{bottom:a}=this.heightMap.lineAt(t,$t.ByPos,this.heightOracle,0,0),{visibleTop:s,visibleBottom:o}=this;return(e==0||i<=s-Math.max(10,Math.min(-r,250)))&&(t==this.state.doc.length||a>=o+Math.max(10,Math.min(r,250)))&&i>s-2*1e3&&a<o+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let r=[];for(let i of e)t.touchesRange(i.from,i.to)||r.push(new i2(t.mapPos(i.from),t.mapPos(i.to),i.size,i.displaySize));return r}ensureLineGaps(e,t){let r=this.heightOracle.lineWrapping,i=r?1e4:2e3,a=i>>1,s=i<<1;if(this.defaultTextDirection!=en.LTR&&!r)return[];let o=[],u=(m,p,O,b)=>{if(p-m<a)return;let S=this.state.selection.main,k=[S.from];S.empty||k.push(S.to);for(let w of k)if(w>m&&w<p){u(m,w-10,O,b),u(w+10,p,O,b);return}let T=xB(e,w=>w.from>=O.from&&w.to<=O.to&&Math.abs(w.from-m)<a&&Math.abs(w.to-p)<a&&!k.some(A=>w.from<A&&w.to>A));if(!T){if(p<O.to&&t&&r&&t.visibleRanges.some(E=>E.from<=p&&E.to>=p)){let E=t.moveToLineBoundary(we.cursor(p),!1,!0).head;E>m&&(p=E)}let w=this.gapSize(O,m,p,b),A=r||w<2e6?w:2e6;T=new i2(m,p,w,A)}o.push(T)},d=m=>{if(m.length<s||m.type!=cr.Text)return;let p=bB(m.from,m.to,this.stateDeco);if(p.total<s)return;let O=this.scrollTarget?this.scrollTarget.range.head:null,b,S;if(r){let k=i/this.heightOracle.lineLength*this.heightOracle.lineHeight,T,w;if(O!=null){let A=Xd(p,O),E=((this.visibleBottom-this.visibleTop)/2+k)/m.height;T=A-E,w=A+E}else T=(this.visibleTop-m.top-k)/m.height,w=(this.visibleBottom-m.top+k)/m.height;b=Fd(p,T),S=Fd(p,w)}else{let k=p.total*this.heightOracle.charWidth,T=i*this.heightOracle.charWidth,w=0;if(k>2e6)for(let $ of e)$.from>=m.from&&$.from<m.to&&$.size!=$.displaySize&&$.from*this.heightOracle.charWidth+w<this.pixelViewport.left&&(w=$.size-$.displaySize);let A=this.pixelViewport.left+w,E=this.pixelViewport.right+w,C,P;if(O!=null){let $=Xd(p,O),M=((E-A)/2+T)/k;C=$-M,P=$+M}else C=(A-T)/k,P=(E+T)/k;b=Fd(p,C),S=Fd(p,P)}b>m.from&&u(m.from,b,m,p),S<m.to&&u(S,m.to,m,p)};for(let m of this.viewportLines)Array.isArray(m.type)?m.type.forEach(d):d(m);return o}gapSize(e,t,r,i){let a=Xd(i,r)-Xd(i,t);return this.heightOracle.lineWrapping?e.height*a:i.total*this.heightOracle.charWidth*a}updateLineGaps(e){i2.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=Je.set(e.map(t=>t.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let r=[];lt.spans(t,this.viewport.from,this.viewport.to,{span(a,s){r.push({from:a,to:s})},point(){}},20);let i=0;if(r.length!=this.visibleRanges.length)i=12;else for(let a=0;a<r.length&&!(i&8);a++){let s=this.visibleRanges[a],o=r[a];(s.from!=o.from||s.to!=o.to)&&(i|=4,e&&e.mapPos(s.from,-1)==o.from&&e.mapPos(s.to,1)==o.to||(i|=8))}return this.visibleRanges=r,i}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||n0(this.heightMap.lineAt(e,$t.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||n0(this.heightMap.lineAt(this.scaler.fromDOM(e),$t.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return n0(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Hd{constructor(e,t){this.from=e,this.to=t}}function bB(n,e,t){let r=[],i=n,a=0;return lt.spans(t,n,e,{span(){},point(s,o){s>i&&(r.push({from:i,to:s}),a+=s-i),i=o}},20),i<e&&(r.push({from:i,to:e}),a+=e-i),{total:a,ranges:r}}function Fd({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let r=Math.floor(n*t);for(let i=0;;i++){let{from:a,to:s}=e[i],o=s-a;if(r<=o)return a+r;r-=o}}function Xd(n,e){let t=0;for(let{from:r,to:i}of n.ranges){if(e<=i){t+=e-r;break}t+=i-r}return t/n.total}function xB(n,e){for(let t of n)if(e(t))return t}const dk={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};function hk(n){let e=n.facet(L1).filter(r=>typeof r!="function"),t=n.facet(_6).filter(r=>typeof r!="function");return t.length&&e.push(lt.join(t)),e}class Z6{constructor(e,t,r){let i=0,a=0,s=0;this.viewports=r.map(({from:o,to:u})=>{let d=t.lineAt(o,$t.ByPos,e,0,0).top,m=t.lineAt(u,$t.ByPos,e,0,0).bottom;return i+=m-d,{from:o,to:u,top:d,bottom:m,domTop:0,domBottom:0}}),this.scale=(7e6-i)/(t.height-i);for(let o of this.viewports)o.domTop=s+(o.top-a)*this.scale,s=o.domBottom=o.domTop+(o.bottom-o.top),a=o.bottom}toDOM(e){for(let t=0,r=0,i=0;;t++){let a=t<this.viewports.length?this.viewports[t]:null;if(!a||e<a.top)return i+(e-r)*this.scale;if(e<=a.bottom)return a.domTop+(e-a.top);r=a.bottom,i=a.domBottom}}fromDOM(e){for(let t=0,r=0,i=0;;t++){let a=t<this.viewports.length?this.viewports[t]:null;if(!a||e<a.domTop)return r+(e-i)/this.scale;if(e<=a.domBottom)return a.top+(e-a.domTop);r=a.bottom,i=a.domBottom}}eq(e){return e instanceof Z6?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,r)=>t.from==e.viewports[r].from&&t.to==e.viewports[r].to):!1}}function n0(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),r=e.toDOM(n.bottom);return new pi(n.from,n.length,t,r-t,Array.isArray(n._content)?n._content.map(i=>n0(i,e)):n._content)}const Ud=ze.define({combine:n=>n.join(" ")}),lO=ze.define({combine:n=>n.indexOf(!0)>-1}),oO=Ds.newName(),nP=Ds.newName(),rP=Ds.newName(),iP={"&light":"."+nP,"&dark":"."+rP};function cO(n,e,t){return new Ds(e,{finish(r){return/&/.test(r)?r.replace(/&\w*/,i=>{if(i=="&")return n;if(!t||!t[i])throw new RangeError(`Unsupported selector: ${i}`);return t[i]}):n+" "+r}})}const SB=cO("."+oO,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},iP),kB={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},a2=Ze.ie&&Ze.ie_version<=11;class vB{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new GL,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let r of t)this.queue.push(r);(Ze.ie&&Ze.ie_version<=11||Ze.ios&&e.composing)&&t.some(r=>r.type=="childList"&&r.removedNodes.length||r.type=="characterData"&&r.oldValue.length>r.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&Ze.android&&e.constructor.EDIT_CONTEXT!==!1&&!(Ze.chrome&&Ze.chrome_version<126)&&(this.editContext=new TB(e),e.state.facet(Ra)&&(e.contentDOM.editContext=this.editContext.editContext)),a2&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,r)=>t!=e[r]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:r}=this,i=this.selectionRange;if(r.state.facet(Ra)?r.root.activeElement!=this.dom:!m0(this.dom,i))return;let a=i.anchorNode&&r.docView.tile.nearest(i.anchorNode);if(a&&a.isWidget()&&a.widget.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(Ze.ie&&Ze.ie_version<=11||Ze.android&&Ze.chrome)&&!r.state.selection.main.empty&&i.focusNode&&p0(i.focusNode,i.focusOffset,i.anchorNode,i.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=I0(e.root);if(!t)return!1;let r=Ze.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&wB(this.view,t)||t;if(!r||this.selectionRange.eq(r))return!1;let i=m0(this.dom,r);return i&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&JL(this.dom,r)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(r),i&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let r=this.dom;r;)if(r.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==r?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);for(let r of this.scrollTargets=t)r.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,kB),a2&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),a2&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var r;if(!this.delayedAndroidKey){let i=()=>{let a=this.delayedAndroidKey;a&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=a.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&a.force&&mc(this.dom,a.key,a.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(i)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((r=this.delayedAndroidKey)===null||r===void 0)&&r.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,r=-1,i=!1;for(let a of e){let s=this.readMutation(a);s&&(s.typeOver&&(i=!0),t==-1?{from:t,to:r}=s:(t=Math.min(s.from,t),r=Math.max(s.to,r)))}return{from:t,to:r,typeOver:i}}readChange(){let{from:e,to:t,typeOver:r}=this.processRecords(),i=this.selectionChanged&&m0(this.dom,this.selectionRange);if(e<0&&!i)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let a=new zz(this.view,e,t,r);return this.view.docView.domChanged={newSel:a.newSel?a.newSel.main:null},a}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let r=this.view.state,i=FA(this.view,t);return this.view.state==r&&(t.domChanged||t.newSel&&!Jh(this.view.state.selection,t.newSel.main))&&this.view.update([]),i}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty(e.type=="attributes"),e.type=="childList"){let r=mk(t,e.previousSibling||e.target.previousSibling,-1),i=mk(t,e.nextSibling||e.target.nextSibling,1);return{from:r?t.posAfter(r):t.posAtStart,to:i?t.posBefore(i):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(Ra)!=e.state.facet(Ra)&&(e.view.contentDOM.editContext=e.state.facet(Ra)?this.editContext.editContext:null))}destroy(){var e,t,r;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(r=this.resizeScroll)===null||r===void 0||r.disconnect();for(let i of this.scrollTargets)i.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function mk(n,e,t){for(;e;){let r=Ut.get(e);if(r&&r.parent==n)return r;let i=e.parentNode;e=i!=n.dom?i:t>0?e.nextSibling:e.previousSibling}return null}function pk(n,e){let t=e.startContainer,r=e.startOffset,i=e.endContainer,a=e.endOffset,s=n.docView.domAtPos(n.state.selection.main.anchor,1);return p0(s.node,s.offset,i,a)&&([t,r,i,a]=[i,a,t,r]),{anchorNode:t,anchorOffset:r,focusNode:i,focusOffset:a}}function wB(n,e){if(e.getComposedRanges){let i=e.getComposedRanges(n.root)[0];if(i)return pk(n,i)}let t=null;function r(i){i.preventDefault(),i.stopImmediatePropagation(),t=i.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",r,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",r,!0),t?pk(n,t):null}class TB{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=r=>{let i=e.state.selection.main,{anchor:a,head:s}=i,o=this.toEditorPos(r.updateRangeStart),u=this.toEditorPos(r.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:r.updateRangeStart,editorBase:o,drifted:!1});let d=u-o>r.text.length;o==this.from&&a<this.from?o=a:u==this.to&&a>this.to&&(u=a);let m=XA(e.state.sliceDoc(o,u),r.text,(d?i.from:i.to)-o,d?"end":null);if(!m){let O=we.single(this.toEditorPos(r.selectionStart),this.toEditorPos(r.selectionEnd));Jh(O,i)||e.dispatch({selection:O,userEvent:"select"});return}let p={from:m.from+o,to:m.toA+o,insert:ft.of(r.text.slice(m.from,m.toB).split(`
347
- `))};if((Ze.mac||Ze.android)&&p.from==s-1&&/^\. ?$/.test(r.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(p={from:o,to:u,insert:ft.of([r.text.replace("."," ")])}),this.pendingContextChange=p,!e.state.readOnly){let O=this.to-this.from+(p.to-p.from+p.insert.length);N6(e,p,we.single(this.toEditorPos(r.selectionStart,O),this.toEditorPos(r.selectionEnd,O)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),p.from<p.to&&!p.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,r.updateRangeStart-1),Math.min(t.text.length,r.updateRangeStart+1)))&&this.handlers.compositionend(r)},this.handlers.characterboundsupdate=r=>{let i=[],a=null;for(let s=this.toEditorPos(r.rangeStart),o=this.toEditorPos(r.rangeEnd);s<o;s++){let u=e.coordsForChar(s);a=u&&new DOMRect(u.left,u.top,u.right-u.left,u.bottom-u.top)||a||new DOMRect,i.push(a)}t.updateCharacterBounds(r.rangeStart,i)},this.handlers.textformatupdate=r=>{let i=[];for(let a of r.getTextFormats()){let s=a.underlineStyle,o=a.underlineThickness;if(!/none/i.test(s)&&!/none/i.test(o)){let u=this.toEditorPos(a.rangeStart),d=this.toEditorPos(a.rangeEnd);if(u<d){let m=`text-decoration: underline ${/^[a-z]/.test(s)?s+" ":s=="Dashed"?"dashed ":s=="Squiggle"?"wavy ":""}${/thin/i.test(o)?1:2}px`;i.push(Je.mark({attributes:{style:m}}).range(u,d))}}}e.dispatch({effects:NA.of(Je.set(i))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:r}=this.composing;this.composing=null,r&&this.reset(e.state)}};for(let r in this.handlers)t.addEventListener(r,this.handlers[r]);this.measureReq={read:r=>{this.editContext.updateControlBounds(r.contentDOM.getBoundingClientRect());let i=I0(r.root);i&&i.rangeCount&&this.editContext.updateSelectionBounds(i.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,r=!1,i=this.pendingContextChange;return e.changes.iterChanges((a,s,o,u,d)=>{if(r)return;let m=d.length-(s-a);if(i&&s>=i.to)if(i.from==a&&i.to==s&&i.insert.eq(d)){i=this.pendingContextChange=null,t+=m,this.to+=m;return}else i=null,this.revertPending(e.state);if(a+=t,s+=t,s<=this.from)this.from+=m,this.to+=m;else if(a<this.to){if(a<this.from||s>this.to||this.to-this.from+d.length>3e4){r=!0;return}this.editContext.updateText(this.toContextPos(a),this.toContextPos(s),d.toString()),this.to+=m}t+=m}),i&&!r&&this.revertPending(e.state),!r}update(e){let t=this.pendingContextChange,r=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(r.from,r.to)&&e.transactions.some(i=>!i.isUserEvent("input.type")&&i.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,r=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),i=this.toContextPos(t.head);(this.editContext.selectionStart!=r||this.editContext.selectionEnd!=i)&&this.editContext.updateSelection(r,i)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let r=this.composing;return r&&r.drifted?r.editorBase+(e-r.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class Le{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:r}=e;this.dispatchTransactions=e.dispatchTransactions||r&&(i=>i.forEach(a=>r(a,this)))||(i=>this.update(i)),this.dispatch=this.dispatch.bind(this),this._root=e.root||KL(e.parent)||document,this.viewState=new fk(this,e.state||dt.create(e)),e.scrollTo&&e.scrollTo.is(Ld)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(nc).map(i=>new Jg(i));for(let i of this.plugins)i.update(this);this.observer=new vB(this),this.inputState=new Xz(this),this.inputState.ensureHandlers(this.plugins),this.docView=new KS(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let t=e.length==1&&e[0]instanceof cn?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,r=!1,i,a=this.state;for(let O of e){if(O.startState!=a)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");a=O.state}if(this.destroyed){this.viewState.state=a;return}let s=this.hasFocus,o=0,u=null;e.some(O=>O.annotation(KA))?(this.inputState.notifiedFocused=s,o=1):s!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=s,u=JA(a,s),u||(o=1));let d=this.observer.delayedAndroidKey,m=null;if(d?(this.observer.clearDelayedAndroidKey(),m=this.observer.readChange(),(m&&!this.state.doc.eq(a.doc)||!this.state.selection.eq(a.selection))&&(m=null)):this.observer.clear(),a.facet(dt.phrases)!=this.state.facet(dt.phrases))return this.setState(a);i=Wh.create(this,a,e),i.flags|=o;let p=this.viewState.scrollTarget;try{this.updateState=2;for(let O of e){if(p&&(p=p.map(O.changes)),O.scrollIntoView){let{main:b}=O.state.selection;p=new pc(b.empty?b:we.cursor(b.head,b.head>b.anchor?-1:1))}for(let b of O.effects)b.is(Ld)&&(p=b.value.clip(this.state))}this.viewState.update(i,p),this.bidiCache=t1.update(this.bidiCache,i.changes),i.empty||(this.updatePlugins(i),this.inputState.update(i)),t=this.docView.update(i),this.state.facet(t0)!=this.styleModules&&this.mountStyles(),r=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(O=>O.isUserEvent("select.pointer")))}finally{this.updateState=0}if(i.startState.facet(Ud)!=i.state.facet(Ud)&&(this.viewState.mustMeasureContent=!0),(t||r||p||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!i.empty)for(let O of this.state.facet(rO))try{O(i)}catch(b){Bi(this.state,b,"update listener")}(u||m)&&Promise.resolve().then(()=>{u&&this.state==u.startState&&this.dispatch(u),m&&!FA(this,m)&&d.force&&mc(this.contentDOM,d.key,d.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let r of this.plugins)r.destroy(this);this.viewState=new fk(this,e),this.plugins=e.facet(nc).map(r=>new Jg(r)),this.pluginMap.clear();for(let r of this.plugins)r.update(this);this.docView.destroy(),this.docView=new KS(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(nc),r=e.state.facet(nc);if(t!=r){let i=[];for(let a of r){let s=t.indexOf(a);if(s<0)i.push(new Jg(a));else{let o=this.plugins[s];o.mustUpdate=e,i.push(o)}}for(let a of this.plugins)a.mustUpdate!=e&&a.destroy(this);this.plugins=i,this.pluginMap.clear()}else for(let i of this.plugins)i.mustUpdate=e;for(let i=0;i<this.plugins.length;i++)this.plugins[i].update(this);t!=r&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let t=e.value;if(t&&t.docViewUpdate)try{t.docViewUpdate(this)}catch(r){Bi(this.state,r,"doc view update listener")}}}measure(e=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,r=this.viewState.scrollParent,i=this.viewState.getScrollOffset(),{scrollAnchorPos:a,scrollAnchorHeight:s}=this.viewState;Math.abs(i-this.viewState.scrollOffset)>1&&(s=-1),this.viewState.scrollAnchorHeight=-1;try{for(let o=0;;o++){if(s<0)if(bA(r||this.win))a=-1,s=this.viewState.heightMap.height;else{let b=this.viewState.scrollAnchorAt(i);a=b.from,s=b.top}this.updateState=1;let u=this.viewState.measure();if(!u&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(o>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let d=[];u&4||([this.measureRequests,d]=[d,this.measureRequests]);let m=d.map(b=>{try{return b.read(this)}catch(S){return Bi(this.state,S),gk}}),p=Wh.create(this,this.state,[]),O=!1;p.flags|=u,t?t.flags|=u:t=p,this.updateState=2,p.empty||(this.updatePlugins(p),this.inputState.update(p),this.updateAttrs(),O=this.docView.update(p),O&&this.docViewUpdate());for(let b=0;b<d.length;b++)if(m[b]!=gk)try{let S=d[b];S.write&&S.write(m[b],this)}catch(S){Bi(this.state,S)}if(O&&this.docView.updateSelection(!0),!p.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,s=-1;continue}else{let S=((a<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(a).top)-s)/this.scaleY;if((S>1||S<-1)&&(r==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){i=i+S,r?r.scrollTop+=S:this.win.scrollBy(0,S),s=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let o of this.state.facet(rO))o(t)}get themeClasses(){return oO+" "+(this.state.facet(lO)?rP:nP)+" "+this.state.facet(Ud)}updateAttrs(){let e=Ok(this,jA,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Ra)?"true":"false",class:"cm-content",style:`${Ze.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),Ok(this,Q6,t);let r=this.observer.ignore(()=>{let i=XS(this.contentDOM,this.contentAttrs,t),a=XS(this.dom,this.editorAttrs,e);return i||a});return this.editorAttrs=e,this.contentAttrs=t,r}showAnnouncements(e){let t=!0;for(let r of e)for(let i of r.effects)if(i.is(Le.announce)){t&&(this.announceDOM.textContent=""),t=!1;let a=this.announceDOM.appendChild(document.createElement("div"));a.textContent=i.value}}mountStyles(){this.styleModules=this.state.facet(t0);let e=this.state.facet(Le.cspNonce);Ds.mount(this.root,this.styleModules.concat(SB).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.plugin!=e)&&this.pluginMap.set(e,t=this.plugins.find(r=>r.plugin==e)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,r){return r2(this,e,JS(this,e,t,r))}moveByGroup(e,t){return r2(this,e,JS(this,e,t,r=>jz(this,e.head,r)))}visualLineSide(e,t){let r=this.bidiSpans(e),i=this.textDirectionAt(e.from),a=r[t?r.length-1:0];return we.cursor(a.side(t,i)+e.from,a.forward(!t,i)?1:-1)}moveToLineBoundary(e,t,r=!0){return Nz(this,e,t,r)}moveVertically(e,t,r){return r2(this,e,Zz(this,e,t,r))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let r=aO(this,e,t);return r&&r.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),aO(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let r=this.docView.coordsAt(e,t);if(!r||r.left==r.right)return r;let i=this.state.doc.lineAt(e),a=this.bidiSpans(i),s=a[zi.find(a,e-i.from,-1,t)];return Yh(r,s.dir==en.LTR==t>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(QA)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>AB)return TA(e.length);let t=this.textDirectionAt(e.from),r;for(let a of this.bidiCache)if(a.from==e.from&&a.dir==t&&(a.fresh||wA(a.isolates,r=YS(this,e))))return a.order;r||(r=YS(this,e));let i=sz(e.text,t,r);return this.bidiCache.push(new t1(e.from,e.to,t,r,!0,i)),i}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||Ze.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{yA(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){return Ld.of(new pc(typeof e=="number"?we.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,r=this.viewState.scrollAnchorAt(e);return Ld.of(new pc(we.cursor(r.from),"start","start",r.top-e,t,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return ur.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return ur.define(()=>({}),{eventObservers:e})}static theme(e,t){let r=Ds.newName(),i=[Ud.of(r),t0.of(cO(`.${r}`,e))];return t&&t.dark&&i.push(lO.of(!0)),i}static baseTheme(e){return rf.lowest(t0.of(cO("."+oO,e,iP)))}static findFromDOM(e){var t;let r=e.querySelector(".cm-content"),i=r&&Ut.get(r)||Ut.get(e);return((t=i==null?void 0:i.root)===null||t===void 0?void 0:t.view)||null}}Le.styleModule=t0;Le.inputHandler=$A;Le.clipboardInputFilter=$6;Le.clipboardOutputFilter=R6;Le.scrollHandler=_A;Le.focusChangeEffect=RA;Le.perLineTextDirection=QA;Le.exceptionSink=MA;Le.updateListener=rO;Le.editable=Ra;Le.mouseSelectionStyle=EA;Le.dragMovesSelection=CA;Le.clickAddsSelectionRange=PA;Le.decorations=L1;Le.blockWrappers=ZA;Le.outerDecorations=_6;Le.atomicRanges=lf;Le.bidiIsolatedRanges=DA;Le.scrollMargins=VA;Le.darkTheme=lO;Le.cspNonce=ze.define({combine:n=>n.length?n[0]:""});Le.contentAttributes=Q6;Le.editorAttributes=jA;Le.lineWrapping=Le.contentAttributes.of({class:"cm-lineWrapping"});Le.announce=mt.define();const AB=4096,gk={};class t1{constructor(e,t,r,i,a,s){this.from=e,this.to=t,this.dir=r,this.isolates=i,this.fresh=a,this.order=s}static update(e,t){if(t.empty&&!e.some(a=>a.fresh))return e;let r=[],i=e.length?e[e.length-1].dir:en.LTR;for(let a=Math.max(0,e.length-10);a<e.length;a++){let s=e[a];s.dir==i&&!t.touchesRange(s.from,s.to)&&r.push(new t1(t.mapPos(s.from,1),t.mapPos(s.to,-1),s.dir,s.isolates,!1,s.order))}return r}}function Ok(n,e,t){for(let r=n.state.facet(e),i=r.length-1;i>=0;i--){let a=r[i],s=typeof a=="function"?a(n):a;s&&C6(s,t)}return t}const PB=Ze.mac?"mac":Ze.windows?"win":Ze.linux?"linux":"key";function CB(n,e){const t=n.split(/-(?!$)/);let r=t[t.length-1];r=="Space"&&(r=" ");let i,a,s,o;for(let u=0;u<t.length-1;++u){const d=t[u];if(/^(cmd|meta|m)$/i.test(d))o=!0;else if(/^a(lt)?$/i.test(d))i=!0;else if(/^(c|ctrl|control)$/i.test(d))a=!0;else if(/^s(hift)?$/i.test(d))s=!0;else if(/^mod$/i.test(d))e=="mac"?o=!0:a=!0;else throw new Error("Unrecognized modifier name: "+d)}return i&&(r="Alt-"+r),a&&(r="Ctrl-"+r),o&&(r="Meta-"+r),s&&(r="Shift-"+r),r}function qd(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}const EB=rf.default(Le.domEventHandlers({keydown(n,e){return sP(aP(e.state),n,e,"editor")}})),D6=ze.define({enables:EB}),yk=new WeakMap;function aP(n){let e=n.facet(D6),t=yk.get(e);return t||yk.set(e,t=RB(e.reduce((r,i)=>r.concat(i),[]))),t}function MB(n,e,t){return sP(aP(n.state),e,n,t)}let Es=null;const $B=4e3;function RB(n,e=PB){let t=Object.create(null),r=Object.create(null),i=(s,o)=>{let u=r[s];if(u==null)r[s]=o;else if(u!=o)throw new Error("Key binding "+s+" is used both as a regular binding and as a multi-stroke prefix")},a=(s,o,u,d,m)=>{var p,O;let b=t[s]||(t[s]=Object.create(null)),S=o.split(/ (?!$)/).map(w=>CB(w,e));for(let w=1;w<S.length;w++){let A=S.slice(0,w).join(" ");i(A,!0),b[A]||(b[A]={preventDefault:!0,stopPropagation:!1,run:[E=>{let C=Es={view:E,prefix:A,scope:s};return setTimeout(()=>{Es==C&&(Es=null)},$B),!0}]})}let k=S.join(" ");i(k,!1);let T=b[k]||(b[k]={preventDefault:!1,stopPropagation:!1,run:((O=(p=b._any)===null||p===void 0?void 0:p.run)===null||O===void 0?void 0:O.slice())||[]});u&&T.run.push(u),d&&(T.preventDefault=!0),m&&(T.stopPropagation=!0)};for(let s of n){let o=s.scope?s.scope.split(" "):["editor"];if(s.any)for(let d of o){let m=t[d]||(t[d]=Object.create(null));m._any||(m._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:p}=s;for(let O in m)m[O].run.push(b=>p(b,uO))}let u=s[e]||s.key;if(u)for(let d of o)a(d,u,s.run,s.preventDefault,s.stopPropagation),s.shift&&a(d,"Shift-"+u,s.shift,s.preventDefault,s.stopPropagation)}return t}let uO=null;function sP(n,e,t,r){uO=e;let i=HL(e),a=Hl(i,0),s=nf(a)==i.length&&i!=" ",o="",u=!1,d=!1,m=!1;Es&&Es.view==t&&Es.scope==r&&(o=Es.prefix+" ",qA.indexOf(e.keyCode)<0&&(d=!0,Es=null));let p=new Set,O=T=>{if(T){for(let w of T.run)if(!p.has(w)&&(p.add(w),w(t)))return T.stopPropagation&&(m=!0),!0;T.preventDefault&&(T.stopPropagation&&(m=!0),d=!0)}return!1},b=n[r],S,k;return b&&(O(b[o+qd(i,e,!s)])?u=!0:s&&(e.altKey||e.metaKey||e.ctrlKey)&&!(Ze.windows&&e.ctrlKey&&e.altKey)&&!(Ze.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(S=Vs[e.keyCode])&&S!=i?(O(b[o+qd(S,e,!0)])||e.shiftKey&&(k=D0[e.keyCode])!=i&&k!=S&&O(b[o+qd(k,e,!1)]))&&(u=!0):s&&e.shiftKey&&O(b[o+qd(i,e,!0)])&&(u=!0),!u&&O(b._any)&&(u=!0)),d&&(u=!0),u&&m&&e.stopPropagation(),uO=null,u}function QB(){return NB}const _B=Je.line({class:"cm-activeLine"}),NB=ur.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let r of n.state.selection.ranges){let i=n.lineBlockAt(r.head);i.from>e&&(t.push(_B.range(i.from)),e=i.from)}return Je.set(t)}},{decorations:n=>n.decorations}),bk=ze.define({combine(n){let e,t;for(let r of n)e=e||r.topContainer,t=t||r.bottomContainer;return{topContainer:e,bottomContainer:t}}});function lP(n,e){let t=n.plugin(oP),r=t?t.specs.indexOf(e):-1;return r>-1?t.panels[r]:null}const oP=ur.fromClass(class{constructor(n){this.input=n.state.facet(n1),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(bk);this.top=new Yd(n,!0,e.topContainer),this.bottom=new Yd(n,!1,e.bottomContainer),this.top.sync(this.panels.filter(t=>t.top)),this.bottom.sync(this.panels.filter(t=>!t.top));for(let t of this.panels)t.dom.classList.add("cm-panel"),t.mount&&t.mount()}update(n){let e=n.state.facet(bk);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Yd(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Yd(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(n1);if(t!=this.input){let r=t.filter(u=>u),i=[],a=[],s=[],o=[];for(let u of r){let d=this.specs.indexOf(u),m;d<0?(m=u(n.view),o.push(m)):(m=this.panels[d],m.update&&m.update(n)),i.push(m),(m.top?a:s).push(m)}this.specs=r,this.panels=i,this.top.sync(a),this.bottom.sync(s);for(let u of o)u.dom.classList.add("cm-panel"),u.mount&&u.mount()}else for(let r of this.panels)r.update&&r.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>Le.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class Yd{constructor(e,t,r){this.view=e,this.top=t,this.container=r,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let t=this.container||this.view.dom;t.insertBefore(this.dom,this.top?t.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=xk(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=xk(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function xk(n){let e=n.nextSibling;return n.remove(),e}const n1=ze.define({enables:oP});function jB(n,e){let t,r=new Promise(s=>t=s),i=s=>ZB(s,e,t);n.state.field(s2,!1)?n.dispatch({effects:cP.of(i)}):n.dispatch({effects:mt.appendConfig.of(s2.init(()=>[i]))});let a=uP.of(i);return{close:a,result:r.then(s=>((n.win.queueMicrotask||(u=>n.win.setTimeout(u,10)))(()=>{n.state.field(s2).indexOf(i)>-1&&n.dispatch({effects:a})}),s))}}const s2=_r.define({create(){return[]},update(n,e){for(let t of e.effects)t.is(cP)?n=[t.value].concat(n):t.is(uP)&&(n=n.filter(r=>r!=t.value));return n},provide:n=>n1.computeN([n],e=>e.field(n))}),cP=mt.define(),uP=mt.define();function ZB(n,e,t){let r=e.content?e.content(n,()=>s(null)):null;if(!r){if(r=On("form"),e.input){let o=On("input",e.input);/^(text|password|number|email|tel|url)$/.test(o.type)&&o.classList.add("cm-textfield"),o.name||(o.name="input"),r.appendChild(On("label",(e.label||"")+": ",o))}else r.appendChild(document.createTextNode(e.label||""));r.appendChild(document.createTextNode(" ")),r.appendChild(On("button",{class:"cm-button",type:"submit"},e.submitLabel||"OK"))}let i=r.nodeName=="FORM"?[r]:r.querySelectorAll("form");for(let o=0;o<i.length;o++){let u=i[o];u.addEventListener("keydown",d=>{d.keyCode==27?(d.preventDefault(),s(null)):d.keyCode==13&&(d.preventDefault(),s(u))}),u.addEventListener("submit",d=>{d.preventDefault(),s(u)})}let a=On("div",r,On("button",{onclick:()=>s(null),"aria-label":n.state.phrase("close"),class:"cm-dialog-close",type:"button"},["×"]));e.class&&(a.className=e.class),a.classList.add("cm-dialog");function s(o){a.contains(a.ownerDocument.activeElement)&&n.focus(),t(o)}return{dom:a,top:e.top,mount:()=>{if(e.focus){let o;typeof e.focus=="string"?o=r.querySelector(e.focus):o=r.querySelector("input")||r.querySelector("button"),o&&"select"in o?o.select():o&&"focus"in o&&o.focus()}}}}class Fa extends Zs{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}Fa.prototype.elementClass="";Fa.prototype.toDOM=void 0;Fa.prototype.mapMode=jn.TrackBefore;Fa.prototype.startSide=Fa.prototype.endSide=-1;Fa.prototype.point=!0;const Th=ze.define(),DB=ze.define(),VB={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>lt.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},O0=ze.define();function IB(n){return[fP(),O0.of({...VB,...n})]}const Sk=ze.define({combine:n=>n.some(e=>e)});function fP(n){return[LB]}const LB=ur.fromClass(class{constructor(n){this.view=n,this.domAfter=null,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=n.state.facet(O0).map(e=>new vk(n,e)),this.fixed=!n.state.facet(Sk);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,r=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(r<(t.to-t.from)*.8)}if(n.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(Sk)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=lt.iter(this.view.state.facet(Th),this.view.viewport.from),r=[],i=this.gutters.map(a=>new zB(a,this.view.viewport,-this.view.documentPadding.top));for(let a of this.view.viewportLineBlocks)if(r.length&&(r=[]),Array.isArray(a.type)){let s=!0;for(let o of a.type)if(o.type==cr.Text&&s){fO(t,r,o.from);for(let u of i)u.line(this.view,o,r);s=!1}else if(o.widget)for(let u of i)u.widget(this.view,o)}else if(a.type==cr.Text){fO(t,r,a.from);for(let s of i)s.line(this.view,a,r)}else if(a.widget)for(let s of i)s.widget(this.view,a);for(let a of i)a.finish();n&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(n){let e=n.startState.facet(O0),t=n.state.facet(O0),r=n.docChanged||n.heightChanged||n.viewportChanged||!lt.eq(n.startState.facet(Th),n.state.facet(Th),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let i of this.gutters)i.update(n)&&(r=!0);else{r=!0;let i=[];for(let a of t){let s=e.indexOf(a);s<0?i.push(new vk(this.view,a)):(this.gutters[s].update(n),i.push(this.gutters[s]))}for(let a of this.gutters)a.dom.remove(),i.indexOf(a)<0&&a.destroy();for(let a of i)a.config.side=="after"?this.getDOMAfter().appendChild(a.dom):this.dom.appendChild(a.dom);this.gutters=i}return r}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>Le.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let r=t.dom.offsetWidth*e.scaleX,i=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==en.LTR?{left:r,right:i}:{right:r,left:i}})});function kk(n){return Array.isArray(n)?n:[n]}function fO(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class zB{constructor(e,t,r){this.gutter=e,this.height=r,this.i=0,this.cursor=lt.iter(e.markers,t.from)}addElement(e,t,r){let{gutter:i}=this,a=(t.top-this.height)/e.scaleY,s=t.height/e.scaleY;if(this.i==i.elements.length){let o=new dP(e,s,a,r);i.elements.push(o),i.dom.appendChild(o.dom)}else i.elements[this.i].update(e,s,a,r);this.height=t.bottom,this.i++}line(e,t,r){let i=[];fO(this.cursor,i,t.from),r.length&&(i=i.concat(r));let a=this.gutter.config.lineMarker(e,t,i);a&&i.unshift(a);let s=this.gutter;i.length==0&&!s.config.renderEmptyElements||this.addElement(e,t,i)}widget(e,t){let r=this.gutter.config.widgetMarker(e,t.widget,t),i=r?[r]:null;for(let a of e.state.facet(DB)){let s=a(e,t.widget,t);s&&(i||(i=[])).push(s)}i&&this.addElement(e,t,i)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class vk{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let r in t.domEventHandlers)this.dom.addEventListener(r,i=>{let a=i.target,s;if(a!=this.dom&&this.dom.contains(a)){for(;a.parentNode!=this.dom;)a=a.parentNode;let u=a.getBoundingClientRect();s=(u.top+u.bottom)/2}else s=i.clientY;let o=e.lineBlockAtHeight(s-e.documentTop);t.domEventHandlers[r](e,o,i)&&i.preventDefault()});this.markers=kk(t.markers(e)),t.initialSpacer&&(this.spacer=new dP(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=kk(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let i=this.config.updateSpacer(this.spacer.markers[0],e);i!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[i])}let r=e.view.viewport;return!lt.eq(this.markers,t,r.from,r.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class dP{constructor(e,t,r,i){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,r,i)}update(e,t,r,i){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=r&&(this.dom.style.marginTop=(this.above=r)?r+"px":""),BB(this.markers,i)||this.setMarkers(e,i)}setMarkers(e,t){let r="cm-gutterElement",i=this.dom.firstChild;for(let a=0,s=0;;){let o=s,u=a<t.length?t[a++]:null,d=!1;if(u){let m=u.elementClass;m&&(r+=" "+m);for(let p=s;p<this.markers.length;p++)if(this.markers[p].compare(u)){o=p,d=!0;break}}else o=this.markers.length;for(;s<o;){let m=this.markers[s++];if(m.toDOM){m.destroy(i);let p=i.nextSibling;i.remove(),i=p}}if(!u)break;u.toDOM&&(d?i=i.nextSibling:this.dom.insertBefore(u.toDOM(e),i)),d&&s++}this.dom.className=r,this.markers=t}destroy(){this.setMarkers(null,[])}}function BB(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}const HB=ze.define(),FB=ze.define(),rc=ze.define({combine(n){return Zc(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let r=Object.assign({},e);for(let i in t){let a=r[i],s=t[i];r[i]=a?(o,u,d)=>a(o,u,d)||s(o,u,d):s}return r}})}});class l2 extends Fa{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function o2(n,e){return n.state.facet(rc).formatNumber(e,n.state)}const XB=O0.compute([rc],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(HB)},lineMarker(e,t,r){return r.some(i=>i.toDOM)?null:new l2(o2(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,r)=>{for(let i of e.state.facet(FB)){let a=i(e,t,r);if(a)return a}return null},lineMarkerChange:e=>e.startState.facet(rc)!=e.state.facet(rc),initialSpacer(e){return new l2(o2(e,wk(e.state.doc.lines)))},updateSpacer(e,t){let r=o2(t.view,wk(t.view.state.doc.lines));return r==e.number?e:new l2(r)},domEventHandlers:n.facet(rc).domEventHandlers,side:"before"}));function UB(n={}){return[rc.of(n),fP(),XB]}function wk(n){let e=9;for(;e<n;)e=e*10+9;return e}const qB=new class extends Fa{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},YB=Th.compute(["selection"],n=>{let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.head).from;i>t&&(t=i,e.push(qB.range(i)))}return lt.of(e)});function WB(){return YB}const hP=1024;let GB=0;class ei{constructor(e,t){this.from=e,this.to=t}}class rt{constructor(e={}){this.id=GB++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=Xn.match(e)),t=>{let r=e(t);return r===void 0?null:[this,r]}}}rt.closedBy=new rt({deserialize:n=>n.split(" ")});rt.openedBy=new rt({deserialize:n=>n.split(" ")});rt.group=new rt({deserialize:n=>n.split(" ")});rt.isolate=new rt({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});rt.contextHash=new rt({perNode:!0});rt.lookAhead=new rt({perNode:!0});rt.mounted=new rt({perNode:!0});class gc{constructor(e,t,r,i=!1){this.tree=e,this.overlay=t,this.parser=r,this.bracketed=i}static get(e){return e&&e.props&&e.props[rt.mounted.id]}}const KB=Object.create(null);class Xn{constructor(e,t,r,i=0){this.name=e,this.props=t,this.id=r,this.flags=i}static define(e){let t=e.props&&e.props.length?Object.create(null):KB,r=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),i=new Xn(e.name||"",t,e.id,r);if(e.props){for(let a of e.props)if(Array.isArray(a)||(a=a(i)),a){if(a[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[a[0].id]=a[1]}}return i}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(rt.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let r in e)for(let i of r.split(" "))t[i]=e[r];return r=>{for(let i=r.prop(rt.group),a=-1;a<(i?i.length:0);a++){let s=t[a<0?r.name:i[a]];if(s)return s}}}}Xn.none=new Xn("",Object.create(null),0,8);class V6{constructor(e){this.types=e;for(let t=0;t<e.length;t++)if(e[t].id!=t)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let t=[];for(let r of this.types){let i=null;for(let a of e){let s=a(r);if(s){i||(i=Object.assign({},r.props));let o=s[1],u=s[0];u.combine&&u.id in i&&(o=u.combine(i[u.id],o)),i[u.id]=o}}t.push(i?new Xn(r.name,i,r.id,r.flags):r)}return new V6(t)}}const Wd=new WeakMap,Tk=new WeakMap;var bt;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays",n[n.EnterBracketed=16]="EnterBracketed"})(bt||(bt={}));class It{constructor(e,t,r,i,a){if(this.type=e,this.children=t,this.positions=r,this.length=i,this.props=null,a&&a.length){this.props=Object.create(null);for(let[s,o]of a)this.props[typeof s=="number"?s:s.id]=o}}toString(){let e=gc.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let r of this.children){let i=r.toString();i&&(t&&(t+=","),t+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new r1(this.topNode,e)}cursorAt(e,t=0,r=0){let i=Wd.get(this)||this.topNode,a=new r1(i);return a.moveTo(e,t),Wd.set(this,a._tree),a}get topNode(){return new Zn(this,0,0,null)}resolve(e,t=0){let r=z0(Wd.get(this)||this.topNode,e,t,!1);return Wd.set(this,r),r}resolveInner(e,t=0){let r=z0(Tk.get(this)||this.topNode,e,t,!0);return Tk.set(this,r),r}resolveStack(e,t=0){return tH(this,e,t)}iterate(e){let{enter:t,leave:r,from:i=0,to:a=this.length}=e,s=e.mode||0,o=(s&bt.IncludeAnonymous)>0;for(let u=this.cursor(s|bt.IncludeAnonymous);;){let d=!1;if(u.from<=a&&u.to>=i&&(!o&&u.type.isAnonymous||t(u)!==!1)){if(u.firstChild())continue;d=!0}for(;d&&r&&(o||!u.type.isAnonymous)&&r(u),!u.nextSibling();){if(!u.parent())return;d=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:z6(Xn.none,this.children,this.positions,0,this.children.length,0,this.length,(t,r,i)=>new It(this.type,t,r,i,this.propValues),e.makeTree||((t,r,i)=>new It(Xn.none,t,r,i)))}static build(e){return nH(e)}}It.empty=new It(Xn.none,[],[],0);class I6{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new I6(this.buffer,this.index)}}class Ls{constructor(e,t,r){this.buffer=e,this.length=t,this.set=r}get type(){return Xn.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],r=this.buffer[e+3],i=this.set.types[t],a=i.name;if(/\W/.test(a)&&!i.isError&&(a=JSON.stringify(a)),e+=4,r==e)return a;let s=[];for(;e<r;)s.push(this.childString(e)),e=this.buffer[e+3];return a+"("+s.join(",")+")"}findChild(e,t,r,i,a){let{buffer:s}=this,o=-1;for(let u=e;u!=t&&!(mP(a,i,s[u+1],s[u+2])&&(o=u,r>0));u=s[u+3]);return o}slice(e,t,r){let i=this.buffer,a=new Uint16Array(t-e),s=0;for(let o=e,u=0;o<t;){a[u++]=i[o++],a[u++]=i[o++]-r;let d=a[u++]=i[o++]-r;a[u++]=i[o++]-e,s=Math.max(s,d)}return new Ls(a,s,this.set)}}function mP(n,e,t,r){switch(n){case-2:return t<e;case-1:return r>=e&&t<e;case 0:return t<e&&r>e;case 1:return t<=e&&r>e;case 2:return r>e;case 4:return!0}}function z0(n,e,t,r){for(var i;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let s=!r&&n instanceof Zn&&n.index<0?null:n.parent;if(!s)return n;n=s}let a=r?0:bt.IgnoreOverlays;if(r)for(let s=n,o=s.parent;o;s=o,o=s.parent)s instanceof Zn&&s.index<0&&((i=o.enter(e,t,a))===null||i===void 0?void 0:i.from)!=s.from&&(n=o);for(;;){let s=n.enter(e,t,a);if(!s)return n;n=s}}class pP{cursor(e=0){return new r1(this,e)}getChild(e,t=null,r=null){let i=Ak(this,e,t,r);return i.length?i[0]:null}getChildren(e,t=null,r=null){return Ak(this,e,t,r)}resolve(e,t=0){return z0(this,e,t,!1)}resolveInner(e,t=0){return z0(this,e,t,!0)}matchContext(e){return dO(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),r=this;for(;t;){let i=t.lastChild;if(!i||i.to!=t.to)break;i.type.isError&&i.from==i.to?(r=t,t=i.prevSibling):t=i}return r}get node(){return this}get next(){return this.parent}}class Zn extends pP{constructor(e,t,r,i){super(),this._tree=e,this.from=t,this.index=r,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,r,i,a=0){for(let s=this;;){for(let{children:o,positions:u}=s._tree,d=t>0?o.length:-1;e!=d;e+=t){let m=o[e],p=u[e]+s.from,O;if(!(!(a&bt.EnterBracketed&&m instanceof It&&(O=gc.get(m))&&!O.overlay&&O.bracketed&&r>=p&&r<=p+m.length)&&!mP(i,r,p,p+m.length))){if(m instanceof Ls){if(a&bt.ExcludeBuffers)continue;let b=m.findChild(0,m.buffer.length,t,r-p,i);if(b>-1)return new Hi(new JB(s,m,e,p),null,b)}else if(a&bt.IncludeAnonymous||!m.type.isAnonymous||L6(m)){let b;if(!(a&bt.IgnoreMounts)&&(b=gc.get(m))&&!b.overlay)return new Zn(b.tree,p,e,s);let S=new Zn(m,p,e,s);return a&bt.IncludeAnonymous||!S.type.isAnonymous?S:S.nextChild(t<0?m.children.length-1:0,t,r,i,a)}}}if(a&bt.IncludeAnonymous||!s.type.isAnonymous||(s.index>=0?e=s.index+t:e=t<0?-1:s._parent._tree.children.length,s=s._parent,!s))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,r=0){let i;if(!(r&bt.IgnoreOverlays)&&(i=gc.get(this._tree))&&i.overlay){let a=e-this.from,s=r&bt.EnterBracketed&&i.bracketed;for(let{from:o,to:u}of i.overlay)if((t>0||s?o<=a:o<a)&&(t<0||s?u>=a:u>a))return new Zn(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,r)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function Ak(n,e,t,r){let i=n.cursor(),a=[];if(!i.firstChild())return a;if(t!=null){for(let s=!1;!s;)if(s=i.type.is(t),!i.nextSibling())return a}for(;;){if(r!=null&&i.type.is(r))return a;if(i.type.is(e)&&a.push(i.node),!i.nextSibling())return r==null?a:[]}}function dO(n,e,t=e.length-1){for(let r=n;t>=0;r=r.parent){if(!r)return!1;if(!r.type.isAnonymous){if(e[t]&&e[t]!=r.name)return!1;t--}}return!0}class JB{constructor(e,t,r,i){this.parent=e,this.buffer=t,this.index=r,this.start=i}}class Hi extends pP{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,r){super(),this.context=e,this._parent=t,this.index=r,this.type=e.buffer.set.types[e.buffer.buffer[r]]}child(e,t,r){let{buffer:i}=this.context,a=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.context.start,r);return a<0?null:new Hi(this.context,this,a)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,r=0){if(r&bt.ExcludeBuffers)return null;let{buffer:i}=this.context,a=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return a<0?null:new Hi(this.context,this,a)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new Hi(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new Hi(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:r}=this.context,i=this.index+4,a=r.buffer[this.index+3];if(a>i){let s=r.buffer[this.index+1];e.push(r.slice(i,a,s)),t.push(0)}return new It(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function gP(n){if(!n.length)return null;let e=0,t=n[0];for(let a=1;a<n.length;a++){let s=n[a];(s.from>t.from||s.to<t.to)&&(t=s,e=a)}let r=t instanceof Zn&&t.index<0?null:t.parent,i=n.slice();return r?i[e]=r:i.splice(e,1),new eH(i,t)}class eH{constructor(e,t){this.heads=e,this.node=t}get next(){return gP(this.heads)}}function tH(n,e,t){let r=n.resolveInner(e,t),i=null;for(let a=r instanceof Zn?r:r.context.parent;a;a=a.parent)if(a.index<0){let s=a.parent;(i||(i=[r])).push(s.resolve(e,t)),a=s}else{let s=gc.get(a.tree);if(s&&s.overlay&&s.overlay[0].from<=e&&s.overlay[s.overlay.length-1].to>=e){let o=new Zn(s.tree,s.overlay[0].from+a.from,-1,a);(i||(i=[r])).push(z0(o,e,t,!1))}}return i?gP(i):r}class r1{get name(){return this.type.name}constructor(e,t=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=t&~bt.EnterBracketed,e instanceof Zn)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let r=e._parent;r;r=r._parent)this.stack.unshift(r.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:r,buffer:i}=this.buffer;return this.type=t||i.set.types[i.buffer[e]],this.from=r+i.buffer[e+1],this.to=r+i.buffer[e+2],!0}yield(e){return e?e instanceof Zn?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,r){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,r,this.mode));let{buffer:i}=this.buffer,a=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.buffer.start,r);return a<0?!1:(this.stack.push(this.index),this.yieldBuf(a))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,r=this.mode){return this.buffer?r&bt.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,r))}parent(){if(!this.buffer)return this.yieldNode(this.mode&bt.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&bt.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,r=this.stack.length-1;if(e<0){let i=r<0?0:this.stack[r]+4;if(this.index!=i)return this.yieldBuf(t.findChild(i,this.index,-1,0,4))}else{let i=t.buffer[this.index+3];if(i<(r<0?t.buffer.length:t.buffer[this.stack[r]+3]))return this.yieldBuf(i)}return r<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,r,{buffer:i}=this;if(i){if(e>0){if(this.index<i.buffer.buffer.length)return!1}else for(let a=0;a<this.index;a++)if(i.buffer.buffer[a+3]<this.index)return!1;({index:t,parent:r}=i)}else({index:t,_parent:r}=this._tree);for(;r;{index:t,_parent:r}=r)if(t>-1)for(let a=t+e,s=e<0?-1:r._tree.children.length;a!=s;a+=e){let o=r._tree.children[a];if(this.mode&bt.IncludeAnonymous||o instanceof Ls||!o.type.isAnonymous||L6(o))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,r=0;if(e&&e.context==this.buffer)e:for(let i=this.index,a=this.stack.length;a>=0;){for(let s=e;s;s=s._parent)if(s.index==i){if(i==this.index)return s;t=s,r=a+1;break e}i=this.stack[--a]}for(let i=r;i<this.stack.length;i++)t=new Hi(this.buffer,t,this.stack[i]);return this.bufferNode=new Hi(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let r=0;;){let i=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){r++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&t&&t(this),i=this.type.isAnonymous,!r)return;if(this.nextSibling())break;this.parent(),r--,i=!0}}}matchContext(e){if(!this.buffer)return dO(this.node.parent,e);let{buffer:t}=this.buffer,{types:r}=t.set;for(let i=e.length-1,a=this.stack.length-1;i>=0;a--){if(a<0)return dO(this._tree,e,i);let s=r[t.buffer[this.stack[a]]];if(!s.isAnonymous){if(e[i]&&e[i]!=s.name)return!1;i--}}return!0}}function L6(n){return n.children.some(e=>e instanceof Ls||!e.type.isAnonymous||L6(e))}function nH(n){var e;let{buffer:t,nodeSet:r,maxBufferLength:i=hP,reused:a=[],minRepeatType:s=r.types.length}=n,o=Array.isArray(t)?new I6(t,t.length):t,u=r.types,d=0,m=0;function p(P,$,M,R,N,Z){let{id:D,start:I,end:U,size:K}=o,q=m,L=d;if(K<0)if(o.next(),K==-1){let _=a[D];M.push(_),R.push(I-P);return}else if(K==-3){d=D;return}else if(K==-4){m=D;return}else throw new RangeError(`Unrecognized record size: ${K}`);let W=u[D],ee,X,B=I-P;if(U-I<=i&&(X=T(o.pos-$,N))){let _=new Uint16Array(X.size-X.skip),j=o.pos-X.size,H=_.length;for(;o.pos>j;)H=w(X.start,_,H);ee=new Ls(_,U-X.start,r),B=X.start-P}else{let _=o.pos-K;o.next();let j=[],H=[],F=D>=s?D:-1,Y=0,ae=U;for(;o.pos>_;)F>=0&&o.id==F&&o.size>=0?(o.end<=ae-i&&(S(j,H,I,Y,o.end,ae,F,q,L),Y=j.length,ae=o.end),o.next()):Z>2500?O(I,_,j,H):p(I,_,j,H,F,Z+1);if(F>=0&&Y>0&&Y<j.length&&S(j,H,I,Y,I,ae,F,q,L),j.reverse(),H.reverse(),F>-1&&Y>0){let ie=b(W,L);ee=z6(W,j,H,0,j.length,0,U-I,ie,ie)}else ee=k(W,j,H,U-I,q-U,L)}M.push(ee),R.push(B)}function O(P,$,M,R){let N=[],Z=0,D=-1;for(;o.pos>$;){let{id:I,start:U,end:K,size:q}=o;if(q>4)o.next();else{if(D>-1&&U<D)break;D<0&&(D=K-i),N.push(I,U,K),Z++,o.next()}}if(Z){let I=new Uint16Array(Z*4),U=N[N.length-2];for(let K=N.length-3,q=0;K>=0;K-=3)I[q++]=N[K],I[q++]=N[K+1]-U,I[q++]=N[K+2]-U,I[q++]=q;M.push(new Ls(I,N[2]-U,r)),R.push(U-P)}}function b(P,$){return(M,R,N)=>{let Z=0,D=M.length-1,I,U;if(D>=0&&(I=M[D])instanceof It){if(!D&&I.type==P&&I.length==N)return I;(U=I.prop(rt.lookAhead))&&(Z=R[D]+I.length+U)}return k(P,M,R,N,Z,$)}}function S(P,$,M,R,N,Z,D,I,U){let K=[],q=[];for(;P.length>R;)K.push(P.pop()),q.push($.pop()+M-N);P.push(k(r.types[D],K,q,Z-N,I-Z,U)),$.push(N-M)}function k(P,$,M,R,N,Z,D){if(Z){let I=[rt.contextHash,Z];D=D?[I].concat(D):[I]}if(N>25){let I=[rt.lookAhead,N];D=D?[I].concat(D):[I]}return new It(P,$,M,R,D)}function T(P,$){let M=o.fork(),R=0,N=0,Z=0,D=M.end-i,I={size:0,start:0,skip:0};e:for(let U=M.pos-P;M.pos>U;){let K=M.size;if(M.id==$&&K>=0){I.size=R,I.start=N,I.skip=Z,Z+=4,R+=4,M.next();continue}let q=M.pos-K;if(K<0||q<U||M.start<D)break;let L=M.id>=s?4:0,W=M.start;for(M.next();M.pos>q;){if(M.size<0)if(M.size==-3||M.size==-4)L+=4;else break e;else M.id>=s&&(L+=4);M.next()}N=W,R+=K,Z+=L}return($<0||R==P)&&(I.size=R,I.start=N,I.skip=Z),I.size>4?I:void 0}function w(P,$,M){let{id:R,start:N,end:Z,size:D}=o;if(o.next(),D>=0&&R<s){let I=M;if(D>4){let U=o.pos-(D-4);for(;o.pos>U;)M=w(P,$,M)}$[--M]=I,$[--M]=Z-P,$[--M]=N-P,$[--M]=R}else D==-3?d=R:D==-4&&(m=R);return M}let A=[],E=[];for(;o.pos>0;)p(n.start||0,n.bufferStart||0,A,E,-1,0);let C=(e=n.length)!==null&&e!==void 0?e:A.length?E[0]+A[0].length:0;return new It(u[n.topID],A.reverse(),E.reverse(),C)}const Pk=new WeakMap;function Ah(n,e){if(!n.isAnonymous||e instanceof Ls||e.type!=n)return 1;let t=Pk.get(e);if(t==null){t=1;for(let r of e.children){if(r.type!=n||!(r instanceof It)){t=1;break}t+=Ah(n,r)}Pk.set(e,t)}return t}function z6(n,e,t,r,i,a,s,o,u){let d=0;for(let S=r;S<i;S++)d+=Ah(n,e[S]);let m=Math.ceil(d*1.5/8),p=[],O=[];function b(S,k,T,w,A){for(let E=T;E<w;){let C=E,P=k[E],$=Ah(n,S[E]);for(E++;E<w;E++){let M=Ah(n,S[E]);if($+M>=m)break;$+=M}if(E==C+1){if($>m){let M=S[C];b(M.children,M.positions,0,M.children.length,k[C]+A);continue}p.push(S[C])}else{let M=k[E-1]+S[E-1].length-P;p.push(z6(n,S,k,C,E,P,M,null,u))}O.push(P+A-a)}}return b(e,t,r,i,0),(o||u)(p,O,s)}class OP{constructor(){this.map=new WeakMap}setBuffer(e,t,r){let i=this.map.get(e);i||this.map.set(e,i=new Map),i.set(t,r)}getBuffer(e,t){let r=this.map.get(e);return r&&r.get(t)}set(e,t){e instanceof Hi?this.setBuffer(e.context.buffer,e.index,t):e instanceof Zn&&this.map.set(e.tree,t)}get(e){return e instanceof Hi?this.getBuffer(e.context.buffer,e.index):e instanceof Zn?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class Za{constructor(e,t,r,i,a=!1,s=!1){this.from=e,this.to=t,this.tree=r,this.offset=i,this.open=(a?1:0)|(s?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],r=!1){let i=[new Za(0,e.length,e,0,!1,r)];for(let a of t)a.to>e.length&&i.push(a);return i}static applyChanges(e,t,r=128){if(!t.length)return e;let i=[],a=1,s=e.length?e[0]:null;for(let o=0,u=0,d=0;;o++){let m=o<t.length?t[o]:null,p=m?m.fromA:1e9;if(p-u>=r)for(;s&&s.from<p;){let O=s;if(u>=O.from||p<=O.to||d){let b=Math.max(O.from,u)-d,S=Math.min(O.to,p)-d;O=b>=S?null:new Za(b,S,O.tree,O.offset+d,o>0,!!m)}if(O&&i.push(O),s.to>p)break;s=a<e.length?e[a++]:null}if(!m)break;u=m.toA,d=m.toA-m.toB}return i}}class yP{startParse(e,t,r){return typeof e=="string"&&(e=new rH(e)),r=r?r.length?r.map(i=>new ei(i.from,i.to)):[new ei(0,0)]:[new ei(0,e.length)],this.createParse(e,t||[],r)}parse(e,t,r){let i=this.startParse(e,t,r);for(;;){let a=i.advance();if(a)return a}}}class rH{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function iH(n){return(e,t,r,i)=>new sH(e,n,t,r,i)}class Ck{constructor(e,t,r,i,a,s){this.parser=e,this.parse=t,this.overlay=r,this.bracketed=i,this.target=a,this.from=s}}function Ek(n){if(!n.length||n.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(n))}class aH{constructor(e,t,r,i,a,s,o,u){this.parser=e,this.predicate=t,this.mounts=r,this.index=i,this.start=a,this.bracketed=s,this.target=o,this.prev=u,this.depth=0,this.ranges=[]}}const hO=new rt({perNode:!0});class sH{constructor(e,t,r,i,a){this.nest=t,this.input=r,this.fragments=i,this.ranges=a,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let r=this.baseParse.advance();if(!r)return null;if(this.baseParse=null,this.baseTree=r,this.startInner(),this.stoppedAt!=null)for(let i of this.inner)i.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let r=this.baseTree;return this.stoppedAt!=null&&(r=new It(r.type,r.children,r.positions,r.length,r.propValues.concat([[hO,this.stoppedAt]]))),r}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let r=Object.assign(Object.create(null),e.target.props);r[rt.mounted.id]=new gc(t,e.overlay,e.parser,e.bracketed),e.target.props=r}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].from<e&&(e=Math.min(e,this.inner[t].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].parse.stopAt(e)}startInner(){let e=new cH(this.fragments),t=null,r=null,i=new r1(new Zn(this.baseTree,this.ranges[0].from,0,null),bt.IncludeAnonymous|bt.IgnoreMounts);e:for(let a,s;;){let o=!0,u;if(this.stoppedAt!=null&&i.from>=this.stoppedAt)o=!1;else if(e.hasNode(i)){if(t){let d=t.mounts.find(m=>m.frag.from<=i.from&&m.frag.to>=i.to&&m.mount.overlay);if(d)for(let m of d.mount.overlay){let p=m.from+d.pos,O=m.to+d.pos;p>=i.from&&O<=i.to&&!t.ranges.some(b=>b.from<O&&b.to>p)&&t.ranges.push({from:p,to:O})}}o=!1}else if(r&&(s=lH(r.ranges,i.from,i.to)))o=s!=2;else if(!i.type.isAnonymous&&(a=this.nest(i,this.input))&&(i.from<i.to||!a.overlay)){i.tree||(oH(i),t&&t.depth++,r&&r.depth++);let d=e.findMounts(i.from,a.parser);if(typeof a.overlay=="function")t=new aH(a.parser,a.overlay,d,this.inner.length,i.from,!!a.bracketed,i.tree,t);else{let m=Rk(this.ranges,a.overlay||(i.from<i.to?[new ei(i.from,i.to)]:[]));m.length&&Ek(m),(m.length||!a.overlay)&&this.inner.push(new Ck(a.parser,m.length?a.parser.startParse(this.input,Qk(d,m),m):a.parser.startParse(""),a.overlay?a.overlay.map(p=>new ei(p.from-i.from,p.to-i.from)):null,!!a.bracketed,i.tree,m.length?m[0].from:i.from)),a.overlay?m.length&&(r={ranges:m,depth:0,prev:r}):o=!1}}else if(t&&(u=t.predicate(i))&&(u===!0&&(u=new ei(i.from,i.to)),u.from<u.to)){let d=t.ranges.length-1;d>=0&&t.ranges[d].to==u.from?t.ranges[d]={from:t.ranges[d].from,to:u.to}:t.ranges.push(u)}if(o&&i.firstChild())t&&t.depth++,r&&r.depth++;else for(;!i.nextSibling();){if(!i.parent())break e;if(t&&!--t.depth){let d=Rk(this.ranges,t.ranges);d.length&&(Ek(d),this.inner.splice(t.index,0,new Ck(t.parser,t.parser.startParse(this.input,Qk(t.mounts,d),d),t.ranges.map(m=>new ei(m.from-t.start,m.to-t.start)),t.bracketed,t.target,d[0].from))),t=t.prev}r&&!--r.depth&&(r=r.prev)}}}}function lH(n,e,t){for(let r of n){if(r.from>=t)break;if(r.to>e)return r.from<=e&&r.to>=t?2:1}return 0}function Mk(n,e,t,r,i,a){if(e<t){let s=n.buffer[e+1];r.push(n.slice(e,t,s)),i.push(s-a)}}function oH(n){let{node:e}=n,t=[],r=e.context.buffer;do t.push(n.index),n.parent();while(!n.tree);let i=n.tree,a=i.children.indexOf(r),s=i.children[a],o=s.buffer,u=[a];function d(m,p,O,b,S,k){let T=t[k],w=[],A=[];Mk(s,m,T,w,A,b);let E=o[T+1],C=o[T+2];u.push(w.length);let P=k?d(T+4,o[T+3],s.set.types[o[T]],E,C-E,k-1):e.toTree();return w.push(P),A.push(E-b),Mk(s,o[T+3],p,w,A,b),new It(O,w,A,S)}i.children[a]=d(0,o.length,Xn.none,0,s.length,t.length-1);for(let m of u){let p=n.tree.children[m],O=n.tree.positions[m];n.yield(new Zn(p,O+n.from,m,n._tree))}}class $k{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(bt.IncludeAnonymous|bt.IgnoreMounts)}moveTo(e){let{cursor:t}=this,r=e-this.offset;for(;!this.done&&t.from<r;)if(!(t.to>=e&&t.enter(r,1,bt.IgnoreOverlays|bt.ExcludeBuffers)))if(t.to<=e)t.next(!1)||(this.done=!0);else break}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof It)t=t.children[0];else break}return!1}}let cH=class{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let r=this.curFrag=e[0];this.curTo=(t=r.tree.prop(hO))!==null&&t!==void 0?t:r.to,this.inner=new $k(r.tree,-r.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(hO))!==null&&e!==void 0?e:t.to,this.inner=new $k(t.tree,-t.offset)}}findMounts(e,t){var r;let i=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let a=this.inner.cursor.node;a;a=a.parent){let s=(r=a.tree)===null||r===void 0?void 0:r.prop(rt.mounted);if(s&&s.parser==t)for(let o=this.fragI;o<this.fragments.length;o++){let u=this.fragments[o];if(u.from>=a.to)break;u.tree==this.curFrag.tree&&i.push({frag:u,pos:a.from-u.offset,mount:s})}}}return i}};function Rk(n,e){let t=null,r=e;for(let i=1,a=0;i<n.length;i++){let s=n[i-1].to,o=n[i].from;for(;a<r.length;a++){let u=r[a];if(u.from>=o)break;u.to<=s||(t||(r=t=e.slice()),u.from<s?(t[a]=new ei(u.from,s),u.to>o&&t.splice(a+1,0,new ei(o,u.to))):u.to>o?t[a--]=new ei(o,u.to):t.splice(a--,1))}}return r}function uH(n,e,t,r){let i=0,a=0,s=!1,o=!1,u=-1e9,d=[];for(;;){let m=i==n.length?1e9:s?n[i].to:n[i].from,p=a==e.length?1e9:o?e[a].to:e[a].from;if(s!=o){let O=Math.max(u,t),b=Math.min(m,p,r);O<b&&d.push(new ei(O,b))}if(u=Math.min(m,p),u==1e9)break;m==u&&(s?(s=!1,i++):s=!0),p==u&&(o?(o=!1,a++):o=!0)}return d}function Qk(n,e){let t=[];for(let{pos:r,mount:i,frag:a}of n){let s=r+(i.overlay?i.overlay[0].from:0),o=s+i.tree.length,u=Math.max(a.from,s),d=Math.min(a.to,o);if(i.overlay){let m=i.overlay.map(O=>new ei(O.from+r,O.to+r)),p=uH(e,m,u,d);for(let O=0,b=u;;O++){let S=O==p.length,k=S?d:p[O].from;if(k>b&&t.push(new Za(b,k,i.tree,-s,a.from>=b||a.openStart,a.to<=k||a.openEnd)),S)break;b=p[O].to}}else t.push(new Za(u,d,i.tree,-s,a.from>=s||a.openStart,a.to<=o||a.openEnd))}return t}let fH=0;class Gr{constructor(e,t,r,i){this.name=e,this.set=t,this.base=r,this.modified=i,this.id=fH++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let r=typeof e=="string"?e:"?";if(e instanceof Gr&&(t=e),t!=null&&t.base)throw new Error("Can not derive from a modified tag");let i=new Gr(r,[],null,[]);if(i.set.push(i),t)for(let a of t.set)i.set.push(a);return i}static defineModifier(e){let t=new i1(e);return r=>r.modified.indexOf(t)>-1?r:i1.get(r.base||r,r.modified.concat(t).sort((i,a)=>i.id-a.id))}}let dH=0;class i1{constructor(e){this.name=e,this.instances=[],this.id=dH++}static get(e,t){if(!t.length)return e;let r=t[0].instances.find(o=>o.base==e&&hH(t,o.modified));if(r)return r;let i=[],a=new Gr(e.name,i,e,t);for(let o of t)o.instances.push(a);let s=mH(t);for(let o of e.set)if(!o.modified.length)for(let u of s)i.push(i1.get(o,u));return a}}function hH(n,e){return n.length==e.length&&n.every((t,r)=>t==e[r])}function mH(n){let e=[[]];for(let t=0;t<n.length;t++)for(let r=0,i=e.length;r<i;r++)e.push(e[r].concat(n[t]));return e.sort((t,r)=>r.length-t.length)}function F1(n){let e=Object.create(null);for(let t in n){let r=n[t];Array.isArray(r)||(r=[r]);for(let i of t.split(" "))if(i){let a=[],s=2,o=i;for(let p=0;;){if(o=="..."&&p>0&&p+3==i.length){s=1;break}let O=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o);if(!O)throw new RangeError("Invalid path: "+i);if(a.push(O[0]=="*"?"":O[0][0]=='"'?JSON.parse(O[0]):O[0]),p+=O[0].length,p==i.length)break;let b=i[p++];if(p==i.length&&b=="!"){s=0;break}if(b!="/")throw new RangeError("Invalid path: "+i);o=i.slice(p)}let u=a.length-1,d=a[u];if(!d)throw new RangeError("Invalid path: "+i);let m=new B0(r,s,u>0?a.slice(0,u):null);e[d]=m.sort(e[d])}}return bP.add(e)}const bP=new rt({combine(n,e){let t,r,i;for(;n||e;){if(!n||e&&n.depth>=e.depth?(i=e,e=e.next):(i=n,n=n.next),t&&t.mode==i.mode&&!i.context&&!t.context)continue;let a=new B0(i.tags,i.mode,i.context);t?t.next=a:r=a,t=a}return r}});class B0{constructor(e,t,r,i){this.tags=e,this.mode=t,this.context=r,this.next=i}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}B0.empty=new B0([],2,null);function xP(n,e){let t=Object.create(null);for(let a of n)if(!Array.isArray(a.tag))t[a.tag.id]=a.class;else for(let s of a.tag)t[s.id]=a.class;let{scope:r,all:i=null}=e||{};return{style:a=>{let s=i;for(let o of a)for(let u of o.set){let d=t[u.id];if(d){s=s?s+" "+d:d;break}}return s},scope:r}}function pH(n,e){let t=null;for(let r of n){let i=r.style(e);i&&(t=t?t+" "+i:i)}return t}function gH(n,e,t,r=0,i=n.length){let a=new OH(r,Array.isArray(e)?e:[e],t);a.highlightRange(n.cursor(),r,i,"",a.highlighters),a.flush(i)}class OH{constructor(e,t,r){this.at=e,this.highlighters=t,this.span=r,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,r,i,a){let{type:s,from:o,to:u}=e;if(o>=r||u<=t)return;s.isTop&&(a=this.highlighters.filter(b=>!b.scope||b.scope(s)));let d=i,m=yH(e)||B0.empty,p=pH(a,m.tags);if(p&&(d&&(d+=" "),d+=p,m.mode==1&&(i+=(i?" ":"")+p)),this.startSpan(Math.max(t,o),d),m.opaque)return;let O=e.tree&&e.tree.prop(rt.mounted);if(O&&O.overlay){let b=e.node.enter(O.overlay[0].from+o,1),S=this.highlighters.filter(T=>!T.scope||T.scope(O.tree.type)),k=e.firstChild();for(let T=0,w=o;;T++){let A=T<O.overlay.length?O.overlay[T]:null,E=A?A.from+o:u,C=Math.max(t,w),P=Math.min(r,E);if(C<P&&k)for(;e.from<P&&(this.highlightRange(e,C,P,i,a),this.startSpan(Math.min(P,e.to),d),!(e.to>=E||!e.nextSibling())););if(!A||E>r)break;w=A.to+o,w>t&&(this.highlightRange(b.cursor(),Math.max(t,A.from+o),Math.min(r,w),"",S),this.startSpan(Math.min(r,w),d))}k&&e.parent()}else if(e.firstChild()){O&&(i="");do if(!(e.to<=t)){if(e.from>=r)break;this.highlightRange(e,t,r,i,a),this.startSpan(Math.min(r,e.to),d)}while(e.nextSibling());e.parent()}}}function yH(n){let e=n.type.prop(bP);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const Qe=Gr.define,Gd=Qe(),vs=Qe(),_k=Qe(vs),Nk=Qe(vs),ws=Qe(),Kd=Qe(ws),c2=Qe(ws),ji=Qe(),ul=Qe(ji),Qi=Qe(),_i=Qe(),mO=Qe(),zu=Qe(mO),Jd=Qe(),ne={comment:Gd,lineComment:Qe(Gd),blockComment:Qe(Gd),docComment:Qe(Gd),name:vs,variableName:Qe(vs),typeName:_k,tagName:Qe(_k),propertyName:Nk,attributeName:Qe(Nk),className:Qe(vs),labelName:Qe(vs),namespace:Qe(vs),macroName:Qe(vs),literal:ws,string:Kd,docString:Qe(Kd),character:Qe(Kd),attributeValue:Qe(Kd),number:c2,integer:Qe(c2),float:Qe(c2),bool:Qe(ws),regexp:Qe(ws),escape:Qe(ws),color:Qe(ws),url:Qe(ws),keyword:Qi,self:Qe(Qi),null:Qe(Qi),atom:Qe(Qi),unit:Qe(Qi),modifier:Qe(Qi),operatorKeyword:Qe(Qi),controlKeyword:Qe(Qi),definitionKeyword:Qe(Qi),moduleKeyword:Qe(Qi),operator:_i,derefOperator:Qe(_i),arithmeticOperator:Qe(_i),logicOperator:Qe(_i),bitwiseOperator:Qe(_i),compareOperator:Qe(_i),updateOperator:Qe(_i),definitionOperator:Qe(_i),typeOperator:Qe(_i),controlOperator:Qe(_i),punctuation:mO,separator:Qe(mO),bracket:zu,angleBracket:Qe(zu),squareBracket:Qe(zu),paren:Qe(zu),brace:Qe(zu),content:ji,heading:ul,heading1:Qe(ul),heading2:Qe(ul),heading3:Qe(ul),heading4:Qe(ul),heading5:Qe(ul),heading6:Qe(ul),contentSeparator:Qe(ji),list:Qe(ji),quote:Qe(ji),emphasis:Qe(ji),strong:Qe(ji),link:Qe(ji),monospace:Qe(ji),strikethrough:Qe(ji),inserted:Qe(),deleted:Qe(),changed:Qe(),invalid:Qe(),meta:Jd,documentMeta:Qe(Jd),annotation:Qe(Jd),processingInstruction:Qe(Jd),definition:Gr.defineModifier("definition"),constant:Gr.defineModifier("constant"),function:Gr.defineModifier("function"),standard:Gr.defineModifier("standard"),local:Gr.defineModifier("local"),special:Gr.defineModifier("special")};for(let n in ne){let e=ne[n];e instanceof Gr&&(e.name=n)}xP([{tag:ne.link,class:"tok-link"},{tag:ne.heading,class:"tok-heading"},{tag:ne.emphasis,class:"tok-emphasis"},{tag:ne.strong,class:"tok-strong"},{tag:ne.keyword,class:"tok-keyword"},{tag:ne.atom,class:"tok-atom"},{tag:ne.bool,class:"tok-bool"},{tag:ne.url,class:"tok-url"},{tag:ne.labelName,class:"tok-labelName"},{tag:ne.inserted,class:"tok-inserted"},{tag:ne.deleted,class:"tok-deleted"},{tag:ne.literal,class:"tok-literal"},{tag:ne.string,class:"tok-string"},{tag:ne.number,class:"tok-number"},{tag:[ne.regexp,ne.escape,ne.special(ne.string)],class:"tok-string2"},{tag:ne.variableName,class:"tok-variableName"},{tag:ne.local(ne.variableName),class:"tok-variableName tok-local"},{tag:ne.definition(ne.variableName),class:"tok-variableName tok-definition"},{tag:ne.special(ne.variableName),class:"tok-variableName2"},{tag:ne.definition(ne.propertyName),class:"tok-propertyName tok-definition"},{tag:ne.typeName,class:"tok-typeName"},{tag:ne.namespace,class:"tok-namespace"},{tag:ne.className,class:"tok-className"},{tag:ne.macroName,class:"tok-macroName"},{tag:ne.propertyName,class:"tok-propertyName"},{tag:ne.operator,class:"tok-operator"},{tag:ne.comment,class:"tok-comment"},{tag:ne.meta,class:"tok-meta"},{tag:ne.invalid,class:"tok-invalid"},{tag:ne.punctuation,class:"tok-punctuation"}]);var u2;const ic=new rt;function SP(n){return ze.define({combine:n?e=>e.concat(n):void 0})}const B6=new rt;class bi{constructor(e,t,r=[],i=""){this.data=e,this.name=i,dt.prototype.hasOwnProperty("tree")||Object.defineProperty(dt.prototype,"tree",{get(){return tn(this)}}),this.parser=t,this.extension=[zs.of(this),dt.languageData.of((a,s,o)=>{let u=jk(a,s,o),d=u.type.prop(ic);if(!d)return[];let m=a.facet(d),p=u.type.prop(B6);if(p){let O=u.resolve(s-u.from,o);for(let b of p)if(b.test(O,a)){let S=a.facet(b.facet);return b.type=="replace"?S:S.concat(m)}}return m})].concat(r)}isActiveAt(e,t,r=-1){return jk(e,t,r).type.prop(ic)==this.data}findRegions(e){let t=e.facet(zs);if((t==null?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let r=[],i=(a,s)=>{if(a.prop(ic)==this.data){r.push({from:s,to:s+a.length});return}let o=a.prop(rt.mounted);if(o){if(o.tree.prop(ic)==this.data){if(o.overlay)for(let u of o.overlay)r.push({from:u.from+s,to:u.to+s});else r.push({from:s,to:s+a.length});return}else if(o.overlay){let u=r.length;if(i(o.tree,o.overlay[0].from+s),r.length>u)return}}for(let u=0;u<a.children.length;u++){let d=a.children[u];d instanceof It&&i(d,a.positions[u]+s)}};return i(tn(e),0),r}get allowsNesting(){return!0}}bi.setState=mt.define();function jk(n,e,t){let r=n.facet(zs),i=tn(n).topNode;if(!r||r.allowsNesting)for(let a=i;a;a=a.enter(e,t,bt.ExcludeBuffers|bt.EnterBracketed))a.type.isTop&&(i=a);return i}class Cc extends bi{constructor(e,t,r){super(e,t,[],r),this.parser=t}static define(e){let t=SP(e.languageData);return new Cc(t,e.parser.configure({props:[ic.add(r=>r.isTop?t:void 0)]}),e.name)}configure(e,t){return new Cc(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function tn(n){let e=n.field(bi.state,!1);return e?e.tree:It.empty}class bH{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let r=this.cursorPos-this.string.length;return e<r||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-r,t-r)}}let Bu=null;class a1{constructor(e,t,r=[],i,a,s,o,u){this.parser=e,this.state=t,this.fragments=r,this.tree=i,this.treeLen=a,this.viewport=s,this.skipped=o,this.scheduleOn=u,this.parse=null,this.tempSkipped=[]}static create(e,t,r){return new a1(e,t,[],It.empty,0,r,[],null)}startParse(){return this.parser.startParse(new bH(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=It.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var r;if(typeof e=="number"){let i=Date.now()+e;e=()=>Date.now()>i}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let i=this.parse.advance();if(i)if(this.fragments=this.withoutTempSkipped(Za.addTree(i,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(r=this.parse.stoppedAt)!==null&&r!==void 0?r:this.state.doc.length,this.tree=i,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(Za.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Bu;Bu=this;try{return e()}finally{Bu=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Zk(e,t.from,t.to);return e}changes(e,t){let{fragments:r,tree:i,treeLen:a,viewport:s,skipped:o}=this;if(this.takeTree(),!e.empty){let u=[];if(e.iterChangedRanges((d,m,p,O)=>u.push({fromA:d,toA:m,fromB:p,toB:O})),r=Za.applyChanges(r,u),i=It.empty,a=0,s={from:e.mapPos(s.from,-1),to:e.mapPos(s.to,1)},this.skipped.length){o=[];for(let d of this.skipped){let m=e.mapPos(d.from,1),p=e.mapPos(d.to,-1);m<p&&o.push({from:m,to:p})}}}return new a1(this.parser,t,r,i,a,s,o,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let r=0;r<this.skipped.length;r++){let{from:i,to:a}=this.skipped[r];i<e.to&&a>e.from&&(this.fragments=Zk(this.fragments,i,a),this.skipped.splice(r--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends yP{createParse(t,r,i){let a=i[0].from,s=i[i.length-1].to;return{parsedPos:a,advance(){let u=Bu;if(u){for(let d of i)u.tempSkipped.push(d);e&&(u.scheduleOn=u.scheduleOn?Promise.all([u.scheduleOn,e]):e)}return this.parsedPos=s,new It(Xn.none,[],[],s-a)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return Bu}}function Zk(n,e,t){return Za.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class Ec{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),r=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,r)||t.takeTree(),new Ec(t)}static init(e){let t=Math.min(3e3,e.doc.length),r=a1.create(e.facet(zs).parser,e,{from:0,to:t});return r.work(20,t)||r.takeTree(),new Ec(r)}}bi.state=_r.define({create:Ec.init,update(n,e){for(let t of e.effects)if(t.is(bi.setState))return t.value;return e.startState.facet(zs)!=e.state.facet(zs)?Ec.init(e.state):n.apply(e)}});let kP=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(kP=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const f2=typeof navigator<"u"&&(!((u2=navigator.scheduling)===null||u2===void 0)&&u2.isInputPending)?()=>navigator.scheduling.isInputPending():null,xH=ur.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(bi.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(bi.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=kP(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:r,viewport:{to:i}}=this.view,a=r.field(bi.state);if(a.tree==a.context.tree&&a.context.isDone(i+1e5))return;let s=Date.now()+Math.min(this.chunkBudget,100,e&&!f2?Math.max(25,e.timeRemaining()-5):1e9),o=a.context.treeLen<i&&r.doc.length>i+1e3,u=a.context.work(()=>f2&&f2()||Date.now()>s,i+(o?0:1e5));this.chunkBudget-=Date.now()-t,(u||this.chunkBudget<=0)&&(a.context.takeTree(),this.view.dispatch({effects:bi.setState.of(new Ec(a.context))})),this.chunkBudget>0&&!(u&&!o)&&this.scheduleWork(),this.checkAsyncSchedule(a.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>Bi(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),zs=ze.define({combine(n){return n.length?n[0]:null},enables:n=>[bi.state,xH,Le.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class H6{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const SH=ze.define(),X1=ze.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function s1(n){let e=n.facet(X1);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function H0(n,e){let t="",r=n.tabSize,i=n.facet(X1)[0];if(i==" "){for(;e>=r;)t+=" ",e-=r;i=" "}for(let a=0;a<e;a++)t+=i;return t}function F6(n,e){n instanceof dt&&(n=new U1(n));for(let r of n.state.facet(SH)){let i=r(n,e);if(i!==void 0)return i}let t=tn(n.state);return t.length>=e?kH(n,t,e):null}class U1{constructor(e,t={}){this.state=e,this.options=t,this.unit=s1(e)}lineAt(e,t=1){let r=this.state.doc.lineAt(e),{simulateBreak:i,simulateDoubleBreak:a}=this.options;return i!=null&&i>=r.from&&i<=r.to?a&&i==e?{text:"",from:e}:(t<0?i<e:i<=e)?{text:r.text.slice(i-r.from),from:i}:{text:r.text.slice(0,i-r.from),from:r.from}:r}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:r,from:i}=this.lineAt(e,t);return r.slice(e-i,Math.min(r.length,e+100-i))}column(e,t=1){let{text:r,from:i}=this.lineAt(e,t),a=this.countColumn(r,e-i),s=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return s>-1&&(a+=s-this.countColumn(r,r.search(/\S|$/))),a}countColumn(e,t=e.length){return V1(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:r,from:i}=this.lineAt(e,t),a=this.options.overrideIndentation;if(a){let s=a(i);if(s>-1)return s}return this.countColumn(r,r.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const q1=new rt;function kH(n,e,t){let r=e.resolveStack(t),i=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(i!=r.node){let a=[];for(let s=i;s&&!(s.from<r.node.from||s.to>r.node.to||s.from==r.node.from&&s.type==r.node.type);s=s.parent)a.push(s);for(let s=a.length-1;s>=0;s--)r={node:a[s],next:r}}return vP(r,n,t)}function vP(n,e,t){for(let r=n;r;r=r.next){let i=wH(r.node);if(i)return i(X6.create(e,t,r))}return 0}function vH(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function wH(n){let e=n.type.prop(q1);if(e)return e;let t=n.firstChild,r;if(t&&(r=t.type.prop(rt.closedBy))){let i=n.lastChild,a=i&&r.indexOf(i.name)>-1;return s=>wP(s,!0,1,void 0,a&&!vH(s)?i.from:void 0)}return n.parent==null?TH:null}function TH(){return 0}class X6 extends U1{constructor(e,t,r){super(e.state,e.options),this.base=e,this.pos=t,this.context=r}get node(){return this.context.node}static create(e,t,r){return new X6(e,t,r)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let r=e.resolve(t.from);for(;r.parent&&r.parent.from==r.from;)r=r.parent;if(AH(r,e))break;t=this.state.doc.lineAt(r.from)}return this.lineIndent(t.from)}continue(){return vP(this.context.next,this.base,this.pos)}}function AH(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function PH(n){let e=n.node,t=e.childAfter(e.from),r=e.lastChild;if(!t)return null;let i=n.options.simulateBreak,a=n.state.doc.lineAt(t.from),s=i==null||i<=a.from?a.to:Math.min(a.to,i);for(let o=t.to;;){let u=e.childAfter(o);if(!u||u==r)return null;if(!u.type.isSkipped){if(u.from>=s)return null;let d=/^ */.exec(a.text.slice(t.to-a.from))[0].length;return{from:t.from,to:t.to+d}}o=u.to}}function CH({closing:n,align:e=!0,units:t=1}){return r=>wP(r,e,t,n)}function wP(n,e,t,r,i){let a=n.textAfter,s=a.match(/^\s*/)[0].length,o=r&&a.slice(s,s+r.length)==r||i==n.pos+s,u=e?PH(n):null;return u?o?n.column(u.from):n.column(u.to):n.baseIndent+(o?0:n.unit*t)}const EH=n=>n.baseIndent;function Ph({except:n,units:e=1}={}){return t=>{let r=n&&n.test(t.textAfter);return t.baseIndent+(r?0:e*t.unit)}}const MH=200;function $H(){return dt.transactionFilter.of(n=>{if(!n.docChanged||!n.isUserEvent("input.type")&&!n.isUserEvent("input.complete"))return n;let e=n.startState.languageDataAt("indentOnInput",n.startState.selection.main.head);if(!e.length)return n;let t=n.newDoc,{head:r}=n.newSelection.main,i=t.lineAt(r);if(r>i.from+MH)return n;let a=t.sliceString(i.from,r);if(!e.some(d=>d.test(a)))return n;let{state:s}=n,o=-1,u=[];for(let{head:d}of s.selection.ranges){let m=s.doc.lineAt(d);if(m.from==o)continue;o=m.from;let p=F6(s,m.from);if(p==null)continue;let O=/^\s*/.exec(m.text)[0],b=H0(s,p);O!=b&&u.push({from:m.from,to:m.from+O.length,insert:b})}return u.length?[n,{changes:u,sequential:!0}]:n})}const RH=ze.define(),Y1=new rt;function TP(n){let e=n.firstChild,t=n.lastChild;return e&&e.to<t.from?{from:e.to,to:t.type.isError?n.to:t.from}:null}function QH(n,e,t){let r=tn(n);if(r.length<t)return null;let i=r.resolveStack(t,1),a=null;for(let s=i;s;s=s.next){let o=s.node;if(o.to<=t||o.from>t)continue;if(a&&o.from<e)break;let u=o.type.prop(Y1);if(u&&(o.to<r.length-50||r.length==n.doc.length||!_H(o))){let d=u(o,n);d&&d.from<=t&&d.from>=e&&d.to>t&&(a=d)}}return a}function _H(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function Dk(n,e,t){for(let r of n.facet(RH)){let i=r(n,e,t);if(i)return i}return QH(n,e,t)}function AP(n,e){let t=e.mapPos(n.from,1),r=e.mapPos(n.to,-1);return t>=r?void 0:{from:t,to:r}}const PP=mt.define({map:AP}),U6=mt.define({map:AP}),l1=_r.define({create(){return Je.none},update(n,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((t,r)=>n=Vk(n,t,r)),n=n.map(e.changes);for(let t of e.effects)if(t.is(PP)&&!NH(n,t.value.from,t.value.to)){let{preparePlaceholder:r}=e.state.facet(CP),i=r?Je.replace({widget:new DH(r(e.state,t.value))}):Ik;n=n.update({add:[i.range(t.value.from,t.value.to)]})}else t.is(U6)&&(n=n.update({filter:(r,i)=>t.value.from!=r||t.value.to!=i,filterFrom:t.value.from,filterTo:t.value.to}));return e.selection&&(n=Vk(n,e.selection.main.head)),n},provide:n=>Le.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(r,i)=>{t.push(r,i)}),t},fromJSON(n){if(!Array.isArray(n)||n.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let t=0;t<n.length;){let r=n[t++],i=n[t++];if(typeof r!="number"||typeof i!="number")throw new RangeError("Invalid JSON for fold state");e.push(Ik.range(r,i))}return Je.set(e,!0)}});function Vk(n,e,t=e){let r=!1;return n.between(e,t,(i,a)=>{i<t&&a>e&&(r=!0)}),r?n.update({filterFrom:e,filterTo:t,filter:(i,a)=>i>=t||a<=e}):n}function pO(n,e,t){var r;let i=null;return(r=n.field(l1,!1))===null||r===void 0||r.between(e,t,(a,s)=>{(!i||i.from>a)&&(i={from:a,to:s})}),i}function NH(n,e,t){let r=!1;return n.between(e,e,(i,a)=>{i==e&&a==t&&(r=!0)}),r}const jH={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},CP=ze.define({combine(n){return Zc(n,jH)}});function ZH(n){return[l1,LH]}function EP(n,e){let{state:t}=n,r=t.facet(CP),i=s=>{let o=n.lineBlockAt(n.posAtDOM(s.target)),u=pO(n.state,o.from,o.to);u&&n.dispatch({effects:U6.of(u)}),s.preventDefault()};if(r.placeholderDOM)return r.placeholderDOM(n,i,e);let a=document.createElement("span");return a.textContent=r.placeholderText,a.setAttribute("aria-label",t.phrase("folded code")),a.title=t.phrase("unfold"),a.className="cm-foldPlaceholder",a.onclick=i,a}const Ik=Je.replace({widget:new class extends Fl{toDOM(n){return EP(n,null)}}});class DH extends Fl{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return EP(e,this.value)}}const VH={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class d2 extends Fa{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}function IH(n={}){let e={...VH,...n},t=new d2(e,!0),r=new d2(e,!1),i=ur.fromClass(class{constructor(s){this.from=s.viewport.from,this.markers=this.buildMarkers(s)}update(s){(s.docChanged||s.viewportChanged||s.startState.facet(zs)!=s.state.facet(zs)||s.startState.field(l1,!1)!=s.state.field(l1,!1)||tn(s.startState)!=tn(s.state)||e.foldingChanged(s))&&(this.markers=this.buildMarkers(s.view))}buildMarkers(s){let o=new Vl;for(let u of s.viewportLineBlocks){let d=pO(s.state,u.from,u.to)?r:Dk(s.state,u.from,u.to)?t:null;d&&o.add(u.from,u.from,d)}return o.finish()}}),{domEventHandlers:a}=e;return[i,IB({class:"cm-foldGutter",markers(s){var o;return((o=s.plugin(i))===null||o===void 0?void 0:o.markers)||lt.empty},initialSpacer(){return new d2(e,!1)},domEventHandlers:{...a,click:(s,o,u)=>{if(a.click&&a.click(s,o,u))return!0;let d=pO(s.state,o.from,o.to);if(d)return s.dispatch({effects:U6.of(d)}),!0;let m=Dk(s.state,o.from,o.to);return m?(s.dispatch({effects:PP.of(m)}),!0):!1}}}),ZH()]}const LH=Le.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class W1{constructor(e,t){this.specs=e;let r;function i(o){let u=Ds.newName();return(r||(r=Object.create(null)))["."+u]=o,u}const a=typeof t.all=="string"?t.all:t.all?i(t.all):void 0,s=t.scope;this.scope=s instanceof bi?o=>o.prop(ic)==s.data:s?o=>o==s:void 0,this.style=xP(e.map(o=>({tag:o.tag,class:o.class||i(Object.assign({},o,{tag:null}))})),{all:a}).style,this.module=r?new Ds(r):null,this.themeType=t.themeType}static define(e,t){return new W1(e,t||{})}}const gO=ze.define(),zH=ze.define({combine(n){return n.length?[n[0]]:null}});function h2(n){let e=n.facet(gO);return e.length?e:n.facet(zH)}function BH(n,e){let t=[FH],r;return n instanceof W1&&(n.module&&t.push(Le.styleModule.of(n.module)),r=n.themeType),r?t.push(gO.computeN([Le.darkTheme],i=>i.facet(Le.darkTheme)==(r=="dark")?[n]:[])):t.push(gO.of(n)),t}class HH{constructor(e){this.markCache=Object.create(null),this.tree=tn(e.state),this.decorations=this.buildDeco(e,h2(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=tn(e.state),r=h2(e.state),i=r!=h2(e.startState),{viewport:a}=e.view,s=e.changes.mapPos(this.decoratedTo,1);t.length<a.to&&!i&&t.type==this.tree.type&&s>=a.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=s):(t!=this.tree||e.viewportChanged||i)&&(this.tree=t,this.decorations=this.buildDeco(e.view,r),this.decoratedTo=a.to)}buildDeco(e,t){if(!t||!this.tree.length)return Je.none;let r=new Vl;for(let{from:i,to:a}of e.visibleRanges)gH(this.tree,t,(s,o,u)=>{r.add(s,o,this.markCache[u]||(this.markCache[u]=Je.mark({class:u})))},i,a);return r.finish()}}const FH=rf.high(ur.fromClass(HH,{decorations:n=>n.decorations})),XH=Le.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),MP=1e4,$P="()[]{}",RP=ze.define({combine(n){return Zc(n,{afterCursor:!0,brackets:$P,maxScanDistance:MP,renderMatch:YH})}}),UH=Je.mark({class:"cm-matchingBracket"}),qH=Je.mark({class:"cm-nonmatchingBracket"});function YH(n){let e=[],t=n.matched?UH:qH;return e.push(t.range(n.start.from,n.start.to)),n.end&&e.push(t.range(n.end.from,n.end.to)),e}function Lk(n){let e=[],t=n.facet(RP);for(let r of n.selection.ranges){if(!r.empty)continue;let i=Fi(n,r.head,-1,t)||r.head>0&&Fi(n,r.head-1,1,t)||t.afterCursor&&(Fi(n,r.head,1,t)||r.head<n.doc.length&&Fi(n,r.head+1,-1,t));i&&(e=e.concat(t.renderMatch(i,n)))}return Je.set(e,!0)}const WH=ur.fromClass(class{constructor(n){this.paused=!1,this.decorations=Lk(n.state)}update(n){(n.docChanged||n.selectionSet||this.paused)&&(n.view.composing?(this.decorations=this.decorations.map(n.changes),this.paused=!0):(this.decorations=Lk(n.state),this.paused=!1))}},{decorations:n=>n.decorations}),GH=[WH,XH];function KH(n={}){return[RP.of(n),GH]}const QP=new rt;function OO(n,e,t){let r=n.prop(e<0?rt.openedBy:rt.closedBy);if(r)return r;if(n.name.length==1){let i=t.indexOf(n.name);if(i>-1&&i%2==(e<0?1:0))return[t[i+e]]}return null}function yO(n){let e=n.type.prop(QP);return e?e(n.node):n}function Fi(n,e,t,r={}){let i=r.maxScanDistance||MP,a=r.brackets||$P,s=tn(n),o=s.resolveInner(e,t);for(let u=o;u;u=u.parent){let d=OO(u.type,t,a);if(d&&u.from<u.to){let m=yO(u);if(m&&(t>0?e>=m.from&&e<m.to:e>m.from&&e<=m.to))return JH(n,e,t,u,m,d,a)}}return eF(n,e,t,s,o.type,i,a)}function JH(n,e,t,r,i,a,s){let o=r.parent,u={from:i.from,to:i.to},d=0,m=o==null?void 0:o.cursor();if(m&&(t<0?m.childBefore(r.from):m.childAfter(r.to)))do if(t<0?m.to<=r.from:m.from>=r.to){if(d==0&&a.indexOf(m.type.name)>-1&&m.from<m.to){let p=yO(m);return{start:u,end:p?{from:p.from,to:p.to}:void 0,matched:!0}}else if(OO(m.type,t,s))d++;else if(OO(m.type,-t,s)){if(d==0){let p=yO(m);return{start:u,end:p&&p.from<p.to?{from:p.from,to:p.to}:void 0,matched:!1}}d--}}while(t<0?m.prevSibling():m.nextSibling());return{start:u,matched:!1}}function eF(n,e,t,r,i,a,s){if(t<0?!e:e==n.doc.length)return null;let o=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),u=s.indexOf(o);if(u<0||u%2==0!=t>0)return null;let d={from:t<0?e-1:e,to:t>0?e+1:e},m=n.doc.iterRange(e,t>0?n.doc.length:0),p=0;for(let O=0;!m.next().done&&O<=a;){let b=m.value;t<0&&(O+=b.length);let S=e+O*t;for(let k=t>0?0:b.length-1,T=t>0?b.length:-1;k!=T;k+=t){let w=s.indexOf(b[k]);if(!(w<0||r.resolveInner(S+k,1).type!=i))if(w%2==0==t>0)p++;else{if(p==1)return{start:d,end:{from:S+k,to:S+k+1},matched:w>>1==u>>1};p--}}t>0&&(O+=b.length)}return m.done?{start:d,matched:!1}:null}const tF=Object.create(null),zk=[Xn.none],Bk=[],Hk=Object.create(null),nF=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])nF[n]=rF(tF,e);function m2(n,e){Bk.indexOf(n)>-1||(Bk.push(n),console.warn(e))}function rF(n,e){let t=[];for(let o of e.split(" ")){let u=[];for(let d of o.split(".")){let m=n[d]||ne[d];m?typeof m=="function"?u.length?u=u.map(m):m2(d,`Modifier ${d} used at start of tag`):u.length?m2(d,`Tag ${d} used as modifier`):u=Array.isArray(m)?m:[m]:m2(d,`Unknown highlighting tag ${d}`)}for(let d of u)t.push(d)}if(!t.length)return 0;let r=e.replace(/ /g,"_"),i=r+" "+t.map(o=>o.id),a=Hk[i];if(a)return a.id;let s=Hk[i]=Xn.define({id:zk.length,name:r,props:[F1({[r]:t})]});return zk.push(s),s.id}en.RTL,en.LTR;const iF=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),r=Y6(n.state,t.from);return r.line?aF(n):r.block?lF(n):!1};function q6(n,e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let i=n(e,t);return i?(r(t.update(i)),!0):!1}}const aF=q6(uF,0),sF=q6(_P,0),lF=q6((n,e)=>_P(n,e,cF(e)),0);function Y6(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const Hu=50;function oF(n,{open:e,close:t},r,i){let a=n.sliceDoc(r-Hu,r),s=n.sliceDoc(i,i+Hu),o=/\s*$/.exec(a)[0].length,u=/^\s*/.exec(s)[0].length,d=a.length-o;if(a.slice(d-e.length,d)==e&&s.slice(u,u+t.length)==t)return{open:{pos:r-o,margin:o&&1},close:{pos:i+u,margin:u&&1}};let m,p;i-r<=2*Hu?m=p=n.sliceDoc(r,i):(m=n.sliceDoc(r,r+Hu),p=n.sliceDoc(i-Hu,i));let O=/^\s*/.exec(m)[0].length,b=/\s*$/.exec(p)[0].length,S=p.length-b-t.length;return m.slice(O,O+e.length)==e&&p.slice(S,S+t.length)==t?{open:{pos:r+O+e.length,margin:/\s/.test(m.charAt(O+e.length))?1:0},close:{pos:i-b-t.length,margin:/\s/.test(p.charAt(S-1))?1:0}}:null}function cF(n){let e=[];for(let t of n.selection.ranges){let r=n.doc.lineAt(t.from),i=t.to<=r.to?r:n.doc.lineAt(t.to);i.from>r.from&&i.from==t.to&&(i=t.to==r.to+1?r:n.doc.lineAt(t.to-1));let a=e.length-1;a>=0&&e[a].to>r.from?e[a].to=i.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:i.to})}return e}function _P(n,e,t=e.selection.ranges){let r=t.map(a=>Y6(e,a.from).block);if(!r.every(a=>a))return null;let i=t.map((a,s)=>oF(e,r[s],a.from,a.to));if(n!=2&&!i.every(a=>a))return{changes:e.changes(t.map((a,s)=>i[s]?[]:[{from:a.from,insert:r[s].open+" "},{from:a.to,insert:" "+r[s].close}]))};if(n!=1&&i.some(a=>a)){let a=[];for(let s=0,o;s<i.length;s++)if(o=i[s]){let u=r[s],{open:d,close:m}=o;a.push({from:d.pos-u.open.length,to:d.pos+d.margin},{from:m.pos-m.margin,to:m.pos+u.close.length})}return{changes:a}}return null}function uF(n,e,t=e.selection.ranges){let r=[],i=-1;e:for(let{from:a,to:s}of t){let o=r.length,u=1e9,d;for(let m=a;m<=s;){let p=e.doc.lineAt(m);if(d==null&&(d=Y6(e,p.from).line,!d))continue e;if(p.from>i&&(a==s||s>p.from)){i=p.from;let O=/^\s*/.exec(p.text)[0].length,b=O==p.length,S=p.text.slice(O,O+d.length)==d?O:-1;O<p.text.length&&O<u&&(u=O),r.push({line:p,comment:S,token:d,indent:O,empty:b,single:!1})}m=p.to+1}if(u<1e9)for(let m=o;m<r.length;m++)r[m].indent<r[m].line.text.length&&(r[m].indent=u);r.length==o+1&&(r[o].single=!0)}if(n!=2&&r.some(a=>a.comment<0&&(!a.empty||a.single))){let a=[];for(let{line:o,token:u,indent:d,empty:m,single:p}of r)(p||!m)&&a.push({from:o.from+d,insert:u+" "});let s=e.changes(a);return{changes:s,selection:e.selection.map(s,1)}}else if(n!=1&&r.some(a=>a.comment>=0)){let a=[];for(let{line:s,comment:o,token:u}of r)if(o>=0){let d=s.from+o,m=d+u.length;s.text[m-s.from]==" "&&m++,a.push({from:d,to:m})}return{changes:a}}return null}const bO=qa.define(),fF=qa.define(),dF=ze.define(),NP=ze.define({combine(n){return Zc(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(r,i)=>e(r,i)||t(r,i)})}}),jP=_r.define({create(){return Xi.empty},update(n,e){let t=e.state.facet(NP),r=e.annotation(bO);if(r){let u=or.fromTransaction(e,r.selection),d=r.side,m=d==0?n.undone:n.done;return u?m=o1(m,m.length,t.minDepth,u):m=VP(m,e.startState.selection),new Xi(d==0?r.rest:m,d==0?m:r.rest)}let i=e.annotation(fF);if((i=="full"||i=="before")&&(n=n.isolate()),e.annotation(cn.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let a=or.fromTransaction(e),s=e.annotation(cn.time),o=e.annotation(cn.userEvent);return a?n=n.addChanges(a,s,o,t,e):e.selection&&(n=n.addSelection(e.startState.selection,s,o,t.newGroupDelay)),(i=="full"||i=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new Xi(n.done.map(or.fromJSON),n.undone.map(or.fromJSON))}});function hF(n={}){return[jP,NP.of(n),Le.domEventHandlers({beforeinput(e,t){let r=e.inputType=="historyUndo"?ZP:e.inputType=="historyRedo"?xO:null;return r?(e.preventDefault(),r(t)):!1}})]}function G1(n,e){return function({state:t,dispatch:r}){if(!e&&t.readOnly)return!1;let i=t.field(jP,!1);if(!i)return!1;let a=i.pop(n,t,e);return a?(r(a),!0):!1}}const ZP=G1(0,!1),xO=G1(1,!1),mF=G1(0,!0),pF=G1(1,!0);class or{constructor(e,t,r,i,a){this.changes=e,this.effects=t,this.mapped=r,this.startSelection=i,this.selectionsAfter=a}setSelAfter(e){return new or(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(i=>i.toJSON())}}static fromJSON(e){return new or(e.changes&&dn.fromJSON(e.changes),[],e.mapped&&Ui.fromJSON(e.mapped),e.startSelection&&we.fromJSON(e.startSelection),e.selectionsAfter.map(we.fromJSON))}static fromTransaction(e,t){let r=ti;for(let i of e.startState.facet(dF)){let a=i(e);a.length&&(r=r.concat(a))}return!r.length&&e.changes.empty?null:new or(e.changes.invert(e.startState.doc),r,void 0,t||e.startState.selection,ti)}static selection(e){return new or(void 0,ti,void 0,void 0,e)}}function o1(n,e,t,r){let i=e+1>t+20?e-t-1:0,a=n.slice(i,e);return a.push(r),a}function gF(n,e){let t=[],r=!1;return n.iterChangedRanges((i,a)=>t.push(i,a)),e.iterChangedRanges((i,a,s,o)=>{for(let u=0;u<t.length;){let d=t[u++],m=t[u++];o>=d&&s<=m&&(r=!0)}}),r}function OF(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,r)=>t.empty!=e.ranges[r].empty).length===0}function DP(n,e){return n.length?e.length?n.concat(e):n:e}const ti=[],yF=200;function VP(n,e){if(n.length){let t=n[n.length-1],r=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-yF));return r.length&&r[r.length-1].eq(e)?n:(r.push(e),o1(n,n.length-1,1e9,t.setSelAfter(r)))}else return[or.selection([e])]}function bF(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function p2(n,e){if(!n.length)return n;let t=n.length,r=ti;for(;t;){let i=xF(n[t-1],e,r);if(i.changes&&!i.changes.empty||i.effects.length){let a=n.slice(0,t);return a[t-1]=i,a}else e=i.mapped,t--,r=i.selectionsAfter}return r.length?[or.selection(r)]:ti}function xF(n,e,t){let r=DP(n.selectionsAfter.length?n.selectionsAfter.map(o=>o.map(e)):ti,t);if(!n.changes)return or.selection(r);let i=n.changes.map(e),a=e.mapDesc(n.changes,!0),s=n.mapped?n.mapped.composeDesc(a):a;return new or(i,mt.mapEffects(n.effects,e),s,n.startSelection.map(a),r)}const SF=/^(input\.type|delete)($|\.)/;class Xi{constructor(e,t,r=0,i=void 0){this.done=e,this.undone=t,this.prevTime=r,this.prevUserEvent=i}isolate(){return this.prevTime?new Xi(this.done,this.undone):this}addChanges(e,t,r,i,a){let s=this.done,o=s[s.length-1];return o&&o.changes&&!o.changes.empty&&e.changes&&(!r||SF.test(r))&&(!o.selectionsAfter.length&&t-this.prevTime<i.newGroupDelay&&i.joinToEvent(a,gF(o.changes,e.changes))||r=="input.type.compose")?s=o1(s,s.length-1,i.minDepth,new or(e.changes.compose(o.changes),DP(mt.mapEffects(e.effects,o.changes),o.effects),o.mapped,o.startSelection,ti)):s=o1(s,s.length,i.minDepth,e),new Xi(s,ti,t,r)}addSelection(e,t,r,i){let a=this.done.length?this.done[this.done.length-1].selectionsAfter:ti;return a.length>0&&t-this.prevTime<i&&r==this.prevUserEvent&&r&&/^select($|\.)/.test(r)&&OF(a[a.length-1],e)?this:new Xi(VP(this.done,e),this.undone,t,r)}addMapping(e){return new Xi(p2(this.done,e),p2(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,r){let i=e==0?this.done:this.undone;if(i.length==0)return null;let a=i[i.length-1],s=a.selectionsAfter[0]||(a.startSelection?a.startSelection.map(a.changes.invertedDesc,1):t.selection);if(r&&a.selectionsAfter.length)return t.update({selection:a.selectionsAfter[a.selectionsAfter.length-1],annotations:bO.of({side:e,rest:bF(i),selection:s}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(a.changes){let o=i.length==1?ti:i.slice(0,i.length-1);return a.mapped&&(o=p2(o,a.mapped)),t.update({changes:a.changes,selection:a.startSelection,effects:a.effects,annotations:bO.of({side:e,rest:o,selection:s}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}Xi.empty=new Xi(ti,ti);const kF=[{key:"Mod-z",run:ZP,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:xO,preventDefault:!0},{linux:"Ctrl-Shift-z",run:xO,preventDefault:!0},{key:"Mod-u",run:mF,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:pF,preventDefault:!0}];function Dc(n,e){return we.create(n.ranges.map(e),n.mainIndex)}function wi(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Ti({state:n,dispatch:e},t){let r=Dc(n.selection,t);return r.eq(n.selection,!0)?!1:(e(wi(n,r)),!0)}function K1(n,e){return we.cursor(e?n.to:n.from)}function IP(n,e){return Ti(n,t=>t.empty?n.moveByChar(t,e):K1(t,e))}function Vn(n){return n.textDirectionAt(n.state.selection.main.head)==en.LTR}const LP=n=>IP(n,!Vn(n)),zP=n=>IP(n,Vn(n));function BP(n,e){return Ti(n,t=>t.empty?n.moveByGroup(t,e):K1(t,e))}const vF=n=>BP(n,!Vn(n)),wF=n=>BP(n,Vn(n));function TF(n,e,t){if(e.type.prop(t))return!0;let r=e.to-e.from;return r&&(r>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function J1(n,e,t){let r=tn(n).resolveInner(e.head),i=t?rt.closedBy:rt.openedBy;for(let u=e.head;;){let d=t?r.childAfter(u):r.childBefore(u);if(!d)break;TF(n,d,i)?r=d:u=t?d.to:d.from}let a=r.type.prop(i),s,o;return a&&(s=t?Fi(n,r.from,1):Fi(n,r.to,-1))&&s.matched?o=t?s.end.to:s.end.from:o=t?r.to:r.from,we.cursor(o,t?-1:1)}const AF=n=>Ti(n,e=>J1(n.state,e,!Vn(n))),PF=n=>Ti(n,e=>J1(n.state,e,Vn(n)));function HP(n,e){return Ti(n,t=>{if(!t.empty)return K1(t,e);let r=n.moveVertically(t,e);return r.head!=t.head?r:n.moveToLineBoundary(t,e)})}const FP=n=>HP(n,!1),XP=n=>HP(n,!0);function UP(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,r=0,i;if(e){for(let a of n.state.facet(Le.scrollMargins)){let s=a(n);s!=null&&s.top&&(t=Math.max(s==null?void 0:s.top,t)),s!=null&&s.bottom&&(r=Math.max(s==null?void 0:s.bottom,r))}i=n.scrollDOM.clientHeight-t-r}else i=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:r,selfScroll:e,height:Math.max(n.defaultLineHeight,i-5)}}function qP(n,e){let t=UP(n),{state:r}=n,i=Dc(r.selection,s=>s.empty?n.moveVertically(s,e,t.height):K1(s,e));if(i.eq(r.selection))return!1;let a;if(t.selfScroll){let s=n.coordsAtPos(r.selection.main.head),o=n.scrollDOM.getBoundingClientRect(),u=o.top+t.marginTop,d=o.bottom-t.marginBottom;s&&s.top>u&&s.bottom<d&&(a=Le.scrollIntoView(i.main.head,{y:"start",yMargin:s.top-u}))}return n.dispatch(wi(r,i),{effects:a}),!0}const Fk=n=>qP(n,!1),SO=n=>qP(n,!0);function Bs(n,e,t){let r=n.lineBlockAt(e.head),i=n.moveToLineBoundary(e,t);if(i.head==e.head&&i.head!=(t?r.to:r.from)&&(i=n.moveToLineBoundary(e,t,!1)),!t&&i.head==r.from&&r.length){let a=/^\s*/.exec(n.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;a&&e.head!=r.from+a&&(i=we.cursor(r.from+a))}return i}const CF=n=>Ti(n,e=>Bs(n,e,!0)),EF=n=>Ti(n,e=>Bs(n,e,!1)),MF=n=>Ti(n,e=>Bs(n,e,!Vn(n))),$F=n=>Ti(n,e=>Bs(n,e,Vn(n))),RF=n=>Ti(n,e=>we.cursor(n.lineBlockAt(e.head).from,1)),QF=n=>Ti(n,e=>we.cursor(n.lineBlockAt(e.head).to,-1));function _F(n,e,t){let r=!1,i=Dc(n.selection,a=>{let s=Fi(n,a.head,-1)||Fi(n,a.head,1)||a.head>0&&Fi(n,a.head-1,1)||a.head<n.doc.length&&Fi(n,a.head+1,-1);if(!s||!s.end)return a;r=!0;let o=s.start.from==a.head?s.end.to:s.end.from;return we.cursor(o)});return r?(e(wi(n,i)),!0):!1}const NF=({state:n,dispatch:e})=>_F(n,e);function ai(n,e){let t=Dc(n.state.selection,r=>{let i=e(r);return we.range(r.anchor,i.head,i.goalColumn,i.bidiLevel||void 0,i.assoc)});return t.eq(n.state.selection)?!1:(n.dispatch(wi(n.state,t)),!0)}function YP(n,e){return ai(n,t=>n.moveByChar(t,e))}const WP=n=>YP(n,!Vn(n)),GP=n=>YP(n,Vn(n));function KP(n,e){return ai(n,t=>n.moveByGroup(t,e))}const jF=n=>KP(n,!Vn(n)),ZF=n=>KP(n,Vn(n)),DF=n=>ai(n,e=>J1(n.state,e,!Vn(n))),VF=n=>ai(n,e=>J1(n.state,e,Vn(n)));function JP(n,e){return ai(n,t=>n.moveVertically(t,e))}const eC=n=>JP(n,!1),tC=n=>JP(n,!0);function nC(n,e){return ai(n,t=>n.moveVertically(t,e,UP(n).height))}const Xk=n=>nC(n,!1),Uk=n=>nC(n,!0),IF=n=>ai(n,e=>Bs(n,e,!0)),LF=n=>ai(n,e=>Bs(n,e,!1)),zF=n=>ai(n,e=>Bs(n,e,!Vn(n))),BF=n=>ai(n,e=>Bs(n,e,Vn(n))),HF=n=>ai(n,e=>we.cursor(n.lineBlockAt(e.head).from)),FF=n=>ai(n,e=>we.cursor(n.lineBlockAt(e.head).to)),qk=({state:n,dispatch:e})=>(e(wi(n,{anchor:0})),!0),Yk=({state:n,dispatch:e})=>(e(wi(n,{anchor:n.doc.length})),!0),Wk=({state:n,dispatch:e})=>(e(wi(n,{anchor:n.selection.main.anchor,head:0})),!0),Gk=({state:n,dispatch:e})=>(e(wi(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),XF=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),UF=({state:n,dispatch:e})=>{let t=em(n).map(({from:r,to:i})=>we.range(r,Math.min(i+1,n.doc.length)));return e(n.update({selection:we.create(t),userEvent:"select"})),!0},qF=({state:n,dispatch:e})=>{let t=Dc(n.selection,r=>{let i=tn(n),a=i.resolveStack(r.from,1);if(r.empty){let s=i.resolveStack(r.from,-1);s.node.from>=a.node.from&&s.node.to<=a.node.to&&(a=s)}for(let s=a;s;s=s.next){let{node:o}=s;if((o.from<r.from&&o.to>=r.to||o.to>r.to&&o.from<=r.from)&&s.next)return we.range(o.to,o.from)}return r});return t.eq(n.selection)?!1:(e(wi(n,t)),!0)};function rC(n,e){let{state:t}=n,r=t.selection,i=t.selection.ranges.slice();for(let a of t.selection.ranges){let s=t.doc.lineAt(a.head);if(e?s.to<n.state.doc.length:s.from>0)for(let o=a;;){let u=n.moveVertically(o,e);if(u.head<s.from||u.head>s.to){i.some(d=>d.head==u.head)||i.push(u);break}else{if(u.head==o.head)break;o=u}}}return i.length==r.ranges.length?!1:(n.dispatch(wi(t,we.create(i,i.length-1))),!0)}const YF=n=>rC(n,!1),WF=n=>rC(n,!0),GF=({state:n,dispatch:e})=>{let t=n.selection,r=null;return t.ranges.length>1?r=we.create([t.main]):t.main.empty||(r=we.create([we.cursor(t.main.head)])),r?(e(wi(n,r)),!0):!1};function of(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:r}=n,i=r.changeByRange(a=>{let{from:s,to:o}=a;if(s==o){let u=e(a);u<s?(t="delete.backward",u=eh(n,u,!1)):u>s&&(t="delete.forward",u=eh(n,u,!0)),s=Math.min(s,u),o=Math.max(o,u)}else s=eh(n,s,!1),o=eh(n,o,!0);return s==o?{range:a}:{changes:{from:s,to:o},range:we.cursor(s,s<a.head?-1:1)}});return i.changes.empty?!1:(n.dispatch(r.update(i,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?Le.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function eh(n,e,t){if(n instanceof Le)for(let r of n.state.facet(Le.atomicRanges).map(i=>i(n)))r.between(e,e,(i,a)=>{i<e&&a>e&&(e=t?a:i)});return e}const iC=(n,e,t)=>of(n,r=>{let i=r.from,{state:a}=n,s=a.doc.lineAt(i),o,u;if(t&&!e&&i>s.from&&i<s.from+200&&!/[^ \t]/.test(o=s.text.slice(0,i-s.from))){if(o[o.length-1]==" ")return i-1;let d=V1(o,a.tabSize),m=d%s1(a)||s1(a);for(let p=0;p<m&&o[o.length-1-p]==" ";p++)i--;u=i}else u=xn(s.text,i-s.from,e,e)+s.from,u==i&&s.number!=(e?a.doc.lines:1)?u+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(s.text.slice(u-s.from,i-s.from))&&(u=xn(s.text,u-s.from,!1,!1)+s.from);return u}),kO=n=>iC(n,!1,!0),aC=n=>iC(n,!0,!1),sC=(n,e)=>of(n,t=>{let r=t.head,{state:i}=n,a=i.doc.lineAt(r),s=i.charCategorizer(r);for(let o=null;;){if(r==(e?a.to:a.from)){r==t.head&&a.number!=(e?i.doc.lines:1)&&(r+=e?1:-1);break}let u=xn(a.text,r-a.from,e)+a.from,d=a.text.slice(Math.min(r,u)-a.from,Math.max(r,u)-a.from),m=s(d);if(o!=null&&m!=o)break;(d!=" "||r!=t.head)&&(o=m),r=u}return r}),lC=n=>sC(n,!1),KF=n=>sC(n,!0),JF=n=>of(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),eX=n=>of(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),tX=n=>of(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),nX=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:ft.of(["",""])},range:we.cursor(r.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},rX=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>{if(!r.empty||r.from==0||r.from==n.doc.length)return{range:r};let i=r.from,a=n.doc.lineAt(i),s=i==a.from?i-1:xn(a.text,i-a.from,!1)+a.from,o=i==a.to?i+1:xn(a.text,i-a.from,!0)+a.from;return{changes:{from:s,to:o,insert:n.doc.slice(i,o).append(n.doc.slice(s,i))},range:we.cursor(o)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function em(n){let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.from),a=n.doc.lineAt(r.to);if(!r.empty&&r.to==a.from&&(a=n.doc.lineAt(r.to-1)),t>=i.number){let s=e[e.length-1];s.to=a.to,s.ranges.push(r)}else e.push({from:i.from,to:a.to,ranges:[r]});t=a.number+1}return e}function oC(n,e,t){if(n.readOnly)return!1;let r=[],i=[];for(let a of em(n)){if(t?a.to==n.doc.length:a.from==0)continue;let s=n.doc.lineAt(t?a.to+1:a.from-1),o=s.length+1;if(t){r.push({from:a.to,to:s.to},{from:a.from,insert:s.text+n.lineBreak});for(let u of a.ranges)i.push(we.range(Math.min(n.doc.length,u.anchor+o),Math.min(n.doc.length,u.head+o)))}else{r.push({from:s.from,to:a.from},{from:a.to,insert:n.lineBreak+s.text});for(let u of a.ranges)i.push(we.range(u.anchor-o,u.head-o))}}return r.length?(e(n.update({changes:r,scrollIntoView:!0,selection:we.create(i,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const iX=({state:n,dispatch:e})=>oC(n,e,!1),aX=({state:n,dispatch:e})=>oC(n,e,!0);function cC(n,e,t){if(n.readOnly)return!1;let r=[];for(let a of em(n))t?r.push({from:a.from,insert:n.doc.slice(a.from,a.to)+n.lineBreak}):r.push({from:a.to,insert:n.lineBreak+n.doc.slice(a.from,a.to)});let i=n.changes(r);return e(n.update({changes:i,selection:n.selection.map(i,t?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const sX=({state:n,dispatch:e})=>cC(n,e,!1),lX=({state:n,dispatch:e})=>cC(n,e,!0),oX=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(em(e).map(({from:i,to:a})=>(i>0?i--:a<e.doc.length&&a++,{from:i,to:a}))),r=Dc(e.selection,i=>{let a;if(n.lineWrapping){let s=n.lineBlockAt(i.head),o=n.coordsAtPos(i.head,i.assoc||1);o&&(a=s.bottom+n.documentTop-o.bottom+n.defaultLineHeight/2)}return n.moveVertically(i,!0,a)}).map(t);return n.dispatch({changes:t,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function cX(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=tn(n).resolveInner(e),r=t.childBefore(e),i=t.childAfter(e),a;return r&&i&&r.to<=e&&i.from>=e&&(a=r.type.prop(rt.closedBy))&&a.indexOf(i.name)>-1&&n.doc.lineAt(r.to).from==n.doc.lineAt(i.from).from&&!/\S/.test(n.sliceDoc(r.to,i.from))?{from:r.to,to:i.from}:null}const Kk=uC(!1),uX=uC(!0);function uC(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=e.changeByRange(i=>{let{from:a,to:s}=i,o=e.doc.lineAt(a),u=!n&&a==s&&cX(e,a);n&&(a=s=(s<=o.to?o:e.doc.lineAt(s)).to);let d=new U1(e,{simulateBreak:a,simulateDoubleBreak:!!u}),m=F6(d,a);for(m==null&&(m=V1(/^\s*/.exec(e.doc.lineAt(a).text)[0],e.tabSize));s<o.to&&/\s/.test(o.text[s-o.from]);)s++;u?{from:a,to:s}=u:a>o.from&&a<o.from+100&&!/\S/.test(o.text.slice(0,a))&&(a=o.from);let p=["",H0(e,m)];return u&&p.push(H0(e,d.lineIndent(o.from,-1))),{changes:{from:a,to:s,insert:ft.of(p)},range:we.cursor(a+1+p[1].length)}});return t(e.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function W6(n,e){let t=-1;return n.changeByRange(r=>{let i=[];for(let s=r.from;s<=r.to;){let o=n.doc.lineAt(s);o.number>t&&(r.empty||r.to>o.from)&&(e(o,i,r),t=o.number),s=o.to+1}let a=n.changes(i);return{changes:i,range:we.range(a.mapPos(r.anchor,1),a.mapPos(r.head,1))}})}const fX=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),r=new U1(n,{overrideIndentation:a=>{let s=t[a];return s??-1}}),i=W6(n,(a,s,o)=>{let u=F6(r,a.from);if(u==null)return;/\S/.test(a.text)||(u=0);let d=/^\s*/.exec(a.text)[0],m=H0(n,u);(d!=m||o.from<a.from+d.length)&&(t[a.from]=u,s.push({from:a.from,to:a.from+d.length,insert:m}))});return i.changes.empty||e(n.update(i,{userEvent:"indent"})),!0},dX=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(W6(n,(t,r)=>{r.push({from:t.from,insert:n.facet(X1)})}),{userEvent:"input.indent"})),!0),hX=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(W6(n,(t,r)=>{let i=/^\s*/.exec(t.text)[0];if(!i)return;let a=V1(i,n.tabSize),s=0,o=H0(n,Math.max(0,a-s1(n)));for(;s<i.length&&s<o.length&&i.charCodeAt(s)==o.charCodeAt(s);)s++;r.push({from:t.from+s,to:t.from+i.length,insert:o.slice(s)})}),{userEvent:"delete.dedent"})),!0),mX=n=>(n.setTabFocusMode(),!0),pX=[{key:"Ctrl-b",run:LP,shift:WP,preventDefault:!0},{key:"Ctrl-f",run:zP,shift:GP},{key:"Ctrl-p",run:FP,shift:eC},{key:"Ctrl-n",run:XP,shift:tC},{key:"Ctrl-a",run:RF,shift:HF},{key:"Ctrl-e",run:QF,shift:FF},{key:"Ctrl-d",run:aC},{key:"Ctrl-h",run:kO},{key:"Ctrl-k",run:JF},{key:"Ctrl-Alt-h",run:lC},{key:"Ctrl-o",run:nX},{key:"Ctrl-t",run:rX},{key:"Ctrl-v",run:SO}],gX=[{key:"ArrowLeft",run:LP,shift:WP,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:vF,shift:jF,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:MF,shift:zF,preventDefault:!0},{key:"ArrowRight",run:zP,shift:GP,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:wF,shift:ZF,preventDefault:!0},{mac:"Cmd-ArrowRight",run:$F,shift:BF,preventDefault:!0},{key:"ArrowUp",run:FP,shift:eC,preventDefault:!0},{mac:"Cmd-ArrowUp",run:qk,shift:Wk},{mac:"Ctrl-ArrowUp",run:Fk,shift:Xk},{key:"ArrowDown",run:XP,shift:tC,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Yk,shift:Gk},{mac:"Ctrl-ArrowDown",run:SO,shift:Uk},{key:"PageUp",run:Fk,shift:Xk},{key:"PageDown",run:SO,shift:Uk},{key:"Home",run:EF,shift:LF,preventDefault:!0},{key:"Mod-Home",run:qk,shift:Wk},{key:"End",run:CF,shift:IF,preventDefault:!0},{key:"Mod-End",run:Yk,shift:Gk},{key:"Enter",run:Kk,shift:Kk},{key:"Mod-a",run:XF},{key:"Backspace",run:kO,shift:kO,preventDefault:!0},{key:"Delete",run:aC,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:lC,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:KF,preventDefault:!0},{mac:"Mod-Backspace",run:eX,preventDefault:!0},{mac:"Mod-Delete",run:tX,preventDefault:!0}].concat(pX.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),OX=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:AF,shift:DF},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:PF,shift:VF},{key:"Alt-ArrowUp",run:iX},{key:"Shift-Alt-ArrowUp",run:sX},{key:"Alt-ArrowDown",run:aX},{key:"Shift-Alt-ArrowDown",run:lX},{key:"Mod-Alt-ArrowUp",run:YF},{key:"Mod-Alt-ArrowDown",run:WF},{key:"Escape",run:GF},{key:"Mod-Enter",run:uX},{key:"Alt-l",mac:"Ctrl-l",run:UF},{key:"Mod-i",run:qF,preventDefault:!0},{key:"Mod-[",run:hX},{key:"Mod-]",run:dX},{key:"Mod-Alt-\\",run:fX},{key:"Shift-Mod-k",run:oX},{key:"Shift-Mod-\\",run:NF},{key:"Mod-/",run:iF},{key:"Alt-A",run:sF},{key:"Ctrl-m",mac:"Shift-Alt-m",run:mX}].concat(gX);function Jk(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function yX(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let a=1;a<i.length;a++)t[i[a]]=!0}let r=Jk(e)+Jk(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function bX(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,r]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:yX(e);return i=>{let a=i.matchBefore(r);return a||i.explicit?{from:a?a.from:i.pos,options:e,validFor:t}:null}}function xX(n,e){return t=>{for(let r=tn(t.state).resolveInner(t.pos,-1);r;r=r.parent){if(n.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(t)}}const SX=qa.define(),kX=Le.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center",cursor:"pointer"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class vX{constructor(e,t,r,i){this.field=e,this.line=t,this.from=r,this.to=i}}class G6{constructor(e,t,r){this.field=e,this.from=t,this.to=r}map(e){let t=e.mapPos(this.from,-1,jn.TrackDel),r=e.mapPos(this.to,1,jn.TrackDel);return t==null||r==null?null:new G6(this.field,t,r)}}class K6{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let r=[],i=[t],a=e.doc.lineAt(t),s=/^\s*/.exec(a.text)[0];for(let u of this.lines){if(r.length){let d=s,m=/^\t*/.exec(u)[0].length;for(let p=0;p<m;p++)d+=e.facet(X1);i.push(t+d.length-m),u=d+u.slice(m)}r.push(u),t+=u.length+1}let o=this.fieldPositions.map(u=>new G6(u.field,i[u.line]+u.from,i[u.line]+u.to));return{text:r,ranges:o}}static parse(e){let t=[],r=[],i=[],a;for(let s of e.split(/\r\n?|\n/)){for(;a=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(s);){let o=a[1]?+a[1]:null,u=a[2]||a[3]||"",d=-1,m=u.replace(/\\[{}]/g,p=>p[1]);for(let p=0;p<t.length;p++)(o!=null?t[p].seq==o:m&&t[p].name==m)&&(d=p);if(d<0){let p=0;for(;p<t.length&&(o==null||t[p].seq!=null&&t[p].seq<o);)p++;t.splice(p,0,{seq:o,name:m}),d=p;for(let O of i)O.field>=d&&O.field++}for(let p of i)if(p.line==r.length&&p.from>a.index){let O=a[2]?3+(a[1]||"").length:2;p.from-=O,p.to-=O}i.push(new vX(d,r.length,a.index,a.index+m.length)),s=s.slice(0,a.index)+u+s.slice(a.index+a[0].length)}s=s.replace(/\\([{}])/g,(o,u,d)=>{for(let m of i)m.line==r.length&&m.from>d&&(m.from--,m.to--);return u}),r.push(s)}return new K6(r,i)}}let wX=Je.widget({widget:new class extends Fl{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),TX=Je.mark({class:"cm-snippetField"});class Vc{constructor(e,t){this.ranges=e,this.active=t,this.deco=Je.set(e.map(r=>(r.from==r.to?wX:TX).range(r.from,r.to)),!0)}map(e){let t=[];for(let r of this.ranges){let i=r.map(e);if(!i)return null;t.push(i)}return new Vc(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(r=>r.field==this.active&&r.from<=t.from&&r.to>=t.to))}}const cf=mt.define({map(n,e){return n&&n.map(e)}}),AX=mt.define(),F0=_r.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(cf))return t.value;if(t.is(AX)&&n)return new Vc(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>Le.decorations.from(n,e=>e?e.deco:Je.none)});function J6(n,e){return we.create(n.filter(t=>t.field==e).map(t=>we.range(t.from,t.to)))}function PX(n){let e=K6.parse(n);return(t,r,i,a)=>{let{text:s,ranges:o}=e.instantiate(t.state,i),{main:u}=t.state.selection,d={changes:{from:i,to:a==u.from?u.to:a,insert:ft.of(s)},scrollIntoView:!0,annotations:r?[SX.of(r),cn.userEvent.of("input.complete")]:void 0};if(o.length&&(d.selection=J6(o,0)),o.some(m=>m.field>0)){let m=new Vc(o,0),p=d.effects=[cf.of(m)];t.state.field(F0,!1)===void 0&&p.push(mt.appendConfig.of([F0,RX,QX,kX]))}t.dispatch(t.state.update(d))}}function fC(n){return({state:e,dispatch:t})=>{let r=e.field(F0,!1);if(!r||n<0&&r.active==0)return!1;let i=r.active+n,a=n>0&&!r.ranges.some(s=>s.field==i+n);return t(e.update({selection:J6(r.ranges,i),effects:cf.of(a?null:new Vc(r.ranges,i)),scrollIntoView:!0})),!0}}const CX=({state:n,dispatch:e})=>n.field(F0,!1)?(e(n.update({effects:cf.of(null)})),!0):!1,EX=fC(1),MX=fC(-1),$X=[{key:"Tab",run:EX,shift:MX},{key:"Escape",run:CX}],ev=ze.define({combine(n){return n.length?n[0]:$X}}),RX=rf.highest(D6.compute([ev],n=>n.facet(ev)));function rr(n,e){return{...e,apply:PX(n)}}const QX=Le.domEventHandlers({mousedown(n,e){let t=e.state.field(F0,!1),r;if(!t||(r=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(a=>a.from<=r&&a.to>=r);return!i||i.field==t.active?!1:(e.dispatch({selection:J6(t.ranges,i.field),effects:cf.of(t.ranges.some(a=>a.field>i.field)?new Vc(t.ranges,i.field):null),scrollIntoView:!0}),!0)}}),X0={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},kl=mt.define({map(n,e){let t=e.mapPos(n,-1,jn.TrackAfter);return t??void 0}}),e4=new class extends Zs{};e4.startSide=1;e4.endSide=-1;const dC=_r.define({create(){return lt.empty},update(n,e){if(n=n.map(e.changes),e.selection){let t=e.state.doc.lineAt(e.selection.main.head);n=n.update({filter:r=>r>=t.from&&r<=t.to})}for(let t of e.effects)t.is(kl)&&(n=n.update({add:[e4.range(t.value,t.value+1)]}));return n}});function _X(){return[jX,dC]}const g2="()[]{}<>«»»«[]{}";function hC(n){for(let e=0;e<g2.length;e+=2)if(g2.charCodeAt(e)==n)return g2.charAt(e+1);return J9(n<128?n:n+1)}function mC(n,e){return n.languageDataAt("closeBrackets",e)[0]||X0}const NX=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),jX=Le.inputHandler.of((n,e,t,r)=>{if((NX?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(r.length>2||r.length==2&&nf(Hl(r,0))==1||e!=i.from||t!=i.to)return!1;let a=VX(n.state,r);return a?(n.dispatch(a),!0):!1}),ZX=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let r=mC(n,n.selection.main.head).brackets||X0.brackets,i=null,a=n.changeByRange(s=>{if(s.empty){let o=IX(n.doc,s.head);for(let u of r)if(u==o&&tm(n.doc,s.head)==hC(Hl(u,0)))return{changes:{from:s.head-u.length,to:s.head+u.length},range:we.cursor(s.head-u.length)}}return{range:i=s}});return i||e(n.update(a,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},DX=[{key:"Backspace",run:ZX}];function VX(n,e){let t=mC(n,n.selection.main.head),r=t.brackets||X0.brackets;for(let i of r){let a=hC(Hl(i,0));if(e==i)return a==i?BX(n,i,r.indexOf(i+i+i)>-1,t):LX(n,i,a,t.before||X0.before);if(e==a&&pC(n,n.selection.main.from))return zX(n,i,a)}return null}function pC(n,e){let t=!1;return n.field(dC).between(0,n.doc.length,r=>{r==e&&(t=!0)}),t}function tm(n,e){let t=n.sliceString(e,e+2);return t.slice(0,nf(Hl(t,0)))}function IX(n,e){let t=n.sliceString(e-2,e);return nf(Hl(t,0))==t.length?t:t.slice(1)}function LX(n,e,t,r){let i=null,a=n.changeByRange(s=>{if(!s.empty)return{changes:[{insert:e,from:s.from},{insert:t,from:s.to}],effects:kl.of(s.to+e.length),range:we.range(s.anchor+e.length,s.head+e.length)};let o=tm(n.doc,s.head);return!o||/\s/.test(o)||r.indexOf(o)>-1?{changes:{insert:e+t,from:s.head},effects:kl.of(s.head+e.length),range:we.cursor(s.head+e.length)}:{range:i=s}});return i?null:n.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function zX(n,e,t){let r=null,i=n.changeByRange(a=>a.empty&&tm(n.doc,a.head)==t?{changes:{from:a.head,to:a.head+t.length,insert:t},range:we.cursor(a.head+t.length)}:r={range:a});return r?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function BX(n,e,t,r){let i=r.stringPrefixes||X0.stringPrefixes,a=null,s=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:e,from:o.to}],effects:kl.of(o.to+e.length),range:we.range(o.anchor+e.length,o.head+e.length)};let u=o.head,d=tm(n.doc,u),m;if(d==e){if(tv(n,u))return{changes:{insert:e+e,from:u},effects:kl.of(u+e.length),range:we.cursor(u+e.length)};if(pC(n,u)){let O=t&&n.sliceDoc(u,u+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:u,to:u+O.length,insert:O},range:we.cursor(u+O.length)}}}else{if(t&&n.sliceDoc(u-2*e.length,u)==e+e&&(m=nv(n,u-2*e.length,i))>-1&&tv(n,m))return{changes:{insert:e+e+e+e,from:u},effects:kl.of(u+e.length),range:we.cursor(u+e.length)};if(n.charCategorizer(u)(d)!=Vt.Word&&nv(n,u,i)>-1&&!HX(n,u,e,i))return{changes:{insert:e+e,from:u},effects:kl.of(u+e.length),range:we.cursor(u+e.length)}}return{range:a=o}});return a?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function tv(n,e){let t=tn(n).resolveInner(e+1);return t.parent&&t.from==e}function HX(n,e,t,r){let i=tn(n).resolveInner(e,-1),a=r.reduce((s,o)=>Math.max(s,o.length),0);for(let s=0;s<5;s++){let o=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+a)),u=o.indexOf(t);if(!u||u>-1&&r.indexOf(o.slice(0,u))>-1){let m=i.firstChild;for(;m&&m.from==i.from&&m.to-m.from>t.length+u;){if(n.sliceDoc(m.to-t.length,m.to)==t)return!1;m=m.firstChild}return!0}let d=i.to==e&&i.parent;if(!d)break;i=d}return!1}function nv(n,e,t){let r=n.charCategorizer(e);if(r(n.sliceDoc(e-1,e))!=Vt.Word)return e;for(let i of t){let a=e-i.length;if(n.sliceDoc(a,e)==i&&r(n.sliceDoc(a-1,a))!=Vt.Word)return a}return-1}const rv=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class Mc{constructor(e,t,r=0,i=e.length,a,s){this.test=s,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(r,i),this.bufferStart=r,this.normalize=a?o=>a(rv(o)):rv,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return Hl(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=J9(e),r=this.bufferStart+this.bufferPos;this.bufferPos+=nf(e);let i=this.normalize(t);if(i.length)for(let a=0,s=r,o=!0;;a++){let u=i.charCodeAt(a),d=this.match(u,s,o,this.bufferPos+this.bufferStart,a==i.length-1);if(d)return this.value=d,this;if(a==i.length-1)break;o&&a<t.length&&t.charCodeAt(a)==u?s++:o=!1}}}match(e,t,r,i,a){let s=null;for(let o=0;o<this.matches.length;){let u=this.matches[o],d=!1;this.query.charCodeAt(u.index)==e&&(u.index==this.query.length-1?s={from:u.from,to:i,precise:a&&u.precise}:(u.index++,d=!0)),d?o++:this.matches.splice(o,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?s={from:t,to:i,precise:r&&a}:this.matches.push({from:t,index:1,precise:r})),s&&this.test&&!this.test(s.from,s.to,this.buffer,this.bufferStart)&&(s=null),s}}typeof Symbol<"u"&&(Mc.prototype[Symbol.iterator]=function(){return this});const gC={from:-1,to:-1,match:/.*/.exec(""),precise:!0},t4="gm"+(/x/.unicode==null?"":"u");class OC{constructor(e,t,r,i=0,a=e.length){if(this.text=e,this.to=a,this.curLine="",this.done=!1,this.value=gC,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new yC(e,t,r,i,a);this.re=new RegExp(t,t4+(r!=null&&r.ignoreCase?"i":"")),this.test=r==null?void 0:r.test,this.iter=e.iter();let s=e.lineAt(i);this.curLineStart=s.from,this.matchPos=c1(e,i),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let r=this.curLineStart+t.index,i=r+t[0].length;if(this.matchPos=c1(this.text,i+(r==i?1:0)),r==this.curLineStart+this.curLine.length&&this.nextLine(),(r<i||r>this.value.to)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,precise:!0,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const O2=new WeakMap;class Oc{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,r){let i=O2.get(e);if(!i||i.from>=r||i.to<=t){let o=new Oc(t,e.sliceString(t,r));return O2.set(e,o),o}if(i.from==t&&i.to==r)return i;let{text:a,from:s}=i;return s>t&&(a=e.sliceString(t,s)+a,s=t),i.to<r&&(a+=e.sliceString(i.to,r)),O2.set(e,new Oc(s,a)),new Oc(t,a.slice(t-s,r-s))}}class yC{constructor(e,t,r,i,a){this.text=e,this.to=a,this.done=!1,this.value=gC,this.matchPos=c1(e,i),this.re=new RegExp(t,t4+(r!=null&&r.ignoreCase?"i":"")),this.test=r==null?void 0:r.test,this.flat=Oc.get(e,i,this.chunkEnd(i+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let r=this.flat.from+t.index,i=r+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,precise:!0,match:t},this.matchPos=c1(this.text,i+(r==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Oc.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(OC.prototype[Symbol.iterator]=yC.prototype[Symbol.iterator]=function(){return this});function FX(n){try{return new RegExp(n,t4),!0}catch{return!1}}function c1(n,e){if(e>=n.length)return e;let t=n.lineAt(e),r;for(;e<t.to&&(r=t.text.charCodeAt(e-t.from))>=56320&&r<57344;)e++;return e}const XX=n=>{let{state:e}=n,t=String(e.doc.lineAt(n.state.selection.main.head).number),{close:r,result:i}=jB(n,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:t},focus:!0,submitLabel:e.phrase("go")});return i.then(a=>{let s=a&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(a.elements.line.value);if(!s){n.dispatch({effects:r});return}let o=e.doc.lineAt(e.selection.main.head),[,u,d,m,p]=s,O=m?+m.slice(1):0,b=d?+d:o.number;if(d&&p){let T=b/100;u&&(T=T*(u=="-"?-1:1)+o.number/e.doc.lines),b=Math.round(e.doc.lines*T)}else d&&u&&(b=b*(u=="-"?-1:1)+o.number);let S=e.doc.line(Math.max(1,Math.min(e.doc.lines,b))),k=we.cursor(S.from+Math.max(0,Math.min(O,S.length)));n.dispatch({effects:[r,Le.scrollIntoView(k.from,{y:"center"})],selection:k})}),!0},UX={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},qX=ze.define({combine(n){return Zc(n,UX,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function YX(n){return[eU,JX]}const WX=Je.mark({class:"cm-selectionMatch"}),GX=Je.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function iv(n,e,t,r){return(t==0||n(e.sliceDoc(t-1,t))!=Vt.Word)&&(r==e.doc.length||n(e.sliceDoc(r,r+1))!=Vt.Word)}function KX(n,e,t,r){return n(e.sliceDoc(t,t+1))==Vt.Word&&n(e.sliceDoc(r-1,r))==Vt.Word}const JX=ur.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.selectionSet||n.docChanged||n.viewportChanged)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=n.state.facet(qX),{state:t}=n,r=t.selection;if(r.ranges.length>1)return Je.none;let i=r.main,a,s=null;if(i.empty){if(!e.highlightWordAroundCursor)return Je.none;let u=t.wordAt(i.head);if(!u)return Je.none;s=t.charCategorizer(i.head),a=t.sliceDoc(u.from,u.to)}else{let u=i.to-i.from;if(u<e.minSelectionLength||u>200)return Je.none;if(e.wholeWords){if(a=t.sliceDoc(i.from,i.to),s=t.charCategorizer(i.head),!(iv(s,t,i.from,i.to)&&KX(s,t,i.from,i.to)))return Je.none}else if(a=t.sliceDoc(i.from,i.to),!a)return Je.none}let o=[];for(let u of n.visibleRanges){let d=new Mc(t.doc,a,u.from,u.to);for(;!d.next().done;){let{from:m,to:p}=d.value;if((!s||iv(s,t,m,p))&&(i.empty&&m<=i.from&&p>=i.to?o.push(GX.range(m,p)):(m>=i.to||p<=i.from)&&o.push(WX.range(m,p)),o.length>e.maxMatches))return Je.none}}return Je.set(o)}},{decorations:n=>n.decorations}),eU=Le.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),tU=({state:n,dispatch:e})=>{let{selection:t}=n,r=we.create(t.ranges.map(i=>n.wordAt(i.head)||we.cursor(i.head)),t.mainIndex);return r.eq(t)?!1:(e(n.update({selection:r})),!0)};function nU(n,e){let{main:t,ranges:r}=n.selection,i=n.wordAt(t.head),a=i&&i.from==t.from&&i.to==t.to;for(let s=!1,o=new Mc(n.doc,e,r[r.length-1].to);;)if(o.next(),o.done){if(s)return null;o=new Mc(n.doc,e,0,Math.max(0,r[r.length-1].from-1)),s=!0}else{if(s&&r.some(u=>u.from==o.value.from))continue;if(a){let u=n.wordAt(o.value.from);if(!u||u.from!=o.value.from||u.to!=o.value.to)continue}return o.value}}const rU=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(a=>a.from===a.to))return tU({state:n,dispatch:e});let r=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(a=>n.sliceDoc(a.from,a.to)!=r))return!1;let i=nU(n,r);return i?(e(n.update({selection:n.selection.addRange(we.range(i.from,i.to),!1),effects:Le.scrollIntoView(i.to)})),!0):!1},Ic=ze.define({combine(n){return Zc(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new OU(e),scrollToMatch:e=>Le.scrollIntoView(e)})}});class bC{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||FX(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,r)=>r=="n"?`
348
- `:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new cU(this):new sU(this)}getCursor(e,t=0,r){let i=e.doc?e:dt.create({doc:e});return r==null&&(r=i.doc.length),this.regexp?Uo(this,i,t,r):Xo(this,i,t,r)}}class xC{constructor(e){this.spec=e}}function iU(n,e,t){return(r,i,a,s)=>{if(t&&!t(r,i,a,s))return!1;let o=r>=s&&i<=s+a.length?a.slice(r-s,i-s):e.doc.sliceString(r,i);return n(o,e,r,i)}}function Xo(n,e,t,r){let i;return n.wholeWord&&(i=aU(e.doc,e.charCategorizer(e.selection.main.head))),n.test&&(i=iU(n.test,e,i)),new Mc(e.doc,n.unquoted,t,r,n.caseSensitive?void 0:a=>a.toLowerCase(),i)}function aU(n,e){return(t,r,i,a)=>((a>t||a+i.length<r)&&(a=Math.max(0,t-2),i=n.sliceString(a,Math.min(n.length,r+2))),(e(u1(i,t-a))!=Vt.Word||e(f1(i,t-a))!=Vt.Word)&&(e(f1(i,r-a))!=Vt.Word||e(u1(i,r-a))!=Vt.Word))}class sU extends xC{constructor(e){super(e)}nextMatch(e,t,r){let i=Xo(this.spec,e,r,e.doc.length).nextOverlapping();if(i.done){let a=Math.min(e.doc.length,t+this.spec.unquoted.length);i=Xo(this.spec,e,0,a).nextOverlapping()}return i.done||i.value.from==t&&i.value.to==r?null:i.value}prevMatchInRange(e,t,r){for(let i=r;;){let a=Math.max(t,i-1e4-this.spec.unquoted.length),s=Xo(this.spec,e,a,i),o=null;for(;!s.nextOverlapping().done;)o=s.value;if(o)return o;if(a==t)return null;i-=1e4}}prevMatch(e,t,r){let i=this.prevMatchInRange(e,0,t);return i||(i=this.prevMatchInRange(e,Math.max(0,r-this.spec.unquoted.length),e.doc.length)),i&&(i.from!=t||i.to!=r)?i:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=Xo(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let a=Xo(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!a.next().done;)i(a.value.from,a.value.to)}}function lU(n,e,t){return(r,i,a)=>(!t||t(r,i,a))&&n(a[0],e,r,i)}function Uo(n,e,t,r){let i;return n.wholeWord&&(i=oU(e.charCategorizer(e.selection.main.head))),n.test&&(i=lU(n.test,e,i)),new OC(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:i},t,r)}function u1(n,e){return n.slice(xn(n,e,!1),e)}function f1(n,e){return n.slice(e,xn(n,e))}function oU(n){return(e,t,r)=>!r[0].length||(n(u1(r.input,r.index))!=Vt.Word||n(f1(r.input,r.index))!=Vt.Word)&&(n(f1(r.input,r.index+r[0].length))!=Vt.Word||n(u1(r.input,r.index+r[0].length))!=Vt.Word)}class cU extends xC{nextMatch(e,t,r){let i=Uo(this.spec,e,r,e.doc.length).next();return i.done&&(i=Uo(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=1;;i++){let a=Math.max(t,r-i*1e4),s=Uo(this.spec,e,a,r),o=null;for(;!s.next().done;)o=s.value;if(o&&(a==t||o.from>a+10))return o;if(a==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,r)=>{if(r=="&")return e.match[0];if(r=="$")return"$";for(let i=r.length;i>0;i--){let a=+r.slice(0,i);if(a>0&&a<e.match.length)return e.match[a]+r.slice(i)}return t})}matchAll(e,t){let r=Uo(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let a=Uo(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!a.next().done;)i(a.value.from,a.value.to)}}const U0=mt.define(),n4=mt.define(),Qs=_r.define({create(n){return new y2(vO(n).create(),null)},update(n,e){for(let t of e.effects)t.is(U0)?n=new y2(t.value.create(),n.panel):t.is(n4)&&(n=new y2(n.query,t.value?r4:null));return n},provide:n=>n1.from(n,e=>e.panel)});class y2{constructor(e,t){this.query=e,this.panel=t}}const uU=Je.mark({class:"cm-searchMatch"}),fU=Je.mark({class:"cm-searchMatch cm-searchMatch-selected"}),dU=ur.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(Qs))}update(n){let e=n.state.field(Qs);(e!=n.startState.field(Qs)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return Je.none;let{view:t}=this,r=new Vl;for(let i=0,a=t.visibleRanges,s=a.length;i<s;i++){let{from:o,to:u}=a[i];for(;i<s-1&&u>a[i+1].from-500;)u=a[++i].to;n.highlight(t.state,o,u,(d,m)=>{let p=t.state.selection.ranges.some(O=>O.from==d&&O.to==m);r.add(d,m,p?fU:uU)})}return r.finish()}},{decorations:n=>n.decorations});function uf(n){return e=>{let t=e.state.field(Qs,!1);return t&&t.query.spec.valid?n(e,t):vC(e)}}const d1=uf((n,{query:e})=>{let{to:t}=n.state.selection.main,r=e.nextMatch(n.state,t,t);if(!r)return!1;let i=we.single(r.from,r.to),a=n.state.facet(Ic);return n.dispatch({selection:i,effects:[i4(n,r),a.scrollToMatch(i.main,n)],userEvent:"select.search"}),kC(n),!0}),h1=uf((n,{query:e})=>{let{state:t}=n,{from:r}=t.selection.main,i=e.prevMatch(t,r,r);if(!i)return!1;let a=we.single(i.from,i.to),s=n.state.facet(Ic);return n.dispatch({selection:a,effects:[i4(n,i),s.scrollToMatch(a.main,n)],userEvent:"select.search"}),kC(n),!0}),hU=uf((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:we.create(t.map(r=>we.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),mU=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:r,to:i}=t.main,a=[],s=0;for(let o=new Mc(n.doc,n.sliceDoc(r,i));!o.next().done;){if(a.length>1e3)return!1;o.value.from==r&&(s=a.length),a.push(we.range(o.value.from,o.value.to))}return e(n.update({selection:we.create(a,s),userEvent:"select.search.matches"})),!0},av=uf((n,{query:e})=>{let{state:t}=n,{from:r,to:i}=t.selection.main;if(t.readOnly)return!1;let a=e.nextMatch(t,r,r);if(!a)return!1;let s=a,o=[],u,d,m=[];s.precise?s.from==r&&s.to==i&&(d=t.toText(e.getReplacement(s)),o.push({from:s.from,to:s.to,insert:d}),m.push(Le.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(r).number)+"."))):s=e.nextMatch(t,s.from,s.to);let p=n.state.changes(o);return s&&(u=we.single(s.from,s.to).map(p),m.push(i4(n,s)),m.push(t.facet(Ic).scrollToMatch(u.main,n))),n.dispatch({changes:p,selection:u,effects:m,userEvent:"input.replace"}),!0}),pU=uf((n,{query:e})=>{if(n.state.readOnly)return!1;let t=[];for(let i of e.matchAll(n.state,1e9)){let{from:a,to:s,precise:o}=i;o&&t.push({from:a,to:s,insert:e.getReplacement(i)})}if(!t.length)return!1;let r=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:Le.announce.of(r),userEvent:"input.replace.all"}),!0});function r4(n){return n.state.facet(Ic).createPanel(n)}function vO(n,e){var t,r,i,a,s;let o=n.selection.main,u=o.empty||o.to>o.from+100?"":n.sliceDoc(o.from,o.to);if(e&&!u)return e;let d=n.facet(Ic);return new bC({search:((t=e==null?void 0:e.literal)!==null&&t!==void 0?t:d.literal)?u:u.replace(/\n/g,"\\n"),caseSensitive:(r=e==null?void 0:e.caseSensitive)!==null&&r!==void 0?r:d.caseSensitive,literal:(i=e==null?void 0:e.literal)!==null&&i!==void 0?i:d.literal,regexp:(a=e==null?void 0:e.regexp)!==null&&a!==void 0?a:d.regexp,wholeWord:(s=e==null?void 0:e.wholeWord)!==null&&s!==void 0?s:d.wholeWord})}function SC(n){let e=lP(n,r4);return e&&e.dom.querySelector("[main-field]")}function kC(n){let e=SC(n);e&&e==n.root.activeElement&&e.select()}const vC=n=>{let e=n.state.field(Qs,!1);if(e&&e.panel){let t=SC(n);if(t&&t!=n.root.activeElement){let r=vO(n.state,e.query.spec);r.valid&&n.dispatch({effects:U0.of(r)}),t.focus(),t.select()}}else n.dispatch({effects:[n4.of(!0),e?U0.of(vO(n.state,e.query.spec)):mt.appendConfig.of(bU)]});return!0},wC=n=>{let e=n.state.field(Qs,!1);if(!e||!e.panel)return!1;let t=lP(n,r4);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:n4.of(!1)}),!0},gU=[{key:"Mod-f",run:vC,scope:"editor search-panel"},{key:"F3",run:d1,shift:h1,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:d1,shift:h1,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:wC,scope:"editor search-panel"},{key:"Mod-Shift-l",run:mU},{key:"Mod-Alt-g",run:XX},{key:"Mod-d",run:rU,preventDefault:!0}];class OU{constructor(e){this.view=e;let t=this.query=e.state.field(Qs).query.spec;this.commit=this.commit.bind(this),this.searchField=On("input",{value:t.search,placeholder:wr(e,"Find"),"aria-label":wr(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=On("input",{value:t.replace,placeholder:wr(e,"Replace"),"aria-label":wr(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=On("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=On("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=On("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function r(i,a,s){return On("button",{class:"cm-button",name:i,onclick:a,type:"button"},s)}this.dom=On("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,r("next",()=>d1(e),[wr(e,"next")]),r("prev",()=>h1(e),[wr(e,"previous")]),r("select",()=>hU(e),[wr(e,"all")]),On("label",null,[this.caseField,wr(e,"match case")]),On("label",null,[this.reField,wr(e,"regexp")]),On("label",null,[this.wordField,wr(e,"by word")]),...e.state.readOnly?[]:[On("br"),this.replaceField,r("replace",()=>av(e),[wr(e,"replace")]),r("replaceAll",()=>pU(e),[wr(e,"replace all")])],On("button",{name:"close",onclick:()=>wC(e),"aria-label":wr(e,"close"),type:"button"},["×"])])}commit(){let e=new bC({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:U0.of(e)}))}keydown(e){MB(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?h1:d1)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),av(this.view))}update(e){for(let t of e.transactions)for(let r of t.effects)r.is(U0)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(Ic).top}}function wr(n,e){return n.state.phrase(e)}const th=30,nh=/[\s\.,:;?!]/;function i4(n,{from:e,to:t}){let r=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,a=Math.max(r.from,e-th),s=Math.min(i,t+th),o=n.state.sliceDoc(a,s);if(a!=r.from){for(let u=0;u<th;u++)if(!nh.test(o[u+1])&&nh.test(o[u])){o=o.slice(u);break}}if(s!=i){for(let u=o.length-1;u>o.length-th;u--)if(!nh.test(o[u-1])&&nh.test(o[u])){o=o.slice(0,u);break}}return Le.announce.of(`${n.state.phrase("current match")}. ${o} ${n.state.phrase("on line")} ${r.number}.`)}const yU=Le.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),bU=[Qs,rf.low(dU),yU],xU="#e5c07b",sv="#e06c75",SU="#56b6c2",kU="#ffffff",Ch="#abb2bf",wO="#7d8799",vU="#61afef",wU="#98c379",lv="#d19a66",TU="#c678dd",AU="#21252b",ov="#2c313a",cv="#282c34",b2="#353a42",PU="#3E4451",uv="#528bff",CU=Le.theme({"&":{color:Ch,backgroundColor:cv},".cm-content":{caretColor:uv},".cm-cursor, .cm-dropCursor":{borderLeftColor:uv},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:PU},".cm-panels":{backgroundColor:AU,color:Ch},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:cv,color:wO,border:"none"},".cm-activeLineGutter":{backgroundColor:ov},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:b2},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:b2,borderBottomColor:b2},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:ov,color:Ch}}},{dark:!0}),EU=W1.define([{tag:ne.keyword,color:TU},{tag:[ne.name,ne.deleted,ne.character,ne.propertyName,ne.macroName],color:sv},{tag:[ne.function(ne.variableName),ne.labelName],color:vU},{tag:[ne.color,ne.constant(ne.name),ne.standard(ne.name)],color:lv},{tag:[ne.definition(ne.name),ne.separator],color:Ch},{tag:[ne.typeName,ne.className,ne.number,ne.changed,ne.annotation,ne.modifier,ne.self,ne.namespace],color:xU},{tag:[ne.operator,ne.operatorKeyword,ne.url,ne.escape,ne.regexp,ne.link,ne.special(ne.string)],color:SU},{tag:[ne.meta,ne.comment],color:wO},{tag:ne.strong,fontWeight:"bold"},{tag:ne.emphasis,fontStyle:"italic"},{tag:ne.strikethrough,textDecoration:"line-through"},{tag:ne.link,color:wO,textDecoration:"underline"},{tag:ne.heading,fontWeight:"bold",color:sv},{tag:[ne.atom,ne.bool,ne.special(ne.variableName)],color:lv},{tag:[ne.processingInstruction,ne.string,ne.inserted],color:wU},{tag:ne.invalid,color:kU}]),MU=[CU,BH(EU)];var fv={};class m1{constructor(e,t,r,i,a,s,o,u,d,m=0,p){this.p=e,this.stack=t,this.state=r,this.reducePos=i,this.pos=a,this.score=s,this.buffer=o,this.bufferBase=u,this.curContext=d,this.lookAhead=m,this.parent=p}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,r=0){let i=e.parser.context;return new m1(e,[],t,r,r,0,[],0,i?new dv(i,i.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let r=e>>19,i=e&65535,{parser:a}=this.p,s=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),o=a.dynamicPrecedence(i);if(o&&(this.score+=o),r==0){i<a.minRepeatTerm&&this.reducePos<this.pos&&(this.reducePos=this.pos),this.pushState(a.getGoto(this.state,i,!0),this.reducePos),i<a.minRepeatTerm&&this.storeNode(i,this.reducePos,this.reducePos,s?8:4,!0),this.reduceContext(i,this.reducePos);return}let u=this.stack.length-(r-1)*3-(e&262144?6:0),d=u?this.stack[u-2]:this.p.ranges[0].from;i<a.minRepeatTerm&&d==this.reducePos&&this.reducePos<this.pos&&(this.reducePos=this.pos);let m=this.reducePos-d;m>=2e3&&!(!((t=this.p.parser.nodeSet.types[i])===null||t===void 0)&&t.isAnonymous)&&(d==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=m):this.p.lastBigReductionSize<m&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=d,this.p.lastBigReductionSize=m));let p=u?this.stack[u-1]:0,O=this.bufferBase+this.buffer.length-p;if(i<a.minRepeatTerm||e&131072){let b=a.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(i,d,b,O+4,!0)}if(e&262144)this.state=this.stack[u];else{let b=this.stack[u-3];this.state=a.getGoto(b,i,!0)}for(;this.stack.length>u;)this.stack.pop();this.reduceContext(i,d)}storeNode(e,t,r,i=4,a=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let s=this.buffer.length;if(s>0&&this.buffer[s-4]==0&&this.buffer[s-1]>-1){if(t==r)return;if(this.buffer[s-2]>=t){this.buffer[s-2]=r;return}}}if(!a||this.pos==r)this.buffer.push(e,t,r,i);else{let s=this.buffer.length;if(s>0&&(this.buffer[s-4]!=0||this.buffer[s-1]<0)){let o=!1;for(let u=s;u>0&&this.buffer[u-2]>r;u-=4)if(this.buffer[u-1]>=0){o=!0;break}if(o)for(;s>0&&this.buffer[s-2]>r;)this.buffer[s]=this.buffer[s-4],this.buffer[s+1]=this.buffer[s-3],this.buffer[s+2]=this.buffer[s-2],this.buffer[s+3]=this.buffer[s-1],s-=4,i>4&&(i-=4)}this.buffer[s]=e,this.buffer[s+1]=t,this.buffer[s+2]=r,this.buffer[s+3]=i}}shift(e,t,r,i){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let a=e,{parser:s}=this.p;this.pos=i;let o=s.stateFlag(a,1);!o&&(i>r||t<=s.maxNode)&&(this.reducePos=i),this.pushState(a,o?r:Math.min(r,this.reducePos)),this.shiftContext(t,r),t<=s.maxNode&&this.buffer.push(t,r,i,4)}else this.pos=i,this.shiftContext(t,r),t<=this.p.parser.maxNode&&this.buffer.push(t,r,i,4)}apply(e,t,r,i){e&65536?this.reduce(e):this.shift(e,t,r,i)}useNode(e,t){let r=this.p.reused.length-1;(r<0||this.p.reused[r]!=e)&&(this.p.reused.push(e),r++);let i=this.pos;this.reducePos=this.pos=i+e.length,this.pushState(t,i),this.buffer.push(r,i,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(t&&e.buffer[t-4]==0&&(t-=4);t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let r=e.buffer.slice(t),i=e.bufferBase+t;for(;e&&i==e.bufferBase;)e=e.parent;return new m1(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,r,i,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let r=e<=this.p.parser.maxNode;r&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,r?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new $U(this);;){let r=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(r==0)return!1;if((r&65536)==0)return!0;t.reduce(r)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let i=[];for(let a=0,s;a<t.length;a+=2)(s=t[a+1])!=this.state&&this.p.parser.hasAction(s,e)&&i.push(t[a],s);if(this.stack.length<120)for(let a=0;i.length<8&&a<t.length;a+=2){let s=t[a+1];i.some((o,u)=>u&1&&o==s)||i.push(t[a],s)}t=i}let r=[];for(let i=0;i<t.length&&r.length<4;i+=2){let a=t[i+1];if(a==this.state)continue;let s=this.split();s.pushState(a,this.pos),s.storeNode(0,s.pos,s.pos,4,!0),s.shiftContext(t[i],this.pos),s.reducePos=this.pos,s.score-=200,r.push(s)}return r}forceReduce(){let{parser:e}=this.p,t=e.stateSlot(this.state,5);if((t&65536)==0)return!1;if(!e.validAction(this.state,t)){let r=t>>19,i=t&65535,a=this.stack.length-r*3;if(a<0||e.getGoto(this.stack[a],i,!1)<0){let s=this.findForcedReduction();if(s==null)return!1;t=s}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],r=(i,a)=>{if(!t.includes(i))return t.push(i),e.allActions(i,s=>{if(!(s&393216))if(s&65536){let o=(s>>19)-a;if(o>1){let u=s&65535,d=this.stack.length-o*3;if(d>=0&&e.getGoto(this.stack[d],u,!1)>=0)return o<<19|65536|u}}else{let o=r(s,a+1);if(o!=null)return o}})};return r(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;t<this.stack.length;t+=3)if(this.stack[t]!=e.stack[t])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(t)))}reduceContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(t)))}emitContext(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(e){if(e!=this.curContext.context){let t=new dv(this.curContext.tracker,e);t.hash!=this.curContext.hash&&this.emitContext(),this.curContext=t}}setLookAhead(e){return e<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=e,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class dv{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class $U{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,r=e>>19;r==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(r-1)*3;let i=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=i}}class p1{constructor(e,t,r){this.stack=e,this.pos=t,this.index=r,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new p1(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new p1(this.stack,this.pos,this.index)}}function r0(n,e=Uint16Array){if(typeof n!="string")return n;let t=null;for(let r=0,i=0;r<n.length;){let a=0;for(;;){let s=n.charCodeAt(r++),o=!1;if(s==126){a=65535;break}s>=92&&s--,s>=34&&s--;let u=s-32;if(u>=46&&(u-=46,o=!0),a+=u,o)break;a*=46}t?t[i++]=a:t=new e(a)}return t}class Eh{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const hv=new Eh;class RU{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=hv,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let r=this.range,i=this.rangeIndex,a=this.pos+e;for(;a<r.from;){if(!i)return null;let s=this.ranges[--i];a-=r.from-s.to,r=s}for(;t<0?a>r.to:a>=r.to;){if(i==this.ranges.length-1)return null;let s=this.ranges[++i];a+=s.from-r.to,r=s}return a}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let t of this.ranges)if(t.to>e)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,r,i;if(t>=0&&t<this.chunk.length)r=this.pos+e,i=this.chunk.charCodeAt(t);else{let a=this.resolveOffset(e,1);if(a==null)return-1;if(r=a,r>=this.chunk2Pos&&r<this.chunk2Pos+this.chunk2.length)i=this.chunk2.charCodeAt(r-this.chunk2Pos);else{let s=this.rangeIndex,o=this.range;for(;o.to<=r;)o=this.ranges[++s];this.chunk2=this.input.chunk(this.chunk2Pos=r),r+this.chunk2.length>o.to&&(this.chunk2=this.chunk2.slice(0,o.to-r)),i=this.chunk2.charCodeAt(0)}}return r>=this.token.lookAhead&&(this.token.lookAhead=r+1),i}acceptToken(e,t=0){let r=t?this.resolveOffset(t,-1):this.pos;if(r==null||r<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=r}acceptTokenTo(e,t){this.token.value=e,this.token.end=t}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:t}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=t,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),t=this.pos+e.length;this.chunk=t>this.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=hv,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;e>=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e<this.chunkPos+this.chunk.length?this.chunkOff=e-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(e,t){if(e>=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let r="";for(let i of this.ranges){if(i.from>=t)break;i.to>e&&(r+=this.input.read(Math.max(i.from,e),Math.min(i.to,t)))}return r}}class yc{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:r}=t.p;TC(this.data,e,t,this.id,r.data,r.tokenPrecTable)}}yc.prototype.contextual=yc.prototype.fallback=yc.prototype.extend=!1;class g1{constructor(e,t,r){this.precTable=t,this.elseToken=r,this.data=typeof e=="string"?r0(e):e}token(e,t){let r=e.pos,i=0;for(;;){let a=e.next<0,s=e.resolveOffset(1,1);if(TC(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(a||i++,s==null)break;e.reset(s,e.token)}i&&(e.reset(r,e.token),e.acceptToken(this.elseToken,i))}}g1.prototype.contextual=yc.prototype.fallback=yc.prototype.extend=!1;class Nr{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function TC(n,e,t,r,i,a){let s=0,o=1<<r,{dialect:u}=t.p.parser;e:for(;(o&n[s])!=0;){let d=n[s+1];for(let b=s+3;b<d;b+=2)if((n[b+1]&o)>0){let S=n[b];if(u.allows(S)&&(e.token.value==-1||e.token.value==S||QU(S,e.token.value,i,a))){e.acceptToken(S);break}}let m=e.next,p=0,O=n[s+2];if(e.next<0&&O>p&&n[d+O*3-3]==65535){s=n[d+O*3-1];continue e}for(;p<O;){let b=p+O>>1,S=d+b+(b<<1),k=n[S],T=n[S+1]||65536;if(m<k)O=b;else if(m>=T)p=b+1;else{s=n[S+2],e.advance();continue e}}break}}function mv(n,e,t){for(let r=e,i;(i=n[r])!=65535;r++)if(i==t)return r-e;return-1}function QU(n,e,t,r){let i=mv(t,r,e);return i<0||mv(t,r,n)<i}const Tr=typeof process<"u"&&fv&&/\bparse\b/.test(fv.LOG);let x2=null;function pv(n,e,t){let r=n.cursor(bt.IncludeAnonymous);for(r.moveTo(e);;)if(!(t<0?r.childBefore(e):r.childAfter(e)))for(;;){if((t<0?r.to<e:r.from>e)&&!r.type.isError)return t<0?Math.max(0,Math.min(r.to-1,e-25)):Math.min(n.length,Math.max(r.from+1,e+25));if(t<0?r.prevSibling():r.nextSibling())break;if(!r.parent())return t<0?0:n.length}}class _U{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?pv(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?pv(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(e<this.nextStart)return null;for(;this.fragment&&this.safeTo<=e;)this.nextFragment();if(!this.fragment)return null;for(;;){let t=this.trees.length-1;if(t<0)return this.nextFragment(),null;let r=this.trees[t],i=this.index[t];if(i==r.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let a=r.children[i],s=this.start[t]+r.positions[i];if(s>e)return this.nextStart=s,null;if(a instanceof It){if(s==e){if(s<this.safeFrom)return null;let o=s+a.length;if(o<=this.safeTo){let u=a.prop(rt.lookAhead);if(!u||o+u<this.fragment.to)return a}}this.index[t]++,s+a.length>=Math.max(this.safeFrom,e)&&(this.trees.push(a),this.start.push(s),this.index.push(0))}else this.index[t]++,this.nextStart=s+a.length}}}class NU{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(r=>new Eh)}getActions(e){let t=0,r=null,{parser:i}=e.p,{tokenizers:a}=i,s=i.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,u=0;for(let d=0;d<a.length;d++){if((1<<d&s)==0)continue;let m=a[d],p=this.tokens[d];if(!(r&&!m.fallback)&&((m.contextual||p.start!=e.pos||p.mask!=s||p.context!=o)&&(this.updateCachedToken(p,m,e),p.mask=s,p.context=o),p.lookAhead>p.end+25&&(u=Math.max(p.lookAhead,u)),p.value!=0)){let O=t;if(p.extended>-1&&(t=this.addActions(e,p.extended,p.end,t)),t=this.addActions(e,p.value,p.end,t),!m.extend&&(r=p,t>O))break}}for(;this.actions.length>t;)this.actions.pop();return u&&e.setLookAhead(u),!r&&e.pos==this.stream.end&&(r=new Eh,r.value=e.p.parser.eofTerm,r.start=r.end=e.pos,t=this.addActions(e,r.value,r.end,t)),this.mainToken=r,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Eh,{pos:r,p:i}=e;return t.start=r,t.end=Math.min(r+1,i.stream.end),t.value=r==i.stream.end?i.parser.eofTerm:0,t}updateCachedToken(e,t,r){let i=this.stream.clipPos(r.pos);if(t.token(this.stream.reset(i,e),r),e.value>-1){let{parser:a}=r.p;for(let s=0;s<a.specialized.length;s++)if(a.specialized[s]==e.value){let o=a.specializers[s](this.stream.read(e.start,e.end),r);if(o>=0&&r.p.parser.dialect.allows(o>>1)){(o&1)==0?e.value=o>>1:e.extended=o>>1;break}}}else e.value=0,e.end=this.stream.clipPos(i+1)}putAction(e,t,r,i){for(let a=0;a<i;a+=3)if(this.actions[a]==e)return i;return this.actions[i++]=e,this.actions[i++]=t,this.actions[i++]=r,i}addActions(e,t,r,i){let{state:a}=e,{parser:s}=e.p,{data:o}=s;for(let u=0;u<2;u++)for(let d=s.stateSlot(a,u?2:1);;d+=3){if(o[d]==65535)if(o[d+1]==1)d=Ea(o,d+2);else{i==0&&o[d+1]==2&&(i=this.putAction(Ea(o,d+2),t,r,i));break}o[d]==t&&(i=this.putAction(Ea(o,d+1),t,r,i))}return i}}class jU{constructor(e,t,r,i){this.parser=e,this.input=t,this.ranges=i,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new RU(t,i),this.tokens=new NU(e,this.stream),this.topTerm=e.top[1];let{from:a}=i[0];this.stacks=[m1.start(this,e.top[0],a)],this.fragments=r.length&&this.stream.end-a>e.bufferLength*4?new _U(r,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,r=this.stacks=[],i,a;if(this.bigReductionCount>300&&e.length==1){let[s]=e;for(;s.forceReduce()&&s.stack.length&&s.stack[s.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let s=0;s<e.length;s++){let o=e[s];for(;;){if(this.tokens.mainToken=null,o.pos>t)r.push(o);else{if(this.advanceStack(o,r,e))continue;{i||(i=[],a=[]),i.push(o);let u=this.tokens.getMainToken(o);a.push(u.value,u.end)}}break}}if(!r.length){let s=i&&DU(i);if(s)return Tr&&console.log("Finish with "+this.stackID(s)),this.stackToTree(s);if(this.parser.strict)throw Tr&&i&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&i){let s=this.stoppedAt!=null&&i[0].pos>this.stoppedAt?i[0]:this.runRecovery(i,a,r);if(s)return Tr&&console.log("Force-finish "+this.stackID(s)),this.stackToTree(s.forceAll())}if(this.recovering){let s=this.recovering==1?1:this.recovering*3;if(r.length>s)for(r.sort((o,u)=>u.score-o.score);r.length>s;)r.pop();r.some(o=>o.reducePos>t)&&this.recovering--}else if(r.length>1){e:for(let s=0;s<r.length-1;s++){let o=r[s];for(let u=s+1;u<r.length;u++){let d=r[u];if(o.sameState(d)||o.buffer.length>500&&d.buffer.length>500)if((o.score-d.score||o.buffer.length-d.buffer.length)>0)r.splice(u--,1);else{r.splice(s--,1);continue e}}}r.length>12&&(r.sort((s,o)=>o.score-s.score),r.splice(12,r.length-12))}this.minStackPos=r[0].pos;for(let s=1;s<r.length;s++)r[s].pos<this.minStackPos&&(this.minStackPos=r[s].pos);return null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}advanceStack(e,t,r){let i=e.pos,{parser:a}=this,s=Tr?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&i>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let d=e.curContext&&e.curContext.tracker.strict,m=d?e.curContext.hash:0;for(let p=this.fragments.nodeAt(i);p;){let O=this.parser.nodeSet.types[p.type.id]==p.type?a.getGoto(e.state,p.type.id):-1;if(O>-1&&p.length&&(!d||(p.prop(rt.contextHash)||0)==m))return e.useNode(p,O),Tr&&console.log(s+this.stackID(e)+` (via reuse of ${a.getName(p.type.id)})`),!0;if(!(p instanceof It)||p.children.length==0||p.positions[0]>0)break;let b=p.children[0];if(b instanceof It&&p.positions[0]==0)p=b;else break}}let o=a.stateSlot(e.state,4);if(o>0)return e.reduce(o),Tr&&console.log(s+this.stackID(e)+` (via always-reduce ${a.getName(o&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let u=this.tokens.getActions(e);for(let d=0;d<u.length;){let m=u[d++],p=u[d++],O=u[d++],b=d==u.length||!r,S=b?e:e.split(),k=this.tokens.mainToken;if(S.apply(m,p,k?k.start:S.pos,O),Tr&&console.log(s+this.stackID(S)+` (via ${(m&65536)==0?"shift":`reduce of ${a.getName(m&65535)}`} for ${a.getName(p)} @ ${i}${S==e?"":", split"})`),b)return!0;S.pos>i?t.push(S):r.push(S)}return!1}advanceFully(e,t){let r=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>r)return gv(e,t),!0}}runRecovery(e,t,r){let i=null,a=!1;for(let s=0;s<e.length;s++){let o=e[s],u=t[s<<1],d=t[(s<<1)+1],m=Tr?this.stackID(o)+" -> ":"";if(o.deadEnd&&(a||(a=!0,o.restart(),Tr&&console.log(m+this.stackID(o)+" (restarted)"),this.advanceFully(o,r))))continue;let p=o.split(),O=m;for(let b=0;b<10&&p.forceReduce()&&(Tr&&console.log(O+this.stackID(p)+" (via force-reduce)"),!this.advanceFully(p,r));b++)Tr&&(O=this.stackID(p)+" -> ");for(let b of o.recoverByInsert(u))Tr&&console.log(m+this.stackID(b)+" (via recover-insert)"),this.advanceFully(b,r);this.stream.end>o.pos?(d==o.pos&&(d++,u=0),o.recoverByDelete(u,d),Tr&&console.log(m+this.stackID(o)+` (via recover-delete ${this.parser.getName(u)})`),gv(o,r)):(!i||i.score<p.score)&&(i=p)}return i}stackToTree(e){return e.close(),It.build({buffer:p1.create(e),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:e.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(e){let t=(x2||(x2=new WeakMap)).get(e);return t||x2.set(e,t=String.fromCodePoint(this.nextStackID++)),t+e}}function gv(n,e){for(let t=0;t<e.length;t++){let r=e[t];if(r.pos==n.pos&&r.sameState(n)){e[t].score<n.score&&(e[t]=n);return}}e.push(n)}class ZU{constructor(e,t,r){this.source=e,this.flags=t,this.disabled=r}allows(e){return!this.disabled||this.disabled[e]==0}}const S2=n=>n;class AC{constructor(e){this.start=e.start,this.shift=e.shift||S2,this.reduce=e.reduce||S2,this.reuse=e.reuse||S2,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class $c extends yP{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let o=0;o<e.repeatNodeCount;o++)t.push("");let r=Object.keys(e.topRules).map(o=>e.topRules[o][1]),i=[];for(let o=0;o<t.length;o++)i.push([]);function a(o,u,d){i[o].push([u,u.deserialize(String(d))])}if(e.nodeProps)for(let o of e.nodeProps){let u=o[0];typeof u=="string"&&(u=rt[u]);for(let d=1;d<o.length;){let m=o[d++];if(m>=0)a(m,u,o[d++]);else{let p=o[d+-m];for(let O=-m;O>0;O--)a(o[d++],u,p);d++}}}this.nodeSet=new V6(t.map((o,u)=>Xn.define({name:u>=this.minRepeatTerm?void 0:o,id:u,props:i[u],top:r.indexOf(u)>-1,error:u==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(u)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=hP;let s=r0(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let o=0;o<this.specializerSpecs.length;o++)this.specialized[o]=this.specializerSpecs[o].term;this.specializers=this.specializerSpecs.map(Ov),this.states=r0(e.states,Uint32Array),this.data=r0(e.stateData),this.goto=r0(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(o=>typeof o=="number"?new yc(s,o):o),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,r){let i=new jU(this,e,t,r);for(let a of this.wrappers)i=a(i,e,t,r);return i}getGoto(e,t,r=!1){let i=this.goto;if(t>=i[0])return-1;for(let a=i[t+1];;){let s=i[a++],o=s&1,u=i[a++];if(o&&r)return u;for(let d=a+(s>>1);a<d;a++)if(i[a]==e)return u;if(o)return-1}}hasAction(e,t){let r=this.data;for(let i=0;i<2;i++)for(let a=this.stateSlot(e,i?2:1),s;;a+=3){if((s=r[a])==65535)if(r[a+1]==1)s=r[a=Ea(r,a+2)];else{if(r[a+1]==2)return Ea(r,a+2);break}if(s==t||s==0)return Ea(r,a+1)}return 0}stateSlot(e,t){return this.states[e*6+t]}stateFlag(e,t){return(this.stateSlot(e,0)&t)>0}validAction(e,t){return!!this.allActions(e,r=>r==t?!0:null)}allActions(e,t){let r=this.stateSlot(e,4),i=r?t(r):void 0;for(let a=this.stateSlot(e,1);i==null;a+=3){if(this.data[a]==65535)if(this.data[a+1]==1)a=Ea(this.data,a+2);else break;i=t(Ea(this.data,a+1))}return i}nextStates(e){let t=[];for(let r=this.stateSlot(e,1);;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=Ea(this.data,r+2);else break;if((this.data[r+2]&1)==0){let i=this.data[r+1];t.some((a,s)=>s&1&&a==i)||t.push(this.data[r],i)}}return t}configure(e){let t=Object.assign(Object.create($c.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let r=this.topRules[e.top];if(!r)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=r}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(r=>{let i=e.tokenizers.find(a=>a.from==r);return i?i.to:r})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((r,i)=>{let a=e.specializers.find(o=>o.from==r.external);if(!a)return r;let s=Object.assign(Object.assign({},r),{external:a.to});return t.specializers[i]=Ov(s),s})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),r=t.map(()=>!1);if(e)for(let a of e.split(" ")){let s=t.indexOf(a);s>=0&&(r[s]=!0)}let i=null;for(let a=0;a<t.length;a++)if(!r[a])for(let s=this.dialects[t[a]],o;(o=this.data[s++])!=65535;)(i||(i=new Uint8Array(this.maxTerm+1)))[o]=1;return new ZU(e,r,i)}static deserialize(e){return new $c(e)}}function Ea(n,e){return n[e]|n[e+1]<<16}function DU(n){let e=null;for(let t of n){let r=t.p.stoppedAt;(t.pos==t.p.stream.end||r!=null&&t.pos>r)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.score<t.score)&&(e=t)}return e}function Ov(n){if(n.external){let e=n.extend?1:0;return(t,r)=>n.external(t,r)<<1|e}return n.get}const VU=55,IU=1,LU=56,zU=2,BU=57,HU=3,yv=4,FU=5,a4=6,PC=7,CC=8,EC=9,MC=10,XU=11,UU=12,qU=13,k2=58,YU=14,WU=15,bv=59,$C=21,GU=23,RC=24,KU=25,TO=27,QC=28,JU=29,eq=32,tq=35,nq=37,rq=38,iq=0,aq=1,sq={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},lq={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},xv={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function oq(n){return n==45||n==46||n==58||n>=65&&n<=90||n==95||n>=97&&n<=122||n>=161}let Sv=null,kv=null,vv=0;function AO(n,e){let t=n.pos+e;if(vv==t&&kv==n)return Sv;let r=n.peek(e),i="";for(;oq(r);)i+=String.fromCharCode(r),r=n.peek(++e);return kv=n,vv=t,Sv=i?i.toLowerCase():r==cq||r==uq?void 0:null}const _C=60,O1=62,s4=47,cq=63,uq=33,fq=45;function wv(n,e){this.name=n,this.parent=e}const dq=[a4,MC,PC,CC,EC],hq=new AC({start:null,shift(n,e,t,r){return dq.indexOf(e)>-1?new wv(AO(r,1)||"",n):n},reduce(n,e){return e==$C&&n?n.parent:n},reuse(n,e,t,r){let i=e.type.id;return i==a4||i==nq?new wv(AO(r,1)||"",n):n},strict:!1}),mq=new Nr((n,e)=>{if(n.next!=_C){n.next<0&&e.context&&n.acceptToken(k2);return}n.advance();let t=n.next==s4;t&&n.advance();let r=AO(n,0);if(r===void 0)return;if(!r)return n.acceptToken(t?WU:YU);let i=e.context?e.context.name:null;if(t){if(r==i)return n.acceptToken(XU);if(i&&lq[i])return n.acceptToken(k2,-2);if(e.dialectEnabled(iq))return n.acceptToken(UU);for(let a=e.context;a;a=a.parent)if(a.name==r)return;n.acceptToken(qU)}else{if(r=="script")return n.acceptToken(PC);if(r=="style")return n.acceptToken(CC);if(r=="textarea")return n.acceptToken(EC);if(sq.hasOwnProperty(r))return n.acceptToken(MC);i&&xv[i]&&xv[i][r]?n.acceptToken(k2,-1):n.acceptToken(a4)}},{contextual:!0}),pq=new Nr(n=>{for(let e=0,t=0;;t++){if(n.next<0){t&&n.acceptToken(bv);break}if(n.next==fq)e++;else if(n.next==O1&&e>=2){t>=3&&n.acceptToken(bv,-2);break}else e=0;n.advance()}});function gq(n){for(;n;n=n.parent)if(n.name=="svg"||n.name=="math")return!0;return!1}const Oq=new Nr((n,e)=>{if(n.next==s4&&n.peek(1)==O1){let t=e.dialectEnabled(aq)||gq(e.context);n.acceptToken(t?FU:yv,2)}else n.next==O1&&n.acceptToken(yv,1)});function l4(n,e,t){let r=2+n.length;return new Nr(i=>{for(let a=0,s=0,o=0;;o++){if(i.next<0){o&&i.acceptToken(e);break}if(a==0&&i.next==_C||a==1&&i.next==s4||a>=2&&a<r&&i.next==n.charCodeAt(a-2))a++,s++;else if(a==r&&i.next==O1){o>s?i.acceptToken(e,-s):i.acceptToken(t,-(s-2));break}else if((i.next==10||i.next==13)&&o){i.acceptToken(e,1);break}else a=s=0;i.advance()}})}const yq=l4("script",VU,IU),bq=l4("style",LU,zU),xq=l4("textarea",BU,HU),Sq=F1({"Text RawText IncompleteTag IncompleteCloseTag":ne.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":ne.angleBracket,TagName:ne.tagName,"MismatchedCloseTag/TagName":[ne.tagName,ne.invalid],AttributeName:ne.attributeName,"AttributeValue UnquotedAttributeValue":ne.attributeValue,Is:ne.definitionOperator,"EntityReference CharacterReference":ne.character,Comment:ne.blockComment,ProcessingInst:ne.processingInstruction,DoctypeDecl:ne.documentMeta}),kq=$c.deserialize({version:14,states:",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",stateData:",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~",goto:"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:68,context:hq,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,22,31,34,37,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,30,33,36,38,"OpenTag"],["group",-10,14,15,18,19,20,21,40,41,42,43,"Entity",17,"Entity TextContent",-3,29,32,35,"TextContent Entity"],["isolate",-11,22,30,31,33,34,36,37,38,39,42,43,"ltr",-3,27,28,40,""]],propSources:[Sq],skippedNodes:[0],repeatNodeCount:9,tokenData:"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",tokenizers:[yq,bq,xq,Oq,mq,pq,0,1,2,3,4,5],topRules:{Document:[0,16]},dialects:{noMatch:0,selfClosing:515},tokenPrec:517});function NC(n,e){let t=Object.create(null);for(let r of n.getChildren(RC)){let i=r.getChild(KU),a=r.getChild(TO)||r.getChild(QC);i&&(t[e.read(i.from,i.to)]=a?a.type.id==TO?e.read(a.from+1,a.to-1):e.read(a.from,a.to):"")}return t}function Tv(n,e){let t=n.getChild(GU);return t?e.read(t.from,t.to):" "}function v2(n,e,t){let r;for(let i of t)if(!i.attrs||i.attrs(r||(r=NC(n.node.parent.firstChild,e))))return{parser:i.parser,bracketed:!0};return null}function jC(n=[],e=[]){let t=[],r=[],i=[],a=[];for(let o of n)(o.tag=="script"?t:o.tag=="style"?r:o.tag=="textarea"?i:a).push(o);let s=e.length?Object.create(null):null;for(let o of e)(s[o.name]||(s[o.name]=[])).push(o);return iH((o,u)=>{let d=o.type.id;if(d==JU)return v2(o,u,t);if(d==eq)return v2(o,u,r);if(d==tq)return v2(o,u,i);if(d==$C&&a.length){let m=o.node,p=m.firstChild,O=p&&Tv(p,u),b;if(O){for(let S of a)if(S.tag==O&&(!S.attrs||S.attrs(b||(b=NC(p,u))))){let k=m.lastChild,T=k.type.id==rq?k.from:m.to;if(T>p.to)return{parser:S.parser,overlay:[{from:p.to,to:T}]}}}}if(s&&d==RC){let m=o.node,p;if(p=m.firstChild){let O=s[u.read(p.from,p.to)];if(O)for(let b of O){if(b.tagName&&b.tagName!=Tv(m.parent,u))continue;let S=m.lastChild;if(S.type.id==TO){let k=S.from+1,T=S.lastChild,w=S.to-(T&&T.isError?0:1);if(w>k)return{parser:b.parser,overlay:[{from:k,to:w}],bracketed:!0}}else if(S.type.id==QC)return{parser:b.parser,overlay:[{from:S.from,to:S.to}]}}}}return null})}const vq=135,Av=1,wq=136,Tq=137,ZC=2,Aq=138,Pq=3,Cq=4,DC=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],Eq=58,Mq=40,VC=95,$q=91,Mh=45,Rq=46,Qq=35,_q=37,Nq=38,jq=92,Zq=10,Dq=42;function q0(n){return n>=65&&n<=90||n>=97&&n<=122||n>=161}function o4(n){return n>=48&&n<=57}function Pv(n){return o4(n)||n>=97&&n<=102||n>=65&&n<=70}const IC=(n,e,t)=>(r,i)=>{for(let a=!1,s=0,o=0;;o++){let{next:u}=r;if(q0(u)||u==Mh||u==VC||a&&o4(u))!a&&(u!=Mh||o>0)&&(a=!0),s===o&&u==Mh&&s++,r.advance();else if(u==jq&&r.peek(1)!=Zq){if(r.advance(),Pv(r.next)){do r.advance();while(Pv(r.next));r.next==32&&r.advance()}else r.next>-1&&r.advance();a=!0}else{a&&r.acceptToken(s==2&&i.canShift(ZC)?e:u==Mq?t:n);break}}},Vq=new Nr(IC(wq,ZC,Tq),{contextual:!0}),Iq=new Nr(IC(Aq,Pq,Cq),{contextual:!0}),Lq=new Nr(n=>{if(DC.includes(n.peek(-1))){let{next:e}=n;(q0(e)||e==VC||e==Qq||e==Rq||e==Dq||e==$q||e==Eq&&q0(n.peek(1))||e==Mh||e==Nq)&&n.acceptToken(vq)}}),zq=new Nr(n=>{if(!DC.includes(n.peek(-1))){let{next:e}=n;if(e==_q&&(n.advance(),n.acceptToken(Av)),q0(e)){do n.advance();while(q0(n.next)||o4(n.next));n.acceptToken(Av)}}}),Bq=F1({"AtKeyword import charset namespace keyframes media supports font-feature-values":ne.definitionKeyword,"from to selector scope MatchFlag":ne.keyword,NamespaceName:ne.namespace,KeyframeName:ne.labelName,KeyframeRangeName:ne.operatorKeyword,TagName:ne.tagName,ClassName:ne.className,PseudoClassName:ne.constant(ne.className),IdName:ne.labelName,"FeatureName PropertyName":ne.propertyName,AttributeName:ne.attributeName,NumberLiteral:ne.number,KeywordQuery:ne.keyword,UnaryQueryOp:ne.operatorKeyword,"CallTag ValueName FontName":ne.atom,VariableName:ne.variableName,Callee:ne.operatorKeyword,Unit:ne.unit,"UniversalSelector NestingSelector":ne.definitionOperator,"MatchOp CompareOp":ne.compareOperator,"ChildOp SiblingOp, LogicOp":ne.logicOperator,BinOp:ne.arithmeticOperator,Important:ne.modifier,Comment:ne.blockComment,ColorLiteral:ne.color,"ParenthesizedContent StringLiteral":ne.string,":":ne.punctuation,"PseudoOp #":ne.derefOperator,"; , |":ne.separator,"( )":ne.paren,"[ ]":ne.squareBracket,"{ }":ne.brace}),Hq={__proto__:null,lang:44,"nth-child":44,"nth-last-child":44,"nth-of-type":44,"nth-last-of-type":44,dir:44,"host-context":44,if:90,url:132,"url-prefix":132,domain:132,regexp:132},Fq={__proto__:null,or:104,and:104,not:112,only:112,layer:186},Xq={__proto__:null,selector:118,layer:182},Uq={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},qq={__proto__:null,to:223},Yq=$c.deserialize({version:14,states:"IpQYQdOOO#}QdOOP$UO`OOO%OQaO'#CfOOQP'#Ce'#CeO%VQdO'#CgO%[Q`O'#CgO%aQaO'#FdO&XQdO'#CkO&xQaO'#CcO'SQdO'#CnO'_QdO'#DtO'dQdO'#DvO'oQdO'#D}O'oQdO'#EQOOQP'#Fd'#FdO)OQhO'#EsOOQS'#Fc'#FcOOQS'#Ev'#EvQYQdOOO)VQdO'#EWO*cQhO'#E^O)VQdO'#E`O*jQdO'#EbO*uQdO'#EeO)zQhO'#EkO*}QdO'#EmO+YQdO'#EpO+_QaO'#CfO+fQ`O'#ETO+kQ`O'#FnO+vQdO'#FnQOQ`OOP,QO&jO'#CaPOOO)CAR)CAROOQP'#Ci'#CiOOQP,59R,59RO%VQdO,59ROOQP'#Cm'#CmOOQP,59V,59VO&XQdO,59VO,]QdO,59YO'_QdO,5:`O'dQdO,5:bO'oQdO,5:iO'oQdO,5:kO'oQdO,5:lO'oQdO'#E}O,hQ`O,58}O,pQdO'#ESOOQS,58},58}OOQP'#Cq'#CqOOQO'#Dr'#DrOOQP,59Y,59YO,wQ`O,59YO,|Q`O,59YOOQP'#Du'#DuOOQP,5:`,5:`O-RQpO'#DwO-^QdO'#DxO-cQ`O'#DxO-hQpO,5:bO.RQaO,5:iO.iQaO,5:lOOQW'#D^'#D^O/eQhO'#DgO/xQhO,5;_O)zQhO'#DeO0VQ`O'#DkO0[QhO'#DnOOQW'#Fj'#FjOOQS,5;_,5;_O0aQ`O'#DhOOQS-E8t-E8tOOQ['#Cv'#CvO0fQdO'#CwO0|QdO'#C}O1dQdO'#DQO1zQ!pO'#DSO4TQ!jO,5:rOOQO'#DX'#DXO,|Q`O'#DWO4eQ!nO'#FgO6hQ`O'#DYO6mQ`O'#DoOOQ['#Fg'#FgO6rQhO'#FqO7QQ`O,5:xO7VQ!bO,5:zOOQS'#Ed'#EdO7_Q`O,5:|O7dQdO,5:|OOQO'#Eg'#EgO7lQ`O,5;PO7qQhO,5;VO'oQdO'#DjOOQS,5;X,5;XO0aQ`O,5;XO7yQdO,5;XOOQS'#FU'#FUO8RQdO'#ErO7QQ`O,5;[O8ZQdO,5:oO8kQdO'#FPO8xQ`O,5<YO8xQ`O,5<YPOOO'#Eu'#EuP9TO&jO,58{POOO,58{,58{OOQP1G.m1G.mOOQP1G.q1G.qOOQP1G.t1G.tO,wQ`O1G.tO,|Q`O1G.tOOQP1G/z1G/zO9`QpO1G/|O9hQaO1G0TO:OQaO1G0VO:fQaO1G0WO:|QaO,5;iOOQO-E8{-E8{OOQS1G.i1G.iO;WQ`O,5:nO;]QdO'#DsO;dQdO'#CuOOQO'#Dz'#DzOOQO,5:d,5:dO-^QdO,5:dOOQP1G/|1G/|O)VQdO1G/|O;kQ!jO'#D^O;yQ!bO,59yO<RQhO,5:ROOQO'#Fk'#FkO;|Q!bO,59}O<ZQhO'#FVO)zQhO,59{O)zQhO'#FVO=OQhO1G0yOOQS1G0y1G0yO=YQhO,5:PO>QQhO'#DlOOQW,5:V,5:VOOQW,5:Y,5:YOOQW,5:S,5:SO>[Q!fO'#FhOOQS'#Fh'#FhOOQS'#Ex'#ExO?lQdO,59cOOQ[,59c,59cO@SQdO,59iOOQ[,59i,59iO@jQdO,59lOOQ[,59l,59lOOQ[,59n,59nO)VQdO,59pOAQQhO'#EYOOQW'#EY'#EYOAlQ`O1G0^O4^QhO1G0^OOQ[,59r,59rO)zQhO'#D[OOQ[,59t,59tOAqQ#tO,5:ZOA|QhO'#FROBZQ`O,5<]OOQS1G0d1G0dOOQS1G0f1G0fOOQS1G0h1G0hOBfQ`O1G0hOBkQdO'#EhOOQS1G0k1G0kOOQS1G0q1G0qOBvQaO,5:UO7QQ`O1G0sOOQS1G0s1G0sO0aQ`O1G0sOOQS-E9S-E9SOOQS1G0v1G0vOB}Q!fO1G0ZOCeQ`O'#EVOOQO1G0Z1G0ZOOQO,5;k,5;kOCjQdO,5;kOOQO-E8}-E8}OCwQ`O1G1tPOOO-E8s-E8sPOOO1G.g1G.gOOQP7+$`7+$`OOQP7+%h7+%hO)VQdO7+%hOOQS1G0Y1G0YODSQaO'#FmOD^Q`O,5:_ODcQ!fO'#EwOEaQdO'#FfOEkQ`O,59aOOQO1G0O1G0OOEpQ!bO7+%hO)VQdO1G/eOE{QhO1G/iOOQW1G/m1G/mOOQW1G/g1G/gOF^QhO,5;qOOQW-E9T-E9TOOQS7+&e7+&eOGRQhO'#D^OGaQhO'#FlOGlQ`O'#FlOGqQ`O,5:WOOQS-E8v-E8vOOQ[1G.}1G.}OOQ[1G/T1G/TOOQ[1G/W1G/WOOQ[1G/[1G/[OGvQdO,5:tOOQS7+%x7+%xOG{Q`O7+%xOHQQhO'#D]OHYQ`O,59vO)zQhO,59vOOQ[1G/u1G/uOHbQ`O1G/uOHgQhO,5;mOOQO-E9P-E9POOQS7+&S7+&SOHuQbO'#DSOOQO'#Ej'#EjOITQ`O'#EiOOQO'#Ei'#EiOI`Q`O'#FSOIhQdO,5;SOOQS,5;S,5;SOOQ[1G/p1G/pOOQS7+&_7+&_O7QQ`O7+&_OIsQ!fO'#FOO)VQdO'#FOOJzQdO7+%uOOQO7+%u7+%uOOQO,5:q,5:qOOQO1G1V1G1VOK_Q!bO<<ISOKjQdO'#E|OKtQ`O,5<XOOQP1G/y1G/yOOQS-E8u-E8uOK|QdO'#E{OLWQ`O,5<QOOQ]1G.{1G.{OOQP<<IS<<ISOL`Q`O<<ISOLeQdO7+%POOQO'#D`'#D`OLlQ!bO7+%TOLtQhO'#EzOMRQ`O,5<WO)VQdO,5<WOOQW1G/r1G/rOOQO'#E['#E[OMZQ`O1G0`OOQS<<Id<<IdO)VQdO,59wOMzQhO1G/bOOQ[1G/b1G/bONRQ`O1G/bOOQW-E8w-E8wOOQ[7+%a7+%aOOQO,5;T,5;TOBnQdO'#FTOI`Q`O,5;nOOQS,5;n,5;nOOQS-E9Q-E9QOOQS1G0n1G0nOOQS<<Iy<<IyONZQ!fO,5;jOOQS-E8|-E8|OOQO<<Ia<<IaOOQPAN>nAN>nO! bQ`OAN>nO! gQaO,5;hOOQO-E8z-E8zO! qQdO,5;gOOQO-E8y-E8yOOQW<<Hk<<HkOOQW<<Ho<<HoO! {QhO<<HoO!!^QhO,5;fO!!iQ`O,5;fOOQO-E8x-E8xO!!nQdO1G1rOGvQdO'#FQO!!xQ`O7+%zOOQW7+%z7+%zO!#QQ!bO1G/cOOQ[7+$|7+$|O!#]QhO7+$|P!#dQ`O'#EyOOQO,5;o,5;oOOQO-E9R-E9ROOQS1G1Y1G1YOOQPG24YG24YO!#iQ`OAN>ZO)VQdO1G1QO!#nQ`O7+'^OOQO,5;l,5;lOOQO-E9O-E9OOOQW<<If<<IfOOQ[<<Hh<<HhPOQW,5;e,5;eOOQWG23uG23uO!#vQdO7+&l",stateData:"!$Z~O$QOS$RQQ~OWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|RO$XTO~OQmOWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|lO$XTO~O#z$bP~P!jO$RqO~O`YXcYXdYXmYXpYXsYX!aYX!rYX!uYX#{YX$X[X~OgYX~P$ZO#|sO~O$XuO~O$XuO`$WXc$WXd$WXm$WXp$WXs$WX!a$WX!r$WX!u$WX#{$WXg$WX~O#|vO~O`xOcyOdyOmzOp{O!r|O!u!OO#{}O~Os!RO!a!PO~P&^Of!XO#|!TO#}!UO~O#|!YO~OW!^O#|![O$X!]O~OWVO^_O`WOcYOdYOmZOp[O!r]O!u^O#|RO$XTO~OS!fOc!gOd!gOh!cOs!RO!Y!eO!]!jO$O!bO~On!iO~P(dOQ!tOh!mOp!nOs!oOu!wOw!wO}!uO!d!vO#|!lO#}!rO$]!pO~OS!fOc!gOd!gOh!cO!Y!eO!]!jO$O!bO~Os$eP~P)zOw!|O!d!vO#|!{O~Ow#OO#|#OO~Oh#ROs!RO#c#TO~O#|#VO~Oc!xX~P$ZOc#YO~On#ZO#z$bXr$bX~O#z$bXr$bX~P!jO$S#^O$T#^O$U#`O~Of#eO#|!TO#}!UO~Os!RO!a!PO~Or$bP~P!jOh#oO~Oh#pO~Oo!kX!o!kX$X!mX~O#|#qO~O$X#sO~Oo#tO!o#uO~O`xOcyOdyOmzOp{O~Os!qa!a!qa!r!qa!u!qa#{!qag!qa~P-pOs!ta!a!ta!r!ta!u!ta#{!tag!ta~P-pOS!fOc!gOd!gOh!cO!Y!eO!]!jO~OR#yOu#yOw#yO$O#vO$]!pO~P/POn$PO!U#|O!a#}O~P(dOh$RO~O$O$TO~Oh#RO~O`$WOc$WOg$ZOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo$]O~P)VO`$WOc$WOl$WOm$WOn$WOr$_O~P)VOP$`OSvXcvXdvXhvXnvXyvX!YvX!]vX!}vX#PvX$OvX!WvXQvX`vXgvXlvXmvXpvXsvXuvXwvX}vX!dvX#|vX#}vX$]vXovXrvX!avX#zvX$dvX!pvX~Oy$aO!}$bO#P$cOn$eP~P)zOh#pOS$ZXc$ZXd$ZXn$ZXy$ZX!Y$ZX!]$ZX!}$ZX#P$ZX$O$ZXQ$ZX`$ZXg$ZXl$ZXm$ZXp$ZXs$ZXu$ZXw$ZX}$ZX!d$ZX#|$ZX#}$ZX$]$ZXo$ZXr$ZX!a$ZX#z$ZX$d$ZX!p$ZX~Oh$gO~Oh$iO~O!U#|O!a$jOs$eXn$eX~Os!RO~On$mOy$aO~On$nO~Ow$oO!d!vO~Os$pO~Os!RO!U#|O~Os!RO#c$vO~O#|#VOs#fX~O$d$zOn!wa#z!war!wa~P)VOn#sX#z#sXr#sX~P!jOn#ZO#z$bar$ba~O$S#^O$T#^O$U%RO~Oo%TO!o%UO~Os!qi!a!qi!r!qi!u!qi#{!qig!qi~P-pOs!si!a!si!r!si!u!si#{!sig!si~P-pOs!ti!a!ti!r!ti!u!ti#{!tig!ti~P-pOs#qa!a#qa~P&^Or%VO~Og$aP~P'oOg$YP~P)VOc!SXg!QX!U!QX!W!SX~Oc%_O!W%`O~Og%aO!U#|O~O!U#|OS#yXc#yXd#yXh#yXn#yXs#yX!Y#yX!]#yX!a#yX$O#yX~On%eO!a#}O~P(dO!U#|OS!Xac!Xad!Xah!Xan!Xas!Xa!Y!Xa!]!Xa!a!Xa$O!Xag!Xa~O$O%fOg$`P~P/POy$aOQ$[X`$[Xc$[Xg$[Xh$[Xl$[Xm$[Xn$[Xp$[Xs$[Xu$[Xw$[X}$[X!d$[X#|$[X#}$[X$]$[Xo$[Xr$[X~O`$WOc$WOg%kOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo%lO~P)VO`$WOc$WOl$WOm$WOn$WOr%mO~P)VOh%oOS!|Xc!|Xd!|Xn!|X!Y!|X!]!|X$O!|X~On%pO~Og%uOw%vO!e%vO~Os#uX!a#uXn#uX~P)zO!a$jOs$ean$ea~On%yO~Or&QO#|%{O$]%zO~Og&RO~P&^Oy$aO!a&VO$d$zOn!wi#z!wir!wi~P)VO$c&YO~On#sa#z#sar#sa~P!jOn#ZO#z$bir$bi~O!a&]Og$aX~P&^Og&_O~Oy$aOQ#kXg#kXh#kXp#kXs#kXu#kXw#kX}#kX!a#kX!d#kX#|#kX#}#kX$]#kX~O!a&aOg$YX~P)VOg&cO~Oo&dOy$aO!p&eO~OR#yOu#yOw#yO$O&gO$]!pO~O!U#|OS#yac#yad#yah#yan#yas#ya!Y#ya!]#ya!a#ya$O#ya~Oc!SXg!QX!U!QX!a!QX~O!U#|O!a&iOg$`X~Oc&kO~Og&lO~O#|&mO~On&oO~Oc&pO!U#|O~Og&rOn&qO~Og&uO~O!U#|Os#ua!a#uan#ua~OP$`OsvX!avXgvX~O$]%zOs#]X!a#]X~Os!RO!a&wO~Or&{O#|%{O$]%zO~Oy$aOQ#rXh#rXn#rXp#rXs#rXu#rXw#rX}#rX!a#rX!d#rX#z#rX#|#rX#}#rX$]#rX$d#rXr#rX~O!a&VO$d$zOn!wq#z!wqr!wq~P)VOo'QOy$aO!p'RO~Og#pX!a#pX~P'oO!a&]Og$aa~Og#oX!a#oX~P)VO!a&aOg$Ya~Oo'QO~Og'WO~P)VOg'XO!W'YO~O$O%fOg#nX!a#nX~P/PO!a&iOg$`a~O`'_Og'aO~OS#mac#mad#mah#ma!Y#ma!]#ma$O#ma~Og'cO~PMcOg'cOn'dO~Oy$aOQ#rah#ran#rap#ras#rau#raw#ra}#ra!a#ra!d#ra#z#ra#|#ra#}#ra$]#ra$d#rar#ra~Oo'iO~Og#pa!a#pa~P&^Og#oa!a#oa~P)VOR#yOu#yOw#yO$O&gO$]%zO~O!U#|Og#na!a#na~Oc'kO~O!a&iOg$`i~P)VO`'_Og'oO~Oy$aOg!Pin!Pi~Og'pO~PMcOn'qO~Og'rO~O!a&iOg$`q~Og#nq!a#nq~P)VO$Q!e$R$]`$]y!u~",goto:"4h$fPPPPP$gP$jP$s%V$s%i%{P$sP&R$sPP&XPPP&_&i&iPPPPP&iPP&iP'VP&iP&i(Q&iP(n(q(w(w)Z(wP(wP(wP(w(wP)j(w)vP(w)yPP*m*s$s*y$s+P+P+V+ZPP$sP$s$sP+a,],j,q$jP,zP,}P$jP$jP$jP-T$jP-W-Z-^-e$jP$jPP$jP-j$jP-m-s.S.j.x/O/Y/`/f/l/r/|0S0Y0`0f0lPPPPPPPPPPP0r0{P1q1t2vP3O3x4R4U4XPP4_RrQ_aOPco!R#Z$}q_OP]^co|}!O!P!R#R#Z#o$}&]qSOP]^co|}!O!P!R#R#Z#o$}&]qUOP]^co|}!O!P!R#R#Z#o$}&]QtTR#auQwWR#bxQ!VYR#cyQ#c!XS$f!s!tR%S#e!V!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k's!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sU#y!c%`'YU%}$p&P&wR&v%|!V!sdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sR$h!uQ%s$gR&s%tq!h`ei!c!d!e!q#|#}$O$R$e$g$j%t&iQ#w!cQ%h$RQ&h%`Q'[&iR'j'YQ#UjQ$U!jQ$t#TR&T$vR$S!f!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sQ!|gR$o!}Q!WYR#dyQ#c!WR%S#dQ!ZZR#fzQ!_[R#g{T!^[{Q#r!]R%]#sQ!SXQ!i`Q#SjQ#m!QQ$P!dQ$l!yQ$r#QQ$u#UQ$x#XQ%e$OQ&S$tQ&y&OQ&|&TR'h&xSnP!RQ#]oQ$|#ZR&Z$}ZmPo!R#Z$}Q${#YQ&X$yR'P&WR$e!qQ&n%oR'm'_R!}gR#PhR$q#PS&O$p&PR'f&wV%|$p&P&wR#XkQ#_qR%Q#_QcOSoP!RU!kco$}R$}#ZQ%Z#pY&`%Z&f'U'^'sQ&f%_Q'U&aQ'^&kR's'kQ$Y!mQ$[!nQ$^!oV%j$Y$[$^Q%t$gR&t%tQ&j%gS']&j'lR'l'^Q&b%ZR'V&bQ&^%WR'T&^Q!QXR#l!QQ&W$yR'O&WQ#[nS%O#[%PR%P#]Q'`&nR'n'`Q$k!xR%x$kQ&P$pR&z&PQ&x&OR'g&xQ#WkR$w#WQ$O!dR%d$O_bOPco!R#Z$}^XOPco!R#Z$}Q!`]Q!a^Q#h|Q#i}Q#j!OQ#k!PQ$s#RQ%W#oR'S&]R%[#pQ!qdQ!zf[$V!m!n!o$Y$[$^Q$y#Yd%Y#p%Z%_&a&f&k'U'^'k'sQ%^#uQ%n$aS&U$y&WQ&[%UQ&}&VR'b&p]$X!m!n!o$Y$[$^Q!d`U!xe!q$eQ#QiQ#x!cS#{!d$OQ$Q!eQ%b#|Q%c#}Q%g$RS%r$g%tQ%w$jR'Z&iQ#z!cQ&h%`R'j'YR%i$RR%X#oQpPR#n!RQ!yeQ$d!qR%q$e",nodeNames:"⚠ Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NamespacedTagSelector NamespaceName TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , PseudoQuery CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName NamespacedAttribute NamespaceName AttributeName MatchOp MatchFlag ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to FontFeatureStatement font-feature-values FontName AtRule Styles",maxTerm:159,nodeProps:[["isolate",-2,5,39,""],["openedBy",23,"(",31,"[",34,"{"],["closedBy",24,")",32,"]",35,"}"]],propSources:[Bq],skippedNodes:[0,5,117],repeatNodeCount:17,tokenData:"K`~R!bOX%ZX^&R^p%Zpq&Rqr)ers)vst+jtu2Xuv%Zvw3Rwx3dxy5Ryz5dz{5i{|6S|}:u}!O;W!O!P;u!P!Q<^!Q![=V![!]>Q!]!^>|!^!_?_!_!`@Z!`!a@n!a!b%Z!b!cAo!c!k%Z!k!lC|!l!u%Z!u!vC|!v!}%Z!}#OD_#O#P%Z#P#QDp#Q#R2X#R#]%Z#]#^ER#^#g%Z#g#hC|#h#o%Z#o#pIf#p#qIw#q#rJ`#r#sJq#s#y%Z#y#z&R#z$f%Z$f$g&R$g#BY%Z#BY#BZ&R#BZ$IS%Z$IS$I_&R$I_$I|%Z$I|$JO&R$JO$JT%Z$JT$JU&R$JU$KV%Z$KV$KW&R$KW&FU%Z&FU&FV&R&FV;'S%Z;'S;=`KY<%lO%Z`%^SOy%jz;'S%j;'S;=`%{<%lO%j`%oS!e`Oy%jz;'S%j;'S;=`%{<%lO%j`&OP;=`<%l%j~&Wh$Q~OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%j~'yh$Q~!e`OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%jj)jS$dYOy%jz;'S%j;'S;=`%{<%lO%j~)yWOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d<%lO)v~*hOw~~*kRO;'S)v;'S;=`*t;=`O)v~*wXOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d;=`<%l)v<%lO)v~+gP;=`<%l)vj+oYmYOy%jz!Q%j!Q![,_![!c%j!c!i,_!i#T%j#T#Z,_#Z;'S%j;'S;=`%{<%lO%jj,dY!e`Oy%jz!Q%j!Q![-S![!c%j!c!i-S!i#T%j#T#Z-S#Z;'S%j;'S;=`%{<%lO%jj-XY!e`Oy%jz!Q%j!Q![-w![!c%j!c!i-w!i#T%j#T#Z-w#Z;'S%j;'S;=`%{<%lO%jj.OYuY!e`Oy%jz!Q%j!Q![.n![!c%j!c!i.n!i#T%j#T#Z.n#Z;'S%j;'S;=`%{<%lO%jj.uYuY!e`Oy%jz!Q%j!Q![/e![!c%j!c!i/e!i#T%j#T#Z/e#Z;'S%j;'S;=`%{<%lO%jj/jY!e`Oy%jz!Q%j!Q![0Y![!c%j!c!i0Y!i#T%j#T#Z0Y#Z;'S%j;'S;=`%{<%lO%jj0aYuY!e`Oy%jz!Q%j!Q![1P![!c%j!c!i1P!i#T%j#T#Z1P#Z;'S%j;'S;=`%{<%lO%jj1UY!e`Oy%jz!Q%j!Q![1t![!c%j!c!i1t!i#T%j#T#Z1t#Z;'S%j;'S;=`%{<%lO%jj1{SuY!e`Oy%jz;'S%j;'S;=`%{<%lO%jd2[UOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jd2uS!oS!e`Oy%jz;'S%j;'S;=`%{<%lO%jb3WS^QOy%jz;'S%j;'S;=`%{<%lO%j~3gWOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{<%lO3d~4SRO;'S3d;'S;=`4];=`O3d~4`XOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{;=`<%l3d<%lO3d~5OP;=`<%l3dj5WShYOy%jz;'S%j;'S;=`%{<%lO%j~5iOg~n5pUWQyWOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jj6ZWyW!uQOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj6xU!e`Oy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%jj7cY!e`$]YOy%jz!Q%j!Q![7[![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj8WY!e`Oy%jz{%j{|8v|}%j}!O8v!O!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj8{U!e`Oy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj9fU!e`$]YOy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj:P[!e`$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj:zS!aYOy%jz;'S%j;'S;=`%{<%lO%jj;]WyWOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj;zU`YOy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%j~<cTyWOy%jz{<r{;'S%j;'S;=`%{<%lO%j~<yS!e`$R~Oy%jz;'S%j;'S;=`%{<%lO%jj=[[$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj>VUcYOy%jz![%j![!]>i!];'S%j;'S;=`%{<%lO%jj>pSdY!e`Oy%jz;'S%j;'S;=`%{<%lO%jj?RSnYOy%jz;'S%j;'S;=`%{<%lO%jh?dU!WWOy%jz!_%j!_!`?v!`;'S%j;'S;=`%{<%lO%jh?}S!WW!e`Oy%jz;'S%j;'S;=`%{<%lO%jl@bS!WW!oSOy%jz;'S%j;'S;=`%{<%lO%jj@uV!rQ!WWOy%jz!_%j!_!`?v!`!aA[!a;'S%j;'S;=`%{<%lO%jbAcS!rQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjArYOy%jz}%j}!OBb!O!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjBgW!e`Oy%jz!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjCW[lY!e`Oy%jz}%j}!OCP!O!Q%j!Q![CP![!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jhDRS!pWOy%jz;'S%j;'S;=`%{<%lO%jjDdSpYOy%jz;'S%j;'S;=`%{<%lO%jnDuSo^Oy%jz;'S%j;'S;=`%{<%lO%jjEWU!pWOy%jz#a%j#a#bEj#b;'S%j;'S;=`%{<%lO%jbEoU!e`Oy%jz#d%j#d#eFR#e;'S%j;'S;=`%{<%lO%jbFWU!e`Oy%jz#c%j#c#dFj#d;'S%j;'S;=`%{<%lO%jbFoU!e`Oy%jz#f%j#f#gGR#g;'S%j;'S;=`%{<%lO%jbGWU!e`Oy%jz#h%j#h#iGj#i;'S%j;'S;=`%{<%lO%jbGoU!e`Oy%jz#T%j#T#UHR#U;'S%j;'S;=`%{<%lO%jbHWU!e`Oy%jz#b%j#b#cHj#c;'S%j;'S;=`%{<%lO%jbHoU!e`Oy%jz#h%j#h#iIR#i;'S%j;'S;=`%{<%lO%jbIYS$cQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjIkSsYOy%jz;'S%j;'S;=`%{<%lO%jfI|U$XUOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jjJeSrYOy%jz;'S%j;'S;=`%{<%lO%jfJvU!uQOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%j`K]P;=`<%l%Z",tokenizers:[Lq,zq,Vq,Iq,1,2,3,4,new g1("m~RRYZ[z{a~~g~aO$T~~dP!P!Qg~lO$U~~",28,142)],topRules:{StyleSheet:[0,6],Styles:[1,116]},dynamicPrecedences:{84:1},specialized:[{term:137,get:n=>Hq[n]||-1},{term:138,get:n=>Fq[n]||-1},{term:4,get:n=>Xq[n]||-1},{term:28,get:n=>Uq[n]||-1},{term:136,get:n=>qq[n]||-1}],tokenPrec:2256});let w2=null;function T2(){if(!w2&&typeof document=="object"&&document.body){let{style:n}=document.body,e=[],t=new Set;for(let r in n)r!="cssText"&&r!="cssFloat"&&typeof n[r]=="string"&&(/[A-Z]/.test(r)&&(r=r.replace(/[A-Z]/g,i=>"-"+i.toLowerCase())),t.has(r)||(e.push(r),t.add(r)));w2=e.sort().map(r=>({type:"property",label:r,apply:r+": "}))}return w2||[]}const Cv=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(n=>({type:"class",label:n})),Ev=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(n=>({type:"keyword",label:n})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(n=>({type:"constant",label:n}))),Wq=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(n=>({type:"type",label:n})),Gq=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(n=>({type:"keyword",label:n})),va=/^(\w[\w-]*|-\w[\w-]*|)$/,Kq=/^-(-[\w-]*)?$/;function Jq(n,e){var t;if((n.name=="("||n.type.isError)&&(n=n.parent||n),n.name!="ArgList")return!1;let r=(t=n.parent)===null||t===void 0?void 0:t.firstChild;return(r==null?void 0:r.name)!="Callee"?!1:e.sliceString(r.from,r.to)=="var"}const Mv=new OP,eY=["Declaration"];function tY(n){for(let e=n;;){if(e.type.isTop)return e;if(!(e=e.parent))return n}}function LC(n,e,t){if(e.to-e.from>4096){let r=Mv.get(e);if(r)return r;let i=[],a=new Set,s=e.cursor(bt.IncludeAnonymous);if(s.firstChild())do for(let o of LC(n,s.node,t))a.has(o.label)||(a.add(o.label),i.push(o));while(s.nextSibling());return Mv.set(e,i),i}else{let r=[],i=new Set;return e.cursor().iterate(a=>{var s;if(t(a)&&a.matchContext(eY)&&((s=a.node.nextSibling)===null||s===void 0?void 0:s.name)==":"){let o=n.sliceString(a.from,a.to);i.has(o)||(i.add(o),r.push({label:o,type:"variable"}))}}),r}}const nY=n=>e=>{let{state:t,pos:r}=e,i=tn(t).resolveInner(r,-1),a=i.type.isError&&i.from==i.to-1&&t.doc.sliceString(i.from,i.to)=="-";if(i.name=="PropertyName"||(a||i.name=="TagName")&&/^(Block|Styles)$/.test(i.resolve(i.to).name))return{from:i.from,options:T2(),validFor:va};if(i.name=="ValueName")return{from:i.from,options:Ev,validFor:va};if(i.name=="PseudoClassName")return{from:i.from,options:Cv,validFor:va};if(n(i)||(e.explicit||a)&&Jq(i,t.doc))return{from:n(i)||a?i.from:r,options:LC(t.doc,tY(i),n),validFor:Kq};if(i.name=="TagName"){for(let{parent:u}=i;u;u=u.parent)if(u.name=="Block")return{from:i.from,options:T2(),validFor:va};return{from:i.from,options:Wq,validFor:va}}if(i.name=="AtKeyword")return{from:i.from,options:Gq,validFor:va};if(!e.explicit)return null;let s=i.resolve(r),o=s.childBefore(r);return o&&o.name==":"&&s.name=="PseudoClassSelector"?{from:r,options:Cv,validFor:va}:o&&o.name==":"&&s.name=="Declaration"||s.name=="ArgList"?{from:r,options:Ev,validFor:va}:s.name=="Block"||s.name=="Styles"?{from:r,options:T2(),validFor:va}:null},rY=nY(n=>n.name=="VariableName"),y1=Cc.define({name:"css",parser:Yq.configure({props:[q1.add({Declaration:Ph()}),Y1.add({"Block KeyframeList":TP})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function zC(){return new H6(y1,y1.data.of({autocomplete:rY}))}const iY=316,aY=317,$v=1,sY=2,lY=3,oY=4,cY=318,uY=320,fY=321,dY=5,hY=6,mY=0,PO=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],BC=125,pY=59,CO=47,gY=42,OY=43,yY=45,bY=60,xY=44,SY=63,kY=46,vY=91,wY=new AC({start:!1,shift(n,e){return e==dY||e==hY||e==uY?n:e==fY},strict:!1}),TY=new Nr((n,e)=>{let{next:t}=n;(t==BC||t==-1||e.context)&&n.acceptToken(cY)},{contextual:!0,fallback:!0}),AY=new Nr((n,e)=>{let{next:t}=n,r;PO.indexOf(t)>-1||t==CO&&((r=n.peek(1))==CO||r==gY)||t!=BC&&t!=pY&&t!=-1&&!e.context&&n.acceptToken(iY)},{contextual:!0}),PY=new Nr((n,e)=>{n.next==vY&&!e.context&&n.acceptToken(aY)},{contextual:!0}),CY=new Nr((n,e)=>{let{next:t}=n;if(t==OY||t==yY){if(n.advance(),t==n.next){n.advance();let r=!e.context&&e.canShift($v);n.acceptToken(r?$v:sY)}}else t==SY&&n.peek(1)==kY&&(n.advance(),n.advance(),(n.next<48||n.next>57)&&n.acceptToken(lY))},{contextual:!0});function A2(n,e){return n>=65&&n<=90||n>=97&&n<=122||n==95||n>=192||!e&&n>=48&&n<=57}const EY=new Nr((n,e)=>{if(n.next!=bY||!e.dialectEnabled(mY)||(n.advance(),n.next==CO))return;let t=0;for(;PO.indexOf(n.next)>-1;)n.advance(),t++;if(A2(n.next,!0)){for(n.advance(),t++;A2(n.next,!1);)n.advance(),t++;for(;PO.indexOf(n.next)>-1;)n.advance(),t++;if(n.next==xY)return;for(let r=0;;r++){if(r==7){if(!A2(n.next,!0))return;break}if(n.next!="extends".charCodeAt(r))break;n.advance(),t++}}n.acceptToken(oY,-t)}),MY=F1({"get set async static":ne.modifier,"for while do if else switch try catch finally return throw break continue default case defer":ne.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":ne.operatorKeyword,"let var const using function class extends":ne.definitionKeyword,"import export from":ne.moduleKeyword,"with debugger new":ne.keyword,TemplateString:ne.special(ne.string),super:ne.atom,BooleanLiteral:ne.bool,this:ne.self,null:ne.null,Star:ne.modifier,VariableName:ne.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":ne.function(ne.variableName),VariableDefinition:ne.definition(ne.variableName),Label:ne.labelName,PropertyName:ne.propertyName,PrivatePropertyName:ne.special(ne.propertyName),"CallExpression/MemberExpression/PropertyName":ne.function(ne.propertyName),"FunctionDeclaration/VariableDefinition":ne.function(ne.definition(ne.variableName)),"ClassDeclaration/VariableDefinition":ne.definition(ne.className),"NewExpression/VariableName":ne.className,PropertyDefinition:ne.definition(ne.propertyName),PrivatePropertyDefinition:ne.definition(ne.special(ne.propertyName)),UpdateOp:ne.updateOperator,"LineComment Hashbang":ne.lineComment,BlockComment:ne.blockComment,Number:ne.number,String:ne.string,Escape:ne.escape,ArithOp:ne.arithmeticOperator,LogicOp:ne.logicOperator,BitOp:ne.bitwiseOperator,CompareOp:ne.compareOperator,RegExp:ne.regexp,Equals:ne.definitionOperator,Arrow:ne.function(ne.punctuation),": Spread":ne.punctuation,"( )":ne.paren,"[ ]":ne.squareBracket,"{ }":ne.brace,"InterpolationStart InterpolationEnd":ne.special(ne.brace),".":ne.derefOperator,", ;":ne.separator,"@":ne.meta,TypeName:ne.typeName,TypeDefinition:ne.definition(ne.typeName),"type enum interface implements namespace module declare":ne.definitionKeyword,"abstract global Privacy readonly override":ne.modifier,"is keyof unique infer asserts":ne.operatorKeyword,JSXAttributeValue:ne.attributeValue,JSXText:ne.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":ne.angleBracket,"JSXIdentifier JSXNameSpacedName":ne.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":ne.attributeName,"JSXBuiltin/JSXIdentifier":ne.standard(ne.tagName)}),$Y={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},RY={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},QY={__proto__:null,"<":193},_Y=$c.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",stateData:"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O![*^O(T*XO!k)OP~P!1uO#k*aO~O!l*bO~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T*dO(VTO(YUO(a$uO(y$}O(z%PO~O![*gO!Y)PP~P!3tOr*sOs!nO!S*iO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO(e!mO~O!^*pO~P!5iO#S$dOn(`X!Q(`X'y(`X(y(`X(z(`X!](`X#`(`X~Og(`X$O(`X~P!6kOn*xO#`*wOg(_X!](_X~O!]*yOg(^X~Oj%dOk%dOl%dO(T&ZOg(^P~Os*|O~Og)}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hO![+ZO!](^O!_%iO(T%gO!Y(vP~Os'[O!S+]O![+[O(VTO(YUO(e(|O~O!^(xP~P!9|O!]+^Oa)TX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WO![/mO!](^O(T/lO!Y(vP!Y)PP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",goto:"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",nodeNames:"⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:wY,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[MY],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[AY,PY,CY,EY,2,3,4,5,6,7,8,9,10,11,12,13,14,TY,new g1("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new g1("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:n=>$Y[n]||-1},{term:343,get:n=>RY[n]||-1},{term:95,get:n=>QY[n]||-1}],tokenPrec:15201}),HC=[rr("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),rr("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),rr("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),rr("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),rr("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),rr(`try {
349
- \${}
350
- } catch (\${error}) {
351
- \${}
352
- }`,{label:"try",detail:"/ catch block",type:"keyword"}),rr("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),rr(`if (\${}) {
353
- \${}
354
- } else {
355
- \${}
356
- }`,{label:"if",detail:"/ else block",type:"keyword"}),rr(`class \${name} {
357
- constructor(\${params}) {
358
- \${}
359
- }
360
- }`,{label:"class",detail:"definition",type:"keyword"}),rr('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),rr('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],NY=HC.concat([rr("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),rr("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),rr("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),Rv=new OP,FC=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function Fu(n){return(e,t)=>{let r=e.node.getChild("VariableDefinition");return r&&t(r,n),!0}}const jY=["FunctionDeclaration"],ZY={FunctionDeclaration:Fu("function"),ClassDeclaration:Fu("class"),ClassExpression:()=>!0,EnumDeclaration:Fu("constant"),TypeAliasDeclaration:Fu("type"),NamespaceDeclaration:Fu("namespace"),VariableDefinition(n,e){n.matchContext(jY)||e(n,"variable")},TypeDefinition(n,e){e(n,"type")},__proto__:null};function XC(n,e){let t=Rv.get(e);if(t)return t;let r=[],i=!0;function a(s,o){let u=n.sliceString(s.from,s.to);r.push({label:u,type:o})}return e.cursor(bt.IncludeAnonymous).iterate(s=>{if(i)i=!1;else if(s.name){let o=ZY[s.name];if(o&&o(s,a)||FC.has(s.name))return!1}else if(s.to-s.from>8192){for(let o of XC(n,s.node))r.push(o);return!1}}),Rv.set(e,r),r}const Qv=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,UC=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function DY(n){let e=tn(n.state).resolveInner(n.pos,-1);if(UC.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Qv.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let r=[];for(let i=e;i;i=i.parent)FC.has(i.name)&&(r=r.concat(XC(n.state.doc,i)));return{options:r,from:t?e.from:n.pos,validFor:Qv}}const qi=Cc.define({name:"javascript",parser:_Y.configure({props:[q1.add({IfStatement:Ph({except:/^\s*({|else\b)/}),TryStatement:Ph({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:EH,SwitchBody:n=>{let e=n.textAfter,t=/^\s*\}/.test(e),r=/^\s*(case|default)\b/.test(e);return n.baseIndent+(t?0:r?1:2)*n.unit},Block:CH({closing:"}"}),ArrowFunction:n=>n.baseIndent+n.unit,"TemplateString BlockComment":()=>null,"Statement Property":Ph({except:/^\s*{/}),JSXElement(n){let e=/^\s*<\//.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},JSXEscape(n){let e=/\s*\}/.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},"JSXOpenTag JSXSelfClosingTag"(n){return n.column(n.node.from)+n.unit}}),Y1.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":TP,BlockComment(n){return{from:n.from+2,to:n.to-2}},JSXElement(n){let e=n.firstChild;if(!e||e.name=="JSXSelfClosingTag")return null;let t=n.lastChild;return{from:e.to,to:t.type.isError?n.to:t.from}},"JSXSelfClosingTag JSXOpenTag"(n){var e;let t=(e=n.firstChild)===null||e===void 0?void 0:e.nextSibling,r=n.lastChild;return!t||t.type.isError?null:{from:t.to,to:r.type.isError?n.to:r.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),qC={test:n=>/^JSX/.test(n.name),facet:SP({commentTokens:{block:{open:"{/*",close:"*/}"}}})},YC=qi.configure({dialect:"ts"},"typescript"),WC=qi.configure({dialect:"jsx",props:[B6.add(n=>n.isTop?[qC]:void 0)]}),GC=qi.configure({dialect:"jsx ts",props:[B6.add(n=>n.isTop?[qC]:void 0)]},"typescript");let KC=n=>({label:n,type:"keyword"});const JC="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(KC),VY=JC.concat(["declare","implements","private","protected","public"].map(KC));function eE(n={}){let e=n.jsx?n.typescript?GC:WC:n.typescript?YC:qi,t=n.typescript?NY.concat(VY):HC.concat(JC);return new H6(e,[qi.data.of({autocomplete:xX(UC,bX(t))}),qi.data.of({autocomplete:DY}),n.jsx?zY:[]])}function IY(n){for(;;){if(n.name=="JSXOpenTag"||n.name=="JSXSelfClosingTag"||n.name=="JSXFragmentTag")return n;if(n.name=="JSXEscape"||!n.parent)return null;n=n.parent}}function _v(n,e,t=n.length){for(let r=e==null?void 0:e.firstChild;r;r=r.nextSibling)if(r.name=="JSXIdentifier"||r.name=="JSXBuiltin"||r.name=="JSXNamespacedName"||r.name=="JSXMemberExpression")return n.sliceString(r.from,Math.min(r.to,t));return""}const LY=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),zY=Le.inputHandler.of((n,e,t,r,i)=>{if((LY?n.composing:n.compositionStarted)||n.state.readOnly||e!=t||r!=">"&&r!="/"||!qi.isActiveAt(n.state,e,-1))return!1;let a=i(),{state:s}=a,o=s.changeByRange(u=>{var d;let{head:m}=u,p=tn(s).resolveInner(m-1,-1),O;if(p.name=="JSXStartTag"&&(p=p.parent),!(s.doc.sliceString(m-1,m)!=r||p.name=="JSXAttributeValue"&&p.to>m)){if(r==">"&&p.name=="JSXFragmentTag")return{range:u,changes:{from:m,insert:"</>"}};if(r=="/"&&p.name=="JSXStartCloseTag"){let b=p.parent,S=b.parent;if(S&&b.from==m-2&&((O=_v(s.doc,S.firstChild,m))||((d=S.firstChild)===null||d===void 0?void 0:d.name)=="JSXFragmentTag")){let k=`${O}>`;return{range:we.cursor(m+k.length,-1),changes:{from:m,insert:k}}}}else if(r==">"){let b=IY(p);if(b&&b.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(s.doc.sliceString(m,m+2))&&(O=_v(s.doc,b,m)))return{range:u,changes:{from:m,insert:`</${O}>`}}}}return{range:u}});return o.changes.empty?!1:(n.dispatch([a,s.update(o,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),Xu=["_blank","_self","_top","_parent"],P2=["ascii","utf-8","utf-16","latin1","latin1"],C2=["get","post","put","delete"],E2=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Ar=["true","false"],Ue={},BY={a:{attrs:{href:null,ping:null,type:null,media:null,target:Xu,hreflang:null}},abbr:Ue,address:Ue,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:Ue,aside:Ue,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:Ue,base:{attrs:{href:null,target:Xu}},bdi:Ue,bdo:Ue,blockquote:{attrs:{cite:null}},body:Ue,br:Ue,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:E2,formmethod:C2,formnovalidate:["novalidate"],formtarget:Xu,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:Ue,center:Ue,cite:Ue,code:Ue,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:Ue,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:Ue,div:Ue,dl:Ue,dt:Ue,em:Ue,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:Ue,figure:Ue,footer:Ue,form:{attrs:{action:null,name:null,"accept-charset":P2,autocomplete:["on","off"],enctype:E2,method:C2,novalidate:["novalidate"],target:Xu}},h1:Ue,h2:Ue,h3:Ue,h4:Ue,h5:Ue,h6:Ue,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:Ue,hgroup:Ue,hr:Ue,html:{attrs:{manifest:null}},i:Ue,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:E2,formmethod:C2,formnovalidate:["novalidate"],formtarget:Xu,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:Ue,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:Ue,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:Ue,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:P2,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:Ue,noscript:Ue,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:Ue,param:{attrs:{name:null,value:null}},pre:Ue,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:Ue,rt:Ue,ruby:Ue,samp:Ue,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:P2}},section:Ue,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:Ue,source:{attrs:{src:null,type:null,media:null}},span:Ue,strong:Ue,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:Ue,summary:Ue,sup:Ue,table:Ue,tbody:Ue,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:Ue,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:Ue,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:Ue,time:{attrs:{datetime:null}},title:Ue,tr:Ue,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:Ue,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:Ue},tE={accesskey:null,class:null,contenteditable:Ar,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Ar,autocorrect:Ar,autocapitalize:Ar,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Ar,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Ar,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Ar,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Ar,"aria-hidden":Ar,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Ar,"aria-multiselectable":Ar,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Ar,"aria-relevant":null,"aria-required":Ar,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},nE="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(n=>"on"+n);for(let n of nE)tE[n]=null;class b1{constructor(e,t){this.tags={...BY,...e},this.globalAttrs={...tE,...t},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}b1.default=new b1;function Rc(n,e,t=n.length){if(!e)return"";let r=e.firstChild,i=r&&r.getChild("TagName");return i?n.sliceString(i.from,Math.min(i.to,t)):""}function Qc(n,e=!1){for(;n;n=n.parent)if(n.name=="Element")if(e)e=!1;else return n;return null}function rE(n,e,t){let r=t.tags[Rc(n,Qc(e))];return(r==null?void 0:r.children)||t.allTags}function c4(n,e){let t=[];for(let r=Qc(e);r&&!r.type.isTop;r=Qc(r.parent)){let i=Rc(n,r);if(i&&r.lastChild.name=="CloseTag")break;i&&t.indexOf(i)<0&&(e.name=="EndTag"||e.from>=r.firstChild.to)&&t.push(i)}return t}const iE=/^[:\-\.\w\u00b7-\uffff]*$/;function Nv(n,e,t,r,i){let a=/\s*>/.test(n.sliceDoc(i,i+5))?"":">",s=Qc(t,t.name=="StartTag"||t.name=="TagName");return{from:r,to:i,options:rE(n.doc,s,e).map(o=>({label:o,type:"type"})).concat(c4(n.doc,t).map((o,u)=>({label:"/"+o,apply:"/"+o+a,type:"type",boost:99-u}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function jv(n,e,t,r){let i=/\s*>/.test(n.sliceDoc(r,r+5))?"":">";return{from:t,to:r,options:c4(n.doc,e).map((a,s)=>({label:a,apply:a+i,type:"type",boost:99-s})),validFor:iE}}function HY(n,e,t,r){let i=[],a=0;for(let s of rE(n.doc,t,e))i.push({label:"<"+s,type:"type"});for(let s of c4(n.doc,t))i.push({label:"</"+s+">",type:"type",boost:99-a++});return{from:r,to:r,options:i,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function FY(n,e,t,r,i){let a=Qc(t),s=a?e.tags[Rc(n.doc,a)]:null,o=s&&s.attrs?Object.keys(s.attrs):[],u=s&&s.globalAttrs===!1?o:o.length?o.concat(e.globalAttrNames):e.globalAttrNames;return{from:r,to:i,options:u.map(d=>({label:d,type:"property"})),validFor:iE}}function XY(n,e,t,r,i){var a;let s=(a=t.parent)===null||a===void 0?void 0:a.getChild("AttributeName"),o=[],u;if(s){let d=n.sliceDoc(s.from,s.to),m=e.globalAttrs[d];if(!m){let p=Qc(t),O=p?e.tags[Rc(n.doc,p)]:null;m=(O==null?void 0:O.attrs)&&O.attrs[d]}if(m){let p=n.sliceDoc(r,i).toLowerCase(),O='"',b='"';/^['"]/.test(p)?(u=p[0]=='"'?/^[^"]*$/:/^[^']*$/,O="",b=n.sliceDoc(i,i+1)==p[0]?"":p[0],p=p.slice(1),r++):u=/^[^\s<>='"]*$/;for(let S of m)o.push({label:S,apply:O+S+b,type:"constant"})}}return{from:r,to:i,options:o,validFor:u}}function UY(n,e){let{state:t,pos:r}=e,i=tn(t).resolveInner(r,-1),a=i.resolve(r);for(let s=r,o;a==i&&(o=i.childBefore(s));){let u=o.lastChild;if(!u||!u.type.isError||u.from<u.to)break;a=i=o,s=u.from}return i.name=="TagName"?i.parent&&/CloseTag$/.test(i.parent.name)?jv(t,i,i.from,r):Nv(t,n,i,i.from,r):i.name=="StartTag"||i.name=="IncompleteTag"?Nv(t,n,i,r,r):i.name=="StartCloseTag"||i.name=="IncompleteCloseTag"?jv(t,i,r,r):i.name=="OpenTag"||i.name=="SelfClosingTag"||i.name=="AttributeName"?FY(t,n,i,i.name=="AttributeName"?i.from:r,r):i.name=="Is"||i.name=="AttributeValue"||i.name=="UnquotedAttributeValue"?XY(t,n,i,i.name=="Is"?r:i.from,r):e.explicit&&(a.name=="Element"||a.name=="Text"||a.name=="Document")?HY(t,n,i,r):null}function qY(n){let{extraTags:e,extraGlobalAttributes:t}=n,r=t||e?new b1(e,t):b1.default;return i=>UY(r,i)}const YY=qi.parser.configure({top:"SingleExpression"}),aE=[{tag:"script",attrs:n=>n.type=="text/typescript"||n.lang=="ts",parser:YC.parser},{tag:"script",attrs:n=>n.type=="text/babel"||n.type=="text/jsx",parser:WC.parser},{tag:"script",attrs:n=>n.type=="text/typescript-jsx",parser:GC.parser},{tag:"script",attrs(n){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(n.type)},parser:YY},{tag:"script",attrs(n){return!n.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(n.type)},parser:qi.parser},{tag:"style",attrs(n){return(!n.lang||n.lang=="css")&&(!n.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(n.type))},parser:y1.parser}],sE=[{name:"style",parser:y1.parser.configure({top:"Styles"})}].concat(nE.map(n=>({name:n,parser:qi.parser}))),lE=Cc.define({name:"html",parser:kq.configure({props:[q1.add({Element(n){let e=/^(\s*)(<\/)?/.exec(n.textAfter);return n.node.to<=n.pos+e[0].length?n.continue():n.lineIndent(n.node.from)+(e[2]?0:n.unit)},"OpenTag CloseTag SelfClosingTag"(n){return n.column(n.node.from)+n.unit},Document(n){if(n.pos+/\s*/.exec(n.textAfter)[0].length<n.node.to)return n.continue();let e=null,t;for(let r=n.node;;){let i=r.lastChild;if(!i||i.name!="Element"||i.to!=r.to)break;e=r=i}return e&&!((t=e.lastChild)&&(t.name=="CloseTag"||t.name=="SelfClosingTag"))?n.lineIndent(e.from)+n.unit:null}}),Y1.add({Element(n){let e=n.firstChild,t=n.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:t.name=="CloseTag"?t.from:n.to}}}),QP.add({"OpenTag CloseTag":n=>n.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),$h=lE.configure({wrap:jC(aE,sE)});function Zv(n={}){let e="",t;n.matchClosingTags===!1&&(e="noMatch"),n.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(n.nestedLanguages&&n.nestedLanguages.length||n.nestedAttributes&&n.nestedAttributes.length)&&(t=jC((n.nestedLanguages||[]).concat(aE),(n.nestedAttributes||[]).concat(sE)));let r=t?lE.configure({wrap:t,dialect:e}):e?$h.configure({dialect:e}):$h;return new H6(r,[$h.data.of({autocomplete:qY(n)}),n.autoCloseTags!==!1?WY:[],eE().support,zC().support])}const Dv=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),WY=Le.inputHandler.of((n,e,t,r,i)=>{if(n.composing||n.state.readOnly||e!=t||r!=">"&&r!="/"||!$h.isActiveAt(n.state,e,-1))return!1;let a=i(),{state:s}=a,o=s.changeByRange(u=>{var d,m,p;let O=s.doc.sliceString(u.from-1,u.to)==r,{head:b}=u,S=tn(s).resolveInner(b,-1),k;if(O&&r==">"&&S.name=="EndTag"){let T=S.parent;if(((m=(d=T.parent)===null||d===void 0?void 0:d.lastChild)===null||m===void 0?void 0:m.name)!="CloseTag"&&(k=Rc(s.doc,T.parent,b))&&!Dv.has(k)){let w=b+(s.doc.sliceString(b,b+1)===">"?1:0),A=`</${k}>`;return{range:u,changes:{from:b,to:w,insert:A}}}}else if(O&&r=="/"&&S.name=="IncompleteCloseTag"){let T=S.parent;if(S.from==b-2&&((p=T.lastChild)===null||p===void 0?void 0:p.name)!="CloseTag"&&(k=Rc(s.doc,T,b))&&!Dv.has(k)){let w=b+(s.doc.sliceString(b,b+1)===">"?1:0),A=`${k}>`;return{range:we.cursor(b+A.length,-1),changes:{from:b,to:w,insert:A}}}}return{range:u}});return o.changes.empty?!1:(n.dispatch([a,s.update(o,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});function GY(n){switch(n){case"html":return Zv();case"css":return zC();case"javascript":case"js":case"typescript":case"ts":return eE({typescript:n==="typescript"||n==="ts"});default:return Zv()}}function KY(n){var r;const e=((r=n.split(".").pop())==null?void 0:r.toLowerCase())??"";return{html:"html",htm:"html",css:"css",js:"javascript",ts:"typescript",jsx:"javascript",tsx:"typescript",json:"javascript"}[e]??"html"}const JY=h.memo(function({content:e,filePath:t,language:r,onChange:i,readOnly:a=!1,revealOffset:s}){const o=h.useRef(null),u=h.useRef(null),d=h.useRef(i);d.current=i;const m=h.useRef(e);m.current=e;const p=h.useCallback(O=>{if(o.current&&(o.current.destroy(),o.current=null),!O)return;u.current=O;const b=r??(t?KY(t):"html"),S=Le.updateListener.of(T=>{T.docChanged&&d.current&&d.current(T.state.doc.toString())}),k=dt.create({doc:m.current,extensions:[UB(),QB(),WB(),hF(),IH(),$H(),KH(),_X(),YX(),D6.of([...DX,...OX,...gU,...kF]),GY(b),MU,S,dt.readOnly.of(a),Le.theme({"&":{height:"100%"},".cm-scroller":{overflow:"auto"}})]});o.current=new Le({state:k,parent:O})},[t,r,a]);return h.useEffect(()=>{const O=o.current;if(!O)return;const b=O.state.doc.toString();b!==e&&O.dispatch({changes:{from:0,to:b.length,insert:e}})},[e]),h.useEffect(()=>{const O=o.current;if(!O||s==null||s<0)return;const b=O.state.doc.length,S=Math.min(s,b);O.dispatch({selection:{anchor:S},effects:Le.scrollIntoView(S,{y:"center"})}),O.focus()},[s]),y.jsx("div",{ref:p,className:"h-full w-full overflow-hidden"})}),ac={width:1920,height:1080},Vv=80,Iv=45,Lv=3,eW=10;function tW(n){const e=Number.isFinite(n.stageWidth)&&n.stageWidth>0?n.stageWidth:ac.width,t=Number.isFinite(n.stageHeight)&&n.stageHeight>0?n.stageHeight:ac.height,r=n.cardWidth/e,i=n.cardHeight/t;return Math.min(r,i)}function nW(n){return Number.isFinite(n)&&n!=null&&n>0&&n<Lv?n/2:Lv}function zv(n){if(n==null)return null;const e=Number.parseFloat(n);return Number.isFinite(e)&&e>0?e:null}function rW(n){var a,s;const e=n==null?void 0:n.contentWindow,t=(s=(a=e==null?void 0:e.__player)==null?void 0:a.getDuration)==null?void 0:s.call(a);if(Number.isFinite(t)&&t!=null&&t>0)return t;const r=n==null?void 0:n.contentDocument,i=(r==null?void 0:r.querySelector("[data-composition-id]"))??(r==null?void 0:r.documentElement)??null;return zv((i==null?void 0:i.getAttribute("data-composition-duration"))??null)??zv((i==null?void 0:i.getAttribute("data-duration"))??null)}function iW(n,e){var r,i,a,s;const t=(r=n==null?void 0:n.contentWindow)==null?void 0:r.__player;return t?e?((i=t.play)==null||i.call(t),!0):((a=t.pause)==null||a.call(t),(s=t.seek)==null||s.call(t,nW(rW(n))),!0):!1}function aW({projectId:n,comp:e,isActive:t,onSelect:r,onRender:i,isRendering:a}){const[s,o]=h.useState(!1),[u,d]=h.useState(ac),m=h.useRef(null),p=h.useRef(null),O=h.useRef(null),b=h.useCallback(P=>{O.current&&(clearTimeout(O.current),O.current=null);const $=M=>{iW(m.current,P)||M<=0||(O.current=setTimeout(()=>$(M-1),100))};$(eW)},[]),S=()=>{p.current=setTimeout(()=>o(!0),300)},k=()=>{p.current&&(clearTimeout(p.current),p.current=null),o(!1)},T=e.replace(/^compositions\//,"").replace(/\.html$/,""),w=`/api/projects/${n}/preview/comp/${e}`,A=tW({cardWidth:Vv,cardHeight:Iv,stageWidth:u.width,stageHeight:u.height}),E=(Vv-u.width*A)/2,C=(Iv-u.height*A)/2;return h.useEffect(()=>{b(s)},[s,b]),h.useEffect(()=>()=>{p.current&&clearTimeout(p.current),O.current&&clearTimeout(O.current)},[]),y.jsxs("div",{onClick:r,onPointerEnter:S,onPointerLeave:k,className:`group/card w-full text-left px-2 py-1.5 flex items-center gap-2.5 transition-colors cursor-pointer ${t?"bg-studio-accent/10 border-l-2 border-studio-accent":"border-l-2 border-transparent hover:bg-neutral-800/50"}`,children:[y.jsx("div",{className:"w-20 h-[45px] rounded overflow-hidden bg-neutral-900 flex-shrink-0 relative",children:y.jsx("iframe",{ref:m,src:w,sandbox:"allow-scripts allow-same-origin",loading:"lazy",className:"absolute border-none pointer-events-none",style:{transformOrigin:"0 0",width:u.width,height:u.height,left:E,top:C,transform:`scale(${A})`},onLoad:P=>{var $;try{const R=($=P.currentTarget.contentDocument)==null?void 0:$.querySelector("[data-composition-id]"),N=Number(R==null?void 0:R.getAttribute("data-width"))||ac.width,Z=Number(R==null?void 0:R.getAttribute("data-height"))||ac.height;d({width:N,height:Z}),b(s)}catch{d(ac)}},title:`${T} preview`,tabIndex:-1})}),y.jsxs("div",{className:"min-w-0 flex-1",children:[y.jsx("span",{className:"text-[11px] font-medium text-neutral-300 truncate block",children:T}),y.jsx("span",{className:"text-[9px] text-neutral-600 truncate block",children:e})]}),i&&y.jsx("button",{type:"button",title:a?"Rendering...":`Render ${T}`,"aria-label":a?"Rendering...":`Render ${T}`,disabled:a,onClick:P=>{P.stopPropagation(),i()},className:`flex-shrink-0 p-1 rounded transition-colors ${a?"text-neutral-600 cursor-not-allowed":"text-neutral-600 hover:text-studio-accent hover:bg-neutral-800"}`,children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[y.jsx("path",{d:"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4"}),y.jsx("polyline",{points:"7 10 12 15 17 10"}),y.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]})})]})}const sW=h.memo(function({projectId:e,compositions:t,activeComposition:r,onSelect:i,onRenderComposition:a,isRendering:s}){return t.length===0?y.jsx("div",{className:"flex-1 flex items-center justify-center px-4",children:y.jsx("p",{className:"text-xs text-neutral-600 text-center",children:"No compositions found"})}):y.jsx("div",{className:"flex-1 overflow-y-auto",children:t.map(o=>y.jsx(aW,{projectId:e,comp:o,isActive:r===o,onSelect:()=>i(o),onRender:a?()=>a(o):void 0,isRendering:s},o))})});function oE({src:n}){const[e,t]=h.useState(null);return h.useEffect(()=>{const r=document.createElement("video");r.crossOrigin="anonymous",r.muted=!0,r.preload="metadata";const i=document.createElement("canvas"),a=i.getContext("2d"),s=()=>{r.src="",r.load()};return r.addEventListener("loadedmetadata",()=>{r.currentTime=Math.min(2,r.duration*.1||2)}),r.addEventListener("seeked",()=>{a&&(i.width=r.videoWidth,i.height=r.videoHeight,a.drawImage(r,0,0),t(i.toDataURL("image/jpeg",.7)),s())}),r.addEventListener("error",s),r.src=n,r.load(),s},[n]),e?y.jsx("img",{src:e,alt:"",draggable:!1,className:"w-full h-full object-contain"}):y.jsx("div",{className:"w-full h-full bg-neutral-800 animate-pulse"})}function lW({serveUrl:n,name:e,isImage:t,isVideo:r,isAudio:i}){return y.jsxs(y.Fragment,{children:[t&&y.jsx("img",{src:n,alt:e,loading:"lazy",className:"w-full h-full object-contain",onError:a=>{a.target.style.display="none"}}),r&&y.jsx(oE,{src:n}),i&&y.jsx("div",{className:"w-full h-full flex items-center justify-center",children:y.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-purple-400",children:[y.jsx("path",{d:"M9 18V5l12-2v13",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("circle",{cx:"6",cy:"18",r:"3"}),y.jsx("circle",{cx:"18",cy:"16",r:"3"})]})}),!t&&!r&&!i&&y.jsx("div",{className:"w-full h-full flex items-center justify-center",children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-neutral-600",children:[y.jsx("path",{d:"M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("polyline",{points:"14 2 14 8 20 8",strokeLinecap:"round",strokeLinejoin:"round"})]})})]})}function oW({projectId:n,asset:e,onCopy:t,isCopied:r,onDelete:i,onRename:a}){const[s,o]=h.useState(!1),[u,d]=h.useState(null),[m,p]=h.useState(!1),[O,b]=h.useState(""),[S,k]=h.useState(!1),T=e.split("/").pop()??e,w=`/api/projects/${n}/preview/${e}`,A=IO.test(e);return y.jsxs(y.Fragment,{children:[y.jsxs("div",{draggable:!0,onClick:()=>t(e),onDragStart:E=>{E.dataTransfer.effectAllowed="copy",E.dataTransfer.setData(n8,JSON.stringify({path:e})),E.dataTransfer.setData("text/plain",e)},onContextMenu:E=>{E.preventDefault(),d({x:E.clientX,y:E.clientY})},onPointerEnter:()=>o(!0),onPointerLeave:()=>o(!1),className:`w-full text-left px-2 py-1.5 flex items-center gap-2.5 transition-colors cursor-pointer ${r?"bg-studio-accent/10 border-l-2 border-studio-accent":"border-l-2 border-transparent hover:bg-neutral-800/50"}`,children:[y.jsxs("div",{className:"w-16 h-10 rounded overflow-hidden bg-neutral-900 flex-shrink-0 relative",children:[y.jsx(lW,{serveUrl:w,name:T,isImage:C0.test(e),isVideo:A,isAudio:LO.test(e)}),A&&s&&y.jsx("video",{src:w,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"absolute inset-0 w-full h-full object-contain"})]}),y.jsx("div",{className:"min-w-0 flex-1",children:m?y.jsx("input",{autoFocus:!0,value:O,onChange:E=>b(E.target.value),onKeyDown:E=>{if(E.key==="Enter"){E.preventDefault();const C=O.trim();if(C&&C!==T){const P=e.includes("/")?e.slice(0,e.lastIndexOf("/")+1):"";a==null||a(e,P+C)}p(!1)}else E.key==="Escape"&&p(!1)},onBlur:()=>{const E=O.trim();if(E&&E!==T){const C=e.includes("/")?e.slice(0,e.lastIndexOf("/")+1):"";a==null||a(e,C+E)}p(!1)},onClick:E=>E.stopPropagation(),className:"w-full bg-neutral-800 text-neutral-200 text-[11px] px-1.5 py-0.5 rounded border border-neutral-600 outline-none focus:border-studio-accent",spellCheck:!1}):y.jsxs(y.Fragment,{children:[y.jsx("span",{className:"text-[11px] font-medium text-neutral-300 truncate block",children:T}),r?y.jsx("span",{className:"text-[9px] text-studio-accent",children:"Copied!"}):y.jsx("span",{className:"text-[9px] text-neutral-600 truncate block",children:e})]})})]}),u&&y.jsx("div",{className:"fixed inset-0 z-[200]",onClick:()=>d(null),onContextMenu:E=>{E.preventDefault(),d(null)},children:y.jsxs("div",{className:"absolute bg-neutral-900 border border-neutral-700 rounded-lg shadow-xl py-1 min-w-[140px] text-xs",style:{left:u.x,top:u.y},children:[y.jsx("button",{onClick:E=>{E.stopPropagation(),t(e),d(null)},className:"w-full text-left px-3 py-1.5 text-neutral-300 hover:bg-neutral-800 transition-colors",children:"Copy path"}),a&&y.jsx("button",{onClick:E=>{E.stopPropagation(),b(T),p(!0),d(null)},className:"w-full text-left px-3 py-1.5 text-neutral-300 hover:bg-neutral-800 transition-colors",children:"Rename"}),i&&y.jsx("button",{onClick:E=>{E.stopPropagation(),k(!0),d(null)},className:"w-full text-left px-3 py-1.5 text-red-400 hover:bg-neutral-800 transition-colors",children:"Delete"})]})}),S&&y.jsxs("div",{className:"px-2 py-1.5 bg-red-950/30 border-l-2 border-red-500 flex items-center justify-between gap-2",children:[y.jsxs("span",{className:"text-[10px] text-red-400 truncate",children:["Delete ",T,"?"]}),y.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[y.jsx("button",{onClick:E=>{E.stopPropagation(),i==null||i(e),k(!1)},className:"px-2 py-0.5 text-[10px] rounded bg-red-600 text-white hover:bg-red-500 transition-colors",children:"Delete"}),y.jsx("button",{onClick:E=>{E.stopPropagation(),k(!1)},className:"px-2 py-0.5 text-[10px] rounded text-neutral-400 hover:text-neutral-200 transition-colors",children:"Cancel"})]})]})]})}const cW=h.memo(function({projectId:e,assets:t,onImport:r,onDelete:i,onRename:a}){const s=h.useRef(null),[o,u]=h.useState(!1),[d,m]=h.useState(null),p=h.useCallback(S=>{S.preventDefault(),u(!1),S.dataTransfer.files.length&&(r==null||r(S.dataTransfer.files))},[r]),O=h.useCallback(async S=>{await A0(S)&&(m(S),setTimeout(()=>m(null),1500))},[]),b=t.filter(S=>Hw.test(S));return y.jsxs("div",{className:`flex-1 flex flex-col min-h-0 transition-colors ${o?"bg-studio-accent/[0.05]":""}`,onDragOver:S=>{S.preventDefault(),u(!0)},onDragLeave:()=>u(!1),onDrop:p,children:[r&&y.jsxs("div",{className:"px-3 py-2 border-b border-neutral-800/40 flex-shrink-0",children:[y.jsxs("button",{onClick:()=>{var S;return(S=s.current)==null?void 0:S.click()},className:"w-full flex items-center justify-center gap-1.5 px-2 py-1.5 text-[11px] rounded-lg border border-dashed border-neutral-700/50 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600 transition-colors",children:[y.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",children:y.jsx("path",{d:"M12 5v14M5 12h14"})}),"Import media"]}),y.jsx("input",{ref:s,type:"file",accept:"video/*,image/*,audio/*",multiple:!0,className:"hidden",onChange:S=>{var k;(k=S.target.files)!=null&&k.length&&(r(S.target.files),S.target.value="")}})]}),y.jsx("div",{className:"flex-1 overflow-y-auto",children:b.length===0?y.jsxs("div",{className:"flex flex-col items-center justify-center h-full px-4 gap-2",children:[y.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-neutral-700",children:[y.jsx("path",{d:"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("polyline",{points:"17 8 12 3 7 8",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("line",{x1:"12",y1:"3",x2:"12",y2:"15",strokeLinecap:"round"})]}),y.jsx("p",{className:"text-[10px] text-neutral-600 text-center",children:"Drop media files here"})]}):b.map(S=>y.jsx(oW,{projectId:e,asset:S,onCopy:O,isCopied:d===S,onDelete:i,onRename:a},S))})]})});var cE=Mw();const EO=[{id:"captions",label:"Captions",color:"cyan"},{id:"vfx",label:"VFX",color:"purple"},{id:"transitions",label:"Transitions",color:"blue"},{id:"effects",label:"Effects",color:"rose"},{id:"social",label:"Social",color:"pink"},{id:"data",label:"Data",color:"green"},{id:"scenes",label:"Scenes",color:"amber"}];function uW(n){if(!n||n.length===0)return"scenes";const e=new Set(n);return e.has("captions")||e.has("caption-style")?"captions":e.has("transition")?"transitions":e.has("social")||e.has("overlay")?"social":e.has("data")||e.has("chart")||e.has("map")?"data":e.has("html-in-canvas")||e.has("webgl")||e.has("shader")?"vfx":e.has("effect")||e.has("grain")||e.has("vignette")?"effects":"scenes"}const fW={transitions:{bg:"bg-blue-500/15",text:"text-blue-400",dot:"bg-blue-400"},vfx:{bg:"bg-purple-500/15",text:"text-purple-400",dot:"bg-purple-400"},social:{bg:"bg-pink-500/15",text:"text-pink-400",dot:"bg-pink-400"},data:{bg:"bg-green-500/15",text:"text-green-400",dot:"bg-green-400"},scenes:{bg:"bg-amber-500/15",text:"text-amber-400",dot:"bg-amber-400"},captions:{bg:"bg-cyan-500/15",text:"text-cyan-400",dot:"bg-cyan-400"},effects:{bg:"bg-rose-500/15",text:"text-rose-400",dot:"bg-rose-400"}};function uE(n){return fW[n]}function dW(){const[n,e]=h.useState([]),[t,r]=h.useState(!0),[i,a]=h.useState(null),[s,o]=h.useState(""),[u,d]=h.useState(null);h.useEffect(()=>{const p={captions:0,vfx:1,transitions:2,effects:3,social:4,data:5,scenes:6};let O=!1;return(async()=>{try{const b=await fetch("/api/registry/blocks");if(!b.ok)throw new Error("Failed to load catalog");const S=await b.json();if(O)return;const k=S.map(T=>({...T,category:uW(T.tags)})).sort((T,w)=>(p[T.category]??9)-(p[w.category]??9));e(k)}catch(b){if(O)return;a(b instanceof Error?b.message:"Failed to load catalog")}finally{O||r(!1)}})(),()=>{O=!0}},[]);const m=h.useMemo(()=>{let p=n;if(u&&(p=p.filter(O=>O.category===u)),s.trim()){const O=s.toLowerCase();p=p.filter(b=>b.title.toLowerCase().includes(O)||b.description.toLowerCase().includes(O))}return p},[n,u,s]);return{blocks:n,loading:t,error:i,search:s,setSearch:o,category:u,setCategory:d,filteredBlocks:m}}const hW=h.memo(function({onAddBlock:e}){const{loading:t,error:r,search:i,setSearch:a,category:s,setCategory:o,filteredBlocks:u}=dW();return t?y.jsx("div",{className:"flex flex-1 items-center justify-center text-neutral-600 text-xs",children:"Loading blocks…"}):r?y.jsx("div",{className:"flex flex-1 items-center justify-center text-red-400 text-xs px-4 text-center",children:r}):y.jsxs("div",{className:"flex flex-col flex-1 min-h-0",children:[y.jsx("div",{className:"px-3 pt-2 pb-1 flex-shrink-0",children:y.jsxs("div",{className:"relative",children:[y.jsxs("svg",{className:"absolute left-2 top-1/2 -translate-y-1/2 text-neutral-500",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[y.jsx("circle",{cx:"11",cy:"11",r:"8"}),y.jsx("path",{d:"m21 21-4.35-4.35"})]}),y.jsx("input",{type:"text",value:i,onChange:d=>a(d.target.value),placeholder:"Search blocks…",className:"w-full bg-neutral-900 border border-neutral-800 rounded-md pl-7 pr-2 py-1.5 text-[11px] text-neutral-200 placeholder:text-neutral-600 focus:outline-none focus:border-neutral-700 transition-colors"})]})}),y.jsx("div",{className:"px-3 pt-1 pb-2 flex-shrink-0 overflow-x-auto",children:y.jsxs("div",{className:"flex gap-1",children:[y.jsx(Bv,{label:"All",active:s===null,onClick:()=>o(null)}),EO.map(d=>y.jsx(Bv,{label:d.label,category:d.id,active:s===d.id,onClick:()=>o(s===d.id?null:d.id)},d.id))]})}),y.jsxs("div",{className:"flex-1 overflow-y-auto min-h-0 px-2 pb-2",children:[s==="vfx"&&y.jsxs("div",{className:"mb-2 px-2 py-1.5 rounded-md bg-purple-500/10 border border-purple-500/20 text-[9px] text-purple-300 leading-relaxed",children:["VFX blocks use WebGL via HTML-in-Canvas. Enable"," ",y.jsx("span",{className:"font-mono text-purple-200",children:"chrome://flags/#html-in-canvas"})," for preview."]}),u.length===0?y.jsx("div",{className:"flex items-center justify-center h-32 text-neutral-600 text-xs",children:"No blocks match your search"}):y.jsx("div",{className:"grid gap-1.5",style:{gridTemplateColumns:"repeat(auto-fill, minmax(120px, 1fr))"},children:u.map(d=>{var O,b;const m="duration"in d?d.duration:void 0,p="dimensions"in d?d.dimensions:void 0;return y.jsx(mW,{name:d.name,title:d.title,duration:m,category:d.category,tags:d.tags,posterUrl:(O=d.preview)==null?void 0:O.poster,videoUrl:(b=d.preview)==null?void 0:b.video,dimensions:p,onAdd:()=>e(d.name)},d.name)})})]})]})});function Bv({label:n,category:e,active:t,onClick:r}){const i=e?uE(e):null;return y.jsx("button",{type:"button",onClick:r,className:`flex-shrink-0 px-2 py-1 rounded-full text-[10px] font-medium transition-colors ${t?i?`${i.bg} ${i.text}`:"bg-neutral-700 text-neutral-200":"bg-neutral-900 text-neutral-500 hover:text-neutral-300"}`,children:n})}function mW({name:n,title:e,duration:t,category:r,tags:i,posterUrl:a,videoUrl:s,dimensions:o,onAdd:u}){var R,N;const[d,m]=h.useState(!1),[p,O]=h.useState(!1),b=h.useRef(null),S=h.useRef(null),k=h.useRef(null),T=uE(r),w=(i==null?void 0:i.includes("html-in-canvas"))||(i==null?void 0:i.includes("webgl")),A=h.useCallback(()=>{S.current&&(clearTimeout(S.current),S.current=null)},[]),E=h.useCallback(()=>{A(),b.current=setTimeout(()=>m(!0),500)},[A]),C=h.useCallback(()=>{b.current&&(clearTimeout(b.current),b.current=null),A(),m(!1)},[A]),P=h.useCallback(()=>{b.current&&(clearTimeout(b.current),b.current=null),S.current=setTimeout(()=>m(!1),150)},[]);h.useEffect(()=>{if(!d)return;const Z=D=>{D.key==="Escape"&&C()};return window.addEventListener("keydown",Z),()=>window.removeEventListener("keydown",Z)},[d,C]);const $=h.useCallback(Z=>{Z.stopPropagation(),!p&&(O(!0),u(),setTimeout(()=>O(!1),1e3))},[u,p]),M=h.useCallback(Z=>{Z.dataTransfer.effectAllowed="copy",Z.dataTransfer.setData(r8,JSON.stringify({name:n,duration:t,dimensions:o}))},[n,t,o]);return y.jsxs("div",{className:"group/card rounded-md overflow-hidden cursor-pointer transition-colors bg-neutral-900 hover:bg-neutral-800",onPointerEnter:E,onPointerLeave:P,draggable:!0,onDragStart:M,children:[y.jsxs("div",{className:"aspect-video w-full overflow-hidden relative",children:[d&&s?y.jsx("video",{ref:k,src:s,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"w-full h-full object-cover"}):a?y.jsx("img",{src:a,alt:e,loading:"lazy",className:"w-full h-full object-cover"}):s?y.jsx("video",{src:s,muted:!0,playsInline:!0,preload:"metadata",className:"w-full h-full object-cover"}):y.jsx("div",{className:`w-full h-full flex items-center justify-center ${T.bg}`,children:y.jsx("span",{className:`text-[9px] font-medium ${T.text}`,children:r.toUpperCase()})}),y.jsx("button",{type:"button",onClick:$,className:"absolute inset-0 flex items-center justify-center bg-black/60 opacity-0 group-hover/card:opacity-100 transition-opacity",children:y.jsx("span",{className:"text-[10px] font-semibold text-white",children:p?"Added":"Add"})}),y.jsxs("div",{className:"absolute top-1 right-1 flex items-center gap-0.5 pointer-events-none",children:[w&&y.jsx("span",{className:"px-1 py-px rounded text-[7px] font-semibold text-purple-300 bg-purple-900/70",children:"WebGL"}),t!=null&&y.jsxs("span",{className:"px-1 py-px rounded text-[8px] font-medium text-white/80 bg-black/50",children:[t,"s"]})]})]}),y.jsxs("div",{className:"px-1.5 py-1.5",children:[y.jsx("div",{className:"text-[10px] font-medium text-neutral-200 truncate leading-tight",children:e}),y.jsxs("div",{className:"flex items-center gap-1 mt-0.5",children:[y.jsx("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${T.dot}`}),y.jsx("span",{className:`text-[8px] ${T.text}`,children:(R=EO.find(Z=>Z.id===r))==null?void 0:R.label})]})]}),d&&(s||a)&&cE.createPortal(y.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center cursor-pointer",onClick:C,onPointerEnter:A,onPointerLeave:P,children:[y.jsx("div",{className:"bg-black/80 absolute inset-0"}),y.jsx("button",{type:"button",onClick:C,className:"absolute top-4 right-4 z-10 flex h-8 w-8 items-center justify-center rounded-full bg-neutral-800/80 text-neutral-400 hover:text-white hover:bg-neutral-700 transition-colors",children:y.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[y.jsx("path",{d:"M18 6 6 18"}),y.jsx("path",{d:"m6 6 12 12"})]})}),y.jsxs("div",{className:"relative rounded-xl overflow-hidden shadow-2xl border border-neutral-600/30 cursor-default",style:{width:"80vw",maxWidth:1200,maxHeight:"80vh"},onClick:Z=>Z.stopPropagation(),children:[y.jsx("div",{className:"aspect-video bg-neutral-950",children:s?y.jsx("video",{src:s,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"w-full h-full object-contain"}):y.jsx("img",{src:a,alt:e,className:"w-full h-full object-contain"})}),y.jsxs("div",{className:"bg-neutral-900/95 px-4 py-3",children:[y.jsx("div",{className:"text-[14px] font-semibold text-neutral-100",children:e}),y.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[y.jsx("span",{className:`w-2 h-2 rounded-full ${T.dot}`}),y.jsx("span",{className:`text-[11px] ${T.text}`,children:(N=EO.find(Z=>Z.id===r))==null?void 0:N.label}),t!=null&&y.jsxs("span",{className:"text-[11px] text-neutral-500",children:[t,"s"]})]})]})]})]}),document.body)]})}const Pn=14,Cn="duotone";function fE({path:n}){var r;const e=((r=n.split(".").pop())==null?void 0:r.toLowerCase())??"",t="flex-shrink-0";return e==="html"?y.jsx(wZ,{size:Pn,weight:Cn,color:"#E44D26",className:t}):e==="css"?y.jsx(vZ,{size:Pn,weight:Cn,color:"#264DE4",className:t}):e==="js"||e==="mjs"||e==="cjs"?y.jsx(AZ,{size:Pn,weight:Cn,color:"#F0DB4F",className:t}):e==="jsx"?y.jsx(PZ,{size:Pn,weight:Cn,color:"#61DAFB",className:t}):e==="ts"||e==="mts"?y.jsx($Z,{size:Pn,weight:Cn,color:"#3178C6",className:t}):e==="tsx"?y.jsx(RZ,{size:Pn,weight:Cn,color:"#3178C6",className:t}):e==="json"?y.jsx(kZ,{size:Pn,weight:Cn,color:"#4ADE80",className:t}):e==="svg"?y.jsx(MZ,{size:Pn,weight:Cn,color:"#F97316",className:t}):e==="md"||e==="mdx"?y.jsx(CZ,{size:Pn,weight:Cn,color:"#9CA3AF",className:t}):e==="txt"?y.jsx(QZ,{size:Pn,weight:Cn,color:"#9CA3AF",className:t}):e==="png"?y.jsx(EZ,{size:Pn,weight:Cn,color:"#22C55E",className:t}):e==="jpg"||e==="jpeg"?y.jsx(TZ,{size:Pn,weight:Cn,color:"#22C55E",className:t}):e==="webp"||e==="gif"||e==="ico"?y.jsx(DZ,{size:Pn,weight:Cn,color:"#22C55E",className:t}):e==="mp4"||e==="webm"||e==="mov"?y.jsx(_Z,{size:Pn,weight:Cn,color:"#A855F7",className:t}):e==="mp3"||e==="wav"||e==="ogg"||e==="m4a"?y.jsx(qZ,{size:Pn,weight:Cn,color:"#3CE6AC",className:t}):e==="woff"||e==="woff2"||e==="ttf"||e==="otf"?y.jsx(FZ,{size:Pn,weight:Cn,color:"#6B7280",className:t}):y.jsx(SZ,{size:Pn,weight:Cn,color:"#6B7280",className:t})}function pW(n){const e={name:"",fullPath:"",children:new Map,isFile:!1};for(const t of n){const r=t.split("/");let i=e;for(let a=0;a<r.length;a++){const s=r[a],o=a===r.length-1,u=r.slice(0,a+1).join("/");i.children.has(s)||i.children.set(s,{name:s,fullPath:u,children:new Map,isFile:o}),i=i.children.get(s),o&&(i.isFile=!0)}}return e}function dE(n){return Array.from(n.values()).sort((e,t)=>e.name==="index.html"?-1:t.name==="index.html"?1:!e.isFile&&t.isFile?-1:e.isFile&&!t.isFile?1:e.name.localeCompare(t.name))}function u4(n,e){if(!e)return!1;if(n.fullPath===e)return!0;for(const t of n.children.values())if(u4(t,e))return!0;return!1}const gW=14;function OW({state:n,onClose:e,onNewFile:t,onNewFolder:r,onRename:i,onDuplicate:a,onDelete:s}){const o=h.useRef(null);h.useEffect(()=>{const p=b=>{o.current&&!o.current.contains(b.target)&&e()},O=b=>{b.key==="Escape"&&e()};return document.addEventListener("mousedown",p),document.addEventListener("keydown",O),()=>{document.removeEventListener("mousedown",p),document.removeEventListener("keydown",O)}},[e]);const u=Math.min(n.x,window.innerWidth-180),d=Math.min(n.y,window.innerHeight-200),m=n.targetIsFolder?n.targetPath:n.targetPath.includes("/")?n.targetPath.slice(0,n.targetPath.lastIndexOf("/")):"";return y.jsxs("div",{ref:o,className:"fixed z-50 bg-neutral-900 border border-neutral-700 rounded-md shadow-lg py-1 min-w-[160px]",style:{left:u,top:d},children:[n.targetIsFolder&&y.jsxs(y.Fragment,{children:[y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-neutral-300 hover:bg-neutral-800 cursor-pointer text-left",onClick:()=>{t(n.targetPath),e()},children:[y.jsx(H5,{size:12,weight:"duotone",className:"text-neutral-500"}),"New File"]}),y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-neutral-300 hover:bg-neutral-800 cursor-pointer text-left",onClick:()=>{r(n.targetPath),e()},children:[y.jsx(DT,{size:12,weight:"duotone",className:"text-neutral-500"}),"New Folder"]}),y.jsx("div",{className:"border-t border-neutral-700 my-1"})]}),!n.targetIsFolder&&y.jsxs(y.Fragment,{children:[y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-neutral-300 hover:bg-neutral-800 cursor-pointer text-left",onClick:()=>{t(m),e()},children:[y.jsx(H5,{size:12,weight:"duotone",className:"text-neutral-500"}),"New File"]}),y.jsx("div",{className:"border-t border-neutral-700 my-1"})]}),y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-neutral-300 hover:bg-neutral-800 cursor-pointer text-left",onClick:()=>{i(n.targetPath),e()},children:[y.jsx(zZ,{size:12,weight:"duotone",className:"text-neutral-500"}),"Rename"]}),!n.targetIsFolder&&y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-neutral-300 hover:bg-neutral-800 cursor-pointer text-left",onClick:()=>{a(n.targetPath),e()},children:[y.jsx(bZ,{size:12,weight:"duotone",className:"text-neutral-500"}),"Duplicate"]}),y.jsx("div",{className:"border-t border-neutral-700 my-1"}),y.jsxs("button",{className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-red-400 hover:bg-red-900/30 cursor-pointer text-left",onClick:()=>{s(n.targetPath),e()},children:[y.jsx(UZ,{size:12,weight:"duotone"}),"Delete"]})]})}function x1({defaultValue:n,depth:e,isFolder:t,onCommit:r,onCancel:i}){const a=h.useRef(null),s=h.useRef(!1),[o,u]=h.useState(n);h.useEffect(()=>{const O=a.current;if(O)if(O.focus(),n&&n.includes(".")){const b=n.lastIndexOf(".");O.setSelectionRange(0,b)}else O.select()},[n]);const d=O=>{s.current||(s.current=!0,r(O))},m=O=>{if(O.key==="Enter"){O.preventDefault();const b=o.trim();b&&!(/[/\\]/.test(b)||b.includes(".."))?d(b):i()}else O.key==="Escape"&&(O.preventDefault(),i())},p=()=>{const O=o.trim();O&&O!==n&&!(/[/\\]/.test(O)||O.includes(".."))?d(O):i()};return y.jsxs("div",{className:"flex items-center gap-2 py-0.5 min-h-7",style:{paddingLeft:`${8+e*12+(t?0:14)}px`},children:[t?y.jsx(jZ,{size:gW,weight:"duotone",color:"#6B7280",className:"flex-shrink-0"}):y.jsx(fE,{path:o}),y.jsx("input",{ref:a,value:o,onChange:O=>u(O.target.value),onKeyDown:m,onBlur:p,className:"flex-1 min-w-0 bg-neutral-800 text-neutral-200 text-xs px-1.5 py-0.5 rounded border border-neutral-600 outline-none focus:border-[#3CE6AC]",spellCheck:!1})]})}function yW({name:n,onConfirm:e,onCancel:t}){const r=h.useRef(null);return h.useEffect(()=>{const i=s=>{s.key==="Escape"&&t()},a=s=>{r.current&&!r.current.contains(s.target)&&t()};return document.addEventListener("keydown",i),document.addEventListener("mousedown",a),()=>{document.removeEventListener("keydown",i),document.removeEventListener("mousedown",a)}},[t]),y.jsxs("div",{ref:r,className:"mx-1 my-0.5 p-2 bg-neutral-800 border border-neutral-700 rounded-md text-xs",children:[y.jsxs("p",{className:"text-neutral-300 mb-2",children:["Delete ",y.jsx("span",{className:"font-medium text-neutral-100",children:n}),"?"]}),y.jsxs("div",{className:"flex gap-1.5",children:[y.jsx("button",{onClick:t,className:"flex-1 px-2 py-1 rounded bg-neutral-700 text-neutral-300 hover:bg-neutral-600 transition-colors",children:"Cancel"}),y.jsx("button",{onClick:e,className:"flex-1 px-2 py-1 rounded bg-red-900/60 text-red-300 hover:bg-red-800/60 transition-colors",children:"Delete"})]})]})}const MO=h.memo(function({node:e,depth:t,activeFile:r,onSelectFile:i,onContextMenu:a,inlineInput:s,onDragStart:o}){const u=e.fullPath===r;return(s==null?void 0:s.mode)==="rename"&&s.originalPath===e.fullPath?y.jsx(x1,{defaultValue:s.originalName??e.name,depth:t,isFolder:!1,onCommit:m=>{var p;(p=s==null?void 0:s.onCommit)==null||p.call(s,m)},onCancel:()=>{var m;(m=s==null?void 0:s.onCancel)==null||m.call(s)}}):y.jsxs("button",{draggable:!0,onDragStart:m=>o(m,e.fullPath),onClick:()=>i(e.fullPath),onContextMenu:m=>{m.preventDefault(),a(m,e.fullPath,!1)},className:`w-full flex items-center gap-2 py-1 min-h-7 text-left transition-all text-xs ${u?"bg-neutral-800/60 text-neutral-200":"text-neutral-500 hover:bg-neutral-800/30 hover:text-neutral-300"}`,style:{paddingLeft:`${8+t*12+14}px`},children:[y.jsx(fE,{path:e.name}),y.jsx("span",{className:"truncate",children:e.name})]})}),bW=h.memo(function n({node:e,depth:t,activeFile:r,onSelectFile:i,defaultOpen:a,onContextMenu:s,inlineInput:o,onDragStart:u,onDragOver:d,onDrop:m,onDragLeave:p,dragOverFolder:O}){const[b,S]=h.useState(a),k=h.useCallback(()=>S(C=>!C),[]),T=h.useMemo(()=>dE(e.children),[e.children]),w=b?uL:fL,A=O===e.fullPath;return(o==null?void 0:o.mode)==="rename"&&o.originalPath===e.fullPath?y.jsx(x1,{defaultValue:o.originalName??e.name,depth:t,isFolder:!0,onCommit:C=>{var P;(P=o==null?void 0:o.onCommit)==null||P.call(o,C)},onCancel:()=>{var C;(C=o==null?void 0:o.onCancel)==null||C.call(o)}}):y.jsxs(y.Fragment,{children:[y.jsxs("button",{draggable:!0,onDragStart:C=>u(C,e.fullPath),onClick:k,onContextMenu:C=>{C.preventDefault(),s(C,e.fullPath,!0)},onDragOver:C=>{C.preventDefault(),C.stopPropagation(),d(C,e.fullPath)},onDrop:C=>{C.preventDefault(),C.stopPropagation(),m(C,e.fullPath)},onDragLeave:p,className:`w-full flex items-center gap-1.5 px-2.5 py-1 min-h-7 text-left text-xs text-neutral-400 hover:bg-neutral-800/30 hover:text-neutral-300 transition-colors ${A?"bg-[#3CE6AC]/10 outline outline-1 outline-[#3CE6AC]/40":""}`,style:{paddingLeft:`${8+t*12}px`},children:[y.jsx(w,{size:10,className:"flex-shrink-0 text-neutral-600"}),y.jsx("span",{className:"truncate font-medium",children:e.name})]}),b&&y.jsxs(y.Fragment,{children:[o&&(o.mode==="new-file"||o.mode==="new-folder")&&o.parentPath===e.fullPath&&y.jsx(x1,{defaultValue:"",depth:t+1,isFolder:o.mode==="new-folder",onCommit:C=>{var P;(P=o==null?void 0:o.onCommit)==null||P.call(o,C)},onCancel:()=>{var C;(C=o==null?void 0:o.onCancel)==null||C.call(o)}}),T.map(C=>C.isFile&&C.children.size===0?y.jsx(MO,{node:C,depth:t+1,activeFile:r,onSelectFile:i,onContextMenu:s,inlineInput:o,onDragStart:u},C.fullPath):C.children.size>0?y.jsx(n,{node:C,depth:t+1,activeFile:r,onSelectFile:i,defaultOpen:u4(C,r),onContextMenu:s,inlineInput:o,onDragStart:u,onDragOver:d,onDrop:m,onDragLeave:p,dragOverFolder:O},C.fullPath):y.jsx(MO,{node:C,depth:t+1,activeFile:r,onSelectFile:i,onContextMenu:s,inlineInput:o,onDragStart:u},C.fullPath))]})]})}),xW=h.memo(function({files:e,activeFile:t,onSelectFile:r,onCreateFile:i,onCreateFolder:a,onDeleteFile:s,onRenameFile:o,onDuplicateFile:u,onMoveFile:d,onImportFiles:m}){const p=h.useMemo(()=>pW(e),[e]),O=h.useMemo(()=>dE(p.children),[p]),[b,S]=h.useState(null),[k,T]=h.useState(null),[w,A]=h.useState(null),[E,C]=h.useState(null),P=h.useRef(null),$=!!(i||a||s||o||u),M=h.useCallback((_,j,H)=>{$&&(_.preventDefault(),S({x:_.clientX,y:_.clientY,targetPath:j,targetIsFolder:H}))},[$]),R=h.useCallback(()=>S(null),[]),N=h.useCallback(_=>{T({parentPath:_,mode:"new-file",onCommit:j=>{const H=_?`${_}/${j}`:j;i==null||i(H),T(null)},onCancel:()=>T(null)})},[i]),Z=h.useCallback(_=>{T({parentPath:_,mode:"new-folder",onCommit:j=>{const H=_?`${_}/${j}`:j;a==null||a(H),T(null)},onCancel:()=>T(null)})},[a]),D=h.useCallback(_=>{const j=_.includes("/")?_.slice(_.lastIndexOf("/")+1):_,H=_.includes("/")?_.slice(0,_.lastIndexOf("/")):"";T({parentPath:H,mode:"rename",originalPath:_,originalName:j,onCommit:F=>{if(F!==j){const Y=H?`${H}/${F}`:F;o==null||o(_,Y)}T(null)},onCancel:()=>T(null)})},[o]),I=h.useCallback(_=>{u==null||u(_)},[u]),U=h.useCallback(_=>{A(_)},[]),K=h.useCallback(()=>{w&&(s==null||s(w),A(null))},[w,s]),q=h.useCallback(()=>{A(null)},[]),L=h.useCallback((_,j)=>{P.current=j,_.dataTransfer.effectAllowed="move",_.dataTransfer.setData("text/plain",j)},[]),W=h.useCallback((_,j)=>{C(j)},[]),ee=h.useCallback((_,j)=>{if(_.dataTransfer.files.length>0&&!P.current){_.preventDefault(),m==null||m(_.dataTransfer.files,j||void 0),C(null);return}const H=P.current;if(!H||!d){C(null);return}const F=H.includes("/")?H.slice(H.lastIndexOf("/")+1):H,Y=j?`${j}/${F}`:F;Y!==H&&!j.startsWith(H+"/")&&d(H,Y),C(null),P.current=null},[d,m]),X=h.useCallback(()=>{C(null)},[]),B=h.useCallback(_=>{$&&_.target===_.currentTarget&&(_.preventDefault(),S({x:_.clientX,y:_.clientY,targetPath:"",targetIsFolder:!0}))},[$]);return y.jsxs("div",{className:"flex flex-col h-full min-h-0",children:[$&&y.jsxs("div",{className:"flex items-center justify-between px-2.5 py-1.5 border-b border-neutral-800/50 flex-shrink-0",children:[y.jsx("span",{className:"text-[10px] font-semibold tracking-wider text-neutral-600 uppercase",children:"Files"}),y.jsxs("div",{className:"flex items-center gap-0.5",children:[y.jsx("button",{onClick:()=>N(""),className:"p-0.5 rounded hover:bg-neutral-800 text-neutral-600 hover:text-neutral-400 transition-colors",title:"New File",children:y.jsx(XT,{size:12,weight:"bold"})}),y.jsx("button",{onClick:()=>Z(""),className:"p-0.5 rounded hover:bg-neutral-800 text-neutral-600 hover:text-neutral-400 transition-colors",title:"New Folder",children:y.jsx(DT,{size:12,weight:"duotone"})})]})]}),y.jsxs("div",{className:`flex-1 overflow-y-auto py-1 transition-colors ${E===""?"bg-[#3CE6AC]/5 outline outline-1 outline-[#3CE6AC]/30 -outline-offset-1":""}`,onContextMenu:B,onDragOver:_=>{_.preventDefault(),_.target===_.currentTarget&&C("")},onDragLeave:_=>{_.target===_.currentTarget&&C(null)},onDrop:_=>{_.preventDefault(),ee(_,"")},children:[k&&(k.mode==="new-file"||k.mode==="new-folder")&&k.parentPath===""&&y.jsx(x1,{defaultValue:"",depth:0,isFolder:k.mode==="new-folder",onCommit:_=>{var j;return(j=k.onCommit)==null?void 0:j.call(k,_)},onCancel:()=>{var _;return(_=k.onCancel)==null?void 0:_.call(k)}}),O.map(_=>_.isFile&&_.children.size===0?y.jsx(MO,{node:_,depth:0,activeFile:t,onSelectFile:r,onContextMenu:M,inlineInput:k,onDragStart:L},_.fullPath):y.jsx(bW,{node:_,depth:0,activeFile:t,onSelectFile:r,defaultOpen:u4(_,t),onContextMenu:M,inlineInput:k,onDragStart:L,onDragOver:W,onDrop:ee,onDragLeave:X,dragOverFolder:E},_.fullPath))]}),w&&y.jsx("div",{className:"border-t border-neutral-800/50 flex-shrink-0",children:y.jsx(yW,{name:w.includes("/")?w.slice(w.lastIndexOf("/")+1):w,onConfirm:K,onCancel:q})}),b&&y.jsx(OW,{state:b,onClose:R,onNewFile:N,onNewFolder:Z,onRename:D,onDuplicate:I,onDelete:U})]})}),hE="hf-studio-sidebar-tab";function SW(){const n=localStorage.getItem(hE);return n==="assets"?"assets":n==="code"?"code":n==="blocks"?"blocks":"compositions"}const kW=h.memo(h.forwardRef(function({width:e=240,projectId:t,compositions:r,assets:i,activeComposition:a,onSelectComposition:s,onImportFiles:o,fileTree:u,editingFile:d,onSelectFile:m,onCreateFile:p,onCreateFolder:O,onDeleteFile:b,onRenameFile:S,onDuplicateFile:k,onMoveFile:T,codeChildren:w,onRenderComposition:A,isRendering:E,onLint:C,linting:P,onToggleCollapse:$,onAddBlock:M,takeoverContent:R},N){const[Z,D]=h.useState(SW),I=h.useCallback(U=>{D(U),localStorage.setItem(hE,U)},[]);return h.useImperativeHandle(N,()=>({selectTab:I}),[I]),y.jsx("div",{className:"flex flex-col h-full bg-neutral-950 border-r border-neutral-800/50",style:{width:e},children:R?y.jsx("div",{className:"flex min-h-0 flex-1",children:R}):y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"border-b border-neutral-800/50 px-3 py-3 flex-shrink-0",children:y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsxs("div",{className:"grid min-w-0 flex-1 gap-0.5 rounded-[18px] bg-neutral-900 p-1 shadow-[inset_0_1px_0_rgba(255,255,255,0.03)]",style:{gridTemplateColumns:Bg?"1fr 1fr 1fr 1fr":"1fr 1fr 1fr"},children:[y.jsx("button",{type:"button",onClick:()=>I("code"),className:`rounded-[14px] px-1.5 py-2 text-[10px] font-semibold truncate transition-all ${Z==="code"?"bg-neutral-800 text-white":"text-neutral-500 hover:text-neutral-200"}`,children:"Code"}),y.jsx("button",{type:"button",onClick:()=>I("compositions"),className:`rounded-[14px] px-1.5 py-2 text-[10px] font-semibold truncate transition-all ${Z==="compositions"?"bg-neutral-800 text-white":"text-neutral-500 hover:text-neutral-200"}`,children:"Comps"}),y.jsx("button",{type:"button",onClick:()=>I("assets"),className:`rounded-[14px] px-1.5 py-2 text-[10px] font-semibold truncate transition-all ${Z==="assets"?"bg-neutral-800 text-white":"text-neutral-500 hover:text-neutral-200"}`,children:"Assets"}),Bg&&y.jsx("button",{type:"button",onClick:()=>I("blocks"),className:`rounded-[14px] px-1.5 py-2 text-[10px] font-semibold truncate transition-all ${Z==="blocks"?"bg-neutral-800 text-white":"text-neutral-500 hover:text-neutral-200"}`,children:"Blocks"})]}),$&&y.jsx("button",{type:"button",onClick:$,className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-md border border-transparent text-neutral-500 transition-colors hover:border-neutral-800 hover:bg-neutral-900 hover:text-neutral-300",title:"Hide sidebar","aria-label":"Hide sidebar",children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"m14 7-5 5 5 5"}),y.jsx("path",{d:"M19 4v16"})]})})]})}),Z==="compositions"&&y.jsx(sW,{projectId:t,compositions:r,activeComposition:a,onSelect:s,onRenderComposition:A,isRendering:E}),Z==="assets"&&y.jsx(cW,{projectId:t,assets:i,onImport:o,onDelete:b,onRename:S}),Z==="code"&&y.jsxs("div",{className:"flex flex-1 min-h-0",children:[((u==null?void 0:u.length)??0)>0&&y.jsx("div",{className:"w-[160px] flex-shrink-0 border-r border-neutral-800 overflow-y-auto",children:y.jsx(xW,{files:u??[],activeFile:(d==null?void 0:d.path)??null,onSelectFile:m??(()=>{}),onCreateFile:p,onCreateFolder:O,onDeleteFile:b,onRenameFile:S,onDuplicateFile:k,onMoveFile:T,onImportFiles:o})}),y.jsx("div",{className:"flex-1 overflow-hidden min-w-0",children:w??y.jsx("div",{className:"flex items-center justify-center h-full text-neutral-600 text-sm",children:"Select a file to edit"})})]}),Bg&&Z==="blocks"&&M&&y.jsx(hW,{onAddBlock:M}),C&&y.jsx("div",{className:"border-t border-neutral-800 p-2 flex-shrink-0",children:y.jsxs("button",{onClick:C,disabled:P,className:"w-full flex items-center justify-center gap-1.5 px-2 py-1.5 rounded-md text-[11px] font-medium text-neutral-500 hover:text-amber-300 hover:bg-neutral-800 transition-colors disabled:opacity-40",children:[y.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[y.jsx("path",{d:"M9 11l3 3L22 4"}),y.jsx("path",{d:"M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11"})]}),P?"Linting…":"Lint"]})})]})})}));function vW({projectId:n,filePath:e}){const t=`/api/projects/${n}/preview/${e}`,r=e.split("/").pop()??e;return C0.test(e)?y.jsxs("div",{className:"flex flex-col items-center justify-center h-full p-4 bg-neutral-950",children:[y.jsx("img",{src:t,alt:r,className:"max-w-full max-h-[70%] object-contain rounded border border-neutral-800"}),y.jsx("span",{className:"mt-3 text-[11px] text-neutral-500 font-mono",children:e})]}):IO.test(e)?y.jsxs("div",{className:"flex flex-col items-center justify-center h-full p-4 bg-neutral-950",children:[y.jsx("video",{src:t,controls:!0,className:"max-w-full max-h-[70%] rounded border border-neutral-800"}),y.jsx("span",{className:"mt-3 text-[11px] text-neutral-500 font-mono",children:e})]}):LO.test(e)?y.jsxs("div",{className:"flex flex-col items-center justify-center h-full p-4 bg-neutral-950 gap-3",children:[y.jsxs("svg",{width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-neutral-600",children:[y.jsx("path",{d:"M9 18V5l12-2v13",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("circle",{cx:"6",cy:"18",r:"3"}),y.jsx("circle",{cx:"18",cy:"16",r:"3"})]}),y.jsx("audio",{src:t,controls:!0,className:"w-full max-w-[280px]"}),y.jsx("span",{className:"text-[11px] text-neutral-500 font-mono",children:e})]}):y.jsxs("div",{className:"flex flex-col items-center justify-center h-full p-4 bg-neutral-950 gap-2",children:[y.jsxs("svg",{width:"40",height:"40",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-neutral-600",children:[y.jsx("path",{d:"M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("polyline",{points:"14 2 14 8 20 8",strokeLinecap:"round",strokeLinejoin:"round"})]}),y.jsx("span",{className:"text-sm text-neutral-400 font-medium",children:r}),y.jsx("span",{className:"text-[11px] text-neutral-600 font-mono",children:e}),y.jsx("span",{className:"text-[10px] text-neutral-600",children:"Binary file — preview not available"})]})}const mE=h.createContext(null);function pE(){const n=h.useContext(mE);if(!n)throw new Error("useFileManagerContext must be used within FileManagerProvider");return n}function wW({value:{editingFile:n,setEditingFile:e,projectDir:t,fileTree:r,fileTreeLoaded:i,setFileTree:a,editingPathRef:s,projectIdRef:o,saveTimerRef:u,importedFontAssetsRef:d,readProjectFile:m,writeProjectFile:p,readOptionalProjectFile:O,revealSourceOffset:b,openSourceForSelection:S,handleFileSelect:k,handleContentChange:T,refreshFileTree:w,uploadProjectFiles:A,handleCreateFile:E,handleCreateFolder:C,handleDeleteFile:P,handleRenameFile:$,handleDuplicateFile:M,handleMoveFile:R,handleImportFiles:N,handleImportFonts:Z,compositions:D,assets:I,fontAssets:U},children:K}){const q=h.useMemo(()=>({editingFile:n,setEditingFile:e,projectDir:t,fileTree:r,fileTreeLoaded:i,setFileTree:a,editingPathRef:s,projectIdRef:o,saveTimerRef:u,importedFontAssetsRef:d,readProjectFile:m,writeProjectFile:p,readOptionalProjectFile:O,revealSourceOffset:b,openSourceForSelection:S,handleFileSelect:k,handleContentChange:T,refreshFileTree:w,uploadProjectFiles:A,handleCreateFile:E,handleCreateFolder:C,handleDeleteFile:P,handleRenameFile:$,handleDuplicateFile:M,handleMoveFile:R,handleImportFiles:N,handleImportFonts:Z,compositions:D,assets:I,fontAssets:U}),[n,e,t,r,i,a,s,o,u,d,m,p,O,b,S,k,T,w,A,E,C,P,$,M,R,N,Z,D,I,U]);return y.jsx(mE,{value:q,children:K})}const gE="hf-studio-render-settings";function OE(){try{const n=localStorage.getItem(gE);if(n){const e=JSON.parse(n);return{format:["mp4","webm","mov"].includes(e.format)?e.format:"mp4",quality:["draft","standard","high"].includes(e.quality)?e.quality:"standard",fps:[24,30,60].includes(e.fps)?e.fps:30}}}catch{}return{format:"mp4",quality:"standard",fps:30}}function M2(n,e,t){try{localStorage.setItem(gE,JSON.stringify({format:n,quality:e,fps:t}))}catch{}}function TW({leftSidebarRef:n,onSelectComposition:e,onAddBlock:t,onLint:r,linting:i}){const{leftCollapsed:a,leftWidth:s,toggleLeftSidebar:o,handlePanelResizeStart:u,handlePanelResizeMove:d,handlePanelResizeEnd:m}=v6(),{projectId:p,renderQueue:O,waitForPendingDomEditSaves:b}=tf(),{compositions:S,assets:k,editingFile:T,fileTree:w,revealSourceOffset:A,handleFileSelect:E,handleCreateFile:C,handleCreateFolder:P,handleDeleteFile:$,handleRenameFile:M,handleDuplicateFile:R,handleMoveFile:N,handleImportFiles:Z,handleContentChange:D}=pE(),I=h.useCallback(async U=>{await b();const{format:K,quality:q,fps:L}=OE();await O.startRender({composition:U,format:K,quality:q,fps:L})},[O,b]);return a?y.jsx("div",{className:"flex w-10 flex-shrink-0 flex-col items-center border-r border-neutral-800/50 bg-neutral-950 pt-1",children:y.jsx("button",{type:"button",onClick:o,className:"flex h-8 w-8 items-center justify-center rounded-md border border-transparent text-neutral-500 transition-colors hover:border-neutral-800 hover:bg-neutral-900 hover:text-neutral-300",title:"Show sidebar","aria-label":"Show sidebar",children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"M5 4v16"}),y.jsx("path",{d:"m10 7 5 5-5 5"})]})})}):y.jsxs(y.Fragment,{children:[y.jsx(kW,{ref:n,width:s,projectId:p,compositions:S,assets:k,activeComposition:(T==null?void 0:T.path)??null,onSelectComposition:e,fileTree:w,editingFile:T,onSelectFile:E,onCreateFile:C,onCreateFolder:P,onDeleteFile:$,onRenameFile:M,onDuplicateFile:R,onMoveFile:N,onImportFiles:Z,codeChildren:T?Fw(T.path)?y.jsx(vW,{projectId:p,filePath:T.path}):y.jsx(JY,{content:T.content??"",filePath:T.path,onChange:D,revealOffset:A}):void 0,onRenderComposition:I,isRendering:O.isRendering,onLint:r,linting:i,onToggleCollapse:o,onAddBlock:t}),y.jsx("div",{className:"group w-2 flex-shrink-0 cursor-col-resize flex items-center justify-center",style:{touchAction:"none"},onPointerDown:U=>u("left",U),onPointerMove:d,onPointerUp:m,children:y.jsx("div",{className:"h-[52px] w-px bg-white/12 transition-colors group-hover:bg-white/18 group-active:bg-white/24"})})]})}const AW=25,PW=400,CW='[data-preview-pan-surface="true"]',S1=48,$O={zoomPercent:100,panX:0,panY:0},EW=.007,Hv=10;function Ts(n){return Math.round(n*1e4)/1e4}function Da(n){return Number.isFinite(n)?Math.min(PW,Math.max(AW,n)):100}function MW(n){return n===1}function $2(n,e){return n instanceof Element?e!=null&&e.contains(n)?!0:!!n.closest(CW):!1}function $W(n,e){if(!Number.isFinite(n))return Da(e);const r=-(Math.abs(n)>Hv?Hv*Math.sign(n):n)*EW,i=Da(e);return Da(i*Math.exp(r))}function yE(n){const e=Da(n.zoomPercent)/100,t=n.contentWidth??n.viewportWidth,r=n.contentHeight??n.viewportHeight,i=Math.max(0,(t*e-n.viewportWidth)/2)+S1,a=Math.max(0,(r*e-n.viewportHeight)/2)+S1;return{panX:Math.min(i,Math.max(-i,n.panX)),panY:Math.min(a,Math.max(-a,n.panY))}}function RW(n,e,t,r,i,a,s){const o=Da(t)/100,u=Math.abs(a*o-r)/2+S1,d=Math.abs(s*o-i)/2+S1;return{panX:Math.min(u,Math.max(-u,n)),panY:Math.min(d,Math.max(-d,e))}}function QW(n){const e=Da(n.state.zoomPercent),t=$W(n.deltaY,e),r=e/100,i=t/100;let a=n.state.panX,s=n.state.panY;if(n.cursorX!==void 0&&n.cursorY!==void 0){const m=i/r;a=n.cursorX*(1-m)+a*m,s=n.cursorY*(1-m)+s*m}const o=n.contentWidth??n.viewportWidth,u=n.contentHeight??n.viewportHeight,d=RW(a,s,t,n.viewportWidth,n.viewportHeight,o,u);return{zoomPercent:t,...d}}function _W(n){const e=yE({panX:n.state.panX-n.deltaX,panY:n.state.panY-n.deltaY,zoomPercent:n.state.zoomPercent,viewportWidth:n.viewportWidth,viewportHeight:n.viewportHeight,contentWidth:n.contentWidth,contentHeight:n.contentHeight});return{zoomPercent:Da(n.state.zoomPercent),...e}}function NW({projectId:n,directUrl:e}){return e??n}const jW=1200,ZW=200,Fv=16;function R2(n){return Math.abs(n.zoomPercent-100)<.5&&Math.abs(n.panX)<.1&&Math.abs(n.panY)<.1}function DW(){const n=v0().previewZoom;return n?{zoomPercent:Da(n.zoomPercent),panX:n.panX,panY:n.panY}:$O}function Xv(n,e,t){const r=Math.max(0,n-Fv),i=Math.max(0,e-Fv),a=t?9/16:16/9;if(r===0||i===0)return{width:0,height:0};let s=r,o=s/a;return o>i&&(o=i,s=o*a),{width:Ts(s),height:Ts(o)}}const VW=h.memo(function({projectId:e,iframeRef:t,onIframeLoad:r,onCompositionLoadingChange:i,portrait:a,directUrl:s,refreshKey:o,suppressLoadingOverlay:u}){const d=NW({projectId:e,directUrl:s}),m=h.useRef(o),p=h.useRef(null),O=h.useRef(null),[b,S]=h.useState(null),[k,T]=h.useState(()=>Xv(0,0,a)),w=h.useRef(null),A=h.useRef(DW()),[E,C]=h.useState(()=>A.current),P=h.useRef(null),$=h.useRef(null),M=h.useRef(null),R=h.useRef(!1),N=h.useRef(null);h.useEffect(()=>()=>{M.current&&clearTimeout(M.current),$.current&&clearTimeout($.current),w.current&&clearTimeout(w.current)},[]),h.useEffect(()=>{const X=p.current;if(!X)return;const B=()=>{const j=X.getBoundingClientRect();T(Xv(j.width,j.height,a))};B();const _=new ResizeObserver(B);return _.observe(X),()=>_.disconnect()},[a]);const Z=h.useRef(k);Z.current=k;const D=h.useCallback(X=>{const B=O.current;if(!B)return;const _=Ts(X.zoomPercent/100),j=Ts(X.panX),H=Ts(X.panY);B.style.transform=`translate3d(${j}px, ${H}px, 0) scale(${_})`},[]),I=h.useCallback((X,B)=>{const _={zoomPercent:Da(X.zoomPercent),panX:Number.isFinite(X.panX)?X.panX:0,panY:Number.isFinite(X.panY)?X.panY:0};if(A.current=_,B&&!R.current){R.current=!0;const j=P.current;j&&(j.style.opacity="1")}D(_),M.current&&clearTimeout(M.current),M.current=setTimeout(()=>{R.current=!1;const j=A.current;if(w0({previewZoom:j}),C(H=>H.zoomPercent===j.zoomPercent&&H.panX===j.panX&&H.panY===j.panY?H:j),B){const H=P.current;H&&(H.textContent=R2(j)?"Fit":`${Math.round(j.zoomPercent)}%`,$.current&&clearTimeout($.current),$.current=setTimeout(()=>{P.current&&(P.current.style.opacity="0")},jW))}},ZW)},[D]),U=h.useCallback(X=>I(X,!0),[I]),K=h.useCallback(X=>I(X,!1),[I]);if(o!==m.current){const X=`${d}:${m.current??0}`;m.current=o,S(X)}const q=`${d}:${o??0}`,L=h.useCallback(()=>{const X=A.current;(Math.abs(X.zoomPercent-100)>.5||Math.abs(X.panX)>.1||Math.abs(X.panY)>.1)&&D(X)},[D]),W=()=>{r(),L(),w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{S(null),w.current=null},160)};h.useEffect(()=>{const X=p.current;if(!X)return;const B=_=>{const j=X.getBoundingClientRect();if(_.clientX<j.left||_.clientX>j.right||_.clientY<j.top||_.clientY>j.bottom)return;if(_.ctrlKey||_.metaKey){_.preventDefault(),_.stopPropagation();const ae=Z.current,ie=_.clientX-(j.left+j.width/2),Oe=_.clientY-(j.top+j.height/2),de=QW({state:A.current,deltaY:_.deltaY,viewportWidth:j.width,viewportHeight:j.height,contentWidth:ae.width,contentHeight:ae.height,cursorX:ie,cursorY:Oe});U(de);return}if(!$2(_.target,O.current))return;_.preventDefault(),_.stopPropagation();const F=Z.current,Y=_W({state:A.current,deltaX:_.deltaX,deltaY:_.deltaY,viewportWidth:j.width,viewportHeight:j.height,contentWidth:F.width,contentHeight:F.height});K(Y)};return document.addEventListener("wheel",B,{passive:!1,capture:!0}),()=>document.removeEventListener("wheel",B,{capture:!0})},[U,K]),h.useEffect(()=>{const X=p.current;if(!X)return;const B=_=>{if(R2(A.current))return;const j=X.getBoundingClientRect();_.clientX<j.left||_.clientX>j.right||_.clientY<j.top||_.clientY>j.bottom||U($O)};return document.addEventListener("dblclick",B,{capture:!0}),()=>document.removeEventListener("dblclick",B,{capture:!0})},[U]),h.useEffect(()=>{const X=(F,Y)=>{const ae=p.current;if(!ae)return null;const ie=ae.getBoundingClientRect();return F<ie.left||F>ie.right||Y<ie.top||Y>ie.bottom?null:ie},B=F=>{X(F.clientX,F.clientY)&&$2(F.target,O.current)&&MW(F.button)&&(F.preventDefault(),N.current={pointerId:F.pointerId,startX:F.clientX,startY:F.clientY,originX:A.current.panX,originY:A.current.panY})},_=F=>{const Y=N.current,ae=p.current;if(!Y||!ae||Y.pointerId!==F.pointerId)return;F.preventDefault();const ie=ae.getBoundingClientRect(),Oe=Z.current,de=yE({panX:Y.originX+F.clientX-Y.startX,panY:Y.originY+F.clientY-Y.startY,zoomPercent:A.current.zoomPercent,viewportWidth:ie.width,viewportHeight:ie.height,contentWidth:Oe.width,contentHeight:Oe.height});K({...A.current,...de})},j=F=>{var Y;((Y=N.current)==null?void 0:Y.pointerId)===F.pointerId&&(N.current=null)},H=F=>{F.button===1&&X(F.clientX,F.clientY)&&$2(F.target,O.current)&&F.preventDefault()};return document.addEventListener("pointerdown",B,{capture:!0}),document.addEventListener("pointermove",_,{capture:!0}),document.addEventListener("pointerup",j,{capture:!0}),document.addEventListener("pointercancel",j,{capture:!0}),document.addEventListener("auxclick",H,{capture:!0}),()=>{document.removeEventListener("pointerdown",B,{capture:!0}),document.removeEventListener("pointermove",_,{capture:!0}),document.removeEventListener("pointerup",j,{capture:!0}),document.removeEventListener("pointercancel",j,{capture:!0}),document.removeEventListener("auxclick",H,{capture:!0})}},[K]);const ee=A.current;return y.jsx("div",{className:"flex flex-col h-full min-h-0",children:y.jsxs("div",{ref:p,className:"relative flex-1 flex items-center justify-center p-2 overflow-hidden min-h-0 outline-none focus:ring-1 focus:ring-studio-accent/40 bg-neutral-700",tabIndex:0,"aria-label":"Composition preview",children:[y.jsx("div",{className:"absolute inset-2 flex items-center justify-center pointer-events-none",children:y.jsxs("div",{ref:O,className:"relative shrink-0 pointer-events-auto",style:{width:`${k.width}px`,height:`${k.height}px`,transform:`translate3d(${Ts(ee.panX)}px, ${Ts(ee.panY)}px, 0) scale(${Ts(ee.zoomPercent/100)})`,transformOrigin:"center center"},"data-testid":"preview-zoom-stage",children:[b&&y.jsx(Y2,{projectId:s?void 0:e,directUrl:s,onLoad:()=>{},portrait:a,style:{position:"absolute",inset:0,zIndex:0,opacity:1}},b),y.jsx(Y2,{ref:t,projectId:s?void 0:e,directUrl:s,onLoad:b?W:()=>{r(),L()},onCompositionLoadingChange:i,portrait:a,style:b?{position:"absolute",inset:0,zIndex:1}:void 0,suppressLoadingOverlay:u},q)]})}),y.jsx("div",{ref:P,className:"pointer-events-none absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-50 rounded-lg px-4 py-2 text-sm font-mono tabular-nums text-white/90 bg-black/60 backdrop-blur-sm shadow-lg",style:{opacity:0,transition:"opacity 300ms ease-out"},"aria-live":"polite"}),!R2(E)&&y.jsxs("button",{type:"button",className:"absolute bottom-3 right-3 z-50 rounded-md px-2.5 py-1 text-xs font-medium text-white/80 bg-black/50 backdrop-blur-sm hover:bg-black/70 hover:text-white transition-colors",onClick:()=>U($O),"aria-label":"Reset zoom to fit","data-testid":"preview-reset-zoom",children:[Math.round(E.zoomPercent),"% — Reset"]})]})})});function IW({stack:n,onNavigate:e}){return n.length<=1?null:y.jsxs("nav",{"aria-label":"Composition navigation",className:"flex items-center gap-1 px-2 h-8 border-b border-neutral-800/50 bg-neutral-900/50 flex-shrink-0",children:[y.jsx("button",{type:"button",onClick:()=>e(n.length-2),className:"flex items-center gap-1 px-1.5 py-0.5 rounded text-xs text-neutral-400 hover:text-white hover:bg-neutral-800 transition-colors",title:"Back (Esc)",children:y.jsx(fZ,{size:12,weight:"bold"})}),n.map((t,r)=>{const i=r===n.length-1;return y.jsxs("span",{className:"flex items-center gap-1",children:[r>0&&y.jsx(dT,{size:10,className:"text-neutral-600 flex-shrink-0"}),i?y.jsx("span",{className:"text-xs text-neutral-200 font-medium",children:t.label}):y.jsx("button",{type:"button",onClick:()=>e(r),className:"text-xs text-neutral-500 hover:text-neutral-200 transition-colors",children:t.label})]},t.id)})]})}function LW({projectId:n,activeCompositionPath:e,onCompositionChange:t}){const[r,i]=h.useState([{id:"master",label:"Master",previewUrl:`/api/projects/${n}/preview`}]),a=h.useRef(t);a.current=t;const s=h.useCallback(b=>{i(S=>{var w;const k=typeof b=="function"?b(S):b,T=(w=k[k.length-1])==null?void 0:w.id;return queueMicrotask(()=>{var A;return(A=a.current)==null?void 0:A.call(a,T==="master"?null:T)}),k})},[]),o=h.useRef(0),[u,d]=h.useState(new Map),m=h.useRef(u);m.current=u;const p=h.useCallback(b=>{b===0&&o.current>0&&Ae.getState().setCurrentTime(o.current),Ae.getState().setElements([]),s(S=>S.slice(0,b+1))},[]),O=h.useCallback(b=>{if(!b.compositionSrc)return;o.current=Ae.getState().currentTime;const S=b.id;let k=m.current.get(S);if(!k){const T=b.compositionSrc,w=T.match(/compositions\/.*\.html/);k=w?w[0]:T}Ae.getState().setElements([]),s(T=>{var C;if(T[T.length-1].id===k&&T.length>1)return T.slice(0,-1);const A=((C=k.split("/").pop())==null?void 0:C.replace(/\.html$/,""))||k,E=`/api/projects/${n}/preview/comp/${k}`;return[...T,{id:k,label:A,previewUrl:E}]})},[n]);return h.useEffect(()=>{if(e==="index.html")Ae.getState().setElements([]),s(b=>b.length>1?[b[0]]:b);else if(e&&e.startsWith("compositions/")){const b=e.replace(/^compositions\//,"").replace(/\.html$/,""),S=`/api/projects/${n}/preview/comp/${e}`;Ae.getState().setElements([]),s(k=>{var T;return((T=k[k.length-1])==null?void 0:T.id)===e?k:[{id:"master",label:"Master",previewUrl:`/api/projects/${n}/preview`},{id:e,label:b,previewUrl:S}]})}else e||Ae.getState().setElements([])},[e,n,s]),{compositionStack:r,updateCompositionStack:s,handleNavigateComposition:p,handleDrillDown:O,masterSeekRef:o,compIdToSrc:u,setCompIdToSrc:d}}const zW=100,BW=220,HW=120;const FW=h.memo(function({projectId:e,portrait:t,previewOverlay:r,timelineToolbar:i,timelineFooter:a,refreshKey:s,activeCompositionPath:o,onIframeRef:u,onCompositionChange:d,renderClipContent:m,onFileDrop:p,onDeleteElement:O,onAssetDrop:b,onBlockDrop:S,onMoveElement:k,onResizeElement:T,onBlockedEditAttempt:w,onSelectTimelineElement:A,onCompIdToSrcChange:E,timelineVisible:C,onToggleTimeline:P,onCompositionLoadingChange:$}){const{iframeRef:M,togglePlay:R,seek:N,onIframeLoad:Z,refreshPlayer:D}=mj(),I=h.useRef(e);I.current!==e&&(I.current=e,Ae.getState().reset());const U=h.useRef(s);h.useEffect(()=>{s!==U.current&&(U.current=s,D())},[s,D]);const K=h.useCallback(()=>{Z(),u==null||u(M.current)},[Z,M,u]),{compositionStack:q,updateCompositionStack:L,handleNavigateComposition:W,handleDrillDown:ee,compIdToSrc:X,setCompIdToSrc:B}=LW({projectId:e,activeCompositionPath:o,onCompositionChange:d}),_=M,j=h.useCallback(ye=>{var Pe;if(!ye.compositionSrc)return;const be=ye.id;let Me=X.get(be);if(!Me)try{const Ve=(Pe=_.current)==null?void 0:Pe.contentDocument;if(Ve){const Ye=Ve.querySelector(`[data-composition-id="${be}"][data-composition-src]`);Ye&&(Me=Ye.getAttribute("data-composition-src")||void 0)}}catch{}ee({id:be,compositionSrc:Me??ye.compositionSrc})},[X,ee,_]),H=h.useRef(X);H.current=X,zt(()=>{fetch(`/api/projects/${e}/files/index.html`).then(ye=>ye.json()).then(ye=>{const be=ye.content||"",Me=new Map,Pe=/data-composition-id=["']([^"']+)["'][^>]*data-composition-src=["']([^"']+)["']|data-composition-src=["']([^"']+)["'][^>]*data-composition-id=["']([^"']+)["']/g;let Ve;for(;(Ve=Pe.exec(be))!==null;){const Ye=Ve[1]||Ve[4],_e=Ve[2]||Ve[3];Ye&&_e&&Me.set(Ye,_e)}B(Me),E==null||E(Me)}).catch(()=>{})}),h.useEffect(()=>{if(X.size===0)return;const ye=Pe=>{const Ve=H.current;if(Ve.size===0)return null;let Ye=!1;const _e=Pe.map(Fe=>{if(Fe.compositionSrc)return Fe;const _t=Ve.get(Fe.id)??Ve.get(Fe.id.replace(/-(host|comp|layer)$/,""));return _t?(Ye=!0,{...Fe,compositionSrc:_t}):Fe});return Ye?_e:null},be=ye(Ae.getState().elements);be&&Ae.getState().setElements(be);let Me=!1;return Ae.subscribe((Pe,Ve)=>{if(Me||Pe.elements===Ve.elements||Pe.elements.length===0||Pe.elements.every(_e=>_e.compositionSrc))return;Me=!0;const Ye=ye(Pe.elements);Ye&&Pe.setElements(Ye),Me=!1})},[X]);const[F,Y]=h.useState(BW),ae=h.useRef(!1),[ie,Oe]=h.useState(!0),de=h.useCallback(ye=>{ye||(ae.current=!0),!(ye&&ae.current)&&Oe(ye)},[]),me=ie;h.useEffect(()=>{$==null||$(ie)},[ie,$]);const Te=C??!0,Ce=h.useRef(!1),Ne=h.useRef(null),Xe=q[q.length-1],V=q.length>1?Xe.previewUrl:void 0,fe=h.useRef(u);fe.current=u,h.useEffect(()=>{var ye;(ye=fe.current)==null||ye.call(fe,M.current)},[q.length,s,M]);const te=h.useCallback(ye=>{me||(ye.preventDefault(),Ce.current=!0,ye.target.setPointerCapture(ye.pointerId))},[me]),le=h.useCallback(ye=>{if(me||!Ce.current||!Ne.current)return;const be=Ne.current.getBoundingClientRect(),Me=ye.clientY-be.top,Pe=be.height,Ve=Math.max(zW,Math.min(Pe-HW,Pe-Me));Y(Ve)},[me]),ce=h.useCallback(()=>{Ce.current=!1},[]),ge=h.useCallback(ye=>{ye.key==="Escape"&&q.length>1&&L(be=>be.slice(0,-1))},[q.length]);return y.jsxs("div",{ref:Ne,className:"flex flex-col h-full min-h-0 bg-neutral-950",onKeyDown:ge,tabIndex:-1,children:[y.jsxs("div",{className:"flex-1 min-h-0 flex flex-col",children:[y.jsxs("div",{className:"flex-1 min-h-0 relative","data-preview-pan-surface":"true",children:[y.jsx(VW,{projectId:e,iframeRef:M,onIframeLoad:K,onCompositionLoadingChange:de,portrait:t,directUrl:V,refreshKey:s,suppressLoadingOverlay:ae.current}),r]}),y.jsxs("div",{className:"bg-neutral-950 border-t border-neutral-800/50 flex-shrink-0",children:[q.length>1&&y.jsx(IW,{stack:q,onNavigate:W}),y.jsx(VR,{onTogglePlay:R,onSeek:N,disabled:me})]})]}),Te?y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"group h-2 flex-shrink-0 cursor-row-resize flex items-center justify-center z-10",style:{touchAction:"none"},onPointerDown:te,onPointerMove:le,onPointerUp:ce,children:y.jsx("div",{className:"h-px w-full bg-white/10 transition-colors group-hover:bg-white/16 group-active:bg-white/22"})}),y.jsxs("div",{className:"relative flex flex-col flex-shrink-0",style:{height:F},"aria-disabled":me||void 0,children:[y.jsxs("div",{className:"flex flex-col flex-1 min-h-0 overflow-hidden bg-neutral-950",onDoubleClick:ye=>{ye.target.closest("[data-clip]")||me||q.length>1&&L(be=>be.slice(0,-1))},children:[y.jsx("div",{className:"flex-shrink-0",children:i}),y.jsx(QQ,{onSeek:N,onDrillDown:j,renderClipContent:m,onFileDrop:p,onDeleteElement:O,onAssetDrop:b,onBlockDrop:S,onMoveElement:k,onResizeElement:T,onBlockedEditAttempt:w,onSelectElement:A})]}),a&&y.jsx("div",{className:"flex-shrink-0",children:a}),me&&y.jsx("div",{className:"absolute inset-0 z-30 cursor-not-allowed bg-black/18","data-testid":"timeline-loading-disabled-overlay","aria-hidden":"true",onPointerDown:ye=>ye.preventDefault(),onDragOver:ye=>ye.preventDefault(),onDrop:ye=>ye.preventDefault()})]})]}):P?y.jsx("div",{className:"flex-shrink-0 border-t border-neutral-800/50 bg-neutral-950/96",children:y.jsxs("div",{className:"flex h-10 items-center justify-between px-3",children:[y.jsx("div",{className:"text-[10px] font-medium uppercase tracking-[0.16em] text-neutral-500",children:"Timeline"}),y.jsxs("button",{type:"button",onClick:P,className:"flex h-7 items-center gap-1.5 rounded-md border border-neutral-800 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-700 hover:bg-neutral-900 hover:text-neutral-100",title:Q9(!1),"aria-label":"Show timeline editor",children:[y.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.7",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("rect",{x:"3",y:"13",width:"18",height:"8",rx:"1"}),y.jsx("path",{d:"M7 9h10"}),y.jsx("path",{d:"M8 5h8"})]}),y.jsx("span",{children:"Show"}),y.jsx("span",{className:"hidden rounded bg-white/5 px-1 py-0.5 font-mono text-[9px] text-neutral-500 sm:inline",children:R9})]})]})}):null]})}),XW=new Set(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"]);function UW(n){return n.metaKey||n.ctrlKey||n.altKey?!1:XW.has(n.key)}function qW(n,e,t){var b,S;let r=null,i=null;try{r=n.contentDocument,i=n.contentWindow}catch{return[]}if(!r||!i)return[];const a=n.getBoundingClientRect(),s=t.getBoundingClientRect(),o=parseFloat(n.style.width)||a.width,u=a.width/o,d=a.left-s.left,m=a.top-s.top,p=r.querySelectorAll(".caption-group"),O=[];for(let k=0;k<e.groupOrder.length;k++){const T=e.groupOrder[k],w=e.groups.get(T);if(!w)continue;const A=p[k];if(!A)continue;const E=i.getComputedStyle(A);if(parseFloat(E.opacity)<=.01||E.visibility==="hidden")continue;const C=[];for(const P of A.children){const $=P;if($.dataset.captionWrapper==="true"){const M=$.querySelector(":scope > span");M&&C.push(M)}else $.tagName==="SPAN"&&C.push($)}if(C.length===0&&((b=A.textContent)!=null&&b.trim())){const P=A.childNodes[0];if(P&&P.nodeType===Node.TEXT_NODE){const $=(P.textContent||"").split(/\s+/).filter(Boolean),M=r.createDocumentFragment();for(const R of $){const N=r.createElement("span");N.textContent=R+" ",N.style.display="inline",M.appendChild(N),C.push(N)}A.replaceChild(M,P)}else{const $=A.querySelector(":scope > span");if($&&((S=$.textContent)!=null&&S.trim())){const M=$.textContent.split(/\s+/).filter(Boolean),R=r.createDocumentFragment();for(const N of M){const Z=r.createElement("span");Z.textContent=N+" ",Z.style.display="inline",R.appendChild(Z),C.push(Z)}$.replaceWith(R)}}}for(let P=0;P<w.segmentIds.length;P++){const $=w.segmentIds[P],M=C[P];if(!M)continue;const R=M.getBoundingClientRect();O.push({segmentId:$,groupId:T,groupIndex:k,wordIndex:P,x:R.left*u+d,y:R.top*u+m,width:R.width*u,height:R.height*u})}}return O}function rh(n,e,t){let r=null;try{r=n.contentDocument}catch{return null}if(!r)return null;const i=r.querySelectorAll(".caption-group")[e];if(!i)return null;const a=[];for(const s of i.children){const o=s;if(o.dataset.captionWrapper==="true"){const u=o.querySelector(":scope > span");u&&a.push(u)}else o.tagName==="SPAN"&&a.push(o)}return a[t]??null}function i0(n,e){const t=e.gsap;if(t&&t.getProperty)return{x:t.getProperty(n,"x")||0,y:t.getProperty(n,"y")||0,scale:t.getProperty(n,"scale")||1,rotation:t.getProperty(n,"rotation")||0};const r=n.style.transform||"",i=r.match(/scale\(([^)]+)\)/),a=r.match(/rotate\(([^)]+)deg\)/),s=r.match(/translate\(([^,]+)px,\s*([^)]+)px\)/);return{x:s?parseFloat(s[1]):0,y:s?parseFloat(s[2]):0,scale:i?parseFloat(i[1]):1,rotation:a?parseFloat(a[1]):0}}function sc(n){var i;if(n.dataset.captionWrapper==="true")return n;const e=n.parentElement;if(e&&e.dataset.captionWrapper==="true")return e;const r=n.ownerDocument.createElement("span");return r.style.display="inline-block",r.dataset.captionWrapper="true",(i=n.parentNode)==null||i.insertBefore(r,n),r.appendChild(n),r}function ih(n,e,t,r,i,a){const s=sc(n),o=e.gsap;o&&o.set?o.set(s,{x:t,y:r,scale:i,rotation:a}):s.style.transform=`translate(${t.toFixed(1)}px, ${r.toFixed(1)}px) rotate(${a.toFixed(1)}deg) scale(${i.toFixed(3)})`}function YW(n,e){const t=sc(n),{x:r,y:i,scale:a,rotation:s}=i0(t,e),o={};return Math.abs(r)>.5&&(o.x=r),Math.abs(i)>.5&&(o.y=i),Math.abs(a-1)>.001&&(o.scaleX=a,o.scaleY=a),Math.abs(s)>.1&&(o.rotation=s),o}const nr=8,Q2=20;function Uv(n,e,t){const r=YW(e,t);Object.keys(r).length>0&&ht.getState().updateSegmentStyle(n,r)}const WW=h.memo(function({iframeRef:e}){const t=ht(C=>C.isEditMode),r=ht(C=>C.model),i=ht(C=>C.selectedSegmentIds),a=ht(C=>C.selectSegment),s=ht(C=>C.clearSelection),[o,u]=h.useState([]),d=h.useRef(null),m=h.useRef(r);m.current=r;const p=h.useRef(null);zt(()=>{if(!t)return;let C=[];const P=()=>{const R=e.current,N=m.current,Z=d.current;if(!R||!N||!Z)return;const D=qW(R,N,Z);D.length===C.length&&D.every((I,U)=>Math.abs(I.x-C[U].x)<.5&&Math.abs(I.y-C[U].y)<.5)||(C=D,u(D))},$=setInterval(P,66);P();const M=R=>{const{selectedSegmentIds:N,model:Z}=ht.getState();if(N.size===0||!Z)return;const D=R.key;if(!UW(R))return;R.preventDefault();const I=R.shiftKey?10:1,U=D==="ArrowLeft"?-I:D==="ArrowRight"?I:0,K=D==="ArrowUp"?-I:D==="ArrowDown"?I:0,q=e.current,L=q==null?void 0:q.contentWindow;if(!(!q||!L))for(const W of N)for(let ee=0;ee<Z.groupOrder.length;ee++){const X=Z.groups.get(Z.groupOrder[ee]);if(!X)continue;const B=X.segmentIds.indexOf(W);if(B<0)continue;const _=rh(q,ee,B);if(!_)continue;const j=sc(_),H=i0(j,L);ih(_,L,H.x+U,H.y+K,H.scale,H.rotation),Uv(W,_,L);break}};return window.addEventListener("keydown",M),()=>{clearInterval($),window.removeEventListener("keydown",M)}});const O=h.useCallback(()=>{const C=e.current;if(!C)return 1;const P=C.getBoundingClientRect(),$=parseFloat(C.style.width)||P.width;return P.width/$},[e]),b=h.useCallback((C,P,$,M)=>{M.stopPropagation(),M.currentTarget.setPointerCapture(M.pointerId);const R=e.current;if(!R)return;const N=rh(R,C,P),Z=R.contentWindow;if(!N||!Z)return;const D=i0(sc(N),Z);p.current={type:"move",wordEl:N,segmentId:$,startMX:M.clientX,startMY:M.clientY,origTX:D.x,origTY:D.y,origScale:D.scale,origRotation:D.rotation}},[e]),S=h.useCallback((C,P,$,M)=>{var q;M.stopPropagation(),M.preventDefault(),M.currentTarget.setPointerCapture(M.pointerId);const R=e.current;if(!R)return;const N=rh(R,C,P),Z=R.contentWindow;if(!N||!Z)return;const D=N.getBoundingClientRect(),I=O(),U=D.left*I+(((q=e.current)==null?void 0:q.getBoundingClientRect().left)??0)+D.width*I/2,K=i0(sc(N),Z);p.current={type:"scale",wordEl:N,segmentId:$,startMX:M.clientX,startDxFromCenter:M.clientX-U,origTX:K.x,origTY:K.y,origScale:K.scale,origRotation:K.rotation}},[e,O]),k=h.useCallback((C,P)=>{P.stopPropagation(),P.preventDefault(),P.currentTarget.setPointerCapture(P.pointerId);const $=e.current;if(!$)return;const M=rh($,C.groupIndex,C.wordIndex),R=$.contentWindow;if(!M||!R)return;const N=i0(sc(M),R);p.current={type:"rotate",wordEl:M,segmentId:C.segmentId,startMX:P.clientX,origTX:N.x,origTY:N.y,origRotation:N.rotation,origScale:N.scale}},[e]),T=h.useCallback(()=>{var C;try{return((C=e.current)==null?void 0:C.contentWindow)??null}catch{return null}},[e]),w=h.useCallback(C=>{const P=p.current;if(!P)return;const $=T();if($){if(P.type==="move"){const M=O(),R=(C.clientX-P.startMX)/M,N=(C.clientY-P.startMY)/M;ih(P.wordEl,$,P.origTX+R,P.origTY+N,P.origScale,P.origRotation)}else if(P.type==="scale"){const M=P.startMX-P.startDxFromCenter,R=Math.abs(P.startDxFromCenter),N=Math.abs(C.clientX-M),Z=R>5?N/R:1,D=Math.max(.1,P.origScale*Z);ih(P.wordEl,$,P.origTX,P.origTY,D,P.origRotation)}else if(P.type==="rotate"){const R=(C.clientX-P.startMX)/200*90;ih(P.wordEl,$,P.origTX,P.origTY,P.origScale,P.origRotation+R)}}},[O,T]),A=h.useCallback(()=>{const C=p.current;if(C){const P=T();P&&Uv(C.segmentId,C.wordEl,P),p.current=null}},[T]),E=h.useCallback(C=>{C.target===C.currentTarget&&s()},[s]);return t?y.jsx("div",{ref:d,className:"absolute inset-0 z-50",style:{pointerEvents:"auto"},onClick:E,onPointerMove:w,onPointerUp:A,onLostPointerCapture:A,children:o.map(C=>{const P=i.has(C.segmentId);return y.jsx("div",{className:["absolute",P?"ring-2 ring-studio-accent":"hover:ring-1 hover:ring-white/30"].join(" "),style:{left:C.x,top:C.y,width:C.width,height:C.height,cursor:P?"move":"pointer",touchAction:"none",borderRadius:2},onClick:$=>{$.stopPropagation(),a(C.segmentId,$.shiftKey)},onPointerDown:$=>{P&&b(C.groupIndex,C.wordIndex,C.segmentId,$)},children:P&&y.jsxs(y.Fragment,{children:[y.jsx("div",{style:{position:"absolute",left:"50%",top:-Q2-nr,marginLeft:-nr/2,width:nr,height:nr,borderRadius:"50%",backgroundColor:"var(--hf-accent, #3CE6AC)",border:"1px solid rgba(0,0,0,0.5)",cursor:"grab",touchAction:"none"},onPointerDown:$=>k(C,$)}),y.jsx("div",{style:{position:"absolute",left:"50%",top:-Q2,width:1,height:Q2,marginLeft:-.5,backgroundColor:"var(--hf-accent, #3CE6AC)",opacity:.5,pointerEvents:"none"}}),[{right:-nr/2,bottom:-nr/2,cursor:"nwse-resize"},{left:-nr/2,top:-nr/2,cursor:"nwse-resize"},{right:-nr/2,top:-nr/2,cursor:"nesw-resize"},{left:-nr/2,bottom:-nr/2,cursor:"nesw-resize"}].map(($,M)=>y.jsx("div",{style:{position:"absolute",...$,width:nr,height:nr,backgroundColor:"var(--hf-accent, #3CE6AC)",border:"1px solid rgba(0,0,0,0.5)",borderRadius:2,touchAction:"none"},onPointerDown:R=>S(C.groupIndex,C.wordIndex,C.segmentId,R)},M))]})},C.segmentId)})}):null}),qv=["#3CE6AC","#FF6B6B","#4ECDC4","#FFE66D","#A78BFA","#F472B6","#34D399","#FB923C","#60A5FA","#C084FC"],GW=h.memo(function({pixelsPerSecond:e,onSeek:t}){const r=ht(k=>k.model),i=ht(k=>k.selectedSegmentIds),a=ht(k=>k.selectSegment),s=ht(k=>k.updateSegmentTiming),o=ht(k=>k.splitGroup),u=h.useRef(null),d=h.useCallback((k,T,w,A,E)=>{k.stopPropagation(),k.preventDefault(),k.target.setPointerCapture(k.pointerId),u.current={segId:T,edge:w,originalStart:A,originalEnd:E,startX:k.clientX}},[]),m=h.useCallback(k=>{const T=u.current;if(!T)return;const w=(k.clientX-T.startX)/e;if(T.edge==="start"){const A=Math.max(0,T.originalStart+w),E=Math.min(A,T.originalEnd-.05);s(T.segId,E,T.originalEnd)}else{const A=Math.max(T.originalStart+.05,T.originalEnd+w),E=Math.max(0,A);s(T.segId,T.originalStart,E)}},[e,s]),p=h.useCallback(()=>{u.current=null},[]),O=h.useCallback((k,T)=>{k.stopPropagation(),a(T,k.shiftKey)},[a]),b=h.useCallback((k,T,w)=>{k.stopPropagation(),o(T,w)},[o]),S=h.useCallback(k=>{if(!t)return;const T=k.currentTarget.getBoundingClientRect(),w=k.clientX-T.left-32,A=Math.max(0,w/e);t(A)},[t,e]);return r?y.jsx("div",{className:"relative select-none overflow-x-auto",style:{height:40,minWidth:"100%"},onPointerMove:m,onPointerUp:p,onPointerLeave:p,onClick:S,children:r.groupOrder.map((k,T)=>{const w=r.groups.get(k);if(!w)return null;const A=qv[T%qv.length];return w.segmentIds.map(E=>{const C=r.segments.get(E);if(!C)return null;const P=32+C.start*e,$=Math.max((C.end-C.start)*e,4),M=i.has(E);return y.jsxs("div",{className:`absolute top-1 bottom-1 rounded flex items-center overflow-hidden cursor-pointer${M?" ring-1 ring-white/50 z-10":""}`,style:{left:P,width:$,backgroundColor:A,zIndex:M?10:1},onClick:R=>O(R,E),onDoubleClick:R=>b(R,k,E),children:[y.jsx("div",{className:"absolute left-0 top-0 bottom-0 cursor-col-resize z-20",style:{width:6},onPointerDown:R=>d(R,E,"start",C.start,C.end)}),y.jsx("span",{className:"flex-1 truncate px-2 pointer-events-none",style:{fontSize:9,color:"#000000",lineHeight:1},children:C.text}),y.jsx("div",{className:"absolute right-0 top-0 bottom-0 cursor-col-resize z-20",style:{width:6},onPointerDown:R=>d(R,E,"end",C.start,C.end)})]},E)})})}):null});function KW(n){const e=n.ownerDocument.defaultView;if(!e)return!0;let t=n;for(;t;){const r=e.getComputedStyle(t);if(r.display==="none"||r.visibility==="hidden")return!1;const i=Number.parseFloat(r.opacity);if(Number.isFinite(i)&&i<=.01)return!1;t=t.parentElement}return!0}function Yv(n){if(!n)return null;const e=Number.parseFloat(n);return Number.isFinite(e)&&e>0?e:null}function JW(n){let e=n;for(;e;){if(e.hasAttribute("data-composition-file")||e.hasAttribute("data-composition-src"))return e;e=e.parentElement}return null}function eG(n){const e=n.rootScaleX>0?n.rootScaleX:1,t=n.rootScaleY>0?n.rootScaleY:1,r=n.sourceRectWidth&&n.sourceRectWidth>0&&n.sourceWidth&&n.sourceWidth>0?n.sourceRectWidth*e/n.sourceWidth:e,i=n.sourceRectHeight&&n.sourceRectHeight>0&&n.sourceHeight&&n.sourceHeight>0?n.sourceRectHeight*t/n.sourceHeight:t;return{scaleX:r>0?r:e,scaleY:i>0?i:t}}function y0(n,e,t){const r=e.getBoundingClientRect(),i=n.getBoundingClientRect(),a=e.contentDocument,s=(a==null?void 0:a.querySelector("[data-composition-id]"))??(a==null?void 0:a.documentElement)??null,o=s==null?void 0:s.getBoundingClientRect(),u=o==null?void 0:o.width,d=o==null?void 0:o.height;if(!u||!d)return null;const m=t.getBoundingClientRect(),p=r.width/u,O=r.height/d,b=JW(t),S=b==null?void 0:b.getBoundingClientRect(),k=eG({rootScaleX:p,rootScaleY:O,sourceRectWidth:S==null?void 0:S.width,sourceRectHeight:S==null?void 0:S.height,sourceWidth:Yv((b==null?void 0:b.getAttribute("data-width"))??null),sourceHeight:Yv((b==null?void 0:b.getAttribute("data-height"))??null)});return{left:r.left-i.left+(m.left-o.left)*p,top:r.top-i.top+(m.top-o.top)*O,width:m.width*p,height:m.height*O,editScaleX:k.scaleX,editScaleY:k.scaleY}}const ah=.5;function RO(n,e){return n===e?!0:!n||!e?!1:Math.abs(n.left-e.left)<ah&&Math.abs(n.top-e.top)<ah&&Math.abs(n.width-e.width)<ah&&Math.abs(n.height-e.height)<ah&&Math.abs(n.editScaleX-e.editScaleX)<.001&&Math.abs(n.editScaleY-e.editScaleY)<.001}function tG(n,e){return n===e?!0:n.length!==e.length?!1:n.every((t,r)=>{const i=e[r];return!!(i&&t.key===i.key&&t.element===i.element&&t.selection===i.selection&&RO(t.rect,i.rect))})}function nG(n){const e=n[0];if(!e)return null;let t=e.left,r=e.top,i=e.left+e.width,a=e.top+e.height;for(const s of n.slice(1))t=Math.min(t,s.left),r=Math.min(r,s.top),i=Math.max(i,s.left+s.width),a=Math.max(a,s.top+s.height);return{left:t,top:r,width:i-t,height:a-r,editScaleX:1,editScaleY:1}}function rG(n){return n.filter(e=>!n.some(t=>t!==e&&t.element.contains(e.element)))}function As(n){return[n.sourceFile??"",n.id??"",n.selector??"",n.selectorIndex??""].join("|")}function Wv(n,e,t,r){const i=As(e),a=r.current;if((a==null?void 0:a.key)===i&&a.element.isConnected&&a.element.ownerDocument===n)return a.element;const s=sr(n,e,t);return r.current=s?{key:i,element:s}:null,s}const sh=4,lh=20,iG=.05,Gv=15;function aG(n){n==null||n.focus({preventScroll:!0})}function sG(n){const e=n.scaleX>0?n.scaleX:1,t=n.scaleY>0?n.scaleY:1;if(n.uniform){const r=n.dx/e,i=n.dy/t,a=Math.abs(r)>=Math.abs(i)?r:i,s=Math.max(1,Math.max(n.actualWidth,n.actualHeight)+a);return{overlayWidth:Math.max(lh,s*e),overlayHeight:Math.max(lh,s*t),width:s,height:s}}return{overlayWidth:Math.max(lh,n.originWidth+n.dx),overlayHeight:Math.max(lh,n.originHeight+n.dy),width:Math.max(1,n.actualWidth+n.dx/e),height:Math.max(1,n.actualHeight+n.dy/t)}}function Kv(n,e,t,r){return Math.atan2(r-e,t-n)*180/Math.PI}function lG(n){return((n+180)%360+360)%360-180}function oG(n){return Math.round(n*10)/10}function Jv(n){const e=Kv(n.centerX,n.centerY,n.startX,n.startY),t=Kv(n.centerX,n.centerY,n.currentX,n.currentY),r=lG(t-e),i=n.actualAngle+r;return{angle:n.snap?Math.round(i/Gv)*Gv:oG(i)}}function cG(n,e){return Math.abs(e-n)>=iG}function uG({iframeRef:n,overlayRef:e,selectionRef:t,activeCompositionPathRef:r,groupSelectionsRef:i,hoverSelectionRef:a,rafPausedRef:s}){const[o,u]=h.useState(null),[d,m]=h.useState(null),[p,O]=h.useState([]),b=h.useRef(null),S=h.useRef(null),k=h.useRef([]),T=h.useRef(null),w=h.useRef(null),A=h.useRef(new Map),E=M=>{RO(b.current,M)||(b.current=M,u(M))},C=M=>{RO(S.current,M)||(S.current=M,m(M))},P=M=>{tG(k.current,M)||(k.current=M,O(M))},$=(M,R)=>{const N=As(R),Z=A.current.get(N);if(Z!=null&&Z.isConnected&&Z.ownerDocument===M)return Z;const D=sr(M,R,r.current);return D?A.current.set(N,D):A.current.delete(N),D};return zt(()=>{let M=0;const R=()=>{E(null),C(null),P([])},N=()=>{if(M=requestAnimationFrame(N),s.current)return;const Z=t.current,D=n.current,I=e.current;if(!D||!I){T.current=null,w.current=null,A.current.clear(),R();return}const U=D.contentDocument;if(!U){T.current=null,w.current=null,A.current.clear(),R();return}if(Z){const X=Wv(U,Z,r.current,T);X&&KW(X)?E(y0(I,D,X)):E(null)}else T.current=null,E(null);const K=i.current;if(K.length>0){const X=[],B=new Set;for(const _ of K){const j=As(_);B.add(j);const H=$(U,_),F=H?y0(I,D,H):null;H&&F&&X.push({key:j,selection:_,element:H,rect:F})}for(const _ of A.current.keys())B.has(_)||A.current.delete(_);P(X)}else A.current.clear(),P([]);const q=a.current,L=!!(Z&&q&&As(Z)===As(q)),W=!!(q&&K.some(X=>As(X)===As(q)));if(!q||L||W){w.current=null,C(null);return}const ee=Wv(U,q,r.current,w);if(!ee){C(null);return}C(y0(I,D,ee))};return M=requestAnimationFrame(N),()=>cancelAnimationFrame(M)}),{overlayRect:o,overlayRectRef:b,setOverlayRect:E,hoverRect:d,hoverRectRef:S,setHoverRect:C,groupOverlayItems:p,groupOverlayItemsRef:k,setGroupOverlayItems:P}}const fG=100,ew=.01,dG=1e-6;function tw(n){return Number.isFinite(n.x)&&Number.isFinite(n.y)}function nw(n){return Math.hypot(n.x,n.y)}function rw(n){return Number.isFinite(n.left)&&Number.isFinite(n.top)&&Number.isFinite(n.width)&&Number.isFinite(n.height)}function hG(n){const e=n.document.documentElement,t=n.innerWidth||e.clientWidth||1,r=n.innerHeight||e.clientHeight||1;return{width:t>0?t:1,height:r>0?r:1}}function mG(n){try{const e=n.frameElement;if(!e)return null;const t=e.ownerDocument.defaultView,r=t==null?void 0:t.HTMLElement;return r&&e instanceof r?e:null}catch{return null}}function _2(n){const e=n.getBoundingClientRect();if(!rw(e)||e.width<=0&&e.height<=0)return null;let t={x:e.left+e.width/2,y:e.top+e.height/2},r=n.ownerDocument.defaultView;for(;r;){const i=mG(r);if(!i)break;const a=i.getBoundingClientRect();if(!rw(a)||a.width<=0||a.height<=0)return null;const s=hG(r);t={x:a.left+t.x*(a.width/s.width),y:a.top+t.y*(a.height/s.height)},r=i.ownerDocument.defaultView}return t}function pG(n){const e=n.a*n.d-n.b*n.c;return!Number.isFinite(e)||Math.abs(e)<dG?null:{a:n.d/e,b:-n.b/e,c:-n.c/e,d:n.a/e}}function gG(n,e){return{x:n.a*e.x+n.c*e.y,y:n.b*e.x+n.d*e.y}}function OG(n,e,t={}){const r=t.probeSize??fG;if(!Number.isFinite(r)||r<=0)return{ok:!1,reason:"Invalid movement probe size."};const i=h6(n);try{xh(n,e);const a=_2(n);if(!a)return{ok:!1,reason:"Element has no measurable box."};xh(n,{x:e.x+r,y:e.y});const s=_2(n);if(!s)return{ok:!1,reason:"Element X movement could not be measured."};xh(n,{x:e.x,y:e.y+r});const o=_2(n);if(!o)return{ok:!1,reason:"Element Y movement could not be measured."};const u={x:(s.x-a.x)/r,y:(s.y-a.y)/r},d={x:(o.x-a.x)/r,y:(o.y-a.y)/r};if(!tw(u)||!tw(d)||nw(u)<ew||nw(d)<ew)return{ok:!1,reason:"Element movement response is too small to measure."};const m={a:u.x,b:u.y,c:d.x,d:d.y},p=pG(m);return p?{ok:!0,matrix:p}:{ok:!1,reason:"Element movement response is not invertible."}}finally{yl(n,i)}}function yG(n){const e=gG(n.screenToOffset,{x:n.dx,y:n.dy});return{x:n.initialOffset.x+e.x,y:n.initialOffset.y+e.y}}function bE(n){const e=w8(n.element),t=h6(n.element),r=o9(n.element),i=OG(n.element,e);return i.ok?{ok:!0,member:{key:n.key,selection:n.selection,element:n.element,initialOffset:e,initialPathOffset:t,gestureToken:r,screenToOffset:i.matrix,originRect:n.rect}}:(yl(n.element,t),fi(n.element,r),{ok:!1,reason:i.reason,selection:n.selection})}function xE(n,e,t){return yG({initialOffset:n.initialOffset,screenToOffset:n.screenToOffset,dx:e,dy:t})}function iw(n,e,t){const r=xE(n,e,t);return xh(n.element,r),r}function aw(n,e,t){const r=xE(n,e,t);return Bh(n.element,r),r}function bG(n){yl(n.element,n.initialPathOffset),fi(n.element,n.gestureToken)}function SE(n){for(const e of n)bG(e)}function sw(n){for(const e of n)fi(e.element,e.gestureToken)}function xG(n,e){var s,o,u;const t=e.groupOverlayItemsRef.current;if(t.length<=1)return!1;const r=(s=t.find(d=>!d.selection.capabilities.canApplyManualOffset))==null?void 0:s.selection;if(r)return n.preventDefault(),n.stopPropagation(),e.onBlockedMoveRef.current(r),!1;(u=(o=e.onManualDragStartRef).current)==null||u.call(o);const i=rG(t),a=[];for(const d of i){const m=bE({key:d.key,selection:d.selection,element:d.element,rect:d.rect});if(!m.ok)return SE(a),n.preventDefault(),n.stopPropagation(),e.onBlockedMoveRef.current(m.selection),!1;a.push(m.member)}return n.preventDefault(),n.stopPropagation(),n.currentTarget.setPointerCapture(n.pointerId),e.rafPausedRef.current=!0,e.groupGestureRef.current={startX:n.clientX,startY:n.clientY,originItems:t,members:a},!0}function SG(n,e,t,r){var E,C;const i=(r==null?void 0:r.selection)??t.selectionRef.current,a=(r==null?void 0:r.rect)??t.overlayRectRef.current,s=t.boxRef.current,o=t.overlayRef.current;if(!i||!a||n!=="drag"&&!s)return!1;const u=n==="rotate"?"rotation":n==="drag"?"path-offset":"box-size";if(n==="drag"&&!i.capabilities.canApplyManualOffset||n==="resize"&&!i.capabilities.canApplyManualSize||n==="rotate"&&!i.capabilities.canApplyManualRotation||n==="resize"&&(!Number.isFinite(a.width)||!Number.isFinite(a.height)))return!1;const d=zh(i.element),m=u9(i.element),p=d.width>0?d.width:a.width/a.editScaleX,O=d.height>0?d.height:a.height/a.editScaleY;let b=h6(i.element),S,k;if(n==="drag"){(C=(E=t.onManualDragStartRef).current)==null||C.call(E);const P=bE({key:As(i),selection:i,element:i.element,rect:a});if(!P.ok)return t.onBlockedMoveRef.current(P.selection),!1;k=P.member,b=P.member.initialPathOffset,S=P.member.gestureToken}else S=o9(i.element);const T=o==null?void 0:o.getBoundingClientRect(),w=((T==null?void 0:T.left)??0)+a.left+a.width/2,A=((T==null?void 0:T.top)??0)+a.top+a.height/2;return e.preventDefault(),e.stopPropagation(),e.currentTarget.setPointerCapture(e.pointerId),t.rafPausedRef.current=!0,t.gestureRef.current={kind:n,mode:u,selection:i,startX:e.clientX,startY:e.clientY,centerX:w,centerY:A,initialPathOffset:b,initialRotation:lV(i.element),initialBoxSize:sV(i.element),pathOffsetMember:k,originLeft:a.left,originTop:a.top,originWidth:a.width,originHeight:a.height,actualWidth:p,actualHeight:O,actualRotation:m.angle,editScaleX:a.editScaleX,editScaleY:a.editScaleY,manualEditDragToken:S},!0}function kG(n){const e=m=>{n.setOverlayRect(m)},t=m=>{e({left:m.originLeft,top:m.originTop,width:m.originWidth,height:m.originHeight,editScaleX:m.editScaleX,editScaleY:m.editScaleY})},r=m=>{n.setGroupOverlayItems(m)},i=m=>{SE(m.members),r(m.originItems)};return{startGesture:(m,p,O)=>SG(m,p,n,O),startGroupDrag:m=>xG(m,n),onPointerMove:m=>{const p=n.gestureRef.current,O=n.groupGestureRef.current,b=(p==null?void 0:p.selection)??n.selectionRef.current,S=n.boxRef.current,k=n.blockedMoveRef.current;if(!k&&!p&&!O&&n.onCanvasPointerMoveRef.current(m,{preferClipAncestor:!1}),k&&b){const A=m.clientX-k.startX,E=m.clientY-k.startY;!k.notified&&Math.hypot(A,E)>=sh&&(k.notified=!0,n.suppressNextBoxClickRef.current=!0,n.onBlockedMoveRef.current(b));return}if(O){const A=m.clientX-O.startX,E=m.clientY-O.startY;r(O.originItems.map(C=>({...C,rect:{...C.rect,left:C.rect.left+A,top:C.rect.top+E}})));for(const C of O.members)iw(C,A,E);return}if(!p||!b)return;const T=m.clientX-p.startX,w=m.clientY-p.startY;if(p.kind==="rotate"){GD(b.element,Jv({centerX:p.centerX,centerY:p.centerY,startX:p.startX,startY:p.startY,currentX:m.clientX,currentY:m.clientY,actualAngle:p.actualRotation,snap:m.shiftKey}));return}if(p.kind==="drag"){const A=p.originLeft+T,E=p.originTop+w;e({left:A,top:E,width:p.originWidth,height:p.originHeight,editScaleX:p.editScaleX,editScaleY:p.editScaleY}),S&&(S.style.left=`${A}px`,S.style.top=`${E}px`),p.pathOffsetMember&&iw(p.pathOffsetMember,T,w)}else{if(!S)return;const A=sG({originWidth:p.originWidth,originHeight:p.originHeight,actualWidth:p.actualWidth,actualHeight:p.actualHeight,scaleX:p.editScaleX,scaleY:p.editScaleY,dx:T,dy:w,uniform:m.shiftKey});qD(b.element,A);const E=n.overlayRef.current,C=n.iframeRef.current,P=E&&C?y0(E,C,b.element):null,$=P?P.left:p.originLeft,M=P?P.top:p.originTop,R=P?P.width:A.overlayWidth,N=P?P.height:A.overlayHeight;S.style.left=`${$}px`,S.style.top=`${M}px`,S.style.width=`${R}px`,S.style.height=`${N}px`,e({left:$,top:M,width:R,height:N,editScaleX:p.editScaleX,editScaleY:p.editScaleY})}},onPointerUp:m=>{const p=n.gestureRef.current,O=n.groupGestureRef.current,b=(p==null?void 0:p.selection)??n.selectionRef.current,S=n.boxRef.current;if(n.blockedMoveRef.current=null,O){n.groupGestureRef.current=null,n.rafPausedRef.current=!1;const T=m.clientX-O.startX,w=m.clientY-O.startY;if(Math.hypot(T,w)<sh){i(O),n.suppressNextBoxClickRef.current=!0;return}r(O.originItems.map(E=>({...E,rect:{...E.rect,left:E.rect.left+T,top:E.rect.top+w}})));const A=O.members.map(E=>({selection:E.selection,next:aw(E,T,w)}));Promise.resolve(n.onGroupPathOffsetCommitRef.current(A)).catch(()=>{for(const E of O.members)E.gestureToken&&Rd(E.element,E.gestureToken)&&yl(E.element,E.initialPathOffset)}).finally(()=>sw(O.members));return}if(!p||!b){n.gestureRef.current=null,n.rafPausedRef.current=!1;return}n.gestureRef.current=null,n.rafPausedRef.current=!1;const k=Math.hypot(m.clientX-p.startX,m.clientY-p.startY);if(p.kind==="drag"&&k<sh){yl(b.element,p.initialPathOffset),fi(b.element,p.manualEditDragToken),S&&(S.style.left=`${p.originLeft}px`,S.style.top=`${p.originTop}px`),t(p),n.suppressNextBoxClickRef.current=!0,n.onCanvasMouseDown(m,{preferClipAncestor:!1});return}if(p.kind==="resize"&&k<sh){Zg(b.element,p.initialBoxSize),fi(b.element,p.manualEditDragToken),S&&(S.style.width=`${p.originWidth}px`,S.style.height=`${p.originHeight}px`),t(p),n.suppressNextBoxClickRef.current=!0;return}if(p.kind==="rotate"){const T=Jv({centerX:p.centerX,centerY:p.centerY,startX:p.startX,startY:p.startY,currentX:m.clientX,currentY:m.clientY,actualAngle:p.actualRotation,snap:m.shiftKey});if(!cG(p.actualRotation,T.angle)){Dg(b.element,p.initialRotation),fi(b.element,p.manualEditDragToken);return}d6(b.element,T),Promise.resolve(n.onRotationCommitRef.current(b,T)).catch(()=>{p.manualEditDragToken&&Rd(b.element,p.manualEditDragToken)&&Dg(b.element,p.initialRotation)}).finally(()=>fi(b.element,p.manualEditDragToken))}else if(p.kind==="drag"){const T=m.clientX-p.startX,w=m.clientY-p.startY;if(!p.pathOffsetMember)return;const A=aw(p.pathOffsetMember,T,w),E=p.originLeft+T,C=p.originTop+w;e({left:E,top:C,width:p.originWidth,height:p.originHeight,editScaleX:p.editScaleX,editScaleY:p.editScaleY}),S&&(S.style.left=`${E}px`,S.style.top=`${C}px`),Promise.resolve(n.onPathOffsetCommitRef.current(b,A)).catch(()=>{var P;(P=p.pathOffsetMember)!=null&&P.gestureToken&&Rd(b.element,p.pathOffsetMember.gestureToken)&&yl(b.element,p.initialPathOffset)}).finally(()=>{p.pathOffsetMember&&sw([p.pathOffsetMember])})}else{n.suppressNextBoxClickRef.current=!0;const T=zh(b.element);u6(b.element,T),Promise.resolve(n.onBoxSizeCommitRef.current(b,T)).catch(()=>{p.manualEditDragToken&&Rd(b.element,p.manualEditDragToken)&&Zg(b.element,p.initialBoxSize)}).finally(()=>fi(b.element,p.manualEditDragToken))}},clearPointerState:m=>{const p=n.groupGestureRef.current;p&&i(p);const O=n.gestureRef.current,b=(O==null?void 0:O.selection)??m.current;(O==null?void 0:O.mode)==="path-offset"&&b&&(yl(b.element,O.initialPathOffset),fi(b.element,O.manualEditDragToken),t(O)),(O==null?void 0:O.mode)==="box-size"&&b&&(Zg(b.element,O.initialBoxSize),fi(b.element,O.manualEditDragToken),t(O)),(O==null?void 0:O.mode)==="rotation"&&b&&(Dg(b.element,O.initialRotation),fi(b.element,O.manualEditDragToken)),n.blockedMoveRef.current=null,n.groupGestureRef.current=null,n.gestureRef.current=null,n.rafPausedRef.current=!1}}}const vG=h.memo(function({iframeRef:e,activeCompositionPath:t,selection:r,groupSelections:i=[],hoverSelection:a,allowCanvasMovement:s=!0,onCanvasMouseDown:o,onCanvasPointerMove:u,onCanvasPointerLeave:d,onSelectionChange:m,onBlockedMove:p,onManualDragStart:O,onPathOffsetCommit:b,onGroupPathOffsetCommit:S,onBoxSizeCommit:k,onRotationCommit:T}){const w=h.useRef(null),A=h.useRef(null),E=h.useRef(null),C=h.useRef(null),P=h.useRef(null),$=h.useRef(!1),M=h.useRef(!1),R=h.useRef(!1),N=h.useRef(!1),Z=h.useRef(r);Z.current=r;const D=h.useRef(t);D.current=t;const I=h.useRef(i);I.current=i;const U=h.useRef(a);U.current=a;const K=h.useRef(b);K.current=b;const q=h.useRef(S);q.current=S;const L=h.useRef(k);L.current=k;const W=h.useRef(T);W.current=T;const ee=h.useRef(p);ee.current=p;const X=h.useRef(O);X.current=O;const B=h.useRef(u);B.current=u;const _=h.useRef(d);_.current=d;const j=h.useRef(m);j.current=m;const{overlayRect:H,overlayRectRef:F,setOverlayRect:Y,hoverRect:ae,groupOverlayItems:ie,groupOverlayItemsRef:Oe,setGroupOverlayItems:de}=uG({iframeRef:e,overlayRef:w,selectionRef:Z,activeCompositionPathRef:D,groupSelectionsRef:I,hoverSelectionRef:U,rafPausedRef:N}),me=kG({overlayRef:w,iframeRef:e,boxRef:A,selectionRef:Z,overlayRectRef:F,groupOverlayItemsRef:Oe,gestureRef:E,groupGestureRef:C,blockedMoveRef:P,rafPausedRef:N,suppressNextBoxClickRef:$,setOverlayRect:Y,setGroupOverlayItems:de,onBlockedMoveRef:ee,onManualDragStartRef:X,onPathOffsetCommitRef:K,onGroupPathOffsetCommitRef:q,onBoxSizeCommitRef:L,onRotationCommitRef:W,onCanvasPointerMoveRef:B,onCanvasMouseDown:o}),Te=h.useMemo(()=>r?`${r.sourceFile}:${r.id??r.selector??r.label}:${r.selectorIndex??0}`:"none",[r]),Ce=h.useMemo(()=>nG(ie.map(ce=>ce.rect)),[ie]),Ne=i.length>1,Xe=Ne&&ie.length>1&&ie.every(ce=>ce.selection.capabilities.canApplyManualOffset),V=ce=>{if(R.current){R.current=!1,M.current=!1,$.current=!1,ce.preventDefault(),ce.stopPropagation();return}const ge=ce.target;ge!=null&&ge.closest('[data-dom-edit-selection-box="true"]')||(o(ce,{preferClipAncestor:!1}),ce.shiftKey&&(M.current=!0,$.current=!0))},fe=ce=>{if(!s||ce.button!==0)return;if(ce.shiftKey){const Ye=B.current(ce,{preferClipAncestor:!1})??U.current;if(!Ye)return;ce.preventDefault(),ce.stopPropagation(),R.current=!0,M.current=!0,$.current=!0,j.current(Ye,{additive:!0});return}const ge=ce.target;if(ge!=null&&ge.closest('[data-dom-edit-selection-box="true"]'))return;const ye=B.current(ce,{preferClipAncestor:!1})??U.current;if(!(ye!=null&&ye.capabilities.canApplyManualOffset))return;const be=w.current,Me=e.current,Pe=be&&Me?y0(be,Me,ye.element):null;if(!Pe)return;if(R.current=!0,Z.current=ye,Y(Pe),!me.startGesture("drag",ce,{selection:ye,rect:Pe})){R.current=!1;return}j.current(ye)},te=ce=>{if(!(E.current||C.current)){if($.current){$.current=!1,ce.stopPropagation();return}o(ce,{preferClipAncestor:!1})}},le=ce=>{M.current&&(M.current=!1,ce.preventDefault(),ce.stopPropagation())};return y.jsxs("div",{ref:w,className:"absolute inset-0 z-10 pointer-events-auto outline-none",tabIndex:-1,"aria-label":"Composition canvas",onPointerDownCapture:ce=>aG(ce.currentTarget),onPointerDown:fe,onMouseDown:V,onPointerMove:me.onPointerMove,onPointerLeave:()=>_.current(),onPointerUp:me.onPointerUp,onPointerCancel:()=>me.clearPointerState(Z),children:[a&&ae&&y.jsx("div",{"aria-hidden":"true","data-dom-edit-hover-box":"true",className:"pointer-events-none absolute rounded-xl border border-studio-accent/80 bg-studio-accent/5 shadow-[0_0_0_1px_rgba(60,230,172,0.25)]",style:{left:ae.left,top:ae.top,width:ae.width,height:ae.height}}),Ne&&ie.length>1&&Ce&&y.jsxs(y.Fragment,{children:[ie.map(ce=>y.jsx("div",{"aria-hidden":"true",className:"pointer-events-none absolute rounded-xl border border-studio-accent/70 bg-studio-accent/[0.03]",style:{left:ce.rect.left,top:ce.rect.top,width:ce.rect.width,height:ce.rect.height}},ce.key)),y.jsx("div",{"data-dom-edit-selection-box":"true",className:"pointer-events-auto absolute rounded-xl border border-studio-accent bg-studio-accent/5 shadow-[0_0_0_1px_rgba(60,230,172,0.3)]",style:{left:Ce.left,top:Ce.top,width:Ce.width,height:Ce.height,cursor:s&&Xe?"move":"default"},onPointerDown:ce=>{!s||!Xe||ce.shiftKey||me.startGroupDrag(ce)},onMouseDown:le,onClick:te})]}),!Ne&&r&&H&&y.jsxs(y.Fragment,{children:[s&&r.capabilities.canApplyManualRotation&&y.jsxs("div",{className:"pointer-events-none absolute",style:{left:H.left+H.width/2,top:H.top-34,width:28,height:34,transform:"translateX(-50%)"},children:[y.jsx("div",{className:"absolute left-1/2 top-3 bottom-0 w-px -translate-x-1/2 bg-studio-accent/60"}),y.jsx("button",{type:"button",className:"pointer-events-auto absolute left-1/2 top-0 h-3 w-3 -translate-x-1/2 rounded-full border border-studio-accent bg-studio-accent p-0 shadow-[0_0_0_2px_rgba(60,230,172,0.18)]",style:{cursor:"grab",touchAction:"none"},title:"Rotate","aria-label":"Rotate selection",onPointerDown:ce=>{ce.stopPropagation(),me.startGesture("rotate",ce)}})]}),y.jsx("div",{ref:A,"data-dom-edit-selection-box":"true",className:"pointer-events-auto absolute rounded-xl border border-studio-accent/80 bg-studio-accent/5 shadow-[0_0_0_1px_rgba(60,230,172,0.25)]",style:{left:H.left,top:H.top,width:H.width,height:H.height,cursor:s&&r.capabilities.canApplyManualOffset?"move":"default"},onPointerDown:ce=>{if(!(!s||ce.shiftKey)){if(r.capabilities.canApplyManualOffset){me.startGesture("drag",ce);return}ce.preventDefault(),ce.stopPropagation(),ce.currentTarget.setPointerCapture(ce.pointerId),P.current={pointerId:ce.pointerId,startX:ce.clientX,startY:ce.clientY,notified:!1}}},onMouseDown:le,onClick:te,children:s&&r.capabilities.canApplyManualSize&&y.jsx("div",{className:"absolute -right-1.5 -bottom-1.5 w-3 h-3 rounded-sm bg-studio-accent border border-studio-accent/60",style:{cursor:"se-resize",touchAction:"none"},onPointerDown:ce=>{ce.stopPropagation(),me.startGesture("resize",ce)}})},Te)]})]})});function wG({timelineToolbar:n,renderClipContent:e,handleTimelineElementDelete:t,handleTimelineAssetDrop:r,handleTimelineBlockDrop:i,handleTimelineFileDrop:a,handleTimelineElementMove:s,handleTimelineElementResize:o,handleBlockedTimelineEdit:u,setCompIdToSrc:d,setCompositionLoading:m,shouldShowSelectedDomBounds:p}){const{projectId:O,refreshKey:b,activeCompPath:S,setActiveCompPath:k,captionEditMode:T,compositionLoading:w,isPlaying:A,previewIframeRef:E,refreshPreviewDocumentVersion:C,handlePreviewIframeRef:P,timelineVisible:$,toggleTimelineVisibility:M}=tf(),{domEditHoverSelection:R,domEditSelection:N,domEditGroupSelections:Z,handleTimelineElementSelect:D,handlePreviewCanvasMouseDown:I,handlePreviewCanvasPointerMove:U,handlePreviewCanvasPointerLeave:K,applyDomSelection:q,handleBlockedDomMove:L,handleDomManualDragStart:W,handleDomPathOffsetCommit:ee,handleDomGroupPathOffsetCommit:X,handleDomBoxSizeCommit:B,handleDomRotationCommit:_}=Z1();return y.jsx("div",{className:"flex-1 relative min-w-0",children:y.jsx(FW,{projectId:O,refreshKey:b,activeCompositionPath:S,timelineToolbar:n,renderClipContent:e,onDeleteElement:t,onAssetDrop:r,onBlockDrop:i,onFileDrop:a,onMoveElement:s,onResizeElement:o,onBlockedEditAttempt:u,onSelectTimelineElement:D,onCompIdToSrcChange:d,onCompositionLoadingChange:m,onCompositionChange:j=>{j!==S&&(k(j),C())},onIframeRef:P,previewOverlay:T?y.jsx(WW,{iframeRef:E}):yn?y.jsx(vG,{iframeRef:E,activeCompositionPath:S,hoverSelection:M8&&!T&&!w&&!A?R:null,selection:p?N:null,groupSelections:p?Z:[],allowCanvasMovement:$V,onCanvasMouseDown:I,onCanvasPointerMove:U,onCanvasPointerLeave:K,onSelectionChange:q,onBlockedMove:L,onManualDragStart:W,onPathOffsetCommit:ee,onGroupPathOffsetCommit:X,onBoxSizeCommit:B,onRotationCommit:_}):null,timelineFooter:T?y.jsxs("div",{className:"border-t border-neutral-800/30 flex-shrink-0",style:{height:60},children:[y.jsx("div",{className:"flex items-center gap-1.5 px-2 py-0.5",children:y.jsx("span",{className:"text-[9px] font-medium text-neutral-500 uppercase tracking-wider",children:"Captions"})}),y.jsx(GW,{pixelsPerSecond:100})]}):void 0,timelineVisible:$,onToggleTimeline:M})})}function $r(n){return Math.max(0,Math.min(255,Math.round(n)))}function f4(n){return Math.max(0,Math.min(1,n))}function N2(n){return $r(n).toString(16).padStart(2,"0")}function TG(n){return`${Math.round(f4(n)*100)/100}`}function kE(n){const e=n.trim().toLowerCase();if(!e)return null;if(e==="transparent")return{red:0,green:0,blue:0,alpha:0};const t=e.match(/^#([0-9a-f]{3})$/i);if(t){const[a,s,o]=t[1].split("");return{red:Number.parseInt(a+a,16),green:Number.parseInt(s+s,16),blue:Number.parseInt(o+o,16),alpha:1}}const r=e.match(/^#([0-9a-f]{6})$/i);if(r)return{red:Number.parseInt(r[1].slice(0,2),16),green:Number.parseInt(r[1].slice(2,4),16),blue:Number.parseInt(r[1].slice(4,6),16),alpha:1};const i=e.match(/^rgba?\(\s*([0-9.]+)\s*,\s*([0-9.]+)\s*,\s*([0-9.]+)(?:\s*,\s*([0-9.]+))?\s*\)$/i);return i?{red:$r(Number.parseFloat(i[1])),green:$r(Number.parseFloat(i[2])),blue:$r(Number.parseFloat(i[3])),alpha:f4(i[4]!=null?Number.parseFloat(i[4]):1)}:null}function j2(n){return`#${N2(n.red)}${N2(n.green)}${N2(n.blue)}`}function oh(n){const e=$r(n.red),t=$r(n.green),r=$r(n.blue),i=f4(n.alpha);return i>=1?`rgb(${e}, ${t}, ${r})`:`rgba(${e}, ${t}, ${r}, ${TG(i)})`}function AG(n){const e=$r(n.red)/255,t=$r(n.green)/255,r=$r(n.blue)/255,i=Math.max(e,t,r),a=Math.min(e,t,r),s=i-a;let o=0;return s!==0&&(i===e?o=60*((t-r)/s%6):i===t?o=60*((r-e)/s+2):o=60*((e-t)/s+4)),o<0&&(o+=360),{hue:o,saturation:i===0?0:s/i,value:i}}function lw(n){const e=(n.hue%360+360)%360/60,t=Math.max(0,Math.min(1,n.saturation)),r=Math.max(0,Math.min(1,n.value)),i=r*t,a=i*(1-Math.abs(e%2-1)),s=r-i;let o=0,u=0,d=0;return e>=0&&e<1?(o=i,u=a):e>=1&&e<2?(o=a,u=i):e>=2&&e<3?(u=i,d=a):e>=3&&e<4?(u=a,d=i):e>=4&&e<5?(o=a,d=i):(o=i,d=a),{red:$r((o+s)*255),green:$r((u+s)*255),blue:$r((d+s)*255)}}const vE=new Set(["inherit","initial","revert","revert-layer","serif","sans-serif","monospace","cursive","fantasy","system-ui","ui-sans-serif","ui-serif","ui-monospace","ui-rounded","emoji","math","fangsong"]),PG=[...Q8,"Inter","system-ui","sans-serif","serif","monospace"];function ow(n){return n.replace(/[^\w .-]+/g," ").replace(/\s+/g," ").trim()}function ch(n){var r,i;const e=((r=n.style)==null?void 0:r.toLowerCase())??"",t=((i=n.fullName)==null?void 0:i.toLowerCase())??"";return e==="regular"||t.endsWith(" regular")?0:e==="normal"||t.endsWith(" normal")?1:e==="medium"||t.endsWith(" medium")?2:3}function Z2(n){const e=new Set;return n.reduce((t,r)=>{const i=r.trim();if(!i)return t;const a=i.toLowerCase();return e.has(a)||(e.add(a),t.push(i)),t},[])}function cw(n){const e=new Set;return n.reduce((t,r)=>{const i=r.family.trim();if(!i)return t;const a=i.toLowerCase();return e.has(a)||(e.add(a),t.push({family:i,source:r.source})),t},[])}function CG(n){return[...n].sort((e,t)=>{const r=uw(e.source)-uw(t.source);if(r!==0)return r;const i=Q8.findIndex(o=>o.toLowerCase()===e.family.toLowerCase()),a=Q8.findIndex(o=>o.toLowerCase()===t.family.toLowerCase()),s=(i===-1?Number.MAX_SAFE_INTEGER:i)-(a===-1?Number.MAX_SAFE_INTEGER:a);return s===0?e.family.localeCompare(t.family):s})}function uw(n){return n==="Current"?0:n==="Document"?1:n==="Imported"?2:n==="Google"?3:n==="Local"?4:5}const ta="min-w-0 rounded-xl border border-neutral-800 bg-neutral-900/95 px-3 py-2 text-neutral-100 shadow-[inset_0_1px_0_rgba(255,255,255,0.03)] transition-colors focus-within:border-neutral-600",Xt="text-[11px] font-medium uppercase tracking-[0.18em] text-neutral-500",Er="grid grid-cols-[repeat(auto-fit,minmax(118px,1fr))] gap-3",EG={},QO="none",wE={none:"none",soft:"0 12px 36px rgba(0, 0, 0, 0.28)",lift:"0 18px 54px rgba(0, 0, 0, 0.38)",glow:"0 0 0 1px rgba(60, 230, 172, 0.34), 0 18px 56px rgba(60, 230, 172, 0.2)"};function D2(n){return kE(n)??{red:0,green:0,blue:0,alpha:1}}function _O(n){if(!n)return null;const e=Number.parseFloat(n);return Number.isFinite(e)?e:null}function Zt(n){const e=Math.round(n*100)/100;return Number.isInteger(e)?`${e}`:e.toFixed(2).replace(/0+$/,"").replace(/\.$/,"")}function Xl(n){if(!n)return null;const e=n.trim().match(/^(-?\d+(?:\.\d+)?)([a-z%]*)$/i);if(!e)return null;const t=Number.parseFloat(e[1]);return Number.isFinite(t)?{value:t,unit:e[2]??""}:null}function Ps(n){const e=Xl(n);return!e||e.unit&&e.unit.toLowerCase()!=="px"?null:e.value}function TE(n,e,t,r){return Number.isFinite(n)?Math.max(e,Math.min(t,n)):r}function MG(n,e={}){const t=Xl(n.trim());if(!t||t.unit&&t.unit.toLowerCase()!=="px")return null;const r=TE(t.value,e.min??Number.NEGATIVE_INFINITY,e.max??Number.POSITIVE_INFINITY,e.fallback??0);return`${Zt(r)}px`}function lc(n){return`${Zt(n)}px`}function fw(n,e){const t=e.trim();if(!t||t==="normal")return t||"normal";const r=Xl(t);return r?n==="letter-spacing"?r.unit?t:`${Zt(r.value)}px`:r.unit?t:r.value>4?`${Zt(r.value)}px`:Zt(r.value):t}function $G(n){const e=[];let t="",r=0;for(const i of n.trim()){if(i==="("&&(r+=1),i===")"&&(r=Math.max(0,r-1)),/\s/.test(i)&&r===0){t.trim()&&e.push(t.trim()),t="";continue}t+=i}return t.trim()&&e.push(t.trim()),e}function dw(n,e){const t=n==null?void 0:n.trim();if(!t||t===QO)return 0;const r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=new RegExp(`(?:^|\\s)${r}\\((-?\\d+(?:\\.\\d+)?)px\\)`,"i").exec(t);if(!i)return 0;const a=Number.parseFloat(i[1]);return Number.isFinite(a)?Math.max(0,a):0}function hw(n,e,t){const r=TE(t,0,200,0),i=$G(n&&n.trim()!==QO?n:""),a=e.toLowerCase(),s=i.filter(o=>!o.toLowerCase().startsWith(`${a}(`));return r>0&&s.push(`${e}(${Zt(r)}px)`),s.length>0?s.join(" "):QO}function RG(n){const e=(n==null?void 0:n.trim())||"none";for(const[t,r]of Object.entries(wE))if(e===r)return t;return e==="none"?"none":"custom"}function QG(n,e){return n==="custom"?(e==null?void 0:e.trim())||"none":wE[n]}function _G(n){const e=n==null?void 0:n.trim();return!e||e==="none"?"none":/^inset\(/i.test(e)?"inset":/^circle\(/i.test(e)?"circle":"custom"}function NG(n){const e=/^inset\(\s*(-?\d+(?:\.\d+)?)px\b/i.exec((n==null?void 0:n.trim())??"");if(!e)return 0;const t=Number.parseFloat(e[1]);return Number.isFinite(t)?Math.max(0,t):0}function jG(n,e){const t=[["border-width",n]],r=Xl(n),i=(e==null?void 0:e.trim().toLowerCase())||"none";return r&&r.value>0&&(i==="none"||i==="hidden")&&t.push(["border-style","solid"]),t}function ZG(n,e){const t=[["border-style",n]],r=n.trim().toLowerCase();if(!r||r==="none"||r==="hidden")return t;const i=Xl((e==null?void 0:e.trim())||"0");return(!i||i.value<=0)&&t.push(["border-width","1px"]),t}function DG(n,e,t){return n==="custom"?(t==null?void 0:t.trim())||"none":n==="circle"?"circle(50% at 50% 50%)":n==="inset"?`inset(0 round ${Zt(Math.max(0,e))}px)`:"none"}function VG(n,e){return`inset(${Zt(Math.max(0,n))}px round ${Zt(Math.max(0,e))}px)`}function mw(n,e,t){const r=Xl(n);if(!r)return null;const i=t!=null&&t.altKey?.1:t!=null&&t.shiftKey?10:1,a=r.value+i*e;return`${Zt(a)}${r.unit}`}function IG(n){if(!n)return"";const t=n.toLowerCase().indexOf("url(");if(t<0)return"";let r=t+4;for(;r<n.length&&(n[r]===" "||n[r]===`
361
- `||n[r]==="\r"||n[r]===" "||n[r]==="\f");)r+=1;const i=n[r]==='"'||n[r]==="'"?n[r]:null;if(i){r+=1;const s=n.indexOf(i,r);return s>=r?n.slice(r,s):""}const a=n.indexOf(")",r);return a<r?"":n.slice(r,a).trim()}function AE({value:n,disabled:e,liveCommit:t,onCommit:r}){const[i,a]=h.useState(n),s=h.useRef(null),o=h.useRef(n),u=h.useRef(i),d=h.useRef(null);o.current=n,u.current=i,h.useEffect(()=>{a(n)},[n]),h.useEffect(()=>{const b=d.current;if(!b)return;const S=k=>{if(e)return;const T=k.deltaY===0?k.deltaX:k.deltaY;if(T===0)return;const w=mw(u.current,T<0?1:-1,k);w&&(k.preventDefault(),k.stopPropagation(),a(w),O.current(w))};return b.addEventListener("wheel",S,{passive:!1}),()=>b.removeEventListener("wheel",S)},[e]),h.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const m=b=>{s.current&&clearTimeout(s.current),b!==o.current&&r(b)},p=b=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{b!==o.current&&r(b)},120)},O=h.useRef(p);return O.current=p,y.jsx("input",{ref:d,type:"text",value:i,disabled:e,onChange:b=>{a(b.target.value),t&&p(b.target.value)},onBlur:()=>m(i),onKeyDown:b=>{if(b.key==="Enter"){b.target.blur();return}if(b.key!=="ArrowUp"&&b.key!=="ArrowDown")return;const S=mw(i,b.key==="ArrowUp"?1:-1,b);S&&(b.preventDefault(),a(S),p(S))},title:Xl(n)?"Scroll or use Arrow keys to adjust":void 0,className:"min-w-0 w-full bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600"})}function mi({label:n,value:e,disabled:t,liveCommit:r,scrub:i,onCommit:a}){const s=h.useRef(null),o=h.useCallback(p=>{if(t||!i)return;const O=parseFloat(e);Number.isFinite(O)&&(p.target.setPointerCapture(p.pointerId),s.current={startX:p.clientX,startValue:O,pointerId:p.pointerId})},[t,i,e]),u=h.useCallback(p=>{const O=s.current;if(!O)return;const b=p.clientX-O.startX;a(String(Math.round(O.startValue+b)))},[a]),d=h.useCallback(()=>{s.current=null},[]),m=i&&!t?{className:"flex-shrink-0 text-[11px] font-medium text-neutral-500 cursor-ew-resize select-none",onPointerDown:o,onPointerMove:u,onPointerUp:d}:{className:"flex-shrink-0 text-[11px] font-medium text-neutral-500"};return y.jsx("div",{className:ta,children:y.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[y.jsx("span",{...m,children:n}),y.jsx(AE,{value:e,disabled:t,liveCommit:r,onCommit:a})]})})}function d4({label:n,value:e,disabled:t,onCommit:r}){return y.jsxs("label",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:n}),y.jsx("div",{className:ta,children:y.jsx(AE,{value:e,disabled:t,onCommit:r})})]})}function gi({value:n,min:e,max:t,step:r,displayValue:i,formatDisplayValue:a,disabled:s,onCommit:o}){const[u,d]=h.useState(n),m=h.useRef(null),p=h.useRef(n);p.current=n,h.useEffect(()=>{d(n)},[n]),h.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const O=S=>{m.current&&clearTimeout(m.current),S!==p.current&&o(S)},b=S=>{m.current&&clearTimeout(m.current),m.current=setTimeout(()=>{S!==p.current&&o(S)},40)};return y.jsxs("div",{className:"grid min-w-0 grid-cols-[minmax(0,1fr)_auto] items-center gap-2",children:[y.jsx("input",{type:"range",min:e,max:t,step:r,value:u,disabled:s,onChange:S=>{const k=Number(S.target.value);d(k),b(k)},onMouseUp:()=>O(u),onTouchEnd:()=>O(u),onBlur:()=>O(u),className:"h-2 min-w-0 w-full cursor-pointer appearance-none rounded-full bg-neutral-800 accent-[#3ce6ac] disabled:cursor-not-allowed"}),y.jsx("div",{className:"min-w-[52px] rounded-xl border border-neutral-800 bg-neutral-900 px-2 py-2 text-right text-[11px] font-medium text-neutral-100 shadow-[inset_0_1px_0_rgba(255,255,255,0.03)]",children:(a==null?void 0:a(u))??i})]})}function bc({options:n,value:e,disabled:t,onChange:r}){return y.jsx("div",{className:"grid min-w-0 gap-1 rounded-xl bg-neutral-900 p-1 shadow-[inset_0_1px_0_rgba(255,255,255,0.03)]",style:{gridTemplateColumns:`repeat(${n.length}, minmax(0, 1fr))`},children:n.map(i=>y.jsx("button",{type:"button",disabled:t,onClick:()=>r(i.value),className:`min-w-0 truncate rounded-lg px-2 py-1.5 text-[11px] font-medium transition-colors disabled:cursor-not-allowed ${i.value===e?"bg-neutral-800 text-white shadow-[0_1px_3px_rgba(0,0,0,0.28)]":"text-neutral-500 hover:text-neutral-200"}`,children:i.label},i.value))})}function Nn({label:n,value:e,disabled:t,options:r,onChange:i}){const a=e&&!r.includes(e)?[e,...r]:r;return y.jsxs("label",{className:`${ta} flex items-center gap-3`,children:[y.jsx("span",{className:"flex-shrink-0 text-[11px] font-medium text-neutral-500",children:n}),y.jsx("select",{value:e,disabled:t,onChange:s=>i(s.target.value),className:"min-w-0 w-full appearance-none bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600",children:a.map(s=>y.jsx("option",{value:s,children:s},s))})]})}function Yr({title:n,icon:e,children:t,accessory:r,defaultCollapsed:i=!1}){const[a,s]=h.useState(i);return y.jsxs("section",{className:"min-w-0 border-t border-neutral-800/80",children:[y.jsxs("button",{type:"button",onClick:()=>s(o=>!o),className:"flex w-full items-center justify-between gap-2 px-4 py-3",children:[y.jsxs("div",{className:"flex min-w-0 items-center gap-2.5",children:[y.jsx("span",{className:"flex-shrink-0 text-neutral-500",children:e}),y.jsx("h3",{className:"text-[11px] font-semibold uppercase tracking-[0.12em] text-neutral-300",children:n})]}),y.jsxs("div",{className:"flex items-center gap-2",children:[r,y.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"currentColor",className:`flex-shrink-0 text-neutral-500 transition-transform ${a?"-rotate-90":""}`,children:y.jsx("path",{d:"M2 3l3 4 3-4z"})})]})]}),!a&&y.jsx("div",{className:"px-4 pb-4",children:t})]})}const LG=new Set(["video","audio"]);function zG(n){return LG.has(n.tagName)}function pw(n){return!Number.isFinite(n)||n<0?"0.00s":`${n.toFixed(2)}s`}function BG({projectDir:n,element:e,styles:t,onSetStyle:r,onSetAttribute:i,onSetHtmlAttribute:a}){const s=e.tagName==="video",o=e.element,u=_O(e.dataAttributes.volume??"")??1,d=Math.round(u*100),m=Number.parseFloat(e.dataAttributes["media-start"]??e.dataAttributes["playback-start"]??"0")||0,p=o.hasAttribute("loop"),O=o.hasAttribute("muted"),b=e.dataAttributes["has-audio"]==="true",S=Number.parseFloat(e.dataAttributes["playback-rate"]??"1")||1,k=t["object-fit"]||"contain",T=t["object-position"]||"center",w=Number.parseFloat(e.dataAttributes["source-duration"]??"")||o.duration||0,A=Math.max(30,Math.ceil(w||m+10)),E=o.getAttribute("src")??"",[C,P]=h.useState(!1),$=n&&E&&!E.startsWith("http")?`${n}/${E}`:E;return y.jsx(Yr,{title:s?"Video":"Audio",icon:s?y.jsx(iL,{size:15}):y.jsx(lL,{size:15}),children:y.jsxs("div",{className:"space-y-4",children:[E&&y.jsxs("div",{className:"min-w-0",children:[y.jsxs("div",{className:"flex items-center justify-between gap-2",children:[y.jsx("div",{className:"text-[10px] uppercase tracking-[0.12em] text-neutral-500",children:"Source"}),y.jsxs("button",{type:"button",onClick:()=>{navigator.clipboard.writeText($).then(()=>{P(!0),setTimeout(()=>P(!1),1500)})},className:"flex h-6 items-center gap-1 rounded-lg border border-neutral-700 bg-neutral-950 px-2 text-[10px] font-medium text-neutral-400 transition-colors hover:border-neutral-600 hover:text-neutral-200",children:[C?y.jsx(nL,{size:11}):y.jsx(dL,{size:11}),y.jsx("span",{children:C?"Copied":"Copy"})]})]}),y.jsx("div",{className:"mt-1 truncate text-[11px] font-medium text-neutral-300",title:$,children:$})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Volume"}),y.jsx(gi,{value:d,min:0,max:100,step:1,displayValue:`${d}%`,formatDisplayValue:M=>`${Math.round(M)}%`,onCommit:M=>{i("volume",Zt(M/100))}})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Playback rate"}),y.jsx(gi,{value:S*100,min:25,max:300,step:5,displayValue:`${Zt(S)}x`,formatDisplayValue:M=>`${Zt(M/100)}x`,onCommit:M=>{i("playback-rate",Zt(M/100))}})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Media start"}),y.jsx(gi,{value:Math.round(m*100),min:0,max:A*100,step:10,displayValue:pw(m),formatDisplayValue:M=>pw(M/100),onCommit:M=>{i("media-start",(M/100).toFixed(2))}})]}),y.jsxs("div",{className:Er,children:[y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Loop"}),y.jsx(bc,{value:p?"on":"off",onChange:M=>{a("loop",M==="on"?"true":null)},options:[{label:"On",value:"on"},{label:"Off",value:"off"}]})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Muted"}),y.jsx(bc,{value:O?"on":"off",onChange:M=>{a("muted",M==="on"?"true":null)},options:[{label:"On",value:"on"},{label:"Off",value:"off"}]})]})]}),s&&y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Has audio track"}),y.jsx(bc,{value:b?"yes":"no",onChange:M=>{M==="yes"?(i("has-audio","true"),a("muted",null)):(i("has-audio",""),a("muted","true"))},options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]})]}),s&&y.jsx(y.Fragment,{children:y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Fit",value:k,onChange:M=>{r("object-fit",M)},options:["contain","cover","fill","none","scale-down"]}),y.jsx(Nn,{label:"Position",value:T,onChange:M=>{r("object-position",M)},options:["center","top","bottom","left","right","left top","right top","left bottom","right bottom"]})]})})]})})}function V2(n,e,t){return Math.max(e,Math.min(t,n))}function HG(n,e,t,r){const s=Math.max(12,e.width-t.width-12),o=n.left+n.width/2-t.width/2,u=V2(o,12,s),d=n.bottom+8,m=n.top-t.height-8,p=d+t.height<=e.height-12,O=m>=12;return p||!O?{left:u,top:V2(d,12,Math.max(12,e.height-t.height-12)),placement:"bottom"}:{left:u,top:V2(m,12,Math.max(12,e.height-t.height-12)),placement:"top"}}const gw={width:292,height:386};function Ow({label:n,value:e,min:t,max:r,step:i,displayValue:a,background:s,thumbColor:o,disabled:u,onCommit:d}){const m=h.useRef(null),p=(e-t)/(r-t)*100,O=S=>{var A;const k=(A=m.current)==null?void 0:A.getBoundingClientRect();if(!k||k.width<=0)return;const T=t+(S-k.left)/k.width*(r-t),w=Math.round(T/i)*i;d(Math.max(t,Math.min(r,w)))},b=S=>{d(Math.max(t,Math.min(r,S)))};return y.jsxs("div",{className:"grid gap-1.5",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("span",{className:Xt,children:n}),y.jsx("span",{className:"text-[10px] font-medium text-neutral-400",children:a})]}),y.jsx("div",{ref:m,role:"slider",tabIndex:u?-1:0,"aria-label":n,"aria-valuemin":t,"aria-valuemax":r,"aria-valuenow":e,"aria-disabled":u,className:`relative h-4 rounded-full border border-neutral-700 shadow-[inset_0_1px_2px_rgba(0,0,0,0.55)] outline-none focus:border-[#f5a400] focus:ring-2 focus:ring-[#f5a400]/40 ${u?"cursor-not-allowed opacity-50":"cursor-ew-resize"}`,style:{background:s},onPointerDown:S=>{u||(S.currentTarget.setPointerCapture(S.pointerId),O(S.clientX))},onPointerMove:S=>{u||S.buttons!==1||O(S.clientX)},onKeyDown:S=>{u||(S.key==="ArrowRight"||S.key==="ArrowUp"?(S.preventDefault(),b(e+i)):S.key==="ArrowLeft"||S.key==="ArrowDown"?(S.preventDefault(),b(e-i)):S.key==="Home"?(S.preventDefault(),b(t)):S.key==="End"&&(S.preventDefault(),b(r)))},children:y.jsx("div",{className:"pointer-events-none absolute top-1/2 h-6 w-6 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-white shadow-[0_0_0_1px_rgba(0,0,0,0.85),0_6px_14px_rgba(0,0,0,0.5)]",style:{left:`${Math.max(0,Math.min(100,p))}%`,backgroundColor:o}})})]})}function b0({label:n,value:e,disabled:t,onCommit:r}){const i=h.useRef(null),a=h.useRef(null),[s,o]=h.useState(!1),[u,d]=h.useState(null),[m,p]=h.useState(()=>D2(e)),[O,b]=h.useState(()=>j2(D2(e)).toUpperCase()),S=AG(m),k=oh({...lw({hue:S.hue,saturation:1,value:1}),alpha:1}),T=oh({...m,alpha:1}),w=oh(m),A=Math.round(S.saturation*100),E=Math.round(S.value*100),C=Math.round(m.alpha*100);h.useEffect(()=>{const I=D2(e);p(I),b(j2(I).toUpperCase())},[e]);const P=h.useCallback(()=>{var K,q;const I=(K=i.current)==null?void 0:K.getBoundingClientRect();if(!I)return;const U=(q=a.current)==null?void 0:q.getBoundingClientRect();d(HG(I,{width:window.innerWidth,height:window.innerHeight},{width:(U==null?void 0:U.width)||gw.width,height:(U==null?void 0:U.height)||gw.height}))},[]);h.useLayoutEffect(()=>{if(!s)return;P();const I=()=>P();return window.addEventListener("resize",I),window.addEventListener("scroll",I,!0),()=>{window.removeEventListener("resize",I),window.removeEventListener("scroll",I,!0)}},[s,P]),h.useEffect(()=>{if(!s)return;const I=K=>{var L,W;const q=K.target;q&&((L=a.current)!=null&&L.contains(q)||(W=i.current)!=null&&W.contains(q)||o(!1))},U=K=>{K.key==="Escape"&&o(!1)};return document.addEventListener("pointerdown",I),document.addEventListener("keydown",U),()=>{document.removeEventListener("pointerdown",I),document.removeEventListener("keydown",U)}},[s]);const $=I=>{p(I),b(j2(I).toUpperCase()),r(oh(I))},M=I=>{const U=lw({hue:I.hue??S.hue,saturation:I.saturation??S.saturation,value:I.value??S.value});$({...U,alpha:m.alpha})},R=(I,U,K)=>{const q=K.getBoundingClientRect(),L=Math.max(0,Math.min(1,(I-q.left)/q.width)),W=Math.max(0,Math.min(1,1-(U-q.top)/q.height));M({saturation:L,value:W})},N=I=>{b(I);const U=I.trim().startsWith("#")?I.trim():`#${I.trim()}`,K=kE(U);K&&$({...K,alpha:m.alpha})},Z=s?cE.createPortal(y.jsxs("div",{ref:a,className:"fixed z-[9999] w-[292px] overflow-hidden rounded-2xl border border-neutral-700 bg-neutral-950 shadow-2xl shadow-black/50",style:{left:(u==null?void 0:u.left)??-9999,top:(u==null?void 0:u.top)??-9999},children:[y.jsxs("div",{className:"flex items-center justify-between border-b border-neutral-800 px-3 py-2",children:[y.jsxs("div",{className:"min-w-0",children:[y.jsx("div",{className:"truncate text-[11px] font-medium text-neutral-100",children:n}),y.jsx("div",{className:"text-[9px] uppercase tracking-[0.16em] text-neutral-600",children:"Color"})]}),y.jsx("button",{type:"button",onClick:()=>o(!1),className:"flex h-7 w-7 items-center justify-center rounded-lg text-neutral-500 transition-colors hover:bg-neutral-900 hover:text-neutral-200","aria-label":"Close color picker",children:y.jsx(j1,{size:13})})]}),y.jsxs("div",{className:"space-y-3 p-3",children:[y.jsxs("div",{className:"relative h-36 cursor-crosshair overflow-hidden rounded-xl border border-neutral-700 shadow-[inset_0_0_0_1px_rgba(255,255,255,0.06)]",style:{backgroundColor:k},onPointerDown:I=>{I.currentTarget.setPointerCapture(I.pointerId),R(I.clientX,I.clientY,I.currentTarget)},onPointerMove:I=>{I.buttons===1&&R(I.clientX,I.clientY,I.currentTarget)},children:[y.jsx("div",{className:"absolute inset-0 bg-gradient-to-r from-white to-transparent"}),y.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black to-transparent"}),y.jsx("div",{className:"pointer-events-none absolute top-0 h-full w-px -translate-x-1/2 bg-white/70 shadow-[0_0_0_1px_rgba(0,0,0,0.45)] mix-blend-difference",style:{left:`${S.saturation*100}%`}}),y.jsx("div",{className:"pointer-events-none absolute left-0 h-px w-full -translate-y-1/2 bg-white/70 shadow-[0_0_0_1px_rgba(0,0,0,0.45)] mix-blend-difference",style:{top:`${(1-S.value)*100}%`}}),y.jsx("div",{className:"pointer-events-none absolute h-6 w-6 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-white shadow-[0_0_0_1px_rgba(0,0,0,0.85),0_8px_18px_rgba(0,0,0,0.45)]",style:{left:`${S.saturation*100}%`,top:`${(1-S.value)*100}%`,backgroundColor:T}})]}),y.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[y.jsx("div",{className:"h-9 w-9 flex-shrink-0 rounded-xl border border-neutral-600 shadow-[inset_0_1px_0_rgba(255,255,255,0.08)]",style:{backgroundColor:w}}),y.jsxs("div",{className:"min-w-0 flex-1",children:[y.jsx("div",{className:"truncate text-[11px] font-medium text-neutral-100",children:w}),y.jsxs("div",{className:"mt-0.5 text-[9px] uppercase tracking-[0.12em] text-neutral-600",children:["S ",A,"% · B ",E,"% · A ",C,"%"]})]})]}),y.jsx(Ow,{label:"Hue",value:S.hue,min:0,max:360,step:1,displayValue:`${Math.round(S.hue)}°`,background:"linear-gradient(90deg, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00)",thumbColor:k,disabled:t,onCommit:I=>M({hue:I})}),y.jsx(Ow,{label:"Alpha",value:m.alpha,min:0,max:1,step:.01,displayValue:`${C}%`,background:`linear-gradient(90deg, transparent, ${T})`,thumbColor:w,disabled:t,onCommit:I=>$({...m,alpha:I})}),y.jsxs("label",{className:"grid gap-1.5",children:[y.jsx("span",{className:Xt,children:"Hex"}),y.jsx("input",{value:O,onChange:I=>N(I.target.value),className:`${ta} h-10 w-full text-[11px] font-medium outline-none`,spellCheck:!1})]})]})]}),document.body):null,D=()=>{t||(o(I=>!I),s||requestAnimationFrame(P))};return y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:n}),y.jsxs("button",{type:"button",disabled:t,"aria-label":`Pick ${n.toLowerCase()} color`,ref:i,onClick:D,className:`${ta} flex items-center gap-3 text-left hover:border-neutral-700 disabled:cursor-not-allowed ${s?"border-neutral-600":""}`,children:[y.jsx("div",{className:"relative h-7 w-7 flex-shrink-0 overflow-hidden rounded-lg border border-neutral-700 bg-neutral-950 shadow-[inset_0_1px_0_rgba(255,255,255,0.04)]",style:{backgroundColor:e||"transparent"}}),y.jsx("span",{className:"min-w-0 flex-1 truncate text-[11px] font-medium text-neutral-100",children:e})]}),Z]})}function FG(n){const e=[];let t="",r=null;for(const i of n){if((i==='"'||i==="'")&&!r){r=i;continue}if(i===r){r=null;continue}if(i===","&&!r){t.trim()&&e.push(t.trim()),t="";continue}t+=i}return t.trim()&&e.push(t.trim()),e.map(i=>i.replace(/^["']|["']$/g,"").trim()).filter(Boolean)}function XG(n){return FG(n)[0]??"inherit"}function UG(n){const e=n.trim();return vE.has(e.toLowerCase())?e:`"${e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`}function uh(n){const e=n.trim();return e?vE.has(e.toLowerCase())?e:`${UG(e)}, ui-sans-serif, system-ui, sans-serif`:"inherit"}function qG(){if(typeof document>"u")return[];const n=document.fonts;return n?Array.from(n,e=>e.family.replace(/^["']|["']$/g,"").trim()).filter(Boolean).sort((e,t)=>e.localeCompare(t)):[]}function yw(n){return n.toLowerCase().replace(/[^a-z0-9]+/g,"")}function YG(n,e){const t=e.trim().toLowerCase();return!t||n.toLowerCase().includes(t)?!0:yw(n).includes(yw(t))}function bw(n){if(typeof document>"u")return;const e=n.trim();if(!e)return;const t=`studio-google-font-${e.toLowerCase().replace(/[^a-z0-9]+/g,"-")}`;if(document.getElementById(t))return;if(!document.querySelector('link[data-studio-google-font-preconnect="true"]')){const a=document.createElement("link");a.setAttribute("data-studio-google-font-preconnect","true"),a.rel="preconnect",a.href="https://fonts.gstatic.com",a.crossOrigin="anonymous",document.head.appendChild(a)}const i=document.createElement("link");i.id=t,i.rel="stylesheet",i.href=$9(e),document.head.appendChild(i)}function fh(n){if(typeof document>"u")return;const e=`studio-imported-font-${n.family.toLowerCase().replace(/[^a-z0-9]+/g,"-")}`;if(document.getElementById(e))return;const t=document.createElement("style");t.id=e,t.textContent=a6(n),document.head.appendChild(t)}function WG({value:n,disabled:e,importedFonts:t,onImportFonts:r,onCommit:i}){const a=XG(n),s=h.useRef(null),o=h.useRef(null),u=h.useRef(null),[d,m]=h.useState(!1),[p,O]=h.useState(""),[b,S]=h.useState([]),[k,T]=h.useState([]),[w,A]=h.useState(()=>[...xS]),[E,C]=h.useState(!1),[P,$]=h.useState(!1),[M,R]=h.useState(!1),[N,Z]=h.useState(null),D=typeof window<"u"&&typeof window.queryLocalFonts=="function";h.useEffect(()=>{if(!d)return;const X=B=>{var j;const _=B.target;_ instanceof Node&&((j=s.current)!=null&&j.contains(_)||m(!1))};return document.addEventListener("pointerdown",X),()=>document.removeEventListener("pointerdown",X)},[d]),h.useEffect(()=>{d&&requestAnimationFrame(()=>{var X;return(X=o.current)==null?void 0:X.focus()})},[d]),h.useEffect(()=>{let X=!1;return fetch("/api/fonts").then(B=>B.ok?B.json():null).then(B=>{X||!Array.isArray(B==null?void 0:B.fonts)||S(_=>Z2([..._,...B.fonts]))}).catch(()=>{}),()=>{X=!0}},[]),h.useEffect(()=>{let X=!1;return $(!0),fetch("/api/fonts/google").then(B=>B.ok?B.json():null).then(B=>{X||!Array.isArray(B==null?void 0:B.fonts)||A(Z2([...B.fonts,...xS]))}).catch(()=>{}).finally(()=>{X||$(!1)}),()=>{X=!0}},[]),h.useEffect(()=>{w.some(B=>B.toLowerCase()===a.toLowerCase())&&bw(a);const X=t.find(B=>B.family.toLowerCase()===a.toLowerCase());X&&fh(X)},[a,w,t]);const I=async()=>{if(!D||!window.queryLocalFonts){Z("This browser does not expose installed fonts. Import a font file instead.");return}C(!0),Z(null);try{const X=await window.queryLocalFonts(),B=[...X].sort((j,H)=>ch(j)-ch(H)),_=B.map(j=>j.family).filter(j=>!!j).map(j=>Sc(`${j}.ttf`));T(B),S(j=>Z2([...j,..._])),Z(X.length===0?"No browser-local fonts were returned.":null)}catch(X){const B=X instanceof Error?X.name:"";Z(B==="NotAllowedError"?"Local font access was denied. Import a font file instead.":"Local font access is unavailable. Import a font file instead.")}finally{C(!1)}},U=async X=>{if(!(!(X!=null&&X.length)||!r)){R(!0),Z(null);try{const B=await r(X);for(const j of B)fh(j);const _=B[0];_?(i(uh(_.family)),O(""),m(!1)):Z("No supported font files were imported.")}finally{R(!1)}}},K=h.useMemo(()=>cw(t.map(X=>({family:X.family,source:"Imported"}))),[t]),q=h.useMemo(()=>{const X=qG(),B=new Set(w.map(j=>j.toLowerCase())),_=b.map(j=>({family:j,source:B.has(j.toLowerCase())?"Google":"Local"}));return CG(cw([{family:a,source:"Current"},...X.map(j=>({family:j,source:"Document"})),...K,...w.map(j=>({family:j,source:"Google"})),..._,...PG.map(j=>({family:j,source:"System"}))]))},[a,w,b,K]),L=h.useMemo(()=>{const X=q.filter(j=>YG(j.family,p));if(p.trim())return X.slice(0,200);const B=new Map;for(const j of X){const H=B.get(j.source)??[];H.push(j),B.set(j.source,H)}const _=[];for(const j of["Current","Document","Imported"])_.push(...B.get(j)??[]);return _.push(...(B.get("Google")??[]).slice(0,100)),_.push(...(B.get("Local")??[]).slice(0,80)),_.push(...B.get("System")??[]),_},[q,p]),W=async X=>{if(!r)return null;const _=k.filter(ie=>Sc(`${ie.family}.ttf`)===X).sort((ie,Oe)=>ch(ie)-ch(Oe)).find(ie=>typeof ie.blob=="function");if(!(_!=null&&_.blob))return null;const j=await _.blob(),H=ow(_.style??"Regular")||"Regular",F=ow(`${X} ${H}`)||X,Y=new File([j],`${F}.ttf`,{type:j.type||"font/ttf"}),ae=await r([Y]);return ae.find(ie=>ie.family.toLowerCase()===X.toLowerCase())??ae[0]??null},ee=async X=>{if(X.source==="Local"){R(!0),Z(null);try{const _=await W(X.family);if(_){fh(_),i(uh(_.family)),O(""),m(!1);return}i(uh(X.family)),O(""),m(!1)}finally{R(!1)}return}X.source==="Google"&&bw(X.family);const B=t.find(_=>_.family.toLowerCase()===X.family.toLowerCase());B&&fh(B),i(uh(X.family)),O(""),m(!1)};return y.jsxs("div",{ref:s,className:"relative grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Font family"}),y.jsxs("button",{type:"button",disabled:e,onClick:()=>m(X=>!X),className:`${ta} flex h-10 items-center justify-between gap-3 text-left hover:border-neutral-700 disabled:cursor-not-allowed`,children:[y.jsx("span",{className:"min-w-0 flex-1 truncate text-[11px] font-medium text-neutral-100",style:{fontFamily:n},children:a}),y.jsx("span",{className:"flex-shrink-0 text-[10px] uppercase tracking-[0.14em] text-neutral-600",children:"Font"})]}),d&&y.jsxs("div",{className:"absolute left-0 right-0 top-[calc(100%+6px)] z-50 overflow-hidden rounded-xl border border-neutral-700 bg-neutral-950 shadow-2xl",children:[y.jsxs("div",{className:"grid grid-cols-[minmax(0,1fr)_auto_auto] gap-2 border-b border-neutral-800 p-2",children:[y.jsx("input",{ref:o,type:"text",value:p,disabled:e,placeholder:P?"Loading Google Fonts...":"Search fonts",onChange:X=>O(X.target.value),onKeyDown:X=>{X.key==="Escape"&&(X.preventDefault(),m(!1)),X.key==="Enter"&&L[0]&&(X.preventDefault(),ee(L[0]))},className:"min-w-0 rounded-lg border border-neutral-800 bg-neutral-900 px-2.5 py-2 text-[11px] font-medium text-neutral-100 outline-none placeholder:text-neutral-600 focus:border-neutral-600"}),D&&y.jsx("button",{type:"button",disabled:e||E,onClick:I,className:"rounded-lg border border-neutral-700 bg-neutral-900 px-2.5 text-[10px] font-medium text-neutral-400 transition-colors hover:border-neutral-600 hover:text-neutral-100 disabled:cursor-not-allowed disabled:text-neutral-700",children:E?"...":"Local"}),y.jsx("button",{type:"button",disabled:e||M||!r,onClick:()=>{var X;return(X=u.current)==null?void 0:X.click()},className:"rounded-lg border border-neutral-700 bg-neutral-900 px-2.5 text-[10px] font-medium text-neutral-400 transition-colors hover:border-neutral-600 hover:text-neutral-100 disabled:cursor-not-allowed disabled:text-neutral-700",children:M?"...":"Import"}),y.jsx("input",{ref:u,type:"file",accept:".ttf,.otf,.ttc,.woff,.woff2,.eot,font/*",multiple:!0,"aria-label":"Import local font files",disabled:e||M||!r,className:"hidden",onChange:async X=>{await U(X.target.files),X.target.value=""}})]}),N&&y.jsx("div",{className:"border-b border-neutral-800 px-3 py-2 text-[10px] leading-4 text-neutral-500",children:N}),y.jsx("div",{className:"max-h-64 overflow-y-auto p-1",children:L.length===0?y.jsx("div",{className:"px-2 py-3 text-[11px] text-neutral-500",children:"No fonts found."}):L.map(X=>y.jsxs("button",{type:"button",onClick:()=>ee(X),className:`flex w-full min-w-0 items-center justify-between gap-3 rounded-lg px-2 py-2 text-left text-[11px] transition-colors ${X.family===a?"bg-studio-accent/15 text-neutral-50":"text-neutral-300 hover:bg-neutral-900 hover:text-neutral-100"}`,children:[y.jsx("span",{className:"min-w-0 truncate font-medium",children:X.family}),y.jsx("span",{className:"flex-shrink-0 text-[9px] uppercase tracking-[0.14em] text-neutral-600",children:X.source})]},`${X.source}-${X.family}`))})]})]})}const GG=["closest-side","closest-corner","farthest-side","farthest-corner"];function PE(n){return n===" "||n===`
362
- `||n==="\r"||n===" "||n==="\f"}function NO(n){return n!=null&&n>="0"&&n<="9"}function CE(n){if(!n)return!1;let e=n[0]==="-"?1:0,t=0;for(;NO(n[e]);)e+=1,t+=1;if(n[e]===".")for(e+=1;NO(n[e]);)e+=1,t+=1;return t>0&&e===n.length}function h4(n){if(!n)return null;const e=n.trim();if(!CE(e))return null;const t=Number(e);return Number.isFinite(t)?t:null}function m4(n){const e=[];let t="";for(const r of n){if(PE(r)){t&&(e.push(t),t="");continue}t+=r}return t&&e.push(t),e}function oc(n,e){return m4(n.toLowerCase()).includes(e)}function k1(n,e){if(!(n!=null&&n.endsWith("%")))return e;const t=h4(n.slice(0,-1));return t==null?e:ff(t,0,100)}function EE(n){const e=n==null?void 0:n.trim().toLowerCase();return e!=null&&e.endsWith("deg")?h4(e.slice(0,-3)):null}function KG(n){if(!n.endsWith("%"))return null;const e=n.slice(0,-1).trimEnd();let t=e.length;for(;t>0&&(NO(e[t-1])||e[t-1]===".");)t-=1;t>0&&e[t-1]==="-"&&(t-=1);const r=e.slice(t);return!CE(r)||t===0||!PE(e[t-1])?null:t}function ff(n,e,t){return Math.min(t,Math.max(e,n))}function Di(n){return Math.round(n*100)/100}function JG(n,e){const t=h4(n);return t==null?e:ff(t,0,100)}function p4(n){const e=n.trim(),t=KG(e);if(t==null)return{color:e,position:null};const r=e.slice(0,-1).trimEnd();return{color:r.slice(0,t).trim(),position:JG(r.slice(t),0)}}function nm(n){return n.length===0?[{color:"rgba(60, 230, 172, 0.18)",position:0},{color:"rgba(255, 255, 255, 0.04)",position:100}]:n.length===1?[{color:n[0].color,position:0},{color:n[0].color,position:100}]:n.map((t,r)=>({color:t.color,position:t.position??r/(n.length-1)*100})).map(t=>({color:t.color,position:Di(ff(t.position,0,100))}))}function eK(n){const e=[];let t="",r=0;for(const i of n){if(i==="("&&(r+=1),i===")"&&(r=Math.max(0,r-1)),i===","&&r===0){t.trim()&&e.push(t.trim()),t="";continue}t+=i}return t.trim()&&e.push(t.trim()),e}function tK(n){const e=n.trim().toLowerCase(),t={"to top":0,"to top right":45,"to right top":45,"to right":90,"to bottom right":135,"to right bottom":135,"to bottom":180,"to bottom left":225,"to left bottom":225,"to left":270,"to top left":315,"to left top":315};return e in t?t[e]:null}function nK(n){const e=n[0]??"",t=tK(e),r=EE(e),i=r!=null,a=r??t??180,s=i||t!=null?n.slice(1):n;return{kind:"linear",repeating:!1,angle:a,centerX:50,centerY:50,shape:"ellipse",radialSize:"farthest-corner",stops:nm(s.map(p4))}}function rK(n){const e=n[0]??"",t=e.toLowerCase(),r=oc(t,"at")||oc(t,"circle")||oc(t,"ellipse")||t.includes("closest-")||t.includes("farthest-"),i=r?e:"",a=r?n.slice(1):n,s=i.toLowerCase(),o=m4(s),u=o.indexOf("at"),d=oc(s,"circle")?"circle":"ellipse",m=GG.find(p=>o.includes(p))??"farthest-corner";return{kind:"radial",repeating:!1,angle:180,centerX:k1(o[u+1],50),centerY:k1(o[u+2],50),shape:d,radialSize:m,stops:nm(a.map(p4))}}function iK(n){const e=n[0]??"",t=e.toLowerCase(),r=oc(t,"from")||oc(t,"at"),i=r?e:"",a=r?n.slice(1):n,s=m4(i.toLowerCase()),o=s.indexOf("from"),u=s.indexOf("at");return{kind:"conic",repeating:!1,angle:EE(s[o+1])??0,centerX:k1(s[u+1],50),centerY:k1(s[u+2],50),shape:"ellipse",radialSize:"farthest-corner",stops:nm(a.map(p4))}}function jO(n){return{kind:"linear",repeating:!1,angle:135,centerX:50,centerY:50,shape:"ellipse",radialSize:"farthest-corner",stops:nm([{color:n&&n!=="transparent"?n:"rgba(60, 230, 172, 0.18)",position:0},{color:"rgba(255, 255, 255, 0.04)",position:100}])}}function aK(n){if(!n||n==="none")return null;const e=n.trim(),t=e.indexOf("(");if(t<=0||!e.endsWith(")"))return null;const r=e.slice(0,t).toLowerCase(),a={"linear-gradient":{kind:"linear",repeating:!1},"radial-gradient":{kind:"radial",repeating:!1},"conic-gradient":{kind:"conic",repeating:!1},"repeating-linear-gradient":{kind:"linear",repeating:!0},"repeating-radial-gradient":{kind:"radial",repeating:!0},"repeating-conic-gradient":{kind:"conic",repeating:!0}}[r];if(!a)return null;const{kind:s,repeating:o}=a,u=eK(e.slice(t+1,-1));return{...s==="linear"?nK(u):s==="radial"?rK(u):iK(u),repeating:o}}function sK(n){return`${n.color} ${Di(n.position)}%`}function v1(n){const e=`${n.repeating?"repeating-":""}${n.kind}-gradient`,t=n.stops.map(sK).join(", ");return n.kind==="linear"?`${e}(${Di(n.angle)}deg, ${t})`:n.kind==="radial"?`${e}(${n.shape} ${n.radialSize} at ${Di(n.centerX)}% ${Di(n.centerY)}%, ${t})`:`${e}(from ${Di(n.angle)}deg at ${Di(n.centerX)}% ${Di(n.centerY)}%, ${t})`}function I2(n,e,t){return Math.round(n+(e-n)*t)}function L2(n){return n.toString(16).padStart(2,"0")}function lK(n,e){var T;const t=ff(e,0,100),r=[...n.stops].sort((w,A)=>w.position-A.position),i=r.find(w=>Math.abs(w.position-t)<.001);if(i)return i.color;const a=r.find(w=>w.position>t)??r.at(-1),s=[...r].reverse().find(w=>w.position<t)??r[0];if(!s||!a)return((T=r[0])==null?void 0:T.color)??"rgba(255, 255, 255, 1)";if(s===a)return s.color;const o=s.color,u=a.color,d=o?Sw(o):null,m=u?Sw(u):null;if(!d||!m)return s.color;const p=(t-s.position)/Math.max(1,a.position-s.position),O=I2(d.red,m.red,p),b=I2(d.green,m.green,p),S=I2(d.blue,m.blue,p),k=Di(d.alpha+(m.alpha-d.alpha)*p);return k>=1?`#${L2(O)}${L2(b)}${L2(S)}`.toUpperCase():`rgba(${O}, ${b}, ${S}, ${k})`}function xw(n,e){const t=Di(ff(e,0,100)),r=lK(n,t),i=[...n.stops,{color:r,position:t}].sort((a,s)=>a.position-s.position);return{...n,stops:i}}function Sw(n){const e=n.trim().toLowerCase();if(e==="transparent")return{red:0,green:0,blue:0,alpha:0};const t=e.match(/^#([0-9a-f]{6})$/i);if(t)return{red:Number.parseInt(t[1].slice(0,2),16),green:Number.parseInt(t[1].slice(2,4),16),blue:Number.parseInt(t[1].slice(4,6),16),alpha:1};const r=e.match(/^rgba?\(\s*([0-9.]+)\s*,\s*([0-9.]+)\s*,\s*([0-9.]+)(?:\s*,\s*([0-9.]+))?\s*\)$/i);return r?{red:Number.parseFloat(r[1]),green:Number.parseFloat(r[2]),blue:Number.parseFloat(r[3]),alpha:r[4]!=null?Number.parseFloat(r[4]):1}:null}function Y0(n){const e=n.trim(),t=/^[a-z]+:\/\//i.test(e)?new URL(e).pathname:e;return decodeURIComponent(t).replace(/\\/g,"/").replace(/^\.?\//,"")}function oK(n,e){const t=Y0(n).split("/").filter(Boolean),r=Y0(e).split("/").filter(Boolean);for(t.pop();t.length>0&&r.length>0&&t[0]===r[0];)t.shift(),r.shift();return[...t.map(()=>".."),...r].join("/")||e}function kw(n){return Y0(n)}function cK(n,e,t){const r=Y0(n);if(!r)return null;for(const i of t){const a=Y0(i),s=oK(e,i);if(r===a||r===s||r.endsWith(`/${a}`)||r.endsWith(`/${s}`))return i}return null}function uK({projectId:n,sourceFile:e,value:t,assets:r,disabled:i,onCommit:a,onImportAssets:s}){const o=h.useRef(null),[u,d]=h.useState(!1),m=h.useMemo(()=>r.filter(S=>C0.test(S)),[r]),p=h.useMemo(()=>cK(t,e,m),[m,e,t]),O=p?"":t,b=async S=>{if(!(!(S!=null&&S.length)||!s)){d(!0);try{const T=(await s(S)).find(w=>C0.test(w));T&&a(`url("${kw(T)}")`)}finally{d(!1)}}};return y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsxs("div",{className:"flex min-w-0 flex-wrap items-center justify-between gap-2",children:[y.jsx("span",{className:Xt,children:"Project asset"}),y.jsxs("button",{type:"button",disabled:i||u,onClick:()=>{var S;return(S=o.current)==null?void 0:S.click()},className:`inline-flex h-7 max-w-full items-center gap-1.5 rounded-lg border border-neutral-700 bg-neutral-950 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors ${i||u?"cursor-not-allowed text-neutral-600":"cursor-pointer hover:border-neutral-600 hover:text-white"}`,children:[y.jsx(x6,{size:12,className:"flex-shrink-0"}),y.jsx("span",{className:"truncate",children:u?"Uploading…":"Upload image"})]}),y.jsx("input",{ref:o,type:"file",accept:"image/*","aria-label":"Upload image asset",disabled:i||u,className:"hidden",onChange:async S=>{await b(S.target.files),S.target.value=""}})]}),m.length>0?y.jsxs("div",{className:"space-y-3",children:[p&&y.jsx("div",{className:"overflow-hidden rounded-xl border border-neutral-800 bg-neutral-900/80",children:y.jsx("img",{src:`/api/projects/${n}/preview/${p}`,alt:p.split("/").pop()??p,className:"h-28 w-full object-contain bg-neutral-950/80"})}),y.jsx("div",{className:ta,children:y.jsxs("select",{value:p??"",disabled:i,onChange:S=>{const k=S.target.value;if(!k){a("none");return}a(`url("${kw(k)}")`)},className:"min-w-0 w-full appearance-none bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600",children:[y.jsx("option",{value:"",children:"None"}),m.map(S=>y.jsx("option",{value:S,children:S},S))]})})]}):y.jsx("div",{className:"rounded-xl border border-dashed border-neutral-800 bg-neutral-900/50 px-3 py-3 text-[11px] leading-5 text-neutral-500",children:"No image assets yet. Upload one here and Studio will also add it to the Assets tab."})]}),y.jsx(d4,{label:"External URL",value:O,disabled:i,onCommit:S=>a(S.trim()?`url("${S.trim()}")`:"none")})]})}function fK({value:n,fallbackColor:e,disabled:t,onCommit:r}){const i=h.useRef(null),a=aK(n)??jO(e),s=O=>r(v1(O)),o=O=>s({...a,...O}),u=(O,b)=>{const S=a.stops.map((k,T)=>T===O?{...k,...b}:k);s({...a,stops:S})},d=O=>{var S,k;const b=O!=null?xw(a,O):xw(a,((S=a.stops.at(-1))==null?void 0:S.position)!=null?Math.min(100,(((k=a.stops.at(-1))==null?void 0:k.position)??90)+10):100);s(b)},m=O=>{a.stops.length<=2||s({...a,stops:a.stops.filter((b,S)=>S!==O)})},p={backgroundImage:v1(a)};return y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:`${ta} space-y-3 p-3`,children:[y.jsx("div",{ref:i,className:"relative h-11 overflow-hidden rounded-lg border border-neutral-700",style:p,onClick:O=>{var S;if(t)return;const b=(S=i.current)==null?void 0:S.getBoundingClientRect();!b||b.width<=0||d((O.clientX-b.left)/b.width*100)},children:a.stops.map((O,b)=>y.jsx("div",{className:"absolute top-1/2 h-4 w-4 -translate-y-1/2 rounded-full border-2 border-white/90 shadow-[0_0_0_1px_rgba(0,0,0,0.35)]",style:{left:`calc(${O.position}% - 8px)`,backgroundColor:O.color}},`stop-preview-${b}`))}),y.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[y.jsx(bc,{disabled:t,value:a.kind,onChange:O=>o({kind:O}),options:[{label:"Linear",value:"linear"},{label:"Radial",value:"radial"},{label:"Conic",value:"conic"}]}),y.jsxs("label",{className:"flex items-center gap-2 text-[11px] font-medium text-neutral-400",children:[y.jsx("input",{type:"checkbox",checked:a.repeating,disabled:t,onChange:O=>o({repeating:O.target.checked}),className:"h-4 w-4 rounded border-neutral-700 bg-neutral-950 text-[#3ce6ac] focus:ring-[#3ce6ac]"}),"Repeat"]}),y.jsxs("button",{type:"button",disabled:t,onClick:()=>s({...a,stops:[...a.stops].reverse().map(O=>({...O,position:100-O.position}))}),className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-neutral-700 bg-neutral-950 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-600 hover:text-white disabled:cursor-not-allowed disabled:text-neutral-600",children:[y.jsx(k6,{size:12}),"Reverse"]})]})]}),(a.kind==="linear"||a.kind==="conic")&&y.jsxs("div",{className:"grid gap-1.5",children:[y.jsx("span",{className:Xt,children:a.kind==="linear"?"Angle":"Start angle"}),y.jsx(gi,{value:a.angle,min:0,max:360,step:1,disabled:t,displayValue:`${Math.round(a.angle)}°`,formatDisplayValue:O=>`${Math.round(O)}°`,onCommit:O=>o({angle:O})})]}),a.kind==="radial"&&y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Shape",value:a.shape,disabled:t,onChange:O=>o({shape:O}),options:["ellipse","circle"]}),y.jsx(Nn,{label:"Size",value:a.radialSize,disabled:t,onChange:O=>o({radialSize:O}),options:["closest-side","closest-corner","farthest-side","farthest-corner"]})]}),(a.kind==="radial"||a.kind==="conic")&&y.jsxs("div",{className:Er,children:[y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Center X"}),y.jsx(gi,{value:a.centerX,min:0,max:100,step:1,disabled:t,displayValue:`${Math.round(a.centerX)}%`,formatDisplayValue:O=>`${Math.round(O)}%`,onCommit:O=>o({centerX:O})})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Center Y"}),y.jsx(gi,{value:a.centerY,min:0,max:100,step:1,disabled:t,displayValue:`${Math.round(a.centerY)}%`,formatDisplayValue:O=>`${Math.round(O)}%`,onCommit:O=>o({centerY:O})})]})]}),y.jsxs("div",{className:"space-y-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("span",{className:Xt,children:"Stops"}),y.jsxs("button",{type:"button",disabled:t||a.stops.length>=6,onClick:()=>d(),className:"inline-flex h-7 items-center gap-1.5 rounded-lg border border-neutral-700 bg-neutral-950 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-600 hover:text-white disabled:cursor-not-allowed disabled:text-neutral-600",children:[y.jsx(x6,{size:12}),"Add stop"]})]}),y.jsx("div",{className:"space-y-3",children:a.stops.map((O,b)=>y.jsxs("div",{className:"grid min-w-0 grid-cols-[minmax(0,1fr)_68px_28px] gap-2",children:[y.jsx(b0,{label:`Stop ${b+1}`,value:O.color,disabled:t,onCommit:S=>u(b,{color:S})}),y.jsx(d4,{label:"Pos",value:`${Math.round(O.position)}%`,disabled:t,onCommit:S=>u(b,{position:Number.parseFloat(S.replace("%",""))||0})}),y.jsx("button",{type:"button",disabled:t||a.stops.length<=2,onClick:()=>m(b),className:"mt-[22px] flex h-10 items-center justify-center rounded-lg border border-neutral-700 bg-neutral-950 text-neutral-400 transition-colors hover:border-neutral-600 hover:text-white disabled:cursor-not-allowed disabled:text-neutral-700","aria-label":`Remove stop ${b+1}`,children:y.jsx(j1,{size:12})})]},`stop-editor-${b}`))})]})]})}function dK({projectId:n,element:e,styles:t,assets:r,onSetStyle:i,onImportAssets:a}){const s=!e.capabilities.canEditStyles,o=t.display==="flex"||t.display==="inline-flex",u=_O(t["border-radius"])??0,d=Math.round((_O(t.opacity)??1)*100),m=Ps(t["border-width"]??"")??Ps(t["border-top-width"]??"")??0,p=t.background!=null&&t.background!=="none"&&t.background!==""||t["background-color"]!=null&&t["background-color"]!=="transparent"&&t["background-color"]!=="rgba(0, 0, 0, 0)"&&t["background-color"]!==""||t["background-image"]!=null&&t["background-image"]!=="none"&&t["background-image"]!==""||m>0,O=t["border-style"]||t["border-top-style"]||"none",b=t["border-color"]||t["border-top-color"]||"rgba(255, 255, 255, 0.18)",S=RG(t["box-shadow"]),k=dw(t.filter,"blur"),T=dw(t["backdrop-filter"],"blur"),w=t["clip-path"]||"none",A=_G(w),E=NG(w),C=t["background-image"]??"none",P=b6(e),$=C&&C!=="none"?C.includes("gradient")?"Gradient":"Image":"Solid",[M,R]=h.useState($),N=IG(C);h.useEffect(()=>{R($)},[$,e.id,e.selector,C]);const Z=D=>{if(R(D),D==="Solid"){i("background-image","none");return}D==="Gradient"&&!C.includes("gradient")&&i("background-image",v1(jO(t["background-color"])))};return y.jsxs(y.Fragment,{children:[o&&y.jsx(Yr,{title:"Flex",icon:y.jsx(Hh,{size:15}),defaultCollapsed:!0,children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(bc,{disabled:s,value:t["flex-direction"]||"row",onChange:D=>i("flex-direction",D),options:[{label:"→ Row",value:"row"},{label:"↓ Column",value:"column"}]}),y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Justify",value:t["justify-content"]||"flex-start",disabled:s,onChange:D=>i("justify-content",D),options:["flex-start","center","space-between","space-around","space-evenly","flex-end"]}),y.jsx(Nn,{label:"Align",value:t["align-items"]||"stretch",disabled:s,onChange:D=>i("align-items",D),options:["stretch","flex-start","center","flex-end","baseline"]})]}),y.jsx(d4,{label:"Gap",value:t.gap??"0px",disabled:s,onCommit:D=>i("gap",D.endsWith("px")?D:`${D}px`)})]})}),p&&y.jsx(Yr,{title:"Radius",icon:y.jsx(pL,{size:15}),defaultCollapsed:!0,children:y.jsx(gi,{value:u,min:0,max:Math.max(240,Math.ceil(u)),step:1,disabled:s,displayValue:`${Zt(u)}px`,formatDisplayValue:D=>`${Zt(D)}px`,onCommit:D=>i("border-radius",`${Zt(D)}px`)})}),y.jsx(Yr,{title:"Stroke",icon:y.jsx(cL,{size:15}),defaultCollapsed:!0,children:y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:Er,children:[y.jsx(mi,{label:"Width",value:lc(m),disabled:s,liveCommit:!0,onCommit:async D=>{const I=MG(D,{min:0,max:200,fallback:m});if(I)for(const[U,K]of jG(I,O))await i(U,K)}}),y.jsx(Nn,{label:"Style",value:O,disabled:s,onChange:async D=>{for(const[I,U]of ZG(D,lc(m)))await i(I,U)},options:["none","solid","dashed","dotted","double","hidden","groove","ridge","inset","outset"]})]}),y.jsx(b0,{label:"Stroke color",value:b,disabled:s,onCommit:D=>i("border-color",D)})]})}),y.jsx(Yr,{title:"Effects",icon:y.jsx(S6,{size:15}),defaultCollapsed:!0,children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(Nn,{label:"Shadow",value:S,disabled:s,onChange:D=>{D!=="custom"&&i("box-shadow",QG(D,t["box-shadow"]))},options:["custom","none","soft","lift","glow"]}),y.jsxs("div",{className:Er,children:[y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Layer blur"}),y.jsx(gi,{value:k,min:0,max:Math.max(40,Math.ceil(k)),step:1,disabled:s,displayValue:`${Zt(k)}px`,formatDisplayValue:D=>`${Zt(D)}px`,onCommit:D=>i("filter",hw(t.filter,"blur",D))})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Backdrop"}),y.jsx(gi,{value:T,min:0,max:Math.max(60,Math.ceil(T)),step:1,disabled:s,displayValue:`${Zt(T)}px`,formatDisplayValue:D=>`${Zt(D)}px`,onCommit:D=>i("backdrop-filter",hw(t["backdrop-filter"],"blur",D))})]})]})]})}),y.jsx(Yr,{title:"Clip",icon:y.jsx(Hh,{size:15}),defaultCollapsed:!0,children:y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Overflow",value:t.overflow||"visible",disabled:s,onChange:D=>i("overflow",D),options:["visible","hidden","clip","auto","scroll"]}),y.jsx(Nn,{label:"Mask",value:A,disabled:s,onChange:D=>{D!=="custom"&&i("clip-path",DG(D,u,w))},options:["custom","none","inset","circle"]})]}),y.jsxs("div",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:"Mask inset"}),y.jsx(gi,{value:E,min:0,max:Math.max(120,Math.ceil(E)),step:1,disabled:s,displayValue:`${Zt(E)}px`,formatDisplayValue:D=>`${Zt(D)}px`,onCommit:D=>i("clip-path",VG(D,u))})]})]})}),y.jsx(Yr,{title:"Transparency",icon:y.jsx(B9,{size:15}),defaultCollapsed:!0,children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(gi,{value:d,min:0,max:100,step:1,disabled:s,displayValue:`${d}%`,formatDisplayValue:D=>`${Math.round(D)}%`,onCommit:D=>i("opacity",Zt(D/100))}),y.jsx(Nn,{label:"Mode",value:t["mix-blend-mode"]||"normal",disabled:s,onChange:D=>i("mix-blend-mode",D),options:["normal","multiply","screen","overlay","darken","lighten"]})]})}),y.jsx(Yr,{title:"Fill",icon:y.jsx(oL,{size:15}),accessory:y.jsx("div",{className:"rounded-full border border-neutral-700 bg-neutral-900 px-2.5 py-1 text-[10px] font-medium uppercase tracking-[0.16em] text-neutral-400",children:M}),children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(bc,{disabled:s,value:M,onChange:Z,options:[{label:"Solid",value:"Solid"},{label:"Gradient",value:"Gradient"},{label:"Image",value:"Image"}]}),M==="Solid"?y.jsx(b0,{label:"Fill color",value:t["background-color"]??"transparent",disabled:s,onCommit:D=>i("background-color",D)}):M==="Gradient"?y.jsx(fK,{value:C!=="none"?C:v1(jO(t["background-color"])),fallbackColor:t["background-color"],disabled:s,onCommit:D=>i("background-image",D)}):y.jsx(uK,{projectId:n,sourceFile:e.sourceFile,value:N,assets:r,disabled:s,onCommit:D=>i("background-image",D),onImportAssets:a}),!P&&y.jsx(b0,{label:"Text color",value:t.color??"rgb(0, 0, 0)",disabled:s,onCommit:D=>i("color",D)})]})})]})}function ME(n){const e=n.trim().replace(/\s+/g," ");return e.length<=56?e:`${e.slice(0,55)}…`}function $E(n,e){return n.computedStyles.color||e.color||"rgb(0, 0, 0)"}function Uu(n,e,t,r){return n.computedStyles[t]||e[t]||r}const a0=["100","200","300","400","500","600","700","800","900"],hK={100:"100 · Thin",200:"200 · Extra Light",300:"300 · Light",400:"400 · Regular",500:"500 · Medium",600:"600 · Semi Bold",700:"700 · Bold",800:"800 · Extra Bold",900:"900 · Black"};function mK(n){var i;const e=document.fonts;if(!e)return a0;const t=(i=n.split(",")[0])==null?void 0:i.trim().replace(/['"]/g,"");if(!t)return a0;const r=[];for(const a of a0)e.check(`${a} 16px "${t}"`)&&r.push(a);return r.length>0?r:a0}function pK({label:n,value:e,disabled:t,autoFocus:r,onCommit:i}){const[a,s]=h.useState(e),o=h.useRef(null),u=h.useRef(null),d=h.useRef(!1),m=h.useRef(e);m.current=e,h.useEffect(()=>{d.current||s(e)},[e]),h.useEffect(()=>()=>{u.current&&clearTimeout(u.current)},[]),h.useEffect(()=>{var b;r&&((b=o.current)==null||b.focus())},[r]);const p=b=>{u.current&&clearTimeout(u.current),b!==m.current&&i(b)},O=b=>{u.current&&clearTimeout(u.current),u.current=setTimeout(()=>{b!==m.current&&i(b)},120)};return y.jsxs("label",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:Xt,children:n}),y.jsx("div",{className:ta,children:y.jsx("textarea",{ref:o,value:a,disabled:t,rows:4,onFocus:()=>{d.current=!0},onChange:b=>{s(b.target.value),O(b.target.value)},onBlur:()=>{d.current=!1,p(a)},className:"w-full resize-none bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600"})})]})}function gK({value:n,disabled:e,fontFamily:t,onCommit:r}){const i=t?mK(t):a0,a=n&&!i.includes(n)?[n,...i]:i;return y.jsx("div",{className:ta,children:y.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[y.jsx("span",{className:"flex-shrink-0 text-[11px] font-medium text-neutral-500",children:"Weight"}),y.jsx("select",{value:n,disabled:e,onChange:s=>r(s.target.value),className:"min-w-0 w-full appearance-none bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600",children:a.map(s=>y.jsx("option",{value:s,children:hK[s]??s},s))})]})})}function OK({field:n,inheritedStyles:e,disabled:t,onCommit:r}){return y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Line",value:Uu(n,e,"line-height","normal"),disabled:t,options:["normal","1","1.1","1.2","1.25","1.3","1.4","1.5","1.6","1.75","2"],onChange:i=>r("line-height",fw("line-height",i))}),y.jsx(Nn,{label:"Track",value:Uu(n,e,"letter-spacing","0px"),disabled:t,options:["0px","-0.05em","-0.04em","-0.03em","-0.02em","-0.01em","0em","0.01em","0.02em","0.03em","0.05em","0.1em","0.15em","0.2em"],onChange:i=>r("letter-spacing",fw("letter-spacing",i))})]}),y.jsxs("div",{className:Er,children:[y.jsx(Nn,{label:"Align",value:Uu(n,e,"text-align","start"),disabled:t,onChange:i=>r("text-align",i),options:["start","left","center","right","justify","end"]}),y.jsx(Nn,{label:"Case",value:Uu(n,e,"text-transform","none"),disabled:t,onChange:i=>r("text-transform",i),options:["none","uppercase","lowercase","capitalize"]})]}),y.jsx(Nn,{label:"Style",value:Uu(n,e,"font-style","normal"),disabled:t,onChange:i=>r("font-style",i),options:["normal","italic"]})]})}function vw({field:n,styles:e,fontAssets:t,onImportFonts:r,showRemove:i,onSetText:a,onSetTextFieldStyle:s,onRemoveTextField:o}){return y.jsxs("div",{className:"space-y-4 rounded-xl border border-neutral-800 bg-neutral-900/60 p-3",children:[y.jsxs("div",{className:i?"flex min-w-0 items-center justify-between gap-2":"min-w-0",children:[y.jsxs("div",{className:"min-w-0",children:[y.jsx("div",{className:"truncate text-[11px] font-medium text-neutral-100",children:ME(n.value)||"Text"}),y.jsx("div",{className:"text-[10px] uppercase tracking-[0.12em] text-neutral-500",children:n.tagName})]}),i&&y.jsx("button",{type:"button",onClick:()=>o(n.key),className:"inline-flex h-7 flex-shrink-0 items-center rounded-lg border border-neutral-700 bg-neutral-950 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-600 hover:text-white",children:"Remove"})]}),y.jsx(pK,{label:"Content",value:n.value,disabled:!1,autoFocus:i,onCommit:u=>a(u,n.key)},n.key),y.jsx(b0,{label:"Text color",value:$E(n,e),disabled:!1,onCommit:u=>s(n.key,"color",u)}),y.jsxs("div",{className:Er,children:[y.jsx(mi,{label:"Size",value:n.computedStyles["font-size"]||e["font-size"]||"16px",disabled:!1,liveCommit:!0,onCommit:u=>s(n.key,"font-size",u)}),y.jsx(gK,{value:n.computedStyles["font-weight"]||e["font-weight"]||"400",fontFamily:n.computedStyles["font-family"]||e["font-family"],disabled:!1,onCommit:u=>s(n.key,"font-weight",u)})]}),y.jsx(WG,{value:n.computedStyles["font-family"]||e["font-family"]||"inherit",disabled:!1,importedFonts:t,onImportFonts:r,onCommit:u=>s(n.key,"font-family",u)}),y.jsx(OK,{field:n,inheritedStyles:e,disabled:!1,onCommit:(u,d)=>s(n.key,u,d)})]})}function yK({element:n,styles:e,fontAssets:t,onImportFonts:r,onSetText:i,onSetTextFieldStyle:a,onAddTextField:s,onRemoveTextField:o}){var b;const u=b6(n),[d,m]=h.useState(((b=n.textFields[0])==null?void 0:b.key)??null);if(h.useEffect(()=>{const S=n.textFields;m(k=>{var T;return k&&S.some(w=>w.key===k)?k:((T=S[0])==null?void 0:T.key)??null})},[n.id,n.selector,n.textFields]),!u)return null;const p=n.textFields,O=p.find(S=>S.key===d)??p[0];return O?p.length===1?y.jsx(Yr,{title:"Text",icon:y.jsx(RS,{size:15}),children:y.jsx(vw,{field:O,styles:e,fontAssets:t,onImportFonts:r,showRemove:!1,onSetText:i,onSetTextFieldStyle:a,onRemoveTextField:o})}):y.jsx(Yr,{title:"Text",icon:y.jsx(RS,{size:15}),children:y.jsxs("div",{className:"space-y-4",children:[y.jsxs("div",{className:"grid gap-1.5",children:[y.jsxs("div",{className:"flex min-w-0 flex-wrap items-center justify-between gap-2",children:[y.jsx("span",{className:Xt,children:"Text layers"}),y.jsxs("button",{type:"button",onClick:()=>{Promise.resolve(s(O.key)).then(S=>{S&&m(S)})},className:"inline-flex h-7 max-w-full items-center gap-1.5 rounded-lg border border-neutral-700 bg-neutral-950 px-2.5 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-600 hover:text-white",children:[y.jsx(x6,{size:12,className:"flex-shrink-0"}),y.jsx("span",{className:"truncate",children:"Add text"})]})]}),y.jsx("div",{className:"grid gap-2",children:p.map((S,k)=>{const T=S.key===O.key;return y.jsx("button",{type:"button",onClick:()=>m(S.key),className:`min-w-0 w-full rounded-xl border px-3 py-2 text-left transition-colors ${T?"border-studio-accent/50 bg-studio-accent/10":"border-neutral-800 bg-neutral-900/80 hover:border-neutral-700 hover:bg-neutral-900"}`,children:y.jsxs("div",{className:"flex min-w-0 items-center justify-between gap-2",children:[y.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[y.jsx("span",{className:"h-4 w-4 flex-shrink-0 rounded border border-neutral-700 bg-neutral-950",style:{backgroundColor:$E(S,e)}}),y.jsx("span",{className:"min-w-0 truncate text-[11px] font-medium text-neutral-100",children:ME(S.value)||`Text ${k+1}`})]}),y.jsx("span",{className:"flex-shrink-0 rounded-md border border-neutral-700 bg-neutral-950 px-1.5 py-0.5 text-[10px] uppercase tracking-[0.12em] text-neutral-500",children:S.tagName})]})},S.key)})})]}),y.jsx(vw,{field:O,styles:e,fontAssets:t,onImportFonts:r,showRemove:!0,onSetText:i,onSetTextFieldStyle:a,onRemoveTextField:o})]})}):null}function z2(n){return!Number.isFinite(n)||n<0?"0.00s":`${n.toFixed(2)}s`}function B2(n){const e=n.replace(/s$/i,"").trim(),t=Number.parseFloat(e);return Number.isFinite(t)&&t>=0?t:null}function bK({element:n,onSetAttribute:e}){const t=Number.parseFloat(n.dataAttributes.start??"0")||0,r=Number.parseFloat(n.dataAttributes.duration??"0")||0,i=t+r,a=u=>{const d=B2(u);d!=null&&e("start",d.toFixed(2))},s=u=>{const d=B2(u);d==null||d<=0||e("duration",d.toFixed(2))},o=u=>{const d=B2(u);d==null||d<=t||e("duration",(d-t).toFixed(2))};return y.jsxs(Yr,{title:"Timing",icon:y.jsx(rL,{size:15}),children:[y.jsxs("div",{className:Er,children:[y.jsx(mi,{label:"Start",value:z2(t),onCommit:a}),y.jsx(mi,{label:"End",value:z2(i),onCommit:o})]}),y.jsx("div",{className:"mt-3",children:y.jsx(mi,{label:"Duration",value:z2(r),onCommit:s})})]})}const xK=h.memo(function({projectId:e,projectDir:t,assets:r,element:i,multiSelectCount:a=0,copiedAgentPrompt:s,onClearSelection:o,onSetStyle:u,onSetAttribute:d,onSetHtmlAttribute:m,onSetManualOffset:p,onSetManualSize:O,onSetManualRotation:b,onSetText:S,onSetTextFieldStyle:k,onAddTextField:T,onRemoveTextField:w,onAskAgent:A,onImportAssets:E,fontAssets:C=[],onImportFonts:P}){const $=(i==null?void 0:i.computedStyles)??EG;if(!i)return y.jsx("div",{className:"flex h-full flex-col bg-neutral-900",children:y.jsx("div",{className:"flex flex-1 flex-col items-center justify-center px-6 text-center",children:a>1?y.jsxs(y.Fragment,{children:[y.jsx(Hh,{size:18,className:"mb-3 text-neutral-600"}),y.jsxs("p",{className:"text-sm font-medium text-neutral-200",children:[a," elements selected"]}),y.jsx("p",{className:"mt-2 max-w-[260px] text-xs leading-5 text-neutral-500",children:"Select a single element to edit its properties. Click an element in the preview or use the timeline layer panel."})]}):y.jsxs(y.Fragment,{children:[y.jsx(B9,{size:18,className:"mb-3 text-neutral-600"}),y.jsx("p",{className:"text-sm font-medium text-neutral-200",children:"Select an element in the preview."}),y.jsx("p",{className:"mt-2 max-w-[260px] text-xs leading-5 text-neutral-500",children:"The inspector is tuned for element edits with safer geometry controls, color picking, and cleaner grouped layer controls."})]})})});const M=!i.capabilities.canApplyManualOffset,R=!i.capabilities.canApplyManualSize,N=i.id?`#${i.id}`:i.selector,Z=i.capabilities.canEditStyles,D=w8(i.element),I=zh(i.element),U=I.width>0?I.width:Ps($.width??"")??i.boundingBox.width,K=I.height>0?I.height:Ps($.height??"")??i.boundingBox.height,q=(X,B)=>{const _=Ps(B);if(_==null)return;const j=w8(i.element);p(i,{x:X==="x"?_:j.x,y:X==="y"?_:j.y})},L=(X,B)=>{const _=Ps(B);if(_==null||_<=0)return;const j=zh(i.element),H=j.width>0?j.width:Ps($.width??"")??i.boundingBox.width,F=j.height>0?j.height:Ps($.height??"")??i.boundingBox.height;O(i,{width:X==="width"?_:H,height:X==="height"?_:F})},W=u9(i.element),ee=X=>{const B=Number.parseFloat(X);Number.isFinite(B)&&b(i,{angle:B})};return y.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-neutral-900 text-neutral-100",children:[y.jsxs("div",{className:"border-b border-neutral-800 px-4 py-5",children:[y.jsxs("div",{className:"flex items-start justify-between gap-4",children:[y.jsxs("div",{className:"min-w-0",children:[y.jsx("div",{className:Xt,children:"Document"}),y.jsx("div",{className:"mt-3 truncate text-[12px] font-semibold text-neutral-100",children:i.label}),y.jsx("div",{className:"mt-1 truncate text-[11px] text-neutral-500",children:N})]}),y.jsx("button",{type:"button","aria-label":"Clear selection",onClick:o,className:"flex h-9 w-9 items-center justify-center rounded-full border border-neutral-700 bg-neutral-950 text-neutral-500 shadow-[0_1px_2px_rgba(0,0,0,0.2)] transition-colors hover:border-neutral-600 hover:text-neutral-200",children:y.jsx(j1,{size:13})})]}),y.jsx("div",{className:"mt-4 flex min-w-0 flex-wrap items-center gap-2",children:y.jsxs("button",{type:"button",onClick:A,className:"inline-flex h-8 items-center justify-center gap-2 rounded-xl border border-neutral-700 bg-neutral-950 px-3.5 text-[11px] font-medium text-neutral-100 transition-colors hover:border-studio-accent/40 hover:text-studio-accent",children:[y.jsx(aL,{size:15}),y.jsx("span",{children:s?"Prompt copied":"Ask agent"})]})})]}),y.jsxs("div",{className:"flex-1 overflow-y-auto",children:[y.jsx(yK,{element:i,styles:$,fontAssets:C,onImportFonts:P,onSetText:S,onSetTextFieldStyle:k,onAddTextField:T,onRemoveTextField:w}),i.dataAttributes.start!=null&&y.jsx(bK,{element:i,onSetAttribute:d}),zG(i)&&y.jsx(BG,{projectDir:t,element:i,styles:$,onSetStyle:u,onSetAttribute:d,onSetHtmlAttribute:m}),y.jsxs(Yr,{title:"Layout",icon:y.jsx(sL,{size:15}),children:[y.jsxs("div",{className:Er,children:[y.jsx(mi,{label:"X",value:lc(D.x),disabled:M,scrub:!0,onCommit:X=>q("x",X)}),y.jsx(mi,{label:"Y",value:lc(D.y),disabled:M,scrub:!0,onCommit:X=>q("y",X)}),y.jsx(mi,{label:"W",value:lc(U),disabled:R,scrub:!0,onCommit:X=>L("width",X)}),y.jsx(mi,{label:"H",value:lc(K),disabled:R,scrub:!0,onCommit:X=>L("height",X)}),y.jsx(mi,{label:"R",value:`${W.angle}°`,onCommit:X=>ee(X.replace("°",""))})]}),y.jsx("div",{className:"mt-3",children:y.jsx(mi,{label:"Layer",value:String(parseInt($["z-index"]||"auto",10)||0),scrub:!0,onCommit:X=>u("z-index",X)})})]}),Z&&y.jsx(dK,{projectId:e,element:i,styles:$,assets:r,onSetStyle:u,onImportAssets:E})]})]})}),RE="min-w-0 rounded-xl border border-neutral-800 bg-neutral-900/95 px-3 py-2 text-neutral-100 shadow-[inset_0_1px_0_rgba(255,255,255,0.03)] transition-colors focus-within:border-neutral-600",g4="text-[11px] font-medium uppercase tracking-[0.18em] text-neutral-500",ww="grid grid-cols-[repeat(auto-fit,minmax(118px,1fr))] gap-3";function H2(n){const e=Math.round(n*100)/100;return Number.isInteger(e)?`${e}`:e.toFixed(2).replace(/0+$/,"").replace(/\.$/,"")}function F2(n,e,t,r){return n==null||!Number.isFinite(n)?r:Math.min(t,Math.max(e,n))}function X2(n){const e=Number.parseFloat(n.trim());return Number.isFinite(e)?e:null}function SK({value:n,disabled:e,onCommit:t}){const[r,i]=h.useState(n),a=h.useRef(!1);h.useEffect(()=>{a.current||i(n)},[n]);const s=()=>{a.current=!1;const o=r.trim();o!==n&&t(o)};return y.jsx("input",{type:"text",value:r,disabled:e,onFocus:()=>{a.current=!0},onChange:o=>i(o.target.value),onBlur:s,onKeyDown:o=>{o.key==="Enter"&&o.target.blur()},className:"w-full min-w-0 bg-transparent text-[11px] font-medium text-neutral-100 outline-none disabled:cursor-not-allowed disabled:text-neutral-600"})}function dh({label:n,value:e,disabled:t,onCommit:r}){return y.jsxs("label",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:g4,children:n}),y.jsx("div",{className:RE,children:y.jsx(SK,{value:e,disabled:t,onCommit:r})})]})}function kK({value:n,options:e,onChange:t}){return y.jsx("div",{className:"grid grid-cols-3 gap-1 rounded-2xl border border-neutral-800 bg-neutral-950 p-1",children:e.map(r=>y.jsx("button",{type:"button",onClick:()=>t(r.value),className:`h-9 rounded-xl text-[11px] font-semibold transition-colors ${r.value===n?"bg-neutral-800 text-white shadow-sm":"text-neutral-500 hover:bg-neutral-900 hover:text-neutral-200"}`,children:r.label},r.value))})}function Tw({label:n,value:e,options:t,onChange:r}){return y.jsxs("label",{className:"grid min-w-0 gap-1.5",children:[y.jsx("span",{className:g4,children:n}),y.jsx("div",{className:RE,children:y.jsx("select",{value:e,onChange:i=>r(i.target.value),className:"w-full min-w-0 appearance-none bg-transparent text-[11px] font-medium text-neutral-100 outline-none",children:t.map(i=>y.jsx("option",{value:i,children:i},i))})})]})}function Aw({title:n,children:e,accessory:t}){return y.jsxs("section",{className:"border-b border-neutral-800 px-4 py-5",children:[y.jsxs("div",{className:"mb-4 flex items-center justify-between gap-3",children:[y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx(S6,{size:15,className:"text-neutral-500"}),y.jsx("h3",{className:"text-[11px] font-semibold uppercase tracking-[0.22em] text-neutral-300",children:n})]}),t]}),e]})}function hh(n){const e=Math.round(n*100)/100;return Number.isInteger(e)?`${e}`:e.toFixed(2).replace(/0+$/,"").replace(/\.$/,"")}function vK(n,e){const t=1-n,r=t*t,i=n*n;return{x:3*r*n*e.x1+3*t*i*e.x2+i*n,y:3*r*n*e.y1+3*t*i*e.y2+i*n}}function wK(n,e){const t=[];for(let r=0;r<=48;r+=1){const i=e(vK(r/48,n));t.push(`${r===0?"M":"L"}${i.x.toFixed(2)},${i.y.toFixed(2)}`)}return t.join(" ")}function TK({points:n,onCommit:e}){const t=h.useRef(null),[r,i]=h.useState(n),a=h.useRef(null);h.useEffect(()=>{i(n)},[n]);const s=324,o=214,u={left:46,top:24,width:242,height:146},d=-.4,m=1.4,p=P=>({x:u.left+P.x*u.width,y:u.top+(m-P.y)/(m-d)*u.height}),O=P=>{var N;const $=(N=t.current)==null?void 0:N.getBoundingClientRect();if(!$)return null;const M=(P.clientX-$.left)/$.width*s,R=(P.clientY-$.top)/$.height*o;return l6({x1:a.current==="p1"?(M-u.left)/u.width:r.x1,y1:a.current==="p1"?m-(R-u.top)/u.height*(m-d):r.y1,x2:a.current==="p2"?(M-u.left)/u.width:r.x2,y2:a.current==="p2"?m-(R-u.top)/u.height*(m-d):r.y2})},b=p({x:0,y:0}),S=p({x:1,y:1}),k=p({x:r.x1,y:r.y1}),T=p({x:r.x2,y:r.y2}),w=wK(r,p),A=P=>{if(!a.current)return;P.preventDefault();const $=O(P);$&&i($)},E=()=>{a.current&&(a.current=null,e(r))},C=(P,$)=>{$.preventDefault(),$.stopPropagation(),a.current=P,$.currentTarget.setPointerCapture($.pointerId)};return y.jsxs("div",{className:"overflow-hidden rounded-2xl border border-neutral-800 bg-black/40",children:[y.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-neutral-800 px-3 py-2",children:[y.jsxs("div",{children:[y.jsx("div",{className:g4,children:"CustomEase"}),y.jsx("div",{className:"mt-1 font-mono text-[10px] text-neutral-500",children:a9(r)})]}),y.jsxs("button",{type:"button",onClick:()=>{const P=s9("power3.out");i(P),e(P)},className:"inline-flex h-8 items-center justify-center gap-2 rounded-xl border border-neutral-800 bg-neutral-950 px-3 text-[10px] font-semibold uppercase tracking-[0.14em] text-neutral-400 transition-colors hover:border-neutral-700 hover:text-neutral-100",children:[y.jsx(k6,{size:13}),"Reset"]})]}),y.jsxs("svg",{ref:t,viewBox:`0 0 ${s} ${o}`,className:"block w-full select-none touch-none",onPointerMove:A,onPointerUp:E,onPointerCancel:E,children:[y.jsx("rect",{x:"0",y:"0",width:s,height:o,fill:"transparent"}),[0,.5,1].map(P=>{const $=p({x:0,y:P});return y.jsxs("g",{children:[y.jsx("line",{x1:u.left,x2:u.left+u.width,y1:$.y,y2:$.y,stroke:"rgba(255,255,255,0.12)",strokeDasharray:"5 8"}),y.jsx("text",{x:u.left-12,y:$.y+4,textAnchor:"end",className:"fill-neutral-500 text-[10px] font-semibold",children:P})]},P)}),y.jsx("line",{x1:u.left,x2:u.left+u.width,y1:u.top+u.height,y2:u.top+u.height,stroke:"rgba(255,255,255,0.18)"}),y.jsx("line",{x1:u.left,x2:u.left,y1:u.top,y2:u.top+u.height,stroke:"rgba(255,255,255,0.18)"}),y.jsx("line",{x1:b.x,y1:b.y,x2:k.x,y2:k.y,stroke:"rgba(255,221,87,0.34)"}),y.jsx("line",{x1:S.x,y1:S.y,x2:T.x,y2:T.y,stroke:"rgba(255,221,87,0.34)"}),y.jsx("path",{d:w,fill:"none",stroke:"#ffdd57",strokeWidth:"4",strokeLinecap:"round"}),y.jsx("circle",{cx:b.x,cy:b.y,r:"5",fill:"#ffdd57"}),y.jsx("circle",{cx:S.x,cy:S.y,r:"5",fill:"#ffdd57"}),y.jsx("circle",{cx:k.x,cy:k.y,r:"9",fill:"#141414",stroke:"#ffdd57",strokeWidth:"4",className:"cursor-grab active:cursor-grabbing",onPointerDown:P=>C("p1",P)}),y.jsx("circle",{cx:T.x,cy:T.y,r:"9",fill:"#141414",stroke:"#ffdd57",strokeWidth:"4",className:"cursor-grab active:cursor-grabbing",onPointerDown:P=>C("p2",P)}),y.jsx("text",{x:k.x+12,y:k.y-10,className:"fill-neutral-400 text-[10px] font-semibold",children:"P1"}),y.jsx("text",{x:T.x+12,y:T.y-10,className:"fill-neutral-400 text-[10px] font-semibold",children:"P2"})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-2 border-t border-neutral-800 p-3",children:[y.jsxs("div",{className:"rounded-xl border border-neutral-800 bg-neutral-950 px-3 py-2 font-mono text-[10px] text-neutral-400",children:["P1 ",hh(r.x1),", ",hh(r.y1)]}),y.jsxs("div",{className:"rounded-xl border border-neutral-800 bg-neutral-950 px-3 py-2 font-mono text-[10px] text-neutral-400",children:["P2 ",hh(r.x2),", ",hh(r.y2)]})]})]})}const AK=[{label:"Fade Up",value:"fade-up"},{label:"Slide",value:"slide"},{label:"Pop",value:"pop"}],PK=["up","down","left","right"];function CK(n){return n?Math.max(Math.abs(n.from.x??0),Math.abs(n.from.y??0),1):32}function EK(n){return n?n.from.scale!=null||n.to.scale!=null?"pop":n.from.x!=null||n.to.x!=null?"slide":"fade-up":"fade-up"}function MK(n){if(!n)return"up";const e=n.from.x??0,t=n.from.y??0;return Math.abs(e)>Math.abs(t)?e<0?"right":"left":t<0?"down":"up"}function Pw(n){return`studio-${(n.id||n.selector||n.label||"layer").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")||"layer"}-ease`}const $K=h.memo(function({element:e,motion:t,onClearSelection:r,onSetMotion:i,onClearMotion:a}){var C;const s=EK(t),o=MK(t),u=(t==null?void 0:t.start)??0,d=(t==null?void 0:t.duration)??.6,m=CK(t),p=(t==null?void 0:t.ease)??"power3.out",O=((C=t==null?void 0:t.customEase)==null?void 0:C.data)??"",b=O.trim().length>0,S=h.useMemo(()=>eS(O)??s9(Ed.includes(p)?p:"power3.out"),[p,O]);if(!e)return y.jsxs("div",{className:"flex h-full flex-col items-center justify-center bg-neutral-900 px-6 text-center",children:[y.jsx(S6,{size:18,className:"mb-3 text-neutral-600"}),y.jsx("p",{className:"text-sm font-medium text-neutral-200",children:"Select an element for motion."}),y.jsx("p",{className:"mt-2 max-w-[260px] text-xs leading-5 text-neutral-500",children:"Timeline layers and inspector selections can receive Studio-authored GSAP motion."})]});const k=e.id?`#${e.id}`:e.selector,T=b?"CustomEase":Ed.includes(p)?p:"power3.out",w=b?["CustomEase",...Ed]:Ed,A=P=>{var N;const $=P.customEaseData??O,M=$.trim()?{id:((N=t==null?void 0:t.customEase)==null?void 0:N.id)??Pw(e),data:$.trim()}:void 0,R=M?M.id:(P.ease??p).trim()||"none";i(e,jD(P.preset??s,{start:F2(P.start??u,0,3600,0),duration:F2(P.duration??d,.01,3600,.6),distance:F2(P.distance??m,1,2e3,32),direction:P.direction??o,ease:R,customEase:M}))},E=P=>{A({ease:Pw(e),customEaseData:a9(P)})};return y.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-neutral-900 text-neutral-100",children:[y.jsx("div",{className:"border-b border-neutral-800 px-4 py-5",children:y.jsxs("div",{className:"flex items-start justify-between gap-4",children:[y.jsxs("div",{className:"min-w-0",children:[y.jsx("div",{className:"text-[11px] font-medium uppercase tracking-[0.18em] text-neutral-500",children:"Motion Target"}),y.jsx("div",{className:"mt-3 truncate text-[12px] font-semibold text-neutral-100",children:e.label}),y.jsx("div",{className:"mt-1 truncate text-[11px] text-neutral-500",children:k})]}),y.jsx("button",{type:"button","aria-label":"Clear selection",onClick:r,className:"flex h-9 w-9 items-center justify-center rounded-full border border-neutral-700 bg-neutral-950 text-neutral-500 shadow-[0_1px_2px_rgba(0,0,0,0.2)] transition-colors hover:border-neutral-600 hover:text-neutral-200",children:y.jsx(j1,{size:13})})]})}),y.jsxs("div",{className:"flex-1 overflow-y-auto",children:[y.jsx(Aw,{title:"GSAP Motion",accessory:y.jsx("div",{className:"rounded-full border border-studio-accent/40 bg-studio-accent/10 px-2.5 py-1 text-[10px] font-semibold uppercase tracking-[0.16em] text-studio-accent",children:"GSAP"}),children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(kK,{value:s,onChange:P=>A({preset:P}),options:AK}),y.jsxs("div",{className:ww,children:[y.jsx(Tw,{label:"Direction",value:o,onChange:P=>A({direction:P}),options:PK}),y.jsx(Tw,{label:"Ease",value:T,onChange:P=>{P!=="CustomEase"&&A({ease:P,customEaseData:""})},options:w})]}),y.jsxs("div",{className:ww,children:[y.jsx(dh,{label:"Start",value:H2(u),onCommit:P=>A({start:X2(P)??0})}),y.jsx(dh,{label:"Duration",value:H2(d),onCommit:P=>A({duration:X2(P)??.6})}),y.jsx(dh,{label:"Distance",value:H2(m),onCommit:P=>A({distance:X2(P)??32})})]})]})}),y.jsx(Aw,{title:"Ease Curve",accessory:y.jsx("div",{className:"rounded-full border border-yellow-400/30 bg-yellow-400/10 px-2.5 py-1 text-[10px] font-semibold uppercase tracking-[0.16em] text-yellow-300",children:"CustomEase"}),children:y.jsxs("div",{className:"space-y-4",children:[y.jsx(TK,{points:S,onCommit:E}),y.jsx(dh,{label:"CustomEase path",value:O,onCommit:P=>{const $=eS(P);$&&E($)}}),y.jsx("div",{className:"flex justify-end",children:y.jsx("button",{type:"button",onClick:()=>a(e),disabled:!t,className:"inline-flex h-8 items-center rounded-xl border border-neutral-700 bg-neutral-950 px-3 text-[11px] font-medium text-neutral-300 transition-colors hover:border-neutral-600 hover:text-white disabled:cursor-not-allowed disabled:border-neutral-800 disabled:text-neutral-600",children:"Clear motion"})})]})})]})]})}),RK={video:"Vi",audio:"Au",img:"Im",svg:"Sv",canvas:"Cn",div:"Di",section:"Se",span:"Sp",p:"P",h1:"H1",h2:"H2",h3:"H3",h4:"H4",h5:"H5",h6:"H6",a:"A",button:"Bt",ul:"Ul",ol:"Ol",li:"Li",style:"St",template:"Te"};function QK(n){return RK[n]??n.slice(0,2).toUpperCase()}function _K(n){return n.hasAttribute("data-composition-src")||n.hasAttribute("data-composition-file")}const NK=h.memo(function(){const{previewIframeRef:e,activeCompPath:t,refreshKey:r,compositionLoading:i,timelineElements:a,currentTime:s}=tf(),{domEditSelection:o,applyDomSelection:u,updateDomEditHoverSelection:d}=Z1(),[m,p]=h.useState([]),[O,b]=h.useState({}),S=h.useRef(0),k=!t||t==="index.html",T=h.useCallback(()=>{const R=e.current;if(!R)return;let N=null;try{N=R.contentDocument}catch{return}if(!N)return;const Z=N.querySelector("[data-composition-id]")??N.documentElement??null;if(!Z)return;const D=YV(Z,{activeCompositionPath:t});p(D)},[e,t,k]);h.useEffect(()=>{T()},[T,r]),h.useEffect(()=>{const R=e.current;if(!R)return;const N=()=>{S.current+=1,T()};return R.addEventListener("load",N),()=>R.removeEventListener("load",N)},[e,T]),h.useEffect(()=>{if(!i){const R=setTimeout(T,100);return()=>clearTimeout(R)}},[i,T]);const w=h.useCallback(R=>E9(R.element,{activeCompositionPath:t,isMasterView:k,preferClipAncestor:!1}),[t,k]),A=h.useCallback(R=>{const N=w(R);if(!N)return;let Z=C8(N,a);if(!Z){const D=N.sourceFile??"index.html";let I=R.element.parentElement;for(;I&&!Z;){const U=I.id;if(U){const K=a.find(q=>q.domId===U&&(q.sourceFile??"index.html")===D);K&&(Z=K.key??K.id)}I=I.parentElement}}if(Z){const D=a.find(I=>(I.key??I.id)===Z);if(D){const I=xV(s,D);I!=null&&Ae.getState().requestSeek(I)}}},[s,w,a]),E=h.useCallback(R=>{const N=w(R);N&&(u(N),A(R))},[w,u,A]),C=h.useCallback(R=>{if(!R){d(null);return}const N=w(R);d(N)},[w,d]),P=h.useCallback((R,N)=>{N.stopPropagation(),b(Z=>({...Z,[R]:!Z[R]}))},[]),$=o?M9(o):null,M=jK(m,O);return m.length===0?y.jsxs("div",{className:"flex h-full flex-col items-center justify-center bg-neutral-900 px-6 text-center",children:[y.jsx(Hh,{size:18,className:"mb-3 text-neutral-600"}),y.jsx("p",{className:"text-sm font-medium text-neutral-200",children:"No layers"}),y.jsx("p",{className:"mt-1 text-xs text-neutral-500",children:"Load a composition to see its element tree"})]}):y.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-neutral-900",onPointerLeave:()=>C(null),children:[y.jsxs("div",{className:"border-b border-white/10 px-3 py-2 text-[11px] text-neutral-500",children:[m.length," layer",m.length===1?"":"s"]}),y.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto py-1",children:M.map(R=>{const N=R.key===$,Z=O[R.key]??!1,D=R.childCount>0,I=_K(R.element);return y.jsxs("div",{role:"button",tabIndex:0,onClick:()=>E(R),onPointerEnter:()=>C(R),onKeyDown:U=>{(U.key==="Enter"||U.key===" ")&&(U.preventDefault(),E(R))},className:`group flex w-full cursor-pointer items-center gap-1.5 px-2 py-1 text-left transition-colors ${N?"bg-studio-accent/14 text-studio-accent":"text-neutral-300 hover:bg-white/[0.04] hover:text-neutral-100"}`,style:{paddingLeft:8+R.depth*16},children:[D?y.jsx("button",{type:"button",onClick:U=>P(R.key,U),className:"flex h-4 w-4 flex-shrink-0 items-center justify-center rounded text-neutral-500 hover:text-neutral-300",children:y.jsx("svg",{width:"8",height:"8",viewBox:"0 0 8 8",fill:"currentColor",className:`transition-transform ${Z?"":"rotate-90"}`,children:y.jsx("path",{d:"M2 1l4 3-4 3z"})})}):y.jsx("span",{className:"w-4 flex-shrink-0"}),y.jsx("span",{className:`flex h-5 w-5 flex-shrink-0 items-center justify-center rounded text-[8px] font-bold uppercase ${N?"bg-studio-accent/18 text-studio-accent":I?"bg-blue-900/40 text-blue-400":"bg-neutral-800 text-neutral-500"}`,children:QK(R.tagName)}),y.jsx("span",{className:"min-w-0 flex-1 truncate text-[11px]",children:R.label}),D&&y.jsx("span",{className:"text-[9px] tabular-nums text-neutral-600",children:R.childCount})]},R.key)})})]})});function jK(n,e){if(Object.keys(e).length===0)return n;const t=[];let r=-1;for(const i of n)r>=0&&i.depth>r||(r=-1,t.push(i),e[i.key]&&i.childCount>0&&(r=i.depth));return t}const Rs="w-full bg-neutral-900 border border-neutral-800 rounded px-1.5 py-0.5 text-2xs text-neutral-200 font-mono outline-none focus:border-neutral-600";function ZO({label:n,children:e}){return y.jsxs("div",{className:"mb-3",children:[y.jsx("div",{className:"flex items-center gap-1.5 mt-2 mb-1.5",children:y.jsx("span",{className:"text-2xs font-medium text-neutral-500 uppercase tracking-wider",children:n})}),y.jsx("div",{className:"space-y-1",children:e})]})}function Qa({label:n,children:e}){return y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("span",{className:"text-2xs text-neutral-600 w-14 text-right flex-shrink-0",children:n}),y.jsx("div",{className:"flex-1 min-w-0",children:e})]})}const ZK=["none","fade","slide-up","slide-down","slide-left","slide-right","pop","slam","bounce","typewriter","blur-in","flip","drop"],DK=["none","color-change","scale-pop","glow-pulse","underline-sweep","background-fill","bounce"],VK=["none","fade","slide-up","slide-down","slide-left","slide-right","scatter","drop","collapse","blur-out","shrink"],IK=["power1.out","power2.out","power3.out","power4.out","power1.in","power2.in","power3.in","power1.inOut","power2.inOut","back.out(1.7)","elastic.out(1,0.3)","bounce.out"];function U2({label:n,presets:e,animation:t,showIntensity:r,onChange:i}){const a=(t==null?void 0:t.preset)??"none",s=(t==null?void 0:t.duration)??.2,o=(t==null?void 0:t.ease)??"power2.out",u=(t==null?void 0:t.stagger)??0,d=(t==null?void 0:t.intensity)??1;return y.jsxs(ZO,{label:n,children:[y.jsx(Qa,{label:"Preset",children:y.jsx("select",{value:a,onChange:m=>i({preset:m.target.value}),className:Rs,children:e.map(m=>y.jsx("option",{value:m,children:m},m))})}),y.jsx(Qa,{label:"Duration",children:y.jsx("input",{type:"number",value:s,step:.05,min:0,max:2,onChange:m=>i({duration:Number(m.target.value)}),className:Rs})}),y.jsx(Qa,{label:"Ease",children:y.jsx("select",{value:o,onChange:m=>i({ease:m.target.value}),className:Rs,children:IK.map(m=>y.jsx("option",{value:m,children:m},m))})}),y.jsx(Qa,{label:"Stagger",children:y.jsx("input",{type:"number",value:u,step:.02,min:0,max:.5,onChange:m=>i({stagger:Number(m.target.value)}),className:Rs})}),r&&y.jsx(Qa,{label:"Intensity",children:y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("input",{type:"range",min:0,max:1,step:.01,value:d,onChange:m=>i({intensity:Number(m.target.value)}),className:"flex-1 accent-studio-accent"}),y.jsx("span",{className:"text-2xs text-neutral-400 font-mono w-8 text-right flex-shrink-0",children:d.toFixed(2)})]})})]})}const LK=h.memo(function(){const e=ht(b=>b.model),t=ht(b=>b.selectedGroupId),r=ht(b=>b.selectedSegmentIds),i=ht(b=>b.updateGroupAnimation),a=ht(b=>b.applyAnimationToAll);let s=t;if(!s&&e&&r.size>0){const b=[...r][0];if(b){for(const[S,k]of e.groups)if(k.segmentIds.includes(b)){s=S;break}}}const o=s?e==null?void 0:e.groups.get(s):void 0,u=o==null?void 0:o.animation,d=h.useCallback(b=>{s&&i(s,"entrance",b)},[s,i]),m=h.useCallback(b=>{s&&i(s,"highlight",b)},[s,i]),p=h.useCallback(b=>{s&&i(s,"exit",b)},[s,i]),O=h.useCallback(()=>{u&&a(u)},[u,a]);return!o||!s||!u?y.jsx("div",{className:"flex items-center justify-center h-full px-4 text-center",children:y.jsx("p",{className:"text-xs text-neutral-500",children:"Select a caption group to edit animations"})}):y.jsxs("div",{className:"flex flex-col h-full min-h-0",children:[y.jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-2",children:[y.jsx(U2,{label:"Entrance",presets:ZK,animation:u.entrance,onChange:d}),y.jsx(U2,{label:"Highlight",presets:DK,animation:u.highlight,showIntensity:!0,onChange:m}),y.jsx(U2,{label:"Exit",presets:VK,animation:u.exit,onChange:p})]}),y.jsx("div",{className:"flex-shrink-0 px-3 py-2 border-t border-neutral-800",children:y.jsx("button",{type:"button",onClick:O,className:"w-full py-1.5 rounded border border-neutral-700 text-2xs text-neutral-300 hover:border-studio-accent/50 hover:text-studio-accent transition-colors",children:"Apply to all groups"})})]})}),zK=h.memo(function({iframeRef:e}){var $;const t=ht(M=>M.model),r=ht(M=>M.selectedSegmentIds),i=ht(M=>M.selectedGroupId),a=ht(M=>M.updateSelectedStyle),s=ht(M=>M.updateGroupStyle),[o,u]=h.useState("style"),d=r.size>0?[...r][0]:void 0,m=t==null?void 0:t.segments.get(d??"");let p=null;if(t&&d)for(const M of t.groupOrder){const R=t.groups.get(M);if(R&&R.segmentIds.includes(d)){p=M;break}}const O=p?($=t==null?void 0:t.groups.get(p))==null?void 0:$.style:void 0,b=(m==null?void 0:m.style)??{},S={...O,...b},k=h.useCallback(M=>{var U,K,q;const R=e.current;if(!R||!t)return;let N=null;try{N=R.contentDocument}catch{return}if(!N)return;const Z=N.querySelectorAll(".caption-group"),D=[];for(const L of r)for(let W=0;W<t.groupOrder.length;W++){const ee=t.groups.get(t.groupOrder[W]);if(!ee)continue;const X=ee.segmentIds.indexOf(L);if(X<0)continue;const B=Z[W];if(!B)continue;const _=B.children;let j=0;for(const H of _){const F=H;if(F.dataset.captionWrapper==="true"){const Y=F.querySelector(":scope > span");if(Y&&j===X){D.push(Y);break}}else if(F.tagName==="SPAN"&&j===X){D.push(F);break}j++}break}if(M.x!==void 0||M.y!==void 0||M.scaleX!==void 0||M.scaleY!==void 0||M.rotation!==void 0)try{const L=(K=(U=e.current)==null?void 0:U.contentWindow)==null?void 0:K.gsap;if(L)for(const W of D){let ee=W.parentElement;(!ee||ee.dataset.captionWrapper!=="true")&&(ee=N.createElement("span"),ee.style.display="inline-block",ee.dataset.captionWrapper="true",(q=W.parentNode)==null||q.insertBefore(ee,W),ee.appendChild(W));const X=L.getProperty(ee,"x")||0,B=L.getProperty(ee,"y")||0,_=L.getProperty(ee,"scale")||1,j=L.getProperty(ee,"rotation")||0;L.set(ee,{x:M.x??X,y:M.y??B,scale:M.scaleX??_,rotation:M.rotation??j})}}catch{}},[e,t,r]),T=h.useCallback(M=>{i?s(i,M):a(M),k(M)},[i,s,a,k]);if(r.size===0)return y.jsx("div",{className:"flex items-center justify-center h-full px-4 text-center",children:y.jsx("p",{className:"text-xs text-neutral-500",children:"Select caption words to edit their style"})});const w=S.x??0,A=S.y??0,E=S.rotation??0,C=S.scaleX??1,P=r.size===1?"1 word":`${r.size} words`;return y.jsxs("div",{className:"flex flex-col h-full min-h-0",children:[y.jsxs("div",{className:"px-3 py-2 border-b border-neutral-800 flex-shrink-0",children:[y.jsx("div",{className:"flex items-center justify-between mb-1.5",children:y.jsx("span",{className:"text-2xs text-neutral-500",children:P})}),y.jsxs("div",{className:"flex gap-1",children:[y.jsx("button",{type:"button",onClick:()=>u("style"),className:["flex-1 py-0.5 rounded text-2xs font-medium transition-colors",o==="style"?"bg-studio-accent/20 text-studio-accent border border-studio-accent/50":"text-neutral-500 border border-neutral-800 hover:text-neutral-300 hover:border-neutral-600"].join(" "),children:"Style"}),y.jsx("button",{type:"button",onClick:()=>u("animation"),className:["flex-1 py-0.5 rounded text-2xs font-medium transition-colors",o==="animation"?"bg-studio-accent/20 text-studio-accent border border-studio-accent/50":"text-neutral-500 border border-neutral-800 hover:text-neutral-300 hover:border-neutral-600"].join(" "),children:"Animation"})]})]}),o==="animation"&&y.jsx(LK,{}),o==="style"&&y.jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-2",children:[y.jsxs(ZO,{label:"Position",children:[y.jsx(Qa,{label:"X",children:y.jsx("input",{type:"number",value:w,onChange:M=>T({x:Number(M.target.value)}),className:Rs})}),y.jsx(Qa,{label:"Y",children:y.jsx("input",{type:"number",value:A,onChange:M=>T({y:Number(M.target.value)}),className:Rs})})]}),y.jsxs(ZO,{label:"Transform",children:[y.jsx(Qa,{label:"Scale",children:y.jsx("input",{type:"number",value:C,step:.1,onChange:M=>T({scaleX:Number(M.target.value),scaleY:Number(M.target.value)}),className:Rs})}),y.jsx(Qa,{label:"Rotation",children:y.jsx("input",{type:"number",value:E,onChange:M=>T({rotation:Number(M.target.value)}),className:Rs})})]})]})]})}),BK=h.memo(function({blockTitle:e,params:t,compositionPath:r,onClose:i}){const[a,s]=h.useState(()=>{const u={};for(const d of t)u[d.key]=d.default;return u}),o=h.useCallback((u,d)=>{s(m=>({...m,[u]:d})),console.log(`[BlockParams] ${r} ${u}: ${d}`)},[r]);return y.jsxs("div",{className:"flex flex-col h-full",children:[y.jsxs("div",{className:"flex items-center justify-between px-3 py-2 border-b border-neutral-800",children:[y.jsx("div",{className:"text-[11px] font-semibold text-neutral-200 truncate",children:e}),y.jsx("button",{type:"button",onClick:i,className:"text-neutral-500 hover:text-neutral-300 transition-colors",children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[y.jsx("path",{d:"M18 6 6 18"}),y.jsx("path",{d:"m6 6 12 12"})]})})]}),y.jsxs("div",{className:"flex-1 overflow-y-auto p-3 space-y-3",children:[y.jsx("div",{className:"text-[9px] font-medium text-neutral-500 uppercase tracking-wider",children:"Parameters"}),t.map(u=>y.jsx(HK,{param:u,value:a[u.key]??u.default,onChange:d=>o(u.key,d)},u.key))]})]})});function HK({param:n,value:e,onChange:t}){return y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"text-[10px] font-medium text-neutral-400",children:n.label}),n.type==="color"&&y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("input",{type:"color",value:e,onChange:r=>t(r.target.value),className:"w-7 h-7 rounded border border-neutral-700 bg-transparent cursor-pointer"}),y.jsx("input",{type:"text",value:e,onChange:r=>t(r.target.value),className:"flex-1 bg-neutral-900 border border-neutral-800 rounded px-2 py-1 text-[10px] text-neutral-200 font-mono focus:outline-none focus:border-neutral-700"})]}),n.type==="number"&&y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("input",{type:"range",min:n.min??0,max:n.max??100,step:n.step??1,value:e,onChange:r=>t(r.target.value),className:"flex-1"}),y.jsx("span",{className:"text-[10px] text-neutral-400 w-8 text-right tabular-nums",children:e})]}),n.type==="text"&&y.jsx("input",{type:"text",value:e,onChange:r=>t(r.target.value),className:"w-full bg-neutral-900 border border-neutral-800 rounded px-2 py-1 text-[10px] text-neutral-200 focus:outline-none focus:border-neutral-700"}),n.type==="select"&&n.options&&y.jsx("select",{value:e,onChange:r=>t(r.target.value),className:"w-full bg-neutral-900 border border-neutral-800 rounded px-2 py-1 text-[10px] text-neutral-200 focus:outline-none focus:border-neutral-700",children:n.options.map(r=>y.jsx("option",{value:r.value,children:r.label},r.value))})]})}function FK(n){if(n<1e3)return`${n}ms`;const e=Math.round(n/1e3);return e<60?`${e}s`:`${Math.floor(e/60)}m ${e%60}s`}function XK(n){const e=Date.now()-n;return e<6e4?"just now":e<36e5?`${Math.floor(e/6e4)}m ago`:`${Math.floor(e/36e5)}h ago`}const UK=h.memo(function({job:e,projectId:t,onDelete:r}){const[i,a]=h.useState(!1),s=`/api/projects/${t}/renders/file/${e.filename}`,o=h.useCallback(()=>{window.open(s,"_blank")},[s]),u=h.useCallback(p=>{p.stopPropagation();const O=document.createElement("a");O.href=s,O.download=e.filename,O.click()},[s,e.filename]),d=s,m=e.status==="complete";return y.jsx("div",{onPointerEnter:()=>a(!0),onPointerLeave:()=>a(!1),onClick:m?o:void 0,className:["px-3 py-2.5 border-b border-neutral-800/30 last:border-0 transition-colors duration-150",m?"cursor-pointer hover:bg-neutral-800/30":""].filter(Boolean).join(" "),children:y.jsxs("div",{className:"flex items-center gap-2.5",children:[y.jsxs("div",{className:"w-20 h-[45px] rounded overflow-hidden bg-neutral-900 flex-shrink-0 relative",children:[m&&y.jsxs(y.Fragment,{children:[i&&y.jsx("video",{src:d,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"absolute inset-0 w-full h-full object-contain"}),y.jsx("div",{className:"absolute inset-0 transition-opacity duration-150",style:{opacity:i?0:1},children:y.jsx(oE,{src:d})})]}),e.status==="rendering"&&y.jsx("div",{className:"w-full h-full flex items-center justify-center",children:y.jsx("div",{className:"w-2 h-2 rounded-full bg-studio-accent animate-pulse"})}),e.status==="failed"&&y.jsx("div",{className:"w-full h-full flex items-center justify-center",children:y.jsx("div",{className:"w-2 h-2 rounded-full bg-red-400"})}),e.status==="cancelled"&&y.jsx("div",{className:"w-full h-full flex items-center justify-center",children:y.jsx("div",{className:"w-2 h-2 rounded-full bg-neutral-600"})})]}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-1.5",children:[y.jsx("span",{className:"text-[11px] font-medium text-neutral-300 truncate",children:e.filename}),e.durationMs&&y.jsx("span",{className:"text-[9px] text-neutral-600 flex-shrink-0",children:FK(e.durationMs)})]}),e.status==="rendering"&&y.jsxs("div",{className:"mt-1",children:[y.jsxs("div",{className:"flex items-center justify-between mb-0.5",children:[y.jsx("span",{className:"text-[9px] text-neutral-500",children:e.stage||"Rendering"}),y.jsxs("span",{className:"text-[9px] font-mono text-studio-accent",children:[e.progress,"%"]})]}),y.jsx("div",{className:"w-full h-1 bg-neutral-800 rounded-full overflow-hidden",children:y.jsx("div",{className:"h-full bg-studio-accent rounded-full transition-all duration-300",style:{width:`${e.progress}%`}})})]}),e.status==="failed"&&e.error&&y.jsx("span",{className:"text-[9px] text-red-400 mt-0.5 block",children:e.error}),e.status!=="rendering"&&y.jsx("span",{className:"text-[9px] text-neutral-600",children:XK(e.createdAt)})]}),i&&y.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[m&&y.jsx("button",{onClick:u,className:"p-1 rounded text-neutral-500 hover:text-green-400 transition-colors",title:"Download",children:y.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[y.jsx("path",{d:"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4"}),y.jsx("polyline",{points:"7 10 12 15 17 10"}),y.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"3"})]})}),y.jsx("button",{onClick:p=>{p.stopPropagation(),r()},className:"p-1 rounded text-neutral-500 hover:text-red-400 transition-colors",title:"Remove",children:y.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:y.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]})]})})}),qK=["auto","1080p","4k"],Cw={auto:"Auto","1080p":"1080p","4k":"4K"},QE={landscape:{width:1920,height:1080},portrait:{width:1080,height:1920},"landscape-4k":{width:3840,height:2160},"portrait-4k":{width:2160,height:3840},square:{width:1080,height:1080},"square-4k":{width:2160,height:2160}};function YK(n){return n==null?"landscape":n.width===n.height?"square":n.height>n.width?"portrait":"landscape"}function _E(n,e){if(n==="auto")return"auto";const t=YK(e);return n==="1080p"?t:t==="landscape"?"landscape-4k":t==="portrait"?"portrait-4k":"square-4k"}function WK(n,e){if(n==="auto")return e??null;const t=_E(n,e);return t==="auto"?null:QE[t]}function GK(n,e){if(n==="auto"||e==null)return!0;const t=_E(n,e);if(t==="auto")return!0;const r=QE[t];return r.width*e.height!==r.height*e.width||r.width<e.width?!1:Number.isInteger(r.width/e.width)}function KK(n,e){const t=WK(n,e);return t?`${Cw[n]} · ${t.width}×${t.height}`:Cw[n]}const q2={mp4:{label:"MP4",desc:"Best for general use. Smallest file, universal playback."},mov:{label:"MOV (ProRes 4444)",desc:"Transparent video. Works in CapCut, Final Cut Pro, Premiere, DaVinci Resolve, After Effects. Large files."},webm:{label:"WebM (VP9)",desc:"Transparent video for web. Smaller than MOV but limited editor support."}};function JK({format:n}){const[e,t]=h.useState(!1),r=h.useRef(void 0),i=()=>{clearTimeout(r.current),t(!0)},a=()=>{r.current=setTimeout(()=>t(!1),120)};h.useEffect(()=>()=>clearTimeout(r.current),[]);const s=q2[n];return y.jsxs("div",{className:"relative",onPointerEnter:i,onPointerLeave:a,children:[y.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-neutral-600 hover:text-neutral-400 transition-colors cursor-help",children:[y.jsx("circle",{cx:"12",cy:"12",r:"10"}),y.jsx("path",{d:"M9.09 9a3 3 0 015.83 1c0 2-3 3-3 3"}),y.jsx("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]}),e&&y.jsxs("div",{className:"absolute top-full right-0 mt-1.5 w-52 p-2 rounded bg-neutral-900 border border-neutral-700 shadow-lg z-50",children:[y.jsx("p",{className:"text-[10px] font-semibold text-neutral-200 mb-0.5",children:s.label}),y.jsx("p",{className:"text-[9px] text-neutral-400 leading-tight",children:s.desc}),y.jsx("div",{className:"mt-1.5 pt-1.5 border-t border-neutral-800",children:["mp4","mov","webm"].filter(o=>o!==n).map(o=>y.jsxs("p",{className:"text-[9px] text-neutral-500 leading-relaxed",children:[y.jsx("span",{className:"text-neutral-400 font-medium",children:q2[o].label})," — ",q2[o].desc]},o))})]})]})}const Ew=[{value:"draft",label:"Draft",title:"Fast render, smaller file"},{value:"standard",label:"Standard",title:"Good quality, balanced file size"},{value:"high",label:"High Quality",title:"Best quality, larger file"}];function eJ({onStartRender:n,isRendering:e,compositionDimensions:t}){var b;const r=OE(),[i,a]=h.useState(r.format),[s,o]=h.useState(r.quality),[u,d]=h.useState("auto"),[m,p]=h.useState(r.fps),O=i!=="mov";return y.jsxs("div",{className:"flex items-center gap-1 flex-wrap justify-end",children:[y.jsx(JK,{format:i}),y.jsx("select",{value:u,onChange:S=>d(S.target.value),disabled:e,className:"h-5 px-1 text-[10px] rounded-l bg-neutral-800 border border-neutral-700 text-neutral-300 outline-none disabled:opacity-50",children:qK.map(S=>y.jsx("option",{value:S,disabled:!GK(S,t),children:KK(S,t)},S))}),O&&y.jsx("select",{value:s,onChange:S=>{const k=S.target.value;o(k),M2(i,k,m)},disabled:e,title:(b=Ew.find(S=>S.value===s))==null?void 0:b.title,className:"h-5 px-1 text-[10px] bg-neutral-800 border border-neutral-700 text-neutral-300 outline-none disabled:opacity-50",children:Ew.map(S=>y.jsx("option",{value:S.value,title:S.title,children:S.label},S.value))}),y.jsxs("select",{value:m,onChange:S=>{const k=Number(S.target.value);p(k),M2(i,s,k)},disabled:e,title:"Frames per second",className:"h-5 px-1 text-[10px] bg-neutral-800 border border-neutral-700 text-neutral-300 outline-none disabled:opacity-50",children:[y.jsx("option",{value:24,children:"24fps"}),y.jsx("option",{value:30,children:"30fps"}),y.jsx("option",{value:60,children:"60fps"})]}),y.jsxs("select",{value:i,onChange:S=>{const k=S.target.value;a(k),M2(k,s,m)},disabled:e,className:"h-5 px-1 text-[10px] bg-neutral-800 border border-neutral-700 text-neutral-300 outline-none disabled:opacity-50",children:[y.jsx("option",{value:"mp4",children:"MP4"}),y.jsx("option",{value:"mov",children:"MOV"}),y.jsx("option",{value:"webm",children:"WebM"})]}),y.jsx("button",{onClick:()=>{n(i,s,u,m)},disabled:e,className:"flex items-center gap-1 px-2 py-0.5 text-[10px] font-semibold rounded-r bg-studio-accent text-[#09090B] hover:brightness-110 transition-colors disabled:opacity-50",children:e?"Rendering...":"Export"})]})}const tJ=h.memo(function({jobs:e,projectId:t,onDelete:r,onClearCompleted:i,onStartRender:a,isRendering:s,compositionDimensions:o}){const u=h.useRef(null);h.useEffect(()=>{u.current&&u.current.scrollTo({top:u.current.scrollHeight,behavior:"smooth"})},[e.length]);const d=e.filter(m=>m.status!=="rendering").length;return y.jsxs("div",{className:"flex flex-col h-full",children:[y.jsx("div",{className:"flex items-center justify-end flex-wrap gap-y-1.5 px-3 py-2 border-b border-neutral-800/50 flex-shrink-0",children:y.jsxs("div",{className:"flex items-center gap-1.5",children:[d>0&&y.jsx("button",{onClick:i,className:"text-[10px] text-neutral-600 hover:text-neutral-400 transition-colors",children:"Clear"}),y.jsx(eJ,{onStartRender:a,isRendering:s,compositionDimensions:o})]})}),y.jsx("div",{ref:u,className:"flex-1 overflow-y-auto",children:e.length===0?y.jsxs("div",{className:"flex flex-col items-center justify-center h-full px-4 gap-2",children:[y.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",className:"text-neutral-700",children:[y.jsx("rect",{x:"2",y:"2",width:"20",height:"20",rx:"2.18",ry:"2.18",strokeLinecap:"round",strokeLinejoin:"round"}),y.jsx("path",{d:"M7 2v20M17 2v20M2 12h20M2 7h5M2 17h5M17 17h5M17 7h5",strokeLinecap:"round",strokeLinejoin:"round"})]}),y.jsx("p",{className:"text-[10px] text-neutral-600 text-center",children:"No renders yet"})]}):e.map(m=>y.jsx(UK,{job:m,projectId:t,onDelete:()=>r(m.id)},m.id))})]})});function nJ({selectedStudioMotion:n,designPanelActive:e,motionPanelActive:t,activeBlockParams:r,onCloseBlockParams:i}){const{rightWidth:a,rightPanelTab:s,setRightPanelTab:o,handlePanelResizeStart:u,handlePanelResizeMove:d,handlePanelResizeEnd:m}=v6(),{captionEditMode:p,previewIframeRef:O,projectId:b,activeCompPath:S,compositionDimensions:k,waitForPendingDomEditSaves:T,renderQueue:w}=tf(),{domEditSelection:A,domEditGroupSelections:E,copiedAgentPrompt:C,clearDomSelection:P,handleDomStyleCommit:$,handleDomAttributeCommit:M,handleDomHtmlAttributeCommit:R,handleDomPathOffsetCommit:N,handleDomBoxSizeCommit:Z,handleDomRotationCommit:D,handleDomTextCommit:I,handleDomTextFieldStyleCommit:U,handleDomAddTextField:K,handleDomRemoveTextField:q,handleAskAgent:L,handleDomMotionCommit:W,handleDomMotionClear:ee}=Z1(),{assets:X,fontAssets:B,projectDir:_,handleImportFiles:j,handleImportFonts:H}=pE(),F=w.jobs;return y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"group w-2 flex-shrink-0 cursor-col-resize flex items-center justify-center",style:{touchAction:"none"},onPointerDown:Y=>u("right",Y),onPointerMove:d,onPointerUp:m,children:y.jsx("div",{className:"h-[52px] w-px bg-white/12 transition-colors group-hover:bg-white/18 group-active:bg-white/24"})}),y.jsx("div",{className:"flex flex-col border-l border-neutral-800 bg-neutral-900 flex-shrink-0",style:{width:a},children:p?y.jsx(zK,{iframeRef:O}):y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"flex items-center gap-1 border-b border-neutral-800 px-3 py-2",children:[yn&&y.jsxs(y.Fragment,{children:[y.jsx("button",{type:"button",onClick:()=>o("design"),className:`h-8 rounded-xl px-3 text-[11px] font-medium transition-colors ${s==="design"?"bg-neutral-800 text-white":"text-neutral-500 hover:bg-neutral-800/70 hover:text-neutral-200"}`,children:"Design"}),y.jsx("button",{type:"button",onClick:()=>o("layers"),className:`h-8 rounded-xl px-3 text-[11px] font-medium transition-colors ${s==="layers"?"bg-neutral-800 text-white":"text-neutral-500 hover:bg-neutral-800/70 hover:text-neutral-200"}`,children:"Layers"}),O6&&y.jsx("button",{type:"button",onClick:()=>o("motion"),className:`h-8 rounded-xl px-3 text-[11px] font-medium transition-colors ${s==="motion"?"bg-neutral-800 text-white":"text-neutral-500 hover:bg-neutral-800/70 hover:text-neutral-200"}`,children:"Motion"})]}),y.jsx("button",{type:"button",onClick:()=>o("renders"),className:`h-8 rounded-xl px-3 text-[11px] font-medium transition-colors ${s==="renders"?"bg-neutral-800 text-white":"text-neutral-500 hover:bg-neutral-800/70 hover:text-neutral-200"}`,children:F.length>0?`Renders (${F.length})`:"Renders"})]}),y.jsx("div",{className:"min-h-0 flex-1",children:s==="block-params"&&r?y.jsx(BK,{blockName:r.blockName,blockTitle:r.blockTitle,params:r.params,compositionPath:r.compositionPath,onClose:i??(()=>{})}):s==="layers"?y.jsx(NK,{}):e?y.jsx(xK,{projectId:b,projectDir:_,assets:X,element:E.length>1?null:A,multiSelectCount:E.length,copiedAgentPrompt:C,onClearSelection:P,onSetStyle:$,onSetAttribute:M,onSetHtmlAttribute:R,onSetManualOffset:N,onSetManualSize:Z,onSetManualRotation:D,onSetText:I,onSetTextFieldStyle:U,onAddTextField:K,onRemoveTextField:q,onAskAgent:L,onImportAssets:j,fontAssets:B,onImportFonts:H}):t?y.jsx($K,{element:E.length>1?null:A,motion:n,onClearSelection:P,onSetMotion:W,onClearMotion:ee}):y.jsx(tJ,{jobs:F,projectId:b,onDelete:w.deleteRender,onClearCompleted:w.clearCompleted,onStartRender:async(Y,ae,ie,Oe)=>{await T();const de=S&&S!=="index.html"?S:void 0;await w.startRender({fps:Oe,quality:ae,format:Y,resolution:ie,composition:de})},compositionDimensions:k,isRendering:w.isRendering})})]})})]})}function rJ({toggleTimelineVisibility:n}){const e=Ae(s=>s.zoomMode),t=Ae(s=>s.manualZoomPercent),r=Ae(s=>s.setZoomMode),i=Ae(s=>s.setManualZoomPercent),a=w1(e,t);return y.jsx("div",{className:"border-b border-neutral-800/40 bg-neutral-950/96",children:y.jsxs("div",{className:"flex items-center justify-between px-3 py-2",children:[y.jsx("div",{className:"text-[10px] font-medium uppercase tracking-[0.16em] text-neutral-500",children:"Timeline"}),y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx("button",{type:"button",onClick:()=>r("fit"),className:`h-7 px-2.5 rounded-md border text-[11px] font-medium transition-colors ${e==="fit"?"border-studio-accent/30 bg-studio-accent/10 text-studio-accent":"border-neutral-800 text-neutral-400 hover:border-neutral-700 hover:text-neutral-200"}`,title:"Fit timeline to width",children:"Fit"}),y.jsx("button",{type:"button",onClick:()=>{r("manual"),i(B3("out",e,t))},className:"h-7 w-7 rounded-md border border-neutral-800 text-neutral-400 transition-colors hover:border-neutral-700 hover:text-neutral-200",title:"Zoom out",children:"-"}),y.jsx("div",{className:"min-w-[58px] text-center text-[10px] font-medium tabular-nums text-neutral-500",children:`${a}%`}),y.jsx("button",{type:"button",onClick:()=>{r("manual"),i(B3("in",e,t))},className:"h-7 w-7 rounded-md border border-neutral-800 text-neutral-400 transition-colors hover:border-neutral-700 hover:text-neutral-200",title:"Zoom in",children:"+"}),y.jsx("button",{type:"button",onClick:n,className:"ml-1 flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 transition-colors hover:bg-neutral-900 hover:text-neutral-200",title:Q9(!0),"aria-label":"Hide timeline editor",children:y.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[y.jsx("path",{d:"M5 7h14"}),y.jsx("path",{d:"m8 11 4 4 4-4"})]})})]})]})})}function iJ({waiting:n}){return y.jsx("div",{className:"h-full w-full bg-neutral-950 flex items-center justify-center",children:n?y.jsxs("div",{className:"flex flex-col items-center gap-3 text-center px-6",children:[y.jsx("div",{className:"w-4 h-4 rounded-full border-2 border-neutral-700 border-t-neutral-500 animate-spin"}),y.jsxs("p",{className:"text-xs text-neutral-600",children:["Waiting for preview server… run"," ",y.jsx("code",{className:"text-neutral-500 font-mono",children:"npm run dev"})]})]}):y.jsx("div",{className:"w-4 h-4 rounded-full bg-studio-accent animate-pulse"})})}function aJ(){const[n,e]=h.useState(null),[t,r]=h.useState(!0),[i,a]=h.useState(!1);return zt(()=>{const s=VI(window.location.hash);let o=!1,u=null;function d(){a(!0),u=window.setTimeout(m,2e3)}function m(){fetch("/api/projects").then(p=>p.json()).then(p=>{if(!o)if(s)e(s),a(!1);else{const O=(p.projects??[])[0];O?(e(O.id),a(!1),window.location.hash=Z9(O.id)):d()}}).catch(()=>{o||d()}).finally(()=>{o||r(!1)})}return m(),()=>{o=!0,u!==null&&clearTimeout(u)}}),{projectId:n,resolving:t,waitingForServer:i}}function sJ(){const{projectId:n,resolving:e,waitingForServer:t}=aJ(),r=h.useRef(WI()),[i,a]=h.useState(null),[s,o]=h.useState(()=>r.current.activeCompPath==null),[u,d]=h.useState(new Map),[m,p]=h.useState(null),[O,b]=h.useState(!0),[S,k]=h.useState(0),[,T]=h.useState(0),[w,A]=h.useState(null),E=h.useRef(null),C=h.useRef(i);C.current=i;const P=h.useRef(null),$=nR(n),M=ht(je=>je.isEditMode),R=ht(je=>je.selectedSegmentIds.size>0),N=GZ(n),Z=Ae(je=>je.currentTime),D=Ae(je=>je.elements),I=Ae(je=>je.setSelectedElementId),U=Ae(je=>je.duration),K=Ae(je=>je.isPlaying),q=!i||i==="index.html",L=i?`/api/projects/${n}/preview/comp/${i}`:null,W=h.useMemo(()=>{const je=D.length>0?Math.max(...D.map(Pt=>Pt.start+Pt.duration)):0;return Math.max(U,je)},[U,D]),ee=h.useCallback(()=>{T(je=>je+1),window.setTimeout(()=>T(je=>je+1),80),window.setTimeout(()=>T(je=>je+1),300)},[]),[X,B]=h.useState(()=>r.current.timelineVisible??v0().timelineVisible??!0),_=h.useCallback(()=>{B(je=>(w0({timelineVisible:!je}),!je))},[]),{appToast:j,showToast:H}=HI(),F=dD({rightCollapsed:r.current.rightCollapsed,rightPanelTab:r.current.rightPanelTab}),Y=fD({projectId:n}),ae=h.useRef(0),ie=h.useRef(new Set),Oe=h.useCallback(()=>{k(je=>je+1)},[]),de=PD({projectId:n,showToast:H,recordEdit:Y.recordEdit,domEditSaveTimestampRef:ae,setRefreshKey:k});h.useEffect(()=>{if(s||!de.fileTreeLoaded)return;const je=XI(r.current.activeCompPath,de.fileTree);a(Pt=>Pt===je?Pt:je),o(!0)},[s,de.fileTree,de.fileTreeLoaded]);const me=pV({projectId:n,showToast:H,readOptionalProjectFile:de.readOptionalProjectFile,writeProjectFile:de.writeProjectFile,recordEdit:Y.recordEdit,previewIframeRef:E,activeCompPathRef:C,domEditSaveTimestampRef:ae,reloadPreview:()=>k(je=>je+1),pendingTimelineEditPathRef:ie}),Te=vV({projectId:n,activeCompPath:i,timelineElements:D,showToast:H,writeProjectFile:de.writeProjectFile,recordEdit:Y.recordEdit,domEditSaveTimestampRef:ae,reloadPreview:Oe,previewIframeRef:E,pendingTimelineEditPathRef:ie,uploadProjectFiles:de.uploadProjectFiles}),Ce=h.useCallback(je=>{n&&(async()=>{const Pt=await fS({projectId:n,blockName:je,activeCompPath:i,timelineElements:D,readProjectFile:de.readProjectFile,writeProjectFile:de.writeProjectFile,recordEdit:Y.recordEdit,refreshFileTree:de.refreshFileTree,reloadPreview:Oe,showToast:H}),$e=(Pt==null?void 0:Pt.block.type)==="hyperframes:block"?Pt.block.params:void 0;$e!=null&&$e.length&&(A({blockName:Pt.block.name,blockTitle:Pt.block.title,params:$e,compositionPath:Pt.compositionPath}),F.setRightCollapsed(!1),F.setRightPanelTab("block-params"))})()},[n,i,D,de.readProjectFile,de.writeProjectFile,de.refreshFileTree,Y.recordEdit,Oe,H,F]),Ne=h.useCallback((je,Pt)=>{n&&fS({projectId:n,blockName:je,activeCompPath:i,placement:Pt,timelineElements:D,readProjectFile:de.readProjectFile,writeProjectFile:de.writeProjectFile,recordEdit:Y.recordEdit,refreshFileTree:de.refreshFileTree,reloadPreview:Oe,showToast:H})},[n,i,D,de.readProjectFile,de.writeProjectFile,de.refreshFileTree,Y.recordEdit,Oe,H]),Xe=h.useRef(()=>{}),V=h.useRef(null),fe=h.useRef(async()=>{}),te=async je=>fe.current(je),{handleCopy:le,handlePaste:ce,handleCut:ge}=wI({projectId:n,activeCompPath:i,domEditSelectionRef:V,showToast:H,writeProjectFile:de.writeProjectFile,recordEdit:Y.recordEdit,domEditSaveTimestampRef:ae,reloadPreview:Oe,handleTimelineElementDelete:Te.handleTimelineElementDelete,handleDomEditElementDelete:te,previewIframeRef:E}),ye=yI({toggleTimelineVisibility:_,handleTimelineElementDelete:Te.handleTimelineElementDelete,handleDomEditElementDelete:te,domEditSelectionRef:V,editHistory:Y,readOptionalProjectFile:de.readOptionalProjectFile,readProjectFile:de.readProjectFile,writeProjectFile:de.writeProjectFile,domEditSaveTimestampRef:ae,showToast:H,syncHistoryPreviewAfterApply:me.syncHistoryPreviewAfterApply,waitForPendingDomEditSaves:me.waitForPendingDomEditSaves,leftSidebarRef:P,handleCopy:le,handlePaste:ce,handleCut:ge}),be=gI({projectId:n,activeCompPath:i,isMasterView:q,compIdToSrc:u,captionEditMode:M,compositionLoading:O,previewIframeRef:E,timelineElements:D,currentTime:Z,setSelectedTimelineElementId:I,setRightCollapsed:F.setRightCollapsed,setRightPanelTab:F.setRightPanelTab,showToast:H,refreshPreviewDocumentVersion:ee,queueDomEditSave:me.queueDomEditSave,readProjectFile:de.readProjectFile,writeProjectFile:de.writeProjectFile,domEditSaveTimestampRef:ae,editHistory:{recordEdit:Y.recordEdit},fileTree:de.fileTree,importedFontAssetsRef:de.importedFontAssetsRef,projectDir:de.projectDir,projectIdRef:de.projectIdRef,previewIframe:m,refreshKey:S,rightPanelTab:F.rightPanelTab,applyStudioManualEditsToPreviewRef:me.applyStudioManualEditsToPreviewRef,syncPreviewHistoryHotkey:ye.syncPreviewHistoryHotkey,reloadPreview:Oe,setRefreshKey:k,openSourceForSelection:de.openSourceForSelection,selectSidebarTab:je=>{var Pt;return(Pt=P.current)==null?void 0:Pt.selectTab(je)}});V.current=be.domEditSelection,Xe.current=be.clearDomSelection,fe.current=be.handleDomEditElementDelete,MI({projectId:n,activeCompPath:i,compIdToSrc:u,captionEditMode:M,captionHasSelection:R,previewIframeRef:E,captionSync:N,setRightCollapsed:F.setRightCollapsed});const Me=NI({projectIdRef:de.projectIdRef,compIdToSrc:u,activePreviewUrl:L,effectiveTimelineDuration:W}),Pe=BI(),{lintModal:Ve,linting:Ye,handleLint:_e,closeLintModal:Fe}=zI(n),_t=LI({projectId:n,activeCompPath:i,showToast:H,waitForPendingDomEditSaves:me.waitForPendingDomEditSaves}),{consoleErrors:qt,setConsoleErrors:In,resetErrors:hr}=jI(m),[mr,Yt]=h.useState(!1),Sn=h.useRef(0),{syncPreviewTimelineHotkey:Mt,syncPreviewHistoryHotkey:si}=ye,Hs=h.useCallback(je=>{E.current=je,p(je),Mt(je),si(je),hr(),ee()},[ee,hr,si,Mt]),Un=h.useCallback(je=>{a(je==="index.html"||je.startsWith("compositions/")?je:null),de.setEditingFile({path:je,content:null}),fetch(`/api/projects/${n}/files/${je}`).then(Pt=>Pt.json()).then(Pt=>de.setEditingFile({path:je,content:Pt.content})).catch(()=>{})},[n,de]),li=yn&&be.domEditSelection?l9(be.domEditSelection.element):null,jr=yn&&F.rightPanelTab==="layers",qn=yn&&F.rightPanelTab==="design",hn=yn&&O6&&F.rightPanelTab==="motion",pr=jr||qn||hn,ra=pr&&!F.rightCollapsed&&!K,Lc=yn&&!F.rightCollapsed&&pr;KI({projectId:n,activeCompPath:i,currentTime:Z,duration:W,isPlaying:K,compositionLoading:O,refreshKey:S,previewIframeRef:E,rightPanelTab:F.rightPanelTab,rightCollapsed:F.rightCollapsed,timelineVisible:X,activeCompPathHydrated:s,domEditSelection:be.domEditSelection,buildDomSelectionFromTarget:be.buildDomSelectionFromTarget,applyDomSelection:be.applyDomSelection,initialState:r.current});const Ul={projectId:n,activeCompPath:i,setActiveCompPath:a,showToast:H,previewIframeRef:E,captionEditMode:M,compositionLoading:O,refreshKey:S,setRefreshKey:k,currentTime:Z,timelineElements:D,isPlaying:K,editHistory:{canUndo:Y.canUndo,canRedo:Y.canRedo,undoLabel:Y.undoLabel,redoLabel:Y.redoLabel},handleUndo:ye.handleUndo,handleRedo:ye.handleRedo,renderQueue:{jobs:$.jobs,isRendering:$.isRendering,deleteRender:$.deleteRender,clearCompleted:$.clearCompleted,startRender:$.startRender},compositionDimensions:Pe,waitForPendingDomEditSaves:me.waitForPendingDomEditSaves,handlePreviewIframeRef:Hs,refreshPreviewDocumentVersion:ee,timelineVisible:X,toggleTimelineVisibility:_};if(e||t||!n)return y.jsx(iJ,{waiting:t});const Ai=y.jsx(rJ,{toggleTimelineVisibility:_});return y.jsx(gL,{value:Ul,children:y.jsx(OL,{value:F,children:y.jsx(wW,{value:de,children:y.jsx(yL,{value:be,children:y.jsxs("div",{className:"flex flex-col h-full w-full bg-neutral-950 relative",onDragOver:je=>{je.dataTransfer.types.includes("Files")&&je.preventDefault()},onDragEnter:je=>{je.dataTransfer.types.includes("Files")&&(je.preventDefault(),Sn.current++,Yt(!0))},onDragLeave:()=>{Sn.current--,Sn.current===0&&Yt(!1)},onDrop:je=>{Sn.current=0,Yt(!1),!je.defaultPrevented&&(je.preventDefault(),je.dataTransfer.files.length&&de.handleImportFiles(je.dataTransfer.files))},children:[y.jsx(xL,{captureFrameHref:_t.captureFrameHref,captureFrameFilename:_t.captureFrameFilename,handleCaptureFrameClick:_t.handleCaptureFrameClick,refreshCaptureFrameTime:_t.refreshCaptureFrameTime,inspectorButtonActive:Lc,inspectorPanelActive:pr}),y.jsxs("div",{className:"flex flex-1 min-h-0",children:[y.jsx(TW,{leftSidebarRef:P,onSelectComposition:Un,onAddBlock:Ce,onLint:_e,linting:Ye}),y.jsx(wG,{timelineToolbar:Ai,renderClipContent:Me,handleTimelineElementDelete:Te.handleTimelineElementDelete,handleTimelineAssetDrop:Te.handleTimelineAssetDrop,handleTimelineBlockDrop:Ne,handleTimelineFileDrop:Te.handleTimelineFileDrop,handleTimelineElementMove:Te.handleTimelineElementMove,handleTimelineElementResize:Te.handleTimelineElementResize,handleBlockedTimelineEdit:Te.handleBlockedTimelineEdit,setCompIdToSrc:d,setCompositionLoading:b,shouldShowSelectedDomBounds:ra}),!F.rightCollapsed&&y.jsx(nJ,{selectedStudioMotion:li,designPanelActive:qn,motionPanelActive:hn,activeBlockParams:w,onCloseBlockParams:()=>{A(null),F.setRightPanelTab("design")}})]}),Ve!==null&&y.jsx(F5,{findings:Ve,projectId:n,onClose:Fe}),qt!==null&&qt.length>0&&y.jsx(F5,{findings:qt,projectId:n,onClose:()=>In(null)}),be.agentModalOpen&&be.domEditSelection&&y.jsx(eL,{selectionLabel:be.domEditSelection.label,anchorPoint:be.agentModalAnchorPoint,onSubmit:be.handleAgentModalSubmit,onClose:()=>{be.setAgentModalOpen(!1),be.setAgentPromptSelectionContext(void 0),be.setAgentModalAnchorPoint(null)}}),mr&&y.jsx(tL,{}),j&&y.jsx("div",{className:`absolute bottom-6 left-1/2 -translate-x-1/2 z-[91] px-4 py-2 rounded-lg border text-sm shadow-lg animate-in fade-in slide-in-from-bottom-2 ${j.tone==="error"?"bg-red-900/90 border-red-700/50 text-red-200":"bg-neutral-900/95 border-neutral-700/60 text-neutral-100"}`,children:j.message})]})})})})})}tR.createRoot(document.getElementById("root")).render(y.jsx(h.StrictMode,{children:y.jsx(sJ,{})}));