!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(t="undefined"!=typeof globalThis?globalThis:t||self).Danmaku=i()}(this,(function(){"use strict";var t=function(){for(var t=["oTransform","msTransform","mozTransform","webkitTransform","transform"],i=document.createElement("div").style,e=0;eh)return!0;var r=i._.duration+t.time-e,o=i._.width+s.width,a=i.media?s.time:s._utc,d=o*(e-a)*n/i._.duration,m=i._.width-d;return r>i._.duration*m/(i._.width+s.width)}for(var h=this._.space[t.mode],r=0,o=0,a=1;a=m){o=a;break}s(d,t)&&(r=a)}var u=h[r].range,l={range:u+t.height,time:this.media?t.time:t._utc,width:t.width,height:t.height};return h.splice(r+1,o-r-1,l),"bottom"===t.mode?this._.height-t.height-u%this._.height:u%(this._.height-t.height)}var s=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||function(t){return setTimeout(t,50/3)},h=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||clearTimeout;function r(t,i,e){for(var n=0,s=0,h=t.length;s=t[n=s+h>>1][i]?s=n:h=n;return t[s]&&e=0;m--)a=this._.runningList[m],r-(d=this.media?a.time:a._utc)>this._.duration&&(s(this._.stage,a),this._.runningList.splice(m,1));for(var u=[];this._.position=r));)r-d>this._.duration||(this.media&&(a._utc=h-(this.media.currentTime-a.time)),u.push(a)),++this._.position;for(i(this._.stage,u),m=0;m>1),e(this._.stage,a)}}}(this._.engine.framing.bind(this),this._.engine.setup.bind(this),this._.engine.render.bind(this),this._.engine.remove.bind(this));return this._.requestID=s((function t(){h.call(e),e._.requestID=s(t)})),this}function u(){return!this._.visible||this._.paused||(this._.paused=!0,h(this._.requestID),this._.requestID=0),this}function l(){if(!this.media)return this;this.clear(),d(this._.space);var t=r(this.comments,"time",this.media.currentTime);return this._.position=Math.max(0,t-1),this}function c(t){t.play=m.bind(this),t.pause=u.bind(this),t.seeking=l.bind(this),this.media.addEventListener("play",t.play),this.media.addEventListener("pause",t.pause),this.media.addEventListener("playing",t.play),this.media.addEventListener("waiting",t.pause),this.media.addEventListener("seeking",t.seeking)}function f(t){this.media.removeEventListener("play",t.play),this.media.removeEventListener("pause",t.pause),this.media.removeEventListener("playing",t.play),this.media.removeEventListener("waiting",t.pause),this.media.removeEventListener("seeking",t.seeking),t.play=null,t.pause=null,t.seeking=null}function p(t){this._={},this.container=t.container||document.createElement("div"),this.media=t.media,this._.visible=!0,this.engine="dom",this._.engine=e,this._.requestID=0,this._.speed=Math.max(0,t.speed)||144,this._.duration=4,this.comments=t.comments||[],this.comments.sort((function(t,i){return t.time-i.time}));for(var i=0;i