12 |
- (function(e){function t(t){for(var r,a,s=t[0],c=t[1],l=t[2],d=0,p=[];d<s.length;d++)a=s[d],o[a]&&p.push(o[a][0]),o[a]=0;for(r in c)Object.prototype.hasOwnProperty.call(c,r)&&(e[r]=c[r]);u&&u(t);while(p.length)p.shift()();return i.push.apply(i,l||[]),n()}function n(){for(var e,t=0;t<i.length;t++){for(var n=i[t],r=!0,s=1;s<n.length;s++){var c=n[s];0!==o[c]&&(r=!1)}r&&(i.splice(t--,1),e=a(a.s=n[0]))}return e}var r={},o={app:0},i=[];function a(t){if(r[t])return r[t].exports;var n=r[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=e,a.c=r,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)a.d(n,r,function(t){return e[t]}.bind(null,r));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/";var s=window["webpackJsonp"]=window["webpackJsonp"]||[],c=s.push.bind(s);s.push=t,s=s.slice();for(var l=0;l<s.length;l++)t(s[l]);var u=c;i.push([0,"chunk-vendors"]),n()})({0:function(e,t,n){e.exports=n("56d7")},"034f":function(e,t,n){"use strict";var r=n("64a9"),o=n.n(r);o.a},"111a":function(e,t,n){"use strict";(function(e,r){n.d(t,"a",function(){return Y});n("96cf"),n("aef6"),n("0cd8"),n("1c4c"),n("6762"),n("2fdb"),n("759f"),n("456d"),n("f400"),n("c5f6"),n("5df3"),n("10ad");var o,i,a=n("3b8d"),s=(n("d92a"),n("0d6d"),n("af56"),n("ac4d"),n("8a81"),n("ac6a"),n("f3e2"),n("6b54"),n("87b3"),n("58b2"),n("1c01"),n("4917"),n("d25f"),n("7514"),n("3b2b"),n("28a5"),n("78ce"),n("4f37"),n("2caf"),n("a481"),n("7f7f"),n("55dd"),n("6d67"),n("57e7"),n("7618"));(function(t,n){"object"===Object(s["a"])(e)&&"object"===Object(s["a"])(e.exports)?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)})("undefined"!==typeof window?window:void 0,function(e,t){var r=[],o=r.slice,a=r.concat,c=r.push,l=r.indexOf,u={},d=u.toString,p=u.hasOwnProperty,f={},h=e.document,m="2.1.4",v=function e(t,n){return new e.fn.init(t,n)},g=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,y=/^-ms-/,b=/-([\da-z])/gi,C=function(e,t){return t.toUpperCase()};function S(e){var t="length"in e&&e.length,n=v.type(e);return"function"!==n&&!v.isWindow(e)&&(!(1!==e.nodeType||!t)||("array"===n||0===t||"number"===typeof t&&t>0&&t-1 in e))}v.fn=v.prototype={jquery:m,constructor:v,selector:"",length:0,toArray:function(){return o.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:o.call(this)},pushStack:function(e){var t=v.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return v.each(this,e,t)},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(o.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:c,sort:r.sort,splice:r.splice},v.extend=v.fn.extend=function(){var e,t,n,r,o,i,a=arguments[0]||{},c=1,l=arguments.length,u=!1;for("boolean"===typeof a&&(u=a,a=arguments[c]||{},c++),"object"===Object(s["a"])(a)||v.isFunction(a)||(a={}),c===l&&(a=this,c--);c<l;c++)if(null!=(e=arguments[c]))for(t in e)n=a[t],r=e[t],a!==r&&(u&&r&&(v.isPlainObject(r)||(o=v.isArray(r)))?(o?(o=!1,i=n&&v.isArray(n)?n:[]):i=n&&v.isPlainObject(n)?n:{},a[t]=v.extend(u,i,r)):void 0!==r&&(a[t]=r));return a},v.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===v.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){return!v.isArray(e)&&e-parseFloat(e)+1>=0},isPlainObject:function(e){return"object"===v.type(e)&&!e.nodeType&&!v.isWindow(e)&&!(e.constructor&&!p.call(e.constructor.prototype,"isPrototypeOf"))},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"===Object(s["a"])(e)||"function"===typeof e?u[d.call(e)]||"object":Object(s["a"])(e)},globalEval:function(e){var t,n=eval;e=v.trim(e),e&&(1===e.indexOf("use strict")?(t=h.createElement("script"),t.text=e,h.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(y,"ms-").replace(b,C)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,o=0,i=e.length,a=S(e);if(n){if(a){for(;o<i;o++)if(r=t.apply(e[o],n),!1===r)break}else for(o in e)if(r=t.apply(e[o],n),!1===r)break}else if(a){for(;o<i;o++)if(r=t.call(e[o],o,e[o]),!1===r)break}else for(o in e)if(r=t.call(e[o],o,e[o]),!1===r)break;return e},trim:function(e){return null==e?"":(e+"").replace(g,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(S(Object(e))?v.merge(n,"string"===typeof e?[e]:e):c.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:l.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,o=e.length;r<n;r++)e[o++]=t[r];return e.length=o,e},grep:function(e,t,n){for(var r,o=[],i=0,a=e.length,s=!n;i<a;i++)r=!t(e[i],i),r!==s&&o.push(e[i]);return o},map:function(e,t,n){var r,o=0,i=e.length,s=S(e),c=[];if(s)for(;o<i;o++)r=t(e[o],o,n),null!=r&&c.push(r);else for(o in e)r=t(e[o],o,n),null!=r&&c.push(r);return a.apply([],c)},guid:1,proxy:function(e,t){var n,r,i;if("string"===typeof t&&(n=e[t],t=e,e=n),v.isFunction(e))return r=o.call(arguments,2),i=function(){return e.apply(t||this,r.concat(o.call(arguments)))},i.guid=e.guid=e.guid||v.guid++,i},now:Date.now,support:f}),v.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){u["[object "+t+"]"]=t.toLowerCase()});var w=function(e){var t,n,r,o,i,a,s,c,l,u,d,p,f,h,m,v,g,y,b,C="sizzle"+1*new Date,S=e.document,w=0,_=0,T=ae(),x=ae(),k=ae(),R=function(e,t){return e===t&&(d=!0),0},P=1<<31,D={}.hasOwnProperty,E=[],O=E.pop,j=E.push,M=E.push,I=E.slice,A=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},N="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",H=F.replace("w","w#"),U="\\["+L+"*("+F+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+H+"))|)"+L+"*\\]",V=":("+F+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+U+")*)|.*)\\)|)",q=new RegExp(L+"+","g"),B=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),W=new RegExp("^"+L+"*,"+L+"*"),z=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),$=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),G=new RegExp(V),J=new RegExp("^"+H+"$"),X={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+U),PSEUDO:new RegExp("^"+V),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+N+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},K=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Q=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=/'|\\/g,ne=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),re=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},oe=function(){p()};try{M.apply(E=I.call(S.childNodes),S.childNodes),E[S.childNodes.length].nodeType}catch(Te){M={apply:E.length?function(e,t){j.apply(e,I.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function ie(e,t,r,o){var i,s,l,u,d,h,g,y,w,_;if((t?t.ownerDocument||t:S)!==f&&p(t),t=t||f,r=r||[],u=t.nodeType,"string"!==typeof e||!e||1!==u&&9!==u&&11!==u)return r;if(!o&&m){if(11!==u&&(i=Z.exec(e)))if(l=i[1]){if(9===u){if(s=t.getElementById(l),!s||!s.parentNode)return r;if(s.id===l)return r.push(s),r}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(l))&&b(t,s)&&s.id===l)return r.push(s),r}else{if(i[2])return M.apply(r,t.getElementsByTagName(e)),r;if((l=i[3])&&n.getElementsByClassName)return M.apply(r,t.getElementsByClassName(l)),r}if(n.qsa&&(!v||!v.test(e))){if(y=g=C,w=t,_=1!==u&&e,1===u&&"object"!==t.nodeName.toLowerCase()){h=a(e),(g=t.getAttribute("id"))?y=g.replace(te,"\\$&"):t.setAttribute("id",y),y="[id='"+y+"'] ",d=h.length;while(d--)h[d]=y+ve(h[d]);w=ee.test(e)&&he(t.parentNode)||t,_=h.join(",")}if(_)try{return M.apply(r,w.querySelectorAll(_)),r}catch(T){}finally{g||t.removeAttribute("id")}}}return c(e.replace(B,"$1"),t,r,o)}function ae(){var e=[];function t(n,o){return e.push(n+" ")>r.cacheLength&&delete t[e.shift()],t[n+" "]=o}return t}function se(e){return e[C]=!0,e}function ce(e){var t=f.createElement("div");try{return!!e(t)}catch(Te){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function le(e,t){var n=e.split("|"),o=e.length;while(o--)r.attrHandle[n[o]]=t}function ue(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||P)-(~e.sourceIndex||P);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function pe(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function fe(e){return se(function(t){return t=+t,se(function(n,r){var o,i=e([],n.length,t),a=i.length;while(a--)n[o=i[a]]&&(n[o]=!(r[o]=n[o]))})})}function he(e){return e&&"undefined"!==typeof e.getElementsByTagName&&e}for(t in n=ie.support={},i=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},p=ie.setDocument=function(e){var t,o,a=e?e.ownerDocument||e:S;return a!==f&&9===a.nodeType&&a.documentElement?(f=a,h=a.documentElement,o=a.defaultView,o&&o!==o.top&&(o.addEventListener?o.addEventListener("unload",oe,!1):o.attachEvent&&o.attachEvent("onunload",oe)),m=!i(a),n.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),n.getElementsByTagName=ce(function(e){return e.appendChild(a.createComment("")),!e.getElementsByTagName("*").length}),n.getElementsByClassName=Q.test(a.getElementsByClassName),n.getById=ce(function(e){return h.appendChild(e).id=C,!a.getElementsByName||!a.getElementsByName(C).length}),n.getById?(r.find["ID"]=function(e,t){if("undefined"!==typeof t.getElementById&&m){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},r.filter["ID"]=function(e){var t=e.replace(ne,re);return function(e){return e.getAttribute("id")===t}}):(delete r.find["ID"],r.filter["ID"]=function(e){var t=e.replace(ne,re);return function(e){var n="undefined"!==typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),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(m)return t.getElementsByClassName(e)},g=[],v=[],(n.qsa=Q.test(a.querySelectorAll))&&(ce(function(e){h.appendChild(e).innerHTML="<a id='"+C+"'></a><select id='"+C+"-\f]' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+L+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+L+"*(?:value|"+N+")"),e.querySelectorAll("[id~="+C+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+C+"+*").length||v.push(".#.+[+~]")}),ce(function(e){var t=a.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+L+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(n.matchesSelector=Q.test(y=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce(function(e){n.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),g.push("!=",V)}),v=v.length&&new RegExp(v.join("|")),g=g.length&&new RegExp(g.join("|")),t=Q.test(h.compareDocumentPosition),b=t||Q.test(h.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},R=t?function(e,t){if(e===t)return d=!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===a||e.ownerDocument===S&&b(S,e)?-1:t===a||t.ownerDocument===S&&b(S,t)?1:u?A(u,e)-A(u,t):0:4&r?-1:1)}:function(e,t){if(e===t)return d=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,s=[e],c=[t];if(!o||!i)return e===a?-1:t===a?1:o?-1:i?1:u?A(u,e)-A(u,t):0;if(o===i)return ue(e,t);n=e;while(n=n.parentNode)s.unshift(n);n=t;while(n=n.parentNode)c.unshift(n);while(s[r]===c[r])r++;return r?ue(s[r],c[r]):s[r]===S?-1:c[r]===S?1:0},a):f},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace($,"='$1']"),n.matchesSelector&&m&&(!g||!g.test(t))&&(!v||!v.test(t)))try{var r=y.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(Te){}return ie(t,f,null,[e]).length>0},ie.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),b(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==f&&p(e);var o=r.attrHandle[t.toLowerCase()],i=o&&D.call(r.attrHandle,t.toLowerCase())?o(e,t,!m):void 0;return void 0!==i?i:n.attributes||!m?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},ie.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},ie.uniqueSort=function(e){var t,r=[],o=0,i=0;if(d=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort(R),d){while(t=e[i++])t===e[i]&&(o=r.push(i));while(o--)e.splice(r[o],1)}return u=null,e},o=ie.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=ie.selectors={cacheLength:50,createPseudo:se,match:X,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(ne,re),e[3]=(e[3]||e[4]||e[5]||"").replace(ne,re),"~="===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]||ie.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]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return X["CHILD"].test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.test(n)&&(t=a(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ne,re).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=T[e+" "];return t||(t=new RegExp("(^|"+L+")"+e+"("+L+"|$)"))&&T(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=ie.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(q," ")+" ").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),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===o?function(e){return!!e.parentNode}:function(t,n,c){var l,u,d,p,f,h,m=i!==a?"nextSibling":"previousSibling",v=t.parentNode,g=s&&t.nodeName.toLowerCase(),y=!c&&!s;if(v){if(i){while(m){d=t;while(d=d[m])if(s?d.nodeName.toLowerCase()===g:1===d.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&y){u=v[C]||(v[C]={}),l=u[e]||[],f=l[0]===w&&l[1],p=l[0]===w&&l[2],d=f&&v.childNodes[f];while(d=++f&&d&&d[m]||(p=f=0)||h.pop())if(1===d.nodeType&&++p&&d===t){u[e]=[w,f,p];break}}else if(y&&(l=(t[C]||(t[C]={}))[e])&&l[0]===w)p=l[1];else while(d=++f&&d&&d[m]||(p=f=0)||h.pop())if((s?d.nodeName.toLowerCase()===g:1===d.nodeType)&&++p&&(y&&((d[C]||(d[C]={}))[e]=[w,p]),d===t))break;return p-=o,p===r||p%r===0&&p/r>=0}}},PSEUDO:function(e,t){var n,o=r.pseudos[e]||r.setFilters[e.toLowerCase()]||ie.error("unsupported pseudo: "+e);return o[C]?o(t):o.length>1?(n=[e,e,"",t],r.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,n){var r,i=o(e,t),a=i.length;while(a--)r=A(e,i[a]),e[r]=!(n[r]=i[a])}):function(e){return o(e,0,n)}):o}},pseudos:{not:se(function(e){var t=[],n=[],r=s(e.replace(B,"$1"));return r[C]?se(function(e,t,n,o){var i,a=r(e,null,o,[]),s=e.length;while(s--)(i=a[s])&&(e[s]=!(t[s]=i))}):function(e,o,i){return t[0]=e,r(t,null,i,n),t[0]=null,!n.pop()}}),has:se(function(e){return function(t){return ie(e,t).length>0}}),contains:se(function(e){return e=e.replace(ne,re),function(t){return(t.textContent||t.innerText||o(t)).indexOf(e)>-1}}),lang:se(function(e){return J.test(e||"")||ie.error("unsupported lang: "+e),e=e.replace(ne,re).toLowerCase(),function(t){var n;do{if(n=m?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===h},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return!1===e.disabled},disabled:function(e){return!0===e.disabled},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 Y.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:fe(function(){return[0]}),last:fe(function(e,t){return[t-1]}),eq:fe(function(e,t,n){return[n<0?n+t:n]}),even:fe(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:fe(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:fe(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:fe(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]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=pe(t);function me(){}function ve(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function ge(e,t,n){var r=t.dir,o=n&&"parentNode"===r,i=_++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,a){var s,c,l=[w,i];if(a){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,a))return!0}else while(t=t[r])if(1===t.nodeType||o){if(c=t[C]||(t[C]={}),(s=c[r])&&s[0]===w&&s[1]===i)return l[2]=s[2];if(c[r]=l,l[2]=e(t,n,a))return!0}}}function ye(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 be(e,t,n){for(var r=0,o=t.length;r<o;r++)ie(e,t[r],n);return n}function Ce(e,t,n,r,o){for(var i,a=[],s=0,c=e.length,l=null!=t;s<c;s++)(i=e[s])&&(n&&!n(i,r,o)||(a.push(i),l&&t.push(s)));return a}function Se(e,t,n,r,o,i){return r&&!r[C]&&(r=Se(r)),o&&!o[C]&&(o=Se(o,i)),se(function(i,a,s,c){var l,u,d,p=[],f=[],h=a.length,m=i||be(t||"*",s.nodeType?[s]:s,[]),v=!e||!i&&t?m:Ce(m,p,e,s,c),g=n?o||(i?e:h||r)?[]:a:v;if(n&&n(v,g,s,c),r){l=Ce(g,f),r(l,[],s,c),u=l.length;while(u--)(d=l[u])&&(g[f[u]]=!(v[f[u]]=d))}if(i){if(o||e){if(o){l=[],u=g.length;while(u--)(d=g[u])&&l.push(v[u]=d);o(null,g=[],l,c)}u=g.length;while(u--)(d=g[u])&&(l=o?A(i,d):p[u])>-1&&(i[l]=!(a[l]=d))}}else g=Ce(g===a?g.splice(h,g.length):g),o?o(null,a,g,c):M.apply(a,g)})}function we(e){for(var t,n,o,i=e.length,a=r.relative[e[0].type],s=a||r.relative[" "],c=a?1:0,u=ge(function(e){return e===t},s,!0),d=ge(function(e){return A(t,e)>-1},s,!0),p=[function(e,n,r){var o=!a&&(r||n!==l)||((t=n).nodeType?u(e,n,r):d(e,n,r));return t=null,o}];c<i;c++)if(n=r.relative[e[c].type])p=[ge(ye(p),n)];else{if(n=r.filter[e[c].type].apply(null,e[c].matches),n[C]){for(o=++c;o<i;o++)if(r.relative[e[o].type])break;return Se(c>1&&ye(p),c>1&&ve(e.slice(0,c-1).concat({value:" "===e[c-2].type?"*":""})).replace(B,"$1"),n,c<o&&we(e.slice(c,o)),o<i&&we(e=e.slice(o)),o<i&&ve(e))}p.push(n)}return ye(p)}function _e(e,t){var n=t.length>0,o=e.length>0,i=function(i,a,s,c,u){var d,p,h,m=0,v="0",g=i&&[],y=[],b=l,C=i||o&&r.find["TAG"]("*",u),S=w+=null==b?1:Math.random()||.1,_=C.length;for(u&&(l=a!==f&&a);v!==_&&null!=(d=C[v]);v++){if(o&&d){p=0;while(h=e[p++])if(h(d,a,s)){c.push(d);break}u&&(w=S)}n&&((d=!h&&d)&&m--,i&&g.push(d))}if(m+=v,n&&v!==m){p=0;while(h=t[p++])h(g,y,a,s);if(i){if(m>0)while(v--)g[v]||y[v]||(y[v]=O.call(c));y=Ce(y)}M.apply(c,y),u&&!i&&y.length>0&&m+t.length>1&&ie.uniqueSort(c)}return u&&(w=S,l=b),g};return n?se(i):i}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=ie.tokenize=function(e,t){var n,o,i,a,s,c,l,u=x[e+" "];if(u)return t?0:u.slice(0);s=e,c=[],l=r.preFilter;while(s){for(a in n&&!(o=W.exec(s))||(o&&(s=s.slice(o[0].length)||s),c.push(i=[])),n=!1,(o=z.exec(s))&&(n=o.shift(),i.push({value:n,type:o[0].replace(B," ")}),s=s.slice(n.length)),r.filter)!(o=X[a].exec(s))||l[a]&&!(o=l[a](o))||(n=o.shift(),i.push({value:n,type:a,matches:o}),s=s.slice(n.length));if(!n)break}return t?s.length:s?ie.error(e):x(e,c).slice(0)},s=ie.compile=function(e,t){var n,r=[],o=[],i=k[e+" "];if(!i){t||(t=a(e)),n=t.length;while(n--)i=we(t[n]),i[C]?r.push(i):o.push(i);i=k(e,_e(o,r)),i.selector=e}return i},c=ie.select=function(e,t,o,i){var c,l,u,d,p,f="function"===typeof e&&e,h=!i&&a(e=f.selector||e);if(o=o||[],1===h.length){if(l=h[0]=h[0].slice(0),l.length>2&&"ID"===(u=l[0]).type&&n.getById&&9===t.nodeType&&m&&r.relative[l[1].type]){if(t=(r.find["ID"](u.matches[0].replace(ne,re),t)||[])[0],!t)return o;f&&(t=t.parentNode),e=e.slice(l.shift().value.length)}c=X["needsContext"].test(e)?0:l.length;while(c--){if(u=l[c],r.relative[d=u.type])break;if((p=r.find[d])&&(i=p(u.matches[0].replace(ne,re),ee.test(l[0].type)&&he(t.parentNode)||t))){if(l.splice(c,1),e=i.length&&ve(l),!e)return M.apply(o,i),o;break}}}return(f||s(e,h))(i,t,!m,o,ee.test(e)&&he(t.parentNode)||t),o},n.sortStable=C.split("").sort(R).join("")===C,n.detectDuplicates=!!d,p(),n.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(f.createElement("div"))}),ce(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&&ce(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}),ce(function(e){return null==e.getAttribute("disabled")})||le(N,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),ie}(e);v.find=w,v.expr=w.selectors,v.expr[":"]=v.expr.pseudos,v.unique=w.uniqueSort,v.text=w.getText,v.isXMLDoc=w.isXML,v.contains=w.contains;var _=v.expr.match.needsContext,T=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,x=/^.[^:#\[\.,]*$/;function k(e,t,n){if(v.isFunction(t))return v.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return v.grep(e,function(e){return e===t!==n});if("string"===typeof t){if(x.test(t))return v.filter(t,e,n);t=v.filter(t,e)}return v.grep(e,function(e){return l.call(t,e)>=0!==n})}v.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?v.find.matchesSelector(r,e)?[r]:[]:v.find.matches(e,v.grep(t,function(e){return 1===e.nodeType}))},v.fn.extend({find:function(e){var t,n=this.length,r=[],o=this;if("string"!==typeof e)return this.pushStack(v(e).filter(function(){for(t=0;t<n;t++)if(v.contains(o[t],this))return!0}));for(t=0;t<n;t++)v.find(e,o[t],r);return r=this.pushStack(n>1?v.unique(r):r),r.selector=this.selector?this.selector+" "+e:e,r},filter:function(e){return this.pushStack(k(this,e||[],!1))},not:function(e){return this.pushStack(k(this,e||[],!0))},is:function(e){return!!k(this,"string"===typeof e&&_.test(e)?v(e):e||[],!1).length}});var R,P=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,D=v.fn.init=function(e,t){var n,r;if(!e)return this;if("string"===typeof e){if(n="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:P.exec(e),!n||!n[1]&&t)return!t||t.jquery?(t||R).find(e):this.constructor(t).find(e);if(n[1]){if(t=t instanceof v?t[0]:t,v.merge(this,v.parseHTML(n[1],t&&t.nodeType?t.ownerDocument||t:h,!0)),T.test(n[1])&&v.isPlainObject(t))for(n in t)v.isFunction(this[n])?this[n](t[n]):this.attr(n,t[n]);return this}return r=h.getElementById(n[2]),r&&r.parentNode&&(this.length=1,this[0]=r),this.context=h,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):v.isFunction(e)?"undefined"!==typeof R.ready?R.ready(e):e(v):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))};D.prototype=v.fn,R=v(h);var E=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function j(e,t){while((e=e[t])&&1!==e.nodeType);return e}v.extend({dir:function(e,t,n){var r=[],o=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(o&&v(e).is(n))break;r.push(e)}return r},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}}),v.fn.extend({has:function(e){var t=v(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(v.contains(this,t[e]))return!0})},closest:function(e,t){for(var n,r=0,o=this.length,i=[],a=_.test(e)||"string"!==typeof e?v(e,t||this.context):0;r<o;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&v.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?v.unique(i):i)},index:function(e){return e?"string"===typeof e?l.call(v(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(v.unique(v.merge(this.get(),v(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),v.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return j(e,"nextSibling")},prev:function(e){return j(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return e.contentDocument||v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var o=v.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"===typeof r&&(o=v.filter(r,o)),this.length>1&&(O[e]||v.unique(o),E.test(e)&&o.reverse()),this.pushStack(o)}});var M,I=/\S+/g,A={};function N(e){var t=A[e]={};return v.each(e.match(I)||[],function(e,n){t[n]=!0}),t}function L(){h.removeEventListener("DOMContentLoaded",L,!1),e.removeEventListener("load",L,!1),v.ready()}v.Callbacks=function(e){e="string"===typeof e?A[e]||N(e):v.extend({},e);var t,n,r,o,i,a,s=[],c=!e.once&&[],l=function l(d){for(t=e.memory&&d,n=!0,a=o||0,o=0,i=s.length,r=!0;s&&a<i;a++)if(!1===s[a].apply(d[0],d[1])&&e.stopOnFalse){t=!1;break}r=!1,s&&(c?c.length&&l(c.shift()):t?s=[]:u.disable())},u={add:function(){if(s){var n=s.length;(function t(n){v.each(n,function(n,r){var o=v.type(r);"function"===o?e.unique&&u.has(r)||s.push(r):r&&r.length&&"string"!==o&&t(r)})})(arguments),r?i=s.length:t&&(o=n,l(t))}return this},remove:function(){return s&&v.each(arguments,function(e,t){var n;while((n=v.inArray(t,s,n))>-1)s.splice(n,1),r&&(n<=i&&i--,n<=a&&a--)}),this},has:function(e){return e?v.inArray(e,s)>-1:!(!s||!s.length)},empty:function(){return s=[],i=0,this},disable:function(){return s=c=t=void 0,this},disabled:function(){return!s},lock:function(){return c=void 0,t||u.disable(),this},locked:function(){return!c},fireWith:function(e,t){return!s||n&&!c||(t=t||[],t=[e,t.slice?t.slice():t],r?c.push(t):l(t)),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!n}};return u},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,i){var a=v.isFunction(e[t])&&e[t];o[i[1]](function(){var e=a&&a.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[i[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?v.extend(e,r):r}},o={};return r.pipe=r.then,v.each(t,function(e,i){var a=i[2],s=i[3];r[i[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),o[i[0]]=function(){return o[i[0]+"With"](this===o?r:this,arguments),this},o[i[0]+"With"]=a.fireWith}),r.promise(o),e&&e.call(o,o),o},when:function(e){var t,n,r,i=0,a=o.call(arguments),s=a.length,c=1!==s||e&&v.isFunction(e.promise)?s:0,l=1===c?e:v.Deferred(),u=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?o.call(arguments):i,r===t?l.notifyWith(n,r):--c||l.resolveWith(n,r)}};if(s>1)for(t=new Array(s),n=new Array(s),r=new Array(s);i<s;i++)a[i]&&v.isFunction(a[i].promise)?a[i].promise().done(u(i,r,a)).fail(l.reject).progress(u(i,n,t)):--c;return c||l.resolveWith(r,a),l.promise()}}),v.fn.ready=function(e){return v.ready.promise().done(e),this},v.extend({isReady:!1,readyWait:1,holdReady:function(e){e?v.readyWait++:v.ready(!0)},ready:function(e){(!0===e?--v.readyWait:v.isReady)||(v.isReady=!0,!0!==e&&--v.readyWait>0||(M.resolveWith(h,[v]),v.fn.triggerHandler&&(v(h).triggerHandler("ready"),v(h).off("ready"))))}}),v.ready.promise=function(t){return M||(M=v.Deferred(),"complete"===h.readyState?setTimeout(v.ready):(h.addEventListener("DOMContentLoaded",L,!1),e.addEventListener("load",L,!1))),M.promise(t)},v.ready.promise();var F=v.access=function(e,t,n,r,o,i,a){var s=0,c=e.length,l=null==n;if("object"===v.type(n))for(s in o=!0,n)v.access(e,t,s,n[s],!0,i,a);else if(void 0!==r&&(o=!0,v.isFunction(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(v(e),n)})),t))for(;s<c;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return o?e:l?t.call(e):c?t(e[0],n):i};function H(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=v.expando+H.uid++}v.acceptData=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType},H.uid=1,H.accepts=v.acceptData,H.prototype={key:function(e){if(!H.accepts(e))return 0;var t={},n=e[this.expando];if(!n){n=H.uid++;try{t[this.expando]={value:n},Object.defineProperties(e,t)}catch(r){t[this.expando]=n,v.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,o=this.key(e),i=this.cache[o];if("string"===typeof t)i[t]=n;else if(v.isEmptyObject(i))v.extend(this.cache[o],t);else for(r in t)i[r]=t[r];return i},get:function(e,t){var n=this.cache[this.key(e)];return void 0===t?n:n[t]},access:function(e,t,n){var r;return void 0===t||t&&"string"===typeof t&&void 0===n?(r=this.get(e,t),void 0!==r?r:this.get(e,v.camelCase(t))):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r,o,i=this.key(e),a=this.cache[i];if(void 0===t)this.cache[i]={};else{v.isArray(t)?r=t.concat(t.map(v.camelCase)):(o=v.camelCase(t),t in a?r=[t,o]:(r=o,r=r in a?[r]:r.match(I)||[])),n=r.length;while(n--)delete a[r[n]]}},hasData:function(e){return!v.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}};var U=new H,V=new H,q=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,B=/([A-Z])/g;function W(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(B,"-$1").toLowerCase(),n=e.getAttribute(r),"string"===typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:q.test(n)?v.parseJSON(n):n)}catch(o){}V.set(e,t,n)}else n=void 0;return n}v.extend({hasData:function(e){return V.hasData(e)||U.hasData(e)},data:function(e,t,n){return V.access(e,t,n)},removeData:function(e,t){V.remove(e,t)},_data:function(e,t,n){return U.access(e,t,n)},_removeData:function(e,t){U.remove(e,t)}}),v.fn.extend({data:function(e,t){var n,r,o,i=this[0],a=i&&i.attributes;if(void 0===e){if(this.length&&(o=V.get(i),1===i.nodeType&&!U.get(i,"hasDataAttrs"))){n=a.length;while(n--)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=v.camelCase(r.slice(5)),W(i,r,o[r])));U.set(i,"hasDataAttrs",!0)}return o}return"object"===Object(s["a"])(e)?this.each(function(){V.set(this,e)}):F(this,function(t){var n,r=v.camelCase(e);if(i&&void 0===t)return n=V.get(i,e),void 0!==n?n:(n=V.get(i,r),void 0!==n?n:(n=W(i,r,void 0),void 0!==n?n:void 0));this.each(function(){var n=V.get(this,r);V.set(this,r,t),-1!==e.indexOf("-")&&void 0!==n&&V.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){V.remove(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=U.get(e,t),n&&(!r||v.isArray(n)?r=U.access(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,o=n.shift(),i=v._queueHooks(e,t),a=function(){v.dequeue(e,t)};"inprogress"===o&&(o=n.shift(),r--),o&&("fx"===t&&n.unshift("inprogress"),delete i.stop,o.call(e,a,i)),!r&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return U.get(e,n)||U.access(e,n,{empty:v.Callbacks("once memory").add(function(){U.remove(e,[t+"queue",n])})})}}),v.fn.extend({queue:function(e,t){var n=2;return"string"!==typeof e&&(t=e,e="fx",n--),arguments.length<n?v.queue(this[0],e):void 0===t?this:this.each(function(){var n=v.queue(this,e,t);v._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&v.dequeue(this,e)})},dequeue:function(e){return this.each(function(){v.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,o=v.Deferred(),i=this,a=this.length,s=function(){--r||o.resolveWith(i,[i])};"string"!==typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)n=U.get(i[a],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(s));return s(),o.promise(t)}});var z=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,$=["Top","Right","Bottom","Left"],G=function(e,t){return e=t||e,"none"===v.css(e,"display")||!v.contains(e.ownerDocument,e)},J=/^(?:checkbox|radio)$/i;(function(){var e=h.createDocumentFragment(),t=e.appendChild(h.createElement("div")),n=h.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),f.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",f.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue})();var X="undefined";f.focusinBubbles="onfocusin"in e;var K=/^key/,Y=/^(?:mouse|pointer|contextmenu)|click/,Q=/^(?:focusinfocus|focusoutblur)$/,Z=/^([^.]*)(?:\.(.+)|)$/;function ee(){return!0}function te(){return!1}function ne(){try{return h.activeElement}catch(e){}}v.event={global:{},add:function(e,t,n,r,o){var i,a,c,l,u,d,p,f,h,m,g,y=U.get(e);if(y){n.handler&&(i=n,n=i.handler,o=i.selector),n.guid||(n.guid=v.guid++),(l=y.events)||(l=y.events={}),(a=y.handle)||(a=y.handle=function(t){return Object(s["a"])(v)!==X&&v.event.triggered!==t.type?v.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(I)||[""],u=t.length;while(u--)c=Z.exec(t[u])||[],h=g=c[1],m=(c[2]||"").split(".").sort(),h&&(p=v.event.special[h]||{},h=(o?p.delegateType:p.bindType)||h,p=v.event.special[h]||{},d=v.extend({type:h,origType:g,data:r,handler:n,guid:n.guid,selector:o,needsContext:o&&v.expr.match.needsContext.test(o),namespace:m.join(".")},i),(f=l[h])||(f=l[h]=[],f.delegateCount=0,p.setup&&!1!==p.setup.call(e,r,m,a)||e.addEventListener&&e.addEventListener(h,a,!1)),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=n.guid)),o?f.splice(f.delegateCount++,0,d):f.push(d),v.event.global[h]=!0)}},remove:function(e,t,n,r,o){var i,a,s,c,l,u,d,p,f,h,m,g=U.hasData(e)&&U.get(e);if(g&&(c=g.events)){t=(t||"").match(I)||[""],l=t.length;while(l--)if(s=Z.exec(t[l])||[],f=m=s[1],h=(s[2]||"").split(".").sort(),f){d=v.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,p=c[f]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=i=p.length;while(i--)u=p[i],!o&&m!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||r&&r!==u.selector&&("**"!==r||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));a&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,g.handle)||v.removeEvent(e,f,g.handle),delete c[f])}else for(f in c)v.event.remove(e,f+t[l],n,r,!0);v.isEmptyObject(c)&&(delete g.handle,U.remove(e,"events"))}},trigger:function(t,n,r,o){var i,a,c,l,u,d,f,m=[r||h],g=p.call(t,"type")?t.type:t,y=p.call(t,"namespace")?t.namespace.split("."):[];if(a=c=r=r||h,3!==r.nodeType&&8!==r.nodeType&&!Q.test(g+v.event.triggered)&&(g.indexOf(".")>=0&&(y=g.split("."),g=y.shift(),y.sort()),u=g.indexOf(":")<0&&"on"+g,t=t[v.expando]?t:new v.Event(g,"object"===Object(s["a"])(t)&&t),t.isTrigger=o?2:3,t.namespace=y.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+y.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:v.makeArray(n,[t]),f=v.event.special[g]||{},o||!f.trigger||!1!==f.trigger.apply(r,n))){if(!o&&!f.noBubble&&!v.isWindow(r)){for(l=f.delegateType||g,Q.test(l+g)||(a=a.parentNode);a;a=a.parentNode)m.push(a),c=a;c===(r.ownerDocument||h)&&m.push(c.defaultView||c.parentWindow||e)}i=0;while((a=m[i++])&&!t.isPropagationStopped())t.type=i>1?l:f.bindType||g,d=(U.get(a,"events")||{})[t.type]&&U.get(a,"handle"),d&&d.apply(a,n),d=u&&a[u],d&&d.apply&&v.acceptData(a)&&(t.result=d.apply(a,n),!1===t.result&&t.preventDefault());return t.type=g,o||t.isDefaultPrevented()||f._default&&!1!==f._default.apply(m.pop(),n)||!v.acceptData(r)||u&&v.isFunction(r[g])&&!v.isWindow(r)&&(c=r[u],c&&(r[u]=null),v.event.triggered=g,r[g](),v.event.triggered=void 0,c&&(r[u]=c)),t.result}},dispatch:function(e){e=v.event.fix(e);var t,n,r,i,a,s=[],c=o.call(arguments),l=(U.get(this,"events")||{})[e.type]||[],u=v.event.special[e.type]||{};if(c[0]=e,e.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,e)){s=v.event.handlers.call(this,e,l),t=0;while((i=s[t++])&&!e.isPropagationStopped()){e.currentTarget=i.elem,n=0;while((a=i.handlers[n++])&&!e.isImmediatePropagationStopped())e.namespace_re&&!e.namespace_re.test(a.namespace)||(e.handleObj=a,e.data=a.data,r=((v.event.special[a.origType]||{}).handle||a.handler).apply(i.elem,c),void 0!==r&&!1===(e.result=r)&&(e.preventDefault(),e.stopPropagation()))}return u.postDispatch&&u.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,o,i,a=[],s=t.delegateCount,c=e.target;if(s&&c.nodeType&&(!e.button||"click"!==e.type))for(;c!==this;c=c.parentNode||this)if(!0!==c.disabled||"click"!==e.type){for(r=[],n=0;n<s;n++)i=t[n],o=i.selector+" ",void 0===r[o]&&(r[o]=i.needsContext?v(o,this).index(c)>=0:v.find(o,this,null,[c]).length),r[o]&&r.push(i);r.length&&a.push({elem:c,handlers:r})}return s<t.length&&a.push({elem:this,handlers:t.slice(s)}),a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var n,r,o,i=t.button;return null==e.pageX&&null!=t.clientX&&(n=e.target.ownerDocument||h,r=n.documentElement,o=n.body,e.pageX=t.clientX+(r&&r.scrollLeft||o&&o.scrollLeft||0)-(r&&r.clientLeft||o&&o.clientLeft||0),e.pageY=t.clientY+(r&&r.scrollTop||o&&o.scrollTop||0)-(r&&r.clientTop||o&&o.clientTop||0)),e.which||void 0===i||(e.which=1&i?1:2&i?3:4&i?2:0),e}},fix:function(e){if(e[v.expando])return e;var t,n,r,o=e.type,i=e,a=this.fixHooks[o];a||(this.fixHooks[o]=a=Y.test(o)?this.mouseHooks:K.test(o)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,e=new v.Event(i),t=r.length;while(t--)n=r[t],e[n]=i[n];return e.target||(e.target=h),3===e.target.nodeType&&(e.target=e.target.parentNode),a.filter?a.filter(e,i):e},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==ne()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===ne()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&v.nodeName(this,"input"))return this.click(),!1},_default:function(e){return v.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var o=v.extend(new v.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?v.event.trigger(o,null,t):v.event.dispatch.call(t,o),o.isDefaultPrevented()&&n.preventDefault()}},v.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)},v.Event=function(e,t){if(!(this instanceof v.Event))return new v.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?ee:te):this.type=e,t&&v.extend(this,t),this.timeStamp=e&&e.timeStamp||v.now(),this[v.expando]=!0},v.Event.prototype={isDefaultPrevented:te,isPropagationStopped:te,isImmediatePropagationStopped:te,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=ee,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=ee,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=ee,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},v.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){v.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,o=e.relatedTarget,i=e.handleObj;return o&&(o===r||v.contains(r,o))||(e.type=i.origType,n=i.handler.apply(this,arguments),e.type=t),n}}}),f.focusinBubbles||v.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){v.event.simulate(t,e.target,v.event.fix(e),!0)};v.event.special[t]={setup:function(){var r=this.ownerDocument||this,o=U.access(r,t);o||r.addEventListener(e,n,!0),U.access(r,t,(o||0)+1)},teardown:function(){var r=this.ownerDocument||this,o=U.access(r,t)-1;o?U.access(r,t,o):(r.removeEventListener(e,n,!0),U.remove(r,t))}}}),v.fn.extend({on:function(e,t,n,r,o){var i,a;if("object"===Object(s["a"])(e)){for(a in"string"!==typeof t&&(n=n||t,t=void 0),e)this.on(a,t,n,e[a],o);return this}if(null==n&&null==r?(r=t,n=t=void 0):null==r&&("string"===typeof t?(r=n,n=void 0):(r=n,n=t,t=void 0)),!1===r)r=te;else if(!r)return this;return 1===o&&(i=r,r=function(e){return v().off(e),i.apply(this,arguments)},r.guid=i.guid||(i.guid=v.guid++)),this.each(function(){v.event.add(this,e,r,n,t)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,t,n){var r,o;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,v(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===Object(s["a"])(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=te),this.each(function(){v.event.remove(this,e,n,t)})},trigger:function(e,t){return this.each(function(){v.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return v.event.trigger(e,t,n,!0)}});var re=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,oe=/<([\w:]+)/,ie=/<|&#?\w+;/,ae=/<(?:script|style|link)/i,se=/checked\s*(?:[^=]|=\s*.checked.)/i,ce=/^$|\/(?:java|ecma)script/i,le=/^true\/(.*)/,ue=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,de={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function pe(e,t){return v.nodeName(e,"table")&&v.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function fe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function he(e){var t=le.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function me(e,t){for(var n=0,r=e.length;n<r;n++)U.set(e[n],"globalEval",!t||U.get(t[n],"globalEval"))}function ve(e,t){var n,r,o,i,a,s,c,l;if(1===t.nodeType){if(U.hasData(e)&&(i=U.access(e),a=U.set(t,i),l=i.events,l))for(o in delete a.handle,a.events={},l)for(n=0,r=l[o].length;n<r;n++)v.event.add(t,o,l[o][n]);V.hasData(e)&&(s=V.access(e),c=v.extend({},s),V.set(t,c))}}function ge(e,t){var n=e.getElementsByTagName?e.getElementsByTagName(t||"*"):e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&v.nodeName(e,t)?v.merge([e],n):n}function ye(e,t){var n=t.nodeName.toLowerCase();"input"===n&&J.test(e.type)?t.checked=e.checked:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}de.optgroup=de.option,de.tbody=de.tfoot=de.colgroup=de.caption=de.thead,de.th=de.td,v.extend({clone:function(e,t,n){var r,o,i,a,s=e.cloneNode(!0),c=v.contains(e.ownerDocument,e);if(!f.noCloneChecked&&(1===e.nodeType||11===e.nodeType)&&!v.isXMLDoc(e))for(a=ge(s),i=ge(e),r=0,o=i.length;r<o;r++)ye(i[r],a[r]);if(t)if(n)for(i=i||ge(e),a=a||ge(s),r=0,o=i.length;r<o;r++)ve(i[r],a[r]);else ve(e,s);return a=ge(s,"script"),a.length>0&&me(a,!c&&ge(e,"script")),s},buildFragment:function(e,t,n,r){for(var o,i,a,s,c,l,u=t.createDocumentFragment(),d=[],p=0,f=e.length;p<f;p++)if(o=e[p],o||0===o)if("object"===v.type(o))v.merge(d,o.nodeType?[o]:o);else if(ie.test(o)){i=i||u.appendChild(t.createElement("div")),a=(oe.exec(o)||["",""])[1].toLowerCase(),s=de[a]||de._default,i.innerHTML=s[1]+o.replace(re,"<$1></$2>")+s[2],l=s[0];while(l--)i=i.lastChild;v.merge(d,i.childNodes),i=u.firstChild,i.textContent=""}else d.push(t.createTextNode(o));u.textContent="",p=0;while(o=d[p++])if((!r||-1===v.inArray(o,r))&&(c=v.contains(o.ownerDocument,o),i=ge(u.appendChild(o),"script"),c&&me(i),n)){l=0;while(o=i[l++])ce.test(o.type||"")&&n.push(o)}return u},cleanData:function(e){for(var t,n,r,o,i=v.event.special,a=0;void 0!==(n=e[a]);a++){if(v.acceptData(n)&&(o=n[U.expando],o&&(t=U.cache[o]))){if(t.events)for(r in t.events)i[r]?v.event.remove(n,r):v.removeEvent(n,r,t.handle);U.cache[o]&&delete U.cache[o]}delete V.cache[n[V.expando]]}}}),v.fn.extend({text:function(e){return F(this,function(e){return void 0===e?v.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 this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=pe(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=pe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=e?v.filter(e,this):this,o=0;null!=(n=r[o]);o++)t||1!==n.nodeType||v.cleanData(ge(n)),n.parentNode&&(t&&v.contains(n.ownerDocument,n)&&me(ge(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(v.cleanData(ge(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return F(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&&!ae.test(e)&&!de[(oe.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(re,"<$1></$2>");try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(v.cleanData(ge(t,!1)),t.innerHTML=e);t=0}catch(o){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,v.cleanData(ge(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=a.apply([],e);var n,r,o,i,s,c,l=0,u=this.length,d=this,p=u-1,h=e[0],m=v.isFunction(h);if(m||u>1&&"string"===typeof h&&!f.checkClone&&se.test(h))return this.each(function(n){var r=d.eq(n);m&&(e[0]=h.call(this,n,r.html())),r.domManip(e,t)});if(u&&(n=v.buildFragment(e,this[0].ownerDocument,!1,this),r=n.firstChild,1===n.childNodes.length&&(n=r),r)){for(o=v.map(ge(n,"script"),fe),i=o.length;l<u;l++)s=n,l!==p&&(s=v.clone(s,!0,!0),i&&v.merge(o,ge(s,"script"))),t.call(this[l],s,l);if(i)for(c=o[o.length-1].ownerDocument,v.map(o,he),l=0;l<i;l++)s=o[l],ce.test(s.type||"")&&!U.access(s,"globalEval")&&v.contains(c,s)&&(s.src?v._evalUrl&&v._evalUrl(s.src):v.globalEval(s.textContent.replace(ue,"")))}return this}}),v.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){v.fn[e]=function(e){for(var n,r=[],o=v(e),i=o.length-1,a=0;a<=i;a++)n=a===i?this:this.clone(!0),v(o[a])[t](n),c.apply(r,n.get());return this.pushStack(r)}});var be,Ce={};function Se(t,n){var r,o=v(n.createElement(t)).appendTo(n.body),i=e.getDefaultComputedStyle&&(r=e.getDefaultComputedStyle(o[0]))?r.display:v.css(o[0],"display");return o.detach(),i}function we(e){var t=h,n=Ce[e];return n||(n=Se(e,t),"none"!==n&&n||(be=(be||v("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=be[0].contentDocument,t.write(),t.close(),n=Se(e,t),be.detach()),Ce[e]=n),n}var _e=/^margin/,Te=new RegExp("^("+z+")(?!px)[a-z%]+$","i"),xe=function(t){return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):e.getComputedStyle(t,null)};function ke(e,t,n){var r,o,i,a,s=e.style;return n=n||xe(e),n&&(a=n.getPropertyValue(t)||n[t]),n&&(""!==a||v.contains(e.ownerDocument,e)||(a=v.style(e,t)),Te.test(a)&&_e.test(t)&&(r=s.width,o=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=o,s.maxWidth=i)),void 0!==a?a+"":a}function Re(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}(function(){var t,n,r=h.documentElement,o=h.createElement("div"),i=h.createElement("div");function a(){i.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",i.innerHTML="",r.appendChild(o);var a=e.getComputedStyle(i,null);t="1%"!==a.top,n="4px"===a.width,r.removeChild(o)}i.style&&(i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",f.clearCloneStyle="content-box"===i.style.backgroundClip,o.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",o.appendChild(i),e.getComputedStyle&&v.extend(f,{pixelPosition:function(){return a(),t},boxSizingReliable:function(){return null==n&&a(),n},reliableMarginRight:function(){var t,n=i.appendChild(h.createElement("div"));return n.style.cssText=i.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",n.style.marginRight=n.style.width="0",i.style.width="1px",r.appendChild(o),t=!parseFloat(e.getComputedStyle(n,null).marginRight),r.removeChild(o),i.removeChild(n),t}}))})(),v.swap=function(e,t,n,r){var o,i,a={};for(i in t)a[i]=e.style[i],e.style[i]=t[i];for(i in o=n.apply(e,r||[]),t)e.style[i]=a[i];return o};var Pe=/^(none|table(?!-c[ea]).+)/,De=new RegExp("^("+z+")(.*)$","i"),Ee=new RegExp("^([+-])=("+z+")","i"),Oe={position:"absolute",visibility:"hidden",display:"block"},je={letterSpacing:"0",fontWeight:"400"},Me=["Webkit","O","Moz","ms"];function Ie(e,t){if(t in e)return t;var n=t[0].toUpperCase()+t.slice(1),r=t,o=Me.length;while(o--)if(t=Me[o]+n,t in e)return t;return r}function Ae(e,t,n){var r=De.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function Ne(e,t,n,r,o){for(var i=n===(r?"border":"content")?4:"width"===t?1:0,a=0;i<4;i+=2)"margin"===n&&(a+=v.css(e,n+$[i],!0,o)),r?("content"===n&&(a-=v.css(e,"padding"+$[i],!0,o)),"margin"!==n&&(a-=v.css(e,"border"+$[i]+"Width",!0,o))):(a+=v.css(e,"padding"+$[i],!0,o),"padding"!==n&&(a+=v.css(e,"border"+$[i]+"Width",!0,o)));return a}function Le(e,t,n){var r=!0,o="width"===t?e.offsetWidth:e.offsetHeight,i=xe(e),a="border-box"===v.css(e,"boxSizing",!1,i);if(o<=0||null==o){if(o=ke(e,t,i),(o<0||null==o)&&(o=e.style[t]),Te.test(o))return o;r=a&&(f.boxSizingReliable()||o===e.style[t]),o=parseFloat(o)||0}return o+Ne(e,t,n||(a?"border":"content"),r,i)+"px"}function Fe(e,t){for(var n,r,o,i=[],a=0,s=e.length;a<s;a++)r=e[a],r.style&&(i[a]=U.get(r,"olddisplay"),n=r.style.display,t?(i[a]||"none"!==n||(r.style.display=""),""===r.style.display&&G(r)&&(i[a]=U.access(r,"olddisplay",we(r.nodeName)))):(o=G(r),"none"===n&&o||U.set(r,"olddisplay",o?n:v.css(r,"display"))));for(a=0;a<s;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?i[a]||"":"none"));return e}function He(e,t,n,r,o){return new He.prototype.init(e,t,n,r,o)}v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=ke(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,i,a,c=v.camelCase(t),l=e.style;if(t=v.cssProps[c]||(v.cssProps[c]=Ie(l,c)),a=v.cssHooks[t]||v.cssHooks[c],void 0===n)return a&&"get"in a&&void 0!==(o=a.get(e,!1,r))?o:l[t];i=Object(s["a"])(n),"string"===i&&(o=Ee.exec(n))&&(n=(o[1]+1)*o[2]+parseFloat(v.css(e,t)),i="number"),null!=n&&n===n&&("number"!==i||v.cssNumber[c]||(n+="px"),f.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(l[t]=n))}},css:function(e,t,n,r){var o,i,a,s=v.camelCase(t);return t=v.cssProps[s]||(v.cssProps[s]=Ie(e.style,s)),a=v.cssHooks[t]||v.cssHooks[s],a&&"get"in a&&(o=a.get(e,!0,n)),void 0===o&&(o=ke(e,t,r)),"normal"===o&&t in je&&(o=je[t]),""===n||n?(i=parseFloat(o),!0===n||v.isNumeric(i)?i||0:o):o}}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return Pe.test(v.css(e,"display"))&&0===e.offsetWidth?v.swap(e,Oe,function(){return Le(e,t,r)}):Le(e,t,r)},set:function(e,n,r){var o=r&&xe(e);return Ae(e,n,r?Ne(e,t,r,"border-box"===v.css(e,"boxSizing",!1,o),o):0)}}}),v.cssHooks.marginRight=Re(f.reliableMarginRight,function(e,t){if(t)return v.swap(e,{display:"inline-block"},ke,[e,"marginRight"])}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){for(var r=0,o={},i="string"===typeof n?n.split(" "):[n];r<4;r++)o[e+$[r]+t]=i[r]||i[r-2]||i[0];return o}},_e.test(e)||(v.cssHooks[e+t].set=Ae)}),v.fn.extend({css:function(e,t){return F(this,function(e,t,n){var r,o,i={},a=0;if(v.isArray(t)){for(r=xe(e),o=t.length;a<o;a++)i[t[a]]=v.css(e,t[a],!1,r);return i}return void 0!==n?v.style(e,t,n):v.css(e,t)},e,t,arguments.length>1)},show:function(){return Fe(this,!0)},hide:function(){return Fe(this)},toggle:function(e){return"boolean"===typeof e?e?this.show():this.hide():this.each(function(){G(this)?v(this).show():v(this).hide()})}}),v.Tween=He,He.prototype={constructor:He,init:function(e,t,n,r,o,i){this.elem=e,this.prop=n,this.easing=o||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=i||(v.cssNumber[n]?"":"px")},cur:function(){var e=He.propHooks[this.prop];return e&&e.get?e.get(this):He.propHooks._default.get(this)},run:function(e){var t,n=He.propHooks[this.prop];return this.options.duration?this.pos=t=v.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):He.propHooks._default.set(this),this}},He.prototype.init.prototype=He.prototype,He.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=v.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){v.fx.step[e.prop]?v.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[v.cssProps[e.prop]]||v.cssHooks[e.prop])?v.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},He.propHooks.scrollTop=He.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},v.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},v.fx=He.prototype.init,v.fx.step={};var Ue,Ve,qe=/^(?:toggle|show|hide)$/,Be=new RegExp("^(?:([+-])=|)("+z+")([a-z%]*)$","i"),We=/queueHooks$/,ze=[Ke],$e={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),o=Be.exec(t),i=o&&o[3]||(v.cssNumber[e]?"":"px"),a=(v.cssNumber[e]||"px"!==i&&+r)&&Be.exec(v.css(n.elem,e)),s=1,c=20;if(a&&a[3]!==i){i=i||a[3],o=o||[],a=+r||1;do{s=s||".5",a/=s,v.style(n.elem,e,a+i)}while(s!==(s=n.cur()/r)&&1!==s&&--c)}return o&&(a=n.start=+a||+r||0,n.unit=i,n.end=o[1]?a+(o[1]+1)*o[2]:+o[2]),n}]};function Ge(){return setTimeout(function(){Ue=void 0}),Ue=v.now()}function Je(e,t){var n,r=0,o={height:e};for(t=t?1:0;r<4;r+=2-t)n=$[r],o["margin"+n]=o["padding"+n]=e;return t&&(o.opacity=o.width=e),o}function Xe(e,t,n){for(var r,o=($e[t]||[]).concat($e["*"]),i=0,a=o.length;i<a;i++)if(r=o[i].call(n,t,e))return r}function Ke(e,t,n){var r,o,i,a,s,c,l,u,d=this,p={},f=e.style,h=e.nodeType&&G(e),m=U.get(e,"fxshow");for(r in n.queue||(s=v._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,c=s.empty.fire,s.empty.fire=function(){s.unqueued||c()}),s.unqueued++,d.always(function(){d.always(function(){s.unqueued--,v.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],l=v.css(e,"display"),u="none"===l?U.get(e,"olddisplay")||we(e.nodeName):l,"inline"===u&&"none"===v.css(e,"float")&&(f.display="inline-block")),n.overflow&&(f.overflow="hidden",d.always(function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]})),t)if(o=t[r],qe.exec(o)){if(delete t[r],i=i||"toggle"===o,o===(h?"hide":"show")){if("show"!==o||!m||void 0===m[r])continue;h=!0}p[r]=m&&m[r]||v.style(e,r)}else l=void 0;if(v.isEmptyObject(p))"inline"===("none"===l?we(e.nodeName):l)&&(f.display=l);else for(r in m?"hidden"in m&&(h=m.hidden):m=U.access(e,"fxshow",{}),i&&(m.hidden=!h),h?v(e).show():d.done(function(){v(e).hide()}),d.done(function(){var t;for(t in U.remove(e,"fxshow"),p)v.style(e,t,p[t])}),p)a=Xe(h?m[r]:0,r,d),r in m||(m[r]=a.start,h&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}function Ye(e,t){var n,r,o,i,a;for(n in e)if(r=v.camelCase(n),o=t[r],i=e[n],v.isArray(i)&&(o=i[1],i=e[n]=i[0]),n!==r&&(e[r]=i,delete e[n]),a=v.cssHooks[r],a&&"expand"in a)for(n in i=a.expand(i),delete e[r],i)n in e||(e[n]=i[n],t[n]=o);else t[r]=o}function Qe(e,t,n){var r,o,i=0,a=ze.length,s=v.Deferred().always(function(){delete c.elem}),c=function(){if(o)return!1;for(var t=Ue||Ge(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,i=1-r,a=0,c=l.tweens.length;a<c;a++)l.tweens[a].run(i);return s.notifyWith(e,[l,i,n]),i<1&&c?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:v.extend({},t),opts:v.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Ue||Ge(),duration:n.duration,tweens:[],createTween:function(t,n){var r=v.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(o)return this;for(o=!0;n<r;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),u=l.props;for(Ye(u,l.opts.specialEasing);i<a;i++)if(r=ze[i].call(l,e,u,l.opts),r)return r;return v.map(u,Xe,l),v.isFunction(l.opts.start)&&l.opts.start.call(e,l),v.fx.timer(v.extend(c,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}v.Animation=v.extend(Qe,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,o=e.length;r<o;r++)n=e[r],$e[n]=$e[n]||[],$e[n].unshift(t)},prefilter:function(e,t){t?ze.unshift(e):ze.push(e)}}),v.speed=function(e,t,n){var r=e&&"object"===Object(s["a"])(e)?v.extend({},e):{complete:n||!n&&t||v.isFunction(e)&&e,duration:e,easing:n&&t||t&&!v.isFunction(t)&&t};return r.duration=v.fx.off?0:"number"===typeof r.duration?r.duration:r.duration in v.fx.speeds?v.fx.speeds[r.duration]:v.fx.speeds._default,null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){v.isFunction(r.old)&&r.old.call(this),r.queue&&v.dequeue(this,r.queue)},r},v.fn.extend({fadeTo:function(e,t,n,r){return this.filter(G).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var o=v.isEmptyObject(e),i=v.speed(t,n,r),a=function(){var t=Qe(this,v.extend({},e),i);(o||U.get(this,"finish"))&&t.stop(!0)};return a.finish=a,o||!1===i.queue?this.each(a):this.queue(i.queue,a)},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&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,o=null!=e&&e+"queueHooks",i=v.timers,a=U.get(this);if(o)a[o]&&a[o].stop&&r(a[o]);else for(o in a)a[o]&&a[o].stop&&We.test(o)&&r(a[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||v.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=U.get(this),r=n[e+"queue"],o=n[e+"queueHooks"],i=v.timers,a=r?r.length:0;for(n.finish=!0,v.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<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),v.each(["toggle","show","hide"],function(e,t){var n=v.fn[t];v.fn[t]=function(e,r,o){return null==e||"boolean"===typeof e?n.apply(this,arguments):this.animate(Je(t,!0),e,r,o)}}),v.each({slideDown:Je("show"),slideUp:Je("hide"),slideToggle:Je("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){v.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),v.timers=[],v.fx.tick=function(){var e,t=0,n=v.timers;for(Ue=v.now();t<n.length;t++)e=n[t],e()||n[t]!==e||n.splice(t--,1);n.length||v.fx.stop(),Ue=void 0},v.fx.timer=function(e){v.timers.push(e),e()?v.fx.start():v.timers.pop()},v.fx.interval=13,v.fx.start=function(){Ve||(Ve=setInterval(v.fx.tick,v.fx.interval))},v.fx.stop=function(){clearInterval(Ve),Ve=null},v.fx.speeds={slow:600,fast:200,_default:400},v.fn.delay=function(e,t){return e=v.fx&&v.fx.speeds[e]||e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},function(){var e=h.createElement("input"),t=h.createElement("select"),n=t.appendChild(h.createElement("option"));e.type="checkbox",f.checkOn=""!==e.value,f.optSelected=n.selected,t.disabled=!0,f.optDisabled=!n.disabled,e=h.createElement("input"),e.value="t",e.type="radio",f.radioValue="t"===e.value}();var Ze,et,tt=v.expr.attrHandle;v.fn.extend({attr:function(e,t){return F(this,v.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})}}),v.extend({attr:function(e,t,n){var r,o,i=e.nodeType;if(e&&3!==i&&8!==i&&2!==i)return Object(s["a"])(e.getAttribute)===X?v.prop(e,t,n):(1===i&&v.isXMLDoc(e)||(t=t.toLowerCase(),r=v.attrHooks[t]||(v.expr.match.bool.test(t)?et:Ze)),void 0===n?r&&"get"in r&&null!==(o=r.get(e,t))?o:(o=v.find.attr(e,t),null==o?void 0:o):null!==n?r&&"set"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+""),n):void v.removeAttr(e,t))},removeAttr:function(e,t){var n,r,o=0,i=t&&t.match(I);if(i&&1===e.nodeType)while(n=i[o++])r=v.propFix[n]||n,v.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!f.radioValue&&"radio"===t&&v.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}}}),et={set:function(e,t,n){return!1===t?v.removeAttr(e,n):e.setAttribute(n,n),n}},v.each(v.expr.match.bool.source.match(/\w+/g),function(e,t){var n=tt[t]||v.find.attr;tt[t]=function(e,t,r){var o,i;return r||(i=tt[t],tt[t]=o,o=null!=n(e,t,r)?t.toLowerCase():null,tt[t]=i),o}});var nt=/^(?:input|select|textarea|button)$/i;v.fn.extend({prop:function(e,t){return F(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[v.propFix[e]||e]})}}),v.extend({propFix:{for:"htmlFor",class:"className"},prop:function(e,t,n){var r,o,i,a=e.nodeType;if(e&&3!==a&&8!==a&&2!==a)return i=1!==a||!v.isXMLDoc(e),i&&(t=v.propFix[t]||t,o=v.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){return e.hasAttribute("tabindex")||nt.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),f.optSelected||(v.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),v.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){v.propFix[this.toLowerCase()]=this});var rt=/[\t\r\n\f]/g;v.fn.extend({addClass:function(e){var t,n,r,o,i,a,s="string"===typeof e&&e,c=0,l=this.length;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(s)for(t=(e||"").match(I)||[];c<l;c++)if(n=this[c],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(rt," "):" "),r){i=0;while(o=t[i++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");a=v.trim(r),n.className!==a&&(n.className=a)}return this},removeClass:function(e){var t,n,r,o,i,a,s=0===arguments.length||"string"===typeof e&&e,c=0,l=this.length;if(v.isFunction(e))return this.each(function(t){v(this).removeClass(e.call(this,t,this.className))});if(s)for(t=(e||"").match(I)||[];c<l;c++)if(n=this[c],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(rt," "):""),r){i=0;while(o=t[i++])while(r.indexOf(" "+o+" ")>=0)r=r.replace(" "+o+" "," ");a=e?v.trim(r):"",n.className!==a&&(n.className=a)}return this},toggleClass:function(e,t){var n=Object(s["a"])(e);return"boolean"===typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var t,r=0,o=v(this),i=e.match(I)||[];while(t=i[r++])o.hasClass(t)?o.removeClass(t):o.addClass(t)}else n!==X&&"boolean"!==n||(this.className&&U.set(this,"__className__",this.className),this.className=this.className||!1===e?"":U.get(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;n<r;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(rt," ").indexOf(t)>=0)return!0;return!1}});var ot=/\r/g;v.fn.extend({val:function(e){var t,n,r,o=this[0];return arguments.length?(r=v.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=r?e.call(this,n,v(this).val()):e,null==o?o="":"number"===typeof o?o+="":v.isArray(o)&&(o=v.map(o,function(e){return null==e?"":e+""})),t=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,o,"value")||(this.value=o))})):o?(t=v.valHooks[o.type]||v.valHooks[o.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(o,"value"))?n:(n=o.value,"string"===typeof n?n.replace(ot,""):null==n?"":n)):void 0}}),v.extend({valHooks:{option:{get:function(e){var t=v.find.attr(e,"value");return null!=t?t:v.trim(v.text(e))}},select:{get:function(e){for(var t,n,r=e.options,o=e.selectedIndex,i="select-one"===e.type||o<0,a=i?null:[],s=i?o+1:r.length,c=o<0?s:i?o:0;c<s;c++)if(n=r[c],(n.selected||c===o)&&(f.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!v.nodeName(n.parentNode,"optgroup"))){if(t=v(n).val(),i)return t;a.push(t)}return a},set:function(e,t){var n,r,o=e.options,i=v.makeArray(t),a=o.length;while(a--)r=o[a],(r.selected=v.inArray(r.value,i)>=0)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),v.each(["radio","checkbox"],function(){v.valHooks[this]={set:function(e,t){if(v.isArray(t))return e.checked=v.inArray(v(e).val(),t)>=0}},f.checkOn||(v.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),v.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){v.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),v.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},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)}});var it=v.now(),at=/\?/;v.parseJSON=function(e){return JSON.parse(e+"")},v.parseXML=function(e){var t,n;if(!e||"string"!==typeof e)return null;try{n=new DOMParser,t=n.parseFromString(e,"text/xml")}catch(r){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||v.error("Invalid XML: "+e),t};var st=/#.*$/,ct=/([?&])_=[^&]*/,lt=/^(.*?):[ \t]*([^\r\n]*)$/gm,ut=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,dt=/^(?:GET|HEAD)$/,pt=/^\/\//,ft=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,ht={},mt={},vt="*/".concat("*"),gt=e.location.href,yt=ft.exec(gt.toLowerCase())||[];function bt(e){return function(t,n){"string"!==typeof t&&(n=t,t="*");var r,o=0,i=t.toLowerCase().match(I)||[];if(v.isFunction(n))while(r=i[o++])"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Ct(e,t,n,r){var o={},i=e===mt;function a(s){var c;return o[s]=!0,v.each(e[s]||[],function(e,s){var l=s(t,n,r);return"string"!==typeof l||i||o[l]?i?!(c=l):void 0:(t.dataTypes.unshift(l),a(l),!1)}),c}return a(t.dataTypes[0])||!o["*"]&&a("*")}function St(e,t){var n,r,o=v.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((o[n]?e:r||(r={}))[n]=t[n]);return r&&v.extend(!0,e,r),e}function wt(e,t,n){var r,o,i,a,s=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 s)if(s[o]&&s[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}a||(a=o)}i=i||a}if(i)return i!==c[0]&&c.unshift(i),n[i]}function _t(e,t,n,r){var o,i,a,s,c,l={},u=e.dataTypes.slice();if(u[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];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(a=l[c+" "+i]||l["* "+i],!a)for(o in l)if(s=o.split(" "),s[1]===i&&(a=l[c+" "+s[0]]||l["* "+s[0]],a)){!0===a?a=l[o]:!0!==l[o]&&(i=s[0],u.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(d){return{state:"parsererror",error:a?d:"No conversion from "+c+" to "+i}}}return{state:"success",data:t}}v.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:gt,type:"GET",isLocal:ut.test(yt[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":vt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?St(St(e,v.ajaxSettings),t):St(v.ajaxSettings,e)},ajaxPrefilter:bt(ht),ajaxTransport:bt(mt),ajax:function(e,t){"object"===Object(s["a"])(e)&&(t=e,e=void 0),t=t||{};var n,r,o,i,a,c,l,u,d=v.ajaxSetup({},t),p=d.context||d,f=d.context&&(p.nodeType||p.jquery)?v(p):v.event,h=v.Deferred(),m=v.Callbacks("once memory"),g=d.statusCode||{},y={},b={},C=0,S="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(2===C){if(!i){i={};while(t=lt.exec(o))i[t[1].toLowerCase()]=t[2]}t=i[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===C?o:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return C||(e=b[n]=b[n]||e,y[e]=t),this},overrideMimeType:function(e){return C||(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(C<2)for(t in e)g[t]=[g[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||S;return n&&n.abort(t),_(0,t),this}};if(h.promise(w).complete=m.add,w.success=w.done,w.error=w.fail,d.url=((e||d.url||gt)+"").replace(st,"").replace(pt,yt[1]+"//"),d.type=t.method||t.type||d.method||d.type,d.dataTypes=v.trim(d.dataType||"*").toLowerCase().match(I)||[""],null==d.crossDomain&&(c=ft.exec(d.url.toLowerCase()),d.crossDomain=!(!c||c[1]===yt[1]&&c[2]===yt[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(yt[3]||("http:"===yt[1]?"80":"443")))),d.data&&d.processData&&"string"!==typeof d.data&&(d.data=v.param(d.data,d.traditional)),Ct(ht,d,t,w),2===C)return w;for(u in l=v.event&&d.global,l&&0===v.active++&&v.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!dt.test(d.type),r=d.url,d.hasContent||(d.data&&(r=d.url+=(at.test(r)?"&":"?")+d.data,delete d.data),!1===d.cache&&(d.url=ct.test(r)?r.replace(ct,"$1_="+it++):r+(at.test(r)?"&":"?")+"_="+it++)),d.ifModified&&(v.lastModified[r]&&w.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&w.setRequestHeader("If-None-Match",v.etag[r])),(d.data&&d.hasContent&&!1!==d.contentType||t.contentType)&&w.setRequestHeader("Content-Type",d.contentType),w.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+vt+"; q=0.01":""):d.accepts["*"]),d.headers)w.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(!1===d.beforeSend.call(p,w,d)||2===C))return w.abort();for(u in S="abort",{success:1,error:1,complete:1})w[u](d[u]);if(n=Ct(mt,d,t,w),n){w.readyState=1,l&&f.trigger("ajaxSend",[w,d]),d.async&&d.timeout>0&&(a=setTimeout(function(){w.abort("timeout")},d.timeout));try{C=1,n.send(y,_)}catch(T){if(!(C<2))throw T;_(-1,T)}}else _(-1,"No Transport");function _(e,t,i,s){var c,u,y,b,S,_=t;2!==C&&(C=2,a&&clearTimeout(a),n=void 0,o=s||"",w.readyState=e>0?4:0,c=e>=200&&e<300||304===e,i&&(b=wt(d,w,i)),b=_t(d,b,w,c),c?(d.ifModified&&(S=w.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=w.getResponseHeader("etag"),S&&(v.etag[r]=S)),204===e||"HEAD"===d.type?_="nocontent":304===e?_="notmodified":(_=b.state,u=b.data,y=b.error,c=!y)):(y=_,!e&&_||(_="error",e<0&&(e=0))),w.status=e,w.statusText=(t||_)+"",c?h.resolveWith(p,[u,_,w]):h.rejectWith(p,[w,_,y]),w.statusCode(g),g=void 0,l&&f.trigger(c?"ajaxSuccess":"ajaxError",[w,d,c?u:y]),m.fireWith(p,[w,_]),l&&(f.trigger("ajaxComplete",[w,d]),--v.active||v.event.trigger("ajaxStop")))}return w},getJSON:function(e,t,n){return v.get(e,t,n,"json")},getScript:function(e,t){return v.get(e,void 0,t,"script")}}),v.each(["get","post"],function(e,t){v[t]=function(e,n,r,o){return v.isFunction(n)&&(o=o||r,r=n,n=void 0),v.ajax({url:e,type:t,dataType:o,data:n,success:r})}}),v._evalUrl=function(e){return v.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},v.fn.extend({wrapAll:function(e){var t;return v.isFunction(e)?this.each(function(t){v(this).wrapAll(e.call(this,t))}):(this[0]&&(t=v(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 v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()}}),v.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)};var Tt=/%20/g,xt=/\[\]$/,kt=/\r?\n/g,Rt=/^(?:submit|button|image|reset|file)$/i,Pt=/^(?:input|select|textarea|keygen)/i;function Dt(e,t,n,r){var o;if(v.isArray(t))v.each(t,function(t,o){n||xt.test(e)?r(e,o):Dt(e+"["+("object"===Object(s["a"])(o)?t:"")+"]",o,n,r)});else if(n||"object"!==v.type(t))r(e,t);else for(o in t)Dt(e+"["+o+"]",t[o],n,r)}v.param=function(e,t){var n,r=[],o=function(e,t){t=v.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=v.ajaxSettings&&v.ajaxSettings.traditional),v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){o(this.name,this.value)});else for(n in e)Dt(n,e[n],t,o);return r.join("&").replace(Tt,"+")},v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=v.prop(this,"elements");return e?v.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!v(this).is(":disabled")&&Pt.test(this.nodeName)&&!Rt.test(e)&&(this.checked||!J.test(e))}).map(function(e,t){var n=v(this).val();return null==n?null:v.isArray(n)?v.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}}),v.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var Et=0,Ot={},jt={0:200,1223:204},Mt=v.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in Ot)Ot[e]()}),f.cors=!!Mt&&"withCredentials"in Mt,f.ajax=Mt=!!Mt,v.ajaxTransport(function(e){var t;if(f.cors||Mt&&!e.crossDomain)return{send:function(n,r){var o,i=e.xhr(),a=++Et;if(i.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(o in e.xhrFields)i[o]=e.xhrFields[o];for(o in e.mimeType&&i.overrideMimeType&&i.overrideMimeType(e.mimeType),e.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest"),n)i.setRequestHeader(o,n[o]);t=function(e){return function(){t&&(delete Ot[a],t=i.onload=i.onerror=null,"abort"===e?i.abort():"error"===e?r(i.status,i.statusText):r(jt[i.status]||i.status,i.statusText,"string"===typeof i.responseText?{text:i.responseText}:void 0,i.getAllResponseHeaders()))}},i.onload=t(),i.onerror=t("error"),t=Ot[a]=t("abort");try{i.send(e.hasContent&&e.data||null)}catch(s){if(t)throw s}},abort:function(){t&&t()}}}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),v.ajaxTransport("script",function(e){var t,n;if(e.crossDomain)return{send:function(r,o){t=v("<script>").prop({async:!0,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)}),h.head.appendChild(t[0])},abort:function(){n&&n()}}});var It=[],At=/(=)\?(?=&|$)|\?\?/;v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=It.pop()||v.expando+"_"+it++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(t,n,r){var o,i,a,s=!1!==t.jsonp&&(At.test(t.url)?"url":"string"===typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&At.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return o=t.jsonpCallback=v.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(At,"$1"+o):!1!==t.jsonp&&(t.url+=(at.test(t.url)?"&":"?")+t.jsonp+"="+o),t.converters["script json"]=function(){return a||v.error(o+" was not called"),a[0]},t.dataTypes[0]="json",i=e[o],e[o]=function(){a=arguments},r.always(function(){e[o]=i,t[o]&&(t.jsonpCallback=n.jsonpCallback,It.push(o)),a&&v.isFunction(i)&&i(a[0]),a=i=void 0}),"script"}),v.parseHTML=function(e,t,n){if(!e||"string"!==typeof e)return null;"boolean"===typeof t&&(n=t,t=!1),t=t||h;var r=T.exec(e),o=!n&&[];return r?[t.createElement(r[1])]:(r=v.buildFragment([e],t,o),o&&o.length&&v(o).remove(),v.merge([],r.childNodes))};var Nt=v.fn.load;v.fn.load=function(e,t,n){if("string"!==typeof e&&Nt)return Nt.apply(this,arguments);var r,o,i,a=this,c=e.indexOf(" ");return c>=0&&(r=v.trim(e.slice(c)),e=e.slice(0,c)),v.isFunction(t)?(n=t,t=void 0):t&&"object"===Object(s["a"])(t)&&(o="POST"),a.length>0&&v.ajax({url:e,type:o,dataType:"html",data:t}).done(function(e){i=arguments,a.html(r?v("<div>").append(v.parseHTML(e)).find(r):e)}).complete(n&&function(e,t){a.each(n,i||[e.responseText,t,e])}),this},v.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.expr.filters.animated=function(e){return v.grep(v.timers,function(t){return e===t.elem}).length};var Lt=e.document.documentElement;function Ft(e){return v.isWindow(e)?e:9===e.nodeType&&e.defaultView}return v.offset={setOffset:function(e,t,n){var r,o,i,a,s,c,l,u=v.css(e,"position"),d=v(e),p={};"static"===u&&(e.style.position="relative"),s=d.offset(),i=v.css(e,"top"),c=v.css(e,"left"),l=("absolute"===u||"fixed"===u)&&(i+c).indexOf("auto")>-1,l?(r=d.position(),a=r.top,o=r.left):(a=parseFloat(i)||0,o=parseFloat(c)||0),v.isFunction(t)&&(t=t.call(e,n,s)),null!=t.top&&(p.top=t.top-s.top+a),null!=t.left&&(p.left=t.left-s.left+o),"using"in t?t.using.call(e,p):d.css(p)}},v.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){v.offset.setOffset(this,e,t)});var t,n,r=this[0],o={top:0,left:0},i=r&&r.ownerDocument;return i?(t=i.documentElement,v.contains(t,r)?(Object(s["a"])(r.getBoundingClientRect)!==X&&(o=r.getBoundingClientRect()),n=Ft(i),{top:o.top+n.pageYOffset-t.clientTop,left:o.left+n.pageXOffset-t.clientLeft}):o):void 0},position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===v.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),v.nodeName(e[0],"html")||(r=e.offset()),r.top+=v.css(e[0],"borderTopWidth",!0),r.left+=v.css(e[0],"borderLeftWidth",!0)),{top:t.top-r.top-v.css(n,"marginTop",!0),left:t.left-r.left-v.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||Lt;while(e&&!v.nodeName(e,"html")&&"static"===v.css(e,"position"))e=e.offsetParent;return e||Lt})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,n){var r="pageYOffset"===n;v.fn[t]=function(o){return F(this,function(t,o,i){var a=Ft(t);if(void 0===i)return a?a[n]:t[o];a?a.scrollTo(r?e.pageXOffset:i,r?i:e.pageYOffset):t[o]=i},t,o,arguments.length,null)}}),v.each(["top","left"],function(e,t){v.cssHooks[t]=Re(f.pixelPosition,function(e,n){if(n)return n=ke(e,t),Te.test(n)?v(e).position()[t]+"px":n})}),v.each({Height:"height",Width:"width"},function(e,t){v.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){v.fn[r]=function(r,o){var i=arguments.length&&(n||"boolean"!==typeof r),a=n||(!0===r||!0===o?"margin":"border");return F(this,function(t,n,r){var o;return v.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===r?v.css(t,n,a):v.style(t,n,r,a)},t,i?r:void 0,i,null)}})}),v.fn.size=function(){return this.length},v.fn.andSelf=v.fn.addBack,"function"===typeof define&&n("3c35")&&define("jquery",[],function(){return v}),v.noConflict=function(t){return t&&e.jQuery===v&&(i=_TRjQuery),v},Object(s["a"])(t)===X&&(i=v),v}),function(e){function t(e,t,r){return n(e,0,-1,t,r)}function n(e,t,n,r,o){for(var i=-1!=n?n:e.length,a=t;a<i;++a)if(0===e[a].indexOf(r)&&(!o||-1!==e[a].toLowerCase().indexOf(o.toLowerCase())))return a;return null}function r(e){var t=new RegExp("a=rtpmap:(\\d+) \\w+\\/\\d+"),n=e.match(t);return n&&2==n.length?n[1]:null}function o(){}function i(){return!0}function a(e,t){console.log("There has been a problem retrieving the streams - did you allow access? Check Device Resolution",t),l(e,"onError",t)}function s(e,t){console.log("Stream Success"),l(e,"onStream",t)}function c(e,t){e.mediaData.candidate=t,e.mediaData.candidateList.push(e.mediaData.candidate),l(e,"onICE")}function l(e,t,n){t in e.options.callbacks&&e.options.callbacks[t](e,n)}function u(e,t){console.log("ICE Complete"),l(e,"onICEComplete")}function d(e,t){console.error("Channel Error",t),l(e,"onError",t)}function p(e,t){e.mediaData.SDP=e.stereoHack(t.sdp),e.mediaData.SDP=e.candidateHack(e.mediaData.SDP),console.log("ICE SDP"),l(e,"onICESDP")}function f(e,t){"undefined"!==typeof e.srcObject?e.srcObject=t:console.error("Error attaching stream to element.")}function h(e,t){if(e.options.useVideo){e.options.useVideo.style.display="block";var n=["iPad","iPhone","iPod"].indexOf(navigator.platform)>=0;n&&(e.options.useVideo.setAttribute("playsinline",!0),e.options.useVideo.setAttribute("controls",!0))}var r=e.options.useAudio;console.log("REMOTE STREAM",t,r),f(r,t),e.remoteStream=t}function m(e,t){e.mediaData.SDP=e.stereoHack(t.sdp),console.log("Offer SDP"),l(e,"onOfferSDP")}function v(e){var t;e.options.useMic&&"none"===e.options.useMic?(console.log("Microphone Disabled"),t=!1):e.options.videoParams&&e.options.screenShare?(console.error("SCREEN SHARE",e.options.videoParams),t=!1):(t={},e.options.audioParams&&(t=e.options.audioParams),"any"!==e.options.useMic&&(t.deviceId={exact:e.options.useMic})),e.options.useVideo&&e.options.localVideo&&b({constraints:{audio:!1,video:{deviceId:e.options.useCamera}},localVideo:e.options.localVideo,onsuccess:function(t){e.options.localVideoStream=t,console.log("local video ready")},onerror:function(e){console.error("local video error!")}});var n={},r=e.options.videoParams.vertoBestFrameRate,o=e.options.videoParams.minFrameRate||15;if(delete e.options.videoParams.vertoBestFrameRate,e.options.screenShare)if(!e.options.useCamera&&navigator.mozGetUserMedia){var i=window.confirm("Do you want to share an application window? If not you can share an entire screen.");n={width:{min:e.options.videoParams.minWidth,max:e.options.videoParams.maxWidth},height:{min:e.options.videoParams.minHeight,max:e.options.videoParams.maxHeight},mediaSource:i?"window":"screen"}}else{var a=[];e.options.useCamera&&a.push({sourceId:e.options.useCamera}),r&&(a.push({minFrameRate:r}),a.push({maxFrameRate:r})),n={mandatory:e.options.videoParams,optional:a}}else{n={width:{min:e.options.videoParams.minWidth,max:e.options.videoParams.maxWidth},height:{min:e.options.videoParams.minHeight,max:e.options.videoParams.maxHeight}};var s=e.options.useVideo;s&&e.options.useCamera&&"none"!==e.options.useCamera?("any"!==e.options.useCamera&&(n.deviceId=e.options.useCamera),r&&(n.frameRate={ideal:r,min:o,max:30})):(console.log("Camera Disabled"),n=!1,s=!1)}return{audio:t,video:n,useVideo:s}}function g(e){var t=!1,n=!1,r={},o=[{urls:["stun:stun.l.google.com:19302"]}];self.options.turnServer&&o.push(self.options.turnServer),e.iceServers&&("boolean"===typeof e.iceServers?r.iceServers=o:r.iceServers=e.iceServers),r.bundlePolicy="max-compat";var i=new window.RTCPeerConnection(r);h();var a,s=0;function c(){n=!0,t=null,e.onICEComplete&&e.onICEComplete(),"offer"==e.type?e.onICESDP(i.localDescription):!s&&e.onICESDP&&e.onICESDP(i.localDescription)}if(i.onicecandidate=function(r){n||(t||(t=setTimeout(c,1e3)),r?r.candidate&&e.onICE(r.candidate):(n=!0,t&&(clearTimeout(t),t=null),c()))},e.attachStream&&i.addStream(e.attachStream),e.attachStreams&&e.attachStream.length)for(var l=e.attachStreams,u=0;u<l.length;u++)i.addStream(l[u]);function d(){e.onOfferSDP&&i.createOffer(function(t){t.sdp=f(t.sdp),i.setLocalDescription(t),e.onOfferSDP(t)},y,e.constraints)}function p(){"answer"==e.type&&(i.setRemoteDescription(new window.RTCSessionDescription(e.offerSDP),g,y),i.createAnswer(function(t){t.sdp=f(t.sdp),i.setLocalDescription(t),e.onAnswerSDP&&e.onAnswerSDP(t)},y))}function f(e){return e}function h(){e.onChannelMessage&&m()}function m(){a=i.createDataChannel(e.channel||"RTCDataChannel",{reliable:!1}),v()}function v(){a.onmessage=function(t){e.onChannelMessage&&e.onChannelMessage(t)},a.onopen=function(){e.onChannelOpened&&e.onChannelOpened(a)},a.onclose=function(t){e.onChannelClosed&&e.onChannelClosed(t),console.warn("WebRTC DataChannel closed",t)},a.onerror=function(t){e.onChannelError&&e.onChannelError(t),console.error("WebRTC DataChannel error",t)}}function g(){}function y(t){e.onChannelError&&e.onChannelError(t),console.error("sdp error:",t)}return i.onaddstream=function(t){var n=t.stream;n.oninactive=function(){e.onRemoteStreamEnded&&e.onRemoteStreamEnded(n)},e.onRemoteStream&&e.onRemoteStream(n)},!e.onChannelMessage&&e.onChannelMessage||(d(),p()),{addAnswerSDP:function(e,t,n){i.setRemoteDescription(new window.RTCSessionDescription(e),t||g,n||y)},addICE:function(e){i.addIceCandidate(new window.RTCIceCandidate({sdpMLineIndex:e.sdpMLineIndex,candidate:e.candidate}))},peer:i,channel:a,sendData:function(e){a&&a.send(e)},stop:function(){if(i.close(),e.attachStream)if("function"==typeof e.attachStream.stop)e.attachStream.stop();else{var t=e.attachStream.getTracks(),n=!0,r=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(n=(a=s.next()).done);n=!0){var c=a.value;c.stop()}}catch(l){r=!0,o=l}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}}}}}e.FSRTC=function(t){this.options=e.extend({useVideo:null,useStereo:!1,userData:null,localVideo:null,screenShare:!1,useCamera:"any",iceServers:!1,videoParams:{},audioParams:{},callbacks:{onICEComplete:function(){},onICE:function(){},onOfferSDP:function(){}}},t),this.audioEnabled=!0,this.videoEnabled=!0,this.mediaData={SDP:null,profile:{},candidateList:[]},this.constraints={offerToReceiveAudio:"none"!==this.options.useSpeak,offerToReceiveVideo:!!this.options.useVideo},self.options.useVideo&&(self.options.useVideo.style.display="none"),o(),i()},e.FSRTC.validRes=[],e.FSRTC.prototype.useVideo=function(e,t){var n=this;e?(n.options.useVideo=e,n.options.localVideo=t,n.constraints.offerToReceiveVideo=!0):(n.options.useVideo=null,n.options.localVideo=null,n.constraints.offerToReceiveVideo=!1),n.options.useVideo&&(n.options.useVideo.style.display="none")},e.FSRTC.prototype.useStereo=function(e){var t=this;t.options.useStereo=e},e.FSRTC.prototype.stereoHack=function(e){var n=this;if(!n.options.useStereo)return e;var o,i=e.split("\r\n"),a=t(i,"a=rtpmap","opus/48000");if(!a)return e;o=r(i[a]);var s=t(i,"a=fmtp:"+o.toString());return null===s?i[a]=i[a]+"\r\na=fmtp:"+o.toString()+" stereo=1; sprop-stereo=1":i[s]=i[s].concat("; stereo=1; sprop-stereo=1"),e=i.join("\r\n"),e},e.FSRTC.prototype.candidateHack=function(e){var t=this;if(!t.options.browserIP)return e;var n=e.split("\r\n");return n.forEach(function(e,r){0==e.indexOf("a=candidate:")&&-1!==e.indexOf(".local ")&&(n[r]=n[r].replace(/\w{8}(-\w{4}){3}-\w{12}\.local/,t.options.browserIP))}),e=n.join("\r\n"),e},e.FSRTC.prototype.answer=function(e,t,n){this.peer.addAnswerSDP({type:"answer",sdp:e},t,n)},e.FSRTC.prototype.stopPeer=function(){self.peer&&(console.log("stopping peer"),self.peer.stop())},e.FSRTC.prototype.stop=function(){var e=this;if(e.options.useVideo&&(e.options.useVideo.style.display="none",e.options.useVideo["src"]=""),e.localStream){if("function"==typeof e.localStream.stop)e.localStream.stop();else if(e.localStream.active){var t=e.localStream.getTracks();console.log(t),t.forEach(function(e,t){console.log(e),e.stop()})}e.localStream=null}if(e.options.localVideoStream)if("function"==typeof e.options.localVideoStream.stop)e.options.localVideoStream.stop();else if(e.options.localVideoStream.active){t=e.options.localVideoStream.getTracks();console.log(t),t.forEach(function(e,t){console.log(e),e.stop()})}e.peer&&(console.log("stopping peer"),e.peer.stop())},e.FSRTC.prototype.getMute=function(){var e=this;return e.audioEnabled},e.FSRTC.prototype.setMute=function(e){var t=this;if(!t.localStream)return!1;for(var n=t.localStream.getAudioTracks(),r=0,o=n.length;r<o;r++){switch(e){case"on":n[r].enabled=!0;break;case"off":n[r].enabled=!1;break;case"toggle":n[r].enabled=!n[r].enabled;default:break}t.audioEnabled=n[r].enabled}return!t.audioEnabled},e.FSRTC.prototype.getVideoMute=function(){var e=this;return e.videoEnabled},e.FSRTC.prototype.setVideoMute=function(e){var t=this;if(!t.localStream)return!1;for(var n=t.localStream.getVideoTracks(),r=0,o=n.length;r<o;r++){switch(e){case"on":n[r].enabled=!0;break;case"off":n[r].enabled=!1;break;case"toggle":n[r].enabled=!n[r].enabled;default:break}t.videoEnabled=n[r].enabled}return!t.videoEnabled},e.FSRTC.prototype.createAnswer=function(e){var t=this;function n(e){t.localStream=e,t.peer=g({type:t.type,attachStream:t.localStream,onICE:function(e){return c(t,e)},onICEComplete:function(){return u(t)},onRemoteStream:function(e){return h(t,e)},onICESDP:function(e){return p(t,e)},onChannelError:function(e){return d(t,e)},constraints:t.constraints,iceServers:t.options.iceServers,offerSDP:{type:"offer",sdp:t.remoteSDP},turnServer:t.options.turnServer}),s(t,e)}function r(e){a(t,e)}t.type="answer",t.remoteSDP=e.sdp,console.debug("inbound sdp: ",e.sdp);var o=v(t);console.log("Audio constraints",o.audio),console.log("Video constraints",o.video),!1!==o.audio?(t.options.useVideo&&t.options.localVideo&&b({constraints:{audio:!1,video:{deviceId:e.useCamera}},localVideo:t.options.localVideo,onsuccess:function(e){t.options.localVideoStream=e,console.log("local video ready")},onerror:function(e){console.error("local video error!")}}),b({constraints:{audio:o.audio,video:o.video},video:o.useVideo,onsuccess:n,onerror:r})):(console.log("没有麦克风权限,单向通话"),t.peer=g({type:t.type,onICE:function(e){return c(t,e)},onICEComplete:function(){return u(t)},onRemoteStream:function(e){return h(t,e)},onICESDP:function(e){return p(t,e)},onChannelError:function(e){return d(t,e)},constraints:t.constraints,iceServers:t.options.iceServers,offerSDP:{type:"offer",sdp:t.remoteSDP},turnServer:t.options.turnServer}))},e.FSRTC.prototype.call=function(e){i();var t=this,n=!1;function r(e){t.localStream=e,n&&(t.constraints.offerToReceiveVideo=!1,t.constraints.offerToReceiveAudio=!1,t.constraints.offerToSendAudio=!1),t.peer=g({type:t.type,attachStream:t.localStream,onICE:function(e){return c(t,e)},onICEComplete:function(){return u(t)},onRemoteStream:n?function(e){}:function(e){return h(t,e)},onOfferSDP:function(e){return m(t,e)},onICESDP:function(e){return p(t,e)},onChannelError:function(e){return d(t,e)},constraints:t.constraints,iceServers:t.options.iceServers,turnServer:t.options.turnServer}),s(t,e)}function o(e){a(t,e)}t.type="offer",t.options.videoParams&&t.options.screenShare&&(n=!0);var l=v(t);console.log("Audio constraints",l.audio),console.log("Video constraints",l.video),l.audio||l.video?b({constraints:{audio:l.audio,video:l.video},video:l.useVideo,onsuccess:r,onerror:o}):r(null)},e.FSRTC.prototype.getScreenShare=function(){var e=this;return e.screenShareEnabled},e.FSRTC.prototype.setScreenShare=function(e,t){var n,r=this;if(!r.localStream)return!1;switch(e){case"on":r.screenShareEnabled=!0;break;case"off":r.screenShareEnabled=!1;break;case"toggle":r.screenShareEnabled=!r.screenShareEnabled;break;default:break}if(console.log("【投屏】","投屏标识:",r.screenShareEnabled,",sender",t),!t)return console.log("【投屏】","投屏sender获取失败",t),r.screenShareEnabled=!1,alert("投屏调用失败"),r.screenShareEnabled;if(r.screenShareEnabled){console.log("【投屏】","开始投屏");var o=t.getParameters();o.encodings&&o.encodings.length>0&&(o.encodings[0].maxBitrate=25e5,o.encodings[0].scaleResolutionDownBy=1),console.log("【投屏】参数",o),t.setParameters(o).then(function(){navigator.mediaDevices.getDisplayMedia({video:!0}).then(function(e){var r=document.getElementById("share_video");r.srcObject=e,n=e.getVideoTracks()[0],t.replaceTrack(n)}).catch(function(e){alert("浏览器不支持投屏")})}).catch(function(e){console.error("Error adjusting encoding parameters:",e)})}else{var i=document.getElementById("share_video");i.srcObject=null,console.log("【投屏】","切回本地视频",r.localStream),n=r.localStream.getVideoTracks()[0],t.replaceTrack(n)}return r.screenShareEnabled};var y={};function b(e){var t,n=navigator;function r(n){e.localVideo&&(e.localVideo["srcObject"]=n,e.localVideo.style.display="block"),e.onsuccess&&e.onsuccess(n),t=n}return n.getMedia=n.getUserMedia,n.getMedia(e.constraints||{audio:!0,video:y},r,e.onerror||function(e){console.error(e)}),t}e.FSRTC.resSupported=function(t,n){for(var r in e.FSRTC.validRes)if(e.FSRTC.validRes[r][0]==t&&e.FSRTC.validRes[r][1]==n)return!0;return!1},e.FSRTC.bestResSupported=function(){var t=0,n=0;for(var r in e.FSRTC.validRes)e.FSRTC.validRes[r][0]>=t&&e.FSRTC.validRes[r][1]>=n&&(t=e.FSRTC.validRes[r][0],n=e.FSRTC.validRes[r][1]);return[t,n]};var C=[[160,120],[320,180],[320,240],[640,360],[640,480],[1280,720],[1920,1080]],S=0,w=0,_=function t(n,r){if(S>=C.length){var o={validRes:e.FSRTC.validRes,bestResSupported:e.FSRTC.bestResSupported()};return localStorage.setItem("res_"+n,JSON.stringify(o)),r?r(o):void 0}var i={};n&&(i.deviceId={exact:n});var a=C[S][0],s=C[S][1];S++,i={width:{exact:a},height:{exact:s}},b({constraints:{audio:0==w++,video:i},onsuccess:function(o){o.getTracks().forEach(function(e){e.stop()}),console.info(a+"x"+s+" supported."),e.FSRTC.validRes.push([a,s]),t(n,r)},onerror:function(e){console.warn(a+"x"+s+" not supported."),t(n,r)}})};e.FSRTC.getValidRes=function(t,n){var r=localStorage.getItem("res_"+t);if(r){var o=e.parseJSON(r);return o?(e.FSRTC.validRes=o.validRes,console.log("CACHED RES FOR CAM "+t,o)):console.error("INVALID CACHE"),n?n(o):null}e.FSRTC.validRes=[],S=0,_(t,n)},e.FSRTC.checkPerms=function(t,n,r){b({constraints:{audio:n,video:r},onsuccess:function(e){e.getTracks().forEach(function(e){e.stop()}),console.info("媒体参数初始化完成"),t&&setTimeout(t,100,!0)},onerror:function(o){if(r&&n)return console.error("错误,仅使用音频参数重新测试"),e.FSRTC.checkPerms(t,n,!1);console.error("媒体参数初始化错误"),t&&t(!1)}})}}(i),function(e){e.JsonRpcClient=function(t){var n=this;this.options=e.extend({ajaxUrl:null,socketUrl:null,onmessage:null,login:null,passwd:null,sessid:null,loginParams:null,userVariables:null,getSocket:function(e){return n._getSocket(e)}},t),n.ws_cnt=0,this.wsOnMessage=function(e){n._wsOnMessage(e)}},e.JsonRpcClient.prototype._ws_socket=null,e.JsonRpcClient.prototype._ws_callbacks={},e.JsonRpcClient.prototype._current_id=1,e.JsonRpcClient.prototype.speedTest=function(e,t){var n=this.options.getSocket(this.wsOnMessage);if(null!==n){this.speedCB=t,this.speedBytes=e,n.send("#SPU "+e);var r,o=e/1024,i=e%1024,a=new Array(1024).join(".");for(r=0;r<o;r++)n.send("#SPB "+a);i&&n.send("#SPB "+a),n.send("#SPE")}},e.JsonRpcClient.prototype.call=function(t,n,r,o){n||(n={}),this.options.sessid&&(n.sessid=this.options.sessid);var i={jsonrpc:"2.0",method:t,params:n,id:this._current_id++};r||(r=function(e){console.log("Success: ",e)}),o||(o=function(e){console.log("Error: ",e)});var a=this.options.getSocket(this.wsOnMessage);if(null===a){if(null===this.options.ajaxUrl)throw"$.JsonRpcClient.call used with no websocket and no http endpoint.";e.ajax({type:"POST",url:this.options.ajaxUrl,data:JSON.stringify(i),dataType:"json",cache:!1,success:function(e){"error"in e&&o(e.error,this),r(e.result,this)},error:function(t,n,r){try{var i=e.parseJSON(t.responseText);"console"in window&&console.log(i),o(i.error,this)}catch(a){o({error:t.responseText},this)}}})}else this._wsCall(a,i,r,o)},e.JsonRpcClient.prototype.notify=function(t,n){this.options.sessid&&(n.sessid=this.options.sessid);var r={jsonrpc:"2.0",method:t,params:n},o=this.options.getSocket(this.wsOnMessage);if(null===o){if(null===this.options.ajaxUrl)throw"$.JsonRpcClient.notify used with no websocket and no http endpoint.";e.ajax({type:"POST",url:this.options.ajaxUrl,data:JSON.stringify(r),dataType:"json",cache:!1})}else this._wsCall(o,r)},e.JsonRpcClient.prototype.batch=function(t,n,r){var o=new e.JsonRpcClient._batchObject(this,n,r);t(o),o._execute()},e.JsonRpcClient.prototype.socketReady=function(){return!(null===this._ws_socket||this._ws_socket.readyState>1)},e.JsonRpcClient.prototype.closeSocket=function(){var e=this;e.socketReady()&&(e._ws_socket.onclose=function(e){console.log("Closing Socket")},e._ws_socket.close())},e.JsonRpcClient.prototype.loginData=function(e){var t=this;t.options.login=e.login,t.options.passwd=e.passwd,t.options.loginParams=e.loginParams,t.options.userVariables=e.userVariables},e.JsonRpcClient.prototype.connectSocket=function(t){var n=this;return n.to&&clearTimeout(n.to),n.socketReady()||(n.authing=!1,n._ws_socket&&delete n._ws_socket,n._ws_socket=new WebSocket(n.options.socketUrl),n._ws_socket&&(n._ws_socket.onmessage=t,n._ws_socket.onclose=function(e){n.ws_sleep||(n.ws_sleep=1e3),n.options.onWSClose&&n.options.onWSClose(n),n.ws_cnt>10&&n.options.wsFallbackURL&&(n.options.socketUrl=n.options.wsFallbackURL),console.error("Websocket Lost "+n.ws_cnt+" sleep: "+n.ws_sleep+"msec"),n.to=setTimeout(function(){console.log("Attempting Reconnection...."),n.connectSocket(t)},n.ws_sleep),n.ws_cnt++,n.ws_sleep<3e3&&n.ws_cnt%10===0&&(n.ws_sleep+=1e3)},n._ws_socket.onopen=function(){var t;n.to&&clearTimeout(n.to),n.ws_sleep=1e3,n.ws_cnt=0,n.options.onWSConnect&&n.options.onWSConnect(n);while(t=e.JsonRpcClient.q.pop())n._ws_socket.send(t)})),!!n._ws_socket},e.JsonRpcClient.prototype.stopRetrying=function(){self.to&&clearTimeout(self.to)},e.JsonRpcClient.prototype._getSocket=function(e){return null!==this.options.socketUrl&&"WebSocket"in window?(this.connectSocket(e),this._ws_socket):null},e.JsonRpcClient.q=[],e.JsonRpcClient.prototype._wsCall=function(t,n,r,o){var i=JSON.stringify(n);t.readyState<1?(self=this,e.JsonRpcClient.q.push(i)):t.send(i),"id"in n&&"undefined"!==typeof r&&(this._ws_callbacks[n.id]={request:i,request_obj:n,success_cb:r,error_cb:o})},e.JsonRpcClient.prototype._wsOnMessage=function(t){var n;if("#"!=t.data[0]||"S"!=t.data[1]||"P"!=t.data[2]){try{if(n=e.parseJSON(t.data),"object"===Object(s["a"])(n)&&"jsonrpc"in n&&"2.0"===n.jsonrpc){if("result"in n&&this._ws_callbacks[n.id]){var r=this._ws_callbacks[n.id].success_cb;return delete this._ws_callbacks[n.id],void r(n.result,this)}if("error"in n&&this._ws_callbacks[n.id]){var o=this._ws_callbacks[n.id].error_cb,i=this._ws_callbacks[n.id].request;return!self.authing&&-32e3==n.error.code&&self.options.login&&self.options.passwd?(self.authing=!0,void this.call("login",{login:self.options.login,passwd:self.options.passwd,loginParams:self.options.loginParams,userVariables:self.options.userVariables},"login"==this._ws_callbacks[n.id].request_obj.method?function(e){self.authing=!1,console.log("logged in"),delete self._ws_callbacks[n.id],self.options.onWSLogin&&self.options.onWSLogin(!0,self)}:function(e){self.authing=!1,console.log("logged in, resending request id: "+n.id);var t=self.options.getSocket(self.wsOnMessage);null!==t&&t.send(i),self.options.onWSLogin&&self.options.onWSLogin(!0,self)},function(e){console.log("error logging in, request id:",n.id),delete self._ws_callbacks[n.id],o(n.error,this),self.options.onWSLogin&&self.options.onWSLogin(!1,self)})):(delete this._ws_callbacks[n.id],void o(n.error,this))}}}catch(p){return void console.log("ERROR: "+p)}if("function"===typeof this.options.onmessage){t.eventData=n,t.eventData||(t.eventData={});var a=this.options.onmessage(t);if(a&&"object"===Object(s["a"])(a)&&t.eventData.id){var c={jsonrpc:"2.0",id:t.eventData.id,result:a},l=self.options.getSocket(self.wsOnMessage);null!==l&&l.send(JSON.stringify(c))}}}else if("U"==t.data[3])this.up_dur=parseInt(t.data.substring(4));else if(this.speedCB&&"D"==t.data[3]){this.down_dur=parseInt(t.data.substring(4));var u=(8*this.speedBytes/(this.up_dur/1e3)/1024).toFixed(0),d=(8*this.speedBytes/(this.down_dur/1e3)/1024).toFixed(0);console.info("Speed Test: Up: "+u+" Down: "+d),this.speedCB(t,{upDur:this.up_dur,downDur:this.down_dur,upKPS:u,downKPS:d}),this.speedCB=null}},e.JsonRpcClient._batchObject=function(e,t,n){this._requests=[],this.jsonrpcclient=e,this.all_done_cb=t,this.error_cb="function"===typeof n?n:function(){}},e.JsonRpcClient._batchObject.prototype.call=function(e,t,n,r){t||(t={}),this.options.sessid&&(t.sessid=this.options.sessid),n||(n=function(e){console.log("Success: ",e)}),r||(r=function(e){console.log("Error: ",e)}),this._requests.push({request:{jsonrpc:"2.0",method:e,params:t,id:this.jsonrpcclient._current_id++},success_cb:n,error_cb:r})},e.JsonRpcClient._batchObject.prototype.notify=function(e,t){this.options.sessid&&(t.sessid=this.options.sessid),this._requests.push({request:{jsonrpc:"2.0",method:e,params:t}})},e.JsonRpcClient._batchObject.prototype._execute=function(){var t=this;if(0!==this._requests.length){var n,r,o,i=[],a={},s=0,c=t.jsonrpcclient.options.getSocket(t.jsonrpcclient.wsOnMessage);if(null===c){for(s=0;s<this._requests.length;s++)n=this._requests[s],i.push(n.request),"id"in n.request&&(a[n.request.id]={success_cb:n.success_cb,error_cb:n.error_cb});if(r=function(e){t._batchCb(e,a,t.all_done_cb)},null===t.jsonrpcclient.options.ajaxUrl)throw"$.JsonRpcClient.batch used with no websocket and no http endpoint.";e.ajax({url:t.jsonrpcclient.options.ajaxUrl,data:JSON.stringify(i),dataType:"json",cache:!1,type:"POST",error:function(e,n,r){t.error_cb(e,n,r)},success:r})}else{for(s=0;s<this._requests.length;s++)n=this._requests[s],r="success_cb"in n?n.success_cb:void 0,o="error_cb"in n?n.error_cb:void 0,t.jsonrpcclient._wsCall(c,n.request,r,o);"function"===typeof all_done_cb&&all_done_cb(result)}}},e.JsonRpcClient._batchObject.prototype._batchCb=function(e,t,n){for(var r=0;r<e.length;r++){var o=e[r];"error"in o?null!==o.id&&o.id in t?t[o.id].error_cb(o.error,this):"console"in window&&console.log(o):!(o.id in t)&&"console"in window?console.log(o):t[o.id].success_cb(o.result,this)}"function"===typeof n&&n(e)}}(i),function(e){var t="undefined"!==typeof window.crypto&&"undefined"!==typeof window.crypto.getRandomValues?function(){var e=new Uint16Array(8);window.crypto.getRandomValues(e);var t=function(e){var t=e.toString(16);while(t.length<4)t="0"+t;return t};return t(e[0])+t(e[1])+"-"+t(e[2])+"-"+t(e[3])+"-"+t(e[4])+"-"+t(e[5])+t(e[6])+t(e[7])}:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0,n="x"==e?t:3&t|8;return n.toString(16)})};function n(e,t){console.error("drop unauthorized channel: "+t),delete e.eventSUBS[t]}function r(e,t){for(var n in e.eventSUBS[t])e.eventSUBS[t][n].ready=!0,console.log("subscribed to channel: "+t),e.eventSUBS[t][n].readyHandler&&e.eventSUBS[t][n].readyHandler(e,t)}e.verto=function(n,r){var o=this;e.verto.saved.push(o),o.options=e.extend({login:null,passwd:null,socketUrl:null,tag:null,localTag:null,videoParams:{},audioParams:{},loginParams:{},deviceParams:{onResCheck:null},userVariables:{},iceServers:!1,ringSleep:6e3,sessid:null},n),o.options.deviceParams.useCamera&&e.FSRTC.getValidRes(o.options.deviceParams.useCamera,o.options.deviceParams.onResCheck),o.options.deviceParams.useMic||(o.options.deviceParams.useMic="any"),o.options.deviceParams.useSpeak||(o.options.deviceParams.useSpeak="any"),o.options.sessid?o.sessid=o.options.sessid:(o.sessid=localStorage.getItem("verto_session_uuid")||t(),localStorage.setItem("verto_session_uuid",o.sessid)),o.dialogs={},o.callbacks=r||{},o.eventSUBS={},o.rpcClient=new e.JsonRpcClient({login:o.options.login,passwd:o.options.passwd,socketUrl:o.options.socketUrl,wsFallbackURL:o.options.wsFallbackURL,turnServer:o.options.turnServer,loginParams:o.options.loginParams,userVariables:o.options.userVariables,sessid:o.sessid,onmessage:function(e){return o.handleMessage(e.eventData)},onWSConnect:function(e){e.call("login",{})},onWSLogin:function(e){o.callbacks.onWSLogin&&o.callbacks.onWSLogin(o,e)},onWSClose:function(e){o.callbacks.onWSClose&&o.callbacks.onWSClose(o,e),o.purge()}}),o.options.ringFile&&o.options.ringTag&&(o.ringer=e("#"+o.options.ringTag)),o.rpcClient.call("login",{})},e.verto.prototype.deviceParams=function(t){var n=this;for(var r in t)n.options.deviceParams[r]=t[r];t.useCamera&&e.FSRTC.getValidRes(n.options.deviceParams.useCamera,t?t.onResCheck:void 0)},e.verto.prototype.videoParams=function(e){var t=this;for(var n in e)t.options.videoParams[n]=e[n]},e.verto.prototype.iceServers=function(e){var t=this;t.options.iceServers=e},e.verto.prototype.loginData=function(e){var t=this;t.options.login=e.login,t.options.passwd=e.passwd,t.rpcClient.loginData(e)},e.verto.prototype.logout=function(e){var t=this;t.rpcClient.closeSocket(),t.callbacks.onWSClose&&t.callbacks.onWSClose(t,!1),t.purge()},e.verto.prototype.login=function(e){var t=this;t.logout(),t.rpcClient.call("login",{})},e.verto.prototype.message=function(e){var t=this,n=0;return e.to||(console.error("Missing To"),n++),e.body||(console.error("Missing Body"),n++),!n&&(t.sendMethod("verto.info",{msg:e}),!0)},e.verto.prototype.processReply=function(e,t,o){var i,a=this;switch(e){case"verto.subscribe":for(i in o.unauthorizedChannels)n(a,o.unauthorizedChannels[i]);for(i in o.subscribedChannels)r(a,o.subscribedChannels[i]);break;case"verto.unsubscribe":break}},e.verto.prototype.sendMethod=function(e,t){var n=this;n.rpcClient.call(e,t,function(t){n.processReply(e,!0,t)},function(t){n.processReply(e,!1,t)})};var o=1;function i(e,t,n,r){var i=r||{},a=i.local,s={eventChannel:t,userData:i.userData,handler:i.handler,ready:!1,readyHandler:i.readyHandler,serno:o++},c=!1;return e.eventSUBS[t]||(e.eventSUBS[t]=[],n.push(t),c=!0),e.eventSUBS[t].push(s),a&&(s.ready=!0,s.local=!0),!c&&e.eventSUBS[t][0].ready&&(s.ready=!0,s.readyHandler&&s.readyHandler(e,t)),{serno:s.serno,eventChannel:t}}e.verto.prototype.subscribe=function(e,t){var n=this,r=[],o=[],a=t||{};if("string"===typeof e)r.push(i(n,e,o,a));else for(var s in e)r.push(i(n,e,o,a));return o.length&&n.sendMethod("verto.subscribe",{eventChannel:1==o.length?o[0]:o,subParams:a.subParams}),r},e.verto.prototype.unsubscribe=function(e){var t,n=this;if(e){var r,o={},i=[];if("string"==typeof e)delete n.eventSUBS[e],o[e]++;else for(t in e)if("string"==typeof e[t])r=e[t],delete n.eventSUBS[r],o[r]++;else{var a=[];for(var s in r=e[t].eventChannel,n.eventSUBS[r])n.eventSUBS[r][s].serno==e[t].serno||a.push(n.eventSUBS[r][s]);n.eventSUBS[r]=a,0===n.eventSUBS[r].length&&(delete n.eventSUBS[r],o[r]++)}for(var c in o)console.log("Sending Unsubscribe for: ",c),i.push(c);i.length&&n.sendMethod("verto.unsubscribe",{eventChannel:1==i.length?i[0]:i})}else for(t in n.eventSUBS)n.eventSUBS[t]&&n.unsubscribe(n.eventSUBS[t])},e.verto.prototype.broadcast=function(e,t){var n=this,r={eventChannel:e,data:{}};for(var o in t)r.data[o]=t[o];n.sendMethod("verto.broadcast",r)},e.verto.prototype.purge=function(t){var n,r=this,o=0;for(n in r.dialogs)o||console.log("purging dialogs"),o++,r.dialogs[n].setState(e.verto.enum.state.purge);for(n in r.eventSUBS)r.eventSUBS[n]&&(console.log("purging subscription: "+n),delete r.eventSUBS[n])},e.verto.prototype.hangup=function(e){var t=this;if(e){var n=t.dialogs[e];n&&n.hangup()}else for(var r in t.dialogs)t.dialogs[r].hangup()},e.verto.prototype.newCall=function(t,n){var r=this;if(r.rpcClient.socketReady()){t["useCamera"]&&(r.options.deviceParams["useCamera"]=t["useCamera"]);var o=new e.verto.dialog(e.verto.enum.direction.outbound,this,t);return o.invite(),n&&(o.callbacks=n),o}console.error("Not Connected...")},e.verto.prototype.handleMessage=function(t){var n=this;if(t&&t.method){if(t.params.callID){var r=n.dialogs[t.params.callID];if("verto.attach"===t.method&&r&&(delete r.verto.dialogs[r.callID],r.rtc.stop(),r=null),r)switch(t.method){case"verto.bye":r.hangup(t.params);break;case"verto.answer":r.handleAnswer(t.params);break;case"verto.media":r.handleMedia(t.params);break;case"verto.display":r.handleDisplay(t.params);break;case"verto.info":r.handleInfo(t.params);break;default:console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED",r,t.method);break}else switch(t.method){case"verto.attach":t.params.attach=!0,t.params.sdp&&t.params.sdp.indexOf("m=video")>0&&(t.params.useVideo=!0),t.params.sdp&&t.params.sdp.indexOf("stereo=1")>0&&(t.params.useStereo=!0),r=new e.verto.dialog(e.verto.enum.direction.inbound,n,t.params),r.setState(e.verto.enum.state.recovering);break;case"verto.invite":t.params.sdp&&t.params.sdp.indexOf("m=video")>0&&(t.params.wantVideo=!0),t.params.sdp&&t.params.sdp.indexOf("stereo=1")>0&&(t.params.useStereo=!0),r=new e.verto.dialog(e.verto.enum.direction.inbound,n,t.params);break;default:console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED");break}return{method:t.method}}switch(t.method){case"verto.punt":n.purge(),n.logout();break;case"verto.event":var o=null,i=null;if(t.params&&(i=t.params.eventChannel),i&&(o=n.eventSUBS[i],o||(o=n.eventSUBS[i.split(".")[0]])),!o&&i&&i===n.sessid)n.callbacks.onMessage&&n.callbacks.onMessage(n,null,e.verto.enum.message.pvtEvent,t.params);else if(!o&&i&&n.dialogs[i])n.dialogs[i].sendMessage(e.verto.enum.message.pvtEvent,t.params);else if(o)for(var a in o){var s=o[a];s&&s.ready?s.handler?s.handler(n,t.params,s.userData):n.callbacks.onEvent?n.callbacks.onEvent(n,t.params,s.userData):console.log("EVENT:",t.params):console.error("invalid EVENT for "+i+" IGNORED")}else i||(i="UNDEFINED"),console.error("UNSUBBED or invalid EVENT "+i+" IGNORED");break;case"verto.info":n.callbacks.onMessage&&n.callbacks.onMessage(n,null,e.verto.enum.message.info,t.params.msg),console.debug("MESSAGE from: "+t.params.msg.from,t.params.msg.body);break;case"verto.clientReady":n.callbacks.onMessage(n,null,e.verto.enum.message.clientReady,t.params),console.debug("CLIENT READY",t.params);break;default:console.error("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED",t.method);break}}else console.error("Invalid Data",t)};var a=function(e,t){for(var n=[],r=e.length,o=0;o<r;o++)e[o]!=t&&n.push(e[o]);return n},s=function(){var e=this,t={},n=[];e.reorder=function(e){n=e;var r=t;t={};for(var o=n.length,i=0;i<o;i++){var a=n[i];r[a]&&(t[a]=r[a],delete r[a])}r=void 0},e.clear=function(){t=void 0,n=void 0,t={},n=[]},e.add=function(e,r,o){var i=!1;if(!t[e])if(void 0===o||o<0||o>=n.length)n.push(e);else{for(var a=0,s=[],c=n.length,l=0;l<c;l++)a++==o&&s.push(e),s.push(n[l]);n=void 0,n=s,s=void 0,i=!0}return t[e]=r,i},e.del=function(e){var r=!1;return t[e]?(n=a(n,e),delete t[e],r=!0):console.error("can't del nonexistant key "+e),r},e.get=function(e){return t[e]},e.order=function(){return n},e.hash=function(){return t},e.indexOf=function(e){for(var t=n.length,r=0;r<t;r++)if(n[r]==e)return r},e.arrayLen=function(){return n.length},e.asArray=function(){for(var e=[],r=n.length,o=0;o<r;o++){var i=n[o];e.push(t[i])}return e},e.each=function(e){for(var r=n.length,o=0;o<r;o++)e(n[o],t[n[o]])},e.dump=function(t){var n="";return e.each(function(e,r){n+="name: "+e+" val: "+JSON.stringify(r)+(t?"<br>":"\n")}),n}};function c(t,n){return!(n!=e.verto.enum.state.purge&&!e.verto.enum.states[t.name][n.name])}function l(t){for(var n in e.verto.audioOutDevices){var r=e.verto.audioOutDevices[n];if(r.id===t)return r.label}return t}e.verto.liveArray=function(e,t,n,r){var o=this,i=0,a=null,c=r.userObj;s.call(o),o._add=o.add,o._del=o.del,o._reorder=o.reorder,o._clear=o.clear,o.context=t,o.name=n,o.user_obj=c,o.verto=e,o.broadcast=function(t,n){e.broadcast(t,n)},o.errs=0,o.clear=function(){o._clear(),i=0,o.onChange&&o.onChange(o,{action:"clear"})},o.checkSerno=function(e){return e<0||(i>0&&e!=i+1?(o.onErr&&o.onErr(o,{lastSerno:i,serno:e}),o.errs++,console.debug(o.errs),o.errs<3&&o.bootstrap(o.user_obj),!1):(i=e,!0))},o.reorder=function(e,t){o.checkSerno(e)&&(o._reorder(t),o.onChange&&o.onChange(o,{serno:e,action:"reorder"}))},o.init=function(e,t,n,r){null!==n&&void 0!==n||(n=e),o.checkSerno(e)&&o.onChange&&o.onChange(o,{serno:e,action:"init",index:r,key:n,data:t})},o.bootObj=function(e,t){if(o.checkSerno(e)){for(var n in t)o._add(t[n][0],t[n][1]);o.onChange&&o.onChange(o,{serno:e,action:"bootObj",data:t,redraw:!0})}},o.add=function(e,t,n,r){if(null!==n&&void 0!==n||(n=e),o.checkSerno(e)){var i=o._add(n,t,r);o.onChange&&o.onChange(o,{serno:e,action:"add",index:r,key:n,data:t,redraw:i})}},o.modify=function(e,t,n,r){null!==n&&void 0!==n||(n=e),o.checkSerno(e)&&(o._add(n,t,r),o.onChange&&o.onChange(o,{serno:e,action:"modify",key:n,data:t,index:r}))},o.del=function(e,t,n){if(null!==t&&void 0!==t||(t=e),o.checkSerno(e)){(null===n||n<0||void 0===n)&&(n=o.indexOf(t));var r=o._del(t);r&&o.onChange&&o.onChange(o,{serno:e,action:"del",key:t,index:n})}};var l=function(e,t,n){var r=t.data;if(r.name==n.name)switch(r.action){case"init":n.init(r.wireSerno,r.data,r.hashKey,r.arrIndex);break;case"bootObj":n.bootObj(r.wireSerno,r.data);break;case"add":n.add(r.wireSerno,r.data,r.hashKey,r.arrIndex);break;case"modify":r.arrIndex||r.hashKey?n.modify(r.wireSerno,r.data,r.hashKey,r.arrIndex):console.error("Invalid Packet",r);break;case"del":r.arrIndex||r.hashKey?n.del(r.wireSerno,r.hashKey,r.arrIndex):console.error("Invalid Packet",r);break;case"clear":n.clear();break;case"reorder":n.reorder(r.wireSerno,r.order);break;default:n.checkSerno(r.wireSerno)&&n.onChange&&n.onChange(n,{serno:r.wireSerno,action:r.action,data:r.data});break}};o.context&&(a=o.verto.subscribe(o.context,{handler:l,userData:o,subParams:r.subParams})),o.destroy=function(){o._clear(),o.verto.unsubscribe(a)},o.sendCommand=function(e,t){var n=o;n.broadcast(n.context,{liveArray:{command:e,context:n.context,name:n.name,obj:t}})},o.bootstrap=function(e){o.sendCommand("bootstrap",e)},o.changepage=function(e){var t=o;t.clear(),t.broadcast(t.context,{liveArray:{command:"changepage",context:o.context,name:o.name,obj:e}})},o.heartbeat=function(e){var t=o,n=function(){t.heartbeat.call(t,e)};t.broadcast(t.context,{liveArray:{command:"heartbeat",context:t.context,name:t.name,obj:e}}),t.hb_pid=setTimeout(n,3e4)},o.bootstrap(o.user_obj)},e.verto.liveTable=function(t,n,r,o,i){var a,s=new e.verto.liveArray(t,n,r,{subParams:i.subParams}),c=this;function l(t){if("string"===typeof t[4]&&t[4].indexOf("{")>-1){var n=e.parseJSON(t[4]);t[4]=n.oldStatus,t[5]=null}return t}function u(e){var t=e.asArray();for(var n in t)t[n]=l(t[n]);return t}c.liveArray=s,c.dataTable=a,c.verto=t,c.destroy=function(){a&&a.fnDestroy(),s&&s.destroy(),a=null,s=null},s.onErr=function(e,t){console.error("Error: ",e,t)},s.onChange=function(e,t){var n=0,r=0;if(!a){if(!i.aoColumns){if("init"!=t.action)return;for(var c in i.aoColumns=[],t.data)i.aoColumns.push({sTitle:t.data[c]})}a=o.dataTable(i)}if(!a||"del"!=t.action&&"modify"!=t.action||(n=t.index,void 0===n&&t.key&&(n=s.indexOf(t.key)),void 0!==n)){i.onChange&&i.onChange(e,t);try{switch(t.action){case"bootObj":if(!t.data)return void console.error("missing data");a.fnClearTable(),a.fnAddData(u(e)),a.fnAdjustColumnSizing();break;case"add":if(!t.data)return void console.error("missing data");t.redraw>-1?(a.fnClearTable(),a.fnAddData(u(e))):a.fnAddData(l(t.data)),a.fnAdjustColumnSizing();break;case"modify":if(!t.data)return;a.fnUpdate(l(t.data),n),a.fnAdjustColumnSizing();break;case"del":a.fnDeleteRow(n),a.fnAdjustColumnSizing();break;case"clear":a.fnClearTable();break;case"reorder":a.fnClearTable(),a.fnAddData(u(e));break;case"hide":o.hide();break;case"show":o.show();break}}catch(d){console.error("ERROR: "+d),r++}r?(e.errs++,e.errs<3&&e.bootstrap(e.user_obj)):e.errs=0}else console.error("INVALID PACKET Missing INDEX\n",t)},s.onChange(s,{action:"init"})},e.verto.dialog=function(n,r,o){var i=this;i.params=e.extend({useVideo:r.options.useVideo,useStereo:r.options.useStereo,screenShare:!1,useCamera:!1,useMic:r.options.deviceParams.useMic,useSpeak:r.options.deviceParams.useSpeak,tag:r.options.tag,localTag:r.options.localTag,login:r.options.login,videoParams:r.options.videoParams},o),i.params.screenShare||(i.params.useCamera=r.options.deviceParams.useCamera),i.verto=r,i.direction=n,i.lastState=null,i.state=i.lastState=e.verto.enum.state.new,i.callbacks=r.callbacks,i.answered=!1,i.attach=o.attach||!1,i.screenShare=o.screenShare||!1,i.useCamera=i.params.useCamera,i.useMic=i.params.useMic,i.useSpeak=i.params.useSpeak,i.params.callID?i.callID=i.params.callID:i.callID=i.params.callID=t(),i.params.verto_h_conf_web&&"true"==i.params.verto_h_conf_web&&(i.params.tag=i.params.verto_h_conf_web_area),i.params.verto_h_video_web&&"true"==i.params.verto_h_video_web&&(i.params.tag=i.params.verto_h_video_web_area),"function"===typeof i.params.tag&&(i.params.tag=i.params.tag(i.callID)),i.params.tag&&(i.audioStream=document.getElementById(i.params.tag),i.params.useVideo&&(i.videoStream=i.audioStream)),i.params.localTag&&(i.localVideo=document.getElementById(i.params.localTag)),i.verto.dialogs[i.callID]=i;var a={};i.direction==e.verto.enum.direction.inbound?("outbound"===i.params.display_direction?(i.params.remote_caller_id_name=i.params.caller_id_name,i.params.remote_caller_id_number=i.params.caller_id_number):(i.params.remote_caller_id_name=i.params.callee_id_name,i.params.remote_caller_id_number=i.params.callee_id_number),i.params.remote_caller_id_name||(i.params.remote_caller_id_name="Nobody"),i.params.remote_caller_id_number||(i.params.remote_caller_id_number="UNKNOWN"),a.onMessage=function(e,t){console.debug(t)},a.onAnswerSDP=function(e,t){console.error("answer sdp",t)}):(i.params.remote_caller_id_name="Outbound Call",i.params.remote_caller_id_number=i.params.destination_number),a.onICESDP=function(t){console.log("RECV "+t.type+" SDP",t.mediaData.SDP),i.state!=e.verto.enum.state.requesting&&i.state!=e.verto.enum.state.answering&&i.state!=e.verto.enum.state.active?"offer"==t.type?i.state==e.verto.enum.state.active?(i.setState(e.verto.enum.state.requesting),i.sendMethod("verto.attach",{sdp:t.mediaData.SDP})):(i.setState(e.verto.enum.state.requesting),i.sendMethod("verto.invite",{sdp:t.mediaData.SDP})):(i.setState(e.verto.enum.state.answering),i.sendMethod(i.attach?"verto.attach":"verto.answer",{sdp:i.rtc.mediaData.SDP})):location.reload()},a.onICE=function(e){"offer"!=e.type||console.log("offer",e.mediaData.candidate)},a.onStream=function(e,t){i.verto.options.permissionCallback&&"function"===typeof i.verto.options.permissionCallback.onGranted&&i.verto.options.permissionCallback.onGranted(t),console.log("stream started")},a.onError=function(e){i.verto.options.permissionCallback&&"function"===typeof i.verto.options.permissionCallback.onDenied&&i.verto.options.permissionCallback.onDenied(),console.error("ERROR:",e),i.hangup({cause:"Device or Permission Error"})},i.rtc=new e.FSRTC({callbacks:a,localVideo:i.screenShare?null:i.localVideo,useVideo:i.params.useVideo?i.videoStream:null,useAudio:i.audioStream,useStereo:i.params.useStereo,videoParams:i.params.videoParams,audioParams:r.options.audioParams,iceServers:r.options.iceServers,browserIP:r.options.browserIP,screenShare:i.screenShare,useCamera:i.useCamera,useMic:i.useMic,useSpeak:i.useSpeak,turnServer:r.options.turnServer}),i.rtc.verto=i.verto,i.direction==e.verto.enum.direction.inbound&&(i.attach?i.answer():i.ring())},e.verto.dialog.prototype.invite=function(){var e=this;e.rtc.call()},e.verto.dialog.prototype.sendMethod=function(e,t){var n=this;for(var r in t.dialogParams={},n.params)"sdp"==r&&"verto.invite"!=e&&"verto.attach"!=e||t.noDialogParams&&"callID"!=r||(t.dialogParams[r]=n.params[r]);delete t.noDialogParams,n.verto.rpcClient.call(e,t,function(t){n.processReply(e,!0,t)},function(t){n.processReply(e,!1,t)})},e.verto.dialog.prototype.setAudioPlaybackDevice=function(e,t,n){var r=this,o=r.audioStream;if("undefined"!==typeof o.sinkId){var i=l(e);console.info("Dialog: "+r.callID+" Setting speaker:",o,i),o.setSinkId(e).then(function(){console.log("Dialog: "+r.callID+" Success, audio output device attached: "+e),t&&t(!0,i,n)}).catch(function(e){var o=e;"SecurityError"===e.name&&(o="Dialog: "+r.callID+" You need to use HTTPS for selecting audio output device: "+e),t&&t(!1,null,n),console.error(o)})}else console.warn("Dialog: "+r.callID+" Browser does not support output device selection."),t&&t(!1,null,n)},e.verto.dialog.prototype.setState=function(t){var n=this;if(n.state==e.verto.enum.state.ringing&&n.stopRinging(),n.state==t||!c(n.state,t))return console.error("Dialog "+n.callID+": INVALID state change from "+n.state.name+" to "+t.name),n.hangup(),!1;switch(console.log("Dialog "+n.callID+": state change from "+n.state.name+" to "+t.name),n.lastState=n.state,n.state=t,n.callbacks.onDialogState&&n.callbacks.onDialogState(this),n.state){case e.verto.enum.state.early:case e.verto.enum.state.active:var r=n.useSpeak;console.info("Using Speaker: ",r),r&&"any"!==r&&"none"!==r&&setTimeout(function(){n.setAudioPlaybackDevice(r)},500);break;case e.verto.enum.state.trying:setTimeout(function(){n.state==e.verto.enum.state.trying&&n.setState(e.verto.enum.state.hangup)},3e4);break;case e.verto.enum.state.purge:n.setState(e.verto.enum.state.destroy);break;case e.verto.enum.state.hangup:n.lastState.val>e.verto.enum.state.requesting.val&&n.lastState.val<e.verto.enum.state.hangup.val&&n.sendMethod("verto.bye",{}),n.setState(e.verto.enum.state.destroy);break;case e.verto.enum.state.destroy:"function"===typeof n.verto.options.tag&&e("#"+n.params.tag).remove(),delete n.verto.dialogs[n.callID],n.params.screenShare?n.rtc.stopPeer():n.rtc.stop();break}return!0},e.verto.dialog.prototype.processReply=function(t,n,r){var o=this;switch(t){case"verto.answer":case"verto.attach":n?o.setState(e.verto.enum.state.active):o.hangup();break;case"verto.invite":n?o.setState(e.verto.enum.state.trying):o.setState(e.verto.enum.state.destroy);break;case"verto.bye":o.hangup();break;case"verto.modify":r.holdState&&("held"==r.holdState?o.state!=e.verto.enum.state.held&&o.setState(e.verto.enum.state.held):"active"==r.holdState&&o.state!=e.verto.enum.state.active&&o.setState(e.verto.enum.state.active));break;default:break}},e.verto.dialog.prototype.hangup=function(t){var n=this;t&&(t.causeCode&&(n.causeCode=t.causeCode),t.cause&&(n.cause=t.cause)),n.cause||n.causeCode||(n.cause="NORMAL_CLEARING"),n.state.val>=e.verto.enum.state.new.val&&n.state.val<e.verto.enum.state.hangup.val?n.setState(e.verto.enum.state.hangup):n.state.val<e.verto.enum.state.destroy&&n.setState(e.verto.enum.state.destroy)},e.verto.dialog.prototype.stopRinging=function(){var e=this;e.verto.ringer&&e.verto.ringer.stop()},e.verto.dialog.prototype.indicateRing=function(){var t=this;if(t.verto.ringer){if(t.params.verto_h_autoanswer&&"true"==t.params.verto_h_autoanswer)return;t.verto.ringer.attr("src",t.verto.options.ringFile)[0].play(),setTimeout(function(){t.stopRinging(),t.state==e.verto.enum.state.ringing&&t.indicateRing()},t.verto.options.ringSleep)}},e.verto.dialog.prototype.ring=function(){var t=this;t.setState(e.verto.enum.state.ringing),t.indicateRing()},e.verto.dialog.prototype.useVideo=function(e){var t=this;t.params.useVideo=e,t.videoStream=e?t.audioStream:null,t.rtc.useVideo(t.videoStream,t.localVideo)},e.verto.dialog.prototype.setMute=function(e){var t=this;return t.rtc.setMute(e)},e.verto.dialog.prototype.getMute=function(){var e=this;return e.rtc.getMute()},e.verto.dialog.prototype.setVideoMute=function(e){var t=this;return t.rtc.setVideoMute(e)},e.verto.dialog.prototype.getVideoMute=function(){var e=this;return e.rtc.getVideoMute()},e.verto.dialog.prototype.setScreenShare=function(e,t){var n=this;return n.rtc.setScreenShare(e,t)},e.verto.dialog.prototype.getScreenShare=function(){var e=this;return e.rtc.getScreenShare()},e.verto.dialog.prototype.useStereo=function(e){var t=this;t.params.useStereo=e,t.rtc.useStereo(e)},e.verto.dialog.prototype.dtmf=function(e){var t=this;e&&t.sendMethod("verto.info",{dtmf:e})},e.verto.dialog.prototype.rtt=function(e){var t=this,n={};if(!e)return!1;n.code=e.code,n.chars=e.chars,(n.chars||n.code)&&t.sendMethod("verto.info",{txt:e,noDialogParams:!0})},e.verto.dialog.prototype.transfer=function(e,t){var n=this;e&&n.sendMethod("verto.modify",{action:"transfer",destination:e,params:t})},e.verto.dialog.prototype.replace=function(e,t){var n=this;e&&n.sendMethod("verto.modify",{action:"replace",replaceCallID:e,params:t})},e.verto.dialog.prototype.hold=function(e){var t=this;t.sendMethod("verto.modify",{action:"hold",params:e})},e.verto.dialog.prototype.unhold=function(e){var t=this;t.sendMethod("verto.modify",{action:"unhold",params:e})},e.verto.dialog.prototype.toggleHold=function(e){var t=this;t.sendMethod("verto.modify",{action:"toggleHold",params:e})},e.verto.dialog.prototype.message=function(e){var t=this,n=0;return e.from=t.params.login,e.to||(console.error("Missing To"),n++),e.body||(console.error("Missing Body"),n++),!n&&(t.sendMethod("verto.info",{msg:e}),!0)},e.verto.dialog.prototype.answer=function(e){var t=this;t.answered||(e||(e={}),e.sdp=t.params.sdp,e&&(e.useVideo&&t.useVideo(!0),t.params.callee_id_name=e.callee_id_name,t.params.callee_id_number=e.callee_id_number,e.useCamera&&(t.useCamera=e.useCamera),e.useMic&&(t.useMic=e.useMic),e.useSpeak&&(t.useSpeak=e.useSpeak)),t.rtc.createAnswer(e),t.answered=!0)},e.verto.dialog.prototype.handleAnswer=function(t){var n=this;n.gotAnswer=!0,n.state.val>=e.verto.enum.state.active.val||(n.state.val>=e.verto.enum.state.early.val?n.setState(e.verto.enum.state.active):n.gotEarly?console.log("Dialog "+n.callID+" Got answer while still establishing early media, delaying..."):(console.log("Dialog "+n.callID+" Answering Channel"),n.rtc.answer(t.sdp,function(){n.setState(e.verto.enum.state.active)},function(e){console.error(e),n.hangup()}),console.log("Dialog "+n.callID+"ANSWER SDP",t.sdp)))},e.verto.dialog.prototype.cidString=function(e){var t=this,n=t.params.remote_caller_id_name+(e?" <":" <")+t.params.remote_caller_id_number+(e?">":">");return n},e.verto.dialog.prototype.sendMessage=function(e,t){var n=this;n.callbacks.onMessage&&n.callbacks.onMessage(n.verto,n,e,t)},e.verto.dialog.prototype.handleInfo=function(t){var n=this;n.sendMessage(e.verto.enum.message.info,t)},e.verto.dialog.prototype.handleDisplay=function(t){var n=this;t.display_name&&(n.params.remote_caller_id_name=t.display_name),t.display_number&&(n.params.remote_caller_id_number=t.display_number),n.sendMessage(e.verto.enum.message.display,{})},e.verto.dialog.prototype.handleMedia=function(t){var n=this;n.state.val>=e.verto.enum.state.early.val||(n.gotEarly=!0,n.rtc.answer(t.sdp,function(){console.log("Dialog "+n.callID+"Establishing early media"),n.setState(e.verto.enum.state.early),n.gotAnswer&&(console.log("Dialog "+n.callID+"Answering Channel"),n.setState(e.verto.enum.state.active))},function(e){console.error(e),n.hangup()}),console.log("Dialog "+n.callID+"EARLY SDP",t.sdp))},e.verto.ENUM=function(e){var t=0,n={};return e.split(" ").map(function(e){n[e]={name:e,val:t++}}),Object.freeze(n)},e.verto.enum={},e.verto.enum.states=Object.freeze({new:{requesting:1,recovering:1,ringing:1,destroy:1,answering:1,hangup:1},requesting:{trying:1,hangup:1,active:1},recovering:{answering:1,hangup:1},trying:{active:1,early:1,hangup:1},ringing:{answering:1,hangup:1},answering:{active:1,hangup:1},active:{answering:1,requesting:1,hangup:1,held:1},held:{hangup:1,active:1},early:{hangup:1,active:1},hangup:{destroy:1},destroy:{},purge:{destroy:1}}),e.verto.enum.state=e.verto.ENUM("new requesting trying recovering ringing answering early active held hangup destroy purge"),e.verto.enum.direction=e.verto.ENUM("inbound outbound"),e.verto.enum.message=e.verto.ENUM("display info pvtEvent clientReady"),e.verto.enum=Object.freeze(e.verto.enum),e.verto.saved=[],e.verto.unloadJobs=[],e(window).bind("beforeunload",function(){for(var t in e.verto.unloadJobs)e.verto.unloadJobs[t]();if(e.verto.haltClosure)return e.verto.haltClosure();for(var n in e.verto.saved){var r=e.verto.saved[n];r&&(r.purge(),r.logout())}return e.verto.warnOnUnload}),e.verto.videoDevices=[],e.verto.audioInDevices=[],e.verto.audioOutDevices=[];var u=function(t){console.info("枚举设备");var n,r=[],o=[],i=[],a=0,s=0;function c(a){for(var s=0;s!==a.length;++s){var c=a[s],l="";console.log(c),console.log(c.kind+": "+c.label+" id = "+c.deviceId),"audioinput"===c.kind?(l=c.label||"microphone "+(r.length+1),r.push({id:c.deviceId,kind:"audio_in",label:l})):"audiooutput"===c.kind?(l=c.label||"speaker "+(o.length+1),o.push({id:c.deviceId,kind:"audio_out",label:l})):"videoinput"===c.kind?(l=c.label||"camera "+(i.length+1),i.push({id:c.deviceId,kind:"video",label:l})):console.log("某种其他类型的源/设备: ",c)}e.verto.videoDevices=i,e.verto.audioInDevices=r,e.verto.audioOutDevices=o,console.info("Audio IN Devices",e.verto.audioInDevices),console.info("Audio Out Devices",e.verto.audioOutDevices),console.info("Video Devices",e.verto.videoDevices),n&&n.getTracks().forEach(function(e){e.stop()}),t&&t(!0)}function l(e){console.log("设备枚举错误: ",e),t&&t(!1)}function u(e){for(var t=0;t!==e.length;++t)"audioinput"===e[t].kind?s++:"videoinput"===e[t].kind&&a++;navigator.getUserMedia({audio:s>0,video:a>0},function(e){n=e,navigator.mediaDevices.enumerateDevices().then(c).catch(l)},function(e){console.log("出现以下错误: "+e.name)})}navigator.mediaDevices.enumerateDevices().then(u).catch(l)};e.verto.refreshDevices=function(e){u(e)},e.verto.init=function(t,n){t||(t={}),t.skipPermCheck||t.skipDeviceCheck?t.skipPermCheck&&!t.skipDeviceCheck?u(n):!t.skipPermCheck&&t.skipDeviceCheck?e.FSRTC.checkPerms(function(e){n(e)},!0,!0):n(null):e.FSRTC.checkPerms(function(e){u(n)},!0,!0)},e.verto.genUUID=function(){return t()}}(i);var c=null,l={},u=null,d=null,p=null;function f(e,t,n,r,o,a,s,f,h,m,g,b){u=e,d=t,l={},p=new Proxy(s,{get:function(e,t){var n=e[t];return"function"===typeof n?function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];return console.log("Callback API Calling ".concat(String(t)," with arguments:"),r),n.apply(this,r)}:n}}),c=new i.verto({login:e,passwd:t,socketUrl:n,browserIP:r,tag:o,localTag:a,ringTag:b,ringFile:g,videoParams:{minWidth:640,minHeight:480,maxWidth:1920,maxHeight:1080,minFrameRate:15,vertoBestFrameRate:25},audioParams:{googAutoGainControl:!1,googNoiseSuppression:!1,googHighpassFilter:!1},deviceParams:{useMic:f,useSpeak:h,useCamera:m}},y),v(!1)}function h(){v(!1),c.loginData({login:u,passwd:d}),c.login()}function m(){_(),c.logout(),v(!1)}function v(e){e?(!0,p&&"function"===typeof p.onLogin&&p.onLogin()):p&&"function"===typeof p.onLogout&&p.onLogout(),e}var g,y={onMessage:function(e,t,n,r){},onDialogState:function(e){switch(l[e.callID]=e,e.state==i.verto.enum.state.ringing,e.state){case i.verto.enum.state.ringing:console.log("Ringing: "+e.cidString()),p&&"function"===typeof p.onRinging&&p.onRinging(e);break;case i.verto.enum.state.trying:console.log("Calling: "+e.cidString()),p&&"function"===typeof p.onCalling&&p.onCalling(e);break;case i.verto.enum.state.early:console.log("Early: "+e.cidString());break;case i.verto.enum.state.active:console.log("Talking to: "+e.cidString()),p&&"function"===typeof p.onAnswer&&p.onAnswer(e);break;case i.verto.enum.state.hangup:console.log("Call ended with cause: "+e.cause);break;case i.verto.enum.state.destroy:console.log("destroy"),p&&"function"===typeof p.onHangup&&p.onHangup(e),delete l[e.callID];break;case i.verto.enum.state.held:console.log("held"),p&&"function"===typeof p.onHold&&p.onHold(e);break;case i.verto.enum.state.recovering:console.log("recovering"),p&&"function"===typeof p.onRecover&&p.onRecover(e);break;default:break}},onWSLogin:function(e,t){l={},!1,t&&v(!0)},onWSClose:function(e,t){v(!1)},onEvent:function(e,t){console.debug("GOT EVENT",t)}};function b(e){l[e].hold()}function C(e){l[e].unhold()}function S(e){l[e].toggleHold()}function w(e,t){("#"===t||"*"===t||"0"===t||t>0&&t<=9)&&l[e].dtmf(t)}function _(){c.hangup(),l={}}function T(e){c.hangup(e),delete l[e]}function x(e,t){t||(t=!1),console.log("正在呼叫");var n=c.newCall({destination_number:e,caller_id_name:u,caller_id_number:u,outgoingBandwidth:"default",incomingBandwidth:"default",userVariables:{email:"test@test.com"},useVideo:t,useStereo:!1,mirrorInput:!0});l[n.callID]=n}function k(e,t){e.answer({useVideo:t,useStereo:!1})}function R(e){return l[e].getMute()}function P(e){l[e].setMute("off")}function D(e){l[e].setMute("on")}function E(e){l[e].setMute("toggle")}function O(e){return l[e].getVideoMute()}function j(e){l[e].setVideoMute("off")}function M(e){l[e].setVideoMute("on")}function I(e){l[e].setVideoMute("toggle")}function A(){var e=13107200;return new Promise(function(t,n){try{c.rpcClient.speedTest(e,function(e,n){var r=Math.ceil(n.upKPS),o=Math.ceil(n.downKPS);console.log("[带宽测试] 上行: "+r/1024+"Mbit/s, 下行: "+o/1024+"Mbit/s"),g=n,t(g)})}catch(r){g=null,n(r)}})}function N(){return L.apply(this,arguments)}function L(){return L=Object(a["a"])(regeneratorRuntime.mark(function e(){var t,n;return regeneratorRuntime.wrap(function(e){while(1)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,navigator.mediaDevices.getUserMedia({audio:!0,video:!0});case 3:return t=e.sent,e.abrupt("return",F(t));case 7:e.prev=7,e.t0=e["catch"](0),console.log(e.t0.name+": "+e.t0.message);case 10:return e.prev=10,e.next=13,navigator.mediaDevices.getUserMedia({audio:!0,video:!1});case 13:return n=e.sent,e.abrupt("return",F(n));case 17:e.prev=17,e.t1=e["catch"](10),console.log(e.t1.name+": "+e.t1.message);case 20:case"end":return e.stop()}},e,null,[[0,7],[10,17]])})),L.apply(this,arguments)}function F(e){return H.apply(this,arguments)}function H(){return H=Object(a["a"])(regeneratorRuntime.mark(function e(t){var n,r,o,i;return regeneratorRuntime.wrap(function(e){while(1)switch(e.prev=e.next){case 0:return t.getTracks().forEach(function(e){return e.stop()}),e.next=3,navigator.mediaDevices.enumerateDevices();case 3:return n=e.sent,r=[],o=[],i=[],n.forEach(function(e){"audioinput"===e.kind?r.push(e):"audiooutput"===e.kind?o.push(e):"videoinput"===e.kind&&i.push(e)}),e.abrupt("return",{audioInputDevices:r,audioOutputDevices:o,videoDevices:i});case 9:case"end":return e.stop()}},e)})),H.apply(this,arguments)}function U(e){var t=l[e].setScreenShare("on",W(e));if(t){var n=z(e);n.onnegotiationneeded=function(){n.createOffer().then(function(e){return n.setLocalDescription(e)}).then(function(){console.log("-----发送新的offer")})}}}function V(e){l[e].setScreenShare("off",W(e))}function q(e){l[e].setScreenShare("toggle",W(e))}function B(e){return l[e].getScreenShare()}function W(e){var t=z(e),n=t.getSenders();if(n&&n.length>0){var r=n.find(function(e){return"video"===e.track.kind});if(r)return r}}function z(e){var t=l[e].rtc;return t.peer.peer}function $(e){i.verto.refreshDevices(e)}function G(e,t){"function"!=typeof t&&(t=function(e){console.log(e)}),i.verto.init(e,t)}function J(){return i.verto.videoDevices}function X(){return i.verto.audioInDevices}function K(){return i.verto.audioOutDevices}var Y={bootstrap:f,rtcLogin:h,rtcLogout:m,rtcHold:b,rtcUnhold:C,rtcHoldUnhold:S,rtcDtmf:w,rtcHangupAll:_,rtcHangup:T,rtcDial:x,rtcAnswer:k,rtcGetMuteState:R,rtcMute:P,rtcUnmute:D,rtcMuteUnmute:E,rtcGetMuteVideoState:O,rtcMuteVideo:j,rtcUnmuteVideo:M,rtcMuteUnmuteVideo:I,rtcTestBandwidth:A,getMediaDevices:N,rtcStartScreenShare:U,rtcStopScreenShare:V,rtcStartStopScreenShare:q,rtcGetScreenShareState:B,init:G,refreshDevices:$,videoDevices:J,audioInDevices:X,audioOutDevices:K};new Proxy(Y,{get:function(e,t){var n=e[t];return"function"===typeof n?function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++)r[o]=arguments[o];return console.log("WebRTC API Calling ".concat(String(t)," with arguments:"),r),n.apply(this,r)}:n}});(function(t){if("object"===("undefined"===typeof exports?"undefined":Object(s["a"])(exports))&&"undefined"!==typeof e)e.exports=t();else if("function"===typeof define&&n("3c35"))define([],t);else{var o;o="undefined"!==typeof window?window:"undefined"!==typeof r?r:"undefined"!==typeof self?self:this,o.adapter=t()}})(function(){return function(){function e(t,n,r){function i(s,c){if(!n[s]){if(!t[s]){var l="function"==typeof o&&o;if(!c&&l)return o(s,!0);if(a)return a(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var d=n[s]={exports:{}};t[s][0].call(d.exports,function(e){var n=t[s][1][e];return i(n||e)},d,d.exports,e,t,n,r)}return n[s].exports}for(var a="function"==typeof o&&o,s=0;s<r.length;s++)i(r[s]);return i}return e}()({1:[function(e,t,n){var r=e("./adapter_factory.js"),o=(0,r.adapterFactory)({window:"undefined"===typeof window?void 0:window});t.exports=o},{"./adapter_factory.js":2}],2:[function(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},r(e)}Object.defineProperty(n,"__esModule",{value:!0}),n.adapterFactory=f;var o=p(e("./utils")),i=p(e("./chrome/chrome_shim")),a=p(e("./firefox/firefox_shim")),c=p(e("./safari/safari_shim")),l=p(e("./common_shim")),u=p(e("sdp"));function d(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function p(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!==typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var o={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=i?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(o,a,s):o[a]=e[a]}return o["default"]=e,n&&n.set(e,o),o}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.window,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0},r=o.log,s=o.detectBrowser(t),d={browserDetails:s,commonShim:l,extractVersion:o.extractVersion,disableLog:o.disableLog,disableWarnings:o.disableWarnings,sdp:u};switch(s.browser){case"chrome":if(!i||!i.shimPeerConnection||!n.shimChrome)return r("Chrome shim is not included in this adapter release."),d;if(null===s.version)return r("Chrome shim can not determine version, not shimming."),d;r("adapter.js shimming chrome."),d.browserShim=i,l.shimAddIceCandidateNullOrEmpty(t,s),l.shimParameterlessSetLocalDescription(t,s),i.shimGetUserMedia(t,s),i.shimMediaStream(t,s),i.shimPeerConnection(t,s),i.shimOnTrack(t,s),i.shimAddTrackRemoveTrack(t,s),i.shimGetSendersWithDtmf(t,s),i.shimGetStats(t,s),i.shimSenderReceiverGetStats(t,s),i.fixNegotiationNeeded(t,s),l.shimRTCIceCandidate(t,s),l.shimRTCIceCandidateRelayProtocol(t,s),l.shimConnectionState(t,s),l.shimMaxMessageSize(t,s),l.shimSendThrowTypeError(t,s),l.removeExtmapAllowMixed(t,s);break;case"firefox":if(!a||!a.shimPeerConnection||!n.shimFirefox)return r("Firefox shim is not included in this adapter release."),d;r("adapter.js shimming firefox."),d.browserShim=a,l.shimAddIceCandidateNullOrEmpty(t,s),l.shimParameterlessSetLocalDescription(t,s),a.shimGetUserMedia(t,s),a.shimPeerConnection(t,s),a.shimOnTrack(t,s),a.shimRemoveStream(t,s),a.shimSenderGetStats(t,s),a.shimReceiverGetStats(t,s),a.shimRTCDataChannel(t,s),a.shimAddTransceiver(t,s),a.shimGetParameters(t,s),a.shimCreateOffer(t,s),a.shimCreateAnswer(t,s),l.shimRTCIceCandidate(t,s),l.shimConnectionState(t,s),l.shimMaxMessageSize(t,s),l.shimSendThrowTypeError(t,s);break;case"safari":if(!c||!n.shimSafari)return r("Safari shim is not included in this adapter release."),d;r("adapter.js shimming safari."),d.browserShim=c,l.shimAddIceCandidateNullOrEmpty(t,s),l.shimParameterlessSetLocalDescription(t,s),c.shimRTCIceServerUrls(t,s),c.shimCreateOfferLegacy(t,s),c.shimCallbacksAPI(t,s),c.shimLocalStreamsAPI(t,s),c.shimRemoteStreamsAPI(t,s),c.shimTrackEventTransceiver(t,s),c.shimGetUserMedia(t,s),c.shimAudioContext(t,s),l.shimRTCIceCandidate(t,s),l.shimRTCIceCandidateRelayProtocol(t,s),l.shimMaxMessageSize(t,s),l.shimSendThrowTypeError(t,s),l.removeExtmapAllowMixed(t,s);break;default:r("Unsupported browser!");break}return d}},{"./chrome/chrome_shim":3,"./common_shim":6,"./firefox/firefox_shim":7,"./safari/safari_shim":10,"./utils":11,sdp:12}],3:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.fixNegotiationNeeded=S,n.shimAddTrackRemoveTrack=b,n.shimAddTrackRemoveTrackWithNative=y,Object.defineProperty(n,"shimGetDisplayMedia",{enumerable:!0,get:function(){return i.shimGetDisplayMedia}}),n.shimGetSendersWithDtmf=m,n.shimGetStats=v,Object.defineProperty(n,"shimGetUserMedia",{enumerable:!0,get:function(){return o.shimGetUserMedia}}),n.shimMediaStream=f,n.shimOnTrack=h,n.shimPeerConnection=C,n.shimSenderReceiverGetStats=g;var r=c(e("../utils.js")),o=e("./getusermedia"),i=e("./getdisplaymedia");function a(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==p(e)&&"function"!==typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r["default"]=e,n&&n.set(e,r),r}function l(e,t,n){return t=u(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e){var t=d(e,"string");return"symbol"===p(t)?t:String(t)}function d(e,t){if("object"!==p(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==p(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function p(e){return p="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},p(e)}function f(e){e.MediaStream=e.MediaStream||e.webkitMediaStream}function h(e){if("object"!==p(e)||!e.RTCPeerConnection||"ontrack"in e.RTCPeerConnection.prototype)r.wrapPeerConnectionEvent(e,"track",function(e){return e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e});else{Object.defineProperty(e.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(e){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=e)},enumerable:!0,configurable:!0});var t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){var n=this;return this._ontrackpoly||(this._ontrackpoly=function(t){t.stream.addEventListener("addtrack",function(r){var o;o=e.RTCPeerConnection.prototype.getReceivers?n.getReceivers().find(function(e){return e.track&&e.track.id===r.track.id}):{track:r.track};var i=new Event("track");i.track=r.track,i.receiver=o,i.transceiver={receiver:o},i.streams=[t.stream],n.dispatchEvent(i)}),t.stream.getTracks().forEach(function(r){var o;o=e.RTCPeerConnection.prototype.getReceivers?n.getReceivers().find(function(e){return e.track&&e.track.id===r.id}):{track:r};var i=new Event("track");i.track=r,i.receiver=o,i.transceiver={receiver:o},i.streams=[t.stream],n.dispatchEvent(i)})},this.addEventListener("addstream",this._ontrackpoly)),t.apply(this,arguments)}}}function m(e){if("object"===p(e)&&e.RTCPeerConnection&&!("getSenders"in e.RTCPeerConnection.prototype)&&"createDTMFSender"in e.RTCPeerConnection.prototype){var 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()};var n=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,r){var o=n.apply(this,arguments);return o||(o=t(this,e),this._senders.push(o)),o};var r=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){r.apply(this,arguments);var t=this._senders.indexOf(e);-1!==t&&this._senders.splice(t,1)}}var o=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){var n=this;this._senders=this._senders||[],o.apply(this,[e]),e.getTracks().forEach(function(e){n._senders.push(t(n,e))})};var i=e.RTCPeerConnection.prototype.removeStream;e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;this._senders=this._senders||[],i.apply(this,[e]),e.getTracks().forEach(function(e){var n=t._senders.find(function(t){return t.track===e});n&&t._senders.splice(t._senders.indexOf(n),1)})}}else if("object"===p(e)&&e.RTCPeerConnection&&"getSenders"in e.RTCPeerConnection.prototype&&"createDTMFSender"in e.RTCPeerConnection.prototype&&e.RTCRtpSender&&!("dtmf"in e.RTCRtpSender.prototype)){var a=e.RTCPeerConnection.prototype.getSenders;e.RTCPeerConnection.prototype.getSenders=function(){var e=this,t=a.apply(this,[]);return t.forEach(function(t){return t._pc=e}),t},Object.defineProperty(e.RTCRtpSender.prototype,"dtmf",{get:function(){return void 0===this._dtmf&&("audio"===this.track.kind?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function v(e){if(e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){var e=this,n=Array.prototype.slice.call(arguments),r=n[0],o=n[1],i=n[2];if(arguments.length>0&&"function"===typeof r)return t.apply(this,arguments);if(0===t.length&&(0===arguments.length||"function"!==typeof r))return t.apply(this,[]);var a=function(e){var t={},n=e.result();return n.forEach(function(e){var n={id:e.id,timestamp:e.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[e.type]||e.type};e.names().forEach(function(t){n[t]=e.stat(t)}),t[n.id]=n}),t},s=function(e){return new Map(Object.keys(e).map(function(t){return[t,e[t]]}))};if(arguments.length>=2){var c=function(e){o(s(a(e)))};return t.apply(this,[c,r])}return new Promise(function(n,r){t.apply(e,[function(e){n(s(a(e)))},r])}).then(o,i)}}}function g(e){if("object"===p(e)&&e.RTCPeerConnection&&e.RTCRtpSender&&e.RTCRtpReceiver){if(!("getStats"in e.RTCRtpSender.prototype)){var t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){var e=this,n=t.apply(this,[]);return n.forEach(function(t){return t._pc=e}),n});var n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){var e=n.apply(this,arguments);return e._pc=this,e}),e.RTCRtpSender.prototype.getStats=function(){var e=this;return this._pc.getStats().then(function(t){return r.filterStats(t,e.track,!0)})}}if(!("getStats"in e.RTCRtpReceiver.prototype)){var o=e.RTCPeerConnection.prototype.getReceivers;o&&(e.RTCPeerConnection.prototype.getReceivers=function(){var e=this,t=o.apply(this,[]);return t.forEach(function(t){return t._pc=e}),t}),r.wrapPeerConnectionEvent(e,"track",function(e){return e.receiver._pc=e.srcElement,e}),e.RTCRtpReceiver.prototype.getStats=function(){var e=this;return this._pc.getStats().then(function(t){return r.filterStats(t,e.track,!1)})}}if("getStats"in e.RTCRtpSender.prototype&&"getStats"in e.RTCRtpReceiver.prototype){var i=e.RTCPeerConnection.prototype.getStats;e.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof e.MediaStreamTrack){var t,n,r,o=arguments[0];return this.getSenders().forEach(function(e){e.track===o&&(t?r=!0:t=e)}),this.getReceivers().forEach(function(e){return e.track===o&&(n?r=!0:n=e),e.track===o}),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 i.apply(this,arguments)}}}}function y(e){e.RTCPeerConnection.prototype.getLocalStreams=function(){var e=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(function(t){return e._shimmedLocalStreams[t][0]})};var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addTrack=function(e,n){if(!n)return t.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var 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};var n=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(e){var t=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},e.getTracks().forEach(function(e){var n=t.getSenders().find(function(t){return t.track===e});if(n)throw new DOMException("Track already exists.","InvalidAccessError")});var r=this.getSenders();n.apply(this,arguments);var o=this.getSenders().filter(function(e){return-1===r.indexOf(e)});this._shimmedLocalStreams[e.id]=[e].concat(o)};var 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)};var o=e.RTCPeerConnection.prototype.removeTrack;e.RTCPeerConnection.prototype.removeTrack=function(e){var t=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},e&&Object.keys(this._shimmedLocalStreams).forEach(function(n){var r=t._shimmedLocalStreams[n].indexOf(e);-1!==r&&t._shimmedLocalStreams[n].splice(r,1),1===t._shimmedLocalStreams[n].length&&delete t._shimmedLocalStreams[n]}),o.apply(this,arguments)}}function b(e,t){if(e.RTCPeerConnection){if(e.RTCPeerConnection.prototype.addTrack&&t.version>=65)return y(e);var n=e.RTCPeerConnection.prototype.getLocalStreams;e.RTCPeerConnection.prototype.getLocalStreams=function(){var e=this,t=n.apply(this);return this._reverseStreams=this._reverseStreams||{},t.map(function(t){return e._reverseStreams[t.id]})};var r=e.RTCPeerConnection.prototype.addStream;e.RTCPeerConnection.prototype.addStream=function(t){var n=this;if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},t.getTracks().forEach(function(e){var t=n.getSenders().find(function(t){return t.track===e});if(t)throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[t.id]){var o=new e.MediaStream(t.getTracks());this._streams[t.id]=o,this._reverseStreams[o.id]=t,t=o}r.apply(this,[t])};var o=e.RTCPeerConnection.prototype.removeStream;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){var r=this;if("closed"===this.signalingState)throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var o=[].slice.call(arguments,1);if(1!==o.length||!o[0].getTracks().find(function(e){return e===t}))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");var i=this.getSenders().find(function(e){return e.track===t});if(i)throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};var a=this._streams[n.id];if(a)a.addTrack(t),Promise.resolve().then(function(){r.dispatchEvent(new Event("negotiationneeded"))});else{var s=new e.MediaStream([t]);this._streams[n.id]=s,this._reverseStreams[s.id]=n,this.addStream(s)}return this.getSenders().find(function(e){return e.track===t})},["createOffer","createAnswer"].forEach(function(t){var n=e.RTCPeerConnection.prototype[t],r=l({},t,function(){var e=this,t=arguments,r=arguments.length&&"function"===typeof arguments[0];return r?n.apply(this,[function(n){var r=s(e,n);t[0].apply(null,[r])},function(e){t[1]&&t[1].apply(null,e)},arguments[2]]):n.apply(this,arguments).then(function(t){return s(e,t)})});e.RTCPeerConnection.prototype[t]=r[t]});var i=e.RTCPeerConnection.prototype.setLocalDescription;e.RTCPeerConnection.prototype.setLocalDescription=function(){return arguments.length&&arguments[0].type?(arguments[0]=c(this,arguments[0]),i.apply(this,arguments)):i.apply(this,arguments)};var a=Object.getOwnPropertyDescriptor(e.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(e.RTCPeerConnection.prototype,"localDescription",{get:function(){var e=a.get.apply(this);return""===e.type?e:s(this,e)}}),e.RTCPeerConnection.prototype.removeTrack=function(e){var t=this;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");var n,r=e._pc===this;if(!r)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{},Object.keys(this._streams).forEach(function(r){var o=t._streams[r].getTracks().find(function(t){return e.track===t});o&&(n=t._streams[r])}),n&&(1===n.getTracks().length?this.removeStream(this._reverseStreams[n.id]):n.removeTrack(e.track),this.dispatchEvent(new Event("negotiationneeded")))}}function s(e,t){var n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(function(t){var 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 c(e,t){var n=t.sdp;return Object.keys(e._reverseStreams||[]).forEach(function(t){var 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})}}function C(e,t){!e.RTCPeerConnection&&e.webkitRTCPeerConnection&&(e.RTCPeerConnection=e.webkitRTCPeerConnection),e.RTCPeerConnection&&t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(t){var n=e.RTCPeerConnection.prototype[t],r=l({},t,function(){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)});e.RTCPeerConnection.prototype[t]=r[t]})}function S(e,t){r.wrapPeerConnectionEvent(e,"negotiationneeded",function(e){var n=e.target;if(!(t.version<72||n.getConfiguration&&"plan-b"===n.getConfiguration().sdpSemantics)||"stable"===n.signalingState)return e})}},{"../utils.js":11,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(e,t,n){function r(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(function(t){var 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)})}:console.error("shimGetDisplayMedia: getSourceId argument is not a function"))}Object.defineProperty(n,"__esModule",{value:!0}),n.shimGetDisplayMedia=r},{}],5:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.shimGetUserMedia=l;var r=i(e("../utils.js"));function o(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(o=function(e){return e?n:t})(e)}function i(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!==typeof e)return{default:e};var n=o(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var c=i?Object.getOwnPropertyDescriptor(e,s):null;c&&(c.get||c.set)?Object.defineProperty(r,s,c):r[s]=e[s]}return r["default"]=e,n&&n.set(e,r),r}function a(e){return a="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},a(e)}var c=r.log;function l(e,t){var n=e&&e.navigator;if(n.mediaDevices){var r=function(e){if("object"!==a(e)||e.mandatory||e.optional)return e;var t={};return Object.keys(e).forEach(function(n){if("require"!==n&&"advanced"!==n&&"mediaSource"!==n){var r="object"===a(e[n])?e[n]:{ideal:e[n]};void 0!==r.exact&&"number"===typeof r.exact&&(r.min=r.max=r.exact);var 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||[];var i={};"number"===typeof r.ideal?(i[o("min",n)]=r.ideal,t.optional.push(i),i={},i[o("max",n)]=r.ideal,t.optional.push(i)):(i[o("",n)]=r.ideal,t.optional.push(i))}void 0!==r.exact&&"number"!==typeof r.exact?(t.mandatory=t.mandatory||{},t.mandatory[o("",n)]=r.exact):["min","max"].forEach(function(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"===a(e.audio)){var i=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])};e=JSON.parse(JSON.stringify(e)),i(e.audio,"autoGainControl","googAutoGainControl"),i(e.audio,"noiseSuppression","googNoiseSuppression"),e.audio=r(e.audio)}if(e&&"object"===a(e.video)){var s=e.video.facingMode;s=s&&("object"===a(s)?s:{ideal:s});var l,u=t.version<66;if(s&&("user"===s.exact||"environment"===s.exact||"user"===s.ideal||"environment"===s.ideal)&&(!n.mediaDevices.getSupportedConstraints||!n.mediaDevices.getSupportedConstraints().facingMode||u))if(delete e.video.facingMode,"environment"===s.exact||"environment"===s.ideal?l=["back","rear"]:"user"!==s.exact&&"user"!==s.ideal||(l=["front"]),l)return n.mediaDevices.enumerateDevices().then(function(t){t=t.filter(function(e){return"videoinput"===e.kind});var n=t.find(function(e){return l.some(function(t){return e.label.toLowerCase().includes(t)})});return!n&&t.length&&l.includes("back")&&(n=t[t.length-1]),n&&(e.video.deviceId=s.exact?{exact:n.deviceId}:{ideal:n.deviceId}),e.video=r(e.video),c("chrome: "+JSON.stringify(e)),o(e)});e.video=r(e.video)}return c("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:function(){return this.name+(this.message&&": ")+this.message}}},s=function(e,t,r){o(e,function(e){n.webkitGetUserMedia(e,t,function(e){r&&r(i(e))})})};if(n.getUserMedia=s.bind(n),n.mediaDevices.getUserMedia){var l=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(e){return o(e,function(e){return l(e).then(function(t){if(e.audio&&!t.getAudioTracks().length||e.video&&!t.getVideoTracks().length)throw t.getTracks().forEach(function(e){e.stop()}),new DOMException("","NotFoundError");return t},function(e){return Promise.reject(i(e))})})}}}}},{"../utils.js":11}],6:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.removeExtmapAllowMixed=m,n.shimAddIceCandidateNullOrEmpty=v,n.shimConnectionState=h,n.shimMaxMessageSize=p,n.shimParameterlessSetLocalDescription=g,n.shimRTCIceCandidate=u,n.shimRTCIceCandidateRelayProtocol=d,n.shimSendThrowTypeError=f;var r=c(e("sdp")),o=a(e("./utils"));function i(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}function a(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==l(e)&&"function"!==typeof e)return{default:e};var n=i(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=o?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(r,a,s):r[a]=e[a]}return r["default"]=e,n&&n.set(e,r),r}function c(e){return e&&e.__esModule?e:{default:e}}function l(e){return l="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},l(e)}function u(e){if(e.RTCIceCandidate&&!(e.RTCIceCandidate&&"foundation"in e.RTCIceCandidate.prototype)){var t=e.RTCIceCandidate;e.RTCIceCandidate=function(e){if("object"===l(e)&&e.candidate&&0===e.candidate.indexOf("a=")&&(e=JSON.parse(JSON.stringify(e)),e.candidate=e.candidate.substring(2)),e.candidate&&e.candidate.length){var n=new t(e),o=r["default"].parseCandidate(e.candidate);for(var i in o)i in n||Object.defineProperty(n,i,{value:o[i]});return n.toJSON=function(){return{candidate:n.candidate,sdpMid:n.sdpMid,sdpMLineIndex:n.sdpMLineIndex,usernameFragment:n.usernameFragment}},n}return new t(e)},e.RTCIceCandidate.prototype=t.prototype,o.wrapPeerConnectionEvent(e,"icecandidate",function(t){return t.candidate&&Object.defineProperty(t,"candidate",{value:new e.RTCIceCandidate(t.candidate),writable:"false"}),t})}}function d(e){!e.RTCIceCandidate||e.RTCIceCandidate&&"relayProtocol"in e.RTCIceCandidate.prototype||o.wrapPeerConnectionEvent(e,"icecandidate",function(e){if(e.candidate){var t=r["default"].parseCandidate(e.candidate.candidate);"relay"===t.type&&(e.candidate.relayProtocol={0:"tls",1:"tcp",2:"udp"}[t.priority>>24])}return e})}function p(e,t){if(e.RTCPeerConnection){"sctp"in e.RTCPeerConnection.prototype||Object.defineProperty(e.RTCPeerConnection.prototype,"sctp",{get:function(){return"undefined"===typeof this._sctp?null:this._sctp}});var n=function(e){if(!e||!e.sdp)return!1;var t=r["default"].splitSections(e.sdp);return t.shift(),t.some(function(e){var t=r["default"].parseMLine(e);return t&&"application"===t.kind&&-1!==t.protocol.indexOf("SCTP")})},o=function(e){var t=e.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(null===t||t.length<2)return-1;var n=parseInt(t[1],10);return n!==n?-1:n},i=function(e){var n=65536;return"firefox"===t.browser&&(n=t.version<57?-1===e?16384:2147483637:t.version<60?57===t.version?65535:65536:2147483637),n},a=function(e,n){var o=65536;"firefox"===t.browser&&57===t.version&&(o=65535);var i=r["default"].matchPrefix(e.sdp,"a=max-message-size:");return i.length>0?o=parseInt(i[0].substring(19),10):"firefox"===t.browser&&-1!==n&&(o=2147483637),o},s=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,"chrome"===t.browser&&t.version>=76){var e=this.getConfiguration(),r=e.sdpSemantics;"plan-b"===r&&Object.defineProperty(this,"sctp",{get:function(){return"undefined"===typeof this._sctp?null:this._sctp},enumerable:!0,configurable:!0})}if(n(arguments[0])){var c,l=o(arguments[0]),u=i(l),d=a(arguments[0],l);c=0===u&&0===d?Number.POSITIVE_INFINITY:0===u||0===d?Math.max(u,d):Math.min(u,d);var p={};Object.defineProperty(p,"maxMessageSize",{get:function(){return c}}),this._sctp=p}return s.apply(this,arguments)}}}function f(e){if(e.RTCPeerConnection&&"createDataChannel"in e.RTCPeerConnection.prototype){var t=e.RTCPeerConnection.prototype.createDataChannel;e.RTCPeerConnection.prototype.createDataChannel=function(){var e=t.apply(this,arguments);return n(e,this),e},o.wrapPeerConnectionEvent(e,"datachannel",function(e){return n(e.channel,e.target),e})}function n(e,t){var n=e.send;e.send=function(){var 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)}}}function h(e){if(e.RTCPeerConnection&&!("connectionState"in e.RTCPeerConnection.prototype)){var t=e.RTCPeerConnection.prototype;Object.defineProperty(t,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(t,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(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(function(e){var n=t[e];t[e]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(e){var t=e.target;if(t._lastConnectionState!==t.connectionState){t._lastConnectionState=t.connectionState;var n=new Event("connectionstatechange",e);t.dispatchEvent(n)}return e},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n.apply(this,arguments)}})}}function m(e,t){if(e.RTCPeerConnection&&!("chrome"===t.browser&&t.version>=71)&&!("safari"===t.browser&&t.version>=605)){var n=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(t){if(t&&t.sdp&&-1!==t.sdp.indexOf("\na=extmap-allow-mixed")){var r=t.sdp.split("\n").filter(function(e){return"a=extmap-allow-mixed"!==e.trim()}).join("\n");e.RTCSessionDescription&&t instanceof e.RTCSessionDescription?arguments[0]=new e.RTCSessionDescription({type:t.type,sdp:r}):t.sdp=r}return n.apply(this,arguments)}}}function v(e,t){if(e.RTCPeerConnection&&e.RTCPeerConnection.prototype){var 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 g(e,t){if(e.RTCPeerConnection&&e.RTCPeerConnection.prototype){var n=e.RTCPeerConnection.prototype.setLocalDescription;n&&0!==n.length&&(e.RTCPeerConnection.prototype.setLocalDescription=function(){var e=this,t=arguments[0]||{};if("object"!==l(t)||t.type&&t.sdp)return n.apply(this,arguments);if(t={type:t.type,sdp:t.sdp},!t.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":t.type="offer";break;default:t.type="answer";break}if(t.sdp||"offer"!==t.type&&"answer"!==t.type)return n.apply(this,[t]);var r="offer"===t.type?this.createOffer:this.createAnswer;return r.apply(this).then(function(t){return n.apply(e,[t])})})}}},{"./utils":11,sdp:12}],7:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.shimAddTransceiver=x,n.shimCreateAnswer=P,n.shimCreateOffer=R,Object.defineProperty(n,"shimGetDisplayMedia",{enumerable:!0,get:function(){return i.shimGetDisplayMedia}}),n.shimGetParameters=k,Object.defineProperty(n,"shimGetUserMedia",{enumerable:!0,get:function(){return o.shimGetUserMedia}}),n.shimOnTrack=b,n.shimPeerConnection=C,n.shimRTCDataChannel=T,n.shimReceiverGetStats=w,n.shimRemoveStream=_,n.shimSenderGetStats=S;var r=c(e("../utils")),o=e("./getusermedia"),i=e("./getdisplaymedia");function a(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==y(e)&&"function"!==typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r["default"]=e,n&&n.set(e,r),r}function l(e){return f(e)||p(e)||d(e)||u()}function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e,t){if(e){if("string"===typeof e)return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?h(e,t):void 0}}function p(e){if("undefined"!==typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function f(e){if(Array.isArray(e))return h(e)}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t,n){return t=v(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e){var t=g(e,"string");return"symbol"===y(t)?t:String(t)}function g(e,t){if("object"!==y(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==y(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function y(e){return y="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},y(e)}function b(e){"object"===y(e)&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function C(e,t){if("object"===y(e)&&(e.RTCPeerConnection||e.mozRTCPeerConnection)){!e.RTCPeerConnection&&e.mozRTCPeerConnection&&(e.RTCPeerConnection=e.mozRTCPeerConnection),t.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(t){var n=e.RTCPeerConnection.prototype[t],r=m({},t,function(){return arguments[0]=new("addIceCandidate"===t?e.RTCIceCandidate:e.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)});e.RTCPeerConnection.prototype[t]=r[t]});var 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(){var e=Array.prototype.slice.call(arguments),o=e[0],i=e[1],a=e[2];return r.apply(this,[o||null]).then(function(e){if(t.version<53&&!i)try{e.forEach(function(e){e.type=n[e.type]||e.type})}catch(r){if("TypeError"!==r.name)throw r;e.forEach(function(t,r){e.set(r,Object.assign({},t,{type:n[t.type]||t.type}))})}return e}).then(i,a)}}}function S(e){if("object"===y(e)&&e.RTCPeerConnection&&e.RTCRtpSender&&!(e.RTCRtpSender&&"getStats"in e.RTCRtpSender.prototype)){var t=e.RTCPeerConnection.prototype.getSenders;t&&(e.RTCPeerConnection.prototype.getSenders=function(){var e=this,n=t.apply(this,[]);return n.forEach(function(t){return t._pc=e}),n});var n=e.RTCPeerConnection.prototype.addTrack;n&&(e.RTCPeerConnection.prototype.addTrack=function(){var 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 w(e){if("object"===y(e)&&e.RTCPeerConnection&&e.RTCRtpSender&&!(e.RTCRtpSender&&"getStats"in e.RTCRtpReceiver.prototype)){var t=e.RTCPeerConnection.prototype.getReceivers;t&&(e.RTCPeerConnection.prototype.getReceivers=function(){var e=this,n=t.apply(this,[]);return n.forEach(function(t){return t._pc=e}),n}),r.wrapPeerConnectionEvent(e,"track",function(e){return e.receiver._pc=e.srcElement,e}),e.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}}function _(e){!e.RTCPeerConnection||"removeStream"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;r.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(n){n.track&&e.getTracks().includes(n.track)&&t.removeTrack(n)})})}function T(e){e.DataChannel&&!e.RTCDataChannel&&(e.RTCDataChannel=e.DataChannel)}function x(e){if("object"===y(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype.addTransceiver;t&&(e.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];var e=arguments[1]&&arguments[1].sendEncodings;void 0===e&&(e=[]),e=l(e);var n=e.length>0;n&&e.forEach(function(e){if("rid"in e){var 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")});var r=t.apply(this,arguments);if(n){var o=r.sender,i=o.getParameters();"encodings"in i&&(1!==i.encodings.length||0!==Object.keys(i.encodings[0]).length)||(i.encodings=e,o.sendEncodings=e,this.setParametersPromises.push(o.setParameters(i).then(function(){delete o.sendEncodings})["catch"](function(){delete o.sendEncodings})))}return r})}}function k(e){if("object"===y(e)&&e.RTCRtpSender){var t=e.RTCRtpSender.prototype.getParameters;t&&(e.RTCRtpSender.prototype.getParameters=function(){var e=t.apply(this,arguments);return"encodings"in e||(e.encodings=[].concat(this.sendEncodings||[{}])),e})}}function R(e){if("object"===y(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(){var e=arguments,n=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return t.apply(n,e)})["finally"](function(){n.setParametersPromises=[]}):t.apply(this,arguments)}}}function P(e){if("object"===y(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype.createAnswer;e.RTCPeerConnection.prototype.createAnswer=function(){var e=arguments,n=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return t.apply(n,e)})["finally"](function(){n.setParametersPromises=[]}):t.apply(this,arguments)}}}},{"../utils":11,"./getdisplaymedia":8,"./getusermedia":9}],8:[function(e,t,n){function r(e,t){e.navigator.mediaDevices&&"getDisplayMedia"in e.navigator.mediaDevices||e.navigator.mediaDevices&&(e.navigator.mediaDevices.getDisplayMedia=function(n){if(!n||!n.video){var r=new DOMException("getDisplayMedia without video constraints is undefined");return r.name="NotFoundError",r.code=8,Promise.reject(r)}return!0===n.video?n.video={mediaSource:t}:n.video.mediaSource=t,e.navigator.mediaDevices.getUserMedia(n)})}Object.defineProperty(n,"__esModule",{value:!0}),n.shimGetDisplayMedia=r},{}],9:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.shimGetUserMedia=c;var r=i(e("../utils"));function o(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(o=function(e){return e?n:t})(e)}function i(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!==typeof e)return{default:e};var n=o(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var c=i?Object.getOwnPropertyDescriptor(e,s):null;c&&(c.get||c.set)?Object.defineProperty(r,s,c):r[s]=e[s]}return r["default"]=e,n&&n.set(e,r),r}function a(e){return a="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},a(e)}function c(e,t){var n=e&&e.navigator,o=e&&e.MediaStreamTrack;if(n.getUserMedia=function(e,t,o){r.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,o)},!(t.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){var i=function(e,t,n){t in e&&!(n in e)&&(e[n]=e[t],delete e[t])},s=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(e){return"object"===a(e)&&"object"===a(e.audio)&&(e=JSON.parse(JSON.stringify(e)),i(e.audio,"autoGainControl","mozAutoGainControl"),i(e.audio,"noiseSuppression","mozNoiseSuppression")),s(e)},o&&o.prototype.getSettings){var c=o.prototype.getSettings;o.prototype.getSettings=function(){var e=c.apply(this,arguments);return i(e,"mozAutoGainControl","autoGainControl"),i(e,"mozNoiseSuppression","noiseSuppression"),e}}if(o&&o.prototype.applyConstraints){var l=o.prototype.applyConstraints;o.prototype.applyConstraints=function(e){return"audio"===this.kind&&"object"===a(e)&&(e=JSON.parse(JSON.stringify(e)),i(e,"autoGainControl","mozAutoGainControl"),i(e,"noiseSuppression","mozNoiseSuppression")),l.apply(this,[e])}}}}},{"../utils":11}],10:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0}),n.shimAudioContext=v,n.shimCallbacksAPI=u,n.shimConstraints=p,n.shimCreateOfferLegacy=m,n.shimGetUserMedia=d,n.shimLocalStreamsAPI=c,n.shimRTCIceServerUrls=f,n.shimRemoteStreamsAPI=l,n.shimTrackEventTransceiver=h;var r=i(e("../utils"));function o(e){if("function"!==typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(o=function(e){return e?n:t})(e)}function i(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==a(e)&&"function"!==typeof e)return{default:e};var n=o(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var c=i?Object.getOwnPropertyDescriptor(e,s):null;c&&(c.get||c.set)?Object.defineProperty(r,s,c):r[s]=e[s]}return r["default"]=e,n&&n.set(e,r),r}function a(e){return a="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},a(e)}function c(e){if("object"===a(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)){var t=e.RTCPeerConnection.prototype.addTrack;e.RTCPeerConnection.prototype.addStream=function(e){var n=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(e)||this._localStreams.push(e),e.getAudioTracks().forEach(function(r){return t.call(n,r,e)}),e.getVideoTracks().forEach(function(r){return t.call(n,r,e)})},e.RTCPeerConnection.prototype.addTrack=function(e){for(var n=this,r=arguments.length,o=new Array(r>1?r-1:0),i=1;i<r;i++)o[i-1]=arguments[i];return o&&o.forEach(function(e){n._localStreams?n._localStreams.includes(e)||n._localStreams.push(e):n._localStreams=[e]}),t.apply(this,arguments)}}"removeStream"in e.RTCPeerConnection.prototype||(e.RTCPeerConnection.prototype.removeStream=function(e){var t=this;this._localStreams||(this._localStreams=[]);var n=this._localStreams.indexOf(e);if(-1!==n){this._localStreams.splice(n,1);var r=e.getTracks();this.getSenders().forEach(function(e){r.includes(e.track)&&t.removeTrack(e)})}})}}function l(e){if("object"===a(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:function(){return this._onaddstream},set:function(e){var t=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=e),this.addEventListener("track",this._onaddstreampoly=function(e){e.streams.forEach(function(e){if(t._remoteStreams||(t._remoteStreams=[]),!t._remoteStreams.includes(e)){t._remoteStreams.push(e);var n=new Event("addstream");n.stream=e,t.dispatchEvent(n)}})})}});var t=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(){var e=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(t){t.streams.forEach(function(t){if(e._remoteStreams||(e._remoteStreams=[]),!(e._remoteStreams.indexOf(t)>=0)){e._remoteStreams.push(t);var n=new Event("addstream");n.stream=t,e.dispatchEvent(n)}})}),t.apply(e,arguments)}}}function u(e){if("object"===a(e)&&e.RTCPeerConnection){var t=e.RTCPeerConnection.prototype,n=t.createOffer,r=t.createAnswer,o=t.setLocalDescription,i=t.setRemoteDescription,s=t.addIceCandidate;t.createOffer=function(e,t){var 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){var n=arguments.length>=2?arguments[2]:arguments[0],o=r.apply(this,[n]);return t?(o.then(e,t),Promise.resolve()):o};var c=function(e,t,n){var r=o.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r};t.setLocalDescription=c,c=function(e,t,n){var r=i.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.setRemoteDescription=c,c=function(e,t,n){var r=s.apply(this,[e]);return n?(r.then(t,n),Promise.resolve()):r},t.addIceCandidate=c}}function d(e){var t=e&&e.navigator;if(t.mediaDevices&&t.mediaDevices.getUserMedia){var n=t.mediaDevices,r=n.getUserMedia.bind(n);t.mediaDevices.getUserMedia=function(e){return r(p(e))}}!t.getUserMedia&&t.mediaDevices&&t.mediaDevices.getUserMedia&&(t.getUserMedia=function(e,n,r){t.mediaDevices.getUserMedia(e).then(n,r)}.bind(t))}function p(e){return e&&void 0!==e.video?Object.assign({},e,{video:r.compactObject(e.video)}):e}function f(e){if(e.RTCPeerConnection){var t=e.RTCPeerConnection;e.RTCPeerConnection=function(e,n){if(e&&e.iceServers){for(var o=[],i=0;i<e.iceServers.length;i++){var a=e.iceServers[i];void 0===a.urls&&a.url?(r.deprecated("RTCIceServer.url","RTCIceServer.urls"),a=JSON.parse(JSON.stringify(a)),a.urls=a.url,delete a.url,o.push(a)):o.push(e.iceServers[i])}e.iceServers=o}return new t(e,n)},e.RTCPeerConnection.prototype=t.prototype,"generateCertificate"in t&&Object.defineProperty(e.RTCPeerConnection,"generateCertificate",{get:function(){return t.generateCertificate}})}}function h(e){"object"===a(e)&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function m(e){var t=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(e){if(e){"undefined"!==typeof e.offerToReceiveAudio&&(e.offerToReceiveAudio=!!e.offerToReceiveAudio);var n=this.getTransceivers().find(function(e){return"audio"===e.receiver.track.kind});!1===e.offerToReceiveAudio&&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.offerToReceiveAudio||n||this.addTransceiver("audio",{direction:"recvonly"}),"undefined"!==typeof e.offerToReceiveVideo&&(e.offerToReceiveVideo=!!e.offerToReceiveVideo);var r=this.getTransceivers().find(function(e){return"video"===e.receiver.track.kind});!1===e.offerToReceiveVideo&&r?"sendrecv"===r.direction?r.setDirection?r.setDirection("sendonly"):r.direction="sendonly":"recvonly"===r.direction&&(r.setDirection?r.setDirection("inactive"):r.direction="inactive"):!0!==e.offerToReceiveVideo||r||this.addTransceiver("video",{direction:"recvonly"})}return t.apply(this,arguments)}}function v(e){"object"!==a(e)||e.AudioContext||(e.AudioContext=e.webkitAudioContext)}},{"../utils":11}],11:[function(e,t,n){function r(e,t,n){return t=o(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e){var t=i(e,"string");return"symbol"===a(t)?t:String(t)}function i(e,t){if("object"!==a(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==a(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function a(e){return a="function"==typeof Symbol&&"symbol"==Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},a(e)}Object.defineProperty(n,"__esModule",{value:!0}),n.compactObject=y,n.deprecated=m,n.detectBrowser=v,n.disableLog=p,n.disableWarnings=f,n.extractVersion=u,n.filterStats=C,n.log=h,n.walkStats=b,n.wrapPeerConnectionEvent=d;var c=!0,l=!0;function u(e,t,n){var r=e.match(t);return r&&r.length>=n&&parseInt(r[n],10)}function d(e,t,n){if(e.RTCPeerConnection){var r=e.RTCPeerConnection.prototype,o=r.addEventListener;r.addEventListener=function(e,r){if(e!==t)return o.apply(this,arguments);var i=function(e){var 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])};var 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);var 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:function(){return this["_on"+t]},set:function(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 p(e){return"boolean"!==typeof e?new Error("Argument type: "+a(e)+". Please use a boolean."):(c=e,e?"adapter.js logging disabled":"adapter.js logging enabled")}function f(e){return"boolean"!==typeof e?new Error("Argument type: "+a(e)+". Please use a boolean."):(l=!e,"adapter.js deprecation warnings "+(e?"disabled":"enabled"))}function h(){if("object"===("undefined"===typeof window?"undefined":a(window))){if(c)return;"undefined"!==typeof console&&"function"===typeof console.log&&console.log.apply(console,arguments)}}function m(e,t){l&&console.warn(e+" is deprecated, please use "+t+" instead.")}function v(e){var t={browser:null,version:null};if("undefined"===typeof e||!e.navigator||!e.navigator.userAgent)return t.browser="Not a browser.",t;var n=e.navigator;if(n.mozGetUserMedia)t.browser="firefox",t.version=u(n.userAgent,/Firefox\/(\d+)\./,1);else if(n.webkitGetUserMedia||!1===e.isSecureContext&&e.webkitRTCPeerConnection)t.browser="chrome",t.version=u(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=u(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 y(e){return g(e)?Object.keys(e).reduce(function(t,n){var o=g(e[n]),i=o?y(e[n]):e[n],a=o&&!Object.keys(i).length;return void 0===i||a?t:Object.assign(t,r({},n,i))},{}):e}function b(e,t,n){t&&!n.has(t.id)&&(n.set(t.id,t),Object.keys(t).forEach(function(r){r.endsWith("Id")?b(e,e.get(t[r]),n):r.endsWith("Ids")&&t[r].forEach(function(t){b(e,e.get(t),n)})}))}function C(e,t,n){var r=n?"outbound-rtp":"inbound-rtp",o=new Map;if(null===t)return o;var i=[];return e.forEach(function(e){"track"===e.type&&e.trackIdentifier===t.id&&i.push(e)}),i.forEach(function(t){e.forEach(function(n){n.type===r&&n.trackId===t.id&&b(e,n,o)})}),o}},{}],12:[function(e,t,n){var r="function"===typeof Symbol&&"symbol"===Object(s["a"])(Symbol.iterator)?function(e){return Object(s["a"])(e)}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":Object(s["a"])(e)},o={generateIdentifier:function(){return Math.random().toString(36).substring(2,12)}};o.localCName=o.generateIdentifier(),o.splitLines=function(e){return e.trim().split("\n").map(function(e){return e.trim()})},o.splitSections=function(e){var t=e.split("\nm=");return t.map(function(e,t){return(t>0?"m="+e:e).trim()+"\r\n"})},o.getDescription=function(e){var t=o.splitSections(e);return t&&t[0]},o.getMediaSections=function(e){var t=o.splitSections(e);return t.shift(),t},o.matchPrefix=function(e,t){return o.splitLines(e).filter(function(e){return 0===e.indexOf(t)})},o.parseCandidate=function(e){var t=void 0;t=0===e.indexOf("a=candidate:")?e.substring(12).split(" "):e.substring(10).split(" ");for(var 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]},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},o.writeCandidate=function(e){var t=[];t.push(e.foundation);var 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);var 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(" ")},o.parseIceOptions=function(e){return e.substring(14).split(" ")},o.parseRtpMap=function(e){var t=e.substring(9).split(" "),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},o.writeRtpMap=function(e){var t=e.payloadType;void 0!==e.preferredPayloadType&&(t=e.preferredPayloadType);var n=e.channels||e.numChannels||1;return"a=rtpmap:"+t+" "+e.name+"/"+e.clockRate+(1!==n?"/"+n:"")+"\r\n"},o.parseExtmap=function(e){var t=e.substring(9).split(" ");return{id:parseInt(t[0],10),direction:t[0].indexOf("/")>0?t[0].split("/")[1]:"sendrecv",uri:t[1],attributes:t.slice(2).join(" ")}},o.writeExtmap=function(e){return"a=extmap:"+(e.id||e.preferredId)+(e.direction&&"sendrecv"!==e.direction?"/"+e.direction:"")+" "+e.uri+(e.attributes?" "+e.attributes:"")+"\r\n"},o.parseFmtp=function(e){for(var t={},n=void 0,r=e.substring(e.indexOf(" ")+1).split(";"),o=0;o<r.length;o++)n=r[o].trim().split("="),t[n[0].trim()]=n[1];return t},o.writeFmtp=function(e){var t="",n=e.payloadType;if(void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.parameters&&Object.keys(e.parameters).length){var r=[];Object.keys(e.parameters).forEach(function(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},o.parseRtcpFb=function(e){var t=e.substring(e.indexOf(" ")+1).split(" ");return{type:t.shift(),parameter:t.join(" ")}},o.writeRtcpFb=function(e){var t="",n=e.payloadType;return void 0!==e.preferredPayloadType&&(n=e.preferredPayloadType),e.rtcpFeedback&&e.rtcpFeedback.length&&e.rtcpFeedback.forEach(function(e){t+="a=rtcp-fb:"+n+" "+e.type+(e.parameter&&e.parameter.length?" "+e.parameter:"")+"\r\n"}),t},o.parseSsrcMedia=function(e){var t=e.indexOf(" "),n={ssrc:parseInt(e.substring(7,t),10)},r=e.indexOf(":",t);return r>-1?(n.attribute=e.substring(t+1,r),n.value=e.substring(r+1)):n.attribute=e.substring(t+1),n},o.parseSsrcGroup=function(e){var t=e.substring(13).split(" ");return{semantics:t.shift(),ssrcs:t.map(function(e){return parseInt(e,10)})}},o.getMid=function(e){var t=o.matchPrefix(e,"a=mid:")[0];if(t)return t.substring(6)},o.parseFingerprint=function(e){var t=e.substring(14).split(" ");return{algorithm:t[0].toLowerCase(),value:t[1].toUpperCase()}},o.getDtlsParameters=function(e,t){var n=o.matchPrefix(e+t,"a=fingerprint:");return{role:"auto",fingerprints:n.map(o.parseFingerprint)}},o.writeDtlsParameters=function(e,t){var n="a=setup:"+t+"\r\n";return e.fingerprints.forEach(function(e){n+="a=fingerprint:"+e.algorithm+" "+e.value+"\r\n"}),n},o.parseCryptoLine=function(e){var t=e.substring(9).split(" ");return{tag:parseInt(t[0],10),cryptoSuite:t[1],keyParams:t[2],sessionParams:t.slice(3)}},o.writeCryptoLine=function(e){return"a=crypto:"+e.tag+" "+e.cryptoSuite+" "+("object"===r(e.keyParams)?o.writeCryptoKeyParams(e.keyParams):e.keyParams)+(e.sessionParams?" "+e.sessionParams.join(" "):"")+"\r\n"},o.parseCryptoKeyParams=function(e){if(0!==e.indexOf("inline:"))return null;var t=e.substring(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}},o.writeCryptoKeyParams=function(e){return e.keyMethod+":"+e.keySalt+(e.lifeTime?"|"+e.lifeTime:"")+(e.mkiValue&&e.mkiLength?"|"+e.mkiValue+":"+e.mkiLength:"")},o.getCryptoParameters=function(e,t){var n=o.matchPrefix(e+t,"a=crypto:");return n.map(o.parseCryptoLine)},o.getIceParameters=function(e,t){var n=o.matchPrefix(e+t,"a=ice-ufrag:")[0],r=o.matchPrefix(e+t,"a=ice-pwd:")[0];return n&&r?{usernameFragment:n.substring(12),password:r.substring(10)}:null},o.writeIceParameters=function(e){var t="a=ice-ufrag:"+e.usernameFragment+"\r\na=ice-pwd:"+e.password+"\r\n";return e.iceLite&&(t+="a=ice-lite\r\n"),t},o.parseRtpParameters=function(e){var t={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},n=o.splitLines(e),r=n[0].split(" ");t.profile=r[2];for(var i=3;i<r.length;i++){var a=r[i],s=o.matchPrefix(e,"a=rtpmap:"+a+" ")[0];if(s){var c=o.parseRtpMap(s),l=o.matchPrefix(e,"a=fmtp:"+a+" ");switch(c.parameters=l.length?o.parseFmtp(l[0]):{},c.rtcpFeedback=o.matchPrefix(e,"a=rtcp-fb:"+a+" ").map(o.parseRtcpFb),t.codecs.push(c),c.name.toUpperCase()){case"RED":case"ULPFEC":t.fecMechanisms.push(c.name.toUpperCase());break;default:break}}}o.matchPrefix(e,"a=extmap:").forEach(function(e){t.headerExtensions.push(o.parseExtmap(e))});var u=o.matchPrefix(e,"a=rtcp-fb:* ").map(o.parseRtcpFb);return t.codecs.forEach(function(e){u.forEach(function(t){var n=e.rtcpFeedback.find(function(e){return e.type===t.type&&e.parameter===t.parameter});n||e.rtcpFeedback.push(t)})}),t},o.writeRtpDescription=function(e,t){var n="";n+="m="+e+" ",n+=t.codecs.length>0?"9":"0",n+=" "+(t.profile||"UDP/TLS/RTP/SAVPF")+" ",n+=t.codecs.map(function(e){return 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(function(e){n+=o.writeRtpMap(e),n+=o.writeFmtp(e),n+=o.writeRtcpFb(e)});var r=0;return t.codecs.forEach(function(e){e.maxptime>r&&(r=e.maxptime)}),r>0&&(n+="a=maxptime:"+r+"\r\n"),t.headerExtensions&&t.headerExtensions.forEach(function(e){n+=o.writeExtmap(e)}),n},o.parseRtpEncodingParameters=function(e){var t=[],n=o.parseRtpParameters(e),r=-1!==n.fecMechanisms.indexOf("RED"),i=-1!==n.fecMechanisms.indexOf("ULPFEC"),a=o.matchPrefix(e,"a=ssrc:").map(function(e){return o.parseSsrcMedia(e)}).filter(function(e){return"cname"===e.attribute}),s=a.length>0&&a[0].ssrc,c=void 0,l=o.matchPrefix(e,"a=ssrc-group:FID").map(function(e){var t=e.substring(17).split(" ");return t.map(function(e){return parseInt(e,10)})});l.length>0&&l[0].length>1&&l[0][0]===s&&(c=l[0][1]),n.codecs.forEach(function(e){if("RTX"===e.name.toUpperCase()&&e.parameters.apt){var n={ssrc:s,codecPayloadType:parseInt(e.parameters.apt,10)};s&&c&&(n.rtx={ssrc:c}),t.push(n),r&&(n=JSON.parse(JSON.stringify(n)),n.fec={ssrc:s,mechanism:i?"red+ulpfec":"red"},t.push(n))}}),0===t.length&&s&&t.push({ssrc:s});var u=o.matchPrefix(e,"b=");return u.length&&(u=0===u[0].indexOf("b=TIAS:")?parseInt(u[0].substring(7),10):0===u[0].indexOf("b=AS:")?1e3*parseInt(u[0].substring(5),10)*.95-16e3:void 0,t.forEach(function(e){e.maxBitrate=u})),t},o.parseRtcpParameters=function(e){var t={},n=o.matchPrefix(e,"a=ssrc:").map(function(e){return o.parseSsrcMedia(e)}).filter(function(e){return"cname"===e.attribute})[0];n&&(t.cname=n.value,t.ssrc=n.ssrc);var r=o.matchPrefix(e,"a=rtcp-rsize");t.reducedSize=r.length>0,t.compound=0===r.length;var i=o.matchPrefix(e,"a=rtcp-mux");return t.mux=i.length>0,t},o.writeRtcpParameters=function(e){var 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},o.parseMsid=function(e){var t=void 0,n=o.matchPrefix(e,"a=msid:");if(1===n.length)return t=n[0].substring(7).split(" "),{stream:t[0],track:t[1]};var r=o.matchPrefix(e,"a=ssrc:").map(function(e){return o.parseSsrcMedia(e)}).filter(function(e){return"msid"===e.attribute});return r.length>0?(t=r[0].value.split(" "),{stream:t[0],track:t[1]}):void 0},o.parseSctpDescription=function(e){var t=o.parseMLine(e),n=o.matchPrefix(e,"a=max-message-size:"),r=void 0;n.length>0&&(r=parseInt(n[0].substring(19),10)),isNaN(r)&&(r=65536);var i=o.matchPrefix(e,"a=sctp-port:");if(i.length>0)return{port:parseInt(i[0].substring(12),10),protocol:t.fmt,maxMessageSize:r};var a=o.matchPrefix(e,"a=sctpmap:");if(a.length>0){var s=a[0].substring(10).split(" ");return{port:parseInt(s[0],10),protocol:s[1],maxMessageSize:r}}},o.writeSctpDescription=function(e,t){var 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("")},o.generateSessionId=function(){return Math.random().toString().substr(2,22)},o.writeSessionBoilerplate=function(e,t,n){var r=void 0,i=void 0!==t?t:2;r=e||o.generateSessionId();var a=n||"thisisadapterortc";return"v=0\r\no="+a+" "+r+" "+i+" IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\n"},o.getDirection=function(e,t){for(var n=o.splitLines(e),r=0;r<n.length;r++)switch(n[r]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return n[r].substring(2);default:}return t?o.getDirection(t):"sendrecv"},o.getKind=function(e){var t=o.splitLines(e),n=t[0].split(" ");return n[0].substring(2)},o.isRejected=function(e){return"0"===e.split(" ",2)[1]},o.parseMLine=function(e){var t=o.splitLines(e),n=t[0].substring(2).split(" ");return{kind:n[0],port:parseInt(n[1],10),protocol:n[2],fmt:n.slice(3).join(" ")}},o.parseOLine=function(e){var t=o.matchPrefix(e,"o=")[0],n=t.substring(2).split(" ");return{username:n[0],sessionId:n[1],sessionVersion:parseInt(n[2],10),netType:n[3],addressType:n[4],address:n[5]}},o.isValidSDP=function(e){if("string"!==typeof e||0===e.length)return!1;for(var t=o.splitLines(e),n=0;n<t.length;n++)if(t[n].length<2||"="!==t[n].charAt(1))return!1;return!0},"object"===("undefined"===typeof t?"undefined":r(t))&&(t.exports=o)},{}]},{},[1])(1)})}).call(this,n("dd40")(e),n("c8ba"))},5520:function(e,t,n){},"56d7":function(e,t,n){"use strict";n.r(t);n("cadf"),n("551c"),n("f751"),n("097d");var r=n("2b0e"),o=n("5c96"),i=n.n(o),a=(n("0fae"),function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"app"}},[n("HelloWorld",{attrs:{msg:"Welcome to Your Vue.js App"}})],1)}),s=[],c=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"fbky-container"},[e._m(0),n("div",{staticClass:"fbky_manage"},[n("el-button",{attrs:{type:"primary"},on:{click:e.initPerimeter}},[e._v("连接防爆扩音")]),n("el-button",{attrs:{type:"info"},on:{click:e.webRtcLogout}},[e._v("断开防爆扩音")]),n("el-button",{attrs:{type:"success"},on:{click:function(t){return e.dial(0)}}},[e._v("呼出通话")]),n("el-button",{attrs:{type:"danger"},on:{click:e.callHangupAll}},[e._v("挂断通话")]),n("span",[e._v("注:听到提示音后开始讲话,通话结束后请断开防爆扩音")])],1),n("div",{staticClass:"websocket",staticStyle:{display:"none"}},[n("div",{staticClass:"websocket_left"},[n("div",{staticClass:"set_case"},[n("div",{staticClass:"set_split call_left set_call"},[n("div",{staticClass:"set_box"},[n("div",{staticClass:"set_item"},[n("div",{staticClass:"set_group"},[n("span",{staticClass:"set_name"},[e._v("呼出号码:")]),n("input",{staticClass:"set_ipt ipt_number",attrs:{type:"text",id:"destinationNumber","v-model":e.ringNumber}})]),n("div",{staticClass:"set_group"},[n("button",{staticClass:"btn cyan_btn",attrs:{id:"hc"},on:{click:function(t){return e.dial(0)}}},[e._v("\n\t\t\t\t\t\t\t\t\t\t语音呼出\n\t\t\t\t\t\t\t\t\t")])])])])]),n("div",{staticClass:"set_split call_right",staticStyle:{display:"none"}},[n("div",{staticClass:"set_box come_box"},[n("div",{staticClass:"set_item"},[e._m(1),n("div",{staticClass:"set_group group_right"},[n("button",{staticClass:"btn blue_btn margin",on:{click:function(t){return e.callInAnswer(1)}}},[e._v("\n\t\t\t\t\t\t\t\t\t\t视频接听\n\t\t\t\t\t\t\t\t\t")]),n("button",{staticClass:"btn cyan_btn margin",on:{click:function(t){return e.callInAnswer(0)}}},[e._v("\n\t\t\t\t\t\t\t\t\t\t语音接听\n\t\t\t\t\t\t\t\t\t")]),n("button",{staticClass:"btn white_btn",on:{click:function(t){return e.callInHangup()}}},[e._v("\n\t\t\t\t\t\t\t\t\t\t挂断\n\t\t\t\t\t\t\t\t\t")])])])])])]),n("div",{staticClass:"set_case",staticStyle:{display:"none"}},[e._m(2),n("div",{staticClass:"set_split his_right"},[n("div",{staticClass:"set_box"},[n("div",{staticClass:"set_item set_first"},[n("span",{staticClass:"set_name"},[e._v("call ID:")]),n("input",{staticClass:"set_ipt ipt_call",attrs:{type:"text",id:"callID",readonly:""}}),n("button",{staticClass:"btn blue_btn",on:{click:function(t){return e.callHoldUnhold()}}},[e._v("\n\t\t\t\t\t\t\t\t\t保持/取消保持指定通话\n\t\t\t\t\t\t\t\t")])]),n("div",{staticClass:"set_item"},[n("span",{staticClass:"set_status off_status margin",attrs:{id:"mute_off_status",hidden:""}},[e._v("己关闭")]),n("span",{staticClass:"set_status on_status margin",attrs:{id:"mute_on_status",hidden:""}},[e._v("未关闭")]),n("button",{staticClass:"btn blue_btn",on:{click:function(t){return e.callMuteUnmute()}}},[e._v("\n\t\t\t\t\t\t\t\t\t关闭/打开指定通话本地声音\n\t\t\t\t\t\t\t\t")])]),n("div",{staticClass:"set_item"},[n("span",{staticClass:"set_status off_status margin",attrs:{id:"mute_video_off_status",hidden:""}},[e._v("已关闭")]),n("span",{staticClass:"set_status on_status margin",attrs:{id:"mute_video_on_status",hidden:""}},[e._v("未关闭")]),n("button",{staticClass:"btn blue_btn",on:{click:function(t){return e.callMuteUnmuteVideo()}}},[e._v("\n\t\t\t\t\t\t\t\t\t关闭/打开指定通话本地视频\n\t\t\t\t\t\t\t\t")])]),n("div",{staticClass:"set_item"},[n("button",{staticClass:"btn blue_btn margin",on:{click:function(t){return e.callHangup()}}},[e._v("\n\t\t\t\t\t\t\t\t\t挂断指定通话\n\t\t\t\t\t\t\t\t")])])])])]),e._m(3)]),n("div",{staticClass:"websocket_right"},[n("div",{staticClass:"set_box set_zhuce"},[e._m(4),n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[e._m(5),n("input",{directives:[{name:"model",rawName:"v-model",value:e.socketUrl,expression:"socketUrl"}],staticClass:"set_ipt",attrs:{type:"text",placeholder:"wss://192.168.10.39:1443/webrtc"},domProps:{value:e.socketUrl},on:{input:function(t){t.target.composing||(e.socketUrl=t.target.value)}}})]),e._m(6),e._m(7),e._m(8),e._m(9),n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[e._m(10),n("input",{directives:[{name:"model",rawName:"v-model",value:e.login,expression:"login"}],staticClass:"set_ipt",attrs:{type:"text",placeholder:"8889"},domProps:{value:e.login},on:{input:function(t){t.target.composing||(e.login=t.target.value)}}})]),n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[e._m(11),n("input",{directives:[{name:"model",rawName:"v-model",value:e.password,expression:"password"}],staticClass:"set_ipt",attrs:{type:"text",placeholder:"123456"},domProps:{value:e.password},on:{input:function(t){t.target.composing||(e.password=t.target.value)}}})]),e._m(12),n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("自动登录:")]),n("label",{staticClass:"check_box"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.autoReg,expression:"autoReg"}],staticClass:"check",attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.autoReg)?e._i(e.autoReg,null)>-1:e.autoReg},on:{change:function(t){var n=e.autoReg,r=t.target,o=!!r.checked;if(Array.isArray(n)){var i=null,a=e._i(n,i);r.checked?a<0&&(e.autoReg=n.concat([i])):a>-1&&(e.autoReg=n.slice(0,a).concat(n.slice(a+1)))}else e.autoReg=o}}}),n("span",[e._v("是")])])]),n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("自动接听:")]),n("label",{staticClass:"check_box"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.autoAnswer,expression:"autoAnswer"}],staticClass:"check",attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.autoAnswer)?e._i(e.autoAnswer,null)>-1:e.autoAnswer},on:{change:function(t){var n=e.autoAnswer,r=t.target,o=!!r.checked;if(Array.isArray(n)){var i=null,a=e._i(n,i);r.checked?a<0&&(e.autoAnswer=n.concat([i])):a>-1&&(e.autoAnswer=n.slice(0,a).concat(n.slice(a+1)))}else e.autoAnswer=o}}}),n("span",[e._v("是")])])]),e._m(13),e._m(14),n("div",{staticClass:"set_item"},[n("button",{staticClass:"btn blue_btn margin",on:{click:function(t){return e.initPerimeter()}}},[e._v("\n\t\t\t\t\t\t\t载入登录\n\t\t\t\t\t\t")]),n("button",{staticClass:"btn cyan_btn margin",on:{click:function(t){return e.webRtcLogin()}}},[e._v("\n\t\t\t\t\t\t\t登录\n\t\t\t\t\t\t")]),n("button",{staticClass:"btn white_btn margin",on:{click:function(t){return e.webRtcLogout()}}},[e._v("\n\t\t\t\t\t\t\t登出\n\t\t\t\t\t\t")]),n("button",{staticClass:"btn cyan_btn",on:{click:function(t){return e.callHangupAll()}}},[e._v("\n\t\t\t\t\t\t\t挂断所有\n\t\t\t\t\t\t")])])]),n("div",{staticClass:"set_box set_equipment",staticStyle:{display:"none"}},[n("div",{staticClass:"set_item"},[n("span",{staticClass:"set_name"},[e._v("本机IP:")]),n("input",{directives:[{name:"model",rawName:"v-model",value:e.localIp,expression:"localIp"}],staticClass:"set_ipt",attrs:{type:"text",id:"localIp"},domProps:{value:e.localIp},on:{input:function(t){t.target.composing||(e.localIp=t.target.value)}}})])])])])])},l=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"top"},[n("span",[e._v(" 呼叫对象:呼和浩特全战场 ")]),n("span",{staticClass:"set_status off_status",attrs:{id:"off_status"}},[e._v("离线")]),n("span",{staticClass:"set_status on_status",attrs:{id:"on_status",hidden:""}},[e._v("在线")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_group"},[n("span",{staticClass:"set_name"},[e._v("当前来电:")]),n("span",{attrs:{id:"call_in_now",callID:""}})])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_split his_left"},[n("div",{staticClass:"set_box"},[n("div",{staticClass:"set_item call_box"},[n("span",{staticClass:"set_name",staticStyle:{color:"red"}},[e._v("执行操作前,请选择正在通话列表(支持同时多路通话):")]),n("div",{staticClass:"call_case"},[n("ul",{attrs:{id:"call_list"}})])])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"video_box",staticStyle:{display:"none"}},[n("div",{staticClass:"video_left"},[n("div",{staticClass:"video_item video_item1"},[n("span",{staticClass:"video_name"},[e._v("local_video")]),n("video",{staticClass:"video_tag",attrs:{id:"local_video",width:"10%",height:"10%",autoplay:"true"}})])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item"},[n("span",{staticClass:"set_name"},[e._v("登录状态:")]),n("span",{staticClass:"set_status off_status",attrs:{id:"off_status"}},[e._v("未登录")]),n("span",{staticClass:"set_status on_status",attrs:{id:"on_status",hidden:""}},[e._v("已登录")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("span",{staticClass:"set_name"},[n("i",{staticClass:"must"},[e._v("*")]),e._v("Websocket URL:")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name",staticStyle:{flex:"none"}}),n("span",{staticStyle:{color:"red"}},[e._v("配置wss后,如果连接失败,请先查看是不是https证书问题\n\t\t\t\t\t\t\t可以通话访问对应的https页面,手动允许浏览器安全提示")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("麦克风:")]),n("select",{staticClass:"set_slt",attrs:{id:"audioInputDev"}},[n("option",{attrs:{value:""}},[e._v("请选择")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("摄像头:")]),n("select",{staticClass:"set_slt",attrs:{id:"videoInputDev"}},[n("option",{attrs:{value:""}},[e._v("请选择")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("扬声器:")]),n("select",{staticClass:"set_slt",attrs:{id:"audioOutputDev"}},[n("option",{attrs:{value:""}},[e._v("请选择")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("span",{staticClass:"set_name"},[n("i",{staticClass:"must"},[e._v("*")]),e._v("用户名:")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("span",{staticClass:"set_name"},[n("i",{staticClass:"must"},[e._v("*")]),e._v("密码:")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name",staticStyle:{flex:"none"}}),n("span",{staticStyle:{color:"red"}},[e._v("支持断线重连,通话中关闭网页,在重新登录后会恢复正在进行的通话")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name",staticStyle:{flex:"none"}}),n("span",{staticStyle:{color:"red"}},[e._v("注意:每个通话都需要在页面中有一个独立的video标签做为载体,\n\t\t\t\t\t\t\t不管是纯音频通话还是音视频通话,\n\t\t\t\t\t\t\t多个通话同时使用一个video标签时,后者会覆盖前者通话的视频和音频,\n\t\t\t\t\t\t\t测试多路通话时,请每次切换不同的video标签")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"set_item",staticStyle:{display:"none"}},[n("span",{staticClass:"set_name"},[e._v("下次通话视频位置:")]),n("select",{staticClass:"set_slt",attrs:{id:"peerTag"}},[n("option",{attrs:{value:"video1"}},[e._v("video1")]),n("option",{attrs:{value:"video2"}},[e._v("video2")]),n("option",{attrs:{value:"video3"}},[e._v("video3")]),n("option",{attrs:{value:"video4"}},[e._v("video4")]),n("option",{attrs:{value:"video5"}},[e._v("video5")]),n("option",{attrs:{value:"video6"}},[e._v("video6")]),n("option",{attrs:{value:"video7"}},[e._v("video7")]),n("option",{attrs:{value:"video8"}},[e._v("video8")])])])}],u=n("111a"),d={name:"Fbky",data:function(){return{login:"8889",password:"123456",socketUrl:"wss://172.10.10.61:1443/webrtc",localIp:"",autoReg:!0,autoAnswer:!1,mic:"",cam:"",speak:"",call_in_now_d:null,ringNumber:"111",callback:{onRinging:function(e){this.onRinging(e)},onCalling:function(e){this.onCalling(e)},onAnswer:function(e){this.onAnswer(e)},onHangup:function(e){},onLogin:function(){console.log("登录状态在线回调"),document.getElementById("off_status").setAttribute("hidden","hidden"),document.getElementById("on_status").removeAttribute("hidden")},onLogout:function(){console.log("登出状态离线回调"),document.getElementById("on_status").setAttribute("hidden","hidden"),document.getElementById("off_status").removeAttribute("hidden")}}}},watch:{curFbkyData:{handler:function(e){var t=this;this.callHangupAll(),console.log("数据更新:",e),e.url&&(this.login=e.admin,this.password=e.password,this.socketUrl=e.url,this.localIp=e.localIp),setTimeout(function(){t.initPerimeter()},1500)},deep:!0},ringNumber:{handler:function(e){this.callHangupAll(),this.callDisable&&this.dial(0),console.log("拨打号码:",e)},deep:!0},callDisable:{handler:function(e){e?(this.dial(0),console.log("拨号",this.ringNumber)):(this.callHangupAll(),console.log("挂断"))},deep:!0}},created:function(){var e=this;this.initMediaDevices(),setTimeout(function(){e.initPerimeter()},500)},destroyed:function(){var e=this;this.callHangupAll(),setTimeout(function(){e.webRtcLogout()},500)},mounted:function(){},methods:{getVideoDiv:function(){return document.getElementById("peerTag").value},getValue:function(e){return document.getElementById(e).value},setValue:function(e,t){document.getElementById(e).value=t},initPerimeter:function(){this.login&&this.password&&this.socketUrl?(localStorage.verto_login=this.login,localStorage.verto_password=this.password,localStorage.verto_socketUrl=this.socketUrl,localStorage.verto_localIp=this.localIp,localStorage.verto_autoReg=this.autoReg,localStorage.verto_autoAnswer=this.autoAnswer,u["a"].bootstrap(this.login,this.password,this.socketUrl,this.localIp,this.getVideoDiv(),"local_video",this.callback,this.mic,this.speak,this.cam)):alert("请填写必填参数")},initMediaDevices:function(){var e=this;u["a"].getMediaDevices().then(function(t){try{for(var n=t.audioInputDevices,r=t.videoDevices,o=t.audioOutputDevices,i="",a="",s="",c=0;c<n.length;c++)i+='<option value="'+n[c].deviceId+'">'+n[c].label+"</option>";document.getElementById("audioInputDev").innerHTML=i;for(var l=0;l<r.length;l++)a+='<option value="'+n[l].deviceId+'">'+r[l].label+"</option>";document.getElementById("videoInputDev").innerHTML=a;for(var u=0;u<o.length;u++)s+='<option value="'+n[u].deviceId+'">'+o[u].label+"</option>";document.getElementById("audioOutputDev").innerHTML=s,n.length>0&&(e.mic=n[0].deviceId),r.length>0&&(e.cam=r[0].deviceId),o.length>0&&(e.speak=o[0].deviceId),console.log("音视频设备:",t,e.mic,e.cam,e.speak)}catch(d){console.error(d)}})},webRtcLogin:function(){try{u["a"].rtcLogin()}catch(e){console.error(e)}},webRtcLogout:function(){try{u["a"].rtcLogout()}catch(e){console.error(e)}},dial:function(e){document.getElementById("hc").addEventListener("click",function(){navigator.mediaDevices.getUserMedia({audio:!0}).then(function(e){var t=document.createElement("audio");t.srcObject=e,t.autoplay=!0,document.body.appendChild(t)}).catch(function(e){console.error("获取麦克风失败:",e)})}),console.log("拨号号码:",this.ringNumber);var t=this.ringNumber;t?1===e?u["a"].rtcDial(t,!0):u["a"].rtcDial(t,!1):alert("没有输入被叫号码")},logRecords:function(e,t){var n="";switch(t){case"ringing":n=(new Date).Format("yyyy-MM-dd HH:mm:ss")+" 呼入 "+e;break;case"calling":n=(new Date).Format("yyyy-MM-dd HH:mm:ss")+" 呼出 "+e;break;default:break}localStorage.verto_his_list?localStorage.verto_his_list+=","+n:localStorage.verto_his_list=n},onRinging:function(e){var t=e.cidString();if(console.log("===========来电信息==========="+t),console.log("通话呼入事件",e),localStorage.verto_autoAnswer)if(console.log("自动接听"),e.params.wantVideo){var n=!0;u["a"].rtcAnswer(e,n)}else u["a"].rtcAnswer(e,!1);else document.getElementById("call_in_now").innerHTML=t,document.getElementById("call_in_now").setAttribute("callID",e.callID),this.call_in_now_d=e;document.getElementById("call_list").innerHTML+="<li callID='"+e.callID+"' @click='checkCalling(this)'>"+t+" 呼入</li>",this.logRecords(t,"ringing")},onCalling:function(e){var t=e.cidString();console.log("通话呼出事件",e),document.getElementById("call_list").innerHTML+="<li callID='"+e.callID+"' @click='checkCalling(this)'>"+t+" 呼出</li>",this.logRecords(t,"calling")},onAnswer:function(e){console.log("通话中事件",e)},onHangup:function(e){},callInAnswer:function(e){if(this.call_in_now_d){if(1===e)if(this.call_in_now_d.params.wantVideo){var t=!0;u["a"].rtcAnswer(this.call_in_now_d,t)}else u["a"].rtcAnswer(this.call_in_now_d,!1);else u["a"].rtcAnswer(this.call_in_now_d,!1);console.log("通话呼入"),document.getElementById("call_in_now").innerHTML="",this.call_in_now_d=null}else alert("当前无通话呼入")},callInHangup:function(){this.call_in_now_d?(u["a"].rtcHangup(this.call_in_now_d.callID),document.getElementById("call_in_now").innerHTML="",console.log("通话挂断"),this.call_in_now_d=null):alert("当前无通话呼入")},checkCalling:function(e){var t=e.getAttribute("callID");console.log("设置",t),this.setValue("callID",t),this.getMuteState(t),this.getMuteVideoState(t)},getMuteState:function(e){u["a"].rtcGetMuteState(e)?(console.log("非静音,本地声音状态打开"),document.getElementById("mute_off_status").setAttribute("hidden","hidden"),document.getElementById("mute_on_status").removeAttribute("hidden")):(console.log("静音,本地声音状态关闭"),document.getElementById("mute_off_status").removeAttribute("hidden"),document.getElementById("mute_on_status").setAttribute("hidden","hidden"))},getMuteVideoState:function(e){u["a"].rtcGetMuteVideoState(e)?(console.log("非静音,本地视频状态打开"),document.getElementById("mute_video_off_status").setAttribute("hidden","hidden"),document.getElementById("mute_video_on_status").removeAttribute("hidden")):(console.log("静音,本地视频状态关闭"),document.getElementById("mute_video_off_status").removeAttribute("hidden"),document.getElementById("mute_video_on_status").setAttribute("hidden","hidden"))},callHoldUnhold:function(e){e?u["a"].rtcHoldUnhold(e):alert("未选择callID")},callMuteUnmute:function(e){e?(u["a"].rtcMuteUnmute(e),this.getMuteState(e)):alert("未选择callID")},callMuteUnmuteVideo:function(e){e?(u["a"].rtcMuteUnmuteVideo(e),this.getMuteVideoState(e)):alert("未选择callID")},callHangup:function(e){e?(u["a"].rtcHangup(e),alert("callID",e)):alert("未选择callID")},callHangupAll:function(){u["a"].rtcHangupAll()},callDtmf:function(e,t){e?u["a"].rtcDtmf(e,t):alert("未选择callID")}}},p=d,f=(n("80d9"),n("2877")),h=Object(f["a"])(p,c,l,!1,null,"64e72ecc",null),m=h.exports,v={name:"app",components:{HelloWorld:m}},g=v,y=(n("034f"),Object(f["a"])(g,a,s,!1,null,null,null)),b=y.exports;r["default"].config.productionTip=!1,r["default"].use(i.a),new r["default"]({render:function(e){return e(b)}}).$mount("#app")},"64a9":function(e,t,n){},"80d9":function(e,t,n){"use strict";var r=n("5520"),o=n.n(r);o.a}});
- //# sourceMappingURL=app.5dc8972b.js.map
|