@elevenlabs/convai-widget-embed 0.12.3 → 0.12.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -263,7 +263,7 @@ a=extmap-allow-mixed`)!==-1){let n=t.sdp.split(`
|
|
|
263
263
|
`).filter(e=>e.trim()!==`a=extmap-allow-mixed`).join(`
|
|
264
264
|
`);e.RTCSessionDescription&&t instanceof e.RTCSessionDescription?arguments[0]=new e.RTCSessionDescription({type:t.type,sdp:n}):t.sdp=n}return n.apply(this,arguments)}}function Ia(e,t){if(!(e.RTCPeerConnection&&e.RTCPeerConnection.prototype))return;let n=e.RTCPeerConnection.prototype.addIceCandidate;!n||n.length===0||(e.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?(t.browser===`chrome`&&t.version<78||t.browser===`firefox`&&t.version<68||t.browser===`safari`)&&arguments[0]&&arguments[0].candidate===``?Promise.resolve():n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function La(e,t){if(!(e.RTCPeerConnection&&e.RTCPeerConnection.prototype))return;let n=e.RTCPeerConnection.prototype.setLocalDescription;!n||n.length===0||(e.RTCPeerConnection.prototype.setLocalDescription=function(){let e=arguments[0]||{};if(typeof e!=`object`||e.type&&e.sdp)return n.apply(this,arguments);if(e={type:e.type,sdp:e.sdp},!e.type)switch(this.signalingState){case`stable`:case`have-local-offer`:case`have-remote-pranswer`:e.type=`offer`;break;default:e.type=`answer`;break}return e.sdp||e.type!==`offer`&&e.type!==`answer`?n.apply(this,[e]):(e.type===`offer`?this.createOffer:this.createAnswer).apply(this).then(e=>n.apply(this,[e]))})}var Ra=Object.freeze({__proto__:null,removeExtmapAllowMixed:Fa,shimAddIceCandidateNullOrEmpty:Ia,shimConnectionState:Pa,shimMaxMessageSize:Ma,shimParameterlessSetLocalDescription:La,shimRTCIceCandidate:Aa,shimRTCIceCandidateRelayProtocol:ja,shimSendThrowTypeError:Na});function za(){let{window:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0},n=Li,r=zi(e),i={browserDetails:r,commonShim:Ra,extractVersion:Ni,disableLog:Fi,disableWarnings:Ii,sdp:ka};switch(r.browser){case`chrome`:if(!ea||!Qi||!t.shimChrome)return n(`Chrome shim is not included in this adapter release.`),i;if(r.version===null)return n(`Chrome shim can not determine version, not shimming.`),i;n(`adapter.js shimming chrome.`),i.browserShim=ea,Ia(e,r),La(e),Gi(e,r),Ki(e),Qi(e,r),qi(e),Zi(e,r),Ji(e),Yi(e),$i(e,r),Aa(e),ja(e),Pa(e),Ma(e,r),Na(e),Fa(e,r);break;case`firefox`:if(!pa||!ia||!t.shimFirefox)return n(`Firefox shim is not included in this adapter release.`),i;n(`adapter.js shimming firefox.`),i.browserShim=pa,Ia(e,r),La(e),ta(e,r),ia(e,r),ra(e),sa(e),aa(e),oa(e),ca(e),la(e),ua(e),da(e),fa(e),Aa(e),Pa(e),Ma(e,r),Na(e);break;case`safari`:if(!Ca||!t.shimSafari)return n(`Safari shim is not included in this adapter release.`),i;n(`adapter.js shimming safari.`),i.browserShim=Ca,Ia(e,r),La(e),ya(e),xa(e),ga(e),ma(e),ha(e),ba(e),_a(e),Sa(e),Aa(e),ja(e),Ma(e,r),Na(e),Fa(e,r);break;default:n(`Unsupported browser!`);break}return i}za({window:typeof window>`u`?void 0:window});var Ba=`lk_e2ee`,Va;(function(e){e.SetKey=`setKey`,e.RatchetRequest=`ratchetRequest`,e.KeyRatcheted=`keyRatcheted`})(Va||={});var Ha;(function(e){e.KeyRatcheted=`keyRatcheted`})(Ha||={});var Ua;(function(e){e.ParticipantEncryptionStatusChanged=`participantEncryptionStatusChanged`,e.EncryptionError=`encryptionError`})(Ua||={});var Wa;(function(e){e.Error=`cryptorError`})(Wa||={});function Ga(){return qa()||Ka()}function Ka(){return window.RTCRtpScriptTransform!==void 0}function qa(){return window.RTCRtpSender!==void 0&&window.RTCRtpSender.prototype.createEncodedStreams!==void 0}function Ja(e){if(e.value?.case!==`sipDtmf`&&e.value?.case!==`metrics`&&e.value?.case!==`speaker`&&e.value?.case!==`transcription`&&e.value?.case!==`encryptedPacket`)return new Fn({value:e.value})}Ai.EventEmitter;var Ya=class extends Error{constructor(e,t){super(t||`an error has occured`),this.name=`LiveKitError`,this.code=e}},Xa;(function(e){e[e.NotAllowed=0]=`NotAllowed`,e[e.ServerUnreachable=1]=`ServerUnreachable`,e[e.InternalError=2]=`InternalError`,e[e.Cancelled=3]=`Cancelled`,e[e.LeaveRequest=4]=`LeaveRequest`,e[e.Timeout=5]=`Timeout`})(Xa||={});var Za=class extends Ya{constructor(e,t,n,r){super(1,e),this.name=`ConnectionError`,this.status=n,this.reason=t,this.context=r,this.reasonName=Xa[t]}},Qa=class extends Ya{constructor(e){super(21,e??`device is unsupported`),this.name=`DeviceUnsupportedError`}},$a=class extends Ya{constructor(e){super(20,e??`track is invalid`),this.name=`TrackInvalidError`}},eo=class extends Ya{constructor(e){super(10,e??`unsupported server`),this.name=`UnsupportedServer`}},to=class extends Ya{constructor(e){super(12,e??`unexpected connection state`),this.name=`UnexpectedConnectionState`}},no=class extends Ya{constructor(e){super(13,e??`unable to negotiate`),this.name=`NegotiationError`}},ro=class extends Ya{constructor(e,t){super(15,e),this.name=`PublishTrackError`,this.status=t}},io=class extends Ya{constructor(e,t){super(15,e),this.reason=t,this.reasonName=typeof t==`string`?t:ri[t]}},ao;(function(e){e[e.AlreadyOpened=0]=`AlreadyOpened`,e[e.AbnormalEnd=1]=`AbnormalEnd`,e[e.DecodeFailed=2]=`DecodeFailed`,e[e.LengthExceeded=3]=`LengthExceeded`,e[e.Incomplete=4]=`Incomplete`,e[e.HandlerAlreadyRegistered=7]=`HandlerAlreadyRegistered`,e[e.EncryptionTypeMismatch=8]=`EncryptionTypeMismatch`})(ao||={});var oo=class extends Ya{constructor(e,t){super(16,e),this.name=`DataStreamError`,this.reason=t,this.reasonName=ao[t]}},so;(function(e){e.PermissionDenied=`PermissionDenied`,e.NotFound=`NotFound`,e.DeviceInUse=`DeviceInUse`,e.Other=`Other`})(so||={}),(function(e){function t(t){if(t&&`name`in t)return t.name===`NotFoundError`||t.name===`DevicesNotFoundError`?e.NotFound:t.name===`NotAllowedError`||t.name===`PermissionDeniedError`?e.PermissionDenied:t.name===`NotReadableError`||t.name===`TrackStartError`?e.DeviceInUse:e.Other}e.getFailure=t})(so||={});var co;(function(e){e[e.InvalidKey=0]=`InvalidKey`,e[e.MissingKey=1]=`MissingKey`,e[e.InternalError=2]=`InternalError`})(co||={});var A;(function(e){e.Connected=`connected`,e.Reconnecting=`reconnecting`,e.SignalReconnecting=`signalReconnecting`,e.Reconnected=`reconnected`,e.Disconnected=`disconnected`,e.ConnectionStateChanged=`connectionStateChanged`,e.Moved=`moved`,e.MediaDevicesChanged=`mediaDevicesChanged`,e.ParticipantConnected=`participantConnected`,e.ParticipantDisconnected=`participantDisconnected`,e.TrackPublished=`trackPublished`,e.TrackSubscribed=`trackSubscribed`,e.TrackSubscriptionFailed=`trackSubscriptionFailed`,e.TrackUnpublished=`trackUnpublished`,e.TrackUnsubscribed=`trackUnsubscribed`,e.TrackMuted=`trackMuted`,e.TrackUnmuted=`trackUnmuted`,e.LocalTrackPublished=`localTrackPublished`,e.LocalTrackUnpublished=`localTrackUnpublished`,e.LocalAudioSilenceDetected=`localAudioSilenceDetected`,e.ActiveSpeakersChanged=`activeSpeakersChanged`,e.ParticipantMetadataChanged=`participantMetadataChanged`,e.ParticipantNameChanged=`participantNameChanged`,e.ParticipantAttributesChanged=`participantAttributesChanged`,e.ParticipantActive=`participantActive`,e.RoomMetadataChanged=`roomMetadataChanged`,e.DataReceived=`dataReceived`,e.SipDTMFReceived=`sipDTMFReceived`,e.TranscriptionReceived=`transcriptionReceived`,e.ConnectionQualityChanged=`connectionQualityChanged`,e.TrackStreamStateChanged=`trackStreamStateChanged`,e.TrackSubscriptionPermissionChanged=`trackSubscriptionPermissionChanged`,e.TrackSubscriptionStatusChanged=`trackSubscriptionStatusChanged`,e.AudioPlaybackStatusChanged=`audioPlaybackChanged`,e.VideoPlaybackStatusChanged=`videoPlaybackChanged`,e.MediaDevicesError=`mediaDevicesError`,e.ParticipantPermissionsChanged=`participantPermissionsChanged`,e.SignalConnected=`signalConnected`,e.RecordingStatusChanged=`recordingStatusChanged`,e.ParticipantEncryptionStatusChanged=`participantEncryptionStatusChanged`,e.EncryptionError=`encryptionError`,e.DCBufferStatusChanged=`dcBufferStatusChanged`,e.ActiveDeviceChanged=`activeDeviceChanged`,e.ChatMessage=`chatMessage`,e.LocalTrackSubscribed=`localTrackSubscribed`,e.MetricsReceived=`metricsReceived`})(A||={});var j;(function(e){e.TrackPublished=`trackPublished`,e.TrackSubscribed=`trackSubscribed`,e.TrackSubscriptionFailed=`trackSubscriptionFailed`,e.TrackUnpublished=`trackUnpublished`,e.TrackUnsubscribed=`trackUnsubscribed`,e.TrackMuted=`trackMuted`,e.TrackUnmuted=`trackUnmuted`,e.LocalTrackPublished=`localTrackPublished`,e.LocalTrackUnpublished=`localTrackUnpublished`,e.LocalTrackCpuConstrained=`localTrackCpuConstrained`,e.LocalSenderCreated=`localSenderCreated`,e.ParticipantMetadataChanged=`participantMetadataChanged`,e.ParticipantNameChanged=`participantNameChanged`,e.DataReceived=`dataReceived`,e.SipDTMFReceived=`sipDTMFReceived`,e.TranscriptionReceived=`transcriptionReceived`,e.IsSpeakingChanged=`isSpeakingChanged`,e.ConnectionQualityChanged=`connectionQualityChanged`,e.TrackStreamStateChanged=`trackStreamStateChanged`,e.TrackSubscriptionPermissionChanged=`trackSubscriptionPermissionChanged`,e.TrackSubscriptionStatusChanged=`trackSubscriptionStatusChanged`,e.TrackCpuConstrained=`trackCpuConstrained`,e.MediaDevicesError=`mediaDevicesError`,e.AudioStreamAcquired=`audioStreamAcquired`,e.ParticipantPermissionsChanged=`participantPermissionsChanged`,e.PCTrackAdded=`pcTrackAdded`,e.AttributesChanged=`attributesChanged`,e.LocalTrackSubscribed=`localTrackSubscribed`,e.ChatMessage=`chatMessage`,e.Active=`active`})(j||={});var M;(function(e){e.TransportsCreated=`transportsCreated`,e.Connected=`connected`,e.Disconnected=`disconnected`,e.Resuming=`resuming`,e.Resumed=`resumed`,e.Restarting=`restarting`,e.Restarted=`restarted`,e.SignalResumed=`signalResumed`,e.SignalRestarted=`signalRestarted`,e.Closing=`closing`,e.MediaTrackAdded=`mediaTrackAdded`,e.ActiveSpeakersUpdate=`activeSpeakersUpdate`,e.DataPacketReceived=`dataPacketReceived`,e.RTPVideoMapUpdate=`rtpVideoMapUpdate`,e.DCBufferStatusChanged=`dcBufferStatusChanged`,e.ParticipantUpdate=`participantUpdate`,e.RoomUpdate=`roomUpdate`,e.SpeakersChanged=`speakersChanged`,e.StreamStateChanged=`streamStateChanged`,e.ConnectionQualityUpdate=`connectionQualityUpdate`,e.SubscriptionError=`subscriptionError`,e.SubscriptionPermissionUpdate=`subscriptionPermissionUpdate`,e.RemoteMute=`remoteMute`,e.SubscribedQualityUpdate=`subscribedQualityUpdate`,e.LocalTrackUnpublished=`localTrackUnpublished`,e.LocalTrackSubscribed=`localTrackSubscribed`,e.Offline=`offline`,e.SignalRequestResponse=`signalRequestResponse`,e.SignalConnected=`signalConnected`,e.RoomMoved=`roomMoved`})(M||={});var N;(function(e){e.Message=`message`,e.Muted=`muted`,e.Unmuted=`unmuted`,e.Restarted=`restarted`,e.Ended=`ended`,e.Subscribed=`subscribed`,e.Unsubscribed=`unsubscribed`,e.CpuConstrained=`cpuConstrained`,e.UpdateSettings=`updateSettings`,e.UpdateSubscription=`updateSubscription`,e.AudioPlaybackStarted=`audioPlaybackStarted`,e.AudioPlaybackFailed=`audioPlaybackFailed`,e.AudioSilenceDetected=`audioSilenceDetected`,e.VisibilityChanged=`visibilityChanged`,e.VideoDimensionsChanged=`videoDimensionsChanged`,e.VideoPlaybackStarted=`videoPlaybackStarted`,e.VideoPlaybackFailed=`videoPlaybackFailed`,e.ElementAttached=`elementAttached`,e.ElementDetached=`elementDetached`,e.UpstreamPaused=`upstreamPaused`,e.UpstreamResumed=`upstreamResumed`,e.SubscriptionPermissionChanged=`subscriptionPermissionChanged`,e.SubscriptionStatusChanged=`subscriptionStatusChanged`,e.SubscriptionFailed=`subscriptionFailed`,e.TrackProcessorUpdate=`trackProcessorUpdate`,e.AudioTrackFeatureUpdate=`audioTrackFeatureUpdate`,e.TranscriptionReceived=`transcriptionReceived`,e.TimeSyncUpdate=`timeSyncUpdate`,e.PreConnectBufferFlushed=`preConnectBufferFlushed`})(N||={});function lo(e){return e===void 0?e:typeof structuredClone==`function`?typeof e==`object`&&e?structuredClone(Object.assign({},e)):structuredClone(e):JSON.parse(JSON.stringify(e))}var uo=/version\/(\d+(\.?_?\d+)+)/i,fo;function po(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e===void 0&&typeof navigator>`u`)return;let n=(e??navigator.userAgent).toLowerCase();return(fo===void 0||t)&&(fo=mo.find(e=>{let{test:t}=e;return t.test(n)})?.describe(n)),fo}var mo=[{test:/firefox|iceweasel|fxios/i,describe(e){return{name:`Firefox`,version:ho(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e),os:e.toLowerCase().includes(`fxios`)?`iOS`:void 0,osVersion:go(e)}}},{test:/chrom|crios|crmo/i,describe(e){return{name:`Chrome`,version:ho(/(?:chrome|chromium|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e),os:e.toLowerCase().includes(`crios`)?`iOS`:void 0,osVersion:go(e)}}},{test:/safari|applewebkit/i,describe(e){return{name:`Safari`,version:ho(uo,e),os:e.includes(`mobile/`)?`iOS`:`macOS`,osVersion:go(e)}}}];function ho(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,r=t.match(e);return r&&r.length>=n&&r[n]||``}function go(e){return e.includes(`mac os`)?ho(/\(.+?(\d+_\d+(:?_\d+)?)/,e,1).replace(/_/g,`.`):void 0}var _o=`2.16.0`,vo=class{};vo.setTimeout=function(){return setTimeout(...arguments)},vo.setInterval=function(){return setInterval(...arguments)},vo.clearTimeout=function(){return clearTimeout(...arguments)},vo.clearInterval=function(){return clearInterval(...arguments)};var yo=5e3,bo=[],xo;(function(e){e[e.LOW=0]=`LOW`,e[e.MEDIUM=1]=`MEDIUM`,e[e.HIGH=2]=`HIGH`})(xo||={});var P=class e extends Ai.EventEmitter{get streamState(){return this._streamState}setStreamState(e){this._streamState=e}constructor(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(),this.attachedElements=[],this.isMuted=!1,this._streamState=e.StreamState.Active,this.isInBackground=!1,this._currentBitrate=0,this.log=vi,this.appVisibilityChangedListener=()=>{this.backgroundTimeout&&clearTimeout(this.backgroundTimeout),document.visibilityState===`hidden`?this.backgroundTimeout=setTimeout(()=>this.handleAppVisibilityChanged(),yo):this.handleAppVisibilityChanged()},this.log=yi(r.loggerName??_i.Track),this.loggerContextCb=r.loggerContextCb,this.setMaxListeners(100),this.kind=n,this._mediaStreamTrack=t,this._mediaStreamID=t.id,this.source=e.Source.Unknown}get logContext(){return Object.assign(Object.assign({},this.loggerContextCb?.call(this)),Js(this))}get currentBitrate(){return this._currentBitrate}get mediaStreamTrack(){return this._mediaStreamTrack}get mediaStreamID(){return this._mediaStreamID}attach(t){let n=`audio`;this.kind===e.Kind.Video&&(n=`video`),this.attachedElements.length===0&&this.kind===e.Kind.Video&&this.addAppVisibilityListener(),t||(n===`audio`&&(bo.forEach(e=>{e.parentElement===null&&!t&&(t=e)}),t&&bo.splice(bo.indexOf(t),1)),t||=document.createElement(n)),this.attachedElements.includes(t)||this.attachedElements.push(t),So(this.mediaStreamTrack,t);let r=t.srcObject.getTracks(),i=r.some(e=>e.kind===`audio`);return t.play().then(()=>{this.emit(i?N.AudioPlaybackStarted:N.VideoPlaybackStarted)}).catch(e=>{e.name===`NotAllowedError`?this.emit(i?N.AudioPlaybackFailed:N.VideoPlaybackFailed,e):e.name===`AbortError`?vi.debug(`${i?`audio`:`video`} playback aborted, likely due to new play request`):vi.warn(`could not playback ${i?`audio`:`video`}`,e),i&&t&&r.some(e=>e.kind===`video`)&&e.name===`NotAllowedError`&&(t.muted=!0,t.play().catch(()=>{}))}),this.emit(N.ElementAttached,t),t}detach(e){try{if(e){Co(this.mediaStreamTrack,e);let t=this.attachedElements.indexOf(e);return t>=0&&(this.attachedElements.splice(t,1),this.recycleElement(e),this.emit(N.ElementDetached,e)),e}let t=[];return this.attachedElements.forEach(e=>{Co(this.mediaStreamTrack,e),t.push(e),this.recycleElement(e),this.emit(N.ElementDetached,e)}),this.attachedElements=[],t}finally{this.attachedElements.length===0&&this.removeAppVisibilityListener()}}stop(){this.stopMonitor(),this._mediaStreamTrack.stop()}enable(){this._mediaStreamTrack.enabled=!0}disable(){this._mediaStreamTrack.enabled=!1}stopMonitor(){this.monitorInterval&&clearInterval(this.monitorInterval),this.timeSyncHandle&&cancelAnimationFrame(this.timeSyncHandle)}updateLoggerOptions(e){e.loggerName&&(this.log=yi(e.loggerName)),e.loggerContextCb&&(this.loggerContextCb=e.loggerContextCb)}recycleElement(e){if(e instanceof HTMLAudioElement){let t=!0;e.pause(),bo.forEach(e=>{e.parentElement||(t=!1)}),t&&bo.push(e)}}handleAppVisibilityChanged(){return k(this,void 0,void 0,function*(){this.isInBackground=document.visibilityState===`hidden`,!this.isInBackground&&this.kind===e.Kind.Video&&setTimeout(()=>this.attachedElements.forEach(e=>e.play().catch(()=>{})),0)})}addAppVisibilityListener(){$o()?(this.isInBackground=document.visibilityState===`hidden`,document.addEventListener(`visibilitychange`,this.appVisibilityChangedListener)):this.isInBackground=!1}removeAppVisibilityListener(){$o()&&document.removeEventListener(`visibilitychange`,this.appVisibilityChangedListener)}};function So(e,t){let n;n=t.srcObject instanceof MediaStream?t.srcObject:new MediaStream;let r;r=e.kind===`audio`?n.getAudioTracks():n.getVideoTracks(),r.includes(e)||(r.forEach(e=>{n.removeTrack(e)}),n.addTrack(e)),(!qo()||!(t instanceof HTMLVideoElement))&&(t.autoplay=!0),t.muted=n.getAudioTracks().length===0,t instanceof HTMLVideoElement&&(t.playsInline=!0),t.srcObject!==n&&(t.srcObject=n,(qo()||Go())&&t instanceof HTMLVideoElement&&setTimeout(()=>{t.srcObject=n,t.play().catch(()=>{})},0))}function Co(e,t){if(t.srcObject instanceof MediaStream){let n=t.srcObject;n.removeTrack(e),n.getTracks().length>0?t.srcObject=n:t.srcObject=null}}(function(e){let t;(function(e){e.Audio=`audio`,e.Video=`video`,e.Unknown=`unknown`})(t=e.Kind||={});let n;(function(e){e.Camera=`camera`,e.Microphone=`microphone`,e.ScreenShare=`screen_share`,e.ScreenShareAudio=`screen_share_audio`,e.Unknown=`unknown`})(n=e.Source||={});let r;(function(e){e.Active=`active`,e.Paused=`paused`,e.Unknown=`unknown`})(r=e.StreamState||={});function i(e){switch(e){case t.Audio:return dn.AUDIO;case t.Video:return dn.VIDEO;default:return dn.DATA}}e.kindToProto=i;function a(e){switch(e){case dn.AUDIO:return t.Audio;case dn.VIDEO:return t.Video;default:return t.Unknown}}e.kindFromProto=a;function o(e){switch(e){case n.Camera:return fn.CAMERA;case n.Microphone:return fn.MICROPHONE;case n.ScreenShare:return fn.SCREEN_SHARE;case n.ScreenShareAudio:return fn.SCREEN_SHARE_AUDIO;default:return fn.UNKNOWN}}e.sourceToProto=o;function s(e){switch(e){case fn.CAMERA:return n.Camera;case fn.MICROPHONE:return n.Microphone;case fn.SCREEN_SHARE:return n.ScreenShare;case fn.SCREEN_SHARE_AUDIO:return n.ScreenShareAudio;default:return n.Unknown}}e.sourceFromProto=s;function c(e){switch(e){case ur.ACTIVE:return r.Active;case ur.PAUSED:return r.Paused;default:return r.Unknown}}e.streamStateFromProto=c})(P||={});var wo=class{constructor(e,t,n,r,i){if(typeof e==`object`)this.width=e.width,this.height=e.height,this.aspectRatio=e.aspectRatio,this.encoding={maxBitrate:e.maxBitrate,maxFramerate:e.maxFramerate,priority:e.priority};else if(t!==void 0&&n!==void 0)this.width=e,this.height=t,this.aspectRatio=e/t,this.encoding={maxBitrate:n,maxFramerate:r,priority:i};else throw TypeError(`Unsupported options: provide at least width, height and maxBitrate`)}get resolution(){return{width:this.width,height:this.height,frameRate:this.encoding.maxFramerate,aspectRatio:this.aspectRatio}}},To=[`vp8`,`h264`],Eo=[`vp8`,`h264`,`vp9`,`av1`,`h265`];function Do(e){return!!To.find(t=>t===e)}var Oo=Do,ko;(function(e){e[e.PREFER_REGRESSION=0]=`PREFER_REGRESSION`,e[e.SIMULCAST=1]=`SIMULCAST`,e[e.REGRESSION=2]=`REGRESSION`})(ko||={});var Ao;(function(e){e.telephone={maxBitrate:12e3},e.speech={maxBitrate:24e3},e.music={maxBitrate:48e3},e.musicStereo={maxBitrate:64e3},e.musicHighQuality={maxBitrate:96e3},e.musicHighQualityStereo={maxBitrate:128e3}})(Ao||={});var jo={h90:new wo(160,90,9e4,20),h180:new wo(320,180,16e4,20),h216:new wo(384,216,18e4,20),h360:new wo(640,360,45e4,20),h540:new wo(960,540,8e5,25),h720:new wo(1280,720,17e5,30),h1080:new wo(1920,1080,3e6,30),h1440:new wo(2560,1440,5e6,30),h2160:new wo(3840,2160,8e6,30)},Mo={h120:new wo(160,120,7e4,20),h180:new wo(240,180,125e3,20),h240:new wo(320,240,14e4,20),h360:new wo(480,360,33e4,20),h480:new wo(640,480,5e5,20),h540:new wo(720,540,6e5,25),h720:new wo(960,720,13e5,30),h1080:new wo(1440,1080,23e5,30),h1440:new wo(1920,1440,38e5,30)},No={h360fps3:new wo(640,360,2e5,3,`medium`),h360fps15:new wo(640,360,4e5,15,`medium`),h720fps5:new wo(1280,720,8e5,5,`medium`),h720fps15:new wo(1280,720,15e5,15,`medium`),h720fps30:new wo(1280,720,2e6,30,`medium`),h1080fps15:new wo(1920,1080,25e5,15,`medium`),h1080fps30:new wo(1920,1080,5e6,30,`medium`),original:new wo(0,0,7e6,30,`medium`)},Po=`|`,Fo=`https://aomediacodec.github.io/av1-rtp-spec/#dependency-descriptor-rtp-header-extension`;function Io(e){let t=e.split(Po);return t.length>1?[t[0],e.substr(t[0].length+1)]:[e,``]}function Lo(e){return k(this,void 0,void 0,function*(){return new Promise(t=>vo.setTimeout(t,e))})}function Ro(){return`addTransceiver`in RTCPeerConnection.prototype}function zo(){return`addTrack`in RTCPeerConnection.prototype}function Bo(){if(!(`getCapabilities`in RTCRtpSender)||qo()||Go())return!1;let e=RTCRtpSender.getCapabilities(`video`),t=!1;if(e){for(let n of e.codecs)if(n.mimeType.toLowerCase()===`video/av1`){t=!0;break}}return t}function Vo(){if(!(`getCapabilities`in RTCRtpSender)||Go())return!1;if(qo()){let e=po();if(e?.version&&os(e.version,`16`)<0||e?.os===`iOS`&&e?.osVersion&&os(e.osVersion,`16`)<0)return!1}let e=RTCRtpSender.getCapabilities(`video`),t=!1;if(e){for(let n of e.codecs)if(n.mimeType.toLowerCase()===`video/vp9`){t=!0;break}}return t}function Ho(e){return e===`av1`||e===`vp9`}function Uo(e){return!document||Jo()?!1:(e||=document.createElement(`audio`),`setSinkId`in e)}function Wo(){return typeof RTCPeerConnection>`u`?!1:Ro()||zo()}function Go(){return po()?.name===`Firefox`}function Ko(){let e=po();return!!e&&e.name===`Chrome`&&e.os!==`iOS`}function qo(){return po()?.name===`Safari`}function Jo(){let e=po();return e?.name===`Safari`||e?.os===`iOS`}function Yo(){let e=po();return e?.name===`Safari`&&e.version.startsWith(`17.`)||e?.os===`iOS`&&!!e?.osVersion&&os(e.osVersion,`17`)>=0}function Xo(e){return e||=po(),e?.name===`Safari`&&os(e.version,`18.3`)>0||e?.os===`iOS`&&!!e?.osVersion&&os(e.osVersion,`18.3`)>0}function Zo(){return $o()?navigator.userAgentData?.mobile??/Tablet|iPad|Mobile|Android|BlackBerry/.test(navigator.userAgent):!1}function Qo(){let e=po(),t=`17.2`;if(e)return e.name!==`Safari`&&e.os!==`iOS`||e.os===`iOS`&&e.osVersion&&os(e.osVersion,t)>=0?!0:e.name===`Safari`&&os(e.version,t)>=0}function $o(){return typeof document<`u`}function es(){return navigator.product==`ReactNative`}function ts(e){return e.hostname.endsWith(`.livekit.cloud`)||e.hostname.endsWith(`.livekit.run`)}function ns(e){return ts(e)?e.hostname.split(`.`)[0]:null}function rs(){if(global&&global.LiveKitReactNativeGlobal)return global.LiveKitReactNativeGlobal}function is(){if(!es())return;let e=rs();if(e)return e.platform}function as(){if($o())return window.devicePixelRatio;if(es()){let e=rs();if(e)return e.devicePixelRatio}return 1}function os(e,t){let n=e.split(`.`),r=t.split(`.`),i=Math.min(n.length,r.length);for(let e=0;e<i;++e){let t=parseInt(n[e],10),a=parseInt(r[e],10);if(t>a)return 1;if(t<a)return-1;if(e===i-1&&t===a)return 0}return e===``&&t!==``?-1:t===``?1:n.length==r.length?0:n.length<r.length?-1:1}function ss(e){for(let t of e)t.target.handleResize(t)}function cs(e){for(let t of e)t.target.handleVisibilityChanged(t)}var ls=null,us=()=>(ls||=new ResizeObserver(ss),ls),ds=null,fs=()=>(ds||=new IntersectionObserver(cs,{root:null,rootMargin:`0px`}),ds);function ps(){let e=new Xn({sdk:Zn.JS,protocol:16,version:_o});return es()&&(e.os=is()??``),e}function ms(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:16,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:16,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,i=document.createElement(`canvas`);i.width=e,i.height=t;let a=i.getContext(`2d`);a?.fillRect(0,0,i.width,i.height),r&&a&&(a.beginPath(),a.arc(e/2,t/2,50,0,Math.PI*2,!0),a.closePath(),a.fillStyle=`grey`,a.fill());let[o]=i.captureStream().getTracks();if(!o)throw Error(`Could not get empty media stream video track`);return o.enabled=n,o}var hs;function gs(){if(!hs){let e=new AudioContext,t=e.createOscillator(),n=e.createGain();n.gain.setValueAtTime(0,0);let r=e.createMediaStreamDestination();if(t.connect(n),n.connect(r),t.start(),[hs]=r.stream.getAudioTracks(),!hs)throw Error(`Could not get empty media stream audio track`);hs.enabled=!1}return hs.clone()}var _s=class{get isResolved(){return this._isResolved}constructor(e,t){this._isResolved=!1,this.onFinally=t,this.promise=new Promise((t,n)=>k(this,void 0,void 0,function*(){this.resolve=t,this.reject=n,e&&(yield e(t,n))})).finally(()=>{var e;this._isResolved=!0,(e=this.onFinally)==null||e.call(this)})}};function vs(e){return Eo.includes(e)}function ys(e){if(typeof e==`string`||typeof e==`number`)return e;if(Array.isArray(e))return e[0];if(e.exact!==void 0)return Array.isArray(e.exact)?e.exact[0]:e.exact;if(e.ideal!==void 0)return Array.isArray(e.ideal)?e.ideal[0]:e.ideal;throw Error(`could not unwrap constraint`)}function bs(e){return e.startsWith(`http`)?e.replace(/^(http)/,`ws`):e}function xs(e){return e.startsWith(`ws`)?e.replace(/^(ws)/,`http`):e}function Ss(e,t){return e.segments.map(e=>{let{id:n,text:r,language:i,startTime:a,endTime:o,final:s}=e,c=t.get(n)??Date.now(),l=Date.now();return s?t.delete(n):t.set(n,c),{id:n,text:r,startTime:Number.parseInt(a.toString()),endTime:Number.parseInt(o.toString()),final:s,language:i,firstReceivedTime:c,lastReceivedTime:l}})}function Cs(e){let{id:t,timestamp:n,message:r,editTimestamp:i}=e;return{id:t,timestamp:Number.parseInt(n.toString()),editTimestamp:i?Number.parseInt(i.toString()):void 0,message:r}}function ws(e){switch(e.reason){case Xa.LeaveRequest:return e.context;case Xa.Cancelled:return gn.CLIENT_INITIATED;case Xa.NotAllowed:return gn.USER_REJECTED;case Xa.ServerUnreachable:return gn.JOIN_FAILURE;default:return gn.UNKNOWN_REASON}}function Ts(e){return e===void 0?void 0:Number(e)}function Es(e){return e===void 0?void 0:BigInt(e)}function Ds(e){return!!e&&!(e instanceof MediaStreamTrack)&&e.isLocal}function Os(e){return!!e&&e.kind==P.Kind.Audio}function ks(e){return!!e&&e.kind==P.Kind.Video}function As(e){return Ds(e)&&ks(e)}function js(e){return Ds(e)&&Os(e)}function Ms(e){return!!e&&!e.isLocal}function Ns(e){return!!e&&!e.isLocal}function Ps(e){return Ms(e)&&ks(e)}function Fs(e){return e.isLocal}function Is(e,t){let n=[],r=new TextEncoder().encode(e);for(;r.length>t;){let e=t;for(;e>0;){let t=r[e];if(t!==void 0&&(t&192)!=128)break;e--}n.push(r.slice(0,e)),r=r.slice(e)}return r.length>0&&n.push(r),n}function Ls(e){let t=e.get(`Cache-Control`);if(t){let e=t.match(/(?:^|[,\s])max-age=(\d+)/)?.[1];if(e)return parseInt(e,10)}}function Rs(e,t,n){var r,i;let{optionsWithoutProcessor:a,audioProcessor:o,videoProcessor:s}=Zs(e??{}),c=t?.processor,l=n?.processor,u=a??{};return u.audio===!0&&(u.audio={}),u.video===!0&&(u.video={}),u.audio&&(zs(u.audio,t),(r=u.audio).deviceId??(r.deviceId={ideal:`default`}),(o||c)&&(u.audio.processor=o??c)),u.video&&(zs(u.video,n),(i=u.video).deviceId??(i.deviceId={ideal:`default`}),(s||l)&&(u.video.processor=s??l)),u}function zs(e,t){return Object.keys(t).forEach(n=>{e[n]===void 0&&(e[n]=t[n])}),e}function Bs(e){var t,n;let r={};if(e.video)if(typeof e.video==`object`){let n={},i=n,a=e.video;Object.keys(a).forEach(e=>{switch(e){case`resolution`:zs(i,a.resolution);break;default:i[e]=a[e]}}),r.video=n,(t=r.video).deviceId??(t.deviceId={ideal:`default`})}else r.video=e.video?{deviceId:{ideal:`default`}}:!1;else r.video=!1;return e.audio?typeof e.audio==`object`?(r.audio=e.audio,(n=r.audio).deviceId??(n.deviceId={ideal:`default`})):r.audio={deviceId:{ideal:`default`}}:r.audio=!1,r}function Vs(e){return k(this,arguments,void 0,function(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:200;return function*(){let n=Hs();if(n){let r=n.createAnalyser();r.fftSize=2048;let i=r.frequencyBinCount,a=new Uint8Array(i);n.createMediaStreamSource(new MediaStream([e.mediaStreamTrack])).connect(r),yield Lo(t),r.getByteTimeDomainData(a);let o=a.some(e=>e!==128&&e!==0);return n.close(),!o}return!1}()})}function Hs(){let e=typeof window<`u`&&(window.AudioContext||window.webkitAudioContext);if(e){let t=new e({latencyHint:`interactive`});if(t.state===`suspended`&&typeof window<`u`&&window.document?.body){let e=()=>k(this,void 0,void 0,function*(){var n;try{t.state===`suspended`&&(yield t.resume())}catch(e){console.warn(`Error trying to auto-resume audio context`,e)}finally{(n=window.document.body)==null||n.removeEventListener(`click`,e)}});t.addEventListener(`statechange`,()=>{var n;t.state===`closed`&&((n=window.document.body)==null||n.removeEventListener(`click`,e))}),window.document.body.addEventListener(`click`,e)}return t}}function Us(e){return e===`audioinput`?P.Source.Microphone:e===`videoinput`?P.Source.Camera:P.Source.Unknown}function Ws(e){if(e===P.Source.Microphone)return`audioinput`;if(e===P.Source.Camera)return`videoinput`}function Gs(e){let t=e.video??!0;return e.resolution&&e.resolution.width>0&&e.resolution.height>0&&(t=typeof t==`boolean`?{}:t,t=qo()?Object.assign(Object.assign({},t),{width:{max:e.resolution.width},height:{max:e.resolution.height},frameRate:e.resolution.frameRate}):Object.assign(Object.assign({},t),{width:{ideal:e.resolution.width},height:{ideal:e.resolution.height},frameRate:e.resolution.frameRate})),{audio:e.audio??!1,video:t,controller:e.controller,selfBrowserSurface:e.selfBrowserSurface,surfaceSwitching:e.surfaceSwitching,systemAudio:e.systemAudio,preferCurrentTab:e.preferCurrentTab}}function Ks(e){return e.split(`/`)[1].toLowerCase()}function qs(e){let t=[];return e.forEach(e=>{e.track!==void 0&&t.push(new br({cid:e.track.mediaStreamID,track:e.trackInfo}))}),t}function Js(e){return`mediaStreamTrack`in e?{trackID:e.sid,source:e.source,muted:e.isMuted,enabled:e.mediaStreamTrack.enabled,kind:e.kind,streamID:e.mediaStreamID,streamTrackID:e.mediaStreamTrack.id}:{trackID:e.trackSid,enabled:e.isEnabled,muted:e.isMuted,trackInfo:Object.assign({mimeType:e.mimeType,name:e.trackName,encrypted:e.isEncrypted,kind:e.kind,source:e.source},e.track?Js(e.track):{})}}function Ys(){return typeof RTCRtpReceiver<`u`&&`getSynchronizationSources`in RTCRtpReceiver}function Xs(e,t){e===void 0&&(e={}),t===void 0&&(t={});let n=[...Object.keys(t),...Object.keys(e)],r={};for(let i of n)e[i]!==t[i]&&(r[i]=t[i]??``);return r}function Zs(e){let t=Object.assign({},e),n,r;return typeof t.audio==`object`&&t.audio.processor&&(n=t.audio.processor,t.audio=Object.assign(Object.assign({},t.audio),{processor:void 0})),typeof t.video==`object`&&t.video.processor&&(r=t.video.processor,t.video=Object.assign(Object.assign({},t.video),{processor:void 0})),{audioProcessor:n,videoProcessor:r,optionsWithoutProcessor:lo(t)}}function Qs(e){switch(e){case fn.CAMERA:return P.Source.Camera;case fn.MICROPHONE:return P.Source.Microphone;case fn.SCREEN_SHARE:return P.Source.ScreenShare;case fn.SCREEN_SHARE_AUDIO:return P.Source.ScreenShareAudio;default:return P.Source.Unknown}}function $s(e,t){return e.width*e.height<t.width*t.height}function ec(e,t){return e.layers?.find(e=>e.quality===t)}var tc=class extends Ai.EventEmitter{constructor(e,t){super(),this.decryptDataRequests=new Map,this.encryptDataRequests=new Map,this.onWorkerMessage=e=>{let{kind:t,data:n}=e.data;switch(t){case`error`:if(vi.error(n.error.message),n.uuid){let e=this.decryptDataRequests.get(n.uuid);if(e?.reject){e.reject(n.error);break}let t=this.encryptDataRequests.get(n.uuid);if(t?.reject){t.reject(n.error);break}}this.emit(Ua.EncryptionError,n.error,n.participantIdentity);break;case`initAck`:n.enabled&&this.keyProvider.getKeys().forEach(e=>{this.postKey(e)});break;case`enable`:if(n.enabled&&this.keyProvider.getKeys().forEach(e=>{this.postKey(e)}),this.encryptionEnabled!==n.enabled&&n.participantIdentity===this.room?.localParticipant.identity)this.emit(Ua.ParticipantEncryptionStatusChanged,n.enabled,this.room.localParticipant),this.encryptionEnabled=n.enabled;else if(n.participantIdentity){let e=this.room?.getParticipantByIdentity(n.participantIdentity);if(!e)throw TypeError(`couldn't set encryption status, participant not found${n.participantIdentity}`);this.emit(Ua.ParticipantEncryptionStatusChanged,n.enabled,e)}break;case`ratchetKey`:this.keyProvider.emit(Va.KeyRatcheted,n.ratchetResult,n.participantIdentity,n.keyIndex);break;case`decryptDataResponse`:let e=this.decryptDataRequests.get(n.uuid);e?.resolve&&e.resolve(n);break;case`encryptDataResponse`:let t=this.encryptDataRequests.get(n.uuid);t?.resolve&&t.resolve(n);break}},this.onWorkerError=e=>{vi.error(`e2ee worker encountered an error:`,{error:e.error}),this.emit(Ua.EncryptionError,e.error,void 0)},this.keyProvider=e.keyProvider,this.worker=e.worker,this.encryptionEnabled=!1,this.dataChannelEncryptionEnabled=t}get isEnabled(){return this.encryptionEnabled}get isDataChannelEncryptionEnabled(){return this.isEnabled&&this.dataChannelEncryptionEnabled}setup(e){if(!Ga())throw new Qa(`tried to setup end-to-end encryption on an unsupported browser`);if(vi.info(`setting up e2ee`),e!==this.room){this.room=e,this.setupEventListeners(e,this.keyProvider);let t={kind:`init`,data:{keyProviderOptions:this.keyProvider.getOptions(),loglevel:bi.getLevel()}};this.worker&&(vi.info(`initializing worker`,{worker:this.worker}),this.worker.onmessage=this.onWorkerMessage,this.worker.onerror=this.onWorkerError,this.worker.postMessage(t))}}setParticipantCryptorEnabled(e,t){vi.debug(`set e2ee to ${e} for participant ${t}`),this.postEnable(e,t)}setSifTrailer(e){!e||e.length===0?vi.warn(`ignoring server sent trailer as it's empty`):this.postSifTrailer(e)}setupEngine(e){e.on(M.RTPVideoMapUpdate,e=>{this.postRTPMap(e)})}setupEventListeners(e,t){e.on(A.TrackPublished,(e,t)=>this.setParticipantCryptorEnabled(e.trackInfo.encryption!==Dn.NONE,t.identity)),e.on(A.ConnectionStateChanged,t=>{t===Eu.Connected&&e.remoteParticipants.forEach(e=>{e.trackPublications.forEach(t=>{this.setParticipantCryptorEnabled(t.trackInfo.encryption!==Dn.NONE,e.identity)})})}).on(A.TrackUnsubscribed,(e,t,n)=>{var r;let i={kind:`removeTransform`,data:{participantIdentity:n.identity,trackId:e.mediaStreamID}};(r=this.worker)==null||r.postMessage(i)}).on(A.TrackSubscribed,(e,t,n)=>{this.setupE2EEReceiver(e,n.identity,t.trackInfo)}).on(A.SignalConnected,()=>{if(!this.room)throw TypeError(`expected room to be present on signal connect`);t.getKeys().forEach(e=>{this.postKey(e)}),this.setParticipantCryptorEnabled(this.room.localParticipant.isE2EEEnabled,this.room.localParticipant.identity)}),e.localParticipant.on(j.LocalSenderCreated,(e,t)=>k(this,void 0,void 0,function*(){this.setupE2EESender(t,e)})),e.localParticipant.on(j.LocalTrackPublished,e=>{if(!ks(e.track)||!Jo())return;let t={kind:`updateCodec`,data:{trackId:e.track.mediaStreamID,codec:Ks(e.trackInfo.codecs[0].mimeType),participantIdentity:this.room.localParticipant.identity}};this.worker.postMessage(t)}),t.on(Va.SetKey,e=>this.postKey(e)).on(Va.RatchetRequest,(e,t)=>this.postRatchetRequest(e,t))}encryptData(e){return k(this,void 0,void 0,function*(){if(!this.worker)throw Error(`could not encrypt data, worker is missing`);let t=crypto.randomUUID(),n={kind:`encryptDataRequest`,data:{uuid:t,payload:e,participantIdentity:this.room.localParticipant.identity}},r=new _s;return r.onFinally=()=>{this.encryptDataRequests.delete(t)},this.encryptDataRequests.set(t,r),this.worker.postMessage(n),r.promise})}handleEncryptedData(e,t,n,r){if(!this.worker)throw Error(`could not handle encrypted data, worker is missing`);let i=crypto.randomUUID(),a={kind:`decryptDataRequest`,data:{uuid:i,payload:e,iv:t,participantIdentity:n,keyIndex:r}},o=new _s;return o.onFinally=()=>{this.decryptDataRequests.delete(i)},this.decryptDataRequests.set(i,o),this.worker.postMessage(a),o.promise}postRatchetRequest(e,t){if(!this.worker)throw Error(`could not ratchet key, worker is missing`);let n={kind:`ratchetRequest`,data:{participantIdentity:e,keyIndex:t}};this.worker.postMessage(n)}postKey(e){let{key:t,participantIdentity:n,keyIndex:r}=e;if(!this.worker)throw Error(`could not set key, worker is missing`);let i={kind:`setKey`,data:{participantIdentity:n,isPublisher:n===this.room?.localParticipant.identity,key:t,keyIndex:r}};this.worker.postMessage(i)}postEnable(e,t){if(this.worker){let n={kind:`enable`,data:{enabled:e,participantIdentity:t}};this.worker.postMessage(n)}else throw ReferenceError(`failed to enable e2ee, worker is not ready`)}postRTPMap(e){if(!this.worker)throw TypeError(`could not post rtp map, worker is missing`);if(!this.room?.localParticipant.identity)throw TypeError(`could not post rtp map, local participant identity is missing`);let t={kind:`setRTPMap`,data:{map:e,participantIdentity:this.room.localParticipant.identity}};this.worker.postMessage(t)}postSifTrailer(e){if(!this.worker)throw Error(`could not post SIF trailer, worker is missing`);let t={kind:`setSifTrailer`,data:{trailer:e}};this.worker.postMessage(t)}setupE2EEReceiver(e,t,n){if(e.receiver){if(!n?.mimeType||n.mimeType===``)throw TypeError(`MimeType missing from trackInfo, cannot set up E2EE cryptor`);this.handleReceiver(e.receiver,e.mediaStreamID,t,e.kind===`video`?Ks(n.mimeType):void 0)}}setupE2EESender(e,t){if(!Ds(e)||!t){t||vi.warn(`early return because sender is not ready`);return}this.handleSender(t,e.mediaStreamID,void 0)}handleReceiver(e,t,n,r){return k(this,void 0,void 0,function*(){if(this.worker){if(Ka()&&!Ko()){let i={kind:`decode`,participantIdentity:n,trackId:t,codec:r};e.transform=new RTCRtpScriptTransform(this.worker,i)}else{if(Ba in e&&r){let e={kind:`updateCodec`,data:{trackId:t,codec:r,participantIdentity:n}};this.worker.postMessage(e);return}let i=e.writableStream,a=e.readableStream;if(!i||!a){let t=e.createEncodedStreams();e.writableStream=t.writable,i=t.writable,e.readableStream=t.readable,a=t.readable}let o={kind:`decode`,data:{readableStream:a,writableStream:i,trackId:t,codec:r,participantIdentity:n,isReuse:Ba in e}};this.worker.postMessage(o,[a,i])}e[Ba]=!0}})}handleSender(e,t,n){if(!(Ba in e||!this.worker)){if(!this.room?.localParticipant.identity||this.room.localParticipant.identity===``)throw TypeError(`local identity needs to be known in order to set up encrypted sender`);if(Ka()&&!Ko()){vi.info(`initialize script transform`);let r={kind:`encode`,participantIdentity:this.room.localParticipant.identity,trackId:t,codec:n};e.transform=new RTCRtpScriptTransform(this.worker,r)}else{vi.info(`initialize encoded streams`);let r=e.createEncodedStreams(),i={kind:`encode`,data:{readableStream:r.readable,writableStream:r.writable,codec:n,trackId:t,participantIdentity:this.room.localParticipant.identity,isReuse:!1}};this.worker.postMessage(i,[r.readable,r.writable])}e[Ba]=!0}}},nc=500,rc=15e3,ic=class e{constructor(){this.failedConnectionAttempts=new Map,this.backOffPromises=new Map}static getInstance(){return this._instance||=new e,this._instance}addFailedConnectionAttempt(e){let t=ns(new URL(e));if(!t)return;let n=this.failedConnectionAttempts.get(t)??0;this.failedConnectionAttempts.set(t,n+1),this.backOffPromises.set(t,Lo(Math.min(nc*2**n,rc)))}getBackOffPromise(e){let t=new URL(e),n=t&&ns(t);return n&&this.backOffPromises.get(n)||Promise.resolve()}resetFailedConnectionAttempts(e){let t=new URL(e),n=t&&ns(t);n&&(this.failedConnectionAttempts.set(n,0),this.backOffPromises.set(n,Promise.resolve()))}resetAll(){this.backOffPromises.clear(),this.failedConnectionAttempts.clear()}};ic._instance=null;var ac=`default`,oc=class e{constructor(){this._previousDevices=[]}static getInstance(){return this.instance===void 0&&(this.instance=new e),this.instance}get previousDevices(){return this._previousDevices}getDevices(t){return k(this,arguments,void 0,function(t){var n=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){if(e.userMediaPromiseMap?.size>0){vi.debug(`awaiting getUserMedia promise`);try{t?yield e.userMediaPromiseMap.get(t):yield Promise.all(e.userMediaPromiseMap.values())}catch{vi.warn(`error waiting for media permissons`)}}let i=yield navigator.mediaDevices.enumerateDevices();if(r&&!(qo()&&n.hasDeviceInUse(t))&&(i.filter(e=>e.kind===t).length===0||i.some(e=>{let n=e.label===``,r=t?e.kind===t:!0;return n&&r}))){let e={video:t!==`audioinput`&&t!==`audiooutput`,audio:t!==`videoinput`&&{deviceId:{ideal:`default`}}},n=yield navigator.mediaDevices.getUserMedia(e);i=yield navigator.mediaDevices.enumerateDevices(),n.getTracks().forEach(e=>{e.stop()})}return n._previousDevices=i,t&&(i=i.filter(e=>e.kind===t)),i}()})}normalizeDeviceId(e,t,n){return k(this,void 0,void 0,function*(){if(t!==ac)return t;let r=yield this.getDevices(e),i=r.find(e=>e.deviceId===ac);if(!i){vi.warn(`could not reliably determine default device`);return}let a=r.find(e=>e.deviceId!==ac&&e.groupId===(n??i.groupId));if(!a){vi.warn(`could not reliably determine default device`);return}return a?.deviceId})}hasDeviceInUse(t){return t?e.userMediaPromiseMap.has(t):e.userMediaPromiseMap.size>0}};oc.mediaDeviceKinds=[`audioinput`,`audiooutput`,`videoinput`],oc.userMediaPromiseMap=new Map;var sc;(function(e){e[e.WAITING=0]=`WAITING`,e[e.RUNNING=1]=`RUNNING`,e[e.COMPLETED=2]=`COMPLETED`})(sc||={});var cc=class{constructor(){this.pendingTasks=new Map,this.taskMutex=new le,this.nextTaskIndex=0}run(e){return k(this,void 0,void 0,function*(){let t={id:this.nextTaskIndex++,enqueuedAt:Date.now(),status:sc.WAITING};this.pendingTasks.set(t.id,t);let n=yield this.taskMutex.lock();try{return t.executedAt=Date.now(),t.status=sc.RUNNING,yield e()}finally{t.status=sc.COMPLETED,this.pendingTasks.delete(t.id),n()}})}flush(){return k(this,void 0,void 0,function*(){return this.run(()=>k(this,void 0,void 0,function*(){}))})}snapshot(){return Array.from(this.pendingTasks.values())}},lc=class{get readyState(){return this.ws.readyState}constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t.signal?.aborted)throw new DOMException(`This operation was aborted`,`AbortError`);this.url=e;let n=new WebSocket(e,t.protocols??[]);n.binaryType=`arraybuffer`,this.ws=n;let r=function(){let{closeCode:e,reason:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return n.close(e,t)};this.opened=new Promise((e,t)=>{n.onopen=()=>{e({readable:new ReadableStream({start(e){n.onmessage=t=>{let{data:n}=t;return e.enqueue(n)},n.onerror=t=>e.error(t)},cancel:r}),writable:new WritableStream({write(e){n.send(e)},abort(){n.close()},close:r}),protocol:n.protocol,extensions:n.extensions}),n.removeEventListener(`error`,t)},n.addEventListener(`error`,t)}),this.closed=new Promise((e,t)=>{let r=()=>k(this,void 0,void 0,function*(){let r=new Promise(e=>{n.readyState!==WebSocket.CLOSED&&n.addEventListener(`close`,t=>{e(t)},{once:!0})}),i=yield Promise.race([Lo(250),r]);i?e(i):t(Error(`Encountered unspecified websocket error without a timely close event`))});n.onclose=t=>{let{code:i,reason:a}=t;e({closeCode:i,reason:a}),n.removeEventListener(`error`,r)},n.addEventListener(`error`,r)}),t.signal&&(t.signal.onabort=()=>n.close()),this.close=r}};function uc(e,t){let n=new URL(bs(e));return t.forEach((e,t)=>{n.searchParams.set(t,e)}),pc(n,`rtc`)}function dc(e){return pc(new URL(xs(e)),`validate`)}function fc(e){return e.endsWith(`/`)?e:`${e}/`}function pc(e,t){return e.pathname=`${fc(e.pathname)}${t}`,e.toString()}function mc(e){if(typeof e==`string`)return pr.fromJson(JSON.parse(e),{ignoreUnknownFields:!0});if(e instanceof ArrayBuffer)return pr.fromBinary(new Uint8Array(e));throw Error(`could not decode websocket message: ${typeof e}`)}function hc(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`Unknown reason`;if(!(e instanceof AbortSignal))return t;let n=e.reason;switch(typeof n){case`string`:return n;case`object`:return n instanceof Error?n.message:t;default:return`toString`in n?n.toString():t}}var gc=[`syncState`,`trickle`,`offer`,`answer`,`simulate`,`leave`];function _c(e){let t=gc.indexOf(e.case)>=0;return vi.trace(`request allowed to bypass queue:`,{canPass:t,req:e}),t}var vc;(function(e){e[e.CONNECTING=0]=`CONNECTING`,e[e.CONNECTED=1]=`CONNECTED`,e[e.RECONNECTING=2]=`RECONNECTING`,e[e.DISCONNECTING=3]=`DISCONNECTING`,e[e.DISCONNECTED=4]=`DISCONNECTED`})(vc||={});var yc=250,bc=class{get currentState(){return this.state}get isDisconnected(){return this.state===vc.DISCONNECTING||this.state===vc.DISCONNECTED}get isEstablishingConnection(){return this.state===vc.CONNECTING||this.state===vc.RECONNECTING}getNextRequestId(){return this._requestId+=1,this._requestId}constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.rtt=0,this.state=vc.DISCONNECTED,this.log=vi,this._requestId=0,this.resetCallbacks=()=>{this.onAnswer=void 0,this.onLeave=void 0,this.onLocalTrackPublished=void 0,this.onLocalTrackUnpublished=void 0,this.onNegotiateRequested=void 0,this.onOffer=void 0,this.onRemoteMuteChanged=void 0,this.onSubscribedQualityUpdate=void 0,this.onTokenRefresh=void 0,this.onTrickle=void 0,this.onClose=void 0,this.onMediaSectionsRequirement=void 0},this.log=yi(t.loggerName??_i.Signal),this.loggerContextCb=t.loggerContextCb,this.useJSON=e,this.requestQueue=new cc,this.queuedRequests=[],this.closingLock=new le,this.connectionLock=new le,this.state=vc.DISCONNECTED}get logContext(){return this.loggerContextCb?.call(this)??{}}join(e,t,n,r){return k(this,void 0,void 0,function*(){return this.state=vc.CONNECTING,this.options=n,yield this.connect(e,t,n,r)})}reconnect(e,t,n,r){return k(this,void 0,void 0,function*(){if(!this.options){this.log.warn(`attempted to reconnect without signal options being set, ignoring`,this.logContext);return}return this.state=vc.RECONNECTING,this.clearPingInterval(),yield this.connect(e,t,Object.assign(Object.assign({},this.options),{reconnect:!0,sid:n,reconnectReason:r}))})}connect(e,t,n,r){return k(this,void 0,void 0,function*(){let i=yield this.connectionLock.lock();this.connectOptions=n;let a=ps(),o=uc(e,n.singlePeerConnection?wc(t,a,n):Cc(t,a,n)),s=dc(o);return new Promise((e,t)=>k(this,void 0,void 0,function*(){try{let i=!1,a=e=>k(this,void 0,void 0,function*(){if(i)return;i=!0;let n=e instanceof Event?e.currentTarget:e,r=hc(n,`Abort handler called`);this.streamWriter&&!this.isDisconnected?this.sendLeave().then(()=>this.close(r)).catch(e=>{this.log.error(e),this.close()}):this.close(),c(),t(n instanceof AbortSignal?n.reason:n)});r?.addEventListener(`abort`,a);let c=()=>{clearTimeout(l),r?.removeEventListener(`abort`,a)},l=setTimeout(()=>{a(new Za(`room connection has timed out (signal)`,Xa.ServerUnreachable))},n.websocketTimeout),u=(e,t)=>{this.handleSignalConnected(e,l,t)},d=new URL(o);d.searchParams.has(`access_token`)&&d.searchParams.set(`access_token`,`<redacted>`),this.log.debug(`connecting to ${d}`,Object.assign({reconnect:n.reconnect,reconnectReason:n.reconnectReason},this.logContext)),this.ws&&(yield this.close(!1)),this.ws=new lc(o);try{this.ws.closed.then(e=>{this.isEstablishingConnection&&t(new Za(`Websocket got closed during a (re)connection attempt: ${e.reason}`,Xa.InternalError)),e.closeCode!==1e3&&(this.log.warn(`websocket closed`,Object.assign(Object.assign({},this.logContext),{reason:e.reason,code:e.closeCode,wasClean:e.closeCode===1e3,state:this.state})),this.state===vc.CONNECTED&&this.handleOnClose(e.reason??`Unexpected WS error`))}).catch(e=>{this.isEstablishingConnection&&t(new Za(`Websocket error during a (re)connection attempt: ${e}`,Xa.InternalError))});let r=yield this.ws.opened.catch(e=>k(this,void 0,void 0,function*(){if(this.state!==vc.CONNECTED){this.state=vc.DISCONNECTED,clearTimeout(l),t(yield this.handleConnectionError(e,s));return}this.handleWSError(e),t(e)}));if(clearTimeout(l),!r)return;let i=r.readable.getReader();this.streamWriter=r.writable.getWriter();let a=yield i.read();if(i.releaseLock(),!a.value)throw new Za(`no message received as first message`,Xa.InternalError);let o=mc(a.value),c=this.validateFirstMessage(o,n.reconnect??!1);if(!c.isValid){t(c.error);return}o.message?.case===`join`&&(this.pingTimeoutDuration=o.message.value.pingTimeout,this.pingIntervalDuration=o.message.value.pingInterval,this.pingTimeoutDuration&&this.pingTimeoutDuration>0&&this.log.debug(`ping config`,Object.assign(Object.assign({},this.logContext),{timeout:this.pingTimeoutDuration,interval:this.pingIntervalDuration}))),u(r,c.shouldProcessFirstMessage?o:void 0),e(c.response)}catch(e){t(e)}finally{c()}}finally{i()}}))})}startReadingLoop(e,t){return k(this,void 0,void 0,function*(){for(t&&this.handleSignalResponse(t);;){this.signalLatency&&(yield Lo(this.signalLatency));let{done:t,value:n}=yield e.read();if(t)break;let r=mc(n);this.handleSignalResponse(r)}})}close(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:`Close method called on signal client`;return function*(){if([vc.DISCONNECTING||vc.DISCONNECTED].includes(e.state)){e.log.debug(`ignoring signal close as it's already in disconnecting state`);return}let r=yield e.closingLock.lock();try{if(e.clearPingInterval(),t&&(e.state=vc.DISCONNECTING),e.ws){e.ws.close({closeCode:1e3,reason:n});let t=e.ws.closed;e.ws=void 0,e.streamWriter=void 0,yield Promise.race([t,Lo(yc)])}}catch(t){e.log.debug(`websocket error while closing`,Object.assign(Object.assign({},e.logContext),{error:t}))}finally{t&&(e.state=vc.DISCONNECTED),r()}}()})}sendOffer(e,t){this.log.debug(`sending offer`,Object.assign(Object.assign({},this.logContext),{offerSdp:e.sdp})),this.sendRequest({case:`offer`,value:Sc(e,t)})}sendAnswer(e,t){return this.log.debug(`sending answer`,Object.assign(Object.assign({},this.logContext),{answerSdp:e.sdp})),this.sendRequest({case:`answer`,value:Sc(e,t)})}sendIceCandidate(e,t){return this.log.debug(`sending ice candidate`,Object.assign(Object.assign({},this.logContext),{candidate:e})),this.sendRequest({case:`trickle`,value:new gr({candidateInit:JSON.stringify(e),target:t})})}sendMuteTrack(e,t){return this.sendRequest({case:`mute`,value:new _r({sid:e,muted:t})})}sendAddTrack(e){return this.sendRequest({case:`addTrack`,value:e})}sendUpdateLocalMetadata(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return function*(){let i=n.getNextRequestId();return yield n.sendRequest({case:`updateMetadata`,value:new jr({requestId:i,metadata:e,name:t,attributes:r})}),i}()})}sendUpdateTrackSettings(e){this.sendRequest({case:`trackSetting`,value:e})}sendUpdateSubscription(e){return this.sendRequest({case:`subscription`,value:e})}sendSyncState(e){return this.sendRequest({case:`syncState`,value:e})}sendUpdateVideoLayers(e,t){return this.sendRequest({case:`updateLayers`,value:new Ar({trackSid:e,layers:t})})}sendUpdateSubscriptionPermissions(e,t){return this.sendRequest({case:`subscriptionPermission`,value:new Wr({allParticipants:e,trackPermissions:t})})}sendSimulateScenario(e){return this.sendRequest({case:`simulate`,value:e})}sendPing(){return Promise.all([this.sendRequest({case:`ping`,value:Be.parse(Date.now())}),this.sendRequest({case:`pingReq`,value:new Zr({timestamp:Be.parse(Date.now()),rtt:Be.parse(this.rtt)})})])}sendUpdateLocalAudioTrack(e,t){return this.sendRequest({case:`updateAudioTrack`,value:new Er({trackSid:e,features:t})})}sendLeave(){return this.sendRequest({case:`leave`,value:new Or({reason:gn.CLIENT_INITIATED,action:kr.DISCONNECT})})}sendRequest(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return function*(){if(!n&&!_c(e)&&t.state===vc.RECONNECTING){t.queuedRequests.push(()=>k(t,void 0,void 0,function*(){yield this.sendRequest(e,!0)}));return}if(n||(yield t.requestQueue.flush()),t.signalLatency&&(yield Lo(t.signalLatency)),t.isDisconnected){t.log.debug(`skipping signal request (type: ${e.case}) - SignalClient disconnected`);return}if(!t.streamWriter){t.log.error(`cannot send signal request before connected, type: ${e?.case}`,t.logContext);return}let r=new fr({message:e});try{t.useJSON?yield t.streamWriter.write(r.toJsonString()):yield t.streamWriter.write(r.toBinary())}catch(e){t.log.error(`error sending signal message`,Object.assign(Object.assign({},t.logContext),{error:e}))}}()})}handleSignalResponse(e){let t=e.message;if(t==null){this.log.debug(`received unsupported message`,this.logContext);return}let n=!1;if(t.case===`answer`){let e=xc(t.value);this.onAnswer&&this.onAnswer(e,t.value.id,t.value.midToTrackId)}else if(t.case===`offer`){let e=xc(t.value);this.onOffer&&this.onOffer(e,t.value.id,t.value.midToTrackId)}else if(t.case===`trickle`){let e=JSON.parse(t.value.candidateInit);this.onTrickle&&this.onTrickle(e,t.value.target)}else t.case===`update`?this.onParticipantUpdate&&this.onParticipantUpdate(t.value.participants??[]):t.case===`trackPublished`?this.onLocalTrackPublished&&this.onLocalTrackPublished(t.value):t.case===`speakersChanged`?this.onSpeakersChanged&&this.onSpeakersChanged(t.value.speakers??[]):t.case===`leave`?this.onLeave&&this.onLeave(t.value):t.case===`mute`?this.onRemoteMuteChanged&&this.onRemoteMuteChanged(t.value.sid,t.value.muted):t.case===`roomUpdate`?this.onRoomUpdate&&t.value.room&&this.onRoomUpdate(t.value.room):t.case===`connectionQuality`?this.onConnectionQuality&&this.onConnectionQuality(t.value):t.case===`streamStateUpdate`?this.onStreamStateUpdate&&this.onStreamStateUpdate(t.value):t.case===`subscribedQualityUpdate`?this.onSubscribedQualityUpdate&&this.onSubscribedQualityUpdate(t.value):t.case===`subscriptionPermissionUpdate`?this.onSubscriptionPermissionUpdate&&this.onSubscriptionPermissionUpdate(t.value):t.case===`refreshToken`?this.onTokenRefresh&&this.onTokenRefresh(t.value):t.case===`trackUnpublished`?this.onLocalTrackUnpublished&&this.onLocalTrackUnpublished(t.value):t.case===`subscriptionResponse`?this.onSubscriptionError&&this.onSubscriptionError(t.value):t.case===`pong`||(t.case===`pongResp`?(this.rtt=Date.now()-Number.parseInt(t.value.lastPingTimestamp.toString()),this.resetPingTimeout(),n=!0):t.case===`requestResponse`?this.onRequestResponse&&this.onRequestResponse(t.value):t.case===`trackSubscribed`?this.onLocalTrackSubscribed&&this.onLocalTrackSubscribed(t.value.trackSid):t.case===`roomMoved`?(this.onTokenRefresh&&this.onTokenRefresh(t.value.token),this.onRoomMoved&&this.onRoomMoved(t.value)):t.case===`mediaSectionsRequirement`?this.onMediaSectionsRequirement&&this.onMediaSectionsRequirement(t.value):this.log.debug(`unsupported message`,Object.assign(Object.assign({},this.logContext),{msgCase:t.case})));n||this.resetPingTimeout()}setReconnected(){for(;this.queuedRequests.length>0;){let e=this.queuedRequests.shift();e&&this.requestQueue.run(e)}}handleOnClose(e){return k(this,void 0,void 0,function*(){if(this.state===vc.DISCONNECTED)return;let t=this.onClose;yield this.close(void 0,e),this.log.debug(`websocket connection closed: ${e}`,Object.assign(Object.assign({},this.logContext),{reason:e})),t&&t(e)})}handleWSError(e){this.log.error(`websocket error`,Object.assign(Object.assign({},this.logContext),{error:e}))}resetPingTimeout(){if(this.clearPingTimeout(),!this.pingTimeoutDuration){this.log.warn(`ping timeout duration not set`,this.logContext);return}this.pingTimeout=vo.setTimeout(()=>{this.log.warn(`ping timeout triggered. last pong received at: ${new Date(Date.now()-this.pingTimeoutDuration*1e3).toUTCString()}`,this.logContext),this.handleOnClose(`ping timeout`)},this.pingTimeoutDuration*1e3)}clearPingTimeout(){this.pingTimeout&&vo.clearTimeout(this.pingTimeout)}startPingInterval(){if(this.clearPingInterval(),this.resetPingTimeout(),!this.pingIntervalDuration){this.log.warn(`ping interval duration not set`,this.logContext);return}this.log.debug(`start ping interval`,this.logContext),this.pingInterval=vo.setInterval(()=>{this.sendPing()},this.pingIntervalDuration*1e3)}clearPingInterval(){this.log.debug(`clearing ping interval`,this.logContext),this.clearPingTimeout(),this.pingInterval&&vo.clearInterval(this.pingInterval)}handleSignalConnected(e,t,n){this.state=vc.CONNECTED,clearTimeout(t),this.startPingInterval(),this.startReadingLoop(e.readable.getReader(),n)}validateFirstMessage(e,t){return e.message?.case===`join`?{isValid:!0,response:e.message.value}:this.state===vc.RECONNECTING&&e.message?.case!==`leave`?e.message?.case===`reconnect`?{isValid:!0,response:e.message.value}:(this.log.debug(`declaring signal reconnected without reconnect response received`,this.logContext),{isValid:!0,response:void 0,shouldProcessFirstMessage:!0}):this.isEstablishingConnection&&e.message?.case===`leave`?{isValid:!1,error:new Za(`Received leave request while trying to (re)connect`,Xa.LeaveRequest,void 0,e.message.value.reason)}:t?{isValid:!1,error:new Za(`Unexpected first message`,Xa.InternalError)}:{isValid:!1,error:new Za(`did not receive join response, got ${e.message?.case} instead`,Xa.InternalError)}}handleConnectionError(e,t){return k(this,void 0,void 0,function*(){try{let n=yield fetch(t);return n.status.toFixed(0).startsWith(`4`)?new Za(yield n.text(),Xa.NotAllowed,n.status):e instanceof Za?e:new Za(`Encountered unknown websocket error during connection: ${e}`,Xa.InternalError,n.status)}catch(e){return e instanceof Za?e:new Za(e instanceof Error?e.message:`server was not reachable`,Xa.ServerUnreachable)}})}};function xc(e){let t={type:`offer`,sdp:e.sdp};switch(e.type){case`answer`:case`offer`:case`pranswer`:case`rollback`:t.type=e.type;break}return t}function Sc(e,t){return new Sr({sdp:e.sdp,type:e.type,id:t})}function Cc(e,t,n){let r=new URLSearchParams;return r.set(`access_token`,e),n.reconnect&&(r.set(`reconnect`,`1`),n.sid&&r.set(`sid`,n.sid)),r.set(`auto_subscribe`,n.autoSubscribe?`1`:`0`),r.set(`sdk`,es()?`reactnative`:`js`),r.set(`version`,t.version),r.set(`protocol`,t.protocol.toString()),t.deviceModel&&r.set(`device_model`,t.deviceModel),t.os&&r.set(`os`,t.os),t.osVersion&&r.set(`os_version`,t.osVersion),t.browser&&r.set(`browser`,t.browser),t.browserVersion&&r.set(`browser_version`,t.browserVersion),n.adaptiveStream&&r.set(`adaptive_stream`,`1`),n.reconnectReason&&r.set(`reconnect_reason`,n.reconnectReason.toString()),navigator.connection?.type&&r.set(`network`,navigator.connection.type),r}function wc(e,t,n){let r=new URLSearchParams;r.set(`access_token`,e);let i=new oi({clientInfo:t,connectionSettings:new ai({autoSubscribe:!!n.autoSubscribe,adaptiveStream:!!n.adaptiveStream}),reconnect:!!n.reconnect,participantSid:n.sid?n.sid:void 0});n.reconnectReason&&(i.reconnectReason=n.reconnectReason);let a=new si({joinRequest:i.toBinary()});return r.set(`join_request`,btoa(new TextDecoder(`utf-8`).decode(a.toBinary()))),r}var Tc=class{constructor(){this.buffer=[],this._totalSize=0}push(e){this.buffer.push(e),this._totalSize+=e.data.byteLength}pop(){let e=this.buffer.shift();return e&&(this._totalSize-=e.data.byteLength),e}getAll(){return this.buffer.slice()}popToSequence(e){for(;this.buffer.length>0&&this.buffer[0].sequence<=e;)this.pop()}alignBufferedAmount(e){for(;this.buffer.length>0;){let t=this.buffer[0];if(this._totalSize-t.data.byteLength<=e)break;this.pop()}}get length(){return this.buffer.length}},Ec=class{constructor(e){this._map=new Map,this._lastCleanup=0,this.ttl=e}set(e,t){let n=Date.now();n-this._lastCleanup>this.ttl/2&&this.cleanup();let r=n+this.ttl;return this._map.set(e,{value:t,expiresAt:r}),this}get(e){let t=this._map.get(e);if(t){if(t.expiresAt<Date.now()){this._map.delete(e);return}return t.value}}has(e){let t=this._map.get(e);return t?t.expiresAt<Date.now()?(this._map.delete(e),!1):!0:!1}delete(e){return this._map.delete(e)}clear(){this._map.clear()}cleanup(){let e=Date.now();for(let[t,n]of this._map.entries())n.expiresAt<e&&this._map.delete(t);this._lastCleanup=e}get size(){return this.cleanup(),this._map.size}forEach(e){this.cleanup();for(let[t,n]of this._map.entries())n.expiresAt>=Date.now()&&e(n.value,t,this.asValueMap())}map(e){this.cleanup();let t=[],n=this.asValueMap();for(let[r,i]of n.entries())t.push(e(i,r,n));return t}asValueMap(){let e=new Map;for(let[t,n]of this._map.entries())n.expiresAt>=Date.now()&&e.set(t,n.value);return e}},Dc={},Oc={},kc={exports:{}},Ac;function jc(){if(Ac)return kc.exports;Ac=1;var e=kc.exports={v:[{name:`version`,reg:/^(\d*)$/}],o:[{name:`origin`,reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:[`username`,`sessionId`,`sessionVersion`,`netType`,`ipVer`,`address`],format:`%s %s %d %s IP%d %s`}],s:[{name:`name`}],i:[{name:`description`}],u:[{name:`uri`}],e:[{name:`email`}],p:[{name:`phone`}],z:[{name:`timezones`}],r:[{name:`repeats`}],t:[{name:`timing`,reg:/^(\d*) (\d*)/,names:[`start`,`stop`],format:`%d %d`}],c:[{name:`connection`,reg:/^IN IP(\d) (\S*)/,names:[`version`,`ip`],format:`IN IP%d %s`}],b:[{push:`bandwidth`,reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:[`type`,`limit`],format:`%s:%s`}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:[`type`,`port`,`protocol`,`payloads`],format:`%s %d %s %s`}],a:[{push:`rtp`,reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:[`payload`,`codec`,`rate`,`encoding`],format:function(e){return e.encoding?`rtpmap:%d %s/%s/%s`:e.rate?`rtpmap:%d %s/%s`:`rtpmap:%d %s`}},{push:`fmtp`,reg:/^fmtp:(\d*) ([\S| ]*)/,names:[`payload`,`config`],format:`fmtp:%d %s`},{name:`control`,reg:/^control:(.*)/,format:`control:%s`},{name:`rtcp`,reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:[`port`,`netType`,`ipVer`,`address`],format:function(e){return e.address==null?`rtcp:%d`:`rtcp:%d %s IP%d %s`}},{push:`rtcpFbTrrInt`,reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:[`payload`,`value`],format:`rtcp-fb:%s trr-int %d`},{push:`rtcpFb`,reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:[`payload`,`type`,`subtype`],format:function(e){return e.subtype==null?`rtcp-fb:%s %s`:`rtcp-fb:%s %s %s`}},{push:`ext`,reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:[`value`,`direction`,`encrypt-uri`,`uri`,`config`],format:function(e){return`extmap:%d`+(e.direction?`/%s`:`%v`)+(e[`encrypt-uri`]?` %s`:`%v`)+` %s`+(e.config?` %s`:``)}},{name:`extmapAllowMixed`,reg:/^(extmap-allow-mixed)/},{push:`crypto`,reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:[`id`,`suite`,`config`,`sessionConfig`],format:function(e){return e.sessionConfig==null?`crypto:%d %s %s`:`crypto:%d %s %s %s`}},{name:`setup`,reg:/^setup:(\w*)/,format:`setup:%s`},{name:`connectionType`,reg:/^connection:(new|existing)/,format:`connection:%s`},{name:`mid`,reg:/^mid:([^\s]*)/,format:`mid:%s`},{name:`msid`,reg:/^msid:(.*)/,format:`msid:%s`},{name:`ptime`,reg:/^ptime:(\d*(?:\.\d*)*)/,format:`ptime:%d`},{name:`maxptime`,reg:/^maxptime:(\d*(?:\.\d*)*)/,format:`maxptime:%d`},{name:`direction`,reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:`icelite`,reg:/^(ice-lite)/},{name:`iceUfrag`,reg:/^ice-ufrag:(\S*)/,format:`ice-ufrag:%s`},{name:`icePwd`,reg:/^ice-pwd:(\S*)/,format:`ice-pwd:%s`},{name:`fingerprint`,reg:/^fingerprint:(\S*) (\S*)/,names:[`type`,`hash`],format:`fingerprint:%s %s`},{push:`candidates`,reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:[`foundation`,`component`,`transport`,`priority`,`ip`,`port`,`type`,`raddr`,`rport`,`tcptype`,`generation`,`network-id`,`network-cost`],format:function(e){var t=`candidate:%s %d %s %d %s %d typ %s`;return t+=e.raddr==null?`%v%v`:` raddr %s rport %d`,t+=e.tcptype==null?`%v`:` tcptype %s`,e.generation!=null&&(t+=` generation %d`),t+=e[`network-id`]==null?`%v`:` network-id %d`,t+=e[`network-cost`]==null?`%v`:` network-cost %d`,t}},{name:`endOfCandidates`,reg:/^(end-of-candidates)/},{name:`remoteCandidates`,reg:/^remote-candidates:(.*)/,format:`remote-candidates:%s`},{name:`iceOptions`,reg:/^ice-options:(\S*)/,format:`ice-options:%s`},{push:`ssrcs`,reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:[`id`,`attribute`,`value`],format:function(e){var t=`ssrc:%d`;return e.attribute!=null&&(t+=` %s`,e.value!=null&&(t+=`:%s`)),t}},{push:`ssrcGroups`,reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:[`semantics`,`ssrcs`],format:`ssrc-group:%s %s`},{name:`msidSemantic`,reg:/^msid-semantic:\s?(\w*) (\S*)/,names:[`semantic`,`token`],format:`msid-semantic: %s %s`},{push:`groups`,reg:/^group:(\w*) (.*)/,names:[`type`,`mids`],format:`group:%s %s`},{name:`rtcpMux`,reg:/^(rtcp-mux)/},{name:`rtcpRsize`,reg:/^(rtcp-rsize)/},{name:`sctpmap`,reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:[`sctpmapNumber`,`app`,`maxMessageSize`],format:function(e){return e.maxMessageSize==null?`sctpmap:%s %s`:`sctpmap:%s %s %s`}},{name:`xGoogleFlag`,reg:/^x-google-flag:([^\s]*)/,format:`x-google-flag:%s`},{push:`rids`,reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:[`id`,`direction`,`params`],format:function(e){return e.params?`rid:%s %s %s`:`rid:%s %s`}},{push:`imageattrs`,reg:RegExp(`^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?`),names:[`pt`,`dir1`,`attrs1`,`dir2`,`attrs2`],format:function(e){return`imageattr:%s %s %s`+(e.dir2?` %s %s`:``)}},{name:`simulcast`,reg:RegExp(`^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$`),names:[`dir1`,`list1`,`dir2`,`list2`],format:function(e){return`simulcast:%s %s`+(e.dir2?` %s %s`:``)}},{name:`simulcast_03`,reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:[`value`],format:`simulcast: %s`},{name:`framerate`,reg:/^framerate:(\d+(?:$|\.\d+))/,format:`framerate:%s`},{name:`sourceFilter`,reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:[`filterMode`,`netType`,`addressTypes`,`destAddress`,`srcList`],format:`source-filter: %s %s %s %s %s`},{name:`bundleOnly`,reg:/^(bundle-only)/},{name:`label`,reg:/^label:(.+)/,format:`label:%s`},{name:`sctpPort`,reg:/^sctp-port:(\d+)$/,format:`sctp-port:%s`},{name:`maxMessageSize`,reg:/^max-message-size:(\d+)$/,format:`max-message-size:%s`},{push:`tsRefClocks`,reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:[`clksrc`,`clksrcExt`],format:function(e){return`ts-refclk:%s`+(e.clksrcExt==null?``:`=%s`)}},{name:`mediaClk`,reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:[`id`,`mediaClockName`,`mediaClockValue`,`rateNumerator`,`rateDenominator`],format:function(e){var t=`mediaclk:`;return t+=e.id==null?`%v%s`:`id=%s %s`,t+=e.mediaClockValue==null?``:`=%s`,t+=e.rateNumerator==null?``:` rate=%s`,t+=e.rateDenominator==null?``:`/%s`,t}},{name:`keywords`,reg:/^keywds:(.+)$/,format:`keywds:%s`},{name:`content`,reg:/^content:(.+)/,format:`content:%s`},{name:`bfcpFloorCtrl`,reg:/^floorctrl:(c-only|s-only|c-s)/,format:`floorctrl:%s`},{name:`bfcpConfId`,reg:/^confid:(\d+)/,format:`confid:%s`},{name:`bfcpUserId`,reg:/^userid:(\d+)/,format:`userid:%s`},{name:`bfcpFloorId`,reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:[`id`,`mStream`],format:`floorid:%s mstrm:%s`},{push:`invalid`,names:[`value`]}]};return Object.keys(e).forEach(function(t){e[t].forEach(function(e){e.reg||=/(.*)/,e.format||=`%s`})}),kc.exports}var Mc;function Nc(){return Mc?Oc:(Mc=1,(function(e){var t=function(e){return String(Number(e))===e?Number(e):e},n=function(e,n,r,i){if(i&&!r)n[i]=t(e[1]);else for(var a=0;a<r.length;a+=1)e[a+1]!=null&&(n[r[a]]=t(e[a+1]))},r=function(e,t,r){var i=e.name&&e.names;e.push&&!t[e.push]?t[e.push]=[]:i&&!t[e.name]&&(t[e.name]={});var a=e.push?{}:i?t[e.name]:t;n(r.match(e.reg),a,e.names,e.name),e.push&&t[e.push].push(a)},i=jc(),a=RegExp.prototype.test.bind(/^([a-z])=(.*)/);e.parse=function(e){var t={},n=[],o=t;return e.split(/(\r\n|\r|\n)/).filter(a).forEach(function(e){var t=e[0],a=e.slice(2);t===`m`&&(n.push({rtp:[],fmtp:[]}),o=n[n.length-1]);for(var s=0;s<(i[t]||[]).length;s+=1){var c=i[t][s];if(c.reg.test(a))return r(c,o,a)}}),t.media=n,t};var o=function(e,n){var r=n.split(/=(.+)/,2);return r.length===2?e[r[0]]=t(r[1]):r.length===1&&n.length>1&&(e[r[0]]=void 0),e};e.parseParams=function(e){return e.split(/;\s?/).reduce(o,{})},e.parseFmtpConfig=e.parseParams,e.parsePayloads=function(e){return e.toString().split(` `).map(Number)},e.parseRemoteCandidates=function(e){for(var n=[],r=e.split(` `).map(t),i=0;i<r.length;i+=3)n.push({component:r[i],ip:r[i+1],port:r[i+2]});return n},e.parseImageAttributes=function(e){return e.split(` `).map(function(e){return e.substring(1,e.length-1).split(`,`).reduce(o,{})})},e.parseSimulcastStreamList=function(e){return e.split(`;`).map(function(e){return e.split(`,`).map(function(e){var n,r=!1;return e[0]===`~`?(n=t(e.substring(1,e.length)),r=!0):n=t(e),{scid:n,paused:r}})})}})(Oc),Oc)}var Pc,Fc;function Ic(){if(Fc)return Pc;Fc=1;var e=jc(),t=/%[sdv%]/g,n=function(e){var n=1,r=arguments,i=r.length;return e.replace(t,function(e){if(n>=i)return e;var t=r[n];switch(n+=1,e){case`%%`:return`%`;case`%s`:return String(t);case`%d`:return Number(t);case`%v`:return``}})},r=function(e,t,r){var i=t.format instanceof Function?t.format(t.push?r:r[t.name]):t.format,a=[e+`=`+i];if(t.names)for(var o=0;o<t.names.length;o+=1){var s=t.names[o];t.name?a.push(r[t.name][s]):a.push(r[t.names[o]])}else a.push(r[t.name]);return n.apply(null,a)},i=[`v`,`o`,`s`,`i`,`u`,`e`,`p`,`c`,`b`,`t`,`r`,`z`,`a`],a=[`i`,`c`,`b`,`a`];return Pc=function(t,n){n||={},t.version??=0,t.name??=` `,t.media.forEach(function(e){e.payloads??=``});var o=n.outerOrder||i,s=n.innerOrder||a,c=[];return o.forEach(function(n){e[n].forEach(function(e){e.name in t&&t[e.name]!=null?c.push(r(n,e,t)):e.push in t&&t[e.push]!=null&&t[e.push].forEach(function(t){c.push(r(n,e,t))})})}),t.media.forEach(function(t){c.push(r(`m`,e.m[0],t)),s.forEach(function(n){e[n].forEach(function(e){e.name in t&&t[e.name]!=null?c.push(r(n,e,t)):e.push in t&&t[e.push]!=null&&t[e.push].forEach(function(t){c.push(r(n,e,t))})})})}),c.join(`\r
|
|
265
265
|
`)+`\r
|
|
266
|
-
`},Pc}var Lc;function Rc(){if(Lc)return Dc;Lc=1;var e=Nc(),t=Ic();return Dc.grammar=jc(),Dc.write=t,Dc.parse=e.parse,Dc.parseParams=e.parseParams,Dc.parseFmtpConfig=e.parseFmtpConfig,Dc.parsePayloads=e.parsePayloads,Dc.parseRemoteCandidates=e.parseRemoteCandidates,Dc.parseImageAttributes=e.parseImageAttributes,Dc.parseSimulcastStreamList=e.parseSimulcastStreamList,Dc}var zc=Rc();function Bc(e,t,n){var r,i,a;t===void 0&&(t=50),n===void 0&&(n={});var o=(r=n.isImmediate)!=null&&r,s=(i=n.callback)!=null&&i,c=n.maxWait,l=Date.now(),u=[];function d(){if(c!==void 0){var e=Date.now()-l;if(e+t>=c)return c-e}return t}var f=function(){var t=[].slice.call(arguments),n=this;return new Promise(function(r,i){var c=o&&a===void 0;if(a!==void 0&&clearTimeout(a),a=setTimeout(function(){if(a=void 0,l=Date.now(),!o){var r=e.apply(n,t);s&&s(r),u.forEach(function(e){return(0,e.resolve)(r)}),u=[]}},d()),c){var f=e.apply(n,t);return s&&s(f),r(f)}u.push({resolve:r,reject:i})})};return f.cancel=function(e){a!==void 0&&clearTimeout(a),u.forEach(function(t){return(0,t.reject)(e)}),u=[]},f}var Vc=.7,Hc=20,Uc={NegotiationStarted:`negotiationStarted`,NegotiationComplete:`negotiationComplete`,RTPVideoPayloadTypes:`rtpVideoPayloadTypes`},Wc=class extends Ai.EventEmitter{get pc(){return this._pc||=this.createPC(),this._pc}constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),this.log=vi,this.ddExtID=0,this.latestOfferId=0,this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate=!1,this.trackBitrates=[],this.remoteStereoMids=[],this.remoteNackMids=[],this.negotiate=Bc(e=>k(this,void 0,void 0,function*(){this.emit(Uc.NegotiationStarted);try{yield this.createAndSendOffer()}catch(t){if(e)e(t);else throw t}}),Hc),this.close=()=>{this._pc&&=(this._pc.close(),this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc.onicegatheringstatechange=null,this._pc.ondatachannel=null,this._pc.onnegotiationneeded=null,this._pc.onsignalingstatechange=null,this._pc.onicecandidate=null,this._pc.ondatachannel=null,this._pc.ontrack=null,this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,null)},this.log=yi(t.loggerName??_i.PCTransport),this.loggerOptions=t,this.config=e,this._pc=this.createPC(),this.offerLock=new le}createPC(){let e=new RTCPeerConnection(this.config);return e.onicecandidate=e=>{var t;e.candidate&&((t=this.onIceCandidate)==null||t.call(this,e.candidate))},e.onicecandidateerror=e=>{var t;(t=this.onIceCandidateError)==null||t.call(this,e)},e.oniceconnectionstatechange=()=>{var t;(t=this.onIceConnectionStateChange)==null||t.call(this,e.iceConnectionState)},e.onsignalingstatechange=()=>{var t;(t=this.onSignalingStatechange)==null||t.call(this,e.signalingState)},e.onconnectionstatechange=()=>{var t;(t=this.onConnectionStateChange)==null||t.call(this,e.connectionState)},e.ondatachannel=e=>{var t;(t=this.onDataChannel)==null||t.call(this,e)},e.ontrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)},e}get logContext(){var e;return Object.assign({},(e=this.loggerOptions).loggerContextCb?.call(e))}get isICEConnected(){return this._pc!==null&&(this.pc.iceConnectionState===`connected`||this.pc.iceConnectionState===`completed`)}addIceCandidate(e){return k(this,void 0,void 0,function*(){if(this.pc.remoteDescription&&!this.restartingIce)return this.pc.addIceCandidate(e);this.pendingCandidates.push(e)})}setRemoteDescription(e,t){return k(this,void 0,void 0,function*(){if(e.type===`answer`&&this.latestOfferId>0&&t>0&&t!==this.latestOfferId)return this.log.warn(`ignoring answer for old offer`,Object.assign(Object.assign({},this.logContext),{offerId:t,latestOfferId:this.latestOfferId})),!1;let n;if(e.type===`offer`){let{stereoMids:t,nackMids:n}=Kc(e);this.remoteStereoMids=t,this.remoteNackMids=n}else if(e.type===`answer`){let t=zc.parse(e.sdp??``);t.media.forEach(e=>{let t=Jc(e.mid);e.type===`audio`&&this.trackBitrates.some(n=>{if(!n.transceiver||t!=n.transceiver.mid)return!1;let r=0;if(e.rtp.some(e=>e.codec.toUpperCase()===n.codec.toUpperCase()?(r=e.payload,!0):!1),r===0)return!0;let i=!1;for(let t of e.fmtp)if(t.payload===r){t.config=t.config.split(`;`).filter(e=>!e.includes(`maxaveragebitrate`)).join(`;`),n.maxbr>0&&(t.config+=`;maxaveragebitrate=${n.maxbr*1e3}`),i=!0;break}return i||n.maxbr>0&&e.fmtp.push({payload:r,config:`maxaveragebitrate=${n.maxbr*1e3}`}),!0})}),n=zc.write(t)}return yield this.setMungedSDP(e,n,!0),this.pendingCandidates.forEach(e=>{this.pc.addIceCandidate(e)}),this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate?(this.renegotiate=!1,yield this.createAndSendOffer()):e.type===`answer`&&(this.emit(Uc.NegotiationComplete),e.sdp&&zc.parse(e.sdp).media.forEach(e=>{e.type===`video`&&this.emit(Uc.RTPVideoPayloadTypes,e.rtp)})),!0})}createAndSendOffer(e){return k(this,void 0,void 0,function*(){let t=yield this.offerLock.lock();try{if(this.onOffer===void 0)return;if(e?.iceRestart&&(this.log.debug(`restarting ICE`,this.logContext),this.restartingIce=!0),this._pc&&this._pc.signalingState===`have-local-offer`){let t=this._pc.remoteDescription;if(e?.iceRestart&&t)yield this._pc.setRemoteDescription(t);else{this.renegotiate=!0;return}}else if(!this._pc||this._pc.signalingState===`closed`){this.log.warn(`could not createOffer with closed peer connection`,this.logContext);return}this.log.debug(`starting to negotiate`,this.logContext);let t=this.latestOfferId+1;this.latestOfferId=t;let n=yield this.pc.createOffer(e);this.log.debug(`original offer`,Object.assign({sdp:n.sdp},this.logContext));let r=zc.parse(n.sdp??``);if(r.media.forEach(e=>{qc(e),e.type===`audio`?Gc(e,[`all`],[]):e.type===`video`&&this.trackBitrates.some(t=>{if(!e.msid||!t.cid||!e.msid.includes(t.cid))return!1;let n=0;if(e.rtp.some(e=>e.codec.toUpperCase()===t.codec.toUpperCase()?(n=e.payload,!0):!1),n===0||(Ho(t.codec)&&!qo()&&this.ensureVideoDDExtensionForSVC(e,r),!Ho(t.codec)))return!0;let i=Math.round(t.maxbr*Vc);for(let t of e.fmtp)if(t.payload===n){t.config.includes(`x-google-start-bitrate`)||(t.config+=`;x-google-start-bitrate=${i}`);break}return!0})}),this.latestOfferId>t){this.log.warn(`latestOfferId mismatch`,Object.assign(Object.assign({},this.logContext),{latestOfferId:this.latestOfferId,offerId:t}));return}yield this.setMungedSDP(n,zc.write(r)),this.onOffer(n,this.latestOfferId)}finally{t()}})}createAndSetAnswer(){return k(this,void 0,void 0,function*(){let e=yield this.pc.createAnswer(),t=zc.parse(e.sdp??``);return t.media.forEach(e=>{qc(e),e.type===`audio`&&Gc(e,this.remoteStereoMids,this.remoteNackMids)}),yield this.setMungedSDP(e,zc.write(t)),e})}createDataChannel(e,t){return this.pc.createDataChannel(e,t)}addTransceiver(e,t){return this.pc.addTransceiver(e,t)}addTransceiverOfKind(e,t){return this.pc.addTransceiver(e,t)}addTrack(e){if(!this._pc)throw new to(`PC closed, cannot add track`);return this._pc.addTrack(e)}setTrackCodecBitrate(e){this.trackBitrates.push(e)}setConfiguration(e){if(!this._pc)throw new to(`PC closed, cannot configure`);return this._pc?.setConfiguration(e)}canRemoveTrack(){return!!this._pc?.removeTrack}removeTrack(e){return this._pc?.removeTrack(e)}getConnectionState(){return this._pc?.connectionState??`closed`}getICEConnectionState(){return this._pc?.iceConnectionState??`closed`}getSignallingState(){return this._pc?.signalingState??`closed`}getTransceivers(){return this._pc?.getTransceivers()??[]}getSenders(){return this._pc?.getSenders()??[]}getLocalDescription(){return this._pc?.localDescription}getRemoteDescription(){return this.pc?.remoteDescription}getStats(){return this.pc.getStats()}getConnectedAddress(){return k(this,void 0,void 0,function*(){if(!this._pc)return;let e=``,t=new Map,n=new Map;if((yield this._pc.getStats()).forEach(r=>{switch(r.type){case`transport`:e=r.selectedCandidatePairId;break;case`candidate-pair`:e===``&&r.selected&&(e=r.id),t.set(r.id,r);break;case`remote-candidate`:n.set(r.id,`${r.address}:${r.port}`);break}}),e===``)return;let r=t.get(e)?.remoteCandidateId;if(r!==void 0)return n.get(r)})}setMungedSDP(e,t,n){return k(this,void 0,void 0,function*(){if(t){let r=e.sdp;e.sdp=t;try{this.log.debug(`setting munged ${n?`remote`:`local`} description`,this.logContext),n?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e);return}catch(n){this.log.warn(`not able to set ${e.type}, falling back to unmodified sdp`,Object.assign(Object.assign({},this.logContext),{error:n,sdp:t})),e.sdp=r}}try{n?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e)}catch(t){let r=`unknown error`;t instanceof Error?r=t.message:typeof t==`string`&&(r=t);let i={error:r,sdp:e.sdp};throw!n&&this.pc.remoteDescription&&(i.remoteSdp=this.pc.remoteDescription),this.log.error(`unable to set ${e.type}`,Object.assign(Object.assign({},this.logContext),{fields:i})),new no(r)}})}ensureVideoDDExtensionForSVC(e,t){var n;if(!e.ext?.some(e=>e.uri===Fo)){if(this.ddExtID===0){let e=0;t.media.forEach(t=>{var n;t.type===`video`&&((n=t.ext)==null||n.forEach(t=>{t.value>e&&(e=t.value)}))}),this.ddExtID=e+1}(n=e.ext)==null||n.push({value:this.ddExtID,uri:Fo})}}};function Gc(e,t,n){let r=Jc(e.mid),i=0;e.rtp.some(e=>e.codec===`opus`?(i=e.payload,!0):!1),i>0&&(e.rtcpFb||=[],n.includes(r)&&!e.rtcpFb.some(e=>e.payload===i&&e.type===`nack`)&&e.rtcpFb.push({payload:i,type:`nack`}),(t.includes(r)||t.length===1&&t[0]===`all`)&&e.fmtp.some(e=>e.payload===i?(e.config.includes(`stereo=1`)||(e.config+=`;stereo=1`),!0):!1))}function Kc(e){let t=[],n=[],r=zc.parse(e.sdp??``),i=0;return r.media.forEach(e=>{let r=Jc(e.mid);e.type===`audio`&&(e.rtp.some(e=>e.codec===`opus`?(i=e.payload,!0):!1),e.rtcpFb?.some(e=>e.payload===i&&e.type===`nack`)&&n.push(r),e.fmtp.some(e=>e.payload===i?(e.config.includes(`sprop-stereo=1`)&&t.push(r),!0):!1))}),{stereoMids:t,nackMids:n}}function qc(e){if(e.connection){let t=e.connection.ip.indexOf(`:`)>=0;(e.connection.version===4&&t||e.connection.version===6&&!t)&&(e.connection.ip=`0.0.0.0`,e.connection.version=4)}}function Jc(e){return typeof e==`number`?e.toFixed(0):e}var Yc=`vp8`,Xc={audioPreset:Ao.music,dtx:!0,red:!0,forceStereo:!1,simulcast:!0,screenShareEncoding:No.h1080fps15.encoding,stopMicTrackOnMute:!1,videoCodec:Yc,backupCodec:!0,preConnectBuffer:!1},Zc={deviceId:{ideal:`default`},autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0,voiceIsolation:!0},Qc={deviceId:{ideal:`default`},resolution:jo.h720.resolution},$c={adaptiveStream:!1,dynacast:!1,stopLocalTrackOnUnpublish:!0,reconnectPolicy:new Ci,disconnectOnPageLeave:!0,webAudioMix:!1,singlePeerConnection:!1},el={autoSubscribe:!0,maxRetries:1,peerConnectionTimeout:15e3,websocketTimeout:15e3},tl;(function(e){e[e.NEW=0]=`NEW`,e[e.CONNECTING=1]=`CONNECTING`,e[e.CONNECTED=2]=`CONNECTED`,e[e.FAILED=3]=`FAILED`,e[e.CLOSING=4]=`CLOSING`,e[e.CLOSED=5]=`CLOSED`})(tl||={});var nl=class{get needsPublisher(){return this.isPublisherConnectionRequired}get needsSubscriber(){return this.isSubscriberConnectionRequired}get currentState(){return this.state}constructor(e,t,n){this.peerConnectionTimeout=el.peerConnectionTimeout,this.log=vi,this.updateState=()=>{var e;let t=this.state,n=this.requiredTransports.map(e=>e.getConnectionState());n.every(e=>e===`connected`)?this.state=tl.CONNECTED:n.some(e=>e===`failed`)?this.state=tl.FAILED:n.some(e=>e===`connecting`)?this.state=tl.CONNECTING:n.every(e=>e===`closed`)?this.state=tl.CLOSED:n.some(e=>e===`closed`)?this.state=tl.CLOSING:n.every(e=>e===`new`)&&(this.state=tl.NEW),t!==this.state&&(this.log.debug(`pc state change: from ${tl[t]} to ${tl[this.state]}`,this.logContext),(e=this.onStateChange)==null||e.call(this,this.state,this.publisher.getConnectionState(),this.subscriber?.getConnectionState()))},this.log=yi(n.loggerName??_i.PCManager),this.loggerOptions=n,this.isPublisherConnectionRequired=t!==`subscriber-primary`,this.isSubscriberConnectionRequired=t===`subscriber-primary`,this.publisher=new Wc(e,n),t!==`publisher-only`&&(this.subscriber=new Wc(e,n),this.subscriber.onConnectionStateChange=this.updateState,this.subscriber.onIceConnectionStateChange=this.updateState,this.subscriber.onSignalingStatechange=this.updateState,this.subscriber.onIceCandidate=e=>{var t;(t=this.onIceCandidate)==null||t.call(this,e,lr.SUBSCRIBER)},this.subscriber.onDataChannel=e=>{var t;(t=this.onDataChannel)==null||t.call(this,e)},this.subscriber.onTrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)}),this.publisher.onConnectionStateChange=this.updateState,this.publisher.onIceConnectionStateChange=this.updateState,this.publisher.onSignalingStatechange=this.updateState,this.publisher.onIceCandidate=e=>{var t;(t=this.onIceCandidate)==null||t.call(this,e,lr.PUBLISHER)},this.publisher.onTrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)},this.publisher.onOffer=(e,t)=>{var n;(n=this.onPublisherOffer)==null||n.call(this,e,t)},this.state=tl.NEW,this.connectionLock=new le,this.remoteOfferLock=new le}get logContext(){var e;return Object.assign({},(e=this.loggerOptions).loggerContextCb?.call(e))}requirePublisher(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isPublisherConnectionRequired=e,this.updateState()}createAndSendPublisherOffer(e){return this.publisher.createAndSendOffer(e)}setPublisherAnswer(e,t){return this.publisher.setRemoteDescription(e,t)}removeTrack(e){return this.publisher.removeTrack(e)}close(){return k(this,void 0,void 0,function*(){if(this.publisher&&this.publisher.getSignallingState()!==`closed`){let e=this.publisher;for(let t of e.getSenders())try{e.canRemoveTrack()&&e.removeTrack(t)}catch(e){this.log.warn(`could not removeTrack`,Object.assign(Object.assign({},this.logContext),{error:e}))}}yield Promise.all([this.publisher.close(),this.subscriber?.close()]),this.updateState()})}triggerIceRestart(){return k(this,void 0,void 0,function*(){this.subscriber&&(this.subscriber.restartingIce=!0),this.needsPublisher&&(yield this.createAndSendPublisherOffer({iceRestart:!0}))})}addIceCandidate(e,t){return k(this,void 0,void 0,function*(){t===lr.PUBLISHER?yield this.publisher.addIceCandidate(e):yield this.subscriber?.addIceCandidate(e)})}createSubscriberAnswerFromOffer(e,t){return k(this,void 0,void 0,function*(){this.log.debug(`received server offer`,Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,signalingState:this.subscriber?.getSignallingState().toString()}));let n=yield this.remoteOfferLock.lock();try{return(yield this.subscriber?.setRemoteDescription(e,t))?yield this.subscriber?.createAndSetAnswer():void 0}finally{n()}})}updateConfiguration(e,t){var n;this.publisher.setConfiguration(e),(n=this.subscriber)==null||n.setConfiguration(e),t&&this.triggerIceRestart()}ensurePCTransportConnection(e,t){return k(this,void 0,void 0,function*(){let n=yield this.connectionLock.lock();try{this.isPublisherConnectionRequired&&this.publisher.getConnectionState()!==`connected`&&this.publisher.getConnectionState()!==`connecting`&&(this.log.debug(`negotiation required, start negotiating`,this.logContext),this.publisher.negotiate()),yield Promise.all(this.requiredTransports?.map(n=>this.ensureTransportConnected(n,e,t)))}finally{n()}})}negotiate(e){return k(this,void 0,void 0,function*(){return new Promise((t,n)=>k(this,void 0,void 0,function*(){let r=setTimeout(()=>{n(`negotiation timed out`)},this.peerConnectionTimeout);e.signal.addEventListener(`abort`,()=>{clearTimeout(r),n(`negotiation aborted`)}),this.publisher.once(Uc.NegotiationStarted,()=>{e.signal.aborted||this.publisher.once(Uc.NegotiationComplete,()=>{clearTimeout(r),t()})}),yield this.publisher.negotiate(e=>{clearTimeout(r),n(e)})}))})}addPublisherTransceiver(e,t){return this.publisher.addTransceiver(e,t)}addPublisherTransceiverOfKind(e,t){return this.publisher.addTransceiverOfKind(e,t)}getMidForReceiver(e){return(this.subscriber?this.subscriber.getTransceivers():this.publisher.getTransceivers()).find(t=>t.receiver===e)?.mid}addPublisherTrack(e){return this.publisher.addTrack(e)}createPublisherDataChannel(e,t){return this.publisher.createDataChannel(e,t)}getConnectedAddress(e){return e===lr.PUBLISHER||e===lr.SUBSCRIBER?this.publisher.getConnectedAddress():this.requiredTransports[0].getConnectedAddress()}get requiredTransports(){let e=[];return this.isPublisherConnectionRequired&&e.push(this.publisher),this.isSubscriberConnectionRequired&&this.subscriber&&e.push(this.subscriber),e}ensureTransportConnected(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.peerConnectionTimeout;return function*(){if(e.getConnectionState()!==`connected`)return new Promise((e,i)=>k(n,void 0,void 0,function*(){let n=()=>{this.log.warn(`abort transport connection`,this.logContext),vo.clearTimeout(a),i(new Za(`room connection has been cancelled`,Xa.Cancelled))};t?.signal.aborted&&n(),t?.signal.addEventListener(`abort`,n);let a=vo.setTimeout(()=>{t?.signal.removeEventListener(`abort`,n),i(new Za(`could not establish pc connection`,Xa.InternalError))},r);for(;this.state!==tl.CONNECTED;)if(yield Lo(50),t?.signal.aborted){i(new Za(`room connection has been cancelled`,Xa.Cancelled));return}vo.clearTimeout(a),t?.signal.removeEventListener(`abort`,n),e()}))}()})}},rl=5e3,il=3e4,al=class e{static fetchRegionSettings(t,n,r){return k(this,void 0,void 0,function*(){let i=yield e.fetchLock.lock();try{let e=yield fetch(`${ol(t)}/regions`,{headers:{authorization:`Bearer ${n}`},signal:r});if(e.ok){let t=Ls(e.headers),n=t?t*1e3:rl;return{regionSettings:yield e.json(),updatedAtInMs:Date.now(),maxAgeInMs:n}}else throw new Za(`Could not fetch region settings: ${e.statusText}`,e.status===401?Xa.NotAllowed:Xa.InternalError,e.status)}catch(e){throw e instanceof Za?e:r?.aborted?new Za(`Region fetching was aborted`,Xa.Cancelled):new Za(`Could not fetch region settings, ${e instanceof Error?`${e.name}: ${e.message}`:e}`,Xa.ServerUnreachable,500)}finally{i()}})}static scheduleRefetch(t,n,r){return k(this,void 0,void 0,function*(){let i=e.settingsTimeouts.get(t.hostname);clearTimeout(i),e.settingsTimeouts.set(t.hostname,setTimeout(()=>k(this,void 0,void 0,function*(){try{let r=yield e.fetchRegionSettings(t,n);e.updateCachedRegionSettings(t,n,r)}catch(i){if(i instanceof Za&&i.reason===Xa.NotAllowed){vi.debug(`token is not valid, cancelling auto region refresh`);return}vi.debug(`auto refetching of region settings failed`,{error:i}),e.scheduleRefetch(t,n,r)}}),r))})}static updateCachedRegionSettings(t,n,r){e.cache.set(t.hostname,r),e.scheduleRefetch(t,n,r.maxAgeInMs)}static stopRefetch(t){let n=e.settingsTimeouts.get(t);n&&(clearTimeout(n),e.settingsTimeouts.delete(t))}static scheduleCleanup(t){let n=e.connectionTrackers.get(t);n&&(n.cleanupTimeout&&clearTimeout(n.cleanupTimeout),n.cleanupTimeout=setTimeout(()=>{let n=e.connectionTrackers.get(t);n&&n.connectionCount===0&&(vi.debug(`stopping region refetch after disconnect delay`,{hostname:t}),e.stopRefetch(t)),n&&(n.cleanupTimeout=void 0)},il))}static cancelCleanup(t){let n=e.connectionTrackers.get(t);n?.cleanupTimeout&&(clearTimeout(n.cleanupTimeout),n.cleanupTimeout=void 0)}notifyConnected(){let t=this.serverUrl.hostname,n=e.connectionTrackers.get(t);n||(n={connectionCount:0},e.connectionTrackers.set(t,n)),n.connectionCount++,e.cancelCleanup(t)}notifyDisconnected(){let t=this.serverUrl.hostname,n=e.connectionTrackers.get(t);n&&(n.connectionCount=Math.max(0,n.connectionCount-1),n.connectionCount===0&&e.scheduleCleanup(t))}constructor(e,t){this.attemptedRegions=[],this.serverUrl=new URL(e),this.token=t}updateToken(e){this.token=e}isCloud(){return ts(this.serverUrl)}getServerUrl(){return this.serverUrl}fetchRegionSettings(t){return k(this,void 0,void 0,function*(){return e.fetchRegionSettings(this.serverUrl,this.token,t)})}getNextBestRegionUrl(t){return k(this,void 0,void 0,function*(){if(!this.isCloud())throw Error(`region availability is only supported for LiveKit Cloud domains`);let n=e.cache.get(this.serverUrl.hostname);(!n||Date.now()-n.updatedAtInMs>n.maxAgeInMs)&&(n=yield this.fetchRegionSettings(t),e.updateCachedRegionSettings(this.serverUrl,this.token,n));let r=n.regionSettings.regions.filter(e=>!this.attemptedRegions.find(t=>t.url===e.url));if(r.length>0){let e=r[0];return this.attemptedRegions.push(e),vi.debug(`next region: ${e.region}`),e.url}else return null})}resetAttempts(){this.attemptedRegions=[]}setServerReportedRegions(t){e.updateCachedRegionSettings(this.serverUrl,this.token,t)}};al.cache=new Map,al.settingsTimeouts=new Map,al.connectionTrackers=new Map,al.fetchLock=new le;function ol(e){return`${e.protocol.replace(`ws`,`http`)}//${e.host}/settings`}var sl=class e extends Error{constructor(t,n,r){super(n),this.code=t,this.message=ul(n,e.MAX_MESSAGE_BYTES),this.data=r?ul(r,e.MAX_DATA_BYTES):void 0}static fromProto(t){return new e(t.code,t.message,t.data)}toProto(){return new Kn({code:this.code,message:this.message,data:this.data})}static builtIn(t,n){return new e(e.ErrorCode[t],e.ErrorMessage[t],n)}};sl.MAX_MESSAGE_BYTES=256,sl.MAX_DATA_BYTES=15360,sl.ErrorCode={APPLICATION_ERROR:1500,CONNECTION_TIMEOUT:1501,RESPONSE_TIMEOUT:1502,RECIPIENT_DISCONNECTED:1503,RESPONSE_PAYLOAD_TOO_LARGE:1504,SEND_FAILED:1505,UNSUPPORTED_METHOD:1400,RECIPIENT_NOT_FOUND:1401,REQUEST_PAYLOAD_TOO_LARGE:1402,UNSUPPORTED_SERVER:1403,UNSUPPORTED_VERSION:1404},sl.ErrorMessage={APPLICATION_ERROR:`Application error in method handler`,CONNECTION_TIMEOUT:`Connection timeout`,RESPONSE_TIMEOUT:`Response timeout`,RECIPIENT_DISCONNECTED:`Recipient disconnected`,RESPONSE_PAYLOAD_TOO_LARGE:`Response payload too large`,SEND_FAILED:`Failed to send`,UNSUPPORTED_METHOD:`Method not supported at destination`,RECIPIENT_NOT_FOUND:`Recipient not found`,REQUEST_PAYLOAD_TOO_LARGE:`Request payload too large`,UNSUPPORTED_SERVER:`RPC not supported by server`,UNSUPPORTED_VERSION:`Unsupported RPC version`};var cl=15360;function ll(e){return new TextEncoder().encode(e).length}function ul(e,t){if(ll(e)<=t)return e;let n=0,r=e.length,i=new TextEncoder;for(;n<r;){let a=Math.floor((n+r+1)/2);i.encode(e.slice(0,a)).length<=t?n=a:r=a-1}return e.slice(0,n)}var dl=2e3;function fl(e,t){if(!t)return 0;let n,r;return`bytesReceived`in e?(n=e.bytesReceived,r=t.bytesReceived):`bytesSent`in e&&(n=e.bytesSent,r=t.bytesSent),n===void 0||r===void 0||e.timestamp===void 0||t.timestamp===void 0?0:(n-r)*8*1e3/(e.timestamp-t.timestamp)}var pl=typeof MediaRecorder<`u`,ml=pl?MediaRecorder:class{constructor(){throw Error(`MediaRecorder is not available in this environment`)}},hl=class extends ml{constructor(e,t){if(!pl)throw Error(`MediaRecorder is not available in this environment`);super(new MediaStream([e.mediaStreamTrack]),t);let n,r,i=()=>r===void 0,a=()=>{this.removeEventListener(`dataavailable`,n),this.removeEventListener(`stop`,a),this.removeEventListener(`error`,o),r?.close(),r=void 0},o=e=>{r?.error(e),this.removeEventListener(`dataavailable`,n),this.removeEventListener(`stop`,a),this.removeEventListener(`error`,o),r=void 0};this.byteStream=new ReadableStream({start:e=>{r=e,n=t=>k(this,void 0,void 0,function*(){let n;if(t.data.arrayBuffer){let e=yield t.data.arrayBuffer();n=new Uint8Array(e)}else if(t.data.byteArray)n=t.data.byteArray;else throw Error(`no data available!`);i()||e.enqueue(n)}),this.addEventListener(`dataavailable`,n)},cancel:()=>{a()}}),this.addEventListener(`stop`,a),this.addEventListener(`error`,o)}};function gl(){return pl}var _l=1e3,vl=1e4,yl=class extends P{get sender(){return this._sender}set sender(e){this._sender=e}get constraints(){return this._constraints}get hasPreConnectBuffer(){return!!this.localTrackRecorder}constructor(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,i=arguments.length>4?arguments[4]:void 0;super(e,t,i),this.manuallyStopped=!1,this._isUpstreamPaused=!1,this.handleTrackMuteEvent=()=>this.debouncedTrackMuteHandler().catch(()=>this.log.debug(`track mute bounce got cancelled by an unmute event`,this.logContext)),this.debouncedTrackMuteHandler=Bc(()=>k(this,void 0,void 0,function*(){yield this.pauseUpstream()}),5e3),this.handleTrackUnmuteEvent=()=>k(this,void 0,void 0,function*(){this.debouncedTrackMuteHandler.cancel(`unmute`),yield this.resumeUpstream()}),this.handleEnded=()=>{this.isInBackground&&(this.reacquireTrack=!0),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent),this.emit(N.Ended,this)},this.reacquireTrack=!1,this.providedByUser=r,this.muteLock=new le,this.pauseUpstreamLock=new le,this.trackChangeLock=new le,this.trackChangeLock.lock().then(t=>k(this,void 0,void 0,function*(){try{yield this.setMediaStreamTrack(e,!0)}finally{t()}})),this._constraints=e.getConstraints(),n&&(this._constraints=n)}get id(){return this._mediaStreamTrack.id}get dimensions(){if(this.kind!==P.Kind.Video)return;let{width:e,height:t}=this._mediaStreamTrack.getSettings();if(e&&t)return{width:e,height:t}}get isUpstreamPaused(){return this._isUpstreamPaused}get isUserProvided(){return this.providedByUser}get mediaStreamTrack(){return this.processor?.processedTrack??this._mediaStreamTrack}get isLocal(){return!0}getSourceTrackSettings(){return this._mediaStreamTrack.getSettings()}setMediaStreamTrack(e,t){return k(this,void 0,void 0,function*(){if(e===this._mediaStreamTrack&&!t)return;this._mediaStreamTrack&&(this.attachedElements.forEach(e=>{Co(this._mediaStreamTrack,e)}),this.debouncedTrackMuteHandler.cancel(`new-track`),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent)),this.mediaStream=new MediaStream([e]),e&&(e.addEventListener(`ended`,this.handleEnded),e.addEventListener(`mute`,this.handleTrackMuteEvent),e.addEventListener(`unmute`,this.handleTrackUnmuteEvent),this._constraints=e.getConstraints());let n;if(this.processor&&e){if(this.log.debug(`restarting processor`,this.logContext),this.kind===`unknown`)throw TypeError(`cannot set processor on track of unknown kind`);this.processorElement&&(So(e,this.processorElement),this.processorElement.muted=!0),yield this.processor.restart({track:e,kind:this.kind,element:this.processorElement}),n=this.processor.processedTrack}this.sender&&this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(n??e)),!this.providedByUser&&this._mediaStreamTrack!==e&&this._mediaStreamTrack.stop(),this._mediaStreamTrack=e,e&&(this._mediaStreamTrack.enabled=!this.isMuted,yield this.resumeUpstream(),this.attachedElements.forEach(t=>{So(n??e,t)}))})}waitForDimensions(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:_l;return function*(){if(e.kind===P.Kind.Audio)throw Error(`cannot get dimensions for audio tracks`);po()?.os===`iOS`&&(yield Lo(10));let n=Date.now();for(;Date.now()-n<t;){let t=e.dimensions;if(t)return t;yield Lo(50)}throw new $a(`unable to get track dimensions after timeout`)}()})}setDeviceId(e){return k(this,void 0,void 0,function*(){return this._constraints.deviceId===e&&this._mediaStreamTrack.getSettings().deviceId===ys(e)||(this._constraints.deviceId=e,this.isMuted)?!0:(yield this.restartTrack(),ys(e)===this._mediaStreamTrack.getSettings().deviceId)})}getDeviceId(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){if(e.source===P.Source.ScreenShare)return;let{deviceId:n,groupId:r}=e._mediaStreamTrack.getSettings(),i=e.kind===P.Kind.Audio?`audioinput`:`videoinput`;return t?oc.getInstance().normalizeDeviceId(i,n,r):n}()})}mute(){return k(this,void 0,void 0,function*(){return this.setTrackMuted(!0),this})}unmute(){return k(this,void 0,void 0,function*(){return this.setTrackMuted(!1),this})}replaceTrack(e,t){return k(this,void 0,void 0,function*(){let n=yield this.trackChangeLock.lock();try{if(!this.sender)throw new $a(`unable to replace an unpublished track`);let n,r;return typeof t==`boolean`?n=t:t!==void 0&&(n=t.userProvidedTrack,r=t.stopProcessor),this.providedByUser=n??!0,this.log.debug(`replace MediaStreamTrack`,this.logContext),yield this.setMediaStreamTrack(e),r&&this.processor&&(yield this.internalStopProcessor()),this}finally{n()}})}restart(e){return k(this,void 0,void 0,function*(){this.manuallyStopped=!1;let t=yield this.trackChangeLock.lock();try{e||=this._constraints;let{deviceId:t,facingMode:n}=e,r=wi(e,[`deviceId`,`facingMode`]);this.log.debug(`restarting track with constraints`,Object.assign(Object.assign({},this.logContext),{constraints:e}));let i={audio:!1,video:!1};this.kind===P.Kind.Video?i.video=t||n?{deviceId:t,facingMode:n}:!0:i.audio=t?Object.assign({deviceId:t},r):!0,this.attachedElements.forEach(e=>{Co(this.mediaStreamTrack,e)}),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.stop();let a=(yield navigator.mediaDevices.getUserMedia(i)).getTracks()[0];return this.kind===P.Kind.Video&&(yield a.applyConstraints(r)),a.addEventListener(`ended`,this.handleEnded),this.log.debug(`re-acquired MediaStreamTrack`,this.logContext),yield this.setMediaStreamTrack(a),this._constraints=e,this.emit(N.Restarted,this),this.manuallyStopped&&(this.log.warn(`track was stopped during a restart, stopping restarted track`,this.logContext),this.stop()),this}finally{t()}})}setTrackMuted(e){this.log.debug(`setting ${this.kind} track ${e?`muted`:`unmuted`}`,this.logContext),!(this.isMuted===e&&this._mediaStreamTrack.enabled!==e)&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?N.Muted:N.Unmuted,this))}get needsReAcquisition(){return this._mediaStreamTrack.readyState!==`live`||this._mediaStreamTrack.muted||!this._mediaStreamTrack.enabled||this.reacquireTrack}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),Zo()&&(this.log.debug(`visibility changed, is in Background: ${this.isInBackground}`,this.logContext),!this.isInBackground&&this.needsReAcquisition&&!this.isUserProvided&&!this.isMuted&&(this.log.debug(`track needs to be reacquired, restarting ${this.source}`,this.logContext),yield this.restart(),this.reacquireTrack=!1))})}stop(){var e;this.manuallyStopped=!0,super.stop(),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent),(e=this.processor)==null||e.destroy(),this.processor=void 0}pauseUpstream(){return k(this,void 0,void 0,function*(){let e=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!0)return;if(!this.sender){this.log.warn(`unable to pause upstream for an unpublished track`,this.logContext);return}this._isUpstreamPaused=!0,this.emit(N.UpstreamPaused,this);let e=po();if(e?.name===`Safari`&&os(e.version,`12.0`)<0)throw new Qa(`pauseUpstream is not supported on Safari < 12.`);this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(null))}finally{e()}})}resumeUpstream(){return k(this,void 0,void 0,function*(){let e=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!1)return;if(!this.sender){this.log.warn(`unable to resume upstream for an unpublished track`,this.logContext);return}this._isUpstreamPaused=!1,this.emit(N.UpstreamResumed,this),this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(this.mediaStreamTrack))}finally{e()}})}getRTCStatsReport(){return k(this,void 0,void 0,function*(){if(this.sender?.getStats)return yield this.sender.getStats()})}setProcessor(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){let r=yield t.trackChangeLock.lock();try{t.log.debug(`setting up processor`,t.logContext);let r=document.createElement(t.kind),i={kind:t.kind,track:t._mediaStreamTrack,element:r,audioContext:t.audioContext};if(yield e.init(i),t.log.debug(`processor initialized`,t.logContext),t.processor&&(yield t.internalStopProcessor()),t.kind===`unknown`)throw TypeError(`cannot set processor on track of unknown kind`);if(So(t._mediaStreamTrack,r),r.muted=!0,r.play().catch(e=>{e instanceof DOMException&&e.name===`AbortError`?(t.log.warn(`failed to play processor element, retrying`,Object.assign(Object.assign({},t.logContext),{error:e})),setTimeout(()=>{r.play().catch(e=>{t.log.error(`failed to play processor element`,Object.assign(Object.assign({},t.logContext),{err:e}))})},100)):t.log.error(`failed to play processor element`,Object.assign(Object.assign({},t.logContext),{error:e}))}),t.processor=e,t.processorElement=r,t.processor.processedTrack){for(let e of t.attachedElements)e!==t.processorElement&&n&&(Co(t._mediaStreamTrack,e),So(t.processor.processedTrack,e));yield t.sender?.replaceTrack(t.processor.processedTrack)}t.emit(N.TrackProcessorUpdate,t.processor)}finally{r()}}()})}getProcessor(){return this.processor}stopProcessor(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){let n=yield e.trackChangeLock.lock();try{yield e.internalStopProcessor(t)}finally{n()}}()})}internalStopProcessor(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var n,r;e.processor&&(e.log.debug(`stopping processor`,e.logContext),(n=e.processor.processedTrack)==null||n.stop(),yield e.processor.destroy(),e.processor=void 0,t||((r=e.processorElement)==null||r.remove(),e.processorElement=void 0),yield e._mediaStreamTrack.applyConstraints(e._constraints),yield e.setMediaStreamTrack(e._mediaStreamTrack,!0),e.emit(N.TrackProcessorUpdate))}()})}startPreConnectBuffer(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!gl()){this.log.warn(`MediaRecorder is not available, cannot start preconnect buffer`,this.logContext);return}if(this.localTrackRecorder){this.log.warn(`preconnect buffer already started`);return}else{let e=`audio/webm;codecs=opus`;MediaRecorder.isTypeSupported(e)||(e=`video/mp4`),this.localTrackRecorder=new hl(this,{mimeType:e})}this.localTrackRecorder.start(e),this.autoStopPreConnectBuffer=setTimeout(()=>{this.log.warn(`preconnect buffer timed out, stopping recording automatically`,this.logContext),this.stopPreConnectBuffer()},vl)}stopPreConnectBuffer(){clearTimeout(this.autoStopPreConnectBuffer),this.localTrackRecorder&&=(this.localTrackRecorder.stop(),void 0)}getPreConnectBuffer(){return this.localTrackRecorder?.byteStream}getPreConnectBufferMimeType(){return this.localTrackRecorder?.mimeType}},bl=class extends yl{get enhancedNoiseCancellation(){return this.isKrispNoiseFilterEnabled}constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0;super(e,P.Kind.Audio,t,n,i),this.stopOnMute=!1,this.isKrispNoiseFilterEnabled=!1,this.monitorSender=()=>k(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let e;try{e=yield this.getSenderStats()}catch(e){this.log.error(`could not get audio sender stats`,Object.assign(Object.assign({},this.logContext),{error:e}));return}e&&this.prevStats&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.handleKrispNoiseFilterEnable=()=>{this.isKrispNoiseFilterEnabled=!0,this.log.debug(`Krisp noise filter enabled`,this.logContext),this.emit(N.AudioTrackFeatureUpdate,this,yn.TF_ENHANCED_NOISE_CANCELLATION,!0)},this.handleKrispNoiseFilterDisable=()=>{this.isKrispNoiseFilterEnabled=!1,this.log.debug(`Krisp noise filter disabled`,this.logContext),this.emit(N.AudioTrackFeatureUpdate,this,yn.TF_ENHANCED_NOISE_CANCELLATION,!1)},this.audioContext=r,this.checkForSilence()}mute(){let e=Object.create(null,{mute:{get:()=>super.mute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug(`Track already muted`,this.logContext),this):(this.source===P.Source.Microphone&&this.stopOnMute&&!this.isUserProvided&&(this.log.debug(`stopping mic track`,this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{t()}})}unmute(){let e=Object.create(null,{unmute:{get:()=>super.unmute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{if(!this.isMuted)return this.log.debug(`Track already unmuted`,this.logContext),this;let t=this._constraints.deviceId&&this._mediaStreamTrack.getSettings().deviceId!==ys(this._constraints.deviceId);return this.source===P.Source.Microphone&&(this.stopOnMute||this._mediaStreamTrack.readyState===`ended`||t)&&!this.isUserProvided&&(this.log.debug(`reacquiring mic track`,this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this}finally{t()}})}restartTrack(e){return k(this,void 0,void 0,function*(){let t;if(e){let n=Bs({audio:e});typeof n.audio!=`boolean`&&(t=n.audio)}yield this.restart(t)})}restart(e){let t=Object.create(null,{restart:{get:()=>super.restart}});return k(this,void 0,void 0,function*(){let n=yield t.restart.call(this,e);return this.checkForSilence(),n})}startMonitor(){$o()&&(this.monitorInterval||=setInterval(()=>{this.monitorSender()},dl))}setProcessor(e){return k(this,void 0,void 0,function*(){let t=yield this.trackChangeLock.lock();try{if(!es()&&!this.audioContext)throw Error(`Audio context needs to be set on LocalAudioTrack in order to enable processors`);this.processor&&(yield this.internalStopProcessor());let t={kind:this.kind,track:this._mediaStreamTrack,audioContext:this.audioContext};this.log.debug(`setting up audio processor ${e.name}`,this.logContext),yield e.init(t),this.processor=e,this.processor.processedTrack&&(yield this.sender?.replaceTrack(this.processor.processedTrack),this.processor.processedTrack.addEventListener(`enable-lk-krisp-noise-filter`,this.handleKrispNoiseFilterEnable),this.processor.processedTrack.addEventListener(`disable-lk-krisp-noise-filter`,this.handleKrispNoiseFilterDisable)),this.emit(N.TrackProcessorUpdate,this.processor)}finally{t()}})}setAudioContext(e){this.audioContext=e}getSenderStats(){return k(this,void 0,void 0,function*(){if(!this.sender?.getStats)return;let e=yield this.sender.getStats(),t;return e.forEach(e=>{e.type===`outbound-rtp`&&(t={type:`audio`,streamId:e.id,packetsSent:e.packetsSent,packetsLost:e.packetsLost,bytesSent:e.bytesSent,timestamp:e.timestamp,roundTripTime:e.roundTripTime,jitter:e.jitter})}),t})}checkForSilence(){return k(this,void 0,void 0,function*(){let e=yield Vs(this);return e&&(this.isMuted||this.log.debug(`silence detected on local audio track`,this.logContext),this.emit(N.AudioSilenceDetected)),e})}};function xl(e,t,n){switch(e.kind){case`audio`:return new bl(e,t,!1,void 0,n);case`video`:return new zl(e,t,!1,n);default:throw new $a(`unsupported track type: ${e.kind}`)}}var Sl=Object.values(jo),Cl=Object.values(Mo),wl=Object.values(No),Tl=[jo.h180,jo.h360],El=[Mo.h180,Mo.h360],Dl=e=>[{scaleResolutionDownBy:2,fps:e.encoding.maxFramerate}].map(t=>new wo(Math.floor(e.width/t.scaleResolutionDownBy),Math.floor(e.height/t.scaleResolutionDownBy),Math.max(15e4,Math.floor(e.encoding.maxBitrate/(t.scaleResolutionDownBy**2*((e.encoding.maxFramerate??30)/(t.fps??30))))),t.fps,e.encoding.priority)),Ol=[`q`,`h`,`f`];function kl(e,t,n,r){let i=r?.videoEncoding;e&&(i=r?.screenShareEncoding);let a=r?.simulcast,o=r?.scalabilityMode,s=r?.videoCodec;if(!i&&!a&&!o||!t||!n)return[{}];i||(i=jl(e,t,n,s),vi.debug(`using video encoding`,i));let c=i.maxFramerate,l=new wo(t,n,i.maxBitrate,i.maxFramerate,i.priority);if(o&&Ho(s)){let e=new Il(o),t=[];if(e.spatial>3)throw Error(`unsupported scalabilityMode: ${o}`);let n=po();if(Jo()||es()||n?.name===`Chrome`&&os(n?.version,`113`)<0){let r=e.suffix==`h`?2:3,a=Xo(n);for(let n=0;n<e.spatial;n+=1)t.push({rid:Ol[2-n],maxBitrate:i.maxBitrate/r**+n,maxFramerate:l.encoding.maxFramerate,scaleResolutionDownBy:a?2**n:void 0});t[0].scalabilityMode=o}else t.push({maxBitrate:i.maxBitrate,maxFramerate:l.encoding.maxFramerate,scalabilityMode:o});return l.encoding.priority&&(t[0].priority=l.encoding.priority,t[0].networkPriority=l.encoding.priority),vi.debug(`using svc encoding`,{encodings:t}),t}if(!a)return[i];let u=[];u=e?Fl(r?.screenShareSimulcastLayers)??Nl(e,l):Fl(r?.videoSimulcastLayers)??Nl(e,l);let d;if(u.length>0){let e=u[0];u.length>1&&([,d]=u);let r=Math.max(t,n);if(r>=960&&d)return Pl(t,n,[e,d,l],c);if(r>=480)return Pl(t,n,[e,l],c)}return Pl(t,n,[l])}function Al(e,t,n){if(!n.backupCodec||n.backupCodec===!0||n.backupCodec.codec===n.videoCodec)return;t!==n.backupCodec.codec&&vi.warn(`requested a different codec than specified as backup`,{serverRequested:t,backup:n.backupCodec.codec}),n.videoCodec=t,n.videoEncoding=n.backupCodec.encoding;let r=e.mediaStreamTrack.getSettings(),i=r.width??e.dimensions?.width,a=r.height??e.dimensions?.height;return e.source===P.Source.ScreenShare&&n.simulcast&&(n.simulcast=!1),kl(e.source===P.Source.ScreenShare,i,a,n)}function jl(e,t,n,r){let i=Ml(e,t,n),{encoding:a}=i[0],o=Math.max(t,n);for(let e=0;e<i.length;e+=1){let t=i[e];if(a=t.encoding,t.width>=o)break}if(r)switch(r){case`av1`:case`h265`:a=Object.assign({},a),a.maxBitrate*=.7;break;case`vp9`:a=Object.assign({},a),a.maxBitrate*=.85;break}return a}function Ml(e,t,n){if(e)return wl;let r=t>n?t/n:n/t;return Math.abs(r-16/9)<Math.abs(r-4/3)?Sl:Cl}function Nl(e,t){if(e)return Dl(t);let{width:n,height:r}=t,i=n>r?n/r:r/n;return Math.abs(i-16/9)<Math.abs(i-4/3)?Tl:El}function Pl(e,t,n,r){let i=[];if(n.forEach((n,a)=>{if(a>=Ol.length)return;let o=Math.min(e,t),s={rid:Ol[a],scaleResolutionDownBy:Math.max(1,o/Math.min(n.width,n.height)),maxBitrate:n.encoding.maxBitrate},c=r&&n.encoding.maxFramerate?Math.min(r,n.encoding.maxFramerate):n.encoding.maxFramerate;c&&(s.maxFramerate=c);let l=Go()||a===0;n.encoding.priority&&l&&(s.priority=n.encoding.priority,s.networkPriority=n.encoding.priority),i.push(s)}),es()&&is()===`ios`){let e;i.forEach(t=>{e?t.maxFramerate&&t.maxFramerate>e&&(e=t.maxFramerate):e=t.maxFramerate});let t=!0;i.forEach(n=>{n.maxFramerate!=e&&(t&&(t=!1,vi.info(`Simulcast on iOS React-Native requires all encodings to share the same framerate.`)),vi.info(`Setting framerate of encoding "${n.rid??``}" to ${e}`),n.maxFramerate=e)})}return i}function Fl(e){if(e)return e.sort((e,t)=>{let{encoding:n}=e,{encoding:r}=t;return n.maxBitrate>r.maxBitrate?1:n.maxBitrate<r.maxBitrate?-1:n.maxBitrate===r.maxBitrate&&n.maxFramerate&&r.maxFramerate?n.maxFramerate>r.maxFramerate?1:-1:0})}var Il=class{constructor(e){let t=e.match(/^L(\d)T(\d)(h|_KEY|_KEY_SHIFT){0,1}$/);if(!t)throw Error(`invalid scalability mode`);if(this.spatial=parseInt(t[1]),this.temporal=parseInt(t[2]),t.length>3)switch(t[3]){case`h`:case`_KEY`:case`_KEY_SHIFT`:this.suffix=t[3]}}toString(){return`L${this.spatial}T${this.temporal}${this.suffix??``}`}};function Ll(e){return e.source===P.Source.ScreenShare||e.constraints.height&&ys(e.constraints.height)>=1080?`maintain-resolution`:`balanced`}var Rl=5e3,zl=class extends yl{get sender(){return this._sender}set sender(e){this._sender=e,this.degradationPreference&&this.setDegradationPreference(this.degradationPreference)}constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0;super(e,P.Kind.Video,t,n,r),this.simulcastCodecs=new Map,this.degradationPreference=`balanced`,this.isCpuConstrained=!1,this.optimizeForPerformance=!1,this.monitorSender=()=>k(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let e;try{e=yield this.getSenderStats()}catch(e){this.log.error(`could not get video sender stats`,Object.assign(Object.assign({},this.logContext),{error:e}));return}let t=new Map(e.map(e=>[e.rid,e])),n=e.some(e=>e.qualityLimitationReason===`cpu`);if(n!==this.isCpuConstrained&&(this.isCpuConstrained=n,this.isCpuConstrained&&this.emit(N.CpuConstrained)),this.prevStats){let e=0;t.forEach((t,n)=>{let r=this.prevStats?.get(n);e+=fl(t,r)}),this._currentBitrate=e}this.prevStats=t}),this.senderLock=new le}get isSimulcast(){return!!(this.sender&&this.sender.getParameters().encodings.length>1)}startMonitor(e){if(this.signalClient=e,!$o())return;let t=this.sender?.getParameters();t&&(this.encodings=t.encodings),!this.monitorInterval&&(this.monitorInterval=setInterval(()=>{this.monitorSender()},dl))}stop(){this._mediaStreamTrack.getConstraints(),this.simulcastCodecs.forEach(e=>{e.mediaStreamTrack.stop()}),super.stop()}pauseUpstream(){let e=Object.create(null,{pauseUpstream:{get:()=>super.pauseUpstream}});return k(this,void 0,void 0,function*(){var t,n,r,i;yield e.pauseUpstream.call(this);try{for(var a=!0,o=Ei(this.simulcastCodecs.values()),s;s=yield o.next(),t=s.done,!t;a=!0)i=s.value,a=!1,yield i.sender?.replaceTrack(null)}catch(e){n={error:e}}finally{try{!a&&!t&&(r=o.return)&&(yield r.call(o))}finally{if(n)throw n.error}}})}resumeUpstream(){let e=Object.create(null,{resumeUpstream:{get:()=>super.resumeUpstream}});return k(this,void 0,void 0,function*(){var t,n,r,i;yield e.resumeUpstream.call(this);try{for(var a=!0,o=Ei(this.simulcastCodecs.values()),s;s=yield o.next(),t=s.done,!t;a=!0){i=s.value,a=!1;let e=i;yield e.sender?.replaceTrack(e.mediaStreamTrack)}}catch(e){n={error:e}}finally{try{!a&&!t&&(r=o.return)&&(yield r.call(o))}finally{if(n)throw n.error}}})}mute(){let e=Object.create(null,{mute:{get:()=>super.mute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug(`Track already muted`,this.logContext),this):(this.source===P.Source.Camera&&!this.isUserProvided&&(this.log.debug(`stopping camera track`,this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{t()}})}unmute(){let e=Object.create(null,{unmute:{get:()=>super.unmute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.source===P.Source.Camera&&!this.isUserProvided&&(this.log.debug(`reacquiring camera track`,this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this):(this.log.debug(`Track already unmuted`,this.logContext),this)}finally{t()}})}setTrackMuted(e){super.setTrackMuted(e);for(let t of this.simulcastCodecs.values())t.mediaStreamTrack.enabled=!e}getSenderStats(){return k(this,void 0,void 0,function*(){if(!this.sender?.getStats)return[];let e=[],t=yield this.sender.getStats();return t.forEach(n=>{if(n.type===`outbound-rtp`){let r={type:`video`,streamId:n.id,frameHeight:n.frameHeight,frameWidth:n.frameWidth,framesPerSecond:n.framesPerSecond,framesSent:n.framesSent,firCount:n.firCount,pliCount:n.pliCount,nackCount:n.nackCount,packetsSent:n.packetsSent,bytesSent:n.bytesSent,qualityLimitationReason:n.qualityLimitationReason,qualityLimitationDurations:n.qualityLimitationDurations,qualityLimitationResolutionChanges:n.qualityLimitationResolutionChanges,rid:n.rid??n.id,retransmittedPacketsSent:n.retransmittedPacketsSent,targetBitrate:n.targetBitrate,timestamp:n.timestamp},i=t.get(n.remoteId);i&&(r.jitter=i.jitter,r.packetsLost=i.packetsLost,r.roundTripTime=i.roundTripTime),e.push(r)}}),e.sort((e,t)=>(t.frameWidth??0)-(e.frameWidth??0)),e})}setPublishingQuality(e){let t=[];for(let n=xo.LOW;n<=xo.HIGH;n+=1)t.push(new zr({quality:n,enabled:n<=e}));this.log.debug(`setting publishing quality. max quality ${e}`,this.logContext),this.setPublishingLayers(Ho(this.codec),t)}restartTrack(e){return k(this,void 0,void 0,function*(){var t,n,r,i;let a;if(e){let t=Bs({video:e});typeof t.video!=`boolean`&&(a=t.video)}yield this.restart(a),this.isCpuConstrained=!1;try{for(var o=!0,s=Ei(this.simulcastCodecs.values()),c;c=yield s.next(),t=c.done,!t;o=!0){i=c.value,o=!1;let e=i;e.sender&&e.sender.transport?.state!==`closed`&&(e.mediaStreamTrack=this.mediaStreamTrack.clone(),yield e.sender.replaceTrack(e.mediaStreamTrack))}}catch(e){n={error:e}}finally{try{!o&&!t&&(r=s.return)&&(yield r.call(s))}finally{if(n)throw n.error}}})}setProcessor(e){let t=Object.create(null,{setProcessor:{get:()=>super.setProcessor}});return k(this,arguments,void 0,function(e){var n=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var i,a,o,s;if(yield t.setProcessor.call(n,e,r),n.processor?.processedTrack)try{for(var c=!0,l=Ei(n.simulcastCodecs.values()),u;u=yield l.next(),i=u.done,!i;c=!0)s=u.value,c=!1,yield s.sender?.replaceTrack(n.processor.processedTrack)}catch(e){a={error:e}}finally{try{!c&&!i&&(o=l.return)&&(yield o.call(l))}finally{if(a)throw a.error}}}()})}setDegradationPreference(e){return k(this,void 0,void 0,function*(){if(this.degradationPreference=e,this.sender)try{this.log.debug(`setting degradationPreference to ${e}`,this.logContext);let t=this.sender.getParameters();t.degradationPreference=e,this.sender.setParameters(t)}catch(e){this.log.warn(`failed to set degradationPreference`,Object.assign({error:e},this.logContext))}})}addSimulcastTrack(e,t){if(this.simulcastCodecs.has(e)){this.log.error(`${e} already added, skipping adding simulcast codec`,this.logContext);return}let n={codec:e,mediaStreamTrack:this.mediaStreamTrack.clone(),sender:void 0,encodings:t};return this.simulcastCodecs.set(e,n),n}setSimulcastTrackSender(e,t){let n=this.simulcastCodecs.get(e);n&&(n.sender=t,setTimeout(()=>{this.subscribedCodecs&&this.setPublishingCodecs(this.subscribedCodecs)},Rl))}setPublishingCodecs(e){return k(this,void 0,void 0,function*(){var t,n,r,i,a,o,s;if(this.log.debug(`setting publishing codecs`,Object.assign(Object.assign({},this.logContext),{codecs:e,currentCodec:this.codec})),!this.codec&&e.length>0)return yield this.setPublishingLayers(Ho(e[0].codec),e[0].qualities),[];this.subscribedCodecs=e;let c=[];try{for(t=!0,n=Ei(e);r=yield n.next(),i=r.done,!i;t=!0){s=r.value,t=!1;let e=s;if(!this.codec||this.codec===e.codec)yield this.setPublishingLayers(Ho(e.codec),e.qualities);else{let t=this.simulcastCodecs.get(e.codec);if(this.log.debug(`try setPublishingCodec for ${e.codec}`,Object.assign(Object.assign({},this.logContext),{simulcastCodecInfo:t})),!t||!t.sender){for(let t of e.qualities)if(t.enabled){c.push(e.codec);break}}else t.encodings&&(this.log.debug(`try setPublishingLayersForSender ${e.codec}`,this.logContext),yield Bl(t.sender,t.encodings,e.qualities,this.senderLock,Ho(e.codec),this.log,this.logContext))}}}catch(e){a={error:e}}finally{try{!t&&!i&&(o=n.return)&&(yield o.call(n))}finally{if(a)throw a.error}}return c})}setPublishingLayers(e,t){return k(this,void 0,void 0,function*(){if(this.optimizeForPerformance){this.log.info(`skipping setPublishingLayers due to optimized publishing performance`,Object.assign(Object.assign({},this.logContext),{qualities:t}));return}this.log.debug(`setting publishing layers`,Object.assign(Object.assign({},this.logContext),{qualities:t})),!(!this.sender||!this.encodings)&&(yield Bl(this.sender,this.encodings,t,this.senderLock,e,this.log,this.logContext))})}prioritizePerformance(){return k(this,void 0,void 0,function*(){if(!this.sender)throw Error(`sender not found`);let e=yield this.senderLock.lock();try{this.optimizeForPerformance=!0;let e=this.sender.getParameters();e.encodings=e.encodings.map((e,t)=>Object.assign(Object.assign({},e),{active:t===0,scaleResolutionDownBy:Math.max(1,Math.ceil((this.mediaStreamTrack.getSettings().height??360)/360)),scalabilityMode:t===0&&Ho(this.codec)?`L1T3`:void 0,maxFramerate:t===0?15:0,maxBitrate:t===0?e.maxBitrate:0})),this.log.debug(`setting performance optimised encodings`,Object.assign(Object.assign({},this.logContext),{encodings:e.encodings})),this.encodings=e.encodings,yield this.sender.setParameters(e)}catch(e){this.log.error(`failed to set performance optimised encodings`,Object.assign(Object.assign({},this.logContext),{error:e})),this.optimizeForPerformance=!1}finally{e()}})}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),Zo()&&this.isInBackground&&this.source===P.Source.Camera&&(this._mediaStreamTrack.enabled=!1)})}};function Bl(e,t,n,r,i,a,o){return k(this,void 0,void 0,function*(){let s=yield r.lock();a.debug(`setPublishingLayersForSender`,Object.assign(Object.assign({},o),{sender:e,qualities:n,senderEncodings:t}));try{let r=e.getParameters(),{encodings:s}=r;if(!s)return;if(s.length!==t.length){a.warn(`cannot set publishing layers, encodings mismatch`,Object.assign(Object.assign({},o),{encodings:s,senderEncodings:t}));return}let c=!1;i&&n.some(e=>e.enabled)&&n.forEach(e=>e.enabled=!0),s.forEach((e,r)=>{let i=e.rid??``;i===``&&(i=`q`);let s=Vl(i),l=n.find(e=>e.quality===s);l&&e.active!==l.enabled&&(c=!0,e.active=l.enabled,a.debug(`setting layer ${l.quality} to ${e.active?`enabled`:`disabled`}`,o),Go()&&(l.enabled?(e.scaleResolutionDownBy=t[r].scaleResolutionDownBy,e.maxBitrate=t[r].maxBitrate,e.maxFrameRate=t[r].maxFrameRate):(e.scaleResolutionDownBy=4,e.maxBitrate=10,e.maxFrameRate=2)))}),c&&(r.encodings=s,a.debug(`setting encodings`,Object.assign(Object.assign({},o),{encodings:r.encodings})),yield e.setParameters(r))}finally{s()}})}function Vl(e){switch(e){case`f`:return xo.HIGH;case`h`:return xo.MEDIUM;case`q`:return xo.LOW;default:return xo.HIGH}}function Hl(e,t,n,r){if(!n)return[new An({quality:xo.HIGH,width:e,height:t,bitrate:0,ssrc:0})];if(r){let r=n[0].scalabilityMode,i=new Il(r),a=[],o=i.suffix==`h`?1.5:2,s=i.suffix==`h`?2:3;for(let r=0;r<i.spatial;r+=1)a.push(new An({quality:Math.min(xo.HIGH,i.spatial-1)-r,width:Math.ceil(e/o**+r),height:Math.ceil(t/o**+r),bitrate:n[0].maxBitrate?Math.ceil(n[0].maxBitrate/s**+r):0,ssrc:0}));return a}return n.map(n=>{let r=n.scaleResolutionDownBy??1;return new An({quality:Vl(n.rid??``),width:Math.ceil(e/r),height:Math.ceil(t/r),bitrate:n.maxBitrate??0,ssrc:0})})}var Ul=`_lossy`,Wl=`_reliable`,Gl=2*1e3,Kl=`leave-reconnect`,ql=3e4,Jl;(function(e){e[e.New=0]=`New`,e[e.Connected=1]=`Connected`,e[e.Disconnected=2]=`Disconnected`,e[e.Reconnecting=3]=`Reconnecting`,e[e.Closed=4]=`Closed`})(Jl||={});var Yl=class extends Ai.EventEmitter{get isClosed(){return this._isClosed}get pendingReconnect(){return!!this.reconnectTimeout}constructor(e){super(),this.options=e,this.rtcConfig={},this.peerConnectionTimeout=el.peerConnectionTimeout,this.fullReconnectOnNext=!1,this.latestRemoteOfferId=0,this.subscriberPrimary=!1,this.pcState=Jl.New,this._isClosed=!0,this.pendingTrackResolvers={},this.reconnectAttempts=0,this.reconnectStart=0,this.attemptingReconnect=!1,this.joinAttempts=0,this.maxJoinAttempts=1,this.shouldFailNext=!1,this.log=vi,this.reliableDataSequence=1,this.reliableMessageBuffer=new Tc,this.reliableReceivedState=new Ec(ql),this.midToTrackId={},this.isWaitingForNetworkReconnect=!1,this.handleDataChannel=e=>k(this,[e],void 0,function(e){var t=this;let{channel:n}=e;return function*(){if(n){if(n.label===Wl)t.reliableDCSub=n;else if(n.label===Ul)t.lossyDCSub=n;else return;t.log.debug(`on data channel ${n.id}, ${n.label}`,t.logContext),n.onmessage=t.handleDataMessage}}()}),this.handleDataMessage=e=>k(this,void 0,void 0,function*(){let t=yield this.dataProcessLock.lock();try{let t;if(e.data instanceof ArrayBuffer)t=e.data;else if(e.data instanceof Blob)t=yield e.data.arrayBuffer();else{this.log.error(`unsupported data type`,Object.assign(Object.assign({},this.logContext),{data:e.data}));return}let n=Mn.fromBinary(new Uint8Array(t));if(n.sequence>0&&n.participantSid!==``){let e=this.reliableReceivedState.get(n.participantSid);if(e&&n.sequence<=e)return;this.reliableReceivedState.set(n.participantSid,n.sequence)}if(n.value?.case===`speaker`)this.emit(M.ActiveSpeakersUpdate,n.value.value.speakers);else if(n.value?.case===`encryptedPacket`){if(!this.e2eeManager){this.log.error(`Received encrypted packet but E2EE not set up`,this.logContext);return}let e=yield this.e2eeManager?.handleEncryptedData(n.value.value.encryptedValue,n.value.value.iv,n.participantIdentity,n.value.value.keyIndex),t=new Mn({value:Fn.fromBinary(e.payload).value,participantIdentity:n.participantIdentity,participantSid:n.participantSid});t.value?.case===`user`&&Ql(t,t.value.value),this.emit(M.DataPacketReceived,t,n.value.value.encryptionType)}else n.value?.case===`user`&&Ql(n,n.value.value),this.emit(M.DataPacketReceived,n,Dn.NONE)}finally{t()}}),this.handleDataError=e=>{let t=e.currentTarget.maxRetransmits===0?`lossy`:`reliable`;if(e instanceof ErrorEvent&&e.error){let{error:n}=e.error;this.log.error(`DataChannel error on ${t}: ${e.message}`,Object.assign(Object.assign({},this.logContext),{error:n}))}else this.log.error(`Unknown DataChannel error on ${t}`,Object.assign(Object.assign({},this.logContext),{event:e}))},this.handleBufferedAmountLow=e=>{let t=e.currentTarget.maxRetransmits===0?Nn.LOSSY:Nn.RELIABLE;this.updateAndEmitDCBufferStatus(t)},this.handleDisconnect=(e,t)=>{if(this._isClosed)return;this.log.warn(`${e} disconnected`,this.logContext),this.reconnectAttempts===0&&(this.reconnectStart=Date.now());let n=e=>{this.log.warn(`could not recover connection after ${this.reconnectAttempts} attempts, ${e}ms. giving up`,this.logContext),this.emit(M.Disconnected),this.close()},r=Date.now()-this.reconnectStart,i=this.getNextRetryDelay({elapsedMs:r,retryCount:this.reconnectAttempts});if(i===null){n(r);return}e===Kl&&(i=0),this.log.debug(`reconnecting in ${i}ms`,this.logContext),this.clearReconnectTimeout(),this.token&&this.regionUrlProvider&&this.regionUrlProvider.updateToken(this.token),this.reconnectTimeout=vo.setTimeout(()=>this.attemptReconnect(t).finally(()=>this.reconnectTimeout=void 0),i)},this.waitForRestarted=()=>new Promise((e,t)=>{this.pcState===Jl.Connected&&e();let n=()=>{this.off(M.Disconnected,r),e()},r=()=>{this.off(M.Restarted,n),t()};this.once(M.Restarted,n),this.once(M.Disconnected,r)}),this.updateAndEmitDCBufferStatus=e=>{if(e===Nn.RELIABLE){let t=this.dataChannelForKind(e);t&&this.reliableMessageBuffer.alignBufferedAmount(t.bufferedAmount)}let t=this.isBufferStatusLow(e);t!==void 0&&t!==this.dcBufferStatus.get(e)&&(this.dcBufferStatus.set(e,t),this.emit(M.DCBufferStatusChanged,t,e))},this.isBufferStatusLow=e=>{let t=this.dataChannelForKind(e);if(t)return t.bufferedAmount<=t.bufferedAmountLowThreshold},this.handleBrowserOnLine=()=>k(this,void 0,void 0,function*(){this.url&&(yield fetch(xs(this.url),{method:`HEAD`}).then(e=>e.ok).catch(()=>!1))&&(this.log.info(`detected network reconnected`),(this.client.currentState===vc.RECONNECTING||this.isWaitingForNetworkReconnect&&this.client.currentState===vc.CONNECTED)&&(this.clearReconnectTimeout(),this.attemptReconnect(_n.RR_SIGNAL_DISCONNECTED),this.isWaitingForNetworkReconnect=!1))}),this.handleBrowserOffline=()=>k(this,void 0,void 0,function*(){if(this.url)try{yield Promise.race([fetch(xs(this.url),{method:`HEAD`}),Lo(4e3).then(()=>Promise.reject())])}catch{window.navigator.onLine===!1&&(this.log.info(`detected network interruption`),this.isWaitingForNetworkReconnect=!0)}}),this.log=yi(e.loggerName??_i.Engine),this.loggerOptions={loggerName:e.loggerName,loggerContextCb:()=>this.logContext},this.client=new bc(void 0,this.loggerOptions),this.client.signalLatency=this.options.expSignalLatency,this.reconnectPolicy=this.options.reconnectPolicy,this.closingLock=new le,this.dataProcessLock=new le,this.dcBufferStatus=new Map([[Nn.LOSSY,!0],[Nn.RELIABLE,!0]]),this.client.onParticipantUpdate=e=>this.emit(M.ParticipantUpdate,e),this.client.onConnectionQuality=e=>this.emit(M.ConnectionQualityUpdate,e),this.client.onRoomUpdate=e=>this.emit(M.RoomUpdate,e),this.client.onSubscriptionError=e=>this.emit(M.SubscriptionError,e),this.client.onSubscriptionPermissionUpdate=e=>this.emit(M.SubscriptionPermissionUpdate,e),this.client.onSpeakersChanged=e=>this.emit(M.SpeakersChanged,e),this.client.onStreamStateUpdate=e=>this.emit(M.StreamStateChanged,e),this.client.onRequestResponse=e=>this.emit(M.SignalRequestResponse,e)}get logContext(){return{room:this.latestJoinResponse?.room?.name,roomID:this.latestJoinResponse?.room?.sid,participant:this.latestJoinResponse?.participant?.identity,pID:this.participantSid}}join(e,t,n,r){return k(this,void 0,void 0,function*(){this.url=e,this.token=t,this.signalOpts=n,this.maxJoinAttempts=n.maxRetries;try{this.joinAttempts+=1,this.setupSignalClientCallbacks();let i=yield this.client.join(e,t,n,r);return this._isClosed=!1,this.latestJoinResponse=i,this.subscriberPrimary=i.subscriberPrimary,this.pcManager||(yield this.configure(i)),(!this.subscriberPrimary||i.fastPublish)&&this.negotiate().catch(e=>{vi.error(e,this.logContext)}),this.registerOnLineListener(),this.clientConfiguration=i.clientConfiguration,this.emit(M.SignalConnected,i),i}catch(i){if(i instanceof Za&&i.reason===Xa.ServerUnreachable&&(this.log.warn(`Couldn't connect to server, attempt ${this.joinAttempts} of ${this.maxJoinAttempts}`,this.logContext),this.joinAttempts<this.maxJoinAttempts))return this.join(e,t,n,r);throw i}})}close(){return k(this,void 0,void 0,function*(){let e=yield this.closingLock.lock();if(this.isClosed){e();return}try{this._isClosed=!0,this.joinAttempts=0,this.emit(M.Closing),this.removeAllListeners(),this.deregisterOnLineListener(),this.clearPendingReconnect(),yield this.cleanupPeerConnections(),yield this.cleanupClient()}finally{e()}})}cleanupPeerConnections(){return k(this,void 0,void 0,function*(){yield this.pcManager?.close(),this.pcManager=void 0;let e=e=>{e&&(e.close(),e.onbufferedamountlow=null,e.onclose=null,e.onclosing=null,e.onerror=null,e.onmessage=null,e.onopen=null)};e(this.lossyDC),e(this.lossyDCSub),e(this.reliableDC),e(this.reliableDCSub),this.lossyDC=void 0,this.lossyDCSub=void 0,this.reliableDC=void 0,this.reliableDCSub=void 0,this.reliableMessageBuffer=new Tc,this.reliableDataSequence=1,this.reliableReceivedState.clear()})}cleanupClient(){return k(this,void 0,void 0,function*(){yield this.client.close(),this.client.resetCallbacks()})}addTrack(e){if(this.pendingTrackResolvers[e.cid])throw new $a(`a track with the same ID has already been published`);return new Promise((t,n)=>{let r=setTimeout(()=>{delete this.pendingTrackResolvers[e.cid],n(new Za(`publication of local track timed out, no response from server`,Xa.Timeout))},1e4);this.pendingTrackResolvers[e.cid]={resolve:e=>{clearTimeout(r),t(e)},reject:()=>{clearTimeout(r),n(Error(`Cancelled publication by calling unpublish`))}},this.client.sendAddTrack(e)})}removeTrack(e){if(e.track&&this.pendingTrackResolvers[e.track.id]){let{reject:t}=this.pendingTrackResolvers[e.track.id];t&&t(),delete this.pendingTrackResolvers[e.track.id]}try{return this.pcManager.removeTrack(e),!0}catch(e){this.log.warn(`failed to remove track`,Object.assign(Object.assign({},this.logContext),{error:e}))}return!1}updateMuteStatus(e,t){this.client.sendMuteTrack(e,t)}get dataSubscriberReadyState(){return this.reliableDCSub?.readyState}getConnectedServerAddress(){return k(this,void 0,void 0,function*(){return this.pcManager?.getConnectedAddress()})}setRegionUrlProvider(e){this.regionUrlProvider=e}configure(e){return k(this,void 0,void 0,function*(){if(this.pcManager&&this.pcManager.currentState!==tl.NEW)return;this.participantSid=e.participant?.sid;let t=this.makeRTCConfiguration(e);this.pcManager=new nl(t,this.options.singlePeerConnection?`publisher-only`:e.subscriberPrimary?`subscriber-primary`:`publisher-primary`,this.loggerOptions),this.emit(M.TransportsCreated,this.pcManager.publisher,this.pcManager.subscriber),this.pcManager.onIceCandidate=(e,t)=>{this.client.sendIceCandidate(e,t)},this.pcManager.onPublisherOffer=(e,t)=>{this.client.sendOffer(e,t)},this.pcManager.onDataChannel=this.handleDataChannel,this.pcManager.onStateChange=(t,n,r)=>k(this,void 0,void 0,function*(){if(this.log.debug(`primary PC state changed ${t}`,this.logContext),[`closed`,`disconnected`,`failed`].includes(n)&&(this.publisherConnectionPromise=void 0),t===tl.CONNECTED){let t=this.pcState===Jl.New;this.pcState=Jl.Connected,t&&this.emit(M.Connected,e)}else t===tl.FAILED&&(this.pcState===Jl.Connected||this.pcState===Jl.Reconnecting)&&(this.pcState=Jl.Disconnected,this.handleDisconnect(`peerconnection failed`,r===`failed`?_n.RR_SUBSCRIBER_FAILED:_n.RR_PUBLISHER_FAILED));let i=this.client.isDisconnected||this.client.currentState===vc.RECONNECTING,a=[tl.FAILED,tl.CLOSING,tl.CLOSED].includes(t);i&&a&&!this._isClosed&&this.emit(M.Offline)}),this.pcManager.onTrack=e=>{e.streams.length!==0&&this.emit(M.MediaTrackAdded,e.track,e.streams[0],e.receiver)},Zl(e.serverInfo?.protocol)||this.createDataChannels()})}setupSignalClientCallbacks(){this.client.onAnswer=(e,t,n)=>k(this,void 0,void 0,function*(){this.pcManager&&(this.log.debug(`received server answer`,Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,midToTrackId:n})),this.midToTrackId=n,yield this.pcManager.setPublisherAnswer(e,t))}),this.client.onTrickle=(e,t)=>{this.pcManager&&(this.log.debug(`got ICE candidate from peer`,Object.assign(Object.assign({},this.logContext),{candidate:e,target:t})),this.pcManager.addIceCandidate(e,t))},this.client.onOffer=(e,t,n)=>k(this,void 0,void 0,function*(){if(this.latestRemoteOfferId=t,!this.pcManager)return;this.midToTrackId=n;let r=yield this.pcManager.createSubscriberAnswerFromOffer(e,t);r&&this.client.sendAnswer(r,t)}),this.client.onLocalTrackPublished=e=>{if(this.log.debug(`received trackPublishedResponse`,Object.assign(Object.assign({},this.logContext),{cid:e.cid,track:e.track?.sid})),!this.pendingTrackResolvers[e.cid]){this.log.error(`missing track resolver for ${e.cid}`,Object.assign(Object.assign({},this.logContext),{cid:e.cid}));return}let{resolve:t}=this.pendingTrackResolvers[e.cid];delete this.pendingTrackResolvers[e.cid],t(e.track)},this.client.onLocalTrackUnpublished=e=>{this.emit(M.LocalTrackUnpublished,e)},this.client.onLocalTrackSubscribed=e=>{this.emit(M.LocalTrackSubscribed,e)},this.client.onTokenRefresh=e=>{var t;this.token=e,(t=this.regionUrlProvider)==null||t.updateToken(e)},this.client.onRemoteMuteChanged=(e,t)=>{this.emit(M.RemoteMute,e,t)},this.client.onSubscribedQualityUpdate=e=>{this.emit(M.SubscribedQualityUpdate,e)},this.client.onRoomMoved=e=>{this.participantSid=e.participant?.sid,this.latestJoinResponse&&(this.latestJoinResponse.room=e.room),this.emit(M.RoomMoved,e)},this.client.onMediaSectionsRequirement=e=>{var t,n;let r={direction:`recvonly`};for(let n=0;n<e.numAudios;n++)(t=this.pcManager)==null||t.addPublisherTransceiverOfKind(`audio`,r);for(let t=0;t<e.numVideos;t++)(n=this.pcManager)==null||n.addPublisherTransceiverOfKind(`video`,r);this.negotiate()},this.client.onClose=()=>{this.handleDisconnect(`signal`,_n.RR_SIGNAL_DISCONNECTED)},this.client.onLeave=e=>{switch(this.log.debug(`client leave request`,Object.assign(Object.assign({},this.logContext),{reason:e?.reason})),e.regions&&this.regionUrlProvider&&(this.log.debug(`updating regions`,this.logContext),this.regionUrlProvider.setServerReportedRegions({updatedAtInMs:Date.now(),maxAgeInMs:rl,regionSettings:e.regions})),e.action){case kr.DISCONNECT:this.emit(M.Disconnected,e?.reason),this.close();break;case kr.RECONNECT:this.fullReconnectOnNext=!0,this.handleDisconnect(Kl);break;case kr.RESUME:this.handleDisconnect(Kl)}}}makeRTCConfiguration(e){let t=Object.assign({},this.rtcConfig);if(this.signalOpts?.e2eeEnabled&&(this.log.debug(`E2EE - setting up transports with insertable streams`,this.logContext),t.encodedInsertableStreams=!0),e.iceServers&&!t.iceServers){let n=[];e.iceServers.forEach(e=>{let t={urls:e.urls};e.username&&(t.username=e.username),e.credential&&(t.credential=e.credential),n.push(t)}),t.iceServers=n}return e.clientConfiguration&&e.clientConfiguration.forceRelay===hn.ENABLED&&(t.iceTransportPolicy=`relay`),t.sdpSemantics=`unified-plan`,t.continualGatheringPolicy=`gather_continually`,t}createDataChannels(){this.pcManager&&(this.lossyDC&&(this.lossyDC.onmessage=null,this.lossyDC.onerror=null),this.reliableDC&&(this.reliableDC.onmessage=null,this.reliableDC.onerror=null),this.lossyDC=this.pcManager.createPublisherDataChannel(Ul,{ordered:!1,maxRetransmits:0}),this.reliableDC=this.pcManager.createPublisherDataChannel(Wl,{ordered:!0}),this.lossyDC.onmessage=this.handleDataMessage,this.reliableDC.onmessage=this.handleDataMessage,this.lossyDC.onerror=this.handleDataError,this.reliableDC.onerror=this.handleDataError,this.lossyDC.bufferedAmountLowThreshold=65535,this.reliableDC.bufferedAmountLowThreshold=65535,this.lossyDC.onbufferedamountlow=this.handleBufferedAmountLow,this.reliableDC.onbufferedamountlow=this.handleBufferedAmountLow)}createSender(e,t,n){return k(this,void 0,void 0,function*(){if(Ro())return yield this.createTransceiverRTCRtpSender(e,t,n);if(zo())return this.log.warn(`using add-track fallback`,this.logContext),yield this.createRTCRtpSender(e.mediaStreamTrack);throw new to(`Required webRTC APIs not supported on this device`)})}createSimulcastSender(e,t,n,r){return k(this,void 0,void 0,function*(){if(Ro())return this.createSimulcastTransceiverSender(e,t,n,r);if(zo())return this.log.debug(`using add-track fallback`,this.logContext),this.createRTCRtpSender(e.mediaStreamTrack);throw new to(`Cannot stream on this device`)})}createTransceiverRTCRtpSender(e,t,n){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);let r=[];e.mediaStream&&r.push(e.mediaStream),ks(e)&&(e.codec=t.videoCodec);let i={direction:`sendonly`,streams:r};return n&&(i.sendEncodings=n),(yield this.pcManager.addPublisherTransceiver(e.mediaStreamTrack,i)).sender})}createSimulcastTransceiverSender(e,t,n,r){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);let i={direction:`sendonly`};r&&(i.sendEncodings=r);let a=yield this.pcManager.addPublisherTransceiver(t.mediaStreamTrack,i);if(n.videoCodec)return e.setSimulcastTrackSender(n.videoCodec,a.sender),a.sender})}createRTCRtpSender(e){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);return this.pcManager.addPublisherTrack(e)})}attemptReconnect(e){return k(this,void 0,void 0,function*(){if(!this._isClosed){if(this.attemptingReconnect){vi.warn(`already attempting reconnect, returning early`,this.logContext);return}(this.clientConfiguration?.resumeConnection===hn.DISABLED||(this.pcManager?.currentState??tl.NEW)===tl.NEW)&&(this.fullReconnectOnNext=!0);try{this.attemptingReconnect=!0,this.fullReconnectOnNext?yield this.restartConnection():yield this.resumeConnection(e),this.clearPendingReconnect(),this.fullReconnectOnNext=!1}catch(e){this.reconnectAttempts+=1;let t=!0;e instanceof to?(this.log.debug(`received unrecoverable error`,Object.assign(Object.assign({},this.logContext),{error:e})),t=!1):e instanceof Xl||(this.fullReconnectOnNext=!0),t?this.handleDisconnect(`reconnect`,_n.RR_UNKNOWN):(this.log.info(`could not recover connection after ${this.reconnectAttempts} attempts, ${Date.now()-this.reconnectStart}ms. giving up`,this.logContext),this.emit(M.Disconnected),yield this.close())}finally{this.attemptingReconnect=!1}}})}getNextRetryDelay(e){try{return this.reconnectPolicy.nextRetryDelayInMs(e)}catch(e){this.log.warn(`encountered error in reconnect policy`,Object.assign(Object.assign({},this.logContext),{error:e}))}return null}restartConnection(e){return k(this,void 0,void 0,function*(){var t,n;try{if(!this.url||!this.token)throw new to(`could not reconnect, url or token not saved`);this.log.info(`reconnecting, attempt: ${this.reconnectAttempts}`,this.logContext),this.emit(M.Restarting),this.client.isDisconnected||(yield this.client.sendLeave()),yield this.cleanupPeerConnections(),yield this.cleanupClient();let n;try{if(!this.signalOpts)throw this.log.warn(`attempted connection restart, without signal options present`,this.logContext),new Xl;n=yield this.join(e??this.url,this.token,this.signalOpts)}catch(e){throw e instanceof Za&&e.reason===Xa.NotAllowed?new to(`could not reconnect, token might be expired`):new Xl}if(this.shouldFailNext)throw this.shouldFailNext=!1,Error(`simulated failure`);if(this.client.setReconnected(),this.emit(M.SignalRestarted,n),yield this.waitForPCReconnected(),this.client.currentState!==vc.CONNECTED)throw new Xl(`Signal connection got severed during reconnect`);(t=this.regionUrlProvider)==null||t.resetAttempts(),this.emit(M.Restarted)}catch(e){let t=yield this.regionUrlProvider?.getNextBestRegionUrl();if(t){yield this.restartConnection(t);return}else throw(n=this.regionUrlProvider)==null||n.resetAttempts(),e}})}resumeConnection(e){return k(this,void 0,void 0,function*(){if(!this.url||!this.token)throw new to(`could not reconnect, url or token not saved`);if(!this.pcManager)throw new to(`publisher and subscriber connections unset`);this.log.info(`resuming signal connection, attempt ${this.reconnectAttempts}`,this.logContext),this.emit(M.Resuming);let t;try{this.setupSignalClientCallbacks(),t=yield this.client.reconnect(this.url,this.token,this.participantSid,e)}catch(e){let t=``;throw e instanceof Error&&(t=e.message,this.log.error(e.message,Object.assign(Object.assign({},this.logContext),{error:e}))),e instanceof Za&&e.reason===Xa.NotAllowed?new to(`could not reconnect, token might be expired`):e instanceof Za&&e.reason===Xa.LeaveRequest?e:new Xl(t)}if(this.emit(M.SignalResumed),t){let e=this.makeRTCConfiguration(t);this.pcManager.updateConfiguration(e),this.latestJoinResponse&&(this.latestJoinResponse.serverInfo=t.serverInfo)}else this.log.warn(`Did not receive reconnect response`,this.logContext);if(this.shouldFailNext)throw this.shouldFailNext=!1,Error(`simulated failure`);if(yield this.pcManager.triggerIceRestart(),yield this.waitForPCReconnected(),this.client.currentState!==vc.CONNECTED)throw new Xl(`Signal connection got severed during reconnect`);this.client.setReconnected(),this.reliableDC?.readyState===`open`&&this.reliableDC.id===null&&this.createDataChannels(),t?.lastMessageSeq&&this.resendReliableMessagesForResume(t.lastMessageSeq),this.emit(M.Resumed)})}waitForPCInitialConnection(e,t){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`PC manager is closed`);yield this.pcManager.ensurePCTransportConnection(t,e)})}waitForPCReconnected(){return k(this,void 0,void 0,function*(){this.pcState=Jl.Reconnecting,this.log.debug(`waiting for peer connection to reconnect`,this.logContext);try{if(yield Lo(Gl),!this.pcManager)throw new to(`PC manager is closed`);yield this.pcManager.ensurePCTransportConnection(void 0,this.peerConnectionTimeout),this.pcState=Jl.Connected}catch(e){throw this.pcState=Jl.Disconnected,new Za(`could not establish PC connection, ${e.message}`,Xa.InternalError)}})}publishRpcResponse(e,t,n,r){return k(this,void 0,void 0,function*(){let i=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcResponse`,value:new Gn({requestId:t,value:r?{case:`error`,value:r.toProto()}:{case:`payload`,value:n??``}})}});yield this.sendDataPacket(i,Nn.RELIABLE)})}publishRpcAck(e,t){return k(this,void 0,void 0,function*(){let n=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcAck`,value:new Wn({requestId:t})}});yield this.sendDataPacket(n,Nn.RELIABLE)})}sendDataPacket(e,t){return k(this,void 0,void 0,function*(){if(yield this.ensurePublisherConnected(t),this.e2eeManager&&this.e2eeManager.isDataChannelEncryptionEnabled){let t=Ja(e);if(t){let n=yield this.e2eeManager.encryptData(t.toBinary());e.value={case:`encryptedPacket`,value:new Pn({encryptedValue:n.payload,iv:n.iv,keyIndex:n.keyIndex})}}}t===Nn.RELIABLE&&(e.sequence=this.reliableDataSequence,this.reliableDataSequence+=1);let n=e.toBinary();yield this.waitForBufferStatusLow(t);let r=this.dataChannelForKind(t);if(r){if(t===Nn.RELIABLE&&this.reliableMessageBuffer.push({data:n,sequence:e.sequence}),this.attemptingReconnect)return;r.send(n)}this.updateAndEmitDCBufferStatus(t)})}resendReliableMessagesForResume(e){return k(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(Nn.RELIABLE);let t=this.dataChannelForKind(Nn.RELIABLE);t&&(this.reliableMessageBuffer.popToSequence(e),this.reliableMessageBuffer.getAll().forEach(e=>{t.send(e.data)})),this.updateAndEmitDCBufferStatus(Nn.RELIABLE)})}waitForBufferStatusLow(e){return new Promise((t,n)=>k(this,void 0,void 0,function*(){if(this.isBufferStatusLow(e))t();else{let r=()=>n(`Engine closed`);for(this.once(M.Closing,r);!this.dcBufferStatus.get(e);)yield Lo(10);this.off(M.Closing,r),t()}}))}ensureDataTransportConnected(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.subscriberPrimary;return function*(){if(!t.pcManager)throw new to(`PC manager is closed`);let r=n?t.pcManager.subscriber:t.pcManager.publisher,i=n?`Subscriber`:`Publisher`;if(!r)throw new Za(`${i} connection not set`,Xa.InternalError);let a=!1;if(!n&&!t.dataChannelForKind(e,n)&&(t.createDataChannels(),a=!0),!a&&!n&&!t.pcManager.publisher.isICEConnected&&t.pcManager.publisher.getICEConnectionState()!==`checking`&&(a=!0),a&&t.negotiate().catch(e=>{vi.error(e,t.logContext)}),t.dataChannelForKind(e,n)?.readyState===`open`)return;let o=new Date().getTime()+t.peerConnectionTimeout;for(;new Date().getTime()<o;){if(r.isICEConnected&&t.dataChannelForKind(e,n)?.readyState===`open`)return;yield Lo(50)}throw new Za(`could not establish ${i} connection, state: ${r.getICEConnectionState()}`,Xa.InternalError)}()})}ensurePublisherConnected(e){return k(this,void 0,void 0,function*(){this.publisherConnectionPromise||=this.ensureDataTransportConnected(e,!1),yield this.publisherConnectionPromise})}verifyTransport(){return!(!this.pcManager||this.pcManager.currentState!==tl.CONNECTED||!this.client.ws||this.client.ws.readyState===WebSocket.CLOSED)}negotiate(){return k(this,void 0,void 0,function*(){return new Promise((e,t)=>k(this,void 0,void 0,function*(){if(!this.pcManager){t(new no(`PC manager is closed`));return}this.pcManager.requirePublisher(),this.pcManager.publisher.getTransceivers().length==0&&!this.lossyDC&&!this.reliableDC&&this.createDataChannels();let n=new AbortController,r=()=>{n.abort(),this.log.debug(`engine disconnected while negotiation was ongoing`,this.logContext),e()};this.isClosed&&t(`cannot negotiate on closed engine`),this.on(M.Closing,r),this.pcManager.publisher.once(Uc.RTPVideoPayloadTypes,e=>{let t=new Map;e.forEach(e=>{let n=e.codec.toLowerCase();vs(n)&&t.set(e.payload,n)}),this.emit(M.RTPVideoMapUpdate,t)});try{yield this.pcManager.negotiate(n),e()}catch(e){e instanceof no&&(this.fullReconnectOnNext=!0),this.handleDisconnect(`negotiation`,_n.RR_UNKNOWN),t(e)}finally{this.off(M.Closing,r)}}))})}dataChannelForKind(e,t){if(t){if(e===Nn.LOSSY)return this.lossyDCSub;if(e===Nn.RELIABLE)return this.reliableDCSub}else{if(e===Nn.LOSSY)return this.lossyDC;if(e===Nn.RELIABLE)return this.reliableDC}}sendSyncState(e,t){if(!this.pcManager){this.log.warn(`sync state cannot be sent without peer connection setup`,this.logContext);return}let n=this.pcManager.publisher.getLocalDescription(),r=this.pcManager.publisher.getRemoteDescription(),i=this.pcManager.subscriber?.getRemoteDescription(),a=this.pcManager.subscriber?.getLocalDescription(),o=this.signalOpts?.autoSubscribe??!0,s=[],c=[];e.forEach(e=>{e.isDesired!==o&&s.push(e.trackSid),e.isEnabled||c.push(e.trackSid)}),this.client.sendSyncState(new qr({answer:this.options.singlePeerConnection?r?Sc({sdp:r.sdp,type:r.type}):void 0:a?Sc({sdp:a.sdp,type:a.type}):void 0,offer:this.options.singlePeerConnection?n?Sc({sdp:n.sdp,type:n.type}):void 0:i?Sc({sdp:i.sdp,type:i.type}):void 0,subscription:new wr({trackSids:s,subscribe:!o,participantTracks:[]}),publishTracks:qs(t),dataChannels:this.dataChannelsInfo(),trackSidsDisabled:c,datachannelReceiveStates:this.reliableReceivedState.map((e,t)=>new Jr({publisherSid:t,lastSeq:e}))}))}failNext(){this.shouldFailNext=!0}dataChannelsInfo(){let e=[],t=(t,n)=>{t?.id!==void 0&&t.id!==null&&e.push(new Yr({label:t.label,id:t.id,target:n}))};return t(this.dataChannelForKind(Nn.LOSSY),lr.PUBLISHER),t(this.dataChannelForKind(Nn.RELIABLE),lr.PUBLISHER),t(this.dataChannelForKind(Nn.LOSSY,!0),lr.SUBSCRIBER),t(this.dataChannelForKind(Nn.RELIABLE,!0),lr.SUBSCRIBER),e}clearReconnectTimeout(){this.reconnectTimeout&&vo.clearTimeout(this.reconnectTimeout)}clearPendingReconnect(){this.clearReconnectTimeout(),this.reconnectAttempts=0}registerOnLineListener(){$o()&&(window.addEventListener(`online`,this.handleBrowserOnLine),window.addEventListener(`offline`,this.handleBrowserOffline))}deregisterOnLineListener(){$o()&&(window.removeEventListener(`online`,this.handleBrowserOnLine),window.removeEventListener(`offline`,this.handleBrowserOffline))}getTrackIdForReceiver(e){let t=this.pcManager?.getMidForReceiver(e);if(t){let e=Object.entries(this.midToTrackId).find(e=>{let[n]=e;return n===t});if(e)return e[1]}}},Xl=class extends Error{};function Zl(e){return e!==void 0&&e>13}function Ql(e,t){let n=e.participantIdentity?e.participantIdentity:t.participantIdentity;e.participantIdentity=n,t.participantIdentity=n;let r=e.destinationIdentities.length===0?t.destinationIdentities:e.destinationIdentities;e.destinationIdentities=r,t.destinationIdentities=r}var $l=class{get info(){return this._info}validateBytesReceived(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(!(typeof this.totalByteSize!=`number`||this.totalByteSize===0)){if(e&&this.bytesReceived<this.totalByteSize)throw new oo(`Not enough chunk(s) received - expected ${this.totalByteSize} bytes of data total, only received ${this.bytesReceived} bytes`,ao.Incomplete);if(this.bytesReceived>this.totalByteSize)throw new oo(`Extra chunk(s) received - expected ${this.totalByteSize} bytes of data total, received ${this.bytesReceived} bytes`,ao.LengthExceeded)}}constructor(e,t,n,r){this.reader=t,this.totalByteSize=n,this._info=e,this.bytesReceived=0,this.outOfBandFailureRejectingFuture=r}},eu=class extends $l{handleChunkReceived(e){var t;this.bytesReceived+=e.content.byteLength,this.validateBytesReceived();let n=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(t=this.onProgress)==null||t.call(this,n)}[Symbol.asyncIterator](){let e=this.reader.getReader(),t=new _s,n=null,r=null;if(this.signal){let e=this.signal;r=()=>{var n;(n=t.reject)==null||n.call(t,e.reason)},e.addEventListener(`abort`,r),n=e}let i=()=>{e.releaseLock(),n&&r&&n.removeEventListener(`abort`,r),this.signal=void 0};return{next:()=>k(this,void 0,void 0,function*(){try{let{done:n,value:r}=yield Promise.race([e.read(),t.promise,this.outOfBandFailureRejectingFuture?.promise??new Promise(()=>{})]);return n?(this.validateBytesReceived(!0),{done:!0,value:void 0}):(this.handleChunkReceived(r),{done:!1,value:r.content})}catch(e){throw i(),e}}),return(){return k(this,void 0,void 0,function*(){return i(),{done:!0,value:void 0}})}}}withAbortSignal(e){return this.signal=e,this}readAll(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function*(){var n,r,i,a;let o=new Set,s=t.signal?e.withAbortSignal(t.signal):e;try{for(var c=!0,l=Ei(s),u;u=yield l.next(),n=u.done,!n;c=!0){a=u.value,c=!1;let e=a;o.add(e)}}catch(e){r={error:e}}finally{try{!c&&!n&&(i=l.return)&&(yield i.call(l))}finally{if(r)throw r.error}}return Array.from(o)}()})}},tu=class extends $l{constructor(e,t,n,r){super(e,t,n,r),this.receivedChunks=new Map}handleChunkReceived(e){var t;let n=Ts(e.chunkIndex),r=this.receivedChunks.get(n);if(r&&r.version>e.version)return;this.receivedChunks.set(n,e),this.bytesReceived+=e.content.byteLength,this.validateBytesReceived();let i=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(t=this.onProgress)==null||t.call(this,i)}[Symbol.asyncIterator](){let e=this.reader.getReader(),t=new TextDecoder(`utf-8`,{fatal:!0}),n=new _s,r=null,i=null;if(this.signal){let e=this.signal;i=()=>{var t;(t=n.reject)==null||t.call(n,e.reason)},e.addEventListener(`abort`,i),r=e}let a=()=>{e.releaseLock(),r&&i&&r.removeEventListener(`abort`,i),this.signal=void 0};return{next:()=>k(this,void 0,void 0,function*(){try{let{done:r,value:i}=yield Promise.race([e.read(),n.promise,this.outOfBandFailureRejectingFuture?.promise??new Promise(()=>{})]);if(r)return this.validateBytesReceived(!0),{done:!0,value:void 0};{this.handleChunkReceived(i);let e;try{e=t.decode(i.content)}catch(e){throw new oo(`Cannot decode datastream chunk ${i.chunkIndex} as text: ${e}`,ao.DecodeFailed)}return{done:!1,value:e}}}catch(e){throw a(),e}}),return(){return k(this,void 0,void 0,function*(){return a(),{done:!0,value:void 0}})}}}withAbortSignal(e){return this.signal=e,this}readAll(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function*(){var n,r,i,a;let o=``,s=t.signal?e.withAbortSignal(t.signal):e;try{for(var c=!0,l=Ei(s),u;u=yield l.next(),n=u.done,!n;c=!0)a=u.value,c=!1,o+=a}catch(e){r={error:e}}finally{try{!c&&!n&&(i=l.return)&&(yield i.call(l))}finally{if(r)throw r.error}}return o}()})}},nu=class{constructor(){this.log=vi,this.byteStreamControllers=new Map,this.textStreamControllers=new Map,this.byteStreamHandlers=new Map,this.textStreamHandlers=new Map}registerTextStreamHandler(e,t){if(this.textStreamHandlers.has(e))throw new oo(`A text stream handler for topic "${e}" has already been set.`,ao.HandlerAlreadyRegistered);this.textStreamHandlers.set(e,t)}unregisterTextStreamHandler(e){this.textStreamHandlers.delete(e)}registerByteStreamHandler(e,t){if(this.byteStreamHandlers.has(e))throw new oo(`A byte stream handler for topic "${e}" has already been set.`,ao.HandlerAlreadyRegistered);this.byteStreamHandlers.set(e,t)}unregisterByteStreamHandler(e){this.byteStreamHandlers.delete(e)}clearControllers(){this.byteStreamControllers.clear(),this.textStreamControllers.clear()}validateParticipantHasNoActiveDataStreams(e){var t,n,r,i;let a=Array.from(this.textStreamControllers.entries()).filter(t=>t[1].sendingParticipantIdentity===e),o=Array.from(this.byteStreamControllers.entries()).filter(t=>t[1].sendingParticipantIdentity===e);if(a.length>0||o.length>0){let s=new oo(`Participant ${e} unexpectedly disconnected in the middle of sending data`,ao.AbnormalEnd);for(let[e,r]of o)(n=(t=r.outOfBandFailureRejectingFuture).reject)==null||n.call(t,s),this.byteStreamControllers.delete(e);for(let[e,t]of a)(i=(r=t.outOfBandFailureRejectingFuture).reject)==null||i.call(r,s),this.textStreamControllers.delete(e)}}handleDataStreamPacket(e,t){return k(this,void 0,void 0,function*(){switch(e.value.case){case`streamHeader`:return this.handleStreamHeader(e.value.value,e.participantIdentity,t);case`streamChunk`:return this.handleStreamChunk(e.value.value,t);case`streamTrailer`:return this.handleStreamTrailer(e.value.value,t);default:throw Error(`DataPacket of value "${e.value.case}" is not data stream related!`)}})}handleStreamHeader(e,t,n){return k(this,void 0,void 0,function*(){if(e.contentHeader.case===`byteHeader`){let r=this.byteStreamHandlers.get(e.topic);if(!r){this.log.debug(`ignoring incoming byte stream due to no handler for topic`,e.topic);return}let i,a=new _s;a.promise.catch(e=>{this.log.error(e)});let o={id:e.streamId,name:e.contentHeader.value.name??`unknown`,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Ts(e.timestamp),attributes:e.attributes,encryptionType:n};r(new eu(o,new ReadableStream({start:n=>{if(i=n,this.textStreamControllers.has(e.streamId))throw new oo(`A data stream read is already in progress for a stream with id ${e.streamId}.`,ao.AlreadyOpened);this.byteStreamControllers.set(e.streamId,{info:o,controller:i,startTime:Date.now(),sendingParticipantIdentity:t,outOfBandFailureRejectingFuture:a})}}),Ts(e.totalLength),a),{identity:t})}else if(e.contentHeader.case===`textHeader`){let r=this.textStreamHandlers.get(e.topic);if(!r){this.log.debug(`ignoring incoming text stream due to no handler for topic`,e.topic);return}let i,a=new _s;a.promise.catch(e=>{this.log.error(e)});let o={id:e.streamId,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Number(e.timestamp),attributes:e.attributes,encryptionType:n};r(new tu(o,new ReadableStream({start:n=>{if(i=n,this.textStreamControllers.has(e.streamId))throw new oo(`A data stream read is already in progress for a stream with id ${e.streamId}.`,ao.AlreadyOpened);this.textStreamControllers.set(e.streamId,{info:o,controller:i,startTime:Date.now(),sendingParticipantIdentity:t,outOfBandFailureRejectingFuture:a})}}),Ts(e.totalLength),a),{identity:t})}})}handleStreamChunk(e,t){let n=this.byteStreamControllers.get(e.streamId);n&&(n.info.encryptionType===t?e.content.length>0&&n.controller.enqueue(e):(n.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${n.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.byteStreamControllers.delete(e.streamId)));let r=this.textStreamControllers.get(e.streamId);r&&(r.info.encryptionType===t?e.content.length>0&&r.controller.enqueue(e):(r.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${r.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.textStreamControllers.delete(e.streamId)))}handleStreamTrailer(e,t){let n=this.textStreamControllers.get(e.streamId);n&&(n.info.encryptionType===t?(n.info.attributes=Object.assign(Object.assign({},n.info.attributes),e.attributes),n.controller.close(),this.textStreamControllers.delete(e.streamId)):n.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${n.info.encryptionType}`,ao.EncryptionTypeMismatch)));let r=this.byteStreamControllers.get(e.streamId);r&&(r.info.encryptionType===t?(r.info.attributes=Object.assign(Object.assign({},r.info.attributes),e.attributes),r.controller.close()):r.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${r.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.byteStreamControllers.delete(e.streamId))}},ru=class{constructor(e,t,n){this.writableStream=e,this.defaultWriter=e.getWriter(),this.onClose=n,this.info=t}write(e){return this.defaultWriter.write(e)}close(){return k(this,void 0,void 0,function*(){var e;yield this.defaultWriter.close(),this.defaultWriter.releaseLock(),(e=this.onClose)==null||e.call(this)})}},iu=class extends ru{},au=class extends ru{},ou=15e3,su=class{constructor(e,t){this.engine=e,this.log=t}setupEngine(e){this.engine=e}sendText(e,t){return k(this,void 0,void 0,function*(){let n=crypto.randomUUID(),r=new TextEncoder().encode(e).byteLength,i=(t?.attachments)?.map(()=>crypto.randomUUID()),a=Array(i?i.length+1:1).fill(0),o=(e,n)=>{var r;a[n]=e;let i=a.reduce((e,t)=>e+t,0);(r=t?.onProgress)==null||r.call(t,i)},s=yield this.streamText({streamId:n,totalSize:r,destinationIdentities:t?.destinationIdentities,topic:t?.topic,attachedStreamIds:i,attributes:t?.attributes});return yield s.write(e),o(1,0),yield s.close(),t?.attachments&&i&&(yield Promise.all(t.attachments.map((e,n)=>k(this,void 0,void 0,function*(){return this._sendFile(i[n],e,{topic:t.topic,mimeType:e.type,onProgress:e=>{o(e,n+1)}})})))),s.info})}streamText(e){return k(this,void 0,void 0,function*(){let t=e?.streamId??crypto.randomUUID(),n={id:t,mimeType:`text/plain`,timestamp:Date.now(),topic:e?.topic??``,size:e?.totalSize,attributes:e?.attributes,encryptionType:this.engine.e2eeManager?.isDataChannelEncryptionEnabled?Dn.GCM:Dn.NONE},r=new ar({streamId:t,mimeType:n.mimeType,topic:n.topic,timestamp:Es(n.timestamp),totalLength:Es(e?.totalSize),attributes:n.attributes,contentHeader:{case:`textHeader`,value:new rr({version:e?.version,attachedStreamIds:e?.attachedStreamIds,replyToStreamId:e?.replyToStreamId,operationType:e?.type===`update`?nr.UPDATE:nr.CREATE})}}),i=e?.destinationIdentities,a=new Mn({destinationIdentities:i,value:{case:`streamHeader`,value:r}});yield this.engine.sendDataPacket(a,Nn.RELIABLE);let o=0,s=this.engine,c=new WritableStream({write(e){return k(this,void 0,void 0,function*(){for(let n of Is(e,ou)){let e=new Mn({destinationIdentities:i,value:{case:`streamChunk`,value:new or({content:n,streamId:t,chunkIndex:Es(o)})}});yield s.sendDataPacket(e,Nn.RELIABLE),o+=1}})},close(){return k(this,void 0,void 0,function*(){let e=new Mn({destinationIdentities:i,value:{case:`streamTrailer`,value:new sr({streamId:t})}});yield s.sendDataPacket(e,Nn.RELIABLE)})},abort(e){console.log(`Sink error:`,e)}}),l=()=>k(this,void 0,void 0,function*(){yield u.close()});s.once(M.Closing,l);let u=new iu(c,n,()=>this.engine.off(M.Closing,l));return u})}sendFile(e,t){return k(this,void 0,void 0,function*(){let n=crypto.randomUUID();return yield this._sendFile(n,e,t),{id:n}})}_sendFile(e,t,n){return k(this,void 0,void 0,function*(){let r=yield this.streamBytes({streamId:e,totalSize:t.size,name:t.name,mimeType:n?.mimeType??t.type,topic:n?.topic,destinationIdentities:n?.destinationIdentities}),i=t.stream().getReader();for(;;){let{done:e,value:t}=yield i.read();if(e)break;yield r.write(t)}return yield r.close(),r.info})}streamBytes(e){return k(this,void 0,void 0,function*(){let t=e?.streamId??crypto.randomUUID(),n=e?.destinationIdentities,r={id:t,mimeType:e?.mimeType??`application/octet-stream`,topic:e?.topic??``,timestamp:Date.now(),attributes:e?.attributes,size:e?.totalSize,name:e?.name??`unknown`,encryptionType:this.engine.e2eeManager?.isDataChannelEncryptionEnabled?Dn.GCM:Dn.NONE},i=new Mn({destinationIdentities:n,value:{case:`streamHeader`,value:new ar({totalLength:Es(r.size??0),mimeType:r.mimeType,streamId:t,topic:r.topic,timestamp:Es(Date.now()),attributes:r.attributes,contentHeader:{case:`byteHeader`,value:new ir({name:r.name})}})}});yield this.engine.sendDataPacket(i,Nn.RELIABLE);let a=0,o=new le,s=this.engine,c=this.log;return new au(new WritableStream({write(e){return k(this,void 0,void 0,function*(){let r=yield o.lock(),i=0;try{for(;i<e.byteLength;){let r=e.slice(i,i+ou),o=new Mn({destinationIdentities:n,value:{case:`streamChunk`,value:new or({content:r,streamId:t,chunkIndex:Es(a)})}});yield s.sendDataPacket(o,Nn.RELIABLE),a+=1,i+=r.byteLength}}finally{r()}})},close(){return k(this,void 0,void 0,function*(){let e=new Mn({destinationIdentities:n,value:{case:`streamTrailer`,value:new sr({streamId:t})}});yield s.sendDataPacket(e,Nn.RELIABLE)})},abort(e){c.error(`Sink error:`,e)}}),r)})}},cu=class extends P{constructor(e,t,n,r,i){super(e,n,i),this.sid=t,this.receiver=r}get isLocal(){return!1}setMuted(e){this.isMuted!==e&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?N.Muted:N.Unmuted,this))}setMediaStream(e){this.mediaStream=e;let t=n=>{n.track===this._mediaStreamTrack&&(e.removeEventListener(`removetrack`,t),this.receiver&&`playoutDelayHint`in this.receiver&&(this.receiver.playoutDelayHint=void 0),this.receiver=void 0,this._currentBitrate=0,this.emit(N.Ended,this))};e.addEventListener(`removetrack`,t)}start(){this.startMonitor(),super.enable()}stop(){this.stopMonitor(),super.disable()}getRTCStatsReport(){return k(this,void 0,void 0,function*(){if(this.receiver?.getStats)return yield this.receiver.getStats()})}setPlayoutDelay(e){this.receiver?`playoutDelayHint`in this.receiver?this.receiver.playoutDelayHint=e:this.log.warn(`Playout delay not supported in this browser`):this.log.warn(`Cannot set playout delay, track already ended`)}getPlayoutDelay(){if(this.receiver){if(`playoutDelayHint`in this.receiver)return this.receiver.playoutDelayHint;this.log.warn(`Playout delay not supported in this browser`)}else this.log.warn(`Cannot get playout delay, track already ended`);return 0}startMonitor(){this.monitorInterval||=setInterval(()=>this.monitorReceiver(),dl),Ys()&&this.registerTimeSyncUpdate()}registerTimeSyncUpdate(){let e=()=>{this.timeSyncHandle=requestAnimationFrame(()=>e());let t=this.receiver?.getSynchronizationSources()[0];if(t){let{timestamp:e,rtpTimestamp:n}=t;n&&this.rtpTimestamp!==n&&(this.emit(N.TimeSyncUpdate,{timestamp:e,rtpTimestamp:n}),this.rtpTimestamp=n)}};e()}},lu=class extends cu{constructor(e,t,n,r,i,a){super(e,t,P.Kind.Audio,n,a),this.monitorReceiver=()=>k(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}let e=yield this.getReceiverStats();e&&this.prevStats&&this.receiver&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.audioContext=r,this.webAudioPluginNodes=[],i&&(this.sinkId=i.deviceId)}setVolume(e){var t;for(let n of this.attachedElements)this.audioContext?(t=this.gainNode)==null||t.gain.setTargetAtTime(e,0,.1):n.volume=e;es()&&this._mediaStreamTrack._setVolume(e),this.elementVolume=e}getVolume(){if(this.elementVolume)return this.elementVolume;if(es())return 1;let e=0;return this.attachedElements.forEach(t=>{t.volume>e&&(e=t.volume)}),e}setSinkId(e){return k(this,void 0,void 0,function*(){this.sinkId=e,yield Promise.all(this.attachedElements.map(t=>{if(Uo(t))return t.setSinkId(e)}))})}attach(e){let t=this.attachedElements.length===0;return e?super.attach(e):e=super.attach(),this.sinkId&&Uo(e)&&e.setSinkId(this.sinkId).catch(e=>{this.log.error(`Failed to set sink id on remote audio track`,e,this.logContext)}),this.audioContext&&t&&(this.log.debug(`using audio context mapping`,this.logContext),this.connectWebAudio(this.audioContext,e),e.volume=0,e.muted=!0),this.elementVolume&&this.setVolume(this.elementVolume),e}detach(e){let t;return e?(t=super.detach(e),this.audioContext&&(this.attachedElements.length>0?this.connectWebAudio(this.audioContext,this.attachedElements[0]):this.disconnectWebAudio())):(t=super.detach(),this.disconnectWebAudio()),t}setAudioContext(e){this.audioContext=e,e&&this.attachedElements.length>0?this.connectWebAudio(e,this.attachedElements[0]):e||this.disconnectWebAudio()}setWebAudioPlugins(e){this.webAudioPluginNodes=e,this.attachedElements.length>0&&this.audioContext&&this.connectWebAudio(this.audioContext,this.attachedElements[0])}connectWebAudio(e,t){this.disconnectWebAudio(),this.sourceNode=e.createMediaStreamSource(t.srcObject);let n=this.sourceNode;this.webAudioPluginNodes.forEach(e=>{n.connect(e),n=e}),this.gainNode=e.createGain(),n.connect(this.gainNode),this.gainNode.connect(e.destination),this.elementVolume&&this.gainNode.gain.setTargetAtTime(this.elementVolume,0,.1),e.state!==`running`&&e.resume().then(()=>{e.state!==`running`&&this.emit(N.AudioPlaybackFailed,Error(`Audio Context couldn't be started automatically`))}).catch(e=>{this.emit(N.AudioPlaybackFailed,e)})}disconnectWebAudio(){var e,t;(e=this.gainNode)==null||e.disconnect(),(t=this.sourceNode)==null||t.disconnect(),this.gainNode=void 0,this.sourceNode=void 0}getReceiverStats(){return k(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;let e=yield this.receiver.getStats(),t;return e.forEach(e=>{e.type===`inbound-rtp`&&(t={type:`audio`,streamId:e.id,timestamp:e.timestamp,jitter:e.jitter,bytesReceived:e.bytesReceived,concealedSamples:e.concealedSamples,concealmentEvents:e.concealmentEvents,silentConcealedSamples:e.silentConcealedSamples,silentConcealmentEvents:e.silentConcealmentEvents,totalAudioEnergy:e.totalAudioEnergy,totalSamplesDuration:e.totalSamplesDuration})}),t})}},uu=100,du=class extends cu{constructor(e,t,n,r,i){super(e,t,P.Kind.Video,n,i),this.elementInfos=[],this.monitorReceiver=()=>k(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}let e=yield this.getReceiverStats();e&&this.prevStats&&this.receiver&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.debouncedHandleResize=Bc(()=>{this.updateDimensions()},uu),this.adaptiveStreamSettings=r}get isAdaptiveStream(){return this.adaptiveStreamSettings!==void 0}setStreamState(e){super.setStreamState(e),this.log.debug(`setStreamState`,e),this.isAdaptiveStream&&e===P.StreamState.Active&&this.updateVisibility()}get mediaStreamTrack(){return this._mediaStreamTrack}setMuted(e){super.setMuted(e),this.attachedElements.forEach(t=>{e?Co(this._mediaStreamTrack,t):So(this._mediaStreamTrack,t)})}attach(e){if(e?super.attach(e):e=super.attach(),this.adaptiveStreamSettings&&this.elementInfos.find(t=>t.element===e)===void 0){let t=new fu(e);this.observeElementInfo(t)}return e}observeElementInfo(e){this.adaptiveStreamSettings&&this.elementInfos.find(t=>t===e)===void 0?(e.handleResize=()=>{this.debouncedHandleResize()},e.handleVisibilityChanged=()=>{this.updateVisibility()},this.elementInfos.push(e),e.observe(),this.debouncedHandleResize(),this.updateVisibility()):this.log.warn(`visibility resize observer not triggered`,this.logContext)}stopObservingElementInfo(e){if(!this.isAdaptiveStream){this.log.warn(`stopObservingElementInfo ignored`,this.logContext);return}let t=this.elementInfos.filter(t=>t===e);for(let e of t)e.stopObserving();this.elementInfos=this.elementInfos.filter(t=>t!==e),this.updateVisibility(),this.debouncedHandleResize()}detach(e){let t=[];if(e)return this.stopObservingElement(e),super.detach(e);t=super.detach();for(let e of t)this.stopObservingElement(e);return t}getDecoderImplementation(){return this.prevStats?.decoderImplementation}getReceiverStats(){return k(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;let e=yield this.receiver.getStats(),t,n=``,r=new Map;return e.forEach(e=>{e.type===`inbound-rtp`?(n=e.codecId,t={type:`video`,streamId:e.id,framesDecoded:e.framesDecoded,framesDropped:e.framesDropped,framesReceived:e.framesReceived,packetsReceived:e.packetsReceived,packetsLost:e.packetsLost,frameWidth:e.frameWidth,frameHeight:e.frameHeight,pliCount:e.pliCount,firCount:e.firCount,nackCount:e.nackCount,jitter:e.jitter,timestamp:e.timestamp,bytesReceived:e.bytesReceived,decoderImplementation:e.decoderImplementation}):e.type===`codec`&&r.set(e.id,e)}),t&&n!==``&&r.get(n)&&(t.mimeType=r.get(n).mimeType),t})}stopObservingElement(e){let t=this.elementInfos.filter(t=>t.element===e);for(let e of t)this.stopObservingElementInfo(e)}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),this.isAdaptiveStream&&this.updateVisibility()})}updateVisibility(e){let t=this.elementInfos.reduce((e,t)=>Math.max(e,t.visibilityChangedAt||0),0),n=this.adaptiveStreamSettings?.pauseVideoInBackground??!0?this.isInBackground:!1,r=this.elementInfos.some(e=>e.pictureInPicture),i=this.elementInfos.some(e=>e.visible)&&!n||r;if(!(this.lastVisible===i&&!e)){if(!i&&Date.now()-t<uu){vo.setTimeout(()=>{this.updateVisibility()},uu);return}this.lastVisible=i,this.emit(N.VisibilityChanged,i,this)}}updateDimensions(){let e=0,t=0,n=this.getPixelDensity();for(let r of this.elementInfos){let i=r.width()*n,a=r.height()*n;i+a>e+t&&(e=i,t=a)}this.lastDimensions?.width===e&&this.lastDimensions?.height===t||(this.lastDimensions={width:e,height:t},this.emit(N.VideoDimensionsChanged,this.lastDimensions,this))}getPixelDensity(){let e=this.adaptiveStreamSettings?.pixelDensity;return e===`screen`?as():e||(as()>2?2:1)}},fu=class{get visible(){return this.isPiP||this.isIntersecting}get pictureInPicture(){return this.isPiP}constructor(e,t){this.onVisibilityChanged=e=>{var t;let{target:n,isIntersecting:r}=e;n===this.element&&(this.isIntersecting=r,this.isPiP=pu(this.element),this.visibilityChangedAt=Date.now(),(t=this.handleVisibilityChanged)==null||t.call(this))},this.onEnterPiP=()=>{var e,t;(e=window.documentPictureInPicture?.window)==null||e.addEventListener(`pagehide`,this.onLeavePiP),this.isPiP=pu(this.element),(t=this.handleVisibilityChanged)==null||t.call(this)},this.onLeavePiP=()=>{var e;this.isPiP=pu(this.element),(e=this.handleVisibilityChanged)==null||e.call(this)},this.element=e,this.isIntersecting=t??mu(e),this.isPiP=$o()&&pu(e),this.visibilityChangedAt=0}width(){return this.element.clientWidth}height(){return this.element.clientHeight}observe(){var e,t;this.isIntersecting=mu(this.element),this.isPiP=pu(this.element),this.element.handleResize=()=>{var e;(e=this.handleResize)==null||e.call(this)},this.element.handleVisibilityChanged=this.onVisibilityChanged,fs().observe(this.element),us().observe(this.element),this.element.addEventListener(`enterpictureinpicture`,this.onEnterPiP),this.element.addEventListener(`leavepictureinpicture`,this.onLeavePiP),(e=window.documentPictureInPicture)==null||e.addEventListener(`enter`,this.onEnterPiP),(t=window.documentPictureInPicture?.window)==null||t.addEventListener(`pagehide`,this.onLeavePiP)}stopObserving(){var e,t,n,r;(e=fs())==null||e.unobserve(this.element),(t=us())==null||t.unobserve(this.element),this.element.removeEventListener(`enterpictureinpicture`,this.onEnterPiP),this.element.removeEventListener(`leavepictureinpicture`,this.onLeavePiP),(n=window.documentPictureInPicture)==null||n.removeEventListener(`enter`,this.onEnterPiP),(r=window.documentPictureInPicture?.window)==null||r.removeEventListener(`pagehide`,this.onLeavePiP)}};function pu(e){return document.pictureInPictureElement===e?!0:window.documentPictureInPicture?.window?mu(e,window.documentPictureInPicture?.window):!1}function mu(e,t){let n=t||window,r=e.offsetTop,i=e.offsetLeft,a=e.offsetWidth,o=e.offsetHeight,{hidden:s}=e,{display:c}=getComputedStyle(e);for(;e.offsetParent;)e=e.offsetParent,r+=e.offsetTop,i+=e.offsetLeft;return r<n.pageYOffset+n.innerHeight&&i<n.pageXOffset+n.innerWidth&&r+o>n.pageYOffset&&i+a>n.pageXOffset&&!s&&c!==`none`}var hu=class extends Ai.EventEmitter{constructor(e,t,n,r){super(),this.metadataMuted=!1,this.encryption=Dn.NONE,this.log=vi,this.handleMuted=()=>{this.emit(N.Muted)},this.handleUnmuted=()=>{this.emit(N.Unmuted)},this.log=yi(r?.loggerName??_i.Publication),this.loggerContextCb=this.loggerContextCb,this.setMaxListeners(100),this.kind=e,this.trackSid=t,this.trackName=n,this.source=P.Source.Unknown}setTrack(e){this.track&&(this.track.off(N.Muted,this.handleMuted),this.track.off(N.Unmuted,this.handleUnmuted)),this.track=e,e&&(e.on(N.Muted,this.handleMuted),e.on(N.Unmuted,this.handleUnmuted))}get logContext(){return Object.assign(Object.assign({},this.loggerContextCb?.call(this)),Js(this))}get isMuted(){return this.metadataMuted}get isEnabled(){return!0}get isSubscribed(){return this.track!==void 0}get isEncrypted(){return this.encryption!==Dn.NONE}get audioTrack(){if(Os(this.track))return this.track}get videoTrack(){if(ks(this.track))return this.track}updateInfo(e){this.trackSid=e.sid,this.trackName=e.name,this.source=P.sourceFromProto(e.source),this.mimeType=e.mimeType,this.kind===P.Kind.Video&&e.width>0&&(this.dimensions={width:e.width,height:e.height},this.simulcasted=e.simulcast),this.encryption=e.encryption,this.trackInfo=e,this.log.debug(`update publication info`,Object.assign(Object.assign({},this.logContext),{info:e}))}};(function(e){(function(e){e.Desired=`desired`,e.Subscribed=`subscribed`,e.Unsubscribed=`unsubscribed`})(e.SubscriptionStatus||={}),(function(e){e.Allowed=`allowed`,e.NotAllowed=`not_allowed`})(e.PermissionStatus||={})})(hu||={});var gu=class extends hu{get isUpstreamPaused(){return this.track?.isUpstreamPaused}constructor(e,t,n,r){super(e,t.sid,t.name,r),this.track=void 0,this.handleTrackEnded=()=>{this.emit(N.Ended)},this.handleCpuConstrained=()=>{this.track&&ks(this.track)&&this.emit(N.CpuConstrained,this.track)},this.updateInfo(t),this.setTrack(n)}setTrack(e){this.track&&(this.track.off(N.Ended,this.handleTrackEnded),this.track.off(N.CpuConstrained,this.handleCpuConstrained)),super.setTrack(e),e&&(e.on(N.Ended,this.handleTrackEnded),e.on(N.CpuConstrained,this.handleCpuConstrained))}get isMuted(){return this.track?this.track.isMuted:super.isMuted}get audioTrack(){return super.audioTrack}get videoTrack(){return super.videoTrack}get isLocal(){return!0}mute(){return k(this,void 0,void 0,function*(){return this.track?.mute()})}unmute(){return k(this,void 0,void 0,function*(){return this.track?.unmute()})}pauseUpstream(){return k(this,void 0,void 0,function*(){yield this.track?.pauseUpstream()})}resumeUpstream(){return k(this,void 0,void 0,function*(){yield this.track?.resumeUpstream()})}getTrackFeatures(){if(Os(this.track)){let e=this.track.getSourceTrackSettings(),t=new Set;return e.autoGainControl&&t.add(yn.TF_AUTO_GAIN_CONTROL),e.echoCancellation&&t.add(yn.TF_ECHO_CANCELLATION),e.noiseSuppression&&t.add(yn.TF_NOISE_SUPPRESSION),e.channelCount&&e.channelCount>1&&t.add(yn.TF_STEREO),this.options?.dtx||t.add(yn.TF_NO_DTX),this.track.enhancedNoiseCancellation&&t.add(yn.TF_ENHANCED_NOISE_CANCELLATION),Array.from(t.values())}else return[]}};function _u(e,t){return k(this,void 0,void 0,function*(){e??={};let n=!1,{audioProcessor:r,videoProcessor:i,optionsWithoutProcessor:a}=Zs(e),o=a.audio,s=a.video;if(r&&typeof a.audio==`object`&&(a.audio.processor=r),i&&typeof a.video==`object`&&(a.video.processor=i),e.audio&&typeof a.audio==`object`&&typeof a.audio.deviceId==`string`){let e=a.audio.deviceId;a.audio.deviceId={exact:e},n=!0,o=Object.assign(Object.assign({},a.audio),{deviceId:{ideal:e}})}if(a.video&&typeof a.video==`object`&&typeof a.video.deviceId==`string`){let e=a.video.deviceId;a.video.deviceId={exact:e},n=!0,s=Object.assign(Object.assign({},a.video),{deviceId:{ideal:e}})}a.audio===!0?a.audio={deviceId:`default`}:typeof a.audio==`object`&&a.audio!==null&&(a.audio=Object.assign(Object.assign({},a.audio),{deviceId:a.audio.deviceId||`default`})),a.video===!0?a.video={deviceId:`default`}:typeof a.video==`object`&&!a.video.deviceId&&(a.video.deviceId=`default`);let c=Rs(a,Zc,Qc),l=Bs(c),u=navigator.mediaDevices.getUserMedia(l);a.audio&&(oc.userMediaPromiseMap.set(`audioinput`,u),u.catch(()=>oc.userMediaPromiseMap.delete(`audioinput`))),a.video&&(oc.userMediaPromiseMap.set(`videoinput`,u),u.catch(()=>oc.userMediaPromiseMap.delete(`videoinput`)));try{let e=yield u;return yield Promise.all(e.getTracks().map(n=>k(this,void 0,void 0,function*(){let a=n.kind===`audio`,o=a?c.audio:c.video;(typeof o==`boolean`||!o)&&(o={});let s,u=a?l.audio:l.video;typeof u!=`boolean`&&(s=u);let d=n.getSettings().deviceId;s?.deviceId&&ys(s.deviceId)!==d?s.deviceId=d:s||={deviceId:d};let f=xl(n,s,t);return f.kind===P.Kind.Video?f.source=P.Source.Camera:f.kind===P.Kind.Audio&&(f.source=P.Source.Microphone),f.mediaStream=e,Os(f)&&r?yield f.setProcessor(r):ks(f)&&i&&(yield f.setProcessor(i)),f})))}catch(r){if(!n)throw r;return _u(Object.assign(Object.assign({},e),{audio:o,video:s}),t)}})}function vu(e){return k(this,void 0,void 0,function*(){return(yield _u({audio:e??!0,video:!1}))[0]})}var yu;(function(e){e.Excellent=`excellent`,e.Good=`good`,e.Poor=`poor`,e.Lost=`lost`,e.Unknown=`unknown`})(yu||={});function bu(e){switch(e){case mn.EXCELLENT:return yu.Excellent;case mn.GOOD:return yu.Good;case mn.POOR:return yu.Poor;case mn.LOST:return yu.Lost;default:return yu.Unknown}}var xu=class extends Ai.EventEmitter{get logContext(){var e;return Object.assign({},((e=this.loggerOptions)?.loggerContextCb)?.call(e))}get isEncrypted(){return this.trackPublications.size>0&&Array.from(this.trackPublications.values()).every(e=>e.isEncrypted)}get isAgent(){return this.permissions?.agent||this.kind===Tn.AGENT}get isActive(){return this.participantInfo?.state===wn.ACTIVE}get kind(){return this._kind}get attributes(){return Object.freeze(Object.assign({},this._attributes))}constructor(e,t,n,r,i,a){let o=arguments.length>6&&arguments[6]!==void 0?arguments[6]:Tn.STANDARD;super(),this.audioLevel=0,this.isSpeaking=!1,this._connectionQuality=yu.Unknown,this.log=vi,this.log=yi(a?.loggerName??_i.Participant),this.loggerOptions=a,this.setMaxListeners(100),this.sid=e,this.identity=t,this.name=n,this.metadata=r,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this._kind=o,this._attributes=i??{}}getTrackPublications(){return Array.from(this.trackPublications.values())}getTrackPublication(e){for(let[,t]of this.trackPublications)if(t.source===e)return t}getTrackPublicationByName(e){for(let[,t]of this.trackPublications)if(t.trackName===e)return t}waitUntilActive(){return this.isActive?Promise.resolve():this.activeFuture?this.activeFuture.promise:(this.activeFuture=new _s,this.once(j.Active,()=>{var e,t;(t=(e=this.activeFuture)?.resolve)==null||t.call(e),this.activeFuture=void 0}),this.activeFuture.promise)}get connectionQuality(){return this._connectionQuality}get isCameraEnabled(){return!(this.getTrackPublication(P.Source.Camera)?.isMuted??!0)}get isMicrophoneEnabled(){return!(this.getTrackPublication(P.Source.Microphone)?.isMuted??!0)}get isScreenShareEnabled(){return!!this.getTrackPublication(P.Source.ScreenShare)}get isLocal(){return!1}get joinedAt(){return this.participantInfo?new Date(Number.parseInt(this.participantInfo.joinedAt.toString())*1e3):new Date}updateInfo(e){return this.participantInfo&&this.participantInfo.sid===e.sid&&this.participantInfo.version>e.version?!1:(this.identity=e.identity,this.sid=e.sid,this._setName(e.name),this._setMetadata(e.metadata),this._setAttributes(e.attributes),e.state===wn.ACTIVE&&this.participantInfo?.state!==wn.ACTIVE&&this.emit(j.Active),e.permission&&this.setPermissions(e.permission),this.participantInfo=e,!0)}_setMetadata(e){let t=this.metadata!==e,n=this.metadata;this.metadata=e,t&&this.emit(j.ParticipantMetadataChanged,n)}_setName(e){let t=this.name!==e;this.name=e,t&&this.emit(j.ParticipantNameChanged,e)}_setAttributes(e){let t=Xs(this.attributes,e);this._attributes=e,Object.keys(t).length>0&&this.emit(j.AttributesChanged,t)}setPermissions(e){let t=this.permissions,n=e.canPublish!==this.permissions?.canPublish||e.canSubscribe!==this.permissions?.canSubscribe||e.canPublishData!==this.permissions?.canPublishData||e.hidden!==this.permissions?.hidden||e.recorder!==this.permissions?.recorder||e.canPublishSources.length!==this.permissions.canPublishSources.length||e.canPublishSources.some((e,t)=>e!==this.permissions?.canPublishSources[t])||e.canSubscribeMetrics!==this.permissions?.canSubscribeMetrics;return this.permissions=e,n&&this.emit(j.ParticipantPermissionsChanged,t),n}setIsSpeaking(e){e!==this.isSpeaking&&(this.isSpeaking=e,e&&(this.lastSpokeAt=new Date),this.emit(j.IsSpeakingChanged,e))}setConnectionQuality(e){let t=this._connectionQuality;this._connectionQuality=bu(e),t!==this._connectionQuality&&this.emit(j.ConnectionQualityChanged,this._connectionQuality)}setDisconnected(){var e,t;this.activeFuture&&=((t=(e=this.activeFuture).reject)==null||t.call(e,Error(`Participant disconnected`)),void 0)}setAudioContext(e){this.audioContext=e,this.audioTrackPublications.forEach(t=>Os(t.track)&&t.track.setAudioContext(e))}addTrackPublication(e){e.on(N.Muted,()=>{this.emit(j.TrackMuted,e)}),e.on(N.Unmuted,()=>{this.emit(j.TrackUnmuted,e)});let t=e;switch(t.track&&(t.track.sid=e.trackSid),this.trackPublications.set(e.trackSid,e),e.kind){case P.Kind.Audio:this.audioTrackPublications.set(e.trackSid,e);break;case P.Kind.Video:this.videoTrackPublications.set(e.trackSid,e);break}}};function Su(e){if(!e.participantSid&&!e.participantIdentity)throw Error(`Invalid track permission, must provide at least one of participantIdentity and participantSid`);return new Ur({participantIdentity:e.participantIdentity??``,participantSid:e.participantSid??``,allTracks:e.allowAll??!1,trackSids:e.allowedTrackSids||[]})}var Cu=class extends xu{constructor(e,t,n,r,i,a){super(e,t,void 0,void 0,void 0,{loggerName:r.loggerName,loggerContextCb:()=>this.engine.logContext}),this.pendingPublishing=new Set,this.pendingPublishPromises=new Map,this.participantTrackPermissions=[],this.allParticipantsAllowedToSubscribe=!0,this.encryptionType=Dn.NONE,this.enabledPublishVideoCodecs=[],this.pendingAcks=new Map,this.pendingResponses=new Map,this.handleReconnecting=()=>{this.reconnectFuture||=new _s},this.handleReconnected=()=>{var e,t;(t=(e=this.reconnectFuture)?.resolve)==null||t.call(e),this.reconnectFuture=void 0,this.updateTrackSubscriptionPermissions()},this.handleClosing=()=>{var e,t,n,r,i,a;this.reconnectFuture&&=(this.reconnectFuture.promise.catch(e=>this.log.warn(e.message,this.logContext)),(t=(e=this.reconnectFuture)?.reject)==null||t.call(e,Error(`Got disconnected during reconnection attempt`)),void 0),this.signalConnectedFuture&&=((r=(n=this.signalConnectedFuture).reject)==null||r.call(n,Error(`Got disconnected without signal connected`)),void 0),(a=(i=this.activeAgentFuture)?.reject)==null||a.call(i,Error(`Got disconnected without active agent present`)),this.activeAgentFuture=void 0,this.firstActiveAgent=void 0},this.handleSignalConnected=e=>{var t,n;e.participant&&this.updateInfo(e.participant),this.signalConnectedFuture||=new _s,(n=(t=this.signalConnectedFuture).resolve)==null||n.call(t)},this.handleSignalRequestResponse=e=>{let{requestId:t,reason:n,message:r}=e,i=this.pendingSignalRequests.get(t);i&&(n!==ri.OK&&i.reject(new io(r,n)),this.pendingSignalRequests.delete(t))},this.handleDataPacket=e=>{switch(e.value.case){case`rpcResponse`:let t=e.value.value,n=null,r=null;t.value.case===`payload`?n=t.value.value:t.value.case===`error`&&(r=sl.fromProto(t.value.value)),this.handleIncomingRpcResponse(t.requestId,n,r);break;case`rpcAck`:let i=e.value.value;this.handleIncomingRpcAck(i.requestId);break}},this.updateTrackSubscriptionPermissions=()=>{this.log.debug(`updating track subscription permissions`,Object.assign(Object.assign({},this.logContext),{allParticipantsAllowed:this.allParticipantsAllowedToSubscribe,participantTrackPermissions:this.participantTrackPermissions})),this.engine.client.sendUpdateSubscriptionPermissions(this.allParticipantsAllowedToSubscribe,this.participantTrackPermissions.map(e=>Su(e)))},this.onTrackUnmuted=e=>{this.onTrackMuted(e,e.isUpstreamPaused)},this.onTrackMuted=(e,t)=>{if(t===void 0&&(t=!0),!e.sid){this.log.error(`could not update mute status for unpublished track`,Object.assign(Object.assign({},this.logContext),Js(e)));return}this.engine.updateMuteStatus(e.sid,t)},this.onTrackUpstreamPaused=e=>{this.log.debug(`upstream paused`,Object.assign(Object.assign({},this.logContext),Js(e))),this.onTrackMuted(e,!0)},this.onTrackUpstreamResumed=e=>{this.log.debug(`upstream resumed`,Object.assign(Object.assign({},this.logContext),Js(e))),this.onTrackMuted(e,e.isMuted)},this.onTrackFeatureUpdate=e=>{let t=this.audioTrackPublications.get(e.sid);if(!t){this.log.warn(`Could not update local audio track settings, missing publication for track ${e.sid}`,this.logContext);return}this.engine.client.sendUpdateLocalAudioTrack(t.trackSid,t.getTrackFeatures())},this.onTrackCpuConstrained=(e,t)=>{this.log.debug(`track cpu constrained`,Object.assign(Object.assign({},this.logContext),Js(t))),this.emit(j.LocalTrackCpuConstrained,e,t)},this.handleSubscribedQualityUpdate=e=>k(this,void 0,void 0,function*(){var t,n,r,i;if(!this.roomOptions?.dynacast)return;let a=this.videoTrackPublications.get(e.trackSid);if(!a){this.log.warn(`received subscribed quality update for unknown track`,Object.assign(Object.assign({},this.logContext),{trackSid:e.trackSid}));return}if(!a.videoTrack)return;let o=yield a.videoTrack.setPublishingCodecs(e.subscribedCodecs);try{for(var s=!0,c=Ei(o),l;l=yield c.next(),t=l.done,!t;s=!0){i=l.value,s=!1;let e=i;Oo(e)&&(this.log.debug(`publish ${e} for ${a.videoTrack.sid}`,Object.assign(Object.assign({},this.logContext),Js(a))),yield this.publishAdditionalCodecForTrack(a.videoTrack,e,a.options))}}catch(e){n={error:e}}finally{try{!s&&!t&&(r=c.return)&&(yield r.call(c))}finally{if(n)throw n.error}}}),this.handleLocalTrackUnpublished=e=>{let t=this.trackPublications.get(e.trackSid);if(!t){this.log.warn(`received unpublished event for unknown track`,Object.assign(Object.assign({},this.logContext),{trackSid:e.trackSid}));return}this.unpublishTrack(t.track)},this.handleTrackEnded=e=>k(this,void 0,void 0,function*(){if(e.source===P.Source.ScreenShare||e.source===P.Source.ScreenShareAudio)this.log.debug(`unpublishing local track due to TrackEnded`,Object.assign(Object.assign({},this.logContext),Js(e))),this.unpublishTrack(e);else if(e.isUserProvided)yield e.mute();else if(js(e)||As(e))try{if($o())try{let t=yield navigator==null?void 0:navigator.permissions.query({name:e.source===P.Source.Camera?`camera`:`microphone`});if(t&&t.state===`denied`)throw this.log.warn(`user has revoked access to ${e.source}`,Object.assign(Object.assign({},this.logContext),Js(e))),t.onchange=()=>{t.state!==`denied`&&(e.isMuted||e.restartTrack(),t.onchange=null)},Error(`GetUserMedia Permission denied`)}catch{}e.isMuted||(this.log.debug(`track ended, attempting to use a different device`,Object.assign(Object.assign({},this.logContext),Js(e))),js(e)?yield e.restartTrack({deviceId:`default`}):yield e.restartTrack())}catch{this.log.warn(`could not restart track, muting instead`,Object.assign(Object.assign({},this.logContext),Js(e))),yield e.mute()}}),this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this.engine=n,this.roomOptions=r,this.setupEngine(n),this.activeDeviceMap=new Map([[`audioinput`,`default`],[`videoinput`,`default`],[`audiooutput`,`default`]]),this.pendingSignalRequests=new Map,this.rpcHandlers=i,this.roomOutgoingDataStreamManager=a}get lastCameraError(){return this.cameraError}get lastMicrophoneError(){return this.microphoneError}get isE2EEEnabled(){return this.encryptionType!==Dn.NONE}getTrackPublication(e){let t=super.getTrackPublication(e);if(t)return t}getTrackPublicationByName(e){let t=super.getTrackPublicationByName(e);if(t)return t}setupEngine(e){this.engine=e,this.engine.on(M.RemoteMute,(e,t)=>{let n=this.trackPublications.get(e);!n||!n.track||(t?n.mute():n.unmute())}),this.signalConnectedFuture?.isResolved&&(this.signalConnectedFuture=void 0),this.engine.on(M.Connected,this.handleReconnected).on(M.SignalConnected,this.handleSignalConnected).on(M.SignalRestarted,this.handleReconnected).on(M.SignalResumed,this.handleReconnected).on(M.Restarting,this.handleReconnecting).on(M.Resuming,this.handleReconnecting).on(M.LocalTrackUnpublished,this.handleLocalTrackUnpublished).on(M.SubscribedQualityUpdate,this.handleSubscribedQualityUpdate).on(M.Closing,this.handleClosing).on(M.SignalRequestResponse,this.handleSignalRequestResponse).on(M.DataPacketReceived,this.handleDataPacket)}setMetadata(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({metadata:e})})}setName(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({name:e})})}setAttributes(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({attributes:e})})}requestMetadataUpdate(e){return k(this,arguments,void 0,function(e){var t=this;let{metadata:n,name:r,attributes:i}=e;return function*(){return new Promise((e,a)=>k(t,void 0,void 0,function*(){try{let t=!1,o=yield this.engine.client.sendUpdateLocalMetadata(n??this.metadata??``,r??this.name??``,i),s=performance.now();for(this.pendingSignalRequests.set(o,{resolve:e,reject:e=>{a(e),t=!0},values:{name:r,metadata:n,attributes:i}});performance.now()-s<5e3&&!t;){if((!r||this.name===r)&&(!n||this.metadata===n)&&(!i||Object.entries(i).every(e=>{let[t,n]=e;return this.attributes[t]===n||n===``&&!this.attributes[t]}))){this.pendingSignalRequests.delete(o),e();return}yield Lo(50)}a(new io(`Request to update local metadata timed out`,`TimeoutError`))}catch(e){e instanceof Error&&a(e)}}))}()})}setCameraEnabled(e,t,n){return this.setTrackEnabled(P.Source.Camera,e,t,n)}setMicrophoneEnabled(e,t,n){return this.setTrackEnabled(P.Source.Microphone,e,t,n)}setScreenShareEnabled(e,t,n){return this.setTrackEnabled(P.Source.ScreenShare,e,t,n)}setE2EEEnabled(e){return k(this,void 0,void 0,function*(){this.encryptionType=e?Dn.GCM:Dn.NONE,yield this.republishAllTracks(void 0,!1)})}setTrackEnabled(e,t,n,r){return k(this,void 0,void 0,function*(){this.log.debug(`setTrackEnabled`,Object.assign(Object.assign({},this.logContext),{source:e,enabled:t})),this.republishPromise&&(yield this.republishPromise);let i=this.getTrackPublication(e);if(t)if(i)yield i.unmute();else{let t;if(this.pendingPublishing.has(e)){let t=yield this.waitForPendingPublicationOfSource(e);return t||this.log.info(`waiting for pending publication promise timed out`,Object.assign(Object.assign({},this.logContext),{source:e})),yield t?.unmute(),t}this.pendingPublishing.add(e);try{switch(e){case P.Source.Camera:t=yield this.createTracks({video:n??!0});break;case P.Source.Microphone:t=yield this.createTracks({audio:n??!0});break;case P.Source.ScreenShare:t=yield this.createScreenTracks(Object.assign({},n));break;default:throw new $a(e)}}catch(n){throw t?.forEach(e=>{e.stop()}),n instanceof Error&&this.emit(j.MediaDevicesError,n,Ws(e)),this.pendingPublishing.delete(e),n}for(let r of t){let t=Object.assign(Object.assign({},this.roomOptions.publishDefaults),n);e===P.Source.Microphone&&Os(r)&&t.preConnectBuffer&&(this.log.info(`starting preconnect buffer for microphone`,Object.assign({},this.logContext)),r.startPreConnectBuffer())}try{let e=[];for(let n of t)this.log.info(`publishing track`,Object.assign(Object.assign({},this.logContext),Js(n))),e.push(this.publishTrack(n,r));let n=yield Promise.all(e);[i]=n}catch(e){throw t?.forEach(e=>{e.stop()}),e}finally{this.pendingPublishing.delete(e)}}else if(!i?.track&&this.pendingPublishing.has(e)&&(i=yield this.waitForPendingPublicationOfSource(e),i||this.log.info(`waiting for pending publication promise timed out`,Object.assign(Object.assign({},this.logContext),{source:e}))),i&&i.track)if(e===P.Source.ScreenShare){i=yield this.unpublishTrack(i.track);let e=this.getTrackPublication(P.Source.ScreenShareAudio);e&&e.track&&this.unpublishTrack(e.track)}else yield i.mute();return i})}enableCameraAndMicrophone(){return k(this,void 0,void 0,function*(){if(!(this.pendingPublishing.has(P.Source.Camera)||this.pendingPublishing.has(P.Source.Microphone))){this.pendingPublishing.add(P.Source.Camera),this.pendingPublishing.add(P.Source.Microphone);try{let e=yield this.createTracks({audio:!0,video:!0});yield Promise.all(e.map(e=>this.publishTrack(e)))}finally{this.pendingPublishing.delete(P.Source.Camera),this.pendingPublishing.delete(P.Source.Microphone)}}})}createTracks(e){return k(this,void 0,void 0,function*(){e??={};let t=Rs(e,this.roomOptions?.audioCaptureDefaults,this.roomOptions?.videoCaptureDefaults);try{return(yield _u(t,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext})).map(e=>(Os(e)&&(this.microphoneError=void 0,e.setAudioContext(this.audioContext),e.source=P.Source.Microphone,this.emit(j.AudioStreamAcquired)),ks(e)&&(this.cameraError=void 0,e.source=P.Source.Camera),e))}catch(t){throw t instanceof Error&&(e.audio&&(this.microphoneError=t),e.video&&(this.cameraError=t)),t}})}createScreenTracks(e){return k(this,void 0,void 0,function*(){if(e===void 0&&(e={}),navigator.mediaDevices.getDisplayMedia===void 0)throw new Qa(`getDisplayMedia not supported`);e.resolution===void 0&&!Yo()&&(e.resolution=No.h1080fps30.resolution);let t=Gs(e),n=yield navigator.mediaDevices.getDisplayMedia(t),r=n.getVideoTracks();if(r.length===0)throw new $a(`no video track found`);let i=new zl(r[0],void 0,!1,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});i.source=P.Source.ScreenShare,e.contentHint&&(i.mediaStreamTrack.contentHint=e.contentHint);let a=[i];if(n.getAudioTracks().length>0){this.emit(j.AudioStreamAcquired);let e=new bl(n.getAudioTracks()[0],void 0,!1,this.audioContext,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});e.source=P.Source.ScreenShareAudio,a.push(e)}return a})}publishTrack(e,t){return k(this,void 0,void 0,function*(){return this.publishOrRepublishTrack(e,t)})}publishOrRepublishTrack(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return function*(){js(e)&&e.setAudioContext(n.audioContext),yield n.reconnectFuture?.promise,n.republishPromise&&!r&&(yield n.republishPromise),Ds(e)&&n.pendingPublishPromises.has(e)&&(yield n.pendingPublishPromises.get(e));let i;if(e instanceof MediaStreamTrack)i=e.getConstraints();else{i=e.constraints;let t;switch(e.source){case P.Source.Microphone:t=`audioinput`;break;case P.Source.Camera:t=`videoinput`}t&&n.activeDeviceMap.has(t)&&(i=Object.assign(Object.assign({},i),{deviceId:n.activeDeviceMap.get(t)}))}if(e instanceof MediaStreamTrack)switch(e.kind){case`audio`:e=new bl(e,i,!0,n.audioContext,{loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});break;case`video`:e=new zl(e,i,!0,{loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});break;default:throw new $a(`unsupported MediaStreamTrack kind ${e.kind}`)}else e.updateLoggerOptions({loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});let a;if(n.trackPublications.forEach(t=>{t.track&&t.track===e&&(a=t)}),a)return n.log.warn(`track has already been published, skipping`,Object.assign(Object.assign({},n.logContext),Js(a))),a;let o=Object.assign(Object.assign({},n.roomOptions.publishDefaults),t),s=`channelCount`in e.mediaStreamTrack.getSettings()&&e.mediaStreamTrack.getSettings().channelCount===2||e.mediaStreamTrack.getConstraints().channelCount===2,c=o.forceStereo??s;c&&(o.dtx===void 0&&n.log.info(`Opus DTX will be disabled for stereo tracks by default. Enable them explicitly to make it work.`,Object.assign(Object.assign({},n.logContext),Js(e))),o.red===void 0&&n.log.info(`Opus RED will be disabled for stereo tracks by default. Enable them explicitly to make it work.`),o.dtx??=!1,o.red??=!1),!Qo()&&n.roomOptions.e2ee&&(n.log.info(`End-to-end encryption is set up, simulcast publishing will be disabled on Safari versions and iOS browsers running iOS < v17.2`,Object.assign({},n.logContext)),o.simulcast=!1),o.source&&(e.source=o.source);let l=new Promise((t,r)=>k(n,void 0,void 0,function*(){try{if(this.engine.client.currentState!==vc.CONNECTED){this.log.debug(`deferring track publication until signal is connected`,Object.assign(Object.assign({},this.logContext),{track:Js(e)}));let n=!1,i=setTimeout(()=>{n=!0,e.stop(),r(new ro(`publishing rejected as engine not connected within timeout`,408))},15e3);if(yield this.waitUntilEngineConnected(),clearTimeout(i),n)return;t(yield this.publish(e,o,c))}else try{t(yield this.publish(e,o,c))}catch(e){r(e)}}catch(e){r(e)}}));n.pendingPublishPromises.set(e,l);try{return yield l}catch(e){throw e}finally{n.pendingPublishPromises.delete(e)}}()})}waitUntilEngineConnected(){return this.signalConnectedFuture||=new _s,this.signalConnectedFuture.promise}hasPermissionsToPublish(e){if(!this.permissions)return this.log.warn(`no permissions present for publishing track`,Object.assign(Object.assign({},this.logContext),Js(e))),!1;let{canPublish:t,canPublishSources:n}=this.permissions;return t&&(n.length===0||n.map(e=>Qs(e)).includes(e.source))?!0:(this.log.warn(`insufficient permissions to publish`,Object.assign(Object.assign({},this.logContext),Js(e))),!1)}publish(e,t,n){return k(this,void 0,void 0,function*(){if(!this.hasPermissionsToPublish(e))throw new ro(`failed to publish track, insufficient permissions`,403);Array.from(this.trackPublications.values()).find(t=>Ds(e)&&t.source===e.source)&&e.source!==P.Source.Unknown&&this.log.info(`publishing a second track with the same source: ${e.source}`,Object.assign(Object.assign({},this.logContext),Js(e))),t.stopMicTrackOnMute&&Os(e)&&(e.stopOnMute=!0),e.source===P.Source.ScreenShare&&Go()&&(t.simulcast=!1),t.videoCodec===`av1`&&!Bo()&&(t.videoCodec=void 0),t.videoCodec===`vp9`&&!Vo()&&(t.videoCodec=void 0),t.videoCodec===void 0&&(t.videoCodec=Yc),this.enabledPublishVideoCodecs.length>0&&(this.enabledPublishVideoCodecs.some(e=>t.videoCodec===Ks(e.mime))||(t.videoCodec=Ks(this.enabledPublishVideoCodecs[0].mime)));let r=t.videoCodec;e.on(N.Muted,this.onTrackMuted),e.on(N.Unmuted,this.onTrackUnmuted),e.on(N.Ended,this.handleTrackEnded),e.on(N.UpstreamPaused,this.onTrackUpstreamPaused),e.on(N.UpstreamResumed,this.onTrackUpstreamResumed),e.on(N.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate);let i=[],a=!(t.dtx??!0),o=e.getSourceTrackSettings();o.autoGainControl&&i.push(yn.TF_AUTO_GAIN_CONTROL),o.echoCancellation&&i.push(yn.TF_ECHO_CANCELLATION),o.noiseSuppression&&i.push(yn.TF_NOISE_SUPPRESSION),o.channelCount&&o.channelCount>1&&i.push(yn.TF_STEREO),a&&i.push(yn.TF_NO_DTX),js(e)&&e.hasPreConnectBuffer&&i.push(yn.TF_PRECONNECT_BUFFER);let s=new hr({cid:e.mediaStreamTrack.id,name:t.name,type:P.kindToProto(e.kind),muted:e.isMuted,source:P.sourceToProto(e.source),disableDtx:a,encryption:this.encryptionType,stereo:n,disableRed:this.isE2EEEnabled||!(t.red??!0),stream:t?.stream,backupCodecPolicy:t?.backupCodecPolicy,audioFeatures:i}),c;if(e.kind===P.Kind.Video){let n={width:0,height:0};try{n=yield e.waitForDimensions()}catch{let t=this.roomOptions.videoCaptureDefaults?.resolution??jo.h720.resolution;n={width:t.width,height:t.height},this.log.error(`could not determine track dimensions, using defaults`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{dims:n}))}s.width=n.width,s.height=n.height,As(e)&&(Ho(r)&&(e.source===P.Source.ScreenShare&&(t.scalabilityMode=`L1T3`,`contentHint`in e.mediaStreamTrack&&(e.mediaStreamTrack.contentHint=`motion`,this.log.info(`forcing contentHint to motion for screenshare with SVC codecs`,Object.assign(Object.assign({},this.logContext),Js(e))))),t.scalabilityMode=t.scalabilityMode??`L3T3_KEY`),s.simulcastCodecs=[new mr({codec:r,cid:e.mediaStreamTrack.id})],t.backupCodec===!0&&(t.backupCodec={codec:Yc}),t.backupCodec&&r!==t.backupCodec.codec&&s.encryption===Dn.NONE&&(this.roomOptions.dynacast||(this.roomOptions.dynacast=!0),s.simulcastCodecs.push(new mr({codec:t.backupCodec.codec,cid:``})))),c=kl(e.source===P.Source.ScreenShare,s.width,s.height,t),s.layers=Hl(s.width,s.height,c,Ho(t.videoCodec))}else e.kind===P.Kind.Audio&&(c=[{maxBitrate:t.audioPreset?.maxBitrate,priority:t.audioPreset?.priority??`high`,networkPriority:t.audioPreset?.priority??`high`}]);if(!this.engine||this.engine.isClosed)throw new to(`cannot publish track when not connected`);let l=()=>k(this,void 0,void 0,function*(){if(!this.engine.pcManager)throw new to(`pcManager is not ready`);if(e.sender=yield this.engine.createSender(e,t,c),this.emit(j.LocalSenderCreated,e.sender,e),As(e)&&(t.degradationPreference??=Ll(e),e.setDegradationPreference(t.degradationPreference)),c)if(Go()&&e.kind===P.Kind.Audio){let t;for(let n of this.engine.pcManager.publisher.getTransceivers())if(n.sender===e.sender){t=n;break}t&&this.engine.pcManager.publisher.setTrackCodecBitrate({transceiver:t,codec:`opus`,maxbr:c[0]?.maxBitrate?c[0].maxBitrate/1e3:0})}else e.codec&&Ho(e.codec)&&c[0]?.maxBitrate&&this.engine.pcManager.publisher.setTrackCodecBitrate({cid:s.cid,codec:e.codec,maxbr:c[0].maxBitrate/1e3});yield this.engine.negotiate()}),u,d=new Promise((t,n)=>k(this,void 0,void 0,function*(){try{u=yield this.engine.addTrack(s),t(u)}catch(t){e.sender&&this.engine.pcManager?.publisher&&(this.engine.pcManager.publisher.removeTrack(e.sender),yield this.engine.negotiate().catch(t=>{this.log.error(`failed to negotiate after removing track due to failed add track request`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{error:t}))})),n(t)}}));if(this.enabledPublishVideoCodecs.length>0)u=(yield Promise.all([d,l()]))[0];else{u=yield d;let n;if(u.codecs.forEach(e=>{n===void 0&&(n=e.mimeType)}),n&&e.kind===P.Kind.Video){let i=Ks(n);i!==r&&(this.log.debug(`falling back to server selected codec`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{codec:i})),t.videoCodec=i,c=kl(e.source===P.Source.ScreenShare,s.width,s.height,t))}yield l()}let f=new gu(e.kind,u,e,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});if(f.on(N.CpuConstrained,e=>this.onTrackCpuConstrained(e,f)),f.options=t,e.sid=u.sid,this.log.debug(`publishing ${e.kind} with encodings`,Object.assign(Object.assign({},this.logContext),{encodings:c,trackInfo:u})),As(e)?e.startMonitor(this.engine.client):js(e)&&e.startMonitor(),this.addTrackPublication(f),this.emit(j.LocalTrackPublished,f),js(e)&&u.audioFeatures.includes(yn.TF_PRECONNECT_BUFFER)){let t=e.getPreConnectBuffer(),n=e.getPreConnectBufferMimeType();this.on(j.LocalTrackSubscribed,t=>{if(t.trackSid===u.sid){if(!e.hasPreConnectBuffer){this.log.warn(`subscribe event came to late, buffer already closed`,this.logContext);return}this.log.debug(`finished recording preconnect buffer`,Object.assign(Object.assign({},this.logContext),Js(e))),e.stopPreConnectBuffer()}}),t&&new Promise((r,i)=>k(this,void 0,void 0,function*(){var a,s,c,l;try{this.log.debug(`waiting for agent`,Object.assign(Object.assign({},this.logContext),Js(e)));let m=setTimeout(()=>{i(Error(`agent not active within 10 seconds`))},1e4),h=yield this.waitUntilActiveAgentPresent();clearTimeout(m),this.log.debug(`sending preconnect buffer`,Object.assign(Object.assign({},this.logContext),Js(e)));let g=yield this.streamBytes({name:`preconnect-buffer`,mimeType:n,topic:`lk.agent.pre-connect-audio-buffer`,destinationIdentities:[h.identity],attributes:{trackId:f.trackSid,sampleRate:String(o.sampleRate??`48000`),channels:String(o.channelCount??`1`)}});try{for(var u=!0,d=Ei(t),p;p=yield d.next(),a=p.done,!a;u=!0){l=p.value,u=!1;let e=l;yield g.write(e)}}catch(e){s={error:e}}finally{try{!u&&!a&&(c=d.return)&&(yield c.call(d))}finally{if(s)throw s.error}}yield g.close(),r()}catch(e){i(e)}})).then(()=>{this.log.debug(`preconnect buffer sent successfully`,Object.assign(Object.assign({},this.logContext),Js(e)))}).catch(t=>{this.log.error(`error sending preconnect buffer`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{error:t}))})}return f})}get isLocal(){return!0}publishAdditionalCodecForTrack(e,t,n){return k(this,void 0,void 0,function*(){if(this.encryptionType!==Dn.NONE)return;let r;if(this.trackPublications.forEach(t=>{t.track&&t.track===e&&(r=t)}),!r)throw new $a(`track is not published`);if(!As(e))throw new $a(`track is not a video track`);let i=Object.assign(Object.assign({},this.roomOptions?.publishDefaults),n),a=Al(e,t,i);if(!a){this.log.info(`backup codec has been disabled, ignoring request to add additional codec for track`,Object.assign(Object.assign({},this.logContext),Js(e)));return}let o=e.addSimulcastTrack(t,a);if(!o)return;let s=new hr({cid:o.mediaStreamTrack.id,type:P.kindToProto(e.kind),muted:e.isMuted,source:P.sourceToProto(e.source),sid:e.sid,simulcastCodecs:[{codec:i.videoCodec,cid:o.mediaStreamTrack.id}]});if(s.layers=Hl(s.width,s.height,a),!this.engine||this.engine.isClosed)throw new to(`cannot publish track when not connected`);let c=(yield Promise.all([this.engine.addTrack(s),k(this,void 0,void 0,function*(){yield this.engine.createSimulcastSender(e,o,i,a),yield this.engine.negotiate()})]))[0];this.log.debug(`published ${t} for track ${e.sid}`,Object.assign(Object.assign({},this.logContext),{encodings:a,trackInfo:c}))})}unpublishTrack(e,t){return k(this,void 0,void 0,function*(){if(Ds(e)){let t=this.pendingPublishPromises.get(e);t&&(this.log.info(`awaiting publish promise before attempting to unpublish`,Object.assign(Object.assign({},this.logContext),Js(e))),yield t)}let n=this.getPublicationForTrack(e),r=n?Js(n):void 0;if(this.log.debug(`unpublishing track`,Object.assign(Object.assign({},this.logContext),r)),!n||!n.track){this.log.warn(`track was not unpublished because no publication was found`,Object.assign(Object.assign({},this.logContext),r));return}e=n.track,e.off(N.Muted,this.onTrackMuted),e.off(N.Unmuted,this.onTrackUnmuted),e.off(N.Ended,this.handleTrackEnded),e.off(N.UpstreamPaused,this.onTrackUpstreamPaused),e.off(N.UpstreamResumed,this.onTrackUpstreamResumed),e.off(N.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate),t===void 0&&(t=this.roomOptions?.stopLocalTrackOnUnpublish??!0),t?e.stop():e.stopMonitor();let i=!1,a=e.sender;if(e.sender=void 0,this.engine.pcManager&&this.engine.pcManager.currentState<tl.FAILED&&a)try{for(let e of this.engine.pcManager.publisher.getTransceivers())e.sender===a&&(e.direction=`inactive`,i=!0);if(this.engine.removeTrack(a)&&(i=!0),As(e)){for(let[,t]of e.simulcastCodecs)t.sender&&=(this.engine.removeTrack(t.sender)&&(i=!0),void 0);e.simulcastCodecs.clear()}}catch(e){this.log.warn(`failed to unpublish track`,Object.assign(Object.assign(Object.assign({},this.logContext),r),{error:e}))}switch(this.trackPublications.delete(n.trackSid),n.kind){case P.Kind.Audio:this.audioTrackPublications.delete(n.trackSid);break;case P.Kind.Video:this.videoTrackPublications.delete(n.trackSid);break}return this.emit(j.LocalTrackUnpublished,n),n.setTrack(void 0),i&&(yield this.engine.negotiate()),n})}unpublishTracks(e){return k(this,void 0,void 0,function*(){return(yield Promise.all(e.map(e=>this.unpublishTrack(e)))).filter(e=>!!e)})}republishAllTracks(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){t.republishPromise&&(yield t.republishPromise),t.republishPromise=new Promise((r,i)=>k(t,void 0,void 0,function*(){try{let t=[];this.trackPublications.forEach(n=>{n.track&&(e&&(n.options=Object.assign(Object.assign({},n.options),e)),t.push(n))}),yield Promise.all(t.map(e=>k(this,void 0,void 0,function*(){let t=e.track;yield this.unpublishTrack(t,!1),n&&!t.isMuted&&t.source!==P.Source.ScreenShare&&t.source!==P.Source.ScreenShareAudio&&(js(t)||As(t))&&!t.isUserProvided&&(this.log.debug(`restarting existing track`,Object.assign(Object.assign({},this.logContext),{track:e.trackSid})),yield t.restartTrack()),yield this.publishOrRepublishTrack(t,e.options,!0)}))),r()}catch(e){i(e)}finally{this.republishPromise=void 0}})),yield t.republishPromise}()})}publishData(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return function*(){let r=n.reliable?Nn.RELIABLE:Nn.LOSSY,i=n.destinationIdentities,a=n.topic,o=new Mn({kind:r,value:{case:`user`,value:new Rn({participantIdentity:t.identity,payload:e,destinationIdentities:i,topic:a})}});yield t.engine.sendDataPacket(o,r)}()})}publishDtmf(e,t){return k(this,void 0,void 0,function*(){let n=new Mn({kind:Nn.RELIABLE,value:{case:`sipDtmf`,value:new zn({code:e,digit:t})}});yield this.engine.sendDataPacket(n,Nn.RELIABLE)})}sendChatMessage(e,t){return k(this,void 0,void 0,function*(){let n={id:crypto.randomUUID(),message:e,timestamp:Date.now(),attachedFiles:t?.attachments},r=new Mn({value:{case:`chatMessage`,value:new Hn(Object.assign(Object.assign({},n),{timestamp:Be.parse(n.timestamp)}))}});return yield this.engine.sendDataPacket(r,Nn.RELIABLE),this.emit(j.ChatMessage,n),n})}editChatMessage(e,t){return k(this,void 0,void 0,function*(){let n=Object.assign(Object.assign({},t),{message:e,editTimestamp:Date.now()}),r=new Mn({value:{case:`chatMessage`,value:new Hn(Object.assign(Object.assign({},n),{timestamp:Be.parse(n.timestamp),editTimestamp:Be.parse(n.editTimestamp)}))}});return yield this.engine.sendDataPacket(r,Nn.RELIABLE),this.emit(j.ChatMessage,n),n})}sendText(e,t){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.sendText(e,t)})}streamText(e){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.streamText(e)})}sendFile(e,t){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.sendFile(e,t)})}streamBytes(e){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.streamBytes(e)})}performRpc(e){return k(this,arguments,void 0,function(e){var t=this;let{destinationIdentity:n,method:r,payload:i,responseTimeout:a=15e3}=e;return function*(){let e=7e3;return e+1e3,new Promise((o,s)=>k(t,void 0,void 0,function*(){if(ll(i)>cl){s(sl.builtIn(`REQUEST_PAYLOAD_TOO_LARGE`));return}if(this.engine.latestJoinResponse?.serverInfo?.version&&os(this.engine.latestJoinResponse?.serverInfo?.version,`1.8.0`)<0){s(sl.builtIn(`UNSUPPORTED_SERVER`));return}let t=Math.max(a,8e3),c=crypto.randomUUID();yield this.publishRpcRequest(n,c,r,i,t);let l=setTimeout(()=>{this.pendingAcks.delete(c),s(sl.builtIn(`CONNECTION_TIMEOUT`)),this.pendingResponses.delete(c),clearTimeout(u)},e);this.pendingAcks.set(c,{resolve:()=>{clearTimeout(l)},participantIdentity:n});let u=setTimeout(()=>{this.pendingResponses.delete(c),s(sl.builtIn(`RESPONSE_TIMEOUT`))},a);this.pendingResponses.set(c,{resolve:(e,t)=>{clearTimeout(u),this.pendingAcks.has(c)&&(console.warn(`RPC response received before ack`,c),this.pendingAcks.delete(c),clearTimeout(l)),t?s(t):o(e??``)},participantIdentity:n})}))}()})}registerRpcMethod(e,t){this.rpcHandlers.has(e)&&this.log.warn(`you're overriding the RPC handler for method ${e}, in the future this will throw an error`),this.rpcHandlers.set(e,t)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setTrackSubscriptionPermissions(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];this.participantTrackPermissions=t,this.allParticipantsAllowedToSubscribe=e,this.engine.client.isDisconnected||this.updateTrackSubscriptionPermissions()}handleIncomingRpcAck(e){let t=this.pendingAcks.get(e);t?(t.resolve(),this.pendingAcks.delete(e)):console.error(`Ack received for unexpected RPC request`,e)}handleIncomingRpcResponse(e,t,n){let r=this.pendingResponses.get(e);r?(r.resolve(t,n),this.pendingResponses.delete(e)):console.error(`Response received for unexpected RPC request`,e)}publishRpcRequest(e,t,n,r,i){return k(this,void 0,void 0,function*(){let a=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcRequest`,value:new Un({id:t,method:n,payload:r,responseTimeoutMs:i,version:1})}});yield this.engine.sendDataPacket(a,Nn.RELIABLE)})}handleParticipantDisconnected(e){for(let[t,{participantIdentity:n}]of this.pendingAcks)n===e&&this.pendingAcks.delete(t);for(let[t,{participantIdentity:n,resolve:r}]of this.pendingResponses)n===e&&(r(null,sl.builtIn(`RECIPIENT_DISCONNECTED`)),this.pendingResponses.delete(t))}setEnabledPublishCodecs(e){this.enabledPublishVideoCodecs=e.filter(e=>e.mime.split(`/`)[0].toLowerCase()===`video`)}updateInfo(e){return super.updateInfo(e)?(e.tracks.forEach(e=>{let t=this.trackPublications.get(e.sid);if(t){let n=t.isMuted||(t.track?.isUpstreamPaused??!1);n!==e.muted&&(this.log.debug(`updating server mute state after reconcile`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(t)),{mutedOnServer:n})),this.engine.client.sendMuteTrack(e.sid,n))}}),!0):!1}setActiveAgent(e){var t,n,r,i;this.firstActiveAgent=e,e&&!this.firstActiveAgent&&(this.firstActiveAgent=e),e?(n=(t=this.activeAgentFuture)?.resolve)==null||n.call(t,e):(i=(r=this.activeAgentFuture)?.reject)==null||i.call(r,Error(`Agent disconnected`)),this.activeAgentFuture=void 0}waitUntilActiveAgentPresent(){return this.firstActiveAgent?Promise.resolve(this.firstActiveAgent):(this.activeAgentFuture||=new _s,this.activeAgentFuture.promise)}getPublicationForTrack(e){let t;return this.trackPublications.forEach(n=>{let r=n.track;r&&(e instanceof MediaStreamTrack?(js(r)||As(r))&&r.mediaStreamTrack===e&&(t=n):e===r&&(t=n))}),t}waitForPendingPublicationOfSource(e){return k(this,void 0,void 0,function*(){let t=Date.now();for(;Date.now()<t+1e4;){let t=Array.from(this.pendingPublishPromises.entries()).find(t=>{let[n]=t;return n.source===e});if(t)return t[1];yield Lo(20)}})}},wu=class extends hu{constructor(e,t,n,r){super(e,t.sid,t.name,r),this.track=void 0,this.allowed=!0,this.requestedDisabled=void 0,this.visible=!0,this.handleEnded=e=>{this.setTrack(void 0),this.emit(N.Ended,e)},this.handleVisibilityChange=e=>{this.log.debug(`adaptivestream video visibility ${this.trackSid}, visible=${e}`,this.logContext),this.visible=e,this.emitTrackUpdate()},this.handleVideoDimensionsChange=e=>{this.log.debug(`adaptivestream video dimensions ${e.width}x${e.height}`,this.logContext),this.videoDimensionsAdaptiveStream=e,this.emitTrackUpdate()},this.subscribed=n,this.updateInfo(t)}setSubscribed(e){let t=this.subscriptionStatus,n=this.permissionStatus;this.subscribed=e,e&&(this.allowed=!0);let r=new wr({trackSids:[this.trackSid],subscribe:this.subscribed,participantTracks:[new qn({participantSid:``,trackSids:[this.trackSid]})]});this.emit(N.UpdateSubscription,r),this.emitSubscriptionUpdateIfChanged(t),this.emitPermissionUpdateIfChanged(n)}get subscriptionStatus(){return this.subscribed===!1?hu.SubscriptionStatus.Unsubscribed:super.isSubscribed?hu.SubscriptionStatus.Subscribed:hu.SubscriptionStatus.Desired}get permissionStatus(){return this.allowed?hu.PermissionStatus.Allowed:hu.PermissionStatus.NotAllowed}get isSubscribed(){return this.subscribed===!1?!1:super.isSubscribed}get isDesired(){return this.subscribed!==!1}get isEnabled(){return this.requestedDisabled===void 0?this.isAdaptiveStream?this.visible:!0:!this.requestedDisabled}get isLocal(){return!1}setEnabled(e){!this.isManualOperationAllowed()||this.requestedDisabled===!e||(this.requestedDisabled=!e,this.emitTrackUpdate())}setVideoQuality(e){!this.isManualOperationAllowed()||this.requestedMaxQuality===e||(this.requestedMaxQuality=e,this.requestedVideoDimensions=void 0,this.emitTrackUpdate())}setVideoDimensions(e){this.isManualOperationAllowed()&&(this.requestedVideoDimensions?.width===e.width&&this.requestedVideoDimensions?.height===e.height||(Ps(this.track)&&(this.requestedVideoDimensions=e),this.requestedMaxQuality=void 0,this.emitTrackUpdate()))}setVideoFPS(e){this.isManualOperationAllowed()&&Ps(this.track)&&this.fps!==e&&(this.fps=e,this.emitTrackUpdate())}get videoQuality(){return this.requestedMaxQuality??xo.HIGH}setTrack(e){let t=this.subscriptionStatus,n=this.permissionStatus,r=this.track;r!==e&&(r&&(r.off(N.VideoDimensionsChanged,this.handleVideoDimensionsChange),r.off(N.VisibilityChanged,this.handleVisibilityChange),r.off(N.Ended,this.handleEnded),r.detach(),r.stopMonitor(),this.emit(N.Unsubscribed,r)),super.setTrack(e),e&&(e.sid=this.trackSid,e.on(N.VideoDimensionsChanged,this.handleVideoDimensionsChange),e.on(N.VisibilityChanged,this.handleVisibilityChange),e.on(N.Ended,this.handleEnded),this.emit(N.Subscribed,e)),this.emitPermissionUpdateIfChanged(n),this.emitSubscriptionUpdateIfChanged(t))}setAllowed(e){let t=this.subscriptionStatus,n=this.permissionStatus;this.allowed=e,this.emitPermissionUpdateIfChanged(n),this.emitSubscriptionUpdateIfChanged(t)}setSubscriptionError(e){this.emit(N.SubscriptionFailed,e)}updateInfo(e){super.updateInfo(e);let t=this.metadataMuted;this.metadataMuted=e.muted,this.track?this.track.setMuted(e.muted):t!==e.muted&&this.emit(e.muted?N.Muted:N.Unmuted)}emitSubscriptionUpdateIfChanged(e){let t=this.subscriptionStatus;e!==t&&this.emit(N.SubscriptionStatusChanged,t,e)}emitPermissionUpdateIfChanged(e){this.permissionStatus!==e&&this.emit(N.SubscriptionPermissionChanged,this.permissionStatus,e)}isManualOperationAllowed(){return this.isDesired?!0:(this.log.warn(`cannot update track settings when not subscribed`,this.logContext),!1)}get isAdaptiveStream(){return Ps(this.track)&&this.track.isAdaptiveStream}emitTrackUpdate(){let e=new Tr({trackSids:[this.trackSid],disabled:!this.isEnabled,fps:this.fps});if(this.kind===P.Kind.Video){let t=this.requestedVideoDimensions;if(this.videoDimensionsAdaptiveStream!==void 0)if(t)$s(this.videoDimensionsAdaptiveStream,t)&&(this.log.debug(`using adaptive stream dimensions instead of requested`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream);else if(this.requestedMaxQuality!==void 0&&this.trackInfo){let e=ec(this.trackInfo,this.requestedMaxQuality);e&&$s(this.videoDimensionsAdaptiveStream,e)&&(this.log.debug(`using adaptive stream dimensions instead of max quality layer`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream)}else this.log.debug(`using adaptive stream dimensions`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream;t?(e.width=Math.ceil(t.width),e.height=Math.ceil(t.height)):this.requestedMaxQuality===void 0?(this.log.debug(`using default quality`,Object.assign(Object.assign({},this.logContext),{quality:xo.HIGH})),e.quality=xo.HIGH):(this.log.debug(`using requested max quality`,Object.assign(Object.assign({},this.logContext),{quality:this.requestedMaxQuality})),e.quality=this.requestedMaxQuality)}this.emit(N.UpdateSettings,e)}},Tu=class e extends xu{static fromParticipantInfo(t,n,r){return new e(t,n.sid,n.identity,n.name,n.metadata,n.attributes,r,n.kind)}get logContext(){return Object.assign(Object.assign({},super.logContext),{rpID:this.sid,remoteParticipant:this.identity})}constructor(e,t,n,r,i,a,o){let s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:Tn.STANDARD;super(t,n||``,r,i,a,o,s),this.signalClient=e,this.trackPublications=new Map,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.volumeMap=new Map}addTrackPublication(e){super.addTrackPublication(e),e.on(N.UpdateSettings,t=>{this.log.debug(`send update settings`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{settings:t})),this.signalClient.sendUpdateTrackSettings(t)}),e.on(N.UpdateSubscription,e=>{e.participantTracks.forEach(e=>{e.participantSid=this.sid}),this.signalClient.sendUpdateSubscription(e)}),e.on(N.SubscriptionPermissionChanged,t=>{this.emit(j.TrackSubscriptionPermissionChanged,e,t)}),e.on(N.SubscriptionStatusChanged,t=>{this.emit(j.TrackSubscriptionStatusChanged,e,t)}),e.on(N.Subscribed,t=>{this.emit(j.TrackSubscribed,t,e)}),e.on(N.Unsubscribed,t=>{this.emit(j.TrackUnsubscribed,t,e)}),e.on(N.SubscriptionFailed,t=>{this.emit(j.TrackSubscriptionFailed,e.trackSid,t)})}getTrackPublication(e){let t=super.getTrackPublication(e);if(t)return t}getTrackPublicationByName(e){let t=super.getTrackPublicationByName(e);if(t)return t}setVolume(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P.Source.Microphone;this.volumeMap.set(t,e);let n=this.getTrackPublication(t);n&&n.track&&n.track.setVolume(e)}getVolume(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:P.Source.Microphone,t=this.getTrackPublication(e);return t&&t.track?t.track.getVolume():this.volumeMap.get(e)}addSubscribedMediaTrack(e,t,n,r,i,a){let o=this.getTrackPublicationBySid(t);if(o||t.startsWith(`TR`)||this.trackPublications.forEach(t=>{!o&&e.kind===t.kind.toString()&&(o=t)}),!o){if(a===0){this.log.error(`could not find published track`,Object.assign(Object.assign({},this.logContext),{trackSid:t})),this.emit(j.TrackSubscriptionFailed,t);return}a===void 0&&(a=20),setTimeout(()=>{this.addSubscribedMediaTrack(e,t,n,r,i,a-1)},150);return}if(e.readyState===`ended`){this.log.error(`unable to subscribe because MediaStreamTrack is ended. Do not call MediaStreamTrack.stop()`,Object.assign(Object.assign({},this.logContext),Js(o))),this.emit(j.TrackSubscriptionFailed,t);return}let s=e.kind===`video`,c;return c=s?new du(e,t,r,i):new lu(e,t,r,this.audioContext,this.audioOutput),c.source=o.source,c.isMuted=o.isMuted,c.setMediaStream(n),c.start(),o.setTrack(c),this.volumeMap.has(o.source)&&Ms(c)&&Os(c)&&c.setVolume(this.volumeMap.get(o.source)),o}get hasMetadata(){return!!this.participantInfo}getTrackPublicationBySid(e){return this.trackPublications.get(e)}updateInfo(e){if(!super.updateInfo(e))return!1;let t=new Map,n=new Map;return e.tracks.forEach(e=>{let r=this.getTrackPublicationBySid(e.sid);if(r)r.updateInfo(e);else{let t=P.kindFromProto(e.type);if(!t)return;r=new wu(t,e,this.signalClient.connectOptions?.autoSubscribe,{loggerContextCb:()=>this.logContext,loggerName:this.loggerOptions?.loggerName}),r.updateInfo(e),n.set(e.sid,r);let i=Array.from(this.trackPublications.values()).find(e=>e.source===r?.source);i&&r.source!==P.Source.Unknown&&this.log.debug(`received a second track publication for ${this.identity} with the same source: ${r.source}`,Object.assign(Object.assign({},this.logContext),{oldTrack:Js(i),newTrack:Js(r)})),this.addTrackPublication(r)}t.set(e.sid,r)}),this.trackPublications.forEach(e=>{t.has(e.trackSid)||(this.log.trace(`detected removed track on remote participant, unpublishing`,Object.assign(Object.assign({},this.logContext),Js(e))),this.unpublishTrack(e.trackSid,!0))}),n.forEach(e=>{this.emit(j.TrackPublished,e)}),!0}unpublishTrack(e,t){let n=this.trackPublications.get(e);if(!n)return;let{track:r}=n;switch(r&&(r.stop(),n.setTrack(void 0)),this.trackPublications.delete(e),n.kind){case P.Kind.Audio:this.audioTrackPublications.delete(e);break;case P.Kind.Video:this.videoTrackPublications.delete(e);break}t&&this.emit(j.TrackUnpublished,n)}setAudioOutput(e){return k(this,void 0,void 0,function*(){this.audioOutput=e;let t=[];this.audioTrackPublications.forEach(n=>{Os(n.track)&&Ms(n.track)&&t.push(n.track.setSinkId(e.deviceId??`default`))}),yield Promise.all(t)})}emit(e){var t=[...arguments].slice(1);return this.log.trace(`participant event`,Object.assign(Object.assign({},this.logContext),{event:e,args:t})),super.emit(e,...t)}},Eu;(function(e){e.Disconnected=`disconnected`,e.Connecting=`connecting`,e.Connected=`connected`,e.Reconnecting=`reconnecting`,e.SignalReconnecting=`signalReconnecting`})(Eu||={});var Du=4*1e3,Ou=class e extends Ai.EventEmitter{get hasE2EESetup(){return this.e2eeManager!==void 0}constructor(t){var n,r;if(super(),n=this,this.state=Eu.Disconnected,this.activeSpeakers=[],this.isE2EEEnabled=!1,this.audioEnabled=!0,this.isVideoPlaybackBlocked=!1,this.log=vi,this.bufferedEvents=[],this.isResuming=!1,this.rpcHandlers=new Map,this.connect=(e,t,n)=>k(this,void 0,void 0,function*(){if(!Wo())throw es()?Error(`WebRTC isn't detected, have you called registerGlobals?`):Error(`LiveKit doesn't seem to be supported on this browser. Try to update your browser and make sure no browser extensions are disabling webRTC.`);let r=yield this.disconnectLock.lock();if(this.state===Eu.Connected)return this.log.info(`already connected to room ${this.name}`,this.logContext),r(),Promise.resolve();if(this.connectFuture)return r(),this.connectFuture.promise;this.setAndEmitConnectionState(Eu.Connecting),this.regionUrlProvider?.getServerUrl().toString()!==e&&(this.regionUrl=void 0,this.regionUrlProvider=void 0),ts(new URL(e))&&(this.regionUrlProvider===void 0?this.regionUrlProvider=new al(e,t):this.regionUrlProvider.updateToken(t),this.regionUrlProvider.fetchRegionSettings().then(e=>{var t;(t=this.regionUrlProvider)==null||t.setServerReportedRegions(e)}).catch(e=>{this.log.warn(`could not fetch region settings`,Object.assign(Object.assign({},this.logContext),{error:e}))}));let i=(a,o,s)=>k(this,void 0,void 0,function*(){this.abortController&&this.abortController.abort();let c=new AbortController;this.abortController=c,r?.();try{if(yield ic.getInstance().getBackOffPromise(e),c.signal.aborted)throw new Za(`Connection attempt aborted`,Xa.Cancelled);yield this.attemptConnection(s??e,t,n,c),this.abortController=void 0,a()}catch(t){if(this.regionUrlProvider&&t instanceof Za&&t.reason!==Xa.Cancelled&&t.reason!==Xa.NotAllowed){let n=null;try{this.log.debug(`Fetching next region`),n=yield this.regionUrlProvider.getNextBestRegionUrl(this.abortController?.signal)}catch(e){if(e instanceof Za&&(e.status===401||e.reason===Xa.Cancelled)){this.handleDisconnect(this.options.stopLocalTrackOnUnpublish),o(e);return}}[Xa.InternalError,Xa.ServerUnreachable,Xa.Timeout].includes(t.reason)&&(this.log.debug(`Adding failed connection attempt to back off`),ic.getInstance().addFailedConnectionAttempt(e)),n&&!this.abortController?.signal.aborted?(this.log.info(`Initial connection failed with ConnectionError: ${t.message}. Retrying with another region: ${n}`,this.logContext),this.recreateEngine(),yield i(a,o,n)):(this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,ws(t)),o(t))}else{let e=gn.UNKNOWN_REASON;t instanceof Za&&(e=ws(t)),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e),o(t)}}}),a=this.regionUrl;return this.regionUrl=void 0,this.connectFuture=new _s((e,t)=>{i(e,t,a)},()=>{this.clearConnectionFutures()}),this.connectFuture.promise}),this.connectSignal=(e,t,n,r,i,a)=>k(this,void 0,void 0,function*(){let o=yield n.join(e,t,{autoSubscribe:r.autoSubscribe,adaptiveStream:typeof i.adaptiveStream==`object`?!0:i.adaptiveStream,maxRetries:r.maxRetries,e2eeEnabled:!!this.e2eeManager,websocketTimeout:r.websocketTimeout,singlePeerConnection:i.singlePeerConnection},a.signal),s=o.serverInfo;if(s||={version:o.serverVersion,region:o.serverRegion},this.serverInfo=s,this.log.debug(`connected to Livekit Server ${Object.entries(s).map(e=>{let[t,n]=e;return`${t}: ${n}`}).join(`, `)}`,{room:o.room?.name,roomSid:o.room?.sid,identity:o.participant?.identity}),!s.version)throw new eo(`unknown server version`);return s.version===`0.15.1`&&this.options.dynacast&&(this.log.debug(`disabling dynacast due to server version`,this.logContext),i.dynacast=!1),o}),this.applyJoinResponse=e=>{let t=e.participant;if(this.localParticipant.sid=t.sid,this.localParticipant.identity=t.identity,this.localParticipant.setEnabledPublishCodecs(e.enabledPublishCodecs),this.e2eeManager)try{this.e2eeManager.setSifTrailer(e.sifTrailer)}catch(e){this.log.error(e instanceof Error?e.message:`Could not set SifTrailer`,Object.assign(Object.assign({},this.logContext),{error:e}))}this.handleParticipantUpdates([t,...e.otherParticipants]),e.room&&this.handleRoomUpdate(e.room)},this.attemptConnection=(e,t,n,r)=>k(this,void 0,void 0,function*(){this.state===Eu.Reconnecting||this.isResuming||this.engine?.pendingReconnect?(this.log.info(`Reconnection attempt replaced by new connection attempt`,this.logContext),this.recreateEngine()):this.maybeCreateEngine(),this.regionUrlProvider?.isCloud()&&this.engine.setRegionUrlProvider(this.regionUrlProvider),this.acquireAudioContext(),this.connOptions=Object.assign(Object.assign({},el),n),this.connOptions.rtcConfig&&(this.engine.rtcConfig=this.connOptions.rtcConfig),this.connOptions.peerConnectionTimeout&&(this.engine.peerConnectionTimeout=this.connOptions.peerConnectionTimeout);try{let n=yield this.connectSignal(e,t,this.engine,this.connOptions,this.options,r);this.applyJoinResponse(n),this.setupLocalParticipantEvents(),this.emit(A.SignalConnected)}catch(e){yield this.engine.close(),this.recreateEngine();let t=new Za(`could not establish signal connection`,r.signal.aborted?Xa.Cancelled:Xa.ServerUnreachable);throw e instanceof Error&&(t.message=`${t.message}: ${e.message}`),e instanceof Za&&(t.reason=e.reason,t.status=e.status),this.log.debug(`error trying to establish signal connection`,Object.assign(Object.assign({},this.logContext),{error:e})),t}if(r.signal.aborted)throw yield this.engine.close(),this.recreateEngine(),new Za(`Connection attempt aborted`,Xa.Cancelled);try{yield this.engine.waitForPCInitialConnection(this.connOptions.peerConnectionTimeout,r)}catch(e){throw yield this.engine.close(),this.recreateEngine(),e}$o()&&this.options.disconnectOnPageLeave&&(window.addEventListener(`pagehide`,this.onPageLeave),window.addEventListener(`beforeunload`,this.onPageLeave)),$o()&&document.addEventListener(`freeze`,this.onPageLeave),this.setAndEmitConnectionState(Eu.Connected),this.emit(A.Connected),ic.getInstance().resetFailedConnectionAttempts(e),this.registerConnectionReconcile(),this.regionUrlProvider&&this.regionUrlProvider.notifyConnected()}),this.disconnect=function(){return k(n,[...arguments],void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var n,r,i;let a=yield e.disconnectLock.lock();try{if(e.state===Eu.Disconnected){e.log.debug(`already disconnected`,e.logContext);return}if(e.log.info(`disconnect from room`,Object.assign({},e.logContext)),e.state===Eu.Connecting||e.state===Eu.Reconnecting||e.isResuming){let t=`Abort connection attempt due to user initiated disconnect`;e.log.warn(t,e.logContext),(n=e.abortController)==null||n.abort(t),(i=(r=e.connectFuture)?.reject)==null||i.call(r,new Za(`Client initiated disconnect`,Xa.Cancelled)),e.connectFuture=void 0}e.engine&&(e.engine.client.isDisconnected||(yield e.engine.client.sendLeave()),yield e.engine.close()),e.handleDisconnect(t,gn.CLIENT_INITIATED),e.engine=void 0}finally{a()}}()})},this.onPageLeave=()=>k(this,void 0,void 0,function*(){this.log.info(`Page leave detected, disconnecting`,this.logContext),yield this.disconnect()}),this.startAudio=()=>k(this,void 0,void 0,function*(){let e=[],t=po();if(t&&t.os===`iOS`){let t=`livekit-dummy-audio-el`,n=document.getElementById(t);if(!n){n=document.createElement(`audio`),n.id=t,n.autoplay=!0,n.hidden=!0;let e=gs();e.enabled=!0;let r=new MediaStream([e]);n.srcObject=r,document.addEventListener(`visibilitychange`,()=>{n&&(n.srcObject=document.hidden?null:r,document.hidden||(this.log.debug(`page visible again, triggering startAudio to resume playback and update playback status`,this.logContext),this.startAudio()))}),document.body.append(n),this.once(A.Disconnected,()=>{n?.remove(),n=null})}e.push(n)}this.remoteParticipants.forEach(t=>{t.audioTrackPublications.forEach(t=>{t.track&&t.track.attachedElements.forEach(t=>{e.push(t)})})});try{yield Promise.all([this.acquireAudioContext(),...e.map(e=>(e.muted=!1,e.play()))]),this.handleAudioPlaybackStarted()}catch(e){throw this.handleAudioPlaybackFailed(e),e}}),this.startVideo=()=>k(this,void 0,void 0,function*(){let e=[];for(let t of this.remoteParticipants.values())t.videoTrackPublications.forEach(t=>{var n;(n=t.track)==null||n.attachedElements.forEach(t=>{e.includes(t)||e.push(t)})});yield Promise.all(e.map(e=>e.play())).then(()=>{this.handleVideoPlaybackStarted()}).catch(e=>{e.name===`NotAllowedError`?this.handleVideoPlaybackFailed():this.log.warn("Resuming video playback failed, make sure you call `startVideo` directly in a user gesture handler",this.logContext)})}),this.handleRestarting=()=>{this.clearConnectionReconcile(),this.isResuming=!1;for(let e of this.remoteParticipants.values())this.handleParticipantDisconnected(e.identity,e);this.setAndEmitConnectionState(Eu.Reconnecting)&&this.emit(A.Reconnecting)},this.handleSignalRestarted=e=>k(this,void 0,void 0,function*(){this.log.debug(`signal reconnected to server, region ${e.serverRegion}`,Object.assign(Object.assign({},this.logContext),{region:e.serverRegion})),this.bufferedEvents=[],this.applyJoinResponse(e);try{yield this.localParticipant.republishAllTracks(void 0,!0)}catch(e){this.log.error(`error trying to re-publish tracks after reconnection`,Object.assign(Object.assign({},this.logContext),{error:e}))}try{yield this.engine.waitForRestarted(),this.log.debug(`fully reconnected to server`,Object.assign(Object.assign({},this.logContext),{region:e.serverRegion}))}catch{return}this.setAndEmitConnectionState(Eu.Connected),this.emit(A.Reconnected),this.registerConnectionReconcile(),this.emitBufferedEvents()}),this.handleParticipantUpdates=e=>{e.forEach(e=>{if(e.identity===this.localParticipant.identity){this.localParticipant.updateInfo(e);return}e.identity===``&&(e.identity=this.sidToIdentity.get(e.sid)??``);let t=this.remoteParticipants.get(e.identity);e.state===wn.DISCONNECTED?this.handleParticipantDisconnected(e.identity,t):t=this.getOrCreateParticipant(e.identity,e)})},this.handleActiveSpeakersUpdate=e=>{let t=[],n={};e.forEach(e=>{if(n[e.sid]=!0,e.sid===this.localParticipant.sid)this.localParticipant.audioLevel=e.level,this.localParticipant.setIsSpeaking(!0),t.push(this.localParticipant);else{let n=this.getRemoteParticipantBySid(e.sid);n&&(n.audioLevel=e.level,n.setIsSpeaking(!0),t.push(n))}}),n[this.localParticipant.sid]||(this.localParticipant.audioLevel=0,this.localParticipant.setIsSpeaking(!1)),this.remoteParticipants.forEach(e=>{n[e.sid]||(e.audioLevel=0,e.setIsSpeaking(!1))}),this.activeSpeakers=t,this.emitWhenConnected(A.ActiveSpeakersChanged,t)},this.handleSpeakersChanged=e=>{let t=new Map;this.activeSpeakers.forEach(e=>{let n=this.remoteParticipants.get(e.identity);n&&n.sid!==e.sid||t.set(e.sid,e)}),e.forEach(e=>{let n=this.getRemoteParticipantBySid(e.sid);e.sid===this.localParticipant.sid&&(n=this.localParticipant),n&&(n.audioLevel=e.level,n.setIsSpeaking(e.active),e.active?t.set(e.sid,n):t.delete(e.sid))});let n=Array.from(t.values());n.sort((e,t)=>t.audioLevel-e.audioLevel),this.activeSpeakers=n,this.emitWhenConnected(A.ActiveSpeakersChanged,n)},this.handleStreamStateUpdate=e=>{e.streamStates.forEach(e=>{let t=this.getRemoteParticipantBySid(e.participantSid);if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);if(!n||!n.track)return;let r=P.streamStateFromProto(e.state);n.track.setStreamState(r),r!==n.track.streamState&&(t.emit(j.TrackStreamStateChanged,n,n.track.streamState),this.emitWhenConnected(A.TrackStreamStateChanged,n,n.track.streamState,t))})},this.handleSubscriptionPermissionUpdate=e=>{let t=this.getRemoteParticipantBySid(e.participantSid);if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);n&&n.setAllowed(e.allowed)},this.handleSubscriptionError=e=>{let t=Array.from(this.remoteParticipants.values()).find(t=>t.trackPublications.has(e.trackSid));if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);n&&n.setSubscriptionError(e.err)},this.handleDataPacket=(e,t)=>{let n=this.remoteParticipants.get(e.participantIdentity);if(e.value.case===`user`)this.handleUserPacket(n,e.value.value,e.kind,t);else if(e.value.case===`transcription`)this.handleTranscription(n,e.value.value);else if(e.value.case===`sipDtmf`)this.handleSipDtmf(n,e.value.value);else if(e.value.case===`chatMessage`)this.handleChatMessage(n,e.value.value);else if(e.value.case===`metrics`)this.handleMetrics(e.value.value,n);else if(e.value.case===`streamHeader`||e.value.case===`streamChunk`||e.value.case===`streamTrailer`)this.handleDataStream(e,t);else if(e.value.case===`rpcRequest`){let t=e.value.value;this.handleIncomingRpcRequest(e.participantIdentity,t.id,t.method,t.payload,t.responseTimeoutMs,t.version)}},this.handleUserPacket=(e,t,n,r)=>{this.emit(A.DataReceived,t.payload,e,n,t.topic,r),e?.emit(j.DataReceived,t.payload,n,r)},this.handleSipDtmf=(e,t)=>{this.emit(A.SipDTMFReceived,t,e),e?.emit(j.SipDTMFReceived,t)},this.handleTranscription=(e,t)=>{let n=t.transcribedParticipantIdentity===this.localParticipant.identity?this.localParticipant:this.getParticipantByIdentity(t.transcribedParticipantIdentity),r=n?.trackPublications.get(t.trackId),i=Ss(t,this.transcriptionReceivedTimes);r?.emit(N.TranscriptionReceived,i),n?.emit(j.TranscriptionReceived,i,r),this.emit(A.TranscriptionReceived,i,n,r)},this.handleChatMessage=(e,t)=>{let n=Cs(t);this.emit(A.ChatMessage,n,e)},this.handleMetrics=(e,t)=>{this.emit(A.MetricsReceived,e,t)},this.handleDataStream=(e,t)=>{this.incomingDataStreamManager.handleDataStreamPacket(e,t)},this.bufferedSegments=new Map,this.handleAudioPlaybackStarted=()=>{this.canPlaybackAudio||(this.audioEnabled=!0,this.emit(A.AudioPlaybackStatusChanged,!0))},this.handleAudioPlaybackFailed=e=>{this.log.warn(`could not playback audio`,Object.assign(Object.assign({},this.logContext),{error:e})),this.canPlaybackAudio&&(this.audioEnabled=!1,this.emit(A.AudioPlaybackStatusChanged,!1))},this.handleVideoPlaybackStarted=()=>{this.isVideoPlaybackBlocked&&(this.isVideoPlaybackBlocked=!1,this.emit(A.VideoPlaybackStatusChanged,!0))},this.handleVideoPlaybackFailed=()=>{this.isVideoPlaybackBlocked||(this.isVideoPlaybackBlocked=!0,this.emit(A.VideoPlaybackStatusChanged,!1))},this.handleDeviceChange=()=>k(this,void 0,void 0,function*(){po()?.os!==`iOS`&&(yield this.selectDefaultDevices()),this.emit(A.MediaDevicesChanged)}),this.handleRoomUpdate=e=>{let t=this.roomInfo;this.roomInfo=e,t&&t.metadata!==e.metadata&&this.emitWhenConnected(A.RoomMetadataChanged,e.metadata),t?.activeRecording!==e.activeRecording&&this.emitWhenConnected(A.RecordingStatusChanged,e.activeRecording)},this.handleConnectionQualityUpdate=e=>{e.updates.forEach(e=>{if(e.participantSid===this.localParticipant.sid){this.localParticipant.setConnectionQuality(e.quality);return}let t=this.getRemoteParticipantBySid(e.participantSid);t&&t.setConnectionQuality(e.quality)})},this.onLocalParticipantMetadataChanged=e=>{this.emit(A.ParticipantMetadataChanged,e,this.localParticipant)},this.onLocalParticipantNameChanged=e=>{this.emit(A.ParticipantNameChanged,e,this.localParticipant)},this.onLocalAttributesChanged=e=>{this.emit(A.ParticipantAttributesChanged,e,this.localParticipant)},this.onLocalTrackMuted=e=>{this.emit(A.TrackMuted,e,this.localParticipant)},this.onLocalTrackUnmuted=e=>{this.emit(A.TrackUnmuted,e,this.localParticipant)},this.onTrackProcessorUpdate=e=>{var t;(t=e?.onPublish)==null||t.call(e,this)},this.onLocalTrackPublished=e=>k(this,void 0,void 0,function*(){var t,n,r,i;(t=e.track)==null||t.on(N.TrackProcessorUpdate,this.onTrackProcessorUpdate),(n=e.track)==null||n.on(N.Restarted,this.onLocalTrackRestarted),(i=(r=e.track?.getProcessor())?.onPublish)==null||i.call(r,this),this.emit(A.LocalTrackPublished,e,this.localParticipant),js(e.track)&&(yield e.track.checkForSilence())&&this.emit(A.LocalAudioSilenceDetected,e);let a=yield e.track?.getDeviceId(!1),o=Ws(e.source);o&&a&&a!==this.localParticipant.activeDeviceMap.get(o)&&(this.localParticipant.activeDeviceMap.set(o,a),this.emit(A.ActiveDeviceChanged,o,a))}),this.onLocalTrackUnpublished=e=>{var t,n;(t=e.track)==null||t.off(N.TrackProcessorUpdate,this.onTrackProcessorUpdate),(n=e.track)==null||n.off(N.Restarted,this.onLocalTrackRestarted),this.emit(A.LocalTrackUnpublished,e,this.localParticipant)},this.onLocalTrackRestarted=e=>k(this,void 0,void 0,function*(){let t=yield e.getDeviceId(!1),n=Ws(e.source);n&&t&&t!==this.localParticipant.activeDeviceMap.get(n)&&(this.log.debug(`local track restarted, setting ${n} ${t} active`,this.logContext),this.localParticipant.activeDeviceMap.set(n,t),this.emit(A.ActiveDeviceChanged,n,t))}),this.onLocalConnectionQualityChanged=e=>{this.emit(A.ConnectionQualityChanged,e,this.localParticipant)},this.onMediaDevicesError=(e,t)=>{this.emit(A.MediaDevicesError,e,t)},this.onLocalParticipantPermissionsChanged=e=>{this.emit(A.ParticipantPermissionsChanged,e,this.localParticipant)},this.onLocalChatMessageSent=e=>{this.emit(A.ChatMessage,e,this.localParticipant)},this.setMaxListeners(100),this.remoteParticipants=new Map,this.sidToIdentity=new Map,this.options=Object.assign(Object.assign({},$c),t),this.log=yi(this.options.loggerName??_i.Room),this.transcriptionReceivedTimes=new Map,this.options.audioCaptureDefaults=Object.assign(Object.assign({},Zc),t?.audioCaptureDefaults),this.options.videoCaptureDefaults=Object.assign(Object.assign({},Qc),t?.videoCaptureDefaults),this.options.publishDefaults=Object.assign(Object.assign({},Xc),t?.publishDefaults),this.maybeCreateEngine(),this.incomingDataStreamManager=new nu,this.outgoingDataStreamManager=new su(this.engine,this.log),this.disconnectLock=new le,this.localParticipant=new Cu(``,``,this.engine,this.options,this.rpcHandlers,this.outgoingDataStreamManager),(this.options.e2ee||this.options.encryption)&&this.setupE2EE(),this.engine.e2eeManager=this.e2eeManager,this.options.videoCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set(`videoinput`,ys(this.options.videoCaptureDefaults.deviceId)),this.options.audioCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set(`audioinput`,ys(this.options.audioCaptureDefaults.deviceId)),this.options.audioOutput?.deviceId&&this.switchActiveDevice(`audiooutput`,ys(this.options.audioOutput.deviceId)).catch(e=>this.log.warn(`Could not set audio output: ${e.message}`,this.logContext)),$o()){let t=new AbortController;(r=navigator.mediaDevices)==null||r.addEventListener(`devicechange`,this.handleDeviceChange,{signal:t.signal}),e.cleanupRegistry&&e.cleanupRegistry.register(this,()=>{t.abort()})}}registerTextStreamHandler(e,t){return this.incomingDataStreamManager.registerTextStreamHandler(e,t)}unregisterTextStreamHandler(e){return this.incomingDataStreamManager.unregisterTextStreamHandler(e)}registerByteStreamHandler(e,t){return this.incomingDataStreamManager.registerByteStreamHandler(e,t)}unregisterByteStreamHandler(e){return this.incomingDataStreamManager.unregisterByteStreamHandler(e)}registerRpcMethod(e,t){if(this.rpcHandlers.has(e))throw Error(`RPC handler already registered for method ${e}, unregisterRpcMethod before trying to register again`);this.rpcHandlers.set(e,t)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setE2EEEnabled(e){return k(this,void 0,void 0,function*(){if(this.e2eeManager)yield Promise.all([this.localParticipant.setE2EEEnabled(e)]),this.localParticipant.identity!==``&&this.e2eeManager.setParticipantCryptorEnabled(e,this.localParticipant.identity);else throw Error(`e2ee not configured, please set e2ee settings within the room options`)})}setupE2EE(){var e;let t=!!this.options.encryption,n=this.options.encryption||this.options.e2ee;n&&(`e2eeManager`in n?(this.e2eeManager=n.e2eeManager,this.e2eeManager.isDataChannelEncryptionEnabled=t):this.e2eeManager=new tc(n,t),this.e2eeManager.on(Ua.ParticipantEncryptionStatusChanged,(e,t)=>{Fs(t)&&(this.isE2EEEnabled=e),this.emit(A.ParticipantEncryptionStatusChanged,e,t)}),this.e2eeManager.on(Ua.EncryptionError,(e,t)=>{let n=t?this.getParticipantByIdentity(t):void 0;this.emit(A.EncryptionError,e,n)}),(e=this.e2eeManager)==null||e.setup(this))}get logContext(){return{room:this.name,roomID:this.roomInfo?.sid,participant:this.localParticipant.identity,pID:this.localParticipant.sid}}get isRecording(){return this.roomInfo?.activeRecording??!1}getSid(){return k(this,void 0,void 0,function*(){return this.state===Eu.Disconnected?``:this.roomInfo&&this.roomInfo.sid!==``?this.roomInfo.sid:new Promise((e,t)=>{let n=t=>{t.sid!==``&&(this.engine.off(M.RoomUpdate,n),e(t.sid))};this.engine.on(M.RoomUpdate,n),this.once(A.Disconnected,()=>{this.engine.off(M.RoomUpdate,n),t(`Room disconnected before room server id was available`)})})})}get name(){return this.roomInfo?.name??``}get metadata(){return this.roomInfo?.metadata}get numParticipants(){return this.roomInfo?.numParticipants??0}get numPublishers(){return this.roomInfo?.numPublishers??0}maybeCreateEngine(){this.engine&&!this.engine.isClosed||(this.engine=new Yl(this.options),this.engine.e2eeManager=this.e2eeManager,this.engine.on(M.ParticipantUpdate,this.handleParticipantUpdates).on(M.RoomUpdate,this.handleRoomUpdate).on(M.SpeakersChanged,this.handleSpeakersChanged).on(M.StreamStateChanged,this.handleStreamStateUpdate).on(M.ConnectionQualityUpdate,this.handleConnectionQualityUpdate).on(M.SubscriptionError,this.handleSubscriptionError).on(M.SubscriptionPermissionUpdate,this.handleSubscriptionPermissionUpdate).on(M.MediaTrackAdded,(e,t,n)=>{this.onTrackAdded(e,t,n)}).on(M.Disconnected,e=>{this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e)}).on(M.ActiveSpeakersUpdate,this.handleActiveSpeakersUpdate).on(M.DataPacketReceived,this.handleDataPacket).on(M.Resuming,()=>{this.clearConnectionReconcile(),this.isResuming=!0,this.log.info(`Resuming signal connection`,this.logContext),this.setAndEmitConnectionState(Eu.SignalReconnecting)&&this.emit(A.SignalReconnecting)}).on(M.Resumed,()=>{this.registerConnectionReconcile(),this.isResuming=!1,this.log.info(`Resumed signal connection`,this.logContext),this.updateSubscriptions(),this.emitBufferedEvents(),this.setAndEmitConnectionState(Eu.Connected)&&this.emit(A.Reconnected)}).on(M.SignalResumed,()=>{this.bufferedEvents=[],(this.state===Eu.Reconnecting||this.isResuming)&&this.sendSyncState()}).on(M.Restarting,this.handleRestarting).on(M.SignalRestarted,this.handleSignalRestarted).on(M.Offline,()=>{this.setAndEmitConnectionState(Eu.Reconnecting)&&this.emit(A.Reconnecting)}).on(M.DCBufferStatusChanged,(e,t)=>{this.emit(A.DCBufferStatusChanged,e,t)}).on(M.LocalTrackSubscribed,e=>{let t=this.localParticipant.getTrackPublications().find(t=>{let{trackSid:n}=t;return n===e});if(!t){this.log.warn(`could not find local track subscription for subscribed event`,this.logContext);return}this.localParticipant.emit(j.LocalTrackSubscribed,t),this.emitWhenConnected(A.LocalTrackSubscribed,t,this.localParticipant)}).on(M.RoomMoved,e=>{this.log.debug(`room moved`,e),e.room&&this.handleRoomUpdate(e.room),this.remoteParticipants.forEach((e,t)=>{this.handleParticipantDisconnected(t,e)}),this.emit(A.Moved,e.room.name),e.participant?this.handleParticipantUpdates([e.participant,...e.otherParticipants]):this.handleParticipantUpdates(e.otherParticipants)}),this.localParticipant&&this.localParticipant.setupEngine(this.engine),this.e2eeManager&&this.e2eeManager.setupEngine(this.engine),this.outgoingDataStreamManager&&this.outgoingDataStreamManager.setupEngine(this.engine))}static getLocalDevices(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return oc.getInstance().getDevices(e,t)}prepareConnection(e,t){return k(this,void 0,void 0,function*(){if(this.state===Eu.Disconnected){this.log.debug(`prepareConnection to ${e}`,this.logContext);try{if(ts(new URL(e))&&t){this.regionUrlProvider=new al(e,t);let n=yield this.regionUrlProvider.getNextBestRegionUrl();n&&this.state===Eu.Disconnected&&(this.regionUrl=n,yield fetch(xs(n),{method:`HEAD`}),this.log.debug(`prepared connection to ${n}`,this.logContext))}else yield fetch(xs(e),{method:`HEAD`})}catch(e){this.log.warn(`could not prepare connection`,Object.assign(Object.assign({},this.logContext),{error:e}))}}})}getParticipantByIdentity(e){return this.localParticipant.identity===e?this.localParticipant:this.remoteParticipants.get(e)}clearConnectionFutures(){this.connectFuture=void 0}simulateScenario(e,t){return k(this,void 0,void 0,function*(){let n=()=>k(this,void 0,void 0,function*(){}),r;switch(e){case`signal-reconnect`:yield this.engine.client.handleOnClose(`simulate disconnect`);break;case`speaker`:r=new Xr({scenario:{case:`speakerUpdate`,value:3}});break;case`node-failure`:r=new Xr({scenario:{case:`nodeFailure`,value:!0}});break;case`server-leave`:r=new Xr({scenario:{case:`serverLeave`,value:!0}});break;case`migration`:r=new Xr({scenario:{case:`migration`,value:!0}});break;case`resume-reconnect`:this.engine.failNext(),yield this.engine.client.handleOnClose(`simulate resume-disconnect`);break;case`disconnect-signal-on-resume`:n=()=>k(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose(`simulate resume-disconnect`)}),r=new Xr({scenario:{case:`disconnectSignalOnResume`,value:!0}});break;case`disconnect-signal-on-resume-no-messages`:n=()=>k(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose(`simulate resume-disconnect`)}),r=new Xr({scenario:{case:`disconnectSignalOnResumeNoMessages`,value:!0}});break;case`full-reconnect`:this.engine.fullReconnectOnNext=!0,yield this.engine.client.handleOnClose(`simulate full-reconnect`);break;case`force-tcp`:case`force-tls`:r=new Xr({scenario:{case:`switchCandidateProtocol`,value:e===`force-tls`?2:1}}),n=()=>k(this,void 0,void 0,function*(){let e=this.engine.client.onLeave;e&&e(new Or({reason:gn.CLIENT_INITIATED,action:kr.RECONNECT}))});break;case`subscriber-bandwidth`:if(t===void 0||typeof t!=`number`)throw Error(`subscriber-bandwidth requires a number as argument`);r=new Xr({scenario:{case:`subscriberBandwidth`,value:Es(t)}});break;case`leave-full-reconnect`:r=new Xr({scenario:{case:`leaveRequestFullReconnect`,value:!0}})}r&&(yield this.engine.client.sendSimulateScenario(r),yield n())})}get canPlaybackAudio(){return this.audioEnabled}get canPlaybackVideo(){return!this.isVideoPlaybackBlocked}getActiveDevice(e){return this.localParticipant.activeDeviceMap.get(e)}switchActiveDevice(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return function*(){var i,a;let o=!0,s=!1,c=r?{exact:t}:t;if(e===`audioinput`){s=n.localParticipant.audioTrackPublications.size===0;let t=n.getActiveDevice(e)??n.options.audioCaptureDefaults.deviceId;n.options.audioCaptureDefaults.deviceId=c;let r=Array.from(n.localParticipant.audioTrackPublications.values()).filter(e=>e.source===P.Source.Microphone);try{o=(yield Promise.all(r.map(e=>e.audioTrack?.setDeviceId(c)))).every(e=>e===!0)}catch(e){throw n.options.audioCaptureDefaults.deviceId=t,e}let i=r.some(e=>e.track?.isMuted??!1);o&&i&&(s=!0)}else if(e===`videoinput`){s=n.localParticipant.videoTrackPublications.size===0;let t=n.getActiveDevice(e)??n.options.videoCaptureDefaults.deviceId;n.options.videoCaptureDefaults.deviceId=c;let r=Array.from(n.localParticipant.videoTrackPublications.values()).filter(e=>e.source===P.Source.Camera);try{o=(yield Promise.all(r.map(e=>e.videoTrack?.setDeviceId(c)))).every(e=>e===!0)}catch(e){throw n.options.videoCaptureDefaults.deviceId=t,e}let i=r.some(e=>e.track?.isMuted??!1);o&&i&&(s=!0)}else if(e===`audiooutput`){if(s=!0,!Uo()&&!n.options.webAudioMix||n.options.webAudioMix&&n.audioContext&&!(`setSinkId`in n.audioContext))throw Error(`cannot switch audio output, the current browser does not support it`);n.options.webAudioMix&&(t=(yield oc.getInstance().normalizeDeviceId(`audiooutput`,t))??``),(a=n.options).audioOutput??(a.audioOutput={});let r=n.getActiveDevice(e)??n.options.audioOutput.deviceId;n.options.audioOutput.deviceId=t;try{n.options.webAudioMix&&((i=n.audioContext)==null||i.setSinkId(t)),yield Promise.all(Array.from(n.remoteParticipants.values()).map(e=>e.setAudioOutput({deviceId:t})))}catch(e){throw n.options.audioOutput.deviceId=r,e}}return s&&(n.localParticipant.activeDeviceMap.set(e,t),n.emit(A.ActiveDeviceChanged,e,t)),o}()})}setupLocalParticipantEvents(){this.localParticipant.on(j.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).on(j.ParticipantNameChanged,this.onLocalParticipantNameChanged).on(j.AttributesChanged,this.onLocalAttributesChanged).on(j.TrackMuted,this.onLocalTrackMuted).on(j.TrackUnmuted,this.onLocalTrackUnmuted).on(j.LocalTrackPublished,this.onLocalTrackPublished).on(j.LocalTrackUnpublished,this.onLocalTrackUnpublished).on(j.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).on(j.MediaDevicesError,this.onMediaDevicesError).on(j.AudioStreamAcquired,this.startAudio).on(j.ChatMessage,this.onLocalChatMessageSent).on(j.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged)}recreateEngine(){var e;(e=this.engine)==null||e.close(),this.engine=void 0,this.isResuming=!1,this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.bufferedEvents=[],this.maybeCreateEngine()}onTrackAdded(e,t,n){if(this.state===Eu.Connecting||this.state===Eu.Reconnecting){let r=()=>{this.log.debug(`deferring on track for later`,{mediaTrackId:e.id,mediaStreamId:t.id,tracksInStream:t.getTracks().map(e=>e.id)}),this.onTrackAdded(e,t,n),i()},i=()=>{this.off(A.Reconnected,r),this.off(A.Connected,r),this.off(A.Disconnected,i)};this.once(A.Reconnected,r),this.once(A.Connected,r),this.once(A.Disconnected,i);return}if(this.state===Eu.Disconnected){this.log.warn(`skipping incoming track after Room disconnected`,this.logContext);return}if(e.readyState===`ended`){this.log.info(`skipping incoming track as it already ended`,this.logContext);return}let r=Io(t.id),i=r[0],a=r[1],o=e.id;if(a&&a.startsWith(`TR`)&&(o=a),i===this.localParticipant.sid){this.log.warn(`tried to create RemoteParticipant for local participant`,this.logContext);return}let s=Array.from(this.remoteParticipants.values()).find(e=>e.sid===i);if(!s){this.log.error(`Tried to add a track for a participant, that's not present. Sid: ${i}`,this.logContext);return}if(!o.startsWith(`TR`)){let e=this.engine.getTrackIdForReceiver(n);if(!e){this.log.error(`Tried to add a track whose 'sid' could not be found for a participant, that's not present. Sid: ${i}`,this.logContext);return}o=e}o.startsWith(`TR`)||this.log.warn(`Tried to add a track whose 'sid' could not be determined for a participant, that's not present. Sid: ${i}, streamId: ${a}, trackId: ${o}`,Object.assign(Object.assign({},this.logContext),{rpID:i,streamId:a,trackId:o}));let c;this.options.adaptiveStream&&(c=typeof this.options.adaptiveStream==`object`?this.options.adaptiveStream:{});let l=s.addSubscribedMediaTrack(e,o,t,n,c);l?.isEncrypted&&!this.e2eeManager&&this.emit(A.EncryptionError,Error(`Encrypted ${l.source} track received from participant ${s.sid}, but room does not have encryption enabled!`))}handleDisconnect(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;var n;if(this.clearConnectionReconcile(),this.isResuming=!1,this.bufferedEvents=[],this.transcriptionReceivedTimes.clear(),this.incomingDataStreamManager.clearControllers(),this.state!==Eu.Disconnected){this.regionUrl=void 0,this.regionUrlProvider&&this.regionUrlProvider.notifyDisconnected();try{this.remoteParticipants.forEach(e=>{e.trackPublications.forEach(t=>{e.unpublishTrack(t.trackSid)})}),this.localParticipant.trackPublications.forEach(t=>{var n,r,i;t.track&&this.localParticipant.unpublishTrack(t.track,e),e?((n=t.track)==null||n.detach(),(r=t.track)==null||r.stop()):(i=t.track)==null||i.stopMonitor()}),this.localParticipant.off(j.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).off(j.ParticipantNameChanged,this.onLocalParticipantNameChanged).off(j.AttributesChanged,this.onLocalAttributesChanged).off(j.TrackMuted,this.onLocalTrackMuted).off(j.TrackUnmuted,this.onLocalTrackUnmuted).off(j.LocalTrackPublished,this.onLocalTrackPublished).off(j.LocalTrackUnpublished,this.onLocalTrackUnpublished).off(j.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).off(j.MediaDevicesError,this.onMediaDevicesError).off(j.AudioStreamAcquired,this.startAudio).off(j.ChatMessage,this.onLocalChatMessageSent).off(j.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged),this.localParticipant.trackPublications.clear(),this.localParticipant.videoTrackPublications.clear(),this.localParticipant.audioTrackPublications.clear(),this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.activeSpeakers=[],this.audioContext&&typeof this.options.webAudioMix==`boolean`&&(this.audioContext.close(),this.audioContext=void 0),$o()&&(window.removeEventListener(`beforeunload`,this.onPageLeave),window.removeEventListener(`pagehide`,this.onPageLeave),window.removeEventListener(`freeze`,this.onPageLeave),(n=navigator.mediaDevices)==null||n.removeEventListener(`devicechange`,this.handleDeviceChange))}finally{this.setAndEmitConnectionState(Eu.Disconnected),this.emit(A.Disconnected,t)}}}handleParticipantDisconnected(e,t){var n;this.remoteParticipants.delete(e),t&&(this.incomingDataStreamManager.validateParticipantHasNoActiveDataStreams(e),t.trackPublications.forEach(e=>{t.unpublishTrack(e.trackSid,!0)}),this.emit(A.ParticipantDisconnected,t),t.setDisconnected(),(n=this.localParticipant)==null||n.handleParticipantDisconnected(t.identity))}handleIncomingRpcRequest(e,t,n,r,i,a){return k(this,void 0,void 0,function*(){if(yield this.engine.publishRpcAck(e,t),a!==1){yield this.engine.publishRpcResponse(e,t,null,sl.builtIn(`UNSUPPORTED_VERSION`));return}let o=this.rpcHandlers.get(n);if(!o){yield this.engine.publishRpcResponse(e,t,null,sl.builtIn(`UNSUPPORTED_METHOD`));return}let s=null,c=null;try{let a=yield o({requestId:t,callerIdentity:e,payload:r,responseTimeout:i});ll(a)>cl?(s=sl.builtIn(`RESPONSE_PAYLOAD_TOO_LARGE`),console.warn(`RPC Response payload too large for ${n}`)):c=a}catch(e){e instanceof sl?s=e:(console.warn(`Uncaught error returned by RPC handler for ${n}. Returning APPLICATION_ERROR instead.`,e),s=sl.builtIn(`APPLICATION_ERROR`))}yield this.engine.publishRpcResponse(e,t,c,s)})}selectDefaultDevices(){return k(this,void 0,void 0,function*(){let e=oc.getInstance().previousDevices,t=yield oc.getInstance().getDevices(void 0,!1),n=po();if(n?.name===`Chrome`&&n.os!==`iOS`)for(let n of t){let t=e.find(e=>e.deviceId===n.deviceId);t&&t.label!==``&&t.kind===n.kind&&t.label!==n.label&&this.getActiveDevice(n.kind)===`default`&&this.emit(A.ActiveDeviceChanged,n.kind,n.deviceId)}for(let n of[`audiooutput`,`audioinput`,`videoinput`]){let r=Us(n),i=this.localParticipant.getTrackPublication(r);if(i&&i.track?.isUserProvided)continue;let a=t.filter(e=>e.kind===n),o=this.getActiveDevice(n);if(o===e.filter(e=>e.kind===n)[0]?.deviceId&&a.length>0&&a[0]?.deviceId!==o){yield this.switchActiveDevice(n,a[0].deviceId);continue}n===`audioinput`&&!Jo()||n===`videoinput`||a.length>0&&!a.find(e=>e.deviceId===this.getActiveDevice(n))&&(n!==`audiooutput`||!Jo())&&(yield this.switchActiveDevice(n,a[0].deviceId))}})}acquireAudioContext(){return k(this,void 0,void 0,function*(){if(typeof this.options.webAudioMix!=`boolean`&&this.options.webAudioMix.audioContext?this.audioContext=this.options.webAudioMix.audioContext:(!this.audioContext||this.audioContext.state===`closed`)&&(this.audioContext=Hs()??void 0),this.options.webAudioMix&&this.remoteParticipants.forEach(e=>e.setAudioContext(this.audioContext)),this.localParticipant.setAudioContext(this.audioContext),this.audioContext&&this.audioContext.state===`suspended`)try{yield Promise.race([this.audioContext.resume(),Lo(200)])}catch(e){this.log.warn(`Could not resume audio context`,Object.assign(Object.assign({},this.logContext),{error:e}))}let e=this.audioContext?.state===`running`;e!==this.canPlaybackAudio&&(this.audioEnabled=e,this.emit(A.AudioPlaybackStatusChanged,e))})}createParticipant(e,t){let n;return n=t?Tu.fromParticipantInfo(this.engine.client,t,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}):new Tu(this.engine.client,``,e,void 0,void 0,void 0,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}),this.options.webAudioMix&&n.setAudioContext(this.audioContext),this.options.audioOutput?.deviceId&&n.setAudioOutput(this.options.audioOutput).catch(e=>this.log.warn(`Could not set audio output: ${e.message}`,this.logContext)),n}getOrCreateParticipant(e,t){if(this.remoteParticipants.has(e)){let n=this.remoteParticipants.get(e);return t&&n.updateInfo(t)&&this.sidToIdentity.set(t.sid,t.identity),n}let n=this.createParticipant(e,t);return this.remoteParticipants.set(e,n),this.sidToIdentity.set(t.sid,t.identity),this.emitWhenConnected(A.ParticipantConnected,n),n.on(j.TrackPublished,e=>{this.emitWhenConnected(A.TrackPublished,e,n)}).on(j.TrackSubscribed,(e,t)=>{e.kind===P.Kind.Audio?(e.on(N.AudioPlaybackStarted,this.handleAudioPlaybackStarted),e.on(N.AudioPlaybackFailed,this.handleAudioPlaybackFailed)):e.kind===P.Kind.Video&&(e.on(N.VideoPlaybackFailed,this.handleVideoPlaybackFailed),e.on(N.VideoPlaybackStarted,this.handleVideoPlaybackStarted)),this.emit(A.TrackSubscribed,e,t,n)}).on(j.TrackUnpublished,e=>{this.emit(A.TrackUnpublished,e,n)}).on(j.TrackUnsubscribed,(e,t)=>{this.emit(A.TrackUnsubscribed,e,t,n)}).on(j.TrackMuted,e=>{this.emitWhenConnected(A.TrackMuted,e,n)}).on(j.TrackUnmuted,e=>{this.emitWhenConnected(A.TrackUnmuted,e,n)}).on(j.ParticipantMetadataChanged,e=>{this.emitWhenConnected(A.ParticipantMetadataChanged,e,n)}).on(j.ParticipantNameChanged,e=>{this.emitWhenConnected(A.ParticipantNameChanged,e,n)}).on(j.AttributesChanged,e=>{this.emitWhenConnected(A.ParticipantAttributesChanged,e,n)}).on(j.ConnectionQualityChanged,e=>{this.emitWhenConnected(A.ConnectionQualityChanged,e,n)}).on(j.ParticipantPermissionsChanged,e=>{this.emitWhenConnected(A.ParticipantPermissionsChanged,e,n)}).on(j.TrackSubscriptionStatusChanged,(e,t)=>{this.emitWhenConnected(A.TrackSubscriptionStatusChanged,e,t,n)}).on(j.TrackSubscriptionFailed,(e,t)=>{this.emit(A.TrackSubscriptionFailed,e,n,t)}).on(j.TrackSubscriptionPermissionChanged,(e,t)=>{this.emitWhenConnected(A.TrackSubscriptionPermissionChanged,e,t,n)}).on(j.Active,()=>{this.emitWhenConnected(A.ParticipantActive,n),n.kind===Tn.AGENT&&this.localParticipant.setActiveAgent(n)}),t&&n.updateInfo(t),n}sendSyncState(){let e=Array.from(this.remoteParticipants.values()).reduce((e,t)=>(e.push(...t.getTrackPublications()),e),[]),t=this.localParticipant.getTrackPublications();this.engine.sendSyncState(e,t)}updateSubscriptions(){for(let e of this.remoteParticipants.values())for(let t of e.videoTrackPublications.values())t.isSubscribed&&Ns(t)&&t.emitTrackUpdate()}getRemoteParticipantBySid(e){let t=this.sidToIdentity.get(e);if(t)return this.remoteParticipants.get(t)}registerConnectionReconcile(){this.clearConnectionReconcile();let e=0;this.connectionReconcileInterval=vo.setInterval(()=>{!this.engine||this.engine.isClosed||!this.engine.verifyTransport()?(e++,this.log.warn(`detected connection state mismatch`,Object.assign(Object.assign({},this.logContext),{numFailures:e,engine:this.engine?{closed:this.engine.isClosed,transportsConnected:this.engine.verifyTransport()}:void 0})),e>=3&&(this.recreateEngine(),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,gn.STATE_MISMATCH))):e=0},Du)}clearConnectionReconcile(){this.connectionReconcileInterval&&vo.clearInterval(this.connectionReconcileInterval)}setAndEmitConnectionState(e){return e===this.state?!1:(this.state=e,this.emit(A.ConnectionStateChanged,this.state),!0)}emitBufferedEvents(){this.bufferedEvents.forEach(e=>{let[t,n]=e;this.emit(t,...n)}),this.bufferedEvents=[]}emitWhenConnected(e){var t=[...arguments].slice(1);if(this.state===Eu.Reconnecting||this.isResuming||!this.engine||this.engine.pendingReconnect)this.bufferedEvents.push([e,t]);else if(this.state===Eu.Connected)return this.emit(e,...t);return!1}simulateParticipants(e){return k(this,void 0,void 0,function*(){let t=Object.assign({audio:!0,video:!0,useRealTracks:!1},e.publish),n=Object.assign({count:9,audio:!1,video:!0,aspectRatios:[1.66,1.7,1.3]},e.participants);if(this.handleDisconnect(),this.roomInfo=new bn({sid:`RM_SIMULATED`,name:`simulated-room`,emptyTimeout:0,maxParticipants:0,creationTime:Be.parse(new Date().getTime()),metadata:``,numParticipants:1,numPublishers:1,turnPassword:``,enabledCodecs:[],activeRecording:!1}),this.localParticipant.updateInfo(new Cn({identity:`simulated-local`,name:`local-name`})),this.setupLocalParticipantEvents(),this.emit(A.SignalConnected),this.emit(A.Connected),this.setAndEmitConnectionState(Eu.Connected),t.video){let e=new gu(P.Kind.Video,new kn({source:fn.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO,name:`video-dummy`}),new zl(t.useRealTracks?(yield window.navigator.mediaDevices.getUserMedia({video:!0})).getVideoTracks()[0]:ms(160*(n.aspectRatios[0]??1),160,!0,!0),void 0,!1,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(e),this.localParticipant.emit(j.LocalTrackPublished,e)}if(t.audio){let e=new gu(P.Kind.Audio,new kn({source:fn.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO}),new bl(t.useRealTracks?(yield navigator.mediaDevices.getUserMedia({audio:!0})).getAudioTracks()[0]:gs(),void 0,!1,this.audioContext,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(e),this.localParticipant.emit(j.LocalTrackPublished,e)}for(let e=0;e<n.count-1;e+=1){let t=new Cn({sid:Math.floor(Math.random()*1e4).toString(),identity:`simulated-${e}`,state:wn.ACTIVE,tracks:[],joinedAt:Be.parse(Date.now())}),r=this.getOrCreateParticipant(t.identity,t);if(n.video){let i=ms(160*(n.aspectRatios[e%n.aspectRatios.length]??1),160,!1,!0),a=new kn({source:fn.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO});r.addSubscribedMediaTrack(i,a.sid,new MediaStream([i]),new RTCRtpReceiver),t.tracks=[...t.tracks,a]}if(n.audio){let e=gs(),n=new kn({source:fn.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO});r.addSubscribedMediaTrack(e,n.sid,new MediaStream([e]),new RTCRtpReceiver),t.tracks=[...t.tracks,n]}r.updateInfo(t)}})}emit(e){var t=[...arguments].slice(1);if(e!==A.ActiveSpeakersChanged&&e!==A.TranscriptionReceived){let n=ku(t).filter(e=>e!==void 0);(e===A.TrackSubscribed||e===A.TrackUnsubscribed)&&this.log.trace(`subscribe trace: ${e}`,Object.assign(Object.assign({},this.logContext),{event:e,args:n})),this.log.debug(`room event ${e}`,Object.assign(Object.assign({},this.logContext),{event:e,args:n}))}return super.emit(e,...t)}};Ou.cleanupRegistry=typeof FinalizationRegistry<`u`&&new FinalizationRegistry(e=>{e()});function ku(e){return e.map(e=>{if(e)return Array.isArray(e)?ku(e):typeof e==`object`?`logContext`in e?e.logContext:void 0:e})}var Au;(function(e){e[e.IDLE=0]=`IDLE`,e[e.RUNNING=1]=`RUNNING`,e[e.SKIPPED=2]=`SKIPPED`,e[e.SUCCESS=3]=`SUCCESS`,e[e.FAILED=4]=`FAILED`})(Au||={}),Ai.EventEmitter,Ai.EventEmitter;function ju(e,t,n){return(t=Nu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mu(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Nu(e){var t=Mu(e,`string`);return typeof t==`symbol`?t:t+``}new TextEncoder,new TextDecoder;var Pu=class extends Error{constructor(e,t){var n;super(e,t),ju(this,`code`,`ERR_JOSE_GENERIC`),this.name=this.constructor.name,(n=Error.captureStackTrace)==null||n.call(Error,this,this.constructor)}};ju(Pu,`code`,`ERR_JOSE_GENERIC`),ju(class extends Pu{constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:`unspecified`,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`unspecified`;super(e,{cause:{claim:n,reason:r,payload:t}}),ju(this,`code`,`ERR_JWT_CLAIM_VALIDATION_FAILED`),ju(this,`claim`,void 0),ju(this,`reason`,void 0),ju(this,`payload`,void 0),this.claim=n,this.reason=r,this.payload=t}},`code`,`ERR_JWT_CLAIM_VALIDATION_FAILED`),ju(class extends Pu{constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:`unspecified`,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`unspecified`;super(e,{cause:{claim:n,reason:r,payload:t}}),ju(this,`code`,`ERR_JWT_EXPIRED`),ju(this,`claim`,void 0),ju(this,`reason`,void 0),ju(this,`payload`,void 0),this.claim=n,this.reason=r,this.payload=t}},`code`,`ERR_JWT_EXPIRED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JOSE_ALG_NOT_ALLOWED`)}},`code`,`ERR_JOSE_ALG_NOT_ALLOWED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JOSE_NOT_SUPPORTED`)}},`code`,`ERR_JOSE_NOT_SUPPORTED`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`decryption operation failed`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWE_DECRYPTION_FAILED`)}},`code`,`ERR_JWE_DECRYPTION_FAILED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWE_INVALID`)}},`code`,`ERR_JWE_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWS_INVALID`)}},`code`,`ERR_JWS_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWT_INVALID`)}},`code`,`ERR_JWT_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWK_INVALID`)}},`code`,`ERR_JWK_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWKS_INVALID`)}},`code`,`ERR_JWKS_INVALID`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`no applicable key found in the JSON Web Key Set`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWKS_NO_MATCHING_KEY`)}},`code`,`ERR_JWKS_NO_MATCHING_KEY`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`multiple matching keys found in the JSON Web Key Set`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,Symbol.asyncIterator,void 0),ju(this,`code`,`ERR_JWKS_MULTIPLE_MATCHING_KEYS`)}},`code`,`ERR_JWKS_MULTIPLE_MATCHING_KEYS`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`request timed out`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWKS_TIMEOUT`)}},`code`,`ERR_JWKS_TIMEOUT`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`signature verification failed`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`)}},`code`,`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`);function Fu(e){let t=new Uint8Array(e);return window.btoa(String.fromCharCode(...t))}function Iu(e){let t=window.atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}var Lu=`wss://livekit.rtc.elevenlabs.io`,Ru=`https://api.elevenlabs.io`;function zu(e){return e.replace(/^wss:\/\//,`https://`)}var Bu=class t extends C{conversationId;inputFormat;outputFormat;room;isConnected=!1;audioEventId=1;audioCaptureContext=null;audioElements=[];outputDeviceId=null;inputAnalyser=null;inputAudioContext=null;inputVolumeProvider=p;outputAnalyser=null;outputVolumeProvider=p;_isMuted=!1;input={close:async()=>{if(this.isConnected)try{this.room.localParticipant.audioTrackPublications.forEach(e=>{e.track&&e.track.stop()})}catch(e){console.warn(`Error stopping local tracks:`,e)}},setDevice:async e=>{if(e?.sampleRate!==void 0||e?.format!==void 0||e?.preferHeadphonesForIosDevices!==void 0)throw Error(`WebRTC input device does not support sampleRate, format, or preferHeadphonesForIosDevices options`);let t=e?.inputDeviceId;t&&await this.setAudioInputDevice(t)},setMuted:async e=>{if(!this.isConnected||!this.room.localParticipant){console.warn(`Cannot set microphone muted: room not connected or no local participant`);return}this._isMuted=e;let t=this.room.localParticipant.getTrackPublication(P.Source.Microphone);if(t?.track)try{e?await t.track.mute():await t.track.unmute()}catch{await this.room.localParticipant.setMicrophoneEnabled(!e)}else await this.room.localParticipant.setMicrophoneEnabled(!e);if(!e){let e=this.room.localParticipant.getTrackPublication(P.Source.Microphone)?.track;e&&this.setupInputAnalyser(e.mediaStreamTrack)}},isMuted:()=>this._isMuted,getAnalyser:()=>this.inputAnalyser??void 0,getVolume:()=>this._isMuted?0:this.inputVolumeProvider.getVolume(),getByteFrequencyData:e=>{if(this._isMuted){e.fill(0);return}this.inputVolumeProvider.getByteFrequencyData(e)}};output={close:async()=>{},setDevice:async e=>{if(e?.sampleRate!==void 0||e?.format!==void 0)throw Error(`WebRTC output device does not support sampleRate or format options`);let t=e?.outputDeviceId;t&&await this.setAudioOutputDevice(t)},setVolume:e=>{this.setAudioVolume(e)},interrupt:e=>{},getAnalyser:()=>this.outputAnalyser??void 0,getVolume:()=>this.outputVolumeProvider.getVolume(),getByteFrequencyData:e=>{this.outputVolumeProvider.getByteFrequencyData(e)}};constructor(e,t,n,r,i={}){super(i),this.room=e,this.conversationId=t,this.inputFormat=n,this.outputFormat=r,this.setupRoomEventListeners()}static async create(n){let r;if(`conversationToken`in n&&n.conversationToken)r=n.conversationToken;else if(`agentId`in n&&n.agentId)try{let{name:t,version:i}=a,o=`${zu(n.origin??Ru)}/v1/convai/conversation/token?agent_id=${n.agentId}&source=${t}&version=${i}`;n.environment&&(o+=`&environment=${encodeURIComponent(n.environment)}`);let s=await fetch(o);if(!s.ok){let t=await e(s);throw Error(`ElevenLabs API returned ${s.status} ${t}`)}if(r=(await s.json()).token,!r)throw Error(`No conversation token received from API`)}catch(e){let t=e instanceof Error?e.message:String(e);throw e instanceof Error&&e.message.includes(`401`)&&(t=`Your agent has authentication enabled, but no signed URL or conversation token was provided.`),Error(`Failed to fetch conversation token for agent ${n.agentId}: ${t}`)}else throw Error(`Either conversationToken or agentId is required for WebRTC connection`);let i=new Ou;try{let e=new t(i,`room_${Date.now()}`,w(`pcm_48000`),w(`pcm_48000`),n),a=n.livekitUrl||Lu,o=n.textOnly?Promise.resolve():new Promise((e,t)=>{i.once(A.SignalConnected,()=>{i.localParticipant.setMicrophoneEnabled(!0).then(()=>e()).catch(t)})});await i.connect(a,r),await new Promise(t=>{if(e.isConnected)t();else{let e=()=>{i.off(A.Connected,e),t()};i.on(A.Connected,e)}}),await o;let s=i.localParticipant.getTrackPublication(P.Source.Microphone)?.track;s&&e.setupInputAnalyser(s.mediaStreamTrack),i.name&&(e.conversationId=i.name.match(/(conv_[a-zA-Z0-9]+)/)?.[0]||i.name);let c=te(n);return e.debug({type:ee,message:c}),await e.sendMessage(c),e}catch(e){throw await i.disconnect(),e}}setupRoomEventListeners(){this.room.on(A.Connected,async()=>{this.isConnected=!0}),this.room.on(A.Disconnected,e=>{this.isConnected=!1,this.disconnect({reason:`agent`,context:new CloseEvent(`close`,{reason:e?.toString()})})}),this.room.on(A.ConnectionStateChanged,e=>{e===Eu.Disconnected&&(this.isConnected=!1,this.disconnect({reason:`error`,message:`LiveKit connection state changed to ${e}`,context:new Event(`connection_state_changed`)}))}),this.room.on(A.DataReceived,(e,t)=>{try{let t=JSON.parse(new TextDecoder().decode(e));if(t.type===`audio`)return;T(t)?this.handleMessage(t):console.warn(`Invalid socket event received:`,t)}catch(t){console.warn(`Failed to parse incoming data message:`,t),console.warn(`Raw payload:`,new TextDecoder().decode(e))}}),this.room.on(A.TrackSubscribed,async(e,t,n)=>{if(e.kind===P.Kind.Audio&&n.identity.includes(`agent`)){let t=e,n=t.attach();if(n.autoplay=!0,n.controls=!1,this.outputDeviceId&&n.setSinkId)try{await n.setSinkId(this.outputDeviceId)}catch(e){console.warn(`Failed to set output device for new audio element:`,e)}n.style.display=`none`,document.body.appendChild(n),this.audioElements.push(n),this.audioElements.length===1&&this.onDebug?.({type:`audio_element_ready`}),await this.setupAudioCapture(t)}}),this.room.on(A.ActiveSpeakersChanged,async e=>{e.length>0?this.updateMode(e[0].identity.startsWith(`agent`)?`speaking`:`listening`):this.updateMode(`listening`)}),this.room.on(A.ParticipantDisconnected,e=>{e.identity?.startsWith(`agent`)&&this.disconnect({reason:`agent`,context:new CloseEvent(`close`,{reason:`agent disconnected`})})})}close(){if(this.isConnected){try{this.room.localParticipant.audioTrackPublications.forEach(e=>{e.track&&e.track.stop()})}catch(e){console.warn(`Error stopping local tracks:`,e)}this.inputAudioContext&&(this.inputAudioContext.close().catch(e=>{console.warn(`Error closing input audio context:`,e)}),this.inputAudioContext=null,this.inputAnalyser=null),this.audioCaptureContext&&=(this.audioCaptureContext.close().catch(e=>{console.warn(`Error closing audio capture context:`,e)}),null),this.audioElements.forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)}),this.audioElements=[],this.room.disconnect()}}async sendMessage(e){if(!this.isConnected||!this.room.localParticipant){console.warn(`Cannot send message: room not connected or no local participant`);return}if(!(`user_audio_chunk`in e))try{let t=new TextEncoder().encode(JSON.stringify(e));await this.room.localParticipant.publishData(t,{reliable:!0})}catch(t){this.debug({type:`send_message_error`,message:{message:e,error:t}}),console.error(`Failed to send message via WebRTC:`,t)}}getRoom(){return this.room}setupInputAnalyser(e){this.inputAudioContext&&(this.inputAudioContext.close().catch(()=>{}),this.inputAudioContext=null,this.inputAnalyser=null);try{let t=new AudioContext,n=t.createAnalyser();t.createMediaStreamSource(new MediaStream([e])).connect(n),this.inputAnalyser=n,this.inputAudioContext=t,this.inputVolumeProvider=g(n,t.sampleRate)}catch(e){console.warn(`[ConversationalAI] Failed to set up input volume analyser:`,e)}}setInputVolumeProvider(e){this.inputVolumeProvider=e}setOutputVolumeProvider(e){this.outputVolumeProvider=e}async setupAudioCapture(e){try{let t=new AudioContext;this.audioCaptureContext=t,this.outputAnalyser=t.createAnalyser(),this.outputAnalyser.fftSize=2048,this.outputAnalyser.smoothingTimeConstant=.8;let n=new MediaStream([e.mediaStreamTrack]),r=t.createMediaStreamSource(n);r.connect(this.outputAnalyser),this.setOutputVolumeProvider(g(this.outputAnalyser,t.sampleRate)),await v(t.audioWorklet);let i=new AudioWorkletNode(t,`rawAudioProcessor`);this.outputAnalyser.connect(i),i.port.postMessage({type:`setFormat`,format:this.outputFormat.format,sampleRate:this.outputFormat.sampleRate}),i.port.onmessage=e=>{let[t,n]=e.data;if(n>.01){let e=Fu(t.buffer),n=this.audioEventId++;this.handleMessage({type:`audio`,audio_event:{audio_base_64:e,event_id:n}})}},r.connect(i)}catch(e){console.warn(`Failed to set up audio capture:`,e)}}setAudioVolume(e){this.audioElements.forEach(t=>{t.volume=e})}async setAudioOutputDevice(e){if(!(`setSinkId`in HTMLAudioElement.prototype))throw Error(`setSinkId is not supported in this browser`);let t=this.audioElements.map(async t=>{try{await t.setSinkId(e)}catch(e){throw console.error(`Failed to set sink ID for audio element:`,e),e}});await Promise.all(t),this.outputDeviceId=e}async setAudioInputDevice(e){if(!this.isConnected||!this.room.localParticipant)throw Error(`Cannot change input device: room not connected or no local participant`);try{let t=this.room.localParticipant.getTrackPublication(P.Source.Microphone);t?.track&&(await t.track.stop(),await this.room.localParticipant.unpublishTrack(t.track));let n=await vu({deviceId:{exact:e},echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:{ideal:1}});await this.room.localParticipant.publishTrack(n,{name:`microphone`,source:P.Source.Microphone}),this.setupInputAnalyser(n.mediaStreamTrack)}catch(e){console.error(`Failed to change input device:`,e);try{await this.room.localParticipant.setMicrophoneEnabled(!0)}catch(e){console.error(`Failed to recover microphone after device switch error:`,e)}throw e}}};function Vu(e,t){let n=e=>{let n=e.data[0];t.sendMessage({user_audio_chunk:Fu(n.buffer)})};return e.addListener(n),()=>{e.removeListener(n)}}function Hu(e,t){let n=e=>{t.playAudio(Iu(e.audio_base_64))};return e.addListener(n),()=>{e.removeListener(n)}}function Uu(e){let t=`signedUrl`in e&&e.signedUrl;if(t&&e.connectionType===`webrtc`)throw Error(`signedUrl only supports websocket connections. Remove connectionType or set it to 'websocket'.`);return e.connectionType?e.connectionType:`conversationToken`in e&&e.conversationToken?`webrtc`:t||e.textOnly?`websocket`:`webrtc`}async function Wu(e){let t=Uu(e);switch(t){case`websocket`:return ae.create(e);case`webrtc`:return Bu.create(e);default:throw Error(`Unknown connection type: ${t}`)}}async function Gu(e,t){if(t instanceof Bu)return{input:t.input,output:t.output,playbackEventTarget:null,detach:()=>{}};if(t instanceof ae){let[n,r]=await Promise.all([S.create({...t.inputFormat,preferHeadphonesForIosDevices:e.preferHeadphonesForIosDevices,inputDeviceId:e.inputDeviceId,workletPaths:e.workletPaths,libsampleratePath:e.libsampleratePath}),_.create({...t.outputFormat,outputDeviceId:e.outputDeviceId,workletPaths:e.workletPaths})]),i=Vu(n,t),a=Hu(t,r);return{input:n,output:r,playbackEventTarget:r,detach:()=>{i(),a()}}}else throw Error(`Unsupported connection type: ${t.constructor.name}`)}async function Ku(e){let t=await Wu(e);return{connection:t,...await Gu(e,t)}}var qu=Ku,Ju,Yu,Xu,Zu,Qu,$u,ed,td,nd,rd,id,ad,od,sd={},cd=[],ld=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,ud=Array.isArray;function dd(e,t){for(var n in t)e[n]=t[n];return e}function fd(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function pd(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?Ju.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return md(e,o,r,i,null)}function md(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Xu,__i:-1,__u:0};return i==null&&Yu.vnode!=null&&Yu.vnode(a),a}function hd(){return{current:null}}function gd(e){return e.children}function _d(e,t){this.props=e,this.context=t}function vd(e,t){if(t==null)return e.__?vd(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?vd(e):null}function yd(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=e.__c.base=n.__e;break}return yd(e)}}function bd(e){(!e.__d&&(e.__d=!0)&&Qu.push(e)&&!xd.__r++||$u!=Yu.debounceRendering)&&(($u=Yu.debounceRendering)||ed)(xd)}function xd(){for(var e,t,n,r,i,a,o,s=1;Qu.length;)Qu.length>s&&Qu.sort(td),e=Qu.shift(),s=Qu.length,e.__d&&(n=void 0,r=void 0,i=(r=(t=e).__v).__e,a=[],o=[],t.__P&&((n=dd({},r)).__v=r.__v+1,Yu.vnode&&Yu.vnode(n),Ad(t.__P,n,r,t.__n,t.__P.namespaceURI,32&r.__u?[i]:null,a,i??vd(r),!!(32&r.__u),o),n.__v=r.__v,n.__.__k[n.__i]=n,Md(a,n,o),r.__e=r.__=null,n.__e!=i&&yd(n)));xd.__r=0}function Sd(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v=r&&r.__k||cd,y=t.length;for(c=Cd(n,t,v,c,y),d=0;d<y;d++)(p=n.__k[d])!=null&&(f=p.__i==-1?sd:v[p.__i]||sd,p.__i=d,g=Ad(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&Fd(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),(_=!!(4&p.__u))||f.__k===p.__k?c=wd(p,c,e,_):typeof p.type==`function`&&g!==void 0?c=g:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=h,c}function Cd(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=md(null,o,null,null,null):ud(o)?o=e.__k[a]=md(gd,{children:o},null,null,null):o.constructor==null&&o.__b>0?o=e.__k[a]=md(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,(l=o.__i=Ed(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=vd(s)),Id(s,s));return r}function wd(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=wd(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=vd(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Td(e,t){return t||=[],e==null||typeof e==`boolean`||(ud(e)?e.some(function(e){Td(e,t)}):t.push(e)),t}function Ed(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function Dd(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||ld.test(t)?n:n+`px`}function Od(e,t,n,r,i){var a,o;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Dd(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||Dd(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(nd,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n.u=r.u:(n.u=rd,e.addEventListener(t,a?ad:id,a)):e.removeEventListener(t,a?ad:id,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function kd(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t.t==null)t.t=rd++;else if(t.t<n.u)return;return n(Yu.event?Yu.event(t):t)}}}function Ad(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,te=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=Yu.__b)&&u(t);n:if(typeof te==`function`)try{if(_=t.props,v=`prototype`in te&&te.prototype.render,y=(u=te.contextType)&&r[u.__c],b=u?y?y.props.value:u.__:r,n.__c?g=(d=t.__c=n.__c).__=d.__E:(v?t.__c=d=new te(_,b):(t.__c=d=new _d(_,b),d.constructor=te,d.render=Ld),y&&y.sub(d),d.state||={},d.__n=r,f=d.__d=!0,d.__h=[],d._sb=[]),v&&d.__s==null&&(d.__s=d.state),v&&te.getDerivedStateFromProps!=null&&(d.__s==d.state&&(d.__s=dd({},d.__s)),dd(d.__s,te.getDerivedStateFromProps(_,d.__s))),p=d.props,m=d.state,d.__v=t,f)v&&te.getDerivedStateFromProps==null&&d.componentWillMount!=null&&d.componentWillMount(),v&&d.componentDidMount!=null&&d.__h.push(d.componentDidMount);else{if(v&&te.getDerivedStateFromProps==null&&_!==p&&d.componentWillReceiveProps!=null&&d.componentWillReceiveProps(_,b),t.__v==n.__v||!d.__e&&d.shouldComponentUpdate!=null&&!1===d.shouldComponentUpdate(_,d.__s,b)){for(t.__v!=n.__v&&(d.props=_,d.state=d.__s,d.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),x=0;x<d._sb.length;x++)d.__h.push(d._sb[x]);d._sb=[],d.__h.length&&o.push(d);break n}d.componentWillUpdate!=null&&d.componentWillUpdate(_,d.__s,b),v&&d.componentDidUpdate!=null&&d.__h.push(function(){d.componentDidUpdate(p,m,h)})}if(d.context=b,d.props=_,d.__P=e,d.__e=!1,S=Yu.__r,C=0,v){for(d.state=d.__s,d.__d=!1,S&&S(t),u=d.render(d.props,d.state,d.context),w=0;w<d._sb.length;w++)d.__h.push(d._sb[w]);d._sb=[]}else do d.__d=!1,S&&S(t),u=d.render(d.props,d.state,d.context),d.state=d.__s;while(d.__d&&++C<25);d.state=d.__s,d.getChildContext!=null&&(r=dd(dd({},r),d.getChildContext())),v&&!f&&d.getSnapshotBeforeUpdate!=null&&(h=d.getSnapshotBeforeUpdate(p,m)),T=u,u!=null&&u.type===gd&&u.key==null&&(T=Nd(u.props.children)),s=Sd(e,ud(T)?T:[T],t,n,r,i,a,o,s,c,l),d.base=t.__e,t.__u&=-161,d.__h.length&&o.push(d),g&&(d.__E=d.__=null)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__e=s}else{for(ee=a.length;ee--;)fd(a[ee]);jd(t)}else t.__e=n.__e,t.__k=n.__k,e.then||jd(t);Yu.__e(e,t,n)}else a==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=Pd(n.__e,t,n,r,i,a,o,c,l);return(u=Yu.diffed)&&u(t),128&t.__u?void 0:s}function jd(e){e&&e.__c&&(e.__c.__e=!0),e&&e.__k&&e.__k.forEach(jd)}function Md(e,t,n){for(var r=0;r<n.length;r++)Fd(n[r],n[++r],n[++r]);Yu.__c&&Yu.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){Yu.__e(e,t.__v)}})}function Nd(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:ud(e)?e.map(Nd):dd({},e)}function Pd(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g=n.props||sd,_=t.props,v=t.type;if(v==`svg`?i=`http://www.w3.org/2000/svg`:v==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(l=0;l<a.length;l++)if((p=a[l])&&`setAttribute`in p==!!v&&(v?p.localName==v:p.nodeType==3)){e=p,a[l]=null;break}}if(e==null){if(v==null)return document.createTextNode(_);e=document.createElementNS(i,v,_.is&&_),s&&=(Yu.__m&&Yu.__m(t,a),!1),a=null}if(v==null)g===_||s&&e.data==_||(e.data=_);else{if(a&&=Ju.call(e.childNodes),!s&&a!=null)for(g={},l=0;l<e.attributes.length;l++)g[(p=e.attributes[l]).name]=p.value;for(l in g)if(p=g[l],l!=`children`){if(l==`dangerouslySetInnerHTML`)d=p;else if(!(l in _)){if(l==`value`&&`defaultValue`in _||l==`checked`&&`defaultChecked`in _)continue;Od(e,l,null,p,i)}}for(l in _)p=_[l],l==`children`?f=p:l==`dangerouslySetInnerHTML`?u=p:l==`value`?m=p:l==`checked`?h=p:s&&typeof p!=`function`||g[l]===p||Od(e,l,p,g[l],i);if(u)s||d&&(u.__html==d.__html||u.__html==e.innerHTML)||(e.innerHTML=u.__html),t.__k=[];else if(d&&(e.innerHTML=``),Sd(t.type==`template`?e.content:e,ud(f)?f:[f],t,n,r,v==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&vd(n,0),s,c),a!=null)for(l=a.length;l--;)fd(a[l]);s||(l=`value`,v==`progress`&&m==null?e.removeAttribute(`value`):m!=null&&(m!==e[l]||v==`progress`&&!m||v==`option`&&m!=g[l])&&Od(e,l,m,g[l],i),l=`checked`,h!=null&&h!=e[l]&&Od(e,l,h,g[l],i))}return e}function Fd(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){Yu.__e(e,n)}}function Id(e,t,n){var r,i;if(Yu.unmount&&Yu.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||Fd(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){Yu.__e(e,t)}r.base=r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Id(r[i],t,n||typeof e.type!=`function`);n||fd(e.__e),e.__c=e.__=e.__e=void 0}function Ld(e,t,n){return this.constructor(e,n)}function Rd(e,t,n){var r,i,a,o;t==document&&(t=document.documentElement),Yu.__&&Yu.__(e,t),i=(r=typeof n==`function`)?null:n&&n.__k||t.__k,a=[],o=[],Ad(t,e=(!r&&n||t).__k=pd(gd,null,[e]),i||sd,sd,t.namespaceURI,!r&&n?[n]:i?null:t.firstChild?Ju.call(t.childNodes):null,a,!r&&n?n:i?i.__e:t.firstChild,r,o),Md(a,e,o)}function zd(e,t){Rd(e,t,zd)}function Bd(e,t,n){var r,i,a,o,s=dd({},e.props);for(a in e.type&&e.type.defaultProps&&(o=e.type.defaultProps),t)a==`key`?r=t[a]:a==`ref`?i=t[a]:s[a]=t[a]===void 0&&o!=null?o[a]:t[a];return arguments.length>2&&(s.children=arguments.length>3?Ju.call(arguments,2):n),md(e.type,s,r||e.key,i||e.ref,null)}function Vd(e){function t(e){var n,r;return this.getChildContext||(n=new Set,(r={})[t.__c]=this,this.getChildContext=function(){return r},this.componentWillUnmount=function(){n=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&n.forEach(function(e){e.__e=!0,bd(e)})},this.sub=function(e){n.add(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n&&n.delete(e),t&&t.call(e)}}),e.children}return t.__c=`__cC`+ od++,t.__=e,t.Provider=t.__l=(t.Consumer=function(e,t){return e.children(t)}).contextType=t,t}Ju=cd.slice,Yu={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},Xu=0,Zu=function(e){return e!=null&&e.constructor==null},_d.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=dd({},this.state);typeof e==`function`&&(e=e(dd({},n),this.props)),e&&dd(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),bd(this))},_d.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),bd(this))},_d.prototype.render=gd,Qu=[],ed=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,td=function(e,t){return e.__v.__b-t.__v.__b},xd.__r=0,nd=/(PointerCapture)$|Capture$/i,rd=0,id=kd(!1),ad=kd(!0),od=0;function Hd(){return Hd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hd.apply(this,arguments)}function Ud(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(i[n]=e[n]);return i}var Wd=[`context`,`children`],Gd=[`useFragment`];function Kd(e,t,n,r){function i(){var t,n=Reflect.construct(HTMLElement,[],i);return n._vdomComponent=e,r&&r.shadow?(n._root=n.attachShadow({mode:r.mode||`open`,serializable:(t=r.serializable)!=null&&t}),r.adoptedStyleSheets&&(n._root.adoptedStyleSheets=r.adoptedStyleSheets)):n._root=n,n}return(i.prototype=Object.create(HTMLElement.prototype)).constructor=i,i.prototype.connectedCallback=function(){Jd.call(this,r)},i.prototype.attributeChangedCallback=Xd,i.prototype.disconnectedCallback=Zd,n=n||e.observedAttributes||Object.keys(e.propTypes||{}),i.observedAttributes=n,e.formAssociated&&(i.formAssociated=!0),n.forEach(function(e){Object.defineProperty(i.prototype,e,{get:function(){return this._vdom?this._vdom.props[e]:this._props[e]},set:function(t){this._vdom?this.attributeChangedCallback(e,null,t):(this._props||={},this._props[e]=t);var n=typeof t;t!=null&&n!==`string`&&n!==`boolean`&&n!==`number`||this.setAttribute(e,t)}})}),customElements.define(t||e.tagName||e.displayName||e.name,i),i}function qd(e){this.getChildContext=function(){return e.context};var t=e.children;return Bd(t,Ud(e,Wd))}function Jd(e){var t=new CustomEvent(`_preact`,{detail:{},bubbles:!0,cancelable:!0});this.dispatchEvent(t),this._vdom=pd(qd,Hd({},this._props,{context:t.detail.context}),$d(this,this._vdomComponent,e)),(this.hasAttribute(`hydrate`)?zd:Rd)(this._vdom,this._root)}function Yd(e){return e.replace(/-(\w)/g,function(e,t){return t?t.toUpperCase():``})}function Xd(e,t,n){if(this._vdom){var r={};r[e]=n??=void 0,r[Yd(e)]=n,this._vdom=Bd(this._vdom,r),Rd(this._vdom,this._root)}}function Zd(){Rd(this._vdom=null,this._root)}function Qd(e,t){var n=this,r=e.useFragment,i=Ud(e,Gd);return pd(r?gd:`slot`,Hd({},i,{ref:function(e){e?(n.ref=e,n._listener||(n._listener=function(e){e.stopPropagation(),e.detail.context=t},e.addEventListener(`_preact`,n._listener))):n.ref.removeEventListener(`_preact`,n._listener)}}))}function $d(e,t,n){if(e.nodeType===3)return e.data;if(e.nodeType!==1)return null;var r=[],i={},a=0,o=e.attributes,s=e.childNodes;for(a=o.length;a--;)o[a].name!==`slot`&&(i[o[a].name]=o[a].value,i[Yd(o[a].name)]=o[a].value);for(a=s.length;a--;){var c=$d(s[a],null,n),l=s[a].slot;l?i[l]=pd(Qd,{name:l},c):r[a]=c}var u=!(!n||!n.shadow),d=t?pd(Qd,{useFragment:!u},r):r;return!u&&t&&(e.innerHTML=``),pd(t||e.nodeName.toLowerCase(),i,d)}var ef,tf,nf,rf,af=0,of=[],sf=Yu,cf=sf.__b,lf=sf.__r,uf=sf.diffed,df=sf.__c,ff=sf.unmount,pf=sf.__;function mf(e,t){sf.__h&&sf.__h(tf,e,af||t),af=0;var n=tf.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function hf(e){return af=1,gf(Af,e)}function gf(e,t,n){var r=mf(ef++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Af(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=tf,!tf.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a&&a.call(this,e,t,n)||o};tf.__f=!0;var a=tf.shouldComponentUpdate,o=tf.componentWillUpdate;tf.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},tf.shouldComponentUpdate=i}return r.__N||r.__}function _f(e,t){var n=mf(ef++,3);!sf.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,tf.__H.__h.push(n))}function vf(e,t){var n=mf(ef++,4);!sf.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,tf.__h.push(n))}function F(e){return af=5,bf(function(){return{current:e}},[])}function yf(e,t,n){af=6,vf(function(){if(typeof e==`function`){var n=e(t());return function(){e(null),n&&typeof n==`function`&&n()}}if(e)return e.current=t(),function(){return e.current=null}},n==null?n:n.concat(e))}function bf(e,t){var n=mf(ef++,7);return kf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function I(e,t){return af=8,bf(function(){return e},t)}function xf(e){var t=tf.context[e.__c],n=mf(ef++,9);return n.c=e,t?(n.__??(n.__=!0,t.sub(tf)),t.props.value):e.__}function Sf(e,t){sf.useDebugValue&&sf.useDebugValue(t?t(e):e)}function Cf(){var e=mf(ef++,11);if(!e.__){for(var t=tf.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||=[0,0];e.__=`P`+n[0]+`-`+ n[1]++}return e.__}function wf(){for(var e;e=of.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Df),e.__H.__h.forEach(Of),e.__H.__h=[]}catch(t){e.__H.__h=[],sf.__e(t,e.__v)}}sf.__b=function(e){tf=null,cf&&cf(e)},sf.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),pf&&pf(e,t)},sf.__r=function(e){lf&&lf(e),ef=0;var t=(tf=e.__c).__H;t&&(nf===tf?(t.__h=[],tf.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(Df),t.__h.forEach(Of),t.__h=[],ef=0)),nf=tf},sf.diffed=function(e){uf&&uf(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(of.push(t)!==1&&rf===sf.requestAnimationFrame||((rf=sf.requestAnimationFrame)||Ef)(wf)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),nf=tf=null},sf.__c=function(e,t){t.some(function(e){try{e.__h.forEach(Df),e.__h=e.__h.filter(function(e){return!e.__||Of(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],sf.__e(n,e.__v)}}),df&&df(e,t)},sf.unmount=function(e){ff&&ff(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{Df(e)}catch(e){t=e}}),n.__H=void 0,t&&sf.__e(t,n.__v))};var Tf=typeof requestAnimationFrame==`function`;function Ef(e){var t,n=function(){clearTimeout(r),Tf&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Tf&&(t=requestAnimationFrame(n))}function Df(e){var t=tf,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),tf=t}function Of(e){var t=tf;e.__c=e.__(),tf=t}function kf(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function Af(e,t){return typeof t==`function`?t(e):t}function jf(e,t){for(var n in t)e[n]=t[n];return e}function Mf(e,t){for(var n in e)if(n!==`__source`&&!(n in t))return!0;for(var r in t)if(r!==`__source`&&e[r]!==t[r])return!0;return!1}function Nf(e,t){var n=t(),r=hf({t:{__:n,u:t}}),i=r[0].t,a=r[1];return vf(function(){i.__=n,i.u=t,Pf(i)&&a({t:i})},[e,n,t]),_f(function(){return Pf(i)&&a({t:i}),e(function(){Pf(i)&&a({t:i})})},[e]),n}function Pf(e){var t,n,r=e.u,i=e.__;try{var a=r();return!((t=i)===(n=a)&&(t!==0||1/t==1/n)||t!=t&&n!=n)}catch{return!0}}function Ff(e){e()}function If(e){return e}function Lf(){return[!1,Ff]}var Rf=vf;function zf(e,t){this.props=e,this.context=t}function Bf(e,t){function n(e){var n=this.props.ref,r=n==e.ref;return!r&&n&&(n.call?n(null):n.current=null),t?!t(this.props,e)||!r:Mf(this.props,e)}function r(t){return this.shouldComponentUpdate=n,pd(e,t)}return r.displayName=`Memo(`+(e.displayName||e.name)+`)`,r.prototype.isReactComponent=!0,r.__f=!0,r.type=e,r}(zf.prototype=new _d).isPureReactComponent=!0,zf.prototype.shouldComponentUpdate=function(e,t){return Mf(this.props,e)||Mf(this.state,t)};var Vf=Yu.__b;Yu.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),Vf&&Vf(e)};var Hf=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.forward_ref`)||3911;function Uf(e){function t(t){var n=jf({},t);return delete n.ref,e(n,t.ref||null)}return t.$$typeof=Hf,t.render=e,t.prototype.isReactComponent=t.__f=!0,t.displayName=`ForwardRef(`+(e.displayName||e.name)+`)`,t}var Wf=function(e,t){return e==null?null:Td(Td(e).map(t))},Gf={map:Wf,forEach:Wf,count:function(e){return e?Td(e).length:0},only:function(e){var t=Td(e);if(t.length!==1)throw`Children.only`;return t[0]},toArray:Td},Kf=Yu.__e;Yu.__e=function(e,t,n,r){if(e.then){for(var i,a=t;a=a.__;)if((i=a.__c)&&i.__c)return t.__e??(t.__e=n.__e,t.__k=n.__k),i.__c(e,t)}Kf(e,t,n,r)};var qf=Yu.unmount;function Jf(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(e){typeof e.__c==`function`&&e.__c()}),e.__c.__H=null),(e=jf({},e)).__c!=null&&(e.__c.__P===n&&(e.__c.__P=t),e.__c.__e=!0,e.__c=null),e.__k=e.__k&&e.__k.map(function(e){return Jf(e,t,n)})),e}function Yf(e,t,n){return e&&n&&(e.__v=null,e.__k=e.__k&&e.__k.map(function(e){return Yf(e,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.appendChild(e.__e),e.__c.__e=!0,e.__c.__P=n)),e}function Xf(){this.__u=0,this.o=null,this.__b=null}function Zf(e){var t=e.__.__c;return t&&t.__a&&t.__a(e)}function Qf(e){var t,n,r,i=null;function a(a){if(t||(t=e()).then(function(e){e&&(i=e.default||e),r=!0},function(e){n=e,r=!0}),n)throw n;if(!r)throw t;return i?pd(i,a):null}return a.displayName=`Lazy`,a.__f=!0,a}function $f(){this.i=null,this.l=null}Yu.unmount=function(e){var t=e.__c;t&&t.__R&&t.__R(),t&&32&e.__u&&(e.type=null),qf&&qf(e)},(Xf.prototype=new _d).__c=function(e,t){var n=t.__c,r=this;r.o??=[],r.o.push(n);var i=Zf(r.__v),a=!1,o=function(){a||(a=!0,n.__R=null,i?i(s):s())};n.__R=o;var s=function(){if(!--r.__u){if(r.state.__a){var e=r.state.__a;r.__v.__k[0]=Yf(e,e.__c.__P,e.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(o,o)},Xf.prototype.componentWillUnmount=function(){this.o=[]},Xf.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement(`div`),r=this.__v.__k[0].__c;this.__v.__k[0]=Jf(this.__b,n,r.__O=r.__P)}this.__b=null}var i=t.__a&&pd(gd,null,e.fallback);return i&&(i.__u&=-33),[pd(gd,null,t.__a?null:e.children),i]};var ep=function(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!==`t`||!e.l.size))for(n=e.i;n;){for(;n.length>3;)n.pop()();if(n[1]<n[0])break;e.i=n=n[2]}};function tp(e){return this.getChildContext=function(){return e.context},e.children}function np(e){var t=this,n=e.h;if(t.componentWillUnmount=function(){Rd(null,t.v),t.v=null,t.h=null},t.h&&t.h!==n&&t.componentWillUnmount(),!t.v){for(var r=t.__v;r!==null&&!r.__m&&r.__!==null;)r=r.__;t.h=n,t.v={nodeType:1,parentNode:n,childNodes:[],__k:{__m:r.__m},contains:function(){return!0},insertBefore:function(e,n){this.childNodes.push(e),t.h.insertBefore(e,n)},removeChild:function(e){this.childNodes.splice(this.childNodes.indexOf(e)>>>1,1),t.h.removeChild(e)}}}Rd(pd(tp,{context:t.context},e.__v),t.v)}function rp(e,t){var n=pd(np,{__v:e,h:t});return n.containerInfo=t,n}($f.prototype=new _d).__a=function(e){var t=this,n=Zf(t.__v),r=t.l.get(e);return r[0]++,function(i){var a=function(){t.props.revealOrder?(r.push(i),ep(t,e,r)):i()};n?n(a):a()}},$f.prototype.render=function(e){this.i=null,this.l=new Map;var t=Td(e.children);e.revealOrder&&e.revealOrder[0]===`b`&&t.reverse();for(var n=t.length;n--;)this.l.set(t[n],this.i=[1,0,this.i]);return e.children},$f.prototype.componentDidUpdate=$f.prototype.componentDidMount=function(){var e=this;this.l.forEach(function(t,n){ep(e,n,t)})};var ip=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.element`)||60103,ap=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,op=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,sp=/[A-Z0-9]/g,cp=typeof document<`u`,lp=function(e){return(typeof Symbol<`u`&&typeof Symbol()==`symbol`?/fil|che|rad/:/fil|che|ra/).test(e)};function up(e,t,n){return t.__k??(t.textContent=``),Rd(e,t),typeof n==`function`&&n(),e?e.__c:null}function dp(e,t,n){return zd(e,t),typeof n==`function`&&n(),e?e.__c:null}_d.prototype.isReactComponent={},[`componentWillMount`,`componentWillReceiveProps`,`componentWillUpdate`].forEach(function(e){Object.defineProperty(_d.prototype,e,{configurable:!0,get:function(){return this[`UNSAFE_`+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var fp=Yu.event;function pp(){}function mp(){return this.cancelBubble}function hp(){return this.defaultPrevented}Yu.event=function(e){return fp&&(e=fp(e)),e.persist=pp,e.isPropagationStopped=mp,e.isDefaultPrevented=hp,e.nativeEvent=e};var gp,_p={enumerable:!1,configurable:!0,get:function(){return this.class}},vp=Yu.vnode;Yu.vnode=function(e){typeof e.type==`string`&&function(e){var t=e.props,n=e.type,r={},i=n.indexOf(`-`)===-1;for(var a in t){var o=t[a];if(!(a===`value`&&`defaultValue`in t&&o==null||cp&&a===`children`&&n===`noscript`||a===`class`||a===`className`)){var s=a.toLowerCase();a===`defaultValue`&&`value`in t&&t.value==null?a=`value`:a===`download`&&!0===o?o=``:s===`translate`&&o===`no`?o=!1:s[0]===`o`&&s[1]===`n`?s===`ondoubleclick`?a=`ondblclick`:s!==`onchange`||n!==`input`&&n!==`textarea`||lp(t.type)?s===`onfocus`?a=`onfocusin`:s===`onblur`?a=`onfocusout`:op.test(a)&&(a=s):s=a=`oninput`:i&&ap.test(a)?a=a.replace(sp,`-$&`).toLowerCase():o===null&&(o=void 0),s===`oninput`&&r[a=s]&&(a=`oninputCapture`),r[a]=o}}n==`select`&&r.multiple&&Array.isArray(r.value)&&(r.value=Td(t.children).forEach(function(e){e.props.selected=r.value.indexOf(e.props.value)!=-1})),n==`select`&&r.defaultValue!=null&&(r.value=Td(t.children).forEach(function(e){e.props.selected=r.multiple?r.defaultValue.indexOf(e.props.value)!=-1:r.defaultValue==e.props.value})),t.class&&!t.className?(r.class=t.class,Object.defineProperty(r,`className`,_p)):(t.className&&!t.class||t.class&&t.className)&&(r.class=r.className=t.className),e.props=r}(e),e.$$typeof=ip,vp&&vp(e)};var yp=Yu.__r;Yu.__r=function(e){yp&&yp(e),gp=e.__c};var bp=Yu.diffed;Yu.diffed=function(e){bp&&bp(e);var t=e.props,n=e.__e;n!=null&&e.type===`textarea`&&`value`in t&&t.value!==n.value&&(n.value=t.value==null?``:t.value),gp=null};var xp={ReactCurrentDispatcher:{current:{readContext:function(e){return gp.__n[e.__c].props.value},useCallback:I,useContext:xf,useDebugValue:Sf,useDeferredValue:If,useEffect:_f,useId:Cf,useImperativeHandle:yf,useInsertionEffect:Rf,useLayoutEffect:vf,useMemo:bf,useReducer:gf,useRef:F,useState:hf,useSyncExternalStore:Nf,useTransition:Lf}}};function Sp(e){return pd.bind(null,e)}function Cp(e){return!!e&&e.$$typeof===ip}function wp(e){return Cp(e)&&e.type===gd}function Tp(e){return!!e&&!!e.displayName&&(typeof e.displayName==`string`||e.displayName instanceof String)&&e.displayName.startsWith(`Memo(`)}function Ep(e){return Cp(e)?Bd.apply(null,arguments):e}function Dp(e){return!!e.__k&&(Rd(null,e),!0)}function Op(e){return e&&(e.base||e.nodeType===1&&e)||null}var kp=function(e,t){return e(t)},Ap=function(e,t){return e(t)},jp={useState:hf,useId:Cf,useReducer:gf,useEffect:_f,useLayoutEffect:vf,useInsertionEffect:Rf,useTransition:Lf,useDeferredValue:If,useSyncExternalStore:Nf,startTransition:Ff,useRef:F,useImperativeHandle:yf,useMemo:bf,useCallback:I,useContext:xf,useDebugValue:Sf,version:`18.3.1`,Children:Gf,render:up,hydrate:dp,unmountComponentAtNode:Dp,createPortal:rp,createElement:pd,createContext:Vd,createFactory:Sp,cloneElement:Ep,createRef:hd,Fragment:gd,isValidElement:Cp,isElement:Cp,isFragment:wp,isMemo:Tp,findDOMNode:Op,Component:_d,PureComponent:zf,memo:Bf,forwardRef:Uf,flushSync:Ap,unstable_batchedUpdates:kp,StrictMode:gd,Suspense:Xf,SuspenseList:$f,lazy:Qf,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:xp},Mp=Symbol.for(`preact-signals`);function Np(){if(zp>1)zp--;else{var e,t=!1;for((function(){var e=Up;for(Up=void 0;e!==void 0;)e.S.v===e.v&&(e.S.i=e.i),e=e.o})();Rp!==void 0;){var n=Rp;for(Rp=void 0,Bp++;n!==void 0;){var r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&Jp(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(Bp=0,zp--,t)throw e}}function Pp(e){if(zp>0)return e();Hp=++Vp,zp++;try{return e()}finally{Np()}}var Fp=void 0;function Ip(e){var t=Fp;Fp=void 0;try{return e()}finally{Fp=t}}var Lp,Rp=void 0,zp=0,Bp=0,Vp=0,Hp=0,Up=void 0,Wp=0;function Gp(e){if(Fp!==void 0){var t=e.n;if(t===void 0||t.t!==Fp)return t={i:0,S:e,p:Fp.s,n:void 0,t:Fp,e:void 0,x:void 0,r:t},Fp.s!==void 0&&(Fp.s.n=t),Fp.s=t,e.n=t,32&Fp.f&&e.S(t),t;if(t.i===-1)return t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=Fp.s,t.n=void 0,Fp.s.n=t,Fp.s=t),t}}function Kp(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}Kp.prototype.brand=Mp,Kp.prototype.h=function(){return!0},Kp.prototype.S=function(e){var t=this,n=this.t;n!==e&&e.e===void 0&&(e.x=n,this.t=e,n===void 0?Ip(function(){var e;(e=t.W)==null||e.call(t)}):n.e=e)},Kp.prototype.U=function(e){var t=this;if(this.t!==void 0){var n=e.e,r=e.x;n!==void 0&&(n.x=r,e.e=void 0),r!==void 0&&(r.e=n,e.x=void 0),e===this.t&&(this.t=r,r===void 0&&Ip(function(){var e;(e=t.Z)==null||e.call(t)}))}},Kp.prototype.subscribe=function(e){var t=this;return rm(function(){var n=t.value,r=Fp;Fp=void 0;try{e(n)}finally{Fp=r}},{name:`sub`})},Kp.prototype.valueOf=function(){return this.value},Kp.prototype.toString=function(){return this.value+``},Kp.prototype.toJSON=function(){return this.value},Kp.prototype.peek=function(){var e=Fp;Fp=void 0;try{return this.value}finally{Fp=e}},Object.defineProperty(Kp.prototype,`value`,{get:function(){var e=Gp(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Bp>100)throw Error(`Cycle detected`);(function(e){zp!==0&&Bp===0&&e.l!==Hp&&(e.l=Hp,Up={S:e,v:e.v,i:e.i,o:Up})})(this),this.v=e,this.i++,Wp++,zp++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Np()}}}});function qp(e,t){return new Kp(e,t)}function Jp(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function Yp(e){for(var t=e.s;t!==void 0;t=t.n){var n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function Xp(e){for(var t=e.s,n=void 0;t!==void 0;){var r=t.p;t.i===-1?(t.S.U(t),r!==void 0&&(r.n=t.n),t.n!==void 0&&(t.n.p=r)):n=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=r}e.s=n}function Zp(e,t){Kp.call(this,void 0),this.x=e,this.s=void 0,this.g=Wp-1,this.f=4,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}Zp.prototype=new Kp,Zp.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Wp))return!0;if(this.g=Wp,this.f|=1,this.i>0&&!Jp(this))return this.f&=-2,!0;var e=Fp;try{Yp(this),Fp=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return Fp=e,Xp(this),this.f&=-2,!0},Zp.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}Kp.prototype.S.call(this,e)},Zp.prototype.U=function(e){if(this.t!==void 0&&(Kp.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}},Zp.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(Zp.prototype,`value`,{get:function(){if(1&this.f)throw Error(`Cycle detected`);var e=Gp(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Qp(e,t){return new Zp(e,t)}function $p(e){var t=e.m;if(e.m=void 0,typeof t==`function`){zp++;var n=Fp;Fp=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,em(e),t}finally{Fp=n,Np()}}}function em(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,$p(e)}function tm(e){if(Fp!==this)throw Error(`Out-of-order effect`);Xp(this),Fp=e,this.f&=-2,8&this.f&&em(this),Np()}function nm(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name,Lp&&Lp.push(this)}nm.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t==`function`&&(this.m=t)}finally{e()}},nm.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,$p(this),Yp(this),zp++;var e=Fp;return Fp=this,tm.bind(this,e)},nm.prototype.N=function(){2&this.f||(this.f|=2,this.u=Rp,Rp=this)},nm.prototype.d=function(){this.f|=8,1&this.f||em(this)},nm.prototype.dispose=function(){this.d()};function rm(e,t){var n=new nm(e,t);try{n.c()}catch(e){throw n.d(),e}var r=n.d.bind(n);return r[Symbol.dispose]=r,r}var im,am,om,sm=typeof window<`u`&&!!window.__PREACT_SIGNALS_DEVTOOLS__,cm=[],lm=[];rm(function(){im=this.N})();function um(e,t){Yu[e]=t.bind(null,Yu[e]||function(){})}function dm(e){if(om){var t=om;om=void 0,t()}om=e&&e.S()}function fm(e){var t=this,n=e.data,r=mm(n);r.value=n;var i=bf(function(){for(var e=t,n=t.__v;n=n.__;)if(n.__c){n.__c.__$f|=4;break}var i=Qp(function(){var e=r.value.value;return e===0?0:!0===e?``:e||``}),a=Qp(function(){return!Array.isArray(i.value)&&!Zu(i.value)}),o=rm(function(){if(this.N=bm,a.value){var t=i.value;e.__v&&e.__v.__e&&e.__v.__e.nodeType===3&&(e.__v.__e.data=t)}}),s=t.__$u.d;return t.__$u.d=function(){o(),s.call(this)},[a,i]},[]),a=i[0],o=i[1];return a.value?o.peek():o.value}fm.displayName=`ReactiveTextNode`,Object.defineProperties(Kp.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:fm},props:{configurable:!0,get:function(){var e=this;return{data:{get value(){return e.value}}}}},__b:{configurable:!0,value:1}}),um(`__b`,function(e,t){if(typeof t.type==`string`){var n,r=t.props;for(var i in r)if(i!==`children`){var a=r[i];a instanceof Kp&&(n||(t.__np=n={}),n[i]=a,r[i]=a.peek())}}e(t)}),um(`__r`,function(e,t){if(e(t),t.type!==gd){dm();var n,r=t.__c;r&&(r.__$f&=-2,(n=r.__$u)===void 0&&(r.__$u=n=function(e,t){var n;return rm(function(){n=this},{name:t}),n.c=e,n}(function(){var e;sm&&((e=n.y)==null||e.call(n)),r.__$f|=1,r.setState({})},typeof t.type==`function`?t.type.displayName||t.type.name:``))),am=r,dm(n)}}),um(`__e`,function(e,t,n,r){dm(),am=void 0,e(t,n,r)}),um(`diffed`,function(e,t){dm(),am=void 0;var n;if(typeof t.type==`string`&&(n=t.__e)){var r=t.__np,i=t.props;if(r){var a=n.U;if(a)for(var o in a){var s=a[o];s!==void 0&&!(o in r)&&(s.d(),a[o]=void 0)}else a={},n.U=a;for(var c in r){var l=a[c],u=r[c];l===void 0?(l=pm(n,c,u),a[c]=l):l.o(u,i)}for(var d in r)i[d]=r[d]}}e(t)});function pm(e,t,n,r){var i=t in e&&e.ownerSVGElement===void 0,a=qp(n),o=n.peek();return{o:function(e,t){a.value=e,o=e.peek()},d:rm(function(){this.N=bm;var n=a.value.value;o===n?o=void 0:(o=void 0,i?e[t]=n:n!=null&&(!1!==n||t[4]===`-`)?e.setAttribute(t,n):e.removeAttribute(t))})}}um(`unmount`,function(e,t){if(typeof t.type==`string`){var n=t.__e;if(n){var r=n.U;if(r)for(var i in n.U=void 0,r){var a=r[i];a&&a.d()}}t.__np=void 0}else{var o=t.__c;if(o){var s=o.__$u;s&&(o.__$u=void 0,s.d())}}e(t)}),um(`__h`,function(e,t,n,r){(r<3||r===9)&&(t.__$f|=2),e(t,n,r)}),_d.prototype.shouldComponentUpdate=function(e,t){if(this.__R)return!0;var n=this.__$u,r=n&&n.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u==`boolean`&&!0===this.u){var a=2&this.__$f;if(!(r||a||4&this.__$f)||1&this.__$f)return!0}else if(!(r||4&this.__$f)||3&this.__$f)return!0;for(var o in e)if(o!==`__source`&&e[o]!==this.props[o])return!0;for(var s in this.props)if(!(s in e))return!0;return!1};function mm(e,t){return bf(function(){return qp(e,t)},[])}function L(e,t){var n=F(e);return n.current=e,am.__$f|=4,bf(function(){return Qp(function(){return n.current()},t)},[])}var hm=typeof requestAnimationFrame>`u`?setTimeout:function(e){var t=function(){clearTimeout(n),cancelAnimationFrame(r),e()},n=setTimeout(t,35),r=requestAnimationFrame(t)},gm=function(e){queueMicrotask(function(){queueMicrotask(e)})};function _m(){Pp(function(){for(var e;e=cm.shift();)im.call(e)})}function vm(){cm.push(this)===1&&(Yu.requestAnimationFrame||hm)(_m)}function ym(){Pp(function(){for(var e;e=lm.shift();)im.call(e)})}function bm(){lm.push(this)===1&&(Yu.requestAnimationFrame||gm)(ym)}function xm(e,t){var n=F(e);n.current=e,_f(function(){return rm(function(){return this.N=vm,n.current()},t)},[])}var Sm=0;Array.isArray;function R(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Sm,__i:-1,__u:0,__source:i,__self:a};if(typeof e==`function`&&(o=e.defaultProps))for(s in o)c[s]===void 0&&(c[s]=o[s]);return Yu.vnode&&Yu.vnode(l),l}async function Cm(e={default:0,android:3e3}){let t=e.default;b()?t=e.android??t:y()&&(t=e.ios??t),t>0&&await new Promise(e=>setTimeout(e,t))}var wm=new Uint8Array,Tm=class e extends i{type=`text`;setVolume(){throw Error(`setVolume is not supported in text conversations`)}setMicMuted(){throw Error(`setMicMuted is not supported in text conversations`)}getInputByteFrequencyData(){return wm}getOutputByteFrequencyData(){return wm}getInputVolume(){return 0}getOutputVolume(){return 0}static async startSession(t){let n=i.getFullOptions(t);n.onStatusChange&&n.onStatusChange({status:`connecting`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1}),n.onModeChange&&n.onModeChange({mode:`listening`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1});let r=null,a=null;try{return await Cm(n.connectionDelay),r=await Wu(n),a=new e(n,r),n.onConversationCreated?.(a),a.markConnected(),n.onConnect?.({conversationId:r.conversationId}),a}catch(e){throw a?await a.endSession().catch(()=>{}):(n.onStatusChange?.({status:`disconnected`}),r?.close()),e}}},Em=class e extends i{input;output;playbackEventTarget;cleanUp;wakeLock;type=`voice`;static async requestWakeLock(){if(`wakeLock`in navigator)try{return await navigator.wakeLock.request(`screen`)}catch{}return null}static async startSession(t){let n=i.getFullOptions(t);n.onStatusChange&&n.onStatusChange({status:`connecting`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1});let r=null,a=null,o=t.useWakeLock??!0,s=null;o&&(s=await e.requestWakeLock());try{r=await navigator.mediaDevices.getUserMedia({audio:!0}),await Cm(n.connectionDelay);let t=await qu(n);return r?.getTracks().forEach(e=>{e.stop()}),r=null,a=new e(n,t.connection,t.input,t.output,t.playbackEventTarget,t.detach,s),n.onConversationCreated?.(a),a.markConnected(),n.onConnect?.({conversationId:t.connection.conversationId}),a}catch(e){r?.getTracks().forEach(e=>{e.stop()}),a?await a.endSession().catch(()=>{}):n.onStatusChange?.({status:`disconnected`});try{await s?.release(),s=null}catch{}throw e}}inputFrequencyData;outputFrequencyData;visibilityChangeHandler=null;handlePlaybackEvent=e=>{e.data.type===`process`&&this.updateMode(e.data.finished?`listening`:`speaking`)};constructor(t,n,r,i,a,o,s){super(t,n),this.input=r,this.output=i,this.playbackEventTarget=a,this.cleanUp=o,this.wakeLock=s,a?.addListener(this.handlePlaybackEvent),s&&(this.visibilityChangeHandler=()=>{document.visibilityState===`visible`&&this.wakeLock?.released&&e.requestWakeLock().then(e=>{this.wakeLock=e})},document.addEventListener(`visibilitychange`,this.visibilityChangeHandler))}async handleEndSession(){this.cleanUp(),this.playbackEventTarget?.removeListener(this.handlePlaybackEvent),this.playbackEventTarget=null,await super.handleEndSession(),this.visibilityChangeHandler&&document.removeEventListener(`visibilitychange`,this.visibilityChangeHandler);try{await this.wakeLock?.release(),this.wakeLock=null}catch{}await this.input.close(),await this.output.close()}handleInterruption(e){super.handleInterruption(e),this.updateMode(`listening`),this.output.interrupt()}handleAudio(e){super.handleAudio(e),e.audio_event.alignment&&this.options.onAudioAlignment&&this.options.onAudioAlignment(e.audio_event.alignment),this.lastInterruptTimestamp<=e.audio_event.event_id&&(e.audio_event.audio_base_64&&this.options.onAudio?.(e.audio_event.audio_base_64),this.currentEventId=e.audio_event.event_id,this.updateCanSendFeedback(),this.updateMode(`speaking`))}static FREQUENCY_BIN_COUNT=1024;setMicMuted(e){this.input.setMuted(e).catch(e=>{this.options.onError?.(`Failed to set input muted state`,e)})}getInputByteFrequencyData(){return this.inputFrequencyData??=new Uint8Array(e.FREQUENCY_BIN_COUNT),this.input.getByteFrequencyData(this.inputFrequencyData),this.inputFrequencyData}getOutputByteFrequencyData(){return this.outputFrequencyData??=new Uint8Array(e.FREQUENCY_BIN_COUNT),this.output.getByteFrequencyData(this.outputFrequencyData),this.outputFrequencyData}getInputVolume(){return this.input.getVolume()}getOutputVolume(){return this.output.getVolume()}async changeInputDevice({sampleRate:e,format:t,preferHeadphonesForIosDevices:n,inputDeviceId:r}){try{await this.input.setDevice({inputDeviceId:r,sampleRate:e,format:t,preferHeadphonesForIosDevices:n})}catch(e){throw console.error(`Error changing input device`,e),e}}async changeOutputDevice({sampleRate:e,format:t,outputDeviceId:n}){try{await this.output.setDevice({outputDeviceId:n,sampleRate:e,format:t})}catch(e){throw console.error(`Error changing output device`,e),e}}setVolume=({volume:e})=>{let t=Number.isFinite(e)?Math.min(1,Math.max(0,e)):1;this.volume=t,this.output.setVolume(t)}},Dm=`https://api.elevenlabs.io`;function Om(e,t,n=Dm){let r={};return typeof t==`boolean`?r.feedback=t?`like`:`dislike`:(r.rating=t.rating,r.comment=t.comment),fetch(`${n}/v1/convai/conversations/${e}/feedback`,{method:`POST`,body:JSON.stringify(r),headers:{"Content-Type":`application/json`}})}var km;(function(e){e.SESSION_STARTED=`session_started`,e.PARTIAL_TRANSCRIPT=`partial_transcript`,e.COMMITTED_TRANSCRIPT=`committed_transcript`,e.COMMITTED_TRANSCRIPT_WITH_TIMESTAMPS=`committed_transcript_with_timestamps`,e.AUTH_ERROR=`auth_error`,e.ERROR=`error`,e.OPEN=`open`,e.CLOSE=`close`,e.QUOTA_EXCEEDED=`quota_exceeded`,e.COMMIT_THROTTLED=`commit_throttled`,e.TRANSCRIBER_ERROR=`transcriber_error`,e.UNACCEPTED_TERMS=`unaccepted_terms`,e.RATE_LIMITED=`rate_limited`,e.INPUT_ERROR=`input_error`,e.QUEUE_OVERFLOW=`queue_overflow`,e.RESOURCE_EXHAUSTED=`resource_exhausted`,e.SESSION_TIME_LIMIT_EXCEEDED=`session_time_limit_exceeded`,e.CHUNK_SIZE_EXCEEDED=`chunk_size_exceeded`,e.INSUFFICIENT_AUDIO_ACTIVITY=`insufficient_audio_activity`})(km||={});var Am;(function(e){e.PCM_8000=`pcm_8000`,e.PCM_16000=`pcm_16000`,e.PCM_22050=`pcm_22050`,e.PCM_24000=`pcm_24000`,e.PCM_44100=`pcm_44100`,e.PCM_48000=`pcm_48000`,e.ULAW_8000=`ulaw_8000`})(Am||={});var jm;(function(e){e.MANUAL=`manual`,e.VAD=`vad`})(jm||={});var Mm={startSession(e){return r(e)?Tm.startSession(e):Em.startSession(e)}},Nm=Object.create,Pm=Object.defineProperty,Fm=Object.getOwnPropertyDescriptor,Im=Object.getOwnPropertyNames,Lm=Object.getPrototypeOf,Rm=Object.prototype.hasOwnProperty,zm=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),Bm=(e,t)=>{let n={};for(var r in e)Pm(n,r,{get:e[r],enumerable:!0});return t||Pm(n,Symbol.toStringTag,{value:`Module`}),n},Vm=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Im(t),a=0,o=i.length,s;a<o;a++)s=i[a],!Rm.call(e,s)&&s!==n&&Pm(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=Fm(t,s))||r.enumerable});return e},Hm=(e,t,n)=>(n=e==null?{}:Nm(Lm(e)),Vm(t||!e||!e.__esModule?Pm(n,`default`,{value:e,enumerable:!0}):n,e)),Um=`0.12.3`;function Wm(e){return e?e===`true`?!0:e===`false`?!1:null:null}var Gm=`variant.placement.override-config.avatar-image-url.avatar-orb-color-1.avatar-orb-color-2.agent-id.signed-url.terms-key.server-location.language.dynamic-variables.show-avatar-when-collapsed.override-prompt.override-llm.override-speed.override-stability.override-similarity-boost.override-first-message.override-language.override-voice-id.override-text-only.mic-muting.transcript.text-input.text-contents.default-expanded.always-expanded.dismissible.strip-audio-tags.user-id.use-rtc.collect-feedback.worklet-path-raw-audio-processor.worklet-path-audio-concat-processor.worklet-path-libsamplerate.syntax-highlight-theme.markdown-link-allowed-hosts.markdown-link-include-www.markdown-link-allow-http.allow-events.show-agent-status.show-conversation-id.environment`.split(`.`),Km=`@import "https://fonts.googleapis.com/css2?family=Inter:wght@400,500&display=swap";@layer components;@layer properties{@media all {*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-weight-medium:500;--font-weight-semibold:600;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.\\!visible{visibility:visible!important}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.start-3{inset-inline-start:12px}.end-3{inset-inline-end:12px}.top-0{top:0}.top-1{top:4px}.top-1\\/2{top:50%}.top-4{top:16px}.top-16{top:64px}.top-20{top:80px}.top-\\[40\\%\\]{top:40%}.top-\\[88px\\]{top:88px}.right-0{right:0}.right-1{right:4px}.right-1\\.5{right:6px}.-bottom-3{bottom:-12px}.bottom-0{bottom:0}.bottom-20{bottom:80px}.left-0{left:0}.left-1\\/2{left:50%}.left-4{left:16px}.z-1{z-index:1}.z-2{z-index:2}.z-10{z-index:10}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.m-1{margin:4px}.-mx-0\\.5{margin-inline:-2px}.mx-1{margin-inline:4px}.-my-4{margin-block:-16px}.my-4{margin-block:16px}.my-6{margin-block:24px}.ms-auto{margin-inline-start:auto}.\\!mt-0{margin-top:0!important}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.-mr-1\\.5{margin-right:-6px}.mb-0\\.5{margin-bottom:2px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.ml-4{margin-left:16px}.ml-auto{margin-left:auto}.\\!flex{display:flex!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.\\[field-sizing\\:content\\],.field-sizing-content{field-sizing:content}.h-4{height:16px}.h-5{height:20px}.h-6{height:24px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-11{height:44px}.h-12{height:48px}.h-16{height:64px}.h-48{height:192px}.h-full{height:100%}.h-screen{height:100vh}.max-h-\\[50\\%\\]{max-height:50%}.max-h-\\[min\\(384px\\,var\\(--radix-select-content-available-height\\)\\)\\]{max-height:min(384px, var(--radix-select-content-available-height))}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-\\[6lh\\]{min-height:6lh}.min-h-full{min-height:100%}.min-h-min{min-height:min-content}.w-1\\/2{width:50%}.w-4{width:16px}.w-5{width:20px}.w-6{width:24px}.w-8{width:32px}.w-9{width:36px}.w-11{width:44px}.w-12{width:48px}.w-20{width:80px}.w-48{width:192px}.w-full{width:100%}.w-screen{width:100vw}.max-w-64{max-width:256px}.max-w-\\[180px\\]{max-width:180px}.max-w-\\[220px\\]{max-width:220px}.max-w-\\[400px\\]{max-width:400px}.max-w-full{max-width:100%}.\\!min-w-60{min-width:240px!important}.min-w-0{min-width:0}.min-w-9{min-width:36px}.min-w-60{min-width:240px}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.min-w-max{min-width:max-content}.min-w-min{min-width:min-content}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-bottom{transform-origin:bottom}.origin-bottom-left{transform-origin:0 100%}.origin-bottom-right{transform-origin:100% 100%}.origin-top{transform-origin:top}.origin-top-left{transform-origin:0 0}.origin-top-right{transform-origin:100% 0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-\\[calc\\(var\\(--el-overlay-padding\\)\\)\\]{--tw-translate-y:calc(calc(var(--el-overlay-padding)) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-1\\/2{--tw-translate-y:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[calc\\(var\\(--el-overlay-padding\\)\\)\\]{--tw-translate-y:calc(var(--el-overlay-padding));translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-150{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\\[0\\.1667\\]{scale:.1667}.-rotate-90{rotate:-90deg}.-rotate-180{rotate:-180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.place-content-center{place-content:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:4px}.gap-1\\.5{gap:6px}.gap-2{gap:8px}.gap-2\\.5{gap:10px}.gap-3{gap:12px}.gap-6{gap:24px}.gap-8{gap:32px}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-base-border>:not(:last-child)){border-color:var(--el-base-border)}.self-auto{align-self:auto}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[calc\\(var\\(--el-button-radius\\)\\+4px\\)\\]{border-radius:calc(var(--el-button-radius) + 4px)}.rounded-\\[calc\\(var\\(--el-sheet-radius\\)-8px\\)\\]{border-radius:calc(var(--el-sheet-radius) - 8px)}.rounded-bubble{border-radius:var(--el-bubble-radius)}.rounded-button{border-radius:var(--el-button-radius)}.rounded-compact-sheet{border-radius:var(--el-compact-sheet-radius)}.rounded-dropdown-sheet{border-radius:var(--el-dropdown-sheet-radius)}.rounded-full{border-radius:9999px}.rounded-input{border-radius:var(--el-input-radius)}.rounded-sheet{border-radius:var(--el-sheet-radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-accent{border-color:var(--el-accent)}.border-base{border-color:var(--el-base)}.border-base-border,.border-base-border\\/60{border-color:var(--el-base-border)}@supports (color:color-mix(in lab, red, red)){.border-base-border\\/60{border-color:color-mix(in oklab, var(--el-base-border) 60%, transparent)}}.border-base-error\\/30{border-color:var(--el-base-error)}@supports (color:color-mix(in lab, red, red)){.border-base-error\\/30{border-color:color-mix(in oklab, var(--el-base-error) 30%, transparent)}}.border-base-subtle\\/30{border-color:var(--el-base-subtle)}@supports (color:color-mix(in lab, red, red)){.border-base-subtle\\/30{border-color:color-mix(in oklab, var(--el-base-subtle) 30%, transparent)}}.bg-accent{background-color:var(--el-accent)}.bg-base{background-color:var(--el-base)}.bg-base-active,.bg-base-active\\/40{background-color:var(--el-base-active)}@supports (color:color-mix(in lab, red, red)){.bg-base-active\\/40{background-color:color-mix(in oklab, var(--el-base-active) 40%, transparent)}}.bg-base-active\\/80{background-color:var(--el-base-active)}@supports (color:color-mix(in lab, red, red)){.bg-base-active\\/80{background-color:color-mix(in oklab, var(--el-base-active) 80%, transparent)}}.bg-base-border{background-color:var(--el-base-border)}.bg-base-error\\/5{background-color:var(--el-base-error)}@supports (color:color-mix(in lab, red, red)){.bg-base-error\\/5{background-color:color-mix(in oklab, var(--el-base-error) 5%, transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-base{--tw-gradient-from:var(--el-base);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.\\[mask-image\\:linear-gradient\\(to_bottom\\,black\\,transparent\\)\\]{-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.\\[mask-image\\:linear-gradient\\(to_top\\,black\\,transparent\\)\\]{-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.bg-cover{background-size:cover}.object-cover{object-fit:cover}.p-1{padding:4px}.p-1\\.5{padding:6px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.px-1{padding-inline:4px}.px-1\\.5{padding-inline:6px}.px-2{padding-inline:8px}.px-2\\.5{padding-inline:10px}.px-3{padding-inline:12px}.px-4{padding-inline:16px}.px-8{padding-inline:32px}.py-0\\.5{padding-block:2px}.py-1{padding-block:4px}.py-1\\.5{padding-block:6px}.py-2{padding-block:8px}.py-2\\.5{padding-block:10px}.py-4{padding-block:16px}.py-\\[calc\\(theme\\(spacing\\.2\\)-1px\\)\\]{padding-block:7px}.pt-1{padding-top:4px}.pt-1\\.5{padding-top:6px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pt-4{padding-top:16px}.pt-20{padding-top:80px}.pr-3{padding-right:12px}.pr-7{padding-right:28px}.pr-8{padding-right:32px}.pr-16{padding-right:64px}.pb-1{padding-bottom:4px}.pb-1\\.5{padding-bottom:6px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-\\[60px\\]{padding-bottom:60px}.pl-1\\.5{padding-left:6px}.pl-4{padding-left:16px}.pl-16{padding-left:64px}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:18px;line-height:var(--tw-leading,26px)}.text-md{font-size:16px;line-height:var(--tw-leading,24px)}.text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.text-xl{font-size:20px;line-height:var(--tw-leading,28px)}.text-xs{font-size:12px;line-height:var(--tw-leading,16px)}.text-\\[10px\\]{font-size:10px}.text-\\[13px\\]{font-size:13px}.leading-4{--tw-leading:16px;line-height:16px}.leading-5{--tw-leading:20px;line-height:20px}.\\[line-height\\:var\\(--el-overlay-padding\\)\\]{line-height:var(--el-overlay-padding)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-primary{color:var(--el-accent-primary)}.text-base-border{color:var(--el-base-border)}.text-base-error{color:var(--el-base-error)}.text-base-primary{color:var(--el-base-primary)}.text-base-subtle{color:var(--el-base-subtle)}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-70{opacity:.7}.shadow-header{--tw-shadow:0 0 1px 0 var(--tw-shadow-color,#0006), 0 2px 2px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 2px 40px 1px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 2px 24px 1px var(--tw-shadow-color,#00000029);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-scroll-fade-bottom{--tw-shadow:0 8px 16px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-scroll-fade-top{--tw-shadow:0 -8px 16px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-accent{--tw-ring-color:var(--el-accent)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\\[1px\\]{--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[border-radius\\]{transition-property:border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[colors\\,opacity\\]{transition-property:colors,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[margin\\]{transition-property:margin;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,width\\,height\\,transform\\,flex-grow\\]{transition-property:opacity,width,height,transform,flex-grow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\]{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,left\\,top\\,opacity\\,scale\\]{transition-property:transform,left,top,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[width\\,height\\,max-width\\,max-height\\,transform\\,border-radius\\,opacity\\,inset\\,bottom\\,top\\,left\\,right\\,margin\\,padding\\]{transition-property:width,height,max-width,max-height,transform,border-radius,opacity,inset,bottom,top,left,right,margin,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.group-focus-within\\:pointer-events-auto:is(:where(.group):focus-within *){pointer-events:auto}.group-focus-within\\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\\:pointer-events-auto:is(:where(.group):hover *){pointer-events:auto}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-base-subtle::placeholder{color:var(--el-base-subtle)}.first\\:mt-0:first-child,:is(.\\*\\:first\\:mt-0>*):first-child{margin-top:0}.last\\:mb-0:last-child,:is(.\\*\\:last\\:mb-0>*):last-child{margin-bottom:0}@media (hover:hover){.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-accent-hover:hover{border-color:var(--el-accent-hover)}.hover\\:border-base-hover:hover{border-color:var(--el-base-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--el-accent-hover)}.hover\\:bg-base-hover:hover{background-color:var(--el-base-hover)}.hover\\:text-base-primary:hover{color:var(--el-base-primary)}.hover\\:opacity-50:hover{opacity:.5}}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:underline-offset-2:focus-visible{text-underline-offset:2px}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:border-accent-active:active{border-color:var(--el-accent-active)}.active\\:border-base-active:active{border-color:var(--el-base-active)}.active\\:bg-accent-active:active{background-color:var(--el-accent-active)}.active\\:bg-base-active:active{background-color:var(--el-base-active)}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}.data-hidden\\:translate-x-full[data-shown=false]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:-translate-y-4[data-shown=false]{--tw-translate-y:calc(16px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:translate-y-2[data-shown=false]{--tw-translate-y:8px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:scale-75[data-shown=false]{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:scale-90[data-shown=false]{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:scale-100[data-shown=false]{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:opacity-0[data-shown=false]{opacity:0}.data-highlighted\\:bg-base-active[data-highlighted]{background-color:var(--el-base-active)}.overlay{inset:var(--el-overlay-padding);right:calc(var(--el-overlay-padding) + var(--removed-body-scroll-bar-size,0px));position:absolute}.focus-ring{--tw-ring-color:var(--el-accent);--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-offset-color:var(--el-base)}.focus-ring:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;outline-style:none}[data-variant=compact].sheet{border-radius:var(--el-sheet-radius);width:100%;max-width:400px;height:calc(100% - 80px);max-height:550px}[data-variant=expanded].sheet{border-radius:var(--el-sheet-radius);width:100%;max-width:600px;height:100%;max-height:calc(100% - 80px)}[data-variant=fullscreen].sheet{width:100%;max-width:100dvw;height:100%;max-height:100dvh;margin:calc(-1 * var(--el-overlay-padding));width:calc(100% + 2 * var(--el-overlay-padding));height:calc(100% + 2 * var(--el-overlay-padding));border-radius:0;padding-bottom:24px;bottom:0}.animate-text{background-image:linear-gradient(75deg, var(--el-base-primary), var(--el-base-subtle), var(--el-base-primary), var(--el-base-subtle));color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:2s linear infinite TextAnimation}@keyframes TextAnimation{0%{background-position:0 0}to{background-position:100% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.terms h6{font-size:12px;line-height:var(--tw-leading,16px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h5{font-size:14px;line-height:var(--tw-leading,20px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h4{font-size:16px;line-height:var(--tw-leading,24px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h3{font-size:18px;line-height:var(--tw-leading,26px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h2{font-size:20px;line-height:var(--tw-leading,28px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h1{font-size:24px;line-height:var(--tw-leading,30px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}}.dev-host,:host{pointer-events:none;z-index:1000;font-size:16px;line-height:var(--tw-leading,24px);color:var(--el-base-primary);scrollbar-color:#e5e7eb transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:fixed;inset:0}.markdown{text-autospace:normal;text-spacing-trim:trim-start}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{word-break:auto-phrase}.tok-comment,.tok-meta{color:#6a737d}.tok-keyword{color:#d73a49}.tok-atom,.tok-bool,.tok-literal,.tok-number{color:#005cc5}.tok-string,.tok-string2{color:#032f62}.tok-variableName{color:#24292e}.tok-variableName.tok-definition{color:#6f42c1}.tok-variableName.tok-local{color:#24292e}.tok-variableName2,.tok-macroName,.tok-typeName,.tok-namespace,.tok-className{color:#6f42c1}.tok-propertyName{color:#24292e}.tok-propertyName.tok-definition{color:#005cc5}.tok-labelName{color:#22863a}.tok-url,.tok-link{color:#032f62;text-decoration:underline}.tok-operator{color:#d73a49}.tok-punctuation{color:#24292e}.tok-invalid{color:#b31d28}.tok-deleted{color:#b31d28;background-color:#ffeef0}.tok-inserted{color:#22863a;background-color:#f0fff4}.tok-heading{color:#005cc5;font-weight:700}.tok-emphasis{color:#24292e;font-style:italic}.tok-strong{color:#24292e;font-weight:700}.tok-strikethrough{text-decoration:line-through}.tok-monospace{color:#005cc5}.tok-processingInstruction,[data-syntax-theme=dark] .tok-comment,[data-syntax-theme=dark] .tok-meta{color:#6a737d}[data-syntax-theme=dark] .tok-keyword{color:#f97583}[data-syntax-theme=dark] .tok-atom,[data-syntax-theme=dark] .tok-bool,[data-syntax-theme=dark] .tok-literal,[data-syntax-theme=dark] .tok-number,[data-syntax-theme=dark] .tok-propertyName.tok-definition{color:#79b8ff}[data-syntax-theme=dark] .tok-string,[data-syntax-theme=dark] .tok-string2{color:#9ecbff}[data-syntax-theme=dark] .tok-url,[data-syntax-theme=dark] .tok-link{color:#dbedff}[data-syntax-theme=dark] .tok-variableName,[data-syntax-theme=dark] .tok-variableName.tok-local,[data-syntax-theme=dark] .tok-propertyName,[data-syntax-theme=dark] .tok-emphasis,[data-syntax-theme=dark] .tok-strong{color:#e1e4e8}[data-syntax-theme=dark] .tok-variableName.tok-definition,[data-syntax-theme=dark] .tok-variableName2,[data-syntax-theme=dark] .tok-macroName,[data-syntax-theme=dark] .tok-typeName,[data-syntax-theme=dark] .tok-namespace,[data-syntax-theme=dark] .tok-className{color:#b392f0}[data-syntax-theme=dark] .tok-labelName{color:#85e89d}[data-syntax-theme=dark] .tok-invalid{color:#fdaeb7}[data-syntax-theme=dark] .tok-deleted{color:#fdaeb7;background-color:#86181d}[data-syntax-theme=dark] .tok-inserted{color:#85e89d;background-color:#144620}[data-syntax-theme=dark] .tok-heading{color:#79b8ff}[data-syntax-theme=dark] .tok-operator{color:#f97583}[data-syntax-theme=dark] .tok-punctuation{color:#e1e4e8}[data-syntax-theme=dark] .tok-monospace{color:#79b8ff}[data-syntax-theme=dark] .tok-processingInstruction{color:#6a737d}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}`;function qm(e,t){Ym(e)&&(e=`100%`);let n=Xm(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(e=t===360?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t)),e)}function Jm(e){return Math.min(1,Math.max(0,e))}function Ym(e){return typeof e==`string`&&e.indexOf(`.`)!==-1&&parseFloat(e)===1}function Xm(e){return typeof e==`string`&&e.indexOf(`%`)!==-1}function Zm(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Qm(e){return Number(e)<=1?`${Number(e)*100}%`:e}function $m(e){return e.length===1?`0`+e:String(e)}function eh(e,t,n){return{r:qm(e,255)*255,g:qm(t,255)*255,b:qm(n,255)*255}}function th(e,t,n){e=qm(e,255),t=qm(t,255),n=qm(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r===i)o=0,a=0;else{let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t<n?6:0);break;case t:a=(n-e)/c+2;break;case n:a=(e-t)/c+4;break;default:break}a/=6}return{h:a,s:o,l:s}}function nh(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function rh(e,t,n){let r,i,a;if(e=qm(e,360),t=qm(t,100),n=qm(n,100),t===0)i=n,a=n,r=n;else{let o=n<.5?n*(1+t):n+t-n*t,s=2*n-o;r=nh(s,o,e+1/3),i=nh(s,o,e),a=nh(s,o,e-1/3)}return{r:r*255,g:i*255,b:a*255}}function ih(e,t,n){e=qm(e,255),t=qm(t,255),n=qm(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=r,s=r-i,c=r===0?0:s/r;if(r===i)a=0;else{switch(r){case e:a=(t-n)/s+(t<n?6:0);break;case t:a=(n-e)/s+2;break;case n:a=(e-t)/s+4;break;default:break}a/=6}return{h:a,s:c,v:o}}function ah(e,t,n){e=qm(e,360)*6,t=qm(t,100),n=qm(n,100);let r=Math.floor(e),i=e-r,a=n*(1-t),o=n*(1-i*t),s=n*(1-(1-i)*t),c=r%6,l=[n,o,a,a,s,n][c],u=[s,n,n,o,a,a][c],d=[a,a,s,n,n,o][c];return{r:l*255,g:u*255,b:d*255}}function oh(e,t,n,r){let i=[$m(Math.round(e).toString(16)),$m(Math.round(t).toString(16)),$m(Math.round(n).toString(16))];return r&&i[0].startsWith(i[0].charAt(1))&&i[1].startsWith(i[1].charAt(1))&&i[2].startsWith(i[2].charAt(1))?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(``)}function sh(e,t,n,r,i){let a=[$m(Math.round(e).toString(16)),$m(Math.round(t).toString(16)),$m(Math.round(n).toString(16)),$m(uh(r))];return i&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))&&a[3].startsWith(a[3].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join(``)}function ch(e,t,n,r){let i=e/100,a=t/100,o=n/100,s=r/100;return{r:255*(1-i)*(1-s),g:255*(1-a)*(1-s),b:255*(1-o)*(1-s)}}function lh(e,t,n){let r=1-e/255,i=1-t/255,a=1-n/255,o=Math.min(r,i,a);return o===1?(r=0,i=0,a=0):(r=(r-o)/(1-o)*100,i=(i-o)/(1-o)*100,a=(a-o)/(1-o)*100),o*=100,{c:Math.round(r),m:Math.round(i),y:Math.round(a),k:Math.round(o)}}function uh(e){return Math.round(parseFloat(e)*255).toString(16)}function dh(e){return fh(e)/255}function fh(e){return parseInt(e,16)}function ph(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var mh={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`#00ffff`,aquamarine:`#7fffd4`,azure:`#f0ffff`,beige:`#f5f5dc`,bisque:`#ffe4c4`,black:`#000000`,blanchedalmond:`#ffebcd`,blue:`#0000ff`,blueviolet:`#8a2be2`,brown:`#a52a2a`,burlywood:`#deb887`,cadetblue:`#5f9ea0`,chartreuse:`#7fff00`,chocolate:`#d2691e`,coral:`#ff7f50`,cornflowerblue:`#6495ed`,cornsilk:`#fff8dc`,crimson:`#dc143c`,cyan:`#00ffff`,darkblue:`#00008b`,darkcyan:`#008b8b`,darkgoldenrod:`#b8860b`,darkgray:`#a9a9a9`,darkgreen:`#006400`,darkgrey:`#a9a9a9`,darkkhaki:`#bdb76b`,darkmagenta:`#8b008b`,darkolivegreen:`#556b2f`,darkorange:`#ff8c00`,darkorchid:`#9932cc`,darkred:`#8b0000`,darksalmon:`#e9967a`,darkseagreen:`#8fbc8f`,darkslateblue:`#483d8b`,darkslategray:`#2f4f4f`,darkslategrey:`#2f4f4f`,darkturquoise:`#00ced1`,darkviolet:`#9400d3`,deeppink:`#ff1493`,deepskyblue:`#00bfff`,dimgray:`#696969`,dimgrey:`#696969`,dodgerblue:`#1e90ff`,firebrick:`#b22222`,floralwhite:`#fffaf0`,forestgreen:`#228b22`,fuchsia:`#ff00ff`,gainsboro:`#dcdcdc`,ghostwhite:`#f8f8ff`,goldenrod:`#daa520`,gold:`#ffd700`,gray:`#808080`,green:`#008000`,greenyellow:`#adff2f`,grey:`#808080`,honeydew:`#f0fff0`,hotpink:`#ff69b4`,indianred:`#cd5c5c`,indigo:`#4b0082`,ivory:`#fffff0`,khaki:`#f0e68c`,lavenderblush:`#fff0f5`,lavender:`#e6e6fa`,lawngreen:`#7cfc00`,lemonchiffon:`#fffacd`,lightblue:`#add8e6`,lightcoral:`#f08080`,lightcyan:`#e0ffff`,lightgoldenrodyellow:`#fafad2`,lightgray:`#d3d3d3`,lightgreen:`#90ee90`,lightgrey:`#d3d3d3`,lightpink:`#ffb6c1`,lightsalmon:`#ffa07a`,lightseagreen:`#20b2aa`,lightskyblue:`#87cefa`,lightslategray:`#778899`,lightslategrey:`#778899`,lightsteelblue:`#b0c4de`,lightyellow:`#ffffe0`,lime:`#00ff00`,limegreen:`#32cd32`,linen:`#faf0e6`,magenta:`#ff00ff`,maroon:`#800000`,mediumaquamarine:`#66cdaa`,mediumblue:`#0000cd`,mediumorchid:`#ba55d3`,mediumpurple:`#9370db`,mediumseagreen:`#3cb371`,mediumslateblue:`#7b68ee`,mediumspringgreen:`#00fa9a`,mediumturquoise:`#48d1cc`,mediumvioletred:`#c71585`,midnightblue:`#191970`,mintcream:`#f5fffa`,mistyrose:`#ffe4e1`,moccasin:`#ffe4b5`,navajowhite:`#ffdead`,navy:`#000080`,oldlace:`#fdf5e6`,olive:`#808000`,olivedrab:`#6b8e23`,orange:`#ffa500`,orangered:`#ff4500`,orchid:`#da70d6`,palegoldenrod:`#eee8aa`,palegreen:`#98fb98`,paleturquoise:`#afeeee`,palevioletred:`#db7093`,papayawhip:`#ffefd5`,peachpuff:`#ffdab9`,peru:`#cd853f`,pink:`#ffc0cb`,plum:`#dda0dd`,powderblue:`#b0e0e6`,purple:`#800080`,rebeccapurple:`#663399`,red:`#ff0000`,rosybrown:`#bc8f8f`,royalblue:`#4169e1`,saddlebrown:`#8b4513`,salmon:`#fa8072`,sandybrown:`#f4a460`,seagreen:`#2e8b57`,seashell:`#fff5ee`,sienna:`#a0522d`,silver:`#c0c0c0`,skyblue:`#87ceeb`,slateblue:`#6a5acd`,slategray:`#708090`,slategrey:`#708090`,snow:`#fffafa`,springgreen:`#00ff7f`,steelblue:`#4682b4`,tan:`#d2b48c`,teal:`#008080`,thistle:`#d8bfd8`,tomato:`#ff6347`,turquoise:`#40e0d0`,violet:`#ee82ee`,wheat:`#f5deb3`,white:`#ffffff`,whitesmoke:`#f5f5f5`,yellow:`#ffff00`,yellowgreen:`#9acd32`};function hh(e){let t={r:0,g:0,b:0},n=1,r=null,i=null,a=null,o=!1,s=!1;return typeof e==`string`&&(e=bh(e)),typeof e==`object`&&(xh(e.r)&&xh(e.g)&&xh(e.b)?(t=eh(e.r,e.g,e.b),o=!0,s=String(e.r).substr(-1)===`%`?`prgb`:`rgb`):xh(e.h)&&xh(e.s)&&xh(e.v)?(r=Qm(e.s),i=Qm(e.v),t=ah(e.h,r,i),o=!0,s=`hsv`):xh(e.h)&&xh(e.s)&&xh(e.l)?(r=Qm(e.s),a=Qm(e.l),t=rh(e.h,r,a),o=!0,s=`hsl`):xh(e.c)&&xh(e.m)&&xh(e.y)&&xh(e.k)&&(t=ch(e.c,e.m,e.y,e.k),o=!0,s=`cmyk`),Object.prototype.hasOwnProperty.call(e,`a`)&&(n=e.a)),n=Zm(n),{ok:o,format:e.format||s,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var gh=`(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)`,_h=`[\\s|\\(]+(`+gh+`)[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?`,vh=`[\\s|\\(]+(`+gh+`)[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?`,yh={CSS_UNIT:new RegExp(gh),rgb:RegExp(`rgb`+_h),rgba:RegExp(`rgba`+vh),hsl:RegExp(`hsl`+_h),hsla:RegExp(`hsla`+vh),hsv:RegExp(`hsv`+_h),hsva:RegExp(`hsva`+vh),cmyk:RegExp(`cmyk`+vh),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function bh(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;let t=!1;if(mh[e])e=mh[e],t=!0;else if(e===`transparent`)return{r:0,g:0,b:0,a:0,format:`name`};let n=yh.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=yh.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=yh.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=yh.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=yh.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=yh.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=yh.cmyk.exec(e),n?{c:n[1],m:n[2],y:n[3],k:n[4]}:(n=yh.hex8.exec(e),n?{r:fh(n[1]),g:fh(n[2]),b:fh(n[3]),a:dh(n[4]),format:t?`name`:`hex8`}:(n=yh.hex6.exec(e),n?{r:fh(n[1]),g:fh(n[2]),b:fh(n[3]),format:t?`name`:`hex`}:(n=yh.hex4.exec(e),n?{r:fh(n[1]+n[1]),g:fh(n[2]+n[2]),b:fh(n[3]+n[3]),a:dh(n[4]+n[4]),format:t?`name`:`hex8`}:(n=yh.hex3.exec(e),n?{r:fh(n[1]+n[1]),g:fh(n[2]+n[2]),b:fh(n[3]+n[3]),format:t?`name`:`hex`}:!1))))))))))}function xh(e){return typeof e==`number`?!Number.isNaN(e):yh.CSS_UNIT.test(e)}var Sh=class e{constructor(t=``,n={}){if(t instanceof e)return t;typeof t==`number`&&(t=ph(t)),this.originalInput=t;let r=hh(t);this.originalInput=t,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=n.format??r.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}getBrightness(){let e=this.toRgb();return(e.r*299+e.g*587+e.b*114)/1e3}getLuminance(){let e=this.toRgb(),t,n,r,i=e.r/255,a=e.g/255,o=e.b/255;return t=i<=.03928?i/12.92:((i+.055)/1.055)**2.4,n=a<=.03928?a/12.92:((a+.055)/1.055)**2.4,r=o<=.03928?o/12.92:((o+.055)/1.055)**2.4,.2126*t+.7152*n+.0722*r}getAlpha(){return this.a}setAlpha(e){return this.a=Zm(e),this.roundA=Math.round(100*this.a)/100,this}isMonochrome(){let{s:e}=this.toHsl();return e===0}toHsv(){let e=ih(this.r,this.g,this.b);return{h:e.h*360,s:e.s,v:e.v,a:this.a}}toHsvString(){let e=ih(this.r,this.g,this.b),t=Math.round(e.h*360),n=Math.round(e.s*100),r=Math.round(e.v*100);return this.a===1?`hsv(${t}, ${n}%, ${r}%)`:`hsva(${t}, ${n}%, ${r}%, ${this.roundA})`}toHsl(){let e=th(this.r,this.g,this.b);return{h:e.h*360,s:e.s,l:e.l,a:this.a}}toHslString(){let e=th(this.r,this.g,this.b),t=Math.round(e.h*360),n=Math.round(e.s*100),r=Math.round(e.l*100);return this.a===1?`hsl(${t}, ${n}%, ${r}%)`:`hsla(${t}, ${n}%, ${r}%, ${this.roundA})`}toHex(e=!1){return oh(this.r,this.g,this.b,e)}toHexString(e=!1){return`#`+this.toHex(e)}toHex8(e=!1){return sh(this.r,this.g,this.b,this.a,e)}toHex8String(e=!1){return`#`+this.toHex8(e)}toHexShortString(e=!1){return this.a===1?this.toHexString(e):this.toHex8String(e)}toRgb(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}}toRgbString(){let e=Math.round(this.r),t=Math.round(this.g),n=Math.round(this.b);return this.a===1?`rgb(${e}, ${t}, ${n})`:`rgba(${e}, ${t}, ${n}, ${this.roundA})`}toPercentageRgb(){let e=e=>`${Math.round(qm(e,255)*100)}%`;return{r:e(this.r),g:e(this.g),b:e(this.b),a:this.a}}toPercentageRgbString(){let e=e=>Math.round(qm(e,255)*100);return this.a===1?`rgb(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%)`:`rgba(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%, ${this.roundA})`}toCmyk(){return{...lh(this.r,this.g,this.b)}}toCmykString(){let{c:e,m:t,y:n,k:r}=lh(this.r,this.g,this.b);return`cmyk(${e}, ${t}, ${n}, ${r})`}toName(){if(this.a===0)return`transparent`;if(this.a<1)return!1;let e=`#`+oh(this.r,this.g,this.b,!1);for(let[t,n]of Object.entries(mh))if(e===n)return t;return!1}toString(e){let t=!!e;e??=this.format;let n=!1,r=this.a<1&&this.a>=0;return!t&&r&&(e.startsWith(`hex`)||e===`name`)?e===`name`&&this.a===0?this.toName():this.toRgbString():(e===`rgb`&&(n=this.toRgbString()),e===`prgb`&&(n=this.toPercentageRgbString()),(e===`hex`||e===`hex6`)&&(n=this.toHexString()),e===`hex3`&&(n=this.toHexString(!0)),e===`hex4`&&(n=this.toHex8String(!0)),e===`hex8`&&(n=this.toHex8String()),e===`name`&&(n=this.toName()),e===`hsl`&&(n=this.toHslString()),e===`hsv`&&(n=this.toHsvString()),e===`cmyk`&&(n=this.toCmykString()),n||this.toHexString())}toNumber(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)}clone(){return new e(this.toString())}lighten(t=10){let n=this.toHsl();return n.l+=t/100,n.l=Jm(n.l),new e(n)}brighten(t=10){let n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)}darken(t=10){let n=this.toHsl();return n.l-=t/100,n.l=Jm(n.l),new e(n)}tint(e=10){return this.mix(`white`,e)}shade(e=10){return this.mix(`black`,e)}desaturate(t=10){let n=this.toHsl();return n.s-=t/100,n.s=Jm(n.s),new e(n)}saturate(t=10){let n=this.toHsl();return n.s+=t/100,n.s=Jm(n.s),new e(n)}greyscale(){return this.desaturate(100)}spin(t){let n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)}mix(t,n=50){let r=this.toRgb(),i=new e(t).toRgb(),a=n/100;return new e({r:(i.r-r.r)*a+r.r,g:(i.g-r.g)*a+r.g,b:(i.b-r.b)*a+r.b,a:(i.a-r.a)*a+r.a})}analogous(t=6,n=30){let r=this.toHsl(),i=360/n,a=[this];for(r.h=(r.h-(i*t>>1)+720)%360;--t;)r.h=(r.h+i)%360,a.push(new e(r));return a}complement(){let t=this.toHsl();return t.h=(t.h+180)%360,new e(t)}monochromatic(t=6){let n=this.toHsv(),{h:r}=n,{s:i}=n,{v:a}=n,o=[],s=1/t;for(;t--;)o.push(new e({h:r,s:i,v:a})),a=(a+s)%1;return o}splitcomplement(){let t=this.toHsl(),{h:n}=t;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]}onBackground(t){let n=this.toRgb(),r=new e(t).toRgb(),i=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/i,g:(n.g*n.a+r.g*r.a*(1-n.a))/i,b:(n.b*n.a+r.b*r.a*(1-n.a))/i,a:i})}triad(){return this.polyad(3)}tetrad(){return this.polyad(4)}polyad(t){let n=this.toHsl(),{h:r}=n,i=[this],a=360/t;for(let o=1;o<t;o++)i.push(new e({h:(r+o*a)%360,s:n.s,l:n.l}));return i}equals(t){let n=new e(t);return this.format===`cmyk`||n.format===`cmyk`?this.toCmykString()===n.toCmykString():this.toRgbString()===n.toRgbString()}},Ch=[`tiny`,`compact`,`full`];function wh(e){return Ch.includes(e)?e:Ch[0]}var Th=[`top-left`,`top`,`top-right`,`bottom-left`,`bottom`,`bottom-right`];function Eh(e){return Th.includes(e)?e:`bottom-right`}var Dh={main_label:`Need help?`,start_call:`Start a call`,start_chat:`Start a chat`,send_message:`Send`,new_call:`New call`,end_call:`End`,mute_microphone:`Mute microphone`,text_mode:`Switch to text mode`,voice_mode:`Switch to voice mode`,switched_to_text_mode:`Switched to text mode`,switched_to_voice_mode:`Switched to voice mode`,change_language:`Change language`,collapse:`Collapse`,expand:`Expand`,copied:`Copied!`,accept_terms:`Accept`,dismiss_terms:`Cancel`,listening_status:`Listening`,speaking_status:`Talk to interrupt`,connecting_status:`Connecting`,chatting_status:`Chatting with AI Agent`,input_label:`Text message input`,input_placeholder:`Send a message...`,input_placeholder_text_only:`Send a message...`,input_placeholder_new_conversation:`Start a new conversation`,user_ended_conversation:`You ended the conversation`,agent_ended_conversation:`The agent ended the conversation`,conversation_id:`ID`,error_occurred:`An error occurred`,copy_id:`Copy ID`,initiate_feedback:`How was this conversation?`,request_follow_up_feedback:`Tell us more`,thanks_for_feedback:`Thank you for your feedback!`,thanks_for_feedback_details:`Your feedback helps us improve our service and better support you in the future.`,follow_up_feedback_placeholder:`Tell us more about your experience...`,submit:`Submit`,go_back:`Go back`,copy:`Copy`,download:`Download`,wrap:`Wrap`,agent_working:`Working...`,agent_done:`Completed`,agent_error:`Error occurred`,attach_file:`Attach file`,remove_file:`Remove file`,file_upload_error:`Failed to upload file.`,file_type_unsupported:`Unsupported file type. Accepted types:`,file_too_large:`File size exceeds the maximum limit.`,file_limit_reached:`Maximum number of files for this conversation reached.`},Oh=Object.keys(Dh),kh={base:`#ffffff`,base_hover:`#f9fafb`,base_active:`#f3f4f6`,base_border:`#e5e7eb`,base_subtle:`#6b7280`,base_primary:`#000000`,base_error:`#ef4444`,accent:`#000000`,accent_hover:`#1f2937`,accent_active:`#374151`,accent_border:`#4b5563`,accent_subtle:`#6b7280`,accent_primary:`#ffffff`,overlay_padding:32,button_radius:18,input_radius:10,bubble_radius:15,sheet_radius:`calc(var(--el-button-radius) + 6px)`,compact_sheet_radius:`calc(var(--el-button-radius) + 12px)`,dropdown_sheet_radius:`calc(var(--el-input-radius) + 6px)`},Ah=Object.keys(kh);function jh(e=`us`){switch(e){case`eu-residency`:case`in-residency`:case`us`:case`global`:return e;default:return console.warn(`[ConversationalAI] Invalid server-location: ${e}. Defaulting to "us"`),`us`}}function Mh(e){let t=xf(e);if(t==null)throw Error(`${e.displayName} cannot be used outside of provider`);return t}var Nh=Vd(null);function Ph({value:e,children:t}){let n=bf(()=>Object.fromEntries(Gm.map(t=>[t,qp(e[t])])),[]);return Gm.forEach(t=>{n[t].value=e[t]}),R(Nh.Provider,{value:n,children:t})}function Fh(){return Mh(Nh)}function Ih(e){return Fh()[e]}var Lh=Vd(null);function Rh({children:e}){let t=Ih(`server-location`),n=bf(()=>{let e=Qp(()=>jh(t.value)),n={us:`https://api.us.elevenlabs.io`,"eu-residency":`https://api.eu.residency.elevenlabs.io`,"in-residency":`https://api.in.residency.elevenlabs.io`,global:`https://api.elevenlabs.io`},r={us:`wss://api.us.elevenlabs.io`,"eu-residency":`wss://api.eu.residency.elevenlabs.io`,"in-residency":`wss://api.in.residency.elevenlabs.io`,global:`wss://api.elevenlabs.io`};return{location:e,serverUrl:Qp(()=>n[e.value]),webSocketUrl:Qp(()=>r[e.value])}},[]);return R(Lh.Provider,{value:n,children:e})}function zh(){return Mh(Lh)}var Bh={en:{name:`English`,flagCode:`us`,languageCode:`en`},zh:{name:`中文`,flagCode:`cn`,languageCode:`zh`},es:{name:`Español`,flagCode:`es`,languageCode:`es`},hi:{name:`हिन्दी`,flagCode:`in`,languageCode:`hi`},pt:{name:`Português (Portugal)`,flagCode:`pt`,languageCode:`pt`},"pt-br":{name:`Português (Brasil)`,flagCode:`br`,languageCode:`pt-br`},fr:{name:`Français`,flagCode:`fr`,languageCode:`fr`},de:{name:`Deutsch`,flagCode:`de`,languageCode:`de`},ja:{name:`日本語`,flagCode:`jp`,languageCode:`ja`},ar:{name:`العربية`,flagCode:`ae`,languageCode:`ar`},ru:{name:`Русский`,flagCode:`ru`,languageCode:`ru`},ko:{name:`한국어`,flagCode:`kr`,languageCode:`ko`},id:{name:`Bahasa Indonesia`,flagCode:`id`,languageCode:`id`},it:{name:`Italiano`,flagCode:`it`,languageCode:`it`},nl:{name:`Nederlands`,flagCode:`nl`,languageCode:`nl`},tr:{name:`Türkçe`,flagCode:`tr`,languageCode:`tr`},pl:{name:`Polski`,flagCode:`pl`,languageCode:`pl`},sv:{name:`Svenska`,flagCode:`se`,languageCode:`sv`},ms:{name:`Bahasa Melayu`,flagCode:`my`,languageCode:`ms`},ro:{name:`Română`,flagCode:`ro`,languageCode:`ro`},uk:{name:`Українська`,flagCode:`ua`,languageCode:`uk`},el:{name:`Ελληνικά`,flagCode:`gr`,languageCode:`el`},cs:{name:`Čeština`,flagCode:`cz`,languageCode:`cs`},da:{name:`Dansk`,flagCode:`dk`,languageCode:`da`},fi:{name:`Suomi`,flagCode:`fi`,languageCode:`fi`},bg:{name:`Български`,flagCode:`bg`,languageCode:`bg`},hr:{name:`Hrvatski`,flagCode:`hr`,languageCode:`hr`},sk:{name:`Slovenčina`,flagCode:`sk`,languageCode:`sk`},ta:{name:`தமிழ்`,flagCode:`in`,languageCode:`ta`},hu:{name:`Magyar`,flagCode:`hu`,languageCode:`hu`},no:{name:`Norsk`,flagCode:`no`,languageCode:`no`},vi:{name:`Tiếng Việt`,flagCode:`vn`,languageCode:`vi`},tl:{name:`Filipino`,flagCode:`ph`,languageCode:`tl`},af:{name:`Afrikaans`,flagCode:`za`,languageCode:`af`},hy:{name:`Հայերեն`,flagCode:`am`,languageCode:`hy`},as:{name:`অসমীয়া`,flagCode:`in`,languageCode:`as`},az:{name:`Azərbaycan`,flagCode:`az`,languageCode:`az`},be:{name:`Беларуская`,flagCode:`by`,languageCode:`be`},bn:{name:`বাংলা`,flagCode:`in`,languageCode:`bn`},bs:{name:`Bosanski`,flagCode:`ba`,languageCode:`bs`},ca:{name:`Català`,flagCode:`es-ct`,languageCode:`ca`},et:{name:`Eesti`,flagCode:`ee`,languageCode:`et`},gl:{name:`Galego`,flagCode:`es-ga`,languageCode:`gl`},ka:{name:`ქართული`,flagCode:`ge`,languageCode:`ka`},gu:{name:`ગુજરાતી`,flagCode:`in`,languageCode:`gu`},ha:{name:`Hausa`,flagCode:`ng`,languageCode:`ha`},he:{name:`עברית`,flagCode:`il`,languageCode:`he`},is:{name:`Íslenska`,flagCode:`is`,languageCode:`is`},ga:{name:`Gaeilge`,flagCode:`ie`,languageCode:`ga`},jv:{name:`Basa Jawa`,flagCode:`id`,languageCode:`jv`},kn:{name:`ಕನ್ನಡ`,flagCode:`in`,languageCode:`kn`},kk:{name:`Қазақша`,flagCode:`kz`,languageCode:`kk`},ky:{name:`Кыргызча`,flagCode:`kg`,languageCode:`ky`},lv:{name:`Latviešu`,flagCode:`lv`,languageCode:`lv`},lt:{name:`Lietuvių`,flagCode:`lt`,languageCode:`lt`},lb:{name:`Lëtzebuergesch`,flagCode:`lu`,languageCode:`lb`},mk:{name:`Македонски`,flagCode:`mk`,languageCode:`mk`},ml:{name:`മലയാളം`,flagCode:`in`,languageCode:`ml`},mr:{name:`मराठी`,flagCode:`in`,languageCode:`mr`},ne:{name:`नेपाली`,flagCode:`np`,languageCode:`ne`},ps:{name:`پښتو`,flagCode:`af`,languageCode:`ps`},fa:{name:`فارسی`,flagCode:`ir`,languageCode:`fa`},pa:{name:`ਪੰਜਾਬੀ`,flagCode:`in`,languageCode:`pa`},sr:{name:`Српски`,flagCode:`rs`,languageCode:`sr`},sd:{name:`سنڌي`,flagCode:`in`,languageCode:`sd`},sl:{name:`Slovenščina`,flagCode:`si`,languageCode:`sl`},so:{name:`Soomaali`,flagCode:`so`,languageCode:`so`},sw:{name:`Kiswahili`,flagCode:`ke`,languageCode:`sw`},te:{name:`తెలుగు`,flagCode:`in`,languageCode:`te`},th:{name:`ไทย`,flagCode:`th`,languageCode:`th`},ur:{name:`اردو`,flagCode:`pk`,languageCode:`ur`},cy:{name:`Cymraeg`,flagCode:`gb-wls`,languageCode:`cy`}};function Vh(e){return Object.keys(Bh).includes(e??``)}var Hh=`xi:convai-widget-last-used-language`,Uh=Vd(null);function Wh(){try{let e=localStorage.getItem(Hh);if(e&&Vh(e))return e}catch{}}function Gh(){try{let e=[];for(let t of navigator.languages){let n=t.toLowerCase();e.push(n);let r=n.split(`-`)[0];r!==n&&e.push(r)}return e}catch(e){return console.warn(`[ConversationalAI] Could not read navigator.languages:`,e),[]}}function Kh({languageAttribute:e,supported:t,defaultLanguage:n}){let r=new Set([...t,n]),i=[e,Wh(),...Gh()];for(let e of i)if(e&&r.has(e))return e;return n}function qh(e){try{localStorage.setItem(Hh,e)}catch{}}function Jh({children:e}){let t=Py(),n=Ih(`language`),r=Ih(`override-language`),i=L(()=>(t.value.supported_language_overrides??[]).filter(Vh)),a=n.peek(),o=t.peek(),s=(o.supported_language_overrides??[]).filter(Vh),c=mm(Kh({languageAttribute:a&&Vh(a)?a:void 0,supported:s,defaultLanguage:o.language})),l=L(()=>i.value.map(e=>Bh[e]).sort((e,t)=>e.name.localeCompare(t.name))),u=bf(()=>({language:Qp(()=>Vh(r.value)?Bh[r.value]:Vh(c.value)&&i.value.includes(c.value)?Bh[c.value]:Bh[t.value.language]),setLanguage:e=>{c.value=e,qh(e)},options:l,showPicker:Qp(()=>l.value.length>0)}),[]);return R(Uh.Provider,{value:u,children:e})}function Yh(){return Mh(Uh)}var Xh=Vd(null);function Zh({children:e}){let{language:t}=Yh(),n=Ih(`override-prompt`),r=Ih(`override-llm`),i=Ih(`override-speed`),a=Ih(`override-stability`),o=Ih(`override-similarity-boost`),s=Ih(`override-first-message`),c=Ih(`override-voice-id`),l=Ih(`override-text-only`),u=Ih(`user-id`),d=L(()=>({agent:{prompt:{prompt:n.value,llm:r.value},firstMessage:s.value,language:t.value.languageCode},tts:{voiceId:c.value,speed:i.value?parseFloat(i.value):void 0,stability:a.value?parseFloat(a.value):void 0,similarityBoost:o.value?parseFloat(o.value):void 0},conversation:{textOnly:Wm(l.value)??void 0}})),f=Ih(`dynamic-variables`),p=L(()=>{if(f.value)try{return JSON.parse(f.value)}catch(e){console.error(`[ConversationalAI] Cannot parse dynamic-variables: ${e?.message}`)}}),m=Ih(`worklet-path-raw-audio-processor`),h=Ih(`worklet-path-audio-concat-processor`),g=Ih(`worklet-path-libsamplerate`),{webSocketUrl:_}=zh(),v=Ih(`agent-id`),y=Ih(`signed-url`),b=Ih(`environment`),x=Fy(),S=Hy(),C=L(()=>{let e=S.value,t={dynamicVariables:p.value,overrides:d.value,connectionDelay:{default:300},textOnly:x.value,userId:u.value||void 0,environment:b.value||void 0,libsampleratePath:g.value,workletPaths:{rawAudioProcessor:m.value,audioConcatProcessor:h.value}};return v.value?e?{agentId:v.value,origin:_.value,connectionType:`webrtc`,...t}:{agentId:v.value,origin:_.value,connectionType:`websocket`,...t}:y.value?{signedUrl:y.value,connectionType:`websocket`,...t}:(console.error(`[ConversationalAI] Either agent-id or signed-url is required`),null)});return C.value?R(Xh.Provider,{value:C,children:e}):null}function Qh(){return Mh(Xh)}var $h=`5.2.0`;function eg(e,t){return new Promise(n=>setTimeout(n,e,t))}function tg(){return new Promise(e=>{let t=new MessageChannel;t.port1.onmessage=()=>e(),t.port2.postMessage(null)})}function ng(e,t=1/0){let{requestIdleCallback:n}=window;return n?new Promise(e=>n.call(window,()=>e(),{timeout:t})):eg(Math.min(e,t))}function rg(e){return!!e&&typeof e.then==`function`}function ig(e,t){try{let n=e();rg(n)?n.then(e=>t(!0,e),e=>t(!1,e)):t(!0,n)}catch(e){t(!1,e)}}async function ag(e,t,n=16){let r=Array(e.length),i=Date.now();for(let a=0;a<e.length;++a){r[a]=t(e[a],a);let o=Date.now();o>=i+n&&(i=o,await tg())}return r}function og(e){return e.then(void 0,()=>void 0),e}function sg(e,t){for(let n=0,r=e.length;n<r;++n)if(e[n]===t)return!0;return!1}function cg(e,t){return!sg(e,t)}function lg(e){return parseInt(e)}function ug(e){return parseFloat(e)}function dg(e,t){return typeof e==`number`&&isNaN(e)?t:e}function fg(e){return e.reduce((e,t)=>e+ +!!t,0)}function pg(e,t=1){if(Math.abs(t)>=1)return Math.round(e/t)*t;{let n=1/t;return Math.round(e*n)/n}}function mg(e){let t=`Unexpected syntax '${e}'`,n=/^\s*([a-z-]*)(.*)$/i.exec(e),r=n[1]||void 0,i={},a=/([.:#][\w-]+|\[.+?\])/gi,o=(e,t)=>{i[e]=i[e]||[],i[e].push(t)};for(;;){let e=a.exec(n[2]);if(!e)break;let r=e[0];switch(r[0]){case`.`:o(`class`,r.slice(1));break;case`#`:o(`id`,r.slice(1));break;case`[`:{let e=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(r);if(e)o(e[1],e[4]??e[5]??``);else throw Error(t);break}default:throw Error(t)}}return[r,i]}function hg(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>127)return new TextEncoder().encode(e);t[n]=r}return t}function gg(e,t){let n=e[0]>>>16,r=e[0]&65535,i=e[1]>>>16,a=e[1]&65535,o=t[0]>>>16,s=t[0]&65535,c=t[1]>>>16,l=t[1]&65535,u=0,d=0,f=0,p=0;p+=a+l,f+=p>>>16,p&=65535,f+=i+c,d+=f>>>16,f&=65535,d+=r+s,u+=d>>>16,d&=65535,u+=n+o,u&=65535,e[0]=u<<16|d,e[1]=f<<16|p}function _g(e,t){let n=e[0]>>>16,r=e[0]&65535,i=e[1]>>>16,a=e[1]&65535,o=t[0]>>>16,s=t[0]&65535,c=t[1]>>>16,l=t[1]&65535,u=0,d=0,f=0,p=0;p+=a*l,f+=p>>>16,p&=65535,f+=i*l,d+=f>>>16,f&=65535,f+=a*c,d+=f>>>16,f&=65535,d+=r*l,u+=d>>>16,d&=65535,d+=i*c,u+=d>>>16,d&=65535,d+=a*s,u+=d>>>16,d&=65535,u+=n*l+r*c+i*s+a*o,u&=65535,e[0]=u<<16|d,e[1]=f<<16|p}function vg(e,t){let n=e[0];t%=64,t===32?(e[0]=e[1],e[1]=n):t<32?(e[0]=n<<t|e[1]>>>32-t,e[1]=e[1]<<t|n>>>32-t):(t-=32,e[0]=e[1]<<t|n>>>32-t,e[1]=n<<t|e[1]>>>32-t)}function yg(e,t){t%=64,t!==0&&(t<32?(e[0]=e[1]>>>32-t,e[1]<<=t):(e[0]=e[1]<<t-32,e[1]=0))}function bg(e,t){e[0]^=t[0],e[1]^=t[1]}var xg=[4283543511,3981806797],Sg=[3301882366,444984403];function Cg(e){let t=[0,e[0]>>>1];bg(e,t),_g(e,xg),t[1]=e[0]>>>1,bg(e,t),_g(e,Sg),t[1]=e[0]>>>1,bg(e,t)}var wg=[2277735313,289559509],Tg=[1291169091,658871167],Eg=[0,5],Dg=[0,1390208809],Og=[0,944331445];function kg(e,t){let n=hg(e);t||=0;let r=[0,n.length],i=r[1]%16,a=r[1]-i,o=[0,t],s=[0,t],c=[0,0],l=[0,0],u;for(u=0;u<a;u+=16)c[0]=n[u+4]|n[u+5]<<8|n[u+6]<<16|n[u+7]<<24,c[1]=n[u]|n[u+1]<<8|n[u+2]<<16|n[u+3]<<24,l[0]=n[u+12]|n[u+13]<<8|n[u+14]<<16|n[u+15]<<24,l[1]=n[u+8]|n[u+9]<<8|n[u+10]<<16|n[u+11]<<24,_g(c,wg),vg(c,31),_g(c,Tg),bg(o,c),vg(o,27),gg(o,s),_g(o,Eg),gg(o,Dg),_g(l,Tg),vg(l,33),_g(l,wg),bg(s,l),vg(s,31),gg(s,o),_g(s,Eg),gg(s,Og);c[0]=0,c[1]=0,l[0]=0,l[1]=0;let d=[0,0];switch(i){case 15:d[1]=n[u+14],yg(d,48),bg(l,d);case 14:d[1]=n[u+13],yg(d,40),bg(l,d);case 13:d[1]=n[u+12],yg(d,32),bg(l,d);case 12:d[1]=n[u+11],yg(d,24),bg(l,d);case 11:d[1]=n[u+10],yg(d,16),bg(l,d);case 10:d[1]=n[u+9],yg(d,8),bg(l,d);case 9:d[1]=n[u+8],bg(l,d),_g(l,Tg),vg(l,33),_g(l,wg),bg(s,l);case 8:d[1]=n[u+7],yg(d,56),bg(c,d);case 7:d[1]=n[u+6],yg(d,48),bg(c,d);case 6:d[1]=n[u+5],yg(d,40),bg(c,d);case 5:d[1]=n[u+4],yg(d,32),bg(c,d);case 4:d[1]=n[u+3],yg(d,24),bg(c,d);case 3:d[1]=n[u+2],yg(d,16),bg(c,d);case 2:d[1]=n[u+1],yg(d,8),bg(c,d);case 1:d[1]=n[u],bg(c,d),_g(c,wg),vg(c,31),_g(c,Tg),bg(o,c)}return bg(o,r),bg(s,r),gg(o,s),gg(s,o),Cg(o),Cg(s),gg(o,s),gg(s,o),(`00000000`+(o[0]>>>0).toString(16)).slice(-8)+(`00000000`+(o[1]>>>0).toString(16)).slice(-8)+(`00000000`+(s[0]>>>0).toString(16)).slice(-8)+(`00000000`+(s[1]>>>0).toString(16)).slice(-8)}function Ag(e){return{name:e.name,message:e.message,stack:e.stack?.split(`
|
|
266
|
+
`},Pc}var Lc;function Rc(){if(Lc)return Dc;Lc=1;var e=Nc(),t=Ic();return Dc.grammar=jc(),Dc.write=t,Dc.parse=e.parse,Dc.parseParams=e.parseParams,Dc.parseFmtpConfig=e.parseFmtpConfig,Dc.parsePayloads=e.parsePayloads,Dc.parseRemoteCandidates=e.parseRemoteCandidates,Dc.parseImageAttributes=e.parseImageAttributes,Dc.parseSimulcastStreamList=e.parseSimulcastStreamList,Dc}var zc=Rc();function Bc(e,t,n){var r,i,a;t===void 0&&(t=50),n===void 0&&(n={});var o=(r=n.isImmediate)!=null&&r,s=(i=n.callback)!=null&&i,c=n.maxWait,l=Date.now(),u=[];function d(){if(c!==void 0){var e=Date.now()-l;if(e+t>=c)return c-e}return t}var f=function(){var t=[].slice.call(arguments),n=this;return new Promise(function(r,i){var c=o&&a===void 0;if(a!==void 0&&clearTimeout(a),a=setTimeout(function(){if(a=void 0,l=Date.now(),!o){var r=e.apply(n,t);s&&s(r),u.forEach(function(e){return(0,e.resolve)(r)}),u=[]}},d()),c){var f=e.apply(n,t);return s&&s(f),r(f)}u.push({resolve:r,reject:i})})};return f.cancel=function(e){a!==void 0&&clearTimeout(a),u.forEach(function(t){return(0,t.reject)(e)}),u=[]},f}var Vc=.7,Hc=20,Uc={NegotiationStarted:`negotiationStarted`,NegotiationComplete:`negotiationComplete`,RTPVideoPayloadTypes:`rtpVideoPayloadTypes`},Wc=class extends Ai.EventEmitter{get pc(){return this._pc||=this.createPC(),this._pc}constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),this.log=vi,this.ddExtID=0,this.latestOfferId=0,this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate=!1,this.trackBitrates=[],this.remoteStereoMids=[],this.remoteNackMids=[],this.negotiate=Bc(e=>k(this,void 0,void 0,function*(){this.emit(Uc.NegotiationStarted);try{yield this.createAndSendOffer()}catch(t){if(e)e(t);else throw t}}),Hc),this.close=()=>{this._pc&&=(this._pc.close(),this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc.onicegatheringstatechange=null,this._pc.ondatachannel=null,this._pc.onnegotiationneeded=null,this._pc.onsignalingstatechange=null,this._pc.onicecandidate=null,this._pc.ondatachannel=null,this._pc.ontrack=null,this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,null)},this.log=yi(t.loggerName??_i.PCTransport),this.loggerOptions=t,this.config=e,this._pc=this.createPC(),this.offerLock=new le}createPC(){let e=new RTCPeerConnection(this.config);return e.onicecandidate=e=>{var t;e.candidate&&((t=this.onIceCandidate)==null||t.call(this,e.candidate))},e.onicecandidateerror=e=>{var t;(t=this.onIceCandidateError)==null||t.call(this,e)},e.oniceconnectionstatechange=()=>{var t;(t=this.onIceConnectionStateChange)==null||t.call(this,e.iceConnectionState)},e.onsignalingstatechange=()=>{var t;(t=this.onSignalingStatechange)==null||t.call(this,e.signalingState)},e.onconnectionstatechange=()=>{var t;(t=this.onConnectionStateChange)==null||t.call(this,e.connectionState)},e.ondatachannel=e=>{var t;(t=this.onDataChannel)==null||t.call(this,e)},e.ontrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)},e}get logContext(){var e;return Object.assign({},(e=this.loggerOptions).loggerContextCb?.call(e))}get isICEConnected(){return this._pc!==null&&(this.pc.iceConnectionState===`connected`||this.pc.iceConnectionState===`completed`)}addIceCandidate(e){return k(this,void 0,void 0,function*(){if(this.pc.remoteDescription&&!this.restartingIce)return this.pc.addIceCandidate(e);this.pendingCandidates.push(e)})}setRemoteDescription(e,t){return k(this,void 0,void 0,function*(){if(e.type===`answer`&&this.latestOfferId>0&&t>0&&t!==this.latestOfferId)return this.log.warn(`ignoring answer for old offer`,Object.assign(Object.assign({},this.logContext),{offerId:t,latestOfferId:this.latestOfferId})),!1;let n;if(e.type===`offer`){let{stereoMids:t,nackMids:n}=Kc(e);this.remoteStereoMids=t,this.remoteNackMids=n}else if(e.type===`answer`){let t=zc.parse(e.sdp??``);t.media.forEach(e=>{let t=Jc(e.mid);e.type===`audio`&&this.trackBitrates.some(n=>{if(!n.transceiver||t!=n.transceiver.mid)return!1;let r=0;if(e.rtp.some(e=>e.codec.toUpperCase()===n.codec.toUpperCase()?(r=e.payload,!0):!1),r===0)return!0;let i=!1;for(let t of e.fmtp)if(t.payload===r){t.config=t.config.split(`;`).filter(e=>!e.includes(`maxaveragebitrate`)).join(`;`),n.maxbr>0&&(t.config+=`;maxaveragebitrate=${n.maxbr*1e3}`),i=!0;break}return i||n.maxbr>0&&e.fmtp.push({payload:r,config:`maxaveragebitrate=${n.maxbr*1e3}`}),!0})}),n=zc.write(t)}return yield this.setMungedSDP(e,n,!0),this.pendingCandidates.forEach(e=>{this.pc.addIceCandidate(e)}),this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate?(this.renegotiate=!1,yield this.createAndSendOffer()):e.type===`answer`&&(this.emit(Uc.NegotiationComplete),e.sdp&&zc.parse(e.sdp).media.forEach(e=>{e.type===`video`&&this.emit(Uc.RTPVideoPayloadTypes,e.rtp)})),!0})}createAndSendOffer(e){return k(this,void 0,void 0,function*(){let t=yield this.offerLock.lock();try{if(this.onOffer===void 0)return;if(e?.iceRestart&&(this.log.debug(`restarting ICE`,this.logContext),this.restartingIce=!0),this._pc&&this._pc.signalingState===`have-local-offer`){let t=this._pc.remoteDescription;if(e?.iceRestart&&t)yield this._pc.setRemoteDescription(t);else{this.renegotiate=!0;return}}else if(!this._pc||this._pc.signalingState===`closed`){this.log.warn(`could not createOffer with closed peer connection`,this.logContext);return}this.log.debug(`starting to negotiate`,this.logContext);let t=this.latestOfferId+1;this.latestOfferId=t;let n=yield this.pc.createOffer(e);this.log.debug(`original offer`,Object.assign({sdp:n.sdp},this.logContext));let r=zc.parse(n.sdp??``);if(r.media.forEach(e=>{qc(e),e.type===`audio`?Gc(e,[`all`],[]):e.type===`video`&&this.trackBitrates.some(t=>{if(!e.msid||!t.cid||!e.msid.includes(t.cid))return!1;let n=0;if(e.rtp.some(e=>e.codec.toUpperCase()===t.codec.toUpperCase()?(n=e.payload,!0):!1),n===0||(Ho(t.codec)&&!qo()&&this.ensureVideoDDExtensionForSVC(e,r),!Ho(t.codec)))return!0;let i=Math.round(t.maxbr*Vc);for(let t of e.fmtp)if(t.payload===n){t.config.includes(`x-google-start-bitrate`)||(t.config+=`;x-google-start-bitrate=${i}`);break}return!0})}),this.latestOfferId>t){this.log.warn(`latestOfferId mismatch`,Object.assign(Object.assign({},this.logContext),{latestOfferId:this.latestOfferId,offerId:t}));return}yield this.setMungedSDP(n,zc.write(r)),this.onOffer(n,this.latestOfferId)}finally{t()}})}createAndSetAnswer(){return k(this,void 0,void 0,function*(){let e=yield this.pc.createAnswer(),t=zc.parse(e.sdp??``);return t.media.forEach(e=>{qc(e),e.type===`audio`&&Gc(e,this.remoteStereoMids,this.remoteNackMids)}),yield this.setMungedSDP(e,zc.write(t)),e})}createDataChannel(e,t){return this.pc.createDataChannel(e,t)}addTransceiver(e,t){return this.pc.addTransceiver(e,t)}addTransceiverOfKind(e,t){return this.pc.addTransceiver(e,t)}addTrack(e){if(!this._pc)throw new to(`PC closed, cannot add track`);return this._pc.addTrack(e)}setTrackCodecBitrate(e){this.trackBitrates.push(e)}setConfiguration(e){if(!this._pc)throw new to(`PC closed, cannot configure`);return this._pc?.setConfiguration(e)}canRemoveTrack(){return!!this._pc?.removeTrack}removeTrack(e){return this._pc?.removeTrack(e)}getConnectionState(){return this._pc?.connectionState??`closed`}getICEConnectionState(){return this._pc?.iceConnectionState??`closed`}getSignallingState(){return this._pc?.signalingState??`closed`}getTransceivers(){return this._pc?.getTransceivers()??[]}getSenders(){return this._pc?.getSenders()??[]}getLocalDescription(){return this._pc?.localDescription}getRemoteDescription(){return this.pc?.remoteDescription}getStats(){return this.pc.getStats()}getConnectedAddress(){return k(this,void 0,void 0,function*(){if(!this._pc)return;let e=``,t=new Map,n=new Map;if((yield this._pc.getStats()).forEach(r=>{switch(r.type){case`transport`:e=r.selectedCandidatePairId;break;case`candidate-pair`:e===``&&r.selected&&(e=r.id),t.set(r.id,r);break;case`remote-candidate`:n.set(r.id,`${r.address}:${r.port}`);break}}),e===``)return;let r=t.get(e)?.remoteCandidateId;if(r!==void 0)return n.get(r)})}setMungedSDP(e,t,n){return k(this,void 0,void 0,function*(){if(t){let r=e.sdp;e.sdp=t;try{this.log.debug(`setting munged ${n?`remote`:`local`} description`,this.logContext),n?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e);return}catch(n){this.log.warn(`not able to set ${e.type}, falling back to unmodified sdp`,Object.assign(Object.assign({},this.logContext),{error:n,sdp:t})),e.sdp=r}}try{n?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e)}catch(t){let r=`unknown error`;t instanceof Error?r=t.message:typeof t==`string`&&(r=t);let i={error:r,sdp:e.sdp};throw!n&&this.pc.remoteDescription&&(i.remoteSdp=this.pc.remoteDescription),this.log.error(`unable to set ${e.type}`,Object.assign(Object.assign({},this.logContext),{fields:i})),new no(r)}})}ensureVideoDDExtensionForSVC(e,t){var n;if(!e.ext?.some(e=>e.uri===Fo)){if(this.ddExtID===0){let e=0;t.media.forEach(t=>{var n;t.type===`video`&&((n=t.ext)==null||n.forEach(t=>{t.value>e&&(e=t.value)}))}),this.ddExtID=e+1}(n=e.ext)==null||n.push({value:this.ddExtID,uri:Fo})}}};function Gc(e,t,n){let r=Jc(e.mid),i=0;e.rtp.some(e=>e.codec===`opus`?(i=e.payload,!0):!1),i>0&&(e.rtcpFb||=[],n.includes(r)&&!e.rtcpFb.some(e=>e.payload===i&&e.type===`nack`)&&e.rtcpFb.push({payload:i,type:`nack`}),(t.includes(r)||t.length===1&&t[0]===`all`)&&e.fmtp.some(e=>e.payload===i?(e.config.includes(`stereo=1`)||(e.config+=`;stereo=1`),!0):!1))}function Kc(e){let t=[],n=[],r=zc.parse(e.sdp??``),i=0;return r.media.forEach(e=>{let r=Jc(e.mid);e.type===`audio`&&(e.rtp.some(e=>e.codec===`opus`?(i=e.payload,!0):!1),e.rtcpFb?.some(e=>e.payload===i&&e.type===`nack`)&&n.push(r),e.fmtp.some(e=>e.payload===i?(e.config.includes(`sprop-stereo=1`)&&t.push(r),!0):!1))}),{stereoMids:t,nackMids:n}}function qc(e){if(e.connection){let t=e.connection.ip.indexOf(`:`)>=0;(e.connection.version===4&&t||e.connection.version===6&&!t)&&(e.connection.ip=`0.0.0.0`,e.connection.version=4)}}function Jc(e){return typeof e==`number`?e.toFixed(0):e}var Yc=`vp8`,Xc={audioPreset:Ao.music,dtx:!0,red:!0,forceStereo:!1,simulcast:!0,screenShareEncoding:No.h1080fps15.encoding,stopMicTrackOnMute:!1,videoCodec:Yc,backupCodec:!0,preConnectBuffer:!1},Zc={deviceId:{ideal:`default`},autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0,voiceIsolation:!0},Qc={deviceId:{ideal:`default`},resolution:jo.h720.resolution},$c={adaptiveStream:!1,dynacast:!1,stopLocalTrackOnUnpublish:!0,reconnectPolicy:new Ci,disconnectOnPageLeave:!0,webAudioMix:!1,singlePeerConnection:!1},el={autoSubscribe:!0,maxRetries:1,peerConnectionTimeout:15e3,websocketTimeout:15e3},tl;(function(e){e[e.NEW=0]=`NEW`,e[e.CONNECTING=1]=`CONNECTING`,e[e.CONNECTED=2]=`CONNECTED`,e[e.FAILED=3]=`FAILED`,e[e.CLOSING=4]=`CLOSING`,e[e.CLOSED=5]=`CLOSED`})(tl||={});var nl=class{get needsPublisher(){return this.isPublisherConnectionRequired}get needsSubscriber(){return this.isSubscriberConnectionRequired}get currentState(){return this.state}constructor(e,t,n){this.peerConnectionTimeout=el.peerConnectionTimeout,this.log=vi,this.updateState=()=>{var e;let t=this.state,n=this.requiredTransports.map(e=>e.getConnectionState());n.every(e=>e===`connected`)?this.state=tl.CONNECTED:n.some(e=>e===`failed`)?this.state=tl.FAILED:n.some(e=>e===`connecting`)?this.state=tl.CONNECTING:n.every(e=>e===`closed`)?this.state=tl.CLOSED:n.some(e=>e===`closed`)?this.state=tl.CLOSING:n.every(e=>e===`new`)&&(this.state=tl.NEW),t!==this.state&&(this.log.debug(`pc state change: from ${tl[t]} to ${tl[this.state]}`,this.logContext),(e=this.onStateChange)==null||e.call(this,this.state,this.publisher.getConnectionState(),this.subscriber?.getConnectionState()))},this.log=yi(n.loggerName??_i.PCManager),this.loggerOptions=n,this.isPublisherConnectionRequired=t!==`subscriber-primary`,this.isSubscriberConnectionRequired=t===`subscriber-primary`,this.publisher=new Wc(e,n),t!==`publisher-only`&&(this.subscriber=new Wc(e,n),this.subscriber.onConnectionStateChange=this.updateState,this.subscriber.onIceConnectionStateChange=this.updateState,this.subscriber.onSignalingStatechange=this.updateState,this.subscriber.onIceCandidate=e=>{var t;(t=this.onIceCandidate)==null||t.call(this,e,lr.SUBSCRIBER)},this.subscriber.onDataChannel=e=>{var t;(t=this.onDataChannel)==null||t.call(this,e)},this.subscriber.onTrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)}),this.publisher.onConnectionStateChange=this.updateState,this.publisher.onIceConnectionStateChange=this.updateState,this.publisher.onSignalingStatechange=this.updateState,this.publisher.onIceCandidate=e=>{var t;(t=this.onIceCandidate)==null||t.call(this,e,lr.PUBLISHER)},this.publisher.onTrack=e=>{var t;(t=this.onTrack)==null||t.call(this,e)},this.publisher.onOffer=(e,t)=>{var n;(n=this.onPublisherOffer)==null||n.call(this,e,t)},this.state=tl.NEW,this.connectionLock=new le,this.remoteOfferLock=new le}get logContext(){var e;return Object.assign({},(e=this.loggerOptions).loggerContextCb?.call(e))}requirePublisher(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isPublisherConnectionRequired=e,this.updateState()}createAndSendPublisherOffer(e){return this.publisher.createAndSendOffer(e)}setPublisherAnswer(e,t){return this.publisher.setRemoteDescription(e,t)}removeTrack(e){return this.publisher.removeTrack(e)}close(){return k(this,void 0,void 0,function*(){if(this.publisher&&this.publisher.getSignallingState()!==`closed`){let e=this.publisher;for(let t of e.getSenders())try{e.canRemoveTrack()&&e.removeTrack(t)}catch(e){this.log.warn(`could not removeTrack`,Object.assign(Object.assign({},this.logContext),{error:e}))}}yield Promise.all([this.publisher.close(),this.subscriber?.close()]),this.updateState()})}triggerIceRestart(){return k(this,void 0,void 0,function*(){this.subscriber&&(this.subscriber.restartingIce=!0),this.needsPublisher&&(yield this.createAndSendPublisherOffer({iceRestart:!0}))})}addIceCandidate(e,t){return k(this,void 0,void 0,function*(){t===lr.PUBLISHER?yield this.publisher.addIceCandidate(e):yield this.subscriber?.addIceCandidate(e)})}createSubscriberAnswerFromOffer(e,t){return k(this,void 0,void 0,function*(){this.log.debug(`received server offer`,Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,signalingState:this.subscriber?.getSignallingState().toString()}));let n=yield this.remoteOfferLock.lock();try{return(yield this.subscriber?.setRemoteDescription(e,t))?yield this.subscriber?.createAndSetAnswer():void 0}finally{n()}})}updateConfiguration(e,t){var n;this.publisher.setConfiguration(e),(n=this.subscriber)==null||n.setConfiguration(e),t&&this.triggerIceRestart()}ensurePCTransportConnection(e,t){return k(this,void 0,void 0,function*(){let n=yield this.connectionLock.lock();try{this.isPublisherConnectionRequired&&this.publisher.getConnectionState()!==`connected`&&this.publisher.getConnectionState()!==`connecting`&&(this.log.debug(`negotiation required, start negotiating`,this.logContext),this.publisher.negotiate()),yield Promise.all(this.requiredTransports?.map(n=>this.ensureTransportConnected(n,e,t)))}finally{n()}})}negotiate(e){return k(this,void 0,void 0,function*(){return new Promise((t,n)=>k(this,void 0,void 0,function*(){let r=setTimeout(()=>{n(`negotiation timed out`)},this.peerConnectionTimeout);e.signal.addEventListener(`abort`,()=>{clearTimeout(r),n(`negotiation aborted`)}),this.publisher.once(Uc.NegotiationStarted,()=>{e.signal.aborted||this.publisher.once(Uc.NegotiationComplete,()=>{clearTimeout(r),t()})}),yield this.publisher.negotiate(e=>{clearTimeout(r),n(e)})}))})}addPublisherTransceiver(e,t){return this.publisher.addTransceiver(e,t)}addPublisherTransceiverOfKind(e,t){return this.publisher.addTransceiverOfKind(e,t)}getMidForReceiver(e){return(this.subscriber?this.subscriber.getTransceivers():this.publisher.getTransceivers()).find(t=>t.receiver===e)?.mid}addPublisherTrack(e){return this.publisher.addTrack(e)}createPublisherDataChannel(e,t){return this.publisher.createDataChannel(e,t)}getConnectedAddress(e){return e===lr.PUBLISHER||e===lr.SUBSCRIBER?this.publisher.getConnectedAddress():this.requiredTransports[0].getConnectedAddress()}get requiredTransports(){let e=[];return this.isPublisherConnectionRequired&&e.push(this.publisher),this.isSubscriberConnectionRequired&&this.subscriber&&e.push(this.subscriber),e}ensureTransportConnected(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.peerConnectionTimeout;return function*(){if(e.getConnectionState()!==`connected`)return new Promise((e,i)=>k(n,void 0,void 0,function*(){let n=()=>{this.log.warn(`abort transport connection`,this.logContext),vo.clearTimeout(a),i(new Za(`room connection has been cancelled`,Xa.Cancelled))};t?.signal.aborted&&n(),t?.signal.addEventListener(`abort`,n);let a=vo.setTimeout(()=>{t?.signal.removeEventListener(`abort`,n),i(new Za(`could not establish pc connection`,Xa.InternalError))},r);for(;this.state!==tl.CONNECTED;)if(yield Lo(50),t?.signal.aborted){i(new Za(`room connection has been cancelled`,Xa.Cancelled));return}vo.clearTimeout(a),t?.signal.removeEventListener(`abort`,n),e()}))}()})}},rl=5e3,il=3e4,al=class e{static fetchRegionSettings(t,n,r){return k(this,void 0,void 0,function*(){let i=yield e.fetchLock.lock();try{let e=yield fetch(`${ol(t)}/regions`,{headers:{authorization:`Bearer ${n}`},signal:r});if(e.ok){let t=Ls(e.headers),n=t?t*1e3:rl;return{regionSettings:yield e.json(),updatedAtInMs:Date.now(),maxAgeInMs:n}}else throw new Za(`Could not fetch region settings: ${e.statusText}`,e.status===401?Xa.NotAllowed:Xa.InternalError,e.status)}catch(e){throw e instanceof Za?e:r?.aborted?new Za(`Region fetching was aborted`,Xa.Cancelled):new Za(`Could not fetch region settings, ${e instanceof Error?`${e.name}: ${e.message}`:e}`,Xa.ServerUnreachable,500)}finally{i()}})}static scheduleRefetch(t,n,r){return k(this,void 0,void 0,function*(){let i=e.settingsTimeouts.get(t.hostname);clearTimeout(i),e.settingsTimeouts.set(t.hostname,setTimeout(()=>k(this,void 0,void 0,function*(){try{let r=yield e.fetchRegionSettings(t,n);e.updateCachedRegionSettings(t,n,r)}catch(i){if(i instanceof Za&&i.reason===Xa.NotAllowed){vi.debug(`token is not valid, cancelling auto region refresh`);return}vi.debug(`auto refetching of region settings failed`,{error:i}),e.scheduleRefetch(t,n,r)}}),r))})}static updateCachedRegionSettings(t,n,r){e.cache.set(t.hostname,r),e.scheduleRefetch(t,n,r.maxAgeInMs)}static stopRefetch(t){let n=e.settingsTimeouts.get(t);n&&(clearTimeout(n),e.settingsTimeouts.delete(t))}static scheduleCleanup(t){let n=e.connectionTrackers.get(t);n&&(n.cleanupTimeout&&clearTimeout(n.cleanupTimeout),n.cleanupTimeout=setTimeout(()=>{let n=e.connectionTrackers.get(t);n&&n.connectionCount===0&&(vi.debug(`stopping region refetch after disconnect delay`,{hostname:t}),e.stopRefetch(t)),n&&(n.cleanupTimeout=void 0)},il))}static cancelCleanup(t){let n=e.connectionTrackers.get(t);n?.cleanupTimeout&&(clearTimeout(n.cleanupTimeout),n.cleanupTimeout=void 0)}notifyConnected(){let t=this.serverUrl.hostname,n=e.connectionTrackers.get(t);n||(n={connectionCount:0},e.connectionTrackers.set(t,n)),n.connectionCount++,e.cancelCleanup(t)}notifyDisconnected(){let t=this.serverUrl.hostname,n=e.connectionTrackers.get(t);n&&(n.connectionCount=Math.max(0,n.connectionCount-1),n.connectionCount===0&&e.scheduleCleanup(t))}constructor(e,t){this.attemptedRegions=[],this.serverUrl=new URL(e),this.token=t}updateToken(e){this.token=e}isCloud(){return ts(this.serverUrl)}getServerUrl(){return this.serverUrl}fetchRegionSettings(t){return k(this,void 0,void 0,function*(){return e.fetchRegionSettings(this.serverUrl,this.token,t)})}getNextBestRegionUrl(t){return k(this,void 0,void 0,function*(){if(!this.isCloud())throw Error(`region availability is only supported for LiveKit Cloud domains`);let n=e.cache.get(this.serverUrl.hostname);(!n||Date.now()-n.updatedAtInMs>n.maxAgeInMs)&&(n=yield this.fetchRegionSettings(t),e.updateCachedRegionSettings(this.serverUrl,this.token,n));let r=n.regionSettings.regions.filter(e=>!this.attemptedRegions.find(t=>t.url===e.url));if(r.length>0){let e=r[0];return this.attemptedRegions.push(e),vi.debug(`next region: ${e.region}`),e.url}else return null})}resetAttempts(){this.attemptedRegions=[]}setServerReportedRegions(t){e.updateCachedRegionSettings(this.serverUrl,this.token,t)}};al.cache=new Map,al.settingsTimeouts=new Map,al.connectionTrackers=new Map,al.fetchLock=new le;function ol(e){return`${e.protocol.replace(`ws`,`http`)}//${e.host}/settings`}var sl=class e extends Error{constructor(t,n,r){super(n),this.code=t,this.message=ul(n,e.MAX_MESSAGE_BYTES),this.data=r?ul(r,e.MAX_DATA_BYTES):void 0}static fromProto(t){return new e(t.code,t.message,t.data)}toProto(){return new Kn({code:this.code,message:this.message,data:this.data})}static builtIn(t,n){return new e(e.ErrorCode[t],e.ErrorMessage[t],n)}};sl.MAX_MESSAGE_BYTES=256,sl.MAX_DATA_BYTES=15360,sl.ErrorCode={APPLICATION_ERROR:1500,CONNECTION_TIMEOUT:1501,RESPONSE_TIMEOUT:1502,RECIPIENT_DISCONNECTED:1503,RESPONSE_PAYLOAD_TOO_LARGE:1504,SEND_FAILED:1505,UNSUPPORTED_METHOD:1400,RECIPIENT_NOT_FOUND:1401,REQUEST_PAYLOAD_TOO_LARGE:1402,UNSUPPORTED_SERVER:1403,UNSUPPORTED_VERSION:1404},sl.ErrorMessage={APPLICATION_ERROR:`Application error in method handler`,CONNECTION_TIMEOUT:`Connection timeout`,RESPONSE_TIMEOUT:`Response timeout`,RECIPIENT_DISCONNECTED:`Recipient disconnected`,RESPONSE_PAYLOAD_TOO_LARGE:`Response payload too large`,SEND_FAILED:`Failed to send`,UNSUPPORTED_METHOD:`Method not supported at destination`,RECIPIENT_NOT_FOUND:`Recipient not found`,REQUEST_PAYLOAD_TOO_LARGE:`Request payload too large`,UNSUPPORTED_SERVER:`RPC not supported by server`,UNSUPPORTED_VERSION:`Unsupported RPC version`};var cl=15360;function ll(e){return new TextEncoder().encode(e).length}function ul(e,t){if(ll(e)<=t)return e;let n=0,r=e.length,i=new TextEncoder;for(;n<r;){let a=Math.floor((n+r+1)/2);i.encode(e.slice(0,a)).length<=t?n=a:r=a-1}return e.slice(0,n)}var dl=2e3;function fl(e,t){if(!t)return 0;let n,r;return`bytesReceived`in e?(n=e.bytesReceived,r=t.bytesReceived):`bytesSent`in e&&(n=e.bytesSent,r=t.bytesSent),n===void 0||r===void 0||e.timestamp===void 0||t.timestamp===void 0?0:(n-r)*8*1e3/(e.timestamp-t.timestamp)}var pl=typeof MediaRecorder<`u`,ml=pl?MediaRecorder:class{constructor(){throw Error(`MediaRecorder is not available in this environment`)}},hl=class extends ml{constructor(e,t){if(!pl)throw Error(`MediaRecorder is not available in this environment`);super(new MediaStream([e.mediaStreamTrack]),t);let n,r,i=()=>r===void 0,a=()=>{this.removeEventListener(`dataavailable`,n),this.removeEventListener(`stop`,a),this.removeEventListener(`error`,o),r?.close(),r=void 0},o=e=>{r?.error(e),this.removeEventListener(`dataavailable`,n),this.removeEventListener(`stop`,a),this.removeEventListener(`error`,o),r=void 0};this.byteStream=new ReadableStream({start:e=>{r=e,n=t=>k(this,void 0,void 0,function*(){let n;if(t.data.arrayBuffer){let e=yield t.data.arrayBuffer();n=new Uint8Array(e)}else if(t.data.byteArray)n=t.data.byteArray;else throw Error(`no data available!`);i()||e.enqueue(n)}),this.addEventListener(`dataavailable`,n)},cancel:()=>{a()}}),this.addEventListener(`stop`,a),this.addEventListener(`error`,o)}};function gl(){return pl}var _l=1e3,vl=1e4,yl=class extends P{get sender(){return this._sender}set sender(e){this._sender=e}get constraints(){return this._constraints}get hasPreConnectBuffer(){return!!this.localTrackRecorder}constructor(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,i=arguments.length>4?arguments[4]:void 0;super(e,t,i),this.manuallyStopped=!1,this._isUpstreamPaused=!1,this.handleTrackMuteEvent=()=>this.debouncedTrackMuteHandler().catch(()=>this.log.debug(`track mute bounce got cancelled by an unmute event`,this.logContext)),this.debouncedTrackMuteHandler=Bc(()=>k(this,void 0,void 0,function*(){yield this.pauseUpstream()}),5e3),this.handleTrackUnmuteEvent=()=>k(this,void 0,void 0,function*(){this.debouncedTrackMuteHandler.cancel(`unmute`),yield this.resumeUpstream()}),this.handleEnded=()=>{this.isInBackground&&(this.reacquireTrack=!0),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent),this.emit(N.Ended,this)},this.reacquireTrack=!1,this.providedByUser=r,this.muteLock=new le,this.pauseUpstreamLock=new le,this.trackChangeLock=new le,this.trackChangeLock.lock().then(t=>k(this,void 0,void 0,function*(){try{yield this.setMediaStreamTrack(e,!0)}finally{t()}})),this._constraints=e.getConstraints(),n&&(this._constraints=n)}get id(){return this._mediaStreamTrack.id}get dimensions(){if(this.kind!==P.Kind.Video)return;let{width:e,height:t}=this._mediaStreamTrack.getSettings();if(e&&t)return{width:e,height:t}}get isUpstreamPaused(){return this._isUpstreamPaused}get isUserProvided(){return this.providedByUser}get mediaStreamTrack(){return this.processor?.processedTrack??this._mediaStreamTrack}get isLocal(){return!0}getSourceTrackSettings(){return this._mediaStreamTrack.getSettings()}setMediaStreamTrack(e,t){return k(this,void 0,void 0,function*(){if(e===this._mediaStreamTrack&&!t)return;this._mediaStreamTrack&&(this.attachedElements.forEach(e=>{Co(this._mediaStreamTrack,e)}),this.debouncedTrackMuteHandler.cancel(`new-track`),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent)),this.mediaStream=new MediaStream([e]),e&&(e.addEventListener(`ended`,this.handleEnded),e.addEventListener(`mute`,this.handleTrackMuteEvent),e.addEventListener(`unmute`,this.handleTrackUnmuteEvent),this._constraints=e.getConstraints());let n;if(this.processor&&e){if(this.log.debug(`restarting processor`,this.logContext),this.kind===`unknown`)throw TypeError(`cannot set processor on track of unknown kind`);this.processorElement&&(So(e,this.processorElement),this.processorElement.muted=!0),yield this.processor.restart({track:e,kind:this.kind,element:this.processorElement}),n=this.processor.processedTrack}this.sender&&this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(n??e)),!this.providedByUser&&this._mediaStreamTrack!==e&&this._mediaStreamTrack.stop(),this._mediaStreamTrack=e,e&&(this._mediaStreamTrack.enabled=!this.isMuted,yield this.resumeUpstream(),this.attachedElements.forEach(t=>{So(n??e,t)}))})}waitForDimensions(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:_l;return function*(){if(e.kind===P.Kind.Audio)throw Error(`cannot get dimensions for audio tracks`);po()?.os===`iOS`&&(yield Lo(10));let n=Date.now();for(;Date.now()-n<t;){let t=e.dimensions;if(t)return t;yield Lo(50)}throw new $a(`unable to get track dimensions after timeout`)}()})}setDeviceId(e){return k(this,void 0,void 0,function*(){return this._constraints.deviceId===e&&this._mediaStreamTrack.getSettings().deviceId===ys(e)||(this._constraints.deviceId=e,this.isMuted)?!0:(yield this.restartTrack(),ys(e)===this._mediaStreamTrack.getSettings().deviceId)})}getDeviceId(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){if(e.source===P.Source.ScreenShare)return;let{deviceId:n,groupId:r}=e._mediaStreamTrack.getSettings(),i=e.kind===P.Kind.Audio?`audioinput`:`videoinput`;return t?oc.getInstance().normalizeDeviceId(i,n,r):n}()})}mute(){return k(this,void 0,void 0,function*(){return this.setTrackMuted(!0),this})}unmute(){return k(this,void 0,void 0,function*(){return this.setTrackMuted(!1),this})}replaceTrack(e,t){return k(this,void 0,void 0,function*(){let n=yield this.trackChangeLock.lock();try{if(!this.sender)throw new $a(`unable to replace an unpublished track`);let n,r;return typeof t==`boolean`?n=t:t!==void 0&&(n=t.userProvidedTrack,r=t.stopProcessor),this.providedByUser=n??!0,this.log.debug(`replace MediaStreamTrack`,this.logContext),yield this.setMediaStreamTrack(e),r&&this.processor&&(yield this.internalStopProcessor()),this}finally{n()}})}restart(e){return k(this,void 0,void 0,function*(){this.manuallyStopped=!1;let t=yield this.trackChangeLock.lock();try{e||=this._constraints;let{deviceId:t,facingMode:n}=e,r=wi(e,[`deviceId`,`facingMode`]);this.log.debug(`restarting track with constraints`,Object.assign(Object.assign({},this.logContext),{constraints:e}));let i={audio:!1,video:!1};this.kind===P.Kind.Video?i.video=t||n?{deviceId:t,facingMode:n}:!0:i.audio=t?Object.assign({deviceId:t},r):!0,this.attachedElements.forEach(e=>{Co(this.mediaStreamTrack,e)}),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.stop();let a=(yield navigator.mediaDevices.getUserMedia(i)).getTracks()[0];return this.kind===P.Kind.Video&&(yield a.applyConstraints(r)),a.addEventListener(`ended`,this.handleEnded),this.log.debug(`re-acquired MediaStreamTrack`,this.logContext),yield this.setMediaStreamTrack(a),this._constraints=e,this.emit(N.Restarted,this),this.manuallyStopped&&(this.log.warn(`track was stopped during a restart, stopping restarted track`,this.logContext),this.stop()),this}finally{t()}})}setTrackMuted(e){this.log.debug(`setting ${this.kind} track ${e?`muted`:`unmuted`}`,this.logContext),!(this.isMuted===e&&this._mediaStreamTrack.enabled!==e)&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?N.Muted:N.Unmuted,this))}get needsReAcquisition(){return this._mediaStreamTrack.readyState!==`live`||this._mediaStreamTrack.muted||!this._mediaStreamTrack.enabled||this.reacquireTrack}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),Zo()&&(this.log.debug(`visibility changed, is in Background: ${this.isInBackground}`,this.logContext),!this.isInBackground&&this.needsReAcquisition&&!this.isUserProvided&&!this.isMuted&&(this.log.debug(`track needs to be reacquired, restarting ${this.source}`,this.logContext),yield this.restart(),this.reacquireTrack=!1))})}stop(){var e;this.manuallyStopped=!0,super.stop(),this._mediaStreamTrack.removeEventListener(`ended`,this.handleEnded),this._mediaStreamTrack.removeEventListener(`mute`,this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener(`unmute`,this.handleTrackUnmuteEvent),(e=this.processor)==null||e.destroy(),this.processor=void 0}pauseUpstream(){return k(this,void 0,void 0,function*(){let e=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!0)return;if(!this.sender){this.log.warn(`unable to pause upstream for an unpublished track`,this.logContext);return}this._isUpstreamPaused=!0,this.emit(N.UpstreamPaused,this);let e=po();if(e?.name===`Safari`&&os(e.version,`12.0`)<0)throw new Qa(`pauseUpstream is not supported on Safari < 12.`);this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(null))}finally{e()}})}resumeUpstream(){return k(this,void 0,void 0,function*(){let e=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!1)return;if(!this.sender){this.log.warn(`unable to resume upstream for an unpublished track`,this.logContext);return}this._isUpstreamPaused=!1,this.emit(N.UpstreamResumed,this),this.sender.transport?.state!==`closed`&&(yield this.sender.replaceTrack(this.mediaStreamTrack))}finally{e()}})}getRTCStatsReport(){return k(this,void 0,void 0,function*(){if(this.sender?.getStats)return yield this.sender.getStats()})}setProcessor(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){let r=yield t.trackChangeLock.lock();try{t.log.debug(`setting up processor`,t.logContext);let r=document.createElement(t.kind),i={kind:t.kind,track:t._mediaStreamTrack,element:r,audioContext:t.audioContext};if(yield e.init(i),t.log.debug(`processor initialized`,t.logContext),t.processor&&(yield t.internalStopProcessor()),t.kind===`unknown`)throw TypeError(`cannot set processor on track of unknown kind`);if(So(t._mediaStreamTrack,r),r.muted=!0,r.play().catch(e=>{e instanceof DOMException&&e.name===`AbortError`?(t.log.warn(`failed to play processor element, retrying`,Object.assign(Object.assign({},t.logContext),{error:e})),setTimeout(()=>{r.play().catch(e=>{t.log.error(`failed to play processor element`,Object.assign(Object.assign({},t.logContext),{err:e}))})},100)):t.log.error(`failed to play processor element`,Object.assign(Object.assign({},t.logContext),{error:e}))}),t.processor=e,t.processorElement=r,t.processor.processedTrack){for(let e of t.attachedElements)e!==t.processorElement&&n&&(Co(t._mediaStreamTrack,e),So(t.processor.processedTrack,e));yield t.sender?.replaceTrack(t.processor.processedTrack)}t.emit(N.TrackProcessorUpdate,t.processor)}finally{r()}}()})}getProcessor(){return this.processor}stopProcessor(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){let n=yield e.trackChangeLock.lock();try{yield e.internalStopProcessor(t)}finally{n()}}()})}internalStopProcessor(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var n,r;e.processor&&(e.log.debug(`stopping processor`,e.logContext),(n=e.processor.processedTrack)==null||n.stop(),yield e.processor.destroy(),e.processor=void 0,t||((r=e.processorElement)==null||r.remove(),e.processorElement=void 0),yield e._mediaStreamTrack.applyConstraints(e._constraints),yield e.setMediaStreamTrack(e._mediaStreamTrack,!0),e.emit(N.TrackProcessorUpdate))}()})}startPreConnectBuffer(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!gl()){this.log.warn(`MediaRecorder is not available, cannot start preconnect buffer`,this.logContext);return}if(this.localTrackRecorder){this.log.warn(`preconnect buffer already started`);return}else{let e=`audio/webm;codecs=opus`;MediaRecorder.isTypeSupported(e)||(e=`video/mp4`),this.localTrackRecorder=new hl(this,{mimeType:e})}this.localTrackRecorder.start(e),this.autoStopPreConnectBuffer=setTimeout(()=>{this.log.warn(`preconnect buffer timed out, stopping recording automatically`,this.logContext),this.stopPreConnectBuffer()},vl)}stopPreConnectBuffer(){clearTimeout(this.autoStopPreConnectBuffer),this.localTrackRecorder&&=(this.localTrackRecorder.stop(),void 0)}getPreConnectBuffer(){return this.localTrackRecorder?.byteStream}getPreConnectBufferMimeType(){return this.localTrackRecorder?.mimeType}},bl=class extends yl{get enhancedNoiseCancellation(){return this.isKrispNoiseFilterEnabled}constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0;super(e,P.Kind.Audio,t,n,i),this.stopOnMute=!1,this.isKrispNoiseFilterEnabled=!1,this.monitorSender=()=>k(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let e;try{e=yield this.getSenderStats()}catch(e){this.log.error(`could not get audio sender stats`,Object.assign(Object.assign({},this.logContext),{error:e}));return}e&&this.prevStats&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.handleKrispNoiseFilterEnable=()=>{this.isKrispNoiseFilterEnabled=!0,this.log.debug(`Krisp noise filter enabled`,this.logContext),this.emit(N.AudioTrackFeatureUpdate,this,yn.TF_ENHANCED_NOISE_CANCELLATION,!0)},this.handleKrispNoiseFilterDisable=()=>{this.isKrispNoiseFilterEnabled=!1,this.log.debug(`Krisp noise filter disabled`,this.logContext),this.emit(N.AudioTrackFeatureUpdate,this,yn.TF_ENHANCED_NOISE_CANCELLATION,!1)},this.audioContext=r,this.checkForSilence()}mute(){let e=Object.create(null,{mute:{get:()=>super.mute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug(`Track already muted`,this.logContext),this):(this.source===P.Source.Microphone&&this.stopOnMute&&!this.isUserProvided&&(this.log.debug(`stopping mic track`,this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{t()}})}unmute(){let e=Object.create(null,{unmute:{get:()=>super.unmute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{if(!this.isMuted)return this.log.debug(`Track already unmuted`,this.logContext),this;let t=this._constraints.deviceId&&this._mediaStreamTrack.getSettings().deviceId!==ys(this._constraints.deviceId);return this.source===P.Source.Microphone&&(this.stopOnMute||this._mediaStreamTrack.readyState===`ended`||t)&&!this.isUserProvided&&(this.log.debug(`reacquiring mic track`,this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this}finally{t()}})}restartTrack(e){return k(this,void 0,void 0,function*(){let t;if(e){let n=Bs({audio:e});typeof n.audio!=`boolean`&&(t=n.audio)}yield this.restart(t)})}restart(e){let t=Object.create(null,{restart:{get:()=>super.restart}});return k(this,void 0,void 0,function*(){let n=yield t.restart.call(this,e);return this.checkForSilence(),n})}startMonitor(){$o()&&(this.monitorInterval||=setInterval(()=>{this.monitorSender()},dl))}setProcessor(e){return k(this,void 0,void 0,function*(){let t=yield this.trackChangeLock.lock();try{if(!es()&&!this.audioContext)throw Error(`Audio context needs to be set on LocalAudioTrack in order to enable processors`);this.processor&&(yield this.internalStopProcessor());let t={kind:this.kind,track:this._mediaStreamTrack,audioContext:this.audioContext};this.log.debug(`setting up audio processor ${e.name}`,this.logContext),yield e.init(t),this.processor=e,this.processor.processedTrack&&(yield this.sender?.replaceTrack(this.processor.processedTrack),this.processor.processedTrack.addEventListener(`enable-lk-krisp-noise-filter`,this.handleKrispNoiseFilterEnable),this.processor.processedTrack.addEventListener(`disable-lk-krisp-noise-filter`,this.handleKrispNoiseFilterDisable)),this.emit(N.TrackProcessorUpdate,this.processor)}finally{t()}})}setAudioContext(e){this.audioContext=e}getSenderStats(){return k(this,void 0,void 0,function*(){if(!this.sender?.getStats)return;let e=yield this.sender.getStats(),t;return e.forEach(e=>{e.type===`outbound-rtp`&&(t={type:`audio`,streamId:e.id,packetsSent:e.packetsSent,packetsLost:e.packetsLost,bytesSent:e.bytesSent,timestamp:e.timestamp,roundTripTime:e.roundTripTime,jitter:e.jitter})}),t})}checkForSilence(){return k(this,void 0,void 0,function*(){let e=yield Vs(this);return e&&(this.isMuted||this.log.debug(`silence detected on local audio track`,this.logContext),this.emit(N.AudioSilenceDetected)),e})}};function xl(e,t,n){switch(e.kind){case`audio`:return new bl(e,t,!1,void 0,n);case`video`:return new zl(e,t,!1,n);default:throw new $a(`unsupported track type: ${e.kind}`)}}var Sl=Object.values(jo),Cl=Object.values(Mo),wl=Object.values(No),Tl=[jo.h180,jo.h360],El=[Mo.h180,Mo.h360],Dl=e=>[{scaleResolutionDownBy:2,fps:e.encoding.maxFramerate}].map(t=>new wo(Math.floor(e.width/t.scaleResolutionDownBy),Math.floor(e.height/t.scaleResolutionDownBy),Math.max(15e4,Math.floor(e.encoding.maxBitrate/(t.scaleResolutionDownBy**2*((e.encoding.maxFramerate??30)/(t.fps??30))))),t.fps,e.encoding.priority)),Ol=[`q`,`h`,`f`];function kl(e,t,n,r){let i=r?.videoEncoding;e&&(i=r?.screenShareEncoding);let a=r?.simulcast,o=r?.scalabilityMode,s=r?.videoCodec;if(!i&&!a&&!o||!t||!n)return[{}];i||(i=jl(e,t,n,s),vi.debug(`using video encoding`,i));let c=i.maxFramerate,l=new wo(t,n,i.maxBitrate,i.maxFramerate,i.priority);if(o&&Ho(s)){let e=new Il(o),t=[];if(e.spatial>3)throw Error(`unsupported scalabilityMode: ${o}`);let n=po();if(Jo()||es()||n?.name===`Chrome`&&os(n?.version,`113`)<0){let r=e.suffix==`h`?2:3,a=Xo(n);for(let n=0;n<e.spatial;n+=1)t.push({rid:Ol[2-n],maxBitrate:i.maxBitrate/r**+n,maxFramerate:l.encoding.maxFramerate,scaleResolutionDownBy:a?2**n:void 0});t[0].scalabilityMode=o}else t.push({maxBitrate:i.maxBitrate,maxFramerate:l.encoding.maxFramerate,scalabilityMode:o});return l.encoding.priority&&(t[0].priority=l.encoding.priority,t[0].networkPriority=l.encoding.priority),vi.debug(`using svc encoding`,{encodings:t}),t}if(!a)return[i];let u=[];u=e?Fl(r?.screenShareSimulcastLayers)??Nl(e,l):Fl(r?.videoSimulcastLayers)??Nl(e,l);let d;if(u.length>0){let e=u[0];u.length>1&&([,d]=u);let r=Math.max(t,n);if(r>=960&&d)return Pl(t,n,[e,d,l],c);if(r>=480)return Pl(t,n,[e,l],c)}return Pl(t,n,[l])}function Al(e,t,n){if(!n.backupCodec||n.backupCodec===!0||n.backupCodec.codec===n.videoCodec)return;t!==n.backupCodec.codec&&vi.warn(`requested a different codec than specified as backup`,{serverRequested:t,backup:n.backupCodec.codec}),n.videoCodec=t,n.videoEncoding=n.backupCodec.encoding;let r=e.mediaStreamTrack.getSettings(),i=r.width??e.dimensions?.width,a=r.height??e.dimensions?.height;return e.source===P.Source.ScreenShare&&n.simulcast&&(n.simulcast=!1),kl(e.source===P.Source.ScreenShare,i,a,n)}function jl(e,t,n,r){let i=Ml(e,t,n),{encoding:a}=i[0],o=Math.max(t,n);for(let e=0;e<i.length;e+=1){let t=i[e];if(a=t.encoding,t.width>=o)break}if(r)switch(r){case`av1`:case`h265`:a=Object.assign({},a),a.maxBitrate*=.7;break;case`vp9`:a=Object.assign({},a),a.maxBitrate*=.85;break}return a}function Ml(e,t,n){if(e)return wl;let r=t>n?t/n:n/t;return Math.abs(r-16/9)<Math.abs(r-4/3)?Sl:Cl}function Nl(e,t){if(e)return Dl(t);let{width:n,height:r}=t,i=n>r?n/r:r/n;return Math.abs(i-16/9)<Math.abs(i-4/3)?Tl:El}function Pl(e,t,n,r){let i=[];if(n.forEach((n,a)=>{if(a>=Ol.length)return;let o=Math.min(e,t),s={rid:Ol[a],scaleResolutionDownBy:Math.max(1,o/Math.min(n.width,n.height)),maxBitrate:n.encoding.maxBitrate},c=r&&n.encoding.maxFramerate?Math.min(r,n.encoding.maxFramerate):n.encoding.maxFramerate;c&&(s.maxFramerate=c);let l=Go()||a===0;n.encoding.priority&&l&&(s.priority=n.encoding.priority,s.networkPriority=n.encoding.priority),i.push(s)}),es()&&is()===`ios`){let e;i.forEach(t=>{e?t.maxFramerate&&t.maxFramerate>e&&(e=t.maxFramerate):e=t.maxFramerate});let t=!0;i.forEach(n=>{n.maxFramerate!=e&&(t&&(t=!1,vi.info(`Simulcast on iOS React-Native requires all encodings to share the same framerate.`)),vi.info(`Setting framerate of encoding "${n.rid??``}" to ${e}`),n.maxFramerate=e)})}return i}function Fl(e){if(e)return e.sort((e,t)=>{let{encoding:n}=e,{encoding:r}=t;return n.maxBitrate>r.maxBitrate?1:n.maxBitrate<r.maxBitrate?-1:n.maxBitrate===r.maxBitrate&&n.maxFramerate&&r.maxFramerate?n.maxFramerate>r.maxFramerate?1:-1:0})}var Il=class{constructor(e){let t=e.match(/^L(\d)T(\d)(h|_KEY|_KEY_SHIFT){0,1}$/);if(!t)throw Error(`invalid scalability mode`);if(this.spatial=parseInt(t[1]),this.temporal=parseInt(t[2]),t.length>3)switch(t[3]){case`h`:case`_KEY`:case`_KEY_SHIFT`:this.suffix=t[3]}}toString(){return`L${this.spatial}T${this.temporal}${this.suffix??``}`}};function Ll(e){return e.source===P.Source.ScreenShare||e.constraints.height&&ys(e.constraints.height)>=1080?`maintain-resolution`:`balanced`}var Rl=5e3,zl=class extends yl{get sender(){return this._sender}set sender(e){this._sender=e,this.degradationPreference&&this.setDegradationPreference(this.degradationPreference)}constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0;super(e,P.Kind.Video,t,n,r),this.simulcastCodecs=new Map,this.degradationPreference=`balanced`,this.isCpuConstrained=!1,this.optimizeForPerformance=!1,this.monitorSender=()=>k(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let e;try{e=yield this.getSenderStats()}catch(e){this.log.error(`could not get video sender stats`,Object.assign(Object.assign({},this.logContext),{error:e}));return}let t=new Map(e.map(e=>[e.rid,e])),n=e.some(e=>e.qualityLimitationReason===`cpu`);if(n!==this.isCpuConstrained&&(this.isCpuConstrained=n,this.isCpuConstrained&&this.emit(N.CpuConstrained)),this.prevStats){let e=0;t.forEach((t,n)=>{let r=this.prevStats?.get(n);e+=fl(t,r)}),this._currentBitrate=e}this.prevStats=t}),this.senderLock=new le}get isSimulcast(){return!!(this.sender&&this.sender.getParameters().encodings.length>1)}startMonitor(e){if(this.signalClient=e,!$o())return;let t=this.sender?.getParameters();t&&(this.encodings=t.encodings),!this.monitorInterval&&(this.monitorInterval=setInterval(()=>{this.monitorSender()},dl))}stop(){this._mediaStreamTrack.getConstraints(),this.simulcastCodecs.forEach(e=>{e.mediaStreamTrack.stop()}),super.stop()}pauseUpstream(){let e=Object.create(null,{pauseUpstream:{get:()=>super.pauseUpstream}});return k(this,void 0,void 0,function*(){var t,n,r,i;yield e.pauseUpstream.call(this);try{for(var a=!0,o=Ei(this.simulcastCodecs.values()),s;s=yield o.next(),t=s.done,!t;a=!0)i=s.value,a=!1,yield i.sender?.replaceTrack(null)}catch(e){n={error:e}}finally{try{!a&&!t&&(r=o.return)&&(yield r.call(o))}finally{if(n)throw n.error}}})}resumeUpstream(){let e=Object.create(null,{resumeUpstream:{get:()=>super.resumeUpstream}});return k(this,void 0,void 0,function*(){var t,n,r,i;yield e.resumeUpstream.call(this);try{for(var a=!0,o=Ei(this.simulcastCodecs.values()),s;s=yield o.next(),t=s.done,!t;a=!0){i=s.value,a=!1;let e=i;yield e.sender?.replaceTrack(e.mediaStreamTrack)}}catch(e){n={error:e}}finally{try{!a&&!t&&(r=o.return)&&(yield r.call(o))}finally{if(n)throw n.error}}})}mute(){let e=Object.create(null,{mute:{get:()=>super.mute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug(`Track already muted`,this.logContext),this):(this.source===P.Source.Camera&&!this.isUserProvided&&(this.log.debug(`stopping camera track`,this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{t()}})}unmute(){let e=Object.create(null,{unmute:{get:()=>super.unmute}});return k(this,void 0,void 0,function*(){let t=yield this.muteLock.lock();try{return this.isMuted?(this.source===P.Source.Camera&&!this.isUserProvided&&(this.log.debug(`reacquiring camera track`,this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this):(this.log.debug(`Track already unmuted`,this.logContext),this)}finally{t()}})}setTrackMuted(e){super.setTrackMuted(e);for(let t of this.simulcastCodecs.values())t.mediaStreamTrack.enabled=!e}getSenderStats(){return k(this,void 0,void 0,function*(){if(!this.sender?.getStats)return[];let e=[],t=yield this.sender.getStats();return t.forEach(n=>{if(n.type===`outbound-rtp`){let r={type:`video`,streamId:n.id,frameHeight:n.frameHeight,frameWidth:n.frameWidth,framesPerSecond:n.framesPerSecond,framesSent:n.framesSent,firCount:n.firCount,pliCount:n.pliCount,nackCount:n.nackCount,packetsSent:n.packetsSent,bytesSent:n.bytesSent,qualityLimitationReason:n.qualityLimitationReason,qualityLimitationDurations:n.qualityLimitationDurations,qualityLimitationResolutionChanges:n.qualityLimitationResolutionChanges,rid:n.rid??n.id,retransmittedPacketsSent:n.retransmittedPacketsSent,targetBitrate:n.targetBitrate,timestamp:n.timestamp},i=t.get(n.remoteId);i&&(r.jitter=i.jitter,r.packetsLost=i.packetsLost,r.roundTripTime=i.roundTripTime),e.push(r)}}),e.sort((e,t)=>(t.frameWidth??0)-(e.frameWidth??0)),e})}setPublishingQuality(e){let t=[];for(let n=xo.LOW;n<=xo.HIGH;n+=1)t.push(new zr({quality:n,enabled:n<=e}));this.log.debug(`setting publishing quality. max quality ${e}`,this.logContext),this.setPublishingLayers(Ho(this.codec),t)}restartTrack(e){return k(this,void 0,void 0,function*(){var t,n,r,i;let a;if(e){let t=Bs({video:e});typeof t.video!=`boolean`&&(a=t.video)}yield this.restart(a),this.isCpuConstrained=!1;try{for(var o=!0,s=Ei(this.simulcastCodecs.values()),c;c=yield s.next(),t=c.done,!t;o=!0){i=c.value,o=!1;let e=i;e.sender&&e.sender.transport?.state!==`closed`&&(e.mediaStreamTrack=this.mediaStreamTrack.clone(),yield e.sender.replaceTrack(e.mediaStreamTrack))}}catch(e){n={error:e}}finally{try{!o&&!t&&(r=s.return)&&(yield r.call(s))}finally{if(n)throw n.error}}})}setProcessor(e){let t=Object.create(null,{setProcessor:{get:()=>super.setProcessor}});return k(this,arguments,void 0,function(e){var n=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var i,a,o,s;if(yield t.setProcessor.call(n,e,r),n.processor?.processedTrack)try{for(var c=!0,l=Ei(n.simulcastCodecs.values()),u;u=yield l.next(),i=u.done,!i;c=!0)s=u.value,c=!1,yield s.sender?.replaceTrack(n.processor.processedTrack)}catch(e){a={error:e}}finally{try{!c&&!i&&(o=l.return)&&(yield o.call(l))}finally{if(a)throw a.error}}}()})}setDegradationPreference(e){return k(this,void 0,void 0,function*(){if(this.degradationPreference=e,this.sender)try{this.log.debug(`setting degradationPreference to ${e}`,this.logContext);let t=this.sender.getParameters();t.degradationPreference=e,this.sender.setParameters(t)}catch(e){this.log.warn(`failed to set degradationPreference`,Object.assign({error:e},this.logContext))}})}addSimulcastTrack(e,t){if(this.simulcastCodecs.has(e)){this.log.error(`${e} already added, skipping adding simulcast codec`,this.logContext);return}let n={codec:e,mediaStreamTrack:this.mediaStreamTrack.clone(),sender:void 0,encodings:t};return this.simulcastCodecs.set(e,n),n}setSimulcastTrackSender(e,t){let n=this.simulcastCodecs.get(e);n&&(n.sender=t,setTimeout(()=>{this.subscribedCodecs&&this.setPublishingCodecs(this.subscribedCodecs)},Rl))}setPublishingCodecs(e){return k(this,void 0,void 0,function*(){var t,n,r,i,a,o,s;if(this.log.debug(`setting publishing codecs`,Object.assign(Object.assign({},this.logContext),{codecs:e,currentCodec:this.codec})),!this.codec&&e.length>0)return yield this.setPublishingLayers(Ho(e[0].codec),e[0].qualities),[];this.subscribedCodecs=e;let c=[];try{for(t=!0,n=Ei(e);r=yield n.next(),i=r.done,!i;t=!0){s=r.value,t=!1;let e=s;if(!this.codec||this.codec===e.codec)yield this.setPublishingLayers(Ho(e.codec),e.qualities);else{let t=this.simulcastCodecs.get(e.codec);if(this.log.debug(`try setPublishingCodec for ${e.codec}`,Object.assign(Object.assign({},this.logContext),{simulcastCodecInfo:t})),!t||!t.sender){for(let t of e.qualities)if(t.enabled){c.push(e.codec);break}}else t.encodings&&(this.log.debug(`try setPublishingLayersForSender ${e.codec}`,this.logContext),yield Bl(t.sender,t.encodings,e.qualities,this.senderLock,Ho(e.codec),this.log,this.logContext))}}}catch(e){a={error:e}}finally{try{!t&&!i&&(o=n.return)&&(yield o.call(n))}finally{if(a)throw a.error}}return c})}setPublishingLayers(e,t){return k(this,void 0,void 0,function*(){if(this.optimizeForPerformance){this.log.info(`skipping setPublishingLayers due to optimized publishing performance`,Object.assign(Object.assign({},this.logContext),{qualities:t}));return}this.log.debug(`setting publishing layers`,Object.assign(Object.assign({},this.logContext),{qualities:t})),!(!this.sender||!this.encodings)&&(yield Bl(this.sender,this.encodings,t,this.senderLock,e,this.log,this.logContext))})}prioritizePerformance(){return k(this,void 0,void 0,function*(){if(!this.sender)throw Error(`sender not found`);let e=yield this.senderLock.lock();try{this.optimizeForPerformance=!0;let e=this.sender.getParameters();e.encodings=e.encodings.map((e,t)=>Object.assign(Object.assign({},e),{active:t===0,scaleResolutionDownBy:Math.max(1,Math.ceil((this.mediaStreamTrack.getSettings().height??360)/360)),scalabilityMode:t===0&&Ho(this.codec)?`L1T3`:void 0,maxFramerate:t===0?15:0,maxBitrate:t===0?e.maxBitrate:0})),this.log.debug(`setting performance optimised encodings`,Object.assign(Object.assign({},this.logContext),{encodings:e.encodings})),this.encodings=e.encodings,yield this.sender.setParameters(e)}catch(e){this.log.error(`failed to set performance optimised encodings`,Object.assign(Object.assign({},this.logContext),{error:e})),this.optimizeForPerformance=!1}finally{e()}})}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),Zo()&&this.isInBackground&&this.source===P.Source.Camera&&(this._mediaStreamTrack.enabled=!1)})}};function Bl(e,t,n,r,i,a,o){return k(this,void 0,void 0,function*(){let s=yield r.lock();a.debug(`setPublishingLayersForSender`,Object.assign(Object.assign({},o),{sender:e,qualities:n,senderEncodings:t}));try{let r=e.getParameters(),{encodings:s}=r;if(!s)return;if(s.length!==t.length){a.warn(`cannot set publishing layers, encodings mismatch`,Object.assign(Object.assign({},o),{encodings:s,senderEncodings:t}));return}let c=!1;i&&n.some(e=>e.enabled)&&n.forEach(e=>e.enabled=!0),s.forEach((e,r)=>{let i=e.rid??``;i===``&&(i=`q`);let s=Vl(i),l=n.find(e=>e.quality===s);l&&e.active!==l.enabled&&(c=!0,e.active=l.enabled,a.debug(`setting layer ${l.quality} to ${e.active?`enabled`:`disabled`}`,o),Go()&&(l.enabled?(e.scaleResolutionDownBy=t[r].scaleResolutionDownBy,e.maxBitrate=t[r].maxBitrate,e.maxFrameRate=t[r].maxFrameRate):(e.scaleResolutionDownBy=4,e.maxBitrate=10,e.maxFrameRate=2)))}),c&&(r.encodings=s,a.debug(`setting encodings`,Object.assign(Object.assign({},o),{encodings:r.encodings})),yield e.setParameters(r))}finally{s()}})}function Vl(e){switch(e){case`f`:return xo.HIGH;case`h`:return xo.MEDIUM;case`q`:return xo.LOW;default:return xo.HIGH}}function Hl(e,t,n,r){if(!n)return[new An({quality:xo.HIGH,width:e,height:t,bitrate:0,ssrc:0})];if(r){let r=n[0].scalabilityMode,i=new Il(r),a=[],o=i.suffix==`h`?1.5:2,s=i.suffix==`h`?2:3;for(let r=0;r<i.spatial;r+=1)a.push(new An({quality:Math.min(xo.HIGH,i.spatial-1)-r,width:Math.ceil(e/o**+r),height:Math.ceil(t/o**+r),bitrate:n[0].maxBitrate?Math.ceil(n[0].maxBitrate/s**+r):0,ssrc:0}));return a}return n.map(n=>{let r=n.scaleResolutionDownBy??1;return new An({quality:Vl(n.rid??``),width:Math.ceil(e/r),height:Math.ceil(t/r),bitrate:n.maxBitrate??0,ssrc:0})})}var Ul=`_lossy`,Wl=`_reliable`,Gl=2*1e3,Kl=`leave-reconnect`,ql=3e4,Jl;(function(e){e[e.New=0]=`New`,e[e.Connected=1]=`Connected`,e[e.Disconnected=2]=`Disconnected`,e[e.Reconnecting=3]=`Reconnecting`,e[e.Closed=4]=`Closed`})(Jl||={});var Yl=class extends Ai.EventEmitter{get isClosed(){return this._isClosed}get pendingReconnect(){return!!this.reconnectTimeout}constructor(e){super(),this.options=e,this.rtcConfig={},this.peerConnectionTimeout=el.peerConnectionTimeout,this.fullReconnectOnNext=!1,this.latestRemoteOfferId=0,this.subscriberPrimary=!1,this.pcState=Jl.New,this._isClosed=!0,this.pendingTrackResolvers={},this.reconnectAttempts=0,this.reconnectStart=0,this.attemptingReconnect=!1,this.joinAttempts=0,this.maxJoinAttempts=1,this.shouldFailNext=!1,this.log=vi,this.reliableDataSequence=1,this.reliableMessageBuffer=new Tc,this.reliableReceivedState=new Ec(ql),this.midToTrackId={},this.isWaitingForNetworkReconnect=!1,this.handleDataChannel=e=>k(this,[e],void 0,function(e){var t=this;let{channel:n}=e;return function*(){if(n){if(n.label===Wl)t.reliableDCSub=n;else if(n.label===Ul)t.lossyDCSub=n;else return;t.log.debug(`on data channel ${n.id}, ${n.label}`,t.logContext),n.onmessage=t.handleDataMessage}}()}),this.handleDataMessage=e=>k(this,void 0,void 0,function*(){let t=yield this.dataProcessLock.lock();try{let t;if(e.data instanceof ArrayBuffer)t=e.data;else if(e.data instanceof Blob)t=yield e.data.arrayBuffer();else{this.log.error(`unsupported data type`,Object.assign(Object.assign({},this.logContext),{data:e.data}));return}let n=Mn.fromBinary(new Uint8Array(t));if(n.sequence>0&&n.participantSid!==``){let e=this.reliableReceivedState.get(n.participantSid);if(e&&n.sequence<=e)return;this.reliableReceivedState.set(n.participantSid,n.sequence)}if(n.value?.case===`speaker`)this.emit(M.ActiveSpeakersUpdate,n.value.value.speakers);else if(n.value?.case===`encryptedPacket`){if(!this.e2eeManager){this.log.error(`Received encrypted packet but E2EE not set up`,this.logContext);return}let e=yield this.e2eeManager?.handleEncryptedData(n.value.value.encryptedValue,n.value.value.iv,n.participantIdentity,n.value.value.keyIndex),t=new Mn({value:Fn.fromBinary(e.payload).value,participantIdentity:n.participantIdentity,participantSid:n.participantSid});t.value?.case===`user`&&Ql(t,t.value.value),this.emit(M.DataPacketReceived,t,n.value.value.encryptionType)}else n.value?.case===`user`&&Ql(n,n.value.value),this.emit(M.DataPacketReceived,n,Dn.NONE)}finally{t()}}),this.handleDataError=e=>{let t=e.currentTarget.maxRetransmits===0?`lossy`:`reliable`;if(e instanceof ErrorEvent&&e.error){let{error:n}=e.error;this.log.error(`DataChannel error on ${t}: ${e.message}`,Object.assign(Object.assign({},this.logContext),{error:n}))}else this.log.error(`Unknown DataChannel error on ${t}`,Object.assign(Object.assign({},this.logContext),{event:e}))},this.handleBufferedAmountLow=e=>{let t=e.currentTarget.maxRetransmits===0?Nn.LOSSY:Nn.RELIABLE;this.updateAndEmitDCBufferStatus(t)},this.handleDisconnect=(e,t)=>{if(this._isClosed)return;this.log.warn(`${e} disconnected`,this.logContext),this.reconnectAttempts===0&&(this.reconnectStart=Date.now());let n=e=>{this.log.warn(`could not recover connection after ${this.reconnectAttempts} attempts, ${e}ms. giving up`,this.logContext),this.emit(M.Disconnected),this.close()},r=Date.now()-this.reconnectStart,i=this.getNextRetryDelay({elapsedMs:r,retryCount:this.reconnectAttempts});if(i===null){n(r);return}e===Kl&&(i=0),this.log.debug(`reconnecting in ${i}ms`,this.logContext),this.clearReconnectTimeout(),this.token&&this.regionUrlProvider&&this.regionUrlProvider.updateToken(this.token),this.reconnectTimeout=vo.setTimeout(()=>this.attemptReconnect(t).finally(()=>this.reconnectTimeout=void 0),i)},this.waitForRestarted=()=>new Promise((e,t)=>{this.pcState===Jl.Connected&&e();let n=()=>{this.off(M.Disconnected,r),e()},r=()=>{this.off(M.Restarted,n),t()};this.once(M.Restarted,n),this.once(M.Disconnected,r)}),this.updateAndEmitDCBufferStatus=e=>{if(e===Nn.RELIABLE){let t=this.dataChannelForKind(e);t&&this.reliableMessageBuffer.alignBufferedAmount(t.bufferedAmount)}let t=this.isBufferStatusLow(e);t!==void 0&&t!==this.dcBufferStatus.get(e)&&(this.dcBufferStatus.set(e,t),this.emit(M.DCBufferStatusChanged,t,e))},this.isBufferStatusLow=e=>{let t=this.dataChannelForKind(e);if(t)return t.bufferedAmount<=t.bufferedAmountLowThreshold},this.handleBrowserOnLine=()=>k(this,void 0,void 0,function*(){this.url&&(yield fetch(xs(this.url),{method:`HEAD`}).then(e=>e.ok).catch(()=>!1))&&(this.log.info(`detected network reconnected`),(this.client.currentState===vc.RECONNECTING||this.isWaitingForNetworkReconnect&&this.client.currentState===vc.CONNECTED)&&(this.clearReconnectTimeout(),this.attemptReconnect(_n.RR_SIGNAL_DISCONNECTED),this.isWaitingForNetworkReconnect=!1))}),this.handleBrowserOffline=()=>k(this,void 0,void 0,function*(){if(this.url)try{yield Promise.race([fetch(xs(this.url),{method:`HEAD`}),Lo(4e3).then(()=>Promise.reject())])}catch{window.navigator.onLine===!1&&(this.log.info(`detected network interruption`),this.isWaitingForNetworkReconnect=!0)}}),this.log=yi(e.loggerName??_i.Engine),this.loggerOptions={loggerName:e.loggerName,loggerContextCb:()=>this.logContext},this.client=new bc(void 0,this.loggerOptions),this.client.signalLatency=this.options.expSignalLatency,this.reconnectPolicy=this.options.reconnectPolicy,this.closingLock=new le,this.dataProcessLock=new le,this.dcBufferStatus=new Map([[Nn.LOSSY,!0],[Nn.RELIABLE,!0]]),this.client.onParticipantUpdate=e=>this.emit(M.ParticipantUpdate,e),this.client.onConnectionQuality=e=>this.emit(M.ConnectionQualityUpdate,e),this.client.onRoomUpdate=e=>this.emit(M.RoomUpdate,e),this.client.onSubscriptionError=e=>this.emit(M.SubscriptionError,e),this.client.onSubscriptionPermissionUpdate=e=>this.emit(M.SubscriptionPermissionUpdate,e),this.client.onSpeakersChanged=e=>this.emit(M.SpeakersChanged,e),this.client.onStreamStateUpdate=e=>this.emit(M.StreamStateChanged,e),this.client.onRequestResponse=e=>this.emit(M.SignalRequestResponse,e)}get logContext(){return{room:this.latestJoinResponse?.room?.name,roomID:this.latestJoinResponse?.room?.sid,participant:this.latestJoinResponse?.participant?.identity,pID:this.participantSid}}join(e,t,n,r){return k(this,void 0,void 0,function*(){this.url=e,this.token=t,this.signalOpts=n,this.maxJoinAttempts=n.maxRetries;try{this.joinAttempts+=1,this.setupSignalClientCallbacks();let i=yield this.client.join(e,t,n,r);return this._isClosed=!1,this.latestJoinResponse=i,this.subscriberPrimary=i.subscriberPrimary,this.pcManager||(yield this.configure(i)),(!this.subscriberPrimary||i.fastPublish)&&this.negotiate().catch(e=>{vi.error(e,this.logContext)}),this.registerOnLineListener(),this.clientConfiguration=i.clientConfiguration,this.emit(M.SignalConnected,i),i}catch(i){if(i instanceof Za&&i.reason===Xa.ServerUnreachable&&(this.log.warn(`Couldn't connect to server, attempt ${this.joinAttempts} of ${this.maxJoinAttempts}`,this.logContext),this.joinAttempts<this.maxJoinAttempts))return this.join(e,t,n,r);throw i}})}close(){return k(this,void 0,void 0,function*(){let e=yield this.closingLock.lock();if(this.isClosed){e();return}try{this._isClosed=!0,this.joinAttempts=0,this.emit(M.Closing),this.removeAllListeners(),this.deregisterOnLineListener(),this.clearPendingReconnect(),yield this.cleanupPeerConnections(),yield this.cleanupClient()}finally{e()}})}cleanupPeerConnections(){return k(this,void 0,void 0,function*(){yield this.pcManager?.close(),this.pcManager=void 0;let e=e=>{e&&(e.close(),e.onbufferedamountlow=null,e.onclose=null,e.onclosing=null,e.onerror=null,e.onmessage=null,e.onopen=null)};e(this.lossyDC),e(this.lossyDCSub),e(this.reliableDC),e(this.reliableDCSub),this.lossyDC=void 0,this.lossyDCSub=void 0,this.reliableDC=void 0,this.reliableDCSub=void 0,this.reliableMessageBuffer=new Tc,this.reliableDataSequence=1,this.reliableReceivedState.clear()})}cleanupClient(){return k(this,void 0,void 0,function*(){yield this.client.close(),this.client.resetCallbacks()})}addTrack(e){if(this.pendingTrackResolvers[e.cid])throw new $a(`a track with the same ID has already been published`);return new Promise((t,n)=>{let r=setTimeout(()=>{delete this.pendingTrackResolvers[e.cid],n(new Za(`publication of local track timed out, no response from server`,Xa.Timeout))},1e4);this.pendingTrackResolvers[e.cid]={resolve:e=>{clearTimeout(r),t(e)},reject:()=>{clearTimeout(r),n(Error(`Cancelled publication by calling unpublish`))}},this.client.sendAddTrack(e)})}removeTrack(e){if(e.track&&this.pendingTrackResolvers[e.track.id]){let{reject:t}=this.pendingTrackResolvers[e.track.id];t&&t(),delete this.pendingTrackResolvers[e.track.id]}try{return this.pcManager.removeTrack(e),!0}catch(e){this.log.warn(`failed to remove track`,Object.assign(Object.assign({},this.logContext),{error:e}))}return!1}updateMuteStatus(e,t){this.client.sendMuteTrack(e,t)}get dataSubscriberReadyState(){return this.reliableDCSub?.readyState}getConnectedServerAddress(){return k(this,void 0,void 0,function*(){return this.pcManager?.getConnectedAddress()})}setRegionUrlProvider(e){this.regionUrlProvider=e}configure(e){return k(this,void 0,void 0,function*(){if(this.pcManager&&this.pcManager.currentState!==tl.NEW)return;this.participantSid=e.participant?.sid;let t=this.makeRTCConfiguration(e);this.pcManager=new nl(t,this.options.singlePeerConnection?`publisher-only`:e.subscriberPrimary?`subscriber-primary`:`publisher-primary`,this.loggerOptions),this.emit(M.TransportsCreated,this.pcManager.publisher,this.pcManager.subscriber),this.pcManager.onIceCandidate=(e,t)=>{this.client.sendIceCandidate(e,t)},this.pcManager.onPublisherOffer=(e,t)=>{this.client.sendOffer(e,t)},this.pcManager.onDataChannel=this.handleDataChannel,this.pcManager.onStateChange=(t,n,r)=>k(this,void 0,void 0,function*(){if(this.log.debug(`primary PC state changed ${t}`,this.logContext),[`closed`,`disconnected`,`failed`].includes(n)&&(this.publisherConnectionPromise=void 0),t===tl.CONNECTED){let t=this.pcState===Jl.New;this.pcState=Jl.Connected,t&&this.emit(M.Connected,e)}else t===tl.FAILED&&(this.pcState===Jl.Connected||this.pcState===Jl.Reconnecting)&&(this.pcState=Jl.Disconnected,this.handleDisconnect(`peerconnection failed`,r===`failed`?_n.RR_SUBSCRIBER_FAILED:_n.RR_PUBLISHER_FAILED));let i=this.client.isDisconnected||this.client.currentState===vc.RECONNECTING,a=[tl.FAILED,tl.CLOSING,tl.CLOSED].includes(t);i&&a&&!this._isClosed&&this.emit(M.Offline)}),this.pcManager.onTrack=e=>{e.streams.length!==0&&this.emit(M.MediaTrackAdded,e.track,e.streams[0],e.receiver)},Zl(e.serverInfo?.protocol)||this.createDataChannels()})}setupSignalClientCallbacks(){this.client.onAnswer=(e,t,n)=>k(this,void 0,void 0,function*(){this.pcManager&&(this.log.debug(`received server answer`,Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,midToTrackId:n})),this.midToTrackId=n,yield this.pcManager.setPublisherAnswer(e,t))}),this.client.onTrickle=(e,t)=>{this.pcManager&&(this.log.debug(`got ICE candidate from peer`,Object.assign(Object.assign({},this.logContext),{candidate:e,target:t})),this.pcManager.addIceCandidate(e,t))},this.client.onOffer=(e,t,n)=>k(this,void 0,void 0,function*(){if(this.latestRemoteOfferId=t,!this.pcManager)return;this.midToTrackId=n;let r=yield this.pcManager.createSubscriberAnswerFromOffer(e,t);r&&this.client.sendAnswer(r,t)}),this.client.onLocalTrackPublished=e=>{if(this.log.debug(`received trackPublishedResponse`,Object.assign(Object.assign({},this.logContext),{cid:e.cid,track:e.track?.sid})),!this.pendingTrackResolvers[e.cid]){this.log.error(`missing track resolver for ${e.cid}`,Object.assign(Object.assign({},this.logContext),{cid:e.cid}));return}let{resolve:t}=this.pendingTrackResolvers[e.cid];delete this.pendingTrackResolvers[e.cid],t(e.track)},this.client.onLocalTrackUnpublished=e=>{this.emit(M.LocalTrackUnpublished,e)},this.client.onLocalTrackSubscribed=e=>{this.emit(M.LocalTrackSubscribed,e)},this.client.onTokenRefresh=e=>{var t;this.token=e,(t=this.regionUrlProvider)==null||t.updateToken(e)},this.client.onRemoteMuteChanged=(e,t)=>{this.emit(M.RemoteMute,e,t)},this.client.onSubscribedQualityUpdate=e=>{this.emit(M.SubscribedQualityUpdate,e)},this.client.onRoomMoved=e=>{this.participantSid=e.participant?.sid,this.latestJoinResponse&&(this.latestJoinResponse.room=e.room),this.emit(M.RoomMoved,e)},this.client.onMediaSectionsRequirement=e=>{var t,n;let r={direction:`recvonly`};for(let n=0;n<e.numAudios;n++)(t=this.pcManager)==null||t.addPublisherTransceiverOfKind(`audio`,r);for(let t=0;t<e.numVideos;t++)(n=this.pcManager)==null||n.addPublisherTransceiverOfKind(`video`,r);this.negotiate()},this.client.onClose=()=>{this.handleDisconnect(`signal`,_n.RR_SIGNAL_DISCONNECTED)},this.client.onLeave=e=>{switch(this.log.debug(`client leave request`,Object.assign(Object.assign({},this.logContext),{reason:e?.reason})),e.regions&&this.regionUrlProvider&&(this.log.debug(`updating regions`,this.logContext),this.regionUrlProvider.setServerReportedRegions({updatedAtInMs:Date.now(),maxAgeInMs:rl,regionSettings:e.regions})),e.action){case kr.DISCONNECT:this.emit(M.Disconnected,e?.reason),this.close();break;case kr.RECONNECT:this.fullReconnectOnNext=!0,this.handleDisconnect(Kl);break;case kr.RESUME:this.handleDisconnect(Kl)}}}makeRTCConfiguration(e){let t=Object.assign({},this.rtcConfig);if(this.signalOpts?.e2eeEnabled&&(this.log.debug(`E2EE - setting up transports with insertable streams`,this.logContext),t.encodedInsertableStreams=!0),e.iceServers&&!t.iceServers){let n=[];e.iceServers.forEach(e=>{let t={urls:e.urls};e.username&&(t.username=e.username),e.credential&&(t.credential=e.credential),n.push(t)}),t.iceServers=n}return e.clientConfiguration&&e.clientConfiguration.forceRelay===hn.ENABLED&&(t.iceTransportPolicy=`relay`),t.sdpSemantics=`unified-plan`,t.continualGatheringPolicy=`gather_continually`,t}createDataChannels(){this.pcManager&&(this.lossyDC&&(this.lossyDC.onmessage=null,this.lossyDC.onerror=null),this.reliableDC&&(this.reliableDC.onmessage=null,this.reliableDC.onerror=null),this.lossyDC=this.pcManager.createPublisherDataChannel(Ul,{ordered:!1,maxRetransmits:0}),this.reliableDC=this.pcManager.createPublisherDataChannel(Wl,{ordered:!0}),this.lossyDC.onmessage=this.handleDataMessage,this.reliableDC.onmessage=this.handleDataMessage,this.lossyDC.onerror=this.handleDataError,this.reliableDC.onerror=this.handleDataError,this.lossyDC.bufferedAmountLowThreshold=65535,this.reliableDC.bufferedAmountLowThreshold=65535,this.lossyDC.onbufferedamountlow=this.handleBufferedAmountLow,this.reliableDC.onbufferedamountlow=this.handleBufferedAmountLow)}createSender(e,t,n){return k(this,void 0,void 0,function*(){if(Ro())return yield this.createTransceiverRTCRtpSender(e,t,n);if(zo())return this.log.warn(`using add-track fallback`,this.logContext),yield this.createRTCRtpSender(e.mediaStreamTrack);throw new to(`Required webRTC APIs not supported on this device`)})}createSimulcastSender(e,t,n,r){return k(this,void 0,void 0,function*(){if(Ro())return this.createSimulcastTransceiverSender(e,t,n,r);if(zo())return this.log.debug(`using add-track fallback`,this.logContext),this.createRTCRtpSender(e.mediaStreamTrack);throw new to(`Cannot stream on this device`)})}createTransceiverRTCRtpSender(e,t,n){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);let r=[];e.mediaStream&&r.push(e.mediaStream),ks(e)&&(e.codec=t.videoCodec);let i={direction:`sendonly`,streams:r};return n&&(i.sendEncodings=n),(yield this.pcManager.addPublisherTransceiver(e.mediaStreamTrack,i)).sender})}createSimulcastTransceiverSender(e,t,n,r){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);let i={direction:`sendonly`};r&&(i.sendEncodings=r);let a=yield this.pcManager.addPublisherTransceiver(t.mediaStreamTrack,i);if(n.videoCodec)return e.setSimulcastTrackSender(n.videoCodec,a.sender),a.sender})}createRTCRtpSender(e){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`publisher is closed`);return this.pcManager.addPublisherTrack(e)})}attemptReconnect(e){return k(this,void 0,void 0,function*(){if(!this._isClosed){if(this.attemptingReconnect){vi.warn(`already attempting reconnect, returning early`,this.logContext);return}(this.clientConfiguration?.resumeConnection===hn.DISABLED||(this.pcManager?.currentState??tl.NEW)===tl.NEW)&&(this.fullReconnectOnNext=!0);try{this.attemptingReconnect=!0,this.fullReconnectOnNext?yield this.restartConnection():yield this.resumeConnection(e),this.clearPendingReconnect(),this.fullReconnectOnNext=!1}catch(e){this.reconnectAttempts+=1;let t=!0;e instanceof to?(this.log.debug(`received unrecoverable error`,Object.assign(Object.assign({},this.logContext),{error:e})),t=!1):e instanceof Xl||(this.fullReconnectOnNext=!0),t?this.handleDisconnect(`reconnect`,_n.RR_UNKNOWN):(this.log.info(`could not recover connection after ${this.reconnectAttempts} attempts, ${Date.now()-this.reconnectStart}ms. giving up`,this.logContext),this.emit(M.Disconnected),yield this.close())}finally{this.attemptingReconnect=!1}}})}getNextRetryDelay(e){try{return this.reconnectPolicy.nextRetryDelayInMs(e)}catch(e){this.log.warn(`encountered error in reconnect policy`,Object.assign(Object.assign({},this.logContext),{error:e}))}return null}restartConnection(e){return k(this,void 0,void 0,function*(){var t,n;try{if(!this.url||!this.token)throw new to(`could not reconnect, url or token not saved`);this.log.info(`reconnecting, attempt: ${this.reconnectAttempts}`,this.logContext),this.emit(M.Restarting),this.client.isDisconnected||(yield this.client.sendLeave()),yield this.cleanupPeerConnections(),yield this.cleanupClient();let n;try{if(!this.signalOpts)throw this.log.warn(`attempted connection restart, without signal options present`,this.logContext),new Xl;n=yield this.join(e??this.url,this.token,this.signalOpts)}catch(e){throw e instanceof Za&&e.reason===Xa.NotAllowed?new to(`could not reconnect, token might be expired`):new Xl}if(this.shouldFailNext)throw this.shouldFailNext=!1,Error(`simulated failure`);if(this.client.setReconnected(),this.emit(M.SignalRestarted,n),yield this.waitForPCReconnected(),this.client.currentState!==vc.CONNECTED)throw new Xl(`Signal connection got severed during reconnect`);(t=this.regionUrlProvider)==null||t.resetAttempts(),this.emit(M.Restarted)}catch(e){let t=yield this.regionUrlProvider?.getNextBestRegionUrl();if(t){yield this.restartConnection(t);return}else throw(n=this.regionUrlProvider)==null||n.resetAttempts(),e}})}resumeConnection(e){return k(this,void 0,void 0,function*(){if(!this.url||!this.token)throw new to(`could not reconnect, url or token not saved`);if(!this.pcManager)throw new to(`publisher and subscriber connections unset`);this.log.info(`resuming signal connection, attempt ${this.reconnectAttempts}`,this.logContext),this.emit(M.Resuming);let t;try{this.setupSignalClientCallbacks(),t=yield this.client.reconnect(this.url,this.token,this.participantSid,e)}catch(e){let t=``;throw e instanceof Error&&(t=e.message,this.log.error(e.message,Object.assign(Object.assign({},this.logContext),{error:e}))),e instanceof Za&&e.reason===Xa.NotAllowed?new to(`could not reconnect, token might be expired`):e instanceof Za&&e.reason===Xa.LeaveRequest?e:new Xl(t)}if(this.emit(M.SignalResumed),t){let e=this.makeRTCConfiguration(t);this.pcManager.updateConfiguration(e),this.latestJoinResponse&&(this.latestJoinResponse.serverInfo=t.serverInfo)}else this.log.warn(`Did not receive reconnect response`,this.logContext);if(this.shouldFailNext)throw this.shouldFailNext=!1,Error(`simulated failure`);if(yield this.pcManager.triggerIceRestart(),yield this.waitForPCReconnected(),this.client.currentState!==vc.CONNECTED)throw new Xl(`Signal connection got severed during reconnect`);this.client.setReconnected(),this.reliableDC?.readyState===`open`&&this.reliableDC.id===null&&this.createDataChannels(),t?.lastMessageSeq&&this.resendReliableMessagesForResume(t.lastMessageSeq),this.emit(M.Resumed)})}waitForPCInitialConnection(e,t){return k(this,void 0,void 0,function*(){if(!this.pcManager)throw new to(`PC manager is closed`);yield this.pcManager.ensurePCTransportConnection(t,e)})}waitForPCReconnected(){return k(this,void 0,void 0,function*(){this.pcState=Jl.Reconnecting,this.log.debug(`waiting for peer connection to reconnect`,this.logContext);try{if(yield Lo(Gl),!this.pcManager)throw new to(`PC manager is closed`);yield this.pcManager.ensurePCTransportConnection(void 0,this.peerConnectionTimeout),this.pcState=Jl.Connected}catch(e){throw this.pcState=Jl.Disconnected,new Za(`could not establish PC connection, ${e.message}`,Xa.InternalError)}})}publishRpcResponse(e,t,n,r){return k(this,void 0,void 0,function*(){let i=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcResponse`,value:new Gn({requestId:t,value:r?{case:`error`,value:r.toProto()}:{case:`payload`,value:n??``}})}});yield this.sendDataPacket(i,Nn.RELIABLE)})}publishRpcAck(e,t){return k(this,void 0,void 0,function*(){let n=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcAck`,value:new Wn({requestId:t})}});yield this.sendDataPacket(n,Nn.RELIABLE)})}sendDataPacket(e,t){return k(this,void 0,void 0,function*(){if(yield this.ensurePublisherConnected(t),this.e2eeManager&&this.e2eeManager.isDataChannelEncryptionEnabled){let t=Ja(e);if(t){let n=yield this.e2eeManager.encryptData(t.toBinary());e.value={case:`encryptedPacket`,value:new Pn({encryptedValue:n.payload,iv:n.iv,keyIndex:n.keyIndex})}}}t===Nn.RELIABLE&&(e.sequence=this.reliableDataSequence,this.reliableDataSequence+=1);let n=e.toBinary();yield this.waitForBufferStatusLow(t);let r=this.dataChannelForKind(t);if(r){if(t===Nn.RELIABLE&&this.reliableMessageBuffer.push({data:n,sequence:e.sequence}),this.attemptingReconnect)return;r.send(n)}this.updateAndEmitDCBufferStatus(t)})}resendReliableMessagesForResume(e){return k(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(Nn.RELIABLE);let t=this.dataChannelForKind(Nn.RELIABLE);t&&(this.reliableMessageBuffer.popToSequence(e),this.reliableMessageBuffer.getAll().forEach(e=>{t.send(e.data)})),this.updateAndEmitDCBufferStatus(Nn.RELIABLE)})}waitForBufferStatusLow(e){return new Promise((t,n)=>k(this,void 0,void 0,function*(){if(this.isBufferStatusLow(e))t();else{let r=()=>n(`Engine closed`);for(this.once(M.Closing,r);!this.dcBufferStatus.get(e);)yield Lo(10);this.off(M.Closing,r),t()}}))}ensureDataTransportConnected(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.subscriberPrimary;return function*(){if(!t.pcManager)throw new to(`PC manager is closed`);let r=n?t.pcManager.subscriber:t.pcManager.publisher,i=n?`Subscriber`:`Publisher`;if(!r)throw new Za(`${i} connection not set`,Xa.InternalError);let a=!1;if(!n&&!t.dataChannelForKind(e,n)&&(t.createDataChannels(),a=!0),!a&&!n&&!t.pcManager.publisher.isICEConnected&&t.pcManager.publisher.getICEConnectionState()!==`checking`&&(a=!0),a&&t.negotiate().catch(e=>{vi.error(e,t.logContext)}),t.dataChannelForKind(e,n)?.readyState===`open`)return;let o=new Date().getTime()+t.peerConnectionTimeout;for(;new Date().getTime()<o;){if(r.isICEConnected&&t.dataChannelForKind(e,n)?.readyState===`open`)return;yield Lo(50)}throw new Za(`could not establish ${i} connection, state: ${r.getICEConnectionState()}`,Xa.InternalError)}()})}ensurePublisherConnected(e){return k(this,void 0,void 0,function*(){this.publisherConnectionPromise||=this.ensureDataTransportConnected(e,!1),yield this.publisherConnectionPromise})}verifyTransport(){return!(!this.pcManager||this.pcManager.currentState!==tl.CONNECTED||!this.client.ws||this.client.ws.readyState===WebSocket.CLOSED)}negotiate(){return k(this,void 0,void 0,function*(){return new Promise((e,t)=>k(this,void 0,void 0,function*(){if(!this.pcManager){t(new no(`PC manager is closed`));return}this.pcManager.requirePublisher(),this.pcManager.publisher.getTransceivers().length==0&&!this.lossyDC&&!this.reliableDC&&this.createDataChannels();let n=new AbortController,r=()=>{n.abort(),this.log.debug(`engine disconnected while negotiation was ongoing`,this.logContext),e()};this.isClosed&&t(`cannot negotiate on closed engine`),this.on(M.Closing,r),this.pcManager.publisher.once(Uc.RTPVideoPayloadTypes,e=>{let t=new Map;e.forEach(e=>{let n=e.codec.toLowerCase();vs(n)&&t.set(e.payload,n)}),this.emit(M.RTPVideoMapUpdate,t)});try{yield this.pcManager.negotiate(n),e()}catch(e){e instanceof no&&(this.fullReconnectOnNext=!0),this.handleDisconnect(`negotiation`,_n.RR_UNKNOWN),t(e)}finally{this.off(M.Closing,r)}}))})}dataChannelForKind(e,t){if(t){if(e===Nn.LOSSY)return this.lossyDCSub;if(e===Nn.RELIABLE)return this.reliableDCSub}else{if(e===Nn.LOSSY)return this.lossyDC;if(e===Nn.RELIABLE)return this.reliableDC}}sendSyncState(e,t){if(!this.pcManager){this.log.warn(`sync state cannot be sent without peer connection setup`,this.logContext);return}let n=this.pcManager.publisher.getLocalDescription(),r=this.pcManager.publisher.getRemoteDescription(),i=this.pcManager.subscriber?.getRemoteDescription(),a=this.pcManager.subscriber?.getLocalDescription(),o=this.signalOpts?.autoSubscribe??!0,s=[],c=[];e.forEach(e=>{e.isDesired!==o&&s.push(e.trackSid),e.isEnabled||c.push(e.trackSid)}),this.client.sendSyncState(new qr({answer:this.options.singlePeerConnection?r?Sc({sdp:r.sdp,type:r.type}):void 0:a?Sc({sdp:a.sdp,type:a.type}):void 0,offer:this.options.singlePeerConnection?n?Sc({sdp:n.sdp,type:n.type}):void 0:i?Sc({sdp:i.sdp,type:i.type}):void 0,subscription:new wr({trackSids:s,subscribe:!o,participantTracks:[]}),publishTracks:qs(t),dataChannels:this.dataChannelsInfo(),trackSidsDisabled:c,datachannelReceiveStates:this.reliableReceivedState.map((e,t)=>new Jr({publisherSid:t,lastSeq:e}))}))}failNext(){this.shouldFailNext=!0}dataChannelsInfo(){let e=[],t=(t,n)=>{t?.id!==void 0&&t.id!==null&&e.push(new Yr({label:t.label,id:t.id,target:n}))};return t(this.dataChannelForKind(Nn.LOSSY),lr.PUBLISHER),t(this.dataChannelForKind(Nn.RELIABLE),lr.PUBLISHER),t(this.dataChannelForKind(Nn.LOSSY,!0),lr.SUBSCRIBER),t(this.dataChannelForKind(Nn.RELIABLE,!0),lr.SUBSCRIBER),e}clearReconnectTimeout(){this.reconnectTimeout&&vo.clearTimeout(this.reconnectTimeout)}clearPendingReconnect(){this.clearReconnectTimeout(),this.reconnectAttempts=0}registerOnLineListener(){$o()&&(window.addEventListener(`online`,this.handleBrowserOnLine),window.addEventListener(`offline`,this.handleBrowserOffline))}deregisterOnLineListener(){$o()&&(window.removeEventListener(`online`,this.handleBrowserOnLine),window.removeEventListener(`offline`,this.handleBrowserOffline))}getTrackIdForReceiver(e){let t=this.pcManager?.getMidForReceiver(e);if(t){let e=Object.entries(this.midToTrackId).find(e=>{let[n]=e;return n===t});if(e)return e[1]}}},Xl=class extends Error{};function Zl(e){return e!==void 0&&e>13}function Ql(e,t){let n=e.participantIdentity?e.participantIdentity:t.participantIdentity;e.participantIdentity=n,t.participantIdentity=n;let r=e.destinationIdentities.length===0?t.destinationIdentities:e.destinationIdentities;e.destinationIdentities=r,t.destinationIdentities=r}var $l=class{get info(){return this._info}validateBytesReceived(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(!(typeof this.totalByteSize!=`number`||this.totalByteSize===0)){if(e&&this.bytesReceived<this.totalByteSize)throw new oo(`Not enough chunk(s) received - expected ${this.totalByteSize} bytes of data total, only received ${this.bytesReceived} bytes`,ao.Incomplete);if(this.bytesReceived>this.totalByteSize)throw new oo(`Extra chunk(s) received - expected ${this.totalByteSize} bytes of data total, received ${this.bytesReceived} bytes`,ao.LengthExceeded)}}constructor(e,t,n,r){this.reader=t,this.totalByteSize=n,this._info=e,this.bytesReceived=0,this.outOfBandFailureRejectingFuture=r}},eu=class extends $l{handleChunkReceived(e){var t;this.bytesReceived+=e.content.byteLength,this.validateBytesReceived();let n=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(t=this.onProgress)==null||t.call(this,n)}[Symbol.asyncIterator](){let e=this.reader.getReader(),t=new _s,n=null,r=null;if(this.signal){let e=this.signal;r=()=>{var n;(n=t.reject)==null||n.call(t,e.reason)},e.addEventListener(`abort`,r),n=e}let i=()=>{e.releaseLock(),n&&r&&n.removeEventListener(`abort`,r),this.signal=void 0};return{next:()=>k(this,void 0,void 0,function*(){try{let{done:n,value:r}=yield Promise.race([e.read(),t.promise,this.outOfBandFailureRejectingFuture?.promise??new Promise(()=>{})]);return n?(this.validateBytesReceived(!0),{done:!0,value:void 0}):(this.handleChunkReceived(r),{done:!1,value:r.content})}catch(e){throw i(),e}}),return(){return k(this,void 0,void 0,function*(){return i(),{done:!0,value:void 0}})}}}withAbortSignal(e){return this.signal=e,this}readAll(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function*(){var n,r,i,a;let o=new Set,s=t.signal?e.withAbortSignal(t.signal):e;try{for(var c=!0,l=Ei(s),u;u=yield l.next(),n=u.done,!n;c=!0){a=u.value,c=!1;let e=a;o.add(e)}}catch(e){r={error:e}}finally{try{!c&&!n&&(i=l.return)&&(yield i.call(l))}finally{if(r)throw r.error}}return Array.from(o)}()})}},tu=class extends $l{constructor(e,t,n,r){super(e,t,n,r),this.receivedChunks=new Map}handleChunkReceived(e){var t;let n=Ts(e.chunkIndex),r=this.receivedChunks.get(n);if(r&&r.version>e.version)return;this.receivedChunks.set(n,e),this.bytesReceived+=e.content.byteLength,this.validateBytesReceived();let i=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(t=this.onProgress)==null||t.call(this,i)}[Symbol.asyncIterator](){let e=this.reader.getReader(),t=new TextDecoder(`utf-8`,{fatal:!0}),n=new _s,r=null,i=null;if(this.signal){let e=this.signal;i=()=>{var t;(t=n.reject)==null||t.call(n,e.reason)},e.addEventListener(`abort`,i),r=e}let a=()=>{e.releaseLock(),r&&i&&r.removeEventListener(`abort`,i),this.signal=void 0};return{next:()=>k(this,void 0,void 0,function*(){try{let{done:r,value:i}=yield Promise.race([e.read(),n.promise,this.outOfBandFailureRejectingFuture?.promise??new Promise(()=>{})]);if(r)return this.validateBytesReceived(!0),{done:!0,value:void 0};{this.handleChunkReceived(i);let e;try{e=t.decode(i.content)}catch(e){throw new oo(`Cannot decode datastream chunk ${i.chunkIndex} as text: ${e}`,ao.DecodeFailed)}return{done:!1,value:e}}}catch(e){throw a(),e}}),return(){return k(this,void 0,void 0,function*(){return a(),{done:!0,value:void 0}})}}}withAbortSignal(e){return this.signal=e,this}readAll(){return k(this,arguments,void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return function*(){var n,r,i,a;let o=``,s=t.signal?e.withAbortSignal(t.signal):e;try{for(var c=!0,l=Ei(s),u;u=yield l.next(),n=u.done,!n;c=!0)a=u.value,c=!1,o+=a}catch(e){r={error:e}}finally{try{!c&&!n&&(i=l.return)&&(yield i.call(l))}finally{if(r)throw r.error}}return o}()})}},nu=class{constructor(){this.log=vi,this.byteStreamControllers=new Map,this.textStreamControllers=new Map,this.byteStreamHandlers=new Map,this.textStreamHandlers=new Map}registerTextStreamHandler(e,t){if(this.textStreamHandlers.has(e))throw new oo(`A text stream handler for topic "${e}" has already been set.`,ao.HandlerAlreadyRegistered);this.textStreamHandlers.set(e,t)}unregisterTextStreamHandler(e){this.textStreamHandlers.delete(e)}registerByteStreamHandler(e,t){if(this.byteStreamHandlers.has(e))throw new oo(`A byte stream handler for topic "${e}" has already been set.`,ao.HandlerAlreadyRegistered);this.byteStreamHandlers.set(e,t)}unregisterByteStreamHandler(e){this.byteStreamHandlers.delete(e)}clearControllers(){this.byteStreamControllers.clear(),this.textStreamControllers.clear()}validateParticipantHasNoActiveDataStreams(e){var t,n,r,i;let a=Array.from(this.textStreamControllers.entries()).filter(t=>t[1].sendingParticipantIdentity===e),o=Array.from(this.byteStreamControllers.entries()).filter(t=>t[1].sendingParticipantIdentity===e);if(a.length>0||o.length>0){let s=new oo(`Participant ${e} unexpectedly disconnected in the middle of sending data`,ao.AbnormalEnd);for(let[e,r]of o)(n=(t=r.outOfBandFailureRejectingFuture).reject)==null||n.call(t,s),this.byteStreamControllers.delete(e);for(let[e,t]of a)(i=(r=t.outOfBandFailureRejectingFuture).reject)==null||i.call(r,s),this.textStreamControllers.delete(e)}}handleDataStreamPacket(e,t){return k(this,void 0,void 0,function*(){switch(e.value.case){case`streamHeader`:return this.handleStreamHeader(e.value.value,e.participantIdentity,t);case`streamChunk`:return this.handleStreamChunk(e.value.value,t);case`streamTrailer`:return this.handleStreamTrailer(e.value.value,t);default:throw Error(`DataPacket of value "${e.value.case}" is not data stream related!`)}})}handleStreamHeader(e,t,n){return k(this,void 0,void 0,function*(){if(e.contentHeader.case===`byteHeader`){let r=this.byteStreamHandlers.get(e.topic);if(!r){this.log.debug(`ignoring incoming byte stream due to no handler for topic`,e.topic);return}let i,a=new _s;a.promise.catch(e=>{this.log.error(e)});let o={id:e.streamId,name:e.contentHeader.value.name??`unknown`,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Ts(e.timestamp),attributes:e.attributes,encryptionType:n};r(new eu(o,new ReadableStream({start:n=>{if(i=n,this.textStreamControllers.has(e.streamId))throw new oo(`A data stream read is already in progress for a stream with id ${e.streamId}.`,ao.AlreadyOpened);this.byteStreamControllers.set(e.streamId,{info:o,controller:i,startTime:Date.now(),sendingParticipantIdentity:t,outOfBandFailureRejectingFuture:a})}}),Ts(e.totalLength),a),{identity:t})}else if(e.contentHeader.case===`textHeader`){let r=this.textStreamHandlers.get(e.topic);if(!r){this.log.debug(`ignoring incoming text stream due to no handler for topic`,e.topic);return}let i,a=new _s;a.promise.catch(e=>{this.log.error(e)});let o={id:e.streamId,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Number(e.timestamp),attributes:e.attributes,encryptionType:n};r(new tu(o,new ReadableStream({start:n=>{if(i=n,this.textStreamControllers.has(e.streamId))throw new oo(`A data stream read is already in progress for a stream with id ${e.streamId}.`,ao.AlreadyOpened);this.textStreamControllers.set(e.streamId,{info:o,controller:i,startTime:Date.now(),sendingParticipantIdentity:t,outOfBandFailureRejectingFuture:a})}}),Ts(e.totalLength),a),{identity:t})}})}handleStreamChunk(e,t){let n=this.byteStreamControllers.get(e.streamId);n&&(n.info.encryptionType===t?e.content.length>0&&n.controller.enqueue(e):(n.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${n.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.byteStreamControllers.delete(e.streamId)));let r=this.textStreamControllers.get(e.streamId);r&&(r.info.encryptionType===t?e.content.length>0&&r.controller.enqueue(e):(r.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${r.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.textStreamControllers.delete(e.streamId)))}handleStreamTrailer(e,t){let n=this.textStreamControllers.get(e.streamId);n&&(n.info.encryptionType===t?(n.info.attributes=Object.assign(Object.assign({},n.info.attributes),e.attributes),n.controller.close(),this.textStreamControllers.delete(e.streamId)):n.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${n.info.encryptionType}`,ao.EncryptionTypeMismatch)));let r=this.byteStreamControllers.get(e.streamId);r&&(r.info.encryptionType===t?(r.info.attributes=Object.assign(Object.assign({},r.info.attributes),e.attributes),r.controller.close()):r.controller.error(new oo(`Encryption type mismatch for stream ${e.streamId}. Expected ${t}, got ${r.info.encryptionType}`,ao.EncryptionTypeMismatch)),this.byteStreamControllers.delete(e.streamId))}},ru=class{constructor(e,t,n){this.writableStream=e,this.defaultWriter=e.getWriter(),this.onClose=n,this.info=t}write(e){return this.defaultWriter.write(e)}close(){return k(this,void 0,void 0,function*(){var e;yield this.defaultWriter.close(),this.defaultWriter.releaseLock(),(e=this.onClose)==null||e.call(this)})}},iu=class extends ru{},au=class extends ru{},ou=15e3,su=class{constructor(e,t){this.engine=e,this.log=t}setupEngine(e){this.engine=e}sendText(e,t){return k(this,void 0,void 0,function*(){let n=crypto.randomUUID(),r=new TextEncoder().encode(e).byteLength,i=(t?.attachments)?.map(()=>crypto.randomUUID()),a=Array(i?i.length+1:1).fill(0),o=(e,n)=>{var r;a[n]=e;let i=a.reduce((e,t)=>e+t,0);(r=t?.onProgress)==null||r.call(t,i)},s=yield this.streamText({streamId:n,totalSize:r,destinationIdentities:t?.destinationIdentities,topic:t?.topic,attachedStreamIds:i,attributes:t?.attributes});return yield s.write(e),o(1,0),yield s.close(),t?.attachments&&i&&(yield Promise.all(t.attachments.map((e,n)=>k(this,void 0,void 0,function*(){return this._sendFile(i[n],e,{topic:t.topic,mimeType:e.type,onProgress:e=>{o(e,n+1)}})})))),s.info})}streamText(e){return k(this,void 0,void 0,function*(){let t=e?.streamId??crypto.randomUUID(),n={id:t,mimeType:`text/plain`,timestamp:Date.now(),topic:e?.topic??``,size:e?.totalSize,attributes:e?.attributes,encryptionType:this.engine.e2eeManager?.isDataChannelEncryptionEnabled?Dn.GCM:Dn.NONE},r=new ar({streamId:t,mimeType:n.mimeType,topic:n.topic,timestamp:Es(n.timestamp),totalLength:Es(e?.totalSize),attributes:n.attributes,contentHeader:{case:`textHeader`,value:new rr({version:e?.version,attachedStreamIds:e?.attachedStreamIds,replyToStreamId:e?.replyToStreamId,operationType:e?.type===`update`?nr.UPDATE:nr.CREATE})}}),i=e?.destinationIdentities,a=new Mn({destinationIdentities:i,value:{case:`streamHeader`,value:r}});yield this.engine.sendDataPacket(a,Nn.RELIABLE);let o=0,s=this.engine,c=new WritableStream({write(e){return k(this,void 0,void 0,function*(){for(let n of Is(e,ou)){let e=new Mn({destinationIdentities:i,value:{case:`streamChunk`,value:new or({content:n,streamId:t,chunkIndex:Es(o)})}});yield s.sendDataPacket(e,Nn.RELIABLE),o+=1}})},close(){return k(this,void 0,void 0,function*(){let e=new Mn({destinationIdentities:i,value:{case:`streamTrailer`,value:new sr({streamId:t})}});yield s.sendDataPacket(e,Nn.RELIABLE)})},abort(e){console.log(`Sink error:`,e)}}),l=()=>k(this,void 0,void 0,function*(){yield u.close()});s.once(M.Closing,l);let u=new iu(c,n,()=>this.engine.off(M.Closing,l));return u})}sendFile(e,t){return k(this,void 0,void 0,function*(){let n=crypto.randomUUID();return yield this._sendFile(n,e,t),{id:n}})}_sendFile(e,t,n){return k(this,void 0,void 0,function*(){let r=yield this.streamBytes({streamId:e,totalSize:t.size,name:t.name,mimeType:n?.mimeType??t.type,topic:n?.topic,destinationIdentities:n?.destinationIdentities}),i=t.stream().getReader();for(;;){let{done:e,value:t}=yield i.read();if(e)break;yield r.write(t)}return yield r.close(),r.info})}streamBytes(e){return k(this,void 0,void 0,function*(){let t=e?.streamId??crypto.randomUUID(),n=e?.destinationIdentities,r={id:t,mimeType:e?.mimeType??`application/octet-stream`,topic:e?.topic??``,timestamp:Date.now(),attributes:e?.attributes,size:e?.totalSize,name:e?.name??`unknown`,encryptionType:this.engine.e2eeManager?.isDataChannelEncryptionEnabled?Dn.GCM:Dn.NONE},i=new Mn({destinationIdentities:n,value:{case:`streamHeader`,value:new ar({totalLength:Es(r.size??0),mimeType:r.mimeType,streamId:t,topic:r.topic,timestamp:Es(Date.now()),attributes:r.attributes,contentHeader:{case:`byteHeader`,value:new ir({name:r.name})}})}});yield this.engine.sendDataPacket(i,Nn.RELIABLE);let a=0,o=new le,s=this.engine,c=this.log;return new au(new WritableStream({write(e){return k(this,void 0,void 0,function*(){let r=yield o.lock(),i=0;try{for(;i<e.byteLength;){let r=e.slice(i,i+ou),o=new Mn({destinationIdentities:n,value:{case:`streamChunk`,value:new or({content:r,streamId:t,chunkIndex:Es(a)})}});yield s.sendDataPacket(o,Nn.RELIABLE),a+=1,i+=r.byteLength}}finally{r()}})},close(){return k(this,void 0,void 0,function*(){let e=new Mn({destinationIdentities:n,value:{case:`streamTrailer`,value:new sr({streamId:t})}});yield s.sendDataPacket(e,Nn.RELIABLE)})},abort(e){c.error(`Sink error:`,e)}}),r)})}},cu=class extends P{constructor(e,t,n,r,i){super(e,n,i),this.sid=t,this.receiver=r}get isLocal(){return!1}setMuted(e){this.isMuted!==e&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?N.Muted:N.Unmuted,this))}setMediaStream(e){this.mediaStream=e;let t=n=>{n.track===this._mediaStreamTrack&&(e.removeEventListener(`removetrack`,t),this.receiver&&`playoutDelayHint`in this.receiver&&(this.receiver.playoutDelayHint=void 0),this.receiver=void 0,this._currentBitrate=0,this.emit(N.Ended,this))};e.addEventListener(`removetrack`,t)}start(){this.startMonitor(),super.enable()}stop(){this.stopMonitor(),super.disable()}getRTCStatsReport(){return k(this,void 0,void 0,function*(){if(this.receiver?.getStats)return yield this.receiver.getStats()})}setPlayoutDelay(e){this.receiver?`playoutDelayHint`in this.receiver?this.receiver.playoutDelayHint=e:this.log.warn(`Playout delay not supported in this browser`):this.log.warn(`Cannot set playout delay, track already ended`)}getPlayoutDelay(){if(this.receiver){if(`playoutDelayHint`in this.receiver)return this.receiver.playoutDelayHint;this.log.warn(`Playout delay not supported in this browser`)}else this.log.warn(`Cannot get playout delay, track already ended`);return 0}startMonitor(){this.monitorInterval||=setInterval(()=>this.monitorReceiver(),dl),Ys()&&this.registerTimeSyncUpdate()}registerTimeSyncUpdate(){let e=()=>{this.timeSyncHandle=requestAnimationFrame(()=>e());let t=this.receiver?.getSynchronizationSources()[0];if(t){let{timestamp:e,rtpTimestamp:n}=t;n&&this.rtpTimestamp!==n&&(this.emit(N.TimeSyncUpdate,{timestamp:e,rtpTimestamp:n}),this.rtpTimestamp=n)}};e()}},lu=class extends cu{constructor(e,t,n,r,i,a){super(e,t,P.Kind.Audio,n,a),this.monitorReceiver=()=>k(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}let e=yield this.getReceiverStats();e&&this.prevStats&&this.receiver&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.audioContext=r,this.webAudioPluginNodes=[],i&&(this.sinkId=i.deviceId)}setVolume(e){var t;for(let n of this.attachedElements)this.audioContext?(t=this.gainNode)==null||t.gain.setTargetAtTime(e,0,.1):n.volume=e;es()&&this._mediaStreamTrack._setVolume(e),this.elementVolume=e}getVolume(){if(this.elementVolume)return this.elementVolume;if(es())return 1;let e=0;return this.attachedElements.forEach(t=>{t.volume>e&&(e=t.volume)}),e}setSinkId(e){return k(this,void 0,void 0,function*(){this.sinkId=e,yield Promise.all(this.attachedElements.map(t=>{if(Uo(t))return t.setSinkId(e)}))})}attach(e){let t=this.attachedElements.length===0;return e?super.attach(e):e=super.attach(),this.sinkId&&Uo(e)&&e.setSinkId(this.sinkId).catch(e=>{this.log.error(`Failed to set sink id on remote audio track`,e,this.logContext)}),this.audioContext&&t&&(this.log.debug(`using audio context mapping`,this.logContext),this.connectWebAudio(this.audioContext,e),e.volume=0,e.muted=!0),this.elementVolume&&this.setVolume(this.elementVolume),e}detach(e){let t;return e?(t=super.detach(e),this.audioContext&&(this.attachedElements.length>0?this.connectWebAudio(this.audioContext,this.attachedElements[0]):this.disconnectWebAudio())):(t=super.detach(),this.disconnectWebAudio()),t}setAudioContext(e){this.audioContext=e,e&&this.attachedElements.length>0?this.connectWebAudio(e,this.attachedElements[0]):e||this.disconnectWebAudio()}setWebAudioPlugins(e){this.webAudioPluginNodes=e,this.attachedElements.length>0&&this.audioContext&&this.connectWebAudio(this.audioContext,this.attachedElements[0])}connectWebAudio(e,t){this.disconnectWebAudio(),this.sourceNode=e.createMediaStreamSource(t.srcObject);let n=this.sourceNode;this.webAudioPluginNodes.forEach(e=>{n.connect(e),n=e}),this.gainNode=e.createGain(),n.connect(this.gainNode),this.gainNode.connect(e.destination),this.elementVolume&&this.gainNode.gain.setTargetAtTime(this.elementVolume,0,.1),e.state!==`running`&&e.resume().then(()=>{e.state!==`running`&&this.emit(N.AudioPlaybackFailed,Error(`Audio Context couldn't be started automatically`))}).catch(e=>{this.emit(N.AudioPlaybackFailed,e)})}disconnectWebAudio(){var e,t;(e=this.gainNode)==null||e.disconnect(),(t=this.sourceNode)==null||t.disconnect(),this.gainNode=void 0,this.sourceNode=void 0}getReceiverStats(){return k(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;let e=yield this.receiver.getStats(),t;return e.forEach(e=>{e.type===`inbound-rtp`&&(t={type:`audio`,streamId:e.id,timestamp:e.timestamp,jitter:e.jitter,bytesReceived:e.bytesReceived,concealedSamples:e.concealedSamples,concealmentEvents:e.concealmentEvents,silentConcealedSamples:e.silentConcealedSamples,silentConcealmentEvents:e.silentConcealmentEvents,totalAudioEnergy:e.totalAudioEnergy,totalSamplesDuration:e.totalSamplesDuration})}),t})}},uu=100,du=class extends cu{constructor(e,t,n,r,i){super(e,t,P.Kind.Video,n,i),this.elementInfos=[],this.monitorReceiver=()=>k(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}let e=yield this.getReceiverStats();e&&this.prevStats&&this.receiver&&(this._currentBitrate=fl(e,this.prevStats)),this.prevStats=e}),this.debouncedHandleResize=Bc(()=>{this.updateDimensions()},uu),this.adaptiveStreamSettings=r}get isAdaptiveStream(){return this.adaptiveStreamSettings!==void 0}setStreamState(e){super.setStreamState(e),this.log.debug(`setStreamState`,e),this.isAdaptiveStream&&e===P.StreamState.Active&&this.updateVisibility()}get mediaStreamTrack(){return this._mediaStreamTrack}setMuted(e){super.setMuted(e),this.attachedElements.forEach(t=>{e?Co(this._mediaStreamTrack,t):So(this._mediaStreamTrack,t)})}attach(e){if(e?super.attach(e):e=super.attach(),this.adaptiveStreamSettings&&this.elementInfos.find(t=>t.element===e)===void 0){let t=new fu(e);this.observeElementInfo(t)}return e}observeElementInfo(e){this.adaptiveStreamSettings&&this.elementInfos.find(t=>t===e)===void 0?(e.handleResize=()=>{this.debouncedHandleResize()},e.handleVisibilityChanged=()=>{this.updateVisibility()},this.elementInfos.push(e),e.observe(),this.debouncedHandleResize(),this.updateVisibility()):this.log.warn(`visibility resize observer not triggered`,this.logContext)}stopObservingElementInfo(e){if(!this.isAdaptiveStream){this.log.warn(`stopObservingElementInfo ignored`,this.logContext);return}let t=this.elementInfos.filter(t=>t===e);for(let e of t)e.stopObserving();this.elementInfos=this.elementInfos.filter(t=>t!==e),this.updateVisibility(),this.debouncedHandleResize()}detach(e){let t=[];if(e)return this.stopObservingElement(e),super.detach(e);t=super.detach();for(let e of t)this.stopObservingElement(e);return t}getDecoderImplementation(){return this.prevStats?.decoderImplementation}getReceiverStats(){return k(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;let e=yield this.receiver.getStats(),t,n=``,r=new Map;return e.forEach(e=>{e.type===`inbound-rtp`?(n=e.codecId,t={type:`video`,streamId:e.id,framesDecoded:e.framesDecoded,framesDropped:e.framesDropped,framesReceived:e.framesReceived,packetsReceived:e.packetsReceived,packetsLost:e.packetsLost,frameWidth:e.frameWidth,frameHeight:e.frameHeight,pliCount:e.pliCount,firCount:e.firCount,nackCount:e.nackCount,jitter:e.jitter,timestamp:e.timestamp,bytesReceived:e.bytesReceived,decoderImplementation:e.decoderImplementation}):e.type===`codec`&&r.set(e.id,e)}),t&&n!==``&&r.get(n)&&(t.mimeType=r.get(n).mimeType),t})}stopObservingElement(e){let t=this.elementInfos.filter(t=>t.element===e);for(let e of t)this.stopObservingElementInfo(e)}handleAppVisibilityChanged(){let e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return k(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),this.isAdaptiveStream&&this.updateVisibility()})}updateVisibility(e){let t=this.elementInfos.reduce((e,t)=>Math.max(e,t.visibilityChangedAt||0),0),n=this.adaptiveStreamSettings?.pauseVideoInBackground??!0?this.isInBackground:!1,r=this.elementInfos.some(e=>e.pictureInPicture),i=this.elementInfos.some(e=>e.visible)&&!n||r;if(!(this.lastVisible===i&&!e)){if(!i&&Date.now()-t<uu){vo.setTimeout(()=>{this.updateVisibility()},uu);return}this.lastVisible=i,this.emit(N.VisibilityChanged,i,this)}}updateDimensions(){let e=0,t=0,n=this.getPixelDensity();for(let r of this.elementInfos){let i=r.width()*n,a=r.height()*n;i+a>e+t&&(e=i,t=a)}this.lastDimensions?.width===e&&this.lastDimensions?.height===t||(this.lastDimensions={width:e,height:t},this.emit(N.VideoDimensionsChanged,this.lastDimensions,this))}getPixelDensity(){let e=this.adaptiveStreamSettings?.pixelDensity;return e===`screen`?as():e||(as()>2?2:1)}},fu=class{get visible(){return this.isPiP||this.isIntersecting}get pictureInPicture(){return this.isPiP}constructor(e,t){this.onVisibilityChanged=e=>{var t;let{target:n,isIntersecting:r}=e;n===this.element&&(this.isIntersecting=r,this.isPiP=pu(this.element),this.visibilityChangedAt=Date.now(),(t=this.handleVisibilityChanged)==null||t.call(this))},this.onEnterPiP=()=>{var e,t;(e=window.documentPictureInPicture?.window)==null||e.addEventListener(`pagehide`,this.onLeavePiP),this.isPiP=pu(this.element),(t=this.handleVisibilityChanged)==null||t.call(this)},this.onLeavePiP=()=>{var e;this.isPiP=pu(this.element),(e=this.handleVisibilityChanged)==null||e.call(this)},this.element=e,this.isIntersecting=t??mu(e),this.isPiP=$o()&&pu(e),this.visibilityChangedAt=0}width(){return this.element.clientWidth}height(){return this.element.clientHeight}observe(){var e,t;this.isIntersecting=mu(this.element),this.isPiP=pu(this.element),this.element.handleResize=()=>{var e;(e=this.handleResize)==null||e.call(this)},this.element.handleVisibilityChanged=this.onVisibilityChanged,fs().observe(this.element),us().observe(this.element),this.element.addEventListener(`enterpictureinpicture`,this.onEnterPiP),this.element.addEventListener(`leavepictureinpicture`,this.onLeavePiP),(e=window.documentPictureInPicture)==null||e.addEventListener(`enter`,this.onEnterPiP),(t=window.documentPictureInPicture?.window)==null||t.addEventListener(`pagehide`,this.onLeavePiP)}stopObserving(){var e,t,n,r;(e=fs())==null||e.unobserve(this.element),(t=us())==null||t.unobserve(this.element),this.element.removeEventListener(`enterpictureinpicture`,this.onEnterPiP),this.element.removeEventListener(`leavepictureinpicture`,this.onLeavePiP),(n=window.documentPictureInPicture)==null||n.removeEventListener(`enter`,this.onEnterPiP),(r=window.documentPictureInPicture?.window)==null||r.removeEventListener(`pagehide`,this.onLeavePiP)}};function pu(e){return document.pictureInPictureElement===e?!0:window.documentPictureInPicture?.window?mu(e,window.documentPictureInPicture?.window):!1}function mu(e,t){let n=t||window,r=e.offsetTop,i=e.offsetLeft,a=e.offsetWidth,o=e.offsetHeight,{hidden:s}=e,{display:c}=getComputedStyle(e);for(;e.offsetParent;)e=e.offsetParent,r+=e.offsetTop,i+=e.offsetLeft;return r<n.pageYOffset+n.innerHeight&&i<n.pageXOffset+n.innerWidth&&r+o>n.pageYOffset&&i+a>n.pageXOffset&&!s&&c!==`none`}var hu=class extends Ai.EventEmitter{constructor(e,t,n,r){super(),this.metadataMuted=!1,this.encryption=Dn.NONE,this.log=vi,this.handleMuted=()=>{this.emit(N.Muted)},this.handleUnmuted=()=>{this.emit(N.Unmuted)},this.log=yi(r?.loggerName??_i.Publication),this.loggerContextCb=this.loggerContextCb,this.setMaxListeners(100),this.kind=e,this.trackSid=t,this.trackName=n,this.source=P.Source.Unknown}setTrack(e){this.track&&(this.track.off(N.Muted,this.handleMuted),this.track.off(N.Unmuted,this.handleUnmuted)),this.track=e,e&&(e.on(N.Muted,this.handleMuted),e.on(N.Unmuted,this.handleUnmuted))}get logContext(){return Object.assign(Object.assign({},this.loggerContextCb?.call(this)),Js(this))}get isMuted(){return this.metadataMuted}get isEnabled(){return!0}get isSubscribed(){return this.track!==void 0}get isEncrypted(){return this.encryption!==Dn.NONE}get audioTrack(){if(Os(this.track))return this.track}get videoTrack(){if(ks(this.track))return this.track}updateInfo(e){this.trackSid=e.sid,this.trackName=e.name,this.source=P.sourceFromProto(e.source),this.mimeType=e.mimeType,this.kind===P.Kind.Video&&e.width>0&&(this.dimensions={width:e.width,height:e.height},this.simulcasted=e.simulcast),this.encryption=e.encryption,this.trackInfo=e,this.log.debug(`update publication info`,Object.assign(Object.assign({},this.logContext),{info:e}))}};(function(e){(function(e){e.Desired=`desired`,e.Subscribed=`subscribed`,e.Unsubscribed=`unsubscribed`})(e.SubscriptionStatus||={}),(function(e){e.Allowed=`allowed`,e.NotAllowed=`not_allowed`})(e.PermissionStatus||={})})(hu||={});var gu=class extends hu{get isUpstreamPaused(){return this.track?.isUpstreamPaused}constructor(e,t,n,r){super(e,t.sid,t.name,r),this.track=void 0,this.handleTrackEnded=()=>{this.emit(N.Ended)},this.handleCpuConstrained=()=>{this.track&&ks(this.track)&&this.emit(N.CpuConstrained,this.track)},this.updateInfo(t),this.setTrack(n)}setTrack(e){this.track&&(this.track.off(N.Ended,this.handleTrackEnded),this.track.off(N.CpuConstrained,this.handleCpuConstrained)),super.setTrack(e),e&&(e.on(N.Ended,this.handleTrackEnded),e.on(N.CpuConstrained,this.handleCpuConstrained))}get isMuted(){return this.track?this.track.isMuted:super.isMuted}get audioTrack(){return super.audioTrack}get videoTrack(){return super.videoTrack}get isLocal(){return!0}mute(){return k(this,void 0,void 0,function*(){return this.track?.mute()})}unmute(){return k(this,void 0,void 0,function*(){return this.track?.unmute()})}pauseUpstream(){return k(this,void 0,void 0,function*(){yield this.track?.pauseUpstream()})}resumeUpstream(){return k(this,void 0,void 0,function*(){yield this.track?.resumeUpstream()})}getTrackFeatures(){if(Os(this.track)){let e=this.track.getSourceTrackSettings(),t=new Set;return e.autoGainControl&&t.add(yn.TF_AUTO_GAIN_CONTROL),e.echoCancellation&&t.add(yn.TF_ECHO_CANCELLATION),e.noiseSuppression&&t.add(yn.TF_NOISE_SUPPRESSION),e.channelCount&&e.channelCount>1&&t.add(yn.TF_STEREO),this.options?.dtx||t.add(yn.TF_NO_DTX),this.track.enhancedNoiseCancellation&&t.add(yn.TF_ENHANCED_NOISE_CANCELLATION),Array.from(t.values())}else return[]}};function _u(e,t){return k(this,void 0,void 0,function*(){e??={};let n=!1,{audioProcessor:r,videoProcessor:i,optionsWithoutProcessor:a}=Zs(e),o=a.audio,s=a.video;if(r&&typeof a.audio==`object`&&(a.audio.processor=r),i&&typeof a.video==`object`&&(a.video.processor=i),e.audio&&typeof a.audio==`object`&&typeof a.audio.deviceId==`string`){let e=a.audio.deviceId;a.audio.deviceId={exact:e},n=!0,o=Object.assign(Object.assign({},a.audio),{deviceId:{ideal:e}})}if(a.video&&typeof a.video==`object`&&typeof a.video.deviceId==`string`){let e=a.video.deviceId;a.video.deviceId={exact:e},n=!0,s=Object.assign(Object.assign({},a.video),{deviceId:{ideal:e}})}a.audio===!0?a.audio={deviceId:`default`}:typeof a.audio==`object`&&a.audio!==null&&(a.audio=Object.assign(Object.assign({},a.audio),{deviceId:a.audio.deviceId||`default`})),a.video===!0?a.video={deviceId:`default`}:typeof a.video==`object`&&!a.video.deviceId&&(a.video.deviceId=`default`);let c=Rs(a,Zc,Qc),l=Bs(c),u=navigator.mediaDevices.getUserMedia(l);a.audio&&(oc.userMediaPromiseMap.set(`audioinput`,u),u.catch(()=>oc.userMediaPromiseMap.delete(`audioinput`))),a.video&&(oc.userMediaPromiseMap.set(`videoinput`,u),u.catch(()=>oc.userMediaPromiseMap.delete(`videoinput`)));try{let e=yield u;return yield Promise.all(e.getTracks().map(n=>k(this,void 0,void 0,function*(){let a=n.kind===`audio`,o=a?c.audio:c.video;(typeof o==`boolean`||!o)&&(o={});let s,u=a?l.audio:l.video;typeof u!=`boolean`&&(s=u);let d=n.getSettings().deviceId;s?.deviceId&&ys(s.deviceId)!==d?s.deviceId=d:s||={deviceId:d};let f=xl(n,s,t);return f.kind===P.Kind.Video?f.source=P.Source.Camera:f.kind===P.Kind.Audio&&(f.source=P.Source.Microphone),f.mediaStream=e,Os(f)&&r?yield f.setProcessor(r):ks(f)&&i&&(yield f.setProcessor(i)),f})))}catch(r){if(!n)throw r;return _u(Object.assign(Object.assign({},e),{audio:o,video:s}),t)}})}function vu(e){return k(this,void 0,void 0,function*(){return(yield _u({audio:e??!0,video:!1}))[0]})}var yu;(function(e){e.Excellent=`excellent`,e.Good=`good`,e.Poor=`poor`,e.Lost=`lost`,e.Unknown=`unknown`})(yu||={});function bu(e){switch(e){case mn.EXCELLENT:return yu.Excellent;case mn.GOOD:return yu.Good;case mn.POOR:return yu.Poor;case mn.LOST:return yu.Lost;default:return yu.Unknown}}var xu=class extends Ai.EventEmitter{get logContext(){var e;return Object.assign({},((e=this.loggerOptions)?.loggerContextCb)?.call(e))}get isEncrypted(){return this.trackPublications.size>0&&Array.from(this.trackPublications.values()).every(e=>e.isEncrypted)}get isAgent(){return this.permissions?.agent||this.kind===Tn.AGENT}get isActive(){return this.participantInfo?.state===wn.ACTIVE}get kind(){return this._kind}get attributes(){return Object.freeze(Object.assign({},this._attributes))}constructor(e,t,n,r,i,a){let o=arguments.length>6&&arguments[6]!==void 0?arguments[6]:Tn.STANDARD;super(),this.audioLevel=0,this.isSpeaking=!1,this._connectionQuality=yu.Unknown,this.log=vi,this.log=yi(a?.loggerName??_i.Participant),this.loggerOptions=a,this.setMaxListeners(100),this.sid=e,this.identity=t,this.name=n,this.metadata=r,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this._kind=o,this._attributes=i??{}}getTrackPublications(){return Array.from(this.trackPublications.values())}getTrackPublication(e){for(let[,t]of this.trackPublications)if(t.source===e)return t}getTrackPublicationByName(e){for(let[,t]of this.trackPublications)if(t.trackName===e)return t}waitUntilActive(){return this.isActive?Promise.resolve():this.activeFuture?this.activeFuture.promise:(this.activeFuture=new _s,this.once(j.Active,()=>{var e,t;(t=(e=this.activeFuture)?.resolve)==null||t.call(e),this.activeFuture=void 0}),this.activeFuture.promise)}get connectionQuality(){return this._connectionQuality}get isCameraEnabled(){return!(this.getTrackPublication(P.Source.Camera)?.isMuted??!0)}get isMicrophoneEnabled(){return!(this.getTrackPublication(P.Source.Microphone)?.isMuted??!0)}get isScreenShareEnabled(){return!!this.getTrackPublication(P.Source.ScreenShare)}get isLocal(){return!1}get joinedAt(){return this.participantInfo?new Date(Number.parseInt(this.participantInfo.joinedAt.toString())*1e3):new Date}updateInfo(e){return this.participantInfo&&this.participantInfo.sid===e.sid&&this.participantInfo.version>e.version?!1:(this.identity=e.identity,this.sid=e.sid,this._setName(e.name),this._setMetadata(e.metadata),this._setAttributes(e.attributes),e.state===wn.ACTIVE&&this.participantInfo?.state!==wn.ACTIVE&&this.emit(j.Active),e.permission&&this.setPermissions(e.permission),this.participantInfo=e,!0)}_setMetadata(e){let t=this.metadata!==e,n=this.metadata;this.metadata=e,t&&this.emit(j.ParticipantMetadataChanged,n)}_setName(e){let t=this.name!==e;this.name=e,t&&this.emit(j.ParticipantNameChanged,e)}_setAttributes(e){let t=Xs(this.attributes,e);this._attributes=e,Object.keys(t).length>0&&this.emit(j.AttributesChanged,t)}setPermissions(e){let t=this.permissions,n=e.canPublish!==this.permissions?.canPublish||e.canSubscribe!==this.permissions?.canSubscribe||e.canPublishData!==this.permissions?.canPublishData||e.hidden!==this.permissions?.hidden||e.recorder!==this.permissions?.recorder||e.canPublishSources.length!==this.permissions.canPublishSources.length||e.canPublishSources.some((e,t)=>e!==this.permissions?.canPublishSources[t])||e.canSubscribeMetrics!==this.permissions?.canSubscribeMetrics;return this.permissions=e,n&&this.emit(j.ParticipantPermissionsChanged,t),n}setIsSpeaking(e){e!==this.isSpeaking&&(this.isSpeaking=e,e&&(this.lastSpokeAt=new Date),this.emit(j.IsSpeakingChanged,e))}setConnectionQuality(e){let t=this._connectionQuality;this._connectionQuality=bu(e),t!==this._connectionQuality&&this.emit(j.ConnectionQualityChanged,this._connectionQuality)}setDisconnected(){var e,t;this.activeFuture&&=((t=(e=this.activeFuture).reject)==null||t.call(e,Error(`Participant disconnected`)),void 0)}setAudioContext(e){this.audioContext=e,this.audioTrackPublications.forEach(t=>Os(t.track)&&t.track.setAudioContext(e))}addTrackPublication(e){e.on(N.Muted,()=>{this.emit(j.TrackMuted,e)}),e.on(N.Unmuted,()=>{this.emit(j.TrackUnmuted,e)});let t=e;switch(t.track&&(t.track.sid=e.trackSid),this.trackPublications.set(e.trackSid,e),e.kind){case P.Kind.Audio:this.audioTrackPublications.set(e.trackSid,e);break;case P.Kind.Video:this.videoTrackPublications.set(e.trackSid,e);break}}};function Su(e){if(!e.participantSid&&!e.participantIdentity)throw Error(`Invalid track permission, must provide at least one of participantIdentity and participantSid`);return new Ur({participantIdentity:e.participantIdentity??``,participantSid:e.participantSid??``,allTracks:e.allowAll??!1,trackSids:e.allowedTrackSids||[]})}var Cu=class extends xu{constructor(e,t,n,r,i,a){super(e,t,void 0,void 0,void 0,{loggerName:r.loggerName,loggerContextCb:()=>this.engine.logContext}),this.pendingPublishing=new Set,this.pendingPublishPromises=new Map,this.participantTrackPermissions=[],this.allParticipantsAllowedToSubscribe=!0,this.encryptionType=Dn.NONE,this.enabledPublishVideoCodecs=[],this.pendingAcks=new Map,this.pendingResponses=new Map,this.handleReconnecting=()=>{this.reconnectFuture||=new _s},this.handleReconnected=()=>{var e,t;(t=(e=this.reconnectFuture)?.resolve)==null||t.call(e),this.reconnectFuture=void 0,this.updateTrackSubscriptionPermissions()},this.handleClosing=()=>{var e,t,n,r,i,a;this.reconnectFuture&&=(this.reconnectFuture.promise.catch(e=>this.log.warn(e.message,this.logContext)),(t=(e=this.reconnectFuture)?.reject)==null||t.call(e,Error(`Got disconnected during reconnection attempt`)),void 0),this.signalConnectedFuture&&=((r=(n=this.signalConnectedFuture).reject)==null||r.call(n,Error(`Got disconnected without signal connected`)),void 0),(a=(i=this.activeAgentFuture)?.reject)==null||a.call(i,Error(`Got disconnected without active agent present`)),this.activeAgentFuture=void 0,this.firstActiveAgent=void 0},this.handleSignalConnected=e=>{var t,n;e.participant&&this.updateInfo(e.participant),this.signalConnectedFuture||=new _s,(n=(t=this.signalConnectedFuture).resolve)==null||n.call(t)},this.handleSignalRequestResponse=e=>{let{requestId:t,reason:n,message:r}=e,i=this.pendingSignalRequests.get(t);i&&(n!==ri.OK&&i.reject(new io(r,n)),this.pendingSignalRequests.delete(t))},this.handleDataPacket=e=>{switch(e.value.case){case`rpcResponse`:let t=e.value.value,n=null,r=null;t.value.case===`payload`?n=t.value.value:t.value.case===`error`&&(r=sl.fromProto(t.value.value)),this.handleIncomingRpcResponse(t.requestId,n,r);break;case`rpcAck`:let i=e.value.value;this.handleIncomingRpcAck(i.requestId);break}},this.updateTrackSubscriptionPermissions=()=>{this.log.debug(`updating track subscription permissions`,Object.assign(Object.assign({},this.logContext),{allParticipantsAllowed:this.allParticipantsAllowedToSubscribe,participantTrackPermissions:this.participantTrackPermissions})),this.engine.client.sendUpdateSubscriptionPermissions(this.allParticipantsAllowedToSubscribe,this.participantTrackPermissions.map(e=>Su(e)))},this.onTrackUnmuted=e=>{this.onTrackMuted(e,e.isUpstreamPaused)},this.onTrackMuted=(e,t)=>{if(t===void 0&&(t=!0),!e.sid){this.log.error(`could not update mute status for unpublished track`,Object.assign(Object.assign({},this.logContext),Js(e)));return}this.engine.updateMuteStatus(e.sid,t)},this.onTrackUpstreamPaused=e=>{this.log.debug(`upstream paused`,Object.assign(Object.assign({},this.logContext),Js(e))),this.onTrackMuted(e,!0)},this.onTrackUpstreamResumed=e=>{this.log.debug(`upstream resumed`,Object.assign(Object.assign({},this.logContext),Js(e))),this.onTrackMuted(e,e.isMuted)},this.onTrackFeatureUpdate=e=>{let t=this.audioTrackPublications.get(e.sid);if(!t){this.log.warn(`Could not update local audio track settings, missing publication for track ${e.sid}`,this.logContext);return}this.engine.client.sendUpdateLocalAudioTrack(t.trackSid,t.getTrackFeatures())},this.onTrackCpuConstrained=(e,t)=>{this.log.debug(`track cpu constrained`,Object.assign(Object.assign({},this.logContext),Js(t))),this.emit(j.LocalTrackCpuConstrained,e,t)},this.handleSubscribedQualityUpdate=e=>k(this,void 0,void 0,function*(){var t,n,r,i;if(!this.roomOptions?.dynacast)return;let a=this.videoTrackPublications.get(e.trackSid);if(!a){this.log.warn(`received subscribed quality update for unknown track`,Object.assign(Object.assign({},this.logContext),{trackSid:e.trackSid}));return}if(!a.videoTrack)return;let o=yield a.videoTrack.setPublishingCodecs(e.subscribedCodecs);try{for(var s=!0,c=Ei(o),l;l=yield c.next(),t=l.done,!t;s=!0){i=l.value,s=!1;let e=i;Oo(e)&&(this.log.debug(`publish ${e} for ${a.videoTrack.sid}`,Object.assign(Object.assign({},this.logContext),Js(a))),yield this.publishAdditionalCodecForTrack(a.videoTrack,e,a.options))}}catch(e){n={error:e}}finally{try{!s&&!t&&(r=c.return)&&(yield r.call(c))}finally{if(n)throw n.error}}}),this.handleLocalTrackUnpublished=e=>{let t=this.trackPublications.get(e.trackSid);if(!t){this.log.warn(`received unpublished event for unknown track`,Object.assign(Object.assign({},this.logContext),{trackSid:e.trackSid}));return}this.unpublishTrack(t.track)},this.handleTrackEnded=e=>k(this,void 0,void 0,function*(){if(e.source===P.Source.ScreenShare||e.source===P.Source.ScreenShareAudio)this.log.debug(`unpublishing local track due to TrackEnded`,Object.assign(Object.assign({},this.logContext),Js(e))),this.unpublishTrack(e);else if(e.isUserProvided)yield e.mute();else if(js(e)||As(e))try{if($o())try{let t=yield navigator==null?void 0:navigator.permissions.query({name:e.source===P.Source.Camera?`camera`:`microphone`});if(t&&t.state===`denied`)throw this.log.warn(`user has revoked access to ${e.source}`,Object.assign(Object.assign({},this.logContext),Js(e))),t.onchange=()=>{t.state!==`denied`&&(e.isMuted||e.restartTrack(),t.onchange=null)},Error(`GetUserMedia Permission denied`)}catch{}e.isMuted||(this.log.debug(`track ended, attempting to use a different device`,Object.assign(Object.assign({},this.logContext),Js(e))),js(e)?yield e.restartTrack({deviceId:`default`}):yield e.restartTrack())}catch{this.log.warn(`could not restart track, muting instead`,Object.assign(Object.assign({},this.logContext),Js(e))),yield e.mute()}}),this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this.engine=n,this.roomOptions=r,this.setupEngine(n),this.activeDeviceMap=new Map([[`audioinput`,`default`],[`videoinput`,`default`],[`audiooutput`,`default`]]),this.pendingSignalRequests=new Map,this.rpcHandlers=i,this.roomOutgoingDataStreamManager=a}get lastCameraError(){return this.cameraError}get lastMicrophoneError(){return this.microphoneError}get isE2EEEnabled(){return this.encryptionType!==Dn.NONE}getTrackPublication(e){let t=super.getTrackPublication(e);if(t)return t}getTrackPublicationByName(e){let t=super.getTrackPublicationByName(e);if(t)return t}setupEngine(e){this.engine=e,this.engine.on(M.RemoteMute,(e,t)=>{let n=this.trackPublications.get(e);!n||!n.track||(t?n.mute():n.unmute())}),this.signalConnectedFuture?.isResolved&&(this.signalConnectedFuture=void 0),this.engine.on(M.Connected,this.handleReconnected).on(M.SignalConnected,this.handleSignalConnected).on(M.SignalRestarted,this.handleReconnected).on(M.SignalResumed,this.handleReconnected).on(M.Restarting,this.handleReconnecting).on(M.Resuming,this.handleReconnecting).on(M.LocalTrackUnpublished,this.handleLocalTrackUnpublished).on(M.SubscribedQualityUpdate,this.handleSubscribedQualityUpdate).on(M.Closing,this.handleClosing).on(M.SignalRequestResponse,this.handleSignalRequestResponse).on(M.DataPacketReceived,this.handleDataPacket)}setMetadata(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({metadata:e})})}setName(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({name:e})})}setAttributes(e){return k(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({attributes:e})})}requestMetadataUpdate(e){return k(this,arguments,void 0,function(e){var t=this;let{metadata:n,name:r,attributes:i}=e;return function*(){return new Promise((e,a)=>k(t,void 0,void 0,function*(){try{let t=!1,o=yield this.engine.client.sendUpdateLocalMetadata(n??this.metadata??``,r??this.name??``,i),s=performance.now();for(this.pendingSignalRequests.set(o,{resolve:e,reject:e=>{a(e),t=!0},values:{name:r,metadata:n,attributes:i}});performance.now()-s<5e3&&!t;){if((!r||this.name===r)&&(!n||this.metadata===n)&&(!i||Object.entries(i).every(e=>{let[t,n]=e;return this.attributes[t]===n||n===``&&!this.attributes[t]}))){this.pendingSignalRequests.delete(o),e();return}yield Lo(50)}a(new io(`Request to update local metadata timed out`,`TimeoutError`))}catch(e){e instanceof Error&&a(e)}}))}()})}setCameraEnabled(e,t,n){return this.setTrackEnabled(P.Source.Camera,e,t,n)}setMicrophoneEnabled(e,t,n){return this.setTrackEnabled(P.Source.Microphone,e,t,n)}setScreenShareEnabled(e,t,n){return this.setTrackEnabled(P.Source.ScreenShare,e,t,n)}setE2EEEnabled(e){return k(this,void 0,void 0,function*(){this.encryptionType=e?Dn.GCM:Dn.NONE,yield this.republishAllTracks(void 0,!1)})}setTrackEnabled(e,t,n,r){return k(this,void 0,void 0,function*(){this.log.debug(`setTrackEnabled`,Object.assign(Object.assign({},this.logContext),{source:e,enabled:t})),this.republishPromise&&(yield this.republishPromise);let i=this.getTrackPublication(e);if(t)if(i)yield i.unmute();else{let t;if(this.pendingPublishing.has(e)){let t=yield this.waitForPendingPublicationOfSource(e);return t||this.log.info(`waiting for pending publication promise timed out`,Object.assign(Object.assign({},this.logContext),{source:e})),yield t?.unmute(),t}this.pendingPublishing.add(e);try{switch(e){case P.Source.Camera:t=yield this.createTracks({video:n??!0});break;case P.Source.Microphone:t=yield this.createTracks({audio:n??!0});break;case P.Source.ScreenShare:t=yield this.createScreenTracks(Object.assign({},n));break;default:throw new $a(e)}}catch(n){throw t?.forEach(e=>{e.stop()}),n instanceof Error&&this.emit(j.MediaDevicesError,n,Ws(e)),this.pendingPublishing.delete(e),n}for(let r of t){let t=Object.assign(Object.assign({},this.roomOptions.publishDefaults),n);e===P.Source.Microphone&&Os(r)&&t.preConnectBuffer&&(this.log.info(`starting preconnect buffer for microphone`,Object.assign({},this.logContext)),r.startPreConnectBuffer())}try{let e=[];for(let n of t)this.log.info(`publishing track`,Object.assign(Object.assign({},this.logContext),Js(n))),e.push(this.publishTrack(n,r));let n=yield Promise.all(e);[i]=n}catch(e){throw t?.forEach(e=>{e.stop()}),e}finally{this.pendingPublishing.delete(e)}}else if(!i?.track&&this.pendingPublishing.has(e)&&(i=yield this.waitForPendingPublicationOfSource(e),i||this.log.info(`waiting for pending publication promise timed out`,Object.assign(Object.assign({},this.logContext),{source:e}))),i&&i.track)if(e===P.Source.ScreenShare){i=yield this.unpublishTrack(i.track);let e=this.getTrackPublication(P.Source.ScreenShareAudio);e&&e.track&&this.unpublishTrack(e.track)}else yield i.mute();return i})}enableCameraAndMicrophone(){return k(this,void 0,void 0,function*(){if(!(this.pendingPublishing.has(P.Source.Camera)||this.pendingPublishing.has(P.Source.Microphone))){this.pendingPublishing.add(P.Source.Camera),this.pendingPublishing.add(P.Source.Microphone);try{let e=yield this.createTracks({audio:!0,video:!0});yield Promise.all(e.map(e=>this.publishTrack(e)))}finally{this.pendingPublishing.delete(P.Source.Camera),this.pendingPublishing.delete(P.Source.Microphone)}}})}createTracks(e){return k(this,void 0,void 0,function*(){e??={};let t=Rs(e,this.roomOptions?.audioCaptureDefaults,this.roomOptions?.videoCaptureDefaults);try{return(yield _u(t,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext})).map(e=>(Os(e)&&(this.microphoneError=void 0,e.setAudioContext(this.audioContext),e.source=P.Source.Microphone,this.emit(j.AudioStreamAcquired)),ks(e)&&(this.cameraError=void 0,e.source=P.Source.Camera),e))}catch(t){throw t instanceof Error&&(e.audio&&(this.microphoneError=t),e.video&&(this.cameraError=t)),t}})}createScreenTracks(e){return k(this,void 0,void 0,function*(){if(e===void 0&&(e={}),navigator.mediaDevices.getDisplayMedia===void 0)throw new Qa(`getDisplayMedia not supported`);e.resolution===void 0&&!Yo()&&(e.resolution=No.h1080fps30.resolution);let t=Gs(e),n=yield navigator.mediaDevices.getDisplayMedia(t),r=n.getVideoTracks();if(r.length===0)throw new $a(`no video track found`);let i=new zl(r[0],void 0,!1,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});i.source=P.Source.ScreenShare,e.contentHint&&(i.mediaStreamTrack.contentHint=e.contentHint);let a=[i];if(n.getAudioTracks().length>0){this.emit(j.AudioStreamAcquired);let e=new bl(n.getAudioTracks()[0],void 0,!1,this.audioContext,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});e.source=P.Source.ScreenShareAudio,a.push(e)}return a})}publishTrack(e,t){return k(this,void 0,void 0,function*(){return this.publishOrRepublishTrack(e,t)})}publishOrRepublishTrack(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return function*(){js(e)&&e.setAudioContext(n.audioContext),yield n.reconnectFuture?.promise,n.republishPromise&&!r&&(yield n.republishPromise),Ds(e)&&n.pendingPublishPromises.has(e)&&(yield n.pendingPublishPromises.get(e));let i;if(e instanceof MediaStreamTrack)i=e.getConstraints();else{i=e.constraints;let t;switch(e.source){case P.Source.Microphone:t=`audioinput`;break;case P.Source.Camera:t=`videoinput`}t&&n.activeDeviceMap.has(t)&&(i=Object.assign(Object.assign({},i),{deviceId:n.activeDeviceMap.get(t)}))}if(e instanceof MediaStreamTrack)switch(e.kind){case`audio`:e=new bl(e,i,!0,n.audioContext,{loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});break;case`video`:e=new zl(e,i,!0,{loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});break;default:throw new $a(`unsupported MediaStreamTrack kind ${e.kind}`)}else e.updateLoggerOptions({loggerName:n.roomOptions.loggerName,loggerContextCb:()=>n.logContext});let a;if(n.trackPublications.forEach(t=>{t.track&&t.track===e&&(a=t)}),a)return n.log.warn(`track has already been published, skipping`,Object.assign(Object.assign({},n.logContext),Js(a))),a;let o=Object.assign(Object.assign({},n.roomOptions.publishDefaults),t),s=`channelCount`in e.mediaStreamTrack.getSettings()&&e.mediaStreamTrack.getSettings().channelCount===2||e.mediaStreamTrack.getConstraints().channelCount===2,c=o.forceStereo??s;c&&(o.dtx===void 0&&n.log.info(`Opus DTX will be disabled for stereo tracks by default. Enable them explicitly to make it work.`,Object.assign(Object.assign({},n.logContext),Js(e))),o.red===void 0&&n.log.info(`Opus RED will be disabled for stereo tracks by default. Enable them explicitly to make it work.`),o.dtx??=!1,o.red??=!1),!Qo()&&n.roomOptions.e2ee&&(n.log.info(`End-to-end encryption is set up, simulcast publishing will be disabled on Safari versions and iOS browsers running iOS < v17.2`,Object.assign({},n.logContext)),o.simulcast=!1),o.source&&(e.source=o.source);let l=new Promise((t,r)=>k(n,void 0,void 0,function*(){try{if(this.engine.client.currentState!==vc.CONNECTED){this.log.debug(`deferring track publication until signal is connected`,Object.assign(Object.assign({},this.logContext),{track:Js(e)}));let n=!1,i=setTimeout(()=>{n=!0,e.stop(),r(new ro(`publishing rejected as engine not connected within timeout`,408))},15e3);if(yield this.waitUntilEngineConnected(),clearTimeout(i),n)return;t(yield this.publish(e,o,c))}else try{t(yield this.publish(e,o,c))}catch(e){r(e)}}catch(e){r(e)}}));n.pendingPublishPromises.set(e,l);try{return yield l}catch(e){throw e}finally{n.pendingPublishPromises.delete(e)}}()})}waitUntilEngineConnected(){return this.signalConnectedFuture||=new _s,this.signalConnectedFuture.promise}hasPermissionsToPublish(e){if(!this.permissions)return this.log.warn(`no permissions present for publishing track`,Object.assign(Object.assign({},this.logContext),Js(e))),!1;let{canPublish:t,canPublishSources:n}=this.permissions;return t&&(n.length===0||n.map(e=>Qs(e)).includes(e.source))?!0:(this.log.warn(`insufficient permissions to publish`,Object.assign(Object.assign({},this.logContext),Js(e))),!1)}publish(e,t,n){return k(this,void 0,void 0,function*(){if(!this.hasPermissionsToPublish(e))throw new ro(`failed to publish track, insufficient permissions`,403);Array.from(this.trackPublications.values()).find(t=>Ds(e)&&t.source===e.source)&&e.source!==P.Source.Unknown&&this.log.info(`publishing a second track with the same source: ${e.source}`,Object.assign(Object.assign({},this.logContext),Js(e))),t.stopMicTrackOnMute&&Os(e)&&(e.stopOnMute=!0),e.source===P.Source.ScreenShare&&Go()&&(t.simulcast=!1),t.videoCodec===`av1`&&!Bo()&&(t.videoCodec=void 0),t.videoCodec===`vp9`&&!Vo()&&(t.videoCodec=void 0),t.videoCodec===void 0&&(t.videoCodec=Yc),this.enabledPublishVideoCodecs.length>0&&(this.enabledPublishVideoCodecs.some(e=>t.videoCodec===Ks(e.mime))||(t.videoCodec=Ks(this.enabledPublishVideoCodecs[0].mime)));let r=t.videoCodec;e.on(N.Muted,this.onTrackMuted),e.on(N.Unmuted,this.onTrackUnmuted),e.on(N.Ended,this.handleTrackEnded),e.on(N.UpstreamPaused,this.onTrackUpstreamPaused),e.on(N.UpstreamResumed,this.onTrackUpstreamResumed),e.on(N.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate);let i=[],a=!(t.dtx??!0),o=e.getSourceTrackSettings();o.autoGainControl&&i.push(yn.TF_AUTO_GAIN_CONTROL),o.echoCancellation&&i.push(yn.TF_ECHO_CANCELLATION),o.noiseSuppression&&i.push(yn.TF_NOISE_SUPPRESSION),o.channelCount&&o.channelCount>1&&i.push(yn.TF_STEREO),a&&i.push(yn.TF_NO_DTX),js(e)&&e.hasPreConnectBuffer&&i.push(yn.TF_PRECONNECT_BUFFER);let s=new hr({cid:e.mediaStreamTrack.id,name:t.name,type:P.kindToProto(e.kind),muted:e.isMuted,source:P.sourceToProto(e.source),disableDtx:a,encryption:this.encryptionType,stereo:n,disableRed:this.isE2EEEnabled||!(t.red??!0),stream:t?.stream,backupCodecPolicy:t?.backupCodecPolicy,audioFeatures:i}),c;if(e.kind===P.Kind.Video){let n={width:0,height:0};try{n=yield e.waitForDimensions()}catch{let t=this.roomOptions.videoCaptureDefaults?.resolution??jo.h720.resolution;n={width:t.width,height:t.height},this.log.error(`could not determine track dimensions, using defaults`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{dims:n}))}s.width=n.width,s.height=n.height,As(e)&&(Ho(r)&&(e.source===P.Source.ScreenShare&&(t.scalabilityMode=`L1T3`,`contentHint`in e.mediaStreamTrack&&(e.mediaStreamTrack.contentHint=`motion`,this.log.info(`forcing contentHint to motion for screenshare with SVC codecs`,Object.assign(Object.assign({},this.logContext),Js(e))))),t.scalabilityMode=t.scalabilityMode??`L3T3_KEY`),s.simulcastCodecs=[new mr({codec:r,cid:e.mediaStreamTrack.id})],t.backupCodec===!0&&(t.backupCodec={codec:Yc}),t.backupCodec&&r!==t.backupCodec.codec&&s.encryption===Dn.NONE&&(this.roomOptions.dynacast||(this.roomOptions.dynacast=!0),s.simulcastCodecs.push(new mr({codec:t.backupCodec.codec,cid:``})))),c=kl(e.source===P.Source.ScreenShare,s.width,s.height,t),s.layers=Hl(s.width,s.height,c,Ho(t.videoCodec))}else e.kind===P.Kind.Audio&&(c=[{maxBitrate:t.audioPreset?.maxBitrate,priority:t.audioPreset?.priority??`high`,networkPriority:t.audioPreset?.priority??`high`}]);if(!this.engine||this.engine.isClosed)throw new to(`cannot publish track when not connected`);let l=()=>k(this,void 0,void 0,function*(){if(!this.engine.pcManager)throw new to(`pcManager is not ready`);if(e.sender=yield this.engine.createSender(e,t,c),this.emit(j.LocalSenderCreated,e.sender,e),As(e)&&(t.degradationPreference??=Ll(e),e.setDegradationPreference(t.degradationPreference)),c)if(Go()&&e.kind===P.Kind.Audio){let t;for(let n of this.engine.pcManager.publisher.getTransceivers())if(n.sender===e.sender){t=n;break}t&&this.engine.pcManager.publisher.setTrackCodecBitrate({transceiver:t,codec:`opus`,maxbr:c[0]?.maxBitrate?c[0].maxBitrate/1e3:0})}else e.codec&&Ho(e.codec)&&c[0]?.maxBitrate&&this.engine.pcManager.publisher.setTrackCodecBitrate({cid:s.cid,codec:e.codec,maxbr:c[0].maxBitrate/1e3});yield this.engine.negotiate()}),u,d=new Promise((t,n)=>k(this,void 0,void 0,function*(){try{u=yield this.engine.addTrack(s),t(u)}catch(t){e.sender&&this.engine.pcManager?.publisher&&(this.engine.pcManager.publisher.removeTrack(e.sender),yield this.engine.negotiate().catch(t=>{this.log.error(`failed to negotiate after removing track due to failed add track request`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{error:t}))})),n(t)}}));if(this.enabledPublishVideoCodecs.length>0)u=(yield Promise.all([d,l()]))[0];else{u=yield d;let n;if(u.codecs.forEach(e=>{n===void 0&&(n=e.mimeType)}),n&&e.kind===P.Kind.Video){let i=Ks(n);i!==r&&(this.log.debug(`falling back to server selected codec`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{codec:i})),t.videoCodec=i,c=kl(e.source===P.Source.ScreenShare,s.width,s.height,t))}yield l()}let f=new gu(e.kind,u,e,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});if(f.on(N.CpuConstrained,e=>this.onTrackCpuConstrained(e,f)),f.options=t,e.sid=u.sid,this.log.debug(`publishing ${e.kind} with encodings`,Object.assign(Object.assign({},this.logContext),{encodings:c,trackInfo:u})),As(e)?e.startMonitor(this.engine.client):js(e)&&e.startMonitor(),this.addTrackPublication(f),this.emit(j.LocalTrackPublished,f),js(e)&&u.audioFeatures.includes(yn.TF_PRECONNECT_BUFFER)){let t=e.getPreConnectBuffer(),n=e.getPreConnectBufferMimeType();this.on(j.LocalTrackSubscribed,t=>{if(t.trackSid===u.sid){if(!e.hasPreConnectBuffer){this.log.warn(`subscribe event came to late, buffer already closed`,this.logContext);return}this.log.debug(`finished recording preconnect buffer`,Object.assign(Object.assign({},this.logContext),Js(e))),e.stopPreConnectBuffer()}}),t&&new Promise((r,i)=>k(this,void 0,void 0,function*(){var a,s,c,l;try{this.log.debug(`waiting for agent`,Object.assign(Object.assign({},this.logContext),Js(e)));let m=setTimeout(()=>{i(Error(`agent not active within 10 seconds`))},1e4),h=yield this.waitUntilActiveAgentPresent();clearTimeout(m),this.log.debug(`sending preconnect buffer`,Object.assign(Object.assign({},this.logContext),Js(e)));let g=yield this.streamBytes({name:`preconnect-buffer`,mimeType:n,topic:`lk.agent.pre-connect-audio-buffer`,destinationIdentities:[h.identity],attributes:{trackId:f.trackSid,sampleRate:String(o.sampleRate??`48000`),channels:String(o.channelCount??`1`)}});try{for(var u=!0,d=Ei(t),p;p=yield d.next(),a=p.done,!a;u=!0){l=p.value,u=!1;let e=l;yield g.write(e)}}catch(e){s={error:e}}finally{try{!u&&!a&&(c=d.return)&&(yield c.call(d))}finally{if(s)throw s.error}}yield g.close(),r()}catch(e){i(e)}})).then(()=>{this.log.debug(`preconnect buffer sent successfully`,Object.assign(Object.assign({},this.logContext),Js(e)))}).catch(t=>{this.log.error(`error sending preconnect buffer`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{error:t}))})}return f})}get isLocal(){return!0}publishAdditionalCodecForTrack(e,t,n){return k(this,void 0,void 0,function*(){if(this.encryptionType!==Dn.NONE)return;let r;if(this.trackPublications.forEach(t=>{t.track&&t.track===e&&(r=t)}),!r)throw new $a(`track is not published`);if(!As(e))throw new $a(`track is not a video track`);let i=Object.assign(Object.assign({},this.roomOptions?.publishDefaults),n),a=Al(e,t,i);if(!a){this.log.info(`backup codec has been disabled, ignoring request to add additional codec for track`,Object.assign(Object.assign({},this.logContext),Js(e)));return}let o=e.addSimulcastTrack(t,a);if(!o)return;let s=new hr({cid:o.mediaStreamTrack.id,type:P.kindToProto(e.kind),muted:e.isMuted,source:P.sourceToProto(e.source),sid:e.sid,simulcastCodecs:[{codec:i.videoCodec,cid:o.mediaStreamTrack.id}]});if(s.layers=Hl(s.width,s.height,a),!this.engine||this.engine.isClosed)throw new to(`cannot publish track when not connected`);let c=(yield Promise.all([this.engine.addTrack(s),k(this,void 0,void 0,function*(){yield this.engine.createSimulcastSender(e,o,i,a),yield this.engine.negotiate()})]))[0];this.log.debug(`published ${t} for track ${e.sid}`,Object.assign(Object.assign({},this.logContext),{encodings:a,trackInfo:c}))})}unpublishTrack(e,t){return k(this,void 0,void 0,function*(){if(Ds(e)){let t=this.pendingPublishPromises.get(e);t&&(this.log.info(`awaiting publish promise before attempting to unpublish`,Object.assign(Object.assign({},this.logContext),Js(e))),yield t)}let n=this.getPublicationForTrack(e),r=n?Js(n):void 0;if(this.log.debug(`unpublishing track`,Object.assign(Object.assign({},this.logContext),r)),!n||!n.track){this.log.warn(`track was not unpublished because no publication was found`,Object.assign(Object.assign({},this.logContext),r));return}e=n.track,e.off(N.Muted,this.onTrackMuted),e.off(N.Unmuted,this.onTrackUnmuted),e.off(N.Ended,this.handleTrackEnded),e.off(N.UpstreamPaused,this.onTrackUpstreamPaused),e.off(N.UpstreamResumed,this.onTrackUpstreamResumed),e.off(N.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate),t===void 0&&(t=this.roomOptions?.stopLocalTrackOnUnpublish??!0),t?e.stop():e.stopMonitor();let i=!1,a=e.sender;if(e.sender=void 0,this.engine.pcManager&&this.engine.pcManager.currentState<tl.FAILED&&a)try{for(let e of this.engine.pcManager.publisher.getTransceivers())e.sender===a&&(e.direction=`inactive`,i=!0);if(this.engine.removeTrack(a)&&(i=!0),As(e)){for(let[,t]of e.simulcastCodecs)t.sender&&=(this.engine.removeTrack(t.sender)&&(i=!0),void 0);e.simulcastCodecs.clear()}}catch(e){this.log.warn(`failed to unpublish track`,Object.assign(Object.assign(Object.assign({},this.logContext),r),{error:e}))}switch(this.trackPublications.delete(n.trackSid),n.kind){case P.Kind.Audio:this.audioTrackPublications.delete(n.trackSid);break;case P.Kind.Video:this.videoTrackPublications.delete(n.trackSid);break}return this.emit(j.LocalTrackUnpublished,n),n.setTrack(void 0),i&&(yield this.engine.negotiate()),n})}unpublishTracks(e){return k(this,void 0,void 0,function*(){return(yield Promise.all(e.map(e=>this.unpublishTrack(e)))).filter(e=>!!e)})}republishAllTracks(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){t.republishPromise&&(yield t.republishPromise),t.republishPromise=new Promise((r,i)=>k(t,void 0,void 0,function*(){try{let t=[];this.trackPublications.forEach(n=>{n.track&&(e&&(n.options=Object.assign(Object.assign({},n.options),e)),t.push(n))}),yield Promise.all(t.map(e=>k(this,void 0,void 0,function*(){let t=e.track;yield this.unpublishTrack(t,!1),n&&!t.isMuted&&t.source!==P.Source.ScreenShare&&t.source!==P.Source.ScreenShareAudio&&(js(t)||As(t))&&!t.isUserProvided&&(this.log.debug(`restarting existing track`,Object.assign(Object.assign({},this.logContext),{track:e.trackSid})),yield t.restartTrack()),yield this.publishOrRepublishTrack(t,e.options,!0)}))),r()}catch(e){i(e)}finally{this.republishPromise=void 0}})),yield t.republishPromise}()})}publishData(e){return k(this,arguments,void 0,function(e){var t=this;let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return function*(){let r=n.reliable?Nn.RELIABLE:Nn.LOSSY,i=n.destinationIdentities,a=n.topic,o=new Mn({kind:r,value:{case:`user`,value:new Rn({participantIdentity:t.identity,payload:e,destinationIdentities:i,topic:a})}});yield t.engine.sendDataPacket(o,r)}()})}publishDtmf(e,t){return k(this,void 0,void 0,function*(){let n=new Mn({kind:Nn.RELIABLE,value:{case:`sipDtmf`,value:new zn({code:e,digit:t})}});yield this.engine.sendDataPacket(n,Nn.RELIABLE)})}sendChatMessage(e,t){return k(this,void 0,void 0,function*(){let n={id:crypto.randomUUID(),message:e,timestamp:Date.now(),attachedFiles:t?.attachments},r=new Mn({value:{case:`chatMessage`,value:new Hn(Object.assign(Object.assign({},n),{timestamp:Be.parse(n.timestamp)}))}});return yield this.engine.sendDataPacket(r,Nn.RELIABLE),this.emit(j.ChatMessage,n),n})}editChatMessage(e,t){return k(this,void 0,void 0,function*(){let n=Object.assign(Object.assign({},t),{message:e,editTimestamp:Date.now()}),r=new Mn({value:{case:`chatMessage`,value:new Hn(Object.assign(Object.assign({},n),{timestamp:Be.parse(n.timestamp),editTimestamp:Be.parse(n.editTimestamp)}))}});return yield this.engine.sendDataPacket(r,Nn.RELIABLE),this.emit(j.ChatMessage,n),n})}sendText(e,t){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.sendText(e,t)})}streamText(e){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.streamText(e)})}sendFile(e,t){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.sendFile(e,t)})}streamBytes(e){return k(this,void 0,void 0,function*(){return this.roomOutgoingDataStreamManager.streamBytes(e)})}performRpc(e){return k(this,arguments,void 0,function(e){var t=this;let{destinationIdentity:n,method:r,payload:i,responseTimeout:a=15e3}=e;return function*(){let e=7e3;return e+1e3,new Promise((o,s)=>k(t,void 0,void 0,function*(){if(ll(i)>cl){s(sl.builtIn(`REQUEST_PAYLOAD_TOO_LARGE`));return}if(this.engine.latestJoinResponse?.serverInfo?.version&&os(this.engine.latestJoinResponse?.serverInfo?.version,`1.8.0`)<0){s(sl.builtIn(`UNSUPPORTED_SERVER`));return}let t=Math.max(a,8e3),c=crypto.randomUUID();yield this.publishRpcRequest(n,c,r,i,t);let l=setTimeout(()=>{this.pendingAcks.delete(c),s(sl.builtIn(`CONNECTION_TIMEOUT`)),this.pendingResponses.delete(c),clearTimeout(u)},e);this.pendingAcks.set(c,{resolve:()=>{clearTimeout(l)},participantIdentity:n});let u=setTimeout(()=>{this.pendingResponses.delete(c),s(sl.builtIn(`RESPONSE_TIMEOUT`))},a);this.pendingResponses.set(c,{resolve:(e,t)=>{clearTimeout(u),this.pendingAcks.has(c)&&(console.warn(`RPC response received before ack`,c),this.pendingAcks.delete(c),clearTimeout(l)),t?s(t):o(e??``)},participantIdentity:n})}))}()})}registerRpcMethod(e,t){this.rpcHandlers.has(e)&&this.log.warn(`you're overriding the RPC handler for method ${e}, in the future this will throw an error`),this.rpcHandlers.set(e,t)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setTrackSubscriptionPermissions(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];this.participantTrackPermissions=t,this.allParticipantsAllowedToSubscribe=e,this.engine.client.isDisconnected||this.updateTrackSubscriptionPermissions()}handleIncomingRpcAck(e){let t=this.pendingAcks.get(e);t?(t.resolve(),this.pendingAcks.delete(e)):console.error(`Ack received for unexpected RPC request`,e)}handleIncomingRpcResponse(e,t,n){let r=this.pendingResponses.get(e);r?(r.resolve(t,n),this.pendingResponses.delete(e)):console.error(`Response received for unexpected RPC request`,e)}publishRpcRequest(e,t,n,r,i){return k(this,void 0,void 0,function*(){let a=new Mn({destinationIdentities:[e],kind:Nn.RELIABLE,value:{case:`rpcRequest`,value:new Un({id:t,method:n,payload:r,responseTimeoutMs:i,version:1})}});yield this.engine.sendDataPacket(a,Nn.RELIABLE)})}handleParticipantDisconnected(e){for(let[t,{participantIdentity:n}]of this.pendingAcks)n===e&&this.pendingAcks.delete(t);for(let[t,{participantIdentity:n,resolve:r}]of this.pendingResponses)n===e&&(r(null,sl.builtIn(`RECIPIENT_DISCONNECTED`)),this.pendingResponses.delete(t))}setEnabledPublishCodecs(e){this.enabledPublishVideoCodecs=e.filter(e=>e.mime.split(`/`)[0].toLowerCase()===`video`)}updateInfo(e){return super.updateInfo(e)?(e.tracks.forEach(e=>{let t=this.trackPublications.get(e.sid);if(t){let n=t.isMuted||(t.track?.isUpstreamPaused??!1);n!==e.muted&&(this.log.debug(`updating server mute state after reconcile`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(t)),{mutedOnServer:n})),this.engine.client.sendMuteTrack(e.sid,n))}}),!0):!1}setActiveAgent(e){var t,n,r,i;this.firstActiveAgent=e,e&&!this.firstActiveAgent&&(this.firstActiveAgent=e),e?(n=(t=this.activeAgentFuture)?.resolve)==null||n.call(t,e):(i=(r=this.activeAgentFuture)?.reject)==null||i.call(r,Error(`Agent disconnected`)),this.activeAgentFuture=void 0}waitUntilActiveAgentPresent(){return this.firstActiveAgent?Promise.resolve(this.firstActiveAgent):(this.activeAgentFuture||=new _s,this.activeAgentFuture.promise)}getPublicationForTrack(e){let t;return this.trackPublications.forEach(n=>{let r=n.track;r&&(e instanceof MediaStreamTrack?(js(r)||As(r))&&r.mediaStreamTrack===e&&(t=n):e===r&&(t=n))}),t}waitForPendingPublicationOfSource(e){return k(this,void 0,void 0,function*(){let t=Date.now();for(;Date.now()<t+1e4;){let t=Array.from(this.pendingPublishPromises.entries()).find(t=>{let[n]=t;return n.source===e});if(t)return t[1];yield Lo(20)}})}},wu=class extends hu{constructor(e,t,n,r){super(e,t.sid,t.name,r),this.track=void 0,this.allowed=!0,this.requestedDisabled=void 0,this.visible=!0,this.handleEnded=e=>{this.setTrack(void 0),this.emit(N.Ended,e)},this.handleVisibilityChange=e=>{this.log.debug(`adaptivestream video visibility ${this.trackSid}, visible=${e}`,this.logContext),this.visible=e,this.emitTrackUpdate()},this.handleVideoDimensionsChange=e=>{this.log.debug(`adaptivestream video dimensions ${e.width}x${e.height}`,this.logContext),this.videoDimensionsAdaptiveStream=e,this.emitTrackUpdate()},this.subscribed=n,this.updateInfo(t)}setSubscribed(e){let t=this.subscriptionStatus,n=this.permissionStatus;this.subscribed=e,e&&(this.allowed=!0);let r=new wr({trackSids:[this.trackSid],subscribe:this.subscribed,participantTracks:[new qn({participantSid:``,trackSids:[this.trackSid]})]});this.emit(N.UpdateSubscription,r),this.emitSubscriptionUpdateIfChanged(t),this.emitPermissionUpdateIfChanged(n)}get subscriptionStatus(){return this.subscribed===!1?hu.SubscriptionStatus.Unsubscribed:super.isSubscribed?hu.SubscriptionStatus.Subscribed:hu.SubscriptionStatus.Desired}get permissionStatus(){return this.allowed?hu.PermissionStatus.Allowed:hu.PermissionStatus.NotAllowed}get isSubscribed(){return this.subscribed===!1?!1:super.isSubscribed}get isDesired(){return this.subscribed!==!1}get isEnabled(){return this.requestedDisabled===void 0?this.isAdaptiveStream?this.visible:!0:!this.requestedDisabled}get isLocal(){return!1}setEnabled(e){!this.isManualOperationAllowed()||this.requestedDisabled===!e||(this.requestedDisabled=!e,this.emitTrackUpdate())}setVideoQuality(e){!this.isManualOperationAllowed()||this.requestedMaxQuality===e||(this.requestedMaxQuality=e,this.requestedVideoDimensions=void 0,this.emitTrackUpdate())}setVideoDimensions(e){this.isManualOperationAllowed()&&(this.requestedVideoDimensions?.width===e.width&&this.requestedVideoDimensions?.height===e.height||(Ps(this.track)&&(this.requestedVideoDimensions=e),this.requestedMaxQuality=void 0,this.emitTrackUpdate()))}setVideoFPS(e){this.isManualOperationAllowed()&&Ps(this.track)&&this.fps!==e&&(this.fps=e,this.emitTrackUpdate())}get videoQuality(){return this.requestedMaxQuality??xo.HIGH}setTrack(e){let t=this.subscriptionStatus,n=this.permissionStatus,r=this.track;r!==e&&(r&&(r.off(N.VideoDimensionsChanged,this.handleVideoDimensionsChange),r.off(N.VisibilityChanged,this.handleVisibilityChange),r.off(N.Ended,this.handleEnded),r.detach(),r.stopMonitor(),this.emit(N.Unsubscribed,r)),super.setTrack(e),e&&(e.sid=this.trackSid,e.on(N.VideoDimensionsChanged,this.handleVideoDimensionsChange),e.on(N.VisibilityChanged,this.handleVisibilityChange),e.on(N.Ended,this.handleEnded),this.emit(N.Subscribed,e)),this.emitPermissionUpdateIfChanged(n),this.emitSubscriptionUpdateIfChanged(t))}setAllowed(e){let t=this.subscriptionStatus,n=this.permissionStatus;this.allowed=e,this.emitPermissionUpdateIfChanged(n),this.emitSubscriptionUpdateIfChanged(t)}setSubscriptionError(e){this.emit(N.SubscriptionFailed,e)}updateInfo(e){super.updateInfo(e);let t=this.metadataMuted;this.metadataMuted=e.muted,this.track?this.track.setMuted(e.muted):t!==e.muted&&this.emit(e.muted?N.Muted:N.Unmuted)}emitSubscriptionUpdateIfChanged(e){let t=this.subscriptionStatus;e!==t&&this.emit(N.SubscriptionStatusChanged,t,e)}emitPermissionUpdateIfChanged(e){this.permissionStatus!==e&&this.emit(N.SubscriptionPermissionChanged,this.permissionStatus,e)}isManualOperationAllowed(){return this.isDesired?!0:(this.log.warn(`cannot update track settings when not subscribed`,this.logContext),!1)}get isAdaptiveStream(){return Ps(this.track)&&this.track.isAdaptiveStream}emitTrackUpdate(){let e=new Tr({trackSids:[this.trackSid],disabled:!this.isEnabled,fps:this.fps});if(this.kind===P.Kind.Video){let t=this.requestedVideoDimensions;if(this.videoDimensionsAdaptiveStream!==void 0)if(t)$s(this.videoDimensionsAdaptiveStream,t)&&(this.log.debug(`using adaptive stream dimensions instead of requested`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream);else if(this.requestedMaxQuality!==void 0&&this.trackInfo){let e=ec(this.trackInfo,this.requestedMaxQuality);e&&$s(this.videoDimensionsAdaptiveStream,e)&&(this.log.debug(`using adaptive stream dimensions instead of max quality layer`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream)}else this.log.debug(`using adaptive stream dimensions`,Object.assign(Object.assign({},this.logContext),this.videoDimensionsAdaptiveStream)),t=this.videoDimensionsAdaptiveStream;t?(e.width=Math.ceil(t.width),e.height=Math.ceil(t.height)):this.requestedMaxQuality===void 0?(this.log.debug(`using default quality`,Object.assign(Object.assign({},this.logContext),{quality:xo.HIGH})),e.quality=xo.HIGH):(this.log.debug(`using requested max quality`,Object.assign(Object.assign({},this.logContext),{quality:this.requestedMaxQuality})),e.quality=this.requestedMaxQuality)}this.emit(N.UpdateSettings,e)}},Tu=class e extends xu{static fromParticipantInfo(t,n,r){return new e(t,n.sid,n.identity,n.name,n.metadata,n.attributes,r,n.kind)}get logContext(){return Object.assign(Object.assign({},super.logContext),{rpID:this.sid,remoteParticipant:this.identity})}constructor(e,t,n,r,i,a,o){let s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:Tn.STANDARD;super(t,n||``,r,i,a,o,s),this.signalClient=e,this.trackPublications=new Map,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.volumeMap=new Map}addTrackPublication(e){super.addTrackPublication(e),e.on(N.UpdateSettings,t=>{this.log.debug(`send update settings`,Object.assign(Object.assign(Object.assign({},this.logContext),Js(e)),{settings:t})),this.signalClient.sendUpdateTrackSettings(t)}),e.on(N.UpdateSubscription,e=>{e.participantTracks.forEach(e=>{e.participantSid=this.sid}),this.signalClient.sendUpdateSubscription(e)}),e.on(N.SubscriptionPermissionChanged,t=>{this.emit(j.TrackSubscriptionPermissionChanged,e,t)}),e.on(N.SubscriptionStatusChanged,t=>{this.emit(j.TrackSubscriptionStatusChanged,e,t)}),e.on(N.Subscribed,t=>{this.emit(j.TrackSubscribed,t,e)}),e.on(N.Unsubscribed,t=>{this.emit(j.TrackUnsubscribed,t,e)}),e.on(N.SubscriptionFailed,t=>{this.emit(j.TrackSubscriptionFailed,e.trackSid,t)})}getTrackPublication(e){let t=super.getTrackPublication(e);if(t)return t}getTrackPublicationByName(e){let t=super.getTrackPublicationByName(e);if(t)return t}setVolume(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P.Source.Microphone;this.volumeMap.set(t,e);let n=this.getTrackPublication(t);n&&n.track&&n.track.setVolume(e)}getVolume(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:P.Source.Microphone,t=this.getTrackPublication(e);return t&&t.track?t.track.getVolume():this.volumeMap.get(e)}addSubscribedMediaTrack(e,t,n,r,i,a){let o=this.getTrackPublicationBySid(t);if(o||t.startsWith(`TR`)||this.trackPublications.forEach(t=>{!o&&e.kind===t.kind.toString()&&(o=t)}),!o){if(a===0){this.log.error(`could not find published track`,Object.assign(Object.assign({},this.logContext),{trackSid:t})),this.emit(j.TrackSubscriptionFailed,t);return}a===void 0&&(a=20),setTimeout(()=>{this.addSubscribedMediaTrack(e,t,n,r,i,a-1)},150);return}if(e.readyState===`ended`){this.log.error(`unable to subscribe because MediaStreamTrack is ended. Do not call MediaStreamTrack.stop()`,Object.assign(Object.assign({},this.logContext),Js(o))),this.emit(j.TrackSubscriptionFailed,t);return}let s=e.kind===`video`,c;return c=s?new du(e,t,r,i):new lu(e,t,r,this.audioContext,this.audioOutput),c.source=o.source,c.isMuted=o.isMuted,c.setMediaStream(n),c.start(),o.setTrack(c),this.volumeMap.has(o.source)&&Ms(c)&&Os(c)&&c.setVolume(this.volumeMap.get(o.source)),o}get hasMetadata(){return!!this.participantInfo}getTrackPublicationBySid(e){return this.trackPublications.get(e)}updateInfo(e){if(!super.updateInfo(e))return!1;let t=new Map,n=new Map;return e.tracks.forEach(e=>{let r=this.getTrackPublicationBySid(e.sid);if(r)r.updateInfo(e);else{let t=P.kindFromProto(e.type);if(!t)return;r=new wu(t,e,this.signalClient.connectOptions?.autoSubscribe,{loggerContextCb:()=>this.logContext,loggerName:this.loggerOptions?.loggerName}),r.updateInfo(e),n.set(e.sid,r);let i=Array.from(this.trackPublications.values()).find(e=>e.source===r?.source);i&&r.source!==P.Source.Unknown&&this.log.debug(`received a second track publication for ${this.identity} with the same source: ${r.source}`,Object.assign(Object.assign({},this.logContext),{oldTrack:Js(i),newTrack:Js(r)})),this.addTrackPublication(r)}t.set(e.sid,r)}),this.trackPublications.forEach(e=>{t.has(e.trackSid)||(this.log.trace(`detected removed track on remote participant, unpublishing`,Object.assign(Object.assign({},this.logContext),Js(e))),this.unpublishTrack(e.trackSid,!0))}),n.forEach(e=>{this.emit(j.TrackPublished,e)}),!0}unpublishTrack(e,t){let n=this.trackPublications.get(e);if(!n)return;let{track:r}=n;switch(r&&(r.stop(),n.setTrack(void 0)),this.trackPublications.delete(e),n.kind){case P.Kind.Audio:this.audioTrackPublications.delete(e);break;case P.Kind.Video:this.videoTrackPublications.delete(e);break}t&&this.emit(j.TrackUnpublished,n)}setAudioOutput(e){return k(this,void 0,void 0,function*(){this.audioOutput=e;let t=[];this.audioTrackPublications.forEach(n=>{Os(n.track)&&Ms(n.track)&&t.push(n.track.setSinkId(e.deviceId??`default`))}),yield Promise.all(t)})}emit(e){var t=[...arguments].slice(1);return this.log.trace(`participant event`,Object.assign(Object.assign({},this.logContext),{event:e,args:t})),super.emit(e,...t)}},Eu;(function(e){e.Disconnected=`disconnected`,e.Connecting=`connecting`,e.Connected=`connected`,e.Reconnecting=`reconnecting`,e.SignalReconnecting=`signalReconnecting`})(Eu||={});var Du=4*1e3,Ou=class e extends Ai.EventEmitter{get hasE2EESetup(){return this.e2eeManager!==void 0}constructor(t){var n,r;if(super(),n=this,this.state=Eu.Disconnected,this.activeSpeakers=[],this.isE2EEEnabled=!1,this.audioEnabled=!0,this.isVideoPlaybackBlocked=!1,this.log=vi,this.bufferedEvents=[],this.isResuming=!1,this.rpcHandlers=new Map,this.connect=(e,t,n)=>k(this,void 0,void 0,function*(){if(!Wo())throw es()?Error(`WebRTC isn't detected, have you called registerGlobals?`):Error(`LiveKit doesn't seem to be supported on this browser. Try to update your browser and make sure no browser extensions are disabling webRTC.`);let r=yield this.disconnectLock.lock();if(this.state===Eu.Connected)return this.log.info(`already connected to room ${this.name}`,this.logContext),r(),Promise.resolve();if(this.connectFuture)return r(),this.connectFuture.promise;this.setAndEmitConnectionState(Eu.Connecting),this.regionUrlProvider?.getServerUrl().toString()!==e&&(this.regionUrl=void 0,this.regionUrlProvider=void 0),ts(new URL(e))&&(this.regionUrlProvider===void 0?this.regionUrlProvider=new al(e,t):this.regionUrlProvider.updateToken(t),this.regionUrlProvider.fetchRegionSettings().then(e=>{var t;(t=this.regionUrlProvider)==null||t.setServerReportedRegions(e)}).catch(e=>{this.log.warn(`could not fetch region settings`,Object.assign(Object.assign({},this.logContext),{error:e}))}));let i=(a,o,s)=>k(this,void 0,void 0,function*(){this.abortController&&this.abortController.abort();let c=new AbortController;this.abortController=c,r?.();try{if(yield ic.getInstance().getBackOffPromise(e),c.signal.aborted)throw new Za(`Connection attempt aborted`,Xa.Cancelled);yield this.attemptConnection(s??e,t,n,c),this.abortController=void 0,a()}catch(t){if(this.regionUrlProvider&&t instanceof Za&&t.reason!==Xa.Cancelled&&t.reason!==Xa.NotAllowed){let n=null;try{this.log.debug(`Fetching next region`),n=yield this.regionUrlProvider.getNextBestRegionUrl(this.abortController?.signal)}catch(e){if(e instanceof Za&&(e.status===401||e.reason===Xa.Cancelled)){this.handleDisconnect(this.options.stopLocalTrackOnUnpublish),o(e);return}}[Xa.InternalError,Xa.ServerUnreachable,Xa.Timeout].includes(t.reason)&&(this.log.debug(`Adding failed connection attempt to back off`),ic.getInstance().addFailedConnectionAttempt(e)),n&&!this.abortController?.signal.aborted?(this.log.info(`Initial connection failed with ConnectionError: ${t.message}. Retrying with another region: ${n}`,this.logContext),this.recreateEngine(),yield i(a,o,n)):(this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,ws(t)),o(t))}else{let e=gn.UNKNOWN_REASON;t instanceof Za&&(e=ws(t)),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e),o(t)}}}),a=this.regionUrl;return this.regionUrl=void 0,this.connectFuture=new _s((e,t)=>{i(e,t,a)},()=>{this.clearConnectionFutures()}),this.connectFuture.promise}),this.connectSignal=(e,t,n,r,i,a)=>k(this,void 0,void 0,function*(){let o=yield n.join(e,t,{autoSubscribe:r.autoSubscribe,adaptiveStream:typeof i.adaptiveStream==`object`?!0:i.adaptiveStream,maxRetries:r.maxRetries,e2eeEnabled:!!this.e2eeManager,websocketTimeout:r.websocketTimeout,singlePeerConnection:i.singlePeerConnection},a.signal),s=o.serverInfo;if(s||={version:o.serverVersion,region:o.serverRegion},this.serverInfo=s,this.log.debug(`connected to Livekit Server ${Object.entries(s).map(e=>{let[t,n]=e;return`${t}: ${n}`}).join(`, `)}`,{room:o.room?.name,roomSid:o.room?.sid,identity:o.participant?.identity}),!s.version)throw new eo(`unknown server version`);return s.version===`0.15.1`&&this.options.dynacast&&(this.log.debug(`disabling dynacast due to server version`,this.logContext),i.dynacast=!1),o}),this.applyJoinResponse=e=>{let t=e.participant;if(this.localParticipant.sid=t.sid,this.localParticipant.identity=t.identity,this.localParticipant.setEnabledPublishCodecs(e.enabledPublishCodecs),this.e2eeManager)try{this.e2eeManager.setSifTrailer(e.sifTrailer)}catch(e){this.log.error(e instanceof Error?e.message:`Could not set SifTrailer`,Object.assign(Object.assign({},this.logContext),{error:e}))}this.handleParticipantUpdates([t,...e.otherParticipants]),e.room&&this.handleRoomUpdate(e.room)},this.attemptConnection=(e,t,n,r)=>k(this,void 0,void 0,function*(){this.state===Eu.Reconnecting||this.isResuming||this.engine?.pendingReconnect?(this.log.info(`Reconnection attempt replaced by new connection attempt`,this.logContext),this.recreateEngine()):this.maybeCreateEngine(),this.regionUrlProvider?.isCloud()&&this.engine.setRegionUrlProvider(this.regionUrlProvider),this.acquireAudioContext(),this.connOptions=Object.assign(Object.assign({},el),n),this.connOptions.rtcConfig&&(this.engine.rtcConfig=this.connOptions.rtcConfig),this.connOptions.peerConnectionTimeout&&(this.engine.peerConnectionTimeout=this.connOptions.peerConnectionTimeout);try{let n=yield this.connectSignal(e,t,this.engine,this.connOptions,this.options,r);this.applyJoinResponse(n),this.setupLocalParticipantEvents(),this.emit(A.SignalConnected)}catch(e){yield this.engine.close(),this.recreateEngine();let t=new Za(`could not establish signal connection`,r.signal.aborted?Xa.Cancelled:Xa.ServerUnreachable);throw e instanceof Error&&(t.message=`${t.message}: ${e.message}`),e instanceof Za&&(t.reason=e.reason,t.status=e.status),this.log.debug(`error trying to establish signal connection`,Object.assign(Object.assign({},this.logContext),{error:e})),t}if(r.signal.aborted)throw yield this.engine.close(),this.recreateEngine(),new Za(`Connection attempt aborted`,Xa.Cancelled);try{yield this.engine.waitForPCInitialConnection(this.connOptions.peerConnectionTimeout,r)}catch(e){throw yield this.engine.close(),this.recreateEngine(),e}$o()&&this.options.disconnectOnPageLeave&&(window.addEventListener(`pagehide`,this.onPageLeave),window.addEventListener(`beforeunload`,this.onPageLeave)),$o()&&document.addEventListener(`freeze`,this.onPageLeave),this.setAndEmitConnectionState(Eu.Connected),this.emit(A.Connected),ic.getInstance().resetFailedConnectionAttempts(e),this.registerConnectionReconcile(),this.regionUrlProvider&&this.regionUrlProvider.notifyConnected()}),this.disconnect=function(){return k(n,[...arguments],void 0,function(){var e=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var n,r,i;let a=yield e.disconnectLock.lock();try{if(e.state===Eu.Disconnected){e.log.debug(`already disconnected`,e.logContext);return}if(e.log.info(`disconnect from room`,Object.assign({},e.logContext)),e.state===Eu.Connecting||e.state===Eu.Reconnecting||e.isResuming){let t=`Abort connection attempt due to user initiated disconnect`;e.log.warn(t,e.logContext),(n=e.abortController)==null||n.abort(t),(i=(r=e.connectFuture)?.reject)==null||i.call(r,new Za(`Client initiated disconnect`,Xa.Cancelled)),e.connectFuture=void 0}e.engine&&(e.engine.client.isDisconnected||(yield e.engine.client.sendLeave()),yield e.engine.close()),e.handleDisconnect(t,gn.CLIENT_INITIATED),e.engine=void 0}finally{a()}}()})},this.onPageLeave=()=>k(this,void 0,void 0,function*(){this.log.info(`Page leave detected, disconnecting`,this.logContext),yield this.disconnect()}),this.startAudio=()=>k(this,void 0,void 0,function*(){let e=[],t=po();if(t&&t.os===`iOS`){let t=`livekit-dummy-audio-el`,n=document.getElementById(t);if(!n){n=document.createElement(`audio`),n.id=t,n.autoplay=!0,n.hidden=!0;let e=gs();e.enabled=!0;let r=new MediaStream([e]);n.srcObject=r,document.addEventListener(`visibilitychange`,()=>{n&&(n.srcObject=document.hidden?null:r,document.hidden||(this.log.debug(`page visible again, triggering startAudio to resume playback and update playback status`,this.logContext),this.startAudio()))}),document.body.append(n),this.once(A.Disconnected,()=>{n?.remove(),n=null})}e.push(n)}this.remoteParticipants.forEach(t=>{t.audioTrackPublications.forEach(t=>{t.track&&t.track.attachedElements.forEach(t=>{e.push(t)})})});try{yield Promise.all([this.acquireAudioContext(),...e.map(e=>(e.muted=!1,e.play()))]),this.handleAudioPlaybackStarted()}catch(e){throw this.handleAudioPlaybackFailed(e),e}}),this.startVideo=()=>k(this,void 0,void 0,function*(){let e=[];for(let t of this.remoteParticipants.values())t.videoTrackPublications.forEach(t=>{var n;(n=t.track)==null||n.attachedElements.forEach(t=>{e.includes(t)||e.push(t)})});yield Promise.all(e.map(e=>e.play())).then(()=>{this.handleVideoPlaybackStarted()}).catch(e=>{e.name===`NotAllowedError`?this.handleVideoPlaybackFailed():this.log.warn("Resuming video playback failed, make sure you call `startVideo` directly in a user gesture handler",this.logContext)})}),this.handleRestarting=()=>{this.clearConnectionReconcile(),this.isResuming=!1;for(let e of this.remoteParticipants.values())this.handleParticipantDisconnected(e.identity,e);this.setAndEmitConnectionState(Eu.Reconnecting)&&this.emit(A.Reconnecting)},this.handleSignalRestarted=e=>k(this,void 0,void 0,function*(){this.log.debug(`signal reconnected to server, region ${e.serverRegion}`,Object.assign(Object.assign({},this.logContext),{region:e.serverRegion})),this.bufferedEvents=[],this.applyJoinResponse(e);try{yield this.localParticipant.republishAllTracks(void 0,!0)}catch(e){this.log.error(`error trying to re-publish tracks after reconnection`,Object.assign(Object.assign({},this.logContext),{error:e}))}try{yield this.engine.waitForRestarted(),this.log.debug(`fully reconnected to server`,Object.assign(Object.assign({},this.logContext),{region:e.serverRegion}))}catch{return}this.setAndEmitConnectionState(Eu.Connected),this.emit(A.Reconnected),this.registerConnectionReconcile(),this.emitBufferedEvents()}),this.handleParticipantUpdates=e=>{e.forEach(e=>{if(e.identity===this.localParticipant.identity){this.localParticipant.updateInfo(e);return}e.identity===``&&(e.identity=this.sidToIdentity.get(e.sid)??``);let t=this.remoteParticipants.get(e.identity);e.state===wn.DISCONNECTED?this.handleParticipantDisconnected(e.identity,t):t=this.getOrCreateParticipant(e.identity,e)})},this.handleActiveSpeakersUpdate=e=>{let t=[],n={};e.forEach(e=>{if(n[e.sid]=!0,e.sid===this.localParticipant.sid)this.localParticipant.audioLevel=e.level,this.localParticipant.setIsSpeaking(!0),t.push(this.localParticipant);else{let n=this.getRemoteParticipantBySid(e.sid);n&&(n.audioLevel=e.level,n.setIsSpeaking(!0),t.push(n))}}),n[this.localParticipant.sid]||(this.localParticipant.audioLevel=0,this.localParticipant.setIsSpeaking(!1)),this.remoteParticipants.forEach(e=>{n[e.sid]||(e.audioLevel=0,e.setIsSpeaking(!1))}),this.activeSpeakers=t,this.emitWhenConnected(A.ActiveSpeakersChanged,t)},this.handleSpeakersChanged=e=>{let t=new Map;this.activeSpeakers.forEach(e=>{let n=this.remoteParticipants.get(e.identity);n&&n.sid!==e.sid||t.set(e.sid,e)}),e.forEach(e=>{let n=this.getRemoteParticipantBySid(e.sid);e.sid===this.localParticipant.sid&&(n=this.localParticipant),n&&(n.audioLevel=e.level,n.setIsSpeaking(e.active),e.active?t.set(e.sid,n):t.delete(e.sid))});let n=Array.from(t.values());n.sort((e,t)=>t.audioLevel-e.audioLevel),this.activeSpeakers=n,this.emitWhenConnected(A.ActiveSpeakersChanged,n)},this.handleStreamStateUpdate=e=>{e.streamStates.forEach(e=>{let t=this.getRemoteParticipantBySid(e.participantSid);if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);if(!n||!n.track)return;let r=P.streamStateFromProto(e.state);n.track.setStreamState(r),r!==n.track.streamState&&(t.emit(j.TrackStreamStateChanged,n,n.track.streamState),this.emitWhenConnected(A.TrackStreamStateChanged,n,n.track.streamState,t))})},this.handleSubscriptionPermissionUpdate=e=>{let t=this.getRemoteParticipantBySid(e.participantSid);if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);n&&n.setAllowed(e.allowed)},this.handleSubscriptionError=e=>{let t=Array.from(this.remoteParticipants.values()).find(t=>t.trackPublications.has(e.trackSid));if(!t)return;let n=t.getTrackPublicationBySid(e.trackSid);n&&n.setSubscriptionError(e.err)},this.handleDataPacket=(e,t)=>{let n=this.remoteParticipants.get(e.participantIdentity);if(e.value.case===`user`)this.handleUserPacket(n,e.value.value,e.kind,t);else if(e.value.case===`transcription`)this.handleTranscription(n,e.value.value);else if(e.value.case===`sipDtmf`)this.handleSipDtmf(n,e.value.value);else if(e.value.case===`chatMessage`)this.handleChatMessage(n,e.value.value);else if(e.value.case===`metrics`)this.handleMetrics(e.value.value,n);else if(e.value.case===`streamHeader`||e.value.case===`streamChunk`||e.value.case===`streamTrailer`)this.handleDataStream(e,t);else if(e.value.case===`rpcRequest`){let t=e.value.value;this.handleIncomingRpcRequest(e.participantIdentity,t.id,t.method,t.payload,t.responseTimeoutMs,t.version)}},this.handleUserPacket=(e,t,n,r)=>{this.emit(A.DataReceived,t.payload,e,n,t.topic,r),e?.emit(j.DataReceived,t.payload,n,r)},this.handleSipDtmf=(e,t)=>{this.emit(A.SipDTMFReceived,t,e),e?.emit(j.SipDTMFReceived,t)},this.handleTranscription=(e,t)=>{let n=t.transcribedParticipantIdentity===this.localParticipant.identity?this.localParticipant:this.getParticipantByIdentity(t.transcribedParticipantIdentity),r=n?.trackPublications.get(t.trackId),i=Ss(t,this.transcriptionReceivedTimes);r?.emit(N.TranscriptionReceived,i),n?.emit(j.TranscriptionReceived,i,r),this.emit(A.TranscriptionReceived,i,n,r)},this.handleChatMessage=(e,t)=>{let n=Cs(t);this.emit(A.ChatMessage,n,e)},this.handleMetrics=(e,t)=>{this.emit(A.MetricsReceived,e,t)},this.handleDataStream=(e,t)=>{this.incomingDataStreamManager.handleDataStreamPacket(e,t)},this.bufferedSegments=new Map,this.handleAudioPlaybackStarted=()=>{this.canPlaybackAudio||(this.audioEnabled=!0,this.emit(A.AudioPlaybackStatusChanged,!0))},this.handleAudioPlaybackFailed=e=>{this.log.warn(`could not playback audio`,Object.assign(Object.assign({},this.logContext),{error:e})),this.canPlaybackAudio&&(this.audioEnabled=!1,this.emit(A.AudioPlaybackStatusChanged,!1))},this.handleVideoPlaybackStarted=()=>{this.isVideoPlaybackBlocked&&(this.isVideoPlaybackBlocked=!1,this.emit(A.VideoPlaybackStatusChanged,!0))},this.handleVideoPlaybackFailed=()=>{this.isVideoPlaybackBlocked||(this.isVideoPlaybackBlocked=!0,this.emit(A.VideoPlaybackStatusChanged,!1))},this.handleDeviceChange=()=>k(this,void 0,void 0,function*(){po()?.os!==`iOS`&&(yield this.selectDefaultDevices()),this.emit(A.MediaDevicesChanged)}),this.handleRoomUpdate=e=>{let t=this.roomInfo;this.roomInfo=e,t&&t.metadata!==e.metadata&&this.emitWhenConnected(A.RoomMetadataChanged,e.metadata),t?.activeRecording!==e.activeRecording&&this.emitWhenConnected(A.RecordingStatusChanged,e.activeRecording)},this.handleConnectionQualityUpdate=e=>{e.updates.forEach(e=>{if(e.participantSid===this.localParticipant.sid){this.localParticipant.setConnectionQuality(e.quality);return}let t=this.getRemoteParticipantBySid(e.participantSid);t&&t.setConnectionQuality(e.quality)})},this.onLocalParticipantMetadataChanged=e=>{this.emit(A.ParticipantMetadataChanged,e,this.localParticipant)},this.onLocalParticipantNameChanged=e=>{this.emit(A.ParticipantNameChanged,e,this.localParticipant)},this.onLocalAttributesChanged=e=>{this.emit(A.ParticipantAttributesChanged,e,this.localParticipant)},this.onLocalTrackMuted=e=>{this.emit(A.TrackMuted,e,this.localParticipant)},this.onLocalTrackUnmuted=e=>{this.emit(A.TrackUnmuted,e,this.localParticipant)},this.onTrackProcessorUpdate=e=>{var t;(t=e?.onPublish)==null||t.call(e,this)},this.onLocalTrackPublished=e=>k(this,void 0,void 0,function*(){var t,n,r,i;(t=e.track)==null||t.on(N.TrackProcessorUpdate,this.onTrackProcessorUpdate),(n=e.track)==null||n.on(N.Restarted,this.onLocalTrackRestarted),(i=(r=e.track?.getProcessor())?.onPublish)==null||i.call(r,this),this.emit(A.LocalTrackPublished,e,this.localParticipant),js(e.track)&&(yield e.track.checkForSilence())&&this.emit(A.LocalAudioSilenceDetected,e);let a=yield e.track?.getDeviceId(!1),o=Ws(e.source);o&&a&&a!==this.localParticipant.activeDeviceMap.get(o)&&(this.localParticipant.activeDeviceMap.set(o,a),this.emit(A.ActiveDeviceChanged,o,a))}),this.onLocalTrackUnpublished=e=>{var t,n;(t=e.track)==null||t.off(N.TrackProcessorUpdate,this.onTrackProcessorUpdate),(n=e.track)==null||n.off(N.Restarted,this.onLocalTrackRestarted),this.emit(A.LocalTrackUnpublished,e,this.localParticipant)},this.onLocalTrackRestarted=e=>k(this,void 0,void 0,function*(){let t=yield e.getDeviceId(!1),n=Ws(e.source);n&&t&&t!==this.localParticipant.activeDeviceMap.get(n)&&(this.log.debug(`local track restarted, setting ${n} ${t} active`,this.logContext),this.localParticipant.activeDeviceMap.set(n,t),this.emit(A.ActiveDeviceChanged,n,t))}),this.onLocalConnectionQualityChanged=e=>{this.emit(A.ConnectionQualityChanged,e,this.localParticipant)},this.onMediaDevicesError=(e,t)=>{this.emit(A.MediaDevicesError,e,t)},this.onLocalParticipantPermissionsChanged=e=>{this.emit(A.ParticipantPermissionsChanged,e,this.localParticipant)},this.onLocalChatMessageSent=e=>{this.emit(A.ChatMessage,e,this.localParticipant)},this.setMaxListeners(100),this.remoteParticipants=new Map,this.sidToIdentity=new Map,this.options=Object.assign(Object.assign({},$c),t),this.log=yi(this.options.loggerName??_i.Room),this.transcriptionReceivedTimes=new Map,this.options.audioCaptureDefaults=Object.assign(Object.assign({},Zc),t?.audioCaptureDefaults),this.options.videoCaptureDefaults=Object.assign(Object.assign({},Qc),t?.videoCaptureDefaults),this.options.publishDefaults=Object.assign(Object.assign({},Xc),t?.publishDefaults),this.maybeCreateEngine(),this.incomingDataStreamManager=new nu,this.outgoingDataStreamManager=new su(this.engine,this.log),this.disconnectLock=new le,this.localParticipant=new Cu(``,``,this.engine,this.options,this.rpcHandlers,this.outgoingDataStreamManager),(this.options.e2ee||this.options.encryption)&&this.setupE2EE(),this.engine.e2eeManager=this.e2eeManager,this.options.videoCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set(`videoinput`,ys(this.options.videoCaptureDefaults.deviceId)),this.options.audioCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set(`audioinput`,ys(this.options.audioCaptureDefaults.deviceId)),this.options.audioOutput?.deviceId&&this.switchActiveDevice(`audiooutput`,ys(this.options.audioOutput.deviceId)).catch(e=>this.log.warn(`Could not set audio output: ${e.message}`,this.logContext)),$o()){let t=new AbortController;(r=navigator.mediaDevices)==null||r.addEventListener(`devicechange`,this.handleDeviceChange,{signal:t.signal}),e.cleanupRegistry&&e.cleanupRegistry.register(this,()=>{t.abort()})}}registerTextStreamHandler(e,t){return this.incomingDataStreamManager.registerTextStreamHandler(e,t)}unregisterTextStreamHandler(e){return this.incomingDataStreamManager.unregisterTextStreamHandler(e)}registerByteStreamHandler(e,t){return this.incomingDataStreamManager.registerByteStreamHandler(e,t)}unregisterByteStreamHandler(e){return this.incomingDataStreamManager.unregisterByteStreamHandler(e)}registerRpcMethod(e,t){if(this.rpcHandlers.has(e))throw Error(`RPC handler already registered for method ${e}, unregisterRpcMethod before trying to register again`);this.rpcHandlers.set(e,t)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setE2EEEnabled(e){return k(this,void 0,void 0,function*(){if(this.e2eeManager)yield Promise.all([this.localParticipant.setE2EEEnabled(e)]),this.localParticipant.identity!==``&&this.e2eeManager.setParticipantCryptorEnabled(e,this.localParticipant.identity);else throw Error(`e2ee not configured, please set e2ee settings within the room options`)})}setupE2EE(){var e;let t=!!this.options.encryption,n=this.options.encryption||this.options.e2ee;n&&(`e2eeManager`in n?(this.e2eeManager=n.e2eeManager,this.e2eeManager.isDataChannelEncryptionEnabled=t):this.e2eeManager=new tc(n,t),this.e2eeManager.on(Ua.ParticipantEncryptionStatusChanged,(e,t)=>{Fs(t)&&(this.isE2EEEnabled=e),this.emit(A.ParticipantEncryptionStatusChanged,e,t)}),this.e2eeManager.on(Ua.EncryptionError,(e,t)=>{let n=t?this.getParticipantByIdentity(t):void 0;this.emit(A.EncryptionError,e,n)}),(e=this.e2eeManager)==null||e.setup(this))}get logContext(){return{room:this.name,roomID:this.roomInfo?.sid,participant:this.localParticipant.identity,pID:this.localParticipant.sid}}get isRecording(){return this.roomInfo?.activeRecording??!1}getSid(){return k(this,void 0,void 0,function*(){return this.state===Eu.Disconnected?``:this.roomInfo&&this.roomInfo.sid!==``?this.roomInfo.sid:new Promise((e,t)=>{let n=t=>{t.sid!==``&&(this.engine.off(M.RoomUpdate,n),e(t.sid))};this.engine.on(M.RoomUpdate,n),this.once(A.Disconnected,()=>{this.engine.off(M.RoomUpdate,n),t(`Room disconnected before room server id was available`)})})})}get name(){return this.roomInfo?.name??``}get metadata(){return this.roomInfo?.metadata}get numParticipants(){return this.roomInfo?.numParticipants??0}get numPublishers(){return this.roomInfo?.numPublishers??0}maybeCreateEngine(){this.engine&&!this.engine.isClosed||(this.engine=new Yl(this.options),this.engine.e2eeManager=this.e2eeManager,this.engine.on(M.ParticipantUpdate,this.handleParticipantUpdates).on(M.RoomUpdate,this.handleRoomUpdate).on(M.SpeakersChanged,this.handleSpeakersChanged).on(M.StreamStateChanged,this.handleStreamStateUpdate).on(M.ConnectionQualityUpdate,this.handleConnectionQualityUpdate).on(M.SubscriptionError,this.handleSubscriptionError).on(M.SubscriptionPermissionUpdate,this.handleSubscriptionPermissionUpdate).on(M.MediaTrackAdded,(e,t,n)=>{this.onTrackAdded(e,t,n)}).on(M.Disconnected,e=>{this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e)}).on(M.ActiveSpeakersUpdate,this.handleActiveSpeakersUpdate).on(M.DataPacketReceived,this.handleDataPacket).on(M.Resuming,()=>{this.clearConnectionReconcile(),this.isResuming=!0,this.log.info(`Resuming signal connection`,this.logContext),this.setAndEmitConnectionState(Eu.SignalReconnecting)&&this.emit(A.SignalReconnecting)}).on(M.Resumed,()=>{this.registerConnectionReconcile(),this.isResuming=!1,this.log.info(`Resumed signal connection`,this.logContext),this.updateSubscriptions(),this.emitBufferedEvents(),this.setAndEmitConnectionState(Eu.Connected)&&this.emit(A.Reconnected)}).on(M.SignalResumed,()=>{this.bufferedEvents=[],(this.state===Eu.Reconnecting||this.isResuming)&&this.sendSyncState()}).on(M.Restarting,this.handleRestarting).on(M.SignalRestarted,this.handleSignalRestarted).on(M.Offline,()=>{this.setAndEmitConnectionState(Eu.Reconnecting)&&this.emit(A.Reconnecting)}).on(M.DCBufferStatusChanged,(e,t)=>{this.emit(A.DCBufferStatusChanged,e,t)}).on(M.LocalTrackSubscribed,e=>{let t=this.localParticipant.getTrackPublications().find(t=>{let{trackSid:n}=t;return n===e});if(!t){this.log.warn(`could not find local track subscription for subscribed event`,this.logContext);return}this.localParticipant.emit(j.LocalTrackSubscribed,t),this.emitWhenConnected(A.LocalTrackSubscribed,t,this.localParticipant)}).on(M.RoomMoved,e=>{this.log.debug(`room moved`,e),e.room&&this.handleRoomUpdate(e.room),this.remoteParticipants.forEach((e,t)=>{this.handleParticipantDisconnected(t,e)}),this.emit(A.Moved,e.room.name),e.participant?this.handleParticipantUpdates([e.participant,...e.otherParticipants]):this.handleParticipantUpdates(e.otherParticipants)}),this.localParticipant&&this.localParticipant.setupEngine(this.engine),this.e2eeManager&&this.e2eeManager.setupEngine(this.engine),this.outgoingDataStreamManager&&this.outgoingDataStreamManager.setupEngine(this.engine))}static getLocalDevices(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return oc.getInstance().getDevices(e,t)}prepareConnection(e,t){return k(this,void 0,void 0,function*(){if(this.state===Eu.Disconnected){this.log.debug(`prepareConnection to ${e}`,this.logContext);try{if(ts(new URL(e))&&t){this.regionUrlProvider=new al(e,t);let n=yield this.regionUrlProvider.getNextBestRegionUrl();n&&this.state===Eu.Disconnected&&(this.regionUrl=n,yield fetch(xs(n),{method:`HEAD`}),this.log.debug(`prepared connection to ${n}`,this.logContext))}else yield fetch(xs(e),{method:`HEAD`})}catch(e){this.log.warn(`could not prepare connection`,Object.assign(Object.assign({},this.logContext),{error:e}))}}})}getParticipantByIdentity(e){return this.localParticipant.identity===e?this.localParticipant:this.remoteParticipants.get(e)}clearConnectionFutures(){this.connectFuture=void 0}simulateScenario(e,t){return k(this,void 0,void 0,function*(){let n=()=>k(this,void 0,void 0,function*(){}),r;switch(e){case`signal-reconnect`:yield this.engine.client.handleOnClose(`simulate disconnect`);break;case`speaker`:r=new Xr({scenario:{case:`speakerUpdate`,value:3}});break;case`node-failure`:r=new Xr({scenario:{case:`nodeFailure`,value:!0}});break;case`server-leave`:r=new Xr({scenario:{case:`serverLeave`,value:!0}});break;case`migration`:r=new Xr({scenario:{case:`migration`,value:!0}});break;case`resume-reconnect`:this.engine.failNext(),yield this.engine.client.handleOnClose(`simulate resume-disconnect`);break;case`disconnect-signal-on-resume`:n=()=>k(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose(`simulate resume-disconnect`)}),r=new Xr({scenario:{case:`disconnectSignalOnResume`,value:!0}});break;case`disconnect-signal-on-resume-no-messages`:n=()=>k(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose(`simulate resume-disconnect`)}),r=new Xr({scenario:{case:`disconnectSignalOnResumeNoMessages`,value:!0}});break;case`full-reconnect`:this.engine.fullReconnectOnNext=!0,yield this.engine.client.handleOnClose(`simulate full-reconnect`);break;case`force-tcp`:case`force-tls`:r=new Xr({scenario:{case:`switchCandidateProtocol`,value:e===`force-tls`?2:1}}),n=()=>k(this,void 0,void 0,function*(){let e=this.engine.client.onLeave;e&&e(new Or({reason:gn.CLIENT_INITIATED,action:kr.RECONNECT}))});break;case`subscriber-bandwidth`:if(t===void 0||typeof t!=`number`)throw Error(`subscriber-bandwidth requires a number as argument`);r=new Xr({scenario:{case:`subscriberBandwidth`,value:Es(t)}});break;case`leave-full-reconnect`:r=new Xr({scenario:{case:`leaveRequestFullReconnect`,value:!0}})}r&&(yield this.engine.client.sendSimulateScenario(r),yield n())})}get canPlaybackAudio(){return this.audioEnabled}get canPlaybackVideo(){return!this.isVideoPlaybackBlocked}getActiveDevice(e){return this.localParticipant.activeDeviceMap.get(e)}switchActiveDevice(e,t){return k(this,arguments,void 0,function(e,t){var n=this;let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return function*(){var i,a;let o=!0,s=!1,c=r?{exact:t}:t;if(e===`audioinput`){s=n.localParticipant.audioTrackPublications.size===0;let t=n.getActiveDevice(e)??n.options.audioCaptureDefaults.deviceId;n.options.audioCaptureDefaults.deviceId=c;let r=Array.from(n.localParticipant.audioTrackPublications.values()).filter(e=>e.source===P.Source.Microphone);try{o=(yield Promise.all(r.map(e=>e.audioTrack?.setDeviceId(c)))).every(e=>e===!0)}catch(e){throw n.options.audioCaptureDefaults.deviceId=t,e}let i=r.some(e=>e.track?.isMuted??!1);o&&i&&(s=!0)}else if(e===`videoinput`){s=n.localParticipant.videoTrackPublications.size===0;let t=n.getActiveDevice(e)??n.options.videoCaptureDefaults.deviceId;n.options.videoCaptureDefaults.deviceId=c;let r=Array.from(n.localParticipant.videoTrackPublications.values()).filter(e=>e.source===P.Source.Camera);try{o=(yield Promise.all(r.map(e=>e.videoTrack?.setDeviceId(c)))).every(e=>e===!0)}catch(e){throw n.options.videoCaptureDefaults.deviceId=t,e}let i=r.some(e=>e.track?.isMuted??!1);o&&i&&(s=!0)}else if(e===`audiooutput`){if(s=!0,!Uo()&&!n.options.webAudioMix||n.options.webAudioMix&&n.audioContext&&!(`setSinkId`in n.audioContext))throw Error(`cannot switch audio output, the current browser does not support it`);n.options.webAudioMix&&(t=(yield oc.getInstance().normalizeDeviceId(`audiooutput`,t))??``),(a=n.options).audioOutput??(a.audioOutput={});let r=n.getActiveDevice(e)??n.options.audioOutput.deviceId;n.options.audioOutput.deviceId=t;try{n.options.webAudioMix&&((i=n.audioContext)==null||i.setSinkId(t)),yield Promise.all(Array.from(n.remoteParticipants.values()).map(e=>e.setAudioOutput({deviceId:t})))}catch(e){throw n.options.audioOutput.deviceId=r,e}}return s&&(n.localParticipant.activeDeviceMap.set(e,t),n.emit(A.ActiveDeviceChanged,e,t)),o}()})}setupLocalParticipantEvents(){this.localParticipant.on(j.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).on(j.ParticipantNameChanged,this.onLocalParticipantNameChanged).on(j.AttributesChanged,this.onLocalAttributesChanged).on(j.TrackMuted,this.onLocalTrackMuted).on(j.TrackUnmuted,this.onLocalTrackUnmuted).on(j.LocalTrackPublished,this.onLocalTrackPublished).on(j.LocalTrackUnpublished,this.onLocalTrackUnpublished).on(j.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).on(j.MediaDevicesError,this.onMediaDevicesError).on(j.AudioStreamAcquired,this.startAudio).on(j.ChatMessage,this.onLocalChatMessageSent).on(j.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged)}recreateEngine(){var e;(e=this.engine)==null||e.close(),this.engine=void 0,this.isResuming=!1,this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.bufferedEvents=[],this.maybeCreateEngine()}onTrackAdded(e,t,n){if(this.state===Eu.Connecting||this.state===Eu.Reconnecting){let r=()=>{this.log.debug(`deferring on track for later`,{mediaTrackId:e.id,mediaStreamId:t.id,tracksInStream:t.getTracks().map(e=>e.id)}),this.onTrackAdded(e,t,n),i()},i=()=>{this.off(A.Reconnected,r),this.off(A.Connected,r),this.off(A.Disconnected,i)};this.once(A.Reconnected,r),this.once(A.Connected,r),this.once(A.Disconnected,i);return}if(this.state===Eu.Disconnected){this.log.warn(`skipping incoming track after Room disconnected`,this.logContext);return}if(e.readyState===`ended`){this.log.info(`skipping incoming track as it already ended`,this.logContext);return}let r=Io(t.id),i=r[0],a=r[1],o=e.id;if(a&&a.startsWith(`TR`)&&(o=a),i===this.localParticipant.sid){this.log.warn(`tried to create RemoteParticipant for local participant`,this.logContext);return}let s=Array.from(this.remoteParticipants.values()).find(e=>e.sid===i);if(!s){this.log.error(`Tried to add a track for a participant, that's not present. Sid: ${i}`,this.logContext);return}if(!o.startsWith(`TR`)){let e=this.engine.getTrackIdForReceiver(n);if(!e){this.log.error(`Tried to add a track whose 'sid' could not be found for a participant, that's not present. Sid: ${i}`,this.logContext);return}o=e}o.startsWith(`TR`)||this.log.warn(`Tried to add a track whose 'sid' could not be determined for a participant, that's not present. Sid: ${i}, streamId: ${a}, trackId: ${o}`,Object.assign(Object.assign({},this.logContext),{rpID:i,streamId:a,trackId:o}));let c;this.options.adaptiveStream&&(c=typeof this.options.adaptiveStream==`object`?this.options.adaptiveStream:{});let l=s.addSubscribedMediaTrack(e,o,t,n,c);l?.isEncrypted&&!this.e2eeManager&&this.emit(A.EncryptionError,Error(`Encrypted ${l.source} track received from participant ${s.sid}, but room does not have encryption enabled!`))}handleDisconnect(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;var n;if(this.clearConnectionReconcile(),this.isResuming=!1,this.bufferedEvents=[],this.transcriptionReceivedTimes.clear(),this.incomingDataStreamManager.clearControllers(),this.state!==Eu.Disconnected){this.regionUrl=void 0,this.regionUrlProvider&&this.regionUrlProvider.notifyDisconnected();try{this.remoteParticipants.forEach(e=>{e.trackPublications.forEach(t=>{e.unpublishTrack(t.trackSid)})}),this.localParticipant.trackPublications.forEach(t=>{var n,r,i;t.track&&this.localParticipant.unpublishTrack(t.track,e),e?((n=t.track)==null||n.detach(),(r=t.track)==null||r.stop()):(i=t.track)==null||i.stopMonitor()}),this.localParticipant.off(j.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).off(j.ParticipantNameChanged,this.onLocalParticipantNameChanged).off(j.AttributesChanged,this.onLocalAttributesChanged).off(j.TrackMuted,this.onLocalTrackMuted).off(j.TrackUnmuted,this.onLocalTrackUnmuted).off(j.LocalTrackPublished,this.onLocalTrackPublished).off(j.LocalTrackUnpublished,this.onLocalTrackUnpublished).off(j.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).off(j.MediaDevicesError,this.onMediaDevicesError).off(j.AudioStreamAcquired,this.startAudio).off(j.ChatMessage,this.onLocalChatMessageSent).off(j.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged),this.localParticipant.trackPublications.clear(),this.localParticipant.videoTrackPublications.clear(),this.localParticipant.audioTrackPublications.clear(),this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.activeSpeakers=[],this.audioContext&&typeof this.options.webAudioMix==`boolean`&&(this.audioContext.close(),this.audioContext=void 0),$o()&&(window.removeEventListener(`beforeunload`,this.onPageLeave),window.removeEventListener(`pagehide`,this.onPageLeave),window.removeEventListener(`freeze`,this.onPageLeave),(n=navigator.mediaDevices)==null||n.removeEventListener(`devicechange`,this.handleDeviceChange))}finally{this.setAndEmitConnectionState(Eu.Disconnected),this.emit(A.Disconnected,t)}}}handleParticipantDisconnected(e,t){var n;this.remoteParticipants.delete(e),t&&(this.incomingDataStreamManager.validateParticipantHasNoActiveDataStreams(e),t.trackPublications.forEach(e=>{t.unpublishTrack(e.trackSid,!0)}),this.emit(A.ParticipantDisconnected,t),t.setDisconnected(),(n=this.localParticipant)==null||n.handleParticipantDisconnected(t.identity))}handleIncomingRpcRequest(e,t,n,r,i,a){return k(this,void 0,void 0,function*(){if(yield this.engine.publishRpcAck(e,t),a!==1){yield this.engine.publishRpcResponse(e,t,null,sl.builtIn(`UNSUPPORTED_VERSION`));return}let o=this.rpcHandlers.get(n);if(!o){yield this.engine.publishRpcResponse(e,t,null,sl.builtIn(`UNSUPPORTED_METHOD`));return}let s=null,c=null;try{let a=yield o({requestId:t,callerIdentity:e,payload:r,responseTimeout:i});ll(a)>cl?(s=sl.builtIn(`RESPONSE_PAYLOAD_TOO_LARGE`),console.warn(`RPC Response payload too large for ${n}`)):c=a}catch(e){e instanceof sl?s=e:(console.warn(`Uncaught error returned by RPC handler for ${n}. Returning APPLICATION_ERROR instead.`,e),s=sl.builtIn(`APPLICATION_ERROR`))}yield this.engine.publishRpcResponse(e,t,c,s)})}selectDefaultDevices(){return k(this,void 0,void 0,function*(){let e=oc.getInstance().previousDevices,t=yield oc.getInstance().getDevices(void 0,!1),n=po();if(n?.name===`Chrome`&&n.os!==`iOS`)for(let n of t){let t=e.find(e=>e.deviceId===n.deviceId);t&&t.label!==``&&t.kind===n.kind&&t.label!==n.label&&this.getActiveDevice(n.kind)===`default`&&this.emit(A.ActiveDeviceChanged,n.kind,n.deviceId)}for(let n of[`audiooutput`,`audioinput`,`videoinput`]){let r=Us(n),i=this.localParticipant.getTrackPublication(r);if(i&&i.track?.isUserProvided)continue;let a=t.filter(e=>e.kind===n),o=this.getActiveDevice(n);if(o===e.filter(e=>e.kind===n)[0]?.deviceId&&a.length>0&&a[0]?.deviceId!==o){yield this.switchActiveDevice(n,a[0].deviceId);continue}n===`audioinput`&&!Jo()||n===`videoinput`||a.length>0&&!a.find(e=>e.deviceId===this.getActiveDevice(n))&&(n!==`audiooutput`||!Jo())&&(yield this.switchActiveDevice(n,a[0].deviceId))}})}acquireAudioContext(){return k(this,void 0,void 0,function*(){if(typeof this.options.webAudioMix!=`boolean`&&this.options.webAudioMix.audioContext?this.audioContext=this.options.webAudioMix.audioContext:(!this.audioContext||this.audioContext.state===`closed`)&&(this.audioContext=Hs()??void 0),this.options.webAudioMix&&this.remoteParticipants.forEach(e=>e.setAudioContext(this.audioContext)),this.localParticipant.setAudioContext(this.audioContext),this.audioContext&&this.audioContext.state===`suspended`)try{yield Promise.race([this.audioContext.resume(),Lo(200)])}catch(e){this.log.warn(`Could not resume audio context`,Object.assign(Object.assign({},this.logContext),{error:e}))}let e=this.audioContext?.state===`running`;e!==this.canPlaybackAudio&&(this.audioEnabled=e,this.emit(A.AudioPlaybackStatusChanged,e))})}createParticipant(e,t){let n;return n=t?Tu.fromParticipantInfo(this.engine.client,t,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}):new Tu(this.engine.client,``,e,void 0,void 0,void 0,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}),this.options.webAudioMix&&n.setAudioContext(this.audioContext),this.options.audioOutput?.deviceId&&n.setAudioOutput(this.options.audioOutput).catch(e=>this.log.warn(`Could not set audio output: ${e.message}`,this.logContext)),n}getOrCreateParticipant(e,t){if(this.remoteParticipants.has(e)){let n=this.remoteParticipants.get(e);return t&&n.updateInfo(t)&&this.sidToIdentity.set(t.sid,t.identity),n}let n=this.createParticipant(e,t);return this.remoteParticipants.set(e,n),this.sidToIdentity.set(t.sid,t.identity),this.emitWhenConnected(A.ParticipantConnected,n),n.on(j.TrackPublished,e=>{this.emitWhenConnected(A.TrackPublished,e,n)}).on(j.TrackSubscribed,(e,t)=>{e.kind===P.Kind.Audio?(e.on(N.AudioPlaybackStarted,this.handleAudioPlaybackStarted),e.on(N.AudioPlaybackFailed,this.handleAudioPlaybackFailed)):e.kind===P.Kind.Video&&(e.on(N.VideoPlaybackFailed,this.handleVideoPlaybackFailed),e.on(N.VideoPlaybackStarted,this.handleVideoPlaybackStarted)),this.emit(A.TrackSubscribed,e,t,n)}).on(j.TrackUnpublished,e=>{this.emit(A.TrackUnpublished,e,n)}).on(j.TrackUnsubscribed,(e,t)=>{this.emit(A.TrackUnsubscribed,e,t,n)}).on(j.TrackMuted,e=>{this.emitWhenConnected(A.TrackMuted,e,n)}).on(j.TrackUnmuted,e=>{this.emitWhenConnected(A.TrackUnmuted,e,n)}).on(j.ParticipantMetadataChanged,e=>{this.emitWhenConnected(A.ParticipantMetadataChanged,e,n)}).on(j.ParticipantNameChanged,e=>{this.emitWhenConnected(A.ParticipantNameChanged,e,n)}).on(j.AttributesChanged,e=>{this.emitWhenConnected(A.ParticipantAttributesChanged,e,n)}).on(j.ConnectionQualityChanged,e=>{this.emitWhenConnected(A.ConnectionQualityChanged,e,n)}).on(j.ParticipantPermissionsChanged,e=>{this.emitWhenConnected(A.ParticipantPermissionsChanged,e,n)}).on(j.TrackSubscriptionStatusChanged,(e,t)=>{this.emitWhenConnected(A.TrackSubscriptionStatusChanged,e,t,n)}).on(j.TrackSubscriptionFailed,(e,t)=>{this.emit(A.TrackSubscriptionFailed,e,n,t)}).on(j.TrackSubscriptionPermissionChanged,(e,t)=>{this.emitWhenConnected(A.TrackSubscriptionPermissionChanged,e,t,n)}).on(j.Active,()=>{this.emitWhenConnected(A.ParticipantActive,n),n.kind===Tn.AGENT&&this.localParticipant.setActiveAgent(n)}),t&&n.updateInfo(t),n}sendSyncState(){let e=Array.from(this.remoteParticipants.values()).reduce((e,t)=>(e.push(...t.getTrackPublications()),e),[]),t=this.localParticipant.getTrackPublications();this.engine.sendSyncState(e,t)}updateSubscriptions(){for(let e of this.remoteParticipants.values())for(let t of e.videoTrackPublications.values())t.isSubscribed&&Ns(t)&&t.emitTrackUpdate()}getRemoteParticipantBySid(e){let t=this.sidToIdentity.get(e);if(t)return this.remoteParticipants.get(t)}registerConnectionReconcile(){this.clearConnectionReconcile();let e=0;this.connectionReconcileInterval=vo.setInterval(()=>{!this.engine||this.engine.isClosed||!this.engine.verifyTransport()?(e++,this.log.warn(`detected connection state mismatch`,Object.assign(Object.assign({},this.logContext),{numFailures:e,engine:this.engine?{closed:this.engine.isClosed,transportsConnected:this.engine.verifyTransport()}:void 0})),e>=3&&(this.recreateEngine(),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,gn.STATE_MISMATCH))):e=0},Du)}clearConnectionReconcile(){this.connectionReconcileInterval&&vo.clearInterval(this.connectionReconcileInterval)}setAndEmitConnectionState(e){return e===this.state?!1:(this.state=e,this.emit(A.ConnectionStateChanged,this.state),!0)}emitBufferedEvents(){this.bufferedEvents.forEach(e=>{let[t,n]=e;this.emit(t,...n)}),this.bufferedEvents=[]}emitWhenConnected(e){var t=[...arguments].slice(1);if(this.state===Eu.Reconnecting||this.isResuming||!this.engine||this.engine.pendingReconnect)this.bufferedEvents.push([e,t]);else if(this.state===Eu.Connected)return this.emit(e,...t);return!1}simulateParticipants(e){return k(this,void 0,void 0,function*(){let t=Object.assign({audio:!0,video:!0,useRealTracks:!1},e.publish),n=Object.assign({count:9,audio:!1,video:!0,aspectRatios:[1.66,1.7,1.3]},e.participants);if(this.handleDisconnect(),this.roomInfo=new bn({sid:`RM_SIMULATED`,name:`simulated-room`,emptyTimeout:0,maxParticipants:0,creationTime:Be.parse(new Date().getTime()),metadata:``,numParticipants:1,numPublishers:1,turnPassword:``,enabledCodecs:[],activeRecording:!1}),this.localParticipant.updateInfo(new Cn({identity:`simulated-local`,name:`local-name`})),this.setupLocalParticipantEvents(),this.emit(A.SignalConnected),this.emit(A.Connected),this.setAndEmitConnectionState(Eu.Connected),t.video){let e=new gu(P.Kind.Video,new kn({source:fn.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO,name:`video-dummy`}),new zl(t.useRealTracks?(yield window.navigator.mediaDevices.getUserMedia({video:!0})).getVideoTracks()[0]:ms(160*(n.aspectRatios[0]??1),160,!0,!0),void 0,!1,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(e),this.localParticipant.emit(j.LocalTrackPublished,e)}if(t.audio){let e=new gu(P.Kind.Audio,new kn({source:fn.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO}),new bl(t.useRealTracks?(yield navigator.mediaDevices.getUserMedia({audio:!0})).getAudioTracks()[0]:gs(),void 0,!1,this.audioContext,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(e),this.localParticipant.emit(j.LocalTrackPublished,e)}for(let e=0;e<n.count-1;e+=1){let t=new Cn({sid:Math.floor(Math.random()*1e4).toString(),identity:`simulated-${e}`,state:wn.ACTIVE,tracks:[],joinedAt:Be.parse(Date.now())}),r=this.getOrCreateParticipant(t.identity,t);if(n.video){let i=ms(160*(n.aspectRatios[e%n.aspectRatios.length]??1),160,!1,!0),a=new kn({source:fn.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO});r.addSubscribedMediaTrack(i,a.sid,new MediaStream([i]),new RTCRtpReceiver),t.tracks=[...t.tracks,a]}if(n.audio){let e=gs(),n=new kn({source:fn.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:dn.AUDIO});r.addSubscribedMediaTrack(e,n.sid,new MediaStream([e]),new RTCRtpReceiver),t.tracks=[...t.tracks,n]}r.updateInfo(t)}})}emit(e){var t=[...arguments].slice(1);if(e!==A.ActiveSpeakersChanged&&e!==A.TranscriptionReceived){let n=ku(t).filter(e=>e!==void 0);(e===A.TrackSubscribed||e===A.TrackUnsubscribed)&&this.log.trace(`subscribe trace: ${e}`,Object.assign(Object.assign({},this.logContext),{event:e,args:n})),this.log.debug(`room event ${e}`,Object.assign(Object.assign({},this.logContext),{event:e,args:n}))}return super.emit(e,...t)}};Ou.cleanupRegistry=typeof FinalizationRegistry<`u`&&new FinalizationRegistry(e=>{e()});function ku(e){return e.map(e=>{if(e)return Array.isArray(e)?ku(e):typeof e==`object`?`logContext`in e?e.logContext:void 0:e})}var Au;(function(e){e[e.IDLE=0]=`IDLE`,e[e.RUNNING=1]=`RUNNING`,e[e.SKIPPED=2]=`SKIPPED`,e[e.SUCCESS=3]=`SUCCESS`,e[e.FAILED=4]=`FAILED`})(Au||={}),Ai.EventEmitter,Ai.EventEmitter;function ju(e,t,n){return(t=Nu(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mu(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Nu(e){var t=Mu(e,`string`);return typeof t==`symbol`?t:t+``}new TextEncoder,new TextDecoder;var Pu=class extends Error{constructor(e,t){var n;super(e,t),ju(this,`code`,`ERR_JOSE_GENERIC`),this.name=this.constructor.name,(n=Error.captureStackTrace)==null||n.call(Error,this,this.constructor)}};ju(Pu,`code`,`ERR_JOSE_GENERIC`),ju(class extends Pu{constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:`unspecified`,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`unspecified`;super(e,{cause:{claim:n,reason:r,payload:t}}),ju(this,`code`,`ERR_JWT_CLAIM_VALIDATION_FAILED`),ju(this,`claim`,void 0),ju(this,`reason`,void 0),ju(this,`payload`,void 0),this.claim=n,this.reason=r,this.payload=t}},`code`,`ERR_JWT_CLAIM_VALIDATION_FAILED`),ju(class extends Pu{constructor(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:`unspecified`,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:`unspecified`;super(e,{cause:{claim:n,reason:r,payload:t}}),ju(this,`code`,`ERR_JWT_EXPIRED`),ju(this,`claim`,void 0),ju(this,`reason`,void 0),ju(this,`payload`,void 0),this.claim=n,this.reason=r,this.payload=t}},`code`,`ERR_JWT_EXPIRED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JOSE_ALG_NOT_ALLOWED`)}},`code`,`ERR_JOSE_ALG_NOT_ALLOWED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JOSE_NOT_SUPPORTED`)}},`code`,`ERR_JOSE_NOT_SUPPORTED`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`decryption operation failed`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWE_DECRYPTION_FAILED`)}},`code`,`ERR_JWE_DECRYPTION_FAILED`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWE_INVALID`)}},`code`,`ERR_JWE_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWS_INVALID`)}},`code`,`ERR_JWS_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWT_INVALID`)}},`code`,`ERR_JWT_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWK_INVALID`)}},`code`,`ERR_JWK_INVALID`),ju(class extends Pu{constructor(){super(...arguments),ju(this,`code`,`ERR_JWKS_INVALID`)}},`code`,`ERR_JWKS_INVALID`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`no applicable key found in the JSON Web Key Set`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWKS_NO_MATCHING_KEY`)}},`code`,`ERR_JWKS_NO_MATCHING_KEY`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`multiple matching keys found in the JSON Web Key Set`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,Symbol.asyncIterator,void 0),ju(this,`code`,`ERR_JWKS_MULTIPLE_MATCHING_KEYS`)}},`code`,`ERR_JWKS_MULTIPLE_MATCHING_KEYS`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`request timed out`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWKS_TIMEOUT`)}},`code`,`ERR_JWKS_TIMEOUT`),ju(class extends Pu{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`signature verification failed`,t=arguments.length>1?arguments[1]:void 0;super(e,t),ju(this,`code`,`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`)}},`code`,`ERR_JWS_SIGNATURE_VERIFICATION_FAILED`);function Fu(e){let t=new Uint8Array(e);return window.btoa(String.fromCharCode(...t))}function Iu(e){let t=window.atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}var Lu=`wss://livekit.rtc.elevenlabs.io`,Ru=`https://api.elevenlabs.io`;function zu(e){return e.replace(/^wss:\/\//,`https://`)}var Bu=class t extends C{conversationId;inputFormat;outputFormat;room;isConnected=!1;audioEventId=1;audioCaptureContext=null;audioElements=[];outputDeviceId=null;inputAnalyser=null;inputAudioContext=null;inputVolumeProvider=p;outputAnalyser=null;outputVolumeProvider=p;_isMuted=!1;input={close:async()=>{if(this.isConnected)try{this.room.localParticipant.audioTrackPublications.forEach(e=>{e.track&&e.track.stop()})}catch(e){console.warn(`Error stopping local tracks:`,e)}},setDevice:async e=>{if(e?.sampleRate!==void 0||e?.format!==void 0||e?.preferHeadphonesForIosDevices!==void 0)throw Error(`WebRTC input device does not support sampleRate, format, or preferHeadphonesForIosDevices options`);let t=e?.inputDeviceId;t&&await this.setAudioInputDevice(t)},setMuted:async e=>{if(!this.isConnected||!this.room.localParticipant){console.warn(`Cannot set microphone muted: room not connected or no local participant`);return}this._isMuted=e;let t=this.room.localParticipant.getTrackPublication(P.Source.Microphone);if(t?.track)try{e?await t.track.mute():await t.track.unmute()}catch{await this.room.localParticipant.setMicrophoneEnabled(!e)}else await this.room.localParticipant.setMicrophoneEnabled(!e);if(!e){let e=this.room.localParticipant.getTrackPublication(P.Source.Microphone)?.track;e&&this.setupInputAnalyser(e.mediaStreamTrack)}},isMuted:()=>this._isMuted,getAnalyser:()=>this.inputAnalyser??void 0,getVolume:()=>this._isMuted?0:this.inputVolumeProvider.getVolume(),getByteFrequencyData:e=>{if(this._isMuted){e.fill(0);return}this.inputVolumeProvider.getByteFrequencyData(e)}};output={close:async()=>{},setDevice:async e=>{if(e?.sampleRate!==void 0||e?.format!==void 0)throw Error(`WebRTC output device does not support sampleRate or format options`);let t=e?.outputDeviceId;t&&await this.setAudioOutputDevice(t)},setVolume:e=>{this.setAudioVolume(e)},interrupt:e=>{},getAnalyser:()=>this.outputAnalyser??void 0,getVolume:()=>this.outputVolumeProvider.getVolume(),getByteFrequencyData:e=>{this.outputVolumeProvider.getByteFrequencyData(e)}};constructor(e,t,n,r,i={}){super(i),this.room=e,this.conversationId=t,this.inputFormat=n,this.outputFormat=r,this.setupRoomEventListeners()}static async create(n){let r;if(`conversationToken`in n&&n.conversationToken)r=n.conversationToken;else if(`agentId`in n&&n.agentId)try{let{name:t,version:i}=a,o=`${zu(n.origin??Ru)}/v1/convai/conversation/token?agent_id=${n.agentId}&source=${t}&version=${i}`;n.environment&&(o+=`&environment=${encodeURIComponent(n.environment)}`);let s=await fetch(o);if(!s.ok){let t=await e(s);throw Error(`ElevenLabs API returned ${s.status} ${t}`)}if(r=(await s.json()).token,!r)throw Error(`No conversation token received from API`)}catch(e){let t=e instanceof Error?e.message:String(e);throw e instanceof Error&&e.message.includes(`401`)&&(t=`Your agent has authentication enabled, but no signed URL or conversation token was provided.`),Error(`Failed to fetch conversation token for agent ${n.agentId}: ${t}`)}else throw Error(`Either conversationToken or agentId is required for WebRTC connection`);let i=new Ou;try{let e=new t(i,`room_${Date.now()}`,w(`pcm_48000`),w(`pcm_48000`),n),a=n.livekitUrl||Lu,o=n.textOnly?Promise.resolve():new Promise((e,t)=>{i.once(A.SignalConnected,()=>{i.localParticipant.setMicrophoneEnabled(!0).then(()=>e()).catch(t)})});await i.connect(a,r),await new Promise(t=>{if(e.isConnected)t();else{let e=()=>{i.off(A.Connected,e),t()};i.on(A.Connected,e)}}),await o;let s=i.localParticipant.getTrackPublication(P.Source.Microphone)?.track;s&&e.setupInputAnalyser(s.mediaStreamTrack),i.name&&(e.conversationId=i.name.match(/(conv_[a-zA-Z0-9]+)/)?.[0]||i.name);let c=te(n);return e.debug({type:ee,message:c}),await e.sendMessage(c),e}catch(e){throw await i.disconnect(),e}}setupRoomEventListeners(){this.room.on(A.Connected,async()=>{this.isConnected=!0}),this.room.on(A.Disconnected,e=>{this.isConnected=!1,this.disconnect({reason:`agent`,context:new CloseEvent(`close`,{reason:e?.toString()})})}),this.room.on(A.ConnectionStateChanged,e=>{e===Eu.Disconnected&&(this.isConnected=!1,this.disconnect({reason:`error`,message:`LiveKit connection state changed to ${e}`,context:new Event(`connection_state_changed`)}))}),this.room.on(A.DataReceived,(e,t)=>{try{let t=JSON.parse(new TextDecoder().decode(e));if(t.type===`audio`)return;T(t)?this.handleMessage(t):console.warn(`Invalid socket event received:`,t)}catch(t){console.warn(`Failed to parse incoming data message:`,t),console.warn(`Raw payload:`,new TextDecoder().decode(e))}}),this.room.on(A.TrackSubscribed,async(e,t,n)=>{if(e.kind===P.Kind.Audio&&n.identity.includes(`agent`)){let t=e,n=t.attach();if(n.autoplay=!0,n.controls=!1,this.outputDeviceId&&n.setSinkId)try{await n.setSinkId(this.outputDeviceId)}catch(e){console.warn(`Failed to set output device for new audio element:`,e)}n.style.display=`none`,document.body.appendChild(n),this.audioElements.push(n),this.audioElements.length===1&&this.onDebug?.({type:`audio_element_ready`}),await this.setupAudioCapture(t)}}),this.room.on(A.ActiveSpeakersChanged,async e=>{e.length>0?this.updateMode(e[0].identity.startsWith(`agent`)?`speaking`:`listening`):this.updateMode(`listening`)}),this.room.on(A.ParticipantDisconnected,e=>{e.identity?.startsWith(`agent`)&&this.disconnect({reason:`agent`,context:new CloseEvent(`close`,{reason:`agent disconnected`})})})}close(){if(this.isConnected){try{this.room.localParticipant.audioTrackPublications.forEach(e=>{e.track&&e.track.stop()})}catch(e){console.warn(`Error stopping local tracks:`,e)}this.inputAudioContext&&(this.inputAudioContext.close().catch(e=>{console.warn(`Error closing input audio context:`,e)}),this.inputAudioContext=null,this.inputAnalyser=null),this.audioCaptureContext&&=(this.audioCaptureContext.close().catch(e=>{console.warn(`Error closing audio capture context:`,e)}),null),this.audioElements.forEach(e=>{e.parentNode&&e.parentNode.removeChild(e)}),this.audioElements=[],this.room.disconnect()}}async sendMessage(e){if(!this.isConnected||!this.room.localParticipant){console.warn(`Cannot send message: room not connected or no local participant`);return}if(!(`user_audio_chunk`in e))try{let t=new TextEncoder().encode(JSON.stringify(e));await this.room.localParticipant.publishData(t,{reliable:!0})}catch(t){this.debug({type:`send_message_error`,message:{message:e,error:t}}),console.error(`Failed to send message via WebRTC:`,t)}}getRoom(){return this.room}setupInputAnalyser(e){this.inputAudioContext&&(this.inputAudioContext.close().catch(()=>{}),this.inputAudioContext=null,this.inputAnalyser=null);try{let t=new AudioContext,n=t.createAnalyser();t.createMediaStreamSource(new MediaStream([e])).connect(n),this.inputAnalyser=n,this.inputAudioContext=t,this.inputVolumeProvider=g(n,t.sampleRate)}catch(e){console.warn(`[ConversationalAI] Failed to set up input volume analyser:`,e)}}setInputVolumeProvider(e){this.inputVolumeProvider=e}setOutputVolumeProvider(e){this.outputVolumeProvider=e}async setupAudioCapture(e){try{let t=new AudioContext;this.audioCaptureContext=t,this.outputAnalyser=t.createAnalyser(),this.outputAnalyser.fftSize=2048,this.outputAnalyser.smoothingTimeConstant=.8;let n=new MediaStream([e.mediaStreamTrack]),r=t.createMediaStreamSource(n);r.connect(this.outputAnalyser),this.setOutputVolumeProvider(g(this.outputAnalyser,t.sampleRate)),await v(t.audioWorklet);let i=new AudioWorkletNode(t,`rawAudioProcessor`);this.outputAnalyser.connect(i),i.port.postMessage({type:`setFormat`,format:this.outputFormat.format,sampleRate:this.outputFormat.sampleRate}),i.port.onmessage=e=>{let[t,n]=e.data;if(n>.01){let e=Fu(t.buffer),n=this.audioEventId++;this.handleMessage({type:`audio`,audio_event:{audio_base_64:e,event_id:n}})}},r.connect(i)}catch(e){console.warn(`Failed to set up audio capture:`,e)}}setAudioVolume(e){this.audioElements.forEach(t=>{t.volume=e})}async setAudioOutputDevice(e){if(!(`setSinkId`in HTMLAudioElement.prototype))throw Error(`setSinkId is not supported in this browser`);let t=this.audioElements.map(async t=>{try{await t.setSinkId(e)}catch(e){throw console.error(`Failed to set sink ID for audio element:`,e),e}});await Promise.all(t),this.outputDeviceId=e}async setAudioInputDevice(e){if(!this.isConnected||!this.room.localParticipant)throw Error(`Cannot change input device: room not connected or no local participant`);try{let t=this.room.localParticipant.getTrackPublication(P.Source.Microphone);t?.track&&(await t.track.stop(),await this.room.localParticipant.unpublishTrack(t.track));let n=await vu({deviceId:{exact:e},echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:{ideal:1}});await this.room.localParticipant.publishTrack(n,{name:`microphone`,source:P.Source.Microphone}),this.setupInputAnalyser(n.mediaStreamTrack)}catch(e){console.error(`Failed to change input device:`,e);try{await this.room.localParticipant.setMicrophoneEnabled(!0)}catch(e){console.error(`Failed to recover microphone after device switch error:`,e)}throw e}}};function Vu(e,t){let n=e=>{let n=e.data[0];t.sendMessage({user_audio_chunk:Fu(n.buffer)})};return e.addListener(n),()=>{e.removeListener(n)}}function Hu(e,t){let n=e=>{t.playAudio(Iu(e.audio_base_64))};return e.addListener(n),()=>{e.removeListener(n)}}function Uu(e){let t=`signedUrl`in e&&e.signedUrl;if(t&&e.connectionType===`webrtc`)throw Error(`signedUrl only supports websocket connections. Remove connectionType or set it to 'websocket'.`);return e.connectionType?e.connectionType:`conversationToken`in e&&e.conversationToken?`webrtc`:t||e.textOnly?`websocket`:`webrtc`}async function Wu(e){let t=Uu(e);switch(t){case`websocket`:return ae.create(e);case`webrtc`:return Bu.create(e);default:throw Error(`Unknown connection type: ${t}`)}}async function Gu(e,t){if(t instanceof Bu)return{input:t.input,output:t.output,playbackEventTarget:null,detach:()=>{}};if(t instanceof ae){let[n,r]=await Promise.all([S.create({...t.inputFormat,preferHeadphonesForIosDevices:e.preferHeadphonesForIosDevices,inputDeviceId:e.inputDeviceId,workletPaths:e.workletPaths,libsampleratePath:e.libsampleratePath}),_.create({...t.outputFormat,outputDeviceId:e.outputDeviceId,workletPaths:e.workletPaths})]),i=Vu(n,t),a=Hu(t,r);return{input:n,output:r,playbackEventTarget:r,detach:()=>{i(),a()}}}else throw Error(`Unsupported connection type: ${t.constructor.name}`)}async function Ku(e){let t=await Wu(e);return{connection:t,...await Gu(e,t)}}var qu=Ku,Ju,Yu,Xu,Zu,Qu,$u,ed,td,nd,rd,id,ad,od,sd={},cd=[],ld=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,ud=Array.isArray;function dd(e,t){for(var n in t)e[n]=t[n];return e}function fd(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function pd(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?Ju.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return md(e,o,r,i,null)}function md(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Xu,__i:-1,__u:0};return i==null&&Yu.vnode!=null&&Yu.vnode(a),a}function hd(){return{current:null}}function gd(e){return e.children}function _d(e,t){this.props=e,this.context=t}function vd(e,t){if(t==null)return e.__?vd(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?vd(e):null}function yd(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=e.__c.base=n.__e;break}return yd(e)}}function bd(e){(!e.__d&&(e.__d=!0)&&Qu.push(e)&&!xd.__r++||$u!=Yu.debounceRendering)&&(($u=Yu.debounceRendering)||ed)(xd)}function xd(){for(var e,t,n,r,i,a,o,s=1;Qu.length;)Qu.length>s&&Qu.sort(td),e=Qu.shift(),s=Qu.length,e.__d&&(n=void 0,r=void 0,i=(r=(t=e).__v).__e,a=[],o=[],t.__P&&((n=dd({},r)).__v=r.__v+1,Yu.vnode&&Yu.vnode(n),Ad(t.__P,n,r,t.__n,t.__P.namespaceURI,32&r.__u?[i]:null,a,i??vd(r),!!(32&r.__u),o),n.__v=r.__v,n.__.__k[n.__i]=n,Md(a,n,o),r.__e=r.__=null,n.__e!=i&&yd(n)));xd.__r=0}function Sd(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v=r&&r.__k||cd,y=t.length;for(c=Cd(n,t,v,c,y),d=0;d<y;d++)(p=n.__k[d])!=null&&(f=p.__i==-1?sd:v[p.__i]||sd,p.__i=d,g=Ad(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&Fd(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),(_=!!(4&p.__u))||f.__k===p.__k?c=wd(p,c,e,_):typeof p.type==`function`&&g!==void 0?c=g:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=h,c}function Cd(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=md(null,o,null,null,null):ud(o)?o=e.__k[a]=md(gd,{children:o},null,null,null):o.constructor==null&&o.__b>0?o=e.__k[a]=md(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,(l=o.__i=Ed(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=vd(s)),Id(s,s));return r}function wd(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=wd(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=vd(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Td(e,t){return t||=[],e==null||typeof e==`boolean`||(ud(e)?e.some(function(e){Td(e,t)}):t.push(e)),t}function Ed(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function Dd(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||ld.test(t)?n:n+`px`}function Od(e,t,n,r,i){var a,o;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Dd(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||Dd(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(nd,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n.u=r.u:(n.u=rd,e.addEventListener(t,a?ad:id,a)):e.removeEventListener(t,a?ad:id,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function kd(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t.t==null)t.t=rd++;else if(t.t<n.u)return;return n(Yu.event?Yu.event(t):t)}}}function Ad(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,te=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=Yu.__b)&&u(t);n:if(typeof te==`function`)try{if(_=t.props,v=`prototype`in te&&te.prototype.render,y=(u=te.contextType)&&r[u.__c],b=u?y?y.props.value:u.__:r,n.__c?g=(d=t.__c=n.__c).__=d.__E:(v?t.__c=d=new te(_,b):(t.__c=d=new _d(_,b),d.constructor=te,d.render=Ld),y&&y.sub(d),d.state||={},d.__n=r,f=d.__d=!0,d.__h=[],d._sb=[]),v&&d.__s==null&&(d.__s=d.state),v&&te.getDerivedStateFromProps!=null&&(d.__s==d.state&&(d.__s=dd({},d.__s)),dd(d.__s,te.getDerivedStateFromProps(_,d.__s))),p=d.props,m=d.state,d.__v=t,f)v&&te.getDerivedStateFromProps==null&&d.componentWillMount!=null&&d.componentWillMount(),v&&d.componentDidMount!=null&&d.__h.push(d.componentDidMount);else{if(v&&te.getDerivedStateFromProps==null&&_!==p&&d.componentWillReceiveProps!=null&&d.componentWillReceiveProps(_,b),t.__v==n.__v||!d.__e&&d.shouldComponentUpdate!=null&&!1===d.shouldComponentUpdate(_,d.__s,b)){for(t.__v!=n.__v&&(d.props=_,d.state=d.__s,d.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),x=0;x<d._sb.length;x++)d.__h.push(d._sb[x]);d._sb=[],d.__h.length&&o.push(d);break n}d.componentWillUpdate!=null&&d.componentWillUpdate(_,d.__s,b),v&&d.componentDidUpdate!=null&&d.__h.push(function(){d.componentDidUpdate(p,m,h)})}if(d.context=b,d.props=_,d.__P=e,d.__e=!1,S=Yu.__r,C=0,v){for(d.state=d.__s,d.__d=!1,S&&S(t),u=d.render(d.props,d.state,d.context),w=0;w<d._sb.length;w++)d.__h.push(d._sb[w]);d._sb=[]}else do d.__d=!1,S&&S(t),u=d.render(d.props,d.state,d.context),d.state=d.__s;while(d.__d&&++C<25);d.state=d.__s,d.getChildContext!=null&&(r=dd(dd({},r),d.getChildContext())),v&&!f&&d.getSnapshotBeforeUpdate!=null&&(h=d.getSnapshotBeforeUpdate(p,m)),T=u,u!=null&&u.type===gd&&u.key==null&&(T=Nd(u.props.children)),s=Sd(e,ud(T)?T:[T],t,n,r,i,a,o,s,c,l),d.base=t.__e,t.__u&=-161,d.__h.length&&o.push(d),g&&(d.__E=d.__=null)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__e=s}else{for(ee=a.length;ee--;)fd(a[ee]);jd(t)}else t.__e=n.__e,t.__k=n.__k,e.then||jd(t);Yu.__e(e,t,n)}else a==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=Pd(n.__e,t,n,r,i,a,o,c,l);return(u=Yu.diffed)&&u(t),128&t.__u?void 0:s}function jd(e){e&&e.__c&&(e.__c.__e=!0),e&&e.__k&&e.__k.forEach(jd)}function Md(e,t,n){for(var r=0;r<n.length;r++)Fd(n[r],n[++r],n[++r]);Yu.__c&&Yu.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){Yu.__e(e,t.__v)}})}function Nd(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:ud(e)?e.map(Nd):dd({},e)}function Pd(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g=n.props||sd,_=t.props,v=t.type;if(v==`svg`?i=`http://www.w3.org/2000/svg`:v==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(l=0;l<a.length;l++)if((p=a[l])&&`setAttribute`in p==!!v&&(v?p.localName==v:p.nodeType==3)){e=p,a[l]=null;break}}if(e==null){if(v==null)return document.createTextNode(_);e=document.createElementNS(i,v,_.is&&_),s&&=(Yu.__m&&Yu.__m(t,a),!1),a=null}if(v==null)g===_||s&&e.data==_||(e.data=_);else{if(a&&=Ju.call(e.childNodes),!s&&a!=null)for(g={},l=0;l<e.attributes.length;l++)g[(p=e.attributes[l]).name]=p.value;for(l in g)if(p=g[l],l!=`children`){if(l==`dangerouslySetInnerHTML`)d=p;else if(!(l in _)){if(l==`value`&&`defaultValue`in _||l==`checked`&&`defaultChecked`in _)continue;Od(e,l,null,p,i)}}for(l in _)p=_[l],l==`children`?f=p:l==`dangerouslySetInnerHTML`?u=p:l==`value`?m=p:l==`checked`?h=p:s&&typeof p!=`function`||g[l]===p||Od(e,l,p,g[l],i);if(u)s||d&&(u.__html==d.__html||u.__html==e.innerHTML)||(e.innerHTML=u.__html),t.__k=[];else if(d&&(e.innerHTML=``),Sd(t.type==`template`?e.content:e,ud(f)?f:[f],t,n,r,v==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&vd(n,0),s,c),a!=null)for(l=a.length;l--;)fd(a[l]);s||(l=`value`,v==`progress`&&m==null?e.removeAttribute(`value`):m!=null&&(m!==e[l]||v==`progress`&&!m||v==`option`&&m!=g[l])&&Od(e,l,m,g[l],i),l=`checked`,h!=null&&h!=e[l]&&Od(e,l,h,g[l],i))}return e}function Fd(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){Yu.__e(e,n)}}function Id(e,t,n){var r,i;if(Yu.unmount&&Yu.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||Fd(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){Yu.__e(e,t)}r.base=r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Id(r[i],t,n||typeof e.type!=`function`);n||fd(e.__e),e.__c=e.__=e.__e=void 0}function Ld(e,t,n){return this.constructor(e,n)}function Rd(e,t,n){var r,i,a,o;t==document&&(t=document.documentElement),Yu.__&&Yu.__(e,t),i=(r=typeof n==`function`)?null:n&&n.__k||t.__k,a=[],o=[],Ad(t,e=(!r&&n||t).__k=pd(gd,null,[e]),i||sd,sd,t.namespaceURI,!r&&n?[n]:i?null:t.firstChild?Ju.call(t.childNodes):null,a,!r&&n?n:i?i.__e:t.firstChild,r,o),Md(a,e,o)}function zd(e,t){Rd(e,t,zd)}function Bd(e,t,n){var r,i,a,o,s=dd({},e.props);for(a in e.type&&e.type.defaultProps&&(o=e.type.defaultProps),t)a==`key`?r=t[a]:a==`ref`?i=t[a]:s[a]=t[a]===void 0&&o!=null?o[a]:t[a];return arguments.length>2&&(s.children=arguments.length>3?Ju.call(arguments,2):n),md(e.type,s,r||e.key,i||e.ref,null)}function Vd(e){function t(e){var n,r;return this.getChildContext||(n=new Set,(r={})[t.__c]=this,this.getChildContext=function(){return r},this.componentWillUnmount=function(){n=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&n.forEach(function(e){e.__e=!0,bd(e)})},this.sub=function(e){n.add(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n&&n.delete(e),t&&t.call(e)}}),e.children}return t.__c=`__cC`+ od++,t.__=e,t.Provider=t.__l=(t.Consumer=function(e,t){return e.children(t)}).contextType=t,t}Ju=cd.slice,Yu={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},Xu=0,Zu=function(e){return e!=null&&e.constructor==null},_d.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=dd({},this.state);typeof e==`function`&&(e=e(dd({},n),this.props)),e&&dd(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),bd(this))},_d.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),bd(this))},_d.prototype.render=gd,Qu=[],ed=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,td=function(e,t){return e.__v.__b-t.__v.__b},xd.__r=0,nd=/(PointerCapture)$|Capture$/i,rd=0,id=kd(!1),ad=kd(!0),od=0;function Hd(){return Hd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hd.apply(this,arguments)}function Ud(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(i[n]=e[n]);return i}var Wd=[`context`,`children`],Gd=[`useFragment`];function Kd(e,t,n,r){function i(){var t,n=Reflect.construct(HTMLElement,[],i);return n._vdomComponent=e,r&&r.shadow?(n._root=n.attachShadow({mode:r.mode||`open`,serializable:(t=r.serializable)!=null&&t}),r.adoptedStyleSheets&&(n._root.adoptedStyleSheets=r.adoptedStyleSheets)):n._root=n,n}return(i.prototype=Object.create(HTMLElement.prototype)).constructor=i,i.prototype.connectedCallback=function(){Jd.call(this,r)},i.prototype.attributeChangedCallback=Xd,i.prototype.disconnectedCallback=Zd,n=n||e.observedAttributes||Object.keys(e.propTypes||{}),i.observedAttributes=n,e.formAssociated&&(i.formAssociated=!0),n.forEach(function(e){Object.defineProperty(i.prototype,e,{get:function(){return this._vdom?this._vdom.props[e]:this._props[e]},set:function(t){this._vdom?this.attributeChangedCallback(e,null,t):(this._props||={},this._props[e]=t);var n=typeof t;t!=null&&n!==`string`&&n!==`boolean`&&n!==`number`||this.setAttribute(e,t)}})}),customElements.define(t||e.tagName||e.displayName||e.name,i),i}function qd(e){this.getChildContext=function(){return e.context};var t=e.children;return Bd(t,Ud(e,Wd))}function Jd(e){var t=new CustomEvent(`_preact`,{detail:{},bubbles:!0,cancelable:!0});this.dispatchEvent(t),this._vdom=pd(qd,Hd({},this._props,{context:t.detail.context}),$d(this,this._vdomComponent,e)),(this.hasAttribute(`hydrate`)?zd:Rd)(this._vdom,this._root)}function Yd(e){return e.replace(/-(\w)/g,function(e,t){return t?t.toUpperCase():``})}function Xd(e,t,n){if(this._vdom){var r={};r[e]=n??=void 0,r[Yd(e)]=n,this._vdom=Bd(this._vdom,r),Rd(this._vdom,this._root)}}function Zd(){Rd(this._vdom=null,this._root)}function Qd(e,t){var n=this,r=e.useFragment,i=Ud(e,Gd);return pd(r?gd:`slot`,Hd({},i,{ref:function(e){e?(n.ref=e,n._listener||(n._listener=function(e){e.stopPropagation(),e.detail.context=t},e.addEventListener(`_preact`,n._listener))):n.ref.removeEventListener(`_preact`,n._listener)}}))}function $d(e,t,n){if(e.nodeType===3)return e.data;if(e.nodeType!==1)return null;var r=[],i={},a=0,o=e.attributes,s=e.childNodes;for(a=o.length;a--;)o[a].name!==`slot`&&(i[o[a].name]=o[a].value,i[Yd(o[a].name)]=o[a].value);for(a=s.length;a--;){var c=$d(s[a],null,n),l=s[a].slot;l?i[l]=pd(Qd,{name:l},c):r[a]=c}var u=!(!n||!n.shadow),d=t?pd(Qd,{useFragment:!u},r):r;return!u&&t&&(e.innerHTML=``),pd(t||e.nodeName.toLowerCase(),i,d)}var ef,tf,nf,rf,af=0,of=[],sf=Yu,cf=sf.__b,lf=sf.__r,uf=sf.diffed,df=sf.__c,ff=sf.unmount,pf=sf.__;function mf(e,t){sf.__h&&sf.__h(tf,e,af||t),af=0;var n=tf.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function hf(e){return af=1,gf(Af,e)}function gf(e,t,n){var r=mf(ef++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Af(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=tf,!tf.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a&&a.call(this,e,t,n)||o};tf.__f=!0;var a=tf.shouldComponentUpdate,o=tf.componentWillUpdate;tf.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},tf.shouldComponentUpdate=i}return r.__N||r.__}function _f(e,t){var n=mf(ef++,3);!sf.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,tf.__H.__h.push(n))}function vf(e,t){var n=mf(ef++,4);!sf.__s&&kf(n.__H,t)&&(n.__=e,n.u=t,tf.__h.push(n))}function F(e){return af=5,bf(function(){return{current:e}},[])}function yf(e,t,n){af=6,vf(function(){if(typeof e==`function`){var n=e(t());return function(){e(null),n&&typeof n==`function`&&n()}}if(e)return e.current=t(),function(){return e.current=null}},n==null?n:n.concat(e))}function bf(e,t){var n=mf(ef++,7);return kf(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function I(e,t){return af=8,bf(function(){return e},t)}function xf(e){var t=tf.context[e.__c],n=mf(ef++,9);return n.c=e,t?(n.__??(n.__=!0,t.sub(tf)),t.props.value):e.__}function Sf(e,t){sf.useDebugValue&&sf.useDebugValue(t?t(e):e)}function Cf(){var e=mf(ef++,11);if(!e.__){for(var t=tf.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||=[0,0];e.__=`P`+n[0]+`-`+ n[1]++}return e.__}function wf(){for(var e;e=of.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Df),e.__H.__h.forEach(Of),e.__H.__h=[]}catch(t){e.__H.__h=[],sf.__e(t,e.__v)}}sf.__b=function(e){tf=null,cf&&cf(e)},sf.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),pf&&pf(e,t)},sf.__r=function(e){lf&&lf(e),ef=0;var t=(tf=e.__c).__H;t&&(nf===tf?(t.__h=[],tf.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(Df),t.__h.forEach(Of),t.__h=[],ef=0)),nf=tf},sf.diffed=function(e){uf&&uf(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(of.push(t)!==1&&rf===sf.requestAnimationFrame||((rf=sf.requestAnimationFrame)||Ef)(wf)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),nf=tf=null},sf.__c=function(e,t){t.some(function(e){try{e.__h.forEach(Df),e.__h=e.__h.filter(function(e){return!e.__||Of(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],sf.__e(n,e.__v)}}),df&&df(e,t)},sf.unmount=function(e){ff&&ff(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{Df(e)}catch(e){t=e}}),n.__H=void 0,t&&sf.__e(t,n.__v))};var Tf=typeof requestAnimationFrame==`function`;function Ef(e){var t,n=function(){clearTimeout(r),Tf&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Tf&&(t=requestAnimationFrame(n))}function Df(e){var t=tf,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),tf=t}function Of(e){var t=tf;e.__c=e.__(),tf=t}function kf(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function Af(e,t){return typeof t==`function`?t(e):t}function jf(e,t){for(var n in t)e[n]=t[n];return e}function Mf(e,t){for(var n in e)if(n!==`__source`&&!(n in t))return!0;for(var r in t)if(r!==`__source`&&e[r]!==t[r])return!0;return!1}function Nf(e,t){var n=t(),r=hf({t:{__:n,u:t}}),i=r[0].t,a=r[1];return vf(function(){i.__=n,i.u=t,Pf(i)&&a({t:i})},[e,n,t]),_f(function(){return Pf(i)&&a({t:i}),e(function(){Pf(i)&&a({t:i})})},[e]),n}function Pf(e){var t,n,r=e.u,i=e.__;try{var a=r();return!((t=i)===(n=a)&&(t!==0||1/t==1/n)||t!=t&&n!=n)}catch{return!0}}function Ff(e){e()}function If(e){return e}function Lf(){return[!1,Ff]}var Rf=vf;function zf(e,t){this.props=e,this.context=t}function Bf(e,t){function n(e){var n=this.props.ref,r=n==e.ref;return!r&&n&&(n.call?n(null):n.current=null),t?!t(this.props,e)||!r:Mf(this.props,e)}function r(t){return this.shouldComponentUpdate=n,pd(e,t)}return r.displayName=`Memo(`+(e.displayName||e.name)+`)`,r.prototype.isReactComponent=!0,r.__f=!0,r.type=e,r}(zf.prototype=new _d).isPureReactComponent=!0,zf.prototype.shouldComponentUpdate=function(e,t){return Mf(this.props,e)||Mf(this.state,t)};var Vf=Yu.__b;Yu.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),Vf&&Vf(e)};var Hf=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.forward_ref`)||3911;function Uf(e){function t(t){var n=jf({},t);return delete n.ref,e(n,t.ref||null)}return t.$$typeof=Hf,t.render=e,t.prototype.isReactComponent=t.__f=!0,t.displayName=`ForwardRef(`+(e.displayName||e.name)+`)`,t}var Wf=function(e,t){return e==null?null:Td(Td(e).map(t))},Gf={map:Wf,forEach:Wf,count:function(e){return e?Td(e).length:0},only:function(e){var t=Td(e);if(t.length!==1)throw`Children.only`;return t[0]},toArray:Td},Kf=Yu.__e;Yu.__e=function(e,t,n,r){if(e.then){for(var i,a=t;a=a.__;)if((i=a.__c)&&i.__c)return t.__e??(t.__e=n.__e,t.__k=n.__k),i.__c(e,t)}Kf(e,t,n,r)};var qf=Yu.unmount;function Jf(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(e){typeof e.__c==`function`&&e.__c()}),e.__c.__H=null),(e=jf({},e)).__c!=null&&(e.__c.__P===n&&(e.__c.__P=t),e.__c.__e=!0,e.__c=null),e.__k=e.__k&&e.__k.map(function(e){return Jf(e,t,n)})),e}function Yf(e,t,n){return e&&n&&(e.__v=null,e.__k=e.__k&&e.__k.map(function(e){return Yf(e,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.appendChild(e.__e),e.__c.__e=!0,e.__c.__P=n)),e}function Xf(){this.__u=0,this.o=null,this.__b=null}function Zf(e){var t=e.__.__c;return t&&t.__a&&t.__a(e)}function Qf(e){var t,n,r,i=null;function a(a){if(t||(t=e()).then(function(e){e&&(i=e.default||e),r=!0},function(e){n=e,r=!0}),n)throw n;if(!r)throw t;return i?pd(i,a):null}return a.displayName=`Lazy`,a.__f=!0,a}function $f(){this.i=null,this.l=null}Yu.unmount=function(e){var t=e.__c;t&&t.__R&&t.__R(),t&&32&e.__u&&(e.type=null),qf&&qf(e)},(Xf.prototype=new _d).__c=function(e,t){var n=t.__c,r=this;r.o??=[],r.o.push(n);var i=Zf(r.__v),a=!1,o=function(){a||(a=!0,n.__R=null,i?i(s):s())};n.__R=o;var s=function(){if(!--r.__u){if(r.state.__a){var e=r.state.__a;r.__v.__k[0]=Yf(e,e.__c.__P,e.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(o,o)},Xf.prototype.componentWillUnmount=function(){this.o=[]},Xf.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement(`div`),r=this.__v.__k[0].__c;this.__v.__k[0]=Jf(this.__b,n,r.__O=r.__P)}this.__b=null}var i=t.__a&&pd(gd,null,e.fallback);return i&&(i.__u&=-33),[pd(gd,null,t.__a?null:e.children),i]};var ep=function(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&(e.props.revealOrder[0]!==`t`||!e.l.size))for(n=e.i;n;){for(;n.length>3;)n.pop()();if(n[1]<n[0])break;e.i=n=n[2]}};function tp(e){return this.getChildContext=function(){return e.context},e.children}function np(e){var t=this,n=e.h;if(t.componentWillUnmount=function(){Rd(null,t.v),t.v=null,t.h=null},t.h&&t.h!==n&&t.componentWillUnmount(),!t.v){for(var r=t.__v;r!==null&&!r.__m&&r.__!==null;)r=r.__;t.h=n,t.v={nodeType:1,parentNode:n,childNodes:[],__k:{__m:r.__m},contains:function(){return!0},insertBefore:function(e,n){this.childNodes.push(e),t.h.insertBefore(e,n)},removeChild:function(e){this.childNodes.splice(this.childNodes.indexOf(e)>>>1,1),t.h.removeChild(e)}}}Rd(pd(tp,{context:t.context},e.__v),t.v)}function rp(e,t){var n=pd(np,{__v:e,h:t});return n.containerInfo=t,n}($f.prototype=new _d).__a=function(e){var t=this,n=Zf(t.__v),r=t.l.get(e);return r[0]++,function(i){var a=function(){t.props.revealOrder?(r.push(i),ep(t,e,r)):i()};n?n(a):a()}},$f.prototype.render=function(e){this.i=null,this.l=new Map;var t=Td(e.children);e.revealOrder&&e.revealOrder[0]===`b`&&t.reverse();for(var n=t.length;n--;)this.l.set(t[n],this.i=[1,0,this.i]);return e.children},$f.prototype.componentDidUpdate=$f.prototype.componentDidMount=function(){var e=this;this.l.forEach(function(t,n){ep(e,n,t)})};var ip=typeof Symbol<`u`&&Symbol.for&&Symbol.for(`react.element`)||60103,ap=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,op=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,sp=/[A-Z0-9]/g,cp=typeof document<`u`,lp=function(e){return(typeof Symbol<`u`&&typeof Symbol()==`symbol`?/fil|che|rad/:/fil|che|ra/).test(e)};function up(e,t,n){return t.__k??(t.textContent=``),Rd(e,t),typeof n==`function`&&n(),e?e.__c:null}function dp(e,t,n){return zd(e,t),typeof n==`function`&&n(),e?e.__c:null}_d.prototype.isReactComponent={},[`componentWillMount`,`componentWillReceiveProps`,`componentWillUpdate`].forEach(function(e){Object.defineProperty(_d.prototype,e,{configurable:!0,get:function(){return this[`UNSAFE_`+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var fp=Yu.event;function pp(){}function mp(){return this.cancelBubble}function hp(){return this.defaultPrevented}Yu.event=function(e){return fp&&(e=fp(e)),e.persist=pp,e.isPropagationStopped=mp,e.isDefaultPrevented=hp,e.nativeEvent=e};var gp,_p={enumerable:!1,configurable:!0,get:function(){return this.class}},vp=Yu.vnode;Yu.vnode=function(e){typeof e.type==`string`&&function(e){var t=e.props,n=e.type,r={},i=n.indexOf(`-`)===-1;for(var a in t){var o=t[a];if(!(a===`value`&&`defaultValue`in t&&o==null||cp&&a===`children`&&n===`noscript`||a===`class`||a===`className`)){var s=a.toLowerCase();a===`defaultValue`&&`value`in t&&t.value==null?a=`value`:a===`download`&&!0===o?o=``:s===`translate`&&o===`no`?o=!1:s[0]===`o`&&s[1]===`n`?s===`ondoubleclick`?a=`ondblclick`:s!==`onchange`||n!==`input`&&n!==`textarea`||lp(t.type)?s===`onfocus`?a=`onfocusin`:s===`onblur`?a=`onfocusout`:op.test(a)&&(a=s):s=a=`oninput`:i&&ap.test(a)?a=a.replace(sp,`-$&`).toLowerCase():o===null&&(o=void 0),s===`oninput`&&r[a=s]&&(a=`oninputCapture`),r[a]=o}}n==`select`&&r.multiple&&Array.isArray(r.value)&&(r.value=Td(t.children).forEach(function(e){e.props.selected=r.value.indexOf(e.props.value)!=-1})),n==`select`&&r.defaultValue!=null&&(r.value=Td(t.children).forEach(function(e){e.props.selected=r.multiple?r.defaultValue.indexOf(e.props.value)!=-1:r.defaultValue==e.props.value})),t.class&&!t.className?(r.class=t.class,Object.defineProperty(r,`className`,_p)):(t.className&&!t.class||t.class&&t.className)&&(r.class=r.className=t.className),e.props=r}(e),e.$$typeof=ip,vp&&vp(e)};var yp=Yu.__r;Yu.__r=function(e){yp&&yp(e),gp=e.__c};var bp=Yu.diffed;Yu.diffed=function(e){bp&&bp(e);var t=e.props,n=e.__e;n!=null&&e.type===`textarea`&&`value`in t&&t.value!==n.value&&(n.value=t.value==null?``:t.value),gp=null};var xp={ReactCurrentDispatcher:{current:{readContext:function(e){return gp.__n[e.__c].props.value},useCallback:I,useContext:xf,useDebugValue:Sf,useDeferredValue:If,useEffect:_f,useId:Cf,useImperativeHandle:yf,useInsertionEffect:Rf,useLayoutEffect:vf,useMemo:bf,useReducer:gf,useRef:F,useState:hf,useSyncExternalStore:Nf,useTransition:Lf}}};function Sp(e){return pd.bind(null,e)}function Cp(e){return!!e&&e.$$typeof===ip}function wp(e){return Cp(e)&&e.type===gd}function Tp(e){return!!e&&!!e.displayName&&(typeof e.displayName==`string`||e.displayName instanceof String)&&e.displayName.startsWith(`Memo(`)}function Ep(e){return Cp(e)?Bd.apply(null,arguments):e}function Dp(e){return!!e.__k&&(Rd(null,e),!0)}function Op(e){return e&&(e.base||e.nodeType===1&&e)||null}var kp=function(e,t){return e(t)},Ap=function(e,t){return e(t)},jp={useState:hf,useId:Cf,useReducer:gf,useEffect:_f,useLayoutEffect:vf,useInsertionEffect:Rf,useTransition:Lf,useDeferredValue:If,useSyncExternalStore:Nf,startTransition:Ff,useRef:F,useImperativeHandle:yf,useMemo:bf,useCallback:I,useContext:xf,useDebugValue:Sf,version:`18.3.1`,Children:Gf,render:up,hydrate:dp,unmountComponentAtNode:Dp,createPortal:rp,createElement:pd,createContext:Vd,createFactory:Sp,cloneElement:Ep,createRef:hd,Fragment:gd,isValidElement:Cp,isElement:Cp,isFragment:wp,isMemo:Tp,findDOMNode:Op,Component:_d,PureComponent:zf,memo:Bf,forwardRef:Uf,flushSync:Ap,unstable_batchedUpdates:kp,StrictMode:gd,Suspense:Xf,SuspenseList:$f,lazy:Qf,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:xp},Mp=Symbol.for(`preact-signals`);function Np(){if(zp>1)zp--;else{var e,t=!1;for((function(){var e=Up;for(Up=void 0;e!==void 0;)e.S.v===e.v&&(e.S.i=e.i),e=e.o})();Rp!==void 0;){var n=Rp;for(Rp=void 0,Bp++;n!==void 0;){var r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&Jp(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(Bp=0,zp--,t)throw e}}function Pp(e){if(zp>0)return e();Hp=++Vp,zp++;try{return e()}finally{Np()}}var Fp=void 0;function Ip(e){var t=Fp;Fp=void 0;try{return e()}finally{Fp=t}}var Lp,Rp=void 0,zp=0,Bp=0,Vp=0,Hp=0,Up=void 0,Wp=0;function Gp(e){if(Fp!==void 0){var t=e.n;if(t===void 0||t.t!==Fp)return t={i:0,S:e,p:Fp.s,n:void 0,t:Fp,e:void 0,x:void 0,r:t},Fp.s!==void 0&&(Fp.s.n=t),Fp.s=t,e.n=t,32&Fp.f&&e.S(t),t;if(t.i===-1)return t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=Fp.s,t.n=void 0,Fp.s.n=t,Fp.s=t),t}}function Kp(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}Kp.prototype.brand=Mp,Kp.prototype.h=function(){return!0},Kp.prototype.S=function(e){var t=this,n=this.t;n!==e&&e.e===void 0&&(e.x=n,this.t=e,n===void 0?Ip(function(){var e;(e=t.W)==null||e.call(t)}):n.e=e)},Kp.prototype.U=function(e){var t=this;if(this.t!==void 0){var n=e.e,r=e.x;n!==void 0&&(n.x=r,e.e=void 0),r!==void 0&&(r.e=n,e.x=void 0),e===this.t&&(this.t=r,r===void 0&&Ip(function(){var e;(e=t.Z)==null||e.call(t)}))}},Kp.prototype.subscribe=function(e){var t=this;return rm(function(){var n=t.value,r=Fp;Fp=void 0;try{e(n)}finally{Fp=r}},{name:`sub`})},Kp.prototype.valueOf=function(){return this.value},Kp.prototype.toString=function(){return this.value+``},Kp.prototype.toJSON=function(){return this.value},Kp.prototype.peek=function(){var e=Fp;Fp=void 0;try{return this.value}finally{Fp=e}},Object.defineProperty(Kp.prototype,`value`,{get:function(){var e=Gp(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Bp>100)throw Error(`Cycle detected`);(function(e){zp!==0&&Bp===0&&e.l!==Hp&&(e.l=Hp,Up={S:e,v:e.v,i:e.i,o:Up})})(this),this.v=e,this.i++,Wp++,zp++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Np()}}}});function qp(e,t){return new Kp(e,t)}function Jp(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function Yp(e){for(var t=e.s;t!==void 0;t=t.n){var n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function Xp(e){for(var t=e.s,n=void 0;t!==void 0;){var r=t.p;t.i===-1?(t.S.U(t),r!==void 0&&(r.n=t.n),t.n!==void 0&&(t.n.p=r)):n=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=r}e.s=n}function Zp(e,t){Kp.call(this,void 0),this.x=e,this.s=void 0,this.g=Wp-1,this.f=4,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}Zp.prototype=new Kp,Zp.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Wp))return!0;if(this.g=Wp,this.f|=1,this.i>0&&!Jp(this))return this.f&=-2,!0;var e=Fp;try{Yp(this),Fp=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return Fp=e,Xp(this),this.f&=-2,!0},Zp.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}Kp.prototype.S.call(this,e)},Zp.prototype.U=function(e){if(this.t!==void 0&&(Kp.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}},Zp.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(Zp.prototype,`value`,{get:function(){if(1&this.f)throw Error(`Cycle detected`);var e=Gp(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Qp(e,t){return new Zp(e,t)}function $p(e){var t=e.m;if(e.m=void 0,typeof t==`function`){zp++;var n=Fp;Fp=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,em(e),t}finally{Fp=n,Np()}}}function em(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,$p(e)}function tm(e){if(Fp!==this)throw Error(`Out-of-order effect`);Xp(this),Fp=e,this.f&=-2,8&this.f&&em(this),Np()}function nm(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name,Lp&&Lp.push(this)}nm.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t==`function`&&(this.m=t)}finally{e()}},nm.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,$p(this),Yp(this),zp++;var e=Fp;return Fp=this,tm.bind(this,e)},nm.prototype.N=function(){2&this.f||(this.f|=2,this.u=Rp,Rp=this)},nm.prototype.d=function(){this.f|=8,1&this.f||em(this)},nm.prototype.dispose=function(){this.d()};function rm(e,t){var n=new nm(e,t);try{n.c()}catch(e){throw n.d(),e}var r=n.d.bind(n);return r[Symbol.dispose]=r,r}var im,am,om,sm=typeof window<`u`&&!!window.__PREACT_SIGNALS_DEVTOOLS__,cm=[],lm=[];rm(function(){im=this.N})();function um(e,t){Yu[e]=t.bind(null,Yu[e]||function(){})}function dm(e){if(om){var t=om;om=void 0,t()}om=e&&e.S()}function fm(e){var t=this,n=e.data,r=mm(n);r.value=n;var i=bf(function(){for(var e=t,n=t.__v;n=n.__;)if(n.__c){n.__c.__$f|=4;break}var i=Qp(function(){var e=r.value.value;return e===0?0:!0===e?``:e||``}),a=Qp(function(){return!Array.isArray(i.value)&&!Zu(i.value)}),o=rm(function(){if(this.N=bm,a.value){var t=i.value;e.__v&&e.__v.__e&&e.__v.__e.nodeType===3&&(e.__v.__e.data=t)}}),s=t.__$u.d;return t.__$u.d=function(){o(),s.call(this)},[a,i]},[]),a=i[0],o=i[1];return a.value?o.peek():o.value}fm.displayName=`ReactiveTextNode`,Object.defineProperties(Kp.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:fm},props:{configurable:!0,get:function(){var e=this;return{data:{get value(){return e.value}}}}},__b:{configurable:!0,value:1}}),um(`__b`,function(e,t){if(typeof t.type==`string`){var n,r=t.props;for(var i in r)if(i!==`children`){var a=r[i];a instanceof Kp&&(n||(t.__np=n={}),n[i]=a,r[i]=a.peek())}}e(t)}),um(`__r`,function(e,t){if(e(t),t.type!==gd){dm();var n,r=t.__c;r&&(r.__$f&=-2,(n=r.__$u)===void 0&&(r.__$u=n=function(e,t){var n;return rm(function(){n=this},{name:t}),n.c=e,n}(function(){var e;sm&&((e=n.y)==null||e.call(n)),r.__$f|=1,r.setState({})},typeof t.type==`function`?t.type.displayName||t.type.name:``))),am=r,dm(n)}}),um(`__e`,function(e,t,n,r){dm(),am=void 0,e(t,n,r)}),um(`diffed`,function(e,t){dm(),am=void 0;var n;if(typeof t.type==`string`&&(n=t.__e)){var r=t.__np,i=t.props;if(r){var a=n.U;if(a)for(var o in a){var s=a[o];s!==void 0&&!(o in r)&&(s.d(),a[o]=void 0)}else a={},n.U=a;for(var c in r){var l=a[c],u=r[c];l===void 0?(l=pm(n,c,u),a[c]=l):l.o(u,i)}for(var d in r)i[d]=r[d]}}e(t)});function pm(e,t,n,r){var i=t in e&&e.ownerSVGElement===void 0,a=qp(n),o=n.peek();return{o:function(e,t){a.value=e,o=e.peek()},d:rm(function(){this.N=bm;var n=a.value.value;o===n?o=void 0:(o=void 0,i?e[t]=n:n!=null&&(!1!==n||t[4]===`-`)?e.setAttribute(t,n):e.removeAttribute(t))})}}um(`unmount`,function(e,t){if(typeof t.type==`string`){var n=t.__e;if(n){var r=n.U;if(r)for(var i in n.U=void 0,r){var a=r[i];a&&a.d()}}t.__np=void 0}else{var o=t.__c;if(o){var s=o.__$u;s&&(o.__$u=void 0,s.d())}}e(t)}),um(`__h`,function(e,t,n,r){(r<3||r===9)&&(t.__$f|=2),e(t,n,r)}),_d.prototype.shouldComponentUpdate=function(e,t){if(this.__R)return!0;var n=this.__$u,r=n&&n.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u==`boolean`&&!0===this.u){var a=2&this.__$f;if(!(r||a||4&this.__$f)||1&this.__$f)return!0}else if(!(r||4&this.__$f)||3&this.__$f)return!0;for(var o in e)if(o!==`__source`&&e[o]!==this.props[o])return!0;for(var s in this.props)if(!(s in e))return!0;return!1};function mm(e,t){return bf(function(){return qp(e,t)},[])}function L(e,t){var n=F(e);return n.current=e,am.__$f|=4,bf(function(){return Qp(function(){return n.current()},t)},[])}var hm=typeof requestAnimationFrame>`u`?setTimeout:function(e){var t=function(){clearTimeout(n),cancelAnimationFrame(r),e()},n=setTimeout(t,35),r=requestAnimationFrame(t)},gm=function(e){queueMicrotask(function(){queueMicrotask(e)})};function _m(){Pp(function(){for(var e;e=cm.shift();)im.call(e)})}function vm(){cm.push(this)===1&&(Yu.requestAnimationFrame||hm)(_m)}function ym(){Pp(function(){for(var e;e=lm.shift();)im.call(e)})}function bm(){lm.push(this)===1&&(Yu.requestAnimationFrame||gm)(ym)}function xm(e,t){var n=F(e);n.current=e,_f(function(){return rm(function(){return this.N=vm,n.current()},t)},[])}var Sm=0;Array.isArray;function R(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--Sm,__i:-1,__u:0,__source:i,__self:a};if(typeof e==`function`&&(o=e.defaultProps))for(s in o)c[s]===void 0&&(c[s]=o[s]);return Yu.vnode&&Yu.vnode(l),l}async function Cm(e={default:0,android:3e3}){let t=e.default;b()?t=e.android??t:y()&&(t=e.ios??t),t>0&&await new Promise(e=>setTimeout(e,t))}var wm=new Uint8Array,Tm=class e extends i{type=`text`;setVolume(){throw Error(`setVolume is not supported in text conversations`)}setMicMuted(){throw Error(`setMicMuted is not supported in text conversations`)}getInputByteFrequencyData(){return wm}getOutputByteFrequencyData(){return wm}getInputVolume(){return 0}getOutputVolume(){return 0}static async startSession(t){let n=i.getFullOptions(t);n.onStatusChange&&n.onStatusChange({status:`connecting`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1}),n.onModeChange&&n.onModeChange({mode:`listening`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1});let r=null,a=null;try{return await Cm(n.connectionDelay),r=await Wu(n),a=new e(n,r),n.onConversationCreated?.(a),a.markConnected(),n.onConnect?.({conversationId:r.conversationId}),a}catch(e){throw a?await a.endSession().catch(()=>{}):(n.onStatusChange?.({status:`disconnected`}),r?.close()),e}}},Em=class e extends i{input;output;playbackEventTarget;cleanUp;wakeLock;type=`voice`;static async requestWakeLock(){if(`wakeLock`in navigator)try{return await navigator.wakeLock.request(`screen`)}catch{}return null}static async startSession(t){let n=i.getFullOptions(t);n.onStatusChange&&n.onStatusChange({status:`connecting`}),n.onCanSendFeedbackChange&&n.onCanSendFeedbackChange({canSendFeedback:!1});let r=null,a=null,o=t.useWakeLock??!0,s=null;o&&(s=await e.requestWakeLock());try{r=await navigator.mediaDevices.getUserMedia({audio:!0}),await Cm(n.connectionDelay);let t=await qu(n);return r?.getTracks().forEach(e=>{e.stop()}),r=null,a=new e(n,t.connection,t.input,t.output,t.playbackEventTarget,t.detach,s),n.onConversationCreated?.(a),a.markConnected(),n.onConnect?.({conversationId:t.connection.conversationId}),a}catch(e){r?.getTracks().forEach(e=>{e.stop()}),a?await a.endSession().catch(()=>{}):n.onStatusChange?.({status:`disconnected`});try{await s?.release(),s=null}catch{}throw e}}inputFrequencyData;outputFrequencyData;visibilityChangeHandler=null;handlePlaybackEvent=e=>{e.data.type===`process`&&this.updateMode(e.data.finished?`listening`:`speaking`)};constructor(t,n,r,i,a,o,s){super(t,n),this.input=r,this.output=i,this.playbackEventTarget=a,this.cleanUp=o,this.wakeLock=s,a?.addListener(this.handlePlaybackEvent),s&&(this.visibilityChangeHandler=()=>{document.visibilityState===`visible`&&this.wakeLock?.released&&e.requestWakeLock().then(e=>{this.wakeLock=e})},document.addEventListener(`visibilitychange`,this.visibilityChangeHandler))}async handleEndSession(){this.cleanUp(),this.playbackEventTarget?.removeListener(this.handlePlaybackEvent),this.playbackEventTarget=null,await super.handleEndSession(),this.visibilityChangeHandler&&document.removeEventListener(`visibilitychange`,this.visibilityChangeHandler);try{await this.wakeLock?.release(),this.wakeLock=null}catch{}await this.input.close(),await this.output.close()}handleInterruption(e){super.handleInterruption(e),this.updateMode(`listening`),this.output.interrupt()}handleAudio(e){super.handleAudio(e),e.audio_event.alignment&&this.options.onAudioAlignment&&this.options.onAudioAlignment(e.audio_event.alignment),this.lastInterruptTimestamp<=e.audio_event.event_id&&(e.audio_event.audio_base_64&&this.options.onAudio?.(e.audio_event.audio_base_64),this.currentEventId=e.audio_event.event_id,this.updateCanSendFeedback(),this.updateMode(`speaking`))}static FREQUENCY_BIN_COUNT=1024;setMicMuted(e){this.input.setMuted(e).catch(e=>{this.options.onError?.(`Failed to set input muted state`,e)})}getInputByteFrequencyData(){return this.inputFrequencyData??=new Uint8Array(e.FREQUENCY_BIN_COUNT),this.input.getByteFrequencyData(this.inputFrequencyData),this.inputFrequencyData}getOutputByteFrequencyData(){return this.outputFrequencyData??=new Uint8Array(e.FREQUENCY_BIN_COUNT),this.output.getByteFrequencyData(this.outputFrequencyData),this.outputFrequencyData}getInputVolume(){return this.input.getVolume()}getOutputVolume(){return this.output.getVolume()}async changeInputDevice({sampleRate:e,format:t,preferHeadphonesForIosDevices:n,inputDeviceId:r}){try{await this.input.setDevice({inputDeviceId:r,sampleRate:e,format:t,preferHeadphonesForIosDevices:n})}catch(e){throw console.error(`Error changing input device`,e),e}}async changeOutputDevice({sampleRate:e,format:t,outputDeviceId:n}){try{await this.output.setDevice({outputDeviceId:n,sampleRate:e,format:t})}catch(e){throw console.error(`Error changing output device`,e),e}}setVolume=({volume:e})=>{let t=Number.isFinite(e)?Math.min(1,Math.max(0,e)):1;this.volume=t,this.output.setVolume(t)}},Dm=`https://api.elevenlabs.io`;function Om(e,t,n=Dm){let r={};return typeof t==`boolean`?r.feedback=t?`like`:`dislike`:(r.rating=t.rating,r.comment=t.comment),fetch(`${n}/v1/convai/conversations/${e}/feedback`,{method:`POST`,body:JSON.stringify(r),headers:{"Content-Type":`application/json`}})}var km;(function(e){e.SESSION_STARTED=`session_started`,e.PARTIAL_TRANSCRIPT=`partial_transcript`,e.COMMITTED_TRANSCRIPT=`committed_transcript`,e.COMMITTED_TRANSCRIPT_WITH_TIMESTAMPS=`committed_transcript_with_timestamps`,e.AUTH_ERROR=`auth_error`,e.ERROR=`error`,e.OPEN=`open`,e.CLOSE=`close`,e.QUOTA_EXCEEDED=`quota_exceeded`,e.COMMIT_THROTTLED=`commit_throttled`,e.TRANSCRIBER_ERROR=`transcriber_error`,e.UNACCEPTED_TERMS=`unaccepted_terms`,e.RATE_LIMITED=`rate_limited`,e.INPUT_ERROR=`input_error`,e.QUEUE_OVERFLOW=`queue_overflow`,e.RESOURCE_EXHAUSTED=`resource_exhausted`,e.SESSION_TIME_LIMIT_EXCEEDED=`session_time_limit_exceeded`,e.CHUNK_SIZE_EXCEEDED=`chunk_size_exceeded`,e.INSUFFICIENT_AUDIO_ACTIVITY=`insufficient_audio_activity`})(km||={});var Am;(function(e){e.PCM_8000=`pcm_8000`,e.PCM_16000=`pcm_16000`,e.PCM_22050=`pcm_22050`,e.PCM_24000=`pcm_24000`,e.PCM_44100=`pcm_44100`,e.PCM_48000=`pcm_48000`,e.ULAW_8000=`ulaw_8000`})(Am||={});var jm;(function(e){e.MANUAL=`manual`,e.VAD=`vad`})(jm||={});var Mm={startSession(e){return r(e)?Tm.startSession(e):Em.startSession(e)}},Nm=Object.create,Pm=Object.defineProperty,Fm=Object.getOwnPropertyDescriptor,Im=Object.getOwnPropertyNames,Lm=Object.getPrototypeOf,Rm=Object.prototype.hasOwnProperty,zm=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),Bm=(e,t)=>{let n={};for(var r in e)Pm(n,r,{get:e[r],enumerable:!0});return t||Pm(n,Symbol.toStringTag,{value:`Module`}),n},Vm=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Im(t),a=0,o=i.length,s;a<o;a++)s=i[a],!Rm.call(e,s)&&s!==n&&Pm(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=Fm(t,s))||r.enumerable});return e},Hm=(e,t,n)=>(n=e==null?{}:Nm(Lm(e)),Vm(t||!e||!e.__esModule?Pm(n,`default`,{value:e,enumerable:!0}):n,e)),Um=`0.12.4`;function Wm(e){return e?e===`true`?!0:e===`false`?!1:null:null}var Gm=`variant.placement.override-config.avatar-image-url.avatar-orb-color-1.avatar-orb-color-2.agent-id.signed-url.terms-key.server-location.language.dynamic-variables.show-avatar-when-collapsed.override-prompt.override-llm.override-speed.override-stability.override-similarity-boost.override-first-message.override-language.override-voice-id.override-text-only.mic-muting.transcript.text-input.text-contents.default-expanded.always-expanded.dismissible.strip-audio-tags.user-id.use-rtc.collect-feedback.worklet-path-raw-audio-processor.worklet-path-audio-concat-processor.worklet-path-libsamplerate.syntax-highlight-theme.markdown-link-allowed-hosts.markdown-link-include-www.markdown-link-allow-http.allow-events.show-agent-status.show-conversation-id.environment`.split(`.`),Km=`@import "https://fonts.googleapis.com/css2?family=Inter:wght@400,500&display=swap";@layer components;@layer properties{@media all {*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-weight-medium:500;--font-weight-semibold:600;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.\\!visible{visibility:visible!important}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.start-3{inset-inline-start:12px}.end-3{inset-inline-end:12px}.top-0{top:0}.top-1{top:4px}.top-1\\/2{top:50%}.top-4{top:16px}.top-16{top:64px}.top-20{top:80px}.top-\\[40\\%\\]{top:40%}.top-\\[88px\\]{top:88px}.right-0{right:0}.right-1{right:4px}.right-1\\.5{right:6px}.-bottom-3{bottom:-12px}.bottom-0{bottom:0}.bottom-20{bottom:80px}.left-0{left:0}.left-1\\/2{left:50%}.left-4{left:16px}.z-1{z-index:1}.z-2{z-index:2}.z-10{z-index:10}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.m-1{margin:4px}.-mx-0\\.5{margin-inline:-2px}.mx-1{margin-inline:4px}.-my-4{margin-block:-16px}.my-4{margin-block:16px}.my-6{margin-block:24px}.ms-auto{margin-inline-start:auto}.\\!mt-0{margin-top:0!important}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.-mr-1\\.5{margin-right:-6px}.mb-0\\.5{margin-bottom:2px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.ml-4{margin-left:16px}.ml-auto{margin-left:auto}.\\!flex{display:flex!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.\\[field-sizing\\:content\\],.field-sizing-content{field-sizing:content}.h-4{height:16px}.h-5{height:20px}.h-6{height:24px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-11{height:44px}.h-12{height:48px}.h-16{height:64px}.h-48{height:192px}.h-full{height:100%}.h-screen{height:100vh}.max-h-\\[50\\%\\]{max-height:50%}.max-h-\\[min\\(384px\\,var\\(--radix-select-content-available-height\\)\\)\\]{max-height:min(384px, var(--radix-select-content-available-height))}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-\\[6lh\\]{min-height:6lh}.min-h-full{min-height:100%}.min-h-min{min-height:min-content}.w-1\\/2{width:50%}.w-4{width:16px}.w-5{width:20px}.w-6{width:24px}.w-8{width:32px}.w-9{width:36px}.w-11{width:44px}.w-12{width:48px}.w-20{width:80px}.w-48{width:192px}.w-full{width:100%}.w-screen{width:100vw}.max-w-64{max-width:256px}.max-w-\\[180px\\]{max-width:180px}.max-w-\\[220px\\]{max-width:220px}.max-w-\\[400px\\]{max-width:400px}.max-w-full{max-width:100%}.\\!min-w-60{min-width:240px!important}.min-w-0{min-width:0}.min-w-9{min-width:36px}.min-w-60{min-width:240px}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.min-w-max{min-width:max-content}.min-w-min{min-width:min-content}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-bottom{transform-origin:bottom}.origin-bottom-left{transform-origin:0 100%}.origin-bottom-right{transform-origin:100% 100%}.origin-top{transform-origin:top}.origin-top-left{transform-origin:0 0}.origin-top-right{transform-origin:100% 0}.-translate-x-1\\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-\\[calc\\(var\\(--el-overlay-padding\\)\\)\\]{--tw-translate-y:calc(calc(var(--el-overlay-padding)) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-1\\/2{--tw-translate-y:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\\[calc\\(var\\(--el-overlay-padding\\)\\)\\]{--tw-translate-y:calc(var(--el-overlay-padding));translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-150{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\\[0\\.1667\\]{scale:.1667}.-rotate-90{rotate:-90deg}.-rotate-180{rotate:-180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.place-content-center{place-content:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:4px}.gap-1\\.5{gap:6px}.gap-2{gap:8px}.gap-2\\.5{gap:10px}.gap-3{gap:12px}.gap-6{gap:24px}.gap-8{gap:32px}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-base-border>:not(:last-child)){border-color:var(--el-base-border)}.self-auto{align-self:auto}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\\[calc\\(var\\(--el-button-radius\\)\\+4px\\)\\]{border-radius:calc(var(--el-button-radius) + 4px)}.rounded-\\[calc\\(var\\(--el-sheet-radius\\)-8px\\)\\]{border-radius:calc(var(--el-sheet-radius) - 8px)}.rounded-bubble{border-radius:var(--el-bubble-radius)}.rounded-button{border-radius:var(--el-button-radius)}.rounded-compact-sheet{border-radius:var(--el-compact-sheet-radius)}.rounded-dropdown-sheet{border-radius:var(--el-dropdown-sheet-radius)}.rounded-full{border-radius:9999px}.rounded-input{border-radius:var(--el-input-radius)}.rounded-sheet{border-radius:var(--el-sheet-radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-accent{border-color:var(--el-accent)}.border-base{border-color:var(--el-base)}.border-base-border,.border-base-border\\/60{border-color:var(--el-base-border)}@supports (color:color-mix(in lab, red, red)){.border-base-border\\/60{border-color:color-mix(in oklab, var(--el-base-border) 60%, transparent)}}.border-base-error\\/30{border-color:var(--el-base-error)}@supports (color:color-mix(in lab, red, red)){.border-base-error\\/30{border-color:color-mix(in oklab, var(--el-base-error) 30%, transparent)}}.border-base-subtle\\/30{border-color:var(--el-base-subtle)}@supports (color:color-mix(in lab, red, red)){.border-base-subtle\\/30{border-color:color-mix(in oklab, var(--el-base-subtle) 30%, transparent)}}.bg-accent{background-color:var(--el-accent)}.bg-base{background-color:var(--el-base)}.bg-base-active,.bg-base-active\\/40{background-color:var(--el-base-active)}@supports (color:color-mix(in lab, red, red)){.bg-base-active\\/40{background-color:color-mix(in oklab, var(--el-base-active) 40%, transparent)}}.bg-base-active\\/80{background-color:var(--el-base-active)}@supports (color:color-mix(in lab, red, red)){.bg-base-active\\/80{background-color:color-mix(in oklab, var(--el-base-active) 80%, transparent)}}.bg-base-border{background-color:var(--el-base-border)}.bg-base-error\\/5{background-color:var(--el-base-error)}@supports (color:color-mix(in lab, red, red)){.bg-base-error\\/5{background-color:color-mix(in oklab, var(--el-base-error) 5%, transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-base{--tw-gradient-from:var(--el-base);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.\\[mask-image\\:linear-gradient\\(to_bottom\\,black\\,transparent\\)\\]{-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.\\[mask-image\\:linear-gradient\\(to_top\\,black\\,transparent\\)\\]{-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.bg-cover{background-size:cover}.object-cover{object-fit:cover}.p-1{padding:4px}.p-1\\.5{padding:6px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.px-1{padding-inline:4px}.px-1\\.5{padding-inline:6px}.px-2{padding-inline:8px}.px-2\\.5{padding-inline:10px}.px-3{padding-inline:12px}.px-4{padding-inline:16px}.px-8{padding-inline:32px}.py-0\\.5{padding-block:2px}.py-1{padding-block:4px}.py-1\\.5{padding-block:6px}.py-2{padding-block:8px}.py-2\\.5{padding-block:10px}.py-4{padding-block:16px}.py-\\[calc\\(theme\\(spacing\\.2\\)-1px\\)\\]{padding-block:7px}.pt-1{padding-top:4px}.pt-1\\.5{padding-top:6px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pt-4{padding-top:16px}.pt-20{padding-top:80px}.pr-3{padding-right:12px}.pr-7{padding-right:28px}.pr-8{padding-right:32px}.pr-16{padding-right:64px}.pb-1{padding-bottom:4px}.pb-1\\.5{padding-bottom:6px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-\\[60px\\]{padding-bottom:60px}.pl-1\\.5{padding-left:6px}.pl-4{padding-left:16px}.pl-16{padding-left:64px}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:18px;line-height:var(--tw-leading,26px)}.text-md{font-size:16px;line-height:var(--tw-leading,24px)}.text-sm{font-size:14px;line-height:var(--tw-leading,20px)}.text-xl{font-size:20px;line-height:var(--tw-leading,28px)}.text-xs{font-size:12px;line-height:var(--tw-leading,16px)}.text-\\[10px\\]{font-size:10px}.text-\\[13px\\]{font-size:13px}.leading-4{--tw-leading:16px;line-height:16px}.leading-5{--tw-leading:20px;line-height:20px}.\\[line-height\\:var\\(--el-overlay-padding\\)\\]{line-height:var(--el-overlay-padding)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-primary{color:var(--el-accent-primary)}.text-base-border{color:var(--el-base-border)}.text-base-error{color:var(--el-base-error)}.text-base-primary{color:var(--el-base-primary)}.text-base-subtle{color:var(--el-base-subtle)}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-70{opacity:.7}.shadow-header{--tw-shadow:0 0 1px 0 var(--tw-shadow-color,#0006), 0 2px 2px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 2px 40px 1px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 2px 24px 1px var(--tw-shadow-color,#00000029);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-scroll-fade-bottom{--tw-shadow:0 8px 16px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-scroll-fade-top{--tw-shadow:0 -8px 16px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-accent{--tw-ring-color:var(--el-accent)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\\[1px\\]{--tw-backdrop-blur:blur(1px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[border-radius\\]{transition-property:border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[colors\\,opacity\\]{transition-property:colors,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[margin\\]{transition-property:margin;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,width\\,height\\,transform\\,flex-grow\\]{transition-property:opacity,width,height,transform,flex-grow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\]{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,left\\,top\\,opacity\\,scale\\]{transition-property:transform,left,top,opacity,scale;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[width\\,height\\,max-width\\,max-height\\,transform\\,border-radius\\,opacity\\,inset\\,bottom\\,top\\,left\\,right\\,margin\\,padding\\]{transition-property:width,height,max-width,max-height,transform,border-radius,opacity,inset,bottom,top,left,right,margin,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.group-focus-within\\:pointer-events-auto:is(:where(.group):focus-within *){pointer-events:auto}.group-focus-within\\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\\:pointer-events-auto:is(:where(.group):hover *){pointer-events:auto}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\\:text-base-subtle::placeholder{color:var(--el-base-subtle)}.first\\:mt-0:first-child,:is(.\\*\\:first\\:mt-0>*):first-child{margin-top:0}.last\\:mb-0:last-child,:is(.\\*\\:last\\:mb-0>*):last-child{margin-bottom:0}@media (hover:hover){.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\\:border-accent-hover:hover{border-color:var(--el-accent-hover)}.hover\\:border-base-hover:hover{border-color:var(--el-base-hover)}.hover\\:bg-accent-hover:hover{background-color:var(--el-accent-hover)}.hover\\:bg-base-hover:hover{background-color:var(--el-base-hover)}.hover\\:text-base-primary:hover{color:var(--el-base-primary)}.hover\\:opacity-50:hover{opacity:.5}}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:underline-offset-2:focus-visible{text-underline-offset:2px}.focus-visible\\:opacity-100:focus-visible{opacity:1}.focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.active\\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\\:border-accent-active:active{border-color:var(--el-accent-active)}.active\\:border-base-active:active{border-color:var(--el-base-active)}.active\\:bg-accent-active:active{background-color:var(--el-accent-active)}.active\\:bg-base-active:active{background-color:var(--el-base-active)}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}.data-hidden\\:translate-x-full[data-shown=false]{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:-translate-y-4[data-shown=false]{--tw-translate-y:calc(16px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:translate-y-2[data-shown=false]{--tw-translate-y:8px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-hidden\\:scale-75[data-shown=false]{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:scale-90[data-shown=false]{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:scale-100[data-shown=false]{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.data-hidden\\:opacity-0[data-shown=false]{opacity:0}.data-highlighted\\:bg-base-active[data-highlighted]{background-color:var(--el-base-active)}.overlay{inset:var(--el-overlay-padding);right:calc(var(--el-overlay-padding) + var(--removed-body-scroll-bar-size,0px));position:absolute}.focus-ring{--tw-ring-color:var(--el-accent);--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-offset-color:var(--el-base)}.focus-ring:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-outline-style:none;outline-style:none}[data-variant=compact].sheet{border-radius:var(--el-sheet-radius);width:100%;max-width:400px;height:calc(100% - 80px);max-height:550px}[data-variant=expanded].sheet{border-radius:var(--el-sheet-radius);width:100%;max-width:600px;height:100%;max-height:calc(100% - 80px)}[data-variant=fullscreen].sheet{width:100%;max-width:100dvw;height:100%;max-height:100dvh;margin:calc(-1 * var(--el-overlay-padding));width:calc(100% + 2 * var(--el-overlay-padding));height:calc(100% + 2 * var(--el-overlay-padding));border-radius:0;padding-bottom:24px;bottom:0}.animate-text{background-image:linear-gradient(75deg, var(--el-base-primary), var(--el-base-subtle), var(--el-base-primary), var(--el-base-subtle));color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:2s linear infinite TextAnimation}@keyframes TextAnimation{0%{background-position:0 0}to{background-position:100% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.terms h6{font-size:12px;line-height:var(--tw-leading,16px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h5{font-size:14px;line-height:var(--tw-leading,20px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h4{font-size:16px;line-height:var(--tw-leading,24px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h3{font-size:18px;line-height:var(--tw-leading,26px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h2{font-size:20px;line-height:var(--tw-leading,28px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}.terms h1{font-size:24px;line-height:var(--tw-leading,30px);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--el-base-primary)}}.dev-host,:host{pointer-events:none;z-index:1000;font-size:16px;line-height:var(--tw-leading,24px);color:var(--el-base-primary);scrollbar-color:#e5e7eb transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:fixed;inset:0}.markdown{text-autospace:normal;text-spacing-trim:trim-start}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{word-break:auto-phrase}.tok-comment,.tok-meta{color:#6a737d}.tok-keyword{color:#d73a49}.tok-atom,.tok-bool,.tok-literal,.tok-number{color:#005cc5}.tok-string,.tok-string2{color:#032f62}.tok-variableName{color:#24292e}.tok-variableName.tok-definition{color:#6f42c1}.tok-variableName.tok-local{color:#24292e}.tok-variableName2,.tok-macroName,.tok-typeName,.tok-namespace,.tok-className{color:#6f42c1}.tok-propertyName{color:#24292e}.tok-propertyName.tok-definition{color:#005cc5}.tok-labelName{color:#22863a}.tok-url,.tok-link{color:#032f62;text-decoration:underline}.tok-operator{color:#d73a49}.tok-punctuation{color:#24292e}.tok-invalid{color:#b31d28}.tok-deleted{color:#b31d28;background-color:#ffeef0}.tok-inserted{color:#22863a;background-color:#f0fff4}.tok-heading{color:#005cc5;font-weight:700}.tok-emphasis{color:#24292e;font-style:italic}.tok-strong{color:#24292e;font-weight:700}.tok-strikethrough{text-decoration:line-through}.tok-monospace{color:#005cc5}.tok-processingInstruction,[data-syntax-theme=dark] .tok-comment,[data-syntax-theme=dark] .tok-meta{color:#6a737d}[data-syntax-theme=dark] .tok-keyword{color:#f97583}[data-syntax-theme=dark] .tok-atom,[data-syntax-theme=dark] .tok-bool,[data-syntax-theme=dark] .tok-literal,[data-syntax-theme=dark] .tok-number,[data-syntax-theme=dark] .tok-propertyName.tok-definition{color:#79b8ff}[data-syntax-theme=dark] .tok-string,[data-syntax-theme=dark] .tok-string2{color:#9ecbff}[data-syntax-theme=dark] .tok-url,[data-syntax-theme=dark] .tok-link{color:#dbedff}[data-syntax-theme=dark] .tok-variableName,[data-syntax-theme=dark] .tok-variableName.tok-local,[data-syntax-theme=dark] .tok-propertyName,[data-syntax-theme=dark] .tok-emphasis,[data-syntax-theme=dark] .tok-strong{color:#e1e4e8}[data-syntax-theme=dark] .tok-variableName.tok-definition,[data-syntax-theme=dark] .tok-variableName2,[data-syntax-theme=dark] .tok-macroName,[data-syntax-theme=dark] .tok-typeName,[data-syntax-theme=dark] .tok-namespace,[data-syntax-theme=dark] .tok-className{color:#b392f0}[data-syntax-theme=dark] .tok-labelName{color:#85e89d}[data-syntax-theme=dark] .tok-invalid{color:#fdaeb7}[data-syntax-theme=dark] .tok-deleted{color:#fdaeb7;background-color:#86181d}[data-syntax-theme=dark] .tok-inserted{color:#85e89d;background-color:#144620}[data-syntax-theme=dark] .tok-heading{color:#79b8ff}[data-syntax-theme=dark] .tok-operator{color:#f97583}[data-syntax-theme=dark] .tok-punctuation{color:#e1e4e8}[data-syntax-theme=dark] .tok-monospace{color:#79b8ff}[data-syntax-theme=dark] .tok-processingInstruction{color:#6a737d}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}`;function qm(e,t){Ym(e)&&(e=`100%`);let n=Xm(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(e=t===360?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t)),e)}function Jm(e){return Math.min(1,Math.max(0,e))}function Ym(e){return typeof e==`string`&&e.indexOf(`.`)!==-1&&parseFloat(e)===1}function Xm(e){return typeof e==`string`&&e.indexOf(`%`)!==-1}function Zm(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Qm(e){return Number(e)<=1?`${Number(e)*100}%`:e}function $m(e){return e.length===1?`0`+e:String(e)}function eh(e,t,n){return{r:qm(e,255)*255,g:qm(t,255)*255,b:qm(n,255)*255}}function th(e,t,n){e=qm(e,255),t=qm(t,255),n=qm(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r===i)o=0,a=0;else{let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t<n?6:0);break;case t:a=(n-e)/c+2;break;case n:a=(e-t)/c+4;break;default:break}a/=6}return{h:a,s:o,l:s}}function nh(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function rh(e,t,n){let r,i,a;if(e=qm(e,360),t=qm(t,100),n=qm(n,100),t===0)i=n,a=n,r=n;else{let o=n<.5?n*(1+t):n+t-n*t,s=2*n-o;r=nh(s,o,e+1/3),i=nh(s,o,e),a=nh(s,o,e-1/3)}return{r:r*255,g:i*255,b:a*255}}function ih(e,t,n){e=qm(e,255),t=qm(t,255),n=qm(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=r,s=r-i,c=r===0?0:s/r;if(r===i)a=0;else{switch(r){case e:a=(t-n)/s+(t<n?6:0);break;case t:a=(n-e)/s+2;break;case n:a=(e-t)/s+4;break;default:break}a/=6}return{h:a,s:c,v:o}}function ah(e,t,n){e=qm(e,360)*6,t=qm(t,100),n=qm(n,100);let r=Math.floor(e),i=e-r,a=n*(1-t),o=n*(1-i*t),s=n*(1-(1-i)*t),c=r%6,l=[n,o,a,a,s,n][c],u=[s,n,n,o,a,a][c],d=[a,a,s,n,n,o][c];return{r:l*255,g:u*255,b:d*255}}function oh(e,t,n,r){let i=[$m(Math.round(e).toString(16)),$m(Math.round(t).toString(16)),$m(Math.round(n).toString(16))];return r&&i[0].startsWith(i[0].charAt(1))&&i[1].startsWith(i[1].charAt(1))&&i[2].startsWith(i[2].charAt(1))?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(``)}function sh(e,t,n,r,i){let a=[$m(Math.round(e).toString(16)),$m(Math.round(t).toString(16)),$m(Math.round(n).toString(16)),$m(uh(r))];return i&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))&&a[3].startsWith(a[3].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join(``)}function ch(e,t,n,r){let i=e/100,a=t/100,o=n/100,s=r/100;return{r:255*(1-i)*(1-s),g:255*(1-a)*(1-s),b:255*(1-o)*(1-s)}}function lh(e,t,n){let r=1-e/255,i=1-t/255,a=1-n/255,o=Math.min(r,i,a);return o===1?(r=0,i=0,a=0):(r=(r-o)/(1-o)*100,i=(i-o)/(1-o)*100,a=(a-o)/(1-o)*100),o*=100,{c:Math.round(r),m:Math.round(i),y:Math.round(a),k:Math.round(o)}}function uh(e){return Math.round(parseFloat(e)*255).toString(16)}function dh(e){return fh(e)/255}function fh(e){return parseInt(e,16)}function ph(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var mh={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`#00ffff`,aquamarine:`#7fffd4`,azure:`#f0ffff`,beige:`#f5f5dc`,bisque:`#ffe4c4`,black:`#000000`,blanchedalmond:`#ffebcd`,blue:`#0000ff`,blueviolet:`#8a2be2`,brown:`#a52a2a`,burlywood:`#deb887`,cadetblue:`#5f9ea0`,chartreuse:`#7fff00`,chocolate:`#d2691e`,coral:`#ff7f50`,cornflowerblue:`#6495ed`,cornsilk:`#fff8dc`,crimson:`#dc143c`,cyan:`#00ffff`,darkblue:`#00008b`,darkcyan:`#008b8b`,darkgoldenrod:`#b8860b`,darkgray:`#a9a9a9`,darkgreen:`#006400`,darkgrey:`#a9a9a9`,darkkhaki:`#bdb76b`,darkmagenta:`#8b008b`,darkolivegreen:`#556b2f`,darkorange:`#ff8c00`,darkorchid:`#9932cc`,darkred:`#8b0000`,darksalmon:`#e9967a`,darkseagreen:`#8fbc8f`,darkslateblue:`#483d8b`,darkslategray:`#2f4f4f`,darkslategrey:`#2f4f4f`,darkturquoise:`#00ced1`,darkviolet:`#9400d3`,deeppink:`#ff1493`,deepskyblue:`#00bfff`,dimgray:`#696969`,dimgrey:`#696969`,dodgerblue:`#1e90ff`,firebrick:`#b22222`,floralwhite:`#fffaf0`,forestgreen:`#228b22`,fuchsia:`#ff00ff`,gainsboro:`#dcdcdc`,ghostwhite:`#f8f8ff`,goldenrod:`#daa520`,gold:`#ffd700`,gray:`#808080`,green:`#008000`,greenyellow:`#adff2f`,grey:`#808080`,honeydew:`#f0fff0`,hotpink:`#ff69b4`,indianred:`#cd5c5c`,indigo:`#4b0082`,ivory:`#fffff0`,khaki:`#f0e68c`,lavenderblush:`#fff0f5`,lavender:`#e6e6fa`,lawngreen:`#7cfc00`,lemonchiffon:`#fffacd`,lightblue:`#add8e6`,lightcoral:`#f08080`,lightcyan:`#e0ffff`,lightgoldenrodyellow:`#fafad2`,lightgray:`#d3d3d3`,lightgreen:`#90ee90`,lightgrey:`#d3d3d3`,lightpink:`#ffb6c1`,lightsalmon:`#ffa07a`,lightseagreen:`#20b2aa`,lightskyblue:`#87cefa`,lightslategray:`#778899`,lightslategrey:`#778899`,lightsteelblue:`#b0c4de`,lightyellow:`#ffffe0`,lime:`#00ff00`,limegreen:`#32cd32`,linen:`#faf0e6`,magenta:`#ff00ff`,maroon:`#800000`,mediumaquamarine:`#66cdaa`,mediumblue:`#0000cd`,mediumorchid:`#ba55d3`,mediumpurple:`#9370db`,mediumseagreen:`#3cb371`,mediumslateblue:`#7b68ee`,mediumspringgreen:`#00fa9a`,mediumturquoise:`#48d1cc`,mediumvioletred:`#c71585`,midnightblue:`#191970`,mintcream:`#f5fffa`,mistyrose:`#ffe4e1`,moccasin:`#ffe4b5`,navajowhite:`#ffdead`,navy:`#000080`,oldlace:`#fdf5e6`,olive:`#808000`,olivedrab:`#6b8e23`,orange:`#ffa500`,orangered:`#ff4500`,orchid:`#da70d6`,palegoldenrod:`#eee8aa`,palegreen:`#98fb98`,paleturquoise:`#afeeee`,palevioletred:`#db7093`,papayawhip:`#ffefd5`,peachpuff:`#ffdab9`,peru:`#cd853f`,pink:`#ffc0cb`,plum:`#dda0dd`,powderblue:`#b0e0e6`,purple:`#800080`,rebeccapurple:`#663399`,red:`#ff0000`,rosybrown:`#bc8f8f`,royalblue:`#4169e1`,saddlebrown:`#8b4513`,salmon:`#fa8072`,sandybrown:`#f4a460`,seagreen:`#2e8b57`,seashell:`#fff5ee`,sienna:`#a0522d`,silver:`#c0c0c0`,skyblue:`#87ceeb`,slateblue:`#6a5acd`,slategray:`#708090`,slategrey:`#708090`,snow:`#fffafa`,springgreen:`#00ff7f`,steelblue:`#4682b4`,tan:`#d2b48c`,teal:`#008080`,thistle:`#d8bfd8`,tomato:`#ff6347`,turquoise:`#40e0d0`,violet:`#ee82ee`,wheat:`#f5deb3`,white:`#ffffff`,whitesmoke:`#f5f5f5`,yellow:`#ffff00`,yellowgreen:`#9acd32`};function hh(e){let t={r:0,g:0,b:0},n=1,r=null,i=null,a=null,o=!1,s=!1;return typeof e==`string`&&(e=bh(e)),typeof e==`object`&&(xh(e.r)&&xh(e.g)&&xh(e.b)?(t=eh(e.r,e.g,e.b),o=!0,s=String(e.r).substr(-1)===`%`?`prgb`:`rgb`):xh(e.h)&&xh(e.s)&&xh(e.v)?(r=Qm(e.s),i=Qm(e.v),t=ah(e.h,r,i),o=!0,s=`hsv`):xh(e.h)&&xh(e.s)&&xh(e.l)?(r=Qm(e.s),a=Qm(e.l),t=rh(e.h,r,a),o=!0,s=`hsl`):xh(e.c)&&xh(e.m)&&xh(e.y)&&xh(e.k)&&(t=ch(e.c,e.m,e.y,e.k),o=!0,s=`cmyk`),Object.prototype.hasOwnProperty.call(e,`a`)&&(n=e.a)),n=Zm(n),{ok:o,format:e.format||s,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var gh=`(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)`,_h=`[\\s|\\(]+(`+gh+`)[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?`,vh=`[\\s|\\(]+(`+gh+`)[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?`,yh={CSS_UNIT:new RegExp(gh),rgb:RegExp(`rgb`+_h),rgba:RegExp(`rgba`+vh),hsl:RegExp(`hsl`+_h),hsla:RegExp(`hsla`+vh),hsv:RegExp(`hsv`+_h),hsva:RegExp(`hsva`+vh),cmyk:RegExp(`cmyk`+vh),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function bh(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;let t=!1;if(mh[e])e=mh[e],t=!0;else if(e===`transparent`)return{r:0,g:0,b:0,a:0,format:`name`};let n=yh.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=yh.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=yh.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=yh.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=yh.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=yh.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=yh.cmyk.exec(e),n?{c:n[1],m:n[2],y:n[3],k:n[4]}:(n=yh.hex8.exec(e),n?{r:fh(n[1]),g:fh(n[2]),b:fh(n[3]),a:dh(n[4]),format:t?`name`:`hex8`}:(n=yh.hex6.exec(e),n?{r:fh(n[1]),g:fh(n[2]),b:fh(n[3]),format:t?`name`:`hex`}:(n=yh.hex4.exec(e),n?{r:fh(n[1]+n[1]),g:fh(n[2]+n[2]),b:fh(n[3]+n[3]),a:dh(n[4]+n[4]),format:t?`name`:`hex8`}:(n=yh.hex3.exec(e),n?{r:fh(n[1]+n[1]),g:fh(n[2]+n[2]),b:fh(n[3]+n[3]),format:t?`name`:`hex`}:!1))))))))))}function xh(e){return typeof e==`number`?!Number.isNaN(e):yh.CSS_UNIT.test(e)}var Sh=class e{constructor(t=``,n={}){if(t instanceof e)return t;typeof t==`number`&&(t=ph(t)),this.originalInput=t;let r=hh(t);this.originalInput=t,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=n.format??r.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}getBrightness(){let e=this.toRgb();return(e.r*299+e.g*587+e.b*114)/1e3}getLuminance(){let e=this.toRgb(),t,n,r,i=e.r/255,a=e.g/255,o=e.b/255;return t=i<=.03928?i/12.92:((i+.055)/1.055)**2.4,n=a<=.03928?a/12.92:((a+.055)/1.055)**2.4,r=o<=.03928?o/12.92:((o+.055)/1.055)**2.4,.2126*t+.7152*n+.0722*r}getAlpha(){return this.a}setAlpha(e){return this.a=Zm(e),this.roundA=Math.round(100*this.a)/100,this}isMonochrome(){let{s:e}=this.toHsl();return e===0}toHsv(){let e=ih(this.r,this.g,this.b);return{h:e.h*360,s:e.s,v:e.v,a:this.a}}toHsvString(){let e=ih(this.r,this.g,this.b),t=Math.round(e.h*360),n=Math.round(e.s*100),r=Math.round(e.v*100);return this.a===1?`hsv(${t}, ${n}%, ${r}%)`:`hsva(${t}, ${n}%, ${r}%, ${this.roundA})`}toHsl(){let e=th(this.r,this.g,this.b);return{h:e.h*360,s:e.s,l:e.l,a:this.a}}toHslString(){let e=th(this.r,this.g,this.b),t=Math.round(e.h*360),n=Math.round(e.s*100),r=Math.round(e.l*100);return this.a===1?`hsl(${t}, ${n}%, ${r}%)`:`hsla(${t}, ${n}%, ${r}%, ${this.roundA})`}toHex(e=!1){return oh(this.r,this.g,this.b,e)}toHexString(e=!1){return`#`+this.toHex(e)}toHex8(e=!1){return sh(this.r,this.g,this.b,this.a,e)}toHex8String(e=!1){return`#`+this.toHex8(e)}toHexShortString(e=!1){return this.a===1?this.toHexString(e):this.toHex8String(e)}toRgb(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}}toRgbString(){let e=Math.round(this.r),t=Math.round(this.g),n=Math.round(this.b);return this.a===1?`rgb(${e}, ${t}, ${n})`:`rgba(${e}, ${t}, ${n}, ${this.roundA})`}toPercentageRgb(){let e=e=>`${Math.round(qm(e,255)*100)}%`;return{r:e(this.r),g:e(this.g),b:e(this.b),a:this.a}}toPercentageRgbString(){let e=e=>Math.round(qm(e,255)*100);return this.a===1?`rgb(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%)`:`rgba(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%, ${this.roundA})`}toCmyk(){return{...lh(this.r,this.g,this.b)}}toCmykString(){let{c:e,m:t,y:n,k:r}=lh(this.r,this.g,this.b);return`cmyk(${e}, ${t}, ${n}, ${r})`}toName(){if(this.a===0)return`transparent`;if(this.a<1)return!1;let e=`#`+oh(this.r,this.g,this.b,!1);for(let[t,n]of Object.entries(mh))if(e===n)return t;return!1}toString(e){let t=!!e;e??=this.format;let n=!1,r=this.a<1&&this.a>=0;return!t&&r&&(e.startsWith(`hex`)||e===`name`)?e===`name`&&this.a===0?this.toName():this.toRgbString():(e===`rgb`&&(n=this.toRgbString()),e===`prgb`&&(n=this.toPercentageRgbString()),(e===`hex`||e===`hex6`)&&(n=this.toHexString()),e===`hex3`&&(n=this.toHexString(!0)),e===`hex4`&&(n=this.toHex8String(!0)),e===`hex8`&&(n=this.toHex8String()),e===`name`&&(n=this.toName()),e===`hsl`&&(n=this.toHslString()),e===`hsv`&&(n=this.toHsvString()),e===`cmyk`&&(n=this.toCmykString()),n||this.toHexString())}toNumber(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)}clone(){return new e(this.toString())}lighten(t=10){let n=this.toHsl();return n.l+=t/100,n.l=Jm(n.l),new e(n)}brighten(t=10){let n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)}darken(t=10){let n=this.toHsl();return n.l-=t/100,n.l=Jm(n.l),new e(n)}tint(e=10){return this.mix(`white`,e)}shade(e=10){return this.mix(`black`,e)}desaturate(t=10){let n=this.toHsl();return n.s-=t/100,n.s=Jm(n.s),new e(n)}saturate(t=10){let n=this.toHsl();return n.s+=t/100,n.s=Jm(n.s),new e(n)}greyscale(){return this.desaturate(100)}spin(t){let n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)}mix(t,n=50){let r=this.toRgb(),i=new e(t).toRgb(),a=n/100;return new e({r:(i.r-r.r)*a+r.r,g:(i.g-r.g)*a+r.g,b:(i.b-r.b)*a+r.b,a:(i.a-r.a)*a+r.a})}analogous(t=6,n=30){let r=this.toHsl(),i=360/n,a=[this];for(r.h=(r.h-(i*t>>1)+720)%360;--t;)r.h=(r.h+i)%360,a.push(new e(r));return a}complement(){let t=this.toHsl();return t.h=(t.h+180)%360,new e(t)}monochromatic(t=6){let n=this.toHsv(),{h:r}=n,{s:i}=n,{v:a}=n,o=[],s=1/t;for(;t--;)o.push(new e({h:r,s:i,v:a})),a=(a+s)%1;return o}splitcomplement(){let t=this.toHsl(),{h:n}=t;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]}onBackground(t){let n=this.toRgb(),r=new e(t).toRgb(),i=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/i,g:(n.g*n.a+r.g*r.a*(1-n.a))/i,b:(n.b*n.a+r.b*r.a*(1-n.a))/i,a:i})}triad(){return this.polyad(3)}tetrad(){return this.polyad(4)}polyad(t){let n=this.toHsl(),{h:r}=n,i=[this],a=360/t;for(let o=1;o<t;o++)i.push(new e({h:(r+o*a)%360,s:n.s,l:n.l}));return i}equals(t){let n=new e(t);return this.format===`cmyk`||n.format===`cmyk`?this.toCmykString()===n.toCmykString():this.toRgbString()===n.toRgbString()}},Ch=[`tiny`,`compact`,`full`];function wh(e){return Ch.includes(e)?e:Ch[0]}var Th=[`top-left`,`top`,`top-right`,`bottom-left`,`bottom`,`bottom-right`];function Eh(e){return Th.includes(e)?e:`bottom-right`}var Dh={main_label:`Need help?`,start_call:`Start a call`,start_chat:`Start a chat`,send_message:`Send`,new_call:`New call`,end_call:`End`,mute_microphone:`Mute microphone`,text_mode:`Switch to text mode`,voice_mode:`Switch to voice mode`,switched_to_text_mode:`Switched to text mode`,switched_to_voice_mode:`Switched to voice mode`,change_language:`Change language`,collapse:`Collapse`,expand:`Expand`,copied:`Copied!`,accept_terms:`Accept`,dismiss_terms:`Cancel`,listening_status:`Listening`,speaking_status:`Talk to interrupt`,connecting_status:`Connecting`,chatting_status:`Chatting with AI Agent`,input_label:`Text message input`,input_placeholder:`Send a message...`,input_placeholder_text_only:`Send a message...`,input_placeholder_new_conversation:`Start a new conversation`,user_ended_conversation:`You ended the conversation`,agent_ended_conversation:`The agent ended the conversation`,conversation_id:`ID`,error_occurred:`An error occurred`,copy_id:`Copy ID`,initiate_feedback:`How was this conversation?`,request_follow_up_feedback:`Tell us more`,thanks_for_feedback:`Thank you for your feedback!`,thanks_for_feedback_details:`Your feedback helps us improve our service and better support you in the future.`,follow_up_feedback_placeholder:`Tell us more about your experience...`,submit:`Submit`,go_back:`Go back`,copy:`Copy`,download:`Download`,wrap:`Wrap`,agent_working:`Working...`,agent_done:`Completed`,agent_error:`Error occurred`,attach_file:`Attach file`,remove_file:`Remove file`,file_upload_error:`Failed to upload file.`,file_type_unsupported:`Unsupported file type. Accepted types:`,file_too_large:`File size exceeds the maximum limit.`,file_limit_reached:`Maximum number of files for this conversation reached.`},Oh=Object.keys(Dh),kh={base:`#ffffff`,base_hover:`#f9fafb`,base_active:`#f3f4f6`,base_border:`#e5e7eb`,base_subtle:`#6b7280`,base_primary:`#000000`,base_error:`#ef4444`,accent:`#000000`,accent_hover:`#1f2937`,accent_active:`#374151`,accent_border:`#4b5563`,accent_subtle:`#6b7280`,accent_primary:`#ffffff`,overlay_padding:32,button_radius:18,input_radius:10,bubble_radius:15,sheet_radius:`calc(var(--el-button-radius) + 6px)`,compact_sheet_radius:`calc(var(--el-button-radius) + 12px)`,dropdown_sheet_radius:`calc(var(--el-input-radius) + 6px)`},Ah=Object.keys(kh);function jh(e=`us`){switch(e){case`eu-residency`:case`in-residency`:case`us`:case`global`:return e;default:return console.warn(`[ConversationalAI] Invalid server-location: ${e}. Defaulting to "us"`),`us`}}function Mh(e){let t=xf(e);if(t==null)throw Error(`${e.displayName} cannot be used outside of provider`);return t}var Nh=Vd(null);function Ph({value:e,children:t}){let n=bf(()=>Object.fromEntries(Gm.map(t=>[t,qp(e[t])])),[]);return Gm.forEach(t=>{n[t].value=e[t]}),R(Nh.Provider,{value:n,children:t})}function Fh(){return Mh(Nh)}function Ih(e){return Fh()[e]}var Lh=Vd(null);function Rh({children:e}){let t=Ih(`server-location`),n=bf(()=>{let e=Qp(()=>jh(t.value)),n={us:`https://api.us.elevenlabs.io`,"eu-residency":`https://api.eu.residency.elevenlabs.io`,"in-residency":`https://api.in.residency.elevenlabs.io`,global:`https://api.elevenlabs.io`},r={us:`wss://api.us.elevenlabs.io`,"eu-residency":`wss://api.eu.residency.elevenlabs.io`,"in-residency":`wss://api.in.residency.elevenlabs.io`,global:`wss://api.elevenlabs.io`};return{location:e,serverUrl:Qp(()=>n[e.value]),webSocketUrl:Qp(()=>r[e.value])}},[]);return R(Lh.Provider,{value:n,children:e})}function zh(){return Mh(Lh)}var Bh={en:{name:`English`,flagCode:`us`,languageCode:`en`},zh:{name:`中文`,flagCode:`cn`,languageCode:`zh`},es:{name:`Español`,flagCode:`es`,languageCode:`es`},hi:{name:`हिन्दी`,flagCode:`in`,languageCode:`hi`},pt:{name:`Português (Portugal)`,flagCode:`pt`,languageCode:`pt`},"pt-br":{name:`Português (Brasil)`,flagCode:`br`,languageCode:`pt-br`},fr:{name:`Français`,flagCode:`fr`,languageCode:`fr`},de:{name:`Deutsch`,flagCode:`de`,languageCode:`de`},ja:{name:`日本語`,flagCode:`jp`,languageCode:`ja`},ar:{name:`العربية`,flagCode:`ae`,languageCode:`ar`},ru:{name:`Русский`,flagCode:`ru`,languageCode:`ru`},ko:{name:`한국어`,flagCode:`kr`,languageCode:`ko`},id:{name:`Bahasa Indonesia`,flagCode:`id`,languageCode:`id`},it:{name:`Italiano`,flagCode:`it`,languageCode:`it`},nl:{name:`Nederlands`,flagCode:`nl`,languageCode:`nl`},tr:{name:`Türkçe`,flagCode:`tr`,languageCode:`tr`},pl:{name:`Polski`,flagCode:`pl`,languageCode:`pl`},sv:{name:`Svenska`,flagCode:`se`,languageCode:`sv`},ms:{name:`Bahasa Melayu`,flagCode:`my`,languageCode:`ms`},ro:{name:`Română`,flagCode:`ro`,languageCode:`ro`},uk:{name:`Українська`,flagCode:`ua`,languageCode:`uk`},el:{name:`Ελληνικά`,flagCode:`gr`,languageCode:`el`},cs:{name:`Čeština`,flagCode:`cz`,languageCode:`cs`},da:{name:`Dansk`,flagCode:`dk`,languageCode:`da`},fi:{name:`Suomi`,flagCode:`fi`,languageCode:`fi`},bg:{name:`Български`,flagCode:`bg`,languageCode:`bg`},hr:{name:`Hrvatski`,flagCode:`hr`,languageCode:`hr`},sk:{name:`Slovenčina`,flagCode:`sk`,languageCode:`sk`},ta:{name:`தமிழ்`,flagCode:`in`,languageCode:`ta`},hu:{name:`Magyar`,flagCode:`hu`,languageCode:`hu`},no:{name:`Norsk`,flagCode:`no`,languageCode:`no`},vi:{name:`Tiếng Việt`,flagCode:`vn`,languageCode:`vi`},tl:{name:`Filipino`,flagCode:`ph`,languageCode:`tl`},af:{name:`Afrikaans`,flagCode:`za`,languageCode:`af`},hy:{name:`Հայերեն`,flagCode:`am`,languageCode:`hy`},as:{name:`অসমীয়া`,flagCode:`in`,languageCode:`as`},az:{name:`Azərbaycan`,flagCode:`az`,languageCode:`az`},be:{name:`Беларуская`,flagCode:`by`,languageCode:`be`},bn:{name:`বাংলা`,flagCode:`in`,languageCode:`bn`},bs:{name:`Bosanski`,flagCode:`ba`,languageCode:`bs`},ca:{name:`Català`,flagCode:`es-ct`,languageCode:`ca`},et:{name:`Eesti`,flagCode:`ee`,languageCode:`et`},gl:{name:`Galego`,flagCode:`es-ga`,languageCode:`gl`},ka:{name:`ქართული`,flagCode:`ge`,languageCode:`ka`},gu:{name:`ગુજરાતી`,flagCode:`in`,languageCode:`gu`},ha:{name:`Hausa`,flagCode:`ng`,languageCode:`ha`},he:{name:`עברית`,flagCode:`il`,languageCode:`he`},is:{name:`Íslenska`,flagCode:`is`,languageCode:`is`},ga:{name:`Gaeilge`,flagCode:`ie`,languageCode:`ga`},jv:{name:`Basa Jawa`,flagCode:`id`,languageCode:`jv`},kn:{name:`ಕನ್ನಡ`,flagCode:`in`,languageCode:`kn`},kk:{name:`Қазақша`,flagCode:`kz`,languageCode:`kk`},ky:{name:`Кыргызча`,flagCode:`kg`,languageCode:`ky`},lv:{name:`Latviešu`,flagCode:`lv`,languageCode:`lv`},lt:{name:`Lietuvių`,flagCode:`lt`,languageCode:`lt`},lb:{name:`Lëtzebuergesch`,flagCode:`lu`,languageCode:`lb`},mk:{name:`Македонски`,flagCode:`mk`,languageCode:`mk`},ml:{name:`മലയാളം`,flagCode:`in`,languageCode:`ml`},mr:{name:`मराठी`,flagCode:`in`,languageCode:`mr`},ne:{name:`नेपाली`,flagCode:`np`,languageCode:`ne`},ps:{name:`پښتو`,flagCode:`af`,languageCode:`ps`},fa:{name:`فارسی`,flagCode:`ir`,languageCode:`fa`},pa:{name:`ਪੰਜਾਬੀ`,flagCode:`in`,languageCode:`pa`},sr:{name:`Српски`,flagCode:`rs`,languageCode:`sr`},sd:{name:`سنڌي`,flagCode:`in`,languageCode:`sd`},sl:{name:`Slovenščina`,flagCode:`si`,languageCode:`sl`},so:{name:`Soomaali`,flagCode:`so`,languageCode:`so`},sw:{name:`Kiswahili`,flagCode:`ke`,languageCode:`sw`},te:{name:`తెలుగు`,flagCode:`in`,languageCode:`te`},th:{name:`ไทย`,flagCode:`th`,languageCode:`th`},ur:{name:`اردو`,flagCode:`pk`,languageCode:`ur`},cy:{name:`Cymraeg`,flagCode:`gb-wls`,languageCode:`cy`}};function Vh(e){return Object.keys(Bh).includes(e??``)}var Hh=`xi:convai-widget-last-used-language`,Uh=Vd(null);function Wh(){try{let e=localStorage.getItem(Hh);if(e&&Vh(e))return e}catch{}}function Gh(){try{let e=[];for(let t of navigator.languages){let n=t.toLowerCase();e.push(n);let r=n.split(`-`)[0];r!==n&&e.push(r)}return e}catch(e){return console.warn(`[ConversationalAI] Could not read navigator.languages:`,e),[]}}function Kh({languageAttribute:e,supported:t,defaultLanguage:n}){let r=new Set([...t,n]),i=[e,Wh(),...Gh()];for(let e of i)if(e&&r.has(e))return e;return n}function qh(e){try{localStorage.setItem(Hh,e)}catch{}}function Jh({children:e}){let t=Fy(),n=Ih(`language`),r=Ih(`override-language`),i=L(()=>(t.value.supported_language_overrides??[]).filter(Vh)),a=n.peek(),o=t.peek(),s=(o.supported_language_overrides??[]).filter(Vh),c=mm(Kh({languageAttribute:a&&Vh(a)?a:void 0,supported:s,defaultLanguage:o.language})),l=L(()=>i.value.map(e=>Bh[e]).sort((e,t)=>e.name.localeCompare(t.name))),u=bf(()=>({language:Qp(()=>Vh(r.value)?Bh[r.value]:Vh(c.value)&&i.value.includes(c.value)?Bh[c.value]:Bh[t.value.language]),setLanguage:e=>{c.value=e,qh(e)},options:l,showPicker:Qp(()=>l.value.length>0)}),[]);return R(Uh.Provider,{value:u,children:e})}function Yh(){return Mh(Uh)}var Xh=Vd(null);function Zh({children:e}){let{language:t}=Yh(),n=Ih(`override-prompt`),r=Ih(`override-llm`),i=Ih(`override-speed`),a=Ih(`override-stability`),o=Ih(`override-similarity-boost`),s=Ih(`override-first-message`),c=Ih(`override-voice-id`),l=Ih(`override-text-only`),u=Ih(`user-id`),d=L(()=>({agent:{prompt:{prompt:n.value,llm:r.value},firstMessage:s.value,language:t.value.languageCode},tts:{voiceId:c.value,speed:i.value?parseFloat(i.value):void 0,stability:a.value?parseFloat(a.value):void 0,similarityBoost:o.value?parseFloat(o.value):void 0},conversation:{textOnly:Wm(l.value)??void 0}})),f=Ih(`dynamic-variables`),p=L(()=>{if(f.value)try{return JSON.parse(f.value)}catch(e){console.error(`[ConversationalAI] Cannot parse dynamic-variables: ${e?.message}`)}}),m=Ih(`worklet-path-raw-audio-processor`),h=Ih(`worklet-path-audio-concat-processor`),g=Ih(`worklet-path-libsamplerate`),{webSocketUrl:_}=zh(),v=Ih(`agent-id`),y=Ih(`signed-url`),b=Ih(`environment`),x=Iy(),S=Uy(),C=L(()=>{let e=S.value,t={dynamicVariables:p.value,overrides:d.value,connectionDelay:{default:300},textOnly:x.value,userId:u.value||void 0,environment:b.value||void 0,libsampleratePath:g.value,workletPaths:{rawAudioProcessor:m.value,audioConcatProcessor:h.value}};return v.value?e?{agentId:v.value,origin:_.value,connectionType:`webrtc`,...t}:{agentId:v.value,origin:_.value,connectionType:`websocket`,...t}:y.value?{signedUrl:y.value,connectionType:`websocket`,...t}:(console.error(`[ConversationalAI] Either agent-id or signed-url is required`),null)});return C.value?R(Xh.Provider,{value:C,children:e}):null}function Qh(){return Mh(Xh)}var $h=`5.2.0`;function eg(e,t){return new Promise(n=>setTimeout(n,e,t))}function tg(){return new Promise(e=>{let t=new MessageChannel;t.port1.onmessage=()=>e(),t.port2.postMessage(null)})}function ng(e,t=1/0){let{requestIdleCallback:n}=window;return n?new Promise(e=>n.call(window,()=>e(),{timeout:t})):eg(Math.min(e,t))}function rg(e){return!!e&&typeof e.then==`function`}function ig(e,t){try{let n=e();rg(n)?n.then(e=>t(!0,e),e=>t(!1,e)):t(!0,n)}catch(e){t(!1,e)}}async function ag(e,t,n=16){let r=Array(e.length),i=Date.now();for(let a=0;a<e.length;++a){r[a]=t(e[a],a);let o=Date.now();o>=i+n&&(i=o,await tg())}return r}function og(e){return e.then(void 0,()=>void 0),e}function sg(e,t){for(let n=0,r=e.length;n<r;++n)if(e[n]===t)return!0;return!1}function cg(e,t){return!sg(e,t)}function lg(e){return parseInt(e)}function ug(e){return parseFloat(e)}function dg(e,t){return typeof e==`number`&&isNaN(e)?t:e}function fg(e){return e.reduce((e,t)=>e+ +!!t,0)}function pg(e,t=1){if(Math.abs(t)>=1)return Math.round(e/t)*t;{let n=1/t;return Math.round(e*n)/n}}function mg(e){let t=`Unexpected syntax '${e}'`,n=/^\s*([a-z-]*)(.*)$/i.exec(e),r=n[1]||void 0,i={},a=/([.:#][\w-]+|\[.+?\])/gi,o=(e,t)=>{i[e]=i[e]||[],i[e].push(t)};for(;;){let e=a.exec(n[2]);if(!e)break;let r=e[0];switch(r[0]){case`.`:o(`class`,r.slice(1));break;case`#`:o(`id`,r.slice(1));break;case`[`:{let e=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(r);if(e)o(e[1],e[4]??e[5]??``);else throw Error(t);break}default:throw Error(t)}}return[r,i]}function hg(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>127)return new TextEncoder().encode(e);t[n]=r}return t}function gg(e,t){let n=e[0]>>>16,r=e[0]&65535,i=e[1]>>>16,a=e[1]&65535,o=t[0]>>>16,s=t[0]&65535,c=t[1]>>>16,l=t[1]&65535,u=0,d=0,f=0,p=0;p+=a+l,f+=p>>>16,p&=65535,f+=i+c,d+=f>>>16,f&=65535,d+=r+s,u+=d>>>16,d&=65535,u+=n+o,u&=65535,e[0]=u<<16|d,e[1]=f<<16|p}function _g(e,t){let n=e[0]>>>16,r=e[0]&65535,i=e[1]>>>16,a=e[1]&65535,o=t[0]>>>16,s=t[0]&65535,c=t[1]>>>16,l=t[1]&65535,u=0,d=0,f=0,p=0;p+=a*l,f+=p>>>16,p&=65535,f+=i*l,d+=f>>>16,f&=65535,f+=a*c,d+=f>>>16,f&=65535,d+=r*l,u+=d>>>16,d&=65535,d+=i*c,u+=d>>>16,d&=65535,d+=a*s,u+=d>>>16,d&=65535,u+=n*l+r*c+i*s+a*o,u&=65535,e[0]=u<<16|d,e[1]=f<<16|p}function vg(e,t){let n=e[0];t%=64,t===32?(e[0]=e[1],e[1]=n):t<32?(e[0]=n<<t|e[1]>>>32-t,e[1]=e[1]<<t|n>>>32-t):(t-=32,e[0]=e[1]<<t|n>>>32-t,e[1]=n<<t|e[1]>>>32-t)}function yg(e,t){t%=64,t!==0&&(t<32?(e[0]=e[1]>>>32-t,e[1]<<=t):(e[0]=e[1]<<t-32,e[1]=0))}function bg(e,t){e[0]^=t[0],e[1]^=t[1]}var xg=[4283543511,3981806797],Sg=[3301882366,444984403];function Cg(e){let t=[0,e[0]>>>1];bg(e,t),_g(e,xg),t[1]=e[0]>>>1,bg(e,t),_g(e,Sg),t[1]=e[0]>>>1,bg(e,t)}var wg=[2277735313,289559509],Tg=[1291169091,658871167],Eg=[0,5],Dg=[0,1390208809],Og=[0,944331445];function kg(e,t){let n=hg(e);t||=0;let r=[0,n.length],i=r[1]%16,a=r[1]-i,o=[0,t],s=[0,t],c=[0,0],l=[0,0],u;for(u=0;u<a;u+=16)c[0]=n[u+4]|n[u+5]<<8|n[u+6]<<16|n[u+7]<<24,c[1]=n[u]|n[u+1]<<8|n[u+2]<<16|n[u+3]<<24,l[0]=n[u+12]|n[u+13]<<8|n[u+14]<<16|n[u+15]<<24,l[1]=n[u+8]|n[u+9]<<8|n[u+10]<<16|n[u+11]<<24,_g(c,wg),vg(c,31),_g(c,Tg),bg(o,c),vg(o,27),gg(o,s),_g(o,Eg),gg(o,Dg),_g(l,Tg),vg(l,33),_g(l,wg),bg(s,l),vg(s,31),gg(s,o),_g(s,Eg),gg(s,Og);c[0]=0,c[1]=0,l[0]=0,l[1]=0;let d=[0,0];switch(i){case 15:d[1]=n[u+14],yg(d,48),bg(l,d);case 14:d[1]=n[u+13],yg(d,40),bg(l,d);case 13:d[1]=n[u+12],yg(d,32),bg(l,d);case 12:d[1]=n[u+11],yg(d,24),bg(l,d);case 11:d[1]=n[u+10],yg(d,16),bg(l,d);case 10:d[1]=n[u+9],yg(d,8),bg(l,d);case 9:d[1]=n[u+8],bg(l,d),_g(l,Tg),vg(l,33),_g(l,wg),bg(s,l);case 8:d[1]=n[u+7],yg(d,56),bg(c,d);case 7:d[1]=n[u+6],yg(d,48),bg(c,d);case 6:d[1]=n[u+5],yg(d,40),bg(c,d);case 5:d[1]=n[u+4],yg(d,32),bg(c,d);case 4:d[1]=n[u+3],yg(d,24),bg(c,d);case 3:d[1]=n[u+2],yg(d,16),bg(c,d);case 2:d[1]=n[u+1],yg(d,8),bg(c,d);case 1:d[1]=n[u],bg(c,d),_g(c,wg),vg(c,31),_g(c,Tg),bg(o,c)}return bg(o,r),bg(s,r),gg(o,s),gg(s,o),Cg(o),Cg(s),gg(o,s),gg(s,o),(`00000000`+(o[0]>>>0).toString(16)).slice(-8)+(`00000000`+(o[1]>>>0).toString(16)).slice(-8)+(`00000000`+(s[0]>>>0).toString(16)).slice(-8)+(`00000000`+(s[1]>>>0).toString(16)).slice(-8)}function Ag(e){return{name:e.name,message:e.message,stack:e.stack?.split(`
|
|
267
267
|
`),...e}}function jg(e){return/^function\s.*?\{\s*\[native code]\s*}$/.test(String(e))}function Mg(e){return typeof e!=`function`}function Ng(e,t){let n=og(new Promise(n=>{let r=Date.now();ig(e.bind(null,t),(...e)=>{let t=Date.now()-r;if(!e[0])return n(()=>({error:e[1],duration:t}));let i=e[1];if(Mg(i))return n(()=>({value:i,duration:t}));n(()=>new Promise(e=>{let n=Date.now();ig(i,(...r)=>{let i=t+Date.now()-n;if(!r[0])return e({error:r[1],duration:i});e({value:r[1],duration:i})})}))})}));return function(){return n.then(e=>e())}}function Pg(e,t,n,r){let i=Object.keys(e).filter(e=>cg(n,e)),a=og(ag(i,n=>Ng(e[n],t),r));return async function(){let e=await ag(await a,e=>og(e()),r),t=await Promise.all(e),n={};for(let e=0;e<i.length;++e)n[i[e]]=t[e];return n}}function Fg(){let e=window,t=navigator;return fg([`MSCSSMatrix`in e,`msSetImmediate`in e,`msIndexedDB`in e,`msMaxTouchPoints`in t,`msPointerEnabled`in t])>=4}function Ig(){let e=window,t=navigator;return fg([`msWriteProfilerMark`in e,`MSStream`in e,`msLaunchUri`in t,`msSaveBlob`in t])>=3&&!Fg()}function Lg(){let e=window,t=navigator;return fg([`webkitPersistentStorage`in t,`webkitTemporaryStorage`in t,(t.vendor||``).indexOf(`Google`)===0,`webkitResolveLocalFileSystemURL`in e,`BatteryManager`in e,`webkitMediaStream`in e,`webkitSpeechGrammar`in e])>=5}function Rg(){let e=window,t=navigator;return fg([`ApplePayError`in e,`CSSPrimitiveValue`in e,`Counter`in e,t.vendor.indexOf(`Apple`)===0,`RGBColor`in e,`WebKitMediaKeys`in e])>=4}function zg(){let e=window,{HTMLElement:t,Document:n}=e;return fg([`safari`in e,!(`ongestureend`in e),!(`TouchEvent`in e),!(`orientation`in e),t&&!(`autocapitalize`in t.prototype),n&&`pointerLockElement`in n.prototype])>=4}function Bg(){let e=window;return jg(e.print)&&String(e.browser)===`[object WebPageNamespace]`}function Vg(){let e=window;return fg([`buildID`in navigator,`MozAppearance`in(document.documentElement?.style??{}),`onmozfullscreenchange`in e,`mozInnerScreenX`in e,`CSSMozDocumentRule`in e,`CanvasCaptureMediaStream`in e])>=4}function Hg(){let e=window,t=navigator,{CSS:n}=e;return fg([`userActivation`in t,n.supports(`color`,`light-dark(#000, #fff)`),n.supports(`height`,`1lh`),`globalPrivacyControl`in t])>=3}function Ug(){let{CSS:e}=window;return fg([e.supports(`selector(::details-content)`),e.supports(`selector(::before::marker)`),e.supports(`selector(::after::marker)`),!(`locale`in CompositionEvent.prototype)])>=3}function Wg(){let e=window;return fg([!(`MediaSettingsRange`in e),`RTCEncodedAudioFrame`in e,``+e.Intl==`[object Intl]`,``+e.Reflect==`[object Reflect]`])>=3}function Gg(){let e=window,{URLPattern:t}=e;return fg([`union`in Set.prototype,`Iterator`in e,t&&`hasRegExpGroups`in t.prototype,`RGB8`in WebGLRenderingContext.prototype])>=3}function Kg(){let e=window,t=document,{CSS:n,Promise:r,AudioContext:i}=e;return fg([r&&`try`in r,`caretPositionFromPoint`in t,i&&`onerror`in i.prototype,n.supports(`ruby-align`,`space-around`)])>=3}function qg(){let e=window;return fg([`DOMRectList`in e,`RTCPeerConnectionIceEvent`in e,`SVGGeometryElement`in e,`ontransitioncancel`in e])>=3}function Jg(){let e=window,t=navigator,{CSS:n,HTMLButtonElement:r}=e;return fg([!(`getStorageUpdates`in t),r&&`popover`in r.prototype,`CSSCounterStyleRule`in e,n.supports(`font-size-adjust: ex-height 0.5`),n.supports(`text-transform: full-width`)])>=4}function Yg(){if(navigator.platform===`iPad`)return!0;let e=screen,t=e.width/e.height;return fg([`MediaSource`in window,!!Element.prototype.webkitRequestFullscreen,t>.65&&t<1.53])>=2}function Xg(){let e=document;return e.fullscreenElement||e.msFullscreenElement||e.mozFullScreenElement||e.webkitFullscreenElement||null}function Zg(){let e=document;return(e.exitFullscreen||e.msExitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen).call(e)}function Qg(){let e=Lg(),t=Vg(),n=window,r=navigator,i=`connection`;return e?fg([!(`SharedWorker`in n),r[i]&&`ontypechange`in r[i],!(`sinkId`in new Audio)])>=2:t?fg([`onorientationchange`in n,`orientation`in n,/android/i.test(r.appVersion)])>=2:!1}function $g(){let e=navigator,t=window,n=Audio.prototype,{visualViewport:r}=t;return fg([`srLatency`in n,`srChannelCount`in n,`devicePosture`in e,r&&`segments`in r,`getTextInformation`in Image.prototype])>=3}function e_(){return r_()?-4:t_()}function t_(){let e=window,t=e.OfflineAudioContext||e.webkitOfflineAudioContext;if(!t)return-2;if(n_())return-1;let n=new t(1,5e3,44100),r=n.createOscillator();r.type=`triangle`,r.frequency.value=1e4;let i=n.createDynamicsCompressor();i.threshold.value=-50,i.knee.value=40,i.ratio.value=12,i.attack.value=0,i.release.value=.25,r.connect(i),i.connect(n.destination),r.start(0);let[a,o]=i_(n),s=og(a.then(e=>a_(e.getChannelData(0).subarray(4500)),e=>{if(e.name===`timeout`||e.name===`suspended`)return-3;throw e}));return()=>(o(),s)}function n_(){return Rg()&&!zg()&&!qg()}function r_(){return Rg()&&Jg()&&Bg()||Lg()&&$g()&&Gg()}function i_(e){let t=()=>void 0;return[new Promise((n,r)=>{let i=!1,a=0,o=0;e.oncomplete=e=>n(e.renderedBuffer);let s=()=>{setTimeout(()=>r(o_(`timeout`)),Math.min(500,o+5e3-Date.now()))},c=()=>{try{let t=e.startRendering();switch(rg(t)&&og(t),e.state){case`running`:o=Date.now(),i&&s();break;case`suspended`:document.hidden||a++,i&&a>=3?r(o_(`suspended`)):setTimeout(c,500);break}}catch(e){r(e)}};c(),t=()=>{i||(i=!0,o>0&&s())}}),t]}function a_(e){let t=0;for(let n=0;n<e.length;++n)t+=Math.abs(e[n]);return t}function o_(e){let t=Error(e);return t.name=e,t}async function s_(e,t,n=50){var r;let i=document;for(;!i.body;)await eg(n);let a=i.createElement(`iframe`);try{for(await new Promise((e,n)=>{let r=!1,o=()=>{r=!0,e()};a.onload=o,a.onerror=e=>{r=!0,n(e)};let{style:s}=a;s.setProperty(`display`,`block`,`important`),s.position=`absolute`,s.top=`0`,s.left=`0`,s.visibility=`hidden`,t&&`srcdoc`in a?a.srcdoc=t:a.src=`about:blank`,i.body.appendChild(a);let c=()=>{r||(a.contentWindow?.document?.readyState===`complete`?o():setTimeout(c,10))};c()});!a.contentWindow?.document?.body;)await eg(n);return await e(a,a.contentWindow)}finally{(r=a.parentNode)==null||r.removeChild(a)}}function c_(e){let[t,n]=mg(e),r=document.createElement(t??`div`);for(let e of Object.keys(n)){let t=n[e].join(` `);e===`style`?l_(r.style,t):r.setAttribute(e,t)}return r}function l_(e,t){for(let n of t.split(`;`)){let t=/^\s*([\w-]+)\s*:\s*(.+?)(\s*!([\w-]+))?\s*$/.exec(n);if(t){let[,n,r,,i]=t;e.setProperty(n,r,i||``)}}}function u_(){let e=window;for(;;){let t=e.parent;if(!t||t===e)return!1;try{if(t.location.origin!==e.location.origin)return!0}catch(e){if(e instanceof Error&&e.name===`SecurityError`)return!0;throw e}e=t}}var d_=`mmMwWLliI0O&1`,f_=`48px`,p_=[`monospace`,`sans-serif`,`serif`],m_=`sans-serif-thin.ARNO PRO.Agency FB.Arabic Typesetting.Arial Unicode MS.AvantGarde Bk BT.BankGothic Md BT.Batang.Bitstream Vera Sans Mono.Calibri.Century.Century Gothic.Clarendon.EUROSTILE.Franklin Gothic.Futura Bk BT.Futura Md BT.GOTHAM.Gill Sans.HELV.Haettenschweiler.Helvetica Neue.Humanst521 BT.Leelawadee.Letter Gothic.Levenim MT.Lucida Bright.Lucida Sans.Menlo.MS Mincho.MS Outlook.MS Reference Specialty.MS UI Gothic.MT Extra.MYRIAD PRO.Marlett.Meiryo UI.Microsoft Uighur.Minion Pro.Monotype Corsiva.PMingLiU.Pristina.SCRIPTINA.Segoe UI Light.Serifa.SimHei.Small Fonts.Staccato222 BT.TRAJAN PRO.Univers CE 55 Medium.Vrinda.ZWAdobeF`.split(`.`);function h_(){return s_(async(e,{document:t})=>{let n=t.body;n.style.fontSize=f_;let r=t.createElement(`div`);r.style.setProperty(`visibility`,`hidden`,`important`);let i={},a={},o=e=>{let n=t.createElement(`span`),{style:i}=n;return i.position=`absolute`,i.top=`0`,i.left=`0`,i.fontFamily=e,n.textContent=d_,r.appendChild(n),n},s=(e,t)=>o(`'${e}',${t}`),c=()=>p_.map(o),l=()=>{let e={};for(let t of m_)e[t]=p_.map(e=>s(t,e));return e},u=e=>p_.some((t,n)=>e[n].offsetWidth!==i[t]||e[n].offsetHeight!==a[t]),d=c(),f=l();n.appendChild(r);for(let e=0;e<p_.length;e++)i[p_[e]]=d[e].offsetWidth,a[p_[e]]=d[e].offsetHeight;return m_.filter(e=>u(f[e]))})}function g_(){let e=navigator.plugins;if(!e)return;let t=[];for(let n=0;n<e.length;++n){let r=e[n];if(!r)continue;let i=[];for(let e=0;e<r.length;++e){let t=r[e];i.push({type:t.type,suffixes:t.suffixes})}t.push({name:r.name,description:r.description,mimeTypes:i})}return t}function __(){return v_(E_())}function v_(e){let t=!1,n,r,[i,a]=y_();return b_(i,a)?(t=x_(a),e?n=r=`skipped`:[n,r]=S_(i,a)):n=r=`unsupported`,{winding:t,geometry:n,text:r}}function y_(){let e=document.createElement(`canvas`);return e.width=1,e.height=1,[e,e.getContext(`2d`)]}function b_(e,t){return!!(t&&e.toDataURL)}function x_(e){return e.rect(0,0,10,10),e.rect(2,2,6,6),!e.isPointInPath(5,5,`evenodd`)}function S_(e,t){C_(e,t);let n=T_(e);return n===T_(e)?(w_(e,t),[T_(e),n]):[`unstable`,`unstable`]}function C_(e,t){e.width=240,e.height=60,t.textBaseline=`alphabetic`,t.fillStyle=`#f60`,t.fillRect(100,1,62,20),t.fillStyle=`#069`,t.font=`11pt "Times New Roman"`;let n=`Cwm fjordbank gly ${String.fromCharCode(55357,56835)}`;t.fillText(n,2,15),t.fillStyle=`rgba(102, 204, 0, 0.2)`,t.font=`18pt Arial`,t.fillText(n,4,45)}function w_(e,t){e.width=122,e.height=110,t.globalCompositeOperation=`multiply`;for(let[e,n,r]of[[`#f2f`,40,40],[`#2ff`,80,40],[`#ff2`,60,80]])t.fillStyle=e,t.beginPath(),t.arc(n,r,40,0,Math.PI*2,!0),t.closePath(),t.fill();t.fillStyle=`#f9c`,t.arc(60,60,60,0,Math.PI*2,!0),t.arc(60,60,20,0,Math.PI*2,!0),t.fill(`evenodd`)}function T_(e){return e.toDataURL()}function E_(){let e=Rg()&&Jg()&&Bg(),t=Vg()&&Hg();return e||t}function D_(){let e=navigator,t=0,n;e.maxTouchPoints===void 0?e.msMaxTouchPoints!==void 0&&(t=e.msMaxTouchPoints):t=lg(e.maxTouchPoints);try{document.createEvent(`TouchEvent`),n=!0}catch{n=!1}let r=`ontouchstart`in window;return{maxTouchPoints:t,touchEvent:n,touchStart:r}}function O_(){return navigator.oscpu}function k_(){let e=navigator,t=[],n=e.language||e.userLanguage||e.browserLanguage||e.systemLanguage;if(n!==void 0&&t.push([n]),Array.isArray(e.languages))Lg()&&Wg()||t.push(e.languages);else if(typeof e.languages==`string`){let n=e.languages;n&&t.push(n.split(`,`))}return t}function A_(){return window.screen.colorDepth}function j_(){return dg(ug(navigator.deviceMemory),void 0)}function M_(){if(!(Rg()&&Jg()&&Bg()))return N_()}function N_(){let e=screen,t=e=>dg(lg(e),null),n=[t(e.width),t(e.height)];return n.sort().reverse(),n}var P_=2500,F_=10,I_,L_;function R_(){if(L_!==void 0)return;let e=()=>{let t=V_();H_(t)?L_=setTimeout(e,P_):(I_=t,L_=void 0)};e()}function z_(){return R_(),async()=>{let e=V_();if(H_(e)){if(I_)return[...I_];Xg()&&(await Zg(),e=V_())}return H_(e)||(I_=e),e}}function B_(){let e=Rg()&&Jg()&&Bg(),t=Vg()&&Ug();if(e||t)return()=>Promise.resolve(void 0);let n=z_();return async()=>{let e=await n(),t=e=>e===null?null:pg(e,F_);return[t(e[0]),t(e[1]),t(e[2]),t(e[3])]}}function V_(){let e=screen;return[dg(ug(e.availTop),null),dg(ug(e.width)-ug(e.availWidth)-dg(ug(e.availLeft),0),null),dg(ug(e.height)-ug(e.availHeight)-dg(ug(e.availTop),0),null),dg(ug(e.availLeft),null)]}function H_(e){for(let t=0;t<4;++t)if(e[t])return!1;return!0}function U_(){let e=W_();return e!==void 0&&Vg()&&Ug()?e>=8?8:4:e}function W_(){return dg(lg(navigator.hardwareConcurrency),void 0)}function G_(){let e=window.Intl?.DateTimeFormat;if(e){let t=new e().resolvedOptions().timeZone;if(t)return t}let t=-K_();return`UTC${t>=0?`+`:``}${t}`}function K_(){let e=new Date().getFullYear();return Math.max(ug(new Date(e,0,1).getTimezoneOffset()),ug(new Date(e,6,1).getTimezoneOffset()))}function q_(){try{return!!window.sessionStorage}catch{return!0}}function J_(){try{return!!window.localStorage}catch{return!0}}function Y_(){if(!(Fg()||Ig()))try{return!!window.indexedDB}catch{return!0}}function X_(){return!!window.openDatabase}function Z_(){return navigator.cpuClass}function Q_(){let{platform:e}=navigator;return e===`MacIntel`&&Rg()&&!zg()?Yg()?`iPad`:`iPhone`:e}function $_(){return navigator.vendor||``}function ev(){let e=[];for(let t of[`chrome`,`safari`,`__crWeb`,`__gCrWeb`,`yandex`,`__yb`,`__ybro`,`__firefox__`,`__edgeTrackingPreventionStatistics`,`webkit`,`oprt`,`samsungAr`,`ucweb`,`UCShellJava`,`puffinDevice`]){let n=window[t];n&&typeof n==`object`&&e.push(t)}return e.sort()}function tv(){let e=document;try{e.cookie=`cookietest=1; SameSite=Strict;`;let t=e.cookie.indexOf(`cookietest=`)!==-1;return e.cookie=`cookietest=1; SameSite=Strict; expires=Thu, 01-Jan-1970 00:00:01 GMT`,t}catch{return!1}}function nv(){let e=atob;return{abpIndo:[`#Iklan-Melayang`,`#Kolom-Iklan-728`,`#SidebarIklan-wrapper`,`[title="ALIENBOLA" i]`,e(`I0JveC1CYW5uZXItYWRz`)],abpvn:[`.quangcao`,`#mobileCatfish`,e(`LmNsb3NlLWFkcw==`),`[id^="bn_bottom_fixed_"]`,`#pmadv`],adBlockFinland:[`.mainostila`,e(`LnNwb25zb3JpdA==`),`.ylamainos`,e(`YVtocmVmKj0iL2NsaWNrdGhyZ2guYXNwPyJd`),e(`YVtocmVmXj0iaHR0cHM6Ly9hcHAucmVhZHBlYWsuY29tL2FkcyJd`)],adBlockPersian:[`#navbar_notice_50`,`.kadr`,`TABLE[width="140px"]`,`#divAgahi`,e(`YVtocmVmXj0iaHR0cDovL2cxLnYuZndtcm0ubmV0L2FkLyJd`)],adBlockWarningRemoval:[`#adblock-honeypot`,`.adblocker-root`,`.wp_adblock_detect`,e(`LmhlYWRlci1ibG9ja2VkLWFk`),e(`I2FkX2Jsb2NrZXI=`)],adGuardAnnoyances:[`.hs-sosyal`,`#cookieconsentdiv`,`div[class^="app_gdpr"]`,`.as-oil`,`[data-cypress="soft-push-notification-modal"]`],adGuardBase:[`.BetterJsPopOverlay`,e(`I2FkXzMwMFgyNTA=`),e(`I2Jhbm5lcmZsb2F0MjI=`),e(`I2NhbXBhaWduLWJhbm5lcg==`),e(`I0FkLUNvbnRlbnQ=`)],adGuardChinese:[e(`LlppX2FkX2FfSA==`),e(`YVtocmVmKj0iLmh0aGJldDM0LmNvbSJd`),`#widget-quan`,e(`YVtocmVmKj0iLzg0OTkyMDIwLnh5eiJd`),e(`YVtocmVmKj0iLjE5NTZobC5jb20vIl0=`)],adGuardFrench:[`#pavePub`,e(`LmFkLWRlc2t0b3AtcmVjdGFuZ2xl`),`.mobile_adhesion`,`.widgetadv`,e(`LmFkc19iYW4=`)],adGuardGerman:[`aside[data-portal-id="leaderboard"]`],adGuardJapanese:[`#kauli_yad_1`,e(`YVtocmVmXj0iaHR0cDovL2FkMi50cmFmZmljZ2F0ZS5uZXQvIl0=`),e(`Ll9wb3BJbl9pbmZpbml0ZV9hZA==`),e(`LmFkZ29vZ2xl`),e(`Ll9faXNib29zdFJldHVybkFk`)],adGuardMobile:[e(`YW1wLWF1dG8tYWRz`),e(`LmFtcF9hZA==`),`amp-embed[type="24smi"]`,`#mgid_iframe1`,e(`I2FkX2ludmlld19hcmVh`)],adGuardRussian:[e(`YVtocmVmXj0iaHR0cHM6Ly9hZC5sZXRtZWFkcy5jb20vIl0=`),e(`LnJlY2xhbWE=`),`div[id^="smi2adblock"]`,e(`ZGl2W2lkXj0iQWRGb3hfYmFubmVyXyJd`),`#psyduckpockeball`],adGuardSocial:[e(`YVtocmVmXj0iLy93d3cuc3R1bWJsZXVwb24uY29tL3N1Ym1pdD91cmw9Il0=`),e(`YVtocmVmXj0iLy90ZWxlZ3JhbS5tZS9zaGFyZS91cmw/Il0=`),`.etsy-tweet`,`#inlineShare`,`.popup-social`],adGuardSpanishPortuguese:[`#barraPublicidade`,`#Publicidade`,`#publiEspecial`,`#queTooltip`,`.cnt-publi`],adGuardTrackingProtection:[`#qoo-counter`,e(`YVtocmVmXj0iaHR0cDovL2NsaWNrLmhvdGxvZy5ydS8iXQ==`),e(`YVtocmVmXj0iaHR0cDovL2hpdGNvdW50ZXIucnUvdG9wL3N0YXQucGhwIl0=`),e(`YVtocmVmXj0iaHR0cDovL3RvcC5tYWlsLnJ1L2p1bXAiXQ==`),`#top100counter`],adGuardTurkish:[`#backkapat`,e(`I3Jla2xhbWk=`),e(`YVtocmVmXj0iaHR0cDovL2Fkc2Vydi5vbnRlay5jb20udHIvIl0=`),e(`YVtocmVmXj0iaHR0cDovL2l6bGVuemkuY29tL2NhbXBhaWduLyJd`),e(`YVtocmVmXj0iaHR0cDovL3d3dy5pbnN0YWxsYWRzLm5ldC8iXQ==`)],bulgarian:[e(`dGQjZnJlZW5ldF90YWJsZV9hZHM=`),`#ea_intext_div`,`.lapni-pop-over`,`#xenium_hot_offers`],easyList:[`.yb-floorad`,e(`LndpZGdldF9wb19hZHNfd2lkZ2V0`),e(`LnRyYWZmaWNqdW5reS1hZA==`),`.textad_headline`,e(`LnNwb25zb3JlZC10ZXh0LWxpbmtz`)],easyListChina:[e(`LmFwcGd1aWRlLXdyYXBbb25jbGljayo9ImJjZWJvcy5jb20iXQ==`),e(`LmZyb250cGFnZUFkdk0=`),`#taotaole`,`#aafoot.top_box`,`.cfa_popup`],easyListCookie:[`.ezmob-footer`,`.cc-CookieWarning`,`[data-cookie-number]`,e(`LmF3LWNvb2tpZS1iYW5uZXI=`),`.sygnal24-gdpr-modal-wrap`],easyListCzechSlovak:[`#onlajny-stickers`,e(`I3Jla2xhbW5pLWJveA==`),e(`LnJla2xhbWEtbWVnYWJvYXJk`),`.sklik`,e(`W2lkXj0ic2tsaWtSZWtsYW1hIl0=`)],easyListDutch:[e(`I2FkdmVydGVudGll`),e(`I3ZpcEFkbWFya3RCYW5uZXJCbG9jaw==`),`.adstekst`,e(`YVtocmVmXj0iaHR0cHM6Ly94bHR1YmUubmwvY2xpY2svIl0=`),`#semilo-lrectangle`],easyListGermany:[`#SSpotIMPopSlider`,e(`LnNwb25zb3JsaW5rZ3J1ZW4=`),e(`I3dlcmJ1bmdza3k=`),e(`I3Jla2xhbWUtcmVjaHRzLW1pdHRl`),e(`YVtocmVmXj0iaHR0cHM6Ly9iZDc0Mi5jb20vIl0=`)],easyListItaly:[e(`LmJveF9hZHZfYW5udW5jaQ==`),`.sb-box-pubbliredazionale`,e(`YVtocmVmXj0iaHR0cDovL2FmZmlsaWF6aW9uaWFkcy5zbmFpLml0LyJd`),e(`YVtocmVmXj0iaHR0cHM6Ly9hZHNlcnZlci5odG1sLml0LyJd`),e(`YVtocmVmXj0iaHR0cHM6Ly9hZmZpbGlhemlvbmlhZHMuc25haS5pdC8iXQ==`)],easyListLithuania:[e(`LnJla2xhbW9zX3RhcnBhcw==`),e(`LnJla2xhbW9zX251b3JvZG9z`),e(`aW1nW2FsdD0iUmVrbGFtaW5pcyBza3lkZWxpcyJd`),e(`aW1nW2FsdD0iRGVkaWt1b3RpLmx0IHNlcnZlcmlhaSJd`),e(`aW1nW2FsdD0iSG9zdGluZ2FzIFNlcnZlcmlhaS5sdCJd`)],estonian:[e(`QVtocmVmKj0iaHR0cDovL3BheTRyZXN1bHRzMjQuZXUiXQ==`)],fanboyAnnoyances:[`#ac-lre-player`,`.navigate-to-top`,`#subscribe_popup`,`.newsletter_holder`,`#back-top`],fanboyAntiFacebook:[`.util-bar-module-firefly-visible`],fanboyEnhancedTrackers:[`.open.pushModal`,`#issuem-leaky-paywall-articles-zero-remaining-nag`,`#sovrn_container`,`div[class$="-hide"][zoompage-fontsize][style="display: block;"]`,`.BlockNag__Card`],fanboySocial:[`#FollowUs`,`#meteored_share`,`#social_follow`,`.article-sharer`,`.community__social-desc`],frellwitSwedish:[e(`YVtocmVmKj0iY2FzaW5vcHJvLnNlIl1bdGFyZ2V0PSJfYmxhbmsiXQ==`),e(`YVtocmVmKj0iZG9rdG9yLXNlLm9uZWxpbmsubWUiXQ==`),`article.category-samarbete`,e(`ZGl2LmhvbGlkQWRz`),`ul.adsmodern`],greekAdBlock:[e(`QVtocmVmKj0iYWRtYW4ub3RlbmV0LmdyL2NsaWNrPyJd`),e(`QVtocmVmKj0iaHR0cDovL2F4aWFiYW5uZXJzLmV4b2R1cy5nci8iXQ==`),e(`QVtocmVmKj0iaHR0cDovL2ludGVyYWN0aXZlLmZvcnRobmV0LmdyL2NsaWNrPyJd`),`DIV.agores300`,`TABLE.advright`],hungarian:[`#cemp_doboz`,`.optimonk-iframe-container`,e(`LmFkX19tYWlu`),e(`W2NsYXNzKj0iR29vZ2xlQWRzIl0=`),`#hirdetesek_box`],iDontCareAboutCookies:[`.alert-info[data-block-track*="CookieNotice"]`,`.ModuleTemplateCookieIndicator`,`.o--cookies--container`,`#cookies-policy-sticky`,`#stickyCookieBar`],icelandicAbp:[e(`QVtocmVmXj0iL2ZyYW1ld29yay9yZXNvdXJjZXMvZm9ybXMvYWRzLmFzcHgiXQ==`)],latvian:[e(`YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMjBweDsgaGVpZ2h0OiA0MHB4OyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7Il0=`),e(`YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4OHB4OyBoZWlnaHQ6IDMxcHg7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsiXQ==`)],listKr:[e(`YVtocmVmKj0iLy9hZC5wbGFuYnBsdXMuY28ua3IvIl0=`),e(`I2xpdmVyZUFkV3JhcHBlcg==`),e(`YVtocmVmKj0iLy9hZHYuaW1hZHJlcC5jby5rci8iXQ==`),e(`aW5zLmZhc3R2aWV3LWFk`),`.revenue_unit_item.dable`],listeAr:[e(`LmdlbWluaUxCMUFk`),`.right-and-left-sponsers`,e(`YVtocmVmKj0iLmFmbGFtLmluZm8iXQ==`),e(`YVtocmVmKj0iYm9vcmFxLm9yZyJd`),e(`YVtocmVmKj0iZHViaXp6bGUuY29tL2FyLz91dG1fc291cmNlPSJd`)],listeFr:[e(`YVtocmVmXj0iaHR0cDovL3Byb21vLnZhZG9yLmNvbS8iXQ==`),e(`I2FkY29udGFpbmVyX3JlY2hlcmNoZQ==`),e(`YVtocmVmKj0id2Vib3JhbWEuZnIvZmNnaS1iaW4vIl0=`),`.site-pub-interstitiel`,`div[id^="crt-"][data-criteo-id]`],officialPolish:[`#ceneo-placeholder-ceneo-12`,e(`W2hyZWZePSJodHRwczovL2FmZi5zZW5kaHViLnBsLyJd`),e(`YVtocmVmXj0iaHR0cDovL2Fkdm1hbmFnZXIudGVjaGZ1bi5wbC9yZWRpcmVjdC8iXQ==`),e(`YVtocmVmXj0iaHR0cDovL3d3dy50cml6ZXIucGwvP3V0bV9zb3VyY2UiXQ==`),e(`ZGl2I3NrYXBpZWNfYWQ=`)],ro:[e(`YVtocmVmXj0iLy9hZmZ0cmsuYWx0ZXgucm8vQ291bnRlci9DbGljayJd`),e(`YVtocmVmXj0iaHR0cHM6Ly9ibGFja2ZyaWRheXNhbGVzLnJvL3Ryay9zaG9wLyJd`),e(`YVtocmVmXj0iaHR0cHM6Ly9ldmVudC4ycGVyZm9ybWFudC5jb20vZXZlbnRzL2NsaWNrIl0=`),e(`YVtocmVmXj0iaHR0cHM6Ly9sLnByb2ZpdHNoYXJlLnJvLyJd`),`a[href^="/url/"]`],ruAd:[e(`YVtocmVmKj0iLy9mZWJyYXJlLnJ1LyJd`),e(`YVtocmVmKj0iLy91dGltZy5ydS8iXQ==`),e(`YVtocmVmKj0iOi8vY2hpa2lkaWtpLnJ1Il0=`),`#pgeldiz`,`.yandex-rtb-block`],thaiAds:[`a[href*=macau-uta-popup]`,e(`I2Fkcy1nb29nbGUtbWlkZGxlX3JlY3RhbmdsZS1ncm91cA==`),e(`LmFkczMwMHM=`),`.bumq`,`.img-kosana`],webAnnoyancesUltralist:[`#mod-social-share-2`,`#social-tools`,e(`LmN0cGwtZnVsbGJhbm5lcg==`),`.zergnet-recommend`,`.yt.btn-link.btn-md.btn`]}}async function rv({debug:e}={}){if(!iv())return;let t=nv(),n=Object.keys(t),r=await av([].concat(...n.map(e=>t[e])));e&&sv(t,r);let i=n.filter(e=>{let n=t[e];return fg(n.map(e=>r[e]))>n.length*.6});return i.sort(),i}function iv(){return Rg()||Qg()}async function av(e){var t;let n=document,r=n.createElement(`div`),i=Array(e.length),a={};ov(r);for(let t=0;t<e.length;++t){let a=c_(e[t]);a.tagName===`DIALOG`&&a.show();let o=n.createElement(`div`);ov(o),o.appendChild(a),r.appendChild(o),i[t]=a}for(;!n.body;)await eg(50);n.body.appendChild(r);try{for(let t=0;t<e.length;++t)i[t].offsetParent||(a[e[t]]=!0)}finally{(t=r.parentNode)==null||t.removeChild(r)}return a}function ov(e){e.style.setProperty(`visibility`,`hidden`,`important`),e.style.setProperty(`display`,`block`,`important`)}function sv(e,t){let n="DOM blockers debug:\n```";for(let r of Object.keys(e)){n+=`\n${r}:`;for(let i of e[r])n+=`\n ${t[i]?`🚫`:`➡️`} ${i}`}console.log(`${n}\n\`\`\``)}function cv(){for(let e of[`rec2020`,`p3`,`srgb`])if(matchMedia(`(color-gamut: ${e})`).matches)return e}function lv(){if(uv(`inverted`))return!0;if(uv(`none`))return!1}function uv(e){return matchMedia(`(inverted-colors: ${e})`).matches}function dv(){if(fv(`active`))return!0;if(fv(`none`))return!1}function fv(e){return matchMedia(`(forced-colors: ${e})`).matches}var pv=100;function mv(){if(matchMedia(`(min-monochrome: 0)`).matches){for(let e=0;e<=pv;++e)if(matchMedia(`(max-monochrome: ${e})`).matches)return e;throw Error(`Too high value`)}}function hv(){if(gv(`no-preference`))return 0;if(gv(`high`)||gv(`more`))return 1;if(gv(`low`)||gv(`less`))return-1;if(gv(`forced`))return 10}function gv(e){return matchMedia(`(prefers-contrast: ${e})`).matches}function _v(){if(vv(`reduce`))return!0;if(vv(`no-preference`))return!1}function vv(e){return matchMedia(`(prefers-reduced-motion: ${e})`).matches}function yv(){if(bv(`reduce`))return!0;if(bv(`no-preference`))return!1}function bv(e){return matchMedia(`(prefers-reduced-transparency: ${e})`).matches}function xv(){if(Sv(`high`))return!0;if(Sv(`standard`))return!1}function Sv(e){return matchMedia(`(dynamic-range: ${e})`).matches}var Cv=Math,wv=()=>0;function Tv(){let e=Cv.acos||wv,t=Cv.acosh||wv,n=Cv.asin||wv,r=Cv.asinh||wv,i=Cv.atanh||wv,a=Cv.atan||wv,o=Cv.sin||wv,s=Cv.sinh||wv,c=Cv.cos||wv,l=Cv.cosh||wv,u=Cv.tan||wv,d=Cv.tanh||wv,f=Cv.exp||wv,p=Cv.expm1||wv,m=Cv.log1p||wv;return{acos:e(.12312423423423424),acosh:t(1e308),acoshPf:(e=>Cv.log(e+Cv.sqrt(e*e-1)))(1e154),asin:n(.12312423423423424),asinh:r(1),asinhPf:(e=>Cv.log(e+Cv.sqrt(e*e+1)))(1),atanh:i(.5),atanhPf:(e=>Cv.log((1+e)/(1-e))/2)(.5),atan:a(.5),sin:o(-1e300),sinh:s(1),sinhPf:(e=>Cv.exp(e)-1/Cv.exp(e)/2)(1),cos:c(10.000000000123),cosh:l(1),coshPf:(e=>(Cv.exp(e)+1/Cv.exp(e))/2)(1),tan:u(-1e300),tanh:d(1),tanhPf:(e=>(Cv.exp(2*e)-1)/(Cv.exp(2*e)+1))(1),exp:f(1),expm1:p(1),expm1Pf:(e=>Cv.exp(e)-1)(1),log1p:m(10),log1pPf:(e=>Cv.log(1+e))(10),powPI:(e=>Cv.pow(Cv.PI,e))(-100)}}var Ev=`mmMwWLliI0fiflO&1`,Dv={default:[],apple:[{font:`-apple-system-body`}],serif:[{fontFamily:`serif`}],sans:[{fontFamily:`sans-serif`}],mono:[{fontFamily:`monospace`}],min:[{fontSize:`1px`}],system:[{fontFamily:`system-ui`}]};function Ov(){return Av((e,t,n)=>{let r={},i={};for(let n of Object.keys(Dv)){let[i={},a=Ev]=Dv[n],o=e.createElement(`span`);o.textContent=a,o.style.whiteSpace=`nowrap`;for(let e of Object.keys(i)){let t=i[e];t!==void 0&&(o.style[e]=t)}r[n]=o,t.append(e.createElement(`br`),o)}let a=Lg()&&Kg();for(let e of Object.keys(Dv)){let t=r[e].getBoundingClientRect().width;i[e]=a?kv(t*n.devicePixelRatio):t}return i})}function kv(e){let t=10**(Qg()?0:3);return Math.floor(e*t)/t}function Av(e,t=4e3){return s_((n,r)=>{let i=r.document,a=i.body,o=a.style;o.width=`${t}px`,o.webkitTextSizeAdjust=o.textSizeAdjust=`none`,Lg()?a.style.zoom=`${1/r.devicePixelRatio}`:Rg()&&(a.style.zoom=`reset`);let s=i.createElement(`div`);return s.textContent=[...Array(t/20<<0)].map(()=>`word`).join(` `),a.appendChild(s),e(i,a,r)},`<!doctype html><html><head><meta name="viewport" content="width=device-width, initial-scale=1">`)}function jv(){return navigator.pdfViewerEnabled}function Mv(){let e=new Float32Array(1),t=new Uint8Array(e.buffer);return e[0]=1/0,e[0]-=e[0],t[3]}function Nv(){let{ApplePaySession:e}=window;if(typeof e?.canMakePayments!=`function`)return-1;if(Pv())return-3;try{return+!!e.canMakePayments()}catch(e){return Fv(e)}}var Pv=u_;function Fv(e){if(e instanceof Error&&e.name===`InvalidAccessError`&&/\bfrom\b.*\binsecure\b/i.test(e.message))return-2;throw e}function Iv(){let e=document.createElement(`a`),t=e.attributionSourceId??e.attributionsourceid;return t===void 0?void 0:String(t)}var Lv=-1,Rv=-2,zv=new Set([10752,2849,2884,2885,2886,2928,2929,2930,2931,2932,2960,2961,2962,2963,2964,2965,2966,2967,2968,2978,3024,3042,3088,3089,3106,3107,32773,32777,32777,32823,32824,32936,32937,32938,32939,32968,32969,32970,32971,3317,33170,3333,3379,3386,33901,33902,34016,34024,34076,3408,3410,3411,3412,3413,3414,3415,34467,34816,34817,34818,34819,34877,34921,34930,35660,35661,35724,35738,35739,36003,36004,36005,36347,36348,36349,37440,37441,37443,7936,7937,7938]),Bv=new Set([34047,35723,36063,34852,34853,34854,34229,36392,36795,38449]),Vv=[`FRAGMENT_SHADER`,`VERTEX_SHADER`],Hv=[`LOW_FLOAT`,`MEDIUM_FLOAT`,`HIGH_FLOAT`,`LOW_INT`,`MEDIUM_INT`,`HIGH_INT`],Uv=`WEBGL_debug_renderer_info`,Wv=`WEBGL_polygon_mode`;function Gv({cache:e}){let t=qv(e);if(!t)return Lv;if(!$v(t))return Rv;let n=Zv()?null:t.getExtension(Uv);return{version:t.getParameter(t.VERSION)?.toString()||``,vendor:t.getParameter(t.VENDOR)?.toString()||``,vendorUnmasked:n?t.getParameter(n.UNMASKED_VENDOR_WEBGL)?.toString():``,renderer:t.getParameter(t.RENDERER)?.toString()||``,rendererUnmasked:n?t.getParameter(n.UNMASKED_RENDERER_WEBGL)?.toString():``,shadingLanguageVersion:t.getParameter(t.SHADING_LANGUAGE_VERSION)?.toString()||``}}function Kv({cache:e}){let t=qv(e);if(!t)return Lv;if(!$v(t))return Rv;let n=t.getSupportedExtensions(),r=t.getContextAttributes(),i=[],a=[],o=[],s=[],c=[];if(r)for(let e of Object.keys(r))a.push(`${e}=${r[e]}`);let l=Yv(t);for(let e of l){let n=t[e];o.push(`${e}=${n}${zv.has(n)?`=${t.getParameter(n)}`:``}`)}if(n)for(let e of n){if(e===Uv&&Zv()||e===Wv&&Qv())continue;let n=t.getExtension(e);if(!n){i.push(e);continue}for(let e of Yv(n)){let r=n[e];s.push(`${e}=${r}${Bv.has(r)?`=${t.getParameter(r)}`:``}`)}}for(let e of Vv)for(let n of Hv){let r=Jv(t,e,n);c.push(`${e}.${n}=${r.join(`,`)}`)}return s.sort(),o.sort(),{contextAttributes:a,parameters:o,shaderPrecisions:c,extensions:n,extensionParameters:s,unsupportedExtensions:i}}function qv(e){if(e.webgl)return e.webgl.context;let t=document.createElement(`canvas`),n;t.addEventListener(`webglCreateContextError`,()=>n=void 0);for(let e of[`webgl`,`experimental-webgl`]){try{n=t.getContext(e)}catch{}if(n)break}return e.webgl={context:n},n}function Jv(e,t,n){let r=e.getShaderPrecisionFormat(e[t],e[n]);return r?[r.rangeMin,r.rangeMax,r.precision]:[]}function Yv(e){return Object.keys(e.__proto__).filter(Xv)}function Xv(e){return typeof e==`string`&&!e.match(/[^A-Z0-9_x]/)}function Zv(){return Vg()}function Qv(){return Lg()||Rg()}function $v(e){return typeof e.getParameter==`function`}function ey(){if(!(Qg()||Rg()))return-2;if(!window.AudioContext)return-1;let e=new AudioContext().baseLatency;return e==null?-1:isFinite(e)?e:-3}function ty(){if(!window.Intl)return-1;let e=window.Intl.DateTimeFormat;if(!e)return-2;let t=e().resolvedOptions().locale;return!t&&t!==``?-3:t}function ny(e){return/not/i.test(e)}async function ry(){let e=navigator.userAgentData;if(!e)return;let t=e.brands.filter(({brand:e})=>!ny(e)).map(({brand:e})=>e),n={brands:t.length>1?t.filter(e=>e!==`Chromium`):t,mobile:e.mobile,platform:e.platform};if(e.getHighEntropyValues)try{let t=await e.getHighEntropyValues([`architecture`,`bitness`,`model`,`platformVersion`]);n.architecture=t.architecture,n.bitness=t.bitness,n.model=t.model,n.platformVersion=t.platformVersion}catch(e){if(e instanceof DOMException&&e.name===`NotAllowedError`)n.highEntropyStatus=`not_allowed`;else throw e}return n}var iy={userAgentData:ry,fonts:h_,domBlockers:rv,fontPreferences:Ov,audio:e_,screenFrame:B_,canvas:__,osCpu:O_,languages:k_,colorDepth:A_,deviceMemory:j_,screenResolution:M_,hardwareConcurrency:U_,timezone:G_,sessionStorage:q_,localStorage:J_,indexedDB:Y_,openDatabase:X_,cpuClass:Z_,platform:Q_,plugins:g_,touchSupport:D_,vendor:$_,vendorFlavors:ev,cookiesEnabled:tv,colorGamut:cv,invertedColors:lv,forcedColors:dv,monochrome:mv,contrast:hv,reducedMotion:_v,reducedTransparency:yv,hdr:xv,math:Tv,pdfViewerEnabled:jv,architecture:Mv,applePay:Nv,privateClickMeasurement:Iv,audioBaseLatency:ey,dateTimeLocale:ty,webGlBasics:Gv,webGlExtensions:Kv};function ay(e){return Pg(iy,e,[])}var oy=`$ if upgrade to Pro: https://fingerprint.com/github/?utm_source=oss&utm_medium=referral&utm_campaign=confidence_score`;function sy(e){let t=cy(e),n=ly(t);return{score:t,comment:oy.replace(/\$/g,`${n}`)}}function cy(e){if(Qg())return .4;if(Rg())return zg()&&!(Jg()&&Bg())?.5:.3;let t=`value`in e.platform?e.platform.value:``;return/^Win/.test(t)?.6:/^Mac/.test(t)?.5:.7}function ly(e){return pg(.99+.01*e,1e-4)}function uy(e){let t=``;for(let n of Object.keys(e).sort()){let r=e[n],i=`error`in r?`error`:JSON.stringify(r.value);t+=`${t?`|`:``}${n.replace(/([:|\\])/g,`\\$1`)}:${i}`}return t}function dy(e){return JSON.stringify(e,(e,t)=>t instanceof Error?Ag(t):t,2)}function fy(e){return kg(uy(e))}function py(e){let t;return{get visitorId(){return t===void 0&&(t=fy(this.components)),t},set visitorId(e){t=e},confidence:sy(e),components:e,version:$h}}function my(e=50){return ng(e,e*2)}function hy(e,t){let n=Date.now();return{async get(r){let i=Date.now(),a=await e(),o=py(a);return(t||r?.debug)&&console.log(`Copy the text below to get the debug data:
|
|
268
268
|
|
|
269
269
|
\`\`\`
|
|
@@ -272,8 +272,8 @@ userAgent: ${navigator.userAgent}
|
|
|
272
272
|
timeBetweenLoadAndGet: ${i-n}
|
|
273
273
|
visitorId: ${o.visitorId}
|
|
274
274
|
components: ${dy(a)}
|
|
275
|
-
\`\`\``),o}}}function gy(){if(!(window.__fpjs_d_m||Math.random()>=.001))try{let e=new XMLHttpRequest;e.open(`get`,`https://m1.openfpcdn.io/fingerprintjs/v${$h}/npm-monitoring`,!0),e.send()}catch(e){console.error(e)}}async function _y(e={}){let{delayFallback:t,debug:n,monitoring:r=!0}=e;return r&&gy(),await my(t),hy(ay({cache:{},debug:n}),n)}var vy={load:_y,hashComponents:fy,componentsToDebugString:dy},yy=Vd(null);function by({children:e}){let t=Vy(),n=mm(!1),r=mm(!1),i=bf(()=>{let e=Qp(()=>!t.value.terms_html||r.value),i=[];return{termsShown:n,termsAccepted:e,dismissTerms:()=>{n.value=!1,i.forEach(e=>e.reject()),i=[]},acceptTerms:()=>{r.value=!0,n.value=!1;let e=t.peek().terms_key;e&&localStorage.setItem(e,`true`),i.forEach(e=>e.resolve()),i=[]},requestTerms:async()=>{e.peek()||(n.value=!0,await new Promise((e,t)=>{i.push({resolve:e,reject:t})}))}}},[n,r,t]);return xm(()=>{let e=t.value.terms_key;r.value=e?!!localStorage.getItem(e):!1}),R(yy.Provider,{value:i,children:e})}function xy(){return Mh(yy)}var Sy=Vd(null);function Cy({children:e}){let t=mm(null),n=I(e=>{t.value=Ty(e)},[t]);return R(Sy.Provider,{value:t,children:[R(`template`,{ref:n}),e]})}function wy(){return Mh(Sy)}function Ty(e){if(!e)return null;let t=e?.getRootNode();return t instanceof ShadowRoot&&t.host instanceof HTMLElement?t.host:e.parentElement}var Ey=Vd(null);function Dy({children:e}){let t=ky();return xm(()=>{if(t.conversationTextOnly.value===!0){t.transcript.value;let e=setTimeout(()=>{t.endSession()},600*1e3);return()=>{clearTimeout(e)}}}),R(Ey.Provider,{value:t,children:e})}function Oy(){return Mh(Ey)}function ky(){let e=F(null),t=F(null),n=F(!1),r=F(null),i=F(!1),a=wy(),o=Py(),s=Ly(),c=xy(),l=Qh();return _f(()=>()=>{e.current?.endSession()},[]),bf(()=>{let u=qp(`disconnected`),d=Qp(()=>u.value===`disconnected`),f=qp(`listening`),p=Qp(()=>f.value===`speaking`),m=qp(null),h=qp(null),g=qp(!1),_=qp([]),v=qp(0),y=qp(null);return{status:u,isSpeaking:p,mode:f,isDisconnected:d,lastId:h,error:m,canSendFeedback:g,conversationIndex:v,conversationTextOnly:y,transcript:_,startSession:async(d,p)=>{if(await c.requestTerms(),e.current?.isOpen())return e.current.getId();if(t.current)return(await t.current).getId();let b=structuredClone(l.peek());b.userId||=await Ay(),p&&o.value.supports_text_only&&(b.textOnly=!0,o.value.text_only||(b.overrides??={},b.overrides.conversation??={},b.overrides.conversation.textOnly=!0));try{b=jy(a.value??d,b)}catch(e){console.error(`[ConversationalAI] Error triggering call event:`,e)}y.value=b.textOnly??!1,_.value=p?[{type:`message`,role:`user`,message:p,isText:!0,conversationIndex:v.peek()}]:[];try{if(t.current=Mm.startSession({...b,onModeChange:e=>{f.value=e.mode},onStatusChange:e=>{u.value=e.status},onCanSendFeedbackChange:e=>{g.value=e.canSendFeedback},onMessage:({role:e,message:t,event_id:a})=>{if(s.peek()&&y.peek()===!0&&e===`agent`&&!n.current){n.current=!0;return}else e===`agent`&&(n.current=!0);if(e===`agent`&&i.current){let e=r.current;if(e!==null){let n=[..._.peek()];n[e]={type:`message`,role:`agent`,message:t,isText:!0,conversationIndex:v.peek(),eventId:a},_.value=n}i.current=!1;return}_.value=[..._.peek(),{type:`message`,role:e,message:t,isText:!1,conversationIndex:v.peek(),eventId:a}]},onAgentChatResponsePart:({text:e,type:t,event_id:a})=>{if(!(s.peek()&&y.peek()===!0&&!n.current))if(t===`start`){i.current=!0;let e=_.peek();r.current=e.length,_.value=[...e,{type:`message`,role:`agent`,message:``,isText:!0,conversationIndex:v.peek(),eventId:a}]}else if(t===`delta`){let t=r.current;if(t!==null&&e){let n=_.peek(),r=n[t];if(r.type===`message`){let i=[...n];i[t]={...r,message:r.message+e},_.value=i}}}else t===`stop`&&(r.current=null)},onAgentToolRequest:({tool_call_id:e,tool_name:t,event_id:n})=>{_.value=[..._.peek(),{type:`agent_tool_request`,toolName:t,toolCallId:e,eventId:n,conversationIndex:v.peek()}]},onAgentToolResponse:({tool_call_id:e,is_error:t,event_id:n})=>{_.value=[..._.peek(),{type:`agent_tool_response`,toolCallId:e,eventId:n,isError:t,conversationIndex:v.peek()}]},onDisconnect:e=>{n.current=!1,y.value=null,r.current=null,i.current=!1,_.value=[..._.peek(),e.reason===`error`?{type:`error`,message:e.message,conversationIndex:v.peek()}:{type:`disconnection`,role:e.reason===`user`?`user`:`agent`,conversationIndex:v.peek()}],v.value++,e.reason===`error`&&(m.value=e.message,console.error(`[ConversationalAI] Disconnected due to an error:`,e.message))}}),e.current=await t.current,p){let t=e.current;setTimeout(()=>t.sendUserMessage(p),100)}let a=e.current.getId();return h.value=a,m.value=null,a}catch(e){let t=`Could not start a conversation.`;e instanceof CloseEvent?t=e.reason||t:e instanceof Error&&(t=e.message||t),m.value=t,_.value=[..._.value,{type:`error`,message:t,conversationIndex:v.peek()}]}finally{t.current=null}},endSession:async()=>{let t=e.current;e.current=null,await t?.endSession()},getInputVolume:()=>e.current?.getInputVolume()??0,getOutputVolume:()=>e.current?.getOutputVolume()??0,setVolume:t=>{e.current?.setVolume({volume:t})},setMicMuted:t=>{e.current?.setMicMuted(t)},sendFeedback:t=>{e.current?.sendFeedback(t)},sendUserMessage:t=>{e.current?.sendUserMessage(t),_.value=[..._.value,{type:`message`,role:`user`,message:t,isText:!0,conversationIndex:v.peek()}]},sendMultimodalMessage:t=>{let n=t.text?.trim()??``,{fileId:r,...i}=t.file;e.current?.sendMultimodalMessage({text:n||void 0,fileId:r}),_.value=[..._.value,{type:`message`,role:`user`,message:n,isText:!0,conversationIndex:v.peek(),fileInput:i}]},sendUserActivity:()=>{e.current?.sendUserActivity()},sendContextualUpdate:t=>{e.current?.sendContextualUpdate(t)},addModeToggleEntry:t=>{e.current?.isOpen()&&(_.value=[..._.value,{type:`mode_toggle`,mode:t,conversationIndex:v.peek()}])}}},[l])}async function Ay(){let e=`elevenlabs_convai_user_id`,t=localStorage.getItem(e);if(!t){try{t=(await(await vy.load()).get()).visitorId}catch(e){console.warn(`[ConversationalAI] FingerprintJS failed, falling back to random UUID:`,e),t=crypto.randomUUID()}localStorage.setItem(e,t)}return t}function jy(e,t){try{let n=new CustomEvent(`elevenlabs-convai:call`,{bubbles:!0,composed:!0,detail:{config:t}});return e.dispatchEvent(n),n.detail.config}catch(e){return console.error(`[ConversationalAI] Could not trigger call event:`,e),t}}var My=Vd(null);function Ny({children:e}){let{serverUrl:t}=zh(),n=Ih(`agent-id`),r=Ih(`override-config`),i=Ih(`signed-url`),a=mm(null);xm(()=>{if(r.value)try{let e=JSON.parse(r.value);if(e){a.value=e;return}}catch(e){console.error(`[ConversationalAI] Cannot parse override-config: ${e?.message}`)}let e=n.value,o;if(i.value){let t=new URL(i.value).searchParams;e=t.get(`agent_id`)??n.value,o=t.get(`conversation_signature`)??void 0}if(!e){a.value=null;return}let s=new AbortController;return qy(e,t.value,s.signal,o).then(e=>{s.signal.aborted||(a.value=e)}).catch(e=>{console.error(`[ConversationalAI] Cannot fetch config for agent ${n.value}: ${e?.message}`),s.signal.aborted||(a.value=null)}),()=>{s.abort()}});let o=Ih(`variant`),s=Ih(`placement`),c=Ih(`terms-key`),l=Ih(`mic-muting`),u=Ih(`transcript`),d=Ih(`text-input`),f=Ih(`default-expanded`),p=Ih(`always-expanded`),m=Ih(`dismissible`),h=Ih(`strip-audio-tags`),g=Ih(`override-text-only`),_=Ih(`use-rtc`),v=Ih(`show-agent-status`),y=Ih(`show-conversation-id`),b=L(()=>{if(!a.value)return null;let e=o.value??a.value.variant,t=s.value??a.value.placement,n=c.value??a.value.terms_key,r=Wm(g.value)??a.value.text_only??!1,i=Wm(l.value)??a.value.mic_muting_enabled,b=Wm(u.value)??a.value.transcript_enabled,x=Wm(d.value)??a.value.text_input_enabled,S=Wm(p.value)??a.value.always_expanded??!1,C=Wm(f.value)??a.value.default_expanded??!1,w=Wm(m.value)??a.value.dismissible??!1,T=Wm(h.value)??a.value.strip_audio_tags??!r,ee=Wm(_.value)??a.value.use_rtc??!1,te=Wm(v.value)??a.value.show_agent_status??!1,ne=Wm(y.value)??a.value.show_conversation_id??!0;return{...a.value,variant:wh(e),placement:Eh(t),terms_key:n,mic_muting_enabled:!r&&i,transcript_enabled:r||b,text_input_enabled:r||x,always_expanded:S,default_expanded:C,dismissible:w,strip_audio_tags:T,use_rtc:ee,show_agent_status:te,show_conversation_id:ne}});return b.value?R(My.Provider,{value:b,children:e}):null}function Py(){return Mh(My)}function Fy(){let e=Ih(`override-text-only`),t=Py();return L(()=>Wm(e.value)??t.value.text_only??!1)}function Iy(){let e=Fy(),{conversationTextOnly:t}=Oy();return L(()=>t.value??e.value)}function Ly(){let e=Ih(`override-first-message`),t=Py(),{language:n}=Yh();return L(()=>e.value??t.value.language_presets?.[n.value.languageCode]?.first_message??t.value.first_message??null)}function Ry(){let e=Py();return L(()=>e.value.text_input_enabled??!1)}function zy(){let e=Py();return L(()=>e.value.file_input_config?.enabled??!1)}function By(){let e=Py();return L(()=>e.value.file_input_config?.max_files_per_conversation??null)}function Vy(){let e=Py(),{language:t}=Yh();return L(()=>{let n=e.value.language_presets?.[t.value.languageCode];return{terms_html:n?.terms_html??e.value.terms_html,terms_text:n?.terms_text??e.value.terms_text,terms_key:n?.terms_key??e.value.terms_key}})}function Hy(){let e=Py();return L(()=>e.value.use_rtc??!1)}function Uy(){let e=Py();return L(()=>e.value.end_feedback?.type??null)}function Wy(){let e=Ih(`markdown-link-allowed-hosts`),t=Ih(`markdown-link-include-www`),n=Ih(`markdown-link-allow-http`),r=Py();return L(()=>{let i=[];if(e.value)i=e.value.split(`,`).map(e=>e.trim()).filter(Boolean);else{let e=r.value.markdown_link_allowed_hosts;e&&e.length>0&&(i=e.some(e=>e.hostname===`*`)?[`*`]:e.map(e=>e.hostname))}let a=Wm(t.value)??r.value.markdown_link_include_www??!0,o=Wm(n.value)??r.value.markdown_link_allow_http??!0;return{allowedHosts:i,includeWww:a,allowHttp:o}})}function Gy(){let e=Ih(`syntax-highlight-theme`),t=Py();return L(()=>{let n=e.value??t.value.syntax_highlight_theme;if(n===`light`||n===`dark`)return n;let r=new Sh(t.value.styles?.base_active??kh.base_active);return r.isValid&&r.isDark()?`dark`:`light`})}function Ky(){let e=Ih(`allow-events`);return L(()=>Wm(e.value)??!1)}async function qy(e,t,n,r){let i=await(await fetch(`${t}/v1/convai/agents/${e}/widget${r?`?conversation_signature=${encodeURIComponent(r)}`:``}`,{signal:n})).json();if(!i.widget_config)throw Error(`Response does not contain widget_config`);return i.widget_config}var Jy=Bf(function(){let e=Py();return R(`style`,{children:[L(()=>{let t=e.value.styles;return`:host, :root {\n${Ah.map(e=>`${Yy(e)}: ${Xy(t?.[e]??kh[e])};`).join(`
|
|
276
|
-
`)}\n}`}),Km]})});function Yy(e){return`--el-${e.replace(/_/g,`-`)}`}function Xy(e){return typeof e==`number`?`${e}px`:e}var Zy=Vd(null);function Qy({children:e}){let t=mm(`voice`),{isDisconnected:n,addModeToggleEntry:r,setVolume:i}=Oy();xm(()=>{i(t.value===`text`?0:1)});let a=bf(()=>({mode:Qp(()=>t.value),setMode:e=>{t.value!==e&&(t.value=e,n.value||r(e))},isTextMode:Qp(()=>t.value===`text`),isVoiceMode:Qp(()=>t.value===`voice`)}),[n,r]);return R(Zy.Provider,{value:a,children:e})}function $y(){return Mh(Zy)}var eb=Vd(null);function tb({children:e}){let t=Py(),{isTextMode:n}=$y(),{setMicMuted:r,status:i}=Oy(),a=L(()=>t.value.mic_muting_enabled??!1),o=mm(!1),s=F(null);xm(()=>{i.value===`disconnected`&&(o.value=!1)}),xm(()=>{n.value?(s.current===null&&(s.current=o.peek()),r(!0)):(s.current!==null&&(o.value=s.current,s.current=null),r(a.value?o.value:!1))});let c=bf(()=>({isMuted:Qp(()=>n.value?!0:a.value?o.value:!1),setIsMuted:e=>{o.value=e},isMutingEnabled:a}),[]);return R(eb.Provider,{value:c,children:e})}function nb(){return Mh(eb)}var rb=Vd(null);function ib({children:e}){let t=Py(),{language:n}=Yh(),r=Ih(`text-contents`),i=L(()=>{try{if(r.value){let e=JSON.parse(r.value);if(typeof e==`object`)return e}}catch(e){console.error(`[ConversationalAI] Cannot parse text-contents:`,e)}return{}}),a=bf(()=>Object.fromEntries(Oh.map(e=>[e,Qp(()=>i.value[e]??t.value.language_presets?.[n.value.languageCode]?.text_contents?.[e]??t.value.text_contents?.[e]??Dh[e])])),[]);return R(rb.Provider,{value:a,children:e})}function ab(){return Mh(rb)}var ob=Vd(null);function sb({children:e}){let t=Py(),n=Ih(`avatar-image-url`),r=Ih(`avatar-orb-color-1`),i=Ih(`avatar-orb-color-2`),a=mm(``),o=L(()=>n.value?{type:`image`,url:n.value}:r.value&&i.value?{type:`orb`,color_1:r.value,color_2:i.value}:t.value.avatar),s=L(()=>{switch(o.value.type){case`url`:return o.value.custom_url;case`orb`:return a.value;case`image`:return o.value.url}}),c=bf(()=>({config:o,previewUrl:s,canvasUrl:a}),[]);return R(ob.Provider,{value:c,children:e})}function cb(){return Mh(ob)}var lb=Vd(null);function ub({children:e,...t}){let[n,r]=hf(null);return R(`div`,{ref:r,...t,children:n&&R(lb.Provider,{value:n,children:e})})}function db(){return Mh(lb)}var fb={LOADING:`loading`,SUCCESS:`success`,ERROR:`error`};function pb(e,t){let n=e.entry.eventId,r=t.entry.eventId;if(n!==r)return n-r;let i=e=>e===`user`?0:1,a=i(e.entry.role)-i(t.entry.role);return a===0?e.originalIndex-t.originalIndex:a}function mb(e,t){let n=[];t.firstMessage&&n.push({type:`message`,role:`agent`,message:t.firstMessage,isText:!0,conversationIndex:e[0]?.conversationIndex??t.firstMessageConversationIndex??0});let r=new Map;for(let t of e)if(t.type===`agent_tool_request`){let e=r.get(t.eventId)??{loading:0,error:0,success:0};e.loading++,r.set(t.eventId,e)}else if(t.type===`agent_tool_response`){let e=r.get(t.eventId);e&&(e.loading--,t.isError?e.error++:e.success++)}for(let i of e){if(i.type===`agent_tool_request`||i.type===`agent_tool_response`||i.type===`message`&&i.role===`agent`&&!i.message&&!(t.showAgentStatus&&i.eventId!=null&&r.has(i.eventId))||!t.transcriptEnabled&&i.type===`message`&&!i.isText)continue;let e=n[n.length-1];if(i.type===`message`&&i.eventId!=null&&e?.type===`message`&&e.eventId===i.eventId&&e.role===i.role){n[n.length-1]=i;continue}n.push(i)}let i=[];for(let e=0;e<n.length;e++){let t=n[e];t.type===`message`&&t.eventId!=null&&i.push({entry:t,originalIndex:e})}let a=i.map(e=>e.originalIndex).sort((e,t)=>e-t);i.sort(pb);let o=[...n];for(let e=0;e<i.length;e++)o[a[e]]=i[e].entry;if(t.showAgentStatus)for(let e=0;e<o.length;e++){let t=o[e];if(t.type!==`message`||t.role!==`agent`||t.eventId==null)continue;let n=r.get(t.eventId);if(!n)continue;let i=n.loading>0?fb.LOADING:n.error>0?fb.ERROR:fb.SUCCESS;o[e]={...t,toolStatus:i}}return o}function hb(e){return e&&typeof e==`object`&&`peek`in e}function gb(e){let t=hb(e),n=mm(t?e.peek():e);return t?e:(n.value=e,n)}function _b(e){return hb(e)?e.value:e}function vb(e){return hb(e)?e.peek():e}function yb(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function bb(...e){return t=>{let n=!1,r=e.map(e=>{let r=yb(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():yb(e[t],null)}}}}function xb(...e){return I(bb(...e),e)}var Sb=Symbol.for(`react.lazy`),Cb=void 0;function wb(e){return typeof e==`object`&&!!e&&`then`in e}function Tb(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Sb&&`_payload`in e&&wb(e._payload)}function Eb(e){let t=Ob(e),n=Uf((e,n)=>{let{children:r,...i}=e;Tb(r)&&typeof Cb==`function`&&(r=Cb(r._payload));let a=Gf.toArray(r),o=a.find(Ab);if(o){let e=o.props.children,r=a.map(t=>t===o?Gf.count(e)>1?Gf.only(null):Cp(e)?e.props.children:null:t);return R(t,{...i,ref:n,children:Cp(e)?Ep(e,void 0,r):null})}return R(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var Db=Eb(`Slot`);function Ob(e){let t=Uf((e,t)=>{let{children:n,...r}=e;if(Tb(n)&&typeof Cb==`function`&&(n=Cb(n._payload)),Cp(n)){let e=Mb(n),i=jb(r,n.props);return n.type!==gd&&(i.ref=t?bb(t,e):e),Ep(n,i)}return Gf.count(n)>1?Gf.only(null):null});return t.displayName=`${e}.SlotClone`,t}var kb=Symbol(`radix.slottable`);function Ab(e){return Cp(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===kb}function jb(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Mb(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Nb=window.matchMedia(`(prefers-reduced-motion: reduce)`);function Pb(){let e=mm(Nb.matches);return _f(()=>{let t=t=>{e.value=t.matches};return Nb.addEventListener(`change`,t),()=>Nb.removeEventListener(`change`,t)},[]),e}function Fb({onStart:e,onEnd:t}){let n=F();n.current??=new Set;let r=F(e);r.current=e;let i=F(t);i.current=t;let a=mm(!1);return{transitioning:a,handlers:{onTransitionStart:I(e=>{e.target===e.currentTarget&&(n.current?.add(e.propertyName),a.peek()||(a.value=!0,r.current?.()))},[]),onTransitionEnd:I(e=>{e.target===e.currentTarget&&(n.current?.delete(e.propertyName),n.current?.size||(a.value=!1,i.current?.()))},[])}}}function Ib(e){return R(Pb().value?Lb:Rb,{...e})}function Lb({active:e,...t}){return _b(e)?R(Db,{"data-shown":!0,...t}):null}function Rb({active:e,initial:t=e,...n}){let r=gb(e),i=mm(vb(t));xm(()=>{r.value&&(i.value=r.value)});let{handlers:a}=Fb({onEnd:()=>{i.value=r.value}});return!r.value&&!i.value?null:R(Db,{"data-shown":r.value&&i.value,...a,...n})}function zb(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=zb(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Bb(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=zb(e))&&(r&&(r+=` `),r+=t);return r}var Vb=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Hb=(e,t)=>({classGroupId:e,validator:t}),Ub=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Wb=`-`,Gb=[],Kb=`arbitrary..`,qb=e=>{let t=Xb(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return Yb(e);let n=e.split(Wb);return Jb(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?Vb(i,t):t:i||Gb}return n[e]||Gb}}},Jb=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Jb(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Wb):e.slice(t).join(Wb),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},Yb=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Kb+r:void 0})(),Xb=e=>{let{theme:t,classGroups:n}=e;return Zb(n,t)},Zb=(e,t)=>{let n=Ub();for(let r in e){let i=e[r];Qb(i,n,r,t)}return n},Qb=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];$b(i,t,n,r)}},$b=(e,t,n,r)=>{if(typeof e==`string`){ex(e,t,n);return}if(typeof e==`function`){tx(e,t,n,r);return}nx(e,t,n,r)},ex=(e,t,n)=>{let r=e===``?t:rx(t,e);r.classGroupId=n},tx=(e,t,n,r)=>{if(ix(e)){Qb(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Hb(n,e))},nx=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Qb(o,rx(t,a),n,r)}},rx=(e,t)=>{let n=e,r=t.split(Wb),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Ub(),n.nextPart.set(t,i)),n=i}return n},ix=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,ax=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},ox=`!`,sx=`:`,cx=[],lx=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),ux=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===sx){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(ox)?(c=s.slice(0,-1),l=!0):s.startsWith(ox)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return lx(t,l,c,u)};if(t){let e=t+sx,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):lx(cx,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},dx=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},fx=e=>({cache:ax(e.cacheSize),parseClassName:ux(e),sortModifiers:dx(e),...qb(e)}),px=/\s+/,mx=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(px),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+ox:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},hx=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=gx(n))&&(i&&(i+=` `),i+=r);return i},gx=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=gx(e[r]))&&(n&&(n+=` `),n+=t);return n},_x=(e,...t)=>{let n,r,i,a,o=o=>(n=fx(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=mx(e,n);return i(e,a),a};return a=o,(...e)=>a(hx(...e))},vx=[],yx=e=>{let t=t=>t[e]||vx;return t.isThemeGetter=!0,t},bx=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,xx=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Sx=/^\d+\/\d+$/,Cx=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,wx=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Tx=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Dx=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Ox=e=>Sx.test(e),kx=e=>!!e&&!Number.isNaN(Number(e)),Ax=e=>!!e&&Number.isInteger(Number(e)),jx=e=>e.endsWith(`%`)&&kx(e.slice(0,-1)),Mx=e=>Cx.test(e),Nx=()=>!0,Px=e=>wx.test(e)&&!Tx.test(e),Fx=()=>!1,Ix=e=>Ex.test(e),Lx=e=>Dx.test(e),Rx=e=>!z(e)&&!B(e),zx=e=>Zx(e,tS,Fx),z=e=>bx.test(e),Bx=e=>Zx(e,nS,Px),Vx=e=>Zx(e,rS,kx),Hx=e=>Zx(e,$x,Fx),Ux=e=>Zx(e,eS,Lx),Wx=e=>Zx(e,aS,Ix),B=e=>xx.test(e),Gx=e=>Qx(e,nS),Kx=e=>Qx(e,iS),qx=e=>Qx(e,$x),Jx=e=>Qx(e,tS),Yx=e=>Qx(e,eS),Xx=e=>Qx(e,aS,!0),Zx=(e,t,n)=>{let r=bx.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Qx=(e,t,n=!1)=>{let r=xx.exec(e);return r?r[1]?t(r[1]):n:!1},$x=e=>e===`position`||e===`percentage`,eS=e=>e===`image`||e===`url`,tS=e=>e===`length`||e===`size`||e===`bg-size`,nS=e=>e===`length`,rS=e=>e===`number`,iS=e=>e===`family-name`,aS=e=>e===`shadow`,oS=_x(()=>{let e=yx(`color`),t=yx(`font`),n=yx(`text`),r=yx(`font-weight`),i=yx(`tracking`),a=yx(`leading`),o=yx(`breakpoint`),s=yx(`container`),c=yx(`spacing`),l=yx(`radius`),u=yx(`shadow`),d=yx(`inset-shadow`),f=yx(`text-shadow`),p=yx(`drop-shadow`),m=yx(`blur`),h=yx(`perspective`),g=yx(`aspect`),_=yx(`ease`),v=yx(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),B,z],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[B,z,c],T=()=>[Ox,`full`,`auto`,...w()],ee=()=>[Ax,`none`,`subgrid`,B,z],te=()=>[`auto`,{span:[`full`,Ax,B,z]},Ax,B,z],ne=()=>[Ax,`auto`,B,z],re=()=>[`auto`,`min`,`max`,`fr`,B,z],ie=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],ae=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],oe=()=>[`auto`,...w()],se=()=>[Ox,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],E=()=>[e,B,z],ce=()=>[...b(),qx,Hx,{position:[B,z]}],le=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ue=()=>[`auto`,`cover`,`contain`,Jx,zx,{size:[B,z]}],de=()=>[jx,Gx,Bx],fe=()=>[``,`none`,`full`,l,B,z],pe=()=>[``,kx,Gx,Bx],me=()=>[`solid`,`dashed`,`dotted`,`double`],he=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ge=()=>[kx,jx,qx,Hx],_e=()=>[``,`none`,m,B,z],ve=()=>[`none`,kx,B,z],ye=()=>[`none`,kx,B,z],be=()=>[kx,B,z],xe=()=>[Ox,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Mx],breakpoint:[Mx],color:[Nx],container:[Mx],"drop-shadow":[Mx],ease:[`in`,`out`,`in-out`],font:[Rx],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Mx],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Mx],shadow:[Mx],spacing:[`px`,kx],text:[Mx],"text-shadow":[Mx],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Ox,z,B,g]}],container:[`container`],columns:[{columns:[kx,z,B,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ax,`auto`,B,z]}],basis:[{basis:[Ox,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[kx,Ox,`auto`,`initial`,`none`,z]}],grow:[{grow:[``,kx,B,z]}],shrink:[{shrink:[``,kx,B,z]}],order:[{order:[Ax,`first`,`last`,`none`,B,z]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":ne()}],"col-end":[{"col-end":ne()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":ne()}],"row-end":[{"row-end":ne()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":re()}],"auto-rows":[{"auto-rows":re()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...ie(),`normal`]}],"justify-items":[{"justify-items":[...ae(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...ae()]}],"align-content":[{content:[`normal`,...ie()]}],"align-items":[{items:[...ae(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...ae(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...ae(),`baseline`]}],"place-self":[{"place-self":[`auto`,...ae()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:oe()}],mx:[{mx:oe()}],my:[{my:oe()}],ms:[{ms:oe()}],me:[{me:oe()}],mt:[{mt:oe()}],mr:[{mr:oe()}],mb:[{mb:oe()}],ml:[{ml:oe()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:se()}],w:[{w:[s,`screen`,...se()]}],"min-w":[{"min-w":[s,`screen`,`none`,...se()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...se()]}],h:[{h:[`screen`,`lh`,...se()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...se()]}],"max-h":[{"max-h":[`screen`,`lh`,...se()]}],"font-size":[{text:[`base`,n,Gx,Bx]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,B,Vx]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,jx,z]}],"font-family":[{font:[Kx,z,t]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,B,z]}],"line-clamp":[{"line-clamp":[kx,`none`,B,Vx]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,B,z]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,B,z]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:E()}],"text-color":[{text:E()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...me(),`wavy`]}],"text-decoration-thickness":[{decoration:[kx,`from-font`,`auto`,B,Bx]}],"text-decoration-color":[{decoration:E()}],"underline-offset":[{"underline-offset":[kx,`auto`,B,z]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,B,z]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,B,z]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:ce()}],"bg-repeat":[{bg:le()}],"bg-size":[{bg:ue()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ax,B,z],radial:[``,B,z],conic:[Ax,B,z]},Yx,Ux]}],"bg-color":[{bg:E()}],"gradient-from-pos":[{from:de()}],"gradient-via-pos":[{via:de()}],"gradient-to-pos":[{to:de()}],"gradient-from":[{from:E()}],"gradient-via":[{via:E()}],"gradient-to":[{to:E()}],rounded:[{rounded:fe()}],"rounded-s":[{"rounded-s":fe()}],"rounded-e":[{"rounded-e":fe()}],"rounded-t":[{"rounded-t":fe()}],"rounded-r":[{"rounded-r":fe()}],"rounded-b":[{"rounded-b":fe()}],"rounded-l":[{"rounded-l":fe()}],"rounded-ss":[{"rounded-ss":fe()}],"rounded-se":[{"rounded-se":fe()}],"rounded-ee":[{"rounded-ee":fe()}],"rounded-es":[{"rounded-es":fe()}],"rounded-tl":[{"rounded-tl":fe()}],"rounded-tr":[{"rounded-tr":fe()}],"rounded-br":[{"rounded-br":fe()}],"rounded-bl":[{"rounded-bl":fe()}],"border-w":[{border:pe()}],"border-w-x":[{"border-x":pe()}],"border-w-y":[{"border-y":pe()}],"border-w-s":[{"border-s":pe()}],"border-w-e":[{"border-e":pe()}],"border-w-t":[{"border-t":pe()}],"border-w-r":[{"border-r":pe()}],"border-w-b":[{"border-b":pe()}],"border-w-l":[{"border-l":pe()}],"divide-x":[{"divide-x":pe()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":pe()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...me(),`hidden`,`none`]}],"divide-style":[{divide:[...me(),`hidden`,`none`]}],"border-color":[{border:E()}],"border-color-x":[{"border-x":E()}],"border-color-y":[{"border-y":E()}],"border-color-s":[{"border-s":E()}],"border-color-e":[{"border-e":E()}],"border-color-t":[{"border-t":E()}],"border-color-r":[{"border-r":E()}],"border-color-b":[{"border-b":E()}],"border-color-l":[{"border-l":E()}],"divide-color":[{divide:E()}],"outline-style":[{outline:[...me(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[kx,B,z]}],"outline-w":[{outline:[``,kx,Gx,Bx]}],"outline-color":[{outline:E()}],shadow:[{shadow:[``,`none`,u,Xx,Wx]}],"shadow-color":[{shadow:E()}],"inset-shadow":[{"inset-shadow":[`none`,d,Xx,Wx]}],"inset-shadow-color":[{"inset-shadow":E()}],"ring-w":[{ring:pe()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:E()}],"ring-offset-w":[{"ring-offset":[kx,Bx]}],"ring-offset-color":[{"ring-offset":E()}],"inset-ring-w":[{"inset-ring":pe()}],"inset-ring-color":[{"inset-ring":E()}],"text-shadow":[{"text-shadow":[`none`,f,Xx,Wx]}],"text-shadow-color":[{"text-shadow":E()}],opacity:[{opacity:[kx,B,z]}],"mix-blend":[{"mix-blend":[...he(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":he()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[kx]}],"mask-image-linear-from-pos":[{"mask-linear-from":ge()}],"mask-image-linear-to-pos":[{"mask-linear-to":ge()}],"mask-image-linear-from-color":[{"mask-linear-from":E()}],"mask-image-linear-to-color":[{"mask-linear-to":E()}],"mask-image-t-from-pos":[{"mask-t-from":ge()}],"mask-image-t-to-pos":[{"mask-t-to":ge()}],"mask-image-t-from-color":[{"mask-t-from":E()}],"mask-image-t-to-color":[{"mask-t-to":E()}],"mask-image-r-from-pos":[{"mask-r-from":ge()}],"mask-image-r-to-pos":[{"mask-r-to":ge()}],"mask-image-r-from-color":[{"mask-r-from":E()}],"mask-image-r-to-color":[{"mask-r-to":E()}],"mask-image-b-from-pos":[{"mask-b-from":ge()}],"mask-image-b-to-pos":[{"mask-b-to":ge()}],"mask-image-b-from-color":[{"mask-b-from":E()}],"mask-image-b-to-color":[{"mask-b-to":E()}],"mask-image-l-from-pos":[{"mask-l-from":ge()}],"mask-image-l-to-pos":[{"mask-l-to":ge()}],"mask-image-l-from-color":[{"mask-l-from":E()}],"mask-image-l-to-color":[{"mask-l-to":E()}],"mask-image-x-from-pos":[{"mask-x-from":ge()}],"mask-image-x-to-pos":[{"mask-x-to":ge()}],"mask-image-x-from-color":[{"mask-x-from":E()}],"mask-image-x-to-color":[{"mask-x-to":E()}],"mask-image-y-from-pos":[{"mask-y-from":ge()}],"mask-image-y-to-pos":[{"mask-y-to":ge()}],"mask-image-y-from-color":[{"mask-y-from":E()}],"mask-image-y-to-color":[{"mask-y-to":E()}],"mask-image-radial":[{"mask-radial":[B,z]}],"mask-image-radial-from-pos":[{"mask-radial-from":ge()}],"mask-image-radial-to-pos":[{"mask-radial-to":ge()}],"mask-image-radial-from-color":[{"mask-radial-from":E()}],"mask-image-radial-to-color":[{"mask-radial-to":E()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[kx]}],"mask-image-conic-from-pos":[{"mask-conic-from":ge()}],"mask-image-conic-to-pos":[{"mask-conic-to":ge()}],"mask-image-conic-from-color":[{"mask-conic-from":E()}],"mask-image-conic-to-color":[{"mask-conic-to":E()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:ce()}],"mask-repeat":[{mask:le()}],"mask-size":[{mask:ue()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,B,z]}],filter:[{filter:[``,`none`,B,z]}],blur:[{blur:_e()}],brightness:[{brightness:[kx,B,z]}],contrast:[{contrast:[kx,B,z]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Xx,Wx]}],"drop-shadow-color":[{"drop-shadow":E()}],grayscale:[{grayscale:[``,kx,B,z]}],"hue-rotate":[{"hue-rotate":[kx,B,z]}],invert:[{invert:[``,kx,B,z]}],saturate:[{saturate:[kx,B,z]}],sepia:[{sepia:[``,kx,B,z]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,B,z]}],"backdrop-blur":[{"backdrop-blur":_e()}],"backdrop-brightness":[{"backdrop-brightness":[kx,B,z]}],"backdrop-contrast":[{"backdrop-contrast":[kx,B,z]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,kx,B,z]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[kx,B,z]}],"backdrop-invert":[{"backdrop-invert":[``,kx,B,z]}],"backdrop-opacity":[{"backdrop-opacity":[kx,B,z]}],"backdrop-saturate":[{"backdrop-saturate":[kx,B,z]}],"backdrop-sepia":[{"backdrop-sepia":[``,kx,B,z]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,B,z]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[kx,`initial`,B,z]}],ease:[{ease:[`linear`,`initial`,_,B,z]}],delay:[{delay:[kx,B,z]}],animate:[{animate:[`none`,v,B,z]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,B,z]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ve()}],"rotate-x":[{"rotate-x":ve()}],"rotate-y":[{"rotate-y":ve()}],"rotate-z":[{"rotate-z":ve()}],scale:[{scale:ye()}],"scale-x":[{"scale-x":ye()}],"scale-y":[{"scale-y":ye()}],"scale-z":[{"scale-z":ye()}],"scale-3d":[`scale-3d`],skew:[{skew:be()}],"skew-x":[{"skew-x":be()}],"skew-y":[{"skew-y":be()}],transform:[{transform:[B,z,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:xe()}],"translate-x":[{"translate-x":xe()}],"translate-y":[{"translate-y":xe()}],"translate-z":[{"translate-z":xe()}],"translate-none":[`translate-none`],accent:[{accent:E()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:E()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,B,z]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,B,z]}],fill:[{fill:[`none`,...E()]}],"stroke-w":[{stroke:[kx,Gx,Bx,Vx]}],stroke:[{stroke:[`none`,...E()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}}),sS=(...e)=>oS(Bb(e)),cS=Vd(null);function lS({children:e}){let t=mm(null),n=mm(``),r=mm(`initial`),{lastId:i}=Oy();Ih(`agent-id`);let{serverUrl:a}=zh(),o=I(async e=>{let n=i.value;if(!n){console.warn(`[ConversationalAI] Cannot submit rating: missing conversation_id`);return}try{t.value=e,r.value=`submitted-rating`,await Om(n,{rating:e},a.value)}catch(e){console.error(`[ConversationalAI] Failed to submit rating:`,e)}},[]),s=I(async()=>{let e=i.value;if(!e){console.warn(`[ConversationalAI] Cannot submit feedback: missing conversation_id`);return}if(t.value===null){console.warn(`[ConversationalAI] Cannot submit feedback: rating not set`);return}if(n.value)try{r.value=`submitted-follow-up`,await Om(e,{rating:t.value,comment:n.value||void 0},a.value)}catch(e){console.error(`[ConversationalAI] Failed to submit feedback:`,e)}},[]),c=I(()=>{t.value=null,n.value=``,r.value=`initial`},[]);xm(()=>{i.value!==null&&c()});let l=bf(()=>({rating:t,feedbackText:n,feedbackProgress:r,submitRating:o,submitFeedback:s,reset:c}),[o,s,c]);return R(cS.Provider,{value:l,children:e})}function uS(){return Mh(cS)}var dS=Vd(null);function fS({defaultContent:e=`transcript`,children:t}){let n=mm(e),r=bf(()=>({currentContent:n,currentConfig:n.value===`feedback`?{showHeaderBack:!0,onHeaderBack:()=>{n.value=`transcript`}}:{showHeaderBack:!1}}),[n.value]);return R(dS.Provider,{value:r,children:t})}function pS(){return Mh(dS)}var mS={phone:_S,"phone-off":vS,paperclip:yS,chat:bS,mic:xS,"mic-off":SS,soundwave:CS,check:ES,"chevron-down":wS,"chevron-up":TS,send:DS,star:OS,copy:kS,download:AS,wrap:jS,maximize:NS,minimize:PS,loader:FS,x:IS},hS={xs:`text-xs`,sm:`text-sm`,md:`text-lg`,lg:`text-xl`};function gS({name:e,size:t=`md`,className:n}){let r=mS[e];return R(`slot`,{name:`icon-${e}`,className:Bb(`flex`,hS[t],n),"aria-hidden":!0,children:R(r,{})})}function _S(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 18 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{d:`M3.7489 2.25C2.93286 2.25 2.21942 2.92142 2.27338 3.7963C2.6686 10.2041 7.79483 15.3303 14.2026 15.7255C15.0775 15.7795 15.7489 15.066 15.7489 14.25V11.958C15.7489 11.2956 15.3144 10.7116 14.6799 10.5213L12.6435 9.91035C12.1149 9.75179 11.542 9.89623 11.1518 10.2864L10.5901 10.8482C9.15291 10.0389 7.95998 8.84599 7.15074 7.40881L7.71246 6.84709C8.10266 6.45689 8.24711 5.88396 8.08854 5.35541L7.47761 3.31898C7.28727 2.6845 6.70329 2.25 6.04087 2.25H3.7489Z`})})}function vS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M16.0303 3.53033C16.3232 3.23744 16.3232 2.76256 16.0303 2.46967C15.7374 2.17678 15.2626 2.17678 14.9697 2.46967L8.6271 8.81224C8.25925 8.3778 7.93185 7.90804 7.65074 7.40881L8.21246 6.84709C8.60266 6.45689 8.74711 5.88396 8.58854 5.35541L7.97761 3.31898C7.78727 2.6845 7.20329 2.25 6.54087 2.25H4.2489C3.43286 2.25 2.71942 2.92142 2.77338 3.7963C2.95462 6.73468 4.13069 9.40357 5.96899 11.4703L2.96967 14.4697C2.67678 14.7626 2.67678 15.2374 2.96967 15.5303C3.26256 15.8232 3.73744 15.8232 4.03033 15.5303L16.0303 3.53033Z`}),R(`path`,{d:`M14.7026 15.7255C12.2994 15.5773 10.0765 14.7636 8.21584 13.4665L10.9278 10.7545C10.9815 10.7863 11.0356 10.8175 11.0901 10.8482L11.6518 10.2864C12.042 9.89623 12.6149 9.75179 13.1435 9.91035L15.1799 10.5213C15.8144 10.7116 16.2489 11.2956 16.2489 11.958V14.25C16.2489 15.066 15.5775 15.7795 14.7026 15.7255Z`})]})}function yS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M13.234 20.252 21 12.3`}),R(`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 0 2.828 2 2 0 0 0 2.828 0l8.414-8.586a4 4 0 0 0 0-5.656 4 4 0 0 0-5.656 0l-8.415 8.585a6 6 0 1 0 8.486 8.486`})]})}function bS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M1.5 6.75C1.5 4.26472 3.51472 2.25 6 2.25H12C14.4853 2.25 16.5 4.26472 16.5 6.75V11.25C16.5 13.7353 14.4853 15.75 12 15.75H2.25C1.83579 15.75 1.5 15.4142 1.5 15V6.75ZM6 9.9375C5.48223 9.9375 5.0625 9.51777 5.0625 9C5.0625 8.48223 5.48223 8.0625 6 8.0625C6.51777 8.0625 6.9375 8.48223 6.9375 9C6.9375 9.51777 6.51777 9.9375 6 9.9375ZM9 9.9375C8.48223 9.9375 8.0625 9.51777 8.0625 9C8.0625 8.48223 8.48223 8.0625 9 8.0625C9.51777 8.0625 9.9375 8.48223 9.9375 9C9.9375 9.51777 9.51777 9.9375 9 9.9375ZM11.0625 9C11.0625 9.51777 11.4822 9.9375 12 9.9375C12.5178 9.9375 12.9375 9.51777 12.9375 9C12.9375 8.48223 12.5178 8.0625 12 8.0625C11.4822 8.0625 11.0625 8.48223 11.0625 9Z`})})}function xS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M9.50008 1.5C7.42901 1.5 5.75008 3.17893 5.75008 5.25V8.25C5.75008 10.3211 7.42901 12 9.50008 12C11.5712 12 13.2501 10.3211 13.2501 8.25V5.25C13.2501 3.17893 11.5712 1.5 9.50008 1.5Z`}),R(`path`,{d:`M4.88997 10.8417C4.66448 10.4943 4.20002 10.3954 3.85256 10.6209C3.50509 10.8463 3.40621 11.3108 3.63169 11.6583C4.47442 12.9569 6.08493 14.6838 8.75008 14.9616V15.75C8.75008 16.1642 9.08587 16.5 9.50008 16.5C9.9143 16.5 10.2501 16.1642 10.2501 15.75V14.9616C12.9152 14.6838 14.5257 12.9569 15.3685 11.6583C15.594 11.3108 15.4951 10.8463 15.1476 10.6209C14.8001 10.3954 14.3357 10.4943 14.1102 10.8417C13.3305 12.0432 11.9002 13.5 9.50008 13.5C7.1 13.5 5.66968 12.0432 4.88997 10.8417Z`})]})}function SS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M13.25 8.25C13.25 8.64791 13.188 9.03135 13.0732 9.39119L6.57947 2.8975C7.26687 2.04521 8.31974 1.5 9.49995 1.5C11.571 1.5 13.25 3.17893 13.25 5.25V8.25Z`}),R(`path`,{d:`M2.21967 1.71967C2.51256 1.42678 2.98744 1.42678 3.28033 1.71967L16.7803 15.2197C17.0732 15.5126 17.0732 15.9874 16.7803 16.2803C16.4874 16.5732 16.0126 16.5732 15.7197 16.2803L13.2828 13.8435C12.4719 14.4022 11.4678 14.8338 10.25 14.9614V15.75C10.25 16.1642 9.91422 16.5 9.50001 16.5C9.08579 16.5 8.75001 16.1642 8.75001 15.75V14.9616C6.08485 14.6838 4.47434 12.9569 3.63162 11.6583C3.40614 11.3108 3.50502 10.8463 3.85248 10.6209C4.19995 10.3954 4.66441 10.4943 4.88989 10.8417C5.6696 12.0432 7.09993 13.5 9.50001 13.5C10.5978 13.5 11.4845 13.1981 12.1992 12.7598L11.0875 11.6482C10.605 11.8739 10.0667 12 9.50001 12C7.42894 12 5.75001 10.3211 5.75001 8.25V6.31067L2.21967 2.78033C1.92678 2.48744 1.92678 2.01256 2.21967 1.71967Z`})]})}function CS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 18 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`rect`,{x:`1.5`,y:`6.75`,width:`2`,height:`4.5`,rx:`1`}),R(`rect`,{x:`5`,y:`4.5`,width:`2`,height:`9`,rx:`1`}),R(`rect`,{x:`8.5`,y:`2.25`,width:`2`,height:`13.5`,rx:`1`}),R(`rect`,{x:`12`,y:`4.5`,width:`2`,height:`9`,rx:`1`}),R(`rect`,{x:`15.5`,y:`6.75`,width:`2`,height:`4.5`,rx:`1`})]})}function wS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`m6 9 6 6 6-6`})})}function TS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`m18 15-6-6-6 6`})})}function ES(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`M20 6 9 17l-5-5`})})}function DS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 20 20`,fill:`currentColor`,...e,children:R(`path`,{d:`M4.64337 17.6645C3.243 18.1313 1.97185 16.6817 2.6176 15.3543L8.50148 3.25965C9.10962 2.00957 10.8908 2.00958 11.4989 3.25965L17.3828 15.3543C18.0286 16.6817 16.7574 18.1313 15.357 17.6645L10.8334 16.1567L10.8334 12.5005C10.8334 12.0403 10.4603 11.6672 10 11.6672C9.5398 11.6672 9.16671 12.0403 9.16671 12.5005L9.16671 16.1568L4.64337 17.6645Z`})})}function OS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 21 20`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{d:`M11.8621 0.854898C11.3145 -0.284967 9.68804 -0.284965 9.1404 0.854899L6.77181 5.78487C6.77181 5.78487 6.76902 5.78867 6.7646 5.78925L1.31499 6.50272C0.0591912 6.66713 -0.452868 8.21568 0.474832 9.09033L4.45896 12.8466C4.46075 12.8483 4.46059 12.8502 4.46059 12.8502L3.46003 18.2169C3.22657 19.4691 4.55184 20.4152 5.66108 19.8172L10.4957 17.2111C10.4991 17.2093 10.5035 17.2093 10.5068 17.2111L15.3415 19.8172C16.4507 20.4152 17.776 19.4691 17.5425 18.2169L16.542 12.8502C16.542 12.8502 16.5418 12.8483 16.5436 12.8466L20.5277 9.09033C21.4554 8.21568 20.9434 6.66713 19.6876 6.50272L14.2379 5.78925C14.2335 5.78867 14.2307 5.78487 14.2307 5.78487L11.8621 0.854898Z`})})}function kS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}),R(`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`})]})}function AS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}),R(`polyline`,{points:`7 10 12 15 17 10`}),R(`line`,{x1:`12`,x2:`12`,y1:`15`,y2:`3`})]})}function jS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`line`,{x1:`3`,x2:`21`,y1:`6`,y2:`6`}),R(`path`,{d:`M3 12h15a3 3 0 1 1 0 6h-4`}),R(`polyline`,{points:`16 16 14 18 16 20`}),R(`line`,{x1:`3`,x2:`10`,y1:`18`,y2:`18`})]})}function MS({orbColor:e,circleBackgroundColor:t,starColor:n,className:r}){return R(`slot`,{name:`icon-feedback`,className:Bb(`flex`,r),"aria-hidden":!0,children:R(`svg`,{width:`100%`,height:`100%`,viewBox:`0 0 82 88`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[R(`path`,{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M9 42C9 59.6731 23.3269 74 41 74C58.6731 74 73 59.6731 73 42C73 24.3269 58.6731 10 41 10C23.3269 10 9 24.3269 9 42ZM29.4529 18.5973C31.1347 18.0574 32.8641 17.5023 34.9844 16.6005C42.2533 13.5091 48.3526 11.9217 51.7782 14.094C53.5063 15.1899 54.4051 16.7749 55.6117 18.9024C56.7969 20.9922 58.279 23.6057 61.1358 26.7937C62.2737 28.0636 63.3886 29.2195 64.4371 30.3064C68.7007 34.7263 71.8645 38.0061 70.9949 43.1697C70.2965 47.316 67.9794 49.4559 65.6038 51.65C63.4317 53.656 61.2107 55.7073 60.1332 59.3786C57.8774 67.0653 53.5327 71.9113 48.3526 72.7468C43.1725 73.5823 36.6555 75.1698 29.8043 70.1567C26.1949 67.5157 25.229 64.3182 24.1947 60.894C23.2657 57.8184 22.2814 54.56 19.2768 51.3577C14.1619 45.9062 10.2533 29.6345 19.2768 23.0339C23.736 20.4327 26.5223 19.5382 29.4529 18.5973Z`,fill:e,"fill-opacity":`0.15`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M43.5 73.4212C40.4387 73.4212 35.0039 71.1025 37.556 56.4696C40.143 41.6365 42.6582 40.577 44.6991 25.744C46.3318 13.8775 41.1635 8.87964 33 10.9988`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M43.5 73.4212C40.4387 73.4212 35.0039 71.1025 37.556 56.4696C40.143 41.6365 42.6582 40.577 44.6991 25.744C46.3318 13.8775 41.1635 8.87964 33 10.9988`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M21.9366 68.1987C21.3549 66.5119 21.0386 60.9231 28.1376 53.3448C37.0114 43.8719 40.5 43.9579 51.4911 31.7482C59.5691 22.7747 59.1723 17.0524 58.0993 15.4626`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M9.26819 42.161C10.4003 43.5337 15.6951 46.3853 25.7661 44.3926C38.3548 41.9018 52.434 40.307 57.694 41.0287C70.352 42.7655 71.4138 51.3035 71.4138 51.3035`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M22 16.4916C18.815 21.85 19.6451 26.0591 27.9943 32.0828C38.4307 39.6124 50.2985 48.8304 53.5024 53.1027C58.6684 59.9914 59.5 67.928 59.5 67.928`,stroke:e,"stroke-opacity":`0.35`}),R(`rect`,{x:`9.26099`,y:`10`,width:`63.7129`,height:`63.7129`,rx:`31.8565`,stroke:e,"stroke-opacity":`0.43`,"stroke-width":`1.5`}),R(`g`,{"clip-path":`url(#clip0_7006_42127)`,children:[R(`circle`,{cx:`62.4996`,cy:`18.2032`,r:`15.0195`,transform:`rotate(6.27205 62.4996 18.2032)`,fill:t}),R(`path`,{d:`M60.7142 12.1753C62.057 10.0714 65.2294 10.4202 66.0833 12.7654L66.6158 14.2308L68.1251 14.6217C70.5415 15.2484 71.1908 18.3742 69.2237 19.911L67.9944 20.8704L68.0896 22.4262C68.2403 24.9178 65.4681 26.5011 63.3987 25.1056L62.1065 24.2326L60.6555 24.8041C58.3322 25.7172 55.9702 23.5694 56.6585 21.1698L57.0884 19.6717L56.0977 18.4684C54.5112 16.541 55.8231 13.6307 58.318 13.5438L59.8751 13.4899L60.7142 12.1753Z`,fill:n,stroke:t,"stroke-width":`3.27381`}),R(`path`,{d:`M63.925 5.23719C71.0867 6.02431 76.2545 12.4676 75.4676 19.6293C74.6805 26.7911 68.2364 31.959 61.0746 31.1718C53.9129 30.3845 48.7459 23.9406 49.533 16.7789C50.3203 9.61739 56.7634 4.45029 63.925 5.23719ZM63.6957 7.32326C57.6866 6.66302 52.2797 10.9991 51.6191 17.0082C50.9586 23.0174 55.2946 28.4251 61.3038 29.0858C67.3132 29.7462 72.7211 25.4094 73.3816 19.4C74.0418 13.3908 69.705 7.98372 63.6957 7.32326Z`,fill:n,stroke:t,"stroke-width":`0.3`,"stroke-linecap":`round`,"stroke-linejoin":`round`})]}),R(`ellipse`,{cx:`41`,cy:`85`,rx:`15`,ry:`3`,fill:e,"fill-opacity":`0.35`}),R(`defs`,{children:R(`clipPath`,{id:`clip0_7006_42127`,children:R(`rect`,{width:`33`,height:`33`,fill:`white`,transform:`translate(47.9012) rotate(6.27205)`})})})]})})}function NS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M15 3h6v6`}),R(`path`,{d:`m21 3-7 7`}),R(`path`,{d:`m3 21 7-7`}),R(`path`,{d:`M9 21H3v-6`})]})}function PS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`m14 10 7-7`}),R(`path`,{d:`M20 10h-6V4`}),R(`path`,{d:`m3 21 7-7`}),R(`path`,{d:`M4 14h6v6`})]})}function FS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})})}function IS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M18 6 6 18`}),R(`path`,{d:`m6 6 12 12`})]})}function LS(e){return R(Pb().value?RS:zS,{...e})}function RS({visible:e,className:t,grow:n,dep:r,...i}){return e?R(`div`,{className:Bb(n&&`grow`,t),...i}):null}function zS({visible:e,children:t,className:n,grow:r,dep:i,...a}){let[o,s]=hf(e),[c,l]=hf(null),[u,d]=hf(null),f=F(t);e&&(f.current=t);let p=I(t=>{l(t),t&&!e&&(t.style.width=`0px`,t.style.height=`0px`)},[]);_f(()=>{u&&(u.style.transition=`none`,u.style.opacity=`0`,u.offsetWidth,u.style.transition=``,u.style.opacity=``)},[i]),bf(()=>{c&&(c.style.width=`${c.offsetWidth}px`,c.style.height=`${c.offsetHeight}px`)},[c,e,i]),_f(()=>{if(!c||!u)return;e&&s(!0);let t=e?u.offsetWidth:0,n=e?u.offsetHeight:0;c.style.width=!e||c.offsetWidth!==t?`${t}px`:``,c.style.height=!e||c.offsetHeight!==n?`${n}px`:``},[c,u,e,i]);let{transitioning:m,handlers:h}=Fb({onEnd:()=>{e?(c.style.width=``,c.style.height=``):s(!1)}});return R(`div`,{ref:p,className:Bb(`relative inline-flex shrink-0 justify-center items-center transition-[opacity,width,height,transform,flex-grow] duration-200 min-w-0`,!e&&`opacity-0 scale-75`,e&&r&&`grow`,e&&o&&!m.value&&`z-1`),...h,children:R(`div`,{ref:d,className:Bb(`shrink-0 min-h-min min-w-min transition-opacity duration-200`,r&&`grow`,n),...a,children:(e||o)&&f.current})})}var BS={primary:`text-accent-primary border border-accent bg-accent hover:border-accent-hover hover:bg-accent-hover active:border-accent-active active:bg-accent-active`,secondary:`text-base-primary border border-base-border bg-base hover:bg-base-hover active:bg-base-active`,ghost:`text-base-primary border border-base bg-base hover:bg-base-hover hover:border-base-hover active:bg-base-active active:border-base-active`,"md-button":`text-base-primary border border-base-border bg-base hover:bg-base-hover active:bg-base-active text-sm h-6`},VS=Uf(function({variant:e=`secondary`,children:t,icon:n,className:r,iconClassName:i,truncate:a=!0,...o},s){let c=!!n&&!t;return R(`button`,{ref:s,className:sS(`h-9 flex px-2.5 text-sm items-center transition-[colors,opacity] justify-center rounded-button duration-200 focus-ring overflow-hidden select-none`,`disabled:opacity-50 disabled:pointer-events-none`,BS[e],c&&`min-w-9`,r),type:`button`,...o,children:[n&&R(gS,{className:sS(`transition-[margin] duration-200`,c&&`-mx-0.5`,e===`md-button`&&`text-sm`,i),name:n}),R(LS,{visible:!!t,dep:t,children:R(`span`,{className:sS(`block whitespace-nowrap max-w-64 truncate`,e===`md-button`?`pl-1.5`:`px-1.5`),children:t})})]})}),HS=(e,t)=>Array.from({length:t-e+1},(t,n)=>n+e),US=({isFilled:e,iconName:t})=>R(`span`,{className:Bb(`w-8 h-8 grid place-content-center`,e?`text-base-primary`:`text-base-border`),children:R(gS,{name:t,size:`lg`})}),WS=({value:e,rating:t,hoverRating:n,onClick:r,onHover:i,onKeyDown:a,iconName:o})=>{let s=t.value!==null&&e<=t.value,c=n.value!==null&&e<=n.value,l=I(t=>{t.stopPropagation(),r(e)},[r,e]),u=I(t=>{a(t,e)},[a,e]);return R(`button`,{type:`button`,role:`radio`,"aria-checked":s,"aria-label":e.toString(),onMouseEnter:()=>i(e),onClick:l,onKeyDown:u,className:Bb(`w-8 h-8 grid place-content-center rounded-full focus-ring transition-colors cursor-pointer`,s||c?`text-base-primary`:`text-base-border`),children:R(gS,{name:o,size:`lg`})})},GS=({onRate:e,min:t=1,max:n=5,ariaLabel:r,icon:i=`star`})=>{let a=mm(null),o=mm(null),s=HS(t,n),c=I(e=>{o.value=e},[o]),l=I(()=>{o.value=null},[o]),u=I(t=>{a.value=t,e(t)},[a,e]),d=I((r,i)=>{r.key===`Enter`||r.key===` `?(r.preventDefault(),a.value=i,e(i)):r.key===`ArrowLeft`||r.key===`ArrowDown`?(r.preventDefault(),i-1>=t&&(r.currentTarget?.previousElementSibling)?.focus()):(r.key===`ArrowRight`||r.key===`ArrowUp`)&&(r.preventDefault(),i+1<=n&&(r.currentTarget?.nextElementSibling)?.focus())},[a,e,t,n]);return R(`div`,{role:`radiogroup`,"aria-label":r,className:`flex no-wrap cursor-pointer`,onMouseLeave:l,children:s.map(e=>R(WS,{value:e,rating:a,hoverRating:o,onClick:u,onHover:c,onKeyDown:d,iconName:i},e))})};function KS({rating:e,min:t=1,max:n=5,icon:r=`star`}){let i=HS(t,n);return R(`div`,{className:`flex no-wrap`,role:`img`,"aria-label":`Rating: ${e} out of ${n}`,children:i.map(t=>R(US,{isFilled:e>=t,iconName:r},t))})}function qS({icon:e,onRate:t}){let n=ab();return R(`div`,{className:`flex flex-col items-center`,children:[R(`div`,{className:`text-sm text-base-primary font-medium`,children:n.initiate_feedback}),R(`div`,{className:`py-4`,children:R(GS,{onRate:t,ariaLabel:n.initiate_feedback,icon:e})})]})}function JS({icon:e,rating:t,showFollowUpButton:n,onFollowUpClick:r}){let i=ab();return R(`div`,{className:`flex flex-col items-center gap-3 mb-4`,children:[R(`div`,{className:`text-sm text-base-primary font-medium`,children:i.thanks_for_feedback}),R(KS,{rating:t,min:1,max:5,icon:e}),n&&R(VS,{variant:`secondary`,onClick:r,children:i.request_follow_up_feedback})]})}function YS({icon:e=`star`}){let{currentContent:t}=pS(),{rating:n,feedbackProgress:r,submitRating:i}=uS(),a=r.value!==`initial`&&n.value!==null,o=I(e=>{i(e),t.value=`feedback`},[i]),s=I(()=>{t.value=`feedback`},[]);return a?R(JS,{icon:e,rating:n.value??0,showFollowUpButton:r.value!==`submitted-follow-up`,onFollowUpClick:s}):R(qS,{icon:e,onRate:o})}var XS=/\[[\w\s]+\](?!\()\s*/g;function ZS(e){return e.replace(XS,``).trim()}var QS=typeof self==`object`?self:globalThis,$S=(e,t)=>{switch(e){case`Function`:case`SharedWorker`:case`Worker`:case`eval`:case`setInterval`:case`setTimeout`:throw TypeError(`unable to deserialize `+e)}return new QS[e](t)},eC=(e,t)=>{let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o;return n($S(e,t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}return n($S(a,o),i)};return r},tC=e=>eC(new Map,e)(0),nC=``,{toString:rC}={},{keys:iC}=Object,aC=e=>{let t=typeof e;if(t!==`object`||!e)return[0,t];let n=rC.call(e).slice(8,-1);switch(n){case`Array`:return[1,nC];case`Object`:return[2,nC];case`Date`:return[3,nC];case`RegExp`:return[4,nC];case`Map`:return[5,nC];case`Set`:return[6,nC];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]},oC=([e,t])=>e===0&&(t===`function`||t===`symbol`),sC=(e,t,n,r)=>{let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=aC(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize `+s);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of iC(r))(e||!oC(aC(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(oC(aC(n))||oC(aC(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!oC(aC(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a},cC=(e,{json:t,lossy:n}={})=>{let r=[];return sC(!(t||n),!!t,new Map,r)(e),r},lC=typeof structuredClone==`function`?(e,t)=>t&&(`json`in t||`lossy`in t)?tC(cC(e,t)):structuredClone(e):(e,t)=>tC(cC(e,t)),uC=fC(`end`),dC=fC(`start`);function fC(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function pC(e){let t=dC(e),n=uC(e);if(t&&n)return{start:t,end:n}}var mC=[`ariaDescribedBy`,`ariaLabel`,`ariaLabelledBy`],hC={ancestors:{tbody:[`table`],td:[`table`],th:[`table`],thead:[`table`],tfoot:[`table`],tr:[`table`]},attributes:{a:[...mC,`dataFootnoteBackref`,`dataFootnoteRef`,[`className`,`data-footnote-backref`],`href`],blockquote:[`cite`],code:[[`className`,/^language-./]],del:[`cite`],div:[`itemScope`,`itemType`],dl:[...mC],h2:[[`className`,`sr-only`]],img:[...mC,`longDesc`,`src`],input:[[`disabled`,!0],[`type`,`checkbox`]],ins:[`cite`],li:[[`className`,`task-list-item`]],ol:[...mC,[`className`,`contains-task-list`]],q:[`cite`],section:[`dataFootnotes`,[`className`,`footnotes`]],source:[`srcSet`],summary:[...mC],table:[...mC],ul:[...mC,[`className`,`contains-task-list`]],"*":`abbr.accept.acceptCharset.accessKey.action.align.alt.axis.border.cellPadding.cellSpacing.char.charOff.charSet.checked.clear.colSpan.color.cols.compact.coords.dateTime.dir.encType.frame.hSpace.headers.height.hrefLang.htmlFor.id.isMap.itemProp.label.lang.maxLength.media.method.multiple.name.noHref.noShade.noWrap.open.prompt.readOnly.rev.rowSpan.rows.rules.scope.selected.shape.size.span.start.summary.tabIndex.title.useMap.vAlign.value.width`.split(`.`)},clobber:[`ariaDescribedBy`,`ariaLabelledBy`,`id`,`name`],clobberPrefix:`user-content-`,protocols:{cite:[`http`,`https`],href:[`http`,`https`,`irc`,`ircs`,`mailto`,`xmpp`],longDesc:[`http`,`https`],src:[`http`,`https`]},required:{input:{disabled:!0,type:`checkbox`}},strip:[`script`],tagNames:`a.b.blockquote.br.code.dd.del.details.div.dl.dt.em.h1.h2.h3.h4.h5.h6.hr.i.img.input.ins.kbd.li.ol.p.picture.pre.q.rp.rt.ruby.s.samp.section.source.span.strike.strong.sub.summary.sup.table.tbody.td.tfoot.th.thead.tr.tt.ul.var`.split(`.`)},gC={}.hasOwnProperty;function _C(e,t){let n={type:`root`,children:[]},r=vC({schema:t?{...hC,...t}:hC,stack:[]},e);return r&&(Array.isArray(r)?r.length===1?n=r[0]:n.children=r:n=r),n}function vC(e,t){if(t&&typeof t==`object`){let n=t;switch(typeof n.type==`string`?n.type:``){case`comment`:return yC(e,n);case`doctype`:return bC(e,n);case`element`:return xC(e,n);case`root`:return SC(e,n);case`text`:return CC(e,n);default:}}}function yC(e,t){if(e.schema.allowComments){let e=typeof t.value==`string`?t.value:``,n=e.indexOf(`-->`),r={type:`comment`,value:n<0?e:e.slice(0,n)};return AC(r,t),r}}function bC(e,t){if(e.schema.allowDoctypes){let e={type:`doctype`};return AC(e,t),e}}function xC(e,t){let n=typeof t.tagName==`string`?t.tagName:``;e.stack.push(n);let r=wC(e,t.children),i=TC(e,t.properties);e.stack.pop();let a=!1;if(n&&n!==`*`&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&gC.call(e.schema.ancestors,n))){let t=e.schema.ancestors[n],r=-1;for(a=!1;++r<t.length;)e.stack.includes(t[r])&&(a=!0)}if(!a)return e.schema.strip&&!e.schema.strip.includes(n)?r:void 0;let o={type:`element`,tagName:n,properties:i,children:r};return AC(o,t),o}function SC(e,t){let n={type:`root`,children:wC(e,t.children)};return AC(n,t),n}function CC(e,t){let n={type:`text`,value:typeof t.value==`string`?t.value:``};return AC(n,t),n}function wC(e,t){let n=[];if(Array.isArray(t)){let r=t,i=-1;for(;++i<r.length;){let t=vC(e,r[i]);t&&(Array.isArray(t)?n.push(...t):n.push(t))}}return n}function TC(e,t){let n=e.stack[e.stack.length-1],r=e.schema.attributes,i=e.schema.required,a=r&&gC.call(r,n)?r[n]:void 0,o=r&&gC.call(r,`*`)?r[`*`]:void 0,s=t&&typeof t==`object`?t:{},c={},l;for(l in s)if(gC.call(s,l)){let t=s[l],n=EC(e,jC(a,l),l,t);n??=EC(e,jC(o,l),l,t),n!=null&&(c[l]=n)}if(i&&gC.call(i,n)){let e=i[n];for(l in e)gC.call(e,l)&&!gC.call(c,l)&&(c[l]=e[l])}return c}function EC(e,t,n,r){return t?Array.isArray(r)?DC(e,t,n,r):OC(e,t,n,r):void 0}function DC(e,t,n,r){let i=-1,a=[];for(;++i<r.length;){let o=OC(e,t,n,r[i]);(typeof o==`number`||typeof o==`string`)&&a.push(o)}return a}function OC(e,t,n,r){if(!(typeof r!=`boolean`&&typeof r!=`number`&&typeof r!=`string`)&&kC(e,n,r)){if(typeof t==`object`&&t.length>1){let e=!1,n=0;for(;++n<t.length;){let i=t[n];if(i&&typeof i==`object`&&`flags`in i){if(i.test(String(r))){e=!0;break}}else if(i===r){e=!0;break}}if(!e)return}return e.schema.clobber&&e.schema.clobberPrefix&&e.schema.clobber.includes(n)?e.schema.clobberPrefix+r:r}}function kC(e,t,n){let r=e.schema.protocols&&gC.call(e.schema.protocols,t)?e.schema.protocols[t]:void 0;if(!r||r.length===0)return!0;let i=String(n),a=i.indexOf(`:`),o=i.indexOf(`?`),s=i.indexOf(`#`),c=i.indexOf(`/`);if(a<0||c>-1&&a>c||o>-1&&a>o||s>-1&&a>s)return!0;let l=-1;for(;++l<r.length;){let e=r[l];if(a===e.length&&i.slice(0,e.length)===e)return!0}return!1}function AC(e,t){let n=pC(t);t.data&&(e.data=lC(t.data)),n&&(e.position=n)}function jC(e,t){let n,r=-1;if(e)for(;++r<e.length;){let i=e[r],a=typeof i==`string`?i:i[0];if(a===t)return i;a===`data*`&&(n=i)}if(t.length>4&&t.slice(0,4).toLowerCase()===`data`)return n}function MC(e){return function(t){return _C(t,e)}}var NC=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};NC.prototype.normal={},NC.prototype.property={},NC.prototype.space=void 0;function PC(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new NC(n,r,t)}function FC(e){return e.toLowerCase()}var IC=class{constructor(e,t){this.attribute=t,this.property=e}};IC.prototype.attribute=``,IC.prototype.booleanish=!1,IC.prototype.boolean=!1,IC.prototype.commaOrSpaceSeparated=!1,IC.prototype.commaSeparated=!1,IC.prototype.defined=!1,IC.prototype.mustUseProperty=!1,IC.prototype.number=!1,IC.prototype.overloadedBoolean=!1,IC.prototype.property=``,IC.prototype.spaceSeparated=!1,IC.prototype.space=void 0;var LC=Bm({boolean:()=>zC,booleanish:()=>BC,commaOrSpaceSeparated:()=>WC,commaSeparated:()=>UC,number:()=>V,overloadedBoolean:()=>VC,spaceSeparated:()=>HC}),RC=0,zC=GC(),BC=GC(),VC=GC(),V=GC(),HC=GC(),UC=GC(),WC=GC();function GC(){return 2**++RC}var KC=Object.keys(LC),qC=class extends IC{constructor(e,t,n,r){let i=-1;if(super(e,t),JC(this,`space`,r),typeof n==`number`)for(;++i<KC.length;){let e=KC[i];JC(this,KC[i],(n&LC[e])===LC[e])}}};qC.prototype.defined=!0;function JC(e,t,n){n&&(e[t]=n)}function YC(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new qC(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[FC(r)]=r,n[FC(a.attribute)]=r}return new NC(t,n,e.space)}var XC=YC({properties:{ariaActiveDescendant:null,ariaAtomic:BC,ariaAutoComplete:null,ariaBusy:BC,ariaChecked:BC,ariaColCount:V,ariaColIndex:V,ariaColSpan:V,ariaControls:HC,ariaCurrent:null,ariaDescribedBy:HC,ariaDetails:null,ariaDisabled:BC,ariaDropEffect:HC,ariaErrorMessage:null,ariaExpanded:BC,ariaFlowTo:HC,ariaGrabbed:BC,ariaHasPopup:null,ariaHidden:BC,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:HC,ariaLevel:V,ariaLive:null,ariaModal:BC,ariaMultiLine:BC,ariaMultiSelectable:BC,ariaOrientation:null,ariaOwns:HC,ariaPlaceholder:null,ariaPosInSet:V,ariaPressed:BC,ariaReadOnly:BC,ariaRelevant:null,ariaRequired:BC,ariaRoleDescription:HC,ariaRowCount:V,ariaRowIndex:V,ariaRowSpan:V,ariaSelected:BC,ariaSetSize:V,ariaSort:null,ariaValueMax:V,ariaValueMin:V,ariaValueNow:V,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function ZC(e,t){return t in e?e[t]:t}function QC(e,t){return ZC(e,t.toLowerCase())}var $C=YC({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:UC,acceptCharset:HC,accessKey:HC,action:null,allow:null,allowFullScreen:zC,allowPaymentRequest:zC,allowUserMedia:zC,alt:null,as:null,async:zC,autoCapitalize:null,autoComplete:HC,autoFocus:zC,autoPlay:zC,blocking:HC,capture:null,charSet:null,checked:zC,cite:null,className:HC,cols:V,colSpan:null,content:null,contentEditable:BC,controls:zC,controlsList:HC,coords:V|UC,crossOrigin:null,data:null,dateTime:null,decoding:null,default:zC,defer:zC,dir:null,dirName:null,disabled:zC,download:VC,draggable:BC,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:zC,formTarget:null,headers:HC,height:V,hidden:VC,high:V,href:null,hrefLang:null,htmlFor:HC,httpEquiv:HC,id:null,imageSizes:null,imageSrcSet:null,inert:zC,inputMode:null,integrity:null,is:null,isMap:zC,itemId:null,itemProp:HC,itemRef:HC,itemScope:zC,itemType:HC,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:zC,low:V,manifest:null,max:null,maxLength:V,media:null,method:null,min:null,minLength:V,multiple:zC,muted:zC,name:null,nonce:null,noModule:zC,noValidate:zC,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:zC,optimum:V,pattern:null,ping:HC,placeholder:null,playsInline:zC,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:zC,referrerPolicy:null,rel:HC,required:zC,reversed:zC,rows:V,rowSpan:V,sandbox:HC,scope:null,scoped:zC,seamless:zC,selected:zC,shadowRootClonable:zC,shadowRootDelegatesFocus:zC,shadowRootMode:null,shape:null,size:V,sizes:null,slot:null,span:V,spellCheck:BC,src:null,srcDoc:null,srcLang:null,srcSet:null,start:V,step:null,style:null,tabIndex:V,target:null,title:null,translate:null,type:null,typeMustMatch:zC,useMap:null,value:BC,width:V,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:HC,axis:null,background:null,bgColor:null,border:V,borderColor:null,bottomMargin:V,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:zC,declare:zC,event:null,face:null,frame:null,frameBorder:null,hSpace:V,leftMargin:V,link:null,longDesc:null,lowSrc:null,marginHeight:V,marginWidth:V,noResize:zC,noHref:zC,noShade:zC,noWrap:zC,object:null,profile:null,prompt:null,rev:null,rightMargin:V,rules:null,scheme:null,scrolling:BC,standby:null,summary:null,text:null,topMargin:V,valueType:null,version:null,vAlign:null,vLink:null,vSpace:V,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:zC,disableRemotePlayback:zC,prefix:null,property:null,results:V,security:null,unselectable:null},space:`html`,transform:QC}),ew=YC({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,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`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,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`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,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`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:WC,accentHeight:V,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:V,amplitude:V,arabicForm:null,ascent:V,attributeName:null,attributeType:null,azimuth:V,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:V,by:null,calcMode:null,capHeight:V,className:HC,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:V,diffuseConstant:V,direction:null,display:null,dur:null,divisor:V,dominantBaseline:null,download:zC,dx:null,dy:null,edgeMode:null,editable:null,elevation:V,enableBackground:null,end:null,event:null,exponent:V,externalResourcesRequired:null,fill:null,fillOpacity:V,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:UC,g2:UC,glyphName:UC,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:V,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:V,horizOriginX:V,horizOriginY:V,id:null,ideographic:V,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:V,k:V,k1:V,k2:V,k3:V,k4:V,kernelMatrix:WC,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:V,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:V,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:V,overlineThickness:V,paintOrder:null,panose1:null,path:null,pathLength:V,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:HC,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:V,pointsAtY:V,pointsAtZ:V,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:WC,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:WC,rev:WC,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:WC,requiredFeatures:WC,requiredFonts:WC,requiredFormats:WC,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:V,specularExponent:V,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:V,strikethroughThickness:V,string:null,stroke:null,strokeDashArray:WC,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:V,strokeOpacity:V,strokeWidth:null,style:null,surfaceScale:V,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:WC,tabIndex:V,tableValues:null,target:null,targetX:V,targetY:V,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:WC,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:V,underlineThickness:V,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:V,values:null,vAlphabetic:V,vMathematical:V,vectorEffect:null,vHanging:V,vIdeographic:V,version:null,vertAdvY:V,vertOriginX:V,vertOriginY:V,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:V,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:ZC}),tw=YC({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),nw=YC({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:QC}),rw=YC({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),iw={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},aw=/[A-Z]/g,ow=/-[a-z]/g,sw=/^data[-\w.:]+$/i;function cw(e,t){let n=FC(t),r=t,i=IC;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&sw.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(ow,uw);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!ow.test(e)){let n=e.replace(aw,lw);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=qC}return new i(r,t)}function lw(e){return`-`+e.toLowerCase()}function uw(e){return e.charAt(1).toUpperCase()}var dw=PC([XC,$C,tw,nw,rw],`html`),fw=PC([XC,ew,tw,nw,rw],`svg`);function pw(e){let t=[],n=String(e||``),r=n.indexOf(`,`),i=0,a=!1;for(;!a;){r===-1&&(r=n.length,a=!0);let e=n.slice(i,r).trim();(e||!a)&&t.push(e),i=r+1,r=n.indexOf(`,`,i)}return t}function mw(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var hw=/[#.]/g;function gw(e,t){let n=e||``,r={},i=0,a,o;for(;i<n.length;){hw.lastIndex=i;let e=hw.exec(n),t=n.slice(i,e?e.index:n.length);t&&(a?a===`#`?r.id=t:Array.isArray(r.className)?r.className.push(t):r.className=[t]:o=t,i+=t.length),e&&(a=e[0],i++)}return{type:`element`,tagName:o||t||`div`,properties:r,children:[]}}function _w(e){let t=String(e||``).trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function vw(e){return e.join(` `).trim()}function yw(e,t,n){let r=n?Tw(n):void 0;function i(n,i,...a){let o;if(n==null){o={type:`root`,children:[]};let e=i;a.unshift(e)}else{o=gw(n,t);let s=o.tagName.toLowerCase(),c=r?r.get(s):void 0;if(o.tagName=c||s,bw(i))a.unshift(i);else for(let[t,n]of Object.entries(i))xw(e,o.properties,t,n)}for(let e of a)Sw(o.children,e);return o.type===`element`&&o.tagName===`template`&&(o.content={type:`root`,children:o.children},o.children=[]),o}return i}function bw(e){if(typeof e!=`object`||!e||Array.isArray(e))return!0;if(typeof e.type!=`string`)return!1;let t=e,n=Object.keys(e);for(let e of n){let n=t[e];if(n&&typeof n==`object`){if(!Array.isArray(n))return!0;let e=n;for(let t of e)if(typeof t!=`number`&&typeof t!=`string`)return!0}}return!!(`children`in e&&Array.isArray(e.children))}function xw(e,t,n,r){let i=cw(e,n),a;if(r!=null){if(typeof r==`number`){if(Number.isNaN(r))return;a=r}else a=typeof r==`boolean`?r:typeof r==`string`?i.spaceSeparated?_w(r):i.commaSeparated?pw(r):i.commaOrSpaceSeparated?_w(pw(r).join(` `)):Cw(i,i.property,r):Array.isArray(r)?[...r]:i.property===`style`?ww(r):String(r);if(Array.isArray(a)){let e=[];for(let t of a)e.push(Cw(i,i.property,t));a=e}i.property===`className`&&Array.isArray(t.className)&&(a=t.className.concat(a)),t[i.property]=a}}function Sw(e,t){if(t!=null)if(typeof t==`number`||typeof t==`string`)e.push({type:`text`,value:String(t)});else if(Array.isArray(t))for(let n of t)Sw(e,n);else if(typeof t==`object`&&`type`in t)t.type===`root`?Sw(e,t.children):e.push(t);else throw Error("Expected node, nodes, or string, got `"+t+"`")}function Cw(e,t,n){if(typeof n==`string`){if(e.number&&n&&!Number.isNaN(Number(n)))return Number(n);if((e.boolean||e.overloadedBoolean)&&(n===``||FC(n)===FC(t)))return!0}return n}function ww(e){let t=[];for(let[n,r]of Object.entries(e))t.push([n,r].join(`: `));return t.join(`; `)}function Tw(e){let t=new Map;for(let n of e)t.set(n.toLowerCase(),n);return t}var Ew=`altGlyph.altGlyphDef.altGlyphItem.animateColor.animateMotion.animateTransform.clipPath.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feDropShadow.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.foreignObject.glyphRef.linearGradient.radialGradient.solidColor.textArea.textPath`.split(`.`),Dw=yw(dw,`div`),Ow=yw(fw,`g`,Ew);function kw(e){let t=String(e),n=[];return{toOffset:i,toPoint:r};function r(e){if(typeof e==`number`&&e>-1&&e<=t.length){let r=0;for(;;){let i=n[r];if(i===void 0){let e=Aw(t,n[r-1]);i=e===-1?t.length+1:e+1,n[r]=i}if(i>e)return{line:r+1,column:e-(r>0?n[r-1]:0)+1,offset:e};r++}}}function i(e){if(e&&typeof e.line==`number`&&typeof e.column==`number`&&!Number.isNaN(e.line)&&!Number.isNaN(e.column)){for(;n.length<e.line;){let e=n[n.length-1],r=Aw(t,e),i=r===-1?t.length+1:r+1;if(e===i)break;n.push(i)}let r=(e.line>1?n[e.line-2]:0)+e.column-1;if(r<n[e.line-1])return r}}}function Aw(e,t){let n=e.indexOf(`\r`,t),r=e.indexOf(`
|
|
275
|
+
\`\`\``),o}}}function gy(){if(!(window.__fpjs_d_m||Math.random()>=.001))try{let e=new XMLHttpRequest;e.open(`get`,`https://m1.openfpcdn.io/fingerprintjs/v${$h}/npm-monitoring`,!0),e.send()}catch(e){console.error(e)}}async function _y(e={}){let{delayFallback:t,debug:n,monitoring:r=!0}=e;return r&&gy(),await my(t),hy(ay({cache:{},debug:n}),n)}var vy={load:_y,hashComponents:fy,componentsToDebugString:dy},yy=Vd(null);function by({children:e}){let t=Hy(),n=mm(!1),r=mm(!1),i=bf(()=>{let e=Qp(()=>!t.value.terms_html||r.value),i=[];return{termsShown:n,termsAccepted:e,dismissTerms:()=>{n.value=!1,i.forEach(e=>e.reject()),i=[]},acceptTerms:()=>{r.value=!0,n.value=!1;let e=t.peek().terms_key;e&&localStorage.setItem(e,`true`),i.forEach(e=>e.resolve()),i=[]},requestTerms:async()=>{e.peek()||(n.value=!0,await new Promise((e,t)=>{i.push({resolve:e,reject:t})}))}}},[n,r,t]);return xm(()=>{let e=t.value.terms_key;r.value=e?!!localStorage.getItem(e):!1}),R(yy.Provider,{value:i,children:e})}function xy(){return Mh(yy)}var Sy=Vd(null);function Cy({children:e}){let t=mm(null),n=I(e=>{t.value=Ty(e)},[t]);return R(Sy.Provider,{value:t,children:[R(`template`,{ref:n}),e]})}function wy(){return Mh(Sy)}function Ty(e){if(!e)return null;let t=e?.getRootNode();return t instanceof ShadowRoot&&t.host instanceof HTMLElement?t.host:e.parentElement}var Ey=Vd(null);function Dy(e,t){if(t.role!==`user`||t.eventId==null)return[...e,t];let n=e.findIndex(e=>e.type===`message`&&e.role===`agent`&&e.eventId===t.eventId&&e.conversationIndex===t.conversationIndex);return n===-1?[...e,t]:[...e.slice(0,n),t,...e.slice(n)]}function Oy({children:e}){let t=Ay();return xm(()=>{if(t.conversationTextOnly.value===!0){t.transcript.value;let e=setTimeout(()=>{t.endSession()},600*1e3);return()=>{clearTimeout(e)}}}),R(Ey.Provider,{value:t,children:e})}function ky(){return Mh(Ey)}function Ay(){let e=F(null),t=F(null),n=F(!1),r=F(null),i=F(!1),a=wy(),o=Fy(),s=Ry(),c=xy(),l=Qh();return _f(()=>()=>{e.current?.endSession()},[]),bf(()=>{let u=qp(`disconnected`),d=Qp(()=>u.value===`disconnected`),f=qp(`listening`),p=Qp(()=>f.value===`speaking`),m=qp(null),h=qp(null),g=qp(!1),_=qp([]),v=qp(0),y=qp(null);return{status:u,isSpeaking:p,mode:f,isDisconnected:d,lastId:h,error:m,canSendFeedback:g,conversationIndex:v,conversationTextOnly:y,transcript:_,startSession:async(d,p)=>{if(await c.requestTerms(),e.current?.isOpen())return e.current.getId();if(t.current)return(await t.current).getId();let b=structuredClone(l.peek());b.userId||=await jy(),p&&o.value.supports_text_only&&(b.textOnly=!0,o.value.text_only||(b.overrides??={},b.overrides.conversation??={},b.overrides.conversation.textOnly=!0));try{b=My(a.value??d,b)}catch(e){console.error(`[ConversationalAI] Error triggering call event:`,e)}y.value=b.textOnly??!1,_.value=p?[{type:`message`,role:`user`,message:p,isText:!0,conversationIndex:v.peek()}]:[];try{if(t.current=Mm.startSession({...b,onModeChange:e=>{f.value=e.mode},onStatusChange:e=>{u.value=e.status},onCanSendFeedbackChange:e=>{g.value=e.canSendFeedback},onMessage:({role:e,message:t,event_id:a})=>{if(s.peek()&&y.peek()===!0&&e===`agent`&&!n.current){n.current=!0;return}else e===`agent`&&(n.current=!0);if(e===`agent`&&i.current){let e=r.current;if(e!==null){let n=[..._.peek()];n[e]={type:`message`,role:`agent`,message:t,isText:!0,conversationIndex:v.peek(),eventId:a},_.value=n}i.current=!1;return}_.value=Dy(_.peek(),{type:`message`,role:e,message:t,isText:!1,conversationIndex:v.peek(),eventId:a})},onAgentChatResponsePart:({text:e,type:t,event_id:a})=>{if(y.peek()===!0&&!(s.peek()&&!n.current))if(t===`start`){i.current=!0;let e=_.peek();r.current=e.length,_.value=[...e,{type:`message`,role:`agent`,message:``,isText:!0,conversationIndex:v.peek(),eventId:a}]}else if(t===`delta`){let t=r.current;if(t!==null&&e){let n=_.peek(),r=n[t];if(r.type===`message`){let i=[...n];i[t]={...r,message:r.message+e},_.value=i}}}else t===`stop`&&(r.current=null)},onAgentToolRequest:({tool_call_id:e,tool_name:t,event_id:n})=>{_.value=[..._.peek(),{type:`agent_tool_request`,toolName:t,toolCallId:e,eventId:n,conversationIndex:v.peek()}]},onAgentToolResponse:({tool_call_id:e,is_error:t,event_id:n})=>{_.value=[..._.peek(),{type:`agent_tool_response`,toolCallId:e,eventId:n,isError:t,conversationIndex:v.peek()}]},onDisconnect:e=>{n.current=!1,y.value=null,r.current=null,i.current=!1,_.value=[..._.peek(),e.reason===`error`?{type:`error`,message:e.message,conversationIndex:v.peek()}:{type:`disconnection`,role:e.reason===`user`?`user`:`agent`,conversationIndex:v.peek()}],v.value++,e.reason===`error`&&(m.value=e.message,console.error(`[ConversationalAI] Disconnected due to an error:`,e.message))}}),e.current=await t.current,p){let t=e.current;setTimeout(()=>t.sendUserMessage(p),100)}let a=e.current.getId();return h.value=a,m.value=null,a}catch(e){let t=`Could not start a conversation.`;e instanceof CloseEvent?t=e.reason||t:e instanceof Error&&(t=e.message||t),m.value=t,_.value=[..._.value,{type:`error`,message:t,conversationIndex:v.peek()}]}finally{t.current=null}},endSession:async()=>{let t=e.current;e.current=null,await t?.endSession()},getInputVolume:()=>e.current?.getInputVolume()??0,getOutputVolume:()=>e.current?.getOutputVolume()??0,setVolume:t=>{e.current?.setVolume({volume:t})},setMicMuted:t=>{e.current?.setMicMuted(t)},sendFeedback:t=>{e.current?.sendFeedback(t)},sendUserMessage:t=>{e.current?.sendUserMessage(t),_.value=[..._.value,{type:`message`,role:`user`,message:t,isText:!0,conversationIndex:v.peek()}]},sendMultimodalMessage:t=>{let n=t.text?.trim()??``,{fileId:r,...i}=t.file;e.current?.sendMultimodalMessage({text:n||void 0,fileId:r}),_.value=[..._.value,{type:`message`,role:`user`,message:n,isText:!0,conversationIndex:v.peek(),fileInput:i}]},sendUserActivity:()=>{e.current?.sendUserActivity()},sendContextualUpdate:t=>{e.current?.sendContextualUpdate(t)},addModeToggleEntry:t=>{e.current?.isOpen()&&(_.value=[..._.value,{type:`mode_toggle`,mode:t,conversationIndex:v.peek()}])}}},[l])}async function jy(){let e=`elevenlabs_convai_user_id`,t=localStorage.getItem(e);if(!t){try{t=(await(await vy.load()).get()).visitorId}catch(e){console.warn(`[ConversationalAI] FingerprintJS failed, falling back to random UUID:`,e),t=crypto.randomUUID()}localStorage.setItem(e,t)}return t}function My(e,t){try{let n=new CustomEvent(`elevenlabs-convai:call`,{bubbles:!0,composed:!0,detail:{config:t}});return e.dispatchEvent(n),n.detail.config}catch(e){return console.error(`[ConversationalAI] Could not trigger call event:`,e),t}}var Ny=Vd(null);function Py({children:e}){let{serverUrl:t}=zh(),n=Ih(`agent-id`),r=Ih(`override-config`),i=Ih(`signed-url`),a=mm(null);xm(()=>{if(r.value)try{let e=JSON.parse(r.value);if(e){a.value=e;return}}catch(e){console.error(`[ConversationalAI] Cannot parse override-config: ${e?.message}`)}let e=n.value,o;if(i.value){let t=new URL(i.value).searchParams;e=t.get(`agent_id`)??n.value,o=t.get(`conversation_signature`)??void 0}if(!e){a.value=null;return}let s=new AbortController;return Jy(e,t.value,s.signal,o).then(e=>{s.signal.aborted||(a.value=e)}).catch(e=>{console.error(`[ConversationalAI] Cannot fetch config for agent ${n.value}: ${e?.message}`),s.signal.aborted||(a.value=null)}),()=>{s.abort()}});let o=Ih(`variant`),s=Ih(`placement`),c=Ih(`terms-key`),l=Ih(`mic-muting`),u=Ih(`transcript`),d=Ih(`text-input`),f=Ih(`default-expanded`),p=Ih(`always-expanded`),m=Ih(`dismissible`),h=Ih(`strip-audio-tags`),g=Ih(`override-text-only`),_=Ih(`use-rtc`),v=Ih(`show-agent-status`),y=Ih(`show-conversation-id`),b=L(()=>{if(!a.value)return null;let e=o.value??a.value.variant,t=s.value??a.value.placement,n=c.value??a.value.terms_key,r=Wm(g.value)??a.value.text_only??!1,i=Wm(l.value)??a.value.mic_muting_enabled,b=Wm(u.value)??a.value.transcript_enabled,x=Wm(d.value)??a.value.text_input_enabled,S=Wm(p.value)??a.value.always_expanded??!1,C=Wm(f.value)??a.value.default_expanded??!1,w=Wm(m.value)??a.value.dismissible??!1,T=Wm(h.value)??a.value.strip_audio_tags??!r,ee=Wm(_.value)??a.value.use_rtc??!1,te=Wm(v.value)??a.value.show_agent_status??!1,ne=Wm(y.value)??a.value.show_conversation_id??!0;return{...a.value,variant:wh(e),placement:Eh(t),terms_key:n,mic_muting_enabled:!r&&i,transcript_enabled:r||b,text_input_enabled:r||x,always_expanded:S,default_expanded:C,dismissible:w,strip_audio_tags:T,use_rtc:ee,show_agent_status:te,show_conversation_id:ne}});return b.value?R(Ny.Provider,{value:b,children:e}):null}function Fy(){return Mh(Ny)}function Iy(){let e=Ih(`override-text-only`),t=Fy();return L(()=>Wm(e.value)??t.value.text_only??!1)}function Ly(){let e=Iy(),{conversationTextOnly:t}=ky();return L(()=>t.value??e.value)}function Ry(){let e=Ih(`override-first-message`),t=Fy(),{language:n}=Yh();return L(()=>e.value??t.value.language_presets?.[n.value.languageCode]?.first_message??t.value.first_message??null)}function zy(){let e=Fy();return L(()=>e.value.text_input_enabled??!1)}function By(){let e=Fy();return L(()=>e.value.file_input_config?.enabled??!1)}function Vy(){let e=Fy();return L(()=>e.value.file_input_config?.max_files_per_conversation??null)}function Hy(){let e=Fy(),{language:t}=Yh();return L(()=>{let n=e.value.language_presets?.[t.value.languageCode];return{terms_html:n?.terms_html??e.value.terms_html,terms_text:n?.terms_text??e.value.terms_text,terms_key:n?.terms_key??e.value.terms_key}})}function Uy(){let e=Fy();return L(()=>e.value.use_rtc??!1)}function Wy(){let e=Fy();return L(()=>e.value.end_feedback?.type??null)}function Gy(){let e=Ih(`markdown-link-allowed-hosts`),t=Ih(`markdown-link-include-www`),n=Ih(`markdown-link-allow-http`),r=Fy();return L(()=>{let i=[];if(e.value)i=e.value.split(`,`).map(e=>e.trim()).filter(Boolean);else{let e=r.value.markdown_link_allowed_hosts;e&&e.length>0&&(i=e.some(e=>e.hostname===`*`)?[`*`]:e.map(e=>e.hostname))}let a=Wm(t.value)??r.value.markdown_link_include_www??!0,o=Wm(n.value)??r.value.markdown_link_allow_http??!0;return{allowedHosts:i,includeWww:a,allowHttp:o}})}function Ky(){let e=Ih(`syntax-highlight-theme`),t=Fy();return L(()=>{let n=e.value??t.value.syntax_highlight_theme;if(n===`light`||n===`dark`)return n;let r=new Sh(t.value.styles?.base_active??kh.base_active);return r.isValid&&r.isDark()?`dark`:`light`})}function qy(){let e=Ih(`allow-events`);return L(()=>Wm(e.value)??!1)}async function Jy(e,t,n,r){let i=await(await fetch(`${t}/v1/convai/agents/${e}/widget${r?`?conversation_signature=${encodeURIComponent(r)}`:``}`,{signal:n})).json();if(!i.widget_config)throw Error(`Response does not contain widget_config`);return i.widget_config}var Yy=Bf(function(){let e=Fy();return R(`style`,{children:[L(()=>{let t=e.value.styles;return`:host, :root {\n${Ah.map(e=>`${Xy(e)}: ${Zy(t?.[e]??kh[e])};`).join(`
|
|
276
|
+
`)}\n}`}),Km]})});function Xy(e){return`--el-${e.replace(/_/g,`-`)}`}function Zy(e){return typeof e==`number`?`${e}px`:e}var Qy=Vd(null);function $y({children:e}){let t=mm(`voice`),{isDisconnected:n,addModeToggleEntry:r,setVolume:i}=ky();xm(()=>{i(t.value===`text`?0:1)});let a=bf(()=>({mode:Qp(()=>t.value),setMode:e=>{t.value!==e&&(t.value=e,n.value||r(e))},isTextMode:Qp(()=>t.value===`text`),isVoiceMode:Qp(()=>t.value===`voice`)}),[n,r]);return R(Qy.Provider,{value:a,children:e})}function eb(){return Mh(Qy)}var tb=Vd(null);function nb({children:e}){let t=Fy(),{isTextMode:n}=eb(),{setMicMuted:r,status:i}=ky(),a=L(()=>t.value.mic_muting_enabled??!1),o=mm(!1),s=F(null);xm(()=>{i.value===`disconnected`&&(o.value=!1)}),xm(()=>{n.value?(s.current===null&&(s.current=o.peek()),r(!0)):(s.current!==null&&(o.value=s.current,s.current=null),r(a.value?o.value:!1))});let c=bf(()=>({isMuted:Qp(()=>n.value?!0:a.value?o.value:!1),setIsMuted:e=>{o.value=e},isMutingEnabled:a}),[]);return R(tb.Provider,{value:c,children:e})}function rb(){return Mh(tb)}var ib=Vd(null);function ab({children:e}){let t=Fy(),{language:n}=Yh(),r=Ih(`text-contents`),i=L(()=>{try{if(r.value){let e=JSON.parse(r.value);if(typeof e==`object`)return e}}catch(e){console.error(`[ConversationalAI] Cannot parse text-contents:`,e)}return{}}),a=bf(()=>Object.fromEntries(Oh.map(e=>[e,Qp(()=>i.value[e]??t.value.language_presets?.[n.value.languageCode]?.text_contents?.[e]??t.value.text_contents?.[e]??Dh[e])])),[]);return R(ib.Provider,{value:a,children:e})}function ob(){return Mh(ib)}var sb=Vd(null);function cb({children:e}){let t=Fy(),n=Ih(`avatar-image-url`),r=Ih(`avatar-orb-color-1`),i=Ih(`avatar-orb-color-2`),a=mm(``),o=L(()=>n.value?{type:`image`,url:n.value}:r.value&&i.value?{type:`orb`,color_1:r.value,color_2:i.value}:t.value.avatar),s=L(()=>{switch(o.value.type){case`url`:return o.value.custom_url;case`orb`:return a.value;case`image`:return o.value.url}}),c=bf(()=>({config:o,previewUrl:s,canvasUrl:a}),[]);return R(sb.Provider,{value:c,children:e})}function lb(){return Mh(sb)}var ub=Vd(null);function db({children:e,...t}){let[n,r]=hf(null);return R(`div`,{ref:r,...t,children:n&&R(ub.Provider,{value:n,children:e})})}function fb(){return Mh(ub)}var pb={LOADING:`loading`,SUCCESS:`success`,ERROR:`error`};function mb(e,t){let n=[];t.firstMessage&&n.push({type:`message`,role:`agent`,message:t.firstMessage,isText:!0,conversationIndex:e[0]?.conversationIndex??t.firstMessageConversationIndex??0});let r=new Map;for(let t of e)if(t.type===`agent_tool_request`){let e=r.get(t.eventId)??{loading:0,error:0,success:0};e.loading++,r.set(t.eventId,e)}else if(t.type===`agent_tool_response`){let e=r.get(t.eventId);e&&(e.loading--,t.isError?e.error++:e.success++)}for(let i of e){if(i.type===`agent_tool_request`||i.type===`agent_tool_response`||i.type===`message`&&i.role===`agent`&&!i.message&&!(t.showAgentStatus&&i.eventId!=null&&r.has(i.eventId))||!t.transcriptEnabled&&i.type===`message`&&!i.isText)continue;let e=n[n.length-1];if(i.type===`message`&&i.eventId!=null&&e?.type===`message`&&e.eventId===i.eventId&&e.role===i.role){n[n.length-1]=i;continue}n.push(i)}if(t.showAgentStatus)for(let e=0;e<n.length;e++){let t=n[e];if(t.type!==`message`||t.role!==`agent`||t.eventId==null)continue;let i=r.get(t.eventId);if(!i)continue;let a=i.loading>0?pb.LOADING:i.error>0?pb.ERROR:pb.SUCCESS;n[e]={...t,toolStatus:a}}return n}function hb(e){return e&&typeof e==`object`&&`peek`in e}function gb(e){let t=hb(e),n=mm(t?e.peek():e);return t?e:(n.value=e,n)}function _b(e){return hb(e)?e.value:e}function vb(e){return hb(e)?e.peek():e}function yb(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function bb(...e){return t=>{let n=!1,r=e.map(e=>{let r=yb(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():yb(e[t],null)}}}}function xb(...e){return I(bb(...e),e)}var Sb=Symbol.for(`react.lazy`),Cb=void 0;function wb(e){return typeof e==`object`&&!!e&&`then`in e}function Tb(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Sb&&`_payload`in e&&wb(e._payload)}function Eb(e){let t=Ob(e),n=Uf((e,n)=>{let{children:r,...i}=e;Tb(r)&&typeof Cb==`function`&&(r=Cb(r._payload));let a=Gf.toArray(r),o=a.find(Ab);if(o){let e=o.props.children,r=a.map(t=>t===o?Gf.count(e)>1?Gf.only(null):Cp(e)?e.props.children:null:t);return R(t,{...i,ref:n,children:Cp(e)?Ep(e,void 0,r):null})}return R(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var Db=Eb(`Slot`);function Ob(e){let t=Uf((e,t)=>{let{children:n,...r}=e;if(Tb(n)&&typeof Cb==`function`&&(n=Cb(n._payload)),Cp(n)){let e=Mb(n),i=jb(r,n.props);return n.type!==gd&&(i.ref=t?bb(t,e):e),Ep(n,i)}return Gf.count(n)>1?Gf.only(null):null});return t.displayName=`${e}.SlotClone`,t}var kb=Symbol(`radix.slottable`);function Ab(e){return Cp(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===kb}function jb(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Mb(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Nb=window.matchMedia(`(prefers-reduced-motion: reduce)`);function Pb(){let e=mm(Nb.matches);return _f(()=>{let t=t=>{e.value=t.matches};return Nb.addEventListener(`change`,t),()=>Nb.removeEventListener(`change`,t)},[]),e}function Fb({onStart:e,onEnd:t}){let n=F();n.current??=new Set;let r=F(e);r.current=e;let i=F(t);i.current=t;let a=mm(!1);return{transitioning:a,handlers:{onTransitionStart:I(e=>{e.target===e.currentTarget&&(n.current?.add(e.propertyName),a.peek()||(a.value=!0,r.current?.()))},[]),onTransitionEnd:I(e=>{e.target===e.currentTarget&&(n.current?.delete(e.propertyName),n.current?.size||(a.value=!1,i.current?.()))},[])}}}function Ib(e){return R(Pb().value?Lb:Rb,{...e})}function Lb({active:e,...t}){return _b(e)?R(Db,{"data-shown":!0,...t}):null}function Rb({active:e,initial:t=e,...n}){let r=gb(e),i=mm(vb(t));xm(()=>{r.value&&(i.value=r.value)});let{handlers:a}=Fb({onEnd:()=>{i.value=r.value}});return!r.value&&!i.value?null:R(Db,{"data-shown":r.value&&i.value,...a,...n})}function zb(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=zb(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Bb(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=zb(e))&&(r&&(r+=` `),r+=t);return r}var Vb=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Hb=(e,t)=>({classGroupId:e,validator:t}),Ub=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Wb=`-`,Gb=[],Kb=`arbitrary..`,qb=e=>{let t=Xb(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return Yb(e);let n=e.split(Wb);return Jb(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?Vb(i,t):t:i||Gb}return n[e]||Gb}}},Jb=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Jb(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Wb):e.slice(t).join(Wb),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},Yb=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Kb+r:void 0})(),Xb=e=>{let{theme:t,classGroups:n}=e;return Zb(n,t)},Zb=(e,t)=>{let n=Ub();for(let r in e){let i=e[r];Qb(i,n,r,t)}return n},Qb=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];$b(i,t,n,r)}},$b=(e,t,n,r)=>{if(typeof e==`string`){ex(e,t,n);return}if(typeof e==`function`){tx(e,t,n,r);return}nx(e,t,n,r)},ex=(e,t,n)=>{let r=e===``?t:rx(t,e);r.classGroupId=n},tx=(e,t,n,r)=>{if(ix(e)){Qb(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Hb(n,e))},nx=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Qb(o,rx(t,a),n,r)}},rx=(e,t)=>{let n=e,r=t.split(Wb),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Ub(),n.nextPart.set(t,i)),n=i}return n},ix=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,ax=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},ox=`!`,sx=`:`,cx=[],lx=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),ux=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===sx){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(ox)?(c=s.slice(0,-1),l=!0):s.startsWith(ox)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return lx(t,l,c,u)};if(t){let e=t+sx,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):lx(cx,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},dx=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},fx=e=>({cache:ax(e.cacheSize),parseClassName:ux(e),sortModifiers:dx(e),...qb(e)}),px=/\s+/,mx=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(px),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+ox:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},hx=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=gx(n))&&(i&&(i+=` `),i+=r);return i},gx=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=gx(e[r]))&&(n&&(n+=` `),n+=t);return n},_x=(e,...t)=>{let n,r,i,a,o=o=>(n=fx(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=mx(e,n);return i(e,a),a};return a=o,(...e)=>a(hx(...e))},vx=[],yx=e=>{let t=t=>t[e]||vx;return t.isThemeGetter=!0,t},bx=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,xx=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Sx=/^\d+\/\d+$/,Cx=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,wx=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Tx=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Dx=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Ox=e=>Sx.test(e),kx=e=>!!e&&!Number.isNaN(Number(e)),Ax=e=>!!e&&Number.isInteger(Number(e)),jx=e=>e.endsWith(`%`)&&kx(e.slice(0,-1)),Mx=e=>Cx.test(e),Nx=()=>!0,Px=e=>wx.test(e)&&!Tx.test(e),Fx=()=>!1,Ix=e=>Ex.test(e),Lx=e=>Dx.test(e),Rx=e=>!z(e)&&!B(e),zx=e=>Zx(e,tS,Fx),z=e=>bx.test(e),Bx=e=>Zx(e,nS,Px),Vx=e=>Zx(e,rS,kx),Hx=e=>Zx(e,$x,Fx),Ux=e=>Zx(e,eS,Lx),Wx=e=>Zx(e,aS,Ix),B=e=>xx.test(e),Gx=e=>Qx(e,nS),Kx=e=>Qx(e,iS),qx=e=>Qx(e,$x),Jx=e=>Qx(e,tS),Yx=e=>Qx(e,eS),Xx=e=>Qx(e,aS,!0),Zx=(e,t,n)=>{let r=bx.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Qx=(e,t,n=!1)=>{let r=xx.exec(e);return r?r[1]?t(r[1]):n:!1},$x=e=>e===`position`||e===`percentage`,eS=e=>e===`image`||e===`url`,tS=e=>e===`length`||e===`size`||e===`bg-size`,nS=e=>e===`length`,rS=e=>e===`number`,iS=e=>e===`family-name`,aS=e=>e===`shadow`,oS=_x(()=>{let e=yx(`color`),t=yx(`font`),n=yx(`text`),r=yx(`font-weight`),i=yx(`tracking`),a=yx(`leading`),o=yx(`breakpoint`),s=yx(`container`),c=yx(`spacing`),l=yx(`radius`),u=yx(`shadow`),d=yx(`inset-shadow`),f=yx(`text-shadow`),p=yx(`drop-shadow`),m=yx(`blur`),h=yx(`perspective`),g=yx(`aspect`),_=yx(`ease`),v=yx(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),B,z],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[B,z,c],T=()=>[Ox,`full`,`auto`,...w()],ee=()=>[Ax,`none`,`subgrid`,B,z],te=()=>[`auto`,{span:[`full`,Ax,B,z]},Ax,B,z],ne=()=>[Ax,`auto`,B,z],re=()=>[`auto`,`min`,`max`,`fr`,B,z],ie=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],ae=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],oe=()=>[`auto`,...w()],se=()=>[Ox,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],E=()=>[e,B,z],ce=()=>[...b(),qx,Hx,{position:[B,z]}],le=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ue=()=>[`auto`,`cover`,`contain`,Jx,zx,{size:[B,z]}],de=()=>[jx,Gx,Bx],fe=()=>[``,`none`,`full`,l,B,z],pe=()=>[``,kx,Gx,Bx],me=()=>[`solid`,`dashed`,`dotted`,`double`],he=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ge=()=>[kx,jx,qx,Hx],_e=()=>[``,`none`,m,B,z],ve=()=>[`none`,kx,B,z],ye=()=>[`none`,kx,B,z],be=()=>[kx,B,z],xe=()=>[Ox,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Mx],breakpoint:[Mx],color:[Nx],container:[Mx],"drop-shadow":[Mx],ease:[`in`,`out`,`in-out`],font:[Rx],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Mx],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Mx],shadow:[Mx],spacing:[`px`,kx],text:[Mx],"text-shadow":[Mx],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Ox,z,B,g]}],container:[`container`],columns:[{columns:[kx,z,B,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ax,`auto`,B,z]}],basis:[{basis:[Ox,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[kx,Ox,`auto`,`initial`,`none`,z]}],grow:[{grow:[``,kx,B,z]}],shrink:[{shrink:[``,kx,B,z]}],order:[{order:[Ax,`first`,`last`,`none`,B,z]}],"grid-cols":[{"grid-cols":ee()}],"col-start-end":[{col:te()}],"col-start":[{"col-start":ne()}],"col-end":[{"col-end":ne()}],"grid-rows":[{"grid-rows":ee()}],"row-start-end":[{row:te()}],"row-start":[{"row-start":ne()}],"row-end":[{"row-end":ne()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":re()}],"auto-rows":[{"auto-rows":re()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...ie(),`normal`]}],"justify-items":[{"justify-items":[...ae(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...ae()]}],"align-content":[{content:[`normal`,...ie()]}],"align-items":[{items:[...ae(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...ae(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...ae(),`baseline`]}],"place-self":[{"place-self":[`auto`,...ae()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:oe()}],mx:[{mx:oe()}],my:[{my:oe()}],ms:[{ms:oe()}],me:[{me:oe()}],mt:[{mt:oe()}],mr:[{mr:oe()}],mb:[{mb:oe()}],ml:[{ml:oe()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:se()}],w:[{w:[s,`screen`,...se()]}],"min-w":[{"min-w":[s,`screen`,`none`,...se()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...se()]}],h:[{h:[`screen`,`lh`,...se()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...se()]}],"max-h":[{"max-h":[`screen`,`lh`,...se()]}],"font-size":[{text:[`base`,n,Gx,Bx]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,B,Vx]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,jx,z]}],"font-family":[{font:[Kx,z,t]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,B,z]}],"line-clamp":[{"line-clamp":[kx,`none`,B,Vx]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,B,z]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,B,z]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:E()}],"text-color":[{text:E()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...me(),`wavy`]}],"text-decoration-thickness":[{decoration:[kx,`from-font`,`auto`,B,Bx]}],"text-decoration-color":[{decoration:E()}],"underline-offset":[{"underline-offset":[kx,`auto`,B,z]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,B,z]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,B,z]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:ce()}],"bg-repeat":[{bg:le()}],"bg-size":[{bg:ue()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ax,B,z],radial:[``,B,z],conic:[Ax,B,z]},Yx,Ux]}],"bg-color":[{bg:E()}],"gradient-from-pos":[{from:de()}],"gradient-via-pos":[{via:de()}],"gradient-to-pos":[{to:de()}],"gradient-from":[{from:E()}],"gradient-via":[{via:E()}],"gradient-to":[{to:E()}],rounded:[{rounded:fe()}],"rounded-s":[{"rounded-s":fe()}],"rounded-e":[{"rounded-e":fe()}],"rounded-t":[{"rounded-t":fe()}],"rounded-r":[{"rounded-r":fe()}],"rounded-b":[{"rounded-b":fe()}],"rounded-l":[{"rounded-l":fe()}],"rounded-ss":[{"rounded-ss":fe()}],"rounded-se":[{"rounded-se":fe()}],"rounded-ee":[{"rounded-ee":fe()}],"rounded-es":[{"rounded-es":fe()}],"rounded-tl":[{"rounded-tl":fe()}],"rounded-tr":[{"rounded-tr":fe()}],"rounded-br":[{"rounded-br":fe()}],"rounded-bl":[{"rounded-bl":fe()}],"border-w":[{border:pe()}],"border-w-x":[{"border-x":pe()}],"border-w-y":[{"border-y":pe()}],"border-w-s":[{"border-s":pe()}],"border-w-e":[{"border-e":pe()}],"border-w-t":[{"border-t":pe()}],"border-w-r":[{"border-r":pe()}],"border-w-b":[{"border-b":pe()}],"border-w-l":[{"border-l":pe()}],"divide-x":[{"divide-x":pe()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":pe()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...me(),`hidden`,`none`]}],"divide-style":[{divide:[...me(),`hidden`,`none`]}],"border-color":[{border:E()}],"border-color-x":[{"border-x":E()}],"border-color-y":[{"border-y":E()}],"border-color-s":[{"border-s":E()}],"border-color-e":[{"border-e":E()}],"border-color-t":[{"border-t":E()}],"border-color-r":[{"border-r":E()}],"border-color-b":[{"border-b":E()}],"border-color-l":[{"border-l":E()}],"divide-color":[{divide:E()}],"outline-style":[{outline:[...me(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[kx,B,z]}],"outline-w":[{outline:[``,kx,Gx,Bx]}],"outline-color":[{outline:E()}],shadow:[{shadow:[``,`none`,u,Xx,Wx]}],"shadow-color":[{shadow:E()}],"inset-shadow":[{"inset-shadow":[`none`,d,Xx,Wx]}],"inset-shadow-color":[{"inset-shadow":E()}],"ring-w":[{ring:pe()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:E()}],"ring-offset-w":[{"ring-offset":[kx,Bx]}],"ring-offset-color":[{"ring-offset":E()}],"inset-ring-w":[{"inset-ring":pe()}],"inset-ring-color":[{"inset-ring":E()}],"text-shadow":[{"text-shadow":[`none`,f,Xx,Wx]}],"text-shadow-color":[{"text-shadow":E()}],opacity:[{opacity:[kx,B,z]}],"mix-blend":[{"mix-blend":[...he(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":he()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[kx]}],"mask-image-linear-from-pos":[{"mask-linear-from":ge()}],"mask-image-linear-to-pos":[{"mask-linear-to":ge()}],"mask-image-linear-from-color":[{"mask-linear-from":E()}],"mask-image-linear-to-color":[{"mask-linear-to":E()}],"mask-image-t-from-pos":[{"mask-t-from":ge()}],"mask-image-t-to-pos":[{"mask-t-to":ge()}],"mask-image-t-from-color":[{"mask-t-from":E()}],"mask-image-t-to-color":[{"mask-t-to":E()}],"mask-image-r-from-pos":[{"mask-r-from":ge()}],"mask-image-r-to-pos":[{"mask-r-to":ge()}],"mask-image-r-from-color":[{"mask-r-from":E()}],"mask-image-r-to-color":[{"mask-r-to":E()}],"mask-image-b-from-pos":[{"mask-b-from":ge()}],"mask-image-b-to-pos":[{"mask-b-to":ge()}],"mask-image-b-from-color":[{"mask-b-from":E()}],"mask-image-b-to-color":[{"mask-b-to":E()}],"mask-image-l-from-pos":[{"mask-l-from":ge()}],"mask-image-l-to-pos":[{"mask-l-to":ge()}],"mask-image-l-from-color":[{"mask-l-from":E()}],"mask-image-l-to-color":[{"mask-l-to":E()}],"mask-image-x-from-pos":[{"mask-x-from":ge()}],"mask-image-x-to-pos":[{"mask-x-to":ge()}],"mask-image-x-from-color":[{"mask-x-from":E()}],"mask-image-x-to-color":[{"mask-x-to":E()}],"mask-image-y-from-pos":[{"mask-y-from":ge()}],"mask-image-y-to-pos":[{"mask-y-to":ge()}],"mask-image-y-from-color":[{"mask-y-from":E()}],"mask-image-y-to-color":[{"mask-y-to":E()}],"mask-image-radial":[{"mask-radial":[B,z]}],"mask-image-radial-from-pos":[{"mask-radial-from":ge()}],"mask-image-radial-to-pos":[{"mask-radial-to":ge()}],"mask-image-radial-from-color":[{"mask-radial-from":E()}],"mask-image-radial-to-color":[{"mask-radial-to":E()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[kx]}],"mask-image-conic-from-pos":[{"mask-conic-from":ge()}],"mask-image-conic-to-pos":[{"mask-conic-to":ge()}],"mask-image-conic-from-color":[{"mask-conic-from":E()}],"mask-image-conic-to-color":[{"mask-conic-to":E()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:ce()}],"mask-repeat":[{mask:le()}],"mask-size":[{mask:ue()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,B,z]}],filter:[{filter:[``,`none`,B,z]}],blur:[{blur:_e()}],brightness:[{brightness:[kx,B,z]}],contrast:[{contrast:[kx,B,z]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Xx,Wx]}],"drop-shadow-color":[{"drop-shadow":E()}],grayscale:[{grayscale:[``,kx,B,z]}],"hue-rotate":[{"hue-rotate":[kx,B,z]}],invert:[{invert:[``,kx,B,z]}],saturate:[{saturate:[kx,B,z]}],sepia:[{sepia:[``,kx,B,z]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,B,z]}],"backdrop-blur":[{"backdrop-blur":_e()}],"backdrop-brightness":[{"backdrop-brightness":[kx,B,z]}],"backdrop-contrast":[{"backdrop-contrast":[kx,B,z]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,kx,B,z]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[kx,B,z]}],"backdrop-invert":[{"backdrop-invert":[``,kx,B,z]}],"backdrop-opacity":[{"backdrop-opacity":[kx,B,z]}],"backdrop-saturate":[{"backdrop-saturate":[kx,B,z]}],"backdrop-sepia":[{"backdrop-sepia":[``,kx,B,z]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,B,z]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[kx,`initial`,B,z]}],ease:[{ease:[`linear`,`initial`,_,B,z]}],delay:[{delay:[kx,B,z]}],animate:[{animate:[`none`,v,B,z]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,B,z]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ve()}],"rotate-x":[{"rotate-x":ve()}],"rotate-y":[{"rotate-y":ve()}],"rotate-z":[{"rotate-z":ve()}],scale:[{scale:ye()}],"scale-x":[{"scale-x":ye()}],"scale-y":[{"scale-y":ye()}],"scale-z":[{"scale-z":ye()}],"scale-3d":[`scale-3d`],skew:[{skew:be()}],"skew-x":[{"skew-x":be()}],"skew-y":[{"skew-y":be()}],transform:[{transform:[B,z,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:xe()}],"translate-x":[{"translate-x":xe()}],"translate-y":[{"translate-y":xe()}],"translate-z":[{"translate-z":xe()}],"translate-none":[`translate-none`],accent:[{accent:E()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:E()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,B,z]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,B,z]}],fill:[{fill:[`none`,...E()]}],"stroke-w":[{stroke:[kx,Gx,Bx,Vx]}],stroke:[{stroke:[`none`,...E()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}}),sS=(...e)=>oS(Bb(e)),cS=Vd(null);function lS({children:e}){let t=mm(null),n=mm(``),r=mm(`initial`),{lastId:i}=ky();Ih(`agent-id`);let{serverUrl:a}=zh(),o=I(async e=>{let n=i.value;if(!n){console.warn(`[ConversationalAI] Cannot submit rating: missing conversation_id`);return}try{t.value=e,r.value=`submitted-rating`,await Om(n,{rating:e},a.value)}catch(e){console.error(`[ConversationalAI] Failed to submit rating:`,e)}},[]),s=I(async()=>{let e=i.value;if(!e){console.warn(`[ConversationalAI] Cannot submit feedback: missing conversation_id`);return}if(t.value===null){console.warn(`[ConversationalAI] Cannot submit feedback: rating not set`);return}if(n.value)try{r.value=`submitted-follow-up`,await Om(e,{rating:t.value,comment:n.value||void 0},a.value)}catch(e){console.error(`[ConversationalAI] Failed to submit feedback:`,e)}},[]),c=I(()=>{t.value=null,n.value=``,r.value=`initial`},[]);xm(()=>{i.value!==null&&c()});let l=bf(()=>({rating:t,feedbackText:n,feedbackProgress:r,submitRating:o,submitFeedback:s,reset:c}),[o,s,c]);return R(cS.Provider,{value:l,children:e})}function uS(){return Mh(cS)}var dS=Vd(null);function fS({defaultContent:e=`transcript`,children:t}){let n=mm(e),r=bf(()=>({currentContent:n,currentConfig:n.value===`feedback`?{showHeaderBack:!0,onHeaderBack:()=>{n.value=`transcript`}}:{showHeaderBack:!1}}),[n.value]);return R(dS.Provider,{value:r,children:t})}function pS(){return Mh(dS)}var mS={phone:_S,"phone-off":vS,paperclip:yS,chat:bS,mic:xS,"mic-off":SS,soundwave:CS,check:ES,"chevron-down":wS,"chevron-up":TS,send:DS,star:OS,copy:kS,download:AS,wrap:jS,maximize:NS,minimize:PS,loader:FS,x:IS},hS={xs:`text-xs`,sm:`text-sm`,md:`text-lg`,lg:`text-xl`};function gS({name:e,size:t=`md`,className:n}){let r=mS[e];return R(`slot`,{name:`icon-${e}`,className:Bb(`flex`,hS[t],n),"aria-hidden":!0,children:R(r,{})})}function _S(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 18 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{d:`M3.7489 2.25C2.93286 2.25 2.21942 2.92142 2.27338 3.7963C2.6686 10.2041 7.79483 15.3303 14.2026 15.7255C15.0775 15.7795 15.7489 15.066 15.7489 14.25V11.958C15.7489 11.2956 15.3144 10.7116 14.6799 10.5213L12.6435 9.91035C12.1149 9.75179 11.542 9.89623 11.1518 10.2864L10.5901 10.8482C9.15291 10.0389 7.95998 8.84599 7.15074 7.40881L7.71246 6.84709C8.10266 6.45689 8.24711 5.88396 8.08854 5.35541L7.47761 3.31898C7.28727 2.6845 6.70329 2.25 6.04087 2.25H3.7489Z`})})}function vS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M16.0303 3.53033C16.3232 3.23744 16.3232 2.76256 16.0303 2.46967C15.7374 2.17678 15.2626 2.17678 14.9697 2.46967L8.6271 8.81224C8.25925 8.3778 7.93185 7.90804 7.65074 7.40881L8.21246 6.84709C8.60266 6.45689 8.74711 5.88396 8.58854 5.35541L7.97761 3.31898C7.78727 2.6845 7.20329 2.25 6.54087 2.25H4.2489C3.43286 2.25 2.71942 2.92142 2.77338 3.7963C2.95462 6.73468 4.13069 9.40357 5.96899 11.4703L2.96967 14.4697C2.67678 14.7626 2.67678 15.2374 2.96967 15.5303C3.26256 15.8232 3.73744 15.8232 4.03033 15.5303L16.0303 3.53033Z`}),R(`path`,{d:`M14.7026 15.7255C12.2994 15.5773 10.0765 14.7636 8.21584 13.4665L10.9278 10.7545C10.9815 10.7863 11.0356 10.8175 11.0901 10.8482L11.6518 10.2864C12.042 9.89623 12.6149 9.75179 13.1435 9.91035L15.1799 10.5213C15.8144 10.7116 16.2489 11.2956 16.2489 11.958V14.25C16.2489 15.066 15.5775 15.7795 14.7026 15.7255Z`})]})}function yS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M13.234 20.252 21 12.3`}),R(`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 0 2.828 2 2 0 0 0 2.828 0l8.414-8.586a4 4 0 0 0 0-5.656 4 4 0 0 0-5.656 0l-8.415 8.585a6 6 0 1 0 8.486 8.486`})]})}function bS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M1.5 6.75C1.5 4.26472 3.51472 2.25 6 2.25H12C14.4853 2.25 16.5 4.26472 16.5 6.75V11.25C16.5 13.7353 14.4853 15.75 12 15.75H2.25C1.83579 15.75 1.5 15.4142 1.5 15V6.75ZM6 9.9375C5.48223 9.9375 5.0625 9.51777 5.0625 9C5.0625 8.48223 5.48223 8.0625 6 8.0625C6.51777 8.0625 6.9375 8.48223 6.9375 9C6.9375 9.51777 6.51777 9.9375 6 9.9375ZM9 9.9375C8.48223 9.9375 8.0625 9.51777 8.0625 9C8.0625 8.48223 8.48223 8.0625 9 8.0625C9.51777 8.0625 9.9375 8.48223 9.9375 9C9.9375 9.51777 9.51777 9.9375 9 9.9375ZM11.0625 9C11.0625 9.51777 11.4822 9.9375 12 9.9375C12.5178 9.9375 12.9375 9.51777 12.9375 9C12.9375 8.48223 12.5178 8.0625 12 8.0625C11.4822 8.0625 11.0625 8.48223 11.0625 9Z`})})}function xS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M9.50008 1.5C7.42901 1.5 5.75008 3.17893 5.75008 5.25V8.25C5.75008 10.3211 7.42901 12 9.50008 12C11.5712 12 13.2501 10.3211 13.2501 8.25V5.25C13.2501 3.17893 11.5712 1.5 9.50008 1.5Z`}),R(`path`,{d:`M4.88997 10.8417C4.66448 10.4943 4.20002 10.3954 3.85256 10.6209C3.50509 10.8463 3.40621 11.3108 3.63169 11.6583C4.47442 12.9569 6.08493 14.6838 8.75008 14.9616V15.75C8.75008 16.1642 9.08587 16.5 9.50008 16.5C9.9143 16.5 10.2501 16.1642 10.2501 15.75V14.9616C12.9152 14.6838 14.5257 12.9569 15.3685 11.6583C15.594 11.3108 15.4951 10.8463 15.1476 10.6209C14.8001 10.3954 14.3357 10.4943 14.1102 10.8417C13.3305 12.0432 11.9002 13.5 9.50008 13.5C7.1 13.5 5.66968 12.0432 4.88997 10.8417Z`})]})}function SS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 19 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`path`,{d:`M13.25 8.25C13.25 8.64791 13.188 9.03135 13.0732 9.39119L6.57947 2.8975C7.26687 2.04521 8.31974 1.5 9.49995 1.5C11.571 1.5 13.25 3.17893 13.25 5.25V8.25Z`}),R(`path`,{d:`M2.21967 1.71967C2.51256 1.42678 2.98744 1.42678 3.28033 1.71967L16.7803 15.2197C17.0732 15.5126 17.0732 15.9874 16.7803 16.2803C16.4874 16.5732 16.0126 16.5732 15.7197 16.2803L13.2828 13.8435C12.4719 14.4022 11.4678 14.8338 10.25 14.9614V15.75C10.25 16.1642 9.91422 16.5 9.50001 16.5C9.08579 16.5 8.75001 16.1642 8.75001 15.75V14.9616C6.08485 14.6838 4.47434 12.9569 3.63162 11.6583C3.40614 11.3108 3.50502 10.8463 3.85248 10.6209C4.19995 10.3954 4.66441 10.4943 4.88989 10.8417C5.6696 12.0432 7.09993 13.5 9.50001 13.5C10.5978 13.5 11.4845 13.1981 12.1992 12.7598L11.0875 11.6482C10.605 11.8739 10.0667 12 9.50001 12C7.42894 12 5.75001 10.3211 5.75001 8.25V6.31067L2.21967 2.78033C1.92678 2.48744 1.92678 2.01256 2.21967 1.71967Z`})]})}function CS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 18 18`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[R(`rect`,{x:`1.5`,y:`6.75`,width:`2`,height:`4.5`,rx:`1`}),R(`rect`,{x:`5`,y:`4.5`,width:`2`,height:`9`,rx:`1`}),R(`rect`,{x:`8.5`,y:`2.25`,width:`2`,height:`13.5`,rx:`1`}),R(`rect`,{x:`12`,y:`4.5`,width:`2`,height:`9`,rx:`1`}),R(`rect`,{x:`15.5`,y:`6.75`,width:`2`,height:`4.5`,rx:`1`})]})}function wS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`m6 9 6 6 6-6`})})}function TS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`m18 15-6-6-6 6`})})}function ES(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`M20 6 9 17l-5-5`})})}function DS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 20 20`,fill:`currentColor`,...e,children:R(`path`,{d:`M4.64337 17.6645C3.243 18.1313 1.97185 16.6817 2.6176 15.3543L8.50148 3.25965C9.10962 2.00957 10.8908 2.00958 11.4989 3.25965L17.3828 15.3543C18.0286 16.6817 16.7574 18.1313 15.357 17.6645L10.8334 16.1567L10.8334 12.5005C10.8334 12.0403 10.4603 11.6672 10 11.6672C9.5398 11.6672 9.16671 12.0403 9.16671 12.5005L9.16671 16.1568L4.64337 17.6645Z`})})}function OS(e){return R(`svg`,{height:`1em`,width:`1em`,viewBox:`0 0 21 20`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,...e,children:R(`path`,{d:`M11.8621 0.854898C11.3145 -0.284967 9.68804 -0.284965 9.1404 0.854899L6.77181 5.78487C6.77181 5.78487 6.76902 5.78867 6.7646 5.78925L1.31499 6.50272C0.0591912 6.66713 -0.452868 8.21568 0.474832 9.09033L4.45896 12.8466C4.46075 12.8483 4.46059 12.8502 4.46059 12.8502L3.46003 18.2169C3.22657 19.4691 4.55184 20.4152 5.66108 19.8172L10.4957 17.2111C10.4991 17.2093 10.5035 17.2093 10.5068 17.2111L15.3415 19.8172C16.4507 20.4152 17.776 19.4691 17.5425 18.2169L16.542 12.8502C16.542 12.8502 16.5418 12.8483 16.5436 12.8466L20.5277 9.09033C21.4554 8.21568 20.9434 6.66713 19.6876 6.50272L14.2379 5.78925C14.2335 5.78867 14.2307 5.78487 14.2307 5.78487L11.8621 0.854898Z`})})}function kS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}),R(`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`})]})}function AS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`}),R(`polyline`,{points:`7 10 12 15 17 10`}),R(`line`,{x1:`12`,x2:`12`,y1:`15`,y2:`3`})]})}function jS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,height:`1em`,width:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`line`,{x1:`3`,x2:`21`,y1:`6`,y2:`6`}),R(`path`,{d:`M3 12h15a3 3 0 1 1 0 6h-4`}),R(`polyline`,{points:`16 16 14 18 16 20`}),R(`line`,{x1:`3`,x2:`10`,y1:`18`,y2:`18`})]})}function MS({orbColor:e,circleBackgroundColor:t,starColor:n,className:r}){return R(`slot`,{name:`icon-feedback`,className:Bb(`flex`,r),"aria-hidden":!0,children:R(`svg`,{width:`100%`,height:`100%`,viewBox:`0 0 82 88`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[R(`path`,{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M9 42C9 59.6731 23.3269 74 41 74C58.6731 74 73 59.6731 73 42C73 24.3269 58.6731 10 41 10C23.3269 10 9 24.3269 9 42ZM29.4529 18.5973C31.1347 18.0574 32.8641 17.5023 34.9844 16.6005C42.2533 13.5091 48.3526 11.9217 51.7782 14.094C53.5063 15.1899 54.4051 16.7749 55.6117 18.9024C56.7969 20.9922 58.279 23.6057 61.1358 26.7937C62.2737 28.0636 63.3886 29.2195 64.4371 30.3064C68.7007 34.7263 71.8645 38.0061 70.9949 43.1697C70.2965 47.316 67.9794 49.4559 65.6038 51.65C63.4317 53.656 61.2107 55.7073 60.1332 59.3786C57.8774 67.0653 53.5327 71.9113 48.3526 72.7468C43.1725 73.5823 36.6555 75.1698 29.8043 70.1567C26.1949 67.5157 25.229 64.3182 24.1947 60.894C23.2657 57.8184 22.2814 54.56 19.2768 51.3577C14.1619 45.9062 10.2533 29.6345 19.2768 23.0339C23.736 20.4327 26.5223 19.5382 29.4529 18.5973Z`,fill:e,"fill-opacity":`0.15`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M43.5 73.4212C40.4387 73.4212 35.0039 71.1025 37.556 56.4696C40.143 41.6365 42.6582 40.577 44.6991 25.744C46.3318 13.8775 41.1635 8.87964 33 10.9988`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M43.5 73.4212C40.4387 73.4212 35.0039 71.1025 37.556 56.4696C40.143 41.6365 42.6582 40.577 44.6991 25.744C46.3318 13.8775 41.1635 8.87964 33 10.9988`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M21.9366 68.1987C21.3549 66.5119 21.0386 60.9231 28.1376 53.3448C37.0114 43.8719 40.5 43.9579 51.4911 31.7482C59.5691 22.7747 59.1723 17.0524 58.0993 15.4626`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M9.26819 42.161C10.4003 43.5337 15.6951 46.3853 25.7661 44.3926C38.3548 41.9018 52.434 40.307 57.694 41.0287C70.352 42.7655 71.4138 51.3035 71.4138 51.3035`,stroke:e,"stroke-opacity":`0.35`}),R(`path`,{d:`M22 16.4916C18.815 21.85 19.6451 26.0591 27.9943 32.0828C38.4307 39.6124 50.2985 48.8304 53.5024 53.1027C58.6684 59.9914 59.5 67.928 59.5 67.928`,stroke:e,"stroke-opacity":`0.35`}),R(`rect`,{x:`9.26099`,y:`10`,width:`63.7129`,height:`63.7129`,rx:`31.8565`,stroke:e,"stroke-opacity":`0.43`,"stroke-width":`1.5`}),R(`g`,{"clip-path":`url(#clip0_7006_42127)`,children:[R(`circle`,{cx:`62.4996`,cy:`18.2032`,r:`15.0195`,transform:`rotate(6.27205 62.4996 18.2032)`,fill:t}),R(`path`,{d:`M60.7142 12.1753C62.057 10.0714 65.2294 10.4202 66.0833 12.7654L66.6158 14.2308L68.1251 14.6217C70.5415 15.2484 71.1908 18.3742 69.2237 19.911L67.9944 20.8704L68.0896 22.4262C68.2403 24.9178 65.4681 26.5011 63.3987 25.1056L62.1065 24.2326L60.6555 24.8041C58.3322 25.7172 55.9702 23.5694 56.6585 21.1698L57.0884 19.6717L56.0977 18.4684C54.5112 16.541 55.8231 13.6307 58.318 13.5438L59.8751 13.4899L60.7142 12.1753Z`,fill:n,stroke:t,"stroke-width":`3.27381`}),R(`path`,{d:`M63.925 5.23719C71.0867 6.02431 76.2545 12.4676 75.4676 19.6293C74.6805 26.7911 68.2364 31.959 61.0746 31.1718C53.9129 30.3845 48.7459 23.9406 49.533 16.7789C50.3203 9.61739 56.7634 4.45029 63.925 5.23719ZM63.6957 7.32326C57.6866 6.66302 52.2797 10.9991 51.6191 17.0082C50.9586 23.0174 55.2946 28.4251 61.3038 29.0858C67.3132 29.7462 72.7211 25.4094 73.3816 19.4C74.0418 13.3908 69.705 7.98372 63.6957 7.32326Z`,fill:n,stroke:t,"stroke-width":`0.3`,"stroke-linecap":`round`,"stroke-linejoin":`round`})]}),R(`ellipse`,{cx:`41`,cy:`85`,rx:`15`,ry:`3`,fill:e,"fill-opacity":`0.35`}),R(`defs`,{children:R(`clipPath`,{id:`clip0_7006_42127`,children:R(`rect`,{width:`33`,height:`33`,fill:`white`,transform:`translate(47.9012) rotate(6.27205)`})})})]})})}function NS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M15 3h6v6`}),R(`path`,{d:`m21 3-7 7`}),R(`path`,{d:`m3 21 7-7`}),R(`path`,{d:`M9 21H3v-6`})]})}function PS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`m14 10 7-7`}),R(`path`,{d:`M20 10h-6V4`}),R(`path`,{d:`m3 21 7-7`}),R(`path`,{d:`M4 14h6v6`})]})}function FS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:R(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})})}function IS(e){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`1em`,height:`1em`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,...e,children:[R(`path`,{d:`M18 6 6 18`}),R(`path`,{d:`m6 6 12 12`})]})}function LS(e){return R(Pb().value?RS:zS,{...e})}function RS({visible:e,className:t,grow:n,dep:r,...i}){return e?R(`div`,{className:Bb(n&&`grow`,t),...i}):null}function zS({visible:e,children:t,className:n,grow:r,dep:i,...a}){let[o,s]=hf(e),[c,l]=hf(null),[u,d]=hf(null),f=F(t);e&&(f.current=t);let p=I(t=>{l(t),t&&!e&&(t.style.width=`0px`,t.style.height=`0px`)},[]);_f(()=>{u&&(u.style.transition=`none`,u.style.opacity=`0`,u.offsetWidth,u.style.transition=``,u.style.opacity=``)},[i]),bf(()=>{c&&(c.style.width=`${c.offsetWidth}px`,c.style.height=`${c.offsetHeight}px`)},[c,e,i]),_f(()=>{if(!c||!u)return;e&&s(!0);let t=e?u.offsetWidth:0,n=e?u.offsetHeight:0;c.style.width=!e||c.offsetWidth!==t?`${t}px`:``,c.style.height=!e||c.offsetHeight!==n?`${n}px`:``},[c,u,e,i]);let{transitioning:m,handlers:h}=Fb({onEnd:()=>{e?(c.style.width=``,c.style.height=``):s(!1)}});return R(`div`,{ref:p,className:Bb(`relative inline-flex shrink-0 justify-center items-center transition-[opacity,width,height,transform,flex-grow] duration-200 min-w-0`,!e&&`opacity-0 scale-75`,e&&r&&`grow`,e&&o&&!m.value&&`z-1`),...h,children:R(`div`,{ref:d,className:Bb(`shrink-0 min-h-min min-w-min transition-opacity duration-200`,r&&`grow`,n),...a,children:(e||o)&&f.current})})}var BS={primary:`text-accent-primary border border-accent bg-accent hover:border-accent-hover hover:bg-accent-hover active:border-accent-active active:bg-accent-active`,secondary:`text-base-primary border border-base-border bg-base hover:bg-base-hover active:bg-base-active`,ghost:`text-base-primary border border-base bg-base hover:bg-base-hover hover:border-base-hover active:bg-base-active active:border-base-active`,"md-button":`text-base-primary border border-base-border bg-base hover:bg-base-hover active:bg-base-active text-sm h-6`},VS=Uf(function({variant:e=`secondary`,children:t,icon:n,className:r,iconClassName:i,truncate:a=!0,...o},s){let c=!!n&&!t;return R(`button`,{ref:s,className:sS(`h-9 flex px-2.5 text-sm items-center transition-[colors,opacity] justify-center rounded-button duration-200 focus-ring overflow-hidden select-none`,`disabled:opacity-50 disabled:pointer-events-none`,BS[e],c&&`min-w-9`,r),type:`button`,...o,children:[n&&R(gS,{className:sS(`transition-[margin] duration-200`,c&&`-mx-0.5`,e===`md-button`&&`text-sm`,i),name:n}),R(LS,{visible:!!t,dep:t,children:R(`span`,{className:sS(`block whitespace-nowrap max-w-64 truncate`,e===`md-button`?`pl-1.5`:`px-1.5`),children:t})})]})}),HS=(e,t)=>Array.from({length:t-e+1},(t,n)=>n+e),US=({isFilled:e,iconName:t})=>R(`span`,{className:Bb(`w-8 h-8 grid place-content-center`,e?`text-base-primary`:`text-base-border`),children:R(gS,{name:t,size:`lg`})}),WS=({value:e,rating:t,hoverRating:n,onClick:r,onHover:i,onKeyDown:a,iconName:o})=>{let s=t.value!==null&&e<=t.value,c=n.value!==null&&e<=n.value,l=I(t=>{t.stopPropagation(),r(e)},[r,e]),u=I(t=>{a(t,e)},[a,e]);return R(`button`,{type:`button`,role:`radio`,"aria-checked":s,"aria-label":e.toString(),onMouseEnter:()=>i(e),onClick:l,onKeyDown:u,className:Bb(`w-8 h-8 grid place-content-center rounded-full focus-ring transition-colors cursor-pointer`,s||c?`text-base-primary`:`text-base-border`),children:R(gS,{name:o,size:`lg`})})},GS=({onRate:e,min:t=1,max:n=5,ariaLabel:r,icon:i=`star`})=>{let a=mm(null),o=mm(null),s=HS(t,n),c=I(e=>{o.value=e},[o]),l=I(()=>{o.value=null},[o]),u=I(t=>{a.value=t,e(t)},[a,e]),d=I((r,i)=>{r.key===`Enter`||r.key===` `?(r.preventDefault(),a.value=i,e(i)):r.key===`ArrowLeft`||r.key===`ArrowDown`?(r.preventDefault(),i-1>=t&&(r.currentTarget?.previousElementSibling)?.focus()):(r.key===`ArrowRight`||r.key===`ArrowUp`)&&(r.preventDefault(),i+1<=n&&(r.currentTarget?.nextElementSibling)?.focus())},[a,e,t,n]);return R(`div`,{role:`radiogroup`,"aria-label":r,className:`flex no-wrap cursor-pointer`,onMouseLeave:l,children:s.map(e=>R(WS,{value:e,rating:a,hoverRating:o,onClick:u,onHover:c,onKeyDown:d,iconName:i},e))})};function KS({rating:e,min:t=1,max:n=5,icon:r=`star`}){let i=HS(t,n);return R(`div`,{className:`flex no-wrap`,role:`img`,"aria-label":`Rating: ${e} out of ${n}`,children:i.map(t=>R(US,{isFilled:e>=t,iconName:r},t))})}function qS({icon:e,onRate:t}){let n=ob();return R(`div`,{className:`flex flex-col items-center`,children:[R(`div`,{className:`text-sm text-base-primary font-medium`,children:n.initiate_feedback}),R(`div`,{className:`py-4`,children:R(GS,{onRate:t,ariaLabel:n.initiate_feedback,icon:e})})]})}function JS({icon:e,rating:t,showFollowUpButton:n,onFollowUpClick:r}){let i=ob();return R(`div`,{className:`flex flex-col items-center gap-3 mb-4`,children:[R(`div`,{className:`text-sm text-base-primary font-medium`,children:i.thanks_for_feedback}),R(KS,{rating:t,min:1,max:5,icon:e}),n&&R(VS,{variant:`secondary`,onClick:r,children:i.request_follow_up_feedback})]})}function YS({icon:e=`star`}){let{currentContent:t}=pS(),{rating:n,feedbackProgress:r,submitRating:i}=uS(),a=r.value!==`initial`&&n.value!==null,o=I(e=>{i(e),t.value=`feedback`},[i]),s=I(()=>{t.value=`feedback`},[]);return a?R(JS,{icon:e,rating:n.value??0,showFollowUpButton:r.value!==`submitted-follow-up`,onFollowUpClick:s}):R(qS,{icon:e,onRate:o})}var XS=/\[[\w\s]+\](?!\()\s*/g;function ZS(e){return e.replace(XS,``).trim()}var QS=typeof self==`object`?self:globalThis,$S=(e,t)=>{switch(e){case`Function`:case`SharedWorker`:case`Worker`:case`eval`:case`setInterval`:case`setTimeout`:throw TypeError(`unable to deserialize `+e)}return new QS[e](t)},eC=(e,t)=>{let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o;return n($S(e,t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}return n($S(a,o),i)};return r},tC=e=>eC(new Map,e)(0),nC=``,{toString:rC}={},{keys:iC}=Object,aC=e=>{let t=typeof e;if(t!==`object`||!e)return[0,t];let n=rC.call(e).slice(8,-1);switch(n){case`Array`:return[1,nC];case`Object`:return[2,nC];case`Date`:return[3,nC];case`RegExp`:return[4,nC];case`Map`:return[5,nC];case`Set`:return[6,nC];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:n.includes(`Error`)?[7,n]:[2,n]},oC=([e,t])=>e===0&&(t===`function`||t===`symbol`),sC=(e,t,n,r)=>{let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=aC(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize `+s);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of iC(r))(e||!oC(aC(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(oC(aC(n))||oC(aC(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!oC(aC(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a},cC=(e,{json:t,lossy:n}={})=>{let r=[];return sC(!(t||n),!!t,new Map,r)(e),r},lC=typeof structuredClone==`function`?(e,t)=>t&&(`json`in t||`lossy`in t)?tC(cC(e,t)):structuredClone(e):(e,t)=>tC(cC(e,t)),uC=fC(`end`),dC=fC(`start`);function fC(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function pC(e){let t=dC(e),n=uC(e);if(t&&n)return{start:t,end:n}}var mC=[`ariaDescribedBy`,`ariaLabel`,`ariaLabelledBy`],hC={ancestors:{tbody:[`table`],td:[`table`],th:[`table`],thead:[`table`],tfoot:[`table`],tr:[`table`]},attributes:{a:[...mC,`dataFootnoteBackref`,`dataFootnoteRef`,[`className`,`data-footnote-backref`],`href`],blockquote:[`cite`],code:[[`className`,/^language-./]],del:[`cite`],div:[`itemScope`,`itemType`],dl:[...mC],h2:[[`className`,`sr-only`]],img:[...mC,`longDesc`,`src`],input:[[`disabled`,!0],[`type`,`checkbox`]],ins:[`cite`],li:[[`className`,`task-list-item`]],ol:[...mC,[`className`,`contains-task-list`]],q:[`cite`],section:[`dataFootnotes`,[`className`,`footnotes`]],source:[`srcSet`],summary:[...mC],table:[...mC],ul:[...mC,[`className`,`contains-task-list`]],"*":`abbr.accept.acceptCharset.accessKey.action.align.alt.axis.border.cellPadding.cellSpacing.char.charOff.charSet.checked.clear.colSpan.color.cols.compact.coords.dateTime.dir.encType.frame.hSpace.headers.height.hrefLang.htmlFor.id.isMap.itemProp.label.lang.maxLength.media.method.multiple.name.noHref.noShade.noWrap.open.prompt.readOnly.rev.rowSpan.rows.rules.scope.selected.shape.size.span.start.summary.tabIndex.title.useMap.vAlign.value.width`.split(`.`)},clobber:[`ariaDescribedBy`,`ariaLabelledBy`,`id`,`name`],clobberPrefix:`user-content-`,protocols:{cite:[`http`,`https`],href:[`http`,`https`,`irc`,`ircs`,`mailto`,`xmpp`],longDesc:[`http`,`https`],src:[`http`,`https`]},required:{input:{disabled:!0,type:`checkbox`}},strip:[`script`],tagNames:`a.b.blockquote.br.code.dd.del.details.div.dl.dt.em.h1.h2.h3.h4.h5.h6.hr.i.img.input.ins.kbd.li.ol.p.picture.pre.q.rp.rt.ruby.s.samp.section.source.span.strike.strong.sub.summary.sup.table.tbody.td.tfoot.th.thead.tr.tt.ul.var`.split(`.`)},gC={}.hasOwnProperty;function _C(e,t){let n={type:`root`,children:[]},r=vC({schema:t?{...hC,...t}:hC,stack:[]},e);return r&&(Array.isArray(r)?r.length===1?n=r[0]:n.children=r:n=r),n}function vC(e,t){if(t&&typeof t==`object`){let n=t;switch(typeof n.type==`string`?n.type:``){case`comment`:return yC(e,n);case`doctype`:return bC(e,n);case`element`:return xC(e,n);case`root`:return SC(e,n);case`text`:return CC(e,n);default:}}}function yC(e,t){if(e.schema.allowComments){let e=typeof t.value==`string`?t.value:``,n=e.indexOf(`-->`),r={type:`comment`,value:n<0?e:e.slice(0,n)};return AC(r,t),r}}function bC(e,t){if(e.schema.allowDoctypes){let e={type:`doctype`};return AC(e,t),e}}function xC(e,t){let n=typeof t.tagName==`string`?t.tagName:``;e.stack.push(n);let r=wC(e,t.children),i=TC(e,t.properties);e.stack.pop();let a=!1;if(n&&n!==`*`&&(!e.schema.tagNames||e.schema.tagNames.includes(n))&&(a=!0,e.schema.ancestors&&gC.call(e.schema.ancestors,n))){let t=e.schema.ancestors[n],r=-1;for(a=!1;++r<t.length;)e.stack.includes(t[r])&&(a=!0)}if(!a)return e.schema.strip&&!e.schema.strip.includes(n)?r:void 0;let o={type:`element`,tagName:n,properties:i,children:r};return AC(o,t),o}function SC(e,t){let n={type:`root`,children:wC(e,t.children)};return AC(n,t),n}function CC(e,t){let n={type:`text`,value:typeof t.value==`string`?t.value:``};return AC(n,t),n}function wC(e,t){let n=[];if(Array.isArray(t)){let r=t,i=-1;for(;++i<r.length;){let t=vC(e,r[i]);t&&(Array.isArray(t)?n.push(...t):n.push(t))}}return n}function TC(e,t){let n=e.stack[e.stack.length-1],r=e.schema.attributes,i=e.schema.required,a=r&&gC.call(r,n)?r[n]:void 0,o=r&&gC.call(r,`*`)?r[`*`]:void 0,s=t&&typeof t==`object`?t:{},c={},l;for(l in s)if(gC.call(s,l)){let t=s[l],n=EC(e,jC(a,l),l,t);n??=EC(e,jC(o,l),l,t),n!=null&&(c[l]=n)}if(i&&gC.call(i,n)){let e=i[n];for(l in e)gC.call(e,l)&&!gC.call(c,l)&&(c[l]=e[l])}return c}function EC(e,t,n,r){return t?Array.isArray(r)?DC(e,t,n,r):OC(e,t,n,r):void 0}function DC(e,t,n,r){let i=-1,a=[];for(;++i<r.length;){let o=OC(e,t,n,r[i]);(typeof o==`number`||typeof o==`string`)&&a.push(o)}return a}function OC(e,t,n,r){if(!(typeof r!=`boolean`&&typeof r!=`number`&&typeof r!=`string`)&&kC(e,n,r)){if(typeof t==`object`&&t.length>1){let e=!1,n=0;for(;++n<t.length;){let i=t[n];if(i&&typeof i==`object`&&`flags`in i){if(i.test(String(r))){e=!0;break}}else if(i===r){e=!0;break}}if(!e)return}return e.schema.clobber&&e.schema.clobberPrefix&&e.schema.clobber.includes(n)?e.schema.clobberPrefix+r:r}}function kC(e,t,n){let r=e.schema.protocols&&gC.call(e.schema.protocols,t)?e.schema.protocols[t]:void 0;if(!r||r.length===0)return!0;let i=String(n),a=i.indexOf(`:`),o=i.indexOf(`?`),s=i.indexOf(`#`),c=i.indexOf(`/`);if(a<0||c>-1&&a>c||o>-1&&a>o||s>-1&&a>s)return!0;let l=-1;for(;++l<r.length;){let e=r[l];if(a===e.length&&i.slice(0,e.length)===e)return!0}return!1}function AC(e,t){let n=pC(t);t.data&&(e.data=lC(t.data)),n&&(e.position=n)}function jC(e,t){let n,r=-1;if(e)for(;++r<e.length;){let i=e[r],a=typeof i==`string`?i:i[0];if(a===t)return i;a===`data*`&&(n=i)}if(t.length>4&&t.slice(0,4).toLowerCase()===`data`)return n}function MC(e){return function(t){return _C(t,e)}}var NC=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};NC.prototype.normal={},NC.prototype.property={},NC.prototype.space=void 0;function PC(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new NC(n,r,t)}function FC(e){return e.toLowerCase()}var IC=class{constructor(e,t){this.attribute=t,this.property=e}};IC.prototype.attribute=``,IC.prototype.booleanish=!1,IC.prototype.boolean=!1,IC.prototype.commaOrSpaceSeparated=!1,IC.prototype.commaSeparated=!1,IC.prototype.defined=!1,IC.prototype.mustUseProperty=!1,IC.prototype.number=!1,IC.prototype.overloadedBoolean=!1,IC.prototype.property=``,IC.prototype.spaceSeparated=!1,IC.prototype.space=void 0;var LC=Bm({boolean:()=>zC,booleanish:()=>BC,commaOrSpaceSeparated:()=>WC,commaSeparated:()=>UC,number:()=>V,overloadedBoolean:()=>VC,spaceSeparated:()=>HC}),RC=0,zC=GC(),BC=GC(),VC=GC(),V=GC(),HC=GC(),UC=GC(),WC=GC();function GC(){return 2**++RC}var KC=Object.keys(LC),qC=class extends IC{constructor(e,t,n,r){let i=-1;if(super(e,t),JC(this,`space`,r),typeof n==`number`)for(;++i<KC.length;){let e=KC[i];JC(this,KC[i],(n&LC[e])===LC[e])}}};qC.prototype.defined=!0;function JC(e,t,n){n&&(e[t]=n)}function YC(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new qC(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[FC(r)]=r,n[FC(a.attribute)]=r}return new NC(t,n,e.space)}var XC=YC({properties:{ariaActiveDescendant:null,ariaAtomic:BC,ariaAutoComplete:null,ariaBusy:BC,ariaChecked:BC,ariaColCount:V,ariaColIndex:V,ariaColSpan:V,ariaControls:HC,ariaCurrent:null,ariaDescribedBy:HC,ariaDetails:null,ariaDisabled:BC,ariaDropEffect:HC,ariaErrorMessage:null,ariaExpanded:BC,ariaFlowTo:HC,ariaGrabbed:BC,ariaHasPopup:null,ariaHidden:BC,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:HC,ariaLevel:V,ariaLive:null,ariaModal:BC,ariaMultiLine:BC,ariaMultiSelectable:BC,ariaOrientation:null,ariaOwns:HC,ariaPlaceholder:null,ariaPosInSet:V,ariaPressed:BC,ariaReadOnly:BC,ariaRelevant:null,ariaRequired:BC,ariaRoleDescription:HC,ariaRowCount:V,ariaRowIndex:V,ariaRowSpan:V,ariaSelected:BC,ariaSetSize:V,ariaSort:null,ariaValueMax:V,ariaValueMin:V,ariaValueNow:V,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function ZC(e,t){return t in e?e[t]:t}function QC(e,t){return ZC(e,t.toLowerCase())}var $C=YC({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:UC,acceptCharset:HC,accessKey:HC,action:null,allow:null,allowFullScreen:zC,allowPaymentRequest:zC,allowUserMedia:zC,alt:null,as:null,async:zC,autoCapitalize:null,autoComplete:HC,autoFocus:zC,autoPlay:zC,blocking:HC,capture:null,charSet:null,checked:zC,cite:null,className:HC,cols:V,colSpan:null,content:null,contentEditable:BC,controls:zC,controlsList:HC,coords:V|UC,crossOrigin:null,data:null,dateTime:null,decoding:null,default:zC,defer:zC,dir:null,dirName:null,disabled:zC,download:VC,draggable:BC,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:zC,formTarget:null,headers:HC,height:V,hidden:VC,high:V,href:null,hrefLang:null,htmlFor:HC,httpEquiv:HC,id:null,imageSizes:null,imageSrcSet:null,inert:zC,inputMode:null,integrity:null,is:null,isMap:zC,itemId:null,itemProp:HC,itemRef:HC,itemScope:zC,itemType:HC,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:zC,low:V,manifest:null,max:null,maxLength:V,media:null,method:null,min:null,minLength:V,multiple:zC,muted:zC,name:null,nonce:null,noModule:zC,noValidate:zC,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:zC,optimum:V,pattern:null,ping:HC,placeholder:null,playsInline:zC,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:zC,referrerPolicy:null,rel:HC,required:zC,reversed:zC,rows:V,rowSpan:V,sandbox:HC,scope:null,scoped:zC,seamless:zC,selected:zC,shadowRootClonable:zC,shadowRootDelegatesFocus:zC,shadowRootMode:null,shape:null,size:V,sizes:null,slot:null,span:V,spellCheck:BC,src:null,srcDoc:null,srcLang:null,srcSet:null,start:V,step:null,style:null,tabIndex:V,target:null,title:null,translate:null,type:null,typeMustMatch:zC,useMap:null,value:BC,width:V,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:HC,axis:null,background:null,bgColor:null,border:V,borderColor:null,bottomMargin:V,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:zC,declare:zC,event:null,face:null,frame:null,frameBorder:null,hSpace:V,leftMargin:V,link:null,longDesc:null,lowSrc:null,marginHeight:V,marginWidth:V,noResize:zC,noHref:zC,noShade:zC,noWrap:zC,object:null,profile:null,prompt:null,rev:null,rightMargin:V,rules:null,scheme:null,scrolling:BC,standby:null,summary:null,text:null,topMargin:V,valueType:null,version:null,vAlign:null,vLink:null,vSpace:V,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:zC,disableRemotePlayback:zC,prefix:null,property:null,results:V,security:null,unselectable:null},space:`html`,transform:QC}),ew=YC({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,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`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,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`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,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`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:WC,accentHeight:V,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:V,amplitude:V,arabicForm:null,ascent:V,attributeName:null,attributeType:null,azimuth:V,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:V,by:null,calcMode:null,capHeight:V,className:HC,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:V,diffuseConstant:V,direction:null,display:null,dur:null,divisor:V,dominantBaseline:null,download:zC,dx:null,dy:null,edgeMode:null,editable:null,elevation:V,enableBackground:null,end:null,event:null,exponent:V,externalResourcesRequired:null,fill:null,fillOpacity:V,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:UC,g2:UC,glyphName:UC,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:V,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:V,horizOriginX:V,horizOriginY:V,id:null,ideographic:V,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:V,k:V,k1:V,k2:V,k3:V,k4:V,kernelMatrix:WC,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:V,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:V,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:V,overlineThickness:V,paintOrder:null,panose1:null,path:null,pathLength:V,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:HC,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:V,pointsAtY:V,pointsAtZ:V,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:WC,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:WC,rev:WC,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:WC,requiredFeatures:WC,requiredFonts:WC,requiredFormats:WC,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:V,specularExponent:V,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:V,strikethroughThickness:V,string:null,stroke:null,strokeDashArray:WC,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:V,strokeOpacity:V,strokeWidth:null,style:null,surfaceScale:V,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:WC,tabIndex:V,tableValues:null,target:null,targetX:V,targetY:V,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:WC,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:V,underlineThickness:V,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:V,values:null,vAlphabetic:V,vMathematical:V,vectorEffect:null,vHanging:V,vIdeographic:V,version:null,vertAdvY:V,vertOriginX:V,vertOriginY:V,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:V,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:ZC}),tw=YC({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),nw=YC({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:QC}),rw=YC({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),iw={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},aw=/[A-Z]/g,ow=/-[a-z]/g,sw=/^data[-\w.:]+$/i;function cw(e,t){let n=FC(t),r=t,i=IC;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&sw.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(ow,uw);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!ow.test(e)){let n=e.replace(aw,lw);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=qC}return new i(r,t)}function lw(e){return`-`+e.toLowerCase()}function uw(e){return e.charAt(1).toUpperCase()}var dw=PC([XC,$C,tw,nw,rw],`html`),fw=PC([XC,ew,tw,nw,rw],`svg`);function pw(e){let t=[],n=String(e||``),r=n.indexOf(`,`),i=0,a=!1;for(;!a;){r===-1&&(r=n.length,a=!0);let e=n.slice(i,r).trim();(e||!a)&&t.push(e),i=r+1,r=n.indexOf(`,`,i)}return t}function mw(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var hw=/[#.]/g;function gw(e,t){let n=e||``,r={},i=0,a,o;for(;i<n.length;){hw.lastIndex=i;let e=hw.exec(n),t=n.slice(i,e?e.index:n.length);t&&(a?a===`#`?r.id=t:Array.isArray(r.className)?r.className.push(t):r.className=[t]:o=t,i+=t.length),e&&(a=e[0],i++)}return{type:`element`,tagName:o||t||`div`,properties:r,children:[]}}function _w(e){let t=String(e||``).trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function vw(e){return e.join(` `).trim()}function yw(e,t,n){let r=n?Tw(n):void 0;function i(n,i,...a){let o;if(n==null){o={type:`root`,children:[]};let e=i;a.unshift(e)}else{o=gw(n,t);let s=o.tagName.toLowerCase(),c=r?r.get(s):void 0;if(o.tagName=c||s,bw(i))a.unshift(i);else for(let[t,n]of Object.entries(i))xw(e,o.properties,t,n)}for(let e of a)Sw(o.children,e);return o.type===`element`&&o.tagName===`template`&&(o.content={type:`root`,children:o.children},o.children=[]),o}return i}function bw(e){if(typeof e!=`object`||!e||Array.isArray(e))return!0;if(typeof e.type!=`string`)return!1;let t=e,n=Object.keys(e);for(let e of n){let n=t[e];if(n&&typeof n==`object`){if(!Array.isArray(n))return!0;let e=n;for(let t of e)if(typeof t!=`number`&&typeof t!=`string`)return!0}}return!!(`children`in e&&Array.isArray(e.children))}function xw(e,t,n,r){let i=cw(e,n),a;if(r!=null){if(typeof r==`number`){if(Number.isNaN(r))return;a=r}else a=typeof r==`boolean`?r:typeof r==`string`?i.spaceSeparated?_w(r):i.commaSeparated?pw(r):i.commaOrSpaceSeparated?_w(pw(r).join(` `)):Cw(i,i.property,r):Array.isArray(r)?[...r]:i.property===`style`?ww(r):String(r);if(Array.isArray(a)){let e=[];for(let t of a)e.push(Cw(i,i.property,t));a=e}i.property===`className`&&Array.isArray(t.className)&&(a=t.className.concat(a)),t[i.property]=a}}function Sw(e,t){if(t!=null)if(typeof t==`number`||typeof t==`string`)e.push({type:`text`,value:String(t)});else if(Array.isArray(t))for(let n of t)Sw(e,n);else if(typeof t==`object`&&`type`in t)t.type===`root`?Sw(e,t.children):e.push(t);else throw Error("Expected node, nodes, or string, got `"+t+"`")}function Cw(e,t,n){if(typeof n==`string`){if(e.number&&n&&!Number.isNaN(Number(n)))return Number(n);if((e.boolean||e.overloadedBoolean)&&(n===``||FC(n)===FC(t)))return!0}return n}function ww(e){let t=[];for(let[n,r]of Object.entries(e))t.push([n,r].join(`: `));return t.join(`; `)}function Tw(e){let t=new Map;for(let n of e)t.set(n.toLowerCase(),n);return t}var Ew=`altGlyph.altGlyphDef.altGlyphItem.animateColor.animateMotion.animateTransform.clipPath.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feDropShadow.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.foreignObject.glyphRef.linearGradient.radialGradient.solidColor.textArea.textPath`.split(`.`),Dw=yw(dw,`div`),Ow=yw(fw,`g`,Ew);function kw(e){let t=String(e),n=[];return{toOffset:i,toPoint:r};function r(e){if(typeof e==`number`&&e>-1&&e<=t.length){let r=0;for(;;){let i=n[r];if(i===void 0){let e=Aw(t,n[r-1]);i=e===-1?t.length+1:e+1,n[r]=i}if(i>e)return{line:r+1,column:e-(r>0?n[r-1]:0)+1,offset:e};r++}}}function i(e){if(e&&typeof e.line==`number`&&typeof e.column==`number`&&!Number.isNaN(e.line)&&!Number.isNaN(e.column)){for(;n.length<e.line;){let e=n[n.length-1],r=Aw(t,e),i=r===-1?t.length+1:r+1;if(e===i)break;n.push(i)}let r=(e.line>1?n[e.line-2]:0)+e.column-1;if(r<n[e.line-1])return r}}}function Aw(e,t){let n=e.indexOf(`\r`,t),r=e.indexOf(`
|
|
277
277
|
`,t);return r===-1?n:n===-1||n+1===r?r:n<r?n:r}var jw={html:`http://www.w3.org/1999/xhtml`,mathml:`http://www.w3.org/1998/Math/MathML`,svg:`http://www.w3.org/2000/svg`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`},Mw={}.hasOwnProperty,Nw=Object.prototype;function Pw(e,t){let n=t||{};return Fw({file:n.file||void 0,location:!1,schema:n.space===`svg`?fw:dw,verbose:n.verbose||!1},e)}function Fw(e,t){let n;switch(t.nodeName){case`#comment`:{let r=t;return n={type:`comment`,value:r.data},Rw(e,r,n),n}case`#document`:case`#document-fragment`:{let r=t,i=`mode`in r?r.mode===`quirks`||r.mode===`limited-quirks`:!1;if(n={type:`root`,children:Iw(e,t.childNodes),data:{quirksMode:i}},e.file&&e.location){let t=String(e.file),r=kw(t),i=r.toPoint(0),a=r.toPoint(t.length);n.position={start:i,end:a}}return n}case`#documentType`:{let r=t;return n={type:`doctype`},Rw(e,r,n),n}case`#text`:{let r=t;return n={type:`text`,value:r.value},Rw(e,r,n),n}default:return n=Lw(e,t),n}}function Iw(e,t){let n=-1,r=[];for(;++n<t.length;){let i=Fw(e,t[n]);r.push(i)}return r}function Lw(e,t){let n=e.schema;e.schema=t.namespaceURI===jw.svg?fw:dw;let r=-1,i={};for(;++r<t.attrs.length;){let e=t.attrs[r],n=(e.prefix?e.prefix+`:`:``)+e.name;Mw.call(Nw,n)||(i[n]=e.value)}let a=(e.schema.space===`svg`?Ow:Dw)(t.tagName,i,Iw(e,t.childNodes));if(Rw(e,t,a),a.tagName===`template`){let n=t,r=n.sourceCodeLocation,i=r&&r.startTag&&Bw(r.startTag),o=r&&r.endTag&&Bw(r.endTag),s=Fw(e,n.content);i&&o&&e.file&&(s.position={start:i.end,end:o.start}),a.content=s}return e.schema=n,a}function Rw(e,t,n){if(`sourceCodeLocation`in t&&t.sourceCodeLocation&&e.file){let r=zw(e,n,t.sourceCodeLocation);r&&(e.location=!0,n.position=r)}}function zw(e,t,n){let r=Bw(n);if(t.type===`element`){let i=t.children[t.children.length-1];if(r&&!n.endTag&&i&&i.position&&i.position.end&&(r.end=Object.assign({},i.position.end)),e.verbose){let r={},i;if(n.attrs)for(i in n.attrs)Mw.call(n.attrs,i)&&(r[cw(e.schema,i).property]=Bw(n.attrs[i]));n.startTag;let a=Bw(n.startTag),o=n.endTag?Bw(n.endTag):void 0,s={opening:a};o&&(s.closing=o),s.properties=r,t.data={position:s}}}return r}function Bw(e){let t=Vw({line:e.startLine,column:e.startCol,offset:e.startOffset}),n=Vw({line:e.endLine,column:e.endCol,offset:e.endOffset});return t||n?{start:t,end:n}:void 0}function Vw(e){return e.line&&e.column?e:void 0}var Hw={}.hasOwnProperty;function Uw(e,t){let n=t||{};function r(t,...n){let i=r.invalid,a=r.handlers;if(t&&Hw.call(t,e)){let n=String(t[e]);i=Hw.call(a,n)?a[n]:r.unknown}if(i)return i.call(this,t,...n)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}var Ww={},Gw={}.hasOwnProperty,Kw=Uw(`type`,{handlers:{root:Jw,element:$w,text:Zw,comment:Qw,doctype:Xw}});function qw(e,t){let n=(t||Ww).space;return Kw(e,n===`svg`?fw:dw)}function Jw(e,t){let n={nodeName:`#document`,mode:(e.data||{}).quirksMode?`quirks`:`no-quirks`,childNodes:[]};return n.childNodes=tT(e.children,n,t),nT(e,n),n}function Yw(e,t){let n={nodeName:`#document-fragment`,childNodes:[]};return n.childNodes=tT(e.children,n,t),nT(e,n),n}function Xw(e){let t={nodeName:`#documentType`,name:`html`,publicId:``,systemId:``,parentNode:null};return nT(e,t),t}function Zw(e){let t={nodeName:`#text`,value:e.value,parentNode:null};return nT(e,t),t}function Qw(e){let t={nodeName:`#comment`,data:e.value,parentNode:null};return nT(e,t),t}function $w(e,t){let n=t,r=n;e.type===`element`&&e.tagName.toLowerCase()===`svg`&&n.space===`html`&&(r=fw);let i=[],a;if(e.properties){for(a in e.properties)if(a!==`children`&&Gw.call(e.properties,a)){let t=eT(r,a,e.properties[a]);t&&i.push(t)}}let o=r.space,s={nodeName:e.tagName,tagName:e.tagName,attrs:i,namespaceURI:jw[o],childNodes:[],parentNode:null};return s.childNodes=tT(e.children,s,r),nT(e,s),e.tagName===`template`&&e.content&&(s.content=Yw(e.content,r)),s}function eT(e,t,n){let r=cw(e,t);if(n===!1||n==null||typeof n==`number`&&Number.isNaN(n)||!n&&r.boolean)return;Array.isArray(n)&&(n=r.commaSeparated?mw(n):vw(n));let i={name:r.attribute,value:n===!0?``:String(n)};if(r.space&&r.space!==`html`&&r.space!==`svg`){let e=i.name.indexOf(`:`);e<0?i.prefix=``:(i.name=i.name.slice(e+1),i.prefix=r.attribute.slice(0,e)),i.namespace=jw[r.space]}return i}function tT(e,t,n){let r=-1,i=[];if(e)for(;++r<e.length;){let a=Kw(e[r],n);a.parentNode=t,i.push(a)}return i}function nT(e,t){let n=e.position;n&&n.start&&n.end&&(n.start.offset,n.end.offset,t.sourceCodeLocation={startLine:n.start.line,startCol:n.start.column,startOffset:n.start.offset,endLine:n.end.line,endCol:n.end.column,endOffset:n.end.offset})}var rT=[`area`,`base`,`basefont`,`bgsound`,`br`,`col`,`command`,`embed`,`frame`,`hr`,`image`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`],iT=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]),H;(function(e){e[e.EOF=-1]=`EOF`,e[e.NULL=0]=`NULL`,e[e.TABULATION=9]=`TABULATION`,e[e.CARRIAGE_RETURN=13]=`CARRIAGE_RETURN`,e[e.LINE_FEED=10]=`LINE_FEED`,e[e.FORM_FEED=12]=`FORM_FEED`,e[e.SPACE=32]=`SPACE`,e[e.EXCLAMATION_MARK=33]=`EXCLAMATION_MARK`,e[e.QUOTATION_MARK=34]=`QUOTATION_MARK`,e[e.AMPERSAND=38]=`AMPERSAND`,e[e.APOSTROPHE=39]=`APOSTROPHE`,e[e.HYPHEN_MINUS=45]=`HYPHEN_MINUS`,e[e.SOLIDUS=47]=`SOLIDUS`,e[e.DIGIT_0=48]=`DIGIT_0`,e[e.DIGIT_9=57]=`DIGIT_9`,e[e.SEMICOLON=59]=`SEMICOLON`,e[e.LESS_THAN_SIGN=60]=`LESS_THAN_SIGN`,e[e.EQUALS_SIGN=61]=`EQUALS_SIGN`,e[e.GREATER_THAN_SIGN=62]=`GREATER_THAN_SIGN`,e[e.QUESTION_MARK=63]=`QUESTION_MARK`,e[e.LATIN_CAPITAL_A=65]=`LATIN_CAPITAL_A`,e[e.LATIN_CAPITAL_Z=90]=`LATIN_CAPITAL_Z`,e[e.RIGHT_SQUARE_BRACKET=93]=`RIGHT_SQUARE_BRACKET`,e[e.GRAVE_ACCENT=96]=`GRAVE_ACCENT`,e[e.LATIN_SMALL_A=97]=`LATIN_SMALL_A`,e[e.LATIN_SMALL_Z=122]=`LATIN_SMALL_Z`})(H||={});var aT={DASH_DASH:`--`,CDATA_START:`[CDATA[`,DOCTYPE:`doctype`,SCRIPT:`script`,PUBLIC:`public`,SYSTEM:`system`};function oT(e){return e>=55296&&e<=57343}function sT(e){return e>=56320&&e<=57343}function cT(e,t){return(e-55296)*1024+9216+t}function lT(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159}function uT(e){return e>=64976&&e<=65007||iT.has(e)}var U;(function(e){e.controlCharacterInInputStream=`control-character-in-input-stream`,e.noncharacterInInputStream=`noncharacter-in-input-stream`,e.surrogateInInputStream=`surrogate-in-input-stream`,e.nonVoidHtmlElementStartTagWithTrailingSolidus=`non-void-html-element-start-tag-with-trailing-solidus`,e.endTagWithAttributes=`end-tag-with-attributes`,e.endTagWithTrailingSolidus=`end-tag-with-trailing-solidus`,e.unexpectedSolidusInTag=`unexpected-solidus-in-tag`,e.unexpectedNullCharacter=`unexpected-null-character`,e.unexpectedQuestionMarkInsteadOfTagName=`unexpected-question-mark-instead-of-tag-name`,e.invalidFirstCharacterOfTagName=`invalid-first-character-of-tag-name`,e.unexpectedEqualsSignBeforeAttributeName=`unexpected-equals-sign-before-attribute-name`,e.missingEndTagName=`missing-end-tag-name`,e.unexpectedCharacterInAttributeName=`unexpected-character-in-attribute-name`,e.unknownNamedCharacterReference=`unknown-named-character-reference`,e.missingSemicolonAfterCharacterReference=`missing-semicolon-after-character-reference`,e.unexpectedCharacterAfterDoctypeSystemIdentifier=`unexpected-character-after-doctype-system-identifier`,e.unexpectedCharacterInUnquotedAttributeValue=`unexpected-character-in-unquoted-attribute-value`,e.eofBeforeTagName=`eof-before-tag-name`,e.eofInTag=`eof-in-tag`,e.missingAttributeValue=`missing-attribute-value`,e.missingWhitespaceBetweenAttributes=`missing-whitespace-between-attributes`,e.missingWhitespaceAfterDoctypePublicKeyword=`missing-whitespace-after-doctype-public-keyword`,e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers=`missing-whitespace-between-doctype-public-and-system-identifiers`,e.missingWhitespaceAfterDoctypeSystemKeyword=`missing-whitespace-after-doctype-system-keyword`,e.missingQuoteBeforeDoctypePublicIdentifier=`missing-quote-before-doctype-public-identifier`,e.missingQuoteBeforeDoctypeSystemIdentifier=`missing-quote-before-doctype-system-identifier`,e.missingDoctypePublicIdentifier=`missing-doctype-public-identifier`,e.missingDoctypeSystemIdentifier=`missing-doctype-system-identifier`,e.abruptDoctypePublicIdentifier=`abrupt-doctype-public-identifier`,e.abruptDoctypeSystemIdentifier=`abrupt-doctype-system-identifier`,e.cdataInHtmlContent=`cdata-in-html-content`,e.incorrectlyOpenedComment=`incorrectly-opened-comment`,e.eofInScriptHtmlCommentLikeText=`eof-in-script-html-comment-like-text`,e.eofInDoctype=`eof-in-doctype`,e.nestedComment=`nested-comment`,e.abruptClosingOfEmptyComment=`abrupt-closing-of-empty-comment`,e.eofInComment=`eof-in-comment`,e.incorrectlyClosedComment=`incorrectly-closed-comment`,e.eofInCdata=`eof-in-cdata`,e.absenceOfDigitsInNumericCharacterReference=`absence-of-digits-in-numeric-character-reference`,e.nullCharacterReference=`null-character-reference`,e.surrogateCharacterReference=`surrogate-character-reference`,e.characterReferenceOutsideUnicodeRange=`character-reference-outside-unicode-range`,e.controlCharacterReference=`control-character-reference`,e.noncharacterCharacterReference=`noncharacter-character-reference`,e.missingWhitespaceBeforeDoctypeName=`missing-whitespace-before-doctype-name`,e.missingDoctypeName=`missing-doctype-name`,e.invalidCharacterSequenceAfterDoctypeName=`invalid-character-sequence-after-doctype-name`,e.duplicateAttribute=`duplicate-attribute`,e.nonConformingDoctype=`non-conforming-doctype`,e.missingDoctype=`missing-doctype`,e.misplacedDoctype=`misplaced-doctype`,e.endTagWithoutMatchingOpenElement=`end-tag-without-matching-open-element`,e.closingOfElementWithOpenChildElements=`closing-of-element-with-open-child-elements`,e.disallowedContentInNoscriptInHead=`disallowed-content-in-noscript-in-head`,e.openElementsLeftAfterEof=`open-elements-left-after-eof`,e.abandonedHeadElementChild=`abandoned-head-element-child`,e.misplacedStartTagForHeadElement=`misplaced-start-tag-for-head-element`,e.nestedNoscriptInHead=`nested-noscript-in-head`,e.eofInElementThatCanContainOnlyText=`eof-in-element-that-can-contain-only-text`})(U||={});var dT=65536,fT=class{constructor(e){this.handler=e,this.html=``,this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=dT,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+Number(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e,t){let{line:n,col:r,offset:i}=this,a=r+t,o=i+t;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let t=this.html.charCodeAt(this.pos+1);if(sT(t))return this.pos++,this._addGap(),cT(e,t)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,H.EOF;return this._err(U.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,t){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=t}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,t){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(t)return this.html.startsWith(e,this.pos);for(let t=0;t<e.length;t++)if((this.html.charCodeAt(this.pos+t)|32)!==e.charCodeAt(t))return!1;return!0}peek(e){let t=this.pos+e;if(t>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let n=this.html.charCodeAt(t);return n===H.CARRIAGE_RETURN?H.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let e=this.html.charCodeAt(this.pos);return e===H.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,H.LINE_FEED):e===H.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,oT(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===H.LINE_FEED||e===H.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){lT(e)?this._err(U.controlCharacterInInputStream):uT(e)&&this._err(U.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}},pT;(function(e){e[e.CHARACTER=0]=`CHARACTER`,e[e.NULL_CHARACTER=1]=`NULL_CHARACTER`,e[e.WHITESPACE_CHARACTER=2]=`WHITESPACE_CHARACTER`,e[e.START_TAG=3]=`START_TAG`,e[e.END_TAG=4]=`END_TAG`,e[e.COMMENT=5]=`COMMENT`,e[e.DOCTYPE=6]=`DOCTYPE`,e[e.EOF=7]=`EOF`,e[e.HIBERNATION=8]=`HIBERNATION`})(pT||={});function mT(e,t){for(let n=e.attrs.length-1;n>=0;n--)if(e.attrs[n].name===t)return e.attrs[n].value;return null}var hT=new Uint16Array(`ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲϏϢϸontourIntegraìȹoɴ\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲy;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱còJTabcdfgorstרׯؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ߂ߐĀiyޱrc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣসে্ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४ĀnrࢃgleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpwਖਛgȀLRlr৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼અઋp;椅y;䐜Ādl੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑඞcy;䐊cute;䅃ƀaeyહાron;䅇dil;䅅;䐝ƀgswે૰ativeƀMTV૨ediumSpace;怋hiĀcn૦ëeryThiîtedĀGLଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷreak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater;EFGLSTஶஷ扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨setĀ;Eೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂෛ෧ขภยา฿ไlig;䅒cute耻Ó䃓Āiyීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲcr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬืde耻Õ䃕es;樷ml耻Ö䃖erĀBP๋Āar๐๓r;怾acĀek๚;揞et;掴arenthesis;揜ҀacfhilorsງຊຏຒດຝະrtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ檻cedesȀ;EST່້扺qual;檯lantEqual;扼ilde;找me;怳Ādpuct;戏ortionĀ;aȥl;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL憒ar;懥eftArrow;懄eiling;按oǵ\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄቕቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHcቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗ĀeiቻDzኀ\0ኇefore;戴a;䎘ĀcnኘkSpace;쀀 Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtèa;䎖r;愨pf;愤cr;쀀𝒵ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒;Eaeiopᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;eᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;eᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰᝃᝈ០៦ᠹᡐᜍ᥈ᥰot;櫭ĀcrᛶkȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀakoᠦᠵĀcn៲ᠣkƀlst֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ;敛;敘;攘;攔;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģbar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;elƀ;bhᥨᥩᥫ䁜;槅sub;柈ŬᥴlĀ;e怢t»pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭒\0᯽\0ᰌƀcprᦲute;䄇̀;abcdsᦿᧀᧄ᧕᧙戩nd;橄rcup;橉Āau᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r;Ecefms᩠ᩢᩫ᪤᪪旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ\0\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»eóɍǧ\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯delprvw᭠᭬᭷ᮂᮬᯔarrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;pᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰻᰿ᱝᱩᱵᲞᲬᲷᴍᵻᶑᶫᶻ᷆᷍ròar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂᳖᳜᳠mƀ;oș᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄĀDoḆᴴoôĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»ṺƀaeiἒἚls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧\0耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₥₰₴⃰℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽ƀ;qsؾٌlanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqrⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0proør;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼ròòΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonóquigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roøurĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻\xA0ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨íistĀ;sடr;쀀𝔫ȀEest⩦⩹⩼ƀ;qs⩭ƀ;qs⩴lanôií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast⭕⭚⭟lleìl;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖchimpqu⮽⯍⯙⬄⯤⯯Ȁ;cerല⯆ഷ⯉uå;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭ååഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñĀ;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;cⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācrir;榿;쀀𝔬ͯ\0\0\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕⶥⶨrò᪀Āirⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔǒr;榷rp;榹;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ\0\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ脀¶;l䂶leìЃɩ\0\0m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳ᤈ⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t⾴ïrel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⋢⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔ABHabcdefhilmnoprstuxけさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstwガクシスゼゾダッデナp;極Ā;fゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ìâヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘rrowĀ;tㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowóarpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓ròaòՑ;怏oustĀ;a㈞掱che»mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì耻䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;qኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫwar;椪lig耻ß䃟㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rëƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproøim»ኬsðኞĀas㚺㚮ðrn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈadempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xôheadĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roðtré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜtré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌`.split(``).map(e=>e.charCodeAt(0))),gT=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);String.fromCodePoint;function _T(e){return e>=55296&&e<=57343||e>1114111?65533:gT.get(e)??e}var vT;(function(e){e[e.NUM=35]=`NUM`,e[e.SEMI=59]=`SEMI`,e[e.EQUALS=61]=`EQUALS`,e[e.ZERO=48]=`ZERO`,e[e.NINE=57]=`NINE`,e[e.LOWER_A=97]=`LOWER_A`,e[e.LOWER_F=102]=`LOWER_F`,e[e.LOWER_X=120]=`LOWER_X`,e[e.LOWER_Z=122]=`LOWER_Z`,e[e.UPPER_A=65]=`UPPER_A`,e[e.UPPER_F=70]=`UPPER_F`,e[e.UPPER_Z=90]=`UPPER_Z`})(vT||={});var yT=32,bT;(function(e){e[e.VALUE_LENGTH=49152]=`VALUE_LENGTH`,e[e.BRANCH_LENGTH=16256]=`BRANCH_LENGTH`,e[e.JUMP_TABLE=127]=`JUMP_TABLE`})(bT||={});function xT(e){return e>=vT.ZERO&&e<=vT.NINE}function ST(e){return e>=vT.UPPER_A&&e<=vT.UPPER_F||e>=vT.LOWER_A&&e<=vT.LOWER_F}function CT(e){return e>=vT.UPPER_A&&e<=vT.UPPER_Z||e>=vT.LOWER_A&&e<=vT.LOWER_Z||xT(e)}function wT(e){return e===vT.EQUALS||CT(e)}var TT;(function(e){e[e.EntityStart=0]=`EntityStart`,e[e.NumericStart=1]=`NumericStart`,e[e.NumericDecimal=2]=`NumericDecimal`,e[e.NumericHex=3]=`NumericHex`,e[e.NamedEntity=4]=`NamedEntity`})(TT||={});var ET;(function(e){e[e.Legacy=0]=`Legacy`,e[e.Strict=1]=`Strict`,e[e.Attribute=2]=`Attribute`})(ET||={});var DT=class{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=TT.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=ET.Strict}startEntity(e){this.decodeMode=e,this.state=TT.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case TT.EntityStart:return e.charCodeAt(t)===vT.NUM?(this.state=TT.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=TT.NamedEntity,this.stateNamedEntity(e,t));case TT.NumericStart:return this.stateNumericStart(e,t);case TT.NumericDecimal:return this.stateNumericDecimal(e,t);case TT.NumericHex:return this.stateNumericHex(e,t);case TT.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(e.charCodeAt(t)|yT)===vT.LOWER_X?(this.state=TT.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=TT.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){let i=n-t;this.result=this.result*r**+i+Number.parseInt(e.substr(t,i),r),this.consumed+=i}}stateNumericHex(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(xT(r)||ST(r))t+=1;else return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(r,3)}return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(xT(r))t+=1;else return this.addToNumericResult(e,n,t,10),this.emitNumericEntity(r,2)}return this.addToNumericResult(e,n,t,10),-1}emitNumericEntity(e,t){var n;if(this.consumed<=t)return(n=this.errors)==null||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===vT.SEMI)this.consumed+=1;else if(this.decodeMode===ET.Strict)return 0;return this.emitCodePoint(_T(this.result),this.consumed),this.errors&&(e!==vT.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){let{decodeTree:n}=this,r=n[this.treeIndex],i=(r&bT.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){let a=e.charCodeAt(t);if(this.treeIndex=OT(n,r,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===ET.Attribute&&(i===0||wT(a))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&bT.VALUE_LENGTH)>>14,i!==0){if(a===vT.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==ET.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:t,decodeTree:n}=this,r=(n[t]&bT.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),(e=this.errors)==null||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){let{decodeTree:r}=this;return this.emitCodePoint(t===1?r[e]&~bT.VALUE_LENGTH:r[e+1],n),t===3&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case TT.NamedEntity:return this.result!==0&&(this.decodeMode!==ET.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case TT.NumericDecimal:return this.emitNumericEntity(0,2);case TT.NumericHex:return this.emitNumericEntity(0,3);case TT.NumericStart:return(e=this.errors)==null||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case TT.EntityStart:return 0}}};function OT(e,t,n,r){let i=(t&bT.BRANCH_LENGTH)>>7,a=t&bT.JUMP_TABLE;if(i===0)return a!==0&&r===a?n:-1;if(a){let t=r-a;return t<0||t>=i?-1:e[n+t]-1}let o=n,s=o+i-1;for(;o<=s;){let t=o+s>>>1,n=e[t];if(n<r)o=t+1;else if(n>r)s=t-1;else return e[t+i]}return-1}var W;(function(e){e.HTML=`http://www.w3.org/1999/xhtml`,e.MATHML=`http://www.w3.org/1998/Math/MathML`,e.SVG=`http://www.w3.org/2000/svg`,e.XLINK=`http://www.w3.org/1999/xlink`,e.XML=`http://www.w3.org/XML/1998/namespace`,e.XMLNS=`http://www.w3.org/2000/xmlns/`})(W||={});var kT;(function(e){e.TYPE=`type`,e.ACTION=`action`,e.ENCODING=`encoding`,e.PROMPT=`prompt`,e.NAME=`name`,e.COLOR=`color`,e.FACE=`face`,e.SIZE=`size`})(kT||={});var AT;(function(e){e.NO_QUIRKS=`no-quirks`,e.QUIRKS=`quirks`,e.LIMITED_QUIRKS=`limited-quirks`})(AT||={});var G;(function(e){e.A=`a`,e.ADDRESS=`address`,e.ANNOTATION_XML=`annotation-xml`,e.APPLET=`applet`,e.AREA=`area`,e.ARTICLE=`article`,e.ASIDE=`aside`,e.B=`b`,e.BASE=`base`,e.BASEFONT=`basefont`,e.BGSOUND=`bgsound`,e.BIG=`big`,e.BLOCKQUOTE=`blockquote`,e.BODY=`body`,e.BR=`br`,e.BUTTON=`button`,e.CAPTION=`caption`,e.CENTER=`center`,e.CODE=`code`,e.COL=`col`,e.COLGROUP=`colgroup`,e.DD=`dd`,e.DESC=`desc`,e.DETAILS=`details`,e.DIALOG=`dialog`,e.DIR=`dir`,e.DIV=`div`,e.DL=`dl`,e.DT=`dt`,e.EM=`em`,e.EMBED=`embed`,e.FIELDSET=`fieldset`,e.FIGCAPTION=`figcaption`,e.FIGURE=`figure`,e.FONT=`font`,e.FOOTER=`footer`,e.FOREIGN_OBJECT=`foreignObject`,e.FORM=`form`,e.FRAME=`frame`,e.FRAMESET=`frameset`,e.H1=`h1`,e.H2=`h2`,e.H3=`h3`,e.H4=`h4`,e.H5=`h5`,e.H6=`h6`,e.HEAD=`head`,e.HEADER=`header`,e.HGROUP=`hgroup`,e.HR=`hr`,e.HTML=`html`,e.I=`i`,e.IMG=`img`,e.IMAGE=`image`,e.INPUT=`input`,e.IFRAME=`iframe`,e.KEYGEN=`keygen`,e.LABEL=`label`,e.LI=`li`,e.LINK=`link`,e.LISTING=`listing`,e.MAIN=`main`,e.MALIGNMARK=`malignmark`,e.MARQUEE=`marquee`,e.MATH=`math`,e.MENU=`menu`,e.META=`meta`,e.MGLYPH=`mglyph`,e.MI=`mi`,e.MO=`mo`,e.MN=`mn`,e.MS=`ms`,e.MTEXT=`mtext`,e.NAV=`nav`,e.NOBR=`nobr`,e.NOFRAMES=`noframes`,e.NOEMBED=`noembed`,e.NOSCRIPT=`noscript`,e.OBJECT=`object`,e.OL=`ol`,e.OPTGROUP=`optgroup`,e.OPTION=`option`,e.P=`p`,e.PARAM=`param`,e.PLAINTEXT=`plaintext`,e.PRE=`pre`,e.RB=`rb`,e.RP=`rp`,e.RT=`rt`,e.RTC=`rtc`,e.RUBY=`ruby`,e.S=`s`,e.SCRIPT=`script`,e.SEARCH=`search`,e.SECTION=`section`,e.SELECT=`select`,e.SOURCE=`source`,e.SMALL=`small`,e.SPAN=`span`,e.STRIKE=`strike`,e.STRONG=`strong`,e.STYLE=`style`,e.SUB=`sub`,e.SUMMARY=`summary`,e.SUP=`sup`,e.TABLE=`table`,e.TBODY=`tbody`,e.TEMPLATE=`template`,e.TEXTAREA=`textarea`,e.TFOOT=`tfoot`,e.TD=`td`,e.TH=`th`,e.THEAD=`thead`,e.TITLE=`title`,e.TR=`tr`,e.TRACK=`track`,e.TT=`tt`,e.U=`u`,e.UL=`ul`,e.SVG=`svg`,e.VAR=`var`,e.WBR=`wbr`,e.XMP=`xmp`})(G||={});var K;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.A=1]=`A`,e[e.ADDRESS=2]=`ADDRESS`,e[e.ANNOTATION_XML=3]=`ANNOTATION_XML`,e[e.APPLET=4]=`APPLET`,e[e.AREA=5]=`AREA`,e[e.ARTICLE=6]=`ARTICLE`,e[e.ASIDE=7]=`ASIDE`,e[e.B=8]=`B`,e[e.BASE=9]=`BASE`,e[e.BASEFONT=10]=`BASEFONT`,e[e.BGSOUND=11]=`BGSOUND`,e[e.BIG=12]=`BIG`,e[e.BLOCKQUOTE=13]=`BLOCKQUOTE`,e[e.BODY=14]=`BODY`,e[e.BR=15]=`BR`,e[e.BUTTON=16]=`BUTTON`,e[e.CAPTION=17]=`CAPTION`,e[e.CENTER=18]=`CENTER`,e[e.CODE=19]=`CODE`,e[e.COL=20]=`COL`,e[e.COLGROUP=21]=`COLGROUP`,e[e.DD=22]=`DD`,e[e.DESC=23]=`DESC`,e[e.DETAILS=24]=`DETAILS`,e[e.DIALOG=25]=`DIALOG`,e[e.DIR=26]=`DIR`,e[e.DIV=27]=`DIV`,e[e.DL=28]=`DL`,e[e.DT=29]=`DT`,e[e.EM=30]=`EM`,e[e.EMBED=31]=`EMBED`,e[e.FIELDSET=32]=`FIELDSET`,e[e.FIGCAPTION=33]=`FIGCAPTION`,e[e.FIGURE=34]=`FIGURE`,e[e.FONT=35]=`FONT`,e[e.FOOTER=36]=`FOOTER`,e[e.FOREIGN_OBJECT=37]=`FOREIGN_OBJECT`,e[e.FORM=38]=`FORM`,e[e.FRAME=39]=`FRAME`,e[e.FRAMESET=40]=`FRAMESET`,e[e.H1=41]=`H1`,e[e.H2=42]=`H2`,e[e.H3=43]=`H3`,e[e.H4=44]=`H4`,e[e.H5=45]=`H5`,e[e.H6=46]=`H6`,e[e.HEAD=47]=`HEAD`,e[e.HEADER=48]=`HEADER`,e[e.HGROUP=49]=`HGROUP`,e[e.HR=50]=`HR`,e[e.HTML=51]=`HTML`,e[e.I=52]=`I`,e[e.IMG=53]=`IMG`,e[e.IMAGE=54]=`IMAGE`,e[e.INPUT=55]=`INPUT`,e[e.IFRAME=56]=`IFRAME`,e[e.KEYGEN=57]=`KEYGEN`,e[e.LABEL=58]=`LABEL`,e[e.LI=59]=`LI`,e[e.LINK=60]=`LINK`,e[e.LISTING=61]=`LISTING`,e[e.MAIN=62]=`MAIN`,e[e.MALIGNMARK=63]=`MALIGNMARK`,e[e.MARQUEE=64]=`MARQUEE`,e[e.MATH=65]=`MATH`,e[e.MENU=66]=`MENU`,e[e.META=67]=`META`,e[e.MGLYPH=68]=`MGLYPH`,e[e.MI=69]=`MI`,e[e.MO=70]=`MO`,e[e.MN=71]=`MN`,e[e.MS=72]=`MS`,e[e.MTEXT=73]=`MTEXT`,e[e.NAV=74]=`NAV`,e[e.NOBR=75]=`NOBR`,e[e.NOFRAMES=76]=`NOFRAMES`,e[e.NOEMBED=77]=`NOEMBED`,e[e.NOSCRIPT=78]=`NOSCRIPT`,e[e.OBJECT=79]=`OBJECT`,e[e.OL=80]=`OL`,e[e.OPTGROUP=81]=`OPTGROUP`,e[e.OPTION=82]=`OPTION`,e[e.P=83]=`P`,e[e.PARAM=84]=`PARAM`,e[e.PLAINTEXT=85]=`PLAINTEXT`,e[e.PRE=86]=`PRE`,e[e.RB=87]=`RB`,e[e.RP=88]=`RP`,e[e.RT=89]=`RT`,e[e.RTC=90]=`RTC`,e[e.RUBY=91]=`RUBY`,e[e.S=92]=`S`,e[e.SCRIPT=93]=`SCRIPT`,e[e.SEARCH=94]=`SEARCH`,e[e.SECTION=95]=`SECTION`,e[e.SELECT=96]=`SELECT`,e[e.SOURCE=97]=`SOURCE`,e[e.SMALL=98]=`SMALL`,e[e.SPAN=99]=`SPAN`,e[e.STRIKE=100]=`STRIKE`,e[e.STRONG=101]=`STRONG`,e[e.STYLE=102]=`STYLE`,e[e.SUB=103]=`SUB`,e[e.SUMMARY=104]=`SUMMARY`,e[e.SUP=105]=`SUP`,e[e.TABLE=106]=`TABLE`,e[e.TBODY=107]=`TBODY`,e[e.TEMPLATE=108]=`TEMPLATE`,e[e.TEXTAREA=109]=`TEXTAREA`,e[e.TFOOT=110]=`TFOOT`,e[e.TD=111]=`TD`,e[e.TH=112]=`TH`,e[e.THEAD=113]=`THEAD`,e[e.TITLE=114]=`TITLE`,e[e.TR=115]=`TR`,e[e.TRACK=116]=`TRACK`,e[e.TT=117]=`TT`,e[e.U=118]=`U`,e[e.UL=119]=`UL`,e[e.SVG=120]=`SVG`,e[e.VAR=121]=`VAR`,e[e.WBR=122]=`WBR`,e[e.XMP=123]=`XMP`})(K||={});var jT=new Map([[G.A,K.A],[G.ADDRESS,K.ADDRESS],[G.ANNOTATION_XML,K.ANNOTATION_XML],[G.APPLET,K.APPLET],[G.AREA,K.AREA],[G.ARTICLE,K.ARTICLE],[G.ASIDE,K.ASIDE],[G.B,K.B],[G.BASE,K.BASE],[G.BASEFONT,K.BASEFONT],[G.BGSOUND,K.BGSOUND],[G.BIG,K.BIG],[G.BLOCKQUOTE,K.BLOCKQUOTE],[G.BODY,K.BODY],[G.BR,K.BR],[G.BUTTON,K.BUTTON],[G.CAPTION,K.CAPTION],[G.CENTER,K.CENTER],[G.CODE,K.CODE],[G.COL,K.COL],[G.COLGROUP,K.COLGROUP],[G.DD,K.DD],[G.DESC,K.DESC],[G.DETAILS,K.DETAILS],[G.DIALOG,K.DIALOG],[G.DIR,K.DIR],[G.DIV,K.DIV],[G.DL,K.DL],[G.DT,K.DT],[G.EM,K.EM],[G.EMBED,K.EMBED],[G.FIELDSET,K.FIELDSET],[G.FIGCAPTION,K.FIGCAPTION],[G.FIGURE,K.FIGURE],[G.FONT,K.FONT],[G.FOOTER,K.FOOTER],[G.FOREIGN_OBJECT,K.FOREIGN_OBJECT],[G.FORM,K.FORM],[G.FRAME,K.FRAME],[G.FRAMESET,K.FRAMESET],[G.H1,K.H1],[G.H2,K.H2],[G.H3,K.H3],[G.H4,K.H4],[G.H5,K.H5],[G.H6,K.H6],[G.HEAD,K.HEAD],[G.HEADER,K.HEADER],[G.HGROUP,K.HGROUP],[G.HR,K.HR],[G.HTML,K.HTML],[G.I,K.I],[G.IMG,K.IMG],[G.IMAGE,K.IMAGE],[G.INPUT,K.INPUT],[G.IFRAME,K.IFRAME],[G.KEYGEN,K.KEYGEN],[G.LABEL,K.LABEL],[G.LI,K.LI],[G.LINK,K.LINK],[G.LISTING,K.LISTING],[G.MAIN,K.MAIN],[G.MALIGNMARK,K.MALIGNMARK],[G.MARQUEE,K.MARQUEE],[G.MATH,K.MATH],[G.MENU,K.MENU],[G.META,K.META],[G.MGLYPH,K.MGLYPH],[G.MI,K.MI],[G.MO,K.MO],[G.MN,K.MN],[G.MS,K.MS],[G.MTEXT,K.MTEXT],[G.NAV,K.NAV],[G.NOBR,K.NOBR],[G.NOFRAMES,K.NOFRAMES],[G.NOEMBED,K.NOEMBED],[G.NOSCRIPT,K.NOSCRIPT],[G.OBJECT,K.OBJECT],[G.OL,K.OL],[G.OPTGROUP,K.OPTGROUP],[G.OPTION,K.OPTION],[G.P,K.P],[G.PARAM,K.PARAM],[G.PLAINTEXT,K.PLAINTEXT],[G.PRE,K.PRE],[G.RB,K.RB],[G.RP,K.RP],[G.RT,K.RT],[G.RTC,K.RTC],[G.RUBY,K.RUBY],[G.S,K.S],[G.SCRIPT,K.SCRIPT],[G.SEARCH,K.SEARCH],[G.SECTION,K.SECTION],[G.SELECT,K.SELECT],[G.SOURCE,K.SOURCE],[G.SMALL,K.SMALL],[G.SPAN,K.SPAN],[G.STRIKE,K.STRIKE],[G.STRONG,K.STRONG],[G.STYLE,K.STYLE],[G.SUB,K.SUB],[G.SUMMARY,K.SUMMARY],[G.SUP,K.SUP],[G.TABLE,K.TABLE],[G.TBODY,K.TBODY],[G.TEMPLATE,K.TEMPLATE],[G.TEXTAREA,K.TEXTAREA],[G.TFOOT,K.TFOOT],[G.TD,K.TD],[G.TH,K.TH],[G.THEAD,K.THEAD],[G.TITLE,K.TITLE],[G.TR,K.TR],[G.TRACK,K.TRACK],[G.TT,K.TT],[G.U,K.U],[G.UL,K.UL],[G.SVG,K.SVG],[G.VAR,K.VAR],[G.WBR,K.WBR],[G.XMP,K.XMP]]);function MT(e){return jT.get(e)??K.UNKNOWN}var q=K,NT={[W.HTML]:new Set([q.ADDRESS,q.APPLET,q.AREA,q.ARTICLE,q.ASIDE,q.BASE,q.BASEFONT,q.BGSOUND,q.BLOCKQUOTE,q.BODY,q.BR,q.BUTTON,q.CAPTION,q.CENTER,q.COL,q.COLGROUP,q.DD,q.DETAILS,q.DIR,q.DIV,q.DL,q.DT,q.EMBED,q.FIELDSET,q.FIGCAPTION,q.FIGURE,q.FOOTER,q.FORM,q.FRAME,q.FRAMESET,q.H1,q.H2,q.H3,q.H4,q.H5,q.H6,q.HEAD,q.HEADER,q.HGROUP,q.HR,q.HTML,q.IFRAME,q.IMG,q.INPUT,q.LI,q.LINK,q.LISTING,q.MAIN,q.MARQUEE,q.MENU,q.META,q.NAV,q.NOEMBED,q.NOFRAMES,q.NOSCRIPT,q.OBJECT,q.OL,q.P,q.PARAM,q.PLAINTEXT,q.PRE,q.SCRIPT,q.SECTION,q.SELECT,q.SOURCE,q.STYLE,q.SUMMARY,q.TABLE,q.TBODY,q.TD,q.TEMPLATE,q.TEXTAREA,q.TFOOT,q.TH,q.THEAD,q.TITLE,q.TR,q.TRACK,q.UL,q.WBR,q.XMP]),[W.MATHML]:new Set([q.MI,q.MO,q.MN,q.MS,q.MTEXT,q.ANNOTATION_XML]),[W.SVG]:new Set([q.TITLE,q.FOREIGN_OBJECT,q.DESC]),[W.XLINK]:new Set,[W.XML]:new Set,[W.XMLNS]:new Set},PT=new Set([q.H1,q.H2,q.H3,q.H4,q.H5,q.H6]);new Set([G.STYLE,G.SCRIPT,G.XMP,G.IFRAME,G.NOEMBED,G.NOFRAMES,G.PLAINTEXT]);var J;(function(e){e[e.DATA=0]=`DATA`,e[e.RCDATA=1]=`RCDATA`,e[e.RAWTEXT=2]=`RAWTEXT`,e[e.SCRIPT_DATA=3]=`SCRIPT_DATA`,e[e.PLAINTEXT=4]=`PLAINTEXT`,e[e.TAG_OPEN=5]=`TAG_OPEN`,e[e.END_TAG_OPEN=6]=`END_TAG_OPEN`,e[e.TAG_NAME=7]=`TAG_NAME`,e[e.RCDATA_LESS_THAN_SIGN=8]=`RCDATA_LESS_THAN_SIGN`,e[e.RCDATA_END_TAG_OPEN=9]=`RCDATA_END_TAG_OPEN`,e[e.RCDATA_END_TAG_NAME=10]=`RCDATA_END_TAG_NAME`,e[e.RAWTEXT_LESS_THAN_SIGN=11]=`RAWTEXT_LESS_THAN_SIGN`,e[e.RAWTEXT_END_TAG_OPEN=12]=`RAWTEXT_END_TAG_OPEN`,e[e.RAWTEXT_END_TAG_NAME=13]=`RAWTEXT_END_TAG_NAME`,e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]=`SCRIPT_DATA_LESS_THAN_SIGN`,e[e.SCRIPT_DATA_END_TAG_OPEN=15]=`SCRIPT_DATA_END_TAG_OPEN`,e[e.SCRIPT_DATA_END_TAG_NAME=16]=`SCRIPT_DATA_END_TAG_NAME`,e[e.SCRIPT_DATA_ESCAPE_START=17]=`SCRIPT_DATA_ESCAPE_START`,e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]=`SCRIPT_DATA_ESCAPE_START_DASH`,e[e.SCRIPT_DATA_ESCAPED=19]=`SCRIPT_DATA_ESCAPED`,e[e.SCRIPT_DATA_ESCAPED_DASH=20]=`SCRIPT_DATA_ESCAPED_DASH`,e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]=`SCRIPT_DATA_ESCAPED_DASH_DASH`,e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]=`SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN`,e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]=`SCRIPT_DATA_ESCAPED_END_TAG_OPEN`,e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]=`SCRIPT_DATA_ESCAPED_END_TAG_NAME`,e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]=`SCRIPT_DATA_DOUBLE_ESCAPE_START`,e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]=`SCRIPT_DATA_DOUBLE_ESCAPED`,e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]=`SCRIPT_DATA_DOUBLE_ESCAPED_DASH`,e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]=`SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH`,e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]=`SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN`,e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]=`SCRIPT_DATA_DOUBLE_ESCAPE_END`,e[e.BEFORE_ATTRIBUTE_NAME=31]=`BEFORE_ATTRIBUTE_NAME`,e[e.ATTRIBUTE_NAME=32]=`ATTRIBUTE_NAME`,e[e.AFTER_ATTRIBUTE_NAME=33]=`AFTER_ATTRIBUTE_NAME`,e[e.BEFORE_ATTRIBUTE_VALUE=34]=`BEFORE_ATTRIBUTE_VALUE`,e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]=`ATTRIBUTE_VALUE_DOUBLE_QUOTED`,e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]=`ATTRIBUTE_VALUE_SINGLE_QUOTED`,e[e.ATTRIBUTE_VALUE_UNQUOTED=37]=`ATTRIBUTE_VALUE_UNQUOTED`,e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]=`AFTER_ATTRIBUTE_VALUE_QUOTED`,e[e.SELF_CLOSING_START_TAG=39]=`SELF_CLOSING_START_TAG`,e[e.BOGUS_COMMENT=40]=`BOGUS_COMMENT`,e[e.MARKUP_DECLARATION_OPEN=41]=`MARKUP_DECLARATION_OPEN`,e[e.COMMENT_START=42]=`COMMENT_START`,e[e.COMMENT_START_DASH=43]=`COMMENT_START_DASH`,e[e.COMMENT=44]=`COMMENT`,e[e.COMMENT_LESS_THAN_SIGN=45]=`COMMENT_LESS_THAN_SIGN`,e[e.COMMENT_LESS_THAN_SIGN_BANG=46]=`COMMENT_LESS_THAN_SIGN_BANG`,e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]=`COMMENT_LESS_THAN_SIGN_BANG_DASH`,e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]=`COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH`,e[e.COMMENT_END_DASH=49]=`COMMENT_END_DASH`,e[e.COMMENT_END=50]=`COMMENT_END`,e[e.COMMENT_END_BANG=51]=`COMMENT_END_BANG`,e[e.DOCTYPE=52]=`DOCTYPE`,e[e.BEFORE_DOCTYPE_NAME=53]=`BEFORE_DOCTYPE_NAME`,e[e.DOCTYPE_NAME=54]=`DOCTYPE_NAME`,e[e.AFTER_DOCTYPE_NAME=55]=`AFTER_DOCTYPE_NAME`,e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]=`AFTER_DOCTYPE_PUBLIC_KEYWORD`,e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]=`BEFORE_DOCTYPE_PUBLIC_IDENTIFIER`,e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]=`DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED`,e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]=`DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED`,e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]=`AFTER_DOCTYPE_PUBLIC_IDENTIFIER`,e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]=`BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS`,e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]=`AFTER_DOCTYPE_SYSTEM_KEYWORD`,e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]=`BEFORE_DOCTYPE_SYSTEM_IDENTIFIER`,e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]=`DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED`,e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]=`DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED`,e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]=`AFTER_DOCTYPE_SYSTEM_IDENTIFIER`,e[e.BOGUS_DOCTYPE=67]=`BOGUS_DOCTYPE`,e[e.CDATA_SECTION=68]=`CDATA_SECTION`,e[e.CDATA_SECTION_BRACKET=69]=`CDATA_SECTION_BRACKET`,e[e.CDATA_SECTION_END=70]=`CDATA_SECTION_END`,e[e.CHARACTER_REFERENCE=71]=`CHARACTER_REFERENCE`,e[e.AMBIGUOUS_AMPERSAND=72]=`AMBIGUOUS_AMPERSAND`})(J||={});var FT={DATA:J.DATA,RCDATA:J.RCDATA,RAWTEXT:J.RAWTEXT,SCRIPT_DATA:J.SCRIPT_DATA,PLAINTEXT:J.PLAINTEXT,CDATA_SECTION:J.CDATA_SECTION};function IT(e){return e>=H.DIGIT_0&&e<=H.DIGIT_9}function LT(e){return e>=H.LATIN_CAPITAL_A&&e<=H.LATIN_CAPITAL_Z}function RT(e){return e>=H.LATIN_SMALL_A&&e<=H.LATIN_SMALL_Z}function zT(e){return RT(e)||LT(e)}function BT(e){return zT(e)||IT(e)}function VT(e){return e+32}function HT(e){return e===H.SPACE||e===H.LINE_FEED||e===H.TABULATION||e===H.FORM_FEED}function UT(e){return HT(e)||e===H.SOLIDUS||e===H.GREATER_THAN_SIGN}function WT(e){return e===H.NULL?U.nullCharacterReference:e>1114111?U.characterReferenceOutsideUnicodeRange:oT(e)?U.surrogateCharacterReference:uT(e)?U.noncharacterCharacterReference:lT(e)||e===H.CARRIAGE_RETURN?U.controlCharacterReference:null}var GT=class{constructor(e,t){this.options=e,this.handler=t,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName=``,this.active=!1,this.state=J.DATA,this.returnState=J.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:``,value:``},this.preprocessor=new fT(t),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new DT(hT,(e,t)=>{this.preprocessor.pos=this.entityStartPos+t-1,this._flushCodePointConsumedAsCharacterReference(e)},t.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(U.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:e=>{this._err(U.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+e)},validateNumericCharacterReference:e=>{let t=WT(e);t&&this._err(t,1)}}:void 0)}_err(e,t=0){var n,r;(r=(n=this.handler).onParseError)==null||r.call(n,this.preprocessor.getError(e,t))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw Error(`Parser was already resumed`);this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,t,n){this.active=!0,this.preprocessor.write(e,t),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let t=0;t<e;t++)this.preprocessor.advance()}_consumeSequenceIfMatch(e,t){return this.preprocessor.startsWith(e,t)?(this._advanceBy(e.length-1),!0):!1}_createStartTagToken(){this.currentToken={type:pT.START_TAG,tagName:``,tagID:K.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:pT.END_TAG,tagName:``,tagID:K.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(e){this.currentToken={type:pT.COMMENT,data:``,location:this.getCurrentLocation(e)}}_createDoctypeToken(e){this.currentToken={type:pT.DOCTYPE,name:e,forceQuirks:!1,publicId:null,systemId:null,location:this.currentLocation}}_createCharacterToken(e,t){this.currentCharacterToken={type:e,chars:t,location:this.currentLocation}}_createAttr(e){this.currentAttr={name:e,value:``},this.currentLocation=this.getCurrentLocation(0)}_leaveAttrName(){var e;let t=this.currentToken;if(mT(t,this.currentAttr.name)===null){if(t.attrs.push(this.currentAttr),t.location&&this.currentLocation){let n=(e=t.location).attrs??(e.attrs=Object.create(null));n[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue()}}else this._err(U.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(e){this._emitCurrentCharacterToken(e.location),this.currentToken=null,e.location&&(e.location.endLine=this.preprocessor.line,e.location.endCol=this.preprocessor.col+1,e.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){let e=this.currentToken;this.prepareToken(e),e.tagID=MT(e.tagName),e.type===pT.START_TAG?(this.lastStartTagName=e.tagName,this.handler.onStartTag(e)):(e.attrs.length>0&&this._err(U.endTagWithAttributes),e.selfClosing&&this._err(U.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case pT.CHARACTER:this.handler.onCharacter(this.currentCharacterToken);break;case pT.NULL_CHARACTER:this.handler.onNullCharacter(this.currentCharacterToken);break;case pT.WHITESPACE_CHARACTER:this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:pT.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,t){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=t;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,t)}_emitCodePoint(e){let t=HT(e)?pT.WHITESPACE_CHARACTER:e===H.NULL?pT.NULL_CHARACTER:pT.CHARACTER;this._appendCharToCurrentCharacterToken(t,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(pT.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=J.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?ET.Attribute:ET.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===J.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===J.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===J.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case J.DATA:this._stateData(e);break;case J.RCDATA:this._stateRcdata(e);break;case J.RAWTEXT:this._stateRawtext(e);break;case J.SCRIPT_DATA:this._stateScriptData(e);break;case J.PLAINTEXT:this._statePlaintext(e);break;case J.TAG_OPEN:this._stateTagOpen(e);break;case J.END_TAG_OPEN:this._stateEndTagOpen(e);break;case J.TAG_NAME:this._stateTagName(e);break;case J.RCDATA_LESS_THAN_SIGN:this._stateRcdataLessThanSign(e);break;case J.RCDATA_END_TAG_OPEN:this._stateRcdataEndTagOpen(e);break;case J.RCDATA_END_TAG_NAME:this._stateRcdataEndTagName(e);break;case J.RAWTEXT_LESS_THAN_SIGN:this._stateRawtextLessThanSign(e);break;case J.RAWTEXT_END_TAG_OPEN:this._stateRawtextEndTagOpen(e);break;case J.RAWTEXT_END_TAG_NAME:this._stateRawtextEndTagName(e);break;case J.SCRIPT_DATA_LESS_THAN_SIGN:this._stateScriptDataLessThanSign(e);break;case J.SCRIPT_DATA_END_TAG_OPEN:this._stateScriptDataEndTagOpen(e);break;case J.SCRIPT_DATA_END_TAG_NAME:this._stateScriptDataEndTagName(e);break;case J.SCRIPT_DATA_ESCAPE_START:this._stateScriptDataEscapeStart(e);break;case J.SCRIPT_DATA_ESCAPE_START_DASH:this._stateScriptDataEscapeStartDash(e);break;case J.SCRIPT_DATA_ESCAPED:this._stateScriptDataEscaped(e);break;case J.SCRIPT_DATA_ESCAPED_DASH:this._stateScriptDataEscapedDash(e);break;case J.SCRIPT_DATA_ESCAPED_DASH_DASH:this._stateScriptDataEscapedDashDash(e);break;case J.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataEscapedLessThanSign(e);break;case J.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:this._stateScriptDataEscapedEndTagOpen(e);break;case J.SCRIPT_DATA_ESCAPED_END_TAG_NAME:this._stateScriptDataEscapedEndTagName(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPE_START:this._stateScriptDataDoubleEscapeStart(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPED:this._stateScriptDataDoubleEscaped(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:this._stateScriptDataDoubleEscapedDash(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:this._stateScriptDataDoubleEscapedDashDash(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataDoubleEscapedLessThanSign(e);break;case J.SCRIPT_DATA_DOUBLE_ESCAPE_END:this._stateScriptDataDoubleEscapeEnd(e);break;case J.BEFORE_ATTRIBUTE_NAME:this._stateBeforeAttributeName(e);break;case J.ATTRIBUTE_NAME:this._stateAttributeName(e);break;case J.AFTER_ATTRIBUTE_NAME:this._stateAfterAttributeName(e);break;case J.BEFORE_ATTRIBUTE_VALUE:this._stateBeforeAttributeValue(e);break;case J.ATTRIBUTE_VALUE_DOUBLE_QUOTED:this._stateAttributeValueDoubleQuoted(e);break;case J.ATTRIBUTE_VALUE_SINGLE_QUOTED:this._stateAttributeValueSingleQuoted(e);break;case J.ATTRIBUTE_VALUE_UNQUOTED:this._stateAttributeValueUnquoted(e);break;case J.AFTER_ATTRIBUTE_VALUE_QUOTED:this._stateAfterAttributeValueQuoted(e);break;case J.SELF_CLOSING_START_TAG:this._stateSelfClosingStartTag(e);break;case J.BOGUS_COMMENT:this._stateBogusComment(e);break;case J.MARKUP_DECLARATION_OPEN:this._stateMarkupDeclarationOpen(e);break;case J.COMMENT_START:this._stateCommentStart(e);break;case J.COMMENT_START_DASH:this._stateCommentStartDash(e);break;case J.COMMENT:this._stateComment(e);break;case J.COMMENT_LESS_THAN_SIGN:this._stateCommentLessThanSign(e);break;case J.COMMENT_LESS_THAN_SIGN_BANG:this._stateCommentLessThanSignBang(e);break;case J.COMMENT_LESS_THAN_SIGN_BANG_DASH:this._stateCommentLessThanSignBangDash(e);break;case J.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:this._stateCommentLessThanSignBangDashDash(e);break;case J.COMMENT_END_DASH:this._stateCommentEndDash(e);break;case J.COMMENT_END:this._stateCommentEnd(e);break;case J.COMMENT_END_BANG:this._stateCommentEndBang(e);break;case J.DOCTYPE:this._stateDoctype(e);break;case J.BEFORE_DOCTYPE_NAME:this._stateBeforeDoctypeName(e);break;case J.DOCTYPE_NAME:this._stateDoctypeName(e);break;case J.AFTER_DOCTYPE_NAME:this._stateAfterDoctypeName(e);break;case J.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._stateAfterDoctypePublicKeyword(e);break;case J.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:this._stateBeforeDoctypePublicIdentifier(e);break;case J.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypePublicIdentifierDoubleQuoted(e);break;case J.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypePublicIdentifierSingleQuoted(e);break;case J.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:this._stateAfterDoctypePublicIdentifier(e);break;case J.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break;case J.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._stateAfterDoctypeSystemKeyword(e);break;case J.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:this._stateBeforeDoctypeSystemIdentifier(e);break;case J.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypeSystemIdentifierDoubleQuoted(e);break;case J.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypeSystemIdentifierSingleQuoted(e);break;case J.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:this._stateAfterDoctypeSystemIdentifier(e);break;case J.BOGUS_DOCTYPE:this._stateBogusDoctype(e);break;case J.CDATA_SECTION:this._stateCdataSection(e);break;case J.CDATA_SECTION_BRACKET:this._stateCdataSectionBracket(e);break;case J.CDATA_SECTION_END:this._stateCdataSectionEnd(e);break;case J.CHARACTER_REFERENCE:this._stateCharacterReference();break;case J.AMBIGUOUS_AMPERSAND:this._stateAmbiguousAmpersand(e);break;default:throw Error(`Unknown state`)}}_stateData(e){switch(e){case H.LESS_THAN_SIGN:this.state=J.TAG_OPEN;break;case H.AMPERSAND:this._startCharacterReference();break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitCodePoint(e);break;case H.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case H.AMPERSAND:this._startCharacterReference();break;case H.LESS_THAN_SIGN:this.state=J.RCDATA_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case H.LESS_THAN_SIGN:this.state=J.RAWTEXT_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateTagOpen(e){if(zT(e))this._createStartTagToken(),this.state=J.TAG_NAME,this._stateTagName(e);else switch(e){case H.EXCLAMATION_MARK:this.state=J.MARKUP_DECLARATION_OPEN;break;case H.SOLIDUS:this.state=J.END_TAG_OPEN;break;case H.QUESTION_MARK:this._err(U.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=J.BOGUS_COMMENT,this._stateBogusComment(e);break;case H.EOF:this._err(U.eofBeforeTagName),this._emitChars(`<`),this._emitEOFToken();break;default:this._err(U.invalidFirstCharacterOfTagName),this._emitChars(`<`),this.state=J.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(zT(e))this._createEndTagToken(),this.state=J.TAG_NAME,this._stateTagName(e);else switch(e){case H.GREATER_THAN_SIGN:this._err(U.missingEndTagName),this.state=J.DATA;break;case H.EOF:this._err(U.eofBeforeTagName),this._emitChars(`</`),this._emitEOFToken();break;default:this._err(U.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=J.BOGUS_COMMENT,this._stateBogusComment(e)}}_stateTagName(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.BEFORE_ATTRIBUTE_NAME;break;case H.SOLIDUS:this.state=J.SELF_CLOSING_START_TAG;break;case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentTagToken();break;case H.NULL:this._err(U.unexpectedNullCharacter),t.tagName+=`�`;break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:t.tagName+=String.fromCodePoint(LT(e)?VT(e):e)}}_stateRcdataLessThanSign(e){e===H.SOLIDUS?this.state=J.RCDATA_END_TAG_OPEN:(this._emitChars(`<`),this.state=J.RCDATA,this._stateRcdata(e))}_stateRcdataEndTagOpen(e){zT(e)?(this.state=J.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(e)):(this._emitChars(`</`),this.state=J.RCDATA,this._stateRcdata(e))}handleSpecialEndTag(e){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();this._createEndTagToken();let t=this.currentToken;switch(t.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=J.BEFORE_ATTRIBUTE_NAME,!1;case H.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=J.SELF_CLOSING_START_TAG,!1;case H.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=J.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars(`</`),this.state=J.RCDATA,this._stateRcdata(e))}_stateRawtextLessThanSign(e){e===H.SOLIDUS?this.state=J.RAWTEXT_END_TAG_OPEN:(this._emitChars(`<`),this.state=J.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagOpen(e){zT(e)?(this.state=J.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(e)):(this._emitChars(`</`),this.state=J.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars(`</`),this.state=J.RAWTEXT,this._stateRawtext(e))}_stateScriptDataLessThanSign(e){switch(e){case H.SOLIDUS:this.state=J.SCRIPT_DATA_END_TAG_OPEN;break;case H.EXCLAMATION_MARK:this.state=J.SCRIPT_DATA_ESCAPE_START,this._emitChars(`<!`);break;default:this._emitChars(`<`),this.state=J.SCRIPT_DATA,this._stateScriptData(e)}}_stateScriptDataEndTagOpen(e){zT(e)?(this.state=J.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(e)):(this._emitChars(`</`),this.state=J.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars(`</`),this.state=J.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStart(e){e===H.HYPHEN_MINUS?(this.state=J.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars(`-`)):(this.state=J.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStartDash(e){e===H.HYPHEN_MINUS?(this.state=J.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars(`-`)):(this.state=J.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscaped(e){switch(e){case H.HYPHEN_MINUS:this.state=J.SCRIPT_DATA_ESCAPED_DASH,this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateScriptDataEscapedDash(e){switch(e){case H.HYPHEN_MINUS:this.state=J.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),this.state=J.SCRIPT_DATA_ESCAPED,this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=J.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case H.GREATER_THAN_SIGN:this.state=J.SCRIPT_DATA,this._emitChars(`>`);break;case H.NULL:this._err(U.unexpectedNullCharacter),this.state=J.SCRIPT_DATA_ESCAPED,this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=J.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===H.SOLIDUS?this.state=J.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:zT(e)?(this._emitChars(`<`),this.state=J.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars(`<`),this.state=J.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){zT(e)?(this.state=J.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars(`</`),this.state=J.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars(`</`),this.state=J.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscapeStart(e){if(this.preprocessor.startsWith(aT.SCRIPT,!1)&&UT(this.preprocessor.peek(aT.SCRIPT.length))){this._emitCodePoint(e);for(let e=0;e<aT.SCRIPT.length;e++)this._emitCodePoint(this._consume());this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=J.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscaped(e){switch(e){case H.HYPHEN_MINUS:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars(`<`);break;case H.NULL:this._err(U.unexpectedNullCharacter),this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDash(e){switch(e){case H.HYPHEN_MINUS:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars(`<`);break;case H.NULL:this._err(U.unexpectedNullCharacter),this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:this._emitChars(`-`);break;case H.LESS_THAN_SIGN:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars(`<`);break;case H.GREATER_THAN_SIGN:this.state=J.SCRIPT_DATA,this._emitChars(`>`);break;case H.NULL:this._err(U.unexpectedNullCharacter),this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(`�`);break;case H.EOF:this._err(U.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===H.SOLIDUS?(this.state=J.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars(`/`)):(this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(aT.SCRIPT,!1)&&UT(this.preprocessor.peek(aT.SCRIPT.length))){this._emitCodePoint(e);for(let e=0;e<aT.SCRIPT.length;e++)this._emitCodePoint(this._consume());this.state=J.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=J.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateBeforeAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:this.state=J.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case H.EQUALS_SIGN:this._err(U.unexpectedEqualsSignBeforeAttributeName),this._createAttr(`=`),this.state=J.ATTRIBUTE_NAME;break;default:this._createAttr(``),this.state=J.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:this._leaveAttrName(),this.state=J.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case H.EQUALS_SIGN:this._leaveAttrName(),this.state=J.BEFORE_ATTRIBUTE_VALUE;break;case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:this._err(U.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break;case H.NULL:this._err(U.unexpectedNullCharacter),this.currentAttr.name+=`�`;break;default:this.currentAttr.name+=String.fromCodePoint(LT(e)?VT(e):e)}}_stateAfterAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:this.state=J.SELF_CLOSING_START_TAG;break;case H.EQUALS_SIGN:this.state=J.BEFORE_ATTRIBUTE_VALUE;break;case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentTagToken();break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this._createAttr(``),this.state=J.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:this.state=J.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break;case H.APOSTROPHE:this.state=J.ATTRIBUTE_VALUE_SINGLE_QUOTED;break;case H.GREATER_THAN_SIGN:this._err(U.missingAttributeValue),this.state=J.DATA,this.emitCurrentTagToken();break;default:this.state=J.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case H.QUOTATION_MARK:this.state=J.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case H.AMPERSAND:this._startCharacterReference();break;case H.NULL:this._err(U.unexpectedNullCharacter),this.currentAttr.value+=`�`;break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case H.APOSTROPHE:this.state=J.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case H.AMPERSAND:this._startCharacterReference();break;case H.NULL:this._err(U.unexpectedNullCharacter),this.currentAttr.value+=`�`;break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this._leaveAttrValue(),this.state=J.BEFORE_ATTRIBUTE_NAME;break;case H.AMPERSAND:this._startCharacterReference();break;case H.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=J.DATA,this.emitCurrentTagToken();break;case H.NULL:this._err(U.unexpectedNullCharacter),this.currentAttr.value+=`�`;break;case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:case H.EQUALS_SIGN:case H.GRAVE_ACCENT:this._err(U.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this._leaveAttrValue(),this.state=J.BEFORE_ATTRIBUTE_NAME;break;case H.SOLIDUS:this._leaveAttrValue(),this.state=J.SELF_CLOSING_START_TAG;break;case H.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=J.DATA,this.emitCurrentTagToken();break;case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this._err(U.missingWhitespaceBetweenAttributes),this.state=J.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case H.GREATER_THAN_SIGN:{let e=this.currentToken;e.selfClosing=!0,this.state=J.DATA,this.emitCurrentTagToken();break}case H.EOF:this._err(U.eofInTag),this._emitEOFToken();break;default:this._err(U.unexpectedSolidusInTag),this.state=J.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){let t=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentComment(t);break;case H.EOF:this.emitCurrentComment(t),this._emitEOFToken();break;case H.NULL:this._err(U.unexpectedNullCharacter),t.data+=`�`;break;default:t.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch(aT.DASH_DASH,!0)?(this._createCommentToken(aT.DASH_DASH.length+1),this.state=J.COMMENT_START):this._consumeSequenceIfMatch(aT.DOCTYPE,!1)?(this.currentLocation=this.getCurrentLocation(aT.DOCTYPE.length+1),this.state=J.DOCTYPE):this._consumeSequenceIfMatch(aT.CDATA_START,!0)?this.inForeignNode?this.state=J.CDATA_SECTION:(this._err(U.cdataInHtmlContent),this._createCommentToken(aT.CDATA_START.length+1),this.currentToken.data=`[CDATA[`,this.state=J.BOGUS_COMMENT):this._ensureHibernation()||(this._err(U.incorrectlyOpenedComment),this._createCommentToken(2),this.state=J.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case H.HYPHEN_MINUS:this.state=J.COMMENT_START_DASH;break;case H.GREATER_THAN_SIGN:{this._err(U.abruptClosingOfEmptyComment),this.state=J.DATA;let e=this.currentToken;this.emitCurrentComment(e);break}default:this.state=J.COMMENT,this._stateComment(e)}}_stateCommentStartDash(e){let t=this.currentToken;switch(e){case H.HYPHEN_MINUS:this.state=J.COMMENT_END;break;case H.GREATER_THAN_SIGN:this._err(U.abruptClosingOfEmptyComment),this.state=J.DATA,this.emitCurrentComment(t);break;case H.EOF:this._err(U.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=`-`,this.state=J.COMMENT,this._stateComment(e)}}_stateComment(e){let t=this.currentToken;switch(e){case H.HYPHEN_MINUS:this.state=J.COMMENT_END_DASH;break;case H.LESS_THAN_SIGN:t.data+=`<`,this.state=J.COMMENT_LESS_THAN_SIGN;break;case H.NULL:this._err(U.unexpectedNullCharacter),t.data+=`�`;break;case H.EOF:this._err(U.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){let t=this.currentToken;switch(e){case H.EXCLAMATION_MARK:t.data+=`!`,this.state=J.COMMENT_LESS_THAN_SIGN_BANG;break;case H.LESS_THAN_SIGN:t.data+=`<`;break;default:this.state=J.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===H.HYPHEN_MINUS?this.state=J.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=J.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===H.HYPHEN_MINUS?this.state=J.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=J.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==H.GREATER_THAN_SIGN&&e!==H.EOF&&this._err(U.nestedComment),this.state=J.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){let t=this.currentToken;switch(e){case H.HYPHEN_MINUS:this.state=J.COMMENT_END;break;case H.EOF:this._err(U.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=`-`,this.state=J.COMMENT,this._stateComment(e)}}_stateCommentEnd(e){let t=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentComment(t);break;case H.EXCLAMATION_MARK:this.state=J.COMMENT_END_BANG;break;case H.HYPHEN_MINUS:t.data+=`-`;break;case H.EOF:this._err(U.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=`--`,this.state=J.COMMENT,this._stateComment(e)}}_stateCommentEndBang(e){let t=this.currentToken;switch(e){case H.HYPHEN_MINUS:t.data+=`--!`,this.state=J.COMMENT_END_DASH;break;case H.GREATER_THAN_SIGN:this._err(U.incorrectlyClosedComment),this.state=J.DATA,this.emitCurrentComment(t);break;case H.EOF:this._err(U.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=`--!`,this.state=J.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.BEFORE_DOCTYPE_NAME;break;case H.GREATER_THAN_SIGN:this.state=J.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break;case H.EOF:{this._err(U.eofInDoctype),this._createDoctypeToken(null);let e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break}default:this._err(U.missingWhitespaceBeforeDoctypeName),this.state=J.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(LT(e))this._createDoctypeToken(String.fromCharCode(VT(e))),this.state=J.DOCTYPE_NAME;else switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.NULL:this._err(U.unexpectedNullCharacter),this._createDoctypeToken(`�`),this.state=J.DOCTYPE_NAME;break;case H.GREATER_THAN_SIGN:{this._err(U.missingDoctypeName),this._createDoctypeToken(null);let e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=J.DATA;break}case H.EOF:{this._err(U.eofInDoctype),this._createDoctypeToken(null);let e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(e)),this.state=J.DOCTYPE_NAME}}_stateDoctypeName(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.AFTER_DOCTYPE_NAME;break;case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.NULL:this._err(U.unexpectedNullCharacter),t.name+=`�`;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.name+=String.fromCodePoint(LT(e)?VT(e):e)}}_stateAfterDoctypeName(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._consumeSequenceIfMatch(aT.PUBLIC,!1)?this.state=J.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch(aT.SYSTEM,!1)?this.state=J.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(U.invalidCharacterSequenceAfterDoctypeName),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break;case H.QUOTATION_MARK:this._err(U.missingWhitespaceAfterDoctypePublicKeyword),t.publicId=``,this.state=J.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:this._err(U.missingWhitespaceAfterDoctypePublicKeyword),t.publicId=``,this.state=J.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case H.GREATER_THAN_SIGN:this._err(U.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:t.publicId=``,this.state=J.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:t.publicId=``,this.state=J.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case H.GREATER_THAN_SIGN:this._err(U.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){let t=this.currentToken;switch(e){case H.QUOTATION_MARK:this.state=J.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case H.NULL:this._err(U.unexpectedNullCharacter),t.publicId+=`�`;break;case H.GREATER_THAN_SIGN:this._err(U.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.publicId+=String.fromCodePoint(e)}}_stateDoctypePublicIdentifierSingleQuoted(e){let t=this.currentToken;switch(e){case H.APOSTROPHE:this.state=J.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case H.NULL:this._err(U.unexpectedNullCharacter),t.publicId+=`�`;break;case H.GREATER_THAN_SIGN:this._err(U.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.publicId+=String.fromCodePoint(e)}}_stateAfterDoctypePublicIdentifier(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break;case H.GREATER_THAN_SIGN:this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.QUOTATION_MARK:this._err(U.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:this._err(U.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.QUOTATION_MARK:t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:this.state=J.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break;case H.QUOTATION_MARK:this._err(U.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:this._err(U.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case H.GREATER_THAN_SIGN:this._err(U.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case H.APOSTROPHE:t.systemId=``,this.state=J.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case H.GREATER_THAN_SIGN:this._err(U.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.DATA,this.emitCurrentDoctype(t);break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){let t=this.currentToken;switch(e){case H.QUOTATION_MARK:this.state=J.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case H.NULL:this._err(U.unexpectedNullCharacter),t.systemId+=`�`;break;case H.GREATER_THAN_SIGN:this._err(U.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.systemId+=String.fromCodePoint(e)}}_stateDoctypeSystemIdentifierSingleQuoted(e){let t=this.currentToken;switch(e){case H.APOSTROPHE:this.state=J.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case H.NULL:this._err(U.unexpectedNullCharacter),t.systemId+=`�`;break;case H.GREATER_THAN_SIGN:this._err(U.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.systemId+=String.fromCodePoint(e)}}_stateAfterDoctypeSystemIdentifier(e){let t=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.EOF:this._err(U.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(U.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=J.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){let t=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=J.DATA;break;case H.NULL:this._err(U.unexpectedNullCharacter);break;case H.EOF:this.emitCurrentDoctype(t),this._emitEOFToken();break;default:}}_stateCdataSection(e){switch(e){case H.RIGHT_SQUARE_BRACKET:this.state=J.CDATA_SECTION_BRACKET;break;case H.EOF:this._err(U.eofInCdata),this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===H.RIGHT_SQUARE_BRACKET?this.state=J.CDATA_SECTION_END:(this._emitChars(`]`),this.state=J.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case H.GREATER_THAN_SIGN:this.state=J.DATA;break;case H.RIGHT_SQUARE_BRACKET:this._emitChars(`]`);break;default:this._emitChars(`]]`),this.state=J.CDATA_SECTION,this._stateCdataSection(e)}}_stateCharacterReference(){let e=this.entityDecoder.write(this.preprocessor.html,this.preprocessor.pos);if(e<0)if(this.preprocessor.lastChunkWritten)e=this.entityDecoder.end();else{this.active=!1,this.preprocessor.pos=this.preprocessor.html.length-1,this.consumedAfterSnapshot=0,this.preprocessor.endOfChunkHit=!0;return}e===0?(this.preprocessor.pos=this.entityStartPos,this._flushCodePointConsumedAsCharacterReference(H.AMPERSAND),this.state=!this._isCharacterReferenceInAttribute()&&BT(this.preprocessor.peek(1))?J.AMBIGUOUS_AMPERSAND:this.returnState):this.state=this.returnState}_stateAmbiguousAmpersand(e){BT(e)?this._flushCodePointConsumedAsCharacterReference(e):(e===H.SEMICOLON&&this._err(U.unknownNamedCharacterReference),this.state=this.returnState,this._callState(e))}},KT=new Set([K.DD,K.DT,K.LI,K.OPTGROUP,K.OPTION,K.P,K.RB,K.RP,K.RT,K.RTC]),qT=new Set([...KT,K.CAPTION,K.COLGROUP,K.TBODY,K.TD,K.TFOOT,K.TH,K.THEAD,K.TR]),JT=new Set([K.APPLET,K.CAPTION,K.HTML,K.MARQUEE,K.OBJECT,K.TABLE,K.TD,K.TEMPLATE,K.TH]),YT=new Set([...JT,K.OL,K.UL]),XT=new Set([...JT,K.BUTTON]),ZT=new Set([K.ANNOTATION_XML,K.MI,K.MN,K.MO,K.MS,K.MTEXT]),QT=new Set([K.DESC,K.FOREIGN_OBJECT,K.TITLE]),$T=new Set([K.TR,K.TEMPLATE,K.HTML]),eE=new Set([K.TBODY,K.TFOOT,K.THEAD,K.TEMPLATE,K.HTML]),tE=new Set([K.TABLE,K.TEMPLATE,K.HTML]),nE=new Set([K.TD,K.TH]),rE=class{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(e,t,n){this.treeAdapter=t,this.handler=n,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=K.UNKNOWN,this.current=e}_indexOf(e){return this.items.lastIndexOf(e,this.stackTop)}_isInTemplate(){return this.currentTagId===K.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===W.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(e,t){this.stackTop++,this.items[this.stackTop]=e,this.current=e,this.tagIDs[this.stackTop]=t,this.currentTagId=t,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(e,t,!0)}pop(){let e=this.current;this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,t){let n=this._indexOf(e);this.items[n]=t,n===this.stackTop&&(this.current=t)}insertAfter(e,t,n){let r=this._indexOf(e)+1;this.items.splice(r,0,t),this.tagIDs.splice(r,0,n),this.stackTop++,r===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,r===this.stackTop)}popUntilTagNamePopped(e){let t=this.stackTop+1;do t=this.tagIDs.lastIndexOf(e,t-1);while(t>0&&this.treeAdapter.getNamespaceURI(this.items[t])!==W.HTML);this.shortenToLength(Math.max(t,0))}shortenToLength(e){for(;this.stackTop>=e;){let t=this.current;this.tmplCount>0&&this._isInTemplate()&&--this.tmplCount,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,this.stackTop<e)}}popUntilElementPopped(e){let t=this._indexOf(e);this.shortenToLength(Math.max(t,0))}popUntilPopped(e,t){let n=this._indexOfTagNames(e,t);this.shortenToLength(Math.max(n,0))}popUntilNumberedHeaderPopped(){this.popUntilPopped(PT,W.HTML)}popUntilTableCellPopped(){this.popUntilPopped(nE,W.HTML)}popAllUpToHtmlElement(){this.tmplCount=0,this.shortenToLength(1)}_indexOfTagNames(e,t){for(let n=this.stackTop;n>=0;n--)if(e.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===t)return n;return-1}clearBackTo(e,t){let n=this._indexOfTagNames(e,t);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(tE,W.HTML)}clearBackToTableBodyContext(){this.clearBackTo(eE,W.HTML)}clearBackToTableRowContext(){this.clearBackTo($T,W.HTML)}remove(e){let t=this._indexOf(e);t>=0&&(t===this.stackTop?this.pop():(this.items.splice(t,1),this.tagIDs.splice(t,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===K.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let t=this._indexOf(e)-1;return t>=0?this.items[t]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===K.HTML}hasInDynamicScope(e,t){for(let n=this.stackTop;n>=0;n--){let r=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case W.HTML:if(r===e)return!0;if(t.has(r))return!1;break;case W.SVG:if(QT.has(r))return!1;break;case W.MATHML:if(ZT.has(r))return!1;break}}return!0}hasInScope(e){return this.hasInDynamicScope(e,JT)}hasInListItemScope(e){return this.hasInDynamicScope(e,YT)}hasInButtonScope(e){return this.hasInDynamicScope(e,XT)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let t=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case W.HTML:if(PT.has(t))return!0;if(JT.has(t))return!1;break;case W.SVG:if(QT.has(t))return!1;break;case W.MATHML:if(ZT.has(t))return!1;break}}return!0}hasInTableScope(e){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===W.HTML)switch(this.tagIDs[t]){case e:return!0;case K.TABLE:case K.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===W.HTML)switch(this.tagIDs[e]){case K.TBODY:case K.THEAD:case K.TFOOT:return!0;case K.TABLE:case K.HTML:return!1}return!0}hasInSelectScope(e){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===W.HTML)switch(this.tagIDs[t]){case e:return!0;case K.OPTION:case K.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&KT.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&qT.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&qT.has(this.currentTagId);)this.pop()}},iE=3,aE;(function(e){e[e.Marker=0]=`Marker`,e[e.Element=1]=`Element`})(aE||={});var oE={type:aE.Marker},sE=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,t){let n=[],r=t.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let e=0;e<this.entries.length;e++){let t=this.entries[e];if(t.type===aE.Marker)break;let{element:o}=t;if(this.treeAdapter.getTagName(o)===i&&this.treeAdapter.getNamespaceURI(o)===a){let t=this.treeAdapter.getAttrList(o);t.length===r&&n.push({idx:e,attrs:t})}}return n}_ensureNoahArkCondition(e){if(this.entries.length<iE)return;let t=this.treeAdapter.getAttrList(e),n=this._getNoahArkConditionCandidates(e,t);if(n.length<iE)return;let r=new Map(t.map(e=>[e.name,e.value])),i=0;for(let e=0;e<n.length;e++){let t=n[e];t.attrs.every(e=>r.get(e.name)===e.value)&&(i+=1,i>=iE&&this.entries.splice(t.idx,1))}}insertMarker(){this.entries.unshift(oE)}pushElement(e,t){this._ensureNoahArkCondition(e),this.entries.unshift({type:aE.Element,element:e,token:t})}insertElementAfterBookmark(e,t){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:aE.Element,element:e,token:t})}removeEntry(e){let t=this.entries.indexOf(e);t!==-1&&this.entries.splice(t,1)}clearToLastMarker(){let e=this.entries.indexOf(oE);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let t=this.entries.find(t=>t.type===aE.Marker||this.treeAdapter.getTagName(t.element)===e);return t&&t.type===aE.Element?t:null}getElementEntry(e){return this.entries.find(t=>t.type===aE.Element&&t.element===e)}},cE={createDocument(){return{nodeName:`#document`,mode:AT.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:`#document-fragment`,childNodes:[]}},createElement(e,t,n){return{nodeName:e,tagName:e,attrs:n,namespaceURI:t,childNodes:[],parentNode:null}},createCommentNode(e){return{nodeName:`#comment`,data:e,parentNode:null}},createTextNode(e){return{nodeName:`#text`,value:e,parentNode:null}},appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,n){let r=e.childNodes.indexOf(n);e.childNodes.splice(r,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent(e){return e.content},setDocumentType(e,t,n,r){let i=e.childNodes.find(e=>e.nodeName===`#documentType`);if(i)i.name=t,i.publicId=n,i.systemId=r;else{let i={nodeName:`#documentType`,name:t,publicId:n,systemId:r,parentNode:null};cE.appendChild(e,i)}},setDocumentMode(e,t){e.mode=t},getDocumentMode(e){return e.mode},detachNode(e){if(e.parentNode){let t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){let n=e.childNodes[e.childNodes.length-1];if(cE.isTextNode(n)){n.value+=t;return}}cE.appendChild(e,cE.createTextNode(t))},insertTextBefore(e,t,n){let r=e.childNodes[e.childNodes.indexOf(n)-1];r&&cE.isTextNode(r)?r.value+=t:cE.insertBefore(e,cE.createTextNode(t),n)},adoptAttributes(e,t){let n=new Set(e.attrs.map(e=>e.name));for(let r=0;r<t.length;r++)n.has(t[r].name)||e.attrs.push(t[r])},getFirstChild(e){return e.childNodes[0]},getChildNodes(e){return e.childNodes},getParentNode(e){return e.parentNode},getAttrList(e){return e.attrs},getTagName(e){return e.tagName},getNamespaceURI(e){return e.namespaceURI},getTextNodeContent(e){return e.value},getCommentNodeContent(e){return e.data},getDocumentTypeNodeName(e){return e.name},getDocumentTypeNodePublicId(e){return e.publicId},getDocumentTypeNodeSystemId(e){return e.systemId},isTextNode(e){return e.nodeName===`#text`},isCommentNode(e){return e.nodeName===`#comment`},isDocumentTypeNode(e){return e.nodeName===`#documentType`},isElementNode(e){return Object.prototype.hasOwnProperty.call(e,`tagName`)},setNodeSourceCodeLocation(e,t){e.sourceCodeLocation=t},getNodeSourceCodeLocation(e){return e.sourceCodeLocation},updateNodeSourceCodeLocation(e,t){e.sourceCodeLocation={...e.sourceCodeLocation,...t}}},lE=`html`,uE=`about:legacy-compat`,dE=`http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd`,fE=`+//silmaril//dtd html pro v0r11 19970101//,-//as//dtd html 3.0 aswedit + extensions//,-//advasoft ltd//dtd html 3.0 aswedit + extensions//,-//ietf//dtd html 2.0 level 1//,-//ietf//dtd html 2.0 level 2//,-//ietf//dtd html 2.0 strict level 1//,-//ietf//dtd html 2.0 strict level 2//,-//ietf//dtd html 2.0 strict//,-//ietf//dtd html 2.0//,-//ietf//dtd html 2.1e//,-//ietf//dtd html 3.0//,-//ietf//dtd html 3.2 final//,-//ietf//dtd html 3.2//,-//ietf//dtd html 3//,-//ietf//dtd html level 0//,-//ietf//dtd html level 1//,-//ietf//dtd html level 2//,-//ietf//dtd html level 3//,-//ietf//dtd html strict level 0//,-//ietf//dtd html strict level 1//,-//ietf//dtd html strict level 2//,-//ietf//dtd html strict level 3//,-//ietf//dtd html strict//,-//ietf//dtd html//,-//metrius//dtd metrius presentational//,-//microsoft//dtd internet explorer 2.0 html strict//,-//microsoft//dtd internet explorer 2.0 html//,-//microsoft//dtd internet explorer 2.0 tables//,-//microsoft//dtd internet explorer 3.0 html strict//,-//microsoft//dtd internet explorer 3.0 html//,-//microsoft//dtd internet explorer 3.0 tables//,-//netscape comm. corp.//dtd html//,-//netscape comm. corp.//dtd strict html//,-//o'reilly and associates//dtd html 2.0//,-//o'reilly and associates//dtd html extended 1.0//,-//o'reilly and associates//dtd html extended relaxed 1.0//,-//sq//dtd html 2.0 hotmetal + extensions//,-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//,-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//,-//spyglass//dtd html 2.0 extended//,-//sun microsystems corp.//dtd hotjava html//,-//sun microsystems corp.//dtd hotjava strict html//,-//w3c//dtd html 3 1995-03-24//,-//w3c//dtd html 3.2 draft//,-//w3c//dtd html 3.2 final//,-//w3c//dtd html 3.2//,-//w3c//dtd html 3.2s draft//,-//w3c//dtd html 4.0 frameset//,-//w3c//dtd html 4.0 transitional//,-//w3c//dtd html experimental 19960712//,-//w3c//dtd html experimental 970421//,-//w3c//dtd w3 html//,-//w3o//dtd w3 html 3.0//,-//webtechs//dtd mozilla html 2.0//,-//webtechs//dtd mozilla html//`.split(`,`),pE=[...fE,`-//w3c//dtd html 4.01 frameset//`,`-//w3c//dtd html 4.01 transitional//`],mE=new Set([`-//w3o//dtd w3 html strict 3.0//en//`,`-/w3c/dtd html 4.0 transitional/en`,`html`]),hE=[`-//w3c//dtd xhtml 1.0 frameset//`,`-//w3c//dtd xhtml 1.0 transitional//`],gE=[...hE,`-//w3c//dtd html 4.01 frameset//`,`-//w3c//dtd html 4.01 transitional//`];function _E(e,t){return t.some(t=>e.startsWith(t))}function vE(e){return e.name===lE&&e.publicId===null&&(e.systemId===null||e.systemId===uE)}function yE(e){if(e.name!==lE)return AT.QUIRKS;let{systemId:t}=e;if(t&&t.toLowerCase()===dE)return AT.QUIRKS;let{publicId:n}=e;if(n!==null){if(n=n.toLowerCase(),mE.has(n))return AT.QUIRKS;let e=t===null?pE:fE;if(_E(n,e))return AT.QUIRKS;if(e=t===null?hE:gE,_E(n,e))return AT.LIMITED_QUIRKS}return AT.NO_QUIRKS}var bE={TEXT_HTML:`text/html`,APPLICATION_XML:`application/xhtml+xml`},xE=`definitionurl`,SE=`definitionURL`,CE=new Map(`attributeName.attributeType.baseFrequency.baseProfile.calcMode.clipPathUnits.diffuseConstant.edgeMode.filterUnits.glyphRef.gradientTransform.gradientUnits.kernelMatrix.kernelUnitLength.keyPoints.keySplines.keyTimes.lengthAdjust.limitingConeAngle.markerHeight.markerUnits.markerWidth.maskContentUnits.maskUnits.numOctaves.pathLength.patternContentUnits.patternTransform.patternUnits.pointsAtX.pointsAtY.pointsAtZ.preserveAlpha.preserveAspectRatio.primitiveUnits.refX.refY.repeatCount.repeatDur.requiredExtensions.requiredFeatures.specularConstant.specularExponent.spreadMethod.startOffset.stdDeviation.stitchTiles.surfaceScale.systemLanguage.tableValues.targetX.targetY.textLength.viewBox.viewTarget.xChannelSelector.yChannelSelector.zoomAndPan`.split(`.`).map(e=>[e.toLowerCase(),e])),wE=new Map([[`xlink:actuate`,{prefix:`xlink`,name:`actuate`,namespace:W.XLINK}],[`xlink:arcrole`,{prefix:`xlink`,name:`arcrole`,namespace:W.XLINK}],[`xlink:href`,{prefix:`xlink`,name:`href`,namespace:W.XLINK}],[`xlink:role`,{prefix:`xlink`,name:`role`,namespace:W.XLINK}],[`xlink:show`,{prefix:`xlink`,name:`show`,namespace:W.XLINK}],[`xlink:title`,{prefix:`xlink`,name:`title`,namespace:W.XLINK}],[`xlink:type`,{prefix:`xlink`,name:`type`,namespace:W.XLINK}],[`xml:lang`,{prefix:`xml`,name:`lang`,namespace:W.XML}],[`xml:space`,{prefix:`xml`,name:`space`,namespace:W.XML}],[`xmlns`,{prefix:``,name:`xmlns`,namespace:W.XMLNS}],[`xmlns:xlink`,{prefix:`xmlns`,name:`xlink`,namespace:W.XMLNS}]]),TE=new Map(`altGlyph.altGlyphDef.altGlyphItem.animateColor.animateMotion.animateTransform.clipPath.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.foreignObject.glyphRef.linearGradient.radialGradient.textPath`.split(`.`).map(e=>[e.toLowerCase(),e])),EE=new Set([K.B,K.BIG,K.BLOCKQUOTE,K.BODY,K.BR,K.CENTER,K.CODE,K.DD,K.DIV,K.DL,K.DT,K.EM,K.EMBED,K.H1,K.H2,K.H3,K.H4,K.H5,K.H6,K.HEAD,K.HR,K.I,K.IMG,K.LI,K.LISTING,K.MENU,K.META,K.NOBR,K.OL,K.P,K.PRE,K.RUBY,K.S,K.SMALL,K.SPAN,K.STRONG,K.STRIKE,K.SUB,K.SUP,K.TABLE,K.TT,K.U,K.UL,K.VAR]);function DE(e){let t=e.tagID;return t===K.FONT&&e.attrs.some(({name:e})=>e===kT.COLOR||e===kT.SIZE||e===kT.FACE)||EE.has(t)}function OE(e){for(let t=0;t<e.attrs.length;t++)if(e.attrs[t].name===xE){e.attrs[t].name=SE;break}}function kE(e){for(let t=0;t<e.attrs.length;t++){let n=CE.get(e.attrs[t].name);n!=null&&(e.attrs[t].name=n)}}function AE(e){for(let t=0;t<e.attrs.length;t++){let n=wE.get(e.attrs[t].name);n&&(e.attrs[t].prefix=n.prefix,e.attrs[t].name=n.name,e.attrs[t].namespace=n.namespace)}}function jE(e){let t=TE.get(e.tagName);t!=null&&(e.tagName=t,e.tagID=MT(e.tagName))}function ME(e,t){return t===W.MATHML&&(e===K.MI||e===K.MO||e===K.MN||e===K.MS||e===K.MTEXT)}function NE(e,t,n){if(t===W.MATHML&&e===K.ANNOTATION_XML){for(let e=0;e<n.length;e++)if(n[e].name===kT.ENCODING){let t=n[e].value.toLowerCase();return t===bE.TEXT_HTML||t===bE.APPLICATION_XML}}return t===W.SVG&&(e===K.FOREIGN_OBJECT||e===K.DESC||e===K.TITLE)}function PE(e,t,n,r){return(!r||r===W.HTML)&&NE(e,t,n)||(!r||r===W.MATHML)&&ME(e,t)}var FE=`hidden`,IE=8,LE=3,Y;(function(e){e[e.INITIAL=0]=`INITIAL`,e[e.BEFORE_HTML=1]=`BEFORE_HTML`,e[e.BEFORE_HEAD=2]=`BEFORE_HEAD`,e[e.IN_HEAD=3]=`IN_HEAD`,e[e.IN_HEAD_NO_SCRIPT=4]=`IN_HEAD_NO_SCRIPT`,e[e.AFTER_HEAD=5]=`AFTER_HEAD`,e[e.IN_BODY=6]=`IN_BODY`,e[e.TEXT=7]=`TEXT`,e[e.IN_TABLE=8]=`IN_TABLE`,e[e.IN_TABLE_TEXT=9]=`IN_TABLE_TEXT`,e[e.IN_CAPTION=10]=`IN_CAPTION`,e[e.IN_COLUMN_GROUP=11]=`IN_COLUMN_GROUP`,e[e.IN_TABLE_BODY=12]=`IN_TABLE_BODY`,e[e.IN_ROW=13]=`IN_ROW`,e[e.IN_CELL=14]=`IN_CELL`,e[e.IN_SELECT=15]=`IN_SELECT`,e[e.IN_SELECT_IN_TABLE=16]=`IN_SELECT_IN_TABLE`,e[e.IN_TEMPLATE=17]=`IN_TEMPLATE`,e[e.AFTER_BODY=18]=`AFTER_BODY`,e[e.IN_FRAMESET=19]=`IN_FRAMESET`,e[e.AFTER_FRAMESET=20]=`AFTER_FRAMESET`,e[e.AFTER_AFTER_BODY=21]=`AFTER_AFTER_BODY`,e[e.AFTER_AFTER_FRAMESET=22]=`AFTER_AFTER_FRAMESET`})(Y||={});var RE={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},zE=new Set([K.TABLE,K.TBODY,K.TFOOT,K.THEAD,K.TR]),BE={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:cE,onParseError:null},VE=class{constructor(e,t,n=null,r=null){this.fragmentContext=n,this.scriptHandler=r,this.currentToken=null,this.stopped=!1,this.insertionMode=Y.INITIAL,this.originalInsertionMode=Y.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...BE,...e},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=t??this.treeAdapter.createDocument(),this.tokenizer=new GT(this.options,this),this.activeFormattingElements=new sE(this.treeAdapter),this.fragmentContextID=n?MT(this.treeAdapter.getTagName(n)):K.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new rE(this.document,this.treeAdapter,this)}static parse(e,t){let n=new this(t);return n.tokenizer.write(e,!0),n.document}static getFragmentParser(e,t){let n={...BE,...t};e??=n.treeAdapter.createElement(G.TEMPLATE,W.HTML,[]);let r=n.treeAdapter.createElement(`documentmock`,W.HTML,[]),i=new this(n,r,e);return i.fragmentContextID===K.TEMPLATE&&i.tmplInsertionModeStack.unshift(Y.IN_TEMPLATE),i._initTokenizerForFragmentParsing(),i._insertFakeRootElement(),i._resetInsertionMode(),i._findFormInFragmentContext(),i}getFragment(){let e=this.treeAdapter.getFirstChild(this.document),t=this.treeAdapter.createDocumentFragment();return this._adoptNodes(e,t),t}_err(e,t,n){if(!this.onParseError)return;let r=e.location??RE,i={code:t,startLine:r.startLine,startCol:r.startCol,startOffset:r.startOffset,endLine:n?r.startLine:r.endLine,endCol:n?r.startCol:r.endCol,endOffset:n?r.startOffset:r.endOffset};this.onParseError(i)}onItemPush(e,t,n){var r,i;(i=(r=this.treeAdapter).onItemPush)==null||i.call(r,e),n&&this.openElements.stackTop>0&&this._setContextModes(e,t)}onItemPop(e,t){var n,r;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),(r=(n=this.treeAdapter).onItemPop)==null||r.call(n,e,this.openElements.current),t){let e,t;this.openElements.stackTop===0&&this.fragmentContext?(e=this.fragmentContext,t=this.fragmentContextID):{current:e,currentTagId:t}=this.openElements,this._setContextModes(e,t)}}_setContextModes(e,t){let n=e===this.document||e&&this.treeAdapter.getNamespaceURI(e)===W.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&e!==void 0&&t!==void 0&&!this._isIntegrationPoint(t,e)}_switchToTextParsing(e,t){this._insertElement(e,W.HTML),this.tokenizer.state=t,this.originalInsertionMode=this.insertionMode,this.insertionMode=Y.TEXT}switchToPlaintextParsing(){this.insertionMode=Y.TEXT,this.originalInsertionMode=Y.IN_BODY,this.tokenizer.state=FT.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===G.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==W.HTML))switch(this.fragmentContextID){case K.TITLE:case K.TEXTAREA:this.tokenizer.state=FT.RCDATA;break;case K.STYLE:case K.XMP:case K.IFRAME:case K.NOEMBED:case K.NOFRAMES:case K.NOSCRIPT:this.tokenizer.state=FT.RAWTEXT;break;case K.SCRIPT:this.tokenizer.state=FT.SCRIPT_DATA;break;case K.PLAINTEXT:this.tokenizer.state=FT.PLAINTEXT;break;default:}}_setDocumentType(e){let t=e.name||``,n=e.publicId||``,r=e.systemId||``;if(this.treeAdapter.setDocumentType(this.document,t,n,r),e.location){let t=this.treeAdapter.getChildNodes(this.document).find(e=>this.treeAdapter.isDocumentTypeNode(e));t&&this.treeAdapter.setNodeSourceCodeLocation(t,e.location)}}_attachElementToTree(e,t){if(this.options.sourceCodeLocationInfo){let n=t&&{...t,startTag:t};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let t=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(t??this.document,e)}}_appendElement(e,t){let n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,t){let n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,t){let n=this.treeAdapter.createElement(e,W.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,t)}_insertTemplate(e){let t=this.treeAdapter.createElement(e.tagName,W.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(t,n),this._attachElementToTree(t,e.location),this.openElements.push(t,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(G.HTML,W.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,K.HTML)}_appendCommentNode(e,t){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(t,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let t,n;if(this._shouldFosterParentOnInsertion()?({parent:t,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(t,e.chars,n):this.treeAdapter.insertText(t,e.chars)):(t=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(t,e.chars)),!e.location)return;let r=this.treeAdapter.getChildNodes(t),i=r[(n?r.lastIndexOf(n):r.length)-1];if(this.treeAdapter.getNodeSourceCodeLocation(i)){let{endLine:t,endCol:n,endOffset:r}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(i,{endLine:t,endCol:n,endOffset:r})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(i,e.location)}_adoptNodes(e,t){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(t,n)}_setEndLocation(e,t){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&t.location){let n=t.location,r=this.treeAdapter.getTagName(e),i=t.type===pT.END_TAG&&r===t.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let t,n;return this.openElements.stackTop===0&&this.fragmentContext?(t=this.fragmentContext,n=this.fragmentContextID):{current:t,currentTagId:n}=this.openElements,e.tagID===K.SVG&&this.treeAdapter.getTagName(t)===G.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(t)===W.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===K.MGLYPH||e.tagID===K.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,t,W.HTML)}_processToken(e){switch(e.type){case pT.CHARACTER:this.onCharacter(e);break;case pT.NULL_CHARACTER:this.onNullCharacter(e);break;case pT.COMMENT:this.onComment(e);break;case pT.DOCTYPE:this.onDoctype(e);break;case pT.START_TAG:this._processStartTag(e);break;case pT.END_TAG:this.onEndTag(e);break;case pT.EOF:this.onEof(e);break;case pT.WHITESPACE_CHARACTER:this.onWhitespaceCharacter(e);break}}_isIntegrationPoint(e,t,n){return PE(e,this.treeAdapter.getNamespaceURI(t),this.treeAdapter.getAttrList(t),n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let t=this.activeFormattingElements.entries.findIndex(e=>e.type===aE.Marker||this.openElements.contains(e.element)),n=t===-1?e-1:t-1;for(let e=n;e>=0;e--){let t=this.activeFormattingElements.entries[e];this._insertElement(t.token,this.treeAdapter.getNamespaceURI(t.element)),t.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=Y.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(K.P),this.openElements.popUntilTagNamePopped(K.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case K.TR:this.insertionMode=Y.IN_ROW;return;case K.TBODY:case K.THEAD:case K.TFOOT:this.insertionMode=Y.IN_TABLE_BODY;return;case K.CAPTION:this.insertionMode=Y.IN_CAPTION;return;case K.COLGROUP:this.insertionMode=Y.IN_COLUMN_GROUP;return;case K.TABLE:this.insertionMode=Y.IN_TABLE;return;case K.BODY:this.insertionMode=Y.IN_BODY;return;case K.FRAMESET:this.insertionMode=Y.IN_FRAMESET;return;case K.SELECT:this._resetInsertionModeForSelect(e);return;case K.TEMPLATE:this.insertionMode=this.tmplInsertionModeStack[0];return;case K.HTML:this.insertionMode=this.headElement?Y.AFTER_HEAD:Y.BEFORE_HEAD;return;case K.TD:case K.TH:if(e>0){this.insertionMode=Y.IN_CELL;return}break;case K.HEAD:if(e>0){this.insertionMode=Y.IN_HEAD;return}break}this.insertionMode=Y.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let t=e-1;t>0;t--){let e=this.openElements.tagIDs[t];if(e===K.TEMPLATE)break;if(e===K.TABLE){this.insertionMode=Y.IN_SELECT_IN_TABLE;return}}this.insertionMode=Y.IN_SELECT}_isElementCausesFosterParenting(e){return zE.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let t=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case K.TEMPLATE:if(this.treeAdapter.getNamespaceURI(t)===W.HTML)return{parent:this.treeAdapter.getTemplateContent(t),beforeElement:null};break;case K.TABLE:{let n=this.treeAdapter.getParentNode(t);return n?{parent:n,beforeElement:t}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let t=this._findFosterParentingLocation();t.beforeElement?this.treeAdapter.insertBefore(t.parent,e,t.beforeElement):this.treeAdapter.appendChild(t.parent,e)}_isSpecialElement(e,t){return NT[this.treeAdapter.getNamespaceURI(e)].has(t)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){ak(this,e);return}switch(this.insertionMode){case Y.INITIAL:eD(this,e);break;case Y.BEFORE_HTML:rD(this,e);break;case Y.BEFORE_HEAD:oD(this,e);break;case Y.IN_HEAD:uD(this,e);break;case Y.IN_HEAD_NO_SCRIPT:pD(this,e);break;case Y.AFTER_HEAD:gD(this,e);break;case Y.IN_BODY:case Y.IN_CAPTION:case Y.IN_CELL:case Y.IN_TEMPLATE:yD(this,e);break;case Y.TEXT:case Y.IN_SELECT:case Y.IN_SELECT_IN_TABLE:this._insertCharacters(e);break;case Y.IN_TABLE:case Y.IN_TABLE_BODY:case Y.IN_ROW:mO(this,e);break;case Y.IN_TABLE_TEXT:DO(this,e);break;case Y.IN_COLUMN_GROUP:PO(this,e);break;case Y.AFTER_BODY:XO(this,e);break;case Y.AFTER_AFTER_BODY:nk(this,e);break;default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){ik(this,e);return}switch(this.insertionMode){case Y.INITIAL:eD(this,e);break;case Y.BEFORE_HTML:rD(this,e);break;case Y.BEFORE_HEAD:oD(this,e);break;case Y.IN_HEAD:uD(this,e);break;case Y.IN_HEAD_NO_SCRIPT:pD(this,e);break;case Y.AFTER_HEAD:gD(this,e);break;case Y.TEXT:this._insertCharacters(e);break;case Y.IN_TABLE:case Y.IN_TABLE_BODY:case Y.IN_ROW:mO(this,e);break;case Y.IN_COLUMN_GROUP:PO(this,e);break;case Y.AFTER_BODY:XO(this,e);break;case Y.AFTER_AFTER_BODY:nk(this,e);break;default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){YE(this,e);return}switch(this.insertionMode){case Y.INITIAL:case Y.BEFORE_HTML:case Y.BEFORE_HEAD:case Y.IN_HEAD:case Y.IN_HEAD_NO_SCRIPT:case Y.AFTER_HEAD:case Y.IN_BODY:case Y.IN_TABLE:case Y.IN_CAPTION:case Y.IN_COLUMN_GROUP:case Y.IN_TABLE_BODY:case Y.IN_ROW:case Y.IN_CELL:case Y.IN_SELECT:case Y.IN_SELECT_IN_TABLE:case Y.IN_TEMPLATE:case Y.IN_FRAMESET:case Y.AFTER_FRAMESET:YE(this,e);break;case Y.IN_TABLE_TEXT:OO(this,e);break;case Y.AFTER_BODY:XE(this,e);break;case Y.AFTER_AFTER_BODY:case Y.AFTER_AFTER_FRAMESET:ZE(this,e);break;default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case Y.INITIAL:$E(this,e);break;case Y.BEFORE_HEAD:case Y.IN_HEAD:case Y.IN_HEAD_NO_SCRIPT:case Y.AFTER_HEAD:this._err(e,U.misplacedDoctype);break;case Y.IN_TABLE_TEXT:OO(this,e);break;default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,U.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?sk(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case Y.INITIAL:eD(this,e);break;case Y.BEFORE_HTML:tD(this,e);break;case Y.BEFORE_HEAD:iD(this,e);break;case Y.IN_HEAD:sD(this,e);break;case Y.IN_HEAD_NO_SCRIPT:dD(this,e);break;case Y.AFTER_HEAD:mD(this,e);break;case Y.IN_BODY:QD(this,e);break;case Y.IN_TABLE:CO(this,e);break;case Y.IN_TABLE_TEXT:OO(this,e);break;case Y.IN_CAPTION:AO(this,e);break;case Y.IN_COLUMN_GROUP:MO(this,e);break;case Y.IN_TABLE_BODY:FO(this,e);break;case Y.IN_ROW:LO(this,e);break;case Y.IN_CELL:zO(this,e);break;case Y.IN_SELECT:VO(this,e);break;case Y.IN_SELECT_IN_TABLE:UO(this,e);break;case Y.IN_TEMPLATE:GO(this,e);break;case Y.AFTER_BODY:JO(this,e);break;case Y.IN_FRAMESET:ZO(this,e);break;case Y.AFTER_FRAMESET:$O(this,e);break;case Y.AFTER_AFTER_BODY:tk(this,e);break;case Y.AFTER_AFTER_FRAMESET:rk(this,e);break;default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?ck(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case Y.INITIAL:eD(this,e);break;case Y.BEFORE_HTML:nD(this,e);break;case Y.BEFORE_HEAD:aD(this,e);break;case Y.IN_HEAD:cD(this,e);break;case Y.IN_HEAD_NO_SCRIPT:fD(this,e);break;case Y.AFTER_HEAD:hD(this,e);break;case Y.IN_BODY:uO(this,e);break;case Y.TEXT:fO(this,e);break;case Y.IN_TABLE:wO(this,e);break;case Y.IN_TABLE_TEXT:OO(this,e);break;case Y.IN_CAPTION:jO(this,e);break;case Y.IN_COLUMN_GROUP:NO(this,e);break;case Y.IN_TABLE_BODY:IO(this,e);break;case Y.IN_ROW:RO(this,e);break;case Y.IN_CELL:BO(this,e);break;case Y.IN_SELECT:HO(this,e);break;case Y.IN_SELECT_IN_TABLE:WO(this,e);break;case Y.IN_TEMPLATE:KO(this,e);break;case Y.AFTER_BODY:YO(this,e);break;case Y.IN_FRAMESET:QO(this,e);break;case Y.AFTER_FRAMESET:ek(this,e);break;case Y.AFTER_AFTER_BODY:nk(this,e);break;default:}}onEof(e){switch(this.insertionMode){case Y.INITIAL:eD(this,e);break;case Y.BEFORE_HTML:rD(this,e);break;case Y.BEFORE_HEAD:oD(this,e);break;case Y.IN_HEAD:uD(this,e);break;case Y.IN_HEAD_NO_SCRIPT:pD(this,e);break;case Y.AFTER_HEAD:gD(this,e);break;case Y.IN_BODY:case Y.IN_TABLE:case Y.IN_CAPTION:case Y.IN_COLUMN_GROUP:case Y.IN_TABLE_BODY:case Y.IN_ROW:case Y.IN_CELL:case Y.IN_SELECT:case Y.IN_SELECT_IN_TABLE:dO(this,e);break;case Y.TEXT:pO(this,e);break;case Y.IN_TABLE_TEXT:OO(this,e);break;case Y.IN_TEMPLATE:qO(this,e);break;case Y.AFTER_BODY:case Y.IN_FRAMESET:case Y.AFTER_FRAMESET:case Y.AFTER_AFTER_BODY:case Y.AFTER_AFTER_FRAMESET:QE(this,e);break;default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===H.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case Y.IN_HEAD:case Y.IN_HEAD_NO_SCRIPT:case Y.AFTER_HEAD:case Y.TEXT:case Y.IN_COLUMN_GROUP:case Y.IN_SELECT:case Y.IN_SELECT_IN_TABLE:case Y.IN_FRAMESET:case Y.AFTER_FRAMESET:this._insertCharacters(e);break;case Y.IN_BODY:case Y.IN_CAPTION:case Y.IN_CELL:case Y.IN_TEMPLATE:case Y.AFTER_BODY:case Y.AFTER_AFTER_BODY:case Y.AFTER_AFTER_FRAMESET:vD(this,e);break;case Y.IN_TABLE:case Y.IN_TABLE_BODY:case Y.IN_ROW:mO(this,e);break;case Y.IN_TABLE_TEXT:EO(this,e);break;default:}}};function HE(e,t){let n=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return n?e.openElements.contains(n.element)?e.openElements.hasInScope(t.tagID)||(n=null):(e.activeFormattingElements.removeEntry(n),n=null):lO(e,t),n}function UE(e,t){let n=null,r=e.openElements.stackTop;for(;r>=0;r--){let i=e.openElements.items[r];if(i===t.element)break;e._isSpecialElement(i,e.openElements.tagIDs[r])&&(n=i)}return n||(e.openElements.shortenToLength(Math.max(r,0)),e.activeFormattingElements.removeEntry(t)),n}function WE(e,t,n){let r=t,i=e.openElements.getCommonAncestor(t);for(let a=0,o=i;o!==n;a++,o=i){i=e.openElements.getCommonAncestor(o);let n=e.activeFormattingElements.getElementEntry(o),s=n&&a>=LE;!n||s?(s&&e.activeFormattingElements.removeEntry(n),e.openElements.remove(o)):(o=GE(e,n),r===t&&(e.activeFormattingElements.bookmark=n),e.treeAdapter.detachNode(r),e.treeAdapter.appendChild(o,r),r=o)}return r}function GE(e,t){let n=e.treeAdapter.getNamespaceURI(t.element),r=e.treeAdapter.createElement(t.token.tagName,n,t.token.attrs);return e.openElements.replace(t.element,r),t.element=r,r}function KE(e,t,n){let r=MT(e.treeAdapter.getTagName(t));if(e._isElementCausesFosterParenting(r))e._fosterParentElement(n);else{let i=e.treeAdapter.getNamespaceURI(t);r===K.TEMPLATE&&i===W.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,n)}}function qE(e,t,n){let r=e.treeAdapter.getNamespaceURI(n.element),{token:i}=n,a=e.treeAdapter.createElement(i.tagName,r,i.attrs);e._adoptNodes(t,a),e.treeAdapter.appendChild(t,a),e.activeFormattingElements.insertElementAfterBookmark(a,i),e.activeFormattingElements.removeEntry(n),e.openElements.remove(n.element),e.openElements.insertAfter(t,a,i.tagID)}function JE(e,t){for(let n=0;n<IE;n++){let n=HE(e,t);if(!n)break;let r=UE(e,n);if(!r)break;e.activeFormattingElements.bookmark=n;let i=WE(e,r,n.element),a=e.openElements.getCommonAncestor(n.element);e.treeAdapter.detachNode(i),a&&KE(e,a,i),qE(e,r,n)}}function YE(e,t){e._appendCommentNode(t,e.openElements.currentTmplContentOrNode)}function XE(e,t){e._appendCommentNode(t,e.openElements.items[0])}function ZE(e,t){e._appendCommentNode(t,e.document)}function QE(e,t){if(e.stopped=!0,t.location){let n=e.fragmentContext?0:2;for(let r=e.openElements.stackTop;r>=n;r--)e._setEndLocation(e.openElements.items[r],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){let n=e.openElements.items[0],r=e.treeAdapter.getNodeSourceCodeLocation(n);if(r&&!r.endTag&&(e._setEndLocation(n,t),e.openElements.stackTop>=1)){let n=e.openElements.items[1],r=e.treeAdapter.getNodeSourceCodeLocation(n);r&&!r.endTag&&e._setEndLocation(n,t)}}}}function $E(e,t){e._setDocumentType(t);let n=t.forceQuirks?AT.QUIRKS:yE(t);vE(t)||e._err(t,U.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,n),e.insertionMode=Y.BEFORE_HTML}function eD(e,t){e._err(t,U.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,AT.QUIRKS),e.insertionMode=Y.BEFORE_HTML,e._processToken(t)}function tD(e,t){t.tagID===K.HTML?(e._insertElement(t,W.HTML),e.insertionMode=Y.BEFORE_HEAD):rD(e,t)}function nD(e,t){let n=t.tagID;(n===K.HTML||n===K.HEAD||n===K.BODY||n===K.BR)&&rD(e,t)}function rD(e,t){e._insertFakeRootElement(),e.insertionMode=Y.BEFORE_HEAD,e._processToken(t)}function iD(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.HEAD:e._insertElement(t,W.HTML),e.headElement=e.openElements.current,e.insertionMode=Y.IN_HEAD;break;default:oD(e,t)}}function aD(e,t){let n=t.tagID;n===K.HEAD||n===K.BODY||n===K.HTML||n===K.BR?oD(e,t):e._err(t,U.endTagWithoutMatchingOpenElement)}function oD(e,t){e._insertFakeElement(G.HEAD,K.HEAD),e.headElement=e.openElements.current,e.insertionMode=Y.IN_HEAD,e._processToken(t)}function sD(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.BASE:case K.BASEFONT:case K.BGSOUND:case K.LINK:case K.META:e._appendElement(t,W.HTML),t.ackSelfClosing=!0;break;case K.TITLE:e._switchToTextParsing(t,FT.RCDATA);break;case K.NOSCRIPT:e.options.scriptingEnabled?e._switchToTextParsing(t,FT.RAWTEXT):(e._insertElement(t,W.HTML),e.insertionMode=Y.IN_HEAD_NO_SCRIPT);break;case K.NOFRAMES:case K.STYLE:e._switchToTextParsing(t,FT.RAWTEXT);break;case K.SCRIPT:e._switchToTextParsing(t,FT.SCRIPT_DATA);break;case K.TEMPLATE:e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=Y.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(Y.IN_TEMPLATE);break;case K.HEAD:e._err(t,U.misplacedStartTagForHeadElement);break;default:uD(e,t)}}function cD(e,t){switch(t.tagID){case K.HEAD:e.openElements.pop(),e.insertionMode=Y.AFTER_HEAD;break;case K.BODY:case K.BR:case K.HTML:uD(e,t);break;case K.TEMPLATE:lD(e,t);break;default:e._err(t,U.endTagWithoutMatchingOpenElement)}}function lD(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==K.TEMPLATE&&e._err(t,U.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(K.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,U.endTagWithoutMatchingOpenElement)}function uD(e,t){e.openElements.pop(),e.insertionMode=Y.AFTER_HEAD,e._processToken(t)}function dD(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.BASEFONT:case K.BGSOUND:case K.HEAD:case K.LINK:case K.META:case K.NOFRAMES:case K.STYLE:sD(e,t);break;case K.NOSCRIPT:e._err(t,U.nestedNoscriptInHead);break;default:pD(e,t)}}function fD(e,t){switch(t.tagID){case K.NOSCRIPT:e.openElements.pop(),e.insertionMode=Y.IN_HEAD;break;case K.BR:pD(e,t);break;default:e._err(t,U.endTagWithoutMatchingOpenElement)}}function pD(e,t){let n=t.type===pT.EOF?U.openElementsLeftAfterEof:U.disallowedContentInNoscriptInHead;e._err(t,n),e.openElements.pop(),e.insertionMode=Y.IN_HEAD,e._processToken(t)}function mD(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.BODY:e._insertElement(t,W.HTML),e.framesetOk=!1,e.insertionMode=Y.IN_BODY;break;case K.FRAMESET:e._insertElement(t,W.HTML),e.insertionMode=Y.IN_FRAMESET;break;case K.BASE:case K.BASEFONT:case K.BGSOUND:case K.LINK:case K.META:case K.NOFRAMES:case K.SCRIPT:case K.STYLE:case K.TEMPLATE:case K.TITLE:e._err(t,U.abandonedHeadElementChild),e.openElements.push(e.headElement,K.HEAD),sD(e,t),e.openElements.remove(e.headElement);break;case K.HEAD:e._err(t,U.misplacedStartTagForHeadElement);break;default:gD(e,t)}}function hD(e,t){switch(t.tagID){case K.BODY:case K.HTML:case K.BR:gD(e,t);break;case K.TEMPLATE:lD(e,t);break;default:e._err(t,U.endTagWithoutMatchingOpenElement)}}function gD(e,t){e._insertFakeElement(G.BODY,K.BODY),e.insertionMode=Y.IN_BODY,_D(e,t)}function _D(e,t){switch(t.type){case pT.CHARACTER:yD(e,t);break;case pT.WHITESPACE_CHARACTER:vD(e,t);break;case pT.COMMENT:YE(e,t);break;case pT.START_TAG:QD(e,t);break;case pT.END_TAG:uO(e,t);break;case pT.EOF:dO(e,t);break;default:}}function vD(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function yD(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function bD(e,t){e.openElements.tmplCount===0&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}function xD(e,t){let n=e.openElements.tryPeekProperlyNestedBodyElement();n&&e.openElements.tmplCount===0&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(n,t.attrs))}function SD(e,t){let n=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&n&&(e.treeAdapter.detachNode(n),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_FRAMESET)}function CD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML)}function wD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e.openElements.currentTagId!==void 0&&PT.has(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,W.HTML)}function TD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function ED(e,t){let n=e.openElements.tmplCount>0;(!e.formElement||n)&&(e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML),n||(e.formElement=e.openElements.current))}function DD(e,t){e.framesetOk=!1;let n=t.tagID;for(let t=e.openElements.stackTop;t>=0;t--){let r=e.openElements.tagIDs[t];if(n===K.LI&&r===K.LI||(n===K.DD||n===K.DT)&&(r===K.DD||r===K.DT)){e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.popUntilTagNamePopped(r);break}if(r!==K.ADDRESS&&r!==K.DIV&&r!==K.P&&e._isSpecialElement(e.openElements.items[t],r))break}e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML)}function OD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML),e.tokenizer.state=FT.PLAINTEXT}function kD(e,t){e.openElements.hasInScope(K.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(K.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML),e.framesetOk=!1}function AD(e,t){let n=e.activeFormattingElements.getElementEntryInScopeWithTagName(G.A);n&&(JE(e,t),e.openElements.remove(n.element),e.activeFormattingElements.removeEntry(n)),e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function jD(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function MD(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(K.NOBR)&&(JE(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,W.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function ND(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function PD(e,t){e.treeAdapter.getDocumentMode(e.document)!==AT.QUIRKS&&e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._insertElement(t,W.HTML),e.framesetOk=!1,e.insertionMode=Y.IN_TABLE}function FD(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,W.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function ID(e){let t=mT(e,kT.TYPE);return t!=null&&t.toLowerCase()===FE}function LD(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,W.HTML),ID(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}function RD(e,t){e._appendElement(t,W.HTML),t.ackSelfClosing=!0}function zD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._appendElement(t,W.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function BD(e,t){t.tagName=G.IMG,t.tagID=K.IMG,FD(e,t)}function VD(e,t){e._insertElement(t,W.HTML),e.skipNextNewLine=!0,e.tokenizer.state=FT.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=Y.TEXT}function HD(e,t){e.openElements.hasInButtonScope(K.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,FT.RAWTEXT)}function UD(e,t){e.framesetOk=!1,e._switchToTextParsing(t,FT.RAWTEXT)}function WD(e,t){e._switchToTextParsing(t,FT.RAWTEXT)}function GD(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===Y.IN_TABLE||e.insertionMode===Y.IN_CAPTION||e.insertionMode===Y.IN_TABLE_BODY||e.insertionMode===Y.IN_ROW||e.insertionMode===Y.IN_CELL?Y.IN_SELECT_IN_TABLE:Y.IN_SELECT}function KD(e,t){e.openElements.currentTagId===K.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML)}function qD(e,t){e.openElements.hasInScope(K.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,W.HTML)}function JD(e,t){e.openElements.hasInScope(K.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(K.RTC),e._insertElement(t,W.HTML)}function YD(e,t){e._reconstructActiveFormattingElements(),OE(t),AE(t),t.selfClosing?e._appendElement(t,W.MATHML):e._insertElement(t,W.MATHML),t.ackSelfClosing=!0}function XD(e,t){e._reconstructActiveFormattingElements(),kE(t),AE(t),t.selfClosing?e._appendElement(t,W.SVG):e._insertElement(t,W.SVG),t.ackSelfClosing=!0}function ZD(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,W.HTML)}function QD(e,t){switch(t.tagID){case K.I:case K.S:case K.B:case K.U:case K.EM:case K.TT:case K.BIG:case K.CODE:case K.FONT:case K.SMALL:case K.STRIKE:case K.STRONG:jD(e,t);break;case K.A:AD(e,t);break;case K.H1:case K.H2:case K.H3:case K.H4:case K.H5:case K.H6:wD(e,t);break;case K.P:case K.DL:case K.OL:case K.UL:case K.DIV:case K.DIR:case K.NAV:case K.MAIN:case K.MENU:case K.ASIDE:case K.CENTER:case K.FIGURE:case K.FOOTER:case K.HEADER:case K.HGROUP:case K.DIALOG:case K.DETAILS:case K.ADDRESS:case K.ARTICLE:case K.SEARCH:case K.SECTION:case K.SUMMARY:case K.FIELDSET:case K.BLOCKQUOTE:case K.FIGCAPTION:CD(e,t);break;case K.LI:case K.DD:case K.DT:DD(e,t);break;case K.BR:case K.IMG:case K.WBR:case K.AREA:case K.EMBED:case K.KEYGEN:FD(e,t);break;case K.HR:zD(e,t);break;case K.RB:case K.RTC:qD(e,t);break;case K.RT:case K.RP:JD(e,t);break;case K.PRE:case K.LISTING:TD(e,t);break;case K.XMP:HD(e,t);break;case K.SVG:XD(e,t);break;case K.HTML:bD(e,t);break;case K.BASE:case K.LINK:case K.META:case K.STYLE:case K.TITLE:case K.SCRIPT:case K.BGSOUND:case K.BASEFONT:case K.TEMPLATE:sD(e,t);break;case K.BODY:xD(e,t);break;case K.FORM:ED(e,t);break;case K.NOBR:MD(e,t);break;case K.MATH:YD(e,t);break;case K.TABLE:PD(e,t);break;case K.INPUT:LD(e,t);break;case K.PARAM:case K.TRACK:case K.SOURCE:RD(e,t);break;case K.IMAGE:BD(e,t);break;case K.BUTTON:kD(e,t);break;case K.APPLET:case K.OBJECT:case K.MARQUEE:ND(e,t);break;case K.IFRAME:UD(e,t);break;case K.SELECT:GD(e,t);break;case K.OPTION:case K.OPTGROUP:KD(e,t);break;case K.NOEMBED:case K.NOFRAMES:WD(e,t);break;case K.FRAMESET:SD(e,t);break;case K.TEXTAREA:VD(e,t);break;case K.NOSCRIPT:e.options.scriptingEnabled?WD(e,t):ZD(e,t);break;case K.PLAINTEXT:OD(e,t);break;case K.COL:case K.TH:case K.TD:case K.TR:case K.HEAD:case K.FRAME:case K.TBODY:case K.TFOOT:case K.THEAD:case K.CAPTION:case K.COLGROUP:break;default:ZD(e,t)}}function $D(e,t){if(e.openElements.hasInScope(K.BODY)&&(e.insertionMode=Y.AFTER_BODY,e.options.sourceCodeLocationInfo)){let n=e.openElements.tryPeekProperlyNestedBodyElement();n&&e._setEndLocation(n,t)}}function eO(e,t){e.openElements.hasInScope(K.BODY)&&(e.insertionMode=Y.AFTER_BODY,YO(e,t))}function tO(e,t){let n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n))}function nO(e){let t=e.openElements.tmplCount>0,{formElement:n}=e;t||(e.formElement=null),(n||t)&&e.openElements.hasInScope(K.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(K.FORM):n&&e.openElements.remove(n))}function rO(e){e.openElements.hasInButtonScope(K.P)||e._insertFakeElement(G.P,K.P),e._closePElement()}function iO(e){e.openElements.hasInListItemScope(K.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(K.LI),e.openElements.popUntilTagNamePopped(K.LI))}function aO(e,t){let n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilTagNamePopped(n))}function oO(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}function sO(e,t){let n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker())}function cO(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(G.BR,K.BR),e.openElements.pop(),e.framesetOk=!1}function lO(e,t){let n=t.tagName,r=t.tagID;for(let t=e.openElements.stackTop;t>0;t--){let i=e.openElements.items[t],a=e.openElements.tagIDs[t];if(r===a&&(r!==K.UNKNOWN||e.treeAdapter.getTagName(i)===n)){e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.stackTop>=t&&e.openElements.shortenToLength(t);break}if(e._isSpecialElement(i,a))break}}function uO(e,t){switch(t.tagID){case K.A:case K.B:case K.I:case K.S:case K.U:case K.EM:case K.TT:case K.BIG:case K.CODE:case K.FONT:case K.NOBR:case K.SMALL:case K.STRIKE:case K.STRONG:JE(e,t);break;case K.P:rO(e);break;case K.DL:case K.UL:case K.OL:case K.DIR:case K.DIV:case K.NAV:case K.PRE:case K.MAIN:case K.MENU:case K.ASIDE:case K.BUTTON:case K.CENTER:case K.FIGURE:case K.FOOTER:case K.HEADER:case K.HGROUP:case K.DIALOG:case K.ADDRESS:case K.ARTICLE:case K.DETAILS:case K.SEARCH:case K.SECTION:case K.SUMMARY:case K.LISTING:case K.FIELDSET:case K.BLOCKQUOTE:case K.FIGCAPTION:tO(e,t);break;case K.LI:iO(e);break;case K.DD:case K.DT:aO(e,t);break;case K.H1:case K.H2:case K.H3:case K.H4:case K.H5:case K.H6:oO(e);break;case K.BR:cO(e);break;case K.BODY:$D(e,t);break;case K.HTML:eO(e,t);break;case K.FORM:nO(e);break;case K.APPLET:case K.OBJECT:case K.MARQUEE:sO(e,t);break;case K.TEMPLATE:lD(e,t);break;default:lO(e,t)}}function dO(e,t){e.tmplInsertionModeStack.length>0?qO(e,t):QE(e,t)}function fO(e,t){var n;t.tagID===K.SCRIPT&&((n=e.scriptHandler)==null||n.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}function pO(e,t){e._err(t,U.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}function mO(e,t){if(e.openElements.currentTagId!==void 0&&zE.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=Y.IN_TABLE_TEXT,t.type){case pT.CHARACTER:DO(e,t);break;case pT.WHITESPACE_CHARACTER:EO(e,t);break}else TO(e,t)}function hO(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_CAPTION}function gO(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_COLUMN_GROUP}function _O(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(G.COLGROUP,K.COLGROUP),e.insertionMode=Y.IN_COLUMN_GROUP,MO(e,t)}function vO(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_TABLE_BODY}function yO(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(G.TBODY,K.TBODY),e.insertionMode=Y.IN_TABLE_BODY,FO(e,t)}function bO(e,t){e.openElements.hasInTableScope(K.TABLE)&&(e.openElements.popUntilTagNamePopped(K.TABLE),e._resetInsertionMode(),e._processStartTag(t))}function xO(e,t){ID(t)?e._appendElement(t,W.HTML):TO(e,t),t.ackSelfClosing=!0}function SO(e,t){!e.formElement&&e.openElements.tmplCount===0&&(e._insertElement(t,W.HTML),e.formElement=e.openElements.current,e.openElements.pop())}function CO(e,t){switch(t.tagID){case K.TD:case K.TH:case K.TR:yO(e,t);break;case K.STYLE:case K.SCRIPT:case K.TEMPLATE:sD(e,t);break;case K.COL:_O(e,t);break;case K.FORM:SO(e,t);break;case K.TABLE:bO(e,t);break;case K.TBODY:case K.TFOOT:case K.THEAD:vO(e,t);break;case K.INPUT:xO(e,t);break;case K.CAPTION:hO(e,t);break;case K.COLGROUP:gO(e,t);break;default:TO(e,t)}}function wO(e,t){switch(t.tagID){case K.TABLE:e.openElements.hasInTableScope(K.TABLE)&&(e.openElements.popUntilTagNamePopped(K.TABLE),e._resetInsertionMode());break;case K.TEMPLATE:lD(e,t);break;case K.BODY:case K.CAPTION:case K.COL:case K.COLGROUP:case K.HTML:case K.TBODY:case K.TD:case K.TFOOT:case K.TH:case K.THEAD:case K.TR:break;default:TO(e,t)}}function TO(e,t){let n=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,_D(e,t),e.fosterParentingEnabled=n}function EO(e,t){e.pendingCharacterTokens.push(t)}function DO(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function OO(e,t){let n=0;if(e.hasNonWhitespacePendingCharacterToken)for(;n<e.pendingCharacterTokens.length;n++)TO(e,e.pendingCharacterTokens[n]);else for(;n<e.pendingCharacterTokens.length;n++)e._insertCharacters(e.pendingCharacterTokens[n]);e.insertionMode=e.originalInsertionMode,e._processToken(t)}var kO=new Set([K.CAPTION,K.COL,K.COLGROUP,K.TBODY,K.TD,K.TFOOT,K.TH,K.THEAD,K.TR]);function AO(e,t){let n=t.tagID;kO.has(n)?e.openElements.hasInTableScope(K.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(K.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=Y.IN_TABLE,CO(e,t)):QD(e,t)}function jO(e,t){let n=t.tagID;switch(n){case K.CAPTION:case K.TABLE:e.openElements.hasInTableScope(K.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(K.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=Y.IN_TABLE,n===K.TABLE&&wO(e,t));break;case K.BODY:case K.COL:case K.COLGROUP:case K.HTML:case K.TBODY:case K.TD:case K.TFOOT:case K.TH:case K.THEAD:case K.TR:break;default:uO(e,t)}}function MO(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.COL:e._appendElement(t,W.HTML),t.ackSelfClosing=!0;break;case K.TEMPLATE:sD(e,t);break;default:PO(e,t)}}function NO(e,t){switch(t.tagID){case K.COLGROUP:e.openElements.currentTagId===K.COLGROUP&&(e.openElements.pop(),e.insertionMode=Y.IN_TABLE);break;case K.TEMPLATE:lD(e,t);break;case K.COL:break;default:PO(e,t)}}function PO(e,t){e.openElements.currentTagId===K.COLGROUP&&(e.openElements.pop(),e.insertionMode=Y.IN_TABLE,e._processToken(t))}function FO(e,t){switch(t.tagID){case K.TR:e.openElements.clearBackToTableBodyContext(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_ROW;break;case K.TH:case K.TD:e.openElements.clearBackToTableBodyContext(),e._insertFakeElement(G.TR,K.TR),e.insertionMode=Y.IN_ROW,LO(e,t);break;case K.CAPTION:case K.COL:case K.COLGROUP:case K.TBODY:case K.TFOOT:case K.THEAD:e.openElements.hasTableBodyContextInTableScope()&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE,CO(e,t));break;default:CO(e,t)}}function IO(e,t){let n=t.tagID;switch(t.tagID){case K.TBODY:case K.TFOOT:case K.THEAD:e.openElements.hasInTableScope(n)&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE);break;case K.TABLE:e.openElements.hasTableBodyContextInTableScope()&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE,wO(e,t));break;case K.BODY:case K.CAPTION:case K.COL:case K.COLGROUP:case K.HTML:case K.TD:case K.TH:case K.TR:break;default:wO(e,t)}}function LO(e,t){switch(t.tagID){case K.TH:case K.TD:e.openElements.clearBackToTableRowContext(),e._insertElement(t,W.HTML),e.insertionMode=Y.IN_CELL,e.activeFormattingElements.insertMarker();break;case K.CAPTION:case K.COL:case K.COLGROUP:case K.TBODY:case K.TFOOT:case K.THEAD:case K.TR:e.openElements.hasInTableScope(K.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE_BODY,FO(e,t));break;default:CO(e,t)}}function RO(e,t){switch(t.tagID){case K.TR:e.openElements.hasInTableScope(K.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE_BODY);break;case K.TABLE:e.openElements.hasInTableScope(K.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE_BODY,IO(e,t));break;case K.TBODY:case K.TFOOT:case K.THEAD:(e.openElements.hasInTableScope(t.tagID)||e.openElements.hasInTableScope(K.TR))&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=Y.IN_TABLE_BODY,IO(e,t));break;case K.BODY:case K.CAPTION:case K.COL:case K.COLGROUP:case K.HTML:case K.TD:case K.TH:break;default:wO(e,t)}}function zO(e,t){let n=t.tagID;kO.has(n)?(e.openElements.hasInTableScope(K.TD)||e.openElements.hasInTableScope(K.TH))&&(e._closeTableCell(),LO(e,t)):QD(e,t)}function BO(e,t){let n=t.tagID;switch(n){case K.TD:case K.TH:e.openElements.hasInTableScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=Y.IN_ROW);break;case K.TABLE:case K.TBODY:case K.TFOOT:case K.THEAD:case K.TR:e.openElements.hasInTableScope(n)&&(e._closeTableCell(),RO(e,t));break;case K.BODY:case K.CAPTION:case K.COL:case K.COLGROUP:case K.HTML:break;default:uO(e,t)}}function VO(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.OPTION:e.openElements.currentTagId===K.OPTION&&e.openElements.pop(),e._insertElement(t,W.HTML);break;case K.OPTGROUP:e.openElements.currentTagId===K.OPTION&&e.openElements.pop(),e.openElements.currentTagId===K.OPTGROUP&&e.openElements.pop(),e._insertElement(t,W.HTML);break;case K.HR:e.openElements.currentTagId===K.OPTION&&e.openElements.pop(),e.openElements.currentTagId===K.OPTGROUP&&e.openElements.pop(),e._appendElement(t,W.HTML),t.ackSelfClosing=!0;break;case K.INPUT:case K.KEYGEN:case K.TEXTAREA:case K.SELECT:e.openElements.hasInSelectScope(K.SELECT)&&(e.openElements.popUntilTagNamePopped(K.SELECT),e._resetInsertionMode(),t.tagID!==K.SELECT&&e._processStartTag(t));break;case K.SCRIPT:case K.TEMPLATE:sD(e,t);break;default:}}function HO(e,t){switch(t.tagID){case K.OPTGROUP:e.openElements.stackTop>0&&e.openElements.currentTagId===K.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===K.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===K.OPTGROUP&&e.openElements.pop();break;case K.OPTION:e.openElements.currentTagId===K.OPTION&&e.openElements.pop();break;case K.SELECT:e.openElements.hasInSelectScope(K.SELECT)&&(e.openElements.popUntilTagNamePopped(K.SELECT),e._resetInsertionMode());break;case K.TEMPLATE:lD(e,t);break;default:}}function UO(e,t){let n=t.tagID;n===K.CAPTION||n===K.TABLE||n===K.TBODY||n===K.TFOOT||n===K.THEAD||n===K.TR||n===K.TD||n===K.TH?(e.openElements.popUntilTagNamePopped(K.SELECT),e._resetInsertionMode(),e._processStartTag(t)):VO(e,t)}function WO(e,t){let n=t.tagID;n===K.CAPTION||n===K.TABLE||n===K.TBODY||n===K.TFOOT||n===K.THEAD||n===K.TR||n===K.TD||n===K.TH?e.openElements.hasInTableScope(n)&&(e.openElements.popUntilTagNamePopped(K.SELECT),e._resetInsertionMode(),e.onEndTag(t)):HO(e,t)}function GO(e,t){switch(t.tagID){case K.BASE:case K.BASEFONT:case K.BGSOUND:case K.LINK:case K.META:case K.NOFRAMES:case K.SCRIPT:case K.STYLE:case K.TEMPLATE:case K.TITLE:sD(e,t);break;case K.CAPTION:case K.COLGROUP:case K.TBODY:case K.TFOOT:case K.THEAD:e.tmplInsertionModeStack[0]=Y.IN_TABLE,e.insertionMode=Y.IN_TABLE,CO(e,t);break;case K.COL:e.tmplInsertionModeStack[0]=Y.IN_COLUMN_GROUP,e.insertionMode=Y.IN_COLUMN_GROUP,MO(e,t);break;case K.TR:e.tmplInsertionModeStack[0]=Y.IN_TABLE_BODY,e.insertionMode=Y.IN_TABLE_BODY,FO(e,t);break;case K.TD:case K.TH:e.tmplInsertionModeStack[0]=Y.IN_ROW,e.insertionMode=Y.IN_ROW,LO(e,t);break;default:e.tmplInsertionModeStack[0]=Y.IN_BODY,e.insertionMode=Y.IN_BODY,QD(e,t)}}function KO(e,t){t.tagID===K.TEMPLATE&&lD(e,t)}function qO(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(K.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):QE(e,t)}function JO(e,t){t.tagID===K.HTML?QD(e,t):XO(e,t)}function YO(e,t){if(t.tagID===K.HTML){if(e.fragmentContext||(e.insertionMode=Y.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===K.HTML){e._setEndLocation(e.openElements.items[0],t);let n=e.openElements.items[1];n&&!e.treeAdapter.getNodeSourceCodeLocation(n)?.endTag&&e._setEndLocation(n,t)}}else XO(e,t)}function XO(e,t){e.insertionMode=Y.IN_BODY,_D(e,t)}function ZO(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.FRAMESET:e._insertElement(t,W.HTML);break;case K.FRAME:e._appendElement(t,W.HTML),t.ackSelfClosing=!0;break;case K.NOFRAMES:sD(e,t);break;default:}}function QO(e,t){t.tagID===K.FRAMESET&&!e.openElements.isRootHtmlElementCurrent()&&(e.openElements.pop(),!e.fragmentContext&&e.openElements.currentTagId!==K.FRAMESET&&(e.insertionMode=Y.AFTER_FRAMESET))}function $O(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.NOFRAMES:sD(e,t);break;default:}}function ek(e,t){t.tagID===K.HTML&&(e.insertionMode=Y.AFTER_AFTER_FRAMESET)}function tk(e,t){t.tagID===K.HTML?QD(e,t):nk(e,t)}function nk(e,t){e.insertionMode=Y.IN_BODY,_D(e,t)}function rk(e,t){switch(t.tagID){case K.HTML:QD(e,t);break;case K.NOFRAMES:sD(e,t);break;default:}}function ik(e,t){t.chars=`�`,e._insertCharacters(t)}function ak(e,t){e._insertCharacters(t),e.framesetOk=!1}function ok(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==W.HTML&&e.openElements.currentTagId!==void 0&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function sk(e,t){if(DE(t))ok(e),e._startTagOutsideForeignContent(t);else{let n=e._getAdjustedCurrentElement(),r=e.treeAdapter.getNamespaceURI(n);r===W.MATHML?OE(t):r===W.SVG&&(jE(t),kE(t)),AE(t),t.selfClosing?e._appendElement(t,r):e._insertElement(t,r),t.ackSelfClosing=!0}}function ck(e,t){if(t.tagID===K.P||t.tagID===K.BR){ok(e),e._endTagOutsideForeignContent(t);return}for(let n=e.openElements.stackTop;n>0;n--){let r=e.openElements.items[n];if(e.treeAdapter.getNamespaceURI(r)===W.HTML){e._endTagOutsideForeignContent(t);break}let i=e.treeAdapter.getTagName(r);if(i.toLowerCase()===t.tagName){t.tagName=i,e.openElements.shortenToLength(n);break}}}new Set([G.AREA,G.BASE,G.BASEFONT,G.BGSOUND,G.BR,G.COL,G.EMBED,G.FRAME,G.HR,G.IMG,G.INPUT,G.KEYGEN,G.LINK,G.META,G.PARAM,G.SOURCE,G.TRACK,G.WBR]);var lk=(function(e){if(e==null)return mk;if(typeof e==`function`)return pk(e);if(typeof e==`object`)return Array.isArray(e)?uk(e):dk(e);if(typeof e==`string`)return fk(e);throw Error(`Expected function, string, or object as test`)});function uk(e){let t=[],n=-1;for(;++n<e.length;)t[n]=lk(e[n]);return pk(r);function r(...e){let n=-1;for(;++n<t.length;)if(t[n].apply(this,e))return!0;return!1}}function dk(e){let t=e;return pk(n);function n(n){let r=n,i;for(i in e)if(r[i]!==t[i])return!1;return!0}}function fk(e){return pk(t);function t(t){return t&&t.type===e}}function pk(e){return t;function t(t,n,r){return!!(hk(t)&&e.call(this,t,typeof n==`number`?n:void 0,r||void 0))}}function mk(){return!0}function hk(e){return typeof e==`object`&&!!e&&`type`in e}function gk(e){return e}var _k=[],vk=`skip`;function yk(e,t,n,r){let i;typeof t==`function`&&typeof n!=`function`?(r=n,n=t):i=t;let a=lk(i),o=r?-1:1;s(e,void 0,[])();function s(e,i,c){let l=e&&typeof e==`object`?e:{};if(typeof l.type==`string`){let t=typeof l.tagName==`string`?l.tagName:typeof l.name==`string`?l.name:void 0;Object.defineProperty(u,`name`,{value:`node (`+gk(e.type+(t?`<`+t+`>`:``))+`)`})}return u;function u(){let l=_k,u,d,f;if((!t||a(e,i,c[c.length-1]||void 0))&&(l=bk(n(e,c)),l[0]===!1))return l;if(`children`in e&&e.children){let t=e;if(t.children&&l[0]!==`skip`)for(d=(r?t.children.length:-1)+o,f=c.concat(t);d>-1&&d<t.children.length;){let e=t.children[d];if(u=s(e,d,f)(),u[0]===!1)return u;d=typeof u[1]==`number`?u[1]:d+o}}return l}}}function bk(e){return Array.isArray(e)?e:typeof e==`number`?[!0,e]:e==null?_k:[e]}function xk(e,t,n,r){let i,a,o;typeof t==`function`&&typeof n!=`function`?(a=void 0,o=t,i=n):(a=t,o=n,i=r),yk(e,a,s,i);function s(e,t){let n=t[t.length-1],r=n?n.children.indexOf(e):void 0;return o(e,r,n)}}var Sk=/<(\/?)(iframe|noembed|noframes|plaintext|script|style|textarea|title|xmp)(?=[\t\n\f\r />])/gi,Ck=new Set([`mdxFlowExpression`,`mdxJsxFlowElement`,`mdxJsxTextElement`,`mdxTextExpression`,`mdxjsEsm`]),wk={sourceCodeLocationInfo:!0,scriptingEnabled:!1};function Tk(e,t){let n=zk(e),r=Uw(`type`,{handlers:{root:Dk,element:Ok,text:kk,comment:Mk,doctype:Ak,raw:Nk},unknown:Pk}),i={parser:n?new VE(wk):VE.getFragmentParser(void 0,wk),handle(e){r(e,i)},stitches:!1,options:t||{}};r(e,i),Fk(i,dC());let a=Pw(n?i.parser.document:i.parser.getFragment(),{file:i.options.file});return i.stitches&&xk(a,`comment`,function(e,t,n){let r=e;if(r.value.stitch&&n&&t!==void 0){let e=n.children;return e[t]=r.value.stitch,t}}),a.type===`root`&&a.children.length===1&&a.children[0].type===e.type?a.children[0]:a}function Ek(e,t){let n=-1;if(e)for(;++n<e.length;)t.handle(e[n])}function Dk(e,t){Ek(e.children,t)}function Ok(e,t){Lk(e,t),Ek(e.children,t),Rk(e,t)}function kk(e,t){t.parser.tokenizer.state>4&&(t.parser.tokenizer.state=0);let n={type:pT.CHARACTER,chars:e.value,location:Bk(e)};Fk(t,dC(e)),t.parser.currentToken=n,t.parser._processToken(t.parser.currentToken)}function Ak(e,t){let n={type:pT.DOCTYPE,name:`html`,forceQuirks:!1,publicId:``,systemId:``,location:Bk(e)};Fk(t,dC(e)),t.parser.currentToken=n,t.parser._processToken(t.parser.currentToken)}function jk(e,t){t.stitches=!0;let n=Vk(e);`children`in e&&`children`in n&&(n.children=Tk({type:`root`,children:e.children},t.options).children),Mk({type:`comment`,value:{stitch:n}},t)}function Mk(e,t){let n=e.value,r={type:pT.COMMENT,data:n,location:Bk(e)};Fk(t,dC(e)),t.parser.currentToken=r,t.parser._processToken(t.parser.currentToken)}function Nk(e,t){if(t.parser.tokenizer.preprocessor.html=``,t.parser.tokenizer.preprocessor.pos=-1,t.parser.tokenizer.preprocessor.lastGapPos=-2,t.parser.tokenizer.preprocessor.gapStack=[],t.parser.tokenizer.preprocessor.skipNextNewLine=!1,t.parser.tokenizer.preprocessor.lastChunkWritten=!1,t.parser.tokenizer.preprocessor.endOfChunkHit=!1,t.parser.tokenizer.preprocessor.isEol=!1,Ik(t,dC(e)),t.parser.tokenizer.write(t.options.tagfilter?e.value.replace(Sk,`<$1$2`):e.value,!1),t.parser.tokenizer._runParsingLoop(),t.parser.tokenizer.state===72||t.parser.tokenizer.state===78){t.parser.tokenizer.preprocessor.lastChunkWritten=!0;let e=t.parser.tokenizer._consume();t.parser.tokenizer._callState(e)}}function Pk(e,t){let n=e;if(t.options.passThrough&&t.options.passThrough.includes(n.type))jk(n,t);else{let e=``;throw Ck.has(n.type)&&(e=". It looks like you are using MDX nodes with `hast-util-raw` (or `rehype-raw`). If you use this because you are using remark or rehype plugins that inject `'html'` nodes, then please raise an issue with that plugin, as its a bad and slow idea. If you use this because you are using markdown syntax, then you have to configure this utility (or plugin) to pass through these nodes (see `passThrough` in docs), but you can also migrate to use the MDX syntax"),Error("Cannot compile `"+n.type+"` node"+e)}}function Fk(e,t){Ik(e,t);let n=e.parser.tokenizer.currentCharacterToken;n&&n.location&&(n.location.endLine=e.parser.tokenizer.preprocessor.line,n.location.endCol=e.parser.tokenizer.preprocessor.col+1,n.location.endOffset=e.parser.tokenizer.preprocessor.offset+1,e.parser.currentToken=n,e.parser._processToken(e.parser.currentToken)),e.parser.tokenizer.paused=!1,e.parser.tokenizer.inLoop=!1,e.parser.tokenizer.active=!1,e.parser.tokenizer.returnState=FT.DATA,e.parser.tokenizer.charRefCode=-1,e.parser.tokenizer.consumedAfterSnapshot=-1,e.parser.tokenizer.currentLocation=null,e.parser.tokenizer.currentCharacterToken=null,e.parser.tokenizer.currentToken=null,e.parser.tokenizer.currentAttr={name:``,value:``}}function Ik(e,t){if(t&&t.offset!==void 0){let n={startLine:t.line,startCol:t.column,startOffset:t.offset,endLine:-1,endCol:-1,endOffset:-1};e.parser.tokenizer.preprocessor.lineStartPos=-t.column+1,e.parser.tokenizer.preprocessor.droppedBufferSize=t.offset,e.parser.tokenizer.preprocessor.line=t.line,e.parser.tokenizer.currentLocation=n}}function Lk(e,t){let n=e.tagName.toLowerCase();if(t.parser.tokenizer.state===FT.PLAINTEXT)return;Fk(t,dC(e));let r=t.parser.openElements.current,i=`namespaceURI`in r?r.namespaceURI:jw.html;i===jw.html&&n===`svg`&&(i=jw.svg);let a=qw({...e,children:[]},{space:i===jw.svg?`svg`:`html`}),o={type:pT.START_TAG,tagName:n,tagID:MT(n),selfClosing:!1,ackSelfClosing:!1,attrs:`attrs`in a?a.attrs:[],location:Bk(e)};t.parser.currentToken=o,t.parser._processToken(t.parser.currentToken),t.parser.tokenizer.lastStartTagName=n}function Rk(e,t){let n=e.tagName.toLowerCase();if(!t.parser.tokenizer.inForeignNode&&rT.includes(n)||t.parser.tokenizer.state===FT.PLAINTEXT)return;Fk(t,uC(e));let r={type:pT.END_TAG,tagName:n,tagID:MT(n),selfClosing:!1,ackSelfClosing:!1,attrs:[],location:Bk(e)};t.parser.currentToken=r,t.parser._processToken(t.parser.currentToken),n===t.parser.tokenizer.lastStartTagName&&(t.parser.tokenizer.state===FT.RCDATA||t.parser.tokenizer.state===FT.RAWTEXT||t.parser.tokenizer.state===FT.SCRIPT_DATA)&&(t.parser.tokenizer.state=FT.DATA)}function zk(e){let t=e.type===`root`?e.children[0]:e;return!!(t&&(t.type===`doctype`||t.type===`element`&&t.tagName.toLowerCase()===`html`))}function Bk(e){let t=dC(e)||{line:void 0,column:void 0,offset:void 0},n=uC(e)||{line:void 0,column:void 0,offset:void 0};return{startLine:t.line,startCol:t.column,startOffset:t.offset,endLine:n.line,endCol:n.column,endOffset:n.offset}}function Vk(e){return`children`in e?lC({...e,children:[]}):lC(e)}function Hk(e){return function(t,n){return Tk(t,{...e,file:n})}}var Uk={indicator:`indicator`,textOnly:`text-only`,remove:`remove`};function Wk({defaultOrigin:e=``,allowedLinkPrefixes:t=[],allowedImagePrefixes:n=[],allowDataImages:r=!1,allowedProtocols:i=[],blockedImageClass:a=`inline-block bg-gray-200 dark:bg-gray-700 text-gray-600 dark:text-gray-400 px-3 py-1 rounded text-sm`,blockedLinkClass:o=`text-gray-500`,linkBlockPolicy:s=Uk.indicator,imageBlockPolicy:c=Uk.indicator}){let l=t.length&&!t.every(e=>e===`*`),u=n.length&&!n.every(e=>e===`*`);if(!e&&(l||u))throw Error(`defaultOrigin is required when allowedLinkPrefixes or allowedImagePrefixes are provided`);return l=>{let u=eA(e,t,n,r,i,a,o,s,c);Xk(l),xk(l,u)}}function Gk(e,t){if(typeof e!=`string`)return null;try{return new URL(e)}catch{if(t)try{return new URL(e,t)}catch{return null}if(e.startsWith(`/`)||e.startsWith(`./`)||e.startsWith(`../`))try{return new URL(e,`http://example.com`)}catch{return null}return null}}function Kk(e){return typeof e==`string`?e.startsWith(`/`)||e.startsWith(`./`)||e.startsWith(`../`):!1}var qk=new Set([`https:`,`http:`,`irc:`,`ircs:`,`mailto:`,`xmpp:`,`blob:`]),Jk=new Set([`javascript:`,`data:`,`file:`,`vbscript:`]);function Yk(e,t,n,r=!1,i=!1,a=[]){if(!e)return null;if(typeof e==`string`&&e.startsWith(`#`)&&!i)try{if(new URL(e,`http://example.com`).hash===e)return e}catch{}if(typeof e==`string`&&e.startsWith(`data:`))return i&&r&&e.startsWith(`data:image/`)?e:null;if(typeof e==`string`&&e.startsWith(`blob:`)){try{if(new URL(e).protocol===`blob:`&&e.length>5){let t=e.substring(5);if(t&&t.length>0&&t!==`invalid`)return e}}catch{return null}return null}let o=Gk(e,n);if(!o||Jk.has(o.protocol)||!(qk.has(o.protocol)||a.includes(o.protocol)||a.includes(`*`)))return null;if(o.protocol===`mailto:`||!o.protocol.match(/^https?:$/))return o.href;let s=Kk(e);return o&&t.some(e=>{let t=Gk(e,n);return!t||t.origin!==o.origin?!1:o.href.startsWith(t.href)})?s?o.pathname+o.search+o.hash:o.href:t.includes(`*`)?o.protocol!==`https:`&&o.protocol!==`http:`?null:s?o.pathname+o.search+o.hash:o.href:null}function Xk(e){if(`children`in e&&Array.isArray(e.children)){e.children=e.children.filter(e=>e!=null);for(let t of e.children)Xk(t)}}var Zk=Symbol(`node-seen`);function Qk(e,t,n){return t===Uk.remove?{type:`remove`}:t===Uk.textOnly?{type:`replace`,element:{type:`element`,tagName:`span`,properties:{},children:[...e.children]}}:{type:`replace`,element:{type:`element`,tagName:`span`,properties:{title:`Blocked URL: `+String(e.properties.href),class:n},children:[...e.children,{type:`text`,value:` [blocked]`}]}}}function $k(e,t,n){if(t===Uk.remove)return{type:`remove`};if(t===Uk.textOnly){let t=String(e.properties.alt||``);return t?{type:`replace`,element:{type:`element`,tagName:`span`,properties:{},children:[{type:`text`,value:t}]}}:{type:`remove`}}return{type:`replace`,element:{type:`element`,tagName:`span`,properties:{class:n},children:[{type:`text`,value:`[Image blocked: `+String(e.properties.alt||`No description`)+`]`}]}}}var eA=(e,t,n,r,i,a,o,s,c)=>{let l=(u,d,f)=>{if(u.type!==`element`||u[Zk])return!0;if(u.tagName===`a`){let n=Yk(u.properties.href,t,e,!1,!1,i);if(n===null){if(u[Zk]=!0,xk(u,l),f&&typeof d==`number`){let e=Qk(u,s,o);if(e.type===`remove`)return f.children.splice(d,1),[vk,d];f.children[d]=e.element}return vk}else return u.properties.href=n,u.properties.target=`_blank`,u.properties.rel=`noopener noreferrer`,!0}if(u.tagName===`img`){let t=Yk(u.properties.src,n,e,r,!0,i);if(t===null){if(u[Zk]=!0,xk(u,l),f&&typeof d==`number`){let e=$k(u,c,a);if(e.type===`remove`)return f.children.splice(d,1),[vk,d];f.children[d]=e.element}return vk}else return u.properties.src=t,!0}return!0};return l},tA={carriageReturn:-5,lineFeed:-4,carriageReturnLineFeed:-3,horizontalTab:-2,virtualSpace:-1,eof:null,nul:0,soh:1,stx:2,etx:3,eot:4,enq:5,ack:6,bel:7,bs:8,ht:9,lf:10,vt:11,ff:12,cr:13,so:14,si:15,dle:16,dc1:17,dc2:18,dc3:19,dc4:20,nak:21,syn:22,etb:23,can:24,em:25,sub:26,esc:27,fs:28,gs:29,rs:30,us:31,space:32,exclamationMark:33,quotationMark:34,numberSign:35,dollarSign:36,percentSign:37,ampersand:38,apostrophe:39,leftParenthesis:40,rightParenthesis:41,asterisk:42,plusSign:43,comma:44,dash:45,dot:46,slash:47,digit0:48,digit1:49,digit2:50,digit3:51,digit4:52,digit5:53,digit6:54,digit7:55,digit8:56,digit9:57,colon:58,semicolon:59,lessThan:60,equalsTo:61,greaterThan:62,questionMark:63,atSign:64,uppercaseA:65,uppercaseB:66,uppercaseC:67,uppercaseD:68,uppercaseE:69,uppercaseF:70,uppercaseG:71,uppercaseH:72,uppercaseI:73,uppercaseJ:74,uppercaseK:75,uppercaseL:76,uppercaseM:77,uppercaseN:78,uppercaseO:79,uppercaseP:80,uppercaseQ:81,uppercaseR:82,uppercaseS:83,uppercaseT:84,uppercaseU:85,uppercaseV:86,uppercaseW:87,uppercaseX:88,uppercaseY:89,uppercaseZ:90,leftSquareBracket:91,backslash:92,rightSquareBracket:93,caret:94,underscore:95,graveAccent:96,lowercaseA:97,lowercaseB:98,lowercaseC:99,lowercaseD:100,lowercaseE:101,lowercaseF:102,lowercaseG:103,lowercaseH:104,lowercaseI:105,lowercaseJ:106,lowercaseK:107,lowercaseL:108,lowercaseM:109,lowercaseN:110,lowercaseO:111,lowercaseP:112,lowercaseQ:113,lowercaseR:114,lowercaseS:115,lowercaseT:116,lowercaseU:117,lowercaseV:118,lowercaseW:119,lowercaseX:120,lowercaseY:121,lowercaseZ:122,leftCurlyBrace:123,verticalBar:124,rightCurlyBrace:125,tilde:126,del:127,byteOrderMarker:65279,replacementCharacter:65533},nA={attentionSideAfter:2,attentionSideBefore:1,atxHeadingOpeningFenceSizeMax:6,autolinkDomainSizeMax:63,autolinkSchemeSizeMax:32,cdataOpeningString:`CDATA[`,characterGroupPunctuation:2,characterGroupWhitespace:1,characterReferenceDecimalSizeMax:7,characterReferenceHexadecimalSizeMax:6,characterReferenceNamedSizeMax:31,codeFencedSequenceSizeMin:3,contentTypeContent:`content`,contentTypeDocument:`document`,contentTypeFlow:`flow`,contentTypeString:`string`,contentTypeText:`text`,hardBreakPrefixSizeMin:2,htmlBasic:6,htmlCdata:5,htmlComment:2,htmlComplete:7,htmlDeclaration:4,htmlInstruction:3,htmlRawSizeMax:8,htmlRaw:1,linkResourceDestinationBalanceMax:32,linkReferenceSizeMax:999,listItemValueSizeMax:10,numericBaseDecimal:10,numericBaseHexadecimal:16,tabSize:4,thematicBreakMarkerCountMin:3,v8MaxSafeChunkSize:1e4},rA={data:`data`,whitespace:`whitespace`,lineEnding:`lineEnding`,lineEndingBlank:`lineEndingBlank`,linePrefix:`linePrefix`,lineSuffix:`lineSuffix`,atxHeading:`atxHeading`,atxHeadingSequence:`atxHeadingSequence`,atxHeadingText:`atxHeadingText`,autolink:`autolink`,autolinkEmail:`autolinkEmail`,autolinkMarker:`autolinkMarker`,autolinkProtocol:`autolinkProtocol`,characterEscape:`characterEscape`,characterEscapeValue:`characterEscapeValue`,characterReference:`characterReference`,characterReferenceMarker:`characterReferenceMarker`,characterReferenceMarkerNumeric:`characterReferenceMarkerNumeric`,characterReferenceMarkerHexadecimal:`characterReferenceMarkerHexadecimal`,characterReferenceValue:`characterReferenceValue`,codeFenced:`codeFenced`,codeFencedFence:`codeFencedFence`,codeFencedFenceSequence:`codeFencedFenceSequence`,codeFencedFenceInfo:`codeFencedFenceInfo`,codeFencedFenceMeta:`codeFencedFenceMeta`,codeFlowValue:`codeFlowValue`,codeIndented:`codeIndented`,codeText:`codeText`,codeTextData:`codeTextData`,codeTextPadding:`codeTextPadding`,codeTextSequence:`codeTextSequence`,content:`content`,definition:`definition`,definitionDestination:`definitionDestination`,definitionDestinationLiteral:`definitionDestinationLiteral`,definitionDestinationLiteralMarker:`definitionDestinationLiteralMarker`,definitionDestinationRaw:`definitionDestinationRaw`,definitionDestinationString:`definitionDestinationString`,definitionLabel:`definitionLabel`,definitionLabelMarker:`definitionLabelMarker`,definitionLabelString:`definitionLabelString`,definitionMarker:`definitionMarker`,definitionTitle:`definitionTitle`,definitionTitleMarker:`definitionTitleMarker`,definitionTitleString:`definitionTitleString`,emphasis:`emphasis`,emphasisSequence:`emphasisSequence`,emphasisText:`emphasisText`,escapeMarker:`escapeMarker`,hardBreakEscape:`hardBreakEscape`,hardBreakTrailing:`hardBreakTrailing`,htmlFlow:`htmlFlow`,htmlFlowData:`htmlFlowData`,htmlText:`htmlText`,htmlTextData:`htmlTextData`,image:`image`,label:`label`,labelText:`labelText`,labelLink:`labelLink`,labelImage:`labelImage`,labelMarker:`labelMarker`,labelImageMarker:`labelImageMarker`,labelEnd:`labelEnd`,link:`link`,paragraph:`paragraph`,reference:`reference`,referenceMarker:`referenceMarker`,referenceString:`referenceString`,resource:`resource`,resourceDestination:`resourceDestination`,resourceDestinationLiteral:`resourceDestinationLiteral`,resourceDestinationLiteralMarker:`resourceDestinationLiteralMarker`,resourceDestinationRaw:`resourceDestinationRaw`,resourceDestinationString:`resourceDestinationString`,resourceMarker:`resourceMarker`,resourceTitle:`resourceTitle`,resourceTitleMarker:`resourceTitleMarker`,resourceTitleString:`resourceTitleString`,setextHeading:`setextHeading`,setextHeadingText:`setextHeadingText`,setextHeadingLine:`setextHeadingLine`,setextHeadingLineSequence:`setextHeadingLineSequence`,strong:`strong`,strongSequence:`strongSequence`,strongText:`strongText`,thematicBreak:`thematicBreak`,thematicBreakSequence:`thematicBreakSequence`,blockQuote:`blockQuote`,blockQuotePrefix:`blockQuotePrefix`,blockQuoteMarker:`blockQuoteMarker`,blockQuotePrefixWhitespace:`blockQuotePrefixWhitespace`,listOrdered:`listOrdered`,listUnordered:`listUnordered`,listItemIndent:`listItemIndent`,listItemMarker:`listItemMarker`,listItemPrefix:`listItemPrefix`,listItemPrefixWhitespace:`listItemPrefixWhitespace`,listItemValue:`listItemValue`,chunkDocument:`chunkDocument`,chunkContent:`chunkContent`,chunkFlow:`chunkFlow`,chunkText:`chunkText`,chunkString:`chunkString`},iA=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],aA=[12288,12288,65281,65376,65504,65510],oA=[8361,8361,65377,65470,65474,65479,65482,65487,65490,65495,65498,65500,65512,65518],sA=[32,126,162,163,165,166,172,172,175,175,10214,10221,10629,10630],cA=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141],lA=(e,t)=>{let n=0,r=Math.floor(e.length/2)-1;for(;n<=r;){let i=Math.floor((n+r)/2),a=i*2;if(t<e[a])r=i-1;else if(t>e[a+1])n=i+1;else return!0}return!1},uA=19968,[dA,fA]=pA(cA);function pA(e){let t=e[0],n=e[1];for(let r=0;r<e.length;r+=2){let i=e[r],a=e[r+1];if(uA>=i&&uA<=a)return[i,a];a-i>n-t&&(t=i,n=a)}return[t,n]}var mA=e=>e<161||e>1114109?!1:lA(iA,e),hA=e=>e<12288||e>65510?!1:lA(aA,e),gA=e=>e<8361||e>65518?!1:lA(oA,e),_A=e=>e<32||e>10630?!1:lA(sA,e),vA=e=>e>=dA&&e<=fA?!0:e<4352||e>262141?!1:lA(cA,e);function yA(e){return mA(e)?`ambiguous`:hA(e)?`fullwidth`:gA(e)?`halfwidth`:_A(e)?`narrow`:vA(e)?`wide`:`neutral`}function bA(e){if(!Number.isSafeInteger(e))throw TypeError(`Expected a code point, got \`${typeof e}\`.`)}function xA(e){return bA(e),yA(e)}function SA(e){return/^\p{Emoji_Presentation}/u.test(String.fromCodePoint(e))}function CA(e){if(!e||e<4352)return!1;switch(xA(e)){case`fullwidth`:case`halfwidth`:return!0;case`wide`:return!SA(e);case`narrow`:return!1;case`ambiguous`:return 917760<=e&&e<=917999?null:!1;case`neutral`:return/^\p{sc=Hangul}/u.test(String.fromCodePoint(e))}}function wA(e,t){return t!==65025||!e||e<8216?!1:e===8216||e===8217||e===8220||e===8221}function TA(e){return e!==null&&e>=65024&&e<=65038}var EA=OA(/\p{P}|\p{S}/u),DA=OA(/\s/);function OA(e){return t;function t(t){return t!==null&&t>-1&&e.test(String.fromCodePoint(t))}}function kA(e){return!!(e&nA.characterGroupWhitespace)}function AA(e){return(e&JA.cjkPunctuation)===nA.characterGroupPunctuation}function jA(e){return!!(e&JA.cjk)}function MA(e){return e===JA.ivs}function NA(e){return!!(e&JA.cjkOrIvs)}function PA(e){return e===JA.nonEmojiGeneralUseVS}function FA(e){return!!(e&JA.spaceOrPunctuation)}var IA=qA(/[A-Za-z]/),LA=qA(/[\dA-Za-z]/),RA=qA(/[#-'*+\--9=?A-Z^-~]/);function zA(e){return e!==null&&(e<32||e===127)}var BA=qA(/\d/),VA=qA(/[\dA-Fa-f]/),HA=qA(/[!-/:-@[-`{-~]/);function X(e){return e!==null&&e<-2}function UA(e){return e!==null&&(e<0||e===32)}function WA(e){return e===-2||e===-1||e===32}var GA=qA(/\p{P}|\p{S}/u),KA=qA(/\s/);function qA(e){return t;function t(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}var JA;(function(e){e.spaceOrPunctuation=3,e.cjk=4096,e.cjkPunctuation=4098,e.ivs=8192,e.cjkOrIvs=12288,e.nonEmojiGeneralUseVS=16384,e.variationSelector=24576,e.ivsToCjkRightShift=1})(JA||={});function YA(e){if(e===tA.eof||UA(e)||DA(e))return nA.characterGroupWhitespace;let t=0;if(e>=4352){if(TA(e))return JA.nonEmojiGeneralUseVS;switch(CA(e)){case null:return JA.ivs;case!0:t|=JA.cjk;break}}return EA(e)&&(t|=nA.characterGroupPunctuation),t}function XA(e,t,n){if(!PA(e))return e;let r=t(),i=YA(r);return!r||kA(i)?e:wA(r,n)?JA.cjkPunctuation:ZA(i)}function ZA(e){return e&~JA.ivs}function QA(e){return!!(e&&e>=55296&&e<=56319)}function $A(e){return!!(e&&e>=56320&&e<=57343)}function ej(e,t,n){if(t._bufferIndex<2)return e;let r=n({start:{...t,_bufferIndex:t._bufferIndex-2},end:t}).codePointAt(0);return r&&r>=65536?r:e}function tj(e,t,n){let r=e>=65536?2:1;if(t._bufferIndex<1+r)return null;let i=t._bufferIndex-r-2,a=n({start:{...t,_bufferIndex:i>=0?i:0},end:{...t,_bufferIndex:t._bufferIndex-r}}),o=a.charCodeAt(a.length-1);if(Number.isNaN(o))return null;if(a.length<2||o<56320||57343<o)return o;let s=a.codePointAt(0);return s&&s>=65536?s:o}var nj=class{cachedValue=void 0;constructor(e,t,n){this.previousCode=e,this.nowPoint=t,this.sliceSerialize=n}value(){return this.cachedValue===void 0&&(this.cachedValue=tj(this.previousCode,this.nowPoint,this.sliceSerialize)),this.cachedValue}};function rj(e,t,n){let r=n({start:t,end:{...t,_bufferIndex:t._bufferIndex+2}}).codePointAt(0);return r&&r>=65536?r:e}function ij(e,t,n,r){let i=e.length,a=0,o;if(t=t<0?-t>i?0:i+t:t>i?i:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);a<r.length;)o=r.slice(a,a+1e4),o.unshift(t,0),e.splice(...o),a+=1e4,t+=1e4}function aj(e,t){return e.length>0?(ij(e,e.length,0,t),e):t}function oj(e,t,n){let r=[],i=-1;for(;++i<e.length;){let a=e[i].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}var sj={name:`attention`,resolveAll:cj,tokenize:lj};function cj(e,t){let n=-1,r,i,a,o,s,c,l,u;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`attentionSequence`&&e[n][1]._close){for(r=n;r--;)if(e[r][0]===`exit`&&e[r][1].type===`attentionSequence`&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;c=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[n][1].start};uj(d,-c),uj(f,c),o={type:c>1?rA.strongSequence:rA.emphasisSequence,start:d,end:{...e[r][1].end}},s={type:c>1?rA.strongSequence:rA.emphasisSequence,start:{...e[n][1].start},end:f},a={type:c>1?rA.strongText:rA.emphasisText,start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?rA.strong:rA.emphasis,start:{...o.start},end:{...s.end}},e[r][1].end={...o.start},e[n][1].start={...s.end},l=[],e[r][1].end.offset-e[r][1].start.offset&&(l=aj(l,[[`enter`,e[r][1],t],[`exit`,e[r][1],t]])),l=aj(l,[[`enter`,i,t],[`enter`,o,t],[`exit`,o,t],[`enter`,a,t]]),t.parser.constructs.insideSpan.null,l=aj(l,oj(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),l=aj(l,[[`exit`,a,t],[`enter`,s,t],[`exit`,s,t],[`exit`,i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,l=aj(l,[[`enter`,e[n][1],t],[`exit`,e[n][1],t]])):u=0,ij(e,r-1,n-r+3,l),n=r+l.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`attentionSequence`&&(e[n][1].type=`data`);return e}function lj(e,t){let n=this.parser.constructs.attentionMarkers.null,{now:r,sliceSerialize:i,previous:a}=this,o=$A(a)?ej(a,r(),i):a,s=YA(o),c=new nj(o,r(),i),l=XA(s,c.value.bind(c),o),u;return d;function d(t){return t===tA.asterisk||tA.underscore,u=t,e.enter(`attentionSequence`),f(t)}function f(a){if(a===u)return e.consume(a),f;let s=e.exit(`attentionSequence`),c=YA(QA(a)?rj(a,r(),i):a),d=AA(l),p=d||kA(l),m=AA(c),h=m||kA(c),g=NA(l),_=!h||m&&(p||g)||n.includes(a),v=!p||d&&(h||jA(c))||n.includes(o);return s._open=!!(u===tA.asterisk?_:_&&(FA(l)||!v)),s._close=!!(u===tA.asterisk?v:v&&(FA(c)||!_)),t(a)}}function uj(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}function dj(){return{text:{[tA.asterisk]:sj,[tA.underscore]:sj},insideSpan:{null:[sj]}}}function fj(){let e=this.data();(e.micromarkExtensions||=[]).push(dj())}function pj(e){let t=(e||{}).singleTilde,n={name:`strikethrough`,tokenize:i,resolveAll:r};return t??=!0,{text:{[tA.tilde]:n},insideSpan:{null:[n]},attentionMarkers:{null:[tA.tilde]}};function r(e,t){let n=-1;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`strikethroughSequenceTemporary`&&e[n][1]._close){let r=n;for(;r--;)if(e[r][0]===`exit`&&e[r][1].type===`strikethroughSequenceTemporary`&&e[r][1]._open&&e[n][1].end.offset-e[n][1].start.offset===e[r][1].end.offset-e[r][1].start.offset){e[n][1].type=`strikethroughSequence`,e[r][1].type=`strikethroughSequence`;let i={type:`strikethrough`,start:Object.assign({},e[r][1].start),end:Object.assign({},e[n][1].end)},a={type:`strikethroughText`,start:Object.assign({},e[r][1].end),end:Object.assign({},e[n][1].start)},o=[[`enter`,i,t],[`enter`,e[r][1],t],[`exit`,e[r][1],t],[`enter`,a,t]],s=t.parser.constructs.insideSpan.null;s&&ij(o,o.length,0,oj(s,e.slice(r+1,n),t)),ij(o,o.length,0,[[`exit`,a,t],[`enter`,e[n][1],t],[`exit`,e[n][1],t],[`exit`,i,t]]),ij(e,r-1,n-r+3,o),n=r+o.length-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`strikethroughSequenceTemporary`&&(e[n][1].type=rA.data);return e}function i(e,n,r){let{now:i,sliceSerialize:a,previous:o}=this,s=$A(o)?ej(o,i(),a):o,c=YA(s),l=new nj(s,i(),a),u=XA(c,l.value.bind(l),s),d=this.events,f=0;return p;function p(t){return tA.tilde,s===tA.tilde&&d[d.length-1][1].type!==rA.characterEscape?r(t):(e.enter(`strikethroughSequenceTemporary`),m(t))}function m(o){let c=YA(s);if(o===tA.tilde)return f>1?r(o):(e.consume(o),f++,m);if(f<2&&!t)return r(o);let l=e.exit(`strikethroughSequenceTemporary`),d=YA(QA(o)?rj(o,i(),a):o),p=AA(u)||kA(u),h=AA(d)||kA(d),g=jA(u)||MA(c);return l._open=!h||d===nA.attentionSideAfter&&(p||g),l._close=!p||c===nA.attentionSideAfter&&(h||jA(d)),n(o)}}}function mj(e){let t=this.data();(t.micromarkExtensions||=[]).push(pj(e))}function hj(e,t){let n=String(e);if(typeof t!=`string`)throw TypeError(`Expected character`);let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function gj(e){if(typeof e!=`string`)throw TypeError(`Expected a string`);return e.replace(/[|\\{}()[\]^$+*?.]/g,`\\$&`).replace(/-/g,`\\x2d`)}function _j(e,t,n){let r=lk((n||{}).ignore||[]),i=vj(t),a=-1;for(;++a<i.length;)yk(e,`text`,o);function o(e,t){let n=-1,i;for(;++n<t.length;){let e=t[n],a=i?i.children:void 0;if(r(e,a?a.indexOf(e):void 0,i))return;i=e}if(i)return s(e,t)}function s(e,t){let n=t[t.length-1],r=i[a][0],o=i[a][1],s=0,c=n.children.indexOf(e),l=!1,u=[];r.lastIndex=0;let d=r.exec(e.value);for(;d;){let n=d.index,i={index:d.index,input:d.input,stack:[...t,e]},a=o(...d,i);if(typeof a==`string`&&(a=a.length>0?{type:`text`,value:a}:void 0),a===!1?r.lastIndex=n+1:(s!==n&&u.push({type:`text`,value:e.value.slice(s,n)}),Array.isArray(a)?u.push(...a):a&&u.push(a),s=n+d[0].length,l=!0),!r.global)break;d=r.exec(e.value)}return l?(s<e.value.length&&u.push({type:`text`,value:e.value.slice(s)}),n.children.splice(c,1,...u)):u=[e],c+u.length}}function vj(e){let t=[];if(!Array.isArray(e))throw TypeError(`Expected find and replace tuple or list of tuples`);let n=!e[0]||Array.isArray(e[0])?e:[e],r=-1;for(;++r<n.length;){let e=n[r];t.push([yj(e[0]),bj(e[1])])}return t}function yj(e){return typeof e==`string`?new RegExp(gj(e),`g`):e}function bj(e){return typeof e==`function`?e:function(){return e}}var xj=`phrasing`,Sj=[`autolink`,`link`,`image`,`label`];function Cj(){return{transforms:[jj],enter:{literalAutolink:Tj,literalAutolinkEmail:Ej,literalAutolinkHttp:Ej,literalAutolinkWww:Ej},exit:{literalAutolink:Aj,literalAutolinkEmail:kj,literalAutolinkHttp:Dj,literalAutolinkWww:Oj}}}function wj(){return{unsafe:[{character:`@`,before:`[+\\-.\\w]`,after:`[\\-.\\w]`,inConstruct:xj,notInConstruct:Sj},{character:`.`,before:`[Ww]`,after:`[\\-.\\w]`,inConstruct:xj,notInConstruct:Sj},{character:`:`,before:`[ps]`,after:`\\/`,inConstruct:xj,notInConstruct:Sj}]}}function Tj(e){this.enter({type:`link`,title:null,url:``,children:[]},e)}function Ej(e){this.config.enter.autolinkProtocol.call(this,e)}function Dj(e){this.config.exit.autolinkProtocol.call(this,e)}function Oj(e){this.config.exit.data.call(this,e);let t=this.stack[this.stack.length-1];t.type,t.url=`http://`+this.sliceSerialize(e)}function kj(e){this.config.exit.autolinkEmail.call(this,e)}function Aj(e){this.exit(e)}function jj(e){_j(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,Mj],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,Nj]],{ignore:[`link`,`linkReference`]})}function Mj(e,t,n,r,i){let a=``;if(!Ij(i)||(/^w/i.test(t)&&(n=t+n,t=``,a=`http://`),!Pj(n)))return!1;let o=Fj(n+r);if(!o[0])return!1;let s={type:`link`,title:null,url:a+t+o[0],children:[{type:`text`,value:t+o[0]}]};return o[1]?[s,{type:`text`,value:o[1]}]:s}function Nj(e,t,n,r){return!Ij(r,!0)||/[-\d_]$/.test(n)?!1:{type:`link`,title:null,url:`mailto:`+t+`@`+n,children:[{type:`text`,value:t+`@`+n}]}}function Pj(e){let t=e.split(`.`);return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function Fj(e){let t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(`)`),i=hj(e,`(`),a=hj(e,`)`);for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(`)`),a++;return[e,n]}function Ij(e,t){let n=e.input.charCodeAt(e.index-1);return(e.index===0||KA(n)||GA(n))&&(!t||n!==47)}function Lj(e){return e.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}qj.peek=Kj;function Rj(){this.buffer()}function zj(e){this.enter({type:`footnoteReference`,identifier:``,label:``},e)}function Bj(){this.buffer()}function Vj(e){this.enter({type:`footnoteDefinition`,identifier:``,label:``,children:[]},e)}function Hj(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Lj(this.sliceSerialize(e)).toLowerCase(),n.label=t}function Uj(e){this.exit(e)}function Wj(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Lj(this.sliceSerialize(e)).toLowerCase(),n.label=t}function Gj(e){this.exit(e)}function Kj(){return`[`}function qj(e,t,n,r){let i=n.createTracker(r),a=i.move(`[^`),o=n.enter(`footnoteReference`),s=n.enter(`reference`);return a+=i.move(n.safe(n.associationId(e),{after:`]`,before:a})),s(),o(),a+=i.move(`]`),a}function Jj(){return{enter:{gfmFootnoteCallString:Rj,gfmFootnoteCall:zj,gfmFootnoteDefinitionLabelString:Bj,gfmFootnoteDefinition:Vj},exit:{gfmFootnoteCallString:Hj,gfmFootnoteCall:Uj,gfmFootnoteDefinitionLabelString:Wj,gfmFootnoteDefinition:Gj}}}function Yj(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:qj},unsafe:[{character:`[`,inConstruct:[`label`,`phrasing`,`reference`]}]};function n(e,n,r,i){let a=r.createTracker(i),o=a.move(`[^`),s=r.enter(`footnoteDefinition`),c=r.enter(`label`);return o+=a.move(r.safe(r.associationId(e),{before:o,after:`]`})),c(),o+=a.move(`]:`),e.children&&e.children.length>0&&(a.shift(4),o+=a.move((t?`
|
|
278
278
|
`:` `)+r.indentLines(r.containerFlow(e,a.current()),t?Zj:Xj))),s(),o}}function Xj(e,t,n){return t===0?e:Zj(e,t,n)}function Zj(e,t,n){return(n?``:` `)+e}var Qj=[`autolink`,`destinationLiteral`,`destinationRaw`,`reference`,`titleQuote`,`titleApostrophe`];rM.peek=iM;function $j(){return{canContainEols:[`delete`],enter:{strikethrough:tM},exit:{strikethrough:nM}}}function eM(){return{unsafe:[{character:`~`,inConstruct:`phrasing`,notInConstruct:Qj}],handlers:{delete:rM}}}function tM(e){this.enter({type:`delete`,children:[]},e)}function nM(e){this.exit(e)}function rM(e,t,n,r){let i=n.createTracker(r),a=n.enter(`strikethrough`),o=i.move(`~~`);return o+=n.containerPhrasing(e,{...i.current(),before:o,after:`~`}),o+=i.move(`~~`),a(),o}function iM(){return`~`}function aM(e){return e.length}function oM(e,t){let n=t||{},r=(n.align||[]).concat(),i=n.stringLength||aM,a=[],o=[],s=[],c=[],l=0,u=-1;for(;++u<e.length;){let t=[],r=[],a=-1;for(e[u].length>l&&(l=e[u].length);++a<e[u].length;){let o=sM(e[u][a]);if(n.alignDelimiters!==!1){let e=i(o);r[a]=e,(c[a]===void 0||e>c[a])&&(c[a]=e)}t.push(o)}o[u]=t,s[u]=r}let d=-1;if(typeof r==`object`&&`length`in r)for(;++d<l;)a[d]=cM(r[d]);else{let e=cM(r);for(;++d<l;)a[d]=e}d=-1;let f=[],p=[];for(;++d<l;){let e=a[d],t=``,r=``;e===99?(t=`:`,r=`:`):e===108?t=`:`:e===114&&(r=`:`);let i=n.alignDelimiters===!1?1:Math.max(1,c[d]-t.length-r.length),o=t+`-`.repeat(i)+r;n.alignDelimiters!==!1&&(i=t.length+i+r.length,i>c[d]&&(c[d]=i),p[d]=i),f[d]=o}o.splice(1,0,f),s.splice(1,0,p),u=-1;let m=[];for(;++u<o.length;){let e=o[u],t=s[u];d=-1;let r=[];for(;++d<l;){let i=e[d]||``,o=``,s=``;if(n.alignDelimiters!==!1){let e=c[d]-(t[d]||0),n=a[d];n===114?o=` `.repeat(e):n===99?e%2?(o=` `.repeat(e/2+.5),s=` `.repeat(e/2-.5)):(o=` `.repeat(e/2),s=o):s=` `.repeat(e)}n.delimiterStart!==!1&&!d&&r.push(`|`),n.padding!==!1&&!(n.alignDelimiters===!1&&i===``)&&(n.delimiterStart!==!1||d)&&r.push(` `),n.alignDelimiters!==!1&&r.push(o),r.push(i),n.alignDelimiters!==!1&&r.push(s),n.padding!==!1&&r.push(` `),(n.delimiterEnd!==!1||d!==l-1)&&r.push(`|`)}m.push(n.delimiterEnd===!1?r.join(``).replace(/ +$/,``):r.join(``))}return m.join(`
|
|
279
279
|
`)}function sM(e){return e==null?``:String(e)}function cM(e){let t=typeof e==`string`?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function lM(e,t,n,r){let i=n.enter(`blockquote`),a=n.createTracker(r);a.move(`> `),a.shift(2);let o=n.indentLines(n.containerFlow(e,a.current()),uM);return i(),o}function uM(e,t,n){return`>`+(n?``:` `)+e}function dM(e,t){return fM(e,t.inConstruct,!0)&&!fM(e,t.notInConstruct,!1)}function fM(e,t,n){if(typeof t==`string`&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function pM(e,t,n,r){let i=-1;for(;++i<n.unsafe.length;)if(n.unsafe[i].character===`
|
|
@@ -295,8 +295,8 @@ components: ${dy(a)}
|
|
|
295
295
|
`+e.scrub();for(let n of e.markers)t.marks.push(n)}return this.finishLeaf(t),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw RangeError(`Can't move stoppedAt forward`);this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let t=this.fragments.takeNodes(this);return t?(this.absoluteLineStart+=t,this.lineStart=kV(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let t=eV;if(t.end=e,e>=this.to)t.text=``;else if(t.text=this.lineChunkAt(e),t.end+=t.text.length,this.ranges.length>1){let e=this.absoluteLineStart,n=this.rangeI;for(;this.ranges[n].to<t.end;){n++;let r=this.ranges[n].from,i=this.lineChunkAt(r);t.end=r+i.length,t.text=t.text.slice(0,this.ranges[n-1].to-e)+i,e=t.end-t.text.length}}return t}readLine(){let{line:e}=this,{text:t,end:n}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=n,e.reset(t);e.depth<this.stack.length;e.depth++){let t=this.stack[e.depth],n=this.parser.skipContextMarkup[t.type];if(!n)throw Error(`Unhandled block context `+$[t.type]);let r=this.line.markers.length;if(!n(t,this,e)){this.line.markers.length>r&&(t.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let t=this.input.chunk(e),n;if(this.input.lineChunks)n=t==`
|
|
296
296
|
`?``:t;else{let e=t.indexOf(`
|
|
297
297
|
`);n=e<0?t:t.slice(0,e)}return e+n.length>this.to?n.slice(0,this.to-e):n}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,t,n=0){this.block=TB.create(e,n,this.lineStart+t,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,t,n=0){this.startContext(this.parser.getNodeType(e),t,n)}addNode(e,t,n){typeof e==`number`&&(e=new DI(this.parser.nodeSet.types[e],cV,cV,(n??this.prevLineEnd())-t)),this.block.addChild(e,t-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,t){this.addNode(this.buffer.writeElements(EV(t.children,e.marks),-t.from).finish(t.type,t.to-t.from),t.from)}finishContext(){let e=this.stack.pop(),t=this.stack[this.stack.length-1];t.addChild(e.toTree(this.parser.nodeSet),e.from-t.from),this.block=t}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?nV(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let t of e.parsers)if(t.finish(this,e))return;let t=EV(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(t,-e.start).finish($.Paragraph,e.content.length),e.start)}elt(e,t,n,r){return typeof e==`string`?fV(this.parser.getNodeType(e),t,n,r):new dV(e,t)}get buffer(){return new lV(this.parser.nodeSet)}};function nV(e,t,n,r,i){let a=e[t].to,o=[],s=[],c=n.from+r;function l(n,i){for(;i?n>=a:n>a;){let i=e[t+1].from-a;r+=i,n+=i,t++,a=e[t].to}}for(let u=n.firstChild;u;u=u.nextSibling){l(u.from+r,!0);let n=u.from+r,d,f=i.get(u.tree);f?d=f:u.to+r>a?(d=nV(e,t,u,r,i),l(u.to+r,!1)):d=u.toTree(),o.push(d),s.push(n-c)}return l(n.to+r,!1),new DI(n.type,o,s,n.to+r-c,n.tree?n.tree.propValues:void 0)}var rV=class e extends qI{constructor(e,t,n,r,i,a,o,s,c){super(),this.nodeSet=e,this.blockParsers=t,this.leafBlockParsers=n,this.blockNames=r,this.endLeafBlock=i,this.skipContextMarkup=a,this.inlineParsers=o,this.inlineNames=s,this.wrappers=c,this.nodeTypes=Object.create(null);for(let t of e.types)this.nodeTypes[t.name]=t.id}createParse(e,t,n){let r=new tV(this,e,t,n);for(let i of this.wrappers)r=i(r,e,t,n);return r}configure(t){let n=aV(t);if(!n)return this;let{nodeSet:r,skipContextMarkup:i}=this,a=this.blockParsers.slice(),o=this.leafBlockParsers.slice(),s=this.blockNames.slice(),c=this.inlineParsers.slice(),l=this.inlineNames.slice(),u=this.endLeafBlock.slice(),d=this.wrappers;if(iV(n.defineNodes)){i=Object.assign({},i);let e=r.types.slice(),t;for(let r of n.defineNodes){let{name:n,block:a,composite:o,style:s}=typeof r==`string`?{name:r}:r;if(e.some(e=>e.name==n))continue;o&&(i[e.length]=(e,t,n)=>o(t,n,e.value));let c=e.length,l=o?[`Block`,`BlockContext`]:a?c>=$.ATXHeading1&&c<=$.SetextHeading2?[`Block`,`LeafBlock`,`Heading`]:[`Block`,`LeafBlock`]:void 0;e.push(SI.define({id:c,name:n,props:l&&[[yI.group,l]]})),s&&(t||={},Array.isArray(s)||s instanceof XI?t[n]=s:Object.assign(t,s))}r=new CI(e),t&&(r=r.extend(tL(t)))}if(iV(n.props)&&(r=r.extend(...n.props)),iV(n.remove))for(let e of n.remove){let t=this.blockNames.indexOf(e),n=this.inlineNames.indexOf(e);t>-1&&(a[t]=o[t]=void 0),n>-1&&(c[n]=void 0)}if(iV(n.parseBlock))for(let e of n.parseBlock){let t=s.indexOf(e.name);if(t>-1)a[t]=e.parse,o[t]=e.leaf;else{let t=e.before?oV(s,e.before):e.after?oV(s,e.after)+1:s.length-1;a.splice(t,0,e.parse),o.splice(t,0,e.leaf),s.splice(t,0,e.name)}e.endLeaf&&u.push(e.endLeaf)}if(iV(n.parseInline))for(let e of n.parseInline){let t=l.indexOf(e.name);if(t>-1)c[t]=e.parse;else{let t=e.before?oV(l,e.before):e.after?oV(l,e.after)+1:l.length-1;c.splice(t,0,e.parse),l.splice(t,0,e.name)}}return n.wrap&&(d=d.concat(n.wrap)),new e(r,a,o,s,u,i,c,l,d)}getNodeType(e){let t=this.nodeTypes[e];if(t==null)throw RangeError(`Unknown node type '${e}'`);return t}parseInline(e,t){let n=new TV(this,e,t);outer:for(let e=t;e<n.end;){let t=n.char(e);for(let r of this.inlineParsers)if(r){let i=r(n,t,e);if(i>=0){e=i;continue outer}}e++}return n.resolveMarkers(0)}};function iV(e){return e!=null&&e.length>0}function aV(e){if(!Array.isArray(e))return e;if(e.length==0)return null;let t=aV(e[0]);if(e.length==1)return t;let n=aV(e.slice(1));if(!n||!t)return t||n;let r=(e,t)=>(e||cV).concat(t||cV),i=t.wrap,a=n.wrap;return{props:r(t.props,n.props),defineNodes:r(t.defineNodes,n.defineNodes),parseBlock:r(t.parseBlock,n.parseBlock),parseInline:r(t.parseInline,n.parseInline),remove:r(t.remove,n.remove),wrap:i?a?(e,t,n,r)=>i(a(e,t,n,r),t,n,r):i:a}}function oV(e,t){let n=e.indexOf(t);if(n<0)throw RangeError(`Position specified relative to unknown parser ${t}`);return n}var sV=[SI.none];for(let e=1,t;t=$[e];e++)sV[e]=SI.define({id:e,name:t,props:e>=$.Escape?[]:[[yI.group,e in kB?[`Block`,`BlockContext`]:[`Block`,`LeafBlock`]]],top:t==`Document`});var cV=[],lV=class{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e,t,n,r=0){return this.content.push(e,t,n,4+r*4),this}writeElements(e,t=0){for(let n of e)n.writeTo(this,t);return this}finish(e,t){return DI.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:e,length:t})}},uV=class{constructor(e,t,n,r=cV){this.type=e,this.from=t,this.to=n,this.children=r}writeTo(e,t){let n=e.content.length;e.writeElements(this.children,t),e.content.push(this.type,this.from+t,this.to+t,e.content.length+4-n)}toTree(e){return new lV(e).writeElements(this.children,-this.from).finish(this.type,this.to-this.from)}},dV=class{constructor(e,t){this.tree=e,this.from=t}get to(){return this.from+this.tree.length}get type(){return this.tree.type.id}get children(){return cV}writeTo(e,t){e.nodes.push(this.tree),e.content.push(e.nodes.length-1,this.from+t,this.to+t,-1)}toTree(){return this.tree}};function fV(e,t,n,r){return new uV(e,t,n,r)}var pV={resolve:`Emphasis`,mark:`EmphasisMark`},mV={resolve:`Emphasis`,mark:`EmphasisMark`},hV={},gV={},_V=class{constructor(e,t,n,r){this.type=e,this.from=t,this.to=n,this.side=r}},vV=`!"#$%&'()*+,-./:;<=>?@[\\]^_\`{|}~`,yV=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{yV=RegExp(`[\\p{S}|\\p{P}]`,`u`)}catch{}var bV={Escape(e,t,n){if(t!=92||n==e.end-1)return-1;let r=e.char(n+1);for(let t=0;t<32;t++)if(vV.charCodeAt(t)==r)return e.append(fV($.Escape,n,n+2));return-1},Entity(e,t,n){if(t!=38)return-1;let r=/^(?:#\d+|#x[a-f\d]+|\w+);/i.exec(e.slice(n+1,n+31));return r?e.append(fV($.Entity,n,n+1+r[0].length)):-1},InlineCode(e,t,n){if(t!=96||n&&e.char(n-1)==96)return-1;let r=n+1;for(;r<e.end&&e.char(r)==96;)r++;let i=r-n,a=0;for(;r<e.end;r++)if(e.char(r)==96){if(a++,a==i&&e.char(r+1)!=96)return e.append(fV($.InlineCode,n,r+1,[fV($.CodeMark,n,n+i),fV($.CodeMark,r+1-i,r+1)]))}else a=0;return-1},HTMLTag(e,t,n){if(t!=60||n==e.end-1)return-1;let r=e.slice(n+1,e.end),i=/^(?:[a-z][-\w+.]+:[^\s>]+|[a-z\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)*)>/i.exec(r);if(i)return e.append(fV($.Autolink,n,n+1+i[0].length,[fV($.LinkMark,n,n+1),fV($.URL,n+1,n+i[0].length),fV($.LinkMark,n+i[0].length,n+1+i[0].length)]));let a=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(r);if(a)return e.append(fV($.Comment,n,n+1+a[0].length));let o=/^\?[^]*?\?>/.exec(r);if(o)return e.append(fV($.ProcessingInstruction,n,n+1+o[0].length));let s=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(r);return s?e.append(fV($.HTMLTag,n,n+1+s[0].length)):-1},Emphasis(e,t,n){if(t!=95&&t!=42)return-1;let r=n+1;for(;e.char(r)==t;)r++;let i=e.slice(n-1,n),a=e.slice(r,r+1),o=yV.test(i),s=yV.test(a),c=/\s|^$/.test(i),l=/\s|^$/.test(a),u=!l&&(!s||c||o),d=!c&&(!o||l||s),f=u&&(t==42||!d||o),p=d&&(t==42||!u||s);return e.append(new _V(t==95?pV:mV,n,r,!!f|(p?2:0)))},HardBreak(e,t,n){if(t==92&&e.char(n+1)==10)return e.append(fV($.HardBreak,n,n+2));if(t==32){let t=n+1;for(;e.char(t)==32;)t++;if(e.char(t)==10&&t>=n+2)return e.append(fV($.HardBreak,n,t+1))}return-1},Link(e,t,n){return t==91?e.append(new _V(hV,n,n+1,1)):-1},Image(e,t,n){return t==33&&e.char(n+1)==91?e.append(new _V(gV,n,n+2,1)):-1},LinkEnd(e,t,n){if(t!=93)return-1;for(let t=e.parts.length-1;t>=0;t--){let r=e.parts[t];if(r instanceof _V&&(r.type==hV||r.type==gV)){if(!r.side||e.skipSpace(r.to)==n&&!/[(\[]/.test(e.slice(n+1,n+2)))return e.parts[t]=null,-1;let i=e.takeContent(t),a=e.parts[t]=xV(e,i,r.type==hV?$.Link:$.Image,r.from,n+1);if(r.type==hV)for(let n=0;n<t;n++){let t=e.parts[n];t instanceof _V&&t.type==hV&&(t.side=0)}return a.to}}return-1}};function xV(e,t,n,r,i){let{text:a}=e,o=e.char(i),s=i;if(t.unshift(fV($.LinkMark,r,r+(n==$.Image?2:1))),t.push(fV($.LinkMark,i-1,i)),o==40){let n=e.skipSpace(i+1),r=SV(a,n-e.offset,e.offset),o;r&&(n=e.skipSpace(r.to),n!=r.to&&(o=CV(a,n-e.offset,e.offset),o&&(n=e.skipSpace(o.to)))),e.char(n)==41&&(t.push(fV($.LinkMark,i,i+1)),s=n+1,r&&t.push(r),o&&t.push(o),t.push(fV($.LinkMark,n,s)))}else if(o==91){let n=wV(a,i-e.offset,e.offset,!1);n&&(t.push(n),s=n.to)}return fV(n,r,s,t)}function SV(e,t,n){if(e.charCodeAt(t)==60){for(let r=t+1;r<e.length;r++){let i=e.charCodeAt(r);if(i==62)return fV($.URL,t+n,r+1+n);if(i==60||i==10)return!1}return null}else{let r=0,i=t;for(let t=!1;i<e.length;i++){let n=e.charCodeAt(i);if(AB(n))break;if(t)t=!1;else if(n==40)r++;else if(n==41){if(!r)break;r--}else n==92&&(t=!0)}return i>t?fV($.URL,t+n,i+n):i==e.length?null:!1}}function CV(e,t,n){let r=e.charCodeAt(t);if(r!=39&&r!=34&&r!=40)return!1;let i=r==40?41:r;for(let r=t+1,a=!1;r<e.length;r++){let o=e.charCodeAt(r);if(a)a=!1;else if(o==i)return fV($.LinkTitle,t+n,r+1+n);else o==92&&(a=!0)}return null}function wV(e,t,n,r){for(let i=!1,a=t+1,o=Math.min(e.length,a+999);a<o;a++){let o=e.charCodeAt(a);if(i)i=!1;else if(o==93)return r?!1:fV($.LinkLabel,t+n,a+1+n);else{if(r&&!AB(o)&&(r=!1),o==91)return!1;o==92&&(i=!0)}}return null}var TV=class{constructor(e,t,n){this.parser=e,this.text=t,this.offset=n,this.parts=[]}char(e){return e>=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,n,r,i){return this.append(new _V(e,t,n,!!r|(i?2:0)))}get hasOpenLink(){for(let e=this.parts.length-1;e>=0;e--){let t=this.parts[e];if(t instanceof _V&&(t.type==hV||t.type==gV))return!0}return!1}addElement(e){return this.append(e)}resolveMarkers(e){for(let t=e;t<this.parts.length;t++){let n=this.parts[t];if(!(n instanceof _V&&n.type.resolve&&n.side&2))continue;let r=n.type==pV||n.type==mV,i=n.to-n.from,a,o=t-1;for(;o>=e;o--){let e=this.parts[o];if(e instanceof _V&&e.side&1&&e.type==n.type&&!(r&&(n.side&1||e.side&2)&&(e.to-e.from+i)%3==0&&((e.to-e.from)%3||i%3))){a=e;break}}if(!a)continue;let s=n.type.resolve,c=[],l=a.from,u=n.to;if(r){let e=Math.min(2,a.to-a.from,i);l=a.to-e,u=n.from+e,s=e==1?`Emphasis`:`StrongEmphasis`}a.type.mark&&c.push(this.elt(a.type.mark,l,a.to));for(let e=o+1;e<t;e++)this.parts[e]instanceof uV&&c.push(this.parts[e]),this.parts[e]=null;n.type.mark&&c.push(this.elt(n.type.mark,n.from,u));let d=this.elt(s,l,u,c);this.parts[o]=r&&a.from!=l?new _V(a.type,a.from,l,a.side):null,(this.parts[t]=r&&n.to!=u?new _V(n.type,u,n.to,n.side):null)?this.parts.splice(t,0,d):this.parts[t]=d}let t=[];for(let n=e;n<this.parts.length;n++){let e=this.parts[n];e instanceof uV&&t.push(e)}return t}findOpeningDelimiter(e){for(let t=this.parts.length-1;t>=0;t--){let n=this.parts[t];if(n instanceof _V&&n.type==e&&n.side&1)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}getDelimiterAt(e){let t=this.parts[e];return t instanceof _V?t:null}skipSpace(e){return jB(this.text,e-this.offset)+this.offset}elt(e,t,n,r){return typeof e==`string`?fV(this.parser.getNodeType(e),t,n,r):new dV(e,t)}};TV.linkStart=hV,TV.imageStart=gV;function EV(e,t){if(!t.length)return e;if(!e.length)return t;let n=e.slice(),r=0;for(let e of t){for(;r<n.length&&n[r].to<e.to;)r++;if(r<n.length&&n[r].from<e.from){let t=n[r];t instanceof uV&&(n[r]=new uV(t.type,t.from,t.to,EV(t.children,[e])))}else n.splice(r++,0,e)}return n}var DV=[$.CodeBlock,$.ListItem,$.OrderedList,$.BulletList],OV=class{constructor(e,t){this.fragments=e,this.input=t,this.i=0,this.fragment=null,this.fragmentEnd=-1,this.cursor=null,e.length&&(this.fragment=e[this.i++])}nextFragment(){this.fragment=this.i<this.fragments.length?this.fragments[this.i++]:null,this.cursor=null,this.fragmentEnd=-1}moveTo(e,t){for(;this.fragment&&this.fragment.to<=e;)this.nextFragment();if(!this.fragment||this.fragment.from>(e?e-1:0))return!1;if(this.fragmentEnd<0){let e=this.fragment.to;for(;e>0&&this.input.read(e-1,e)!=`
|
|
298
|
-
`;)e--;this.fragmentEnd=e?e-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(yI.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=this.fragmentEnd-+!!this.fragment.openEnd,i=e.absoluteLineStart,a=i,o=e.block.children.length,s=a,c=o;for(;;){if(t.to-n>r){if(t.type.isAnonymous&&t.firstChild())continue;break}let i=kV(t.from-n,e.ranges);if(t.to-n<=e.ranges[e.rangeI].to)e.addNode(t.tree,i);else{let n=new DI(e.parser.nodeSet.types[$.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(n,t.tree),e.addNode(n,i)}if(t.type.is(`Block`)&&(DV.indexOf(t.type.id)<0?(a=t.to-n,o=e.block.children.length):(a=s,o=c),s=t.to-n,c=e.block.children.length),!t.nextSibling())break}for(;e.block.children.length>o;)e.block.children.pop(),e.block.positions.pop();return a-i}};function kV(e,t){let n=e;for(let r=1;r<t.length;r++){let i=t[r-1].to,a=t[r].from;i<e&&(n-=a-i)}return n}var AV=tL({"Blockquote/...":Q.quote,HorizontalRule:Q.contentSeparator,"ATXHeading1/... SetextHeading1/...":Q.heading1,"ATXHeading2/... SetextHeading2/...":Q.heading2,"ATXHeading3/...":Q.heading3,"ATXHeading4/...":Q.heading4,"ATXHeading5/...":Q.heading5,"ATXHeading6/...":Q.heading6,"Comment CommentBlock":Q.comment,Escape:Q.escape,Entity:Q.character,"Emphasis/...":Q.emphasis,"StrongEmphasis/...":Q.strong,"Link/... Image/...":Q.link,"OrderedList/... BulletList/...":Q.list,"BlockQuote/...":Q.quote,"InlineCode CodeText":Q.monospace,"URL Autolink":Q.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":Q.processingInstruction,"CodeInfo LinkLabel":Q.labelName,LinkTitle:Q.string,Paragraph:Q.content}),jV=new rV(new CI(sV).extend(AV),Object.keys(JB).map(e=>JB[e]),Object.keys(JB).map(e=>QB[e]),Object.keys(JB),$B,kB,Object.keys(bV).map(e=>bV[e]),Object.keys(bV),[]);Q.strikethrough,Q.processingInstruction,Q.heading,Q.content,Q.processingInstruction,Q.list,Q.atom,Q.special(Q.content),Q.processingInstruction,Q.special(Q.content),Q.processingInstruction,Q.character;var MV=1,NV=194,PV=195,FV=196,IV=197,LV=198,RV=199,zV=200,BV=2,VV=3,HV=201,UV=24,WV=25,GV=49,KV=50,qV=55,JV=56,YV=57,XV=59,ZV=60,QV=61,$V=62,eH=63,tH=65,nH=238,rH=71,iH=241,aH=242,oH=243,sH=244,cH=245,lH=246,uH=247,dH=248,fH=72,pH=249,mH=250,hH=251,gH=252,_H=253,vH=254,yH=255,bH=256,xH=73,SH=77,CH=263,wH=112,TH=130,EH=151,DH=152,OH=155,kH=10,AH=13,jH=32,MH=9,NH=35,PH=40,FH=46,IH=123,LH=125,RH=39,zH=34,BH=92,VH=111,HH=120,UH=78,WH=117,GH=85,KH=new Set([WV,GV,KV,CH,tH,TH,JV,YV,nH,$V,eH,fH,xH,SH,ZV,QV,EH,DH,OH,wH]);function qH(e){return e==kH||e==AH}function JH(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}var YH=new ER((e,t)=>{let n;if(e.next<0)e.acceptToken(RV);else if(t.context.flags&ZH)qH(e.next)&&e.acceptToken(LV,1);else if(((n=e.peek(-1))<0||qH(n))&&t.canShift(IV)){let t=0;for(;e.next==jH||e.next==MH;)e.advance(),t++;(e.next==kH||e.next==AH||e.next==NH)&&e.acceptToken(IV,-t)}else qH(e.next)&&e.acceptToken(FV,1)},{contextual:!0}),XH=new ER((e,t)=>{let n=t.context;if(n.flags)return;let r=e.peek(-1);if(r==kH||r==AH){let t=0,r=0;for(;;){if(e.next==jH)t++;else if(e.next==MH)t+=8-t%8;else break;e.advance(),r++}t!=n.indent&&e.next!=kH&&e.next!=AH&&e.next!=NH&&(t<n.indent?e.acceptToken(PV,-r):e.acceptToken(NV))}}),ZH=1,QH=2,$H=4,eU=8,tU=16,nU=32;function rU(e,t,n){this.parent=e,this.indent=t,this.flags=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n+(n<<6)}var iU=new rU(null,0,0);function aU(e){let t=0;for(let n=0;n<e.length;n++)t+=e.charCodeAt(n)==MH?8-t%8:1;return t}var oU=new Map([[iH,0],[aH,$H],[oH,eU],[sH,eU|$H],[cH,tU],[lH,tU|$H],[uH,tU|eU],[dH,eU|20],[pH,nU],[mH,nU|$H],[hH,nU|eU],[gH,eU|36],[_H,nU|tU],[vH,tU|36],[yH,tU|40],[bH,60]].map(([e,t])=>[e,t|QH])),sU=new zR({start:iU,reduce(e,t,n,r){return e.flags&ZH&&KH.has(t)||(t==rH||t==fH)&&e.flags&QH?e.parent:e},shift(e,t,n,r){return t==NV?new rU(e,aU(r.read(r.pos,n.pos)),0):t==PV?e.parent:t==UV||t==qV||t==XV||t==VV?new rU(e,0,ZH):oU.has(t)?new rU(e,0,oU.get(t)|e.flags&ZH):e},hash(e){return e.hash}}),cU=new ER(e=>{for(let t=0;t<5;t++){if(e.next!=`print`.charCodeAt(t))return;e.advance()}if(!/\w/.test(String.fromCharCode(e.next)))for(let t=0;;t++){let n=e.peek(t);if(!(n==jH||n==MH)){n!=PH&&n!=FH&&n!=kH&&n!=AH&&n!=NH&&e.acceptToken(MV);return}}}),lU=new ER((e,t)=>{let{flags:n}=t.context,r=n&$H?zH:RH,i=(n&eU)>0,a=!(n&tU),o=(n&nU)>0,s=e.pos;for(;!(e.next<0);)if(o&&e.next==IH)if(e.peek(1)==IH)e.advance(2);else{if(e.pos==s){e.acceptToken(VV,1);return}break}else if(a&&e.next==BH){if(e.pos==s){e.advance();let t=e.next;t>=0&&(e.advance(),uU(e,t)),e.acceptToken(BV);return}break}else if(e.next==BH&&!a&&e.peek(1)>-1)e.advance(2);else if(e.next==r&&(!i||e.peek(1)==r&&e.peek(2)==r)){if(e.pos==s){e.acceptToken(HV,i?3:1);return}break}else if(e.next==kH){if(i)e.advance();else if(e.pos==s){e.acceptToken(HV);return}break}else e.advance();e.pos>s&&e.acceptToken(zV)});function uU(e,t){if(t==VH)for(let t=0;t<2&&e.next>=48&&e.next<=55;t++)e.advance();else if(t==HH)for(let t=0;t<2&&JH(e.next);t++)e.advance();else if(t==WH)for(let t=0;t<4&&JH(e.next);t++)e.advance();else if(t==GH)for(let t=0;t<8&&JH(e.next);t++)e.advance();else if(t==UH&&e.next==IH){for(e.advance();e.next>=0&&e.next!=LH&&e.next!=RH&&e.next!=zH&&e.next!=kH;)e.advance();e.next==LH&&e.advance()}}var dU=tL({'async "*" "**" FormatConversion FormatSpec':Q.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":Q.controlKeyword,"in not and or is del":Q.operatorKeyword,"from def class global nonlocal lambda":Q.definitionKeyword,import:Q.moduleKeyword,"with as print":Q.keyword,Boolean:Q.bool,None:Q.null,VariableName:Q.variableName,"CallExpression/VariableName":Q.function(Q.variableName),"FunctionDefinition/VariableName":Q.function(Q.definition(Q.variableName)),"ClassDefinition/VariableName":Q.definition(Q.className),PropertyName:Q.propertyName,"CallExpression/MemberExpression/PropertyName":Q.function(Q.propertyName),Comment:Q.lineComment,Number:Q.number,String:Q.string,FormatString:Q.special(Q.string),Escape:Q.escape,UpdateOp:Q.updateOperator,"ArithOp!":Q.arithmeticOperator,BitOp:Q.bitwiseOperator,CompareOp:Q.compareOperator,AssignOp:Q.definitionOperator,Ellipsis:Q.punctuation,At:Q.meta,"( )":Q.paren,"[ ]":Q.squareBracket,"{ }":Q.brace,".":Q.derefOperator,", ;":Q.separator}),fU={__proto__:null,await:44,or:54,and:56,in:60,not:62,is:64,if:70,else:72,lambda:76,yield:94,from:96,async:102,for:104,None:162,True:164,False:164,del:178,pass:182,break:186,continue:190,return:194,raise:202,import:206,as:208,global:212,nonlocal:214,assert:218,type:223,elif:236,while:240,try:246,except:248,finally:250,with:254,def:258,class:268,match:279,case:285},pU=BR.deserialize({version:14,states:"##jO`QeOOP$}OSOOO&WQtO'#HUOOQS'#Co'#CoOOQS'#Cp'#CpO'vQdO'#CnO*UQtO'#HTOOQS'#HU'#HUOOQS'#DU'#DUOOQS'#HT'#HTO*rQdO'#D_O+VQdO'#DfO+gQdO'#DjO+zOWO'#DuO,VOWO'#DvO.[QtO'#GuOOQS'#Gu'#GuO'vQdO'#GtO0ZQtO'#GtOOQS'#Eb'#EbO0rQdO'#EcOOQS'#Gs'#GsO0|QdO'#GrOOQV'#Gr'#GrO1XQdO'#FYOOQS'#G^'#G^O1^QdO'#FXOOQV'#IS'#ISOOQV'#Gq'#GqOOQV'#Fq'#FqQ`QeOOO'vQdO'#CqO1lQdO'#C}O1sQdO'#DRO2RQdO'#HYO2cQtO'#EVO'vQdO'#EWOOQS'#EY'#EYOOQS'#E['#E[OOQS'#E^'#E^O2wQdO'#E`O3_QdO'#EdO3rQdO'#EfO3zQtO'#EfO1XQdO'#EiO0rQdO'#ElO1XQdO'#EnO0rQdO'#EtO0rQdO'#EwO4VQdO'#EyO4^QdO'#FOO4iQdO'#EzO0rQdO'#FOO1XQdO'#FQO1XQdO'#FVO4nQdO'#F[P4uOdO'#GpPOOO)CBd)CBdOOQS'#Ce'#CeOOQS'#Cf'#CfOOQS'#Cg'#CgOOQS'#Ch'#ChOOQS'#Ci'#CiOOQS'#Cj'#CjOOQS'#Cl'#ClO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO5TQdO'#DoOOQS,5:Y,5:YO5hQdO'#HdOOQS,5:],5:]O5uQ!fO,5:]O5zQtO,59YO1lQdO,59bO1lQdO,59bO1lQdO,59bO8jQdO,59bO8oQdO,59bO8vQdO,59jO8}QdO'#HTO:TQdO'#HSOOQS'#HS'#HSOOQS'#D['#D[O:lQdO,59aO'vQdO,59aO:zQdO,59aOOQS,59y,59yO;PQdO,5:RO'vQdO,5:ROOQS,5:Q,5:QO;_QdO,5:QO;dQdO,5:XO'vQdO,5:XO'vQdO,5:VOOQS,5:U,5:UO;uQdO,5:UO;zQdO,5:WOOOW'#Fy'#FyO<POWO,5:aOOQS,5:a,5:aO<[QdO'#HwOOOW'#Dw'#DwOOOW'#Fz'#FzO<lOWO,5:bOOQS,5:b,5:bOOQS'#F}'#F}O<zQtO,5:iO?lQtO,5=`O@VQ#xO,5=`O@vQtO,5=`OOQS,5:},5:}OA_QeO'#GWOBqQdO,5;^OOQV,5=^,5=^OB|QtO'#IPOCkQdO,5;tOOQS-E:[-E:[OOQV,5;s,5;sO4dQdO'#FQOOQV-E9o-E9oOCsQtO,59]OEzQtO,59iOFeQdO'#HVOFpQdO'#HVO1XQdO'#HVOF{QdO'#DTOGTQdO,59mOGYQdO'#HZO'vQdO'#HZO0rQdO,5=tOOQS,5=t,5=tO0rQdO'#EROOQS'#ES'#ESOGwQdO'#GPOHXQdO,58|OHXQdO,58|O*xQdO,5:oOHgQtO'#H]OOQS,5:r,5:rOOQS,5:z,5:zOHzQdO,5;OOI]QdO'#IOO1XQdO'#H}OOQS,5;Q,5;QOOQS'#GT'#GTOIqQtO,5;QOJPQdO,5;QOJUQdO'#IQOOQS,5;T,5;TOJdQdO'#H|OOQS,5;W,5;WOJuQdO,5;YO4iQdO,5;`O4iQdO,5;cOJ}QtO'#ITO'vQdO'#ITOKXQdO,5;eO4VQdO,5;eO0rQdO,5;jO1XQdO,5;lOK^QeO'#EuOLjQgO,5;fO!!kQdO'#IUO4iQdO,5;jO!!vQdO,5;lO!#OQdO,5;qO!#ZQtO,5;vO'vQdO,5;vPOOO,5=[,5=[P!#bOSO,5=[P!#jOdO,5=[O!&bQtO1G.jO!&iQtO1G.jO!)YQtO1G.jO!)dQtO1G.jO!+}QtO1G.jO!,bQtO1G.jO!,uQdO'#HcO!-TQtO'#GuO0rQdO'#HcO!-_QdO'#HbOOQS,5:Z,5:ZO!-gQdO,5:ZO!-lQdO'#HeO!-wQdO'#HeO!.[QdO,5>OOOQS'#Ds'#DsOOQS1G/w1G/wOOQS1G.|1G.|O!/[QtO1G.|O!/cQtO1G.|O1lQdO1G.|O!0OQdO1G/UOOQS'#DZ'#DZO0rQdO,59tOOQS1G.{1G.{O!0VQdO1G/eO!0gQdO1G/eO!0oQdO1G/fO'vQdO'#H[O!0tQdO'#H[O!0yQtO1G.{O!1ZQdO,59iO!2aQdO,5=zO!2qQdO,5=zO!2yQdO1G/mO!3OQtO1G/mOOQS1G/l1G/lO!3`QdO,5=uO!4VQdO,5=uO0rQdO1G/qO!4tQdO1G/sO!4yQtO1G/sO!5ZQtO1G/qOOQS1G/p1G/pOOQS1G/r1G/rOOOW-E9w-E9wOOQS1G/{1G/{O!5kQdO'#HxO0rQdO'#HxO!5|QdO,5>cOOOW-E9x-E9xOOQS1G/|1G/|OOQS-E9{-E9{O!6[Q#xO1G2zO!6{QtO1G2zO'vQdO,5<jOOQS,5<j,5<jOOQS-E9|-E9|OOQS,5<r,5<rOOQS-E:U-E:UOOQV1G0x1G0xO1XQdO'#GRO!7dQtO,5>kOOQS1G1`1G1`O!8RQdO1G1`OOQS'#DV'#DVO0rQdO,5=qOOQS,5=q,5=qO!8WQdO'#FrO!8cQdO,59oO!8kQdO1G/XO!8uQtO,5=uOOQS1G3`1G3`OOQS,5:m,5:mO!9fQdO'#GtOOQS,5<k,5<kOOQS-E9}-E9}O!9wQdO1G.hOOQS1G0Z1G0ZO!:VQdO,5=wO!:gQdO,5=wO0rQdO1G0jO0rQdO1G0jO!:xQdO,5>jO!;ZQdO,5>jO1XQdO,5>jO!;lQdO,5>iOOQS-E:R-E:RO!;qQdO1G0lO!;|QdO1G0lO!<RQdO,5>lO!<aQdO,5>lO!<oQdO,5>hO!=VQdO,5>hO!=hQdO'#EpO0rQdO1G0tO!=sQdO1G0tO!=xQgO1G0zO!AvQgO1G0}O!EqQdO,5>oO!E{QdO,5>oO!FTQtO,5>oO0rQdO1G1PO!F_QdO1G1PO4iQdO1G1UO!!vQdO1G1WOOQV,5;a,5;aO!FdQfO,5;aO!FiQgO1G1QO!JjQdO'#GZO4iQdO1G1QO4iQdO1G1QO!JzQdO,5>pO!KXQdO,5>pO1XQdO,5>pOOQV1G1U1G1UO!KaQdO'#FSO!KrQ!fO1G1WO!KzQdO1G1WOOQV1G1]1G1]O4iQdO1G1]O!LPQdO1G1]O!LXQdO'#F^OOQV1G1b1G1bO!#ZQtO1G1bPOOO1G2v1G2vP!L^OSO1G2vOOQS,5=},5=}OOQS'#Dp'#DpO0rQdO,5=}O!LfQdO,5=|O!LyQdO,5=|OOQS1G/u1G/uO!MRQdO,5>PO!McQdO,5>PO!MkQdO,5>PO!NOQdO,5>PO!N`QdO,5>POOQS1G3j1G3jOOQS7+$h7+$hO!8kQdO7+$pO#!RQdO1G.|O#!YQdO1G.|OOQS1G/`1G/`OOQS,5<`,5<`O'vQdO,5<`OOQS7+%P7+%PO#!aQdO7+%POOQS-E9r-E9rOOQS7+%Q7+%QO#!qQdO,5=vO'vQdO,5=vOOQS7+$g7+$gO#!vQdO7+%PO##OQdO7+%QO##TQdO1G3fOOQS7+%X7+%XO##eQdO1G3fO##mQdO7+%XOOQS,5<_,5<_O'vQdO,5<_O##rQdO1G3aOOQS-E9q-E9qO#$iQdO7+%]OOQS7+%_7+%_O#$wQdO1G3aO#%fQdO7+%_O#%kQdO1G3gO#%{QdO1G3gO#&TQdO7+%]O#&YQdO,5>dO#&sQdO,5>dO#&sQdO,5>dOOQS'#Dx'#DxO#'UO&jO'#DzO#'aO`O'#HyOOOW1G3}1G3}O#'fQdO1G3}O#'nQdO1G3}O#'yQ#xO7+(fO#(jQtO1G2UP#)TQdO'#GOOOQS,5<m,5<mOOQS-E:P-E:POOQS7+&z7+&zOOQS1G3]1G3]OOQS,5<^,5<^OOQS-E9p-E9pOOQS7+$s7+$sO#)bQdO,5=`O#){QdO,5=`O#*^QtO,5<aO#*qQdO1G3cOOQS-E9s-E9sOOQS7+&U7+&UO#+RQdO7+&UO#+aQdO,5<nO#+uQdO1G4UOOQS-E:Q-E:QO#,WQdO1G4UOOQS1G4T1G4TOOQS7+&W7+&WO#,iQdO7+&WOOQS,5<p,5<pO#,tQdO1G4WOOQS-E:S-E:SOOQS,5<l,5<lO#-SQdO1G4SOOQS-E:O-E:OO1XQdO'#EqO#-jQdO'#EqO#-uQdO'#IRO#-}QdO,5;[OOQS7+&`7+&`O0rQdO7+&`O#.SQgO7+&fO!JmQdO'#GXO4iQdO7+&fO4iQdO7+&iO#2QQtO,5<tO'vQdO,5<tO#2[QdO1G4ZOOQS-E:W-E:WO#2fQdO1G4ZO4iQdO7+&kO0rQdO7+&kOOQV7+&p7+&pO!KrQ!fO7+&rO!KzQdO7+&rO`QeO1G0{OOQV-E:X-E:XO4iQdO7+&lO4iQdO7+&lOOQV,5<u,5<uO#2nQdO,5<uO!JmQdO,5<uOOQV7+&l7+&lO#2yQgO7+&lO#6tQdO,5<vO#7PQdO1G4[OOQS-E:Y-E:YO#7^QdO1G4[O#7fQdO'#IWO#7tQdO'#IWO1XQdO'#IWOOQS'#IW'#IWO#8PQdO'#IVOOQS,5;n,5;nO#8XQdO,5;nO0rQdO'#FUOOQV7+&r7+&rO4iQdO7+&rOOQV7+&w7+&wO4iQdO7+&wO#8^QfO,5;xOOQV7+&|7+&|POOO7+(b7+(bO#8cQdO1G3iOOQS,5<c,5<cO#8qQdO1G3hOOQS-E9u-E9uO#9UQdO,5<dO#9aQdO,5<dO#9tQdO1G3kOOQS-E9v-E9vO#:UQdO1G3kO#:^QdO1G3kO#:nQdO1G3kO#:UQdO1G3kOOQS<<H[<<H[O#:yQtO1G1zOOQS<<Hk<<HkP#;WQdO'#FtO8vQdO1G3bO#;eQdO1G3bO#;jQdO<<HkOOQS<<Hl<<HlO#;zQdO7+)QOOQS<<Hs<<HsO#<[QtO1G1yP#<{QdO'#FsO#=YQdO7+)RO#=jQdO7+)RO#=rQdO<<HwO#=wQdO7+({OOQS<<Hy<<HyO#>nQdO,5<bO'vQdO,5<bOOQS-E9t-E9tOOQS<<Hw<<HwOOQS,5<g,5<gO0rQdO,5<gO#>sQdO1G4OOOQS-E9y-E9yO#?^QdO1G4OO<[QdO'#H{OOOO'#D{'#D{OOOO'#F|'#F|O#?oO&jO,5:fOOOW,5>e,5>eOOOW7+)i7+)iO#?zQdO7+)iO#@SQdO1G2zO#@mQdO1G2zP'vQdO'#FuO0rQdO<<IpO1XQdO1G2YP1XQdO'#GSO#AOQdO7+)pO#AaQdO7+)pOOQS<<Ir<<IrP1XQdO'#GUP0rQdO'#GQOOQS,5;],5;]O#ArQdO,5>mO#BQQdO,5>mOOQS1G0v1G0vOOQS<<Iz<<IzOOQV-E:V-E:VO4iQdO<<JQOOQV,5<s,5<sO4iQdO,5<sOOQV<<JQ<<JQOOQV<<JT<<JTO#BYQtO1G2`P#BdQdO'#GYO#BkQdO7+)uO#BuQgO<<JVO4iQdO<<JVOOQV<<J^<<J^O4iQdO<<J^O!KrQ!fO<<J^O#FpQgO7+&gOOQV<<JW<<JWO#FzQgO<<JWOOQV1G2a1G2aO1XQdO1G2aO#JuQdO1G2aO4iQdO<<JWO1XQdO1G2bP0rQdO'#G[O#KQQdO7+)vO#K_QdO7+)vOOQS'#FT'#FTO0rQdO,5>rO#KgQdO,5>rO#KrQdO,5>rO#K}QdO,5>qO#L`QdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<<Jc<<JcO#LhQdO1G1dOOQS7+)T7+)TP#LmQdO'#FwO#L}QdO1G2OO#MbQdO1G2OO#MrQdO1G2OP#M}QdO'#FxO#N[QdO7+)VO#NlQdO7+)VO#NlQdO7+)VO#NtQdO7+)VO$ UQdO7+(|O8vQdO7+(|OOQSAN>VAN>VO$ oQdO<<LmOOQSAN>cAN>cO0rQdO1G1|O$!PQtO1G1|P$!ZQdO'#FvOOQS1G2R1G2RP$!hQdO'#F{O$!uQdO7+)jO$#`QdO,5>gOOOO-E9z-E9zOOOW<<MT<<MTO$#nQdO7+(fOOQSAN?[AN?[OOQS7+'t7+'tO$$XQdO<<M[OOQS,5<q,5<qO$$jQdO1G4XOOQS-E:T-E:TOOQVAN?lAN?lOOQV1G2_1G2_O4iQdOAN?qO$$xQgOAN?qOOQVAN?xAN?xO4iQdOAN?xOOQV<<JR<<JRO4iQdOAN?rO4iQdO7+'{OOQV7+'{7+'{O1XQdO7+'{OOQVAN?rAN?rOOQS7+'|7+'|O$(sQdO<<MbOOQS1G4^1G4^O0rQdO1G4^OOQS,5<w,5<wO$)QQdO1G4]OOQS-E:Z-E:ZOOQU'#G_'#G_O$)cQfO7+'OO$)nQdO'#F_O$*uQdO7+'jO$+VQdO7+'jOOQS7+'j7+'jO$+bQdO<<LqO$+rQdO<<LqO$+rQdO<<LqO$+zQdO'#H^OOQS<<Lh<<LhO$,UQdO<<LhOOQS7+'h7+'hOOQS'#D|'#D|OOOO1G4R1G4RO$,oQdO1G4RO$,wQdO1G4RP!=hQdO'#GVOOQVG25]G25]O4iQdOG25]OOQVG25dG25dOOQVG25^G25^OOQV<<Kg<<KgO4iQdO<<KgOOQS7+)x7+)xP$-SQdO'#G]OOQU-E:]-E:]OOQV<<Jj<<JjO$-vQtO'#FaOOQS'#Fc'#FcO$.WQdO'#FbO$.xQdO'#FbOOQS'#Fb'#FbO$.}QdO'#IYO$)nQdO'#FiO$)nQdO'#FiO$/fQdO'#FjO$)nQdO'#FkO$/mQdO'#IZOOQS'#IZ'#IZO$0[QdO,5;yOOQS<<KU<<KUO$0dQdO<<KUO$0tQdOANB]O$1UQdOANB]O$1^QdO'#H_OOQS'#H_'#H_O1sQdO'#DcO$1wQdO,5=xOOQSANBSANBSOOOO7+)m7+)mO$2`QdO7+)mOOQVLD*wLD*wOOQVANARANARO5uQ!fO'#GaO$2hQtO,5<SO$)nQdO'#FmOOQS,5<W,5<WOOQS'#Fd'#FdO$3YQdO,5;|O$3_QdO,5;|OOQS'#Fg'#FgO$)nQdO'#G`O$4PQdO,5<QO$4kQdO,5>tO$4{QdO,5>tO1XQdO,5<PO$5^QdO,5<TO$5cQdO,5<TO$)nQdO'#I[O$5hQdO'#I[O$5mQdO,5<UOOQS,5<V,5<VO0rQdO'#FpOOQU1G1e1G1eO4iQdO1G1eOOQSAN@pAN@pO$5rQdOG27wO$6SQdO,59}OOQS1G3d1G3dOOOO<<MX<<MXOOQS,5<{,5<{OOQS-E:_-E:_O$6XQtO'#FaO$6`QdO'#I]O$6nQdO'#I]O$6vQdO,5<XOOQS1G1h1G1hO$6{QdO1G1hO$7QQdO,5<zOOQS-E:^-E:^O$7lQdO,5=OO$8TQdO1G4`OOQS-E:b-E:bOOQS1G1k1G1kOOQS1G1o1G1oO$8eQdO,5>vO$)nQdO,5>vOOQS1G1p1G1pOOQS,5<[,5<[OOQU7+'P7+'PO$+zQdO1G/iO$)nQdO,5<YO$8sQdO,5>wO$8zQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)nQdO'#GdO$9SQdO1G4bO$9^QdO1G4bO$9fQdO1G4bOOQS7+%T7+%TO$9tQdO1G1tO$:SQtO'#FaO$:ZQdO,5<}OOQS,5<},5<}O$:iQdO1G4cOOQS-E:a-E:aO$)nQdO,5<|O$:pQdO,5<|O$:uQdO7+)|OOQS-E:`-E:`O$;PQdO7+)|O$)nQdO,5<ZP$)nQdO'#GcO$;XQdO1G2hO$)nQdO1G2hP$;gQdO'#GbO$;nQdO<<MhO$;xQdO1G1uO$<WQdO7+(SO8vQdO'#C}O8vQdO,59bO8vQdO,59bO8vQdO,59bO$<fQtO,5=`O8vQdO1G.|O0rQdO1G/XO0rQdO7+$pP$<yQdO'#GOO'vQdO'#GtO$=WQdO,59bO$=]QdO,59bO$=dQdO,59mO$=iQdO1G/UO1sQdO'#DRO8vQdO,59j",stateData:"$>S~O%cOS%^OSSOS%]PQ~OPdOVaOfoOhYOopOs!POvqO!PrO!Q{O!T!SO!U!RO!XZO!][O!h`O!r`O!s`O!t`O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#l!QO#o!TO#s!UO#u!VO#z!WO#}hO$P!XO%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~O%]!YO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%j![O%k!]O%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aO~Ok%xXl%xXm%xXn%xXo%xXp%xXs%xXz%xX{%xX!x%xX#g%xX%[%xX%_%xX%z%xXg%xX!T%xX!U%xX%{%xX!W%xX![%xX!Q%xX#[%xXt%xX!m%xX~P%SOfoOhYO!XZO!][O!h`O!r`O!s`O!t`O%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~Oz%wX{%wX#g%wX%[%wX%_%wX%z%wX~Ok!pOl!qOm!oOn!oOo!rOp!sOs!tO!x%wX~P)pOV!zOg!|Oo0cOv0qO!PrO~P'vOV#OOo0cOv0qO!W#PO~P'vOV#SOa#TOo0cOv0qO![#UO~P'vOQ#XO%`#XO%a#ZO~OQ#^OR#[O%`#^O%a#`O~OV%iX_%iXa%iXh%iXk%iXl%iXm%iXn%iXo%iXp%iXs%iXz%iX!X%iX!f%iX%j%iX%k%iX%l%iX%m%iX%n%iX%o%iX%p%iX%q%iX%r%iX%s%iXg%iX!T%iX!U%iX~O&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O{%iX!x%iX#g%iX%[%iX%_%iX%z%iX%{%iX!W%iX![%iX!Q%iX#[%iXt%iX!m%iX~P,eOz#dO{%hX!x%hX#g%hX%[%hX%_%hX%z%hX~Oo0cOv0qO~P'vO#g#gO%[#iO%_#iO~O%uWO~O!T#nO#u!VO#z!WO#}hO~OopO~P'vOV#sOa#tO%uWO{wP~OV#xOo0cOv0qO!Q#yO~P'vO{#{O!x$QO%z#|O#g!yX%[!yX%_!yX~OV#xOo0cOv0qO#g#SX%[#SX%_#SX~P'vOo0cOv0qO#g#WX%[#WX%_#WX~P'vOh$WO%uWO~O!f$YO!r$YO%uWO~OV$eO~P'vO!U$gO#s$hO#u$iO~O{$jO~OV$qO~P'vOS$sO%[$rO%_$rO%c$tO~OV$}Oa$}Og%POo0cOv0qO~P'vOo0cOv0qO{%SO~P'vO&Y%UO~Oa!bOh!iO!X!kO!f!mOVba_bakbalbambanbaobapbasbazba{ba!xba#gba%[ba%_ba%jba%kba%lba%mba%nba%oba%pba%qba%rba%sba%zbagba!Tba!Uba%{ba!Wba![ba!Qba#[batba!mba~On%ZO~Oo%ZO~P'vOo0cO~P'vOk0eOl0fOm0dOn0dOo0mOp0nOs0rOg%wX!T%wX!U%wX%{%wX!W%wX![%wX!Q%wX#[%wX!m%wX~P)pO%{%]Og%vXz%vX!T%vX!U%vX!W%vX{%vX~Og%_Oz%`O!T%dO!U%cO~Og%_O~Oz%gO!T%dO!U%cO!W&SX~O!W%kO~Oz%lO{%nO!T%dO!U%cO![%}X~O![%rO~O![%sO~OQ#XO%`#XO%a%uO~OV%wOo0cOv0qO!PrO~P'vOQ#^OR#[O%`#^O%a%zO~OV!qa_!qaa!qah!qak!qal!qam!qan!qao!qap!qas!qaz!qa{!qa!X!qa!f!qa!x!qa#g!qa%[!qa%_!qa%j!qa%k!qa%l!qa%m!qa%n!qa%o!qa%p!qa%q!qa%r!qa%s!qa%z!qag!qa!T!qa!U!qa%{!qa!W!qa![!qa!Q!qa#[!qat!qa!m!qa~P#yOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P%SOV&OOopOvqO{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P'vOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#g$zX%[$zX%_$zX~P'vO#g#gO%[&TO%_&TO~O!f&UOh&sX%[&sXz&sX#[&sX#g&sX%_&sX#Z&sXg&sX~Oh!iO%[&WO~Okealeameaneaoeapeaseazea{ea!xea#gea%[ea%_ea%zeagea!Tea!Uea%{ea!Wea![ea!Qea#[eatea!mea~P%SOsqazqa{qa#gqa%[qa%_qa%zqa~Ok!pOl!qOm!oOn!oOo!rOp!sO!xqa~PEcO%z&YOz%yX{%yX~O%uWOz%yX{%yX~Oz&]O{wX~O{&_O~Oz%lO#g%}X%[%}X%_%}Xg%}X{%}X![%}X!m%}X%z%}X~OV0lOo0cOv0qO!PrO~P'vO%z#|O#gUa%[Ua%_Ua~Oz&hO#g&PX%[&PX%_&PXn&PX~P%SOz&kO!Q&jO#g#Wa%[#Wa%_#Wa~Oz&lO#[&nO#g&rX%[&rX%_&rXg&rX~O!f$YO!r$YO#Z&qO%uWO~O#Z&qO~Oz&sO#g&tX%[&tX%_&tX~Oz&uO#g&pX%[&pX%_&pX{&pX~O!X&wO%z&xO~Oz&|On&wX~P%SOn'PO~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO%['UO~P'vOt'YO#p'WO#q'XOP#naV#naf#nah#nao#nas#nav#na!P#na!Q#na!T#na!U#na!X#na!]#na!h#na!r#na!s#na!t#na!{#na!}#na#P#na#R#na#T#na#X#na#Z#na#^#na#_#na#a#na#c#na#l#na#o#na#s#na#u#na#z#na#}#na$P#na%X#na%o#na%p#na%t#na%u#na&Z#na&[#na&]#na&^#na&_#na&`#na&a#na&b#na&c#na&d#na&e#na&f#na&g#na&h#na&i#na&j#na%Z#na%_#na~Oz'ZO#[']O{&xX~Oh'_O!X&wO~Oh!iO{$jO!X&wO~O{'eO~P%SO%['hO%_'hO~OS'iO%['hO%_'hO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%k!]O~P!#uO%kWi~P!#uOV!aO_!aOa!bOh!iO!X!kO!f!mO%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%m!_O%n!_O~P!&pO%mWi%nWi~P!&pOa!bOh!iO!X!kO!f!mOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%mWi%nWi%oWi%pWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~OV!aO_!aO%q!aO%r!aO%s!aO~P!)nOVWi_Wi%qWi%rWi%sWi~P!)nO!T%dO!U%cOg&VXz&VX~O%z'kO%{'kO~P,eOz'mOg&UX~Og'oO~Oz'pO{'rO!W&XX~Oo0cOv0qOz'pO{'sO!W&XX~P'vO!W'uO~Om!oOn!oOo!rOp!sOkjisjizji{ji!xji#gji%[ji%_ji%zji~Ol!qO~P!.aOlji~P!.aOk0eOl0fOm0dOn0dOo0mOp0nO~Ot'wO~P!/jOV'|Og'}Oo0cOv0qO~P'vOg'}Oz(OO~Og(QO~O!U(SO~Og(TOz(OO!T%dO!U%cO~P%SOk0eOl0fOm0dOn0dOo0mOp0nOgqa!Tqa!Uqa%{qa!Wqa![qa!Qqa#[qatqa!mqa~PEcOV'|Oo0cOv0qO!W&Sa~P'vOz(WO!W&Sa~O!W(XO~Oz(WO!T%dO!U%cO!W&Sa~P%SOV(]Oo0cOv0qO![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~P'vOz(^O![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~O![(aO~Oz(^O!T%dO!U%cO![%}a~P%SOz(dO!T%dO!U%cO![&Ta~P%SOz(gO{&lX![&lX!m&lX%z&lX~O{(kO![(mO!m(nO%z(jO~OV&OOopOvqO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~P'vOz(pO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~O!f&UOh&sa%[&saz&sa#[&sa#g&sa%_&sa#Z&sag&sa~O%[(uO~OV#sOa#tO%uWO~Oz&]O{wa~OopOvqO~P'vOz(^O#g%}a%[%}a%_%}ag%}a{%}a![%}a!m%}a%z%}a~P%SOz(zO#g%hX%[%hX%_%hX%z%hX~O%z#|O#gUi%[Ui%_Ui~O#g&Pa%[&Pa%_&Pan&Pa~P'vOz(}O#g&Pa%[&Pa%_&Pan&Pa~O%uWO#g&ra%[&ra%_&rag&ra~Oz)SO#g&ra%[&ra%_&rag&ra~Og)VO~OV)WOh$WO%uWO~O#Z)XO~O%uWO#g&ta%[&ta%_&ta~Oz)ZO#g&ta%[&ta%_&ta~Oo0cOv0qO#g&pa%[&pa%_&pa{&pa~P'vOz)^O#g&pa%[&pa%_&pa{&pa~OV)`Oa)`O%uWO~O%z)eO~Ot)hO#j)gOP#hiV#hif#hih#hio#his#hiv#hi!P#hi!Q#hi!T#hi!U#hi!X#hi!]#hi!h#hi!r#hi!s#hi!t#hi!{#hi!}#hi#P#hi#R#hi#T#hi#X#hi#Z#hi#^#hi#_#hi#a#hi#c#hi#l#hi#o#hi#s#hi#u#hi#z#hi#}#hi$P#hi%X#hi%o#hi%p#hi%t#hi%u#hi&Z#hi&[#hi&]#hi&^#hi&_#hi&`#hi&a#hi&b#hi&c#hi&d#hi&e#hi&f#hi&g#hi&h#hi&i#hi&j#hi%Z#hi%_#hi~Ot)iOP#kiV#kif#kih#kio#kis#kiv#ki!P#ki!Q#ki!T#ki!U#ki!X#ki!]#ki!h#ki!r#ki!s#ki!t#ki!{#ki!}#ki#P#ki#R#ki#T#ki#X#ki#Z#ki#^#ki#_#ki#a#ki#c#ki#l#ki#o#ki#s#ki#u#ki#z#ki#}#ki$P#ki%X#ki%o#ki%p#ki%t#ki%u#ki&Z#ki&[#ki&]#ki&^#ki&_#ki&`#ki&a#ki&b#ki&c#ki&d#ki&e#ki&f#ki&g#ki&h#ki&i#ki&j#ki%Z#ki%_#ki~OV)kOn&wa~P'vOz)lOn&wa~Oz)lOn&wa~P%SOn)pO~O%Y)tO~Ot)wO#p'WO#q)vOP#niV#nif#nih#nio#nis#niv#ni!P#ni!Q#ni!T#ni!U#ni!X#ni!]#ni!h#ni!r#ni!s#ni!t#ni!{#ni!}#ni#P#ni#R#ni#T#ni#X#ni#Z#ni#^#ni#_#ni#a#ni#c#ni#l#ni#o#ni#s#ni#u#ni#z#ni#}#ni$P#ni%X#ni%o#ni%p#ni%t#ni%u#ni&Z#ni&[#ni&]#ni&^#ni&_#ni&`#ni&a#ni&b#ni&c#ni&d#ni&e#ni&f#ni&g#ni&h#ni&i#ni&j#ni%Z#ni%_#ni~OV)zOo0cOv0qO{$jO~P'vOo0cOv0qO{&xa~P'vOz*OO{&xa~OV*SOa*TOg*WO%q*UO%uWO~O{$jO&{*YO~Oh'_O~Oh!iO{$jO~O%[*_O~O%[*aO%_*aO~OV$}Oa$}Oo0cOv0qOg&Ua~P'vOz*dOg&Ua~Oo0cOv0qO{*gO!W&Xa~P'vOz*hO!W&Xa~Oo0cOv0qOz*hO{*kO!W&Xa~P'vOo0cOv0qOz*hO!W&Xa~P'vOz*hO{*kO!W&Xa~Om0dOn0dOo0mOp0nOgjikjisjizji!Tji!Uji%{ji!Wji{ji![ji#gji%[ji%_ji!Qji#[jitji!mji%zji~Ol0fO~P!NkOlji~P!NkOV'|Og*pOo0cOv0qO~P'vOn*rO~Og*pOz*tO~Og*uO~OV'|Oo0cOv0qO!W&Si~P'vOz*vO!W&Si~O!W*wO~OV(]Oo0cOv0qO![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~P'vOz*zO!T%dO!U%cO![&Ti~Oz*}O![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~O![+OO~Oa+QOo0cOv0qO![&Ti~P'vOz*zO![&Ti~O![+SO~OV+UOo0cOv0qO{&la![&la!m&la%z&la~P'vOz+VO{&la![&la!m&la%z&la~O!]+YO&n+[O![!nX~O![+^O~O{(kO![+_O~O{(kO![+_O!m+`O~OV&OOopOvqO{%hq!x%hq#g%hq%[%hq%_%hq%z%hq~P'vOz$ri{$ri!x$ri#g$ri%[$ri%_$ri%z$ri~P%SOV&OOopOvqO~P'vOV&OOo0cOv0qO#g%ha%[%ha%_%ha%z%ha~P'vOz+aO#g%ha%[%ha%_%ha%z%ha~Oz$ia#g$ia%[$ia%_$ian$ia~P%SO#g&Pi%[&Pi%_&Pin&Pi~P'vOz+dO#g#Wq%[#Wq%_#Wq~O#[+eOz$va#g$va%[$va%_$vag$va~O%uWO#g&ri%[&ri%_&rig&ri~Oz+gO#g&ri%[&ri%_&rig&ri~OV+iOh$WO%uWO~O%uWO#g&ti%[&ti%_&ti~Oo0cOv0qO#g&pi%[&pi%_&pi{&pi~P'vO{#{Oz#eX!W#eX~Oz+mO!W&uX~O!W+oO~Ot+rO#j)gOP#hqV#hqf#hqh#hqo#hqs#hqv#hq!P#hq!Q#hq!T#hq!U#hq!X#hq!]#hq!h#hq!r#hq!s#hq!t#hq!{#hq!}#hq#P#hq#R#hq#T#hq#X#hq#Z#hq#^#hq#_#hq#a#hq#c#hq#l#hq#o#hq#s#hq#u#hq#z#hq#}#hq$P#hq%X#hq%o#hq%p#hq%t#hq%u#hq&Z#hq&[#hq&]#hq&^#hq&_#hq&`#hq&a#hq&b#hq&c#hq&d#hq&e#hq&f#hq&g#hq&h#hq&i#hq&j#hq%Z#hq%_#hq~On$|az$|a~P%SOV)kOn&wi~P'vOz+yOn&wi~Oz,TO{$jO#[,TO~O#q,VOP#nqV#nqf#nqh#nqo#nqs#nqv#nq!P#nq!Q#nq!T#nq!U#nq!X#nq!]#nq!h#nq!r#nq!s#nq!t#nq!{#nq!}#nq#P#nq#R#nq#T#nq#X#nq#Z#nq#^#nq#_#nq#a#nq#c#nq#l#nq#o#nq#s#nq#u#nq#z#nq#}#nq$P#nq%X#nq%o#nq%p#nq%t#nq%u#nq&Z#nq&[#nq&]#nq&^#nq&_#nq&`#nq&a#nq&b#nq&c#nq&d#nq&e#nq&f#nq&g#nq&h#nq&i#nq&j#nq%Z#nq%_#nq~O#[,WOz%Oa{%Oa~Oo0cOv0qO{&xi~P'vOz,YO{&xi~O{#{O%z,[Og&zXz&zX~O%uWOg&zXz&zX~Oz,`Og&yX~Og,bO~O%Y,eO~O!T%dO!U%cOg&Viz&Vi~OV$}Oa$}Oo0cOv0qOg&Ui~P'vO{,hOz$la!W$la~Oo0cOv0qO{,iOz$la!W$la~P'vOo0cOv0qO{*gO!W&Xi~P'vOz,lO!W&Xi~Oo0cOv0qOz,lO!W&Xi~P'vOz,lO{,oO!W&Xi~Og$hiz$hi!W$hi~P%SOV'|Oo0cOv0qO~P'vOn,qO~OV'|Og,rOo0cOv0qO~P'vOV'|Oo0cOv0qO!W&Sq~P'vOz$gi![$gi#g$gi%[$gi%_$gig$gi{$gi!m$gi%z$gi~P%SOV(]Oo0cOv0qO~P'vOa+QOo0cOv0qO![&Tq~P'vOz,sO![&Tq~O![,tO~OV(]Oo0cOv0qO![%}q#g%}q%[%}q%_%}qg%}q{%}q!m%}q%z%}q~P'vO{,uO~OV+UOo0cOv0qO{&li![&li!m&li%z&li~P'vOz,zO{&li![&li!m&li%z&li~O!]+YO&n+[O![!na~O{(kO![,}O~OV&OOo0cOv0qO#g%hi%[%hi%_%hi%z%hi~P'vOz-OO#g%hi%[%hi%_%hi%z%hi~O%uWO#g&rq%[&rq%_&rqg&rq~Oz-RO#g&rq%[&rq%_&rqg&rq~OV)`Oa)`O%uWO!W&ua~Oz-TO!W&ua~On$|iz$|i~P%SOV)kO~P'vOV)kOn&wq~P'vOt-XOP#myV#myf#myh#myo#mys#myv#my!P#my!Q#my!T#my!U#my!X#my!]#my!h#my!r#my!s#my!t#my!{#my!}#my#P#my#R#my#T#my#X#my#Z#my#^#my#_#my#a#my#c#my#l#my#o#my#s#my#u#my#z#my#}#my$P#my%X#my%o#my%p#my%t#my%u#my&Z#my&[#my&]#my&^#my&_#my&`#my&a#my&b#my&c#my&d#my&e#my&f#my&g#my&h#my&i#my&j#my%Z#my%_#my~O%Z-]O%_-]O~P`O#q-^OP#nyV#nyf#nyh#nyo#nys#nyv#ny!P#ny!Q#ny!T#ny!U#ny!X#ny!]#ny!h#ny!r#ny!s#ny!t#ny!{#ny!}#ny#P#ny#R#ny#T#ny#X#ny#Z#ny#^#ny#_#ny#a#ny#c#ny#l#ny#o#ny#s#ny#u#ny#z#ny#}#ny$P#ny%X#ny%o#ny%p#ny%t#ny%u#ny&Z#ny&[#ny&]#ny&^#ny&_#ny&`#ny&a#ny&b#ny&c#ny&d#ny&e#ny&f#ny&g#ny&h#ny&i#ny&j#ny%Z#ny%_#ny~Oz-aO{$jO#[-aO~Oo0cOv0qO{&xq~P'vOz-dO{&xq~O%z,[Og&zaz&za~O{#{Og&zaz&za~OV*SOa*TO%q*UO%uWOg&ya~Oz-hOg&ya~O$S-lO~OV$}Oa$}Oo0cOv0qO~P'vOo0cOv0qO{-mOz$li!W$li~P'vOo0cOv0qOz$li!W$li~P'vO{-mOz$li!W$li~Oo0cOv0qO{*gO~P'vOo0cOv0qO{*gO!W&Xq~P'vOz-pO!W&Xq~Oo0cOv0qOz-pO!W&Xq~P'vOs-sO!T%dO!U%cOg&Oq!W&Oq![&Oqz&Oq~P!/jOa+QOo0cOv0qO![&Ty~P'vOz$ji![$ji~P%SOa+QOo0cOv0qO~P'vOV+UOo0cOv0qO~P'vOV+UOo0cOv0qO{&lq![&lq!m&lq%z&lq~P'vO{(kO![-xO!m-yO%z-wO~OV&OOo0cOv0qO#g%hq%[%hq%_%hq%z%hq~P'vO%uWO#g&ry%[&ry%_&ryg&ry~OV)`Oa)`O%uWO!W&ui~Ot-}OP#m!RV#m!Rf#m!Rh#m!Ro#m!Rs#m!Rv#m!R!P#m!R!Q#m!R!T#m!R!U#m!R!X#m!R!]#m!R!h#m!R!r#m!R!s#m!R!t#m!R!{#m!R!}#m!R#P#m!R#R#m!R#T#m!R#X#m!R#Z#m!R#^#m!R#_#m!R#a#m!R#c#m!R#l#m!R#o#m!R#s#m!R#u#m!R#z#m!R#}#m!R$P#m!R%X#m!R%o#m!R%p#m!R%t#m!R%u#m!R&Z#m!R&[#m!R&]#m!R&^#m!R&_#m!R&`#m!R&a#m!R&b#m!R&c#m!R&d#m!R&e#m!R&f#m!R&g#m!R&h#m!R&i#m!R&j#m!R%Z#m!R%_#m!R~Oo0cOv0qO{&xy~P'vOV*SOa*TO%q*UO%uWOg&yi~O$S-lO%Z.VO%_.VO~OV.aOh._O!X.^O!].`O!h.YO!s.[O!t.[O%p.XO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O~Oo0cOv0qOz$lq!W$lq~P'vO{.fOz$lq!W$lq~Oo0cOv0qO{*gO!W&Xy~P'vOz.gO!W&Xy~Oo0cOv.kO~P'vOs-sO!T%dO!U%cOg&Oy!W&Oy![&Oyz&Oy~P!/jO{(kO![.nO~O{(kO![.nO!m.oO~OV*SOa*TO%q*UO%uWO~Oh.tO!f.rOz$TX#[$TX%j$TXg$TX~Os$TX{$TX!W$TX![$TX~P$-bO%o.vO%p.vOs$UXz$UX{$UX#[$UX%j$UX!W$UXg$UX![$UX~O!h.xO~Oz.|O#[/OO%j.yOs&|X{&|X!W&|Xg&|X~Oa/RO~P$)zOh.tOs&}Xz&}X{&}X#[&}X%j&}X!W&}Xg&}X![&}X~Os/VO{$jO~Oo0cOv0qOz$ly!W$ly~P'vOo0cOv0qO{*gO!W&X!R~P'vOz/ZO!W&X!R~Og&RXs&RX!T&RX!U&RX!W&RX![&RXz&RX~P!/jOs-sO!T%dO!U%cOg&Qa!W&Qa![&Qaz&Qa~O{(kO![/^O~O!f.rOh$[as$[az$[a{$[a#[$[a%j$[a!W$[ag$[a![$[a~O!h/eO~O%o.vO%p.vOs$Uaz$Ua{$Ua#[$Ua%j$Ua!W$Uag$Ua![$Ua~O%j.yOs$Yaz$Ya{$Ya#[$Ya!W$Yag$Ya![$Ya~Os&|a{&|a!W&|ag&|a~P$)nOz/jOs&|a{&|a!W&|ag&|a~O!W/mO~Og/mO~O{/oO~O![/pO~Oo0cOv0qO{*gO!W&X!Z~P'vO{/sO~O%z/tO~P$-bOz/uO#[/OO%j.yOg'PX~Oz/uOg'PX~Og/wO~O!h/xO~O#[/OOs%Saz%Sa{%Sa%j%Sa!W%Sag%Sa![%Sa~O#[/OO%j.yOs%Waz%Wa{%Wa!W%Wag%Wa~Os&|i{&|i!W&|ig&|i~P$)nOz/zO#[/OO%j.yO!['Oa~Og'Pa~P$)nOz0SOg'Pa~Oa0UO!['Oi~P$)zOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-bO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)nO{0^O~Oa0UO!['Oq~P$)zOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)zOa0UO!['Oy~P$)zO#[/OO%j.yOg$ciz$ci~O#[/OO%j.yOz%Uq![%Uq~Oz+aO#g%ha%[%ha%_%ha%z%ha~P%SOV&OOo0cOv0qO~P'vOn0hO~Oo0hO~P'vO{0iO~Ot0jO~P!/jO&]&Z&j&h&i&g&f&d&e&c&b&`&a&_&^&[%u~",goto:"!=j'QPPPPPP'RP'Z*s+[+t,_,y-fP.SP'Z.r.r'ZPPP'Z2[PPPPPP2[5PPP5PP7b7k=sPP=v>h>kPP'Z'ZPP>zPP'Z'ZPP'Z'Z'Z'Z'Z?O?w'ZP?zP@QDXGuGyPG|HWH['ZPPPH_Hk'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHqH}IVPI^IdPI^PI^I^PPPI^PKrPK{LVL]KrPI^LfPI^PLmLsPLwM]MzNeLwLwNkNxLwLwLwLw! ^! d! g! l! o! y!!P!!]!!o!!u!#P!#V!#s!#y!$P!$Z!$a!$g!$y!%T!%Z!%a!%k!%q!%w!%}!&T!&Z!&e!&k!&u!&{!'U!'[!'k!'s!'}!(UPPPPPPPPPPP!([!(_!(e!(n!(x!)TPPPPPPPPPPPP!-u!/Z!3^!6oPP!6w!7W!7a!8Y!8P!8c!8i!8l!8o!8r!8z!9jPPPPPPPPPPPPPPPPP!9m!9q!9wP!:]!:a!:m!:v!;S!;j!;m!;p!;v!;|!<S!<VP!<_!<h!=d!=g]eOn#g$j)t,P'}`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r{!cQ#c#p$R$d$p%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g}!dQ#c#p$R$d$p$u%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!P!eQ#c#p$R$d$p$u$v%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!R!fQ#c#p$R$d$p$u$v$w%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!T!gQ#c#p$R$d$p$u$v$w$x%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!V!hQ#c#p$R$d$p$u$v$w$x$y%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!Z!hQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g'}TOTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r&eVOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0r%oXOYZ[dnrxy}!P!Q!U!i!k#[#d#g#y#{#}$Q$h$j$}%S%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#vqQ/[.kR0o0q't`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rh#jhz{$W$Z&l&q)S)X+f+g-RW#rq&].k0qQ$]|Q$a!OQ$n!VQ$o!WW$|!i'm*d,gS&[#s#tQ'S$iQ(s&UQ)U&nU)Y&s)Z+jW)a&w+m-T-{Q*Q']W*R'_,`-h.TQ+l)`S,_*S*TQ-Q+eQ-_,TQ-c,WQ.R-al.W-l.^._.a.z.|/R/j/o/t/y0U0Z0^Q/S.`Q/a.tQ/l/OU0P/u0S0[X0V/z0W0_0`R&Z#r!_!wYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZR%^!vQ!{YQ%x#[Q&d#}Q&g$QR,{+YT.j-s/s!Y!jQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gQ&X#kQ'c$oR*^'dR'l$|Q%V!mR/_.r'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rS#a_#b!P.[-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rT#a_#bT#^^#_R(o%xa(l%x(n(o+`,{-y-z.oT+[(k+]R-z,{Q$PsQ+l)aQ,^*RR-e,_X#}s$O$P&fQ&y$aQ'a$nQ'd$oR)s'SQ)b&wV-S+m-T-{ZgOn$j)t,PXkOn)t,PQ$k!TQ&z$bQ&{$cQ'^$mQ'b$oQ)q'RQ)x'WQ){'XQ)|'YQ*Z'`S*]'c'dQ+s)gQ+u)hQ+v)iQ+z)oS+|)r*[Q,Q)vQ,R)wS,S)y)zQ,d*^Q-V+rQ-W+tQ-Y+{S-Z+},OQ-`,UQ-b,VQ-|-XQ.O-[Q.P-^Q.Q-_Q.p-}Q.q.RQ/W.dR/r/XWkOn)t,PR#mjQ'`$nS)r'S'aR,O)sQ,]*RR-f,^Q*['`Q+})rR-[,OZiOjn)t,PQ'f$pR*`'gT-j,e-ku.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^t.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^Q/S.`X0V/z0W0_0`!P.Z-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`Q.w.YR/f.xg.z.].{/b/i/n/|0O0Q0]0a0bu.b-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^X.u.W.b/a0PR/c.tV0R/u0S0[R/X.dQnOS#on,PR,P)tQ&^#uR(x&^S%m#R#wS(_%m(bT(b%p&`Q%a!yQ%h!}W(P%a%h(U(YQ(U%eR(Y%jQ&i$RR)O&iQ(e%qQ*{(`T+R(e*{Q'n%OR*e'nS'q%R%SY*i'q*j,m-q.hU*j'r's'tU,m*k*l*mS-q,n,oR.h-rQ#Y]R%t#YQ#_^R%y#_Q(h%vS+W(h+XR+X(iQ+](kR,|+]Q#b_R%{#bQ#ebQ%}#cW&Q#e%}({+bQ({&cR+b0gQ$OsS&e$O&fR&f$PQ&v$_R)_&vQ&V#jR(t&VQ&m$VS)T&m+hR+h)UQ$Z{R&p$ZQ&t$]R)[&tQ+n)bR-U+nQ#hfR&S#hQ)f&zR+q)fQ&}$dS)m&})nR)n'OQ'V$kR)u'VQ'[$lS*P'[,ZR,Z*QQ,a*VR-i,aWjOn)t,PR#ljQ-k,eR.U-kd.{.]/b/i/n/|0O0Q0]0a0bR/h.{U.s.W/a0PR/`.sQ/{/nS0X/{0YR0Y/|S/v/b/cR0T/vQ.}.]R/k.}R!ZPXmOn)t,PWlOn)t,PR'T$jYfOn$j)t,PR&R#g[sOn#g$j)t,PR&d#}&dQOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0rQ!nTQ#caQ#poU$Rt%c(SS$d!R$gQ$p!XQ$u!cQ$v!dQ$w!eQ$x!fQ$y!gQ$z!hQ%e!zQ%j#OQ%p#SQ%q#TQ&`#xQ'O$eQ'g$qQ(q&OU(|&h(}+cW)j&|)l+x+yQ*o'|Q*x(]Q+w)kQ,v+QR0g0lQ!yYQ!}ZQ$b!PQ$c!QQ%R!kQ't%S^'{%`%g(O(W*q*t*v^*f'p*h,k,l-p.g/ZQ*l'rQ*m'sQ+t)gQ,j*gQ,n*kQ-n,hQ-o,iQ-r,oQ.e-mR/Y.f[bOn#g$j)t,P!^!vYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZQ#R[Q#fdS#wrxQ$UyW$_}$Q'P)pS$l!U$hW${!i'm*d,gS%v#[+Y`&P#d%|(p(r(z+a-O0kQ&a#yQ&b#{Q&c#}Q'j$}Q'z%^W([%l(^*y*}Q(`%nQ(i%wQ(v&ZS(y&_0iQ)P&jQ)Q&kU)]&u)^+kQ)d&xQ)y'WY)}'Z*O,X,Y-dQ*b'lS*n'w0jW+P(d*z,s,wW+T(g+V,y,zQ+p)eQ,U)zQ,c*YQ,x+UQ-P+dQ-e,]Q-v,uQ.S-fR/q/VhUOn#d#g$j%|&_'w(p(r)t,P%U!uYZ[drxy}!P!Q!U!i!k#[#y#{#}$Q$h$}%S%^%`%g%l%n%w&Z&j&k&u&x'P'W'Z'l'm'p'r's(O(W(^(d(g(z)^)e)g)p)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#qpW%W!o!s0d0nQ%X!pQ%Y!qQ%[!tQ%f0cS'v%Z0hQ'x0eQ'y0fQ,p*rQ-u,qS.i-s/sR0p0rU#uq.k0qR(w&][cOn#g$j)t,PZ!xY#[#}$Q+YQ#W[Q#zrR$TxQ%b!yQ%i!}Q%o#RQ'j${Q(V%eQ(Z%jQ(c%pQ(f%qQ*|(`Q,f*bQ-t,pQ.m-uR/].lQ$StQ(R%cR*s(SQ.l-sR/}/sR#QZR#V[R%Q!iQ%O!iV*c'm*d,g!Z!lQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gR%T!kT#]^#_Q%x#[R,{+YQ(m%xS+_(n(oQ,}+`Q-x,{S.n-y-zR/^.oT+Z(k+]Q$`}Q&g$QQ)o'PR+{)pQ$XzQ)W&qR+i)XQ$XzQ&o$WQ)W&qR+i)XQ#khW$Vz$W&q)XQ$[{Q&r$ZZ)R&l)S+f+g-RR$^|R)c&wXlOn)t,PQ$f!RR'Q$gQ$m!UR'R$hR*X'_Q*V'_V-g,`-h.TQ.d-lQ/P.^R/Q._U.]-l.^._Q/U.aQ/b.tQ/g.zU/i.|/j/yQ/n/RQ/|/oQ0O/tU0Q/u0S0[Q0]0UQ0a0ZR0b0^R/T.`R/d.t",nodeNames:`⚠ print Escape { Comment Script AssignStatement * BinaryExpression BitOp BitOp BitOp BitOp ArithOp ArithOp @ ArithOp ** UnaryExpression ArithOp BitOp AwaitExpression await ) ( ParenthesizedExpression BinaryExpression or and CompareOp in not is UnaryExpression ConditionalExpression if else LambdaExpression lambda ParamList VariableName AssignOp , : NamedExpression AssignOp YieldExpression yield from TupleExpression ComprehensionExpression async for LambdaExpression ] [ ArrayExpression ArrayComprehensionExpression } { DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression CallExpression ArgList AssignOp MemberExpression . PropertyName Number String FormatString FormatReplacement FormatSelfDoc FormatConversion FormatSpec FormatReplacement FormatSelfDoc ContinuedString Ellipsis None Boolean TypeDef AssignOp UpdateStatement UpdateOp ExpressionStatement DeleteStatement del PassStatement pass BreakStatement break ContinueStatement continue ReturnStatement return YieldStatement PrintStatement RaiseStatement raise ImportStatement import as ScopeStatement global nonlocal AssertStatement assert TypeDefinition type TypeParamList TypeParam StatementGroup ; IfStatement Body elif WhileStatement while ForStatement TryStatement try except finally WithStatement with FunctionDefinition def ParamList AssignOp TypeDef ClassDefinition class DecoratedStatement Decorator At MatchStatement match MatchBody MatchClause case CapturePattern LiteralPattern ArithOp ArithOp AsPattern OrPattern LogicOp AttributePattern SequencePattern MappingPattern StarPattern ClassPattern PatternArgList KeywordPattern KeywordPattern Guard`,maxTerm:277,context:sU,nodeProps:[[`isolate`,-5,4,71,72,73,77,``],[`group`,-15,6,85,87,88,90,92,94,96,98,99,100,102,105,108,110,`Statement Statement`,-22,8,18,21,25,40,49,50,56,57,60,61,62,63,64,67,70,71,72,79,80,81,82,`Expression`,-10,114,116,119,121,122,126,128,133,135,138,`Statement`,-9,143,144,147,148,150,151,152,153,154,`Pattern`],[`openedBy`,23,`(`,54,`[`,58,`{`],[`closedBy`,24,`)`,55,`]`,59,`}`]],propSources:[dU],skippedNodes:[0,4],repeatNodeCount:34,tokenData:"!2|~R!`OX%TXY%oY[%T[]%o]p%Tpq%oqr'ars)Yst*xtu%Tuv,dvw-hwx.Uxy/tyz0[z{0r{|2S|}2p}!O3W!O!P4_!P!Q:Z!Q!R;k!R![>_![!]Do!]!^Es!^!_FZ!_!`Gk!`!aHX!a!b%T!b!cIf!c!dJU!d!eK^!e!hJU!h!i!#f!i!tJU!t!u!,|!u!wJU!w!x!.t!x!}JU!}#O!0S#O#P&o#P#Q!0j#Q#R!1Q#R#SJU#S#T%T#T#UJU#U#VK^#V#YJU#Y#Z!#f#Z#fJU#f#g!,|#g#iJU#i#j!.t#j#oJU#o#p!1n#p#q!1s#q#r!2a#r#s!2f#s$g%T$g;'SJU;'S;=`KW<%lOJU`%YT&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T`%lP;=`<%l%To%v]&n`%c_OX%TXY%oY[%T[]%o]p%Tpq%oq#O%T#O#P&o#P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To&tX&n`OY%TYZ%oZ]%T]^%o^#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc'f[&n`O!_%T!_!`([!`#T%T#T#U(r#U#f%T#f#g(r#g#h(r#h#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(cTmR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(yT!mR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk)aV&n`&[ZOr%Trs)vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk){V&n`Or%Trs*bs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk*iT&n`&^ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To+PZS_&n`OY*xYZ%TZ]*x]^%T^#o*x#o#p+r#p#q*x#q#r+r#r;'S*x;'S;=`,^<%lO*x_+wTS_OY+rZ]+r^;'S+r;'S;=`,W<%lO+r_,ZP;=`<%l+ro,aP;=`<%l*xj,kV%rQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-XT!xY&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-oV%lQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.]V&n`&ZZOw%Twx.rx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.wV&n`Ow%Twx/^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/eT&n`&]ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/{ThZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc0cTgR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk0yXVZ&n`Oz%Tz{1f{!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk1mVaR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk2ZV%oZ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc2wTzR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To3_W%pZ&n`O!_%T!_!`-Q!`!a3w!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Td4OT&{S&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk4fX!fQ&n`O!O%T!O!P5R!P!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5WV&n`O!O%T!O!P5m!P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5tT!rZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti6[a!hX&n`O!Q%T!Q![6T![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S6T#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti7fZ&n`O{%T{|8X|}%T}!O8X!O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8^V&n`O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8z]!hX&n`O!Q%T!Q![8s![!l%T!l!m9s!m#R%T#R#S8s#S#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti9zT!hX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk:bX%qR&n`O!P%T!P!Q:}!Q!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj;UV%sQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti;ro!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!d%T!d!e?q!e!g%T!g!h7a!h!l%T!l!m9s!m!q%T!q!rA]!r!z%T!z!{Bq!{#R%T#R#S>_#S#U%T#U#V?q#V#X%T#X#Y7a#Y#^%T#^#_9s#_#c%T#c#dA]#d#l%T#l#mBq#m#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti=xV&n`O!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti>fc!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S>_#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti?vY&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti@mY!hX&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiAbX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBUX!hX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBv]&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiCv]!hX&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToDvV{_&n`O!_%T!_!`E]!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TcEdT%{R&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkEzT#gZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkFbXmR&n`O!^%T!^!_F}!_!`([!`!a([!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjGUV%mQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkGrV%zZ&n`O!_%T!_!`([!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkH`WmR&n`O!_%T!_!`([!`!aHx!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjIPV%nQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkIoV_Q#}P&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToJ_]&n`&YS%uZO!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoKZP;=`<%lJUoKge&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!tJU!t!uLx!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#gLx#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoMRa&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUkN_V&n`&`ZOr%TrsNts#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkNyV&n`Or%Trs! `s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! gT&n`&bZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! }V&n`&_ZOw%Twx!!dx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!!iV&n`Ow%Twx!#Ox#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!#VT&n`&aZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!#oe&n`&YS%uZOr%Trs!%Qsw%Twx!&px!Q%T!Q![JU![!c%T!c!tJU!t!u!(`!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#g!(`#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!%XV&n`&dZOr%Trs!%ns#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!%sV&n`Or%Trs!&Ys#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&aT&n`&fZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&wV&n`&cZOw%Twx!'^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!'cV&n`Ow%Twx!'xx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!(PT&n`&eZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!(ia&n`&YS%uZOr%Trs!)nsw%Twx!+^x!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!)uV&n`&hZOr%Trs!*[s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*aV&n`Or%Trs!*vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*}T&n`&jZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!+eV&n`&gZOw%Twx!+zx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,PV&n`Ow%Twx!,fx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,mT&n`&iZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!-Vi&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!dJU!d!eLx!e!hJU!h!i!(`!i!}JU!}#R%T#R#SJU#S#T%T#T#UJU#U#VLx#V#YJU#Y#Z!(`#Z#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUo!.}a&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!0ZT!XZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc!0qT!WR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj!1XV%kQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!1sO!]~k!1zV%jR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!2fO![~i!2mT%tX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T",tokenizers:[cU,XH,YH,lU,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:e=>fU[e]||-1}],tokenPrec:7668}),mU=1,hU=2,gU=3,_U=4,vU=5,yU=36,bU=37,xU=38,SU=11,CU=13;function wU(e){return e==45||e==46||e==58||e>=65&&e<=90||e==95||e>=97&&e<=122||e>=161}function TU(e){return e==9||e==10||e==13||e==32}var EU=null,DU=null,OU=0;function kU(e,t){let n=e.pos+t;if(DU==e&&OU==n)return EU;for(;TU(e.peek(t));)t++;let r=``;for(;;){let n=e.peek(t);if(!wU(n))break;r+=String.fromCharCode(n),t++}return DU=e,OU=n,EU=r||null}function AU(e,t){this.name=e,this.parent=t}var jU=new zR({start:null,shift(e,t,n,r){return t==mU?new AU(kU(r,1)||``,e):e},reduce(e,t){return t==SU&&e?e.parent:e},reuse(e,t,n,r){let i=t.type.id;return i==mU||i==CU?new AU(kU(r,1)||``,e):e},strict:!1}),MU=new ER((e,t)=>{if(e.next==60){if(e.advance(),e.next==47){e.advance();let n=kU(e,0);if(!n)return e.acceptToken(vU);if(t.context&&n==t.context.name)return e.acceptToken(hU);for(let r=t.context;r;r=r.parent)if(r.name==n)return e.acceptToken(gU,-2);e.acceptToken(_U)}else if(e.next!=33&&e.next!=63)return e.acceptToken(mU)}},{contextual:!0});function NU(e,t){return new ER(n=>{let r=0,i=t.charCodeAt(0);scan:for(;!(n.next<0);n.advance(),r++)if(n.next==i){for(let e=1;e<t.length;e++)if(n.peek(e)!=t.charCodeAt(e))continue scan;break}r&&n.acceptToken(e)})}var PU=NU(yU,`-->`),FU=NU(bU,`?>`),IU=NU(xU,`]]>`),LU=tL({Text:Q.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":Q.angleBracket,TagName:Q.tagName,"MismatchedCloseTag/TagName":[Q.tagName,Q.invalid],AttributeName:Q.attributeName,AttributeValue:Q.attributeValue,Is:Q.definitionOperator,"EntityReference CharacterReference":Q.character,Comment:Q.blockComment,ProcessingInst:Q.processingInstruction,DoctypeDecl:Q.documentMeta,Cdata:Q.special(Q.string)}),RU=BR.deserialize({version:14,states:",lOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DT'#DTOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C|'#C|O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C}'#C}O$dOrO,59^OOOP,59^,59^OOOS'#DO'#DOO$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6z-E6zOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6{-E6{OOOP1G.x1G.xOOOS-E6|-E6|OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'mO!bO,59eOOOO-E6w-E6wO'{OpO1G.uO'{OpO1G.uOOOP1G.u1G.uO(TOpO7+$fOOOP7+$f7+$fO(]O!bO<<GuOOOP<<Gu<<GuOOOP<<G}<<G}O'bOpO1G.qO'bOpO1G.qO(hO#tO'#CnO(vO&jO'#CnOOOO1G.q1G.qO)UOpO7+$aOOOP7+$a7+$aOOOP<<HQ<<HQOOOPAN=aAN=aOOOPAN=iAN=iO'bOpO7+$]OOOO7+$]7+$]OOOO'#Cz'#CzO)^O#tO,59YOOOO,59Y,59YOOOO'#C{'#C{O)lO&jO,59YOOOP<<G{<<G{OOOO<<Gw<<GwOOOO-E6x-E6xOOOO1G.t1G.tOOOO-E6y-E6y",stateData:")z~OPQOSVOTWOVWOWWOXWOiXOyPO!QTO!SUO~OvZOx]O~O^`Oz^O~OPQOQcOSVOTWOVWOWWOXWOyPO!QTO!SUO~ORdO~P!SOteO!PgO~OuhO!RjO~O^lOz^O~OvZOxoO~O^qOz^O~O[vO`sOdwOz^O~ORyO~P!SO^{Oz^O~OteO!P}O~OuhO!R!PO~O^!QOz^O~O[!SOz^O~O[!VO`sOd!WOz^O~Oa!YOz^O~Oz^O[mX`mXdmX~O[!VO`sOd!WO~O^!]Oz^O~O[!_Oz^O~O[!aOz^O~O[!cO`sOd!dOz^O~O[!cO`sOd!dO~Oa!eOz^O~Oz^O{!gO}!hO~Oz^O[ma`madma~O[!kOz^O~O[!lOz^O~O[!mO`sOd!nO~OW!qOX!qO{!sO|!qO~OW!tOX!tO}!sO!O!tO~O[!vOz^O~OW!qOX!qO{!yO|!qO~OW!tOX!tO}!yO!O!tO~O",goto:"%cxPPPPPPPPPPyyP!PP!VPP!`!jP!pyyyP!v!|#S$[$k$q$w$}%TPPPP%ZXWORYbXRORYb_t`qru!T!U!bQ!i!YS!p!e!fR!w!oQdRRybXSORYbQYORmYQ[PRn[Q_QQkVjp_krz!R!T!X!Z!^!`!f!j!oQr`QzcQ!RlQ!TqQ!XsQ!ZtQ!^{Q!`!QQ!f!YQ!j!]R!o!eQu`S!UqrU![u!U!bR!b!TQ!r!gR!x!rQ!u!hR!z!uQbRRxbQfTR|fQiUR!OiSXOYTaRb",nodeNames:`⚠ StartTag StartCloseTag MissingCloseTag StartCloseTag StartCloseTag Document Text EntityReference CharacterReference Cdata Element EndTag OpenTag TagName Attribute AttributeName Is AttributeValue CloseTag SelfCloseEndTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag DoctypeDecl`,maxTerm:50,context:jU,nodeProps:[[`closedBy`,1,`SelfCloseEndTag EndTag`,13,`CloseTag MissingCloseTag`],[`openedBy`,12,`StartTag StartCloseTag`,19,`OpenTag`,20,`StartTag`],[`isolate`,-6,13,18,19,21,22,24,``]],propSources:[LU],skippedNodes:[0],repeatNodeCount:9,tokenData:"!)v~R!YOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs*vsv$qvw+fwx/ix}$q}!O0[!O!P$q!P!Q2z!Q![$q![!]4n!]!^$q!^!_8U!_!`!#t!`!a!$l!a!b!%d!b!c$q!c!}4n!}#P$q#P#Q!'W#Q#R$q#R#S4n#S#T$q#T#o4n#o%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U$q4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qi$zXVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qa%nVVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%gP&YTVPOv&Tw!^&T!_;'S&T;'S;=`&i<%lO&TP&lP;=`<%l&T`&tS!O`Ov&ox;'S&o;'S;=`'Q<%lO&o`'TP;=`<%l&oa'ZP;=`<%l%gX'eWVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^W(ST|WOr'}sv'}w;'S'};'S;=`(c<%lO'}W(fP;=`<%l'}X(lP;=`<%l'^h(vV|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oh)`P;=`<%l(oi)fP;=`<%l$qo)t`VP|W!O`zUOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk+PV{YVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%g~+iast,n![!]-r!c!}-r#R#S-r#T#o-r%W%o-r%p&a-r&b1p-r4U4d-r4e$IS-r$I`$Ib-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~,qQ!Q![,w#l#m-V~,zQ!Q![,w!]!^-Q~-VOX~~-YR!Q![-c!c!i-c#T#Z-c~-fS!Q![-c!]!^-Q!c!i-c#T#Z-c~-ug}!O-r!O!P-r!Q![-r![!]-r!]!^/^!c!}-r#R#S-r#T#o-r$}%O-r%W%o-r%p&a-r&b1p-r1p4U-r4U4d-r4e$IS-r$I`$Ib-r$Je$Jg-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~/cOW~~/fP;=`<%l-rk/rW}bVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^k0eZVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O1W!O!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk1aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a2S!a;'S$q;'S;=`)c<%lO$qk2_X!PQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qm3TZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a3v!a;'S$q;'S;=`)c<%lO$qm4RXdSVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo4{!P`S^QVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O4n!O!P4n!P!Q$q!Q![4n![!]4n!]!^$q!^!_(o!_!c$q!c!}4n!}#R$q#R#S4n#S#T$q#T#o4n#o$}$q$}%O4n%O%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U4n4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Je$q$Je$Jg4n$Jg$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qo8RP;=`<%l4ni8]Y|W!O`Oq(oqr8{rs&osv(owx'}x!a(o!a!b!#U!b;'S(o;'S;=`)]<%lO(oi9S_|W!O`Or(ors&osv(owx'}x}(o}!O:R!O!f(o!f!g;e!g!}(o!}#ODh#O#W(o#W#XLp#X;'S(o;'S;=`)]<%lO(oi:YX|W!O`Or(ors&osv(owx'}x}(o}!O:u!O;'S(o;'S;=`)]<%lO(oi;OV!QP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oi;lX|W!O`Or(ors&osv(owx'}x!q(o!q!r<X!r;'S(o;'S;=`)]<%lO(oi<`X|W!O`Or(ors&osv(owx'}x!e(o!e!f<{!f;'S(o;'S;=`)]<%lO(oi=SX|W!O`Or(ors&osv(owx'}x!v(o!v!w=o!w;'S(o;'S;=`)]<%lO(oi=vX|W!O`Or(ors&osv(owx'}x!{(o!{!|>c!|;'S(o;'S;=`)]<%lO(oi>jX|W!O`Or(ors&osv(owx'}x!r(o!r!s?V!s;'S(o;'S;=`)]<%lO(oi?^X|W!O`Or(ors&osv(owx'}x!g(o!g!h?y!h;'S(o;'S;=`)]<%lO(oi@QY|W!O`Or?yrs@psv?yvwA[wxBdx!`?y!`!aCr!a;'S?y;'S;=`Db<%lO?ya@uV!O`Ov@pvxA[x!`@p!`!aAy!a;'S@p;'S;=`B^<%lO@pPA_TO!`A[!`!aAn!a;'SA[;'S;=`As<%lOA[PAsOiPPAvP;=`<%lA[aBQSiP!O`Ov&ox;'S&o;'S;=`'Q<%lO&oaBaP;=`<%l@pXBiX|WOrBdrsA[svBdvwA[w!`Bd!`!aCU!a;'SBd;'S;=`Cl<%lOBdXC]TiP|WOr'}sv'}w;'S'};'S;=`(c<%lO'}XCoP;=`<%lBdiC{ViP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiDeP;=`<%l?yiDoZ|W!O`Or(ors&osv(owx'}x!e(o!e!fEb!f#V(o#V#WIr#W;'S(o;'S;=`)]<%lO(oiEiX|W!O`Or(ors&osv(owx'}x!f(o!f!gFU!g;'S(o;'S;=`)]<%lO(oiF]X|W!O`Or(ors&osv(owx'}x!c(o!c!dFx!d;'S(o;'S;=`)]<%lO(oiGPX|W!O`Or(ors&osv(owx'}x!v(o!v!wGl!w;'S(o;'S;=`)]<%lO(oiGsX|W!O`Or(ors&osv(owx'}x!c(o!c!dH`!d;'S(o;'S;=`)]<%lO(oiHgX|W!O`Or(ors&osv(owx'}x!}(o!}#OIS#O;'S(o;'S;=`)]<%lO(oiI]V|W!O`yPOr(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiIyX|W!O`Or(ors&osv(owx'}x#W(o#W#XJf#X;'S(o;'S;=`)]<%lO(oiJmX|W!O`Or(ors&osv(owx'}x#T(o#T#UKY#U;'S(o;'S;=`)]<%lO(oiKaX|W!O`Or(ors&osv(owx'}x#h(o#h#iK|#i;'S(o;'S;=`)]<%lO(oiLTX|W!O`Or(ors&osv(owx'}x#T(o#T#UH`#U;'S(o;'S;=`)]<%lO(oiLwX|W!O`Or(ors&osv(owx'}x#c(o#c#dMd#d;'S(o;'S;=`)]<%lO(oiMkX|W!O`Or(ors&osv(owx'}x#V(o#V#WNW#W;'S(o;'S;=`)]<%lO(oiN_X|W!O`Or(ors&osv(owx'}x#h(o#h#iNz#i;'S(o;'S;=`)]<%lO(oi! RX|W!O`Or(ors&osv(owx'}x#m(o#m#n! n#n;'S(o;'S;=`)]<%lO(oi! uX|W!O`Or(ors&osv(owx'}x#d(o#d#e!!b#e;'S(o;'S;=`)]<%lO(oi!!iX|W!O`Or(ors&osv(owx'}x#X(o#X#Y?y#Y;'S(o;'S;=`)]<%lO(oi!#_V!SP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(ok!$PXaQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo!$wX[UVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!%mZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!&`!a;'S$q;'S;=`)c<%lO$qk!&kX!RQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!'aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_#P$q#P#Q!(S#Q;'S$q;'S;=`)c<%lO$qk!(]ZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!)O!a;'S$q;'S;=`)c<%lO$qk!)ZXxQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$q",tokenizers:[MU,PU,FU,IU,0,1,2,3,4],topRules:{Document:[0,6]},tokenPrec:0}),zU=63,BU=64,VU=1,HU=2,UU=3,WU=4,GU=5,KU=6,qU=7,JU=65,YU=66,XU=8,ZU=9,QU=10,$U=11,eW=12,tW=13,nW=19,rW=20,iW=29,aW=33,oW=34,sW=47,cW=0,lW=1,uW=2,dW=3,fW=4,pW=class{constructor(e,t,n){this.parent=e,this.depth=t,this.type=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n}};pW.top=new pW(null,-1,cW);function mW(e,t){for(let n=0,r=t-e.pos-1;;r--,n++){let t=e.peek(r);if(gW(t)||t==-1)return n}}function hW(e){return e==32||e==9}function gW(e){return e==10||e==13}function _W(e){return hW(e)||gW(e)}function vW(e){return e<0||_W(e)}var yW=new zR({start:pW.top,reduce(e,t){return e.type==dW&&(t==rW||t==oW)?e.parent:e},shift(e,t,n,r){if(t==UU)return new pW(e,mW(r,r.pos),lW);if(t==JU||t==GU)return new pW(e,mW(r,r.pos),uW);if(t==zU)return e.parent;if(t==nW||t==aW)return new pW(e,0,dW);if(t==tW&&e.type==fW)return e.parent;if(t==sW){let t=/[1-9]/.exec(r.read(r.pos,n.pos));if(t)return new pW(e,e.depth+ +t[0],fW)}return e},hash(e){return e.hash}});function bW(e,t,n=0){return e.peek(n)==t&&e.peek(n+1)==t&&e.peek(n+2)==t&&vW(e.peek(n+3))}var xW=new ER((e,t)=>{if(e.next==-1&&t.canShift(BU))return e.acceptToken(BU);let n=e.peek(-1);if((gW(n)||n<0)&&t.context.type!=dW){if(bW(e,45))if(t.canShift(zU))e.acceptToken(zU);else return e.acceptToken(VU,3);if(bW(e,46))if(t.canShift(zU))e.acceptToken(zU);else return e.acceptToken(HU,3);let n=0;for(;e.next==32;)n++,e.advance();(n<t.context.depth||n==t.context.depth&&t.context.type==lW&&(e.next!=45||!vW(e.peek(1))))&&e.next!=-1&&!gW(e.next)&&e.next!=35&&e.acceptToken(zU,-n)}},{contextual:!0}),SW=new ER((e,t)=>{if(t.context.type==dW){e.next==63&&(e.advance(),vW(e.next)&&e.acceptToken(qU));return}if(e.next==45)e.advance(),vW(e.next)&&e.acceptToken(t.context.type==lW&&t.context.depth==mW(e,e.pos-1)?WU:UU);else if(e.next==63)e.advance(),vW(e.next)&&e.acceptToken(t.context.type==uW&&t.context.depth==mW(e,e.pos-1)?KU:GU);else{let n=e.pos;for(;;)if(hW(e.next)){if(e.pos==n)return;e.advance()}else if(e.next==33)EW(e);else if(e.next==38)DW(e);else if(e.next==42){DW(e);break}else if(e.next==39||e.next==34){if(OW(e,!0))break;return}else if(e.next==91||e.next==123){if(!kW(e))return;break}else{NW(e,!0,!1,0);break}for(;hW(e.next);)e.advance();if(e.next==58){if(e.pos==n&&t.canShift(iW))return;vW(e.peek(1))&&e.acceptTokenTo(t.context.type==uW&&t.context.depth==mW(e,n)?YU:JU,n)}}},{contextual:!0});function CW(e){return e>32&&e<127&&e!=34&&e!=37&&e!=44&&e!=60&&e!=62&&e!=92&&e!=94&&e!=96&&e!=123&&e!=124&&e!=125}function wW(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function TW(e,t){return e.next==37?(e.advance(),wW(e.next)&&e.advance(),wW(e.next)&&e.advance(),!0):CW(e.next)||t&&e.next==44?(e.advance(),!0):!1}function EW(e){if(e.advance(),e.next==60){for(e.advance();;)if(!TW(e,!0)){e.next==62&&e.advance();break}}else for(;TW(e,!1););}function DW(e){for(e.advance();!vW(e.next)&&jW(e.next)!=`f`;)e.advance()}function OW(e,t){let n=e.next,r=!1,i=e.pos;for(e.advance();;){let a=e.next;if(a<0)break;if(e.advance(),a==n)if(a==39)if(e.next==39)e.advance();else break;else break;else if(a==92&&n==34)e.next>=0&&e.advance();else if(gW(a)){if(t)return!1;r=!0}else if(t&&e.pos>=i+1024)return!1}return!r}function kW(e){for(let t=[],n=e.pos+1024;;)if(e.next==91||e.next==123)t.push(e.next),e.advance();else if(e.next==39||e.next==34){if(!OW(e,!0))return!1}else if(e.next==93||e.next==125){if(t[t.length-1]!=e.next-2)return!1;if(t.pop(),e.advance(),!t.length)return!0}else if(e.next<0||e.pos>n||gW(e.next))return!1;else e.advance()}var AW=`iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif`;function jW(e){return e<33?`u`:e>125?`s`:AW[e-33]}function MW(e,t){let n=jW(e);return n!=`u`&&!(t&&n==`f`)}function NW(e,t,n,r){if(jW(e.next)==`s`||(e.next==63||e.next==58||e.next==45)&&MW(e.peek(1),n))e.advance();else return!1;let i=e.pos;for(;;){let a=e.next,o=0,s=r+1;for(;_W(a);){if(gW(a)){if(t)return!1;s=0}else s++;a=e.peek(++o)}if(!(a>=0&&(a==58?MW(e.peek(o+1),n):a==35?e.peek(o-1)!=32:MW(a,n)))||!n&&s<=r||s==0&&!n&&(bW(e,45,o)||bW(e,46,o)))break;if(t&&jW(a)==`f`)return!1;for(let t=o;t>=0;t--)e.advance();if(t&&e.pos>i+1024)return!1}return!0}var PW=new ER((e,t)=>{if(e.next==33)EW(e),e.acceptToken(eW);else if(e.next==38||e.next==42){let t=e.next==38?QU:$U;DW(e),e.acceptToken(t)}else e.next==39||e.next==34?(OW(e,!1),e.acceptToken(ZU)):NW(e,!1,t.context.type==dW,t.context.depth)&&e.acceptToken(XU)}),FW=new ER((e,t)=>{let n=t.context.type==fW?t.context.depth:-1,r=e.pos;scan:for(;;){let i=0,a=e.next;for(;a==32;)a=e.peek(++i);if(!i&&(bW(e,45,i)||bW(e,46,i))||!gW(a)&&(n<0&&(n=Math.max(t.context.depth+1,i)),i<n))break;for(;;){if(e.next<0)break scan;let t=gW(e.next);if(e.advance(),t)continue scan;r=e.pos}}e.acceptTokenTo(tW,r)}),IW=tL({DirectiveName:Q.keyword,DirectiveContent:Q.attributeValue,"DirectiveEnd DocEnd":Q.meta,QuotedLiteral:Q.string,BlockLiteralHeader:Q.special(Q.string),BlockLiteralContent:Q.content,Literal:Q.content,"Key/Literal Key/QuotedLiteral":Q.definition(Q.propertyName),"Anchor Alias":Q.labelName,Tag:Q.typeName,Comment:Q.lineComment,": , -":Q.separator,"?":Q.punctuation,"[ ]":Q.squareBracket,"{ }":Q.brace}),LW=BR.deserialize({version:14,states:"5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",stateData:";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",goto:",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",nodeNames:`⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document`,maxTerm:74,context:yW,nodeProps:[[`isolate`,-3,8,9,14,``],[`openedBy`,18,`[`,32,`{`],[`closedBy`,19,`]`,33,`}`]],propSources:[IW],skippedNodes:[0],repeatNodeCount:6,tokenData:"-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",tokenizers:[xW,SW,PW,FW,0,1],topRules:{Stream:[0,15]},tokenPrec:0}),RW=Vd({}),zW={html:Bz,js:SB.configure({dialect:`js`}),jsx:SB.configure({dialect:`jsx`}),ts:SB.configure({dialect:`ts`}),tsx:SB.configure({dialect:`tsx`}),json:wB,md:jV,py:pU,xml:RU,yaml:LW},BW={html:`html`,htm:`html`,javascript:`js`,js:`js`,jsx:`jsx`,typescript:`ts`,ts:`ts`,tsx:`tsx`,json:`json`,markdown:`md`,md:`md`,python:`py`,py:`py`,xml:`xml`,yaml:`yaml`,yml:`yaml`},VW=Bf(e=>{let t=xf(RW);if(e.language===void 0||t[e.language]===void 0)return R(gd,{children:e.code});let n=t[e.language].parse(e.code);return R(gd,{children:JL(wL(e.code,n),{Fragment:gd,jsx:R,jsxs:R})})});function HW({children:e,className:t,...n}){return R(`div`,{className:sS(`group relative my-4 self-stretch rounded-bubble bg-base-active shadow-header overflow-hidden`,t),...n,children:e})}function UW({children:e,className:t,...n}){return R(`div`,{className:sS(`absolute top-1 right-1 z-10 flex items-center gap-1 transition-opacity duration-200 ease-out opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`,t),...n,children:e})}function WW({children:e,className:t,...n}){return R(`div`,{className:t,...n,children:e})}var GW=Object.assign(HW,{Actions:UW,Content:WW}),KW=Vd(``),qW=({code:e,language:t,className:n,...r})=>{let i=BW[t],{isCopied:a,copyToClipboard:o,disabled:s}=JW({code:e}),c=ab(),l=mm(!1),u=Gy();return R(KW.Provider,{value:e,children:R(GW,{"data-code-block-container":!0,"data-language":t,children:[R(GW.Actions,{children:[R(VS,{"aria-label":c.wrap.value,disabled:s,icon:`wrap`,onClick:()=>l.value=!l.value,variant:`md-button`,children:c.wrap.value}),R(VS,{"aria-label":a.value?c.copied.value:c.copy.value,disabled:s,icon:a.value?`check`:`copy`,onClick:o,variant:`md-button`,children:a.value?c.copied.value:c.copy.value})]}),R(GW.Content,{className:sS(l.value?`overflow-x-hidden`:`overflow-x-auto`),children:R(`div`,{className:sS(`pt-1.5 pb-2`,n),"data-code-block":!0,"data-language":t,"data-syntax-theme":u.value,...r,children:R(`pre`,{className:sS(`m-0 font-mono text-[13px] px-4 py-1.5`,l.value?`whitespace-pre-wrap overflow-x-hidden`:`whitespace-pre overflow-x-auto`),children:R(`code`,{className:sS(`block`,l.value?`whitespace-pre-wrap break-all`:`whitespace-pre`),children:R(VW,{code:e,language:i})})})})})]})})};function JW({code:e,onCopy:t,onError:n,timeout:r=2e3}={}){let i=mm(!1),a=F(0),o=xf(KW),{isAnimating:s}=xf(bX),c=e??o,l=I(async()=>{if(typeof window>`u`||!navigator?.clipboard?.writeText){n?.(Error(`Clipboard API not available`));return}try{i.value||(await navigator.clipboard.writeText(c),i.value=!0,t?.(),a.current=window.setTimeout(()=>{i.value=!1},r))}catch(e){n?.(e)}},[c,i,t,n,r]);return _f(()=>()=>{window.clearTimeout(a.current)},[]),{isCopied:i,copyToClipboard:l,disabled:s}}var YW=(e,t,n)=>{let r=typeof t==`string`?new Blob([t],{type:n}):t,i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(i)};function XW({src:e,alt:t,onError:n}){let{isAnimating:r}=xf(bX);return{downloadImage:I(async()=>{if(e)try{let n=await(await fetch(e.toString())).blob(),r=new URL(e.toString(),window.location.origin).pathname.split(`/`).pop()||``,i=r.includes(`.`)&&r.split(`.`).pop()?.length<=4,a=``;if(i)a=r;else{let e=n.type,i=`png`;e.includes(`jpeg`)||e.includes(`jpg`)?i=`jpg`:e.includes(`png`)?i=`png`:e.includes(`svg`)?i=`svg`:e.includes(`gif`)?i=`gif`:e.includes(`webp`)&&(i=`webp`),a=`${(t||r||`image`).toString().replace(/\.[^/.]+$/,``)}.${i}`}YW(a,n,n.type)}catch(e){console.error(`Failed to download image:`,e),n?.(e)}},[e,t,n]),disabled:r}}var ZW=({node:e,className:t,src:n,alt:r,...i})=>{let{downloadImage:a,disabled:o}=XW({src:n?.toString()||``,alt:r?.toString()}),s=ab();return n?R(GW,{className:`inline-block self-auto`,"data-streamdown":`image-wrapper`,children:[R(GW.Actions,{children:R(VS,{"aria-label":s.download.value,disabled:o,icon:`download`,onClick:a,variant:`md-button`,children:s.download.value})}),R(GW.Content,{children:R(`img`,{alt:r,className:sS(`max-w-full`,t),"data-streamdown":`image`,src:n,...i})})]}):null};function QW(e){let t=[],n=[],r=e.querySelectorAll(`thead th`);for(let e of Array.from(r))t.push(e.textContent?.trim()||``);let i=e.querySelectorAll(`tbody tr`);for(let e of Array.from(i)){let t=[],r=e.querySelectorAll(`td`);for(let e of Array.from(r))t.push(e.textContent?.trim()||``);n.push(t)}return{headers:t,rows:n}}function $W(e){let{headers:t,rows:n}=e;if(t.length===0)return``;let r=[],i=t.map(e=>e.replace(/\|/g,`\\|`));r.push(`| ${i.join(` | `)} |`),r.push(`| ${t.map(()=>`---`).join(` | `)} |`);for(let e of n){let n=[...e];for(;n.length<t.length;)n.push(``);let i=n.map(e=>e.replace(/\|/g,`\\|`));r.push(`| ${i.join(` | `)} |`)}return r.join(`
|
|
299
|
-
`)}function eG({onCopy:e,onError:t,timeout:n=2e3}={}){let r=mm(!1),i=F(0),{isAnimating:a}=xf(bX);return _f(()=>()=>{window.clearTimeout(i.current)},[]),{isCopied:r,copyTableData:async a=>{if(typeof window>`u`||!navigator?.clipboard?.write){t?.(Error(`Clipboard API not available`));return}try{if(!r.value){let o=a.currentTarget.closest(`[data-streamdown="table-wrapper"]`)?.querySelector(`table`);if(!o){t?.(Error(`Table not found`));return}let s=QW(o),c=new ClipboardItem({"text/plain":$W(s),"text/html":new Blob([o.outerHTML],{type:`text/html`})});await navigator.clipboard.write([c]),r.value=!0,e?.(),i.current=window.setTimeout(()=>r.value=!1,n)}}catch(e){t?.(e)}},disabled:a}}var tG=({children:e,className:t,...n})=>{let{isCopied:r,copyTableData:i,disabled:a}=eG(),o=ab();return R(GW,{"data-streamdown":`table-wrapper`,children:[R(GW.Actions,{children:R(VS,{"aria-label":r.value?o.copied.value:o.copy.value,disabled:a,icon:r.value?`check`:`copy`,onClick:i,variant:`md-button`,children:r.value?o.copied.value:o.copy.value})}),R(GW.Content,{className:`overflow-x-auto`,children:R(`table`,{className:sS(`w-full border-collapse border border-base-border`,t),"data-streamdown":`table`,...n,children:e})})]})},nG=/language-([^\s]+)/;function rG(e,t){if(!(e?.position||t?.position))return!0;if(!(e?.position&&t?.position))return!1;let n=e.position.start,r=t.position.start,i=e.position.end,a=t.position.end;return n?.line===r?.line&&n?.column===r?.column&&i?.line===a?.line&&i?.column===a?.column}function iG(e,t){return e.className===t.className&&rG(e.node,t.node)}var aG=Bf(({children:e,className:t,node:n,...r})=>R(`ol`,{className:sS(`ml-4 mb-2 list-outside list-decimal whitespace-normal text-sm`,t),"data-streamdown":`ordered-list`,...r,children:e}),(e,t)=>iG(e,t));aG.displayName=`MarkdownOl`;var oG=Bf(({children:e,className:t,node:n,...r})=>R(`li`,{className:sS(`py-1`,t),"data-streamdown":`list-item`,...r,children:e}),(e,t)=>iG(e,t));oG.displayName=`MarkdownLi`;var sG=Bf(({children:e,className:t,node:n,...r})=>R(`ul`,{className:sS(`ml-4 list-outside list-disc whitespace-normal text-sm`,t),"data-streamdown":`unordered-list`,...r,children:e}),(e,t)=>iG(e,t));sG.displayName=`MarkdownUl`;var cG=Bf(({className:e,node:t,...n})=>R(`hr`,{className:sS(`my-6 border-base-border`,e),"data-streamdown":`horizontal-rule`,...n}),(e,t)=>iG(e,t));cG.displayName=`MarkdownHr`;var lG=Bf(({children:e,className:t,node:n,...r})=>R(`span`,{className:sS(`font-medium`,t),"data-streamdown":`strong`,...r,children:e}),(e,t)=>iG(e,t));lG.displayName=`MarkdownStrong`;var uG=Bf(({children:e,className:t,href:n,node:r,...i})=>{let a=n===`streamdown:incomplete-link`;return R(`a`,{className:sS(`wrap-anywhere font-medium underline`,t),"data-incomplete":a,"data-streamdown":`link`,href:n,rel:`noreferrer`,target:`_blank`,...i,children:e})},(e,t)=>iG(e,t)&&e.href===t.href);uG.displayName=`MarkdownA`;var dG=Bf(({children:e,className:t,node:n,...r})=>R(`h1`,{className:sS(`mt-6 mb-2 text-base-primary font-semibold text-xl`,t),"data-streamdown":`heading-1`,...r,children:e}),(e,t)=>iG(e,t));dG.displayName=`MarkdownH1`;var fG=Bf(({children:e,className:t,node:n,...r})=>R(`h2`,{className:sS(`mt-3 mb-2 text-base-primary font-semibold text-lg`,t),"data-streamdown":`heading-2`,...r,children:e}),(e,t)=>iG(e,t));fG.displayName=`MarkdownH2`;var pG=Bf(({children:e,className:t,node:n,...r})=>R(`h3`,{className:sS(`mt-3 mb-1 text-base-primary font-semibold text-md`,t),"data-streamdown":`heading-3`,...r,children:e}),(e,t)=>iG(e,t));pG.displayName=`MarkdownH3`;var mG=Bf(({children:e,className:t,node:n,...r})=>R(`h4`,{className:sS(`mt-3 mb-1 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-4`,...r,children:e}),(e,t)=>iG(e,t));mG.displayName=`MarkdownH4`;var hG=Bf(({children:e,className:t,node:n,...r})=>R(`h5`,{className:sS(`mt-3 mb-0.5 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-5`,...r,children:e}),(e,t)=>iG(e,t));hG.displayName=`MarkdownH5`;var gG=Bf(({children:e,className:t,node:n,...r})=>R(`h6`,{className:sS(`mt-3 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-6`,...r,children:e}),(e,t)=>iG(e,t));gG.displayName=`MarkdownH6`;var _G=Bf(({node:e,...t})=>R(tG,{...t}),(e,t)=>iG(e,t));_G.displayName=`MarkdownTable`;var vG=Bf(({children:e,className:t,node:n,...r})=>R(`thead`,{className:sS(`bg-base-active/80`,t),"data-streamdown":`table-header`,...r,children:e}),(e,t)=>iG(e,t));vG.displayName=`MarkdownThead`;var yG=Bf(({children:e,className:t,node:n,...r})=>R(`tbody`,{className:sS(`divide-y divide-base-border bg-base-active/40`,t),"data-streamdown":`table-body`,...r,children:e}),(e,t)=>iG(e,t));yG.displayName=`MarkdownTbody`;var bG=Bf(({children:e,className:t,node:n,...r})=>R(`tr`,{className:sS(`border-base-border border-b`,t),"data-streamdown":`table-row`,...r,children:e}),(e,t)=>iG(e,t));bG.displayName=`MarkdownTr`;var xG=Bf(({children:e,className:t,node:n,...r})=>R(`th`,{className:sS(`whitespace-nowrap px-4 py-2 text-left font-medium text-sm`,t),"data-streamdown":`table-header-cell`,...r,children:e}),(e,t)=>iG(e,t));xG.displayName=`MarkdownTh`;var SG=Bf(({children:e,className:t,node:n,...r})=>R(`td`,{className:sS(`px-4 py-2 text-sm`,t),"data-streamdown":`table-cell`,...r,children:e}),(e,t)=>iG(e,t));SG.displayName=`MarkdownTd`;var CG=Bf(({children:e,className:t,node:n,...r})=>R(`blockquote`,{className:sS(`my-4 border-base-subtle/30 border-l-4 pl-4 text-base-subtle italic`,t),"data-streamdown":`blockquote`,...r,children:e}),(e,t)=>iG(e,t));CG.displayName=`MarkdownBlockquote`;var wG=Bf(({children:e,className:t,node:n,...r})=>R(`sup`,{className:sS(`text-sm`,t),"data-streamdown":`superscript`,...r,children:e}),(e,t)=>iG(e,t));wG.displayName=`MarkdownSup`;var TG=Bf(({children:e,className:t,node:n,...r})=>R(`sub`,{className:sS(`text-sm`,t),"data-streamdown":`subscript`,...r,children:e}),(e,t)=>iG(e,t));TG.displayName=`MarkdownSub`;var EG=Bf(({children:e,className:t,node:n,...r})=>{if(`data-footnotes`in r){let n=e=>{if(!Cp(e))return!1;let t=e,n=Array.isArray(t.props.children)?t.props.children:[t.props.children],r=!1,i=!1;for(let e of n)if(e){if(typeof e==`string`)e.trim()!==``&&(r=!0);else if(Cp(e))if(e.props?.[`data-footnote-backref`]!==void 0)i=!0;else{let t=Array.isArray(e.props.children)?e.props.children:[e.props.children];for(let e of t){if(typeof e==`string`&&e.trim()!==``){r=!0;break}if(Cp(e)&&e.props?.[`data-footnote-backref`]===void 0){r=!0;break}}}}return i&&!r},i=Array.isArray(e)?e.map(e=>{if(!Cp(e))return e;if(e.type===aG){let t=(Array.isArray(e.props.children)?e.props.children:[e.props.children]).filter(e=>!n(e));return t.length===0?null:{...e,props:{...e.props,children:t}}}return e}):e;return(Array.isArray(i)?i.some(e=>e!==null):i!==null)?R(`section`,{className:t,...r,children:i}):null}return R(`section`,{className:t,...r,children:e})},(e,t)=>iG(e,t));EG.displayName=`MarkdownSection`;var DG=Bf(({node:e,className:t,children:n,...r})=>{if(e?.position?.start.line===e?.position?.end.line)return R(`code`,{className:sS(`rounded bg-base-active px-1.5 py-0.5 font-mono text-sm`,t),"data-streamdown":`inline-code`,...r,children:n});let i=(typeof t==`string`?t.match(nG):null)?.at(1)??``,a=``;if(Cp(n)){let e=n;e.props&&typeof e.props==`object`&&`children`in e.props&&typeof e.props.children==`string`&&(a=e.props.children)}else typeof n==`string`&&(a=n);return R(qW,{code:a,"data-language":i,"data-streamdown":`code-block`,language:i})},(e,t)=>iG(e,t));DG.displayName=`MarkdownCode`;var OG=Bf(ZW,(e,t)=>iG(e,t));OG.displayName=`MarkdownImg`;var kG=Bf(({children:e,className:t,node:n,...r})=>{let i=(Array.isArray(e)?e:[e]).filter(e=>e!=null&&e!==``);return i.some(e=>Cp(e)&&e?.props?.node?.tagName===`img`)?i.length===1?R(gd,{children:e}):R(`div`,{className:sS(`text-sm`,t),...r,children:e}):R(`p`,{className:sS(`text-sm mb-3`,t),...r,children:e})},(e,t)=>iG(e,t));kG.displayName=`MarkdownParagraph`;var AG={ol:aG,li:oG,ul:sG,hr:cG,strong:lG,a:uG,h1:dG,h2:fG,h3:pG,h4:mG,h5:hG,h6:gG,table:_G,thead:vG,tbody:yG,tr:bG,th:xG,td:SG,blockquote:CG,code:DG,img:OG,pre:gd,sup:wG,sub:TG,p:kG,section:EG},jG={tokenize:MG};function MG(e){let t=e.attempt(this.parser.constructs.contentInitial,r,i),n;return t;function r(n){if(n===null){e.consume(n);return}return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),pP(e,t,`linePrefix`)}function i(t){return e.enter(`paragraph`),a(t)}function a(t){let r=e.enter(`chunkText`,{contentType:`text`,previous:n});return n&&(n.next=r),n=r,o(t)}function o(t){if(t===null){e.exit(`chunkText`),e.exit(`paragraph`),e.consume(t);return}return X(t)?(e.consume(t),e.exit(`chunkText`),a):(e.consume(t),o)}}var NG={tokenize:FG},PG={tokenize:IG};function FG(e){let t=this,n=[],r=0,i,a,o;return s;function s(i){if(r<n.length){let a=n[r];return t.containerState=a[1],e.attempt(a[0].continuation,c,l)(i)}return l(i)}function c(e){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&v();let n=t.events.length,a=n,o;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){o=t.events[a][1].end;break}_(r);let s=n;for(;s<t.events.length;)t.events[s][1].end={...o},s++;return ij(t.events,a+1,0,t.events.slice(n)),t.events.length=s,l(e)}return s(e)}function l(a){if(r===n.length){if(!i)return f(a);if(i.currentConstruct&&i.currentConstruct.concrete)return m(a);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(PG,u,d)(a)}function u(e){return i&&v(),_(r),f(e)}function d(e){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,m(e)}function f(n){return t.containerState={},e.attempt(PG,p,m)(n)}function p(e){return r++,n.push([t.currentConstruct,t.containerState]),f(e)}function m(n){if(n===null){i&&v(),_(0),e.consume(n);return}return i||=t.parser.flow(t.now()),e.enter(`chunkFlow`,{_tokenizer:i,contentType:`flow`,previous:a}),h(n)}function h(n){if(n===null){g(e.exit(`chunkFlow`),!0),_(0),e.consume(n);return}return X(n)?(e.consume(n),g(e.exit(`chunkFlow`)),r=0,t.interrupt=void 0,s):(e.consume(n),h)}function g(e,n){let s=t.sliceStream(e);if(n&&s.push(null),e.previous=a,a&&(a.next=e),a=e,i.defineSkip(e.start),i.write(s),t.parser.lazy[e.start.line]){let e=i.events.length;for(;e--;)if(i.events[e][1].start.offset<o&&(!i.events[e][1].end||i.events[e][1].end.offset>o))return;let n=t.events.length,a=n,s,c;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){if(s){c=t.events[a][1].end;break}s=!0}for(_(r),e=n;e<t.events.length;)t.events[e][1].end={...c},e++;ij(t.events,a+1,0,t.events.slice(n)),t.events.length=e}}function _(r){let i=n.length;for(;i-- >r;){let r=n[i];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function v(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function IG(e,t,n){return pP(e,e.attempt(this.parser.constructs.document,t,n),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}var LG={tokenize:RG};function RG(e){let t=this,n=e.attempt(mP,r,e.attempt(this.parser.constructs.flowInitial,i,pP(e,e.attempt(this.parser.constructs.flow,i,e.attempt(BP,i)),`linePrefix`)));return n;function r(r){if(r===null){e.consume(r);return}return e.enter(`lineEndingBlank`),e.consume(r),e.exit(`lineEndingBlank`),t.currentConstruct=void 0,n}function i(r){if(r===null){e.consume(r);return}return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),t.currentConstruct=void 0,n}}var zG={resolveAll:UG()},BG=HG(`string`),VG=HG(`text`);function HG(e){return{resolveAll:UG(e===`text`?WG:void 0),tokenize:t};function t(t){let n=this,r=this.parser.constructs[e],i=t.attempt(r,a,o);return a;function a(e){return c(e)?i(e):o(e)}function o(e){if(e===null){t.consume(e);return}return t.enter(`data`),t.consume(e),s}function s(e){return c(e)?(t.exit(`data`),i(e)):(t.consume(e),s)}function c(e){if(e===null)return!0;let t=r[e],i=-1;if(t)for(;++i<t.length;){let e=t[i];if(!e.previous||e.previous.call(n,n.previous))return!0}return!1}}}function UG(e){return t;function t(t,n){let r=-1,i;for(;++r<=t.length;)i===void 0?t[r]&&t[r][1].type===`data`&&(i=r,r++):(!t[r]||t[r][1].type!==`data`)&&(r!==i+2&&(t[i][1].end=t[r-1][1].end,t.splice(i+2,r-i-2),r=i+2),i=void 0);return e?e(t,n):t}}function WG(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type===`lineEnding`)&&e[n-1][1].type===`data`){let r=e[n-1][1],i=t.sliceStream(r),a=i.length,o=-1,s=0,c;for(;a--;){let e=i[a];if(typeof e==`string`){for(o=e.length;e.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(e===-2)c=!0,s++;else if(e!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){let i={type:n===e.length||c||s<2?`lineSuffix`:`hardBreakTrailing`,start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...i.start},r.start.offset===r.end.offset?Object.assign(r,i):(e.splice(n,0,[`enter`,i,t],[`exit`,i,t]),n+=2)}n++}return e}var GG=Bm({attentionMarkers:()=>$G,contentInitial:()=>qG,disable:()=>eK,document:()=>KG,flow:()=>YG,flowInitial:()=>JG,insideSpan:()=>QG,string:()=>XG,text:()=>ZG}),KG={42:NF,43:NF,45:NF,48:NF,49:NF,50:NF,51:NF,52:NF,53:NF,54:NF,55:NF,56:NF,57:NF,62:gP},qG={91:YP},JG={[-2]:OP,[-1]:OP,32:OP},YG={35:tF,42:jF,45:[VF,jF],60:oF,61:VF,95:jF,96:TP,126:TP},XG={38:SP,92:bP},ZG={[-5]:kF,[-4]:kF,[-3]:kF,33:TF,38:SP,42:sP,60:[dP,pF],91:DF,92:[$P,bP],93:hF,95:sP,96:MP},QG={null:[sP,zG]},$G={null:[42,95]},eK={null:[]};function tK(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0},i={},a=[],o=[],s=[],c={attempt:C(x),check:C(S),consume:v,enter:y,exit:b,interrupt:C(S,{interrupt:!0})},l={code:null,containerState:{},defineSkip:h,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d},u=t.tokenize.call(l,c);return t.resolveAll&&a.push(t),l;function d(e){return o=aj(o,e),g(),o[o.length-1]===null?(w(t,0),l.events=oj(a,l.events,l),l.events):[]}function f(e,t){return rK(p(e),t)}function p(e){return nK(o,e)}function m(){let{_bufferIndex:e,_index:t,line:n,column:i,offset:a}=r;return{_bufferIndex:e,_index:t,line:n,column:i,offset:a}}function h(e){i[e.line]=e.column,ee()}function g(){let e;for(;r._index<o.length;){let t=o[r._index];if(typeof t==`string`)for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)_(t.charCodeAt(r._bufferIndex));else _(t)}}function _(e){u=u(e)}function v(e){X(e)?(r.line++,r.column=1,r.offset+=e===-3?2:1,ee()):e!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=e}function y(e,t){let n=t||{};return n.type=e,n.start=m(),l.events.push([`enter`,n,l]),s.push(n),n}function b(e){let t=s.pop();return t.end=m(),l.events.push([`exit`,t,l]),t}function x(e,t){w(e,t.from)}function S(e,t){t.restore()}function C(e,t){return n;function n(n,r,i){let a,o,s,u;return Array.isArray(n)?f(n):`tokenize`in n?f([n]):d(n);function d(e){return t;function t(t){let n=t!==null&&e[t],r=t!==null&&e.null;return f([...Array.isArray(n)?n:n?[n]:[],...Array.isArray(r)?r:r?[r]:[]])(t)}}function f(e){return a=e,o=0,e.length===0?i:p(e[o])}function p(e){return n;function n(n){return u=T(),s=e,e.partial||(l.currentConstruct=e),e.name&&l.parser.constructs.disable.null.includes(e.name)?h(n):e.tokenize.call(t?Object.assign(Object.create(l),t):l,c,m,h)(n)}}function m(t){return e(s,u),r}function h(e){return u.restore(),++o<a.length?p(a[o]):i}}}function w(e,t){e.resolveAll&&!a.includes(e)&&a.push(e),e.resolve&&ij(l.events,t,l.events.length-t,e.resolve(l.events.slice(t),l)),e.resolveTo&&(l.events=e.resolveTo(l.events,l))}function T(){let e=m(),t=l.previous,n=l.currentConstruct,i=l.events.length,a=Array.from(s);return{from:i,restore:o};function o(){r=e,l.previous=t,l.currentConstruct=n,l.events.length=i,s=a,ee()}}function ee(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function nK(e,t){let n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex,o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){let e=o[0];typeof e==`string`?o[0]=e.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function rK(e,t){let n=-1,r=[],i;for(;++n<e.length;){let a=e[n],o;if(typeof a==`string`)o=a;else switch(a){case-5:o=`\r`;break;case-4:o=`
|
|
298
|
+
`;)e--;this.fragmentEnd=e?e-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(yI.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=this.fragmentEnd-+!!this.fragment.openEnd,i=e.absoluteLineStart,a=i,o=e.block.children.length,s=a,c=o;for(;;){if(t.to-n>r){if(t.type.isAnonymous&&t.firstChild())continue;break}let i=kV(t.from-n,e.ranges);if(t.to-n<=e.ranges[e.rangeI].to)e.addNode(t.tree,i);else{let n=new DI(e.parser.nodeSet.types[$.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(n,t.tree),e.addNode(n,i)}if(t.type.is(`Block`)&&(DV.indexOf(t.type.id)<0?(a=t.to-n,o=e.block.children.length):(a=s,o=c),s=t.to-n,c=e.block.children.length),!t.nextSibling())break}for(;e.block.children.length>o;)e.block.children.pop(),e.block.positions.pop();return a-i}};function kV(e,t){let n=e;for(let r=1;r<t.length;r++){let i=t[r-1].to,a=t[r].from;i<e&&(n-=a-i)}return n}var AV=tL({"Blockquote/...":Q.quote,HorizontalRule:Q.contentSeparator,"ATXHeading1/... SetextHeading1/...":Q.heading1,"ATXHeading2/... SetextHeading2/...":Q.heading2,"ATXHeading3/...":Q.heading3,"ATXHeading4/...":Q.heading4,"ATXHeading5/...":Q.heading5,"ATXHeading6/...":Q.heading6,"Comment CommentBlock":Q.comment,Escape:Q.escape,Entity:Q.character,"Emphasis/...":Q.emphasis,"StrongEmphasis/...":Q.strong,"Link/... Image/...":Q.link,"OrderedList/... BulletList/...":Q.list,"BlockQuote/...":Q.quote,"InlineCode CodeText":Q.monospace,"URL Autolink":Q.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":Q.processingInstruction,"CodeInfo LinkLabel":Q.labelName,LinkTitle:Q.string,Paragraph:Q.content}),jV=new rV(new CI(sV).extend(AV),Object.keys(JB).map(e=>JB[e]),Object.keys(JB).map(e=>QB[e]),Object.keys(JB),$B,kB,Object.keys(bV).map(e=>bV[e]),Object.keys(bV),[]);Q.strikethrough,Q.processingInstruction,Q.heading,Q.content,Q.processingInstruction,Q.list,Q.atom,Q.special(Q.content),Q.processingInstruction,Q.special(Q.content),Q.processingInstruction,Q.character;var MV=1,NV=194,PV=195,FV=196,IV=197,LV=198,RV=199,zV=200,BV=2,VV=3,HV=201,UV=24,WV=25,GV=49,KV=50,qV=55,JV=56,YV=57,XV=59,ZV=60,QV=61,$V=62,eH=63,tH=65,nH=238,rH=71,iH=241,aH=242,oH=243,sH=244,cH=245,lH=246,uH=247,dH=248,fH=72,pH=249,mH=250,hH=251,gH=252,_H=253,vH=254,yH=255,bH=256,xH=73,SH=77,CH=263,wH=112,TH=130,EH=151,DH=152,OH=155,kH=10,AH=13,jH=32,MH=9,NH=35,PH=40,FH=46,IH=123,LH=125,RH=39,zH=34,BH=92,VH=111,HH=120,UH=78,WH=117,GH=85,KH=new Set([WV,GV,KV,CH,tH,TH,JV,YV,nH,$V,eH,fH,xH,SH,ZV,QV,EH,DH,OH,wH]);function qH(e){return e==kH||e==AH}function JH(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}var YH=new ER((e,t)=>{let n;if(e.next<0)e.acceptToken(RV);else if(t.context.flags&ZH)qH(e.next)&&e.acceptToken(LV,1);else if(((n=e.peek(-1))<0||qH(n))&&t.canShift(IV)){let t=0;for(;e.next==jH||e.next==MH;)e.advance(),t++;(e.next==kH||e.next==AH||e.next==NH)&&e.acceptToken(IV,-t)}else qH(e.next)&&e.acceptToken(FV,1)},{contextual:!0}),XH=new ER((e,t)=>{let n=t.context;if(n.flags)return;let r=e.peek(-1);if(r==kH||r==AH){let t=0,r=0;for(;;){if(e.next==jH)t++;else if(e.next==MH)t+=8-t%8;else break;e.advance(),r++}t!=n.indent&&e.next!=kH&&e.next!=AH&&e.next!=NH&&(t<n.indent?e.acceptToken(PV,-r):e.acceptToken(NV))}}),ZH=1,QH=2,$H=4,eU=8,tU=16,nU=32;function rU(e,t,n){this.parent=e,this.indent=t,this.flags=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n+(n<<6)}var iU=new rU(null,0,0);function aU(e){let t=0;for(let n=0;n<e.length;n++)t+=e.charCodeAt(n)==MH?8-t%8:1;return t}var oU=new Map([[iH,0],[aH,$H],[oH,eU],[sH,eU|$H],[cH,tU],[lH,tU|$H],[uH,tU|eU],[dH,eU|20],[pH,nU],[mH,nU|$H],[hH,nU|eU],[gH,eU|36],[_H,nU|tU],[vH,tU|36],[yH,tU|40],[bH,60]].map(([e,t])=>[e,t|QH])),sU=new zR({start:iU,reduce(e,t,n,r){return e.flags&ZH&&KH.has(t)||(t==rH||t==fH)&&e.flags&QH?e.parent:e},shift(e,t,n,r){return t==NV?new rU(e,aU(r.read(r.pos,n.pos)),0):t==PV?e.parent:t==UV||t==qV||t==XV||t==VV?new rU(e,0,ZH):oU.has(t)?new rU(e,0,oU.get(t)|e.flags&ZH):e},hash(e){return e.hash}}),cU=new ER(e=>{for(let t=0;t<5;t++){if(e.next!=`print`.charCodeAt(t))return;e.advance()}if(!/\w/.test(String.fromCharCode(e.next)))for(let t=0;;t++){let n=e.peek(t);if(!(n==jH||n==MH)){n!=PH&&n!=FH&&n!=kH&&n!=AH&&n!=NH&&e.acceptToken(MV);return}}}),lU=new ER((e,t)=>{let{flags:n}=t.context,r=n&$H?zH:RH,i=(n&eU)>0,a=!(n&tU),o=(n&nU)>0,s=e.pos;for(;!(e.next<0);)if(o&&e.next==IH)if(e.peek(1)==IH)e.advance(2);else{if(e.pos==s){e.acceptToken(VV,1);return}break}else if(a&&e.next==BH){if(e.pos==s){e.advance();let t=e.next;t>=0&&(e.advance(),uU(e,t)),e.acceptToken(BV);return}break}else if(e.next==BH&&!a&&e.peek(1)>-1)e.advance(2);else if(e.next==r&&(!i||e.peek(1)==r&&e.peek(2)==r)){if(e.pos==s){e.acceptToken(HV,i?3:1);return}break}else if(e.next==kH){if(i)e.advance();else if(e.pos==s){e.acceptToken(HV);return}break}else e.advance();e.pos>s&&e.acceptToken(zV)});function uU(e,t){if(t==VH)for(let t=0;t<2&&e.next>=48&&e.next<=55;t++)e.advance();else if(t==HH)for(let t=0;t<2&&JH(e.next);t++)e.advance();else if(t==WH)for(let t=0;t<4&&JH(e.next);t++)e.advance();else if(t==GH)for(let t=0;t<8&&JH(e.next);t++)e.advance();else if(t==UH&&e.next==IH){for(e.advance();e.next>=0&&e.next!=LH&&e.next!=RH&&e.next!=zH&&e.next!=kH;)e.advance();e.next==LH&&e.advance()}}var dU=tL({'async "*" "**" FormatConversion FormatSpec':Q.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":Q.controlKeyword,"in not and or is del":Q.operatorKeyword,"from def class global nonlocal lambda":Q.definitionKeyword,import:Q.moduleKeyword,"with as print":Q.keyword,Boolean:Q.bool,None:Q.null,VariableName:Q.variableName,"CallExpression/VariableName":Q.function(Q.variableName),"FunctionDefinition/VariableName":Q.function(Q.definition(Q.variableName)),"ClassDefinition/VariableName":Q.definition(Q.className),PropertyName:Q.propertyName,"CallExpression/MemberExpression/PropertyName":Q.function(Q.propertyName),Comment:Q.lineComment,Number:Q.number,String:Q.string,FormatString:Q.special(Q.string),Escape:Q.escape,UpdateOp:Q.updateOperator,"ArithOp!":Q.arithmeticOperator,BitOp:Q.bitwiseOperator,CompareOp:Q.compareOperator,AssignOp:Q.definitionOperator,Ellipsis:Q.punctuation,At:Q.meta,"( )":Q.paren,"[ ]":Q.squareBracket,"{ }":Q.brace,".":Q.derefOperator,", ;":Q.separator}),fU={__proto__:null,await:44,or:54,and:56,in:60,not:62,is:64,if:70,else:72,lambda:76,yield:94,from:96,async:102,for:104,None:162,True:164,False:164,del:178,pass:182,break:186,continue:190,return:194,raise:202,import:206,as:208,global:212,nonlocal:214,assert:218,type:223,elif:236,while:240,try:246,except:248,finally:250,with:254,def:258,class:268,match:279,case:285},pU=BR.deserialize({version:14,states:"##jO`QeOOP$}OSOOO&WQtO'#HUOOQS'#Co'#CoOOQS'#Cp'#CpO'vQdO'#CnO*UQtO'#HTOOQS'#HU'#HUOOQS'#DU'#DUOOQS'#HT'#HTO*rQdO'#D_O+VQdO'#DfO+gQdO'#DjO+zOWO'#DuO,VOWO'#DvO.[QtO'#GuOOQS'#Gu'#GuO'vQdO'#GtO0ZQtO'#GtOOQS'#Eb'#EbO0rQdO'#EcOOQS'#Gs'#GsO0|QdO'#GrOOQV'#Gr'#GrO1XQdO'#FYOOQS'#G^'#G^O1^QdO'#FXOOQV'#IS'#ISOOQV'#Gq'#GqOOQV'#Fq'#FqQ`QeOOO'vQdO'#CqO1lQdO'#C}O1sQdO'#DRO2RQdO'#HYO2cQtO'#EVO'vQdO'#EWOOQS'#EY'#EYOOQS'#E['#E[OOQS'#E^'#E^O2wQdO'#E`O3_QdO'#EdO3rQdO'#EfO3zQtO'#EfO1XQdO'#EiO0rQdO'#ElO1XQdO'#EnO0rQdO'#EtO0rQdO'#EwO4VQdO'#EyO4^QdO'#FOO4iQdO'#EzO0rQdO'#FOO1XQdO'#FQO1XQdO'#FVO4nQdO'#F[P4uOdO'#GpPOOO)CBd)CBdOOQS'#Ce'#CeOOQS'#Cf'#CfOOQS'#Cg'#CgOOQS'#Ch'#ChOOQS'#Ci'#CiOOQS'#Cj'#CjOOQS'#Cl'#ClO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO5TQdO'#DoOOQS,5:Y,5:YO5hQdO'#HdOOQS,5:],5:]O5uQ!fO,5:]O5zQtO,59YO1lQdO,59bO1lQdO,59bO1lQdO,59bO8jQdO,59bO8oQdO,59bO8vQdO,59jO8}QdO'#HTO:TQdO'#HSOOQS'#HS'#HSOOQS'#D['#D[O:lQdO,59aO'vQdO,59aO:zQdO,59aOOQS,59y,59yO;PQdO,5:RO'vQdO,5:ROOQS,5:Q,5:QO;_QdO,5:QO;dQdO,5:XO'vQdO,5:XO'vQdO,5:VOOQS,5:U,5:UO;uQdO,5:UO;zQdO,5:WOOOW'#Fy'#FyO<POWO,5:aOOQS,5:a,5:aO<[QdO'#HwOOOW'#Dw'#DwOOOW'#Fz'#FzO<lOWO,5:bOOQS,5:b,5:bOOQS'#F}'#F}O<zQtO,5:iO?lQtO,5=`O@VQ#xO,5=`O@vQtO,5=`OOQS,5:},5:}OA_QeO'#GWOBqQdO,5;^OOQV,5=^,5=^OB|QtO'#IPOCkQdO,5;tOOQS-E:[-E:[OOQV,5;s,5;sO4dQdO'#FQOOQV-E9o-E9oOCsQtO,59]OEzQtO,59iOFeQdO'#HVOFpQdO'#HVO1XQdO'#HVOF{QdO'#DTOGTQdO,59mOGYQdO'#HZO'vQdO'#HZO0rQdO,5=tOOQS,5=t,5=tO0rQdO'#EROOQS'#ES'#ESOGwQdO'#GPOHXQdO,58|OHXQdO,58|O*xQdO,5:oOHgQtO'#H]OOQS,5:r,5:rOOQS,5:z,5:zOHzQdO,5;OOI]QdO'#IOO1XQdO'#H}OOQS,5;Q,5;QOOQS'#GT'#GTOIqQtO,5;QOJPQdO,5;QOJUQdO'#IQOOQS,5;T,5;TOJdQdO'#H|OOQS,5;W,5;WOJuQdO,5;YO4iQdO,5;`O4iQdO,5;cOJ}QtO'#ITO'vQdO'#ITOKXQdO,5;eO4VQdO,5;eO0rQdO,5;jO1XQdO,5;lOK^QeO'#EuOLjQgO,5;fO!!kQdO'#IUO4iQdO,5;jO!!vQdO,5;lO!#OQdO,5;qO!#ZQtO,5;vO'vQdO,5;vPOOO,5=[,5=[P!#bOSO,5=[P!#jOdO,5=[O!&bQtO1G.jO!&iQtO1G.jO!)YQtO1G.jO!)dQtO1G.jO!+}QtO1G.jO!,bQtO1G.jO!,uQdO'#HcO!-TQtO'#GuO0rQdO'#HcO!-_QdO'#HbOOQS,5:Z,5:ZO!-gQdO,5:ZO!-lQdO'#HeO!-wQdO'#HeO!.[QdO,5>OOOQS'#Ds'#DsOOQS1G/w1G/wOOQS1G.|1G.|O!/[QtO1G.|O!/cQtO1G.|O1lQdO1G.|O!0OQdO1G/UOOQS'#DZ'#DZO0rQdO,59tOOQS1G.{1G.{O!0VQdO1G/eO!0gQdO1G/eO!0oQdO1G/fO'vQdO'#H[O!0tQdO'#H[O!0yQtO1G.{O!1ZQdO,59iO!2aQdO,5=zO!2qQdO,5=zO!2yQdO1G/mO!3OQtO1G/mOOQS1G/l1G/lO!3`QdO,5=uO!4VQdO,5=uO0rQdO1G/qO!4tQdO1G/sO!4yQtO1G/sO!5ZQtO1G/qOOQS1G/p1G/pOOQS1G/r1G/rOOOW-E9w-E9wOOQS1G/{1G/{O!5kQdO'#HxO0rQdO'#HxO!5|QdO,5>cOOOW-E9x-E9xOOQS1G/|1G/|OOQS-E9{-E9{O!6[Q#xO1G2zO!6{QtO1G2zO'vQdO,5<jOOQS,5<j,5<jOOQS-E9|-E9|OOQS,5<r,5<rOOQS-E:U-E:UOOQV1G0x1G0xO1XQdO'#GRO!7dQtO,5>kOOQS1G1`1G1`O!8RQdO1G1`OOQS'#DV'#DVO0rQdO,5=qOOQS,5=q,5=qO!8WQdO'#FrO!8cQdO,59oO!8kQdO1G/XO!8uQtO,5=uOOQS1G3`1G3`OOQS,5:m,5:mO!9fQdO'#GtOOQS,5<k,5<kOOQS-E9}-E9}O!9wQdO1G.hOOQS1G0Z1G0ZO!:VQdO,5=wO!:gQdO,5=wO0rQdO1G0jO0rQdO1G0jO!:xQdO,5>jO!;ZQdO,5>jO1XQdO,5>jO!;lQdO,5>iOOQS-E:R-E:RO!;qQdO1G0lO!;|QdO1G0lO!<RQdO,5>lO!<aQdO,5>lO!<oQdO,5>hO!=VQdO,5>hO!=hQdO'#EpO0rQdO1G0tO!=sQdO1G0tO!=xQgO1G0zO!AvQgO1G0}O!EqQdO,5>oO!E{QdO,5>oO!FTQtO,5>oO0rQdO1G1PO!F_QdO1G1PO4iQdO1G1UO!!vQdO1G1WOOQV,5;a,5;aO!FdQfO,5;aO!FiQgO1G1QO!JjQdO'#GZO4iQdO1G1QO4iQdO1G1QO!JzQdO,5>pO!KXQdO,5>pO1XQdO,5>pOOQV1G1U1G1UO!KaQdO'#FSO!KrQ!fO1G1WO!KzQdO1G1WOOQV1G1]1G1]O4iQdO1G1]O!LPQdO1G1]O!LXQdO'#F^OOQV1G1b1G1bO!#ZQtO1G1bPOOO1G2v1G2vP!L^OSO1G2vOOQS,5=},5=}OOQS'#Dp'#DpO0rQdO,5=}O!LfQdO,5=|O!LyQdO,5=|OOQS1G/u1G/uO!MRQdO,5>PO!McQdO,5>PO!MkQdO,5>PO!NOQdO,5>PO!N`QdO,5>POOQS1G3j1G3jOOQS7+$h7+$hO!8kQdO7+$pO#!RQdO1G.|O#!YQdO1G.|OOQS1G/`1G/`OOQS,5<`,5<`O'vQdO,5<`OOQS7+%P7+%PO#!aQdO7+%POOQS-E9r-E9rOOQS7+%Q7+%QO#!qQdO,5=vO'vQdO,5=vOOQS7+$g7+$gO#!vQdO7+%PO##OQdO7+%QO##TQdO1G3fOOQS7+%X7+%XO##eQdO1G3fO##mQdO7+%XOOQS,5<_,5<_O'vQdO,5<_O##rQdO1G3aOOQS-E9q-E9qO#$iQdO7+%]OOQS7+%_7+%_O#$wQdO1G3aO#%fQdO7+%_O#%kQdO1G3gO#%{QdO1G3gO#&TQdO7+%]O#&YQdO,5>dO#&sQdO,5>dO#&sQdO,5>dOOQS'#Dx'#DxO#'UO&jO'#DzO#'aO`O'#HyOOOW1G3}1G3}O#'fQdO1G3}O#'nQdO1G3}O#'yQ#xO7+(fO#(jQtO1G2UP#)TQdO'#GOOOQS,5<m,5<mOOQS-E:P-E:POOQS7+&z7+&zOOQS1G3]1G3]OOQS,5<^,5<^OOQS-E9p-E9pOOQS7+$s7+$sO#)bQdO,5=`O#){QdO,5=`O#*^QtO,5<aO#*qQdO1G3cOOQS-E9s-E9sOOQS7+&U7+&UO#+RQdO7+&UO#+aQdO,5<nO#+uQdO1G4UOOQS-E:Q-E:QO#,WQdO1G4UOOQS1G4T1G4TOOQS7+&W7+&WO#,iQdO7+&WOOQS,5<p,5<pO#,tQdO1G4WOOQS-E:S-E:SOOQS,5<l,5<lO#-SQdO1G4SOOQS-E:O-E:OO1XQdO'#EqO#-jQdO'#EqO#-uQdO'#IRO#-}QdO,5;[OOQS7+&`7+&`O0rQdO7+&`O#.SQgO7+&fO!JmQdO'#GXO4iQdO7+&fO4iQdO7+&iO#2QQtO,5<tO'vQdO,5<tO#2[QdO1G4ZOOQS-E:W-E:WO#2fQdO1G4ZO4iQdO7+&kO0rQdO7+&kOOQV7+&p7+&pO!KrQ!fO7+&rO!KzQdO7+&rO`QeO1G0{OOQV-E:X-E:XO4iQdO7+&lO4iQdO7+&lOOQV,5<u,5<uO#2nQdO,5<uO!JmQdO,5<uOOQV7+&l7+&lO#2yQgO7+&lO#6tQdO,5<vO#7PQdO1G4[OOQS-E:Y-E:YO#7^QdO1G4[O#7fQdO'#IWO#7tQdO'#IWO1XQdO'#IWOOQS'#IW'#IWO#8PQdO'#IVOOQS,5;n,5;nO#8XQdO,5;nO0rQdO'#FUOOQV7+&r7+&rO4iQdO7+&rOOQV7+&w7+&wO4iQdO7+&wO#8^QfO,5;xOOQV7+&|7+&|POOO7+(b7+(bO#8cQdO1G3iOOQS,5<c,5<cO#8qQdO1G3hOOQS-E9u-E9uO#9UQdO,5<dO#9aQdO,5<dO#9tQdO1G3kOOQS-E9v-E9vO#:UQdO1G3kO#:^QdO1G3kO#:nQdO1G3kO#:UQdO1G3kOOQS<<H[<<H[O#:yQtO1G1zOOQS<<Hk<<HkP#;WQdO'#FtO8vQdO1G3bO#;eQdO1G3bO#;jQdO<<HkOOQS<<Hl<<HlO#;zQdO7+)QOOQS<<Hs<<HsO#<[QtO1G1yP#<{QdO'#FsO#=YQdO7+)RO#=jQdO7+)RO#=rQdO<<HwO#=wQdO7+({OOQS<<Hy<<HyO#>nQdO,5<bO'vQdO,5<bOOQS-E9t-E9tOOQS<<Hw<<HwOOQS,5<g,5<gO0rQdO,5<gO#>sQdO1G4OOOQS-E9y-E9yO#?^QdO1G4OO<[QdO'#H{OOOO'#D{'#D{OOOO'#F|'#F|O#?oO&jO,5:fOOOW,5>e,5>eOOOW7+)i7+)iO#?zQdO7+)iO#@SQdO1G2zO#@mQdO1G2zP'vQdO'#FuO0rQdO<<IpO1XQdO1G2YP1XQdO'#GSO#AOQdO7+)pO#AaQdO7+)pOOQS<<Ir<<IrP1XQdO'#GUP0rQdO'#GQOOQS,5;],5;]O#ArQdO,5>mO#BQQdO,5>mOOQS1G0v1G0vOOQS<<Iz<<IzOOQV-E:V-E:VO4iQdO<<JQOOQV,5<s,5<sO4iQdO,5<sOOQV<<JQ<<JQOOQV<<JT<<JTO#BYQtO1G2`P#BdQdO'#GYO#BkQdO7+)uO#BuQgO<<JVO4iQdO<<JVOOQV<<J^<<J^O4iQdO<<J^O!KrQ!fO<<J^O#FpQgO7+&gOOQV<<JW<<JWO#FzQgO<<JWOOQV1G2a1G2aO1XQdO1G2aO#JuQdO1G2aO4iQdO<<JWO1XQdO1G2bP0rQdO'#G[O#KQQdO7+)vO#K_QdO7+)vOOQS'#FT'#FTO0rQdO,5>rO#KgQdO,5>rO#KrQdO,5>rO#K}QdO,5>qO#L`QdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<<Jc<<JcO#LhQdO1G1dOOQS7+)T7+)TP#LmQdO'#FwO#L}QdO1G2OO#MbQdO1G2OO#MrQdO1G2OP#M}QdO'#FxO#N[QdO7+)VO#NlQdO7+)VO#NlQdO7+)VO#NtQdO7+)VO$ UQdO7+(|O8vQdO7+(|OOQSAN>VAN>VO$ oQdO<<LmOOQSAN>cAN>cO0rQdO1G1|O$!PQtO1G1|P$!ZQdO'#FvOOQS1G2R1G2RP$!hQdO'#F{O$!uQdO7+)jO$#`QdO,5>gOOOO-E9z-E9zOOOW<<MT<<MTO$#nQdO7+(fOOQSAN?[AN?[OOQS7+'t7+'tO$$XQdO<<M[OOQS,5<q,5<qO$$jQdO1G4XOOQS-E:T-E:TOOQVAN?lAN?lOOQV1G2_1G2_O4iQdOAN?qO$$xQgOAN?qOOQVAN?xAN?xO4iQdOAN?xOOQV<<JR<<JRO4iQdOAN?rO4iQdO7+'{OOQV7+'{7+'{O1XQdO7+'{OOQVAN?rAN?rOOQS7+'|7+'|O$(sQdO<<MbOOQS1G4^1G4^O0rQdO1G4^OOQS,5<w,5<wO$)QQdO1G4]OOQS-E:Z-E:ZOOQU'#G_'#G_O$)cQfO7+'OO$)nQdO'#F_O$*uQdO7+'jO$+VQdO7+'jOOQS7+'j7+'jO$+bQdO<<LqO$+rQdO<<LqO$+rQdO<<LqO$+zQdO'#H^OOQS<<Lh<<LhO$,UQdO<<LhOOQS7+'h7+'hOOQS'#D|'#D|OOOO1G4R1G4RO$,oQdO1G4RO$,wQdO1G4RP!=hQdO'#GVOOQVG25]G25]O4iQdOG25]OOQVG25dG25dOOQVG25^G25^OOQV<<Kg<<KgO4iQdO<<KgOOQS7+)x7+)xP$-SQdO'#G]OOQU-E:]-E:]OOQV<<Jj<<JjO$-vQtO'#FaOOQS'#Fc'#FcO$.WQdO'#FbO$.xQdO'#FbOOQS'#Fb'#FbO$.}QdO'#IYO$)nQdO'#FiO$)nQdO'#FiO$/fQdO'#FjO$)nQdO'#FkO$/mQdO'#IZOOQS'#IZ'#IZO$0[QdO,5;yOOQS<<KU<<KUO$0dQdO<<KUO$0tQdOANB]O$1UQdOANB]O$1^QdO'#H_OOQS'#H_'#H_O1sQdO'#DcO$1wQdO,5=xOOQSANBSANBSOOOO7+)m7+)mO$2`QdO7+)mOOQVLD*wLD*wOOQVANARANARO5uQ!fO'#GaO$2hQtO,5<SO$)nQdO'#FmOOQS,5<W,5<WOOQS'#Fd'#FdO$3YQdO,5;|O$3_QdO,5;|OOQS'#Fg'#FgO$)nQdO'#G`O$4PQdO,5<QO$4kQdO,5>tO$4{QdO,5>tO1XQdO,5<PO$5^QdO,5<TO$5cQdO,5<TO$)nQdO'#I[O$5hQdO'#I[O$5mQdO,5<UOOQS,5<V,5<VO0rQdO'#FpOOQU1G1e1G1eO4iQdO1G1eOOQSAN@pAN@pO$5rQdOG27wO$6SQdO,59}OOQS1G3d1G3dOOOO<<MX<<MXOOQS,5<{,5<{OOQS-E:_-E:_O$6XQtO'#FaO$6`QdO'#I]O$6nQdO'#I]O$6vQdO,5<XOOQS1G1h1G1hO$6{QdO1G1hO$7QQdO,5<zOOQS-E:^-E:^O$7lQdO,5=OO$8TQdO1G4`OOQS-E:b-E:bOOQS1G1k1G1kOOQS1G1o1G1oO$8eQdO,5>vO$)nQdO,5>vOOQS1G1p1G1pOOQS,5<[,5<[OOQU7+'P7+'PO$+zQdO1G/iO$)nQdO,5<YO$8sQdO,5>wO$8zQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)nQdO'#GdO$9SQdO1G4bO$9^QdO1G4bO$9fQdO1G4bOOQS7+%T7+%TO$9tQdO1G1tO$:SQtO'#FaO$:ZQdO,5<}OOQS,5<},5<}O$:iQdO1G4cOOQS-E:a-E:aO$)nQdO,5<|O$:pQdO,5<|O$:uQdO7+)|OOQS-E:`-E:`O$;PQdO7+)|O$)nQdO,5<ZP$)nQdO'#GcO$;XQdO1G2hO$)nQdO1G2hP$;gQdO'#GbO$;nQdO<<MhO$;xQdO1G1uO$<WQdO7+(SO8vQdO'#C}O8vQdO,59bO8vQdO,59bO8vQdO,59bO$<fQtO,5=`O8vQdO1G.|O0rQdO1G/XO0rQdO7+$pP$<yQdO'#GOO'vQdO'#GtO$=WQdO,59bO$=]QdO,59bO$=dQdO,59mO$=iQdO1G/UO1sQdO'#DRO8vQdO,59j",stateData:"$>S~O%cOS%^OSSOS%]PQ~OPdOVaOfoOhYOopOs!POvqO!PrO!Q{O!T!SO!U!RO!XZO!][O!h`O!r`O!s`O!t`O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#l!QO#o!TO#s!UO#u!VO#z!WO#}hO$P!XO%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~O%]!YO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%j![O%k!]O%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aO~Ok%xXl%xXm%xXn%xXo%xXp%xXs%xXz%xX{%xX!x%xX#g%xX%[%xX%_%xX%z%xXg%xX!T%xX!U%xX%{%xX!W%xX![%xX!Q%xX#[%xXt%xX!m%xX~P%SOfoOhYO!XZO!][O!h`O!r`O!s`O!t`O%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~Oz%wX{%wX#g%wX%[%wX%_%wX%z%wX~Ok!pOl!qOm!oOn!oOo!rOp!sOs!tO!x%wX~P)pOV!zOg!|Oo0cOv0qO!PrO~P'vOV#OOo0cOv0qO!W#PO~P'vOV#SOa#TOo0cOv0qO![#UO~P'vOQ#XO%`#XO%a#ZO~OQ#^OR#[O%`#^O%a#`O~OV%iX_%iXa%iXh%iXk%iXl%iXm%iXn%iXo%iXp%iXs%iXz%iX!X%iX!f%iX%j%iX%k%iX%l%iX%m%iX%n%iX%o%iX%p%iX%q%iX%r%iX%s%iXg%iX!T%iX!U%iX~O&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O{%iX!x%iX#g%iX%[%iX%_%iX%z%iX%{%iX!W%iX![%iX!Q%iX#[%iXt%iX!m%iX~P,eOz#dO{%hX!x%hX#g%hX%[%hX%_%hX%z%hX~Oo0cOv0qO~P'vO#g#gO%[#iO%_#iO~O%uWO~O!T#nO#u!VO#z!WO#}hO~OopO~P'vOV#sOa#tO%uWO{wP~OV#xOo0cOv0qO!Q#yO~P'vO{#{O!x$QO%z#|O#g!yX%[!yX%_!yX~OV#xOo0cOv0qO#g#SX%[#SX%_#SX~P'vOo0cOv0qO#g#WX%[#WX%_#WX~P'vOh$WO%uWO~O!f$YO!r$YO%uWO~OV$eO~P'vO!U$gO#s$hO#u$iO~O{$jO~OV$qO~P'vOS$sO%[$rO%_$rO%c$tO~OV$}Oa$}Og%POo0cOv0qO~P'vOo0cOv0qO{%SO~P'vO&Y%UO~Oa!bOh!iO!X!kO!f!mOVba_bakbalbambanbaobapbasbazba{ba!xba#gba%[ba%_ba%jba%kba%lba%mba%nba%oba%pba%qba%rba%sba%zbagba!Tba!Uba%{ba!Wba![ba!Qba#[batba!mba~On%ZO~Oo%ZO~P'vOo0cO~P'vOk0eOl0fOm0dOn0dOo0mOp0nOs0rOg%wX!T%wX!U%wX%{%wX!W%wX![%wX!Q%wX#[%wX!m%wX~P)pO%{%]Og%vXz%vX!T%vX!U%vX!W%vX{%vX~Og%_Oz%`O!T%dO!U%cO~Og%_O~Oz%gO!T%dO!U%cO!W&SX~O!W%kO~Oz%lO{%nO!T%dO!U%cO![%}X~O![%rO~O![%sO~OQ#XO%`#XO%a%uO~OV%wOo0cOv0qO!PrO~P'vOQ#^OR#[O%`#^O%a%zO~OV!qa_!qaa!qah!qak!qal!qam!qan!qao!qap!qas!qaz!qa{!qa!X!qa!f!qa!x!qa#g!qa%[!qa%_!qa%j!qa%k!qa%l!qa%m!qa%n!qa%o!qa%p!qa%q!qa%r!qa%s!qa%z!qag!qa!T!qa!U!qa%{!qa!W!qa![!qa!Q!qa#[!qat!qa!m!qa~P#yOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P%SOV&OOopOvqO{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P'vOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#g$zX%[$zX%_$zX~P'vO#g#gO%[&TO%_&TO~O!f&UOh&sX%[&sXz&sX#[&sX#g&sX%_&sX#Z&sXg&sX~Oh!iO%[&WO~Okealeameaneaoeapeaseazea{ea!xea#gea%[ea%_ea%zeagea!Tea!Uea%{ea!Wea![ea!Qea#[eatea!mea~P%SOsqazqa{qa#gqa%[qa%_qa%zqa~Ok!pOl!qOm!oOn!oOo!rOp!sO!xqa~PEcO%z&YOz%yX{%yX~O%uWOz%yX{%yX~Oz&]O{wX~O{&_O~Oz%lO#g%}X%[%}X%_%}Xg%}X{%}X![%}X!m%}X%z%}X~OV0lOo0cOv0qO!PrO~P'vO%z#|O#gUa%[Ua%_Ua~Oz&hO#g&PX%[&PX%_&PXn&PX~P%SOz&kO!Q&jO#g#Wa%[#Wa%_#Wa~Oz&lO#[&nO#g&rX%[&rX%_&rXg&rX~O!f$YO!r$YO#Z&qO%uWO~O#Z&qO~Oz&sO#g&tX%[&tX%_&tX~Oz&uO#g&pX%[&pX%_&pX{&pX~O!X&wO%z&xO~Oz&|On&wX~P%SOn'PO~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO%['UO~P'vOt'YO#p'WO#q'XOP#naV#naf#nah#nao#nas#nav#na!P#na!Q#na!T#na!U#na!X#na!]#na!h#na!r#na!s#na!t#na!{#na!}#na#P#na#R#na#T#na#X#na#Z#na#^#na#_#na#a#na#c#na#l#na#o#na#s#na#u#na#z#na#}#na$P#na%X#na%o#na%p#na%t#na%u#na&Z#na&[#na&]#na&^#na&_#na&`#na&a#na&b#na&c#na&d#na&e#na&f#na&g#na&h#na&i#na&j#na%Z#na%_#na~Oz'ZO#[']O{&xX~Oh'_O!X&wO~Oh!iO{$jO!X&wO~O{'eO~P%SO%['hO%_'hO~OS'iO%['hO%_'hO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%k!]O~P!#uO%kWi~P!#uOV!aO_!aOa!bOh!iO!X!kO!f!mO%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%m!_O%n!_O~P!&pO%mWi%nWi~P!&pOa!bOh!iO!X!kO!f!mOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%mWi%nWi%oWi%pWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~OV!aO_!aO%q!aO%r!aO%s!aO~P!)nOVWi_Wi%qWi%rWi%sWi~P!)nO!T%dO!U%cOg&VXz&VX~O%z'kO%{'kO~P,eOz'mOg&UX~Og'oO~Oz'pO{'rO!W&XX~Oo0cOv0qOz'pO{'sO!W&XX~P'vO!W'uO~Om!oOn!oOo!rOp!sOkjisjizji{ji!xji#gji%[ji%_ji%zji~Ol!qO~P!.aOlji~P!.aOk0eOl0fOm0dOn0dOo0mOp0nO~Ot'wO~P!/jOV'|Og'}Oo0cOv0qO~P'vOg'}Oz(OO~Og(QO~O!U(SO~Og(TOz(OO!T%dO!U%cO~P%SOk0eOl0fOm0dOn0dOo0mOp0nOgqa!Tqa!Uqa%{qa!Wqa![qa!Qqa#[qatqa!mqa~PEcOV'|Oo0cOv0qO!W&Sa~P'vOz(WO!W&Sa~O!W(XO~Oz(WO!T%dO!U%cO!W&Sa~P%SOV(]Oo0cOv0qO![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~P'vOz(^O![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~O![(aO~Oz(^O!T%dO!U%cO![%}a~P%SOz(dO!T%dO!U%cO![&Ta~P%SOz(gO{&lX![&lX!m&lX%z&lX~O{(kO![(mO!m(nO%z(jO~OV&OOopOvqO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~P'vOz(pO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~O!f&UOh&sa%[&saz&sa#[&sa#g&sa%_&sa#Z&sag&sa~O%[(uO~OV#sOa#tO%uWO~Oz&]O{wa~OopOvqO~P'vOz(^O#g%}a%[%}a%_%}ag%}a{%}a![%}a!m%}a%z%}a~P%SOz(zO#g%hX%[%hX%_%hX%z%hX~O%z#|O#gUi%[Ui%_Ui~O#g&Pa%[&Pa%_&Pan&Pa~P'vOz(}O#g&Pa%[&Pa%_&Pan&Pa~O%uWO#g&ra%[&ra%_&rag&ra~Oz)SO#g&ra%[&ra%_&rag&ra~Og)VO~OV)WOh$WO%uWO~O#Z)XO~O%uWO#g&ta%[&ta%_&ta~Oz)ZO#g&ta%[&ta%_&ta~Oo0cOv0qO#g&pa%[&pa%_&pa{&pa~P'vOz)^O#g&pa%[&pa%_&pa{&pa~OV)`Oa)`O%uWO~O%z)eO~Ot)hO#j)gOP#hiV#hif#hih#hio#his#hiv#hi!P#hi!Q#hi!T#hi!U#hi!X#hi!]#hi!h#hi!r#hi!s#hi!t#hi!{#hi!}#hi#P#hi#R#hi#T#hi#X#hi#Z#hi#^#hi#_#hi#a#hi#c#hi#l#hi#o#hi#s#hi#u#hi#z#hi#}#hi$P#hi%X#hi%o#hi%p#hi%t#hi%u#hi&Z#hi&[#hi&]#hi&^#hi&_#hi&`#hi&a#hi&b#hi&c#hi&d#hi&e#hi&f#hi&g#hi&h#hi&i#hi&j#hi%Z#hi%_#hi~Ot)iOP#kiV#kif#kih#kio#kis#kiv#ki!P#ki!Q#ki!T#ki!U#ki!X#ki!]#ki!h#ki!r#ki!s#ki!t#ki!{#ki!}#ki#P#ki#R#ki#T#ki#X#ki#Z#ki#^#ki#_#ki#a#ki#c#ki#l#ki#o#ki#s#ki#u#ki#z#ki#}#ki$P#ki%X#ki%o#ki%p#ki%t#ki%u#ki&Z#ki&[#ki&]#ki&^#ki&_#ki&`#ki&a#ki&b#ki&c#ki&d#ki&e#ki&f#ki&g#ki&h#ki&i#ki&j#ki%Z#ki%_#ki~OV)kOn&wa~P'vOz)lOn&wa~Oz)lOn&wa~P%SOn)pO~O%Y)tO~Ot)wO#p'WO#q)vOP#niV#nif#nih#nio#nis#niv#ni!P#ni!Q#ni!T#ni!U#ni!X#ni!]#ni!h#ni!r#ni!s#ni!t#ni!{#ni!}#ni#P#ni#R#ni#T#ni#X#ni#Z#ni#^#ni#_#ni#a#ni#c#ni#l#ni#o#ni#s#ni#u#ni#z#ni#}#ni$P#ni%X#ni%o#ni%p#ni%t#ni%u#ni&Z#ni&[#ni&]#ni&^#ni&_#ni&`#ni&a#ni&b#ni&c#ni&d#ni&e#ni&f#ni&g#ni&h#ni&i#ni&j#ni%Z#ni%_#ni~OV)zOo0cOv0qO{$jO~P'vOo0cOv0qO{&xa~P'vOz*OO{&xa~OV*SOa*TOg*WO%q*UO%uWO~O{$jO&{*YO~Oh'_O~Oh!iO{$jO~O%[*_O~O%[*aO%_*aO~OV$}Oa$}Oo0cOv0qOg&Ua~P'vOz*dOg&Ua~Oo0cOv0qO{*gO!W&Xa~P'vOz*hO!W&Xa~Oo0cOv0qOz*hO{*kO!W&Xa~P'vOo0cOv0qOz*hO!W&Xa~P'vOz*hO{*kO!W&Xa~Om0dOn0dOo0mOp0nOgjikjisjizji!Tji!Uji%{ji!Wji{ji![ji#gji%[ji%_ji!Qji#[jitji!mji%zji~Ol0fO~P!NkOlji~P!NkOV'|Og*pOo0cOv0qO~P'vOn*rO~Og*pOz*tO~Og*uO~OV'|Oo0cOv0qO!W&Si~P'vOz*vO!W&Si~O!W*wO~OV(]Oo0cOv0qO![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~P'vOz*zO!T%dO!U%cO![&Ti~Oz*}O![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~O![+OO~Oa+QOo0cOv0qO![&Ti~P'vOz*zO![&Ti~O![+SO~OV+UOo0cOv0qO{&la![&la!m&la%z&la~P'vOz+VO{&la![&la!m&la%z&la~O!]+YO&n+[O![!nX~O![+^O~O{(kO![+_O~O{(kO![+_O!m+`O~OV&OOopOvqO{%hq!x%hq#g%hq%[%hq%_%hq%z%hq~P'vOz$ri{$ri!x$ri#g$ri%[$ri%_$ri%z$ri~P%SOV&OOopOvqO~P'vOV&OOo0cOv0qO#g%ha%[%ha%_%ha%z%ha~P'vOz+aO#g%ha%[%ha%_%ha%z%ha~Oz$ia#g$ia%[$ia%_$ian$ia~P%SO#g&Pi%[&Pi%_&Pin&Pi~P'vOz+dO#g#Wq%[#Wq%_#Wq~O#[+eOz$va#g$va%[$va%_$vag$va~O%uWO#g&ri%[&ri%_&rig&ri~Oz+gO#g&ri%[&ri%_&rig&ri~OV+iOh$WO%uWO~O%uWO#g&ti%[&ti%_&ti~Oo0cOv0qO#g&pi%[&pi%_&pi{&pi~P'vO{#{Oz#eX!W#eX~Oz+mO!W&uX~O!W+oO~Ot+rO#j)gOP#hqV#hqf#hqh#hqo#hqs#hqv#hq!P#hq!Q#hq!T#hq!U#hq!X#hq!]#hq!h#hq!r#hq!s#hq!t#hq!{#hq!}#hq#P#hq#R#hq#T#hq#X#hq#Z#hq#^#hq#_#hq#a#hq#c#hq#l#hq#o#hq#s#hq#u#hq#z#hq#}#hq$P#hq%X#hq%o#hq%p#hq%t#hq%u#hq&Z#hq&[#hq&]#hq&^#hq&_#hq&`#hq&a#hq&b#hq&c#hq&d#hq&e#hq&f#hq&g#hq&h#hq&i#hq&j#hq%Z#hq%_#hq~On$|az$|a~P%SOV)kOn&wi~P'vOz+yOn&wi~Oz,TO{$jO#[,TO~O#q,VOP#nqV#nqf#nqh#nqo#nqs#nqv#nq!P#nq!Q#nq!T#nq!U#nq!X#nq!]#nq!h#nq!r#nq!s#nq!t#nq!{#nq!}#nq#P#nq#R#nq#T#nq#X#nq#Z#nq#^#nq#_#nq#a#nq#c#nq#l#nq#o#nq#s#nq#u#nq#z#nq#}#nq$P#nq%X#nq%o#nq%p#nq%t#nq%u#nq&Z#nq&[#nq&]#nq&^#nq&_#nq&`#nq&a#nq&b#nq&c#nq&d#nq&e#nq&f#nq&g#nq&h#nq&i#nq&j#nq%Z#nq%_#nq~O#[,WOz%Oa{%Oa~Oo0cOv0qO{&xi~P'vOz,YO{&xi~O{#{O%z,[Og&zXz&zX~O%uWOg&zXz&zX~Oz,`Og&yX~Og,bO~O%Y,eO~O!T%dO!U%cOg&Viz&Vi~OV$}Oa$}Oo0cOv0qOg&Ui~P'vO{,hOz$la!W$la~Oo0cOv0qO{,iOz$la!W$la~P'vOo0cOv0qO{*gO!W&Xi~P'vOz,lO!W&Xi~Oo0cOv0qOz,lO!W&Xi~P'vOz,lO{,oO!W&Xi~Og$hiz$hi!W$hi~P%SOV'|Oo0cOv0qO~P'vOn,qO~OV'|Og,rOo0cOv0qO~P'vOV'|Oo0cOv0qO!W&Sq~P'vOz$gi![$gi#g$gi%[$gi%_$gig$gi{$gi!m$gi%z$gi~P%SOV(]Oo0cOv0qO~P'vOa+QOo0cOv0qO![&Tq~P'vOz,sO![&Tq~O![,tO~OV(]Oo0cOv0qO![%}q#g%}q%[%}q%_%}qg%}q{%}q!m%}q%z%}q~P'vO{,uO~OV+UOo0cOv0qO{&li![&li!m&li%z&li~P'vOz,zO{&li![&li!m&li%z&li~O!]+YO&n+[O![!na~O{(kO![,}O~OV&OOo0cOv0qO#g%hi%[%hi%_%hi%z%hi~P'vOz-OO#g%hi%[%hi%_%hi%z%hi~O%uWO#g&rq%[&rq%_&rqg&rq~Oz-RO#g&rq%[&rq%_&rqg&rq~OV)`Oa)`O%uWO!W&ua~Oz-TO!W&ua~On$|iz$|i~P%SOV)kO~P'vOV)kOn&wq~P'vOt-XOP#myV#myf#myh#myo#mys#myv#my!P#my!Q#my!T#my!U#my!X#my!]#my!h#my!r#my!s#my!t#my!{#my!}#my#P#my#R#my#T#my#X#my#Z#my#^#my#_#my#a#my#c#my#l#my#o#my#s#my#u#my#z#my#}#my$P#my%X#my%o#my%p#my%t#my%u#my&Z#my&[#my&]#my&^#my&_#my&`#my&a#my&b#my&c#my&d#my&e#my&f#my&g#my&h#my&i#my&j#my%Z#my%_#my~O%Z-]O%_-]O~P`O#q-^OP#nyV#nyf#nyh#nyo#nys#nyv#ny!P#ny!Q#ny!T#ny!U#ny!X#ny!]#ny!h#ny!r#ny!s#ny!t#ny!{#ny!}#ny#P#ny#R#ny#T#ny#X#ny#Z#ny#^#ny#_#ny#a#ny#c#ny#l#ny#o#ny#s#ny#u#ny#z#ny#}#ny$P#ny%X#ny%o#ny%p#ny%t#ny%u#ny&Z#ny&[#ny&]#ny&^#ny&_#ny&`#ny&a#ny&b#ny&c#ny&d#ny&e#ny&f#ny&g#ny&h#ny&i#ny&j#ny%Z#ny%_#ny~Oz-aO{$jO#[-aO~Oo0cOv0qO{&xq~P'vOz-dO{&xq~O%z,[Og&zaz&za~O{#{Og&zaz&za~OV*SOa*TO%q*UO%uWOg&ya~Oz-hOg&ya~O$S-lO~OV$}Oa$}Oo0cOv0qO~P'vOo0cOv0qO{-mOz$li!W$li~P'vOo0cOv0qOz$li!W$li~P'vO{-mOz$li!W$li~Oo0cOv0qO{*gO~P'vOo0cOv0qO{*gO!W&Xq~P'vOz-pO!W&Xq~Oo0cOv0qOz-pO!W&Xq~P'vOs-sO!T%dO!U%cOg&Oq!W&Oq![&Oqz&Oq~P!/jOa+QOo0cOv0qO![&Ty~P'vOz$ji![$ji~P%SOa+QOo0cOv0qO~P'vOV+UOo0cOv0qO~P'vOV+UOo0cOv0qO{&lq![&lq!m&lq%z&lq~P'vO{(kO![-xO!m-yO%z-wO~OV&OOo0cOv0qO#g%hq%[%hq%_%hq%z%hq~P'vO%uWO#g&ry%[&ry%_&ryg&ry~OV)`Oa)`O%uWO!W&ui~Ot-}OP#m!RV#m!Rf#m!Rh#m!Ro#m!Rs#m!Rv#m!R!P#m!R!Q#m!R!T#m!R!U#m!R!X#m!R!]#m!R!h#m!R!r#m!R!s#m!R!t#m!R!{#m!R!}#m!R#P#m!R#R#m!R#T#m!R#X#m!R#Z#m!R#^#m!R#_#m!R#a#m!R#c#m!R#l#m!R#o#m!R#s#m!R#u#m!R#z#m!R#}#m!R$P#m!R%X#m!R%o#m!R%p#m!R%t#m!R%u#m!R&Z#m!R&[#m!R&]#m!R&^#m!R&_#m!R&`#m!R&a#m!R&b#m!R&c#m!R&d#m!R&e#m!R&f#m!R&g#m!R&h#m!R&i#m!R&j#m!R%Z#m!R%_#m!R~Oo0cOv0qO{&xy~P'vOV*SOa*TO%q*UO%uWOg&yi~O$S-lO%Z.VO%_.VO~OV.aOh._O!X.^O!].`O!h.YO!s.[O!t.[O%p.XO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O~Oo0cOv0qOz$lq!W$lq~P'vO{.fOz$lq!W$lq~Oo0cOv0qO{*gO!W&Xy~P'vOz.gO!W&Xy~Oo0cOv.kO~P'vOs-sO!T%dO!U%cOg&Oy!W&Oy![&Oyz&Oy~P!/jO{(kO![.nO~O{(kO![.nO!m.oO~OV*SOa*TO%q*UO%uWO~Oh.tO!f.rOz$TX#[$TX%j$TXg$TX~Os$TX{$TX!W$TX![$TX~P$-bO%o.vO%p.vOs$UXz$UX{$UX#[$UX%j$UX!W$UXg$UX![$UX~O!h.xO~Oz.|O#[/OO%j.yOs&|X{&|X!W&|Xg&|X~Oa/RO~P$)zOh.tOs&}Xz&}X{&}X#[&}X%j&}X!W&}Xg&}X![&}X~Os/VO{$jO~Oo0cOv0qOz$ly!W$ly~P'vOo0cOv0qO{*gO!W&X!R~P'vOz/ZO!W&X!R~Og&RXs&RX!T&RX!U&RX!W&RX![&RXz&RX~P!/jOs-sO!T%dO!U%cOg&Qa!W&Qa![&Qaz&Qa~O{(kO![/^O~O!f.rOh$[as$[az$[a{$[a#[$[a%j$[a!W$[ag$[a![$[a~O!h/eO~O%o.vO%p.vOs$Uaz$Ua{$Ua#[$Ua%j$Ua!W$Uag$Ua![$Ua~O%j.yOs$Yaz$Ya{$Ya#[$Ya!W$Yag$Ya![$Ya~Os&|a{&|a!W&|ag&|a~P$)nOz/jOs&|a{&|a!W&|ag&|a~O!W/mO~Og/mO~O{/oO~O![/pO~Oo0cOv0qO{*gO!W&X!Z~P'vO{/sO~O%z/tO~P$-bOz/uO#[/OO%j.yOg'PX~Oz/uOg'PX~Og/wO~O!h/xO~O#[/OOs%Saz%Sa{%Sa%j%Sa!W%Sag%Sa![%Sa~O#[/OO%j.yOs%Waz%Wa{%Wa!W%Wag%Wa~Os&|i{&|i!W&|ig&|i~P$)nOz/zO#[/OO%j.yO!['Oa~Og'Pa~P$)nOz0SOg'Pa~Oa0UO!['Oi~P$)zOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-bO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)nO{0^O~Oa0UO!['Oq~P$)zOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)zOa0UO!['Oy~P$)zO#[/OO%j.yOg$ciz$ci~O#[/OO%j.yOz%Uq![%Uq~Oz+aO#g%ha%[%ha%_%ha%z%ha~P%SOV&OOo0cOv0qO~P'vOn0hO~Oo0hO~P'vO{0iO~Ot0jO~P!/jO&]&Z&j&h&i&g&f&d&e&c&b&`&a&_&^&[%u~",goto:"!=j'QPPPPPP'RP'Z*s+[+t,_,y-fP.SP'Z.r.r'ZPPP'Z2[PPPPPP2[5PPP5PP7b7k=sPP=v>h>kPP'Z'ZPP>zPP'Z'ZPP'Z'Z'Z'Z'Z?O?w'ZP?zP@QDXGuGyPG|HWH['ZPPPH_Hk'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHqH}IVPI^IdPI^PI^I^PPPI^PKrPK{LVL]KrPI^LfPI^PLmLsPLwM]MzNeLwLwNkNxLwLwLwLw! ^! d! g! l! o! y!!P!!]!!o!!u!#P!#V!#s!#y!$P!$Z!$a!$g!$y!%T!%Z!%a!%k!%q!%w!%}!&T!&Z!&e!&k!&u!&{!'U!'[!'k!'s!'}!(UPPPPPPPPPPP!([!(_!(e!(n!(x!)TPPPPPPPPPPPP!-u!/Z!3^!6oPP!6w!7W!7a!8Y!8P!8c!8i!8l!8o!8r!8z!9jPPPPPPPPPPPPPPPPP!9m!9q!9wP!:]!:a!:m!:v!;S!;j!;m!;p!;v!;|!<S!<VP!<_!<h!=d!=g]eOn#g$j)t,P'}`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r{!cQ#c#p$R$d$p%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g}!dQ#c#p$R$d$p$u%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!P!eQ#c#p$R$d$p$u$v%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!R!fQ#c#p$R$d$p$u$v$w%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!T!gQ#c#p$R$d$p$u$v$w$x%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!V!hQ#c#p$R$d$p$u$v$w$x$y%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!Z!hQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g'}TOTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r&eVOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0r%oXOYZ[dnrxy}!P!Q!U!i!k#[#d#g#y#{#}$Q$h$j$}%S%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#vqQ/[.kR0o0q't`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rh#jhz{$W$Z&l&q)S)X+f+g-RW#rq&].k0qQ$]|Q$a!OQ$n!VQ$o!WW$|!i'm*d,gS&[#s#tQ'S$iQ(s&UQ)U&nU)Y&s)Z+jW)a&w+m-T-{Q*Q']W*R'_,`-h.TQ+l)`S,_*S*TQ-Q+eQ-_,TQ-c,WQ.R-al.W-l.^._.a.z.|/R/j/o/t/y0U0Z0^Q/S.`Q/a.tQ/l/OU0P/u0S0[X0V/z0W0_0`R&Z#r!_!wYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZR%^!vQ!{YQ%x#[Q&d#}Q&g$QR,{+YT.j-s/s!Y!jQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gQ&X#kQ'c$oR*^'dR'l$|Q%V!mR/_.r'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rS#a_#b!P.[-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rT#a_#bT#^^#_R(o%xa(l%x(n(o+`,{-y-z.oT+[(k+]R-z,{Q$PsQ+l)aQ,^*RR-e,_X#}s$O$P&fQ&y$aQ'a$nQ'd$oR)s'SQ)b&wV-S+m-T-{ZgOn$j)t,PXkOn)t,PQ$k!TQ&z$bQ&{$cQ'^$mQ'b$oQ)q'RQ)x'WQ){'XQ)|'YQ*Z'`S*]'c'dQ+s)gQ+u)hQ+v)iQ+z)oS+|)r*[Q,Q)vQ,R)wS,S)y)zQ,d*^Q-V+rQ-W+tQ-Y+{S-Z+},OQ-`,UQ-b,VQ-|-XQ.O-[Q.P-^Q.Q-_Q.p-}Q.q.RQ/W.dR/r/XWkOn)t,PR#mjQ'`$nS)r'S'aR,O)sQ,]*RR-f,^Q*['`Q+})rR-[,OZiOjn)t,PQ'f$pR*`'gT-j,e-ku.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^t.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^Q/S.`X0V/z0W0_0`!P.Z-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`Q.w.YR/f.xg.z.].{/b/i/n/|0O0Q0]0a0bu.b-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^X.u.W.b/a0PR/c.tV0R/u0S0[R/X.dQnOS#on,PR,P)tQ&^#uR(x&^S%m#R#wS(_%m(bT(b%p&`Q%a!yQ%h!}W(P%a%h(U(YQ(U%eR(Y%jQ&i$RR)O&iQ(e%qQ*{(`T+R(e*{Q'n%OR*e'nS'q%R%SY*i'q*j,m-q.hU*j'r's'tU,m*k*l*mS-q,n,oR.h-rQ#Y]R%t#YQ#_^R%y#_Q(h%vS+W(h+XR+X(iQ+](kR,|+]Q#b_R%{#bQ#ebQ%}#cW&Q#e%}({+bQ({&cR+b0gQ$OsS&e$O&fR&f$PQ&v$_R)_&vQ&V#jR(t&VQ&m$VS)T&m+hR+h)UQ$Z{R&p$ZQ&t$]R)[&tQ+n)bR-U+nQ#hfR&S#hQ)f&zR+q)fQ&}$dS)m&})nR)n'OQ'V$kR)u'VQ'[$lS*P'[,ZR,Z*QQ,a*VR-i,aWjOn)t,PR#ljQ-k,eR.U-kd.{.]/b/i/n/|0O0Q0]0a0bR/h.{U.s.W/a0PR/`.sQ/{/nS0X/{0YR0Y/|S/v/b/cR0T/vQ.}.]R/k.}R!ZPXmOn)t,PWlOn)t,PR'T$jYfOn$j)t,PR&R#g[sOn#g$j)t,PR&d#}&dQOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0rQ!nTQ#caQ#poU$Rt%c(SS$d!R$gQ$p!XQ$u!cQ$v!dQ$w!eQ$x!fQ$y!gQ$z!hQ%e!zQ%j#OQ%p#SQ%q#TQ&`#xQ'O$eQ'g$qQ(q&OU(|&h(}+cW)j&|)l+x+yQ*o'|Q*x(]Q+w)kQ,v+QR0g0lQ!yYQ!}ZQ$b!PQ$c!QQ%R!kQ't%S^'{%`%g(O(W*q*t*v^*f'p*h,k,l-p.g/ZQ*l'rQ*m'sQ+t)gQ,j*gQ,n*kQ-n,hQ-o,iQ-r,oQ.e-mR/Y.f[bOn#g$j)t,P!^!vYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZQ#R[Q#fdS#wrxQ$UyW$_}$Q'P)pS$l!U$hW${!i'm*d,gS%v#[+Y`&P#d%|(p(r(z+a-O0kQ&a#yQ&b#{Q&c#}Q'j$}Q'z%^W([%l(^*y*}Q(`%nQ(i%wQ(v&ZS(y&_0iQ)P&jQ)Q&kU)]&u)^+kQ)d&xQ)y'WY)}'Z*O,X,Y-dQ*b'lS*n'w0jW+P(d*z,s,wW+T(g+V,y,zQ+p)eQ,U)zQ,c*YQ,x+UQ-P+dQ-e,]Q-v,uQ.S-fR/q/VhUOn#d#g$j%|&_'w(p(r)t,P%U!uYZ[drxy}!P!Q!U!i!k#[#y#{#}$Q$h$}%S%^%`%g%l%n%w&Z&j&k&u&x'P'W'Z'l'm'p'r's(O(W(^(d(g(z)^)e)g)p)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#qpW%W!o!s0d0nQ%X!pQ%Y!qQ%[!tQ%f0cS'v%Z0hQ'x0eQ'y0fQ,p*rQ-u,qS.i-s/sR0p0rU#uq.k0qR(w&][cOn#g$j)t,PZ!xY#[#}$Q+YQ#W[Q#zrR$TxQ%b!yQ%i!}Q%o#RQ'j${Q(V%eQ(Z%jQ(c%pQ(f%qQ*|(`Q,f*bQ-t,pQ.m-uR/].lQ$StQ(R%cR*s(SQ.l-sR/}/sR#QZR#V[R%Q!iQ%O!iV*c'm*d,g!Z!lQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gR%T!kT#]^#_Q%x#[R,{+YQ(m%xS+_(n(oQ,}+`Q-x,{S.n-y-zR/^.oT+Z(k+]Q$`}Q&g$QQ)o'PR+{)pQ$XzQ)W&qR+i)XQ$XzQ&o$WQ)W&qR+i)XQ#khW$Vz$W&q)XQ$[{Q&r$ZZ)R&l)S+f+g-RR$^|R)c&wXlOn)t,PQ$f!RR'Q$gQ$m!UR'R$hR*X'_Q*V'_V-g,`-h.TQ.d-lQ/P.^R/Q._U.]-l.^._Q/U.aQ/b.tQ/g.zU/i.|/j/yQ/n/RQ/|/oQ0O/tU0Q/u0S0[Q0]0UQ0a0ZR0b0^R/T.`R/d.t",nodeNames:`⚠ print Escape { Comment Script AssignStatement * BinaryExpression BitOp BitOp BitOp BitOp ArithOp ArithOp @ ArithOp ** UnaryExpression ArithOp BitOp AwaitExpression await ) ( ParenthesizedExpression BinaryExpression or and CompareOp in not is UnaryExpression ConditionalExpression if else LambdaExpression lambda ParamList VariableName AssignOp , : NamedExpression AssignOp YieldExpression yield from TupleExpression ComprehensionExpression async for LambdaExpression ] [ ArrayExpression ArrayComprehensionExpression } { DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression CallExpression ArgList AssignOp MemberExpression . PropertyName Number String FormatString FormatReplacement FormatSelfDoc FormatConversion FormatSpec FormatReplacement FormatSelfDoc ContinuedString Ellipsis None Boolean TypeDef AssignOp UpdateStatement UpdateOp ExpressionStatement DeleteStatement del PassStatement pass BreakStatement break ContinueStatement continue ReturnStatement return YieldStatement PrintStatement RaiseStatement raise ImportStatement import as ScopeStatement global nonlocal AssertStatement assert TypeDefinition type TypeParamList TypeParam StatementGroup ; IfStatement Body elif WhileStatement while ForStatement TryStatement try except finally WithStatement with FunctionDefinition def ParamList AssignOp TypeDef ClassDefinition class DecoratedStatement Decorator At MatchStatement match MatchBody MatchClause case CapturePattern LiteralPattern ArithOp ArithOp AsPattern OrPattern LogicOp AttributePattern SequencePattern MappingPattern StarPattern ClassPattern PatternArgList KeywordPattern KeywordPattern Guard`,maxTerm:277,context:sU,nodeProps:[[`isolate`,-5,4,71,72,73,77,``],[`group`,-15,6,85,87,88,90,92,94,96,98,99,100,102,105,108,110,`Statement Statement`,-22,8,18,21,25,40,49,50,56,57,60,61,62,63,64,67,70,71,72,79,80,81,82,`Expression`,-10,114,116,119,121,122,126,128,133,135,138,`Statement`,-9,143,144,147,148,150,151,152,153,154,`Pattern`],[`openedBy`,23,`(`,54,`[`,58,`{`],[`closedBy`,24,`)`,55,`]`,59,`}`]],propSources:[dU],skippedNodes:[0,4],repeatNodeCount:34,tokenData:"!2|~R!`OX%TXY%oY[%T[]%o]p%Tpq%oqr'ars)Yst*xtu%Tuv,dvw-hwx.Uxy/tyz0[z{0r{|2S|}2p}!O3W!O!P4_!P!Q:Z!Q!R;k!R![>_![!]Do!]!^Es!^!_FZ!_!`Gk!`!aHX!a!b%T!b!cIf!c!dJU!d!eK^!e!hJU!h!i!#f!i!tJU!t!u!,|!u!wJU!w!x!.t!x!}JU!}#O!0S#O#P&o#P#Q!0j#Q#R!1Q#R#SJU#S#T%T#T#UJU#U#VK^#V#YJU#Y#Z!#f#Z#fJU#f#g!,|#g#iJU#i#j!.t#j#oJU#o#p!1n#p#q!1s#q#r!2a#r#s!2f#s$g%T$g;'SJU;'S;=`KW<%lOJU`%YT&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T`%lP;=`<%l%To%v]&n`%c_OX%TXY%oY[%T[]%o]p%Tpq%oq#O%T#O#P&o#P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To&tX&n`OY%TYZ%oZ]%T]^%o^#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc'f[&n`O!_%T!_!`([!`#T%T#T#U(r#U#f%T#f#g(r#g#h(r#h#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(cTmR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(yT!mR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk)aV&n`&[ZOr%Trs)vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk){V&n`Or%Trs*bs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk*iT&n`&^ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To+PZS_&n`OY*xYZ%TZ]*x]^%T^#o*x#o#p+r#p#q*x#q#r+r#r;'S*x;'S;=`,^<%lO*x_+wTS_OY+rZ]+r^;'S+r;'S;=`,W<%lO+r_,ZP;=`<%l+ro,aP;=`<%l*xj,kV%rQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-XT!xY&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-oV%lQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.]V&n`&ZZOw%Twx.rx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.wV&n`Ow%Twx/^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/eT&n`&]ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/{ThZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc0cTgR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk0yXVZ&n`Oz%Tz{1f{!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk1mVaR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk2ZV%oZ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc2wTzR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To3_W%pZ&n`O!_%T!_!`-Q!`!a3w!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Td4OT&{S&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk4fX!fQ&n`O!O%T!O!P5R!P!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5WV&n`O!O%T!O!P5m!P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5tT!rZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti6[a!hX&n`O!Q%T!Q![6T![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S6T#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti7fZ&n`O{%T{|8X|}%T}!O8X!O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8^V&n`O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8z]!hX&n`O!Q%T!Q![8s![!l%T!l!m9s!m#R%T#R#S8s#S#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti9zT!hX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk:bX%qR&n`O!P%T!P!Q:}!Q!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj;UV%sQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti;ro!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!d%T!d!e?q!e!g%T!g!h7a!h!l%T!l!m9s!m!q%T!q!rA]!r!z%T!z!{Bq!{#R%T#R#S>_#S#U%T#U#V?q#V#X%T#X#Y7a#Y#^%T#^#_9s#_#c%T#c#dA]#d#l%T#l#mBq#m#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti=xV&n`O!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti>fc!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S>_#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti?vY&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti@mY!hX&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiAbX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBUX!hX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBv]&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiCv]!hX&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToDvV{_&n`O!_%T!_!`E]!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TcEdT%{R&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkEzT#gZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkFbXmR&n`O!^%T!^!_F}!_!`([!`!a([!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjGUV%mQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkGrV%zZ&n`O!_%T!_!`([!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkH`WmR&n`O!_%T!_!`([!`!aHx!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjIPV%nQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkIoV_Q#}P&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToJ_]&n`&YS%uZO!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoKZP;=`<%lJUoKge&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!tJU!t!uLx!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#gLx#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoMRa&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUkN_V&n`&`ZOr%TrsNts#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkNyV&n`Or%Trs! `s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! gT&n`&bZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! }V&n`&_ZOw%Twx!!dx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!!iV&n`Ow%Twx!#Ox#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!#VT&n`&aZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!#oe&n`&YS%uZOr%Trs!%Qsw%Twx!&px!Q%T!Q![JU![!c%T!c!tJU!t!u!(`!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#g!(`#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!%XV&n`&dZOr%Trs!%ns#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!%sV&n`Or%Trs!&Ys#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&aT&n`&fZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&wV&n`&cZOw%Twx!'^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!'cV&n`Ow%Twx!'xx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!(PT&n`&eZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!(ia&n`&YS%uZOr%Trs!)nsw%Twx!+^x!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!)uV&n`&hZOr%Trs!*[s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*aV&n`Or%Trs!*vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*}T&n`&jZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!+eV&n`&gZOw%Twx!+zx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,PV&n`Ow%Twx!,fx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,mT&n`&iZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!-Vi&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!dJU!d!eLx!e!hJU!h!i!(`!i!}JU!}#R%T#R#SJU#S#T%T#T#UJU#U#VLx#V#YJU#Y#Z!(`#Z#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUo!.}a&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!0ZT!XZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc!0qT!WR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj!1XV%kQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!1sO!]~k!1zV%jR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!2fO![~i!2mT%tX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T",tokenizers:[cU,XH,YH,lU,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:e=>fU[e]||-1}],tokenPrec:7668}),mU=1,hU=2,gU=3,_U=4,vU=5,yU=36,bU=37,xU=38,SU=11,CU=13;function wU(e){return e==45||e==46||e==58||e>=65&&e<=90||e==95||e>=97&&e<=122||e>=161}function TU(e){return e==9||e==10||e==13||e==32}var EU=null,DU=null,OU=0;function kU(e,t){let n=e.pos+t;if(DU==e&&OU==n)return EU;for(;TU(e.peek(t));)t++;let r=``;for(;;){let n=e.peek(t);if(!wU(n))break;r+=String.fromCharCode(n),t++}return DU=e,OU=n,EU=r||null}function AU(e,t){this.name=e,this.parent=t}var jU=new zR({start:null,shift(e,t,n,r){return t==mU?new AU(kU(r,1)||``,e):e},reduce(e,t){return t==SU&&e?e.parent:e},reuse(e,t,n,r){let i=t.type.id;return i==mU||i==CU?new AU(kU(r,1)||``,e):e},strict:!1}),MU=new ER((e,t)=>{if(e.next==60){if(e.advance(),e.next==47){e.advance();let n=kU(e,0);if(!n)return e.acceptToken(vU);if(t.context&&n==t.context.name)return e.acceptToken(hU);for(let r=t.context;r;r=r.parent)if(r.name==n)return e.acceptToken(gU,-2);e.acceptToken(_U)}else if(e.next!=33&&e.next!=63)return e.acceptToken(mU)}},{contextual:!0});function NU(e,t){return new ER(n=>{let r=0,i=t.charCodeAt(0);scan:for(;!(n.next<0);n.advance(),r++)if(n.next==i){for(let e=1;e<t.length;e++)if(n.peek(e)!=t.charCodeAt(e))continue scan;break}r&&n.acceptToken(e)})}var PU=NU(yU,`-->`),FU=NU(bU,`?>`),IU=NU(xU,`]]>`),LU=tL({Text:Q.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":Q.angleBracket,TagName:Q.tagName,"MismatchedCloseTag/TagName":[Q.tagName,Q.invalid],AttributeName:Q.attributeName,AttributeValue:Q.attributeValue,Is:Q.definitionOperator,"EntityReference CharacterReference":Q.character,Comment:Q.blockComment,ProcessingInst:Q.processingInstruction,DoctypeDecl:Q.documentMeta,Cdata:Q.special(Q.string)}),RU=BR.deserialize({version:14,states:",lOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DT'#DTOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C|'#C|O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C}'#C}O$dOrO,59^OOOP,59^,59^OOOS'#DO'#DOO$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6z-E6zOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6{-E6{OOOP1G.x1G.xOOOS-E6|-E6|OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'mO!bO,59eOOOO-E6w-E6wO'{OpO1G.uO'{OpO1G.uOOOP1G.u1G.uO(TOpO7+$fOOOP7+$f7+$fO(]O!bO<<GuOOOP<<Gu<<GuOOOP<<G}<<G}O'bOpO1G.qO'bOpO1G.qO(hO#tO'#CnO(vO&jO'#CnOOOO1G.q1G.qO)UOpO7+$aOOOP7+$a7+$aOOOP<<HQ<<HQOOOPAN=aAN=aOOOPAN=iAN=iO'bOpO7+$]OOOO7+$]7+$]OOOO'#Cz'#CzO)^O#tO,59YOOOO,59Y,59YOOOO'#C{'#C{O)lO&jO,59YOOOP<<G{<<G{OOOO<<Gw<<GwOOOO-E6x-E6xOOOO1G.t1G.tOOOO-E6y-E6y",stateData:")z~OPQOSVOTWOVWOWWOXWOiXOyPO!QTO!SUO~OvZOx]O~O^`Oz^O~OPQOQcOSVOTWOVWOWWOXWOyPO!QTO!SUO~ORdO~P!SOteO!PgO~OuhO!RjO~O^lOz^O~OvZOxoO~O^qOz^O~O[vO`sOdwOz^O~ORyO~P!SO^{Oz^O~OteO!P}O~OuhO!R!PO~O^!QOz^O~O[!SOz^O~O[!VO`sOd!WOz^O~Oa!YOz^O~Oz^O[mX`mXdmX~O[!VO`sOd!WO~O^!]Oz^O~O[!_Oz^O~O[!aOz^O~O[!cO`sOd!dOz^O~O[!cO`sOd!dO~Oa!eOz^O~Oz^O{!gO}!hO~Oz^O[ma`madma~O[!kOz^O~O[!lOz^O~O[!mO`sOd!nO~OW!qOX!qO{!sO|!qO~OW!tOX!tO}!sO!O!tO~O[!vOz^O~OW!qOX!qO{!yO|!qO~OW!tOX!tO}!yO!O!tO~O",goto:"%cxPPPPPPPPPPyyP!PP!VPP!`!jP!pyyyP!v!|#S$[$k$q$w$}%TPPPP%ZXWORYbXRORYb_t`qru!T!U!bQ!i!YS!p!e!fR!w!oQdRRybXSORYbQYORmYQ[PRn[Q_QQkVjp_krz!R!T!X!Z!^!`!f!j!oQr`QzcQ!RlQ!TqQ!XsQ!ZtQ!^{Q!`!QQ!f!YQ!j!]R!o!eQu`S!UqrU![u!U!bR!b!TQ!r!gR!x!rQ!u!hR!z!uQbRRxbQfTR|fQiUR!OiSXOYTaRb",nodeNames:`⚠ StartTag StartCloseTag MissingCloseTag StartCloseTag StartCloseTag Document Text EntityReference CharacterReference Cdata Element EndTag OpenTag TagName Attribute AttributeName Is AttributeValue CloseTag SelfCloseEndTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag DoctypeDecl`,maxTerm:50,context:jU,nodeProps:[[`closedBy`,1,`SelfCloseEndTag EndTag`,13,`CloseTag MissingCloseTag`],[`openedBy`,12,`StartTag StartCloseTag`,19,`OpenTag`,20,`StartTag`],[`isolate`,-6,13,18,19,21,22,24,``]],propSources:[LU],skippedNodes:[0],repeatNodeCount:9,tokenData:"!)v~R!YOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs*vsv$qvw+fwx/ix}$q}!O0[!O!P$q!P!Q2z!Q![$q![!]4n!]!^$q!^!_8U!_!`!#t!`!a!$l!a!b!%d!b!c$q!c!}4n!}#P$q#P#Q!'W#Q#R$q#R#S4n#S#T$q#T#o4n#o%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U$q4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qi$zXVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qa%nVVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%gP&YTVPOv&Tw!^&T!_;'S&T;'S;=`&i<%lO&TP&lP;=`<%l&T`&tS!O`Ov&ox;'S&o;'S;=`'Q<%lO&o`'TP;=`<%l&oa'ZP;=`<%l%gX'eWVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^W(ST|WOr'}sv'}w;'S'};'S;=`(c<%lO'}W(fP;=`<%l'}X(lP;=`<%l'^h(vV|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oh)`P;=`<%l(oi)fP;=`<%l$qo)t`VP|W!O`zUOX$qXY)iYZ)iZ]$q]^)i^p$qpq)iqr$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk+PV{YVP!O`Ov%gwx&Tx!^%g!^!_&o!_;'S%g;'S;=`'W<%lO%g~+iast,n![!]-r!c!}-r#R#S-r#T#o-r%W%o-r%p&a-r&b1p-r4U4d-r4e$IS-r$I`$Ib-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~,qQ!Q![,w#l#m-V~,zQ!Q![,w!]!^-Q~-VOX~~-YR!Q![-c!c!i-c#T#Z-c~-fS!Q![-c!]!^-Q!c!i-c#T#Z-c~-ug}!O-r!O!P-r!Q![-r![!]-r!]!^/^!c!}-r#R#S-r#T#o-r$}%O-r%W%o-r%p&a-r&b1p-r1p4U-r4U4d-r4e$IS-r$I`$Ib-r$Je$Jg-r$Kh%#t-r&/x&Et-r&FV;'S-r;'S;:j/c?&r?Ah-r?BY?Mn-r~/cOW~~/fP;=`<%l-rk/rW}bVP|WOr'^rs&Tsv'^w!^'^!^!_'}!_;'S'^;'S;=`(i<%lO'^k0eZVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O1W!O!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk1aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a2S!a;'S$q;'S;=`)c<%lO$qk2_X!PQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qm3TZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a3v!a;'S$q;'S;=`)c<%lO$qm4RXdSVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo4{!P`S^QVP|W!O`Or$qrs%gsv$qwx'^x}$q}!O4n!O!P4n!P!Q$q!Q![4n![!]4n!]!^$q!^!_(o!_!c$q!c!}4n!}#R$q#R#S4n#S#T$q#T#o4n#o$}$q$}%O4n%O%W$q%W%o4n%o%p$q%p&a4n&a&b$q&b1p4n1p4U4n4U4d4n4d4e$q4e$IS4n$IS$I`$q$I`$Ib4n$Ib$Je$q$Je$Jg4n$Jg$Kh$q$Kh%#t4n%#t&/x$q&/x&Et4n&Et&FV$q&FV;'S4n;'S;:j8O;:j;=`)c<%l?&r$q?&r?Ah4n?Ah?BY$q?BY?Mn4n?MnO$qo8RP;=`<%l4ni8]Y|W!O`Oq(oqr8{rs&osv(owx'}x!a(o!a!b!#U!b;'S(o;'S;=`)]<%lO(oi9S_|W!O`Or(ors&osv(owx'}x}(o}!O:R!O!f(o!f!g;e!g!}(o!}#ODh#O#W(o#W#XLp#X;'S(o;'S;=`)]<%lO(oi:YX|W!O`Or(ors&osv(owx'}x}(o}!O:u!O;'S(o;'S;=`)]<%lO(oi;OV!QP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oi;lX|W!O`Or(ors&osv(owx'}x!q(o!q!r<X!r;'S(o;'S;=`)]<%lO(oi<`X|W!O`Or(ors&osv(owx'}x!e(o!e!f<{!f;'S(o;'S;=`)]<%lO(oi=SX|W!O`Or(ors&osv(owx'}x!v(o!v!w=o!w;'S(o;'S;=`)]<%lO(oi=vX|W!O`Or(ors&osv(owx'}x!{(o!{!|>c!|;'S(o;'S;=`)]<%lO(oi>jX|W!O`Or(ors&osv(owx'}x!r(o!r!s?V!s;'S(o;'S;=`)]<%lO(oi?^X|W!O`Or(ors&osv(owx'}x!g(o!g!h?y!h;'S(o;'S;=`)]<%lO(oi@QY|W!O`Or?yrs@psv?yvwA[wxBdx!`?y!`!aCr!a;'S?y;'S;=`Db<%lO?ya@uV!O`Ov@pvxA[x!`@p!`!aAy!a;'S@p;'S;=`B^<%lO@pPA_TO!`A[!`!aAn!a;'SA[;'S;=`As<%lOA[PAsOiPPAvP;=`<%lA[aBQSiP!O`Ov&ox;'S&o;'S;=`'Q<%lO&oaBaP;=`<%l@pXBiX|WOrBdrsA[svBdvwA[w!`Bd!`!aCU!a;'SBd;'S;=`Cl<%lOBdXC]TiP|WOr'}sv'}w;'S'};'S;=`(c<%lO'}XCoP;=`<%lBdiC{ViP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiDeP;=`<%l?yiDoZ|W!O`Or(ors&osv(owx'}x!e(o!e!fEb!f#V(o#V#WIr#W;'S(o;'S;=`)]<%lO(oiEiX|W!O`Or(ors&osv(owx'}x!f(o!f!gFU!g;'S(o;'S;=`)]<%lO(oiF]X|W!O`Or(ors&osv(owx'}x!c(o!c!dFx!d;'S(o;'S;=`)]<%lO(oiGPX|W!O`Or(ors&osv(owx'}x!v(o!v!wGl!w;'S(o;'S;=`)]<%lO(oiGsX|W!O`Or(ors&osv(owx'}x!c(o!c!dH`!d;'S(o;'S;=`)]<%lO(oiHgX|W!O`Or(ors&osv(owx'}x!}(o!}#OIS#O;'S(o;'S;=`)]<%lO(oiI]V|W!O`yPOr(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(oiIyX|W!O`Or(ors&osv(owx'}x#W(o#W#XJf#X;'S(o;'S;=`)]<%lO(oiJmX|W!O`Or(ors&osv(owx'}x#T(o#T#UKY#U;'S(o;'S;=`)]<%lO(oiKaX|W!O`Or(ors&osv(owx'}x#h(o#h#iK|#i;'S(o;'S;=`)]<%lO(oiLTX|W!O`Or(ors&osv(owx'}x#T(o#T#UH`#U;'S(o;'S;=`)]<%lO(oiLwX|W!O`Or(ors&osv(owx'}x#c(o#c#dMd#d;'S(o;'S;=`)]<%lO(oiMkX|W!O`Or(ors&osv(owx'}x#V(o#V#WNW#W;'S(o;'S;=`)]<%lO(oiN_X|W!O`Or(ors&osv(owx'}x#h(o#h#iNz#i;'S(o;'S;=`)]<%lO(oi! RX|W!O`Or(ors&osv(owx'}x#m(o#m#n! n#n;'S(o;'S;=`)]<%lO(oi! uX|W!O`Or(ors&osv(owx'}x#d(o#d#e!!b#e;'S(o;'S;=`)]<%lO(oi!!iX|W!O`Or(ors&osv(owx'}x#X(o#X#Y?y#Y;'S(o;'S;=`)]<%lO(oi!#_V!SP|W!O`Or(ors&osv(owx'}x;'S(o;'S;=`)]<%lO(ok!$PXaQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qo!$wX[UVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!%mZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!&`!a;'S$q;'S;=`)c<%lO$qk!&kX!RQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$qk!'aZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_#P$q#P#Q!(S#Q;'S$q;'S;=`)c<%lO$qk!(]ZVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_!`$q!`!a!)O!a;'S$q;'S;=`)c<%lO$qk!)ZXxQVP|W!O`Or$qrs%gsv$qwx'^x!^$q!^!_(o!_;'S$q;'S;=`)c<%lO$q",tokenizers:[MU,PU,FU,IU,0,1,2,3,4],topRules:{Document:[0,6]},tokenPrec:0}),zU=63,BU=64,VU=1,HU=2,UU=3,WU=4,GU=5,KU=6,qU=7,JU=65,YU=66,XU=8,ZU=9,QU=10,$U=11,eW=12,tW=13,nW=19,rW=20,iW=29,aW=33,oW=34,sW=47,cW=0,lW=1,uW=2,dW=3,fW=4,pW=class{constructor(e,t,n){this.parent=e,this.depth=t,this.type=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n}};pW.top=new pW(null,-1,cW);function mW(e,t){for(let n=0,r=t-e.pos-1;;r--,n++){let t=e.peek(r);if(gW(t)||t==-1)return n}}function hW(e){return e==32||e==9}function gW(e){return e==10||e==13}function _W(e){return hW(e)||gW(e)}function vW(e){return e<0||_W(e)}var yW=new zR({start:pW.top,reduce(e,t){return e.type==dW&&(t==rW||t==oW)?e.parent:e},shift(e,t,n,r){if(t==UU)return new pW(e,mW(r,r.pos),lW);if(t==JU||t==GU)return new pW(e,mW(r,r.pos),uW);if(t==zU)return e.parent;if(t==nW||t==aW)return new pW(e,0,dW);if(t==tW&&e.type==fW)return e.parent;if(t==sW){let t=/[1-9]/.exec(r.read(r.pos,n.pos));if(t)return new pW(e,e.depth+ +t[0],fW)}return e},hash(e){return e.hash}});function bW(e,t,n=0){return e.peek(n)==t&&e.peek(n+1)==t&&e.peek(n+2)==t&&vW(e.peek(n+3))}var xW=new ER((e,t)=>{if(e.next==-1&&t.canShift(BU))return e.acceptToken(BU);let n=e.peek(-1);if((gW(n)||n<0)&&t.context.type!=dW){if(bW(e,45))if(t.canShift(zU))e.acceptToken(zU);else return e.acceptToken(VU,3);if(bW(e,46))if(t.canShift(zU))e.acceptToken(zU);else return e.acceptToken(HU,3);let n=0;for(;e.next==32;)n++,e.advance();(n<t.context.depth||n==t.context.depth&&t.context.type==lW&&(e.next!=45||!vW(e.peek(1))))&&e.next!=-1&&!gW(e.next)&&e.next!=35&&e.acceptToken(zU,-n)}},{contextual:!0}),SW=new ER((e,t)=>{if(t.context.type==dW){e.next==63&&(e.advance(),vW(e.next)&&e.acceptToken(qU));return}if(e.next==45)e.advance(),vW(e.next)&&e.acceptToken(t.context.type==lW&&t.context.depth==mW(e,e.pos-1)?WU:UU);else if(e.next==63)e.advance(),vW(e.next)&&e.acceptToken(t.context.type==uW&&t.context.depth==mW(e,e.pos-1)?KU:GU);else{let n=e.pos;for(;;)if(hW(e.next)){if(e.pos==n)return;e.advance()}else if(e.next==33)EW(e);else if(e.next==38)DW(e);else if(e.next==42){DW(e);break}else if(e.next==39||e.next==34){if(OW(e,!0))break;return}else if(e.next==91||e.next==123){if(!kW(e))return;break}else{NW(e,!0,!1,0);break}for(;hW(e.next);)e.advance();if(e.next==58){if(e.pos==n&&t.canShift(iW))return;vW(e.peek(1))&&e.acceptTokenTo(t.context.type==uW&&t.context.depth==mW(e,n)?YU:JU,n)}}},{contextual:!0});function CW(e){return e>32&&e<127&&e!=34&&e!=37&&e!=44&&e!=60&&e!=62&&e!=92&&e!=94&&e!=96&&e!=123&&e!=124&&e!=125}function wW(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function TW(e,t){return e.next==37?(e.advance(),wW(e.next)&&e.advance(),wW(e.next)&&e.advance(),!0):CW(e.next)||t&&e.next==44?(e.advance(),!0):!1}function EW(e){if(e.advance(),e.next==60){for(e.advance();;)if(!TW(e,!0)){e.next==62&&e.advance();break}}else for(;TW(e,!1););}function DW(e){for(e.advance();!vW(e.next)&&jW(e.next)!=`f`;)e.advance()}function OW(e,t){let n=e.next,r=!1,i=e.pos;for(e.advance();;){let a=e.next;if(a<0)break;if(e.advance(),a==n)if(a==39)if(e.next==39)e.advance();else break;else break;else if(a==92&&n==34)e.next>=0&&e.advance();else if(gW(a)){if(t)return!1;r=!0}else if(t&&e.pos>=i+1024)return!1}return!r}function kW(e){for(let t=[],n=e.pos+1024;;)if(e.next==91||e.next==123)t.push(e.next),e.advance();else if(e.next==39||e.next==34){if(!OW(e,!0))return!1}else if(e.next==93||e.next==125){if(t[t.length-1]!=e.next-2)return!1;if(t.pop(),e.advance(),!t.length)return!0}else if(e.next<0||e.pos>n||gW(e.next))return!1;else e.advance()}var AW=`iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif`;function jW(e){return e<33?`u`:e>125?`s`:AW[e-33]}function MW(e,t){let n=jW(e);return n!=`u`&&!(t&&n==`f`)}function NW(e,t,n,r){if(jW(e.next)==`s`||(e.next==63||e.next==58||e.next==45)&&MW(e.peek(1),n))e.advance();else return!1;let i=e.pos;for(;;){let a=e.next,o=0,s=r+1;for(;_W(a);){if(gW(a)){if(t)return!1;s=0}else s++;a=e.peek(++o)}if(!(a>=0&&(a==58?MW(e.peek(o+1),n):a==35?e.peek(o-1)!=32:MW(a,n)))||!n&&s<=r||s==0&&!n&&(bW(e,45,o)||bW(e,46,o)))break;if(t&&jW(a)==`f`)return!1;for(let t=o;t>=0;t--)e.advance();if(t&&e.pos>i+1024)return!1}return!0}var PW=new ER((e,t)=>{if(e.next==33)EW(e),e.acceptToken(eW);else if(e.next==38||e.next==42){let t=e.next==38?QU:$U;DW(e),e.acceptToken(t)}else e.next==39||e.next==34?(OW(e,!1),e.acceptToken(ZU)):NW(e,!1,t.context.type==dW,t.context.depth)&&e.acceptToken(XU)}),FW=new ER((e,t)=>{let n=t.context.type==fW?t.context.depth:-1,r=e.pos;scan:for(;;){let i=0,a=e.next;for(;a==32;)a=e.peek(++i);if(!i&&(bW(e,45,i)||bW(e,46,i))||!gW(a)&&(n<0&&(n=Math.max(t.context.depth+1,i)),i<n))break;for(;;){if(e.next<0)break scan;let t=gW(e.next);if(e.advance(),t)continue scan;r=e.pos}}e.acceptTokenTo(tW,r)}),IW=tL({DirectiveName:Q.keyword,DirectiveContent:Q.attributeValue,"DirectiveEnd DocEnd":Q.meta,QuotedLiteral:Q.string,BlockLiteralHeader:Q.special(Q.string),BlockLiteralContent:Q.content,Literal:Q.content,"Key/Literal Key/QuotedLiteral":Q.definition(Q.propertyName),"Anchor Alias":Q.labelName,Tag:Q.typeName,Comment:Q.lineComment,": , -":Q.separator,"?":Q.punctuation,"[ ]":Q.squareBracket,"{ }":Q.brace}),LW=BR.deserialize({version:14,states:"5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",stateData:";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",goto:",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",nodeNames:`⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document`,maxTerm:74,context:yW,nodeProps:[[`isolate`,-3,8,9,14,``],[`openedBy`,18,`[`,32,`{`],[`closedBy`,19,`]`,33,`}`]],propSources:[IW],skippedNodes:[0],repeatNodeCount:6,tokenData:"-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",tokenizers:[xW,SW,PW,FW,0,1],topRules:{Stream:[0,15]},tokenPrec:0}),RW=Vd({}),zW={html:Bz,js:SB.configure({dialect:`js`}),jsx:SB.configure({dialect:`jsx`}),ts:SB.configure({dialect:`ts`}),tsx:SB.configure({dialect:`tsx`}),json:wB,md:jV,py:pU,xml:RU,yaml:LW},BW={html:`html`,htm:`html`,javascript:`js`,js:`js`,jsx:`jsx`,typescript:`ts`,ts:`ts`,tsx:`tsx`,json:`json`,markdown:`md`,md:`md`,python:`py`,py:`py`,xml:`xml`,yaml:`yaml`,yml:`yaml`},VW=Bf(e=>{let t=xf(RW);if(e.language===void 0||t[e.language]===void 0)return R(gd,{children:e.code});let n=t[e.language].parse(e.code);return R(gd,{children:JL(wL(e.code,n),{Fragment:gd,jsx:R,jsxs:R})})});function HW({children:e,className:t,...n}){return R(`div`,{className:sS(`group relative my-4 self-stretch rounded-bubble bg-base-active shadow-header overflow-hidden`,t),...n,children:e})}function UW({children:e,className:t,...n}){return R(`div`,{className:sS(`absolute top-1 right-1 z-10 flex items-center gap-1 transition-opacity duration-200 ease-out opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto`,t),...n,children:e})}function WW({children:e,className:t,...n}){return R(`div`,{className:t,...n,children:e})}var GW=Object.assign(HW,{Actions:UW,Content:WW}),KW=Vd(``),qW=({code:e,language:t,className:n,...r})=>{let i=BW[t],{isCopied:a,copyToClipboard:o,disabled:s}=JW({code:e}),c=ob(),l=mm(!1),u=Ky();return R(KW.Provider,{value:e,children:R(GW,{"data-code-block-container":!0,"data-language":t,children:[R(GW.Actions,{children:[R(VS,{"aria-label":c.wrap.value,disabled:s,icon:`wrap`,onClick:()=>l.value=!l.value,variant:`md-button`,children:c.wrap.value}),R(VS,{"aria-label":a.value?c.copied.value:c.copy.value,disabled:s,icon:a.value?`check`:`copy`,onClick:o,variant:`md-button`,children:a.value?c.copied.value:c.copy.value})]}),R(GW.Content,{className:sS(l.value?`overflow-x-hidden`:`overflow-x-auto`),children:R(`div`,{className:sS(`pt-1.5 pb-2`,n),"data-code-block":!0,"data-language":t,"data-syntax-theme":u.value,...r,children:R(`pre`,{className:sS(`m-0 font-mono text-[13px] px-4 py-1.5`,l.value?`whitespace-pre-wrap overflow-x-hidden`:`whitespace-pre overflow-x-auto`),children:R(`code`,{className:sS(`block`,l.value?`whitespace-pre-wrap break-all`:`whitespace-pre`),children:R(VW,{code:e,language:i})})})})})]})})};function JW({code:e,onCopy:t,onError:n,timeout:r=2e3}={}){let i=mm(!1),a=F(0),o=xf(KW),{isAnimating:s}=xf(bX),c=e??o,l=I(async()=>{if(typeof window>`u`||!navigator?.clipboard?.writeText){n?.(Error(`Clipboard API not available`));return}try{i.value||(await navigator.clipboard.writeText(c),i.value=!0,t?.(),a.current=window.setTimeout(()=>{i.value=!1},r))}catch(e){n?.(e)}},[c,i,t,n,r]);return _f(()=>()=>{window.clearTimeout(a.current)},[]),{isCopied:i,copyToClipboard:l,disabled:s}}var YW=(e,t,n)=>{let r=typeof t==`string`?new Blob([t],{type:n}):t,i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(i)};function XW({src:e,alt:t,onError:n}){let{isAnimating:r}=xf(bX);return{downloadImage:I(async()=>{if(e)try{let n=await(await fetch(e.toString())).blob(),r=new URL(e.toString(),window.location.origin).pathname.split(`/`).pop()||``,i=r.includes(`.`)&&r.split(`.`).pop()?.length<=4,a=``;if(i)a=r;else{let e=n.type,i=`png`;e.includes(`jpeg`)||e.includes(`jpg`)?i=`jpg`:e.includes(`png`)?i=`png`:e.includes(`svg`)?i=`svg`:e.includes(`gif`)?i=`gif`:e.includes(`webp`)&&(i=`webp`),a=`${(t||r||`image`).toString().replace(/\.[^/.]+$/,``)}.${i}`}YW(a,n,n.type)}catch(e){console.error(`Failed to download image:`,e),n?.(e)}},[e,t,n]),disabled:r}}var ZW=({node:e,className:t,src:n,alt:r,...i})=>{let{downloadImage:a,disabled:o}=XW({src:n?.toString()||``,alt:r?.toString()}),s=ob();return n?R(GW,{className:`inline-block self-auto`,"data-streamdown":`image-wrapper`,children:[R(GW.Actions,{children:R(VS,{"aria-label":s.download.value,disabled:o,icon:`download`,onClick:a,variant:`md-button`,children:s.download.value})}),R(GW.Content,{children:R(`img`,{alt:r,className:sS(`max-w-full`,t),"data-streamdown":`image`,src:n,...i})})]}):null};function QW(e){let t=[],n=[],r=e.querySelectorAll(`thead th`);for(let e of Array.from(r))t.push(e.textContent?.trim()||``);let i=e.querySelectorAll(`tbody tr`);for(let e of Array.from(i)){let t=[],r=e.querySelectorAll(`td`);for(let e of Array.from(r))t.push(e.textContent?.trim()||``);n.push(t)}return{headers:t,rows:n}}function $W(e){let{headers:t,rows:n}=e;if(t.length===0)return``;let r=[],i=t.map(e=>e.replace(/\|/g,`\\|`));r.push(`| ${i.join(` | `)} |`),r.push(`| ${t.map(()=>`---`).join(` | `)} |`);for(let e of n){let n=[...e];for(;n.length<t.length;)n.push(``);let i=n.map(e=>e.replace(/\|/g,`\\|`));r.push(`| ${i.join(` | `)} |`)}return r.join(`
|
|
299
|
+
`)}function eG({onCopy:e,onError:t,timeout:n=2e3}={}){let r=mm(!1),i=F(0),{isAnimating:a}=xf(bX);return _f(()=>()=>{window.clearTimeout(i.current)},[]),{isCopied:r,copyTableData:async a=>{if(typeof window>`u`||!navigator?.clipboard?.write){t?.(Error(`Clipboard API not available`));return}try{if(!r.value){let o=a.currentTarget.closest(`[data-streamdown="table-wrapper"]`)?.querySelector(`table`);if(!o){t?.(Error(`Table not found`));return}let s=QW(o),c=new ClipboardItem({"text/plain":$W(s),"text/html":new Blob([o.outerHTML],{type:`text/html`})});await navigator.clipboard.write([c]),r.value=!0,e?.(),i.current=window.setTimeout(()=>r.value=!1,n)}}catch(e){t?.(e)}},disabled:a}}var tG=({children:e,className:t,...n})=>{let{isCopied:r,copyTableData:i,disabled:a}=eG(),o=ob();return R(GW,{"data-streamdown":`table-wrapper`,children:[R(GW.Actions,{children:R(VS,{"aria-label":r.value?o.copied.value:o.copy.value,disabled:a,icon:r.value?`check`:`copy`,onClick:i,variant:`md-button`,children:r.value?o.copied.value:o.copy.value})}),R(GW.Content,{className:`overflow-x-auto`,children:R(`table`,{className:sS(`w-full border-collapse border border-base-border`,t),"data-streamdown":`table`,...n,children:e})})]})},nG=/language-([^\s]+)/;function rG(e,t){if(!(e?.position||t?.position))return!0;if(!(e?.position&&t?.position))return!1;let n=e.position.start,r=t.position.start,i=e.position.end,a=t.position.end;return n?.line===r?.line&&n?.column===r?.column&&i?.line===a?.line&&i?.column===a?.column}function iG(e,t){return e.className===t.className&&rG(e.node,t.node)}var aG=Bf(({children:e,className:t,node:n,...r})=>R(`ol`,{className:sS(`ml-4 mb-2 list-outside list-decimal whitespace-normal text-sm`,t),"data-streamdown":`ordered-list`,...r,children:e}),(e,t)=>iG(e,t));aG.displayName=`MarkdownOl`;var oG=Bf(({children:e,className:t,node:n,...r})=>R(`li`,{className:sS(`py-1`,t),"data-streamdown":`list-item`,...r,children:e}),(e,t)=>iG(e,t));oG.displayName=`MarkdownLi`;var sG=Bf(({children:e,className:t,node:n,...r})=>R(`ul`,{className:sS(`ml-4 list-outside list-disc whitespace-normal text-sm`,t),"data-streamdown":`unordered-list`,...r,children:e}),(e,t)=>iG(e,t));sG.displayName=`MarkdownUl`;var cG=Bf(({className:e,node:t,...n})=>R(`hr`,{className:sS(`my-6 border-base-border`,e),"data-streamdown":`horizontal-rule`,...n}),(e,t)=>iG(e,t));cG.displayName=`MarkdownHr`;var lG=Bf(({children:e,className:t,node:n,...r})=>R(`span`,{className:sS(`font-medium`,t),"data-streamdown":`strong`,...r,children:e}),(e,t)=>iG(e,t));lG.displayName=`MarkdownStrong`;var uG=Bf(({children:e,className:t,href:n,node:r,...i})=>{let a=n===`streamdown:incomplete-link`;return R(`a`,{className:sS(`wrap-anywhere font-medium underline`,t),"data-incomplete":a,"data-streamdown":`link`,href:n,rel:`noreferrer`,target:`_blank`,...i,children:e})},(e,t)=>iG(e,t)&&e.href===t.href);uG.displayName=`MarkdownA`;var dG=Bf(({children:e,className:t,node:n,...r})=>R(`h1`,{className:sS(`mt-6 mb-2 text-base-primary font-semibold text-xl`,t),"data-streamdown":`heading-1`,...r,children:e}),(e,t)=>iG(e,t));dG.displayName=`MarkdownH1`;var fG=Bf(({children:e,className:t,node:n,...r})=>R(`h2`,{className:sS(`mt-3 mb-2 text-base-primary font-semibold text-lg`,t),"data-streamdown":`heading-2`,...r,children:e}),(e,t)=>iG(e,t));fG.displayName=`MarkdownH2`;var pG=Bf(({children:e,className:t,node:n,...r})=>R(`h3`,{className:sS(`mt-3 mb-1 text-base-primary font-semibold text-md`,t),"data-streamdown":`heading-3`,...r,children:e}),(e,t)=>iG(e,t));pG.displayName=`MarkdownH3`;var mG=Bf(({children:e,className:t,node:n,...r})=>R(`h4`,{className:sS(`mt-3 mb-1 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-4`,...r,children:e}),(e,t)=>iG(e,t));mG.displayName=`MarkdownH4`;var hG=Bf(({children:e,className:t,node:n,...r})=>R(`h5`,{className:sS(`mt-3 mb-0.5 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-5`,...r,children:e}),(e,t)=>iG(e,t));hG.displayName=`MarkdownH5`;var gG=Bf(({children:e,className:t,node:n,...r})=>R(`h6`,{className:sS(`mt-3 text-base-primary font-semibold text-sm`,t),"data-streamdown":`heading-6`,...r,children:e}),(e,t)=>iG(e,t));gG.displayName=`MarkdownH6`;var _G=Bf(({node:e,...t})=>R(tG,{...t}),(e,t)=>iG(e,t));_G.displayName=`MarkdownTable`;var vG=Bf(({children:e,className:t,node:n,...r})=>R(`thead`,{className:sS(`bg-base-active/80`,t),"data-streamdown":`table-header`,...r,children:e}),(e,t)=>iG(e,t));vG.displayName=`MarkdownThead`;var yG=Bf(({children:e,className:t,node:n,...r})=>R(`tbody`,{className:sS(`divide-y divide-base-border bg-base-active/40`,t),"data-streamdown":`table-body`,...r,children:e}),(e,t)=>iG(e,t));yG.displayName=`MarkdownTbody`;var bG=Bf(({children:e,className:t,node:n,...r})=>R(`tr`,{className:sS(`border-base-border border-b`,t),"data-streamdown":`table-row`,...r,children:e}),(e,t)=>iG(e,t));bG.displayName=`MarkdownTr`;var xG=Bf(({children:e,className:t,node:n,...r})=>R(`th`,{className:sS(`whitespace-nowrap px-4 py-2 text-left font-medium text-sm`,t),"data-streamdown":`table-header-cell`,...r,children:e}),(e,t)=>iG(e,t));xG.displayName=`MarkdownTh`;var SG=Bf(({children:e,className:t,node:n,...r})=>R(`td`,{className:sS(`px-4 py-2 text-sm`,t),"data-streamdown":`table-cell`,...r,children:e}),(e,t)=>iG(e,t));SG.displayName=`MarkdownTd`;var CG=Bf(({children:e,className:t,node:n,...r})=>R(`blockquote`,{className:sS(`my-4 border-base-subtle/30 border-l-4 pl-4 text-base-subtle italic`,t),"data-streamdown":`blockquote`,...r,children:e}),(e,t)=>iG(e,t));CG.displayName=`MarkdownBlockquote`;var wG=Bf(({children:e,className:t,node:n,...r})=>R(`sup`,{className:sS(`text-sm`,t),"data-streamdown":`superscript`,...r,children:e}),(e,t)=>iG(e,t));wG.displayName=`MarkdownSup`;var TG=Bf(({children:e,className:t,node:n,...r})=>R(`sub`,{className:sS(`text-sm`,t),"data-streamdown":`subscript`,...r,children:e}),(e,t)=>iG(e,t));TG.displayName=`MarkdownSub`;var EG=Bf(({children:e,className:t,node:n,...r})=>{if(`data-footnotes`in r){let n=e=>{if(!Cp(e))return!1;let t=e,n=Array.isArray(t.props.children)?t.props.children:[t.props.children],r=!1,i=!1;for(let e of n)if(e){if(typeof e==`string`)e.trim()!==``&&(r=!0);else if(Cp(e))if(e.props?.[`data-footnote-backref`]!==void 0)i=!0;else{let t=Array.isArray(e.props.children)?e.props.children:[e.props.children];for(let e of t){if(typeof e==`string`&&e.trim()!==``){r=!0;break}if(Cp(e)&&e.props?.[`data-footnote-backref`]===void 0){r=!0;break}}}}return i&&!r},i=Array.isArray(e)?e.map(e=>{if(!Cp(e))return e;if(e.type===aG){let t=(Array.isArray(e.props.children)?e.props.children:[e.props.children]).filter(e=>!n(e));return t.length===0?null:{...e,props:{...e.props,children:t}}}return e}):e;return(Array.isArray(i)?i.some(e=>e!==null):i!==null)?R(`section`,{className:t,...r,children:i}):null}return R(`section`,{className:t,...r,children:e})},(e,t)=>iG(e,t));EG.displayName=`MarkdownSection`;var DG=Bf(({node:e,className:t,children:n,...r})=>{if(e?.position?.start.line===e?.position?.end.line)return R(`code`,{className:sS(`rounded bg-base-active px-1.5 py-0.5 font-mono text-sm`,t),"data-streamdown":`inline-code`,...r,children:n});let i=(typeof t==`string`?t.match(nG):null)?.at(1)??``,a=``;if(Cp(n)){let e=n;e.props&&typeof e.props==`object`&&`children`in e.props&&typeof e.props.children==`string`&&(a=e.props.children)}else typeof n==`string`&&(a=n);return R(qW,{code:a,"data-language":i,"data-streamdown":`code-block`,language:i})},(e,t)=>iG(e,t));DG.displayName=`MarkdownCode`;var OG=Bf(ZW,(e,t)=>iG(e,t));OG.displayName=`MarkdownImg`;var kG=Bf(({children:e,className:t,node:n,...r})=>{let i=(Array.isArray(e)?e:[e]).filter(e=>e!=null&&e!==``);return i.some(e=>Cp(e)&&e?.props?.node?.tagName===`img`)?i.length===1?R(gd,{children:e}):R(`div`,{className:sS(`text-sm`,t),...r,children:e}):R(`p`,{className:sS(`text-sm mb-3`,t),...r,children:e})},(e,t)=>iG(e,t));kG.displayName=`MarkdownParagraph`;var AG={ol:aG,li:oG,ul:sG,hr:cG,strong:lG,a:uG,h1:dG,h2:fG,h3:pG,h4:mG,h5:hG,h6:gG,table:_G,thead:vG,tbody:yG,tr:bG,th:xG,td:SG,blockquote:CG,code:DG,img:OG,pre:gd,sup:wG,sub:TG,p:kG,section:EG},jG={tokenize:MG};function MG(e){let t=e.attempt(this.parser.constructs.contentInitial,r,i),n;return t;function r(n){if(n===null){e.consume(n);return}return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),pP(e,t,`linePrefix`)}function i(t){return e.enter(`paragraph`),a(t)}function a(t){let r=e.enter(`chunkText`,{contentType:`text`,previous:n});return n&&(n.next=r),n=r,o(t)}function o(t){if(t===null){e.exit(`chunkText`),e.exit(`paragraph`),e.consume(t);return}return X(t)?(e.consume(t),e.exit(`chunkText`),a):(e.consume(t),o)}}var NG={tokenize:FG},PG={tokenize:IG};function FG(e){let t=this,n=[],r=0,i,a,o;return s;function s(i){if(r<n.length){let a=n[r];return t.containerState=a[1],e.attempt(a[0].continuation,c,l)(i)}return l(i)}function c(e){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&v();let n=t.events.length,a=n,o;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){o=t.events[a][1].end;break}_(r);let s=n;for(;s<t.events.length;)t.events[s][1].end={...o},s++;return ij(t.events,a+1,0,t.events.slice(n)),t.events.length=s,l(e)}return s(e)}function l(a){if(r===n.length){if(!i)return f(a);if(i.currentConstruct&&i.currentConstruct.concrete)return m(a);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(PG,u,d)(a)}function u(e){return i&&v(),_(r),f(e)}function d(e){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,m(e)}function f(n){return t.containerState={},e.attempt(PG,p,m)(n)}function p(e){return r++,n.push([t.currentConstruct,t.containerState]),f(e)}function m(n){if(n===null){i&&v(),_(0),e.consume(n);return}return i||=t.parser.flow(t.now()),e.enter(`chunkFlow`,{_tokenizer:i,contentType:`flow`,previous:a}),h(n)}function h(n){if(n===null){g(e.exit(`chunkFlow`),!0),_(0),e.consume(n);return}return X(n)?(e.consume(n),g(e.exit(`chunkFlow`)),r=0,t.interrupt=void 0,s):(e.consume(n),h)}function g(e,n){let s=t.sliceStream(e);if(n&&s.push(null),e.previous=a,a&&(a.next=e),a=e,i.defineSkip(e.start),i.write(s),t.parser.lazy[e.start.line]){let e=i.events.length;for(;e--;)if(i.events[e][1].start.offset<o&&(!i.events[e][1].end||i.events[e][1].end.offset>o))return;let n=t.events.length,a=n,s,c;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){if(s){c=t.events[a][1].end;break}s=!0}for(_(r),e=n;e<t.events.length;)t.events[e][1].end={...c},e++;ij(t.events,a+1,0,t.events.slice(n)),t.events.length=e}}function _(r){let i=n.length;for(;i-- >r;){let r=n[i];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function v(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function IG(e,t,n){return pP(e,e.attempt(this.parser.constructs.document,t,n),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}var LG={tokenize:RG};function RG(e){let t=this,n=e.attempt(mP,r,e.attempt(this.parser.constructs.flowInitial,i,pP(e,e.attempt(this.parser.constructs.flow,i,e.attempt(BP,i)),`linePrefix`)));return n;function r(r){if(r===null){e.consume(r);return}return e.enter(`lineEndingBlank`),e.consume(r),e.exit(`lineEndingBlank`),t.currentConstruct=void 0,n}function i(r){if(r===null){e.consume(r);return}return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),t.currentConstruct=void 0,n}}var zG={resolveAll:UG()},BG=HG(`string`),VG=HG(`text`);function HG(e){return{resolveAll:UG(e===`text`?WG:void 0),tokenize:t};function t(t){let n=this,r=this.parser.constructs[e],i=t.attempt(r,a,o);return a;function a(e){return c(e)?i(e):o(e)}function o(e){if(e===null){t.consume(e);return}return t.enter(`data`),t.consume(e),s}function s(e){return c(e)?(t.exit(`data`),i(e)):(t.consume(e),s)}function c(e){if(e===null)return!0;let t=r[e],i=-1;if(t)for(;++i<t.length;){let e=t[i];if(!e.previous||e.previous.call(n,n.previous))return!0}return!1}}}function UG(e){return t;function t(t,n){let r=-1,i;for(;++r<=t.length;)i===void 0?t[r]&&t[r][1].type===`data`&&(i=r,r++):(!t[r]||t[r][1].type!==`data`)&&(r!==i+2&&(t[i][1].end=t[r-1][1].end,t.splice(i+2,r-i-2),r=i+2),i=void 0);return e?e(t,n):t}}function WG(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type===`lineEnding`)&&e[n-1][1].type===`data`){let r=e[n-1][1],i=t.sliceStream(r),a=i.length,o=-1,s=0,c;for(;a--;){let e=i[a];if(typeof e==`string`){for(o=e.length;e.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(e===-2)c=!0,s++;else if(e!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){let i={type:n===e.length||c||s<2?`lineSuffix`:`hardBreakTrailing`,start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...i.start},r.start.offset===r.end.offset?Object.assign(r,i):(e.splice(n,0,[`enter`,i,t],[`exit`,i,t]),n+=2)}n++}return e}var GG=Bm({attentionMarkers:()=>$G,contentInitial:()=>qG,disable:()=>eK,document:()=>KG,flow:()=>YG,flowInitial:()=>JG,insideSpan:()=>QG,string:()=>XG,text:()=>ZG}),KG={42:NF,43:NF,45:NF,48:NF,49:NF,50:NF,51:NF,52:NF,53:NF,54:NF,55:NF,56:NF,57:NF,62:gP},qG={91:YP},JG={[-2]:OP,[-1]:OP,32:OP},YG={35:tF,42:jF,45:[VF,jF],60:oF,61:VF,95:jF,96:TP,126:TP},XG={38:SP,92:bP},ZG={[-5]:kF,[-4]:kF,[-3]:kF,33:TF,38:SP,42:sP,60:[dP,pF],91:DF,92:[$P,bP],93:hF,95:sP,96:MP},QG={null:[sP,zG]},$G={null:[42,95]},eK={null:[]};function tK(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0},i={},a=[],o=[],s=[],c={attempt:C(x),check:C(S),consume:v,enter:y,exit:b,interrupt:C(S,{interrupt:!0})},l={code:null,containerState:{},defineSkip:h,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d},u=t.tokenize.call(l,c);return t.resolveAll&&a.push(t),l;function d(e){return o=aj(o,e),g(),o[o.length-1]===null?(w(t,0),l.events=oj(a,l.events,l),l.events):[]}function f(e,t){return rK(p(e),t)}function p(e){return nK(o,e)}function m(){let{_bufferIndex:e,_index:t,line:n,column:i,offset:a}=r;return{_bufferIndex:e,_index:t,line:n,column:i,offset:a}}function h(e){i[e.line]=e.column,ee()}function g(){let e;for(;r._index<o.length;){let t=o[r._index];if(typeof t==`string`)for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)_(t.charCodeAt(r._bufferIndex));else _(t)}}function _(e){u=u(e)}function v(e){X(e)?(r.line++,r.column=1,r.offset+=e===-3?2:1,ee()):e!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=e}function y(e,t){let n=t||{};return n.type=e,n.start=m(),l.events.push([`enter`,n,l]),s.push(n),n}function b(e){let t=s.pop();return t.end=m(),l.events.push([`exit`,t,l]),t}function x(e,t){w(e,t.from)}function S(e,t){t.restore()}function C(e,t){return n;function n(n,r,i){let a,o,s,u;return Array.isArray(n)?f(n):`tokenize`in n?f([n]):d(n);function d(e){return t;function t(t){let n=t!==null&&e[t],r=t!==null&&e.null;return f([...Array.isArray(n)?n:n?[n]:[],...Array.isArray(r)?r:r?[r]:[]])(t)}}function f(e){return a=e,o=0,e.length===0?i:p(e[o])}function p(e){return n;function n(n){return u=T(),s=e,e.partial||(l.currentConstruct=e),e.name&&l.parser.constructs.disable.null.includes(e.name)?h(n):e.tokenize.call(t?Object.assign(Object.create(l),t):l,c,m,h)(n)}}function m(t){return e(s,u),r}function h(e){return u.restore(),++o<a.length?p(a[o]):i}}}function w(e,t){e.resolveAll&&!a.includes(e)&&a.push(e),e.resolve&&ij(l.events,t,l.events.length-t,e.resolve(l.events.slice(t),l)),e.resolveTo&&(l.events=e.resolveTo(l.events,l))}function T(){let e=m(),t=l.previous,n=l.currentConstruct,i=l.events.length,a=Array.from(s);return{from:i,restore:o};function o(){r=e,l.previous=t,l.currentConstruct=n,l.events.length=i,s=a,ee()}}function ee(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function nK(e,t){let n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex,o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){let e=o[0];typeof e==`string`?o[0]=e.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function rK(e,t){let n=-1,r=[],i;for(;++n<e.length;){let a=e[n],o;if(typeof a==`string`)o=a;else switch(a){case-5:o=`\r`;break;case-4:o=`
|
|
300
300
|
`;break;case-3:o=`\r
|
|
301
301
|
`;break;case-2:o=t?` `:` `;break;case-1:if(!t&&i)continue;o=` `;break;default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join(``)}function iK(e){let t={constructs:NN([GG,...(e||{}).extensions||[]]),content:n(jG),defined:[],document:n(NG),flow:n(LG),lazy:{},string:n(BG),text:n(VG)};return t;function n(e){return n;function n(n){return tK(t,e,n)}}}function aK(e){for(;!RP(e););return e}var oK=/[\0\t\n\r]/g;function sK(){let e=1,t=``,n=!0,r;return i;function i(i,a,o){let s=[],c,l,u,d,f;for(i=t+(typeof i==`string`?i.toString():new TextDecoder(a||void 0).decode(i)),u=0,t=``,n&&=(i.charCodeAt(0)===65279&&u++,void 0);u<i.length;){if(oK.lastIndex=u,c=oK.exec(i),d=c&&c.index!==void 0?c.index:i.length,f=i.charCodeAt(d),!c){t=i.slice(u);break}if(f===10&&u===d&&r)s.push(-3),r=void 0;else switch(r&&=(s.push(-5),void 0),u<d&&(s.push(i.slice(u,d)),e+=d-u),f){case 0:s.push(65533),e++;break;case 9:for(l=Math.ceil(e/4)*4,s.push(-2);e++<l;)s.push(-1);break;case 10:s.push(-4),e=1;break;default:r=!0,e=1}u=d+1}return o&&(r&&s.push(-5),t&&s.push(t),s.push(null)),s}}var cK={}.hasOwnProperty;function lK(e,t,n){return typeof t!=`string`&&(n=t,t=void 0),uK(n)(aK(iK(n).document().write(sK()(e,t,!0))))}function uK(e){let t={transforms:[],canContainEols:[`emphasis`,`fragment`,`heading`,`paragraph`,`strong`],enter:{autolink:a(Oe),autolinkProtocol:T,autolinkEmail:T,atxHeading:a(we),blockQuote:a(ye),characterEscape:T,characterReference:T,codeFenced:a(be),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(be,o),codeText:a(xe,o),codeTextData:T,data:T,codeFlowValue:T,definition:a(Se),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(Ce),hardBreakEscape:a(Te),hardBreakTrailing:a(Te),htmlFlow:a(Ee,o),htmlFlowData:T,htmlText:a(Ee,o),htmlTextData:T,image:a(De),label:o,link:a(Oe),listItem:a(Ae),listItemValue:f,listOrdered:a(ke,d),listUnordered:a(ke),paragraph:a(je),reference:fe,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(we),strong:a(Me),thematicBreak:a(Pe)},exit:{atxHeading:c(),atxHeadingSequence:x,autolink:c(),autolinkEmail:ve,autolinkProtocol:_e,blockQuote:c(),characterEscapeValue:ee,characterReferenceMarkerHexadecimal:me,characterReferenceMarkerNumeric:me,characterReferenceValue:he,characterReference:ge,codeFenced:c(g),codeFencedFence:h,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:ee,codeIndented:c(_),codeText:c(ae),codeTextData:ee,data:ee,definition:c(),definitionDestinationString:b,definitionLabelString:v,definitionTitleString:y,emphasis:c(),hardBreakEscape:c(ne),hardBreakTrailing:c(ne),htmlFlow:c(re),htmlFlowData:ee,htmlText:c(ie),htmlTextData:ee,image:c(se),label:ce,labelText:E,lineEnding:te,link:c(oe),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:pe,resourceDestinationString:le,resourceTitleString:ue,resource:de,setextHeading:c(w),setextHeadingLineSequence:C,setextHeadingText:S,strong:c(),thematicBreak:c()}};fK(t,(e||{}).mdastExtensions||[]);let n={};return r;function r(e){let r={type:`root`,children:[]},a={stack:[r],tokenStack:[],config:t,enter:s,exit:l,buffer:o,resume:u,data:n},c=[],d=-1;for(;++d<e.length;)(e[d][1].type===`listOrdered`||e[d][1].type===`listUnordered`)&&(e[d][0]===`enter`?c.push(d):d=i(e,c.pop(),d));for(d=-1;++d<e.length;){let n=t[e[d][0]];cK.call(n,e[d][1].type)&&n[e[d][1].type].call(Object.assign({sliceSerialize:e[d][2].sliceSerialize},a),e[d][1])}if(a.tokenStack.length>0){let e=a.tokenStack[a.tokenStack.length-1];(e[1]||mK).call(a,void 0,e[0])}for(r.position={start:dK(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:dK(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},d=-1;++d<t.transforms.length;)r=t.transforms[d](r)||r;return r}function i(e,t,n){let r=t-1,i=-1,a=!1,o,s,c,l;for(;++r<=n;){let t=e[r];switch(t[1].type){case`listUnordered`:case`listOrdered`:case`blockQuote`:t[0]===`enter`?i++:i--,l=void 0;break;case`lineEndingBlank`:t[0]===`enter`&&(o&&!l&&!i&&!c&&(c=r),l=void 0);break;case`linePrefix`:case`listItemValue`:case`listItemMarker`:case`listItemPrefix`:case`listItemPrefixWhitespace`:break;default:l=void 0}if(!i&&t[0]===`enter`&&t[1].type===`listItemPrefix`||i===-1&&t[0]===`exit`&&(t[1].type===`listUnordered`||t[1].type===`listOrdered`)){if(o){let i=r;for(s=void 0;i--;){let t=e[i];if(t[1].type===`lineEnding`||t[1].type===`lineEndingBlank`){if(t[0]===`exit`)continue;s&&(e[s][1].type=`lineEndingBlank`,a=!0),t[1].type=`lineEnding`,s=i}else if(!(t[1].type===`linePrefix`||t[1].type===`blockQuotePrefix`||t[1].type===`blockQuotePrefixWhitespace`||t[1].type===`blockQuoteMarker`||t[1].type===`listItemIndent`))break}c&&(!s||c<s)&&(o._spread=!0),o.end=Object.assign({},s?e[s][1].start:t[1].end),e.splice(s||r,0,[`exit`,o,t[2]]),r++,n++}if(t[1].type===`listItemPrefix`){let i={type:`listItem`,_spread:!1,start:Object.assign({},t[1].start),end:void 0};o=i,e.splice(r,0,[`enter`,i,t[2]]),r++,n++,c=void 0,l=!0}}}return e[t][1]._spread=a,n}function a(e,t){return n;function n(n){s.call(this,e(n),n),t&&t.call(this,n)}}function o(){this.stack.push({type:`fragment`,children:[]})}function s(e,t,n){this.stack[this.stack.length-1].children.push(e),this.stack.push(e),this.tokenStack.push([t,n||void 0]),e.position={start:dK(t.start),end:void 0}}function c(e){return t;function t(t){e&&e.call(this,t),l.call(this,t)}}function l(e,t){let n=this.stack.pop(),r=this.tokenStack.pop();if(r)r[0].type!==e.type&&(t?t.call(this,e,r[0]):(r[1]||mK).call(this,e,r[0]));else throw Error("Cannot close `"+e.type+"` ("+IL({start:e.start,end:e.end})+`): it’s not open`);n.position.end=dK(e.end)}function u(){return OM(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(e){if(this.data.expectingFirstListItemValue){let t=this.stack[this.stack.length-2];t.start=Number.parseInt(this.sliceSerialize(e),10),this.data.expectingFirstListItemValue=void 0}}function p(){let e=this.resume(),t=this.stack[this.stack.length-1];t.lang=e}function m(){let e=this.resume(),t=this.stack[this.stack.length-1];t.meta=e}function h(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function g(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,``),this.data.flowCodeInside=void 0}function _(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/(\r?\n|\r)$/g,``)}function v(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Lj(this.sliceSerialize(e)).toLowerCase()}function y(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function b(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function x(e){let t=this.stack[this.stack.length-1];t.depth||=this.sliceSerialize(e).length}function S(){this.data.setextHeadingSlurpLineEnding=!0}function C(e){let t=this.stack[this.stack.length-1];t.depth=this.sliceSerialize(e).codePointAt(0)===61?1:2}function w(){this.data.setextHeadingSlurpLineEnding=void 0}function T(e){let t=this.stack[this.stack.length-1].children,n=t[t.length-1];(!n||n.type!==`text`)&&(n=Ne(),n.position={start:dK(e.start),end:void 0},t.push(n)),this.stack.push(n)}function ee(e){let t=this.stack.pop();t.value+=this.sliceSerialize(e),t.position.end=dK(e.end)}function te(e){let n=this.stack[this.stack.length-1];if(this.data.atHardBreak){let t=n.children[n.children.length-1];t.position.end=dK(e.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(n.type)&&(T.call(this,e),ee.call(this,e))}function ne(){this.data.atHardBreak=!0}function re(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function ie(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function ae(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function oe(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function se(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function E(e){let t=this.sliceSerialize(e),n=this.stack[this.stack.length-2];n.label=mN(t),n.identifier=Lj(t).toLowerCase()}function ce(){let e=this.stack[this.stack.length-1],t=this.resume(),n=this.stack[this.stack.length-1];this.data.inReference=!0,n.type===`link`?n.children=e.children:n.alt=t}function le(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function ue(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function de(){this.data.inReference=void 0}function fe(){this.data.referenceType=`collapsed`}function pe(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Lj(this.sliceSerialize(e)).toLowerCase(),this.data.referenceType=`full`}function me(e){this.data.characterReferenceType=e.type}function he(e){let t=this.sliceSerialize(e),n=this.data.characterReferenceType,r;n?(r=fN(t,n===`characterReferenceMarkerNumeric`?10:16),this.data.characterReferenceType=void 0):r=dN(t);let i=this.stack[this.stack.length-1];i.value+=r}function ge(e){let t=this.stack.pop();t.position.end=dK(e.end)}function _e(e){ee.call(this,e);let t=this.stack[this.stack.length-1];t.url=this.sliceSerialize(e)}function ve(e){ee.call(this,e);let t=this.stack[this.stack.length-1];t.url=`mailto:`+this.sliceSerialize(e)}function ye(){return{type:`blockquote`,children:[]}}function be(){return{type:`code`,lang:null,meta:null,value:``}}function xe(){return{type:`inlineCode`,value:``}}function Se(){return{type:`definition`,identifier:``,label:null,title:null,url:``}}function Ce(){return{type:`emphasis`,children:[]}}function we(){return{type:`heading`,depth:0,children:[]}}function Te(){return{type:`break`}}function Ee(){return{type:`html`,value:``}}function De(){return{type:`image`,title:null,url:``,alt:null}}function Oe(){return{type:`link`,title:null,url:``,children:[]}}function ke(e){return{type:`list`,ordered:e.type===`listOrdered`,start:null,spread:e._spread,children:[]}}function Ae(e){return{type:`listItem`,spread:e._spread,checked:null,children:[]}}function je(){return{type:`paragraph`,children:[]}}function Me(){return{type:`strong`,children:[]}}function Ne(){return{type:`text`,value:``}}function Pe(){return{type:`thematicBreak`}}}function dK(e){return{line:e.line,column:e.column,offset:e.offset}}function fK(e,t){let n=-1;for(;++n<t.length;){let r=t[n];Array.isArray(r)?fK(e,r):pK(e,r)}}function pK(e,t){let n;for(n in t)if(cK.call(t,n))switch(n){case`canContainEols`:{let r=t[n];r&&e[n].push(...r);break}case`transforms`:{let r=t[n];r&&e[n].push(...r);break}case`enter`:case`exit`:{let r=t[n];r&&Object.assign(e[n],r);break}}}function mK(e,t){throw Error(e?"Cannot close `"+e.type+"` ("+IL({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+IL({start:t.start,end:t.end})+`) is open`:"Cannot close document, a token (`"+t.type+"`, "+IL({start:t.start,end:t.end})+`) is still open`)}function hK(e){let t=this;t.parser=n;function n(n){return lK(n,{...t.data(`settings`),...e,extensions:t.data(`micromarkExtensions`)||[],mdastExtensions:t.data(`fromMarkdownExtensions`)||[]})}}function gK(e,t){let n={type:`element`,tagName:`blockquote`,properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function _K(e,t){let n={type:`element`,tagName:`br`,properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:`text`,value:`
|
|
302
302
|
`}]}function vK(e,t){let n=t.value?t.value+`
|
|
@@ -382,7 +382,7 @@ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error
|
|
|
382
382
|
`){o=t+1;break}let s=!0;for(let t=o;t<r;t+=1)if(e[t]!==` `&&e[t]!==` `){s=!1;break}s&&(a===` `||a===` `)||(t+=1)}return t},oX=e=>{if(QY(e))return e;if(e.match(HY)){let t=-1;for(let n=0;n<e.length;n+=1)if(e[n]===`*`&&e[n-1]!==`*`&&e[n+1]!==`*`&&e[n-1]!==`\\`){let r=n>0?e[n-1]:``,i=n<e.length-1?e[n+1]:``;if(r&&i&&ZY(r)&&ZY(i))continue;t=n;break}if(t===-1)return e;let n=e.substring(t+1);if(!n||KY.test(n))return e;if(aX(e)%2==1)return`${e}*`}return e},sX=(e,t)=>{let n=!1,r=!1;for(let i=0;i<e.length&&i<t;i+=1){if(e[i]===`\\`&&e[i+1]===`$`){i+=1;continue}e[i]===`$`&&(e[i+1]===`$`?(r=!r,i+=1,n=!1):r||(n=!n))}return n||r},cX=e=>{let t=e.includes(`$`),n=0,r=e.length;for(let i=0;i<r;i+=1){if(e[i]!==`_`)continue;let a=i>0?e[i-1]:``,o=i<r-1?e[i+1]:``;a!==`\\`&&(t&&sX(e,i)||a===`_`||o===`_`||a&&o&&ZY(a)&&ZY(o)||(n+=1))}return n},lX=e=>{if(QY(e))return e;if(e.match(UY)){let t=-1;for(let n=0;n<e.length;n+=1)if(e[n]===`_`&&e[n-1]!==`_`&&e[n+1]!==`_`&&e[n-1]!==`\\`&&!sX(e,n)){let r=n>0?e[n-1]:``,i=n<e.length-1?e[n+1]:``;if(r&&i&&ZY(r)&&ZY(i))continue;t=n;break}if(t===-1)return e;let n=e.substring(t+1);if(!n||KY.test(n))return e;if(cX(e)%2==1){let t=e.length;for(;t>0&&e[t-1]===`
|
|
383
383
|
`;)--t;return t<e.length?`${e.slice(0,t)}_${e.slice(t)}`:`${e}_`}}return e},uX=(e,t)=>{let n=e.substring(t,t+3)==="```",r=t>0&&e.substring(t-1,t+2)==="```",i=t>1&&e.substring(t-2,t+1)==="```";return n||r||i},dX=e=>{let t=0;for(let n=0;n<e.length;n+=1)e[n]==="`"&&!uX(e,n)&&(t+=1);return t},fX=e=>{if(e.match(YY)&&!e.includes(`
|
|
384
384
|
`))return e.endsWith("``")&&!e.endsWith("```")?`${e}\``:e;let t=(e.match(/```/g)||[]).length,n=t%2==1;if(t>0&&t%2==0&&e.includes(`
|
|
385
|
-
`)||(e.endsWith("```\n")||e.endsWith("```"))&&t%2==0)return e;let r=e.match(WY);if(r&&!n){let t=r[2];if(!t||KY.test(t))return e;if(dX(e)%2==1)return`${e}\``}return e},pX=e=>{let t=e.match(GY);if(t){let n=t[2];if(!n||KY.test(n))return e;if((e.match(/~~/g)||[]).length%2==1)return`${e}~~`}return e},mX=e=>{let t=0,n=0;for(let r=0;r<e.length;r+=1)e[r]===`*`?n+=1:(n>=3&&(t+=Math.floor(n/3)),n=0);return n>=3&&(t+=Math.floor(n/3)),t},hX=e=>{if(QY(e)||XY.test(e))return e;let t=e.match(VY);if(t){let n=t[2];if(!n||KY.test(n))return e;if(mX(e)%2==1)return`${e}***`}return e},gX=e=>{if(!e||typeof e!=`string`)return e;let t=e,n=nX(t);return n.endsWith(`](streamdown:incomplete-link)`)?n:(t=n,t=hX(t),t=rX(t),t=iX(t),t=oX(t),t=lX(t),t=fX(t),t=pX(t),t)};function _X(){if(window.location!==window.parent.location){let{ancestorOrigins:e}=document.location;if(e&&e.length)return e[0];if(document.referrer)try{return new URL(document.referrer).origin}catch{}}return document.location.origin}function vX(e){let t=_X(),n=[t,...$q(e)];return[Hk,[MC,{...hC,protocols:{...hC.protocols,src:[...hC.protocols?.src||[],`data`]}}],[Wk,{allowedImagePrefixes:[`*`],allowedLinkPrefixes:n,allowedProtocols:[`*`],defaultOrigin:t,allowDataImages:!0}]]}var yX=[[hI,{}],[fj,{}],[mj,{}]],bX=Vd({isAnimating:!1}),xX=Bf(({content:e,shouldParseIncompleteMarkdown:t,markdownOptions:n})=>{let r=bf(()=>typeof e==`string`&&t?gX(e.trim()):e,[e,t]);return R(Jq,{...n,children:r})},(e,t)=>e.content===t.content&&e.shouldParseIncompleteMarkdown===t.shouldParseIncompleteMarkdown&&e.markdownOptions===t.markdownOptions),SX=Bf(({children:e,parseIncompleteMarkdown:t=!0,className:n,isAnimating:r=!1,linkConfig:i})=>{let a=Cf(),o=bf(()=>RY(typeof e==`string`?e:``),[e]),s=bf(()=>({components:AG,rehypePlugins:vX(i),remarkPlugins:yX}),[i]);return R(RW.Provider,{value:zW,children:R(bX.Provider,{value:{isAnimating:r},children:R(`div`,{className:sS(`markdown *:first:mt-0 *:last:mb-0`,n),children:o.map((e,n)=>R(xX,{content:e,shouldParseIncompleteMarkdown:t,markdownOptions:s},`${a}-block-${n}`))})})})},(e,t)=>e.children===t.children&&e.isAnimating===t.isAnimating&&e.className===t.className&&e.parseIncompleteMarkdown===t.parseIncompleteMarkdown&&e.linkConfig===t.linkConfig),CX=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`application/pdf`],wX=[`.png`,`.jpg`,`.jpeg`,`.gif`,`.webp`,`.pdf`],TX=10,EX=20;function DX(e){return e.startsWith(`image/`)}function OX(e){return CX.includes(e)}function kX(e){return(DX(e)?TX:EX)*1024*1024}function AX(e,t){return`${e}/v1/convai/conversations/${t}/files`}function jX(e,t,n){fetch(`${AX(e,t)}/${n}`,{method:`DELETE`}).catch(()=>{})}function MX({conversationId:e,maxFiles:t}){let{serverUrl:n}=zh(),r=bf(()=>qp(null),[]),i=bf(()=>qp(0),[]),a=F(null),o=F(null),s=F([]),c=F(null),l=e=>{let t=r.peek();t&&(r.value=null,t.status===`uploading`?c.current?.abort():t.status===`ready`&&e&&jX(n.peek(),e,t.fileId),NX(o.current),o.current=null)};if(e!==a.current){let t=a.current;a.current=e,i.value=0,e!==null&&(s.current.forEach(NX),s.current=[]),l(t)}_f(()=>()=>{l(a.current),s.current.forEach(NX)},[]);let u=bf(()=>Qp(()=>{if(t==null)return!1;let e=+!!r.value;return i.value+e>=t}),[t,r,i]);return{pendingFile:r,isUploading:bf(()=>Qp(()=>r.value?.status===`uploading`),[r]),hasReachedLimit:u,addFile:I(t=>{if(!e)return null;if(u.peek())return`limit_reached`;if(!OX(t.type))return`unsupported_type`;if(t.size>kX(t.type))return`too_large`;NX(o.current),o.current=null;let i=DX(t.type)?URL.createObjectURL(t):null;o.current=i,r.value={file:t,status:`uploading`,previewUrl:i};let a=new FormData;a.append(`file`,t);let s=new AbortController;c.current=s;let l=e,d=n.peek();return fetch(AX(d,l),{method:`POST`,body:a,signal:s.signal}).then(async e=>{if(!e.ok){let t=await e.json().catch(()=>null);throw Error(t?.detail?.message??t?.detail??`Upload failed`)}return e.json()}).then(e=>{let n=r.peek();n?.file===t?r.value={status:`ready`,file:n.file,previewUrl:n.previewUrl,fileId:e.file_id}:jX(d,l,e.file_id)}).catch(e=>{if(e?.name===`AbortError`)return;console.warn(`[convai] file upload failed:`,e);let n=r.peek();n?.file===t&&(r.value={status:`error`,file:n.file,previewUrl:n.previewUrl,error:e?.message??`Upload failed`})}).finally(()=>{c.current===s&&(c.current=null)}),null},[e,r,n,u]),removeFile:I(()=>{l(e)},[e]),markFileAsSent:I(()=>{o.current&&=(s.current.push(o.current),null),r.value=null,i.value++},[r,i])}}function NX(e){e&&URL.revokeObjectURL(e)}function PX({entry:e}){let t=Wy(),n=Py().value.strip_audio_tags&&!e.isText?ZS(e.message):e.message;return R(`div`,{className:`pr-8`,children:[n&&R(SX,{linkConfig:t.value,children:n}),e.toolStatus&&R(`div`,{className:n?`mt-2`:void 0,children:R(VX,{status:e.toolStatus})})]})}function FX({entry:e}){let{previewUrl:t}=cb(),n=e.fileInput;return R(`div`,{className:Bb(`flex gap-2.5 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,e.role===`user`?`justify-end pl-16 origin-top-right`:`pr-16 origin-top-left`),children:[e.role===`agent`&&R(`img`,{src:t,alt:`AI agent avatar`,className:`bg-base-border shrink-0 w-5 h-5 rounded-full`}),R(`div`,{className:`flex flex-col items-end gap-1.5 min-w-0`,children:[n&&R(IX,{fileName:n.fileName,mimeType:n.mimeType,previewUrl:n.previewUrl}),e.message&&R(`div`,{dir:`auto`,className:Bb(`px-3 py-2.5 rounded-bubble text-sm min-w-0 wrap-break-word whitespace-pre-wrap`,e.role===`user`?`bg-accent text-accent-primary`:`bg-base-active text-base-primary`),children:e.message})]})]})}function IX({fileName:e,mimeType:t,previewUrl:n}){return DX(t)&&n?R(`div`,{className:`rounded-bubble border border-base-border shadow-sm p-1`,children:R(`img`,{src:n,alt:e,className:`max-w-[180px] rounded-input object-cover`})}):R(`div`,{className:`flex items-center gap-2 px-3 py-2.5 rounded-bubble bg-accent text-accent-primary`,children:[R(LX,{}),R(`span`,{className:`truncate text-sm`,children:e})]})}function LX(){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,className:`shrink-0 opacity-70`,children:[R(`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`}),R(`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`})]})}function RX({entry:e}){let t=ab(),{lastId:n}=Oy(),r=Uy(),i=Py();return R(`div`,{className:`px-8 flex flex-col`,children:[r.value===`rating`&&R(YS,{}),R(`div`,{className:`text-xs text-base-subtle text-center transition-opacity duration-200 data-hidden:opacity-0`,children:[e.role===`user`?t.user_ended_conversation:t.agent_ended_conversation,R(`br`,{}),n.value&&i.value.show_conversation_id&&R(`span`,{className:`break-all`,children:[t.conversation_id,`: `,n.value]})]})]})}function zX({entry:e}){let t=ab(),{lastId:n}=Oy();return R(`div`,{className:`px-8 text-xs text-base-error text-center transition-opacity duration-200 data-hidden:opacity-0`,children:[t.error_occurred,R(`br`,{}),e.message,n.value&&R(gd,{children:[R(`br`,{}),R(`span`,{className:`text-base-subtle break-all`,children:[t.conversation_id,`: `,n.value]})]})]})}function BX({entry:e}){let t=ab();return R(`div`,{className:`px-8 text-xs text-base-subtle text-center transition-opacity duration-200 data-hidden:opacity-0`,children:e.mode===`text`?t.switched_to_text_mode:t.switched_to_voice_mode})}function VX({status:e}){let t=ab();return R(`div`,{className:`-my-4 first:mt-0 last:mb-0 flex items-center`,children:R(`div`,{className:`flex items-center h-7 px-2 gap-1 rounded-button border border-base-border bg-base`,children:[e===fb.LOADING&&R(gd,{children:[R(gS,{name:`loader`,size:`md`,className:`animate-spin shrink-0`}),R(`span`,{className:`text-xs leading-4`,children:t.agent_working})]}),e===fb.SUCCESS&&R(Ib,{active:!0,initial:!1,children:R(`span`,{className:`flex items-center gap-1 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,children:[R(gS,{name:`check`,size:`sm`,className:`shrink-0`}),R(`span`,{className:`text-xs leading-4`,children:t.agent_done})]})}),e===fb.ERROR&&R(Ib,{active:!0,initial:!1,children:R(`span`,{className:`flex items-center gap-1 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,children:[R(gS,{name:`x`,size:`sm`,className:`shrink-0 text-base-error`}),R(`span`,{className:`text-xs text-base-error leading-4`,children:t.agent_error})]})})]})})}function HX(e){return e.type===`disconnection`?R(RX,{entry:e}):e.type===`mode_toggle`?R(BX,{entry:e}):e.type===`error`?R(zX,{entry:e}):e.role===`agent`?R(PX,{entry:e}):R(FX,{entry:e})}function UX({entry:e,animateIn:t}){return R(Ib,{initial:!t,active:!0,children:HX(e)})}var WX=16;function GX({scrollPinned:e}){let t=F(null),n=F(null),r=F(!0),i=I(()=>{let e=t.current;e&&e.scrollTo({top:e.scrollHeight,behavior:`smooth`})},[]),a=I(t=>{t.deltaY<0&&(e.value=!1)},[e]),o=F(null),s=I(e=>{let t=e.touches[0];t&&(o.current=t.clientY)},[]),c=I(t=>{let n=t.touches[0];n&&o.current!==null&&(n.clientY>o.current&&(e.value=!1),o.current=n.clientY)},[e]),l=I(()=>{let n=t.current;if(!n)return;let{scrollTop:r,scrollHeight:i,clientHeight:a}=n;i-r-a<=WX&&(e.value=!0)},[e]);return _f(()=>{r.current=!1;let a=n.current,o=t.current;if(!a||!o)return;let s=a.getBoundingClientRect().height,c=new ResizeObserver(([t])=>{let n=t.contentRect.height,r=n>s;s=n,r&&e.peek()&&i()});return c.observe(a),()=>c.disconnect()},[e,i]),{scrollContainer:t,contentRef:n,handleScroll:l,handleWheel:a,handleTouchStart:s,handleTouchMove:c,firstRender:r}}function KX({scrollPinned:e,transcript:t}){let{scrollContainer:n,contentRef:r,handleScroll:i,handleWheel:a,handleTouchStart:o,handleTouchMove:s,firstRender:c}=GX({scrollPinned:e});return R(`div`,{ref:n,className:`px-4 pt-20 pb-4 grow overflow-y-auto z-2`,onScroll:i,onWheel:a,onTouchStart:o,onTouchMove:s,children:R(`div`,{ref:r,className:`flex flex-col gap-6`,children:t.value.map((e,t)=>R(UX,{entry:e,animateIn:!c.current},`${t}-${e.conversationIndex}`))})})}function qX({className:e,...t}){return R(`textarea`,{className:Bb(`px-3 py-[calc(theme(spacing.2)-1px)] border text-sm text-base-primary bg-base border-base-border rounded-input focus-ring resize-none [field-sizing:content] placeholder:text-base-subtle`,e),...t})}function JX(){let e=ab(),{rating:t,feedbackText:n}=uS(),r=I(e=>{n.value=e.currentTarget.value},[]);return R(`div`,{className:`grow flex flex-col overflow-y-auto overflow-x-hidden px-4`,children:R(`div`,{className:`flex flex-col gap-8 min-h-full pt-4 pb-2`,children:[R(`div`,{className:`flex flex-col items-center justify-center gap-3`,children:[R(MS,{orbColor:`var(--el-base-subtle)`,circleBackgroundColor:`var(--el-base)`,starColor:`var(--el-base-primary)`,className:`w-20 h-22`}),t.value!==null&&R(KS,{rating:t.value,min:1,max:5}),R(`div`,{className:`text-center`,children:[R(`p`,{className:`text-sm text-base-primary font-medium`,children:e.thanks_for_feedback}),R(`p`,{className:`text-sm text-base-subtle`,children:e.thanks_for_feedback_details})]})]}),R(qX,{className:`w-full min-h-[6lh]`,placeholder:e.follow_up_feedback_placeholder,rows:6,value:n,onInput:r})]})})}function YX(){let e=ab(),{currentContent:t}=pS(),{submitFeedback:n}=uS();return R(`div`,{className:`shrink-0 overflow-hidden flex p-3 items-end justify-end`,children:R(VS,{variant:`primary`,onClick:I(()=>{n(),t.value=`transcript`},[n]),children:e.submit})})}function XX(e,[t,n]){return Math.min(n,Math.max(t,e))}typeof window<`u`&&window.document&&window.document.createElement;function ZX(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function QX(e,t=[]){let n=[];function r(t,r){let i=Vd(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=bf(()=>o,Object.values(o));return R(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=xf(o?.[e]?.[a]||i);if(s)return s;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>Vd(e));return function(n){let r=n?.[e]||t;return bf(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,$X(i,...t)]}function $X(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return bf(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function eZ(e){let t=tZ(e),n=Uf((e,n)=>{let{children:r,...i}=e,a=Gf.toArray(r),o=a.find(rZ);if(o){let e=o.props.children,r=a.map(t=>t===o?Gf.count(e)>1?Gf.only(null):Cp(e)?e.props.children:null:t);return R(t,{...i,ref:n,children:Cp(e)?Ep(e,void 0,r):null})}return R(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function tZ(e){let t=Uf((e,t)=>{let{children:n,...r}=e;if(Cp(n)){let e=aZ(n),i=iZ(r,n.props);return n.type!==gd&&(i.ref=t?bb(t,e):e),Ep(n,i)}return Gf.count(n)>1?Gf.only(null):null});return t.displayName=`${e}.SlotClone`,t}var nZ=Symbol(`radix.slottable`);function rZ(e){return Cp(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===nZ}function iZ(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function aZ(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function oZ(e){let t=e+`CollectionProvider`,[n,r]=QX(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=jp.useRef(null),a=jp.useRef(new Map).current;return R(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=eZ(s),l=jp.forwardRef((e,t)=>{let{scope:n,children:r}=e;return R(c,{ref:xb(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=eZ(u),p=jp.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=jp.useRef(null),s=xb(t,o),c=a(u,n);return jp.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),R(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return jp.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},m,r]}var sZ=Vd(void 0);function cZ(e){let t=xf(sZ);return e||t||`ltr`}var lZ=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=eZ(`Primitive.${t}`),r=Uf((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),R(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function uZ(e,t){e&&Ap(()=>e.dispatchEvent(t))}function dZ(e){let t=F(e);return _f(()=>{t.current=e}),bf(()=>(...e)=>t.current?.(...e),[])}function fZ(e,t=globalThis?.document){let n=dZ(e);_f(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var pZ=`DismissableLayer`,mZ=`dismissableLayer.update`,hZ=`dismissableLayer.pointerDownOutside`,gZ=`dismissableLayer.focusOutside`,_Z,vZ=Vd({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),yZ=Uf((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=xf(vZ),[u,d]=hf(null),f=u?.ownerDocument??globalThis?.document,[,p]=hf({}),m=xb(t,e=>d(e)),h=Array.from(l.layers),[g]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),_=h.indexOf(g),v=u?h.indexOf(u):-1,y=l.layersWithOutsidePointerEventsDisabled.size>0,b=v>=_,x=SZ(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!b||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),S=CZ(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return fZ(e=>{v===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),_f(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(_Z=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),wZ(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=_Z)}},[u,f,n,l]),_f(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),wZ())},[u,l]),_f(()=>{let e=()=>p({});return document.addEventListener(mZ,e),()=>document.removeEventListener(mZ,e)},[]),R(lZ.div,{...c,ref:m,style:{pointerEvents:y?b?`auto`:`none`:void 0,...e.style},onFocusCapture:ZX(e.onFocusCapture,S.onFocusCapture),onBlurCapture:ZX(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:ZX(e.onPointerDownCapture,x.onPointerDownCapture)})});yZ.displayName=pZ;var bZ=`DismissableLayerBranch`,xZ=Uf((e,t)=>{let n=xf(vZ),r=F(null),i=xb(t,r);return _f(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),R(lZ.div,{...e,ref:i})});xZ.displayName=bZ;function SZ(e,t=globalThis?.document){let n=dZ(e),r=F(!1),i=F(()=>{});return _f(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){TZ(hZ,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function CZ(e,t=globalThis?.document){let n=dZ(e),r=F(!1);return _f(()=>{let e=e=>{e.target&&!r.current&&TZ(gZ,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function wZ(){let e=new CustomEvent(mZ);document.dispatchEvent(e)}function TZ(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?uZ(i,a):i.dispatchEvent(a)}var EZ=0;function DZ(){_f(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??OZ()),document.body.insertAdjacentElement(`beforeend`,e[1]??OZ()),EZ++,()=>{EZ===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),EZ--}},[])}function OZ(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var kZ=`focusScope.autoFocusOnMount`,AZ=`focusScope.autoFocusOnUnmount`,jZ={bubbles:!1,cancelable:!0},MZ=`FocusScope`,NZ=Uf((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=hf(null),l=dZ(i),u=dZ(a),d=F(null),f=xb(t,e=>c(e)),p=F({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;_f(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:BZ(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||BZ(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&BZ(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),_f(()=>{if(s){VZ.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(kZ,jZ);s.addEventListener(kZ,l),s.dispatchEvent(t),t.defaultPrevented||(PZ(WZ(IZ(s)),{select:!0}),document.activeElement===e&&BZ(s))}return()=>{s.removeEventListener(kZ,l),setTimeout(()=>{let t=new CustomEvent(AZ,jZ);s.addEventListener(AZ,u),s.dispatchEvent(t),t.defaultPrevented||BZ(e??document.body,{select:!0}),s.removeEventListener(AZ,u),VZ.remove(p)},0)}}},[s,l,u,p]);let m=I(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=FZ(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&BZ(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&BZ(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return R(lZ.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});NZ.displayName=MZ;function PZ(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(BZ(r,{select:t}),document.activeElement!==n)return}function FZ(e){let t=IZ(e);return[LZ(t,e),LZ(t.reverse(),e)]}function IZ(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function LZ(e,t){for(let n of e)if(!RZ(n,{upTo:t}))return n}function RZ(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function zZ(e){return e instanceof HTMLInputElement&&`select`in e}function BZ(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&zZ(e)&&t&&e.select()}}var VZ=HZ();function HZ(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=UZ(e,t),e.unshift(t)},remove(t){e=UZ(e,t),e[0]?.resume()}}}function UZ(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function WZ(e){return e.filter(e=>e.tagName!==`A`)}var GZ=globalThis?.document?vf:()=>{},KZ=Cf||(()=>void 0),qZ=0;function JZ(e){let[t,n]=hf(KZ());return GZ(()=>{e||n(e=>e??String(qZ++))},[e]),e||(t?`radix-${t}`:``)}var YZ=[`top`,`right`,`bottom`,`left`],XZ=Math.min,ZZ=Math.max,QZ=Math.round,$Z=Math.floor,eQ=e=>({x:e,y:e}),tQ={left:`right`,right:`left`,bottom:`top`,top:`bottom`},nQ={start:`end`,end:`start`};function rQ(e,t,n){return ZZ(e,XZ(t,n))}function iQ(e,t){return typeof e==`function`?e(t):e}function aQ(e){return e.split(`-`)[0]}function oQ(e){return e.split(`-`)[1]}function sQ(e){return e===`x`?`y`:`x`}function cQ(e){return e===`y`?`height`:`width`}var lQ=new Set([`top`,`bottom`]);function uQ(e){return lQ.has(aQ(e))?`y`:`x`}function dQ(e){return sQ(uQ(e))}function fQ(e,t,n){n===void 0&&(n=!1);let r=oQ(e),i=dQ(e),a=cQ(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=xQ(o)),[o,xQ(o)]}function pQ(e){let t=xQ(e);return[mQ(e),t,mQ(t)]}function mQ(e){return e.replace(/start|end/g,e=>nQ[e])}var hQ=[`left`,`right`],gQ=[`right`,`left`],_Q=[`top`,`bottom`],vQ=[`bottom`,`top`];function yQ(e,t,n){switch(e){case`top`:case`bottom`:return n?t?gQ:hQ:t?hQ:gQ;case`left`:case`right`:return t?_Q:vQ;default:return[]}}function bQ(e,t,n,r){let i=oQ(e),a=yQ(aQ(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(mQ)))),a}function xQ(e){return e.replace(/left|right|bottom|top/g,e=>tQ[e])}function SQ(e){return{top:0,right:0,bottom:0,left:0,...e}}function CQ(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:SQ(e)}function wQ(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function TQ(e,t,n){let{reference:r,floating:i}=e,a=uQ(t),o=dQ(t),s=cQ(o),c=aQ(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(oQ(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}var EQ=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=TQ(l,r,c),f=r,p={},m=0;for(let n=0;n<s.length;n++){let{name:a,fn:h}=s[n],{x:g,y:_,data:v,reset:y}=await h({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:p,rects:l,platform:o,elements:{reference:e,floating:t}});u=g??u,d=_??d,p={...p,[a]:{...p[a],...v}},y&&m<=50&&(m++,typeof y==`object`&&(y.placement&&(f=y.placement),y.rects&&(l=y.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):y.rects),{x:u,y:d}=TQ(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:p}};async function DQ(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=iQ(t,e),p=CQ(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=wQ(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=wQ(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var OQ=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=iQ(e,t)||{};if(l==null)return{};let d=CQ(u),f={x:n,y:r},p=dQ(i),m=cQ(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,ee=XZ(d[_],T),te=XZ(d[v],T),ne=ee,re=C-h[m]-te,ie=C/2-h[m]/2+w,ae=rQ(ne,ie,re),oe=!c.arrow&&oQ(i)!=null&&ie!==ae&&a.reference[m]/2-(ie<ne?ee:te)-h[m]/2<0,se=oe?ie<ne?ie-ne:ie-re:0;return{[p]:f[p]+se,data:{[p]:ae,centerOffset:ie-ae-se,...oe&&{alignmentOffset:se}},reset:oe}}}),kQ=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=iQ(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=aQ(r),_=uQ(o),v=aQ(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[xQ(o)]:pQ(o)),x=p!==`none`;!d&&x&&b.push(...bQ(o,m,p,y));let S=[o,...b],C=await DQ(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=fQ(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==uQ(t))||T.every(e=>uQ(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=uQ(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function AQ(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function jQ(e){return YZ.some(t=>e[t]>=0)}var MQ=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n}=t,{strategy:r=`referenceHidden`,...i}=iQ(e,t);switch(r){case`referenceHidden`:{let e=AQ(await DQ(t,{...i,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:jQ(e)}}}case`escaped`:{let e=AQ(await DQ(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:jQ(e)}}}default:return{}}}}},NQ=new Set([`left`,`top`]);async function PQ(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=aQ(n),s=oQ(n),c=uQ(n)===`y`,l=NQ.has(o)?-1:1,u=a&&c?-1:1,d=iQ(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var FQ=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await PQ(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},IQ=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=iQ(e,t),l={x:n,y:r},u=await DQ(t,c),d=uQ(aQ(i)),f=sQ(d),p=l[f],m=l[d];if(a){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=p+u[e],r=p-u[t];p=rQ(n,p,r)}if(o){let e=d===`y`?`top`:`left`,t=d===`y`?`bottom`:`right`,n=m+u[e],r=m-u[t];m=rQ(n,m,r)}let h=s.fn({...t,[f]:p,[d]:m});return{...h,data:{x:h.x-n,y:h.y-r,enabled:{[f]:a,[d]:o}}}}}},LQ=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=iQ(e,t),u={x:n,y:r},d=uQ(i),f=sQ(d),p=u[f],m=u[d],h=iQ(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=NQ.has(aQ(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},RQ=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=iQ(e,t),u=await DQ(t,l),d=aQ(i),f=oQ(i),p=uQ(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=XZ(h-u[g],v),x=XZ(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=ZZ(u.left,0),t=ZZ(u.right,0),n=ZZ(u.top,0),r=ZZ(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:ZZ(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:ZZ(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function zQ(){return typeof window<`u`}function BQ(e){return UQ(e)?(e.nodeName||``).toLowerCase():`#document`}function VQ(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function HQ(e){return((UQ(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function UQ(e){return zQ()?e instanceof Node||e instanceof VQ(e).Node:!1}function WQ(e){return zQ()?e instanceof Element||e instanceof VQ(e).Element:!1}function GQ(e){return zQ()?e instanceof HTMLElement||e instanceof VQ(e).HTMLElement:!1}function KQ(e){return!zQ()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof VQ(e).ShadowRoot}var qQ=new Set([`inline`,`contents`]);function JQ(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=s$(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!qQ.has(i)}var YQ=new Set([`table`,`td`,`th`]);function XQ(e){return YQ.has(BQ(e))}var ZQ=[`:popover-open`,`:modal`];function QQ(e){return ZQ.some(t=>{try{return e.matches(t)}catch{return!1}})}var $Q=[`transform`,`translate`,`scale`,`rotate`,`perspective`],e$=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],t$=[`paint`,`layout`,`strict`,`content`];function n$(e){let t=i$(),n=WQ(e)?s$(e):e;return $Q.some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||e$.some(e=>(n.willChange||``).includes(e))||t$.some(e=>(n.contain||``).includes(e))}function r$(e){let t=l$(e);for(;GQ(t)&&!o$(t);){if(n$(t))return t;if(QQ(t))return null;t=l$(t)}return null}function i$(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var a$=new Set([`html`,`body`,`#document`]);function o$(e){return a$.has(BQ(e))}function s$(e){return VQ(e).getComputedStyle(e)}function c$(e){return WQ(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function l$(e){if(BQ(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||KQ(e)&&e.host||HQ(e);return KQ(t)?t.host:t}function u$(e){let t=l$(e);return o$(t)?e.ownerDocument?e.ownerDocument.body:e.body:GQ(t)&&JQ(t)?t:u$(t)}function d$(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=u$(e),i=r===e.ownerDocument?.body,a=VQ(r);if(i){let e=f$(a);return t.concat(a,a.visualViewport||[],JQ(r)?r:[],e&&n?d$(e):[])}return t.concat(r,d$(r,[],n))}function f$(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function p$(e){let t=s$(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=GQ(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=QZ(n)!==a||QZ(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function m$(e){return WQ(e)?e:e.contextElement}function h$(e){let t=m$(e);if(!GQ(t))return eQ(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=p$(t),o=(a?QZ(n.width):n.width)/r,s=(a?QZ(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var g$=eQ(0);function _$(e){let t=VQ(e);return!i$()||!t.visualViewport?g$:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function v$(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==VQ(e)?!1:t}function y$(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=m$(e),o=eQ(1);t&&(r?WQ(r)&&(o=h$(r)):o=h$(e));let s=v$(a,n,r)?_$(a):eQ(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=VQ(a),t=r&&WQ(r)?VQ(r):r,n=e,i=f$(n);for(;i&&r&&t!==n;){let e=h$(i),t=i.getBoundingClientRect(),r=s$(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=VQ(i),i=f$(n)}}return wQ({width:u,height:d,x:c,y:l})}function b$(e,t){let n=c$(e).scrollLeft;return t?t.left+n:y$(HQ(e)).left+n}function x$(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-b$(e,n),y:n.top+t.scrollTop}}function S$(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=HQ(r),s=t?QQ(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=eQ(1),u=eQ(0),d=GQ(r);if((d||!d&&!a)&&((BQ(r)!==`body`||JQ(o))&&(c=c$(r)),GQ(r))){let e=y$(r);l=h$(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?x$(o,c):eQ(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function C$(e){return Array.from(e.getClientRects())}function w$(e){let t=HQ(e),n=c$(e),r=e.ownerDocument.body,i=ZZ(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=ZZ(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+b$(e),s=-n.scrollTop;return s$(r).direction===`rtl`&&(o+=ZZ(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var T$=25;function E$(e,t){let n=VQ(e),r=HQ(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=i$();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=b$(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=T$&&(a-=o)}else l<=T$&&(a+=l);return{width:a,height:o,x:s,y:c}}var D$=new Set([`absolute`,`fixed`]);function O$(e,t){let n=y$(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=GQ(e)?h$(e):eQ(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function k$(e,t,n){let r;if(t===`viewport`)r=E$(e,n);else if(t===`document`)r=w$(HQ(e));else if(WQ(t))r=O$(t,n);else{let n=_$(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return wQ(r)}function A$(e,t){let n=l$(e);return n===t||!WQ(n)||o$(n)?!1:s$(n).position===`fixed`||A$(n,t)}function j$(e,t){let n=t.get(e);if(n)return n;let r=d$(e,[],!1).filter(e=>WQ(e)&&BQ(e)!==`body`),i=null,a=s$(e).position===`fixed`,o=a?l$(e):e;for(;WQ(o)&&!o$(o);){let t=s$(o),n=n$(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&D$.has(i.position)||JQ(o)&&!n&&A$(e,o))?r=r.filter(e=>e!==o):i=t,o=l$(o)}return t.set(e,r),r}function M$(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?QQ(t)?[]:j$(t,this._c):[].concat(n),r],o=a[0],s=a.reduce((e,n)=>{let r=k$(t,n,i);return e.top=ZZ(r.top,e.top),e.right=XZ(r.right,e.right),e.bottom=XZ(r.bottom,e.bottom),e.left=ZZ(r.left,e.left),e},k$(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function N$(e){let{width:t,height:n}=p$(e);return{width:t,height:n}}function P$(e,t,n){let r=GQ(t),i=HQ(t),a=n===`fixed`,o=y$(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=eQ(0);function l(){c.x=b$(i)}if(r||!r&&!a)if((BQ(t)!==`body`||JQ(i))&&(s=c$(t)),r){let e=y$(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?x$(i,s):eQ(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function F$(e){return s$(e).position===`static`}function I$(e,t){if(!GQ(e)||s$(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return HQ(e)===n&&(n=n.ownerDocument.body),n}function L$(e,t){let n=VQ(e);if(QQ(e))return n;if(!GQ(e)){let t=l$(e);for(;t&&!o$(t);){if(WQ(t)&&!F$(t))return t;t=l$(t)}return n}let r=I$(e,t);for(;r&&XQ(r)&&F$(r);)r=I$(r,t);return r&&o$(r)&&F$(r)&&!n$(r)?n:r||r$(e)||n}var R$=async function(e){let t=this.getOffsetParent||L$,n=this.getDimensions,r=await n(e.floating);return{reference:P$(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function z$(e){return s$(e).direction===`rtl`}var B$={convertOffsetParentRelativeRectToViewportRelativeRect:S$,getDocumentElement:HQ,getClippingRect:M$,getOffsetParent:L$,getElementRects:R$,getClientRects:C$,getDimensions:N$,getScale:h$,isElement:WQ,isRTL:z$};function V$(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function H$(e,t){let n=null,r,i=HQ(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=$Z(d),h=$Z(i.clientWidth-(u+f)),g=$Z(i.clientHeight-(d+p)),_=$Z(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:ZZ(0,XZ(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!V$(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function U$(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=m$(e),u=i||a?[...l?d$(l):[],...d$(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?H$(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?y$(e):null;c&&g();function g(){let t=y$(e);h&&!V$(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var W$=FQ,G$=IQ,K$=kQ,q$=RQ,J$=MQ,Y$=OQ,X$=LQ,Z$=(e,t,n)=>{let r=new Map,i={platform:B$,...n},a={...i.platform,_c:r};return EQ(e,t,{...i,platform:a})},Q$=typeof document<`u`?vf:function(){};function $$(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!$$(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!$$(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function e1(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function t1(e,t){let n=e1(e);return Math.round(t*n)/n}function n1(e){let t=F(e);return Q$(()=>{t.current=e}),t}function r1(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=hf({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=hf(r);$$(f,r)||p(r);let[m,h]=hf(null),[g,_]=hf(null),v=I(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=I(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=F(null),C=F(null),w=F(u),T=c!=null,ee=n1(c),te=n1(i),ne=n1(l),re=I(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};te.current&&(e.platform=te.current),Z$(S.current,C.current,e).then(e=>{let t={...e,isPositioned:ne.current!==!1};ie.current&&!$$(w.current,t)&&(w.current=t,Ap(()=>{d(t)}))})},[f,t,n,te,ne]);Q$(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let ie=F(!1);Q$(()=>(ie.current=!0,()=>{ie.current=!1}),[]),Q$(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(ee.current)return ee.current(b,x,re);re()}},[b,x,re,ee,T]);let ae=bf(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),oe=bf(()=>({reference:b,floating:x}),[b,x]),se=bf(()=>{let e={position:n,left:0,top:0};if(!oe.floating)return e;let t=t1(oe.floating,u.x),r=t1(oe.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...e1(oe.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,oe.floating,u.x,u.y]);return bf(()=>({...u,update:re,refs:ae,elements:oe,floatingStyles:se}),[u,re,ae,oe,se])}var i1=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Y$({element:r.current,padding:i}).fn(n):r?Y$({element:r,padding:i}).fn(n):{}}}},a1=(e,t)=>({...W$(e),options:[e,t]}),o1=(e,t)=>({...G$(e),options:[e,t]}),s1=(e,t)=>({...X$(e),options:[e,t]}),c1=(e,t)=>({...K$(e),options:[e,t]}),l1=(e,t)=>({...q$(e),options:[e,t]}),u1=(e,t)=>({...J$(e),options:[e,t]}),d1=(e,t)=>({...i1(e),options:[e,t]}),f1=`Arrow`,p1=Uf((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return R(lZ.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:R(`polygon`,{points:`0,0 30,0 15,10`})})});p1.displayName=f1;var m1=p1;function h1(e){let[t,n]=hf(void 0);return GZ(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var g1=`Popper`,[_1,v1]=QX(g1),[y1,b1]=_1(g1),x1=e=>{let{__scopePopper:t,children:n}=e,[r,i]=hf(null);return R(y1,{scope:t,anchor:r,onAnchorChange:i,children:n})};x1.displayName=g1;var S1=`PopperAnchor`,C1=Uf((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=b1(S1,n),o=F(null),s=xb(t,o),c=F(null);return _f(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:R(lZ.div,{...i,ref:s})});C1.displayName=S1;var w1=`PopperContent`,[T1,E1]=_1(w1),D1=Uf((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:m,...h}=e,g=b1(w1,n),[_,v]=hf(null),y=xb(t,e=>v(e)),[b,x]=hf(null),S=h1(b),C=S?.width??0,w=S?.height??0,T=r+(a===`center`?``:`-`+a),ee=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},te=Array.isArray(l)?l:[l],ne=te.length>0,re={padding:ee,boundary:te.filter(j1),altBoundary:ne},{refs:ie,floatingStyles:ae,placement:oe,isPositioned:se,middlewareData:E}=r1({strategy:`fixed`,placement:T,whileElementsMounted:(...e)=>U$(...e,{animationFrame:p===`always`}),elements:{reference:g.anchor},middleware:[a1({mainAxis:i+w,alignmentAxis:o}),c&&o1({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?s1():void 0,...re}),c&&c1({...re}),l1({...re,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),b&&d1({element:b,padding:s}),M1({arrowWidth:C,arrowHeight:w}),f&&u1({strategy:`referenceHidden`,...re})]}),[ce,le]=N1(oe),ue=dZ(m);GZ(()=>{se&&ue?.()},[se,ue]);let de=E.arrow?.x,fe=E.arrow?.y,pe=E.arrow?.centerOffset!==0,[me,he]=hf();return GZ(()=>{_&&he(window.getComputedStyle(_).zIndex)},[_]),R(`div`,{ref:ie.setFloating,"data-radix-popper-content-wrapper":``,style:{...ae,transform:se?ae.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:me,"--radix-popper-transform-origin":[E.transformOrigin?.x,E.transformOrigin?.y].join(` `),...E.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:R(T1,{scope:n,placedSide:ce,onArrowChange:x,arrowX:de,arrowY:fe,shouldHideArrow:pe,children:R(lZ.div,{"data-side":ce,"data-align":le,...h,ref:y,style:{...h.style,animation:se?void 0:`none`}})})})});D1.displayName=w1;var O1=`PopperArrow`,k1={top:`bottom`,right:`left`,bottom:`top`,left:`right`},A1=Uf(function(e,t){let{__scopePopper:n,...r}=e,i=E1(O1,n),a=k1[i.placedSide];return R(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:R(m1,{...r,ref:t,style:{...r.style,display:`block`}})})});A1.displayName=O1;function j1(e){return e!==null}var M1=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=N1(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function N1(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var P1=x1,F1=C1,I1=D1,L1=A1,R1=`Portal`,z1=Uf((e,t)=>{let{container:n,...r}=e,[i,a]=hf(!1);GZ(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?jp.createPortal(R(lZ.div,{...r,ref:t}),o):null});z1.displayName=R1;var B1=Rf||GZ;function V1({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=H1({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=F(e!==void 0);_f(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,I(t=>{if(s){let n=U1(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function H1({defaultProp:e,onChange:t}){let[n,r]=hf(e),i=F(n),a=F(t);return B1(()=>{a.current=t},[t]),_f(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function U1(e){return typeof e==`function`}function W1(e){let t=F({value:e,previous:e});return bf(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var G1=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),K1=`VisuallyHidden`,q1=Uf((e,t)=>R(lZ.span,{...e,ref:t,style:{...G1,...e.style}}));q1.displayName=K1;var J1=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Y1=new WeakMap,X1=new WeakMap,Z1={},Q1=0,$1=function(e){return e&&(e.host||$1(e.parentNode))},e0=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=$1(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},t0=function(e,t,n,r){var i=e0(t,Array.isArray(e)?e:[e]);Z1[n]||(Z1[n]=new WeakMap);var a=Z1[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Y1.get(e)||0)+1,l=(a.get(e)||0)+1;Y1.set(e,c),a.set(e,l),o.push(e),c===1&&i&&X1.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Q1++,function(){o.forEach(function(e){var t=Y1.get(e)-1,i=a.get(e)-1;Y1.set(e,t),a.set(e,i),t||(X1.has(e)||e.removeAttribute(r),X1.delete(e)),i||e.removeAttribute(n)}),Q1--,Q1||(Y1=new WeakMap,Y1=new WeakMap,X1=new WeakMap,Z1={})}},n0=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||J1(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),t0(r,i,n,`aria-hidden`)):function(){return null}},r0=function(){return r0=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},r0.apply(this,arguments)};function i0(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function a0(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var o0=`right-scroll-bar-position`,s0=`width-before-scroll-bar`,c0=`with-scroll-bars-hidden`,l0=`--removed-body-scroll-bar-size`;function u0(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function d0(e,t){var n=hf(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var f0=typeof window<`u`?vf:_f,p0=new WeakMap;function m0(e,t){var n=d0(t||null,function(t){return e.forEach(function(e){return u0(e,t)})});return f0(function(){var t=p0.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||u0(e,null)}),i.forEach(function(e){r.has(e)||u0(e,a)})}p0.set(n,e)},[e]),n}function h0(e){return e}function g0(e,t){t===void 0&&(t=h0);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function _0(e){e===void 0&&(e={});var t=g0(null);return t.options=r0({async:!0,ssr:!1},e),t}var v0=function(e){var t=e.sideCar,n=i0(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return pd(r,r0({},n))};v0.isSideCarExport=!0;function y0(e,t){return e.useMedium(t),v0}var b0=_0(),x0=function(){},S0=Uf(function(e,t){var n=F(null),r=hf({onScrollCapture:x0,onWheelCapture:x0,onTouchMoveCapture:x0}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=i0(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=m0([n,t]),C=r0(r0({},b),i);return pd(gd,null,u&&pd(x,{sideCar:b0,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?Ep(Gf.only(s),r0(r0({},C),{ref:S})):pd(v,r0({},C,{className:c,ref:S}),s))});S0.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},S0.classNames={fullWidth:s0,zeroRight:o0};var C0,w0=function(){if(C0)return C0;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function T0(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=w0();return t&&e.setAttribute(`nonce`,t),e}function E0(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function D0(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var O0=function(){var e=0,t=null;return{add:function(n){e==0&&(t=T0())&&(E0(t,n),D0(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},k0=function(){var e=O0();return function(t,n){_f(function(){return e.add(t),function(){e.remove()}},[t&&n])}},A0=function(){var e=k0();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},j0={left:0,top:0,right:0,gap:0},M0=function(e){return parseInt(e||``,10)||0},N0=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[M0(n),M0(r),M0(i)]},P0=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return j0;var t=N0(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},F0=A0(),I0=`data-scroll-locked`,L0=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
|
|
385
|
+
`)||(e.endsWith("```\n")||e.endsWith("```"))&&t%2==0)return e;let r=e.match(WY);if(r&&!n){let t=r[2];if(!t||KY.test(t))return e;if(dX(e)%2==1)return`${e}\``}return e},pX=e=>{let t=e.match(GY);if(t){let n=t[2];if(!n||KY.test(n))return e;if((e.match(/~~/g)||[]).length%2==1)return`${e}~~`}return e},mX=e=>{let t=0,n=0;for(let r=0;r<e.length;r+=1)e[r]===`*`?n+=1:(n>=3&&(t+=Math.floor(n/3)),n=0);return n>=3&&(t+=Math.floor(n/3)),t},hX=e=>{if(QY(e)||XY.test(e))return e;let t=e.match(VY);if(t){let n=t[2];if(!n||KY.test(n))return e;if(mX(e)%2==1)return`${e}***`}return e},gX=e=>{if(!e||typeof e!=`string`)return e;let t=e,n=nX(t);return n.endsWith(`](streamdown:incomplete-link)`)?n:(t=n,t=hX(t),t=rX(t),t=iX(t),t=oX(t),t=lX(t),t=fX(t),t=pX(t),t)};function _X(){if(window.location!==window.parent.location){let{ancestorOrigins:e}=document.location;if(e&&e.length)return e[0];if(document.referrer)try{return new URL(document.referrer).origin}catch{}}return document.location.origin}function vX(e){let t=_X(),n=[t,...$q(e)];return[Hk,[MC,{...hC,protocols:{...hC.protocols,src:[...hC.protocols?.src||[],`data`]}}],[Wk,{allowedImagePrefixes:[`*`],allowedLinkPrefixes:n,allowedProtocols:[`*`],defaultOrigin:t,allowDataImages:!0}]]}var yX=[[hI,{}],[fj,{}],[mj,{}]],bX=Vd({isAnimating:!1}),xX=Bf(({content:e,shouldParseIncompleteMarkdown:t,markdownOptions:n})=>{let r=bf(()=>typeof e==`string`&&t?gX(e.trim()):e,[e,t]);return R(Jq,{...n,children:r})},(e,t)=>e.content===t.content&&e.shouldParseIncompleteMarkdown===t.shouldParseIncompleteMarkdown&&e.markdownOptions===t.markdownOptions),SX=Bf(({children:e,parseIncompleteMarkdown:t=!0,className:n,isAnimating:r=!1,linkConfig:i})=>{let a=Cf(),o=bf(()=>RY(typeof e==`string`?e:``),[e]),s=bf(()=>({components:AG,rehypePlugins:vX(i),remarkPlugins:yX}),[i]);return R(RW.Provider,{value:zW,children:R(bX.Provider,{value:{isAnimating:r},children:R(`div`,{className:sS(`markdown *:first:mt-0 *:last:mb-0`,n),children:o.map((e,n)=>R(xX,{content:e,shouldParseIncompleteMarkdown:t,markdownOptions:s},`${a}-block-${n}`))})})})},(e,t)=>e.children===t.children&&e.isAnimating===t.isAnimating&&e.className===t.className&&e.parseIncompleteMarkdown===t.parseIncompleteMarkdown&&e.linkConfig===t.linkConfig),CX=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`application/pdf`],wX=[`.png`,`.jpg`,`.jpeg`,`.gif`,`.webp`,`.pdf`],TX=10,EX=20;function DX(e){return e.startsWith(`image/`)}function OX(e){return CX.includes(e)}function kX(e){return(DX(e)?TX:EX)*1024*1024}function AX(e,t){return`${e}/v1/convai/conversations/${t}/files`}function jX(e,t,n){fetch(`${AX(e,t)}/${n}`,{method:`DELETE`}).catch(()=>{})}function MX({conversationId:e,maxFiles:t}){let{serverUrl:n}=zh(),r=bf(()=>qp(null),[]),i=bf(()=>qp(0),[]),a=F(null),o=F(null),s=F([]),c=F(null),l=e=>{let t=r.peek();t&&(r.value=null,t.status===`uploading`?c.current?.abort():t.status===`ready`&&e&&jX(n.peek(),e,t.fileId),NX(o.current),o.current=null)};if(e!==a.current){let t=a.current;a.current=e,i.value=0,e!==null&&(s.current.forEach(NX),s.current=[]),l(t)}_f(()=>()=>{l(a.current),s.current.forEach(NX)},[]);let u=bf(()=>Qp(()=>{if(t==null)return!1;let e=+!!r.value;return i.value+e>=t}),[t,r,i]);return{pendingFile:r,isUploading:bf(()=>Qp(()=>r.value?.status===`uploading`),[r]),hasReachedLimit:u,addFile:I(t=>{if(!e)return null;if(u.peek())return`limit_reached`;if(!OX(t.type))return`unsupported_type`;if(t.size>kX(t.type))return`too_large`;NX(o.current),o.current=null;let i=DX(t.type)?URL.createObjectURL(t):null;o.current=i,r.value={file:t,status:`uploading`,previewUrl:i};let a=new FormData;a.append(`file`,t);let s=new AbortController;c.current=s;let l=e,d=n.peek();return fetch(AX(d,l),{method:`POST`,body:a,signal:s.signal}).then(async e=>{if(!e.ok){let t=await e.json().catch(()=>null);throw Error(t?.detail?.message??t?.detail??`Upload failed`)}return e.json()}).then(e=>{let n=r.peek();n?.file===t?r.value={status:`ready`,file:n.file,previewUrl:n.previewUrl,fileId:e.file_id}:jX(d,l,e.file_id)}).catch(e=>{if(e?.name===`AbortError`)return;console.warn(`[convai] file upload failed:`,e);let n=r.peek();n?.file===t&&(r.value={status:`error`,file:n.file,previewUrl:n.previewUrl,error:e?.message??`Upload failed`})}).finally(()=>{c.current===s&&(c.current=null)}),null},[e,r,n,u]),removeFile:I(()=>{l(e)},[e]),markFileAsSent:I(()=>{o.current&&=(s.current.push(o.current),null),r.value=null,i.value++},[r,i])}}function NX(e){e&&URL.revokeObjectURL(e)}function PX({entry:e}){let t=Gy(),n=Fy().value.strip_audio_tags&&!e.isText?ZS(e.message):e.message;return R(`div`,{className:`pr-8`,children:[n&&R(SX,{linkConfig:t.value,children:n}),e.toolStatus&&R(`div`,{className:n?`mt-2`:void 0,children:R(VX,{status:e.toolStatus})})]})}function FX({entry:e}){let{previewUrl:t}=lb(),n=e.fileInput;return R(`div`,{className:Bb(`flex gap-2.5 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,e.role===`user`?`justify-end pl-16 origin-top-right`:`pr-16 origin-top-left`),children:[e.role===`agent`&&R(`img`,{src:t,alt:`AI agent avatar`,className:`bg-base-border shrink-0 w-5 h-5 rounded-full`}),R(`div`,{className:`flex flex-col items-end gap-1.5 min-w-0`,children:[n&&R(IX,{fileName:n.fileName,mimeType:n.mimeType,previewUrl:n.previewUrl}),e.message&&R(`div`,{dir:`auto`,className:Bb(`px-3 py-2.5 rounded-bubble text-sm min-w-0 wrap-break-word whitespace-pre-wrap`,e.role===`user`?`bg-accent text-accent-primary`:`bg-base-active text-base-primary`),children:e.message})]})]})}function IX({fileName:e,mimeType:t,previewUrl:n}){return DX(t)&&n?R(`div`,{className:`rounded-bubble border border-base-border shadow-sm p-1`,children:R(`img`,{src:n,alt:e,className:`max-w-[180px] rounded-input object-cover`})}):R(`div`,{className:`flex items-center gap-2 px-3 py-2.5 rounded-bubble bg-accent text-accent-primary`,children:[R(LX,{}),R(`span`,{className:`truncate text-sm`,children:e})]})}function LX(){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,className:`shrink-0 opacity-70`,children:[R(`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`}),R(`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`})]})}function RX({entry:e}){let t=ob(),{lastId:n}=ky(),r=Wy(),i=Fy();return R(`div`,{className:`px-8 flex flex-col`,children:[r.value===`rating`&&R(YS,{}),R(`div`,{className:`text-xs text-base-subtle text-center transition-opacity duration-200 data-hidden:opacity-0`,children:[e.role===`user`?t.user_ended_conversation:t.agent_ended_conversation,R(`br`,{}),n.value&&i.value.show_conversation_id&&R(`span`,{className:`break-all`,children:[t.conversation_id,`: `,n.value]})]})]})}function zX({entry:e}){let t=ob(),{lastId:n}=ky();return R(`div`,{className:`px-8 text-xs text-base-error text-center transition-opacity duration-200 data-hidden:opacity-0`,children:[t.error_occurred,R(`br`,{}),e.message,n.value&&R(gd,{children:[R(`br`,{}),R(`span`,{className:`text-base-subtle break-all`,children:[t.conversation_id,`: `,n.value]})]})]})}function BX({entry:e}){let t=ob();return R(`div`,{className:`px-8 text-xs text-base-subtle text-center transition-opacity duration-200 data-hidden:opacity-0`,children:e.mode===`text`?t.switched_to_text_mode:t.switched_to_voice_mode})}function VX({status:e}){let t=ob();return R(`div`,{className:`-my-4 first:mt-0 last:mb-0 flex items-center`,children:R(`div`,{className:`flex items-center h-7 px-2 gap-1 rounded-button border border-base-border bg-base`,children:[e===pb.LOADING&&R(gd,{children:[R(gS,{name:`loader`,size:`md`,className:`animate-spin shrink-0`}),R(`span`,{className:`text-xs leading-4`,children:t.agent_working})]}),e===pb.SUCCESS&&R(Ib,{active:!0,initial:!1,children:R(`span`,{className:`flex items-center gap-1 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,children:[R(gS,{name:`check`,size:`sm`,className:`shrink-0`}),R(`span`,{className:`text-xs leading-4`,children:t.agent_done})]})}),e===pb.ERROR&&R(Ib,{active:!0,initial:!1,children:R(`span`,{className:`flex items-center gap-1 transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:scale-75`,children:[R(gS,{name:`x`,size:`sm`,className:`shrink-0 text-base-error`}),R(`span`,{className:`text-xs text-base-error leading-4`,children:t.agent_error})]})})]})})}function HX(e){return e.type===`disconnection`?R(RX,{entry:e}):e.type===`mode_toggle`?R(BX,{entry:e}):e.type===`error`?R(zX,{entry:e}):e.role===`agent`?R(PX,{entry:e}):R(FX,{entry:e})}function UX({entry:e,animateIn:t}){return R(Ib,{initial:!t,active:!0,children:HX(e)})}var WX=16;function GX({scrollPinned:e}){let t=F(null),n=F(null),r=F(!0),i=I(()=>{let e=t.current;e&&e.scrollTo({top:e.scrollHeight,behavior:`smooth`})},[]),a=I(t=>{t.deltaY<0&&(e.value=!1)},[e]),o=F(null),s=I(e=>{let t=e.touches[0];t&&(o.current=t.clientY)},[]),c=I(t=>{let n=t.touches[0];n&&o.current!==null&&(n.clientY>o.current&&(e.value=!1),o.current=n.clientY)},[e]),l=I(()=>{let n=t.current;if(!n)return;let{scrollTop:r,scrollHeight:i,clientHeight:a}=n;i-r-a<=WX&&(e.value=!0)},[e]);return _f(()=>{r.current=!1;let a=n.current,o=t.current;if(!a||!o)return;let s=a.getBoundingClientRect().height,c=new ResizeObserver(([t])=>{let n=t.contentRect.height,r=n>s;s=n,r&&e.peek()&&i()});return c.observe(a),()=>c.disconnect()},[e,i]),{scrollContainer:t,contentRef:n,handleScroll:l,handleWheel:a,handleTouchStart:s,handleTouchMove:c,firstRender:r}}function KX({scrollPinned:e,transcript:t}){let{scrollContainer:n,contentRef:r,handleScroll:i,handleWheel:a,handleTouchStart:o,handleTouchMove:s,firstRender:c}=GX({scrollPinned:e});return R(`div`,{ref:n,className:`px-4 pt-20 pb-4 grow overflow-y-auto z-2`,onScroll:i,onWheel:a,onTouchStart:o,onTouchMove:s,children:R(`div`,{ref:r,className:`flex flex-col gap-6`,children:t.value.map((e,t)=>R(UX,{entry:e,animateIn:!c.current},`${t}-${e.conversationIndex}`))})})}function qX({className:e,...t}){return R(`textarea`,{className:Bb(`px-3 py-[calc(theme(spacing.2)-1px)] border text-sm text-base-primary bg-base border-base-border rounded-input focus-ring resize-none [field-sizing:content] placeholder:text-base-subtle`,e),...t})}function JX(){let e=ob(),{rating:t,feedbackText:n}=uS(),r=I(e=>{n.value=e.currentTarget.value},[]);return R(`div`,{className:`grow flex flex-col overflow-y-auto overflow-x-hidden px-4`,children:R(`div`,{className:`flex flex-col gap-8 min-h-full pt-4 pb-2`,children:[R(`div`,{className:`flex flex-col items-center justify-center gap-3`,children:[R(MS,{orbColor:`var(--el-base-subtle)`,circleBackgroundColor:`var(--el-base)`,starColor:`var(--el-base-primary)`,className:`w-20 h-22`}),t.value!==null&&R(KS,{rating:t.value,min:1,max:5}),R(`div`,{className:`text-center`,children:[R(`p`,{className:`text-sm text-base-primary font-medium`,children:e.thanks_for_feedback}),R(`p`,{className:`text-sm text-base-subtle`,children:e.thanks_for_feedback_details})]})]}),R(qX,{className:`w-full min-h-[6lh]`,placeholder:e.follow_up_feedback_placeholder,rows:6,value:n,onInput:r})]})})}function YX(){let e=ob(),{currentContent:t}=pS(),{submitFeedback:n}=uS();return R(`div`,{className:`shrink-0 overflow-hidden flex p-3 items-end justify-end`,children:R(VS,{variant:`primary`,onClick:I(()=>{n(),t.value=`transcript`},[n]),children:e.submit})})}function XX(e,[t,n]){return Math.min(n,Math.max(t,e))}typeof window<`u`&&window.document&&window.document.createElement;function ZX(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function QX(e,t=[]){let n=[];function r(t,r){let i=Vd(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=bf(()=>o,Object.values(o));return R(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=xf(o?.[e]?.[a]||i);if(s)return s;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>Vd(e));return function(n){let r=n?.[e]||t;return bf(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,$X(i,...t)]}function $X(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return bf(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function eZ(e){let t=tZ(e),n=Uf((e,n)=>{let{children:r,...i}=e,a=Gf.toArray(r),o=a.find(rZ);if(o){let e=o.props.children,r=a.map(t=>t===o?Gf.count(e)>1?Gf.only(null):Cp(e)?e.props.children:null:t);return R(t,{...i,ref:n,children:Cp(e)?Ep(e,void 0,r):null})}return R(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function tZ(e){let t=Uf((e,t)=>{let{children:n,...r}=e;if(Cp(n)){let e=aZ(n),i=iZ(r,n.props);return n.type!==gd&&(i.ref=t?bb(t,e):e),Ep(n,i)}return Gf.count(n)>1?Gf.only(null):null});return t.displayName=`${e}.SlotClone`,t}var nZ=Symbol(`radix.slottable`);function rZ(e){return Cp(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===nZ}function iZ(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function aZ(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function oZ(e){let t=e+`CollectionProvider`,[n,r]=QX(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=jp.useRef(null),a=jp.useRef(new Map).current;return R(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=eZ(s),l=jp.forwardRef((e,t)=>{let{scope:n,children:r}=e;return R(c,{ref:xb(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=eZ(u),p=jp.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=jp.useRef(null),s=xb(t,o),c=a(u,n);return jp.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),R(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return jp.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},m,r]}var sZ=Vd(void 0);function cZ(e){let t=xf(sZ);return e||t||`ltr`}var lZ=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=eZ(`Primitive.${t}`),r=Uf((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),R(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function uZ(e,t){e&&Ap(()=>e.dispatchEvent(t))}function dZ(e){let t=F(e);return _f(()=>{t.current=e}),bf(()=>(...e)=>t.current?.(...e),[])}function fZ(e,t=globalThis?.document){let n=dZ(e);_f(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var pZ=`DismissableLayer`,mZ=`dismissableLayer.update`,hZ=`dismissableLayer.pointerDownOutside`,gZ=`dismissableLayer.focusOutside`,_Z,vZ=Vd({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),yZ=Uf((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=xf(vZ),[u,d]=hf(null),f=u?.ownerDocument??globalThis?.document,[,p]=hf({}),m=xb(t,e=>d(e)),h=Array.from(l.layers),[g]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),_=h.indexOf(g),v=u?h.indexOf(u):-1,y=l.layersWithOutsidePointerEventsDisabled.size>0,b=v>=_,x=SZ(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!b||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),S=CZ(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return fZ(e=>{v===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),_f(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(_Z=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),wZ(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=_Z)}},[u,f,n,l]),_f(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),wZ())},[u,l]),_f(()=>{let e=()=>p({});return document.addEventListener(mZ,e),()=>document.removeEventListener(mZ,e)},[]),R(lZ.div,{...c,ref:m,style:{pointerEvents:y?b?`auto`:`none`:void 0,...e.style},onFocusCapture:ZX(e.onFocusCapture,S.onFocusCapture),onBlurCapture:ZX(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:ZX(e.onPointerDownCapture,x.onPointerDownCapture)})});yZ.displayName=pZ;var bZ=`DismissableLayerBranch`,xZ=Uf((e,t)=>{let n=xf(vZ),r=F(null),i=xb(t,r);return _f(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),R(lZ.div,{...e,ref:i})});xZ.displayName=bZ;function SZ(e,t=globalThis?.document){let n=dZ(e),r=F(!1),i=F(()=>{});return _f(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){TZ(hZ,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function CZ(e,t=globalThis?.document){let n=dZ(e),r=F(!1);return _f(()=>{let e=e=>{e.target&&!r.current&&TZ(gZ,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function wZ(){let e=new CustomEvent(mZ);document.dispatchEvent(e)}function TZ(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?uZ(i,a):i.dispatchEvent(a)}var EZ=0;function DZ(){_f(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??OZ()),document.body.insertAdjacentElement(`beforeend`,e[1]??OZ()),EZ++,()=>{EZ===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),EZ--}},[])}function OZ(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var kZ=`focusScope.autoFocusOnMount`,AZ=`focusScope.autoFocusOnUnmount`,jZ={bubbles:!1,cancelable:!0},MZ=`FocusScope`,NZ=Uf((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=hf(null),l=dZ(i),u=dZ(a),d=F(null),f=xb(t,e=>c(e)),p=F({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;_f(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:BZ(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||BZ(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&BZ(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),_f(()=>{if(s){VZ.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(kZ,jZ);s.addEventListener(kZ,l),s.dispatchEvent(t),t.defaultPrevented||(PZ(WZ(IZ(s)),{select:!0}),document.activeElement===e&&BZ(s))}return()=>{s.removeEventListener(kZ,l),setTimeout(()=>{let t=new CustomEvent(AZ,jZ);s.addEventListener(AZ,u),s.dispatchEvent(t),t.defaultPrevented||BZ(e??document.body,{select:!0}),s.removeEventListener(AZ,u),VZ.remove(p)},0)}}},[s,l,u,p]);let m=I(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=FZ(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&BZ(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&BZ(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return R(lZ.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});NZ.displayName=MZ;function PZ(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(BZ(r,{select:t}),document.activeElement!==n)return}function FZ(e){let t=IZ(e);return[LZ(t,e),LZ(t.reverse(),e)]}function IZ(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function LZ(e,t){for(let n of e)if(!RZ(n,{upTo:t}))return n}function RZ(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function zZ(e){return e instanceof HTMLInputElement&&`select`in e}function BZ(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&zZ(e)&&t&&e.select()}}var VZ=HZ();function HZ(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=UZ(e,t),e.unshift(t)},remove(t){e=UZ(e,t),e[0]?.resume()}}}function UZ(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function WZ(e){return e.filter(e=>e.tagName!==`A`)}var GZ=globalThis?.document?vf:()=>{},KZ=Cf||(()=>void 0),qZ=0;function JZ(e){let[t,n]=hf(KZ());return GZ(()=>{e||n(e=>e??String(qZ++))},[e]),e||(t?`radix-${t}`:``)}var YZ=[`top`,`right`,`bottom`,`left`],XZ=Math.min,ZZ=Math.max,QZ=Math.round,$Z=Math.floor,eQ=e=>({x:e,y:e}),tQ={left:`right`,right:`left`,bottom:`top`,top:`bottom`},nQ={start:`end`,end:`start`};function rQ(e,t,n){return ZZ(e,XZ(t,n))}function iQ(e,t){return typeof e==`function`?e(t):e}function aQ(e){return e.split(`-`)[0]}function oQ(e){return e.split(`-`)[1]}function sQ(e){return e===`x`?`y`:`x`}function cQ(e){return e===`y`?`height`:`width`}var lQ=new Set([`top`,`bottom`]);function uQ(e){return lQ.has(aQ(e))?`y`:`x`}function dQ(e){return sQ(uQ(e))}function fQ(e,t,n){n===void 0&&(n=!1);let r=oQ(e),i=dQ(e),a=cQ(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=xQ(o)),[o,xQ(o)]}function pQ(e){let t=xQ(e);return[mQ(e),t,mQ(t)]}function mQ(e){return e.replace(/start|end/g,e=>nQ[e])}var hQ=[`left`,`right`],gQ=[`right`,`left`],_Q=[`top`,`bottom`],vQ=[`bottom`,`top`];function yQ(e,t,n){switch(e){case`top`:case`bottom`:return n?t?gQ:hQ:t?hQ:gQ;case`left`:case`right`:return t?_Q:vQ;default:return[]}}function bQ(e,t,n,r){let i=oQ(e),a=yQ(aQ(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(mQ)))),a}function xQ(e){return e.replace(/left|right|bottom|top/g,e=>tQ[e])}function SQ(e){return{top:0,right:0,bottom:0,left:0,...e}}function CQ(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:SQ(e)}function wQ(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function TQ(e,t,n){let{reference:r,floating:i}=e,a=uQ(t),o=dQ(t),s=cQ(o),c=aQ(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(oQ(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}var EQ=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=a.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=TQ(l,r,c),f=r,p={},m=0;for(let n=0;n<s.length;n++){let{name:a,fn:h}=s[n],{x:g,y:_,data:v,reset:y}=await h({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:p,rects:l,platform:o,elements:{reference:e,floating:t}});u=g??u,d=_??d,p={...p,[a]:{...p[a],...v}},y&&m<=50&&(m++,typeof y==`object`&&(y.placement&&(f=y.placement),y.rects&&(l=y.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):y.rects),{x:u,y:d}=TQ(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:p}};async function DQ(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=iQ(t,e),p=CQ(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=wQ(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=wQ(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var OQ=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=iQ(e,t)||{};if(l==null)return{};let d=CQ(u),f={x:n,y:r},p=dQ(i),m=cQ(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,ee=XZ(d[_],T),te=XZ(d[v],T),ne=ee,re=C-h[m]-te,ie=C/2-h[m]/2+w,ae=rQ(ne,ie,re),oe=!c.arrow&&oQ(i)!=null&&ie!==ae&&a.reference[m]/2-(ie<ne?ee:te)-h[m]/2<0,se=oe?ie<ne?ie-ne:ie-re:0;return{[p]:f[p]+se,data:{[p]:ae,centerOffset:ie-ae-se,...oe&&{alignmentOffset:se}},reset:oe}}}),kQ=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=iQ(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=aQ(r),_=uQ(o),v=aQ(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[xQ(o)]:pQ(o)),x=p!==`none`;!d&&x&&b.push(...bQ(o,m,p,y));let S=[o,...b],C=await DQ(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=fQ(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==uQ(t))||T.every(e=>uQ(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=uQ(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function AQ(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function jQ(e){return YZ.some(t=>e[t]>=0)}var MQ=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n}=t,{strategy:r=`referenceHidden`,...i}=iQ(e,t);switch(r){case`referenceHidden`:{let e=AQ(await DQ(t,{...i,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:jQ(e)}}}case`escaped`:{let e=AQ(await DQ(t,{...i,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:jQ(e)}}}default:return{}}}}},NQ=new Set([`left`,`top`]);async function PQ(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=aQ(n),s=oQ(n),c=uQ(n)===`y`,l=NQ.has(o)?-1:1,u=a&&c?-1:1,d=iQ(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var FQ=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await PQ(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},IQ=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...c}=iQ(e,t),l={x:n,y:r},u=await DQ(t,c),d=uQ(aQ(i)),f=sQ(d),p=l[f],m=l[d];if(a){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=p+u[e],r=p-u[t];p=rQ(n,p,r)}if(o){let e=d===`y`?`top`:`left`,t=d===`y`?`bottom`:`right`,n=m+u[e],r=m-u[t];m=rQ(n,m,r)}let h=s.fn({...t,[f]:p,[d]:m});return{...h,data:{x:h.x-n,y:h.y-r,enabled:{[f]:a,[d]:o}}}}}},LQ=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=iQ(e,t),u={x:n,y:r},d=uQ(i),f=sQ(d),p=u[f],m=u[d],h=iQ(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=NQ.has(aQ(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},RQ=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=iQ(e,t),u=await DQ(t,l),d=aQ(i),f=oQ(i),p=uQ(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=XZ(h-u[g],v),x=XZ(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=ZZ(u.left,0),t=ZZ(u.right,0),n=ZZ(u.top,0),r=ZZ(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:ZZ(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:ZZ(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function zQ(){return typeof window<`u`}function BQ(e){return UQ(e)?(e.nodeName||``).toLowerCase():`#document`}function VQ(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function HQ(e){return((UQ(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function UQ(e){return zQ()?e instanceof Node||e instanceof VQ(e).Node:!1}function WQ(e){return zQ()?e instanceof Element||e instanceof VQ(e).Element:!1}function GQ(e){return zQ()?e instanceof HTMLElement||e instanceof VQ(e).HTMLElement:!1}function KQ(e){return!zQ()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof VQ(e).ShadowRoot}var qQ=new Set([`inline`,`contents`]);function JQ(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=s$(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!qQ.has(i)}var YQ=new Set([`table`,`td`,`th`]);function XQ(e){return YQ.has(BQ(e))}var ZQ=[`:popover-open`,`:modal`];function QQ(e){return ZQ.some(t=>{try{return e.matches(t)}catch{return!1}})}var $Q=[`transform`,`translate`,`scale`,`rotate`,`perspective`],e$=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],t$=[`paint`,`layout`,`strict`,`content`];function n$(e){let t=i$(),n=WQ(e)?s$(e):e;return $Q.some(e=>n[e]?n[e]!==`none`:!1)||(n.containerType?n.containerType!==`normal`:!1)||!t&&(n.backdropFilter?n.backdropFilter!==`none`:!1)||!t&&(n.filter?n.filter!==`none`:!1)||e$.some(e=>(n.willChange||``).includes(e))||t$.some(e=>(n.contain||``).includes(e))}function r$(e){let t=l$(e);for(;GQ(t)&&!o$(t);){if(n$(t))return t;if(QQ(t))return null;t=l$(t)}return null}function i$(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var a$=new Set([`html`,`body`,`#document`]);function o$(e){return a$.has(BQ(e))}function s$(e){return VQ(e).getComputedStyle(e)}function c$(e){return WQ(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function l$(e){if(BQ(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||KQ(e)&&e.host||HQ(e);return KQ(t)?t.host:t}function u$(e){let t=l$(e);return o$(t)?e.ownerDocument?e.ownerDocument.body:e.body:GQ(t)&&JQ(t)?t:u$(t)}function d$(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=u$(e),i=r===e.ownerDocument?.body,a=VQ(r);if(i){let e=f$(a);return t.concat(a,a.visualViewport||[],JQ(r)?r:[],e&&n?d$(e):[])}return t.concat(r,d$(r,[],n))}function f$(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function p$(e){let t=s$(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=GQ(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=QZ(n)!==a||QZ(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function m$(e){return WQ(e)?e:e.contextElement}function h$(e){let t=m$(e);if(!GQ(t))return eQ(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=p$(t),o=(a?QZ(n.width):n.width)/r,s=(a?QZ(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var g$=eQ(0);function _$(e){let t=VQ(e);return!i$()||!t.visualViewport?g$:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function v$(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==VQ(e)?!1:t}function y$(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=m$(e),o=eQ(1);t&&(r?WQ(r)&&(o=h$(r)):o=h$(e));let s=v$(a,n,r)?_$(a):eQ(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=VQ(a),t=r&&WQ(r)?VQ(r):r,n=e,i=f$(n);for(;i&&r&&t!==n;){let e=h$(i),t=i.getBoundingClientRect(),r=s$(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=VQ(i),i=f$(n)}}return wQ({width:u,height:d,x:c,y:l})}function b$(e,t){let n=c$(e).scrollLeft;return t?t.left+n:y$(HQ(e)).left+n}function x$(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-b$(e,n),y:n.top+t.scrollTop}}function S$(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=HQ(r),s=t?QQ(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=eQ(1),u=eQ(0),d=GQ(r);if((d||!d&&!a)&&((BQ(r)!==`body`||JQ(o))&&(c=c$(r)),GQ(r))){let e=y$(r);l=h$(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?x$(o,c):eQ(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function C$(e){return Array.from(e.getClientRects())}function w$(e){let t=HQ(e),n=c$(e),r=e.ownerDocument.body,i=ZZ(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=ZZ(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+b$(e),s=-n.scrollTop;return s$(r).direction===`rtl`&&(o+=ZZ(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var T$=25;function E$(e,t){let n=VQ(e),r=HQ(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=i$();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=b$(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=T$&&(a-=o)}else l<=T$&&(a+=l);return{width:a,height:o,x:s,y:c}}var D$=new Set([`absolute`,`fixed`]);function O$(e,t){let n=y$(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=GQ(e)?h$(e):eQ(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function k$(e,t,n){let r;if(t===`viewport`)r=E$(e,n);else if(t===`document`)r=w$(HQ(e));else if(WQ(t))r=O$(t,n);else{let n=_$(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return wQ(r)}function A$(e,t){let n=l$(e);return n===t||!WQ(n)||o$(n)?!1:s$(n).position===`fixed`||A$(n,t)}function j$(e,t){let n=t.get(e);if(n)return n;let r=d$(e,[],!1).filter(e=>WQ(e)&&BQ(e)!==`body`),i=null,a=s$(e).position===`fixed`,o=a?l$(e):e;for(;WQ(o)&&!o$(o);){let t=s$(o),n=n$(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&D$.has(i.position)||JQ(o)&&!n&&A$(e,o))?r=r.filter(e=>e!==o):i=t,o=l$(o)}return t.set(e,r),r}function M$(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?QQ(t)?[]:j$(t,this._c):[].concat(n),r],o=a[0],s=a.reduce((e,n)=>{let r=k$(t,n,i);return e.top=ZZ(r.top,e.top),e.right=XZ(r.right,e.right),e.bottom=XZ(r.bottom,e.bottom),e.left=ZZ(r.left,e.left),e},k$(t,o,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}function N$(e){let{width:t,height:n}=p$(e);return{width:t,height:n}}function P$(e,t,n){let r=GQ(t),i=HQ(t),a=n===`fixed`,o=y$(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=eQ(0);function l(){c.x=b$(i)}if(r||!r&&!a)if((BQ(t)!==`body`||JQ(i))&&(s=c$(t)),r){let e=y$(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?x$(i,s):eQ(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function F$(e){return s$(e).position===`static`}function I$(e,t){if(!GQ(e)||s$(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return HQ(e)===n&&(n=n.ownerDocument.body),n}function L$(e,t){let n=VQ(e);if(QQ(e))return n;if(!GQ(e)){let t=l$(e);for(;t&&!o$(t);){if(WQ(t)&&!F$(t))return t;t=l$(t)}return n}let r=I$(e,t);for(;r&&XQ(r)&&F$(r);)r=I$(r,t);return r&&o$(r)&&F$(r)&&!n$(r)?n:r||r$(e)||n}var R$=async function(e){let t=this.getOffsetParent||L$,n=this.getDimensions,r=await n(e.floating);return{reference:P$(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function z$(e){return s$(e).direction===`rtl`}var B$={convertOffsetParentRelativeRectToViewportRelativeRect:S$,getDocumentElement:HQ,getClippingRect:M$,getOffsetParent:L$,getElementRects:R$,getClientRects:C$,getDimensions:N$,getScale:h$,isElement:WQ,isRTL:z$};function V$(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function H$(e,t){let n=null,r,i=HQ(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=$Z(d),h=$Z(i.clientWidth-(u+f)),g=$Z(i.clientHeight-(d+p)),_=$Z(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:ZZ(0,XZ(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!V$(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function U$(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=m$(e),u=i||a?[...l?d$(l):[],...d$(t)]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?H$(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),p.observe(t));let m,h=c?y$(e):null;c&&g();function g(){let t=y$(e);h&&!V$(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var W$=FQ,G$=IQ,K$=kQ,q$=RQ,J$=MQ,Y$=OQ,X$=LQ,Z$=(e,t,n)=>{let r=new Map,i={platform:B$,...n},a={...i.platform,_c:r};return EQ(e,t,{...i,platform:a})},Q$=typeof document<`u`?vf:function(){};function $$(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!$$(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!$$(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function e1(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function t1(e,t){let n=e1(e);return Math.round(t*n)/n}function n1(e){let t=F(e);return Q$(()=>{t.current=e}),t}function r1(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=hf({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=hf(r);$$(f,r)||p(r);let[m,h]=hf(null),[g,_]=hf(null),v=I(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=I(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=F(null),C=F(null),w=F(u),T=c!=null,ee=n1(c),te=n1(i),ne=n1(l),re=I(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};te.current&&(e.platform=te.current),Z$(S.current,C.current,e).then(e=>{let t={...e,isPositioned:ne.current!==!1};ie.current&&!$$(w.current,t)&&(w.current=t,Ap(()=>{d(t)}))})},[f,t,n,te,ne]);Q$(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let ie=F(!1);Q$(()=>(ie.current=!0,()=>{ie.current=!1}),[]),Q$(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(ee.current)return ee.current(b,x,re);re()}},[b,x,re,ee,T]);let ae=bf(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),oe=bf(()=>({reference:b,floating:x}),[b,x]),se=bf(()=>{let e={position:n,left:0,top:0};if(!oe.floating)return e;let t=t1(oe.floating,u.x),r=t1(oe.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...e1(oe.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,oe.floating,u.x,u.y]);return bf(()=>({...u,update:re,refs:ae,elements:oe,floatingStyles:se}),[u,re,ae,oe,se])}var i1=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Y$({element:r.current,padding:i}).fn(n):r?Y$({element:r,padding:i}).fn(n):{}}}},a1=(e,t)=>({...W$(e),options:[e,t]}),o1=(e,t)=>({...G$(e),options:[e,t]}),s1=(e,t)=>({...X$(e),options:[e,t]}),c1=(e,t)=>({...K$(e),options:[e,t]}),l1=(e,t)=>({...q$(e),options:[e,t]}),u1=(e,t)=>({...J$(e),options:[e,t]}),d1=(e,t)=>({...i1(e),options:[e,t]}),f1=`Arrow`,p1=Uf((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return R(lZ.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:R(`polygon`,{points:`0,0 30,0 15,10`})})});p1.displayName=f1;var m1=p1;function h1(e){let[t,n]=hf(void 0);return GZ(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var g1=`Popper`,[_1,v1]=QX(g1),[y1,b1]=_1(g1),x1=e=>{let{__scopePopper:t,children:n}=e,[r,i]=hf(null);return R(y1,{scope:t,anchor:r,onAnchorChange:i,children:n})};x1.displayName=g1;var S1=`PopperAnchor`,C1=Uf((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=b1(S1,n),o=F(null),s=xb(t,o),c=F(null);return _f(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:R(lZ.div,{...i,ref:s})});C1.displayName=S1;var w1=`PopperContent`,[T1,E1]=_1(w1),D1=Uf((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:m,...h}=e,g=b1(w1,n),[_,v]=hf(null),y=xb(t,e=>v(e)),[b,x]=hf(null),S=h1(b),C=S?.width??0,w=S?.height??0,T=r+(a===`center`?``:`-`+a),ee=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},te=Array.isArray(l)?l:[l],ne=te.length>0,re={padding:ee,boundary:te.filter(j1),altBoundary:ne},{refs:ie,floatingStyles:ae,placement:oe,isPositioned:se,middlewareData:E}=r1({strategy:`fixed`,placement:T,whileElementsMounted:(...e)=>U$(...e,{animationFrame:p===`always`}),elements:{reference:g.anchor},middleware:[a1({mainAxis:i+w,alignmentAxis:o}),c&&o1({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?s1():void 0,...re}),c&&c1({...re}),l1({...re,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),b&&d1({element:b,padding:s}),M1({arrowWidth:C,arrowHeight:w}),f&&u1({strategy:`referenceHidden`,...re})]}),[ce,le]=N1(oe),ue=dZ(m);GZ(()=>{se&&ue?.()},[se,ue]);let de=E.arrow?.x,fe=E.arrow?.y,pe=E.arrow?.centerOffset!==0,[me,he]=hf();return GZ(()=>{_&&he(window.getComputedStyle(_).zIndex)},[_]),R(`div`,{ref:ie.setFloating,"data-radix-popper-content-wrapper":``,style:{...ae,transform:se?ae.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:me,"--radix-popper-transform-origin":[E.transformOrigin?.x,E.transformOrigin?.y].join(` `),...E.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:R(T1,{scope:n,placedSide:ce,onArrowChange:x,arrowX:de,arrowY:fe,shouldHideArrow:pe,children:R(lZ.div,{"data-side":ce,"data-align":le,...h,ref:y,style:{...h.style,animation:se?void 0:`none`}})})})});D1.displayName=w1;var O1=`PopperArrow`,k1={top:`bottom`,right:`left`,bottom:`top`,left:`right`},A1=Uf(function(e,t){let{__scopePopper:n,...r}=e,i=E1(O1,n),a=k1[i.placedSide];return R(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:R(m1,{...r,ref:t,style:{...r.style,display:`block`}})})});A1.displayName=O1;function j1(e){return e!==null}var M1=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=N1(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function N1(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var P1=x1,F1=C1,I1=D1,L1=A1,R1=`Portal`,z1=Uf((e,t)=>{let{container:n,...r}=e,[i,a]=hf(!1);GZ(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?jp.createPortal(R(lZ.div,{...r,ref:t}),o):null});z1.displayName=R1;var B1=Rf||GZ;function V1({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=H1({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=F(e!==void 0);_f(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,I(t=>{if(s){let n=U1(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function H1({defaultProp:e,onChange:t}){let[n,r]=hf(e),i=F(n),a=F(t);return B1(()=>{a.current=t},[t]),_f(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function U1(e){return typeof e==`function`}function W1(e){let t=F({value:e,previous:e});return bf(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var G1=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),K1=`VisuallyHidden`,q1=Uf((e,t)=>R(lZ.span,{...e,ref:t,style:{...G1,...e.style}}));q1.displayName=K1;var J1=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Y1=new WeakMap,X1=new WeakMap,Z1={},Q1=0,$1=function(e){return e&&(e.host||$1(e.parentNode))},e0=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=$1(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},t0=function(e,t,n,r){var i=e0(t,Array.isArray(e)?e:[e]);Z1[n]||(Z1[n]=new WeakMap);var a=Z1[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Y1.get(e)||0)+1,l=(a.get(e)||0)+1;Y1.set(e,c),a.set(e,l),o.push(e),c===1&&i&&X1.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Q1++,function(){o.forEach(function(e){var t=Y1.get(e)-1,i=a.get(e)-1;Y1.set(e,t),a.set(e,i),t||(X1.has(e)||e.removeAttribute(r),X1.delete(e)),i||e.removeAttribute(n)}),Q1--,Q1||(Y1=new WeakMap,Y1=new WeakMap,X1=new WeakMap,Z1={})}},n0=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||J1(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),t0(r,i,n,`aria-hidden`)):function(){return null}},r0=function(){return r0=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},r0.apply(this,arguments)};function i0(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function a0(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var o0=`right-scroll-bar-position`,s0=`width-before-scroll-bar`,c0=`with-scroll-bars-hidden`,l0=`--removed-body-scroll-bar-size`;function u0(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function d0(e,t){var n=hf(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var f0=typeof window<`u`?vf:_f,p0=new WeakMap;function m0(e,t){var n=d0(t||null,function(t){return e.forEach(function(e){return u0(e,t)})});return f0(function(){var t=p0.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||u0(e,null)}),i.forEach(function(e){r.has(e)||u0(e,a)})}p0.set(n,e)},[e]),n}function h0(e){return e}function g0(e,t){t===void 0&&(t=h0);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function _0(e){e===void 0&&(e={});var t=g0(null);return t.options=r0({async:!0,ssr:!1},e),t}var v0=function(e){var t=e.sideCar,n=i0(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return pd(r,r0({},n))};v0.isSideCarExport=!0;function y0(e,t){return e.useMedium(t),v0}var b0=_0(),x0=function(){},S0=Uf(function(e,t){var n=F(null),r=hf({onScrollCapture:x0,onWheelCapture:x0,onTouchMoveCapture:x0}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=i0(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=m0([n,t]),C=r0(r0({},b),i);return pd(gd,null,u&&pd(x,{sideCar:b0,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?Ep(Gf.only(s),r0(r0({},C),{ref:S})):pd(v,r0({},C,{className:c,ref:S}),s))});S0.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},S0.classNames={fullWidth:s0,zeroRight:o0};var C0,w0=function(){if(C0)return C0;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function T0(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=w0();return t&&e.setAttribute(`nonce`,t),e}function E0(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function D0(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var O0=function(){var e=0,t=null;return{add:function(n){e==0&&(t=T0())&&(E0(t,n),D0(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},k0=function(){var e=O0();return function(t,n){_f(function(){return e.add(t),function(){e.remove()}},[t&&n])}},A0=function(){var e=k0();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},j0={left:0,top:0,right:0,gap:0},M0=function(e){return parseInt(e||``,10)||0},N0=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[M0(n),M0(r),M0(i)]},P0=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return j0;var t=N0(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},F0=A0(),I0=`data-scroll-locked`,L0=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
|
|
386
386
|
.${c0} {
|
|
387
387
|
overflow: hidden ${r};
|
|
388
388
|
padding-right: ${s}px ${r};
|
|
@@ -422,7 +422,7 @@ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error
|
|
|
422
422
|
`},R0=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},z0=function(){_f(function(){return document.body.setAttribute(I0,(R0()+1).toString()),function(){var e=R0()-1;e<=0?document.body.removeAttribute(I0):document.body.setAttribute(I0,e.toString())}},[])},B0=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;return z0(),pd(F0,{styles:L0(bf(function(){return P0(i)},[i]),!t,i,n?``:`!important`)})},V0=!1;if(typeof window<`u`)try{var H0=Object.defineProperty({},`passive`,{get:function(){return V0=!0,!0}});window.addEventListener(`test`,H0,H0),window.removeEventListener(`test`,H0,H0)}catch{V0=!1}var U0=V0?{passive:!1}:!1,W0=function(e){return e.tagName===`TEXTAREA`},G0=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!W0(e)&&n[t]===`visible`)},K0=function(e){return G0(e,`overflowY`)},q0=function(e){return G0(e,`overflowX`)},J0=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Z0(e,r)){var i=Q0(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Y0=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},X0=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Z0=function(e,t){return e===`v`?K0(t):q0(t)},Q0=function(e,t){return e===`v`?Y0(t):X0(t)},$0=function(e,t){return e===`h`&&t===`rtl`?-1:1},e2=function(e,t,n,r,i){var a=$0(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Q0(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Z0(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},t2=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},n2=function(e){return[e.deltaX,e.deltaY]},r2=function(e){return e&&`current`in e?e.current:e},i2=function(e,t){return e[0]===t[0]&&e[1]===t[1]},a2=function(e){return`
|
|
423
423
|
.block-interactivity-${e} {pointer-events: none;}
|
|
424
424
|
.allow-interactivity-${e} {pointer-events: all;}
|
|
425
|
-
`},o2=0,s2=[];function c2(e){var t=F([]),n=F([0,0]),r=F(),i=hf(o2++)[0],a=hf(A0)[0],o=F(e);_f(function(){o.current=e},[e]),_f(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=a0([e.lockRef.current],(e.shards||[]).map(r2),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=I(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=t2(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=J0(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=J0(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return e2(h,t,e,h===`h`?s:c,!0)},[]),c=I(function(e){var n=e;if(!(!s2.length||s2[s2.length-1]!==a)){var r=`deltaY`in n?n2(n):t2(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&i2(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(r2).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=I(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:l2(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=I(function(e){n.current=t2(e),r.current=void 0},[]),d=I(function(t){l(t.type,n2(t),t.target,s(t,e.lockRef.current))},[]),f=I(function(t){l(t.type,t2(t),t.target,s(t,e.lockRef.current))},[]);_f(function(){return s2.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,U0),document.addEventListener(`touchmove`,c,U0),document.addEventListener(`touchstart`,u,U0),function(){s2=s2.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,U0),document.removeEventListener(`touchmove`,c,U0),document.removeEventListener(`touchstart`,u,U0)}},[]);var p=e.removeScrollBar,m=e.inert;return pd(gd,null,m?pd(a,{styles:a2(i)}):null,p?pd(B0,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function l2(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var u2=y0(b0,c2),d2=Uf(function(e,t){return pd(S0,r0({},e,{ref:t,sideCar:u2}))});d2.classNames=S0.classNames;var f2=[` `,`Enter`,`ArrowUp`,`ArrowDown`],p2=[` `,`Enter`],m2=`Select`,[h2,g2,_2]=oZ(m2),[v2,y2]=QX(m2,[_2,v1]),b2=v1(),[x2,S2]=v2(m2),[C2,w2]=v2(m2),T2=e=>{let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m}=e,h=b2(t),[g,_]=hf(null),[v,y]=hf(null),[b,x]=hf(!1),S=cZ(l),[C,w]=V1({prop:r,defaultProp:i??!1,onChange:a,caller:m2}),[T,ee]=V1({prop:o,defaultProp:s,onChange:c,caller:m2}),te=F(null),ne=g?m||!!g.closest(`form`):!0,[re,ie]=hf(new Set),ae=Array.from(re).map(e=>e.props.value).join(`;`);return R(P1,{...h,children:R(x2,{required:p,scope:t,trigger:g,onTriggerChange:_,valueNode:v,onValueNodeChange:y,valueNodeHasChildren:b,onValueNodeHasChildrenChange:x,contentId:JZ(),value:T,onValueChange:ee,open:C,onOpenChange:w,dir:S,triggerPointerDownPosRef:te,disabled:f,children:[R(h2.Provider,{scope:t,children:R(C2,{scope:e.__scopeSelect,onNativeOptionAdd:I(e=>{ie(t=>new Set(t).add(e))},[]),onNativeOptionRemove:I(e=>{ie(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:n})}),ne?R(b4,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:d,value:T,onChange:e=>ee(e.target.value),disabled:f,form:m,children:[T===void 0?R(`option`,{value:``}):null,Array.from(re)]},ae):null]})})};T2.displayName=m2;var E2=`SelectTrigger`,D2=Uf((e,t)=>{let{__scopeSelect:n,disabled:r=!1,...i}=e,a=b2(n),o=S2(E2,n),s=o.disabled||r,c=xb(t,o.onTriggerChange),l=g2(n),u=F(`touch`),[d,f,p]=S4(e=>{let t=l().filter(e=>!e.disabled),n=C4(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onValueChange(n.value)}),m=e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return R(F1,{asChild:!0,...a,children:R(lZ.button,{type:`button`,role:`combobox`,"aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":x4(o.value)?``:void 0,...i,ref:c,onClick:ZX(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:ZX(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:ZX(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&f(e.key),!(t&&e.key===` `)&&f2.includes(e.key)&&(m(),e.preventDefault())})})})});D2.displayName=E2;var O2=`SelectValue`,k2=Uf((e,t)=>{let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=S2(O2,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=xb(t,c.onValueNodeChange);return GZ(()=>{l(u)},[l,u]),R(lZ.span,{...s,ref:d,style:{pointerEvents:`none`},children:x4(c.value)?R(gd,{children:o}):a})});k2.displayName=O2;var A2=`SelectIcon`,j2=Uf((e,t)=>{let{__scopeSelect:n,children:r,...i}=e;return R(lZ.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})});j2.displayName=A2;var M2=`SelectPortal`,N2=e=>R(z1,{asChild:!0,...e});N2.displayName=M2;var P2=`SelectContent`,F2=Uf((e,t)=>{let n=S2(P2,e.__scopeSelect),[r,i]=hf();if(GZ(()=>{i(new DocumentFragment)},[]),!n.open){let t=r;return t?rp(R(L2,{scope:e.__scopeSelect,children:R(h2.Slot,{scope:e.__scopeSelect,children:R(`div`,{children:e.children})})}),t):null}return R(V2,{...e,ref:t})});F2.displayName=P2;var I2=10,[L2,R2]=v2(P2),z2=`SelectContentImpl`,B2=eZ(`SelectContent.RemoveScroll`),V2=Uf((e,t)=>{let{__scopeSelect:n,position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=S2(P2,n),[y,b]=hf(null),[x,S]=hf(null),C=xb(t,e=>b(e)),[w,T]=hf(null),[ee,te]=hf(null),ne=g2(n),[re,ie]=hf(!1),ae=F(!1);_f(()=>{if(y)return n0(y)},[y]),DZ();let oe=I(e=>{let[t,...n]=ne().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&x&&(x.scrollTop=0),n===r&&x&&(x.scrollTop=x.scrollHeight),n?.focus(),document.activeElement!==i))return},[ne,x]),se=I(()=>oe([w,y]),[oe,w,y]);_f(()=>{re&&se()},[re,se]);let{onOpenChange:E,triggerPointerDownPosRef:ce}=v;_f(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(ce.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(ce.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||E(!1),document.removeEventListener(`pointermove`,t),ce.current=null};return ce.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[y,E,ce]),_f(()=>{let e=()=>E(!1);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[E]);let[le,ue]=S4(e=>{let t=ne().filter(e=>!e.disabled),n=C4(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current.focus())}),de=I((e,t,n)=>{let r=!ae.current&&!n;(v.value!==void 0&&v.value===t||r)&&(T(e),r&&(ae.current=!0))},[v.value]),fe=I(()=>y?.focus(),[y]),pe=I((e,t,n)=>{let r=!ae.current&&!n;(v.value!==void 0&&v.value===t||r)&&te(e)},[v.value]),me=r===`popper`?G2:U2,he=me===G2?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return R(L2,{scope:n,content:y,viewport:x,onViewportChange:S,itemRefCallback:de,selectedItem:w,onItemLeave:fe,itemTextRefCallback:pe,focusSelectedItem:se,selectedItemText:ee,position:r,isPositioned:re,searchRef:le,children:R(d2,{as:B2,allowPinchZoom:!0,children:R(NZ,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:ZX(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:R(yZ,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:R(me,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...he,onPlaced:()=>ie(!0),ref:C,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:ZX(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&ue(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=ne().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>oe(t)),e.preventDefault()}})})})})})})});V2.displayName=z2;var H2=`SelectItemAlignedPosition`,U2=Uf((e,t)=>{let{__scopeSelect:n,onPlaced:r,...i}=e,a=S2(P2,n),o=R2(P2,n),[s,c]=hf(null),[l,u]=hf(null),d=xb(t,e=>u(e)),f=g2(n),p=F(!1),m=F(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,y=I(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-I2,d=XX(a,[I2,Math.max(I2,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-I2,d=XX(a,[I2,Math.max(I2,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-I2*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),ee=e.top+e.height/2-I2,te=c-ee,ne=g.offsetHeight/2,re=g.offsetTop+ne,ie=m+v+re,ae=x-ie;if(ie<=ee){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=ie+Math.max(te,ne+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(ee,m+h.offsetTop+(e?w:0)+ne)+ae;s.style.height=t+`px`,h.scrollTop=ie-ee+h.offsetTop}s.style.margin=`${I2}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);GZ(()=>y(),[y]);let[b,x]=hf();return GZ(()=>{l&&x(window.getComputedStyle(l).zIndex)},[l]),R(K2,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:I(e=>{e&&m.current===!0&&(y(),v?.(),m.current=!1)},[y,v]),children:R(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b},children:R(lZ.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})});U2.displayName=H2;var W2=`SelectPopperPosition`,G2=Uf((e,t)=>{let{__scopeSelect:n,align:r=`start`,collisionPadding:i=I2,...a}=e;return R(I1,{...b2(n),...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})});G2.displayName=W2;var[K2,q2]=v2(P2,{}),J2=`SelectViewport`,Y2=Uf((e,t)=>{let{__scopeSelect:n,nonce:r,...i}=e,a=R2(J2,n),o=q2(J2,n),s=xb(t,a.onViewportChange),c=F(0);return R(gd,{children:[R(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),R(h2.Slot,{scope:n,children:R(lZ.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:ZX(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-I2*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})});Y2.displayName=J2;var X2=`SelectGroup`,[Z2,Q2]=v2(X2),$2=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=JZ();return R(Z2,{scope:n,id:i,children:R(lZ.div,{role:`group`,"aria-labelledby":i,...r,ref:t})})});$2.displayName=X2;var e4=`SelectLabel`,t4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=Q2(e4,n);return R(lZ.div,{id:i.id,...r,ref:t})});t4.displayName=e4;var n4=`SelectItem`,[r4,i4]=v2(n4),a4=Uf((e,t)=>{let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=S2(n4,n),c=R2(n4,n),l=s.value===r,[u,d]=hf(a??``),[f,p]=hf(!1),m=xb(t,e=>c.itemRefCallback?.(e,r,i)),h=JZ(),g=F(`touch`),_=()=>{i||(s.onValueChange(r),s.onOpenChange(!1))};if(r===``)throw Error(`A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return R(r4,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:I(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:R(h2.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:R(lZ.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:ZX(o.onFocus,()=>p(!0)),onBlur:ZX(o.onBlur,()=>p(!1)),onClick:ZX(o.onClick,()=>{g.current!==`mouse`&&_()}),onPointerUp:ZX(o.onPointerUp,()=>{g.current===`mouse`&&_()}),onPointerDown:ZX(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:ZX(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:ZX(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:ZX(o.onKeyDown,e=>{c.searchRef?.current!==``&&e.key===` `||(p2.includes(e.key)&&_(),e.key===` `&&e.preventDefault())})})})})});a4.displayName=n4;var o4=`SelectItemText`,s4=Uf((e,t)=>{let{__scopeSelect:n,className:r,style:i,...a}=e,o=S2(o4,n),s=R2(o4,n),c=i4(o4,n),l=w2(o4,n),[u,d]=hf(null),f=xb(t,e=>d(e),c.onItemTextChange,e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=u?.textContent,m=bf(()=>R(`option`,{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:h,onNativeOptionRemove:g}=l;return GZ(()=>(h(m),()=>g(m)),[h,g,m]),R(gd,{children:[R(lZ.span,{id:c.textId,...a,ref:f}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?rp(a.children,o.valueNode):null]})});s4.displayName=o4;var c4=`SelectItemIndicator`,l4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e;return i4(c4,n).isSelected?R(lZ.span,{"aria-hidden":!0,...r,ref:t}):null});l4.displayName=c4;var u4=`SelectScrollUpButton`,d4=Uf((e,t)=>{let n=R2(u4,e.__scopeSelect),r=q2(u4,e.__scopeSelect),[i,a]=hf(!1),o=xb(t,r.onScrollButtonChange);return GZ(()=>{if(n.viewport&&n.isPositioned){let e=function(){a(t.scrollTop>0)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?R(m4,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null});d4.displayName=u4;var f4=`SelectScrollDownButton`,p4=Uf((e,t)=>{let n=R2(f4,e.__scopeSelect),r=q2(f4,e.__scopeSelect),[i,a]=hf(!1),o=xb(t,r.onScrollButtonChange);return GZ(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;a(Math.ceil(t.scrollTop)<e)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?R(m4,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null});p4.displayName=f4;var m4=Uf((e,t)=>{let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=R2(`SelectScrollButton`,n),o=F(null),s=g2(n),c=I(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return _f(()=>()=>c(),[c]),GZ(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),R(lZ.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:ZX(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:ZX(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:ZX(i.onPointerLeave,()=>{c()})})}),h4=`SelectSeparator`,g4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e;return R(lZ.div,{"aria-hidden":!0,...r,ref:t})});g4.displayName=h4;var _4=`SelectArrow`,v4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=b2(n),a=S2(_4,n),o=R2(_4,n);return a.open&&o.position===`popper`?R(L1,{...i,...r,ref:t}):null});v4.displayName=_4;var y4=`SelectBubbleInput`,b4=Uf(({__scopeSelect:e,value:t,...n},r)=>{let i=F(null),a=xb(r,i),o=W1(t);return _f(()=>{let e=i.current;if(!e)return;let n=window.HTMLSelectElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(o!==t&&r){let n=new Event(`change`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[o,t]),R(lZ.select,{...n,style:{...G1,...n.style},ref:a,defaultValue:t})});b4.displayName=y4;function x4(e){return e===``||e===void 0}function S4(e){let t=dZ(e),n=F(``),r=F(0),i=I(e=>{let i=n.current+e;t(i),(function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))})(i)},[t]),a=I(()=>{n.current=``,window.clearTimeout(r.current)},[]);return _f(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function C4(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=w4(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function w4(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var T4=T2,E4=D2,D4=j2,O4=N2,k4=F2,A4=Y2,j4=a4,M4=s4,N4=l4,P4=d4,F4=p4,I4={sm:`w-4 h-4`,md:`w-6 h-6`};function L4({size:e=`md`,flagCode:t,className:n,...r}){return R(`img`,{className:Bb(`rounded-full object-cover`,I4[e],n),src:`https://storage.googleapis.com/eleven-public-cdn/images/flags/circle-flags/${t}.svg`,alt:`${t.toUpperCase()} flag`,...r})}function R4({children:e,...t}){let[n,r]=hf(!1),{language:i,setLanguage:a,options:o}=Yh(),s=db();return R(T4,{open:n,value:i.value.languageCode,onValueChange:e=>{a(e),r(!1)},onOpenChange:e=>{e&&r(!0)},children:[e,R(O4,{container:s,children:R(k4,{className:`overflow-hidden bg-base border border-base-border rounded-dropdown-sheet max-h-[min(384px,var(--radix-select-content-available-height))] min-w-[var(--radix-select-trigger-width)] z-10`,position:`popper`,sideOffset:8,align:`end`,side:`top`,onPointerDownOutside:()=>r(!1),onCloseAutoFocus:()=>r(!1),onEscapeKeyDown:()=>r(!1),...t,children:[R(P4,{className:`flex items-center justify-center h-6 bg-base text-base-subtle cursor-default`,children:R(gS,{size:`xs`,name:`chevron-up`})}),R(A4,{className:`p-1.5`,children:o.value.map(e=>R(j4,{value:e.languageCode,className:`flex select-none items-center p-1.5 pr-3 gap-2 cursor-pointer rounded-input relative focus-visible:outline-hidden data-highlighted:bg-base-active text-sm`,children:[R(L4,{flagCode:e.flagCode}),R(M4,{children:e.name}),R(N4,{className:`text-base-primary p-1.5 -mr-1.5 ml-auto`,children:R(gS,{size:`xs`,name:`check`})})]},e.languageCode))}),R(F4,{className:`flex items-center justify-center h-6 bg-base text-base-subtle cursor-default`,children:R(gS,{size:`xs`,name:`chevron-down`})})]})})]})}function z4({className:e,...t}){let n=ab(),{language:r,showPicker:i}=Yh();return i.value?R(R4,{align:`center`,children:R(E4,{className:Bb(`h-9 min-w-max rounded-button focus-ring px-2 flex gap-2 items-center text-base-primary bg-base hover:bg-base-hover active:bg-base-active font-medium`,e),"aria-label":n.change_language,...t,children:[R(L4,{size:`sm`,flagCode:r.value.flagCode}),r.value.name,R(D4,{className:`text-base-subtle`,asChild:!0,children:R(gS,{size:`xs`,name:`chevron-down`})})]})}):null}function B4({className:e,...t}){let{status:n,isSpeaking:r}=Oy(),i=Iy(),{isTextMode:a}=$y(),o=ab(),s=L(()=>n.value===`connected`?i.value||a.value?o.chatting_status.value:r.value?o.speaking_status.value:o.listening_status.value:o.connecting_status.value),[c,l]=hf(s.peek());return xm(()=>{let e=s.value;if(n.value===`connected`&&r.value)l(e);else{let t=setTimeout(()=>{l(e)},500);return()=>clearTimeout(t)}}),R(`div`,{className:Bb(`py-1.5 px-3 bg-base-active overflow-hidden rounded-bubble text-sm`,e),...t,children:R(Ib,{initial:!1,active:!0,children:R(`div`,{className:`animate-text whitespace-nowrap transition-[opacity,transform] ease-out duration-200 data-hidden:opacity-0 transform data-hidden:translate-y-2`,children:c})},c)})}var V4=Vd(void 0),H4=768;function U4({children:e,initialVariant:t=`compact`}){let n=mm(t!==`compact`),r=mm(typeof window<`u`?window.innerWidth<H4:!1);_f(()=>{let e=()=>{r.value=window.innerWidth<H4};return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]);let i=I(()=>{n.value=!n.value},[n]),a=L(()=>n.value?r.value?`fullscreen`:`expanded`:`compact`),o=bf(()=>({variant:a,toggleSize:i}),[a,i]);return R(V4.Provider,{value:o,children:e})}function W4(){return Mh(V4)}function G4(e){let t=ab(),{mode:n,setMode:r,isTextMode:i}=$y(),a=I(()=>{r(n.peek()===`text`?`voice`:`text`)},[r,n]);return R(VS,{"aria-label":i.value?t.voice_mode:t.text_mode,icon:i.value?`soundwave`:`chat`,onClick:a,...e})}function K4({showBackButton:e,onBackClick:t,showStatusLabel:n,showLanguageSelector:r,showConversationModeToggle:i,showExpandButton:a}){let o=ab(),{toggleSize:s,variant:c}=W4(),l=L(()=>c.value===`compact`?`Expand widget`:`Collapse widget`);return R(`div`,{className:`w-full relative shrink-0 z-10`,children:[R(`div`,{className:`h-16 absolute top-0 w-full bg-base`}),R(`div`,{className:`h-4 absolute top-16 w-full bg-gradient-to-b from-base to-transparent backdrop-blur-[1px] [mask-image:linear-gradient(to_bottom,black,transparent)] shadow-scroll-fade-bottom`}),R(`div`,{className:`h-16 top-0 absolute flex flex-row items-center justify-center w-full`,children:[R(`div`,{className:`absolute start-3 flex gap-2 items-center`,children:[e?R(VS,{variant:`ghost`,onClick:t,"aria-label":o.go_back,className:`h-8 w-8`,children:R(gS,{name:`chevron-up`,className:`-rotate-90`,size:`xs`})}):R(`div`,{className:`relative w-8 h-8`}),R(Ib,{active:n,children:R(B4,{className:`transition-opacity data-hidden:opacity-0`})})]}),R(`div`,{className:`absolute flex flex-row items-center gap-2 ms-auto end-3`,children:[R(Ib,{active:r,children:R(`div`,{className:`transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:-translate-y-4`,children:R(z4,{})})}),R(Ib,{active:i,children:R(G4,{variant:`ghost`,className:`h-8 w-8 transition-opacity data-hidden:opacity-0`})}),R(Ib,{active:a,children:R(VS,{variant:`ghost`,onClick:s,"aria-label":l,className:`h-8 w-8 transition-opacity data-hidden:opacity-0`,children:R(gS,{name:c.value===`compact`?`maximize`:`minimize`,size:`sm`})})})]})]})]})}function q4({iconOnly:e,isDisconnected:t,children:n,...r}){let{endSession:i,startSession:a}=Oy(),o=ab();return R(VS,{variant:t?`primary`:`secondary`,icon:t?`phone`:`phone-off`,onClick:t?e=>a(e.currentTarget):i,"aria-label":t?o.start_call:o.end_call,...r,children:e?void 0:n??(t?o.start_call:o.end_call)})}function J4(e){let t=ab(),{isMuted:n,isMutingEnabled:r,setIsMuted:i}=nb(),a=I(()=>{i(!n.peek())},[i]);return r.value?R(VS,{"aria-label":t.mute_microphone,"aria-pressed":n.value,icon:n.value?`mic-off`:`mic`,onClick:a,...e}):null}function Y4({iconOnly:e,disabled:t,onFileSelect:n,children:r,...i}){let a=ab(),o=F(null),s=I(e=>{e.stopPropagation(),o.current?.click()},[]),c=I(e=>{let t=e.target,r=t.files?.[0];r&&n(r),t.value=``},[n]);return R(gd,{children:[R(VS,{variant:`secondary`,icon:`paperclip`,onClick:s,disabled:t,"aria-label":a.attach_file,...i,children:e?void 0:r??a.attach_file}),R(`input`,{ref:o,type:`file`,accept:wX.join(`,`),className:`hidden`,onChange:c})]})}function X4({pendingFile:e,onRemove:t}){let n=ab(),r=DX(e.file.type),i=e.status===`uploading`,a=e.status===`error`;return R(`div`,{className:sS(`relative inline-flex items-center gap-2 rounded-input border py-1.5 pl-1.5 pr-7 overflow-hidden`,a?`border-base-error/30 bg-base-error/5`:`border-base-border/60 bg-base-active/40`),children:[r&&e.previewUrl?R(`img`,{src:e.previewUrl,alt:e.file.name,className:`h-11 w-11 rounded-input object-cover shrink-0 bg-base-active`}):R(`div`,{className:`flex h-11 w-11 items-center justify-center rounded-input bg-base-active shrink-0`,children:R(Z4,{})}),R(`div`,{className:`flex flex-col min-w-0 max-w-[220px]`,children:[R(`span`,{className:`text-sm text-base-primary truncate`,children:e.file.name}),a&&R(`span`,{className:`text-xs text-base-error break-words`,children:e.error||n.file_upload_error.value})]}),i&&R(gS,{name:`loader`,size:`sm`,className:`animate-spin text-base-subtle shrink-0`}),R(`button`,{type:`button`,onClick:t,"aria-label":n.remove_file.value,className:`absolute right-1.5 top-1/2 -translate-y-1/2 !mt-0 text-base-subtle hover:text-base-primary transition-colors`,children:R(gS,{name:`x`,size:`sm`})})]})}function Z4(){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`22`,height:`22`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,className:`text-base-subtle`,children:[R(`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`}),R(`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`}),R(`path`,{d:`M10 9H8`}),R(`path`,{d:`M16 13H8`}),R(`path`,{d:`M16 17H8`})]})}function Q4({showTranscript:e,scrollPinned:t}){let n=Ry(),r=zy(),i=By(),a=mm(``),o=mm(!1),s=ab(),{isDisconnected:c,status:l,lastId:u,startSession:d,sendUserMessage:f,sendMultimodalMessage:p}=Oy(),m=mm(null);xm(()=>{if(!m.value)return;let e=setTimeout(()=>{m.value=null},4e3);return()=>clearTimeout(e)});let{pendingFile:h,isUploading:g,hasReachedLimit:_,addFile:v,removeFile:y,markFileAsSent:b}=MX({conversationId:l.value===`connected`?u.value:null,maxFiles:i.value}),x=L(()=>r.value&&n.value&&!c.value),S=L(()=>!h.value&&!_.value&&l.value===`connected`),C=I(e=>{let t=v(e);if(t){if(t===`unsupported_type`){m.value=`${s.file_type_unsupported.peek()} ${wX.join(`, `)}.`;return}m.value={too_large:s.file_too_large,limit_reached:s.file_limit_reached}[t].peek()}},[v,s,m]),w=L(()=>{let e=!!a.value.trim(),t=h.value?.status===`ready`;return(e||t)&&!g.value}),T=I(async e=>{if(e.preventDefault(),!w.peek())return;let n=a.value.trim(),r=h.value;if(r?.status===`ready`&&!c.value){t.value=!0,p({text:n||void 0,file:{fileId:r.fileId,fileName:r.file.name,mimeType:r.file.type,previewUrl:r.previewUrl}}),b(),a.value=``;return}n&&(t.value=!0,a.value=``,c.value?await d(e.currentTarget,n):f(n))},[a,t,c,d,f,p,h,b,w]);return R(`div`,{className:`sticky bottom-0 pointer-events-none z-10 max-h-[50%] flex flex-col`,children:[R(`div`,{className:`absolute top-0 left-0 right-0 h-4 -translate-y-full bg-gradient-to-t from-base to-transparent pointer-events-none backdrop-blur-[1px] [mask-image:linear-gradient(to_top,black,transparent)] shadow-scroll-fade-top`}),R(`div`,{className:`relative w-full px-3 pb-3 flex flex-col items-center pointer-events-auto min-h-0`,children:[m.value&&R(`div`,{className:`w-full px-1 pb-1.5 text-xs text-base-error text-center`,children:m.value}),n.value&&R(`div`,{className:sS(`bg-base relative flex flex-col min-h-0 rounded-[calc(var(--el-sheet-radius)-8px)] border border-base-border w-full transition-shadow overflow-hidden`,o.value&&`ring-2 ring-accent`),children:[h.value&&R(`div`,{className:`px-3 pt-3`,children:R(X4,{pendingFile:h.value,onRemove:y})}),R($4,{userMessage:a,isFocused:o,canSend:w,onSendMessage:T}),R(`div`,{className:`absolute bottom-0 left-0 right-0 flex gap-1.5 items-center justify-end px-3 pb-3 pt-2 pointer-events-none`,children:R(`div`,{className:`pointer-events-auto flex gap-1.5 items-center`,children:R(e3,{canSend:w,onSendMessage:T,showTranscript:e,showUploadButton:x,uploadEnabled:S,onFileSelect:C})})})]}),!n.value&&R(`div`,{className:`w-full flex gap-1.5 items-center justify-end`,children:R(e3,{canSend:w,onSendMessage:T,showTranscript:e,showUploadButton:x,uploadEnabled:S,onFileSelect:C})})]})]})}function $4({userMessage:e,isFocused:t,canSend:n,onSendMessage:r}){let i=ab(),a=Iy(),{isDisconnected:o,conversationIndex:s,sendUserActivity:c}=Oy(),l=I(t=>{e.value=t.currentTarget.value},[e]),u=I(async e=>{e.isComposing||e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),n.peek()&&await r(e))},[r,n]),d=I(()=>{t.value=!0},[t]),f=I(()=>{t.value=!1},[t]);return R(`textarea`,{"aria-label":i.input_label,value:e.value,onInput:c,onChange:l,onKeyDown:u,onFocus:d,onBlur:f,placeholder:a.value?o.value&&s.value>0?i.input_placeholder_new_conversation.value:i.input_placeholder_text_only.value:i.input_placeholder.value,className:`w-full h-full resize-none bg-base leading-5 outline-hidden text-sm text-base-primary placeholder:text-base-subtle p-3 pb-[60px] min-h-18 max-h-full field-sizing-content`})}function e3({canSend:e,onSendMessage:t,showTranscript:n=!1,showUploadButton:r,uploadEnabled:i,onFileSelect:a}){let o=ab(),s=Iy(),c=Ry(),{isDisconnected:l,status:u}=Oy(),{isTextMode:d}=$y(),f=L(()=>!l.value||!s.value&&n);return R(gd,{children:[R(LS,{visible:L(()=>!s.value&&!l.value&&!d.value).value,children:R(J4,{className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),R(LS,{visible:r.value,children:R(Y4,{iconOnly:!0,disabled:!i.value,onFileSelect:a,className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),R(LS,{visible:f.value,children:R(q4,{iconOnly:!0,isDisconnected:l.value,disabled:u.value===`disconnecting`||u.value===`connecting`,className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),c.value&&R(VS,{icon:`send`,onClick:t,variant:`primary`,disabled:!e.value,"aria-label":o.send_message.value})]})}var t3=`#version 300 es
|
|
425
|
+
`},o2=0,s2=[];function c2(e){var t=F([]),n=F([0,0]),r=F(),i=hf(o2++)[0],a=hf(A0)[0],o=F(e);_f(function(){o.current=e},[e]),_f(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=a0([e.lockRef.current],(e.shards||[]).map(r2),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=I(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=t2(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=J0(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=J0(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return e2(h,t,e,h===`h`?s:c,!0)},[]),c=I(function(e){var n=e;if(!(!s2.length||s2[s2.length-1]!==a)){var r=`deltaY`in n?n2(n):t2(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&i2(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(r2).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=I(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:l2(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=I(function(e){n.current=t2(e),r.current=void 0},[]),d=I(function(t){l(t.type,n2(t),t.target,s(t,e.lockRef.current))},[]),f=I(function(t){l(t.type,t2(t),t.target,s(t,e.lockRef.current))},[]);_f(function(){return s2.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,U0),document.addEventListener(`touchmove`,c,U0),document.addEventListener(`touchstart`,u,U0),function(){s2=s2.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,U0),document.removeEventListener(`touchmove`,c,U0),document.removeEventListener(`touchstart`,u,U0)}},[]);var p=e.removeScrollBar,m=e.inert;return pd(gd,null,m?pd(a,{styles:a2(i)}):null,p?pd(B0,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function l2(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var u2=y0(b0,c2),d2=Uf(function(e,t){return pd(S0,r0({},e,{ref:t,sideCar:u2}))});d2.classNames=S0.classNames;var f2=[` `,`Enter`,`ArrowUp`,`ArrowDown`],p2=[` `,`Enter`],m2=`Select`,[h2,g2,_2]=oZ(m2),[v2,y2]=QX(m2,[_2,v1]),b2=v1(),[x2,S2]=v2(m2),[C2,w2]=v2(m2),T2=e=>{let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m}=e,h=b2(t),[g,_]=hf(null),[v,y]=hf(null),[b,x]=hf(!1),S=cZ(l),[C,w]=V1({prop:r,defaultProp:i??!1,onChange:a,caller:m2}),[T,ee]=V1({prop:o,defaultProp:s,onChange:c,caller:m2}),te=F(null),ne=g?m||!!g.closest(`form`):!0,[re,ie]=hf(new Set),ae=Array.from(re).map(e=>e.props.value).join(`;`);return R(P1,{...h,children:R(x2,{required:p,scope:t,trigger:g,onTriggerChange:_,valueNode:v,onValueNodeChange:y,valueNodeHasChildren:b,onValueNodeHasChildrenChange:x,contentId:JZ(),value:T,onValueChange:ee,open:C,onOpenChange:w,dir:S,triggerPointerDownPosRef:te,disabled:f,children:[R(h2.Provider,{scope:t,children:R(C2,{scope:e.__scopeSelect,onNativeOptionAdd:I(e=>{ie(t=>new Set(t).add(e))},[]),onNativeOptionRemove:I(e=>{ie(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:n})}),ne?R(b4,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:d,value:T,onChange:e=>ee(e.target.value),disabled:f,form:m,children:[T===void 0?R(`option`,{value:``}):null,Array.from(re)]},ae):null]})})};T2.displayName=m2;var E2=`SelectTrigger`,D2=Uf((e,t)=>{let{__scopeSelect:n,disabled:r=!1,...i}=e,a=b2(n),o=S2(E2,n),s=o.disabled||r,c=xb(t,o.onTriggerChange),l=g2(n),u=F(`touch`),[d,f,p]=S4(e=>{let t=l().filter(e=>!e.disabled),n=C4(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onValueChange(n.value)}),m=e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return R(F1,{asChild:!0,...a,children:R(lZ.button,{type:`button`,role:`combobox`,"aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":x4(o.value)?``:void 0,...i,ref:c,onClick:ZX(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:ZX(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:ZX(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&f(e.key),!(t&&e.key===` `)&&f2.includes(e.key)&&(m(),e.preventDefault())})})})});D2.displayName=E2;var O2=`SelectValue`,k2=Uf((e,t)=>{let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=S2(O2,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=xb(t,c.onValueNodeChange);return GZ(()=>{l(u)},[l,u]),R(lZ.span,{...s,ref:d,style:{pointerEvents:`none`},children:x4(c.value)?R(gd,{children:o}):a})});k2.displayName=O2;var A2=`SelectIcon`,j2=Uf((e,t)=>{let{__scopeSelect:n,children:r,...i}=e;return R(lZ.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})});j2.displayName=A2;var M2=`SelectPortal`,N2=e=>R(z1,{asChild:!0,...e});N2.displayName=M2;var P2=`SelectContent`,F2=Uf((e,t)=>{let n=S2(P2,e.__scopeSelect),[r,i]=hf();if(GZ(()=>{i(new DocumentFragment)},[]),!n.open){let t=r;return t?rp(R(L2,{scope:e.__scopeSelect,children:R(h2.Slot,{scope:e.__scopeSelect,children:R(`div`,{children:e.children})})}),t):null}return R(V2,{...e,ref:t})});F2.displayName=P2;var I2=10,[L2,R2]=v2(P2),z2=`SelectContentImpl`,B2=eZ(`SelectContent.RemoveScroll`),V2=Uf((e,t)=>{let{__scopeSelect:n,position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=S2(P2,n),[y,b]=hf(null),[x,S]=hf(null),C=xb(t,e=>b(e)),[w,T]=hf(null),[ee,te]=hf(null),ne=g2(n),[re,ie]=hf(!1),ae=F(!1);_f(()=>{if(y)return n0(y)},[y]),DZ();let oe=I(e=>{let[t,...n]=ne().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&x&&(x.scrollTop=0),n===r&&x&&(x.scrollTop=x.scrollHeight),n?.focus(),document.activeElement!==i))return},[ne,x]),se=I(()=>oe([w,y]),[oe,w,y]);_f(()=>{re&&se()},[re,se]);let{onOpenChange:E,triggerPointerDownPosRef:ce}=v;_f(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(ce.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(ce.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||E(!1),document.removeEventListener(`pointermove`,t),ce.current=null};return ce.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[y,E,ce]),_f(()=>{let e=()=>E(!1);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[E]);let[le,ue]=S4(e=>{let t=ne().filter(e=>!e.disabled),n=C4(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current.focus())}),de=I((e,t,n)=>{let r=!ae.current&&!n;(v.value!==void 0&&v.value===t||r)&&(T(e),r&&(ae.current=!0))},[v.value]),fe=I(()=>y?.focus(),[y]),pe=I((e,t,n)=>{let r=!ae.current&&!n;(v.value!==void 0&&v.value===t||r)&&te(e)},[v.value]),me=r===`popper`?G2:U2,he=me===G2?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return R(L2,{scope:n,content:y,viewport:x,onViewportChange:S,itemRefCallback:de,selectedItem:w,onItemLeave:fe,itemTextRefCallback:pe,focusSelectedItem:se,selectedItemText:ee,position:r,isPositioned:re,searchRef:le,children:R(d2,{as:B2,allowPinchZoom:!0,children:R(NZ,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:ZX(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:R(yZ,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:R(me,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...he,onPlaced:()=>ie(!0),ref:C,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:ZX(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&ue(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=ne().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>oe(t)),e.preventDefault()}})})})})})})});V2.displayName=z2;var H2=`SelectItemAlignedPosition`,U2=Uf((e,t)=>{let{__scopeSelect:n,onPlaced:r,...i}=e,a=S2(P2,n),o=R2(P2,n),[s,c]=hf(null),[l,u]=hf(null),d=xb(t,e=>u(e)),f=g2(n),p=F(!1),m=F(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,y=I(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-I2,d=XX(a,[I2,Math.max(I2,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-I2,d=XX(a,[I2,Math.max(I2,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-I2*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),ee=e.top+e.height/2-I2,te=c-ee,ne=g.offsetHeight/2,re=g.offsetTop+ne,ie=m+v+re,ae=x-ie;if(ie<=ee){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=ie+Math.max(te,ne+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(ee,m+h.offsetTop+(e?w:0)+ne)+ae;s.style.height=t+`px`,h.scrollTop=ie-ee+h.offsetTop}s.style.margin=`${I2}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);GZ(()=>y(),[y]);let[b,x]=hf();return GZ(()=>{l&&x(window.getComputedStyle(l).zIndex)},[l]),R(K2,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:I(e=>{e&&m.current===!0&&(y(),v?.(),m.current=!1)},[y,v]),children:R(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b},children:R(lZ.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})});U2.displayName=H2;var W2=`SelectPopperPosition`,G2=Uf((e,t)=>{let{__scopeSelect:n,align:r=`start`,collisionPadding:i=I2,...a}=e;return R(I1,{...b2(n),...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})});G2.displayName=W2;var[K2,q2]=v2(P2,{}),J2=`SelectViewport`,Y2=Uf((e,t)=>{let{__scopeSelect:n,nonce:r,...i}=e,a=R2(J2,n),o=q2(J2,n),s=xb(t,a.onViewportChange),c=F(0);return R(gd,{children:[R(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),R(h2.Slot,{scope:n,children:R(lZ.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:ZX(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-I2*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})});Y2.displayName=J2;var X2=`SelectGroup`,[Z2,Q2]=v2(X2),$2=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=JZ();return R(Z2,{scope:n,id:i,children:R(lZ.div,{role:`group`,"aria-labelledby":i,...r,ref:t})})});$2.displayName=X2;var e4=`SelectLabel`,t4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=Q2(e4,n);return R(lZ.div,{id:i.id,...r,ref:t})});t4.displayName=e4;var n4=`SelectItem`,[r4,i4]=v2(n4),a4=Uf((e,t)=>{let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=S2(n4,n),c=R2(n4,n),l=s.value===r,[u,d]=hf(a??``),[f,p]=hf(!1),m=xb(t,e=>c.itemRefCallback?.(e,r,i)),h=JZ(),g=F(`touch`),_=()=>{i||(s.onValueChange(r),s.onOpenChange(!1))};if(r===``)throw Error(`A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return R(r4,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:I(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:R(h2.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:R(lZ.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:ZX(o.onFocus,()=>p(!0)),onBlur:ZX(o.onBlur,()=>p(!1)),onClick:ZX(o.onClick,()=>{g.current!==`mouse`&&_()}),onPointerUp:ZX(o.onPointerUp,()=>{g.current===`mouse`&&_()}),onPointerDown:ZX(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:ZX(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:ZX(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:ZX(o.onKeyDown,e=>{c.searchRef?.current!==``&&e.key===` `||(p2.includes(e.key)&&_(),e.key===` `&&e.preventDefault())})})})})});a4.displayName=n4;var o4=`SelectItemText`,s4=Uf((e,t)=>{let{__scopeSelect:n,className:r,style:i,...a}=e,o=S2(o4,n),s=R2(o4,n),c=i4(o4,n),l=w2(o4,n),[u,d]=hf(null),f=xb(t,e=>d(e),c.onItemTextChange,e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=u?.textContent,m=bf(()=>R(`option`,{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:h,onNativeOptionRemove:g}=l;return GZ(()=>(h(m),()=>g(m)),[h,g,m]),R(gd,{children:[R(lZ.span,{id:c.textId,...a,ref:f}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?rp(a.children,o.valueNode):null]})});s4.displayName=o4;var c4=`SelectItemIndicator`,l4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e;return i4(c4,n).isSelected?R(lZ.span,{"aria-hidden":!0,...r,ref:t}):null});l4.displayName=c4;var u4=`SelectScrollUpButton`,d4=Uf((e,t)=>{let n=R2(u4,e.__scopeSelect),r=q2(u4,e.__scopeSelect),[i,a]=hf(!1),o=xb(t,r.onScrollButtonChange);return GZ(()=>{if(n.viewport&&n.isPositioned){let e=function(){a(t.scrollTop>0)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?R(m4,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null});d4.displayName=u4;var f4=`SelectScrollDownButton`,p4=Uf((e,t)=>{let n=R2(f4,e.__scopeSelect),r=q2(f4,e.__scopeSelect),[i,a]=hf(!1),o=xb(t,r.onScrollButtonChange);return GZ(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;a(Math.ceil(t.scrollTop)<e)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?R(m4,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null});p4.displayName=f4;var m4=Uf((e,t)=>{let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=R2(`SelectScrollButton`,n),o=F(null),s=g2(n),c=I(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return _f(()=>()=>c(),[c]),GZ(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),R(lZ.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:ZX(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:ZX(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:ZX(i.onPointerLeave,()=>{c()})})}),h4=`SelectSeparator`,g4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e;return R(lZ.div,{"aria-hidden":!0,...r,ref:t})});g4.displayName=h4;var _4=`SelectArrow`,v4=Uf((e,t)=>{let{__scopeSelect:n,...r}=e,i=b2(n),a=S2(_4,n),o=R2(_4,n);return a.open&&o.position===`popper`?R(L1,{...i,...r,ref:t}):null});v4.displayName=_4;var y4=`SelectBubbleInput`,b4=Uf(({__scopeSelect:e,value:t,...n},r)=>{let i=F(null),a=xb(r,i),o=W1(t);return _f(()=>{let e=i.current;if(!e)return;let n=window.HTMLSelectElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(o!==t&&r){let n=new Event(`change`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[o,t]),R(lZ.select,{...n,style:{...G1,...n.style},ref:a,defaultValue:t})});b4.displayName=y4;function x4(e){return e===``||e===void 0}function S4(e){let t=dZ(e),n=F(``),r=F(0),i=I(e=>{let i=n.current+e;t(i),(function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))})(i)},[t]),a=I(()=>{n.current=``,window.clearTimeout(r.current)},[]);return _f(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function C4(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=w4(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function w4(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var T4=T2,E4=D2,D4=j2,O4=N2,k4=F2,A4=Y2,j4=a4,M4=s4,N4=l4,P4=d4,F4=p4,I4={sm:`w-4 h-4`,md:`w-6 h-6`};function L4({size:e=`md`,flagCode:t,className:n,...r}){return R(`img`,{className:Bb(`rounded-full object-cover`,I4[e],n),src:`https://storage.googleapis.com/eleven-public-cdn/images/flags/circle-flags/${t}.svg`,alt:`${t.toUpperCase()} flag`,...r})}function R4({children:e,...t}){let[n,r]=hf(!1),{language:i,setLanguage:a,options:o}=Yh(),s=fb();return R(T4,{open:n,value:i.value.languageCode,onValueChange:e=>{a(e),r(!1)},onOpenChange:e=>{e&&r(!0)},children:[e,R(O4,{container:s,children:R(k4,{className:`overflow-hidden bg-base border border-base-border rounded-dropdown-sheet max-h-[min(384px,var(--radix-select-content-available-height))] min-w-[var(--radix-select-trigger-width)] z-10`,position:`popper`,sideOffset:8,align:`end`,side:`top`,onPointerDownOutside:()=>r(!1),onCloseAutoFocus:()=>r(!1),onEscapeKeyDown:()=>r(!1),...t,children:[R(P4,{className:`flex items-center justify-center h-6 bg-base text-base-subtle cursor-default`,children:R(gS,{size:`xs`,name:`chevron-up`})}),R(A4,{className:`p-1.5`,children:o.value.map(e=>R(j4,{value:e.languageCode,className:`flex select-none items-center p-1.5 pr-3 gap-2 cursor-pointer rounded-input relative focus-visible:outline-hidden data-highlighted:bg-base-active text-sm`,children:[R(L4,{flagCode:e.flagCode}),R(M4,{children:e.name}),R(N4,{className:`text-base-primary p-1.5 -mr-1.5 ml-auto`,children:R(gS,{size:`xs`,name:`check`})})]},e.languageCode))}),R(F4,{className:`flex items-center justify-center h-6 bg-base text-base-subtle cursor-default`,children:R(gS,{size:`xs`,name:`chevron-down`})})]})})]})}function z4({className:e,...t}){let n=ob(),{language:r,showPicker:i}=Yh();return i.value?R(R4,{align:`center`,children:R(E4,{className:Bb(`h-9 min-w-max rounded-button focus-ring px-2 flex gap-2 items-center text-base-primary bg-base hover:bg-base-hover active:bg-base-active font-medium`,e),"aria-label":n.change_language,...t,children:[R(L4,{size:`sm`,flagCode:r.value.flagCode}),r.value.name,R(D4,{className:`text-base-subtle`,asChild:!0,children:R(gS,{size:`xs`,name:`chevron-down`})})]})}):null}function B4({className:e,...t}){let{status:n,isSpeaking:r}=ky(),i=Ly(),{isTextMode:a}=eb(),o=ob(),s=L(()=>n.value===`connected`?i.value||a.value?o.chatting_status.value:r.value?o.speaking_status.value:o.listening_status.value:o.connecting_status.value),[c,l]=hf(s.peek());return xm(()=>{let e=s.value;if(n.value===`connected`&&r.value)l(e);else{let t=setTimeout(()=>{l(e)},500);return()=>clearTimeout(t)}}),R(`div`,{className:Bb(`py-1.5 px-3 bg-base-active overflow-hidden rounded-bubble text-sm`,e),...t,children:R(Ib,{initial:!1,active:!0,children:R(`div`,{className:`animate-text whitespace-nowrap transition-[opacity,transform] ease-out duration-200 data-hidden:opacity-0 transform data-hidden:translate-y-2`,children:c})},c)})}var V4=Vd(void 0),H4=768;function U4({children:e,initialVariant:t=`compact`}){let n=mm(t!==`compact`),r=mm(typeof window<`u`?window.innerWidth<H4:!1);_f(()=>{let e=()=>{r.value=window.innerWidth<H4};return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]);let i=I(()=>{n.value=!n.value},[n]),a=L(()=>n.value?r.value?`fullscreen`:`expanded`:`compact`),o=bf(()=>({variant:a,toggleSize:i}),[a,i]);return R(V4.Provider,{value:o,children:e})}function W4(){return Mh(V4)}function G4(e){let t=ob(),{mode:n,setMode:r,isTextMode:i}=eb(),a=I(()=>{r(n.peek()===`text`?`voice`:`text`)},[r,n]);return R(VS,{"aria-label":i.value?t.voice_mode:t.text_mode,icon:i.value?`soundwave`:`chat`,onClick:a,...e})}function K4({showBackButton:e,onBackClick:t,showStatusLabel:n,showLanguageSelector:r,showConversationModeToggle:i,showExpandButton:a}){let o=ob(),{toggleSize:s,variant:c}=W4(),l=L(()=>c.value===`compact`?`Expand widget`:`Collapse widget`);return R(`div`,{className:`w-full relative shrink-0 z-10`,children:[R(`div`,{className:`h-16 absolute top-0 w-full bg-base`}),R(`div`,{className:`h-4 absolute top-16 w-full bg-gradient-to-b from-base to-transparent backdrop-blur-[1px] [mask-image:linear-gradient(to_bottom,black,transparent)] shadow-scroll-fade-bottom`}),R(`div`,{className:`h-16 top-0 absolute flex flex-row items-center justify-center w-full`,children:[R(`div`,{className:`absolute start-3 flex gap-2 items-center`,children:[e?R(VS,{variant:`ghost`,onClick:t,"aria-label":o.go_back,className:`h-8 w-8`,children:R(gS,{name:`chevron-up`,className:`-rotate-90`,size:`xs`})}):R(`div`,{className:`relative w-8 h-8`}),R(Ib,{active:n,children:R(B4,{className:`transition-opacity data-hidden:opacity-0`})})]}),R(`div`,{className:`absolute flex flex-row items-center gap-2 ms-auto end-3`,children:[R(Ib,{active:r,children:R(`div`,{className:`transition-[opacity,transform] duration-200 data-hidden:opacity-0 data-hidden:-translate-y-4`,children:R(z4,{})})}),R(Ib,{active:i,children:R(G4,{variant:`ghost`,className:`h-8 w-8 transition-opacity data-hidden:opacity-0`})}),R(Ib,{active:a,children:R(VS,{variant:`ghost`,onClick:s,"aria-label":l,className:`h-8 w-8 transition-opacity data-hidden:opacity-0`,children:R(gS,{name:c.value===`compact`?`maximize`:`minimize`,size:`sm`})})})]})]})]})}function q4({iconOnly:e,isDisconnected:t,children:n,...r}){let{endSession:i,startSession:a}=ky(),o=ob();return R(VS,{variant:t?`primary`:`secondary`,icon:t?`phone`:`phone-off`,onClick:t?e=>a(e.currentTarget):i,"aria-label":t?o.start_call:o.end_call,...r,children:e?void 0:n??(t?o.start_call:o.end_call)})}function J4(e){let t=ob(),{isMuted:n,isMutingEnabled:r,setIsMuted:i}=rb(),a=I(()=>{i(!n.peek())},[i]);return r.value?R(VS,{"aria-label":t.mute_microphone,"aria-pressed":n.value,icon:n.value?`mic-off`:`mic`,onClick:a,...e}):null}function Y4({iconOnly:e,disabled:t,onFileSelect:n,children:r,...i}){let a=ob(),o=F(null),s=I(e=>{e.stopPropagation(),o.current?.click()},[]),c=I(e=>{let t=e.target,r=t.files?.[0];r&&n(r),t.value=``},[n]);return R(gd,{children:[R(VS,{variant:`secondary`,icon:`paperclip`,onClick:s,disabled:t,"aria-label":a.attach_file,...i,children:e?void 0:r??a.attach_file}),R(`input`,{ref:o,type:`file`,accept:wX.join(`,`),className:`hidden`,onChange:c})]})}function X4({pendingFile:e,onRemove:t}){let n=ob(),r=DX(e.file.type),i=e.status===`uploading`,a=e.status===`error`;return R(`div`,{className:sS(`relative inline-flex items-center gap-2 rounded-input border py-1.5 pl-1.5 pr-7 overflow-hidden`,a?`border-base-error/30 bg-base-error/5`:`border-base-border/60 bg-base-active/40`),children:[r&&e.previewUrl?R(`img`,{src:e.previewUrl,alt:e.file.name,className:`h-11 w-11 rounded-input object-cover shrink-0 bg-base-active`}):R(`div`,{className:`flex h-11 w-11 items-center justify-center rounded-input bg-base-active shrink-0`,children:R(Z4,{})}),R(`div`,{className:`flex flex-col min-w-0 max-w-[220px]`,children:[R(`span`,{className:`text-sm text-base-primary truncate`,children:e.file.name}),a&&R(`span`,{className:`text-xs text-base-error break-words`,children:e.error||n.file_upload_error.value})]}),i&&R(gS,{name:`loader`,size:`sm`,className:`animate-spin text-base-subtle shrink-0`}),R(`button`,{type:`button`,onClick:t,"aria-label":n.remove_file.value,className:`absolute right-1.5 top-1/2 -translate-y-1/2 !mt-0 text-base-subtle hover:text-base-primary transition-colors`,children:R(gS,{name:`x`,size:`sm`})})]})}function Z4(){return R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`22`,height:`22`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,className:`text-base-subtle`,children:[R(`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`}),R(`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`}),R(`path`,{d:`M10 9H8`}),R(`path`,{d:`M16 13H8`}),R(`path`,{d:`M16 17H8`})]})}function Q4({showTranscript:e,scrollPinned:t}){let n=zy(),r=By(),i=Vy(),a=mm(``),o=mm(!1),s=ob(),{isDisconnected:c,status:l,lastId:u,startSession:d,sendUserMessage:f,sendMultimodalMessage:p}=ky(),m=mm(null);xm(()=>{if(!m.value)return;let e=setTimeout(()=>{m.value=null},4e3);return()=>clearTimeout(e)});let{pendingFile:h,isUploading:g,hasReachedLimit:_,addFile:v,removeFile:y,markFileAsSent:b}=MX({conversationId:l.value===`connected`?u.value:null,maxFiles:i.value}),x=L(()=>r.value&&n.value&&!c.value),S=L(()=>!h.value&&!_.value&&l.value===`connected`),C=I(e=>{let t=v(e);if(t){if(t===`unsupported_type`){m.value=`${s.file_type_unsupported.peek()} ${wX.join(`, `)}.`;return}m.value={too_large:s.file_too_large,limit_reached:s.file_limit_reached}[t].peek()}},[v,s,m]),w=L(()=>{let e=!!a.value.trim(),t=h.value?.status===`ready`;return(e||t)&&!g.value}),T=I(async e=>{if(e.preventDefault(),!w.peek())return;let n=a.value.trim(),r=h.value;if(r?.status===`ready`&&!c.value){t.value=!0,p({text:n||void 0,file:{fileId:r.fileId,fileName:r.file.name,mimeType:r.file.type,previewUrl:r.previewUrl}}),b(),a.value=``;return}n&&(t.value=!0,a.value=``,c.value?await d(e.currentTarget,n):f(n))},[a,t,c,d,f,p,h,b,w]);return R(`div`,{className:`sticky bottom-0 pointer-events-none z-10 max-h-[50%] flex flex-col`,children:[R(`div`,{className:`absolute top-0 left-0 right-0 h-4 -translate-y-full bg-gradient-to-t from-base to-transparent pointer-events-none backdrop-blur-[1px] [mask-image:linear-gradient(to_top,black,transparent)] shadow-scroll-fade-top`}),R(`div`,{className:`relative w-full px-3 pb-3 flex flex-col items-center pointer-events-auto min-h-0`,children:[m.value&&R(`div`,{className:`w-full px-1 pb-1.5 text-xs text-base-error text-center`,children:m.value}),n.value&&R(`div`,{className:sS(`bg-base relative flex flex-col min-h-0 rounded-[calc(var(--el-sheet-radius)-8px)] border border-base-border w-full transition-shadow overflow-hidden`,o.value&&`ring-2 ring-accent`),children:[h.value&&R(`div`,{className:`px-3 pt-3`,children:R(X4,{pendingFile:h.value,onRemove:y})}),R($4,{userMessage:a,isFocused:o,canSend:w,onSendMessage:T}),R(`div`,{className:`absolute bottom-0 left-0 right-0 flex gap-1.5 items-center justify-end px-3 pb-3 pt-2 pointer-events-none`,children:R(`div`,{className:`pointer-events-auto flex gap-1.5 items-center`,children:R(e3,{canSend:w,onSendMessage:T,showTranscript:e,showUploadButton:x,uploadEnabled:S,onFileSelect:C})})})]}),!n.value&&R(`div`,{className:`w-full flex gap-1.5 items-center justify-end`,children:R(e3,{canSend:w,onSendMessage:T,showTranscript:e,showUploadButton:x,uploadEnabled:S,onFileSelect:C})})]})]})}function $4({userMessage:e,isFocused:t,canSend:n,onSendMessage:r}){let i=ob(),a=Ly(),{isDisconnected:o,conversationIndex:s,sendUserActivity:c}=ky(),l=I(t=>{e.value=t.currentTarget.value},[e]),u=I(async e=>{e.isComposing||e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),n.peek()&&await r(e))},[r,n]),d=I(()=>{t.value=!0},[t]),f=I(()=>{t.value=!1},[t]);return R(`textarea`,{"aria-label":i.input_label,value:e.value,onInput:c,onChange:l,onKeyDown:u,onFocus:d,onBlur:f,placeholder:a.value?o.value&&s.value>0?i.input_placeholder_new_conversation.value:i.input_placeholder_text_only.value:i.input_placeholder.value,className:`w-full h-full resize-none bg-base leading-5 outline-hidden text-sm text-base-primary placeholder:text-base-subtle p-3 pb-[60px] min-h-18 max-h-full field-sizing-content`})}function e3({canSend:e,onSendMessage:t,showTranscript:n=!1,showUploadButton:r,uploadEnabled:i,onFileSelect:a}){let o=ob(),s=Ly(),c=zy(),{isDisconnected:l,status:u}=ky(),{isTextMode:d}=eb(),f=L(()=>!l.value||!s.value&&n);return R(gd,{children:[R(LS,{visible:L(()=>!s.value&&!l.value&&!d.value).value,children:R(J4,{className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),R(LS,{visible:r.value,children:R(Y4,{iconOnly:!0,disabled:!i.value,onFileSelect:a,className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),R(LS,{visible:f.value,children:R(q4,{iconOnly:!0,isDisconnected:l.value,disabled:u.value===`disconnecting`||u.value===`connecting`,className:`bg-base text-base-primary hover:bg-base-hover active:bg-base-active`})}),c.value&&R(VS,{icon:`send`,onClick:t,variant:`primary`,disabled:!e.value,"aria-label":o.send_message.value})]})}var t3=`#version 300 es
|
|
426
426
|
precision highp float;
|
|
427
427
|
|
|
428
428
|
uniform float uTime;
|
|
@@ -597,4 +597,4 @@ void main() {
|
|
|
597
597
|
vUv = position * 0.5 + 0.5;
|
|
598
598
|
gl_Position = vec4(position, 0, 1);
|
|
599
599
|
}
|
|
600
|
-
`,r3=0,i3=new Float32Array([-1,1,-1,-1,1,1,1,-1]),a3=`https://storage.googleapis.com/eleven-public-cdn/images/perlin-noise.png`,o3=class e{static noiseImage;gl;program;startTime;targetSpeed=0;speed=.5;rafId=null;resizeObserver;colorA=[0,0,0];colorB=[0,0,0];offsets=new Float32Array(7).map(()=>Math.random()*Math.PI*2);constructor(t){let n=t.getContext(`webgl2`,{depth:!1,stencil:!1});this.gl=n,this.program=this.setupProgram(t3,n3);let r=n.createTexture();n.bindTexture(n.TEXTURE_2D,r),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([128,128,128,255])),e.noiseImage||(e.noiseImage=new Image,e.noiseImage.crossOrigin=`anonymous`,e.noiseImage.src=a3),e.noiseImage.complete?this.copyNoiseImage():e.noiseImage.addEventListener(`load`,this.copyNoiseImage);let i=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,i),n.bufferData(n.ARRAY_BUFFER,i3,n.STATIC_DRAW),n.vertexAttribPointer(r3,2,n.FLOAT,!1,0,0),n.enableVertexAttribArray(r3),this.updateColors(`#2792DC`,`#9CE6E6`),this.resizeObserver=new ResizeObserver(e=>{let n=e[0],r=n.devicePixelContentBoxSize?n.devicePixelContentBoxSize[0]:n.contentBoxSize[0];t.width=Math.min(512,r.inlineSize),t.height=Math.min(512,r.blockSize),this.updateViewport()});let a=t.parentElement;if(a)try{this.resizeObserver.observe(a,{box:`device-pixel-content-box`})}catch{this.resizeObserver.observe(a)}this.startTime=performance.now(),this.rafId=requestAnimationFrame(this.render)}dispose(){this.rafId!==null&&cancelAnimationFrame(this.rafId),this.resizeObserver?.disconnect(),this.gl=null,this.program=null}updateViewport(){this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height)}updateColors(e,t){this.gl&&(this.colorA=this.updateColor(`uColor1`,e)??this.colorA,this.colorB=this.updateColor(`uColor2`,t)??this.colorB)}updateVolume(e,t){this.targetSpeed=.2+(1-(t-1)**2)*1.8,this.targetSpeed>this.speed&&(this.speed=this.targetSpeed),this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uInputVolume`),e),this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uOutputVolume`),t)}updateColor(e,t){try{let n=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,i=parseInt(t.slice(5,7),16)/255,a=[n**2.2,r**2.2,i**2.2];return this.gl.uniform3fv(this.gl.getUniformLocation(this.program,e),a),a}catch(e){console.error(`[ConversationalAI] Failed to parse ${t} as color:`,e)}}setupProgram(e,t){let n=this.getShader(this.gl.FRAGMENT_SHADER,e),r=this.getShader(this.gl.VERTEX_SHADER,t);if(!n||!r)throw Error(`Failed to compile shaders`);if(this.program=this.gl.createProgram(),this.gl.attachShader(this.program,n),this.gl.attachShader(this.program,r),this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))throw Error(`Failed to link program`);return this.gl.useProgram(this.program),this.gl.uniform1i(this.gl.getUniformLocation(this.program,`uPerlinTexture`),0),this.gl.uniform1fv(this.gl.getUniformLocation(this.program,`uOffsets`),this.offsets),this.gl.uniform3fv(this.gl.getUniformLocation(this.program,`uColor1`),this.colorA),this.gl.uniform3fv(this.gl.getUniformLocation(this.program,`uColor2`),this.colorB),this.program}getShader(e,t){let n=this.gl.createShader(e);return this.gl.shaderSource(n,t),this.gl.compileShader(n),this.gl.getShaderParameter(n,this.gl.COMPILE_STATUS)?n:(this.gl.deleteShader(n),null)}copyNoiseImage=()=>{this.gl&&(this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,e.noiseImage),this.gl.generateMipmap(this.gl.TEXTURE_2D))};toDataURL=()=>this.gl.canvas.toDataURL(`image/png`);render=()=>{if(!this.gl){this.rafId=null;return}let e=(performance.now()-this.startTime)/1e3;this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uTime`),e),this.gl.drawArrays(this.gl.TRIANGLE_STRIP,0,4),this.rafId=requestAnimationFrame(this.render)}},s3={sm:`w-9 h-9`,lg:`w-48 h-48`};function c3({size:e=`sm`,className:t}){let{getInputVolume:n,getOutputVolume:r,isSpeaking:i,isDisconnected:a}=Oy(),{config:o}=cb(),s=F(null),c=F(null);xm(()=>{if(a.value){s.current.style.transform=``,c.current.style.transform=``;return}let e;function t(){let a=n(),o=r(),l=i.peek()?1:1-a*.4,u=i.peek()?1+o*.4:1;s.current.style.transform=`scale(${u})`,c.current.style.transform=`scale(${l})`,e=requestAnimationFrame(t)}return t(),()=>{cancelAnimationFrame(e)}});let l=L(()=>({backgroundImage:o.value.type===`image`?`url(${o.value.url})`:o.value.type===`url`?`url(${o.value.custom_url})`:void 0}));return R(`div`,{className:Bb(`relative shrink-0`,s3[e],t),children:[R(`div`,{ref:s,className:`absolute inset-0 rounded-full bg-base-border`}),R(`div`,{ref:c,style:l,className:`absolute inset-0 rounded-full overflow-hidden bg-base bg-cover`,children:o.value.type===`orb`&&R(l3,{color1:o.value.color_1,color2:o.value.color_2})})]})}function l3({color1:e,color2:t}){let{canvasUrl:n}=cb(),[r,i]=hf(null);return _f(()=>{r&&(r.updateColors(e,t),r.render(),n.value=r.toDataURL())},[r,e,t]),R(`canvas`,{className:`w-full h-full`,ref:I(e=>{if(e){let t=new o3(e);return i(t),()=>t.dispose()}else i(null)},[i])})}function u3({showAvatar:e,showTranscript:t,isDisconnected:n,onStartSession:r}){let i=ab(),a=Ry(),o=Fy(),s=L(()=>sS(`absolute origin-top-left transition-[transform,left,top,opacity,scale] duration-200 z-10`,`data-hidden:opacity-0`,t.value?`top-4 left-4 scale-[0.1667]`:a.value?`top-[40%] left-1/2 -translate-x-1/2 -translate-y-1/2 scale-100`:`top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 scale-100`)),c=L(()=>!t.value&&n.value&&!o.value),l=L(()=>!t.value&&!n.value);return R(Ib,{active:e,children:R(`div`,{className:s,children:[R(c3,{size:`lg`}),R(Ib,{active:c,children:R(`div`,{className:`absolute bottom-0 p-1 rounded-[calc(var(--el-button-radius)+4px)] bg-base left-1/2 -translate-x-1/2 translate-y-1/2 transition-[opacity,transform] data-hidden:opacity-0 data-hidden:scale-100 scale-150`,children:R(VS,{"aria-label":i.start_call,variant:`primary`,icon:`phone`,onClick:e=>r(e.currentTarget)})})}),R(Ib,{active:l,children:R(`div`,{className:`absolute -bottom-3 left-1/2 -translate-x-1/2 translate-y-full transition-[opacity,transform] data-hidden:opacity-0 data-hidden:scale-75`,children:R(B4,{})})})]})})}var d3={"top-left":`origin-top-left`,top:`origin-top`,"top-right":`origin-top-right`,"bottom-left":`origin-bottom-left`,"bottom-right":`origin-bottom-right`,bottom:`origin-bottom`};function f3({open:e}){let t=Fy(),n=Iy(),r=Py(),i=r.value.placement,{isDisconnected:a,startSession:o,transcript:s,conversationIndex:c}=Oy(),l=Ly(),{currentContent:u,currentConfig:d}=pS(),{variant:f}=W4(),p=L(()=>{let e=t.value||n.value;return mb(s.value,{showAgentStatus:r.value.show_agent_status??!1,transcriptEnabled:e||(r.value.transcript_enabled??!1),firstMessage:e&&t.value&&l.value?l.value:void 0,firstMessageConversationIndex:c.peek()})}),m=L(()=>p.value.length>0||!a.value&&r.value.transcript_enabled),h=mm(!0),g=L(()=>u.value!==`feedback`),_=L(()=>m.value&&!a.value),v=L(()=>u.value!==`feedback`&&(!m.value||a.value)),y=L(()=>!!r.value.conversation_mode_toggle_enabled&&!n.value&&!a.value),b=L(()=>m.value);return R(Ib,{initial:!1,active:e,children:R(`div`,{"data-variant":f.value,className:sS(`sheet`,`flex flex-col overflow-hidden absolute bg-base shadow-lg pointer-events-auto z-2`,`transition-[width,height,max-width,max-height,transform,border-radius,opacity,inset,bottom,top,left,right,margin,padding] duration-200`,`data-hidden:scale-90 data-hidden:opacity-0`,d3[i],i.startsWith(`top`)?r.value.always_expanded?`top-0`:`top-20`:r.value.always_expanded?`bottom-0`:`bottom-20`),children:[R(K4,{showBackButton:d.showHeaderBack,onBackClick:d.onHeaderBack,showStatusLabel:_,showLanguageSelector:v,showConversationModeToggle:y,showExpandButton:b}),R(Ib,{active:u.value===`transcript`,children:R(`div`,{className:`grow flex flex-col min-h-0 relative transition-opacity duration-300 ease-out data-hidden:opacity-0`,children:[R(KX,{transcript:p,scrollPinned:h}),R(Q4,{showTranscript:m.value,scrollPinned:h})]})}),R(Ib,{active:u.value===`feedback`,children:R(`div`,{className:`absolute inset-0 top-[88px] flex flex-col bg-base transition-transform duration-300 ease-out data-hidden:translate-x-full`,children:[R(JX,{}),R(YX,{})]})}),R(u3,{showAvatar:g,showTranscript:m,isDisconnected:a,onStartSession:o})]})})}function p3({onDismiss:e,className:t,...n}){return R(VS,{onClick:t=>{t.preventDefault(),t.stopPropagation(),e&&e()},variant:`secondary`,icon:`minimize`,"aria-label":`Dismiss`,className:t,...n})}function m3({expanded:e,onDismiss:t}){let n=Iy(),r=Py().value.variant,{isDisconnected:i}=Oy(),a=ab(),o=I(()=>{e.value=!e.value},[e]);return R(gd,{children:[r===`full`&&R(LS,{visible:!e.value&&!i.value,className:`p-1`,children:R(c3,{})}),R(LS,{grow:r!==`tiny`,visible:!n.value&&!e.value&&!i.value,className:`p-1`,children:R(q4,{iconOnly:!0,isDisconnected:!1})}),R(LS,{visible:!n.value&&!e.value&&!i.value,className:`p-1`,children:R(J4,{})}),R(LS,{grow:i.value,visible:!0,className:`p-1`,children:R(VS,{className:`w-full`,variant:`primary`,iconClassName:Bb((e.value||!i.value)&&`transition-transform duration-200`,e.value&&`-rotate-180`),icon:e.value?`chevron-up`:i.value?n.value?`chat`:`phone`:`chevron-up`,"aria-label":e.value?a.collapse:i.value?n.value?a.start_chat:a.start_call:a.expand,onClick:!e.value&&!i.value?o:void 0,children:!e.value&&i.value&&r!==`tiny`?n.value?a.start_chat:a.start_call:void 0})}),R(LS,{visible:!!t,className:`p-1`,children:R(p3,{onDismiss:t})})]})}function h3({expanded:e,className:t,onDismiss:n,...r}){let{isDisconnected:i}=Oy(),a=ab();return R(`div`,{className:Bb(`transition-[border-radius] flex flex-col p-2`,!e.value&&i.value?`rounded-sheet`:`rounded-compact-sheet`,t),...r,children:[R(LS,{visible:!e.value&&i.value,className:`p-1 !min-w-60`,children:R(`div`,{className:`flex items-center gap-2`,children:[R(c3,{}),R(`div`,{className:`text-sm max-w-64`,children:a.main_label})]})}),R(`div`,{className:`flex items-center`,children:R(m3,{expanded:e,onDismiss:n})})]})}function g3({expanded:e,className:t,onDismiss:n,...r}){return R(`div`,{className:Bb(`rounded-compact-sheet flex items-center p-2`,t),...r,children:[R(LS,{visible:!e.value,className:`p-1`,children:R(c3,{})}),R(m3,{expanded:e,onDismiss:n})]})}function _3({visible:e,className:t,...n}){let r=ab(),{language:i,showPicker:a}=Yh();return a.value?R(LS,{visible:e,className:`p-1`,children:R(R4,{children:R(E4,{className:Bb(`h-9 min-w-max border border-base-border rounded-button focus-ring px-1.5 flex gap-1 items-center transition-colors duration-200 hover:bg-base-hover active:bg-base-active`,t),"aria-label":r.change_language,...n,children:[R(L4,{flagCode:i.value.flagCode}),R(D4,{className:`px-1 text-base-subtle`,asChild:!0,children:R(gS,{size:`xs`,name:`chevron-down`})})]})})}):null}function v3({onDismiss:e}){let t=Py().value.variant,{isDisconnected:n,status:r}=Oy();return R(gd,{children:[R(q4,{isDisconnected:n.value,iconOnly:t===`tiny`,className:`w-full m-1 z-1`,disabled:r.value===`disconnecting`||r.value===`connecting`}),R(_3,{visible:n.value}),R(LS,{visible:!n.value,className:`p-1`,children:R(J4,{})}),R(LS,{visible:!!e,className:`p-1`,children:R(p3,{onDismiss:e})})]})}function y3({className:e,onDismiss:t,...n}){let{isDisconnected:r}=Oy(),i=ab();return R(`div`,{className:Bb(`flex flex-col p-2 rounded-sheet`,e),...n,children:[R(`div`,{className:`flex items-center p-1 gap-2 min-w-60`,children:[R(c3,{}),R(`div`,{className:`relative text-sm max-w-64`,children:[R(`span`,{className:Bb(`block transition-[transform,opacity] duration-200`,!r.value&&`opacity-0 scale-90`),children:i.main_label}),R(Ib,{active:!r.value,children:R(B4,{className:`absolute top-1/2 -translate-y-1/2 transition-[transform,opacity] duration-200 data-hidden:opacity-0 data-hidden:scale-90`})})]})]}),R(`div`,{className:`flex items-center`,children:R(v3,{onDismiss:t})})]})}function b3({className:e,onDismiss:t,...n}){return R(`div`,{className:Bb(`rounded-compact-sheet flex items-center p-2`,e),...n,children:[R(c3,{className:`mx-1`}),R(v3,{onDismiss:t})]})}function x3({expandable:e,expanded:t,onDismiss:n}){let r=Py().value.variant,i=xy(),{isDisconnected:a}=Oy(),o=I(async()=>{await i.requestTerms(),t.value=!t.peek()},[t]),s=r===`full`;return e?R(s?h3:g3,{expanded:t,onDismiss:n,className:Bb(`bg-base shadow-md pointer-events-auto overflow-hidden`,(a.value||t.value)&&`cursor-pointer`),onClick:a.value||t.value?o:void 0}):R(s?y3:b3,{onDismiss:n,className:`bg-base shadow-md pointer-events-auto overflow-hidden`})}function S3(){let e=ab(),t=Vy(),{dismissTerms:n,acceptTerms:r}=xy();return R(`div`,{className:`max-w-[400px] flex flex-col gap-2 bg-base shadow-md pointer-events-auto rounded-sheet p-3 text-sm`,children:[R(`div`,{className:`flex flex-col gap-1 terms p-2 pt-1`,dangerouslySetInnerHTML:{__html:t.value.terms_html??``}}),R(`div`,{className:`flex justify-end gap-2`,children:[R(VS,{onClick:n,children:e.dismiss_terms}),R(VS,{onClick:r,variant:`primary`,children:e.accept_terms})]})]})}function C3({copyText:e,children:t}){let n=ab(),[r,i]=hf(!1);return _f(()=>{if(r){let e=setTimeout(()=>{i(!1)},2e3);return()=>{clearTimeout(e)}}},[r]),R(VS,{onClick:I(()=>{let t=_b(e);t&&(navigator.clipboard.writeText(t),i(!0))},[]),children:r?n.copied:t})}function w3({sawError:e}){let t=ab(),{error:n,lastId:r}=Oy(),i=I(()=>{e.value=!0},[]);return R(`div`,{className:`max-w-[400px] flex flex-col gap-2 bg-base shadow-md pointer-events-auto rounded-sheet p-3 text-sm`,children:[R(`div`,{className:`p-2 pt-1`,children:[R(`h1`,{className:`text-md font-medium pb-1`,children:t.error_occurred}),n.value,r.value&&R(gd,{children:[R(`br`,{}),R(`span`,{className:`text-base-subtle`,children:[t.conversation_id,`: `,r.value]})]})]}),R(`div`,{className:`flex justify-end gap-2`,children:[R(C3,{copyText:r,children:t.copy_id}),R(VS,{variant:`primary`,onClick:i,children:`Close`})]})]})}function T3(){let e=Py();return e.value.disable_banner?null:R(`p`,{className:Bb(`whitespace-nowrap [line-height:var(--el-overlay-padding)] text-[10px] px-3 z-10`,e.value.placement.startsWith(`top`)?`-translate-y-[calc(var(--el-overlay-padding))]`:`translate-y-[calc(var(--el-overlay-padding))]`),children:[R(`span`,{className:`opacity-30`,children:`Powered by`}),` `,R(`a`,{href:e.value.override_link||`https://elevenlabs.io/agents`,className:`underline cursor-pointer pointer-events-auto focus-visible:outline-hidden opacity-30 hover:opacity-50 focus-visible:opacity-100 focus-visible:underline-offset-2`,target:`_blank`,children:`ElevenAgents`})]})}function E3({className:e,onExpand:t,...n}){return R(`button`,{onClick:e=>{e.preventDefault(),e.stopPropagation(),t&&t()},className:Bb(`w-12 h-12 rounded-full flex items-center justify-center transition-all duration-200 pointer-events-auto hover:scale-105 active:scale-95`,e),"aria-label":`Open chat`,...n,children:R(c3,{className:`w-12 h-12`})})}var D3={left:`items-start`,center:`items-center`,right:`items-end`},O3={top:`flex-col-reverse justify-end`,bottom:`flex-col justify-end`},k3={"top-left":`${O3.top} ${D3.left}`,top:`${O3.top} ${D3.center}`,"top-right":`${O3.top} ${D3.right}`,"bottom-left":`${O3.bottom} ${D3.left}`,bottom:`${O3.bottom} ${D3.center}`,"bottom-right":`${O3.bottom} ${D3.right}`},A3={display:`none`},j3=Bf(function(){let e=Py(),t=mm(e.peek().default_expanded),n=mm(!1),r=mm(!1),{error:i,isDisconnected:a}=Oy(),o=xy(),{variant:s}=W4(),c=L(()=>e.value.transcript_enabled||e.value.text_input_enabled),l=wy(),u=L(()=>sS(`overlay !flex transition-[opacity] duration-200 data-hidden:opacity-0`,k3[e.value.placement])),d=L(()=>s.value===`fullscreen`?sS(u.value,k3.bottom):u.value);xm(()=>{i.value&&(c.value?(r.value=!0,t.value=!0):r.value=!1)}),xm(()=>{let e=(e=>{!e.detail||e.detail._convaiEventHandled||(e.detail._convaiEventHandled=!0,e.detail.action===`expand`?t.value=!0:e.detail.action===`collapse`?t.value=!1:e.detail.action===`toggle`&&(t.value=!t.value))}),n=l.value;return document.addEventListener(`elevenlabs-agent:expand`,e),n?.addEventListener(`elevenlabs-agent:expand`,e),()=>{document.removeEventListener(`elevenlabs-agent:expand`,e),n?.removeEventListener(`elevenlabs-agent:expand`,e)}});let f=L(()=>!c.value&&i.value&&!r.value?`error`:!o.termsAccepted.value&&o.termsShown.value?`terms`:`conversation`),p=L(()=>f.value===`error`),m=L(()=>f.value===`terms`),h=L(()=>f.value===`conversation`),g=()=>{n.value=!0},_=()=>{n.value=!1},v=L(()=>h.value&&!n.value),y=L(()=>m.value&&!n.value),b=L(()=>p.value&&!n.value),x=L(()=>!n.value),S=L(()=>e.value.dismissible&&a.value),C=L(()=>e.value.dismissible&&n.value);return R(gd,{children:[R(Ib,{initial:!1,active:v,children:R(ub,{className:u,style:A3,children:e.value.always_expanded?R(f3,{open:!0}):R(gd,{children:[c.value&&R(f3,{open:t}),R(x3,{expandable:c.value,expanded:t,onDismiss:S.value?g:void 0})]})})}),R(Ib,{initial:!1,active:y,children:R(ub,{className:u,style:A3,children:R(S3,{})})}),R(Ib,{initial:!1,active:b,children:R(ub,{className:u,style:A3,children:R(w3,{sawError:r})})}),R(Ib,{initial:!1,active:x,children:R(ub,{className:d,style:A3,children:R(T3,{})})}),R(Ib,{initial:!1,active:C,children:R(ub,{className:u,style:A3,children:R(E3,{onExpand:_})})})]})}),M3=`elevenlabs-agent:user-activity`,N3=`elevenlabs-agent:user-message`,P3=`elevenlabs-agent:contextual-update`,F3=Bf(function({children:e}){let{sendContextualUpdate:t,sendUserActivity:n,sendUserMessage:r}=Oy(),i=wy(),a=Ky();return xm(()=>{function e(){n()}function o(e){L3(e)&&r(e.detail.message)}function s(e){L3(e)&&t(e.detail.message)}let c=i.value;return a.value&&(c?.addEventListener(M3,e),c?.addEventListener(N3,o),c?.addEventListener(P3,s)),()=>{c?.removeEventListener(M3,e),c?.removeEventListener(N3,o),c?.removeEventListener(P3,s)}}),e});function I3(e){return`detail`in e&&!!e.detail}function L3(e){return I3(e)&&typeof e.detail.message==`string`&&!!e.detail.message}function R3(e){return R(Cy,{children:R(Ph,{value:e,children:R(Rh,{children:R(Ny,{children:R(U4,{children:R(Jh,{children:R(by,{children:R(Zh,{children:R(Dy,{children:R(Qy,{children:R(tb,{children:R(ib,{children:R(sb,{children:R(fS,{children:R(lS,{children:[R(Jy,{}),R(F3,{children:R(j3,{})})]})})})})})})})})})})})})})})})}o({name:`widget`,version:Um});function z3(e=`elevenlabs-convai`){Kd(R3,e,[...Gm],{shadow:!0,mode:`open`})}z3()})();
|
|
600
|
+
`,r3=0,i3=new Float32Array([-1,1,-1,-1,1,1,1,-1]),a3=`https://storage.googleapis.com/eleven-public-cdn/images/perlin-noise.png`,o3=class e{static noiseImage;gl;program;startTime;targetSpeed=0;speed=.5;rafId=null;resizeObserver;colorA=[0,0,0];colorB=[0,0,0];offsets=new Float32Array(7).map(()=>Math.random()*Math.PI*2);constructor(t){let n=t.getContext(`webgl2`,{depth:!1,stencil:!1});this.gl=n,this.program=this.setupProgram(t3,n3);let r=n.createTexture();n.bindTexture(n.TEXTURE_2D,r),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([128,128,128,255])),e.noiseImage||(e.noiseImage=new Image,e.noiseImage.crossOrigin=`anonymous`,e.noiseImage.src=a3),e.noiseImage.complete?this.copyNoiseImage():e.noiseImage.addEventListener(`load`,this.copyNoiseImage);let i=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,i),n.bufferData(n.ARRAY_BUFFER,i3,n.STATIC_DRAW),n.vertexAttribPointer(r3,2,n.FLOAT,!1,0,0),n.enableVertexAttribArray(r3),this.updateColors(`#2792DC`,`#9CE6E6`),this.resizeObserver=new ResizeObserver(e=>{let n=e[0],r=n.devicePixelContentBoxSize?n.devicePixelContentBoxSize[0]:n.contentBoxSize[0];t.width=Math.min(512,r.inlineSize),t.height=Math.min(512,r.blockSize),this.updateViewport()});let a=t.parentElement;if(a)try{this.resizeObserver.observe(a,{box:`device-pixel-content-box`})}catch{this.resizeObserver.observe(a)}this.startTime=performance.now(),this.rafId=requestAnimationFrame(this.render)}dispose(){this.rafId!==null&&cancelAnimationFrame(this.rafId),this.resizeObserver?.disconnect(),this.gl=null,this.program=null}updateViewport(){this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height)}updateColors(e,t){this.gl&&(this.colorA=this.updateColor(`uColor1`,e)??this.colorA,this.colorB=this.updateColor(`uColor2`,t)??this.colorB)}updateVolume(e,t){this.targetSpeed=.2+(1-(t-1)**2)*1.8,this.targetSpeed>this.speed&&(this.speed=this.targetSpeed),this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uInputVolume`),e),this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uOutputVolume`),t)}updateColor(e,t){try{let n=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,i=parseInt(t.slice(5,7),16)/255,a=[n**2.2,r**2.2,i**2.2];return this.gl.uniform3fv(this.gl.getUniformLocation(this.program,e),a),a}catch(e){console.error(`[ConversationalAI] Failed to parse ${t} as color:`,e)}}setupProgram(e,t){let n=this.getShader(this.gl.FRAGMENT_SHADER,e),r=this.getShader(this.gl.VERTEX_SHADER,t);if(!n||!r)throw Error(`Failed to compile shaders`);if(this.program=this.gl.createProgram(),this.gl.attachShader(this.program,n),this.gl.attachShader(this.program,r),this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))throw Error(`Failed to link program`);return this.gl.useProgram(this.program),this.gl.uniform1i(this.gl.getUniformLocation(this.program,`uPerlinTexture`),0),this.gl.uniform1fv(this.gl.getUniformLocation(this.program,`uOffsets`),this.offsets),this.gl.uniform3fv(this.gl.getUniformLocation(this.program,`uColor1`),this.colorA),this.gl.uniform3fv(this.gl.getUniformLocation(this.program,`uColor2`),this.colorB),this.program}getShader(e,t){let n=this.gl.createShader(e);return this.gl.shaderSource(n,t),this.gl.compileShader(n),this.gl.getShaderParameter(n,this.gl.COMPILE_STATUS)?n:(this.gl.deleteShader(n),null)}copyNoiseImage=()=>{this.gl&&(this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,e.noiseImage),this.gl.generateMipmap(this.gl.TEXTURE_2D))};toDataURL=()=>this.gl.canvas.toDataURL(`image/png`);render=()=>{if(!this.gl){this.rafId=null;return}let e=(performance.now()-this.startTime)/1e3;this.gl.uniform1f(this.gl.getUniformLocation(this.program,`uTime`),e),this.gl.drawArrays(this.gl.TRIANGLE_STRIP,0,4),this.rafId=requestAnimationFrame(this.render)}},s3={sm:`w-9 h-9`,lg:`w-48 h-48`};function c3({size:e=`sm`,className:t}){let{getInputVolume:n,getOutputVolume:r,isSpeaking:i,isDisconnected:a}=ky(),{config:o}=lb(),s=F(null),c=F(null);xm(()=>{if(a.value){s.current.style.transform=``,c.current.style.transform=``;return}let e;function t(){let a=n(),o=r(),l=i.peek()?1:1-a*.4,u=i.peek()?1+o*.4:1;s.current.style.transform=`scale(${u})`,c.current.style.transform=`scale(${l})`,e=requestAnimationFrame(t)}return t(),()=>{cancelAnimationFrame(e)}});let l=L(()=>({backgroundImage:o.value.type===`image`?`url(${o.value.url})`:o.value.type===`url`?`url(${o.value.custom_url})`:void 0}));return R(`div`,{className:Bb(`relative shrink-0`,s3[e],t),children:[R(`div`,{ref:s,className:`absolute inset-0 rounded-full bg-base-border`}),R(`div`,{ref:c,style:l,className:`absolute inset-0 rounded-full overflow-hidden bg-base bg-cover`,children:o.value.type===`orb`&&R(l3,{color1:o.value.color_1,color2:o.value.color_2})})]})}function l3({color1:e,color2:t}){let{canvasUrl:n}=lb(),[r,i]=hf(null);return _f(()=>{r&&(r.updateColors(e,t),r.render(),n.value=r.toDataURL())},[r,e,t]),R(`canvas`,{className:`w-full h-full`,ref:I(e=>{if(e){let t=new o3(e);return i(t),()=>t.dispose()}else i(null)},[i])})}function u3({showAvatar:e,showTranscript:t,isDisconnected:n,onStartSession:r}){let i=ob(),a=zy(),o=Iy(),s=L(()=>sS(`absolute origin-top-left transition-[transform,left,top,opacity,scale] duration-200 z-10`,`data-hidden:opacity-0`,t.value?`top-4 left-4 scale-[0.1667]`:a.value?`top-[40%] left-1/2 -translate-x-1/2 -translate-y-1/2 scale-100`:`top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 scale-100`)),c=L(()=>!t.value&&n.value&&!o.value),l=L(()=>!t.value&&!n.value);return R(Ib,{active:e,children:R(`div`,{className:s,children:[R(c3,{size:`lg`}),R(Ib,{active:c,children:R(`div`,{className:`absolute bottom-0 p-1 rounded-[calc(var(--el-button-radius)+4px)] bg-base left-1/2 -translate-x-1/2 translate-y-1/2 transition-[opacity,transform] data-hidden:opacity-0 data-hidden:scale-100 scale-150`,children:R(VS,{"aria-label":i.start_call,variant:`primary`,icon:`phone`,onClick:e=>r(e.currentTarget)})})}),R(Ib,{active:l,children:R(`div`,{className:`absolute -bottom-3 left-1/2 -translate-x-1/2 translate-y-full transition-[opacity,transform] data-hidden:opacity-0 data-hidden:scale-75`,children:R(B4,{})})})]})})}var d3={"top-left":`origin-top-left`,top:`origin-top`,"top-right":`origin-top-right`,"bottom-left":`origin-bottom-left`,"bottom-right":`origin-bottom-right`,bottom:`origin-bottom`};function f3({open:e}){let t=Iy(),n=Ly(),r=Fy(),i=r.value.placement,{isDisconnected:a,startSession:o,transcript:s,conversationIndex:c}=ky(),l=Ry(),{currentContent:u,currentConfig:d}=pS(),{variant:f}=W4(),p=L(()=>{let e=t.value||n.value;return mb(s.value,{showAgentStatus:r.value.show_agent_status??!1,transcriptEnabled:e||(r.value.transcript_enabled??!1),firstMessage:e&&t.value&&l.value?l.value:void 0,firstMessageConversationIndex:c.peek()})}),m=L(()=>p.value.length>0||!a.value&&r.value.transcript_enabled),h=mm(!0),g=L(()=>u.value!==`feedback`),_=L(()=>m.value&&!a.value),v=L(()=>u.value!==`feedback`&&(!m.value||a.value)),y=L(()=>!!r.value.conversation_mode_toggle_enabled&&!n.value&&!a.value),b=L(()=>m.value);return R(Ib,{initial:!1,active:e,children:R(`div`,{"data-variant":f.value,className:sS(`sheet`,`flex flex-col overflow-hidden absolute bg-base shadow-lg pointer-events-auto z-2`,`transition-[width,height,max-width,max-height,transform,border-radius,opacity,inset,bottom,top,left,right,margin,padding] duration-200`,`data-hidden:scale-90 data-hidden:opacity-0`,d3[i],i.startsWith(`top`)?r.value.always_expanded?`top-0`:`top-20`:r.value.always_expanded?`bottom-0`:`bottom-20`),children:[R(K4,{showBackButton:d.showHeaderBack,onBackClick:d.onHeaderBack,showStatusLabel:_,showLanguageSelector:v,showConversationModeToggle:y,showExpandButton:b}),R(Ib,{active:u.value===`transcript`,children:R(`div`,{className:`grow flex flex-col min-h-0 relative transition-opacity duration-300 ease-out data-hidden:opacity-0`,children:[R(KX,{transcript:p,scrollPinned:h}),R(Q4,{showTranscript:m.value,scrollPinned:h})]})}),R(Ib,{active:u.value===`feedback`,children:R(`div`,{className:`absolute inset-0 top-[88px] flex flex-col bg-base transition-transform duration-300 ease-out data-hidden:translate-x-full`,children:[R(JX,{}),R(YX,{})]})}),R(u3,{showAvatar:g,showTranscript:m,isDisconnected:a,onStartSession:o})]})})}function p3({onDismiss:e,className:t,...n}){return R(VS,{onClick:t=>{t.preventDefault(),t.stopPropagation(),e&&e()},variant:`secondary`,icon:`minimize`,"aria-label":`Dismiss`,className:t,...n})}function m3({expanded:e,onDismiss:t}){let n=Ly(),r=Fy().value.variant,{isDisconnected:i}=ky(),a=ob(),o=I(()=>{e.value=!e.value},[e]);return R(gd,{children:[r===`full`&&R(LS,{visible:!e.value&&!i.value,className:`p-1`,children:R(c3,{})}),R(LS,{grow:r!==`tiny`,visible:!n.value&&!e.value&&!i.value,className:`p-1`,children:R(q4,{iconOnly:!0,isDisconnected:!1})}),R(LS,{visible:!n.value&&!e.value&&!i.value,className:`p-1`,children:R(J4,{})}),R(LS,{grow:i.value,visible:!0,className:`p-1`,children:R(VS,{className:`w-full`,variant:`primary`,iconClassName:Bb((e.value||!i.value)&&`transition-transform duration-200`,e.value&&`-rotate-180`),icon:e.value?`chevron-up`:i.value?n.value?`chat`:`phone`:`chevron-up`,"aria-label":e.value?a.collapse:i.value?n.value?a.start_chat:a.start_call:a.expand,onClick:!e.value&&!i.value?o:void 0,children:!e.value&&i.value&&r!==`tiny`?n.value?a.start_chat:a.start_call:void 0})}),R(LS,{visible:!!t,className:`p-1`,children:R(p3,{onDismiss:t})})]})}function h3({expanded:e,className:t,onDismiss:n,...r}){let{isDisconnected:i}=ky(),a=ob();return R(`div`,{className:Bb(`transition-[border-radius] flex flex-col p-2`,!e.value&&i.value?`rounded-sheet`:`rounded-compact-sheet`,t),...r,children:[R(LS,{visible:!e.value&&i.value,className:`p-1 !min-w-60`,children:R(`div`,{className:`flex items-center gap-2`,children:[R(c3,{}),R(`div`,{className:`text-sm max-w-64`,children:a.main_label})]})}),R(`div`,{className:`flex items-center`,children:R(m3,{expanded:e,onDismiss:n})})]})}function g3({expanded:e,className:t,onDismiss:n,...r}){return R(`div`,{className:Bb(`rounded-compact-sheet flex items-center p-2`,t),...r,children:[R(LS,{visible:!e.value,className:`p-1`,children:R(c3,{})}),R(m3,{expanded:e,onDismiss:n})]})}function _3({visible:e,className:t,...n}){let r=ob(),{language:i,showPicker:a}=Yh();return a.value?R(LS,{visible:e,className:`p-1`,children:R(R4,{children:R(E4,{className:Bb(`h-9 min-w-max border border-base-border rounded-button focus-ring px-1.5 flex gap-1 items-center transition-colors duration-200 hover:bg-base-hover active:bg-base-active`,t),"aria-label":r.change_language,...n,children:[R(L4,{flagCode:i.value.flagCode}),R(D4,{className:`px-1 text-base-subtle`,asChild:!0,children:R(gS,{size:`xs`,name:`chevron-down`})})]})})}):null}function v3({onDismiss:e}){let t=Fy().value.variant,{isDisconnected:n,status:r}=ky();return R(gd,{children:[R(q4,{isDisconnected:n.value,iconOnly:t===`tiny`,className:`w-full m-1 z-1`,disabled:r.value===`disconnecting`||r.value===`connecting`}),R(_3,{visible:n.value}),R(LS,{visible:!n.value,className:`p-1`,children:R(J4,{})}),R(LS,{visible:!!e,className:`p-1`,children:R(p3,{onDismiss:e})})]})}function y3({className:e,onDismiss:t,...n}){let{isDisconnected:r}=ky(),i=ob();return R(`div`,{className:Bb(`flex flex-col p-2 rounded-sheet`,e),...n,children:[R(`div`,{className:`flex items-center p-1 gap-2 min-w-60`,children:[R(c3,{}),R(`div`,{className:`relative text-sm max-w-64`,children:[R(`span`,{className:Bb(`block transition-[transform,opacity] duration-200`,!r.value&&`opacity-0 scale-90`),children:i.main_label}),R(Ib,{active:!r.value,children:R(B4,{className:`absolute top-1/2 -translate-y-1/2 transition-[transform,opacity] duration-200 data-hidden:opacity-0 data-hidden:scale-90`})})]})]}),R(`div`,{className:`flex items-center`,children:R(v3,{onDismiss:t})})]})}function b3({className:e,onDismiss:t,...n}){return R(`div`,{className:Bb(`rounded-compact-sheet flex items-center p-2`,e),...n,children:[R(c3,{className:`mx-1`}),R(v3,{onDismiss:t})]})}function x3({expandable:e,expanded:t,onDismiss:n}){let r=Fy().value.variant,i=xy(),{isDisconnected:a}=ky(),o=I(async()=>{await i.requestTerms(),t.value=!t.peek()},[t]),s=r===`full`;return e?R(s?h3:g3,{expanded:t,onDismiss:n,className:Bb(`bg-base shadow-md pointer-events-auto overflow-hidden`,(a.value||t.value)&&`cursor-pointer`),onClick:a.value||t.value?o:void 0}):R(s?y3:b3,{onDismiss:n,className:`bg-base shadow-md pointer-events-auto overflow-hidden`})}function S3(){let e=ob(),t=Hy(),{dismissTerms:n,acceptTerms:r}=xy();return R(`div`,{className:`max-w-[400px] flex flex-col gap-2 bg-base shadow-md pointer-events-auto rounded-sheet p-3 text-sm`,children:[R(`div`,{className:`flex flex-col gap-1 terms p-2 pt-1`,dangerouslySetInnerHTML:{__html:t.value.terms_html??``}}),R(`div`,{className:`flex justify-end gap-2`,children:[R(VS,{onClick:n,children:e.dismiss_terms}),R(VS,{onClick:r,variant:`primary`,children:e.accept_terms})]})]})}function C3({copyText:e,children:t}){let n=ob(),[r,i]=hf(!1);return _f(()=>{if(r){let e=setTimeout(()=>{i(!1)},2e3);return()=>{clearTimeout(e)}}},[r]),R(VS,{onClick:I(()=>{let t=_b(e);t&&(navigator.clipboard.writeText(t),i(!0))},[]),children:r?n.copied:t})}function w3({sawError:e}){let t=ob(),{error:n,lastId:r}=ky(),i=I(()=>{e.value=!0},[]);return R(`div`,{className:`max-w-[400px] flex flex-col gap-2 bg-base shadow-md pointer-events-auto rounded-sheet p-3 text-sm`,children:[R(`div`,{className:`p-2 pt-1`,children:[R(`h1`,{className:`text-md font-medium pb-1`,children:t.error_occurred}),n.value,r.value&&R(gd,{children:[R(`br`,{}),R(`span`,{className:`text-base-subtle`,children:[t.conversation_id,`: `,r.value]})]})]}),R(`div`,{className:`flex justify-end gap-2`,children:[R(C3,{copyText:r,children:t.copy_id}),R(VS,{variant:`primary`,onClick:i,children:`Close`})]})]})}function T3(){let e=Fy();return e.value.disable_banner?null:R(`p`,{className:Bb(`whitespace-nowrap [line-height:var(--el-overlay-padding)] text-[10px] px-3 z-10`,e.value.placement.startsWith(`top`)?`-translate-y-[calc(var(--el-overlay-padding))]`:`translate-y-[calc(var(--el-overlay-padding))]`),children:[R(`span`,{className:`opacity-30`,children:`Powered by`}),` `,R(`a`,{href:e.value.override_link||`https://elevenlabs.io/agents`,className:`underline cursor-pointer pointer-events-auto focus-visible:outline-hidden opacity-30 hover:opacity-50 focus-visible:opacity-100 focus-visible:underline-offset-2`,target:`_blank`,children:`ElevenAgents`})]})}function E3({className:e,onExpand:t,...n}){return R(`button`,{onClick:e=>{e.preventDefault(),e.stopPropagation(),t&&t()},className:Bb(`w-12 h-12 rounded-full flex items-center justify-center transition-all duration-200 pointer-events-auto hover:scale-105 active:scale-95`,e),"aria-label":`Open chat`,...n,children:R(c3,{className:`w-12 h-12`})})}var D3={left:`items-start`,center:`items-center`,right:`items-end`},O3={top:`flex-col-reverse justify-end`,bottom:`flex-col justify-end`},k3={"top-left":`${O3.top} ${D3.left}`,top:`${O3.top} ${D3.center}`,"top-right":`${O3.top} ${D3.right}`,"bottom-left":`${O3.bottom} ${D3.left}`,bottom:`${O3.bottom} ${D3.center}`,"bottom-right":`${O3.bottom} ${D3.right}`},A3={display:`none`},j3=Bf(function(){let e=Fy(),t=mm(e.peek().default_expanded),n=mm(!1),r=mm(!1),{error:i,isDisconnected:a}=ky(),o=xy(),{variant:s}=W4(),c=L(()=>e.value.transcript_enabled||e.value.text_input_enabled),l=wy(),u=L(()=>sS(`overlay !flex transition-[opacity] duration-200 data-hidden:opacity-0`,k3[e.value.placement])),d=L(()=>s.value===`fullscreen`?sS(u.value,k3.bottom):u.value);xm(()=>{i.value&&(c.value?(r.value=!0,t.value=!0):r.value=!1)}),xm(()=>{let e=(e=>{!e.detail||e.detail._convaiEventHandled||(e.detail._convaiEventHandled=!0,e.detail.action===`expand`?t.value=!0:e.detail.action===`collapse`?t.value=!1:e.detail.action===`toggle`&&(t.value=!t.value))}),n=l.value;return document.addEventListener(`elevenlabs-agent:expand`,e),n?.addEventListener(`elevenlabs-agent:expand`,e),()=>{document.removeEventListener(`elevenlabs-agent:expand`,e),n?.removeEventListener(`elevenlabs-agent:expand`,e)}});let f=L(()=>!c.value&&i.value&&!r.value?`error`:!o.termsAccepted.value&&o.termsShown.value?`terms`:`conversation`),p=L(()=>f.value===`error`),m=L(()=>f.value===`terms`),h=L(()=>f.value===`conversation`),g=()=>{n.value=!0},_=()=>{n.value=!1},v=L(()=>h.value&&!n.value),y=L(()=>m.value&&!n.value),b=L(()=>p.value&&!n.value),x=L(()=>!n.value),S=L(()=>e.value.dismissible&&a.value),C=L(()=>e.value.dismissible&&n.value);return R(gd,{children:[R(Ib,{initial:!1,active:v,children:R(db,{className:u,style:A3,children:e.value.always_expanded?R(f3,{open:!0}):R(gd,{children:[c.value&&R(f3,{open:t}),R(x3,{expandable:c.value,expanded:t,onDismiss:S.value?g:void 0})]})})}),R(Ib,{initial:!1,active:y,children:R(db,{className:u,style:A3,children:R(S3,{})})}),R(Ib,{initial:!1,active:b,children:R(db,{className:u,style:A3,children:R(w3,{sawError:r})})}),R(Ib,{initial:!1,active:x,children:R(db,{className:d,style:A3,children:R(T3,{})})}),R(Ib,{initial:!1,active:C,children:R(db,{className:u,style:A3,children:R(E3,{onExpand:_})})})]})}),M3=`elevenlabs-agent:user-activity`,N3=`elevenlabs-agent:user-message`,P3=`elevenlabs-agent:contextual-update`,F3=Bf(function({children:e}){let{sendContextualUpdate:t,sendUserActivity:n,sendUserMessage:r}=ky(),i=wy(),a=qy();return xm(()=>{function e(){n()}function o(e){L3(e)&&r(e.detail.message)}function s(e){L3(e)&&t(e.detail.message)}let c=i.value;return a.value&&(c?.addEventListener(M3,e),c?.addEventListener(N3,o),c?.addEventListener(P3,s)),()=>{c?.removeEventListener(M3,e),c?.removeEventListener(N3,o),c?.removeEventListener(P3,s)}}),e});function I3(e){return`detail`in e&&!!e.detail}function L3(e){return I3(e)&&typeof e.detail.message==`string`&&!!e.detail.message}function R3(e){return R(Cy,{children:R(Ph,{value:e,children:R(Rh,{children:R(Py,{children:R(U4,{children:R(Jh,{children:R(by,{children:R(Zh,{children:R(Oy,{children:R($y,{children:R(nb,{children:R(ab,{children:R(cb,{children:R(fS,{children:R(lS,{children:[R(Yy,{}),R(F3,{children:R(j3,{})})]})})})})})})})})})})})})})})})}o({name:`widget`,version:Um});function z3(e=`elevenlabs-convai`){Kd(R3,e,[...Gm],{shadow:!0,mode:`open`})}z3()})();
|