diff --git a/dist/McuClient.js b/dist/McuClient.js
index dbe40e9..c257b37 100644
--- a/dist/McuClient.js
+++ b/dist/McuClient.js
@@ -6,7 +6,7 @@ if("number"!=typeof n||n%1!==0)throw TypeError("Illegal offset: "+n+" (not an in
 d&&1===e.nodeType&&(n.overflow=[_.overflow,_.overflowX,_.overflowY],l=E&&E.display,null==l&&(l=xe.get(e,"display")),f=Ee.css(e,"display"),"none"===f&&(l?f=l:(R([e],!0),l=e.style.display||l,f=Ee.css(e,"display"),R([e]))),("inline"===f||"inline-block"===f&&null!=l)&&"none"===Ee.css(e,"float")&&(u||(c.done(function(){_.display=l}),null==l&&(f=_.display,l="none"===f?"":f)),_.display="inline-block")),n.overflow&&(_.overflow="hidden",c.always(function(){_.overflow=n.overflow[0],_.overflowX=n.overflow[1],_.overflowY=n.overflow[2]})),u=!1;for(r in h)u||(E?"hidden"in E&&(p=E.hidden):E=xe.access(e,"fxshow",{display:l}),a&&(E.hidden=!p),p&&R([e],!0),c.done(function(){p||R([e]),xe.remove(e,"fxshow");for(r in h)Ee.style(e,r,h[r])})),u=q(p?E[r]:0,r,c),r in E||(E[r]=u.start,p&&(u.end=u.start,u.start=0))}}function J(e,t){var n,r,i,a,o;for(n in e)if(r=Ee.camelCase(n),i=t[r],a=e[n],Ee.isArray(a)&&(i=a[1],a=e[n]=a[0]),n!==r&&(e[r]=a,delete e[n]),o=Ee.cssHooks[r],o&&"expand"in o){a=o.expand(a),delete e[r];for(n in a)n in e||(e[n]=a[n],t[n]=i)}else t[r]=i}function W(e,t,n){var r,i,a=0,o=W.prefilters.length,s=Ee.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=pt||G(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,a=1-r,o=0,u=l.tweens.length;o<u;o++)l.tweens[o].run(a);return s.notifyWith(e,[l,a,n]),a<1&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:Ee.extend({},t),opts:Ee.extend(!0,{specialEasing:{},easing:Ee.easing._default},n),originalProperties:t,originalOptions:n,startTime:pt||G(),duration:n.duration,tweens:[],createTween:function(t,n){var r=Ee.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),f=l.props;for(J(f,l.opts.specialEasing);a<o;a++)if(r=W.prefilters[a].call(l,e,f,l.opts))return Ee.isFunction(r.stop)&&(Ee._queueHooks(l.elem,l.opts.queue).stop=Ee.proxy(r.stop,r)),r;return Ee.map(f,q,l),Ee.isFunction(l.opts.start)&&l.opts.start.call(e,l),Ee.fx.timer(Ee.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function Q(e){return e.getAttribute&&e.getAttribute("class")||""}function K(e,t,n,r){var i;if(Ee.isArray(t))Ee.each(t,function(t,i){n||Dt.test(e)?r(e,i):K(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)});else if(n||"object"!==Ee.type(t))r(e,t);else for(i in t)K(e+"["+i+"]",t[i],n,r)}function z(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,a=t.toLowerCase().match(Ne)||[];if(Ee.isFunction(n))for(;r=a[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function $(e,t,n,r){function i(s){var u;return a[s]=!0,Ee.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!=typeof l||o||a[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var a={},o=e===Gt;return i(t.dataTypes[0])||!a["*"]&&i("*")}function Z(e,t){var n,r,i=Ee.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&Ee.extend(!0,e,r),e}function X(e,t,n){for(var r,i,a,o,s=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)a=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){a=i;break}o||(o=i)}a=a||o}if(a)return a!==u[0]&&u.unshift(a),n[a]}function ee(e,t,n,r){var i,a,o,s,u,l={},f=e.dataTypes.slice();if(f[1])for(o in e.converters)l[o.toLowerCase()]=e.converters[o];for(a=f.shift();a;)if(e.responseFields[a]&&(n[e.responseFields[a]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=a,a=f.shift())if("*"===a)a=u;else if("*"!==u&&u!==a){if(o=l[u+" "+a]||l["* "+a],!o)for(i in l)if(s=i.split(" "),s[1]===a&&(o=l[u+" "+s[0]]||l["* "+s[0]])){o===!0?o=l[i]:l[i]!==!0&&(a=s[0],f.unshift(s[1]));break}if(o!==!0)if(o&&e.throws)t=o(t);else try{t=o(t)}catch(e){return{state:"parsererror",error:o?e:"No conversion from "+u+" to "+a}}}return{state:"success",data:t}}function te(e){return Ee.isWindow(e)?e:9===e.nodeType&&e.defaultView}var ne=[],re=n.document,ie=Object.getPrototypeOf,ae=ne.slice,oe=ne.concat,se=ne.push,ue=ne.indexOf,le={},fe=le.toString,de=le.hasOwnProperty,ce=de.toString,he=ce.call(Object),_e={},pe="3.1.0",Ee=function(e,t){return new Ee.fn.init(e,t)},ge=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ye=/^-ms-/,Re=/-([a-z])/g,me=function(e,t){return t.toUpperCase()};Ee.fn=Ee.prototype={jquery:pe,constructor:Ee,length:0,toArray:function(){return ae.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:ae.call(this)},pushStack:function(e){var t=Ee.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return Ee.each(this,e)},map:function(e){return this.pushStack(Ee.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(ae.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:se,sort:ne.sort,splice:ne.splice},Ee.extend=Ee.fn.extend=function(){var e,t,n,r,i,a,o=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof o&&(l=o,o=arguments[s]||{},s++),"object"==typeof o||Ee.isFunction(o)||(o={}),s===u&&(o=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)n=o[t],r=e[t],o!==r&&(l&&r&&(Ee.isPlainObject(r)||(i=Ee.isArray(r)))?(i?(i=!1,a=n&&Ee.isArray(n)?n:[]):a=n&&Ee.isPlainObject(n)?n:{},o[t]=Ee.extend(l,a,r)):void 0!==r&&(o[t]=r));return o},Ee.extend({expando:"jQuery"+(pe+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===Ee.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=Ee.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==fe.call(e))&&(!(t=ie(e))||(n=de.call(t,"constructor")&&t.constructor,"function"==typeof n&&ce.call(n)===he))},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?le[fe.call(e)]||"object":typeof e},globalEval:function(e){o(e)},camelCase:function(e){return e.replace(ye,"ms-").replace(Re,me)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t){var n,r=0;if(s(e))for(n=e.length;r<n&&t.call(e[r],r,e[r])!==!1;r++);else for(r in e)if(t.call(e[r],r,e[r])===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ge,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(s(Object(e))?Ee.merge(n,"string"==typeof e?[e]:e):se.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:ue.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],a=0,o=e.length,s=!n;a<o;a++)r=!t(e[a],a),r!==s&&i.push(e[a]);return i},map:function(e,t,n){var r,i,a=0,o=[];if(s(e))for(r=e.length;a<r;a++)i=t(e[a],a,n),null!=i&&o.push(i);else for(a in e)i=t(e[a],a,n),null!=i&&o.push(i);return oe.apply([],o)},guid:1,proxy:function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),Ee.isFunction(e))return r=ae.call(arguments,2),i=function(){return e.apply(t||this,r.concat(ae.call(arguments)))},i.guid=e.guid=e.guid||Ee.guid++,i},now:Date.now,support:_e}),"function"==typeof Symbol&&(Ee.fn[Symbol.iterator]=ne[Symbol.iterator]),Ee.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){le["[object "+t+"]"]=t.toLowerCase()});var Ce=function(e){function t(e,t,n,r){var i,a,o,s,u,l,f,c=t&&t.ownerDocument,_=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==_&&9!==_&&11!==_)return n;if(!r&&((t?t.ownerDocument||t:j)!==U&&N(t),t=t||U,k)){if(11!==_&&(u=ge.exec(e)))if(i=u[1]){if(9===_){if(!(o=t.getElementById(i)))return n;if(o.id===i)return n.push(o),n}else if(c&&(o=c.getElementById(i))&&H(t,o)&&o.id===i)return n.push(o),n}else{if(u[2])return Z.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&T.getElementsByClassName&&t.getElementsByClassName)return Z.apply(n,t.getElementsByClassName(i)),n}if(T.qsa&&!J[e+" "]&&(!M||!M.test(e))){if(1!==_)c=t,f=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(Ce,Te):t.setAttribute("id",s=F),l=A(e),a=l.length;a--;)l[a]="#"+s+" "+h(l[a]);f=l.join(","),c=ye.test(e)&&d(t.parentNode)||t}if(f)try{return Z.apply(n,c.querySelectorAll(f)),n}catch(e){}finally{s===F&&t.removeAttribute("id")}}}return P(e.replace(se,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>v.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[F]=!0,e}function i(e){var t=U.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function a(e,t){for(var n=e.split("|"),r=n.length;r--;)v.attrHandle[n[r]]=t}function o(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return function(t){return"label"in t&&t.disabled===e||"form"in t&&t.disabled===e||"form"in t&&t.disabled===!1&&(t.isDisabled===e||t.isDisabled!==!e&&("label"in t||!Se(t))!==e)}}function f(e){return r(function(t){return t=+t,r(function(n,r){for(var i,a=e([],n.length,t),o=a.length;o--;)n[i=a[o]]&&(n[i]=!(r[i]=n[i]))})})}function d(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function c(){}function h(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function _(e,t,n){var r=t.dir,i=t.next,a=i||r,o=n&&"parentNode"===a,s=V++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,u){var l,f,d,c=[G,s];if(u){for(;t=t[r];)if((1===t.nodeType||o)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||o)if(d=t[F]||(t[F]={}),f=d[t.uniqueID]||(d[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=f[a])&&l[0]===G&&l[1]===s)return c[2]=l[2];if(f[a]=c,c[2]=e(t,n,u))return!0}}}function p(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function E(e,n,r){for(var i=0,a=n.length;i<a;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var a,o=[],s=0,u=e.length,l=null!=t;s<u;s++)(a=e[s])&&(n&&!n(a,r,i)||(o.push(a),l&&t.push(s)));return o}function y(e,t,n,i,a,o){return i&&!i[F]&&(i=y(i)),a&&!a[F]&&(a=y(a,o)),r(function(r,o,s,u){var l,f,d,c=[],h=[],_=o.length,p=r||E(t||"*",s.nodeType?[s]:s,[]),y=!e||!r&&t?p:g(p,c,e,s,u),R=n?a||(r?e:_||i)?[]:o:y;if(n&&n(y,R,s,u),i)for(l=g(R,h),i(l,[],s,u),f=l.length;f--;)(d=l[f])&&(R[h[f]]=!(y[h[f]]=d));if(r){if(a||e){if(a){for(l=[],f=R.length;f--;)(d=R[f])&&l.push(y[f]=d);a(null,R=[],l,u)}for(f=R.length;f--;)(d=R[f])&&(l=a?ee(r,d):c[f])>-1&&(r[l]=!(o[l]=d))}}else R=g(R===o?R.splice(_,R.length):R),a?a(null,o,R,u):Z.apply(o,R)})}function R(e){for(var t,n,r,i=e.length,a=v.relative[e[0].type],o=a||v.relative[" "],s=a?1:0,u=_(function(e){return e===t},o,!0),l=_(function(e){return ee(t,e)>-1},o,!0),f=[function(e,n,r){var i=!a&&(r||n!==w)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];s<i;s++)if(n=v.relative[e[s].type])f=[_(p(f),n)];else{if(n=v.filter[e[s].type].apply(null,e[s].matches),n[F]){for(r=++s;r<i&&!v.relative[e[r].type];r++);return y(s>1&&p(f),s>1&&h(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(se,"$1"),n,s<r&&R(e.slice(s,r)),r<i&&R(e=e.slice(r)),r<i&&h(e))}f.push(n)}return p(f)}function m(e,n){var i=n.length>0,a=e.length>0,o=function(r,o,s,u,l){var f,d,c,h=0,_="0",p=r&&[],E=[],y=w,R=r||a&&v.find.TAG("*",l),m=G+=null==y?1:Math.random()||.1,C=R.length;for(l&&(w=o===U||o||l);_!==C&&null!=(f=R[_]);_++){if(a&&f){for(d=0,o||f.ownerDocument===U||(N(f),s=!k);c=e[d++];)if(c(f,o||U,s)){u.push(f);break}l&&(G=m)}i&&((f=!c&&f)&&h--,r&&p.push(f))}if(h+=_,i&&_!==h){for(d=0;c=n[d++];)c(p,E,o,s);if(r){if(h>0)for(;_--;)p[_]||E[_]||(E[_]=z.call(u));E=g(E)}Z.apply(u,E),l&&!r&&E.length>0&&h+n.length>1&&t.uniqueSort(u)}return l&&(G=m,w=y),p};return i?r(o):o}var C,T,v,S,I,A,b,P,w,D,O,N,U,L,k,M,x,B,H,F="sizzle"+1*new Date,j=e.document,G=0,V=0,q=n(),Y=n(),J=n(),W=function(e,t){return e===t&&(O=!0),0},Q={}.hasOwnProperty,K=[],z=K.pop,$=K.push,Z=K.push,X=K.slice,ee=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",ie="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ne+"*\\]",ae=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ie+")*)|.*)\\)|)",oe=new RegExp(ne+"+","g"),se=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),ue=new RegExp("^"+ne+"*,"+ne+"*"),le=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),fe=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),de=new RegExp(ae),ce=new RegExp("^"+re+"$"),he={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re+"|[*])"),ATTR:new RegExp("^"+ie),PSEUDO:new RegExp("^"+ae),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},_e=/^(?:input|select|textarea|button)$/i,pe=/^h\d$/i,Ee=/^[^{]+\{\s*\[native \w/,ge=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ye=/[+~]/,Re=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),me=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},Ce=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,Te=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ve=function(){N()},Se=_(function(e){return e.disabled===!0},{dir:"parentNode",next:"legend"});try{Z.apply(K=X.call(j.childNodes),j.childNodes),K[j.childNodes.length].nodeType}catch(e){Z={apply:K.length?function(e,t){$.apply(e,X.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}T=t.support={},I=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},N=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:j;return r!==U&&9===r.nodeType&&r.documentElement?(U=r,L=U.documentElement,k=!I(U),j!==U&&(n=U.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",ve,!1):n.attachEvent&&n.attachEvent("onunload",ve)),T.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),T.getElementsByTagName=i(function(e){return e.appendChild(U.createComment("")),!e.getElementsByTagName("*").length}),T.getElementsByClassName=Ee.test(U.getElementsByClassName),T.getById=i(function(e){return L.appendChild(e).id=F,!U.getElementsByName||!U.getElementsByName(F).length}),T.getById?(v.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&k){var n=t.getElementById(e);return n?[n]:[]}},v.filter.ID=function(e){var t=e.replace(Re,me);return function(e){return e.getAttribute("id")===t}}):(delete v.find.ID,v.filter.ID=function(e){var t=e.replace(Re,me);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),v.find.TAG=T.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):T.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,a=t.getElementsByTagName(e);if("*"===e){for(;n=a[i++];)1===n.nodeType&&r.push(n);return r}return a},v.find.CLASS=T.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&k)return t.getElementsByClassName(e)},x=[],M=[],(T.qsa=Ee.test(U.querySelectorAll))&&(i(function(e){L.appendChild(e).innerHTML="<a id='"+F+"'></a><select id='"+F+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&M.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||M.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+F+"-]").length||M.push("~="),e.querySelectorAll(":checked").length||M.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||M.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=U.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&M.push("name"+ne+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&M.push(":enabled",":disabled"),L.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&M.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),M.push(",.*:")})),(T.matchesSelector=Ee.test(B=L.matches||L.webkitMatchesSelector||L.mozMatchesSelector||L.oMatchesSelector||L.msMatchesSelector))&&i(function(e){T.disconnectedMatch=B.call(e,"*"),B.call(e,"[s!='']:x"),x.push("!=",ae)}),M=M.length&&new RegExp(M.join("|")),x=x.length&&new RegExp(x.join("|")),t=Ee.test(L.compareDocumentPosition),H=t||Ee.test(L.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},W=t?function(e,t){if(e===t)return O=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!T.sortDetached&&t.compareDocumentPosition(e)===n?e===U||e.ownerDocument===j&&H(j,e)?-1:t===U||t.ownerDocument===j&&H(j,t)?1:D?ee(D,e)-ee(D,t):0:4&n?-1:1)}:function(e,t){if(e===t)return O=!0,0;var n,r=0,i=e.parentNode,a=t.parentNode,s=[e],u=[t];if(!i||!a)return e===U?-1:t===U?1:i?-1:a?1:D?ee(D,e)-ee(D,t):0;if(i===a)return o(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?o(s[r],u[r]):s[r]===j?-1:u[r]===j?1:0},U):U},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==U&&N(e),n=n.replace(fe,"='$1']"),T.matchesSelector&&k&&!J[n+" "]&&(!x||!x.test(n))&&(!M||!M.test(n)))try{var r=B.call(e,n);if(r||T.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,U,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==U&&N(e),H(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==U&&N(e);var n=v.attrHandle[t.toLowerCase()],r=n&&Q.call(v.attrHandle,t.toLowerCase())?n(e,t,!k):void 0;return void 0!==r?r:T.attributes||!k?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(Ce,Te)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(O=!T.detectDuplicates,D=!T.sortStable&&e.slice(0),e.sort(W),O){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return D=null,e},S=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=S(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=S(t);return n},v=t.selectors={cacheLength:50,createPseudo:r,match:he,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Re,me),e[3]=(e[3]||e[4]||e[5]||"").replace(Re,me),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return he.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&de.test(n)&&(t=A(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Re,me).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=q[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&q(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var a=t.attr(i,e);return null==a?"!="===n:!n||(a+="","="===n?a===r:"!="===n?a!==r:"^="===n?r&&0===a.indexOf(r):"*="===n?r&&a.indexOf(r)>-1:"$="===n?r&&a.slice(-r.length)===r:"~="===n?(" "+a.replace(oe," ")+" ").indexOf(r)>-1:"|="===n&&(a===r||a.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var a="nth"!==e.slice(0,3),o="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,f,d,c,h,_,p=a!==o?"nextSibling":"previousSibling",E=t.parentNode,g=s&&t.nodeName.toLowerCase(),y=!u&&!s,R=!1;if(E){if(a){for(;p;){for(c=t;c=c[p];)if(s?c.nodeName.toLowerCase()===g:1===c.nodeType)return!1;_=p="only"===e&&!_&&"nextSibling"}return!0}if(_=[o?E.firstChild:E.lastChild],o&&y){for(c=E,d=c[F]||(c[F]={}),f=d[c.uniqueID]||(d[c.uniqueID]={}),l=f[e]||[],h=l[0]===G&&l[1],R=h&&l[2],c=h&&E.childNodes[h];c=++h&&c&&c[p]||(R=h=0)||_.pop();)if(1===c.nodeType&&++R&&c===t){f[e]=[G,h,R];break}}else if(y&&(c=t,d=c[F]||(c[F]={}),f=d[c.uniqueID]||(d[c.uniqueID]={}),l=f[e]||[],h=l[0]===G&&l[1],R=h),R===!1)for(;(c=++h&&c&&c[p]||(R=h=0)||_.pop())&&((s?c.nodeName.toLowerCase()!==g:1!==c.nodeType)||!++R||(y&&(d=c[F]||(c[F]={}),f=d[c.uniqueID]||(d[c.uniqueID]={}),f[e]=[G,R]),c!==t)););return R-=i,R===r||R%r===0&&R/r>=0}}},PSEUDO:function(e,n){var i,a=v.pseudos[e]||v.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return a[F]?a(n):a.length>1?(i=[e,e,"",n],v.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=a(e,n),o=i.length;o--;)r=ee(e,i[o]),e[r]=!(t[r]=i[o])}):function(e){return a(e,0,i)}):a}},pseudos:{not:r(function(e){var t=[],n=[],i=b(e.replace(se,"$1"));return i[F]?r(function(e,t,n,r){for(var a,o=i(e,null,r,[]),s=e.length;s--;)(a=o[s])&&(e[s]=!(t[s]=a))}):function(e,r,a){return t[0]=e,i(t,null,a,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(Re,me),function(t){return(t.textContent||t.innerText||S(t)).indexOf(e)>-1}}),lang:r(function(e){return ce.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(Re,me).toLowerCase(),function(t){var n;do if(n=k?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===L},focus:function(e){return e===U.activeElement&&(!U.hasFocus||U.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:l(!1),disabled:l(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!v.pseudos.empty(e)},header:function(e){return pe.test(e.nodeName)},input:function(e){return _e.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:f(function(){return[0]}),last:f(function(e,t){return[t-1]}),eq:f(function(e,t,n){return[n<0?n+t:n]}),even:f(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:f(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:f(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:f(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},v.pseudos.nth=v.pseudos.eq;for(C in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})v.pseudos[C]=s(C);for(C in{submit:!0,reset:!0})v.pseudos[C]=u(C);return c.prototype=v.filters=v.pseudos,v.setFilters=new c,A=t.tokenize=function(e,n){var r,i,a,o,s,u,l,f=Y[e+" "];if(f)return n?0:f.slice(0);for(s=e,u=[],l=v.preFilter;s;){r&&!(i=ue.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(a=[])),r=!1,(i=le.exec(s))&&(r=i.shift(),a.push({value:r,type:i[0].replace(se," ")}),s=s.slice(r.length));for(o in v.filter)!(i=he[o].exec(s))||l[o]&&!(i=l[o](i))||(r=i.shift(),a.push({value:r,type:o,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):Y(e,u).slice(0)},b=t.compile=function(e,t){var n,r=[],i=[],a=J[e+" "];if(!a){for(t||(t=A(e)),n=t.length;n--;)a=R(t[n]),a[F]?r.push(a):i.push(a);a=J(e,m(i,r)),a.selector=e}return a},P=t.select=function(e,t,n,r){var i,a,o,s,u,l="function"==typeof e&&e,f=!r&&A(e=l.selector||e);if(n=n||[],1===f.length){if(a=f[0]=f[0].slice(0),a.length>2&&"ID"===(o=a[0]).type&&T.getById&&9===t.nodeType&&k&&v.relative[a[1].type]){if(t=(v.find.ID(o.matches[0].replace(Re,me),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(a.shift().value.length)}for(i=he.needsContext.test(e)?0:a.length;i--&&(o=a[i],!v.relative[s=o.type]);)if((u=v.find[s])&&(r=u(o.matches[0].replace(Re,me),ye.test(a[0].type)&&d(t.parentNode)||t))){if(a.splice(i,1),e=r.length&&h(a),!e)return Z.apply(n,r),n;break}}return(l||b(e,f))(r,t,!k,n,!t||ye.test(e)&&d(t.parentNode)||t),n},T.sortStable=F.split("").sort(W).join("")===F,T.detectDuplicates=!!O,N(),T.sortDetached=i(function(e){return 1&e.compareDocumentPosition(U.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||a("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),T.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||a("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||a(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(n);Ee.find=Ce,Ee.expr=Ce.selectors,Ee.expr[":"]=Ee.expr.pseudos,Ee.uniqueSort=Ee.unique=Ce.uniqueSort,Ee.text=Ce.getText,Ee.isXMLDoc=Ce.isXML,Ee.contains=Ce.contains,Ee.escapeSelector=Ce.escape;var Te=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&Ee(e).is(n))break;r.push(e)}return r},ve=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Se=Ee.expr.match.needsContext,Ie=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,Ae=/^.[^:#\[\.,]*$/;Ee.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?Ee.find.matchesSelector(r,e)?[r]:[]:Ee.find.matches(e,Ee.grep(t,function(e){return 1===e.nodeType}))},Ee.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(Ee(e).filter(function(){for(t=0;t<r;t++)if(Ee.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)Ee.find(e,i[t],n);return r>1?Ee.uniqueSort(n):n},filter:function(e){return this.pushStack(u(this,e||[],!1))},not:function(e){return this.pushStack(u(this,e||[],!0))},is:function(e){return!!u(this,"string"==typeof e&&Se.test(e)?Ee(e):e||[],!1).length}});var be,Pe=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,we=Ee.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||be,"string"==typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:Pe.exec(e),!r||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof Ee?t[0]:t,Ee.merge(this,Ee.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:re,!0)),Ie.test(r[1])&&Ee.isPlainObject(t))for(r in t)Ee.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=re.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):Ee.isFunction(e)?void 0!==n.ready?n.ready(e):e(Ee):Ee.makeArray(e,this)};we.prototype=Ee.fn,be=Ee(re);var De=/^(?:parents|prev(?:Until|All))/,Oe={children:!0,contents:!0,next:!0,prev:!0};Ee.fn.extend({has:function(e){var t=Ee(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(Ee.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,a=[],o="string"!=typeof e&&Ee(e);if(!Se.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(o?o.index(n)>-1:1===n.nodeType&&Ee.find.matchesSelector(n,e))){a.push(n);break}return this.pushStack(a.length>1?Ee.uniqueSort(a):a)},index:function(e){return e?"string"==typeof e?ue.call(Ee(e),this[0]):ue.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(Ee.uniqueSort(Ee.merge(this.get(),Ee(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),Ee.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return Te(e,"parentNode")},parentsUntil:function(e,t,n){return Te(e,"parentNode",n)},next:function(e){return l(e,"nextSibling")},prev:function(e){return l(e,"previousSibling")},nextAll:function(e){return Te(e,"nextSibling")},prevAll:function(e){return Te(e,"previousSibling")},nextUntil:function(e,t,n){return Te(e,"nextSibling",n)},prevUntil:function(e,t,n){return Te(e,"previousSibling",n)},siblings:function(e){return ve((e.parentNode||{}).firstChild,e)},children:function(e){return ve(e.firstChild)},contents:function(e){return e.contentDocument||Ee.merge([],e.childNodes)}},function(e,t){Ee.fn[e]=function(n,r){var i=Ee.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=Ee.filter(r,i)),this.length>1&&(Oe[e]||Ee.uniqueSort(i),De.test(e)&&i.reverse()),this.pushStack(i)}});var Ne=/\S+/g;Ee.Callbacks=function(e){e="string"==typeof e?f(e):Ee.extend({},e);var t,n,r,i,a=[],o=[],s=-1,u=function(){for(i=e.once,r=t=!0;o.length;s=-1)for(n=o.shift();++s<a.length;)a[s].apply(n[0],n[1])===!1&&e.stopOnFalse&&(s=a.length,n=!1);e.memory||(n=!1),t=!1,i&&(a=n?[]:"")},l={add:function(){return a&&(n&&!t&&(s=a.length-1,o.push(n)),function t(n){Ee.each(n,function(n,r){Ee.isFunction(r)?e.unique&&l.has(r)||a.push(r):r&&r.length&&"string"!==Ee.type(r)&&t(r)})}(arguments),n&&!t&&u()),this},remove:function(){return Ee.each(arguments,function(e,t){for(var n;(n=Ee.inArray(t,a,n))>-1;)a.splice(n,1),n<=s&&s--}),this},has:function(e){return e?Ee.inArray(e,a)>-1:a.length>0},empty:function(){return a&&(a=[]),this},disable:function(){return i=o=[],a=n="",this},disabled:function(){return!a},lock:function(){return i=o=[],n||t||(a=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],o.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},Ee.extend({Deferred:function(e){var t=[["notify","progress",Ee.Callbacks("memory"),Ee.Callbacks("memory"),2],["resolve","done",Ee.Callbacks("once memory"),Ee.Callbacks("once memory"),0,"resolved"],["reject","fail",Ee.Callbacks("once memory"),Ee.Callbacks("once memory"),1,"rejected"]],r="pending",i={
 state:function(){return r},always:function(){return a.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return Ee.Deferred(function(n){Ee.each(t,function(t,r){var i=Ee.isFunction(e[r[4]])&&e[r[4]];a[r[1]](function(){var e=i&&i.apply(this,arguments);e&&Ee.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(e,r,i){function a(e,t,r,i){return function(){var s=this,u=arguments,l=function(){var n,l;if(!(e<o)){if(n=r.apply(s,u),n===t.promise())throw new TypeError("Thenable self-resolution");l=n&&("object"==typeof n||"function"==typeof n)&&n.then,Ee.isFunction(l)?i?l.call(n,a(o,t,d,i),a(o,t,c,i)):(o++,l.call(n,a(o,t,d,i),a(o,t,c,i),a(o,t,d,t.notifyWith))):(r!==d&&(s=void 0,u=[n]),(i||t.resolveWith)(s,u))}},f=i?l:function(){try{l()}catch(n){Ee.Deferred.exceptionHook&&Ee.Deferred.exceptionHook(n,f.stackTrace),e+1>=o&&(r!==c&&(s=void 0,u=[n]),t.rejectWith(s,u))}};e?f():(Ee.Deferred.getStackHook&&(f.stackTrace=Ee.Deferred.getStackHook()),n.setTimeout(f))}}var o=0;return Ee.Deferred(function(n){t[0][3].add(a(0,n,Ee.isFunction(i)?i:d,n.notifyWith)),t[1][3].add(a(0,n,Ee.isFunction(e)?e:d)),t[2][3].add(a(0,n,Ee.isFunction(r)?r:c))}).promise()},promise:function(e){return null!=e?Ee.extend(e,i):i}},a={};return Ee.each(t,function(e,n){var o=n[2],s=n[5];i[n[1]]=o.add,s&&o.add(function(){r=s},t[3-e][2].disable,t[0][2].lock),o.add(n[3].fire),a[n[0]]=function(){return a[n[0]+"With"](this===a?void 0:this,arguments),this},a[n[0]+"With"]=o.fireWith}),i.promise(a),e&&e.call(a,a),a},when:function(e){var t=arguments.length,n=t,r=Array(n),i=ae.call(arguments),a=Ee.Deferred(),o=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?ae.call(arguments):n,--t||a.resolveWith(r,i)}};if(t<=1&&(h(e,a.done(o(n)).resolve,a.reject),"pending"===a.state()||Ee.isFunction(i[n]&&i[n].then)))return a.then();for(;n--;)h(i[n],o(n),a.reject);return a.promise()}});var Ue=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;Ee.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&Ue.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},Ee.readyException=function(e){n.setTimeout(function(){throw e})};var Le=Ee.Deferred();Ee.fn.ready=function(e){return Le.then(e).catch(function(e){Ee.readyException(e)}),this},Ee.extend({isReady:!1,readyWait:1,holdReady:function(e){e?Ee.readyWait++:Ee.ready(!0)},ready:function(e){(e===!0?--Ee.readyWait:Ee.isReady)||(Ee.isReady=!0,e!==!0&&--Ee.readyWait>0||Le.resolveWith(re,[Ee]))}}),Ee.ready.then=Le.then,"complete"===re.readyState||"loading"!==re.readyState&&!re.documentElement.doScroll?n.setTimeout(Ee.ready):(re.addEventListener("DOMContentLoaded",_),n.addEventListener("load",_));var ke=function(e,t,n,r,i,a,o){var s=0,u=e.length,l=null==n;if("object"===Ee.type(n)){i=!0;for(s in n)ke(e,t,s,n[s],!0,a,o)}else if(void 0!==r&&(i=!0,Ee.isFunction(r)||(o=!0),l&&(o?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(Ee(e),n)})),t))for(;s<u;s++)t(e[s],n,o?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):a},Me=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};p.uid=1,p.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Me(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[Ee.camelCase(t)]=n;else for(r in t)i[Ee.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][Ee.camelCase(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){Ee.isArray(t)?t=t.map(Ee.camelCase):(t=Ee.camelCase(t),t=t in r?[t]:t.match(Ne)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||Ee.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!Ee.isEmptyObject(t)}};var xe=new p,Be=new p,He=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Fe=/[A-Z]/g;Ee.extend({hasData:function(e){return Be.hasData(e)||xe.hasData(e)},data:function(e,t,n){return Be.access(e,t,n)},removeData:function(e,t){Be.remove(e,t)},_data:function(e,t,n){return xe.access(e,t,n)},_removeData:function(e,t){xe.remove(e,t)}}),Ee.fn.extend({data:function(e,t){var n,r,i,a=this[0],o=a&&a.attributes;if(void 0===e){if(this.length&&(i=Be.get(a),1===a.nodeType&&!xe.get(a,"hasDataAttrs"))){for(n=o.length;n--;)o[n]&&(r=o[n].name,0===r.indexOf("data-")&&(r=Ee.camelCase(r.slice(5)),E(a,r,i[r])));xe.set(a,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){Be.set(this,e)}):ke(this,function(t){var n;if(a&&void 0===t){if(n=Be.get(a,e),void 0!==n)return n;if(n=E(a,e),void 0!==n)return n}else this.each(function(){Be.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Be.remove(this,e)})}}),Ee.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=xe.get(e,t),n&&(!r||Ee.isArray(n)?r=xe.access(e,t,Ee.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=Ee.queue(e,t),r=n.length,i=n.shift(),a=Ee._queueHooks(e,t),o=function(){Ee.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete a.stop,i.call(e,o,a)),!r&&a&&a.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return xe.get(e,n)||xe.access(e,n,{empty:Ee.Callbacks("once memory").add(function(){xe.remove(e,[t+"queue",n])})})}}),Ee.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?Ee.queue(this[0],e):void 0===t?this:this.each(function(){var n=Ee.queue(this,e,t);Ee._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&Ee.dequeue(this,e)})},dequeue:function(e){return this.each(function(){Ee.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=Ee.Deferred(),a=this,o=this.length,s=function(){--r||i.resolveWith(a,[a])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";o--;)n=xe.get(a[o],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var je=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Ge=new RegExp("^(?:([+-])=|)("+je+")([a-z%]*)$","i"),Ve=["Top","Right","Bottom","Left"],qe=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&Ee.contains(e.ownerDocument,e)&&"none"===Ee.css(e,"display")},Ye=function(e,t,n,r){var i,a,o={};for(a in t)o[a]=e.style[a],e.style[a]=t[a];i=n.apply(e,r||[]);for(a in t)e.style[a]=o[a];return i},Je={};Ee.fn.extend({show:function(){return R(this,!0)},hide:function(){return R(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){qe(this)?Ee(this).show():Ee(this).hide()})}});var We=/^(?:checkbox|radio)$/i,Qe=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,Ke=/^$|\/(?:java|ecma)script/i,ze={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ze.optgroup=ze.option,ze.tbody=ze.tfoot=ze.colgroup=ze.caption=ze.thead,ze.th=ze.td;var $e=/<|&#?\w+;/;!function(){var e=re.createDocumentFragment(),t=e.appendChild(re.createElement("div")),n=re.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),_e.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",_e.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var Ze=re.documentElement,Xe=/^key/,et=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,tt=/^([^.]*)(?:\.(.+)|)/;Ee.event={global:{},add:function(e,t,n,r,i){var a,o,s,u,l,f,d,c,h,_,p,E=xe.get(e);if(E)for(n.handler&&(a=n,n=a.handler,i=a.selector),i&&Ee.find.matchesSelector(Ze,i),n.guid||(n.guid=Ee.guid++),(u=E.events)||(u=E.events={}),(o=E.handle)||(o=E.handle=function(t){return"undefined"!=typeof Ee&&Ee.event.triggered!==t.type?Ee.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Ne)||[""],l=t.length;l--;)s=tt.exec(t[l])||[],h=p=s[1],_=(s[2]||"").split(".").sort(),h&&(d=Ee.event.special[h]||{},h=(i?d.delegateType:d.bindType)||h,d=Ee.event.special[h]||{},f=Ee.extend({type:h,origType:p,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&Ee.expr.match.needsContext.test(i),namespace:_.join(".")},a),(c=u[h])||(c=u[h]=[],c.delegateCount=0,d.setup&&d.setup.call(e,r,_,o)!==!1||e.addEventListener&&e.addEventListener(h,o)),d.add&&(d.add.call(e,f),f.handler.guid||(f.handler.guid=n.guid)),i?c.splice(c.delegateCount++,0,f):c.push(f),Ee.event.global[h]=!0)},remove:function(e,t,n,r,i){var a,o,s,u,l,f,d,c,h,_,p,E=xe.hasData(e)&&xe.get(e);if(E&&(u=E.events)){for(t=(t||"").match(Ne)||[""],l=t.length;l--;)if(s=tt.exec(t[l])||[],h=p=s[1],_=(s[2]||"").split(".").sort(),h){for(d=Ee.event.special[h]||{},h=(r?d.delegateType:d.bindType)||h,c=u[h]||[],s=s[2]&&new RegExp("(^|\\.)"+_.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=a=c.length;a--;)f=c[a],!i&&p!==f.origType||n&&n.guid!==f.guid||s&&!s.test(f.namespace)||r&&r!==f.selector&&("**"!==r||!f.selector)||(c.splice(a,1),f.selector&&c.delegateCount--,d.remove&&d.remove.call(e,f));o&&!c.length&&(d.teardown&&d.teardown.call(e,_,E.handle)!==!1||Ee.removeEvent(e,h,E.handle),delete u[h])}else for(h in u)Ee.event.remove(e,h+t[l],n,r,!0);Ee.isEmptyObject(u)&&xe.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,a,o,s=Ee.event.fix(e),u=new Array(arguments.length),l=(xe.get(this,"events")||{})[s.type]||[],f=Ee.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!f.preDispatch||f.preDispatch.call(this,s)!==!1){for(o=Ee.event.handlers.call(this,s,l),t=0;(i=o[t++])&&!s.isPropagationStopped();)for(s.currentTarget=i.elem,n=0;(a=i.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(a.namespace)||(s.handleObj=a,s.data=a.data,r=((Ee.event.special[a.origType]||{}).handle||a.handler).apply(i.elem,u),void 0!==r&&(s.result=r)===!1&&(s.preventDefault(),s.stopPropagation()));return f.postDispatch&&f.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,a,o=[],s=t.delegateCount,u=e.target;if(s&&u.nodeType&&("click"!==e.type||isNaN(e.button)||e.button<1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(r=[],n=0;n<s;n++)a=t[n],i=a.selector+" ",void 0===r[i]&&(r[i]=a.needsContext?Ee(i,this).index(u)>-1:Ee.find(i,this,null,[u]).length),r[i]&&r.push(a);r.length&&o.push({elem:u,handlers:r})}return s<t.length&&o.push({elem:this,handlers:t.slice(s)}),o},addProp:function(e,t){Object.defineProperty(Ee.Event.prototype,e,{enumerable:!0,configurable:!0,get:Ee.isFunction(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[Ee.expando]?e:new Ee.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==I()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===I()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&Ee.nodeName(this,"input"))return this.click(),!1},_default:function(e){return Ee.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},Ee.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},Ee.Event=function(e,t){return this instanceof Ee.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?v:S,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&Ee.extend(this,t),this.timeStamp=e&&e.timeStamp||Ee.now(),void(this[Ee.expando]=!0)):new Ee.Event(e,t)},Ee.Event.prototype={constructor:Ee.Event,isDefaultPrevented:S,isPropagationStopped:S,isImmediatePropagationStopped:S,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=v,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=v,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=v,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},Ee.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Xe.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&et.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},Ee.event.addProp),Ee.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){Ee.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,a=e.handleObj;return i&&(i===r||Ee.contains(r,i))||(e.type=a.origType,n=a.handler.apply(this,arguments),e.type=t),n}}}),Ee.fn.extend({on:function(e,t,n,r){return A(this,e,t,n,r)},one:function(e,t,n,r){return A(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,Ee(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return t!==!1&&"function"!=typeof t||(n=t,t=void 0),n===!1&&(n=S),this.each(function(){Ee.event.remove(this,e,n,t)})}});var nt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,rt=/<script|<style|<link/i,it=/checked\s*(?:[^=]|=\s*.checked.)/i,at=/^true\/(.*)/,ot=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;Ee.extend({htmlPrefilter:function(e){return e.replace(nt,"<$1></$2>")},clone:function(e,t,n){var r,i,a,o,s=e.cloneNode(!0),u=Ee.contains(e.ownerDocument,e);if(!(_e.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||Ee.isXMLDoc(e)))for(o=m(s),a=m(e),r=0,i=a.length;r<i;r++)O(a[r],o[r]);if(t)if(n)for(a=a||m(e),o=o||m(s),r=0,i=a.length;r<i;r++)D(a[r],o[r]);else D(e,s);return o=m(s,"script"),o.length>0&&C(o,!u&&m(e,"script")),s},cleanData:function(e){for(var t,n,r,i=Ee.event.special,a=0;void 0!==(n=e[a]);a++)if(Me(n)){if(t=n[xe.expando]){if(t.events)for(r in t.events)i[r]?Ee.event.remove(n,r):Ee.removeEvent(n,r,t.handle);n[xe.expando]=void 0}n[Be.expando]&&(n[Be.expando]=void 0)}}}),Ee.fn.extend({detach:function(e){return U(this,e,!0)},remove:function(e){return U(this,e)},text:function(e){return ke(this,function(e){return void 0===e?Ee.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return N(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=b(this,e);t.appendChild(e)}})},prepend:function(){return N(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=b(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return N(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return N(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(Ee.cleanData(m(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return Ee.clone(this,e,t)})},html:function(e){return ke(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!rt.test(e)&&!ze[(Qe.exec(e)||["",""])[1].toLowerCase()]){e=Ee.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(Ee.cleanData(m(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return N(this,arguments,function(t){var n=this.parentNode;Ee.inArray(this,e)<0&&(Ee.cleanData(m(this)),n&&n.replaceChild(t,this))},e)}}),Ee.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){Ee.fn[e]=function(e){for(var n,r=[],i=Ee(e),a=i.length-1,o=0;o<=a;o++)n=o===a?this:this.clone(!0),Ee(i[o])[t](n),se.apply(r,n.get());return this.pushStack(r)}});var st=/^margin/,ut=new RegExp("^("+je+")(?!px)[a-z%]+$","i"),lt=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=n),t.getComputedStyle(e)};!function(){function e(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",Ze.appendChild(o);var e=n.getComputedStyle(s);t="1%"!==e.top,a="2px"===e.marginLeft,r="4px"===e.width,s.style.marginRight="50%",i="4px"===e.marginRight,Ze.removeChild(o),s=null}}var t,r,i,a,o=re.createElement("div"),s=re.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",_e.clearCloneStyle="content-box"===s.style.backgroundClip,o.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",o.appendChild(s),Ee.extend(_e,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),r},pixelMarginRight:function(){return e(),i},reliableMarginLeft:function(){return e(),a}}))}();var ft=/^(none|table(?!-c[ea]).+)/,dt={position:"absolute",visibility:"hidden",display:"block"},ct={letterSpacing:"0",fontWeight:"400"},ht=["Webkit","Moz","ms"],_t=re.createElement("div").style;Ee.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=L(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,a,o,s=Ee.camelCase(t),u=e.style;return t=Ee.cssProps[s]||(Ee.cssProps[s]=M(s)||s),o=Ee.cssHooks[t]||Ee.cssHooks[s],void 0===n?o&&"get"in o&&void 0!==(i=o.get(e,!1,r))?i:u[t]:(a=typeof n,"string"===a&&(i=Ge.exec(n))&&i[1]&&(n=g(e,t,i),a="number"),null!=n&&n===n&&("number"===a&&(n+=i&&i[3]||(Ee.cssNumber[s]?"":"px")),_e.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),o&&"set"in o&&void 0===(n=o.set(e,n,r))||(u[t]=n)),void 0)}},css:function(e,t,n,r){var i,a,o,s=Ee.camelCase(t);return t=Ee.cssProps[s]||(Ee.cssProps[s]=M(s)||s),o=Ee.cssHooks[t]||Ee.cssHooks[s],o&&"get"in o&&(i=o.get(e,!0,n)),void 0===i&&(i=L(e,t,r)),"normal"===i&&t in ct&&(i=ct[t]),""===n||n?(a=parseFloat(i),n===!0||isFinite(a)?a||0:i):i}}),Ee.each(["height","width"],function(e,t){Ee.cssHooks[t]={get:function(e,n,r){if(n)return!ft.test(Ee.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?H(e,t,r):Ye(e,dt,function(){return H(e,t,r)})},set:function(e,n,r){var i,a=r&&lt(e),o=r&&B(e,t,r,"border-box"===Ee.css(e,"boxSizing",!1,a),a);return o&&(i=Ge.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=Ee.css(e,t)),x(e,n,o)}}}),Ee.cssHooks.marginLeft=k(_e.reliableMarginLeft,function(e,t){if(t)return(parseFloat(L(e,"marginLeft"))||e.getBoundingClientRect().left-Ye(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),Ee.each({margin:"",padding:"",border:"Width"},function(e,t){Ee.cssHooks[e+t]={expand:function(n){for(var r=0,i={},a="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Ve[r]+t]=a[r]||a[r-2]||a[0];return i}},st.test(e)||(Ee.cssHooks[e+t].set=x)}),Ee.fn.extend({css:function(e,t){return ke(this,function(e,t,n){var r,i,a={},o=0;if(Ee.isArray(t)){for(r=lt(e),i=t.length;o<i;o++)a[t[o]]=Ee.css(e,t[o],!1,r);return a}return void 0!==n?Ee.style(e,t,n):Ee.css(e,t)},e,t,arguments.length>1)}}),Ee.Tween=F,F.prototype={constructor:F,init:function(e,t,n,r,i,a){this.elem=e,this.prop=n,this.easing=i||Ee.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=a||(Ee.cssNumber[n]?"":"px")},cur:function(){var e=F.propHooks[this.prop];return e&&e.get?e.get(this):F.propHooks._default.get(this)},run:function(e){var t,n=F.propHooks[this.prop];return this.options.duration?this.pos=t=Ee.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):F.propHooks._default.set(this),this}},F.prototype.init.prototype=F.prototype,F.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=Ee.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){Ee.fx.step[e.prop]?Ee.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[Ee.cssProps[e.prop]]&&!Ee.cssHooks[e.prop]?e.elem[e.prop]=e.now:Ee.style(e.elem,e.prop,e.now+e.unit)}}},F.propHooks.scrollTop=F.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},Ee.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},Ee.fx=F.prototype.init,Ee.fx.step={};var pt,Et,gt=/^(?:toggle|show|hide)$/,yt=/queueHooks$/;Ee.Animation=Ee.extend(W,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return g(n.elem,e,Ge.exec(t),n),n}]},tweener:function(e,t){Ee.isFunction(e)?(t=e,e=["*"]):e=e.match(Ne);for(var n,r=0,i=e.length;r<i;r++)n=e[r],W.tweeners[n]=W.tweeners[n]||[],W.tweeners[n].unshift(t)},prefilters:[Y],prefilter:function(e,t){t?W.prefilters.unshift(e):W.prefilters.push(e)}}),Ee.speed=function(e,t,n){var r=e&&"object"==typeof e?Ee.extend({},e):{complete:n||!n&&t||Ee.isFunction(e)&&e,duration:e,easing:n&&t||t&&!Ee.isFunction(t)&&t};return Ee.fx.off||re.hidden?r.duration=0:r.duration="number"==typeof r.duration?r.duration:r.duration in Ee.fx.speeds?Ee.fx.speeds[r.duration]:Ee.fx.speeds._default,null!=r.queue&&r.queue!==!0||(r.queue="fx"),r.old=r.complete,r.complete=function(){Ee.isFunction(r.old)&&r.old.call(this),r.queue&&Ee.dequeue(this,r.queue)},r},Ee.fn.extend({fadeTo:function(e,t,n,r){return this.filter(qe).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=Ee.isEmptyObject(e),a=Ee.speed(t,n,r),o=function(){var t=W(this,Ee.extend({},e),a);(i||xe.get(this,"finish"))&&t.stop(!0)};return o.finish=o,i||a.queue===!1?this.each(o):this.queue(a.queue,o)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",a=Ee.timers,o=xe.get(this);if(i)o[i]&&o[i].stop&&r(o[i]);else for(i in o)o[i]&&o[i].stop&&yt.test(i)&&r(o[i]);for(i=a.length;i--;)a[i].elem!==this||null!=e&&a[i].queue!==e||(a[i].anim.stop(n),t=!1,a.splice(i,1));!t&&n||Ee.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=xe.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],a=Ee.timers,o=r?r.length:0;for(n.finish=!0,Ee.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=a.length;t--;)a[t].elem===this&&a[t].queue===e&&(a[t].anim.stop(!0),a.splice(t,1));for(t=0;t<o;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),Ee.each(["toggle","show","hide"],function(e,t){var n=Ee.fn[t];Ee.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(V(t,!0),e,r,i)}}),Ee.each({slideDown:V("show"),slideUp:V("hide"),slideToggle:V("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){Ee.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),Ee.timers=[],Ee.fx.tick=function(){var e,t=0,n=Ee.timers;for(pt=Ee.now();t<n.length;t++)e=n[t],e()||n[t]!==e||n.splice(t--,1);n.length||Ee.fx.stop(),pt=void 0},Ee.fx.timer=function(e){Ee.timers.push(e),e()?Ee.fx.start():Ee.timers.pop()},Ee.fx.interval=13,Ee.fx.start=function(){Et||(Et=n.requestAnimationFrame?n.requestAnimationFrame(j):n.setInterval(Ee.fx.tick,Ee.fx.interval))},Ee.fx.stop=function(){n.cancelAnimationFrame?n.cancelAnimationFrame(Et):n.clearInterval(Et),Et=null},Ee.fx.speeds={slow:600,fast:200,_default:400},Ee.fn.delay=function(e,t){return e=Ee.fx?Ee.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,r){var i=n.setTimeout(t,e);r.stop=function(){n.clearTimeout(i)}})},function(){var e=re.createElement("input"),t=re.createElement("select"),n=t.appendChild(re.createElement("option"));e.type="checkbox",_e.checkOn=""!==e.value,_e.optSelected=n.selected,e=re.createElement("input"),e.value="t",e.type="radio",_e.radioValue="t"===e.value}();var Rt,mt=Ee.expr.attrHandle;Ee.fn.extend({attr:function(e,t){return ke(this,Ee.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){Ee.removeAttr(this,e)})}}),Ee.extend({attr:function(e,t,n){var r,i,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return"undefined"==typeof e.getAttribute?Ee.prop(e,t,n):(1===a&&Ee.isXMLDoc(e)||(i=Ee.attrHooks[t.toLowerCase()]||(Ee.expr.match.bool.test(t)?Rt:void 0)),void 0!==n?null===n?void Ee.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=Ee.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!_e.radioValue&&"radio"===t&&Ee.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(Ne);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),Rt={set:function(e,t,n){return t===!1?Ee.removeAttr(e,n):e.setAttribute(n,n),n}},Ee.each(Ee.expr.match.bool.source.match(/\w+/g),function(e,t){var n=mt[t]||Ee.find.attr;mt[t]=function(e,t,r){var i,a,o=t.toLowerCase();return r||(a=mt[o],mt[o]=i,i=null!=n(e,t,r)?o:null,mt[o]=a),i}});var Ct=/^(?:input|select|textarea|button)$/i,Tt=/^(?:a|area)$/i;Ee.fn.extend({prop:function(e,t){return ke(this,Ee.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[Ee.propFix[e]||e]})}}),Ee.extend({prop:function(e,t,n){var r,i,a=e.nodeType;if(3!==a&&8!==a&&2!==a)return 1===a&&Ee.isXMLDoc(e)||(t=Ee.propFix[t]||t,i=Ee.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=Ee.find.attr(e,"tabindex");return t?parseInt(t,10):Ct.test(e.nodeName)||Tt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),_e.optSelected||(Ee.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),Ee.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){Ee.propFix[this.toLowerCase()]=this});var vt=/[\t\r\n\f]/g;Ee.fn.extend({addClass:function(e){var t,n,r,i,a,o,s,u=0;if(Ee.isFunction(e))return this.each(function(t){Ee(this).addClass(e.call(this,t,Q(this)))});if("string"==typeof e&&e)for(t=e.match(Ne)||[];n=this[u++];)if(i=Q(n),r=1===n.nodeType&&(" "+i+" ").replace(vt," ")){for(o=0;a=t[o++];)r.indexOf(" "+a+" ")<0&&(r+=a+" ");s=Ee.trim(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,a,o,s,u=0;if(Ee.isFunction(e))return this.each(function(t){Ee(this).removeClass(e.call(this,t,Q(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Ne)||[];n=this[u++];)if(i=Q(n),r=1===n.nodeType&&(" "+i+" ").replace(vt," ")){for(o=0;a=t[o++];)for(;r.indexOf(" "+a+" ")>-1;)r=r.replace(" "+a+" "," ");s=Ee.trim(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):Ee.isFunction(e)?this.each(function(n){Ee(this).toggleClass(e.call(this,n,Q(this),t),t)}):this.each(function(){var t,r,i,a;if("string"===n)for(r=0,i=Ee(this),a=e.match(Ne)||[];t=a[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=Q(this),t&&xe.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||e===!1?"":xe.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+Q(n)+" ").replace(vt," ").indexOf(t)>-1)return!0;return!1}});var St=/\r/g,It=/[\x20\t\r\n\f]+/g;Ee.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=Ee.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,Ee(this).val()):e,null==i?i="":"number"==typeof i?i+="":Ee.isArray(i)&&(i=Ee.map(i,function(e){return null==e?"":e+""})),t=Ee.valHooks[this.type]||Ee.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=Ee.valHooks[i.type]||Ee.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(St,""):null==n?"":n)}}}),Ee.extend({valHooks:{option:{get:function(e){var t=Ee.find.attr(e,"value");return null!=t?t:Ee.trim(Ee.text(e)).replace(It," ")}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,a="select-one"===e.type,o=a?null:[],s=a?i+1:r.length,u=i<0?s:a?i:0;u<s;u++)if(n=r[u],(n.selected||u===i)&&!n.disabled&&(!n.parentNode.disabled||!Ee.nodeName(n.parentNode,"optgroup"))){if(t=Ee(n).val(),a)return t;o.push(t)}return o},set:function(e,t){for(var n,r,i=e.options,a=Ee.makeArray(t),o=i.length;o--;)r=i[o],(r.selected=Ee.inArray(Ee.valHooks.option.get(r),a)>-1)&&(n=!0);return n||(e.selectedIndex=-1),a}}}}),Ee.each(["radio","checkbox"],function(){Ee.valHooks[this]={set:function(e,t){if(Ee.isArray(t))return e.checked=Ee.inArray(Ee(e).val(),t)>-1}},_e.checkOn||(Ee.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var At=/^(?:focusinfocus|focusoutblur)$/;Ee.extend(Ee.event,{trigger:function(e,t,r,i){var a,o,s,u,l,f,d,c=[r||re],h=de.call(e,"type")?e.type:e,_=de.call(e,"namespace")?e.namespace.split("."):[];if(o=s=r=r||re,3!==r.nodeType&&8!==r.nodeType&&!At.test(h+Ee.event.triggered)&&(h.indexOf(".")>-1&&(_=h.split("."),h=_.shift(),_.sort()),l=h.indexOf(":")<0&&"on"+h,e=e[Ee.expando]?e:new Ee.Event(h,"object"==typeof e&&e),e.isTrigger=i?2:3,e.namespace=_.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+_.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:Ee.makeArray(t,[e]),d=Ee.event.special[h]||{},i||!d.trigger||d.trigger.apply(r,t)!==!1)){if(!i&&!d.noBubble&&!Ee.isWindow(r)){for(u=d.delegateType||h,At.test(u+h)||(o=o.parentNode);o;o=o.parentNode)c.push(o),s=o;s===(r.ownerDocument||re)&&c.push(s.defaultView||s.parentWindow||n)}for(a=0;(o=c[a++])&&!e.isPropagationStopped();)e.type=a>1?u:d.bindType||h,f=(xe.get(o,"events")||{})[e.type]&&xe.get(o,"handle"),f&&f.apply(o,t),f=l&&o[l],f&&f.apply&&Me(o)&&(e.result=f.apply(o,t),e.result===!1&&e.preventDefault());return e.type=h,i||e.isDefaultPrevented()||d._default&&d._default.apply(c.pop(),t)!==!1||!Me(r)||l&&Ee.isFunction(r[h])&&!Ee.isWindow(r)&&(s=r[l],s&&(r[l]=null),Ee.event.triggered=h,r[h](),Ee.event.triggered=void 0,s&&(r[l]=s)),e.result}},simulate:function(e,t,n){var r=Ee.extend(new Ee.Event,n,{type:e,isSimulated:!0
 });Ee.event.trigger(r,null,t)}}),Ee.fn.extend({trigger:function(e,t){return this.each(function(){Ee.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return Ee.event.trigger(e,t,n,!0)}}),Ee.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){Ee.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),Ee.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),_e.focusin="onfocusin"in n,_e.focusin||Ee.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){Ee.event.simulate(t,e.target,Ee.event.fix(e))};Ee.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=xe.access(r,t);i||r.addEventListener(e,n,!0),xe.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=xe.access(r,t)-1;i?xe.access(r,t,i):(r.removeEventListener(e,n,!0),xe.remove(r,t))}}});var bt=n.location,Pt=Ee.now(),wt=/\?/;Ee.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||Ee.error("Invalid XML: "+e),t};var Dt=/\[\]$/,Ot=/\r?\n/g,Nt=/^(?:submit|button|image|reset|file)$/i,Ut=/^(?:input|select|textarea|keygen)/i;Ee.param=function(e,t){var n,r=[],i=function(e,t){var n=Ee.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Ee.isArray(e)||e.jquery&&!Ee.isPlainObject(e))Ee.each(e,function(){i(this.name,this.value)});else for(n in e)K(n,e[n],t,i);return r.join("&")},Ee.fn.extend({serialize:function(){return Ee.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=Ee.prop(this,"elements");return e?Ee.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!Ee(this).is(":disabled")&&Ut.test(this.nodeName)&&!Nt.test(e)&&(this.checked||!We.test(e))}).map(function(e,t){var n=Ee(this).val();return null==n?null:Ee.isArray(n)?Ee.map(n,function(e){return{name:t.name,value:e.replace(Ot,"\r\n")}}):{name:t.name,value:n.replace(Ot,"\r\n")}}).get()}});var Lt=/%20/g,kt=/#.*$/,Mt=/([?&])_=[^&]*/,xt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Bt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ht=/^(?:GET|HEAD)$/,Ft=/^\/\//,jt={},Gt={},Vt="*/".concat("*"),qt=re.createElement("a");qt.href=bt.href,Ee.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:Bt.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Vt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":Ee.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Z(Z(e,Ee.ajaxSettings),t):Z(Ee.ajaxSettings,e)},ajaxPrefilter:z(jt),ajaxTransport:z(Gt),ajax:function(e,t){function r(e,t,r,s){var l,c,h,m,C,T=t;f||(f=!0,u&&n.clearTimeout(u),i=void 0,o=s||"",v.readyState=e>0?4:0,l=e>=200&&e<300||304===e,r&&(m=X(_,v,r)),m=ee(_,m,v,l),l?(_.ifModified&&(C=v.getResponseHeader("Last-Modified"),C&&(Ee.lastModified[a]=C),C=v.getResponseHeader("etag"),C&&(Ee.etag[a]=C)),204===e||"HEAD"===_.type?T="nocontent":304===e?T="notmodified":(T=m.state,c=m.data,h=m.error,l=!h)):(h=T,!e&&T||(T="error",e<0&&(e=0))),v.status=e,v.statusText=(t||T)+"",l?g.resolveWith(p,[c,T,v]):g.rejectWith(p,[v,T,h]),v.statusCode(R),R=void 0,d&&E.trigger(l?"ajaxSuccess":"ajaxError",[v,_,l?c:h]),y.fireWith(p,[v,T]),d&&(E.trigger("ajaxComplete",[v,_]),--Ee.active||Ee.event.trigger("ajaxStop")))}"object"==typeof e&&(t=e,e=void 0),t=t||{};var i,a,o,s,u,l,f,d,c,h,_=Ee.ajaxSetup({},t),p=_.context||_,E=_.context&&(p.nodeType||p.jquery)?Ee(p):Ee.event,g=Ee.Deferred(),y=Ee.Callbacks("once memory"),R=_.statusCode||{},m={},C={},T="canceled",v={readyState:0,getResponseHeader:function(e){var t;if(f){if(!s)for(s={};t=xt.exec(o);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return f?o:null},setRequestHeader:function(e,t){return null==f&&(e=C[e.toLowerCase()]=C[e.toLowerCase()]||e,m[e]=t),this},overrideMimeType:function(e){return null==f&&(_.mimeType=e),this},statusCode:function(e){var t;if(e)if(f)v.always(e[v.status]);else for(t in e)R[t]=[R[t],e[t]];return this},abort:function(e){var t=e||T;return i&&i.abort(t),r(0,t),this}};if(g.promise(v),_.url=((e||_.url||bt.href)+"").replace(Ft,bt.protocol+"//"),_.type=t.method||t.type||_.method||_.type,_.dataTypes=(_.dataType||"*").toLowerCase().match(Ne)||[""],null==_.crossDomain){l=re.createElement("a");try{l.href=_.url,l.href=l.href,_.crossDomain=qt.protocol+"//"+qt.host!=l.protocol+"//"+l.host}catch(e){_.crossDomain=!0}}if(_.data&&_.processData&&"string"!=typeof _.data&&(_.data=Ee.param(_.data,_.traditional)),$(jt,_,t,v),f)return v;d=Ee.event&&_.global,d&&0===Ee.active++&&Ee.event.trigger("ajaxStart"),_.type=_.type.toUpperCase(),_.hasContent=!Ht.test(_.type),a=_.url.replace(kt,""),_.hasContent?_.data&&_.processData&&0===(_.contentType||"").indexOf("application/x-www-form-urlencoded")&&(_.data=_.data.replace(Lt,"+")):(h=_.url.slice(a.length),_.data&&(a+=(wt.test(a)?"&":"?")+_.data,delete _.data),_.cache===!1&&(a=a.replace(Mt,""),h=(wt.test(a)?"&":"?")+"_="+Pt++ +h),_.url=a+h),_.ifModified&&(Ee.lastModified[a]&&v.setRequestHeader("If-Modified-Since",Ee.lastModified[a]),Ee.etag[a]&&v.setRequestHeader("If-None-Match",Ee.etag[a])),(_.data&&_.hasContent&&_.contentType!==!1||t.contentType)&&v.setRequestHeader("Content-Type",_.contentType),v.setRequestHeader("Accept",_.dataTypes[0]&&_.accepts[_.dataTypes[0]]?_.accepts[_.dataTypes[0]]+("*"!==_.dataTypes[0]?", "+Vt+"; q=0.01":""):_.accepts["*"]);for(c in _.headers)v.setRequestHeader(c,_.headers[c]);if(_.beforeSend&&(_.beforeSend.call(p,v,_)===!1||f))return v.abort();if(T="abort",y.add(_.complete),v.done(_.success),v.fail(_.error),i=$(Gt,_,t,v)){if(v.readyState=1,d&&E.trigger("ajaxSend",[v,_]),f)return v;_.async&&_.timeout>0&&(u=n.setTimeout(function(){v.abort("timeout")},_.timeout));try{f=!1,i.send(m,r)}catch(e){if(f)throw e;r(-1,e)}}else r(-1,"No Transport");return v},getJSON:function(e,t,n){return Ee.get(e,t,n,"json")},getScript:function(e,t){return Ee.get(e,void 0,t,"script")}}),Ee.each(["get","post"],function(e,t){Ee[t]=function(e,n,r,i){return Ee.isFunction(n)&&(i=i||r,r=n,n=void 0),Ee.ajax(Ee.extend({url:e,type:t,dataType:i,data:n,success:r},Ee.isPlainObject(e)&&e))}}),Ee._evalUrl=function(e){return Ee.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},Ee.fn.extend({wrapAll:function(e){var t;return this[0]&&(Ee.isFunction(e)&&(e=e.call(this[0])),t=Ee(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return Ee.isFunction(e)?this.each(function(t){Ee(this).wrapInner(e.call(this,t))}):this.each(function(){var t=Ee(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=Ee.isFunction(e);return this.each(function(n){Ee(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){Ee(this).replaceWith(this.childNodes)}),this}}),Ee.expr.pseudos.hidden=function(e){return!Ee.expr.pseudos.visible(e)},Ee.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},Ee.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Yt={0:200,1223:204},Jt=Ee.ajaxSettings.xhr();_e.cors=!!Jt&&"withCredentials"in Jt,_e.ajax=Jt=!!Jt,Ee.ajaxTransport(function(e){var t,r;if(_e.cors||Jt&&!e.crossDomain)return{send:function(i,a){var o,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(o in e.xhrFields)s[o]=e.xhrFields[o];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(o in i)s.setRequestHeader(o,i[o]);t=function(e){return function(){t&&(t=r=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?a(0,"error"):a(s.status,s.statusText):a(Yt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),r=s.onerror=t("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){t&&r()})},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}}),Ee.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),Ee.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return Ee.globalEval(e),e}}}),Ee.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),Ee.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=Ee("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),re.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Wt=[],Qt=/(=)\?(?=&|$)|\?\?/;Ee.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Wt.pop()||Ee.expando+"_"+Pt++;return this[e]=!0,e}}),Ee.ajaxPrefilter("json jsonp",function(e,t,r){var i,a,o,s=e.jsonp!==!1&&(Qt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Qt.test(e.data)&&"data");if(s||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=Ee.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,s?e[s]=e[s].replace(Qt,"$1"+i):e.jsonp!==!1&&(e.url+=(wt.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return o||Ee.error(i+" was not called"),o[0]},e.dataTypes[0]="json",a=n[i],n[i]=function(){o=arguments},r.always(function(){void 0===a?Ee(n).removeProp(i):n[i]=a,e[i]&&(e.jsonpCallback=t.jsonpCallback,Wt.push(i)),o&&Ee.isFunction(a)&&a(o[0]),o=a=void 0}),"script"}),_e.createHTMLDocument=function(){var e=re.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),Ee.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var r,i,a;return t||(_e.createHTMLDocument?(t=re.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=re.location.href,t.head.appendChild(r)):t=re),i=Ie.exec(e),a=!n&&[],i?[t.createElement(i[1])]:(i=T([e],t,a),a&&a.length&&Ee(a).remove(),Ee.merge([],i.childNodes))},Ee.fn.load=function(e,t,n){var r,i,a,o=this,s=e.indexOf(" ");return s>-1&&(r=Ee.trim(e.slice(s)),e=e.slice(0,s)),Ee.isFunction(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),o.length>0&&Ee.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){a=arguments,o.html(r?Ee("<div>").append(Ee.parseHTML(e)).find(r):e)}).always(n&&function(e,t){o.each(function(){n.apply(this,a||[e.responseText,t,e])})}),this},Ee.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){Ee.fn[t]=function(e){return this.on(t,e)}}),Ee.expr.pseudos.animated=function(e){return Ee.grep(Ee.timers,function(t){return e===t.elem}).length},Ee.offset={setOffset:function(e,t,n){var r,i,a,o,s,u,l,f=Ee.css(e,"position"),d=Ee(e),c={};"static"===f&&(e.style.position="relative"),s=d.offset(),a=Ee.css(e,"top"),u=Ee.css(e,"left"),l=("absolute"===f||"fixed"===f)&&(a+u).indexOf("auto")>-1,l?(r=d.position(),o=r.top,i=r.left):(o=parseFloat(a)||0,i=parseFloat(u)||0),Ee.isFunction(t)&&(t=t.call(e,n,Ee.extend({},s))),null!=t.top&&(c.top=t.top-s.top+o),null!=t.left&&(c.left=t.left-s.left+i),"using"in t?t.using.call(e,c):d.css(c)}},Ee.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){Ee.offset.setOffset(this,e,t)});var t,n,r,i,a=this[0];if(a)return a.getClientRects().length?(r=a.getBoundingClientRect(),r.width||r.height?(i=a.ownerDocument,n=te(i),t=i.documentElement,{top:r.top+n.pageYOffset-t.clientTop,left:r.left+n.pageXOffset-t.clientLeft}):r):{top:0,left:0}},position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===Ee.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),Ee.nodeName(e[0],"html")||(r=e.offset()),r={top:r.top+Ee.css(e[0],"borderTopWidth",!0),left:r.left+Ee.css(e[0],"borderLeftWidth",!0)}),{top:t.top-r.top-Ee.css(n,"marginTop",!0),left:t.left-r.left-Ee.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===Ee.css(e,"position");)e=e.offsetParent;return e||Ze})}}),Ee.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;Ee.fn[e]=function(r){return ke(this,function(e,r,i){var a=te(e);return void 0===i?a?a[t]:e[r]:void(a?a.scrollTo(n?a.pageXOffset:i,n?i:a.pageYOffset):e[r]=i)},e,r,arguments.length)}}),Ee.each(["top","left"],function(e,t){Ee.cssHooks[t]=k(_e.pixelPosition,function(e,n){if(n)return n=L(e,t),ut.test(n)?Ee(e).position()[t]+"px":n})}),Ee.each({Height:"height",Width:"width"},function(e,t){Ee.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){Ee.fn[r]=function(i,a){var o=arguments.length&&(n||"boolean"!=typeof i),s=n||(i===!0||a===!0?"margin":"border");return ke(this,function(t,n,i){var a;return Ee.isWindow(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(a=t.documentElement,Math.max(t.body["scroll"+e],a["scroll"+e],t.body["offset"+e],a["offset"+e],a["client"+e])):void 0===i?Ee.css(t,n,s):Ee.style(t,n,i,s)},t,o?i:void 0,o)}})}),Ee.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),Ee.parseJSON=JSON.parse,r=[],i=function(){return Ee}.apply(t,r),!(void 0!==i&&(e.exports=i));var Kt=n.jQuery,zt=n.$;return Ee.noConflict=function(e){return n.$===Ee&&(n.$=zt),e&&n.jQuery===Ee&&(n.jQuery=Kt),Ee},a||(n.jQuery=n.$=Ee),Ee})},function(e,t){String.fromCodePoint||!function(){var e=function(){try{var e={},t=Object.defineProperty,n=t(e,e,e)&&t}catch(e){}return n}(),t=String.fromCharCode,n=Math.floor,r=function(e){var r,i,a=16384,o=[],s=-1,u=arguments.length;if(!u)return"";for(var l="";++s<u;){var f=Number(arguments[s]);if(!isFinite(f)||f<0||f>1114111||n(f)!=f)throw RangeError("Invalid code point: "+f);f<=65535?o.push(f):(f-=65536,r=(f>>10)+55296,i=f%1024+56320,o.push(r,i)),(s+1==u||o.length>a)&&(l+=t.apply(null,o),o.length=0)}return l};e?e(String,"fromCodePoint",{value:r,configurable:!0,writable:!0}):String.fromCodePoint=r}()},function(e,t){(function(){"use strict";function e(e){throw e}function t(e,t){var n=e.split("."),r=T;!(n[0]in r)&&r.execScript&&r.execScript("var "+n[0]);for(var i;n.length&&(i=n.shift());)n.length||t===m?r=r[i]?r[i]:r[i]={}:r[i]=t}function n(t,n){this.index="number"==typeof n?n:0,this.i=0,this.buffer=t instanceof(v?Uint8Array:Array)?t:new(v?Uint8Array:Array)(32768),2*this.buffer.length<=this.index&&e(Error("invalid index")),this.buffer.length<=this.index&&this.f()}function r(e){this.buffer=new(v?Uint16Array:Array)(2*e),this.length=0}function i(e){var t,n,r,i,a,o,s,u,l,f,d=e.length,c=0,h=Number.POSITIVE_INFINITY;for(u=0;u<d;++u)e[u]>c&&(c=e[u]),e[u]<h&&(h=e[u]);for(t=1<<c,n=new(v?Uint32Array:Array)(t),r=1,i=0,a=2;r<=c;){for(u=0;u<d;++u)if(e[u]===r){for(o=0,s=i,l=0;l<r;++l)o=o<<1|1&s,s>>=1;for(f=r<<16|u,l=o;l<t;l+=a)n[l]=f;++i}++r,i<<=1,a<<=1}return[n,c,h]}function a(e,t){this.h=O,this.w=0,this.input=v&&e instanceof Array?new Uint8Array(e):e,this.b=0,t&&(t.lazy&&(this.w=t.lazy),"number"==typeof t.compressionType&&(this.h=t.compressionType),t.outputBuffer&&(this.a=v&&t.outputBuffer instanceof Array?new Uint8Array(t.outputBuffer):t.outputBuffer),"number"==typeof t.outputIndex&&(this.b=t.outputIndex)),this.a||(this.a=new(v?Uint8Array:Array)(32768))}function o(e,t){this.length=e,this.H=t}function s(t,n){function r(t,n){var r,i=t.H,a=[],o=0;r=k[t.length],a[o++]=65535&r,a[o++]=r>>16&255,a[o++]=r>>24;var s;switch(C){case 1===i:s=[0,i-1,0];break;case 2===i:s=[1,i-2,0];break;case 3===i:s=[2,i-3,0];break;case 4===i:s=[3,i-4,0];break;case 6>=i:s=[4,i-5,1];break;case 8>=i:s=[5,i-7,1];break;case 12>=i:s=[6,i-9,2];break;case 16>=i:s=[7,i-13,2];break;case 24>=i:s=[8,i-17,3];break;case 32>=i:s=[9,i-25,3];break;case 48>=i:s=[10,i-33,4];break;case 64>=i:s=[11,i-49,4];break;case 96>=i:s=[12,i-65,5];break;case 128>=i:s=[13,i-97,5];break;case 192>=i:s=[14,i-129,6];break;case 256>=i:s=[15,i-193,6];break;case 384>=i:s=[16,i-257,7];break;case 512>=i:s=[17,i-385,7];break;case 768>=i:s=[18,i-513,8];break;case 1024>=i:s=[19,i-769,8];break;case 1536>=i:s=[20,i-1025,9];break;case 2048>=i:s=[21,i-1537,9];break;case 3072>=i:s=[22,i-2049,10];break;case 4096>=i:s=[23,i-3073,10];break;case 6144>=i:s=[24,i-4097,11];break;case 8192>=i:s=[25,i-6145,11];break;case 12288>=i:s=[26,i-8193,12];break;case 16384>=i:s=[27,i-12289,12];break;case 24576>=i:s=[28,i-16385,13];break;case 32768>=i:s=[29,i-24577,13];break;default:e("invalid distance")}r=s,a[o++]=r[0],a[o++]=r[1],a[o++]=r[2];var u,l;for(u=0,l=a.length;u<l;++u)p[E++]=a[u];y[a[0]]++,R[a[3]]++,g=t.length+n-1,c=null}var i,a,o,s,l,f,d,c,h,_={},p=v?new Uint16Array(2*n.length):[],E=0,g=0,y=new(v?Uint32Array:Array)(286),R=new(v?Uint32Array:Array)(30),T=t.w;if(!v){for(o=0;285>=o;)y[o++]=0;for(o=0;29>=o;)R[o++]=0}for(y[256]=1,i=0,a=n.length;i<a;++i){for(o=l=0,s=3;o<s&&i+o!==a;++o)l=l<<8|n[i+o];if(_[l]===m&&(_[l]=[]),f=_[l],!(0<g--)){for(;0<f.length&&32768<i-f[0];)f.shift();if(i+3>=a){for(c&&r(c,-1),o=0,s=a-i;o<s;++o)h=n[i+o],p[E++]=h,++y[h];break}0<f.length?(d=u(n,i,f),c?c.length<d.length?(h=n[i-1],p[E++]=h,++y[h],r(d,0)):r(c,-1):d.length<T?c=d:r(d,0)):c?r(c,-1):(h=n[i],p[E++]=h,++y[h])}f.push(i)}return p[E++]=256,y[256]++,t.M=y,t.L=R,v?p.subarray(0,E):p}function u(e,t,n){var r,i,a,s,u,l,f=0,d=e.length;s=0,l=n.length;e:for(;s<l;s++){if(r=n[l-s-1],a=3,3<f){for(u=f;3<u;u--)if(e[r+u-1]!==e[t+u-1])continue e;a=f}for(;258>a&&t+a<d&&e[r+a]===e[t+a];)++a;if(a>f&&(i=r,f=a),258===a)break}return new o(f,t-i)}function l(e,t){var n,i,a,o,s,u=e.length,l=new r(572),d=new(v?Uint8Array:Array)(u);if(!v)for(o=0;o<u;o++)d[o]=0;for(o=0;o<u;++o)0<e[o]&&l.push(o,e[o]);if(n=Array(l.length/2),i=new(v?Uint32Array:Array)(l.length/2),1===n.length)return d[l.pop().index]=1,d;for(o=0,s=l.length/2;o<s;++o)n[o]=l.pop(),i[o]=n[o].value;for(a=f(i,i.length,t),o=0,s=n.length;o<s;++o)d[n[o].index]=a[o];return d}function f(e,t,n){function r(e){var n=h[e][_[e]];n===t?(r(e+1),r(e+1)):--d[n],++_[e]}var i,a,o,s,u,l=new(v?Uint16Array:Array)(n),f=new(v?Uint8Array:Array)(n),d=new(v?Uint8Array:Array)(t),c=Array(n),h=Array(n),_=Array(n),p=(1<<n)-t,E=1<<n-1;for(l[n-1]=t,a=0;a<n;++a)p<E?f[a]=0:(f[a]=1,p-=E),p<<=1,l[n-2-a]=(l[n-1-a]/2|0)+t;for(l[0]=f[0],c[0]=Array(l[0]),h[0]=Array(l[0]),a=1;a<n;++a)l[a]>2*l[a-1]+f[a]&&(l[a]=2*l[a-1]+f[a]),c[a]=Array(l[a]),h[a]=Array(l[a]);for(i=0;i<t;++i)d[i]=n;for(o=0;o<l[n-1];++o)c[n-1][o]=e[o],h[n-1][o]=o;for(i=0;i<n;++i)_[i]=0;for(1===f[n-1]&&(--d[0],++_[n-1]),a=n-2;0<=a;--a){for(s=i=0,u=_[a+1],o=0;o<l[a];o++)s=c[a+1][u]+c[a+1][u+1],s>e[i]?(c[a][o]=s,h[a][o]=t,u+=2):(c[a][o]=e[i],h[a][o]=i,++i);_[a]=0,1===f[a]&&r(a)}return d}function d(e){var t,n,r,i,a=new(v?Uint16Array:Array)(e.length),o=[],s=[],u=0;for(t=0,n=e.length;t<n;t++)o[e[t]]=(0|o[e[t]])+1;for(t=1,n=16;t<=n;t++)s[t]=u,u+=0|o[t],u<<=1;for(t=0,n=e.length;t<n;t++)for(u=s[e[t]],s[e[t]]+=1,r=a[t]=0,i=e[t];r<i;r++)a[t]=a[t]<<1|1&u,u>>>=1;return a}function c(t,n){switch(this.l=[],this.m=32768,this.e=this.g=this.c=this.q=0,this.input=v?new Uint8Array(t):t,this.s=!1,this.n=x,this.C=!1,!n&&(n={})||(n.index&&(this.c=n.index),n.bufferSize&&(this.m=n.bufferSize),n.bufferType&&(this.n=n.bufferType),n.resize&&(this.C=n.resize)),this.n){case M:this.b=32768,this.a=new(v?Uint8Array:Array)(32768+this.m+258);break;case x:this.b=0,this.a=new(v?Uint8Array:Array)(this.m),this.f=this.K,this.t=this.I,this.o=this.J;break;default:e(Error("invalid inflate mode"))}}function h(t,n){for(var r,i=t.g,a=t.e,o=t.input,s=t.c,u=o.length;a<n;)s>=u&&e(Error("input buffer is broken")),i|=o[s++]<<a,a+=8;return r=i&(1<<n)-1,t.g=i>>>n,t.e=a-n,t.c=s,r}function _(e,t){for(var n,r,i=e.g,a=e.e,o=e.input,s=e.c,u=o.length,l=t[0],f=t[1];a<f&&!(s>=u);)i|=o[s++]<<a,a+=8;return n=l[i&(1<<f)-1],r=n>>>16,e.g=i>>r,e.e=a-r,e.c=s,65535&n}function p(e){function t(e,t,n){var r,i,a,o=this.z;for(a=0;a<e;)switch(r=_(this,t)){case 16:for(i=3+h(this,2);i--;)n[a++]=o;break;case 17:for(i=3+h(this,3);i--;)n[a++]=0;o=0;break;case 18:for(i=11+h(this,7);i--;)n[a++]=0;o=0;break;default:o=n[a++]=r}return this.z=o,n}var n,r,a,o,s=h(e,5)+257,u=h(e,5)+1,l=h(e,4)+4,f=new(v?Uint8Array:Array)(G.length);for(o=0;o<l;++o)f[G[o]]=h(e,3);if(!v)for(o=l,l=f.length;o<l;++o)f[G[o]]=0;n=i(f),r=new(v?Uint8Array:Array)(s),a=new(v?Uint8Array:Array)(u),e.z=0,e.o(i(t.call(e,s,n,r)),i(t.call(e,u,n,a)))}function E(e){if("string"==typeof e){var t,n,r=e.split("");for(t=0,n=r.length;t<n;t++)r[t]=(255&r[t].charCodeAt(0))>>>0;e=r}for(var i,a=1,o=0,s=e.length,u=0;0<s;){i=1024<s?1024:s,s-=i;do a+=e[u++],o+=a;while(--i);a%=65521,o%=65521}return(o<<16|a)>>>0}function g(t,n){var r,i;switch(this.input=t,this.c=0,!n&&(n={})||(n.index&&(this.c=n.index),n.verify&&(this.N=n.verify)),r=t[this.c++],i=t[this.c++],15&r){case re:this.method=re;break;default:e(Error("unsupported compression method"))}0!==((r<<8)+i)%31&&e(Error("invalid fcheck flag:"+((r<<8)+i)%31)),32&i&&e(Error("fdict flag is not supported")),this.B=new c(t,{index:this.c,bufferSize:n.bufferSize,bufferType:n.bufferType,resize:n.resize})}function y(e,t){this.input=e,this.a=new(v?Uint8Array:Array)(32768),this.h=ie.k;var n,r={};!t&&(t={})||"number"!=typeof t.compressionType||(this.h=t.compressionType);for(n in t)r[n]=t[n];r.outputBuffer=this.a,this.A=new a(this.input,r)}function R(e,n){var r,i,a,o;if(Object.keys)r=Object.keys(n);else for(i in r=[],a=0,n)r[a++]=i;for(a=0,o=r.length;a<o;++a)i=r[a],t(e+"."+i,n[i])}var m=void 0,C=!0,T=this,v="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array&&"undefined"!=typeof DataView;n.prototype.f=function(){var e,t=this.buffer,n=t.length,r=new(v?Uint8Array:Array)(n<<1);if(v)r.set(t);else for(e=0;e<n;++e)r[e]=t[e];return this.buffer=r},n.prototype.d=function(e,t,n){var r,i=this.buffer,a=this.index,o=this.i,s=i[a];if(n&&1<t&&(e=8<t?(w[255&e]<<24|w[e>>>8&255]<<16|w[e>>>16&255]<<8|w[e>>>24&255])>>32-t:w[e]>>8-t),8>t+o)s=s<<t|e,o+=t;else for(r=0;r<t;++r)s=s<<1|e>>t-r-1&1,8===++o&&(o=0,i[a++]=w[s],s=0,a===i.length&&(i=this.f()));i[a]=s,this.buffer=i,this.i=o,this.index=a},n.prototype.finish=function(){var e,t=this.buffer,n=this.index;return 0<this.i&&(t[n]<<=8-this.i,t[n]=w[t[n]],n++),v?e=t.subarray(0,n):(t.length=n,e=t),e};var S,I=new(v?Uint8Array:Array)(256);for(S=0;256>S;++S){for(var A=S,b=A,P=7,A=A>>>1;A;A>>>=1)b<<=1,b|=1&A,--P;I[S]=(b<<P&255)>>>0}var w=I;r.prototype.getParent=function(e){return 2*((e-2)/4|0)},r.prototype.push=function(e,t){var n,r,i,a=this.buffer;for(n=this.length,a[this.length++]=t,a[this.length++]=e;0<n&&(r=this.getParent(n),a[n]>a[r]);)i=a[n],a[n]=a[r],a[r]=i,i=a[n+1],a[n+1]=a[r+1],a[r+1]=i,n=r;return this.length},r.prototype.pop=function(){var e,t,n,r,i,a=this.buffer;for(t=a[0],e=a[1],this.length-=2,a[0]=a[this.length],a[1]=a[this.length+1],i=0;(r=2*i+2,!(r>=this.length))&&(r+2<this.length&&a[r+2]>a[r]&&(r+=2),a[r]>a[i]);)n=a[i],a[i]=a[r],a[r]=n,n=a[i+1],a[i+1]=a[r+1],a[r+1]=n,i=r;return{index:e,value:t,length:this.length}};var D,O=2,N={NONE:0,r:1,k:O,O:3},U=[];for(D=0;288>D;D++)switch(C){case 143>=D:U.push([D+48,8]);break;case 255>=D:U.push([D-144+400,9]);break;case 279>=D:U.push([D-256+0,7]);break;case 287>=D:U.push([D-280+192,8]);break;default:e("invalid literal: "+D)}a.prototype.j=function(){var t,r,i,a,o=this.input;switch(this.h){case 0:for(i=0,a=o.length;i<a;){r=v?o.subarray(i,i+65535):o.slice(i,i+65535),i+=r.length;var u=r,f=i===a,c=m,h=m,_=m,p=m,E=m,g=this.a,y=this.b;if(v){for(g=new Uint8Array(this.a.buffer);g.length<=y+u.length+5;)g=new Uint8Array(g.length<<1);g.set(this.a)}if(c=f?1:0,g[y++]=0|c,h=u.length,_=~h+65536&65535,g[y++]=255&h,g[y++]=h>>>8&255,g[y++]=255&_,g[y++]=_>>>8&255,v)g.set(u,y),y+=u.length,g=g.subarray(0,y);else{for(p=0,E=u.length;p<E;++p)g[y++]=u[p];g.length=y}this.b=y,this.a=g}break;case 1:var R=new n(v?new Uint8Array(this.a.buffer):this.a,this.b);R.d(1,1,C),R.d(1,2,C);var T,S,I,A=s(this,o);for(T=0,S=A.length;T<S;T++)if(I=A[T],n.prototype.d.apply(R,U[I]),256<I)R.d(A[++T],A[++T],C),R.d(A[++T],5),R.d(A[++T],A[++T],C);else if(256===I)break;this.a=R.finish(),this.b=this.a.length;break;case O:var b,P,w,D,N,L,k,M,x,B,H,F,j,G,V,q=new n(v?new Uint8Array(this.a.buffer):this.a,this.b),Y=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],J=Array(19);for(b=O,q.d(1,1,C),q.d(b,2,C),P=s(this,o),L=l(this.M,15),k=d(L),M=l(this.L,7),x=d(M),w=286;257<w&&0===L[w-1];w--);for(D=30;1<D&&0===M[D-1];D--);var W,Q,K,z,$,Z,X=w,ee=D,te=new(v?Uint32Array:Array)(X+ee),ne=new(v?Uint32Array:Array)(316),re=new(v?Uint8Array:Array)(19);for(W=Q=0;W<X;W++)te[Q++]=L[W];for(W=0;W<ee;W++)te[Q++]=M[W];if(!v)for(W=0,z=re.length;W<z;++W)re[W]=0;for(W=$=0,z=te.length;W<z;W+=Q){for(Q=1;W+Q<z&&te[W+Q]===te[W];++Q);if(K=Q,0===te[W])if(3>K)for(;0<K--;)ne[$++]=0,re[0]++;else for(;0<K;)Z=138>K?K:138,Z>K-3&&Z<K&&(Z=K-3),10>=Z?(ne[$++]=17,ne[$++]=Z-3,re[17]++):(ne[$++]=18,ne[$++]=Z-11,re[18]++),K-=Z;else if(ne[$++]=te[W],re[te[W]]++,K--,3>K)for(;0<K--;)ne[$++]=te[W],re[te[W]]++;else for(;0<K;)Z=6>K?K:6,Z>K-3&&Z<K&&(Z=K-3),ne[$++]=16,ne[$++]=Z-3,re[16]++,K-=Z}for(t=v?ne.subarray(0,$):ne.slice(0,$),B=l(re,7),G=0;19>G;G++)J[G]=B[Y[G]];for(N=19;4<N&&0===J[N-1];N--);for(H=d(B),q.d(w-257,5,C),q.d(D-1,5,C),q.d(N-4,4,C),G=0;G<N;G++)q.d(J[G],3,C);for(G=0,V=t.length;G<V;G++)if(F=t[G],q.d(H[F],B[F],C),16<=F){switch(G++,F){case 16:j=2;break;case 17:j=3;break;case 18:j=7;break;default:e("invalid code: "+F)}q.d(t[G],j,C)}var ie,ae,oe,se,ue,le,fe,de,ce=[k,L],he=[x,M];for(ue=ce[0],le=ce[1],fe=he[0],de=he[1],ie=0,ae=P.length;ie<ae;++ie)if(oe=P[ie],q.d(ue[oe],le[oe],C),256<oe)q.d(P[++ie],P[++ie],C),se=P[++ie],q.d(fe[se],de[se],C),q.d(P[++ie],P[++ie],C);else if(256===oe)break;this.a=q.finish(),this.b=this.a.length;break;default:e("invalid compression type")}return this.a};var L=function(){function t(t){switch(C){case 3===t:return[257,t-3,0];case 4===t:return[258,t-4,0];case 5===t:return[259,t-5,0];case 6===t:return[260,t-6,0];case 7===t:return[261,t-7,0];case 8===t:return[262,t-8,0];case 9===t:return[263,t-9,0];case 10===t:return[264,t-10,0];case 12>=t:return[265,t-11,1];case 14>=t:return[266,t-13,1];case 16>=t:return[267,t-15,1];case 18>=t:return[268,t-17,1];case 22>=t:return[269,t-19,2];case 26>=t:return[270,t-23,2];case 30>=t:return[271,t-27,2];case 34>=t:return[272,t-31,2];case 42>=t:return[273,t-35,3];case 50>=t:return[274,t-43,3];case 58>=t:return[275,t-51,3];case 66>=t:return[276,t-59,3];case 82>=t:return[277,t-67,4];case 98>=t:return[278,t-83,4];case 114>=t:return[279,t-99,4];case 130>=t:return[280,t-115,4];case 162>=t:return[281,t-131,5];case 194>=t:return[282,t-163,5];case 226>=t:return[283,t-195,5];case 257>=t:return[284,t-227,5];case 258===t:return[285,t-258,0];default:e("invalid length: "+t)}}var n,r,i=[];for(n=3;258>=n;n++)r=t(n),i[n]=r[2]<<24|r[1]<<16|r[0];return i}(),k=v?new Uint32Array(L):L,M=0,x=1,B={F:M,D:x};c.prototype.p=function(){for(;!this.s;){var t=h(this,3);switch(1&t&&(this.s=C),t>>>=1){case 0:var n=this.input,r=this.c,i=this.a,a=this.b,o=n.length,s=m,u=m,l=i.length,f=m;switch(this.e=this.g=0,r+1>=o&&e(Error("invalid uncompressed block header: LEN")),s=n[r++]|n[r++]<<8,r+1>=o&&e(Error("invalid uncompressed block header: NLEN")),u=n[r++]|n[r++]<<8,s===~u&&e(Error("invalid uncompressed block header: length verify")),r+s>n.length&&e(Error("input buffer is broken")),this.n){case M:for(;a+s>i.length;){if(f=l-a,s-=f,v)i.set(n.subarray(r,r+f),a),a+=f,r+=f;else for(;f--;)i[a++]=n[r++];this.b=a,i=this.f(),a=this.b}break;case x:for(;a+s>i.length;)i=this.f({v:2});break;default:e(Error("invalid inflate mode"))}if(v)i.set(n.subarray(r,r+s),a),a+=s,r+=s;else for(;s--;)i[a++]=n[r++];this.c=r,this.b=a,this.a=i;break;case 1:this.o(ee,ne);break;case 2:p(this);break;default:e(Error("unknown BTYPE: "+t))}}return this.t()};var H,F,j=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],G=v?new Uint16Array(j):j,V=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,258,258],q=v?new Uint16Array(V):V,Y=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],J=v?new Uint8Array(Y):Y,W=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Q=v?new Uint16Array(W):W,K=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],z=v?new Uint8Array(K):K,$=new(v?Uint8Array:Array)(288);for(H=0,F=$.length;H<F;++H)$[H]=143>=H?8:255>=H?9:279>=H?7:8;var Z,X,ee=i($),te=new(v?Uint8Array:Array)(30);for(Z=0,X=te.length;Z<X;++Z)te[Z]=5;var ne=i(te);c.prototype.o=function(e,t){var n=this.a,r=this.b;this.u=e;for(var i,a,o,s,u=n.length-258;256!==(i=_(this,e));)if(256>i)r>=u&&(this.b=r,n=this.f(),r=this.b),n[r++]=i;else for(a=i-257,s=q[a],0<J[a]&&(s+=h(this,J[a])),i=_(this,t),o=Q[i],0<z[i]&&(o+=h(this,z[i])),r>=u&&(this.b=r,n=this.f(),r=this.b);s--;)n[r]=n[r++-o];for(;8<=this.e;)this.e-=8,this.c--;this.b=r},c.prototype.J=function(e,t){var n=this.a,r=this.b;this.u=e;for(var i,a,o,s,u=n.length;256!==(i=_(this,e));)if(256>i)r>=u&&(n=this.f(),u=n.length),n[r++]=i;else for(a=i-257,s=q[a],0<J[a]&&(s+=h(this,J[a])),i=_(this,t),o=Q[i],0<z[i]&&(o+=h(this,z[i])),r+s>u&&(n=this.f(),u=n.length);s--;)n[r]=n[r++-o];for(;8<=this.e;)this.e-=8,this.c--;this.b=r},c.prototype.f=function(){var e,t,n=new(v?Uint8Array:Array)(this.b-32768),r=this.b-32768,i=this.a;if(v)n.set(i.subarray(32768,n.length));else for(e=0,t=n.length;e<t;++e)n[e]=i[e+32768];if(this.l.push(n),this.q+=n.length,v)i.set(i.subarray(r,r+32768));else for(e=0;32768>e;++e)i[e]=i[r+e];return this.b=32768,i},c.prototype.K=function(e){var t,n,r,i,a=this.input.length/this.c+1|0,o=this.input,s=this.a;return e&&("number"==typeof e.v&&(a=e.v),"number"==typeof e.G&&(a+=e.G)),2>a?(n=(o.length-this.c)/this.u[2],i=258*(n/2)|0,r=i<s.length?s.length+i:s.length<<1):r=s.length*a,v?(t=new Uint8Array(r),t.set(s)):t=s,this.a=t},c.prototype.t=function(){var e,t,n,r,i,a=0,o=this.a,s=this.l,u=new(v?Uint8Array:Array)(this.q+(this.b-32768));if(0===s.length)return v?this.a.subarray(32768,this.b):this.a.slice(32768,this.b);for(t=0,n=s.length;t<n;++t)for(e=s[t],r=0,i=e.length;r<i;++r)u[a++]=e[r];for(t=32768,n=this.b;t<n;++t)u[a++]=o[t];return this.l=[],this.buffer=u},c.prototype.I=function(){var e,t=this.b;return v?this.C?(e=new Uint8Array(t),e.set(this.a.subarray(0,t))):e=this.a.subarray(0,t):(this.a.length>t&&(this.a.length=t),e=this.a),this.buffer=e},g.prototype.p=function(){var t,n,r=this.input;return t=this.B.p(),this.c=this.B.c,this.N&&(n=(r[this.c++]<<24|r[this.c++]<<16|r[this.c++]<<8|r[this.c++])>>>0,n!==E(t)&&e(Error("invalid adler-32 checksum"))),t};var re=8,ie=N;y.prototype.j=function(){var t,n,r,i,a,o,s,u=0;switch(s=this.a,t=re){case re:n=Math.LOG2E*Math.log(32768)-8;break;default:e(Error("invalid compression method"))}switch(r=n<<4|t,s[u++]=r,t){case re:switch(this.h){case ie.NONE:a=0;break;case ie.r:a=1;break;case ie.k:a=2;break;default:e(Error("unsupported compression type"));
-}break;default:e(Error("invalid compression method"))}return i=a<<6|0,s[u++]=i|31-(256*r+i)%31,o=E(this.input),this.A.b=u,s=this.A.j(),u=s.length,v&&(s=new Uint8Array(s.buffer),s.length<=u+4&&(this.a=new Uint8Array(s.length+4),this.a.set(s),s=this.a),s=s.subarray(0,u+4)),s[u++]=o>>24&255,s[u++]=o>>16&255,s[u++]=o>>8&255,s[u++]=255&o,s},t("Zlib.Inflate",g),t("Zlib.Inflate.prototype.decompress",g.prototype.p),R("Zlib.Inflate.BufferType",{ADAPTIVE:B.D,BLOCK:B.F}),t("Zlib.Deflate",y),t("Zlib.Deflate.compress",function(e,t){return new y(e,t).j()}),t("Zlib.Deflate.prototype.compress",y.prototype.j),R("Zlib.Deflate.CompressionType",{NONE:ie.NONE,FIXED:ie.r,DYNAMIC:ie.k})}).call(this)},function(e,t){},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),l=r(u),f=n(36),d=r(f),c=n(34),h=r(c),_=n(19),p=r(_),E=n(18),g=r(E),y=n(22),R=r(y),m=n(3),C=r(m),T=n(1),v=r(T),S=n(21),I=r(S),A=n(38),b=r(A),P=n(41),w=r(P),D=n(37),O=r(D),N=n(39),U=r(N),L=n(42),k=r(L),M=n(4),x=r(M),B=n(5),H=r(B),F=n(2),j=r(F),G=n(13),V=(r(G),n(10)),q=(r(V),n(43)),Y=r(q),J=n(15),W=(r(J),n(14));r(W);n(49).polyfill(),n(54),n(51),n(30);var Q=v.default.getLoger("McuClient"),K={version:"v1.27.17.201705031",author:"www.3mang.com"},z=void 0,$=void 0,Z=void 0,X=void 0,ee=void 0,te=void 0,ne=void 0,re=void 0,ie=void 0,ae=void 0,oe=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.sdkInfo=K,Q.log(e.sdkInfo),e.isGetUserIpCallback=!1,e.isGetFastestMcuCallback=!1,e.isGetFastestMsCallback=!1,H.default.setCurrentStatus(H.default.statusCode_0),e.on(C.default.MCU_ERROR,e._mcuErrorHandler.bind(e)),z=d.default,z.on("*",function(t,n){return e._emit(t,n)}),z.on(z.SUCCESS,e._sassJoinSuccessHandler.bind(e)),z.on(z.CLASS_INIT_SUCCESS,e._sassInitSuccessHandler.bind(e)),z.on(z.CLASS_GET_CLASS_PARAM,e._sassGetClassParamSuccessHandler.bind(e)),z.on(z.CLASS_SAVE_STATUS_INFO_SUCCESS,e._sassSaveClassStatusInfoSuccessHandler.bind(e)),z.on(z.CLASS_SAVE_RECORD_INFO_SUCCESS,e._sassSaveClassRecordInfoSuccessHandler.bind(e)),z.on(z.DELETE_DOCUMENT_SUCCESS,e._sassDeleteDocumentSuccess.bind(e)),$=new h.default,Z=R.default,Z.on("*",function(t,n){return e._emit(t,n)}),Z.on(C.default.CLASS_JOIN_MCU_SUCCESS,e._mcuJoinMCUClassSuccessHandler.bind(e)),Z.on(C.default.SWITCH_MCU_IP,e._switchMcuIpHandler.bind(e)),ae=p.default,ae.on("*",function(t,n){return e._emit(t,n)}),ae.on(p.default.CLASS_JOIN_RECORD_PLAYBACK_SUCCESS,e._joinRecordPlaybackSuccessHandler.bind(e)),ae.on(p.default.RECORD_PLAYBACK_CLEAR_DATA,e._recordPlaybackClearDataHandler.bind(e)),X=new I.default,X.on("*",function(t,n){return e._emit(t,n)}),X.on(C.default.CLASS_RUN_EXIT,e._runClassExit.bind(e)),X.on(C.default.CLASS_STATUS_INFO_CHANGE,e._onClassStatusInfoChange.bind(e)),X.on(C.default.CLASS_DELETE_ROSTER,e._onClassDeleteRoster.bind(e)),X.on(C.default.CLASS_NONENTITY_ROSTER,e._onClassNonentityRoster.bind(e)),X.on(C.default.CLASS_RECORD_START,e._onClassRecordStart.bind(e)),X.on(C.default.CLASS_RECORD_SUCCESS,e._onClassRecordSuccess.bind(e)),X.on(C.default.SWITCH_MS_IP,e._switchMsIpHandler.bind(e)),X.on(C.default.STOP_ALL_MEDIA_PUBLISH,e._stopAllMediaPublishHandler.bind(e)),ee=new b.default,ee.on("*",function(t,n){return e._emit(t,n)}),te=new w.default,te.on("*",function(t,n){return e._emit(t,n)}),te.on(C.default.VIDEO_UPDATE,e.videoUpdate.bind(e)),te.on(C.default.USER_DEVICE_STATUS_CHAANGE,e.userDeviecStatusChange.bind(e)),ne=new O.default,ne.on("*",function(t,n){return e._emit(t,n)}),ne.on(C.default.AUDIO_UPDATE,e.audioUpdate.bind(e)),ne.on(C.default.USER_DEVICE_STATUS_CHAANGE,e.userDeviecStatusChange.bind(e)),ie=new k.default,ie.on("*",function(t,n){return e._emit(t,n)}),re=new U.default,re.on("*",function(t,n){return e._emit(t,n)}),re.on(C.default.DOC_UPDATE,e.docUpdateHandler.bind(e)),re.on(C.default.DOC_DELETE,e.docDeleteHandler.bind(e)),re.on(U.default.DOC_JOIN_CHANNEL_SUCCESS,e.docJoinChannelSuccess.bind(e)),e.init=e._init.bind(e),e.joinClass=e._joinClass.bind(e),e.leaveClass=e._leaveClass.bind(e),e.getMcuClientStatus=e._getMcuClientStatus.bind(e),e.getClassStatusInfo=e._getClassStatusInfo.bind(e),e.sendStartClass=e._sendStartClass.bind(e),e.sendPauseClass=e._sendPauseClass.bind(e),e.sendCloseClass=e._sendCloseClass.bind(e),e.changeHandUpStatus=e._changeHandUpStatus.bind(e),e.controlHandUpStatus=e._controlHandUpStatus.bind(e),e.initRecordPlayback=e._initRecordPlayback.bind(e),e.startRecordPlayback=e._startRecordPlayback.bind(e),e.stopRecordPlayback=e._stopRecordPlayback.bind(e),e.pauseRecordPlayback=e._pauseRecordPlayback.bind(e),e.seekRecordPlayback=e._seekRecordPlayback.bind(e),e.sendChatMsg=e._sendChatMsg.bind(e),e.publishScreenShare=e._publishScreenShare.bind(e),e.stopPublishScreenShare=e._stopPublishScreenShare.bind(e),e.getVideoPublishPath=e._getVideoPublishPath.bind(e),e.getVideoAllChannelInfo=e._getVideoAllChannelInfo.bind(e),e.publishVideo=e._publishVideo.bind(e),e.stopPublishVideo=e.unPublishVideo=e._stopPublishVideo.bind(e),e.sendVideoBroadcastMsg=e._sendVideoBroadcastMsg.bind(e),e.getAudioPublishPath=e._getPublishAudioPath.bind(e),e.getAudioAllChannelInfo=e._getAudioAllChannelInfo.bind(e),e.publishAudio=e._publishAudio.bind(e),e.stopPublishAudio=e.unPublishAudio=e._stopPublishAudio.bind(e),e.sendAudioBroadcastMsg=e.sendAudioCommandMsg.bind(e),e.sendInsertAnnotaion=e._sendInsertAnnotaion.bind(e),e.sendDeleteAllAnnotation=e._sendDeleteAllAnnotation.bind(e),e.sendDeleteCurPageAnnotation=e._sendDeleteCurPageAnnotation.bind(e),e.sendGotoPrev=e._sendGotoPrev.bind(e),e.sendDocumentUpload=e._sendDocumentUpload.bind(e),e.sendDocumentSwitchDoc=e._sendDocumentSwitchDoc.bind(e),e.sendDocumentSwitchPage=e._sendDocumentSwitchPage.bind(e),e.sendDocumentSwitchAnimation=e._sendDocumentSwitchAnimation.bind(e),e.sendDocumentDelete=e._sassDeleteDocument.bind(e),e.sendDocBroadcastMsg=e._sendDocBroadcastMsg.bind(e),e.sendDocumentCommand=e._sendDocumentCommand.bind(e),e.getDocImageFullPath=e._getDocImageFullPath.bind(e),e.getDocPDFFullPath=e._getDocPDFFullPath.bind(e),e.getDocFullAddress=e._getDocFullAddress.bind(e),e.setDeviceInfo=e._setDeviceInfo.bind(e),e.setMessageDelay=e._setMessageDelay.bind(e),e.switchServer=e._switchMcuIpHandler.bind(e),e.switchMediaServer=e._switchMsIpHandler.bind(e),e.setDebugInfo=e._setDebugInfo.bind(e),e}return o(t,e),s(t,[{key:"_setDebugInfo",value:function(e){Q.log("设置debug信息-->",e),e&&v.default.setLogDebug(e.isDebug)}},{key:"_setDeviceInfo",value:function(e){Q.log("设置设备信息-->",e),e&&(H.default.cameras=e.cameras||[],H.default.microphones=e.microphones||[],H.default.videoQuality=parseInt(e.videoQuality),H.default.curVideoQuality=parseInt(e.curVideoQuality),H.default.micGain=e.micGain||50,H.default.speakerVolume=e.speakerVolume||50,H.default.micCode=e.micCode||0,H.default.curCamera=e.curCamera||"",H.default.curMicrophone=e.curMicrophone||"",!H.default.curCamera&&H.default.cameras.length>0&&(H.default.curCamera=H.default.cameras[0]),!H.default.curMicrophone&&H.default.microphones.length>0&&(H.default.curMicrophone=H.default.microphones[0]),this._updateDeviceInfo())}},{key:"_setMessageDelay",value:function(e){Q.warn("延迟消息-->",e),e&&(H.default.messageDelay=Boolean(e.messageDelay))}},{key:"_mcuErrorHandler",value:function(e,t){var n=t||"",r={code:e,reson:C.default.ErrorReson[e]+" "+n};this._emit(C.default.ERROR_EVENT,r),Q.error("MCU_ERROR",r)}},{key:"_getMcuClientStatus",value:function(){return H.default.getCurrentStatus()}},{key:"_getClassDetail",value:function(){return H.default.getClassDetail()}},{key:"_getClassStatusInfo",value:function(){return H.default.classStatusInfo}},{key:"_runClassExit",value:function(e){this._leaveClass(e)}},{key:"_onClassStatusInfoChange",value:function(e){return H.default.getCurrentStatus().code!=H.default.statusCode_2.code?void Q.warn("不能保存课堂状态",H.default.getCurrentStatus()):void this._sassSaveClassStatusInfo(e)}},{key:"_onClassRecordStart",value:function(e){return H.default.getCurrentStatus().code!=H.default.statusCode_2.code?void Q.warn("不能保存课堂状态",H.default.getCurrentStatus()):void(z&&z.saveClassRecordContrlInfo(e))}},{key:"_onClassRecordSuccess",value:function(e){re&&re.updaterRecordStatus(),ie&&ie.updaterRecordStatus()}},{key:"_onClassDeleteRoster",value:function(e){}},{key:"_onClassNonentityRoster",value:function(e){if(H.default.isRecordPlayBack)return void Q.warn("录制回放中,不处理");if(null==e||null==e.nodeId)return void Q.warn("onClassNonentityRoster.参数错误");var t={nodeId:e.nodeId};te&&(te.stopPublishVideo(t),H.default.nodeId==t.nodeId&&te.stopPublishScreenShare(t)),ne&&ne.stopPublishAudio(t)}},{key:"_init",value:function(e){return null==e||x.default.isEmptyObject(e)?(Q.error("初始化课堂失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_INIT_PARAM)):null==e.classId||isNaN(e.classId)||null==e.portal||""==e.portal?(Q.error("初始化课堂失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_INIT_PARAM)):(Q.log("初始化课堂->",e),H.default.isRecordPlayBack=!1,H.default.classId=parseInt(e.classId),H.default.portal=e.portal,H.default.userId=e.userId||"0",H.default.userName=e.userName||"",H.default.userRole=e.userRole||j.default.normal,H.default.userRole!=j.default.host&&H.default.userRole!=j.default.presenter&&H.default.userRole!=j.default.assistant&&H.default.userRole!=j.default.record&&H.default.userRole!=j.default.invisible&&(H.default.userRole=j.default.normal),H.default.messageDelay=e.messageDelay||!1,e.allowRecordMaxTime&&(H.default.allowRecordMaxTime=parseInt(e.allowRecordMaxTime)),void(z&&z.getJoinParams(H.default.getClassInfo())))}},{key:"_joinClass",value:function(e){if(null==e||x.default.isEmptyObject(e))return this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_JOIN_PARAM),void Q.log("加入课堂失败->参数错误.",e);if(null==e.userName||""==e.userName)return Q.log("加入课堂失败->参数错误->名字不能为空"),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_JOIN_PARAM);H.default.userName=e.userName||H.default.userName,H.default.autoLogin=e.autoLogin||"",H.default.password=e.password||"",H.default.hasCamera="boolean"==typeof e.hasCamera&&e.hasCamera,H.default.hasMicrophone="boolean"==typeof e.hasMicrophone&&e.hasMicrophone;var t=(0,g.default)(""+H.default.classId+H.default.userId+H.default.userRole);H.default.autoLogin&&t==H.default.autoLogin?(Q.log("自动登录"),this._sassJoinSuccessHandler()):z&&z.passwordAndMd5Checking(H.default.getClassInfo())}},{key:"_sassInitSuccessHandler",value:function(e){H.default.md5=e.md5||"",H.default.msType=e.msType||1,H.default.siteId=e.siteId||"",H.default.classType=e.meetingType||j.default.CLASS_TYPE_1,H.default.passwordRequired=e.passwordRequired||!1,Q.log("初始化课堂验证完成."),H.default.setCurrentStatus(H.default.statusCode_1);var t={};t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.userName=H.default.userName,t.classType=H.default.classType,H.default.userRole==j.default.host?t.passwordRequired=!0:t.passwordRequired=H.default.passwordRequired,this._emit(C.default.CLASS_INIT_SUCCESS,t)}},{key:"_sassJoinSuccessHandler",value:function(e){z&&z.getClassParam()}},{key:"_sassGetClassParamSuccessHandler",value:function(e){if(Q.log("获取课堂课堂信息完成."),e){if(H.default.mcuDelay=e.h5Delay||0,H.default.className=e.meetingName||"",H.default.classBeginTime=e.beginTime||"",H.default.classEndTime=e.endTime||"",H.default.userIp=e.userIp||"",H.default.maxVideoChannels=e.maxVideoChannels,H.default.maxAudioChannels=e.maxAudioChannels,H.default.maxMediaChannels=Math.max(H.default.maxVideoChannels,H.default.maxAudioChannels),H.default.ssTunnelAppURL=e.ssTunnelAppURL||"",H.default.fps=e.fps||15,H.default.gop=e.gop||3,H.default.videoQuality=parseInt(e.videoQuality),H.default.isAutoStartClass=e.autoRecord||0,H.default.setDocListPrepare(e.docListPrepare),H.default.setRecordList(e.recordList),H.default.setDocList(e.docList),H.default.setMsList(e.msList),H.default.setRsList(e.rsList),H.default.setMcuList(e.mcuList),H.default.setMusicList(e.musicList),H.default.setMusicListPrepare(e.musicListPrepare),H.default.setVideoCDNAddr(e.videoCDNAddr),e.mcuList&&e.mcuList.length>0){var t=parseInt(Math.random()*e.mcuList.length);H.default.MCUServerIP=e.mcuList[t].ip||"",H.default.MCUServerPort=e.mcuList[t].port||"",Q.log("初始->MCU->.",H.default.MCUServerIP,H.default.MCUServerPort)}if(e.rsList&&e.rsList.length>0){var n=parseInt(Math.random()*e.rsList.length);H.default.RS_RECORD_PLAY_IP=e.rsList[n].ip||"",H.default.RS_RECORD_PLAY_PORT=e.rsList[n].port||"",Q.log("初始->RS->.",H.default.RS_RECORD_PLAY_IP,H.default.RS_RECORD_PLAY_PORT)}if(H.default.msList&&H.default.msList.length>0){var r=parseInt(Math.random()*H.default.msList.length);H.default.MS_PUBLISH_IP=H.default.msList[r].ip||"",H.default.MS_PUBLISH_PORT=H.default.msList[r].port||""}if(Q.log("初始->MS->.",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT),H.default.pullRtmpList&&H.default.pullRtmpList.length>0){var i=parseInt(Math.random()*H.default.pullRtmpList.length);H.default.MS_PLAY_RTMP_IP=H.default.pullRtmpList[i].ip||"",H.default.MS_PLAY_RTMP_PORT=H.default.pullRtmpList[i].port||""}else H.default.MS_PLAY_RTMP_IP=H.default.MS_PUBLISH_IP,H.default.MS_PLAY_RTMP_PORT=H.default.MS_PUBLISH_PORT;if(Q.log("初始->MSPull->.",H.default.MS_PLAY_RTMP_IP,H.default.MS_PLAY_RTMP_PORT),H.default.hlsList&&H.default.hlsList.length>0){var a=parseInt(Math.random()*H.default.hlsList.length);H.default.MS_PLAY_HLS_IP=H.default.hlsList[a].ip||"",H.default.MS_PLAY_HLS_PORT=H.default.hlsList[a].port||""}else H.default.MS_PLAY_HLS_IP=H.default.RS_RECORD_PLAY_IP,H.default.MS_PLAY_HLS_PORT=H.default.RS_RECORD_PLAY_PORT;if(Q.log("初始->MSHls->.",H.default.MS_PLAY_HLS_IP,H.default.MS_PLAY_HLS_PORT),H.default.classType==j.default.CLASS_TYPE_2&&H.default.videoCDNAddrList.length>0)for(var o=H.default.videoCDNAddrList.length,s=0;s<o;s++){var u=H.default.videoCDNAddrList[s];u&&(u.indexOf("hls")>=0?(H.default.MS_PLAY_HLS_IP=u,H.default.MS_PLAY_HLS_PORT="",Q.log("videoCDNAddr>初始->MSHls",H.default.MS_PLAY_HLS_IP)):u.indexOf("rtmppull")>=0&&(H.default.MS_PLAY_RTMP_IP=u,H.default.MS_PLAY_RTMP_PORT="",Q.log("videoCDNAddr->初始->MSPull",H.default.MS_PLAY_RTMP_IP)))}else Q.log("不需要videoCDNAddr->");if(e.docList&&e.docList.length>0){var l=parseInt(Math.random()*e.docList.length);Q.log("docServer->",e.docList[l]),H.default.DOCServerIP=e.docList[l].ip||"",H.default.DOCServerPort=e.docList[l].port||"",Q.log("初始->DOC->.",H.default.DOCServerIP,H.default.DOCServerPort)}if(e.recordList&&e.recordList.length>0){var f=parseInt(Math.random()*e.recordList.length);H.default.RecordServerIP=e.recordList[f].ip||"",H.default.RecordServerPort=e.recordList[f].port||"",Q.log("初始->RECORD->.",H.default.RecordServerIP,H.default.RecordServerPort)}}if(this._emit(C.default.CLASS_GET_INFO_SUCCESS,H.default.getClassInfo()),e.currentInfo){Q.log("本地同步最后一次保存过的课堂状态信息");try{H.default.setClassStatusInfo(JSON.parse(e.currentInfo))}catch(t){H.default.setClassStatusInfo(e.currentInfo)}Q.log(H.default.classStatusInfo)}else Q.log("还没有保存过课堂状信息");H.default.isRecordPlayBack?ae?(Q.log("开启录制回放流程"),ae.readyRecordPlay()):Q.warn("开启录制回放流程失败->还未创建模块"):this.getUserIpInfo()}},{key:"getUserIpInfo",value:function(){$&&$.getUserIpInfo("",H.default.userIp,this._getUserIpCallbackHandler.bind(this),1e3)}},{key:"_getUserIpCallbackHandler",value:function(e){if(!this.isGetUserIpCallback){this.isGetUserIpCallback=!0,e&&"ok"==e.ret&&(H.default.country=e.country,H.default.city=e.city,H.default.province=e.province,H.default.isp=e.isp),this._mergeMcuAndMsList();var t=this;H.default.siteId_letv==H.default.siteId?(Q.log("MS不需要选点->siteId->",H.default.siteId),t.isGetFastestMcuCallback=!0,t._startConnectMCU()):this._getFastestMsServer(function(e){Q.log("MS选点结束->",e),e&&e.ip&&(H.default.MS_PUBLISH_IP=e.ip||"",H.default.MS_PUBLISH_PORT=e.port||""),Q.log("当前使用的MS->",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT),t.isGetFastestMcuCallback=!0,t._startConnectMCU()}),this._getFastestMcuServer(function(e){Q.log("MCU选点结束->",e),e&&e.ip&&(H.default.MCUServerIP=e.ip||"",H.default.MCUServerPort=e.port||""),Q.log("当前使用的MCU->",H.default.MCUServerIP,H.default.MCUServerPort),t.isGetFastestMsCallback=!0,t._startConnectMCU()})}}},{key:"_startConnectMCU",value:function(){this.isGetFastestMcuCallback&&this.isGetFastestMsCallback&&this._joinMCU()}},{key:"_mergeMcuAndMsList",value:function(){$&&(H.default.mcuListFromServer=$.getServerMcuList(H.default.country,H.default.province,H.default.city,H.default.isp,Y.default.serverList),H.default.msListFromServer=$.getServerMsList(H.default.country,H.default.province,H.default.city,H.default.isp,Y.default.serverList)),H.default.mcuListAll.length=0,H.default.mcuListAll=H.default.mcuListAll.concat(H.default.mcuList,H.default.mcuListFromServer),H.default.msListAll.length=0,H.default.msListAll=H.default.msListAll.concat(H.default.msList,H.default.msListFromServer)}},{key:"_getFastestMcuServer",value:function(e){$?$.getFastestMcuServer(H.default.mcuListAll,e):e&&e({ip:""})}},{key:"_getFastestMsServer",value:function(e){$?$.getFastestMsServer(H.default.msListAll,e):e&&e({ip:""})}},{key:"_sassSaveClassStatusInfo",value:function(e){var t=!1;e&&1==e.isForce&&(t=!0),H.default.isHost||t?H.default.getCurrentStatus().code==H.default.statusCode_2.code?z.saveClassStatusInfo({classStatusInfo:H.default.classStatusInfo}):Q.error("不能保存课堂数据",H.default.getCurrentStatus()):Q.log("没有保存课堂状态信息的权限->身份",H.default.userRole)}},{key:"_sassSaveClassStatusInfoSuccessHandler",value:function(e){Q.log("保存课堂状态信息成功."),Q.log(e)}},{key:"_sassSaveClassRecordInfoSuccessHandler",value:function(e){Q.log("保存课堂录制信息成功."),Q.log(e)}},{key:"_joinMCU",value:function(){Q.log("加入课堂->."),Z&&Z.joinMCU(H.default.getClassInfo())}},{key:"_switchMcuIp",value:function(){Q.log("切换MCU IP->."),Z&&Z.switchMCUIp(H.default.getClassInfo())}},{key:"_mcuJoinMCUClassSuccessHandler",value:function(e){H.default.setCurrentStatus(H.default.statusCode_2),H.default.classJoinSuccess=!0,H.default.screenWidth=window.screen.availWidth,H.default.screenHeight=window.screen.availHeight;var t={};t.isRecordPlayBack=H.default.isRecordPlayBack,t.DOCServerIP=H.default.DOCServerIP,t.DOCServerPort=H.default.DOCServerPort,t.classStatus=H.default.classStatus,t.classId=H.default.classId,t.className=H.default.className,t.h5Module=H.default.h5Module,t.isHost=H.default.isHost,t.maxAudioChannels=H.default.maxAudioChannels,t.maxVideoChannels=H.default.maxVideoChannels,t.maxMediaChannels=H.default.maxMediaChannels,t.mcuDelay=H.default.mcuDelay,t.msType=H.default.msType,t.nodeId=H.default.nodeId,t.password=H.default.password,t.passwordRequired=H.default.passwordRequired,t.role=H.default.role,t.siteId=H.default.siteId,t.topNodeID=H.default.topNodeID,t.userId=H.default.userId,t.userName=H.default.userName,t.userRole=H.default.userRole,t.userType=H.default.userType,t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.passwordRequired=H.default.passwordRequired,t.classType=H.default.classType||j.default.CLASS_TYPE_1,t.country=H.default.country,t.city=H.default.city,t.province=H.default.province,t.isp=H.default.isp,t.classTimestamp=H.default.classTimestamp,t.recordTimestamp=H.default.recordTimestamp,t.recordPlaybackMaxTime=H.default.recordPlaybackMaxTime,t.fps=H.default.fps,t.gop=H.default.gop,t.videoQuality=H.default.videoQuality,t.ssTunnelAppURL=H.default.ssTunnelAppURL,Q.log("加入课堂成功->"),Q.log(t),this._emit(C.default.CLASS_JOIN_SUCCESS,t)}},{key:"_switchMcuIpHandler",value:function(e){if(H.default.isRecordPlayBack)return void Q.log("录制回放->不进行MCU动态选点");Q.log("MCU->动态选点");var t=this;this._getFastestMcuServer(function(n){Q.log("MCU选点结束->",n);var r=H.default.MCUServerIP;if(n&&n.ip)H.default.MCUServerIP=n.ip||"",H.default.MCUServerPort=n.port||"";else if(H.default.mcuList&&H.default.mcuList.length>0){var i=parseInt(Math.random()*H.default.mcuList.length);H.default.MCUServerIP=H.default.mcuList[i].ip||"",H.default.MCUServerPort=H.default.mcuList[i].port||""}r&&r!=H.default.MCUServerIP?(Q.log("MCU->最新地址->",H.default.MCUServerIP,H.default.MCUServerPort),e&&1==e.reConnect?(Q.log("MCU->切换到最新的IP->",H.default.MCUServerIP,H.default.MCUServerPort),t._startConnectMCU()):t._switchMcuIp()):Q.log("MCU不需要切换->之前的IP->",r,"新的IP->",H.default.MCUServerIP)})}},{key:"_stopAllMediaPublishHandler",value:function(e){Q.log("课堂状态发生改变,需要停止当前的所有推流"),this._emit(C.default.MEDIA_STOP_PUBLISH)}},{key:"_switchMsIpHandler",value:function(e){if(H.default.isRecordPlayBack)return void Q.log("录制回放->不进行MS动态选点");Q.log("MS->动态选点");this._getFastestMsServer(function(e){Q.log("MS选点结束->",e);var t=H.default.MCUServerIP;if(e&&e.ip)H.default.MS_PUBLISH_IP=e.ip||"",H.default.MS_PUBLISH_PORT=e.port||"";else if(H.default.msList&&H.default.msList.length>0){var n=parseInt(Math.random()*H.default.msList.length);H.default.MS_PUBLISH_IP=H.default.msList[n].ip||"",H.default.MS_PUBLISH_PORT=H.default.msList[n].port||""}t&&t!=H.default.MS_PUBLISH_IP?Q.log("MS->最新地址->",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT):Q.log("MS不需要切换->IP",H.default.MS_PUBLISH_IP)})}},{key:"_sassDeleteDocument",value:function(e){return Z.connected?null==e||x.default.isEmptyObject(e)?(Q.error("删除文档失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_DOC_DELETE_FAILED_PARAM)):null==e.itemIdx||isNaN(e.itemIdx)||null==e.docId||""==e.docId?(Q.error("删除文档失败->",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_DOC_DELETE_FAILED_PARAM)):(Q.log("删除文档->",e),void(z&&z.sassDeleteDocument(e))):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocBroadcastMsg",value:function(e){return Z.connected?void(re&&re.sendDocBroadcastMsg(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sassDeleteDocumentSuccess",value:function(e){Q.log("删除文档成功->",e),this._sendDocumentDelete(e)}},{key:"_sendStartClass",value:function(e){return Z.connected?void(X&&X.startClass(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendPauseClass",value:function(e){return Z.connected?void(X&&X.pauseClass(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_updateDeviceInfo",value:function(e){return Z.connected?(H.default.classJoinSuccess||Q.warn("更新设备信息->失败->还没有加入课堂成功",H.default.getCurrentStatus()),void(X&&X.updateDeviceInfo(e))):(Q.warn("更新设备信息->失败",H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_controlHandUpStatus",value:function(e){return Z.connected?void(X&&X.controlHandUpStatus(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_changeHandUpStatus",value:function(e){return Z.connected?void(X&&X.changeHandUpStatus(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_sendCloseClass",value:function(e){return Z.connected?void(X&&X.closeClass(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_leaveClass",value:function(e){if(!Z.connected)return Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""};te&&(te.stopPublishVideo(),te.stopPublishScreenShare()),ne&&ne.stopPublishAudio(),X&&(X.stopRecord(),X.leaveClass());var t={};e&&e.type?t=e:t.type=0,Q.warn("离开课堂->",C.default.CLASS_EXIT,t),this._emit(C.default.CLASS_EXIT,t),Z&&(Z.leaveMCU(),H.default.setCurrentStatus(H.default.statusCode_3))}},{key:"_sendChatMsg",value:function(e){return Z.connected?null===e||x.default.isEmptyObject(e)?(Q.log("发送聊天消息失败->参数错误",e),{code:j.default.RETURN_FAILED,data:""}):void(ee&&ee.sendChatMsg(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"userDeviecStatusChange",value:function(e){X&&X.updaterUserDeviecStatusChange(e)}},{key:"_publishScreenShare",value:function(e){te&&te.publishScreenShare(e)}},{key:"_stopPublishScreenShare",value:function(e){te&&te.stopPublishScreenShare(e)}},{key:"videoUpdate",value:function(e){X&&X.updaterRosterStatus(e)}},{key:"_sendVideoBroadcastMsg",value:function(e){return Z.connected?te?te.sendVideoBroadcastMsg(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_getVideoPlayPath",value:function(e){if(te)return te.getPlayVideoPath(e)}},{key:"_getVideoPublishPath",value:function(e){if(te)return te.getPublishVideoPath(e)}},{key:"_getVideoAllChannelInfo",value:function(e){if(te)return te.getAllChannelInfo(e)}},{key:"_publishVideo",value:function(e){return Z.connected?te?te.publishVideo(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_stopPublishVideo",value:function(e){return Z.connected?te?te.stopPublishVideo(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"audioUpdate",value:function(e){X&&X.updaterRosterStatus(e)}},{key:"sendAudioCommandMsg",value:function(e){return Z.connected?ne?ne.sendAudioBroadcastMsg(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_getPlayAudioPath",value:function(e){if(ne)return ne.getAudioPlayPath(e)}},{key:"_getPublishAudioPath",value:function(e){if(ne)return ne.getAudioPublishPath(e)}},{key:"_getAudioAllChannelInfo",value:function(e){if(ne)return ne.getAllChannelInfo(e)}},{key:"_publishAudio",value:function(e){return Z.connected?ne?ne.publishAudio(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_stopPublishAudio",value:function(e){return Z.connected?ne?ne.stopPublishAudio(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_sendInsertAnnotaion",value:function(e){return Z.connected?void(ie&&ie.sendInsetAnnotaion(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDeleteCurPageAnnotation",value:function(e){return Z.connected?void(ie&&ie.sendDeleteCurPageAnnotation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDeleteAllAnnotation",value:function(e){return Z.connected?void(ie&&ie.sendDeleteAllAnnotation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendGotoPrev",value:function(e){ie&&ie.sendGotoPrev(e)}},{key:"_getDocFullAddress",value:function(e){return re?re.getDocFullAddress(e):(Q.error("文档模块还没有创建无法获取"),{code:j.default.RETURN_FAILED,data:"文档模块还没有创建无法获取"})}},{key:"_getDocImageFullPath",value:function(e){return re?re.getDocImageFullPath(e):(Q.error("文档模块还没有创建无法获取"),[])}},{key:"_getDocPDFFullPath",value:function(e){return re?re.getDocPDFFullPath(e):(Q.error("文档模块还没有创建,无法获取"),[])}},{key:"_sendDocumentUpload",value:function(e){return Z.connected?void(re&&re.documentUpload(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchDoc",value:function(e){return Z.connected?void(re&&re.documentSwitchDoc(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchPage",value:function(e){return Z.connected?void(re&&re.documentSwitchPage(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchAnimation",value:function(e){return Z.connected?void(re&&re.documentSwitchAnimation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentCommand",value:function(e){return Z.connected?void(re&&re.documentCommand(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentDelete",value:function(e){return Z.connected?void(re&&re.documentDelete(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_documentDeleteAll",value:function(e){return Z.connected?void(re&&re.documentDeleteAll(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"docUpdateHandler",value:function(e){return Z.connected||H.default.isRecordPlayBack?void(ie&&ie.docUpdateHandler(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"docDeleteHandler",value:function(e){ie&&ie.docDeleteHandler(e)}},{key:"docJoinChannelSuccess",value:function(){if(Q.log("docJoinChannelSuccess->isHost=",H.default.isHost,"length=",H.default.docListPrepare.length),H.default.isHost&&H.default.docListPrepare.length>0)for(var e=0;e<H.default.docListPrepare.length;e++){var t=H.default.docListPrepare[e];if(t){var n={pageNum:t.pdfSize,fileName:t.name,fileType:t.type,relativeUrl:t.relativeLocation,url:t.absoluteLocation,creatUserId:t.createUserID,docId:t.id,md5:t.MD5,visible:!1};this._sendDocumentUpload(n)}}}},{key:"_initRecordPlayback",value:function(e){return null==e?(Q.error("录制回放初始化失败->参数错误"),void this._emit(C.default.MCU_ERROR,C.default.ERR_INIT_RECORD_PLAY_BACK_FAILED)):null==e.classId||isNaN(e.classId)||null==e.portal||""==e.portal?(Q.error("录制回放初始化失败->",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_INIT_RECORD_PLAY_BACK_FAILED)):(Q.log("录制回放初始化->",e),H.default.isRecordPlayBack=!0,H.default.classId=parseInt(e.classId),H.default.portal=e.portal,H.default.userRole=j.default.normal,H.default.userId=e.userId||"0",H.default.userName=e.userName||"",void(z&&z.getClassParam()))}},{key:"_startRecordPlayback",value:function(e){ae&&ae.startRecordPlayback(e)}},{key:"_stopRecordPlayback",value:function(e){ae&&ae.stopRecordPlayback(e)}},{key:"_pauseRecordPlayback",value:function(e){ae&&ae.pauseRecordPlayback(e)}},{key:"_seekRecordPlayback",value:function(e){ae&&ae.seekRecordPlayback(e)}},{key:"_recordPlaybackClearDataHandler",value:function(e){Q.log("录制回放状态更新->"),re&&re.clearData(),ie&&ie.clearData(),te&&te.clearData()}},{key:"_joinRecordPlaybackSuccessHandler",value:function(e){Q.log("加入录制回放成功."),H.default.setCurrentStatus(H.default.statusCode_2);var t={};t.isRecordPlayBack=H.default.isRecordPlayBack,t.DOCServerIP=H.default.DOCServerIP,t.DOCServerPort=H.default.DOCServerPort,t.classStatus=H.default.classStatus,t.classId=H.default.classId,t.className=H.default.className,t.h5Module=H.default.h5Module,t.isHost=H.default.isHost,t.maxAudioChannels=H.default.maxAudioChannels,t.maxVideoChannels=H.default.maxVideoChannels,t.maxMediaChannels=H.default.maxMediaChannels,t.mcuDelay=H.default.mcuDelay,t.msType=H.default.msType,t.nodeId=H.default.nodeId,t.password=H.default.password,t.passwordRequired=H.default.passwordRequired,t.role=H.default.role,t.siteId=H.default.siteId,t.topNodeID=H.default.topNodeID,t.userId=H.default.userId,t.userName=H.default.userName,t.userRole=H.default.userRole,t.userType=H.default.userType,t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.passwordRequired=H.default.passwordRequired,t.classType=H.default.classType||j.default.CLASS_TYPE_1,t.country=H.default.country,t.city=H.default.city,t.province=H.default.province,t.isp=H.default.isp,t.classTimestamp=H.default.classTimestamp,t.recordTimestamp=H.default.recordTimestamp,t.recordPlaybackMaxTime=H.default.recordPlaybackMaxTime,t.fps=H.default.fps,t.gop=H.default.gop,t.videoQuality=H.default.videoQuality,t.ssTunnelAppURL=H.default.ssTunnelAppURL,Q.log(t),this._emit(C.default.CLASS_JOIN_SUCCESS,t)}}]),t}(l.default),se=oe;t.default=se;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(Q,"loger","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(K,"_sdkInfo","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(z,"_sass","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register($,"_ipManager","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(Z,"_mcu","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(X,"_confer_ape","D:/work/McuClient/src/EngineEntrance.js"),
+}break;default:e(Error("invalid compression method"))}return i=a<<6|0,s[u++]=i|31-(256*r+i)%31,o=E(this.input),this.A.b=u,s=this.A.j(),u=s.length,v&&(s=new Uint8Array(s.buffer),s.length<=u+4&&(this.a=new Uint8Array(s.length+4),this.a.set(s),s=this.a),s=s.subarray(0,u+4)),s[u++]=o>>24&255,s[u++]=o>>16&255,s[u++]=o>>8&255,s[u++]=255&o,s},t("Zlib.Inflate",g),t("Zlib.Inflate.prototype.decompress",g.prototype.p),R("Zlib.Inflate.BufferType",{ADAPTIVE:B.D,BLOCK:B.F}),t("Zlib.Deflate",y),t("Zlib.Deflate.compress",function(e,t){return new y(e,t).j()}),t("Zlib.Deflate.prototype.compress",y.prototype.j),R("Zlib.Deflate.CompressionType",{NONE:ie.NONE,FIXED:ie.r,DYNAMIC:ie.k})}).call(this)},function(e,t){},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),l=r(u),f=n(36),d=r(f),c=n(34),h=r(c),_=n(19),p=r(_),E=n(18),g=r(E),y=n(22),R=r(y),m=n(3),C=r(m),T=n(1),v=r(T),S=n(21),I=r(S),A=n(38),b=r(A),P=n(41),w=r(P),D=n(37),O=r(D),N=n(39),U=r(N),L=n(42),k=r(L),M=n(4),x=r(M),B=n(5),H=r(B),F=n(2),j=r(F),G=n(13),V=(r(G),n(10)),q=(r(V),n(43)),Y=r(q),J=n(15),W=(r(J),n(14));r(W);n(49).polyfill(),n(54),n(51),n(30);var Q=v.default.getLoger("McuClient"),K={version:"v1.28.0.201705031",author:"www.3mang.com"},z=void 0,$=void 0,Z=void 0,X=void 0,ee=void 0,te=void 0,ne=void 0,re=void 0,ie=void 0,ae=void 0,oe=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.sdkInfo=K,Q.log(e.sdkInfo),e.isGetUserIpCallback=!1,e.isGetFastestMcuCallback=!1,e.isGetFastestMsCallback=!1,H.default.setCurrentStatus(H.default.statusCode_0),e.on(C.default.MCU_ERROR,e._mcuErrorHandler.bind(e)),z=d.default,z.on("*",function(t,n){return e._emit(t,n)}),z.on(z.SUCCESS,e._sassJoinSuccessHandler.bind(e)),z.on(z.CLASS_INIT_SUCCESS,e._sassInitSuccessHandler.bind(e)),z.on(z.CLASS_GET_CLASS_PARAM,e._sassGetClassParamSuccessHandler.bind(e)),z.on(z.CLASS_SAVE_STATUS_INFO_SUCCESS,e._sassSaveClassStatusInfoSuccessHandler.bind(e)),z.on(z.CLASS_SAVE_RECORD_INFO_SUCCESS,e._sassSaveClassRecordInfoSuccessHandler.bind(e)),z.on(z.DELETE_DOCUMENT_SUCCESS,e._sassDeleteDocumentSuccess.bind(e)),$=new h.default,Z=R.default,Z.on("*",function(t,n){return e._emit(t,n)}),Z.on(C.default.CLASS_JOIN_MCU_SUCCESS,e._mcuJoinMCUClassSuccessHandler.bind(e)),Z.on(C.default.SWITCH_MCU_IP,e._switchMcuIpHandler.bind(e)),ae=p.default,ae.on("*",function(t,n){return e._emit(t,n)}),ae.on(p.default.CLASS_JOIN_RECORD_PLAYBACK_SUCCESS,e._joinRecordPlaybackSuccessHandler.bind(e)),ae.on(p.default.RECORD_PLAYBACK_CLEAR_DATA,e._recordPlaybackClearDataHandler.bind(e)),X=new I.default,X.on("*",function(t,n){return e._emit(t,n)}),X.on(C.default.CLASS_RUN_EXIT,e._runClassExit.bind(e)),X.on(C.default.CLASS_STATUS_INFO_CHANGE,e._onClassStatusInfoChange.bind(e)),X.on(C.default.CLASS_DELETE_ROSTER,e._onClassDeleteRoster.bind(e)),X.on(C.default.CLASS_NONENTITY_ROSTER,e._onClassNonentityRoster.bind(e)),X.on(C.default.CLASS_RECORD_START,e._onClassRecordStart.bind(e)),X.on(C.default.CLASS_RECORD_SUCCESS,e._onClassRecordSuccess.bind(e)),X.on(C.default.SWITCH_MS_IP,e._switchMsIpHandler.bind(e)),X.on(C.default.STOP_ALL_MEDIA_PUBLISH,e._stopAllMediaPublishHandler.bind(e)),ee=new b.default,ee.on("*",function(t,n){return e._emit(t,n)}),te=new w.default,te.on("*",function(t,n){return e._emit(t,n)}),te.on(C.default.VIDEO_UPDATE,e.videoUpdate.bind(e)),te.on(C.default.USER_DEVICE_STATUS_CHAANGE,e.userDeviecStatusChange.bind(e)),ne=new O.default,ne.on("*",function(t,n){return e._emit(t,n)}),ne.on(C.default.AUDIO_UPDATE,e.audioUpdate.bind(e)),ne.on(C.default.USER_DEVICE_STATUS_CHAANGE,e.userDeviecStatusChange.bind(e)),ie=new k.default,ie.on("*",function(t,n){return e._emit(t,n)}),re=new U.default,re.on("*",function(t,n){return e._emit(t,n)}),re.on(C.default.DOC_UPDATE,e.docUpdateHandler.bind(e)),re.on(C.default.DOC_DELETE,e.docDeleteHandler.bind(e)),re.on(U.default.DOC_JOIN_CHANNEL_SUCCESS,e.docJoinChannelSuccess.bind(e)),e.init=e._init.bind(e),e.joinClass=e._joinClass.bind(e),e.leaveClass=e._leaveClass.bind(e),e.getMcuClientStatus=e._getMcuClientStatus.bind(e),e.getClassStatusInfo=e._getClassStatusInfo.bind(e),e.sendStartClass=e._sendStartClass.bind(e),e.sendPauseClass=e._sendPauseClass.bind(e),e.sendCloseClass=e._sendCloseClass.bind(e),e.changeHandUpStatus=e._changeHandUpStatus.bind(e),e.controlHandUpStatus=e._controlHandUpStatus.bind(e),e.initRecordPlayback=e._initRecordPlayback.bind(e),e.startRecordPlayback=e._startRecordPlayback.bind(e),e.stopRecordPlayback=e._stopRecordPlayback.bind(e),e.pauseRecordPlayback=e._pauseRecordPlayback.bind(e),e.seekRecordPlayback=e._seekRecordPlayback.bind(e),e.sendChatMsg=e._sendChatMsg.bind(e),e.publishScreenShare=e._publishScreenShare.bind(e),e.stopPublishScreenShare=e._stopPublishScreenShare.bind(e),e.getVideoPublishPath=e._getVideoPublishPath.bind(e),e.getVideoAllChannelInfo=e._getVideoAllChannelInfo.bind(e),e.publishVideo=e._publishVideo.bind(e),e.stopPublishVideo=e.unPublishVideo=e._stopPublishVideo.bind(e),e.sendVideoBroadcastMsg=e._sendVideoBroadcastMsg.bind(e),e.getAudioPublishPath=e._getPublishAudioPath.bind(e),e.getAudioAllChannelInfo=e._getAudioAllChannelInfo.bind(e),e.publishAudio=e._publishAudio.bind(e),e.stopPublishAudio=e.unPublishAudio=e._stopPublishAudio.bind(e),e.sendAudioBroadcastMsg=e.sendAudioCommandMsg.bind(e),e.sendInsertAnnotaion=e._sendInsertAnnotaion.bind(e),e.sendDeleteAllAnnotation=e._sendDeleteAllAnnotation.bind(e),e.sendDeleteCurPageAnnotation=e._sendDeleteCurPageAnnotation.bind(e),e.sendGotoPrev=e._sendGotoPrev.bind(e),e.sendDocumentUpload=e._sendDocumentUpload.bind(e),e.sendDocumentSwitchDoc=e._sendDocumentSwitchDoc.bind(e),e.sendDocumentSwitchPage=e._sendDocumentSwitchPage.bind(e),e.sendDocumentSwitchAnimation=e._sendDocumentSwitchAnimation.bind(e),e.sendDocumentDelete=e._sassDeleteDocument.bind(e),e.sendDocBroadcastMsg=e._sendDocBroadcastMsg.bind(e),e.sendDocumentCommand=e._sendDocumentCommand.bind(e),e.getDocImageFullPath=e._getDocImageFullPath.bind(e),e.getDocPDFFullPath=e._getDocPDFFullPath.bind(e),e.getDocFullAddress=e._getDocFullAddress.bind(e),e.setDeviceInfo=e._setDeviceInfo.bind(e),e.setMessageDelay=e._setMessageDelay.bind(e),e.switchServer=e._switchMcuIpHandler.bind(e),e.switchMediaServer=e._switchMsIpHandler.bind(e),e.setDebugInfo=e._setDebugInfo.bind(e),e}return o(t,e),s(t,[{key:"_setDebugInfo",value:function(e){Q.log("设置debug信息-->",e),e&&v.default.setLogDebug(e.isDebug)}},{key:"_setDeviceInfo",value:function(e){Q.log("设置设备信息-->",e),e&&(H.default.cameras=e.cameras||[],H.default.microphones=e.microphones||[],H.default.videoQuality=parseInt(e.videoQuality),H.default.curVideoQuality=parseInt(e.curVideoQuality),H.default.micGain=e.micGain||50,H.default.speakerVolume=e.speakerVolume||50,H.default.micCode=e.micCode||0,H.default.curCamera=e.curCamera||"",H.default.curMicrophone=e.curMicrophone||"",!H.default.curCamera&&H.default.cameras.length>0&&(H.default.curCamera=H.default.cameras[0]),!H.default.curMicrophone&&H.default.microphones.length>0&&(H.default.curMicrophone=H.default.microphones[0]),this._updateDeviceInfo())}},{key:"_setMessageDelay",value:function(e){Q.warn("延迟消息-->",e),e&&(H.default.messageDelay=Boolean(e.messageDelay))}},{key:"_mcuErrorHandler",value:function(e,t){var n=t||"",r={code:e,reson:C.default.ErrorReson[e]+" "+n};this._emit(C.default.ERROR_EVENT,r),Q.error("MCU_ERROR",r)}},{key:"_getMcuClientStatus",value:function(){return H.default.getCurrentStatus()}},{key:"_getClassDetail",value:function(){return H.default.getClassDetail()}},{key:"_getClassStatusInfo",value:function(){return H.default.classStatusInfo}},{key:"_runClassExit",value:function(e){this._leaveClass(e)}},{key:"_onClassStatusInfoChange",value:function(e){return H.default.getCurrentStatus().code!=H.default.statusCode_2.code?void Q.warn("不能保存课堂状态",H.default.getCurrentStatus()):void this._sassSaveClassStatusInfo(e)}},{key:"_onClassRecordStart",value:function(e){return H.default.getCurrentStatus().code!=H.default.statusCode_2.code?void Q.warn("不能保存课堂状态",H.default.getCurrentStatus()):void(z&&z.saveClassRecordContrlInfo(e))}},{key:"_onClassRecordSuccess",value:function(e){re&&re.updaterRecordStatus(),ie&&ie.updaterRecordStatus()}},{key:"_onClassDeleteRoster",value:function(e){}},{key:"_onClassNonentityRoster",value:function(e){if(H.default.isRecordPlayBack)return void Q.warn("录制回放中,不处理");if(null==e||null==e.nodeId)return void Q.warn("onClassNonentityRoster.参数错误");var t={nodeId:e.nodeId};te&&(te.stopPublishVideo(t),H.default.nodeId==t.nodeId&&te.stopPublishScreenShare(t)),ne&&ne.stopPublishAudio(t)}},{key:"_init",value:function(e){return null==e||x.default.isEmptyObject(e)?(Q.error("初始化课堂失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_INIT_PARAM)):null==e.classId||isNaN(e.classId)||null==e.portal||""==e.portal?(Q.error("初始化课堂失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_INIT_PARAM)):(Q.log("初始化课堂->",e),H.default.isRecordPlayBack=!1,H.default.classId=parseInt(e.classId),H.default.portal=e.portal,H.default.userId=e.userId||"0",H.default.userName=e.userName||"",H.default.userRole=e.userRole||j.default.normal,H.default.userRole!=j.default.host&&H.default.userRole!=j.default.presenter&&H.default.userRole!=j.default.assistant&&H.default.userRole!=j.default.record&&H.default.userRole!=j.default.invisible&&(H.default.userRole=j.default.normal),H.default.messageDelay=e.messageDelay||!1,e.allowRecordMaxTime&&(H.default.allowRecordMaxTime=parseInt(e.allowRecordMaxTime)),void(z&&z.getJoinParams(H.default.getClassInfo())))}},{key:"_joinClass",value:function(e){if(null==e||x.default.isEmptyObject(e))return this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_JOIN_PARAM),void Q.log("加入课堂失败->参数错误.",e);if(null==e.userName||""==e.userName)return Q.log("加入课堂失败->参数错误->名字不能为空"),void this._emit(C.default.MCU_ERROR,C.default.ERR_CLASS_JOIN_PARAM);H.default.userName=e.userName||H.default.userName,H.default.autoLogin=e.autoLogin||"",H.default.password=e.password||"",H.default.hasCamera="boolean"==typeof e.hasCamera&&e.hasCamera,H.default.hasMicrophone="boolean"==typeof e.hasMicrophone&&e.hasMicrophone;var t=(0,g.default)(""+H.default.classId+H.default.userId+H.default.userRole);H.default.autoLogin&&t==H.default.autoLogin?(Q.log("自动登录"),this._sassJoinSuccessHandler()):z&&z.passwordAndMd5Checking(H.default.getClassInfo())}},{key:"_sassInitSuccessHandler",value:function(e){H.default.md5=e.md5||"",H.default.msType=e.msType||1,H.default.siteId=e.siteId||"",H.default.classType=e.meetingType||j.default.CLASS_TYPE_1,H.default.passwordRequired=e.passwordRequired||!1,Q.log("初始化课堂验证完成."),H.default.setCurrentStatus(H.default.statusCode_1);var t={};t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.userName=H.default.userName,t.classType=H.default.classType,H.default.userRole==j.default.host?t.passwordRequired=!0:t.passwordRequired=H.default.passwordRequired,this._emit(C.default.CLASS_INIT_SUCCESS,t)}},{key:"_sassJoinSuccessHandler",value:function(e){z&&z.getClassParam()}},{key:"_sassGetClassParamSuccessHandler",value:function(e){if(Q.log("获取课堂课堂信息完成."),e){if(H.default.mcuDelay=e.h5Delay||0,H.default.className=e.meetingName||"",H.default.classBeginTime=e.beginTime||"",H.default.classEndTime=e.endTime||"",H.default.userIp=e.userIp||"",H.default.maxVideoChannels=e.maxVideoChannels,H.default.maxAudioChannels=e.maxAudioChannels,H.default.maxMediaChannels=Math.max(H.default.maxVideoChannels,H.default.maxAudioChannels),H.default.ssTunnelAppURL=e.ssTunnelAppURL||"",H.default.fps=e.fps||15,H.default.gop=e.gop||3,H.default.videoQuality=parseInt(e.videoQuality),H.default.isAutoStartClass=e.autoRecord||0,H.default.setDocListPrepare(e.docListPrepare),H.default.setRecordList(e.recordList),H.default.setDocList(e.docList),H.default.setMsList(e.msList),H.default.setRsList(e.rsList),H.default.setMcuList(e.mcuList),H.default.setMusicList(e.musicList),H.default.setMusicListPrepare(e.musicListPrepare),H.default.setVideoCDNAddr(e.videoCDNAddr),e.mcuList&&e.mcuList.length>0){var t=parseInt(Math.random()*e.mcuList.length);H.default.MCUServerIP=e.mcuList[t].ip||"",H.default.MCUServerPort=e.mcuList[t].port||"",Q.log("初始->MCU->.",H.default.MCUServerIP,H.default.MCUServerPort)}if(e.rsList&&e.rsList.length>0){var n=parseInt(Math.random()*e.rsList.length);H.default.RS_RECORD_PLAY_IP=e.rsList[n].ip||"",H.default.RS_RECORD_PLAY_PORT=e.rsList[n].port||"",Q.log("初始->RS->.",H.default.RS_RECORD_PLAY_IP,H.default.RS_RECORD_PLAY_PORT)}if(H.default.msList&&H.default.msList.length>0){var r=parseInt(Math.random()*H.default.msList.length);H.default.MS_PUBLISH_IP=H.default.msList[r].ip||"",H.default.MS_PUBLISH_PORT=H.default.msList[r].port||""}if(Q.log("初始->MS->.",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT),H.default.pullRtmpList&&H.default.pullRtmpList.length>0){var i=parseInt(Math.random()*H.default.pullRtmpList.length);H.default.MS_PLAY_RTMP_IP=H.default.pullRtmpList[i].ip||"",H.default.MS_PLAY_RTMP_PORT=H.default.pullRtmpList[i].port||""}else H.default.MS_PLAY_RTMP_IP=H.default.MS_PUBLISH_IP,H.default.MS_PLAY_RTMP_PORT=H.default.MS_PUBLISH_PORT;if(Q.log("初始->MSPull->.",H.default.MS_PLAY_RTMP_IP,H.default.MS_PLAY_RTMP_PORT),H.default.hlsList&&H.default.hlsList.length>0){var a=parseInt(Math.random()*H.default.hlsList.length);H.default.MS_PLAY_HLS_IP=H.default.hlsList[a].ip||"",H.default.MS_PLAY_HLS_PORT=H.default.hlsList[a].port||""}else H.default.MS_PLAY_HLS_IP=H.default.RS_RECORD_PLAY_IP,H.default.MS_PLAY_HLS_PORT=H.default.RS_RECORD_PLAY_PORT;if(Q.log("初始->MSHls->.",H.default.MS_PLAY_HLS_IP,H.default.MS_PLAY_HLS_PORT),H.default.videoCDNAddrList.length>0)for(var o=H.default.videoCDNAddrList.length,s=0;s<o;s++){var u=H.default.videoCDNAddrList[s];u&&(u.indexOf("hls")>=0?(H.default.MS_PLAY_HLS_IP=u,H.default.MS_PLAY_HLS_PORT="",Q.log("videoCDNAddr>初始->MSHls",H.default.MS_PLAY_HLS_IP)):u.indexOf("rtmppull")>=0&&(H.default.MS_PLAY_RTMP_IP=u,H.default.MS_PLAY_RTMP_PORT="",Q.log("videoCDNAddr->初始->MSPull",H.default.MS_PLAY_RTMP_IP)))}else Q.log("不需要videoCDNAddr->");if(e.docList&&e.docList.length>0){var l=parseInt(Math.random()*e.docList.length);Q.log("docServer->",e.docList[l]),H.default.DOCServerIP=e.docList[l].ip||"",H.default.DOCServerPort=e.docList[l].port||"",Q.log("初始->DOC->.",H.default.DOCServerIP,H.default.DOCServerPort)}if(e.recordList&&e.recordList.length>0){var f=parseInt(Math.random()*e.recordList.length);H.default.RecordServerIP=e.recordList[f].ip||"",H.default.RecordServerPort=e.recordList[f].port||"",Q.log("初始->RECORD->.",H.default.RecordServerIP,H.default.RecordServerPort)}}if(this._emit(C.default.CLASS_GET_INFO_SUCCESS,H.default.getClassInfo()),e.currentInfo){Q.log("本地同步最后一次保存过的课堂状态信息");try{H.default.setClassStatusInfo(JSON.parse(e.currentInfo))}catch(t){H.default.setClassStatusInfo(e.currentInfo)}Q.log(H.default.classStatusInfo)}else Q.log("还没有保存过课堂状信息");H.default.isRecordPlayBack?ae?(Q.log("开启录制回放流程"),ae.readyRecordPlay()):Q.warn("开启录制回放流程失败->还未创建模块"):this.getUserIpInfo()}},{key:"getUserIpInfo",value:function(){$&&$.getUserIpInfo("",H.default.userIp,this._getUserIpCallbackHandler.bind(this),1e3)}},{key:"_getUserIpCallbackHandler",value:function(e){if(!this.isGetUserIpCallback){this.isGetUserIpCallback=!0,e&&"ok"==e.ret&&(H.default.country=e.country,H.default.city=e.city,H.default.province=e.province,H.default.isp=e.isp),this._mergeMcuAndMsList();var t=this;H.default.siteId_letv==H.default.siteId?(Q.log("MS不需要选点->siteId->",H.default.siteId),t.isGetFastestMcuCallback=!0,t._startConnectMCU()):this._getFastestMsServer(function(e){Q.log("MS选点结束->",e),e&&e.ip&&(H.default.MS_PUBLISH_IP=e.ip||"",H.default.MS_PUBLISH_PORT=e.port||""),Q.log("当前使用的MS->",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT),t.isGetFastestMcuCallback=!0,t._startConnectMCU()}),this._getFastestMcuServer(function(e){Q.log("MCU选点结束->",e),e&&e.ip&&(H.default.MCUServerIP=e.ip||"",H.default.MCUServerPort=e.port||""),Q.log("当前使用的MCU->",H.default.MCUServerIP,H.default.MCUServerPort),t.isGetFastestMsCallback=!0,t._startConnectMCU()})}}},{key:"_startConnectMCU",value:function(){this.isGetFastestMcuCallback&&this.isGetFastestMsCallback&&this._joinMCU()}},{key:"_mergeMcuAndMsList",value:function(){$&&(H.default.mcuListFromServer=$.getServerMcuList(H.default.country,H.default.province,H.default.city,H.default.isp,Y.default.serverList),H.default.msListFromServer=$.getServerMsList(H.default.country,H.default.province,H.default.city,H.default.isp,Y.default.serverList)),H.default.mcuListAll.length=0,H.default.mcuListAll=H.default.mcuListAll.concat(H.default.mcuList,H.default.mcuListFromServer),H.default.msListAll.length=0,H.default.msListAll=H.default.msListAll.concat(H.default.msList,H.default.msListFromServer)}},{key:"_getFastestMcuServer",value:function(e){$?$.getFastestMcuServer(H.default.mcuListAll,e):e&&e({ip:""})}},{key:"_getFastestMsServer",value:function(e){$?$.getFastestMsServer(H.default.msListAll,e):e&&e({ip:""})}},{key:"_sassSaveClassStatusInfo",value:function(e){var t=!1;e&&1==e.isForce&&(t=!0),H.default.isHost||t?H.default.getCurrentStatus().code==H.default.statusCode_2.code?z.saveClassStatusInfo({classStatusInfo:H.default.classStatusInfo}):Q.error("不能保存课堂数据",H.default.getCurrentStatus()):Q.log("没有保存课堂状态信息的权限->身份",H.default.userRole)}},{key:"_sassSaveClassStatusInfoSuccessHandler",value:function(e){Q.log("保存课堂状态信息成功."),Q.log(e)}},{key:"_sassSaveClassRecordInfoSuccessHandler",value:function(e){Q.log("保存课堂录制信息成功."),Q.log(e)}},{key:"_joinMCU",value:function(){Q.log("加入课堂->."),Z&&Z.joinMCU(H.default.getClassInfo())}},{key:"_switchMcuIp",value:function(){Q.log("切换MCU IP->."),Z&&Z.switchMCUIp(H.default.getClassInfo())}},{key:"_mcuJoinMCUClassSuccessHandler",value:function(e){H.default.setCurrentStatus(H.default.statusCode_2),H.default.classJoinSuccess=!0,H.default.screenWidth=window.screen.availWidth,H.default.screenHeight=window.screen.availHeight;var t={};t.isRecordPlayBack=H.default.isRecordPlayBack,t.DOCServerIP=H.default.DOCServerIP,t.DOCServerPort=H.default.DOCServerPort,t.classStatus=H.default.classStatus,t.classId=H.default.classId,t.className=H.default.className,t.h5Module=H.default.h5Module,t.isHost=H.default.isHost,t.maxAudioChannels=H.default.maxAudioChannels,t.maxVideoChannels=H.default.maxVideoChannels,t.maxMediaChannels=H.default.maxMediaChannels,t.mcuDelay=H.default.mcuDelay,t.msType=H.default.msType,t.nodeId=H.default.nodeId,t.password=H.default.password,t.passwordRequired=H.default.passwordRequired,t.role=H.default.role,t.siteId=H.default.siteId,t.topNodeID=H.default.topNodeID,t.userId=H.default.userId,t.userName=H.default.userName,t.userRole=H.default.userRole,t.userType=H.default.userType,t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.passwordRequired=H.default.passwordRequired,t.classType=H.default.classType||j.default.CLASS_TYPE_1,t.country=H.default.country,t.city=H.default.city,t.province=H.default.province,t.isp=H.default.isp,t.classTimestamp=H.default.classTimestamp,t.recordTimestamp=H.default.recordTimestamp,t.recordPlaybackMaxTime=H.default.recordPlaybackMaxTime,t.fps=H.default.fps,t.gop=H.default.gop,t.videoQuality=H.default.videoQuality,t.ssTunnelAppURL=H.default.ssTunnelAppURL,Q.log("加入课堂成功->"),Q.log(t),this._emit(C.default.CLASS_JOIN_SUCCESS,t)}},{key:"_switchMcuIpHandler",value:function(e){if(H.default.isRecordPlayBack)return void Q.log("录制回放->不进行MCU动态选点");Q.log("MCU->动态选点");var t=this;this._getFastestMcuServer(function(n){Q.log("MCU选点结束->",n);var r=H.default.MCUServerIP;if(n&&n.ip)H.default.MCUServerIP=n.ip||"",H.default.MCUServerPort=n.port||"";else if(H.default.mcuList&&H.default.mcuList.length>0){var i=parseInt(Math.random()*H.default.mcuList.length);H.default.MCUServerIP=H.default.mcuList[i].ip||"",H.default.MCUServerPort=H.default.mcuList[i].port||""}r&&r!=H.default.MCUServerIP?(Q.log("MCU->最新地址->",H.default.MCUServerIP,H.default.MCUServerPort),e&&1==e.reConnect?(Q.log("MCU->切换到最新的IP->",H.default.MCUServerIP,H.default.MCUServerPort),t._startConnectMCU()):t._switchMcuIp()):Q.log("MCU不需要切换->之前的IP->",r,"新的IP->",H.default.MCUServerIP)})}},{key:"_stopAllMediaPublishHandler",value:function(e){Q.log("课堂状态发生改变,需要停止当前的所有推流"),this._emit(C.default.MEDIA_STOP_PUBLISH)}},{key:"_switchMsIpHandler",value:function(e){if(H.default.isRecordPlayBack)return void Q.log("录制回放->不进行MS动态选点");Q.log("MS->动态选点");this._getFastestMsServer(function(e){Q.log("MS选点结束->",e);var t=H.default.MCUServerIP;if(e&&e.ip)H.default.MS_PUBLISH_IP=e.ip||"",H.default.MS_PUBLISH_PORT=e.port||"";else if(H.default.msList&&H.default.msList.length>0){var n=parseInt(Math.random()*H.default.msList.length);H.default.MS_PUBLISH_IP=H.default.msList[n].ip||"",H.default.MS_PUBLISH_PORT=H.default.msList[n].port||""}t&&t!=H.default.MS_PUBLISH_IP?Q.log("MS->最新地址->",H.default.MS_PUBLISH_IP,H.default.MS_PUBLISH_PORT):Q.log("MS不需要切换->IP",H.default.MS_PUBLISH_IP)})}},{key:"_sassDeleteDocument",value:function(e){return Z.connected?null==e||x.default.isEmptyObject(e)?(Q.error("删除文档失败->参数错误",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_DOC_DELETE_FAILED_PARAM)):null==e.itemIdx||isNaN(e.itemIdx)||null==e.docId||""==e.docId?(Q.error("删除文档失败->",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_DOC_DELETE_FAILED_PARAM)):(Q.log("删除文档->",e),void(z&&z.sassDeleteDocument(e))):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocBroadcastMsg",value:function(e){return Z.connected?void(re&&re.sendDocBroadcastMsg(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sassDeleteDocumentSuccess",value:function(e){Q.log("删除文档成功->",e),this._sendDocumentDelete(e)}},{key:"_sendStartClass",value:function(e){return Z.connected?void(X&&X.startClass(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendPauseClass",value:function(e){return Z.connected?void(X&&X.pauseClass(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_updateDeviceInfo",value:function(e){return Z.connected?(H.default.classJoinSuccess||Q.warn("更新设备信息->失败->还没有加入课堂成功",H.default.getCurrentStatus()),void(X&&X.updateDeviceInfo(e))):(Q.warn("更新设备信息->失败",H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_controlHandUpStatus",value:function(e){return Z.connected?void(X&&X.controlHandUpStatus(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_changeHandUpStatus",value:function(e){return Z.connected?void(X&&X.changeHandUpStatus(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_sendCloseClass",value:function(e){return Z.connected?void(X&&X.closeClass(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_leaveClass",value:function(e){if(!Z.connected)return Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""};te&&(te.stopPublishVideo(),te.stopPublishScreenShare()),ne&&ne.stopPublishAudio(),X&&(X.stopRecord(),X.leaveClass());var t={};e&&e.type?t=e:t.type=0,Q.warn("离开课堂->",C.default.CLASS_EXIT,t),this._emit(C.default.CLASS_EXIT,t),Z&&(Z.leaveMCU(),H.default.setCurrentStatus(H.default.statusCode_3))}},{key:"_sendChatMsg",value:function(e){return Z.connected?null===e||x.default.isEmptyObject(e)?(Q.log("发送聊天消息失败->参数错误",e),{code:j.default.RETURN_FAILED,data:""}):void(ee&&ee.sendChatMsg(e)):(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"userDeviecStatusChange",value:function(e){X&&X.updaterUserDeviecStatusChange(e)}},{key:"_publishScreenShare",value:function(e){te&&te.publishScreenShare(e)}},{key:"_stopPublishScreenShare",value:function(e){te&&te.stopPublishScreenShare(e)}},{key:"videoUpdate",value:function(e){X&&X.updaterRosterStatus(e)}},{key:"_sendVideoBroadcastMsg",value:function(e){return Z.connected?te?te.sendVideoBroadcastMsg(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_getVideoPlayPath",value:function(e){if(te)return te.getPlayVideoPath(e)}},{key:"_getVideoPublishPath",value:function(e){if(te)return te.getPublishVideoPath(e)}},{key:"_getVideoAllChannelInfo",value:function(e){if(te)return te.getAllChannelInfo(e)}},{key:"_publishVideo",value:function(e){return Z.connected?te?te.publishVideo(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_stopPublishVideo",value:function(e){return Z.connected?te?te.stopPublishVideo(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"audioUpdate",value:function(e){X&&X.updaterRosterStatus(e)}},{key:"sendAudioCommandMsg",value:function(e){return Z.connected?ne?ne.sendAudioBroadcastMsg(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_getPlayAudioPath",value:function(e){if(ne)return ne.getAudioPlayPath(e)}},{key:"_getPublishAudioPath",value:function(e){if(ne)return ne.getAudioPublishPath(e)}},{key:"_getAudioAllChannelInfo",value:function(e){if(ne)return ne.getAllChannelInfo(e)}},{key:"_publishAudio",value:function(e){return Z.connected?ne?ne.publishAudio(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_stopPublishAudio",value:function(e){return Z.connected?ne?ne.stopPublishAudio(e):void 0:(Q.warn(H.default.getCurrentStatus()),{code:j.default.RETURN_FAILED,data:""})}},{key:"_sendInsertAnnotaion",value:function(e){return Z.connected?void(ie&&ie.sendInsetAnnotaion(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDeleteCurPageAnnotation",value:function(e){return Z.connected?void(ie&&ie.sendDeleteCurPageAnnotation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDeleteAllAnnotation",value:function(e){return Z.connected?void(ie&&ie.sendDeleteAllAnnotation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendGotoPrev",value:function(e){ie&&ie.sendGotoPrev(e)}},{key:"_getDocFullAddress",value:function(e){return re?re.getDocFullAddress(e):(Q.error("文档模块还没有创建无法获取"),{code:j.default.RETURN_FAILED,data:"文档模块还没有创建无法获取"})}},{key:"_getDocImageFullPath",value:function(e){return re?re.getDocImageFullPath(e):(Q.error("文档模块还没有创建无法获取"),[])}},{key:"_getDocPDFFullPath",value:function(e){return re?re.getDocPDFFullPath(e):(Q.error("文档模块还没有创建,无法获取"),[])}},{key:"_sendDocumentUpload",value:function(e){return Z.connected?void(re&&re.documentUpload(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchDoc",value:function(e){return Z.connected?void(re&&re.documentSwitchDoc(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchPage",value:function(e){return Z.connected?void(re&&re.documentSwitchPage(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentSwitchAnimation",value:function(e){return Z.connected?void(re&&re.documentSwitchAnimation(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentCommand",value:function(e){return Z.connected?void(re&&re.documentCommand(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_sendDocumentDelete",value:function(e){return Z.connected?void(re&&re.documentDelete(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"_documentDeleteAll",value:function(e){return Z.connected?void(re&&re.documentDeleteAll(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"docUpdateHandler",value:function(e){return Z.connected||H.default.isRecordPlayBack?void(ie&&ie.docUpdateHandler(e)):void Q.warn(H.default.getCurrentStatus())}},{key:"docDeleteHandler",value:function(e){ie&&ie.docDeleteHandler(e)}},{key:"docJoinChannelSuccess",value:function(){if(Q.log("docJoinChannelSuccess->isHost=",H.default.isHost,"length=",H.default.docListPrepare.length),H.default.isHost&&H.default.docListPrepare.length>0)for(var e=0;e<H.default.docListPrepare.length;e++){var t=H.default.docListPrepare[e];if(t){var n={pageNum:t.pdfSize,fileName:t.name,fileType:t.type,relativeUrl:t.relativeLocation,url:t.absoluteLocation,creatUserId:t.createUserID,docId:t.id,md5:t.MD5,visible:!1};this._sendDocumentUpload(n)}}}},{key:"_initRecordPlayback",value:function(e){return null==e?(Q.error("录制回放初始化失败->参数错误"),void this._emit(C.default.MCU_ERROR,C.default.ERR_INIT_RECORD_PLAY_BACK_FAILED)):null==e.classId||isNaN(e.classId)||null==e.portal||""==e.portal?(Q.error("录制回放初始化失败->",e),void this._emit(C.default.MCU_ERROR,C.default.ERR_INIT_RECORD_PLAY_BACK_FAILED)):(Q.log("录制回放初始化->",e),H.default.isRecordPlayBack=!0,H.default.classId=parseInt(e.classId),H.default.portal=e.portal,H.default.userRole=j.default.normal,H.default.userId=e.userId||"0",H.default.userName=e.userName||"",void(z&&z.getClassParam()))}},{key:"_startRecordPlayback",value:function(e){ae&&ae.startRecordPlayback(e)}},{key:"_stopRecordPlayback",value:function(e){ae&&ae.stopRecordPlayback(e)}},{key:"_pauseRecordPlayback",value:function(e){ae&&ae.pauseRecordPlayback(e)}},{key:"_seekRecordPlayback",value:function(e){ae&&ae.seekRecordPlayback(e)}},{key:"_recordPlaybackClearDataHandler",value:function(e){Q.log("录制回放状态更新->"),re&&re.clearData(),ie&&ie.clearData(),te&&te.clearData()}},{key:"_joinRecordPlaybackSuccessHandler",value:function(e){Q.log("加入录制回放成功."),H.default.setCurrentStatus(H.default.statusCode_2);var t={};t.isRecordPlayBack=H.default.isRecordPlayBack,t.DOCServerIP=H.default.DOCServerIP,t.DOCServerPort=H.default.DOCServerPort,t.classStatus=H.default.classStatus,t.classId=H.default.classId,t.className=H.default.className,t.h5Module=H.default.h5Module,t.isHost=H.default.isHost,t.maxAudioChannels=H.default.maxAudioChannels,t.maxVideoChannels=H.default.maxVideoChannels,t.maxMediaChannels=H.default.maxMediaChannels,t.mcuDelay=H.default.mcuDelay,t.msType=H.default.msType,t.nodeId=H.default.nodeId,t.password=H.default.password,t.passwordRequired=H.default.passwordRequired,t.role=H.default.role,t.siteId=H.default.siteId,t.topNodeID=H.default.topNodeID,t.userId=H.default.userId,t.userName=H.default.userName,t.userRole=H.default.userRole,t.userType=H.default.userType,t.siteId=H.default.siteId,t.classId=H.default.classId,t.userRole=H.default.userRole,t.userId=H.default.userId,t.passwordRequired=H.default.passwordRequired,t.classType=H.default.classType||j.default.CLASS_TYPE_1,t.country=H.default.country,t.city=H.default.city,t.province=H.default.province,t.isp=H.default.isp,t.classTimestamp=H.default.classTimestamp,t.recordTimestamp=H.default.recordTimestamp,t.recordPlaybackMaxTime=H.default.recordPlaybackMaxTime,t.fps=H.default.fps,t.gop=H.default.gop,t.videoQuality=H.default.videoQuality,t.ssTunnelAppURL=H.default.ssTunnelAppURL,Q.log(t),this._emit(C.default.CLASS_JOIN_SUCCESS,t)}}]),t}(l.default),se=oe;t.default=se;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(Q,"loger","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(K,"_sdkInfo","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(z,"_sass","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register($,"_ipManager","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(Z,"_mcu","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(X,"_confer_ape","D:/work/McuClient/src/EngineEntrance.js"),
 __REACT_HOT_LOADER__.register(ee,"_chat_ape","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(te,"_video_ape","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(ne,"_audio_ape","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(re,"_doc_ape","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(ie,"_whiteboard_ape","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(ae,"_recordPlayback","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(oe,"MessageEntrance","D:/work/McuClient/src/EngineEntrance.js"),__REACT_HOT_LOADER__.register(se,"default","D:/work/McuClient/src/EngineEntrance.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),l=r(u),f=n(1),d=r(f),c=n(18),h=r(c),_=n(28),p=r(_),E=n(27),g=r(E),y=d.default.getLoger("IpManager"),R=2e3,m="1935",C="7777",T="5555",v=function(e){function t(){return i(this,t),a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this))}return o(t,e),s(t,[{key:"getUserIpInfo",value:function(e,t,n,r){var i={ret:-1},a=(0,h.default)("addr="+t+"&token=b657c3507b324353e09c1958ee956a98efceb3e3"),o=(new Date).getTime(),s="http://ipapi.ipip.net/find?addr="+t+"&sid=14&uid=5237&sig="+a+"&_="+o;y.log("获取IP信息->",s);(0,g.default)(s,{timeout:r||R}).then(function(e){return e.json()}).then(function(e){e&&(i.ret=e.ret,i.country=e.data[0],i.province=e.data[1],i.city=e.data[2],i.isp=e.data[4]),y.warn("获取IP信息->完成->",i),n&&n(i)}).catch(function(e){y.warn("获取IP信息->失败->",e.message),n&&n(i)})}},{key:"getFastestMcuServer",value:function(e,t,n){y.log("开始MCU选点-> ",e);var r={ip:""};if(null==e||e.length<1)return void(t&&t(r));for(var i=new Object,a=e.length,o=0;o<a;o++){var s=e[o];s&&s.ip&&(i[s.ip+":"+T]=s.ip+":"+T)}var u=new Array;for(var l in i)u.push(l);if(y.log("MCU选点->列表",u),null==u||u.length<1)return void(t&&t(r));try{(0,p.default)(u,function(n){if(n){y.log("MCU选点->done -> ",n);var i=n.replace(":"+T,"")||"";r.ip=i,r.port="";for(var a=e.length,o=0;o<a;o++){var s=e[o];if(s&&s.ip&&i==s.ip){r.port=s.port||C;break}}t&&t(r)}else y.warn("MCU选点-> nothing!"),t&&t(r)},n||R)}catch(e){y.log("MCU选点->失败",e.message)}}},{key:"getFastestMsServer",value:function(e,t,n){y.log("开始MS选点->",e);var r={ip:""};if(null==e||e.length<1)return void(t&&t(r));for(var i=new Object,a=e.length,o=0;o<a;o++){var s=e[o];s&&s.ip&&(i[s.ip+":"+T]=s.ip+":"+T)}var u=new Array;for(var l in i)u.push(l);if(null==u||u.length<1)return void(t&&t(r));y.log("MS选点->列表",u);try{(0,p.default)(u,function(n){if(n){y.log("MS选点->done -> ",n);var i=n.replace(":"+T,"")||"";r.ip=i,r.port="";for(var a=e.length,o=0;o<a;o++){var s=e[o];if(s&&s.ip&&i==s.ip){r.port=s.port||m;break}}t&&t(r)}else y.warn("MS选点-> nothing!"),t&&t(r)},n||R)}catch(e){y.warn("MS选点->ERROR -> ",e.message),t&&t(r)}}},{key:"getServerMcuList",value:function(e,t,n,r,i){var a=i.MCU[e];if(!a)return a=i.MCU.default||[];if("中国"!=e)return a;var o=a.isp[r];if(o)return o;var s=a.province[t];if(s)return s;var u=a.default;return u?u:[]}},{key:"getServerMsList",value:function(e,t,n,r,i){var a=i.MS[e];if(!a)return a=i.MS.default||[];if("中国"!=e)return a;var o=a.isp[r];if(o)return o;var s=a.province[t];if(s)return s;var u=a.default;return u?u:[]}}]),t}(l.default),S=v;t.default=S;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(y,"loger","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(R,"TIME_OUT","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(m,"MS_DEFAULT_PORT","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(C,"MCU_DEFAULT_PORT","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(T,"SPEED_TEST_PORT","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(v,"IpManager","D:/work/McuClient/src/IpManager.js"),__REACT_HOT_LOADER__.register(S,"default","D:/work/McuClient/src/IpManager.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(){return l}Object.defineProperty(t,"__esModule",{value:!0}),t.MessageTypes=void 0,t.createMcuClient=i;var a=n(33),o=r(a),s=n(3),u=r(s),l=new o.default;t.MessageTypes=u.default;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(l,"MCU_CLIENT","D:/work/McuClient/src/McuClientEngine.js"),__REACT_HOT_LOADER__.register(i,"createMcuClient","D:/work/McuClient/src/McuClientEngine.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),l=r(u),f=n(1),d=r(f),c=n(3),h=r(c),_=n(5),p=r(_),E=n(18),g=r(E),y=n(2),R=r(y),m=n(28),C=(r(m),n(27)),T=(r(C),d.default.getLoger("Sass")),v={},S=function(e){function t(){return i(this,t),a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this))}return o(t,e),s(t,[{key:"getJoinParams",value:function(e){var n=this,r="http://"+e.portal+"/3m/api/meeting/joinParams.do?meetingNumber="+e.classId+"&userID="+e.userId;T.log("1.初始化init获取课堂校验信息."),T.log(r),T.log(e),fetch(r,{timeout:5e3}).then(function(e){if(e.ok)return e.json();throw T.error("初始化init获取课堂校验信息-网络异常.状态码:"+e.status),n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_NETWORK),""}).then(function(e){0===e.code?(T.log("初始化init获取课堂校验信息-完成"),n._emit(t.CLASS_INIT_SUCCESS,e)):1===e.code?n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_FAILED_1):2===e.code?n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_FAILED_2):3===e.code?n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_FAILED_3):4===e.code?n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_FAILED_4):n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_FAILED,e)}).catch(function(e){T.error("初始化init获取课堂校验信息-异常.状态码:"+e),n._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_INIT_PROTOCOL,e)})}},{key:"passwordAndMd5Checking",value:function(e){return T.log("2.开始Sass校验"),T.log(e),v=e,"true"===v.passwordRequired||v.passwordRequired===!0?void this.sendPWDChecking():void this.sendMD5Checking()}},{key:"sendPWDChecking",value:function(){var e=this,t=0;v.userRole==R.default.host&&(t=1);var n="http://"+v.portal+"/3m/api/meeting/signIn.do?siteId="+v.siteId+"&classId="+v.classId+"&isTeacher="+t+"&password="+v.password;T.log("3.课堂密码校验",n),fetch(n,{timeout:5e3}).then(function(t){if(200===t.status)return t.text();throw T.error("课堂密码校验-网络异常.状态码:"+t.status),e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_JOIN_NETWORK),""}).then(function(t){var n=JSON.parse(t);return"false"===n.flag||n.flag===!1?(T.error("课堂密码校验-失败."),void e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_PASSWORD_WRONG)):"true"===n.flag||n.flag===!0?(T.log("课堂密码校验-成功."),void e.sendMD5Checking()):(T.error("课堂密码校验-协议异常.",n),void e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_JOIN_PROTOCOL))}).catch(function(t){T.error("课堂密码校验-异常.状态码:"+t),e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_JOIN_FAILED)})}},{key:"sendMD5Checking",value:function(){var e=this,n="http://"+v.portal+"/3m/meeting/md5CheckMeeting.do?siteId="+v.siteId+"&meetingNumber="+v.classId+"&userId="+v.userId+"&userName="+v.userName+"&userType="+v.userType+"&nopassword="+v.passwordRequired+"&md5="+v.md5;T.log("4.MD5校验",n),fetch(n,{timeout:5e3}).then(function(t){if(200===t.status)return t.json();throw T.error("MD5校验-网络异常.状态码:"+t.status),e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_JOIN_NETWORK),""}).then(function(n){"true"==n.flag||1==n.flag?(T.log("MD5校验完成"),T.log(n),e._emit(t.SUCCESS,n)):(T.log("MD5校验-失败."),e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_MD5_WRONG))}).catch(function(t){T.error("MD5校验-异常.状态码:"+t),e._emit(h.default.MCU_ERROR,h.default.ERR_CLASS_JOIN_FAILED)})}},{key:"getClassDetail",value:function(){var e=this,n="http://"+p.default.portal+"/3m/meeting/getClassH5.do?classNumber="+p.default.classId;T.log("获取Class详情.",n),fetch(n,{timeout:5e3}).then(function(t){if(t.ok)return t.json();throw T.error("获取Class详情-网络异常.状态码:"+t.status),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_DETAIL),""}).then(function(n){0===n.errorCode?(T.log("获取Class详情完成"),e._emit(t.CLASS_GET_CLASS_DETAIL,n)):(T.warn("获取Class详情失败."),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_DETAIL))}).catch(function(t){T.error("获取Class详情异常.状态码:"+t),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_DETAIL)})}},{key:"getClassParam",value:function(){var e=this,n=(new Date).getTime(),r=(0,g.default)(p.default.classId+""+n),i="http://"+p.default.portal+"/3m/api/meeting/detail.do?meetingNumber="+p.default.classId+"&timestamp="+n+"&authId="+r;T.log("5.获取课堂课堂的完整信息 "),T.log(i),fetch(i,{timeout:5e3}).then(function(t){if(t.ok)return t.json();throw T.error("获取课堂课堂的完整信息-网络异常.状态码:"+t.status),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_PARAML),""}).then(function(n){0===n.code?(T.log("获取课堂课堂的完整信息完成"),e._emit(t.CLASS_GET_CLASS_PARAM,n)):(T.warn("获取课堂课堂的完整信息 失败."),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_PARAML))}).catch(function(t){T.error("获取课堂课堂的完整信息异常.状态码:"+t),e._emit(h.default.MCU_ERROR,h.default.ERR_GET_CLASS_PARAML)})}},{key:"sassDeleteDocument",value:function(e){var n=this;if(p.default.isRecordPlayBack)return void T.log("录制回放中,能删除文档");var r=(new Date).getTime(),i=(0,g.default)(e.docId+""+e.classId+r),a="http://"+p.default.portal+"/3m/api/document/deleteRelation.do?docId="+e.docId+"&classId="+p.default.classId+"&timestamp="+r+"&authId="+i;T.log("sassDeleteDocument",a),fetch(a,{timeout:5e3}).then(function(e){if(e.ok)return e.json();throw T.error("sassDeleteDocument-网络异常.状态码:"+e.status),n._emit(h.default.MCU_ERROR,h.default.ERR_DOC_DELETE_FAILED),""}).then(function(r){0===r.code?(T.log("sassDeleteDocument 完成"),n._emit(t.DELETE_DOCUMENT_SUCCESS,e)):(T.warn("sassDeleteDocumnt 失败."),n._emit(h.default.MCU_ERROR,h.default.ERR_DOC_DELETE_FAILED))}).catch(function(e){T.error("sassDeleteDocument异常.状态码:"+e),n._emit(h.default.MCU_ERROR,h.default.ERR_DOC_DELETE_FAILED)})}},{key:"saveClassStatusInfo",value:function(e){var n=this;if(p.default.isRecordPlayBack)return void T.log("录制回放中,不需要保存课堂信息");var r=(new Date).getTime(),i=(0,g.default)(p.default.classId+""+r),a=JSON.stringify(e.classStatusInfo),o="http://"+p.default.portal+"/3m/api/meeting/saveInfo.do";T.log("saveClassStatusInfo",o),fetch(o,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"classId="+p.default.classId+"&info="+a+"&timestamp="+r+"&authId="+i,timeout:5e3}).then(function(e){if(e.ok)return e.json();throw T.error("saveClassStatusInfo-网络异常.状态码:"+e.status),""}).then(function(r){0===r.code?(T.log("saveClassStatusInfo 完成"),n._emit(t.CLASS_SAVE_STATUS_INFO_SUCCESS,e)):1===r.code?T.log("saveClassStatusInfo 失败 课堂号为空"):2===r.code?T.log("saveClassStatusInfo 失败 无效的课堂号"):3===r.code?T.log("saveClassStatusInfo 失败 验证信息错误"):T.warn("saveClassStatusInfo 失败.",r)}).catch(function(e){T.error("saveClassStatusInfo.状态码:"+e)})}},{key:"saveClassRecordContrlInfo",value:function(e){var n=this;if(p.default.isRecordPlayBack)return void T.log("录制回放中,不需要保存");T.log("保存开始录制信息");var r="3mang123A",i=p.default.siteId,a=p.default.classId,o=p.default.userId,s=p.default.userName,u=p.default.className,l=p.default.classBeginTime,f=p.default.classEndTime,d="",c=p.default.recordFileName,h=p.default.recordFileName,_="",E=(p.default.classStatus,p.default.classTimestamp),y=(new Date).getTime(),R=(0,g.default)(r+i+a+y),m="http://"+p.default.portal+"/3m/recordingMeeting/insertRecordingMeeting.do";T.log("saveClassRecordContrlInfo",m),fetch(encodeURI(m),{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"siteID="+i+"&meetingID="+a+"&userID="+o+"&userName="+s+"&meetingName="+u+"&startTime="+l+"&endTime="+f+"&playUrl="+d+"&streamName="+c+"&downloadUrl="+_+"&configFile="+h+"&timestamp="+y+"&recordTimestamp="+E+"&authId="+R,timeout:5e3}).then(function(e){if(e.ok)return e.json();throw T.error("保存开始录制信息-网络异常.状态码:"+e.status),""}).then(function(r){0===r.errorCode?(T.log("保存开始录制信息 完成"),n._emit(t.CLASS_SAVE_RECORD_INFO_SUCCESS,e)):T.warn("保存开始录制信息 失败.",r)}).catch(function(e){T.error("保存开始录制信息异常.状态码:"+e)})}}]),t}(l.default);S.prototype.SUCCESS=S.SUCCESS="Sass_success",S.prototype.CLASS_INIT_SUCCESS=S.CLASS_INIT_SUCCESS="sass_class_init_success",S.prototype.CLASS_GET_CLASS_PARAM=S.CLASS_GET_CLASS_PARAM="sass_class_getClassParam.message",S.prototype.CLASS_GET_CLASS_DETAIL=S.CLASS_GET_CLASS_DETAIL="sass_class_getClassDetail_message",S.prototype.DELETE_DOCUMENT_SUCCESS=S.DELETE_DOCUMENT_SUCCESS="sass_class_deleteDocumentSuccess_message",S.prototype.CLASS_SAVE_STATUS_INFO_SUCCESS=S.CLASS_SAVE_STATUS_INFO_SUCCESS="sass_class_saveClassStatusInfoSuccess_message",S.prototype.CLASS_SAVE_RECORD_INFO_SUCCESS=S.CLASS_SAVE_RECORD_INFO_SUCCESS="sass_class_saveClassRecordInfoSuccess_message";var I=new S;t.default=I;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(T,"loger","D:/work/McuClient/src/Sass.js"),__REACT_HOT_LOADER__.register(v,"confInfo","D:/work/McuClient/src/Sass.js"),__REACT_HOT_LOADER__.register(S,"Sass","D:/work/McuClient/src/Sass.js"),__REACT_HOT_LOADER__.register(I,"default","D:/work/McuClient/src/Sass.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),l=r(u),f=n(2),d=r(f),c=n(6),h=r(c),_=n(1),p=r(_),E=n(3),g=r(E),y=n(5),R=r(y),m=n(4),C=r(m),T=n(15),v=r(T),S=p.default.getLoger("AudioApe"),I=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,d.default.AUDIO_SESSION_ID,d.default.AUDIO_SESSION_NAME,d.default.AUDIO_SESSION_TAG));return e.releaseTimeId=0,e.mediaModule=new v.default,e.mediaModule.MEDIA_OBJ_TABLE_ID=d.default.AUDIO_OBJ_TABLE_ID,e.mediaModule.mediaChannels={},e.mediaModule.mediaType=d.default.MEDIA_TYPE_AUDIO,e.registerKey(e._session_id,e._session_name,e._session_tag,new ArrayBuffer),e.registerObj(h.default.RCPDU_REG_REGISTER_TABLE,d.default.AUDIO_OBJ_TABLE_ID,d.default.AUDIO_OBJ_TABLE_NAME,d.default.AUDIO_OBJ_TABLE_TAG,0,new ArrayBuffer),e.on(h.default.RCPDU_SEND_AUDIO_DATA_REQUEST,e.receiveAudiooCommandHandler.bind(e)),e}return o(t,e),s(t,[{key:"onJoinChannelHandlerSuccess",value:function(){this.mediaModule.maxMediaChannel=R.default.maxAudioChannels}},{key:"getAudioPlayPath",value:function(e){return S.log("获取播流地址->"),this.mediaModule.getMediaPlayPath(e)}},{key:"getAudioPublishPath",value:function(e){if(S.log("获取推流地址->"),!this.mcu.connected)return S.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};if(R.default.userRole==d.default.invisible){var t=this.mediaModule.getMediaPublishPathForInVisible(e);return this._emit(g.default.AUDIO_GET_PUBLISH_PATH,t),t}var n=0,r=v.default.allMediaChannelsList;for(var i in r){var a=r[i];a&&a.status==d.default.CHANNEL_STATUS_OPENING&&a.userRole!=d.default.invisible&&n++}if(n>=R.default.maxMediaChannels)return S.warn("不能再打开设备->当前开启的设备数量->",n),{code:d.default.RETURN_FAILED,data:"不能再打开设备,当前开启的设备数量"};var o=this.mediaModule.getMediaPublishPath(e);return this._emit(g.default.AUDIO_GET_PUBLISH_PATH,o),o}},{key:"getAllChannelInfo",value:function(e){return S.log("获取当前所有频道信息->"),this.mediaModule.getAllMediaChannelInfo()}},{key:"publishAudio",value:function(e){if(!this.mcu.connected)return S.warn(R.default.getCurrentStatus()),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"已经断开连接!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"已经断开连接",mediaId:0};if(null==e||null==e.publishUrl)return S.warn("推流->参数错误",e),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"参数错误!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"参数错误"};var t=this.mediaModule.getNeedPublishMediaChannel(e.publishUrl);if(null==t)return S.warn("推流->推流数据已经无效",e),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"推流数据已经无效!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"推流数据已经无效"};var n=this.mediaModule.getFreeMediaChannel();if(0==n)return S.warn("推流->不能再打开更多的设备"),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备",mediaId:0}),{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备",mediaChannels:this.mediaModule.mediaChannels};if(this.mediaModule.checkChannelIsOpening(t.channelId))return t.nodeId==R.default.nodeId?(S.warn(t.channelId,"已经推送过消息,不需要再次推送!"),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_SUCCESS,data:"已经推送过消息,不需要再次推送!",mediaId:t.channelId}),{code:d.default.RETURN_SUCCESS,data:"已经推送过消息,不需要再次推送!",mediaId:t.channelId}):(S.warn(t.channelId,"频道已经被占用"),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"频道已经被占用!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"频道已经被占用!"});var r=this.mediaModule.getDefaultChannelInfo();return r.owner=R.default.nodeId,r.status=d.default.CHANNEL_STATUS_OPENING,r.channelId=t.channelId,r.streamId=t.streamId,r.timestamp=t.timestamp,r.mediaType=d.default.MEDIA_TYPE_AUDIO,this.sendTableUpdateHandler(r),this._emit(g.default.AUDIO_PUBLISH_RESULT,{code:d.default.RETURN_SUCCESS,data:"推流成功!",mediaId:t.channelId}),{code:d.default.RETURN_SUCCESS,data:"推流成功!",mediaId:t.channelId}}},{key:"stopPublishAudio",value:function(e){if(S.log("停止推流 ->",e),!this.mcu.connected)return S.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};var t=R.default.nodeId;e&&parseInt(e.nodeId)>0&&(t=parseInt(e.nodeId));var n=0;e&&parseInt(e.mediaId)>0&&(n=parseInt(e.mediaId)),n>0?this._releaseChannelForNodeId(t,n):this._releaseNodeIdAllChannel(t)}},{key:"_releaseChannelForNodeId",value:function(e,t){S.log(e,"释放占用的频道-->",t);var n=this.mediaModule.mediaChannels[t];if(n&&n.status==d.default.CHANNEL_STATUS_OPENING)if(n.fromNodeId==e){var r=this.mediaModule.getDefaultChannelInfo();r.status=d.default.CHANNEL_STATUS_RELEASED,r.channelId=t,this.sendTableUpdateHandler(r)}else S.warn(t,"不属于nodeId",e,"不能释放",n);else S.warn(e,"要释放的频道不存在或者已经释放-->channelId",n)}},{key:"_releaseNodeIdAllChannel",value:function(e){if(S.log(e,"_releaseNodeIdAllChannel",this.mcu.connected),!this.mcu.connected)return clearTimeout(this.releaseTimeId),S.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};var t=this.mediaModule.getOpeningMediaChannel(e);if(0==t)return S.warn(e,"没有占用频道不需要处理"),{code:d.default.RETURN_FAILED,data:"没有占用channel不需要处理"};var n=this.mediaModule.getDefaultChannelInfo();n.status=d.default.CHANNEL_STATUS_RELEASED,n.channelId=t,this.sendTableUpdateHandler(n),this.releaseTimeId=setTimeout(function(){S.warn(e,"检查频道是否占用"),this._releaseNodeIdAllChannel(e)}.bind(this),800)}},{key:"sendAudioBroadcastMsg",value:function(e){if(!this.mcu.connected)return S.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};if(null===this._classInfo||C.default.isEmptyObject(this._classInfo))return S.log("音频模块广播->失败->还未初始化数据!"),0==R.default.getCurrentStatus().code||1==R.default.getCurrentStatus().code?(this._emit(g.default.MCU_ERROR,g.default.ERR_APE_SEND_FAILED_NO_JOIN),{code:d.default.RETURN_FAILED,data:"sendAudioBroadcastMsg.McuClient还未初始化数据"}):{code:d.default.RETURN_FAILED,data:"sendAudioBroadcastMsg.McuClient还未初始化数据"};if(null==e)return S.warn("音频模块广播->失败->,参数错误",e),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),{code:d.default.RETURN_FAILED,data:"sendAudioBroadcastMsg,参数错误"};if(S.log("音频模块广播->",e),null!=e.actionType&&e.actionType==d.default.MEDIA_ACTION_OPEN_CAMERA){var t=this.mediaModule.getFreeMediaChannel();if(0==t)return S.warn("不能再打开更多的设备",e),{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备",mediaChannels:this.mediaModule.mediaChannels}}var n=new h.default.RCAudioSendDataRequestPdu;n.type=h.default.RCPDU_SEND_AUDIO_DATA_REQUEST,n.isPublic=!0,n.fromNodeId=R.default.nodeId,n.toNodeId=parseInt(e.toNodeId)||0,n.actionType=parseInt(e.actionType)||d.default.MEDIA_ACTION_DEFAULT;var r="";try{r=JSON.stringify(e.data)}catch(t){S.warn("控制消息->JSON转换失败"),r=e.data}return n.data=this._rCArrayBufferUtil.strToUint8Array("h5"+r),n.isPublic||0==n.toNodeId?this.sendChatUniform(n):this.send(n),{code:d.default.RETURN_SUCCESS,data:""}}},{key:"sendTableUpdateHandler",value:function(e){var t=this.packPdu(e,e.channelId);if(null==t)return void S.warn("音频模块更新数据-> 失败->数据无效",e);var n=new h.default.RCRegistryTableItemPdu;n.itemIdx=e.channelId,n.owner=e.owner,n.itemData=t.toArrayBuffer();var r=new h.default.RCRegistryTableUpdateItemPdu;r.type=h.default.RCPDU_REG_TABLE_UPDATE_PDU,r.items.push(n);var i=new h.default.RCRegistryUpdateObjPdu;i.objId=d.default.AUDIO_OBJ_TABLE_ID,i.subType=r.type,i.userData=r.toArrayBuffer();var a=new h.default.RCAdapterItemPdu;a.type=h.default.RCPDU_REG_UPDATE_OBJ,a.itemData=i.toArrayBuffer();var o=new h.default.RCAdapterPdu;o.type=h.default.RCPDU_REG_ADAPTER,o.item.push(a),S.log("音频模块更新数据->itemIdx="+n.itemIdx),this.sendUniform(o,!0)}},{key:"receiveAudiooCommandHandler",value:function(e){var t=h.default.RCAudioSendDataRequestPdu.decode(e);if(null==t)return void S.warn("音频消息处理,收到的消息为null,不做处理");t.data=this._rCArrayBufferUtil.uint8ArrayToStr(t.data,2);var n={};try{n=JSON.parse(t.data)}catch(e){S.warn("控制消息->JSON转换失败"),n=t.data}t.data=n,0!=t.toNodeId&&t.toNodeId!=R.default.nodeId?S.log("音频消息不处理 toNodeId=",t.toNodeId,"my nodeId=",R.default.nodeId):(S.log("音频控制消息处理 .",t),this._emit(g.default.AUDIO_BROADCAST,t))}},{key:"tableUpdateHandler",value:function(e,t,n,r){var i=this.unPackPdu(e,t,n);if(S.log("tableUpdateHandler->channel",t,"status->",i.status,"seek->",r),0==e&&(S.log("释放占用的频道,channel",t),i.status=d.default.CHANNEL_STATUS_RELEASED,i.streamId=""),this.mediaModule.mediaChannels[t]=i,i&&i.fromNodeId!=R.default.nodeId){var a={};if(a.mediaId=i.channelId,a.fromNodeId=i.fromNodeId,a.userName=i.userName||"",a.userRole=i.userRole||d.default.normal,a.mediaType=i.mediaType||d.default.MEDIA_TYPE_DEFAULT,a.screenWidth=i.screenWidth||R.default.screenWidth,a.screenHeight=i.screenHeight||R.default.screenHeight,i.status==d.default.CHANNEL_STATUS_OPENING){a.m3u8Url="",a.rtmpUrl="",a.replay="",a.seek=r||0;var o=this.mediaModule.getMediaPlayPath({type:"m3u8",streamId:i.streamId}),s=this.mediaModule.getMediaPlayPath({type:"rtmp",streamId:i.streamId}),u=this.mediaModule.getMediaRecordPlaybackPath({type:"m3u8",streamId:i.streamId});0==o.code&&(a.m3u8Url=o.playUrl),0==s.code&&(a.rtmpUrl=s.playUrl),0==u.code&&(a.replay=u.playUrl),S.log("AUDIO_PLAY->",a),this._emit(g.default.AUDIO_PLAY,a)}else S.log("AUDIO_STOP->",a),this._emit(g.default.AUDIO_STOP,a)}else S.warn("消息是自己发送的或者是消息无效,不需要处理,消息内容如下:"),S.log(i),i.status==d.default.CHANNEL_STATUS_OPENING?(R.default.openMicrophones=C.default.creatTimestamp(),R.default.openCamera=0):(R.default.openCamera=0,R.default.openMicrophones=0),this._emit(g.default.USER_DEVICE_STATUS_CHAANGE,{nodeId:R.default.nodeId,userRole:R.default.userRole,userName:R.default.userName,userId:R.default.userId,openCamera:R.default.openCamera,openMicrophones:R.default.openMicrophones});v.default.allMediaChannelsList[t]=i,console.log("MediaModule.allMediaChannelsList",v.default.allMediaChannelsList),this._emit(g.default.AUDIO_UPDATE,i)}},{key:"packPdu",value:function(e,t){if(null==e||null==t)return S.warn("packPdu->失败"),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;var n=new h.default.RCAudioChannelInfoPdu;return n.status=e.status||d.default.CHANNEL_STATUS_RELEASED,n.channelId=t,n.streamId=e.streamId||"",n.siteId=e.siteId||R.default.siteId,n.classId=parseInt(e.classId)||parseInt(R.default.classId),n.userId=e.userId||"0",n.mediaType=e.mediaType||d.default.MEDIA_TYPE_AUDIO,n.timestamp=e.timestamp||C.default.creatTimestamp(),n.fromNodeId=R.default.nodeId,n.userName=R.default.userName||"",n.toNodeId=0,n.userRole=R.default.userRole||d.default.normal,n.screenWidth=e.screenWidth||R.default.screenWidth,n.screenHeight=e.screenHeight||R.default.screenHeight,S.log("packPdu->",n),n}},{key:"unPackPdu",value:function(e,t,n){if(null==e||null==t||null==n)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;try{var r=h.default.RCAudioChannelInfoPdu.decode(n);return S.log("unPackPdu->",r),r}catch(e){S.log("unPackPdu error->itemIdx="+t+"  err:"+e.message)}return null}}]),t}(l.default),A=I;t.default=A;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(S,"loger","D:/work/McuClient/src/apes/AudioApe.js"),__REACT_HOT_LOADER__.register(I,"AudioApe","D:/work/McuClient/src/apes/AudioApe.js"),__REACT_HOT_LOADER__.register(A,"default","D:/work/McuClient/src/apes/AudioApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),l=r(u),f=n(2),d=r(f),c=n(6),h=r(c),_=n(1),p=r(_),E=n(3),g=r(E),y=n(4),R=r(y),m=p.default.getLoger("ChatApe"),C=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,d.default.CHAT_SESSION_ID,d.default.CHAT_SESSION_NAME,d.default.CHAT_SESSION_TAG));return e.registerKey(e._session_id,e._session_name,e._session_tag,new ArrayBuffer),e.registerObj(h.default.RCPDU_REG_REGISTER_TABLE,d.default.CHAT_OBJ_TABLE_ID,d.default.CHAT_OBJ_TABLE_NAME,d.default.CHAT_OBJ_TABLE_TAG,0,new ArrayBuffer),e.on(h.default.RCPDU_SEND_CHAT_DATA_REQUEST,e.chatMsgIncomingHandler.bind(e)),e}return o(t,e),s(t,[{key:"sendChatMsg",value:function(e){if(null===this._classInfo||R.default.isEmptyObject(this._classInfo)){if(m.log("不能发送聊天消息.McuClient还未初始化数据!"),0==GlobalConfig.getCurrentStatus().code||1==GlobalConfig.getCurrentStatus().code)return void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_SEND_FAILED_NO_JOIN)}else{m.log("发送聊天消息.",e.to,e.message);var t=new h.default.RCChatSendDataRequestPdu;t.type=h.default.RCPDU_SEND_CHAT_DATA_REQUEST,t.initiator=this._classInfo.nodeId,t.peer=parseInt(e.to),t.userData=this._rCArrayBufferUtil.strToUint8Array("h5"+e.message),t.fromName=this._rCArrayBufferUtil.strToUint8Array("h5"+this._classInfo.userName),t.fromRole=this._classInfo.userRole,t.isPublic=!0,t.isPublic||0==t.peer?this.sendChatUniform(t):this.send(t)}}},{key:"chatMsgIncomingHandler",value:function(e){var t=h.default.RCChatSendDataRequestPdu.decode(e),n={};n.fromNodeId=t.initiator,n.toNodeId=t.peer,n.message=this._rCArrayBufferUtil.uint8ArrayToStr(t.userData,2),n.fromName=this._rCArrayBufferUtil.uint8ArrayToStr(t.fromName,2),n.fromRole=t.fromRole,m.log("接收聊天消息.",n),this._emit(g.default.CHAT_RECEIVE,n)}}]),t}(l.default),T=C;t.default=T;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(m,"loger","D:/work/McuClient/src/apes/ChatApe.js"),__REACT_HOT_LOADER__.register(C,"ChatApe","D:/work/McuClient/src/apes/ChatApe.js"),__REACT_HOT_LOADER__.register(T,"default","D:/work/McuClient/src/apes/ChatApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),l=r(u),f=n(2),d=r(f),c=n(6),h=r(c),_=n(1),p=r(_),E=n(3),g=r(E),y=n(5),R=r(y),m=n(4),C=r(m),T=p.default.getLoger("DocApe"),v=0,S=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,d.default.DOCSHARING_SESSION_ID,d.default.DOCSHARING_SESSION_NAME,d.default.DOCSHARING_SESSION_TAG));return e.docList={},e.registerKey(e._session_id,e._session_name,e._session_tag,new ArrayBuffer),e.registerObj(h.default.RCPDU_REG_REGISTER_TABLE,d.default.DOCSHARING_OBJ_TABLE_ID,d.default.DOCSHARING_OBJ_TABLE_NAME,d.default.DOCSHARING_OBJ_TABLE_TAG,0,new ArrayBuffer),e}return o(t,e),s(t,[{key:"documentUpload",value:function(e){if(null==e||C.default.isEmptyObject(e))return T.warn("上传文档->失败->参数错误->",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);if(this.checkDocId(e.docId))return void T.warn("上传文档->失败->文档档的docId无效或已经存在相同的docId不需要上传");v=C.default.creatSoleNumberFromTimestamp();var t=this.packPdu(e,v);if(null==t)return T.log("上传文档->失败->数据无效"),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);
 var n=new h.default.RCRegistryTableItemPdu;n.itemIdx=v,n.registerObjId=d.default.DOCSHARING_OBJ_TABLE_ID,n.owner=0,n.itemData=t.toArrayBuffer();var r=new h.default.RCRegistryTableInsertItemPdu;r.type=h.default.RCPDU_REG_TABLE_INSERT_PDU,r.items.push(n);var i=new h.default.RCRegistryUpdateObjPdu;i.objId=d.default.DOCSHARING_OBJ_TABLE_ID,i.subType=r.type,i.userData=r.toArrayBuffer();var a=new h.default.RCAdapterItemPdu;a.type=h.default.RCPDU_REG_UPDATE_OBJ,a.itemData=i.toArrayBuffer();var o=new h.default.RCAdapterPdu;o.type=h.default.RCPDU_REG_ADAPTER,o.item.push(a),T.log("上传文档->发送->itemIdx="+n.itemIdx),this.sendUniform(o,!0)}},{key:"updaterDoc",value:function(e,t){if(null==e||null==t)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;T.log("文档->updaterDoc ",e);var n=this.packPdu(e,t),r=new h.default.RCRegistryTableItemPdu;r.itemIdx=t,r.owner=0,r.itemData=n.toArrayBuffer();var i=new h.default.RCRegistryTableUpdateItemPdu;i.type=h.default.RCPDU_REG_TABLE_UPDATE_PDU,i.items.push(r);var a=new h.default.RCRegistryUpdateObjPdu;a.objId=d.default.DOCSHARING_OBJ_TABLE_ID,a.subType=i.type,a.userData=i.toArrayBuffer();var o=new h.default.RCAdapterItemPdu;o.type=h.default.RCPDU_REG_UPDATE_OBJ,o.itemData=a.toArrayBuffer();var s=new h.default.RCAdapterPdu;s.type=h.default.RCPDU_REG_ADAPTER,s.item.push(o),T.log("发送更新文档.itemIdx="+r.itemIdx),this.sendUniform(s,!0)}},{key:"getDocFullAddress",value:function(e){if(null==e||null==e.url||null==e.itemIdx)return T.warn("获取文档完整地址->传递的参数不正确->",e),{code:d.default.RETURN_FAILED,data:"获取文档时传递的参数不对"};var t="",n=1,r="",i="",a=this.docList[e.itemIdx];a?(t=a.url||"",n=a.pageNum||1,i=a.fileType||""):t=e.url,r=this._getDocType(t);var o=this._getDocPath(t),s=[],u="",l="";if("jpg"==r||"png"==r||"swf"==r||"pdf"==r||"doc"==r||"pptx"==r)for(var f=1;f<=n;f++)s.push(o+"/"+f+".jpg");return"swf"!=r&&"pdf"!=r&&"doc"!=r&&"pptx"!=r||(l=t.replace(/\.swf/g,".pdf")||""),"html"==r&&(u=t),{code:d.default.RETURN_SUCCESS,data:"",docFullAddress:{images:s,pdf:l,html:u}}}},{key:"_getDocType",value:function(e){return e?e.lastIndexOf(".jpg")>=0?"jpg":e.lastIndexOf(".png")>=0?"png":e.lastIndexOf(".swf")>=0?"swf":e.lastIndexOf(".pdf")>=0?"pdf":e.lastIndexOf(".doc")>=0?"doc":e.lastIndexOf(".html")>=0?"html":e.lastIndexOf(".pptx")>=0?"pptx":"":""}},{key:"_getDocPath",value:function(e){if(!e)return"";var t=e.lastIndexOf("/");return t>0?e.substr(0,t):e}},{key:"getDocImageFullPath",value:function(e){if(null==e||null==e.relativeUrl||""==e.relativeUrl)return T.warn("获取文档完整地址,传递的参数不对.",e),[];var t=""==R.default.DOCServerPort||null==R.default.DOCServerPort?"":":"+R.default.DOCServerPort,n=R.default.DOCServerIP+t+e.relativeUrl;n&&n.indexOf("http://")<0&&(n="http://"+n);var r="jpg";switch(e.type){case"jpg":r="jpg",n=this.replacePathType(n)+".jpg";break;case"png":r="png",n=this.replacePathType(n)+".png"}if(e.pageNum&&parseInt(e.pageNum)>1){var i=n.lastIndexOf("/");if(i>0){for(var a=n.substr(0,i),o=[],s=1;s<=e.pageNum;s++)o.push(a+"/"+s+"."+r);return o}return[n]}return[n]}},{key:"getDocPDFFullPath",value:function(e){if(null==e||null==e.relativeUrl||""==e.relativeUrl)return T.warn("获取文档完整地址,传递的参数不对.",e),[];var t=""==R.default.DOCServerPort||null==R.default.DOCServerPort?"":":"+R.default.DOCServerPort,n=R.default.DOCServerIP+t+e.relativeUrl;return n&&n.indexOf("http://")<0&&(n="http://"+n),n=this.replacePathType(n)+".pdf",[n]}},{key:"replacePathType",value:function(e){var t=e;return t=t.replace(/.jpg/g,""),t=t.replace(/.png/g,""),t=t.replace(/.swf/g,""),t=t.replace(/.pdf/g,"")}},{key:"_docPackFullInfo",value:function(e){var t=e,n=this.getDocFullAddress(e);return n.code==d.default.RETURN_SUCCESS?(t.images=n.docFullAddress.images||[],t.pdf=n.docFullAddress.pdf||"",t.html=n.docFullAddress.html||""):(t.images=[],t.pdf="",t.html=""),T.log("docPackFullInfo->",t),t}},{key:"updaterRecordStatus",value:function(e){R.default.isHost&&!R.default.isRecordPlayBack&&R.default.activeDocId>0&&(T.log("开启录制成功->更新当前的文档数据->docId:",R.default.activeDocId,"page:",R.default.activeDocCurPage),this.documentSwitchPage({itemIdx:R.default.activeDocId,curPageNo:R.default.activeDocCurPage}))}},{key:"clearData",value:function(){T.log("clearData->"),this.docList={},R.default.activeDocId=0,R.default.activeDocCurPage=1}},{key:"documentSwitchDoc",value:function(e){if(T.log("切换文档->",e),R.default.isRecordPlayBack)return void T.warn("录制回放状态不允许切换文档");if(null==e||null==e.itemIdx)return T.warn("切换文档失败,参数错误",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);if(e.itemIdx==R.default.activeDocId&&0!=R.default.activeDocId)return void T.warn("文档已经显示",e.itemIdx,R.default.activeDocId);var t=void 0;0!=R.default.activeDocId&&(t=this.docList[R.default.activeDocId],t&&(t.action=d.default.DOC_ACTION_NORMAL,t.visible=!1,t.animationStep=1));var n=this.docList[e.itemIdx];return null==n?(T.warn("切换文档失败,文档不存在",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)):(n.action=d.default.DOC_ACTION_SWITCH_DOC,n.visible=e.visible||!1,n.animationStep=1,T.log({oldDoc:t,nowDoc:n}),this.updaterDoc(n,n.itemIdx),void(t&&this.updaterDoc(t,t.itemIdx)))}},{key:"documentSwitchPage",value:function(e){T.log("文档翻页->",e);var t=this.docList[e.itemIdx];return null==t?(T.log("文档翻页->文档不存在",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)):(t.action=d.default.DOC_ACTION_SWITCH_PAGE,t.curPageNo=parseInt(e.curPageNo)||1,t.animationStep=1,t.curPageNo<1&&(t.curPageNo=1),void this.updaterDoc(t,t.itemIdx))}},{key:"documentSwitchAnimation",value:function(e){T.log("文档页面动画切换->",e);var t=this.docList[R.default.activeDocId];return null==t?(T.log("文档页面动画切换->文档不存在",R.default.activeDocId,e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)):(t.action=d.default.DOC_ACTION_SWITCH_ANIMATION,t.animationStep=t.animationStep||1,e&&e.step==-1?t.animationStep--:t.animationStep++,(!t.animationStep||t.animationStep<1)&&(t.animationStep=1),void this.updaterDoc(t,t.itemIdx))}},{key:"documentSwitchShowModel",value:function(e){T.log("文档切换显示模式",e);var t=this.docList[e.itemIdx];return null==t?(T.log("文档切换显示模式->文档不存在",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)):(t.action=d.default.DOC_ACTION_SWITCH_PAGE,t.curPageNo=parseInt(e.curPageNo)||1,t.curPageNo<1&&(t.curPageNo=1),void this.updaterDoc(t,t.itemIdx))}},{key:"documentCommand",value:function(e){var t=this.docList[e.itemIdx];return null==t?(T.log("documentCommand失败,文档不存在",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)):(t.action=d.default.DOC_ACTION_COMMAND,t.showType=parseInt(e.showType)||0,void this.updaterDoc(t,t.itemIdx))}},{key:"documentDeleteAll",value:function(e){for(var t in this.docList)T.log("删除文档数据->itemIdx:"+t),this.documentDelete({itemIdx:t})}},{key:"documentDelete",value:function(e){var t=new h.default.RCRegistryTableDeleteItemPdu;t.type=h.default.RCPDU_REG_TABLE_DELETE_PDU,t.itemIdx=parseInt(e.itemIdx);var n=new h.default.RCRegistryUpdateObjPdu;n.objId=d.default.DOCSHARING_OBJ_TABLE_ID,n.subType=t.type,n.userData=t.toArrayBuffer();var r=new h.default.RCAdapterItemPdu;r.type=h.default.RCPDU_REG_UPDATE_OBJ,r.itemData=n.toArrayBuffer();var i=new h.default.RCAdapterPdu;i.type=h.default.RCPDU_REG_ADAPTER,i.item.push(r),T.log("文档发送删除数据=============>"+t.itemIdx),this.sendUniform(i,!0)}},{key:"tableInsertHandler",value:function(e,t,n){}},{key:"tableInsertApeHandler",value:function(e,t){var n=e,r=n.length;T.log("添加文档->","activeDocId->",R.default.activeDocId,"tableUpdateItemsLen->",r);for(var i=0;i<r;++i){var a=n[i],o=this.unPackPdu(a.owner,a.itemIdx,a.itemData);if(o){this.docList[a.itemIdx]=o,"true"!=o.visible&&1!=o.visible||(R.default.activeDocId=o.itemIdx,R.default.activeDocCurPage=o.curPageNo,T.log("添加文档->设置当前激活的文档id"));var s=this._docPackFullInfo(o);this._emit(g.default.DOC_UPDATE,s)}}this._showDefaultDoc()}},{key:"tableDeleteHandler",value:function(e,t){if(T.log("删除文档数据->",e,t),t&&t.itemIdx)for(var n=t.itemIdx.length,r=t.itemIdx,i=0;i<n;i++)if(this.docList[r[i]]){T.log("删除文档数据:",r[i]);var a=this.docList[r[i]];!a||"true"!=a.visible&&1!=a.visible||(R.default.activeDocId=0,R.default.activeDocCurPage=1,T.log("删除文档数据->清除当前显示的文档")),this._emit(g.default.DOC_DELETE,{itemIdx:r[i]}),delete this.docList[r[i]]}}},{key:"tableUpdateHandler",value:function(e,t,n){}},{key:"tableUpdateApeHandler",value:function(e,t){var n=e.length;T.log("更新文档->","activeDocId->",R.default.activeDocId,"更新的数量->",n);for(var r=0;r<n;++r){var i=e[r],a=this.unPackPdu(i.owner,i.itemIdx,i.itemData);if(null!=a){this.docList[i.itemIdx]=a,!a||"true"!=a.visible&&1!=a.visible||(R.default.activeDocId=a.itemIdx,R.default.activeDocCurPage=a.curPageNo,T.log("更新文档->设置当前激活的文档id->",R.default.activeDocId,"curPageNum->",R.default.activeDocCurPage));var o=this._docPackFullInfo(a);this._emit(g.default.DOC_UPDATE,o)}else T.log("更新文档-> 数据无效--> itemIdx",v)}this._showDefaultDoc()}},{key:"_showDefaultDoc",value:function(){if(!(R.default.isRecordPlayBack||!R.default.isHost||R.default.activeDocId>0)){var e=void 0;for(var t in this.docList)if(e=this.docList[t]){T.log("选择一个文档作为默认文档显示->",e);var n={itemIdx:e.itemIdx,visible:!0};return void this.documentSwitchDoc(n)}}}},{key:"onJoinChannelHandlerSuccess",value:function(){var e=this;T.log(this._session_name+" onJoinChannelHandlerSuccess==========================="),this._apeDelayed?setTimeout(function(){e._emit(t.DOC_JOIN_CHANNEL_SUCCESS)},R.default.mcuDelay+R.default.docDelay||12e3+R.default.docDelay):setTimeout(function(){e._emit(t.DOC_JOIN_CHANNEL_SUCCESS)},R.default.docDelay)}},{key:"checkDocId",value:function(e){if(null==e)return T.warn("查找文档->失败->参数为null"),!0;for(var t in this.docList){var n=this.docList[t];if(n&&n.docId==e)return T.log("查找文档->已经存在->",e),!0}return T.log("查找文档->没有查找到文档->",e),!1}},{key:"packPdu",value:function(e,t){if(T.log("文档->packPdu"),null==e||null==t)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;var n=new h.default.RCDocSendDataModelPdu;return n.itemIdx=t,n.owner=R.default.nodeId,n.from=R.default.nodeId,n.curPageNo=e.curPageNo||1,n.pageNum=e.pageNum||1,n.fileType=e.fileType||"",n.creatUserId=e.creatUserId||"0",n.url=e.url||"",n.relativeUrl=e.relativeUrl||"",n.curV=e.curV||0,n.curH=e.curH||0,n.scale=e.scale||100,n.visible=e.visible||!1,n.action=e.action||d.default.DOC_ACTION_NORMAL,n.docId=e.docId||"",n.md5=e.md5||"",n.fileName=e.fileName||"doc_"+t,n.dynamicTS=e.dynamicTS||"0",n.showType=e.showType||0,n.animationStep=e.animationStep||1,n}},{key:"unPackPdu",value:function(e,t,n){if(null==e||null==t||null==n)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;try{var r=h.default.RCDocSendDataModelPdu.decode(n);return T.log("文档===>unPackPdu"),r}catch(e){T.log("文档===>unPackPdu->Pdu解析错误->itemIdx="+t+"->err:"+e.message)}return null}}]),t}(l.default);S.prototype.DOC_JOIN_CHANNEL_SUCCESS=S.DOC_JOIN_CHANNEL_SUCCESS="docServer.join.channel.success";var I=S;t.default=I;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(T,"loger","D:/work/McuClient/src/apes/DocApe.js"),__REACT_HOT_LOADER__.register(v,"itemIdx","D:/work/McuClient/src/apes/DocApe.js"),__REACT_HOT_LOADER__.register(S,"DocApe","D:/work/McuClient/src/apes/DocApe.js"),__REACT_HOT_LOADER__.register(I,"default","D:/work/McuClient/src/apes/DocApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(1),l=r(u),f=n(3),d=r(f),c=n(5),h=r(c),_=n(4),p=(r(_),n(47)),E=r(p),g=n(7),y=r(g),R=n(2),m=r(R),C=l.default.getLoger("ShareApe"),T=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.channelId=m.default.SCREENSHARING_OBJ_TABLE_ID,e.streamId="",e.publishUrl="",e.isConnect=!1,e.shareScreen=E.default,e.ip="127.0.0.1",e.port=8090,e.init(),e}return o(t,e),s(t,[{key:"init",value:function(){var e=this;this.shareScreen.on(E.default.MOVIE_INFO_CHANGE,function(t){console.log("MOVIE_INFO_CHANGE->",t),e._emit(d.default.PUBLISH_SCREEN_MOVIE_INFO_CHANGE,t)}),this.shareScreen.on(E.default.VIDEO_INFO_CHANGE,function(t){console.log("VIDEO_INFO_CHANGE->",t),e._emit(d.default.PUBLISH_SCREEN_VIDEO_INFO_CHANGE,t)}),this.shareScreen.on(E.default.SS_START,function(){console.log("屏幕共享开始开启"),e._emit(d.default.PUBLISH_SCREEN_SHARE_SUCCESS)}),this.shareScreen.on(E.default.SS_STOP,function(){console.log("屏幕共享开启失败"),e._emit(d.default.PUBLISH_SCREEN_SHARE_FAILE)}),this.shareScreen.on(E.default.ERROR,function(){console.log("无法连接本地服务-ERROR")}),this.shareScreen.on(E.default.CLOSE,function(){console.log("屏幕共享服务-CLOSE->重连"),e.isConnect=!1,e._emit(d.default.PUBLISH_SCREEN_SHARE_DISCONNECT),e.reConnectTimer=setTimeout(function(){e.startConnectSocket()},1400)}),this.shareScreen.on(E.default.OPEN,function(){console.log("屏幕共享服务开启-OPEN"),e.isConnect=!0,e._emit(d.default.PUBLISH_SCREEN_SHARE_CONNECTED),e.sendPublishRequest()})}},{key:"startConnectSocket",value:function(){clearTimeout(this.reConnectTimer),this.isConnect||(console.log("开始连接本地流媒体服务->"),this.shareScreen.start(this.ip,this.port))}},{key:"publish",value:function(e){e&&(this.publishUrl=e.publishUrl||"",this.streamId=e.streamId||""),clearTimeout(this.reConnectTimer),this.isConnect?this.sendPublishRequest():this.startConnectSocket()}},{key:"sendPublishRequest",value:function(){this.publishUrl&&this.shareScreen&&this.shareScreen.startShareScreen(this.publishUrl)}},{key:"stopPublish",value:function(){if(clearTimeout(this.reConnectTimer),this.shareScreen)try{this.shareScreen.stopShareScreen()}catch(e){console.log("关闭屏幕共享->失败",e.message)}this.publishUrl=""}},{key:"getPublishChannelInfo",value:function(){var e={};return e.owner=h.default.nodeId,e.status=m.default.CHANNEL_STATUS_OPENING,e.fromNodeId=h.default.nodeId,e.channelId=this.channelId,e.streamId=this.streamId,e.classId=h.default.classId,e.siteId=h.default.siteId,e.toNodeId=0,e.userId=h.default.userId,e.mediaType=m.default.MEDIA_TYPE_SHARE,e.screenWidth=h.default.screenWidth,e.screenHeight=h.default.screenHeight,e}},{key:"getDefaultChannelInfo",value:function(){var e={};return e.owner=0,e.status=m.default.CHANNEL_STATUS_RELEASED,e.fromNodeId=h.default.nodeId,e.channelId=this.channelId,e.streamId="",e.classId=h.default.classId,e.siteId=h.default.siteId,e.toNodeId=0,e.userId=h.default.userId,e.mediaType=m.default.MEDIA_TYPE_SHARE,e.screenWidth=h.default.screenWidth,e.screenHeight=h.default.screenHeight,e}}]),t}(y.default),v=T;t.default=v;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(C,"loger","D:/work/McuClient/src/apes/ShareApe.js"),__REACT_HOT_LOADER__.register(T,"ShareApe","D:/work/McuClient/src/apes/ShareApe.js"),__REACT_HOT_LOADER__.register(v,"default","D:/work/McuClient/src/apes/ShareApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),l=r(u),f=n(2),d=r(f),c=n(6),h=r(c),_=n(1),p=r(_),E=n(3),g=r(E),y=n(5),R=r(y),m=n(4),C=r(m),T=n(15),v=r(T),S=n(40),I=r(S),A=p.default.getLoger("VideoApe"),b=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,d.default.VIDEO_SESSION_ID,d.default.VIDEO_SESSION_NAME,d.default.VIDEO_SESSION_TAG));return e.mediaModule=new v.default,e.mediaModule.MEDIA_OBJ_TABLE_ID=d.default.VIDEO_OBJ_TABLE_ID,e.mediaModule.mediaChannels={},e.mediaModule.mediaType=d.default.MEDIA_TYPE_VIDEO,e.shareApe=new I.default,e.shareApe.on(g.default.PUBLISH_SCREEN_SHARE_SUCCESS,e.onPublishScreenShareSuccess.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_SHARE_FAILE,e.onPublishScreenShareFaile.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_SHARE_CLOSE,e.onPublishScreenShareClose.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_SHARE_DISCONNECT,e.onPublishScreenShareDisconnect.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_SHARE_CONNECTED,e.onPublishScreenShareConnected.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_MOVIE_INFO_CHANGE,e.onPublishScreenMovieInfoChange.bind(e)),e.shareApe.on(g.default.PUBLISH_SCREEN_VIDEO_INFO_CHANGE,e.onPublishScreenVideoInfoChange.bind(e)),e.registerKey(e._session_id,e._session_name,e._session_tag,new ArrayBuffer),e.registerObj(h.default.RCPDU_REG_REGISTER_TABLE,d.default.VIDEO_OBJ_TABLE_ID,d.default.VIDEO_OBJ_TABLE_NAME,d.default.VIDEO_OBJ_TABLE_TAG,0,new ArrayBuffer),e.on(h.default.RCPDU_SEND_VIDEO_DATA_REQUEST,e.receiveVideoCommandHandler.bind(e)),e}return o(t,e),s(t,[{key:"onJoinChannelHandlerSuccess",value:function(){this.mediaModule.maxMediaChannel=R.default.maxVideoChannels}},{key:"getPlayVideoPath",value:function(e){return A.log("getPlayVideoPath"),this.mediaModule.getMediaPlayPath(e)}},{key:"getPublishVideoPath",value:function(e){if(A.log("获取推流地址->"),!this.mcu.connected)return A.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};if(R.default.userRole==d.default.invisible){var t=this.mediaModule.getMediaPublishPathForInVisible(e);return this._emit(g.default.VIDEO_GET_PUBLISH_PATH,t),t}var n=0,r=v.default.allMediaChannelsList;for(var i in r){var a=r[i];a&&a.status==d.default.CHANNEL_STATUS_OPENING&&a.userRole!=d.default.invisible&&n++}if(n>=R.default.maxMediaChannels)return A.warn("不能再打开设备->当前开启的设备数量->",n),{code:d.default.RETURN_FAILED,data:"不能再打开设备,当前开启的设备数量"};var o=this.mediaModule.getMediaPublishPath(e);return this._emit(g.default.VIDEO_GET_PUBLISH_PATH,o),o}},{key:"getAllChannelInfo",value:function(e){return A.log("获取当前所有频道信息->"),this.mediaModule.getAllMediaChannelInfo()}},{key:"publishVideo",value:function(e){if(!this.mcu.connected)return A.warn(R.default.getCurrentStatus()),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"已经断开连接!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"已经断开连接"};if(null==e||null==e.publishUrl)return A.warn("推流->参数错误",e),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"参数错误!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"参数错误"};var t=this.mediaModule.getNeedPublishMediaChannel(e.publishUrl);if(null==t)return A.warn("推流->推流数据已经无效",e),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"推流数据已经无效!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"推流数据已经无效"};var n=this.mediaModule.getFreeMediaChannel();if(0==n)return A.warn("推流->不能再打开更多的设备 "),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备",mediaChannels:this.mediaModule.mediaChannels};if(this.mediaModule.checkChannelIsOpening(t.channelId))return t.nodeId==R.default.nodeId?(A.warn(t.channelId,"已经推送过消息,不需要再次推送"),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_SUCCESS,data:"已经推送过消息,不需要再次推送!",mediaId:t.channelId}),{code:d.default.RETURN_SUCCESS,data:"已经推送过消息,不需要再次推送!",mediaId:t.channelId}):(A.warn(t.channelId,"频道已经被占用"),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"频道已经被占用!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"频道已经被占用!",mediaChannels:this.mediaModule.mediaChannels});var r=this.mediaModule.getDefaultChannelInfo();return r.owner=R.default.nodeId,r.status=d.default.CHANNEL_STATUS_OPENING,r.channelId=t.channelId,r.streamId=t.streamId,r.timestamp=t.timestamp,r.mediaType=d.default.MEDIA_TYPE_VIDEO,this.sendTableUpdateHandler(r),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_SUCCESS,data:"推流成功!",mediaId:t.channelId}),{code:d.default.RETURN_SUCCESS,data:"推流成功!",mediaId:t.channelId}}},{key:"stopPublishVideo",value:function(e){if(A.log("停止推流->",e),!this.mcu.connected)return A.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};var t=R.default.nodeId;e&&parseInt(e.nodeId)>0&&(t=parseInt(e.nodeId));var n=0;e&&parseInt(e.mediaId)>0&&(n=parseInt(e.mediaId)),n>0?this._releaseChannelForNodeId(t,n):this._releaseNodeIdAllChannel(t)}},{key:"onPublishScreenShareFaile",value:function(){A.log("屏幕共享推流失败->"),this._emit(g.default.PUBLISH_SCREEN_SHARE_FAILE)}},{key:"onPublishScreenShareClose",value:function(){A.log("屏幕共享推流关闭->"),this._emit(g.default.PUBLISH_SCREEN_SHARE_CLOSE)}},{key:"onPublishScreenShareDisconnect",value:function(){A.log("屏幕共享服务器连接失败->"),this._emit(g.default.PUBLISH_SCREEN_SHARE_DISCONNECT)}},{key:"onPublishScreenShareConnected",value:function(){A.log("屏幕共享服务器连接成功->"),this._emit(g.default.PUBLISH_SCREEN_SHARE_CONNECTED)}},{key:"onPublishScreenMovieInfoChange",value:function(e){A.log("屏幕共享MOVIE信息发生改变->"),this._emit(g.default.PUBLISH_SCREEN_MOVIE_INFO_CHANGE,e)}},{key:"onPublishScreenVideoInfoChange",value:function(e){A.log("屏幕共享视频信息发生改变->"),this._emit(g.default.PUBLISH_SCREEN_VIDEO_INFO_CHANGE,e)}},{key:"onPublishScreenShareSuccess",value:function(){A.log("屏幕共享推流成功之后才能更新同步消息->");var e=this.shareApe.getPublishChannelInfo();return this.sendTableUpdateHandler(e),this._emit(g.default.PUBLISH_SCREEN_SHARE_SUCCESS,{code:d.default.RETURN_SUCCESS,data:"桌面共享推流!",mediaId:e.channelId}),{code:d.default.RETURN_SUCCESS,data:"桌面共享推流!",mediaId:e.channelId}}},{key:"publishScreenShare",value:function(e){if(!this.mcu.connected)return A.warn(R.default.getCurrentStatus()),this._emit(g.default.VIDEO_PUBLISH_RESULT,{code:d.default.RETURN_FAILED,data:"已经断开连接!",mediaId:0}),{code:d.default.RETURN_FAILED,data:"已经断开连接"};var t="flash";e&&"live"==e.type&&(t="live");var n=this.mediaModule.getMediaPublishPathForScreenShare(this.shareApe.channelId,t);this.shareApe.publish(n)}},{key:"stopPublishScreenShare",value:function(e){A.log("停止桌面共享推流->",e);var t=this.shareApe.getDefaultChannelInfo();t.status=d.default.CHANNEL_STATUS_RELEASED,this.sendTableUpdateHandler(t),this.shareApe.stopPublish()}},{key:"_releaseChannelForNodeId",value:function(e,t){A.log(e,"_releaseChannelForNodeId-->channelId",t);var n=this.mediaModule.mediaChannels[t];if(n&&n.status==d.default.CHANNEL_STATUS_OPENING)if(n.fromNodeId==e){var r=this.mediaModule.getDefaultChannelInfo();r.status=d.default.CHANNEL_STATUS_RELEASED,r.channelId=t,this.sendTableUpdateHandler(r)}else A.warn(t,"不属于nodeId",e,"不能释放",n);else A.warn(e,"要释放的channel不存在或者已经释放-->channelId",n)}},{key:"_releaseNodeIdAllChannel",value:function(e){if(A.log(e,"_releaseNodeIdAllChannel",this.mcu.connected),!this.mcu.connected)return clearTimeout(this.releaseTimeId),A.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};var t=this.mediaModule.getOpeningMediaChannel(e);if(0==t)return A.warn(e,"没有占用channel不需要处理"),{code:d.default.RETURN_FAILED,data:"没有占用channel不需要处理"};var n=this.mediaModule.getDefaultChannelInfo();n.status=d.default.CHANNEL_STATUS_RELEASED,n.channelId=t,this.sendTableUpdateHandler(n),this.releaseTimeId=setTimeout(function(){A.warn(e,"检查频道是否占用"),this._releaseNodeIdAllChannel(e)}.bind(this),800)}},{key:"sendVideoBroadcastMsg",value:function(e){if(!this.mcu.connected)return A.warn(R.default.getCurrentStatus()),{code:d.default.RETURN_FAILED,data:"已经断开连接"};if(null===this._classInfo||C.default.isEmptyObject(this._classInfo))return A.log("不能发送Video消息.McuClient还未初始化数据!"),0==R.default.getCurrentStatus().code||1==R.default.getCurrentStatus().code?(this._emit(g.default.MCU_ERROR,g.default.ERR_APE_SEND_FAILED_NO_JOIN),{code:1,data:"不能发送Video消息.McuClient还未初始化数据"}):{code:d.default.RETURN_FAILED,data:"不能发送Video消息.McuClient还未初始化数据"};if(null==e)return A.warn("sendVideoCommandMsg失败,参数错误",e),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),{code:d.default.RETURN_FAILED,data:"sendVideoCommandMsg失败,参数错误"};if(A.log("发送Video消息.",e),null!=e.actionType&&e.actionType==d.default.MEDIA_ACTION_OPEN_CAMERA){var t=this.mediaModule.getFreeMediaChannel();if(0==t)return A.warn("sendVideoCommandMsg,不能再打开更多的设备",e),{code:d.default.RETURN_FAILED,data:"不能再打开更多的设备",mediaChannels:this.mediaModule.mediaChannels}}var n=new h.default.RCVideoSendDataRequestPdu;n.type=h.default.RCPDU_SEND_VIDEO_DATA_REQUEST,n.isPublic=!0,n.fromNodeId=R.default.nodeId,n.toNodeId=parseInt(e.toNodeId)||0,n.actionType=parseInt(e.actionType)||d.default.MEDIA_ACTION_DEFAULT;var r="";try{r=JSON.stringify(e.data)}catch(t){A.warn("控制消息->JSON转换失败"),r=e.data}return n.data=this._rCArrayBufferUtil.strToUint8Array("h5"+r),n.isPublic||0==n.toNodeId?this.sendChatUniform(n):this.send(n),{code:d.default.RETURN_SUCCESS,data:""}}},{key:"sendTableUpdateHandler",value:function(e){A.log("video===sendTableUpdateHandler ");var t=this.packPdu(e,e.channelId);if(null==t)return void A.warn("sendTableUpdateHandler error,updateModelPdu=null");var n=new h.default.RCRegistryTableItemPdu;n.itemIdx=e.channelId,n.owner=e.owner,n.itemData=t.toArrayBuffer();var r=new h.default.RCRegistryTableUpdateItemPdu;r.type=h.default.RCPDU_REG_TABLE_UPDATE_PDU,r.items.push(n);var i=new h.default.RCRegistryUpdateObjPdu;i.objId=d.default.VIDEO_OBJ_TABLE_ID,i.subType=r.type,i.userData=r.toArrayBuffer();var a=new h.default.RCAdapterItemPdu;a.type=h.default.RCPDU_REG_UPDATE_OBJ,a.itemData=i.toArrayBuffer();var o=new h.default.RCAdapterPdu;o.type=h.default.RCPDU_REG_ADAPTER,o.item.push(a),A.log("发送更新VIDEO.itemIdx="+n.itemIdx),this.sendUniform(o,!0)}},{key:"receiveVideoCommandHandler",value:function(e){var t=h.default.RCVideoSendDataRequestPdu.decode(e);if(null==t)return void A.warn("视频控制消息处理,收到的消息为null,不做处理");t.data=this._rCArrayBufferUtil.uint8ArrayToStr(t.data,2);var n={};try{n=JSON.parse(t.data)}catch(e){A.warn("控制消息->JSON转换失败"),n=t.data}t.data=n,0!=t.toNodeId&&t.toNodeId!=R.default.nodeId?A.log("视频消息不处理 toNodeId=",t.toNodeId,"my nodeId=",R.default.nodeId):(A.log("视频控制消息处理 .",t),this._emit(g.default.VIDEO_BROADCAST,t))}},{key:"tableUpdateHandler",value:function(e,t,n,r){var i=this.unPackPdu(e,t,n);if(A.log("tableUpdateHandler->channel",t,"mediaType",i.mediaType,"status->",i.status,"seek->",r),0==e&&(A.log("释放占用的频道,channel",t),i.status=d.default.CHANNEL_STATUS_RELEASED,i.streamId=""),i.mediaType!=d.default.MEDIA_TYPE_SHARE&&i.channelId>0&&(this.mediaModule.mediaChannels[t]=i),i&&i.fromNodeId!=R.default.nodeId){var a={};if(a.mediaId=i.channelId,a.fromNodeId=i.fromNodeId,a.userName=i.userName||"",a.userRole=i.userRole||d.default.normal,a.mediaType=i.mediaType||d.default.MEDIA_TYPE_DEFAULT,a.screenWidth=i.screenWidth||R.default.screenWidth,a.screenHeight=i.screenHeight||R.default.screenHeight,i.status==d.default.CHANNEL_STATUS_OPENING){a.m3u8Url="",a.rtmpUrl="",a.replay="",a.seek=r||0;var o=this.mediaModule.getMediaPlayPath({type:"m3u8",streamId:i.streamId}),s=this.mediaModule.getMediaPlayPath({type:"rtmp",streamId:i.streamId}),u=this.mediaModule.getMediaRecordPlaybackPath({type:"m3u8",streamId:i.streamId});0==o.code&&(a.m3u8Url=o.playUrl),0==s.code&&(a.rtmpUrl=s.playUrl),0==u.code&&(a.replay=u.playUrl),i.mediaType!=d.default.MEDIA_TYPE_SHARE?(A.log("VIDEO_PLAY",a),this._emit(g.default.VIDEO_PLAY,a)):(A.log("SCREEN_SHARE_PLAY",a),this._emit(g.default.SCREEN_SHARE_PLAY,a))}else i.mediaType!=d.default.MEDIA_TYPE_SHARE?(A.log("VIDEO_STOP",a),this._emit(g.default.VIDEO_STOP,a)):0!=i.channelId?(A.log("SCREEN_SHARE_STOP",a),this._emit(g.default.SCREEN_SHARE_STOP,a)):A.log("停止播放视频->channelId=0->不合法的id",a)}else A.warn("视频消息是自己发送的或者是视频消息无效,不需要处理,消息内容如下:"),A.log(i),i.status==d.default.CHANNEL_STATUS_OPENING?(R.default.openCamera=C.default.creatTimestamp(),R.default.openMicrophones=R.default.openCamera):(R.default.openCamera=0,R.default.openMicrophones=0),i.mediaType!=d.default.MEDIA_TYPE_SHARE&&this._emit(g.default.USER_DEVICE_STATUS_CHAANGE,{nodeId:R.default.nodeId,userRole:R.default.userRole,userName:R.default.userName,userId:R.default.userId,openCamera:R.default.openCamera,openMicrophones:R.default.openMicrophones});i.mediaType!=d.default.MEDIA_TYPE_SHARE&&(v.default.allMediaChannelsList[t]=i,console.log("MediaModule.allMediaChannelsList",v.default.allMediaChannelsList),this._emit(g.default.VIDEO_UPDATE,i))}},{key:"clearData",value:function(){A.log("clearData->"),v.default.allMediaChannelsList={}}},{key:"packPdu",value:function(e,t){if(A.log("packPdu "),null==e||null==t)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;var n=new h.default.RCVideoChannelInfoPdu;return n.status=e.status||d.default.CHANNEL_STATUS_RELEASED,n.channelId=t,n.streamId=e.streamId||"",n.siteId=e.siteId||R.default.siteId,n.classId=parseInt(e.classId)||parseInt(R.default.classId),n.userId=e.userId||"0",n.mediaType=e.mediaType||d.default.MEDIA_TYPE_VIDEO,n.timestamp=e.timestamp||0,n.fromNodeId=R.default.nodeId,n.userName=R.default.userName||"",n.toNodeId=0,n.userRole=R.default.userRole||d.default.normal,n.screenWidth=e.screenWidth||R.default.screenWidth,n.screenHeight=e.screenHeight||R.default.screenHeight,A.log(n),n}},{key:"unPackPdu",value:function(e,t,n){if(A.log("unPackPdu->owner:",e,"itemIdx->",t),null==e||null==t||null==n)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;try{var r=h.default.RCVideoChannelInfoPdu.decode(n);return A.log(r),r}catch(e){A.log("unPackPdu error,itemIdx="+t+"  err:"+e.message)}return null}}]),t}(l.default),P=b;t.default=P;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(A,"loger","D:/work/McuClient/src/apes/VideoApe.js"),__REACT_HOT_LOADER__.register(b,"VideoApe","D:/work/McuClient/src/apes/VideoApe.js"),__REACT_HOT_LOADER__.register(P,"default","D:/work/McuClient/src/apes/VideoApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),l=r(u),f=n(2),d=r(f),c=n(6),h=r(c),_=n(1),p=r(_),E=n(3),g=r(E),y=(n(31),
 n(14)),R=(r(y),n(5)),m=r(R),C=n(4),T=r(C),v=p.default.getLoger("WhiteBoardApe"),S=0,I=0,A=1,b=2,P=3,w=4,D=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,d.default.WHITEBOARD_SESSION_ID,d.default.WHITEBOARD_SESSION_NAME,d.default.WHITEBOARD_SESSION_TAG));return e.annoInfos={},e.insertHistory=[],e.registerKey(e._session_id,e._session_name,e._session_tag,new ArrayBuffer),e.registerObj(h.default.RCPDU_REG_REGISTER_TABLE,d.default.WHITEBOARD_OBJ_TABLE_ID,d.default.WHITEBOARD_OBJ_TABLE_NAME,d.default.WHITEBOARD_OBJ_TABLE_TAG,0,new ArrayBuffer),e.on(h.default.RCPDU_SESSION_JOIN_RESPONSE,e._joinSessionHandler.bind(e)),e}return o(t,e),s(t,[{key:"_joinSessionHandler",value:function(e){v.log("RCPDU_SESSION_JOIN_RESPONSE"),this.insertHistory=[]}},{key:"clearData",value:function(){v.log("clearData->"),this.annoInfos={},this.insertHistory=[]}},{key:"updaterRecordStatus",value:function(e){if(m.default.isHost&&!m.default.isRecordPlayBack){var t={};for(var n in this.annoInfos){var r=this.annoInfos[n];r&&r.parentId==m.default.activeDocId&&r.curPageNo==m.default.activeDocCurPage&&(t[n]=r)}Object.keys(t).length>0?(v.log("开启录制成功->更新当前的标注数据->docId:",m.default.activeDocId,"page:",m.default.activeDocCurPage),this.sendUpdaterAnnotaion({itemIdxArr:t})):v.log("开启录制成功->当前没有标注数据需要更新->docId:",m.default.activeDocId,"page:",m.default.activeDocCurPage)}}},{key:"sendInsetAnnotaion",value:function(e){if(null==e||T.default.isEmptyObject(e))return v.warn("添加标注失败->参数错误->",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);S=T.default.creatSoleNumberFromTimestamp();var t=this.packPdu(e,S);if(null==t)return v.warn("添加标注失败-->参数错误->",e),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);this.insertHistory.push(t);var n=new h.default.RCRegistryTableItemPdu;n.itemIdx=S,n.registerObjId=d.default.WHITEBOARD_OBJ_TABLE_ID,n.owner=0,n.itemData=t.toArrayBuffer();var r=new h.default.RCRegistryTableInsertItemPdu;r.type=h.default.RCPDU_REG_TABLE_INSERT_PDU,r.items.push(n);var i=new h.default.RCRegistryUpdateObjPdu;i.objId=d.default.WHITEBOARD_OBJ_TABLE_ID,i.subType=r.type,i.userData=r.toArrayBuffer();var a=new h.default.RCAdapterItemPdu;a.type=h.default.RCPDU_REG_UPDATE_OBJ,a.itemData=i.toArrayBuffer();var o=new h.default.RCAdapterPdu;o.type=h.default.RCPDU_REG_ADAPTER,o.item.push(a),v.log("添加标注->itemIdx="+n.itemIdx),this.sendUniform(o,!0)}},{key:"sendGotoPrev",value:function(){if(v.log("撤销上一步"),null==this.insertHistory||this.insertHistory.length<1)return void v.warn("无法继续上一步操作,已经没有可以撤销的数据");var e=this.insertHistory.pop();if(e){var t={};t[e.itemIdx]=e,this.sendDeleteAnnotaion({itemIdxArr:t})}}},{key:"sendDeleteCurPageAnnotation",value:function(e){this.insertHistory=[];var t={};for(var n in this.annoInfos){var r=this.annoInfos[n];r&&r.parentId==m.default.activeDocId&&r.curPageNo==m.default.activeDocCurPage&&(t[n]=r)}this.sendDeleteAnnotaion({itemIdxArr:t})}},{key:"sendDeleteAllAnnotation",value:function(e){this.insertHistory=[],this.sendDeleteAnnotaion({itemIdxArr:this.annoInfos})}},{key:"sendDeleteAnnotaion",value:function(e){if(null==e||null==e.itemIdxArr)return void v.warn("要删除的数据不存在->",e);var t=new h.default.RCAdapterPdu;t.type=h.default.RCPDU_REG_ADAPTER;for(var n in e.itemIdxArr){var r=new h.default.RCRegistryTableDeleteItemPdu;r.type=h.default.RCPDU_REG_TABLE_DELETE_PDU,r.itemIdx=parseInt(n);var i=new h.default.RCRegistryUpdateObjPdu;i.objId=d.default.WHITEBOARD_OBJ_TABLE_ID,i.subType=r.type,i.userData=r.toArrayBuffer();var a=new h.default.RCAdapterItemPdu;a.type=h.default.RCPDU_REG_UPDATE_OBJ,a.itemData=i.toArrayBuffer(),t.item.push(a)}v.log("发送删除白板标注数据->长度:"+t.item.length),this.sendUniform(t,!0)}},{key:"sendUpdaterAnnotaion",value:function(e){if(null==e||null==e.itemIdxArr)return v.log("更新标注数据->失败->参数错误"),void this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG);var t=new h.default.RCAdapterPdu;t.type=h.default.RCPDU_REG_ADAPTER;for(var n in e.itemIdxArr){var r=parseInt(n),i=e.itemIdxArr[n],a=this.packPdu(i,r);if(null!=a){var o=new h.default.RCRegistryTableItemPdu;o.itemIdx=r,o.owner=0,o.registerObjId=d.default.WHITEBOARD_OBJ_TABLE_ID,o.itemData=a.toArrayBuffer();var s=new h.default.RCRegistryTableUpdateItemPdu;s.type=h.default.RCPDU_REG_TABLE_UPDATE_PDU,s.items.push(o);var u=new h.default.RCRegistryUpdateObjPdu;u.objId=d.default.WHITEBOARD_OBJ_TABLE_ID,u.subType=s.type,u.userData=s.toArrayBuffer();var l=new h.default.RCAdapterItemPdu;l.type=h.default.RCPDU_REG_UPDATE_OBJ,l.itemData=u.toArrayBuffer(),t.item.push(l)}else v.log("更新标注数据->失败->数据无效"),this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG)}var f=t.item.length;f>0?(v.log("更新标注数据->发送数量->",t.item.length),this.sendUniform(t,!0)):v.log("更新标注数据->没有可更新的数据")}},{key:"tableInsertHandler",value:function(e,t,n){var r=this.unPackPdu(e,t,n);v.log("tableInsertHandler","activeDocId->",m.default.activeDocId,"parentId->",r.parentId),v.log(r),r&&m.default.activeDocId==r.parentId&&m.default.activeDocCurPage==r.curPageNo&&this.insertAandShowAnnotaion(r)}},{key:"tableUpdateHandler",value:function(e,t,n){}},{key:"tableUpdateApeHandler",value:function(e,t){var n=e.length;v.log("白板标注更新->","activeDocId->",m.default.activeDocId,"数量->",n);for(var r=0;r<n;++r){var i=e[r];this.unPackPdu(i.owner,i.itemIdx,i.itemData)}this.updateAandShowAnnotaion()}},{key:"tableDeleteHandler",value:function(e,t){if(v.log("删除白板数据->",e,t),t&&t.itemIdx)for(var n=t.itemIdx.length,r=t.itemIdx,i=0;i<n;i++)this.annoInfos[r[i]]&&(v.log("删除白板数据:",r[i]),delete this.annoInfos[r[i]]);this.updateAandShowAnnotaion()}},{key:"docUpdateHandler",value:function(e){v.log("白板收到文档更新的消息"),e.action!=d.default.DOC_ACTION_SWITCH_DOC&&e.action!=d.default.DOC_ACTION_SWITCH_PAGE||(this.insertHistory=[]),this.updateAandShowAnnotaion()}},{key:"docDeleteHandler",value:function(e){v.log("白板收到文档删除的消息->",e);for(var t in this.annoInfos){var n=this.annoInfos[t];n&&n.parentId==e&&(v.log("文档删除->白板数据也删除,itemIdx:"+t,"_parentId:",e),this.sendDeleteAnnotaion({itemIdx:t}))}0==m.default.activeDocId&&(this.insertHistory=[],this.updateAandShowAnnotaion())}},{key:"insertAandShowAnnotaion",value:function(e){var t=[e],n={isFresh:!1,annotaionItems:t};v.log("新增一条标注数据->显示到界面"),this._emit(g.default.WHITEBOARD_ANNOTATION_UPDATE,n)}},{key:"updateAandShowAnnotaion",value:function(){var e=[];for(var t in this.annoInfos){var n=this.annoInfos[t];n&&n.parentId==m.default.activeDocId&&n.curPageNo==m.default.activeDocCurPage&&e.push(n)}var r={isFresh:!0,annotaionItems:e};v.log("清除当前显示的标注---->重绘标注数量--->",e.length,"当前文档信息--->DocId->",m.default.activeDocId,"curPageNo->",m.default.activeDocCurPage),this._emit(g.default.WHITEBOARD_ANNOTATION_UPDATE,r)}},{key:"packPdu",value:function(e,t){if(null==e.pointGroup||e.pointGroup.length<1)return this._emit(g.default.MCU_ERROR,g.default.ERR_APE_INTERFACE_PARAM_WRONG),null;var n=new h.default.RCWhiteBoardDataModelPdu;switch(e.type){case I:break;case A:break;case b:break;case P:n.radius=parseInt(e.radius);break;case w:n.fontSize=parseInt(e.fontSize),n.fontName=e.fontName||null,n.text=e.text||null;break;default:return null}return n.type=e.type,n.itemIdx=t,n.initiator=m.default.nodeId,n.parentId=m.default.activeDocId,n.curPageNo=m.default.activeDocCurPage,n.pointGroup=T.default.arrayToJsonString(e.pointGroup),n.color=e.color||"#000000",n.thickness=e.thickness||1,n}},{key:"unPackPdu",value:function(e,t,n){try{v.log("白板标注数据->unPackPdu");var r=h.default.RCWhiteBoardDataModelPdu.decode(n),i=T.default.arrayFromJsonString(r.pointGroup);return r.pointGroup=i,this.annoInfos[t]=r,r}catch(e){v.log("白板标注数据->unPackPdu->Pdu解析错误,itemIdx="+t+"  err:"+e.message)}return null}}]),t}(l.default),O=D;t.default=O;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(v,"loger","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(S,"itemIdx","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(I,"TYPE_BIGHT","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(A,"TYPE_LINE","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(b,"TYPE_RECT","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(P,"TYPE_CIRCLE","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(w,"TYPE_TEXT","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(D,"WhiteBoardApe","D:/work/McuClient/src/apes/WhiteBoardApe.js"),__REACT_HOT_LOADER__.register(O,"default","D:/work/McuClient/src/apes/WhiteBoardApe.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(1),s=r(o),u=n(2),l=(r(u),n(4)),f=(r(l),s.default.getLoger("Server")),d=function(){function e(){i(this,e)}return a(e,null,[{key:"serverList",get:function(){return{MS:{},MCU:{}}}}]),e}(),c=d;t.default=c;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(f,"loger","D:/work/McuClient/src/config/Server.js"),__REACT_HOT_LOADER__.register(d,"Server","D:/work/McuClient/src/config/Server.js"),__REACT_HOT_LOADER__.register(c,"default","D:/work/McuClient/src/config/Server.js"))})()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),l=r(u),f=n(1),d=r(f),c=d.default.getLoger("EverSocket"),h=4,_=function(e){function t(){i(this,t);var e=a(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e._connected=!1,e._lastActiveTime=0,e._enableEverSocket=!1,e.reConnectionCounter=0,e}return o(t,e),s(t,[{key:"begin",value:function(e,t){this._clearHistory(),c.log("开始WebSocket应用."),this._enableEverSocket=!0,this.wsURL="ws://"+e+":"+t,this._newConnection()}},{key:"end",value:function(){c.log("停止WebSocket应用."),this._clear()}},{key:"switchSocketIp",value:function(e,t){t?this.wsURL="ws://"+e+":"+t:this.wsURL="ws://"+e}},{key:"send",value:function(e){this._connected?(e?c.log("SEND MESSAGE-->byteLength->",e.byteLength):c.log("SEND MESSAGE---->"),this.websocket.send(e)):c.warn("WebSocket未建立连接.消息忽略")}},{key:"_setConnected",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this._connected=e,this._connected?this._emit(t.OPEN):this._emit(t.CLOSED)}},{key:"_newConnection",value:function(){this.websocket=new WebSocket(this.wsURL),this.websocket.binaryType="arraybuffer",this.websocket.onopen=this._onOpen.bind(this),this.websocket.onclose=this._onClose.bind(this),this.websocket.onerror=this._onError.bind(this),this.websocket.onmessage=this._onMessage.bind(this)}},{key:"_reConnection",value:function(){var e=this;this._clear(),window.clearTimeout(this.reConnectionTimeout),this.reConnectionCounter++,this.reConnectionCounter>h&&(c.warn("MCU断线重连->已经达到最大重连次数!"),this._emit(t.ERROR,t.ERR_SOCKET_RECONNECT_FAILED),this.reConnectionCounter=0),this.reConnectionTimeout=window.setTimeout(function(){c.log("MCU断线重连->",e.reConnectionCounter),window.clearTimeout(e.reConnectionTimeout),e._newConnection()},t.RECONN_INTERVAL)}},{key:"_clear",value:function(){if(c.log("WebSocket,Timers销毁"),window.clearInterval(this.pingTimer),window.clearInterval(this.pongTimer),window.clearInterval(this.reConnectionTimeout),this._setConnected(!1),this._enableEverSocket=!1,null==this.websocket)return void c.log("WebSocket,Timers已经销毁");this.websocket.onopen=void 0,this.websocket.onclose=void 0,this.websocket.onerror=void 0,this.websocket.onmessage=void 0;try{this.websocket.close()}catch(e){c.log("ignore errors")}this.websocket=void 0}},{key:"_clearHistory",value:function(){if(c.log("WebSocket->清除记录"),window.clearInterval(this.pingTimer),window.clearInterval(this.pongTimer),window.clearInterval(this.reConnectionTimeout),this._connected=!1,this._enableEverSocket=!1,null==this.websocket)return void c.log("WebSocket->已经销毁");this.websocket.onopen=void 0,this.websocket.onclose=void 0,this.websocket.onerror=void 0,this.websocket.onmessage=void 0;try{this.websocket.close()}catch(e){c.log("ignore errors")}this.websocket=void 0}},{key:"_onOpen",value:function(){c.log("WebSocket建立成功",this.wsURL),this.reConnectionCounter=0,this.pingTimer=window.setInterval(this._sendPingHandler.bind(this),t.PING_INTERVAL),this.pongTimer=window.setInterval(this._checkPongHandler.bind(this),t.PONG_INTERVAL),this._setConnected()}},{key:"_onClose",value:function(e){c.log("WebSocket连接断开 CODE:"+e.code+" REASON:"+e.reason+" CLEAN: "+e.wasClean,this.wsURL),this._reConnection()}},{key:"_onError",value:function(){c.log("WebSocket错误出现"),this._connected=!1,this._reConnection()}},{key:"_onMessage",value:function(e){this._lastActiveTime=Date.now();var n=e.data;c.log("RECEIVE MESSAGE-->byteLength->",n.byteLength),n.byteLength>0&&this._emit(t.MESSAGE,n)}},{key:"_sendPingHandler",value:function(){this._connected?this.websocket.send(new ArrayBuffer):this._reConnection()}},{key:"_checkPongHandler",value:function(){var e=Date.now();this._lastActiveTime&&this._lastActiveTime>=e-t.PONG_INTERVAL&&this._lastActiveTime<=e||(c.warn("---服务器PINGPONG超时-----"),this._reConnection())}},{key:"connected",get:function(){return this._connected}}]),t}(l.default);_.prototype.PONG_INTERVAL=_.PONG_INTERVAL=21e3,_.prototype.PING_INTERVAL=_.PING_INTERVAL=1e4,_.prototype.RECONN_INTERVAL=_.RECONN_INTERVAL=5e3,_.prototype.ERR_SOCKET_RECONNECT_FAILED=_.ERR_SOCKET_RECONNECT_FAILED=20001,_.prototype.CONNECTING=_.CONNECTING=0,_.prototype.OPEN=_.OPEN=1,_.prototype.CLOSING=_.CLOSING=2,_.prototype.CLOSED=_.CLOSED=3,_.prototype.MESSAGE=_.MESSAGE=4,_.prototype.ERROR=_.ERROR=5;var p=new _;t.default=p;(function(){"undefined"!=typeof __REACT_HOT_LOADER__&&(__REACT_HOT_LOADER__.register(c,"loger","D:/work/McuClient/src/everSocket.js"),__REACT_HOT_LOADER__.register(h,"MCU_MAX_RECONNECTION","D:/work/McuClient/src/everSocket.js"),__REACT_HOT_LOADER__.register(_,"EverSocket","D:/work/McuClient/src/everSocket.js"),__REACT_HOT_LOADER__.register(p,"default","D:/work/McuClient/src/everSocket.js"))})()},function(e,t,n){var r,i,a,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};!function(o,s){i=[n(17)],r=s,a="function"==typeof r?r.apply(t,i):r,!(void 0!==a&&(e.exports=a))}(void 0,function(e){function t(e){var t=0;return function(){return t<e.length?e.charCodeAt(t++):null}}function n(){var e=[],t=[];return function(){return 0===arguments.length?t.join("")+l.apply(String,e):(1024<e.length+arguments.length&&(t.push(l.apply(String,e)),e.length=0),void Array.prototype.push.apply(e,arguments))}}function r(e,t,n,r,i){var a;a=8*i-r-1;var o=(1<<a)-1,s=o>>1,u=-7;i=n?i-1:0;var l=n?-1:1,f=e[t+i];for(i+=l,n=f&(1<<-u)-1,f>>=-u,u+=a;0<u;n=256*n+e[t+i],i+=l,u-=8);for(a=n&(1<<-u)-1,n>>=-u,u+=r;0<u;a=256*a+e[t+i],i+=l,u-=8);if(0===n)n=1-s;else{if(n===o)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,r),n-=s}return(f?-1:1)*a*Math.pow(2,n-r)}function i(e,t,n,r,i,a){var o,s=8*a-i-1,u=(1<<s)-1,l=u>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0;a=r?0:a-1;var d=r?1:-1,c=0>t||0===t&&0>1/t?1:0;for(t=Math.abs(t),isNaN(t)||1/0===t?(t=isNaN(t)?1:0,r=u):(r=Math.floor(Math.log(t)/Math.LN2),1>t*(o=Math.pow(2,-r))&&(r--,o*=2),t=1<=r+l?t+f/o:t+f*Math.pow(2,1-l),2<=t*o&&(r++,o/=2),r+l>=u?(t=0,r=u):1<=r+l?(t=(t*o-1)*Math.pow(2,i),r+=l):(t=t*Math.pow(2,l-1)*Math.pow(2,i),r=0));8<=i;e[n+a]=255&t,a+=d,t/=256,i-=8);for(r=r<<i|t,s+=i;0<s;e[n+a]=255&r,a+=d,r/=256,s-=8);e[n+a-d]|=128*c}var a=function e(t,n,r){if("undefined"==typeof t&&(t=e.DEFAULT_CAPACITY),"undefined"==typeof n&&(n=e.DEFAULT_ENDIAN),"undefined"==typeof r&&(r=e.DEFAULT_NOASSERT),!r){if(t|=0,0>t)throw RangeError("Illegal capacity");n=!!n,r=!!r}this.buffer=0===t?u:new ArrayBuffer(t),this.view=0===t?null:new Uint8Array(this.buffer),this.offset=0,this.markedOffset=-1,this.limit=t,this.littleEndian=n,this.noAssert=r};a.VERSION="5.0.1",a.LITTLE_ENDIAN=!0,a.BIG_ENDIAN=!1,a.DEFAULT_CAPACITY=16,a.DEFAULT_ENDIAN=a.BIG_ENDIAN,a.DEFAULT_NOASSERT=!1,a.Long=e||null;var s=a.prototype;Object.defineProperty(s,"__isByteBuffer__",{value:!0,enumerable:!1,configurable:!1});var u=new ArrayBuffer(0),l=String.fromCharCode;a.accessor=function(){return Uint8Array},a.allocate=function(e,t,n){return new a(e,t,n)},a.concat=function(e,t,n,r){"boolean"!=typeof t&&"string"==typeof t||(r=n,n=t,t=void 0);for(var i,o=0,s=0,u=e.length;s<u;++s)a.isByteBuffer(e[s])||(e[s]=a.wrap(e[s],t)),i=e[s].limit-e[s].offset,0<i&&(o+=i);if(0===o)return new a(0,n,r);for(t=new a(o,n,r),s=0;s<u;)n=e[s++],i=n.limit-n.offset,0>=i||(t.view.set(n.view.subarray(n.offset,n.limit),t.offset),t.offset+=i);return t.limit=t.offset,t.offset=0,t},a.isByteBuffer=function(e){return!0===(e&&e.__isByteBuffer__)},a.type=function(){return ArrayBuffer},a.wrap=function(e,t,n,r){if("string"!=typeof t&&(r=n,n=t,t=void 0),"string"==typeof e)switch("undefined"==typeof t&&(t="utf8"),t){case"base64":return a.fromBase64(e,n);case"hex":return a.fromHex(e,n);case"binary":return a.fromBinary(e,n);case"utf8":return a.fromUTF8(e,n);case"debug":return a.fromDebug(e,n);default:throw Error("Unsupported encoding: "+t)}if(null===e||"object"!==("undefined"==typeof e?"undefined":o(e)))throw TypeError("Illegal buffer");if(a.isByteBuffer(e))return t=s.clone.call(e),t.markedOffset=-1,t;if(e instanceof Uint8Array)t=new a(0,n,r),0<e.length&&(t.buffer=e.buffer,t.offset=e.byteOffset,t.limit=e.byteOffset+e.byteLength,t.view=new Uint8Array(e.buffer));else if(e instanceof ArrayBuffer)t=new a(0,n,r),0<e.byteLength&&(t.buffer=e,t.offset=0,t.limit=e.byteLength,t.view=0<e.byteLength?new Uint8Array(e):null);else{if("[object Array]"!==Object.prototype.toString.call(e))throw TypeError("Illegal buffer");for(t=new a(e.length,n,r),t.limit=e.length,n=0;n<e.length;++n)t.view[n]=e[n]}return t},s.writeBitSet=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if(!(e instanceof Array))throw TypeError("Illegal BitSet: Not an array");if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}var r,i=t,a=e.length,o=a>>3,s=0;for(t+=this.writeVarint32(a,t);o--;)r=1&!!e[s++]|(1&!!e[s++])<<1|(1&!!e[s++])<<2|(1&!!e[s++])<<3|(1&!!e[s++])<<4|(1&!!e[s++])<<5|(1&!!e[s++])<<6|(1&!!e[s++])<<7,this.writeByte(r,t++);if(s<a){for(r=o=0;s<a;)r|=(1&!!e[s++])<<o++;this.writeByte(r,t++)}return n?(this.offset=t,this):t-i},s.readBitSet=function(e){var t="undefined"==typeof e;t&&(e=this.offset);var n=this.readVarint32(e),r=n.value,i=r>>3,a=0,o=[];for(e+=n.length;i--;)n=this.readByte(e++),o[a++]=!!(1&n),o[a++]=!!(2&n),o[a++]=!!(4&n),o[a++]=!!(8&n),o[a++]=!!(16&n),o[a++]=!!(32&n),o[a++]=!!(64&n),o[a++]=!!(128&n);if(a<r)for(i=0,n=this.readByte(e++);a<r;)o[a++]=!!(n>>i++&1);return t&&(this.offset=e),o},s.readBytes=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+e>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+"+e+") <= "+this.buffer.byteLength)}var r=this.slice(t,t+e);return n&&(this.offset+=e),r},s.writeBytes=s.append,s.writeInt8=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e|=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=1;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),this.view[t-1]=e,n&&(this.offset+=1),this},s.writeByte=s.writeInt8,s.readInt8=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+1) <= "+this.buffer.byteLength)}return e=this.view[e],128===(128&e)&&(e=-(255-e+1)),t&&(this.offset+=1),e},s.readByte=s.readInt8,s.writeUint8=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e>>>=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=1;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),this.view[t-1]=e,n&&(this.offset+=1),this},s.writeUInt8=s.writeUint8,s.readUint8=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+1>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+1) <= "+this.buffer.byteLength)}return e=this.view[e],t&&(this.offset+=1),e},s.readUInt8=s.readUint8,s.writeInt16=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e|=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=2;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),t-=2,this.littleEndian?(this.view[t+1]=(65280&e)>>>8,this.view[t]=255&e):(this.view[t]=(65280&e)>>>8,this.view[t+1]=255&e),n&&(this.offset+=2),this},s.writeShort=s.writeInt16,s.readInt16=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+2) <= "+this.buffer.byteLength)}var n=0;return this.littleEndian?(n=this.view[e],n|=this.view[e+1]<<8):(n=this.view[e]<<8,n|=this.view[e+1]),32768===(32768&n)&&(n=-(65535-n+1)),t&&(this.offset+=2),n},s.readShort=s.readInt16,s.writeUint16=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e>>>=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=2;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),t-=2,this.littleEndian?(this.view[t+1]=(65280&e)>>>8,this.view[t]=255&e):(this.view[t]=(65280&e)>>>8,this.view[t+1]=255&e),n&&(this.offset+=2),this},s.writeUInt16=s.writeUint16,s.readUint16=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+2>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+2) <= "+this.buffer.byteLength)}var n=0;return this.littleEndian?(n=this.view[e],n|=this.view[e+1]<<8):(n=this.view[e]<<8,n|=this.view[e+1]),t&&(this.offset+=2),n},s.readUInt16=s.readUint16,s.writeInt32=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e|=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=4;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),t-=4,this.littleEndian?(this.view[t+3]=e>>>24&255,this.view[t+2]=e>>>16&255,this.view[t+1]=e>>>8&255,this.view[t]=255&e):(this.view[t]=e>>>24&255,this.view[t+1]=e>>>16&255,this.view[t+2]=e>>>8&255,this.view[t+3]=255&e),n&&(this.offset+=4),this},s.writeInt=s.writeInt32,s.readInt32=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+4) <= "+this.buffer.byteLength)}var n=0;return this.littleEndian?(n=this.view[e+2]<<16,n|=this.view[e+1]<<8,n|=this.view[e],n+=this.view[e+3]<<24>>>0):(n=this.view[e+1]<<16,n|=this.view[e+2]<<8,n|=this.view[e+3],n+=this.view[e]<<24>>>0),t&&(this.offset+=4),0|n},s.readInt=s.readInt32,s.writeUint32=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal value: "+e+" (not an integer)");if(e>>>=0,"number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=4;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),t-=4,this.littleEndian?(this.view[t+3]=e>>>24&255,this.view[t+2]=e>>>16&255,this.view[t+1]=e>>>8&255,this.view[t]=255&e):(this.view[t]=e>>>24&255,this.view[t+1]=e>>>16&255,this.view[t+2]=e>>>8&255,this.view[t+3]=255&e),n&&(this.offset+=4),this},s.writeUInt32=s.writeUint32,s.readUint32=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+4) <= "+this.buffer.byteLength)}var n=0;return this.littleEndian?(n=this.view[e+2]<<16,n|=this.view[e+1]<<8,n|=this.view[e],n+=this.view[e+3]<<24>>>0):(n=this.view[e+1]<<16,n|=this.view[e+2]<<8,n|=this.view[e+3],n+=this.view[e]<<24>>>0),t&&(this.offset+=4),n},s.readUInt32=s.readUint32,e&&(s.writeInt64=function(t,n){var r="undefined"==typeof n;if(r&&(n=this.offset),!this.noAssert){if("number"==typeof t)t=e.fromNumber(t);else if("string"==typeof t)t=e.fromString(t);else if(!(t&&t instanceof e))throw TypeError("Illegal value: "+t+" (not an integer or Long)");if("number"!=typeof n||0!==n%1)throw TypeError("Illegal offset: "+n+" (not an integer)");if(n>>>=0,0>n||n+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+n+" (+0) <= "+this.buffer.byteLength)}"number"==typeof t?t=e.fromNumber(t):"string"==typeof t&&(t=e.fromString(t)),n+=8;var i=this.buffer.byteLength;n>i&&this.resize((i*=2)>n?i:n),n-=8;var i=t.low,a=t.high;return this.littleEndian?(this.view[n+3]=i>>>24&255,this.view[n+2]=i>>>16&255,this.view[n+1]=i>>>8&255,this.view[n]=255&i,n+=4,this.view[n+3]=a>>>24&255,this.view[n+2]=a>>>16&255,this.view[n+1]=a>>>8&255,this.view[n]=255&a):(this.view[n]=a>>>24&255,this.view[n+1]=a>>>16&255,this.view[n+2]=a>>>8&255,this.view[n+3]=255&a,n+=4,this.view[n]=i>>>24&255,this.view[n+1]=i>>>16&255,this.view[n+2]=i>>>8&255,this.view[n+3]=255&i),r&&(this.offset+=8),this},s.writeLong=s.writeInt64,s.readInt64=function(t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+8) <= "+this.buffer.byteLength)}var r=0,i=0;return this.littleEndian?(r=this.view[t+2]<<16,r|=this.view[t+1]<<8,r|=this.view[t],r+=this.view[t+3]<<24>>>0,t+=4,i=this.view[t+2]<<16,i|=this.view[t+1]<<8,i|=this.view[t],i+=this.view[t+3]<<24>>>0):(i=this.view[t+1]<<16,i|=this.view[t+2]<<8,i|=this.view[t+3],i+=this.view[t]<<24>>>0,t+=4,r=this.view[t+1]<<16,r|=this.view[t+2]<<8,r|=this.view[t+3],r+=this.view[t]<<24>>>0),t=new e(r,i,!1),n&&(this.offset+=8),t},s.readLong=s.readInt64,s.writeUint64=function(t,n){var r="undefined"==typeof n;if(r&&(n=this.offset),!this.noAssert){if("number"==typeof t)t=e.fromNumber(t);else if("string"==typeof t)t=e.fromString(t);else if(!(t&&t instanceof e))throw TypeError("Illegal value: "+t+" (not an integer or Long)");if("number"!=typeof n||0!==n%1)throw TypeError("Illegal offset: "+n+" (not an integer)");if(n>>>=0,0>n||n+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+n+" (+0) <= "+this.buffer.byteLength)}"number"==typeof t?t=e.fromNumber(t):"string"==typeof t&&(t=e.fromString(t)),n+=8;var i=this.buffer.byteLength;n>i&&this.resize((i*=2)>n?i:n),n-=8;var i=t.low,a=t.high;return this.littleEndian?(this.view[n+3]=i>>>24&255,this.view[n+2]=i>>>16&255,this.view[n+1]=i>>>8&255,this.view[n]=255&i,n+=4,this.view[n+3]=a>>>24&255,this.view[n+2]=a>>>16&255,this.view[n+1]=a>>>8&255,this.view[n]=255&a):(this.view[n]=a>>>24&255,this.view[n+1]=a>>>16&255,this.view[n+2]=a>>>8&255,this.view[n+3]=255&a,n+=4,this.view[n]=i>>>24&255,this.view[n+1]=i>>>16&255,this.view[n+2]=i>>>8&255,this.view[n+3]=255&i),r&&(this.offset+=8),this},s.writeUInt64=s.writeUint64,s.readUint64=function(t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+8>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+8) <= "+this.buffer.byteLength)}var r=0,i=0;return this.littleEndian?(r=this.view[t+2]<<16,r|=this.view[t+1]<<8,r|=this.view[t],r+=this.view[t+3]<<24>>>0,t+=4,i=this.view[t+2]<<16,i|=this.view[t+1]<<8,i|=this.view[t],i+=this.view[t+3]<<24>>>0):(i=this.view[t+1]<<16,i|=this.view[t+2]<<8,i|=this.view[t+3],i+=this.view[t]<<24>>>0,t+=4,r=this.view[t+1]<<16,r|=this.view[t+2]<<8,r|=this.view[t+3],r+=this.view[t]<<24>>>0),t=new e(r,i,!0),n&&(this.offset+=8),t},s.readUInt64=s.readUint64),s.writeFloat32=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e)throw TypeError("Illegal value: "+e+" (not a number)");if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");if(t>>>=0,0>t||t+0>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+t+" (+0) <= "+this.buffer.byteLength)}t+=4;var r=this.buffer.byteLength;return t>r&&this.resize((r*=2)>t?r:t),i(this.view,e,t-4,this.littleEndian,23,4),n&&(this.offset+=4),this},s.writeFloat=s.writeFloat32,s.readFloat32=function(e){var t="undefined"==typeof e;if(t&&(e=this.offset),!this.noAssert){if("number"!=typeof e||0!==e%1)throw TypeError("Illegal offset: "+e+" (not an integer)");if(e>>>=0,0>e||e+4>this.buffer.byteLength)throw RangeError("Illegal offset: 0 <= "+e+" (+4) <= "+this.buffer.byteLength)}return e=r(this.view,e,this.littleEndian,23,4),t&&(this.offset+=4),e},s.readFloat=s.readFloat32,s.writeFloat64=function(e,t){var n="undefined"==typeof t;if(n&&(t=this.offset),!this.noAssert){if("number"!=typeof e)throw TypeError("Illegal value: "+e+" (not a number)");if("number"!=typeof t||0!==t%1)throw TypeError("Illegal offset: "+t+" (not an integer)");
diff --git a/src/EngineEntrance.js b/src/EngineEntrance.js
index 081b27d..61ca2eb 100644
--- a/src/EngineEntrance.js
+++ b/src/EngineEntrance.js
@@ -28,7 +28,7 @@ import MediaModule from 'apes/MediaModule';
 import UTF8 from 'utf-8';
 
 let loger = Loger.getLoger('McuClient');
-let _sdkInfo = {"version": "v1.27.17.201705031", "author": "www.3mang.com"};
+let _sdkInfo = {"version": "v1.28.0.201705031", "author": "www.3mang.com"};
 
 //APE
 let _sass;
@@ -555,7 +555,9 @@ export default class MessageEntrance extends Emiter {
 
 
             //直播的时候,拉流(rtmp和hls)需要从 videoCDNAddr中获取
-            if(GlobalConfig.classType==ApeConsts.CLASS_TYPE_2&&GlobalConfig.videoCDNAddrList.length>0){
+            //20170531-新规则,所有课堂类型都支持加速
+            // if(GlobalConfig.classType==ApeConsts.CLASS_TYPE_2&&GlobalConfig.videoCDNAddrList.length>0){
+            if(GlobalConfig.videoCDNAddrList.length>0){
                 //videoCDNAddrList中rtmppush和hls是混在一起的,需要分离开;
                 let listLen=GlobalConfig.videoCDNAddrList.length;
                 for(let i=0;i<listLen;i++){