5290cb53
Zhang Zhuo
更新第一版本 -张卓
|
7
8
|
function s(){return i.apply(null,arguments)}function a(A){return A instanceof Array||"[object Array]"===Object.prototype.toString.call(A)}function o(A){return null!=A&&"[object Object]"===Object.prototype.toString.call(A)}function l(A,e){return Object.prototype.hasOwnProperty.call(A,e)}function u(A){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(A).length;var e;for(e in A)if(l(A,e))return!1;return!0}function d(A){return void 0===A}function h(A){return"number"==typeof A||"[object Number]"===Object.prototype.toString.call(A)}function c(A){return A instanceof Date||"[object Date]"===Object.prototype.toString.call(A)}function f(A,e){var t,i=[];for(t=0;t<A.length;++t)i.push(e(A[t],t));return i}function m(A,e){for(var t in e)l(e,t)&&(A[t]=e[t]);return l(e,"toString")&&(A.toString=e.toString),l(e,"valueOf")&&(A.valueOf=e.valueOf),A}function g(A,e,t,i){return Oe(A,e,t,i,!0).utc()}function p(A){return null==A._pf&&(A._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}),A._pf}function v(A){if(null==A._isValid){var e=p(A),t=n.call(e.parsedDateParts,(function(A){return null!=A})),i=!isNaN(A._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidEra&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&t);if(A._strict&&(i=i&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(A))return i;A._isValid=i}return A._isValid}function _(A){var e=g(NaN);return null!=A?m(p(e),A):p(e).userInvalidated=!0,e}n=Array.prototype.some?Array.prototype.some:function(A){var e,t=Object(this),i=t.length>>>0;for(e=0;e<i;e++)if(e in t&&A.call(this,t[e],e,t))return!0;return!1};var y=s.momentProperties=[],b=!1;function E(A,e){var t,i,n;if(d(e._isAMomentObject)||(A._isAMomentObject=e._isAMomentObject),d(e._i)||(A._i=e._i),d(e._f)||(A._f=e._f),d(e._l)||(A._l=e._l),d(e._strict)||(A._strict=e._strict),d(e._tzm)||(A._tzm=e._tzm),d(e._isUTC)||(A._isUTC=e._isUTC),d(e._offset)||(A._offset=e._offset),d(e._pf)||(A._pf=p(e)),d(e._locale)||(A._locale=e._locale),y.length>0)for(t=0;t<y.length;t++)d(n=e[i=y[t]])||(A[i]=n);return A}function w(A){E(this,A),this._d=new Date(null!=A._d?A._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===b&&(b=!0,s.updateOffset(this),b=!1)}function R(A){return A instanceof w||null!=A&&null!=A._isAMomentObject}function S(A){!1===s.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+A)}function D(A,e){var t=!0;return m((function(){if(null!=s.deprecationHandler&&s.deprecationHandler(null,A),t){var i,n,a,o=[];for(n=0;n<arguments.length;n++){if(i="","object"===r(arguments[n])){for(a in i+="\n["+n+"] ",arguments[0])l(arguments[0],a)&&(i+=a+": "+arguments[0][a]+", ");i=i.slice(0,-2)}else i=arguments[n];o.push(i)}S(A+"\nArguments: "+Array.prototype.slice.call(o).join("")+"\n"+(new Error).stack),t=!1}return e.apply(this,arguments)}),e)}var O,P={};function L(A,e){null!=s.deprecationHandler&&s.deprecationHandler(A,e),P[A]||(S(e),P[A]=!0)}function x(A){return"undefined"!=typeof Function&&A instanceof Function||"[object Function]"===Object.prototype.toString.call(A)}function C(A,e){var t,i=m({},A);for(t in e)l(e,t)&&(o(A[t])&&o(e[t])?(i[t]={},m(i[t],A[t]),m(i[t],e[t])):null!=e[t]?i[t]=e[t]:delete i[t]);for(t in A)l(A,t)&&!l(e,t)&&o(A[t])&&(i[t]=m({},i[t]));return i}function T(A){null!=A&&this.set(A)}s.suppressDeprecationWarnings=!1,s.deprecationHandler=null,O=Object.keys?Object.keys:function(A){var e,t=[];for(e in A)l(A,e)&&t.push(e);return t};function B(A,e,t){var i=""+Math.abs(A),n=e-i.length;return(A>=0?t?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+i}var M=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,I=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,k={},z={};function j(A,e,t,i){var n=i;"string"==typeof i&&(n=function(){return this[i]()}),A&&(z[A]=n),e&&(z[e[0]]=function(){return B(n.apply(this,arguments),e[1],e[2])}),t&&(z[t]=function(){return this.localeData().ordinal(n.apply(this,arguments),A)})}function H(A,e){return A.isValid()?(e=N(e,A.localeData()),k[e]=k[e]||function(A){var e,t,i,n=A.match(M);for(e=0,t=n.length;e<t;e++)z[n[e]]?n[e]=z[n[e]]:n[e]=(i=n[e]).match(/\[[\s\S]/)?i.replace(/^\[|\]$/g,""):i.replace(/\\/g,"");return function(e){var i,r="";for(i=0;i<t;i++)r+=x(n[i])?n[i].call(e,A):n[i];return r}}(e),k[e](A)):A.localeData().invalidDate()}function N(A,e){var t=5;function i(A){return e.longDateFormat(A)||A}for(I.lastIndex=0;t>=0&&I.test(A);)A=A.replace(I,i),I.lastIndex=0,t-=1;return A}var Q={};function U(A,e){var t=A.toLowerCase();Q[t]=Q[t+"s"]=Q[e]=A}function F(A){return"string"==typeof A?Q[A]||Q[A.toLowerCase()]:void 0}function G(A){var e,t,i={};for(t in A)l(A,t)&&(e=F(t))&&(i[e]=A[t]);return i}var X={};function V(A,e){X[A]=e}function Y(A){return A%4==0&&A%100!=0||A%400==0}function q(A){return A<0?Math.ceil(A)||0:Math.floor(A)}function W(A){var e=+A,t=0;return 0!==e&&isFinite(e)&&(t=q(e)),t}function Z(A,e){return function(t){return null!=t?(K(this,A,t),s.updateOffset(this,e),this):J(this,A)}}function J(A,e){return A.isValid()?A._d["get"+(A._isUTC?"UTC":"")+e]():NaN}function K(A,e,t){A.isValid()&&!isNaN(t)&&("FullYear"===e&&Y(A.year())&&1===A.month()&&29===A.date()?(t=W(t),A._d["set"+(A._isUTC?"UTC":"")+e](t,A.month(),RA(t,A.month()))):A._d["set"+(A._isUTC?"UTC":"")+e](t))}var $,AA=/\d/,eA=/\d\d/,tA=/\d{3}/,iA=/\d{4}/,nA=/[+-]?\d{6}/,rA=/\d\d?/,sA=/\d\d\d\d?/,aA=/\d\d\d\d\d\d?/,oA=/\d{1,3}/,lA=/\d{1,4}/,uA=/[+-]?\d{1,6}/,dA=/\d+/,hA=/[+-]?\d+/,cA=/Z|[+-]\d\d:?\d\d/gi,fA=/Z|[+-]\d\d(?::?\d\d)?/gi,mA=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;function gA(A,e,t){$[A]=x(e)?e:function(A,i){return A&&t?t:e}}function pA(A,e){return l($,A)?$[A](e._strict,e._locale):new RegExp(vA(A.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(A,e,t,i,n){return e||t||i||n}))))}function vA(A){return A.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}$={};var _A={};function yA(A,e){var t,i=e;for("string"==typeof A&&(A=[A]),h(e)&&(i=function(A,t){t[e]=W(A)}),t=0;t<A.length;t++)_A[A[t]]=i}function bA(A,e){yA(A,(function(A,t,i,n){i._w=i._w||{},e(A,i._w,i,n)}))}function EA(A,e,t){null!=e&&l(_A,A)&&_A[A](e,t._a,t,A)}var wA;function RA(A,e){if(isNaN(A)||isNaN(e))return NaN;var t,i=(e%(t=12)+t)%t;return A+=(e-i)/12,1===i?Y(A)?29:28:31-i%7%2}wA=Array.prototype.indexOf?Array.prototype.indexOf:function(A){var e;for(e=0;e<this.length;++e)if(this[e]===A)return e;return-1},j("M",["MM",2],"Mo",(function(){return this.month()+1})),j("MMM",0,0,(function(A){return this.localeData().monthsShort(this,A)})),j("MMMM",0,0,(function(A){return this.localeData().months(this,A)})),U("month","M"),V("month",8),gA("M",rA),gA("MM",rA,eA),gA("MMM",(function(A,e){return e.monthsShortRegex(A)})),gA("MMMM",(function(A,e){return e.monthsRegex(A)})),yA(["M","MM"],(function(A,e){e[1]=W(A)-1})),yA(["MMM","MMMM"],(function(A,e,t,i){var n=t._locale.monthsParse(A,i,t._strict);null!=n?e[1]=n:p(t).invalidMonth=A}));var SA="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),DA="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),OA=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,PA=mA,LA=mA;function xA(A,e,t){var i,n,r,s=A.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],i=0;i<12;++i)r=g([2e3,i]),this._shortMonthsParse[i]=this.monthsShort(r,"").toLocaleLowerCase(),this._longMonthsParse[i]=this.months(r,"").toLocaleLowerCase();return t?"MMM"===e?-1!==(n=wA.call(this._shortMonthsParse,s))?n:null:-1!==(n=wA.call(this._longMonthsParse,s))?n:null:"MMM"===e?-1!==(n=wA.call(this._shortMonthsParse,s))||-1!==(n=wA.call(this._longMonthsParse,s))?n:null:-1!==(n=wA.call(this._longMonthsParse,s))||-1!==(n=wA.call(this._shortMonthsParse,s))?n:null}function CA(A,e){var t;if(!A.isValid())return A;if("string"==typeof e)if(/^\d+$/.test(e))e=W(e);else if(!h(e=A.localeData().monthsParse(e)))return A;return t=Math.min(A.date(),RA(A.year(),e)),A._d["set"+(A._isUTC?"UTC":"")+"Month"](e,t),A}function TA(A){return null!=A?(CA(this,A),s.updateOffset(this,!0),this):J(this,"Month")}function BA(){function A(A,e){return e.length-A.length}var e,t,i=[],n=[],r=[];for(e=0;e<12;e++)t=g([2e3,e]),i.push(this.monthsShort(t,"")),n.push(this.months(t,"")),r.push(this.months(t,"")),r.push(this.monthsShort(t,""));for(i.sort(A),n.sort(A),r.sort(A),e=0;e<12;e++)i[e]=vA(i[e]),n[e]=vA(n[e]);for(e=0;e<24;e++)r[e]=vA(r[e]);this._monthsRegex=new RegExp("^("+r.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+i.join("|")+")","i")}function MA(A){return Y(A)?366:365}j("Y",0,0,(function(){var A=this.year();return A<=9999?B(A,4):"+"+A})),j(0,["YY",2],0,(function(){return this.year()%100})),j(0,["YYYY",4],0,"year"),j(0,["YYYYY",5],0,"year"),j(0,["YYYYYY",6,!0],0,"year"),U("year","y"),V("year",1),gA("Y",hA),gA("YY",rA,eA),gA("YYYY",lA,iA),gA("YYYYY",uA,nA),gA("YYYYYY",uA,nA),yA(["YYYYY","YYYYYY"],0),yA("YYYY",(function(A,e){e[0]=2===A.length?s.parseTwoDigitYear(A):W(A)})),yA("YY",(function(A,e){e[0]=s.parseTwoDigitYear(A)})),yA("Y",(function(A,e){e[0]=parseInt(A,10)})),s.parseTwoDigitYear=function(A){return W(A)+(W(A)>68?1900:2e3)};var IA=Z("FullYear",!0);function kA(A,e,t,i,n,r,s){var a;return A<100&&A>=0?(a=new Date(A+400,e,t,i,n,r,s),isFinite(a.getFullYear())&&a.setFullYear(A)):a=new Date(A,e,t,i,n,r,s),a}function zA(A){var e,t;return A<100&&A>=0?((t=Array.prototype.slice.call(arguments))[0]=A+400,e=new Date(Date.UTC.apply(null,t)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(A)):e=new Date(Date.UTC.apply(null,arguments)),e}function jA(A,e,t){var i=7+e-t;return-((7+zA(A,0,i).getUTCDay()-e)%7)+i-1}function HA(A,e,t,i,n){var r,s,a=1+7*(e-1)+(7+t-i)%7+jA(A,i,n);return a<=0?s=MA(r=A-1)+a:a>MA(A)?(r=A+1,s=a-MA(A)):(r=A,s=a),{year:r,dayOfYear:s}}function NA(A,e,t){var i,n,r=jA(A.year(),e,t),s=Math.floor((A.dayOfYear()-r-1)/7)+1;return s<1?i=s+QA(n=A.year()-1,e,t):s>QA(A.year(),e,t)?(i=s-QA(A.year(),e,t),n=A.year()+1):(n=A.year(),i=s),{week:i,year:n}}function QA(A,e,t){var i=jA(A,e,t),n=jA(A+1,e,t);return(MA(A)-i+n)/7}j("w",["ww",2],"wo","week"),j("W",["WW",2],"Wo","isoWeek"),U("week","w"),U("isoWeek","W"),V("week",5),V("isoWeek",5),gA("w",rA),gA("ww",rA,eA),gA("W",rA),gA("WW",rA,eA),bA(["w","ww","W","WW"],(function(A,e,t,i){e[i.substr(0,1)]=W(A)}));function UA(A,e){return A.slice(e,7).concat(A.slice(0,e))}j("d",0,"do","day"),j("dd",0,0,(function(A){return this.localeData().weekdaysMin(this,A)})),j("ddd",0,0,(function(A){return this.localeData().weekdaysShort(this,A)})),j("dddd",0,0,(function(A){return this.localeData().weekdays(this,A)})),j("e",0,0,"weekday"),j("E",0,0,"isoWeekday"),U("day","d"),U("weekday","e"),U("isoWeekday","E"),V("day",11),V("weekday",11),V("isoWeekday",11),gA("d",rA),gA("e",rA),gA("E",rA),gA("dd",(function(A,e){return e.weekdaysMinRegex(A)})),gA("ddd",(function(A,e){return e.weekdaysShortRegex(A)})),gA("dddd",(function(A,e){return e.weekdaysRegex(A)})),bA(["dd","ddd","dddd"],(function(A,e,t,i){var n=t._locale.weekdaysParse(A,i,t._strict);null!=n?e.d=n:p(t).invalidWeekday=A})),bA(["d","e","E"],(function(A,e,t,i){e[i]=W(A)}));var FA="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),GA="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),XA="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),VA=mA,YA=mA,qA=mA;function WA(A,e,t){var i,n,r,s=A.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)r=g([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(r,"").toLocaleLowerCase();return t?"dddd"===e?-1!==(n=wA.call(this._weekdaysParse,s))?n:null:"ddd"===e?-1!==(n=wA.call(this._shortWeekdaysParse,s))?n:null:-1!==(n=wA.call(this._minWeekdaysParse,s))?n:null:"dddd"===e?-1!==(n=wA.call(this._weekdaysParse,s))||-1!==(n=wA.call(this._shortWeekdaysParse,s))||-1!==(n=wA.call(this._minWeekdaysParse,s))?n:null:"ddd"===e?-1!==(n=wA.call(this._shortWeekdaysParse,s))||-1!==(n=wA.call(this._weekdaysParse,s))||-1!==(n=wA.call(this._minWeekdaysParse,s))?n:null:-1!==(n=wA.call(this._minWeekdaysParse,s))||-1!==(n=wA.call(this._weekdaysParse,s))||-1!==(n=wA.call(this._shortWeekdaysParse,s))?n:null}function ZA(){function A(A,e){return e.length-A.length}var e,t,i,n,r,s=[],a=[],o=[],l=[];for(e=0;e<7;e++)t=g([2e3,1]).day(e),i=vA(this.weekdaysMin(t,"")),n=vA(this.weekdaysShort(t,"")),r=vA(this.weekdays(t,"")),s.push(i),a.push(n),o.push(r),l.push(i),l.push(n),l.push(r);s.sort(A),a.sort(A),o.sort(A),l.sort(A),this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+s.join("|")+")","i")}function JA(){return this.hours()%12||12}function KA(A,e){j(A,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function $A(A,e){return e._meridiemParse}j("H",["HH",2],0,"hour"),j("h",["hh",2],0,JA),j("k",["kk",2],0,(function(){return this.hours()||24})),j("hmm",0,0,(function(){return""+JA.apply(this)+B(this.minutes(),2)})),j("hmmss",0,0,(function(){return""+JA.apply(this)+B(this.minutes(),2)+B(this.seconds(),2)})),j("Hmm",0,0,(function(){return""+this.hours()+B(this.minutes(),2)})),j("Hmmss",0,0,(function(){return""+this.hours()+B(this.minutes(),2)+B(this.seconds(),2)})),KA("a",!0),KA("A",!1),U("hour","h"),V("hour",13),gA("a",$A),gA("A",$A),gA("H",rA),gA("h",rA),gA("k",rA),gA("HH",rA,eA),gA("hh",rA,eA),gA("kk",rA,eA),gA("hmm",sA),gA("hmmss",aA),gA("Hmm",sA),gA("Hmmss",aA),yA(["H","HH"],3),yA(["k","kk"],(function(A,e,t){var i=W(A);e[3]=24===i?0:i})),yA(["a","A"],(function(A,e,t){t._isPm=t._locale.isPM(A),t._meridiem=A})),yA(["h","hh"],(function(A,e,t){e[3]=W(A),p(t).bigHour=!0})),yA("hmm",(function(A,e,t){var i=A.length-2;e[3]=W(A.substr(0,i)),e[4]=W(A.substr(i)),p(t).bigHour=!0})),yA("hmmss",(function(A,e,t){var i=A.length-4,n=A.length-2;e[3]=W(A.substr(0,i)),e[4]=W(A.substr(i,2)),e[5]=W(A.substr(n)),p(t).bigHour=!0})),yA("Hmm",(function(A,e,t){var i=A.length-2;e[3]=W(A.substr(0,i)),e[4]=W(A.substr(i))})),yA("Hmmss",(function(A,e,t){var i=A.length-4,n=A.length-2;e[3]=W(A.substr(0,i)),e[4]=W(A.substr(i,2)),e[5]=W(A.substr(n))}));var Ae=Z("Hours",!0);var ee,te={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:SA,monthsShort:DA,week:{dow:0,doy:6},weekdays:FA,weekdaysMin:XA,weekdaysShort:GA,meridiemParse:/[ap]\.?m?\.?/i},ie={},ne={};function re(A,e){var t,i=Math.min(A.length,e.length);for(t=0;t<i;t+=1)if(A[t]!==e[t])return t;return i}function se(A){return A?A.toLowerCase().replace("_","-"):A}function ae(e){var i=null;if(void 0===ie[e]&&void 0!==A&&A&&A.exports)try{i=ee._abbr,void 0,t(19)("./"+e),oe(i)}catch(A){ie[e]=null}return ie[e]}function oe(A,e){var t;return A&&((t=d(e)?ue(A):le(A,e))?ee=t:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+A+" not found. Did you forget to load it?")),ee._abbr}function le(A,e){if(null!==e){var t,i=te;if(e.abbr=A,null!=ie[A])L("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=ie[A]._config;else if(null!=e.parentLocale)if(null!=ie[e.parentLocale])i=ie[e.parentLocale]._config;else{if(null==(t=ae(e.parentLocale)))return ne[e.parentLocale]||(ne[e.parentLocale]=[]),ne[e.parentLocale].push({name:A,config:e}),null;i=t._config}return ie[A]=new T(C(i,e)),ne[A]&&ne[A].forEach((function(A){le(A.name,A.config)})),oe(A),ie[A]}return delete ie[A],null}function ue(A){var e;if(A&&A._locale&&A._locale._abbr&&(A=A._locale._abbr),!A)return ee;if(!a(A)){if(e=ae(A))return e;A=[A]}return function(A){for(var e,t,i,n,r=0;r<A.length;){for(e=(n=se(A[r]).split("-")).length,t=(t=se(A[r+1]))?t.split("-"):null;e>0;){if(i=ae(n.slice(0,e).join("-")))return i;if(t&&t.length>=e&&re(n,t)>=e-1)break;e--}r++}return ee}(A)}function de(A){var e,t=A._a;return t&&-2===p(A).overflow&&(e=t[1]<0||t[1]>11?1:t[2]<1||t[2]>RA(t[0],t[1])?2:t[3]<0||t[3]>24||24===t[3]&&(0!==t[4]||0!==t[5]||0!==t[6])?3:t[4]<0||t[4]>59?4:t[5]<0||t[5]>59?5:t[6]<0||t[6]>999?6:-1,p(A)._overflowDayOfYear&&(e<0||e>2)&&(e=2),p(A)._overflowWeeks&&-1===e&&(e=7),p(A)._overflowWeekday&&-1===e&&(e=8),p(A).overflow=e),A}var he=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ce=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fe=/Z|[+-]\d\d(?::?\d\d)?/,me=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],ge=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pe=/^\/?Date\((-?\d+)/i,ve=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,_e={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function ye(A){var e,t,i,n,r,s,a=A._i,o=he.exec(a)||ce.exec(a);if(o){for(p(A).iso=!0,e=0,t=me.length;e<t;e++)if(me[e][1].exec(o[1])){n=me[e][0],i=!1!==me[e][2];break}if(null==n)return void(A._isValid=!1);if(o[3]){for(e=0,t=ge.length;e<t;e++)if(ge[e][1].exec(o[3])){r=(o[2]||" ")+ge[e][0];break}if(null==r)return void(A._isValid=!1)}if(!i&&null!=r)return void(A._isValid=!1);if(o[4]){if(!fe.exec(o[4]))return void(A._isValid=!1);s="Z"}A._f=n+(r||"")+(s||""),Se(A)}else A._isValid=!1}function be(A){var e=parseInt(A,10);return e<=49?2e3+e:e<=999?1900+e:e}function Ee(A){var e,t,i,n,r,s,a,o,l=ve.exec(A._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(l){if(t=l[4],i=l[3],n=l[2],r=l[5],s=l[6],a=l[7],o=[be(t),DA.indexOf(i),parseInt(n,10),parseInt(r,10),parseInt(s,10)],a&&o.push(parseInt(a,10)),e=o,!function(A,e,t){return!A||GA.indexOf(A)===new Date(e[0],e[1],e[2]).getDay()||(p(t).weekdayMismatch=!0,t._isValid=!1,!1)}(l[1],e,A))return;A._a=e,A._tzm=function(A,e,t){if(A)return _e[A];if(e)return 0;var i=parseInt(t,10),n=i%100;return 60*((i-n)/100)+n}(l[8],l[9],l[10]),A._d=zA.apply(null,A._a),A._d.setUTCMinutes(A._d.getUTCMinutes()-A._tzm),p(A).rfc2822=!0}else A._isValid=!1}function we(A,e,t){return null!=A?A:null!=e?e:t}function Re(A){var e,t,i,n,r,a=[];if(!A._d){for(i=function(A){var e=new Date(s.now());return A._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(A),A._w&&null==A._a[2]&&null==A._a[1]&&function(A){var e,t,i,n,r,s,a,o,l;null!=(e=A._w).GG||null!=e.W||null!=e.E?(r=1,s=4,t=we(e.GG,A._a[0],NA(Pe(),1,4).year),i=we(e.W,1),((n=we(e.E,1))<1||n>7)&&(o=!0)):(r=A._locale._week.dow,s=A._locale._week.doy,l=NA(Pe(),r,s),t=we(e.gg,A._a[0],l.year),i=we(e.w,l.week),null!=e.d?((n=e.d)<0||n>6)&&(o=!0):null!=e.e?(n=e.e+r,(e.e<0||e.e>6)&&(o=!0)):n=r);i<1||i>QA(t,r,s)?p(A)._overflowWeeks=!0:null!=o?p(A)._overflowWeekday=!0:(a=HA(t,i,n,r,s),A._a[0]=a.year,A._dayOfYear=a.dayOfYear)}(A),null!=A._dayOfYear&&(r=we(A._a[0],i[0]),(A._dayOfYear>MA(r)||0===A._dayOfYear)&&(p(A)._overflowDayOfYear=!0),t=zA(r,0,A._dayOfYear),A._a[1]=t.getUTCMonth(),A._a[2]=t.getUTCDate()),e=0;e<3&&null==A._a[e];++e)A._a[e]=a[e]=i[e];for(;e<7;e++)A._a[e]=a[e]=null==A._a[e]?2===e?1:0:A._a[e];24===A._a[3]&&0===A._a[4]&&0===A._a[5]&&0===A._a[6]&&(A._nextDay=!0,A._a[3]=0),A._d=(A._useUTC?zA:kA).apply(null,a),n=A._useUTC?A._d.getUTCDay():A._d.getDay(),null!=A._tzm&&A._d.setUTCMinutes(A._d.getUTCMinutes()-A._tzm),A._nextDay&&(A._a[3]=24),A._w&&void 0!==A._w.d&&A._w.d!==n&&(p(A).weekdayMismatch=!0)}}function Se(A){if(A._f!==s.ISO_8601)if(A._f!==s.RFC_2822){A._a=[],p(A).empty=!0;var e,t,i,n,r,a,o=""+A._i,l=o.length,u=0;for(i=N(A._f,A._locale).match(M)||[],e=0;e<i.length;e++)n=i[e],(t=(o.match(pA(n,A))||[])[0])&&((r=o.substr(0,o.indexOf(t))).length>0&&p(A).unusedInput.push(r),o=o.slice(o.indexOf(t)+t.length),u+=t.length),z[n]?(t?p(A).empty=!1:p(A).unusedTokens.push(n),EA(n,t,A)):A._strict&&!t&&p(A).unusedTokens.push(n);p(A).charsLeftOver=l-u,o.length>0&&p(A).unusedInput.push(o),A._a[3]<=12&&!0===p(A).bigHour&&A._a[3]>0&&(p(A).bigHour=void 0),p(A).parsedDateParts=A._a.slice(0),p(A).meridiem=A._meridiem,A._a[3]=function(A,e,t){var i;if(null==t)return e;return null!=A.meridiemHour?A.meridiemHour(e,t):null!=A.isPM?((i=A.isPM(t))&&e<12&&(e+=12),i||12!==e||(e=0),e):e}(A._locale,A._a[3],A._meridiem),null!==(a=p(A).era)&&(A._a[0]=A._locale.erasConvertYear(a,A._a[0])),Re(A),de(A)}else Ee(A);else ye(A)}function De(A){var e=A._i,t=A._f;return A._locale=A._locale||ue(A._l),null===e||void 0===t&&""===e?_({nullInput:!0}):("string"==typeof e&&(A._i=e=A._locale.preparse(e)),R(e)?new w(de(e)):(c(e)?A._d=e:a(t)?function(A){var e,t,i,n,r,s,a=!1;if(0===A._f.length)return p(A).invalidFormat=!0,void(A._d=new Date(NaN));for(n=0;n<A._f.length;n++)r=0,s=!1,e=E({},A),null!=A._useUTC&&(e._useUTC=A._useUTC),e._f=A._f[n],Se(e),v(e)&&(s=!0),r+=p(e).charsLeftOver,r+=10*p(e).unusedTokens.length,p(e).score=r,a?r<i&&(i=r,t=e):(null==i||r<i||s)&&(i=r,t=e,s&&(a=!0));m(A,t||e)}(A):t?Se(A):function(A){var e=A._i;d(e)?A._d=new Date(s.now()):c(e)?A._d=new Date(e.valueOf()):"string"==typeof e?function(A){var e=pe.exec(A._i);null===e?(ye(A),!1===A._isValid&&(delete A._isValid,Ee(A),!1===A._isValid&&(delete A._isValid,A._strict?A._isValid=!1:s.createFromInputFallback(A)))):A._d=new Date(+e[1])}(A):a(e)?(A._a=f(e.slice(0),(function(A){return parseInt(A,10)})),Re(A)):o(e)?function(A){if(!A._d){var e=G(A._i),t=void 0===e.day?e.date:e.day;A._a=f([e.year,e.month,t,e.hour,e.minute,e.second,e.millisecond],(function(A){return A&&parseInt(A,10)})),Re(A)}}(A):h(e)?A._d=new Date(e):s.createFromInputFallback(A)}(A),v(A)||(A._d=null),A))}function Oe(A,e,t,i,n){var r,s={};return!0!==e&&!1!==e||(i=e,e=void 0),!0!==t&&!1!==t||(i=t,t=void 0),(o(A)&&u(A)||a(A)&&0===A.length)&&(A=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=t,s._i=A,s._f=e,s._strict=i,(r=new w(de(De(s))))._nextDay&&(r.add(1,"d"),r._nextDay=void 0),r}function Pe(A,e,t,i){return Oe(A,e,t,i,!1)}s.createFromInputFallback=D("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(A){A._d=new Date(A._i+(A._useUTC?" UTC":""))})),s.ISO_8601=function(){},s.RFC_2822=function(){};var Le=D("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var A=Pe.apply(null,arguments);return this.isValid()&&A.isValid()?A<this?this:A:_()})),xe=D("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var A=Pe.apply(null,arguments);return this.isValid()&&A.isValid()?A>this?this:A:_()}));function Ce(A,e){var t,i;if(1===e.length&&a(e[0])&&(e=e[0]),!e.length)return Pe();for(t=e[0],i=1;i<e.length;++i)e[i].isValid()&&!e[i][A](t)||(t=e[i]);return t}var Te=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Be(A){var e=G(A),t=e.year||0,i=e.quarter||0,n=e.month||0,r=e.week||e.isoWeek||0,s=e.day||0,a=e.hour||0,o=e.minute||0,u=e.second||0,d=e.millisecond||0;this._isValid=function(A){var e,t,i=!1;for(e in A)if(l(A,e)&&(-1===wA.call(Te,e)||null!=A[e]&&isNaN(A[e])))return!1;for(t=0;t<Te.length;++t)if(A[Te[t]]){if(i)return!1;parseFloat(A[Te[t]])!==W(A[Te[t]])&&(i=!0)}return!0}(e),this._milliseconds=+d+1e3*u+6e4*o+1e3*a*60*60,this._days=+s+7*r,this._months=+n+3*i+12*t,this._data={},this._locale=ue(),this._bubble()}function Me(A){return A instanceof Be}function Ie(A){return A<0?-1*Math.round(-1*A):Math.round(A)}function ke(A,e){j(A,0,0,(function(){var A=this.utcOffset(),t="+";return A<0&&(A=-A,t="-"),t+B(~~(A/60),2)+e+B(~~A%60,2)}))}ke("Z",":"),ke("ZZ",""),gA("Z",fA),gA("ZZ",fA),yA(["Z","ZZ"],(function(A,e,t){t._useUTC=!0,t._tzm=je(fA,A)}));var ze=/([\+\-]|\d\d)/gi;function je(A,e){var t,i,n=(e||"").match(A);return null===n?null:0===(i=60*(t=((n[n.length-1]||[])+"").match(ze)||["-",0,0])[1]+W(t[2]))?0:"+"===t[0]?i:-i}function He(A,e){var t,i;return e._isUTC?(t=e.clone(),i=(R(A)||c(A)?A.valueOf():Pe(A).valueOf())-t.valueOf(),t._d.setTime(t._d.valueOf()+i),s.updateOffset(t,!1),t):Pe(A).local()}function Ne(A){return-Math.round(A._d.getTimezoneOffset())}function Qe(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}s.updateOffset=function(){};var Ue=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,Fe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ge(A,e){var t,i,n,s=A,a=null;return Me(A)?s={ms:A._milliseconds,d:A._days,M:A._months}:h(A)||!isNaN(+A)?(s={},e?s[e]=+A:s.milliseconds=+A):(a=Ue.exec(A))?(t="-"===a[1]?-1:1,s={y:0,d:W(a[2])*t,h:W(a[3])*t,m:W(a[4])*t,s:W(a[5])*t,ms:W(Ie(1e3*a[6]))*t}):(a=Fe.exec(A))?(t="-"===a[1]?-1:1,s={y:Xe(a[2],t),M:Xe(a[3],t),w:Xe(a[4],t),d:Xe(a[5],t),h:Xe(a[6],t),m:Xe(a[7],t),s:Xe(a[8],t)}):null==s?s={}:"object"===r(s)&&("from"in s||"to"in s)&&(n=function(A,e){var t;if(!A.isValid()||!e.isValid())return{milliseconds:0,months:0};e=He(e,A),A.isBefore(e)?t=Ve(A,e):((t=Ve(e,A)).milliseconds=-t.milliseconds,t.months=-t.months);return t}(Pe(s.from),Pe(s.to)),(s={}).ms=n.milliseconds,s.M=n.months),i=new Be(s),Me(A)&&l(A,"_locale")&&(i._locale=A._locale),Me(A)&&l(A,"_isValid")&&(i._isValid=A._isValid),i}function Xe(A,e){var t=A&&parseFloat(A.replace(",","."));return(isNaN(t)?0:t)*e}function Ve(A,e){var t={};return t.months=e.month()-A.month()+12*(e.year()-A.year()),A.clone().add(t.months,"M").isAfter(e)&&--t.months,t.milliseconds=+e-+A.clone().add(t.months,"M"),t}function Ye(A,e){return function(t,i){var n;return null===i||isNaN(+i)||(L(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),n=t,t=i,i=n),qe(this,Ge(t,i),A),this}}function qe(A,e,t,i){var n=e._milliseconds,r=Ie(e._days),a=Ie(e._months);A.isValid()&&(i=null==i||i,a&&CA(A,J(A,"Month")+a*t),r&&K(A,"Date",J(A,"Date")+r*t),n&&A._d.setTime(A._d.valueOf()+n*t),i&&s.updateOffset(A,r||a))}Ge.fn=Be.prototype,Ge.invalid=function(){return Ge(NaN)};var We=Ye(1,"add"),Ze=Ye(-1,"subtract");function Je(A){return"string"==typeof A||A instanceof String}function Ke(A){return R(A)||c(A)||Je(A)||h(A)||function(A){var e=a(A),t=!1;e&&(t=0===A.filter((function(e){return!h(e)&&Je(A)})).length);return e&&t}(A)||function(A){var e,t,i=o(A)&&!u(A),n=!1,r=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"];for(e=0;e<r.length;e+=1)t=r[e],n=n||l(A,t);return i&&n}(A)||null==A}function $e(A){var e,t=o(A)&&!u(A),i=!1,n=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(e=0;e<n.length;e+=1)i=i||l(A,n[e]);return t&&i}function At(A,e){if(A.date()<e.date())return-At(e,A);var t=12*(e.year()-A.year())+(e.month()-A.month()),i=A.clone().add(t,"months");return-(t+(e-i<0?(e-i)/(i-A.clone().add(t-1,"months")):(e-i)/(A.clone().add(t+1,"months")-i)))||0}function et(A){var e;return void 0===A?this._locale._abbr:(null!=(e=ue(A))&&(this._locale=e),this)}s.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",s.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var tt=D("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(A){return void 0===A?this.localeData():this.locale(A)}));function it(){return this._locale}function nt(A,e){return(A%e+e)%e}function rt(A,e,t){return A<100&&A>=0?new Date(A+400,e,t)-126227808e5:new Date(A,e,t).valueOf()}function st(A,e,t){return A<100&&A>=0?Date.UTC(A+400,e,t)-126227808e5:Date.UTC(A,e,t)}function at(A,e){return e.erasAbbrRegex(A)}function ot(){var A,e,t=[],i=[],n=[],r=[],s=this.eras();for(A=0,e=s.length;A<e;++A)i.push(vA(s[A].name)),t.push(vA(s[A].abbr)),n.push(vA(s[A].narrow)),r.push(vA(s[A].name)),r.push(vA(s[A].abbr)),r.push(vA(s[A].narrow));this._erasRegex=new RegExp("^("+r.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+i.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+t.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+n.join("|")+")","i")}function lt(A,e){j(0,[A,A.length],0,e)}function ut(A,e,t,i,n){var r;return null==A?NA(this,i,n).year:(e>(r=QA(A,i,n))&&(e=r),dt.call(this,A,e,t,i,n))}function dt(A,e,t,i,n){var r=HA(A,e,t,i,n),s=zA(r.year,0,r.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}j("N",0,0,"eraAbbr"),j("NN",0,0,"eraAbbr"),j("NNN",0,0,"eraAbbr"),j("NNNN",0,0,"eraName"),j("NNNNN",0,0,"eraNarrow"),j("y",["y",1],"yo","eraYear"),j("y",["yy",2],0,"eraYear"),j("y",["yyy",3],0,"eraYear"),j("y",["yyyy",4],0,"eraYear"),gA("N",at),gA("NN",at),gA("NNN",at),gA("NNNN",(function(A,e){return e.erasNameRegex(A)})),gA("NNNNN",(function(A,e){return e.erasNarrowRegex(A)})),yA(["N","NN","NNN","NNNN","NNNNN"],(function(A,e,t,i){var n=t._locale.erasParse(A,i,t._strict);n?p(t).era=n:p(t).invalidEra=A})),gA("y",dA),gA("yy",dA),gA("yyy",dA),gA("yyyy",dA),gA("yo",(function(A,e){return e._eraYearOrdinalRegex||dA})),yA(["y","yy","yyy","yyyy"],0),yA(["yo"],(function(A,e,t,i){var n;t._locale._eraYearOrdinalRegex&&(n=A.match(t._locale._eraYearOrdinalRegex)),t._locale.eraYearOrdinalParse?e[0]=t._locale.eraYearOrdinalParse(A,n):e[0]=parseInt(A,10)})),j(0,["gg",2],0,(function(){return this.weekYear()%100})),j(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),lt("gggg","weekYear"),lt("ggggg","weekYear"),lt("GGGG","isoWeekYear"),lt("GGGGG","isoWeekYear"),U("weekYear","gg"),U("isoWeekYear","GG"),V("weekYear",1),V("isoWeekYear",1),gA("G",hA),gA("g",hA),gA("GG",rA,eA),gA("gg",rA,eA),gA("GGGG",lA,iA),gA("gggg",lA,iA),gA("GGGGG",uA,nA),gA("ggggg",uA,nA),bA(["gggg","ggggg","GGGG","GGGGG"],(function(A,e,t,i){e[i.substr(0,2)]=W(A)})),bA(["gg","GG"],(function(A,e,t,i){e[i]=s.parseTwoDigitYear(A)})),j("Q",0,"Qo","quarter"),U("quarter","Q"),V("quarter",7),gA("Q",AA),yA("Q",(function(A,e){e[1]=3*(W(A)-1)})),j("D",["DD",2],"Do","date"),U("date","D"),V("date",9),gA("D",rA),gA("DD",rA,eA),gA("Do",(function(A,e){return A?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),yA(["D","DD"],2),yA("Do",(function(A,e){e[2]=W(A.match(rA)[0])}));var ht=Z("Date",!0);j("DDD",["DDDD",3],"DDDo","dayOfYear"),U("dayOfYear","DDD"),V("dayOfYear",4),gA("DDD",oA),gA("DDDD",tA),yA(["DDD","DDDD"],(function(A,e,t){t._dayOfYear=W(A)})),j("m",["mm",2],0,"minute"),U("minute","m"),V("minute",14),gA("m",rA),gA("mm",rA,eA),yA(["m","mm"],4);var ct=Z("Minutes",!1);j("s",["ss",2],0,"second"),U("second","s"),V("second",15),gA("s",rA),gA("ss",rA,eA),yA(["s","ss"],5);var ft,mt,gt=Z("Seconds",!1);for(j("S",0,0,(function(){return~~(this.millisecond()/100)})),j(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),j(0,["SSS",3],0,"millisecond"),j(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),j(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),j(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),j(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),j(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),j(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),U("millisecond","ms"),V("millisecond",16),gA("S",oA,AA),gA("SS",oA,eA),gA("SSS",oA,tA),ft="SSSS";ft.length<=9;ft+="S")gA(ft,dA);function pt(A,e){e[6]=W(1e3*("0."+A))}for(ft="S";ft.length<=9;ft+="S")yA(ft,pt);mt=Z("Milliseconds",!1),j("z",0,0,"zoneAbbr"),j("zz",0,0,"zoneName");var vt=w.prototype;function _t(A){return A}vt.add=We,vt.calendar=function(A,e){1===arguments.length&&(arguments[0]?Ke(arguments[0])?(A=arguments[0],e=void 0):$e(arguments[0])&&(e=arguments[0],A=void 0):(A=void 0,e=void 0));var t=A||Pe(),i=He(t,this).startOf("day"),n=s.calendarFormat(this,i)||"sameElse",r=e&&(x(e[n])?e[n].call(this,t):e[n]);return this.format(r||this.localeData().calendar(n,this,Pe(t)))},vt.clone=function(){return new w(this)},vt.diff=function(A,e,t){var i,n,r;if(!this.isValid())return NaN;if(!(i=He(A,this)).isValid())return NaN;switch(n=6e4*(i.utcOffset()-this.utcOffset()),e=F(e)){case"year":r=At(this,i)/12;break;case"month":r=At(this,i);break;case"quarter":r=At(this,i)/3;break;case"second":r=(this-i)/1e3;break;case"minute":r=(this-i)/6e4;break;case"hour":r=(this-i)/36e5;break;case"day":r=(this-i-n)/864e5;break;case"week":r=(this-i-n)/6048e5;break;default:r=this-i}return t?r:q(r)},vt.endOf=function(A){var e,t;if(void 0===(A=F(A))||"millisecond"===A||!this.isValid())return this;switch(t=this._isUTC?st:rt,A){case"year":e=t(this.year()+1,0,1)-1;break;case"quarter":e=t(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=t(this.year(),this.month()+1,1)-1;break;case"week":e=t(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=t(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=t(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-nt(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-nt(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-nt(e,1e3)-1}return this._d.setTime(e),s.updateOffset(this,!0),this},vt.format=function(A){A||(A=this.isUtc()?s.defaultFormatUtc:s.defaultFormat);var e=H(this,A);return this.localeData().postformat(e)},vt.from=function(A,e){return this.isValid()&&(R(A)&&A.isValid()||Pe(A).isValid())?Ge({to:this,from:A}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},vt.fromNow=function(A){return this.from(Pe(),A)},vt.to=function(A,e){return this.isValid()&&(R(A)&&A.isValid()||Pe(A).isValid())?Ge({from:this,to:A}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},vt.toNow=function(A){return this.to(Pe(),A)},vt.get=function(A){return x(this[A=F(A)])?this[A]():this},vt.invalidAt=function(){return p(this).overflow},vt.isAfter=function(A,e){var t=R(A)?A:Pe(A);return!(!this.isValid()||!t.isValid())&&("millisecond"===(e=F(e)||"millisecond")?this.valueOf()>t.valueOf():t.valueOf()<this.clone().startOf(e).valueOf())},vt.isBefore=function(A,e){var t=R(A)?A:Pe(A);return!(!this.isValid()||!t.isValid())&&("millisecond"===(e=F(e)||"millisecond")?this.valueOf()<t.valueOf():this.clone().endOf(e).valueOf()<t.valueOf())},vt.isBetween=function(A,e,t,i){var n=R(A)?A:Pe(A),r=R(e)?e:Pe(e);return!!(this.isValid()&&n.isValid()&&r.isValid())&&(("("===(i=i||"()")[0]?this.isAfter(n,t):!this.isBefore(n,t))&&(")"===i[1]?this.isBefore(r,t):!this.isAfter(r,t)))},vt.isSame=function(A,e){var t,i=R(A)?A:Pe(A);return!(!this.isValid()||!i.isValid())&&("millisecond"===(e=F(e)||"millisecond")?this.valueOf()===i.valueOf():(t=i.valueOf(),this.clone().startOf(e).valueOf()<=t&&t<=this.clone().endOf(e).valueOf()))},vt.isSameOrAfter=function(A,e){return this.isSame(A,e)||this.isAfter(A,e)},vt.isSameOrBefore=function(A,e){return this.isSame(A,e)||this.isBefore(A,e)},vt.isValid=function(){return v(this)},vt.lang=tt,vt.locale=et,vt.localeData=it,vt.max=xe,vt.min=Le,vt.parsingFlags=function(){return m({},p(this))},vt.set=function(A,e){if("object"===r(A)){var t,i=function(A){var e,t=[];for(e in A)l(A,e)&&t.push({unit:e,priority:X[e]});return t.sort((function(A,e){return A.priority-e.priority})),t}(A=G(A));for(t=0;t<i.length;t++)this[i[t].unit](A[i[t].unit])}else if(x(this[A=F(A)]))return this[A](e);return this},vt.startOf=function(A){var e,t;if(void 0===(A=F(A))||"millisecond"===A||!this.isValid())return this;switch(t=this._isUTC?st:rt,A){case"year":e=t(this.year(),0,1);break;case"quarter":e=t(this.year(),this.month()-this.month()%3,1);break;case"month":e=t(this.year(),this.month(),1);break;case"week":e=t(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=t(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=t(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=nt(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=nt(e,6e4);break;case"second":e=this._d.valueOf(),e-=nt(e,1e3)}return this._d.setTime(e),s.updateOffset(this,!0),this},vt.subtract=Ze,vt.toArray=function(){var A=this;return[A.year(),A.month(),A.date(),A.hour(),A.minute(),A.second(),A.millisecond()]},vt.toObject=function(){var A=this;return{years:A.year(),months:A.month(),date:A.date(),hours:A.hours(),minutes:A.minutes(),seconds:A.seconds(),milliseconds:A.milliseconds()}},vt.toDate=function(){return new Date(this.valueOf())},vt.toISOString=function(A){if(!this.isValid())return null;var e=!0!==A,t=e?this.clone().utc():this;return t.year()<0||t.year()>9999?H(t,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):x(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",H(t,"Z")):H(t,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},vt.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var A,e,t,i="moment",n="";return this.isLocal()||(i=0===this.utcOffset()?"moment.utc":"moment.parseZone",n="Z"),A="["+i+'("]',e=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY","-MM-DD[T]HH:mm:ss.SSS",t=n+'[")]',this.format(A+e+"-MM-DD[T]HH:mm:ss.SSS"+t)},"undefined"!=typeof Symbol&&null!=Symbol.for&&(vt[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),vt.toJSON=function(){return this.isValid()?this.toISOString():null},vt.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},vt.unix=function(){return Math.floor(this.valueOf()/1e3)},vt.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},vt.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},vt.eraName=function(){var A,e,t,i=this.localeData().eras();for(A=0,e=i.length;A<e;++A){if(t=this.clone().startOf("day").valueOf(),i[A].since<=t&&t<=i[A].until)return i[A].name;if(i[A].until<=t&&t<=i[A].since)return i[A].name}return""},vt.eraNarrow=function(){var A,e,t,i=this.localeData().eras();for(A=0,e=i.length;A<e;++A){if(t=this.clone().startOf("day").valueOf(),i[A].since<=t&&t<=i[A].until)return i[A].narrow;if(i[A].until<=t&&t<=i[A].since)return i[A].narrow}return""},vt.eraAbbr=function(){var A,e,t,i=this.localeData().eras();for(A=0,e=i.length;A<e;++A){if(t=this.clone().startOf("day").valueOf(),i[A].since<=t&&t<=i[A].until)return i[A].abbr;if(i[A].until<=t&&t<=i[A].since)return i[A].abbr}return""},vt.eraYear=function(){var A,e,t,i,n=this.localeData().eras();for(A=0,e=n.length;A<e;++A)if(t=n[A].since<=n[A].until?1:-1,i=this.clone().startOf("day").valueOf(),n[A].since<=i&&i<=n[A].until||n[A].until<=i&&i<=n[A].since)return(this.year()-s(n[A].since).year())*t+n[A].offset;return this.year()},vt.year=IA,vt.isLeapYear=function(){return Y(this.year())},vt.weekYear=function(A){return ut.call(this,A,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},vt.isoWeekYear=function(A){return ut.call(this,A,this.isoWeek(),this.isoWeekday(),1,4)},vt.quarter=vt.quarters=function(A){return null==A?Math.ceil((this.month()+1)/3):this.month(3*(A-1)+this.month()%3)},vt.month=TA,vt.daysInMonth=function(){return RA(this.year(),this.month())},vt.week=vt.weeks=function(A){var e=this.localeData().week(this);return null==A?e:this.add(7*(A-e),"d")},vt.isoWeek=vt.isoWeeks=function(A){var e=NA(this,1,4).week;return null==A?e:this.add(7*(A-e),"d")},vt.weeksInYear=function(){var A=this.localeData()._week;return QA(this.year(),A.dow,A.doy)},vt.weeksInWeekYear=function(){var A=this.localeData()._week;return QA(this.weekYear(),A.dow,A.doy)},vt.isoWeeksInYear=function(){return QA(this.year(),1,4)},vt.isoWeeksInISOWeekYear=function(){return QA(this.isoWeekYear(),1,4)},vt.date=ht,vt.day=vt.days=function(A){if(!this.isValid())return null!=A?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=A?(A=function(A,e){return"string"!=typeof A?A:isNaN(A)?"number"==typeof(A=e.weekdaysParse(A))?A:null:parseInt(A,10)}(A,this.localeData()),this.add(A-e,"d")):e},vt.weekday=function(A){if(!this.isValid())return null!=A?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==A?e:this.add(A-e,"d")},vt.isoWeekday=function(A){if(!this.isValid())return null!=A?this:NaN;if(null!=A){var e=function(A,e){return"string"==typeof A?e.weekdaysParse(A)%7||7:isNaN(A)?null:A}(A,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7},vt.dayOfYear=function(A){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==A?e:this.add(A-e,"d")},vt.hour=vt.hours=Ae,vt.minute=vt.minutes=ct,vt.second=vt.seconds=gt,vt.millisecond=vt.milliseconds=mt,vt.utcOffset=function(A,e,t){var i,n=this._offset||0;if(!this.isValid())return null!=A?this:NaN;if(null!=A){if("string"==typeof A){if(null===(A=je(fA,A)))return this}else Math.abs(A)<16&&!t&&(A*=60);return!this._isUTC&&e&&(i=Ne(this)),this._offset=A,this._isUTC=!0,null!=i&&this.add(i,"m"),n!==A&&(!e||this._changeInProgress?qe(this,Ge(A-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,s.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?n:Ne(this)},vt.utc=function(A){return this.utcOffset(0,A)},vt.local=function(A){return this._isUTC&&(this.utcOffset(0,A),this._isUTC=!1,A&&this.subtract(Ne(this),"m")),this},vt.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var A=je(cA,this._i);null!=A?this.utcOffset(A):this.utcOffset(0,!0)}return this},vt.hasAlignedHourOffset=function(A){return!!this.isValid()&&(A=A?Pe(A).utcOffset():0,(this.utcOffset()-A)%60==0)},vt.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},vt.isLocal=function(){return!!this.isValid()&&!this._isUTC},vt.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},vt.isUtc=Qe,vt.isUTC=Qe,vt.zoneAbbr=function(){return this._isUTC?"UTC":""},vt.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},vt.dates=D("dates accessor is deprecated. Use date instead.",ht),vt.months=D("months accessor is deprecated. Use month instead",TA),vt.years=D("years accessor is deprecated. Use year instead",IA),vt.zone=D("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(A,e){return null!=A?("string"!=typeof A&&(A=-A),this.utcOffset(A,e),this):-this.utcOffset()})),vt.isDSTShifted=D("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!d(this._isDSTShifted))return this._isDSTShifted;var A,e={};return E(e,this),(e=De(e))._a?(A=e._isUTC?g(e._a):Pe(e._a),this._isDSTShifted=this.isValid()&&function(A,e,t){var i,n=Math.min(A.length,e.length),r=Math.abs(A.length-e.length),s=0;for(i=0;i<n;i++)(t&&A[i]!==e[i]||!t&&W(A[i])!==W(e[i]))&&s++;return s+r}(e._a,A.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}));var yt=T.prototype;function bt(A,e,t,i){var n=ue(),r=g().set(i,e);return n[t](r,A)}function Et(A,e,t){if(h(A)&&(e=A,A=void 0),A=A||"",null!=e)return bt(A,e,t,"month");var i,n=[];for(i=0;i<12;i++)n[i]=bt(A,i,t,"month");return n}function wt(A,e,t,i){"boolean"==typeof A?(h(e)&&(t=e,e=void 0),e=e||""):(t=e=A,A=!1,h(e)&&(t=e,e=void 0),e=e||"");var n,r=ue(),s=A?r._week.dow:0,a=[];if(null!=t)return bt(e,(t+s)%7,i,"day");for(n=0;n<7;n++)a[n]=bt(e,(n+s)%7,i,"day");return a}yt.calendar=function(A,e,t){var i=this._calendar[A]||this._calendar.sameElse;return x(i)?i.call(e,t):i},yt.longDateFormat=function(A){var e=this._longDateFormat[A],t=this._longDateFormat[A.toUpperCase()];return e||!t?e:(this._longDateFormat[A]=t.match(M).map((function(A){return"MMMM"===A||"MM"===A||"DD"===A||"dddd"===A?A.slice(1):A})).join(""),this._longDateFormat[A])},yt.invalidDate=function(){return this._invalidDate},yt.ordinal=function(A){return this._ordinal.replace("%d",A)},yt.preparse=_t,yt.postformat=_t,yt.relativeTime=function(A,e,t,i){var n=this._relativeTime[t];return x(n)?n(A,e,t,i):n.replace(/%d/i,A)},yt.pastFuture=function(A,e){var t=this._relativeTime[A>0?"future":"past"];return x(t)?t(e):t.replace(/%s/i,e)},yt.set=function(A){var e,t;for(t in A)l(A,t)&&(x(e=A[t])?this[t]=e:this["_"+t]=e);this._config=A,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},yt.eras=function(A,e){var t,i,n,a=this._eras||ue("en")._eras;for(t=0,i=a.length;t<i;++t){switch(r(a[t].since)){case"string":n=s(a[t].since).startOf("day"),a[t].since=n.valueOf()}switch(r(a[t].until)){case"undefined":a[t].until=1/0;break;case"string":n=s(a[t].until).startOf("day").valueOf(),a[t].until=n.valueOf()}}return a},yt.erasParse=function(A,e,t){var i,n,r,s,a,o=this.eras();for(A=A.toUpperCase(),i=0,n=o.length;i<n;++i)if(r=o[i].name.toUpperCase(),s=o[i].abbr.toUpperCase(),a=o[i].narrow.toUpperCase(),t)switch(e){case"N":case"NN":case"NNN":if(s===A)return o[i];break;case"NNNN":if(r===A)return o[i];break;case"NNNNN":if(a===A)return o[i]}else if([r,s,a].indexOf(A)>=0)return o[i]},yt.erasConvertYear=function(A,e){var t=A.since<=A.until?1:-1;return void 0===e?s(A.since).year():s(A.since).year()+(e-A.offset)*t},yt.erasAbbrRegex=function(A){return l(this,"_erasAbbrRegex")||ot.call(this),A?this._erasAbbrRegex:this._erasRegex},yt.erasNameRegex=function(A){return l(this,"_erasNameRegex")||ot.call(this),A?this._erasNameRegex:this._erasRegex},yt.erasNarrowRegex=function(A){return l(this,"_erasNarrowRegex")||ot.call(this),A?this._erasNarrowRegex:this._erasRegex},yt.months=function(A,e){return A?a(this._months)?this._months[A.month()]:this._months[(this._months.isFormat||OA).test(e)?"format":"standalone"][A.month()]:a(this._months)?this._months:this._months.standalone},yt.monthsShort=function(A,e){return A?a(this._monthsShort)?this._monthsShort[A.month()]:this._monthsShort[OA.test(e)?"format":"standalone"][A.month()]:a(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},yt.monthsParse=function(A,e,t){var i,n,r;if(this._monthsParseExact)return xA.call(this,A,e,t);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),i=0;i<12;i++){if(n=g([2e3,i]),t&&!this._longMonthsParse[i]&&(this._longMonthsParse[i]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[i]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),t||this._monthsParse[i]||(r="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[i]=new RegExp(r.replace(".",""),"i")),t&&"MMMM"===e&&this._longMonthsParse[i].test(A))return i;if(t&&"MMM"===e&&this._shortMonthsParse[i].test(A))return i;if(!t&&this._monthsParse[i].test(A))return i}},yt.monthsRegex=function(A){return this._monthsParseExact?(l(this,"_monthsRegex")||BA.call(this),A?this._monthsStrictRegex:this._monthsRegex):(l(this,"_monthsRegex")||(this._monthsRegex=LA),this._monthsStrictRegex&&A?this._monthsStrictRegex:this._monthsRegex)},yt.monthsShortRegex=function(A){return this._monthsParseExact?(l(this,"_monthsRegex")||BA.call(this),A?this._monthsShortStrictRegex:this._monthsShortRegex):(l(this,"_monthsShortRegex")||(this._monthsShortRegex=PA),this._monthsShortStrictRegex&&A?this._monthsShortStrictRegex:this._monthsShortRegex)},yt.week=function(A){return NA(A,this._week.dow,this._week.doy).week},yt.firstDayOfYear=function(){return this._week.doy},yt.firstDayOfWeek=function(){return this._week.dow},yt.weekdays=function(A,e){var t=a(this._weekdays)?this._weekdays:this._weekdays[A&&!0!==A&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===A?UA(t,this._week.dow):A?t[A.day()]:t},yt.weekdaysMin=function(A){return!0===A?UA(this._weekdaysMin,this._week.dow):A?this._weekdaysMin[A.day()]:this._weekdaysMin},yt.weekdaysShort=function(A){return!0===A?UA(this._weekdaysShort,this._week.dow):A?this._weekdaysShort[A.day()]:this._weekdaysShort},yt.weekdaysParse=function(A,e,t){var i,n,r;if(this._weekdaysParseExact)return WA.call(this,A,e,t);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(n=g([2e3,1]).day(i),t&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[i]||(r="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[i]=new RegExp(r.replace(".",""),"i")),t&&"dddd"===e&&this._fullWeekdaysParse[i].test(A))return i;if(t&&"ddd"===e&&this._shortWeekdaysParse[i].test(A))return i;if(t&&"dd"===e&&this._minWeekdaysParse[i].test(A))return i;if(!t&&this._weekdaysParse[i].test(A))return i}},yt.weekdaysRegex=function(A){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||ZA.call(this),A?this._weekdaysStrictRegex:this._weekdaysRegex):(l(this,"_weekdaysRegex")||(this._weekdaysRegex=VA),this._weekdaysStrictRegex&&A?this._weekdaysStrictRegex:this._weekdaysRegex)},yt.weekdaysShortRegex=function(A){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||ZA.call(this),A?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(l(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=YA),this._weekdaysShortStrictRegex&&A?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},yt.weekdaysMinRegex=function(A){return this._weekdaysParseExact?(l(this,"_weekdaysRegex")||ZA.call(this),A?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(l(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=qA),this._weekdaysMinStrictRegex&&A?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},yt.isPM=function(A){return"p"===(A+"").toLowerCase().charAt(0)},yt.meridiem=function(A,e,t){return A>11?t?"pm":"PM":t?"am":"AM"},oe("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(A){var e=A%10;return A+(1===W(A%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),s.lang=D("moment.lang is deprecated. Use moment.locale instead.",oe),s.langData=D("moment.langData is deprecated. Use moment.localeData instead.",ue);var Rt=Math.abs;function St(A,e,t,i){var n=Ge(e,t);return A._milliseconds+=i*n._milliseconds,A._days+=i*n._days,A._months+=i*n._months,A._bubble()}function Dt(A){return A<0?Math.floor(A):Math.ceil(A)}function Ot(A){return 4800*A/146097}function Pt(A){return 146097*A/4800}function Lt(A){return function(){return this.as(A)}}var xt=Lt("ms"),Ct=Lt("s"),Tt=Lt("m"),Bt=Lt("h"),Mt=Lt("d"),It=Lt("w"),kt=Lt("M"),zt=Lt("Q"),jt=Lt("y");function Ht(A){return function(){return this.isValid()?this._data[A]:NaN}}var Nt=Ht("milliseconds"),Qt=Ht("seconds"),Ut=Ht("minutes"),Ft=Ht("hours"),Gt=Ht("days"),Xt=Ht("months"),Vt=Ht("years");var Yt=Math.round,qt={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function Wt(A,e,t,i,n){return n.relativeTime(e||1,!!t,A,i)}var Zt=Math.abs;function Jt(A){return(A>0)-(A<0)||+A}function Kt(){if(!this.isValid())return this.localeData().invalidDate();var A,e,t,i,n,r,s,a,o=Zt(this._milliseconds)/1e3,l=Zt(this._days),u=Zt(this._months),d=this.asSeconds();return d?(A=q(o/60),e=q(A/60),o%=60,A%=60,t=q(u/12),u%=12,i=o?o.toFixed(3).replace(/\.?0+$/,""):"",n=d<0?"-":"",r=Jt(this._months)!==Jt(d)?"-":"",s=Jt(this._days)!==Jt(d)?"-":"",a=Jt(this._milliseconds)!==Jt(d)?"-":"",n+"P"+(t?r+t+"Y":"")+(u?r+u+"M":"")+(l?s+l+"D":"")+(e||A||o?"T":"")+(e?a+e+"H":"")+(A?a+A+"M":"")+(o?a+i+"S":"")):"P0D"}var $t=Be.prototype;$t.isValid=function(){return this._isValid},$t.abs=function(){var A=this._data;return this._milliseconds=Rt(this._milliseconds),this._days=Rt(this._days),this._months=Rt(this._months),A.milliseconds=Rt(A.milliseconds),A.seconds=Rt(A.seconds),A.minutes=Rt(A.minutes),A.hours=Rt(A.hours),A.months=Rt(A.months),A.years=Rt(A.years),this},$t.add=function(A,e){return St(this,A,e,1)},$t.subtract=function(A,e){return St(this,A,e,-1)},$t.as=function(A){if(!this.isValid())return NaN;var e,t,i=this._milliseconds;if("month"===(A=F(A))||"quarter"===A||"year"===A)switch(e=this._days+i/864e5,t=this._months+Ot(e),A){case"month":return t;case"quarter":return t/3;case"year":return t/12}else switch(e=this._days+Math.round(Pt(this._months)),A){case"week":return e/7+i/6048e5;case"day":return e+i/864e5;case"hour":return 24*e+i/36e5;case"minute":return 1440*e+i/6e4;case"second":return 86400*e+i/1e3;case"millisecond":return Math.floor(864e5*e)+i;default:throw new Error("Unknown unit "+A)}},$t.asMilliseconds=xt,$t.asSeconds=Ct,$t.asMinutes=Tt,$t.asHours=Bt,$t.asDays=Mt,$t.asWeeks=It,$t.asMonths=kt,$t.asQuarters=zt,$t.asYears=jt,$t.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*W(this._months/12):NaN},$t._bubble=function(){var A,e,t,i,n,r=this._milliseconds,s=this._days,a=this._months,o=this._data;return r>=0&&s>=0&&a>=0||r<=0&&s<=0&&a<=0||(r+=864e5*Dt(Pt(a)+s),s=0,a=0),o.milliseconds=r%1e3,A=q(r/1e3),o.seconds=A%60,e=q(A/60),o.minutes=e%60,t=q(e/60),o.hours=t%24,s+=q(t/24),a+=n=q(Ot(s)),s-=Dt(Pt(n)),i=q(a/12),a%=12,o.days=s,o.months=a,o.years=i,this},$t.clone=function(){return Ge(this)},$t.get=function(A){return A=F(A),this.isValid()?this[A+"s"]():NaN},$t.milliseconds=Nt,$t.seconds=Qt,$t.minutes=Ut,$t.hours=Ft,$t.days=Gt,$t.weeks=function(){return q(this.days()/7)},$t.months=Xt,$t.years=Vt,$t.humanize=function(A,e){if(!this.isValid())return this.localeData().invalidDate();var t,i,n=!1,s=qt;return"object"===r(A)&&(e=A,A=!1),"boolean"==typeof A&&(n=A),"object"===r(e)&&(s=Object.assign({},qt,e),null!=e.s&&null==e.ss&&(s.ss=e.s-1)),i=function(A,e,t,i){var n=Ge(A).abs(),r=Yt(n.as("s")),s=Yt(n.as("m")),a=Yt(n.as("h")),o=Yt(n.as("d")),l=Yt(n.as("M")),u=Yt(n.as("w")),d=Yt(n.as("y")),h=r<=t.ss&&["s",r]||r<t.s&&["ss",r]||s<=1&&["m"]||s<t.m&&["mm",s]||a<=1&&["h"]||a<t.h&&["hh",a]||o<=1&&["d"]||o<t.d&&["dd",o];return null!=t.w&&(h=h||u<=1&&["w"]||u<t.w&&["ww",u]),(h=h||l<=1&&["M"]||l<t.M&&["MM",l]||d<=1&&["y"]||["yy",d])[2]=e,h[3]=+A>0,h[4]=i,Wt.apply(null,h)}(this,!n,s,t=this.localeData()),n&&(i=t.pastFuture(+this,i)),t.postformat(i)},$t.toISOString=Kt,$t.toString=Kt,$t.toJSON=Kt,$t.locale=et,$t.localeData=it,$t.toIsoString=D("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Kt),$t.lang=tt,j("X",0,0,"unix"),j("x",0,0,"valueOf"),gA("x",hA),gA("X",/[+-]?\d+(\.\d{1,3})?/),yA("X",(function(A,e,t){t._d=new Date(1e3*parseFloat(A))})),yA("x",(function(A,e,t){t._d=new Date(W(A))})),//! moment.js
s.version="2.29.1",i=Pe,s.fn=vt,s.min=function(){var A=[].slice.call(arguments,0);return Ce("isBefore",A)},s.max=function(){var A=[].slice.call(arguments,0);return Ce("isAfter",A)},s.now=function(){return Date.now?Date.now():+new Date},s.utc=g,s.unix=function(A){return Pe(1e3*A)},s.months=function(A,e){return Et(A,e,"months")},s.isDate=c,s.locale=oe,s.invalid=_,s.duration=Ge,s.isMoment=R,s.weekdays=function(A,e,t){return wt(A,e,t,"weekdays")},s.parseZone=function(){return Pe.apply(null,arguments).parseZone()},s.localeData=ue,s.isDuration=Me,s.monthsShort=function(A,e){return Et(A,e,"monthsShort")},s.weekdaysMin=function(A,e,t){return wt(A,e,t,"weekdaysMin")},s.defineLocale=le,s.updateLocale=function(A,e){if(null!=e){var t,i,n=te;null!=ie[A]&&null!=ie[A].parentLocale?ie[A].set(C(ie[A]._config,e)):(null!=(i=ae(A))&&(n=i._config),e=C(n,e),null==i&&(e.abbr=A),(t=new T(e)).parentLocale=ie[A],ie[A]=t),oe(A)}else null!=ie[A]&&(null!=ie[A].parentLocale?(ie[A]=ie[A].parentLocale,A===oe()&&oe(A)):null!=ie[A]&&delete ie[A]);return ie[A]},s.locales=function(){return O(ie)},s.weekdaysShort=function(A,e,t){return wt(A,e,t,"weekdaysShort")},s.normalizeUnits=F,s.relativeTimeRounding=function(A){return void 0===A?Yt:"function"==typeof A&&(Yt=A,!0)},s.relativeTimeThreshold=function(A,e){return void 0!==qt[A]&&(void 0===e?qt[A]:(qt[A]=e,"s"===A&&(qt.ss=e-1),!0))},s.calendarFormat=function(A,e){var t=A.diff(e,"days",!0);return t<-6?"sameElse":t<-1?"lastWeek":t<0?"lastDay":t<1?"sameDay":t<2?"nextDay":t<7?"nextWeek":"sameElse"},s.prototype=vt,s.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},e.a=s}).call(this,t(18)(A))},function(A,e,t){"use strict";var i=t(3),n=t.n(i)()((function(A){return A[1]}));n.push([A.i,".flvWai,.flvWai>.videoFlv{\r\n width: 100%; \r\n height: 100%; \r\n}\r\n.flvWai>.videoFlv:hover{\r\n outline: none;\r\n}",""]),e.a=n},function(A,e,t){"use strict";var i=t(3),n=t.n(i)()((function(A){return A[1]}));n.push([A.i,'.timerComCss{\r\n font-family: "fontInit";\r\n color: rgb(47, 233, 242);\r\n font-size: 20px;\r\n letter-spacing: 2px;\r\n}\r\np{\r\n margin: 0;\r\n padding: 0;\r\n}',""]),e.a=n},function(A,e,t){"use strict";var i=t(3),n=t.n(i)()((function(A){return A[1]}));n.push([A.i,"img{\r\n width: 100%;\r\n}",""]),e.a=n},function(A,e,t){"use strict";var i=t(3),n=t.n(i)()((function(A){return A[1]}));n.push([A.i,"input:focus{\r\n outline: none;\r\n}\r\ninput{\r\n border-radius: 5px;\r\n}",""]),e.a=n},function(A,e,t){"use strict";var i=t(3),n=t.n(i)()((function(A){return A[1]}));n.push([A.i,".buttonFunAreaSelectPlus{\r\n position: absolute;\r\n right: -100px;\r\n top: 0;\r\n width: 100px;\r\n height: 50px;\r\n text-align: center;\r\n line-height: 50px;\r\n color: white;\r\n cursor: pointer;\r\n}\r\n.buttonFunAreaSelectPlus:nth-child(2){\r\n top: 50px;\r\n}",""]),e.a=n},function(A,e,t){"use strict";t.r(e);var i=t(4);
|
5290cb53
Zhang Zhuo
更新第一版本 -张卓
|
34
|
*/var i;i=function(){"use strict";function A(A){return"function"==typeof A}var i=Array.isArray?Array.isArray:function(A){return"[object Array]"===Object.prototype.toString.call(A)},n=0,r=void 0,s=void 0,a=function(A,e){f[n]=A,f[n+1]=e,2===(n+=2)&&(s?s(m):y())},o="undefined"!=typeof window?window:void 0,l=o||{},u=l.MutationObserver||l.WebKitMutationObserver,d="undefined"==typeof self&&void 0!==e&&"[object process]"==={}.toString.call(e),h="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel;function c(){var A=setTimeout;return function(){return A(m,1)}}var f=new Array(1e3);function m(){for(var A=0;A<n;A+=2)(0,f[A])(f[A+1]),f[A]=void 0,f[A+1]=void 0;n=0}var g,p,v,_,y=void 0;function b(A,e){var t=this,i=new this.constructor(R);void 0===i[w]&&M(i);var n=t._state;if(n){var r=arguments[n-1];a((function(){return T(n,i,r,t._result)}))}else x(t,i,A,e);return i}function E(A){if(A&&"object"==typeof A&&A.constructor===this)return A;var e=new this(R);return D(e,A),e}d?y=function(){return e.nextTick(m)}:u?(p=0,v=new u(m),_=document.createTextNode(""),v.observe(_,{characterData:!0}),y=function(){_.data=p=++p%2}):h?((g=new MessageChannel).port1.onmessage=m,y=function(){return g.port2.postMessage(0)}):y=void 0===o?function(){try{var A=Function("return this")().require("vertx");return void 0!==(r=A.runOnLoop||A.runOnContext)?function(){r(m)}:c()}catch(A){return c()}}():c();var w=Math.random().toString(36).substring(2);function R(){}function S(e,t,i){t.constructor===e.constructor&&i===b&&t.constructor.resolve===E?function(A,e){1===e._state?P(A,e._result):2===e._state?L(A,e._result):x(e,void 0,(function(e){return D(A,e)}),(function(e){return L(A,e)}))}(e,t):void 0===i?P(e,t):A(i)?function(A,e,t){a((function(A){var i=!1,n=function(A,e,t,i){try{A.call(e,t,i)}catch(A){return A}}(t,e,(function(t){i||(i=!0,e!==t?D(A,t):P(A,t))}),(function(e){i||(i=!0,L(A,e))}),A._label);!i&&n&&(i=!0,L(A,n))}),A)}(e,t,i):P(e,t)}function D(A,e){if(A===e)L(A,new TypeError("You cannot resolve a promise with itself"));else if(n=typeof(i=e),null===i||"object"!==n&&"function"!==n)P(A,e);else{var t=void 0;try{t=e.then}catch(e){return void L(A,e)}S(A,e,t)}var i,n}function O(A){A._onerror&&A._onerror(A._result),C(A)}function P(A,e){void 0===A._state&&(A._result=e,A._state=1,0!==A._subscribers.length&&a(C,A))}function L(A,e){void 0===A._state&&(A._state=2,A._result=e,a(O,A))}function x(A,e,t,i){var n=A._subscribers,r=n.length;A._onerror=null,n[r]=e,n[r+1]=t,n[r+2]=i,0===r&&A._state&&a(C,A)}function C(A){var e=A._subscribers,t=A._state;if(0!==e.length){for(var i=void 0,n=void 0,r=A._result,s=0;s<e.length;s+=3)i=e[s],n=e[s+t],i?T(t,i,n,r):n(r);A._subscribers.length=0}}function T(e,t,i,n){var r=A(i),s=void 0,a=void 0,o=!0;if(r){try{s=i(n)}catch(A){o=!1,a=A}if(t===s)return void L(t,new TypeError("A promises callback cannot return that same promise."))}else s=n;void 0!==t._state||(r&&o?D(t,s):!1===o?L(t,a):1===e?P(t,s):2===e&&L(t,s))}var B=0;function M(A){A[w]=B++,A._state=void 0,A._result=void 0,A._subscribers=[]}var I=function(){function A(A,e){this._instanceConstructor=A,this.promise=new A(R),this.promise[w]||M(this.promise),i(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?P(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&P(this.promise,this._result))):L(this.promise,new Error("Array Methods must be provided an Array"))}return A.prototype._enumerate=function(A){for(var e=0;void 0===this._state&&e<A.length;e++)this._eachEntry(A[e],e)},A.prototype._eachEntry=function(A,e){var t=this._instanceConstructor,i=t.resolve;if(i===E){var n=void 0,r=void 0,s=!1;try{n=A.then}catch(A){s=!0,r=A}if(n===b&&void 0!==A._state)this._settledAt(A._state,e,A._result);else if("function"!=typeof n)this._remaining--,this._result[e]=A;else if(t===k){var a=new t(R);s?L(a,r):S(a,A,n),this._willSettleAt(a,e)}else this._willSettleAt(new t((function(e){return e(A)})),e)}else this._willSettleAt(i(A),e)},A.prototype._settledAt=function(A,e,t){var i=this.promise;void 0===i._state&&(this._remaining--,2===A?L(i,t):this._result[e]=t),0===this._remaining&&P(i,this._result)},A.prototype._willSettleAt=function(A,e){var t=this;x(A,void 0,(function(A){return t._settledAt(1,e,A)}),(function(A){return t._settledAt(2,e,A)}))},A}(),k=function(){function e(A){this[w]=B++,this._result=this._state=void 0,this._subscribers=[],R!==A&&("function"!=typeof A&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(A,e){try{e((function(e){D(A,e)}),(function(e){L(A,e)}))}catch(e){L(A,e)}}(this,A):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}return e.prototype.catch=function(A){return this.then(null,A)},e.prototype.finally=function(e){var t=this.constructor;return A(e)?this.then((function(A){return t.resolve(e()).then((function(){return A}))}),(function(A){return t.resolve(e()).then((function(){throw A}))})):this.then(e,e)},e}();return k.prototype.then=b,k.all=function(A){return new I(this,A).promise},k.race=function(A){var e=this;return i(A)?new e((function(t,i){for(var n=A.length,r=0;r<n;r++)e.resolve(A[r]).then(t,i)})):new e((function(A,e){return e(new TypeError("You must pass an array to race."))}))},k.resolve=E,k.reject=function(A){var e=new this(R);return L(e,A),e},k._setScheduler=function(A){s=A},k._setAsap=function(A){a=A},k._asap=a,k.polyfill=function(){var A=void 0;if(void 0!==t)A=t;else if("undefined"!=typeof self)A=self;else try{A=Function("return this")()}catch(A){throw new Error("polyfill failed because global object is unavailable in this environment")}var e=A.Promise;if(e){var i=null;try{i=Object.prototype.toString.call(e.resolve())}catch(A){}if("[object Promise]"===i&&!e.cast)return}A.Promise=k},k.Promise=k,k},A.exports=i()}).call(this,t(15),t(16))},function(A,e){var t,i,n=A.exports={};function r(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(A){if(t===setTimeout)return setTimeout(A,0);if((t===r||!t)&&setTimeout)return t=setTimeout,setTimeout(A,0);try{return t(A,0)}catch(e){try{return t.call(null,A,0)}catch(e){return t.call(this,A,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:r}catch(A){t=r}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(A){i=s}}();var o,l=[],u=!1,d=-1;function h(){u&&o&&(u=!1,o.length?l=o.concat(l):d=-1,l.length&&c())}function c(){if(!u){var A=a(h);u=!0;for(var e=l.length;e;){for(o=l,l=[];++d<e;)o&&o[d].run();d=-1,e=l.length}o=null,u=!1,function(A){if(i===clearTimeout)return clearTimeout(A);if((i===s||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(A);try{i(A)}catch(e){try{return i.call(null,A)}catch(e){return i.call(this,A)}}}(A)}}function f(A,e){this.fun=A,this.array=e}function m(){}n.nextTick=function(A){var e=new Array(arguments.length-1);if(arguments.length>1)for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];l.push(new f(A,e)),1!==l.length||u||a(c)},f.prototype.run=function(){this.fun.apply(null,this.array)},n.title="browser",n.browser=!0,n.env={},n.argv=[],n.version="",n.versions={},n.on=m,n.addListener=m,n.once=m,n.off=m,n.removeListener=m,n.removeAllListeners=m,n.emit=m,n.prependListener=m,n.prependOnceListener=m,n.listeners=function(A){return[]},n.binding=function(A){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(A){throw new Error("process.chdir is not supported")},n.umask=function(){return 0}},function(A,e){var t;t=function(){return this}();try{t=t||new Function("return this")()}catch(A){"object"==typeof window&&(t=window)}A.exports=t},function(A,e){var t=arguments[3],i=arguments[4],n=arguments[5],r=JSON.stringify;A.exports=function(A,e){for(var s,a=Object.keys(n),o=0,l=a.length;o<l;o++){var u=a[o],d=n[u].exports;if(d===A||d&&d.default===A){s=u;break}}if(!s){s=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var h={};for(o=0,l=a.length;o<l;o++){h[u=a[o]]=u}i[s]=["function(require,module,exports){"+A+"(self); }",h]}var c=Math.floor(Math.pow(16,8)*Math.random()).toString(16),f={};f[s]=s,i[c]=["function(require,module,exports){var f = require("+r(s)+");(f.default ? f.default : f)(self);}",f];var m={};!function A(e){for(var t in m[e]=!0,i[e][1]){var n=i[e][1][t];m[n]||A(n)}}(c);var g="("+t+")({"+Object.keys(m).map((function(A){return r(A)+":["+i[A][0]+","+r(i[A][1])+"]"})).join(",")+"},{},["+r(c)+"])",p=window.URL||window.webkitURL||window.mozURL||window.msURL,v=new Blob([g],{type:"text/javascript"});if(e&&e.bare)return v;var _=p.createObjectURL(v),y=new Worker(_);return y.objectURL=_,y}},function(A,e){A.exports=function(A){if(!A.webpackPolyfill){var e=Object.create(A);e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),Object.defineProperty(e,"exports",{enumerable:!0}),e.webpackPolyfill=1}return e}},function(A,e,t){var i={"./zh-cn":10,"./zh-cn.js":10};function n(A){var e=r(A);return t(e)}function r(A){if(!t.o(i,A)){var e=new Error("Cannot find module '"+A+"'");throw e.code="MODULE_NOT_FOUND",e}return i[A]}n.keys=function(){return Object.keys(i)},n.resolve=r,A.exports=n,n.id=19},function(A,e){A.exports="data:image/png;base64,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"},function(A,e,t){"use strict";t.r(e),t.d(e,"FlvCom",(function(){return wA})),t.d(e,"Timer",(function(){return BA})),t.d(e,"ImgCom",(function(){return UA})),t.d(e,"AreaSelete",(function(){return JA})),t.d(e,"FunAreaSelect",(function(){return re})),t.d(e,"FunAreaSelectPlus",(function(){return me}));var i=t(0),n=t.n(i);class r{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A},Object.assign=Object.assign||function(A){if(null==A)throw new TypeError("Cannot convert undefined or null to object");let e=Object(A);for(let A=1;A<arguments.length;A++){let t=arguments[A];if(null!=t)for(let A in t)t.hasOwnProperty(A)&&(e[A]=t[A])}return e},"function"!=typeof self.Promise&&t(14).polyfill()}}r.install();var s=r,a=t(1),o=t.n(a);class l{static e(A,e){A&&!l.FORCE_GLOBAL_TAG||(A=l.GLOBAL_TAG);let t=`[${A}] > ${e}`;l.ENABLE_CALLBACK&&l.emitter.emit("log","error",t),l.ENABLE_ERROR&&(console.error?console.error(t):console.warn?console.warn(t):console.log(t))}static i(A,e){A&&!l.FORCE_GLOBAL_TAG||(A=l.GLOBAL_TAG);let t=`[${A}] > ${e}`;l.ENABLE_CALLBACK&&l.emitter.emit("log","info",t),l.ENABLE_INFO&&(console.info?console.info(t):console.log(t))}static w(A,e){A&&!l.FORCE_GLOBAL_TAG||(A=l.GLOBAL_TAG);let t=`[${A}] > ${e}`;l.ENABLE_CALLBACK&&l.emitter.emit("log","warn",t),l.ENABLE_WARN&&(console.warn?console.warn(t):console.log(t))}static d(A,e){A&&!l.FORCE_GLOBAL_TAG||(A=l.GLOBAL_TAG);let t=`[${A}] > ${e}`;l.ENABLE_CALLBACK&&l.emitter.emit("log","debug",t),l.ENABLE_DEBUG&&(console.debug?console.debug(t):console.log(t))}static v(A,e){A&&!l.FORCE_GLOBAL_TAG||(A=l.GLOBAL_TAG);let t=`[${A}] > ${e}`;l.ENABLE_CALLBACK&&l.emitter.emit("log","verbose",t),l.ENABLE_VERBOSE&&console.log(t)}}l.GLOBAL_TAG="flv.js",l.FORCE_GLOBAL_TAG=!1,l.ENABLE_ERROR=!0,l.ENABLE_INFO=!0,l.ENABLE_WARN=!0,l.ENABLE_DEBUG=!0,l.ENABLE_VERBOSE=!0,l.ENABLE_CALLBACK=!1,l.emitter=new o.a;var u=l;var d=class{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(A){0===this._firstCheckpoint?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=A,this._totalBytes+=A):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=A,this._totalBytes+=A):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=A,this._totalBytes+=A,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let A=(this._now()-this._lastCheckpoint)/1e3;return 0==A&&(A=1),this._intervalBytes/A/1024}get lastSecondKBps(){return this.addBytes(0),0!==this._lastSecondBytes?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let A=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/A/1024}};class h{constructor(A){this._message=A}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class c extends h{constructor(A){super(A)}get name(){return"IllegalStateException"}}class f extends h{constructor(A){super(A)}get name(){return"InvalidArgumentException"}}class m extends h{constructor(A){super(A)}get name(){return"NotImplementedException"}}const g={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},p={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class v{constructor(A){this._type=A||"undefined",this._status=g.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=g.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===g.kConnecting||this._status===g.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(A){this._onContentLengthKnown=A}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(A){this._onURLRedirect=A}get onDataArrival(){return this._onDataArrival}set onDataArrival(A){this._onDataArrival=A}get onError(){return this._onError}set onError(A){this._onError=A}get onComplete(){return this._onComplete}set onComplete(A){this._onComplete=A}open(A,e){throw new m("Unimplemented abstract function!")}abort(){throw new m("Unimplemented abstract function!")}}let _={};!function(){let A=self.navigator.userAgent.toLowerCase(),e=/(edge)\/([\w.]+)/.exec(A)||/(opr)[\/]([\w.]+)/.exec(A)||/(chrome)[ \/]([\w.]+)/.exec(A)||/(iemobile)[\/]([\w.]+)/.exec(A)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(A)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(A)||/(webkit)[ \/]([\w.]+)/.exec(A)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(A)||/(msie) ([\w.]+)/.exec(A)||A.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(A)||A.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(A)||[],t=/(ipad)/.exec(A)||/(ipod)/.exec(A)||/(windows phone)/.exec(A)||/(iphone)/.exec(A)||/(kindle)/.exec(A)||/(android)/.exec(A)||/(windows)/.exec(A)||/(mac)/.exec(A)||/(linux)/.exec(A)||/(cros)/.exec(A)||[],i={browser:e[5]||e[3]||e[1]||"",version:e[2]||e[4]||"0",majorVersion:e[4]||e[2]||"0",platform:t[0]||""},n={};if(i.browser){n[i.browser]=!0;let A=i.majorVersion.split(".");n.version={major:parseInt(i.majorVersion,10),string:i.version},A.length>1&&(n.version.minor=parseInt(A[1],10)),A.length>2&&(n.version.build=parseInt(A[2],10))}if(i.platform&&(n[i.platform]=!0),(n.chrome||n.opr||n.safari)&&(n.webkit=!0),n.rv||n.iemobile){n.rv&&delete n.rv;let A="msie";i.browser=A,n[A]=!0}if(n.edge){delete n.edge;let A="msedge";i.browser=A,n[A]=!0}if(n.opr){let A="opera";i.browser=A,n[A]=!0}if(n.safari&&n.android){let A="android";i.browser=A,n[A]=!0}n.name=i.browser,n.platform=i.platform;for(let A in _)_.hasOwnProperty(A)&&delete _[A];Object.assign(_,n)}();var y=_;var b=class extends v{static isSupported(){try{let A=y.msedge&&y.version.minor>=15048,e=!y.msedge||A;return self.fetch&&self.ReadableStream&&e}catch(A){return!1}}constructor(A,e){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=A,this._config=e,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(A,e){this._dataSource=A,this._range=e;let t=A.url;this._config.reuseRedirectedURL&&null!=A.redirectedURL&&(t=A.redirectedURL);let i=this._seekHandler.getConfig(t,e),n=new self.Headers;if("object"==typeof i.headers){let A=i.headers;for(let e in A)A.hasOwnProperty(e)&&n.append(e,A[e])}let r={method:"GET",headers:n,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if("object"==typeof this._config.headers)for(let A in this._config.headers)n.append(A,this._config.headers[A]);!1===A.cors&&(r.mode="same-origin"),A.withCredentials&&(r.credentials="include"),A.referrerPolicy&&(r.referrerPolicy=A.referrerPolicy),this._status=g.kConnecting,self.fetch(i.url,r).then(A=>{if(this._requestAbort)return this._requestAbort=!1,void(this._status=g.kIdle);if(A.ok&&A.status>=200&&A.status<=299){if(A.url!==i.url&&this._onURLRedirect){let e=this._seekHandler.removeURLParameters(A.url);this._onURLRedirect(e)}let e=A.headers.get("Content-Length");return null!=e&&(this._contentLength=parseInt(e),0!==this._contentLength&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,A.body.getReader())}if(this._status=g.kError,!this._onError)throw new h("FetchStreamLoader: Http code invalid, "+A.status+" "+A.statusText);this._onError(p.HTTP_STATUS_CODE_INVALID,{code:A.status,msg:A.statusText})}).catch(A=>{if(this._status=g.kError,!this._onError)throw A;this._onError(p.EXCEPTION,{code:-1,msg:A.message})})}abort(){this._requestAbort=!0}_pump(A){return A.read().then(e=>{if(e.done)if(null!==this._contentLength&&this._receivedLength<this._contentLength){this._status=g.kError;let A=p.EARLY_EOF,e={code:-1,msg:"Fetch stream meet Early-EOF"};if(!this._onError)throw new h(e.msg);this._onError(A,e)}else this._status=g.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1);else{if(!0===this._requestAbort)return this._requestAbort=!1,this._status=g.kComplete,A.cancel();this._status=g.kBuffering;let t=e.value.buffer,i=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength),this._pump(A)}}).catch(A=>{if(11===A.code&&y.msedge)return;this._status=g.kError;let e=0,t=null;if(19!==A.code&&"network error"!==A.message||!(null===this._contentLength||null!==this._contentLength&&this._receivedLength<this._contentLength)?(e=p.EXCEPTION,t={code:A.code,msg:A.message}):(e=p.EARLY_EOF,t={code:A.code,msg:"Fetch stream meet Early-EOF"}),!this._onError)throw new h(t.msg);this._onError(e,t)})}};var E=class extends v{static isSupported(){try{let A=new XMLHttpRequest;return A.open("GET","https://example.com",!0),A.responseType="moz-chunked-arraybuffer","moz-chunked-arraybuffer"===A.responseType}catch(A){return u.w("MozChunkedLoader",A.message),!1}}constructor(A,e){super("xhr-moz-chunked-loader"),this.TAG="MozChunkedLoader",this._seekHandler=A,this._config=e,this._needStash=!0,this._xhr=null,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}open(A,e){this._dataSource=A,this._range=e;let t=A.url;this._config.reuseRedirectedURL&&null!=A.redirectedURL&&(t=A.redirectedURL);let i=this._seekHandler.getConfig(t,e);this._requestURL=i.url;let n=this._xhr=new XMLHttpRequest;if(n.open("GET",i.url,!0),n.responseType="moz-chunked-arraybuffer",n.onreadystatechange=this._onReadyStateChange.bind(this),n.onprogress=this._onProgress.bind(this),n.onloadend=this._onLoadEnd.bind(this),n.onerror=this._onXhrError.bind(this),A.withCredentials&&(n.withCredentials=!0),"object"==typeof i.headers){let A=i.headers;for(let e in A)A.hasOwnProperty(e)&&n.setRequestHeader(e,A[e])}if("object"==typeof this._config.headers){let A=this._config.headers;for(let e in A)A.hasOwnProperty(e)&&n.setRequestHeader(e,A[e])}this._status=g.kConnecting,n.send()}abort(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=g.kComplete}_onReadyStateChange(A){let e=A.target;if(2===e.readyState){if(null!=e.responseURL&&e.responseURL!==this._requestURL&&this._onURLRedirect){let A=this._seekHandler.removeURLParameters(e.responseURL);this._onURLRedirect(A)}if(0!==e.status&&(e.status<200||e.status>299)){if(this._status=g.kError,!this._onError)throw new h("MozChunkedLoader: Http code invalid, "+e.status+" "+e.statusText);this._onError(p.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})}else this._status=g.kBuffering}}_onProgress(A){if(this._status===g.kError)return;null===this._contentLength&&null!==A.total&&0!==A.total&&(this._contentLength=A.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let e=A.target.response,t=this._range.from+this._receivedLength;this._receivedLength+=e.byteLength,this._onDataArrival&&this._onDataArrival(e,t,this._receivedLength)}_onLoadEnd(A){!0!==this._requestAbort?this._status!==g.kError&&(this._status=g.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)):this._requestAbort=!1}_onXhrError(A){this._status=g.kError;let e=0,t=null;if(this._contentLength&&A.loaded<this._contentLength?(e=p.EARLY_EOF,t={code:-1,msg:"Moz-Chunked stream meet Early-Eof"}):(e=p.EXCEPTION,t={code:-1,msg:A.constructor.name+" "+A.type}),!this._onError)throw new h(t.msg);this._onError(e,t)}};var w=class extends v{static isSupported(){try{let A=new XMLHttpRequest;return A.open("GET","https://example.com",!0),A.responseType="arraybuffer","arraybuffer"===A.responseType}catch(A){return u.w("RangeLoader",A.message),!1}}constructor(A,e){super("xhr-range-loader"),this.TAG="RangeLoader",this._seekHandler=A,this._config=e,this._needStash=!1,this._chunkSizeKBList=[128,256,384,512,768,1024,1536,2048,3072,4096,5120,6144,7168,8192],this._currentChunkSizeKB=384,this._currentSpeedNormalized=0,this._zeroSpeedChunkCount=0,this._xhr=null,this._speedSampler=new d,this._requestAbort=!1,this._waitForTotalLength=!1,this._totalLengthReceived=!1,this._currentRequestURL=null,this._currentRedirectedURL=null,this._currentRequestRange=null,this._totalLength=null,this._contentLength=null,this._receivedLength=0,this._lastTimeLoaded=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}get currentSpeed(){return this._speedSampler.lastSecondKBps}open(A,e){this._dataSource=A,this._range=e,this._status=g.kConnecting;let t=!1;null!=this._dataSource.filesize&&0!==this._dataSource.filesize&&(t=!0,this._totalLength=this._dataSource.filesize),this._totalLengthReceived||t?this._openSubRange():(this._waitForTotalLength=!0,this._internalOpen(this._dataSource,{from:0,to:-1}))}_openSubRange(){let A=1024*this._currentChunkSizeKB,e=this._range.from+this._receivedLength,t=e+A;null!=this._contentLength&&t-this._range.from>=this._contentLength&&(t=this._range.from+this._contentLength-1),this._currentRequestRange={from:e,to:t},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(A,e){this._lastTimeLoaded=0;let t=A.url;this._config.reuseRedirectedURL&&(null!=this._currentRedirectedURL?t=this._currentRedirectedURL:null!=A.redirectedURL&&(t=A.redirectedURL));let i=this._seekHandler.getConfig(t,e);this._currentRequestURL=i.url;let n=this._xhr=new XMLHttpRequest;if(n.open("GET",i.url,!0),n.responseType="arraybuffer",n.onreadystatechange=this._onReadyStateChange.bind(this),n.onprogress=this._onProgress.bind(this),n.onload=this._onLoad.bind(this),n.onerror=this._onXhrError.bind(this),A.withCredentials&&(n.withCredentials=!0),"object"==typeof i.headers){let A=i.headers;for(let e in A)A.hasOwnProperty(e)&&n.setRequestHeader(e,A[e])}if("object"==typeof this._config.headers){let A=this._config.headers;for(let e in A)A.hasOwnProperty(e)&&n.setRequestHeader(e,A[e])}n.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=g.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(A){let e=A.target;if(2===e.readyState){if(null!=e.responseURL){let A=this._seekHandler.removeURLParameters(e.responseURL);e.responseURL!==this._currentRequestURL&&A!==this._currentRedirectedURL&&(this._currentRedirectedURL=A,this._onURLRedirect&&this._onURLRedirect(A))}if(e.status>=200&&e.status<=299){if(this._waitForTotalLength)return;this._status=g.kBuffering}else{if(this._status=g.kError,!this._onError)throw new h("RangeLoader: Http code invalid, "+e.status+" "+e.statusText);this._onError(p.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})}}}_onProgress(A){if(this._status===g.kError)return;if(null===this._contentLength){let e=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,e=!0;let t=A.total;this._internalAbort(),null!=t&0!==t&&(this._totalLength=t)}if(-1===this._range.to?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,e)return void this._openSubRange();this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let e=A.loaded-this._lastTimeLoaded;this._lastTimeLoaded=A.loaded,this._speedSampler.addBytes(e)}_normalizeSpeed(A){let e=this._chunkSizeKBList,t=e.length-1,i=0,n=0,r=t;if(A<e[0])return e[0];for(;n<=r;){if(i=n+Math.floor((r-n)/2),i===t||A>=e[i]&&A<e[i+1])return e[i];e[i]<A?n=i+1:r=i-1}}_onLoad(A){if(this._status===g.kError)return;if(this._waitForTotalLength)return void(this._waitForTotalLength=!1);this._lastTimeLoaded=0;let e=this._speedSampler.lastSecondKBps;if(0===e&&(this._zeroSpeedChunkCount++,this._zeroSpeedChunkCount>=3&&(e=this._speedSampler.currentKBps)),0!==e){let A=this._normalizeSpeed(e);this._currentSpeedNormalized!==A&&(this._currentSpeedNormalized=A,this._currentChunkSizeKB=A)}let t=A.target.response,i=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength;let n=!1;null!=this._contentLength&&this._receivedLength<this._contentLength?this._openSubRange():n=!0,this._onDataArrival&&this._onDataArrival(t,i,this._receivedLength),n&&(this._status=g.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1))}_onXhrError(A){this._status=g.kError;let e=0,t=null;if(this._contentLength&&this._receivedLength>0&&this._receivedLength<this._contentLength?(e=p.EARLY_EOF,t={code:-1,msg:"RangeLoader meet Early-Eof"}):(e=p.EXCEPTION,t={code:-1,msg:A.constructor.name+" "+A.type}),!this._onError)throw new h(t.msg);this._onError(e,t)}};var R=class extends v{static isSupported(){try{return void 0!==self.WebSocket}catch(A){return!1}}constructor(){super("websocket-loader"),this.TAG="WebSocketLoader",this._needStash=!0,this._ws=null,this._requestAbort=!1,this._receivedLength=0}destroy(){this._ws&&this.abort(),super.destroy()}open(A){try{let e=this._ws=new self.WebSocket(A.url);e.binaryType="arraybuffer",e.onopen=this._onWebSocketOpen.bind(this),e.onclose=this._onWebSocketClose.bind(this),e.onmessage=this._onWebSocketMessage.bind(this),e.onerror=this._onWebSocketError.bind(this),this._status=g.kConnecting}catch(A){this._status=g.kError;let e={code:A.code,msg:A.message};if(!this._onError)throw new h(e.msg);this._onError(p.EXCEPTION,e)}}abort(){let A=this._ws;!A||0!==A.readyState&&1!==A.readyState||(this._requestAbort=!0,A.close()),this._ws=null,this._status=g.kComplete}_onWebSocketOpen(A){this._status=g.kBuffering}_onWebSocketClose(A){!0!==this._requestAbort?(this._status=g.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)):this._requestAbort=!1}_onWebSocketMessage(A){if(A.data instanceof ArrayBuffer)this._dispatchArrayBuffer(A.data);else if(A.data instanceof Blob){let e=new FileReader;e.onload=()=>{this._dispatchArrayBuffer(e.result)},e.readAsArrayBuffer(A.data)}else{this._status=g.kError;let e={code:-1,msg:"Unsupported WebSocket message type: "+A.data.constructor.name};if(!this._onError)throw new h(e.msg);this._onError(p.EXCEPTION,e)}}_dispatchArrayBuffer(A){let e=A,t=this._receivedLength;this._receivedLength+=e.byteLength,this._onDataArrival&&this._onDataArrival(e,t,this._receivedLength)}_onWebSocketError(A){this._status=g.kError;let e={code:A.code,msg:A.message};if(!this._onError)throw new h(e.msg);this._onError(p.EXCEPTION,e)}};var S=class{constructor(A){this._zeroStart=A||!1}getConfig(A,e){let t={};if(0!==e.from||-1!==e.to){let A;A=-1!==e.to?`bytes=${e.from.toString()}-${e.to.toString()}`:`bytes=${e.from.toString()}-`,t.Range=A}else this._zeroStart&&(t.Range="bytes=0-");return{url:A,headers:t}}removeURLParameters(A){return A}};var D=class{constructor(A,e){this._startName=A,this._endName=e}getConfig(A,e){let t=A;if(0!==e.from||-1!==e.to){let A=!0;-1===t.indexOf("?")&&(t+="?",A=!1),A&&(t+="&"),t+=`${this._startName}=${e.from.toString()}`,-1!==e.to&&(t+=`&${this._endName}=${e.to.toString()}`)}return{url:t,headers:{}}}removeURLParameters(A){let e=A.split("?")[0],t=void 0,i=A.indexOf("?");-1!==i&&(t=A.substring(i+1));let n="";if(null!=t&&t.length>0){let A=t.split("&");for(let e=0;e<A.length;e++){let t=A[e].split("="),i=e>0;t[0]!==this._startName&&t[0]!==this._endName&&(i&&(n+="&"),n+=A[e])}}return 0===n.length?e:e+"?"+n}};var O=class{constructor(A,e,t){this.TAG="IOController",this._config=e,this._extraData=t,this._stashInitialSize=393216,null!=e.stashInitialSize&&e.stashInitialSize>0&&(this._stashInitialSize=e.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=3145728,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,!1===e.enableStashBuffer&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=A,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(A.url),this._refTotalLength=A.filesize?A.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new d,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(A){this._extraData=A}get onDataArrival(){return this._onDataArrival}set onDataArrival(A){this._onDataArrival=A}get onSeeked(){return this._onSeeked}set onSeeked(A){this._onSeeked=A}get onError(){return this._onError}set onError(A){this._onError=A}get onComplete(){return this._onComplete}set onComplete(A){this._onComplete=A}get onRedirect(){return this._onRedirect}set onRedirect(A){this._onRedirect=A}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(A){this._onRecoveredEarlyEof=A}get currentURL(){return this._dataSource.url}get hasRedirect(){return null!=this._redirectedURL||null!=this._dataSource.redirectedURL}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===w?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let A=this._config;if("range"===A.seekType)this._seekHandler=new S(this._config.rangeLoadZeroStart);else if("param"===A.seekType){let e=A.seekParamStart||"bstart",t=A.seekParamEnd||"bend";this._seekHandler=new D(e,t)}else{if("custom"!==A.seekType)throw new f("Invalid seekType in config: "+A.seekType);if("function"!=typeof A.customSeekHandler)throw new f("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new A.customSeekHandler}}_selectLoader(){if(null!=this._config.customLoader)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=R;else if(b.isSupported())this._loaderClass=b;else if(E.isSupported())this._loaderClass=E;else{if(!w.isSupported())throw new h("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=w}}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),!1===this._loader.needStashBuffer&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(A){this._currentRange={from:0,to:-1},A&&(this._currentRange.from=A),this._speedSampler.reset(),A||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),0!==this._stashUsed?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let A=this._resumeFrom;this._resumeFrom=0,this._internalSeek(A,!0)}}seek(A){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(A,!0)}_internalSeek(A,e){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(e),this._loader.destroy(),this._loader=null;let t={from:A,to:-1};this._currentRange={from:t.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,t),this._onSeeked&&this._onSeeked()}updateUrl(A){if(!A||"string"!=typeof A||0===A.length)throw new f("Url must be a non-empty string!");this._dataSource.url=A}_expandBuffer(A){let e=this._stashSize;for(;e+1048576<A;)e*=2;if(e+=1048576,e===this._bufferSize)return;let t=new ArrayBuffer(e);if(this._stashUsed>0){let A=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(t,0,e).set(A,0)}this._stashBuffer=t,this._bufferSize=e}_normalizeSpeed(A){let e=this._speedNormalizeList,t=e.length-1,i=0,n=0,r=t;if(A<e[0])return e[0];for(;n<=r;){if(i=n+Math.floor((r-n)/2),i===t||A>=e[i]&&A<e[i+1])return e[i];e[i]<A?n=i+1:r=i-1}}_adjustStashSize(A){let e=0;e=this._config.isLive||A<512?A:A>=512&&A<=1024?Math.floor(1.5*A):2*A,e>8192&&(e=8192);let t=1024*e+1048576;this._bufferSize<t&&this._expandBuffer(t),this._stashSize=1024*e}_dispatchChunks(A,e){return this._currentRange.to=e+A.byteLength-1,this._onDataArrival(A,e)}_onURLRedirect(A){this._redirectedURL=A,this._onRedirect&&this._onRedirect(A)}_onContentLengthKnown(A){A&&this._fullRequestFlag&&(this._totalLength=A,this._fullRequestFlag=!1)}_onLoaderChunkArrival(A,e,t){if(!this._onDataArrival)throw new c("IOController: No existing consumer (onDataArrival) callback!");if(this._paused)return;this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,this._onRecoveredEarlyEof&&this._onRecoveredEarlyEof()),this._speedSampler.addBytes(A.byteLength);let i=this._speedSampler.lastSecondKBps;if(0!==i){let A=this._normalizeSpeed(i);this._speedNormalized!==A&&(this._speedNormalized=A,this._adjustStashSize(A))}if(this._enableStash)if(0===this._stashUsed&&0===this._stashByteStart&&(this._stashByteStart=e),this._stashUsed+A.byteLength<=this._stashSize){new Uint8Array(this._stashBuffer,0,this._stashSize).set(new Uint8Array(A),this._stashUsed),this._stashUsed+=A.byteLength}else{let t=new Uint8Array(this._stashBuffer,0,this._bufferSize);if(this._stashUsed>0){let e=this._stashBuffer.slice(0,this._stashUsed),i=this._dispatchChunks(e,this._stashByteStart);if(i<e.byteLength){if(i>0){let A=new Uint8Array(e,i);t.set(A,0),this._stashUsed=A.byteLength,this._stashByteStart+=i}}else this._stashUsed=0,this._stashByteStart+=i;this._stashUsed+A.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+A.byteLength),t=new Uint8Array(this._stashBuffer,0,this._bufferSize)),t.set(new Uint8Array(A),this._stashUsed),this._stashUsed+=A.byteLength}else{let i=this._dispatchChunks(A,e);if(i<A.byteLength){let n=A.byteLength-i;n>this._bufferSize&&(this._expandBuffer(n),t=new Uint8Array(this._stashBuffer,0,this._bufferSize)),t.set(new Uint8Array(A,i),0),this._stashUsed+=n,this._stashByteStart=e+i}}}else if(0===this._stashUsed){let t=this._dispatchChunks(A,e);if(t<A.byteLength){let i=A.byteLength-t;i>this._bufferSize&&this._expandBuffer(i),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(A,t),0),this._stashUsed+=i,this._stashByteStart=e+t}}else{this._stashUsed+A.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+A.byteLength);let e=new Uint8Array(this._stashBuffer,0,this._bufferSize);e.set(new Uint8Array(A),this._stashUsed),this._stashUsed+=A.byteLength;let t=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(t<this._stashUsed&&t>0){let A=new Uint8Array(this._stashBuffer,t);e.set(A,0)}this._stashUsed-=t,this._stashByteStart+=t}}_flushStashBuffer(A){if(this._stashUsed>0){let e=this._stashBuffer.slice(0,this._stashUsed),t=this._dispatchChunks(e,this._stashByteStart),i=e.byteLength-t;if(t<e.byteLength){if(!A){if(t>0){let A=new Uint8Array(this._stashBuffer,0,this._bufferSize),i=new Uint8Array(e,t);A.set(i,0),this._stashUsed=i.byteLength,this._stashByteStart+=t}return 0}u.w(this.TAG,i+" bytes unconsumed data remain when flush buffer, dropped")}return this._stashUsed=0,this._stashByteStart=0,i}return 0}_onLoaderComplete(A,e){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(A,e){switch(u.e(this.TAG,`Loader error, code = ${e.code}, msg = ${e.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,A=p.UNRECOVERABLE_EARLY_EOF),A){case p.EARLY_EOF:if(!this._config.isLive&&this._totalLength){let A=this._currentRange.to+1;return void(A<this._totalLength&&(u.w(this.TAG,"Connection lost, trying reconnect..."),this._isEarlyEofReconnecting=!0,this._internalSeek(A,!1)))}A=p.UNRECOVERABLE_EARLY_EOF}if(!this._onError)throw new h("IOException: "+e.msg);this._onError(A,e)}};const P={enableWorker:!1,enableStashBuffer:!0,stashInitialSize:void 0,isLive:!1,lazyLoad:!0,lazyLoadMaxDuration:180,lazyLoadRecoverDuration:30,deferLoadAfterSourceOpen:!0,autoCleanupMaxBackwardDuration:180,autoCleanupMinBackwardDuration:120,statisticsInfoReportInterval:600,fixAudioTimestampGap:!0,accurateSeek:!1,seekType:"range",seekParamStart:"bstart",seekParamEnd:"bend",rangeLoadZeroStart:!1,customSeekHandler:void 0,reuseRedirectedURL:!1,headers:void 0,customLoader:void 0};function L(){return Object.assign({},P)}class x{static supportMSEH264Playback(){return window.MediaSource&&window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')}static supportNetworkStreamIO(){let A=new O({},L()),e=A.loaderType;return A.destroy(),"fetch-stream-loader"==e||"xhr-moz-chunked-loader"==e}static getNetworkLoaderTypeName(){let A=new O({},L()),e=A.loaderType;return A.destroy(),e}static supportNativeMediaPlayback(A){null==x.videoElement&&(x.videoElement=window.document.createElement("video"));let e=x.videoElement.canPlayType(A);return"probably"===e||"maybe"==e}static getFeatureList(){let A={mseFlvPlayback:!1,mseLiveFlvPlayback:!1,networkStreamIO:!1,networkLoaderName:"",nativeMP4H264Playback:!1,nativeWebmVP8Playback:!1,nativeWebmVP9Playback:!1};return A.mseFlvPlayback=x.supportMSEH264Playback(),A.networkStreamIO=x.supportNetworkStreamIO(),A.networkLoaderName=x.getNetworkLoaderTypeName(),A.mseLiveFlvPlayback=A.mseFlvPlayback&&A.networkStreamIO,A.nativeMP4H264Playback=x.supportNativeMediaPlayback('video/mp4; codecs="avc1.42001E, mp4a.40.2"'),A.nativeWebmVP8Playback=x.supportNativeMediaPlayback('video/webm; codecs="vp8.0, vorbis"'),A.nativeWebmVP9Playback=x.supportNativeMediaPlayback('video/webm; codecs="vp9"'),A}}var C=x;var T={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"};class B{static get forceGlobalTag(){return u.FORCE_GLOBAL_TAG}static set forceGlobalTag(A){u.FORCE_GLOBAL_TAG=A,B._notifyChange()}static get globalTag(){return u.GLOBAL_TAG}static set globalTag(A){u.GLOBAL_TAG=A,B._notifyChange()}static get enableAll(){return u.ENABLE_VERBOSE&&u.ENABLE_DEBUG&&u.ENABLE_INFO&&u.ENABLE_WARN&&u.ENABLE_ERROR}static set enableAll(A){u.ENABLE_VERBOSE=A,u.ENABLE_DEBUG=A,u.ENABLE_INFO=A,u.ENABLE_WARN=A,u.ENABLE_ERROR=A,B._notifyChange()}static get enableDebug(){return u.ENABLE_DEBUG}static set enableDebug(A){u.ENABLE_DEBUG=A,B._notifyChange()}static get enableVerbose(){return u.ENABLE_VERBOSE}static set enableVerbose(A){u.ENABLE_VERBOSE=A,B._notifyChange()}static get enableInfo(){return u.ENABLE_INFO}static set enableInfo(A){u.ENABLE_INFO=A,B._notifyChange()}static get enableWarn(){return u.ENABLE_WARN}static set enableWarn(A){u.ENABLE_WARN=A,B._notifyChange()}static get enableError(){return u.ENABLE_ERROR}static set enableError(A){u.ENABLE_ERROR=A,B._notifyChange()}static getConfig(){return{globalTag:u.GLOBAL_TAG,forceGlobalTag:u.FORCE_GLOBAL_TAG,enableVerbose:u.ENABLE_VERBOSE,enableDebug:u.ENABLE_DEBUG,enableInfo:u.ENABLE_INFO,enableWarn:u.ENABLE_WARN,enableError:u.ENABLE_ERROR,enableCallback:u.ENABLE_CALLBACK}}static applyConfig(A){u.GLOBAL_TAG=A.globalTag,u.FORCE_GLOBAL_TAG=A.forceGlobalTag,u.ENABLE_VERBOSE=A.enableVerbose,u.ENABLE_DEBUG=A.enableDebug,u.ENABLE_INFO=A.enableInfo,u.ENABLE_WARN=A.enableWarn,u.ENABLE_ERROR=A.enableError,u.ENABLE_CALLBACK=A.enableCallback}static _notifyChange(){let A=B.emitter;if(A.listenerCount("change")>0){let e=B.getConfig();A.emit("change",e)}}static registerListener(A){B.emitter.addListener("change",A)}static removeListener(A){B.emitter.removeListener("change",A)}static addLogListener(A){u.emitter.addListener("log",A),u.emitter.listenerCount("log")>0&&(u.ENABLE_CALLBACK=!0,B._notifyChange())}static removeLogListener(A){u.emitter.removeListener("log",A),0===u.emitter.listenerCount("log")&&(u.ENABLE_CALLBACK=!1,B._notifyChange())}}B.emitter=new o.a;var M=B;var I=class{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let A=!1===this.hasAudio||!0===this.hasAudio&&null!=this.audioCodec&&null!=this.audioSampleRate&&null!=this.audioChannelCount,e=!1===this.hasVideo||!0===this.hasVideo&&null!=this.videoCodec&&null!=this.width&&null!=this.height&&null!=this.fps&&null!=this.profile&&null!=this.level&&null!=this.refFrames&&null!=this.chromaFormat&&null!=this.sarNum&&null!=this.sarDen;return null!=this.mimeType&&null!=this.duration&&null!=this.metadata&&null!=this.hasKeyframesIndex&&A&&e}isSeekable(){return!0===this.hasKeyframesIndex}getNearestKeyframe(A){if(null==this.keyframesIndex)return null;let e=this.keyframesIndex,t=this._search(e.times,A);return{index:t,milliseconds:e.times[t],fileposition:e.filepositions[t]}}_search(A,e){let t=0,i=A.length-1,n=0,r=0,s=i;for(e<A[0]&&(t=0,r=s+1);r<=s;){if(n=r+Math.floor((s-r)/2),n===i||e>=A[n]&&e<A[n+1]){t=n;break}A[n]<e?r=n+1:s=n-1}return t}};function k(A,e,t){let i=A;if(e+t<i.length){for(;t--;)if(128!=(192&i[++e]))return!1;return!0}return!1}var z=function(A){let e=[],t=A,i=0,n=A.length;for(;i<n;)if(t[i]<128)e.push(String.fromCharCode(t[i])),++i;else{if(t[i]<192);else if(t[i]<224){if(k(t,i,1)){let A=(31&t[i])<<6|63&t[i+1];if(A>=128){e.push(String.fromCharCode(65535&A)),i+=2;continue}}}else if(t[i]<240){if(k(t,i,2)){let A=(15&t[i])<<12|(63&t[i+1])<<6|63&t[i+2];if(A>=2048&&55296!=(63488&A)){e.push(String.fromCharCode(65535&A)),i+=3;continue}}}else if(t[i]<248&&k(t,i,3)){let A=(7&t[i])<<18|(63&t[i+1])<<12|(63&t[i+2])<<6|63&t[i+3];if(A>65536&&A<1114112){A-=65536,e.push(String.fromCharCode(A>>>10|55296)),e.push(String.fromCharCode(1023&A|56320)),i+=4;continue}}e.push(String.fromCharCode(65533)),++i}return e.join("")};let j=function(){let A=new ArrayBuffer(2);return new DataView(A).setInt16(0,256,!0),256===new Int16Array(A)[0]}();class H{static parseScriptData(A,e,t){let i={};try{let n=H.parseValue(A,e,t),r=H.parseValue(A,e+n.size,t-n.size);i[n.data]=r.data}catch(A){u.e("AMF",A.toString())}return i}static parseObject(A,e,t){if(t<3)throw new c("Data not enough when parse ScriptDataObject");let i=H.parseString(A,e,t),n=H.parseValue(A,e+i.size,t-i.size),r=n.objectEnd;return{data:{name:i.data,value:n.data},size:i.size+n.size,objectEnd:r}}static parseVariable(A,e,t){return H.parseObject(A,e,t)}static parseString(A,e,t){if(t<2)throw new c("Data not enough when parse String");let i,n=new DataView(A,e,t).getUint16(0,!j);return i=n>0?z(new Uint8Array(A,e+2,n)):"",{data:i,size:2+n}}static parseLongString(A,e,t){if(t<4)throw new c("Data not enough when parse LongString");let i,n=new DataView(A,e,t).getUint32(0,!j);return i=n>0?z(new Uint8Array(A,e+4,n)):"",{data:i,size:4+n}}static parseDate(A,e,t){if(t<10)throw new c("Data size invalid when parse Date");let i=new DataView(A,e,t),n=i.getFloat64(0,!j);return n+=60*i.getInt16(8,!j)*1e3,{data:new Date(n),size:10}}static parseValue(A,e,t){if(t<1)throw new c("Data not enough when parse Value");let i,n=new DataView(A,e,t),r=1,s=n.getUint8(0),a=!1;try{switch(s){case 0:i=n.getFloat64(1,!j),r+=8;break;case 1:i=!!n.getUint8(1),r+=1;break;case 2:{let n=H.parseString(A,e+1,t-1);i=n.data,r+=n.size;break}case 3:{i={};let s=0;for(9==(16777215&n.getUint32(t-4,!j))&&(s=3);r<t-4;){let n=H.parseObject(A,e+r,t-r-s);if(n.objectEnd)break;i[n.data.name]=n.data.value,r+=n.size}if(r<=t-3){9===(16777215&n.getUint32(r-1,!j))&&(r+=3)}break}case 8:{i={},r+=4;let s=0;for(9==(16777215&n.getUint32(t-4,!j))&&(s=3);r<t-8;){let n=H.parseVariable(A,e+r,t-r-s);if(n.objectEnd)break;i[n.data.name]=n.data.value,r+=n.size}if(r<=t-3){9===(16777215&n.getUint32(r-1,!j))&&(r+=3)}break}case 9:i=void 0,r=1,a=!0;break;case 10:{i=[];let s=n.getUint32(1,!j);r+=4;for(let n=0;n<s;n++){let n=H.parseValue(A,e+r,t-r);i.push(n.data),r+=n.size}break}case 11:{let n=H.parseDate(A,e+1,t-1);i=n.data,r+=n.size;break}case 12:{let n=H.parseString(A,e+1,t-1);i=n.data,r+=n.size;break}default:r=t,u.w("AMF","Unsupported AMF value type "+s)}}catch(A){u.e("AMF",A.toString())}return{data:i,size:r,objectEnd:a}}}var N=H;var Q=class{constructor(A){this.TAG="ExpGolomb",this._buffer=A,this._buffer_index=0,this._total_bytes=A.byteLength,this._total_bits=8*A.byteLength,this._current_word=0,this._current_word_bits_left=0}destroy(){this._buffer=null}_fillCurrentWord(){let A=this._total_bytes-this._buffer_index;if(A<=0)throw new c("ExpGolomb: _fillCurrentWord() but no bytes available");let e=Math.min(4,A),t=new Uint8Array(4);t.set(this._buffer.subarray(this._buffer_index,this._buffer_index+e)),this._current_word=new DataView(t.buffer).getUint32(0,!1),this._buffer_index+=e,this._current_word_bits_left=8*e}readBits(A){if(A>32)throw new f("ExpGolomb: readBits() bits exceeded max 32bits!");if(A<=this._current_word_bits_left){let e=this._current_word>>>32-A;return this._current_word<<=A,this._current_word_bits_left-=A,e}let e=this._current_word_bits_left?this._current_word:0;e>>>=32-this._current_word_bits_left;let t=A-this._current_word_bits_left;this._fillCurrentWord();let i=Math.min(t,this._current_word_bits_left),n=this._current_word>>>32-i;return this._current_word<<=i,this._current_word_bits_left-=i,e=e<<i|n,e}readBool(){return 1===this.readBits(1)}readByte(){return this.readBits(8)}_skipLeadingZero(){let A;for(A=0;A<this._current_word_bits_left;A++)if(0!=(this._current_word&2147483648>>>A))return this._current_word<<=A,this._current_word_bits_left-=A,A;return this._fillCurrentWord(),A+this._skipLeadingZero()}readUEG(){let A=this._skipLeadingZero();return this.readBits(A+1)-1}readSEG(){let A=this.readUEG();return 1&A?A+1>>>1:-1*(A>>>1)}};class U{static _ebsp2rbsp(A){let e=A,t=e.byteLength,i=new Uint8Array(t),n=0;for(let A=0;A<t;A++)A>=2&&3===e[A]&&0===e[A-1]&&0===e[A-2]||(i[n]=e[A],n++);return new Uint8Array(i.buffer,0,n)}static parseSPS(A){let e=U._ebsp2rbsp(A),t=new Q(e);t.readByte();let i=t.readByte();t.readByte();let n=t.readByte();t.readUEG();let r=U.getProfileString(i),s=U.getLevelString(n),a=1,o=420,l=[0,420,422,444],u=8;if((100===i||110===i||122===i||244===i||44===i||83===i||86===i||118===i||128===i||138===i||144===i)&&(a=t.readUEG(),3===a&&t.readBits(1),a<=3&&(o=l[a]),u=t.readUEG()+8,t.readUEG(),t.readBits(1),t.readBool())){let A=3!==a?8:12;for(let e=0;e<A;e++)t.readBool()&&(e<6?U._skipScalingList(t,16):U._skipScalingList(t,64))}t.readUEG();let d=t.readUEG();if(0===d)t.readUEG();else if(1===d){t.readBits(1),t.readSEG(),t.readSEG();let A=t.readUEG();for(let e=0;e<A;e++)t.readSEG()}let h=t.readUEG();t.readBits(1);let c=t.readUEG(),f=t.readUEG(),m=t.readBits(1);0===m&&t.readBits(1),t.readBits(1);let g=0,p=0,v=0,_=0;t.readBool()&&(g=t.readUEG(),p=t.readUEG(),v=t.readUEG(),_=t.readUEG());let y=1,b=1,E=0,w=!0,R=0,S=0;if(t.readBool()){if(t.readBool()){let A=t.readByte(),e=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2],i=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];A>0&&A<16?(y=e[A-1],b=i[A-1]):255===A&&(y=t.readByte()<<8|t.readByte(),b=t.readByte()<<8|t.readByte())}if(t.readBool()&&t.readBool(),t.readBool()&&(t.readBits(4),t.readBool()&&t.readBits(24)),t.readBool()&&(t.readUEG(),t.readUEG()),t.readBool()){let A=t.readBits(32),e=t.readBits(32);w=t.readBool(),R=e,S=2*A,E=R/S}}let D=1;1===y&&1===b||(D=y/b);let O=0,P=0;if(0===a)O=1,P=2-m;else{O=3===a?1:2,P=(1===a?2:1)*(2-m)}let L=16*(c+1),x=16*(f+1)*(2-m);L-=(g+p)*O,x-=(v+_)*P;let C=Math.ceil(L*D);return t.destroy(),t=null,{profile_string:r,level_string:s,bit_depth:u,ref_frames:h,chroma_format:o,chroma_format_string:U.getChromaFormatString(o),frame_rate:{fixed:w,fps:E,fps_den:S,fps_num:R},sar_ratio:{width:y,height:b},codec_size:{width:L,height:x},present_size:{width:C,height:x}}}static _skipScalingList(A,e){let t=8,i=8,n=0;for(let r=0;r<e;r++)0!==i&&(n=A.readSEG(),i=(t+n+256)%256),t=0===i?t:i}static getProfileString(A){switch(A){case 66:return"Baseline";case 77:return"Main";case 88:return"Extended";case 100:return"High";case 110:return"High10";case 122:return"High422";case 244:return"High444";default:return"Unknown"}}static getLevelString(A){return(A/10).toFixed(1)}static getChromaFormatString(A){switch(A){case 420:return"4:2:0";case 422:return"4:2:2";case 444:return"4:4:4";default:return"Unknown"}}}var F=U;var G={OK:"OK",FORMAT_ERROR:"FormatError",FORMAT_UNSUPPORTED:"FormatUnsupported",CODEC_UNSUPPORTED:"CodecUnsupported"};class X{constructor(A,e){this.TAG="FLVDemuxer",this._config=e,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=A.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=A.hasAudioTrack,this._hasVideo=A.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new I,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){let A=new ArrayBuffer(2);return new DataView(A).setInt16(0,256,!0),256===new Int16Array(A)[0]}()}destroy(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}static probe(A){let e=new Uint8Array(A),t={match:!1};if(70!==e[0]||76!==e[1]||86!==e[2]||1!==e[3])return t;let i=(4&e[4])>>>2!=0,n=0!=(1&e[4]),r=(s=e)[a=5]<<24|s[a+1]<<16|s[a+2]<<8|s[a+3];var s,a;return r<9?t:{match:!0,consumed:r,dataOffset:r,hasAudioTrack:i,hasVideoTrack:n}}bindDataSource(A){return A.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(A){this._onTrackMetadata=A}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(A){this._onMediaInfo=A}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(A){this._onMetaDataArrived=A}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(A){this._onScriptDataArrived=A}get onError(){return this._onError}set onError(A){this._onError=A}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(A){this._onDataAvailable=A}get timestampBase(){return this._timestampBase}set timestampBase(A){this._timestampBase=A}get overridedDuration(){return this._duration}set overridedDuration(A){this._durationOverrided=!0,this._duration=A,this._mediaInfo.duration=A}set overridedHasAudio(A){this._hasAudioFlagOverrided=!0,this._hasAudio=A,this._mediaInfo.hasAudio=A}set overridedHasVideo(A){this._hasVideoFlagOverrided=!0,this._hasVideo=A,this._mediaInfo.hasVideo=A}resetMediaInfo(){this._mediaInfo=new I}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!(this._hasAudio||!this._hasVideo)&&this._videoInitialMetadataDispatched}parseChunks(A,e){if(!(this._onError&&this._onMediaInfo&&this._onTrackMetadata&&this._onDataAvailable))throw new c("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let t=0,i=this._littleEndian;if(0===e){if(!(A.byteLength>13))return 0;t=X.probe(A).dataOffset}if(this._firstParse){this._firstParse=!1,e+t!==this._dataOffset&&u.w(this.TAG,"First time parsing but chunk byteStart invalid!"),0!==new DataView(A,t).getUint32(0,!i)&&u.w(this.TAG,"PrevTagSize0 !== 0 !!!"),t+=4}for(;t<A.byteLength;){this._dispatch=!0;let n=new DataView(A,t);if(t+11+4>A.byteLength)break;let r=n.getUint8(0),s=16777215&n.getUint32(0,!i);if(t+11+s+4>A.byteLength)break;if(8!==r&&9!==r&&18!==r){u.w(this.TAG,`Unsupported tag type ${r}, skipped`),t+=11+s+4;continue}let a=n.getUint8(4),o=n.getUint8(5),l=n.getUint8(6)|o<<8|a<<16|n.getUint8(7)<<24;0!==(16777215&n.getUint32(7,!i))&&u.w(this.TAG,"Meet tag which has StreamID != 0!");let d=t+11;switch(r){case 8:this._parseAudioData(A,d,s,l);break;case 9:this._parseVideoData(A,d,s,l,e+t);break;case 18:this._parseScriptData(A,d,s)}let h=n.getUint32(11+s,!i);h!==11+s&&u.w(this.TAG,"Invalid PrevTagSize "+h),t+=11+s+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),t}_parseScriptData(A,e,t){let i=N.parseScriptData(A,e,t);if(i.hasOwnProperty("onMetaData")){if(null==i.onMetaData||"object"!=typeof i.onMetaData)return void u.w(this.TAG,"Invalid onMetaData structure!");this._metadata&&u.w(this.TAG,"Found another onMetaData tag!"),this._metadata=i;let A=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},A)),"boolean"==typeof A.hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=A.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),"boolean"==typeof A.hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=A.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),"number"==typeof A.audiodatarate&&(this._mediaInfo.audioDataRate=A.audiodatarate),"number"==typeof A.videodatarate&&(this._mediaInfo.videoDataRate=A.videodatarate),"number"==typeof A.width&&(this._mediaInfo.width=A.width),"number"==typeof A.height&&(this._mediaInfo.height=A.height),"number"==typeof A.duration){if(!this._durationOverrided){let e=Math.floor(A.duration*this._timescale);this._duration=e,this._mediaInfo.duration=e}}else this._mediaInfo.duration=0;if("number"==typeof A.framerate){let e=Math.floor(1e3*A.framerate);if(e>0){let A=e/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=A,this._referenceFrameRate.fps_num=e,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=A}}if("object"==typeof A.keyframes){this._mediaInfo.hasKeyframesIndex=!0;let e=A.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(e),A.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=A,u.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(i).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},i))}_parseKeyframesIndex(A){let e=[],t=[];for(let i=1;i<A.times.length;i++){let n=this._timestampBase+Math.floor(1e3*A.times[i]);e.push(n),t.push(A.filepositions[i])}return{times:e,filepositions:t}}_parseAudioData(A,e,t,i){if(t<=1)return void u.w(this.TAG,"Flv: Invalid audio packet, missing SoundData payload!");if(!0===this._hasAudioFlagOverrided&&!1===this._hasAudio)return;this._littleEndian;let n=new DataView(A,e,t).getUint8(0),r=n>>>4;if(2!==r&&10!==r)return void this._onError(G.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+r);let s=0,a=(12&n)>>>2;if(!(a>=0&&a<=4))return void this._onError(G.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+a);s=this._flvSoundRateTable[a];let o=1&n,l=this._audioMetadata,d=this._audioTrack;if(l||(!1===this._hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),l=this._audioMetadata={},l.type="audio",l.id=d.id,l.timescale=this._timescale,l.duration=this._duration,l.audioSampleRate=s,l.channelCount=0===o?1:2),10===r){let n=this._parseAACAudioData(A,e+1,t-1);if(null==n)return;if(0===n.packetType){l.config&&u.w(this.TAG,"Found another AudioSpecificConfig!");let A=n.data;l.audioSampleRate=A.samplingRate,l.channelCount=A.channelCount,l.codec=A.codec,l.originalCodec=A.originalCodec,l.config=A.config,l.refSampleDuration=1024/l.audioSampleRate*l.timescale,u.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",l);let e=this._mediaInfo;e.audioCodec=l.originalCodec,e.audioSampleRate=l.audioSampleRate,e.audioChannelCount=l.channelCount,e.hasVideo?null!=e.videoCodec&&(e.mimeType='video/x-flv; codecs="'+e.videoCodec+","+e.audioCodec+'"'):e.mimeType='video/x-flv; codecs="'+e.audioCodec+'"',e.isComplete()&&this._onMediaInfo(e)}else if(1===n.packetType){let A=this._timestampBase+i,e={unit:n.data,length:n.data.byteLength,dts:A,pts:A};d.samples.push(e),d.length+=n.data.length}else u.e(this.TAG,"Flv: Unsupported AAC data type "+n.packetType)}else if(2===r){if(!l.codec){let i=this._parseMP3AudioData(A,e+1,t-1,!0);if(null==i)return;l.audioSampleRate=i.samplingRate,l.channelCount=i.channelCount,l.codec=i.codec,l.originalCodec=i.originalCodec,l.refSampleDuration=1152/l.audioSampleRate*l.timescale,u.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",l);let n=this._mediaInfo;n.audioCodec=l.codec,n.audioSampleRate=l.audioSampleRate,n.audioChannelCount=l.channelCount,n.audioDataRate=i.bitRate,n.hasVideo?null!=n.videoCodec&&(n.mimeType='video/x-flv; codecs="'+n.videoCodec+","+n.audioCodec+'"'):n.mimeType='video/x-flv; codecs="'+n.audioCodec+'"',n.isComplete()&&this._onMediaInfo(n)}let n=this._parseMP3AudioData(A,e+1,t-1,!1);if(null==n)return;let r=this._timestampBase+i,s={unit:n,length:n.byteLength,dts:r,pts:r};d.samples.push(s),d.length+=n.length}}_parseAACAudioData(A,e,t){if(t<=1)return void u.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");let i={},n=new Uint8Array(A,e,t);return i.packetType=n[0],0===n[0]?i.data=this._parseAACAudioSpecificConfig(A,e+1,t-1):i.data=n.subarray(1),i}_parseAACAudioSpecificConfig(A,e,t){let i=new Uint8Array(A,e,t),n=null,r=0,s=0,a=null,o=0,l=null;if(r=s=i[0]>>>3,o=(7&i[0])<<1|i[1]>>>7,o<0||o>=this._mpegSamplingRates.length)return void this._onError(G.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");let u=this._mpegSamplingRates[o],d=(120&i[1])>>>3;if(d<0||d>=8)return void this._onError(G.FORMAT_ERROR,"Flv: AAC invalid channel configuration");5===r&&(l=(7&i[1])<<1|i[2]>>>7,a=(124&i[2])>>>2);let h=self.navigator.userAgent.toLowerCase();return-1!==h.indexOf("firefox")?o>=6?(r=5,n=new Array(4),l=o-3):(r=2,n=new Array(2),l=o):-1!==h.indexOf("android")?(r=2,n=new Array(2),l=o):(r=5,l=o,n=new Array(4),o>=6?l=o-3:1===d&&(r=2,n=new Array(2),l=o)),n[0]=r<<3,n[0]|=(15&o)>>>1,n[1]=(15&o)<<7,n[1]|=(15&d)<<3,5===r&&(n[1]|=(15&l)>>>1,n[2]=(1&l)<<7,n[2]|=8,n[3]=0),{config:n,samplingRate:u,channelCount:d,codec:"mp4a.40."+r,originalCodec:"mp4a.40."+s}}_parseMP3AudioData(A,e,t,i){if(t<4)return void u.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");this._littleEndian;let n=new Uint8Array(A,e,t),r=null;if(i){if(255!==n[0])return;let A=n[1]>>>3&3,e=(6&n[1])>>1,t=(240&n[2])>>>4,i=(12&n[2])>>>2,s=3!==(n[3]>>>6&3)?2:1,a=0,o=0,l=34,u="mp3";switch(A){case 0:a=this._mpegAudioV25SampleRateTable[i];break;case 2:a=this._mpegAudioV20SampleRateTable[i];break;case 3:a=this._mpegAudioV10SampleRateTable[i]}switch(e){case 1:l=34,t<this._mpegAudioL3BitRateTable.length&&(o=this._mpegAudioL3BitRateTable[t]);break;case 2:l=33,t<this._mpegAudioL2BitRateTable.length&&(o=this._mpegAudioL2BitRateTable[t]);break;case 3:l=32,t<this._mpegAudioL1BitRateTable.length&&(o=this._mpegAudioL1BitRateTable[t])}r={bitRate:o,samplingRate:a,channelCount:s,codec:u,originalCodec:u}}else r=n;return r}_parseVideoData(A,e,t,i,n){if(t<=1)return void u.w(this.TAG,"Flv: Invalid video packet, missing VideoData payload!");if(!0===this._hasVideoFlagOverrided&&!1===this._hasVideo)return;let r=new Uint8Array(A,e,t)[0],s=(240&r)>>>4,a=15&r;7===a?this._parseAVCVideoPacket(A,e+1,t-1,i,n,s):this._onError(G.CODEC_UNSUPPORTED,"Flv: Unsupported codec in video frame: "+a)}_parseAVCVideoPacket(A,e,t,i,n,r){if(t<4)return void u.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");let s=this._littleEndian,a=new DataView(A,e,t),o=a.getUint8(0),l=(16777215&a.getUint32(0,!s))<<8>>8;if(0===o)this._parseAVCDecoderConfigurationRecord(A,e+4,t-4);else if(1===o)this._parseAVCVideoData(A,e+4,t-4,i,n,r,l);else if(2!==o)return void this._onError(G.FORMAT_ERROR,"Flv: Invalid video packet type "+o)}_parseAVCDecoderConfigurationRecord(A,e,t){if(t<7)return void u.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");let i=this._videoMetadata,n=this._videoTrack,r=this._littleEndian,s=new DataView(A,e,t);i?void 0!==i.avcc&&u.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(!1===this._hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),i=this._videoMetadata={},i.type="video",i.id=n.id,i.timescale=this._timescale,i.duration=this._duration);let a=s.getUint8(0),o=s.getUint8(1);s.getUint8(2),s.getUint8(3);if(1!==a||0===o)return void this._onError(G.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");if(this._naluLengthSize=1+(3&s.getUint8(4)),3!==this._naluLengthSize&&4!==this._naluLengthSize)return void this._onError(G.FORMAT_ERROR,"Flv: Strange NaluLengthSizeMinusOne: "+(this._naluLengthSize-1));let l=31&s.getUint8(5);if(0===l)return void this._onError(G.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");l>1&&u.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: SPS Count = "+l);let d=6;for(let t=0;t<l;t++){let n=s.getUint16(d,!r);if(d+=2,0===n)continue;let a=new Uint8Array(A,e+d,n);d+=n;let o=F.parseSPS(a);if(0!==t)continue;i.codecWidth=o.codec_size.width,i.codecHeight=o.codec_size.height,i.presentWidth=o.present_size.width,i.presentHeight=o.present_size.height,i.profile=o.profile_string,i.level=o.level_string,i.bitDepth=o.bit_depth,i.chromaFormat=o.chroma_format,i.sarRatio=o.sar_ratio,i.frameRate=o.frame_rate,!1!==o.frame_rate.fixed&&0!==o.frame_rate.fps_num&&0!==o.frame_rate.fps_den||(i.frameRate=this._referenceFrameRate);let l=i.frameRate.fps_den,u=i.frameRate.fps_num;i.refSampleDuration=i.timescale*(l/u);let h=a.subarray(1,4),c="avc1.";for(let A=0;A<3;A++){let e=h[A].toString(16);e.length<2&&(e="0"+e),c+=e}i.codec=c;let f=this._mediaInfo;f.width=i.codecWidth,f.height=i.codecHeight,f.fps=i.frameRate.fps,f.profile=i.profile,f.level=i.level,f.refFrames=o.ref_frames,f.chromaFormat=o.chroma_format_string,f.sarNum=i.sarRatio.width,f.sarDen=i.sarRatio.height,f.videoCodec=c,f.hasAudio?null!=f.audioCodec&&(f.mimeType='video/x-flv; codecs="'+f.videoCodec+","+f.audioCodec+'"'):f.mimeType='video/x-flv; codecs="'+f.videoCodec+'"',f.isComplete()&&this._onMediaInfo(f)}let h=s.getUint8(d);if(0!==h){h>1&&u.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: PPS Count = "+h),d++;for(let A=0;A<h;A++){let A=s.getUint16(d,!r);d+=2,0!==A&&(d+=A)}i.avcc=new Uint8Array(t),i.avcc.set(new Uint8Array(A,e,t),0),u.v(this.TAG,"Parsed AVCDecoderConfigurationRecord"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._videoInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("video",i)}else this._onError(G.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No PPS")}_parseAVCVideoData(A,e,t,i,n,r,s){let a=this._littleEndian,o=new DataView(A,e,t),l=[],d=0,h=0;const c=this._naluLengthSize;let f=this._timestampBase+i,m=1===r;for(;h<t;){if(h+4>=t){u.w(this.TAG,`Malformed Nalu near timestamp ${f}, offset = ${h}, dataSize = ${t}`);break}let i=o.getUint32(h,!a);if(3===c&&(i>>>=8),i>t-c)return void u.w(this.TAG,`Malformed Nalus near timestamp ${f}, NaluSize > DataSize!`);let n=31&o.getUint8(h+c);5===n&&(m=!0);let r=new Uint8Array(A,e+h,c+i),s={type:n,data:r};l.push(s),d+=r.byteLength,h+=c+i}if(l.length){let A=this._videoTrack,e={units:l,length:d,isKeyframe:m,dts:f,cts:s,pts:f+s};m&&(e.fileposition=n),A.samples.push(e),A.length+=d}}}var V=X;class Y{static init(){Y.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let A in Y.types)Y.types.hasOwnProperty(A)&&(Y.types[A]=[A.charCodeAt(0),A.charCodeAt(1),A.charCodeAt(2),A.charCodeAt(3)]);let A=Y.constants={};A.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),A.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),A.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),A.STSC=A.STCO=A.STTS,A.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),A.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),A.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),A.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),A.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),A.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(A){let e=8,t=null,i=Array.prototype.slice.call(arguments,1),n=i.length;for(let A=0;A<n;A++)e+=i[A].byteLength;t=new Uint8Array(e),t[0]=e>>>24&255,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=255&e,t.set(A,4);let r=8;for(let A=0;A<n;A++)t.set(i[A],r),r+=i[A].byteLength;return t}static generateInitSegment(A){let e=Y.box(Y.types.ftyp,Y.constants.FTYP),t=Y.moov(A),i=new Uint8Array(e.byteLength+t.byteLength);return i.set(e,0),i.set(t,e.byteLength),i}static moov(A){let e=Y.mvhd(A.timescale,A.duration),t=Y.trak(A),i=Y.mvex(A);return Y.box(Y.types.moov,e,t,i)}static mvhd(A,e){return Y.box(Y.types.mvhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,A>>>24&255,A>>>16&255,A>>>8&255,255&A,e>>>24&255,e>>>16&255,e>>>8&255,255&e,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(A){return Y.box(Y.types.trak,Y.tkhd(A),Y.mdia(A))}static tkhd(A){let e=A.id,t=A.duration,i=A.presentWidth,n=A.presentHeight;return Y.box(Y.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,i>>>8&255,255&i,0,0,n>>>8&255,255&n,0,0]))}static mdia(A){return Y.box(Y.types.mdia,Y.mdhd(A),Y.hdlr(A),Y.minf(A))}static mdhd(A){let e=A.timescale,t=A.duration;return Y.box(Y.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e,t>>>24&255,t>>>16&255,t>>>8&255,255&t,85,196,0,0]))}static hdlr(A){let e=null;return e="audio"===A.type?Y.constants.HDLR_AUDIO:Y.constants.HDLR_VIDEO,Y.box(Y.types.hdlr,e)}static minf(A){let e=null;return e="audio"===A.type?Y.box(Y.types.smhd,Y.constants.SMHD):Y.box(Y.types.vmhd,Y.constants.VMHD),Y.box(Y.types.minf,e,Y.dinf(),Y.stbl(A))}static dinf(){return Y.box(Y.types.dinf,Y.box(Y.types.dref,Y.constants.DREF))}static stbl(A){return Y.box(Y.types.stbl,Y.stsd(A),Y.box(Y.types.stts,Y.constants.STTS),Y.box(Y.types.stsc,Y.constants.STSC),Y.box(Y.types.stsz,Y.constants.STSZ),Y.box(Y.types.stco,Y.constants.STCO))}static stsd(A){return"audio"===A.type?"mp3"===A.codec?Y.box(Y.types.stsd,Y.constants.STSD_PREFIX,Y.mp3(A)):Y.box(Y.types.stsd,Y.constants.STSD_PREFIX,Y.mp4a(A)):Y.box(Y.types.stsd,Y.constants.STSD_PREFIX,Y.avc1(A))}static mp3(A){let e=A.channelCount,t=A.audioSampleRate,i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e,0,16,0,0,0,0,t>>>8&255,255&t,0,0]);return Y.box(Y.types[".mp3"],i)}static mp4a(A){let e=A.channelCount,t=A.audioSampleRate,i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e,0,16,0,0,0,0,t>>>8&255,255&t,0,0]);return Y.box(Y.types.mp4a,i,Y.esds(A))}static esds(A){let e=A.config||[],t=e.length,i=new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e).concat([6,1,2]));return Y.box(Y.types.esds,i)}static avc1(A){let e=A.avcc,t=A.codecWidth,i=A.codecHeight,n=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,t>>>8&255,255&t,i>>>8&255,255&i,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return Y.box(Y.types.avc1,n,Y.box(Y.types.avcC,e))}static mvex(A){return Y.box(Y.types.mvex,Y.trex(A))}static trex(A){let e=A.id,t=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return Y.box(Y.types.trex,t)}static moof(A,e){return Y.box(Y.types.moof,Y.mfhd(A.sequenceNumber),Y.traf(A,e))}static mfhd(A){let e=new Uint8Array([0,0,0,0,A>>>24&255,A>>>16&255,A>>>8&255,255&A]);return Y.box(Y.types.mfhd,e)}static traf(A,e){let t=A.id,i=Y.box(Y.types.tfhd,new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t])),n=Y.box(Y.types.tfdt,new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e])),r=Y.sdtp(A),s=Y.trun(A,r.byteLength+16+16+8+16+8+8);return Y.box(Y.types.traf,i,n,s,r)}static sdtp(A){let e=A.samples||[],t=e.length,i=new Uint8Array(4+t);for(let A=0;A<t;A++){let t=e[A].flags;i[A+4]=t.isLeading<<6|t.dependsOn<<4|t.isDependedOn<<2|t.hasRedundancy}return Y.box(Y.types.sdtp,i)}static trun(A,e){let t=A.samples||[],i=t.length,n=12+16*i,r=new Uint8Array(n);e+=8+n,r.set([0,0,15,1,i>>>24&255,i>>>16&255,i>>>8&255,255&i,e>>>24&255,e>>>16&255,e>>>8&255,255&e],0);for(let A=0;A<i;A++){let e=t[A].duration,i=t[A].size,n=t[A].flags,s=t[A].cts;r.set([e>>>24&255,e>>>16&255,e>>>8&255,255&e,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n.isLeading<<2|n.dependsOn,n.isDependedOn<<6|n.hasRedundancy<<4|n.isNonSync,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s],12+16*A)}return Y.box(Y.types.trun,r)}static mdat(A){return Y.box(Y.types.mdat,A)}}Y.init();var q=Y;var W=class{static getSilentFrame(A,e){if("mp4a.40.2"===A){if(1===e)return new Uint8Array([0,200,0,128,35,128]);if(2===e)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(6===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(1===e)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(2===e)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===e)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}};class Z{constructor(A,e,t,i,n){this.dts=A,this.pts=e,this.duration=t,this.originalDts=i,this.isSyncPoint=n,this.fileposition=null}}class J{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(A){A.isSyncPoint=!0,this.syncPoints.push(A)}}class K{constructor(){this._list=[]}clear(){this._list=[]}appendArray(A){let e=this._list;0!==A.length&&(e.length>0&&A[0].originalDts<e[e.length-1].originalDts&&this.clear(),Array.prototype.push.apply(e,A))}getLastSyncPointBeforeDts(A){if(0==this._list.length)return null;let e=this._list,t=0,i=e.length-1,n=0,r=0,s=i;for(A<e[0].dts&&(t=0,r=s+1);r<=s;){if(n=r+Math.floor((s-r)/2),n===i||A>=e[n].dts&&A<e[n+1].dts){t=n;break}e[n].dts<A?r=n+1:s=n-1}return this._list[t]}}class ${constructor(A){this._type=A,this._list=[],this._lastAppendLocation=-1}get type(){return this._type}get length(){return this._list.length}isEmpty(){return 0===this._list.length}clear(){this._list=[],this._lastAppendLocation=-1}_searchNearestSegmentBefore(A){let e=this._list;if(0===e.length)return-2;let t=e.length-1,i=0,n=0,r=t,s=0;if(A<e[0].originalBeginDts)return s=-1,s;for(;n<=r;){if(i=n+Math.floor((r-n)/2),i===t||A>e[i].lastSample.originalDts&&A<e[i+1].originalBeginDts){s=i;break}e[i].originalBeginDts<A?n=i+1:r=i-1}return s}_searchNearestSegmentAfter(A){return this._searchNearestSegmentBefore(A)+1}append(A){let e=this._list,t=A,i=this._lastAppendLocation,n=0;-1!==i&&i<e.length&&t.originalBeginDts>=e[i].lastSample.originalDts&&(i===e.length-1||i<e.length-1&&t.originalBeginDts<e[i+1].originalBeginDts)?n=i+1:e.length>0&&(n=this._searchNearestSegmentBefore(t.originalBeginDts)+1),this._lastAppendLocation=n,this._list.splice(n,0,t)}getLastSegmentBefore(A){let e=this._searchNearestSegmentBefore(A);return e>=0?this._list[e]:null}getLastSampleBefore(A){let e=this.getLastSegmentBefore(A);return null!=e?e.lastSample:null}getLastSyncPointBefore(A){let e=this._searchNearestSegmentBefore(A),t=this._list[e].syncPoints;for(;0===t.length&&e>0;)e--,t=this._list[e].syncPoints;return t.length>0?t[t.length-1]:null}}var AA=class{constructor(A){this.TAG="MP4Remuxer",this._config=A,this._isLive=!0===A.isLive,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new $("audio"),this._videoSegmentInfoList=new $("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!(!y.chrome||!(y.version.major<50||50===y.version.major&&y.version.build<2661)),this._fillSilentAfterSeek=y.msedge||y.msie,this._mp3UseMpegAudio=!y.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(A){return A.onDataAvailable=this.remux.bind(this),A.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(A){this._onInitSegment=A}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(A){this._onMediaSegment=A}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(A){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(A,e){if(!this._onMediaSegment)throw new c("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(A,e),this._remuxVideo(e),this._remuxAudio(A)}_onTrackMetadataReceived(A,e){let t=null,i="mp4",n=e.codec;if("audio"===A)this._audioMeta=e,"mp3"===e.codec&&this._mp3UseMpegAudio?(i="mpeg",n="",t=new Uint8Array):t=q.generateInitSegment(e);else{if("video"!==A)return;this._videoMeta=e,t=q.generateInitSegment(e)}if(!this._onInitSegment)throw new c("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(A,{type:A,data:t.buffer,codec:n,container:`${A}/${i}`,mediaDuration:e.duration})}_calculateDtsBase(A,e){this._dtsBaseInited||(A.samples&&A.samples.length&&(this._audioDtsBase=A.samples[0].dts),e.samples&&e.samples.length&&(this._videoDtsBase=e.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let A=this._videoStashedLastSample,e=this._audioStashedLastSample,t={type:"video",id:1,sequenceNumber:0,samples:[],length:0};null!=A&&(t.samples.push(A),t.length=A.length);let i={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};null!=e&&(i.samples.push(e),i.length=e.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(t,!0),this._remuxAudio(i,!0)}_remuxAudio(A,e){if(null==this._audioMeta)return;let t=A,i=t.samples,n=void 0,r=-1,s=-1,a=this._audioMeta.refSampleDuration,o="mp3"===this._audioMeta.codec&&this._mp3UseMpegAudio,l=this._dtsBaseInited&&void 0===this._audioNextDts,d=!1;if(!i||0===i.length)return;if(1===i.length&&!e)return;let h=0,c=null,f=0;o?(h=0,f=t.length):(h=8,f=8+t.length);let m=null;if(i.length>1&&(m=i.pop(),f-=m.length),null!=this._audioStashedLastSample){let A=this._audioStashedLastSample;this._audioStashedLastSample=null,i.unshift(A),f+=A.length}null!=m&&(this._audioStashedLastSample=m);let g=i[0].dts-this._dtsBase;if(this._audioNextDts)n=g-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())n=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&"mp3"!==this._audioMeta.originalCodec&&(d=!0);else{let A=this._audioSegmentInfoList.getLastSampleBefore(g);if(null!=A){let e=g-(A.originalDts+A.duration);e<=3&&(e=0),n=g-(A.dts+A.duration+e)}else n=0}if(d){let A=g-n,e=this._videoSegmentInfoList.getLastSegmentBefore(g);if(null!=e&&e.beginDts<A){let t=W.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);if(t){let n=e.beginDts,r=A-e.beginDts;u.v(this.TAG,`InsertPrefixSilentAudio: dts: ${n}, duration: ${r}`),i.unshift({unit:t,dts:n,pts:n}),f+=t.byteLength}}else d=!1}let p=[];for(let A=0;A<i.length;A++){let e=i[A],t=e.unit,s=e.dts-this._dtsBase,o=s-n;-1===r&&(r=o);let l=0;if(A!==i.length-1){l=i[A+1].dts-this._dtsBase-n-o}else if(null!=m){l=m.dts-this._dtsBase-n-o}else l=p.length>=1?p[p.length-1].duration:Math.floor(a);let d=!1,h=null;if(l>1.5*a&&"mp3"!==this._audioMeta.codec&&this._fillAudioTimestampGap&&!y.safari){d=!0;let A=Math.abs(l-a),e=Math.ceil(A/a),i=o+a;u.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\ndts: ${o+l} ms, expected: ${o+Math.round(a)} ms, delta: ${Math.round(A)} ms, generate: ${e} frames`);let n=W.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);null==n&&(u.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),n=t),h=[];for(let A=0;A<e;A++){let A=Math.round(i);if(h.length>0){let e=h[h.length-1];e.duration=A-e.dts}let e={dts:A,pts:A,cts:0,unit:n,size:n.byteLength,duration:0,originalDts:s,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};h.push(e),f+=e.size,i+=a}let r=h[h.length-1];r.duration=o+l-r.dts,l=Math.round(a)}p.push({dts:o,pts:o,cts:0,unit:e.unit,size:e.unit.byteLength,duration:l,originalDts:s,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),d&&p.push.apply(p,h)}o?c=new Uint8Array(f):(c=new Uint8Array(f),c[0]=f>>>24&255,c[1]=f>>>16&255,c[2]=f>>>8&255,c[3]=255&f,c.set(q.types.mdat,4));for(let A=0;A<p.length;A++){let e=p[A].unit;c.set(e,h),h+=e.byteLength}let v=p[p.length-1];s=v.dts+v.duration,this._audioNextDts=s;let _=new J;_.beginDts=r,_.endDts=s,_.beginPts=r,_.endPts=s,_.originalBeginDts=p[0].originalDts,_.originalEndDts=v.originalDts+v.duration,_.firstSample=new Z(p[0].dts,p[0].pts,p[0].duration,p[0].originalDts,!1),_.lastSample=new Z(v.dts,v.pts,v.duration,v.originalDts,!1),this._isLive||this._audioSegmentInfoList.append(_),t.samples=p,t.sequenceNumber++;let b=null;b=o?new Uint8Array:q.moof(t,r),t.samples=[],t.length=0;let E={type:"audio",data:this._mergeBoxes(b,c).buffer,sampleCount:p.length,info:_};o&&l&&(E.timestampOffset=r),this._onMediaSegment("audio",E)}_remuxVideo(A,e){if(null==this._videoMeta)return;let t=A,i=t.samples,n=void 0,r=-1,s=-1,a=-1,o=-1;if(!i||0===i.length)return;if(1===i.length&&!e)return;let l=8,u=null,d=8+A.length,h=null;if(i.length>1&&(h=i.pop(),d-=h.length),null!=this._videoStashedLastSample){let A=this._videoStashedLastSample;this._videoStashedLastSample=null,i.unshift(A),d+=A.length}null!=h&&(this._videoStashedLastSample=h);let c=i[0].dts-this._dtsBase;if(this._videoNextDts)n=c-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())n=0;else{let A=this._videoSegmentInfoList.getLastSampleBefore(c);if(null!=A){let e=c-(A.originalDts+A.duration);e<=3&&(e=0),n=c-(A.dts+A.duration+e)}else n=0}let f=new J,m=[];for(let A=0;A<i.length;A++){let e=i[A],t=e.dts-this._dtsBase,s=e.isKeyframe,o=t-n,l=e.cts,u=o+l;-1===r&&(r=o,a=u);let d=0;if(A!==i.length-1){d=i[A+1].dts-this._dtsBase-n-o}else if(null!=h){d=h.dts-this._dtsBase-n-o}else d=m.length>=1?m[m.length-1].duration:Math.floor(this._videoMeta.refSampleDuration);if(s){let A=new Z(o,u,d,e.dts,!0);A.fileposition=e.fileposition,f.appendSyncPoint(A)}m.push({dts:o,pts:u,cts:l,units:e.units,size:e.length,isKeyframe:s,duration:d,originalDts:t,flags:{isLeading:0,dependsOn:s?2:1,isDependedOn:s?1:0,hasRedundancy:0,isNonSync:s?0:1}})}u=new Uint8Array(d),u[0]=d>>>24&255,u[1]=d>>>16&255,u[2]=d>>>8&255,u[3]=255&d,u.set(q.types.mdat,4);for(let A=0;A<m.length;A++){let e=m[A].units;for(;e.length;){let A=e.shift().data;u.set(A,l),l+=A.byteLength}}let g=m[m.length-1];if(s=g.dts+g.duration,o=g.pts+g.duration,this._videoNextDts=s,f.beginDts=r,f.endDts=s,f.beginPts=a,f.endPts=o,f.originalBeginDts=m[0].originalDts,f.originalEndDts=g.originalDts+g.duration,f.firstSample=new Z(m[0].dts,m[0].pts,m[0].duration,m[0].originalDts,m[0].isKeyframe),f.lastSample=new Z(g.dts,g.pts,g.duration,g.originalDts,g.isKeyframe),this._isLive||this._videoSegmentInfoList.append(f),t.samples=m,t.sequenceNumber++,this._forceFirstIDR){let A=m[0].flags;A.dependsOn=2,A.isNonSync=0}let p=q.moof(t,r);t.samples=[],t.length=0,this._onMediaSegment("video",{type:"video",data:this._mergeBoxes(p,u).buffer,sampleCount:m.length,info:f})}_mergeBoxes(A,e){let t=new Uint8Array(A.byteLength+e.byteLength);return t.set(A,0),t.set(e,A.byteLength),t}};var eA={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"};var tA=class{constructor(A,e){this.TAG="TransmuxingController",this._emitter=new o.a,this._config=e,A.segments||(A.segments=[{duration:A.duration,filesize:A.filesize,url:A.url}]),"boolean"!=typeof A.cors&&(A.cors=!0),"boolean"!=typeof A.withCredentials&&(A.withCredentials=!1),this._mediaDataSource=A,this._currentSegmentIndex=0;let t=0;this._mediaDataSource.segments.forEach(i=>{i.timestampBase=t,t+=i.duration,i.cors=A.cors,i.withCredentials=A.withCredentials,e.referrerPolicy&&(i.referrerPolicy=e.referrerPolicy)}),isNaN(t)||this._mediaDataSource.duration===t||(this._mediaDataSource.duration=t),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}destroy(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}on(A,e){this._emitter.addListener(A,e)}off(A,e){this._emitter.removeListener(A,e)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(A,e){this._currentSegmentIndex=A;let t=this._mediaDataSource.segments[A],i=this._ioctl=new O(t,this._config,A);i.onError=this._onIOException.bind(this),i.onSeeked=this._onIOSeeked.bind(this),i.onComplete=this._onIOComplete.bind(this),i.onRedirect=this._onIORedirect.bind(this),i.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),e?this._demuxer.bindDataSource(this._ioctl):i.onDataArrival=this._onInitChunkArrival.bind(this),i.open(e)}stop(){this._internalAbort(),this._disableStatisticsReporter()}_internalAbort(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}pause(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}resume(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}seek(A){if(null==this._mediaInfo||!this._mediaInfo.isSeekable())return;let e=this._searchSegmentIndexContains(A);if(e===this._currentSegmentIndex){let t=this._mediaInfo.segments[e];if(null==t)this._pendingSeekTime=A;else{let e=t.getNearestKeyframe(A);this._remuxer.seek(e.milliseconds),this._ioctl.seek(e.fileposition),this._pendingResolveSeekPoint=e.milliseconds}}else{let t=this._mediaInfo.segments[e];if(null==t)this._pendingSeekTime=A,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(e);else{let i=t.getNearestKeyframe(A);this._internalAbort(),this._remuxer.seek(A),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[e].timestampBase,this._loadSegment(e,i.fileposition),this._pendingResolveSeekPoint=i.milliseconds,this._reportSegmentMediaInfo(e)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(A){let e=this._mediaDataSource.segments,t=e.length-1;for(let i=0;i<e.length;i++)if(A<e[i].timestampBase){t=i-1;break}return t}_onInitChunkArrival(A,e){let t=null,i=0;if(e>0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,i=this._demuxer.parseChunks(A,e);else if((t=V.probe(A)).match){this._demuxer=new V(t,this._config),this._remuxer||(this._remuxer=new AA(this._config));let n=this._mediaDataSource;null==n.duration||isNaN(n.duration)||(this._demuxer.overridedDuration=n.duration),"boolean"==typeof n.hasAudio&&(this._demuxer.overridedHasAudio=n.hasAudio),"boolean"==typeof n.hasVideo&&(this._demuxer.overridedHasVideo=n.hasVideo),this._demuxer.timestampBase=n.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),i=this._demuxer.parseChunks(A,e)}else t=null,u.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(eA.DEMUX_ERROR,G.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),i=0;return i}_onMediaInfo(A){null==this._mediaInfo&&(this._mediaInfo=Object.assign({},A),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,I.prototype));let e=Object.assign({},A);Object.setPrototypeOf(e,I.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=e,this._reportSegmentMediaInfo(this._currentSegmentIndex),null!=this._pendingSeekTime&&Promise.resolve().then(()=>{let A=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(A)})}_onMetaDataArrived(A){this._emitter.emit(eA.METADATA_ARRIVED,A)}_onScriptDataArrived(A){this._emitter.emit(eA.SCRIPTDATA_ARRIVED,A)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(A){let e=A+1;e<this._mediaDataSource.segments.length?(this._internalAbort(),this._remuxer.flushStashedSamples(),this._loadSegment(e)):(this._remuxer.flushStashedSamples(),this._emitter.emit(eA.LOADING_COMPLETE),this._disableStatisticsReporter())}_onIORedirect(A){let e=this._ioctl.extraData;this._mediaDataSource.segments[e].redirectedURL=A}_onIORecoveredEarlyEof(){this._emitter.emit(eA.RECOVERED_EARLY_EOF)}_onIOException(A,e){u.e(this.TAG,`IOException: type = ${A}, code = ${e.code}, msg = ${e.msg}`),this._emitter.emit(eA.IO_ERROR,A,e),this._disableStatisticsReporter()}_onDemuxException(A,e){u.e(this.TAG,`DemuxException: type = ${A}, info = ${e}`),this._emitter.emit(eA.DEMUX_ERROR,A,e)}_onRemuxerInitSegmentArrival(A,e){this._emitter.emit(eA.INIT_SEGMENT,A,e)}_onRemuxerMediaSegmentArrival(A,e){if(null==this._pendingSeekTime&&(this._emitter.emit(eA.MEDIA_SEGMENT,A,e),null!=this._pendingResolveSeekPoint&&"video"===A)){let A=e.info.syncPoints,t=this._pendingResolveSeekPoint;this._pendingResolveSeekPoint=null,y.safari&&A.length>0&&A[0].originalDts===t&&(t=A[0].pts),this._emitter.emit(eA.RECOMMEND_SEEKPOINT,t)}}_enableStatisticsReporter(){null==this._statisticsReporter&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}_disableStatisticsReporter(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}_reportSegmentMediaInfo(A){let e=this._mediaInfo.segments[A],t=Object.assign({},e);t.duration=this._mediaInfo.duration,t.segmentCount=this._mediaInfo.segmentCount,delete t.segments,delete t.keyframesIndex,this._emitter.emit(eA.MEDIA_INFO,t)}_reportStatisticsInfo(){let A={};A.url=this._ioctl.currentURL,A.hasRedirect=this._ioctl.hasRedirect,A.hasRedirect&&(A.redirectedURL=this._ioctl.currentRedirectedURL),A.speed=this._ioctl.currentSpeed,A.loaderType=this._ioctl.loaderType,A.currentSegmentIndex=this._currentSegmentIndex,A.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(eA.STATISTICS_INFO,A)}};var iA=function(A){let e=null,t=function(e,t){A.postMessage({msg:"logcat_callback",data:{type:e,logcat:t}})}.bind(this);function i(e,t){let i={msg:eA.INIT_SEGMENT,data:{type:e,data:t}};A.postMessage(i,[t.data])}function n(e,t){let i={msg:eA.MEDIA_SEGMENT,data:{type:e,data:t}};A.postMessage(i,[t.data])}function r(){let e={msg:eA.LOADING_COMPLETE};A.postMessage(e)}function a(){let e={msg:eA.RECOVERED_EARLY_EOF};A.postMessage(e)}function o(e){let t={msg:eA.MEDIA_INFO,data:e};A.postMessage(t)}function l(e){let t={msg:eA.METADATA_ARRIVED,data:e};A.postMessage(t)}function u(e){let t={msg:eA.SCRIPTDATA_ARRIVED,data:e};A.postMessage(t)}function d(e){let t={msg:eA.STATISTICS_INFO,data:e};A.postMessage(t)}function h(e,t){A.postMessage({msg:eA.IO_ERROR,data:{type:e,info:t}})}function c(e,t){A.postMessage({msg:eA.DEMUX_ERROR,data:{type:e,info:t}})}function f(e){A.postMessage({msg:eA.RECOMMEND_SEEKPOINT,data:e})}s.install(),A.addEventListener("message",(function(s){switch(s.data.cmd){case"init":e=new tA(s.data.param[0],s.data.param[1]),e.on(eA.IO_ERROR,h.bind(this)),e.on(eA.DEMUX_ERROR,c.bind(this)),e.on(eA.INIT_SEGMENT,i.bind(this)),e.on(eA.MEDIA_SEGMENT,n.bind(this)),e.on(eA.LOADING_COMPLETE,r.bind(this)),e.on(eA.RECOVERED_EARLY_EOF,a.bind(this)),e.on(eA.MEDIA_INFO,o.bind(this)),e.on(eA.METADATA_ARRIVED,l.bind(this)),e.on(eA.SCRIPTDATA_ARRIVED,u.bind(this)),e.on(eA.STATISTICS_INFO,d.bind(this)),e.on(eA.RECOMMEND_SEEKPOINT,f.bind(this));break;case"destroy":e&&(e.destroy(),e=null),A.postMessage({msg:"destroyed"});break;case"start":e.start();break;case"stop":e.stop();break;case"seek":e.seek(s.data.param);break;case"pause":e.pause();break;case"resume":e.resume();break;case"logging_config":{let A=s.data.param;M.applyConfig(A),!0===A.enableCallback?M.addLogListener(t):M.removeLogListener(t);break}}}))};var nA=class{constructor(A,e){if(this.TAG="Transmuxer",this._emitter=new o.a,e.enableWorker&&"undefined"!=typeof Worker)try{let i=t(17);this._worker=i(iA),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[A,e]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},M.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:M.getConfig()})}catch(t){u.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new tA(A,e)}else this._controller=new tA(A,e);if(this._controller){let A=this._controller;A.on(eA.IO_ERROR,this._onIOError.bind(this)),A.on(eA.DEMUX_ERROR,this._onDemuxError.bind(this)),A.on(eA.INIT_SEGMENT,this._onInitSegment.bind(this)),A.on(eA.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),A.on(eA.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),A.on(eA.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),A.on(eA.MEDIA_INFO,this._onMediaInfo.bind(this)),A.on(eA.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),A.on(eA.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),A.on(eA.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),A.on(eA.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),M.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(A,e){this._emitter.addListener(A,e)}off(A,e){this._emitter.removeListener(A,e)}hasWorker(){return null!=this._worker}open(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}close(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}seek(A){this._worker?this._worker.postMessage({cmd:"seek",param:A}):this._controller.seek(A)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(A,e){Promise.resolve().then(()=>{this._emitter.emit(eA.INIT_SEGMENT,A,e)})}_onMediaSegment(A,e){Promise.resolve().then(()=>{this._emitter.emit(eA.MEDIA_SEGMENT,A,e)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(eA.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(eA.RECOVERED_EARLY_EOF)})}_onMediaInfo(A){Promise.resolve().then(()=>{this._emitter.emit(eA.MEDIA_INFO,A)})}_onMetaDataArrived(A){Promise.resolve().then(()=>{this._emitter.emit(eA.METADATA_ARRIVED,A)})}_onScriptDataArrived(A){Promise.resolve().then(()=>{this._emitter.emit(eA.SCRIPTDATA_ARRIVED,A)})}_onStatisticsInfo(A){Promise.resolve().then(()=>{this._emitter.emit(eA.STATISTICS_INFO,A)})}_onIOError(A,e){Promise.resolve().then(()=>{this._emitter.emit(eA.IO_ERROR,A,e)})}_onDemuxError(A,e){Promise.resolve().then(()=>{this._emitter.emit(eA.DEMUX_ERROR,A,e)})}_onRecommendSeekpoint(A){Promise.resolve().then(()=>{this._emitter.emit(eA.RECOMMEND_SEEKPOINT,A)})}_onLoggingConfigChanged(A){this._worker&&this._worker.postMessage({cmd:"logging_config",param:A})}_onWorkerMessage(A){let e=A.data,t=e.data;if("destroyed"===e.msg||this._workerDestroying)return this._workerDestroying=!1,this._worker.terminate(),void(this._worker=null);switch(e.msg){case eA.INIT_SEGMENT:case eA.MEDIA_SEGMENT:this._emitter.emit(e.msg,t.type,t.data);break;case eA.LOADING_COMPLETE:case eA.RECOVERED_EARLY_EOF:this._emitter.emit(e.msg);break;case eA.MEDIA_INFO:Object.setPrototypeOf(t,I.prototype),this._emitter.emit(e.msg,t);break;case eA.METADATA_ARRIVED:case eA.SCRIPTDATA_ARRIVED:case eA.STATISTICS_INFO:this._emitter.emit(e.msg,t);break;case eA.IO_ERROR:case eA.DEMUX_ERROR:this._emitter.emit(e.msg,t.type,t.info);break;case eA.RECOMMEND_SEEKPOINT:this._emitter.emit(e.msg,t);break;case"logcat_callback":u.emitter.emit("log",t.type,t.logcat)}}};var rA={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};var sA=class{constructor(A){this.TAG="MSEController",this._config=A,this._emitter=new o.a,this._config.isLive&&null==this._config.autoCleanupSourceBuffer&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new K}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(A,e){this._emitter.addListener(A,e)}off(A,e){this._emitter.removeListener(A,e)}attachMediaElement(A){if(this._mediaSource)throw new c("MediaSource has been attached to an HTMLMediaElement!");let e=this._mediaSource=new window.MediaSource;e.addEventListener("sourceopen",this.e.onSourceOpen),e.addEventListener("sourceended",this.e.onSourceEnded),e.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=A,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),A.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let A=this._mediaSource;for(let e in this._sourceBuffers){let t=this._pendingSegments[e];t.splice(0,t.length),this._pendingSegments[e]=null,this._pendingRemoveRanges[e]=null,this._lastInitSegments[e]=null;let i=this._sourceBuffers[e];if(i){if("closed"!==A.readyState){try{A.removeSourceBuffer(i)}catch(A){u.e(this.TAG,A.message)}i.removeEventListener("error",this.e.onSourceBufferError),i.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[e]=null,this._sourceBuffers[e]=null}}if("open"===A.readyState)try{A.endOfStream()}catch(A){u.e(this.TAG,A.message)}A.removeEventListener("sourceopen",this.e.onSourceOpen),A.removeEventListener("sourceended",this.e.onSourceEnded),A.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}appendInitSegment(A,e){if(!this._mediaSource||"open"!==this._mediaSource.readyState)return this._pendingSourceBufferInit.push(A),void this._pendingSegments[A.type].push(A);let t=A,i=""+t.container;t.codec&&t.codec.length>0&&(i+=";codecs="+t.codec);let n=!1;if(u.v(this.TAG,"Received Initialization Segment, mimeType: "+i),this._lastInitSegments[t.type]=t,i!==this._mimeTypes[t.type]){if(this._mimeTypes[t.type])u.v(this.TAG,`Notice: ${t.type} mimeType changed, origin: ${this._mimeTypes[t.type]}, target: ${i}`);else{n=!0;try{let A=this._sourceBuffers[t.type]=this._mediaSource.addSourceBuffer(i);A.addEventListener("error",this.e.onSourceBufferError),A.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(A){return u.e(this.TAG,A.message),void this._emitter.emit(rA.ERROR,{code:A.code,msg:A.message})}}this._mimeTypes[t.type]=i}e||this._pendingSegments[t.type].push(t),n||this._sourceBuffers[t.type]&&!this._sourceBuffers[t.type].updating&&this._doAppendSegments(),y.safari&&"audio/mpeg"===t.container&&t.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=t.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(A){let e=A;this._pendingSegments[e.type].push(e),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let t=this._sourceBuffers[e.type];!t||t.updating||this._hasPendingRemoveRanges()||this._doAppendSegments()}seek(A){for(let A in this._sourceBuffers){if(!this._sourceBuffers[A])continue;let e=this._sourceBuffers[A];if("open"===this._mediaSource.readyState)try{e.abort()}catch(A){u.e(this.TAG,A.message)}this._idrList.clear();let t=this._pendingSegments[A];if(t.splice(0,t.length),"closed"!==this._mediaSource.readyState){for(let t=0;t<e.buffered.length;t++){let i=e.buffered.start(t),n=e.buffered.end(t);this._pendingRemoveRanges[A].push({start:i,end:n})}if(e.updating||this._doRemoveRanges(),y.safari){let t=this._lastInitSegments[A];t&&(this._pendingSegments[A].push(t),e.updating||this._doAppendSegments())}}}}endOfStream(){let A=this._mediaSource,e=this._sourceBuffers;A&&"open"===A.readyState?e.video&&e.video.updating||e.audio&&e.audio.updating?this._hasPendingEos=!0:(this._hasPendingEos=!1,A.endOfStream()):A&&"closed"===A.readyState&&this._hasPendingSegments()&&(this._hasPendingEos=!0)}getNearestKeyframe(A){return this._idrList.getLastSyncPointBeforeDts(A)}_needCleanupSourceBuffer(){if(!this._config.autoCleanupSourceBuffer)return!1;let A=this._mediaElement.currentTime;for(let e in this._sourceBuffers){let t=this._sourceBuffers[e];if(t){let e=t.buffered;if(e.length>=1&&A-e.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let A=this._mediaElement.currentTime;for(let e in this._sourceBuffers){let t=this._sourceBuffers[e];if(t){let i=t.buffered,n=!1;for(let t=0;t<i.length;t++){let r=i.start(t),s=i.end(t);if(r<=A&&A<s+3){if(A-r>=this._config.autoCleanupMaxBackwardDuration){n=!0;let t=A-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[e].push({start:r,end:t})}}else s<A&&(n=!0,this._pendingRemoveRanges[e].push({start:r,end:s}))}n&&!t.updating&&this._doRemoveRanges()}}}_updateMediaSourceDuration(){let A=this._sourceBuffers;if(0===this._mediaElement.readyState||"open"!==this._mediaSource.readyState)return;if(A.video&&A.video.updating||A.audio&&A.audio.updating)return;let e=this._mediaSource.duration,t=this._pendingMediaDuration;t>0&&(isNaN(e)||t>e)&&(u.v(this.TAG,`Update MediaSource duration from ${e} to ${t}`),this._mediaSource.duration=t),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let A in this._pendingRemoveRanges){if(!this._sourceBuffers[A]||this._sourceBuffers[A].updating)continue;let e=this._sourceBuffers[A],t=this._pendingRemoveRanges[A];for(;t.length&&!e.updating;){let A=t.shift();e.remove(A.start,A.end)}}}_doAppendSegments(){let A=this._pendingSegments;for(let e in A)if(this._sourceBuffers[e]&&!this._sourceBuffers[e].updating&&A[e].length>0){let t=A[e].shift();if(t.timestampOffset){let A=this._sourceBuffers[e].timestampOffset,i=t.timestampOffset/1e3;Math.abs(A-i)>.1&&(u.v(this.TAG,`Update MPEG audio timestampOffset from ${A} to ${i}`),this._sourceBuffers[e].timestampOffset=i),delete t.timestampOffset}if(!t.data||0===t.data.byteLength)continue;try{this._sourceBuffers[e].appendBuffer(t.data),this._isBufferFull=!1,"video"===e&&t.hasOwnProperty("info")&&this._idrList.appendArray(t.info.syncPoints)}catch(A){this._pendingSegments[e].unshift(t),22===A.code?(this._isBufferFull||this._emitter.emit(rA.BUFFER_FULL),this._isBufferFull=!0):(u.e(this.TAG,A.message),this._emitter.emit(rA.ERROR,{code:A.code,msg:A.message}))}}}_onSourceOpen(){if(u.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let A=this._pendingSourceBufferInit;for(;A.length;){let e=A.shift();this.appendInitSegment(e,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(rA.SOURCE_OPEN)}_onSourceEnded(){u.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){u.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&null!=this.e&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}_hasPendingSegments(){let A=this._pendingSegments;return A.video.length>0||A.audio.length>0}_hasPendingRemoveRanges(){let A=this._pendingRemoveRanges;return A.video.length>0||A.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(rA.UPDATE_END)}_onSourceBufferError(A){u.e(this.TAG,"SourceBuffer Error: "+A)}};const aA={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},oA={NETWORK_EXCEPTION:p.EXCEPTION,NETWORK_STATUS_CODE_INVALID:p.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:p.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:p.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:G.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:G.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:G.CODEC_UNSUPPORTED};var lA=class{constructor(A,e){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new o.a,this._config=L(),"object"==typeof e&&Object.assign(this._config,e),"flv"!==A.type.toLowerCase())throw new f("FlvPlayer requires an flv MediaDataSource input!");!0===A.isLive&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=A,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;let t=y.chrome&&(y.version.major<50||50===y.version.major&&y.version.build<2661);this._alwaysSeekKeyframe=!!(t||y.msedge||y.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}destroy(){null!=this._progressChecker&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(A,e){A===T.MEDIA_INFO?null!=this._mediaInfo&&Promise.resolve().then(()=>{this._emitter.emit(T.MEDIA_INFO,this.mediaInfo)}):A===T.STATISTICS_INFO&&null!=this._statisticsInfo&&Promise.resolve().then(()=>{this._emitter.emit(T.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(A,e)}off(A,e){this._emitter.removeListener(A,e)}attachMediaElement(A){if(this._mediaElement=A,A.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),A.addEventListener("seeking",this.e.onvSeeking),A.addEventListener("canplay",this.e.onvCanPlay),A.addEventListener("stalled",this.e.onvStalled),A.addEventListener("progress",this.e.onvProgress),this._msectl=new sA(this._config),this._msectl.on(rA.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(rA.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(rA.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(rA.ERROR,A=>{this._emitter.emit(T.ERROR,aA.MEDIA_ERROR,oA.MEDIA_MSE_ERROR,A)}),this._msectl.attachMediaElement(A),null!=this._pendingSeekTime)try{A.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(A){}}detachMediaElement(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}load(){if(!this._mediaElement)throw new c("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new c("FlvPlayer.load() has been called, please call unload() first!");this._hasPendingLoad||(this._config.deferLoadAfterSourceOpen&&!1===this._mseSourceOpened?this._hasPendingLoad=!0:(this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new nA(this._mediaDataSource,this._config),this._transmuxer.on(eA.INIT_SEGMENT,(A,e)=>{this._msectl.appendInitSegment(e)}),this._transmuxer.on(eA.MEDIA_SEGMENT,(A,e)=>{if(this._msectl.appendMediaSegment(e),this._config.lazyLoad&&!this._config.isLive){let A=this._mediaElement.currentTime;e.info.endDts>=1e3*(A+this._config.lazyLoadMaxDuration)&&null==this._progressChecker&&(u.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(eA.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(T.LOADING_COMPLETE)}),this._transmuxer.on(eA.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(T.RECOVERED_EARLY_EOF)}),this._transmuxer.on(eA.IO_ERROR,(A,e)=>{this._emitter.emit(T.ERROR,aA.NETWORK_ERROR,A,e)}),this._transmuxer.on(eA.DEMUX_ERROR,(A,e)=>{this._emitter.emit(T.ERROR,aA.MEDIA_ERROR,A,{code:-1,msg:e})}),this._transmuxer.on(eA.MEDIA_INFO,A=>{this._mediaInfo=A,this._emitter.emit(T.MEDIA_INFO,Object.assign({},A))}),this._transmuxer.on(eA.METADATA_ARRIVED,A=>{this._emitter.emit(T.METADATA_ARRIVED,A)}),this._transmuxer.on(eA.SCRIPTDATA_ARRIVED,A=>{this._emitter.emit(T.SCRIPTDATA_ARRIVED,A)}),this._transmuxer.on(eA.STATISTICS_INFO,A=>{this._statisticsInfo=this._fillStatisticsInfo(A),this._emitter.emit(T.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(eA.RECOMMEND_SEEKPOINT,A=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=A/1e3)}),this._transmuxer.open()))}unload(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(A){this._mediaElement.volume=A}get muted(){return this._mediaElement.muted}set muted(A){this._mediaElement.muted=A}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(A){this._mediaElement?this._internalSeek(A):this._pendingSeekTime=A}get mediaInfo(){return Object.assign({},this._mediaInfo)}get statisticsInfo(){return null==this._statisticsInfo&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}_fillStatisticsInfo(A){if(A.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return A;let e=!0,t=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){let A=this._mediaElement.getVideoPlaybackQuality();t=A.totalVideoFrames,i=A.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(t=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):e=!1;return e&&(A.decodedFrames=t,A.droppedFrames=i),A}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let A=this._mediaElement.buffered,e=this._mediaElement.currentTime,t=0,i=0;for(let n=0;n<A.length;n++){let r=A.start(n),s=A.end(n);if(r<=e&&e<s){t=r,i=s;break}}i>=e+this._config.lazyLoadMaxDuration&&null==this._progressChecker&&(u.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){u.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),null==this._progressChecker&&this._suspendTransmuxer()}_suspendTransmuxer(){this._transmuxer&&(this._transmuxer.pause(),null==this._progressChecker&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}_checkProgressAndResume(){let A=this._mediaElement.currentTime,e=this._mediaElement.buffered,t=!1;for(let i=0;i<e.length;i++){let n=e.start(i),r=e.end(i);if(A>=n&&A<r){A>=r-this._config.lazyLoadRecoverDuration&&(t=!0);break}}t&&(window.clearInterval(this._progressChecker),this._progressChecker=null,t&&(u.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(A){let e=this._mediaElement.buffered;for(let t=0;t<e.length;t++){let i=e.start(t),n=e.end(t);if(A>=i&&A<n)return!0}return!1}_internalSeek(A){let e=this._isTimepointBuffered(A),t=!1,i=0;if(A<1&&this._mediaElement.buffered.length>0){let e=this._mediaElement.buffered.start(0);(e<1&&A<e||y.safari)&&(t=!0,i=y.safari?.1:e)}if(t)this._requestSetTime=!0,this._mediaElement.currentTime=i;else if(e){if(this._alwaysSeekKeyframe){let e=this._msectl.getNearestKeyframe(Math.floor(1e3*A));this._requestSetTime=!0,this._mediaElement.currentTime=null!=e?e.dts/1e3:A}else this._requestSetTime=!0,this._mediaElement.currentTime=A;null!=this._progressChecker&&this._checkProgressAndResume()}else null!=this._progressChecker&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._msectl.seek(A),this._transmuxer.seek(Math.floor(1e3*A)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=A)}_checkAndApplyUnbufferedSeekpoint(){if(this._seekpointRecord)if(this._seekpointRecord.recordTime<=this._now()-100){let A=this._mediaElement.currentTime;this._seekpointRecord=null,this._isTimepointBuffered(A)||(null!=this._progressChecker&&(window.clearTimeout(this._progressChecker),this._progressChecker=null),this._msectl.seek(A),this._transmuxer.seek(Math.floor(1e3*A)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=A))}else window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}_checkAndResumeStuckPlayback(A){let e=this._mediaElement;if(A||!this._receivedCanPlay||e.readyState<2){let A=e.buffered;A.length>0&&e.currentTime<A.start(0)&&(u.w(this.TAG,`Playback seems stuck at ${e.currentTime}, seek to ${A.start(0)}`),this._requestSetTime=!0,this._mediaElement.currentTime=A.start(0),this._mediaElement.removeEventListener("progress",this.e.onvProgress))}else this._mediaElement.removeEventListener("progress",this.e.onvProgress)}_onvLoadedMetadata(A){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null)}_onvSeeking(A){let e=this._mediaElement.currentTime,t=this._mediaElement.buffered;if(this._requestSetTime)this._requestSetTime=!1;else{if(e<1&&t.length>0){let A=t.start(0);if(A<1&&e<A||y.safari)return this._requestSetTime=!0,void(this._mediaElement.currentTime=y.safari?.1:A)}if(this._isTimepointBuffered(e)){if(this._alwaysSeekKeyframe){let A=this._msectl.getNearestKeyframe(Math.floor(1e3*e));null!=A&&(this._requestSetTime=!0,this._mediaElement.currentTime=A.dts/1e3)}null!=this._progressChecker&&this._checkProgressAndResume()}else this._seekpointRecord={seekPoint:e,recordTime:this._now()},window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}}_onvCanPlay(A){this._receivedCanPlay=!0,this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay)}_onvStalled(A){this._checkAndResumeStuckPlayback(!0)}_onvProgress(A){this._checkAndResumeStuckPlayback()}};var uA=class{constructor(A,e){if(this.TAG="NativePlayer",this._type="NativePlayer",this._emitter=new o.a,this._config=L(),"object"==typeof e&&Object.assign(this._config,e),"flv"===A.type.toLowerCase())throw new f("NativePlayer does't support flv MediaDataSource input!");if(A.hasOwnProperty("segments"))throw new f(`NativePlayer(${A.type}) doesn't support multipart playback!`);this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this)},this._pendingSeekTime=null,this._statisticsReporter=null,this._mediaDataSource=A,this._mediaElement=null}destroy(){this._mediaElement&&(this.unload(),this.detachMediaElement()),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(A,e){A===T.MEDIA_INFO?null!=this._mediaElement&&0!==this._mediaElement.readyState&&Promise.resolve().then(()=>{this._emitter.emit(T.MEDIA_INFO,this.mediaInfo)}):A===T.STATISTICS_INFO&&null!=this._mediaElement&&0!==this._mediaElement.readyState&&Promise.resolve().then(()=>{this._emitter.emit(T.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(A,e)}off(A,e){this._emitter.removeListener(A,e)}attachMediaElement(A){if(this._mediaElement=A,A.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),null!=this._pendingSeekTime)try{A.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(A){}}detachMediaElement(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}load(){if(!this._mediaElement)throw new c("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}unload(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(A){this._mediaElement.volume=A}get muted(){return this._mediaElement.muted}set muted(A){this._mediaElement.muted=A}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(A){this._mediaElement?this._mediaElement.currentTime=A:this._pendingSeekTime=A}get mediaInfo(){let A={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(A.duration=Math.floor(1e3*this._mediaElement.duration),this._mediaElement instanceof HTMLVideoElement&&(A.width=this._mediaElement.videoWidth,A.height=this._mediaElement.videoHeight)),A}get statisticsInfo(){let A={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return A;let e=!0,t=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){let A=this._mediaElement.getVideoPlaybackQuality();t=A.totalVideoFrames,i=A.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(t=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):e=!1;return e&&(A.decodedFrames=t,A.droppedFrames=i),A}_onvLoadedMetadata(A){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(T.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(T.STATISTICS_INFO,this.statisticsInfo)}};s.install();let dA={createPlayer:function(A,e){let t=A;if(null==t||"object"!=typeof t)throw new f("MediaDataSource must be an javascript object!");if(!t.hasOwnProperty("type"))throw new f("MediaDataSource must has type field to indicate video file type!");switch(t.type){case"flv":return new lA(t,e);default:return new uA(t,e)}},isSupported:function(){return C.supportMSEH264Playback()},getFeatureList:function(){return C.getFeatureList()}};dA.BaseLoader=v,dA.LoaderStatus=g,dA.LoaderErrors=p,dA.Events=T,dA.ErrorTypes=aA,dA.ErrorDetails=oA,dA.FlvPlayer=lA,dA.NativePlayer=uA,dA.LoggingControl=M,Object.defineProperty(dA,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var hA=dA,cA=t(2),fA=t.n(cA),mA=t(5),gA={insert:"head",singleton:!1};fA()(mA.a,gA),mA.a.locals;function pA(A){return(pA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function vA(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function _A(A,e){return(_A=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function yA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=EA(A);if(e){var n=EA(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return bA(this,t)}}function bA(A,e){return!e||"object"!==pA(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function EA(A){return(EA=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var wA=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&_A(A,e)}(s,A);var e,t,i,r=yA(s);function s(A){var e;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),(e=r.call(this,A)).state={vidoeUrl:"",id:(new Date).getTime()+Math.floor(9999*Math.random())+1},e}return e=s,i=[{key:"getDerivedStateFromProps",value:function(A){var e=A.vidoeUrl;return e?{vidoeUrl:e}:null}}],(t=[{key:"componentDidUpdate",value:function(){this.state.vidoeUrl&&this.startFlv()}},{key:"componentDidMount",value:function(){this.state.vidoeUrl&&this.startFlv()}},{key:"startFlv",value:function(){var A=this.state,e=A.vidoeUrl,t=A.id;if(hA.isSupported()){var i=document.getElementById(t);this.flvPlayer&&this.destroyFlv(),this.flvPlayer=hA.createPlayer({type:"flv",isLive:!0,hasAudio:!1,url:e},{enableStashBuffer:!0,stashInitialSize:128}),this.flvPlayer.attachMediaElement(i),this.flvPlayer.load(),this.flvPlayer.play()}else alert("请更换浏览器,该浏览器暂不支持。")}},{key:"destroyFlv",value:function(){this.flvPlayer.pause(),this.flvPlayer.unload(),this.flvPlayer.detachMediaElement(),this.flvPlayer.destroy(),this.flvPlayer=null}},{key:"render",value:function(){return n.a.createElement("div",{className:"flvWai"},n.a.createElement("video",{id:this.state.id,className:"videoFlv",autoPlay:!0,controls:!0,muted:!0}))}}])&&vA(e.prototype,t),i&&vA(e,i),s}(i.Component),RA=t(4),SA=t(6),DA={insert:"head",singleton:!1};fA()(SA.a,DA),SA.a.locals;function OA(A){return(OA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function PA(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function LA(A,e){return(LA=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function xA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=TA(A);if(e){var n=TA(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return CA(this,t)}}function CA(A,e){return!e||"object"!==OA(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function TA(A){return(TA=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var BA=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&LA(A,e)}(s,A);var e,t,i,r=xA(s);function s(){var A;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),(A=r.call(this)).state={showDateTime:"",classInfo:""},A}return e=s,i=[{key:"getDerivedStateFromProps",value:function(A,e){var t=A.className;return t!==e.className?{classInfo:t}:null}}],(t=[{key:"forShowDateTime",value:function(){var A=this.props.type,e=void 0===A?"YYYY-MM-DD HH:mm:ss":A;this.setState({showDateTime:Object(RA.a)().format(e)})}},{key:"componentDidMount",value:function(){var A=this;this.forShowDateTime(),this.timer=setInterval((function(){A.forShowDateTime()}),1e3)}},{key:"render",value:function(){var A=this.state,e=A.classInfo,t=A.showDateTime;return n.a.createElement("div",{className:"timerComCss"},n.a.createElement("p",{className:e},t))}}])&&PA(e.prototype,t),i&&PA(e,i),s}(i.Component),MA=t(7),IA={insert:"head",singleton:!1};fA()(MA.a,IA),MA.a.locals;function kA(A){return(kA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function zA(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function jA(A,e){return(jA=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function HA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=QA(A);if(e){var n=QA(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return NA(this,t)}}function NA(A,e){return!e||"object"!==kA(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function QA(A){return(QA=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var UA=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&jA(A,e)}(a,A);var e,i,r,s=HA(a);function a(){var A;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),(A=s.call(this)).state={imgUrl:"",httpImg:"",base64Url:""},A}return e=a,r=[{key:"getDerivedStateFromProps",value:function(A,e){var t=A.httpImg,i=A.imgUrl;return t&&t!==e.httpImg?{httpImg:t,imgUrl:i}:i!==e.imgUrl?{imgUrl:i}:null}}],(i=[{key:"shouldComponentUpdate",value:function(A){return this.props.imgUrl!==A.imgUrl?(this.count=0,this.getImage(A.imgUrl),!0):0===this.count&&(this.count++,!0)}},{key:"componentDidMount",value:function(){this.count=0,this.state.httpImg&&this.getImage(this.props.imgUrl)}},{key:"getImage",value:function(A){var e=this,i=this.state.httpImg,n=new XMLHttpRequest;n.open("POST",i),n.setRequestHeader("Content-Type","application/json");var r={reqInfo:{imgPath:A},request:"getImgDataByPath"};n.send(JSON.stringify(r)),n.onreadystatechange=function(){if(4===n.readyState&&(200===n.status||304===n.status)){var A=JSON.parse(n.responseText);0===A.status?e.setImgUrl("data:image/png;base64,"+A.resInfo.imgData):e.setImgUrl(t(20))}}}},{key:"setImgUrl",value:function(A){this.setState({base64Url:A})}},{key:"render",value:function(){var A=this.state.base64Url;return n.a.createElement("img",{src:A,alt:""})}}])&&zA(e.prototype,i),r&&zA(e,r),a}(i.Component),FA=t(8),GA={insert:"head",singleton:!1};fA()(FA.a,GA),FA.a.locals;function XA(A){return(XA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function VA(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function YA(A,e){return(YA=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function qA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=ZA(A);if(e){var n=ZA(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return WA(this,t)}}function WA(A,e){return!e||"object"!==XA(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function ZA(A){return(ZA=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var JA=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&YA(A,e)}(s,A);var e,t,i,r=qA(s);function s(){var A;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),(A=r.call(this)).state={id:(new Date).getTime()+Math.floor(9999*Math.random())+1,mode:"",width:"100px",height:"100px",circleRadius:5,circleBorderWidth:2,circleBorderColor:"#28B1D9",circleInColor:"#28B1D9",circleSelectColor:"#FFF",lineColor:"#28B1D9",lineWidth:2,areaColor:"rgba(40, 177, 217, 0.2)",disabled:"false",title:"",titleColor:"#000",titleFont:"14px bold 黑体",titleLineHeight:"",titleBackgroundColor:"",titlePadding:"10px",titleTextAlign:"center",titleWidth:100,titleFillColor:"",inputStyle:{},position:[10,10],serviceData:[]},A}return e=s,i=[{key:"getDerivedStateFromProps",value:function(A,e){var t={};for(var i in A)A[i]&&A[i]!==e[i]&&(t[i]=A[i]);return Object.keys(t).length>0?t:null}}],(t=[{key:"shouldComponentUpdate",value:function(A){return this.props.serviceData.length!==A.serviceData}},{key:"componentDidMount",value:function(){var A=this;this.init(),window.addEventListener("resize",(function(){A.init()}))}},{key:"init",value:function(){this.setCanvasSize()}},{key:"setCanvasSize",value:function(){var A=this.state.id,e=document.getElementById(A).parentNode,t=e.offsetWidth,i=e.offsetHeight;this.setData({width:t+"px",height:i+"px"})}},{key:"removeTags",value:function(A,e){for(var t=document.getElementsByTagName(A),i=t.length-1;i>=0;i--)t[i].className==e&&t[i].parentNode.removeChild(t[i])}},{key:"draw",value:function(){var A=this.state,e=A.id,t=A.serviceData,i=A.width,n=A.height,r=A.mode,s=A.disabled,a=document.getElementById(e).getContext("2d");a.clearRect(0,0,parseFloat(i),parseFloat(n)),this.removeTags("input",this.props.listId?this.props.listId:e+""),this.drawLine(a,t),this.drawCircleAll(a,t),this.drawWriting(a,t),"false"===s&&("click"===r?this.isontouchend()?this.touchMove():this.clickMove():this.isontouchend()?this.touchMove():this.mouseMove())}},{key:"isontouchend",value:function(){return"ontouchend"in document}},{key:"drawCircleAll",value:function(A,e){for(var t=0;t<e.length;t++)this.drawCircle(A,e[t][0],e[t][1],this.selectedIndex===t)}},{key:"drawCircle",value:function(A,e,t,i){var n=this.state,r=n.circleRadius,s=n.circleInColor,a=n.circleBorderColor,o=n.circleBorderWidth,l=n.circleSelectColor;A.fillStyle=i?l:s,A.beginPath(),A.arc(e,t,parseInt(r),0,2*Math.PI,!0),A.closePath(),A.fill(),A.beginPath(),A.arc(e,t,parseInt(r),0,2*Math.PI,!0),A.lineWidth=parseInt(o),A.strokeStyle=a,A.stroke(),A.closePath()}},{key:"drawLine",value:function(A,e){var t=this.state,i=t.lineColor,n=t.lineWidth,r=t.areaColor;A.beginPath();for(var s=0;s<e.length;s++)0===s?A.moveTo(e[s][0],e[s][1]):A.lineTo(e[s][0],e[s][1]);A.lineWidth=parseInt(n),A.strokeStyle=i,A.closePath(),A.fillStyle=r,A.fill(),A.stroke()}},{key:"drawWriting",value:function(A,e){var t=this,i=this.state,n=i.title,r=i.titleColor,s=i.titleFont,a=i.titleLineHeight,o=i.position,l=i.titlePadding,u=i.disabled;A.font=s||"18px bold 黑体",A.fillStyle=r||"#fff",A.lineHeight=a||s.split(" ")[0],A.textBaseline="middle";var d=parseInt(a||s.split(" ")[0]);if("true"===u)this.ctxWnzi(A,e);else{for(var h=0,c=99999999,f=0;f<e.length;f++)parseFloat(e[f][0])>h&&(h=parseFloat(e[f][0])),parseFloat(e[f][1])<c&&(c=parseFloat(e[f][1]));n&&n.split(/\n/).forEach((function(A,e){t.inputStyleCreate(A,h+(o[0]||15),c+(o[1]||15)+e*(d+3*parseInt(l)),e)}))}}},{key:"ctxWnzi",value:function(A,e){var t=this.state,i=t.title,n=t.titleColor,r=t.titleFont,s=t.titleLineHeight,a=t.position,o=t.titleWidth,l=t.titlePadding,u=t.titleFillColor;A.font=r||"18px bold 黑体",A.lineHeight=s||r.split(" ")[0],A.textBaseline="middle";for(var d=parseInt(s||r.split(" ")[0]),h=0,c=99999999,f=0;f<e.length;f++)parseFloat(e[f][0])>h&&(h=parseFloat(e[f][0])),parseFloat(e[f][1])<c&&(c=parseFloat(e[f][1]));i.split(/\n/).forEach((function(e,t){A.fillStyle=u||"rgba(15, 62, 166, 0.2)",A.fill(),A.fillRect(h+(a[0]||15),c+(a[1]||15)+t*(d+2*parseInt(l))-parseFloat(d/2)-parseFloat(parseInt(l)/2),o+parseInt(l),d+parseInt(l)),A.fillStyle=n||"#fff",A.fillText(e,h+(a[0]||15)+parseFloat(parseInt(l)/2),c+(a[1]||15)+t*(d+2*parseInt(l)))}))}},{key:"inputStyleCreate",value:function(A,e,t,i){var n=this,r=this.state,s=r.title,a=r.titleColor,o=r.titleFont,l=r.titleTextAlign,u=r.inputStyle,d=r.titleLineHeight,h=r.titleBackgroundColor,c=r.titleWidth,f=r.titlePadding,m=r.id,g=document.getElementById(m).parentNode,p=document.createElement("input");if(p.style.font=o,p.style.lineHeight=d,p.style.color=a,p.style.backgroundColor=h||"rgba(40, 177, 217, 0.2)",p.style.padding=f,p.style.textAlign=l,p.style.position="absolute",p.style.border="none",p.style.left=e+"px",p.style.top=t+"px",p.style.zIndex="100",p.style.width=c+"px",Object.keys(u).length>0)for(var v in u)p.style[v]=u[v];p.value=A,p.className=this.props.listId?this.props.listId+"":m+"",p.oninput=function(A){var e=s.split(/\n/);e[i]=A.target.value,n.setState({title:e.join("\n")}),n.props.wenziChange(e.join("\n"))},g.appendChild(p)}},{key:"clickMove",value:function(){var A=this,e=this.state,t=e.id,i=e.serviceData;document.getElementById(t).onclick=function(e){var t=e.layerX,n=e.layerY;A.selectedIndex||0===A.selectedIndex?(i[A.selectedIndex]=[t,n],A.selectedIndex=null,A.setData({serviceData:i}),A.sendFather(i)):(A.selectBox(t,n),A.setData({serviceData:i}))}}},{key:"mouseMove",value:function(){var A=this,e=this.state.id,t=document.getElementById(e);t.onmousedown=function(e){var i=A.state.serviceData,n=e.layerX,r=e.layerY;A.selectBox(n,r)&&(t.onmousemove=function(e){i[A.selectedIndex]=[e.layerX,e.layerY],A.setData({serviceData:i})})},t.onmouseup=function(e){t.onmousemove=null,A.selectedIndex=null,A.setData({serviceData:A.state.serviceData});var i=e.layerX,n=e.layerY;A.selectBox(i,n)&&A.sendFather(A.state.serviceData)}}},{key:"touchMove",value:function(){var A=this,e=this.state,t=e.id,i=e.serviceData,n=document.getElementById(t),r=n.parentNode,s=r.getBoundingClientRect().top,a=r.getBoundingClientRect().left;n.ontouchstart=function(e){var t=e.touches[0].pageX-a,r=e.touches[0].pageY-s;A.selectBox(t,r)&&(n.ontouchmove=function(e){i[A.selectedIndex]=[e.touches[0].pageX-a,e.touches[0].pageY-s],A.setData({serviceData:i})})},n.ontouchend=function(e){A.selectedIndex=null,n.ontouchmove=null,A.setData({serviceData:i});var t=e.changedTouches[0].pageX-a,r=e.changedTouches[0].pageY-s;A.selectBox(t,r)&&A.sendFather(i)}}},{key:"selectBox",value:function(A,e){var t=this.state,i=t.serviceData,n=t.circleRadius+t.circleBorderWidth;this.selectedIndex=null;for(var r=0;r<i.length;r++){var s=i[r][0],a=i[r][1];if((s-A)*(s-A)+(a-e)*(a-e)<n*n){this.selectedIndex=r;break}}return r!=i.length}},{key:"sendFather",value:function(A){"true"!==this.state.disabled&&this.props.change(A)}},{key:"setData",value:function(A){var e=this;this.setState(A,(function(){e.draw()}))}},{key:"render",value:function(){var A=this.state,e=A.id,t=A.width,i=A.height;return n.a.createElement("canvas",{style:{position:"absolute",top:0,left:0},id:e,width:t,height:i})}}])&&VA(e.prototype,t),i&&VA(e,i),s}(i.Component);function KA(A){return(KA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function $A(A,e,t){return e in A?Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[e]=t,A}function Ae(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function ee(A,e){return(ee=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function te(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=ne(A);if(e){var n=ne(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return ie(this,t)}}function ie(A,e){return!e||"object"!==KA(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function ne(A){return(ne=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var re=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&ee(A,e)}(s,A);var e,t,i,r=te(s);function s(A){var e,t;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),(t=r.call(this,A)).state=($A(e={id:(new Date).getTime()+"fun",serviceData:[],mode:"polygon",disabled:"false",circleRadius:5,circleBorderWidth:2,circleBorderColor:"#28B1D9",circleInColor:"#28B1D9",circleSelectColor:"#FFF",lineColor:"#28B1D9",lineWidth:2,areaColor:"rgba(40, 177, 217, 0.2)"},"disabled","false"),$A(e,"title",""),$A(e,"titleColor","#000"),$A(e,"titleFont","14px bold 黑体"),$A(e,"titleLineHeight",""),$A(e,"titleBackgroundColor",""),$A(e,"titlePadding","10px"),$A(e,"titleTextAlign","center"),$A(e,"titleWidth",100),$A(e,"titleFillColor",""),$A(e,"position",[10,10]),$A(e,"inputStyle",{}),e),t}return e=s,i=[{key:"getDerivedStateFromProps",value:function(A,e){var t={};for(var i in A)A[i]&&A[i]!==e[i]&&(t[i]=A[i]);return Object.keys(t).length>0?t:null}}],(t=[{key:"componentDidMount",value:function(){var A=this.state.mode;"react"===A?this.setReact():this.setPolygon()}},{key:"isNull",value:function(){var A=this.state.id,e=document.getElementById(this[A].state.id),t=document.createElement("canvas");return t.width=e.width,t.height=e.height,e.toDataURL()==t.toDataURL()}},{key:"setReact",value:function(){var A=this,e=this.state.id;this.count=0;var t=document.getElementById(this[e].state.id),i=function(t){var i=A.state.serviceData,n=t.layerX,r=t.layerY;if(0===A.count)i[1][1]=r,i[2]=[n,r],i[3][0]=n;else if(A[e].selectedIndex||0===A[e].selectedIndex){switch(i[A[e].selectedIndex]=[n,r],A[e].selectedIndex){case 0:i[1][0]=n,i[3][1]=r;break;case 1:i[0][0]=n,i[2][1]=r;break;case 2:i[1][1]=r,i[3][0]=n;break;case 3:i[0][1]=r,i[2][0]=n}A.props.change(i)}A.setState({serviceData:i},(function(){A[e].draw()}))};t.addEventListener("mousedown",(function(n){if(2!==n.button){var r=n.layerX,s=n.layerY,a=[r,s];if(0===A.state.serviceData.length){A.count++;var o=[[].concat(a),[].concat(a),[].concat(a),[].concat(a)];A.setState({serviceData:o},(function(){A[e].draw()})),t.addEventListener("mousemove",i)}else A[e].selectBox(r,s)&&(A.count++,t.addEventListener("mousemove",i))}})),t.addEventListener("mouseup",(function(A){t.removeEventListener("mousemove",i)})),t.oncontextmenu=function(A){A.preventDefault()}}},{key:"setPolygon",value:function(){var A=this,e=this.state.id;this.state.serviceData.length>1?this.serviceDataFlag=!0:this.polygonCount=0;var t=document.getElementById(this[e].state.id),i=function(t){var i=t.layerX,n=t.layerY,r=A.state.serviceData;r.push([i,n]),A.setState({serviceData:r},(function(){A[e].draw()}))};this.serviceDataFlag||t.addEventListener("click",i),t.oncontextmenu=function(e){e.preventDefault(),2===e.button&&(0==A.polygonCount&&(A.polygonCount++,A.sendFather(A.state.serviceData)),t.removeEventListener("click",i))}}},{key:"isInPolygon",value:function(A,e,t){var i,n,r,s=0,a=e.length;n=e[0];for(var o=1;o<=a;o++)r=e[o%a],A[0]>Math.min(n[0],r[0])&&A[0]<=Math.max(n[0],r[0])&&A[1]<=Math.max(n[1],r[1])&&n[0]!=r[0]&&(i=(A[0]-n[0])*(r[1]-n[1])/(r[0]-n[0])+n[1],(n[1]==r[1]||A[1]<=i)&&s++),n=r;return s%2!=0||!!t.selectBox(A[0],A[1])}},{key:"wenziChange",value:function(A){this.setState({title:A}),this.props.wenziChange(A)}},{key:"change",value:function(A){this.sendFather(A)}},{key:"sendFather",value:function(A){"true"!==this.state.disabled&&this.props.change(A)}},{key:"render",value:function(){var A=this,e=this.state,t=e.serviceData,i=e.disabled,r=e.circleRadius,s=e.circleBorderWidth,a=e.circleBorderColor,o=e.circleInColor,l=e.circleSelectColor,u=e.lineColor,d=e.lineWidth,h=e.areaColor,c=e.title,f=e.titleColor,m=e.titleFont,g=e.titleLineHeight,p=e.titleBackgroundColor,v=e.titlePadding,_=e.titleTextAlign,y=e.titleWidth,b=e.titleFillColor,E=e.inputStyle,w=e.position,R=e.id;return n.a.createElement(JA,{serviceData:t,disabled:i,circleRadius:r,circleBorderWidth:s,circleBorderColor:a,circleSelectColor:l,circleInColor:o,lineColor:u,lineWidth:d,areaColor:h,title:c,titleColor:f,titleFont:m,titleLineHeight:g,titleBackgroundColor:p,titlePadding:v,titleTextAlign:_,titleWidth:y,titleFillColor:b,position:w,inputStyle:E,listId:this.props.listId,ref:function(e){A[R]=e},wenziChange:function(e){return A.wenziChange(e)},change:function(e){return A.change(e)}})}}])&&Ae(e.prototype,t),i&&Ae(e,i),s}(i.Component),se=t(9),ae={insert:"head",singleton:!1};fA()(se.a,ae),se.a.locals;function oe(A){return(oe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A})(A)}function le(A,e,t){return e in A?Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[e]=t,A}function ue(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function de(A,e){return(de=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A})(A,e)}function he(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=fe(A);if(e){var n=fe(this).constructor;t=Reflect.construct(i,arguments,n)}else t=i.apply(this,arguments);return ce(this,t)}}function ce(A,e){return!e||"object"!==oe(e)&&"function"!=typeof e?function(A){if(void 0===A)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return A}(A):e}function fe(A){return(fe=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)})(A)}var me=function(A){!function(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&de(A,e)}(a,A);var e,i,r,s=he(a);function a(){var A,e;return function(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),(e=s.call(this)).state=(le(A={id:(new Date).getTime()+"waiceng",disabled:"false",circleRadius:5,circleBorderWidth:2,circleBorderColor:"#28B1D9",circleInColor:"#28B1D9",circleSelectColor:"#FFF",lineColor:"#28B1D9",lineWidth:2,areaColor:"rgba(40, 177, 217, 0.2)"},"disabled","false"),le(A,"title",""),le(A,"titleColor","#000"),le(A,"titleFont","14px bold 黑体"),le(A,"titleLineHeight",""),le(A,"titleBackgroundColor",""),le(A,"titlePadding","10px"),le(A,"titleTextAlign","center"),le(A,"titleWidth",100),le(A,"titleFillColor",""),le(A,"position",[10,10]),le(A,"inputStyle",{}),A),e}return e=a,r=[{key:"getDerivedStateFromProps",value:function(A,e){var t={};for(var i in A)A[i]&&A[i]!==e[i]&&("object"===oe(A[i])?t[i]=JSON.parse(JSON.stringify(A[i])):t[i]=A[i]);return Object.keys(t).length>0?t:null}}],(i=[{key:"componentDidMount",value:function(){var A=this.props.list;A&&A.length>0&&(this.selectIndex=A[A.length-1].id),this.selectArea()}},{key:"clickIt",value:function(A){var e=this.props.list,t=(new Date).getTime();e&&0!==e.length?this[e[e.length-1].id+e[e.length-1].mode].isNull()?this.props.err(!1,"画布为空,请先绘制在添加。"):e[e.length-1].serviceData?(e.push({id:t+"",title:this.props.placeholder?this.props.placeholder:"请输入",mode:A}),this.selectIndex=t+""):this.props.err(!1,"画布没有保存,请先绘制完成在添加"):((e=[]).push({id:t,title:this.props.placeholder?this.props.placeholder:"请输入",mode:A}),this.selectIndex=t),this.props.change(e)}},{key:"delete",value:function(){var A=this,e=this.state.list.filter((function(e){return e.id===A.selectIndex})),t=this[e[0].id+e[0].mode];t[t.state.id].removeTags("input",t.props.listId),this.props.delete(this.selectIndex,"发出删除指令")}},{key:"change",value:function(A){var e=this,t=this.props.list;t=t.map((function(t){return t.id===e.selectIndex&&(t.serviceData=JSON.parse(JSON.stringify(A))),t})),this.props.change(t)}},{key:"selectArea",value:function(){var A=this,e=this.state.id;document.getElementById(e).onclick=function(e){var t=A.props.list,i=e.layerX,n=e.layerY;if(A.indexflag=!1,t)for(var r=0;r<t.length;r++)if(t[r].serviceData){var s=A[t[r].id+t[r].mode].state.id;if(A.isInPolygon([i,n],JSON.parse(JSON.stringify(t[r].serviceData)),A[t[r].id+t[r].mode][s])){var a=A[t[r].id+t[r].mode][s].state.id;A.indexflag?document.getElementById(a).style.zIndex=0:(document.getElementById(a).style.zIndex=99,A.selectIndex=t[r].id,A.indexflag=!0)}else a=A[t[r].id+t[r].mode][s].state.id,document.getElementById(a).style.zIndex=0}}}},{key:"isInPolygon",value:function(A,e,t){for(var i=A[0],n=A[1],r=!1,s=0,a=e.length-1;s<e.length;a=s++){var o=e[s][0],l=e[s][1],u=e[a][0],d=e[a][1],h=l>n!=d>n&&i<(u-o)*(n-l)/(d-l)+o;h&&(r=!r)}return!(h||!t.selectBox(A[0],A[1]))||r}},{key:"wenziChange",value:function(A,e){this.props.wenziChange(A,e)}},{key:"render",value:function(){var A=this,e=this.state,i=e.id,r=e.disabled,s=e.circleRadius,a=e.circleBorderWidth,o=e.circleBorderColor,l=e.circleInColor,u=e.circleSelectColor,d=e.lineColor,h=e.lineWidth,c=e.areaColor,f=e.title,m=e.titleColor,g=e.titleFont,p=e.titleLineHeight,v=e.titleBackgroundColor,_=e.titlePadding,y=e.titleTextAlign,b=e.titleWidth,E=e.titleFillColor,w=e.position,R=this.props.list;return n.a.createElement("div",{id:i,style:{width:"100%",height:"100%",position:"relative"}},n.a.createElement("div",{className:"buttonFunAreaSelectPlus",onClick:function(){return A.clickIt("react")},style:{background:"url("+t(11)+") no-repeat center center",backgroundSize:"100% 200%"}},"添加矩形"),n.a.createElement("div",{className:"buttonFunAreaSelectPlus",onClick:function(){return A.delete()},style:{background:"url("+t(11)+") no-repeat center center",backgroundSize:"100% 200%"}},"删除"),R&&R.map((function(e,t){return n.a.createElement(re,{disabled:r,circleRadius:s,circleBorderWidth:a,circleBorderColor:o,circleSelectColor:u,circleInColor:l,lineColor:d,lineWidth:h,areaColor:c,title:e.title?e.title:f,titleColor:e.titleColor?e.titleColor:m,titleFont:e.titleFont?e.titleFont:g,titleLineHeight:e.titleLineHeight?e.titleLineHeight:p,titleBackgroundColor:e.titleBackgroundColor?e.titleBackgroundColor:v,titlePadding:e.titlePadding?e.titlePadding:_,titleTextAlign:e.titleTextAlign?e.titleTextAlign:y,titleWidth:e.titleWidth?e.titleWidth:b,titleFillColor:e.titleFillColor?e.titleFillColor:E,position:w,key:e.id,listId:e.id,serviceData:e.serviceData,ref:function(t){A[e.id+e.mode]=t},mode:e.mode,wenziChange:function(e){return A.wenziChange(e,t)},change:function(e){return A.change(e)}})})))}}])&&ue(e.prototype,i),r&&ue(e,r),a}(i.Component);console.log("%c中科视语-组件库","text-shadow: 0 1px 0 #ccc,0 2px 0 #c9c9c9,0 3px 0 #bbb,0 4px 0 #b9b9b9,0 5px 0 #aaa,0 6px 1px rgba(0,0,0,.1),0 0 5px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.3),0 3px 5px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.2),0 20px 20px rgba(0,0,0,.15);font-size:35px")}])}));
|