ucservice 2.8.0 → 2.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,5 +22,5 @@
22
22
  *
23
23
  * Date: 2021-02-16
24
24
  */
25
- function(e){var t,n,r,o,i,s,a,c,d,u,l,p,f,m,h,g,v,y,b,w="sizzle"+1*new Date,T=e.document,S=0,C=0,P=ce(),x=ce(),k=ce(),D=ce(),_=function(e,t){return e===t&&(l=!0),0},A={}.hasOwnProperty,I=[],R=I.pop,N=I.push,O=I.push,E=I.slice,M=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",j="[\\x20\\t\\r\\n\\f]",q="(?:\\\\[\\da-fA-F]{1,6}"+j+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",V="\\["+j+"*("+q+")(?:"+j+"*([*^$|!~]?=)"+j+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+q+"))|)"+j+"*\\]",B=":("+q+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+V+")*)|.*)\\)|)",F=new RegExp(j+"+","g"),W=new RegExp("^"+j+"+|((?:^|[^\\\\])(?:\\\\.)*)"+j+"+$","g"),H=new RegExp("^"+j+"*,"+j+"*"),U=new RegExp("^"+j+"*([>+~]|"+j+")"+j+"*"),z=new RegExp(j+"|>"),G=new RegExp(B),J=new RegExp("^"+q+"$"),$={ID:new RegExp("^#("+q+")"),CLASS:new RegExp("^\\.("+q+")"),TAG:new RegExp("^("+q+"|[*])"),ATTR:new RegExp("^"+V),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+j+"*(even|odd|(([+-]|)(\\d*)n|)"+j+"*(?:([+-]|)"+j+"*(\\d+)|))"+j+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+j+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+j+"*((?:-\\d)?\\d*)"+j+"*\\)|)(?=[^-]|$)","i")},Q=/HTML$/i,K=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+j+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,oe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ie=function(){p()},se=we((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{O.apply(I=E.call(T.childNodes),T.childNodes),I[T.childNodes.length].nodeType}catch(De){O={apply:I.length?function(e,t){N.apply(e,E.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function ae(e,t,r,o){var i,a,d,u,l,m,v,y=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!==typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!o&&(p(t),t=t||f,h)){if(11!==T&&(l=Z.exec(e)))if(i=l[1]){if(9===T){if(!(d=t.getElementById(i)))return r;if(d.id===i)return r.push(d),r}else if(y&&(d=y.getElementById(i))&&b(t,d)&&d.id===i)return r.push(d),r}else{if(l[2])return O.apply(r,t.getElementsByTagName(e)),r;if((i=l[3])&&n.getElementsByClassName&&t.getElementsByClassName)return O.apply(r,t.getElementsByClassName(i)),r}if(n.qsa&&!D[e+" "]&&(!g||!g.test(e))&&(1!==T||"object"!==t.nodeName.toLowerCase())){if(v=e,y=t,1===T&&(z.test(e)||U.test(e))){y=ee.test(e)&&ve(t.parentNode)||t,y===t&&n.scope||((u=t.getAttribute("id"))?u=u.replace(re,oe):t.setAttribute("id",u=w)),m=s(e),a=m.length;while(a--)m[a]=(u?"#"+u:":scope")+" "+be(m[a]);v=m.join(",")}try{return O.apply(r,y.querySelectorAll(v)),r}catch(S){D(e,!0)}finally{u===w&&t.removeAttribute("id")}}}return c(e.replace(W,"$1"),t,r,o)}function ce(){var e=[];function t(n,o){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=o}return t}function de(e){return e[w]=!0,e}function ue(e){var t=f.createElement("fieldset");try{return!!e(t)}catch(De){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),o=n.length;while(o--)r.attrHandle[n[o]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function me(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function he(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&se(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function ge(e){return de((function(t){return t=+t,de((function(n,r){var o,i=e([],n.length,t),s=i.length;while(s--)n[o=i[s]]&&(n[o]=!(r[o]=n[o]))}))}))}function ve(e){return e&&"undefined"!==typeof e.getElementsByTagName&&e}for(t in n=ae.support={},i=ae.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Q.test(t||n&&n.nodeName||"HTML")},p=ae.setDocument=function(e){var t,o,s=e?e.ownerDocument||e:T;return s!=f&&9===s.nodeType&&s.documentElement?(f=s,m=f.documentElement,h=!i(f),T!=f&&(o=f.defaultView)&&o.top!==o&&(o.addEventListener?o.addEventListener("unload",ie,!1):o.attachEvent&&o.attachEvent("onunload",ie)),n.scope=ue((function(e){return m.appendChild(e).appendChild(f.createElement("div")),"undefined"!==typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length})),n.attributes=ue((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=ue((function(e){return e.appendChild(f.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=Y.test(f.getElementsByClassName),n.getById=ue((function(e){return m.appendChild(e).id=w,!f.getElementsByName||!f.getElementsByName(w).length})),n.getById?(r.filter["ID"]=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find["ID"]=function(e,t){if("undefined"!==typeof t.getElementById&&h){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter["ID"]=function(e){var t=e.replace(te,ne);return function(e){var n="undefined"!==typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find["ID"]=function(e,t){if("undefined"!==typeof t.getElementById&&h){var n,r,o,i=t.getElementById(e);if(i){if(n=i.getAttributeNode("id"),n&&n.value===e)return[i];o=t.getElementsByName(e),r=0;while(i=o[r++])if(n=i.getAttributeNode("id"),n&&n.value===e)return[i]}return[]}}),r.find["TAG"]=n.getElementsByTagName?function(e,t){return"undefined"!==typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){while(n=i[o++])1===n.nodeType&&r.push(n);return r}return i},r.find["CLASS"]=n.getElementsByClassName&&function(e,t){if("undefined"!==typeof t.getElementsByClassName&&h)return t.getElementsByClassName(e)},v=[],g=[],(n.qsa=Y.test(f.querySelectorAll))&&(ue((function(e){var t;m.appendChild(e).innerHTML="<a id='"+w+"'></a><select id='"+w+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+j+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+j+"*(?:value|"+L+")"),e.querySelectorAll("[id~="+w+"-]").length||g.push("~="),t=f.createElement("input"),t.setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||g.push("\\["+j+"*name"+j+"*="+j+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+w+"+*").length||g.push(".#.+[+~]"),e.querySelectorAll("\\\f"),g.push("[\\r\\n\\f]")})),ue((function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=f.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+j+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),m.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")}))),(n.matchesSelector=Y.test(y=m.matches||m.webkitMatchesSelector||m.mozMatchesSelector||m.oMatchesSelector||m.msMatchesSelector))&&ue((function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),v.push("!=",B)})),g=g.length&&new RegExp(g.join("|")),v=v.length&&new RegExp(v.join("|")),t=Y.test(m.compareDocumentPosition),b=t||Y.test(m.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)while(t=t.parentNode)if(t===e)return!0;return!1},_=t?function(e,t){if(e===t)return l=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&r||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==f||e.ownerDocument==T&&b(T,e)?-1:t==f||t.ownerDocument==T&&b(T,t)?1:u?M(u,e)-M(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,s=[e],a=[t];if(!o||!i)return e==f?-1:t==f?1:o?-1:i?1:u?M(u,e)-M(u,t):0;if(o===i)return pe(e,t);n=e;while(n=n.parentNode)s.unshift(n);n=t;while(n=n.parentNode)a.unshift(n);while(s[r]===a[r])r++;return r?pe(s[r],a[r]):s[r]==T?-1:a[r]==T?1:0},f):f},ae.matches=function(e,t){return ae(e,null,null,t)},ae.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&h&&!D[t+" "]&&(!v||!v.test(t))&&(!g||!g.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(De){D(t,!0)}return ae(t,f,null,[e]).length>0},ae.contains=function(e,t){return(e.ownerDocument||e)!=f&&p(e),b(e,t)},ae.attr=function(e,t){(e.ownerDocument||e)!=f&&p(e);var o=r.attrHandle[t.toLowerCase()],i=o&&A.call(r.attrHandle,t.toLowerCase())?o(e,t,!h):void 0;return void 0!==i?i:n.attributes||!h?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},ae.escape=function(e){return(e+"").replace(re,oe)},ae.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ae.uniqueSort=function(e){var t,r=[],o=0,i=0;if(l=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort(_),l){while(t=e[i++])t===e[i]&&(o=r.push(i));while(o--)e.splice(r[o],1)}return u=null,e},o=ae.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+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},r=ae.selectors={cacheLength:50,createPseudo:de,match:$,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(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===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]||ae.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]&&ae.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return $["CHILD"].test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.test(n)&&(t=s(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(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=P[e+" "];return t||(t=new RegExp("(^|"+j+")"+e+"("+j+"|$)"))&&P(e,(function(e){return t.test("string"===typeof e.className&&e.className||"undefined"!==typeof e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var o=ae.attr(r,e);return null==o?"!="===t:!t||(o+="","="===t?o===n:"!="===t?o!==n:"^="===t?n&&0===o.indexOf(n):"*="===t?n&&o.indexOf(n)>-1:"$="===t?n&&o.slice(-n.length)===n:"~="===t?(" "+o.replace(F," ")+" ").indexOf(n)>-1:"|="===t&&(o===n||o.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,o){var i="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,c){var d,u,l,p,f,m,h=i!==s?"nextSibling":"previousSibling",g=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!c&&!a,b=!1;if(g){if(i){while(h){p=t;while(p=p[h])if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;m=h="only"===e&&!m&&"nextSibling"}return!0}if(m=[s?g.firstChild:g.lastChild],s&&y){p=g,l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),d=u[e]||[],f=d[0]===S&&d[1],b=f&&d[2],p=f&&g.childNodes[f];while(p=++f&&p&&p[h]||(b=f=0)||m.pop())if(1===p.nodeType&&++b&&p===t){u[e]=[S,f,b];break}}else if(y&&(p=t,l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),d=u[e]||[],f=d[0]===S&&d[1],b=f),!1===b)while(p=++f&&p&&p[h]||(b=f=0)||m.pop())if((a?p.nodeName.toLowerCase()===v:1===p.nodeType)&&++b&&(y&&(l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),u[e]=[S,b]),p===t))break;return b-=o,b===r||b%r===0&&b/r>=0}}},PSEUDO:function(e,t){var n,o=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ae.error("unsupported pseudo: "+e);return o[w]?o(t):o.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?de((function(e,n){var r,i=o(e,t),s=i.length;while(s--)r=M(e,i[s]),e[r]=!(n[r]=i[s])})):function(e){return o(e,0,n)}):o}},pseudos:{not:de((function(e){var t=[],n=[],r=a(e.replace(W,"$1"));return r[w]?de((function(e,t,n,o){var i,s=r(e,null,o,[]),a=e.length;while(a--)(i=s[a])&&(e[a]=!(t[a]=i))})):function(e,o,i){return t[0]=e,r(t,null,i,n),t[0]=null,!n.pop()}})),has:de((function(e){return function(t){return ae(e,t).length>0}})),contains:de((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||o(t)).indexOf(e)>-1}})),lang:de((function(e){return J.test(e||"")||ae.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=h?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===m},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:he(!1),disabled:he(!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,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos["empty"](e)},header:function(e){return X.test(e.nodeName)},input:function(e){return K.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:ge((function(){return[0]})),last:ge((function(e,t){return[t-1]})),eq:ge((function(e,t,n){return[n<0?n+t:n]})),even:ge((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ge((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ge((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ge((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}},r.pseudos["nth"]=r.pseudos["eq"],{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=fe(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=me(t);function ye(){}function be(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function we(e,t,n){var r=t.dir,o=t.next,i=o||r,s=n&&"parentNode"===i,a=C++;return t.first?function(t,n,o){while(t=t[r])if(1===t.nodeType||s)return e(t,n,o);return!1}:function(t,n,c){var d,u,l,p=[S,a];if(c){while(t=t[r])if((1===t.nodeType||s)&&e(t,n,c))return!0}else while(t=t[r])if(1===t.nodeType||s)if(l=t[w]||(t[w]={}),u=l[t.uniqueID]||(l[t.uniqueID]={}),o&&o===t.nodeName.toLowerCase())t=t[r]||t;else{if((d=u[i])&&d[0]===S&&d[1]===a)return p[2]=d[2];if(u[i]=p,p[2]=e(t,n,c))return!0}return!1}}function Te(e){return e.length>1?function(t,n,r){var o=e.length;while(o--)if(!e[o](t,n,r))return!1;return!0}:e[0]}function Se(e,t,n){for(var r=0,o=t.length;r<o;r++)ae(e,t[r],n);return n}function Ce(e,t,n,r,o){for(var i,s=[],a=0,c=e.length,d=null!=t;a<c;a++)(i=e[a])&&(n&&!n(i,r,o)||(s.push(i),d&&t.push(a)));return s}function Pe(e,t,n,r,o,i){return r&&!r[w]&&(r=Pe(r)),o&&!o[w]&&(o=Pe(o,i)),de((function(i,s,a,c){var d,u,l,p=[],f=[],m=s.length,h=i||Se(t||"*",a.nodeType?[a]:a,[]),g=!e||!i&&t?h:Ce(h,p,e,a,c),v=n?o||(i?e:m||r)?[]:s:g;if(n&&n(g,v,a,c),r){d=Ce(v,f),r(d,[],a,c),u=d.length;while(u--)(l=d[u])&&(v[f[u]]=!(g[f[u]]=l))}if(i){if(o||e){if(o){d=[],u=v.length;while(u--)(l=v[u])&&d.push(g[u]=l);o(null,v=[],d,c)}u=v.length;while(u--)(l=v[u])&&(d=o?M(i,l):p[u])>-1&&(i[d]=!(s[d]=l))}}else v=Ce(v===s?v.splice(m,v.length):v),o?o(null,s,v,c):O.apply(s,v)}))}function xe(e){for(var t,n,o,i=e.length,s=r.relative[e[0].type],a=s||r.relative[" "],c=s?1:0,u=we((function(e){return e===t}),a,!0),l=we((function(e){return M(t,e)>-1}),a,!0),p=[function(e,n,r){var o=!s&&(r||n!==d)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,o}];c<i;c++)if(n=r.relative[e[c].type])p=[we(Te(p),n)];else{if(n=r.filter[e[c].type].apply(null,e[c].matches),n[w]){for(o=++c;o<i;o++)if(r.relative[e[o].type])break;return Pe(c>1&&Te(p),c>1&&be(e.slice(0,c-1).concat({value:" "===e[c-2].type?"*":""})).replace(W,"$1"),n,c<o&&xe(e.slice(c,o)),o<i&&xe(e=e.slice(o)),o<i&&be(e))}p.push(n)}return Te(p)}function ke(e,t){var n=t.length>0,o=e.length>0,i=function(i,s,a,c,u){var l,m,g,v=0,y="0",b=i&&[],w=[],T=d,C=i||o&&r.find["TAG"]("*",u),P=S+=null==T?1:Math.random()||.1,x=C.length;for(u&&(d=s==f||s||u);y!==x&&null!=(l=C[y]);y++){if(o&&l){m=0,s||l.ownerDocument==f||(p(l),a=!h);while(g=e[m++])if(g(l,s||f,a)){c.push(l);break}u&&(S=P)}n&&((l=!g&&l)&&v--,i&&b.push(l))}if(v+=y,n&&y!==v){m=0;while(g=t[m++])g(b,w,s,a);if(i){if(v>0)while(y--)b[y]||w[y]||(w[y]=R.call(c));w=Ce(w)}O.apply(c,w),u&&!i&&w.length>0&&v+t.length>1&&ae.uniqueSort(c)}return u&&(S=P,d=T),b};return n?de(i):i}return ye.prototype=r.filters=r.pseudos,r.setFilters=new ye,s=ae.tokenize=function(e,t){var n,o,i,s,a,c,d,u=x[e+" "];if(u)return t?0:u.slice(0);a=e,c=[],d=r.preFilter;while(a){for(s in n&&!(o=H.exec(a))||(o&&(a=a.slice(o[0].length)||a),c.push(i=[])),n=!1,(o=U.exec(a))&&(n=o.shift(),i.push({value:n,type:o[0].replace(W," ")}),a=a.slice(n.length)),r.filter)!(o=$[s].exec(a))||d[s]&&!(o=d[s](o))||(n=o.shift(),i.push({value:n,type:s,matches:o}),a=a.slice(n.length));if(!n)break}return t?a.length:a?ae.error(e):x(e,c).slice(0)},a=ae.compile=function(e,t){var n,r=[],o=[],i=k[e+" "];if(!i){t||(t=s(e)),n=t.length;while(n--)i=xe(t[n]),i[w]?r.push(i):o.push(i);i=k(e,ke(o,r)),i.selector=e}return i},c=ae.select=function(e,t,n,o){var i,c,d,u,l,p="function"===typeof e&&e,f=!o&&s(e=p.selector||e);if(n=n||[],1===f.length){if(c=f[0]=f[0].slice(0),c.length>2&&"ID"===(d=c[0]).type&&9===t.nodeType&&h&&r.relative[c[1].type]){if(t=(r.find["ID"](d.matches[0].replace(te,ne),t)||[])[0],!t)return n;p&&(t=t.parentNode),e=e.slice(c.shift().value.length)}i=$["needsContext"].test(e)?0:c.length;while(i--){if(d=c[i],r.relative[u=d.type])break;if((l=r.find[u])&&(o=l(d.matches[0].replace(te,ne),ee.test(c[0].type)&&ve(t.parentNode)||t))){if(c.splice(i,1),e=o.length&&be(c),!e)return O.apply(n,o),n;break}}}return(p||a(e,f))(o,t,!h,n,!t||ee.test(e)&&ve(t.parentNode)||t),n},n.sortStable=w.split("").sort(_).join("")===w,n.detectDuplicates=!!l,p(),n.sortDetached=ue((function(e){return 1&e.compareDocumentPosition(f.createElement("fieldset"))})),ue((function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")}))||le("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ue((function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||le("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),ue((function(e){return null==e.getAttribute("disabled")}))||le(L,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),ae}(n);x.find=D,x.expr=D.selectors,x.expr[":"]=x.expr.pseudos,x.uniqueSort=x.unique=D.uniqueSort,x.text=D.getText,x.isXMLDoc=D.isXML,x.contains=D.contains,x.escapeSelector=D.escape;var _=function(e,t,n){var r=[],o=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(o&&x(e).is(n))break;r.push(e)}return r},A=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},I=x.expr.match.needsContext;function R(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function O(e,t,n){return y(t)?x.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?x.grep(e,(function(e){return e===t!==n})):"string"!==typeof t?x.grep(e,(function(e){return l.call(t,e)>-1!==n})):x.filter(t,e,n)}x.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,(function(e){return 1===e.nodeType})))},x.fn.extend({find:function(e){var t,n,r=this.length,o=this;if("string"!==typeof e)return this.pushStack(x(e).filter((function(){for(t=0;t<r;t++)if(x.contains(o[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)x.find(e,o[t],n);return r>1?x.uniqueSort(n):n},filter:function(e){return this.pushStack(O(this,e||[],!1))},not:function(e){return this.pushStack(O(this,e||[],!0))},is:function(e){return!!O(this,"string"===typeof e&&I.test(e)?x(e):e||[],!1).length}});var E,M=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,L=x.fn.init=function(e,t,n){var r,o;if(!e)return this;if(n=n||E,"string"===typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:M.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 x?t[0]:t,x.merge(this,x.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:w,!0)),N.test(r[1])&&x.isPlainObject(t))for(r in t)y(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return o=w.getElementById(r[2]),o&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):y(e)?void 0!==n.ready?n.ready(e):e(x):x.makeArray(e,this)};L.prototype=x.fn,E=x(w);var j=/^(?:parents|prev(?:Until|All))/,q={children:!0,contents:!0,next:!0,prev:!0};function V(e,t){while((e=e[t])&&1!==e.nodeType);return e}x.fn.extend({has:function(e){var t=x(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(x.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,o=this.length,i=[],s="string"!==typeof e&&x(e);if(!I.test(e))for(;r<o;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?x.uniqueSort(i):i)},index:function(e){return e?"string"===typeof e?l.call(x(e),this[0]):l.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(x.uniqueSort(x.merge(this.get(),x(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return _(e,"parentNode")},parentsUntil:function(e,t,n){return _(e,"parentNode",n)},next:function(e){return V(e,"nextSibling")},prev:function(e){return V(e,"previousSibling")},nextAll:function(e){return _(e,"nextSibling")},prevAll:function(e){return _(e,"previousSibling")},nextUntil:function(e,t,n){return _(e,"nextSibling",n)},prevUntil:function(e,t,n){return _(e,"previousSibling",n)},siblings:function(e){return A((e.parentNode||{}).firstChild,e)},children:function(e){return A(e.firstChild)},contents:function(e){return null!=e.contentDocument&&a(e.contentDocument)?e.contentDocument:(R(e,"template")&&(e=e.content||e),x.merge([],e.childNodes))}},(function(e,t){x.fn[e]=function(n,r){var o=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"===typeof r&&(o=x.filter(r,o)),this.length>1&&(q[e]||x.uniqueSort(o),j.test(e)&&o.reverse()),this.pushStack(o)}}));var B=/[^\x20\t\r\n\f]+/g;function F(e){var t={};return x.each(e.match(B)||[],(function(e,n){t[n]=!0})),t}function W(e){return e}function H(e){throw e}function U(e,t,n,r){var o;try{e&&y(o=e.promise)?o.call(e).done(t).fail(n):e&&y(o=e.then)?o.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}x.Callbacks=function(e){e="string"===typeof e?F(e):x.extend({},e);var t,n,r,o,i=[],s=[],a=-1,c=function(){for(o=o||e.once,r=t=!0;s.length;a=-1){n=s.shift();while(++a<i.length)!1===i[a].apply(n[0],n[1])&&e.stopOnFalse&&(a=i.length,n=!1)}e.memory||(n=!1),t=!1,o&&(i=n?[]:"")},d={add:function(){return i&&(n&&!t&&(a=i.length-1,s.push(n)),function t(n){x.each(n,(function(n,r){y(r)?e.unique&&d.has(r)||i.push(r):r&&r.length&&"string"!==C(r)&&t(r)}))}(arguments),n&&!t&&c()),this},remove:function(){return x.each(arguments,(function(e,t){var n;while((n=x.inArray(t,i,n))>-1)i.splice(n,1),n<=a&&a--})),this},has:function(e){return e?x.inArray(e,i)>-1:i.length>0},empty:function(){return i&&(i=[]),this},disable:function(){return o=s=[],i=n="",this},disabled:function(){return!i},lock:function(){return o=s=[],n||t||(i=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||c()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!r}};return d},x.extend({Deferred:function(e){var t=[["notify","progress",x.Callbacks("memory"),x.Callbacks("memory"),2],["resolve","done",x.Callbacks("once memory"),x.Callbacks("once memory"),0,"resolved"],["reject","fail",x.Callbacks("once memory"),x.Callbacks("once memory"),1,"rejected"]],r="pending",o={state:function(){return r},always:function(){return i.done(arguments).fail(arguments),this},catch:function(e){return o.then(null,e)},pipe:function(){var e=arguments;return x.Deferred((function(n){x.each(t,(function(t,r){var o=y(e[r[4]])&&e[r[4]];i[r[1]]((function(){var e=o&&o.apply(this,arguments);e&&y(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,o?[e]:arguments)}))})),e=null})).promise()},then:function(e,r,o){var i=0;function s(e,t,r,o){return function(){var a=this,c=arguments,d=function(){var n,d;if(!(e<i)){if(n=r.apply(a,c),n===t.promise())throw new TypeError("Thenable self-resolution");d=n&&("object"===typeof n||"function"===typeof n)&&n.then,y(d)?o?d.call(n,s(i,t,W,o),s(i,t,H,o)):(i++,d.call(n,s(i,t,W,o),s(i,t,H,o),s(i,t,W,t.notifyWith))):(r!==W&&(a=void 0,c=[n]),(o||t.resolveWith)(a,c))}},u=o?d:function(){try{d()}catch(n){x.Deferred.exceptionHook&&x.Deferred.exceptionHook(n,u.stackTrace),e+1>=i&&(r!==H&&(a=void 0,c=[n]),t.rejectWith(a,c))}};e?u():(x.Deferred.getStackHook&&(u.stackTrace=x.Deferred.getStackHook()),n.setTimeout(u))}}return x.Deferred((function(n){t[0][3].add(s(0,n,y(o)?o:W,n.notifyWith)),t[1][3].add(s(0,n,y(e)?e:W)),t[2][3].add(s(0,n,y(r)?r:H))})).promise()},promise:function(e){return null!=e?x.extend(e,o):o}},i={};return x.each(t,(function(e,n){var s=n[2],a=n[5];o[n[1]]=s.add,a&&s.add((function(){r=a}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),s.add(n[3].fire),i[n[0]]=function(){return i[n[0]+"With"](this===i?void 0:this,arguments),this},i[n[0]+"With"]=s.fireWith})),o.promise(i),e&&e.call(i,i),i},when:function(e){var t=arguments.length,n=t,r=Array(n),o=c.call(arguments),i=x.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?c.call(arguments):n,--t||i.resolveWith(r,o)}};if(t<=1&&(U(e,i.done(s(n)).resolve,i.reject,!t),"pending"===i.state()||y(o[n]&&o[n].then)))return i.then();while(n--)U(o[n],s(n),i.reject);return i.promise()}});var z=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;x.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&z.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},x.readyException=function(e){n.setTimeout((function(){throw e}))};var G=x.Deferred();function J(){w.removeEventListener("DOMContentLoaded",J),n.removeEventListener("load",J),x.ready()}x.fn.ready=function(e){return G.then(e).catch((function(e){x.readyException(e)})),this},x.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--x.readyWait:x.isReady)||(x.isReady=!0,!0!==e&&--x.readyWait>0||G.resolveWith(w,[x]))}}),x.ready.then=G.then,"complete"===w.readyState||"loading"!==w.readyState&&!w.documentElement.doScroll?n.setTimeout(x.ready):(w.addEventListener("DOMContentLoaded",J),n.addEventListener("load",J));var $=function(e,t,n,r,o,i,s){var a=0,c=e.length,d=null==n;if("object"===C(n))for(a in o=!0,n)$(e,t,a,n[a],!0,i,s);else if(void 0!==r&&(o=!0,y(r)||(s=!0),d&&(s?(t.call(e,r),t=null):(d=t,t=function(e,t,n){return d.call(x(e),n)})),t))for(;a<c;a++)t(e[a],n,s?r:r.call(e[a],a,t(e[a],n)));return o?e:d?t.call(e):c?t(e[0],n):i},Q=/^-ms-/,K=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function Y(e){return e.replace(Q,"ms-").replace(K,X)}var Z=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function ee(){this.expando=x.expando+ee.uid++}ee.uid=1,ee.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Z(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,o=this.cache(e);if("string"===typeof t)o[Y(t)]=n;else for(r in t)o[Y(r)]=t[r];return o},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][Y(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){Array.isArray(t)?t=t.map(Y):(t=Y(t),t=t in r?[t]:t.match(B)||[]),n=t.length;while(n--)delete r[t[n]]}(void 0===t||x.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&&!x.isEmptyObject(t)}};var te=new ee,ne=new ee,re=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,oe=/[A-Z]/g;function ie(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:re.test(e)?JSON.parse(e):e)}function se(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(oe,"-$&").toLowerCase(),n=e.getAttribute(r),"string"===typeof n){try{n=ie(n)}catch(o){}ne.set(e,t,n)}else n=void 0;return n}x.extend({hasData:function(e){return ne.hasData(e)||te.hasData(e)},data:function(e,t,n){return ne.access(e,t,n)},removeData:function(e,t){ne.remove(e,t)},_data:function(e,t,n){return te.access(e,t,n)},_removeData:function(e,t){te.remove(e,t)}}),x.fn.extend({data:function(e,t){var n,r,o,i=this[0],s=i&&i.attributes;if(void 0===e){if(this.length&&(o=ne.get(i),1===i.nodeType&&!te.get(i,"hasDataAttrs"))){n=s.length;while(n--)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=Y(r.slice(5)),se(i,r,o[r])));te.set(i,"hasDataAttrs",!0)}return o}return"object"===typeof e?this.each((function(){ne.set(this,e)})):$(this,(function(t){var n;if(i&&void 0===t)return n=ne.get(i,e),void 0!==n?n:(n=se(i,e),void 0!==n?n:void 0);this.each((function(){ne.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){ne.remove(this,e)}))}}),x.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=te.get(e,t),n&&(!r||Array.isArray(n)?r=te.access(e,t,x.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,o=n.shift(),i=x._queueHooks(e,t),s=function(){x.dequeue(e,t)};"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete i.stop,o.call(e,s,i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return te.get(e,n)||te.access(e,n,{empty:x.Callbacks("once memory").add((function(){te.remove(e,[t+"queue",n])}))})}}),x.fn.extend({queue:function(e,t){var n=2;return"string"!==typeof e&&(t=e,e="fx",n--),arguments.length<n?x.queue(this[0],e):void 0===t?this:this.each((function(){var n=x.queue(this,e,t);x._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&x.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){x.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,o=x.Deferred(),i=this,s=this.length,a=function(){--r||o.resolveWith(i,[i])};"string"!==typeof e&&(t=e,e=void 0),e=e||"fx";while(s--)n=te.get(i[s],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(a));return a(),o.promise(t)}});var ae=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ce=new RegExp("^(?:([+-])=|)("+ae+")([a-z%]*)$","i"),de=["Top","Right","Bottom","Left"],ue=w.documentElement,le=function(e){return x.contains(e.ownerDocument,e)},pe={composed:!0};ue.getRootNode&&(le=function(e){return x.contains(e.ownerDocument,e)||e.getRootNode(pe)===e.ownerDocument});var fe=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&le(e)&&"none"===x.css(e,"display")};function me(e,t,n,r){var o,i,s=20,a=r?function(){return r.cur()}:function(){return x.css(e,t,"")},c=a(),d=n&&n[3]||(x.cssNumber[t]?"":"px"),u=e.nodeType&&(x.cssNumber[t]||"px"!==d&&+c)&&ce.exec(x.css(e,t));if(u&&u[3]!==d){c/=2,d=d||u[3],u=+c||1;while(s--)x.style(e,t,u+d),(1-i)*(1-(i=a()/c||.5))<=0&&(s=0),u/=i;u*=2,x.style(e,t,u+d),n=n||[]}return n&&(u=+u||+c||0,o=n[1]?u+(n[1]+1)*n[2]:+n[2],r&&(r.unit=d,r.start=u,r.end=o)),o}var he={};function ge(e){var t,n=e.ownerDocument,r=e.nodeName,o=he[r];return o||(t=n.body.appendChild(n.createElement(r)),o=x.css(t,"display"),t.parentNode.removeChild(t),"none"===o&&(o="block"),he[r]=o,o)}function ve(e,t){for(var n,r,o=[],i=0,s=e.length;i<s;i++)r=e[i],r.style&&(n=r.style.display,t?("none"===n&&(o[i]=te.get(r,"display")||null,o[i]||(r.style.display="")),""===r.style.display&&fe(r)&&(o[i]=ge(r))):"none"!==n&&(o[i]="none",te.set(r,"display",n)));for(i=0;i<s;i++)null!=o[i]&&(e[i].style.display=o[i]);return e}x.fn.extend({show:function(){return ve(this,!0)},hide:function(){return ve(this)},toggle:function(e){return"boolean"===typeof e?e?this.show():this.hide():this.each((function(){fe(this)?x(this).show():x(this).hide()}))}});var ye=/^(?:checkbox|radio)$/i,be=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,we=/^$|^module$|\/(?:java|ecma)script/i;(function(){var e=w.createDocumentFragment(),t=e.appendChild(w.createElement("div")),n=w.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),v.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",v.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue,t.innerHTML="<option></option>",v.option=!!t.lastChild})();var Te={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,"",""]};function Se(e,t){var n;return n="undefined"!==typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!==typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&R(e,t)?x.merge([e],n):n}function Ce(e,t){for(var n=0,r=e.length;n<r;n++)te.set(e[n],"globalEval",!t||te.get(t[n],"globalEval"))}Te.tbody=Te.tfoot=Te.colgroup=Te.caption=Te.thead,Te.th=Te.td,v.option||(Te.optgroup=Te.option=[1,"<select multiple='multiple'>","</select>"]);var Pe=/<|&#?\w+;/;function xe(e,t,n,r,o){for(var i,s,a,c,d,u,l=t.createDocumentFragment(),p=[],f=0,m=e.length;f<m;f++)if(i=e[f],i||0===i)if("object"===C(i))x.merge(p,i.nodeType?[i]:i);else if(Pe.test(i)){s=s||l.appendChild(t.createElement("div")),a=(be.exec(i)||["",""])[1].toLowerCase(),c=Te[a]||Te._default,s.innerHTML=c[1]+x.htmlPrefilter(i)+c[2],u=c[0];while(u--)s=s.lastChild;x.merge(p,s.childNodes),s=l.firstChild,s.textContent=""}else p.push(t.createTextNode(i));l.textContent="",f=0;while(i=p[f++])if(r&&x.inArray(i,r)>-1)o&&o.push(i);else if(d=le(i),s=Se(l.appendChild(i),"script"),d&&Ce(s),n){u=0;while(i=s[u++])we.test(i.type||"")&&n.push(i)}return l}var ke=/^([^.]*)(?:\.(.+)|)/;function De(){return!0}function _e(){return!1}function Ae(e,t){return e===Ie()===("focus"===t)}function Ie(){try{return w.activeElement}catch(e){}}function Re(e,t,n,r,o,i){var s,a;if("object"===typeof t){for(a in"string"!==typeof n&&(r=r||n,n=void 0),t)Re(e,a,n,r,t[a],i);return e}if(null==r&&null==o?(o=n,r=n=void 0):null==o&&("string"===typeof n?(o=r,r=void 0):(o=r,r=n,n=void 0)),!1===o)o=_e;else if(!o)return e;return 1===i&&(s=o,o=function(e){return x().off(e),s.apply(this,arguments)},o.guid=s.guid||(s.guid=x.guid++)),e.each((function(){x.event.add(this,t,o,r,n)}))}function Ne(e,t,n){n?(te.set(e,t,!1),x.event.add(e,t,{namespace:!1,handler:function(e){var r,o,i=te.get(this,t);if(1&e.isTrigger&&this[t]){if(i.length)(x.event.special[t]||{}).delegateType&&e.stopPropagation();else if(i=c.call(arguments),te.set(this,t,i),r=n(this,t),this[t](),o=te.get(this,t),i!==o||r?te.set(this,t,!1):o={},i!==o)return e.stopImmediatePropagation(),e.preventDefault(),o&&o.value}else i.length&&(te.set(this,t,{value:x.event.trigger(x.extend(i[0],x.Event.prototype),i.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===te.get(e,t)&&x.event.add(e,t,De)}x.event={global:{},add:function(e,t,n,r,o){var i,s,a,c,d,u,l,p,f,m,h,g=te.get(e);if(Z(e)){n.handler&&(i=n,n=i.handler,o=i.selector),o&&x.find.matchesSelector(ue,o),n.guid||(n.guid=x.guid++),(c=g.events)||(c=g.events=Object.create(null)),(s=g.handle)||(s=g.handle=function(t){return"undefined"!==typeof x&&x.event.triggered!==t.type?x.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(B)||[""],d=t.length;while(d--)a=ke.exec(t[d])||[],f=h=a[1],m=(a[2]||"").split(".").sort(),f&&(l=x.event.special[f]||{},f=(o?l.delegateType:l.bindType)||f,l=x.event.special[f]||{},u=x.extend({type:f,origType:h,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&x.expr.match.needsContext.test(o),namespace:m.join(".")},i),(p=c[f])||(p=c[f]=[],p.delegateCount=0,l.setup&&!1!==l.setup.call(e,r,m,s)||e.addEventListener&&e.addEventListener(f,s)),l.add&&(l.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),o?p.splice(p.delegateCount++,0,u):p.push(u),x.event.global[f]=!0)}},remove:function(e,t,n,r,o){var i,s,a,c,d,u,l,p,f,m,h,g=te.hasData(e)&&te.get(e);if(g&&(c=g.events)){t=(t||"").match(B)||[""],d=t.length;while(d--)if(a=ke.exec(t[d])||[],f=h=a[1],m=(a[2]||"").split(".").sort(),f){l=x.event.special[f]||{},f=(r?l.delegateType:l.bindType)||f,p=c[f]||[],a=a[2]&&new RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=i=p.length;while(i--)u=p[i],!o&&h!==u.origType||n&&n.guid!==u.guid||a&&!a.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,l.remove&&l.remove.call(e,u));s&&!p.length&&(l.teardown&&!1!==l.teardown.call(e,m,g.handle)||x.removeEvent(e,f,g.handle),delete c[f])}else for(f in c)x.event.remove(e,f+t[d],n,r,!0);x.isEmptyObject(c)&&te.remove(e,"handle events")}},dispatch:function(e){var t,n,r,o,i,s,a=new Array(arguments.length),c=x.event.fix(e),d=(te.get(this,"events")||Object.create(null))[c.type]||[],u=x.event.special[c.type]||{};for(a[0]=c,t=1;t<arguments.length;t++)a[t]=arguments[t];if(c.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,c)){s=x.event.handlers.call(this,c,d),t=0;while((o=s[t++])&&!c.isPropagationStopped()){c.currentTarget=o.elem,n=0;while((i=o.handlers[n++])&&!c.isImmediatePropagationStopped())c.rnamespace&&!1!==i.namespace&&!c.rnamespace.test(i.namespace)||(c.handleObj=i,c.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,a),void 0!==r&&!1===(c.result=r)&&(c.preventDefault(),c.stopPropagation()))}return u.postDispatch&&u.postDispatch.call(this,c),c.result}},handlers:function(e,t){var n,r,o,i,s,a=[],c=t.delegateCount,d=e.target;if(c&&d.nodeType&&!("click"===e.type&&e.button>=1))for(;d!==this;d=d.parentNode||this)if(1===d.nodeType&&("click"!==e.type||!0!==d.disabled)){for(i=[],s={},n=0;n<c;n++)r=t[n],o=r.selector+" ",void 0===s[o]&&(s[o]=r.needsContext?x(o,this).index(d)>-1:x.find(o,this,null,[d]).length),s[o]&&i.push(r);i.length&&a.push({elem:d,handlers:i})}return d=this,c<t.length&&a.push({elem:d,handlers:t.slice(c)}),a},addProp:function(e,t){Object.defineProperty(x.Event.prototype,e,{enumerable:!0,configurable:!0,get:y(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[x.expando]?e:new x.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return ye.test(t.type)&&t.click&&R(t,"input")&&Ne(t,"click",De),!1},trigger:function(e){var t=this||e;return ye.test(t.type)&&t.click&&R(t,"input")&&Ne(t,"click"),!0},_default:function(e){var t=e.target;return ye.test(t.type)&&t.click&&R(t,"input")&&te.get(t,"click")||R(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},x.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},x.Event=function(e,t){if(!(this instanceof x.Event))return new x.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?De:_e,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&&x.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[x.expando]=!0},x.Event.prototype={constructor:x.Event,isDefaultPrevented:_e,isPropagationStopped:_e,isImmediatePropagationStopped:_e,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=De,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=De,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=De,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},x.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,code:!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:!0},x.event.addProp),x.each({focus:"focusin",blur:"focusout"},(function(e,t){x.event.special[e]={setup:function(){return Ne(this,e,Ae),!1},trigger:function(){return Ne(this,e),!0},_default:function(){return!0},delegateType:t}})),x.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},(function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,o=e.relatedTarget,i=e.handleObj;return o&&(o===r||x.contains(r,o))||(e.type=i.origType,n=i.handler.apply(this,arguments),e.type=t),n}}})),x.fn.extend({on:function(e,t,n,r){return Re(this,e,t,n,r)},one:function(e,t,n,r){return Re(this,e,t,n,r,1)},off:function(e,t,n){var r,o;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,x(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===typeof e){for(o in e)this.off(o,t,e[o]);return this}return!1!==t&&"function"!==typeof t||(n=t,t=void 0),!1===n&&(n=_e),this.each((function(){x.event.remove(this,e,n,t)}))}});var Oe=/<script|<style|<link/i,Ee=/checked\s*(?:[^=]|=\s*.checked.)/i,Me=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Le(e,t){return R(e,"table")&&R(11!==t.nodeType?t:t.firstChild,"tr")&&x(e).children("tbody")[0]||e}function je(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ve(e,t){var n,r,o,i,s,a,c;if(1===t.nodeType){if(te.hasData(e)&&(i=te.get(e),c=i.events,c))for(o in te.remove(t,"handle events"),c)for(n=0,r=c[o].length;n<r;n++)x.event.add(t,o,c[o][n]);ne.hasData(e)&&(s=ne.access(e),a=x.extend({},s),ne.set(t,a))}}function Be(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ye.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function Fe(e,t,n,r){t=d(t);var o,i,s,a,c,u,l=0,p=e.length,f=p-1,m=t[0],h=y(m);if(h||p>1&&"string"===typeof m&&!v.checkClone&&Ee.test(m))return e.each((function(o){var i=e.eq(o);h&&(t[0]=m.call(this,o,i.html())),Fe(i,t,n,r)}));if(p&&(o=xe(t,e[0].ownerDocument,!1,e,r),i=o.firstChild,1===o.childNodes.length&&(o=i),i||r)){for(s=x.map(Se(o,"script"),je),a=s.length;l<p;l++)c=o,l!==f&&(c=x.clone(c,!0,!0),a&&x.merge(s,Se(c,"script"))),n.call(e[l],c,l);if(a)for(u=s[s.length-1].ownerDocument,x.map(s,qe),l=0;l<a;l++)c=s[l],we.test(c.type||"")&&!te.access(c,"globalEval")&&x.contains(u,c)&&(c.src&&"module"!==(c.type||"").toLowerCase()?x._evalUrl&&!c.noModule&&x._evalUrl(c.src,{nonce:c.nonce||c.getAttribute("nonce")},u):S(c.textContent.replace(Me,""),c,u))}return e}function We(e,t,n){for(var r,o=t?x.filter(t,e):e,i=0;null!=(r=o[i]);i++)n||1!==r.nodeType||x.cleanData(Se(r)),r.parentNode&&(n&&le(r)&&Ce(Se(r,"script")),r.parentNode.removeChild(r));return e}x.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,o,i,s,a=e.cloneNode(!0),c=le(e);if(!v.noCloneChecked&&(1===e.nodeType||11===e.nodeType)&&!x.isXMLDoc(e))for(s=Se(a),i=Se(e),r=0,o=i.length;r<o;r++)Be(i[r],s[r]);if(t)if(n)for(i=i||Se(e),s=s||Se(a),r=0,o=i.length;r<o;r++)Ve(i[r],s[r]);else Ve(e,a);return s=Se(a,"script"),s.length>0&&Ce(s,!c&&Se(e,"script")),a},cleanData:function(e){for(var t,n,r,o=x.event.special,i=0;void 0!==(n=e[i]);i++)if(Z(n)){if(t=n[te.expando]){if(t.events)for(r in t.events)o[r]?x.event.remove(n,r):x.removeEvent(n,r,t.handle);n[te.expando]=void 0}n[ne.expando]&&(n[ne.expando]=void 0)}}}),x.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return $(this,(function(e){return void 0===e?x.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 Fe(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.appendChild(e)}}))},prepend:function(){return Fe(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Fe(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Fe(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&&(x.cleanData(Se(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return x.clone(this,e,t)}))},html:function(e){return $(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&&!Oe.test(e)&&!Te[(be.exec(e)||["",""])[1].toLowerCase()]){e=x.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(x.cleanData(Se(t,!1)),t.innerHTML=e);t=0}catch(o){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Fe(this,arguments,(function(t){var n=this.parentNode;x.inArray(this,e)<0&&(x.cleanData(Se(this)),n&&n.replaceChild(t,this))}),e)}}),x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(e,t){x.fn[e]=function(e){for(var n,r=[],o=x(e),i=o.length-1,s=0;s<=i;s++)n=s===i?this:this.clone(!0),x(o[s])[t](n),u.apply(r,n.get());return this.pushStack(r)}}));var He=new RegExp("^("+ae+")(?!px)[a-z%]+$","i"),Ue=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=n),t.getComputedStyle(e)},ze=function(e,t,n){var r,o,i={};for(o in t)i[o]=e.style[o],e.style[o]=t[o];for(o in r=n.call(e),t)e.style[o]=i[o];return r},Ge=new RegExp(de.join("|"),"i");function Je(e,t,n){var r,o,i,s,a=e.style;return n=n||Ue(e),n&&(s=n.getPropertyValue(t)||n[t],""!==s||le(e)||(s=x.style(e,t)),!v.pixelBoxStyles()&&He.test(s)&&Ge.test(t)&&(r=a.width,o=a.minWidth,i=a.maxWidth,a.minWidth=a.maxWidth=a.width=s,s=n.width,a.width=r,a.minWidth=o,a.maxWidth=i)),void 0!==s?s+"":s}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}(function(){function e(){if(u){d.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ue.appendChild(d).appendChild(u);var e=n.getComputedStyle(u);r="1%"!==e.top,c=12===t(e.marginLeft),u.style.right="60%",s=36===t(e.right),o=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ue.removeChild(d),u=null}}function t(e){return Math.round(parseFloat(e))}var r,o,i,s,a,c,d=w.createElement("div"),u=w.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",v.clearCloneStyle="content-box"===u.style.backgroundClip,x.extend(v,{boxSizingReliable:function(){return e(),o},pixelBoxStyles:function(){return e(),s},pixelPosition:function(){return e(),r},reliableMarginLeft:function(){return e(),c},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,r,o;return null==a&&(e=w.createElement("table"),t=w.createElement("tr"),r=w.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",r.style.height="9px",r.style.display="block",ue.appendChild(e).appendChild(t).appendChild(r),o=n.getComputedStyle(t),a=parseInt(o.height,10)+parseInt(o.borderTopWidth,10)+parseInt(o.borderBottomWidth,10)===t.offsetHeight,ue.removeChild(e)),a}}))})();var Qe=["Webkit","Moz","ms"],Ke=w.createElement("div").style,Xe={};function Ye(e){var t=e[0].toUpperCase()+e.slice(1),n=Qe.length;while(n--)if(e=Qe[n]+t,e in Ke)return e}function Ze(e){var t=x.cssProps[e]||Xe[e];return t||(e in Ke?e:Xe[e]=Ye(e)||e)}var et=/^(none|table(?!-c[ea]).+)/,tt=/^--/,nt={position:"absolute",visibility:"hidden",display:"block"},rt={letterSpacing:"0",fontWeight:"400"};function ot(e,t,n){var r=ce.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function it(e,t,n,r,o,i){var s="width"===t?1:0,a=0,c=0;if(n===(r?"border":"content"))return 0;for(;s<4;s+=2)"margin"===n&&(c+=x.css(e,n+de[s],!0,o)),r?("content"===n&&(c-=x.css(e,"padding"+de[s],!0,o)),"margin"!==n&&(c-=x.css(e,"border"+de[s]+"Width",!0,o))):(c+=x.css(e,"padding"+de[s],!0,o),"padding"!==n?c+=x.css(e,"border"+de[s]+"Width",!0,o):a+=x.css(e,"border"+de[s]+"Width",!0,o));return!r&&i>=0&&(c+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-i-c-a-.5))||0),c}function st(e,t,n){var r=Ue(e),o=!v.boxSizingReliable()||n,i=o&&"border-box"===x.css(e,"boxSizing",!1,r),s=i,a=Je(e,t,r),c="offset"+t[0].toUpperCase()+t.slice(1);if(He.test(a)){if(!n)return a;a="auto"}return(!v.boxSizingReliable()&&i||!v.reliableTrDimensions()&&R(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===x.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===x.css(e,"boxSizing",!1,r),s=c in e,s&&(a=e[c])),a=parseFloat(a)||0,a+it(e,t,n||(i?"border":"content"),s,r,a)+"px"}function at(e,t,n,r,o){return new at.prototype.init(e,t,n,r,o)}x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Je(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,i,s,a=Y(t),c=tt.test(t),d=e.style;if(c||(t=Ze(a)),s=x.cssHooks[t]||x.cssHooks[a],void 0===n)return s&&"get"in s&&void 0!==(o=s.get(e,!1,r))?o:d[t];i=typeof n,"string"===i&&(o=ce.exec(n))&&o[1]&&(n=me(e,t,o),i="number"),null!=n&&n===n&&("number"!==i||c||(n+=o&&o[3]||(x.cssNumber[a]?"":"px")),v.clearCloneStyle||""!==n||0!==t.indexOf("background")||(d[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(c?d.setProperty(t,n):d[t]=n))}},css:function(e,t,n,r){var o,i,s,a=Y(t),c=tt.test(t);return c||(t=Ze(a)),s=x.cssHooks[t]||x.cssHooks[a],s&&"get"in s&&(o=s.get(e,!0,n)),void 0===o&&(o=Je(e,t,r)),"normal"===o&&t in rt&&(o=rt[t]),""===n||n?(i=parseFloat(o),!0===n||isFinite(i)?i||0:o):o}}),x.each(["height","width"],(function(e,t){x.cssHooks[t]={get:function(e,n,r){if(n)return!et.test(x.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?st(e,t,r):ze(e,nt,(function(){return st(e,t,r)}))},set:function(e,n,r){var o,i=Ue(e),s=!v.scrollboxSize()&&"absolute"===i.position,a=s||r,c=a&&"border-box"===x.css(e,"boxSizing",!1,i),d=r?it(e,t,r,c,i):0;return c&&s&&(d-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(i[t])-it(e,t,"border",!1,i)-.5)),d&&(o=ce.exec(n))&&"px"!==(o[3]||"px")&&(e.style[t]=n,n=x.css(e,t)),ot(e,n,d)}}})),x.cssHooks.marginLeft=$e(v.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Je(e,"marginLeft"))||e.getBoundingClientRect().left-ze(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),x.each({margin:"",padding:"",border:"Width"},(function(e,t){x.cssHooks[e+t]={expand:function(n){for(var r=0,o={},i="string"===typeof n?n.split(" "):[n];r<4;r++)o[e+de[r]+t]=i[r]||i[r-2]||i[0];return o}},"margin"!==e&&(x.cssHooks[e+t].set=ot)})),x.fn.extend({css:function(e,t){return $(this,(function(e,t,n){var r,o,i={},s=0;if(Array.isArray(t)){for(r=Ue(e),o=t.length;s<o;s++)i[t[s]]=x.css(e,t[s],!1,r);return i}return void 0!==n?x.style(e,t,n):x.css(e,t)}),e,t,arguments.length>1)}}),x.Tween=at,at.prototype={constructor:at,init:function(e,t,n,r,o,i){this.elem=e,this.prop=n,this.easing=o||x.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(x.cssNumber[n]?"":"px")},cur:function(){var e=at.propHooks[this.prop];return e&&e.get?e.get(this):at.propHooks._default.get(this)},run:function(e){var t,n=at.propHooks[this.prop];return this.options.duration?this.pos=t=x.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):at.propHooks._default.set(this),this}},at.prototype.init.prototype=at.prototype,at.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=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):1!==e.elem.nodeType||!x.cssHooks[e.prop]&&null==e.elem.style[Ze(e.prop)]?e.elem[e.prop]=e.now:x.style(e.elem,e.prop,e.now+e.unit)}}},at.propHooks.scrollTop=at.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},x.fx=at.prototype.init,x.fx.step={};var ct,dt,ut=/^(?:toggle|show|hide)$/,lt=/queueHooks$/;function pt(){dt&&(!1===w.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(pt):n.setTimeout(pt,x.fx.interval),x.fx.tick())}function ft(){return n.setTimeout((function(){ct=void 0})),ct=Date.now()}function mt(e,t){var n,r=0,o={height:e};for(t=t?1:0;r<4;r+=2-t)n=de[r],o["margin"+n]=o["padding"+n]=e;return t&&(o.opacity=o.width=e),o}function ht(e,t,n){for(var r,o=(yt.tweeners[t]||[]).concat(yt.tweeners["*"]),i=0,s=o.length;i<s;i++)if(r=o[i].call(n,t,e))return r}function gt(e,t,n){var r,o,i,s,a,c,d,u,l="width"in t||"height"in t,p=this,f={},m=e.style,h=e.nodeType&&fe(e),g=te.get(e,"fxshow");for(r in n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,a=s.empty.fire,s.empty.fire=function(){s.unqueued||a()}),s.unqueued++,p.always((function(){p.always((function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()}))}))),t)if(o=t[r],ut.test(o)){if(delete t[r],i=i||"toggle"===o,o===(h?"hide":"show")){if("show"!==o||!g||void 0===g[r])continue;h=!0}f[r]=g&&g[r]||x.style(e,r)}if(c=!x.isEmptyObject(t),c||!x.isEmptyObject(f))for(r in l&&1===e.nodeType&&(n.overflow=[m.overflow,m.overflowX,m.overflowY],d=g&&g.display,null==d&&(d=te.get(e,"display")),u=x.css(e,"display"),"none"===u&&(d?u=d:(ve([e],!0),d=e.style.display||d,u=x.css(e,"display"),ve([e]))),("inline"===u||"inline-block"===u&&null!=d)&&"none"===x.css(e,"float")&&(c||(p.done((function(){m.display=d})),null==d&&(u=m.display,d="none"===u?"":u)),m.display="inline-block")),n.overflow&&(m.overflow="hidden",p.always((function(){m.overflow=n.overflow[0],m.overflowX=n.overflow[1],m.overflowY=n.overflow[2]}))),c=!1,f)c||(g?"hidden"in g&&(h=g.hidden):g=te.access(e,"fxshow",{display:d}),i&&(g.hidden=!h),h&&ve([e],!0),p.done((function(){for(r in h||ve([e]),te.remove(e,"fxshow"),f)x.style(e,r,f[r])}))),c=ht(h?g[r]:0,r,p),r in g||(g[r]=c.start,h&&(c.end=c.start,c.start=0))}function vt(e,t){var n,r,o,i,s;for(n in e)if(r=Y(n),o=t[r],i=e[n],Array.isArray(i)&&(o=i[1],i=e[n]=i[0]),n!==r&&(e[r]=i,delete e[n]),s=x.cssHooks[r],s&&"expand"in s)for(n in i=s.expand(i),delete e[r],i)n in e||(e[n]=i[n],t[n]=o);else t[r]=o}function yt(e,t,n){var r,o,i=0,s=yt.prefilters.length,a=x.Deferred().always((function(){delete c.elem})),c=function(){if(o)return!1;for(var t=ct||ft(),n=Math.max(0,d.startTime+d.duration-t),r=n/d.duration||0,i=1-r,s=0,c=d.tweens.length;s<c;s++)d.tweens[s].run(i);return a.notifyWith(e,[d,i,n]),i<1&&c?n:(c||a.notifyWith(e,[d,1,0]),a.resolveWith(e,[d]),!1)},d=a.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{},easing:x.easing._default},n),originalProperties:t,originalOptions:n,startTime:ct||ft(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,d.opts,t,n,d.opts.specialEasing[t]||d.opts.easing);return d.tweens.push(r),r},stop:function(t){var n=0,r=t?d.tweens.length:0;if(o)return this;for(o=!0;n<r;n++)d.tweens[n].run(1);return t?(a.notifyWith(e,[d,1,0]),a.resolveWith(e,[d,t])):a.rejectWith(e,[d,t]),this}}),u=d.props;for(vt(u,d.opts.specialEasing);i<s;i++)if(r=yt.prefilters[i].call(d,e,u,d.opts),r)return y(r.stop)&&(x._queueHooks(d.elem,d.opts.queue).stop=r.stop.bind(r)),r;return x.map(u,ht,d),y(d.opts.start)&&d.opts.start.call(e,d),d.progress(d.opts.progress).done(d.opts.done,d.opts.complete).fail(d.opts.fail).always(d.opts.always),x.fx.timer(x.extend(c,{elem:e,anim:d,queue:d.opts.queue})),d}x.Animation=x.extend(yt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return me(n.elem,e,ce.exec(t),n),n}]},tweener:function(e,t){y(e)?(t=e,e=["*"]):e=e.match(B);for(var n,r=0,o=e.length;r<o;r++)n=e[r],yt.tweeners[n]=yt.tweeners[n]||[],yt.tweeners[n].unshift(t)},prefilters:[gt],prefilter:function(e,t){t?yt.prefilters.unshift(e):yt.prefilters.push(e)}}),x.speed=function(e,t,n){var r=e&&"object"===typeof e?x.extend({},e):{complete:n||!n&&t||y(e)&&e,duration:e,easing:n&&t||t&&!y(t)&&t};return x.fx.off?r.duration=0:"number"!==typeof r.duration&&(r.duration in x.fx.speeds?r.duration=x.fx.speeds[r.duration]:r.duration=x.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){y(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(fe).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var o=x.isEmptyObject(e),i=x.speed(t,n,r),s=function(){var t=yt(this,x.extend({},e),i);(o||te.get(this,"finish"))&&t.stop(!0)};return s.finish=s,o||!1===i.queue?this.each(s):this.queue(i.queue,s)},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&&this.queue(e||"fx",[]),this.each((function(){var t=!0,o=null!=e&&e+"queueHooks",i=x.timers,s=te.get(this);if(o)s[o]&&s[o].stop&&r(s[o]);else for(o in s)s[o]&&s[o].stop&&lt.test(o)&&r(s[o]);for(o=i.length;o--;)i[o].elem!==this||null!=e&&i[o].queue!==e||(i[o].anim.stop(n),t=!1,i.splice(o,1));!t&&n||x.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||"fx"),this.each((function(){var t,n=te.get(this),r=n[e+"queue"],o=n[e+"queueHooks"],i=x.timers,s=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),o&&o.stop&&o.stop.call(this,!0),t=i.length;t--;)i[t].elem===this&&i[t].queue===e&&(i[t].anim.stop(!0),i.splice(t,1));for(t=0;t<s;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),x.each(["toggle","show","hide"],(function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,o){return null==e||"boolean"===typeof e?n.apply(this,arguments):this.animate(mt(t,!0),e,r,o)}})),x.each({slideDown:mt("show"),slideUp:mt("hide"),slideToggle:mt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},(function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),x.timers=[],x.fx.tick=function(){var e,t=0,n=x.timers;for(ct=Date.now();t<n.length;t++)e=n[t],e()||n[t]!==e||n.splice(t--,1);n.length||x.fx.stop(),ct=void 0},x.fx.timer=function(e){x.timers.push(e),x.fx.start()},x.fx.interval=13,x.fx.start=function(){dt||(dt=!0,pt())},x.fx.stop=function(){dt=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fn.delay=function(e,t){return e=x.fx&&x.fx.speeds[e]||e,t=t||"fx",this.queue(t,(function(t,r){var o=n.setTimeout(t,e);r.stop=function(){n.clearTimeout(o)}}))},function(){var e=w.createElement("input"),t=w.createElement("select"),n=t.appendChild(w.createElement("option"));e.type="checkbox",v.checkOn=""!==e.value,v.optSelected=n.selected,e=w.createElement("input"),e.value="t",e.type="radio",v.radioValue="t"===e.value}();var bt,wt=x.expr.attrHandle;x.fn.extend({attr:function(e,t){return $(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){x.removeAttr(this,e)}))}}),x.extend({attr:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return"undefined"===typeof e.getAttribute?x.prop(e,t,n):(1===i&&x.isXMLDoc(e)||(o=x.attrHooks[t.toLowerCase()]||(x.expr.match.bool.test(t)?bt:void 0)),void 0!==n?null===n?void x.removeAttr(e,t):o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:(e.setAttribute(t,n+""),n):o&&"get"in o&&null!==(r=o.get(e,t))?r:(r=x.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!v.radioValue&&"radio"===t&&R(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,o=t&&t.match(B);if(o&&1===e.nodeType)while(n=o[r++])e.removeAttribute(n)}}),bt={set:function(e,t,n){return!1===t?x.removeAttr(e,n):e.setAttribute(n,n),n}},x.each(x.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=wt[t]||x.find.attr;wt[t]=function(e,t,r){var o,i,s=t.toLowerCase();return r||(i=wt[s],wt[s]=o,o=null!=n(e,t,r)?s:null,wt[s]=i),o}}));var Tt=/^(?:input|select|textarea|button)$/i,St=/^(?:a|area)$/i;function Ct(e){var t=e.match(B)||[];return t.join(" ")}function Pt(e){return e.getAttribute&&e.getAttribute("class")||""}function xt(e){return Array.isArray(e)?e:"string"===typeof e&&e.match(B)||[]}x.fn.extend({prop:function(e,t){return $(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[x.propFix[e]||e]}))}}),x.extend({prop:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&x.isXMLDoc(e)||(t=x.propFix[t]||t,o=x.propHooks[t]),void 0!==n?o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:e[t]=n:o&&"get"in o&&null!==(r=o.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Tt.test(e.nodeName)||St.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),v.optSelected||(x.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)}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){x.propFix[this.toLowerCase()]=this})),x.fn.extend({addClass:function(e){var t,n,r,o,i,s,a,c=0;if(y(e))return this.each((function(t){x(this).addClass(e.call(this,t,Pt(this)))}));if(t=xt(e),t.length)while(n=this[c++])if(o=Pt(n),r=1===n.nodeType&&" "+Ct(o)+" ",r){s=0;while(i=t[s++])r.indexOf(" "+i+" ")<0&&(r+=i+" ");a=Ct(r),o!==a&&n.setAttribute("class",a)}return this},removeClass:function(e){var t,n,r,o,i,s,a,c=0;if(y(e))return this.each((function(t){x(this).removeClass(e.call(this,t,Pt(this)))}));if(!arguments.length)return this.attr("class","");if(t=xt(e),t.length)while(n=this[c++])if(o=Pt(n),r=1===n.nodeType&&" "+Ct(o)+" ",r){s=0;while(i=t[s++])while(r.indexOf(" "+i+" ")>-1)r=r.replace(" "+i+" "," ");a=Ct(r),o!==a&&n.setAttribute("class",a)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"===typeof t&&r?t?this.addClass(e):this.removeClass(e):y(e)?this.each((function(n){x(this).toggleClass(e.call(this,n,Pt(this),t),t)})):this.each((function(){var t,o,i,s;if(r){o=0,i=x(this),s=xt(e);while(t=s[o++])i.hasClass(t)?i.removeClass(t):i.addClass(t)}else void 0!==e&&"boolean"!==n||(t=Pt(this),t&&te.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":te.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+Ct(Pt(n))+" ").indexOf(t)>-1)return!0;return!1}});var kt=/\r/g;x.fn.extend({val:function(e){var t,n,r,o=this[0];return arguments.length?(r=y(e),this.each((function(n){var o;1===this.nodeType&&(o=r?e.call(this,n,x(this).val()):e,null==o?o="":"number"===typeof o?o+="":Array.isArray(o)&&(o=x.map(o,(function(e){return null==e?"":e+""}))),t=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))}))):o?(t=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:(n=o.value,"string"===typeof n?n.replace(kt,""):null==n?"":n)):void 0}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:Ct(x.text(e))}},select:{get:function(e){var t,n,r,o=e.options,i=e.selectedIndex,s="select-one"===e.type,a=s?null:[],c=s?i+1:o.length;for(r=i<0?c:s?i:0;r<c;r++)if(n=o[r],(n.selected||r===i)&&!n.disabled&&(!n.parentNode.disabled||!R(n.parentNode,"optgroup"))){if(t=x(n).val(),s)return t;a.push(t)}return a},set:function(e,t){var n,r,o=e.options,i=x.makeArray(t),s=o.length;while(s--)r=o[s],(r.selected=x.inArray(x.valHooks.option.get(r),i)>-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),x.each(["radio","checkbox"],(function(){x.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=x.inArray(x(e).val(),t)>-1}},v.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),v.focusin="onfocusin"in n;var Dt=/^(?:focusinfocus|focusoutblur)$/,_t=function(e){e.stopPropagation()};x.extend(x.event,{trigger:function(e,t,r,o){var i,s,a,c,d,u,l,p,f=[r||w],h=m.call(e,"type")?e.type:e,g=m.call(e,"namespace")?e.namespace.split("."):[];if(s=p=a=r=r||w,3!==r.nodeType&&8!==r.nodeType&&!Dt.test(h+x.event.triggered)&&(h.indexOf(".")>-1&&(g=h.split("."),h=g.shift(),g.sort()),d=h.indexOf(":")<0&&"on"+h,e=e[x.expando]?e:new x.Event(h,"object"===typeof e&&e),e.isTrigger=o?2:3,e.namespace=g.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:x.makeArray(t,[e]),l=x.event.special[h]||{},o||!l.trigger||!1!==l.trigger.apply(r,t))){if(!o&&!l.noBubble&&!b(r)){for(c=l.delegateType||h,Dt.test(c+h)||(s=s.parentNode);s;s=s.parentNode)f.push(s),a=s;a===(r.ownerDocument||w)&&f.push(a.defaultView||a.parentWindow||n)}i=0;while((s=f[i++])&&!e.isPropagationStopped())p=s,e.type=i>1?c:l.bindType||h,u=(te.get(s,"events")||Object.create(null))[e.type]&&te.get(s,"handle"),u&&u.apply(s,t),u=d&&s[d],u&&u.apply&&Z(s)&&(e.result=u.apply(s,t),!1===e.result&&e.preventDefault());return e.type=h,o||e.isDefaultPrevented()||l._default&&!1!==l._default.apply(f.pop(),t)||!Z(r)||d&&y(r[h])&&!b(r)&&(a=r[d],a&&(r[d]=null),x.event.triggered=h,e.isPropagationStopped()&&p.addEventListener(h,_t),r[h](),e.isPropagationStopped()&&p.removeEventListener(h,_t),x.event.triggered=void 0,a&&(r[d]=a)),e.result}},simulate:function(e,t,n){var r=x.extend(new x.Event,n,{type:e,isSimulated:!0});x.event.trigger(r,null,t)}}),x.fn.extend({trigger:function(e,t){return this.each((function(){x.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return x.event.trigger(e,t,n,!0)}}),v.focusin||x.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){x.event.simulate(t,e.target,x.event.fix(e))};x.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,o=te.access(r,t);o||r.addEventListener(e,n,!0),te.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,o=te.access(r,t)-1;o?te.access(r,t,o):(r.removeEventListener(e,n,!0),te.remove(r,t))}}}));var At=n.location,It={guid:Date.now()},Rt=/\?/;x.parseXML=function(e){var t,r;if(!e||"string"!==typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(o){}return r=t&&t.getElementsByTagName("parsererror")[0],t&&!r||x.error("Invalid XML: "+(r?x.map(r.childNodes,(function(e){return e.textContent})).join("\n"):e)),t};var Nt=/\[\]$/,Ot=/\r?\n/g,Et=/^(?:submit|button|image|reset|file)$/i,Mt=/^(?:input|select|textarea|keygen)/i;function Lt(e,t,n,r){var o;if(Array.isArray(t))x.each(t,(function(t,o){n||Nt.test(e)?r(e,o):Lt(e+"["+("object"===typeof o&&null!=o?t:"")+"]",o,n,r)}));else if(n||"object"!==C(t))r(e,t);else for(o in t)Lt(e+"["+o+"]",t[o],n,r)}x.param=function(e,t){var n,r=[],o=function(e,t){var n=y(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,(function(){o(this.name,this.value)}));else for(n in e)Lt(n,e[n],t,o);return r.join("&")},x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&Mt.test(this.nodeName)&&!Et.test(e)&&(this.checked||!ye.test(e))})).map((function(e,t){var n=x(this).val();return null==n?null:Array.isArray(n)?x.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 jt=/%20/g,qt=/#.*$/,Vt=/([?&])_=[^&]*/,Bt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Wt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ut={},zt={},Gt="*/".concat("*"),Jt=w.createElement("a");function $t(e){return function(t,n){"string"!==typeof t&&(n=t,t="*");var r,o=0,i=t.toLowerCase().match(B)||[];if(y(n))while(r=i[o++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Qt(e,t,n,r){var o={},i=e===zt;function s(a){var c;return o[a]=!0,x.each(e[a]||[],(function(e,a){var d=a(t,n,r);return"string"!==typeof d||i||o[d]?i?!(c=d):void 0:(t.dataTypes.unshift(d),s(d),!1)})),c}return s(t.dataTypes[0])||!o["*"]&&s("*")}function Kt(e,t){var n,r,o=x.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((o[n]?e:r||(r={}))[n]=t[n]);return r&&x.extend(!0,e,r),e}function Xt(e,t,n){var r,o,i,s,a=e.contents,c=e.dataTypes;while("*"===c[0])c.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(o in a)if(a[o]&&a[o].test(r)){c.unshift(o);break}if(c[0]in n)i=c[0];else{for(o in n){if(!c[0]||e.converters[o+" "+c[0]]){i=o;break}s||(s=o)}i=i||s}if(i)return i!==c[0]&&c.unshift(i),n[i]}function Yt(e,t,n,r){var o,i,s,a,c,d={},u=e.dataTypes.slice();if(u[1])for(s in e.converters)d[s.toLowerCase()]=e.converters[s];i=u.shift();while(i)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!c&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),c=i,i=u.shift(),i)if("*"===i)i=c;else if("*"!==c&&c!==i){if(s=d[c+" "+i]||d["* "+i],!s)for(o in d)if(a=o.split(" "),a[1]===i&&(s=d[c+" "+a[0]]||d["* "+a[0]],s)){!0===s?s=d[o]:!0!==d[o]&&(i=a[0],u.unshift(a[1]));break}if(!0!==s)if(s&&e.throws)t=s(t);else try{t=s(t)}catch(l){return{state:"parsererror",error:s?l:"No conversion from "+c+" to "+i}}}return{state:"success",data:t}}Jt.href=At.href,x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:At.href,type:"GET",isLocal:Ft.test(At.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Gt,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":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Kt(Kt(e,x.ajaxSettings),t):Kt(x.ajaxSettings,e)},ajaxPrefilter:$t(Ut),ajaxTransport:$t(zt),ajax:function(e,t){"object"===typeof e&&(t=e,e=void 0),t=t||{};var r,o,i,s,a,c,d,u,l,p,f=x.ajaxSetup({},t),m=f.context||f,h=f.context&&(m.nodeType||m.jquery)?x(m):x.event,g=x.Deferred(),v=x.Callbacks("once memory"),y=f.statusCode||{},b={},T={},S="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(d){if(!s){s={};while(t=Bt.exec(i))s[t[1].toLowerCase()+" "]=(s[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=s[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return d?i:null},setRequestHeader:function(e,t){return null==d&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==d&&(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(d)C.always(e[C.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||S;return r&&r.abort(t),P(0,t),this}};if(g.promise(C),f.url=((e||f.url||At.href)+"").replace(Ht,At.protocol+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(B)||[""],null==f.crossDomain){c=w.createElement("a");try{c.href=f.url,c.href=c.href,f.crossDomain=Jt.protocol+"//"+Jt.host!==c.protocol+"//"+c.host}catch(k){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!==typeof f.data&&(f.data=x.param(f.data,f.traditional)),Qt(Ut,f,t,C),d)return C;for(l in u=x.event&&f.global,u&&0===x.active++&&x.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Wt.test(f.type),o=f.url.replace(qt,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(jt,"+")):(p=f.url.slice(o.length),f.data&&(f.processData||"string"===typeof f.data)&&(o+=(Rt.test(o)?"&":"?")+f.data,delete f.data),!1===f.cache&&(o=o.replace(Vt,"$1"),p=(Rt.test(o)?"&":"?")+"_="+It.guid+++p),f.url=o+p),f.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(f.data&&f.hasContent&&!1!==f.contentType||t.contentType)&&C.setRequestHeader("Content-Type",f.contentType),C.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Gt+"; q=0.01":""):f.accepts["*"]),f.headers)C.setRequestHeader(l,f.headers[l]);if(f.beforeSend&&(!1===f.beforeSend.call(m,C,f)||d))return C.abort();if(S="abort",v.add(f.complete),C.done(f.success),C.fail(f.error),r=Qt(zt,f,t,C),r){if(C.readyState=1,u&&h.trigger("ajaxSend",[C,f]),d)return C;f.async&&f.timeout>0&&(a=n.setTimeout((function(){C.abort("timeout")}),f.timeout));try{d=!1,r.send(b,P)}catch(k){if(d)throw k;P(-1,k)}}else P(-1,"No Transport");function P(e,t,s,c){var l,p,b,w,T,S=t;d||(d=!0,a&&n.clearTimeout(a),r=void 0,i=c||"",C.readyState=e>0?4:0,l=e>=200&&e<300||304===e,s&&(w=Xt(f,C,s)),!l&&x.inArray("script",f.dataTypes)>-1&&x.inArray("json",f.dataTypes)<0&&(f.converters["text script"]=function(){}),w=Yt(f,w,C,l),l?(f.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===f.type?S="nocontent":304===e?S="notmodified":(S=w.state,p=w.data,b=w.error,l=!b)):(b=S,!e&&S||(S="error",e<0&&(e=0))),C.status=e,C.statusText=(t||S)+"",l?g.resolveWith(m,[p,S,C]):g.rejectWith(m,[C,S,b]),C.statusCode(y),y=void 0,u&&h.trigger(l?"ajaxSuccess":"ajaxError",[C,f,l?p:b]),v.fireWith(m,[C,S]),u&&(h.trigger("ajaxComplete",[C,f]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,t){return x.get(e,void 0,t,"script")}}),x.each(["get","post"],(function(e,t){x[t]=function(e,n,r,o){return y(n)&&(o=o||r,r=n,n=void 0),x.ajax(x.extend({url:e,type:t,dataType:o,data:n,success:r},x.isPlainObject(e)&&e))}})),x.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),x._evalUrl=function(e,t,n){return x.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){x.globalEval(e,t,n)}})},x.fn.extend({wrapAll:function(e){var t;return this[0]&&(y(e)&&(e=e.call(this[0])),t=x(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return y(e)?this.each((function(t){x(this).wrapInner(e.call(this,t))})):this.each((function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=y(e);return this.each((function(n){x(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){x(this).replaceWith(this.childNodes)})),this}}),x.expr.pseudos.hidden=function(e){return!x.expr.pseudos.visible(e)},x.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},x.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Zt={0:200,1223:204},en=x.ajaxSettings.xhr();v.cors=!!en&&"withCredentials"in en,v.ajax=en=!!en,x.ajaxTransport((function(e){var t,r;if(v.cors||en&&!e.crossDomain)return{send:function(o,i){var s,a=e.xhr();if(a.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(s in e.xhrFields)a[s]=e.xhrFields[s];for(s in e.mimeType&&a.overrideMimeType&&a.overrideMimeType(e.mimeType),e.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest"),o)a.setRequestHeader(s,o[s]);t=function(e){return function(){t&&(t=r=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,"abort"===e?a.abort():"error"===e?"number"!==typeof a.status?i(0,"error"):i(a.status,a.statusText):i(Zt[a.status]||a.status,a.statusText,"text"!==(a.responseType||"text")||"string"!==typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=t(),r=a.onerror=a.ontimeout=t("error"),void 0!==a.onabort?a.onabort=r:a.onreadystatechange=function(){4===a.readyState&&n.setTimeout((function(){t&&r()}))},t=t("abort");try{a.send(e.hasContent&&e.data||null)}catch(c){if(t)throw c}},abort:function(){t&&t()}}})),x.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),x.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 x.globalEval(e),e}}}),x.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),x.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,o){t=x("<script>").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&o("error"===e.type?404:200,e.type)}),w.head.appendChild(t[0])},abort:function(){n&&n()}}}));var tn=[],nn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=tn.pop()||x.expando+"_"+It.guid++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",(function(e,t,r){var o,i,s,a=!1!==e.jsonp&&(nn.test(e.url)?"url":"string"===typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&nn.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return o=e.jsonpCallback=y(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(nn,"$1"+o):!1!==e.jsonp&&(e.url+=(Rt.test(e.url)?"&":"?")+e.jsonp+"="+o),e.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},e.dataTypes[0]="json",i=n[o],n[o]=function(){s=arguments},r.always((function(){void 0===i?x(n).removeProp(o):n[o]=i,e[o]&&(e.jsonpCallback=t.jsonpCallback,tn.push(o)),s&&y(i)&&i(s[0]),s=i=void 0})),"script"})),v.createHTMLDocument=function(){var e=w.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),x.parseHTML=function(e,t,n){return"string"!==typeof e?[]:("boolean"===typeof t&&(n=t,t=!1),t||(v.createHTMLDocument?(t=w.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=w.location.href,t.head.appendChild(r)):t=w),o=N.exec(e),i=!n&&[],o?[t.createElement(o[1])]:(o=xe([e],t,i),i&&i.length&&x(i).remove(),x.merge([],o.childNodes)));var r,o,i},x.fn.load=function(e,t,n){var r,o,i,s=this,a=e.indexOf(" ");return a>-1&&(r=Ct(e.slice(a)),e=e.slice(0,a)),y(t)?(n=t,t=void 0):t&&"object"===typeof t&&(o="POST"),s.length>0&&x.ajax({url:e,type:o||"GET",dataType:"html",data:t}).done((function(e){i=arguments,s.html(r?x("<div>").append(x.parseHTML(e)).find(r):e)})).always(n&&function(e,t){s.each((function(){n.apply(this,i||[e.responseText,t,e])}))}),this},x.expr.pseudos.animated=function(e){return x.grep(x.timers,(function(t){return e===t.elem})).length},x.offset={setOffset:function(e,t,n){var r,o,i,s,a,c,d,u=x.css(e,"position"),l=x(e),p={};"static"===u&&(e.style.position="relative"),a=l.offset(),i=x.css(e,"top"),c=x.css(e,"left"),d=("absolute"===u||"fixed"===u)&&(i+c).indexOf("auto")>-1,d?(r=l.position(),s=r.top,o=r.left):(s=parseFloat(i)||0,o=parseFloat(c)||0),y(t)&&(t=t.call(e,n,x.extend({},a))),null!=t.top&&(p.top=t.top-a.top+s),null!=t.left&&(p.left=t.left-a.left+o),"using"in t?t.using.call(e,p):l.css(p)}},x.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){x.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],o={top:0,left:0};if("fixed"===x.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===x.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&(o=x(e).offset(),o.top+=x.css(e,"borderTopWidth",!0),o.left+=x.css(e,"borderLeftWidth",!0))}return{top:t.top-o.top-x.css(r,"marginTop",!0),left:t.left-o.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map((function(){var e=this.offsetParent;while(e&&"static"===x.css(e,"position"))e=e.offsetParent;return e||ue}))}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},(function(e,t){var n="pageYOffset"===t;x.fn[e]=function(r){return $(this,(function(e,r,o){var i;if(b(e)?i=e:9===e.nodeType&&(i=e.defaultView),void 0===o)return i?i[t]:e[r];i?i.scrollTo(n?i.pageXOffset:o,n?o:i.pageYOffset):e[r]=o}),e,r,arguments.length)}})),x.each(["top","left"],(function(e,t){x.cssHooks[t]=$e(v.pixelPosition,(function(e,n){if(n)return n=Je(e,t),He.test(n)?x(e).position()[t]+"px":n}))})),x.each({Height:"height",Width:"width"},(function(e,t){x.each({padding:"inner"+e,content:t,"":"outer"+e},(function(n,r){x.fn[r]=function(o,i){var s=arguments.length&&(n||"boolean"!==typeof o),a=n||(!0===o||!0===i?"margin":"border");return $(this,(function(t,n,o){var i;return b(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):void 0===o?x.css(t,n,a):x.style(t,n,o,a)}),t,s?o:void 0,s)}}))})),x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],(function(e,t){x.fn[t]=function(e){return this.on(t,e)}})),x.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)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),x.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){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var rn=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;x.proxy=function(e,t){var n,r,o;if("string"===typeof t&&(n=e[t],t=e,e=n),y(e))return r=c.call(arguments,2),o=function(){return e.apply(t||this,r.concat(c.call(arguments)))},o.guid=e.guid=e.guid||x.guid++,o},x.holdReady=function(e){e?x.readyWait++:x.ready(!0)},x.isArray=Array.isArray,x.parseJSON=JSON.parse,x.nodeName=R,x.isFunction=y,x.isWindow=b,x.camelCase=Y,x.type=C,x.now=Date.now,x.isNumeric=function(e){var t=x.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},x.trim=function(e){return null==e?"":(e+"").replace(rn,"")},r=[],o=function(){return x}.apply(t,r),void 0===o||(e.exports=o);var on=n.jQuery,sn=n.$;return x.noConflict=function(e){return n.$===x&&(n.$=sn),e&&n.jQuery===x&&(n.jQuery=on),x},"undefined"===typeof i&&(n.jQuery=n.$=x),x}))},"282b":function(e,t,n){"use strict";const r={generateIdentifier:function(){return Math.random().toString(36).substr(2,10)}};r.localCName=r.generateIdentifier(),r.splitLines=function(e){return e.trim().split("\n").map(e=>e.trim())},r.splitSections=function(e){const t=e.split("\nm=");return t.map((e,t)=>(t>0?"m="+e:e).trim()+"\r\n")},r.getDescription=function(e){const t=r.splitSections(e);return t&&t[0]},r.getMediaSections=function(e){const t=r.splitSections(e);return t.shift(),t},r.matchPrefix=function(e,t){return r.splitLines(e).filter(e=>0===e.indexOf(t))},r.parseCandidate=function(e){let t;t=0===e.indexOf("a=candidate:")?e.substring(12).split(" "):e.substring(10).split(" ");const n={foundation:t[0],component:{1:"rtp",2:"rtcp"}[t[1]]||t[1],protocol:t[2].toLowerCase(),priority:parseInt(t[3],10),ip:t[4],address:t[4],port:parseInt(t[5],10),type:t[7]};for(let r=8;r<t.length;r+=2)switch(t[r]){case"raddr":n.relatedAddress=t[r+1];break;case"rport":n.relatedPort=parseInt(t[r+1],10);break;case"tcptype":n.tcpType=t[r+1];break;case"ufrag":n.ufrag=t[r+1],n.usernameFragment=t[r+1];break;default:void 0===n[t[r]]&&(n[t[r]]=t[r+1]);break}return n},r.writeCandidate=function(e){const t=[];t.push(e.foundation);const n=e.component;"rtp"===n?t.push(1):"rtcp"===n?t.push(2):t.push(n),t.push(e.protocol.toUpperCase()),t.push(e.priority),t.push(e.address||e.ip),t.push(e.port);const r=e.type;return t.push("typ"),t.push(r),"host"!==r&&e.relatedAddress&&e.relatedPort&&(t.push("raddr"),t.push(e.relatedAddress),t.push("rport"),t.push(e.relatedPort)),e.tcpType&&"tcp"===e.protocol.toLowerCase()&&(t.push("tcptype"),t.push(e.tcpType)),(e.usernameFragment||e.ufrag)&&(t.push("ufrag"),t.push(e.usernameFragment||e.ufrag)),"candidate:"+t.join(" ")},r.parseIceOptions=function(e){return e.substr(14).split(" ")},r.parseRtpMap=function(e){let t=e.substr(9).split(" ");const n={payloadType:parseInt(t.shift(),10)};return t=t[0].split("/"),n.name=t[0],n.clockRate=parseInt(t[1],10),n.channels=3===t.length?parseInt(t[2],10):1,n.numChannels=n.channels,n},r.writeRtpMap=function(e){let t=e.payloadType;void 0!==e.preferredPayloadType&&(t=e.preferredPayloadType);const n=e.channels||e.numChannels||1;return"a=rtpmap:"+t+" "+e.name+"/"+e.clockRate+(1!==n?"/"+n:"")+"\r\n"},r.parseExtmap=function(e){const t=e.substr(9).split(" ");return{id:parseInt(t[0],10),direction:t[0].indexOf("/")>0?t[0].split("/")[1]:"sendrecv",uri:t[1]}},r.writeExtmap=function(e){return"a=extmap:"+(e.id||e.preferredId)+(e.direction&&"sendrecv"!==e.direction?"/"+e.direction:"")+" "+e.uri+"\r\n"},r.parseFmtp=function(e){const t={};let n;const r=e.substr(e.indexOf(" ")+1).split(";");for(let o=0;o<r.length;o++)n=r[o].trim().split("="),t[n[0].trim()]=n[1];return t},r.writeFmtp=function(e){let t="",n=e.payloadType;if(void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.parameters&&Object.keys(e.parameters).length){const r=[];Object.keys(e.parameters).forEach(t=>{void 0!==e.parameters[t]?r.push(t+"="+e.parameters[t]):r.push(t)}),t+="a=fmtp:"+n+" "+r.join(";")+"\r\n"}return t},r.parseRtcpFb=function(e){const t=e.substr(e.indexOf(" ")+1).split(" ");return{type:t.shift(),parameter:t.join(" ")}},r.writeRtcpFb=function(e){let t="",n=e.payloadType;return void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.rtcpFeedback&&e.rtcpFeedback.length&&e.rtcpFeedback.forEach(e=>{t+="a=rtcp-fb:"+n+" "+e.type+(e.parameter&&e.parameter.length?" "+e.parameter:"")+"\r\n"}),t},r.parseSsrcMedia=function(e){const t=e.indexOf(" "),n={ssrc:parseInt(e.substr(7,t-7),10)},r=e.indexOf(":",t);return r>-1?(n.attribute=e.substr(t+1,r-t-1),n.value=e.substr(r+1)):n.attribute=e.substr(t+1),n},r.parseSsrcGroup=function(e){const t=e.substr(13).split(" ");return{semantics:t.shift(),ssrcs:t.map(e=>parseInt(e,10))}},r.getMid=function(e){const t=r.matchPrefix(e,"a=mid:")[0];if(t)return t.substr(6)},r.parseFingerprint=function(e){const t=e.substr(14).split(" ");return{algorithm:t[0].toLowerCase(),value:t[1].toUpperCase()}},r.getDtlsParameters=function(e,t){const n=r.matchPrefix(e+t,"a=fingerprint:");return{role:"auto",fingerprints:n.map(r.parseFingerprint)}},r.writeDtlsParameters=function(e,t){let n="a=setup:"+t+"\r\n";return e.fingerprints.forEach(e=>{n+="a=fingerprint:"+e.algorithm+" "+e.value+"\r\n"}),n},r.parseCryptoLine=function(e){const t=e.substr(9).split(" ");return{tag:parseInt(t[0],10),cryptoSuite:t[1],keyParams:t[2],sessionParams:t.slice(3)}},r.writeCryptoLine=function(e){return"a=crypto:"+e.tag+" "+e.cryptoSuite+" "+("object"===typeof e.keyParams?r.writeCryptoKeyParams(e.keyParams):e.keyParams)+(e.sessionParams?" "+e.sessionParams.join(" "):"")+"\r\n"},r.parseCryptoKeyParams=function(e){if(0!==e.indexOf("inline:"))return null;const t=e.substr(7).split("|");return{keyMethod:"inline",keySalt:t[0],lifeTime:t[1],mkiValue:t[2]?t[2].split(":")[0]:void 0,mkiLength:t[2]?t[2].split(":")[1]:void 0}},r.writeCryptoKeyParams=function(e){return e.keyMethod+":"+e.keySalt+(e.lifeTime?"|"+e.lifeTime:"")+(e.mkiValue&&e.mkiLength?"|"+e.mkiValue+":"+e.mkiLength:"")},r.getCryptoParameters=function(e,t){const n=r.matchPrefix(e+t,"a=crypto:");return n.map(r.parseCryptoLine)},r.getIceParameters=function(e,t){const n=r.matchPrefix(e+t,"a=ice-ufrag:")[0],o=r.matchPrefix(e+t,"a=ice-pwd:")[0];return n&&o?{usernameFragment:n.substr(12),password:o.substr(10)}:null},r.writeIceParameters=function(e){let t="a=ice-ufrag:"+e.usernameFragment+"\r\na=ice-pwd:"+e.password+"\r\n";return e.iceLite&&(t+="a=ice-lite\r\n"),t},r.parseRtpParameters=function(e){const t={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},n=r.splitLines(e),o=n[0].split(" ");for(let i=3;i<o.length;i++){const n=o[i],s=r.matchPrefix(e,"a=rtpmap:"+n+" ")[0];if(s){const o=r.parseRtpMap(s),i=r.matchPrefix(e,"a=fmtp:"+n+" ");switch(o.parameters=i.length?r.parseFmtp(i[0]):{},o.rtcpFeedback=r.matchPrefix(e,"a=rtcp-fb:"+n+" ").map(r.parseRtcpFb),t.codecs.push(o),o.name.toUpperCase()){case"RED":case"ULPFEC":t.fecMechanisms.push(o.name.toUpperCase());break;default:break}}}return r.matchPrefix(e,"a=extmap:").forEach(e=>{t.headerExtensions.push(r.parseExtmap(e))}),t},r.writeRtpDescription=function(e,t){let n="";n+="m="+e+" ",n+=t.codecs.length>0?"9":"0",n+=" UDP/TLS/RTP/SAVPF ",n+=t.codecs.map(e=>void 0!==e.preferredPayloadType?e.preferredPayloadType:e.payloadType).join(" ")+"\r\n",n+="c=IN IP4 0.0.0.0\r\n",n+="a=rtcp:9 IN IP4 0.0.0.0\r\n",t.codecs.forEach(e=>{n+=r.writeRtpMap(e),n+=r.writeFmtp(e),n+=r.writeRtcpFb(e)});let o=0;return t.codecs.forEach(e=>{e.maxptime>o&&(o=e.maxptime)}),o>0&&(n+="a=maxptime:"+o+"\r\n"),t.headerExtensions&&t.headerExtensions.forEach(e=>{n+=r.writeExtmap(e)}),n},r.parseRtpEncodingParameters=function(e){const t=[],n=r.parseRtpParameters(e),o=-1!==n.fecMechanisms.indexOf("RED"),i=-1!==n.fecMechanisms.indexOf("ULPFEC"),s=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"cname"===e.attribute),a=s.length>0&&s[0].ssrc;let c;const d=r.matchPrefix(e,"a=ssrc-group:FID").map(e=>{const t=e.substr(17).split(" ");return t.map(e=>parseInt(e,10))});d.length>0&&d[0].length>1&&d[0][0]===a&&(c=d[0][1]),n.codecs.forEach(e=>{if("RTX"===e.name.toUpperCase()&&e.parameters.apt){let n={ssrc:a,codecPayloadType:parseInt(e.parameters.apt,10)};a&&c&&(n.rtx={ssrc:c}),t.push(n),o&&(n=JSON.parse(JSON.stringify(n)),n.fec={ssrc:a,mechanism:i?"red+ulpfec":"red"},t.push(n))}}),0===t.length&&a&&t.push({ssrc:a});let u=r.matchPrefix(e,"b=");return u.length&&(u=0===u[0].indexOf("b=TIAS:")?parseInt(u[0].substr(7),10):0===u[0].indexOf("b=AS:")?1e3*parseInt(u[0].substr(5),10)*.95-16e3:void 0,t.forEach(e=>{e.maxBitrate=u})),t},r.parseRtcpParameters=function(e){const t={},n=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"cname"===e.attribute)[0];n&&(t.cname=n.value,t.ssrc=n.ssrc);const o=r.matchPrefix(e,"a=rtcp-rsize");t.reducedSize=o.length>0,t.compound=0===o.length;const i=r.matchPrefix(e,"a=rtcp-mux");return t.mux=i.length>0,t},r.writeRtcpParameters=function(e){let t="";return e.reducedSize&&(t+="a=rtcp-rsize\r\n"),e.mux&&(t+="a=rtcp-mux\r\n"),void 0!==e.ssrc&&e.cname&&(t+="a=ssrc:"+e.ssrc+" cname:"+e.cname+"\r\n"),t},r.parseMsid=function(e){let t;const n=r.matchPrefix(e,"a=msid:");if(1===n.length)return t=n[0].substr(7).split(" "),{stream:t[0],track:t[1]};const o=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"msid"===e.attribute);return o.length>0?(t=o[0].value.split(" "),{stream:t[0],track:t[1]}):void 0},r.parseSctpDescription=function(e){const t=r.parseMLine(e),n=r.matchPrefix(e,"a=max-message-size:");let o;n.length>0&&(o=parseInt(n[0].substr(19),10)),isNaN(o)&&(o=65536);const i=r.matchPrefix(e,"a=sctp-port:");if(i.length>0)return{port:parseInt(i[0].substr(12),10),protocol:t.fmt,maxMessageSize:o};const s=r.matchPrefix(e,"a=sctpmap:");if(s.length>0){const e=s[0].substr(10).split(" ");return{port:parseInt(e[0],10),protocol:e[1],maxMessageSize:o}}},r.writeSctpDescription=function(e,t){let n=[];return n="DTLS/SCTP"!==e.protocol?["m="+e.kind+" 9 "+e.protocol+" "+t.protocol+"\r\n","c=IN IP4 0.0.0.0\r\n","a=sctp-port:"+t.port+"\r\n"]:["m="+e.kind+" 9 "+e.protocol+" "+t.port+"\r\n","c=IN IP4 0.0.0.0\r\n","a=sctpmap:"+t.port+" "+t.protocol+" 65535\r\n"],void 0!==t.maxMessageSize&&n.push("a=max-message-size:"+t.maxMessageSize+"\r\n"),n.join("")},r.generateSessionId=function(){return Math.random().toString().substr(2,21)},r.writeSessionBoilerplate=function(e,t,n){let o;const i=void 0!==t?t:2;o=e||r.generateSessionId();const s=n||"thisisadapterortc";return"v=0\r\no="+s+" "+o+" "+i+" IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\n"},r.getDirection=function(e,t){const n=r.splitLines(e);for(let r=0;r<n.length;r++)switch(n[r]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return n[r].substr(2);default:}return t?r.getDirection(t):"sendrecv"},r.getKind=function(e){const t=r.splitLines(e),n=t[0].split(" ");return n[0].substr(2)},r.isRejected=function(e){return"0"===e.split(" ",2)[1]},r.parseMLine=function(e){const t=r.splitLines(e),n=t[0].substr(2).split(" ");return{kind:n[0],port:parseInt(n[1],10),protocol:n[2],fmt:n.slice(3).join(" ")}},r.parseOLine=function(e){const t=r.matchPrefix(e,"o=")[0],n=t.substr(2).split(" ");return{username:n[0],sessionId:n[1],sessionVersion:parseInt(n[2],10),netType:n[3],addressType:n[4],address:n[5]}},r.isValidSDP=function(e){if("string"!==typeof e||0===e.length)return!1;const t=r.splitLines(e);for(let n=0;n<t.length;n++)if(t[n].length<2||"="!==t[n].charAt(1))return!1;return!0},e.exports=r},"697d":function(e,t,n){var r,o,i;(function(s,a){o=[n("1157"),n("c297"),n("d093")],r=a,i="function"===typeof r?r.apply(t,o):r,void 0===i||(e.exports=i)})(0,(function(e,t,n){t=t.default,n=n.default,window.console=window.console||function(){let e={};return e.log=e.warn=e.debug=e.info=e.error=e.time=e.dir=e.profile=e.clear=e.exception=e.trace=e.assert=function(){},e}(),function(){Array.prototype.indexOf||(Array.prototype.indexOf=function(e){let t=this.length>>>0;for(let n=0;n<t;n++)if(n in this&&this[n]===e)return n;return-1})}();let r=function(){let e=1;return function(){return"SCVIDEO_ID_"+(++e).toString()}}();function o(){return!!window.ActiveXObject||"ActiveXObject"in window}function i(t){let n,r=e.isArray(t)?[]:{};if("object"==typeof t)return window.JSON?(n=JSON.stringify(t),r=JSON.parse(n)):e.each(t,(function(e,t){r[e]="object"==typeof t?i(t):t})),r}let s=!0;function a(e,t){"undefined"!=typeof promptView&&s&&promptView.showSuccess(e)}function c(e,t){"undefined"!=typeof promptView&&s&&promptView.showFailed(e)}function d(e,t){"undefined"!=typeof promptView&&s&&promptView.showAlarm(e)}function u(){return t.isGetUserMediaAvailable()&&!p()&&window.hasAudioInputDevices}function l(){if(window.checkAudioDevicesStatus=!1,window.hasAudioInputDevices=!1,!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return;(new Date).getTime();navigator.mediaDevices.enumerateDevices().then((function(e){e.forEach((function(e){"audioinput"==e.kind&&(window.hasAudioInputDevices=!0)})),window.checkAudioDevicesStatus=!0})).catch((function(e){}))}function p(){let e=document.location.protocol;return"http:"==e&&"localhost"!=window.location.hostname}function f(){let e=document.location.protocol;return"https:"==e}function m(e,t){this.type=e,this.returnValue=!0,this.target=t||null,this.currentTarget=null}let h=function(){function e(e,t){e(!0),this.timerId=setInterval(e,1e3*t)}return e.prototype.stop=function(){this.timerId&&(clearInterval(this.timerId),this.timerId=0,g&&(clearTimeout(g),g=null))},e}(),g=0;function v(e){return new Promise((function(t,n){g&&(clearTimeout(g),g=null),g=setTimeout(t,e)}))}function y(){this._listeners={}}y.prototype={constructor:y,addListener:function(e,t,n){if("function"!=typeof t)return;let o,i=this._listeners;if("string"==typeof n&&n){if(/[^\w\-]/.test(n))throw"nonstandard key:"+n;t.hashCode=n,o=n}0!=e.indexOf("on")&&(e="on"+e),"object"!=typeof i[e]&&(i[e]={}),o=o||r(),t.hashCode=o,i[e][o]=t},removeListener:function(e,t){0!=e.indexOf("on")&&(e="on"+e);let n=this._listeners;if(n[e])if(t){if("function"==typeof t)t=t.hashCode;else if("string"!=typeof key)return;n[e][t]&&delete n[e][t]}else n[e]={}},dispatch:function(e,t){"string"==typeof e&&(e=new m(e)),t=t||{};for(let i in t)e[i]=t[i];let n,r=this._listeners,o=e.type;if(e.target||(e.target=this),e.currentTarget=this,0!=o.indexOf("on")&&(o="on"+o),"function"==typeof this[o]&&this[o].apply(this,arguments),"object"==typeof r[o])for(n in r[o])r[o][n].call(this,e);return e.returnValue},removeAllListeners:function(){this._listeners={}}};new y;function b(e,t){if(!o())return this._getTipObj();t&&this._init(e,t)}function w(t,n){let r=this;if(r.VIDEO_DATA=[],r.videoListener=new y,!n)return;r.configOpt=n&&n.configOpt||3,l();let o=0,i=setInterval((function(){if(5==o){clearInterval(i),r._init(t,n);let o=new ResizeObserver((function(t){t.forEach((t,n)=>{let i=t.target;if(document.querySelector(r.selector)){let t={};Array.prototype.slice.call(document.querySelector(r.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),r.VIDEO_DATA.forEach((n,o)=>{let i=n.video;if(t[o])if(!i&&n.id)t[o].querySelector("video").style="",t[o].querySelector(".rotate-btn")&&t[o].querySelector(".rotate-btn").setAttribute("rotate-index",0);else{let n=e(t[o]).find("button[name=rotateVideo]").attr("rotate-index");setTimeout(()=>{r.videoRotateSize(t[o],n)},200)}})}else o.unobserve(i)})}));o.observe(document.querySelector(r.selector))}else if(window.checkAudioDevicesStatus){clearInterval(i),r._init(t,n);let o=new ResizeObserver((function(t){t.forEach((t,n)=>{let i=t.target;if(document.querySelector(r.selector)){let t={};Array.prototype.slice.call(document.querySelector(r.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),r.VIDEO_DATA.forEach((n,o)=>{let i=n.video;if(t[o])if(!i&&n.id)t[o].querySelector("video").style="",t[o].querySelector(".rotate-btn")&&t[o].querySelector(".rotate-btn").setAttribute("rotate-index",0);else{let n=e(t[o]).find("button[name=rotateVideo]").attr("rotate-index");setTimeout(()=>{r.videoRotateSize(t[o],n)},200)}})}else o.unobserve(i)})}));o.observe(document.querySelector(r.selector))}o++}),20)}b.prototype={constructor:b,play:function(e,t,n,r){this.dispatch("beforeplay",{index:e,video:t,id:n}),this._obj.SCWebSetCurrentWindow(e);let o=this._obj.SCWebRealPlay(t,this._opts.streamType);if(r=r||{},o>0&&(this.videoStatus[e]={video:t,id:n,playId:o,opts:r},this.dispatch("playsuccess",this.videoStatus[e])),o<0){let e=r.name||"视频";c(e+"播放失败!")}return o>0},playByOrder:function(e,t,n){let r=this._getMinIndexFreeWindow(0);return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()?this.playInChoice(e,t,n):this.play(r,e,t,n)},playByOrderExpandWindow:function(e,t,n){let r=this._getMinIndexFreeWindow(0),o=this._opts.windowsNum||16;while(this._opts.windows<o&&-1==r){let e=Math.sqrt(1*this._opts.windows)+1;6==this._opts.windows?this.setWindowsNum(9):this.setWindowsNum(Math.pow(e,2)),r=this._getMinIndexFreeWindow(e-1)}return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()?this.playInChoice(e,t,n):this.play(r,e,t,n)},playAll:function(t){if(t.length>this._opts.windows)throw new Error("windows is not enough");let n=this;n.closeAll(),e.each(t,(function(e,t){n.play(e,t.video,t.id,t.opts)}))},playInChoice:function(e,t,n){let r=this._obj.SCWebGetCurrentWindowIndex();return this.videoStatus[r]&&this.close(r),this.play(r,e,t,n)},playMulWindows:function(t){let n=this;e.each(t,(function(e,t){n.videoStatus[t]&&n.play(t,n.videoStatus[t].video,n.videoStatus[t].id)}))},isPlaying:function(t){let n=-1;return e.each(this.videoStatus,(function(e,r){if(t==r.id)return n=e,!1})),n},isPlayingByIndex:function(e){return this.videoStatus[e]&&!0},getVideoData:function(){return this.videoStatus},closeVoice:function(e){this._obj.SCWebVoiceComControl(this.videoStatus[e].video,this.videoStatus[e].playId,0)},getWindowByPlayId:function(t){let n=-1;return e.each(this.videoStatus,(function(e,r){if(t==r.playId)return n=e,!1})),n},getPlayIdBywindow:function(e){return this.videoStatus[e].playId},close:function(e,t){if(!this.videoStatus[e]||e>=this._opts.windows||this._disableClosed.indexOf(1*e)>-1)return;this._obj.SCWebSetCurrentWindow(e);this._obj.SCWebStopRealPlay(this.videoStatus[e].playId);t||(this.dispatch("afterclose",this.videoStatus[e]),delete this.videoStatus[e])},closeByVideo:function(e,t){let n=this;if(void 0==e)return;let r=n.videoStatus;if(r&&0!=r.length)for(let o in r)e==r[o].video&&n.close(r[o].index)},closeHistory:function(e){this._obj.SCWebStopRealPlay(e);let t=this._getChoiceWindow();delete this.videoStatus[t]},closeAll:function(t){let n=this;t||(this._disableClosed=[]);let r=n._obj.SCWebGetRealPlayWindows();r&&e.each(r.split(","),(function(e,r){n.close(r,t)}))},getWindowsPlay:function(){let e=this,t=e._obj.SCWebGetRealPlayWindows();return t},setChoiceWindow:function(e){this._obj.SCWebSetCurrentWindow(e)},getWindowsNum:function(){return this._opts.windows},hasFreeWindow:function(){return""!=this._obj.SCWebGetFreeWindows()},setWindowsNum:function(e,t){let n,r=this;e*=1,n=t?r._obj.SCWebDecoderSetExtraScreenMode(e):r._obj.SCWebDecoderSetScreenMode(e),e=66==e?6:e,r._changeWindowsAction(e),r.dispatch("screenchange",{windowNums:e}),r._opts.windows=e,r._opts.extra=t},isUnavailable:function(){return 16==this._opts.windows&&!this.hasFreeWindow()},disableClosed:function(t){e.isNumeric(t)?this._disableClosed.push(t):e.isArray(t)&&(this._disableClosed=this._disableClosed.concat(t))},enableClosed:function(){this._disableClosed=[]},startPoll:function(t,n){if(!t||0==t.length)return d("请选择视频设备!"),!1;n=e.isNumeric(n)?n:this._opts.pollInterval,this._pollArray=t;let r=this,o=r._opts.windows,i=t.length,s=0;r.saveList(),r.delayTimeId=0,r._polltimer=new h((function(e){r.closeAll(),r.delayTimeId&&clearTimeout(r.delayTimeId),r.delayTimeId=setTimeout((function(){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}e&&r.dispatch("startpoll",t)}),1e3)}),n)},stopPoll:function(){this._polltimer&&(this._polltimer.stop(),this._polltimer=void 0,this.dispatch("stoppoll",{}),this.playSaveList())},isPolling:function(){return!!this._polltimer},holder:function(t,n,r){let o=this._getChoiceWindow();if(!this.videoStatus[o])return void d("未选中播放的视频!");let i="up down left right upleft upright downleft downright zoomin zoomout focusnear focusfar irisopen irisclose pointset pointdel pointgoto scansetleft scansetright scansetspeed scanrun cruiseadd cruisedel cruisespeed cruisepausetime cruiserun",s=Number(i.split(" ").indexOf(t))+Number(1),a=this.videoStatus[o].video;if(r){this._obj.SCWebPTZControl(a,1,s,0,0,0,0);return}let c={speed:200,group:0,present:0,time:0};e.extend(c,n),this._obj.SCWebPTZControl(a,0,s,c.speed,c.group,1,c.time)},playHistory:function(e,t,n,r){let o=this,i=o._obj.SCWebHistoryPlay(e,t,n);if(i<0){let e=r.name||"视频";return c(e+"播放失败!"),i}let s=o._getChoiceWindow();return r=r||{},i>0&&(o.videoStatus[s]={video:e,id:e,playId:i,opts:r,isPlayBack:!0},o.dispatch("playsuccess",o.videoStatus[s])),i},historyControl:function(e,t,n,r){let o={play:1,pause:2},i=o[t];i&&this._obj.SCWebHistoryControl(e,i,n,r)},_historyControl:function(e,t,n,r){let o={normal:1,pause:2,continue:3},i=1;"speed"==t?n&&n<1?(i=7,n=1/n):i=6:i=o[t],this._obj.SCWebHistoryControl(e,i,n)},skipHistory:function(e,t){this._obj.SCWebHistorySeekPlay(e,t)},capturePicture:function(e){let t=this._opts.videoCapImagePath?this._opts.videoCapImagePath:"";return this._obj.SCWebCapturePicture(e,t,"")},saveList:function(){this._saveList=i(this.videoStatus)},playSaveList:function(){if(!this._saveList)return;this.closeAll();let t=this;e.each(this._saveList,(function(e,n){t.play(e,n.video,n.id,n.opts)}))},getInChoiceVideo:function(){return this.videoStatus[this._obj.SCWebGetCurrentWindowIndex()]},getInChoicePlayId:function(){return this._obj.SCWebGetCurrentPlayID()},setFullScreen:function(){this._obj.ScWebFullScreen(1)},getVideoControllerOpts:function(){return this._opts},getScreenCaptureData:function(e,t){let n="IE下暂不支持获取截屏数据!";throw Error(n)},addListener:function(e,t,n){this.videoListener.addListener(e,t,n)},removeListener:function(e,t){this.videoListener.removeListener(e,t)},dispatch:function(e,t){this.videoListener.dispatch(e,t)},getOcxVersion:function(){return this._obj.SCWebDecoderGetVersion()},_init:function(t,n){let r=this;r._opts={windows:4,conf:{},extra:!1,ocxName:"__videoDiv",streamType:0,openChangeWindowStrategy:!1,capImage:!1,videoCapImagePath:"",pollInterval:10},e.extend(r._opts,n);let o=r._opts.windowsArr;if(o&&0!=o.length){r._windowList={};for(let e in o){let t=o[e];r._windowList[t]={}}r._windowsArr=o}else r._windowList={1:{},4:{},6:{},9:{},16:{}},r._windowsArr=[1,4,6,9,16];if(!e.isNumeric(r._opts.pollInterval))return;!1===r._opts.showPrompt&&(s=!1),r._addStopHandler(),r._addClickHandler(),r._addHisHandler(),r._addCapPicHandler(),r._addHistoryPlayHandler(),r._beforeUnload(),r.videoStatus={},r._disableClosed=new Array,r._obj=e("<OBJECT>").attr({id:r._opts.ocxName,name:r._opts.ocxName,classid:"clsid:5D62BFBF-7B2D-4E9E-A359-5228400C77BC",width:"100%",height:"100%"}),t.append(r._obj),r._obj=r._obj[0];let i,a=r._opts.conf;r._obj.ScWebDecoderInit(0);"127.0.0.1"==a.ip&&(a.ip=location.hostname),i=a.token&&a.token.length>0&&r._obj.SCWebDecoderLoginInVS_Token?r._obj.SCWebDecoderLoginInVS_Token(a.token,a.ip,a.port):r._obj.SCWebDecoderLoginInVs(a.user,a.passwd,a.ip,a.port),setTimeout((function(){r._opts.capImage&&r._obj.SCWebSetPtzButtonLayout(""),r._opts.extra?r._obj.SCWebDecoderSetExtraScreenMode(r._opts.windows):r._obj.SCWebDecoderSetScreenMode(r._opts.windows)}),100)},_getTipObj:function(){let t={},n="play playByOrder playAll playInChoice playMulWindows click getWindowsNum setWindowsNum",r="isPlaying setChoiceWindow close closeAll enableClosede disableClosed addListener removeListener dispatch";return e.each(n.split(" "),(function(e,n){t[n]=function(){alert("不支持非IE环境")}})),e.each(r.split(" "),(function(e,n){t[n]=function(){}})),t.type="disable",t},_getMinIndexFreeWindow:function(e){e=e||0;let t=Math.ceil(Math.pow(e,2));for(;t<this._opts.windows;t++)if(!this.videoStatus[t])return t;return-1},_getChoiceWindow:function(){return this._obj.SCWebGetCurrentWindowIndex()},_changeWindowsAction:function(t){let n=this,r=n._opts.windows,o=t;if(r!=o)if(n._opts.openChangeWindowStrategy)if(r>o)for(;o<r;o++){let e=n._getWindowsNum(o+1);n.videoStatus[o]&&(n._windowList[e][o]={video:n.videoStatus[o].video,id:n.videoStatus[o].id,opts:n.videoStatus[o].opts},n.close(o))}else while(r<o)r=n._getNextWindowsNum(r),n._windowList[r]&&e.each(n._windowList[r],(function(e,t){n.play(e,t.video,t.id,t.opts)})),n._windowList[r]={};else if(r>o)for(;o<r;o++)n.videoStatus[o]&&n.close(o)},_getWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n)if(e<=n[r])return n[r]},_getNextWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n){if(r==n.length-1)return n[r];if(e==n[r])return n[Number(r)+Number(1)]}},_addStopHandler:function(){let e=this;window.stopVideo=function(t,n){-1!=e.getWindowByPlayId(t)&&e.videoStatus[e.getWindowByPlayId(t)].isPlayBack?e.closeHistory(t):e.close(e.getWindowByPlayId(t)),e.dispatch("streamoff",{playId:t,videoId:n})},e._regEvent("SCWebStopVideoEvent(playId,videoId)","stopVideo(playId,videoId);")},_addClickHandler:function(){let e=this;window.clickVideo=function(t){e.dispatch("click",e.videoStatus[e.getWindowByPlayId(t)])},e._regEvent("SCWebDecoderClick(playId,type)","clickVideo(playId);")},_addHisHandler:function(){let e=this;window.playbackVideo=function(t,n,r){e.dispatch("playback",{playId:t,videoId:n,historyTime:r})},e._regEvent("SCWebHistoryPlayTime(playId,videoId,historytime)","playbackVideo(playId,videoId,historytime);")},_addCapPicHandler:function(){let e=this;window.getCapPicPath=function(t,n,r){e.dispatch("getCapPicPath",{playId:t,capPicPath:n,capPicName:r})},e._regEvent("SCWebGetCapPicPathName(playId, capPicPath, capPicName)","getCapPicPath(playId, capPicPath, capPicName);")},_addHistoryPlayHandler:function(){let e=this;window.historyPlay=function(t,n){e.dispatch("historyPlay",{playId:t,videoId:n})},e._regEvent("SCWebHistoryPlayEvent(playId, videoId)","historyPlay(playId, videoId);")},_regEvent:function(t,n){let r;window._addScriptFlag=!0;try{r=e("<script>").attr({for:this._opts.ocxName,event:t}).text("if (!_addScriptFlag) {"+n+"}_addScriptFlag = false;")}catch(o){r='<script for="'+this._opts.ocxName+'" event = "'+t+'" >if (!_addScriptFlag) {'+n+"}_addScriptFlag = false;<\/script>"}e("body").append(r)},_beforeUnload:function(){let e=this;window.onbeforeunload=function(t){e.closeAll(),e._obj.SCWebDecoderDestroy()}}},w.prototype={constructor:w,play:function(e,t,n,r){let o=this;if(!o.waitPlayQueueSwitch||!o.VIDEO_DATA[e].isClosing)return o.dispatch("beforeplay",{index:e,video:t,id:n}),!(e<0)&&(o.VIDEO_DATA[e].play(t),r=r||{},!!o.VIDEO_DATA[e].playing&&(o.VIDEO_DATA[e].opts=r,o.VIDEO_DATA[e].id=n,o.dispatch("playsuccess",o.VIDEO_DATA[e]),!0));o._addWaitingVideo(e,t,n,r)},playByOrder:function(e,t,n){let r=this._getMinIndexFreeWindow();return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()&&this._opts.windowsNum>1?this.playInChoice(e,t,n):this.play(r,e,t,n)},playByOrderExpandWindow:function(e,t,n){let r=this,o=this._getMinIndexFreeWindow(),i=this._opts.windowsNum||16;while(r._opts.windows<i&&-1==o){let e=Math.sqrt(1*this._opts.windows)+1;6==this._opts.windows?this.setWindowsNum(9):this.setWindowsNum(Math.pow(e,2)),o=this._getMinIndexFreeWindow(e-1)}return-1==this._getChoiceWindow()&&-1!=this._getMinIndexFreeWindow()&&this.setChoiceWindow(this._getMinIndexFreeWindow()),-1==o||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()&&this._opts.windowsNum>1?this.playInChoice(e,t,n):this.play(o,e,t,n)},playAll:function(t){if(t.length>this._opts.windows)throw new Error("windows is not enough");let n=this;n.closeAll(),e.each(t,(function(e,t){n.play(e,t.video,t.id,t.opts)}))},playInChoice:function(t,n,r){let o=this,i=e(o.selector+" li.sel");i.length&&(o.VIDEO_DATA[i.index()].playing?(o.close(i.index()),setTimeout((function(){o.play(i.index(),t,n,r)}),1e3)):o.play(i.index(),t,n,r))},isPlaying:function(t){let n=this,r=-1;return e.each(n.VIDEO_DATA,(function(e,o){t==o.id&&n.VIDEO_DATA[e].playing&&(r=e)})),r},isPlayingByIndex:function(e){let t=this;return!(e>t.VIDEO_DATA.length-1||e<0)&&t.VIDEO_DATA[e].playing},getVideoData:function(){return this.VIDEO_DATA},close:function(t,n){if(t<0)return;this.VIDEO_DATA[t].close();let r=e(this.selector+" li ").eq(t).find("video");r.hasClass("scale-scene")&&(r.removeClass("scale-scene"),r.parent().find(".scale-btn").addClass("bggray"),r.parent().find(".scale-btn").attr("title","视频画面铺满")),n||(this.VIDEO_DATA[t].closeType="close",this.dispatch("afterclose",this.VIDEO_DATA[t]))},closeByVideo:function(e,t){let n=this;if(void 0==e)return;let r=n.VIDEO_DATA;if(r&&0!=r.length)for(let o in r)e==r[o].video&&(n.close(o),t||(r[o].closeType="close",n.dispatch("afterclose",r[o])))},closeAll:function(e){let t=this;t._removeAllWaitingVideo();for(let n=t._opts.windowsBeginIndex;n<t._opts.windowsBeginIndex+t._opts.windowsNum;n++)t.close(n,e)},setChoiceWindow:function(t){e(".screen-"+(t+1)).click()},getWindowsNum:function(){return this._opts.windows},setWindowsNum:function(t){let n=this;n._opts.windows!=t&&-1!=n._getMinIndexFreeWindow()&&n.setChoiceWindow(n._getMinIndexFreeWindow()),e(n.selector+" .video-main").removeClass("mode-"+n._opts.windows).addClass("mode-"+t);let r=e(n.selector+" li").hide();n._opts.windows=t;for(let e=0;e<t;e++)r.eq(e).show();if(this.dispatch("screenchange",{windowNums:t,flag:n._opts.flag}),document.querySelector(n.selector)){let t={};Array.prototype.slice.call(document.querySelector(n.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),n.VIDEO_DATA.forEach((e,n)=>{let r=e.video;!r&&e.id&&t[n]&&(t[n].querySelector("video").style="",t[n].querySelector(".rotate-btn")&&t[n].querySelector(".rotate-btn").setAttribute("rotate-index",0))})}for(let e=0;e<r.length;e++){let t=r.eq(e).find("button[name=rotateVideo]").attr("rotate-index");r.eq(e).find("button[name=scaleVideo]").hasClass("bggray");setTimeout(()=>{n.videoRotateSize(r.eq(e)[0],t)},200)}},isUnavailable:function(){return 16==this._opts.windows&&-1==this._getMinIndexFreeWindow()},startPoll:function(t,n){if(!t||0==t.length)return d("请选择视频设备!"),!1;n=e.isNumeric(n)?n:this._opts.pollInterval,this._pollArray=t;let r=this,o=r._opts.windows,i=t.length,s=0;r.saveList(),this._polltimer=new h((function(e){if(r.closeAll(),e){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}r.dispatch("startpoll",t)}else v(1500).then((function(){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}}))}),n)},stopPoll:function(){this._polltimer&&(this._polltimer.stop(),this._polltimer=void 0,this.dispatch("stoppoll",{}),this._pollArray=null,this.closeAll())},isPolling:function(){return!!this._polltimer},holder:function(e,t,n){let r=this._getChoiceWindow();return r<0?(c("请先选中视频"),!1):this.VIDEO_DATA[r].holder(e,t,n)},playHistory:function(e,t,n,r){let o,i=this;return o=1==i._opts.windowsNum?i._opts.windowsBeginIndex:i._getMinIndexFreeWindow(),i.setChoiceWindow(o),i.VIDEO_DATA[o].opts=r,i.VIDEO_DATA[o].playback(e,t,n)},closeHistory:function(e,t){if(!e)return;let n=this;if(!t){let e;1==n._opts.windowsNum&&(e=n._opts.windowsBeginIndex)}return n.VIDEO_DATA[t].playbackControl(e,"stop",0)},historyControl:function(e,t,n,r){let o,i=this;return o=1==i._opts.windowsNum?i._opts.windowsBeginIndex:i._getChoiceWindow(),i.VIDEO_DATA[o].playbackControl(e,t,n,r)},saveList:function(){this._saveList=i(this.VIDEO_DATA)},playSaveList:function(){if(!this._saveList)return;this.closeAll();let t=this;e.each(this._saveList,(function(e,n){n.video&&t.play(n.index,n.video,n.id,n.opts)}))},getInChoiceVideo:function(){let t=this,n=e(t.selector+" li.sel");if(n.length&&t.VIDEO_DATA[n.attr("index")]&&t.VIDEO_DATA[n.attr("index")].video)return t.VIDEO_DATA[n.attr("index")]},setFullScreen:function(){this._fullScreenEvent(document.getElementById("video-main-web-rtc"))},getVideoControllerOpts:function(){return this._opts},getScreenCaptureData:function(e,t){let n=this,r=n.VIDEO_DATA[void 0!=e?e:n._getChoiceWindow()];if(!r.playing)return void d("请选择播放的视频源!");let o=document.getElementById("myCanvas"),i=r.tagBox.get(0);if(void 0==i)return;0!=r.tagBox.parent().find(".stream-loading").length?(o.width=r.tagBox.width(),o.height=r.tagBox.height()):(o.width=i.videoWidth,o.height=i.videoHeight);let s=o.getContext("2d");s.drawImage(i,0,0,i.videoWidth,i.videoHeight);let a=o.toDataURL("image/jpeg");t&&t(a)},startAvRecord:function(e){let t=this;return t.VIDEO_DATA[e].recordAv("start_av_record",x)},stopAvRecord:function(e){let t=this;return t.VIDEO_DATA[e].recordAv("stop_av_record",x)},changeResolution:function(e,t){let n=this;return n.VIDEO_DATA[e].changeResolution("change_resolution",t)},openPocCall:function(e,t){let n,r=this;return n=1==r._opts.windowsNum?r._opts.windowsBeginIndex:r._getMinIndexFreeWindow(),window.pocNo=e,r.VIDEO_DATA[n].pocCall("open_poccall",e,t)},closePocCall:function(e,t){let n,r=this;return n=1==r._opts.windowsNum?r._opts.windowsBeginIndex:r._getMinIndexFreeWindow(),r.VIDEO_DATA[n].stream=null,window.pocNo=null,r.VIDEO_DATA[n].pocCall("close_poccall",e,t)},setRecordAvBusinessId:function(e){x=e},sendAudio:function(e){let t=this;e=void 0!=e?e:t._opts.windowsBeginIndex,t.VIDEO_DATA[e].stream.getAudioTracks()[0].enabled=!0},unSendAudio:function(e){let t=this;e=void 0!=e?e:t._opts.windowsBeginIndex,t.VIDEO_DATA[e].stream.getAudioTracks()[0].enabled=!1},addListener:function(e,t,n){this.videoListener.addListener(e,t,n)},removeListener:function(e,t){this.videoListener.removeListener(e,t)},dispatch:function(e,t){this.videoListener.dispatch(e,t)},removeAllListeners:function(){this.videoListener.removeAllListeners()},_getMinIndexFreeWindow:function(e){let t=this;for(e=e||t._opts.windowsBeginIndex;e<t._opts.windowsBeginIndex+t._opts.windows;e++)if(!t.VIDEO_DATA[e].playing&&!t.VIDEO_DATA[e].isWaiting)return e;return-1},_getChoiceWindow:function(){let t=this,n=e(t.selector+" li.sel");return n.length?n.index():-1},_getNextWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n){if(r==n.length-1)return n[r];if(e==n[r])return n[Number(r)+Number(1)]}},_clickWindow:function(){let t=this;e(t.selector+" li").click((function(){e(t.selector+" li").removeClass("sel"),e(this).addClass("sel"),t.getInChoiceVideo()&&t.dispatch("click",t.getInChoiceVideo())}));let n=null;e(t.selector+" li").bind("dragstart",(function(t){n=e(this)})),e(t.selector+" li").bind("dragover",(function(e){e.preventDefault()})),e(t.selector+" li").bind("drop",(function(r){r.preventDefault();let o=t.VIDEO_DATA;if(n.prop("outerHTML")===e(this).prop("outerHTML"))return;let i=e(this),s=n.index(),a=i.index();i.removeClass("screen-"+(a+1)).addClass("screen-"+(s+1)),n.removeClass("screen-"+(s+1)).addClass("screen-"+(a+1)),i.attr("index",s),n.attr("index",a),n.children("#frame-decoded-"+(s+1)).attr("id","frame-decoded-"+(a+1)),i.children("#frame-decoded-"+(a+1)).attr("id","frame-decoded-"+(s+1)),n.children("#info-self"+(s+1)).attr("id","info-self-"+(a+1)),i.children("#info-self-"+(a+1)).attr("id","info-self-"+(s+1)),i.hasClass("main-screen")?(i.removeClass("main-screen"),n.addClass("main-screen")):n.hasClass("main-screen")&&(n.removeClass("main-screen"),i.addClass("main-screen")),s>a?(n.insertBefore(i),i.insertAfter(e(t.selector+" .video-main li.screen").eq(s))):(n.insertAfter(i),i.insertBefore(e(t.selector+" .video-main li.screen").eq(s)));let c=o[a],d=o.splice(s,1,c);o.splice(a,1,...d)}))},_init:function(t,n){let r=this;if(0==t.length||!r.getDomSelector(t))return;r._opts={windows:4,conf:{},pollInterval:10,windowsNum:16,isVideoTag:!0,showVideoInfo:1,waitPlayQueueSwitch:!1,defaultBusinessType:0,videoTipTimeOut:5},e.extend(r._opts,n);let o=r._opts.windowsArr;if(o&&0!=o.length){r._windowList={};for(let e in o){let t=o[e];r._windowList[t]={}}r._windowsArr=o}else r._windowList={1:{},4:{},6:{},9:{},16:{}},r._windowsArr=[1,4,6,9,16];r._opts.windowsBeginIndex=0,window.pocNo=0,r.waitPlayQueueSwitch=void 0!=n.waitPlayQueueSwitch&&n.waitPlayQueueSwitch,!1===r._opts.showPrompt&&(s=!1),1==r._opts.defaultBusinessType&&r._checkDevices(),r._opts.isVideoTag?r._initVideoView(t,r._opts.showVideoInfo):r._initAudioView(t),r._initJanus(),r._initBtnEvent(),r._initEventListen(),r._clickWindow(),0!=r._opts.showVideoInfo&&r._showVideoInfo(),r._dbClickFullScreen()},videoRotateSize(t,n){if(!t)return;let r=t.querySelector("video"),o=t.offsetWidth,i=t.offsetHeight,s=r.classList.contains("scale-scene");s&&(0==n||2==n?(e(r).css("height","100%"),e(r).css("width","100%")):1!=n&&3!=n||(e(r).css("height",o),e(r).css("width",i)));let a=r.videoWidth,c=r.videoHeight;r.offsetWidth,r.offsetHeight;0==n?(s||(e(r).css("height","auto"),e(r).css("width","auto")),e(r).css("max-height","100%"),e(r).css("max-width","100%"),r.style.position="absolute",e(r).css("left","50%"),e(r).css("top","50%"),a/c<o/i?e(r).css("height","100%"):e(r).css("width","100%"),r.style.transform="translate(-50%, -50%)"):3==n?(r.style.position="absolute",r.style.transform="rotate(270deg)",e(r).css("max-height","none"),e(r).css("max-width","none"),c*i/a<o?(s?e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"):(e(r).css("width",i),e(r).css("height","auto"),e(r).css("top","calc(-"+c*i/a/2+"px + "+i+"px / 2)")),e(r).css("left","calc("+o+"px / 2 - "+i+"px / 2)")):(s||(e(r).css("width","auto"),e(r).css("height",o)),e(r).css("left","calc(-"+a*o/c/2+"px + "+o+"px / 2)"),e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"))):2==n?(s||(e(r).css("height","auto"),e(r).css("width","auto")),e(r).css("max-height","100%"),e(r).css("max-width","100%"),r.style.position="absolute",e(r).css("left","50%"),e(r).css("top","50%"),a/c<o/i?e(r).css("height","100%"):e(r).css("width","100%"),r.style.transform="translate(-50%, -50%) rotate(180deg)"):1==n&&(r.style.position="absolute",r.style.transform="rotate(90deg)",e(r).css("max-height","none"),e(r).css("max-width","none"),c*i/a<o?(s?e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"):(e(r).css("width",i),e(r).css("height","auto"),e(r).css("top","calc(-"+c*i/a/2+"px + "+i+"px / 2)")),e(r).css("left","calc("+o+"px / 2 - "+i+"px / 2)")):(s||(e(r).css("width","auto"),e(r).css("height",o)),e(r).css("left","calc(-"+a*o/c/2+"px + "+o+"px / 2)"),e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)")))},getDomSelector:function(t){var n=this;if(t.selector)n.selector=t.selector;else if(t.attr("id"))n.selector="#"+t.attr("id");else{if(!t.attr("class"))return!1;var r=t.attr("class").split(/\s+/);e.each(r,(function(t,r){if(1==e("."+r).length)return n.selector="."+r,!0}))}return!!n.selector},_initBtnEvent:function(){let t=this,n=e(t.selector+" .video-main");n.find("button[name='lockVideo']").click((function(){let n=Number(e(this).parent().parent().attr("index"));if(t.VIDEO_DATA[n].playing)return"lock-video-btn"==e(this).attr("class")?(t.VIDEO_DATA[n].isLockVideo=!1,e(this).attr("class","unlock-video-btn")):(t.VIDEO_DATA[n].isLockVideo=!0,e(this).attr("class","lock-video-btn")),!1;d("请选择播放的视频源!")})),n.find("button[name=rotateVideo]").click((function(){let n=Number(e(this).attr("rotate-index"));n++,n%=4,e(this).attr("rotate-index",n);let r=e(this).parent().parent()[0];return t.videoRotateSize(r,n),!1})),n.find("button[name=scaleVideo]").click((function(){let n=e(this).hasClass("bggray");return n?(e(this).parent().parent().find(".video-box").addClass("scale-scene"),e(this).attr("title","原视频分辨率展示")):(e(this).parent().parent().find(".video-box").removeClass("scale-scene"),e(this).attr("title","视频画面铺满")),t.videoRotateSize(e(this).parent().parent()[0],e(this).parent().find("button[name=rotateVideo]").attr("rotate-index")),e(this).toggleClass("bggray"),!1})),n.find("button[name=screenVideo]").click((function(){let n=e(this).hasClass("fullscreen-btn");n?(e(this).attr("class","autoscreen-btn"),e(this).attr("title","退出全屏")):(e(this).attr("class","fullscreen-btn"),e(this).attr("title","全屏")),t.videoRotateSize(e(this).parent().parent()[0],e(this).parent().find("button[name=rotateVideo]").attr("rotate-index"))})),n.find("button[name='recvAudio']").click((function(){let n=this,r=Number(e(this).parent().parent().attr("index")),o=void 0==t.VIDEO_DATA[r].opts.businessType?t._opts.defaultBusinessType:t.VIDEO_DATA[r].opts.businessType;if(t.VIDEO_DATA[r].playing)if("recv-audio-btn"==e(this).attr("class"))t.VIDEO_DATA[r].operateAudio("stop_audio"),e(this).attr("class","unrecv-audio-btn"),t.VIDEO_DATA[r].tagBox.prop("muted",!0);else if(0==o){let o=e(e(n).parent().parent().parent()).children();for(let n=0;n<o.length;n++){let i=Number(e(o[n]).attr("index"));if(r==i)continue;let s=e(e(o[n]).find("button[name='recvAudio']")[0]),a=e(e(o[n]).find("button[name='sendAudio']")[0]);"recv-audio-btn"==s.attr("class")&&t.VIDEO_DATA[i].playing&&s.click(),"send-audio-btn"==a.attr("class")&&t.VIDEO_DATA[i].playing&&a.click()}e(n).attr("class","recv-audio-btn"),setTimeout((function(){t.VIDEO_DATA[r].isClosing||(t.VIDEO_DATA[r].operateAudio("recv_audio"),t.VIDEO_DATA[r].tagBox.prop("muted",!1))}),1e3)}else 1==o&&(e(n).attr("class","recv-audio-btn"),t.VIDEO_DATA[r].operateAudio("recv_audio"),t.VIDEO_DATA[r].tagBox.prop("muted",!1));else d("请选择播放的视频源!")})),n.find("button[name='sendAudio']").click((function(){let n=Number(e(this).parent().parent().attr("index")),r=void 0==t.VIDEO_DATA[n].opts.businessType?t._opts.defaultBusinessType:t.VIDEO_DATA[n].opts.businessType;if(t.VIDEO_DATA[n].playing)return 0==r?"send-audio-btn"==e(this).attr("class")?(t.VIDEO_DATA[n].operateAudio("unsend_audio"),e(this).attr("class","unsend-audio-btn"),t.VIDEO_DATA[n].stream.getAudioTracks()[0].enabled=!1):(t.VIDEO_DATA[n].operateAudio("send_audio"),e(this).attr("class","send-audio-btn"),t.VIDEO_DATA[n].stream.getAudioTracks()[0].enabled=!0):1==r&&("send-audio-btn"==e(this).attr("class")?(e(this).attr("class","unsend-audio-btn"),t.VIDEO_DATA[n].ptopPoc("close_ptop_poc",window.pocNo)):(e(this).attr("class","send-audio-btn"),t.VIDEO_DATA[n].ptopPoc("open_ptop_poc",window.pocNo))),!1;d("请选择播放的视频源!")})),n.find("button[name='closeVideo']").click((function(){let n=Number(e(this).parent().parent().attr("index"));t.close(n)}))},_initEventListen:function(){let e=this;e.addListener("openVideo",(function(t){e.play(t.index,t.video,t.id,t.opts)})),e.addListener("notifyCloseVideo",(function(t){e._notifyWaitingVideo(t.index)}))},_dbClickFullScreen:function(){let t=this;e(t.selector+" .video-main").find(".video-box").on("dblclick",(function(){t._fullScreenEvent(this)}))},_fullScreenEvent:function(e){let t=e.fullScreen||e.mozFullScreen||e.webkitIsFullScreen;t||e.requestFullscreen&&e.requestFullscreen()||e.mozRequestFullScreen&&e.mozRequestFullScreen()||e.webkitRequestFullscreen&&e.webkitRequestFullscreen()||e.msRequestFullscreen&&e.msRequestFullscreen()},_showVideoInfo:function(){let t=this;function n(){if(t.VIDEO_DATA&&t.VIDEO_DATA.length)for(let n=0;n<t.VIDEO_DATA.length;n++)if(t.VIDEO_DATA[n].playing){let r=Number(t.VIDEO_DATA[n].index)+Number(1),o=e(t.selector+" .video-main #video-"+r);if(!o.length)continue;let i=o[0];if(!i)continue;let s=i.videoWidth,a=i.videoHeight,c=t.VIDEO_DATA[n].sipcall.getBitrate();if(!s||!a||!c||-1==c.indexOf("kbits")||-1!=c.indexOf("NaN"))continue;let d=t.VIDEO_DATA[n].sipcall.webrtcStuff;t._setPacketsLostRate(n,d,t),t._setFrameDecoded(n,d,t);let u=s+"×"+a;switch(a+""){case"1080":u="1080P";break;case"720":u="720P";break;case"480":u="480P";break;case"288":u="CIF";break;default:break}let l=e(t.selector+" .video-main #info-"+r);if(!l.length)continue;let p=l[0],f=t.VIDEO_DATA[n].opts&&t.VIDEO_DATA[n].opts.name?t.VIDEO_DATA[n].opts.name:t.VIDEO_DATA[n].video;p.innerHTML=f+"&nbsp;&nbsp;"+u+"<br>丢包率:"+t.VIDEO_DATA[n].packetsLostRate+"&nbsp;&nbsp;"+c.replace("kbits/sec","kbps");let m=e(t.selector+" .video-main #video-"+r).height()/15,h=e(t.selector+" .video-main #video-"+r).width()/18,g=m<h?m:h;g=!g||g>20?20:g,e("#info-"+r).css("font-size",g+"px")}}t.videoInfoTimer&&(clearInterval(t.videoInfoTimer),t.videoInfoTimer=null),t.videoInfoTimer=setInterval(n,1e3)},_setPacketsLostRate:function(e,t,n){null!=t.pc&&void 0!=t.pc&&t.pc.getStats&&t.pc.getStats().then((function(t){t.forEach((function(t){if(!t)return;let r=!1;if(("video"===t.mediaType||t.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===t.type&&t.id.indexOf("rtcp")<0?r=!0:"ssrc"!=t.type||!t.bytesReceived||"VP8"!==t.googCodecName&&""!==t.googCodecName||(r=!0),r&&t.hasOwnProperty("packetsLost"))if(!t.packetsLost||isNaN(t.packetsLost)||"0"==Number(t.packetsLost)||"NaN"==t.packetsLost)n.VIDEO_DATA[e].packetsLostRate="0.00%";else{let r=Number(t.packetsLost)-Number(n.VIDEO_DATA[e].packetsLostSum),o=Number(t.packetsReceived)-Number(n.VIDEO_DATA[e].packetsReceivedSum),i=0;if(r>0){Number(r),Number(r),Number(o)}n.VIDEO_DATA[e].packetsLostRate=i.toFixed(2)+"%"}}))}))},_setFrameDecoded:function(e,t,n){null!==t.pc&&"undefined"!==typeof t.pc&&t.pc.getStats&&t.pc.getStats().then((function(t){t.forEach((function(t){if(t){let o=!1;if(("video"===t.mediaType||t.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===t.type&&t.id.indexOf("rtcp")<0?o=!0:"ssrc"!==t.type||!t.bytesReceived||"VP8"!==t.googCodecName&&""!==t.googCodecName||(o=!0),o&&t.hasOwnProperty("framesDecoded")){if(t.framesDecoded<=1)return;if("undefined"===typeof n.VIDEO_DATA[e].framesDecodedCount&&(n.VIDEO_DATA[e].framesDecodedCount=0),"undefined"===typeof n.VIDEO_DATA[e].framesDecodedLast&&(n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded),t.framesDecoded>n.VIDEO_DATA[e].framesDecodedLast&&"undefined"!==typeof n.VIDEO_DATA[e].tipDom&&"block"===n.VIDEO_DATA[e].tipDom.style.display&&(n.VIDEO_DATA[e].tipDom.style.display="none"),n.VIDEO_DATA[e].framesDecodedCount++,n.VIDEO_DATA[e].framesDecodedCount===n.configOpt){if(t.framesDecoded-n.VIDEO_DATA[e].framesDecodedLast===0){if("undefined"===typeof n.VIDEO_DATA[e].tipDom){var r=e+1;n.VIDEO_DATA[e].tipDom=document.getElementById("frame-decoded-"+r)}n.VIDEO_DATA[e].tipDom.style.display="block"}n.VIDEO_DATA[e].framesDecodedCount=0,n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded}else n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded}}}))}))},_checkDevices:function(){let e=this,t="DEVICES_CHECK_TIP_COUNT",n="DEVICES_CHECK_STATUS",r="completed",o="rejected",i="MICRO_RESULT",s="SPEAKER_RESULT",a="SCREEN_RESULT",c="pass",u="not pass",l=sessionStorage.getItem(t),p=localStorage.getItem(n);if((void 0==l||"0"==l)&&void 0==p)return sessionStorage.setItem(t,"1"),void(confirm("您还没有检测硬件设备,是否先进行检测?")?window.open("/scooper-video/new/checkDevices"):localStorage.setItem(n,o));if(p==r){let t=void 0==localStorage.getItem(i)?c:localStorage.getItem(i),n=void 0==localStorage.getItem(s)?c:localStorage.getItem(s),r=void 0==localStorage.getItem(a)?c:localStorage.getItem(a),o="";n==u&&(o+="检测到扬声器异常,可能影响系统某些功能的使用!"),t==u&&(o+="检测到麦克风异常,可能影响系统某些功能的使用!"),r===u&&(o+="您的屏幕分辨率过低,可能导致页面布局混乱!",d(o));let l=navigator.userAgent;l.toLowerCase().indexOf("chrome")<0&&l.toLowerCase().indexOf("firefox")<0&&l.toLowerCase().indexOf("edge")<0&&(o+="当前浏览器下部分功能可能存在兼容问题,建议使用谷歌浏览器!",d(o)),""!=o&&setTimeout((function(){e.videoListener.dispatch("msginfo",{msg:o})}),3e3)}},_initVideoView:function(e,t){let n,r=this;switch(t){case 1:n="info-bottom";break;case 2:n="info-top";break;default:n="info-bottom"}let o=(1==r._opts.windowsNum?"video-main video-main-full mode-":"video-main mode-")+r._opts.windows,i='<ul class="'+o+'" id="video-main-web-rtc" video-flag="'+r._opts.windowsBeginIndex+'">',s=r._opts.windowsBeginIndex+1;for(let a=s;a<s+r._opts.windowsNum;a++)i+='<li class="screen screen-'+a+'" index="'+(a-1)+'" draggable="true"><video muted class="video-box" id="video-'+a+'" autoplay ></video><div class="hide info '+n+'" id="info-'+a+'"></div><div class="hide info-self info-top" id="info-self-'+a+'"></div><div class="hide frame-decoded" id="frame-decoded-'+a+'"style="position:absolute;float:left;color:#fff;width:67%;z-index:1;top:135px;left:180px">网络信号不佳</div><div class="operate-btn">',i+='<button type="button" class="fullscreen-btn hide" name="screenVideo" title="全屏"></button><button type="button" class="scale-btn bggray hide" name="scaleVideo" title="视频画面铺满"></button><button type="button" class="rotate-btn hide" name="rotateVideo" rotate-index="0" title="视频旋转"></button><button type="button" class="unsend-audio-btn hide" name="sendAudio"></button>',i+='<button type="button" class="unrecv-audio-btn hide" name="recvAudio"></button><button type="button" class="close-btn hide" name="closeVideo"></button></div></li>';i+='</ul> <div class="canvasBox hide"><canvas id="myCanvas" ></canvas></div>',e.append(i),r.setWindowsNum(r._opts.windows)},_initAudioView:function(e){let t=this,n=(1==t._opts.windowsNum?"video-main video-main-full mode-":"video-main mode-")+t._opts.windows,r='<ul class="'+n+'" id="video-main-web-rtc" video-flag="'+t._opts.windowsBeginIndex+'">',o=t._opts.windowsBeginIndex+1;for(let i=o;i<o+t._opts.windowsNum;i++)r+='<audio id="audio-'+i+'" autoplay ></video>';e.append(r)},_initJanus:function(){let e=this;t.init({debug:"error",dependencies:t.useDefaultDependencies({adapter:n}),callback:function(){if(!t.isWebrtcSupported())return void alert("不支持WEB-RTC");let n=e._opts.conf.janusUrl;f()&&(n=n.replace("ws:","wss:")),e._opts.janus=new t({server:"https:"==location.protocol?n.split("//")[0]+"//szh.rfb.zj.gov.cn/tytxstream/janus/":n,success:function(){e._initSVideo(e._opts.janus)},error:function(t){!e._opts.isNotFistTip&&c("Janus服务连接失败!"),e._opts.isNotFistTip=!0,e.closeAll(),e._removeAllWaitingVideo(),e._initJanus()},destroyed:function(){e._opts.isNotFistTip=!0}})}})},destory:function(){var t=this;t.destoryJanus(),e(t.selector).empty(),t.videoListener=null,t.VIDEO_DATA=null,t.selector=null},destoryJanus:function(){let e=this;e._opts.janus.destroy({success:function(){P=!1},asyncRequest:!0,notifyDestroyed:!0}),e.removeAllListeners()},reLoginJanusItvIndex:-1,_initSVideo:function(e){let n=this,r=null;e.attach({plugin:n._opts.conf.janusPlugin?n._opts.conf.janusPlugin:"janus.plugin.videoserver",opaqueId:"siptest-"+t.randomString(12),success:function(e){r=e;let t={request:"register",token:n._opts.conf.token||getToken()};r.send({message:t})},error:function(e){c("Janus登陆插件初始化失败!")},onmessage:function(t,r){if(t.error_code)return c(FAILED_CODE[t.error_code]||"错误码:"+t.error_code),!1;let o=t["result"],i=o["event"];if(o.error_code&&0!=o.error_code&&c(FAILED_CODE[o.error_code]||"错误码:"+o.error_code),null!==o&&void 0!==o&&void 0!==o["event"]&&null!==o["event"]){if("registration_failed"===i)return c("janus登陆失败: "+o["code"]+" "+o["reason"]),void(-1==n.reLoginJanusItvIndex&&(n.reLoginJanusItvIndex=setInterval((function(){n._initJanus(e)}),5e3)));if("video_server_closed"===i)return void(-1==n.reLoginJanusItvIndex&&(n.reLoginJanusItvIndex=setInterval((function(){n._initJanus(e)}),5e3)));if("registered"===i){let t=o["userToken"];P=!0,-1!=n.reLoginJanusItvIndex&&(clearInterval(n.reLoginJanusItvIndex),n.reLoginJanusItvIndex=-1);let r=0;for(let o=n._opts.windowsBeginIndex;o<n._opts.windowsBeginIndex+n._opts.windowsNum;o++)n.VIDEO_DATA[o]=new k({index:o,janus:e,userToken:t,windowsNum:n._opts.windowsNum,relativeIndex:r++,flag:n._opts.flag,isVideoTag:n._opts.isVideoTag,janusPlugin:n._opts.conf.janusPlugin,videoTipTimeOut:n._opts.videoTipTimeOut,parentSelector:n.selector},n.videoListener)}}}})},WAITING_DATA:[],waitPlayQueueSwitch:!1,_addWaitingVideo:function(t,n,r,o){let i=this,s=!1;e.each(i.WAITING_DATA,(function(e,a){if(a.index==t)return i.WAITING_DATA[e]={index:t,video:n,id:r,opts:o},s=!0,!1})),s||i.WAITING_DATA.push({index:t,video:n,id:r,opts:o}),i.VIDEO_DATA[t].isWaiting=!0},_removeWaitingVideo:function(t,n){let r=this;e.each(r.WAITING_DATA,(function(e,o){if(o.index==t&&o.video==n)return r.WAITING_DATA.splice(e,1),r.VIDEO_DATA[t].isWaiting=!1,!1}))},_removeAllWaitingVideo:function(){let e=this;e.WAITING_DATA=[];let t=e._opts.windowsBeginIndex;for(;t<e._opts.windowsBeginIndex+e._opts.windows;t++)e.VIDEO_DATA[t].isWaiting=!1},_notifyWaitingVideo:function(t){let n=this;e.each(n.WAITING_DATA,(function(e,r){if(r.index==t)return n.play(r.index,r.video,r.id,r.opts),n._removeWaitingVideo(r.index,r.video),!1}))}};let T={VIDEO_CODE:{2002:"未找到该ID的视频源",2003:"请确认视频服务版本",3001:"未接收到引流包,请检查端口映射",3002:"",3003:"对方拒绝视频请求",4001:"视频流中断",4002:"终端挂机或超时未接听",7e3:"无法连接视频设备",7001:"无法连接视频设备",7002:"无法连接视频设备"},OTHER_CODE:{453:"videoServer连接失败,错误码453",454:"视频窗口已被占用,请选择其它窗口打开或停止播放",455:"操作失败,该段时间无视频录像",499:"操作异常,错误码499",440:"操作异常,错误码440",441:"操作异常,错误码441",442:"操作异常,错误码442",443:"操作异常,错误码443",444:"操作异常,错误码444",445:"操作异常,错误码445",446:"操作异常,错误码446",447:"操作异常,错误码447",448:"操作异常,错误码448",449:"操作异常,错误码449",450:"操作异常,错误码450",451:"操作异常,错误码451",452:"操作异常,错误码452",456:"设备已处于对讲状态或不支持对讲",6001:"录像失败"},FAILED_CODE:{1001:"账号或密码错误",1002:"该帐号已连接",1004:"没有鉴权",2001:"未携带token或token错误",2002:"视频源id不存在",2003:"操作指令非法(该账号不允许执行这个指令,或者不支持该指令)",3001:"nat通道未建立",3002:"该视频流已在传输",3003:"无法获取远端视频流",4001:"视频流异常断开连接",4002:"获取视频失败",5e3:"内部错误",8001:"该设备不支持云台操作",453:"videoServer连接失败",454:"录像回放窗口已占用,请先停止播放",455:"无视频录像,操作失败",5001:"呼叫异常断开",5002:"禁止修改分辨率",401:"禁止修改分辨率",4003:"音频重置",4004:"音频被占用",4005:"客户端已打开对讲",4006:"终端离开云眼音频",4008:"终端拒绝打开视频",6001:"录像失败",499:"内部创建失败",440:"请求消息内容为空",441:"json格式错误",442:"无效的请求",443:"消息内容缺失",444:"消息缺少参数",445:"账户已登陆",446:"收到的videoserver消息有误",447:"消息参数错误",448:"SDP创建失败",449:"未使用",450:"创建端口失败",451:"SDP创建失败",452:"未使用加密的RTP",456:"对讲未打开",7e3:"URL账号密码错误(RTSP)",7001:"URL地址不通(RTSP)",7002:"URL格式错误(RTSP)"},STATUS_CODE_ARR:["5002","4003","4004","4005","4006"]};function S(t,n,r,o){if("-1"===t.timer)return delete t.timer,void C(t.tagBox.parent(),t);let i=t.tagBox.parent();if(i.find(".operate-btn .close-btn").show(),T.FAILED_CODE[n]&&"4002"!=n){T.FAILED_CODE[n]}let s="<div class='result'><div class='result-tip'>"+T.VIDEO_CODE[n]+"</div>",a=0,c=i.parents("#videoRef").length;r&&"4002"!=n&&(c&&(a=2),s+="<div class='result-replay'><span id='replay-"+t.index+"' class='replay'>"+(c?"2秒后自动尝试重连,":"")+"点击立即重连</span></div>"),s+="</div>",i.append(s),t.timer&&clearInterval(t.timer),t.timer=null,a&&c&&(t.timer=setInterval(()=>{a--,a>0?i.find("#replay-"+t.index).text(a+"秒后自动尝试重连,点击立即重连"):0==a&&(clearInterval(t.timer),t.timer=null,t.videoListener.dispatch("openVideo",{index:t.index,video:o,id:t.id,opts:t.opts}))},1e3)),r&&"4002"!=n&&e("#replay-"+t.index).unbind("click").click((function(){a=0,clearInterval(t.timer),t.timer=null,t.videoListener.dispatch("openVideo",{index:t.index,video:o,id:t.id,opts:t.opts})})),"4002"==n&&setTimeout((function(){C(i,t)}),2e3)}function C(e,t){e.removeClass("result"),e.find(".real-result").remove(),e.find(".result").remove(),t&&t.playing||e.find(".operate-btn .close-btn").hide()}window.windowsSum=0;let P=!1,x=null;function k(t,n){this.janus=t.janus,this.userToken=t.userToken,this.sipcall=null,this.index=t.index,this.relativeIndex=t.relativeIndex,this.tagBox=t.isVideoTag?e(t.parentSelector+" #video-"+(this.index+1)):e("#audio-"+(this.index+1)),this.windowsNum=t.windowsNum,this.flag=t.flag,this.isVideoTag=t.isVideoTag,this.janusPlugin=t.janusPlugin,this.isClosing=!1,this.isWaiting=!1,this.playSucTimeOutIndex=-1,this.videoTipTimeOut=t.videoTipTimeOut,this.videoListener=n,this.init()}return k.prototype={init:function(){let e=this;e.janus.attach({plugin:e.janusPlugin?e.janusPlugin:"janus.plugin.videoserver",opaqueId:"siptest-"+t.randomString(12),success:function(t){e.sipcall=t,e.relativeIndex+1>=e.windowsNum&&e.videoListener.dispatch("initsucc",e)},error:function(e){},consentDialog:function(e){},onmessage:function(t,n){P||c("请先登陆");let r=e.video;if(t.error_code)return T.VIDEO_CODE[t.error_code]?S(e,t.error_code,!0,r):c(T.OTHER_CODE[t.error_code]||T.FAILED_CODE[t.error_code]||"错误码:"+t.error_code),e.videoListener.dispatch("msginfo",{code:t.error_code,msg:T.OTHER_CODE[t.error_code]||T.FAILED_CODE[t.error_code]||"错误码:"+t.error_code}),!1;let o=t["result"];if(!o)return;o.error_code&&0!=o.error_code&&(T.STATUS_CODE_ARR.includes(o.error_code+"")||(e.close("err",o.error_code+""),e.isLockVideo?setTimeout((function(){e.play(r)}),1500):(e.closeType="error",e.videoListener.dispatch("afterclose",e))),e.videoListener.dispatch("msginfo",{code:o.error_code,msg:T.OTHER_CODE[o.error_code]||T.FAILED_CODE[o.error_code]||"错误码:"+o.error_code}),T.VIDEO_CODE[o.error_code]?S(e,o.error_code,!0,r):c(T.OTHER_CODE[o.error_code]||T.FAILED_CODE[o.error_code]||"错误码:"+o.error_code),e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn"),e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn"));let i=o["event"];if(i)switch(i){case"incomingcall":e.sipcall.createAnswer({jsep:n,media:{audioSend:u(),videoSend:!1,audioRecv:!0,videoRecv:!0},success:function(t){let n={request:"accept",videoidentify:o["videoidentify"],playseq:parseInt(o["playseq"]),userToken:e.userToken};e.sipcall.send({message:n,jsep:t})},error:function(e){"NotAllowedError"==e.name&&alert("请检查PC设备的麦克风并允许浏览器使用它们,以便进行视频通话。")}});break;case"accepted":e.playSucTimeOutIndex=setTimeout((function(){let t=e.tagBox.parent();t.append('<div class="video-tip">网络环境较差,可能无法正常加载视频</div>')}),1e3*e.videoTipTimeOut);break;case"callfaild":break;case"ptz":break;case"av_control":break;case"start_av_record":o&&o.filename&&(e.videoFileName=o.filename,e.videoListener.dispatch("startRecordVideo",e));break;case"stop_av_record":o&&o.filename&&(e.videoFileName=o.filename,e.videoListener.dispatch("stopRecordVideo",e));break;case"ser_notify_resolution":o&&o.resolution&&(e.resolution=o.resolution,e.videoListener.dispatch("notifyresolution",e));break;case"change_resolution":o&&e.videoListener.dispatch("notifyResolutionChange",e);break;case"open_poccall":e.sipcall.createAnswer({jsep:n,media:{audioSend:u(),videoSend:!1,audioRecv:!0,videoRecv:!1},success:function(t){let n={request:"accept",userToken:e.userToken};e.sipcall.send({message:n,jsep:t})},error:function(e){}});break;case"ser_close_poccall":break;case"ser_stop_audio":e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn");break;case"close_down_audio":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn"),a("通话时间到");break;case"ser_notify_dispatch_close_ptop_poc":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");break;case"ser_close_ptop_poc":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");break;case"ser_open_ptop_poc":e.tagBox.parent().find(".unsend-audio-btn").attr("class","send-audio-btn");break;case"ser_close_video":e.isClosing=!1,e.videoListener.dispatch("notifyCloseVideo",e);break;default:break}},onremotestream:function(n){t.attachMediaStream(e.tagBox.get(0),n)},onlocalstream:function(t){t.getAudioTracks()[0].enabled=!1,e.stream=t},oncleanup:function(){}}),e.tagBox.bind("canplay play playing",(function(){if(e.video){if(e.tagBox.is(":visible"))return;e.playSucTimeOutIndex>0&&clearTimeout(e.playSucTimeOutIndex),e.tagBox.parent().find(".video-tip").remove(),a("分屏"+(e.index+1)+" 播放成功"),e.tagBox.show(),e.tagBox.parent().find(".stream-loading").remove(),e.tagBox.parent().find(".info").show(),e.tagBox.parent().find(".info-self").show(),e.tagBox.parent().find(".operate-btn button").show(),e.isPlayBack&&e.tagBox.parent().find(".unrecv-audio-btn").hide(),e.tagBox.parent().find("button[name=screenVideo]")[0]&&e.tagBox.parent().find("button[name=screenVideo]")[0].classList.add("fullscreen-btn"),e.tagBox.parent().find("button[name=screenVideo]").attr("title","全屏"),e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn"),e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");let t=this.videoWidth,n=this.videoHeight;t<=n&&"0"!=t&&e.tagBox.css("object-fit","contain")}}))},play:function(e){if(!e)return void d("视频ID不能为空");let t={request:"call",videoidentify:e,playseq:this.index,userToken:this.userToken,autoack:!0};this.sipcall.send({message:t}),this.video=e,this.isClosing=!1,this.playing=!0,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0;let n=this.index+1,r=document.getElementById("frame-decoded-"+n);r.style.display="none",this.framesDecodedLast=void 0,this.framesDecodedCount=0;let o=this.tagBox.parent();C(o,this),o.hasClass("loading")||o.addClass("loading").append('<div class="stream-loading">等待数据流传送...</div>'),o.find(".operate-btn .close-btn").show()},close:function(e,t){if(e||(this.isLockVideo=!1,this.tagBox.parent().find(".lock-video-btn").attr("class","unlock-video-btn")),C(this.tagBox.parent(),this),!this.playing)return;let n={request:"hangup",videoidentify:this.video,playseq:this.index,userToken:this.userToken};this.sipcall.send({message:n}),this.sipcall.hangup(),"4001"!=t&&this.tagBox.hide(),this.isClosing=!0,this.playing=!1,this.video=null,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0,document.getElementById("info-"+(Number(this.index)+Number(1)))&&(document.getElementById("info-"+(Number(this.index)+Number(1))).innerHTML=""),this.tagBox.parent().find(".info").hide(),document.getElementById("info-self-"+(Number(this.index)+Number(1)))&&(document.getElementById("info-self-"+(Number(this.index)+Number(1))).innerHTML=""),this.tagBox.parent().find(".info-self").hide(),this.tagBox.parent().find(".operate-btn button").hide(),this.tagBox.parent().removeClass("loading").find(".stream-loading").remove(),this.tagBox.css("object-fit",""),this.playSucTimeOutIndex>0&&clearTimeout(this.playSucTimeOutIndex),this.tagBox.parent().find(".video-tip").remove();var r=Number(this.index)+1,o=document.getElementById("frame-decoded-"+r);o.style.display="none",this.framesDecodedLast=void 0,this.framesDecodedCount=0},holder:function(e,t,n){if(!this.video||!this.playing)return void d("未选中播放的视频!");let r="up down left right upleft upright downleft downright zoomin zoomout focusnear focusfar irisopen irisclose pointset pointdel pointgoto scansetleft scansetright scansetspeed scanrun cruiseadd cruisedel cruisespeed cruisepausetime cruiserun",o=Number(r.split(" ").indexOf(e))+Number(1);if(!o||o<=0)return!1;let i={request:"ptz",videoidentify:this.video,playseq:this.index,userToken:this.userToken};i.cmd={speed:t.speed?t.speed:200,group:0,present:t.present?t.present:0,time:0,type:o},i.cmd.action=n?1:0,this.sipcall.send({message:i})},playback:function(e,t,n){if(!e)return void d("视频ID不能为空");let r={request:"av_playback",videoidentify:e,playseq:this.index,userToken:this.userToken,start_time:t,stop_time:n};this.sipcall.send({message:r}),this.video=e,this.playing=!0,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0,this.isPlayBack=!0;let o=this.tagBox.parent();C(o,this),o.hasClass("loading")||o.addClass("loading").append('<div class="stream-loading">等待数据流传送...</div>'),o.find(".operate-btn .close-btn").show()},playbackControl:function(e,t,n,r){let o=this,i={request:"av_control",videoidentify:e,playseq:o.index,userToken:o.userToken,start_time:r,rate:String(n),cmd:t};o.sipcall.send({message:i}),"stop"==t&&(o.close(),o.tagBox.hide(),o.playing=!1,o.video=null,o.packetsLostRate="0.00%",o.packetsLostSum=0,o.packetsReceivedSum=0,o.isPlayBack=!1,document.getElementById("info-"+(Number(o.index)+Number(1))).innerHTML="",document.getElementById("info-self-"+(Number(o.index)+Number(1))).innerHTML="",this.tagBox.parent().find(".operate-btn button").hide(),o.tagBox.parent().removeClass("loading").find(".stream-loading").remove(),o.tagBox.css("object-fit",""))},operateAudio:function(e){let t=this;if(!t.video)return void d("视频ID不能为空");let n={request:e,videoidentify:t.video,playseq:t.index,userToken:t.userToken};t.sipcall.send({message:n})},recordAv:function(e,t){let n=this;if(!n.video)return void d("视频ID不能为空");let r={request:e,videoidentify:n.video,playseq:n.index,userToken:n.userToken,businessid:t||null};n.sipcall.send({message:r})},changeResolution:function(e,t){let n=this;if(!n.video)return void d("视频ID不能为空");let r={request:e,videoidentify:n.video,playseq:n.index,resolution:t,userToken:n.userToken};n.sipcall.send({message:r})},pocCall:function(e,t,n){let r=this,o={request:e,pocno:t,playseq:r.index,center_tel:n,userToken:r.userToken};r.sipcall.send({message:o})},ptopPoc:function(e,t){let n=this,r={request:e,pocno:t,playseq:n.index,pocmember:n.video,userToken:n.userToken};n.sipcall.send({message:r})}},o()?b:w}))},8875:function(e,t,n){var r,o,i;(function(n,s){o=[],r=s,i="function"===typeof r?r.apply(t,o):r,void 0===i||(e.exports=i)})("undefined"!==typeof self&&self,(function(){function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(f){var n,r,o,i=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,s=/@([^@]*):(\d+):(\d+)\s*$/gi,a=i.exec(f.stack)||s.exec(f.stack),c=a&&a[1]||!1,d=a&&a[2]||!1,u=document.location.href.replace(document.location.hash,""),l=document.getElementsByTagName("script");c===u&&(n=document.documentElement.outerHTML,r=new RegExp("(?:[^\\n]+?\\n){0,"+(d-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=n.replace(r,"$1").trim());for(var p=0;p<l.length;p++){if("interactive"===l[p].readyState)return l[p];if(l[p].src===c)return l[p];if(c===u&&l[p].innerHTML&&l[p].innerHTML.trim()===o)return l[p]}return null}}return e}))},"9a22":function(e,t,n){(function(t,n){e.exports=n()})(0,(function(){var e={isString:function(e){return void 0!==e&&null!==e&&("string"===typeof e||e instanceof String)},isArray:function(e){return void 0!==e&&null!==e&&e instanceof Array},inArray:function(e,t){for(var n=0;n<t.length;++n)if(e===t[n])return n;return-1},setTimeout:function(e,t,n){return window.setTimeout((function(){try{e._debug("Invoking timed function",t),t()}catch(n){e._debug("Exception invoking timed function",t,n)}}),n)},clearTimeout:function(e){window.clearTimeout(e)}},t=function(){var e=[],t={};this.getTransportTypes=function(){return e.slice(0)},this.findTransportTypes=function(n,r,o){for(var i=[],s=0;s<e.length;++s){var a=e[s];!0===t[a].accept(n,r,o)&&i.push(a)}return i},this.negotiateTransport=function(n,r,o,i){for(var s=0;s<e.length;++s)for(var a=e[s],c=0;c<n.length;++c)if(a===n[c]){var d=t[a];if(!0===d.accept(r,o,i))return d}return null},this.add=function(n,r,o){for(var i=!1,s=0;s<e.length;++s)if(e[s]===n){i=!0;break}return i||("number"!==typeof o?e.push(n):e.splice(o,0,n),t[n]=r),!i},this.find=function(n){for(var r=0;r<e.length;++r)if(e[r]===n)return t[n];return null},this.remove=function(n){for(var r=0;r<e.length;++r)if(e[r]===n){e.splice(r,1);var o=t[n];return delete t[n],o}return null},this.clear=function(){e=[],t={}},this.reset=function(n){for(var r=0;r<e.length;++r)t[e[r]].reset(n)}},n=function(){var t,n,r;this.registered=function(e,r){t=e,n=r},this.unregistered=function(){t=null,n=null},this._debug=function(){n._debug.apply(n,arguments)},this._mixin=function(){return n._mixin.apply(n,arguments)},this.getConfiguration=function(){return n.getConfiguration()},this.getAdvice=function(){return n.getAdvice()},this.setTimeout=function(t,r){return e.setTimeout(n,t,r)},this.clearTimeout=function(t){e.clearTimeout(t)},this.convertToMessages=function(t){if(e.isString(t))try{return JSON.parse(t)}catch(n){throw this._debug("Could not convert to JSON the following string",'"'+t+'"'),n}if(e.isArray(t))return t;if(void 0===t||null===t)return[];if(t instanceof Object)return[t];throw"Conversion Error "+t+", typeof "+typeof t},this.accept=function(e,t,n){throw"Abstract"},this.getType=function(){return t},this.getURL=function(){return r},this.setURL=function(e){r=e},this.send=function(e,t){throw"Abstract"},this.reset=function(e){this._debug("Transport",t,"reset",e?"initial":"retry")},this.abort=function(){this._debug("Transport",t,"aborted")},this.toString=function(){return this.getType()}};n.derive=function(e){function t(){}return t.prototype=e,new t};var r=function(){var t=new n,r=n.derive(t),o=0,i=null,s=[],a=[];function c(e){while(a.length>0){var t=a[0],n=t[0],r=t[1];if(n.url!==e.url||n.sync!==e.sync)break;a.shift(),e.messages=e.messages.concat(n.messages),this._debug("Coalesced",n.messages.length,"messages from request",r.id)}}function d(e,t){if(this.transportSend(e,t),t.expired=!1,!e.sync){var n=this.getConfiguration().maxNetworkDelay,r=n;!0===t.metaConnect&&(r+=this.getAdvice().timeout),this._debug("Transport",this.getType(),"waiting at most",r,"ms for the response, maxNetworkDelay",n);var o=this;t.timeout=this.setTimeout((function(){t.expired=!0;var n="Request "+t.id+" of transport "+o.getType()+" exceeded "+r+" ms max network delay",i={reason:n},s=t.xhr;i.httpCode=o.xhrStatus(s),o.abortXHR(s),o._debug(n),o.complete(t,!1,t.metaConnect),e.onFailure(s,e.messages,i)}),r)}}function u(e){var t=++o,n={id:t,metaConnect:!1,envelope:e};s.length<this.getConfiguration().maxConnections-1?(s.push(n),d.call(this,e,n)):(this._debug("Transport",this.getType(),"queueing request",t,"envelope",e),a.push([e,n]))}function l(e){var t=e.id;if(this._debug("Transport",this.getType(),"metaConnect complete, request",t),null!==i&&i.id!==t)throw"Longpoll request mismatch, completing request "+t;i=null}function p(t,n){var r=e.inArray(t,s);if(r>=0&&s.splice(r,1),a.length>0){var o=a.shift(),i=o[0],d=o[1];if(this._debug("Transport dequeued request",d.id),n)this.getConfiguration().autoBatch&&c.call(this,i),u.call(this,i),this._debug("Transport completed request",t.id,i);else{var l=this;this.setTimeout((function(){l.complete(d,!1,d.metaConnect);var e={reason:"Previous request failed"},t=d.xhr;e.httpCode=l.xhrStatus(t),i.onFailure(t,i.messages,e)}),0)}}}function f(e){if(null!==i)throw"Concurrent metaConnect requests not allowed, request id="+i.id+" not yet completed";var t=++o;this._debug("Transport",this.getType(),"metaConnect send, request",t,"envelope",e);var n={id:t,metaConnect:!0,envelope:e};d.call(this,e,n),i=n}return r.complete=function(e,t,n){n?l.call(this,e):p.call(this,e,t)},r.transportSend=function(e,t){throw"Abstract"},r.transportSuccess=function(e,t,n){t.expired||(this.clearTimeout(t.timeout),this.complete(t,!0,t.metaConnect),n&&n.length>0?e.onSuccess(n):e.onFailure(t.xhr,e.messages,{httpCode:204}))},r.transportFailure=function(e,t,n){t.expired||(this.clearTimeout(t.timeout),this.complete(t,!1,t.metaConnect),e.onFailure(t.xhr,e.messages,n))},r.send=function(e,t){t?f.call(this,e):u.call(this,e)},r.abort=function(){t.abort();for(var e=0;e<s.length;++e){var n=s[e];n&&(this._debug("Aborting request",n),this.abortXHR(n.xhr)||this.transportFailure(n.envelope,n,{reason:"abort"}))}var r=i;r&&(this._debug("Aborting metaConnect request",r),this.abortXHR(r.xhr)||this.transportFailure(r.envelope,r,{reason:"abort"})),this.reset(!0)},r.reset=function(e){t.reset(e),i=null,s=[],a=[]},r.abortXHR=function(e){if(e)try{var t=e.readyState;return e.abort(),t!==XMLHttpRequest.UNSENT}catch(n){this._debug(n)}return!1},r.xhrStatus=function(e){if(e)try{return e.status}catch(t){this._debug(t)}return-1},r},o=function(){var e=new r,t=n.derive(e),o=!0;return t.accept=function(e,t,n){return o||!t},t.xhrSend=function(e){var t=new XMLHttpRequest;t.withCredentials=!0,t.open("POST",e.url,!0!==e.sync);var n=e.headers;if(n)for(var r in n)n.hasOwnProperty(r)&&t.setRequestHeader(r,n[r]);return t.setRequestHeader("Content-Type","application/json;charset=UTF-8"),t.onload=function(){200===t.status?e.onSuccess(t.responseText):e.onError(t.statusText)},t.onerror=function(){e.onError(t.statusText)},t.send(e.body),t},t.transportSend=function(e,t){this._debug("Transport",this.getType(),"sending request",t.id,"envelope",e);var n=this;try{var r=!0;t.xhr=this.xhrSend({transport:this,url:e.url,sync:e.sync,headers:this.getConfiguration().requestHeaders,body:JSON.stringify(e.messages),onSuccess:function(r){n._debug("Transport",n.getType(),"received response",r);var i=!1;try{var s=n.convertToMessages(r);0===s.length?(o=!1,n.transportFailure(e,t,{httpCode:204})):(i=!0,n.transportSuccess(e,t,s))}catch(c){if(n._debug(c),!i){o=!1;var a={exception:c};a.httpCode=n.xhrStatus(t.xhr),n.transportFailure(e,t,a)}}},onError:function(i,s){n._debug("Transport",n.getType(),"received error",i,s),o=!1;var a={reason:i,exception:s};a.httpCode=n.xhrStatus(t.xhr),r?n.setTimeout((function(){n.transportFailure(e,t,a)}),0):n.transportFailure(e,t,a)}}),r=!1}catch(i){o=!1,this.setTimeout((function(){n.transportFailure(e,t,{exception:i})}),0)}},t.reset=function(t){e.reset(t),o=!0},t},i=function(){var e=new r,t=n.derive(e),o=0;function i(e,t,n){var r=this;return function(){r.transportFailure(e,t,"error",n)}}return t.accept=function(e,t,n){return!0},t.jsonpSend=function(e){var t=document.getElementsByTagName("head")[0],n=document.createElement("script"),r="_cometd_jsonp_"+o++;window[r]=function(o){t.removeChild(n),delete window[r],e.onSuccess(o)};var i=e.url;i+=i.indexOf("?")<0?"?":"&",i+="jsonp="+r,i+="&message="+e.body,n.src=i,n.async=!0!==e.sync,n.type="application/javascript",n.onerror=function(t){e.onError("jsonp "+t.type)},t.appendChild(n)},t.transportSend=function(e,t){var n=this,r=0,o=e.messages.length,s=[];while(o>0){var a=JSON.stringify(e.messages.slice(r,r+o)),c=e.url.length+encodeURI(a).length,d=this.getConfiguration().maxURILength;if(c>d){if(1===o){var u="Bayeux message too big ("+c+" bytes, max is "+d+") for transport "+this.getType();return void this.setTimeout(i.call(this,e,t,u),0)}--o}else s.push(o),r+=o,o=e.messages.length-r}var l=e;if(s.length>1){var p=0,f=s[0];this._debug("Transport",this.getType(),"split",e.messages.length,"messages into",s.join(" + ")),l=this._mixin(!1,{},e),l.messages=e.messages.slice(p,f),l.onSuccess=e.onSuccess,l.onFailure=e.onFailure;for(var m=1;m<s.length;++m){var h=this._mixin(!1,{},e);p=f,f+=s[m],h.messages=e.messages.slice(p,f),h.onSuccess=e.onSuccess,h.onFailure=e.onFailure,this.send(h,t.metaConnect)}}this._debug("Transport",this.getType(),"sending request",t.id,"envelope",l);try{var g=!0;this.jsonpSend({transport:this,url:l.url,sync:l.sync,headers:this.getConfiguration().requestHeaders,body:JSON.stringify(l.messages),onSuccess:function(e){var r=!1;try{var o=n.convertToMessages(e);0===o.length?n.transportFailure(l,t,{httpCode:204}):(r=!0,n.transportSuccess(l,t,o))}catch(u){n._debug(u),r||n.transportFailure(l,t,{exception:u})}},onError:function(e,r){var o={reason:e,exception:r};g?n.setTimeout((function(){n.transportFailure(l,t,o)}),0):n.transportFailure(l,t,o)}}),g=!1}catch(v){this.setTimeout((function(){n.transportFailure(l,t,{exception:v})}),0)}},t},s=function(){var t,r=new n,o=n.derive(r),i=!0,s=!1,a=!0,c=null,d=null,u=!1,l=null;function p(e,t){e&&(this.webSocketClose(e,t.code,t.reason),this.onClose(e,t))}function f(e){return e===d||e===c}function m(e,t,n){for(var r=[],o=0;o<t.messages.length;++o){var i=t.messages[o];i.id&&r.push(i.id)}e.envelopes[r.join(",")]=[t,n],this._debug("Transport",this.getType(),"stored envelope, envelopes",e.envelopes)}function h(e){if(!d){var n=t.getURL().replace(/^http/,"ws");this._debug("Transport",this.getType(),"connecting to URL",n);try{var r=t.getConfiguration().protocol;e.webSocket=r?new window.WebSocket(n,r):new window.WebSocket(n),d=e}catch(g){throw i=!1,this._debug("Exception while creating WebSocket object",g),g}a=!1!==t.getConfiguration().stickyReconnect;var o=this,u=t.getConfiguration().connectTimeout;u>0&&(e.connectTimer=this.setTimeout((function(){t._debug("Transport",o.getType(),"timed out while connecting to URL",n,":",u,"ms"),p.call(o,e,{code:1e3,reason:"Connect Timeout"})}),u));var l=function(){t._debug("WebSocket onopen",e),e.connectTimer&&o.clearTimeout(e.connectTimer),f(e)?(d=null,c=e,s=!0,o.onOpen(e)):(t._warn("Closing extra WebSocket connection",this,"active connection",c),p.call(o,e,{code:1e3,reason:"Extra Connection"}))},m=function(n){n=n||{code:1e3},t._debug("WebSocket onclose",e,n,"connecting",d,"current",c),e.connectTimer&&o.clearTimeout(e.connectTimer),o.onClose(e,n)},h=function(n){t._debug("WebSocket onmessage",n,e),o.onMessage(e,n)};e.webSocket.onopen=l,e.webSocket.onclose=m,e.webSocket.onerror=function(){m({code:1e3,reason:"Error"})},e.webSocket.onmessage=h,this._debug("Transport",this.getType(),"configured callbacks on",e)}}function g(e,n,r){var o=JSON.stringify(n.messages);e.webSocket.send(o),this._debug("Transport",this.getType(),"sent",n,"metaConnect =",r);var i=this.getConfiguration().maxNetworkDelay,s=i;r&&(s+=this.getAdvice().timeout,u=!0);for(var a=this,c=[],d=0;d<n.messages.length;++d)(function(){var r=n.messages[d];r.id&&(c.push(r.id),e.timeouts[r.id]=a.setTimeout((function(){t._debug("Transport",a.getType(),"timing out message",r.id,"after",s,"on",e),p.call(a,e,{code:1e3,reason:"Message Timeout"})}),s))})();this._debug("Transport",this.getType(),"waiting at most",s,"ms for messages",c,"maxNetworkDelay",i,", timeouts:",e.timeouts)}function v(e,t,n){try{null===e?(e=d||{envelopes:{},timeouts:{}},m.call(this,e,t,n),h.call(this,e)):(m.call(this,e,t,n),g.call(this,e,t,n))}catch(o){var r=this;this.setTimeout((function(){p.call(r,e,{code:1e3,reason:"Exception",exception:o})}),0)}}return o.reset=function(e){r.reset(e),i=!0,e&&(s=!1),a=!0,c=null,d=null,u=!1},o._notifySuccess=function(e,t){e.call(this,t)},o._notifyFailure=function(e,t,n,r){e.call(this,t,n,r)},o.onOpen=function(e){var t=e.envelopes;for(var n in this._debug("Transport",this.getType(),"opened",e,"pending messages",t),t)if(t.hasOwnProperty(n)){var r=t[n],o=r[0],i=r[1];l=o.onSuccess,g.call(this,e,o,i)}},o.onMessage=function(t,n){this._debug("Transport",this.getType(),"received websocket message",n,t);for(var r=!1,o=this.convertToMessages(n.data),i=[],s=0;s<o.length;++s){var a=o[s];if((/^\/meta\//.test(a.channel)||void 0===a.data)&&a.id){i.push(a.id);var c=t.timeouts[a.id];c&&(this.clearTimeout(c),delete t.timeouts[a.id],this._debug("Transport",this.getType(),"removed timeout for message",a.id,", timeouts",t.timeouts))}"/meta/connect"===a.channel&&(u=!1),"/meta/disconnect"!==a.channel||u||(r=!0)}for(var d=!1,p=t.envelopes,f=0;f<i.length;++f){var m=i[f];for(var h in p)if(p.hasOwnProperty(h)){var g=h.split(","),v=e.inArray(m,g);if(v>=0){d=!0,g.splice(v,1);var y=p[h][0],b=p[h][1];delete p[h],g.length>0&&(p[g.join(",")]=[y,b]);break}}}d&&this._debug("Transport",this.getType(),"removed envelope, envelopes",p),this._notifySuccess(l,o),r&&this.webSocketClose(t,1e3,"Disconnect")},o.onClose=function(e,t){this._debug("Transport",this.getType(),"closed",e,t),f(e)&&(i=a&&s,d=null,c=null);var n=e.timeouts;for(var r in e.timeouts={},n)n.hasOwnProperty(r)&&this.clearTimeout(n[r]);var o=e.envelopes;for(var l in e.envelopes={},o)if(o.hasOwnProperty(l)){var p=o[l][0],m=o[l][1];m&&(u=!1);var h={websocketCode:t.code,reason:t.reason};t.exception&&(h.exception=t.exception),this._notifyFailure(p.onFailure,e,p.messages,h)}},o.registered=function(e,n){r.registered(e,n),t=n},o.accept=function(e,n,r){return this._debug("Transport",this.getType(),"accept, supported:",i),i&&!!window.WebSocket&&!1!==t.websocketEnabled},o.send=function(e,t){this._debug("Transport",this.getType(),"sending",e,"metaConnect =",t),v.call(this,c,e,t)},o.webSocketClose=function(e,t,n){try{e.webSocket&&e.webSocket.close(t,n)}catch(r){this._debug(r)}},o.abort=function(){r.abort(),p.call(this,c,{code:1e3,reason:"Abort"}),this.reset(!0)},o},a=function(n){var r,a,c,d,u,l=this,p=n||"default",f=!1,m=new t,h="disconnected",g=0,v=null,y=0,b=[],w=!1,T=0,S={},C=0,P=null,x=[],k={},D={},_={},A=!1,I=!1,R=0,N=0,O={protocol:null,stickyReconnect:!0,connectTimeout:0,maxConnections:2,backoffIncrement:1e3,maxBackoff:6e4,logLevel:"info",reverseIncomingExtensions:!0,maxNetworkDelay:1e4,requestHeaders:{},appendMessageTypeToURL:!0,autoBatch:!1,urls:{},maxURILength:2e3,advice:{timeout:6e4,interval:0,reconnect:void 0,maxInterval:0}};function E(e,t){try{return e[t]}catch(n){return}}function M(t){return e.isString(t)}function L(e){return void 0!==e&&null!==e&&"function"===typeof e}function j(e,t){var n="";while(--t>0){if(e>=Math.pow(10,t))break;n+="0"}return n+=e,n}function q(e,t){if(window.console){var n=window.console[e];if(L(n)){var r=new Date;[].splice.call(t,0,0,j(r.getHours(),2)+":"+j(r.getMinutes(),2)+":"+j(r.getSeconds(),2)+"."+j(r.getMilliseconds(),3)),n.apply(window.console,t)}}}function V(e){return/(^https?:\/\/)?(((\[[^\]]+\])|([^:\/\?#]+))(:(\d+))?)?([^\?#]*)(.*)?/.exec(e)}function B(e){l._debug("Configuring cometd object with",e),M(e)&&(e={url:e}),e||(e={}),O=l._mixin(!1,O,e);var t=l.getURL();if(!t)throw"Missing required configuration parameter 'url' specifying the Bayeux server URL";var n=V(t),r=n[2],o=n[8],i=n[9];if(f=l._isCrossDomain(r),O.appendMessageTypeToURL)if(void 0!==i&&i.length>0)l._info("Appending message type to URI "+o+i+" is not supported, disabling 'appendMessageTypeToURL' configuration"),O.appendMessageTypeToURL=!1;else{var s=o.split("/"),a=s.length-1;o.match(/\/$/)&&(a-=1),s[a].indexOf(".")>=0&&(l._info("Appending message type to URI "+o+" is not supported, disabling 'appendMessageTypeToURL' configuration"),O.appendMessageTypeToURL=!1)}}function F(e){if(e){var t=S[e.channel];t&&t[e.id]&&(delete t[e.id],l._debug("Removed",e.listener?"listener":"subscription",e))}}function W(e){e&&!e.listener&&F(e)}function H(){for(var e in S)if(S.hasOwnProperty(e)){var t=S[e];if(t)for(var n in t)t.hasOwnProperty(n)&&W(t[n])}}function U(e){h!==e&&(l._debug("Status",h,"->",e),h=e)}function z(){return"disconnecting"===h||"disconnected"===h}function G(){var e=++g;return""+e}function J(e,t,n,r,o){try{return t.call(e,r)}catch(s){var i=l.onExtensionException;if(L(i)){l._debug("Invoking extension exception handler",n,s);try{i.call(l,s,n,o,r)}catch(a){l._info("Exception during execution of extension exception handler",n,a)}}else l._info("Exception during execution of extension",n,s);return r}}function $(e){for(var t=0;t<x.length;++t){if(void 0===e||null===e)break;var n=O.reverseIncomingExtensions?x.length-1-t:t,r=x[n],o=r.extension.incoming;if(L(o)){var i=J(r.extension,o,r.name,e,!1);e=void 0===i?e:i}}return e}function Q(e){for(var t=0;t<x.length;++t){if(void 0===e||null===e)break;var n=x[t],r=n.extension.outgoing;if(L(r)){var o=J(n.extension,r,n.name,e,!0);e=void 0===o?e:o}}return e}function K(e,t){var n=S[e];if(n)for(var r in n)if(n.hasOwnProperty(r)){var o=n[r];if(o)try{o.callback.call(o.scope,t)}catch(s){var i=l.onListenerException;if(L(i)){l._debug("Invoking listener exception handler",o,s);try{i.call(l,s,o,o.listener,t)}catch(a){l._info("Exception during execution of listener exception handler",o,a)}}else l._info("Exception during execution of listener",o,t,s)}}}function X(e,t){K(e,t);for(var n=e.split("/"),r=n.length-1,o=r;o>0;--o){var i=n.slice(0,o).join("/")+"/*";o===r&&K(i,t),i+="*",K(i,t)}}function Y(){null!==P&&e.clearTimeout(P),P=null}function Z(t,n){Y();var r=k.interval+n;l._debug("Function scheduled in",r,"ms, interval =",k.interval,"backoff =",C,t),P=e.setTimeout(l,t,r)}function ee(e,t,n,o){for(var i=0;i<t.length;++i){var s=t[i],a=s.id;v&&(s.clientId=v),s=Q(s),void 0!==s&&null!==s?(s.id=a,t[i]=s):(delete D[a],t.splice(i--,1))}if(0!==t.length){var c=l.getURL();O.appendMessageTypeToURL&&(c.match(/\/$/)||(c+="/"),o&&(c+=o));var p={url:c,sync:e,messages:t,onSuccess:function(e){try{d.call(l,e)}catch(t){l._info("Exception during handling of messages",t)}},onFailure:function(e,t,n){try{var r=l.getTransport();n.connectionType=r?r.getType():"unknown",u.call(l,e,t,n)}catch(o){l._info("Exception during handling of failure",o)}}};l._debug("Send",p),r.send(p,n)}}function te(e){y>0||!0===w?b.push(e):ee(!1,[e],!1)}function ne(){C=0}function re(){return C<O.maxBackoff&&(C+=O.backoffIncrement),C}function oe(){++y,l._debug("Starting batch, depth",y)}function ie(){var e=b;b=[],e.length>0&&ee(!1,e,!1)}function se(){if(--y,l._debug("Ending batch, depth",y),y<0)throw"Calls to startBatch() and endBatch() are not paired";0!==y||z()||w||ie()}function ae(){if(!z()){var e={id:G(),channel:"/meta/connect",connectionType:r.getType()};I||(e.advice={timeout:0}),U("connecting"),l._debug("Connect sent",e),ee(!1,[e],!0,"connect"),U("connected")}}function ce(e){U("connecting"),Z((function(){ae()}),e)}function de(e){e&&(k=l._mixin(!1,{},O.advice,e),l._debug("New advice",k))}function ue(e){if(Y(),e&&r&&r.abort(),v=null,U("disconnected"),y=0,ne(),r=null,A=!1,I=!1,b.length>0){var t=b;b=[],u.call(l,void 0,t,{reason:"Disconnected"})}}function le(e,t,n){var r=l.onTransportException;if(L(r)){l._debug("Invoking transport exception handler",e,t,n);try{r.call(l,n,e,t)}catch(o){l._info("Exception during execution of transport exception handler",o)}}}function pe(e,t){L(e)&&(t=e,e=void 0),v=null,H(),z()&&(m.reset(!0),de(O.advice)),y=0,w=!0,a=e,c=t;var n="1.0",o=l.getURL(),i=m.findTransportTypes(n,f,o),s={id:G(),version:n,minimumVersion:n,channel:"/meta/handshake",supportedConnectionTypes:i,advice:{timeout:k.timeout,interval:k.interval}},d=l._mixin(!1,{},a,s);if(l._putCallback(d.id,t),!r&&(r=m.negotiateTransport(i,n,f,o),!r)){var u="Could not find initial transport among: "+m.getTransportTypes();throw l._warn(u),u}l._debug("Initial transport is",r.getType()),U("handshaking"),l._debug("Handshake sent",d),ee(!1,[d],!1,"handshake")}function fe(e){U("handshaking"),w=!0,Z((function(){pe(a,c)}),e)}function me(e,t){try{e.call(l,t)}catch(r){var n=l.onCallbackException;if(L(n)){l._debug("Invoking callback exception handler",r);try{n.call(l,r,t)}catch(o){l._info("Exception during execution of callback exception handler",o)}}else l._info("Exception during execution of message callback",r)}}function he(e){var t=l._getCallback([e.id]);L(t)&&(delete D[e.id],me(t,e))}function ge(t){var n=_[t.id];if(delete _[t.id],n){l._debug("Handling remote call response for",t,"with context",n);var r=n.timeout;r&&e.clearTimeout(r);var o=n.callback;if(L(o))return me(o,t),!0}return!1}function ve(e){l._debug("Transport failure handling",e),e.transport&&(r=e.transport),e.url&&r.setURL(e.url);var t=e.action,n=e.delay||0;switch(t){case"handshake":fe(n);break;case"retry":ce(n);break;case"none":ue(!0);break;default:throw"Unknown action "+t}}function ye(e,t){he(e),X("/meta/handshake",e),X("/meta/unsuccessful",e),z()&&(t.action="none"),l.onTransportFailure.call(l,e,t,ve)}function be(e){var t=l.getURL();if(e.successful){var n=l._isCrossDomain(V(t)[2]),o=m.negotiateTransport(e.supportedConnectionTypes,e.version,n,t);if(null===o)return e.successful=!1,void ye(e,{cause:"negotiation",action:"none",transport:null});r!==o&&(l._debug("Transport",r.getType(),"->",o.getType()),r=o),v=e.clientId,w=!1,ie(),e.reestablish=A,A=!0,he(e),X("/meta/handshake",e),N=e["x-messages"]||0;var i=z()?"none":k.reconnect||"retry";switch(i){case"retry":ne(),0===N?ce(0):l._debug("Processing",N,"handshake-delivered messages");break;case"none":ue(!0);break;default:throw"Unrecognized advice action "+i}}else ye(e,{cause:"unsuccessful",action:k.reconnect||"handshake",transport:r})}function we(e){ye(e,{cause:"failure",action:"handshake",transport:null})}function Te(e,t){X("/meta/connect",e),X("/meta/unsuccessful",e),z()&&(t.action="none"),l.onTransportFailure.call(l,e,t,ve)}function Se(e){if(I=e.successful,I){X("/meta/connect",e);var t=z()?"none":k.reconnect||"retry";switch(t){case"retry":ne(),ce(C);break;case"none":ue(!1);break;default:throw"Unrecognized advice action "+t}}else Te(e,{cause:"unsuccessful",action:k.reconnect||"retry",transport:r})}function Ce(e){I=!1,Te(e,{cause:"failure",action:"retry",transport:null})}function Pe(e){ue(!0),he(e),X("/meta/disconnect",e),X("/meta/unsuccessful",e)}function xe(e){e.successful?(ue(!1),he(e),X("/meta/disconnect",e)):Pe(e)}function ke(e){Pe(e)}function De(e){var t=S[e.subscription];if(t)for(var n in t)if(t.hasOwnProperty(n)){var r=t[n];r&&!r.listener&&(delete t[n],l._debug("Removed failed subscription",r))}he(e),X("/meta/subscribe",e),X("/meta/unsuccessful",e)}function _e(e){e.successful?(he(e),X("/meta/subscribe",e)):De(e)}function Ae(e){De(e)}function Ie(e){he(e),X("/meta/unsubscribe",e),X("/meta/unsuccessful",e)}function Re(e){e.successful?(he(e),X("/meta/unsubscribe",e)):Ie(e)}function Ne(e){Ie(e)}function Oe(e){ge(e)||(he(e),X("/meta/publish",e),X("/meta/unsuccessful",e))}function Ee(e){void 0!==e.data?ge(e)||(X(e.channel,e),N>0&&(--N,0===N&&(l._debug("Processed last handshake-delivered message"),ce(0)))):void 0===e.successful?l._warn("Unknown Bayeux Message",e):e.successful?(he(e),X("/meta/publish",e)):Oe(e)}function Me(e){Oe(e)}function Le(e){if(R=0,e=$(e),void 0!==e&&null!==e){de(e.advice);var t=e.channel;switch(t){case"/meta/handshake":be(e);break;case"/meta/connect":Se(e);break;case"/meta/disconnect":xe(e);break;case"/meta/subscribe":_e(e);break;case"/meta/unsubscribe":Re(e);break;default:Ee(e);break}}}function je(e){var t=S[e];if(t)for(var n in t)if(t.hasOwnProperty(n)&&t[n])return!0;return!1}function qe(e,t){var n={scope:e,method:t};if(L(e))n.scope=void 0,n.method=e;else if(M(t)){if(!e)throw"Invalid scope "+e;if(n.method=e[t],!L(n.method))throw"Invalid callback "+t+" for scope "+e}else if(!L(t))throw"Invalid callback "+t;return n}function Ve(e,t,n,r){var o=qe(t,n);l._debug("Adding",r?"listener":"subscription","on",e,"with scope",o.scope,"and callback",o.method);var i=++T,s={id:i,channel:e,scope:o.scope,callback:o.method,listener:r},a=S[e];return a||(a={},S[e]=a),a[i]=s,l._debug("Added",r?"listener":"subscription",s),s}this._mixin=function(e,t,n){for(var r=t||{},o=2;o<arguments.length;++o){var i=arguments[o];if(void 0!==i&&null!==i)for(var s in i)if(i.hasOwnProperty(s)){var a=E(i,s),c=E(r,s);if(a===t)continue;if(void 0===a)continue;if(e&&"object"===typeof a&&null!==a)if(a instanceof Array)r[s]=this._mixin(e,c instanceof Array?c:[],a);else{var d="object"!==typeof c||c instanceof Array?{}:c;r[s]=this._mixin(e,d,a)}else r[s]=a}}return r},this._warn=function(){q("warn",arguments)},this._info=function(){"warn"!==O.logLevel&&q("info",arguments)},this._debug=function(){"debug"===O.logLevel&&q("debug",arguments)},this._isCrossDomain=function(e){return e&&e!==window.location.host},this.send=te,this._getCallback=function(e){return D[e]},this._putCallback=function(e,t){var n=this._getCallback(e);return L(t)&&(D[e]=t),n},this.onTransportFailure=function(e,t,n){this._debug("Transport failure",t,"for",e);var o=this.getTransportRegistry(),i=this.getURL(),s=this._isCrossDomain(V(i)[2]),a="1.0",c=o.findTransportTypes(a,s,i);if("none"===t.action){if("/meta/handshake"===e.channel&&!t.transport){var d="Could not negotiate transport, client=["+c+"], server=["+e.supportedConnectionTypes+"]";this._warn(d),le(r.getType(),null,{reason:d,connectionType:r.getType(),transport:r})}}else if(t.delay=this.getBackoffPeriod(),"/meta/handshake"===e.channel){if(!t.transport){var u=o.negotiateTransport(c,a,s,i);u?(this._debug("Transport",r.getType(),"->",u.getType()),le(r.getType(),u.getType(),e.failure),t.action="handshake",t.transport=u):(this._warn("Could not negotiate transport, client=["+c+"]"),le(r.getType(),null,e.failure),t.action="none")}"none"!==t.action&&this.increaseBackoffPeriod()}else{var p=(new Date).getTime();if(0===R&&(R=p),"retry"===t.action){t.delay=this.increaseBackoffPeriod();var f=k.maxInterval;if(f>0){var m=k.timeout+k.interval+f,h=p-R;h+C>m&&(t.action="handshake")}}"handshake"===t.action&&(t.delay=0,o.reset(!1),this.resetBackoffPeriod())}n.call(l,t)},this.receive=Le,d=function(e){l._debug("Received",e);for(var t=0;t<e.length;++t){var n=e[t];Le(n)}},u=function(e,t,n){l._debug("handleFailure",e,t,n),n.transport=e;for(var r=0;r<t.length;++r){var o=t[r],i={id:o.id,successful:!1,channel:o.channel,failure:n};switch(n.message=o,o.channel){case"/meta/handshake":we(i);break;case"/meta/connect":Ce(i);break;case"/meta/disconnect":ke(i);break;case"/meta/subscribe":i.subscription=o.subscription,Ae(i);break;case"/meta/unsubscribe":i.subscription=o.subscription,Ne(i);break;default:Me(i);break}}},this.registerTransport=function(e,t,n){var r=m.add(e,t,n);return r&&(this._debug("Registered transport",e),L(t.registered)&&t.registered(e,this)),r},this.unregisterTransport=function(e){var t=m.remove(e);return null!==t&&(this._debug("Unregistered transport",e),L(t.unregistered)&&t.unregistered()),t},this.unregisterTransports=function(){m.clear()},this.getTransportTypes=function(){return m.getTransportTypes()},this.findTransport=function(e){return m.find(e)},this.getTransportRegistry=function(){return m},this.configure=function(e){B.call(this,e)},this.init=function(e,t){this.configure(e),this.handshake(t)},this.handshake=function(e,t){if("disconnected"!==h)throw"Illegal state: handshaken";pe(e,t)},this.disconnect=function(e,t,n){if(!z()){"boolean"!==typeof e&&(n=t,t=e,e=!1),L(t)&&(n=t,t=void 0);var r={id:G(),channel:"/meta/disconnect"},o=this._mixin(!1,{},t,r);l._putCallback(o.id,n),U("disconnecting"),ee(!0===e,[o],!1,"disconnect")}},this.startBatch=function(){oe()},this.endBatch=function(){se()},this.batch=function(e,t){var n=qe(e,t);this.startBatch();try{n.method.call(n.scope),this.endBatch()}catch(r){throw this._info("Exception during execution of batch",r),this.endBatch(),r}},this.addListener=function(e,t,n){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";return Ve(e,t,n,!0)},this.removeListener=function(e){if(!e||!e.channel||!("id"in e))throw"Invalid argument: expected subscription, not "+e;F(e)},this.clearListeners=function(){S={}},this.subscribe=function(e,t,n,r,o){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";if(z())throw"Illegal state: disconnected";L(t)&&(o=r,r=n,n=t,t=void 0),L(r)&&(o=r,r=void 0);var i=!je(e),s=Ve(e,t,n,!1);if(i){var a={id:G(),channel:"/meta/subscribe",subscription:e},c=this._mixin(!1,{},r,a);l._putCallback(c.id,o),te(c)}return s},this.unsubscribe=function(e,t,n){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(z())throw"Illegal state: disconnected";L(t)&&(n=t,t=void 0),this.removeListener(e);var r=e.channel;if(!je(r)){var o={id:G(),channel:"/meta/unsubscribe",subscription:r},i=this._mixin(!1,{},t,o);l._putCallback(i.id,n),te(i)}},this.resubscribe=function(e,t){if(W(e),e)return this.subscribe(e.channel,e.scope,e.callback,t)},this.clearSubscriptions=function(){H()},this.publish=function(e,t,n,r){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";if(/^\/meta\//.test(e))throw"Illegal argument: cannot publish to meta channels";if(z())throw"Illegal state: disconnected";L(t)?(r=t,t={},n=void 0):L(n)&&(r=n,n=void 0);var o={id:G(),channel:e,data:t},i=this._mixin(!1,{},n,o);l._putCallback(i.id,r),te(i)},this.publishBinary=function(e,t,n,r,o){L(t)?(o=t,t=new ArrayBuffer(0),n=!0,r=void 0):L(n)?(o=n,n=!0,r=void 0):L(r)&&(o=r,r=void 0);var i={meta:r,data:t,last:n},s={ext:{binary:{}}};this.publish(e,i,s,o)},this.remoteCall=function(t,n,r,o,i){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(!M(t))throw"Illegal argument type: target must be a string";if(z())throw"Illegal state: disconnected";if(L(n)?(i=n,n={},r=O.maxNetworkDelay,o=void 0):L(r)?(i=r,r=O.maxNetworkDelay,o=void 0):L(o)&&(i=o,o=void 0),"number"!==typeof r)throw"Illegal argument type: timeout must be a number";t.match(/^\//)||(t="/"+t);var s="/service"+t,a={id:G(),channel:s,data:n},c=this._mixin(!1,{},o,a),d={callback:i};r>0&&(d.timeout=e.setTimeout(l,(function(){l._debug("Timing out remote call",c,"after",r,"ms"),Oe({id:c.id,error:"406::timeout",successful:!1,failure:{message:c,reason:"Remote Call Timeout"}})}),r),l._debug("Scheduled remote call timeout",c,"in",r,"ms")),_[c.id]=d,te(c)},this.remoteCallBinary=function(e,t,n,r,o,i){L(t)?(i=t,t=new ArrayBuffer(0),n=!0,r=void 0,o=O.maxNetworkDelay):L(n)?(i=n,n=!0,r=void 0,o=O.maxNetworkDelay):L(r)?(i=r,r=void 0,o=O.maxNetworkDelay):L(o)&&(i=o,o=O.maxNetworkDelay);var s={meta:r,data:t,last:n},a={ext:{binary:{}}};this.remoteCall(e,s,o,a,i)},this.getStatus=function(){return h},this.isDisconnected=z,this.setBackoffIncrement=function(e){O.backoffIncrement=e},this.getBackoffIncrement=function(){return O.backoffIncrement},this.getBackoffPeriod=function(){return C},this.increaseBackoffPeriod=function(){return re()},this.resetBackoffPeriod=function(){ne()},this.setLogLevel=function(e){O.logLevel=e},this.registerExtension=function(e,t){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: extension name must be a string";for(var n=!1,r=0;r<x.length;++r){var o=x[r];if(o.name===e){n=!0;break}}return n?(this._info("Could not register extension with name",e,"since another extension with the same name already exists"),!1):(x.push({name:e,extension:t}),this._debug("Registered extension",e),L(t.registered)&&t.registered(e,this),!0)},this.unregisterExtension=function(e){if(!M(e))throw"Illegal argument type: extension name must be a string";for(var t=!1,n=0;n<x.length;++n){var r=x[n];if(r.name===e){x.splice(n,1),t=!0,this._debug("Unregistered extension",e);var o=r.extension;L(o.unregistered)&&o.unregistered();break}}return t},this.getExtension=function(e){for(var t=0;t<x.length;++t){var n=x[t];if(n.name===e)return n.extension}return null},this.getName=function(){return p},this.getClientId=function(){return v},this.getURL=function(){if(r){var e=r.getURL();if(e)return e;if(e=O.urls[r.getType()],e)return e}return O.url},this.getTransport=function(){return r},this.getConfiguration=function(){return this._mixin(!0,{},O)},this.getAdvice=function(){return this._mixin(!0,{},k)},window.WebSocket&&this.registerTransport("websocket",new s),this.registerTransport("long-polling",new o),this.registerTransport("callback-polling",new i)},c=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",".","-",":","+","=","^","!","/","*","?","&","<",">","(",")","[","]","{","}","@","%","$","#"],d=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0],u={encode:function(e){var t=null;if(e instanceof ArrayBuffer?t=e:e.buffer instanceof ArrayBuffer?t=e.buffer:Array.isArray(e)&&(t=new Uint8Array(e).buffer),null==t)throw"Cannot Z85 encode "+e;for(var n=t.byteLength,r=n%4,o=4-(0===r?4:r),i=new DataView(t),s="",a=0,d=0;d<n+o;++d){var u=d>=n;if(a=256*a+(u?0:i.getUint8(d)),(d+1)%4===0){for(var l=52200625,p=5;p>0;--p){if(!u||p>o){var f=Math.floor(a/l)%85;s+=c[f]}l/=85}a=0}}return s},decode:function(e){for(var t=e.length%5,n=5-(0===t?5:t),r=0;r<n;++r)e+=c[c.length-1];for(var o=e.length,i=new ArrayBuffer(4*o/5-n),s=new DataView(i),a=0,u=0,l=0,p=0;p<o;++p){var f=e.charCodeAt(u++)-32;if(a=85*a+d[f],u%5===0){var m=16777216;while(m>=1)l<s.byteLength&&s.setUint8(l++,Math.floor(a/m)%256),m/=256;a=0}}return i}};return{CometD:a,Transport:n,RequestTransport:r,LongPollingTransport:o,CallbackPollingTransport:i,WebSocketTransport:s,Utils:e,Z85:u}}))},c297:function(e,t){r.sessions={},r.isExtensionEnabled=function(){if(navigator.mediaDevices&&navigator.mediaDevices.getDisplayMedia)return!0;if(window.navigator.userAgent.match("Chrome")){var e=parseInt(window.navigator.userAgent.match(/Chrome\/(.*) /)[1],10),t=33;return window.navigator.userAgent.match("Linux")&&(t=35),e>=26&&e<=t||r.extension.isInstalled()}return!0};var n={extensionId:"hapfgfdkleiggjjpfpenajgdnfckjpaj",isInstalled:function(){return null!==document.querySelector("#janus-extension-installed")},getScreen:function(e){var t=window.setTimeout((function(){return error=new Error("NavigatorUserMediaError"),error.name='The required Chrome extension is not installed: click <a href="#">here</a> to install it. (NOTE: this will need you to refresh the page)',e(error)}),1e3);this.cache[t]=e,window.postMessage({type:"janusGetScreen",id:t},"*")},init:function(){var e={};this.cache=e,window.addEventListener("message",(function(t){if(t.origin==window.location.origin)if("janusGotScreen"==t.data.type&&e[t.data.id]){var n=e[t.data.id];if(delete e[t.data.id],""===t.data.sourceId){var r=new Error("NavigatorUserMediaError");r.name="You cancelled the request for permission, giving up...",n(r)}else n(null,t.data.sourceId)}else"janusGetScreenPending"==t.data.type&&window.clearTimeout(t.data.id)}))}};function r(e){if(void 0===r.initDone)return e.error("Library not initialized"),{};if(!r.isWebrtcSupported())return e.error("WebRTC not supported by this browser"),{};if(r.log("Library initialized: "+r.initDone),e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e.destroyed="function"==typeof e.destroyed?e.destroyed:r.noop,null===e.server||void 0===e.server)return e.error("Invalid server url"),{};var t=!1,n=null,o={},i=null,s=null,a=0,c=e.server;r.isArray(c)?(r.log("Multiple servers provided ("+c.length+"), will use the first that works"),c=null,s=e.server,r.debug(s)):0===c.indexOf("ws")?(t=!0,r.log("Using WebSockets to contact Janus: "+c)):(t=!1,r.log("Using REST API to contact Janus: "+c));var d=e.iceServers;void 0!==d&&null!==d||(d=[{urls:"stun:stun.l.google.com:19302"}]);var u=e.iceTransportPolicy,l=e.bundlePolicy,p=e.ipv6;void 0!==p&&null!==p||(p=!1);var f=!1;void 0!==e.withCredentials&&null!==e.withCredentials&&(f=!0===e.withCredentials);var m=10;void 0!==e.max_poll_events&&null!==e.max_poll_events&&(m=e.max_poll_events),m<1&&(m=1);var h=null;void 0!==e.token&&null!==e.token&&(h=e.token);var g=null;void 0!==e.apisecret&&null!==e.apisecret&&(g=e.apisecret),this.destroyOnUnload=!0,void 0!==e.destroyOnUnload&&null!==e.destroyOnUnload&&(this.destroyOnUnload=!0===e.destroyOnUnload);var v=25e3;void 0!==e.keepAlivePeriod&&null!==e.keepAlivePeriod&&(v=e.keepAlivePeriod),isNaN(v)&&(v=25e3);var y=6e4;void 0!==e.longPollTimeout&&null!==e.longPollTimeout&&(y=e.longPollTimeout),isNaN(y)&&(y=6e4);var b=!1,w=null,T={},S=this,C=0,P={};function x(){if(null!=w)if(r.debug("Long poll..."),b){var t=c+"/"+w+"?rid="+(new Date).getTime();void 0!==m&&null!==m&&(t=t+"&maxev="+m),null!==h&&void 0!==h&&(t=t+"&token="+encodeURIComponent(h)),null!==g&&void 0!==g&&(t=t+"&apisecret="+encodeURIComponent(g)),r.httpAPICall(t,{verb:"GET",withCredentials:f,success:k,timeout:y,error:function(t,n){if(r.error(t+":",n),C++,C>3)return b=!1,void e.error("Lost connection to the server (is it down?)");x()}})}else r.warn("Is the server down? (connected=false)")}function k(e,o){if(C=0,t||void 0===w||null===w||!0===o||x(),t||!r.isArray(e))if("keepalive"!==e["janus"])if("ack"!==e["janus"])if("success"!==e["janus"])if("trickle"===e["janus"]){var i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");var s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");var a=e["candidate"];r.debug("Got a trickled candidate on session "+w),r.debug(a);var c=s.webrtcStuff;c.pc&&c.remoteSdp?(r.debug("Adding remote candidate:",a),a&&!0!==a.completed?c.pc.addIceCandidate(a):c.pc.addIceCandidate()):(r.debug("We didn't do setRemoteDescription (trickle got here before the offer?), caching candidate"),c.candidates||(c.candidates=[]),c.candidates.push(a),r.debug(c.candidates))}else{if("webrtcup"===e["janus"]){r.debug("Got a webrtcup event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];return void 0===s||null===s?void r.debug("This handle is not attached to this session"):void s.webrtcState(!0)}if("hangup"===e["janus"]){r.debug("Got a hangup event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.webrtcState(!1,e["reason"]),s.hangup()}else if("detached"===e["janus"]){r.debug("Got a detached event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return;s.detached=!0,s.ondetached(),s.detach()}else if("media"===e["janus"]){r.debug("Got a media event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.mediaState(e["type"],e["receiving"])}else if("slowlink"===e["janus"]){r.debug("Got a slowlink event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.slowLink(e["uplink"],e["nacks"])}else{if("error"===e["janus"]){r.error("Ooops: "+e["error"].code+" "+e["error"].reason),r.debug(e);f=e["transaction"];if(null!==f&&void 0!==f){m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}return}if("event"===e["janus"]){r.debug("Got a plugin event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");var d=e["plugindata"];if(void 0===d||null===d)return void r.warn("Missing plugindata...");r.debug(" -- Event is coming from "+i+" ("+d["plugin"]+")");var u=d["data"];r.debug(u);s=T[i];if(void 0===s||null===s)return void r.warn("This handle is not attached to this session");var l=e["jsep"];void 0!==l&&null!==l&&(r.debug("Handling SDP as well..."),r.debug(l));var p=s.onmessage;null!==p&&void 0!==p?(r.debug("Notifying application..."),p(u,l)):r.debug("No provided notification callback")}else{if("timeout"===e["janus"])return r.error("Timeout on session "+w),r.debug(e),void(t&&n.close(3504,"Gateway timeout"));r.warn("Unknown message/event '"+e["janus"]+"' on session "+w),r.debug(e)}}}else{r.debug("Got a success on session "+w),r.debug(e);var f=e["transaction"];if(null!==f&&void 0!==f){var m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}}else{r.debug("Got an ack on session "+w),r.debug(e);var f=e["transaction"];if(null!==f&&void 0!==f){var m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}}else r.vdebug("Got a keepalive on session "+w);else for(var h=0;h<e.length;h++)k(e[h],!0)}function D(){if(null!==c&&t&&b){i=setTimeout(D,v);var e={janus:"keepalive",session_id:w,transaction:r.randomString(12)};null!==h&&void 0!==h&&(e["token"]=h),null!==g&&void 0!==g&&(e["apisecret"]=g),n.send(JSON.stringify(e))}}function _(d){var u=r.randomString(12),l={janus:"create",transaction:u};if(d["reconnect"]&&(b=!1,l["janus"]="claim",l["session_id"]=w,n&&(n.onopen=null,n.onerror=null,n.onclose=null,i&&(clearTimeout(i),i=null))),null!==h&&void 0!==h&&(l["token"]=h),null!==g&&void 0!==g&&(l["apisecret"]=g),null===c&&r.isArray(s)&&(c=s[a],0===c.indexOf("ws")?(t=!0,r.log("Server #"+(a+1)+": trying WebSockets to contact Janus ("+c+")")):(t=!1,r.log("Server #"+(a+1)+": trying REST API to contact Janus ("+c+")"))),t)for(var p in n=r.newWebSocket(c,"janus-protocol"),o={error:function(){if(r.error("Error connecting to the Janus WebSockets server... "+c),r.isArray(s)&&!d["reconnect"])return a++,a==s.length?void d.error("Error connecting to any of the provided Janus servers: Is the server down?"):(c=null,void setTimeout((function(){_(d)}),200));d.error("Error connecting to the Janus WebSockets server: Is the server down?")},open:function(){P[u]=function(e){if(r.debug(e),"success"!==e["janus"])return r.error("Ooops: "+e["error"].code+" "+e["error"].reason),void d.error(e["error"].reason);i=setTimeout(D,v),b=!0,w=e["session_id"]?e["session_id"]:e.data["id"],d["reconnect"]?r.log("Claimed session: "+w):r.log("Created session: "+w),r.sessions[w]=S,d.success()},n.send(JSON.stringify(l))},message:function(e){k(JSON.parse(e.data))},close:function(){null!==c&&b&&(b=!1,e.error("Lost connection to the server (is it down?)"))}},o)n.addEventListener(p,o[p]);else r.httpAPICall(c,{verb:"POST",withCredentials:f,body:l,success:function(e){if(r.debug(e),"success"!==e["janus"])return r.error("Ooops: "+e["error"].code+" "+e["error"].reason),void d.error(e["error"].reason);b=!0,w=e["session_id"]?e["session_id"]:e.data["id"],d["reconnect"]?r.log("Claimed session: "+w):r.log("Created session: "+w),r.sessions[w]=S,x(),d.success()},error:function(e,t){if(r.error(e+":",t),r.isArray(s)&&!d["reconnect"])return a++,a==s.length?void d.error("Error connecting to any of the provided Janus servers: Is the server down?"):(c=null,void setTimeout((function(){_(d)}),200));""===t?d.error(e+": Is the server down?"):d.error(e+": "+t)}})}function A(s){s=s||{},s.success="function"==typeof s.success?s.success:r.noop;var a=!0;void 0!==s.asyncRequest&&null!==s.asyncRequest&&(a=!0===s.asyncRequest);var d=!0;if(void 0!==s.notifyDestroyed&&null!==s.notifyDestroyed&&(d=!0===s.notifyDestroyed),r.log("Destroying session "+w+" (async="+a+")"),!b)return r.warn("Is the server down? (connected=false)"),void s.success();if(void 0===w||null===w)return r.warn("No session to destroy"),s.success(),void(d&&e.destroyed());delete r.sessions[w];var u={janus:"destroy",transaction:r.randomString(12)};if(null!==h&&void 0!==h&&(u["token"]=h),null!==g&&void 0!==g&&(u["apisecret"]=g),t){u["session_id"]=w;var l=function(){for(var e in o)n.removeEventListener(e,o[e]);n.removeEventListener("message",p),n.removeEventListener("error",m),i&&clearTimeout(i),n.close()},p=function(t){var n=JSON.parse(t.data);n.session_id==u.session_id&&n.transaction==u.transaction&&(l(),s.success(),d&&e.destroyed())},m=function(t){l(),s.error("Failed to destroy the server: Is the server down?"),d&&e.destroyed()};return n.addEventListener("message",p),n.addEventListener("error",m),void n.send(JSON.stringify(u))}r.httpAPICall(c+"/"+w,{verb:"POST",async:a,withCredentials:f,body:u,success:function(t){r.log("Destroyed session:"),r.debug(t),w=null,b=!1,"success"!==t["janus"]&&r.error("Ooops: "+t["error"].code+" "+t["error"].reason),s.success(),d&&e.destroyed()},error:function(t,n){r.error(t+":",n),w=null,b=!1,s.success(),d&&e.destroyed()}})}function I(e){if(e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e.consentDialog="function"==typeof e.consentDialog?e.consentDialog:r.noop,e.iceState="function"==typeof e.iceState?e.iceState:r.noop,e.mediaState="function"==typeof e.mediaState?e.mediaState:r.noop,e.webrtcState="function"==typeof e.webrtcState?e.webrtcState:r.noop,e.slowLink="function"==typeof e.slowLink?e.slowLink:r.noop,e.onmessage="function"==typeof e.onmessage?e.onmessage:r.noop,e.onlocalstream="function"==typeof e.onlocalstream?e.onlocalstream:r.noop,e.onremotestream="function"==typeof e.onremotestream?e.onremotestream:r.noop,e.ondata="function"==typeof e.ondata?e.ondata:r.noop,e.ondataopen="function"==typeof e.ondataopen?e.ondataopen:r.noop,e.oncleanup="function"==typeof e.oncleanup?e.oncleanup:r.noop,e.ondetached="function"==typeof e.ondetached?e.ondetached:r.noop,!b)return r.warn("Is the server down? (connected=false)"),void e.error("Is the server down? (connected=false)");var o=e.plugin;if(void 0===o||null===o)return r.error("Invalid plugin"),void e.error("Invalid plugin");var i=e.opaqueId,s=e.token?e.token:h,a=r.randomString(12),d={janus:"attach",plugin:o,opaque_id:i,transaction:a};if(null!==s&&void 0!==s&&(d["token"]=s),null!==g&&void 0!==g&&(d["apisecret"]=g),t)return P[a]=function(t){if(r.debug(t),"success"!==t["janus"])return r.error("Ooops: "+t["error"].code+" "+t["error"].reason),void e.error("Ooops: "+t["error"].code+" "+t["error"].reason);var n=t.data["id"];r.log("Created handle: "+n);var i={session:S,plugin:o,id:n,token:s,detached:!1,webrtcStuff:{started:!1,myStream:null,streamExternal:!1,remoteStream:null,mySdp:null,mediaConstraints:null,pc:null,dataChannel:{},dtmfSender:null,trickle:!0,iceDone:!1,volume:{value:null,timer:null},bitrate:{value:null,bsnow:null,bsbefore:null,tsnow:null,tsbefore:null,timer:null}},getId:function(){return n},getPlugin:function(){return o},getVolume:function(){return H(n,!0)},getRemoteVolume:function(){return H(n,!0)},getLocalVolume:function(){return H(n,!1)},isAudioMuted:function(){return U(n,!1)},muteAudio:function(){return z(n,!1,!0)},unmuteAudio:function(){return z(n,!1,!1)},isVideoMuted:function(){return U(n,!0)},muteVideo:function(){return z(n,!0,!0)},unmuteVideo:function(){return z(n,!0,!1)},getBitrate:function(){return G(n)},send:function(e){R(n,e)},data:function(e){E(n,e)},dtmf:function(e){M(n,e)},consentDialog:e.consentDialog,iceState:e.iceState,mediaState:e.mediaState,webrtcState:e.webrtcState,slowLink:e.slowLink,onmessage:e.onmessage,createOffer:function(e){q(n,!0,e)},createAnswer:function(e){q(n,!1,e)},handleRemoteJsep:function(e){V(n,e)},onlocalstream:e.onlocalstream,onremotestream:e.onremotestream,ondata:e.ondata,ondataopen:e.ondataopen,oncleanup:e.oncleanup,ondetached:e.ondetached,hangup:function(e){$(n,!0===e)},detach:function(e){L(n,e)}};T[n]=i,e.success(i)},d["session_id"]=w,void n.send(JSON.stringify(d));r.httpAPICall(c+"/"+w,{verb:"POST",withCredentials:f,body:d,success:function(t){if(r.debug(t),"success"!==t["janus"])return r.error("Ooops: "+t["error"].code+" "+t["error"].reason),void e.error("Ooops: "+t["error"].code+" "+t["error"].reason);var n=t.data["id"];r.log("Created handle: "+n);var i={session:S,plugin:o,id:n,token:s,detached:!1,webrtcStuff:{started:!1,myStream:null,streamExternal:!1,remoteStream:null,mySdp:null,mediaConstraints:null,pc:null,dataChannel:{},dtmfSender:null,trickle:!0,iceDone:!1,volume:{value:null,timer:null},bitrate:{value:null,bsnow:null,bsbefore:null,tsnow:null,tsbefore:null,timer:null}},getId:function(){return n},getPlugin:function(){return o},getVolume:function(){return H(n,!0)},getRemoteVolume:function(){return H(n,!0)},getLocalVolume:function(){return H(n,!1)},isAudioMuted:function(){return U(n,!1)},muteAudio:function(){return z(n,!1,!0)},unmuteAudio:function(){return z(n,!1,!1)},isVideoMuted:function(){return U(n,!0)},muteVideo:function(){return z(n,!0,!0)},unmuteVideo:function(){return z(n,!0,!1)},getBitrate:function(){return G(n)},send:function(e){R(n,e)},data:function(e){E(n,e)},dtmf:function(e){M(n,e)},consentDialog:e.consentDialog,iceState:e.iceState,mediaState:e.mediaState,webrtcState:e.webrtcState,slowLink:e.slowLink,onmessage:e.onmessage,createOffer:function(e){q(n,!0,e)},createAnswer:function(e){q(n,!1,e)},handleRemoteJsep:function(e){V(n,e)},onlocalstream:e.onlocalstream,onremotestream:e.onremotestream,ondata:e.ondata,ondataopen:e.ondataopen,oncleanup:e.oncleanup,ondetached:e.ondetached,hangup:function(e){$(n,!0===e)},detach:function(e){L(n,e)}};T[n]=i,e.success(i)},error:function(e,t){r.error(e+":",t)}})}function R(e,o){if(o=o||{},o.success="function"==typeof o.success?o.success:r.noop,o.error="function"==typeof o.error?o.error:r.noop,!b)return r.warn("Is the server down? (connected=false)"),void o.error("Is the server down? (connected=false)");var i=T[e];if(null===i||void 0===i||null===i.webrtcStuff||void 0===i.webrtcStuff)return r.warn("Invalid handle"),void o.error("Invalid handle");var s=o.message,a=o.jsep,d=r.randomString(12),u={janus:"message",body:s,transaction:d};if(null!==i.token&&void 0!==i.token&&(u["token"]=i.token),null!==g&&void 0!==g&&(u["apisecret"]=g),null!==a&&void 0!==a&&(u.jsep=a),r.debug("Sending message to plugin (handle="+e+"):"),r.debug(u),t)return u["session_id"]=w,u["handle_id"]=e,P[d]=function(e){if(r.debug("Message sent!"),r.debug(e),"success"===e["janus"]){var t=e["plugindata"];if(void 0===t||null===t)return r.warn("Request succeeded, but missing plugindata..."),void o.success();r.log("Synchronous transaction successful ("+t["plugin"]+")");var n=t["data"];return r.debug(n),void o.success(n)}"ack"===e["janus"]?o.success():void 0!==e["error"]&&null!==e["error"]?(r.error("Ooops: "+e["error"].code+" "+e["error"].reason),o.error(e["error"].code+" "+e["error"].reason)):(r.error("Unknown error"),o.error("Unknown error"))},void n.send(JSON.stringify(u));r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:u,success:function(e){if(r.debug("Message sent!"),r.debug(e),"success"===e["janus"]){var t=e["plugindata"];if(void 0===t||null===t)return r.warn("Request succeeded, but missing plugindata..."),void o.success();r.log("Synchronous transaction successful ("+t["plugin"]+")");var n=t["data"];return r.debug(n),void o.success(n)}"ack"===e["janus"]?o.success():void 0!==e["error"]&&null!==e["error"]?(r.error("Ooops: "+e["error"].code+" "+e["error"].reason),o.error(e["error"].code+" "+e["error"].reason)):(r.error("Unknown error"),o.error("Unknown error"))},error:function(e,t){r.error(e+":",t),o.error(e+": "+t)}})}function N(e,o){if(b){var i=T[e];if(null!==i&&void 0!==i&&null!==i.webrtcStuff&&void 0!==i.webrtcStuff){var s={janus:"trickle",candidate:o,transaction:r.randomString(12)};if(null!==i.token&&void 0!==i.token&&(s["token"]=i.token),null!==g&&void 0!==g&&(s["apisecret"]=g),r.vdebug("Sending trickle candidate (handle="+e+"):"),r.vdebug(s),t)return s["session_id"]=w,s["handle_id"]=e,void n.send(JSON.stringify(s));r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:s,success:function(e){r.vdebug("Candidate sent!"),r.vdebug(e),"ack"===e["janus"]||r.error("Ooops: "+e["error"].code+" "+e["error"].reason)},error:function(e,t){r.error(e+":",t)}})}else r.warn("Invalid handle")}else r.warn("Is the server down? (connected=false)")}function O(e,t,n,o){var i=T[e];if(null!==i&&void 0!==i&&null!==i.webrtcStuff&&void 0!==i.webrtcStuff){var s=i.webrtcStuff,a=function(e){r.log("Received message on data channel:",e);var t=e.target.label;i.ondata(e.data,t)},c=function(e){r.log("Received state change on data channel:",e);var t=e.target.label,n=null!==s.dataChannel[t]?s.dataChannel[t].readyState:"null";if(r.log("State change on <"+t+"> data channel: "+n),"open"===n){if(s.dataChannel[t].pending&&s.dataChannel[t].pending.length>0){for(var o in r.log("Sending pending messages on <' + label + '>:",s.dataChannel[t].pending.length),s.dataChannel[t].pending){var a=s.dataChannel[t].pending[o];r.log("Sending string on data channel <"+t+">: "+a),s.dataChannel[t].send(a)}s.dataChannel[t].pending=[]}i.ondataopen(t)}},d=function(e){r.error("Got error on data channel:",e)};s.dataChannel[t]=n||s.pc.createDataChannel(t,{ordered:!1}),s.dataChannel[t].onmessage=a,s.dataChannel[t].onopen=c,s.dataChannel[t].onclose=c,s.dataChannel[t].onerror=d,s.dataChannel[t].pending=[],o&&s.dataChannel[t].pending.push(o)}else r.warn("Invalid handle")}function E(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var o=n.webrtcStuff,i=t.text;if(null===i||void 0===i)return r.warn("Invalid text"),void t.error("Invalid text");var s=t.label?t.label:r.dataChanDefaultLabel;return o.dataChannel[s]?"open"!==o.dataChannel[s].readyState?(o.dataChannel[s].pending.push(i),void t.success()):(r.log("Sending string on data channel <"+s+">: "+i),o.dataChannel[s].send(i),void t.success()):(O(e,s,!1,i),void t.success())}function M(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var o=n.webrtcStuff;if(null===o.dtmfSender||void 0===o.dtmfSender){if(void 0!==o.pc&&null!==o.pc){var i=o.pc.getSenders(),s=i.find((function(e){return e.track&&"audio"===e.track.kind}));if(!s)return r.warn("Invalid DTMF configuration (no audio track)"),void t.error("Invalid DTMF configuration (no audio track)");o.dtmfSender=s.dtmf,o.dtmfSender&&(r.log("Created DTMF Sender"),o.dtmfSender.ontonechange=function(e){r.debug("Sent DTMF tone: "+e.tone)})}if(null===o.dtmfSender||void 0===o.dtmfSender)return r.warn("Invalid DTMF configuration"),void t.error("Invalid DTMF configuration")}var a=t.dtmf;if(null===a||void 0===a)return r.warn("Invalid DTMF parameters"),void t.error("Invalid DTMF parameters");var c=a.tones;if(null===c||void 0===c)return r.warn("Invalid DTMF string"),void t.error("Invalid DTMF string");var d=a.duration;null!==d&&void 0!==d||(d=500);var u=a.gap;null!==u&&void 0!==u||(u=50),r.debug("Sending DTMF string "+c+" (duration "+d+"ms, gap "+u+"ms)"),o.dtmfSender.insertDTMF(c,d,u),t.success()}function L(e,o){o=o||{},o.success="function"==typeof o.success?o.success:r.noop,o.error="function"==typeof o.error?o.error:r.noop;var i=!0;void 0!==o.asyncRequest&&null!==o.asyncRequest&&(i=!0===o.asyncRequest),r.log("Destroying handle "+e+" (async="+i+")"),$(e);var s=T[e];if(null===s||void 0===s||s.detached)return delete T[e],void o.success();if(!b)return r.warn("Is the server down? (connected=false)"),void o.error("Is the server down? (connected=false)");var a={janus:"detach",transaction:r.randomString(12)};if(null!==s.token&&void 0!==s.token&&(a["token"]=s.token),null!==g&&void 0!==g&&(a["apisecret"]=g),t)return a["session_id"]=w,a["handle_id"]=e,n.send(JSON.stringify(a)),delete T[e],void o.success();r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",async:i,withCredentials:f,body:a,success:function(t){r.log("Destroyed handle:"),r.debug(t),"success"!==t["janus"]&&r.error("Ooops: "+t["error"].code+" "+t["error"].reason),delete T[e],o.success()},error:function(t,n){r.error(t+":",n),delete T[e],o.success()}})}function j(e,t,n,o,i){var s=T[e];if(null===s||void 0===s||null===s.webrtcStuff||void 0===s.webrtcStuff)return r.warn("Invalid handle"),void o.error("Invalid handle");var a=s.webrtcStuff;r.debug("streamsDone:",i),i&&(r.debug(" -- Audio tracks:",i.getAudioTracks()),r.debug(" -- Video tracks:",i.getVideoTracks()));var c=!1;if(a.myStream&&n.update&&!a.streamExternal){if((!n.update&&K(n)||n.update&&(n.addAudio||n.replaceAudio))&&i.getAudioTracks()&&i.getAudioTracks().length)if(a.myStream.addTrack(i.getAudioTracks()[0]),"firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){r.log((n.replaceAudio?"Replacing":"Adding")+" audio track:",i.getAudioTracks()[0]);var f=null,m=a.pc.getTransceivers();if(m&&m.length>0)for(var h in m){var g=m[h];if(g.sender&&g.sender.track&&"audio"===g.sender.track.kind||g.receiver&&g.receiver.track&&"audio"===g.receiver.track.kind){f=g;break}}f&&f.sender?f.sender.replaceTrack(i.getAudioTracks()[0]):a.pc.addTrack(i.getAudioTracks()[0],i)}else r.log((n.replaceAudio?"Replacing":"Adding")+" audio track:",i.getAudioTracks()[0]),a.pc.addTrack(i.getAudioTracks()[0],i);if((!n.update&&Z(n)||n.update&&(n.addVideo||n.replaceVideo))&&i.getVideoTracks()&&i.getVideoTracks().length)if(a.myStream.addTrack(i.getVideoTracks()[0]),"firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){r.log((n.replaceVideo?"Replacing":"Adding")+" video track:",i.getVideoTracks()[0]);var v=null;m=a.pc.getTransceivers();if(m&&m.length>0)for(var h in m){g=m[h];if(g.sender&&g.sender.track&&"video"===g.sender.track.kind||g.receiver&&g.receiver.track&&"video"===g.receiver.track.kind){v=g;break}}v&&v.sender?v.sender.replaceTrack(i.getVideoTracks()[0]):a.pc.addTrack(i.getVideoTracks()[0],i)}else r.log((n.replaceVideo?"Replacing":"Adding")+" video track:",i.getVideoTracks()[0]),a.pc.addTrack(i.getVideoTracks()[0],i)}else a.myStream=i,c=!0;if(!a.pc){var y={iceServers:d,iceTransportPolicy:u,bundlePolicy:l};"chrome"===r.webRTCAdapter.browserDetails.browser&&(y["sdpSemantics"]=r.webRTCAdapter.browserDetails.version<72?"plan-b":"unified-plan");var b={optional:[{DtlsSrtpKeyAgreement:!0}]};if(!0===p&&b.optional.push({googIPv6:!0}),o.rtcConstraints&&"object"===typeof o.rtcConstraints)for(var h in r.debug("Adding custom PeerConnection constraints:",o.rtcConstraints),o.rtcConstraints)b.optional.push(o.rtcConstraints[h]);"edge"===r.webRTCAdapter.browserDetails.browser&&(y.bundlePolicy="max-bundle"),r.log("Creating PeerConnection"),r.debug(b),a.pc=new RTCPeerConnection(y,b),r.debug(a.pc),a.pc.getStats&&(a.volume={},a.bitrate.value="0 kbits/sec"),r.log("Preparing local SDP and gathering candidates (trickle="+a.trickle+")"),a.pc.oniceconnectionstatechange=function(e){a.pc&&s.iceState(a.pc.iceConnectionState)},a.pc.onicecandidate=function(t){if(null==t.candidate||"edge"===r.webRTCAdapter.browserDetails.browser&&t.candidate.candidate.indexOf("endOfCandidates")>0)r.log("End of candidates."),a.iceDone=!0,!0===a.trickle?N(e,{completed:!0}):W(e,o);else{var n=t.candidate.candidate,i=n.split(" "),s=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/,c=i[4].match(s);c&&""!=c||(i[4]="127.0.0.1");var d=i.join(" "),u={candidate:d,sdpMid:t.candidate.sdpMid,sdpMLineIndex:t.candidate.sdpMLineIndex};!0===a.trickle&&N(e,u)}},a.pc.ontrack=function(e){r.log("Handling Remote Track"),r.debug(e),e.streams&&(a.remoteStream=e.streams[0],s.onremotestream(a.remoteStream),e.track&&!e.track.onended&&(r.log("Adding onended callback to track:",e.track),e.track.onended=function(e){r.log("Remote track removed:",e),a.remoteStream&&(a.remoteStream.removeTrack(e.target),s.onremotestream(a.remoteStream))}))}}if(c&&null!==i&&void 0!==i){r.log("Adding local stream");var w=!0===o.simulcast2;i.getTracks().forEach((function(e){r.log("Adding local track:",e),w?"audio"===e.kind?a.pc.addTrack(e,i):(r.log("Enabling rid-based simulcasting:",e),a.pc.addTransceiver(e,{direction:"sendrecv",streams:[i],sendEncodings:[{rid:"h",active:!0,maxBitrate:9e5},{rid:"m",active:!0,maxBitrate:3e5,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:1e5,scaleResolutionDownBy:4}]})):a.pc.addTrack(e,i)}))}re(n)&&!a.dataChannel[r.dataChanDefaultLabel]&&(r.log("Creating data channel"),O(e,r.dataChanDefaultLabel,!1),a.pc.ondatachannel=function(t){r.log("Data channel created by Janus:",t),O(e,t.channel.label,t.channel)}),a.myStream&&s.onlocalstream(a.myStream),null===t||void 0===t?B(e,n,o):a.pc.setRemoteDescription(t).then((function(){if(r.log("Remote description accepted!"),a.remoteSdp=t.sdp,a.candidates&&a.candidates.length>0){for(var i in a.candidates){var s=a.candidates[i];r.debug("Adding remote candidate:",s),s&&!0!==s.completed?a.pc.addIceCandidate(s):a.pc.addIceCandidate()}a.candidates=[]}F(e,n,o)}),o.error)}function q(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:J;var o=n.jsep;if(t&&o)return r.error("Provided a JSEP to a createOffer"),void n.error("Provided a JSEP to a createOffer");if(!t&&(!o||!o.type||!o.sdp))return r.error("A valid JSEP is required for createAnswer"),void n.error("A valid JSEP is required for createAnswer");n.media=n.media||{audio:!0,video:!0};var i=n.media,s=T[e];if(null===s||void 0===s||null===s.webrtcStuff||void 0===s.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var a=s.webrtcStuff;if(a.trickle=oe(n.trickle),void 0===a.pc||null===a.pc)i.update=!1,i.keepAudio=!1,i.keepVideo=!1;else if(void 0!==a.pc&&null!==a.pc){if(r.log("Updating existing media session"),i.update=!0,null!==n.stream&&void 0!==n.stream)n.stream!==a.myStream&&r.log("Renegotiation involves a new external stream");else{if(i.addAudio){if(i.keepAudio=!1,i.replaceAudio=!1,i.removeAudio=!1,i.audioSend=!0,a.myStream&&a.myStream.getAudioTracks()&&a.myStream.getAudioTracks().length)return r.error("Can't add audio stream, there already is one"),void n.error("Can't add audio stream, there already is one")}else i.removeAudio?(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!1,i.audioSend=!1):i.replaceAudio&&(i.keepAudio=!1,i.addAudio=!1,i.removeAudio=!1,i.audioSend=!0);if(null===a.myStream||void 0===a.myStream?(i.replaceAudio&&(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!0,i.audioSend=!0),K(i)&&(i.keepAudio=!1,i.addAudio=!0)):null===a.myStream.getAudioTracks()||void 0===a.myStream.getAudioTracks()||0===a.myStream.getAudioTracks().length?(i.replaceAudio&&(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!0,i.audioSend=!0),K(i)&&(i.keepVideo=!1,i.addAudio=!0)):!K(i)||i.removeAudio||i.replaceAudio||(i.keepAudio=!0),i.addVideo){if(i.keepVideo=!1,i.replaceVideo=!1,i.removeVideo=!1,i.videoSend=!0,a.myStream&&a.myStream.getVideoTracks()&&a.myStream.getVideoTracks().length)return r.error("Can't add video stream, there already is one"),void n.error("Can't add video stream, there already is one")}else i.removeVideo?(i.keepVideo=!1,i.replaceVideo=!1,i.addVideo=!1,i.videoSend=!1):i.replaceVideo&&(i.keepVideo=!1,i.addVideo=!1,i.removeVideo=!1,i.videoSend=!0);null===a.myStream||void 0===a.myStream||null===a.myStream.getVideoTracks()||void 0===a.myStream.getVideoTracks()||0===a.myStream.getVideoTracks().length?(i.replaceVideo&&(i.keepVideo=!1,i.replaceVideo=!1,i.addVideo=!0,i.videoSend=!0),Z(i)&&(i.keepVideo=!1,i.addVideo=!0)):!Z(i)||i.removeVideo||i.replaceVideo||(i.keepVideo=!0),i.addData&&(i.data=!0)}if(K(i)&&i.keepAudio&&Z(i)&&i.keepVideo)return s.consentDialog(!1),void j(e,o,i,n,a.myStream)}if(i.update&&!a.streamExternal){if(i.removeAudio||i.replaceAudio){if(a.myStream&&a.myStream.getAudioTracks()&&a.myStream.getAudioTracks().length){var c=a.myStream.getAudioTracks()[0];r.log("Removing audio track:",c),a.myStream.removeTrack(c);try{c.stop()}catch(A){}}if(a.pc.getSenders()&&a.pc.getSenders().length){var d=!0;if(i.replaceAudio&&("firefox"===r.webRTCAdapter.browserDetails.browser||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72)&&(d=!1),d)for(var u in a.pc.getSenders()){c=a.pc.getSenders()[u];c&&c.track&&"audio"===c.track.kind&&(r.log("Removing audio sender:",c),a.pc.removeTrack(c))}}}if(i.removeVideo||i.replaceVideo){if(a.myStream&&a.myStream.getVideoTracks()&&a.myStream.getVideoTracks().length){c=a.myStream.getVideoTracks()[0];r.log("Removing video track:",c),a.myStream.removeTrack(c);try{c.stop()}catch(A){}}if(a.pc.getSenders()&&a.pc.getSenders().length){var l=!0;if(i.replaceVideo&&("firefox"===r.webRTCAdapter.browserDetails.browser||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72)&&(l=!1),l)for(var u in a.pc.getSenders()){c=a.pc.getSenders()[u];c&&c.track&&"video"===c.track.kind&&(r.log("Removing video sender:",c),a.pc.removeTrack(c))}}}}if(null!==n.stream&&void 0!==n.stream){var p=n.stream;if(r.log("MediaStream provided by the application"),r.debug(p),i.update&&a.myStream&&a.myStream!==n.stream&&!a.streamExternal){try{var f=a.myStream.getTracks();for(var m in f){var h=f[m];r.log(h),null!==h&&void 0!==h&&h.stop()}}catch(A){}a.myStream=null}return a.streamExternal=!0,s.consentDialog(!1),void j(e,o,i,n,p)}if(K(i)||Z(i)){if(!r.isGetUserMediaAvailable())return void n.error("getUserMedia not available");var g={mandatory:{},optional:[]};s.consentDialog(!0);var v=K(i);!0===v&&void 0!=i&&null!=i&&"object"===typeof i.audio&&(v=i.audio);var y=Z(i);if(!0===y&&void 0!=i&&null!=i){var b=!0===n.simulcast,w=!0===n.simulcast2;if(!b&&!w||o||void 0!==i.video&&!1!==i.video||(i.video="hires"),i.video&&"screen"!=i.video&&"window"!=i.video)if("object"===typeof i.video)y=i.video;else{var S=0,C=0;"lowres"===i.video?(C=240,240,S=320):"lowres-16:9"===i.video?(C=180,180,S=320):"hires"===i.video||"hires-16:9"===i.video||"hdres"===i.video?(C=720,720,S=1280):"fhdres"===i.video?(C=1080,1080,S=1920):"4kres"===i.video?(C=2160,2160,S=3840):"stdres"===i.video?(C=480,480,S=640):"stdres-16:9"===i.video?(C=360,360,S=640):(r.log("Default video setting is stdres 4:3"),C=480,480,S=640),r.log("Adding media constraint:",i.video),y={height:{ideal:C},width:{ideal:S}},r.log("Adding video constraint:",y)}else if("screen"===i.video||"window"===i.video){if(i.screenshareFrameRate||(i.screenshareFrameRate=3),navigator.mediaDevices&&navigator.mediaDevices.getDisplayMedia)return void navigator.mediaDevices.getDisplayMedia({video:!0}).then((function(t){s.consentDialog(!1),K(i)&&!i.keepAudio?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(r){t.addTrack(r.getAudioTracks()[0]),j(e,o,i,n,t)})):j(e,o,i,n,t)}),(function(e){s.consentDialog(!1),n.error(e)}));function P(t,r){s.consentDialog(!1),t?n.error(t):j(e,o,i,n,r)}function x(e,t,n){r.log("Adding media constraint (screen capture)"),r.debug(e),navigator.mediaDevices.getUserMedia(e).then((function(e){n?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(n){e.addTrack(n.getAudioTracks()[0]),t(null,e)})):t(null,e)})).catch((function(e){s.consentDialog(!1),t(e)}))}if("chrome"===r.webRTCAdapter.browserDetails.browser){var k=r.webRTCAdapter.browserDetails.version,D=33;window.navigator.userAgent.match("Linux")&&(D=35),k>=26&&k<=D?(g={video:{mandatory:{googLeakyBucket:!0,maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:i.screenshareFrameRate,maxFrameRate:i.screenshareFrameRate,chromeMediaSource:"screen"}},audio:K(i)&&!i.keepAudio},x(g,P)):r.extension.getScreen((function(e,t){if(e)return s.consentDialog(!1),n.error(e);g={audio:!1,video:{mandatory:{chromeMediaSource:"desktop",maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:i.screenshareFrameRate,maxFrameRate:i.screenshareFrameRate},optional:[{googLeakyBucket:!0},{googTemporalLayeredScreencast:!0}]}},g.video.mandatory.chromeMediaSourceId=t,x(g,P,K(i)&&!i.keepAudio)}))}else if("firefox"===r.webRTCAdapter.browserDetails.browser){if(!(r.webRTCAdapter.browserDetails.version>=33)){var _=new Error("NavigatorUserMediaError");return _.name="Your version of Firefox does not support screen sharing, please install Firefox 33 (or more recent versions)",s.consentDialog(!1),void n.error(_)}g={video:{mozMediaSource:i.video,mediaSource:i.video},audio:K(i)&&!i.keepAudio},x(g,(function(e,t){if(P(e,t),!e)var n=t.currentTime,r=window.setInterval((function(){t||window.clearInterval(r),t.currentTime==n&&(window.clearInterval(r),t.onended&&t.onended()),n=t.currentTime}),500)}))}return}}null!==i&&void 0!==i&&"screen"===i.video||navigator.mediaDevices.enumerateDevices().then((function(t){var a=t.some((function(e){return"audioinput"===e.kind})),c=ne(i)||t.some((function(e){return"videoinput"===e.kind})),d=K(i),u=Z(i),l=X(i),f=ee(i);if(d||u||l||f){var m=!!d&&a,h=!!u&&c;if(!m&&!h)return s.consentDialog(!1),n.error("No capture device found"),!1;if(!m&&l)return s.consentDialog(!1),n.error("Audio capture is required, but no capture device found"),!1;if(!h&&f)return s.consentDialog(!1),n.error("Video capture is required, but no capture device found"),!1}var g={audio:!(!a||i.keepAudio)&&v,video:!(!c||i.keepVideo)&&y};r.debug("getUserMedia constraints",g),g.audio||g.video?navigator.mediaDevices.getUserMedia(g).then((function(t){s.consentDialog(!1),j(e,o,i,n,t)})).catch((function(e){s.consentDialog(!1),n.error({code:e.code,name:e.name,message:e.message})})):(s.consentDialog(!1),j(e,o,i,n,p))})).catch((function(e){s.consentDialog(!1),n.error("enumerateDevices error",e)}))}else j(e,o,i,n)}function V(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:J;var n=t.jsep,o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var i=o.webrtcStuff;if(void 0!==n&&null!==n){if(null===i.pc)return r.warn("Wait, no PeerConnection?? if this is an answer, use createAnswer and not handleRemoteJsep"),void t.error("No PeerConnection: if this is an answer, use createAnswer and not handleRemoteJsep");i.pc.setRemoteDescription(n).then((function(){if(r.log("Remote description accepted!"),i.remoteSdp=n.sdp,i.candidates&&i.candidates.length>0){for(var e in i.candidates){var o=i.candidates[e];r.debug("Adding remote candidate:",o),o&&!0!==o.completed?i.pc.addIceCandidate(o):i.pc.addIceCandidate()}i.candidates=[]}t.success()}),t.error)}else t.error("Invalid JSEP")}function B(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:r.noop,n.customizeSdp="function"==typeof n.customizeSdp?n.customizeSdp:r.noop;var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var i=o.webrtcStuff,s=!0===n.simulcast;s?r.log("Creating offer (iceDone="+i.iceDone+", simulcast="+s+")"):r.log("Creating offer (iceDone="+i.iceDone+")");var a={};if("firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){var c=null,d=null,u=i.pc.getTransceivers();if(u&&u.length>0)for(var l in u){var p=u[l];p.sender&&p.sender.track&&"audio"===p.sender.track.kind||p.receiver&&p.receiver.track&&"audio"===p.receiver.track.kind?c||(c=p):(p.sender&&p.sender.track&&"video"===p.sender.track.kind||p.receiver&&p.receiver.track&&"video"===p.receiver.track.kind)&&(d||(d=p))}var f=K(t),m=Y(t);f||m?f&&m?c&&(c.setDirection?c.setDirection("sendrecv"):c.direction="sendrecv",r.log("Setting audio transceiver to sendrecv:",c)):f&&!m?c&&(c.setDirection?c.setDirection("sendonly"):c.direction="sendonly",r.log("Setting audio transceiver to sendonly:",c)):!f&&m&&(c?(c.setDirection?c.setDirection("recvonly"):c.direction="recvonly",r.log("Setting audio transceiver to recvonly:",c)):(c=i.pc.addTransceiver("audio",{direction:"recvonly"}),r.log("Adding recvonly audio transceiver:",c))):t.removeAudio&&c&&(c.setDirection?c.setDirection("inactive"):c.direction="inactive",r.log("Setting audio transceiver to inactive:",c));var h=Z(t),g=te(t);h||g?h&&g?d&&(d.setDirection?d.setDirection("sendrecv"):d.direction="sendrecv",r.log("Setting video transceiver to sendrecv:",d)):h&&!g?d&&(d.setDirection?d.setDirection("sendonly"):d.direction="sendonly",r.log("Setting video transceiver to sendonly:",d)):!h&&g&&(d?(d.setDirection?d.setDirection("recvonly"):d.direction="recvonly",r.log("Setting video transceiver to recvonly:",d)):(d=i.pc.addTransceiver("video",{direction:"recvonly"}),r.log("Adding recvonly video transceiver:",d))):t.removeVideo&&d&&(d.setDirection?d.setDirection("inactive"):d.direction="inactive",r.log("Setting video transceiver to inactive:",d))}else a["offerToReceiveAudio"]=Y(t),a["offerToReceiveVideo"]=te(t);var v=!0===n.iceRestart;v&&(a["iceRestart"]=!0),r.debug(a);var y=Z(t);if(y&&s&&"firefox"===r.webRTCAdapter.browserDetails.browser){r.log("Enabling Simulcasting for Firefox (RID)");var b=i.pc.getSenders().find((function(e){return"video"==e.track.kind}));if(b){var w=b.getParameters();w||(w={}),w.encodings=[{rid:"h",active:!0,maxBitrate:9e5},{rid:"m",active:!0,maxBitrate:3e5,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:1e5,scaleResolutionDownBy:4}],b.setParameters(w)}}i.pc.createOffer(a).then((function(e){r.debug(e);var t={type:e.type,sdp:e.sdp};n.customizeSdp(t),e.sdp=t.sdp,r.log("Setting local description"),y&&s&&("chrome"===r.webRTCAdapter.browserDetails.browser||"safari"===r.webRTCAdapter.browserDetails.browser?(r.log("Enabling Simulcasting for Chrome (SDP munging)"),e.sdp=Q(e.sdp)):"firefox"!==r.webRTCAdapter.browserDetails.browser&&r.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),i.mySdp=e.sdp,i.pc.setLocalDescription(e).catch(n.error),i.mediaConstraints=a,i.iceDone||i.trickle?(r.log("Offer ready"),r.debug(n),n.success(e)):r.log("Waiting for all candidates...")}),n.error)}function F(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:r.noop,n.customizeSdp="function"==typeof n.customizeSdp?n.customizeSdp:r.noop;var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var i=o.webrtcStuff,s=!0===n.simulcast;s?r.log("Creating answer (iceDone="+i.iceDone+", simulcast="+s+")"):r.log("Creating answer (iceDone="+i.iceDone+")");var a=null;if("firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){a={};var c=null,d=null,u=i.pc.getTransceivers();if(u&&u.length>0)for(var l in u){var p=u[l];p.sender&&p.sender.track&&"audio"===p.sender.track.kind||p.receiver&&p.receiver.track&&"audio"===p.receiver.track.kind?c||(c=p):(p.sender&&p.sender.track&&"video"===p.sender.track.kind||p.receiver&&p.receiver.track&&"video"===p.receiver.track.kind)&&(d||(d=p))}var f=K(t),m=Y(t);f||m?f&&m?c&&(c.setDirection?c.setDirection("sendrecv"):c.direction="sendrecv",r.log("Setting audio transceiver to sendrecv:",c)):f&&!m?c&&(c.setDirection?c.setDirection("sendonly"):c.direction="sendonly",r.log("Setting audio transceiver to sendonly:",c)):!f&&m&&(c?(c.setDirection?c.setDirection("recvonly"):c.direction="recvonly",r.log("Setting audio transceiver to recvonly:",c)):(c=i.pc.addTransceiver("audio",{direction:"recvonly"}),r.log("Adding recvonly audio transceiver:",c))):t.removeAudio&&c&&(c.setDirection?c.setDirection("inactive"):c.direction="inactive",r.log("Setting audio transceiver to inactive:",c));var h=Z(t),g=te(t);h||g?h&&g?d&&(d.setDirection?d.setDirection("sendrecv"):d.direction="sendrecv",r.log("Setting video transceiver to sendrecv:",d)):h&&!g?d&&(d.setDirection?d.setDirection("sendonly"):d.direction="sendonly",r.log("Setting video transceiver to sendonly:",d)):!h&&g&&(d?(d.setDirection?d.setDirection("recvonly"):d.direction="recvonly",r.log("Setting video transceiver to recvonly:",d)):(d=i.pc.addTransceiver("video",{direction:"recvonly"}),r.log("Adding recvonly video transceiver:",d))):t.removeVideo&&d&&(d.setDirection?d.setDirection("inactive"):d.direction="inactive",r.log("Setting video transceiver to inactive:",d))}else a="firefox"==r.webRTCAdapter.browserDetails.browser||"edge"==r.webRTCAdapter.browserDetails.browser?{offerToReceiveAudio:Y(t),offerToReceiveVideo:te(t)}:{mandatory:{OfferToReceiveAudio:Y(t),OfferToReceiveVideo:te(t)}};r.debug(a);var v=Z(t);if(v&&s&&"firefox"===r.webRTCAdapter.browserDetails.browser){r.log("Enabling Simulcasting for Firefox (RID)");var y=i.pc.getSenders()[1];r.log(y);var b=y.getParameters();r.log(b),y.setParameters({encodings:[{rid:"high",active:!0,priority:"high",maxBitrate:1e6},{rid:"medium",active:!0,priority:"medium",maxBitrate:3e5},{rid:"low",active:!0,priority:"low",maxBitrate:1e5}]})}i.pc.createAnswer(a).then((function(e){r.debug(e);var t={type:e.type,sdp:e.sdp};n.customizeSdp(t),e.sdp=t.sdp,r.log("Setting local description"),v&&s&&("chrome"===r.webRTCAdapter.browserDetails.browser?r.warn("simulcast=true, but this is an answer, and video breaks in Chrome if we enable it"):"firefox"!==r.webRTCAdapter.browserDetails.browser&&r.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),i.mySdp=e.sdp,i.pc.setLocalDescription(e).catch(n.error),i.mediaConstraints=a,i.iceDone||i.trickle?n.success(e):r.log("Waiting for all candidates...")}),n.error)}function W(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null!==n&&void 0!==n&&null!==n.webrtcStuff&&void 0!==n.webrtcStuff){var o=n.webrtcStuff;r.log("Sending offer/answer SDP..."),null!==o.mySdp&&void 0!==o.mySdp?(o.mySdp={type:o.pc.localDescription.type,sdp:o.pc.localDescription.sdp},!1===o.trickle&&(o.mySdp["trickle"]=!1),r.debug(t),o.sdpSent=!0,t.success(o.mySdp)):r.warn("Local SDP instance is invalid, not sending anything...")}else r.warn("Invalid handle, not sending anything")}function H(e,t){var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),0;var o=t?"remote":"local",i=n.webrtcStuff;return i.volume[o]||(i.volume[o]={value:0}),i.pc.getStats&&"chrome"===r.webRTCAdapter.browserDetails.browser?!t||null!==i.remoteStream&&void 0!==i.remoteStream?t||null!==i.myStream&&void 0!==i.myStream?null===i.volume[o].timer||void 0===i.volume[o].timer?(r.log("Starting "+o+" volume monitor"),i.volume[o].timer=setInterval((function(){i.pc.getStats((function(e){for(var n=e.result(),r=0;r<n.length;r++){var s=n[r];"ssrc"==s.type&&(t&&s.stat("audioOutputLevel")?i.volume[o].value=parseInt(s.stat("audioOutputLevel")):!t&&s.stat("audioInputLevel")&&(i.volume[o].value=parseInt(s.stat("audioInputLevel"))))}}))}),200),0):i.volume[o].value:(r.warn("Local stream unavailable"),0):(r.warn("Remote stream unavailable"),0):(r.warn("Getting the "+o+" volume unsupported by browser"),0)}function U(e,t){var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),!0;var o=n.webrtcStuff;return null===o.pc||void 0===o.pc?(r.warn("Invalid PeerConnection"),!0):void 0===o.myStream||null===o.myStream?(r.warn("Invalid local MediaStream"),!0):t?null===o.myStream.getVideoTracks()||void 0===o.myStream.getVideoTracks()||0===o.myStream.getVideoTracks().length?(r.warn("No video track"),!0):!o.myStream.getVideoTracks()[0].enabled:null===o.myStream.getAudioTracks()||void 0===o.myStream.getAudioTracks()||0===o.myStream.getAudioTracks().length?(r.warn("No audio track"),!0):!o.myStream.getAudioTracks()[0].enabled}function z(e,t,n){var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),!1;var i=o.webrtcStuff;return null===i.pc||void 0===i.pc?(r.warn("Invalid PeerConnection"),!1):void 0===i.myStream||null===i.myStream?(r.warn("Invalid local MediaStream"),!1):t?null===i.myStream.getVideoTracks()||void 0===i.myStream.getVideoTracks()||0===i.myStream.getVideoTracks().length?(r.warn("No video track"),!1):(i.myStream.getVideoTracks()[0].enabled=!n,!0):null===i.myStream.getAudioTracks()||void 0===i.myStream.getAudioTracks()||0===i.myStream.getAudioTracks().length?(r.warn("No audio track"),!1):(i.myStream.getAudioTracks()[0].enabled=!n,!0)}function G(e){var t=T[e];if(null===t||void 0===t||null===t.webrtcStuff||void 0===t.webrtcStuff)return r.warn("Invalid handle"),"Invalid handle";var n=t.webrtcStuff;return null===n.pc||void 0===n.pc?"Invalid PeerConnection":n.pc.getStats?null===n.bitrate.timer||void 0===n.bitrate.timer?(r.log("Starting bitrate timer (via getStats)"),n.bitrate.timer=setInterval((function(){n.pc.getStats().then((function(e){e.forEach((function(e){if(e){var t=!1;if(("video"===e.mediaType||e.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===e.type&&e.id.indexOf("rtcp")<0?t=!0:"ssrc"!=e.type||!e.bytesReceived||"VP8"!==e.googCodecName&&""!==e.googCodecName||(t=!0),t)if(n.bitrate.bsnow=e.bytesReceived,n.bitrate.tsnow=e.timestamp,null===n.bitrate.bsbefore||null===n.bitrate.tsbefore)n.bitrate.bsbefore=n.bitrate.bsnow,n.bitrate.tsbefore=n.bitrate.tsnow;else{var o=n.bitrate.tsnow-n.bitrate.tsbefore;"safari"==r.webRTCAdapter.browserDetails.browser&&(o/=1e3);var i=Math.round(8*(n.bitrate.bsnow-n.bitrate.bsbefore)/o);"safari"===r.webRTCAdapter.browserDetails.browser&&(i=parseInt(i/1e3)),n.bitrate.value=i+" kbits/sec",n.bitrate.bsbefore=n.bitrate.bsnow,n.bitrate.tsbefore=n.bitrate.tsnow}}}))}))}),1e3),"0 kbits/sec"):n.bitrate.value:(r.warn("Getting the video bitrate unsupported by browser"),"Feature unsupported by browser")}function J(e){r.error("WebRTC error:",e)}function $(e,o){r.log("Cleaning WebRTC stuff");var i=T[e];if(null!==i&&void 0!==i){var s=i.webrtcStuff;if(null!==s&&void 0!==s){if(!0===o){var a={janus:"hangup",transaction:r.randomString(12)};null!==i.token&&void 0!==i.token&&(a["token"]=i.token),null!==g&&void 0!==g&&(a["apisecret"]=g),r.debug("Sending hangup request (handle="+e+"):"),r.debug(a),t?(a["session_id"]=w,a["handle_id"]=e,n.send(JSON.stringify(a))):r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:a})}s.remoteStream=null,s.volume&&(s.volume["local"]&&s.volume["local"].timer&&clearInterval(s.volume["local"].timer),s.volume["remote"]&&s.volume["remote"].timer&&clearInterval(s.volume["remote"].timer)),s.volume={},s.bitrate.timer&&clearInterval(s.bitrate.timer),s.bitrate.timer=null,s.bitrate.bsnow=null,s.bitrate.bsbefore=null,s.bitrate.tsnow=null,s.bitrate.tsbefore=null,s.bitrate.value=null;try{if(!s.streamExternal&&null!==s.myStream&&void 0!==s.myStream){r.log("Stopping local stream tracks");var d=s.myStream.getTracks();for(var u in d){var l=d[u];r.log(l),null!==l&&void 0!==l&&l.stop()}}}catch(p){}s.streamExternal=!1,s.myStream=null;try{s.pc.close()}catch(p){}s.pc=null,s.candidates=null,s.mySdp=null,s.remoteSdp=null,s.iceDone=!1,s.dataChannel={},s.dtmfSender=null}i.oncleanup()}}function Q(e){for(var t=e.split("\r\n"),n=!1,o=[-1],i=[-1],s=null,a=null,c=null,d=null,u=-1,l=0;l<t.length;l++){var p=t[l].match(/m=(\w+) */);if(p){var f=p[1];if("video"===f){if(!(o[0]<0)){u=l;break}n=!0}else if(o[0]>-1){u=l;break}}else if(n){var m=t[l].match(/a=ssrc-group:FID (\d+) (\d+)/);if(m)o[0]=m[1],i[0]=m[2],t.splice(l,1),l--;else{if(o[0]){var h=t[l].match("a=ssrc:"+o[0]+" cname:(.+)");if(h&&(s=h[1]),h=t[l].match("a=ssrc:"+o[0]+" msid:(.+)"),h&&(a=h[1]),h=t[l].match("a=ssrc:"+o[0]+" mslabel:(.+)"),h&&(c=h[1]),h=t[l].match("a=ssrc:"+o[0]+" label:(.+)"),h&&(d=h[1]),0===t[l].indexOf("a=ssrc:"+i[0])){t.splice(l,1),l--;continue}if(0===t[l].indexOf("a=ssrc:"+o[0])){t.splice(l,1),l--;continue}}0!=t[l].length||(t.splice(l,1),l--)}}}if(o[0]<0){u=-1,n=!1;for(l=0;l<t.length;l++){p=t[l].match(/m=(\w+) */);if(p){f=p[1];if("video"===f){if(!(o[0]<0)){u=l;break}n=!0}else if(o[0]>-1){u=l;break}}else if(n){if(o[0]<0){var g=t[l].match(/a=ssrc:(\d+)/);if(g){o[0]=g[1],t.splice(l,1),l--;continue}}else{h=t[l].match("a=ssrc:"+o[0]+" cname:(.+)");if(h&&(s=h[1]),h=t[l].match("a=ssrc:"+o[0]+" msid:(.+)"),h&&(a=h[1]),h=t[l].match("a=ssrc:"+o[0]+" mslabel:(.+)"),h&&(c=h[1]),h=t[l].match("a=ssrc:"+o[0]+" label:(.+)"),h&&(d=h[1]),0===t[l].indexOf("a=ssrc:"+i[0])){t.splice(l,1),l--;continue}if(0===t[l].indexOf("a=ssrc:"+o[0])){t.splice(l,1),l--;continue}}0!=t[l].length||(t.splice(l,1),l--)}}}if(o[0]<0)return r.warn("Couldn't find the video SSRC, simulcasting NOT enabled"),e;u<0&&(u=t.length),o[1]=Math.floor(4294967295*Math.random()),o[2]=Math.floor(4294967295*Math.random()),i[1]=Math.floor(4294967295*Math.random()),i[2]=Math.floor(4294967295*Math.random());for(l=0;l<o.length;l++)s&&(t.splice(u,0,"a=ssrc:"+o[l]+" cname:"+s),u++),a&&(t.splice(u,0,"a=ssrc:"+o[l]+" msid:"+a),u++),c&&(t.splice(u,0,"a=ssrc:"+o[l]+" mslabel:"+c),u++),d&&(t.splice(u,0,"a=ssrc:"+o[l]+" label:"+d),u++),s&&(t.splice(u,0,"a=ssrc:"+i[l]+" cname:"+s),u++),a&&(t.splice(u,0,"a=ssrc:"+i[l]+" msid:"+a),u++),c&&(t.splice(u,0,"a=ssrc:"+i[l]+" mslabel:"+c),u++),d&&(t.splice(u,0,"a=ssrc:"+i[l]+" label:"+d),u++);return t.splice(u,0,"a=ssrc-group:FID "+o[2]+" "+i[2]),t.splice(u,0,"a=ssrc-group:FID "+o[1]+" "+i[1]),t.splice(u,0,"a=ssrc-group:FID "+o[0]+" "+i[0]),t.splice(u,0,"a=ssrc-group:SIM "+o[0]+" "+o[1]+" "+o[2]),e=t.join("\r\n"),e.endsWith("\r\n")||(e+="\r\n"),e}function K(e){return r.debug("isAudioSendEnabled:",e),void 0===e||null===e||!1!==e.audio&&(void 0===e.audioSend||null===e.audioSend||!0===e.audioSend)}function X(e){return r.debug("isAudioSendRequired:",e),void 0!==e&&null!==e&&(!1!==e.audio&&!1!==e.audioSend&&(void 0!==e.failIfNoAudio&&null!==e.failIfNoAudio&&!0===e.failIfNoAudio))}function Y(e){return r.debug("isAudioRecvEnabled:",e),void 0===e||null===e||!1!==e.audio&&(void 0===e.audioRecv||null===e.audioRecv||!0===e.audioRecv)}function Z(e){return r.debug("isVideoSendEnabled:",e),void 0===e||null===e||!1!==e.video&&(void 0===e.videoSend||null===e.videoSend||!0===e.videoSend)}function ee(e){return r.debug("isVideoSendRequired:",e),void 0!==e&&null!==e&&(!1!==e.video&&!1!==e.videoSend&&(void 0!==e.failIfNoVideo&&null!==e.failIfNoVideo&&!0===e.failIfNoVideo))}function te(e){return r.debug("isVideoRecvEnabled:",e),void 0===e||null===e||!1!==e.video&&(void 0===e.videoRecv||null===e.videoRecv||!0===e.videoRecv)}function ne(e){if(r.debug("isScreenSendEnabled:",e),void 0===e||null===e)return!1;if("object"!==typeof e.video||"object"!==typeof e.video.mandatory)return!1;var t=e.video.mandatory;return t.chromeMediaSource?"desktop"===t.chromeMediaSource||"screen"===t.chromeMediaSource:t.mozMediaSource?"window"===t.mozMediaSource||"screen"===t.mozMediaSource:!!t.mediaSource&&("window"===t.mediaSource||"screen"===t.mediaSource)}function re(e){return r.debug("isDataEnabled:",e),"edge"==r.webRTCAdapter.browserDetails.browser?(r.warn("Edge doesn't support data channels yet"),!1):void 0!==e&&null!==e&&!0===e.data}function oe(e){return r.debug("isTrickleEnabled:",e),void 0===e||null===e||!0===e}_(e),this.getServer=function(){return c},this.isConnected=function(){return b},this.reconnect=function(e){e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e["reconnect"]=!0,_(e)},this.getSessionId=function(){return w},this.destroy=function(e){A(e)},this.attach=function(e){I(e)}}r.useDefaultDependencies=function(e){var t=e&&e.fetch||fetch,o=e&&e.Promise||Promise,i=e&&e.WebSocket||WebSocket;return{newWebSocket:function(e,t){return new i(e,t)},extension:e&&e.extension||n,isArray:function(e){return Array.isArray(e)},webRTCAdapter:e&&e.adapter||adapter,httpAPICall:function(e,n){var i={method:n.verb,headers:{Accept:"application/json, text/plain, */*"},cache:"no-cache"};"POST"===n.verb&&(i.headers["Content-Type"]="application/json"),void 0!==n.withCredentials&&(i.credentials=!0===n.withCredentials?"include":n.withCredentials?n.withCredentials:"omit"),void 0!==n.body&&(i.body=JSON.stringify(n.body));var s=t(e,i).catch((function(e){return o.reject({message:"Probably a network error, is the server down?",error:e})}));if(void 0!==n.timeout){var a=new o((function(e,t){var r=setTimeout((function(){return clearTimeout(r),t({message:"Request timed out",timeout:n.timeout})}),n.timeout)}));s=o.race([s,a])}return s.then((function(e){return e.ok?typeof n.success===typeof r.noop?e.json().then((function(e){n.success(e)})).catch((function(t){return o.reject({message:"Failed to parse response body",error:t,response:e})})):void 0:o.reject({message:"API call failed",response:e})})).catch((function(e){typeof n.error===typeof r.noop&&n.error(e.message||"<< internal error >>",e)})),s}}},r.useOldDependencies=function(e){var t=e&&e.jQuery||jQuery,o=e&&e.WebSocket||WebSocket;return{newWebSocket:function(e,t){return new o(e,t)},isArray:function(e){return t.isArray(e)},extension:e&&e.extension||n,webRTCAdapter:e&&e.adapter||adapter,httpAPICall:function(e,n){var o=void 0!==n.body?{contentType:"application/json",data:JSON.stringify(n.body)}:{},i=void 0!==n.withCredentials?{xhrFields:{withCredentials:n.withCredentials}}:{};return t.ajax(t.extend(o,i,{url:e,type:n.verb,cache:!1,dataType:"json",async:n.async,timeout:n.timeout,success:function(e){typeof n.success===typeof r.noop&&n.success(e)},error:function(e,t,o){typeof n.error===typeof r.noop&&n.error(t,o)}}))}}},r.noop=function(){},r.dataChanDefaultLabel="JanusDataChannel",r.init=function(e){if(e=e||{},e.callback="function"==typeof e.callback?e.callback:r.noop,!0===r.initDone)e.callback();else{if("undefined"!=typeof console&&"undefined"!=typeof console.log||(console={log:function(){}}),r.trace=r.noop,r.debug=r.noop,r.vdebug=r.noop,r.log=r.noop,r.warn=r.noop,r.error=r.noop,!0===e.debug||"all"===e.debug)r.trace=void 0,r.debug=void 0,r.vdebug=void 0,r.log=void 0,r.warn=void 0,r.error=void 0;else if(Array.isArray(e.debug))for(var t in e.debug){var n=e.debug[t];switch(n){case"trace":r.trace=void 0;break;case"debug":r.debug=void 0;break;case"vdebug":r.vdebug=void 0;break;case"log":r.log=void 0;break;case"warn":r.warn=void 0;break;case"error":r.error=void 0;break;default:break}}r.log("Initializing library");var o=e.dependencies||r.useDefaultDependencies();r.isArray=o.isArray,r.webRTCAdapter=o.webRTCAdapter,r.httpAPICall=o.httpAPICall,r.newWebSocket=o.newWebSocket,r.extension=o.extension,r.extension.init(),r.listDevices=function(e,t){e="function"==typeof e?e:r.noop,null==t&&(t={audio:!0,video:!0}),r.isGetUserMediaAvailable()?navigator.mediaDevices.getUserMedia(t).then((function(t){navigator.mediaDevices.enumerateDevices().then((function(n){r.debug(n),e(n);try{var o=t.getTracks();for(var i in o){var s=o[i];null!==s&&void 0!==s&&s.stop()}}catch(a){}}))})).catch((function(t){r.error("getUserMedia",t),e([])})):(r.warn("navigator.mediaDevices unavailable"),e([]))},r.attachMediaStream=function(e,t){if("chrome"===r.webRTCAdapter.browserDetails.browser){var n=r.webRTCAdapter.browserDetails.version;n>=52?e.srcObject=t:"undefined"!==typeof e.src?e.src=URL.createObjectURL(t):r.error("Error attaching stream to element")}else e.srcObject=t},r.reattachMediaStream=function(e,t){if("chrome"===r.webRTCAdapter.browserDetails.browser){var n=r.webRTCAdapter.browserDetails.version;n>=52?e.srcObject=t.srcObject:"undefined"!==typeof e.src?e.src=t.src:r.error("Error reattaching stream to element")}else e.srcObject=t.srcObject};var i=["iPad","iPhone","iPod"].indexOf(navigator.platform)>=0,s=i?"pagehide":"beforeunload",a=window["on"+s];if(window.addEventListener(s,(function(e){for(var t in r.log("Closing window"),r.sessions)null!==r.sessions[t]&&void 0!==r.sessions[t]&&r.sessions[t].destroyOnUnload&&(r.log("Destroying session "+t),r.sessions[t].destroy({asyncRequest:!1,notifyDestroyed:!1}));a&&"function"==typeof a&&a()})),r.safariVp8=!1,"safari"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=605)if(RTCRtpSender&&RTCRtpSender.getCapabilities&&RTCRtpSender.getCapabilities("video")&&RTCRtpSender.getCapabilities("video").codecs&&RTCRtpSender.getCapabilities("video").codecs.length){for(var t in RTCRtpSender.getCapabilities("video").codecs){var c=RTCRtpSender.getCapabilities("video").codecs[t];if(c&&c.mimeType&&"video/vp8"===c.mimeType.toLowerCase()){r.safariVp8=!0;break}}r.safariVp8?r.log("This version of Safari supports VP8"):r.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu")}else{var d=new RTCPeerConnection({},{});d.createOffer({offerToReceiveVideo:!0}).then((function(e){r.safariVp8=-1!==e.sdp.indexOf("VP8"),r.safariVp8?r.log("This version of Safari supports VP8"):r.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu"),d.close(),d=null}))}r.initDone=!0,e.callback()}},r.isWebrtcSupported=function(){return void 0!==window.RTCPeerConnection&&null!==window.RTCPeerConnection},r.isGetUserMediaAvailable=function(){return void 0!==navigator.mediaDevices&&null!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia&&null!==navigator.mediaDevices.getUserMedia},r.randomString=function(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n="",r=0;r<e;r++){var o=Math.floor(Math.random()*t.length);n+=t.substring(o,o+1)}return n},t.default=r},d093:function(e,t,n){"use strict";n.r(t);var r={};n.r(r),n.d(r,"shimGetUserMedia",(function(){return T})),n.d(r,"shimGetDisplayMedia",(function(){return S})),n.d(r,"shimMediaStream",(function(){return C})),n.d(r,"shimOnTrack",(function(){return P})),n.d(r,"shimGetSendersWithDtmf",(function(){return x})),n.d(r,"shimGetStats",(function(){return k})),n.d(r,"shimSenderReceiverGetStats",(function(){return D})),n.d(r,"shimAddTrackRemoveTrackWithNative",(function(){return _})),n.d(r,"shimAddTrackRemoveTrack",(function(){return A})),n.d(r,"shimPeerConnection",(function(){return I})),n.d(r,"fixNegotiationNeeded",(function(){return R}));var o={};n.r(o),n.d(o,"shimGetUserMedia",(function(){return N})),n.d(o,"shimGetDisplayMedia",(function(){return O})),n.d(o,"shimOnTrack",(function(){return E})),n.d(o,"shimPeerConnection",(function(){return M})),n.d(o,"shimSenderGetStats",(function(){return L})),n.d(o,"shimReceiverGetStats",(function(){return j})),n.d(o,"shimRemoveStream",(function(){return q})),n.d(o,"shimRTCDataChannel",(function(){return V})),n.d(o,"shimAddTransceiver",(function(){return B})),n.d(o,"shimGetParameters",(function(){return F})),n.d(o,"shimCreateOffer",(function(){return W})),n.d(o,"shimCreateAnswer",(function(){return H}));var i={};n.r(i),n.d(i,"shimLocalStreamsAPI",(function(){return U})),n.d(i,"shimRemoteStreamsAPI",(function(){return z})),n.d(i,"shimCallbacksAPI",(function(){return G})),n.d(i,"shimGetUserMedia",(function(){return J})),n.d(i,"shimConstraints",(function(){return $})),n.d(i,"shimRTCIceServerUrls",(function(){return Q})),n.d(i,"shimTrackEventTransceiver",(function(){return K})),n.d(i,"shimCreateOfferLegacy",(function(){return X})),n.d(i,"shimAudioContext",(function(){return Y}));var s={};n.r(s),n.d(s,"shimRTCIceCandidate",(function(){return te})),n.d(s,"shimMaxMessageSize",(function(){return ne})),n.d(s,"shimSendThrowTypeError",(function(){return re})),n.d(s,"shimConnectionState",(function(){return oe})),n.d(s,"removeExtmapAllowMixed",(function(){return ie})),n.d(s,"shimAddIceCandidateNullOrEmpty",(function(){return se})),n.d(s,"shimParameterlessSetLocalDescription",(function(){return ae}));let a=!0,c=!0;function d(e,t,n){const r=e.match(t);return r&&r.length>=n&&parseInt(r[n],10)}function u(e,t,n){if(!e.RTCPeerConnection)return;const r=e.RTCPeerConnection.prototype,o=r.addEventListener;r.addEventListener=function(e,r){if(e!==t)return o.apply(this,arguments);const i=e=>{const t=n(e);t&&(r.handleEvent?r.handleEvent(t):r(t))};return this._eventMap=this._eventMap||{},this._eventMap[t]||(this._eventMap[t]=new Map),this._eventMap[t].set(r,i),o.apply(this,[e,i])};const i=r.removeEventListener;r.removeEventListener=function(e,n){if(e!==t||!this._eventMap||!this._eventMap[t])return i.apply(this,arguments);if(!this._eventMap[t].has(n))return i.apply(this,arguments);const r=this._eventMap[t].get(n);return this._eventMap[t].delete(n),0===this._eventMap[t].size&&delete this._eventMap[t],0===Object.keys(this._eventMap).length&&delete this._eventMap,i.apply(this,[e,r])},Object.defineProperty(r,"on"+t,{get(){return this["_on"+t]},set(e){this["_on"+t]&&(this.removeEventListener(t,this["_on"+t]),delete this["_on"+t]),e&&this.addEventListener(t,this["_on"+t]=e)},enumerable:!0,configurable:!0})}function l(e){return"boolean"!==typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(a=e,e?"adapter.js logging disabled":"adapter.js logging enabled")}function p(e){return"boolean"!==typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(c=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))}function f(){if("object"===typeof window){if(a)return;"undefined"!==typeof console&&console.log}}function m(e,t){}function h(e){const t={browser:null,version:null};if("undefined"===typeof e||!e.navigator)return t.browser="Not a browser.",t;const{navigator:n}=e;if(n.mozGetUserMedia)t.browser="firefox",t.version=d(n.userAgent,/Firefox\/(\d+)\./,1);else if(n.webkitGetUserMedia||!1===e.isSecureContext&&e.webkitRTCPeerConnection&&!e.RTCIceGatherer)t.browser="chrome",t.version=d(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!e.RTCPeerConnection||!n.userAgent.match(/AppleWebKit\/(\d+)\./))return t.browser="Not a supported browser.",t;t.browser="safari",t.version=d(n.userAgent,/AppleWebKit\/(\d+)\./,1),t.supportsUnifiedPlan=e.RTCRtpTransceiver&&"currentDirection"in e.RTCRtpTransceiver.prototype}return t}function g(e){return"[object Object]"===Object.prototype.toString.call(e)}function v(e){return g(e)?Object.keys(e).reduce((function(t,n){const r=g(e[n]),o=r?v(e[n]):e[n],i=r&&!Object.keys(o).length;return void 0===o||i?t:Object.assign(t,{[n]:o})}),{}):e}function y(e,t,n){t&&!n.has(t.id)&&(n.set(t.id,t),Object.keys(t).forEach(r=>{r.endsWith("Id")?y(e,e.get(t[r]),n):r.endsWith("Ids")&&t[r].forEach(t=>{y(e,e.get(t),n)})}))}function b(e,t,n){const r=n?"outbound-rtp":"inbound-rtp",o=new Map;if(null===t)return o;const i=[];return e.forEach(e=>{"track"===e.type&&e.trackIdentifier===t.id&&i.push(e)}),i.forEach(t=>{e.forEach(n=>{n.type===r&&n.trackId===t.id&&y(e,n,o)})}),o}const w=f;function T(e,t){const n=e&&e.navigator;if(!n.mediaDevices)return;const r=function(e){if("object"!==typeof e||e.mandatory||e.optional)return e;const t={};return Object.keys(e).forEach(n=>{if("require"===n||"advanced"===n||"mediaSource"===n)return;const r="object"===typeof e[n]?e[n]:{ideal:e[n]};void 0!==r.exact&&"number"===typeof r.exact&&(r.min=r.max=r.exact);const o=function(e,t){return e?e+t.charAt(0).toUpperCase()+t.slice(1):"deviceId"===t?"sourceId":t};if(void 0!==r.ideal){t.optional=t.optional||[];let e={};"number"===typeof r.ideal?(e[o("min",n)]=r.ideal,t.optional.push(e),e={},e[o("max",n)]=r.ideal,t.optional.push(e)):(e[o("",n)]=r.ideal,t.optional.push(e))}void 0!==r.exact&&"number"!==typeof r.exact?(t.mandatory=t.mandatory||{},t.mandatory[o("",n)]=r.exact):["min","max"].forEach(e=>{void 0!==r[e]&&(t.mandatory=t.mandatory||{},t.mandatory[o(e,n)]=r[e])})}),e.advanced&&(t.optional=(t.optional||[]).concat(e.advanced)),t},o=function(e,o){if(t.version>=61)return o(e);if(e=JSON.parse(JSON.stringify(e)),e&&"object"===typeof e.audio){const t=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};e=JSON.parse(JSON.stringify(e)),t(e.audio,"autoGainControl","googAutoGainControl"),t(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=r(e.audio)}if(e&&"object"===typeof e.video){let i=e.video.facingMode;i=i&&("object"===typeof i?i:{ideal:i});const s=t.version<66;if(i&&("user"===i.exact||"environment"===i.exact||"user"===i.ideal||"environment"===i.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||s)){let t;if(delete e.video.facingMode,"environment"===i.exact||"environment"===i.ideal?t=["back","rear"]:"user"!==i.exact&&"user"!==i.ideal||(t=["front"]),t)return n.mediaDevices.enumerateDevices().then(n=>{n=n.filter(e=>"videoinput"===e.kind);let s=n.find(e=>t.some(t=>e.label.toLowerCase().includes(t)));return!s&&n.length&&t.includes("back")&&(s=n[n.length-1]),s&&(e.video.deviceId=i.exact?{exact:s.deviceId}:{ideal:s.deviceId}),e.video=r(e.video),w("chrome: "+JSON.stringify(e)),o(e)})}e.video=r(e.video)}return w("chrome: "+JSON.stringify(e)),o(e)},i=function(e){return t.version>=64?e:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[e.name]||e.name,message:e.message,constraint:e.constraint||e.constraintName,toString(){return this.name+(this.message&&": ")+this.message}}},s=function(e,t,r){o(e,e=>{n.webkitGetUserMedia(e,t,e=>{r&&r(i(e))})})};if(n.getUserMedia=s.bind(n),n.mediaDevices.getUserMedia){const e=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(t){return o(t,t=>e(t).then(e=>{if(t.audio&&!e.getAudioTracks().length||t.video&&!e.getVideoTracks().length)throw e.getTracks().forEach(e=>{e.stop()}),new DOMException("","NotFoundError");return e},e=>Promise.reject(i(e))))}}}function S(e,t){e.navigator.mediaDevices&&"getDisplayMedia"in e.navigator.mediaDevices||e.navigator.mediaDevices&&"function"===typeof t&&(e.navigator.mediaDevices.getDisplayMedia=function(n){return t(n).then(t=>{const r=n.video&&n.video.width,o=n.video&&n.video.height,i=n.video&&n.video.frameRate;return n.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:t,maxFrameRate:i||3}},r&&(n.video.mandatory.maxWidth=r),o&&(n.video.mandatory.maxHeight=o),e.navigator.mediaDevices.getUserMedia(n)})})}function C(e){e.MediaStream=e.MediaStream||e.webkitMediaStream}function P(e){if("object"===typeof e&&e.RTCPeerConnection&&!("ontrack"in e.RTCPeerConnection.prototype)){Object.defineProperty(e.RTCPeerConnection.prototype,"ontrack",{get(){return this._ontrack},set(e){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=e)},enumerable:!0,configurable:!0});const t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){return this._ontrackpoly||(this._ontrackpoly=t=>{t.stream.addEventListener("addtrack",n=>{let r;r=e.RTCPeerConnection.prototype.getReceivers?this.getReceivers().find(e=>e.track&&e.track.id===n.track.id):{track:n.track};const o=new Event("track");o.track=n.track,o.receiver=r,o.transceiver={receiver:r},o.streams=[t.stream],this.dispatchEvent(o)}),t.stream.getTracks().forEach(n=>{let r;r=e.RTCPeerConnection.prototype.getReceivers?this.getReceivers().find(e=>e.track&&e.track.id===n.id):{track:n};const o=new Event("track");o.track=n,o.receiver=r,o.transceiver={receiver:r},o.streams=[t.stream],this.dispatchEvent(o)})},this.addEventListener("addstream",this._ontrackpoly)),t.apply(this,arguments)}}else u(e,"track",e=>(e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e))}function x(e){if("object"===typeof e&&e.RTCPeerConnection&&!("getSenders"in e.RTCPeerConnection.prototype)&&"createDTMFSender"in e.RTCPeerConnection.prototype){const t=function(e,t){return{track:t,get dtmf(){return void 0===this._dtmf&&("audio"===t.kind?this._dtmf=e.createDTMFSender(t):this._dtmf=null),this._dtmf},_pc:e}};if(!e.RTCPeerConnection.prototype.getSenders){e.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};const n=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,r){let o=n.apply(this,arguments);return o||(o=t(this,e),this._senders.push(o)),o};const r=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){r.apply(this,arguments);const t=this._senders.indexOf(e);-1!==t&&this._senders.splice(t,1)}}const n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){this._senders=this._senders||[],n.apply(this,[e]),e.getTracks().forEach(e=>{this._senders.push(t(this,e))})};const r=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){this._senders=this._senders||[],r.apply(this,[e]),e.getTracks().forEach(e=>{const t=this._senders.find(t=>t.track===e);t&&this._senders.splice(this._senders.indexOf(t),1)})}}else if("object"===typeof e&&e.RTCPeerConnection&&"getSenders"in e.RTCPeerConnection.prototype&&"createDTMFSender"in e.RTCPeerConnection.prototype&&e.RTCRtpSender&&!("dtmf"in e.RTCRtpSender.prototype)){const t=e.RTCPeerConnection.prototype.getSenders;e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e},Object.defineProperty(e.RTCRtpSender.prototype,"dtmf",{get(){return void 0===this._dtmf&&("audio"===this.track.kind?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function k(e){if(!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){const[e,n,r]=arguments;if(arguments.length>0&&"function"===typeof e)return t.apply(this,arguments);if(0===t.length&&(0===arguments.length||"function"!==typeof e))return t.apply(this,[]);const o=function(e){const t={},n=e.result();return n.forEach(e=>{const n={id:e.id,timestamp:e.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[e.type]||e.type};e.names().forEach(t=>{n[t]=e.stat(t)}),t[n.id]=n}),t},i=function(e){return new Map(Object.keys(e).map(t=>[t,e[t]]))};if(arguments.length>=2){const r=function(e){n(i(o(e)))};return t.apply(this,[r,e])}return new Promise((e,n)=>{t.apply(this,[function(t){e(i(o(t)))},n])}).then(n,r)}}function D(e){if(!("object"===typeof e&&e.RTCPeerConnection&&e.RTCRtpSender&&e.RTCRtpReceiver))return;if(!("getStats"in e.RTCRtpSender.prototype)){const t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e});const n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){const e=n.apply(this,arguments);return e._pc=this,e}),e.RTCRtpSender.prototype.getStats=function(){const e=this;return this._pc.getStats().then(t=>b(t,e.track,!0))}}if(!("getStats"in e.RTCRtpReceiver.prototype)){const t=e.RTCPeerConnection.prototype.getReceivers;t&&(e.RTCPeerConnection.prototype.getReceivers=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e}),u(e,"track",e=>(e.receiver._pc=e.srcElement,e)),e.RTCRtpReceiver.prototype.getStats=function(){const e=this;return this._pc.getStats().then(t=>b(t,e.track,!1))}}if(!("getStats"in e.RTCRtpSender.prototype)||!("getStats"in e.RTCRtpReceiver.prototype))return;const t=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof e.MediaStreamTrack){const e=arguments[0];let t,n,r;return this.getSenders().forEach(n=>{n.track===e&&(t?r=!0:t=n)}),this.getReceivers().forEach(t=>(t.track===e&&(n?r=!0:n=t),t.track===e)),r||t&&n?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):t?t.getStats():n?n.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return t.apply(this,arguments)}}function _(e){e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(e=>this._shimmedLocalStreams[e][0])};const t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,n){if(!n)return t.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};const r=t.apply(this,arguments);return this._shimmedLocalStreams[n.id]?-1===this._shimmedLocalStreams[n.id].indexOf(r)&&this._shimmedLocalStreams[n.id].push(r):this._shimmedLocalStreams[n.id]=[n,r],r};const n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){this._shimmedLocalStreams=this._shimmedLocalStreams||{},e.getTracks().forEach(e=>{const t=this.getSenders().find(t=>t.track===e);if(t)throw new DOMException("Track already exists.","InvalidAccessError")});const t=this.getSenders();n.apply(this,arguments);const r=this.getSenders().filter(e=>-1===t.indexOf(e));this._shimmedLocalStreams[e.id]=[e].concat(r)};const r=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[e.id],r.apply(this,arguments)};const o=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},e&&Object.keys(this._shimmedLocalStreams).forEach(t=>{const n=this._shimmedLocalStreams[t].indexOf(e);-1!==n&&this._shimmedLocalStreams[t].splice(n,1),1===this._shimmedLocalStreams[t].length&&delete this._shimmedLocalStreams[t]}),o.apply(this,arguments)}}function A(e,t){if(!e.RTCPeerConnection)return;if(e.RTCPeerConnection.prototype.addTrack&&t.version>=65)return _(e);const n=e.RTCPeerConnection.prototype.getLocalStreams;e.RTCPeerConnection.prototype.getLocalStreams=function(){const e=n.apply(this);return this._reverseStreams=this._reverseStreams||{},e.map(e=>this._reverseStreams[e.id])};const r=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(t){if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},t.getTracks().forEach(e=>{const t=this.getSenders().find(t=>t.track===e);if(t)throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[t.id]){const n=new e.MediaStream(t.getTracks());this._streams[t.id]=n,this._reverseStreams[n.id]=t,t=n}r.apply(this,[t])};const o=e.RTCPeerConnection.prototype.removeStream;function i(e,t){let n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(t=>{const r=e._reverseStreams[t],o=e._streams[r.id];n=n.replace(new RegExp(o.id,"g"),r.id)}),new RTCSessionDescription({type:t.type,sdp:n})}function s(e,t){let n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(t=>{const r=e._reverseStreams[t],o=e._streams[r.id];n=n.replace(new RegExp(r.id,"g"),o.id)}),new RTCSessionDescription({type:t.type,sdp:n})}e.RTCPeerConnection.prototype.removeStream=function(e){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},o.apply(this,[this._streams[e.id]||e]),delete this._reverseStreams[this._streams[e.id]?this._streams[e.id].id:e.id],delete this._streams[e.id]},e.RTCPeerConnection.prototype.addTrack=function(t,n){if("closed"===this.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");const r=[].slice.call(arguments,1);if(1!==r.length||!r[0].getTracks().find(e=>e===t))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");const o=this.getSenders().find(e=>e.track===t);if(o)throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};const i=this._streams[n.id];if(i)i.addTrack(t),Promise.resolve().then(()=>{this.dispatchEvent(new Event("negotiationneeded"))});else{const r=new e.MediaStream([t]);this._streams[n.id]=r,this._reverseStreams[r.id]=n,this.addStream(r)}return this.getSenders().find(e=>e.track===t)},["createOffer","createAnswer"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){const e=arguments,t=arguments.length&&"function"===typeof arguments[0];return t?n.apply(this,[t=>{const n=i(this,t);e[0].apply(null,[n])},t=>{e[1]&&e[1].apply(null,t)},arguments[2]]):n.apply(this,arguments).then(e=>i(this,e))}};e.RTCPeerConnection.prototype[t]=r[t]}));const a=e.RTCPeerConnection.prototype.setLocalDescription;e.RTCPeerConnection.prototype.setLocalDescription=function(){return arguments.length&&arguments[0].type?(arguments[0]=s(this,arguments[0]),a.apply(this,arguments)):a.apply(this,arguments)};const c=Object.getOwnPropertyDescriptor(e.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(e.RTCPeerConnection.prototype,"localDescription",{get(){const e=c.get.apply(this);return""===e.type?e:i(this,e)}}),e.RTCPeerConnection.prototype.removeTrack=function(e){if("closed"===this.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!e._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");const t=e._pc===this;if(!t)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");let n;this._streams=this._streams||{},Object.keys(this._streams).forEach(t=>{const r=this._streams[t].getTracks().find(t=>e.track===t);r&&(n=this._streams[t])}),n&&(1===n.getTracks().length?this.removeStream(this._reverseStreams[n.id]):n.removeTrack(e.track),this.dispatchEvent(new Event("negotiationneeded")))}}function I(e,t){!e.RTCPeerConnection&&e.webkitRTCPeerConnection&&(e.RTCPeerConnection=e.webkitRTCPeerConnection),e.RTCPeerConnection&&t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}};e.RTCPeerConnection.prototype[t]=r[t]}))}function R(e,t){u(e,"negotiationneeded",e=>{const n=e.target;if(!(t.version<72||n.getConfiguration&&"plan-b"===n.getConfiguration().sdpSemantics)||"stable"===n.signalingState)return e})}function N(e,t){const n=e&&e.navigator,r=e&&e.MediaStreamTrack;if(n.getUserMedia=function(e,t,r){m("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,r)},!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){const e=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},t=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(n){return"object"===typeof n&&"object"===typeof n.audio&&(n=JSON.parse(JSON.stringify(n)),e(n.audio,"autoGainControl","mozAutoGainControl"),e(n.audio,"noiseSuppression","mozNoiseSuppression")),t(n)},r&&r.prototype.getSettings){const t=r.prototype.getSettings;r.prototype.getSettings=function(){const n=t.apply(this,arguments);return e(n,"mozAutoGainControl","autoGainControl"),e(n,"mozNoiseSuppression","noiseSuppression"),n}}if(r&&r.prototype.applyConstraints){const t=r.prototype.applyConstraints;r.prototype.applyConstraints=function(n){return"audio"===this.kind&&"object"===typeof n&&(n=JSON.parse(JSON.stringify(n)),e(n,"autoGainControl","mozAutoGainControl"),e(n,"noiseSuppression","mozNoiseSuppression")),t.apply(this,[n])}}}}function O(e,t){e.navigator.mediaDevices&&"getDisplayMedia"in e.navigator.mediaDevices||e.navigator.mediaDevices&&(e.navigator.mediaDevices.getDisplayMedia=function(n){if(!n||!n.video){const e=new DOMException("getDisplayMedia without video constraints is undefined");return e.name="NotFoundError",e.code=8,Promise.reject(e)}return!0===n.video?n.video={mediaSource:t}:n.video.mediaSource=t,e.navigator.mediaDevices.getUserMedia(n)})}function E(e){"object"===typeof e&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function M(e,t){if("object"!==typeof e||!e.RTCPeerConnection&&!e.mozRTCPeerConnection)return;!e.RTCPeerConnection&&e.mozRTCPeerConnection&&(e.RTCPeerConnection=e.mozRTCPeerConnection),t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}};e.RTCPeerConnection.prototype[t]=r[t]}));const n={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},r=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){const[e,o,i]=arguments;return r.apply(this,[e||null]).then(e=>{if(t.version<53&&!o)try{e.forEach(e=>{e.type=n[e.type]||e.type})}catch(r){if("TypeError"!==r.name)throw r;e.forEach((t,r)=>{e.set(r,Object.assign({},t,{type:n[t.type]||t.type}))})}return e}).then(o,i)}}function L(e){if("object"!==typeof e||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpSender.prototype)return;const t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e});const n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){const e=n.apply(this,arguments);return e._pc=this,e}),e.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}function j(e){if("object"!==typeof e||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpReceiver.prototype)return;const t=e.RTCPeerConnection.prototype.getReceivers;t&&(e.RTCPeerConnection.prototype.getReceivers=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e}),u(e,"track",e=>(e.receiver._pc=e.srcElement,e)),e.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}function q(e){e.RTCPeerConnection&&!("removeStream"in e.RTCPeerConnection.prototype)&&(e.RTCPeerConnection.prototype.removeStream=function(e){m("removeStream","removeTrack"),this.getSenders().forEach(t=>{t.track&&e.getTracks().includes(t.track)&&this.removeTrack(t)})})}function V(e){e.DataChannel&&!e.RTCDataChannel&&(e.RTCDataChannel=e.DataChannel)}function B(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.addTransceiver;t&&(e.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];const e=arguments[1],n=e&&"sendEncodings"in e;n&&e.sendEncodings.forEach(e=>{if("rid"in e){const t=/^[a-z0-9]{0,16}$/i;if(!t.test(e.rid))throw new TypeError("Invalid RID value provided.")}if("scaleResolutionDownBy"in e&&!(parseFloat(e.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in e&&!(parseFloat(e.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});const r=t.apply(this,arguments);if(n){const{sender:t}=r,n=t.getParameters();(!("encodings"in n)||1===n.encodings.length&&0===Object.keys(n.encodings[0]).length)&&(n.encodings=e.sendEncodings,t.sendEncodings=e.sendEncodings,this.setParametersPromises.push(t.setParameters(n).then(()=>{delete t.sendEncodings}).catch(()=>{delete t.sendEncodings})))}return r})}function F(e){if("object"!==typeof e||!e.RTCRtpSender)return;const t=e.RTCRtpSender.prototype.getParameters;t&&(e.RTCRtpSender.prototype.getParameters=function(){const e=t.apply(this,arguments);return"encodings"in e||(e.encodings=[].concat(this.sendEncodings||[{}])),e})}function W(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>t.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):t.apply(this,arguments)}}function H(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.createAnswer;e.RTCPeerConnection.prototype.createAnswer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>t.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):t.apply(this,arguments)}}function U(e){if("object"===typeof e&&e.RTCPeerConnection){if("getLocalStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in e.RTCPeerConnection.prototype)){const t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){this._localStreams||(this._localStreams=[]),this._localStreams.includes(e)||this._localStreams.push(e),e.getAudioTracks().forEach(n=>t.call(this,n,e)),e.getVideoTracks().forEach(n=>t.call(this,n,e))},e.RTCPeerConnection.prototype.addTrack=function(e,...n){return n&&n.forEach(e=>{this._localStreams?this._localStreams.includes(e)||this._localStreams.push(e):this._localStreams=[e]}),t.apply(this,arguments)}}"removeStream"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.removeStream=function(e){this._localStreams||(this._localStreams=[]);const t=this._localStreams.indexOf(e);if(-1===t)return;this._localStreams.splice(t,1);const n=e.getTracks();this.getSenders().forEach(e=>{n.includes(e.track)&&this.removeTrack(e)})})}}function z(e){if("object"===typeof e&&e.RTCPeerConnection&&("getRemoteStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in e.RTCPeerConnection.prototype))){Object.defineProperty(e.RTCPeerConnection.prototype,"onaddstream",{get(){return this._onaddstream},set(e){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=e),this.addEventListener("track",this._onaddstreampoly=e=>{e.streams.forEach(e=>{if(this._remoteStreams||(this._remoteStreams=[]),this._remoteStreams.includes(e))return;this._remoteStreams.push(e);const t=new Event("addstream");t.stream=e,this.dispatchEvent(t)})})}});const t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){const e=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(t){t.streams.forEach(t=>{if(e._remoteStreams||(e._remoteStreams=[]),e._remoteStreams.indexOf(t)>=0)return;e._remoteStreams.push(t);const n=new Event("addstream");n.stream=t,e.dispatchEvent(n)})}),t.apply(e,arguments)}}}function G(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype,n=t.createOffer,r=t.createAnswer,o=t.setLocalDescription,i=t.setRemoteDescription,s=t.addIceCandidate;t.createOffer=function(e,t){const r=arguments.length>=2?arguments[2]:arguments[0],o=n.apply(this,[r]);return t?(o.then(e,t),Promise.resolve()):o},t.createAnswer=function(e,t){const n=arguments.length>=2?arguments[2]:arguments[0],o=r.apply(this,[n]);return t?(o.then(e,t),Promise.resolve()):o};let a=function(e,t,n){const r=o.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r};t.setLocalDescription=a,a=function(e,t,n){const r=i.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.setRemoteDescription=a,a=function(e,t,n){const r=s.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.addIceCandidate=a}function J(e){const t=e&&e.navigator;if(t.mediaDevices&&t.mediaDevices.getUserMedia){const e=t.mediaDevices,n=e.getUserMedia.bind(e);t.mediaDevices.getUserMedia=e=>n($(e))}!t.getUserMedia&&t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,r){t.mediaDevices.getUserMedia(e).then(n,r)}.bind(t))}function $(e){return e&&void 0!==e.video?Object.assign({},e,{video:v(e.video)}):e}function Q(e){if(!e.RTCPeerConnection)return;const t=e.RTCPeerConnection;e.RTCPeerConnection=function(e,n){if(e&&e.iceServers){const t=[];for(let n=0;n<e.iceServers.length;n++){let r=e.iceServers[n];!r.hasOwnProperty("urls")&&r.hasOwnProperty("url")?(m("RTCIceServer.url","RTCIceServer.urls"),r=JSON.parse(JSON.stringify(r)),r.urls=r.url,delete r.url,t.push(r)):t.push(e.iceServers[n])}e.iceServers=t}return new t(e,n)},e.RTCPeerConnection.prototype=t.prototype,"generateCertificate"in t&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get(){return t.generateCertificate}})}function K(e){"object"===typeof e&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function X(e){const t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){if(e){"undefined"!==typeof e.offerToReceiveAudio&&(e.offerToReceiveAudio=!!e.offerToReceiveAudio);const t=this.getTransceivers().find(e=>"audio"===e.receiver.track.kind);!1===e.offerToReceiveAudio&&t?"sendrecv"===t.direction?t.setDirection?t.setDirection("sendonly"):t.direction="sendonly":"recvonly"===t.direction&&(t.setDirection?t.setDirection("inactive"):t.direction="inactive"):!0!==e.offerToReceiveAudio||t||this.addTransceiver("audio",{direction:"recvonly"}),"undefined"!==typeof e.offerToReceiveVideo&&(e.offerToReceiveVideo=!!e.offerToReceiveVideo);const n=this.getTransceivers().find(e=>"video"===e.receiver.track.kind);!1===e.offerToReceiveVideo&&n?"sendrecv"===n.direction?n.setDirection?n.setDirection("sendonly"):n.direction="sendonly":"recvonly"===n.direction&&(n.setDirection?n.setDirection("inactive"):n.direction="inactive"):!0!==e.offerToReceiveVideo||n||this.addTransceiver("video",{direction:"recvonly"})}return t.apply(this,arguments)}}function Y(e){"object"!==typeof e||e.AudioContext||(e.AudioContext=e.webkitAudioContext)}var Z=n("282b"),ee=n.n(Z);function te(e){if(!e.RTCIceCandidate||e.RTCIceCandidate&&"foundation"in e.RTCIceCandidate.prototype)return;const t=e.RTCIceCandidate;e.RTCIceCandidate=function(e){if("object"===typeof e&&e.candidate&&0===e.candidate.indexOf("a=")&&(e=JSON.parse(JSON.stringify(e)),e.candidate=e.candidate.substr(2)),e.candidate&&e.candidate.length){const n=new t(e),r=ee.a.parseCandidate(e.candidate),o=Object.assign(n,r);return o.toJSON=function(){return{candidate:o.candidate,sdpMid:o.sdpMid,sdpMLineIndex:o.sdpMLineIndex,usernameFragment:o.usernameFragment}},o}return new t(e)},e.RTCIceCandidate.prototype=t.prototype,u(e,"icecandidate",t=>(t.candidate&&Object.defineProperty(t,"candidate",{value:new e.RTCIceCandidate(t.candidate),writable:"false"}),t))}function ne(e,t){if(!e.RTCPeerConnection)return;"sctp"in e.RTCPeerConnection.prototype||Object.defineProperty(e.RTCPeerConnection.prototype,"sctp",{get(){return"undefined"===typeof this._sctp?null:this._sctp}});const n=function(e){if(!e||!e.sdp)return!1;const t=ee.a.splitSections(e.sdp);return t.shift(),t.some(e=>{const t=ee.a.parseMLine(e);return t&&"application"===t.kind&&-1!==t.protocol.indexOf("SCTP")})},r=function(e){const t=e.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(null===t||t.length<2)return-1;const n=parseInt(t[1],10);return n!==n?-1:n},o=function(e){let n=65536;return"firefox"===t.browser&&(n=t.version<57?-1===e?16384:2147483637:t.version<60?57===t.version?65535:65536:2147483637),n},i=function(e,n){let r=65536;"firefox"===t.browser&&57===t.version&&(r=65535);const o=ee.a.matchPrefix(e.sdp,"a=max-message-size:");return o.length>0?r=parseInt(o[0].substr(19),10):"firefox"===t.browser&&-1!==n&&(r=2147483637),r},s=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,"chrome"===t.browser&&t.version>=76){const{sdpSemantics:e}=this.getConfiguration();"plan-b"===e&&Object.defineProperty(this,"sctp",{get(){return"undefined"===typeof this._sctp?null:this._sctp},enumerable:!0,configurable:!0})}if(n(arguments[0])){const e=r(arguments[0]),t=o(e),n=i(arguments[0],e);let s;s=0===t&&0===n?Number.POSITIVE_INFINITY:0===t||0===n?Math.max(t,n):Math.min(t,n);const a={};Object.defineProperty(a,"maxMessageSize",{get(){return s}}),this._sctp=a}return s.apply(this,arguments)}}function re(e){if(!e.RTCPeerConnection||!("createDataChannel"in e.RTCPeerConnection.prototype))return;function t(e,t){const n=e.send;e.send=function(){const r=arguments[0],o=r.length||r.size||r.byteLength;if("open"===e.readyState&&t.sctp&&o>t.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+t.sctp.maxMessageSize+" bytes)");return n.apply(e,arguments)}}const n=e.RTCPeerConnection.prototype.createDataChannel;e.RTCPeerConnection.prototype.createDataChannel=function(){const e=n.apply(this,arguments);return t(e,this),e},u(e,"datachannel",e=>(t(e.channel,e.target),e))}function oe(e){if(!e.RTCPeerConnection||"connectionState"in e.RTCPeerConnection.prototype)return;const t=e.RTCPeerConnection.prototype;Object.defineProperty(t,"connectionState",{get(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(t,"onconnectionstatechange",{get(){return this._onconnectionstatechange||null},set(e){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),e&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=e)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(e=>{const n=t[e];t[e]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=e=>{const t=e.target;if(t._lastConnectionState!==t.connectionState){t._lastConnectionState=t.connectionState;const n=new Event("connectionstatechange",e);t.dispatchEvent(n)}return e},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n.apply(this,arguments)}})}function ie(e,t){if(!e.RTCPeerConnection)return;if("chrome"===t.browser&&t.version>=71)return;if("safari"===t.browser&&t.version>=605)return;const n=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(t){if(t&&t.sdp&&-1!==t.sdp.indexOf("\na=extmap-allow-mixed")){const n=t.sdp.split("\n").filter(e=>"a=extmap-allow-mixed"!==e.trim()).join("\n");e.RTCSessionDescription&&t instanceof e.RTCSessionDescription?arguments[0]=new e.RTCSessionDescription({type:t.type,sdp:n}):t.sdp=n}return n.apply(this,arguments)}}function se(e,t){if(!e.RTCPeerConnection||!e.RTCPeerConnection.prototype)return;const n=e.RTCPeerConnection.prototype.addIceCandidate;n&&0!==n.length&&(e.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?("chrome"===t.browser&&t.version<78||"firefox"===t.browser&&t.version<68||"safari"===t.browser)&&arguments[0]&&""===arguments[0].candidate?Promise.resolve():n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function ae(e,t){if(!e.RTCPeerConnection||!e.RTCPeerConnection.prototype)return;const n=e.RTCPeerConnection.prototype.setLocalDescription;n&&0!==n.length&&(e.RTCPeerConnection.prototype.setLocalDescription=function(){let e=arguments[0]||{};if("object"!==typeof e||e.type&&e.sdp)return n.apply(this,arguments);if(e={type:e.type,sdp:e.sdp},!e.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":e.type="offer";break;default:e.type="answer";break}if(e.sdp||"offer"!==e.type&&"answer"!==e.type)return n.apply(this,[e]);const t="offer"===e.type?this.createOffer:this.createAnswer;return t.apply(this).then(e=>n.apply(this,[e]))})}function ce({window:e}={},t={shimChrome:!0,shimFirefox:!0,shimSafari:!0}){const n=f,a=h(e),c={browserDetails:a,commonShim:s,extractVersion:d,disableLog:l,disableWarnings:p,sdp:Z};switch(a.browser){case"chrome":if(!r||!I||!t.shimChrome)return n("Chrome shim is not included in this adapter release."),c;if(null===a.version)return n("Chrome shim can not determine version, not shimming."),c;n("adapter.js shimming chrome."),c.browserShim=r,se(e,a),ae(e,a),T(e,a),C(e,a),I(e,a),P(e,a),A(e,a),x(e,a),k(e,a),D(e,a),R(e,a),te(e,a),oe(e,a),ne(e,a),re(e,a),ie(e,a);break;case"firefox":if(!o||!M||!t.shimFirefox)return n("Firefox shim is not included in this adapter release."),c;n("adapter.js shimming firefox."),c.browserShim=o,se(e,a),ae(e,a),N(e,a),M(e,a),E(e,a),q(e,a),L(e,a),j(e,a),V(e,a),B(e,a),F(e,a),W(e,a),H(e,a),te(e,a),oe(e,a),ne(e,a),re(e,a);break;case"safari":if(!i||!t.shimSafari)return n("Safari shim is not included in this adapter release."),c;n("adapter.js shimming safari."),c.browserShim=i,se(e,a),ae(e,a),Q(e,a),X(e,a),G(e,a),U(e,a),z(e,a),K(e,a),J(e,a),Y(e,a),te(e,a),ne(e,a),re(e,a),ie(e,a);break;default:n("Unsupported browser!");break}return c}const de=ce({window:"undefined"===typeof window?void 0:window});t["default"]=de},fae3:function(e,t,n){"use strict";if(n.r(t),n.d(t,"dologin",(function(){return te})),n.d(t,"doLogout",(function(){return ne})),n.d(t,"keepHeart",(function(){return re})),n.d(t,"initCometd",(function(){return Y})),n.d(t,"initVideo",(function(){return ee})),n.d(t,"sha256_digest",(function(){return J})),n.d(t,"accountOp",(function(){return oe})),n.d(t,"aduioOp",(function(){return ie})),n.d(t,"aduioVideoOp",(function(){return se})),n.d(t,"deptOp",(function(){return ae})),n.d(t,"deptRyOp",(function(){return ce})),n.d(t,"locationOp",(function(){return de})),n.d(t,"meetOp",(function(){return ue})),n.d(t,"messageOp",(function(){return le})),n.d(t,"recordOp",(function(){return pe})),n.d(t,"videoOp",(function(){return fe})),n.d(t,"account",(function(){return a})),n.d(t,"aduio",(function(){return d})),n.d(t,"aduio_video",(function(){return l})),n.d(t,"dept_ry",(function(){return f})),n.d(t,"dept",(function(){return h})),n.d(t,"location",(function(){return v})),n.d(t,"meet",(function(){return b})),n.d(t,"message",(function(){return T})),n.d(t,"record",(function(){return C})),n.d(t,"video",(function(){return x})),"undefined"!==typeof window){var r=window.document.currentScript,o=n("8875");r=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var i=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);i&&(n.p=i[1])}let s={loginNet:{url:"/scooper-core-rest/data/system/authManage/loginTo",method:"POST",requestParam:{accUsername:"",accPassword:""},responseParam:{code:"",message:"",systemTime:"",data:""}},heartBeatNet:{url:"/dispatch-web/api/conn/heartKeep",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:""}},logoutNet:{url:"/scooper-core-rest/data/system/authManage/logout",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:""}},accountMqttNet:{topic:"/notify/auth/connect",responseParam:{id:"",type:"",source:"",data:{user:"",token:"",status:""}}},accountHttpNet:{url:"/notify/auth/connect",method:"POST",requestParam:{user:"",type:"connectStatus",status:""},responseParam:{code:""}},saveAccountNet:{url:"/scooper-core-rest/data/system/accountManage/saveAccount",method:"POST",requestParam:{token:"",accUsername:"",accPassword:"",accShowname:"",accType:"",memId:"",relDispUsername:"",useSbc:"",businessConfigs:"",sipTel:"",dispatchAccount:"",roleIds:1,isOperAcc:!1,centerId:0,operLevel:0,operType:0,operatorId:0,mainTel:"",viceTel:"",corpId:"",pocTel:"",operMobileTel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},updateAccountNet:{url:"/scooper-core-rest/data/system/accountManage/updateAccount",method:"POST",requestParam:{id:"",token:"",accUsername:"",accPassword:"",accShowname:"",accType:"",memId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},deleteAccountNet:{url:"/scooper-core-rest/data/system/accountManage/deleteAccount",method:"POST",requestParam:{ids:"",token:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},resetPwdNet:{url:"/scooper-core-rest/data/system/accountManage/resetPwd",method:"POST",requestParam:{id:"",token:"",accUsername:"",origPwd:"",newPwd:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},resetSelfPwdNet:{url:"/data/system/accountManage/resetSelfPwd",method:"POST",requestParam:{token:"",origPwd:"",newPwd:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listAccountNet:{url:"/scooper-core-rest/data/system/accountManage/listAccount",method:"POST",requestParam:{corpId:"",accUsername:"",keyword:"",accType:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:""}]}},queryAccountNet:{url:"/scooper-core-rest/data/system/accountManage/queryAccount",method:"POST",requestParam:{currentPage:"",token:"",pageSize:"",id:"",accUsername:"",accShowname:"",accType:"",validToken:"",invalidTimeStart:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:"",list:[{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:""}]}}},getAccountLinkMemberNet:{url:"/scooper-core-rest/data/system/accountManage/getAccountLinkMember",method:"POST",requestParam:{token:"",accUsername:"",id:"",validToken:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:"",memId:"",memName:"",deptId:"",deptName:"",orgCode:"",sex:"",memTel:"",memMobile:""}}},updateDeptDataPermission:{url:"/scooper-core-rest/data/system/permisions/pmDataRPermManage/updatePmDataRPerm",method:"POST",requestParam:{accId:"",deptOrgCodes:""},responseParam:{code:"",message:"",systemTime:"",data:{obj:0}}},getAccountDetailNet:{url:"/scooper-core-rest/data/system/accountManage/getAccountDetail",method:"POST",requestParam:{token:"",accUsername:"",id:"",validToken:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",invalidTime:"",accessTime:"",useSbc:"",modifyPwdTime:"",realDispUsername:"",businessConfigList:{id:"",accId:"",type:"",actived:"",lastOnline:"",modifyTime:"",ext:""},single:"",jkSbc:"",PmDataList:{accId:"",deptOrgCode:"",isActive:"",deptName:""}}}},accountAddMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},accountUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},accountDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:{}}}},accountAddHttpNet:function(){return{url:"/data/dataChange/account/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},accountUpdateHttpNet:function(){return{url:"/data/dataChange/account/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},accountDeleteHttpNet:function(){return{url:"/data/dataChange/account/delete",method:"POST",requestParam:{ids:""},responseParam:{code:""}}}};var a=s;let c={callNet:{url:"/dispatch-web/api/call/makeCall",method:"POST",requestParam:{token:"",caller:"",callee:"",businessId:"",isRecord:""},responseParam:{code:"",message:"",systemTime:"",data:""}},answerNet:{url:"/dispatch-web/api/call/answer",method:"POST",requestParam:{token:"",tel:"",businessId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},holdNet:{url:"/dispatch-web/api/call/hold",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},unholdNet:{url:"/dispatch-web/api/call/unhold",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},transferNet:{url:"/dispatch-web/api/call/transfer",method:"POST",requestParam:{token:"",from:"",to:"",businessId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},retrieveNet:{url:"/dispatch-web/api/call/retrieve",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleBreakinNet:{url:"/dispatch-web/api/call/tripleBreakin",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleHungupNet:{url:"/dispatch-web/api/call/tripleHungup",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleMonitorNet:{url:"/dispatch-web/api/call/tripleHungup",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},groupNotifyNet:{url:"/dispatch-web/api/call/groupNotify",method:"POST",requestParam:{token:"",files:"",tels:"",type:"",notifyId:"",times:"",confirm:""},responseParam:{code:"",message:"",systemTime:"",data:""}},queryGroupNotifyNet:{url:"/dispatch-web/api/call/queryGroupNotifyResult",method:"POST",requestParam:{token:"",notifyId:"",caller:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",notifyId:"",caller:"",callee:"",tmNotify:"",tmAnswer:"",tmHangup:"",tmLen:"",notifyType:"",files:"",result:"",confirm:""}]}}},queryCallNet:{url:"/dispatch-web/api/call/queryCallRecord",method:"POST",requestParam:{token:"",caller:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",caller:"",callee:"",tmCall:"",tmAnswer:"",tmHangup:"",tmLen:"",callType:"",result:""}]}}}};var d=c;let u={callHungupNet:{url:"/dispatch-web/api/call/hungup",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},listStatusNet:{url:"/dispatch-web/api/call/listStatus",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},telsStatusNet:{url:"/dispatch-web/api/call/telsStatus",method:"POST",requestParam:{token:"",tels:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},baseTelsStatusNet:{url:"/scooper-video/data/baseRes/getBaseResByResCodes",method:"POST",requestParam:{token:"",resCodes:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},telsStatusAssistNet:{url:"/gpsid_server/data/member/listOrgMember",method:"POST",paramOnUrl:["token"],requestParam:{token:"",tels:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{memId:7,memName:"",memType:2,memTel:"8012",memMobile:"",deptId:14,deptName:"浙江省人防办",actived:0,latitude:120.153577,longitude:30.270569,updateTime:"2022-09-22 10:07:00"}]}}},telsStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/telStatus`,responseParam:{id:0,type:"telStatus",source:"dispatch-web",data:{tel:"",status:"",handleNumber:"",conNumber:"",meetId:"",videoInfo:"",accId:"",account:""}}}},callInMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/callIn`,responseParam:{id:0,type:"callIn",source:"dispatch-web",data:{tel:"",type:"",time:"",level:"",accId:"",account:""}}}},groupNotifyMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/groupNotify`,responseParam:{id:0,type:"groupNotify",source:"dispatch-web",data:{result:"",desc:"",descJson:"",accId:"",account:""}}}},telsStatusHttpNet:{url:"/notify/call/telStatus",method:"POST",requestParam:{tel:"",status:"",handleNumber:"",conNumber:"",meetId:"",videoInfo:"",accId:"",account:""},responseParam:{code:""}},callInHttpNet:{url:"/notify/call/callIn",method:"POST",requestParam:{type:"",tel:"",time:"",level:"",accId:"",account:""},responseParam:{code:""}},groupNotifyHttpNet:{url:"/notify/call/groupNotify",method:"POST",requestParam:{result:"",desc:"",descJson:"",accId:"",account:""},responseParam:{code:""}},videoStatusHttpNet:{url:"/notify/call/video",method:"POST",requestParam:{cfgType:"",tel:"",accId:"",account:""},responseParam:{code:""}}};var l=u;let p={saveOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/saveOrgMember",method:"POST",requestParam:{token:"",deptId:"",memCode:"",memName:"",sex:"",memTel:"",memType:"",memMobile:"",memTel2:"",memFax:"",memEmail:"",dutyId:"",deptName:"",isActive:1,dutyName:"",memLevel:1,accId:"",memMsgLevel:"",businessConfigs:"",isOperAcc:!0,mainTel:"",operMobileTel:"",mobileTel:"",viceTel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},createOnGis:{url:"/common-gis-web/data/gispos/addPersion",method:"POST",contentType:"application/json;charset=utf-8",paramOnUrl:["token"],requestParam:{token:"",name:"",propKey:"",center:{latitude:30.223853,longitude:120.01802}},responseParam:{code:"",message:"",systemTime:"",data:{}}},createRyAndAccount:{url:"/scooper-app-manager/data/dev/saveApp",method:"POST",requestParam:{token:"",deptId:"",deptName:"",memName:"",sex:0,memType:"",memTel:"",memMobile:"",accUsername:"",accPassword:"",accShowname:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},updateOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/updateOrgMember",method:"POST",requestParam:{token:"",deptId:"",memCode:"",memName:"",sex:"",memTel:"",memType:"",memMobile:"",memTel2:"",memFax:"",memEmail:"",dutyId:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},deleteOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/deleteOrgMember",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},getOrgMemberDetailNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/getOrgMemberDetail",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}}},queryOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/queryOrgMember",method:"POST",requestParam:{token:"",currentPage:"",pageSize:"",deptId:"",modifyTimeStart:"",modifyTimeEnd:"",keyword:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",list:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}],modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:""}}},listOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/listOrgMember",method:"POST",requestParam:{token:"",deptId:"",keyword:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},findOrgMemberByTelNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findOrgMemberByTel",method:"POST",requestParam:{token:"",tel:"",all:"",type:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},findOrgMemberPathNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findOrgMemberPath",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:""}},findAccountByOrgMemberIdNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findAccountByOrgMemberId",method:"POST",requestParam:{token:"",orgMemberId:""},responseParam:{code:"",message:"",systemTime:"",data:{accId:"",memId:"",memName:""}}},changeOrgMemberSortIndexNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/changeOrgMemberSortIndex",method:"POST",requestParam:{token:"",id:"",sortIndex:"",oldSortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listOrgMemberByIdsNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/listOrgMemberByIds",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},orgMemberAddMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},orgMemberUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},orgMemberDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:""}}},orgMemberAddHttpNet:function(){return{url:"/data/dataChange/orgMember/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgMemberUpdateHttpNet:function(){return{url:"/data/dataChange/orgMember/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgMemberDeleteHttpNet:function(){return{url:"/data/dataChange/orgMember/delete",method:"POST",requestParam:{id:""},responseParam:{code:""}}}};var f=p;let m={saveOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/saveOrgDept",method:"POST",requestParam:{token:"",deptName:"",parentId:"",deptType:"",areaCode:"",shortName:"",corpTel:"",corpAddr:"",sortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:""}},updateOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/updateOrgDept",method:"POST",requestParam:{token:"",id:"",deptName:"",parentId:"",deptType:"",areaCode:"",shortName:"",corpTel:"",corpAddr:"",sortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:""}},deleteOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/deleteOrgDept",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:""}},getOrgDeptDetailNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/getOrgDeptDetail",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",deptType:""}}},queryOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/queryOrgDept",method:"POST",requestParam:{token:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",currentPage:"",pageSize:"",modifyTimeStart:"",modifyTimeEnd:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",list:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpTel:"",corpAddr:"",shortName:"",deptType:""}],modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:""}}},listOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listOrgDept",method:"POST",requestParam:{token:"",parentId:"",orgCode:"",deptType:"",modifyTimeStart:"",modifyTimeEnd:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpId:"",deptType:""}]}},listDeptByParentNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listDeptByParent",method:"POST",requestParam:{token:"",orgCorpId:"",id:"",firstExpand:"",expandMember:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",name:"",childNum:"",dataType:"",data:"",isParent:"",pid:""}]}},findDepartmentPathNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/findDepartmentPath",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpId:"",deptType:""}]}},listTreeDeptByParentNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listTreeDeptByParent",method:"POST",requestParam:{token:"",id:"",orgCorpId:"",firstExpand:"",expandMember:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",name:"",childNum:"",dataType:"",data:"",isParent:"",pid:""}]}},findDeptMemberCountNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/findDeptMemberCount",method:"POST",requestParam:{token:"",id:"",type:""},responseParam:{code:"",message:"",systemTime:"",data:""}},changeDeptSortIndexNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/changeDeptSortIndex",method:"POST",requestParam:{token:"",id:"",sortIndex:"",oldSortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listDeptMemberByDeotIdNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listDeptMemberByDeotId",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},listAdCodeNet:{url:"/scooper-core-rest/data/contacts/orgCorpManage/listAdCode",method:"POST",requestParam:{token:"",areaCodeParent:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",areaCode:"",areaName:"",areaCodeParent:"",areaLevel:""}]}},orgDeptAddMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},orgDeptUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},orgDeptDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:""}}},orgDeptAddHttpNet:function(){return{url:"/data/dataChange/orgDept/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgDeptUpdateHttpNet:function(){return{url:"/dataChange/orgDept/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgDeptDeleteHttpNet:function(){return{url:"/dataChange/orgDept/delete",method:"POST",requestParam:{id:""},responseParam:{code:""}}}};var h=m;let g={reLocationNet:{url:"/scooper-trace/data/trace/reLocation",method:"POST",headers:{"Content-Type":"application/json"},requestParam:{token:"",propType:"",propKey:"",posLocation:"",recordTime:"",posChange:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",coordinateType:"",locType:"",radius:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""}}}},listTraceByArgsNet:{url:"/scooper-trace/data/trace/listTraceByArgs",method:"GET",requestParam:{token:"",propType:"",propKey:"",startTime:"",endTime:"",useExternal:"",decrease:"",clusterDistance:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},recordTime:"",breakpoint:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}]}},listTraceByArgsPageNet:{url:"/scooper-trace/data/trace/listTraceByArgsPage",method:"GET",requestParam:{token:"",propType:"",propKey:"",startTime:"",endTime:"",useExternal:"",decrease:"",timespan:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},recordTime:"",breakpoint:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}]}}},listGisTrailNet:{url:"/scooper-app-msg/gis/queryGisTrails",method:"GET",requestParam:{startTime:"",endTime:"",timespan:"",memId:"",accId:"",token:"",pageNumber:1,pageSize:50},responseParam:{code:"",message:"",systemTime:"",data:{total:"",pageSize:"",pageNumber:"",list:[{altitude:0,center:{longitude:120.026576,latitude:30.823369},childMapId:0,corpId:0,evtLevel:0,extData:"",geoHash:"wtmr770xjumy",hasChild:!1,id:1,layerId:1,layerLogicName:"person",mapId:0,name:"单兵01",parentId:0,permKey:"300000.000002.002",points:[{longitude:0,latitude:0}],posStatus:"offline",propKey:"6",rectMax:{longitude:120.026576,latitude:30.823369},rectMin:{longitude:120.026576,latitude:30.823369},speed:0,type:"Point",updateTime:"2022-04-22 14:21:30"}]}}},listTypeLocationNet:{url:"/common-gis-web/data/gisquery/search",method:"POST",requestParam:{mapId:"",kw:"",layers:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",pageSize:"",pageNumber:"",list:[{altitude:0,center:{longitude:120.026576,latitude:30.823369},childMapId:0,corpId:0,evtLevel:0,extData:"",geoHash:"wtmr770xjumy",hasChild:!1,id:1,layerId:1,layerLogicName:"person",mapId:0,name:"单兵01",parentId:0,permKey:"300000.000002.002",points:[{longitude:0,latitude:0}],posStatus:"offline",propKey:"6",rectMax:{longitude:120.026576,latitude:30.823369},rectMin:{longitude:120.026576,latitude:30.823369},speed:0,type:"Point",updateTime:"2022-04-22 14:21:30"}]}}},moveMQNet:function(e,t){return{topic:`/scooper-trace/notify/move/${e}/${t}`,responseParam:{id:0,type:"notify",source:"scooper-trace",data:{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}}}},gisHttpNet:function(){return{url:"/notify/orgmember/gis",method:"POST",requestParam:{id:"",gis:""},responseParam:{code:"",message:"",systemTime:"",data:{}}}}};var v=g;let y={selectCallNet:{url:"/dispatch-web/api/call/selectCall",method:"POST",requestParam:{token:"",caller:"",callees:"",type:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},MeetPrivateTalkNet:{url:"/dispatch-web/api/meet/privateTalk",method:"POST",requestParam:{token:"",meetId:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},MeetBackToNet:{url:"/dispatch-web/api/meet/backToMeet",method:"POST",requestParam:{token:"",meetId:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},endMeetNet:{url:"/dispatch-web/api/meet/endMeet",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},createMeetNet:{url:"/dispatch-web/api/meet/createMeet",method:"POST",requestParam:{token:"",bussinessId:"",name:"",meetAcess:"",meetAttr:"",timeBegin:"",timeEnd:"",passwdSpeaker:"",passwdAudience:"",meetMembers:""},responseParam:{code:"",message:"",systemTime:"",data:{meetId:""}}},destroyMeetNet:{url:"/dispatch-web/api/meet/destroyMeet",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},changeMemeberLevelNet:{url:"/dispatch-web/api/meet/changeMemberLevel",method:"POST",requestParam:{token:"",id:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},kickMemberNet:{url:"/dispatch-web/api/meet/kickMember",method:"POST",requestParam:{token:"",id:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},setMeetChairmanNet:{url:"/dispatch-web/api/meet/setMeetChairman",method:"POST",requestParam:{token:"",id:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},joinVideoMemberNet:{url:"/dispatch-web/api/meet/joinVideoMember",method:"POST",requestParam:{token:"",meetId:"",businessId:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},joinMemberNet:{url:"/dispatch-web/api/meet/joinMember",method:"POST",requestParam:{token:"",meetId:"",businessId:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listMeetsNet:{url:"/dispatch-web/api/meet/listMeets",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{meetId:"",meetName:"",chairman:"",recording:"",playvoice:"",locked:"",list:[{meetId:"",tel:"",level:""}]}]}}},getMeetNet:{url:"/dispatch-web/api/meet/getMeetAdd",method:"POST",requestParam:{token:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{meetId:"",meetName:"",chairman:"",recording:"",playvoice:"",locked:"",members:[{meetId:"",tel:"",level:""}]}}},listMeetMembersNet:{url:"/dispatch-web/api/meet/listMeetMembers",method:"POST",requestParam:{token:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{meetId:"",tel:"",level:""}]}}},meetStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/meet/meetStatus`,responseParam:{id:0,type:"meetStatus",source:"dispatch-web",data:{meetId:"",meetName:"",destory:"",chairman:"",accId:"",account:""}}}},memberMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/meet/member`,responseParam:{id:0,type:"member",source:"dispatch-web",data:{meetId:"",tel:"",type:"",level:"",accId:"",account:""}}}},selectCallMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/selectCall`,responseParam:{id:0,type:"selectCall",source:"dispatch-web",data:{result:"",desc:"",accId:"",account:""}}}},meetStatusHttpNet:{url:"/notify/meet/meetStatus",method:"POST",requestParam:{meetId:"",meetName:"",accId:"",account:""},responseParam:{code:""}},selectCallHttpNet:{url:"/notify/call/selectCall",method:"POST",requestParam:{result:"",desc:"",accId:"",account:""},responseParam:{code:""}},memberHttpNet:{url:"/notify/meet/member",method:"POST",requestParam:{meetId:"",tel:"",type:"",level:"",accId:"",account:""},responseParam:{code:""}}};var b=y;let w={sendMsgNet:{url:"/scooper-sms/data/message/sendMsg",method:"POST",requestParam:{token:"",caller:"",callees:"",content:""},responseParam:{code:"",message:"",systemTime:"",data:{msgId:"",flagBatch:""}}},queryMsgSendNet:{url:"/scooper-sms/data/message/queryMsgSend",method:"POST",requestParam:{token:"",caller:"",callee:"",content:"",flagBatch:"",startTime:"",endTime:"",msgStatus:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{totalRow:"",list:[{id:"",caller:"",callee:"",flag_batch:"",msg_status:"",time_send:"",sms_content:"",succ_callee:"",total_callee:"",time_schedule:"",reply_read:""}],firstPage:"",lastPage:"",pageNumber:"",pageSize:"",totalPage:""}}},findMsgSendByIdNet:{url:"/scooper-sms/data/message/queryMsgSend",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",caller:"",callee:"",formatedCallee:"",flag_batch:"",msg_status:"",time_send:"",sms_content:""}}},findBatchResultNet:{url:"/scooper-sms/data/message/findBatchResult",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{callee:"",memName:"",reason:"",id:"",tx_id:""}]}}},deleteMsgSendNet:{url:"/scooper-sms/data/message/deleteMsgSend",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},queryMsgRecvNet:{url:"/scooper-sms/data/message/queryMsgRecv",method:"POST",requestParam:{token:"",caller:"",callee:"",content:"",startTime:"",endTime:"",msgStatus:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{totalRow:"",pageNumber:"",list:[{id:"",caller:"",callee:"",msg_status:"",time_recv:"",sms_content:"",succ_callee:"",total_callee:""}],lastPage:"",firstPage:"",pageSize:"",totalPage:""}}},findMsgRecvByIdNet:{url:"/scooper-sms/data/message/findMsgRecvById",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",caller:"",callee:"",msg_status:"",time_recv:"",sms_content:"",msg_type:""}}},updateRecvStatusNet:{url:"/scooper-sms/data/message/updateRecvStatus",method:"POST",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{unReadNum:1}}},getUnReadRecvNumNet:{url:"/scooper-sms/data/message/getUnReadRecvNum",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:1}}},sendMsgMQNet:function(){return{topic:"/scooper-sms/notify/msg/sendMsg",responseParam:{id:0,type:"sendMsg",source:"scooper-sms",data:{msgId:""}}}},sendMsgResultMQNet:function(){return{topic:"/scooper-sms/notify/msg/sendMsgResult",responseParam:{id:0,type:"sendMsgResult",source:"scooper-sms",data:{msgStatus:""}}}},deleteMsgSendMQNet:function(){return{topic:"/scooper-sms/notify/msg/deleteMsgSend",responseParam:{id:0,type:"deleteMsgSend",source:"scooper-sms",data:{}}}},recvMsgMQNet:function(){return{topic:"/scooper-sms/notify/msg/recvMsg",responseParam:{id:0,type:"recvMsg",source:"scooper-sms",data:{total:""}}}},deleteMsgRecvMQNet:function(){return{topic:"/scooper-sms/notify/msg/deleteMsgRecv",responseParam:{id:0,type:"deleteMsgRecv",source:"scooper-sms",data:{total:""}}}},readMsgRecvMQNet:function(){return{topic:"/scooper-sms/notify/msg/readMsgRecv",responseParam:{id:0,type:"readMsgRecv",source:"scooper-sms",data:{unReadNum:""}}}},sendMsgHttpNet:function(){return{url:"/notify/msg/sendMsg",method:"POST",requestParam:{msgId:""},responseParam:{code:""}}},sendMsgResultHttpNet:function(){return{url:"/notify/msg/sendMsgResult",method:"POST",requestParam:{msgId:"",msgStatus:""},responseParam:{code:""}}},deleteMsgSendHttpNet:function(){return{url:"/notify/msg/deleteMsgSend",method:"POST",requestParam:{msgId:""},responseParam:{code:""}}},recvMsgHttpNet:function(){return{url:"/notify/msg/recvMsg",method:"POST",requestParam:{msgId:"",total:""},responseParam:{code:""}}},deleteMsgRecvHttpNet:function(){return{url:"/notify/msg/deleteMsgRecv",method:"POST",requestParam:{msgId:"",total:""},responseParam:{code:""}}},readMsgRecvHttpNet:function(){return{url:"/notify/msg/readMsgRecv",method:"POST",requestParam:{msgId:"",unReadNum:""},responseParam:{code:""}}}};var T=w;let S={queryRecordNet:{url:"/scooper-record/data/record/queryRecord",method:"POST",requestParam:{token:"",recType:"",id:"",businessId:"",meetId:"",caller:"",callee:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",meetId:"",caller:"",callee:"",tmBegin:"",tmEnd:"",callLength:"",recFile:"",recType:"",recExt:""}]}}},queryCallRecordNet:{url:"/scooper-record/data/call/queryCallRecords",method:"GET",requestParam:{token:"",timeMin:"",timeMax:"",pageNumber:1,fileType:0,pageSize:10},responseParam:{code:"",message:"",systemTime:"",data:{pageNumber:1,pageSize:10,total:1884,list:[]}}},queryMeetingRecordNet:{url:"/scooper-record/data/meeting/queryMeetingRecords",method:"GET",requestParam:{token:"",timeMin:"",timeMax:"",pageNumber:1,pageSize:10},responseParam:{code:"",message:"",systemTime:"",data:{pageNumber:1,pageSize:10,total:1884,list:[]}}},queryVideoNet:{url:"/scooper-record/data/video/queryVideo",method:"POST",requestParam:{token:"",recType:"",id:"",businessId:"",meetId:"",tel:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",meetId:"",tel:"",tmBegin:"",tmEnd:"",tmLength:"",recFile:"",recType:""}]}}},queryRecordNotifyNet:{url:"/scooper-record/data/notify/queryRecordNotify",method:"POST",requestParam:{token:"",title:"",id:"",recTel:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:1,recTel:"",title:"",recTm:"",callLength:"",recFile:""}]}}},uploadNet:{url:"/scooper-record/data/notify/upload",method:"POST",requestParam:{token:"",recTel:"",title:"",recTm:"",callLength:"",file:""},responseParam:{code:"",message:"",systemTime:"",data:{id:""}}},doDownloadNet:{url:"/scooper-record/data/file/doDownload",method:"POST",requestParam:{token:"",id:"",fileType:"",recFile:""},responseParam:{file:""}},deleteFileNet:{url:"/scooper-record/data/file/deleteFile",method:"POST",requestParam:{token:"",id:"",fileType:"",recFile:""},responseParam:{code:"",message:"",systemTime:"",data:{}}}};var C=S;let P={callVideoNet:{url:"/dispatch-web/api/call/makeVideoCall",method:"POST",requestParam:{token:"",caller:"",callee:"",businessId:"",isRecord:""},responseParam:{code:"",message:"",systemTime:"",data:""}},getFacilityListNet:{url:"/scooper-video/data/facility/queryFacilityList",method:"POST",paramOnUrl:["token"],requestParam:{token:"",parentId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:100,list:[{devId:"",id:"",ipcType:"",isActive:"",name:"",parentId:"",orgCode:"",parental:"",sort:"",status:""}]}}},getVmmpVideoListNet:{url:"/scooper-video/data/facility/queryFacilityList",method:"GET",requestParam:{search_data:"",current:1,size:10,parentid:0},responseParam:{code:"",message:"",systemTime:"",data:{total:100,list:[{devId:"",id:"",ipcType:"",isActive:"",name:"",parentId:"",orgCode:"",parental:"",sort:"",status:""}]}}},videoStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/video`,responseParam:{id:0,type:"video",source:"dispatch-web",data:{cfgType:"",tel:"",accId:"",account:""}}}},getNodesVideoNet:{url:"/scooper-video/data/video/load/getNodes",method:"POST",requestParam:{token:"",parentId:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",nodeId:"",devId:"",dev_short_num:"",name:"",parental:"",parentid:"",port:"",sort:"",status:"",province:"",city:"",district:"",ipaddress:"",latitude:"",longitude:""}]}}};var x=P;const k="http://10.249.4.152:8080",D="/scooper-msg-queue/cometd";n("0b6e");function _(e,t){return t>>>e|t<<32-e}function A(e,t,n){return e&t^~e&n}function I(e,t,n){return e&t^e&n^t&n}function R(e){return _(2,e)^_(13,e)^_(22,e)}function N(e){return _(6,e)^_(11,e)^_(25,e)}function O(e){return _(7,e)^_(18,e)^e>>>3}function E(e){return _(17,e)^_(19,e)^e>>>10}function M(e,t){return e[15&t]+=E(e[t+14&15])+e[t+9&15]+O(e[t+1&15])}var L,j,q,V=new Array(1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298),B="0123456789abcdef";function F(e,t){var n=(65535&e)+(65535&t),r=(e>>16)+(t>>16)+(n>>16);return r<<16|65535&n}function W(){L=new Array(8),j=new Array(2),q=new Array(64),j[0]=j[1]=0,L[0]=1779033703,L[1]=3144134277,L[2]=1013904242,L[3]=2773480762,L[4]=1359893119,L[5]=2600822924,L[6]=528734635,L[7]=1541459225}function H(){var e,t,n,r,o,i,s,a,c,d,u=new Array(16);e=L[0],t=L[1],n=L[2],r=L[3],o=L[4],i=L[5],s=L[6],a=L[7];for(var l=0;l<16;l++)u[l]=q[3+(l<<2)]|q[2+(l<<2)]<<8|q[1+(l<<2)]<<16|q[l<<2]<<24;for(var p=0;p<64;p++)c=a+N(o)+A(o,i,s)+V[p],c+=p<16?u[p]:M(u,p),d=R(e)+I(e,t,n),a=s,s=i,i=o,o=F(r,c),r=n,n=t,t=e,e=F(c,d);L[0]+=e,L[1]+=t,L[2]+=n,L[3]+=r,L[4]+=o,L[5]+=i,L[6]+=s,L[7]+=a}function U(e,t){var n,r,o=0;r=j[0]>>3&63;var i=63&t;for((j[0]+=t<<3)<t<<3&&j[1]++,j[1]+=t>>29,n=0;n+63<t;n+=64){for(var s=r;s<64;s++)q[s]=e.charCodeAt(o++);H(),r=0}for(s=0;s<i;s++)q[s]=e.charCodeAt(o++)}function z(){var e=j[0]>>3&63;if(q[e++]=128,e<=56)for(var t=e;t<56;t++)q[t]=0;else{for(t=e;t<64;t++)q[t]=0;H();for(t=0;t<56;t++)q[t]=0}q[56]=j[1]>>>24&255,q[57]=j[1]>>>16&255,q[58]=j[1]>>>8&255,q[59]=255&j[1],q[60]=j[0]>>>24&255,q[61]=j[0]>>>16&255,q[62]=j[0]>>>8&255,q[63]=255&j[0],H()}function G(){for(var e=new String,t=0;t<8;t++)for(var n=28;n>=0;n-=4)e+=B.charAt(L[t]>>>n&15);return e}function J(e){return W(),U(e,e.length),z(),G()}let $=n("9a22"),Q=n("697d"),K=n("1157");const X=function(e,t,n,r,o,i,s){o=o||"POST",r=void 0==r||""==r||r;for(let c in t)if(/_phone01$/.test(c)){let e=c.replace(/_phone01$/,"");0==t[c]?t[e]="00"+t[e]:t[e]="0"+t[e],delete t[c]}let a={type:o,url:e,data:t,timeout:2e4,async:r};i||(i={headers:{}}),i&&(t.token&&Object.assign(i.headers,{"Sc-Token":t.token}),Object.assign(a,i)),s&&Object.assign(a,{contentType:s}),s&&-1!=s.indexOf("application/json")&&Object.assign(a,{data:JSON.stringify(t)}),K.ajax(a).fail((function(e,t){throw n&&n(null),new Error("请求失败!")})).done((function(e){if(n&&n(e),!e||0!=e.code)throw new Error("加载数据失败!")}))},Y=function(e,t,n,r,o,i,s){let a=s||k,c=new $.CometD("xjInfoReport");c.websocketEnabled=!0;let d=a+D;c.init({url:d,logLevel:"info"}),c.addListener("/meta/handshake",(function(e){e.successful}));let u=!1;c.addListener("/meta/connect",(function(s){s.successful?(u||Z(c,{meetcallfunc:e,callfunc:t,videocallfunc:n,connectcallfunc:r,appMsgfunc:o,devicefunc:i}),u=!0):u=!1}))};function Z(e,t){t.meetcallfunc&&e.subscribe("/dispatch-web/notify/meet/#",null,(function(e){t.meetcallfunc(e)})),t.callfunc&&e.subscribe("/dispatch-web/notify/call/#",null,(function(e){t.callfunc(e)})),t.devicefunc&&e.subscribe("/device/res-status/#",null,(function(e){t.devicefunc(e)})),t.videocallfunc&&e.subscribe("/server/#",null,(function(e){t.videocallfunc(e)})),t.connectcallfunc&&e.subscribe("/scooper_core/#",null,(function(e){t.connectcallfunc(e)})),t.appMsgfunc&&e.subscribe("/scooper-app-msg/orgmember/heartbeat",null,(function(e){t.appMsgfunc(e)}))}const ee=function(e,t,n,r){let o=r||k;return new Promise((r,i)=>{let s=o+"/scooper-video/conf/data?token="+e,a={};K.post(s,a,(function(o){o["video.janus.url"];let i={windows:4,windowsArr:[1,2,4,9,16],windowsNum:16,conf:{user:o["video.username"],passwd:o["video.password"],ip:o["video.ip"],port:o["video.port"],janusUrl:o["video.janus.url"],token:e},extra:!1,streamType:o["video.stream"],openChangeWindowStrategy:"true"===o["video.openChangeWindowStrategy"],capImage:"true"===o["video.cap.image"],videoCapImagePath:o["video.cap.image.path"],videoInfoInBottom:!1};n&&Object.assign(i,n),o["video.poll.time"]&&(i.pollInterval=o["video.poll.time"]);let s=new Q(K(t),i);r(s)}),"json")})},te=function(e,t,n){let r=a.loginNet,o=(n||k)+r.url;return new Promise((i,s)=>{X(o,{accUsername:e,accPassword:J(t)},(function(e){if(0==e.code){let t=e.data,r="/dispatch-web/api/conn/connectionByToken";X((n||k)+r,{token:t},(function(e){0==e.code?i(e):s(e.code)}),"","POST"),i(t)}else s("登录失败",e.code)}),"",r.method)})},ne=function(e,t){let n=a.logoutNet,r=(t||k)+n.url;return new Promise((t,o)=>{e?X(r,{token:e},(function(e){if(0==e.code){e.data;t()}else o("登出失败",e.code)}),"",n.method):o("token值无效",-1)})},re=function(e,t){let n=a.heartBeatNet,r=(t||k)+n.url;return()=>X(r,{token:e},(function(e){e.code}),"",n.method)},oe=e=>{let t=e||k;return{add:function(e){let n=a.saveAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=a.updateAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=a.deleteAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},updateDeptPerm:function(e){let n=a.updateDeptDataPermission;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},resetPwd:function(e){let n=a.resetPwdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},resetSelfPwd:function(e){let n=a.resetSelfPwdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=a.listAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=a.queryAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},linkMember:function(e){let n=a.getAccountLinkMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=a.getAccountDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},ie=e=>{let t=e||k;return{call:function(e){let n=d.callNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},answer:function(e){let n=d.answerNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},hold:function(e){let n=d.holdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},unhold:function(e){let n=d.unholdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},transfer:function(e){let n=d.transferNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},retrieve:function(e){let n=d.retrieveNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleBreakin:function(e){let n=d.tripleBreakinNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleHungup:function(e){let n=d.tripleHungupNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleMonitor:function(e){let n=d.tripleMonitorNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},groupNotify:function(e){let n=d.groupNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},groupNotifyListPage:function(e){let n=d.queryGroupNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},callListPage:function(e){let n=d.queryCallNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},se=e=>{let t=e||k;return{callHungup:function(e){let n=l.callHungupNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listStatus:function(e){let n=l.listStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},telsStatus:function(e){let n=l.telsStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},baseTelsStatus:function(e){let n=l.baseTelsStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},telsStatusAssist:function(e){let n=l.telsStatusAssistNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method)})}}},ae=e=>{let t=e||k;return{add:function(e){let n=h.saveOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=h.updateOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=h.deleteOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=h.getOrgDeptDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=h.queryOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=h.listOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listFrom:function(e){let n=h.listDeptByParentNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},path:function(e){let n=h.findDepartmentPathNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},treeFrom:function(e){let n=h.listTreeDeptByParentNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},memberCount:function(e){let n=h.findDeptMemberCount;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},changeSort:function(e){let n=h.changeDeptSortIndexNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},memberList:function(e){let n=h.listDeptMemberByDeotIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listAreaCode:function(e){let n=h.listDeptMemberByDeotIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},ce=e=>{let t=e||k;return{addRyAndAccount:function(e){let n=f.createRyAndAccount;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},createOnGis:function(e){let n=f.createOnGis,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method,null,n.contentType)})},add:function(e){let n=f.saveOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=f.updateOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=f.deleteOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=f.getOrgMemberDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=f.queryOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=f.listOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},findByTel:function(e){let n=f.findOrgMemberByTelNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},path:function(e){let n=f.findOrgMemberPathNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},linkAccount:function(e){let n=f.findAccountByOrgMemberIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},changeSort:function(e){let n=f.changeOrgMemberSortIndexNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listIds:function(e){let n=f.listOrgMemberByIdsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){e?0==e.code?r(e):o(e.code):o("网络连接问题")}),"",n.method)})}}},de=e=>{let t=e||k;return{locate:function(e){let n=v.reLocationNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method,{headers:n.headers})})},trace:function(e){let n=v.listTraceByArgsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tracePage:function(e){let n=v.listTraceByArgsPageNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},gisList:function(e){let n=v.listGisTrailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},locateDeviceByType:function(e){let n=v.listTypeLocationNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){e?0==e.code?r(e):o(e.code):o("网络连接问题")}),"",n.method)})}}},ue=e=>{let t=e||k;return{create:function(e){let n=b.selectCallNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},setChairman:function(e){let n=b.setMeetChairmanNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},privateTalk:function(e){let n=b.MeetPrivateTalkNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},back:function(e){let n=b.MeetBackToNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},end:function(e){let n=b.endMeetNet,r=!0;return Object.keys(e).includes("async")&&(r=e.async),r?new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)}):(delete e.async,fetch(t+n.url,{method:n.method,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","Sc-Token":e.token},body:new URLSearchParams(e),keepalive:!0}))},joinVideo:function(e){let n=b.joinVideoMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},join:function(e){let n=b.joinMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},createRoom:function(e){let n=b.createMeetNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},destroyRoom:function(e){let n=b.destroyMeetNet,r=!0;return Object.keys(e).includes("async")&&(r=e.async,delete e.async),fetch(t+n.url,{method:n.method,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","Sc-Token":e.token},body:new URLSearchParams(e),keepalive:!0})},changeMemberStatus:function(e){let n=b.changeMemeberLevelNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},kick:function(e){let n=b.kickMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=b.listMeetsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=b.getMeetNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},members:function(e){let n=b.listMeetMembersNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},le=e=>{let t=e||k;return{send:function(e){let n=T.sendMsgNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=T.queryMsgSendNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=T.findMsgSendByIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},findBatchResult:function(e){let n=T.findBatchResultNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=T.deleteMsgSendNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},recvListPage:function(e){let n=T.queryMsgRecvNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},recvInfo:function(e){let n=T.findMsgRecvByIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},read:function(e){let n=T.updateRecvStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},unreadNum:function(e){let n=T.getUnReadRecvNumNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},pe=e=>{let t=e||k;return{aduioListPage:function(e){let n=C.queryRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},videoListPage:function(e){let n=C.queryVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},callRecordListPage:function(e){let n=C.queryCallRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},meetRecordListPage:function(e){let n=C.queryMeetingRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},notifyPageList:function(e){let n=C.queryRecordNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},uploadNotify:function(e){let n=C.uploadNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},download:function(e){let n=C.doDownloadNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=C.deleteFileNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},fe=e=>{let t=e||k;return{facilityList:function(e){let n=x.getFacilityListNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method)})},vmmpVList:function(e){let n=x.getVmmpVideoListNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method)})},call:function(e){let n=x.callVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tree:function(e){let n=x.getNodesVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}}}})}));
25
+ function(e){var t,n,r,o,i,s,a,c,d,u,l,p,f,m,h,g,v,y,b,w="sizzle"+1*new Date,T=e.document,S=0,C=0,P=ce(),x=ce(),k=ce(),D=ce(),_=function(e,t){return e===t&&(l=!0),0},A={}.hasOwnProperty,I=[],R=I.pop,N=I.push,O=I.push,E=I.slice,M=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",j="[\\x20\\t\\r\\n\\f]",q="(?:\\\\[\\da-fA-F]{1,6}"+j+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",V="\\["+j+"*("+q+")(?:"+j+"*([*^$|!~]?=)"+j+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+q+"))|)"+j+"*\\]",B=":("+q+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+V+")*)|.*)\\)|)",F=new RegExp(j+"+","g"),W=new RegExp("^"+j+"+|((?:^|[^\\\\])(?:\\\\.)*)"+j+"+$","g"),H=new RegExp("^"+j+"*,"+j+"*"),U=new RegExp("^"+j+"*([>+~]|"+j+")"+j+"*"),z=new RegExp(j+"|>"),G=new RegExp(B),J=new RegExp("^"+q+"$"),$={ID:new RegExp("^#("+q+")"),CLASS:new RegExp("^\\.("+q+")"),TAG:new RegExp("^("+q+"|[*])"),ATTR:new RegExp("^"+V),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+j+"*(even|odd|(([+-]|)(\\d*)n|)"+j+"*(?:([+-]|)"+j+"*(\\d+)|))"+j+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+j+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+j+"*((?:-\\d)?\\d*)"+j+"*\\)|)(?=[^-]|$)","i")},Q=/HTML$/i,K=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+j+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,oe=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},ie=function(){p()},se=we((function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{O.apply(I=E.call(T.childNodes),T.childNodes),I[T.childNodes.length].nodeType}catch(De){O={apply:I.length?function(e,t){N.apply(e,E.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function ae(e,t,r,o){var i,a,d,u,l,m,v,y=t&&t.ownerDocument,T=t?t.nodeType:9;if(r=r||[],"string"!==typeof e||!e||1!==T&&9!==T&&11!==T)return r;if(!o&&(p(t),t=t||f,h)){if(11!==T&&(l=Z.exec(e)))if(i=l[1]){if(9===T){if(!(d=t.getElementById(i)))return r;if(d.id===i)return r.push(d),r}else if(y&&(d=y.getElementById(i))&&b(t,d)&&d.id===i)return r.push(d),r}else{if(l[2])return O.apply(r,t.getElementsByTagName(e)),r;if((i=l[3])&&n.getElementsByClassName&&t.getElementsByClassName)return O.apply(r,t.getElementsByClassName(i)),r}if(n.qsa&&!D[e+" "]&&(!g||!g.test(e))&&(1!==T||"object"!==t.nodeName.toLowerCase())){if(v=e,y=t,1===T&&(z.test(e)||U.test(e))){y=ee.test(e)&&ve(t.parentNode)||t,y===t&&n.scope||((u=t.getAttribute("id"))?u=u.replace(re,oe):t.setAttribute("id",u=w)),m=s(e),a=m.length;while(a--)m[a]=(u?"#"+u:":scope")+" "+be(m[a]);v=m.join(",")}try{return O.apply(r,y.querySelectorAll(v)),r}catch(S){D(e,!0)}finally{u===w&&t.removeAttribute("id")}}}return c(e.replace(W,"$1"),t,r,o)}function ce(){var e=[];function t(n,o){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=o}return t}function de(e){return e[w]=!0,e}function ue(e){var t=f.createElement("fieldset");try{return!!e(t)}catch(De){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),o=n.length;while(o--)r.attrHandle[n[o]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function me(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function he(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&se(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function ge(e){return de((function(t){return t=+t,de((function(n,r){var o,i=e([],n.length,t),s=i.length;while(s--)n[o=i[s]]&&(n[o]=!(r[o]=n[o]))}))}))}function ve(e){return e&&"undefined"!==typeof e.getElementsByTagName&&e}for(t in n=ae.support={},i=ae.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Q.test(t||n&&n.nodeName||"HTML")},p=ae.setDocument=function(e){var t,o,s=e?e.ownerDocument||e:T;return s!=f&&9===s.nodeType&&s.documentElement?(f=s,m=f.documentElement,h=!i(f),T!=f&&(o=f.defaultView)&&o.top!==o&&(o.addEventListener?o.addEventListener("unload",ie,!1):o.attachEvent&&o.attachEvent("onunload",ie)),n.scope=ue((function(e){return m.appendChild(e).appendChild(f.createElement("div")),"undefined"!==typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length})),n.attributes=ue((function(e){return e.className="i",!e.getAttribute("className")})),n.getElementsByTagName=ue((function(e){return e.appendChild(f.createComment("")),!e.getElementsByTagName("*").length})),n.getElementsByClassName=Y.test(f.getElementsByClassName),n.getById=ue((function(e){return m.appendChild(e).id=w,!f.getElementsByName||!f.getElementsByName(w).length})),n.getById?(r.filter["ID"]=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},r.find["ID"]=function(e,t){if("undefined"!==typeof t.getElementById&&h){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter["ID"]=function(e){var t=e.replace(te,ne);return function(e){var n="undefined"!==typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},r.find["ID"]=function(e,t){if("undefined"!==typeof t.getElementById&&h){var n,r,o,i=t.getElementById(e);if(i){if(n=i.getAttributeNode("id"),n&&n.value===e)return[i];o=t.getElementsByName(e),r=0;while(i=o[r++])if(n=i.getAttributeNode("id"),n&&n.value===e)return[i]}return[]}}),r.find["TAG"]=n.getElementsByTagName?function(e,t){return"undefined"!==typeof t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){while(n=i[o++])1===n.nodeType&&r.push(n);return r}return i},r.find["CLASS"]=n.getElementsByClassName&&function(e,t){if("undefined"!==typeof t.getElementsByClassName&&h)return t.getElementsByClassName(e)},v=[],g=[],(n.qsa=Y.test(f.querySelectorAll))&&(ue((function(e){var t;m.appendChild(e).innerHTML="<a id='"+w+"'></a><select id='"+w+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+j+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+j+"*(?:value|"+L+")"),e.querySelectorAll("[id~="+w+"-]").length||g.push("~="),t=f.createElement("input"),t.setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||g.push("\\["+j+"*name"+j+"*="+j+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+w+"+*").length||g.push(".#.+[+~]"),e.querySelectorAll("\\\f"),g.push("[\\r\\n\\f]")})),ue((function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=f.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+j+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),m.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")}))),(n.matchesSelector=Y.test(y=m.matches||m.webkitMatchesSelector||m.mozMatchesSelector||m.oMatchesSelector||m.msMatchesSelector))&&ue((function(e){n.disconnectedMatch=y.call(e,"*"),y.call(e,"[s!='']:x"),v.push("!=",B)})),g=g.length&&new RegExp(g.join("|")),v=v.length&&new RegExp(v.join("|")),t=Y.test(m.compareDocumentPosition),b=t||Y.test(m.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)while(t=t.parentNode)if(t===e)return!0;return!1},_=t?function(e,t){if(e===t)return l=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&r||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==f||e.ownerDocument==T&&b(T,e)?-1:t==f||t.ownerDocument==T&&b(T,t)?1:u?M(u,e)-M(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,s=[e],a=[t];if(!o||!i)return e==f?-1:t==f?1:o?-1:i?1:u?M(u,e)-M(u,t):0;if(o===i)return pe(e,t);n=e;while(n=n.parentNode)s.unshift(n);n=t;while(n=n.parentNode)a.unshift(n);while(s[r]===a[r])r++;return r?pe(s[r],a[r]):s[r]==T?-1:a[r]==T?1:0},f):f},ae.matches=function(e,t){return ae(e,null,null,t)},ae.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&h&&!D[t+" "]&&(!v||!v.test(t))&&(!g||!g.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(De){D(t,!0)}return ae(t,f,null,[e]).length>0},ae.contains=function(e,t){return(e.ownerDocument||e)!=f&&p(e),b(e,t)},ae.attr=function(e,t){(e.ownerDocument||e)!=f&&p(e);var o=r.attrHandle[t.toLowerCase()],i=o&&A.call(r.attrHandle,t.toLowerCase())?o(e,t,!h):void 0;return void 0!==i?i:n.attributes||!h?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},ae.escape=function(e){return(e+"").replace(re,oe)},ae.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ae.uniqueSort=function(e){var t,r=[],o=0,i=0;if(l=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort(_),l){while(t=e[i++])t===e[i]&&(o=r.push(i));while(o--)e.splice(r[o],1)}return u=null,e},o=ae.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+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},r=ae.selectors={cacheLength:50,createPseudo:de,match:$,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(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===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]||ae.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]&&ae.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return $["CHILD"].test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.test(n)&&(t=s(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(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=P[e+" "];return t||(t=new RegExp("(^|"+j+")"+e+"("+j+"|$)"))&&P(e,(function(e){return t.test("string"===typeof e.className&&e.className||"undefined"!==typeof e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var o=ae.attr(r,e);return null==o?"!="===t:!t||(o+="","="===t?o===n:"!="===t?o!==n:"^="===t?n&&0===o.indexOf(n):"*="===t?n&&o.indexOf(n)>-1:"$="===t?n&&o.slice(-n.length)===n:"~="===t?(" "+o.replace(F," ")+" ").indexOf(n)>-1:"|="===t&&(o===n||o.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,o){var i="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,c){var d,u,l,p,f,m,h=i!==s?"nextSibling":"previousSibling",g=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!c&&!a,b=!1;if(g){if(i){while(h){p=t;while(p=p[h])if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;m=h="only"===e&&!m&&"nextSibling"}return!0}if(m=[s?g.firstChild:g.lastChild],s&&y){p=g,l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),d=u[e]||[],f=d[0]===S&&d[1],b=f&&d[2],p=f&&g.childNodes[f];while(p=++f&&p&&p[h]||(b=f=0)||m.pop())if(1===p.nodeType&&++b&&p===t){u[e]=[S,f,b];break}}else if(y&&(p=t,l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),d=u[e]||[],f=d[0]===S&&d[1],b=f),!1===b)while(p=++f&&p&&p[h]||(b=f=0)||m.pop())if((a?p.nodeName.toLowerCase()===v:1===p.nodeType)&&++b&&(y&&(l=p[w]||(p[w]={}),u=l[p.uniqueID]||(l[p.uniqueID]={}),u[e]=[S,b]),p===t))break;return b-=o,b===r||b%r===0&&b/r>=0}}},PSEUDO:function(e,t){var n,o=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ae.error("unsupported pseudo: "+e);return o[w]?o(t):o.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?de((function(e,n){var r,i=o(e,t),s=i.length;while(s--)r=M(e,i[s]),e[r]=!(n[r]=i[s])})):function(e){return o(e,0,n)}):o}},pseudos:{not:de((function(e){var t=[],n=[],r=a(e.replace(W,"$1"));return r[w]?de((function(e,t,n,o){var i,s=r(e,null,o,[]),a=e.length;while(a--)(i=s[a])&&(e[a]=!(t[a]=i))})):function(e,o,i){return t[0]=e,r(t,null,i,n),t[0]=null,!n.pop()}})),has:de((function(e){return function(t){return ae(e,t).length>0}})),contains:de((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||o(t)).indexOf(e)>-1}})),lang:de((function(e){return J.test(e||"")||ae.error("unsupported lang: "+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=h?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===m},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:he(!1),disabled:he(!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,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos["empty"](e)},header:function(e){return X.test(e.nodeName)},input:function(e){return K.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:ge((function(){return[0]})),last:ge((function(e,t){return[t-1]})),eq:ge((function(e,t,n){return[n<0?n+t:n]})),even:ge((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ge((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ge((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ge((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}},r.pseudos["nth"]=r.pseudos["eq"],{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=fe(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=me(t);function ye(){}function be(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function we(e,t,n){var r=t.dir,o=t.next,i=o||r,s=n&&"parentNode"===i,a=C++;return t.first?function(t,n,o){while(t=t[r])if(1===t.nodeType||s)return e(t,n,o);return!1}:function(t,n,c){var d,u,l,p=[S,a];if(c){while(t=t[r])if((1===t.nodeType||s)&&e(t,n,c))return!0}else while(t=t[r])if(1===t.nodeType||s)if(l=t[w]||(t[w]={}),u=l[t.uniqueID]||(l[t.uniqueID]={}),o&&o===t.nodeName.toLowerCase())t=t[r]||t;else{if((d=u[i])&&d[0]===S&&d[1]===a)return p[2]=d[2];if(u[i]=p,p[2]=e(t,n,c))return!0}return!1}}function Te(e){return e.length>1?function(t,n,r){var o=e.length;while(o--)if(!e[o](t,n,r))return!1;return!0}:e[0]}function Se(e,t,n){for(var r=0,o=t.length;r<o;r++)ae(e,t[r],n);return n}function Ce(e,t,n,r,o){for(var i,s=[],a=0,c=e.length,d=null!=t;a<c;a++)(i=e[a])&&(n&&!n(i,r,o)||(s.push(i),d&&t.push(a)));return s}function Pe(e,t,n,r,o,i){return r&&!r[w]&&(r=Pe(r)),o&&!o[w]&&(o=Pe(o,i)),de((function(i,s,a,c){var d,u,l,p=[],f=[],m=s.length,h=i||Se(t||"*",a.nodeType?[a]:a,[]),g=!e||!i&&t?h:Ce(h,p,e,a,c),v=n?o||(i?e:m||r)?[]:s:g;if(n&&n(g,v,a,c),r){d=Ce(v,f),r(d,[],a,c),u=d.length;while(u--)(l=d[u])&&(v[f[u]]=!(g[f[u]]=l))}if(i){if(o||e){if(o){d=[],u=v.length;while(u--)(l=v[u])&&d.push(g[u]=l);o(null,v=[],d,c)}u=v.length;while(u--)(l=v[u])&&(d=o?M(i,l):p[u])>-1&&(i[d]=!(s[d]=l))}}else v=Ce(v===s?v.splice(m,v.length):v),o?o(null,s,v,c):O.apply(s,v)}))}function xe(e){for(var t,n,o,i=e.length,s=r.relative[e[0].type],a=s||r.relative[" "],c=s?1:0,u=we((function(e){return e===t}),a,!0),l=we((function(e){return M(t,e)>-1}),a,!0),p=[function(e,n,r){var o=!s&&(r||n!==d)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,o}];c<i;c++)if(n=r.relative[e[c].type])p=[we(Te(p),n)];else{if(n=r.filter[e[c].type].apply(null,e[c].matches),n[w]){for(o=++c;o<i;o++)if(r.relative[e[o].type])break;return Pe(c>1&&Te(p),c>1&&be(e.slice(0,c-1).concat({value:" "===e[c-2].type?"*":""})).replace(W,"$1"),n,c<o&&xe(e.slice(c,o)),o<i&&xe(e=e.slice(o)),o<i&&be(e))}p.push(n)}return Te(p)}function ke(e,t){var n=t.length>0,o=e.length>0,i=function(i,s,a,c,u){var l,m,g,v=0,y="0",b=i&&[],w=[],T=d,C=i||o&&r.find["TAG"]("*",u),P=S+=null==T?1:Math.random()||.1,x=C.length;for(u&&(d=s==f||s||u);y!==x&&null!=(l=C[y]);y++){if(o&&l){m=0,s||l.ownerDocument==f||(p(l),a=!h);while(g=e[m++])if(g(l,s||f,a)){c.push(l);break}u&&(S=P)}n&&((l=!g&&l)&&v--,i&&b.push(l))}if(v+=y,n&&y!==v){m=0;while(g=t[m++])g(b,w,s,a);if(i){if(v>0)while(y--)b[y]||w[y]||(w[y]=R.call(c));w=Ce(w)}O.apply(c,w),u&&!i&&w.length>0&&v+t.length>1&&ae.uniqueSort(c)}return u&&(S=P,d=T),b};return n?de(i):i}return ye.prototype=r.filters=r.pseudos,r.setFilters=new ye,s=ae.tokenize=function(e,t){var n,o,i,s,a,c,d,u=x[e+" "];if(u)return t?0:u.slice(0);a=e,c=[],d=r.preFilter;while(a){for(s in n&&!(o=H.exec(a))||(o&&(a=a.slice(o[0].length)||a),c.push(i=[])),n=!1,(o=U.exec(a))&&(n=o.shift(),i.push({value:n,type:o[0].replace(W," ")}),a=a.slice(n.length)),r.filter)!(o=$[s].exec(a))||d[s]&&!(o=d[s](o))||(n=o.shift(),i.push({value:n,type:s,matches:o}),a=a.slice(n.length));if(!n)break}return t?a.length:a?ae.error(e):x(e,c).slice(0)},a=ae.compile=function(e,t){var n,r=[],o=[],i=k[e+" "];if(!i){t||(t=s(e)),n=t.length;while(n--)i=xe(t[n]),i[w]?r.push(i):o.push(i);i=k(e,ke(o,r)),i.selector=e}return i},c=ae.select=function(e,t,n,o){var i,c,d,u,l,p="function"===typeof e&&e,f=!o&&s(e=p.selector||e);if(n=n||[],1===f.length){if(c=f[0]=f[0].slice(0),c.length>2&&"ID"===(d=c[0]).type&&9===t.nodeType&&h&&r.relative[c[1].type]){if(t=(r.find["ID"](d.matches[0].replace(te,ne),t)||[])[0],!t)return n;p&&(t=t.parentNode),e=e.slice(c.shift().value.length)}i=$["needsContext"].test(e)?0:c.length;while(i--){if(d=c[i],r.relative[u=d.type])break;if((l=r.find[u])&&(o=l(d.matches[0].replace(te,ne),ee.test(c[0].type)&&ve(t.parentNode)||t))){if(c.splice(i,1),e=o.length&&be(c),!e)return O.apply(n,o),n;break}}}return(p||a(e,f))(o,t,!h,n,!t||ee.test(e)&&ve(t.parentNode)||t),n},n.sortStable=w.split("").sort(_).join("")===w,n.detectDuplicates=!!l,p(),n.sortDetached=ue((function(e){return 1&e.compareDocumentPosition(f.createElement("fieldset"))})),ue((function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")}))||le("type|href|height|width",(function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)})),n.attributes&&ue((function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}))||le("value",(function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue})),ue((function(e){return null==e.getAttribute("disabled")}))||le(L,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),ae}(n);x.find=D,x.expr=D.selectors,x.expr[":"]=x.expr.pseudos,x.uniqueSort=x.unique=D.uniqueSort,x.text=D.getText,x.isXMLDoc=D.isXML,x.contains=D.contains,x.escapeSelector=D.escape;var _=function(e,t,n){var r=[],o=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(o&&x(e).is(n))break;r.push(e)}return r},A=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},I=x.expr.match.needsContext;function R(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function O(e,t,n){return y(t)?x.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?x.grep(e,(function(e){return e===t!==n})):"string"!==typeof t?x.grep(e,(function(e){return l.call(t,e)>-1!==n})):x.filter(t,e,n)}x.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,(function(e){return 1===e.nodeType})))},x.fn.extend({find:function(e){var t,n,r=this.length,o=this;if("string"!==typeof e)return this.pushStack(x(e).filter((function(){for(t=0;t<r;t++)if(x.contains(o[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)x.find(e,o[t],n);return r>1?x.uniqueSort(n):n},filter:function(e){return this.pushStack(O(this,e||[],!1))},not:function(e){return this.pushStack(O(this,e||[],!0))},is:function(e){return!!O(this,"string"===typeof e&&I.test(e)?x(e):e||[],!1).length}});var E,M=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,L=x.fn.init=function(e,t,n){var r,o;if(!e)return this;if(n=n||E,"string"===typeof e){if(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:M.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 x?t[0]:t,x.merge(this,x.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:w,!0)),N.test(r[1])&&x.isPlainObject(t))for(r in t)y(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return o=w.getElementById(r[2]),o&&(this[0]=o,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):y(e)?void 0!==n.ready?n.ready(e):e(x):x.makeArray(e,this)};L.prototype=x.fn,E=x(w);var j=/^(?:parents|prev(?:Until|All))/,q={children:!0,contents:!0,next:!0,prev:!0};function V(e,t){while((e=e[t])&&1!==e.nodeType);return e}x.fn.extend({has:function(e){var t=x(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(x.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,o=this.length,i=[],s="string"!==typeof e&&x(e);if(!I.test(e))for(;r<o;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?x.uniqueSort(i):i)},index:function(e){return e?"string"===typeof e?l.call(x(e),this[0]):l.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(x.uniqueSort(x.merge(this.get(),x(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return _(e,"parentNode")},parentsUntil:function(e,t,n){return _(e,"parentNode",n)},next:function(e){return V(e,"nextSibling")},prev:function(e){return V(e,"previousSibling")},nextAll:function(e){return _(e,"nextSibling")},prevAll:function(e){return _(e,"previousSibling")},nextUntil:function(e,t,n){return _(e,"nextSibling",n)},prevUntil:function(e,t,n){return _(e,"previousSibling",n)},siblings:function(e){return A((e.parentNode||{}).firstChild,e)},children:function(e){return A(e.firstChild)},contents:function(e){return null!=e.contentDocument&&a(e.contentDocument)?e.contentDocument:(R(e,"template")&&(e=e.content||e),x.merge([],e.childNodes))}},(function(e,t){x.fn[e]=function(n,r){var o=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"===typeof r&&(o=x.filter(r,o)),this.length>1&&(q[e]||x.uniqueSort(o),j.test(e)&&o.reverse()),this.pushStack(o)}}));var B=/[^\x20\t\r\n\f]+/g;function F(e){var t={};return x.each(e.match(B)||[],(function(e,n){t[n]=!0})),t}function W(e){return e}function H(e){throw e}function U(e,t,n,r){var o;try{e&&y(o=e.promise)?o.call(e).done(t).fail(n):e&&y(o=e.then)?o.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}x.Callbacks=function(e){e="string"===typeof e?F(e):x.extend({},e);var t,n,r,o,i=[],s=[],a=-1,c=function(){for(o=o||e.once,r=t=!0;s.length;a=-1){n=s.shift();while(++a<i.length)!1===i[a].apply(n[0],n[1])&&e.stopOnFalse&&(a=i.length,n=!1)}e.memory||(n=!1),t=!1,o&&(i=n?[]:"")},d={add:function(){return i&&(n&&!t&&(a=i.length-1,s.push(n)),function t(n){x.each(n,(function(n,r){y(r)?e.unique&&d.has(r)||i.push(r):r&&r.length&&"string"!==C(r)&&t(r)}))}(arguments),n&&!t&&c()),this},remove:function(){return x.each(arguments,(function(e,t){var n;while((n=x.inArray(t,i,n))>-1)i.splice(n,1),n<=a&&a--})),this},has:function(e){return e?x.inArray(e,i)>-1:i.length>0},empty:function(){return i&&(i=[]),this},disable:function(){return o=s=[],i=n="",this},disabled:function(){return!i},lock:function(){return o=s=[],n||t||(i=n=""),this},locked:function(){return!!o},fireWith:function(e,n){return o||(n=n||[],n=[e,n.slice?n.slice():n],s.push(n),t||c()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!r}};return d},x.extend({Deferred:function(e){var t=[["notify","progress",x.Callbacks("memory"),x.Callbacks("memory"),2],["resolve","done",x.Callbacks("once memory"),x.Callbacks("once memory"),0,"resolved"],["reject","fail",x.Callbacks("once memory"),x.Callbacks("once memory"),1,"rejected"]],r="pending",o={state:function(){return r},always:function(){return i.done(arguments).fail(arguments),this},catch:function(e){return o.then(null,e)},pipe:function(){var e=arguments;return x.Deferred((function(n){x.each(t,(function(t,r){var o=y(e[r[4]])&&e[r[4]];i[r[1]]((function(){var e=o&&o.apply(this,arguments);e&&y(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,o?[e]:arguments)}))})),e=null})).promise()},then:function(e,r,o){var i=0;function s(e,t,r,o){return function(){var a=this,c=arguments,d=function(){var n,d;if(!(e<i)){if(n=r.apply(a,c),n===t.promise())throw new TypeError("Thenable self-resolution");d=n&&("object"===typeof n||"function"===typeof n)&&n.then,y(d)?o?d.call(n,s(i,t,W,o),s(i,t,H,o)):(i++,d.call(n,s(i,t,W,o),s(i,t,H,o),s(i,t,W,t.notifyWith))):(r!==W&&(a=void 0,c=[n]),(o||t.resolveWith)(a,c))}},u=o?d:function(){try{d()}catch(n){x.Deferred.exceptionHook&&x.Deferred.exceptionHook(n,u.stackTrace),e+1>=i&&(r!==H&&(a=void 0,c=[n]),t.rejectWith(a,c))}};e?u():(x.Deferred.getStackHook&&(u.stackTrace=x.Deferred.getStackHook()),n.setTimeout(u))}}return x.Deferred((function(n){t[0][3].add(s(0,n,y(o)?o:W,n.notifyWith)),t[1][3].add(s(0,n,y(e)?e:W)),t[2][3].add(s(0,n,y(r)?r:H))})).promise()},promise:function(e){return null!=e?x.extend(e,o):o}},i={};return x.each(t,(function(e,n){var s=n[2],a=n[5];o[n[1]]=s.add,a&&s.add((function(){r=a}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),s.add(n[3].fire),i[n[0]]=function(){return i[n[0]+"With"](this===i?void 0:this,arguments),this},i[n[0]+"With"]=s.fireWith})),o.promise(i),e&&e.call(i,i),i},when:function(e){var t=arguments.length,n=t,r=Array(n),o=c.call(arguments),i=x.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?c.call(arguments):n,--t||i.resolveWith(r,o)}};if(t<=1&&(U(e,i.done(s(n)).resolve,i.reject,!t),"pending"===i.state()||y(o[n]&&o[n].then)))return i.then();while(n--)U(o[n],s(n),i.reject);return i.promise()}});var z=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;x.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&z.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},x.readyException=function(e){n.setTimeout((function(){throw e}))};var G=x.Deferred();function J(){w.removeEventListener("DOMContentLoaded",J),n.removeEventListener("load",J),x.ready()}x.fn.ready=function(e){return G.then(e).catch((function(e){x.readyException(e)})),this},x.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--x.readyWait:x.isReady)||(x.isReady=!0,!0!==e&&--x.readyWait>0||G.resolveWith(w,[x]))}}),x.ready.then=G.then,"complete"===w.readyState||"loading"!==w.readyState&&!w.documentElement.doScroll?n.setTimeout(x.ready):(w.addEventListener("DOMContentLoaded",J),n.addEventListener("load",J));var $=function(e,t,n,r,o,i,s){var a=0,c=e.length,d=null==n;if("object"===C(n))for(a in o=!0,n)$(e,t,a,n[a],!0,i,s);else if(void 0!==r&&(o=!0,y(r)||(s=!0),d&&(s?(t.call(e,r),t=null):(d=t,t=function(e,t,n){return d.call(x(e),n)})),t))for(;a<c;a++)t(e[a],n,s?r:r.call(e[a],a,t(e[a],n)));return o?e:d?t.call(e):c?t(e[0],n):i},Q=/^-ms-/,K=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function Y(e){return e.replace(Q,"ms-").replace(K,X)}var Z=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function ee(){this.expando=x.expando+ee.uid++}ee.uid=1,ee.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Z(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,o=this.cache(e);if("string"===typeof t)o[Y(t)]=n;else for(r in t)o[Y(r)]=t[r];return o},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][Y(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){Array.isArray(t)?t=t.map(Y):(t=Y(t),t=t in r?[t]:t.match(B)||[]),n=t.length;while(n--)delete r[t[n]]}(void 0===t||x.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&&!x.isEmptyObject(t)}};var te=new ee,ne=new ee,re=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,oe=/[A-Z]/g;function ie(e){return"true"===e||"false"!==e&&("null"===e?null:e===+e+""?+e:re.test(e)?JSON.parse(e):e)}function se(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(oe,"-$&").toLowerCase(),n=e.getAttribute(r),"string"===typeof n){try{n=ie(n)}catch(o){}ne.set(e,t,n)}else n=void 0;return n}x.extend({hasData:function(e){return ne.hasData(e)||te.hasData(e)},data:function(e,t,n){return ne.access(e,t,n)},removeData:function(e,t){ne.remove(e,t)},_data:function(e,t,n){return te.access(e,t,n)},_removeData:function(e,t){te.remove(e,t)}}),x.fn.extend({data:function(e,t){var n,r,o,i=this[0],s=i&&i.attributes;if(void 0===e){if(this.length&&(o=ne.get(i),1===i.nodeType&&!te.get(i,"hasDataAttrs"))){n=s.length;while(n--)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=Y(r.slice(5)),se(i,r,o[r])));te.set(i,"hasDataAttrs",!0)}return o}return"object"===typeof e?this.each((function(){ne.set(this,e)})):$(this,(function(t){var n;if(i&&void 0===t)return n=ne.get(i,e),void 0!==n?n:(n=se(i,e),void 0!==n?n:void 0);this.each((function(){ne.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){ne.remove(this,e)}))}}),x.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=te.get(e,t),n&&(!r||Array.isArray(n)?r=te.access(e,t,x.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,o=n.shift(),i=x._queueHooks(e,t),s=function(){x.dequeue(e,t)};"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete i.stop,o.call(e,s,i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return te.get(e,n)||te.access(e,n,{empty:x.Callbacks("once memory").add((function(){te.remove(e,[t+"queue",n])}))})}}),x.fn.extend({queue:function(e,t){var n=2;return"string"!==typeof e&&(t=e,e="fx",n--),arguments.length<n?x.queue(this[0],e):void 0===t?this:this.each((function(){var n=x.queue(this,e,t);x._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&x.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){x.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,o=x.Deferred(),i=this,s=this.length,a=function(){--r||o.resolveWith(i,[i])};"string"!==typeof e&&(t=e,e=void 0),e=e||"fx";while(s--)n=te.get(i[s],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(a));return a(),o.promise(t)}});var ae=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ce=new RegExp("^(?:([+-])=|)("+ae+")([a-z%]*)$","i"),de=["Top","Right","Bottom","Left"],ue=w.documentElement,le=function(e){return x.contains(e.ownerDocument,e)},pe={composed:!0};ue.getRootNode&&(le=function(e){return x.contains(e.ownerDocument,e)||e.getRootNode(pe)===e.ownerDocument});var fe=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&le(e)&&"none"===x.css(e,"display")};function me(e,t,n,r){var o,i,s=20,a=r?function(){return r.cur()}:function(){return x.css(e,t,"")},c=a(),d=n&&n[3]||(x.cssNumber[t]?"":"px"),u=e.nodeType&&(x.cssNumber[t]||"px"!==d&&+c)&&ce.exec(x.css(e,t));if(u&&u[3]!==d){c/=2,d=d||u[3],u=+c||1;while(s--)x.style(e,t,u+d),(1-i)*(1-(i=a()/c||.5))<=0&&(s=0),u/=i;u*=2,x.style(e,t,u+d),n=n||[]}return n&&(u=+u||+c||0,o=n[1]?u+(n[1]+1)*n[2]:+n[2],r&&(r.unit=d,r.start=u,r.end=o)),o}var he={};function ge(e){var t,n=e.ownerDocument,r=e.nodeName,o=he[r];return o||(t=n.body.appendChild(n.createElement(r)),o=x.css(t,"display"),t.parentNode.removeChild(t),"none"===o&&(o="block"),he[r]=o,o)}function ve(e,t){for(var n,r,o=[],i=0,s=e.length;i<s;i++)r=e[i],r.style&&(n=r.style.display,t?("none"===n&&(o[i]=te.get(r,"display")||null,o[i]||(r.style.display="")),""===r.style.display&&fe(r)&&(o[i]=ge(r))):"none"!==n&&(o[i]="none",te.set(r,"display",n)));for(i=0;i<s;i++)null!=o[i]&&(e[i].style.display=o[i]);return e}x.fn.extend({show:function(){return ve(this,!0)},hide:function(){return ve(this)},toggle:function(e){return"boolean"===typeof e?e?this.show():this.hide():this.each((function(){fe(this)?x(this).show():x(this).hide()}))}});var ye=/^(?:checkbox|radio)$/i,be=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,we=/^$|^module$|\/(?:java|ecma)script/i;(function(){var e=w.createDocumentFragment(),t=e.appendChild(w.createElement("div")),n=w.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),v.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",v.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue,t.innerHTML="<option></option>",v.option=!!t.lastChild})();var Te={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,"",""]};function Se(e,t){var n;return n="undefined"!==typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!==typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&R(e,t)?x.merge([e],n):n}function Ce(e,t){for(var n=0,r=e.length;n<r;n++)te.set(e[n],"globalEval",!t||te.get(t[n],"globalEval"))}Te.tbody=Te.tfoot=Te.colgroup=Te.caption=Te.thead,Te.th=Te.td,v.option||(Te.optgroup=Te.option=[1,"<select multiple='multiple'>","</select>"]);var Pe=/<|&#?\w+;/;function xe(e,t,n,r,o){for(var i,s,a,c,d,u,l=t.createDocumentFragment(),p=[],f=0,m=e.length;f<m;f++)if(i=e[f],i||0===i)if("object"===C(i))x.merge(p,i.nodeType?[i]:i);else if(Pe.test(i)){s=s||l.appendChild(t.createElement("div")),a=(be.exec(i)||["",""])[1].toLowerCase(),c=Te[a]||Te._default,s.innerHTML=c[1]+x.htmlPrefilter(i)+c[2],u=c[0];while(u--)s=s.lastChild;x.merge(p,s.childNodes),s=l.firstChild,s.textContent=""}else p.push(t.createTextNode(i));l.textContent="",f=0;while(i=p[f++])if(r&&x.inArray(i,r)>-1)o&&o.push(i);else if(d=le(i),s=Se(l.appendChild(i),"script"),d&&Ce(s),n){u=0;while(i=s[u++])we.test(i.type||"")&&n.push(i)}return l}var ke=/^([^.]*)(?:\.(.+)|)/;function De(){return!0}function _e(){return!1}function Ae(e,t){return e===Ie()===("focus"===t)}function Ie(){try{return w.activeElement}catch(e){}}function Re(e,t,n,r,o,i){var s,a;if("object"===typeof t){for(a in"string"!==typeof n&&(r=r||n,n=void 0),t)Re(e,a,n,r,t[a],i);return e}if(null==r&&null==o?(o=n,r=n=void 0):null==o&&("string"===typeof n?(o=r,r=void 0):(o=r,r=n,n=void 0)),!1===o)o=_e;else if(!o)return e;return 1===i&&(s=o,o=function(e){return x().off(e),s.apply(this,arguments)},o.guid=s.guid||(s.guid=x.guid++)),e.each((function(){x.event.add(this,t,o,r,n)}))}function Ne(e,t,n){n?(te.set(e,t,!1),x.event.add(e,t,{namespace:!1,handler:function(e){var r,o,i=te.get(this,t);if(1&e.isTrigger&&this[t]){if(i.length)(x.event.special[t]||{}).delegateType&&e.stopPropagation();else if(i=c.call(arguments),te.set(this,t,i),r=n(this,t),this[t](),o=te.get(this,t),i!==o||r?te.set(this,t,!1):o={},i!==o)return e.stopImmediatePropagation(),e.preventDefault(),o&&o.value}else i.length&&(te.set(this,t,{value:x.event.trigger(x.extend(i[0],x.Event.prototype),i.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===te.get(e,t)&&x.event.add(e,t,De)}x.event={global:{},add:function(e,t,n,r,o){var i,s,a,c,d,u,l,p,f,m,h,g=te.get(e);if(Z(e)){n.handler&&(i=n,n=i.handler,o=i.selector),o&&x.find.matchesSelector(ue,o),n.guid||(n.guid=x.guid++),(c=g.events)||(c=g.events=Object.create(null)),(s=g.handle)||(s=g.handle=function(t){return"undefined"!==typeof x&&x.event.triggered!==t.type?x.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(B)||[""],d=t.length;while(d--)a=ke.exec(t[d])||[],f=h=a[1],m=(a[2]||"").split(".").sort(),f&&(l=x.event.special[f]||{},f=(o?l.delegateType:l.bindType)||f,l=x.event.special[f]||{},u=x.extend({type:f,origType:h,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&x.expr.match.needsContext.test(o),namespace:m.join(".")},i),(p=c[f])||(p=c[f]=[],p.delegateCount=0,l.setup&&!1!==l.setup.call(e,r,m,s)||e.addEventListener&&e.addEventListener(f,s)),l.add&&(l.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),o?p.splice(p.delegateCount++,0,u):p.push(u),x.event.global[f]=!0)}},remove:function(e,t,n,r,o){var i,s,a,c,d,u,l,p,f,m,h,g=te.hasData(e)&&te.get(e);if(g&&(c=g.events)){t=(t||"").match(B)||[""],d=t.length;while(d--)if(a=ke.exec(t[d])||[],f=h=a[1],m=(a[2]||"").split(".").sort(),f){l=x.event.special[f]||{},f=(r?l.delegateType:l.bindType)||f,p=c[f]||[],a=a[2]&&new RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=i=p.length;while(i--)u=p[i],!o&&h!==u.origType||n&&n.guid!==u.guid||a&&!a.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,l.remove&&l.remove.call(e,u));s&&!p.length&&(l.teardown&&!1!==l.teardown.call(e,m,g.handle)||x.removeEvent(e,f,g.handle),delete c[f])}else for(f in c)x.event.remove(e,f+t[d],n,r,!0);x.isEmptyObject(c)&&te.remove(e,"handle events")}},dispatch:function(e){var t,n,r,o,i,s,a=new Array(arguments.length),c=x.event.fix(e),d=(te.get(this,"events")||Object.create(null))[c.type]||[],u=x.event.special[c.type]||{};for(a[0]=c,t=1;t<arguments.length;t++)a[t]=arguments[t];if(c.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,c)){s=x.event.handlers.call(this,c,d),t=0;while((o=s[t++])&&!c.isPropagationStopped()){c.currentTarget=o.elem,n=0;while((i=o.handlers[n++])&&!c.isImmediatePropagationStopped())c.rnamespace&&!1!==i.namespace&&!c.rnamespace.test(i.namespace)||(c.handleObj=i,c.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,a),void 0!==r&&!1===(c.result=r)&&(c.preventDefault(),c.stopPropagation()))}return u.postDispatch&&u.postDispatch.call(this,c),c.result}},handlers:function(e,t){var n,r,o,i,s,a=[],c=t.delegateCount,d=e.target;if(c&&d.nodeType&&!("click"===e.type&&e.button>=1))for(;d!==this;d=d.parentNode||this)if(1===d.nodeType&&("click"!==e.type||!0!==d.disabled)){for(i=[],s={},n=0;n<c;n++)r=t[n],o=r.selector+" ",void 0===s[o]&&(s[o]=r.needsContext?x(o,this).index(d)>-1:x.find(o,this,null,[d]).length),s[o]&&i.push(r);i.length&&a.push({elem:d,handlers:i})}return d=this,c<t.length&&a.push({elem:d,handlers:t.slice(c)}),a},addProp:function(e,t){Object.defineProperty(x.Event.prototype,e,{enumerable:!0,configurable:!0,get:y(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[x.expando]?e:new x.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return ye.test(t.type)&&t.click&&R(t,"input")&&Ne(t,"click",De),!1},trigger:function(e){var t=this||e;return ye.test(t.type)&&t.click&&R(t,"input")&&Ne(t,"click"),!0},_default:function(e){var t=e.target;return ye.test(t.type)&&t.click&&R(t,"input")&&te.get(t,"click")||R(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},x.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},x.Event=function(e,t){if(!(this instanceof x.Event))return new x.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?De:_e,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&&x.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[x.expando]=!0},x.Event.prototype={constructor:x.Event,isDefaultPrevented:_e,isPropagationStopped:_e,isImmediatePropagationStopped:_e,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=De,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=De,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=De,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},x.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,code:!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:!0},x.event.addProp),x.each({focus:"focusin",blur:"focusout"},(function(e,t){x.event.special[e]={setup:function(){return Ne(this,e,Ae),!1},trigger:function(){return Ne(this,e),!0},_default:function(){return!0},delegateType:t}})),x.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},(function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,o=e.relatedTarget,i=e.handleObj;return o&&(o===r||x.contains(r,o))||(e.type=i.origType,n=i.handler.apply(this,arguments),e.type=t),n}}})),x.fn.extend({on:function(e,t,n,r){return Re(this,e,t,n,r)},one:function(e,t,n,r){return Re(this,e,t,n,r,1)},off:function(e,t,n){var r,o;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,x(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===typeof e){for(o in e)this.off(o,t,e[o]);return this}return!1!==t&&"function"!==typeof t||(n=t,t=void 0),!1===n&&(n=_e),this.each((function(){x.event.remove(this,e,n,t)}))}});var Oe=/<script|<style|<link/i,Ee=/checked\s*(?:[^=]|=\s*.checked.)/i,Me=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Le(e,t){return R(e,"table")&&R(11!==t.nodeType?t:t.firstChild,"tr")&&x(e).children("tbody")[0]||e}function je(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ve(e,t){var n,r,o,i,s,a,c;if(1===t.nodeType){if(te.hasData(e)&&(i=te.get(e),c=i.events,c))for(o in te.remove(t,"handle events"),c)for(n=0,r=c[o].length;n<r;n++)x.event.add(t,o,c[o][n]);ne.hasData(e)&&(s=ne.access(e),a=x.extend({},s),ne.set(t,a))}}function Be(e,t){var n=t.nodeName.toLowerCase();"input"===n&&ye.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}function Fe(e,t,n,r){t=d(t);var o,i,s,a,c,u,l=0,p=e.length,f=p-1,m=t[0],h=y(m);if(h||p>1&&"string"===typeof m&&!v.checkClone&&Ee.test(m))return e.each((function(o){var i=e.eq(o);h&&(t[0]=m.call(this,o,i.html())),Fe(i,t,n,r)}));if(p&&(o=xe(t,e[0].ownerDocument,!1,e,r),i=o.firstChild,1===o.childNodes.length&&(o=i),i||r)){for(s=x.map(Se(o,"script"),je),a=s.length;l<p;l++)c=o,l!==f&&(c=x.clone(c,!0,!0),a&&x.merge(s,Se(c,"script"))),n.call(e[l],c,l);if(a)for(u=s[s.length-1].ownerDocument,x.map(s,qe),l=0;l<a;l++)c=s[l],we.test(c.type||"")&&!te.access(c,"globalEval")&&x.contains(u,c)&&(c.src&&"module"!==(c.type||"").toLowerCase()?x._evalUrl&&!c.noModule&&x._evalUrl(c.src,{nonce:c.nonce||c.getAttribute("nonce")},u):S(c.textContent.replace(Me,""),c,u))}return e}function We(e,t,n){for(var r,o=t?x.filter(t,e):e,i=0;null!=(r=o[i]);i++)n||1!==r.nodeType||x.cleanData(Se(r)),r.parentNode&&(n&&le(r)&&Ce(Se(r,"script")),r.parentNode.removeChild(r));return e}x.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,o,i,s,a=e.cloneNode(!0),c=le(e);if(!v.noCloneChecked&&(1===e.nodeType||11===e.nodeType)&&!x.isXMLDoc(e))for(s=Se(a),i=Se(e),r=0,o=i.length;r<o;r++)Be(i[r],s[r]);if(t)if(n)for(i=i||Se(e),s=s||Se(a),r=0,o=i.length;r<o;r++)Ve(i[r],s[r]);else Ve(e,a);return s=Se(a,"script"),s.length>0&&Ce(s,!c&&Se(e,"script")),a},cleanData:function(e){for(var t,n,r,o=x.event.special,i=0;void 0!==(n=e[i]);i++)if(Z(n)){if(t=n[te.expando]){if(t.events)for(r in t.events)o[r]?x.event.remove(n,r):x.removeEvent(n,r,t.handle);n[te.expando]=void 0}n[ne.expando]&&(n[ne.expando]=void 0)}}}),x.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return $(this,(function(e){return void 0===e?x.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 Fe(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.appendChild(e)}}))},prepend:function(){return Fe(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Fe(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Fe(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&&(x.cleanData(Se(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return x.clone(this,e,t)}))},html:function(e){return $(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&&!Oe.test(e)&&!Te[(be.exec(e)||["",""])[1].toLowerCase()]){e=x.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(x.cleanData(Se(t,!1)),t.innerHTML=e);t=0}catch(o){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Fe(this,arguments,(function(t){var n=this.parentNode;x.inArray(this,e)<0&&(x.cleanData(Se(this)),n&&n.replaceChild(t,this))}),e)}}),x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},(function(e,t){x.fn[e]=function(e){for(var n,r=[],o=x(e),i=o.length-1,s=0;s<=i;s++)n=s===i?this:this.clone(!0),x(o[s])[t](n),u.apply(r,n.get());return this.pushStack(r)}}));var He=new RegExp("^("+ae+")(?!px)[a-z%]+$","i"),Ue=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=n),t.getComputedStyle(e)},ze=function(e,t,n){var r,o,i={};for(o in t)i[o]=e.style[o],e.style[o]=t[o];for(o in r=n.call(e),t)e.style[o]=i[o];return r},Ge=new RegExp(de.join("|"),"i");function Je(e,t,n){var r,o,i,s,a=e.style;return n=n||Ue(e),n&&(s=n.getPropertyValue(t)||n[t],""!==s||le(e)||(s=x.style(e,t)),!v.pixelBoxStyles()&&He.test(s)&&Ge.test(t)&&(r=a.width,o=a.minWidth,i=a.maxWidth,a.minWidth=a.maxWidth=a.width=s,s=n.width,a.width=r,a.minWidth=o,a.maxWidth=i)),void 0!==s?s+"":s}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}(function(){function e(){if(u){d.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ue.appendChild(d).appendChild(u);var e=n.getComputedStyle(u);r="1%"!==e.top,c=12===t(e.marginLeft),u.style.right="60%",s=36===t(e.right),o=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ue.removeChild(d),u=null}}function t(e){return Math.round(parseFloat(e))}var r,o,i,s,a,c,d=w.createElement("div"),u=w.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",v.clearCloneStyle="content-box"===u.style.backgroundClip,x.extend(v,{boxSizingReliable:function(){return e(),o},pixelBoxStyles:function(){return e(),s},pixelPosition:function(){return e(),r},reliableMarginLeft:function(){return e(),c},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,r,o;return null==a&&(e=w.createElement("table"),t=w.createElement("tr"),r=w.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",r.style.height="9px",r.style.display="block",ue.appendChild(e).appendChild(t).appendChild(r),o=n.getComputedStyle(t),a=parseInt(o.height,10)+parseInt(o.borderTopWidth,10)+parseInt(o.borderBottomWidth,10)===t.offsetHeight,ue.removeChild(e)),a}}))})();var Qe=["Webkit","Moz","ms"],Ke=w.createElement("div").style,Xe={};function Ye(e){var t=e[0].toUpperCase()+e.slice(1),n=Qe.length;while(n--)if(e=Qe[n]+t,e in Ke)return e}function Ze(e){var t=x.cssProps[e]||Xe[e];return t||(e in Ke?e:Xe[e]=Ye(e)||e)}var et=/^(none|table(?!-c[ea]).+)/,tt=/^--/,nt={position:"absolute",visibility:"hidden",display:"block"},rt={letterSpacing:"0",fontWeight:"400"};function ot(e,t,n){var r=ce.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function it(e,t,n,r,o,i){var s="width"===t?1:0,a=0,c=0;if(n===(r?"border":"content"))return 0;for(;s<4;s+=2)"margin"===n&&(c+=x.css(e,n+de[s],!0,o)),r?("content"===n&&(c-=x.css(e,"padding"+de[s],!0,o)),"margin"!==n&&(c-=x.css(e,"border"+de[s]+"Width",!0,o))):(c+=x.css(e,"padding"+de[s],!0,o),"padding"!==n?c+=x.css(e,"border"+de[s]+"Width",!0,o):a+=x.css(e,"border"+de[s]+"Width",!0,o));return!r&&i>=0&&(c+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-i-c-a-.5))||0),c}function st(e,t,n){var r=Ue(e),o=!v.boxSizingReliable()||n,i=o&&"border-box"===x.css(e,"boxSizing",!1,r),s=i,a=Je(e,t,r),c="offset"+t[0].toUpperCase()+t.slice(1);if(He.test(a)){if(!n)return a;a="auto"}return(!v.boxSizingReliable()&&i||!v.reliableTrDimensions()&&R(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===x.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===x.css(e,"boxSizing",!1,r),s=c in e,s&&(a=e[c])),a=parseFloat(a)||0,a+it(e,t,n||(i?"border":"content"),s,r,a)+"px"}function at(e,t,n,r,o){return new at.prototype.init(e,t,n,r,o)}x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Je(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,i,s,a=Y(t),c=tt.test(t),d=e.style;if(c||(t=Ze(a)),s=x.cssHooks[t]||x.cssHooks[a],void 0===n)return s&&"get"in s&&void 0!==(o=s.get(e,!1,r))?o:d[t];i=typeof n,"string"===i&&(o=ce.exec(n))&&o[1]&&(n=me(e,t,o),i="number"),null!=n&&n===n&&("number"!==i||c||(n+=o&&o[3]||(x.cssNumber[a]?"":"px")),v.clearCloneStyle||""!==n||0!==t.indexOf("background")||(d[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(c?d.setProperty(t,n):d[t]=n))}},css:function(e,t,n,r){var o,i,s,a=Y(t),c=tt.test(t);return c||(t=Ze(a)),s=x.cssHooks[t]||x.cssHooks[a],s&&"get"in s&&(o=s.get(e,!0,n)),void 0===o&&(o=Je(e,t,r)),"normal"===o&&t in rt&&(o=rt[t]),""===n||n?(i=parseFloat(o),!0===n||isFinite(i)?i||0:o):o}}),x.each(["height","width"],(function(e,t){x.cssHooks[t]={get:function(e,n,r){if(n)return!et.test(x.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?st(e,t,r):ze(e,nt,(function(){return st(e,t,r)}))},set:function(e,n,r){var o,i=Ue(e),s=!v.scrollboxSize()&&"absolute"===i.position,a=s||r,c=a&&"border-box"===x.css(e,"boxSizing",!1,i),d=r?it(e,t,r,c,i):0;return c&&s&&(d-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(i[t])-it(e,t,"border",!1,i)-.5)),d&&(o=ce.exec(n))&&"px"!==(o[3]||"px")&&(e.style[t]=n,n=x.css(e,t)),ot(e,n,d)}}})),x.cssHooks.marginLeft=$e(v.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Je(e,"marginLeft"))||e.getBoundingClientRect().left-ze(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),x.each({margin:"",padding:"",border:"Width"},(function(e,t){x.cssHooks[e+t]={expand:function(n){for(var r=0,o={},i="string"===typeof n?n.split(" "):[n];r<4;r++)o[e+de[r]+t]=i[r]||i[r-2]||i[0];return o}},"margin"!==e&&(x.cssHooks[e+t].set=ot)})),x.fn.extend({css:function(e,t){return $(this,(function(e,t,n){var r,o,i={},s=0;if(Array.isArray(t)){for(r=Ue(e),o=t.length;s<o;s++)i[t[s]]=x.css(e,t[s],!1,r);return i}return void 0!==n?x.style(e,t,n):x.css(e,t)}),e,t,arguments.length>1)}}),x.Tween=at,at.prototype={constructor:at,init:function(e,t,n,r,o,i){this.elem=e,this.prop=n,this.easing=o||x.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(x.cssNumber[n]?"":"px")},cur:function(){var e=at.propHooks[this.prop];return e&&e.get?e.get(this):at.propHooks._default.get(this)},run:function(e){var t,n=at.propHooks[this.prop];return this.options.duration?this.pos=t=x.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):at.propHooks._default.set(this),this}},at.prototype.init.prototype=at.prototype,at.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=x.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){x.fx.step[e.prop]?x.fx.step[e.prop](e):1!==e.elem.nodeType||!x.cssHooks[e.prop]&&null==e.elem.style[Ze(e.prop)]?e.elem[e.prop]=e.now:x.style(e.elem,e.prop,e.now+e.unit)}}},at.propHooks.scrollTop=at.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},x.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},x.fx=at.prototype.init,x.fx.step={};var ct,dt,ut=/^(?:toggle|show|hide)$/,lt=/queueHooks$/;function pt(){dt&&(!1===w.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(pt):n.setTimeout(pt,x.fx.interval),x.fx.tick())}function ft(){return n.setTimeout((function(){ct=void 0})),ct=Date.now()}function mt(e,t){var n,r=0,o={height:e};for(t=t?1:0;r<4;r+=2-t)n=de[r],o["margin"+n]=o["padding"+n]=e;return t&&(o.opacity=o.width=e),o}function ht(e,t,n){for(var r,o=(yt.tweeners[t]||[]).concat(yt.tweeners["*"]),i=0,s=o.length;i<s;i++)if(r=o[i].call(n,t,e))return r}function gt(e,t,n){var r,o,i,s,a,c,d,u,l="width"in t||"height"in t,p=this,f={},m=e.style,h=e.nodeType&&fe(e),g=te.get(e,"fxshow");for(r in n.queue||(s=x._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,a=s.empty.fire,s.empty.fire=function(){s.unqueued||a()}),s.unqueued++,p.always((function(){p.always((function(){s.unqueued--,x.queue(e,"fx").length||s.empty.fire()}))}))),t)if(o=t[r],ut.test(o)){if(delete t[r],i=i||"toggle"===o,o===(h?"hide":"show")){if("show"!==o||!g||void 0===g[r])continue;h=!0}f[r]=g&&g[r]||x.style(e,r)}if(c=!x.isEmptyObject(t),c||!x.isEmptyObject(f))for(r in l&&1===e.nodeType&&(n.overflow=[m.overflow,m.overflowX,m.overflowY],d=g&&g.display,null==d&&(d=te.get(e,"display")),u=x.css(e,"display"),"none"===u&&(d?u=d:(ve([e],!0),d=e.style.display||d,u=x.css(e,"display"),ve([e]))),("inline"===u||"inline-block"===u&&null!=d)&&"none"===x.css(e,"float")&&(c||(p.done((function(){m.display=d})),null==d&&(u=m.display,d="none"===u?"":u)),m.display="inline-block")),n.overflow&&(m.overflow="hidden",p.always((function(){m.overflow=n.overflow[0],m.overflowX=n.overflow[1],m.overflowY=n.overflow[2]}))),c=!1,f)c||(g?"hidden"in g&&(h=g.hidden):g=te.access(e,"fxshow",{display:d}),i&&(g.hidden=!h),h&&ve([e],!0),p.done((function(){for(r in h||ve([e]),te.remove(e,"fxshow"),f)x.style(e,r,f[r])}))),c=ht(h?g[r]:0,r,p),r in g||(g[r]=c.start,h&&(c.end=c.start,c.start=0))}function vt(e,t){var n,r,o,i,s;for(n in e)if(r=Y(n),o=t[r],i=e[n],Array.isArray(i)&&(o=i[1],i=e[n]=i[0]),n!==r&&(e[r]=i,delete e[n]),s=x.cssHooks[r],s&&"expand"in s)for(n in i=s.expand(i),delete e[r],i)n in e||(e[n]=i[n],t[n]=o);else t[r]=o}function yt(e,t,n){var r,o,i=0,s=yt.prefilters.length,a=x.Deferred().always((function(){delete c.elem})),c=function(){if(o)return!1;for(var t=ct||ft(),n=Math.max(0,d.startTime+d.duration-t),r=n/d.duration||0,i=1-r,s=0,c=d.tweens.length;s<c;s++)d.tweens[s].run(i);return a.notifyWith(e,[d,i,n]),i<1&&c?n:(c||a.notifyWith(e,[d,1,0]),a.resolveWith(e,[d]),!1)},d=a.promise({elem:e,props:x.extend({},t),opts:x.extend(!0,{specialEasing:{},easing:x.easing._default},n),originalProperties:t,originalOptions:n,startTime:ct||ft(),duration:n.duration,tweens:[],createTween:function(t,n){var r=x.Tween(e,d.opts,t,n,d.opts.specialEasing[t]||d.opts.easing);return d.tweens.push(r),r},stop:function(t){var n=0,r=t?d.tweens.length:0;if(o)return this;for(o=!0;n<r;n++)d.tweens[n].run(1);return t?(a.notifyWith(e,[d,1,0]),a.resolveWith(e,[d,t])):a.rejectWith(e,[d,t]),this}}),u=d.props;for(vt(u,d.opts.specialEasing);i<s;i++)if(r=yt.prefilters[i].call(d,e,u,d.opts),r)return y(r.stop)&&(x._queueHooks(d.elem,d.opts.queue).stop=r.stop.bind(r)),r;return x.map(u,ht,d),y(d.opts.start)&&d.opts.start.call(e,d),d.progress(d.opts.progress).done(d.opts.done,d.opts.complete).fail(d.opts.fail).always(d.opts.always),x.fx.timer(x.extend(c,{elem:e,anim:d,queue:d.opts.queue})),d}x.Animation=x.extend(yt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return me(n.elem,e,ce.exec(t),n),n}]},tweener:function(e,t){y(e)?(t=e,e=["*"]):e=e.match(B);for(var n,r=0,o=e.length;r<o;r++)n=e[r],yt.tweeners[n]=yt.tweeners[n]||[],yt.tweeners[n].unshift(t)},prefilters:[gt],prefilter:function(e,t){t?yt.prefilters.unshift(e):yt.prefilters.push(e)}}),x.speed=function(e,t,n){var r=e&&"object"===typeof e?x.extend({},e):{complete:n||!n&&t||y(e)&&e,duration:e,easing:n&&t||t&&!y(t)&&t};return x.fx.off?r.duration=0:"number"!==typeof r.duration&&(r.duration in x.fx.speeds?r.duration=x.fx.speeds[r.duration]:r.duration=x.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){y(r.old)&&r.old.call(this),r.queue&&x.dequeue(this,r.queue)},r},x.fn.extend({fadeTo:function(e,t,n,r){return this.filter(fe).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var o=x.isEmptyObject(e),i=x.speed(t,n,r),s=function(){var t=yt(this,x.extend({},e),i);(o||te.get(this,"finish"))&&t.stop(!0)};return s.finish=s,o||!1===i.queue?this.each(s):this.queue(i.queue,s)},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&&this.queue(e||"fx",[]),this.each((function(){var t=!0,o=null!=e&&e+"queueHooks",i=x.timers,s=te.get(this);if(o)s[o]&&s[o].stop&&r(s[o]);else for(o in s)s[o]&&s[o].stop&&lt.test(o)&&r(s[o]);for(o=i.length;o--;)i[o].elem!==this||null!=e&&i[o].queue!==e||(i[o].anim.stop(n),t=!1,i.splice(o,1));!t&&n||x.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||"fx"),this.each((function(){var t,n=te.get(this),r=n[e+"queue"],o=n[e+"queueHooks"],i=x.timers,s=r?r.length:0;for(n.finish=!0,x.queue(this,e,[]),o&&o.stop&&o.stop.call(this,!0),t=i.length;t--;)i[t].elem===this&&i[t].queue===e&&(i[t].anim.stop(!0),i.splice(t,1));for(t=0;t<s;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),x.each(["toggle","show","hide"],(function(e,t){var n=x.fn[t];x.fn[t]=function(e,r,o){return null==e||"boolean"===typeof e?n.apply(this,arguments):this.animate(mt(t,!0),e,r,o)}})),x.each({slideDown:mt("show"),slideUp:mt("hide"),slideToggle:mt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},(function(e,t){x.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),x.timers=[],x.fx.tick=function(){var e,t=0,n=x.timers;for(ct=Date.now();t<n.length;t++)e=n[t],e()||n[t]!==e||n.splice(t--,1);n.length||x.fx.stop(),ct=void 0},x.fx.timer=function(e){x.timers.push(e),x.fx.start()},x.fx.interval=13,x.fx.start=function(){dt||(dt=!0,pt())},x.fx.stop=function(){dt=null},x.fx.speeds={slow:600,fast:200,_default:400},x.fn.delay=function(e,t){return e=x.fx&&x.fx.speeds[e]||e,t=t||"fx",this.queue(t,(function(t,r){var o=n.setTimeout(t,e);r.stop=function(){n.clearTimeout(o)}}))},function(){var e=w.createElement("input"),t=w.createElement("select"),n=t.appendChild(w.createElement("option"));e.type="checkbox",v.checkOn=""!==e.value,v.optSelected=n.selected,e=w.createElement("input"),e.value="t",e.type="radio",v.radioValue="t"===e.value}();var bt,wt=x.expr.attrHandle;x.fn.extend({attr:function(e,t){return $(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){x.removeAttr(this,e)}))}}),x.extend({attr:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return"undefined"===typeof e.getAttribute?x.prop(e,t,n):(1===i&&x.isXMLDoc(e)||(o=x.attrHooks[t.toLowerCase()]||(x.expr.match.bool.test(t)?bt:void 0)),void 0!==n?null===n?void x.removeAttr(e,t):o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:(e.setAttribute(t,n+""),n):o&&"get"in o&&null!==(r=o.get(e,t))?r:(r=x.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!v.radioValue&&"radio"===t&&R(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,o=t&&t.match(B);if(o&&1===e.nodeType)while(n=o[r++])e.removeAttribute(n)}}),bt={set:function(e,t,n){return!1===t?x.removeAttr(e,n):e.setAttribute(n,n),n}},x.each(x.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=wt[t]||x.find.attr;wt[t]=function(e,t,r){var o,i,s=t.toLowerCase();return r||(i=wt[s],wt[s]=o,o=null!=n(e,t,r)?s:null,wt[s]=i),o}}));var Tt=/^(?:input|select|textarea|button)$/i,St=/^(?:a|area)$/i;function Ct(e){var t=e.match(B)||[];return t.join(" ")}function Pt(e){return e.getAttribute&&e.getAttribute("class")||""}function xt(e){return Array.isArray(e)?e:"string"===typeof e&&e.match(B)||[]}x.fn.extend({prop:function(e,t){return $(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[x.propFix[e]||e]}))}}),x.extend({prop:function(e,t,n){var r,o,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&x.isXMLDoc(e)||(t=x.propFix[t]||t,o=x.propHooks[t]),void 0!==n?o&&"set"in o&&void 0!==(r=o.set(e,n,t))?r:e[t]=n:o&&"get"in o&&null!==(r=o.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Tt.test(e.nodeName)||St.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),v.optSelected||(x.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)}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){x.propFix[this.toLowerCase()]=this})),x.fn.extend({addClass:function(e){var t,n,r,o,i,s,a,c=0;if(y(e))return this.each((function(t){x(this).addClass(e.call(this,t,Pt(this)))}));if(t=xt(e),t.length)while(n=this[c++])if(o=Pt(n),r=1===n.nodeType&&" "+Ct(o)+" ",r){s=0;while(i=t[s++])r.indexOf(" "+i+" ")<0&&(r+=i+" ");a=Ct(r),o!==a&&n.setAttribute("class",a)}return this},removeClass:function(e){var t,n,r,o,i,s,a,c=0;if(y(e))return this.each((function(t){x(this).removeClass(e.call(this,t,Pt(this)))}));if(!arguments.length)return this.attr("class","");if(t=xt(e),t.length)while(n=this[c++])if(o=Pt(n),r=1===n.nodeType&&" "+Ct(o)+" ",r){s=0;while(i=t[s++])while(r.indexOf(" "+i+" ")>-1)r=r.replace(" "+i+" "," ");a=Ct(r),o!==a&&n.setAttribute("class",a)}return this},toggleClass:function(e,t){var n=typeof e,r="string"===n||Array.isArray(e);return"boolean"===typeof t&&r?t?this.addClass(e):this.removeClass(e):y(e)?this.each((function(n){x(this).toggleClass(e.call(this,n,Pt(this),t),t)})):this.each((function(){var t,o,i,s;if(r){o=0,i=x(this),s=xt(e);while(t=s[o++])i.hasClass(t)?i.removeClass(t):i.addClass(t)}else void 0!==e&&"boolean"!==n||(t=Pt(this),t&&te.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":te.get(this,"__className__")||""))}))},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&(" "+Ct(Pt(n))+" ").indexOf(t)>-1)return!0;return!1}});var kt=/\r/g;x.fn.extend({val:function(e){var t,n,r,o=this[0];return arguments.length?(r=y(e),this.each((function(n){var o;1===this.nodeType&&(o=r?e.call(this,n,x(this).val()):e,null==o?o="":"number"===typeof o?o+="":Array.isArray(o)&&(o=x.map(o,(function(e){return null==e?"":e+""}))),t=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))}))):o?(t=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:(n=o.value,"string"===typeof n?n.replace(kt,""):null==n?"":n)):void 0}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:Ct(x.text(e))}},select:{get:function(e){var t,n,r,o=e.options,i=e.selectedIndex,s="select-one"===e.type,a=s?null:[],c=s?i+1:o.length;for(r=i<0?c:s?i:0;r<c;r++)if(n=o[r],(n.selected||r===i)&&!n.disabled&&(!n.parentNode.disabled||!R(n.parentNode,"optgroup"))){if(t=x(n).val(),s)return t;a.push(t)}return a},set:function(e,t){var n,r,o=e.options,i=x.makeArray(t),s=o.length;while(s--)r=o[s],(r.selected=x.inArray(x.valHooks.option.get(r),i)>-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),x.each(["radio","checkbox"],(function(){x.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=x.inArray(x(e).val(),t)>-1}},v.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})})),v.focusin="onfocusin"in n;var Dt=/^(?:focusinfocus|focusoutblur)$/,_t=function(e){e.stopPropagation()};x.extend(x.event,{trigger:function(e,t,r,o){var i,s,a,c,d,u,l,p,f=[r||w],h=m.call(e,"type")?e.type:e,g=m.call(e,"namespace")?e.namespace.split("."):[];if(s=p=a=r=r||w,3!==r.nodeType&&8!==r.nodeType&&!Dt.test(h+x.event.triggered)&&(h.indexOf(".")>-1&&(g=h.split("."),h=g.shift(),g.sort()),d=h.indexOf(":")<0&&"on"+h,e=e[x.expando]?e:new x.Event(h,"object"===typeof e&&e),e.isTrigger=o?2:3,e.namespace=g.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:x.makeArray(t,[e]),l=x.event.special[h]||{},o||!l.trigger||!1!==l.trigger.apply(r,t))){if(!o&&!l.noBubble&&!b(r)){for(c=l.delegateType||h,Dt.test(c+h)||(s=s.parentNode);s;s=s.parentNode)f.push(s),a=s;a===(r.ownerDocument||w)&&f.push(a.defaultView||a.parentWindow||n)}i=0;while((s=f[i++])&&!e.isPropagationStopped())p=s,e.type=i>1?c:l.bindType||h,u=(te.get(s,"events")||Object.create(null))[e.type]&&te.get(s,"handle"),u&&u.apply(s,t),u=d&&s[d],u&&u.apply&&Z(s)&&(e.result=u.apply(s,t),!1===e.result&&e.preventDefault());return e.type=h,o||e.isDefaultPrevented()||l._default&&!1!==l._default.apply(f.pop(),t)||!Z(r)||d&&y(r[h])&&!b(r)&&(a=r[d],a&&(r[d]=null),x.event.triggered=h,e.isPropagationStopped()&&p.addEventListener(h,_t),r[h](),e.isPropagationStopped()&&p.removeEventListener(h,_t),x.event.triggered=void 0,a&&(r[d]=a)),e.result}},simulate:function(e,t,n){var r=x.extend(new x.Event,n,{type:e,isSimulated:!0});x.event.trigger(r,null,t)}}),x.fn.extend({trigger:function(e,t){return this.each((function(){x.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return x.event.trigger(e,t,n,!0)}}),v.focusin||x.each({focus:"focusin",blur:"focusout"},(function(e,t){var n=function(e){x.event.simulate(t,e.target,x.event.fix(e))};x.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,o=te.access(r,t);o||r.addEventListener(e,n,!0),te.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,o=te.access(r,t)-1;o?te.access(r,t,o):(r.removeEventListener(e,n,!0),te.remove(r,t))}}}));var At=n.location,It={guid:Date.now()},Rt=/\?/;x.parseXML=function(e){var t,r;if(!e||"string"!==typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(o){}return r=t&&t.getElementsByTagName("parsererror")[0],t&&!r||x.error("Invalid XML: "+(r?x.map(r.childNodes,(function(e){return e.textContent})).join("\n"):e)),t};var Nt=/\[\]$/,Ot=/\r?\n/g,Et=/^(?:submit|button|image|reset|file)$/i,Mt=/^(?:input|select|textarea|keygen)/i;function Lt(e,t,n,r){var o;if(Array.isArray(t))x.each(t,(function(t,o){n||Nt.test(e)?r(e,o):Lt(e+"["+("object"===typeof o&&null!=o?t:"")+"]",o,n,r)}));else if(n||"object"!==C(t))r(e,t);else for(o in t)Lt(e+"["+o+"]",t[o],n,r)}x.param=function(e,t){var n,r=[],o=function(e,t){var n=y(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!x.isPlainObject(e))x.each(e,(function(){o(this.name,this.value)}));else for(n in e)Lt(n,e[n],t,o);return r.join("&")},x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=x.prop(this,"elements");return e?x.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!x(this).is(":disabled")&&Mt.test(this.nodeName)&&!Et.test(e)&&(this.checked||!ye.test(e))})).map((function(e,t){var n=x(this).val();return null==n?null:Array.isArray(n)?x.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 jt=/%20/g,qt=/#.*$/,Vt=/([?&])_=[^&]*/,Bt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Wt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ut={},zt={},Gt="*/".concat("*"),Jt=w.createElement("a");function $t(e){return function(t,n){"string"!==typeof t&&(n=t,t="*");var r,o=0,i=t.toLowerCase().match(B)||[];if(y(n))while(r=i[o++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Qt(e,t,n,r){var o={},i=e===zt;function s(a){var c;return o[a]=!0,x.each(e[a]||[],(function(e,a){var d=a(t,n,r);return"string"!==typeof d||i||o[d]?i?!(c=d):void 0:(t.dataTypes.unshift(d),s(d),!1)})),c}return s(t.dataTypes[0])||!o["*"]&&s("*")}function Kt(e,t){var n,r,o=x.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((o[n]?e:r||(r={}))[n]=t[n]);return r&&x.extend(!0,e,r),e}function Xt(e,t,n){var r,o,i,s,a=e.contents,c=e.dataTypes;while("*"===c[0])c.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(o in a)if(a[o]&&a[o].test(r)){c.unshift(o);break}if(c[0]in n)i=c[0];else{for(o in n){if(!c[0]||e.converters[o+" "+c[0]]){i=o;break}s||(s=o)}i=i||s}if(i)return i!==c[0]&&c.unshift(i),n[i]}function Yt(e,t,n,r){var o,i,s,a,c,d={},u=e.dataTypes.slice();if(u[1])for(s in e.converters)d[s.toLowerCase()]=e.converters[s];i=u.shift();while(i)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!c&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),c=i,i=u.shift(),i)if("*"===i)i=c;else if("*"!==c&&c!==i){if(s=d[c+" "+i]||d["* "+i],!s)for(o in d)if(a=o.split(" "),a[1]===i&&(s=d[c+" "+a[0]]||d["* "+a[0]],s)){!0===s?s=d[o]:!0!==d[o]&&(i=a[0],u.unshift(a[1]));break}if(!0!==s)if(s&&e.throws)t=s(t);else try{t=s(t)}catch(l){return{state:"parsererror",error:s?l:"No conversion from "+c+" to "+i}}}return{state:"success",data:t}}Jt.href=At.href,x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:At.href,type:"GET",isLocal:Ft.test(At.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Gt,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":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Kt(Kt(e,x.ajaxSettings),t):Kt(x.ajaxSettings,e)},ajaxPrefilter:$t(Ut),ajaxTransport:$t(zt),ajax:function(e,t){"object"===typeof e&&(t=e,e=void 0),t=t||{};var r,o,i,s,a,c,d,u,l,p,f=x.ajaxSetup({},t),m=f.context||f,h=f.context&&(m.nodeType||m.jquery)?x(m):x.event,g=x.Deferred(),v=x.Callbacks("once memory"),y=f.statusCode||{},b={},T={},S="canceled",C={readyState:0,getResponseHeader:function(e){var t;if(d){if(!s){s={};while(t=Bt.exec(i))s[t[1].toLowerCase()+" "]=(s[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=s[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return d?i:null},setRequestHeader:function(e,t){return null==d&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==d&&(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(d)C.always(e[C.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||S;return r&&r.abort(t),P(0,t),this}};if(g.promise(C),f.url=((e||f.url||At.href)+"").replace(Ht,At.protocol+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(B)||[""],null==f.crossDomain){c=w.createElement("a");try{c.href=f.url,c.href=c.href,f.crossDomain=Jt.protocol+"//"+Jt.host!==c.protocol+"//"+c.host}catch(k){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!==typeof f.data&&(f.data=x.param(f.data,f.traditional)),Qt(Ut,f,t,C),d)return C;for(l in u=x.event&&f.global,u&&0===x.active++&&x.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Wt.test(f.type),o=f.url.replace(qt,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(jt,"+")):(p=f.url.slice(o.length),f.data&&(f.processData||"string"===typeof f.data)&&(o+=(Rt.test(o)?"&":"?")+f.data,delete f.data),!1===f.cache&&(o=o.replace(Vt,"$1"),p=(Rt.test(o)?"&":"?")+"_="+It.guid+++p),f.url=o+p),f.ifModified&&(x.lastModified[o]&&C.setRequestHeader("If-Modified-Since",x.lastModified[o]),x.etag[o]&&C.setRequestHeader("If-None-Match",x.etag[o])),(f.data&&f.hasContent&&!1!==f.contentType||t.contentType)&&C.setRequestHeader("Content-Type",f.contentType),C.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+Gt+"; q=0.01":""):f.accepts["*"]),f.headers)C.setRequestHeader(l,f.headers[l]);if(f.beforeSend&&(!1===f.beforeSend.call(m,C,f)||d))return C.abort();if(S="abort",v.add(f.complete),C.done(f.success),C.fail(f.error),r=Qt(zt,f,t,C),r){if(C.readyState=1,u&&h.trigger("ajaxSend",[C,f]),d)return C;f.async&&f.timeout>0&&(a=n.setTimeout((function(){C.abort("timeout")}),f.timeout));try{d=!1,r.send(b,P)}catch(k){if(d)throw k;P(-1,k)}}else P(-1,"No Transport");function P(e,t,s,c){var l,p,b,w,T,S=t;d||(d=!0,a&&n.clearTimeout(a),r=void 0,i=c||"",C.readyState=e>0?4:0,l=e>=200&&e<300||304===e,s&&(w=Xt(f,C,s)),!l&&x.inArray("script",f.dataTypes)>-1&&x.inArray("json",f.dataTypes)<0&&(f.converters["text script"]=function(){}),w=Yt(f,w,C,l),l?(f.ifModified&&(T=C.getResponseHeader("Last-Modified"),T&&(x.lastModified[o]=T),T=C.getResponseHeader("etag"),T&&(x.etag[o]=T)),204===e||"HEAD"===f.type?S="nocontent":304===e?S="notmodified":(S=w.state,p=w.data,b=w.error,l=!b)):(b=S,!e&&S||(S="error",e<0&&(e=0))),C.status=e,C.statusText=(t||S)+"",l?g.resolveWith(m,[p,S,C]):g.rejectWith(m,[C,S,b]),C.statusCode(y),y=void 0,u&&h.trigger(l?"ajaxSuccess":"ajaxError",[C,f,l?p:b]),v.fireWith(m,[C,S]),u&&(h.trigger("ajaxComplete",[C,f]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(e,t,n){return x.get(e,t,n,"json")},getScript:function(e,t){return x.get(e,void 0,t,"script")}}),x.each(["get","post"],(function(e,t){x[t]=function(e,n,r,o){return y(n)&&(o=o||r,r=n,n=void 0),x.ajax(x.extend({url:e,type:t,dataType:o,data:n,success:r},x.isPlainObject(e)&&e))}})),x.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),x._evalUrl=function(e,t,n){return x.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){x.globalEval(e,t,n)}})},x.fn.extend({wrapAll:function(e){var t;return this[0]&&(y(e)&&(e=e.call(this[0])),t=x(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return y(e)?this.each((function(t){x(this).wrapInner(e.call(this,t))})):this.each((function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=y(e);return this.each((function(n){x(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){x(this).replaceWith(this.childNodes)})),this}}),x.expr.pseudos.hidden=function(e){return!x.expr.pseudos.visible(e)},x.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},x.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Zt={0:200,1223:204},en=x.ajaxSettings.xhr();v.cors=!!en&&"withCredentials"in en,v.ajax=en=!!en,x.ajaxTransport((function(e){var t,r;if(v.cors||en&&!e.crossDomain)return{send:function(o,i){var s,a=e.xhr();if(a.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(s in e.xhrFields)a[s]=e.xhrFields[s];for(s in e.mimeType&&a.overrideMimeType&&a.overrideMimeType(e.mimeType),e.crossDomain||o["X-Requested-With"]||(o["X-Requested-With"]="XMLHttpRequest"),o)a.setRequestHeader(s,o[s]);t=function(e){return function(){t&&(t=r=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,"abort"===e?a.abort():"error"===e?"number"!==typeof a.status?i(0,"error"):i(a.status,a.statusText):i(Zt[a.status]||a.status,a.statusText,"text"!==(a.responseType||"text")||"string"!==typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=t(),r=a.onerror=a.ontimeout=t("error"),void 0!==a.onabort?a.onabort=r:a.onreadystatechange=function(){4===a.readyState&&n.setTimeout((function(){t&&r()}))},t=t("abort");try{a.send(e.hasContent&&e.data||null)}catch(c){if(t)throw c}},abort:function(){t&&t()}}})),x.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),x.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 x.globalEval(e),e}}}),x.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),x.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,o){t=x("<script>").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&o("error"===e.type?404:200,e.type)}),w.head.appendChild(t[0])},abort:function(){n&&n()}}}));var tn=[],nn=/(=)\?(?=&|$)|\?\?/;x.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=tn.pop()||x.expando+"_"+It.guid++;return this[e]=!0,e}}),x.ajaxPrefilter("json jsonp",(function(e,t,r){var o,i,s,a=!1!==e.jsonp&&(nn.test(e.url)?"url":"string"===typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&nn.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return o=e.jsonpCallback=y(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(nn,"$1"+o):!1!==e.jsonp&&(e.url+=(Rt.test(e.url)?"&":"?")+e.jsonp+"="+o),e.converters["script json"]=function(){return s||x.error(o+" was not called"),s[0]},e.dataTypes[0]="json",i=n[o],n[o]=function(){s=arguments},r.always((function(){void 0===i?x(n).removeProp(o):n[o]=i,e[o]&&(e.jsonpCallback=t.jsonpCallback,tn.push(o)),s&&y(i)&&i(s[0]),s=i=void 0})),"script"})),v.createHTMLDocument=function(){var e=w.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),x.parseHTML=function(e,t,n){return"string"!==typeof e?[]:("boolean"===typeof t&&(n=t,t=!1),t||(v.createHTMLDocument?(t=w.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=w.location.href,t.head.appendChild(r)):t=w),o=N.exec(e),i=!n&&[],o?[t.createElement(o[1])]:(o=xe([e],t,i),i&&i.length&&x(i).remove(),x.merge([],o.childNodes)));var r,o,i},x.fn.load=function(e,t,n){var r,o,i,s=this,a=e.indexOf(" ");return a>-1&&(r=Ct(e.slice(a)),e=e.slice(0,a)),y(t)?(n=t,t=void 0):t&&"object"===typeof t&&(o="POST"),s.length>0&&x.ajax({url:e,type:o||"GET",dataType:"html",data:t}).done((function(e){i=arguments,s.html(r?x("<div>").append(x.parseHTML(e)).find(r):e)})).always(n&&function(e,t){s.each((function(){n.apply(this,i||[e.responseText,t,e])}))}),this},x.expr.pseudos.animated=function(e){return x.grep(x.timers,(function(t){return e===t.elem})).length},x.offset={setOffset:function(e,t,n){var r,o,i,s,a,c,d,u=x.css(e,"position"),l=x(e),p={};"static"===u&&(e.style.position="relative"),a=l.offset(),i=x.css(e,"top"),c=x.css(e,"left"),d=("absolute"===u||"fixed"===u)&&(i+c).indexOf("auto")>-1,d?(r=l.position(),s=r.top,o=r.left):(s=parseFloat(i)||0,o=parseFloat(c)||0),y(t)&&(t=t.call(e,n,x.extend({},a))),null!=t.top&&(p.top=t.top-a.top+s),null!=t.left&&(p.left=t.left-a.left+o),"using"in t?t.using.call(e,p):l.css(p)}},x.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){x.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],o={top:0,left:0};if("fixed"===x.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===x.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&(o=x(e).offset(),o.top+=x.css(e,"borderTopWidth",!0),o.left+=x.css(e,"borderLeftWidth",!0))}return{top:t.top-o.top-x.css(r,"marginTop",!0),left:t.left-o.left-x.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map((function(){var e=this.offsetParent;while(e&&"static"===x.css(e,"position"))e=e.offsetParent;return e||ue}))}}),x.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},(function(e,t){var n="pageYOffset"===t;x.fn[e]=function(r){return $(this,(function(e,r,o){var i;if(b(e)?i=e:9===e.nodeType&&(i=e.defaultView),void 0===o)return i?i[t]:e[r];i?i.scrollTo(n?i.pageXOffset:o,n?o:i.pageYOffset):e[r]=o}),e,r,arguments.length)}})),x.each(["top","left"],(function(e,t){x.cssHooks[t]=$e(v.pixelPosition,(function(e,n){if(n)return n=Je(e,t),He.test(n)?x(e).position()[t]+"px":n}))})),x.each({Height:"height",Width:"width"},(function(e,t){x.each({padding:"inner"+e,content:t,"":"outer"+e},(function(n,r){x.fn[r]=function(o,i){var s=arguments.length&&(n||"boolean"!==typeof o),a=n||(!0===o||!0===i?"margin":"border");return $(this,(function(t,n,o){var i;return b(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):void 0===o?x.css(t,n,a):x.style(t,n,o,a)}),t,s?o:void 0,s)}}))})),x.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],(function(e,t){x.fn[t]=function(e){return this.on(t,e)}})),x.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)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),x.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){x.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var rn=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;x.proxy=function(e,t){var n,r,o;if("string"===typeof t&&(n=e[t],t=e,e=n),y(e))return r=c.call(arguments,2),o=function(){return e.apply(t||this,r.concat(c.call(arguments)))},o.guid=e.guid=e.guid||x.guid++,o},x.holdReady=function(e){e?x.readyWait++:x.ready(!0)},x.isArray=Array.isArray,x.parseJSON=JSON.parse,x.nodeName=R,x.isFunction=y,x.isWindow=b,x.camelCase=Y,x.type=C,x.now=Date.now,x.isNumeric=function(e){var t=x.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},x.trim=function(e){return null==e?"":(e+"").replace(rn,"")},r=[],o=function(){return x}.apply(t,r),void 0===o||(e.exports=o);var on=n.jQuery,sn=n.$;return x.noConflict=function(e){return n.$===x&&(n.$=sn),e&&n.jQuery===x&&(n.jQuery=on),x},"undefined"===typeof i&&(n.jQuery=n.$=x),x}))},"282b":function(e,t,n){"use strict";const r={generateIdentifier:function(){return Math.random().toString(36).substr(2,10)}};r.localCName=r.generateIdentifier(),r.splitLines=function(e){return e.trim().split("\n").map(e=>e.trim())},r.splitSections=function(e){const t=e.split("\nm=");return t.map((e,t)=>(t>0?"m="+e:e).trim()+"\r\n")},r.getDescription=function(e){const t=r.splitSections(e);return t&&t[0]},r.getMediaSections=function(e){const t=r.splitSections(e);return t.shift(),t},r.matchPrefix=function(e,t){return r.splitLines(e).filter(e=>0===e.indexOf(t))},r.parseCandidate=function(e){let t;t=0===e.indexOf("a=candidate:")?e.substring(12).split(" "):e.substring(10).split(" ");const n={foundation:t[0],component:{1:"rtp",2:"rtcp"}[t[1]]||t[1],protocol:t[2].toLowerCase(),priority:parseInt(t[3],10),ip:t[4],address:t[4],port:parseInt(t[5],10),type:t[7]};for(let r=8;r<t.length;r+=2)switch(t[r]){case"raddr":n.relatedAddress=t[r+1];break;case"rport":n.relatedPort=parseInt(t[r+1],10);break;case"tcptype":n.tcpType=t[r+1];break;case"ufrag":n.ufrag=t[r+1],n.usernameFragment=t[r+1];break;default:void 0===n[t[r]]&&(n[t[r]]=t[r+1]);break}return n},r.writeCandidate=function(e){const t=[];t.push(e.foundation);const n=e.component;"rtp"===n?t.push(1):"rtcp"===n?t.push(2):t.push(n),t.push(e.protocol.toUpperCase()),t.push(e.priority),t.push(e.address||e.ip),t.push(e.port);const r=e.type;return t.push("typ"),t.push(r),"host"!==r&&e.relatedAddress&&e.relatedPort&&(t.push("raddr"),t.push(e.relatedAddress),t.push("rport"),t.push(e.relatedPort)),e.tcpType&&"tcp"===e.protocol.toLowerCase()&&(t.push("tcptype"),t.push(e.tcpType)),(e.usernameFragment||e.ufrag)&&(t.push("ufrag"),t.push(e.usernameFragment||e.ufrag)),"candidate:"+t.join(" ")},r.parseIceOptions=function(e){return e.substr(14).split(" ")},r.parseRtpMap=function(e){let t=e.substr(9).split(" ");const n={payloadType:parseInt(t.shift(),10)};return t=t[0].split("/"),n.name=t[0],n.clockRate=parseInt(t[1],10),n.channels=3===t.length?parseInt(t[2],10):1,n.numChannels=n.channels,n},r.writeRtpMap=function(e){let t=e.payloadType;void 0!==e.preferredPayloadType&&(t=e.preferredPayloadType);const n=e.channels||e.numChannels||1;return"a=rtpmap:"+t+" "+e.name+"/"+e.clockRate+(1!==n?"/"+n:"")+"\r\n"},r.parseExtmap=function(e){const t=e.substr(9).split(" ");return{id:parseInt(t[0],10),direction:t[0].indexOf("/")>0?t[0].split("/")[1]:"sendrecv",uri:t[1]}},r.writeExtmap=function(e){return"a=extmap:"+(e.id||e.preferredId)+(e.direction&&"sendrecv"!==e.direction?"/"+e.direction:"")+" "+e.uri+"\r\n"},r.parseFmtp=function(e){const t={};let n;const r=e.substr(e.indexOf(" ")+1).split(";");for(let o=0;o<r.length;o++)n=r[o].trim().split("="),t[n[0].trim()]=n[1];return t},r.writeFmtp=function(e){let t="",n=e.payloadType;if(void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.parameters&&Object.keys(e.parameters).length){const r=[];Object.keys(e.parameters).forEach(t=>{void 0!==e.parameters[t]?r.push(t+"="+e.parameters[t]):r.push(t)}),t+="a=fmtp:"+n+" "+r.join(";")+"\r\n"}return t},r.parseRtcpFb=function(e){const t=e.substr(e.indexOf(" ")+1).split(" ");return{type:t.shift(),parameter:t.join(" ")}},r.writeRtcpFb=function(e){let t="",n=e.payloadType;return void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.rtcpFeedback&&e.rtcpFeedback.length&&e.rtcpFeedback.forEach(e=>{t+="a=rtcp-fb:"+n+" "+e.type+(e.parameter&&e.parameter.length?" "+e.parameter:"")+"\r\n"}),t},r.parseSsrcMedia=function(e){const t=e.indexOf(" "),n={ssrc:parseInt(e.substr(7,t-7),10)},r=e.indexOf(":",t);return r>-1?(n.attribute=e.substr(t+1,r-t-1),n.value=e.substr(r+1)):n.attribute=e.substr(t+1),n},r.parseSsrcGroup=function(e){const t=e.substr(13).split(" ");return{semantics:t.shift(),ssrcs:t.map(e=>parseInt(e,10))}},r.getMid=function(e){const t=r.matchPrefix(e,"a=mid:")[0];if(t)return t.substr(6)},r.parseFingerprint=function(e){const t=e.substr(14).split(" ");return{algorithm:t[0].toLowerCase(),value:t[1].toUpperCase()}},r.getDtlsParameters=function(e,t){const n=r.matchPrefix(e+t,"a=fingerprint:");return{role:"auto",fingerprints:n.map(r.parseFingerprint)}},r.writeDtlsParameters=function(e,t){let n="a=setup:"+t+"\r\n";return e.fingerprints.forEach(e=>{n+="a=fingerprint:"+e.algorithm+" "+e.value+"\r\n"}),n},r.parseCryptoLine=function(e){const t=e.substr(9).split(" ");return{tag:parseInt(t[0],10),cryptoSuite:t[1],keyParams:t[2],sessionParams:t.slice(3)}},r.writeCryptoLine=function(e){return"a=crypto:"+e.tag+" "+e.cryptoSuite+" "+("object"===typeof e.keyParams?r.writeCryptoKeyParams(e.keyParams):e.keyParams)+(e.sessionParams?" "+e.sessionParams.join(" "):"")+"\r\n"},r.parseCryptoKeyParams=function(e){if(0!==e.indexOf("inline:"))return null;const t=e.substr(7).split("|");return{keyMethod:"inline",keySalt:t[0],lifeTime:t[1],mkiValue:t[2]?t[2].split(":")[0]:void 0,mkiLength:t[2]?t[2].split(":")[1]:void 0}},r.writeCryptoKeyParams=function(e){return e.keyMethod+":"+e.keySalt+(e.lifeTime?"|"+e.lifeTime:"")+(e.mkiValue&&e.mkiLength?"|"+e.mkiValue+":"+e.mkiLength:"")},r.getCryptoParameters=function(e,t){const n=r.matchPrefix(e+t,"a=crypto:");return n.map(r.parseCryptoLine)},r.getIceParameters=function(e,t){const n=r.matchPrefix(e+t,"a=ice-ufrag:")[0],o=r.matchPrefix(e+t,"a=ice-pwd:")[0];return n&&o?{usernameFragment:n.substr(12),password:o.substr(10)}:null},r.writeIceParameters=function(e){let t="a=ice-ufrag:"+e.usernameFragment+"\r\na=ice-pwd:"+e.password+"\r\n";return e.iceLite&&(t+="a=ice-lite\r\n"),t},r.parseRtpParameters=function(e){const t={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},n=r.splitLines(e),o=n[0].split(" ");for(let i=3;i<o.length;i++){const n=o[i],s=r.matchPrefix(e,"a=rtpmap:"+n+" ")[0];if(s){const o=r.parseRtpMap(s),i=r.matchPrefix(e,"a=fmtp:"+n+" ");switch(o.parameters=i.length?r.parseFmtp(i[0]):{},o.rtcpFeedback=r.matchPrefix(e,"a=rtcp-fb:"+n+" ").map(r.parseRtcpFb),t.codecs.push(o),o.name.toUpperCase()){case"RED":case"ULPFEC":t.fecMechanisms.push(o.name.toUpperCase());break;default:break}}}return r.matchPrefix(e,"a=extmap:").forEach(e=>{t.headerExtensions.push(r.parseExtmap(e))}),t},r.writeRtpDescription=function(e,t){let n="";n+="m="+e+" ",n+=t.codecs.length>0?"9":"0",n+=" UDP/TLS/RTP/SAVPF ",n+=t.codecs.map(e=>void 0!==e.preferredPayloadType?e.preferredPayloadType:e.payloadType).join(" ")+"\r\n",n+="c=IN IP4 0.0.0.0\r\n",n+="a=rtcp:9 IN IP4 0.0.0.0\r\n",t.codecs.forEach(e=>{n+=r.writeRtpMap(e),n+=r.writeFmtp(e),n+=r.writeRtcpFb(e)});let o=0;return t.codecs.forEach(e=>{e.maxptime>o&&(o=e.maxptime)}),o>0&&(n+="a=maxptime:"+o+"\r\n"),t.headerExtensions&&t.headerExtensions.forEach(e=>{n+=r.writeExtmap(e)}),n},r.parseRtpEncodingParameters=function(e){const t=[],n=r.parseRtpParameters(e),o=-1!==n.fecMechanisms.indexOf("RED"),i=-1!==n.fecMechanisms.indexOf("ULPFEC"),s=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"cname"===e.attribute),a=s.length>0&&s[0].ssrc;let c;const d=r.matchPrefix(e,"a=ssrc-group:FID").map(e=>{const t=e.substr(17).split(" ");return t.map(e=>parseInt(e,10))});d.length>0&&d[0].length>1&&d[0][0]===a&&(c=d[0][1]),n.codecs.forEach(e=>{if("RTX"===e.name.toUpperCase()&&e.parameters.apt){let n={ssrc:a,codecPayloadType:parseInt(e.parameters.apt,10)};a&&c&&(n.rtx={ssrc:c}),t.push(n),o&&(n=JSON.parse(JSON.stringify(n)),n.fec={ssrc:a,mechanism:i?"red+ulpfec":"red"},t.push(n))}}),0===t.length&&a&&t.push({ssrc:a});let u=r.matchPrefix(e,"b=");return u.length&&(u=0===u[0].indexOf("b=TIAS:")?parseInt(u[0].substr(7),10):0===u[0].indexOf("b=AS:")?1e3*parseInt(u[0].substr(5),10)*.95-16e3:void 0,t.forEach(e=>{e.maxBitrate=u})),t},r.parseRtcpParameters=function(e){const t={},n=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"cname"===e.attribute)[0];n&&(t.cname=n.value,t.ssrc=n.ssrc);const o=r.matchPrefix(e,"a=rtcp-rsize");t.reducedSize=o.length>0,t.compound=0===o.length;const i=r.matchPrefix(e,"a=rtcp-mux");return t.mux=i.length>0,t},r.writeRtcpParameters=function(e){let t="";return e.reducedSize&&(t+="a=rtcp-rsize\r\n"),e.mux&&(t+="a=rtcp-mux\r\n"),void 0!==e.ssrc&&e.cname&&(t+="a=ssrc:"+e.ssrc+" cname:"+e.cname+"\r\n"),t},r.parseMsid=function(e){let t;const n=r.matchPrefix(e,"a=msid:");if(1===n.length)return t=n[0].substr(7).split(" "),{stream:t[0],track:t[1]};const o=r.matchPrefix(e,"a=ssrc:").map(e=>r.parseSsrcMedia(e)).filter(e=>"msid"===e.attribute);return o.length>0?(t=o[0].value.split(" "),{stream:t[0],track:t[1]}):void 0},r.parseSctpDescription=function(e){const t=r.parseMLine(e),n=r.matchPrefix(e,"a=max-message-size:");let o;n.length>0&&(o=parseInt(n[0].substr(19),10)),isNaN(o)&&(o=65536);const i=r.matchPrefix(e,"a=sctp-port:");if(i.length>0)return{port:parseInt(i[0].substr(12),10),protocol:t.fmt,maxMessageSize:o};const s=r.matchPrefix(e,"a=sctpmap:");if(s.length>0){const e=s[0].substr(10).split(" ");return{port:parseInt(e[0],10),protocol:e[1],maxMessageSize:o}}},r.writeSctpDescription=function(e,t){let n=[];return n="DTLS/SCTP"!==e.protocol?["m="+e.kind+" 9 "+e.protocol+" "+t.protocol+"\r\n","c=IN IP4 0.0.0.0\r\n","a=sctp-port:"+t.port+"\r\n"]:["m="+e.kind+" 9 "+e.protocol+" "+t.port+"\r\n","c=IN IP4 0.0.0.0\r\n","a=sctpmap:"+t.port+" "+t.protocol+" 65535\r\n"],void 0!==t.maxMessageSize&&n.push("a=max-message-size:"+t.maxMessageSize+"\r\n"),n.join("")},r.generateSessionId=function(){return Math.random().toString().substr(2,21)},r.writeSessionBoilerplate=function(e,t,n){let o;const i=void 0!==t?t:2;o=e||r.generateSessionId();const s=n||"thisisadapterortc";return"v=0\r\no="+s+" "+o+" "+i+" IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\n"},r.getDirection=function(e,t){const n=r.splitLines(e);for(let r=0;r<n.length;r++)switch(n[r]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return n[r].substr(2);default:}return t?r.getDirection(t):"sendrecv"},r.getKind=function(e){const t=r.splitLines(e),n=t[0].split(" ");return n[0].substr(2)},r.isRejected=function(e){return"0"===e.split(" ",2)[1]},r.parseMLine=function(e){const t=r.splitLines(e),n=t[0].substr(2).split(" ");return{kind:n[0],port:parseInt(n[1],10),protocol:n[2],fmt:n.slice(3).join(" ")}},r.parseOLine=function(e){const t=r.matchPrefix(e,"o=")[0],n=t.substr(2).split(" ");return{username:n[0],sessionId:n[1],sessionVersion:parseInt(n[2],10),netType:n[3],addressType:n[4],address:n[5]}},r.isValidSDP=function(e){if("string"!==typeof e||0===e.length)return!1;const t=r.splitLines(e);for(let n=0;n<t.length;n++)if(t[n].length<2||"="!==t[n].charAt(1))return!1;return!0},e.exports=r},"697d":function(e,t,n){var r,o,i;(function(s,a){o=[n("1157"),n("c297"),n("d093")],r=a,i="function"===typeof r?r.apply(t,o):r,void 0===i||(e.exports=i)})(0,(function(e,t,n){t=t.default,n=n.default,window.console=window.console||function(){let e={};return e.log=e.warn=e.debug=e.info=e.error=e.time=e.dir=e.profile=e.clear=e.exception=e.trace=e.assert=function(){},e}(),function(){Array.prototype.indexOf||(Array.prototype.indexOf=function(e){let t=this.length>>>0;for(let n=0;n<t;n++)if(n in this&&this[n]===e)return n;return-1})}();let r=function(){let e=1;return function(){return"SCVIDEO_ID_"+(++e).toString()}}();function o(){return!!window.ActiveXObject||"ActiveXObject"in window}function i(t){let n,r=e.isArray(t)?[]:{};if("object"==typeof t)return window.JSON?(n=JSON.stringify(t),r=JSON.parse(n)):e.each(t,(function(e,t){r[e]="object"==typeof t?i(t):t})),r}let s=!0;function a(e,t){"undefined"!=typeof promptView&&s&&promptView.showSuccess(e)}function c(e,t){"undefined"!=typeof promptView&&s&&promptView.showFailed(e)}function d(e,t){"undefined"!=typeof promptView&&s&&promptView.showAlarm(e)}function u(){return t.isGetUserMediaAvailable()&&!p()&&window.hasAudioInputDevices}function l(){if(window.checkAudioDevicesStatus=!1,window.hasAudioInputDevices=!1,!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return;(new Date).getTime();navigator.mediaDevices.enumerateDevices().then((function(e){e.forEach((function(e){"audioinput"==e.kind&&(window.hasAudioInputDevices=!0)})),window.checkAudioDevicesStatus=!0})).catch((function(e){}))}function p(){let e=document.location.protocol;return"http:"==e&&"localhost"!=window.location.hostname}function f(){let e=document.location.protocol;return"https:"==e}function m(e,t){this.type=e,this.returnValue=!0,this.target=t||null,this.currentTarget=null}let h=function(){function e(e,t){e(!0),this.timerId=setInterval(e,1e3*t)}return e.prototype.stop=function(){this.timerId&&(clearInterval(this.timerId),this.timerId=0,g&&(clearTimeout(g),g=null))},e}(),g=0;function v(e){return new Promise((function(t,n){g&&(clearTimeout(g),g=null),g=setTimeout(t,e)}))}function y(){this._listeners={}}y.prototype={constructor:y,addListener:function(e,t,n){if("function"!=typeof t)return;let o,i=this._listeners;if("string"==typeof n&&n){if(/[^\w\-]/.test(n))throw"nonstandard key:"+n;t.hashCode=n,o=n}0!=e.indexOf("on")&&(e="on"+e),"object"!=typeof i[e]&&(i[e]={}),o=o||r(),t.hashCode=o,i[e][o]=t},removeListener:function(e,t){0!=e.indexOf("on")&&(e="on"+e);let n=this._listeners;if(n[e])if(t){if("function"==typeof t)t=t.hashCode;else if("string"!=typeof key)return;n[e][t]&&delete n[e][t]}else n[e]={}},dispatch:function(e,t){"string"==typeof e&&(e=new m(e)),t=t||{};for(let i in t)e[i]=t[i];let n,r=this._listeners,o=e.type;if(e.target||(e.target=this),e.currentTarget=this,0!=o.indexOf("on")&&(o="on"+o),"function"==typeof this[o]&&this[o].apply(this,arguments),"object"==typeof r[o])for(n in r[o])r[o][n].call(this,e);return e.returnValue},removeAllListeners:function(){this._listeners={}}};new y;function b(e,t){if(!o())return this._getTipObj();t&&this._init(e,t)}function w(t,n){let r=this;if(r.VIDEO_DATA=[],r.videoListener=new y,!n)return;r.configOpt=n&&n.configOpt||3,l();let o=0,i=setInterval((function(){if(5==o){clearInterval(i),r._init(t,n);let o=new ResizeObserver((function(t){t.forEach((t,n)=>{let i=t.target;if(document.querySelector(r.selector)){let t={};Array.prototype.slice.call(document.querySelector(r.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),r.VIDEO_DATA.forEach((n,o)=>{let i=n.video;if(t[o])if(!i&&n.id)t[o].querySelector("video").style="",t[o].querySelector(".rotate-btn")&&t[o].querySelector(".rotate-btn").setAttribute("rotate-index",0);else{let n=e(t[o]).find("button[name=rotateVideo]").attr("rotate-index");setTimeout(()=>{r.videoRotateSize(t[o],n)},200)}})}else o.unobserve(i)})}));o.observe(document.querySelector(r.selector))}else if(window.checkAudioDevicesStatus){clearInterval(i),r._init(t,n);let o=new ResizeObserver((function(t){t.forEach((t,n)=>{let i=t.target;if(document.querySelector(r.selector)){let t={};Array.prototype.slice.call(document.querySelector(r.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),r.VIDEO_DATA.forEach((n,o)=>{let i=n.video;if(t[o])if(!i&&n.id)t[o].querySelector("video").style="",t[o].querySelector(".rotate-btn")&&t[o].querySelector(".rotate-btn").setAttribute("rotate-index",0);else{let n=e(t[o]).find("button[name=rotateVideo]").attr("rotate-index");setTimeout(()=>{r.videoRotateSize(t[o],n)},200)}})}else o.unobserve(i)})}));o.observe(document.querySelector(r.selector))}o++}),20)}b.prototype={constructor:b,play:function(e,t,n,r){this.dispatch("beforeplay",{index:e,video:t,id:n}),this._obj.SCWebSetCurrentWindow(e);let o=this._obj.SCWebRealPlay(t,this._opts.streamType);if(r=r||{},o>0&&(this.videoStatus[e]={video:t,id:n,playId:o,opts:r},this.dispatch("playsuccess",this.videoStatus[e])),o<0){let e=r.name||"视频";c(e+"播放失败!")}return o>0},playByOrder:function(e,t,n){let r=this._getMinIndexFreeWindow(0);return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()?this.playInChoice(e,t,n):this.play(r,e,t,n)},playByOrderExpandWindow:function(e,t,n){let r=this._getMinIndexFreeWindow(0),o=this._opts.windowsNum||16;while(this._opts.windows<o&&-1==r){let e=Math.sqrt(1*this._opts.windows)+1;6==this._opts.windows?this.setWindowsNum(9):this.setWindowsNum(Math.pow(e,2)),r=this._getMinIndexFreeWindow(e-1)}return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()?this.playInChoice(e,t,n):this.play(r,e,t,n)},playAll:function(t){if(t.length>this._opts.windows)throw new Error("windows is not enough");let n=this;n.closeAll(),e.each(t,(function(e,t){n.play(e,t.video,t.id,t.opts)}))},playInChoice:function(e,t,n){let r=this._obj.SCWebGetCurrentWindowIndex();return this.videoStatus[r]&&this.close(r),this.play(r,e,t,n)},playMulWindows:function(t){let n=this;e.each(t,(function(e,t){n.videoStatus[t]&&n.play(t,n.videoStatus[t].video,n.videoStatus[t].id)}))},isPlaying:function(t){let n=-1;return e.each(this.videoStatus,(function(e,r){if(t==r.id)return n=e,!1})),n},isPlayingByIndex:function(e){return this.videoStatus[e]&&!0},getVideoData:function(){return this.videoStatus},closeVoice:function(e){this._obj.SCWebVoiceComControl(this.videoStatus[e].video,this.videoStatus[e].playId,0)},getWindowByPlayId:function(t){let n=-1;return e.each(this.videoStatus,(function(e,r){if(t==r.playId)return n=e,!1})),n},getPlayIdBywindow:function(e){return this.videoStatus[e].playId},close:function(e,t){if(!this.videoStatus[e]||e>=this._opts.windows||this._disableClosed.indexOf(1*e)>-1)return;this._obj.SCWebSetCurrentWindow(e);this._obj.SCWebStopRealPlay(this.videoStatus[e].playId);t||(this.dispatch("afterclose",this.videoStatus[e]),delete this.videoStatus[e])},closeByVideo:function(e,t){let n=this;if(void 0==e)return;let r=n.videoStatus;if(r&&0!=r.length)for(let o in r)e==r[o].video&&n.close(r[o].index)},closeHistory:function(e){this._obj.SCWebStopRealPlay(e);let t=this._getChoiceWindow();delete this.videoStatus[t]},closeAll:function(t){let n=this;t||(this._disableClosed=[]);let r=n._obj.SCWebGetRealPlayWindows();r&&e.each(r.split(","),(function(e,r){n.close(r,t)}))},getWindowsPlay:function(){let e=this,t=e._obj.SCWebGetRealPlayWindows();return t},setChoiceWindow:function(e){this._obj.SCWebSetCurrentWindow(e)},getWindowsNum:function(){return this._opts.windows},hasFreeWindow:function(){return""!=this._obj.SCWebGetFreeWindows()},setWindowsNum:function(e,t){let n,r=this;e*=1,n=t?r._obj.SCWebDecoderSetExtraScreenMode(e):r._obj.SCWebDecoderSetScreenMode(e),e=66==e?6:e,r._changeWindowsAction(e),r.dispatch("screenchange",{windowNums:e}),r._opts.windows=e,r._opts.extra=t},isUnavailable:function(){return 16==this._opts.windows&&!this.hasFreeWindow()},disableClosed:function(t){e.isNumeric(t)?this._disableClosed.push(t):e.isArray(t)&&(this._disableClosed=this._disableClosed.concat(t))},enableClosed:function(){this._disableClosed=[]},startPoll:function(t,n){if(!t||0==t.length)return d("请选择视频设备!"),!1;n=e.isNumeric(n)?n:this._opts.pollInterval,this._pollArray=t;let r=this,o=r._opts.windows,i=t.length,s=0;r.saveList(),r.delayTimeId=0,r._polltimer=new h((function(e){r.closeAll(),r.delayTimeId&&clearTimeout(r.delayTimeId),r.delayTimeId=setTimeout((function(){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}e&&r.dispatch("startpoll",t)}),1e3)}),n)},stopPoll:function(){this._polltimer&&(this._polltimer.stop(),this._polltimer=void 0,this.dispatch("stoppoll",{}),this.playSaveList())},isPolling:function(){return!!this._polltimer},holder:function(t,n,r){let o=this._getChoiceWindow();if(!this.videoStatus[o])return void d("未选中播放的视频!");let i="up down left right upleft upright downleft downright zoomin zoomout focusnear focusfar irisopen irisclose pointset pointdel pointgoto scansetleft scansetright scansetspeed scanrun cruiseadd cruisedel cruisespeed cruisepausetime cruiserun",s=Number(i.split(" ").indexOf(t))+Number(1),a=this.videoStatus[o].video;if(r){this._obj.SCWebPTZControl(a,1,s,0,0,0,0);return}let c={speed:200,group:0,present:0,time:0};e.extend(c,n),this._obj.SCWebPTZControl(a,0,s,c.speed,c.group,1,c.time)},playHistory:function(e,t,n,r){let o=this,i=o._obj.SCWebHistoryPlay(e,t,n);if(i<0){let e=r.name||"视频";return c(e+"播放失败!"),i}let s=o._getChoiceWindow();return r=r||{},i>0&&(o.videoStatus[s]={video:e,id:e,playId:i,opts:r,isPlayBack:!0},o.dispatch("playsuccess",o.videoStatus[s])),i},historyControl:function(e,t,n,r){let o={play:1,pause:2},i=o[t];i&&this._obj.SCWebHistoryControl(e,i,n,r)},_historyControl:function(e,t,n,r){let o={normal:1,pause:2,continue:3},i=1;"speed"==t?n&&n<1?(i=7,n=1/n):i=6:i=o[t],this._obj.SCWebHistoryControl(e,i,n)},skipHistory:function(e,t){this._obj.SCWebHistorySeekPlay(e,t)},capturePicture:function(e){let t=this._opts.videoCapImagePath?this._opts.videoCapImagePath:"";return this._obj.SCWebCapturePicture(e,t,"")},saveList:function(){this._saveList=i(this.videoStatus)},playSaveList:function(){if(!this._saveList)return;this.closeAll();let t=this;e.each(this._saveList,(function(e,n){t.play(e,n.video,n.id,n.opts)}))},getInChoiceVideo:function(){return this.videoStatus[this._obj.SCWebGetCurrentWindowIndex()]},getInChoicePlayId:function(){return this._obj.SCWebGetCurrentPlayID()},setFullScreen:function(){this._obj.ScWebFullScreen(1)},getVideoControllerOpts:function(){return this._opts},getScreenCaptureData:function(e,t){let n="IE下暂不支持获取截屏数据!";throw Error(n)},addListener:function(e,t,n){this.videoListener.addListener(e,t,n)},removeListener:function(e,t){this.videoListener.removeListener(e,t)},dispatch:function(e,t){this.videoListener.dispatch(e,t)},getOcxVersion:function(){return this._obj.SCWebDecoderGetVersion()},_init:function(t,n){let r=this;r._opts={windows:4,conf:{},extra:!1,ocxName:"__videoDiv",streamType:0,openChangeWindowStrategy:!1,capImage:!1,videoCapImagePath:"",pollInterval:10},e.extend(r._opts,n);let o=r._opts.windowsArr;if(o&&0!=o.length){r._windowList={};for(let e in o){let t=o[e];r._windowList[t]={}}r._windowsArr=o}else r._windowList={1:{},4:{},6:{},9:{},16:{}},r._windowsArr=[1,4,6,9,16];if(!e.isNumeric(r._opts.pollInterval))return;!1===r._opts.showPrompt&&(s=!1),r._addStopHandler(),r._addClickHandler(),r._addHisHandler(),r._addCapPicHandler(),r._addHistoryPlayHandler(),r._beforeUnload(),r.videoStatus={},r._disableClosed=new Array,r._obj=e("<OBJECT>").attr({id:r._opts.ocxName,name:r._opts.ocxName,classid:"clsid:5D62BFBF-7B2D-4E9E-A359-5228400C77BC",width:"100%",height:"100%"}),t.append(r._obj),r._obj=r._obj[0];let i,a=r._opts.conf;r._obj.ScWebDecoderInit(0);"127.0.0.1"==a.ip&&(a.ip=location.hostname),i=a.token&&a.token.length>0&&r._obj.SCWebDecoderLoginInVS_Token?r._obj.SCWebDecoderLoginInVS_Token(a.token,a.ip,a.port):r._obj.SCWebDecoderLoginInVs(a.user,a.passwd,a.ip,a.port),setTimeout((function(){r._opts.capImage&&r._obj.SCWebSetPtzButtonLayout(""),r._opts.extra?r._obj.SCWebDecoderSetExtraScreenMode(r._opts.windows):r._obj.SCWebDecoderSetScreenMode(r._opts.windows)}),100)},_getTipObj:function(){let t={},n="play playByOrder playAll playInChoice playMulWindows click getWindowsNum setWindowsNum",r="isPlaying setChoiceWindow close closeAll enableClosede disableClosed addListener removeListener dispatch";return e.each(n.split(" "),(function(e,n){t[n]=function(){alert("不支持非IE环境")}})),e.each(r.split(" "),(function(e,n){t[n]=function(){}})),t.type="disable",t},_getMinIndexFreeWindow:function(e){e=e||0;let t=Math.ceil(Math.pow(e,2));for(;t<this._opts.windows;t++)if(!this.videoStatus[t])return t;return-1},_getChoiceWindow:function(){return this._obj.SCWebGetCurrentWindowIndex()},_changeWindowsAction:function(t){let n=this,r=n._opts.windows,o=t;if(r!=o)if(n._opts.openChangeWindowStrategy)if(r>o)for(;o<r;o++){let e=n._getWindowsNum(o+1);n.videoStatus[o]&&(n._windowList[e][o]={video:n.videoStatus[o].video,id:n.videoStatus[o].id,opts:n.videoStatus[o].opts},n.close(o))}else while(r<o)r=n._getNextWindowsNum(r),n._windowList[r]&&e.each(n._windowList[r],(function(e,t){n.play(e,t.video,t.id,t.opts)})),n._windowList[r]={};else if(r>o)for(;o<r;o++)n.videoStatus[o]&&n.close(o)},_getWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n)if(e<=n[r])return n[r]},_getNextWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n){if(r==n.length-1)return n[r];if(e==n[r])return n[Number(r)+Number(1)]}},_addStopHandler:function(){let e=this;window.stopVideo=function(t,n){-1!=e.getWindowByPlayId(t)&&e.videoStatus[e.getWindowByPlayId(t)].isPlayBack?e.closeHistory(t):e.close(e.getWindowByPlayId(t)),e.dispatch("streamoff",{playId:t,videoId:n})},e._regEvent("SCWebStopVideoEvent(playId,videoId)","stopVideo(playId,videoId);")},_addClickHandler:function(){let e=this;window.clickVideo=function(t){e.dispatch("click",e.videoStatus[e.getWindowByPlayId(t)])},e._regEvent("SCWebDecoderClick(playId,type)","clickVideo(playId);")},_addHisHandler:function(){let e=this;window.playbackVideo=function(t,n,r){e.dispatch("playback",{playId:t,videoId:n,historyTime:r})},e._regEvent("SCWebHistoryPlayTime(playId,videoId,historytime)","playbackVideo(playId,videoId,historytime);")},_addCapPicHandler:function(){let e=this;window.getCapPicPath=function(t,n,r){e.dispatch("getCapPicPath",{playId:t,capPicPath:n,capPicName:r})},e._regEvent("SCWebGetCapPicPathName(playId, capPicPath, capPicName)","getCapPicPath(playId, capPicPath, capPicName);")},_addHistoryPlayHandler:function(){let e=this;window.historyPlay=function(t,n){e.dispatch("historyPlay",{playId:t,videoId:n})},e._regEvent("SCWebHistoryPlayEvent(playId, videoId)","historyPlay(playId, videoId);")},_regEvent:function(t,n){let r;window._addScriptFlag=!0;try{r=e("<script>").attr({for:this._opts.ocxName,event:t}).text("if (!_addScriptFlag) {"+n+"}_addScriptFlag = false;")}catch(o){r='<script for="'+this._opts.ocxName+'" event = "'+t+'" >if (!_addScriptFlag) {'+n+"}_addScriptFlag = false;<\/script>"}e("body").append(r)},_beforeUnload:function(){let e=this;window.onbeforeunload=function(t){e.closeAll(),e._obj.SCWebDecoderDestroy()}}},w.prototype={constructor:w,play:function(e,t,n,r){let o=this;if(!o.waitPlayQueueSwitch||!o.VIDEO_DATA[e].isClosing)return o.dispatch("beforeplay",{index:e,video:t,id:n}),!(e<0)&&(o.VIDEO_DATA[e].play(t),r=r||{},!!o.VIDEO_DATA[e].playing&&(o.VIDEO_DATA[e].opts=r,o.VIDEO_DATA[e].id=n,o.dispatch("playsuccess",o.VIDEO_DATA[e]),!0));o._addWaitingVideo(e,t,n,r)},playByOrder:function(e,t,n){let r=this._getMinIndexFreeWindow();return-1==r||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()&&this._opts.windowsNum>1?this.playInChoice(e,t,n):this.play(r,e,t,n)},playByOrderExpandWindow:function(e,t,n){let r=this,o=this._getMinIndexFreeWindow(),i=this._opts.windowsNum||16;while(r._opts.windows<i&&-1==o){let e=Math.sqrt(1*this._opts.windows)+1;6==this._opts.windows?this.setWindowsNum(9):this.setWindowsNum(Math.pow(e,2)),o=this._getMinIndexFreeWindow(e-1)}return-1==this._getChoiceWindow()&&-1!=this._getMinIndexFreeWindow()&&this.setChoiceWindow(this._getMinIndexFreeWindow()),-1==o||-1!=this._getChoiceWindow()&&!this.getInChoiceVideo()&&this._opts.windowsNum>1?this.playInChoice(e,t,n):this.play(o,e,t,n)},playAll:function(t){if(t.length>this._opts.windows)throw new Error("windows is not enough");let n=this;n.closeAll(),e.each(t,(function(e,t){n.play(e,t.video,t.id,t.opts)}))},playInChoice:function(t,n,r){let o=this,i=e(o.selector+" li.sel");i.length&&(o.VIDEO_DATA[i.index()].playing?(o.close(i.index()),setTimeout((function(){o.play(i.index(),t,n,r)}),1e3)):o.play(i.index(),t,n,r))},isPlaying:function(t){let n=this,r=-1;return e.each(n.VIDEO_DATA,(function(e,o){t==o.id&&n.VIDEO_DATA[e].playing&&(r=e)})),r},isPlayingByIndex:function(e){let t=this;return!(e>t.VIDEO_DATA.length-1||e<0)&&t.VIDEO_DATA[e].playing},getVideoData:function(){return this.VIDEO_DATA},close:function(t,n){if(t<0)return;this.VIDEO_DATA[t].close();let r=e(this.selector+" li ").eq(t).find("video");r.hasClass("scale-scene")&&(r.removeClass("scale-scene"),r.parent().find(".scale-btn").addClass("bggray"),r.parent().find(".scale-btn").attr("title","视频画面铺满")),n||(this.VIDEO_DATA[t].closeType="close",this.dispatch("afterclose",this.VIDEO_DATA[t]))},closeByVideo:function(e,t){let n=this;if(void 0==e)return;let r=n.VIDEO_DATA;if(r&&0!=r.length)for(let o in r)e==r[o].video&&(n.close(o),t||(r[o].closeType="close",n.dispatch("afterclose",r[o])))},closeAll:function(e){let t=this;t._removeAllWaitingVideo();for(let n=t._opts.windowsBeginIndex;n<t._opts.windowsBeginIndex+t._opts.windowsNum;n++)t.close(n,e)},setChoiceWindow:function(t){e(".screen-"+(t+1)).click()},getWindowsNum:function(){return this._opts.windows},setWindowsNum:function(t){let n=this;n._opts.windows!=t&&-1!=n._getMinIndexFreeWindow()&&n.setChoiceWindow(n._getMinIndexFreeWindow()),e(n.selector+" .video-main").removeClass("mode-"+n._opts.windows).addClass("mode-"+t);let r=e(n.selector+" li").hide();n._opts.windows=t;for(let e=0;e<t;e++)r.eq(e).show();if(this.dispatch("screenchange",{windowNums:t,flag:n._opts.flag}),document.querySelector(n.selector)){let t={};Array.prototype.slice.call(document.querySelector(n.selector).querySelectorAll("li"),0).forEach(n=>{t[e(n).attr("index")]=n}),n.VIDEO_DATA.forEach((e,n)=>{let r=e.video;!r&&e.id&&t[n]&&(t[n].querySelector("video").style="",t[n].querySelector(".rotate-btn")&&t[n].querySelector(".rotate-btn").setAttribute("rotate-index",0))})}for(let e=0;e<r.length;e++){let t=r.eq(e).find("button[name=rotateVideo]").attr("rotate-index");r.eq(e).find("button[name=scaleVideo]").hasClass("bggray");setTimeout(()=>{n.videoRotateSize(r.eq(e)[0],t)},200)}},isUnavailable:function(){return 16==this._opts.windows&&-1==this._getMinIndexFreeWindow()},startPoll:function(t,n){if(!t||0==t.length)return d("请选择视频设备!"),!1;n=e.isNumeric(n)?n:this._opts.pollInterval,this._pollArray=t;let r=this,o=r._opts.windows,i=t.length,s=0;r.saveList(),this._polltimer=new h((function(e){if(r.closeAll(),e){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}r.dispatch("startpoll",t)}else v(1500).then((function(){for(let e=0;e<o;e++){if(s==i&&(s=0,i<o))break;r.playByOrder(t[s].video,t[s].id,t[s].opts),s++}}))}),n)},stopPoll:function(){this._polltimer&&(this._polltimer.stop(),this._polltimer=void 0,this.dispatch("stoppoll",{}),this._pollArray=null,this.closeAll())},isPolling:function(){return!!this._polltimer},holder:function(e,t,n){let r=this._getChoiceWindow();return r<0?(c("请先选中视频"),!1):this.VIDEO_DATA[r].holder(e,t,n)},playHistory:function(e,t,n,r){let o,i=this;return o=1==i._opts.windowsNum?i._opts.windowsBeginIndex:i._getMinIndexFreeWindow(),i.setChoiceWindow(o),i.VIDEO_DATA[o].opts=r,i.VIDEO_DATA[o].playback(e,t,n)},closeHistory:function(e,t){if(!e)return;let n=this;if(!t){let e;1==n._opts.windowsNum&&(e=n._opts.windowsBeginIndex)}return n.VIDEO_DATA[t].playbackControl(e,"stop",0)},historyControl:function(e,t,n,r){let o,i=this;return o=1==i._opts.windowsNum?i._opts.windowsBeginIndex:i._getChoiceWindow(),i.VIDEO_DATA[o].playbackControl(e,t,n,r)},saveList:function(){this._saveList=i(this.VIDEO_DATA)},playSaveList:function(){if(!this._saveList)return;this.closeAll();let t=this;e.each(this._saveList,(function(e,n){n.video&&t.play(n.index,n.video,n.id,n.opts)}))},getInChoiceVideo:function(){let t=this,n=e(t.selector+" li.sel");if(n.length&&t.VIDEO_DATA[n.attr("index")]&&t.VIDEO_DATA[n.attr("index")].video)return t.VIDEO_DATA[n.attr("index")]},setFullScreen:function(){this._fullScreenEvent(document.getElementById("video-main-web-rtc"))},getVideoControllerOpts:function(){return this._opts},getScreenCaptureData:function(e,t){let n=this,r=n.VIDEO_DATA[void 0!=e?e:n._getChoiceWindow()];if(!r.playing)return void d("请选择播放的视频源!");let o=document.getElementById("myCanvas"),i=r.tagBox.get(0);if(void 0==i)return;0!=r.tagBox.parent().find(".stream-loading").length?(o.width=r.tagBox.width(),o.height=r.tagBox.height()):(o.width=i.videoWidth,o.height=i.videoHeight);let s=o.getContext("2d");s.drawImage(i,0,0,i.videoWidth,i.videoHeight);let a=o.toDataURL("image/jpeg");t&&t(a)},startAvRecord:function(e){let t=this;return t.VIDEO_DATA[e].recordAv("start_av_record",x)},stopAvRecord:function(e){let t=this;return t.VIDEO_DATA[e].recordAv("stop_av_record",x)},changeResolution:function(e,t){let n=this;return n.VIDEO_DATA[e].changeResolution("change_resolution",t)},openPocCall:function(e,t){let n,r=this;return n=1==r._opts.windowsNum?r._opts.windowsBeginIndex:r._getMinIndexFreeWindow(),window.pocNo=e,r.VIDEO_DATA[n].pocCall("open_poccall",e,t)},closePocCall:function(e,t){let n,r=this;return n=1==r._opts.windowsNum?r._opts.windowsBeginIndex:r._getMinIndexFreeWindow(),r.VIDEO_DATA[n].stream=null,window.pocNo=null,r.VIDEO_DATA[n].pocCall("close_poccall",e,t)},setRecordAvBusinessId:function(e){x=e},sendAudio:function(e){let t=this;e=void 0!=e?e:t._opts.windowsBeginIndex,t.VIDEO_DATA[e].stream.getAudioTracks()[0].enabled=!0},unSendAudio:function(e){let t=this;e=void 0!=e?e:t._opts.windowsBeginIndex,t.VIDEO_DATA[e].stream.getAudioTracks()[0].enabled=!1},addListener:function(e,t,n){this.videoListener.addListener(e,t,n)},removeListener:function(e,t){this.videoListener.removeListener(e,t)},dispatch:function(e,t){this.videoListener.dispatch(e,t)},removeAllListeners:function(){this.videoListener.removeAllListeners()},_getMinIndexFreeWindow:function(e){let t=this;for(e=e||t._opts.windowsBeginIndex;e<t._opts.windowsBeginIndex+t._opts.windows;e++)if(!t.VIDEO_DATA[e].playing&&!t.VIDEO_DATA[e].isWaiting)return e;return-1},_getChoiceWindow:function(){let t=this,n=e(t.selector+" li.sel");return n.length?n.index():-1},_getNextWindowsNum:function(e){let t=this,n=t._windowsArr;for(let r in n){if(r==n.length-1)return n[r];if(e==n[r])return n[Number(r)+Number(1)]}},_clickWindow:function(){let t=this;e(t.selector+" li").click((function(){e(t.selector+" li").removeClass("sel"),e(this).addClass("sel"),t.getInChoiceVideo()&&t.dispatch("click",t.getInChoiceVideo())}));let n=null;e(t.selector+" li").bind("dragstart",(function(t){n=e(this)})),e(t.selector+" li").bind("dragover",(function(e){e.preventDefault()})),e(t.selector+" li").bind("drop",(function(r){r.preventDefault();let o=t.VIDEO_DATA;if(n.prop("outerHTML")===e(this).prop("outerHTML"))return;let i=e(this),s=n.index(),a=i.index();i.removeClass("screen-"+(a+1)).addClass("screen-"+(s+1)),n.removeClass("screen-"+(s+1)).addClass("screen-"+(a+1)),i.attr("index",s),n.attr("index",a),n.children("#frame-decoded-"+(s+1)).attr("id","frame-decoded-"+(a+1)),i.children("#frame-decoded-"+(a+1)).attr("id","frame-decoded-"+(s+1)),n.children("#info-self"+(s+1)).attr("id","info-self-"+(a+1)),i.children("#info-self-"+(a+1)).attr("id","info-self-"+(s+1)),i.hasClass("main-screen")?(i.removeClass("main-screen"),n.addClass("main-screen")):n.hasClass("main-screen")&&(n.removeClass("main-screen"),i.addClass("main-screen")),s>a?(n.insertBefore(i),i.insertAfter(e(t.selector+" .video-main li.screen").eq(s))):(n.insertAfter(i),i.insertBefore(e(t.selector+" .video-main li.screen").eq(s)));let c=o[a],d=o.splice(s,1,c);o.splice(a,1,...d)}))},_init:function(t,n){let r=this;if(0==t.length||!r.getDomSelector(t))return;r._opts={windows:4,conf:{},pollInterval:10,windowsNum:16,isVideoTag:!0,showVideoInfo:1,waitPlayQueueSwitch:!1,defaultBusinessType:0,videoTipTimeOut:5},e.extend(r._opts,n);let o=r._opts.windowsArr;if(o&&0!=o.length){r._windowList={};for(let e in o){let t=o[e];r._windowList[t]={}}r._windowsArr=o}else r._windowList={1:{},4:{},6:{},9:{},16:{}},r._windowsArr=[1,4,6,9,16];r._opts.windowsBeginIndex=0,window.pocNo=0,r.waitPlayQueueSwitch=void 0!=n.waitPlayQueueSwitch&&n.waitPlayQueueSwitch,!1===r._opts.showPrompt&&(s=!1),1==r._opts.defaultBusinessType&&r._checkDevices(),r._opts.isVideoTag?r._initVideoView(t,r._opts.showVideoInfo):r._initAudioView(t),r._initJanus(),r._initBtnEvent(),r._initEventListen(),r._clickWindow(),0!=r._opts.showVideoInfo&&r._showVideoInfo(),r._dbClickFullScreen()},videoRotateSize(t,n){if(!t)return;let r=t.querySelector("video"),o=t.offsetWidth,i=t.offsetHeight,s=r.classList.contains("scale-scene");s&&(0==n||2==n?(e(r).css("height","100%"),e(r).css("width","100%")):1!=n&&3!=n||(e(r).css("height",o),e(r).css("width",i)));let a=r.videoWidth,c=r.videoHeight;r.offsetWidth,r.offsetHeight;0==n?(s||(e(r).css("height","auto"),e(r).css("width","auto")),e(r).css("max-height","100%"),e(r).css("max-width","100%"),r.style.position="absolute",e(r).css("left","50%"),e(r).css("top","50%"),a/c<o/i?e(r).css("height","100%"):e(r).css("width","100%"),r.style.transform="translate(-50%, -50%)"):3==n?(r.style.position="absolute",r.style.transform="rotate(270deg)",e(r).css("max-height","none"),e(r).css("max-width","none"),c*i/a<o?(s?e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"):(e(r).css("width",i),e(r).css("height","auto"),e(r).css("top","calc(-"+c*i/a/2+"px + "+i+"px / 2)")),e(r).css("left","calc("+o+"px / 2 - "+i+"px / 2)")):(s||(e(r).css("width","auto"),e(r).css("height",o)),e(r).css("left","calc(-"+a*o/c/2+"px + "+o+"px / 2)"),e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"))):2==n?(s||(e(r).css("height","auto"),e(r).css("width","auto")),e(r).css("max-height","100%"),e(r).css("max-width","100%"),r.style.position="absolute",e(r).css("left","50%"),e(r).css("top","50%"),a/c<o/i?e(r).css("height","100%"):e(r).css("width","100%"),r.style.transform="translate(-50%, -50%) rotate(180deg)"):1==n&&(r.style.position="absolute",r.style.transform="rotate(90deg)",e(r).css("max-height","none"),e(r).css("max-width","none"),c*i/a<o?(s?e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)"):(e(r).css("width",i),e(r).css("height","auto"),e(r).css("top","calc(-"+c*i/a/2+"px + "+i+"px / 2)")),e(r).css("left","calc("+o+"px / 2 - "+i+"px / 2)")):(s||(e(r).css("width","auto"),e(r).css("height",o)),e(r).css("left","calc(-"+a*o/c/2+"px + "+o+"px / 2)"),e(r).css("top","calc("+i+"px / 2 - "+o+"px / 2)")))},getDomSelector:function(t){var n=this;if(t.selector)n.selector=t.selector;else if(t.attr("id"))n.selector="#"+t.attr("id");else{if(!t.attr("class"))return!1;var r=t.attr("class").split(/\s+/);e.each(r,(function(t,r){if(1==e("."+r).length)return n.selector="."+r,!0}))}return!!n.selector},_initBtnEvent:function(){let t=this,n=e(t.selector+" .video-main");n.find("button[name='lockVideo']").click((function(){let n=Number(e(this).parent().parent().attr("index"));if(t.VIDEO_DATA[n].playing)return"lock-video-btn"==e(this).attr("class")?(t.VIDEO_DATA[n].isLockVideo=!1,e(this).attr("class","unlock-video-btn")):(t.VIDEO_DATA[n].isLockVideo=!0,e(this).attr("class","lock-video-btn")),!1;d("请选择播放的视频源!")})),n.find("button[name=rotateVideo]").click((function(){let n=Number(e(this).attr("rotate-index"));n++,n%=4,e(this).attr("rotate-index",n);let r=e(this).parent().parent()[0];return t.videoRotateSize(r,n),!1})),n.find("button[name=scaleVideo]").click((function(){let n=e(this).hasClass("bggray");return n?(e(this).parent().parent().find(".video-box").addClass("scale-scene"),e(this).attr("title","原视频分辨率展示")):(e(this).parent().parent().find(".video-box").removeClass("scale-scene"),e(this).attr("title","视频画面铺满")),t.videoRotateSize(e(this).parent().parent()[0],e(this).parent().find("button[name=rotateVideo]").attr("rotate-index")),e(this).toggleClass("bggray"),!1})),n.find("button[name=screenVideo]").click((function(){let n=e(this).hasClass("fullscreen-btn");n?(e(this).attr("class","autoscreen-btn"),e(this).attr("title","退出全屏")):(e(this).attr("class","fullscreen-btn"),e(this).attr("title","全屏")),t.videoRotateSize(e(this).parent().parent()[0],e(this).parent().find("button[name=rotateVideo]").attr("rotate-index"))})),n.find("button[name='recvAudio']").click((function(){let n=this,r=Number(e(this).parent().parent().attr("index")),o=void 0==t.VIDEO_DATA[r].opts.businessType?t._opts.defaultBusinessType:t.VIDEO_DATA[r].opts.businessType;if(t.VIDEO_DATA[r].playing)if("recv-audio-btn"==e(this).attr("class"))t.VIDEO_DATA[r].operateAudio("stop_audio"),e(this).attr("class","unrecv-audio-btn"),t.VIDEO_DATA[r].tagBox.prop("muted",!0);else if(0==o){let o=e(e(n).parent().parent().parent()).children();for(let n=0;n<o.length;n++){let i=Number(e(o[n]).attr("index"));if(r==i)continue;let s=e(e(o[n]).find("button[name='recvAudio']")[0]),a=e(e(o[n]).find("button[name='sendAudio']")[0]);"recv-audio-btn"==s.attr("class")&&t.VIDEO_DATA[i].playing&&s.click(),"send-audio-btn"==a.attr("class")&&t.VIDEO_DATA[i].playing&&a.click()}e(n).attr("class","recv-audio-btn"),setTimeout((function(){t.VIDEO_DATA[r].isClosing||(t.VIDEO_DATA[r].operateAudio("recv_audio"),t.VIDEO_DATA[r].tagBox.prop("muted",!1))}),1e3)}else 1==o&&(e(n).attr("class","recv-audio-btn"),t.VIDEO_DATA[r].operateAudio("recv_audio"),t.VIDEO_DATA[r].tagBox.prop("muted",!1));else d("请选择播放的视频源!")})),n.find("button[name='sendAudio']").click((function(){let n=Number(e(this).parent().parent().attr("index")),r=void 0==t.VIDEO_DATA[n].opts.businessType?t._opts.defaultBusinessType:t.VIDEO_DATA[n].opts.businessType;if(t.VIDEO_DATA[n].playing)return 0==r?"send-audio-btn"==e(this).attr("class")?(t.VIDEO_DATA[n].operateAudio("unsend_audio"),e(this).attr("class","unsend-audio-btn"),t.VIDEO_DATA[n].stream.getAudioTracks()[0].enabled=!1):(t.VIDEO_DATA[n].operateAudio("send_audio"),e(this).attr("class","send-audio-btn"),t.VIDEO_DATA[n].stream.getAudioTracks()[0].enabled=!0):1==r&&("send-audio-btn"==e(this).attr("class")?(e(this).attr("class","unsend-audio-btn"),t.VIDEO_DATA[n].ptopPoc("close_ptop_poc",window.pocNo)):(e(this).attr("class","send-audio-btn"),t.VIDEO_DATA[n].ptopPoc("open_ptop_poc",window.pocNo))),!1;d("请选择播放的视频源!")})),n.find("button[name='closeVideo']").click((function(){let n=Number(e(this).parent().parent().attr("index"));t.close(n)}))},_initEventListen:function(){let e=this;e.addListener("openVideo",(function(t){e.play(t.index,t.video,t.id,t.opts)})),e.addListener("notifyCloseVideo",(function(t){e._notifyWaitingVideo(t.index)}))},_dbClickFullScreen:function(){let t=this;e(t.selector+" .video-main").find(".video-box").on("dblclick",(function(){t._fullScreenEvent(this)}))},_fullScreenEvent:function(e){let t=e.fullScreen||e.mozFullScreen||e.webkitIsFullScreen;t||e.requestFullscreen&&e.requestFullscreen()||e.mozRequestFullScreen&&e.mozRequestFullScreen()||e.webkitRequestFullscreen&&e.webkitRequestFullscreen()||e.msRequestFullscreen&&e.msRequestFullscreen()},_showVideoInfo:function(){let t=this;function n(){if(t.VIDEO_DATA&&t.VIDEO_DATA.length)for(let n=0;n<t.VIDEO_DATA.length;n++)if(t.VIDEO_DATA[n].playing){let r=Number(t.VIDEO_DATA[n].index)+Number(1),o=e(t.selector+" .video-main #video-"+r);if(!o.length)continue;let i=o[0];if(!i)continue;let s=i.videoWidth,a=i.videoHeight,c=t.VIDEO_DATA[n].sipcall.getBitrate();if(!s||!a||!c||-1==c.indexOf("kbits")||-1!=c.indexOf("NaN"))continue;let d=t.VIDEO_DATA[n].sipcall.webrtcStuff;t._setPacketsLostRate(n,d,t),t._setFrameDecoded(n,d,t);let u=s+"×"+a;switch(a+""){case"1080":u="1080P";break;case"720":u="720P";break;case"480":u="480P";break;case"288":u="CIF";break;default:break}let l=e(t.selector+" .video-main #info-"+r);if(!l.length)continue;let p=l[0],f=t.VIDEO_DATA[n].opts&&t.VIDEO_DATA[n].opts.name?t.VIDEO_DATA[n].opts.name:t.VIDEO_DATA[n].video;p.innerHTML=f+"&nbsp;&nbsp;"+u+"<br>丢包率:"+t.VIDEO_DATA[n].packetsLostRate+"&nbsp;&nbsp;"+c.replace("kbits/sec","kbps");let m=e(t.selector+" .video-main #video-"+r).height()/15,h=e(t.selector+" .video-main #video-"+r).width()/18,g=m<h?m:h;g=!g||g>20?20:g,e("#info-"+r).css("font-size",g+"px")}}t.videoInfoTimer&&(clearInterval(t.videoInfoTimer),t.videoInfoTimer=null),t.videoInfoTimer=setInterval(n,1e3)},_setPacketsLostRate:function(e,t,n){null!=t.pc&&void 0!=t.pc&&t.pc.getStats&&t.pc.getStats().then((function(t){t.forEach((function(t){if(!t)return;let r=!1;if(("video"===t.mediaType||t.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===t.type&&t.id.indexOf("rtcp")<0?r=!0:"ssrc"!=t.type||!t.bytesReceived||"VP8"!==t.googCodecName&&""!==t.googCodecName||(r=!0),r&&t.hasOwnProperty("packetsLost"))if(!t.packetsLost||isNaN(t.packetsLost)||"0"==Number(t.packetsLost)||"NaN"==t.packetsLost)n.VIDEO_DATA[e].packetsLostRate="0.00%";else{let r=Number(t.packetsLost)-Number(n.VIDEO_DATA[e].packetsLostSum),o=Number(t.packetsReceived)-Number(n.VIDEO_DATA[e].packetsReceivedSum),i=0;if(r>0){Number(r),Number(r),Number(o)}n.VIDEO_DATA[e].packetsLostRate=i.toFixed(2)+"%"}}))}))},_setFrameDecoded:function(e,t,n){null!==t.pc&&"undefined"!==typeof t.pc&&t.pc.getStats&&t.pc.getStats().then((function(t){t.forEach((function(t){if(t){let o=!1;if(("video"===t.mediaType||t.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===t.type&&t.id.indexOf("rtcp")<0?o=!0:"ssrc"!==t.type||!t.bytesReceived||"VP8"!==t.googCodecName&&""!==t.googCodecName||(o=!0),o&&t.hasOwnProperty("framesDecoded")){if(t.framesDecoded<=1)return;if("undefined"===typeof n.VIDEO_DATA[e].framesDecodedCount&&(n.VIDEO_DATA[e].framesDecodedCount=0),"undefined"===typeof n.VIDEO_DATA[e].framesDecodedLast&&(n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded),t.framesDecoded>n.VIDEO_DATA[e].framesDecodedLast&&"undefined"!==typeof n.VIDEO_DATA[e].tipDom&&"block"===n.VIDEO_DATA[e].tipDom.style.display&&(n.VIDEO_DATA[e].tipDom.style.display="none"),n.VIDEO_DATA[e].framesDecodedCount++,n.VIDEO_DATA[e].framesDecodedCount===n.configOpt){if(t.framesDecoded-n.VIDEO_DATA[e].framesDecodedLast===0){if("undefined"===typeof n.VIDEO_DATA[e].tipDom){var r=e+1;n.VIDEO_DATA[e].tipDom=document.getElementById("frame-decoded-"+r)}n.VIDEO_DATA[e].tipDom.style.display="block"}n.VIDEO_DATA[e].framesDecodedCount=0,n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded}else n.VIDEO_DATA[e].framesDecodedLast=t.framesDecoded}}}))}))},_checkDevices:function(){let e=this,t="DEVICES_CHECK_TIP_COUNT",n="DEVICES_CHECK_STATUS",r="completed",o="rejected",i="MICRO_RESULT",s="SPEAKER_RESULT",a="SCREEN_RESULT",c="pass",u="not pass",l=sessionStorage.getItem(t),p=localStorage.getItem(n);if((void 0==l||"0"==l)&&void 0==p)return sessionStorage.setItem(t,"1"),void(confirm("您还没有检测硬件设备,是否先进行检测?")?window.open("/scooper-video/new/checkDevices"):localStorage.setItem(n,o));if(p==r){let t=void 0==localStorage.getItem(i)?c:localStorage.getItem(i),n=void 0==localStorage.getItem(s)?c:localStorage.getItem(s),r=void 0==localStorage.getItem(a)?c:localStorage.getItem(a),o="";n==u&&(o+="检测到扬声器异常,可能影响系统某些功能的使用!"),t==u&&(o+="检测到麦克风异常,可能影响系统某些功能的使用!"),r===u&&(o+="您的屏幕分辨率过低,可能导致页面布局混乱!",d(o));let l=navigator.userAgent;l.toLowerCase().indexOf("chrome")<0&&l.toLowerCase().indexOf("firefox")<0&&l.toLowerCase().indexOf("edge")<0&&(o+="当前浏览器下部分功能可能存在兼容问题,建议使用谷歌浏览器!",d(o)),""!=o&&setTimeout((function(){e.videoListener.dispatch("msginfo",{msg:o})}),3e3)}},_initVideoView:function(e,t){let n,r=this;switch(t){case 1:n="info-bottom";break;case 2:n="info-top";break;default:n="info-bottom"}let o=(1==r._opts.windowsNum?"video-main video-main-full mode-":"video-main mode-")+r._opts.windows,i='<ul class="'+o+'" id="video-main-web-rtc" video-flag="'+r._opts.windowsBeginIndex+'">',s=r._opts.windowsBeginIndex+1;for(let a=s;a<s+r._opts.windowsNum;a++)i+='<li class="screen screen-'+a+'" index="'+(a-1)+'" draggable="true"><video muted class="video-box" id="video-'+a+'" autoplay ></video><div class="hide info '+n+'" id="info-'+a+'"></div><div class="hide info-self info-top" id="info-self-'+a+'"></div><div class="hide frame-decoded" id="frame-decoded-'+a+'"style="position:absolute;float:left;color:#fff;width:67%;z-index:1;top:135px;left:180px">网络信号不佳</div><div class="operate-btn">',i+='<button type="button" class="fullscreen-btn hide" name="screenVideo" title="全屏"></button><button type="button" class="scale-btn bggray hide" name="scaleVideo" title="视频画面铺满"></button><button type="button" class="rotate-btn hide" name="rotateVideo" rotate-index="0" title="视频旋转"></button><button type="button" class="unsend-audio-btn hide" name="sendAudio"></button>',i+='<button type="button" class="unrecv-audio-btn hide" name="recvAudio"></button><button type="button" class="close-btn hide" name="closeVideo"></button></div></li>';i+='</ul> <div class="canvasBox hide"><canvas id="myCanvas" ></canvas></div>',e.append(i),r.setWindowsNum(r._opts.windows)},_initAudioView:function(e){let t=this,n=(1==t._opts.windowsNum?"video-main video-main-full mode-":"video-main mode-")+t._opts.windows,r='<ul class="'+n+'" id="video-main-web-rtc" video-flag="'+t._opts.windowsBeginIndex+'">',o=t._opts.windowsBeginIndex+1;for(let i=o;i<o+t._opts.windowsNum;i++)r+='<audio id="audio-'+i+'" autoplay ></video>';e.append(r)},_initJanus:function(){let e=this;t.init({debug:"error",dependencies:t.useDefaultDependencies({adapter:n}),callback:function(){if(!t.isWebrtcSupported())return void alert("不支持WEB-RTC");let n=e._opts.conf.janusUrl;f()&&(n=n.replace("ws:","wss:")),e._opts.janus=new t({server:"https:"==location.protocol?n.split("//")[0]+"//szh.rfb.zj.gov.cn/tytxstream/janus/":n,success:function(){e._initSVideo(e._opts.janus)},error:function(t){!e._opts.isNotFistTip&&c("Janus服务连接失败!"),e._opts.isNotFistTip=!0,e.closeAll(),e._removeAllWaitingVideo(),e._initJanus()},destroyed:function(){e._opts.isNotFistTip=!0}})}})},destory:function(){var t=this;t.destoryJanus(),e(t.selector).empty(),t.videoListener=null,t.VIDEO_DATA=null,t.selector=null},destoryJanus:function(){let e=this;e._opts.janus.destroy({success:function(){P=!1},asyncRequest:!0,notifyDestroyed:!0}),e.removeAllListeners()},reLoginJanusItvIndex:-1,_initSVideo:function(e){let n=this,r=null;e.attach({plugin:n._opts.conf.janusPlugin?n._opts.conf.janusPlugin:"janus.plugin.videoserver",opaqueId:"siptest-"+t.randomString(12),success:function(e){r=e;let t={request:"register",token:n._opts.conf.token||getToken()};r.send({message:t})},error:function(e){c("Janus登陆插件初始化失败!")},onmessage:function(t,r){if(t.error_code)return c(FAILED_CODE[t.error_code]||"错误码:"+t.error_code),!1;let o=t["result"],i=o["event"];if(o.error_code&&0!=o.error_code&&c(FAILED_CODE[o.error_code]||"错误码:"+o.error_code),null!==o&&void 0!==o&&void 0!==o["event"]&&null!==o["event"]){if("registration_failed"===i)return c("janus登陆失败: "+o["code"]+" "+o["reason"]),void(-1==n.reLoginJanusItvIndex&&(n.reLoginJanusItvIndex=setInterval((function(){n._initJanus(e)}),5e3)));if("video_server_closed"===i)return void(-1==n.reLoginJanusItvIndex&&(n.reLoginJanusItvIndex=setInterval((function(){n._initJanus(e)}),5e3)));if("registered"===i){let t=o["userToken"];P=!0,-1!=n.reLoginJanusItvIndex&&(clearInterval(n.reLoginJanusItvIndex),n.reLoginJanusItvIndex=-1);let r=0;for(let o=n._opts.windowsBeginIndex;o<n._opts.windowsBeginIndex+n._opts.windowsNum;o++)n.VIDEO_DATA[o]=new k({index:o,janus:e,userToken:t,windowsNum:n._opts.windowsNum,relativeIndex:r++,flag:n._opts.flag,isVideoTag:n._opts.isVideoTag,janusPlugin:n._opts.conf.janusPlugin,videoTipTimeOut:n._opts.videoTipTimeOut,parentSelector:n.selector},n.videoListener)}}}})},WAITING_DATA:[],waitPlayQueueSwitch:!1,_addWaitingVideo:function(t,n,r,o){let i=this,s=!1;e.each(i.WAITING_DATA,(function(e,a){if(a.index==t)return i.WAITING_DATA[e]={index:t,video:n,id:r,opts:o},s=!0,!1})),s||i.WAITING_DATA.push({index:t,video:n,id:r,opts:o}),i.VIDEO_DATA[t].isWaiting=!0},_removeWaitingVideo:function(t,n){let r=this;e.each(r.WAITING_DATA,(function(e,o){if(o.index==t&&o.video==n)return r.WAITING_DATA.splice(e,1),r.VIDEO_DATA[t].isWaiting=!1,!1}))},_removeAllWaitingVideo:function(){let e=this;e.WAITING_DATA=[];let t=e._opts.windowsBeginIndex;for(;t<e._opts.windowsBeginIndex+e._opts.windows;t++)e.VIDEO_DATA[t].isWaiting=!1},_notifyWaitingVideo:function(t){let n=this;e.each(n.WAITING_DATA,(function(e,r){if(r.index==t)return n.play(r.index,r.video,r.id,r.opts),n._removeWaitingVideo(r.index,r.video),!1}))}};let T={VIDEO_CODE:{2002:"未找到该ID的视频源",2003:"请确认视频服务版本",3001:"未接收到引流包,请检查端口映射",3002:"",3003:"对方拒绝视频请求",4001:"视频流中断",4002:"终端挂机或超时未接听",7e3:"无法连接视频设备",7001:"无法连接视频设备",7002:"无法连接视频设备"},OTHER_CODE:{453:"videoServer连接失败,错误码453",454:"视频窗口已被占用,请选择其它窗口打开或停止播放",455:"操作失败,该段时间无视频录像",499:"操作异常,错误码499",440:"操作异常,错误码440",441:"操作异常,错误码441",442:"操作异常,错误码442",443:"操作异常,错误码443",444:"操作异常,错误码444",445:"操作异常,错误码445",446:"操作异常,错误码446",447:"操作异常,错误码447",448:"操作异常,错误码448",449:"操作异常,错误码449",450:"操作异常,错误码450",451:"操作异常,错误码451",452:"操作异常,错误码452",456:"设备已处于对讲状态或不支持对讲",6001:"录像失败"},FAILED_CODE:{1001:"账号或密码错误",1002:"该帐号已连接",1004:"没有鉴权",2001:"未携带token或token错误",2002:"视频源id不存在",2003:"操作指令非法(该账号不允许执行这个指令,或者不支持该指令)",3001:"nat通道未建立",3002:"该视频流已在传输",3003:"无法获取远端视频流",4001:"视频流异常断开连接",4002:"获取视频失败",5e3:"内部错误",8001:"该设备不支持云台操作",453:"videoServer连接失败",454:"录像回放窗口已占用,请先停止播放",455:"无视频录像,操作失败",5001:"呼叫异常断开",5002:"禁止修改分辨率",401:"禁止修改分辨率",4003:"音频重置",4004:"音频被占用",4005:"客户端已打开对讲",4006:"终端离开云眼音频",4008:"终端拒绝打开视频",6001:"录像失败",499:"内部创建失败",440:"请求消息内容为空",441:"json格式错误",442:"无效的请求",443:"消息内容缺失",444:"消息缺少参数",445:"账户已登陆",446:"收到的videoserver消息有误",447:"消息参数错误",448:"SDP创建失败",449:"未使用",450:"创建端口失败",451:"SDP创建失败",452:"未使用加密的RTP",456:"对讲未打开",7e3:"URL账号密码错误(RTSP)",7001:"URL地址不通(RTSP)",7002:"URL格式错误(RTSP)"},STATUS_CODE_ARR:["5002","4003","4004","4005","4006"]};function S(t,n,r,o){if("-1"===t.timer)return delete t.timer,void C(t.tagBox.parent(),t);let i=t.tagBox.parent();if(i.find(".operate-btn .close-btn").show(),T.FAILED_CODE[n]&&"4002"!=n){T.FAILED_CODE[n]}let s="<div class='result'><div class='result-tip'>"+T.VIDEO_CODE[n]+"</div>",a=0,c=i.parents("#videoRef").length;r&&"4002"!=n&&(c&&(a=2),s+="<div class='result-replay'><span id='replay-"+t.index+"' class='replay'>"+(c?"2秒后自动尝试重连,":"")+"点击立即重连</span></div>"),s+="</div>",i.append(s),t.timer&&clearInterval(t.timer),t.timer=null,a&&c&&(t.timer=setInterval(()=>{a--,a>0?i.find("#replay-"+t.index).text(a+"秒后自动尝试重连,点击立即重连"):0==a&&(clearInterval(t.timer),t.timer=null,t.videoListener.dispatch("openVideo",{index:t.index,video:o,id:t.id,opts:t.opts}))},1e3)),r&&"4002"!=n&&e("#replay-"+t.index).unbind("click").click((function(){a=0,clearInterval(t.timer),t.timer=null,t.videoListener.dispatch("openVideo",{index:t.index,video:o,id:t.id,opts:t.opts})})),"4002"==n&&setTimeout((function(){C(i,t)}),2e3)}function C(e,t){e.removeClass("result"),e.find(".real-result").remove(),e.find(".result").remove(),t&&t.playing||e.find(".operate-btn .close-btn").hide()}window.windowsSum=0;let P=!1,x=null;function k(t,n){this.janus=t.janus,this.userToken=t.userToken,this.sipcall=null,this.index=t.index,this.relativeIndex=t.relativeIndex,this.tagBox=t.isVideoTag?e(t.parentSelector+" #video-"+(this.index+1)):e("#audio-"+(this.index+1)),this.windowsNum=t.windowsNum,this.flag=t.flag,this.isVideoTag=t.isVideoTag,this.janusPlugin=t.janusPlugin,this.isClosing=!1,this.isWaiting=!1,this.playSucTimeOutIndex=-1,this.videoTipTimeOut=t.videoTipTimeOut,this.videoListener=n,this.init()}return k.prototype={init:function(){let e=this;e.janus.attach({plugin:e.janusPlugin?e.janusPlugin:"janus.plugin.videoserver",opaqueId:"siptest-"+t.randomString(12),success:function(t){e.sipcall=t,e.relativeIndex+1>=e.windowsNum&&e.videoListener.dispatch("initsucc",e)},error:function(e){},consentDialog:function(e){},onmessage:function(t,n){P||c("请先登陆");let r=e.video;if(t.error_code)return T.VIDEO_CODE[t.error_code]?S(e,t.error_code,!0,r):c(T.OTHER_CODE[t.error_code]||T.FAILED_CODE[t.error_code]||"错误码:"+t.error_code),e.videoListener.dispatch("msginfo",{code:t.error_code,msg:T.OTHER_CODE[t.error_code]||T.FAILED_CODE[t.error_code]||"错误码:"+t.error_code}),!1;let o=t["result"];if(!o)return;o.error_code&&0!=o.error_code&&(T.STATUS_CODE_ARR.includes(o.error_code+"")||(e.close("err",o.error_code+""),e.isLockVideo?setTimeout((function(){e.play(r)}),1500):(e.closeType="error",e.videoListener.dispatch("afterclose",e))),e.videoListener.dispatch("msginfo",{code:o.error_code,msg:T.OTHER_CODE[o.error_code]||T.FAILED_CODE[o.error_code]||"错误码:"+o.error_code}),T.VIDEO_CODE[o.error_code]?S(e,o.error_code,!0,r):c(T.OTHER_CODE[o.error_code]||T.FAILED_CODE[o.error_code]||"错误码:"+o.error_code),e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn"),e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn"));let i=o["event"];if(i)switch(i){case"incomingcall":e.sipcall.createAnswer({jsep:n,media:{audioSend:u(),videoSend:!1,audioRecv:!0,videoRecv:!0},success:function(t){let n={request:"accept",videoidentify:o["videoidentify"],playseq:parseInt(o["playseq"]),userToken:e.userToken};e.sipcall.send({message:n,jsep:t})},error:function(e){"NotAllowedError"==e.name&&alert("请检查PC设备的麦克风并允许浏览器使用它们,以便进行视频通话。")}});break;case"accepted":e.playSucTimeOutIndex=setTimeout((function(){let t=e.tagBox.parent();t.append('<div class="video-tip">网络环境较差,可能无法正常加载视频</div>')}),1e3*e.videoTipTimeOut);break;case"callfaild":break;case"ptz":break;case"av_control":break;case"start_av_record":o&&o.filename&&(e.videoFileName=o.filename,e.videoListener.dispatch("startRecordVideo",e));break;case"stop_av_record":o&&o.filename&&(e.videoFileName=o.filename,e.videoListener.dispatch("stopRecordVideo",e));break;case"ser_notify_resolution":o&&o.resolution&&(e.resolution=o.resolution,e.videoListener.dispatch("notifyresolution",e));break;case"change_resolution":o&&e.videoListener.dispatch("notifyResolutionChange",e);break;case"open_poccall":e.sipcall.createAnswer({jsep:n,media:{audioSend:u(),videoSend:!1,audioRecv:!0,videoRecv:!1},success:function(t){let n={request:"accept",userToken:e.userToken};e.sipcall.send({message:n,jsep:t})},error:function(e){}});break;case"ser_close_poccall":break;case"ser_stop_audio":e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn");break;case"close_down_audio":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn"),a("通话时间到");break;case"ser_notify_dispatch_close_ptop_poc":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");break;case"ser_close_ptop_poc":e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");break;case"ser_open_ptop_poc":e.tagBox.parent().find(".unsend-audio-btn").attr("class","send-audio-btn");break;case"ser_close_video":e.isClosing=!1,e.videoListener.dispatch("notifyCloseVideo",e);break;default:break}},onremotestream:function(n){t.attachMediaStream(e.tagBox.get(0),n)},onlocalstream:function(t){t.getAudioTracks()[0].enabled=!1,e.stream=t},oncleanup:function(){}}),e.tagBox.bind("canplay play playing",(function(){if(e.video){if(e.tagBox.is(":visible"))return;e.playSucTimeOutIndex>0&&clearTimeout(e.playSucTimeOutIndex),e.tagBox.parent().find(".video-tip").remove(),a("分屏"+(e.index+1)+" 播放成功"),e.tagBox.show(),e.tagBox.parent().find(".stream-loading").remove(),e.tagBox.parent().find(".info").show(),e.tagBox.parent().find(".info-self").show(),e.tagBox.parent().find(".operate-btn button").show(),e.isPlayBack&&e.tagBox.parent().find(".unrecv-audio-btn").hide(),e.tagBox.parent().find("button[name=screenVideo]")[0]&&e.tagBox.parent().find("button[name=screenVideo]")[0].classList.add("fullscreen-btn"),e.tagBox.parent().find("button[name=screenVideo]").attr("title","全屏"),e.tagBox.parent().find(".recv-audio-btn").attr("class","unrecv-audio-btn"),e.tagBox.parent().find(".send-audio-btn").attr("class","unsend-audio-btn");let t=this.videoWidth,n=this.videoHeight;t<=n&&"0"!=t&&e.tagBox.css("object-fit","contain")}}))},play:function(e){if(!e)return void d("视频ID不能为空");let t={request:"call",videoidentify:e,playseq:this.index,userToken:this.userToken,autoack:!0};this.sipcall.send({message:t}),this.video=e,this.isClosing=!1,this.playing=!0,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0;let n=this.index+1,r=document.getElementById("frame-decoded-"+n);r.style.display="none",this.framesDecodedLast=void 0,this.framesDecodedCount=0;let o=this.tagBox.parent();C(o,this),o.hasClass("loading")||o.addClass("loading").append('<div class="stream-loading">等待数据流传送...</div>'),o.find(".operate-btn .close-btn").show()},close:function(e,t){if(e||(this.isLockVideo=!1,this.tagBox.parent().find(".lock-video-btn").attr("class","unlock-video-btn")),C(this.tagBox.parent(),this),!this.playing)return;let n={request:"hangup",videoidentify:this.video,playseq:this.index,userToken:this.userToken};this.sipcall.send({message:n}),this.sipcall.hangup(),"4001"!=t&&this.tagBox.hide(),this.isClosing=!0,this.playing=!1,this.video=null,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0,document.getElementById("info-"+(Number(this.index)+Number(1)))&&(document.getElementById("info-"+(Number(this.index)+Number(1))).innerHTML=""),this.tagBox.parent().find(".info").hide(),document.getElementById("info-self-"+(Number(this.index)+Number(1)))&&(document.getElementById("info-self-"+(Number(this.index)+Number(1))).innerHTML=""),this.tagBox.parent().find(".info-self").hide(),this.tagBox.parent().find(".operate-btn button").hide(),this.tagBox.parent().removeClass("loading").find(".stream-loading").remove(),this.tagBox.css("object-fit",""),this.playSucTimeOutIndex>0&&clearTimeout(this.playSucTimeOutIndex),this.tagBox.parent().find(".video-tip").remove();var r=Number(this.index)+1,o=document.getElementById("frame-decoded-"+r);o.style.display="none",this.framesDecodedLast=void 0,this.framesDecodedCount=0},holder:function(e,t,n){if(!this.video||!this.playing)return void d("未选中播放的视频!");let r="up down left right upleft upright downleft downright zoomin zoomout focusnear focusfar irisopen irisclose pointset pointdel pointgoto scansetleft scansetright scansetspeed scanrun cruiseadd cruisedel cruisespeed cruisepausetime cruiserun",o=Number(r.split(" ").indexOf(e))+Number(1);if(!o||o<=0)return!1;let i={request:"ptz",videoidentify:this.video,playseq:this.index,userToken:this.userToken};i.cmd={speed:t.speed?t.speed:200,group:0,present:t.present?t.present:0,time:0,type:o},i.cmd.action=n?1:0,this.sipcall.send({message:i})},playback:function(e,t,n){if(!e)return void d("视频ID不能为空");let r={request:"av_playback",videoidentify:e,playseq:this.index,userToken:this.userToken,start_time:t,stop_time:n};this.sipcall.send({message:r}),this.video=e,this.playing=!0,this.packetsLostRate="0.00%",this.packetsLostSum=0,this.packetsReceivedSum=0,this.isPlayBack=!0;let o=this.tagBox.parent();C(o,this),o.hasClass("loading")||o.addClass("loading").append('<div class="stream-loading">等待数据流传送...</div>'),o.find(".operate-btn .close-btn").show()},playbackControl:function(e,t,n,r){let o=this,i={request:"av_control",videoidentify:e,playseq:o.index,userToken:o.userToken,start_time:r,rate:String(n),cmd:t};o.sipcall.send({message:i}),"stop"==t&&(o.close(),o.tagBox.hide(),o.playing=!1,o.video=null,o.packetsLostRate="0.00%",o.packetsLostSum=0,o.packetsReceivedSum=0,o.isPlayBack=!1,document.getElementById("info-"+(Number(o.index)+Number(1))).innerHTML="",document.getElementById("info-self-"+(Number(o.index)+Number(1))).innerHTML="",this.tagBox.parent().find(".operate-btn button").hide(),o.tagBox.parent().removeClass("loading").find(".stream-loading").remove(),o.tagBox.css("object-fit",""))},operateAudio:function(e){let t=this;if(!t.video)return void d("视频ID不能为空");let n={request:e,videoidentify:t.video,playseq:t.index,userToken:t.userToken};t.sipcall.send({message:n})},recordAv:function(e,t){let n=this;if(!n.video)return void d("视频ID不能为空");let r={request:e,videoidentify:n.video,playseq:n.index,userToken:n.userToken,businessid:t||null};n.sipcall.send({message:r})},changeResolution:function(e,t){let n=this;if(!n.video)return void d("视频ID不能为空");let r={request:e,videoidentify:n.video,playseq:n.index,resolution:t,userToken:n.userToken};n.sipcall.send({message:r})},pocCall:function(e,t,n){let r=this,o={request:e,pocno:t,playseq:r.index,center_tel:n,userToken:r.userToken};r.sipcall.send({message:o})},ptopPoc:function(e,t){let n=this,r={request:e,pocno:t,playseq:n.index,pocmember:n.video,userToken:n.userToken};n.sipcall.send({message:r})}},o()?b:w}))},8875:function(e,t,n){var r,o,i;(function(n,s){o=[],r=s,i="function"===typeof r?r.apply(t,o):r,void 0===i||(e.exports=i)})("undefined"!==typeof self&&self,(function(){function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(f){var n,r,o,i=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,s=/@([^@]*):(\d+):(\d+)\s*$/gi,a=i.exec(f.stack)||s.exec(f.stack),c=a&&a[1]||!1,d=a&&a[2]||!1,u=document.location.href.replace(document.location.hash,""),l=document.getElementsByTagName("script");c===u&&(n=document.documentElement.outerHTML,r=new RegExp("(?:[^\\n]+?\\n){0,"+(d-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=n.replace(r,"$1").trim());for(var p=0;p<l.length;p++){if("interactive"===l[p].readyState)return l[p];if(l[p].src===c)return l[p];if(c===u&&l[p].innerHTML&&l[p].innerHTML.trim()===o)return l[p]}return null}}return e}))},"9a22":function(e,t,n){(function(t,n){e.exports=n()})(0,(function(){var e={isString:function(e){return void 0!==e&&null!==e&&("string"===typeof e||e instanceof String)},isArray:function(e){return void 0!==e&&null!==e&&e instanceof Array},inArray:function(e,t){for(var n=0;n<t.length;++n)if(e===t[n])return n;return-1},setTimeout:function(e,t,n){return window.setTimeout((function(){try{e._debug("Invoking timed function",t),t()}catch(n){e._debug("Exception invoking timed function",t,n)}}),n)},clearTimeout:function(e){window.clearTimeout(e)}},t=function(){var e=[],t={};this.getTransportTypes=function(){return e.slice(0)},this.findTransportTypes=function(n,r,o){for(var i=[],s=0;s<e.length;++s){var a=e[s];!0===t[a].accept(n,r,o)&&i.push(a)}return i},this.negotiateTransport=function(n,r,o,i){for(var s=0;s<e.length;++s)for(var a=e[s],c=0;c<n.length;++c)if(a===n[c]){var d=t[a];if(!0===d.accept(r,o,i))return d}return null},this.add=function(n,r,o){for(var i=!1,s=0;s<e.length;++s)if(e[s]===n){i=!0;break}return i||("number"!==typeof o?e.push(n):e.splice(o,0,n),t[n]=r),!i},this.find=function(n){for(var r=0;r<e.length;++r)if(e[r]===n)return t[n];return null},this.remove=function(n){for(var r=0;r<e.length;++r)if(e[r]===n){e.splice(r,1);var o=t[n];return delete t[n],o}return null},this.clear=function(){e=[],t={}},this.reset=function(n){for(var r=0;r<e.length;++r)t[e[r]].reset(n)}},n=function(){var t,n,r;this.registered=function(e,r){t=e,n=r},this.unregistered=function(){t=null,n=null},this._debug=function(){n._debug.apply(n,arguments)},this._mixin=function(){return n._mixin.apply(n,arguments)},this.getConfiguration=function(){return n.getConfiguration()},this.getAdvice=function(){return n.getAdvice()},this.setTimeout=function(t,r){return e.setTimeout(n,t,r)},this.clearTimeout=function(t){e.clearTimeout(t)},this.convertToMessages=function(t){if(e.isString(t))try{return JSON.parse(t)}catch(n){throw this._debug("Could not convert to JSON the following string",'"'+t+'"'),n}if(e.isArray(t))return t;if(void 0===t||null===t)return[];if(t instanceof Object)return[t];throw"Conversion Error "+t+", typeof "+typeof t},this.accept=function(e,t,n){throw"Abstract"},this.getType=function(){return t},this.getURL=function(){return r},this.setURL=function(e){r=e},this.send=function(e,t){throw"Abstract"},this.reset=function(e){this._debug("Transport",t,"reset",e?"initial":"retry")},this.abort=function(){this._debug("Transport",t,"aborted")},this.toString=function(){return this.getType()}};n.derive=function(e){function t(){}return t.prototype=e,new t};var r=function(){var t=new n,r=n.derive(t),o=0,i=null,s=[],a=[];function c(e){while(a.length>0){var t=a[0],n=t[0],r=t[1];if(n.url!==e.url||n.sync!==e.sync)break;a.shift(),e.messages=e.messages.concat(n.messages),this._debug("Coalesced",n.messages.length,"messages from request",r.id)}}function d(e,t){if(this.transportSend(e,t),t.expired=!1,!e.sync){var n=this.getConfiguration().maxNetworkDelay,r=n;!0===t.metaConnect&&(r+=this.getAdvice().timeout),this._debug("Transport",this.getType(),"waiting at most",r,"ms for the response, maxNetworkDelay",n);var o=this;t.timeout=this.setTimeout((function(){t.expired=!0;var n="Request "+t.id+" of transport "+o.getType()+" exceeded "+r+" ms max network delay",i={reason:n},s=t.xhr;i.httpCode=o.xhrStatus(s),o.abortXHR(s),o._debug(n),o.complete(t,!1,t.metaConnect),e.onFailure(s,e.messages,i)}),r)}}function u(e){var t=++o,n={id:t,metaConnect:!1,envelope:e};s.length<this.getConfiguration().maxConnections-1?(s.push(n),d.call(this,e,n)):(this._debug("Transport",this.getType(),"queueing request",t,"envelope",e),a.push([e,n]))}function l(e){var t=e.id;if(this._debug("Transport",this.getType(),"metaConnect complete, request",t),null!==i&&i.id!==t)throw"Longpoll request mismatch, completing request "+t;i=null}function p(t,n){var r=e.inArray(t,s);if(r>=0&&s.splice(r,1),a.length>0){var o=a.shift(),i=o[0],d=o[1];if(this._debug("Transport dequeued request",d.id),n)this.getConfiguration().autoBatch&&c.call(this,i),u.call(this,i),this._debug("Transport completed request",t.id,i);else{var l=this;this.setTimeout((function(){l.complete(d,!1,d.metaConnect);var e={reason:"Previous request failed"},t=d.xhr;e.httpCode=l.xhrStatus(t),i.onFailure(t,i.messages,e)}),0)}}}function f(e){if(null!==i)throw"Concurrent metaConnect requests not allowed, request id="+i.id+" not yet completed";var t=++o;this._debug("Transport",this.getType(),"metaConnect send, request",t,"envelope",e);var n={id:t,metaConnect:!0,envelope:e};d.call(this,e,n),i=n}return r.complete=function(e,t,n){n?l.call(this,e):p.call(this,e,t)},r.transportSend=function(e,t){throw"Abstract"},r.transportSuccess=function(e,t,n){t.expired||(this.clearTimeout(t.timeout),this.complete(t,!0,t.metaConnect),n&&n.length>0?e.onSuccess(n):e.onFailure(t.xhr,e.messages,{httpCode:204}))},r.transportFailure=function(e,t,n){t.expired||(this.clearTimeout(t.timeout),this.complete(t,!1,t.metaConnect),e.onFailure(t.xhr,e.messages,n))},r.send=function(e,t){t?f.call(this,e):u.call(this,e)},r.abort=function(){t.abort();for(var e=0;e<s.length;++e){var n=s[e];n&&(this._debug("Aborting request",n),this.abortXHR(n.xhr)||this.transportFailure(n.envelope,n,{reason:"abort"}))}var r=i;r&&(this._debug("Aborting metaConnect request",r),this.abortXHR(r.xhr)||this.transportFailure(r.envelope,r,{reason:"abort"})),this.reset(!0)},r.reset=function(e){t.reset(e),i=null,s=[],a=[]},r.abortXHR=function(e){if(e)try{var t=e.readyState;return e.abort(),t!==XMLHttpRequest.UNSENT}catch(n){this._debug(n)}return!1},r.xhrStatus=function(e){if(e)try{return e.status}catch(t){this._debug(t)}return-1},r},o=function(){var e=new r,t=n.derive(e),o=!0;return t.accept=function(e,t,n){return o||!t},t.xhrSend=function(e){var t=new XMLHttpRequest;t.withCredentials=!0,t.open("POST",e.url,!0!==e.sync);var n=e.headers;if(n)for(var r in n)n.hasOwnProperty(r)&&t.setRequestHeader(r,n[r]);return t.setRequestHeader("Content-Type","application/json;charset=UTF-8"),t.onload=function(){200===t.status?e.onSuccess(t.responseText):e.onError(t.statusText)},t.onerror=function(){e.onError(t.statusText)},t.send(e.body),t},t.transportSend=function(e,t){this._debug("Transport",this.getType(),"sending request",t.id,"envelope",e);var n=this;try{var r=!0;t.xhr=this.xhrSend({transport:this,url:e.url,sync:e.sync,headers:this.getConfiguration().requestHeaders,body:JSON.stringify(e.messages),onSuccess:function(r){n._debug("Transport",n.getType(),"received response",r);var i=!1;try{var s=n.convertToMessages(r);0===s.length?(o=!1,n.transportFailure(e,t,{httpCode:204})):(i=!0,n.transportSuccess(e,t,s))}catch(c){if(n._debug(c),!i){o=!1;var a={exception:c};a.httpCode=n.xhrStatus(t.xhr),n.transportFailure(e,t,a)}}},onError:function(i,s){n._debug("Transport",n.getType(),"received error",i,s),o=!1;var a={reason:i,exception:s};a.httpCode=n.xhrStatus(t.xhr),r?n.setTimeout((function(){n.transportFailure(e,t,a)}),0):n.transportFailure(e,t,a)}}),r=!1}catch(i){o=!1,this.setTimeout((function(){n.transportFailure(e,t,{exception:i})}),0)}},t.reset=function(t){e.reset(t),o=!0},t},i=function(){var e=new r,t=n.derive(e),o=0;function i(e,t,n){var r=this;return function(){r.transportFailure(e,t,"error",n)}}return t.accept=function(e,t,n){return!0},t.jsonpSend=function(e){var t=document.getElementsByTagName("head")[0],n=document.createElement("script"),r="_cometd_jsonp_"+o++;window[r]=function(o){t.removeChild(n),delete window[r],e.onSuccess(o)};var i=e.url;i+=i.indexOf("?")<0?"?":"&",i+="jsonp="+r,i+="&message="+e.body,n.src=i,n.async=!0!==e.sync,n.type="application/javascript",n.onerror=function(t){e.onError("jsonp "+t.type)},t.appendChild(n)},t.transportSend=function(e,t){var n=this,r=0,o=e.messages.length,s=[];while(o>0){var a=JSON.stringify(e.messages.slice(r,r+o)),c=e.url.length+encodeURI(a).length,d=this.getConfiguration().maxURILength;if(c>d){if(1===o){var u="Bayeux message too big ("+c+" bytes, max is "+d+") for transport "+this.getType();return void this.setTimeout(i.call(this,e,t,u),0)}--o}else s.push(o),r+=o,o=e.messages.length-r}var l=e;if(s.length>1){var p=0,f=s[0];this._debug("Transport",this.getType(),"split",e.messages.length,"messages into",s.join(" + ")),l=this._mixin(!1,{},e),l.messages=e.messages.slice(p,f),l.onSuccess=e.onSuccess,l.onFailure=e.onFailure;for(var m=1;m<s.length;++m){var h=this._mixin(!1,{},e);p=f,f+=s[m],h.messages=e.messages.slice(p,f),h.onSuccess=e.onSuccess,h.onFailure=e.onFailure,this.send(h,t.metaConnect)}}this._debug("Transport",this.getType(),"sending request",t.id,"envelope",l);try{var g=!0;this.jsonpSend({transport:this,url:l.url,sync:l.sync,headers:this.getConfiguration().requestHeaders,body:JSON.stringify(l.messages),onSuccess:function(e){var r=!1;try{var o=n.convertToMessages(e);0===o.length?n.transportFailure(l,t,{httpCode:204}):(r=!0,n.transportSuccess(l,t,o))}catch(u){n._debug(u),r||n.transportFailure(l,t,{exception:u})}},onError:function(e,r){var o={reason:e,exception:r};g?n.setTimeout((function(){n.transportFailure(l,t,o)}),0):n.transportFailure(l,t,o)}}),g=!1}catch(v){this.setTimeout((function(){n.transportFailure(l,t,{exception:v})}),0)}},t},s=function(){var t,r=new n,o=n.derive(r),i=!0,s=!1,a=!0,c=null,d=null,u=!1,l=null;function p(e,t){e&&(this.webSocketClose(e,t.code,t.reason),this.onClose(e,t))}function f(e){return e===d||e===c}function m(e,t,n){for(var r=[],o=0;o<t.messages.length;++o){var i=t.messages[o];i.id&&r.push(i.id)}e.envelopes[r.join(",")]=[t,n],this._debug("Transport",this.getType(),"stored envelope, envelopes",e.envelopes)}function h(e){if(!d){var n=t.getURL().replace(/^http/,"ws");this._debug("Transport",this.getType(),"connecting to URL",n);try{var r=t.getConfiguration().protocol;e.webSocket=r?new window.WebSocket(n,r):new window.WebSocket(n),d=e}catch(g){throw i=!1,this._debug("Exception while creating WebSocket object",g),g}a=!1!==t.getConfiguration().stickyReconnect;var o=this,u=t.getConfiguration().connectTimeout;u>0&&(e.connectTimer=this.setTimeout((function(){t._debug("Transport",o.getType(),"timed out while connecting to URL",n,":",u,"ms"),p.call(o,e,{code:1e3,reason:"Connect Timeout"})}),u));var l=function(){t._debug("WebSocket onopen",e),e.connectTimer&&o.clearTimeout(e.connectTimer),f(e)?(d=null,c=e,s=!0,o.onOpen(e)):(t._warn("Closing extra WebSocket connection",this,"active connection",c),p.call(o,e,{code:1e3,reason:"Extra Connection"}))},m=function(n){n=n||{code:1e3},t._debug("WebSocket onclose",e,n,"connecting",d,"current",c),e.connectTimer&&o.clearTimeout(e.connectTimer),o.onClose(e,n)},h=function(n){t._debug("WebSocket onmessage",n,e),o.onMessage(e,n)};e.webSocket.onopen=l,e.webSocket.onclose=m,e.webSocket.onerror=function(){m({code:1e3,reason:"Error"})},e.webSocket.onmessage=h,this._debug("Transport",this.getType(),"configured callbacks on",e)}}function g(e,n,r){var o=JSON.stringify(n.messages);e.webSocket.send(o),this._debug("Transport",this.getType(),"sent",n,"metaConnect =",r);var i=this.getConfiguration().maxNetworkDelay,s=i;r&&(s+=this.getAdvice().timeout,u=!0);for(var a=this,c=[],d=0;d<n.messages.length;++d)(function(){var r=n.messages[d];r.id&&(c.push(r.id),e.timeouts[r.id]=a.setTimeout((function(){t._debug("Transport",a.getType(),"timing out message",r.id,"after",s,"on",e),p.call(a,e,{code:1e3,reason:"Message Timeout"})}),s))})();this._debug("Transport",this.getType(),"waiting at most",s,"ms for messages",c,"maxNetworkDelay",i,", timeouts:",e.timeouts)}function v(e,t,n){try{null===e?(e=d||{envelopes:{},timeouts:{}},m.call(this,e,t,n),h.call(this,e)):(m.call(this,e,t,n),g.call(this,e,t,n))}catch(o){var r=this;this.setTimeout((function(){p.call(r,e,{code:1e3,reason:"Exception",exception:o})}),0)}}return o.reset=function(e){r.reset(e),i=!0,e&&(s=!1),a=!0,c=null,d=null,u=!1},o._notifySuccess=function(e,t){e.call(this,t)},o._notifyFailure=function(e,t,n,r){e.call(this,t,n,r)},o.onOpen=function(e){var t=e.envelopes;for(var n in this._debug("Transport",this.getType(),"opened",e,"pending messages",t),t)if(t.hasOwnProperty(n)){var r=t[n],o=r[0],i=r[1];l=o.onSuccess,g.call(this,e,o,i)}},o.onMessage=function(t,n){this._debug("Transport",this.getType(),"received websocket message",n,t);for(var r=!1,o=this.convertToMessages(n.data),i=[],s=0;s<o.length;++s){var a=o[s];if((/^\/meta\//.test(a.channel)||void 0===a.data)&&a.id){i.push(a.id);var c=t.timeouts[a.id];c&&(this.clearTimeout(c),delete t.timeouts[a.id],this._debug("Transport",this.getType(),"removed timeout for message",a.id,", timeouts",t.timeouts))}"/meta/connect"===a.channel&&(u=!1),"/meta/disconnect"!==a.channel||u||(r=!0)}for(var d=!1,p=t.envelopes,f=0;f<i.length;++f){var m=i[f];for(var h in p)if(p.hasOwnProperty(h)){var g=h.split(","),v=e.inArray(m,g);if(v>=0){d=!0,g.splice(v,1);var y=p[h][0],b=p[h][1];delete p[h],g.length>0&&(p[g.join(",")]=[y,b]);break}}}d&&this._debug("Transport",this.getType(),"removed envelope, envelopes",p),this._notifySuccess(l,o),r&&this.webSocketClose(t,1e3,"Disconnect")},o.onClose=function(e,t){this._debug("Transport",this.getType(),"closed",e,t),f(e)&&(i=a&&s,d=null,c=null);var n=e.timeouts;for(var r in e.timeouts={},n)n.hasOwnProperty(r)&&this.clearTimeout(n[r]);var o=e.envelopes;for(var l in e.envelopes={},o)if(o.hasOwnProperty(l)){var p=o[l][0],m=o[l][1];m&&(u=!1);var h={websocketCode:t.code,reason:t.reason};t.exception&&(h.exception=t.exception),this._notifyFailure(p.onFailure,e,p.messages,h)}},o.registered=function(e,n){r.registered(e,n),t=n},o.accept=function(e,n,r){return this._debug("Transport",this.getType(),"accept, supported:",i),i&&!!window.WebSocket&&!1!==t.websocketEnabled},o.send=function(e,t){this._debug("Transport",this.getType(),"sending",e,"metaConnect =",t),v.call(this,c,e,t)},o.webSocketClose=function(e,t,n){try{e.webSocket&&e.webSocket.close(t,n)}catch(r){this._debug(r)}},o.abort=function(){r.abort(),p.call(this,c,{code:1e3,reason:"Abort"}),this.reset(!0)},o},a=function(n){var r,a,c,d,u,l=this,p=n||"default",f=!1,m=new t,h="disconnected",g=0,v=null,y=0,b=[],w=!1,T=0,S={},C=0,P=null,x=[],k={},D={},_={},A=!1,I=!1,R=0,N=0,O={protocol:null,stickyReconnect:!0,connectTimeout:0,maxConnections:2,backoffIncrement:1e3,maxBackoff:6e4,logLevel:"info",reverseIncomingExtensions:!0,maxNetworkDelay:1e4,requestHeaders:{},appendMessageTypeToURL:!0,autoBatch:!1,urls:{},maxURILength:2e3,advice:{timeout:6e4,interval:0,reconnect:void 0,maxInterval:0}};function E(e,t){try{return e[t]}catch(n){return}}function M(t){return e.isString(t)}function L(e){return void 0!==e&&null!==e&&"function"===typeof e}function j(e,t){var n="";while(--t>0){if(e>=Math.pow(10,t))break;n+="0"}return n+=e,n}function q(e,t){if(window.console){var n=window.console[e];if(L(n)){var r=new Date;[].splice.call(t,0,0,j(r.getHours(),2)+":"+j(r.getMinutes(),2)+":"+j(r.getSeconds(),2)+"."+j(r.getMilliseconds(),3)),n.apply(window.console,t)}}}function V(e){return/(^https?:\/\/)?(((\[[^\]]+\])|([^:\/\?#]+))(:(\d+))?)?([^\?#]*)(.*)?/.exec(e)}function B(e){l._debug("Configuring cometd object with",e),M(e)&&(e={url:e}),e||(e={}),O=l._mixin(!1,O,e);var t=l.getURL();if(!t)throw"Missing required configuration parameter 'url' specifying the Bayeux server URL";var n=V(t),r=n[2],o=n[8],i=n[9];if(f=l._isCrossDomain(r),O.appendMessageTypeToURL)if(void 0!==i&&i.length>0)l._info("Appending message type to URI "+o+i+" is not supported, disabling 'appendMessageTypeToURL' configuration"),O.appendMessageTypeToURL=!1;else{var s=o.split("/"),a=s.length-1;o.match(/\/$/)&&(a-=1),s[a].indexOf(".")>=0&&(l._info("Appending message type to URI "+o+" is not supported, disabling 'appendMessageTypeToURL' configuration"),O.appendMessageTypeToURL=!1)}}function F(e){if(e){var t=S[e.channel];t&&t[e.id]&&(delete t[e.id],l._debug("Removed",e.listener?"listener":"subscription",e))}}function W(e){e&&!e.listener&&F(e)}function H(){for(var e in S)if(S.hasOwnProperty(e)){var t=S[e];if(t)for(var n in t)t.hasOwnProperty(n)&&W(t[n])}}function U(e){h!==e&&(l._debug("Status",h,"->",e),h=e)}function z(){return"disconnecting"===h||"disconnected"===h}function G(){var e=++g;return""+e}function J(e,t,n,r,o){try{return t.call(e,r)}catch(s){var i=l.onExtensionException;if(L(i)){l._debug("Invoking extension exception handler",n,s);try{i.call(l,s,n,o,r)}catch(a){l._info("Exception during execution of extension exception handler",n,a)}}else l._info("Exception during execution of extension",n,s);return r}}function $(e){for(var t=0;t<x.length;++t){if(void 0===e||null===e)break;var n=O.reverseIncomingExtensions?x.length-1-t:t,r=x[n],o=r.extension.incoming;if(L(o)){var i=J(r.extension,o,r.name,e,!1);e=void 0===i?e:i}}return e}function Q(e){for(var t=0;t<x.length;++t){if(void 0===e||null===e)break;var n=x[t],r=n.extension.outgoing;if(L(r)){var o=J(n.extension,r,n.name,e,!0);e=void 0===o?e:o}}return e}function K(e,t){var n=S[e];if(n)for(var r in n)if(n.hasOwnProperty(r)){var o=n[r];if(o)try{o.callback.call(o.scope,t)}catch(s){var i=l.onListenerException;if(L(i)){l._debug("Invoking listener exception handler",o,s);try{i.call(l,s,o,o.listener,t)}catch(a){l._info("Exception during execution of listener exception handler",o,a)}}else l._info("Exception during execution of listener",o,t,s)}}}function X(e,t){K(e,t);for(var n=e.split("/"),r=n.length-1,o=r;o>0;--o){var i=n.slice(0,o).join("/")+"/*";o===r&&K(i,t),i+="*",K(i,t)}}function Y(){null!==P&&e.clearTimeout(P),P=null}function Z(t,n){Y();var r=k.interval+n;l._debug("Function scheduled in",r,"ms, interval =",k.interval,"backoff =",C,t),P=e.setTimeout(l,t,r)}function ee(e,t,n,o){for(var i=0;i<t.length;++i){var s=t[i],a=s.id;v&&(s.clientId=v),s=Q(s),void 0!==s&&null!==s?(s.id=a,t[i]=s):(delete D[a],t.splice(i--,1))}if(0!==t.length){var c=l.getURL();O.appendMessageTypeToURL&&(c.match(/\/$/)||(c+="/"),o&&(c+=o));var p={url:c,sync:e,messages:t,onSuccess:function(e){try{d.call(l,e)}catch(t){l._info("Exception during handling of messages",t)}},onFailure:function(e,t,n){try{var r=l.getTransport();n.connectionType=r?r.getType():"unknown",u.call(l,e,t,n)}catch(o){l._info("Exception during handling of failure",o)}}};l._debug("Send",p),r.send(p,n)}}function te(e){y>0||!0===w?b.push(e):ee(!1,[e],!1)}function ne(){C=0}function re(){return C<O.maxBackoff&&(C+=O.backoffIncrement),C}function oe(){++y,l._debug("Starting batch, depth",y)}function ie(){var e=b;b=[],e.length>0&&ee(!1,e,!1)}function se(){if(--y,l._debug("Ending batch, depth",y),y<0)throw"Calls to startBatch() and endBatch() are not paired";0!==y||z()||w||ie()}function ae(){if(!z()){var e={id:G(),channel:"/meta/connect",connectionType:r.getType()};I||(e.advice={timeout:0}),U("connecting"),l._debug("Connect sent",e),ee(!1,[e],!0,"connect"),U("connected")}}function ce(e){U("connecting"),Z((function(){ae()}),e)}function de(e){e&&(k=l._mixin(!1,{},O.advice,e),l._debug("New advice",k))}function ue(e){if(Y(),e&&r&&r.abort(),v=null,U("disconnected"),y=0,ne(),r=null,A=!1,I=!1,b.length>0){var t=b;b=[],u.call(l,void 0,t,{reason:"Disconnected"})}}function le(e,t,n){var r=l.onTransportException;if(L(r)){l._debug("Invoking transport exception handler",e,t,n);try{r.call(l,n,e,t)}catch(o){l._info("Exception during execution of transport exception handler",o)}}}function pe(e,t){L(e)&&(t=e,e=void 0),v=null,H(),z()&&(m.reset(!0),de(O.advice)),y=0,w=!0,a=e,c=t;var n="1.0",o=l.getURL(),i=m.findTransportTypes(n,f,o),s={id:G(),version:n,minimumVersion:n,channel:"/meta/handshake",supportedConnectionTypes:i,advice:{timeout:k.timeout,interval:k.interval}},d=l._mixin(!1,{},a,s);if(l._putCallback(d.id,t),!r&&(r=m.negotiateTransport(i,n,f,o),!r)){var u="Could not find initial transport among: "+m.getTransportTypes();throw l._warn(u),u}l._debug("Initial transport is",r.getType()),U("handshaking"),l._debug("Handshake sent",d),ee(!1,[d],!1,"handshake")}function fe(e){U("handshaking"),w=!0,Z((function(){pe(a,c)}),e)}function me(e,t){try{e.call(l,t)}catch(r){var n=l.onCallbackException;if(L(n)){l._debug("Invoking callback exception handler",r);try{n.call(l,r,t)}catch(o){l._info("Exception during execution of callback exception handler",o)}}else l._info("Exception during execution of message callback",r)}}function he(e){var t=l._getCallback([e.id]);L(t)&&(delete D[e.id],me(t,e))}function ge(t){var n=_[t.id];if(delete _[t.id],n){l._debug("Handling remote call response for",t,"with context",n);var r=n.timeout;r&&e.clearTimeout(r);var o=n.callback;if(L(o))return me(o,t),!0}return!1}function ve(e){l._debug("Transport failure handling",e),e.transport&&(r=e.transport),e.url&&r.setURL(e.url);var t=e.action,n=e.delay||0;switch(t){case"handshake":fe(n);break;case"retry":ce(n);break;case"none":ue(!0);break;default:throw"Unknown action "+t}}function ye(e,t){he(e),X("/meta/handshake",e),X("/meta/unsuccessful",e),z()&&(t.action="none"),l.onTransportFailure.call(l,e,t,ve)}function be(e){var t=l.getURL();if(e.successful){var n=l._isCrossDomain(V(t)[2]),o=m.negotiateTransport(e.supportedConnectionTypes,e.version,n,t);if(null===o)return e.successful=!1,void ye(e,{cause:"negotiation",action:"none",transport:null});r!==o&&(l._debug("Transport",r.getType(),"->",o.getType()),r=o),v=e.clientId,w=!1,ie(),e.reestablish=A,A=!0,he(e),X("/meta/handshake",e),N=e["x-messages"]||0;var i=z()?"none":k.reconnect||"retry";switch(i){case"retry":ne(),0===N?ce(0):l._debug("Processing",N,"handshake-delivered messages");break;case"none":ue(!0);break;default:throw"Unrecognized advice action "+i}}else ye(e,{cause:"unsuccessful",action:k.reconnect||"handshake",transport:r})}function we(e){ye(e,{cause:"failure",action:"handshake",transport:null})}function Te(e,t){X("/meta/connect",e),X("/meta/unsuccessful",e),z()&&(t.action="none"),l.onTransportFailure.call(l,e,t,ve)}function Se(e){if(I=e.successful,I){X("/meta/connect",e);var t=z()?"none":k.reconnect||"retry";switch(t){case"retry":ne(),ce(C);break;case"none":ue(!1);break;default:throw"Unrecognized advice action "+t}}else Te(e,{cause:"unsuccessful",action:k.reconnect||"retry",transport:r})}function Ce(e){I=!1,Te(e,{cause:"failure",action:"retry",transport:null})}function Pe(e){ue(!0),he(e),X("/meta/disconnect",e),X("/meta/unsuccessful",e)}function xe(e){e.successful?(ue(!1),he(e),X("/meta/disconnect",e)):Pe(e)}function ke(e){Pe(e)}function De(e){var t=S[e.subscription];if(t)for(var n in t)if(t.hasOwnProperty(n)){var r=t[n];r&&!r.listener&&(delete t[n],l._debug("Removed failed subscription",r))}he(e),X("/meta/subscribe",e),X("/meta/unsuccessful",e)}function _e(e){e.successful?(he(e),X("/meta/subscribe",e)):De(e)}function Ae(e){De(e)}function Ie(e){he(e),X("/meta/unsubscribe",e),X("/meta/unsuccessful",e)}function Re(e){e.successful?(he(e),X("/meta/unsubscribe",e)):Ie(e)}function Ne(e){Ie(e)}function Oe(e){ge(e)||(he(e),X("/meta/publish",e),X("/meta/unsuccessful",e))}function Ee(e){void 0!==e.data?ge(e)||(X(e.channel,e),N>0&&(--N,0===N&&(l._debug("Processed last handshake-delivered message"),ce(0)))):void 0===e.successful?l._warn("Unknown Bayeux Message",e):e.successful?(he(e),X("/meta/publish",e)):Oe(e)}function Me(e){Oe(e)}function Le(e){if(R=0,e=$(e),void 0!==e&&null!==e){de(e.advice);var t=e.channel;switch(t){case"/meta/handshake":be(e);break;case"/meta/connect":Se(e);break;case"/meta/disconnect":xe(e);break;case"/meta/subscribe":_e(e);break;case"/meta/unsubscribe":Re(e);break;default:Ee(e);break}}}function je(e){var t=S[e];if(t)for(var n in t)if(t.hasOwnProperty(n)&&t[n])return!0;return!1}function qe(e,t){var n={scope:e,method:t};if(L(e))n.scope=void 0,n.method=e;else if(M(t)){if(!e)throw"Invalid scope "+e;if(n.method=e[t],!L(n.method))throw"Invalid callback "+t+" for scope "+e}else if(!L(t))throw"Invalid callback "+t;return n}function Ve(e,t,n,r){var o=qe(t,n);l._debug("Adding",r?"listener":"subscription","on",e,"with scope",o.scope,"and callback",o.method);var i=++T,s={id:i,channel:e,scope:o.scope,callback:o.method,listener:r},a=S[e];return a||(a={},S[e]=a),a[i]=s,l._debug("Added",r?"listener":"subscription",s),s}this._mixin=function(e,t,n){for(var r=t||{},o=2;o<arguments.length;++o){var i=arguments[o];if(void 0!==i&&null!==i)for(var s in i)if(i.hasOwnProperty(s)){var a=E(i,s),c=E(r,s);if(a===t)continue;if(void 0===a)continue;if(e&&"object"===typeof a&&null!==a)if(a instanceof Array)r[s]=this._mixin(e,c instanceof Array?c:[],a);else{var d="object"!==typeof c||c instanceof Array?{}:c;r[s]=this._mixin(e,d,a)}else r[s]=a}}return r},this._warn=function(){q("warn",arguments)},this._info=function(){"warn"!==O.logLevel&&q("info",arguments)},this._debug=function(){"debug"===O.logLevel&&q("debug",arguments)},this._isCrossDomain=function(e){return e&&e!==window.location.host},this.send=te,this._getCallback=function(e){return D[e]},this._putCallback=function(e,t){var n=this._getCallback(e);return L(t)&&(D[e]=t),n},this.onTransportFailure=function(e,t,n){this._debug("Transport failure",t,"for",e);var o=this.getTransportRegistry(),i=this.getURL(),s=this._isCrossDomain(V(i)[2]),a="1.0",c=o.findTransportTypes(a,s,i);if("none"===t.action){if("/meta/handshake"===e.channel&&!t.transport){var d="Could not negotiate transport, client=["+c+"], server=["+e.supportedConnectionTypes+"]";this._warn(d),le(r.getType(),null,{reason:d,connectionType:r.getType(),transport:r})}}else if(t.delay=this.getBackoffPeriod(),"/meta/handshake"===e.channel){if(!t.transport){var u=o.negotiateTransport(c,a,s,i);u?(this._debug("Transport",r.getType(),"->",u.getType()),le(r.getType(),u.getType(),e.failure),t.action="handshake",t.transport=u):(this._warn("Could not negotiate transport, client=["+c+"]"),le(r.getType(),null,e.failure),t.action="none")}"none"!==t.action&&this.increaseBackoffPeriod()}else{var p=(new Date).getTime();if(0===R&&(R=p),"retry"===t.action){t.delay=this.increaseBackoffPeriod();var f=k.maxInterval;if(f>0){var m=k.timeout+k.interval+f,h=p-R;h+C>m&&(t.action="handshake")}}"handshake"===t.action&&(t.delay=0,o.reset(!1),this.resetBackoffPeriod())}n.call(l,t)},this.receive=Le,d=function(e){l._debug("Received",e);for(var t=0;t<e.length;++t){var n=e[t];Le(n)}},u=function(e,t,n){l._debug("handleFailure",e,t,n),n.transport=e;for(var r=0;r<t.length;++r){var o=t[r],i={id:o.id,successful:!1,channel:o.channel,failure:n};switch(n.message=o,o.channel){case"/meta/handshake":we(i);break;case"/meta/connect":Ce(i);break;case"/meta/disconnect":ke(i);break;case"/meta/subscribe":i.subscription=o.subscription,Ae(i);break;case"/meta/unsubscribe":i.subscription=o.subscription,Ne(i);break;default:Me(i);break}}},this.registerTransport=function(e,t,n){var r=m.add(e,t,n);return r&&(this._debug("Registered transport",e),L(t.registered)&&t.registered(e,this)),r},this.unregisterTransport=function(e){var t=m.remove(e);return null!==t&&(this._debug("Unregistered transport",e),L(t.unregistered)&&t.unregistered()),t},this.unregisterTransports=function(){m.clear()},this.getTransportTypes=function(){return m.getTransportTypes()},this.findTransport=function(e){return m.find(e)},this.getTransportRegistry=function(){return m},this.configure=function(e){B.call(this,e)},this.init=function(e,t){this.configure(e),this.handshake(t)},this.handshake=function(e,t){if("disconnected"!==h)throw"Illegal state: handshaken";pe(e,t)},this.disconnect=function(e,t,n){if(!z()){"boolean"!==typeof e&&(n=t,t=e,e=!1),L(t)&&(n=t,t=void 0);var r={id:G(),channel:"/meta/disconnect"},o=this._mixin(!1,{},t,r);l._putCallback(o.id,n),U("disconnecting"),ee(!0===e,[o],!1,"disconnect")}},this.startBatch=function(){oe()},this.endBatch=function(){se()},this.batch=function(e,t){var n=qe(e,t);this.startBatch();try{n.method.call(n.scope),this.endBatch()}catch(r){throw this._info("Exception during execution of batch",r),this.endBatch(),r}},this.addListener=function(e,t,n){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";return Ve(e,t,n,!0)},this.removeListener=function(e){if(!e||!e.channel||!("id"in e))throw"Invalid argument: expected subscription, not "+e;F(e)},this.clearListeners=function(){S={}},this.subscribe=function(e,t,n,r,o){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";if(z())throw"Illegal state: disconnected";L(t)&&(o=r,r=n,n=t,t=void 0),L(r)&&(o=r,r=void 0);var i=!je(e),s=Ve(e,t,n,!1);if(i){var a={id:G(),channel:"/meta/subscribe",subscription:e},c=this._mixin(!1,{},r,a);l._putCallback(c.id,o),te(c)}return s},this.unsubscribe=function(e,t,n){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(z())throw"Illegal state: disconnected";L(t)&&(n=t,t=void 0),this.removeListener(e);var r=e.channel;if(!je(r)){var o={id:G(),channel:"/meta/unsubscribe",subscription:r},i=this._mixin(!1,{},t,o);l._putCallback(i.id,n),te(i)}},this.resubscribe=function(e,t){if(W(e),e)return this.subscribe(e.channel,e.scope,e.callback,t)},this.clearSubscriptions=function(){H()},this.publish=function(e,t,n,r){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(!M(e))throw"Illegal argument type: channel must be a string";if(/^\/meta\//.test(e))throw"Illegal argument: cannot publish to meta channels";if(z())throw"Illegal state: disconnected";L(t)?(r=t,t={},n=void 0):L(n)&&(r=n,n=void 0);var o={id:G(),channel:e,data:t},i=this._mixin(!1,{},n,o);l._putCallback(i.id,r),te(i)},this.publishBinary=function(e,t,n,r,o){L(t)?(o=t,t=new ArrayBuffer(0),n=!0,r=void 0):L(n)?(o=n,n=!0,r=void 0):L(r)&&(o=r,r=void 0);var i={meta:r,data:t,last:n},s={ext:{binary:{}}};this.publish(e,i,s,o)},this.remoteCall=function(t,n,r,o,i){if(arguments.length<1)throw"Illegal arguments number: required 1, got "+arguments.length;if(!M(t))throw"Illegal argument type: target must be a string";if(z())throw"Illegal state: disconnected";if(L(n)?(i=n,n={},r=O.maxNetworkDelay,o=void 0):L(r)?(i=r,r=O.maxNetworkDelay,o=void 0):L(o)&&(i=o,o=void 0),"number"!==typeof r)throw"Illegal argument type: timeout must be a number";t.match(/^\//)||(t="/"+t);var s="/service"+t,a={id:G(),channel:s,data:n},c=this._mixin(!1,{},o,a),d={callback:i};r>0&&(d.timeout=e.setTimeout(l,(function(){l._debug("Timing out remote call",c,"after",r,"ms"),Oe({id:c.id,error:"406::timeout",successful:!1,failure:{message:c,reason:"Remote Call Timeout"}})}),r),l._debug("Scheduled remote call timeout",c,"in",r,"ms")),_[c.id]=d,te(c)},this.remoteCallBinary=function(e,t,n,r,o,i){L(t)?(i=t,t=new ArrayBuffer(0),n=!0,r=void 0,o=O.maxNetworkDelay):L(n)?(i=n,n=!0,r=void 0,o=O.maxNetworkDelay):L(r)?(i=r,r=void 0,o=O.maxNetworkDelay):L(o)&&(i=o,o=O.maxNetworkDelay);var s={meta:r,data:t,last:n},a={ext:{binary:{}}};this.remoteCall(e,s,o,a,i)},this.getStatus=function(){return h},this.isDisconnected=z,this.setBackoffIncrement=function(e){O.backoffIncrement=e},this.getBackoffIncrement=function(){return O.backoffIncrement},this.getBackoffPeriod=function(){return C},this.increaseBackoffPeriod=function(){return re()},this.resetBackoffPeriod=function(){ne()},this.setLogLevel=function(e){O.logLevel=e},this.registerExtension=function(e,t){if(arguments.length<2)throw"Illegal arguments number: required 2, got "+arguments.length;if(!M(e))throw"Illegal argument type: extension name must be a string";for(var n=!1,r=0;r<x.length;++r){var o=x[r];if(o.name===e){n=!0;break}}return n?(this._info("Could not register extension with name",e,"since another extension with the same name already exists"),!1):(x.push({name:e,extension:t}),this._debug("Registered extension",e),L(t.registered)&&t.registered(e,this),!0)},this.unregisterExtension=function(e){if(!M(e))throw"Illegal argument type: extension name must be a string";for(var t=!1,n=0;n<x.length;++n){var r=x[n];if(r.name===e){x.splice(n,1),t=!0,this._debug("Unregistered extension",e);var o=r.extension;L(o.unregistered)&&o.unregistered();break}}return t},this.getExtension=function(e){for(var t=0;t<x.length;++t){var n=x[t];if(n.name===e)return n.extension}return null},this.getName=function(){return p},this.getClientId=function(){return v},this.getURL=function(){if(r){var e=r.getURL();if(e)return e;if(e=O.urls[r.getType()],e)return e}return O.url},this.getTransport=function(){return r},this.getConfiguration=function(){return this._mixin(!0,{},O)},this.getAdvice=function(){return this._mixin(!0,{},k)},window.WebSocket&&this.registerTransport("websocket",new s),this.registerTransport("long-polling",new o),this.registerTransport("callback-polling",new i)},c=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",".","-",":","+","=","^","!","/","*","?","&","<",">","(",")","[","]","{","}","@","%","$","#"],d=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0],u={encode:function(e){var t=null;if(e instanceof ArrayBuffer?t=e:e.buffer instanceof ArrayBuffer?t=e.buffer:Array.isArray(e)&&(t=new Uint8Array(e).buffer),null==t)throw"Cannot Z85 encode "+e;for(var n=t.byteLength,r=n%4,o=4-(0===r?4:r),i=new DataView(t),s="",a=0,d=0;d<n+o;++d){var u=d>=n;if(a=256*a+(u?0:i.getUint8(d)),(d+1)%4===0){for(var l=52200625,p=5;p>0;--p){if(!u||p>o){var f=Math.floor(a/l)%85;s+=c[f]}l/=85}a=0}}return s},decode:function(e){for(var t=e.length%5,n=5-(0===t?5:t),r=0;r<n;++r)e+=c[c.length-1];for(var o=e.length,i=new ArrayBuffer(4*o/5-n),s=new DataView(i),a=0,u=0,l=0,p=0;p<o;++p){var f=e.charCodeAt(u++)-32;if(a=85*a+d[f],u%5===0){var m=16777216;while(m>=1)l<s.byteLength&&s.setUint8(l++,Math.floor(a/m)%256),m/=256;a=0}}return i}};return{CometD:a,Transport:n,RequestTransport:r,LongPollingTransport:o,CallbackPollingTransport:i,WebSocketTransport:s,Utils:e,Z85:u}}))},c297:function(e,t){r.sessions={},r.isExtensionEnabled=function(){if(navigator.mediaDevices&&navigator.mediaDevices.getDisplayMedia)return!0;if(window.navigator.userAgent.match("Chrome")){var e=parseInt(window.navigator.userAgent.match(/Chrome\/(.*) /)[1],10),t=33;return window.navigator.userAgent.match("Linux")&&(t=35),e>=26&&e<=t||r.extension.isInstalled()}return!0};var n={extensionId:"hapfgfdkleiggjjpfpenajgdnfckjpaj",isInstalled:function(){return null!==document.querySelector("#janus-extension-installed")},getScreen:function(e){var t=window.setTimeout((function(){return error=new Error("NavigatorUserMediaError"),error.name='The required Chrome extension is not installed: click <a href="#">here</a> to install it. (NOTE: this will need you to refresh the page)',e(error)}),1e3);this.cache[t]=e,window.postMessage({type:"janusGetScreen",id:t},"*")},init:function(){var e={};this.cache=e,window.addEventListener("message",(function(t){if(t.origin==window.location.origin)if("janusGotScreen"==t.data.type&&e[t.data.id]){var n=e[t.data.id];if(delete e[t.data.id],""===t.data.sourceId){var r=new Error("NavigatorUserMediaError");r.name="You cancelled the request for permission, giving up...",n(r)}else n(null,t.data.sourceId)}else"janusGetScreenPending"==t.data.type&&window.clearTimeout(t.data.id)}))}};function r(e){if(void 0===r.initDone)return e.error("Library not initialized"),{};if(!r.isWebrtcSupported())return e.error("WebRTC not supported by this browser"),{};if(r.log("Library initialized: "+r.initDone),e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e.destroyed="function"==typeof e.destroyed?e.destroyed:r.noop,null===e.server||void 0===e.server)return e.error("Invalid server url"),{};var t=!1,n=null,o={},i=null,s=null,a=0,c=e.server;r.isArray(c)?(r.log("Multiple servers provided ("+c.length+"), will use the first that works"),c=null,s=e.server,r.debug(s)):0===c.indexOf("ws")?(t=!0,r.log("Using WebSockets to contact Janus: "+c)):(t=!1,r.log("Using REST API to contact Janus: "+c));var d=e.iceServers;void 0!==d&&null!==d||(d=[{urls:"stun:stun.l.google.com:19302"}]);var u=e.iceTransportPolicy,l=e.bundlePolicy,p=e.ipv6;void 0!==p&&null!==p||(p=!1);var f=!1;void 0!==e.withCredentials&&null!==e.withCredentials&&(f=!0===e.withCredentials);var m=10;void 0!==e.max_poll_events&&null!==e.max_poll_events&&(m=e.max_poll_events),m<1&&(m=1);var h=null;void 0!==e.token&&null!==e.token&&(h=e.token);var g=null;void 0!==e.apisecret&&null!==e.apisecret&&(g=e.apisecret),this.destroyOnUnload=!0,void 0!==e.destroyOnUnload&&null!==e.destroyOnUnload&&(this.destroyOnUnload=!0===e.destroyOnUnload);var v=25e3;void 0!==e.keepAlivePeriod&&null!==e.keepAlivePeriod&&(v=e.keepAlivePeriod),isNaN(v)&&(v=25e3);var y=6e4;void 0!==e.longPollTimeout&&null!==e.longPollTimeout&&(y=e.longPollTimeout),isNaN(y)&&(y=6e4);var b=!1,w=null,T={},S=this,C=0,P={};function x(){if(null!=w)if(r.debug("Long poll..."),b){var t=c+"/"+w+"?rid="+(new Date).getTime();void 0!==m&&null!==m&&(t=t+"&maxev="+m),null!==h&&void 0!==h&&(t=t+"&token="+encodeURIComponent(h)),null!==g&&void 0!==g&&(t=t+"&apisecret="+encodeURIComponent(g)),r.httpAPICall(t,{verb:"GET",withCredentials:f,success:k,timeout:y,error:function(t,n){if(r.error(t+":",n),C++,C>3)return b=!1,void e.error("Lost connection to the server (is it down?)");x()}})}else r.warn("Is the server down? (connected=false)")}function k(e,o){if(C=0,t||void 0===w||null===w||!0===o||x(),t||!r.isArray(e))if("keepalive"!==e["janus"])if("ack"!==e["janus"])if("success"!==e["janus"])if("trickle"===e["janus"]){var i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");var s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");var a=e["candidate"];r.debug("Got a trickled candidate on session "+w),r.debug(a);var c=s.webrtcStuff;c.pc&&c.remoteSdp?(r.debug("Adding remote candidate:",a),a&&!0!==a.completed?c.pc.addIceCandidate(a):c.pc.addIceCandidate()):(r.debug("We didn't do setRemoteDescription (trickle got here before the offer?), caching candidate"),c.candidates||(c.candidates=[]),c.candidates.push(a),r.debug(c.candidates))}else{if("webrtcup"===e["janus"]){r.debug("Got a webrtcup event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];return void 0===s||null===s?void r.debug("This handle is not attached to this session"):void s.webrtcState(!0)}if("hangup"===e["janus"]){r.debug("Got a hangup event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.webrtcState(!1,e["reason"]),s.hangup()}else if("detached"===e["janus"]){r.debug("Got a detached event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return;s.detached=!0,s.ondetached(),s.detach()}else if("media"===e["janus"]){r.debug("Got a media event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.mediaState(e["type"],e["receiving"])}else if("slowlink"===e["janus"]){r.debug("Got a slowlink event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");s=T[i];if(void 0===s||null===s)return void r.debug("This handle is not attached to this session");s.slowLink(e["uplink"],e["nacks"])}else{if("error"===e["janus"]){r.error("Ooops: "+e["error"].code+" "+e["error"].reason),r.debug(e);f=e["transaction"];if(null!==f&&void 0!==f){m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}return}if("event"===e["janus"]){r.debug("Got a plugin event on session "+w),r.debug(e);i=e["sender"];if(void 0===i||null===i)return void r.warn("Missing sender...");var d=e["plugindata"];if(void 0===d||null===d)return void r.warn("Missing plugindata...");r.debug(" -- Event is coming from "+i+" ("+d["plugin"]+")");var u=d["data"];r.debug(u);s=T[i];if(void 0===s||null===s)return void r.warn("This handle is not attached to this session");var l=e["jsep"];void 0!==l&&null!==l&&(r.debug("Handling SDP as well..."),r.debug(l));var p=s.onmessage;null!==p&&void 0!==p?(r.debug("Notifying application..."),p(u,l)):r.debug("No provided notification callback")}else{if("timeout"===e["janus"])return r.error("Timeout on session "+w),r.debug(e),void(t&&n.close(3504,"Gateway timeout"));r.warn("Unknown message/event '"+e["janus"]+"' on session "+w),r.debug(e)}}}else{r.debug("Got a success on session "+w),r.debug(e);var f=e["transaction"];if(null!==f&&void 0!==f){var m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}}else{r.debug("Got an ack on session "+w),r.debug(e);var f=e["transaction"];if(null!==f&&void 0!==f){var m=P[f];null!==m&&void 0!==m&&m(e),delete P[f]}}else r.vdebug("Got a keepalive on session "+w);else for(var h=0;h<e.length;h++)k(e[h],!0)}function D(){if(null!==c&&t&&b){i=setTimeout(D,v);var e={janus:"keepalive",session_id:w,transaction:r.randomString(12)};null!==h&&void 0!==h&&(e["token"]=h),null!==g&&void 0!==g&&(e["apisecret"]=g),n.send(JSON.stringify(e))}}function _(d){var u=r.randomString(12),l={janus:"create",transaction:u};if(d["reconnect"]&&(b=!1,l["janus"]="claim",l["session_id"]=w,n&&(n.onopen=null,n.onerror=null,n.onclose=null,i&&(clearTimeout(i),i=null))),null!==h&&void 0!==h&&(l["token"]=h),null!==g&&void 0!==g&&(l["apisecret"]=g),null===c&&r.isArray(s)&&(c=s[a],0===c.indexOf("ws")?(t=!0,r.log("Server #"+(a+1)+": trying WebSockets to contact Janus ("+c+")")):(t=!1,r.log("Server #"+(a+1)+": trying REST API to contact Janus ("+c+")"))),t)for(var p in n=r.newWebSocket(c,"janus-protocol"),o={error:function(){if(r.error("Error connecting to the Janus WebSockets server... "+c),r.isArray(s)&&!d["reconnect"])return a++,a==s.length?void d.error("Error connecting to any of the provided Janus servers: Is the server down?"):(c=null,void setTimeout((function(){_(d)}),200));d.error("Error connecting to the Janus WebSockets server: Is the server down?")},open:function(){P[u]=function(e){if(r.debug(e),"success"!==e["janus"])return r.error("Ooops: "+e["error"].code+" "+e["error"].reason),void d.error(e["error"].reason);i=setTimeout(D,v),b=!0,w=e["session_id"]?e["session_id"]:e.data["id"],d["reconnect"]?r.log("Claimed session: "+w):r.log("Created session: "+w),r.sessions[w]=S,d.success()},n.send(JSON.stringify(l))},message:function(e){k(JSON.parse(e.data))},close:function(){null!==c&&b&&(b=!1,e.error("Lost connection to the server (is it down?)"))}},o)n.addEventListener(p,o[p]);else r.httpAPICall(c,{verb:"POST",withCredentials:f,body:l,success:function(e){if(r.debug(e),"success"!==e["janus"])return r.error("Ooops: "+e["error"].code+" "+e["error"].reason),void d.error(e["error"].reason);b=!0,w=e["session_id"]?e["session_id"]:e.data["id"],d["reconnect"]?r.log("Claimed session: "+w):r.log("Created session: "+w),r.sessions[w]=S,x(),d.success()},error:function(e,t){if(r.error(e+":",t),r.isArray(s)&&!d["reconnect"])return a++,a==s.length?void d.error("Error connecting to any of the provided Janus servers: Is the server down?"):(c=null,void setTimeout((function(){_(d)}),200));""===t?d.error(e+": Is the server down?"):d.error(e+": "+t)}})}function A(s){s=s||{},s.success="function"==typeof s.success?s.success:r.noop;var a=!0;void 0!==s.asyncRequest&&null!==s.asyncRequest&&(a=!0===s.asyncRequest);var d=!0;if(void 0!==s.notifyDestroyed&&null!==s.notifyDestroyed&&(d=!0===s.notifyDestroyed),r.log("Destroying session "+w+" (async="+a+")"),!b)return r.warn("Is the server down? (connected=false)"),void s.success();if(void 0===w||null===w)return r.warn("No session to destroy"),s.success(),void(d&&e.destroyed());delete r.sessions[w];var u={janus:"destroy",transaction:r.randomString(12)};if(null!==h&&void 0!==h&&(u["token"]=h),null!==g&&void 0!==g&&(u["apisecret"]=g),t){u["session_id"]=w;var l=function(){for(var e in o)n.removeEventListener(e,o[e]);n.removeEventListener("message",p),n.removeEventListener("error",m),i&&clearTimeout(i),n.close()},p=function(t){var n=JSON.parse(t.data);n.session_id==u.session_id&&n.transaction==u.transaction&&(l(),s.success(),d&&e.destroyed())},m=function(t){l(),s.error("Failed to destroy the server: Is the server down?"),d&&e.destroyed()};return n.addEventListener("message",p),n.addEventListener("error",m),void n.send(JSON.stringify(u))}r.httpAPICall(c+"/"+w,{verb:"POST",async:a,withCredentials:f,body:u,success:function(t){r.log("Destroyed session:"),r.debug(t),w=null,b=!1,"success"!==t["janus"]&&r.error("Ooops: "+t["error"].code+" "+t["error"].reason),s.success(),d&&e.destroyed()},error:function(t,n){r.error(t+":",n),w=null,b=!1,s.success(),d&&e.destroyed()}})}function I(e){if(e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e.consentDialog="function"==typeof e.consentDialog?e.consentDialog:r.noop,e.iceState="function"==typeof e.iceState?e.iceState:r.noop,e.mediaState="function"==typeof e.mediaState?e.mediaState:r.noop,e.webrtcState="function"==typeof e.webrtcState?e.webrtcState:r.noop,e.slowLink="function"==typeof e.slowLink?e.slowLink:r.noop,e.onmessage="function"==typeof e.onmessage?e.onmessage:r.noop,e.onlocalstream="function"==typeof e.onlocalstream?e.onlocalstream:r.noop,e.onremotestream="function"==typeof e.onremotestream?e.onremotestream:r.noop,e.ondata="function"==typeof e.ondata?e.ondata:r.noop,e.ondataopen="function"==typeof e.ondataopen?e.ondataopen:r.noop,e.oncleanup="function"==typeof e.oncleanup?e.oncleanup:r.noop,e.ondetached="function"==typeof e.ondetached?e.ondetached:r.noop,!b)return r.warn("Is the server down? (connected=false)"),void e.error("Is the server down? (connected=false)");var o=e.plugin;if(void 0===o||null===o)return r.error("Invalid plugin"),void e.error("Invalid plugin");var i=e.opaqueId,s=e.token?e.token:h,a=r.randomString(12),d={janus:"attach",plugin:o,opaque_id:i,transaction:a};if(null!==s&&void 0!==s&&(d["token"]=s),null!==g&&void 0!==g&&(d["apisecret"]=g),t)return P[a]=function(t){if(r.debug(t),"success"!==t["janus"])return r.error("Ooops: "+t["error"].code+" "+t["error"].reason),void e.error("Ooops: "+t["error"].code+" "+t["error"].reason);var n=t.data["id"];r.log("Created handle: "+n);var i={session:S,plugin:o,id:n,token:s,detached:!1,webrtcStuff:{started:!1,myStream:null,streamExternal:!1,remoteStream:null,mySdp:null,mediaConstraints:null,pc:null,dataChannel:{},dtmfSender:null,trickle:!0,iceDone:!1,volume:{value:null,timer:null},bitrate:{value:null,bsnow:null,bsbefore:null,tsnow:null,tsbefore:null,timer:null}},getId:function(){return n},getPlugin:function(){return o},getVolume:function(){return H(n,!0)},getRemoteVolume:function(){return H(n,!0)},getLocalVolume:function(){return H(n,!1)},isAudioMuted:function(){return U(n,!1)},muteAudio:function(){return z(n,!1,!0)},unmuteAudio:function(){return z(n,!1,!1)},isVideoMuted:function(){return U(n,!0)},muteVideo:function(){return z(n,!0,!0)},unmuteVideo:function(){return z(n,!0,!1)},getBitrate:function(){return G(n)},send:function(e){R(n,e)},data:function(e){E(n,e)},dtmf:function(e){M(n,e)},consentDialog:e.consentDialog,iceState:e.iceState,mediaState:e.mediaState,webrtcState:e.webrtcState,slowLink:e.slowLink,onmessage:e.onmessage,createOffer:function(e){q(n,!0,e)},createAnswer:function(e){q(n,!1,e)},handleRemoteJsep:function(e){V(n,e)},onlocalstream:e.onlocalstream,onremotestream:e.onremotestream,ondata:e.ondata,ondataopen:e.ondataopen,oncleanup:e.oncleanup,ondetached:e.ondetached,hangup:function(e){$(n,!0===e)},detach:function(e){L(n,e)}};T[n]=i,e.success(i)},d["session_id"]=w,void n.send(JSON.stringify(d));r.httpAPICall(c+"/"+w,{verb:"POST",withCredentials:f,body:d,success:function(t){if(r.debug(t),"success"!==t["janus"])return r.error("Ooops: "+t["error"].code+" "+t["error"].reason),void e.error("Ooops: "+t["error"].code+" "+t["error"].reason);var n=t.data["id"];r.log("Created handle: "+n);var i={session:S,plugin:o,id:n,token:s,detached:!1,webrtcStuff:{started:!1,myStream:null,streamExternal:!1,remoteStream:null,mySdp:null,mediaConstraints:null,pc:null,dataChannel:{},dtmfSender:null,trickle:!0,iceDone:!1,volume:{value:null,timer:null},bitrate:{value:null,bsnow:null,bsbefore:null,tsnow:null,tsbefore:null,timer:null}},getId:function(){return n},getPlugin:function(){return o},getVolume:function(){return H(n,!0)},getRemoteVolume:function(){return H(n,!0)},getLocalVolume:function(){return H(n,!1)},isAudioMuted:function(){return U(n,!1)},muteAudio:function(){return z(n,!1,!0)},unmuteAudio:function(){return z(n,!1,!1)},isVideoMuted:function(){return U(n,!0)},muteVideo:function(){return z(n,!0,!0)},unmuteVideo:function(){return z(n,!0,!1)},getBitrate:function(){return G(n)},send:function(e){R(n,e)},data:function(e){E(n,e)},dtmf:function(e){M(n,e)},consentDialog:e.consentDialog,iceState:e.iceState,mediaState:e.mediaState,webrtcState:e.webrtcState,slowLink:e.slowLink,onmessage:e.onmessage,createOffer:function(e){q(n,!0,e)},createAnswer:function(e){q(n,!1,e)},handleRemoteJsep:function(e){V(n,e)},onlocalstream:e.onlocalstream,onremotestream:e.onremotestream,ondata:e.ondata,ondataopen:e.ondataopen,oncleanup:e.oncleanup,ondetached:e.ondetached,hangup:function(e){$(n,!0===e)},detach:function(e){L(n,e)}};T[n]=i,e.success(i)},error:function(e,t){r.error(e+":",t)}})}function R(e,o){if(o=o||{},o.success="function"==typeof o.success?o.success:r.noop,o.error="function"==typeof o.error?o.error:r.noop,!b)return r.warn("Is the server down? (connected=false)"),void o.error("Is the server down? (connected=false)");var i=T[e];if(null===i||void 0===i||null===i.webrtcStuff||void 0===i.webrtcStuff)return r.warn("Invalid handle"),void o.error("Invalid handle");var s=o.message,a=o.jsep,d=r.randomString(12),u={janus:"message",body:s,transaction:d};if(null!==i.token&&void 0!==i.token&&(u["token"]=i.token),null!==g&&void 0!==g&&(u["apisecret"]=g),null!==a&&void 0!==a&&(u.jsep=a),r.debug("Sending message to plugin (handle="+e+"):"),r.debug(u),t)return u["session_id"]=w,u["handle_id"]=e,P[d]=function(e){if(r.debug("Message sent!"),r.debug(e),"success"===e["janus"]){var t=e["plugindata"];if(void 0===t||null===t)return r.warn("Request succeeded, but missing plugindata..."),void o.success();r.log("Synchronous transaction successful ("+t["plugin"]+")");var n=t["data"];return r.debug(n),void o.success(n)}"ack"===e["janus"]?o.success():void 0!==e["error"]&&null!==e["error"]?(r.error("Ooops: "+e["error"].code+" "+e["error"].reason),o.error(e["error"].code+" "+e["error"].reason)):(r.error("Unknown error"),o.error("Unknown error"))},void n.send(JSON.stringify(u));r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:u,success:function(e){if(r.debug("Message sent!"),r.debug(e),"success"===e["janus"]){var t=e["plugindata"];if(void 0===t||null===t)return r.warn("Request succeeded, but missing plugindata..."),void o.success();r.log("Synchronous transaction successful ("+t["plugin"]+")");var n=t["data"];return r.debug(n),void o.success(n)}"ack"===e["janus"]?o.success():void 0!==e["error"]&&null!==e["error"]?(r.error("Ooops: "+e["error"].code+" "+e["error"].reason),o.error(e["error"].code+" "+e["error"].reason)):(r.error("Unknown error"),o.error("Unknown error"))},error:function(e,t){r.error(e+":",t),o.error(e+": "+t)}})}function N(e,o){if(b){var i=T[e];if(null!==i&&void 0!==i&&null!==i.webrtcStuff&&void 0!==i.webrtcStuff){var s={janus:"trickle",candidate:o,transaction:r.randomString(12)};if(null!==i.token&&void 0!==i.token&&(s["token"]=i.token),null!==g&&void 0!==g&&(s["apisecret"]=g),r.vdebug("Sending trickle candidate (handle="+e+"):"),r.vdebug(s),t)return s["session_id"]=w,s["handle_id"]=e,void n.send(JSON.stringify(s));r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:s,success:function(e){r.vdebug("Candidate sent!"),r.vdebug(e),"ack"===e["janus"]||r.error("Ooops: "+e["error"].code+" "+e["error"].reason)},error:function(e,t){r.error(e+":",t)}})}else r.warn("Invalid handle")}else r.warn("Is the server down? (connected=false)")}function O(e,t,n,o){var i=T[e];if(null!==i&&void 0!==i&&null!==i.webrtcStuff&&void 0!==i.webrtcStuff){var s=i.webrtcStuff,a=function(e){r.log("Received message on data channel:",e);var t=e.target.label;i.ondata(e.data,t)},c=function(e){r.log("Received state change on data channel:",e);var t=e.target.label,n=null!==s.dataChannel[t]?s.dataChannel[t].readyState:"null";if(r.log("State change on <"+t+"> data channel: "+n),"open"===n){if(s.dataChannel[t].pending&&s.dataChannel[t].pending.length>0){for(var o in r.log("Sending pending messages on <' + label + '>:",s.dataChannel[t].pending.length),s.dataChannel[t].pending){var a=s.dataChannel[t].pending[o];r.log("Sending string on data channel <"+t+">: "+a),s.dataChannel[t].send(a)}s.dataChannel[t].pending=[]}i.ondataopen(t)}},d=function(e){r.error("Got error on data channel:",e)};s.dataChannel[t]=n||s.pc.createDataChannel(t,{ordered:!1}),s.dataChannel[t].onmessage=a,s.dataChannel[t].onopen=c,s.dataChannel[t].onclose=c,s.dataChannel[t].onerror=d,s.dataChannel[t].pending=[],o&&s.dataChannel[t].pending.push(o)}else r.warn("Invalid handle")}function E(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var o=n.webrtcStuff,i=t.text;if(null===i||void 0===i)return r.warn("Invalid text"),void t.error("Invalid text");var s=t.label?t.label:r.dataChanDefaultLabel;return o.dataChannel[s]?"open"!==o.dataChannel[s].readyState?(o.dataChannel[s].pending.push(i),void t.success()):(r.log("Sending string on data channel <"+s+">: "+i),o.dataChannel[s].send(i),void t.success()):(O(e,s,!1,i),void t.success())}function M(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var o=n.webrtcStuff;if(null===o.dtmfSender||void 0===o.dtmfSender){if(void 0!==o.pc&&null!==o.pc){var i=o.pc.getSenders(),s=i.find((function(e){return e.track&&"audio"===e.track.kind}));if(!s)return r.warn("Invalid DTMF configuration (no audio track)"),void t.error("Invalid DTMF configuration (no audio track)");o.dtmfSender=s.dtmf,o.dtmfSender&&(r.log("Created DTMF Sender"),o.dtmfSender.ontonechange=function(e){r.debug("Sent DTMF tone: "+e.tone)})}if(null===o.dtmfSender||void 0===o.dtmfSender)return r.warn("Invalid DTMF configuration"),void t.error("Invalid DTMF configuration")}var a=t.dtmf;if(null===a||void 0===a)return r.warn("Invalid DTMF parameters"),void t.error("Invalid DTMF parameters");var c=a.tones;if(null===c||void 0===c)return r.warn("Invalid DTMF string"),void t.error("Invalid DTMF string");var d=a.duration;null!==d&&void 0!==d||(d=500);var u=a.gap;null!==u&&void 0!==u||(u=50),r.debug("Sending DTMF string "+c+" (duration "+d+"ms, gap "+u+"ms)"),o.dtmfSender.insertDTMF(c,d,u),t.success()}function L(e,o){o=o||{},o.success="function"==typeof o.success?o.success:r.noop,o.error="function"==typeof o.error?o.error:r.noop;var i=!0;void 0!==o.asyncRequest&&null!==o.asyncRequest&&(i=!0===o.asyncRequest),r.log("Destroying handle "+e+" (async="+i+")"),$(e);var s=T[e];if(null===s||void 0===s||s.detached)return delete T[e],void o.success();if(!b)return r.warn("Is the server down? (connected=false)"),void o.error("Is the server down? (connected=false)");var a={janus:"detach",transaction:r.randomString(12)};if(null!==s.token&&void 0!==s.token&&(a["token"]=s.token),null!==g&&void 0!==g&&(a["apisecret"]=g),t)return a["session_id"]=w,a["handle_id"]=e,n.send(JSON.stringify(a)),delete T[e],void o.success();r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",async:i,withCredentials:f,body:a,success:function(t){r.log("Destroyed handle:"),r.debug(t),"success"!==t["janus"]&&r.error("Ooops: "+t["error"].code+" "+t["error"].reason),delete T[e],o.success()},error:function(t,n){r.error(t+":",n),delete T[e],o.success()}})}function j(e,t,n,o,i){var s=T[e];if(null===s||void 0===s||null===s.webrtcStuff||void 0===s.webrtcStuff)return r.warn("Invalid handle"),void o.error("Invalid handle");var a=s.webrtcStuff;r.debug("streamsDone:",i),i&&(r.debug(" -- Audio tracks:",i.getAudioTracks()),r.debug(" -- Video tracks:",i.getVideoTracks()));var c=!1;if(a.myStream&&n.update&&!a.streamExternal){if((!n.update&&K(n)||n.update&&(n.addAudio||n.replaceAudio))&&i.getAudioTracks()&&i.getAudioTracks().length)if(a.myStream.addTrack(i.getAudioTracks()[0]),"firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){r.log((n.replaceAudio?"Replacing":"Adding")+" audio track:",i.getAudioTracks()[0]);var f=null,m=a.pc.getTransceivers();if(m&&m.length>0)for(var h in m){var g=m[h];if(g.sender&&g.sender.track&&"audio"===g.sender.track.kind||g.receiver&&g.receiver.track&&"audio"===g.receiver.track.kind){f=g;break}}f&&f.sender?f.sender.replaceTrack(i.getAudioTracks()[0]):a.pc.addTrack(i.getAudioTracks()[0],i)}else r.log((n.replaceAudio?"Replacing":"Adding")+" audio track:",i.getAudioTracks()[0]),a.pc.addTrack(i.getAudioTracks()[0],i);if((!n.update&&Z(n)||n.update&&(n.addVideo||n.replaceVideo))&&i.getVideoTracks()&&i.getVideoTracks().length)if(a.myStream.addTrack(i.getVideoTracks()[0]),"firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){r.log((n.replaceVideo?"Replacing":"Adding")+" video track:",i.getVideoTracks()[0]);var v=null;m=a.pc.getTransceivers();if(m&&m.length>0)for(var h in m){g=m[h];if(g.sender&&g.sender.track&&"video"===g.sender.track.kind||g.receiver&&g.receiver.track&&"video"===g.receiver.track.kind){v=g;break}}v&&v.sender?v.sender.replaceTrack(i.getVideoTracks()[0]):a.pc.addTrack(i.getVideoTracks()[0],i)}else r.log((n.replaceVideo?"Replacing":"Adding")+" video track:",i.getVideoTracks()[0]),a.pc.addTrack(i.getVideoTracks()[0],i)}else a.myStream=i,c=!0;if(!a.pc){var y={iceServers:d,iceTransportPolicy:u,bundlePolicy:l};"chrome"===r.webRTCAdapter.browserDetails.browser&&(y["sdpSemantics"]=r.webRTCAdapter.browserDetails.version<72?"plan-b":"unified-plan");var b={optional:[{DtlsSrtpKeyAgreement:!0}]};if(!0===p&&b.optional.push({googIPv6:!0}),o.rtcConstraints&&"object"===typeof o.rtcConstraints)for(var h in r.debug("Adding custom PeerConnection constraints:",o.rtcConstraints),o.rtcConstraints)b.optional.push(o.rtcConstraints[h]);"edge"===r.webRTCAdapter.browserDetails.browser&&(y.bundlePolicy="max-bundle"),r.log("Creating PeerConnection"),r.debug(b),a.pc=new RTCPeerConnection(y,b),r.debug(a.pc),a.pc.getStats&&(a.volume={},a.bitrate.value="0 kbits/sec"),r.log("Preparing local SDP and gathering candidates (trickle="+a.trickle+")"),a.pc.oniceconnectionstatechange=function(e){a.pc&&s.iceState(a.pc.iceConnectionState)},a.pc.onicecandidate=function(t){if(null==t.candidate||"edge"===r.webRTCAdapter.browserDetails.browser&&t.candidate.candidate.indexOf("endOfCandidates")>0)r.log("End of candidates."),a.iceDone=!0,!0===a.trickle?N(e,{completed:!0}):W(e,o);else{var n=t.candidate.candidate,i=n.split(" "),s=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/,c=i[4].match(s);c&&""!=c||(i[4]="127.0.0.1");var d=i.join(" "),u={candidate:d,sdpMid:t.candidate.sdpMid,sdpMLineIndex:t.candidate.sdpMLineIndex};!0===a.trickle&&N(e,u)}},a.pc.ontrack=function(e){r.log("Handling Remote Track"),r.debug(e),e.streams&&(a.remoteStream=e.streams[0],s.onremotestream(a.remoteStream),e.track&&!e.track.onended&&(r.log("Adding onended callback to track:",e.track),e.track.onended=function(e){r.log("Remote track removed:",e),a.remoteStream&&(a.remoteStream.removeTrack(e.target),s.onremotestream(a.remoteStream))}))}}if(c&&null!==i&&void 0!==i){r.log("Adding local stream");var w=!0===o.simulcast2;i.getTracks().forEach((function(e){r.log("Adding local track:",e),w?"audio"===e.kind?a.pc.addTrack(e,i):(r.log("Enabling rid-based simulcasting:",e),a.pc.addTransceiver(e,{direction:"sendrecv",streams:[i],sendEncodings:[{rid:"h",active:!0,maxBitrate:9e5},{rid:"m",active:!0,maxBitrate:3e5,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:1e5,scaleResolutionDownBy:4}]})):a.pc.addTrack(e,i)}))}re(n)&&!a.dataChannel[r.dataChanDefaultLabel]&&(r.log("Creating data channel"),O(e,r.dataChanDefaultLabel,!1),a.pc.ondatachannel=function(t){r.log("Data channel created by Janus:",t),O(e,t.channel.label,t.channel)}),a.myStream&&s.onlocalstream(a.myStream),null===t||void 0===t?B(e,n,o):a.pc.setRemoteDescription(t).then((function(){if(r.log("Remote description accepted!"),a.remoteSdp=t.sdp,a.candidates&&a.candidates.length>0){for(var i in a.candidates){var s=a.candidates[i];r.debug("Adding remote candidate:",s),s&&!0!==s.completed?a.pc.addIceCandidate(s):a.pc.addIceCandidate()}a.candidates=[]}F(e,n,o)}),o.error)}function q(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:J;var o=n.jsep;if(t&&o)return r.error("Provided a JSEP to a createOffer"),void n.error("Provided a JSEP to a createOffer");if(!t&&(!o||!o.type||!o.sdp))return r.error("A valid JSEP is required for createAnswer"),void n.error("A valid JSEP is required for createAnswer");n.media=n.media||{audio:!0,video:!0};var i=n.media,s=T[e];if(null===s||void 0===s||null===s.webrtcStuff||void 0===s.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var a=s.webrtcStuff;if(a.trickle=oe(n.trickle),void 0===a.pc||null===a.pc)i.update=!1,i.keepAudio=!1,i.keepVideo=!1;else if(void 0!==a.pc&&null!==a.pc){if(r.log("Updating existing media session"),i.update=!0,null!==n.stream&&void 0!==n.stream)n.stream!==a.myStream&&r.log("Renegotiation involves a new external stream");else{if(i.addAudio){if(i.keepAudio=!1,i.replaceAudio=!1,i.removeAudio=!1,i.audioSend=!0,a.myStream&&a.myStream.getAudioTracks()&&a.myStream.getAudioTracks().length)return r.error("Can't add audio stream, there already is one"),void n.error("Can't add audio stream, there already is one")}else i.removeAudio?(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!1,i.audioSend=!1):i.replaceAudio&&(i.keepAudio=!1,i.addAudio=!1,i.removeAudio=!1,i.audioSend=!0);if(null===a.myStream||void 0===a.myStream?(i.replaceAudio&&(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!0,i.audioSend=!0),K(i)&&(i.keepAudio=!1,i.addAudio=!0)):null===a.myStream.getAudioTracks()||void 0===a.myStream.getAudioTracks()||0===a.myStream.getAudioTracks().length?(i.replaceAudio&&(i.keepAudio=!1,i.replaceAudio=!1,i.addAudio=!0,i.audioSend=!0),K(i)&&(i.keepVideo=!1,i.addAudio=!0)):!K(i)||i.removeAudio||i.replaceAudio||(i.keepAudio=!0),i.addVideo){if(i.keepVideo=!1,i.replaceVideo=!1,i.removeVideo=!1,i.videoSend=!0,a.myStream&&a.myStream.getVideoTracks()&&a.myStream.getVideoTracks().length)return r.error("Can't add video stream, there already is one"),void n.error("Can't add video stream, there already is one")}else i.removeVideo?(i.keepVideo=!1,i.replaceVideo=!1,i.addVideo=!1,i.videoSend=!1):i.replaceVideo&&(i.keepVideo=!1,i.addVideo=!1,i.removeVideo=!1,i.videoSend=!0);null===a.myStream||void 0===a.myStream||null===a.myStream.getVideoTracks()||void 0===a.myStream.getVideoTracks()||0===a.myStream.getVideoTracks().length?(i.replaceVideo&&(i.keepVideo=!1,i.replaceVideo=!1,i.addVideo=!0,i.videoSend=!0),Z(i)&&(i.keepVideo=!1,i.addVideo=!0)):!Z(i)||i.removeVideo||i.replaceVideo||(i.keepVideo=!0),i.addData&&(i.data=!0)}if(K(i)&&i.keepAudio&&Z(i)&&i.keepVideo)return s.consentDialog(!1),void j(e,o,i,n,a.myStream)}if(i.update&&!a.streamExternal){if(i.removeAudio||i.replaceAudio){if(a.myStream&&a.myStream.getAudioTracks()&&a.myStream.getAudioTracks().length){var c=a.myStream.getAudioTracks()[0];r.log("Removing audio track:",c),a.myStream.removeTrack(c);try{c.stop()}catch(A){}}if(a.pc.getSenders()&&a.pc.getSenders().length){var d=!0;if(i.replaceAudio&&("firefox"===r.webRTCAdapter.browserDetails.browser||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72)&&(d=!1),d)for(var u in a.pc.getSenders()){c=a.pc.getSenders()[u];c&&c.track&&"audio"===c.track.kind&&(r.log("Removing audio sender:",c),a.pc.removeTrack(c))}}}if(i.removeVideo||i.replaceVideo){if(a.myStream&&a.myStream.getVideoTracks()&&a.myStream.getVideoTracks().length){c=a.myStream.getVideoTracks()[0];r.log("Removing video track:",c),a.myStream.removeTrack(c);try{c.stop()}catch(A){}}if(a.pc.getSenders()&&a.pc.getSenders().length){var l=!0;if(i.replaceVideo&&("firefox"===r.webRTCAdapter.browserDetails.browser||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72)&&(l=!1),l)for(var u in a.pc.getSenders()){c=a.pc.getSenders()[u];c&&c.track&&"video"===c.track.kind&&(r.log("Removing video sender:",c),a.pc.removeTrack(c))}}}}if(null!==n.stream&&void 0!==n.stream){var p=n.stream;if(r.log("MediaStream provided by the application"),r.debug(p),i.update&&a.myStream&&a.myStream!==n.stream&&!a.streamExternal){try{var f=a.myStream.getTracks();for(var m in f){var h=f[m];r.log(h),null!==h&&void 0!==h&&h.stop()}}catch(A){}a.myStream=null}return a.streamExternal=!0,s.consentDialog(!1),void j(e,o,i,n,p)}if(K(i)||Z(i)){if(!r.isGetUserMediaAvailable())return void n.error("getUserMedia not available");var g={mandatory:{},optional:[]};s.consentDialog(!0);var v=K(i);!0===v&&void 0!=i&&null!=i&&"object"===typeof i.audio&&(v=i.audio);var y=Z(i);if(!0===y&&void 0!=i&&null!=i){var b=!0===n.simulcast,w=!0===n.simulcast2;if(!b&&!w||o||void 0!==i.video&&!1!==i.video||(i.video="hires"),i.video&&"screen"!=i.video&&"window"!=i.video)if("object"===typeof i.video)y=i.video;else{var S=0,C=0;"lowres"===i.video?(C=240,240,S=320):"lowres-16:9"===i.video?(C=180,180,S=320):"hires"===i.video||"hires-16:9"===i.video||"hdres"===i.video?(C=720,720,S=1280):"fhdres"===i.video?(C=1080,1080,S=1920):"4kres"===i.video?(C=2160,2160,S=3840):"stdres"===i.video?(C=480,480,S=640):"stdres-16:9"===i.video?(C=360,360,S=640):(r.log("Default video setting is stdres 4:3"),C=480,480,S=640),r.log("Adding media constraint:",i.video),y={height:{ideal:C},width:{ideal:S}},r.log("Adding video constraint:",y)}else if("screen"===i.video||"window"===i.video){if(i.screenshareFrameRate||(i.screenshareFrameRate=3),navigator.mediaDevices&&navigator.mediaDevices.getDisplayMedia)return void navigator.mediaDevices.getDisplayMedia({video:!0}).then((function(t){s.consentDialog(!1),K(i)&&!i.keepAudio?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(r){t.addTrack(r.getAudioTracks()[0]),j(e,o,i,n,t)})):j(e,o,i,n,t)}),(function(e){s.consentDialog(!1),n.error(e)}));function P(t,r){s.consentDialog(!1),t?n.error(t):j(e,o,i,n,r)}function x(e,t,n){r.log("Adding media constraint (screen capture)"),r.debug(e),navigator.mediaDevices.getUserMedia(e).then((function(e){n?navigator.mediaDevices.getUserMedia({audio:!0,video:!1}).then((function(n){e.addTrack(n.getAudioTracks()[0]),t(null,e)})):t(null,e)})).catch((function(e){s.consentDialog(!1),t(e)}))}if("chrome"===r.webRTCAdapter.browserDetails.browser){var k=r.webRTCAdapter.browserDetails.version,D=33;window.navigator.userAgent.match("Linux")&&(D=35),k>=26&&k<=D?(g={video:{mandatory:{googLeakyBucket:!0,maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:i.screenshareFrameRate,maxFrameRate:i.screenshareFrameRate,chromeMediaSource:"screen"}},audio:K(i)&&!i.keepAudio},x(g,P)):r.extension.getScreen((function(e,t){if(e)return s.consentDialog(!1),n.error(e);g={audio:!1,video:{mandatory:{chromeMediaSource:"desktop",maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:i.screenshareFrameRate,maxFrameRate:i.screenshareFrameRate},optional:[{googLeakyBucket:!0},{googTemporalLayeredScreencast:!0}]}},g.video.mandatory.chromeMediaSourceId=t,x(g,P,K(i)&&!i.keepAudio)}))}else if("firefox"===r.webRTCAdapter.browserDetails.browser){if(!(r.webRTCAdapter.browserDetails.version>=33)){var _=new Error("NavigatorUserMediaError");return _.name="Your version of Firefox does not support screen sharing, please install Firefox 33 (or more recent versions)",s.consentDialog(!1),void n.error(_)}g={video:{mozMediaSource:i.video,mediaSource:i.video},audio:K(i)&&!i.keepAudio},x(g,(function(e,t){if(P(e,t),!e)var n=t.currentTime,r=window.setInterval((function(){t||window.clearInterval(r),t.currentTime==n&&(window.clearInterval(r),t.onended&&t.onended()),n=t.currentTime}),500)}))}return}}null!==i&&void 0!==i&&"screen"===i.video||navigator.mediaDevices.enumerateDevices().then((function(t){var a=t.some((function(e){return"audioinput"===e.kind})),c=ne(i)||t.some((function(e){return"videoinput"===e.kind})),d=K(i),u=Z(i),l=X(i),f=ee(i);if(d||u||l||f){var m=!!d&&a,h=!!u&&c;if(!m&&!h)return s.consentDialog(!1),n.error("No capture device found"),!1;if(!m&&l)return s.consentDialog(!1),n.error("Audio capture is required, but no capture device found"),!1;if(!h&&f)return s.consentDialog(!1),n.error("Video capture is required, but no capture device found"),!1}var g={audio:!(!a||i.keepAudio)&&v,video:!(!c||i.keepVideo)&&y};r.debug("getUserMedia constraints",g),g.audio||g.video?navigator.mediaDevices.getUserMedia(g).then((function(t){s.consentDialog(!1),j(e,o,i,n,t)})).catch((function(e){s.consentDialog(!1),n.error({code:e.code,name:e.name,message:e.message})})):(s.consentDialog(!1),j(e,o,i,n,p))})).catch((function(e){s.consentDialog(!1),n.error("enumerateDevices error",e)}))}else j(e,o,i,n)}function V(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:J;var n=t.jsep,o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void t.error("Invalid handle");var i=o.webrtcStuff;if(void 0!==n&&null!==n){if(null===i.pc)return r.warn("Wait, no PeerConnection?? if this is an answer, use createAnswer and not handleRemoteJsep"),void t.error("No PeerConnection: if this is an answer, use createAnswer and not handleRemoteJsep");i.pc.setRemoteDescription(n).then((function(){if(r.log("Remote description accepted!"),i.remoteSdp=n.sdp,i.candidates&&i.candidates.length>0){for(var e in i.candidates){var o=i.candidates[e];r.debug("Adding remote candidate:",o),o&&!0!==o.completed?i.pc.addIceCandidate(o):i.pc.addIceCandidate()}i.candidates=[]}t.success()}),t.error)}else t.error("Invalid JSEP")}function B(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:r.noop,n.customizeSdp="function"==typeof n.customizeSdp?n.customizeSdp:r.noop;var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var i=o.webrtcStuff,s=!0===n.simulcast;s?r.log("Creating offer (iceDone="+i.iceDone+", simulcast="+s+")"):r.log("Creating offer (iceDone="+i.iceDone+")");var a={};if("firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){var c=null,d=null,u=i.pc.getTransceivers();if(u&&u.length>0)for(var l in u){var p=u[l];p.sender&&p.sender.track&&"audio"===p.sender.track.kind||p.receiver&&p.receiver.track&&"audio"===p.receiver.track.kind?c||(c=p):(p.sender&&p.sender.track&&"video"===p.sender.track.kind||p.receiver&&p.receiver.track&&"video"===p.receiver.track.kind)&&(d||(d=p))}var f=K(t),m=Y(t);f||m?f&&m?c&&(c.setDirection?c.setDirection("sendrecv"):c.direction="sendrecv",r.log("Setting audio transceiver to sendrecv:",c)):f&&!m?c&&(c.setDirection?c.setDirection("sendonly"):c.direction="sendonly",r.log("Setting audio transceiver to sendonly:",c)):!f&&m&&(c?(c.setDirection?c.setDirection("recvonly"):c.direction="recvonly",r.log("Setting audio transceiver to recvonly:",c)):(c=i.pc.addTransceiver("audio",{direction:"recvonly"}),r.log("Adding recvonly audio transceiver:",c))):t.removeAudio&&c&&(c.setDirection?c.setDirection("inactive"):c.direction="inactive",r.log("Setting audio transceiver to inactive:",c));var h=Z(t),g=te(t);h||g?h&&g?d&&(d.setDirection?d.setDirection("sendrecv"):d.direction="sendrecv",r.log("Setting video transceiver to sendrecv:",d)):h&&!g?d&&(d.setDirection?d.setDirection("sendonly"):d.direction="sendonly",r.log("Setting video transceiver to sendonly:",d)):!h&&g&&(d?(d.setDirection?d.setDirection("recvonly"):d.direction="recvonly",r.log("Setting video transceiver to recvonly:",d)):(d=i.pc.addTransceiver("video",{direction:"recvonly"}),r.log("Adding recvonly video transceiver:",d))):t.removeVideo&&d&&(d.setDirection?d.setDirection("inactive"):d.direction="inactive",r.log("Setting video transceiver to inactive:",d))}else a["offerToReceiveAudio"]=Y(t),a["offerToReceiveVideo"]=te(t);var v=!0===n.iceRestart;v&&(a["iceRestart"]=!0),r.debug(a);var y=Z(t);if(y&&s&&"firefox"===r.webRTCAdapter.browserDetails.browser){r.log("Enabling Simulcasting for Firefox (RID)");var b=i.pc.getSenders().find((function(e){return"video"==e.track.kind}));if(b){var w=b.getParameters();w||(w={}),w.encodings=[{rid:"h",active:!0,maxBitrate:9e5},{rid:"m",active:!0,maxBitrate:3e5,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:1e5,scaleResolutionDownBy:4}],b.setParameters(w)}}i.pc.createOffer(a).then((function(e){r.debug(e);var t={type:e.type,sdp:e.sdp};n.customizeSdp(t),e.sdp=t.sdp,r.log("Setting local description"),y&&s&&("chrome"===r.webRTCAdapter.browserDetails.browser||"safari"===r.webRTCAdapter.browserDetails.browser?(r.log("Enabling Simulcasting for Chrome (SDP munging)"),e.sdp=Q(e.sdp)):"firefox"!==r.webRTCAdapter.browserDetails.browser&&r.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),i.mySdp=e.sdp,i.pc.setLocalDescription(e).catch(n.error),i.mediaConstraints=a,i.iceDone||i.trickle?(r.log("Offer ready"),r.debug(n),n.success(e)):r.log("Waiting for all candidates...")}),n.error)}function F(e,t,n){n=n||{},n.success="function"==typeof n.success?n.success:r.noop,n.error="function"==typeof n.error?n.error:r.noop,n.customizeSdp="function"==typeof n.customizeSdp?n.customizeSdp:r.noop;var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),void n.error("Invalid handle");var i=o.webrtcStuff,s=!0===n.simulcast;s?r.log("Creating answer (iceDone="+i.iceDone+", simulcast="+s+")"):r.log("Creating answer (iceDone="+i.iceDone+")");var a=null;if("firefox"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=59||"safari"===r.webRTCAdapter.browserDetails.browser&&window.RTCRtpSender.prototype.replaceTrack||"chrome"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=72){a={};var c=null,d=null,u=i.pc.getTransceivers();if(u&&u.length>0)for(var l in u){var p=u[l];p.sender&&p.sender.track&&"audio"===p.sender.track.kind||p.receiver&&p.receiver.track&&"audio"===p.receiver.track.kind?c||(c=p):(p.sender&&p.sender.track&&"video"===p.sender.track.kind||p.receiver&&p.receiver.track&&"video"===p.receiver.track.kind)&&(d||(d=p))}var f=K(t),m=Y(t);f||m?f&&m?c&&(c.setDirection?c.setDirection("sendrecv"):c.direction="sendrecv",r.log("Setting audio transceiver to sendrecv:",c)):f&&!m?c&&(c.setDirection?c.setDirection("sendonly"):c.direction="sendonly",r.log("Setting audio transceiver to sendonly:",c)):!f&&m&&(c?(c.setDirection?c.setDirection("recvonly"):c.direction="recvonly",r.log("Setting audio transceiver to recvonly:",c)):(c=i.pc.addTransceiver("audio",{direction:"recvonly"}),r.log("Adding recvonly audio transceiver:",c))):t.removeAudio&&c&&(c.setDirection?c.setDirection("inactive"):c.direction="inactive",r.log("Setting audio transceiver to inactive:",c));var h=Z(t),g=te(t);h||g?h&&g?d&&(d.setDirection?d.setDirection("sendrecv"):d.direction="sendrecv",r.log("Setting video transceiver to sendrecv:",d)):h&&!g?d&&(d.setDirection?d.setDirection("sendonly"):d.direction="sendonly",r.log("Setting video transceiver to sendonly:",d)):!h&&g&&(d?(d.setDirection?d.setDirection("recvonly"):d.direction="recvonly",r.log("Setting video transceiver to recvonly:",d)):(d=i.pc.addTransceiver("video",{direction:"recvonly"}),r.log("Adding recvonly video transceiver:",d))):t.removeVideo&&d&&(d.setDirection?d.setDirection("inactive"):d.direction="inactive",r.log("Setting video transceiver to inactive:",d))}else a="firefox"==r.webRTCAdapter.browserDetails.browser||"edge"==r.webRTCAdapter.browserDetails.browser?{offerToReceiveAudio:Y(t),offerToReceiveVideo:te(t)}:{mandatory:{OfferToReceiveAudio:Y(t),OfferToReceiveVideo:te(t)}};r.debug(a);var v=Z(t);if(v&&s&&"firefox"===r.webRTCAdapter.browserDetails.browser){r.log("Enabling Simulcasting for Firefox (RID)");var y=i.pc.getSenders()[1];r.log(y);var b=y.getParameters();r.log(b),y.setParameters({encodings:[{rid:"high",active:!0,priority:"high",maxBitrate:1e6},{rid:"medium",active:!0,priority:"medium",maxBitrate:3e5},{rid:"low",active:!0,priority:"low",maxBitrate:1e5}]})}i.pc.createAnswer(a).then((function(e){r.debug(e);var t={type:e.type,sdp:e.sdp};n.customizeSdp(t),e.sdp=t.sdp,r.log("Setting local description"),v&&s&&("chrome"===r.webRTCAdapter.browserDetails.browser?r.warn("simulcast=true, but this is an answer, and video breaks in Chrome if we enable it"):"firefox"!==r.webRTCAdapter.browserDetails.browser&&r.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),i.mySdp=e.sdp,i.pc.setLocalDescription(e).catch(n.error),i.mediaConstraints=a,i.iceDone||i.trickle?n.success(e):r.log("Waiting for all candidates...")}),n.error)}function W(e,t){t=t||{},t.success="function"==typeof t.success?t.success:r.noop,t.error="function"==typeof t.error?t.error:r.noop;var n=T[e];if(null!==n&&void 0!==n&&null!==n.webrtcStuff&&void 0!==n.webrtcStuff){var o=n.webrtcStuff;r.log("Sending offer/answer SDP..."),null!==o.mySdp&&void 0!==o.mySdp?(o.mySdp={type:o.pc.localDescription.type,sdp:o.pc.localDescription.sdp},!1===o.trickle&&(o.mySdp["trickle"]=!1),r.debug(t),o.sdpSent=!0,t.success(o.mySdp)):r.warn("Local SDP instance is invalid, not sending anything...")}else r.warn("Invalid handle, not sending anything")}function H(e,t){var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),0;var o=t?"remote":"local",i=n.webrtcStuff;return i.volume[o]||(i.volume[o]={value:0}),i.pc.getStats&&"chrome"===r.webRTCAdapter.browserDetails.browser?!t||null!==i.remoteStream&&void 0!==i.remoteStream?t||null!==i.myStream&&void 0!==i.myStream?null===i.volume[o].timer||void 0===i.volume[o].timer?(r.log("Starting "+o+" volume monitor"),i.volume[o].timer=setInterval((function(){i.pc.getStats((function(e){for(var n=e.result(),r=0;r<n.length;r++){var s=n[r];"ssrc"==s.type&&(t&&s.stat("audioOutputLevel")?i.volume[o].value=parseInt(s.stat("audioOutputLevel")):!t&&s.stat("audioInputLevel")&&(i.volume[o].value=parseInt(s.stat("audioInputLevel"))))}}))}),200),0):i.volume[o].value:(r.warn("Local stream unavailable"),0):(r.warn("Remote stream unavailable"),0):(r.warn("Getting the "+o+" volume unsupported by browser"),0)}function U(e,t){var n=T[e];if(null===n||void 0===n||null===n.webrtcStuff||void 0===n.webrtcStuff)return r.warn("Invalid handle"),!0;var o=n.webrtcStuff;return null===o.pc||void 0===o.pc?(r.warn("Invalid PeerConnection"),!0):void 0===o.myStream||null===o.myStream?(r.warn("Invalid local MediaStream"),!0):t?null===o.myStream.getVideoTracks()||void 0===o.myStream.getVideoTracks()||0===o.myStream.getVideoTracks().length?(r.warn("No video track"),!0):!o.myStream.getVideoTracks()[0].enabled:null===o.myStream.getAudioTracks()||void 0===o.myStream.getAudioTracks()||0===o.myStream.getAudioTracks().length?(r.warn("No audio track"),!0):!o.myStream.getAudioTracks()[0].enabled}function z(e,t,n){var o=T[e];if(null===o||void 0===o||null===o.webrtcStuff||void 0===o.webrtcStuff)return r.warn("Invalid handle"),!1;var i=o.webrtcStuff;return null===i.pc||void 0===i.pc?(r.warn("Invalid PeerConnection"),!1):void 0===i.myStream||null===i.myStream?(r.warn("Invalid local MediaStream"),!1):t?null===i.myStream.getVideoTracks()||void 0===i.myStream.getVideoTracks()||0===i.myStream.getVideoTracks().length?(r.warn("No video track"),!1):(i.myStream.getVideoTracks()[0].enabled=!n,!0):null===i.myStream.getAudioTracks()||void 0===i.myStream.getAudioTracks()||0===i.myStream.getAudioTracks().length?(r.warn("No audio track"),!1):(i.myStream.getAudioTracks()[0].enabled=!n,!0)}function G(e){var t=T[e];if(null===t||void 0===t||null===t.webrtcStuff||void 0===t.webrtcStuff)return r.warn("Invalid handle"),"Invalid handle";var n=t.webrtcStuff;return null===n.pc||void 0===n.pc?"Invalid PeerConnection":n.pc.getStats?null===n.bitrate.timer||void 0===n.bitrate.timer?(r.log("Starting bitrate timer (via getStats)"),n.bitrate.timer=setInterval((function(){n.pc.getStats().then((function(e){e.forEach((function(e){if(e){var t=!1;if(("video"===e.mediaType||e.id.toLowerCase().indexOf("video")>-1)&&"inbound-rtp"===e.type&&e.id.indexOf("rtcp")<0?t=!0:"ssrc"!=e.type||!e.bytesReceived||"VP8"!==e.googCodecName&&""!==e.googCodecName||(t=!0),t)if(n.bitrate.bsnow=e.bytesReceived,n.bitrate.tsnow=e.timestamp,null===n.bitrate.bsbefore||null===n.bitrate.tsbefore)n.bitrate.bsbefore=n.bitrate.bsnow,n.bitrate.tsbefore=n.bitrate.tsnow;else{var o=n.bitrate.tsnow-n.bitrate.tsbefore;"safari"==r.webRTCAdapter.browserDetails.browser&&(o/=1e3);var i=Math.round(8*(n.bitrate.bsnow-n.bitrate.bsbefore)/o);"safari"===r.webRTCAdapter.browserDetails.browser&&(i=parseInt(i/1e3)),n.bitrate.value=i+" kbits/sec",n.bitrate.bsbefore=n.bitrate.bsnow,n.bitrate.tsbefore=n.bitrate.tsnow}}}))}))}),1e3),"0 kbits/sec"):n.bitrate.value:(r.warn("Getting the video bitrate unsupported by browser"),"Feature unsupported by browser")}function J(e){r.error("WebRTC error:",e)}function $(e,o){r.log("Cleaning WebRTC stuff");var i=T[e];if(null!==i&&void 0!==i){var s=i.webrtcStuff;if(null!==s&&void 0!==s){if(!0===o){var a={janus:"hangup",transaction:r.randomString(12)};null!==i.token&&void 0!==i.token&&(a["token"]=i.token),null!==g&&void 0!==g&&(a["apisecret"]=g),r.debug("Sending hangup request (handle="+e+"):"),r.debug(a),t?(a["session_id"]=w,a["handle_id"]=e,n.send(JSON.stringify(a))):r.httpAPICall(c+"/"+w+"/"+e,{verb:"POST",withCredentials:f,body:a})}s.remoteStream=null,s.volume&&(s.volume["local"]&&s.volume["local"].timer&&clearInterval(s.volume["local"].timer),s.volume["remote"]&&s.volume["remote"].timer&&clearInterval(s.volume["remote"].timer)),s.volume={},s.bitrate.timer&&clearInterval(s.bitrate.timer),s.bitrate.timer=null,s.bitrate.bsnow=null,s.bitrate.bsbefore=null,s.bitrate.tsnow=null,s.bitrate.tsbefore=null,s.bitrate.value=null;try{if(!s.streamExternal&&null!==s.myStream&&void 0!==s.myStream){r.log("Stopping local stream tracks");var d=s.myStream.getTracks();for(var u in d){var l=d[u];r.log(l),null!==l&&void 0!==l&&l.stop()}}}catch(p){}s.streamExternal=!1,s.myStream=null;try{s.pc.close()}catch(p){}s.pc=null,s.candidates=null,s.mySdp=null,s.remoteSdp=null,s.iceDone=!1,s.dataChannel={},s.dtmfSender=null}i.oncleanup()}}function Q(e){for(var t=e.split("\r\n"),n=!1,o=[-1],i=[-1],s=null,a=null,c=null,d=null,u=-1,l=0;l<t.length;l++){var p=t[l].match(/m=(\w+) */);if(p){var f=p[1];if("video"===f){if(!(o[0]<0)){u=l;break}n=!0}else if(o[0]>-1){u=l;break}}else if(n){var m=t[l].match(/a=ssrc-group:FID (\d+) (\d+)/);if(m)o[0]=m[1],i[0]=m[2],t.splice(l,1),l--;else{if(o[0]){var h=t[l].match("a=ssrc:"+o[0]+" cname:(.+)");if(h&&(s=h[1]),h=t[l].match("a=ssrc:"+o[0]+" msid:(.+)"),h&&(a=h[1]),h=t[l].match("a=ssrc:"+o[0]+" mslabel:(.+)"),h&&(c=h[1]),h=t[l].match("a=ssrc:"+o[0]+" label:(.+)"),h&&(d=h[1]),0===t[l].indexOf("a=ssrc:"+i[0])){t.splice(l,1),l--;continue}if(0===t[l].indexOf("a=ssrc:"+o[0])){t.splice(l,1),l--;continue}}0!=t[l].length||(t.splice(l,1),l--)}}}if(o[0]<0){u=-1,n=!1;for(l=0;l<t.length;l++){p=t[l].match(/m=(\w+) */);if(p){f=p[1];if("video"===f){if(!(o[0]<0)){u=l;break}n=!0}else if(o[0]>-1){u=l;break}}else if(n){if(o[0]<0){var g=t[l].match(/a=ssrc:(\d+)/);if(g){o[0]=g[1],t.splice(l,1),l--;continue}}else{h=t[l].match("a=ssrc:"+o[0]+" cname:(.+)");if(h&&(s=h[1]),h=t[l].match("a=ssrc:"+o[0]+" msid:(.+)"),h&&(a=h[1]),h=t[l].match("a=ssrc:"+o[0]+" mslabel:(.+)"),h&&(c=h[1]),h=t[l].match("a=ssrc:"+o[0]+" label:(.+)"),h&&(d=h[1]),0===t[l].indexOf("a=ssrc:"+i[0])){t.splice(l,1),l--;continue}if(0===t[l].indexOf("a=ssrc:"+o[0])){t.splice(l,1),l--;continue}}0!=t[l].length||(t.splice(l,1),l--)}}}if(o[0]<0)return r.warn("Couldn't find the video SSRC, simulcasting NOT enabled"),e;u<0&&(u=t.length),o[1]=Math.floor(4294967295*Math.random()),o[2]=Math.floor(4294967295*Math.random()),i[1]=Math.floor(4294967295*Math.random()),i[2]=Math.floor(4294967295*Math.random());for(l=0;l<o.length;l++)s&&(t.splice(u,0,"a=ssrc:"+o[l]+" cname:"+s),u++),a&&(t.splice(u,0,"a=ssrc:"+o[l]+" msid:"+a),u++),c&&(t.splice(u,0,"a=ssrc:"+o[l]+" mslabel:"+c),u++),d&&(t.splice(u,0,"a=ssrc:"+o[l]+" label:"+d),u++),s&&(t.splice(u,0,"a=ssrc:"+i[l]+" cname:"+s),u++),a&&(t.splice(u,0,"a=ssrc:"+i[l]+" msid:"+a),u++),c&&(t.splice(u,0,"a=ssrc:"+i[l]+" mslabel:"+c),u++),d&&(t.splice(u,0,"a=ssrc:"+i[l]+" label:"+d),u++);return t.splice(u,0,"a=ssrc-group:FID "+o[2]+" "+i[2]),t.splice(u,0,"a=ssrc-group:FID "+o[1]+" "+i[1]),t.splice(u,0,"a=ssrc-group:FID "+o[0]+" "+i[0]),t.splice(u,0,"a=ssrc-group:SIM "+o[0]+" "+o[1]+" "+o[2]),e=t.join("\r\n"),e.endsWith("\r\n")||(e+="\r\n"),e}function K(e){return r.debug("isAudioSendEnabled:",e),void 0===e||null===e||!1!==e.audio&&(void 0===e.audioSend||null===e.audioSend||!0===e.audioSend)}function X(e){return r.debug("isAudioSendRequired:",e),void 0!==e&&null!==e&&(!1!==e.audio&&!1!==e.audioSend&&(void 0!==e.failIfNoAudio&&null!==e.failIfNoAudio&&!0===e.failIfNoAudio))}function Y(e){return r.debug("isAudioRecvEnabled:",e),void 0===e||null===e||!1!==e.audio&&(void 0===e.audioRecv||null===e.audioRecv||!0===e.audioRecv)}function Z(e){return r.debug("isVideoSendEnabled:",e),void 0===e||null===e||!1!==e.video&&(void 0===e.videoSend||null===e.videoSend||!0===e.videoSend)}function ee(e){return r.debug("isVideoSendRequired:",e),void 0!==e&&null!==e&&(!1!==e.video&&!1!==e.videoSend&&(void 0!==e.failIfNoVideo&&null!==e.failIfNoVideo&&!0===e.failIfNoVideo))}function te(e){return r.debug("isVideoRecvEnabled:",e),void 0===e||null===e||!1!==e.video&&(void 0===e.videoRecv||null===e.videoRecv||!0===e.videoRecv)}function ne(e){if(r.debug("isScreenSendEnabled:",e),void 0===e||null===e)return!1;if("object"!==typeof e.video||"object"!==typeof e.video.mandatory)return!1;var t=e.video.mandatory;return t.chromeMediaSource?"desktop"===t.chromeMediaSource||"screen"===t.chromeMediaSource:t.mozMediaSource?"window"===t.mozMediaSource||"screen"===t.mozMediaSource:!!t.mediaSource&&("window"===t.mediaSource||"screen"===t.mediaSource)}function re(e){return r.debug("isDataEnabled:",e),"edge"==r.webRTCAdapter.browserDetails.browser?(r.warn("Edge doesn't support data channels yet"),!1):void 0!==e&&null!==e&&!0===e.data}function oe(e){return r.debug("isTrickleEnabled:",e),void 0===e||null===e||!0===e}_(e),this.getServer=function(){return c},this.isConnected=function(){return b},this.reconnect=function(e){e=e||{},e.success="function"==typeof e.success?e.success:r.noop,e.error="function"==typeof e.error?e.error:r.noop,e["reconnect"]=!0,_(e)},this.getSessionId=function(){return w},this.destroy=function(e){A(e)},this.attach=function(e){I(e)}}r.useDefaultDependencies=function(e){var t=e&&e.fetch||fetch,o=e&&e.Promise||Promise,i=e&&e.WebSocket||WebSocket;return{newWebSocket:function(e,t){return new i(e,t)},extension:e&&e.extension||n,isArray:function(e){return Array.isArray(e)},webRTCAdapter:e&&e.adapter||adapter,httpAPICall:function(e,n){var i={method:n.verb,headers:{Accept:"application/json, text/plain, */*"},cache:"no-cache"};"POST"===n.verb&&(i.headers["Content-Type"]="application/json"),void 0!==n.withCredentials&&(i.credentials=!0===n.withCredentials?"include":n.withCredentials?n.withCredentials:"omit"),void 0!==n.body&&(i.body=JSON.stringify(n.body));var s=t(e,i).catch((function(e){return o.reject({message:"Probably a network error, is the server down?",error:e})}));if(void 0!==n.timeout){var a=new o((function(e,t){var r=setTimeout((function(){return clearTimeout(r),t({message:"Request timed out",timeout:n.timeout})}),n.timeout)}));s=o.race([s,a])}return s.then((function(e){return e.ok?typeof n.success===typeof r.noop?e.json().then((function(e){n.success(e)})).catch((function(t){return o.reject({message:"Failed to parse response body",error:t,response:e})})):void 0:o.reject({message:"API call failed",response:e})})).catch((function(e){typeof n.error===typeof r.noop&&n.error(e.message||"<< internal error >>",e)})),s}}},r.useOldDependencies=function(e){var t=e&&e.jQuery||jQuery,o=e&&e.WebSocket||WebSocket;return{newWebSocket:function(e,t){return new o(e,t)},isArray:function(e){return t.isArray(e)},extension:e&&e.extension||n,webRTCAdapter:e&&e.adapter||adapter,httpAPICall:function(e,n){var o=void 0!==n.body?{contentType:"application/json",data:JSON.stringify(n.body)}:{},i=void 0!==n.withCredentials?{xhrFields:{withCredentials:n.withCredentials}}:{};return t.ajax(t.extend(o,i,{url:e,type:n.verb,cache:!1,dataType:"json",async:n.async,timeout:n.timeout,success:function(e){typeof n.success===typeof r.noop&&n.success(e)},error:function(e,t,o){typeof n.error===typeof r.noop&&n.error(t,o)}}))}}},r.noop=function(){},r.dataChanDefaultLabel="JanusDataChannel",r.init=function(e){if(e=e||{},e.callback="function"==typeof e.callback?e.callback:r.noop,!0===r.initDone)e.callback();else{if("undefined"!=typeof console&&"undefined"!=typeof console.log||(console={log:function(){}}),r.trace=r.noop,r.debug=r.noop,r.vdebug=r.noop,r.log=r.noop,r.warn=r.noop,r.error=r.noop,!0===e.debug||"all"===e.debug)r.trace=void 0,r.debug=void 0,r.vdebug=void 0,r.log=void 0,r.warn=void 0,r.error=void 0;else if(Array.isArray(e.debug))for(var t in e.debug){var n=e.debug[t];switch(n){case"trace":r.trace=void 0;break;case"debug":r.debug=void 0;break;case"vdebug":r.vdebug=void 0;break;case"log":r.log=void 0;break;case"warn":r.warn=void 0;break;case"error":r.error=void 0;break;default:break}}r.log("Initializing library");var o=e.dependencies||r.useDefaultDependencies();r.isArray=o.isArray,r.webRTCAdapter=o.webRTCAdapter,r.httpAPICall=o.httpAPICall,r.newWebSocket=o.newWebSocket,r.extension=o.extension,r.extension.init(),r.listDevices=function(e,t){e="function"==typeof e?e:r.noop,null==t&&(t={audio:!0,video:!0}),r.isGetUserMediaAvailable()?navigator.mediaDevices.getUserMedia(t).then((function(t){navigator.mediaDevices.enumerateDevices().then((function(n){r.debug(n),e(n);try{var o=t.getTracks();for(var i in o){var s=o[i];null!==s&&void 0!==s&&s.stop()}}catch(a){}}))})).catch((function(t){r.error("getUserMedia",t),e([])})):(r.warn("navigator.mediaDevices unavailable"),e([]))},r.attachMediaStream=function(e,t){if("chrome"===r.webRTCAdapter.browserDetails.browser){var n=r.webRTCAdapter.browserDetails.version;n>=52?e.srcObject=t:"undefined"!==typeof e.src?e.src=URL.createObjectURL(t):r.error("Error attaching stream to element")}else e.srcObject=t},r.reattachMediaStream=function(e,t){if("chrome"===r.webRTCAdapter.browserDetails.browser){var n=r.webRTCAdapter.browserDetails.version;n>=52?e.srcObject=t.srcObject:"undefined"!==typeof e.src?e.src=t.src:r.error("Error reattaching stream to element")}else e.srcObject=t.srcObject};var i=["iPad","iPhone","iPod"].indexOf(navigator.platform)>=0,s=i?"pagehide":"beforeunload",a=window["on"+s];if(window.addEventListener(s,(function(e){for(var t in r.log("Closing window"),r.sessions)null!==r.sessions[t]&&void 0!==r.sessions[t]&&r.sessions[t].destroyOnUnload&&(r.log("Destroying session "+t),r.sessions[t].destroy({asyncRequest:!1,notifyDestroyed:!1}));a&&"function"==typeof a&&a()})),r.safariVp8=!1,"safari"===r.webRTCAdapter.browserDetails.browser&&r.webRTCAdapter.browserDetails.version>=605)if(RTCRtpSender&&RTCRtpSender.getCapabilities&&RTCRtpSender.getCapabilities("video")&&RTCRtpSender.getCapabilities("video").codecs&&RTCRtpSender.getCapabilities("video").codecs.length){for(var t in RTCRtpSender.getCapabilities("video").codecs){var c=RTCRtpSender.getCapabilities("video").codecs[t];if(c&&c.mimeType&&"video/vp8"===c.mimeType.toLowerCase()){r.safariVp8=!0;break}}r.safariVp8?r.log("This version of Safari supports VP8"):r.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu")}else{var d=new RTCPeerConnection({},{});d.createOffer({offerToReceiveVideo:!0}).then((function(e){r.safariVp8=-1!==e.sdp.indexOf("VP8"),r.safariVp8?r.log("This version of Safari supports VP8"):r.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu"),d.close(),d=null}))}r.initDone=!0,e.callback()}},r.isWebrtcSupported=function(){return void 0!==window.RTCPeerConnection&&null!==window.RTCPeerConnection},r.isGetUserMediaAvailable=function(){return void 0!==navigator.mediaDevices&&null!==navigator.mediaDevices&&void 0!==navigator.mediaDevices.getUserMedia&&null!==navigator.mediaDevices.getUserMedia},r.randomString=function(e){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n="",r=0;r<e;r++){var o=Math.floor(Math.random()*t.length);n+=t.substring(o,o+1)}return n},t.default=r},d093:function(e,t,n){"use strict";n.r(t);var r={};n.r(r),n.d(r,"shimGetUserMedia",(function(){return T})),n.d(r,"shimGetDisplayMedia",(function(){return S})),n.d(r,"shimMediaStream",(function(){return C})),n.d(r,"shimOnTrack",(function(){return P})),n.d(r,"shimGetSendersWithDtmf",(function(){return x})),n.d(r,"shimGetStats",(function(){return k})),n.d(r,"shimSenderReceiverGetStats",(function(){return D})),n.d(r,"shimAddTrackRemoveTrackWithNative",(function(){return _})),n.d(r,"shimAddTrackRemoveTrack",(function(){return A})),n.d(r,"shimPeerConnection",(function(){return I})),n.d(r,"fixNegotiationNeeded",(function(){return R}));var o={};n.r(o),n.d(o,"shimGetUserMedia",(function(){return N})),n.d(o,"shimGetDisplayMedia",(function(){return O})),n.d(o,"shimOnTrack",(function(){return E})),n.d(o,"shimPeerConnection",(function(){return M})),n.d(o,"shimSenderGetStats",(function(){return L})),n.d(o,"shimReceiverGetStats",(function(){return j})),n.d(o,"shimRemoveStream",(function(){return q})),n.d(o,"shimRTCDataChannel",(function(){return V})),n.d(o,"shimAddTransceiver",(function(){return B})),n.d(o,"shimGetParameters",(function(){return F})),n.d(o,"shimCreateOffer",(function(){return W})),n.d(o,"shimCreateAnswer",(function(){return H}));var i={};n.r(i),n.d(i,"shimLocalStreamsAPI",(function(){return U})),n.d(i,"shimRemoteStreamsAPI",(function(){return z})),n.d(i,"shimCallbacksAPI",(function(){return G})),n.d(i,"shimGetUserMedia",(function(){return J})),n.d(i,"shimConstraints",(function(){return $})),n.d(i,"shimRTCIceServerUrls",(function(){return Q})),n.d(i,"shimTrackEventTransceiver",(function(){return K})),n.d(i,"shimCreateOfferLegacy",(function(){return X})),n.d(i,"shimAudioContext",(function(){return Y}));var s={};n.r(s),n.d(s,"shimRTCIceCandidate",(function(){return te})),n.d(s,"shimMaxMessageSize",(function(){return ne})),n.d(s,"shimSendThrowTypeError",(function(){return re})),n.d(s,"shimConnectionState",(function(){return oe})),n.d(s,"removeExtmapAllowMixed",(function(){return ie})),n.d(s,"shimAddIceCandidateNullOrEmpty",(function(){return se})),n.d(s,"shimParameterlessSetLocalDescription",(function(){return ae}));let a=!0,c=!0;function d(e,t,n){const r=e.match(t);return r&&r.length>=n&&parseInt(r[n],10)}function u(e,t,n){if(!e.RTCPeerConnection)return;const r=e.RTCPeerConnection.prototype,o=r.addEventListener;r.addEventListener=function(e,r){if(e!==t)return o.apply(this,arguments);const i=e=>{const t=n(e);t&&(r.handleEvent?r.handleEvent(t):r(t))};return this._eventMap=this._eventMap||{},this._eventMap[t]||(this._eventMap[t]=new Map),this._eventMap[t].set(r,i),o.apply(this,[e,i])};const i=r.removeEventListener;r.removeEventListener=function(e,n){if(e!==t||!this._eventMap||!this._eventMap[t])return i.apply(this,arguments);if(!this._eventMap[t].has(n))return i.apply(this,arguments);const r=this._eventMap[t].get(n);return this._eventMap[t].delete(n),0===this._eventMap[t].size&&delete this._eventMap[t],0===Object.keys(this._eventMap).length&&delete this._eventMap,i.apply(this,[e,r])},Object.defineProperty(r,"on"+t,{get(){return this["_on"+t]},set(e){this["_on"+t]&&(this.removeEventListener(t,this["_on"+t]),delete this["_on"+t]),e&&this.addEventListener(t,this["_on"+t]=e)},enumerable:!0,configurable:!0})}function l(e){return"boolean"!==typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(a=e,e?"adapter.js logging disabled":"adapter.js logging enabled")}function p(e){return"boolean"!==typeof e?new Error("Argument type: "+typeof e+". Please use a boolean."):(c=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))}function f(){if("object"===typeof window){if(a)return;"undefined"!==typeof console&&console.log}}function m(e,t){}function h(e){const t={browser:null,version:null};if("undefined"===typeof e||!e.navigator)return t.browser="Not a browser.",t;const{navigator:n}=e;if(n.mozGetUserMedia)t.browser="firefox",t.version=d(n.userAgent,/Firefox\/(\d+)\./,1);else if(n.webkitGetUserMedia||!1===e.isSecureContext&&e.webkitRTCPeerConnection&&!e.RTCIceGatherer)t.browser="chrome",t.version=d(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!e.RTCPeerConnection||!n.userAgent.match(/AppleWebKit\/(\d+)\./))return t.browser="Not a supported browser.",t;t.browser="safari",t.version=d(n.userAgent,/AppleWebKit\/(\d+)\./,1),t.supportsUnifiedPlan=e.RTCRtpTransceiver&&"currentDirection"in e.RTCRtpTransceiver.prototype}return t}function g(e){return"[object Object]"===Object.prototype.toString.call(e)}function v(e){return g(e)?Object.keys(e).reduce((function(t,n){const r=g(e[n]),o=r?v(e[n]):e[n],i=r&&!Object.keys(o).length;return void 0===o||i?t:Object.assign(t,{[n]:o})}),{}):e}function y(e,t,n){t&&!n.has(t.id)&&(n.set(t.id,t),Object.keys(t).forEach(r=>{r.endsWith("Id")?y(e,e.get(t[r]),n):r.endsWith("Ids")&&t[r].forEach(t=>{y(e,e.get(t),n)})}))}function b(e,t,n){const r=n?"outbound-rtp":"inbound-rtp",o=new Map;if(null===t)return o;const i=[];return e.forEach(e=>{"track"===e.type&&e.trackIdentifier===t.id&&i.push(e)}),i.forEach(t=>{e.forEach(n=>{n.type===r&&n.trackId===t.id&&y(e,n,o)})}),o}const w=f;function T(e,t){const n=e&&e.navigator;if(!n.mediaDevices)return;const r=function(e){if("object"!==typeof e||e.mandatory||e.optional)return e;const t={};return Object.keys(e).forEach(n=>{if("require"===n||"advanced"===n||"mediaSource"===n)return;const r="object"===typeof e[n]?e[n]:{ideal:e[n]};void 0!==r.exact&&"number"===typeof r.exact&&(r.min=r.max=r.exact);const o=function(e,t){return e?e+t.charAt(0).toUpperCase()+t.slice(1):"deviceId"===t?"sourceId":t};if(void 0!==r.ideal){t.optional=t.optional||[];let e={};"number"===typeof r.ideal?(e[o("min",n)]=r.ideal,t.optional.push(e),e={},e[o("max",n)]=r.ideal,t.optional.push(e)):(e[o("",n)]=r.ideal,t.optional.push(e))}void 0!==r.exact&&"number"!==typeof r.exact?(t.mandatory=t.mandatory||{},t.mandatory[o("",n)]=r.exact):["min","max"].forEach(e=>{void 0!==r[e]&&(t.mandatory=t.mandatory||{},t.mandatory[o(e,n)]=r[e])})}),e.advanced&&(t.optional=(t.optional||[]).concat(e.advanced)),t},o=function(e,o){if(t.version>=61)return o(e);if(e=JSON.parse(JSON.stringify(e)),e&&"object"===typeof e.audio){const t=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};e=JSON.parse(JSON.stringify(e)),t(e.audio,"autoGainControl","googAutoGainControl"),t(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=r(e.audio)}if(e&&"object"===typeof e.video){let i=e.video.facingMode;i=i&&("object"===typeof i?i:{ideal:i});const s=t.version<66;if(i&&("user"===i.exact||"environment"===i.exact||"user"===i.ideal||"environment"===i.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||s)){let t;if(delete e.video.facingMode,"environment"===i.exact||"environment"===i.ideal?t=["back","rear"]:"user"!==i.exact&&"user"!==i.ideal||(t=["front"]),t)return n.mediaDevices.enumerateDevices().then(n=>{n=n.filter(e=>"videoinput"===e.kind);let s=n.find(e=>t.some(t=>e.label.toLowerCase().includes(t)));return!s&&n.length&&t.includes("back")&&(s=n[n.length-1]),s&&(e.video.deviceId=i.exact?{exact:s.deviceId}:{ideal:s.deviceId}),e.video=r(e.video),w("chrome: "+JSON.stringify(e)),o(e)})}e.video=r(e.video)}return w("chrome: "+JSON.stringify(e)),o(e)},i=function(e){return t.version>=64?e:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[e.name]||e.name,message:e.message,constraint:e.constraint||e.constraintName,toString(){return this.name+(this.message&&": ")+this.message}}},s=function(e,t,r){o(e,e=>{n.webkitGetUserMedia(e,t,e=>{r&&r(i(e))})})};if(n.getUserMedia=s.bind(n),n.mediaDevices.getUserMedia){const e=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(t){return o(t,t=>e(t).then(e=>{if(t.audio&&!e.getAudioTracks().length||t.video&&!e.getVideoTracks().length)throw e.getTracks().forEach(e=>{e.stop()}),new DOMException("","NotFoundError");return e},e=>Promise.reject(i(e))))}}}function S(e,t){e.navigator.mediaDevices&&"getDisplayMedia"in e.navigator.mediaDevices||e.navigator.mediaDevices&&"function"===typeof t&&(e.navigator.mediaDevices.getDisplayMedia=function(n){return t(n).then(t=>{const r=n.video&&n.video.width,o=n.video&&n.video.height,i=n.video&&n.video.frameRate;return n.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:t,maxFrameRate:i||3}},r&&(n.video.mandatory.maxWidth=r),o&&(n.video.mandatory.maxHeight=o),e.navigator.mediaDevices.getUserMedia(n)})})}function C(e){e.MediaStream=e.MediaStream||e.webkitMediaStream}function P(e){if("object"===typeof e&&e.RTCPeerConnection&&!("ontrack"in e.RTCPeerConnection.prototype)){Object.defineProperty(e.RTCPeerConnection.prototype,"ontrack",{get(){return this._ontrack},set(e){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=e)},enumerable:!0,configurable:!0});const t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){return this._ontrackpoly||(this._ontrackpoly=t=>{t.stream.addEventListener("addtrack",n=>{let r;r=e.RTCPeerConnection.prototype.getReceivers?this.getReceivers().find(e=>e.track&&e.track.id===n.track.id):{track:n.track};const o=new Event("track");o.track=n.track,o.receiver=r,o.transceiver={receiver:r},o.streams=[t.stream],this.dispatchEvent(o)}),t.stream.getTracks().forEach(n=>{let r;r=e.RTCPeerConnection.prototype.getReceivers?this.getReceivers().find(e=>e.track&&e.track.id===n.id):{track:n};const o=new Event("track");o.track=n,o.receiver=r,o.transceiver={receiver:r},o.streams=[t.stream],this.dispatchEvent(o)})},this.addEventListener("addstream",this._ontrackpoly)),t.apply(this,arguments)}}else u(e,"track",e=>(e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e))}function x(e){if("object"===typeof e&&e.RTCPeerConnection&&!("getSenders"in e.RTCPeerConnection.prototype)&&"createDTMFSender"in e.RTCPeerConnection.prototype){const t=function(e,t){return{track:t,get dtmf(){return void 0===this._dtmf&&("audio"===t.kind?this._dtmf=e.createDTMFSender(t):this._dtmf=null),this._dtmf},_pc:e}};if(!e.RTCPeerConnection.prototype.getSenders){e.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};const n=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,r){let o=n.apply(this,arguments);return o||(o=t(this,e),this._senders.push(o)),o};const r=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){r.apply(this,arguments);const t=this._senders.indexOf(e);-1!==t&&this._senders.splice(t,1)}}const n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){this._senders=this._senders||[],n.apply(this,[e]),e.getTracks().forEach(e=>{this._senders.push(t(this,e))})};const r=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){this._senders=this._senders||[],r.apply(this,[e]),e.getTracks().forEach(e=>{const t=this._senders.find(t=>t.track===e);t&&this._senders.splice(this._senders.indexOf(t),1)})}}else if("object"===typeof e&&e.RTCPeerConnection&&"getSenders"in e.RTCPeerConnection.prototype&&"createDTMFSender"in e.RTCPeerConnection.prototype&&e.RTCRtpSender&&!("dtmf"in e.RTCRtpSender.prototype)){const t=e.RTCPeerConnection.prototype.getSenders;e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e},Object.defineProperty(e.RTCRtpSender.prototype,"dtmf",{get(){return void 0===this._dtmf&&("audio"===this.track.kind?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function k(e){if(!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){const[e,n,r]=arguments;if(arguments.length>0&&"function"===typeof e)return t.apply(this,arguments);if(0===t.length&&(0===arguments.length||"function"!==typeof e))return t.apply(this,[]);const o=function(e){const t={},n=e.result();return n.forEach(e=>{const n={id:e.id,timestamp:e.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[e.type]||e.type};e.names().forEach(t=>{n[t]=e.stat(t)}),t[n.id]=n}),t},i=function(e){return new Map(Object.keys(e).map(t=>[t,e[t]]))};if(arguments.length>=2){const r=function(e){n(i(o(e)))};return t.apply(this,[r,e])}return new Promise((e,n)=>{t.apply(this,[function(t){e(i(o(t)))},n])}).then(n,r)}}function D(e){if(!("object"===typeof e&&e.RTCPeerConnection&&e.RTCRtpSender&&e.RTCRtpReceiver))return;if(!("getStats"in e.RTCRtpSender.prototype)){const t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e});const n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){const e=n.apply(this,arguments);return e._pc=this,e}),e.RTCRtpSender.prototype.getStats=function(){const e=this;return this._pc.getStats().then(t=>b(t,e.track,!0))}}if(!("getStats"in e.RTCRtpReceiver.prototype)){const t=e.RTCPeerConnection.prototype.getReceivers;t&&(e.RTCPeerConnection.prototype.getReceivers=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e}),u(e,"track",e=>(e.receiver._pc=e.srcElement,e)),e.RTCRtpReceiver.prototype.getStats=function(){const e=this;return this._pc.getStats().then(t=>b(t,e.track,!1))}}if(!("getStats"in e.RTCRtpSender.prototype)||!("getStats"in e.RTCRtpReceiver.prototype))return;const t=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof e.MediaStreamTrack){const e=arguments[0];let t,n,r;return this.getSenders().forEach(n=>{n.track===e&&(t?r=!0:t=n)}),this.getReceivers().forEach(t=>(t.track===e&&(n?r=!0:n=t),t.track===e)),r||t&&n?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):t?t.getStats():n?n.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return t.apply(this,arguments)}}function _(e){e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(e=>this._shimmedLocalStreams[e][0])};const t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,n){if(!n)return t.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};const r=t.apply(this,arguments);return this._shimmedLocalStreams[n.id]?-1===this._shimmedLocalStreams[n.id].indexOf(r)&&this._shimmedLocalStreams[n.id].push(r):this._shimmedLocalStreams[n.id]=[n,r],r};const n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){this._shimmedLocalStreams=this._shimmedLocalStreams||{},e.getTracks().forEach(e=>{const t=this.getSenders().find(t=>t.track===e);if(t)throw new DOMException("Track already exists.","InvalidAccessError")});const t=this.getSenders();n.apply(this,arguments);const r=this.getSenders().filter(e=>-1===t.indexOf(e));this._shimmedLocalStreams[e.id]=[e].concat(r)};const r=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[e.id],r.apply(this,arguments)};const o=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},e&&Object.keys(this._shimmedLocalStreams).forEach(t=>{const n=this._shimmedLocalStreams[t].indexOf(e);-1!==n&&this._shimmedLocalStreams[t].splice(n,1),1===this._shimmedLocalStreams[t].length&&delete this._shimmedLocalStreams[t]}),o.apply(this,arguments)}}function A(e,t){if(!e.RTCPeerConnection)return;if(e.RTCPeerConnection.prototype.addTrack&&t.version>=65)return _(e);const n=e.RTCPeerConnection.prototype.getLocalStreams;e.RTCPeerConnection.prototype.getLocalStreams=function(){const e=n.apply(this);return this._reverseStreams=this._reverseStreams||{},e.map(e=>this._reverseStreams[e.id])};const r=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(t){if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},t.getTracks().forEach(e=>{const t=this.getSenders().find(t=>t.track===e);if(t)throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[t.id]){const n=new e.MediaStream(t.getTracks());this._streams[t.id]=n,this._reverseStreams[n.id]=t,t=n}r.apply(this,[t])};const o=e.RTCPeerConnection.prototype.removeStream;function i(e,t){let n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(t=>{const r=e._reverseStreams[t],o=e._streams[r.id];n=n.replace(new RegExp(o.id,"g"),r.id)}),new RTCSessionDescription({type:t.type,sdp:n})}function s(e,t){let n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(t=>{const r=e._reverseStreams[t],o=e._streams[r.id];n=n.replace(new RegExp(r.id,"g"),o.id)}),new RTCSessionDescription({type:t.type,sdp:n})}e.RTCPeerConnection.prototype.removeStream=function(e){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},o.apply(this,[this._streams[e.id]||e]),delete this._reverseStreams[this._streams[e.id]?this._streams[e.id].id:e.id],delete this._streams[e.id]},e.RTCPeerConnection.prototype.addTrack=function(t,n){if("closed"===this.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");const r=[].slice.call(arguments,1);if(1!==r.length||!r[0].getTracks().find(e=>e===t))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");const o=this.getSenders().find(e=>e.track===t);if(o)throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};const i=this._streams[n.id];if(i)i.addTrack(t),Promise.resolve().then(()=>{this.dispatchEvent(new Event("negotiationneeded"))});else{const r=new e.MediaStream([t]);this._streams[n.id]=r,this._reverseStreams[r.id]=n,this.addStream(r)}return this.getSenders().find(e=>e.track===t)},["createOffer","createAnswer"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){const e=arguments,t=arguments.length&&"function"===typeof arguments[0];return t?n.apply(this,[t=>{const n=i(this,t);e[0].apply(null,[n])},t=>{e[1]&&e[1].apply(null,t)},arguments[2]]):n.apply(this,arguments).then(e=>i(this,e))}};e.RTCPeerConnection.prototype[t]=r[t]}));const a=e.RTCPeerConnection.prototype.setLocalDescription;e.RTCPeerConnection.prototype.setLocalDescription=function(){return arguments.length&&arguments[0].type?(arguments[0]=s(this,arguments[0]),a.apply(this,arguments)):a.apply(this,arguments)};const c=Object.getOwnPropertyDescriptor(e.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(e.RTCPeerConnection.prototype,"localDescription",{get(){const e=c.get.apply(this);return""===e.type?e:i(this,e)}}),e.RTCPeerConnection.prototype.removeTrack=function(e){if("closed"===this.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!e._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");const t=e._pc===this;if(!t)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");let n;this._streams=this._streams||{},Object.keys(this._streams).forEach(t=>{const r=this._streams[t].getTracks().find(t=>e.track===t);r&&(n=this._streams[t])}),n&&(1===n.getTracks().length?this.removeStream(this._reverseStreams[n.id]):n.removeTrack(e.track),this.dispatchEvent(new Event("negotiationneeded")))}}function I(e,t){!e.RTCPeerConnection&&e.webkitRTCPeerConnection&&(e.RTCPeerConnection=e.webkitRTCPeerConnection),e.RTCPeerConnection&&t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}};e.RTCPeerConnection.prototype[t]=r[t]}))}function R(e,t){u(e,"negotiationneeded",e=>{const n=e.target;if(!(t.version<72||n.getConfiguration&&"plan-b"===n.getConfiguration().sdpSemantics)||"stable"===n.signalingState)return e})}function N(e,t){const n=e&&e.navigator,r=e&&e.MediaStreamTrack;if(n.getUserMedia=function(e,t,r){m("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,r)},!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){const e=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},t=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(n){return"object"===typeof n&&"object"===typeof n.audio&&(n=JSON.parse(JSON.stringify(n)),e(n.audio,"autoGainControl","mozAutoGainControl"),e(n.audio,"noiseSuppression","mozNoiseSuppression")),t(n)},r&&r.prototype.getSettings){const t=r.prototype.getSettings;r.prototype.getSettings=function(){const n=t.apply(this,arguments);return e(n,"mozAutoGainControl","autoGainControl"),e(n,"mozNoiseSuppression","noiseSuppression"),n}}if(r&&r.prototype.applyConstraints){const t=r.prototype.applyConstraints;r.prototype.applyConstraints=function(n){return"audio"===this.kind&&"object"===typeof n&&(n=JSON.parse(JSON.stringify(n)),e(n,"autoGainControl","mozAutoGainControl"),e(n,"noiseSuppression","mozNoiseSuppression")),t.apply(this,[n])}}}}function O(e,t){e.navigator.mediaDevices&&"getDisplayMedia"in e.navigator.mediaDevices||e.navigator.mediaDevices&&(e.navigator.mediaDevices.getDisplayMedia=function(n){if(!n||!n.video){const e=new DOMException("getDisplayMedia without video constraints is undefined");return e.name="NotFoundError",e.code=8,Promise.reject(e)}return!0===n.video?n.video={mediaSource:t}:n.video.mediaSource=t,e.navigator.mediaDevices.getUserMedia(n)})}function E(e){"object"===typeof e&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function M(e,t){if("object"!==typeof e||!e.RTCPeerConnection&&!e.mozRTCPeerConnection)return;!e.RTCPeerConnection&&e.mozRTCPeerConnection&&(e.RTCPeerConnection=e.mozRTCPeerConnection),t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach((function(t){const n=e.RTCPeerConnection.prototype[t],r={[t](){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}};e.RTCPeerConnection.prototype[t]=r[t]}));const n={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},r=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){const[e,o,i]=arguments;return r.apply(this,[e||null]).then(e=>{if(t.version<53&&!o)try{e.forEach(e=>{e.type=n[e.type]||e.type})}catch(r){if("TypeError"!==r.name)throw r;e.forEach((t,r)=>{e.set(r,Object.assign({},t,{type:n[t.type]||t.type}))})}return e}).then(o,i)}}function L(e){if("object"!==typeof e||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpSender.prototype)return;const t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e});const n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){const e=n.apply(this,arguments);return e._pc=this,e}),e.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}function j(e){if("object"!==typeof e||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpReceiver.prototype)return;const t=e.RTCPeerConnection.prototype.getReceivers;t&&(e.RTCPeerConnection.prototype.getReceivers=function(){const e=t.apply(this,[]);return e.forEach(e=>e._pc=this),e}),u(e,"track",e=>(e.receiver._pc=e.srcElement,e)),e.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}function q(e){e.RTCPeerConnection&&!("removeStream"in e.RTCPeerConnection.prototype)&&(e.RTCPeerConnection.prototype.removeStream=function(e){m("removeStream","removeTrack"),this.getSenders().forEach(t=>{t.track&&e.getTracks().includes(t.track)&&this.removeTrack(t)})})}function V(e){e.DataChannel&&!e.RTCDataChannel&&(e.RTCDataChannel=e.DataChannel)}function B(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.addTransceiver;t&&(e.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];const e=arguments[1],n=e&&"sendEncodings"in e;n&&e.sendEncodings.forEach(e=>{if("rid"in e){const t=/^[a-z0-9]{0,16}$/i;if(!t.test(e.rid))throw new TypeError("Invalid RID value provided.")}if("scaleResolutionDownBy"in e&&!(parseFloat(e.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in e&&!(parseFloat(e.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});const r=t.apply(this,arguments);if(n){const{sender:t}=r,n=t.getParameters();(!("encodings"in n)||1===n.encodings.length&&0===Object.keys(n.encodings[0]).length)&&(n.encodings=e.sendEncodings,t.sendEncodings=e.sendEncodings,this.setParametersPromises.push(t.setParameters(n).then(()=>{delete t.sendEncodings}).catch(()=>{delete t.sendEncodings})))}return r})}function F(e){if("object"!==typeof e||!e.RTCRtpSender)return;const t=e.RTCRtpSender.prototype.getParameters;t&&(e.RTCRtpSender.prototype.getParameters=function(){const e=t.apply(this,arguments);return"encodings"in e||(e.encodings=[].concat(this.sendEncodings||[{}])),e})}function W(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>t.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):t.apply(this,arguments)}}function H(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype.createAnswer;e.RTCPeerConnection.prototype.createAnswer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>t.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):t.apply(this,arguments)}}function U(e){if("object"===typeof e&&e.RTCPeerConnection){if("getLocalStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in e.RTCPeerConnection.prototype)){const t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){this._localStreams||(this._localStreams=[]),this._localStreams.includes(e)||this._localStreams.push(e),e.getAudioTracks().forEach(n=>t.call(this,n,e)),e.getVideoTracks().forEach(n=>t.call(this,n,e))},e.RTCPeerConnection.prototype.addTrack=function(e,...n){return n&&n.forEach(e=>{this._localStreams?this._localStreams.includes(e)||this._localStreams.push(e):this._localStreams=[e]}),t.apply(this,arguments)}}"removeStream"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.removeStream=function(e){this._localStreams||(this._localStreams=[]);const t=this._localStreams.indexOf(e);if(-1===t)return;this._localStreams.splice(t,1);const n=e.getTracks();this.getSenders().forEach(e=>{n.includes(e.track)&&this.removeTrack(e)})})}}function z(e){if("object"===typeof e&&e.RTCPeerConnection&&("getRemoteStreams"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in e.RTCPeerConnection.prototype))){Object.defineProperty(e.RTCPeerConnection.prototype,"onaddstream",{get(){return this._onaddstream},set(e){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=e),this.addEventListener("track",this._onaddstreampoly=e=>{e.streams.forEach(e=>{if(this._remoteStreams||(this._remoteStreams=[]),this._remoteStreams.includes(e))return;this._remoteStreams.push(e);const t=new Event("addstream");t.stream=e,this.dispatchEvent(t)})})}});const t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){const e=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(t){t.streams.forEach(t=>{if(e._remoteStreams||(e._remoteStreams=[]),e._remoteStreams.indexOf(t)>=0)return;e._remoteStreams.push(t);const n=new Event("addstream");n.stream=t,e.dispatchEvent(n)})}),t.apply(e,arguments)}}}function G(e){if("object"!==typeof e||!e.RTCPeerConnection)return;const t=e.RTCPeerConnection.prototype,n=t.createOffer,r=t.createAnswer,o=t.setLocalDescription,i=t.setRemoteDescription,s=t.addIceCandidate;t.createOffer=function(e,t){const r=arguments.length>=2?arguments[2]:arguments[0],o=n.apply(this,[r]);return t?(o.then(e,t),Promise.resolve()):o},t.createAnswer=function(e,t){const n=arguments.length>=2?arguments[2]:arguments[0],o=r.apply(this,[n]);return t?(o.then(e,t),Promise.resolve()):o};let a=function(e,t,n){const r=o.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r};t.setLocalDescription=a,a=function(e,t,n){const r=i.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.setRemoteDescription=a,a=function(e,t,n){const r=s.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.addIceCandidate=a}function J(e){const t=e&&e.navigator;if(t.mediaDevices&&t.mediaDevices.getUserMedia){const e=t.mediaDevices,n=e.getUserMedia.bind(e);t.mediaDevices.getUserMedia=e=>n($(e))}!t.getUserMedia&&t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,r){t.mediaDevices.getUserMedia(e).then(n,r)}.bind(t))}function $(e){return e&&void 0!==e.video?Object.assign({},e,{video:v(e.video)}):e}function Q(e){if(!e.RTCPeerConnection)return;const t=e.RTCPeerConnection;e.RTCPeerConnection=function(e,n){if(e&&e.iceServers){const t=[];for(let n=0;n<e.iceServers.length;n++){let r=e.iceServers[n];!r.hasOwnProperty("urls")&&r.hasOwnProperty("url")?(m("RTCIceServer.url","RTCIceServer.urls"),r=JSON.parse(JSON.stringify(r)),r.urls=r.url,delete r.url,t.push(r)):t.push(e.iceServers[n])}e.iceServers=t}return new t(e,n)},e.RTCPeerConnection.prototype=t.prototype,"generateCertificate"in t&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get(){return t.generateCertificate}})}function K(e){"object"===typeof e&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function X(e){const t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){if(e){"undefined"!==typeof e.offerToReceiveAudio&&(e.offerToReceiveAudio=!!e.offerToReceiveAudio);const t=this.getTransceivers().find(e=>"audio"===e.receiver.track.kind);!1===e.offerToReceiveAudio&&t?"sendrecv"===t.direction?t.setDirection?t.setDirection("sendonly"):t.direction="sendonly":"recvonly"===t.direction&&(t.setDirection?t.setDirection("inactive"):t.direction="inactive"):!0!==e.offerToReceiveAudio||t||this.addTransceiver("audio",{direction:"recvonly"}),"undefined"!==typeof e.offerToReceiveVideo&&(e.offerToReceiveVideo=!!e.offerToReceiveVideo);const n=this.getTransceivers().find(e=>"video"===e.receiver.track.kind);!1===e.offerToReceiveVideo&&n?"sendrecv"===n.direction?n.setDirection?n.setDirection("sendonly"):n.direction="sendonly":"recvonly"===n.direction&&(n.setDirection?n.setDirection("inactive"):n.direction="inactive"):!0!==e.offerToReceiveVideo||n||this.addTransceiver("video",{direction:"recvonly"})}return t.apply(this,arguments)}}function Y(e){"object"!==typeof e||e.AudioContext||(e.AudioContext=e.webkitAudioContext)}var Z=n("282b"),ee=n.n(Z);function te(e){if(!e.RTCIceCandidate||e.RTCIceCandidate&&"foundation"in e.RTCIceCandidate.prototype)return;const t=e.RTCIceCandidate;e.RTCIceCandidate=function(e){if("object"===typeof e&&e.candidate&&0===e.candidate.indexOf("a=")&&(e=JSON.parse(JSON.stringify(e)),e.candidate=e.candidate.substr(2)),e.candidate&&e.candidate.length){const n=new t(e),r=ee.a.parseCandidate(e.candidate),o=Object.assign(n,r);return o.toJSON=function(){return{candidate:o.candidate,sdpMid:o.sdpMid,sdpMLineIndex:o.sdpMLineIndex,usernameFragment:o.usernameFragment}},o}return new t(e)},e.RTCIceCandidate.prototype=t.prototype,u(e,"icecandidate",t=>(t.candidate&&Object.defineProperty(t,"candidate",{value:new e.RTCIceCandidate(t.candidate),writable:"false"}),t))}function ne(e,t){if(!e.RTCPeerConnection)return;"sctp"in e.RTCPeerConnection.prototype||Object.defineProperty(e.RTCPeerConnection.prototype,"sctp",{get(){return"undefined"===typeof this._sctp?null:this._sctp}});const n=function(e){if(!e||!e.sdp)return!1;const t=ee.a.splitSections(e.sdp);return t.shift(),t.some(e=>{const t=ee.a.parseMLine(e);return t&&"application"===t.kind&&-1!==t.protocol.indexOf("SCTP")})},r=function(e){const t=e.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(null===t||t.length<2)return-1;const n=parseInt(t[1],10);return n!==n?-1:n},o=function(e){let n=65536;return"firefox"===t.browser&&(n=t.version<57?-1===e?16384:2147483637:t.version<60?57===t.version?65535:65536:2147483637),n},i=function(e,n){let r=65536;"firefox"===t.browser&&57===t.version&&(r=65535);const o=ee.a.matchPrefix(e.sdp,"a=max-message-size:");return o.length>0?r=parseInt(o[0].substr(19),10):"firefox"===t.browser&&-1!==n&&(r=2147483637),r},s=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,"chrome"===t.browser&&t.version>=76){const{sdpSemantics:e}=this.getConfiguration();"plan-b"===e&&Object.defineProperty(this,"sctp",{get(){return"undefined"===typeof this._sctp?null:this._sctp},enumerable:!0,configurable:!0})}if(n(arguments[0])){const e=r(arguments[0]),t=o(e),n=i(arguments[0],e);let s;s=0===t&&0===n?Number.POSITIVE_INFINITY:0===t||0===n?Math.max(t,n):Math.min(t,n);const a={};Object.defineProperty(a,"maxMessageSize",{get(){return s}}),this._sctp=a}return s.apply(this,arguments)}}function re(e){if(!e.RTCPeerConnection||!("createDataChannel"in e.RTCPeerConnection.prototype))return;function t(e,t){const n=e.send;e.send=function(){const r=arguments[0],o=r.length||r.size||r.byteLength;if("open"===e.readyState&&t.sctp&&o>t.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+t.sctp.maxMessageSize+" bytes)");return n.apply(e,arguments)}}const n=e.RTCPeerConnection.prototype.createDataChannel;e.RTCPeerConnection.prototype.createDataChannel=function(){const e=n.apply(this,arguments);return t(e,this),e},u(e,"datachannel",e=>(t(e.channel,e.target),e))}function oe(e){if(!e.RTCPeerConnection||"connectionState"in e.RTCPeerConnection.prototype)return;const t=e.RTCPeerConnection.prototype;Object.defineProperty(t,"connectionState",{get(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(t,"onconnectionstatechange",{get(){return this._onconnectionstatechange||null},set(e){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),e&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=e)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(e=>{const n=t[e];t[e]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=e=>{const t=e.target;if(t._lastConnectionState!==t.connectionState){t._lastConnectionState=t.connectionState;const n=new Event("connectionstatechange",e);t.dispatchEvent(n)}return e},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n.apply(this,arguments)}})}function ie(e,t){if(!e.RTCPeerConnection)return;if("chrome"===t.browser&&t.version>=71)return;if("safari"===t.browser&&t.version>=605)return;const n=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(t){if(t&&t.sdp&&-1!==t.sdp.indexOf("\na=extmap-allow-mixed")){const n=t.sdp.split("\n").filter(e=>"a=extmap-allow-mixed"!==e.trim()).join("\n");e.RTCSessionDescription&&t instanceof e.RTCSessionDescription?arguments[0]=new e.RTCSessionDescription({type:t.type,sdp:n}):t.sdp=n}return n.apply(this,arguments)}}function se(e,t){if(!e.RTCPeerConnection||!e.RTCPeerConnection.prototype)return;const n=e.RTCPeerConnection.prototype.addIceCandidate;n&&0!==n.length&&(e.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?("chrome"===t.browser&&t.version<78||"firefox"===t.browser&&t.version<68||"safari"===t.browser)&&arguments[0]&&""===arguments[0].candidate?Promise.resolve():n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function ae(e,t){if(!e.RTCPeerConnection||!e.RTCPeerConnection.prototype)return;const n=e.RTCPeerConnection.prototype.setLocalDescription;n&&0!==n.length&&(e.RTCPeerConnection.prototype.setLocalDescription=function(){let e=arguments[0]||{};if("object"!==typeof e||e.type&&e.sdp)return n.apply(this,arguments);if(e={type:e.type,sdp:e.sdp},!e.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":e.type="offer";break;default:e.type="answer";break}if(e.sdp||"offer"!==e.type&&"answer"!==e.type)return n.apply(this,[e]);const t="offer"===e.type?this.createOffer:this.createAnswer;return t.apply(this).then(e=>n.apply(this,[e]))})}function ce({window:e}={},t={shimChrome:!0,shimFirefox:!0,shimSafari:!0}){const n=f,a=h(e),c={browserDetails:a,commonShim:s,extractVersion:d,disableLog:l,disableWarnings:p,sdp:Z};switch(a.browser){case"chrome":if(!r||!I||!t.shimChrome)return n("Chrome shim is not included in this adapter release."),c;if(null===a.version)return n("Chrome shim can not determine version, not shimming."),c;n("adapter.js shimming chrome."),c.browserShim=r,se(e,a),ae(e,a),T(e,a),C(e,a),I(e,a),P(e,a),A(e,a),x(e,a),k(e,a),D(e,a),R(e,a),te(e,a),oe(e,a),ne(e,a),re(e,a),ie(e,a);break;case"firefox":if(!o||!M||!t.shimFirefox)return n("Firefox shim is not included in this adapter release."),c;n("adapter.js shimming firefox."),c.browserShim=o,se(e,a),ae(e,a),N(e,a),M(e,a),E(e,a),q(e,a),L(e,a),j(e,a),V(e,a),B(e,a),F(e,a),W(e,a),H(e,a),te(e,a),oe(e,a),ne(e,a),re(e,a);break;case"safari":if(!i||!t.shimSafari)return n("Safari shim is not included in this adapter release."),c;n("adapter.js shimming safari."),c.browserShim=i,se(e,a),ae(e,a),Q(e,a),X(e,a),G(e,a),U(e,a),z(e,a),K(e,a),J(e,a),Y(e,a),te(e,a),ne(e,a),re(e,a),ie(e,a);break;default:n("Unsupported browser!");break}return c}const de=ce({window:"undefined"===typeof window?void 0:window});t["default"]=de},fae3:function(e,t,n){"use strict";if(n.r(t),n.d(t,"dologin",(function(){return te})),n.d(t,"doLogout",(function(){return ne})),n.d(t,"keepHeart",(function(){return re})),n.d(t,"initCometd",(function(){return Y})),n.d(t,"initVideo",(function(){return ee})),n.d(t,"sha256_digest",(function(){return J})),n.d(t,"accountOp",(function(){return oe})),n.d(t,"aduioOp",(function(){return ie})),n.d(t,"aduioVideoOp",(function(){return se})),n.d(t,"deptOp",(function(){return ae})),n.d(t,"deptRyOp",(function(){return ce})),n.d(t,"locationOp",(function(){return de})),n.d(t,"meetOp",(function(){return ue})),n.d(t,"messageOp",(function(){return le})),n.d(t,"recordOp",(function(){return pe})),n.d(t,"videoOp",(function(){return fe})),n.d(t,"account",(function(){return a})),n.d(t,"aduio",(function(){return d})),n.d(t,"aduio_video",(function(){return l})),n.d(t,"dept_ry",(function(){return f})),n.d(t,"dept",(function(){return h})),n.d(t,"location",(function(){return v})),n.d(t,"meet",(function(){return b})),n.d(t,"message",(function(){return T})),n.d(t,"record",(function(){return C})),n.d(t,"video",(function(){return x})),"undefined"!==typeof window){var r=window.document.currentScript,o=n("8875");r=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var i=r&&r.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);i&&(n.p=i[1])}let s={loginNet:{url:"/scooper-core-rest/data/system/authManage/loginTo",method:"POST",requestParam:{accUsername:"",accPassword:""},responseParam:{code:"",message:"",systemTime:"",data:""}},heartBeatNet:{url:"/dispatch-web/api/conn/heartKeep",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:""}},logoutNet:{url:"/scooper-core-rest/data/system/authManage/logout",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:""}},accountMqttNet:{topic:"/notify/auth/connect",responseParam:{id:"",type:"",source:"",data:{user:"",token:"",status:""}}},accountHttpNet:{url:"/notify/auth/connect",method:"POST",requestParam:{user:"",type:"connectStatus",status:""},responseParam:{code:""}},saveAccountNet:{url:"/scooper-core-rest/data/system/accountManage/saveAccount",method:"POST",requestParam:{token:"",accUsername:"",accPassword:"",accShowname:"",accType:"",memId:"",relDispUsername:"",useSbc:"",businessConfigs:"",sipTel:"",dispatchAccount:"",roleIds:1,isOperAcc:!1,centerId:0,operLevel:0,operType:0,operatorId:0,mainTel:"",viceTel:"",corpId:"",pocTel:"",operMobileTel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},updateAccountNet:{url:"/scooper-core-rest/data/system/accountManage/updateAccount",method:"POST",requestParam:{id:"",token:"",accUsername:"",accPassword:"",accShowname:"",accType:"",memId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},deleteAccountNet:{url:"/scooper-core-rest/data/system/accountManage/deleteAccount",method:"POST",requestParam:{ids:"",token:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},resetPwdNet:{url:"/scooper-core-rest/data/system/accountManage/resetPwd",method:"POST",requestParam:{id:"",token:"",accUsername:"",origPwd:"",newPwd:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},resetSelfPwdNet:{url:"/data/system/accountManage/resetSelfPwd",method:"POST",requestParam:{token:"",origPwd:"",newPwd:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listAccountNet:{url:"/scooper-core-rest/data/system/accountManage/listAccount",method:"POST",requestParam:{corpId:"",accUsername:"",keyword:"",accType:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:""}]}},queryAccountNet:{url:"/scooper-core-rest/data/system/accountManage/queryAccount",method:"POST",requestParam:{currentPage:"",token:"",pageSize:"",id:"",accUsername:"",accShowname:"",accType:"",validToken:"",invalidTimeStart:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:"",list:[{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:""}]}}},getAccountLinkMemberNet:{url:"/scooper-core-rest/data/system/accountManage/getAccountLinkMember",method:"POST",requestParam:{token:"",accUsername:"",id:"",validToken:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",useSbc:"",single:"",jkSbc:"",memId:"",memName:"",deptId:"",deptName:"",orgCode:"",sex:"",memTel:"",memMobile:""}}},updateDeptDataPermission:{url:"/scooper-core-rest/data/system/permisions/pmDataRPermManage/updatePmDataRPerm",method:"POST",requestParam:{accId:"",deptOrgCodes:""},responseParam:{code:"",message:"",systemTime:"",data:{obj:0}}},getAccountDetailNet:{url:"/scooper-core-rest/data/system/accountManage/getAccountDetail",method:"POST",requestParam:{token:"",accUsername:"",id:"",validToken:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",groupId:"",accUsername:"",accPassword:"",accShowname:"",accType:"",scopeDept:"",scopeVideo:"",validToken:"",isActive:"",modifyTime:"",createTime:"",invalidTime:"",accessTime:"",useSbc:"",modifyPwdTime:"",realDispUsername:"",businessConfigList:{id:"",accId:"",type:"",actived:"",lastOnline:"",modifyTime:"",ext:""},single:"",jkSbc:"",PmDataList:{accId:"",deptOrgCode:"",isActive:"",deptName:""}}}},accountAddMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},accountUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},accountDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/account",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:{}}}},accountAddHttpNet:function(){return{url:"/data/dataChange/account/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},accountUpdateHttpNet:function(){return{url:"/data/dataChange/account/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},accountDeleteHttpNet:function(){return{url:"/data/dataChange/account/delete",method:"POST",requestParam:{ids:""},responseParam:{code:""}}}};var a=s;let c={callNet:{url:"/dispatch-web/api/call/makeCall",method:"POST",requestParam:{token:"",caller:"",callee:"",businessId:"",isRecord:""},responseParam:{code:"",message:"",systemTime:"",data:""}},answerNet:{url:"/dispatch-web/api/call/answer",method:"POST",requestParam:{token:"",tel:"",businessId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},holdNet:{url:"/dispatch-web/api/call/hold",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},unholdNet:{url:"/dispatch-web/api/call/unhold",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},transferNet:{url:"/dispatch-web/api/call/transfer",method:"POST",requestParam:{token:"",from:"",to:"",businessId:""},responseParam:{code:"",message:"",systemTime:"",data:""}},retrieveNet:{url:"/dispatch-web/api/call/retrieve",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleBreakinNet:{url:"/dispatch-web/api/call/tripleBreakin",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleHungupNet:{url:"/dispatch-web/api/call/tripleHungup",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},tripleMonitorNet:{url:"/dispatch-web/api/call/tripleHungup",method:"POST",requestParam:{token:"",caller:"",callee:""},responseParam:{code:"",message:"",systemTime:"",data:""}},groupNotifyNet:{url:"/dispatch-web/api/call/groupNotify",method:"POST",requestParam:{token:"",files:"",tels:"",type:"",notifyId:"",times:"",confirm:""},responseParam:{code:"",message:"",systemTime:"",data:""}},queryGroupNotifyNet:{url:"/dispatch-web/api/call/queryGroupNotifyResult",method:"POST",requestParam:{token:"",notifyId:"",caller:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",notifyId:"",caller:"",callee:"",tmNotify:"",tmAnswer:"",tmHangup:"",tmLen:"",notifyType:"",files:"",result:"",confirm:""}]}}},queryCallNet:{url:"/dispatch-web/api/call/queryCallRecord",method:"POST",requestParam:{token:"",caller:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",caller:"",callee:"",tmCall:"",tmAnswer:"",tmHangup:"",tmLen:"",callType:"",result:""}]}}}};var d=c;let u={callHungupNet:{url:"/dispatch-web/api/call/hungup",method:"POST",requestParam:{token:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},listStatusNet:{url:"/dispatch-web/api/call/listStatus",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},telsStatusNet:{url:"/dispatch-web/api/call/telsStatus",method:"POST",requestParam:{token:"",tels:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},baseTelsStatusNet:{url:"/scooper-video/data/baseRes/getBaseResByResCodes",method:"POST",requestParam:{token:"",resCodes:""},responseParam:{code:"",message:"",systemTime:"",total:"",list:[{tel:"",businessId:"",status:"",recording:"",handleNumber:"",meetId:"",conNumber:"",videoInfo:""}]}},telsStatusAssistNet:{url:"/gpsid_server/data/member/listOrgMember",method:"POST",paramOnUrl:["token"],requestParam:{token:"",tels:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{memId:7,memName:"",memType:2,memTel:"8012",memMobile:"",deptId:14,deptName:"浙江省人防办",actived:0,latitude:120.153577,longitude:30.270569,updateTime:"2022-09-22 10:07:00"}]}}},telsStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/telStatus`,responseParam:{id:0,type:"telStatus",source:"dispatch-web",data:{tel:"",status:"",handleNumber:"",conNumber:"",meetId:"",videoInfo:"",accId:"",account:""}}}},callInMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/callIn`,responseParam:{id:0,type:"callIn",source:"dispatch-web",data:{tel:"",type:"",time:"",level:"",accId:"",account:""}}}},groupNotifyMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/groupNotify`,responseParam:{id:0,type:"groupNotify",source:"dispatch-web",data:{result:"",desc:"",descJson:"",accId:"",account:""}}}},telsStatusHttpNet:{url:"/notify/call/telStatus",method:"POST",requestParam:{tel:"",status:"",handleNumber:"",conNumber:"",meetId:"",videoInfo:"",accId:"",account:""},responseParam:{code:""}},callInHttpNet:{url:"/notify/call/callIn",method:"POST",requestParam:{type:"",tel:"",time:"",level:"",accId:"",account:""},responseParam:{code:""}},groupNotifyHttpNet:{url:"/notify/call/groupNotify",method:"POST",requestParam:{result:"",desc:"",descJson:"",accId:"",account:""},responseParam:{code:""}},videoStatusHttpNet:{url:"/notify/call/video",method:"POST",requestParam:{cfgType:"",tel:"",accId:"",account:""},responseParam:{code:""}}};var l=u;let p={saveOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/saveOrgMember",method:"POST",requestParam:{token:"",deptId:"",memCode:"",memName:"",sex:"",memTel:"",memType:"",memMobile:"",memTel2:"",memFax:"",memEmail:"",dutyId:"",deptName:"",isActive:1,dutyName:"",memLevel:1,accId:"",memMsgLevel:"",businessConfigs:"",isOperAcc:!0,mainTel:"",operMobileTel:"",mobileTel:"",viceTel:""},responseParam:{code:"",message:"",systemTime:"",data:""}},createOnGis:{url:"/common-gis-web/data/gispos/addPersion",method:"POST",contentType:"application/json;charset=utf-8",paramOnUrl:["token"],requestParam:{token:"",name:"",propKey:"",center:{latitude:30.223853,longitude:120.01802}},responseParam:{code:"",message:"",systemTime:"",data:{}}},createRyAndAccount:{url:"/scooper-app-manager/data/dev/saveApp",method:"POST",requestParam:{token:"",deptId:"",deptName:"",memName:"",sex:0,memType:"",memTel:"",memMobile:"",accUsername:"",accPassword:"",accShowname:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},updateOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/updateOrgMember",method:"POST",requestParam:{token:"",deptId:"",memCode:"",memName:"",sex:"",memTel:"",memType:"",memMobile:"",memTel2:"",memFax:"",memEmail:"",dutyId:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},deleteOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/deleteOrgMember",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},getOrgMemberDetailNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/getOrgMemberDetail",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}}},queryOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/queryOrgMember",method:"POST",requestParam:{token:"",currentPage:"",pageSize:"",deptId:"",modifyTimeStart:"",modifyTimeEnd:"",keyword:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",list:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}],modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:""}}},listOrgMemberNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/listOrgMember",method:"POST",requestParam:{token:"",deptId:"",keyword:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},findOrgMemberByTelNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findOrgMemberByTel",method:"POST",requestParam:{token:"",tel:"",all:"",type:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},findOrgMemberPathNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findOrgMemberPath",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:""}},findAccountByOrgMemberIdNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/findAccountByOrgMemberId",method:"POST",requestParam:{token:"",orgMemberId:""},responseParam:{code:"",message:"",systemTime:"",data:{accId:"",memId:"",memName:""}}},changeOrgMemberSortIndexNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/changeOrgMemberSortIndex",method:"POST",requestParam:{token:"",id:"",sortIndex:"",oldSortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listOrgMemberByIdsNet:{url:"/scooper-core-rest/data/contacts/orgMemberManage/listOrgMemberByIds",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},orgMemberAddMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},orgMemberUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},orgMemberDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/orgMember",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:""}}},orgMemberAddHttpNet:function(){return{url:"/data/dataChange/orgMember/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgMemberUpdateHttpNet:function(){return{url:"/data/dataChange/orgMember/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgMemberDeleteHttpNet:function(){return{url:"/data/dataChange/orgMember/delete",method:"POST",requestParam:{id:""},responseParam:{code:""}}}};var f=p;let m={saveOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/saveOrgDept",method:"POST",requestParam:{token:"",deptName:"",parentId:"",deptType:"",areaCode:"",shortName:"",corpTel:"",corpAddr:"",sortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:""}},updateOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/updateOrgDept",method:"POST",requestParam:{token:"",id:"",deptName:"",parentId:"",deptType:"",areaCode:"",shortName:"",corpTel:"",corpAddr:"",sortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:""}},deleteOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/deleteOrgDept",method:"POST",requestParam:{token:"",ids:""},responseParam:{code:"",message:"",systemTime:"",data:""}},getOrgDeptDetailNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/getOrgDeptDetail",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",deptType:""}}},queryOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/queryOrgDept",method:"POST",requestParam:{token:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",currentPage:"",pageSize:"",modifyTimeStart:"",modifyTimeEnd:""},responseParam:{code:"",message:"",systemTime:"",data:{pageNum:"",pageSize:"",size:"",startRow:"",endRow:"",total:"",pages:"",list:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpTel:"",corpAddr:"",shortName:"",deptType:""}],modifyPwTime:"",firstPage:"",perPage:"",nextPage:"",lastPage:"",isFirstPage:"",isLastPage:"",hasPreviousPage:"",hasNextPage:"",navigatePage:"",navigatePageNums:""}}},listOrgDeptNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listOrgDept",method:"POST",requestParam:{token:"",parentId:"",orgCode:"",deptType:"",modifyTimeStart:"",modifyTimeEnd:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpId:"",deptType:""}]}},listDeptByParentNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listDeptByParent",method:"POST",requestParam:{token:"",orgCorpId:"",id:"",firstExpand:"",expandMember:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",name:"",childNum:"",dataType:"",data:"",isParent:"",pid:""}]}},findDepartmentPathNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/findDepartmentPath",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",parentId:"",deptName:"",firstLetter:"",orgCode:"",sortIndex:"",pathName:"",syncKey:"",deptDesc:"",deptExt:"",isActive:"",modifyTime:"",createTime:"",parentDeptName:"",corpId:"",deptType:""}]}},listTreeDeptByParentNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listTreeDeptByParent",method:"POST",requestParam:{token:"",id:"",orgCorpId:"",firstExpand:"",expandMember:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",name:"",childNum:"",dataType:"",data:"",isParent:"",pid:""}]}},findDeptMemberCountNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/findDeptMemberCount",method:"POST",requestParam:{token:"",id:"",type:""},responseParam:{code:"",message:"",systemTime:"",data:""}},changeDeptSortIndexNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/changeDeptSortIndex",method:"POST",requestParam:{token:"",id:"",sortIndex:"",oldSortIndex:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listDeptMemberByDeotIdNet:{url:"/scooper-core-rest/data/contacts/orgDeptManage/listDeptMemberByDeotId",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",deptId:"",memCode:"",memName:"",sex:"",firstLetter:"",memTel:"",memType:"",memMobile:"",memTel2:"",memTel3:"",memTel4:"",memTel5:"",memFax:"",memEmail:"",memPicture:"",memVideo:"",memGis:"",orgCode:"",sortIndex:"",updateTime:"",deptExt:"",isActive:"",modifyTime:"",memLevel:"",memQq:"",deptName:""}]}},listAdCodeNet:{url:"/scooper-core-rest/data/contacts/orgCorpManage/listAdCode",method:"POST",requestParam:{token:"",areaCodeParent:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",areaCode:"",areaName:"",areaCodeParent:"",areaLevel:""}]}},orgDeptAddMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"add",source:"scooper-core-ds",data:{}}}},orgDeptUpdateMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"update",source:"scooper-core-ds",data:{}}}},orgDeptDeleteMQNet:function(){return{topic:"/scooper_core/dataChange/orgDept",responseParam:{id:"",type:"delete",source:"scooper-core-ds",data:""}}},orgDeptAddHttpNet:function(){return{url:"/data/dataChange/orgDept/add",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgDeptUpdateHttpNet:function(){return{url:"/dataChange/orgDept/update",method:"POST",requestParam:{id:""},responseParam:{code:""}}},orgDeptDeleteHttpNet:function(){return{url:"/dataChange/orgDept/delete",method:"POST",requestParam:{id:""},responseParam:{code:""}}}};var h=m;let g={reLocationNet:{url:"/scooper-trace/data/trace/reLocation",method:"POST",headers:{"Content-Type":"application/json"},requestParam:{token:"",propType:"",propKey:"",posLocation:"",recordTime:"",posChange:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",coordinateType:"",locType:"",radius:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""}}}},listTraceByArgsNet:{url:"/scooper-trace/data/trace/listTraceByArgs",method:"GET",requestParam:{token:"",propType:"",propKey:"",startTime:"",endTime:"",useExternal:"",decrease:"",clusterDistance:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},recordTime:"",breakpoint:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}]}},listTraceByArgsPageNet:{url:"/scooper-trace/data/trace/listTraceByArgsPage",method:"GET",requestParam:{token:"",propType:"",propKey:"",startTime:"",endTime:"",useExternal:"",decrease:"",timespan:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},recordTime:"",breakpoint:"",posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}]}}},listGisTrailNet:{url:"/scooper-app-msg/gis/queryGisTrails",method:"GET",requestParam:{startTime:"",endTime:"",timespan:"",memId:"",accId:"",token:"",pageNumber:1,pageSize:50},responseParam:{code:"",message:"",systemTime:"",data:{total:"",pageSize:"",pageNumber:"",list:[{altitude:0,center:{longitude:120.026576,latitude:30.823369},childMapId:0,corpId:0,evtLevel:0,extData:"",geoHash:"wtmr770xjumy",hasChild:!1,id:1,layerId:1,layerLogicName:"person",mapId:0,name:"单兵01",parentId:0,permKey:"300000.000002.002",points:[{longitude:0,latitude:0}],posStatus:"offline",propKey:"6",rectMax:{longitude:120.026576,latitude:30.823369},rectMin:{longitude:120.026576,latitude:30.823369},speed:0,type:"Point",updateTime:"2022-04-22 14:21:30"}]}}},listTypeLocationNet:{url:"/common-gis-web/data/gisquery/search",method:"POST",requestParam:{mapId:"",kw:"",layers:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",pageSize:"",pageNumber:"",list:[{altitude:0,center:{longitude:120.026576,latitude:30.823369},childMapId:0,corpId:0,evtLevel:0,extData:"",geoHash:"wtmr770xjumy",hasChild:!1,id:1,layerId:1,layerLogicName:"person",mapId:0,name:"单兵01",parentId:0,permKey:"300000.000002.002",points:[{longitude:0,latitude:0}],posStatus:"offline",propKey:"6",rectMax:{longitude:120.026576,latitude:30.823369},rectMin:{longitude:120.026576,latitude:30.823369},speed:0,type:"Point",updateTime:"2022-04-22 14:21:30"}]}}},moveMQNet:function(e,t){return{topic:`/scooper-trace/notify/move/${e}/${t}`,responseParam:{id:0,type:"notify",source:"scooper-trace",data:{id:"",propType:"",propKey:"",posLocation:{longitude:"",latitude:""},posAltitude:"",posSpeed:"",posDirectionHorizontal:"",posDirectionVertical:"",posAttr:"",propKeyIndoor:"",posChange:"",updateTime:"",radius:""}}}},gisHttpNet:function(){return{url:"/notify/orgmember/gis",method:"POST",requestParam:{id:"",gis:""},responseParam:{code:"",message:"",systemTime:"",data:{}}}}};var v=g;let y={selectCallNet:{url:"/dispatch-web/api/call/selectCall",method:"POST",requestParam:{token:"",caller:"",callees:"",type:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},MeetPrivateTalkNet:{url:"/dispatch-web/api/meet/privateTalk",method:"POST",requestParam:{token:"",meetId:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},MeetBackToNet:{url:"/dispatch-web/api/meet/backToMeet",method:"POST",requestParam:{token:"",meetId:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},endMeetNet:{url:"/dispatch-web/api/meet/endMeet",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},createMeetNet:{url:"/dispatch-web/api/meet/createMeet",method:"POST",requestParam:{token:"",bussinessId:"",name:"",meetAcess:"",meetAttr:"",timeBegin:"",timeEnd:"",passwdSpeaker:"",passwdAudience:"",meetMembers:""},responseParam:{code:"",message:"",systemTime:"",data:{meetId:""}}},destroyMeetNet:{url:"/dispatch-web/api/meet/destroyMeet",method:"POST",requestParam:{token:"",id:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},changeMemeberLevelNet:{url:"/dispatch-web/api/meet/changeMemberLevel",method:"POST",requestParam:{token:"",id:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},kickMemberNet:{url:"/dispatch-web/api/meet/kickMember",method:"POST",requestParam:{token:"",id:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},setMeetChairmanNet:{url:"/dispatch-web/api/meet/setMeetChairman",method:"POST",requestParam:{token:"",id:"",tel:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},joinVideoMemberNet:{url:"/dispatch-web/api/meet/joinVideoMember",method:"POST",requestParam:{token:"",meetId:"",businessId:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},joinMemberNet:{url:"/dispatch-web/api/meet/joinMember",method:"POST",requestParam:{token:"",meetId:"",businessId:"",tel:"",level:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},listMeetsNet:{url:"/dispatch-web/api/meet/listMeets",method:"POST",requestParam:{token:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{meetId:"",meetName:"",chairman:"",recording:"",playvoice:"",locked:"",list:[{meetId:"",tel:"",level:""}]}]}}},getMeetNet:{url:"/dispatch-web/api/meet/getMeetAdd",method:"POST",requestParam:{token:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{meetId:"",meetName:"",chairman:"",recording:"",playvoice:"",locked:"",members:[{meetId:"",tel:"",level:""}]}}},listMeetMembersNet:{url:"/dispatch-web/api/meet/listMeetMembers",method:"POST",requestParam:{token:"",meetId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{meetId:"",tel:"",level:""}]}}},meetStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/meet/meetStatus`,responseParam:{id:0,type:"meetStatus",source:"dispatch-web",data:{meetId:"",meetName:"",destory:"",chairman:"",accId:"",account:""}}}},memberMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/meet/member`,responseParam:{id:0,type:"member",source:"dispatch-web",data:{meetId:"",tel:"",type:"",level:"",accId:"",account:""}}}},selectCallMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/selectCall`,responseParam:{id:0,type:"selectCall",source:"dispatch-web",data:{result:"",desc:"",accId:"",account:""}}}},meetStatusHttpNet:{url:"/notify/meet/meetStatus",method:"POST",requestParam:{meetId:"",meetName:"",accId:"",account:""},responseParam:{code:""}},selectCallHttpNet:{url:"/notify/call/selectCall",method:"POST",requestParam:{result:"",desc:"",accId:"",account:""},responseParam:{code:""}},memberHttpNet:{url:"/notify/meet/member",method:"POST",requestParam:{meetId:"",tel:"",type:"",level:"",accId:"",account:""},responseParam:{code:""}}};var b=y;let w={sendMsgNet:{url:"/scooper-sms/data/message/sendMsg",method:"POST",requestParam:{token:"",caller:"",callees:"",content:""},responseParam:{code:"",message:"",systemTime:"",data:{msgId:"",flagBatch:""}}},queryMsgSendNet:{url:"/scooper-sms/data/message/queryMsgSend",method:"POST",requestParam:{token:"",caller:"",callee:"",content:"",flagBatch:"",startTime:"",endTime:"",msgStatus:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{totalRow:"",list:[{id:"",caller:"",callee:"",flag_batch:"",msg_status:"",time_send:"",sms_content:"",succ_callee:"",total_callee:"",time_schedule:"",reply_read:""}],firstPage:"",lastPage:"",pageNumber:"",pageSize:"",totalPage:""}}},findMsgSendByIdNet:{url:"/scooper-sms/data/message/queryMsgSend",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",caller:"",callee:"",formatedCallee:"",flag_batch:"",msg_status:"",time_send:"",sms_content:""}}},findBatchResultNet:{url:"/scooper-sms/data/message/findBatchResult",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{callee:"",memName:"",reason:"",id:"",tx_id:""}]}}},deleteMsgSendNet:{url:"/scooper-sms/data/message/deleteMsgSend",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{}}},queryMsgRecvNet:{url:"/scooper-sms/data/message/queryMsgRecv",method:"POST",requestParam:{token:"",caller:"",callee:"",content:"",startTime:"",endTime:"",msgStatus:"",pageNumber:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{totalRow:"",pageNumber:"",list:[{id:"",caller:"",callee:"",msg_status:"",time_recv:"",sms_content:"",succ_callee:"",total_callee:""}],lastPage:"",firstPage:"",pageSize:"",totalPage:""}}},findMsgRecvByIdNet:{url:"/scooper-sms/data/message/findMsgRecvById",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{id:"",caller:"",callee:"",msg_status:"",time_recv:"",sms_content:"",msg_type:""}}},updateRecvStatusNet:{url:"/scooper-sms/data/message/updateRecvStatus",method:"POST",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{unReadNum:1}}},getUnReadRecvNumNet:{url:"/scooper-sms/data/message/getUnReadRecvNum",method:"POST",requestParam:{token:"",msgId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:1}}},sendMsgMQNet:function(){return{topic:"/scooper-sms/notify/msg/sendMsg",responseParam:{id:0,type:"sendMsg",source:"scooper-sms",data:{msgId:""}}}},sendMsgResultMQNet:function(){return{topic:"/scooper-sms/notify/msg/sendMsgResult",responseParam:{id:0,type:"sendMsgResult",source:"scooper-sms",data:{msgStatus:""}}}},deleteMsgSendMQNet:function(){return{topic:"/scooper-sms/notify/msg/deleteMsgSend",responseParam:{id:0,type:"deleteMsgSend",source:"scooper-sms",data:{}}}},recvMsgMQNet:function(){return{topic:"/scooper-sms/notify/msg/recvMsg",responseParam:{id:0,type:"recvMsg",source:"scooper-sms",data:{total:""}}}},deleteMsgRecvMQNet:function(){return{topic:"/scooper-sms/notify/msg/deleteMsgRecv",responseParam:{id:0,type:"deleteMsgRecv",source:"scooper-sms",data:{total:""}}}},readMsgRecvMQNet:function(){return{topic:"/scooper-sms/notify/msg/readMsgRecv",responseParam:{id:0,type:"readMsgRecv",source:"scooper-sms",data:{unReadNum:""}}}},sendMsgHttpNet:function(){return{url:"/notify/msg/sendMsg",method:"POST",requestParam:{msgId:""},responseParam:{code:""}}},sendMsgResultHttpNet:function(){return{url:"/notify/msg/sendMsgResult",method:"POST",requestParam:{msgId:"",msgStatus:""},responseParam:{code:""}}},deleteMsgSendHttpNet:function(){return{url:"/notify/msg/deleteMsgSend",method:"POST",requestParam:{msgId:""},responseParam:{code:""}}},recvMsgHttpNet:function(){return{url:"/notify/msg/recvMsg",method:"POST",requestParam:{msgId:"",total:""},responseParam:{code:""}}},deleteMsgRecvHttpNet:function(){return{url:"/notify/msg/deleteMsgRecv",method:"POST",requestParam:{msgId:"",total:""},responseParam:{code:""}}},readMsgRecvHttpNet:function(){return{url:"/notify/msg/readMsgRecv",method:"POST",requestParam:{msgId:"",unReadNum:""},responseParam:{code:""}}}};var T=w;let S={queryRecordNet:{url:"/scooper-record/data/record/queryRecord",method:"POST",requestParam:{token:"",recType:"",id:"",businessId:"",meetId:"",caller:"",callee:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",meetId:"",caller:"",callee:"",tmBegin:"",tmEnd:"",callLength:"",recFile:"",recType:"",recExt:""}]}}},queryCallRecordNet:{url:"/scooper-record/data/call/queryCallRecords",method:"GET",requestParam:{token:"",timeMin:"",timeMax:"",pageNumber:1,fileType:0,pageSize:10},responseParam:{code:"",message:"",systemTime:"",data:{pageNumber:1,pageSize:10,total:1884,list:[]}}},queryMeetingRecordNet:{url:"/scooper-record/data/meeting/queryMeetingRecords",method:"GET",requestParam:{token:"",timeMin:"",timeMax:"",pageNumber:1,pageSize:10},responseParam:{code:"",message:"",systemTime:"",data:{pageNumber:1,pageSize:10,total:1884,list:[]}}},queryVideoNet:{url:"/scooper-record/data/video/queryVideo",method:"POST",requestParam:{token:"",recType:"",id:"",businessId:"",meetId:"",tel:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:"",businessId:"",meetId:"",tel:"",tmBegin:"",tmEnd:"",tmLength:"",recFile:"",recType:""}]}}},queryRecordNotifyNet:{url:"/scooper-record/data/notify/queryRecordNotify",method:"POST",requestParam:{token:"",title:"",id:"",recTel:"",timeMin:"",timeMax:"",pageIndex:"",pageSize:""},responseParam:{code:"",message:"",systemTime:"",data:{total:"",list:[{id:1,recTel:"",title:"",recTm:"",callLength:"",recFile:""}]}}},uploadNet:{url:"/scooper-record/data/notify/upload",method:"POST",requestParam:{token:"",recTel:"",title:"",recTm:"",callLength:"",file:""},responseParam:{code:"",message:"",systemTime:"",data:{id:""}}},doDownloadNet:{url:"/scooper-record/data/file/doDownload",method:"POST",requestParam:{token:"",id:"",fileType:"",recFile:""},responseParam:{file:""}},deleteFileNet:{url:"/scooper-record/data/file/deleteFile",method:"POST",requestParam:{token:"",id:"",fileType:"",recFile:""},responseParam:{code:"",message:"",systemTime:"",data:{}}}};var C=S;let P={callVideoNet:{url:"/dispatch-web/api/call/makeVideoCall",method:"POST",requestParam:{token:"",caller:"",callee:"",businessId:"",isRecord:""},responseParam:{code:"",message:"",systemTime:"",data:""}},getFacilityListNet:{url:"/scooper-video/data/facility/queryFacilityList",method:"POST",paramOnUrl:["token"],requestParam:{token:"",parentId:""},responseParam:{code:"",message:"",systemTime:"",data:{total:100,list:[{devId:"",id:"",ipcType:"",isActive:"",name:"",parentId:"",orgCode:"",parental:"",sort:"",status:""}]}}},getVmmpVideoListNet:{url:"/vmmp-web/data/catalog/getChildDev",method:"GET",noResultStatus:!0,requestParam:{search_data:"",current:1,size:10,parentid:0},responseParam:{code:"",message:"",systemTime:"",data:{total:100,list:[{devId:"",id:"",ipcType:"",isActive:"",name:"",parentId:"",orgCode:"",parental:"",sort:"",status:""}]}}},videoStatusMQNet:function(e){return{topic:`/${e}/dispatch-web/notify/call/video`,responseParam:{id:0,type:"video",source:"dispatch-web",data:{cfgType:"",tel:"",accId:"",account:""}}}},getNodesVideoNet:{url:"/scooper-video/data/video/load/getNodes",method:"POST",requestParam:{token:"",parentId:""},responseParam:{code:"",message:"",systemTime:"",data:[{id:"",nodeId:"",devId:"",dev_short_num:"",name:"",parental:"",parentid:"",port:"",sort:"",status:"",province:"",city:"",district:"",ipaddress:"",latitude:"",longitude:""}]}}};var x=P;const k="http://10.249.4.152:8080",D="/scooper-msg-queue/cometd";n("0b6e");function _(e,t){return t>>>e|t<<32-e}function A(e,t,n){return e&t^~e&n}function I(e,t,n){return e&t^e&n^t&n}function R(e){return _(2,e)^_(13,e)^_(22,e)}function N(e){return _(6,e)^_(11,e)^_(25,e)}function O(e){return _(7,e)^_(18,e)^e>>>3}function E(e){return _(17,e)^_(19,e)^e>>>10}function M(e,t){return e[15&t]+=E(e[t+14&15])+e[t+9&15]+O(e[t+1&15])}var L,j,q,V=new Array(1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298),B="0123456789abcdef";function F(e,t){var n=(65535&e)+(65535&t),r=(e>>16)+(t>>16)+(n>>16);return r<<16|65535&n}function W(){L=new Array(8),j=new Array(2),q=new Array(64),j[0]=j[1]=0,L[0]=1779033703,L[1]=3144134277,L[2]=1013904242,L[3]=2773480762,L[4]=1359893119,L[5]=2600822924,L[6]=528734635,L[7]=1541459225}function H(){var e,t,n,r,o,i,s,a,c,d,u=new Array(16);e=L[0],t=L[1],n=L[2],r=L[3],o=L[4],i=L[5],s=L[6],a=L[7];for(var l=0;l<16;l++)u[l]=q[3+(l<<2)]|q[2+(l<<2)]<<8|q[1+(l<<2)]<<16|q[l<<2]<<24;for(var p=0;p<64;p++)c=a+N(o)+A(o,i,s)+V[p],c+=p<16?u[p]:M(u,p),d=R(e)+I(e,t,n),a=s,s=i,i=o,o=F(r,c),r=n,n=t,t=e,e=F(c,d);L[0]+=e,L[1]+=t,L[2]+=n,L[3]+=r,L[4]+=o,L[5]+=i,L[6]+=s,L[7]+=a}function U(e,t){var n,r,o=0;r=j[0]>>3&63;var i=63&t;for((j[0]+=t<<3)<t<<3&&j[1]++,j[1]+=t>>29,n=0;n+63<t;n+=64){for(var s=r;s<64;s++)q[s]=e.charCodeAt(o++);H(),r=0}for(s=0;s<i;s++)q[s]=e.charCodeAt(o++)}function z(){var e=j[0]>>3&63;if(q[e++]=128,e<=56)for(var t=e;t<56;t++)q[t]=0;else{for(t=e;t<64;t++)q[t]=0;H();for(t=0;t<56;t++)q[t]=0}q[56]=j[1]>>>24&255,q[57]=j[1]>>>16&255,q[58]=j[1]>>>8&255,q[59]=255&j[1],q[60]=j[0]>>>24&255,q[61]=j[0]>>>16&255,q[62]=j[0]>>>8&255,q[63]=255&j[0],H()}function G(){for(var e=new String,t=0;t<8;t++)for(var n=28;n>=0;n-=4)e+=B.charAt(L[t]>>>n&15);return e}function J(e){return W(),U(e,e.length),z(),G()}let $=n("9a22"),Q=n("697d"),K=n("1157");const X=function(e,t,n,r,o,i,s){o=o||"POST",r=void 0==r||""==r||r;for(let c in t)if(/_phone01$/.test(c)){let e=c.replace(/_phone01$/,"");0==t[c]?t[e]="00"+t[e]:t[e]="0"+t[e],delete t[c]}let a={type:o,url:e,data:t,timeout:2e4,async:r};i||(i={headers:{}}),i&&(t.token&&Object.assign(i.headers,{"Sc-Token":t.token}),Object.assign(a,i)),s&&Object.assign(a,{contentType:s}),s&&-1!=s.indexOf("application/json")&&Object.assign(a,{data:JSON.stringify(t)}),K.ajax(a).fail((function(e,t){throw n&&n(null),new Error("请求失败!")})).done((function(e){if(n&&n(e),!e||0!=e.code)throw new Error("加载数据失败!")}))},Y=function(e,t,n,r,o,i,s){let a=s||k,c=new $.CometD("xjInfoReport");c.websocketEnabled=!0;let d=a+D;c.init({url:d,logLevel:"info"}),c.addListener("/meta/handshake",(function(e){e.successful}));let u=!1;c.addListener("/meta/connect",(function(s){s.successful?(u||Z(c,{meetcallfunc:e,callfunc:t,videocallfunc:n,connectcallfunc:r,appMsgfunc:o,devicefunc:i}),u=!0):u=!1}))};function Z(e,t){t.meetcallfunc&&e.subscribe("/dispatch-web/notify/meet/#",null,(function(e){t.meetcallfunc(e)})),t.callfunc&&e.subscribe("/dispatch-web/notify/call/#",null,(function(e){t.callfunc(e)})),t.devicefunc&&e.subscribe("/device/res-status/#",null,(function(e){t.devicefunc(e)})),t.videocallfunc&&e.subscribe("/server/#",null,(function(e){t.videocallfunc(e)})),t.connectcallfunc&&e.subscribe("/scooper_core/#",null,(function(e){t.connectcallfunc(e)})),t.appMsgfunc&&e.subscribe("/scooper-app-msg/orgmember/heartbeat",null,(function(e){t.appMsgfunc(e)}))}const ee=function(e,t,n,r){let o=r||k;return new Promise((r,i)=>{let s=o+"/scooper-video/conf/data?token="+e,a={};K.post(s,a,(function(o){o["video.janus.url"];let i={windows:4,windowsArr:[1,2,4,9,16],windowsNum:16,conf:{user:o["video.username"],passwd:o["video.password"],ip:o["video.ip"],port:o["video.port"],janusUrl:o["video.janus.url"],token:e},extra:!1,streamType:o["video.stream"],openChangeWindowStrategy:"true"===o["video.openChangeWindowStrategy"],capImage:"true"===o["video.cap.image"],videoCapImagePath:o["video.cap.image.path"],videoInfoInBottom:!1};n&&Object.assign(i,n),o["video.poll.time"]&&(i.pollInterval=o["video.poll.time"]);let s=new Q(K(t),i);r(s)}),"json")})},te=function(e,t,n){let r=a.loginNet,o=(n||k)+r.url;return new Promise((i,s)=>{X(o,{accUsername:e,accPassword:J(t)},(function(e){if(0==e.code){let t=e.data,r="/dispatch-web/api/conn/connectionByToken";X((n||k)+r,{token:t},(function(e){0==e.code?i(e):s(e.code)}),"","POST"),i(t)}else s("登录失败",e.code)}),"",r.method)})},ne=function(e,t){let n=a.logoutNet,r=(t||k)+n.url;return new Promise((t,o)=>{e?X(r,{token:e},(function(e){if(0==e.code){e.data;t()}else o("登出失败",e.code)}),"",n.method):o("token值无效",-1)})},re=function(e,t){let n=a.heartBeatNet,r=(t||k)+n.url;return()=>X(r,{token:e},(function(e){e.code}),"",n.method)},oe=e=>{let t=e||k;return{add:function(e){let n=a.saveAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=a.updateAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=a.deleteAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},updateDeptPerm:function(e){let n=a.updateDeptDataPermission;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},resetPwd:function(e){let n=a.resetPwdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},resetSelfPwd:function(e){let n=a.resetSelfPwdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=a.listAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=a.queryAccountNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},linkMember:function(e){let n=a.getAccountLinkMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=a.getAccountDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},ie=e=>{let t=e||k;return{call:function(e){let n=d.callNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},answer:function(e){let n=d.answerNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},hold:function(e){let n=d.holdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},unhold:function(e){let n=d.unholdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},transfer:function(e){let n=d.transferNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},retrieve:function(e){let n=d.retrieveNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleBreakin:function(e){let n=d.tripleBreakinNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleHungup:function(e){let n=d.tripleHungupNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tripleMonitor:function(e){let n=d.tripleMonitorNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},groupNotify:function(e){let n=d.groupNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},groupNotifyListPage:function(e){let n=d.queryGroupNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},callListPage:function(e){let n=d.queryCallNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},se=e=>{let t=e||k;return{callHungup:function(e){let n=l.callHungupNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listStatus:function(e){let n=l.listStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},telsStatus:function(e){let n=l.telsStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},baseTelsStatus:function(e){let n=l.baseTelsStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},telsStatusAssist:function(e){let n=l.telsStatusAssistNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method)})}}},ae=e=>{let t=e||k;return{add:function(e){let n=h.saveOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=h.updateOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=h.deleteOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=h.getOrgDeptDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=h.queryOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=h.listOrgDeptNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listFrom:function(e){let n=h.listDeptByParentNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},path:function(e){let n=h.findDepartmentPathNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},treeFrom:function(e){let n=h.listTreeDeptByParentNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},memberCount:function(e){let n=h.findDeptMemberCount;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},changeSort:function(e){let n=h.changeDeptSortIndexNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},memberList:function(e){let n=h.listDeptMemberByDeotIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listAreaCode:function(e){let n=h.listDeptMemberByDeotIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},ce=e=>{let t=e||k;return{addRyAndAccount:function(e){let n=f.createRyAndAccount;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},createOnGis:function(e){let n=f.createOnGis,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method,null,n.contentType)})},add:function(e){let n=f.saveOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},update:function(e){let n=f.updateOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=f.deleteOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=f.getOrgMemberDetailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=f.queryOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=f.listOrgMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},findByTel:function(e){let n=f.findOrgMemberByTelNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},path:function(e){let n=f.findOrgMemberPathNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},linkAccount:function(e){let n=f.findAccountByOrgMemberIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},changeSort:function(e){let n=f.changeOrgMemberSortIndexNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listIds:function(e){let n=f.listOrgMemberByIdsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){e?0==e.code?r(e):o(e.code):o("网络连接问题")}),"",n.method)})}}},de=e=>{let t=e||k;return{locate:function(e){let n=v.reLocationNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method,{headers:n.headers})})},trace:function(e){let n=v.listTraceByArgsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tracePage:function(e){let n=v.listTraceByArgsPageNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},gisList:function(e){let n=v.listGisTrailNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},locateDeviceByType:function(e){let n=v.listTypeLocationNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){e?0==e.code?r(e):o(e.code):o("网络连接问题")}),"",n.method)})}}},ue=e=>{let t=e||k;return{create:function(e){let n=b.selectCallNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},setChairman:function(e){let n=b.setMeetChairmanNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},privateTalk:function(e){let n=b.MeetPrivateTalkNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},back:function(e){let n=b.MeetBackToNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},end:function(e){let n=b.endMeetNet,r=!0;return Object.keys(e).includes("async")&&(r=e.async),r?new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)}):(delete e.async,fetch(t+n.url,{method:n.method,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","Sc-Token":e.token},body:new URLSearchParams(e),keepalive:!0}))},joinVideo:function(e){let n=b.joinVideoMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},join:function(e){let n=b.joinMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},createRoom:function(e){let n=b.createMeetNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},destroyRoom:function(e){let n=b.destroyMeetNet,r=!0;return Object.keys(e).includes("async")&&(r=e.async,delete e.async),fetch(t+n.url,{method:n.method,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","Sc-Token":e.token},body:new URLSearchParams(e),keepalive:!0})},changeMemberStatus:function(e){let n=b.changeMemeberLevelNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},kick:function(e){let n=b.kickMemberNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},list:function(e){let n=b.listMeetsNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=b.getMeetNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},members:function(e){let n=b.listMeetMembersNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},le=e=>{let t=e||k;return{send:function(e){let n=T.sendMsgNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},listPage:function(e){let n=T.queryMsgSendNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},info:function(e){let n=T.findMsgSendByIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},findBatchResult:function(e){let n=T.findBatchResultNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=T.deleteMsgSendNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},recvListPage:function(e){let n=T.queryMsgRecvNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},recvInfo:function(e){let n=T.findMsgRecvByIdNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},read:function(e){let n=T.updateRecvStatusNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},unreadNum:function(e){let n=T.getUnReadRecvNumNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},pe=e=>{let t=e||k;return{aduioListPage:function(e){let n=C.queryRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},videoListPage:function(e){let n=C.queryVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},callRecordListPage:function(e){let n=C.queryCallRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},meetRecordListPage:function(e){let n=C.queryMeetingRecordNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},notifyPageList:function(e){let n=C.queryRecordNotifyNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},uploadNotify:function(e){let n=C.uploadNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},download:function(e){let n=C.doDownloadNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},delete:function(e){let n=C.deleteFileNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}},fe=e=>{let t=e||k;return{facilityList:function(e){let n=x.getFacilityListNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){0==e.code?o(e):i(e.code)}),"",n.method)})},vmmpVList:function(e){let n=x.getVmmpVideoListNet,r="";return n.paramOnUrl&&n.paramOnUrl.forEach(t=>{r&&(r+="&"),r+=`${t}=${e[t]}`,delete e[t]}),new Promise((o,i)=>{X(t+n.url+(r?"?"+r:""),{...e},(function(e){n.noResultStatus||0==e.code?o(e):i(e.code)}),"",n.method)})},call:function(e){let n=x.callVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})},tree:function(e){let n=x.getNodesVideoNet;return new Promise((r,o)=>{X(t+n.url,{...e},(function(e){0==e.code?r(e):o(e.code)}),"",n.method)})}}}}})}));
26
26
  //# sourceMappingURL=ucservice.umd.min.js.map