<!-- SS · part 145 -->
kSource.seconds=t}getSecondsAtTime(t){return this._tickSource.getSecondsAtTime(t)}setTicksAtTime(t,e){return this._tickSource.setTicksAtTime(t,e),this}getTimeOfTick(t,e=this.now()){return this._tickSource.getTimeOfTick(t,e)}getTicksAtTime(t){return this._tickSource.getTicksAtTime(t)}nextTickTime(t,e){const s=this.toSeconds(e),n=this.getTicksAtTime(s);return this._tickSource.getTimeOfTick(n+t,s)}_loop(){const t=this._lastUpdate,e=this.now();this._lastUpdate=e,this.log("loop",t,e),t!==e&&(this._state.forEachBetween(t,e,(t=>{switch(t.state){case"started":const e=this._tickSource.getTicksAtTime(t.time);this.emit("start",t.time,e);break;case"stopped":0!==t.time&&this.emit("stop",t.time);break;case"paused":this.emit("pause",t.time)}})),this._tickSource.forEachTickBetween(t,e,((t,e)=>{this.callback(t,e)})))}getStateAtTime(t){const e=this.toSeconds(t);return this._state.getValueAtTime(e)}dispose(){return super.dispose(),this.context.off("tick",this._boundLoop),this._tickSource.dispose(),this._state.dispose(),this}}Ai.mixin(vo);class yo extends io{constructor(){const t=ui(yo.getDefaults(),arguments,["delayTime","maxDelay"]);super(t),this.name="Delay";const e=this.toSeconds(t.maxDelay);this._maxDelay=Math.max(e,this.toSeconds(t.delayTime)),this._delayNode=this.input=this.output=this.context.createDelay(e),this.delayTime=new no({context:this.context,param:this._delayNode.delayTime,units:"time",value:t.delayTime,minValue:0,maxValue:this.maxDelay}),Di(this,"delayTime")}static getDefaults(){return Object.assign(io.getDefaults(),{delayTime:0,maxDelay:1})}get maxDelay(){return this._maxDelay}dispose(){return super.dispose(),this._delayNode.disconnect(),this.delayTime.dispose(),this}}class xo extends io{constructor(){const t=ui(xo.getDefaults(),arguments,["volume"]);super(t),this.name="Volume",this.input=this.output=new ho({context:this.context,gain:t.volume,units:"decibels"}),this.volume=this.output.gain,Di(this,"volume"),this._unmutedVolume=t.volume,this.mute=t.mute}static getDefaults(){return Object.assign(io.getDefaults(),{mute:!1,volume:0})}get mute(){return this.volume.value===-1/0}set mute(t){!this.mute&&t?(this._unmutedVolume=this.volume.value,this.volume.value=-1/0):this.mute&&!t&&(this.volume.value=this._unmutedVolume)}dispose(){return super.dispose(),this.input.dispose(),this.volume.dispose(),this}}class wo extends io{constructor(){const t=ui(wo.getDefaults(),arguments);super(t),this.name="Destination",this.input=new xo({context:this.context}),this.output=new ho({context:this.context}),this.volume=this.input.volume,oo(this.input,this.output,this.context.rawContext.destination),this.mute=t.mute,this._internalChannels=[this.input,this.context.rawContext.destination,this.output]}static getDefaults(){return Object.assign(io.getDefaults(),{mute:!1,volume:0})}get mute(){return this.input.mute}set mute(t){this.input.mute=t}chain(...t){return this.input.disconnect(),t.unshift(this.input),t.push(this.output),oo(...t),this}get maxChannelCount(){return this.context.rawContext.destination.maxChannelCount}dispose(){return super.dispose(),this.volume.dispose(),this}}Ti((t=>{t.destination=new wo({context:t})})),ki((t=>{t.destination.dispose()}));class bo extends io{constructor(){super(...arguments),this.name="Listener",this.positionX=new no({context:this.context,param:this.context.rawContext.listener.positionX}),this.positionY=new no({context:this.context,param:this.context.rawContext.listener.positionY}),this.positionZ=new no({context:this.context,param:this.context.rawContext.listener.positionZ}),this.forwardX=new no({context:this.context,param:this.context.rawContext.listener.forwardX}),this.forwardY=new no({context:this.context,param:this.context.rawContext.listener.forwardY}),this.forwardZ=new no({context:this.context,param:this.context.rawContext.listener.forwardZ}),this.upX=new no({context:this.context,param:this.context.rawContext.listener.upX}),this.upY=new no({context:this.context,param:this.context.rawContext.listener.upY}),this.upZ=new no({context:this.context,param:this.context.rawContext.listener.upZ})}static getDefaults(){return Object.assign(io.getDefaults(),{positionX:0,positionY:0,positionZ:0,forwardX:0,forwardY:0,forwardZ:-1,upX:0,upY:1,upZ:0})}dispose(){return super.dispose(),this.positionX.dispose(),this.positionY.dispose(),this.positionZ.dispose(),this.forwardX.dispose(),this.forwardY.dispose(),this.forwardZ.dispose(),this.upX.dispose(),this.upY.dispose(),this.upZ.dispose(),this}}function To(t,e){return ni(this,arguments,void 0,(function*(t,e,s=2,n=Vi().sampleRate){const i=Vi(),o=new qi(s,e,n);Ni(o),yield t(o);const r=o.render();Ni(i);const a=yield r;return new Ri(a)}))}Ti((t=>{t.listener=new bo({context:t})})),ki((t=>{t.listener.dispose()}));class So extends fi{constructor(){super(),this.name="ToneAudioBuffers",this._buffers=new Map,this._loadingCount=0;const t=ui(So.getDefaults(),arguments,["urls","onload","baseUrl"],"urls");this.baseUrl=t.baseUrl,Object.keys(t.urls).forEach((e=>