diff --git a/priv/static/_assets/app.js b/priv/static/_assets/app.js
index 238a67f..bf4fd8c 100644
--- a/priv/static/_assets/app.js
+++ b/priv/static/_assets/app.js
@@ -1,23 +1,15391 @@
-(()=>{var xc=Object.create;var fn=Object.defineProperty,Nc=Object.defineProperties,Oc=Object.getOwnPropertyDescriptor,Dc=Object.getOwnPropertyDescriptors,Lc=Object.getOwnPropertyNames,ra=Object.getOwnPropertySymbols,Pc=Object.getPrototypeOf,sa=Object.prototype.hasOwnProperty,kc=Object.prototype.propertyIsEnumerable;var oa=(t,e,i)=>e in t?fn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,re=(t,e)=>{for(var i in e||(e={}))sa.call(e,i)&&oa(t,i,e[i]);if(ra)for(var i of ra(e))kc.call(e,i)&&oa(t,i,e[i]);return t},fr=(t,e)=>Nc(t,Dc(e)),aa=t=>fn(t,"__esModule",{value:!0});var la=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ic=(t,e)=>{aa(t);for(var i in e)fn(t,i,{get:e[i],enumerable:!0})},Rc=(t,e,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Lc(e))!sa.call(t,s)&&s!=="default"&&fn(t,s,{get:()=>e[s],enumerable:!(i=Oc(e,s))||i.enumerable});return t},ua=t=>Rc(aa(fn(t!=null?xc(Pc(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var fa=la((ca,hr)=>{(function(t,e){"use strict";typeof hr=="object"&&typeof hr.exports=="object"?hr.exports=t.document?e(t,!0):function(i){if(!i.document)throw new Error("jQuery requires a window with a document");return e(i)}:e(t)})(typeof window!="undefined"?window:ca,function(t,e){"use strict";var i=[],s=Object.getPrototypeOf,a=i.slice,c=i.flat?function(n){return i.flat.call(n)}:function(n){return i.concat.apply([],n)},d=i.push,m=i.indexOf,E={},x=E.toString,w=E.hasOwnProperty,I=w.toString,L=I.call(Object),k={},D=function(r){return typeof r=="function"&&typeof r.nodeType!="number"&&typeof r.item!="function"},U=function(r){return r!=null&&r===r.window},F=t.document,M={type:!0,src:!0,nonce:!0,noModule:!0};function K(n,r,o){o=o||F;var l,f,h=o.createElement("script");if(h.text=n,r)for(l in M)f=r[l]||r.getAttribute&&r.getAttribute(l),f&&h.setAttribute(l,f);o.head.appendChild(h).parentNode.removeChild(h)}function ae(n){return n==null?n+"":typeof n=="object"||typeof n=="function"?E[x.call(n)]||"object":typeof n}var se="3.6.0",u=function(n,r){return new u.fn.init(n,r)};u.fn=u.prototype={jquery:se,constructor:u,length:0,toArray:function(){return a.call(this)},get:function(n){return n==null?a.call(this):n<0?this[n+this.length]:this[n]},pushStack:function(n){var r=u.merge(this.constructor(),n);return r.prevObject=this,r},each:function(n){return u.each(this,n)},map:function(n){return this.pushStack(u.map(this,function(r,o){return n.call(r,o,r)}))},slice:function(){return this.pushStack(a.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(u.grep(this,function(n,r){return(r+1)%2}))},odd:function(){return this.pushStack(u.grep(this,function(n,r){return r%2}))},eq:function(n){var r=this.length,o=+n+(n<0?r:0);return this.pushStack(o>=0&&o<r?[this[o]]:[])},end:function(){return this.prevObject||this.constructor()},push:d,sort:i.sort,splice:i.splice},u.extend=u.fn.extend=function(){var n,r,o,l,f,h,p=arguments[0]||{},_=1,y=arguments.length,T=!1;for(typeof p=="boolean"&&(T=p,p=arguments[_]||{},_++),typeof p!="object"&&!D(p)&&(p={}),_===y&&(p=this,_--);_<y;_++)if((n=arguments[_])!=null)for(r in n)l=n[r],!(r==="__proto__"||p===l)&&(T&&l&&(u.isPlainObject(l)||(f=Array.isArray(l)))?(o=p[r],f&&!Array.isArray(o)?h=[]:!f&&!u.isPlainObject(o)?h={}:h=o,f=!1,p[r]=u.extend(T,h,l)):l!==void 0&&(p[r]=l));return p},u.extend({expando:"jQuery"+(se+Math.random()).replace(/\D/g,""),isReady:!0,error:function(n){throw new Error(n)},noop:function(){},isPlainObject:function(n){var r,o;return!n||x.call(n)!=="[object Object]"?!1:(r=s(n),r?(o=w.call(r,"constructor")&&r.constructor,typeof o=="function"&&I.call(o)===L):!0)},isEmptyObject:function(n){var r;for(r in n)return!1;return!0},globalEval:function(n,r,o){K(n,{nonce:r&&r.nonce},o)},each:function(n,r){var o,l=0;if(de(n))for(o=n.length;l<o&&r.call(n[l],l,n[l])!==!1;l++);else for(l in n)if(r.call(n[l],l,n[l])===!1)break;return n},makeArray:function(n,r){var o=r||[];return n!=null&&(de(Object(n))?u.merge(o,typeof n=="string"?[n]:n):d.call(o,n)),o},inArray:function(n,r,o){return r==null?-1:m.call(r,n,o)},merge:function(n,r){for(var o=+r.length,l=0,f=n.length;l<o;l++)n[f++]=r[l];return n.length=f,n},grep:function(n,r,o){for(var l,f=[],h=0,p=n.length,_=!o;h<p;h++)l=!r(n[h],h),l!==_&&f.push(n[h]);return f},map:function(n,r,o){var l,f,h=0,p=[];if(de(n))for(l=n.length;h<l;h++)f=r(n[h],h,o),f!=null&&p.push(f);else for(h in n)f=r(n[h],h,o),f!=null&&p.push(f);return c(p)},guid:1,support:k}),typeof Symbol=="function"&&(u.fn[Symbol.iterator]=i[Symbol.iterator]),u.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(n,r){E["[object "+r+"]"]=r.toLowerCase()});function de(n){var r=!!n&&"length"in n&&n.length,o=ae(n);return D(n)||U(n)?!1:o==="array"||r===0||typeof r=="number"&&r>0&&r-1 in n}var ue=function(n){var r,o,l,f,h,p,_,y,T,S,R,C,N,W,ne,q,ke,De,nt,me="sizzle"+1*new Date,ie=n.document,Qe=0,he=0,be=ar(),an=ar(),rr=ar(),rt=ar(),ui=function(g,v){return g===v&&(R=!0),0},ci={}.hasOwnProperty,Ze=[],zt=Ze.pop,gt=Ze.push,Xt=Ze.push,Yo=Ze.slice,fi=function(g,v){for(var b=0,O=g.length;b<O;b++)if(g[b]===v)return b;return-1},fs="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",pe="[\\x20\\t\\r\\n\\f]",hi="(?:\\\\[\\da-fA-F]{1,6}"+pe+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",Go="\\["+pe+"*("+hi+")(?:"+pe+"*([*^$|!~]?=)"+pe+`*(?:'((?:\\\\.|[^\\\\'])*)'|"((?:\\\\.|[^\\\\"])*)"|(`+hi+"))|)"+pe+"*\\]",hs=":("+hi+`)(?:\\((('((?:\\\\.|[^\\\\'])*)'|"((?:\\\\.|[^\\\\"])*)")|((?:\\\\.|[^\\\\()[\\]]|`+Go+")*)|.*)\\)|)",dc=new RegExp(pe+"+","g"),sr=new RegExp("^"+pe+"+|((?:^|[^\\\\])(?:\\\\.)*)"+pe+"+$","g"),pc=new RegExp("^"+pe+"*,"+pe+"*"),Jo=new RegExp("^"+pe+"*([>+~]|"+pe+")"+pe+"*"),gc=new RegExp(pe+"|>"),mc=new RegExp(hs),vc=new RegExp("^"+hi+"$"),or={ID:new RegExp("^#("+hi+")"),CLASS:new RegExp("^\\.("+hi+")"),TAG:new RegExp("^("+hi+"|[*])"),ATTR:new RegExp("^"+Go),PSEUDO:new RegExp("^"+hs),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+pe+"*(even|odd|(([+-]|)(\\d*)n|)"+pe+"*(?:([+-]|)"+pe+"*(\\d+)|))"+pe+"*\\)|)","i"),bool:new RegExp("^(?:"+fs+")$","i"),needsContext:new RegExp("^"+pe+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+pe+"*((?:-\\d)?\\d*)"+pe+"*\\)|)(?=[^-]|$)","i")},_c=/HTML$/i,yc=/^(?:input|select|textarea|button)$/i,Ec=/^h\d$/i,ln=/^[^{]+\{\s*\[native \w/,bc=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ds=/[+~]/,Mt=new RegExp("\\\\[\\da-fA-F]{1,6}"+pe+"?|\\\\([^\\r\\n\\f])","g"),Ht=function(g,v){var b="0x"+g.slice(1)-65536;return v||(b<0?String.fromCharCode(b+65536):String.fromCharCode(b>>10|55296,b&1023|56320))},Qo=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,Zo=function(g,v){return v?g==="\0"?"\uFFFD":g.slice(0,-1)+"\\"+g.charCodeAt(g.length-1).toString(16)+" ":"\\"+g},ea=function(){C()},Tc=ur(function(g){return g.disabled===!0&&g.nodeName.toLowerCase()==="fieldset"},{dir:"parentNode",next:"legend"});try{Xt.apply(Ze=Yo.call(ie.childNodes),ie.childNodes),Ze[ie.childNodes.length].nodeType}catch(g){Xt={apply:Ze.length?function(v,b){gt.apply(v,Yo.call(b))}:function(v,b){for(var O=v.length,A=0;v[O++]=b[A++];);v.length=O-1}}}function ve(g,v,b,O){var A,P,j,H,V,G,z,Q=v&&v.ownerDocument,le=v?v.nodeType:9;if(b=b||[],typeof g!="string"||!g||le!==1&&le!==9&&le!==11)return b;if(!O&&(C(v),v=v||N,ne)){if(le!==11&&(V=bc.exec(g)))if(A=V[1]){if(le===9)if(j=v.getElementById(A)){if(j.id===A)return b.push(j),b}else return b;else if(Q&&(j=Q.getElementById(A))&&nt(v,j)&&j.id===A)return b.push(j),b}else{if(V[2])return Xt.apply(b,v.getElementsByTagName(g)),b;if((A=V[3])&&o.getElementsByClassName&&v.getElementsByClassName)return Xt.apply(b,v.getElementsByClassName(A)),b}if(o.qsa&&!rt[g+" "]&&(!q||!q.test(g))&&(le!==1||v.nodeName.toLowerCase()!=="object")){if(z=g,Q=v,le===1&&(gc.test(g)||Jo.test(g))){for(Q=ds.test(g)&&gs(v.parentNode)||v,(Q!==v||!o.scope)&&((H=v.getAttribute("id"))?H=H.replace(Qo,Zo):v.setAttribute("id",H=me)),G=p(g),P=G.length;P--;)G[P]=(H?"#"+H:":scope")+" "+lr(G[P]);z=G.join(",")}try{return Xt.apply(b,Q.querySelectorAll(z)),b}catch(_e){rt(g,!0)}finally{H===me&&v.removeAttribute("id")}}}return y(g.replace(sr,"$1"),v,b,O)}function ar(){var g=[];function v(b,O){return g.push(b+" ")>l.cacheLength&&delete v[g.shift()],v[b+" "]=O}return v}function Ct(g){return g[me]=!0,g}function St(g){var v=N.createElement("fieldset");try{return!!g(v)}catch(b){return!1}finally{v.parentNode&&v.parentNode.removeChild(v),v=null}}function ps(g,v){for(var b=g.split("|"),O=b.length;O--;)l.attrHandle[b[O]]=v}function ta(g,v){var b=v&&g,O=b&&g.nodeType===1&&v.nodeType===1&&g.sourceIndex-v.sourceIndex;if(O)return O;if(b){for(;b=b.nextSibling;)if(b===v)return-1}return g?1:-1}function Ac(g){return function(v){var b=v.nodeName.toLowerCase();return b==="input"&&v.type===g}}function wc(g){return function(v){var b=v.nodeName.toLowerCase();return(b==="input"||b==="button")&&v.type===g}}function ia(g){return function(v){return"form"in v?v.parentNode&&v.disabled===!1?"label"in v?"label"in v.parentNode?v.parentNode.disabled===g:v.disabled===g:v.isDisabled===g||v.isDisabled!==!g&&Tc(v)===g:v.disabled===g:"label"in v?v.disabled===g:!1}}function di(g){return Ct(function(v){return v=+v,Ct(function(b,O){for(var A,P=g([],b.length,v),j=P.length;j--;)b[A=P[j]]&&(b[A]=!(O[A]=b[A]))})})}function gs(g){return g&&typeof g.getElementsByTagName!="undefined"&&g}o=ve.support={},h=ve.isXML=function(g){var v=g&&g.namespaceURI,b=g&&(g.ownerDocument||g).documentElement;return!_c.test(v||b&&b.nodeName||"HTML")},C=ve.setDocument=function(g){var v,b,O=g?g.ownerDocument||g:ie;return O==N||O.nodeType!==9||!O.documentElement||(N=O,W=N.documentElement,ne=!h(N),ie!=N&&(b=N.defaultView)&&b.top!==b&&(b.addEventListener?b.addEventListener("unload",ea,!1):b.attachEvent&&b.attachEvent("onunload",ea)),o.scope=St(function(A){return W.appendChild(A).appendChild(N.createElement("div")),typeof A.querySelectorAll!="undefined"&&!A.querySelectorAll(":scope fieldset div").length}),o.attributes=St(function(A){return A.className="i",!A.getAttribute("className")}),o.getElementsByTagName=St(function(A){return A.appendChild(N.createComment("")),!A.getElementsByTagName("*").length}),o.getElementsByClassName=ln.test(N.getElementsByClassName),o.getById=St(function(A){return W.appendChild(A).id=me,!N.getElementsByName||!N.getElementsByName(me).length}),o.getById?(l.filter.ID=function(A){var P=A.replace(Mt,Ht);return function(j){return j.getAttribute("id")===P}},l.find.ID=function(A,P){if(typeof P.getElementById!="undefined"&&ne){var j=P.getElementById(A);return j?[j]:[]}}):(l.filter.ID=function(A){var P=A.replace(Mt,Ht);return function(j){var H=typeof j.getAttributeNode!="undefined"&&j.getAttributeNode("id");return H&&H.value===P}},l.find.ID=function(A,P){if(typeof P.getElementById!="undefined"&&ne){var j,H,V,G=P.getElementById(A);if(G){if(j=G.getAttributeNode("id"),j&&j.value===A)return[G];for(V=P.getElementsByName(A),H=0;G=V[H++];)if(j=G.getAttributeNode("id"),j&&j.value===A)return[G]}return[]}}),l.find.TAG=o.getElementsByTagName?function(A,P){if(typeof P.getElementsByTagName!="undefined")return P.getElementsByTagName(A);if(o.qsa)return P.querySelectorAll(A)}:function(A,P){var j,H=[],V=0,G=P.getElementsByTagName(A);if(A==="*"){for(;j=G[V++];)j.nodeType===1&&H.push(j);return H}return G},l.find.CLASS=o.getElementsByClassName&&function(A,P){if(typeof P.getElementsByClassName!="undefined"&&ne)return P.getElementsByClassName(A)},ke=[],q=[],(o.qsa=ln.test(N.querySelectorAll))&&(St(function(A){var P;W.appendChild(A).innerHTML="<a id='"+me+"'></a><select id='"+me+"-\r\\' msallowcapture=''><option selected=''></option></select>",A.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+pe+`*(?:''|"")`),A.querySelectorAll("[selected]").length||q.push("\\["+pe+"*(?:value|"+fs+")"),A.querySelectorAll("[id~="+me+"-]").length||q.push("~="),P=N.createElement("input"),P.setAttribute("name",""),A.appendChild(P),A.querySelectorAll("[name='']").length||q.push("\\["+pe+"*name"+pe+"*="+pe+`*(?:''|"")`),A.querySelectorAll(":checked").length||q.push(":checked"),A.querySelectorAll("a#"+me+"+*").length||q.push(".#.+[+~]"),A.querySelectorAll("\\\f"),q.push("[\\r\\n\\f]")}),St(function(A){A.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var P=N.createElement("input");P.setAttribute("type","hidden"),A.appendChild(P).setAttribute("name","D"),A.querySelectorAll("[name=d]").length&&q.push("name"+pe+"*[*^$|!~]?="),A.querySelectorAll(":enabled").length!==2&&q.push(":enabled",":disabled"),W.appendChild(A).disabled=!0,A.querySelectorAll(":disabled").length!==2&&q.push(":enabled",":disabled"),A.querySelectorAll("*,:x"),q.push(",.*:")})),(o.matchesSelector=ln.test(De=W.matches||W.webkitMatchesSelector||W.mozMatchesSelector||W.oMatchesSelector||W.msMatchesSelector))&&St(function(A){o.disconnectedMatch=De.call(A,"*"),De.call(A,"[s!='']:x"),ke.push("!=",hs)}),q=q.length&&new RegExp(q.join("|")),ke=ke.length&&new RegExp(ke.join("|")),v=ln.test(W.compareDocumentPosition),nt=v||ln.test(W.contains)?function(A,P){var j=A.nodeType===9?A.documentElement:A,H=P&&P.parentNode;return A===H||!!(H&&H.nodeType===1&&(j.contains?j.contains(H):A.compareDocumentPosition&&A.compareDocumentPosition(H)&16))}:function(A,P){if(P){for(;P=P.parentNode;)if(P===A)return!0}return!1},ui=v?function(A,P){if(A===P)return R=!0,0;var j=!A.compareDocumentPosition-!P.compareDocumentPosition;return j||(j=(A.ownerDocument||A)==(P.ownerDocument||P)?A.compareDocumentPosition(P):1,j&1||!o.sortDetached&&P.compareDocumentPosition(A)===j?A==N||A.ownerDocument==ie&&nt(ie,A)?-1:P==N||P.ownerDocument==ie&&nt(ie,P)?1:S?fi(S,A)-fi(S,P):0:j&4?-1:1)}:function(A,P){if(A===P)return R=!0,0;var j,H=0,V=A.parentNode,G=P.parentNode,z=[A],Q=[P];if(!V||!G)return A==N?-1:P==N?1:V?-1:G?1:S?fi(S,A)-fi(S,P):0;if(V===G)return ta(A,P);for(j=A;j=j.parentNode;)z.unshift(j);for(j=P;j=j.parentNode;)Q.unshift(j);for(;z[H]===Q[H];)H++;return H?ta(z[H],Q[H]):z[H]==ie?-1:Q[H]==ie?1:0}),N},ve.matches=function(g,v){return ve(g,null,null,v)},ve.matchesSelector=function(g,v){if(C(g),o.matchesSelector&&ne&&!rt[v+" "]&&(!ke||!ke.test(v))&&(!q||!q.test(v)))try{var b=De.call(g,v);if(b||o.disconnectedMatch||g.document&&g.document.nodeType!==11)return b}catch(O){rt(v,!0)}return ve(v,N,null,[g]).length>0},ve.contains=function(g,v){return(g.ownerDocument||g)!=N&&C(g),nt(g,v)},ve.attr=function(g,v){(g.ownerDocument||g)!=N&&C(g);var b=l.attrHandle[v.toLowerCase()],O=b&&ci.call(l.attrHandle,v.toLowerCase())?b(g,v,!ne):void 0;return O!==void 0?O:o.attributes||!ne?g.getAttribute(v):(O=g.getAttributeNode(v))&&O.specified?O.value:null},ve.escape=function(g){return(g+"").replace(Qo,Zo)},ve.error=function(g){throw new Error("Syntax error, unrecognized expression: "+g)},ve.uniqueSort=function(g){var v,b=[],O=0,A=0;if(R=!o.detectDuplicates,S=!o.sortStable&&g.slice(0),g.sort(ui),R){for(;v=g[A++];)v===g[A]&&(O=b.push(A));for(;O--;)g.splice(b[O],1)}return S=null,g},f=ve.getText=function(g){var v,b="",O=0,A=g.nodeType;if(A){if(A===1||A===9||A===11){if(typeof g.textContent=="string")return g.textContent;for(g=g.firstChild;g;g=g.nextSibling)b+=f(g)}else if(A===3||A===4)return g.nodeValue}else for(;v=g[O++];)b+=f(v);return b},l=ve.selectors={cacheLength:50,createPseudo:Ct,match:or,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(g){return g[1]=g[1].replace(Mt,Ht),g[3]=(g[3]||g[4]||g[5]||"").replace(Mt,Ht),g[2]==="~="&&(g[3]=" "+g[3]+" "),g.slice(0,4)},CHILD:function(g){return g[1]=g[1].toLowerCase(),g[1].slice(0,3)==="nth"?(g[3]||ve.error(g[0]),g[4]=+(g[4]?g[5]+(g[6]||1):2*(g[3]==="even"||g[3]==="odd")),g[5]=+(g[7]+g[8]||g[3]==="odd")):g[3]&&ve.error(g[0]),g},PSEUDO:function(g){var v,b=!g[6]&&g[2];return or.CHILD.test(g[0])?null:(g[3]?g[2]=g[4]||g[5]||"":b&&mc.test(b)&&(v=p(b,!0))&&(v=b.indexOf(")",b.length-v)-b.length)&&(g[0]=g[0].slice(0,v),g[2]=b.slice(0,v)),g.slice(0,3))}},filter:{TAG:function(g){var v=g.replace(Mt,Ht).toLowerCase();return g==="*"?function(){return!0}:function(b){return b.nodeName&&b.nodeName.toLowerCase()===v}},CLASS:function(g){var v=be[g+" "];return v||(v=new RegExp("(^|"+pe+")"+g+"("+pe+"|$)"))&&be(g,function(b){return v.test(typeof b.className=="string"&&b.className||typeof b.getAttribute!="undefined"&&b.getAttribute("class")||"")})},ATTR:function(g,v,b){return function(O){var A=ve.attr(O,g);return A==null?v==="!=":v?(A+="",v==="="?A===b:v==="!="?A!==b:v==="^="?b&&A.indexOf(b)===0:v==="*="?b&&A.indexOf(b)>-1:v==="$="?b&&A.slice(-b.length)===b:v==="~="?(" "+A.replace(dc," ")+" ").indexOf(b)>-1:v==="|="?A===b||A.slice(0,b.length+1)===b+"-":!1):!0}},CHILD:function(g,v,b,O,A){var P=g.slice(0,3)!=="nth",j=g.slice(-4)!=="last",H=v==="of-type";return O===1&&A===0?function(V){return!!V.parentNode}:function(V,G,z){var Q,le,_e,J,Ie,We,st=P!==j?"nextSibling":"previousSibling",Ee=V.parentNode,un=H&&V.nodeName.toLowerCase(),cn=!z&&!H,ot=!1;if(Ee){if(P){for(;st;){for(J=V;J=J[st];)if(H?J.nodeName.toLowerCase()===un:J.nodeType===1)return!1;We=st=g==="only"&&!We&&"nextSibling"}return!0}if(We=[j?Ee.firstChild:Ee.lastChild],j&&cn){for(J=Ee,_e=J[me]||(J[me]={}),le=_e[J.uniqueID]||(_e[J.uniqueID]={}),Q=le[g]||[],Ie=Q[0]===Qe&&Q[1],ot=Ie&&Q[2],J=Ie&&Ee.childNodes[Ie];J=++Ie&&J&&J[st]||(ot=Ie=0)||We.pop();)if(J.nodeType===1&&++ot&&J===V){le[g]=[Qe,Ie,ot];break}}else if(cn&&(J=V,_e=J[me]||(J[me]={}),le=_e[J.uniqueID]||(_e[J.uniqueID]={}),Q=le[g]||[],Ie=Q[0]===Qe&&Q[1],ot=Ie),ot===!1)for(;(J=++Ie&&J&&J[st]||(ot=Ie=0)||We.pop())&&!((H?J.nodeName.toLowerCase()===un:J.nodeType===1)&&++ot&&(cn&&(_e=J[me]||(J[me]={}),le=_e[J.uniqueID]||(_e[J.uniqueID]={}),le[g]=[Qe,ot]),J===V)););return ot-=A,ot===O||ot%O==0&&ot/O>=0}}},PSEUDO:function(g,v){var b,O=l.pseudos[g]||l.setFilters[g.toLowerCase()]||ve.error("unsupported pseudo: "+g);return O[me]?O(v):O.length>1?(b=[g,g,"",v],l.setFilters.hasOwnProperty(g.toLowerCase())?Ct(function(A,P){for(var j,H=O(A,v),V=H.length;V--;)j=fi(A,H[V]),A[j]=!(P[j]=H[V])}):function(A){return O(A,0,b)}):O}},pseudos:{not:Ct(function(g){var v=[],b=[],O=_(g.replace(sr,"$1"));return O[me]?Ct(function(A,P,j,H){for(var V,G=O(A,null,H,[]),z=A.length;z--;)(V=G[z])&&(A[z]=!(P[z]=V))}):function(A,P,j){return v[0]=A,O(v,null,j,b),v[0]=null,!b.pop()}}),has:Ct(function(g){return function(v){return ve(g,v).length>0}}),contains:Ct(function(g){return g=g.replace(Mt,Ht),function(v){return(v.textContent||f(v)).indexOf(g)>-1}}),lang:Ct(function(g){return vc.test(g||"")||ve.error("unsupported lang: "+g),g=g.replace(Mt,Ht).toLowerCase(),function(v){var b;do if(b=ne?v.lang:v.getAttribute("xml:lang")||v.getAttribute("lang"))return b=b.toLowerCase(),b===g||b.indexOf(g+"-")===0;while((v=v.parentNode)&&v.nodeType===1);return!1}}),target:function(g){var v=n.location&&n.location.hash;return v&&v.slice(1)===g.id},root:function(g){return g===W},focus:function(g){return g===N.activeElement&&(!N.hasFocus||N.hasFocus())&&!!(g.type||g.href||~g.tabIndex)},enabled:ia(!1),disabled:ia(!0),checked:function(g){var v=g.nodeName.toLowerCase();return v==="input"&&!!g.checked||v==="option"&&!!g.selected},selected:function(g){return g.parentNode&&g.parentNode.selectedIndex,g.selected===!0},empty:function(g){for(g=g.firstChild;g;g=g.nextSibling)if(g.nodeType<6)return!1;return!0},parent:function(g){return!l.pseudos.empty(g)},header:function(g){return Ec.test(g.nodeName)},input:function(g){return yc.test(g.nodeName)},button:function(g){var v=g.nodeName.toLowerCase();return v==="input"&&g.type==="button"||v==="button"},text:function(g){var v;return g.nodeName.toLowerCase()==="input"&&g.type==="text"&&((v=g.getAttribute("type"))==null||v.toLowerCase()==="text")},first:di(function(){return[0]}),last:di(function(g,v){return[v-1]}),eq:di(function(g,v,b){return[b<0?b+v:b]}),even:di(function(g,v){for(var b=0;b<v;b+=2)g.push(b);return g}),odd:di(function(g,v){for(var b=1;b<v;b+=2)g.push(b);return g}),lt:di(function(g,v,b){for(var O=b<0?b+v:b>v?v:b;--O>=0;)g.push(O);return g}),gt:di(function(g,v,b){for(var O=b<0?b+v:b;++O<v;)g.push(O);return g})}},l.pseudos.nth=l.pseudos.eq;for(r in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})l.pseudos[r]=Ac(r);for(r in{submit:!0,reset:!0})l.pseudos[r]=wc(r);function na(){}na.prototype=l.filters=l.pseudos,l.setFilters=new na,p=ve.tokenize=function(g,v){var b,O,A,P,j,H,V,G=an[g+" "];if(G)return v?0:G.slice(0);for(j=g,H=[],V=l.preFilter;j;){(!b||(O=pc.exec(j)))&&(O&&(j=j.slice(O[0].length)||j),H.push(A=[])),b=!1,(O=Jo.exec(j))&&(b=O.shift(),A.push({value:b,type:O[0].replace(sr," ")}),j=j.slice(b.length));for(P in l.filter)(O=or[P].exec(j))&&(!V[P]||(O=V[P](O)))&&(b=O.shift(),A.push({value:b,type:P,matches:O}),j=j.slice(b.length));if(!b)break}return v?j.length:j?ve.error(g):an(g,H).slice(0)};function lr(g){for(var v=0,b=g.length,O="";v<b;v++)O+=g[v].value;return O}function ur(g,v,b){var O=v.dir,A=v.next,P=A||O,j=b&&P==="parentNode",H=he++;return v.first?function(V,G,z){for(;V=V[O];)if(V.nodeType===1||j)return g(V,G,z);return!1}:function(V,G,z){var Q,le,_e,J=[Qe,H];if(z){for(;V=V[O];)if((V.nodeType===1||j)&&g(V,G,z))return!0}else for(;V=V[O];)if(V.nodeType===1||j)if(_e=V[me]||(V[me]={}),le=_e[V.uniqueID]||(_e[V.uniqueID]={}),A&&A===V.nodeName.toLowerCase())V=V[O]||V;else{if((Q=le[P])&&Q[0]===Qe&&Q[1]===H)return J[2]=Q[2];if(le[P]=J,J[2]=g(V,G,z))return!0}return!1}}function ms(g){return g.length>1?function(v,b,O){for(var A=g.length;A--;)if(!g[A](v,b,O))return!1;return!0}:g[0]}function Cc(g,v,b){for(var O=0,A=v.length;O<A;O++)ve(g,v[O],b);return b}function cr(g,v,b,O,A){for(var P,j=[],H=0,V=g.length,G=v!=null;H<V;H++)(P=g[H])&&(!b||b(P,O,A))&&(j.push(P),G&&v.push(H));return j}function vs(g,v,b,O,A,P){return O&&!O[me]&&(O=vs(O)),A&&!A[me]&&(A=vs(A,P)),Ct(function(j,H,V,G){var z,Q,le,_e=[],J=[],Ie=H.length,We=j||Cc(v||"*",V.nodeType?[V]:V,[]),st=g&&(j||!v)?cr(We,_e,g,V,G):We,Ee=b?A||(j?g:Ie||O)?[]:H:st;if(b&&b(st,Ee,V,G),O)for(z=cr(Ee,J),O(z,[],V,G),Q=z.length;Q--;)(le=z[Q])&&(Ee[J[Q]]=!(st[J[Q]]=le));if(j){if(A||g){if(A){for(z=[],Q=Ee.length;Q--;)(le=Ee[Q])&&z.push(st[Q]=le);A(null,Ee=[],z,G)}for(Q=Ee.length;Q--;)(le=Ee[Q])&&(z=A?fi(j,le):_e[Q])>-1&&(j[z]=!(H[z]=le))}}else Ee=cr(Ee===H?Ee.splice(Ie,Ee.length):Ee),A?A(null,H,Ee,G):Xt.apply(H,Ee)})}function _s(g){for(var v,b,O,A=g.length,P=l.relative[g[0].type],j=P||l.relative[" "],H=P?1:0,V=ur(function(Q){return Q===v},j,!0),G=ur(function(Q){return fi(v,Q)>-1},j,!0),z=[function(Q,le,_e){var J=!P&&(_e||le!==T)||((v=le).nodeType?V(Q,le,_e):G(Q,le,_e));return v=null,J}];H<A;H++)if(b=l.relative[g[H].type])z=[ur(ms(z),b)];else{if(b=l.filter[g[H].type].apply(null,g[H].matches),b[me]){for(O=++H;O<A&&!l.relative[g[O].type];O++);return vs(H>1&&ms(z),H>1&&lr(g.slice(0,H-1).concat({value:g[H-2].type===" "?"*":""})).replace(sr,"$1"),b,H<O&&_s(g.slice(H,O)),O<A&&_s(g=g.slice(O)),O<A&&lr(g))}z.push(b)}return ms(z)}function Sc(g,v){var b=v.length>0,O=g.length>0,A=function(P,j,H,V,G){var z,Q,le,_e=0,J="0",Ie=P&&[],We=[],st=T,Ee=P||O&&l.find.TAG("*",G),un=Qe+=st==null?1:Math.random()||.1,cn=Ee.length;for(G&&(T=j==N||j||G);J!==cn&&(z=Ee[J])!=null;J++){if(O&&z){for(Q=0,!j&&z.ownerDocument!=N&&(C(z),H=!ne);le=g[Q++];)if(le(z,j||N,H)){V.push(z);break}G&&(Qe=un)}b&&((z=!le&&z)&&_e--,P&&Ie.push(z))}if(_e+=J,b&&J!==_e){for(Q=0;le=v[Q++];)le(Ie,We,j,H);if(P){if(_e>0)for(;J--;)Ie[J]||We[J]||(We[J]=zt.call(V));We=cr(We)}Xt.apply(V,We),G&&!P&&We.length>0&&_e+v.length>1&&ve.uniqueSort(V)}return G&&(Qe=un,T=st),Ie};return b?Ct(A):A}return _=ve.compile=function(g,v){var b,O=[],A=[],P=rr[g+" "];if(!P){for(v||(v=p(g)),b=v.length;b--;)P=_s(v[b]),P[me]?O.push(P):A.push(P);P=rr(g,Sc(A,O)),P.selector=g}return P},y=ve.select=function(g,v,b,O){var A,P,j,H,V,G=typeof g=="function"&&g,z=!O&&p(g=G.selector||g);if(b=b||[],z.length===1){if(P=z[0]=z[0].slice(0),P.length>2&&(j=P[0]).type==="ID"&&v.nodeType===9&&ne&&l.relative[P[1].type]){if(v=(l.find.ID(j.matches[0].replace(Mt,Ht),v)||[])[0],v)G&&(v=v.parentNode);else return b;g=g.slice(P.shift().value.length)}for(A=or.needsContext.test(g)?0:P.length;A--&&(j=P[A],!l.relative[H=j.type]);)if((V=l.find[H])&&(O=V(j.matches[0].replace(Mt,Ht),ds.test(P[0].type)&&gs(v.parentNode)||v))){if(P.splice(A,1),g=O.length&&lr(P),!g)return Xt.apply(b,O),b;break}}return(G||_(g,z))(O,v,!ne,b,!v||ds.test(g)&&gs(v.parentNode)||v),b},o.sortStable=me.split("").sort(ui).join("")===me,o.detectDuplicates=!!R,C(),o.sortDetached=St(function(g){return g.compareDocumentPosition(N.createElement("fieldset"))&1}),St(function(g){return g.innerHTML="<a href='#'></a>",g.firstChild.getAttribute("href")==="#"})||ps("type|href|height|width",function(g,v,b){if(!b)return g.getAttribute(v,v.toLowerCase()==="type"?1:2)}),(!o.attributes||!St(function(g){return g.innerHTML="<input/>",g.firstChild.setAttribute("value",""),g.firstChild.getAttribute("value")===""}))&&ps("value",function(g,v,b){if(!b&&g.nodeName.toLowerCase()==="input")return g.defaultValue}),St(function(g){return g.getAttribute("disabled")==null})||ps(fs,function(g,v,b){var O;if(!b)return g[v]===!0?v.toLowerCase():(O=g.getAttributeNode(v))&&O.specified?O.value:null}),ve}(t);u.find=ue,u.expr=ue.selectors,u.expr[":"]=u.expr.pseudos,u.uniqueSort=u.unique=ue.uniqueSort,u.text=ue.getText,u.isXMLDoc=ue.isXML,u.contains=ue.contains,u.escapeSelector=ue.escape;var ge=function(n,r,o){for(var l=[],f=o!==void 0;(n=n[r])&&n.nodeType!==9;)if(n.nodeType===1){if(f&&u(n).is(o))break;l.push(n)}return l},oe=function(n,r){for(var o=[];n;n=n.nextSibling)n.nodeType===1&&n!==r&&o.push(n);return o},Ne=u.expr.match.needsContext;function ce(n,r){return n.nodeName&&n.nodeName.toLowerCase()===r.toLowerCase()}var Ve=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function Oe(n,r,o){return D(r)?u.grep(n,function(l,f){return!!r.call(l,f,l)!==o}):r.nodeType?u.grep(n,function(l){return l===r!==o}):typeof r!="string"?u.grep(n,function(l){return m.call(r,l)>-1!==o}):u.filter(r,n,o)}u.filter=function(n,r,o){var l=r[0];return o&&(n=":not("+n+")"),r.length===1&&l.nodeType===1?u.find.matchesSelector(l,n)?[l]:[]:u.find.matches(n,u.grep(r,function(f){return f.nodeType===1}))},u.fn.extend({find:function(n){var r,o,l=this.length,f=this;if(typeof n!="string")return this.pushStack(u(n).filter(function(){for(r=0;r<l;r++)if(u.contains(f[r],this))return!0}));for(o=this.pushStack([]),r=0;r<l;r++)u.find(n,f[r],o);return l>1?u.uniqueSort(o):o},filter:function(n){return this.pushStack(Oe(this,n||[],!1))},not:function(n){return this.pushStack(Oe(this,n||[],!0))},is:function(n){return!!Oe(this,typeof n=="string"&&Ne.test(n)?u(n):n||[],!1).length}});var ft,te=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,Z=u.fn.init=function(n,r,o){var l,f;if(!n)return this;if(o=o||ft,typeof n=="string")if(n[0]==="<"&&n[n.length-1]===">"&&n.length>=3?l=[null,n,null]:l=te.exec(n),l&&(l[1]||!r))if(l[1]){if(r=r instanceof u?r[0]:r,u.merge(this,u.parseHTML(l[1],r&&r.nodeType?r.ownerDocument||r:F,!0)),Ve.test(l[1])&&u.isPlainObject(r))for(l in r)D(this[l])?this[l](r[l]):this.attr(l,r[l]);return this}else return f=F.getElementById(l[2]),f&&(this[0]=f,this.length=1),this;else return!r||r.jquery?(r||o).find(n):this.constructor(r).find(n);else{if(n.nodeType)return this[0]=n,this.length=1,this;if(D(n))return o.ready!==void 0?o.ready(n):n(u)}return u.makeArray(n,this)};Z.prototype=u.fn,ft=u(F);var X=/^(?:parents|prev(?:Until|All))/,fe={children:!0,contents:!0,next:!0,prev:!0};u.fn.extend({has:function(n){var r=u(n,this),o=r.length;return this.filter(function(){for(var l=0;l<o;l++)if(u.contains(this,r[l]))return!0})},closest:function(n,r){var o,l=0,f=this.length,h=[],p=typeof n!="string"&&u(n);if(!Ne.test(n)){for(;l<f;l++)for(o=this[l];o&&o!==r;o=o.parentNode)if(o.nodeType<11&&(p?p.index(o)>-1:o.nodeType===1&&u.find.matchesSelector(o,n))){h.push(o);break}}return this.pushStack(h.length>1?u.uniqueSort(h):h)},index:function(n){return n?typeof n=="string"?m.call(u(n),this[0]):m.call(this,n.jquery?n[0]:n):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(n,r){return this.pushStack(u.uniqueSort(u.merge(this.get(),u(n,r))))},addBack:function(n){return this.add(n==null?this.prevObject:this.prevObject.filter(n))}});function Ae(n,r){for(;(n=n[r])&&n.nodeType!==1;);return n}u.each({parent:function(n){var r=n.parentNode;return r&&r.nodeType!==11?r:null},parents:function(n){return ge(n,"parentNode")},parentsUntil:function(n,r,o){return ge(n,"parentNode",o)},next:function(n){return Ae(n,"nextSibling")},prev:function(n){return Ae(n,"previousSibling")},nextAll:function(n){return ge(n,"nextSibling")},prevAll:function(n){return ge(n,"previousSibling")},nextUntil:function(n,r,o){return ge(n,"nextSibling",o)},prevUntil:function(n,r,o){return ge(n,"previousSibling",o)},siblings:function(n){return oe((n.parentNode||{}).firstChild,n)},children:function(n){return oe(n.firstChild)},contents:function(n){return n.contentDocument!=null&&s(n.contentDocument)?n.contentDocument:(ce(n,"template")&&(n=n.content||n),u.merge([],n.childNodes))}},function(n,r){u.fn[n]=function(o,l){var f=u.map(this,r,o);return n.slice(-5)!=="Until"&&(l=o),l&&typeof l=="string"&&(f=u.filter(l,f)),this.length>1&&(fe[n]||u.uniqueSort(f),X.test(n)&&f.reverse()),this.pushStack(f)}});var ye=/[^\x20\t\r\n\f]+/g;function ht(n){var r={};return u.each(n.match(ye)||[],function(o,l){r[l]=!0}),r}u.Callbacks=function(n){n=typeof n=="string"?ht(n):u.extend({},n);var r,o,l,f,h=[],p=[],_=-1,y=function(){for(f=f||n.once,l=r=!0;p.length;_=-1)for(o=p.shift();++_<h.length;)h[_].apply(o[0],o[1])===!1&&n.stopOnFalse&&(_=h.length,o=!1);n.memory||(o=!1),r=!1,f&&(o?h=[]:h="")},T={add:function(){return h&&(o&&!r&&(_=h.length-1,p.push(o)),function S(R){u.each(R,function(C,N){D(N)?(!n.unique||!T.has(N))&&h.push(N):N&&N.length&&ae(N)!=="string"&&S(N)})}(arguments),o&&!r&&y()),this},remove:function(){return u.each(arguments,function(S,R){for(var C;(C=u.inArray(R,h,C))>-1;)h.splice(C,1),C<=_&&_--}),this},has:function(S){return S?u.inArray(S,h)>-1:h.length>0},empty:function(){return h&&(h=[]),this},disable:function(){return f=p=[],h=o="",this},disabled:function(){return!h},lock:function(){return f=p=[],!o&&!r&&(h=o=""),this},locked:function(){return!!f},fireWith:function(S,R){return f||(R=R||[],R=[S,R.slice?R.slice():R],p.push(R),r||y()),this},fire:function(){return T.fireWith(this,arguments),this},fired:function(){return!!l}};return T};function Re(n){return n}function je(n){throw n}function ze(n,r,o,l){var f;try{n&&D(f=n.promise)?f.call(n).done(r).fail(o):n&&D(f=n.then)?f.call(n,r,o):r.apply(void 0,[n].slice(l))}catch(h){o.apply(void 0,[h])}}u.extend({Deferred:function(n){var r=[["notify","progress",u.Callbacks("memory"),u.Callbacks("memory"),2],["resolve","done",u.Callbacks("once memory"),u.Callbacks("once memory"),0,"resolved"],["reject","fail",u.Callbacks("once memory"),u.Callbacks("once memory"),1,"rejected"]],o="pending",l={state:function(){return o},always:function(){return f.done(arguments).fail(arguments),this},catch:function(h){return l.then(null,h)},pipe:function(){var h=arguments;return u.Deferred(function(p){u.each(r,function(_,y){var T=D(h[y[4]])&&h[y[4]];f[y[1]](function(){var S=T&&T.apply(this,arguments);S&&D(S.promise)?S.promise().progress(p.notify).done(p.resolve).fail(p.reject):p[y[0]+"With"](this,T?[S]:arguments)})}),h=null}).promise()},then:function(h,p,_){var y=0;function T(S,R,C,N){return function(){var W=this,ne=arguments,q=function(){var De,nt;if(!(S<y)){if(De=C.apply(W,ne),De===R.promise())throw new TypeError("Thenable self-resolution");nt=De&&(typeof De=="object"||typeof De=="function")&&De.then,D(nt)?N?nt.call(De,T(y,R,Re,N),T(y,R,je,N)):(y++,nt.call(De,T(y,R,Re,N),T(y,R,je,N),T(y,R,Re,R.notifyWith))):(C!==Re&&(W=void 0,ne=[De]),(N||R.resolveWith)(W,ne))}},ke=N?q:function(){try{q()}catch(De){u.Deferred.exceptionHook&&u.Deferred.exceptionHook(De,ke.stackTrace),S+1>=y&&(C!==je&&(W=void 0,ne=[De]),R.rejectWith(W,ne))}};S?ke():(u.Deferred.getStackHook&&(ke.stackTrace=u.Deferred.getStackHook()),t.setTimeout(ke))}}return u.Deferred(function(S){r[0][3].add(T(0,S,D(_)?_:Re,S.notifyWith)),r[1][3].add(T(0,S,D(h)?h:Re)),r[2][3].add(T(0,S,D(p)?p:je))}).promise()},promise:function(h){return h!=null?u.extend(h,l):l}},f={};return u.each(r,function(h,p){var _=p[2],y=p[5];l[p[1]]=_.add,y&&_.add(function(){o=y},r[3-h][2].disable,r[3-h][3].disable,r[0][2].lock,r[0][3].lock),_.add(p[3].fire),f[p[0]]=function(){return f[p[0]+"With"](this===f?void 0:this,arguments),this},f[p[0]+"With"]=_.fireWith}),l.promise(f),n&&n.call(f,f),f},when:function(n){var r=arguments.length,o=r,l=Array(o),f=a.call(arguments),h=u.Deferred(),p=function(_){return function(y){l[_]=this,f[_]=arguments.length>1?a.call(arguments):y,--r||h.resolveWith(l,f)}};if(r<=1&&(ze(n,h.done(p(o)).resolve,h.reject,!r),h.state()==="pending"||D(f[o]&&f[o].then)))return h.then();for(;o--;)ze(f[o],p(o),h.reject);return h.promise()}});var we=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;u.Deferred.exceptionHook=function(n,r){t.console&&t.console.warn&&n&&we.test(n.name)&&t.console.warn("jQuery.Deferred exception: "+n.message,n.stack,r)},u.readyException=function(n){t.setTimeout(function(){throw n})};var dt=u.Deferred();u.fn.ready=function(n){return dt.then(n).catch(function(r){u.readyException(r)}),this},u.extend({isReady:!1,readyWait:1,ready:function(n){(n===!0?--u.readyWait:u.isReady)||(u.isReady=!0,!(n!==!0&&--u.readyWait>0)&&dt.resolveWith(F,[u]))}}),u.ready.then=dt.then;function At(){F.removeEventListener("DOMContentLoaded",At),t.removeEventListener("load",At),u.ready()}F.readyState==="complete"||F.readyState!=="loading"&&!F.documentElement.doScroll?t.setTimeout(u.ready):(F.addEventListener("DOMContentLoaded",At),t.addEventListener("load",At));var Ue=function(n,r,o,l,f,h,p){var _=0,y=n.length,T=o==null;if(ae(o)==="object"){f=!0;for(_ in o)Ue(n,r,_,o[_],!0,h,p)}else if(l!==void 0&&(f=!0,D(l)||(p=!0),T&&(p?(r.call(n,l),r=null):(T=r,r=function(S,R,C){return T.call(u(S),C)})),r))for(;_<y;_++)r(n[_],o,p?l:l.call(n[_],_,r(n[_],o)));return f?n:T?r.call(n):y?r(n[0],o):h},Zi=/^-ms-/,Xn=/-([a-z])/g;function Yn(n,r){return r.toUpperCase()}function it(n){return n.replace(Zi,"ms-").replace(Xn,Yn)}var Kt=function(n){return n.nodeType===1||n.nodeType===9||!+n.nodeType};function si(){this.expando=u.expando+si.uid++}si.uid=1,si.prototype={cache:function(n){var r=n[this.expando];return r||(r={},Kt(n)&&(n.nodeType?n[this.expando]=r:Object.defineProperty(n,this.expando,{value:r,configurable:!0}))),r},set:function(n,r,o){var l,f=this.cache(n);if(typeof r=="string")f[it(r)]=o;else for(l in r)f[it(l)]=r[l];return f},get:function(n,r){return r===void 0?this.cache(n):n[this.expando]&&n[this.expando][it(r)]},access:function(n,r,o){return r===void 0||r&&typeof r=="string"&&o===void 0?this.get(n,r):(this.set(n,r,o),o!==void 0?o:r)},remove:function(n,r){var o,l=n[this.expando];if(l!==void 0){if(r!==void 0)for(Array.isArray(r)?r=r.map(it):(r=it(r),r=r in l?[r]:r.match(ye)||[]),o=r.length;o--;)delete l[r[o]];(r===void 0||u.isEmptyObject(l))&&(n.nodeType?n[this.expando]=void 0:delete n[this.expando])}},hasData:function(n){var r=n[this.expando];return r!==void 0&&!u.isEmptyObject(r)}};var Y=new si,Pe=new si,Gn=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Jn=/[A-Z]/g;function Qn(n){return n==="true"?!0:n==="false"?!1:n==="null"?null:n===+n+""?+n:Gn.test(n)?JSON.parse(n):n}function vo(n,r,o){var l;if(o===void 0&&n.nodeType===1)if(l="data-"+r.replace(Jn,"-$&").toLowerCase(),o=n.getAttribute(l),typeof o=="string"){try{o=Qn(o)}catch(f){}Pe.set(n,r,o)}else o=void 0;return o}u.extend({hasData:function(n){return Pe.hasData(n)||Y.hasData(n)},data:function(n,r,o){return Pe.access(n,r,o)},removeData:function(n,r){Pe.remove(n,r)},_data:function(n,r,o){return Y.access(n,r,o)},_removeData:function(n,r){Y.remove(n,r)}}),u.fn.extend({data:function(n,r){var o,l,f,h=this[0],p=h&&h.attributes;if(n===void 0){if(this.length&&(f=Pe.get(h),h.nodeType===1&&!Y.get(h,"hasDataAttrs"))){for(o=p.length;o--;)p[o]&&(l=p[o].name,l.indexOf("data-")===0&&(l=it(l.slice(5)),vo(h,l,f[l])));Y.set(h,"hasDataAttrs",!0)}return f}return typeof n=="object"?this.each(function(){Pe.set(this,n)}):Ue(this,function(_){var y;if(h&&_===void 0)return y=Pe.get(h,n),y!==void 0||(y=vo(h,n),y!==void 0)?y:void 0;this.each(function(){Pe.set(this,n,_)})},null,r,arguments.length>1,null,!0)},removeData:function(n){return this.each(function(){Pe.remove(this,n)})}}),u.extend({queue:function(n,r,o){var l;if(n)return r=(r||"fx")+"queue",l=Y.get(n,r),o&&(!l||Array.isArray(o)?l=Y.access(n,r,u.makeArray(o)):l.push(o)),l||[]},dequeue:function(n,r){r=r||"fx";var o=u.queue(n,r),l=o.length,f=o.shift(),h=u._queueHooks(n,r),p=function(){u.dequeue(n,r)};f==="inprogress"&&(f=o.shift(),l--),f&&(r==="fx"&&o.unshift("inprogress"),delete h.stop,f.call(n,p,h)),!l&&h&&h.empty.fire()},_queueHooks:function(n,r){var o=r+"queueHooks";return Y.get(n,o)||Y.access(n,o,{empty:u.Callbacks("once memory").add(function(){Y.remove(n,[r+"queue",o])})})}}),u.fn.extend({queue:function(n,r){var o=2;return typeof n!="string"&&(r=n,n="fx",o--),arguments.length<o?u.queue(this[0],n):r===void 0?this:this.each(function(){var l=u.queue(this,n,r);u._queueHooks(this,n),n==="fx"&&l[0]!=="inprogress"&&u.dequeue(this,n)})},dequeue:function(n){return this.each(function(){u.dequeue(this,n)})},clearQueue:function(n){return this.queue(n||"fx",[])},promise:function(n,r){var o,l=1,f=u.Deferred(),h=this,p=this.length,_=function(){--l||f.resolveWith(h,[h])};for(typeof n!="string"&&(r=n,n=void 0),n=n||"fx";p--;)o=Y.get(h[p],n+"queueHooks"),o&&o.empty&&(l++,o.empty.add(_));return _(),f.promise(r)}});var _o=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,en=new RegExp("^(?:([+-])=|)("+_o+")([a-z%]*)$","i"),$t=["Top","Right","Bottom","Left"],oi=F.documentElement,ji=function(n){return u.contains(n.ownerDocument,n)},Ou={composed:!0};oi.getRootNode&&(ji=function(n){return u.contains(n.ownerDocument,n)||n.getRootNode(Ou)===n.ownerDocument});var Zn=function(n,r){return n=r||n,n.style.display==="none"||n.style.display===""&&ji(n)&&u.css(n,"display")==="none"};function yo(n,r,o,l){var f,h,p=20,_=l?function(){return l.cur()}:function(){return u.css(n,r,"")},y=_(),T=o&&o[3]||(u.cssNumber[r]?"":"px"),S=n.nodeType&&(u.cssNumber[r]||T!=="px"&&+y)&&en.exec(u.css(n,r));if(S&&S[3]!==T){for(y=y/2,T=T||S[3],S=+y||1;p--;)u.style(n,r,S+T),(1-h)*(1-(h=_()/y||.5))<=0&&(p=0),S=S/h;S=S*2,u.style(n,r,S+T),o=o||[]}return o&&(S=+S||+y||0,f=o[1]?S+(o[1]+1)*o[2]:+o[2],l&&(l.unit=T,l.start=S,l.end=f)),f}var Eo={};function Du(n){var r,o=n.ownerDocument,l=n.nodeName,f=Eo[l];return f||(r=o.body.appendChild(o.createElement(l)),f=u.css(r,"display"),r.parentNode.removeChild(r),f==="none"&&(f="block"),Eo[l]=f,f)}function $i(n,r){for(var o,l,f=[],h=0,p=n.length;h<p;h++)l=n[h],!!l.style&&(o=l.style.display,r?(o==="none"&&(f[h]=Y.get(l,"display")||null,f[h]||(l.style.display="")),l.style.display===""&&Zn(l)&&(f[h]=Du(l))):o!=="none"&&(f[h]="none",Y.set(l,"display",o)));for(h=0;h<p;h++)f[h]!=null&&(n[h].style.display=f[h]);return n}u.fn.extend({show:function(){return $i(this,!0)},hide:function(){return $i(this)},toggle:function(n){return typeof n=="boolean"?n?this.show():this.hide():this.each(function(){Zn(this)?u(this).show():u(this).hide()})}});var tn=/^(?:checkbox|radio)$/i,bo=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,To=/^$|^module$|\/(?:java|ecma)script/i;(function(){var n=F.createDocumentFragment(),r=n.appendChild(F.createElement("div")),o=F.createElement("input");o.setAttribute("type","radio"),o.setAttribute("checked","checked"),o.setAttribute("name","t"),r.appendChild(o),k.checkClone=r.cloneNode(!0).cloneNode(!0).lastChild.checked,r.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!r.cloneNode(!0).lastChild.defaultValue,r.innerHTML="<option></option>",k.option=!!r.lastChild})();var pt={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,"",""]};pt.tbody=pt.tfoot=pt.colgroup=pt.caption=pt.thead,pt.th=pt.td,k.option||(pt.optgroup=pt.option=[1,"<select multiple='multiple'>","</select>"]);function Ge(n,r){var o;return typeof n.getElementsByTagName!="undefined"?o=n.getElementsByTagName(r||"*"):typeof n.querySelectorAll!="undefined"?o=n.querySelectorAll(r||"*"):o=[],r===void 0||r&&ce(n,r)?u.merge([n],o):o}function Qr(n,r){for(var o=0,l=n.length;o<l;o++)Y.set(n[o],"globalEval",!r||Y.get(r[o],"globalEval"))}var Lu=/<|&#?\w+;/;function Ao(n,r,o,l,f){for(var h,p,_,y,T,S,R=r.createDocumentFragment(),C=[],N=0,W=n.length;N<W;N++)if(h=n[N],h||h===0)if(ae(h)==="object")u.merge(C,h.nodeType?[h]:h);else if(!Lu.test(h))C.push(r.createTextNode(h));else{for(p=p||R.appendChild(r.createElement("div")),_=(bo.exec(h)||["",""])[1].toLowerCase(),y=pt[_]||pt._default,p.innerHTML=y[1]+u.htmlPrefilter(h)+y[2],S=y[0];S--;)p=p.lastChild;u.merge(C,p.childNodes),p=R.firstChild,p.textContent=""}for(R.textContent="",N=0;h=C[N++];){if(l&&u.inArray(h,l)>-1){f&&f.push(h);continue}if(T=ji(h),p=Ge(R.appendChild(h),"script"),T&&Qr(p),o)for(S=0;h=p[S++];)To.test(h.type||"")&&o.push(h)}return R}var wo=/^([^.]*)(?:\.(.+)|)/;function Mi(){return!0}function Hi(){return!1}function Pu(n,r){return n===ku()==(r==="focus")}function ku(){try{return F.activeElement}catch(n){}}function Zr(n,r,o,l,f,h){var p,_;if(typeof r=="object"){typeof o!="string"&&(l=l||o,o=void 0);for(_ in r)Zr(n,_,o,l,r[_],h);return n}if(l==null&&f==null?(f=o,l=o=void 0):f==null&&(typeof o=="string"?(f=l,l=void 0):(f=l,l=o,o=void 0)),f===!1)f=Hi;else if(!f)return n;return h===1&&(p=f,f=function(y){return u().off(y),p.apply(this,arguments)},f.guid=p.guid||(p.guid=u.guid++)),n.each(function(){u.event.add(this,r,f,l,o)})}u.event={global:{},add:function(n,r,o,l,f){var h,p,_,y,T,S,R,C,N,W,ne,q=Y.get(n);if(!!Kt(n))for(o.handler&&(h=o,o=h.handler,f=h.selector),f&&u.find.matchesSelector(oi,f),o.guid||(o.guid=u.guid++),(y=q.events)||(y=q.events=Object.create(null)),(p=q.handle)||(p=q.handle=function(ke){return typeof u!="undefined"&&u.event.triggered!==ke.type?u.event.dispatch.apply(n,arguments):void 0}),r=(r||"").match(ye)||[""],T=r.length;T--;)_=wo.exec(r[T])||[],N=ne=_[1],W=(_[2]||"").split(".").sort(),!!N&&(R=u.event.special[N]||{},N=(f?R.delegateType:R.bindType)||N,R=u.event.special[N]||{},S=u.extend({type:N,origType:ne,data:l,handler:o,guid:o.guid,selector:f,needsContext:f&&u.expr.match.needsContext.test(f),namespace:W.join(".")},h),(C=y[N])||(C=y[N]=[],C.delegateCount=0,(!R.setup||R.setup.call(n,l,W,p)===!1)&&n.addEventListener&&n.addEventListener(N,p)),R.add&&(R.add.call(n,S),S.handler.guid||(S.handler.guid=o.guid)),f?C.splice(C.delegateCount++,0,S):C.push(S),u.event.global[N]=!0)},remove:function(n,r,o,l,f){var h,p,_,y,T,S,R,C,N,W,ne,q=Y.hasData(n)&&Y.get(n);if(!(!q||!(y=q.events))){for(r=(r||"").match(ye)||[""],T=r.length;T--;){if(_=wo.exec(r[T])||[],N=ne=_[1],W=(_[2]||"").split(".").sort(),!N){for(N in y)u.event.remove(n,N+r[T],o,l,!0);continue}for(R=u.event.special[N]||{},N=(l?R.delegateType:R.bindType)||N,C=y[N]||[],_=_[2]&&new RegExp("(^|\\.)"+W.join("\\.(?:.*\\.|)")+"(\\.|$)"),p=h=C.length;h--;)S=C[h],(f||ne===S.origType)&&(!o||o.guid===S.guid)&&(!_||_.test(S.namespace))&&(!l||l===S.selector||l==="**"&&S.selector)&&(C.splice(h,1),S.selector&&C.delegateCount--,R.remove&&R.remove.call(n,S));p&&!C.length&&((!R.teardown||R.teardown.call(n,W,q.handle)===!1)&&u.removeEvent(n,N,q.handle),delete y[N])}u.isEmptyObject(y)&&Y.remove(n,"handle events")}},dispatch:function(n){var r,o,l,f,h,p,_=new Array(arguments.length),y=u.event.fix(n),T=(Y.get(this,"events")||Object.create(null))[y.type]||[],S=u.event.special[y.type]||{};for(_[0]=y,r=1;r<arguments.length;r++)_[r]=arguments[r];if(y.delegateTarget=this,!(S.preDispatch&&S.preDispatch.call(this,y)===!1)){for(p=u.event.handlers.call(this,y,T),r=0;(f=p[r++])&&!y.isPropagationStopped();)for(y.currentTarget=f.elem,o=0;(h=f.handlers[o++])&&!y.isImmediatePropagationStopped();)(!y.rnamespace||h.namespace===!1||y.rnamespace.test(h.namespace))&&(y.handleObj=h,y.data=h.data,l=((u.event.special[h.origType]||{}).handle||h.handler).apply(f.elem,_),l!==void 0&&(y.result=l)===!1&&(y.preventDefault(),y.stopPropagation()));return S.postDispatch&&S.postDispatch.call(this,y),y.result}},handlers:function(n,r){var o,l,f,h,p,_=[],y=r.delegateCount,T=n.target;if(y&&T.nodeType&&!(n.type==="click"&&n.button>=1)){for(;T!==this;T=T.parentNode||this)if(T.nodeType===1&&!(n.type==="click"&&T.disabled===!0)){for(h=[],p={},o=0;o<y;o++)l=r[o],f=l.selector+" ",p[f]===void 0&&(p[f]=l.needsContext?u(f,this).index(T)>-1:u.find(f,this,null,[T]).length),p[f]&&h.push(l);h.length&&_.push({elem:T,handlers:h})}}return T=this,y<r.length&&_.push({elem:T,handlers:r.slice(y)}),_},addProp:function(n,r){Object.defineProperty(u.Event.prototype,n,{enumerable:!0,configurable:!0,get:D(r)?function(){if(this.originalEvent)return r(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[n]},set:function(o){Object.defineProperty(this,n,{enumerable:!0,configurable:!0,writable:!0,value:o})}})},fix:function(n){return n[u.expando]?n:new u.Event(n)},special:{load:{noBubble:!0},click:{setup:function(n){var r=this||n;return tn.test(r.type)&&r.click&&ce(r,"input")&&er(r,"click",Mi),!1},trigger:function(n){var r=this||n;return tn.test(r.type)&&r.click&&ce(r,"input")&&er(r,"click"),!0},_default:function(n){var r=n.target;return tn.test(r.type)&&r.click&&ce(r,"input")&&Y.get(r,"click")||ce(r,"a")}},beforeunload:{postDispatch:function(n){n.result!==void 0&&n.originalEvent&&(n.originalEvent.returnValue=n.result)}}}};function er(n,r,o){if(!o){Y.get(n,r)===void 0&&u.event.add(n,r,Mi);return}Y.set(n,r,!1),u.event.add(n,r,{namespace:!1,handler:function(l){var f,h,p=Y.get(this,r);if(l.isTrigger&1&&this[r]){if(p.length)(u.event.special[r]||{}).delegateType&&l.stopPropagation();else if(p=a.call(arguments),Y.set(this,r,p),f=o(this,r),this[r](),h=Y.get(this,r),p!==h||f?Y.set(this,r,!1):h={},p!==h)return l.stopImmediatePropagation(),l.preventDefault(),h&&h.value}else p.length&&(Y.set(this,r,{value:u.event.trigger(u.extend(p[0],u.Event.prototype),p.slice(1),this)}),l.stopImmediatePropagation())}})}u.removeEvent=function(n,r,o){n.removeEventListener&&n.removeEventListener(r,o)},u.Event=function(n,r){if(!(this instanceof u.Event))return new u.Event(n,r);n&&n.type?(this.originalEvent=n,this.type=n.type,this.isDefaultPrevented=n.defaultPrevented||n.defaultPrevented===void 0&&n.returnValue===!1?Mi:Hi,this.target=n.target&&n.target.nodeType===3?n.target.parentNode:n.target,this.currentTarget=n.currentTarget,this.relatedTarget=n.relatedTarget):this.type=n,r&&u.extend(this,r),this.timeStamp=n&&n.timeStamp||Date.now(),this[u.expando]=!0},u.Event.prototype={constructor:u.Event,isDefaultPrevented:Hi,isPropagationStopped:Hi,isImmediatePropagationStopped:Hi,isSimulated:!1,preventDefault:function(){var n=this.originalEvent;this.isDefaultPrevented=Mi,n&&!this.isSimulated&&n.preventDefault()},stopPropagation:function(){var n=this.originalEvent;this.isPropagationStopped=Mi,n&&!this.isSimulated&&n.stopPropagation()},stopImmediatePropagation:function(){var n=this.originalEvent;this.isImmediatePropagationStopped=Mi,n&&!this.isSimulated&&n.stopImmediatePropagation(),this.stopPropagation()}},u.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},u.event.addProp),u.each({focus:"focusin",blur:"focusout"},function(n,r){u.event.special[n]={setup:function(){return er(this,n,Pu),!1},trigger:function(){return er(this,n),!0},_default:function(){return!0},delegateType:r}}),u.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(n,r){u.event.special[n]={delegateType:r,bindType:r,handle:function(o){var l,f=this,h=o.relatedTarget,p=o.handleObj;return(!h||h!==f&&!u.contains(f,h))&&(o.type=p.origType,l=p.handler.apply(this,arguments),o.type=r),l}}}),u.fn.extend({on:function(n,r,o,l){return Zr(this,n,r,o,l)},one:function(n,r,o,l){return Zr(this,n,r,o,l,1)},off:function(n,r,o){var l,f;if(n&&n.preventDefault&&n.handleObj)return l=n.handleObj,u(n.delegateTarget).off(l.namespace?l.origType+"."+l.namespace:l.origType,l.selector,l.handler),this;if(typeof n=="object"){for(f in n)this.off(f,r,n[f]);return this}return(r===!1||typeof r=="function")&&(o=r,r=void 0),o===!1&&(o=Hi),this.each(function(){u.event.remove(this,n,o,r)})}});var Iu=/<script|<style|<link/i,Ru=/checked\s*(?:[^=]|=\s*.checked.)/i,ju=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Co(n,r){return ce(n,"table")&&ce(r.nodeType!==11?r:r.firstChild,"tr")&&u(n).children("tbody")[0]||n}function $u(n){return n.type=(n.getAttribute("type")!==null)+"/"+n.type,n}function Mu(n){return(n.type||"").slice(0,5)==="true/"?n.type=n.type.slice(5):n.removeAttribute("type"),n}function So(n,r){var o,l,f,h,p,_,y;if(r.nodeType===1){if(Y.hasData(n)&&(h=Y.get(n),y=h.events,y)){Y.remove(r,"handle events");for(f in y)for(o=0,l=y[f].length;o<l;o++)u.event.add(r,f,y[f][o])}Pe.hasData(n)&&(p=Pe.access(n),_=u.extend({},p),Pe.set(r,_))}}function Hu(n,r){var o=r.nodeName.toLowerCase();o==="input"&&tn.test(n.type)?r.checked=n.checked:(o==="input"||o==="textarea")&&(r.defaultValue=n.defaultValue)}function Bi(n,r,o,l){r=c(r);var f,h,p,_,y,T,S=0,R=n.length,C=R-1,N=r[0],W=D(N);if(W||R>1&&typeof N=="string"&&!k.checkClone&&Ru.test(N))return n.each(function(ne){var q=n.eq(ne);W&&(r[0]=N.call(this,ne,q.html())),Bi(q,r,o,l)});if(R&&(f=Ao(r,n[0].ownerDocument,!1,n,l),h=f.firstChild,f.childNodes.length===1&&(f=h),h||l)){for(p=u.map(Ge(f,"script"),$u),_=p.length;S<R;S++)y=f,S!==C&&(y=u.clone(y,!0,!0),_&&u.merge(p,Ge(y,"script"))),o.call(n[S],y,S);if(_)for(T=p[p.length-1].ownerDocument,u.map(p,Mu),S=0;S<_;S++)y=p[S],To.test(y.type||"")&&!Y.access(y,"globalEval")&&u.contains(T,y)&&(y.src&&(y.type||"").toLowerCase()!=="module"?u._evalUrl&&!y.noModule&&u._evalUrl(y.src,{nonce:y.nonce||y.getAttribute("nonce")},T):K(y.textContent.replace(ju,""),y,T))}return n}function xo(n,r,o){for(var l,f=r?u.filter(r,n):n,h=0;(l=f[h])!=null;h++)!o&&l.nodeType===1&&u.cleanData(Ge(l)),l.parentNode&&(o&&ji(l)&&Qr(Ge(l,"script")),l.parentNode.removeChild(l));return n}u.extend({htmlPrefilter:function(n){return n},clone:function(n,r,o){var l,f,h,p,_=n.cloneNode(!0),y=ji(n);if(!k.noCloneChecked&&(n.nodeType===1||n.nodeType===11)&&!u.isXMLDoc(n))for(p=Ge(_),h=Ge(n),l=0,f=h.length;l<f;l++)Hu(h[l],p[l]);if(r)if(o)for(h=h||Ge(n),p=p||Ge(_),l=0,f=h.length;l<f;l++)So(h[l],p[l]);else So(n,_);return p=Ge(_,"script"),p.length>0&&Qr(p,!y&&Ge(n,"script")),_},cleanData:function(n){for(var r,o,l,f=u.event.special,h=0;(o=n[h])!==void 0;h++)if(Kt(o)){if(r=o[Y.expando]){if(r.events)for(l in r.events)f[l]?u.event.remove(o,l):u.removeEvent(o,l,r.handle);o[Y.expando]=void 0}o[Pe.expando]&&(o[Pe.expando]=void 0)}}}),u.fn.extend({detach:function(n){return xo(this,n,!0)},remove:function(n){return xo(this,n)},text:function(n){return Ue(this,function(r){return r===void 0?u.text(this):this.empty().each(function(){(this.nodeType===1||this.nodeType===11||this.nodeType===9)&&(this.textContent=r)})},null,n,arguments.length)},append:function(){return Bi(this,arguments,function(n){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Co(this,n);r.appendChild(n)}})},prepend:function(){return Bi(this,arguments,function(n){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var r=Co(this,n);r.insertBefore(n,r.firstChild)}})},before:function(){return Bi(this,arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this)})},after:function(){return Bi(this,arguments,function(n){this.parentNode&&this.parentNode.insertBefore(n,this.nextSibling)})},empty:function(){for(var n,r=0;(n=this[r])!=null;r++)n.nodeType===1&&(u.cleanData(Ge(n,!1)),n.textContent="");return this},clone:function(n,r){return n=n==null?!1:n,r=r==null?n:r,this.map(function(){return u.clone(this,n,r)})},html:function(n){return Ue(this,function(r){var o=this[0]||{},l=0,f=this.length;if(r===void 0&&o.nodeType===1)return o.innerHTML;if(typeof r=="string"&&!Iu.test(r)&&!pt[(bo.exec(r)||["",""])[1].toLowerCase()]){r=u.htmlPrefilter(r);try{for(;l<f;l++)o=this[l]||{},o.nodeType===1&&(u.cleanData(Ge(o,!1)),o.innerHTML=r);o=0}catch(h){}}o&&this.empty().append(r)},null,n,arguments.length)},replaceWith:function(){var n=[];return Bi(this,arguments,function(r){var o=this.parentNode;u.inArray(this,n)<0&&(u.cleanData(Ge(this)),o&&o.replaceChild(r,this))},n)}}),u.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(n,r){u.fn[n]=function(o){for(var l,f=[],h=u(o),p=h.length-1,_=0;_<=p;_++)l=_===p?this:this.clone(!0),u(h[_])[r](l),d.apply(f,l.get());return this.pushStack(f)}});var es=new RegExp("^("+_o+")(?!px)[a-z%]+$","i"),tr=function(n){var r=n.ownerDocument.defaultView;return(!r||!r.opener)&&(r=t),r.getComputedStyle(n)},No=function(n,r,o){var l,f,h={};for(f in r)h[f]=n.style[f],n.style[f]=r[f];l=o.call(n);for(f in r)n.style[f]=h[f];return l},Bu=new RegExp($t.join("|"),"i");(function(){function n(){if(!!T){y.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",T.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",oi.appendChild(y).appendChild(T);var S=t.getComputedStyle(T);o=S.top!=="1%",_=r(S.marginLeft)===12,T.style.right="60%",h=r(S.right)===36,l=r(S.width)===36,T.style.position="absolute",f=r(T.offsetWidth/3)===12,oi.removeChild(y),T=null}}function r(S){return Math.round(parseFloat(S))}var o,l,f,h,p,_,y=F.createElement("div"),T=F.createElement("div");!T.style||(T.style.backgroundClip="content-box",T.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle=T.style.backgroundClip==="content-box",u.extend(k,{boxSizingReliable:function(){return n(),l},pixelBoxStyles:function(){return n(),h},pixelPosition:function(){return n(),o},reliableMarginLeft:function(){return n(),_},scrollboxSize:function(){return n(),f},reliableTrDimensions:function(){var S,R,C,N;return p==null&&(S=F.createElement("table"),R=F.createElement("tr"),C=F.createElement("div"),S.style.cssText="position:absolute;left:-11111px;border-collapse:separate",R.style.cssText="border:1px solid",R.style.height="1px",C.style.height="9px",C.style.display="block",oi.appendChild(S).appendChild(R).appendChild(C),N=t.getComputedStyle(R),p=parseInt(N.height,10)+parseInt(N.borderTopWidth,10)+parseInt(N.borderBottomWidth,10)===R.offsetHeight,oi.removeChild(S)),p}}))})();function nn(n,r,o){var l,f,h,p,_=n.style;return o=o||tr(n),o&&(p=o.getPropertyValue(r)||o[r],p===""&&!ji(n)&&(p=u.style(n,r)),!k.pixelBoxStyles()&&es.test(p)&&Bu.test(r)&&(l=_.width,f=_.minWidth,h=_.maxWidth,_.minWidth=_.maxWidth=_.width=p,p=o.width,_.width=l,_.minWidth=f,_.maxWidth=h)),p!==void 0?p+"":p}function Oo(n,r){return{get:function(){if(n()){delete this.get;return}return(this.get=r).apply(this,arguments)}}}var Do=["Webkit","Moz","ms"],Lo=F.createElement("div").style,Po={};function Fu(n){for(var r=n[0].toUpperCase()+n.slice(1),o=Do.length;o--;)if(n=Do[o]+r,n in Lo)return n}function ts(n){var r=u.cssProps[n]||Po[n];return r||(n in Lo?n:Po[n]=Fu(n)||n)}var Vu=/^(none|table(?!-c[ea]).+)/,ko=/^--/,Uu={position:"absolute",visibility:"hidden",display:"block"},Io={letterSpacing:"0",fontWeight:"400"};function Ro(n,r,o){var l=en.exec(r);return l?Math.max(0,l[2]-(o||0))+(l[3]||"px"):r}function is(n,r,o,l,f,h){var p=r==="width"?1:0,_=0,y=0;if(o===(l?"border":"content"))return 0;for(;p<4;p+=2)o==="margin"&&(y+=u.css(n,o+$t[p],!0,f)),l?(o==="content"&&(y-=u.css(n,"padding"+$t[p],!0,f)),o!=="margin"&&(y-=u.css(n,"border"+$t[p]+"Width",!0,f))):(y+=u.css(n,"padding"+$t[p],!0,f),o!=="padding"?y+=u.css(n,"border"+$t[p]+"Width",!0,f):_+=u.css(n,"border"+$t[p]+"Width",!0,f));return!l&&h>=0&&(y+=Math.max(0,Math.ceil(n["offset"+r[0].toUpperCase()+r.slice(1)]-h-y-_-.5))||0),y}function jo(n,r,o){var l=tr(n),f=!k.boxSizingReliable()||o,h=f&&u.css(n,"boxSizing",!1,l)==="border-box",p=h,_=nn(n,r,l),y="offset"+r[0].toUpperCase()+r.slice(1);if(es.test(_)){if(!o)return _;_="auto"}return(!k.boxSizingReliable()&&h||!k.reliableTrDimensions()&&ce(n,"tr")||_==="auto"||!parseFloat(_)&&u.css(n,"display",!1,l)==="inline")&&n.getClientRects().length&&(h=u.css(n,"boxSizing",!1,l)==="border-box",p=y in n,p&&(_=n[y])),_=parseFloat(_)||0,_+is(n,r,o||(h?"border":"content"),p,l,_)+"px"}u.extend({cssHooks:{opacity:{get:function(n,r){if(r){var o=nn(n,"opacity");return o===""?"1":o}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(n,r,o,l){if(!(!n||n.nodeType===3||n.nodeType===8||!n.style)){var f,h,p,_=it(r),y=ko.test(r),T=n.style;if(y||(r=ts(_)),p=u.cssHooks[r]||u.cssHooks[_],o!==void 0){if(h=typeof o,h==="string"&&(f=en.exec(o))&&f[1]&&(o=yo(n,r,f),h="number"),o==null||o!==o)return;h==="number"&&!y&&(o+=f&&f[3]||(u.cssNumber[_]?"":"px")),!k.clearCloneStyle&&o===""&&r.indexOf("background")===0&&(T[r]="inherit"),(!p||!("set"in p)||(o=p.set(n,o,l))!==void 0)&&(y?T.setProperty(r,o):T[r]=o)}else return p&&"get"in p&&(f=p.get(n,!1,l))!==void 0?f:T[r]}},css:function(n,r,o,l){var f,h,p,_=it(r),y=ko.test(r);return y||(r=ts(_)),p=u.cssHooks[r]||u.cssHooks[_],p&&"get"in p&&(f=p.get(n,!0,o)),f===void 0&&(f=nn(n,r,l)),f==="normal"&&r in Io&&(f=Io[r]),o===""||o?(h=parseFloat(f),o===!0||isFinite(h)?h||0:f):f}}),u.each(["height","width"],function(n,r){u.cssHooks[r]={get:function(o,l,f){if(l)return Vu.test(u.css(o,"display"))&&(!o.getClientRects().length||!o.getBoundingClientRect().width)?No(o,Uu,function(){return jo(o,r,f)}):jo(o,r,f)},set:function(o,l,f){var h,p=tr(o),_=!k.scrollboxSize()&&p.position==="absolute",y=_||f,T=y&&u.css(o,"boxSizing",!1,p)==="border-box",S=f?is(o,r,f,T,p):0;return T&&_&&(S-=Math.ceil(o["offset"+r[0].toUpperCase()+r.slice(1)]-parseFloat(p[r])-is(o,r,"border",!1,p)-.5)),S&&(h=en.exec(l))&&(h[3]||"px")!=="px"&&(o.style[r]=l,l=u.css(o,r)),Ro(o,l,S)}}}),u.cssHooks.marginLeft=Oo(k.reliableMarginLeft,function(n,r){if(r)return(parseFloat(nn(n,"marginLeft"))||n.getBoundingClientRect().left-No(n,{marginLeft:0},function(){return n.getBoundingClientRect().left}))+"px"}),u.each({margin:"",padding:"",border:"Width"},function(n,r){u.cssHooks[n+r]={expand:function(o){for(var l=0,f={},h=typeof o=="string"?o.split(" "):[o];l<4;l++)f[n+$t[l]+r]=h[l]||h[l-2]||h[0];return f}},n!=="margin"&&(u.cssHooks[n+r].set=Ro)}),u.fn.extend({css:function(n,r){return Ue(this,function(o,l,f){var h,p,_={},y=0;if(Array.isArray(l)){for(h=tr(o),p=l.length;y<p;y++)_[l[y]]=u.css(o,l[y],!1,h);return _}return f!==void 0?u.style(o,l,f):u.css(o,l)},n,r,arguments.length>1)}});function Je(n,r,o,l,f){return new Je.prototype.init(n,r,o,l,f)}u.Tween=Je,Je.prototype={constructor:Je,init:function(n,r,o,l,f,h){this.elem=n,this.prop=o,this.easing=f||u.easing._default,this.options=r,this.start=this.now=this.cur(),this.end=l,this.unit=h||(u.cssNumber[o]?"":"px")},cur:function(){var n=Je.propHooks[this.prop];return n&&n.get?n.get(this):Je.propHooks._default.get(this)},run:function(n){var r,o=Je.propHooks[this.prop];return this.options.duration?this.pos=r=u.easing[this.easing](n,this.options.duration*n,0,1,this.options.duration):this.pos=r=n,this.now=(this.end-this.start)*r+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),o&&o.set?o.set(this):Je.propHooks._default.set(this),this}},Je.prototype.init.prototype=Je.prototype,Je.propHooks={_default:{get:function(n){var r;return n.elem.nodeType!==1||n.elem[n.prop]!=null&&n.elem.style[n.prop]==null?n.elem[n.prop]:(r=u.css(n.elem,n.prop,""),!r||r==="auto"?0:r)},set:function(n){u.fx.step[n.prop]?u.fx.step[n.prop](n):n.elem.nodeType===1&&(u.cssHooks[n.prop]||n.elem.style[ts(n.prop)]!=null)?u.style(n.elem,n.prop,n.now+n.unit):n.elem[n.prop]=n.now}}},Je.propHooks.scrollTop=Je.propHooks.scrollLeft={set:function(n){n.elem.nodeType&&n.elem.parentNode&&(n.elem[n.prop]=n.now)}},u.easing={linear:function(n){return n},swing:function(n){return .5-Math.cos(n*Math.PI)/2},_default:"swing"},u.fx=Je.prototype.init,u.fx.step={};var Fi,ir,Wu=/^(?:toggle|show|hide)$/,qu=/queueHooks$/;function ns(){ir&&(F.hidden===!1&&t.requestAnimationFrame?t.requestAnimationFrame(ns):t.setTimeout(ns,u.fx.interval),u.fx.tick())}function $o(){return t.setTimeout(function(){Fi=void 0}),Fi=Date.now()}function nr(n,r){var o,l=0,f={height:n};for(r=r?1:0;l<4;l+=2-r)o=$t[l],f["margin"+o]=f["padding"+o]=n;return r&&(f.opacity=f.width=n),f}function Mo(n,r,o){for(var l,f=(wt.tweeners[r]||[]).concat(wt.tweeners["*"]),h=0,p=f.length;h<p;h++)if(l=f[h].call(o,r,n))return l}function Ku(n,r,o){var l,f,h,p,_,y,T,S,R="width"in r||"height"in r,C=this,N={},W=n.style,ne=n.nodeType&&Zn(n),q=Y.get(n,"fxshow");o.queue||(p=u._queueHooks(n,"fx"),p.unqueued==null&&(p.unqueued=0,_=p.empty.fire,p.empty.fire=function(){p.unqueued||_()}),p.unqueued++,C.always(function(){C.always(function(){p.unqueued--,u.queue(n,"fx").length||p.empty.fire()})}));for(l in r)if(f=r[l],Wu.test(f)){if(delete r[l],h=h||f==="toggle",f===(ne?"hide":"show"))if(f==="show"&&q&&q[l]!==void 0)ne=!0;else continue;N[l]=q&&q[l]||u.style(n,l)}if(y=!u.isEmptyObject(r),!(!y&&u.isEmptyObject(N))){R&&n.nodeType===1&&(o.overflow=[W.overflow,W.overflowX,W.overflowY],T=q&&q.display,T==null&&(T=Y.get(n,"display")),S=u.css(n,"display"),S==="none"&&(T?S=T:($i([n],!0),T=n.style.display||T,S=u.css(n,"display"),$i([n]))),(S==="inline"||S==="inline-block"&&T!=null)&&u.css(n,"float")==="none"&&(y||(C.done(function(){W.display=T}),T==null&&(S=W.display,T=S==="none"?"":S)),W.display="inline-block")),o.overflow&&(W.overflow="hidden",C.always(function(){W.overflow=o.overflow[0],W.overflowX=o.overflow[1],W.overflowY=o.overflow[2]})),y=!1;for(l in N)y||(q?"hidden"in q&&(ne=q.hidden):q=Y.access(n,"fxshow",{display:T}),h&&(q.hidden=!ne),ne&&$i([n],!0),C.done(function(){ne||$i([n]),Y.remove(n,"fxshow");for(l in N)u.style(n,l,N[l])})),y=Mo(ne?q[l]:0,l,C),l in q||(q[l]=y.start,ne&&(y.end=y.start,y.start=0))}}function zu(n,r){var o,l,f,h,p;for(o in n)if(l=it(o),f=r[l],h=n[o],Array.isArray(h)&&(f=h[1],h=n[o]=h[0]),o!==l&&(n[l]=h,delete n[o]),p=u.cssHooks[l],p&&"expand"in p){h=p.expand(h),delete n[l];for(o in h)o in n||(n[o]=h[o],r[o]=f)}else r[l]=f}function wt(n,r,o){var l,f,h=0,p=wt.prefilters.length,_=u.Deferred().always(function(){delete y.elem}),y=function(){if(f)return!1;for(var R=Fi||$o(),C=Math.max(0,T.startTime+T.duration-R),N=C/T.duration||0,W=1-N,ne=0,q=T.tweens.length;ne<q;ne++)T.tweens[ne].run(W);return _.notifyWith(n,[T,W,C]),W<1&&q?C:(q||_.notifyWith(n,[T,1,0]),_.resolveWith(n,[T]),!1)},T=_.promise({elem:n,props:u.extend({},r),opts:u.extend(!0,{specialEasing:{},easing:u.easing._default},o),originalProperties:r,originalOptions:o,startTime:Fi||$o(),duration:o.duration,tweens:[],createTween:function(R,C){var N=u.Tween(n,T.opts,R,C,T.opts.specialEasing[R]||T.opts.easing);return T.tweens.push(N),N},stop:function(R){var C=0,N=R?T.tweens.length:0;if(f)return this;for(f=!0;C<N;C++)T.tweens[C].run(1);return R?(_.notifyWith(n,[T,1,0]),_.resolveWith(n,[T,R])):_.rejectWith(n,[T,R]),this}}),S=T.props;for(zu(S,T.opts.specialEasing);h<p;h++)if(l=wt.prefilters[h].call(T,n,S,T.opts),l)return D(l.stop)&&(u._queueHooks(T.elem,T.opts.queue).stop=l.stop.bind(l)),l;return u.map(S,Mo,T),D(T.opts.start)&&T.opts.start.call(n,T),T.progress(T.opts.progress).done(T.opts.done,T.opts.complete).fail(T.opts.fail).always(T.opts.always),u.fx.timer(u.extend(y,{elem:n,anim:T,queue:T.opts.queue})),T}u.Animation=u.extend(wt,{tweeners:{"*":[function(n,r){var o=this.createTween(n,r);return yo(o.elem,n,en.exec(r),o),o}]},tweener:function(n,r){D(n)?(r=n,n=["*"]):n=n.match(ye);for(var o,l=0,f=n.length;l<f;l++)o=n[l],wt.tweeners[o]=wt.tweeners[o]||[],wt.tweeners[o].unshift(r)},prefilters:[Ku],prefilter:function(n,r){r?wt.prefilters.unshift(n):wt.prefilters.push(n)}}),u.speed=function(n,r,o){var l=n&&typeof n=="object"?u.extend({},n):{complete:o||!o&&r||D(n)&&n,duration:n,easing:o&&r||r&&!D(r)&&r};return u.fx.off?l.duration=0:typeof l.duration!="number"&&(l.duration in u.fx.speeds?l.duration=u.fx.speeds[l.duration]:l.duration=u.fx.speeds._default),(l.queue==null||l.queue===!0)&&(l.queue="fx"),l.old=l.complete,l.complete=function(){D(l.old)&&l.old.call(this),l.queue&&u.dequeue(this,l.queue)},l},u.fn.extend({fadeTo:function(n,r,o,l){return this.filter(Zn).css("opacity",0).show().end().animate({opacity:r},n,o,l)},animate:function(n,r,o,l){var f=u.isEmptyObject(n),h=u.speed(r,o,l),p=function(){var _=wt(this,u.extend({},n),h);(f||Y.get(this,"finish"))&&_.stop(!0)};return p.finish=p,f||h.queue===!1?this.each(p):this.queue(h.queue,p)},stop:function(n,r,o){var l=function(f){var h=f.stop;delete f.stop,h(o)};return typeof n!="string"&&(o=r,r=n,n=void 0),r&&this.queue(n||"fx",[]),this.each(function(){var f=!0,h=n!=null&&n+"queueHooks",p=u.timers,_=Y.get(this);if(h)_[h]&&_[h].stop&&l(_[h]);else for(h in _)_[h]&&_[h].stop&&qu.test(h)&&l(_[h]);for(h=p.length;h--;)p[h].elem===this&&(n==null||p[h].queue===n)&&(p[h].anim.stop(o),f=!1,p.splice(h,1));(f||!o)&&u.dequeue(this,n)})},finish:function(n){return n!==!1&&(n=n||"fx"),this.each(function(){var r,o=Y.get(this),l=o[n+"queue"],f=o[n+"queueHooks"],h=u.timers,p=l?l.length:0;for(o.finish=!0,u.queue(this,n,[]),f&&f.stop&&f.stop.call(this,!0),r=h.length;r--;)h[r].elem===this&&h[r].queue===n&&(h[r].anim.stop(!0),h.splice(r,1));for(r=0;r<p;r++)l[r]&&l[r].finish&&l[r].finish.call(this);delete o.finish})}}),u.each(["toggle","show","hide"],function(n,r){var o=u.fn[r];u.fn[r]=function(l,f,h){return l==null||typeof l=="boolean"?o.apply(this,arguments):this.animate(nr(r,!0),l,f,h)}}),u.each({slideDown:nr("show"),slideUp:nr("hide"),slideToggle:nr("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(n,r){u.fn[n]=function(o,l,f){return this.animate(r,o,l,f)}}),u.timers=[],u.fx.tick=function(){var n,r=0,o=u.timers;for(Fi=Date.now();r<o.length;r++)n=o[r],!n()&&o[r]===n&&o.splice(r--,1);o.length||u.fx.stop(),Fi=void 0},u.fx.timer=function(n){u.timers.push(n),u.fx.start()},u.fx.interval=13,u.fx.start=function(){ir||(ir=!0,ns())},u.fx.stop=function(){ir=null},u.fx.speeds={slow:600,fast:200,_default:400},u.fn.delay=function(n,r){return n=u.fx&&u.fx.speeds[n]||n,r=r||"fx",this.queue(r,function(o,l){var f=t.setTimeout(o,n);l.stop=function(){t.clearTimeout(f)}})},function(){var n=F.createElement("input"),r=F.createElement("select"),o=r.appendChild(F.createElement("option"));n.type="checkbox",k.checkOn=n.value!=="",k.optSelected=o.selected,n=F.createElement("input"),n.value="t",n.type="radio",k.radioValue=n.value==="t"}();var Ho,rn=u.expr.attrHandle;u.fn.extend({attr:function(n,r){return Ue(this,u.attr,n,r,arguments.length>1)},removeAttr:function(n){return this.each(function(){u.removeAttr(this,n)})}}),u.extend({attr:function(n,r,o){var l,f,h=n.nodeType;if(!(h===3||h===8||h===2)){if(typeof n.getAttribute=="undefined")return u.prop(n,r,o);if((h!==1||!u.isXMLDoc(n))&&(f=u.attrHooks[r.toLowerCase()]||(u.expr.match.bool.test(r)?Ho:void 0)),o!==void 0){if(o===null){u.removeAttr(n,r);return}return f&&"set"in f&&(l=f.set(n,o,r))!==void 0?l:(n.setAttribute(r,o+""),o)}return f&&"get"in f&&(l=f.get(n,r))!==null?l:(l=u.find.attr(n,r),l==null?void 0:l)}},attrHooks:{type:{set:function(n,r){if(!k.radioValue&&r==="radio"&&ce(n,"input")){var o=n.value;return n.setAttribute("type",r),o&&(n.value=o),r}}}},removeAttr:function(n,r){var o,l=0,f=r&&r.match(ye);if(f&&n.nodeType===1)for(;o=f[l++];)n.removeAttribute(o)}}),Ho={set:function(n,r,o){return r===!1?u.removeAttr(n,o):n.setAttribute(o,o),o}},u.each(u.expr.match.bool.source.match(/\w+/g),function(n,r){var o=rn[r]||u.find.attr;rn[r]=function(l,f,h){var p,_,y=f.toLowerCase();return h||(_=rn[y],rn[y]=p,p=o(l,f,h)!=null?y:null,rn[y]=_),p}});var Xu=/^(?:input|select|textarea|button)$/i,Yu=/^(?:a|area)$/i;u.fn.extend({prop:function(n,r){return Ue(this,u.prop,n,r,arguments.length>1)},removeProp:function(n){return this.each(function(){delete this[u.propFix[n]||n]})}}),u.extend({prop:function(n,r,o){var l,f,h=n.nodeType;if(!(h===3||h===8||h===2))return(h!==1||!u.isXMLDoc(n))&&(r=u.propFix[r]||r,f=u.propHooks[r]),o!==void 0?f&&"set"in f&&(l=f.set(n,o,r))!==void 0?l:n[r]=o:f&&"get"in f&&(l=f.get(n,r))!==null?l:n[r]},propHooks:{tabIndex:{get:function(n){var r=u.find.attr(n,"tabindex");return r?parseInt(r,10):Xu.test(n.nodeName)||Yu.test(n.nodeName)&&n.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),k.optSelected||(u.propHooks.selected={get:function(n){var r=n.parentNode;return r&&r.parentNode&&r.parentNode.selectedIndex,null},set:function(n){var r=n.parentNode;r&&(r.selectedIndex,r.parentNode&&r.parentNode.selectedIndex)}}),u.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){u.propFix[this.toLowerCase()]=this});function ai(n){var r=n.match(ye)||[];return r.join(" ")}function li(n){return n.getAttribute&&n.getAttribute("class")||""}function rs(n){return Array.isArray(n)?n:typeof n=="string"?n.match(ye)||[]:[]}u.fn.extend({addClass:function(n){var r,o,l,f,h,p,_,y=0;if(D(n))return this.each(function(T){u(this).addClass(n.call(this,T,li(this)))});if(r=rs(n),r.length){for(;o=this[y++];)if(f=li(o),l=o.nodeType===1&&" "+ai(f)+" ",l){for(p=0;h=r[p++];)l.indexOf(" "+h+" ")<0&&(l+=h+" ");_=ai(l),f!==_&&o.setAttribute("class",_)}}return this},removeClass:function(n){var r,o,l,f,h,p,_,y=0;if(D(n))return this.each(function(T){u(this).removeClass(n.call(this,T,li(this)))});if(!arguments.length)return this.attr("class","");if(r=rs(n),r.length){for(;o=this[y++];)if(f=li(o),l=o.nodeType===1&&" "+ai(f)+" ",l){for(p=0;h=r[p++];)for(;l.indexOf(" "+h+" ")>-1;)l=l.replace(" "+h+" "," ");_=ai(l),f!==_&&o.setAttribute("class",_)}}return this},toggleClass:function(n,r){var o=typeof n,l=o==="string"||Array.isArray(n);return typeof r=="boolean"&&l?r?this.addClass(n):this.removeClass(n):D(n)?this.each(function(f){u(this).toggleClass(n.call(this,f,li(this),r),r)}):this.each(function(){var f,h,p,_;if(l)for(h=0,p=u(this),_=rs(n);f=_[h++];)p.hasClass(f)?p.removeClass(f):p.addClass(f);else(n===void 0||o==="boolean")&&(f=li(this),f&&Y.set(this,"__className__",f),this.setAttribute&&this.setAttribute("class",f||n===!1?"":Y.get(this,"__className__")||""))})},hasClass:function(n){var r,o,l=0;for(r=" "+n+" ";o=this[l++];)if(o.nodeType===1&&(" "+ai(li(o))+" ").indexOf(r)>-1)return!0;return!1}});var Gu=/\r/g;u.fn.extend({val:function(n){var r,o,l,f=this[0];return arguments.length?(l=D(n),this.each(function(h){var p;this.nodeType===1&&(l?p=n.call(this,h,u(this).val()):p=n,p==null?p="":typeof p=="number"?p+="":Array.isArray(p)&&(p=u.map(p,function(_){return _==null?"":_+""})),r=u.valHooks[this.type]||u.valHooks[this.nodeName.toLowerCase()],(!r||!("set"in r)||r.set(this,p,"value")===void 0)&&(this.value=p))})):f?(r=u.valHooks[f.type]||u.valHooks[f.nodeName.toLowerCase()],r&&"get"in r&&(o=r.get(f,"value"))!==void 0?o:(o=f.value,typeof o=="string"?o.replace(Gu,""):o==null?"":o)):void 0}}),u.extend({valHooks:{option:{get:function(n){var r=u.find.attr(n,"value");return r!=null?r:ai(u.text(n))}},select:{get:function(n){var r,o,l,f=n.options,h=n.selectedIndex,p=n.type==="select-one",_=p?null:[],y=p?h+1:f.length;for(h<0?l=y:l=p?h:0;l<y;l++)if(o=f[l],(o.selected||l===h)&&!o.disabled&&(!o.parentNode.disabled||!ce(o.parentNode,"optgroup"))){if(r=u(o).val(),p)return r;_.push(r)}return _},set:function(n,r){for(var o,l,f=n.options,h=u.makeArray(r),p=f.length;p--;)l=f[p],(l.selected=u.inArray(u.valHooks.option.get(l),h)>-1)&&(o=!0);return o||(n.selectedIndex=-1),h}}}}),u.each(["radio","checkbox"],function(){u.valHooks[this]={set:function(n,r){if(Array.isArray(r))return n.checked=u.inArray(u(n).val(),r)>-1}},k.checkOn||(u.valHooks[this].get=function(n){return n.getAttribute("value")===null?"on":n.value})}),k.focusin="onfocusin"in t;var Bo=/^(?:focusinfocus|focusoutblur)$/,Fo=function(n){n.stopPropagation()};u.extend(u.event,{trigger:function(n,r,o,l){var f,h,p,_,y,T,S,R,C=[o||F],N=w.call(n,"type")?n.type:n,W=w.call(n,"namespace")?n.namespace.split("."):[];if(h=R=p=o=o||F,!(o.nodeType===3||o.nodeType===8)&&!Bo.test(N+u.event.triggered)&&(N.indexOf(".")>-1&&(W=N.split("."),N=W.shift(),W.sort()),y=N.indexOf(":")<0&&"on"+N,n=n[u.expando]?n:new u.Event(N,typeof n=="object"&&n),n.isTrigger=l?2:3,n.namespace=W.join("."),n.rnamespace=n.namespace?new RegExp("(^|\\.)"+W.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=void 0,n.target||(n.target=o),r=r==null?[n]:u.makeArray(r,[n]),S=u.event.special[N]||{},!(!l&&S.trigger&&S.trigger.apply(o,r)===!1))){if(!l&&!S.noBubble&&!U(o)){for(_=S.delegateType||N,Bo.test(_+N)||(h=h.parentNode);h;h=h.parentNode)C.push(h),p=h;p===(o.ownerDocument||F)&&C.push(p.defaultView||p.parentWindow||t)}for(f=0;(h=C[f++])&&!n.isPropagationStopped();)R=h,n.type=f>1?_:S.bindType||N,T=(Y.get(h,"events")||Object.create(null))[n.type]&&Y.get(h,"handle"),T&&T.apply(h,r),T=y&&h[y],T&&T.apply&&Kt(h)&&(n.result=T.apply(h,r),n.result===!1&&n.preventDefault());return n.type=N,!l&&!n.isDefaultPrevented()&&(!S._default||S._default.apply(C.pop(),r)===!1)&&Kt(o)&&y&&D(o[N])&&!U(o)&&(p=o[y],p&&(o[y]=null),u.event.triggered=N,n.isPropagationStopped()&&R.addEventListener(N,Fo),o[N](),n.isPropagationStopped()&&R.removeEventListener(N,Fo),u.event.triggered=void 0,p&&(o[y]=p)),n.result}},simulate:function(n,r,o){var l=u.extend(new u.Event,o,{type:n,isSimulated:!0});u.event.trigger(l,null,r)}}),u.fn.extend({trigger:function(n,r){return this.each(function(){u.event.trigger(n,r,this)})},triggerHandler:function(n,r){var o=this[0];if(o)return u.event.trigger(n,r,o,!0)}}),k.focusin||u.each({focus:"focusin",blur:"focusout"},function(n,r){var o=function(l){u.event.simulate(r,l.target,u.event.fix(l))};u.event.special[r]={setup:function(){var l=this.ownerDocument||this.document||this,f=Y.access(l,r);f||l.addEventListener(n,o,!0),Y.access(l,r,(f||0)+1)},teardown:function(){var l=this.ownerDocument||this.document||this,f=Y.access(l,r)-1;f?Y.access(l,r,f):(l.removeEventListener(n,o,!0),Y.remove(l,r))}}});var sn=t.location,Vo={guid:Date.now()},ss=/\?/;u.parseXML=function(n){var r,o;if(!n||typeof n!="string")return null;try{r=new t.DOMParser().parseFromString(n,"text/xml")}catch(l){}return o=r&&r.getElementsByTagName("parsererror")[0],(!r||o)&&u.error("Invalid XML: "+(o?u.map(o.childNodes,function(l){return l.textContent}).join(`
-`):n)),r};var Ju=/\[\]$/,Uo=/\r?\n/g,Qu=/^(?:submit|button|image|reset|file)$/i,Zu=/^(?:input|select|textarea|keygen)/i;function os(n,r,o,l){var f;if(Array.isArray(r))u.each(r,function(h,p){o||Ju.test(n)?l(n,p):os(n+"["+(typeof p=="object"&&p!=null?h:"")+"]",p,o,l)});else if(!o&&ae(r)==="object")for(f in r)os(n+"["+f+"]",r[f],o,l);else l(n,r)}u.param=function(n,r){var o,l=[],f=function(h,p){var _=D(p)?p():p;l[l.length]=encodeURIComponent(h)+"="+encodeURIComponent(_==null?"":_)};if(n==null)return"";if(Array.isArray(n)||n.jquery&&!u.isPlainObject(n))u.each(n,function(){f(this.name,this.value)});else for(o in n)os(o,n[o],r,f);return l.join("&")},u.fn.extend({serialize:function(){return u.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var n=u.prop(this,"elements");return n?u.makeArray(n):this}).filter(function(){var n=this.type;return this.name&&!u(this).is(":disabled")&&Zu.test(this.nodeName)&&!Qu.test(n)&&(this.checked||!tn.test(n))}).map(function(n,r){var o=u(this).val();return o==null?null:Array.isArray(o)?u.map(o,function(l){return{name:r.name,value:l.replace(Uo,`\r
-`)}}):{name:r.name,value:o.replace(Uo,`\r
-`)}}).get()}});var ec=/%20/g,tc=/#.*$/,ic=/([?&])_=[^&]*/,nc=/^(.*?):[ \t]*([^\r\n]*)$/mg,rc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,sc=/^(?:GET|HEAD)$/,oc=/^\/\//,Wo={},as={},qo="*/".concat("*"),ls=F.createElement("a");ls.href=sn.href;function Ko(n){return function(r,o){typeof r!="string"&&(o=r,r="*");var l,f=0,h=r.toLowerCase().match(ye)||[];if(D(o))for(;l=h[f++];)l[0]==="+"?(l=l.slice(1)||"*",(n[l]=n[l]||[]).unshift(o)):(n[l]=n[l]||[]).push(o)}}function zo(n,r,o,l){var f={},h=n===as;function p(_){var y;return f[_]=!0,u.each(n[_]||[],function(T,S){var R=S(r,o,l);if(typeof R=="string"&&!h&&!f[R])return r.dataTypes.unshift(R),p(R),!1;if(h)return!(y=R)}),y}return p(r.dataTypes[0])||!f["*"]&&p("*")}function us(n,r){var o,l,f=u.ajaxSettings.flatOptions||{};for(o in r)r[o]!==void 0&&((f[o]?n:l||(l={}))[o]=r[o]);return l&&u.extend(!0,n,l),n}function ac(n,r,o){for(var l,f,h,p,_=n.contents,y=n.dataTypes;y[0]==="*";)y.shift(),l===void 0&&(l=n.mimeType||r.getResponseHeader("Content-Type"));if(l){for(f in _)if(_[f]&&_[f].test(l)){y.unshift(f);break}}if(y[0]in o)h=y[0];else{for(f in o){if(!y[0]||n.converters[f+" "+y[0]]){h=f;break}p||(p=f)}h=h||p}if(h)return h!==y[0]&&y.unshift(h),o[h]}function lc(n,r,o,l){var f,h,p,_,y,T={},S=n.dataTypes.slice();if(S[1])for(p in n.converters)T[p.toLowerCase()]=n.converters[p];for(h=S.shift();h;)if(n.responseFields[h]&&(o[n.responseFields[h]]=r),!y&&l&&n.dataFilter&&(r=n.dataFilter(r,n.dataType)),y=h,h=S.shift(),h){if(h==="*")h=y;else if(y!=="*"&&y!==h){if(p=T[y+" "+h]||T["* "+h],!p){for(f in T)if(_=f.split(" "),_[1]===h&&(p=T[y+" "+_[0]]||T["* "+_[0]],p)){p===!0?p=T[f]:T[f]!==!0&&(h=_[0],S.unshift(_[1]));break}}if(p!==!0)if(p&&n.throws)r=p(r);else try{r=p(r)}catch(R){return{state:"parsererror",error:p?R:"No conversion from "+y+" to "+h}}}}return{state:"success",data:r}}u.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:sn.href,type:"GET",isLocal:rc.test(sn.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":qo,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":u.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(n,r){return r?us(us(n,u.ajaxSettings),r):us(u.ajaxSettings,n)},ajaxPrefilter:Ko(Wo),ajaxTransport:Ko(as),ajax:function(n,r){typeof n=="object"&&(r=n,n=void 0),r=r||{};var o,l,f,h,p,_,y,T,S,R,C=u.ajaxSetup({},r),N=C.context||C,W=C.context&&(N.nodeType||N.jquery)?u(N):u.event,ne=u.Deferred(),q=u.Callbacks("once memory"),ke=C.statusCode||{},De={},nt={},me="canceled",ie={readyState:0,getResponseHeader:function(he){var be;if(y){if(!h)for(h={};be=nc.exec(f);)h[be[1].toLowerCase()+" "]=(h[be[1].toLowerCase()+" "]||[]).concat(be[2]);be=h[he.toLowerCase()+" "]}return be==null?null:be.join(", ")},getAllResponseHeaders:function(){return y?f:null},setRequestHeader:function(he,be){return y==null&&(he=nt[he.toLowerCase()]=nt[he.toLowerCase()]||he,De[he]=be),this},overrideMimeType:function(he){return y==null&&(C.mimeType=he),this},statusCode:function(he){var be;if(he)if(y)ie.always(he[ie.status]);else for(be in he)ke[be]=[ke[be],he[be]];return this},abort:function(he){var be=he||me;return o&&o.abort(be),Qe(0,be),this}};if(ne.promise(ie),C.url=((n||C.url||sn.href)+"").replace(oc,sn.protocol+"//"),C.type=r.method||r.type||C.method||C.type,C.dataTypes=(C.dataType||"*").toLowerCase().match(ye)||[""],C.crossDomain==null){_=F.createElement("a");try{_.href=C.url,_.href=_.href,C.crossDomain=ls.protocol+"//"+ls.host!=_.protocol+"//"+_.host}catch(he){C.crossDomain=!0}}if(C.data&&C.processData&&typeof C.data!="string"&&(C.data=u.param(C.data,C.traditional)),zo(Wo,C,r,ie),y)return ie;T=u.event&&C.global,T&&u.active++==0&&u.event.trigger("ajaxStart"),C.type=C.type.toUpperCase(),C.hasContent=!sc.test(C.type),l=C.url.replace(tc,""),C.hasContent?C.data&&C.processData&&(C.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&(C.data=C.data.replace(ec,"+")):(R=C.url.slice(l.length),C.data&&(C.processData||typeof C.data=="string")&&(l+=(ss.test(l)?"&":"?")+C.data,delete C.data),C.cache===!1&&(l=l.replace(ic,"$1"),R=(ss.test(l)?"&":"?")+"_="+Vo.guid+++R),C.url=l+R),C.ifModified&&(u.lastModified[l]&&ie.setRequestHeader("If-Modified-Since",u.lastModified[l]),u.etag[l]&&ie.setRequestHeader("If-None-Match",u.etag[l])),(C.data&&C.hasContent&&C.contentType!==!1||r.contentType)&&ie.setRequestHeader("Content-Type",C.contentType),ie.setRequestHeader("Accept",C.dataTypes[0]&&C.accepts[C.dataTypes[0]]?C.accepts[C.dataTypes[0]]+(C.dataTypes[0]!=="*"?", "+qo+"; q=0.01":""):C.accepts["*"]);for(S in C.headers)ie.setRequestHeader(S,C.headers[S]);if(C.beforeSend&&(C.beforeSend.call(N,ie,C)===!1||y))return ie.abort();if(me="abort",q.add(C.complete),ie.done(C.success),ie.fail(C.error),o=zo(as,C,r,ie),!o)Qe(-1,"No Transport");else{if(ie.readyState=1,T&&W.trigger("ajaxSend",[ie,C]),y)return ie;C.async&&C.timeout>0&&(p=t.setTimeout(function(){ie.abort("timeout")},C.timeout));try{y=!1,o.send(De,Qe)}catch(he){if(y)throw he;Qe(-1,he)}}function Qe(he,be,an,rr){var rt,ui,ci,Ze,zt,gt=be;y||(y=!0,p&&t.clearTimeout(p),o=void 0,f=rr||"",ie.readyState=he>0?4:0,rt=he>=200&&he<300||he===304,an&&(Ze=ac(C,ie,an)),!rt&&u.inArray("script",C.dataTypes)>-1&&u.inArray("json",C.dataTypes)<0&&(C.converters["text script"]=function(){}),Ze=lc(C,Ze,ie,rt),rt?(C.ifModified&&(zt=ie.getResponseHeader("Last-Modified"),zt&&(u.lastModified[l]=zt),zt=ie.getResponseHeader("etag"),zt&&(u.etag[l]=zt)),he===204||C.type==="HEAD"?gt="nocontent":he===304?gt="notmodified":(gt=Ze.state,ui=Ze.data,ci=Ze.error,rt=!ci)):(ci=gt,(he||!gt)&&(gt="error",he<0&&(he=0))),ie.status=he,ie.statusText=(be||gt)+"",rt?ne.resolveWith(N,[ui,gt,ie]):ne.rejectWith(N,[ie,gt,ci]),ie.statusCode(ke),ke=void 0,T&&W.trigger(rt?"ajaxSuccess":"ajaxError",[ie,C,rt?ui:ci]),q.fireWith(N,[ie,gt]),T&&(W.trigger("ajaxComplete",[ie,C]),--u.active||u.event.trigger("ajaxStop")))}return ie},getJSON:function(n,r,o){return u.get(n,r,o,"json")},getScript:function(n,r){return u.get(n,void 0,r,"script")}}),u.each(["get","post"],function(n,r){u[r]=function(o,l,f,h){return D(l)&&(h=h||f,f=l,l=void 0),u.ajax(u.extend({url:o,type:r,dataType:h,data:l,success:f},u.isPlainObject(o)&&o))}}),u.ajaxPrefilter(function(n){var r;for(r in n.headers)r.toLowerCase()==="content-type"&&(n.contentType=n.headers[r]||"")}),u._evalUrl=function(n,r,o){return u.ajax({url:n,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(l){u.globalEval(l,r,o)}})},u.fn.extend({wrapAll:function(n){var r;return this[0]&&(D(n)&&(n=n.call(this[0])),r=u(n,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&r.insertBefore(this[0]),r.map(function(){for(var o=this;o.firstElementChild;)o=o.firstElementChild;return o}).append(this)),this},wrapInner:function(n){return D(n)?this.each(function(r){u(this).wrapInner(n.call(this,r))}):this.each(function(){var r=u(this),o=r.contents();o.length?o.wrapAll(n):r.append(n)})},wrap:function(n){var r=D(n);return this.each(function(o){u(this).wrapAll(r?n.call(this,o):n)})},unwrap:function(n){return this.parent(n).not("body").each(function(){u(this).replaceWith(this.childNodes)}),this}}),u.expr.pseudos.hidden=function(n){return!u.expr.pseudos.visible(n)},u.expr.pseudos.visible=function(n){return!!(n.offsetWidth||n.offsetHeight||n.getClientRects().length)},u.ajaxSettings.xhr=function(){try{return new t.XMLHttpRequest}catch(n){}};var uc={0:200,1223:204},on=u.ajaxSettings.xhr();k.cors=!!on&&"withCredentials"in on,k.ajax=on=!!on,u.ajaxTransport(function(n){var r,o;if(k.cors||on&&!n.crossDomain)return{send:function(l,f){var h,p=n.xhr();if(p.open(n.type,n.url,n.async,n.username,n.password),n.xhrFields)for(h in n.xhrFields)p[h]=n.xhrFields[h];n.mimeType&&p.overrideMimeType&&p.overrideMimeType(n.mimeType),!n.crossDomain&&!l["X-Requested-With"]&&(l["X-Requested-With"]="XMLHttpRequest");for(h in l)p.setRequestHeader(h,l[h]);r=function(_){return function(){r&&(r=o=p.onload=p.onerror=p.onabort=p.ontimeout=p.onreadystatechange=null,_==="abort"?p.abort():_==="error"?typeof p.status!="number"?f(0,"error"):f(p.status,p.statusText):f(uc[p.status]||p.status,p.statusText,(p.responseType||"text")!=="text"||typeof p.responseText!="string"?{binary:p.response}:{text:p.responseText},p.getAllResponseHeaders()))}},p.onload=r(),o=p.onerror=p.ontimeout=r("error"),p.onabort!==void 0?p.onabort=o:p.onreadystatechange=function(){p.readyState===4&&t.setTimeout(function(){r&&o()})},r=r("abort");try{p.send(n.hasContent&&n.data||null)}catch(_){if(r)throw _}},abort:function(){r&&r()}}}),u.ajaxPrefilter(function(n){n.crossDomain&&(n.contents.script=!1)}),u.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(n){return u.globalEval(n),n}}}),u.ajaxPrefilter("script",function(n){n.cache===void 0&&(n.cache=!1),n.crossDomain&&(n.type="GET")}),u.ajaxTransport("script",function(n){if(n.crossDomain||n.scriptAttrs){var r,o;return{send:function(l,f){r=u("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",o=function(h){r.remove(),o=null,h&&f(h.type==="error"?404:200,h.type)}),F.head.appendChild(r[0])},abort:function(){o&&o()}}}});var Xo=[],cs=/(=)\?(?=&|$)|\?\?/;u.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var n=Xo.pop()||u.expando+"_"+Vo.guid++;return this[n]=!0,n}}),u.ajaxPrefilter("json jsonp",function(n,r,o){var l,f,h,p=n.jsonp!==!1&&(cs.test(n.url)?"url":typeof n.data=="string"&&(n.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&cs.test(n.data)&&"data");if(p||n.dataTypes[0]==="jsonp")return l=n.jsonpCallback=D(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,p?n[p]=n[p].replace(cs,"$1"+l):n.jsonp!==!1&&(n.url+=(ss.test(n.url)?"&":"?")+n.jsonp+"="+l),n.converters["script json"]=function(){return h||u.error(l+" was not called"),h[0]},n.dataTypes[0]="json",f=t[l],t[l]=function(){h=arguments},o.always(function(){f===void 0?u(t).removeProp(l):t[l]=f,n[l]&&(n.jsonpCallback=r.jsonpCallback,Xo.push(l)),h&&D(f)&&f(h[0]),h=f=void 0}),"script"}),k.createHTMLDocument=function(){var n=F.implementation.createHTMLDocument("").body;return n.innerHTML="<form></form><form></form>",n.childNodes.length===2}(),u.parseHTML=function(n,r,o){if(typeof n!="string")return[];typeof r=="boolean"&&(o=r,r=!1);var l,f,h;return r||(k.createHTMLDocument?(r=F.implementation.createHTMLDocument(""),l=r.createElement("base"),l.href=F.location.href,r.head.appendChild(l)):r=F),f=Ve.exec(n),h=!o&&[],f?[r.createElement(f[1])]:(f=Ao([n],r,h),h&&h.length&&u(h).remove(),u.merge([],f.childNodes))},u.fn.load=function(n,r,o){var l,f,h,p=this,_=n.indexOf(" ");return _>-1&&(l=ai(n.slice(_)),n=n.slice(0,_)),D(r)?(o=r,r=void 0):r&&typeof r=="object"&&(f="POST"),p.length>0&&u.ajax({url:n,type:f||"GET",dataType:"html",data:r}).done(function(y){h=arguments,p.html(l?u("<div>").append(u.parseHTML(y)).find(l):y)}).always(o&&function(y,T){p.each(function(){o.apply(this,h||[y.responseText,T,y])})}),this},u.expr.pseudos.animated=function(n){return u.grep(u.timers,function(r){return n===r.elem}).length},u.offset={setOffset:function(n,r,o){var l,f,h,p,_,y,T,S=u.css(n,"position"),R=u(n),C={};S==="static"&&(n.style.position="relative"),_=R.offset(),h=u.css(n,"top"),y=u.css(n,"left"),T=(S==="absolute"||S==="fixed")&&(h+y).indexOf("auto")>-1,T?(l=R.position(),p=l.top,f=l.left):(p=parseFloat(h)||0,f=parseFloat(y)||0),D(r)&&(r=r.call(n,o,u.extend({},_))),r.top!=null&&(C.top=r.top-_.top+p),r.left!=null&&(C.left=r.left-_.left+f),"using"in r?r.using.call(n,C):R.css(C)}},u.fn.extend({offset:function(n){if(arguments.length)return n===void 0?this:this.each(function(f){u.offset.setOffset(this,n,f)});var r,o,l=this[0];if(!!l)return l.getClientRects().length?(r=l.getBoundingClientRect(),o=l.ownerDocument.defaultView,{top:r.top+o.pageYOffset,left:r.left+o.pageXOffset}):{top:0,left:0}},position:function(){if(!!this[0]){var n,r,o,l=this[0],f={top:0,left:0};if(u.css(l,"position")==="fixed")r=l.getBoundingClientRect();else{for(r=this.offset(),o=l.ownerDocument,n=l.offsetParent||o.documentElement;n&&(n===o.body||n===o.documentElement)&&u.css(n,"position")==="static";)n=n.parentNode;n&&n!==l&&n.nodeType===1&&(f=u(n).offset(),f.top+=u.css(n,"borderTopWidth",!0),f.left+=u.css(n,"borderLeftWidth",!0))}return{top:r.top-f.top-u.css(l,"marginTop",!0),left:r.left-f.left-u.css(l,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var n=this.offsetParent;n&&u.css(n,"position")==="static";)n=n.offsetParent;return n||oi})}}),u.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(n,r){var o=r==="pageYOffset";u.fn[n]=function(l){return Ue(this,function(f,h,p){var _;if(U(f)?_=f:f.nodeType===9&&(_=f.defaultView),p===void 0)return _?_[r]:f[h];_?_.scrollTo(o?_.pageXOffset:p,o?p:_.pageYOffset):f[h]=p},n,l,arguments.length)}}),u.each(["top","left"],function(n,r){u.cssHooks[r]=Oo(k.pixelPosition,function(o,l){if(l)return l=nn(o,r),es.test(l)?u(o).position()[r]+"px":l})}),u.each({Height:"height",Width:"width"},function(n,r){u.each({padding:"inner"+n,content:r,"":"outer"+n},function(o,l){u.fn[l]=function(f,h){var p=arguments.length&&(o||typeof f!="boolean"),_=o||(f===!0||h===!0?"margin":"border");return Ue(this,function(y,T,S){var R;return U(y)?l.indexOf("outer")===0?y["inner"+n]:y.document.documentElement["client"+n]:y.nodeType===9?(R=y.documentElement,Math.max(y.body["scroll"+n],R["scroll"+n],y.body["offset"+n],R["offset"+n],R["client"+n])):S===void 0?u.css(y,T,_):u.style(y,T,S,_)},r,p?f:void 0,p)}})}),u.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(n,r){u.fn[r]=function(o){return this.on(r,o)}}),u.fn.extend({bind:function(n,r,o){return this.on(n,null,r,o)},unbind:function(n,r){return this.off(n,null,r)},delegate:function(n,r,o,l){return this.on(r,n,o,l)},undelegate:function(n,r,o){return arguments.length===1?this.off(n,"**"):this.off(r,n||"**",o)},hover:function(n,r){return this.mouseenter(n).mouseleave(r||n)}}),u.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(n,r){u.fn[r]=function(o,l){return arguments.length>0?this.on(r,null,o,l):this.trigger(r)}});var cc=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;u.proxy=function(n,r){var o,l,f;if(typeof r=="string"&&(o=n[r],r=n,n=o),!!D(n))return l=a.call(arguments,2),f=function(){return n.apply(r||this,l.concat(a.call(arguments)))},f.guid=n.guid=n.guid||u.guid++,f},u.holdReady=function(n){n?u.readyWait++:u.ready(!0)},u.isArray=Array.isArray,u.parseJSON=JSON.parse,u.nodeName=ce,u.isFunction=D,u.isWindow=U,u.camelCase=it,u.type=ae,u.now=Date.now,u.isNumeric=function(n){var r=u.type(n);return(r==="number"||r==="string")&&!isNaN(n-parseFloat(n))},u.trim=function(n){return n==null?"":(n+"").replace(cc,"")},typeof define=="function"&&define.amd&&define("jquery",[],function(){return u});var fc=t.jQuery,hc=t.$;return u.noConflict=function(n){return t.$===u&&(t.$=hc),n&&t.jQuery===u&&(t.jQuery=fc),u},typeof e=="undefined"&&(t.jQuery=t.$=u),u})});var xu=la((Su,Gr)=>{(function(t,e){"use strict";(function(){for(var L=0,k=["ms","moz","webkit","o"],D=0;D<k.length&&!t.requestAnimationFrame;++D)t.requestAnimationFrame=t[k[D]+"RequestAnimationFrame"],t.cancelAnimationFrame=t[k[D]+"CancelAnimationFrame"]||t[k[D]+"CancelRequestAnimationFrame"];t.requestAnimationFrame||(t.requestAnimationFrame=function(U,F){var M=new Date().getTime(),K=Math.max(0,16-(M-L)),ae=t.setTimeout(function(){U(M+K)},K);return L=M+K,ae}),t.cancelAnimationFrame||(t.cancelAnimationFrame=function(U){clearTimeout(U)})})();var i,s,a,c,d,m=function(L,k,D){L.addEventListener?L.addEventListener(k,D,!1):L.attachEvent?L.attachEvent("on"+k,D):L["on"+k]=D},E={autoRun:!0,barThickness:3,barColors:{0:"rgba(26, 188, 156, .9)",".25":"rgba(52, 152, 219, .9)",".50":"rgba(241, 196, 15, .9)",".75":"rgba(230, 126, 34, .9)","1.0":"rgba(211, 84, 0, .9)"},shadowBlur:10,shadowColor:"rgba(0, 0, 0, .6)",className:null},x=function(){i.width=t.innerWidth,i.height=E.barThickness*5;var L=i.getContext("2d");L.shadowBlur=E.shadowBlur,L.shadowColor=E.shadowColor;var k=L.createLinearGradient(0,0,i.width,0);for(var D in E.barColors)k.addColorStop(D,E.barColors[D]);L.lineWidth=E.barThickness,L.beginPath(),L.moveTo(0,E.barThickness/2),L.lineTo(Math.ceil(c*i.width),E.barThickness/2),L.strokeStyle=k,L.stroke()},w=function(){i=e.createElement("canvas");var L=i.style;L.position="fixed",L.top=L.left=L.right=L.margin=L.padding=0,L.zIndex=100001,L.display="none",E.className&&i.classList.add(E.className),e.body.appendChild(i),m(t,"resize",x)},I={config:function(L){for(var k in L)E.hasOwnProperty(k)&&(E[k]=L[k])},show:function(){d||(d=!0,a!==null&&t.cancelAnimationFrame(a),i||w(),i.style.opacity=1,i.style.display="block",I.progress(0),E.autoRun&&function L(){s=t.requestAnimationFrame(L),I.progress("+"+.05*Math.pow(1-Math.sqrt(c),2))}())},progress:function(L){return typeof L=="undefined"||(typeof L=="string"&&(L=(L.indexOf("+")>=0||L.indexOf("-")>=0?c:0)+parseFloat(L)),c=L>1?1:L,x()),c},hide:function(){!d||(d=!1,s!=null&&(t.cancelAnimationFrame(s),s=null),function L(){if(I.progress("+.1")>=1&&(i.style.opacity-=.05,i.style.opacity<=.05)){i.style.display="none",a=null;return}a=t.requestAnimationFrame(L)}())}};typeof Gr=="object"&&typeof Gr.exports=="object"?Gr.exports=I:typeof define=="function"&&define.amd?define(function(){return I}):this.topbar=I}).call(Su,window,document)});var mo=ua(fa());var wr={};Ic(wr,{afterMain:()=>va,afterRead:()=>pa,afterWrite:()=>Ea,applyStyles:()=>Vi,arrow:()=>gr,auto:()=>hn,basePlacements:()=>Bt,beforeMain:()=>ga,beforeRead:()=>ha,beforeWrite:()=>_a,bottom:()=>Le,clippingParents:()=>ys,computeStyles:()=>Ui,createPopper:()=>Ar,createPopperBase:()=>Na,createPopperLite:()=>Oa,detectOverflow:()=>Ye,end:()=>Yt,eventListeners:()=>Wi,flip:()=>yr,hide:()=>Er,left:()=>Se,main:()=>ma,modifierPhases:()=>bs,offset:()=>br,placements:()=>pn,popper:()=>pi,popperGenerator:()=>bi,popperOffsets:()=>zi,preventOverflow:()=>Tr,read:()=>da,reference:()=>Es,right:()=>Ce,start:()=>Nt,top:()=>Te,variationPlacements:()=>dr,viewport:()=>dn,write:()=>ya});var Te="top",Le="bottom",Ce="right",Se="left",hn="auto",Bt=[Te,Le,Ce,Se],Nt="start",Yt="end",ys="clippingParents",dn="viewport",pi="popper",Es="reference",dr=Bt.reduce(function(t,e){return t.concat([e+"-"+Nt,e+"-"+Yt])},[]),pn=[].concat(Bt,[hn]).reduce(function(t,e){return t.concat([e,e+"-"+Nt,e+"-"+Yt])},[]),ha="beforeRead",da="read",pa="afterRead",ga="beforeMain",ma="main",va="afterMain",_a="beforeWrite",ya="write",Ea="afterWrite",bs=[ha,da,pa,ga,ma,va,_a,ya,Ea];function $e(t){return t?(t.nodeName||"").toLowerCase():null}function xe(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function Ft(t){var e=xe(t).Element;return t instanceof e||t instanceof Element}function Me(t){var e=xe(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function pr(t){if(typeof ShadowRoot=="undefined")return!1;var e=xe(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function jc(t){var e=t.state;Object.keys(e.elements).forEach(function(i){var s=e.styles[i]||{},a=e.attributes[i]||{},c=e.elements[i];!Me(c)||!$e(c)||(Object.assign(c.style,s),Object.keys(a).forEach(function(d){var m=a[d];m===!1?c.removeAttribute(d):c.setAttribute(d,m===!0?"":m)}))})}function $c(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach(function(s){var a=e.elements[s],c=e.attributes[s]||{},d=Object.keys(e.styles.hasOwnProperty(s)?e.styles[s]:i[s]),m=d.reduce(function(E,x){return E[x]="",E},{});!Me(a)||!$e(a)||(Object.assign(a.style,m),Object.keys(c).forEach(function(E){a.removeAttribute(E)}))})}}var Vi={name:"applyStyles",enabled:!0,phase:"write",fn:jc,effect:$c,requires:["computeStyles"]};function He(t){return t.split("-")[0]}function mt(t,e){e===void 0&&(e=!1);var i=t.getBoundingClientRect(),s=1,a=1;return{width:i.width/s,height:i.height/a,top:i.top/a,right:i.right/s,bottom:i.bottom/a,left:i.left/s,x:i.left/s,y:i.top/a}}function gi(t){var e=mt(t),i=t.offsetWidth,s=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-s)<=1&&(s=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:s}}function gn(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&pr(i)){var s=e;do{if(s&&t.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function Xe(t){return xe(t).getComputedStyle(t)}function Ts(t){return["table","td","th"].indexOf($e(t))>=0}function Be(t){return((Ft(t)?t.ownerDocument:t.document)||window.document).documentElement}function Vt(t){return $e(t)==="html"?t:t.assignedSlot||t.parentNode||(pr(t)?t.host:null)||Be(t)}function ba(t){return!Me(t)||Xe(t).position==="fixed"?null:t.offsetParent}function Mc(t){var e=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,i=navigator.userAgent.indexOf("Trident")!==-1;if(i&&Me(t)){var s=Xe(t);if(s.position==="fixed")return null}for(var a=Vt(t);Me(a)&&["html","body"].indexOf($e(a))<0;){var c=Xe(a);if(c.transform!=="none"||c.perspective!=="none"||c.contain==="paint"||["transform","perspective"].indexOf(c.willChange)!==-1||e&&c.willChange==="filter"||e&&c.filter&&c.filter!=="none")return a;a=a.parentNode}return null}function xt(t){for(var e=xe(t),i=ba(t);i&&Ts(i)&&Xe(i).position==="static";)i=ba(i);return i&&($e(i)==="html"||$e(i)==="body"&&Xe(i).position==="static")?e:i||Mc(t)||e}function mi(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var vt=Math.max,Gt=Math.min,mn=Math.round;function vi(t,e,i){return vt(t,Gt(e,i))}function vn(){return{top:0,right:0,bottom:0,left:0}}function _n(t){return Object.assign({},vn(),t)}function yn(t,e){return e.reduce(function(i,s){return i[s]=t,i},{})}var Hc=function(e,i){return e=typeof e=="function"?e(Object.assign({},i.rects,{placement:i.placement})):e,_n(typeof e!="number"?e:yn(e,Bt))};function Bc(t){var e,i=t.state,s=t.name,a=t.options,c=i.elements.arrow,d=i.modifiersData.popperOffsets,m=He(i.placement),E=mi(m),x=[Se,Ce].indexOf(m)>=0,w=x?"height":"width";if(!(!c||!d)){var I=Hc(a.padding,i),L=gi(c),k=E==="y"?Te:Se,D=E==="y"?Le:Ce,U=i.rects.reference[w]+i.rects.reference[E]-d[E]-i.rects.popper[w],F=d[E]-i.rects.reference[E],M=xt(c),K=M?E==="y"?M.clientHeight||0:M.clientWidth||0:0,ae=U/2-F/2,se=I[k],u=K-L[w]-I[D],de=K/2-L[w]/2+ae,ue=vi(se,de,u),ge=E;i.modifiersData[s]=(e={},e[ge]=ue,e.centerOffset=ue-de,e)}}function Fc(t){var e=t.state,i=t.options,s=i.element,a=s===void 0?"[data-popper-arrow]":s;a!=null&&(typeof a=="string"&&(a=e.elements.popper.querySelector(a),!a)||!gn(e.elements.popper,a)||(e.elements.arrow=a))}var gr={name:"arrow",enabled:!0,phase:"main",fn:Bc,effect:Fc,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function _t(t){return t.split("-")[1]}var Vc={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Uc(t){var e=t.x,i=t.y,s=window,a=s.devicePixelRatio||1;return{x:mn(mn(e*a)/a)||0,y:mn(mn(i*a)/a)||0}}function Ta(t){var e,i=t.popper,s=t.popperRect,a=t.placement,c=t.variation,d=t.offsets,m=t.position,E=t.gpuAcceleration,x=t.adaptive,w=t.roundOffsets,I=w===!0?Uc(d):typeof w=="function"?w(d):d,L=I.x,k=L===void 0?0:L,D=I.y,U=D===void 0?0:D,F=d.hasOwnProperty("x"),M=d.hasOwnProperty("y"),K=Se,ae=Te,se=window;if(x){var u=xt(i),de="clientHeight",ue="clientWidth";u===xe(i)&&(u=Be(i),Xe(u).position!=="static"&&m==="absolute"&&(de="scrollHeight",ue="scrollWidth")),u=u,(a===Te||(a===Se||a===Ce)&&c===Yt)&&(ae=Le,U-=u[de]-s.height,U*=E?1:-1),(a===Se||(a===Te||a===Le)&&c===Yt)&&(K=Ce,k-=u[ue]-s.width,k*=E?1:-1)}var ge=Object.assign({position:m},x&&Vc);if(E){var oe;return Object.assign({},ge,(oe={},oe[ae]=M?"0":"",oe[K]=F?"0":"",oe.transform=(se.devicePixelRatio||1)<=1?"translate("+k+"px, "+U+"px)":"translate3d("+k+"px, "+U+"px, 0)",oe))}return Object.assign({},ge,(e={},e[ae]=M?U+"px":"",e[K]=F?k+"px":"",e.transform="",e))}function Wc(t){var e=t.state,i=t.options,s=i.gpuAcceleration,a=s===void 0?!0:s,c=i.adaptive,d=c===void 0?!0:c,m=i.roundOffsets,E=m===void 0?!0:m;if(!1)var x;var w={placement:He(e.placement),variation:_t(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:a};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,Ta(Object.assign({},w,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:d,roundOffsets:E})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,Ta(Object.assign({},w,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:E})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}var Ui={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Wc,data:{}};var mr={passive:!0};function qc(t){var e=t.state,i=t.instance,s=t.options,a=s.scroll,c=a===void 0?!0:a,d=s.resize,m=d===void 0?!0:d,E=xe(e.elements.popper),x=[].concat(e.scrollParents.reference,e.scrollParents.popper);return c&&x.forEach(function(w){w.addEventListener("scroll",i.update,mr)}),m&&E.addEventListener("resize",i.update,mr),function(){c&&x.forEach(function(w){w.removeEventListener("scroll",i.update,mr)}),m&&E.removeEventListener("resize",i.update,mr)}}var Wi={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:qc,data:{}};var Kc={left:"right",right:"left",bottom:"top",top:"bottom"};function qi(t){return t.replace(/left|right|bottom|top/g,function(e){return Kc[e]})}var zc={start:"end",end:"start"};function vr(t){return t.replace(/start|end/g,function(e){return zc[e]})}function _i(t){var e=xe(t),i=e.pageXOffset,s=e.pageYOffset;return{scrollLeft:i,scrollTop:s}}function yi(t){return mt(Be(t)).left+_i(t).scrollLeft}function As(t){var e=xe(t),i=Be(t),s=e.visualViewport,a=i.clientWidth,c=i.clientHeight,d=0,m=0;return s&&(a=s.width,c=s.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(d=s.offsetLeft,m=s.offsetTop)),{width:a,height:c,x:d+yi(t),y:m}}function ws(t){var e,i=Be(t),s=_i(t),a=(e=t.ownerDocument)==null?void 0:e.body,c=vt(i.scrollWidth,i.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),d=vt(i.scrollHeight,i.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),m=-s.scrollLeft+yi(t),E=-s.scrollTop;return Xe(a||i).direction==="rtl"&&(m+=vt(i.clientWidth,a?a.clientWidth:0)-c),{width:c,height:d,x:m,y:E}}function Ei(t){var e=Xe(t),i=e.overflow,s=e.overflowX,a=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+a+s)}function _r(t){return["html","body","#document"].indexOf($e(t))>=0?t.ownerDocument.body:Me(t)&&Ei(t)?t:_r(Vt(t))}function Jt(t,e){var i;e===void 0&&(e=[]);var s=_r(t),a=s===((i=t.ownerDocument)==null?void 0:i.body),c=xe(s),d=a?[c].concat(c.visualViewport||[],Ei(s)?s:[]):s,m=e.concat(d);return a?m:m.concat(Jt(Vt(d)))}function Ki(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Xc(t){var e=mt(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}function Aa(t,e){return e===dn?Ki(As(t)):Me(e)?Xc(e):Ki(ws(Be(t)))}function Yc(t){var e=Jt(Vt(t)),i=["absolute","fixed"].indexOf(Xe(t).position)>=0,s=i&&Me(t)?xt(t):t;return Ft(s)?e.filter(function(a){return Ft(a)&&gn(a,s)&&$e(a)!=="body"}):[]}function Cs(t,e,i){var s=e==="clippingParents"?Yc(t):[].concat(e),a=[].concat(s,[i]),c=a[0],d=a.reduce(function(m,E){var x=Aa(t,E);return m.top=vt(x.top,m.top),m.right=Gt(x.right,m.right),m.bottom=Gt(x.bottom,m.bottom),m.left=vt(x.left,m.left),m},Aa(t,c));return d.width=d.right-d.left,d.height=d.bottom-d.top,d.x=d.left,d.y=d.top,d}function En(t){var e=t.reference,i=t.element,s=t.placement,a=s?He(s):null,c=s?_t(s):null,d=e.x+e.width/2-i.width/2,m=e.y+e.height/2-i.height/2,E;switch(a){case Te:E={x:d,y:e.y-i.height};break;case Le:E={x:d,y:e.y+e.height};break;case Ce:E={x:e.x+e.width,y:m};break;case Se:E={x:e.x-i.width,y:m};break;default:E={x:e.x,y:e.y}}var x=a?mi(a):null;if(x!=null){var w=x==="y"?"height":"width";switch(c){case Nt:E[x]=E[x]-(e[w]/2-i[w]/2);break;case Yt:E[x]=E[x]+(e[w]/2-i[w]/2);break;default:}}return E}function Ye(t,e){e===void 0&&(e={});var i=e,s=i.placement,a=s===void 0?t.placement:s,c=i.boundary,d=c===void 0?ys:c,m=i.rootBoundary,E=m===void 0?dn:m,x=i.elementContext,w=x===void 0?pi:x,I=i.altBoundary,L=I===void 0?!1:I,k=i.padding,D=k===void 0?0:k,U=_n(typeof D!="number"?D:yn(D,Bt)),F=w===pi?Es:pi,M=t.rects.popper,K=t.elements[L?F:w],ae=Cs(Ft(K)?K:K.contextElement||Be(t.elements.popper),d,E),se=mt(t.elements.reference),u=En({reference:se,element:M,strategy:"absolute",placement:a}),de=Ki(Object.assign({},M,u)),ue=w===pi?de:se,ge={top:ae.top-ue.top+U.top,bottom:ue.bottom-ae.bottom+U.bottom,left:ae.left-ue.left+U.left,right:ue.right-ae.right+U.right},oe=t.modifiersData.offset;if(w===pi&&oe){var Ne=oe[a];Object.keys(ge).forEach(function(ce){var Ve=[Ce,Le].indexOf(ce)>=0?1:-1,Oe=[Te,Le].indexOf(ce)>=0?"y":"x";ge[ce]+=Ne[Oe]*Ve})}return ge}function Ss(t,e){e===void 0&&(e={});var i=e,s=i.placement,a=i.boundary,c=i.rootBoundary,d=i.padding,m=i.flipVariations,E=i.allowedAutoPlacements,x=E===void 0?pn:E,w=_t(s),I=w?m?dr:dr.filter(function(D){return _t(D)===w}):Bt,L=I.filter(function(D){return x.indexOf(D)>=0});L.length===0&&(L=I);var k=L.reduce(function(D,U){return D[U]=Ye(t,{placement:U,boundary:a,rootBoundary:c,padding:d})[He(U)],D},{});return Object.keys(k).sort(function(D,U){return k[D]-k[U]})}function Gc(t){if(He(t)===hn)return[];var e=qi(t);return[vr(t),e,vr(e)]}function Jc(t){var e=t.state,i=t.options,s=t.name;if(!e.modifiersData[s]._skip){for(var a=i.mainAxis,c=a===void 0?!0:a,d=i.altAxis,m=d===void 0?!0:d,E=i.fallbackPlacements,x=i.padding,w=i.boundary,I=i.rootBoundary,L=i.altBoundary,k=i.flipVariations,D=k===void 0?!0:k,U=i.allowedAutoPlacements,F=e.options.placement,M=He(F),K=M===F,ae=E||(K||!D?[qi(F)]:Gc(F)),se=[F].concat(ae).reduce(function(ze,we){return ze.concat(He(we)===hn?Ss(e,{placement:we,boundary:w,rootBoundary:I,padding:x,flipVariations:D,allowedAutoPlacements:U}):we)},[]),u=e.rects.reference,de=e.rects.popper,ue=new Map,ge=!0,oe=se[0],Ne=0;Ne<se.length;Ne++){var ce=se[Ne],Ve=He(ce),Oe=_t(ce)===Nt,ft=[Te,Le].indexOf(Ve)>=0,te=ft?"width":"height",Z=Ye(e,{placement:ce,boundary:w,rootBoundary:I,altBoundary:L,padding:x}),X=ft?Oe?Ce:Se:Oe?Le:Te;u[te]>de[te]&&(X=qi(X));var fe=qi(X),Ae=[];if(c&&Ae.push(Z[Ve]<=0),m&&Ae.push(Z[X]<=0,Z[fe]<=0),Ae.every(function(ze){return ze})){oe=ce,ge=!1;break}ue.set(ce,Ae)}if(ge)for(var ye=D?3:1,ht=function(we){var dt=se.find(function(At){var Ue=ue.get(At);if(Ue)return Ue.slice(0,we).every(function(Zi){return Zi})});if(dt)return oe=dt,"break"},Re=ye;Re>0;Re--){var je=ht(Re);if(je==="break")break}e.placement!==oe&&(e.modifiersData[s]._skip=!0,e.placement=oe,e.reset=!0)}}var yr={name:"flip",enabled:!0,phase:"main",fn:Jc,requiresIfExists:["offset"],data:{_skip:!1}};function wa(t,e,i){return i===void 0&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function Ca(t){return[Te,Ce,Le,Se].some(function(e){return t[e]>=0})}function Qc(t){var e=t.state,i=t.name,s=e.rects.reference,a=e.rects.popper,c=e.modifiersData.preventOverflow,d=Ye(e,{elementContext:"reference"}),m=Ye(e,{altBoundary:!0}),E=wa(d,s),x=wa(m,a,c),w=Ca(E),I=Ca(x);e.modifiersData[i]={referenceClippingOffsets:E,popperEscapeOffsets:x,isReferenceHidden:w,hasPopperEscaped:I},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":w,"data-popper-escaped":I})}var Er={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Qc};function Zc(t,e,i){var s=He(t),a=[Se,Te].indexOf(s)>=0?-1:1,c=typeof i=="function"?i(Object.assign({},e,{placement:t})):i,d=c[0],m=c[1];return d=d||0,m=(m||0)*a,[Se,Ce].indexOf(s)>=0?{x:m,y:d}:{x:d,y:m}}function ef(t){var e=t.state,i=t.options,s=t.name,a=i.offset,c=a===void 0?[0,0]:a,d=pn.reduce(function(w,I){return w[I]=Zc(I,e.rects,c),w},{}),m=d[e.placement],E=m.x,x=m.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=E,e.modifiersData.popperOffsets.y+=x),e.modifiersData[s]=d}var br={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:ef};function tf(t){var e=t.state,i=t.name;e.modifiersData[i]=En({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})}var zi={name:"popperOffsets",enabled:!0,phase:"read",fn:tf,data:{}};function xs(t){return t==="x"?"y":"x"}function nf(t){var e=t.state,i=t.options,s=t.name,a=i.mainAxis,c=a===void 0?!0:a,d=i.altAxis,m=d===void 0?!1:d,E=i.boundary,x=i.rootBoundary,w=i.altBoundary,I=i.padding,L=i.tether,k=L===void 0?!0:L,D=i.tetherOffset,U=D===void 0?0:D,F=Ye(e,{boundary:E,rootBoundary:x,padding:I,altBoundary:w}),M=He(e.placement),K=_t(e.placement),ae=!K,se=mi(M),u=xs(se),de=e.modifiersData.popperOffsets,ue=e.rects.reference,ge=e.rects.popper,oe=typeof U=="function"?U(Object.assign({},e.rects,{placement:e.placement})):U,Ne={x:0,y:0};if(!!de){if(c||m){var ce=se==="y"?Te:Se,Ve=se==="y"?Le:Ce,Oe=se==="y"?"height":"width",ft=de[se],te=de[se]+F[ce],Z=de[se]-F[Ve],X=k?-ge[Oe]/2:0,fe=K===Nt?ue[Oe]:ge[Oe],Ae=K===Nt?-ge[Oe]:-ue[Oe],ye=e.elements.arrow,ht=k&&ye?gi(ye):{width:0,height:0},Re=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:vn(),je=Re[ce],ze=Re[Ve],we=vi(0,ue[Oe],ht[Oe]),dt=ae?ue[Oe]/2-X-we-je-oe:fe-we-je-oe,At=ae?-ue[Oe]/2+X+we+ze+oe:Ae+we+ze+oe,Ue=e.elements.arrow&&xt(e.elements.arrow),Zi=Ue?se==="y"?Ue.clientTop||0:Ue.clientLeft||0:0,Xn=e.modifiersData.offset?e.modifiersData.offset[e.placement][se]:0,Yn=de[se]+dt-Xn-Zi,it=de[se]+At-Xn;if(c){var Kt=vi(k?Gt(te,Yn):te,ft,k?vt(Z,it):Z);de[se]=Kt,Ne[se]=Kt-ft}if(m){var si=se==="x"?Te:Se,Y=se==="x"?Le:Ce,Pe=de[u],Gn=Pe+F[si],Jn=Pe-F[Y],Qn=vi(k?Gt(Gn,Yn):Gn,Pe,k?vt(Jn,it):Jn);de[u]=Qn,Ne[u]=Qn-Pe}}e.modifiersData[s]=Ne}}var Tr={name:"preventOverflow",enabled:!0,phase:"main",fn:nf,requiresIfExists:["offset"]};function Ns(t){return{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function Os(t){return t===xe(t)||!Me(t)?_i(t):Ns(t)}function rf(t){var e=t.getBoundingClientRect(),i=e.width/t.offsetWidth||1,s=e.height/t.offsetHeight||1;return i!==1||s!==1}function Ds(t,e,i){i===void 0&&(i=!1);var s=Me(e),a=Me(e)&&rf(e),c=Be(e),d=mt(t,a),m={scrollLeft:0,scrollTop:0},E={x:0,y:0};return(s||!s&&!i)&&(($e(e)!=="body"||Ei(c))&&(m=Os(e)),Me(e)?(E=mt(e,!0),E.x+=e.clientLeft,E.y+=e.clientTop):c&&(E.x=yi(c))),{x:d.left+m.scrollLeft-E.x,y:d.top+m.scrollTop-E.y,width:d.width,height:d.height}}function sf(t){var e=new Map,i=new Set,s=[];t.forEach(function(c){e.set(c.name,c)});function a(c){i.add(c.name);var d=[].concat(c.requires||[],c.requiresIfExists||[]);d.forEach(function(m){if(!i.has(m)){var E=e.get(m);E&&a(E)}}),s.push(c)}return t.forEach(function(c){i.has(c.name)||a(c)}),s}function Ls(t){var e=sf(t);return bs.reduce(function(i,s){return i.concat(e.filter(function(a){return a.phase===s}))},[])}function Ps(t){var e;return function(){return e||(e=new Promise(function(i){Promise.resolve().then(function(){e=void 0,i(t())})})),e}}function ks(t){var e=t.reduce(function(i,s){var a=i[s.name];return i[s.name]=a?Object.assign({},a,s,{options:Object.assign({},a.options,s.options),data:Object.assign({},a.data,s.data)}):s,i},{});return Object.keys(e).map(function(i){return e[i]})}var Sa={placement:"bottom",modifiers:[],strategy:"absolute"};function xa(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return!e.some(function(s){return!(s&&typeof s.getBoundingClientRect=="function")})}function bi(t){t===void 0&&(t={});var e=t,i=e.defaultModifiers,s=i===void 0?[]:i,a=e.defaultOptions,c=a===void 0?Sa:a;return function(m,E,x){x===void 0&&(x=c);var w={placement:"bottom",orderedModifiers:[],options:Object.assign({},Sa,c),modifiersData:{},elements:{reference:m,popper:E},attributes:{},styles:{}},I=[],L=!1,k={state:w,setOptions:function(M){var K=typeof M=="function"?M(w.options):M;U(),w.options=Object.assign({},c,w.options,K),w.scrollParents={reference:Ft(m)?Jt(m):m.contextElement?Jt(m.contextElement):[],popper:Jt(E)};var ae=Ls(ks([].concat(s,w.options.modifiers)));if(w.orderedModifiers=ae.filter(function(ce){return ce.enabled}),!1){var se;if(getBasePlacement(w.options.placement)===auto)var u;var de,ue,ge,oe,Ne}return D(),k.update()},forceUpdate:function(){if(!L){var M=w.elements,K=M.reference,ae=M.popper;if(!!xa(K,ae)){w.rects={reference:Ds(K,xt(ae),w.options.strategy==="fixed"),popper:gi(ae)},w.reset=!1,w.placement=w.options.placement,w.orderedModifiers.forEach(function(ce){return w.modifiersData[ce.name]=Object.assign({},ce.data)});for(var se=0,u=0;u<w.orderedModifiers.length;u++){if(w.reset===!0){w.reset=!1,u=-1;continue}var de=w.orderedModifiers[u],ue=de.fn,ge=de.options,oe=ge===void 0?{}:ge,Ne=de.name;typeof ue=="function"&&(w=ue({state:w,options:oe,name:Ne,instance:k})||w)}}}},update:Ps(function(){return new Promise(function(F){k.forceUpdate(),F(w)})}),destroy:function(){U(),L=!0}};if(!xa(m,E))return k;k.setOptions(x).then(function(F){!L&&x.onFirstUpdate&&x.onFirstUpdate(F)});function D(){w.orderedModifiers.forEach(function(F){var M=F.name,K=F.options,ae=K===void 0?{}:K,se=F.effect;if(typeof se=="function"){var u=se({state:w,name:M,instance:k,options:ae}),de=function(){};I.push(u||de)}})}function U(){I.forEach(function(F){return F()}),I=[]}return k}}var Na=bi();var of=[Wi,zi,Ui,Vi],Oa=bi({defaultModifiers:of});var af=[Wi,zi,Ui,Vi,br,yr,Tr,gr,Er],Ar=bi({defaultModifiers:af});var lf=1e6,uf=1e3,Is="transitionend",cf=t=>t==null?`${t}`:{}.toString.call(t).match(/\s([a-z]+)/i)[1].toLowerCase(),ff=t=>{do t+=Math.floor(Math.random()*lf);while(document.getElementById(t));return t},Da=t=>{let e=t.getAttribute("data-bs-target");if(!e||e==="#"){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&i!=="#"?i.trim():null}return e},Rs=t=>{let e=Da(t);return e&&document.querySelector(e)?e:null},Qt=t=>{let e=Da(t);return e?document.querySelector(e):null},hf=t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t),s=Number.parseFloat(e),a=Number.parseFloat(i);return!s&&!a?0:(e=e.split(",")[0],i=i.split(",")[0],(Number.parseFloat(e)+Number.parseFloat(i))*uf)},La=t=>{t.dispatchEvent(new Event(Is))},Ti=t=>!t||typeof t!="object"?!1:(typeof t.jquery!="undefined"&&(t=t[0]),typeof t.nodeType!="undefined"),Zt=t=>Ti(t)?t.jquery?t[0]:t:typeof t=="string"&&t.length>0?document.querySelector(t):null,Ot=(t,e,i)=>{Object.keys(i).forEach(s=>{let a=i[s],c=e[s],d=c&&Ti(c)?"element":cf(c);if(!new RegExp(a).test(d))throw new TypeError(`${t.toUpperCase()}: Option "${s}" provided type "${d}" but expected type "${a}".`)})},bn=t=>!Ti(t)||t.getClientRects().length===0?!1:getComputedStyle(t).getPropertyValue("visibility")==="visible",Ai=t=>!t||t.nodeType!==Node.ELEMENT_NODE||t.classList.contains("disabled")?!0:typeof t.disabled!="undefined"?t.disabled:t.hasAttribute("disabled")&&t.getAttribute("disabled")!=="false",Pa=t=>{if(!document.documentElement.attachShadow)return null;if(typeof t.getRootNode=="function"){let e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?Pa(t.parentNode):null},Cr=()=>{},Xi=t=>{t.offsetHeight},ka=()=>{let{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},js=[],df=t=>{document.readyState==="loading"?(js.length||document.addEventListener("DOMContentLoaded",()=>{js.forEach(e=>e())}),js.push(t)):t()},et=()=>document.documentElement.dir==="rtl",yt=t=>{df(()=>{let e=ka();if(e){let i=t.NAME,s=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=s,t.jQueryInterface)}})},wi=t=>{typeof t=="function"&&t()},Ia=(t,e,i=!0)=>{if(!i){wi(t);return}let s=5,a=hf(e)+s,c=!1,d=({target:m})=>{m===e&&(c=!0,e.removeEventListener(Is,d),wi(t))};e.addEventListener(Is,d),setTimeout(()=>{c||La(e)},a)},Ra=(t,e,i,s)=>{let a=t.indexOf(e);if(a===-1)return t[!i&&s?t.length-1:0];let c=t.length;return a+=i?1:-1,s&&(a=(a+c)%c),t[Math.max(0,Math.min(a,c-1))]},pf=/[^.]*(?=\..*)\.|.*/,gf=/\..*/,mf=/::\d+$/,$s={},ja=1,vf={mouseenter:"mouseover",mouseleave:"mouseout"},_f=/^(mouseenter|mouseleave)/i,$a=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function Ma(t,e){return e&&`${e}::${ja++}`||t.uidEvent||ja++}function Ha(t){let e=Ma(t);return t.uidEvent=e,$s[e]=$s[e]||{},$s[e]}function yf(t,e){return function i(s){return s.delegateTarget=t,i.oneOff&&$.off(t,s.type,e),e.apply(t,[s])}}function Ef(t,e,i){return function s(a){let c=t.querySelectorAll(e);for(let{target:d}=a;d&&d!==this;d=d.parentNode)for(let m=c.length;m--;)if(c[m]===d)return a.delegateTarget=d,s.oneOff&&$.off(t,a.type,e,i),i.apply(d,[a]);return null}}function Ba(t,e,i=null){let s=Object.keys(t);for(let a=0,c=s.length;a<c;a++){let d=t[s[a]];if(d.originalHandler===e&&d.delegationSelector===i)return d}return null}function Fa(t,e,i){let s=typeof e=="string",a=s?i:e,c=Ua(t);return $a.has(c)||(c=t),[s,a,c]}function Va(t,e,i,s,a){if(typeof e!="string"||!t)return;if(i||(i=s,s=null),_f.test(e)){let k=D=>function(U){if(!U.relatedTarget||U.relatedTarget!==U.delegateTarget&&!U.delegateTarget.contains(U.relatedTarget))return D.call(this,U)};s?s=k(s):i=k(i)}let[c,d,m]=Fa(e,i,s),E=Ha(t),x=E[m]||(E[m]={}),w=Ba(x,d,c?i:null);if(w){w.oneOff=w.oneOff&&a;return}let I=Ma(d,e.replace(pf,"")),L=c?Ef(t,i,s):yf(t,i);L.delegationSelector=c?i:null,L.originalHandler=d,L.oneOff=a,L.uidEvent=I,x[I]=L,t.addEventListener(m,L,c)}function Ms(t,e,i,s,a){let c=Ba(e[i],s,a);!c||(t.removeEventListener(i,c,Boolean(a)),delete e[i][c.uidEvent])}function bf(t,e,i,s){let a=e[i]||{};Object.keys(a).forEach(c=>{if(c.includes(s)){let d=a[c];Ms(t,e,i,d.originalHandler,d.delegationSelector)}})}function Ua(t){return t=t.replace(gf,""),vf[t]||t}var $={on(t,e,i,s){Va(t,e,i,s,!1)},one(t,e,i,s){Va(t,e,i,s,!0)},off(t,e,i,s){if(typeof e!="string"||!t)return;let[a,c,d]=Fa(e,i,s),m=d!==e,E=Ha(t),x=e.startsWith(".");if(typeof c!="undefined"){if(!E||!E[d])return;Ms(t,E,d,c,a?i:null);return}x&&Object.keys(E).forEach(I=>{bf(t,E,I,e.slice(1))});let w=E[d]||{};Object.keys(w).forEach(I=>{let L=I.replace(mf,"");if(!m||e.includes(L)){let k=w[I];Ms(t,E,d,k.originalHandler,k.delegationSelector)}})},trigger(t,e,i){if(typeof e!="string"||!t)return null;let s=ka(),a=Ua(e),c=e!==a,d=$a.has(a),m,E=!0,x=!0,w=!1,I=null;return c&&s&&(m=s.Event(e,i),s(t).trigger(m),E=!m.isPropagationStopped(),x=!m.isImmediatePropagationStopped(),w=m.isDefaultPrevented()),d?(I=document.createEvent("HTMLEvents"),I.initEvent(a,E,!0)):I=new CustomEvent(e,{bubbles:E,cancelable:!0}),typeof i!="undefined"&&Object.keys(i).forEach(L=>{Object.defineProperty(I,L,{get(){return i[L]}})}),w&&I.preventDefault(),x&&t.dispatchEvent(I),I.defaultPrevented&&typeof m!="undefined"&&m.preventDefault(),I}},ei=new Map,Tn={set(t,e,i){ei.has(t)||ei.set(t,new Map);let s=ei.get(t);if(!s.has(e)&&s.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`);return}s.set(e,i)},get(t,e){return ei.has(t)&&ei.get(t).get(e)||null},remove(t,e){if(!ei.has(t))return;let i=ei.get(t);i.delete(e),i.size===0&&ei.delete(t)}},Tf="5.1.3",Et=class{constructor(e){e=Zt(e),!!e&&(this._element=e,Tn.set(this._element,this.constructor.DATA_KEY,this))}dispose(){Tn.remove(this._element,this.constructor.DATA_KEY),$.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(e=>{this[e]=null})}_queueCallback(e,i,s=!0){Ia(e,i,s)}static getInstance(e){return Tn.get(Zt(e),this.DATA_KEY)}static getOrCreateInstance(e,i={}){return this.getInstance(e)||new this(e,typeof i=="object"?i:null)}static get VERSION(){return Tf}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}},Sr=(t,e="hide")=>{let i=`click.dismiss${t.EVENT_KEY}`,s=t.NAME;$.on(document,i,`[data-bs-dismiss="${s}"]`,function(a){if(["A","AREA"].includes(this.tagName)&&a.preventDefault(),Ai(this))return;let c=Qt(this)||this.closest(`.${s}`);t.getOrCreateInstance(c)[e]()})},Af="alert",wf="bs.alert",Wa=`.${wf}`,Cf=`close${Wa}`,Sf=`closed${Wa}`,xf="fade",Nf="show",An=class extends Et{static get NAME(){return Af}close(){if($.trigger(this._element,Cf).defaultPrevented)return;this._element.classList.remove(Nf);let i=this._element.classList.contains(xf);this._queueCallback(()=>this._destroyElement(),this._element,i)}_destroyElement(){this._element.remove(),$.trigger(this._element,Sf),this.dispose()}static jQueryInterface(e){return this.each(function(){let i=An.getOrCreateInstance(this);if(typeof e=="string"){if(i[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);i[e](this)}})}};Sr(An,"close");yt(An);var Of="button",Df="bs.button",Lf=`.${Df}`,Pf=".data-api",kf="active",qa='[data-bs-toggle="button"]',If=`click${Lf}${Pf}`,wn=class extends Et{static get NAME(){return Of}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(kf))}static jQueryInterface(e){return this.each(function(){let i=wn.getOrCreateInstance(this);e==="toggle"&&i[e]()})}};$.on(document,If,qa,t=>{t.preventDefault();let e=t.target.closest(qa);wn.getOrCreateInstance(e).toggle()});yt(wn);function Ka(t){return t==="true"?!0:t==="false"?!1:t===Number(t).toString()?Number(t):t===""||t==="null"?null:t}function Hs(t){return t.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}var Fe={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${Hs(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${Hs(e)}`)},getDataAttributes(t){if(!t)return{};let e={};return Object.keys(t.dataset).filter(i=>i.startsWith("bs")).forEach(i=>{let s=i.replace(/^bs/,"");s=s.charAt(0).toLowerCase()+s.slice(1,s.length),e[s]=Ka(t.dataset[i])}),e},getDataAttribute(t,e){return Ka(t.getAttribute(`data-bs-${Hs(e)}`))},offset(t){let e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}},position(t){return{top:t.offsetTop,left:t.offsetLeft}}},Rf=3,ee={find(t,e=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(e,t))},findOne(t,e=document.documentElement){return Element.prototype.querySelector.call(e,t)},children(t,e){return[].concat(...t.children).filter(i=>i.matches(e))},parents(t,e){let i=[],s=t.parentNode;for(;s&&s.nodeType===Node.ELEMENT_NODE&&s.nodeType!==Rf;)s.matches(e)&&i.push(s),s=s.parentNode;return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){let e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(i=>`${i}:not([tabindex^="-"])`).join(", ");return this.find(e,t).filter(i=>!Ai(i)&&bn(i))}},za="carousel",jf="bs.carousel",at=`.${jf}`,Xa=".data-api",$f="ArrowLeft",Mf="ArrowRight",Hf=500,Bf=40,Ya={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Ff={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Ci="next",Si="prev",xi="left",Cn="right",Vf={[$f]:Cn,[Mf]:xi},Uf=`slide${at}`,Ga=`slid${at}`,Wf=`keydown${at}`,qf=`mouseenter${at}`,Kf=`mouseleave${at}`,zf=`touchstart${at}`,Xf=`touchmove${at}`,Yf=`touchend${at}`,Gf=`pointerdown${at}`,Jf=`pointerup${at}`,Qf=`dragstart${at}`,Zf=`load${at}${Xa}`,eh=`click${at}${Xa}`,th="carousel",Ni="active",ih="slide",nh="carousel-item-end",rh="carousel-item-start",sh="carousel-item-next",oh="carousel-item-prev",ah="pointer-event",lh=".active",xr=".active.carousel-item",uh=".carousel-item",ch=".carousel-item img",fh=".carousel-item-next, .carousel-item-prev",hh=".carousel-indicators",dh="[data-bs-target]",ph="[data-bs-slide], [data-bs-slide-to]",gh='[data-bs-ride="carousel"]',mh="touch",vh="pen",Dt=class extends Et{constructor(e,i){super(e);this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(i),this._indicatorsElement=ee.findOne(hh,this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return Ya}static get NAME(){return za}next(){this._slide(Ci)}nextWhenVisible(){!document.hidden&&bn(this._element)&&this.next()}prev(){this._slide(Si)}pause(e){e||(this._isPaused=!0),ee.findOne(fh,this._element)&&(La(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=ee.findOne(xr,this._element);let i=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding){$.one(this._element,Ga,()=>this.to(e));return}if(i===e){this.pause(),this.cycle();return}let s=e>i?Ci:Si;this._slide(s,this._items[e])}_getConfig(e){return e=re(re(re({},Ya),Fe.getDataAttributes(this._element)),typeof e=="object"?e:{}),Ot(za,e,Ff),e}_handleSwipe(){let e=Math.abs(this.touchDeltaX);if(e<=Bf)return;let i=e/this.touchDeltaX;this.touchDeltaX=0,!!i&&this._slide(i>0?Cn:xi)}_addEventListeners(){this._config.keyboard&&$.on(this._element,Wf,e=>this._keydown(e)),this._config.pause==="hover"&&($.on(this._element,qf,e=>this.pause(e)),$.on(this._element,Kf,e=>this.cycle(e))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){let e=c=>this._pointerEvent&&(c.pointerType===vh||c.pointerType===mh),i=c=>{e(c)?this.touchStartX=c.clientX:this._pointerEvent||(this.touchStartX=c.touches[0].clientX)},s=c=>{this.touchDeltaX=c.touches&&c.touches.length>1?0:c.touches[0].clientX-this.touchStartX},a=c=>{e(c)&&(this.touchDeltaX=c.clientX-this.touchStartX),this._handleSwipe(),this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(d=>this.cycle(d),Hf+this._config.interval))};ee.find(ch,this._element).forEach(c=>{$.on(c,Qf,d=>d.preventDefault())}),this._pointerEvent?($.on(this._element,Gf,c=>i(c)),$.on(this._element,Jf,c=>a(c)),this._element.classList.add(ah)):($.on(this._element,zf,c=>i(c)),$.on(this._element,Xf,c=>s(c)),$.on(this._element,Yf,c=>a(c)))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;let i=Vf[e.key];i&&(e.preventDefault(),this._slide(i))}_getItemIndex(e){return this._items=e&&e.parentNode?ee.find(uh,e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(e,i){let s=e===Ci;return Ra(this._items,i,s,this._config.wrap)}_triggerSlideEvent(e,i){let s=this._getItemIndex(e),a=this._getItemIndex(ee.findOne(xr,this._element));return $.trigger(this._element,Uf,{relatedTarget:e,direction:i,from:a,to:s})}_setActiveIndicatorElement(e){if(this._indicatorsElement){let i=ee.findOne(lh,this._indicatorsElement);i.classList.remove(Ni),i.removeAttribute("aria-current");let s=ee.find(dh,this._indicatorsElement);for(let a=0;a<s.length;a++)if(Number.parseInt(s[a].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(e)){s[a].classList.add(Ni),s[a].setAttribute("aria-current","true");break}}}_updateInterval(){let e=this._activeElement||ee.findOne(xr,this._element);if(!e)return;let i=Number.parseInt(e.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(e,i){let s=this._directionToOrder(e),a=ee.findOne(xr,this._element),c=this._getItemIndex(a),d=i||this._getItemByOrder(s,a),m=this._getItemIndex(d),E=Boolean(this._interval),x=s===Ci,w=x?rh:nh,I=x?sh:oh,L=this._orderToDirection(s);if(d&&d.classList.contains(Ni)){this._isSliding=!1;return}if(this._isSliding||this._triggerSlideEvent(d,L).defaultPrevented||!a||!d)return;this._isSliding=!0,E&&this.pause(),this._setActiveIndicatorElement(d),this._activeElement=d;let D=()=>{$.trigger(this._element,Ga,{relatedTarget:d,direction:L,from:c,to:m})};if(this._element.classList.contains(ih)){d.classList.add(I),Xi(d),a.classList.add(w),d.classList.add(w);let U=()=>{d.classList.remove(w,I),d.classList.add(Ni),a.classList.remove(Ni,I,w),this._isSliding=!1,setTimeout(D,0)};this._queueCallback(U,a,!0)}else a.classList.remove(Ni),d.classList.add(Ni),this._isSliding=!1,D();E&&this.cycle()}_directionToOrder(e){return[Cn,xi].includes(e)?et()?e===xi?Si:Ci:e===xi?Ci:Si:e}_orderToDirection(e){return[Ci,Si].includes(e)?et()?e===Si?xi:Cn:e===Si?Cn:xi:e}static carouselInterface(e,i){let s=Dt.getOrCreateInstance(e,i),{_config:a}=s;typeof i=="object"&&(a=re(re({},a),i));let c=typeof i=="string"?i:a.slide;if(typeof i=="number")s.to(i);else if(typeof c=="string"){if(typeof s[c]=="undefined")throw new TypeError(`No method named "${c}"`);s[c]()}else a.interval&&a.ride&&(s.pause(),s.cycle())}static jQueryInterface(e){return this.each(function(){Dt.carouselInterface(this,e)})}static dataApiClickHandler(e){let i=Qt(this);if(!i||!i.classList.contains(th))return;let s=re(re({},Fe.getDataAttributes(i)),Fe.getDataAttributes(this)),a=this.getAttribute("data-bs-slide-to");a&&(s.interval=!1),Dt.carouselInterface(i,s),a&&Dt.getInstance(i).to(a),e.preventDefault()}};$.on(document,eh,ph,Dt.dataApiClickHandler);$.on(window,Zf,()=>{let t=ee.find(gh);for(let e=0,i=t.length;e<i;e++)Dt.carouselInterface(t[e],Dt.getInstance(t[e]))});yt(Dt);var Ja="collapse",Qa="bs.collapse",Sn=`.${Qa}`,_h=".data-api",Za={toggle:!0,parent:null},yh={toggle:"boolean",parent:"(null|element)"},Eh=`show${Sn}`,bh=`shown${Sn}`,Th=`hide${Sn}`,Ah=`hidden${Sn}`,wh=`click${Sn}${_h}`,Bs="show",Yi="collapse",Nr="collapsing",el="collapsed",tl=`:scope .${Yi} .${Yi}`,Ch="collapse-horizontal",Sh="width",xh="height",Nh=".collapse.show, .collapse.collapsing",Fs='[data-bs-toggle="collapse"]',Oi=class extends Et{constructor(e,i){super(e);this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=[];let s=ee.find(Fs);for(let a=0,c=s.length;a<c;a++){let d=s[a],m=Rs(d),E=ee.find(m).filter(x=>x===this._element);m!==null&&E.length&&(this._selector=m,this._triggerArray.push(d))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Za}static get NAME(){return Ja}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let e=[],i;if(this._config.parent){let x=ee.find(tl,this._config.parent);e=ee.find(Nh,this._config.parent).filter(w=>!x.includes(w))}let s=ee.findOne(this._selector);if(e.length){let x=e.find(w=>s!==w);if(i=x?Oi.getInstance(x):null,i&&i._isTransitioning)return}if($.trigger(this._element,Eh).defaultPrevented)return;e.forEach(x=>{s!==x&&Oi.getOrCreateInstance(x,{toggle:!1}).hide(),i||Tn.set(x,Qa,null)});let c=this._getDimension();this._element.classList.remove(Yi),this._element.classList.add(Nr),this._element.style[c]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;let d=()=>{this._isTransitioning=!1,this._element.classList.remove(Nr),this._element.classList.add(Yi,Bs),this._element.style[c]="",$.trigger(this._element,bh)},E=`scroll${c[0].toUpperCase()+c.slice(1)}`;this._queueCallback(d,this._element,!0),this._element.style[c]=`${this._element[E]}px`}hide(){if(this._isTransitioning||!this._isShown()||$.trigger(this._element,Th).defaultPrevented)return;let i=this._getDimension();this._element.style[i]=`${this._element.getBoundingClientRect()[i]}px`,Xi(this._element),this._element.classList.add(Nr),this._element.classList.remove(Yi,Bs);let s=this._triggerArray.length;for(let c=0;c<s;c++){let d=this._triggerArray[c],m=Qt(d);m&&!this._isShown(m)&&this._addAriaAndCollapsedClass([d],!1)}this._isTransitioning=!0;let a=()=>{this._isTransitioning=!1,this._element.classList.remove(Nr),this._element.classList.add(Yi),$.trigger(this._element,Ah)};this._element.style[i]="",this._queueCallback(a,this._element,!0)}_isShown(e=this._element){return e.classList.contains(Bs)}_getConfig(e){return e=re(re(re({},Za),Fe.getDataAttributes(this._element)),e),e.toggle=Boolean(e.toggle),e.parent=Zt(e.parent),Ot(Ja,e,yh),e}_getDimension(){return this._element.classList.contains(Ch)?Sh:xh}_initializeChildren(){if(!this._config.parent)return;let e=ee.find(tl,this._config.parent);ee.find(Fs,this._config.parent).filter(i=>!e.includes(i)).forEach(i=>{let s=Qt(i);s&&this._addAriaAndCollapsedClass([i],this._isShown(s))})}_addAriaAndCollapsedClass(e,i){!e.length||e.forEach(s=>{i?s.classList.remove(el):s.classList.add(el),s.setAttribute("aria-expanded",i)})}static jQueryInterface(e){return this.each(function(){let i={};typeof e=="string"&&/show|hide/.test(e)&&(i.toggle=!1);let s=Oi.getOrCreateInstance(this,i);if(typeof e=="string"){if(typeof s[e]=="undefined")throw new TypeError(`No method named "${e}"`);s[e]()}})}};$.on(document,wh,Fs,function(t){(t.target.tagName==="A"||t.delegateTarget&&t.delegateTarget.tagName==="A")&&t.preventDefault();let e=Rs(this);ee.find(e).forEach(s=>{Oi.getOrCreateInstance(s,{toggle:!1}).toggle()})});yt(Oi);var Vs="dropdown",Oh="bs.dropdown",Di=`.${Oh}`,Us=".data-api",Or="Escape",il="Space",nl="Tab",Ws="ArrowUp",Dr="ArrowDown",Dh=2,Lh=new RegExp(`${Ws}|${Dr}|${Or}`),Ph=`hide${Di}`,kh=`hidden${Di}`,Ih=`show${Di}`,Rh=`shown${Di}`,rl=`click${Di}${Us}`,sl=`keydown${Di}${Us}`,jh=`keyup${Di}${Us}`,Gi="show",$h="dropup",Mh="dropend",Hh="dropstart",Bh="navbar",xn='[data-bs-toggle="dropdown"]',qs=".dropdown-menu",Fh=".navbar-nav",Vh=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",Uh=et()?"top-end":"top-start",Wh=et()?"top-start":"top-end",qh=et()?"bottom-end":"bottom-start",Kh=et()?"bottom-start":"bottom-end",zh=et()?"left-start":"right-start",Xh=et()?"right-start":"left-start",Yh={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},Gh={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"},lt=class extends Et{constructor(e,i){super(e);this._popper=null,this._config=this._getConfig(i),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return Yh}static get DefaultType(){return Gh}static get NAME(){return Vs}toggle(){return this._isShown()?this.hide():this.show()}show(){if(Ai(this._element)||this._isShown(this._menu))return;let e={relatedTarget:this._element};if($.trigger(this._element,Ih,e).defaultPrevented)return;let s=lt.getParentFromElement(this._element);this._inNavbar?Fe.setDataAttribute(this._menu,"popper","none"):this._createPopper(s),"ontouchstart"in document.documentElement&&!s.closest(Fh)&&[].concat(...document.body.children).forEach(a=>$.on(a,"mouseover",Cr)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Gi),this._element.classList.add(Gi),$.trigger(this._element,Rh,e)}hide(){if(Ai(this._element)||!this._isShown(this._menu))return;let e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){$.trigger(this._element,Ph,e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(s=>$.off(s,"mouseover",Cr)),this._popper&&this._popper.destroy(),this._menu.classList.remove(Gi),this._element.classList.remove(Gi),this._element.setAttribute("aria-expanded","false"),Fe.removeDataAttribute(this._menu,"popper"),$.trigger(this._element,kh,e))}_getConfig(e){if(e=re(re(re({},this.constructor.Default),Fe.getDataAttributes(this._element)),e),Ot(Vs,e,this.constructor.DefaultType),typeof e.reference=="object"&&!Ti(e.reference)&&typeof e.reference.getBoundingClientRect!="function")throw new TypeError(`${Vs.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(e){if(typeof wr=="undefined")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let i=this._element;this._config.reference==="parent"?i=e:Ti(this._config.reference)?i=Zt(this._config.reference):typeof this._config.reference=="object"&&(i=this._config.reference);let s=this._getPopperConfig(),a=s.modifiers.find(c=>c.name==="applyStyles"&&c.enabled===!1);this._popper=Ar(i,this._menu,s),a&&Fe.setDataAttribute(this._menu,"popper","static")}_isShown(e=this._element){return e.classList.contains(Gi)}_getMenuElement(){return ee.next(this._element,qs)[0]}_getPlacement(){let e=this._element.parentNode;if(e.classList.contains(Mh))return zh;if(e.classList.contains(Hh))return Xh;let i=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return e.classList.contains($h)?i?Wh:Uh:i?Kh:qh}_detectNavbar(){return this._element.closest(`.${Bh}`)!==null}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(i=>Number.parseInt(i,10)):typeof e=="function"?i=>e(i,this._element):e}_getPopperConfig(){let e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return this._config.display==="static"&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),re(re({},e),typeof this._config.popperConfig=="function"?this._config.popperConfig(e):this._config.popperConfig)}_selectMenuItem({key:e,target:i}){let s=ee.find(Vh,this._menu).filter(bn);!s.length||Ra(s,i,e===Dr,!s.includes(i)).focus()}static jQueryInterface(e){return this.each(function(){let i=lt.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e]()}})}static clearMenus(e){if(e&&(e.button===Dh||e.type==="keyup"&&e.key!==nl))return;let i=ee.find(xn);for(let s=0,a=i.length;s<a;s++){let c=lt.getInstance(i[s]);if(!c||c._config.autoClose===!1||!c._isShown())continue;let d={relatedTarget:c._element};if(e){let m=e.composedPath(),E=m.includes(c._menu);if(m.includes(c._element)||c._config.autoClose==="inside"&&!E||c._config.autoClose==="outside"&&E||c._menu.contains(e.target)&&(e.type==="keyup"&&e.key===nl||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;e.type==="click"&&(d.clickEvent=e)}c._completeHide(d)}}static getParentFromElement(e){return Qt(e)||e.parentNode}static dataApiKeydownHandler(e){if(/input|textarea/i.test(e.target.tagName)?e.key===il||e.key!==Or&&(e.key!==Dr&&e.key!==Ws||e.target.closest(qs)):!Lh.test(e.key))return;let i=this.classList.contains(Gi);if(!i&&e.key===Or||(e.preventDefault(),e.stopPropagation(),Ai(this)))return;let s=this.matches(xn)?this:ee.prev(this,xn)[0],a=lt.getOrCreateInstance(s);if(e.key===Or){a.hide();return}if(e.key===Ws||e.key===Dr){i||a.show(),a._selectMenuItem(e);return}(!i||e.key===il)&<.clearMenus()}};$.on(document,sl,xn,lt.dataApiKeydownHandler);$.on(document,sl,qs,lt.dataApiKeydownHandler);$.on(document,rl,lt.clearMenus);$.on(document,jh,lt.clearMenus);$.on(document,rl,xn,function(t){t.preventDefault(),lt.getOrCreateInstance(this).toggle()});yt(lt);var ol=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",al=".sticky-top",Lr=class{constructor(){this._element=document.body}getWidth(){let e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){let e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",i=>i+e),this._setElementAttributes(ol,"paddingRight",i=>i+e),this._setElementAttributes(al,"marginRight",i=>i-e)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,i,s){let a=this.getWidth(),c=d=>{if(d!==this._element&&window.innerWidth>d.clientWidth+a)return;this._saveInitialAttribute(d,i);let m=window.getComputedStyle(d)[i];d.style[i]=`${s(Number.parseFloat(m))}px`};this._applyManipulationCallback(e,c)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(ol,"paddingRight"),this._resetElementAttributes(al,"marginRight")}_saveInitialAttribute(e,i){let s=e.style[i];s&&Fe.setDataAttribute(e,i,s)}_resetElementAttributes(e,i){let s=a=>{let c=Fe.getDataAttribute(a,i);typeof c=="undefined"?a.style.removeProperty(i):(Fe.removeDataAttribute(a,i),a.style[i]=c)};this._applyManipulationCallback(e,s)}_applyManipulationCallback(e,i){Ti(e)?i(e):ee.find(e,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}},Jh={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Qh={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},ll="backdrop",Zh="fade",ul="show",cl=`mousedown.bs.${ll}`,Ks=class{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){if(!this._config.isVisible){wi(e);return}this._append(),this._config.isAnimated&&Xi(this._getElement()),this._getElement().classList.add(ul),this._emulateAnimation(()=>{wi(e)})}hide(e){if(!this._config.isVisible){wi(e);return}this._getElement().classList.remove(ul),this._emulateAnimation(()=>{this.dispose(),wi(e)})}_getElement(){if(!this._element){let e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add(Zh),this._element=e}return this._element}_getConfig(e){return e=re(re({},Jh),typeof e=="object"?e:{}),e.rootElement=Zt(e.rootElement),Ot(ll,e,Qh),e}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),$.on(this._getElement(),cl,()=>{wi(this._config.clickCallback)}),this._isAppended=!0)}dispose(){!this._isAppended||($.off(this._element,cl),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){Ia(e,this._getElement(),this._config.isAnimated)}},ed={trapElement:null,autofocus:!0},td={trapElement:"element",autofocus:"boolean"},id="focustrap",nd="bs.focustrap",Pr=`.${nd}`,rd=`focusin${Pr}`,sd=`keydown.tab${Pr}`,od="Tab",ad="forward",fl="backward",zs=class{constructor(e){this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}activate(){let{trapElement:e,autofocus:i}=this._config;this._isActive||(i&&e.focus(),$.off(document,Pr),$.on(document,rd,s=>this._handleFocusin(s)),$.on(document,sd,s=>this._handleKeydown(s)),this._isActive=!0)}deactivate(){!this._isActive||(this._isActive=!1,$.off(document,Pr))}_handleFocusin(e){let{target:i}=e,{trapElement:s}=this._config;if(i===document||i===s||s.contains(i))return;let a=ee.focusableChildren(s);a.length===0?s.focus():this._lastTabNavDirection===fl?a[a.length-1].focus():a[0].focus()}_handleKeydown(e){e.key===od&&(this._lastTabNavDirection=e.shiftKey?fl:ad)}_getConfig(e){return e=re(re({},ed),typeof e=="object"?e:{}),Ot(id,e,td),e}},hl="modal",ld="bs.modal",bt=`.${ld}`,ud=".data-api",dl="Escape",pl={backdrop:!0,keyboard:!0,focus:!0},cd={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},fd=`hide${bt}`,hd=`hidePrevented${bt}`,gl=`hidden${bt}`,ml=`show${bt}`,dd=`shown${bt}`,vl=`resize${bt}`,_l=`click.dismiss${bt}`,yl=`keydown.dismiss${bt}`,pd=`mouseup.dismiss${bt}`,El=`mousedown.dismiss${bt}`,gd=`click${bt}${ud}`,bl="modal-open",md="fade",Tl="show",Xs="modal-static",vd=".modal.show",_d=".modal-dialog",yd=".modal-body",Ed='[data-bs-toggle="modal"]',Li=class extends Et{constructor(e,i){super(e);this._config=this._getConfig(i),this._dialog=ee.findOne(_d,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new Lr}static get Default(){return pl}static get NAME(){return hl}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||$.trigger(this._element,ml,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(bl),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),$.on(this._dialog,El,()=>{$.one(this._element,pd,s=>{s.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(e)))}hide(){if(!this._isShown||this._isTransitioning||$.trigger(this._element,fd).defaultPrevented)return;this._isShown=!1;let i=this._isAnimated();i&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(Tl),$.off(this._element,_l),$.off(this._dialog,El),this._queueCallback(()=>this._hideModal(),this._element,i)}dispose(){[window,this._dialog].forEach(e=>$.off(e,bt)),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ks({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new zs({trapElement:this._element})}_getConfig(e){return e=re(re(re({},pl),Fe.getDataAttributes(this._element)),typeof e=="object"?e:{}),Ot(hl,e,cd),e}_showElement(e){let i=this._isAnimated(),s=ee.findOne(yd,this._dialog);(!this._element.parentNode||this._element.parentNode.nodeType!==Node.ELEMENT_NODE)&&document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,s&&(s.scrollTop=0),i&&Xi(this._element),this._element.classList.add(Tl);let a=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,$.trigger(this._element,dd,{relatedTarget:e})};this._queueCallback(a,this._dialog,i)}_setEscapeEvent(){this._isShown?$.on(this._element,yl,e=>{this._config.keyboard&&e.key===dl?(e.preventDefault(),this.hide()):!this._config.keyboard&&e.key===dl&&this._triggerBackdropTransition()}):$.off(this._element,yl)}_setResizeEvent(){this._isShown?$.on(window,vl,()=>this._adjustDialog()):$.off(window,vl)}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove(bl),this._resetAdjustments(),this._scrollBar.reset(),$.trigger(this._element,gl)})}_showBackdrop(e){$.on(this._element,_l,i=>{if(this._ignoreBackdropClick){this._ignoreBackdropClick=!1;return}i.target===i.currentTarget&&(this._config.backdrop===!0?this.hide():this._config.backdrop==="static"&&this._triggerBackdropTransition())}),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains(md)}_triggerBackdropTransition(){if($.trigger(this._element,hd).defaultPrevented)return;let{classList:i,scrollHeight:s,style:a}=this._element,c=s>document.documentElement.clientHeight;!c&&a.overflowY==="hidden"||i.contains(Xs)||(c||(a.overflowY="hidden"),i.add(Xs),this._queueCallback(()=>{i.remove(Xs),c||this._queueCallback(()=>{a.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){let e=this._element.scrollHeight>document.documentElement.clientHeight,i=this._scrollBar.getWidth(),s=i>0;(!s&&e&&!et()||s&&!e&&et())&&(this._element.style.paddingLeft=`${i}px`),(s&&!e&&!et()||!s&&e&&et())&&(this._element.style.paddingRight=`${i}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,i){return this.each(function(){let s=Li.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof s[e]=="undefined")throw new TypeError(`No method named "${e}"`);s[e](i)}})}};$.on(document,gd,Ed,function(t){let e=Qt(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),$.one(e,ml,a=>{a.defaultPrevented||$.one(e,gl,()=>{bn(this)&&this.focus()})});let i=ee.findOne(vd);i&&Li.getInstance(i).hide(),Li.getOrCreateInstance(e).toggle(this)});Sr(Li);yt(Li);var Al="offcanvas",bd="bs.offcanvas",Pi=`.${bd}`,wl=".data-api",Td=`load${Pi}${wl}`,Ad="Escape",Cl={backdrop:!0,keyboard:!0,scroll:!1},wd={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Sl="show",Cd="offcanvas-backdrop",xl=".offcanvas.show",Sd=`show${Pi}`,xd=`shown${Pi}`,Nd=`hide${Pi}`,Nl=`hidden${Pi}`,Od=`click${Pi}${wl}`,Dd=`keydown.dismiss${Pi}`,Ld='[data-bs-toggle="offcanvas"]',ti=class extends Et{constructor(e,i){super(e);this._config=this._getConfig(i),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return Al}static get Default(){return Cl}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||$.trigger(this._element,Sd,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||new Lr().hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Sl);let s=()=>{this._config.scroll||this._focustrap.activate(),$.trigger(this._element,xd,{relatedTarget:e})};this._queueCallback(s,this._element,!0)}hide(){if(!this._isShown||$.trigger(this._element,Nd).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(Sl),this._backdrop.hide();let i=()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||new Lr().reset(),$.trigger(this._element,Nl)};this._queueCallback(i,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(e){return e=re(re(re({},Cl),Fe.getDataAttributes(this._element)),typeof e=="object"?e:{}),Ot(Al,e,wd),e}_initializeBackDrop(){return new Ks({className:Cd,isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new zs({trapElement:this._element})}_addEventListeners(){$.on(this._element,Dd,e=>{this._config.keyboard&&e.key===Ad&&this.hide()})}static jQueryInterface(e){return this.each(function(){let i=ti.getOrCreateInstance(this,e);if(typeof e=="string"){if(i[e]===void 0||e.startsWith("_")||e==="constructor")throw new TypeError(`No method named "${e}"`);i[e](this)}})}};$.on(document,Od,Ld,function(t){let e=Qt(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Ai(this))return;$.one(e,Nl,()=>{bn(this)&&this.focus()});let i=ee.findOne(xl);i&&i!==e&&ti.getInstance(i).hide(),ti.getOrCreateInstance(e).toggle(this)});$.on(window,Td,()=>ee.find(xl).forEach(t=>ti.getOrCreateInstance(t).show()));Sr(ti);yt(ti);var Pd=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),kd=/^aria-[\w-]*$/i,Id=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,Rd=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,jd=(t,e)=>{let i=t.nodeName.toLowerCase();if(e.includes(i))return Pd.has(i)?Boolean(Id.test(t.nodeValue)||Rd.test(t.nodeValue)):!0;let s=e.filter(a=>a instanceof RegExp);for(let a=0,c=s.length;a<c;a++)if(s[a].test(i))return!0;return!1},$d={"*":["class","dir","id","lang","role",kd],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]};function Ol(t,e,i){if(!t.length)return t;if(i&&typeof i=="function")return i(t);let a=new window.DOMParser().parseFromString(t,"text/html"),c=[].concat(...a.body.querySelectorAll("*"));for(let d=0,m=c.length;d<m;d++){let E=c[d],x=E.nodeName.toLowerCase();if(!Object.keys(e).includes(x)){E.remove();continue}let w=[].concat(...E.attributes),I=[].concat(e["*"]||[],e[x]||[]);w.forEach(L=>{jd(L,I)||E.removeAttribute(L.nodeName)})}return a.body.innerHTML}var Dl="tooltip",Md="bs.tooltip",Lt=`.${Md}`,Hd="bs-tooltip",Bd=new Set(["sanitize","allowList","sanitizeFn"]),Fd={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Vd={AUTO:"auto",TOP:"top",RIGHT:et()?"left":"right",BOTTOM:"bottom",LEFT:et()?"right":"left"},Ud={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:$d,popperConfig:null},Wd={HIDE:`hide${Lt}`,HIDDEN:`hidden${Lt}`,SHOW:`show${Lt}`,SHOWN:`shown${Lt}`,INSERTED:`inserted${Lt}`,CLICK:`click${Lt}`,FOCUSIN:`focusin${Lt}`,FOCUSOUT:`focusout${Lt}`,MOUSEENTER:`mouseenter${Lt}`,MOUSELEAVE:`mouseleave${Lt}`},kr="fade",qd="modal",Nn="show",On="show",Ys="out",Ll=".tooltip-inner",Pl=`.${qd}`,kl="hide.bs.modal",Dn="hover",Gs="focus",Kd="click",zd="manual",ki=class extends Et{constructor(e,i){if(typeof wr=="undefined")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e);this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(i),this.tip=null,this._setListeners()}static get Default(){return Ud}static get NAME(){return Dl}static get Event(){return Wd}static get DefaultType(){return Fd}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(!!this._isEnabled)if(e){let i=this._initializeOnDelegatedTarget(e);i._activeTrigger.click=!i._activeTrigger.click,i._isWithActiveTrigger()?i._enter(null,i):i._leave(null,i)}else{if(this.getTipElement().classList.contains(Nn)){this._leave(null,this);return}this._enter(null,this)}}dispose(){clearTimeout(this._timeout),$.off(this._element.closest(Pl),kl,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!(this.isWithContent()&&this._isEnabled))return;let e=$.trigger(this._element,this.constructor.Event.SHOW),i=Pa(this._element),s=i===null?this._element.ownerDocument.documentElement.contains(this._element):i.contains(this._element);if(e.defaultPrevented||!s)return;this.constructor.NAME==="tooltip"&&this.tip&&this.getTitle()!==this.tip.querySelector(Ll).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);let a=this.getTipElement(),c=ff(this.constructor.NAME);a.setAttribute("id",c),this._element.setAttribute("aria-describedby",c),this._config.animation&&a.classList.add(kr);let d=typeof this._config.placement=="function"?this._config.placement.call(this,a,this._element):this._config.placement,m=this._getAttachment(d);this._addAttachmentClass(m);let{container:E}=this._config;Tn.set(a,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(E.append(a),$.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=Ar(this._element,a,this._getPopperConfig(m)),a.classList.add(Nn);let x=this._resolvePossibleFunction(this._config.customClass);x&&a.classList.add(...x.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(L=>{$.on(L,"mouseover",Cr)});let w=()=>{let L=this._hoverState;this._hoverState=null,$.trigger(this._element,this.constructor.Event.SHOWN),L===Ys&&this._leave(null,this)},I=this.tip.classList.contains(kr);this._queueCallback(w,this.tip,I)}hide(){if(!this._popper)return;let e=this.getTipElement(),i=()=>{this._isWithActiveTrigger()||(this._hoverState!==On&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),$.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())};if($.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(Nn),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(c=>$.off(c,"mouseover",Cr)),this._activeTrigger[Kd]=!1,this._activeTrigger[Gs]=!1,this._activeTrigger[Dn]=!1;let a=this.tip.classList.contains(kr);this._queueCallback(i,this.tip,a),this._hoverState=""}update(){this._popper!==null&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;let e=document.createElement("div");e.innerHTML=this._config.template;let i=e.children[0];return this.setContent(i),i.classList.remove(kr,Nn),this.tip=i,this.tip}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),Ll)}_sanitizeAndSetContent(e,i,s){let a=ee.findOne(s,e);if(!i&&a){a.remove();return}this.setElementContent(a,i)}setElementContent(e,i){if(e!==null){if(Ti(i)){i=Zt(i),this._config.html?i.parentNode!==e&&(e.innerHTML="",e.append(i)):e.textContent=i.textContent;return}this._config.html?(this._config.sanitize&&(i=Ol(i,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=i):e.textContent=i}}getTitle(){let e=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(e)}updateAttachment(e){return e==="right"?"end":e==="left"?"start":e}_initializeOnDelegatedTarget(e,i){return i||this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_getOffset(){let{offset:e}=this._config;return typeof e=="string"?e.split(",").map(i=>Number.parseInt(i,10)):typeof e=="function"?i=>e(i,this._element):e}_resolvePossibleFunction(e){return typeof e=="function"?e.call(this._element):e}_getPopperConfig(e){let i={placement:e,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:s=>this._handlePopperPlacementChange(s)}],onFirstUpdate:s=>{s.options.placement!==s.placement&&this._handlePopperPlacementChange(s)}};return re(re({},i),typeof this._config.popperConfig=="function"?this._config.popperConfig(i):this._config.popperConfig)}_addAttachmentClass(e){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(e)}`)}_getAttachment(e){return Vd[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(i=>{if(i==="click")$.on(this._element,this.constructor.Event.CLICK,this._config.selector,s=>this.toggle(s));else if(i!==zd){let s=i===Dn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,a=i===Dn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;$.on(this._element,s,this._config.selector,c=>this._enter(c)),$.on(this._element,a,this._config.selector,c=>this._leave(c))}}),this._hideModalHandler=()=>{this._element&&this.hide()},$.on(this._element.closest(Pl),kl,this._hideModalHandler),this._config.selector?this._config=fr(re({},this._config),{trigger:"manual",selector:""}):this._fixTitle()}_fixTitle(){let e=this._element.getAttribute("title"),i=typeof this._element.getAttribute("data-bs-original-title");(e||i!=="string")&&(this._element.setAttribute("data-bs-original-title",e||""),e&&!this._element.getAttribute("aria-label")&&!this._element.textContent&&this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,i){if(i=this._initializeOnDelegatedTarget(e,i),e&&(i._activeTrigger[e.type==="focusin"?Gs:Dn]=!0),i.getTipElement().classList.contains(Nn)||i._hoverState===On){i._hoverState=On;return}if(clearTimeout(i._timeout),i._hoverState=On,!i._config.delay||!i._config.delay.show){i.show();return}i._timeout=setTimeout(()=>{i._hoverState===On&&i.show()},i._config.delay.show)}_leave(e,i){if(i=this._initializeOnDelegatedTarget(e,i),e&&(i._activeTrigger[e.type==="focusout"?Gs:Dn]=i._element.contains(e.relatedTarget)),!i._isWithActiveTrigger()){if(clearTimeout(i._timeout),i._hoverState=Ys,!i._config.delay||!i._config.delay.hide){i.hide();return}i._timeout=setTimeout(()=>{i._hoverState===Ys&&i.hide()},i._config.delay.hide)}}_isWithActiveTrigger(){for(let e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){let i=Fe.getDataAttributes(this._element);return Object.keys(i).forEach(s=>{Bd.has(s)&&delete i[s]}),e=re(re(re({},this.constructor.Default),i),typeof e=="object"&&e?e:{}),e.container=e.container===!1?document.body:Zt(e.container),typeof e.delay=="number"&&(e.delay={show:e.delay,hide:e.delay}),typeof e.title=="number"&&(e.title=e.title.toString()),typeof e.content=="number"&&(e.content=e.content.toString()),Ot(Dl,e,this.constructor.DefaultType),e.sanitize&&(e.template=Ol(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){let e={};for(let i in this._config)this.constructor.Default[i]!==this._config[i]&&(e[i]=this._config[i]);return e}_cleanTipClass(){let e=this.getTipElement(),i=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),s=e.getAttribute("class").match(i);s!==null&&s.length>0&&s.map(a=>a.trim()).forEach(a=>e.classList.remove(a))}_getBasicClassPrefix(){return Hd}_handlePopperPlacementChange(e){let{state:i}=e;!i||(this.tip=i.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(i.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(e){return this.each(function(){let i=ki.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e]()}})}};yt(ki);var Xd="popover",Yd="bs.popover",Pt=`.${Yd}`,Gd="bs-popover",Jd=fr(re({},ki.Default),{placement:"right",offset:[0,8],trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),Qd=fr(re({},ki.DefaultType),{content:"(string|element|function)"}),Zd={HIDE:`hide${Pt}`,HIDDEN:`hidden${Pt}`,SHOW:`show${Pt}`,SHOWN:`shown${Pt}`,INSERTED:`inserted${Pt}`,CLICK:`click${Pt}`,FOCUSIN:`focusin${Pt}`,FOCUSOUT:`focusout${Pt}`,MOUSEENTER:`mouseenter${Pt}`,MOUSELEAVE:`mouseleave${Pt}`},ep=".popover-header",tp=".popover-body",Ir=class extends ki{static get Default(){return Jd}static get NAME(){return Xd}static get Event(){return Zd}static get DefaultType(){return Qd}isWithContent(){return this.getTitle()||this._getContent()}setContent(e){this._sanitizeAndSetContent(e,this.getTitle(),ep),this._sanitizeAndSetContent(e,this._getContent(),tp)}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return Gd}static jQueryInterface(e){return this.each(function(){let i=Ir.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e]()}})}};yt(Ir);var Il="scrollspy",ip="bs.scrollspy",Rr=`.${ip}`,np=".data-api",Rl={offset:10,method:"auto",target:""},rp={offset:"number",method:"string",target:"(string|element)"},sp=`activate${Rr}`,op=`scroll${Rr}`,ap=`load${Rr}${np}`,jl="dropdown-item",Ji="active",lp='[data-bs-spy="scroll"]',up=".nav, .list-group",Js=".nav-link",cp=".nav-item",$l=".list-group-item",Qs=`${Js}, ${$l}, .${jl}`,fp=".dropdown",hp=".dropdown-toggle",dp="offset",Ml="position",Ln=class extends Et{constructor(e,i){super(e);this._scrollElement=this._element.tagName==="BODY"?window:this._element,this._config=this._getConfig(i),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,$.on(this._scrollElement,op,()=>this._process()),this.refresh(),this._process()}static get Default(){return Rl}static get NAME(){return Il}refresh(){let e=this._scrollElement===this._scrollElement.window?dp:Ml,i=this._config.method==="auto"?e:this._config.method,s=i===Ml?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),ee.find(Qs,this._config.target).map(c=>{let d=Rs(c),m=d?ee.findOne(d):null;if(m){let E=m.getBoundingClientRect();if(E.width||E.height)return[Fe[i](m).top+s,d]}return null}).filter(c=>c).sort((c,d)=>c[0]-d[0]).forEach(c=>{this._offsets.push(c[0]),this._targets.push(c[1])})}dispose(){$.off(this._scrollElement,Rr),super.dispose()}_getConfig(e){return e=re(re(re({},Rl),Fe.getDataAttributes(this._element)),typeof e=="object"&&e?e:{}),e.target=Zt(e.target)||document.documentElement,Ot(Il,e,rp),e}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){let e=this._getScrollTop()+this._config.offset,i=this._getScrollHeight(),s=this._config.offset+i-this._getOffsetHeight();if(this._scrollHeight!==i&&this.refresh(),e>=s){let a=this._targets[this._targets.length-1];this._activeTarget!==a&&this._activate(a);return}if(this._activeTarget&&e<this._offsets[0]&&this._offsets[0]>0){this._activeTarget=null,this._clear();return}for(let a=this._offsets.length;a--;)this._activeTarget!==this._targets[a]&&e>=this._offsets[a]&&(typeof this._offsets[a+1]=="undefined"||e<this._offsets[a+1])&&this._activate(this._targets[a])}_activate(e){this._activeTarget=e,this._clear();let i=Qs.split(",").map(a=>`${a}[data-bs-target="${e}"],${a}[href="${e}"]`),s=ee.findOne(i.join(","),this._config.target);s.classList.add(Ji),s.classList.contains(jl)?ee.findOne(hp,s.closest(fp)).classList.add(Ji):ee.parents(s,up).forEach(a=>{ee.prev(a,`${Js}, ${$l}`).forEach(c=>c.classList.add(Ji)),ee.prev(a,cp).forEach(c=>{ee.children(c,Js).forEach(d=>d.classList.add(Ji))})}),$.trigger(this._scrollElement,sp,{relatedTarget:e})}_clear(){ee.find(Qs,this._config.target).filter(e=>e.classList.contains(Ji)).forEach(e=>e.classList.remove(Ji))}static jQueryInterface(e){return this.each(function(){let i=Ln.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e]()}})}};$.on(window,ap,()=>{ee.find(lp).forEach(t=>new Ln(t))});yt(Ln);var pp="tab",gp="bs.tab",Pn=`.${gp}`,mp=".data-api",vp=`hide${Pn}`,_p=`hidden${Pn}`,yp=`show${Pn}`,Ep=`shown${Pn}`,bp=`click${Pn}${mp}`,Tp="dropdown-menu",kn="active",Hl="fade",Bl="show",Ap=".dropdown",wp=".nav, .list-group",Fl=".active",Vl=":scope > li > .active",Cp='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Sp=".dropdown-toggle",xp=":scope > .dropdown-menu .active",In=class extends Et{static get NAME(){return pp}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(kn))return;let e,i=Qt(this._element),s=this._element.closest(wp);if(s){let m=s.nodeName==="UL"||s.nodeName==="OL"?Vl:Fl;e=ee.find(m,s),e=e[e.length-1]}let a=e?$.trigger(e,vp,{relatedTarget:this._element}):null;if($.trigger(this._element,yp,{relatedTarget:e}).defaultPrevented||a!==null&&a.defaultPrevented)return;this._activate(this._element,s);let d=()=>{$.trigger(e,_p,{relatedTarget:this._element}),$.trigger(this._element,Ep,{relatedTarget:e})};i?this._activate(i,i.parentNode,d):d()}_activate(e,i,s){let c=(i&&(i.nodeName==="UL"||i.nodeName==="OL")?ee.find(Vl,i):ee.children(i,Fl))[0],d=s&&c&&c.classList.contains(Hl),m=()=>this._transitionComplete(e,c,s);c&&d?(c.classList.remove(Bl),this._queueCallback(m,e,!0)):m()}_transitionComplete(e,i,s){if(i){i.classList.remove(kn);let c=ee.findOne(xp,i.parentNode);c&&c.classList.remove(kn),i.getAttribute("role")==="tab"&&i.setAttribute("aria-selected",!1)}e.classList.add(kn),e.getAttribute("role")==="tab"&&e.setAttribute("aria-selected",!0),Xi(e),e.classList.contains(Hl)&&e.classList.add(Bl);let a=e.parentNode;if(a&&a.nodeName==="LI"&&(a=a.parentNode),a&&a.classList.contains(Tp)){let c=e.closest(Ap);c&&ee.find(Sp,c).forEach(d=>d.classList.add(kn)),e.setAttribute("aria-expanded",!0)}s&&s()}static jQueryInterface(e){return this.each(function(){let i=In.getOrCreateInstance(this);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e]()}})}};$.on(document,bp,Cp,function(t){if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Ai(this))return;In.getOrCreateInstance(this).show()});yt(In);var Ul="toast",Np="bs.toast",ii=`.${Np}`,Op=`mouseover${ii}`,Dp=`mouseout${ii}`,Lp=`focusin${ii}`,Pp=`focusout${ii}`,kp=`hide${ii}`,Ip=`hidden${ii}`,Rp=`show${ii}`,jp=`shown${ii}`,$p="fade",Wl="hide",Rn="show",jr="showing",Mp={animation:"boolean",autohide:"boolean",delay:"number"},ql={animation:!0,autohide:!0,delay:5e3},jn=class extends Et{constructor(e,i){super(e);this._config=this._getConfig(i),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Mp}static get Default(){return ql}static get NAME(){return Ul}show(){if($.trigger(this._element,Rp).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add($p);let i=()=>{this._element.classList.remove(jr),$.trigger(this._element,jp),this._maybeScheduleHide()};this._element.classList.remove(Wl),Xi(this._element),this._element.classList.add(Rn),this._element.classList.add(jr),this._queueCallback(i,this._element,this._config.animation)}hide(){if(!this._element.classList.contains(Rn)||$.trigger(this._element,kp).defaultPrevented)return;let i=()=>{this._element.classList.add(Wl),this._element.classList.remove(jr),this._element.classList.remove(Rn),$.trigger(this._element,Ip)};this._element.classList.add(jr),this._queueCallback(i,this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(Rn)&&this._element.classList.remove(Rn),super.dispose()}_getConfig(e){return e=re(re(re({},ql),Fe.getDataAttributes(this._element)),typeof e=="object"&&e?e:{}),Ot(Ul,e,this.constructor.DefaultType),e}_maybeScheduleHide(){!this._config.autohide||this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay))}_onInteraction(e,i){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=i;break;case"focusin":case"focusout":this._hasKeyboardInteraction=i;break}if(i){this._clearTimeout();return}let s=e.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){$.on(this._element,Op,e=>this._onInteraction(e,!0)),$.on(this._element,Dp,e=>this._onInteraction(e,!1)),$.on(this._element,Lp,e=>this._onInteraction(e,!0)),$.on(this._element,Pp,e=>this._onInteraction(e,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each(function(){let i=jn.getOrCreateInstance(this,e);if(typeof e=="string"){if(typeof i[e]=="undefined")throw new TypeError(`No method named "${e}"`);i[e](this)}})}};Sr(jn);yt(jn);"use strict";(function(){var t=e();function e(){if(typeof window.CustomEvent=="function")return window.CustomEvent;function a(c,d){d=d||{bubbles:!1,cancelable:!1,detail:void 0};var m=document.createEvent("CustomEvent");return m.initCustomEvent(c,d.bubbles,d.cancelable,d.detail),m}return a.prototype=window.Event.prototype,a}function i(a,c){var d=document.createElement("input");return d.type="hidden",d.name=a,d.value=c,d}function s(a,c){var d=a.getAttribute("data-to"),m=i("_method",a.getAttribute("data-method")),E=i("_csrf_token",a.getAttribute("data-csrf")),x=document.createElement("form"),w=a.getAttribute("target");x.method=a.getAttribute("data-method")==="get"?"get":"post",x.action=d,x.style.display="hidden",w?x.target=w:c&&(x.target="_blank"),x.appendChild(E),x.appendChild(m),document.body.appendChild(x),x.submit()}window.addEventListener("click",function(a){var c=a.target;if(!a.defaultPrevented)for(;c&&c.getAttribute;){var d=new t("phoenix.link.click",{bubbles:!0,cancelable:!0});if(!c.dispatchEvent(d))return a.preventDefault(),a.stopImmediatePropagation(),!1;if(c.getAttribute("data-method"))return s(c,a.metaKey||a.shiftKey),a.preventDefault(),!1;c=c.parentNode}},!1),window.addEventListener("phoenix.link.click",function(a){var c=a.target.getAttribute("data-confirm");c&&!window.confirm(c)&&a.preventDefault()},!1)})();var $n=t=>typeof t=="function"?t:function(){return t},Hp=typeof self!="undefined"?self:null,Mn=typeof window!="undefined"?window:null,$r=Hp||Mn||void 0,Bp="2.0.0",kt={connecting:0,open:1,closing:2,closed:3},Fp=1e4,Vp=1e3,ut={closed:"closed",errored:"errored",joined:"joined",joining:"joining",leaving:"leaving"},Ut={close:"phx_close",error:"phx_error",join:"phx_join",reply:"phx_reply",leave:"phx_leave"},Zs={longpoll:"longpoll",websocket:"websocket"},Up={complete:4},Mr=class{constructor(t,e,i,s){this.channel=t,this.event=e,this.payload=i||function(){return{}},this.receivedResp=null,this.timeout=s,this.timeoutTimer=null,this.recHooks=[],this.sent=!1}resend(t){this.timeout=t,this.reset(),this.send()}send(){this.hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload(),ref:this.ref,join_ref:this.channel.joinRef()}))}receive(t,e){return this.hasReceived(t)&&e(this.receivedResp.response),this.recHooks.push({status:t,callback:e}),this}reset(){this.cancelRefEvent(),this.ref=null,this.refEvent=null,this.receivedResp=null,this.sent=!1}matchReceive({status:t,response:e,_ref:i}){this.recHooks.filter(s=>s.status===t).forEach(s=>s.callback(e))}cancelRefEvent(){!this.refEvent||this.channel.off(this.refEvent)}cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=null}startTimeout(){this.timeoutTimer&&this.cancelTimeout(),this.ref=this.channel.socket.makeRef(),this.refEvent=this.channel.replyEventName(this.ref),this.channel.on(this.refEvent,t=>{this.cancelRefEvent(),this.cancelTimeout(),this.receivedResp=t,this.matchReceive(t)}),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}hasReceived(t){return this.receivedResp&&this.receivedResp.status===t}trigger(t,e){this.channel.trigger(this.refEvent,{status:t,response:e})}},Kl=class{constructor(t,e){this.callback=t,this.timerCalc=e,this.timer=null,this.tries=0}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}},Wp=class{constructor(t,e,i){this.state=ut.closed,this.topic=t,this.params=$n(e||{}),this.socket=i,this.bindings=[],this.bindingRef=0,this.timeout=this.socket.timeout,this.joinedOnce=!1,this.joinPush=new Mr(this,Ut.join,this.params,this.timeout),this.pushBuffer=[],this.stateChangeRefs=[],this.rejoinTimer=new Kl(()=>{this.socket.isConnected()&&this.rejoin()},this.socket.rejoinAfterMs),this.stateChangeRefs.push(this.socket.onError(()=>this.rejoinTimer.reset())),this.stateChangeRefs.push(this.socket.onOpen(()=>{this.rejoinTimer.reset(),this.isErrored()&&this.rejoin()})),this.joinPush.receive("ok",()=>{this.state=ut.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(s=>s.send()),this.pushBuffer=[]}),this.joinPush.receive("error",()=>{this.state=ut.errored,this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.onClose(()=>{this.rejoinTimer.reset(),this.socket.hasLogger()&&this.socket.log("channel",`close ${this.topic} ${this.joinRef()}`),this.state=ut.closed,this.socket.remove(this)}),this.onError(s=>{this.socket.hasLogger()&&this.socket.log("channel",`error ${this.topic}`,s),this.isJoining()&&this.joinPush.reset(),this.state=ut.errored,this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.joinPush.receive("timeout",()=>{this.socket.hasLogger()&&this.socket.log("channel",`timeout ${this.topic} (${this.joinRef()})`,this.joinPush.timeout),new Mr(this,Ut.leave,$n({}),this.timeout).send(),this.state=ut.errored,this.joinPush.reset(),this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.on(Ut.reply,(s,a)=>{this.trigger(this.replyEventName(a),s)})}join(t=this.timeout){if(this.joinedOnce)throw new Error("tried to join multiple times. 'join' can only be called a single time per channel instance");return this.timeout=t,this.joinedOnce=!0,this.rejoin(),this.joinPush}onClose(t){this.on(Ut.close,t)}onError(t){return this.on(Ut.error,e=>t(e))}on(t,e){let i=this.bindingRef++;return this.bindings.push({event:t,ref:i,callback:e}),i}off(t,e){this.bindings=this.bindings.filter(i=>!(i.event===t&&(typeof e=="undefined"||e===i.ref)))}canPush(){return this.socket.isConnected()&&this.isJoined()}push(t,e,i=this.timeout){if(e=e||{},!this.joinedOnce)throw new Error(`tried to push '${t}' to '${this.topic}' before joining. Use channel.join() before pushing events`);let s=new Mr(this,t,function(){return e},i);return this.canPush()?s.send():(s.startTimeout(),this.pushBuffer.push(s)),s}leave(t=this.timeout){this.rejoinTimer.reset(),this.joinPush.cancelTimeout(),this.state=ut.leaving;let e=()=>{this.socket.hasLogger()&&this.socket.log("channel",`leave ${this.topic}`),this.trigger(Ut.close,"leave")},i=new Mr(this,Ut.leave,$n({}),t);return i.receive("ok",()=>e()).receive("timeout",()=>e()),i.send(),this.canPush()||i.trigger("ok",{}),i}onMessage(t,e,i){return e}isMember(t,e,i,s){return this.topic!==t?!1:s&&s!==this.joinRef()?(this.socket.hasLogger()&&this.socket.log("channel","dropping outdated message",{topic:t,event:e,payload:i,joinRef:s}),!1):!0}joinRef(){return this.joinPush.ref}rejoin(t=this.timeout){this.isLeaving()||(this.socket.leaveOpenTopic(this.topic),this.state=ut.joining,this.joinPush.resend(t))}trigger(t,e,i,s){let a=this.onMessage(t,e,i,s);if(e&&!a)throw new Error("channel onMessage callbacks must return the payload, modified or unmodified");let c=this.bindings.filter(d=>d.event===t);for(let d=0;d<c.length;d++)c[d].callback(a,i,s||this.joinRef())}replyEventName(t){return`chan_reply_${t}`}isClosed(){return this.state===ut.closed}isErrored(){return this.state===ut.errored}isJoined(){return this.state===ut.joined}isJoining(){return this.state===ut.joining}isLeaving(){return this.state===ut.leaving}},Hn=class{static request(t,e,i,s,a,c,d){if($r.XDomainRequest){let m=new $r.XDomainRequest;this.xdomainRequest(m,t,e,s,a,c,d)}else{let m=new $r.XMLHttpRequest;this.xhrRequest(m,t,e,i,s,a,c,d)}}static xdomainRequest(t,e,i,s,a,c,d){t.timeout=a,t.open(e,i),t.onload=()=>{let m=this.parseJSON(t.responseText);d&&d(m)},c&&(t.ontimeout=c),t.onprogress=()=>{},t.send(s)}static xhrRequest(t,e,i,s,a,c,d,m){t.open(e,i,!0),t.timeout=c,t.setRequestHeader("Content-Type",s),t.onerror=()=>{m&&m(null)},t.onreadystatechange=()=>{if(t.readyState===Up.complete&&m){let E=this.parseJSON(t.responseText);m(E)}},d&&(t.ontimeout=d),t.send(a)}static parseJSON(t){if(!t||t==="")return null;try{return JSON.parse(t)}catch(e){return console&&console.log("failed to parse JSON response",t),null}}static serialize(t,e){let i=[];for(var s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let a=e?`${e}[${s}]`:s,c=t[s];typeof c=="object"?i.push(this.serialize(c,a)):i.push(encodeURIComponent(a)+"="+encodeURIComponent(c))}return i.join("&")}static appendParams(t,e){if(Object.keys(e).length===0)return t;let i=t.match(/\?/)?"&":"?";return`${t}${i}${this.serialize(e)}`}},zl=class{constructor(t){this.endPoint=null,this.token=null,this.skipHeartbeat=!0,this.onopen=function(){},this.onerror=function(){},this.onmessage=function(){},this.onclose=function(){},this.pollEndpoint=this.normalizeEndpoint(t),this.readyState=kt.connecting,this.poll()}normalizeEndpoint(t){return t.replace("ws://","http://").replace("wss://","https://").replace(new RegExp("(.*)/"+Zs.websocket),"$1/"+Zs.longpoll)}endpointURL(){return Hn.appendParams(this.pollEndpoint,{token:this.token})}closeAndRetry(){this.close(),this.readyState=kt.connecting}ontimeout(){this.onerror("timeout"),this.closeAndRetry()}poll(){(this.readyState===kt.open||this.readyState===kt.connecting)&&Hn.request("GET",this.endpointURL(),"application/json",null,this.timeout,this.ontimeout.bind(this),t=>{if(t){var{status:e,token:i,messages:s}=t;this.token=i}else e=0;switch(e){case 200:s.forEach(a=>{setTimeout(()=>{this.onmessage({data:a})},0)}),this.poll();break;case 204:this.poll();break;case 410:this.readyState=kt.open,this.onopen(),this.poll();break;case 403:this.onerror(),this.close();break;case 0:case 500:this.onerror(),this.closeAndRetry();break;default:throw new Error(`unhandled poll status ${e}`)}})}send(t){Hn.request("POST",this.endpointURL(),"application/json",t,this.timeout,this.onerror.bind(this,"timeout"),e=>{(!e||e.status!==200)&&(this.onerror(e&&e.status),this.closeAndRetry())})}close(t,e){this.readyState=kt.closed,this.onclose()}};var Hr={HEADER_LENGTH:1,META_LENGTH:4,KINDS:{push:0,reply:1,broadcast:2},encode(t,e){if(t.payload.constructor===ArrayBuffer)return e(this.binaryEncode(t));{let i=[t.join_ref,t.ref,t.topic,t.event,t.payload];return e(JSON.stringify(i))}},decode(t,e){if(t.constructor===ArrayBuffer)return e(this.binaryDecode(t));{let[i,s,a,c,d]=JSON.parse(t);return e({join_ref:i,ref:s,topic:a,event:c,payload:d})}},binaryEncode(t){let{join_ref:e,ref:i,event:s,topic:a,payload:c}=t,d=this.META_LENGTH+e.length+i.length+a.length+s.length,m=new ArrayBuffer(this.HEADER_LENGTH+d),E=new DataView(m),x=0;E.setUint8(x++,this.KINDS.push),E.setUint8(x++,e.length),E.setUint8(x++,i.length),E.setUint8(x++,a.length),E.setUint8(x++,s.length),Array.from(e,I=>E.setUint8(x++,I.charCodeAt(0))),Array.from(i,I=>E.setUint8(x++,I.charCodeAt(0))),Array.from(a,I=>E.setUint8(x++,I.charCodeAt(0))),Array.from(s,I=>E.setUint8(x++,I.charCodeAt(0)));var w=new Uint8Array(m.byteLength+c.byteLength);return w.set(new Uint8Array(m),0),w.set(new Uint8Array(c),m.byteLength),w.buffer},binaryDecode(t){let e=new DataView(t),i=e.getUint8(0),s=new TextDecoder;switch(i){case this.KINDS.push:return this.decodePush(t,e,s);case this.KINDS.reply:return this.decodeReply(t,e,s);case this.KINDS.broadcast:return this.decodeBroadcast(t,e,s)}},decodePush(t,e,i){let s=e.getUint8(1),a=e.getUint8(2),c=e.getUint8(3),d=this.HEADER_LENGTH+this.META_LENGTH-1,m=i.decode(t.slice(d,d+s));d=d+s;let E=i.decode(t.slice(d,d+a));d=d+a;let x=i.decode(t.slice(d,d+c));d=d+c;let w=t.slice(d,t.byteLength);return{join_ref:m,ref:null,topic:E,event:x,payload:w}},decodeReply(t,e,i){let s=e.getUint8(1),a=e.getUint8(2),c=e.getUint8(3),d=e.getUint8(4),m=this.HEADER_LENGTH+this.META_LENGTH,E=i.decode(t.slice(m,m+s));m=m+s;let x=i.decode(t.slice(m,m+a));m=m+a;let w=i.decode(t.slice(m,m+c));m=m+c;let I=i.decode(t.slice(m,m+d));m=m+d;let L=t.slice(m,t.byteLength),k={status:I,response:L};return{join_ref:E,ref:x,topic:w,event:Ut.reply,payload:k}},decodeBroadcast(t,e,i){let s=e.getUint8(1),a=e.getUint8(2),c=this.HEADER_LENGTH+2,d=i.decode(t.slice(c,c+s));c=c+s;let m=i.decode(t.slice(c,c+a));c=c+a;let E=t.slice(c,t.byteLength);return{join_ref:null,ref:null,topic:d,event:m,payload:E}}},Xl=class{constructor(t,e={}){this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this.channels=[],this.sendBuffer=[],this.ref=0,this.timeout=e.timeout||Fp,this.transport=e.transport||$r.WebSocket||zl,this.establishedConnections=0,this.defaultEncoder=Hr.encode.bind(Hr),this.defaultDecoder=Hr.decode.bind(Hr),this.closeWasClean=!1,this.binaryType=e.binaryType||"arraybuffer",this.connectClock=1,this.transport!==zl?(this.encode=e.encode||this.defaultEncoder,this.decode=e.decode||this.defaultDecoder):(this.encode=this.defaultEncoder,this.decode=this.defaultDecoder);let i=null;Mn&&Mn.addEventListener&&(Mn.addEventListener("pagehide",s=>{this.conn&&(this.disconnect(),i=this.connectClock)}),Mn.addEventListener("pageshow",s=>{i===this.connectClock&&(i=null,this.connect())})),this.heartbeatIntervalMs=e.heartbeatIntervalMs||3e4,this.rejoinAfterMs=s=>e.rejoinAfterMs?e.rejoinAfterMs(s):[1e3,2e3,5e3][s-1]||1e4,this.reconnectAfterMs=s=>e.reconnectAfterMs?e.reconnectAfterMs(s):[10,50,100,150,200,250,500,1e3,2e3][s-1]||5e3,this.logger=e.logger||null,this.longpollerTimeout=e.longpollerTimeout||2e4,this.params=$n(e.params||{}),this.endPoint=`${t}/${Zs.websocket}`,this.vsn=e.vsn||Bp,this.heartbeatTimer=null,this.pendingHeartbeatRef=null,this.reconnectTimer=new Kl(()=>{this.teardown(()=>this.connect())},this.reconnectAfterMs)}replaceTransport(t){this.disconnect(),this.transport=t}protocol(){return location.protocol.match(/^https/)?"wss":"ws"}endPointURL(){let t=Hn.appendParams(Hn.appendParams(this.endPoint,this.params()),{vsn:this.vsn});return t.charAt(0)!=="/"?t:t.charAt(1)==="/"?`${this.protocol()}:${t}`:`${this.protocol()}://${location.host}${t}`}disconnect(t,e,i){this.connectClock++,this.closeWasClean=!0,this.reconnectTimer.reset(),this.teardown(t,e,i)}connect(t){this.connectClock++,t&&(console&&console.log("passing params to connect is deprecated. Instead pass :params to the Socket constructor"),this.params=$n(t)),!this.conn&&(this.closeWasClean=!1,this.conn=new this.transport(this.endPointURL()),this.conn.binaryType=this.binaryType,this.conn.timeout=this.longpollerTimeout,this.conn.onopen=()=>this.onConnOpen(),this.conn.onerror=e=>this.onConnError(e),this.conn.onmessage=e=>this.onConnMessage(e),this.conn.onclose=e=>this.onConnClose(e))}log(t,e,i){this.logger(t,e,i)}hasLogger(){return this.logger!==null}onOpen(t){let e=this.makeRef();return this.stateChangeCallbacks.open.push([e,t]),e}onClose(t){let e=this.makeRef();return this.stateChangeCallbacks.close.push([e,t]),e}onError(t){let e=this.makeRef();return this.stateChangeCallbacks.error.push([e,t]),e}onMessage(t){let e=this.makeRef();return this.stateChangeCallbacks.message.push([e,t]),e}onConnOpen(){this.hasLogger()&&this.log("transport",`connected to ${this.endPointURL()}`),this.closeWasClean=!1,this.establishedConnections++,this.flushSendBuffer(),this.reconnectTimer.reset(),this.resetHeartbeat(),this.stateChangeCallbacks.open.forEach(([,t])=>t())}heartbeatTimeout(){this.pendingHeartbeatRef&&(this.pendingHeartbeatRef=null,this.hasLogger()&&this.log("transport","heartbeat timeout. Attempting to re-establish connection"),this.abnormalClose("heartbeat timeout"))}resetHeartbeat(){this.conn&&this.conn.skipHeartbeat||(this.pendingHeartbeatRef=null,clearTimeout(this.heartbeatTimer),setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs))}teardown(t,e,i){if(!this.conn)return t&&t();this.waitForBufferDone(()=>{this.conn&&(e?this.conn.close(e,i||""):this.conn.close()),this.waitForSocketClosed(()=>{this.conn&&(this.conn.onclose=function(){},this.conn=null),t&&t()})})}waitForBufferDone(t,e=1){if(e===5||!this.conn||!this.conn.bufferedAmount){t();return}setTimeout(()=>{this.waitForBufferDone(t,e+1)},150*e)}waitForSocketClosed(t,e=1){if(e===5||!this.conn||this.conn.readyState===kt.closed){t();return}setTimeout(()=>{this.waitForSocketClosed(t,e+1)},150*e)}onConnClose(t){this.hasLogger()&&this.log("transport","close",t),this.triggerChanError(),clearTimeout(this.heartbeatTimer),this.closeWasClean||this.reconnectTimer.scheduleTimeout(),this.stateChangeCallbacks.close.forEach(([,e])=>e(t))}onConnError(t){this.hasLogger()&&this.log("transport",t);let e=this.transport,i=this.establishedConnections;this.stateChangeCallbacks.error.forEach(([,s])=>{s(t,e,i)}),(e===this.transport||i>0)&&this.triggerChanError()}triggerChanError(){this.channels.forEach(t=>{t.isErrored()||t.isLeaving()||t.isClosed()||t.trigger(Ut.error)})}connectionState(){switch(this.conn&&this.conn.readyState){case kt.connecting:return"connecting";case kt.open:return"open";case kt.closing:return"closing";default:return"closed"}}isConnected(){return this.connectionState()==="open"}remove(t){this.off(t.stateChangeRefs),this.channels=this.channels.filter(e=>e.joinRef()!==t.joinRef())}off(t){for(let e in this.stateChangeCallbacks)this.stateChangeCallbacks[e]=this.stateChangeCallbacks[e].filter(([i])=>t.indexOf(i)===-1)}channel(t,e={}){let i=new Wp(t,e,this);return this.channels.push(i),i}push(t){if(this.hasLogger()){let{topic:e,event:i,payload:s,ref:a,join_ref:c}=t;this.log("push",`${e} ${i} (${c}, ${a})`,s)}this.isConnected()?this.encode(t,e=>this.conn.send(e)):this.sendBuffer.push(()=>this.encode(t,e=>this.conn.send(e)))}makeRef(){let t=this.ref+1;return t===this.ref?this.ref=0:this.ref=t,this.ref.toString()}sendHeartbeat(){this.pendingHeartbeatRef&&!this.isConnected()||(this.pendingHeartbeatRef=this.makeRef(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef}),this.heartbeatTimer=setTimeout(()=>this.heartbeatTimeout(),this.heartbeatIntervalMs))}abnormalClose(t){this.closeWasClean=!1,this.isConnected()&&this.conn.close(Vp,t)}flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(t=>t()),this.sendBuffer=[])}onConnMessage(t){this.decode(t.data,e=>{let{topic:i,event:s,payload:a,ref:c,join_ref:d}=e;c&&c===this.pendingHeartbeatRef&&(clearTimeout(this.heartbeatTimer),this.pendingHeartbeatRef=null,setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs)),this.hasLogger()&&this.log("receive",`${a.status||""} ${i} ${s} ${c&&"("+c+")"||""}`,a);for(let m=0;m<this.channels.length;m++){let E=this.channels[m];!E.isMember(i,s,a,d)||E.trigger(s,a,c,d)}for(let m=0;m<this.stateChangeCallbacks.message.length;m++){let[,E]=this.stateChangeCallbacks.message[m];E(e)}})}leaveOpenTopic(t){let e=this.channels.find(i=>i.topic===t&&(i.isJoined()||i.isJoining()));e&&(this.hasLogger()&&this.log("transport",`leaving duplicate topic "${t}"`),e.leave())}};var Yl="consecutive-reloads",Gl=10,qp=[1e3,3e3],Kp=3e4,Jl=["phx-click-loading","phx-change-loading","phx-submit-loading","phx-keydown-loading","phx-keyup-loading","phx-blur-loading","phx-focus-loading"],Tt="data-phx-component",eo="data-phx-link",zp="track-static",Xp="data-phx-link-state",It="data-phx-ref",Ql="track-uploads",Ii="data-phx-upload-ref",to="data-phx-preflighted-refs",Yp="data-phx-done-refs",Zl="drop-target",io="data-phx-active-refs",no="phx:live-file:updated",ro="data-phx-skip",eu="data-phx-remove",tu="page-loading",iu="phx-connected",Br="phx-disconnected",nu="phx-no-feedback",ru="phx-error",Bn="data-phx-parent-id",su="data-phx-main",Fr="data-phx-root-id",Gp="trigger-action",ou="feedback-for",au="phx-has-focused",Jp=["text","textarea","number","email","password","search","tel","url","date","time"],lu=["checkbox","radio"],uu="phx-has-submitted",ni="data-phx-session",Qi=`[${ni}]`,Fn="data-phx-static",so="data-phx-readonly",Vr="data-phx-disabled",oo="disable-with",Ur="data-phx-disable-with-restore",Wr="hook",Qp="debounce",Zp="throttle",ao="update",eg="key",Rt="phxPrivate",cu="auto-recover",lo="phx:live-socket:debug",uo="phx:live-socket:profiling",co="phx:live-socket:latency-sim",tg="progress",ig=1,ng=200,rg="phx-",sg=3e4,Vn="debounce-trigger",qr="throttled",fu="debounce-prev-key",og={debounce:300,throttle:300},hu="d",jt="s",ct="c",du="e",pu="r",gu="t",ag=class{constructor(t,e,i){this.liveSocket=i,this.entry=t,this.offset=0,this.chunkSize=e,this.chunkTimer=null,this.uploadChannel=i.channel(`lvu:${t.ref}`,{token:t.metadata()})}error(t){clearTimeout(this.chunkTimer),this.uploadChannel.leave(),this.entry.error(t)}upload(){this.uploadChannel.onError(t=>this.error(t)),this.uploadChannel.join().receive("ok",t=>this.readNextChunk()).receive("error",t=>this.error(t))}isDone(){return this.offset>=this.entry.file.size}readNextChunk(){let t=new window.FileReader,e=this.entry.file.slice(this.offset,this.chunkSize+this.offset);t.onload=i=>{if(i.target.error===null)this.offset+=i.target.result.byteLength,this.pushChunk(i.target.result);else return qe("Read error: "+i.target.error)},t.readAsArrayBuffer(e)}pushChunk(t){!this.uploadChannel.isJoined()||this.uploadChannel.push("chunk",t).receive("ok",()=>{this.entry.progress(this.offset/this.entry.file.size*100),this.isDone()||(this.chunkTimer=setTimeout(()=>this.readNextChunk(),this.liveSocket.getLatencySim()||0))})}},qe=(t,e)=>console.error&&console.error(t,e),Kr=t=>typeof t=="number";function lg(){let t=new Set,e=document.querySelectorAll("*[id]");for(let i=0,s=e.length;i<s;i++)t.has(e[i].id)?console.error(`Multiple IDs detected: ${e[i].id}. Ensure unique element ids.`):t.add(e[i].id)}var ug=(t,e,i,s)=>{t.liveSocket.isDebugEnabled()&&console.log(`${t.id} ${e}: ${i} - `,s)},fo=t=>typeof t=="function"?t:function(){return t},Un=t=>JSON.parse(JSON.stringify(t)),Wn=(t,e,i)=>{do{if(t.matches(`[${e}]`))return t;t=t.parentElement||t.parentNode}while(t!==null&&t.nodeType===1&&!(i&&i.isSameNode(t)||t.matches(Qi)));return null},qn=t=>t!==null&&typeof t=="object"&&!(t instanceof Array),cg=(t,e)=>JSON.stringify(t)===JSON.stringify(e),mu=t=>{for(let e in t)return!1;return!0},Wt=(t,e)=>t&&e(t),fg=function(t,e,i,s){t.forEach(a=>{new ag(a,i.config.chunk_size,s).upload()})},vu={canPushState(){return typeof history.pushState!="undefined"},dropLocal(t,e,i){return t.removeItem(this.localKey(e,i))},updateLocal(t,e,i,s,a){let c=this.getLocal(t,e,i),d=this.localKey(e,i),m=c===null?s:a(c);return t.setItem(d,JSON.stringify(m)),m},getLocal(t,e,i){return JSON.parse(t.getItem(this.localKey(e,i)))},updateCurrentState(t){!this.canPushState()||history.replaceState(t(history.state||{}),"",window.location.href)},pushState(t,e,i){if(this.canPushState()){if(i!==window.location.href){if(e.type=="redirect"&&e.scroll){let a=history.state||{};a.scroll=e.scroll,history.replaceState(a,"",window.location.href)}delete e.scroll,history[t+"State"](e,"",i||null);let s=this.getHashTargetEl(window.location.hash);s?s.scrollIntoView():e.type==="redirect"&&window.scroll(0,0)}}else this.redirect(i)},setCookie(t,e){document.cookie=`${t}=${e}`},getCookie(t){return document.cookie.replace(new RegExp(`(?:(?:^|.*;s*)${t}s*=s*([^;]*).*$)|^.*$`),"$1")},redirect(t,e){e&&vu.setCookie("__phoenix_flash__",e+"; max-age=60000; path=/"),window.location=t},localKey(t,e){return`${t}-${e}`},getHashTargetEl(t){let e=t.toString().substring(1);if(e!=="")return document.getElementById(e)||document.querySelector(`a[name="${e}"]`)}},ri=vu,qt={byId(t){return document.getElementById(t)||qe(`no id found for ${t}`)},removeClass(t,e){t.classList.remove(e),t.classList.length===0&&t.removeAttribute("class")},all(t,e,i){if(!t)return[];let s=Array.from(t.querySelectorAll(e));return i?s.forEach(i):s},childNodeLength(t){let e=document.createElement("template");return e.innerHTML=t,e.content.childElementCount},isUploadInput(t){return t.type==="file"&&t.getAttribute(Ii)!==null},findUploadInputs(t){return this.all(t,`input[type="file"][${Ii}]`)},findComponentNodeList(t,e){return this.filterWithinSameLiveView(this.all(t,`[${Tt}="${e}"]`),t)},isPhxDestroyed(t){return!!(t.id&&qt.private(t,"destroyed"))},markPhxChildDestroyed(t){t.setAttribute(ni,""),this.putPrivate(t,"destroyed",!0)},findPhxChildrenInFragment(t,e){let i=document.createElement("template");return i.innerHTML=t,this.findPhxChildren(i.content,e)},isIgnored(t,e){return(t.getAttribute(e)||t.getAttribute("data-phx-update"))==="ignore"},isPhxUpdate(t,e,i){return t.getAttribute&&i.indexOf(t.getAttribute(e))>=0},findPhxChildren(t,e){return this.all(t,`${Qi}[${Bn}="${e}"]`)},findParentCIDs(t,e){let i=new Set(e);return e.reduce((s,a)=>{let c=`[${Tt}="${a}"] [${Tt}]`;return this.filterWithinSameLiveView(this.all(t,c),t).map(d=>parseInt(d.getAttribute(Tt))).forEach(d=>s.delete(d)),s},i)},filterWithinSameLiveView(t,e){return e.querySelector(Qi)?t.filter(i=>this.withinSameLiveView(i,e)):t},withinSameLiveView(t,e){for(;t=t.parentNode;){if(t.isSameNode(e))return!0;if(t.getAttribute(ni)!==null)return!1}},private(t,e){return t[Rt]&&t[Rt][e]},deletePrivate(t,e){t[Rt]&&delete t[Rt][e]},putPrivate(t,e,i){t[Rt]||(t[Rt]={}),t[Rt][e]=i},copyPrivates(t,e){e[Rt]&&(t[Rt]=Un(e[Rt]))},putTitle(t){let e=document.querySelector("title"),{prefix:i,suffix:s}=e.dataset;document.title=`${i||""}${t}${s||""}`},debounce(t,e,i,s,a,c,d){let m=t.getAttribute(i),E=t.getAttribute(a);m===""&&(m=s),E===""&&(E=c);let x=m||E;switch(x){case null:return d();case"blur":this.once(t,"debounce-blur")&&t.addEventListener("blur",()=>d());return;default:let w=parseInt(x),I=()=>E?this.deletePrivate(t,qr):d(),L=this.incCycle(t,Vn,I);if(isNaN(w))return qe(`invalid throttle/debounce value: ${x}`);if(E){let D=!1;if(e.type==="keydown"){let U=this.private(t,fu);this.putPrivate(t,fu,e.key),D=U!==e.key}if(!D&&this.private(t,qr))return!1;d(),this.putPrivate(t,qr,!0),setTimeout(()=>this.triggerCycle(t,Vn),w)}else setTimeout(()=>this.triggerCycle(t,Vn,L),w);let k=t.form;k&&this.once(k,"bind-debounce")&&k.addEventListener("submit",()=>{Array.from(new FormData(k).entries(),([D])=>{let U=k.querySelector(`[name="${D}"]`);this.incCycle(U,Vn),this.deletePrivate(U,qr)})}),this.once(t,"bind-debounce")&&t.addEventListener("blur",()=>this.triggerCycle(t,Vn))}},triggerCycle(t,e,i){let[s,a]=this.private(t,e);i||(i=s),i===s&&(this.incCycle(t,e),a())},once(t,e){return this.private(t,e)===!0?!1:(this.putPrivate(t,e,!0),!0)},incCycle(t,e,i=function(){}){let[s]=this.private(t,e)||[0,i];return s++,this.putPrivate(t,e,[s,i]),s},discardError(t,e,i){let s=e.getAttribute&&e.getAttribute(i),a=s&&t.querySelector(`[id="${s}"], [name="${s}"]`);!a||this.private(a,au)||this.private(a.form,uu)||e.classList.add(nu)},showError(t,e){(t.id||t.name)&&this.all(t.form,`[${e}="${t.id}"], [${e}="${t.name}"]`,i=>{this.removeClass(i,nu)})},isPhxChild(t){return t.getAttribute&&t.getAttribute(Bn)},dispatchEvent(t,e,i={}){let s=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:i});t.dispatchEvent(s)},cloneNode(t,e){if(typeof e=="undefined")return t.cloneNode(!0);{let i=t.cloneNode(!1);return i.innerHTML=e,i}},mergeAttrs(t,e,i={}){let s=i.exclude||[],a=i.isIgnored,c=e.attributes;for(let m=c.length-1;m>=0;m--){let E=c[m].name;s.indexOf(E)<0&&t.setAttribute(E,e.getAttribute(E))}let d=t.attributes;for(let m=d.length-1;m>=0;m--){let E=d[m].name;a?E.startsWith("data-")&&!e.hasAttribute(E)&&t.removeAttribute(E):e.hasAttribute(E)||t.removeAttribute(E)}},mergeFocusedInput(t,e){t instanceof HTMLSelectElement||qt.mergeAttrs(t,e,{except:["value"]}),e.readOnly?t.setAttribute("readonly",!0):t.removeAttribute("readonly")},hasSelectionRange(t){return t.setSelectionRange&&(t.type==="text"||t.type==="textarea")},restoreFocus(t,e,i){if(!qt.isTextualInput(t))return;let s=t.matches(":focus");t.readOnly&&t.blur(),s||t.focus(),this.hasSelectionRange(t)&&t.setSelectionRange(e,i)},isFormInput(t){return/^(?:input|select|textarea)$/i.test(t.tagName)&&t.type!=="button"},syncAttrsToProps(t){t instanceof HTMLInputElement&&lu.indexOf(t.type.toLocaleLowerCase())>=0&&(t.checked=t.getAttribute("checked")!==null)},syncPropsToAttrs(t){if(t instanceof HTMLSelectElement){let e=t.options.item(t.selectedIndex);e&&e.getAttribute("selected")===null&&e.setAttribute("selected","")}},isTextualInput(t){return Jp.indexOf(t.type)>=0},isNowTriggerFormExternal(t,e){return t.getAttribute&&t.getAttribute(e)!==null},syncPendingRef(t,e,i){let s=t.getAttribute(It);return s===null?!0:qt.isFormInput(t)||t.getAttribute(i)!==null?(qt.isUploadInput(t)&&qt.mergeAttrs(t,e,{isIgnored:!0}),qt.putPrivate(t,It,e),!1):(Jl.forEach(a=>{t.classList.contains(a)&&e.classList.add(a)}),e.setAttribute(It,s),!0)},cleanChildNodes(t,e){if(qt.isPhxUpdate(t,e,["append","prepend"])){let i=[];t.childNodes.forEach(s=>{s.id||(s.nodeType===Node.TEXT_NODE&&s.nodeValue.trim()===""||qe(`only HTML element tags with an id are allowed inside containers with phx-update.
+(() => {
+ var __create = Object.create;
+ var __defProp = Object.defineProperty;
+ var __defProps = Object.defineProperties;
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+ var __getOwnPropNames = Object.getOwnPropertyNames;
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+ var __getProtoOf = Object.getPrototypeOf;
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+ var __spreadValues = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(b)) {
+ if (__propIsEnum.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ }
+ return a;
+ };
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
+ var __commonJS = (cb, mod) => function __require() {
+ return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
+ };
+ var __export = (target, all) => {
+ __markAsModule(target);
+ for (var name in all)
+ __defProp(target, name, { get: all[name], enumerable: true });
+ };
+ var __reExport = (target, module, desc) => {
+ if (module && typeof module === "object" || typeof module === "function") {
+ for (let key of __getOwnPropNames(module))
+ if (!__hasOwnProp.call(target, key) && key !== "default")
+ __defProp(target, key, { get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable });
+ }
+ return target;
+ };
+ var __toModule = (module) => {
+ return __reExport(__markAsModule(__defProp(module != null ? __create(__getProtoOf(module)) : {}, "default", module && module.__esModule && "default" in module ? { get: () => module.default, enumerable: true } : { value: module, enumerable: true })), module);
+ };
-removing illegal node: "${(s.outerHTML||s.nodeValue).trim()}"
+ // node_modules/jquery/dist/jquery.js
+ var require_jquery = __commonJS({
+ "node_modules/jquery/dist/jquery.js"(exports, module) {
+ (function(global2, factory) {
+ "use strict";
+ if (typeof module === "object" && typeof module.exports === "object") {
+ module.exports = global2.document ? factory(global2, true) : function(w) {
+ if (!w.document) {
+ throw new Error("jQuery requires a window with a document");
+ }
+ return factory(w);
+ };
+ } else {
+ factory(global2);
+ }
+ })(typeof window !== "undefined" ? window : exports, function(window2, noGlobal) {
+ "use strict";
+ var arr = [];
+ var getProto = Object.getPrototypeOf;
+ var slice = arr.slice;
+ var flat = arr.flat ? function(array) {
+ return arr.flat.call(array);
+ } : function(array) {
+ return arr.concat.apply([], array);
+ };
+ var push = arr.push;
+ var indexOf = arr.indexOf;
+ var class2type = {};
+ var toString = class2type.toString;
+ var hasOwn = class2type.hasOwnProperty;
+ var fnToString = hasOwn.toString;
+ var ObjectFunctionString = fnToString.call(Object);
+ var support = {};
+ var isFunction = function isFunction2(obj) {
+ return typeof obj === "function" && typeof obj.nodeType !== "number" && typeof obj.item !== "function";
+ };
+ var isWindow = function isWindow2(obj) {
+ return obj != null && obj === obj.window;
+ };
+ var document2 = window2.document;
+ var preservedScriptAttributes = {
+ type: true,
+ src: true,
+ nonce: true,
+ noModule: true
+ };
+ function DOMEval(code, node, doc2) {
+ doc2 = doc2 || document2;
+ var i, val, script = doc2.createElement("script");
+ script.text = code;
+ if (node) {
+ for (i in preservedScriptAttributes) {
+ val = node[i] || node.getAttribute && node.getAttribute(i);
+ if (val) {
+ script.setAttribute(i, val);
+ }
+ }
+ }
+ doc2.head.appendChild(script).parentNode.removeChild(script);
+ }
+ function toType2(obj) {
+ if (obj == null) {
+ return obj + "";
+ }
+ return typeof obj === "object" || typeof obj === "function" ? class2type[toString.call(obj)] || "object" : typeof obj;
+ }
+ var version = "3.6.0", jQuery = function(selector, context) {
+ return new jQuery.fn.init(selector, context);
+ };
+ jQuery.fn = jQuery.prototype = {
+ jquery: version,
+ constructor: jQuery,
+ length: 0,
+ toArray: function() {
+ return slice.call(this);
+ },
+ get: function(num) {
+ if (num == null) {
+ return slice.call(this);
+ }
+ return num < 0 ? this[num + this.length] : this[num];
+ },
+ pushStack: function(elems) {
+ var ret = jQuery.merge(this.constructor(), elems);
+ ret.prevObject = this;
+ return ret;
+ },
+ each: function(callback) {
+ return jQuery.each(this, callback);
+ },
+ map: function(callback) {
+ return this.pushStack(jQuery.map(this, function(elem, i) {
+ return callback.call(elem, i, elem);
+ }));
+ },
+ slice: function() {
+ return this.pushStack(slice.apply(this, arguments));
+ },
+ first: function() {
+ return this.eq(0);
+ },
+ last: function() {
+ return this.eq(-1);
+ },
+ even: function() {
+ return this.pushStack(jQuery.grep(this, function(_elem, i) {
+ return (i + 1) % 2;
+ }));
+ },
+ odd: function() {
+ return this.pushStack(jQuery.grep(this, function(_elem, i) {
+ return i % 2;
+ }));
+ },
+ eq: function(i) {
+ var len = this.length, j = +i + (i < 0 ? len : 0);
+ return this.pushStack(j >= 0 && j < len ? [this[j]] : []);
+ },
+ end: function() {
+ return this.prevObject || this.constructor();
+ },
+ push,
+ sort: arr.sort,
+ splice: arr.splice
+ };
+ jQuery.extend = jQuery.fn.extend = function() {
+ var options, name, src, copy, copyIsArray, clone2, target = arguments[0] || {}, i = 1, length = arguments.length, deep = false;
+ if (typeof target === "boolean") {
+ deep = target;
+ target = arguments[i] || {};
+ i++;
+ }
+ if (typeof target !== "object" && !isFunction(target)) {
+ target = {};
+ }
+ if (i === length) {
+ target = this;
+ i--;
+ }
+ for (; i < length; i++) {
+ if ((options = arguments[i]) != null) {
+ for (name in options) {
+ copy = options[name];
+ if (name === "__proto__" || target === copy) {
+ continue;
+ }
+ if (deep && copy && (jQuery.isPlainObject(copy) || (copyIsArray = Array.isArray(copy)))) {
+ src = target[name];
+ if (copyIsArray && !Array.isArray(src)) {
+ clone2 = [];
+ } else if (!copyIsArray && !jQuery.isPlainObject(src)) {
+ clone2 = {};
+ } else {
+ clone2 = src;
+ }
+ copyIsArray = false;
+ target[name] = jQuery.extend(deep, clone2, copy);
+ } else if (copy !== void 0) {
+ target[name] = copy;
+ }
+ }
+ }
+ }
+ return target;
+ };
+ jQuery.extend({
+ expando: "jQuery" + (version + Math.random()).replace(/\D/g, ""),
+ isReady: true,
+ error: function(msg) {
+ throw new Error(msg);
+ },
+ noop: function() {
+ },
+ isPlainObject: function(obj) {
+ var proto, Ctor;
+ if (!obj || toString.call(obj) !== "[object Object]") {
+ return false;
+ }
+ proto = getProto(obj);
+ if (!proto) {
+ return true;
+ }
+ Ctor = hasOwn.call(proto, "constructor") && proto.constructor;
+ return typeof Ctor === "function" && fnToString.call(Ctor) === ObjectFunctionString;
+ },
+ isEmptyObject: function(obj) {
+ var name;
+ for (name in obj) {
+ return false;
+ }
+ return true;
+ },
+ globalEval: function(code, options, doc2) {
+ DOMEval(code, { nonce: options && options.nonce }, doc2);
+ },
+ each: function(obj, callback) {
+ var length, i = 0;
+ if (isArrayLike(obj)) {
+ length = obj.length;
+ for (; i < length; i++) {
+ if (callback.call(obj[i], i, obj[i]) === false) {
+ break;
+ }
+ }
+ } else {
+ for (i in obj) {
+ if (callback.call(obj[i], i, obj[i]) === false) {
+ break;
+ }
+ }
+ }
+ return obj;
+ },
+ makeArray: function(arr2, results) {
+ var ret = results || [];
+ if (arr2 != null) {
+ if (isArrayLike(Object(arr2))) {
+ jQuery.merge(ret, typeof arr2 === "string" ? [arr2] : arr2);
+ } else {
+ push.call(ret, arr2);
+ }
+ }
+ return ret;
+ },
+ inArray: function(elem, arr2, i) {
+ return arr2 == null ? -1 : indexOf.call(arr2, elem, i);
+ },
+ merge: function(first, second) {
+ var len = +second.length, j = 0, i = first.length;
+ for (; j < len; j++) {
+ first[i++] = second[j];
+ }
+ first.length = i;
+ return first;
+ },
+ grep: function(elems, callback, invert) {
+ var callbackInverse, matches = [], i = 0, length = elems.length, callbackExpect = !invert;
+ for (; i < length; i++) {
+ callbackInverse = !callback(elems[i], i);
+ if (callbackInverse !== callbackExpect) {
+ matches.push(elems[i]);
+ }
+ }
+ return matches;
+ },
+ map: function(elems, callback, arg) {
+ var length, value, i = 0, ret = [];
+ if (isArrayLike(elems)) {
+ length = elems.length;
+ for (; i < length; i++) {
+ value = callback(elems[i], i, arg);
+ if (value != null) {
+ ret.push(value);
+ }
+ }
+ } else {
+ for (i in elems) {
+ value = callback(elems[i], i, arg);
+ if (value != null) {
+ ret.push(value);
+ }
+ }
+ }
+ return flat(ret);
+ },
+ guid: 1,
+ support
+ });
+ if (typeof Symbol === "function") {
+ jQuery.fn[Symbol.iterator] = arr[Symbol.iterator];
+ }
+ jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(_i, name) {
+ class2type["[object " + name + "]"] = name.toLowerCase();
+ });
+ function isArrayLike(obj) {
+ var length = !!obj && "length" in obj && obj.length, type = toType2(obj);
+ if (isFunction(obj) || isWindow(obj)) {
+ return false;
+ }
+ return type === "array" || length === 0 || typeof length === "number" && length > 0 && length - 1 in obj;
+ }
+ var Sizzle = function(window3) {
+ var i, support2, Expr, getText, isXML, tokenize, compile, select, outermostContext, sortInput, hasDuplicate, setDocument, document3, docElem, documentIsHTML, rbuggyQSA, rbuggyMatches, matches, contains2, expando = "sizzle" + 1 * new Date(), preferredDoc = window3.document, dirruns = 0, done = 0, classCache = createCache(), tokenCache = createCache(), compilerCache = createCache(), nonnativeSelectorCache = createCache(), sortOrder = function(a, b) {
+ if (a === b) {
+ hasDuplicate = true;
+ }
+ return 0;
+ }, hasOwn2 = {}.hasOwnProperty, arr2 = [], pop = arr2.pop, pushNative = arr2.push, push2 = arr2.push, slice2 = arr2.slice, indexOf2 = function(list, elem) {
+ var i2 = 0, len = list.length;
+ for (; i2 < len; i2++) {
+ if (list[i2] === elem) {
+ return i2;
+ }
+ }
+ return -1;
+ }, booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", whitespace = "[\\x20\\t\\r\\n\\f]", identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + "*([*^$|!~]?=)" + whitespace + `*(?:'((?:\\\\.|[^\\\\'])*)'|"((?:\\\\.|[^\\\\"])*)"|(` + identifier + "))|)" + whitespace + "*\\]", pseudos = ":(" + identifier + `)(?:\\((('((?:\\\\.|[^\\\\'])*)'|"((?:\\\\.|[^\\\\"])*)")|((?:\\\\.|[^\\\\()[\\]]|` + attributes + ")*)|.*)\\)|)", rwhitespace = new RegExp(whitespace + "+", "g"), rtrim2 = new RegExp("^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g"), rcomma = new RegExp("^" + whitespace + "*," + whitespace + "*"), rcombinators = new RegExp("^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*"), rdescend = new RegExp(whitespace + "|>"), rpseudo = new RegExp(pseudos), ridentifier = new RegExp("^" + identifier + "$"), matchExpr = {
+ "ID": new RegExp("^#(" + identifier + ")"),
+ "CLASS": new RegExp("^\\.(" + identifier + ")"),
+ "TAG": new RegExp("^(" + identifier + "|[*])"),
+ "ATTR": new RegExp("^" + attributes),
+ "PSEUDO": new RegExp("^" + pseudos),
+ "CHILD": new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i"),
+ "bool": new RegExp("^(?:" + booleans + ")$", "i"),
+ "needsContext": new RegExp("^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i")
+ }, rhtml2 = /HTML$/i, rinputs = /^(?:input|select|textarea|button)$/i, rheader = /^h\d$/i, rnative = /^[^{]+\{\s*\[native \w/, rquickExpr2 = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, rsibling = /[+~]/, runescape = new RegExp("\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g"), funescape = function(escape, nonHex) {
+ var high = "0x" + escape.slice(1) - 65536;
+ return nonHex ? nonHex : high < 0 ? String.fromCharCode(high + 65536) : String.fromCharCode(high >> 10 | 55296, high & 1023 | 56320);
+ }, rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, fcssescape = function(ch, asCodePoint) {
+ if (asCodePoint) {
+ if (ch === "\0") {
+ return "\uFFFD";
+ }
+ return ch.slice(0, -1) + "\\" + ch.charCodeAt(ch.length - 1).toString(16) + " ";
+ }
+ return "\\" + ch;
+ }, unloadHandler = function() {
+ setDocument();
+ }, inDisabledFieldset = addCombinator(function(elem) {
+ return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset";
+ }, { dir: "parentNode", next: "legend" });
+ try {
+ push2.apply(arr2 = slice2.call(preferredDoc.childNodes), preferredDoc.childNodes);
+ arr2[preferredDoc.childNodes.length].nodeType;
+ } catch (e) {
+ push2 = {
+ apply: arr2.length ? function(target, els) {
+ pushNative.apply(target, slice2.call(els));
+ } : function(target, els) {
+ var j = target.length, i2 = 0;
+ while (target[j++] = els[i2++]) {
+ }
+ target.length = j - 1;
+ }
+ };
+ }
+ function Sizzle2(selector, context, results, seed) {
+ var m, i2, elem, nid, match, groups, newSelector, newContext = context && context.ownerDocument, nodeType = context ? context.nodeType : 9;
+ results = results || [];
+ if (typeof selector !== "string" || !selector || nodeType !== 1 && nodeType !== 9 && nodeType !== 11) {
+ return results;
+ }
+ if (!seed) {
+ setDocument(context);
+ context = context || document3;
+ if (documentIsHTML) {
+ if (nodeType !== 11 && (match = rquickExpr2.exec(selector))) {
+ if (m = match[1]) {
+ if (nodeType === 9) {
+ if (elem = context.getElementById(m)) {
+ if (elem.id === m) {
+ results.push(elem);
+ return results;
+ }
+ } else {
+ return results;
+ }
+ } else {
+ if (newContext && (elem = newContext.getElementById(m)) && contains2(context, elem) && elem.id === m) {
+ results.push(elem);
+ return results;
+ }
+ }
+ } else if (match[2]) {
+ push2.apply(results, context.getElementsByTagName(selector));
+ return results;
+ } else if ((m = match[3]) && support2.getElementsByClassName && context.getElementsByClassName) {
+ push2.apply(results, context.getElementsByClassName(m));
+ return results;
+ }
+ }
+ if (support2.qsa && !nonnativeSelectorCache[selector + " "] && (!rbuggyQSA || !rbuggyQSA.test(selector)) && (nodeType !== 1 || context.nodeName.toLowerCase() !== "object")) {
+ newSelector = selector;
+ newContext = context;
+ if (nodeType === 1 && (rdescend.test(selector) || rcombinators.test(selector))) {
+ newContext = rsibling.test(selector) && testContext(context.parentNode) || context;
+ if (newContext !== context || !support2.scope) {
+ if (nid = context.getAttribute("id")) {
+ nid = nid.replace(rcssescape, fcssescape);
+ } else {
+ context.setAttribute("id", nid = expando);
+ }
+ }
+ groups = tokenize(selector);
+ i2 = groups.length;
+ while (i2--) {
+ groups[i2] = (nid ? "#" + nid : ":scope") + " " + toSelector(groups[i2]);
+ }
+ newSelector = groups.join(",");
+ }
+ try {
+ push2.apply(results, newContext.querySelectorAll(newSelector));
+ return results;
+ } catch (qsaError) {
+ nonnativeSelectorCache(selector, true);
+ } finally {
+ if (nid === expando) {
+ context.removeAttribute("id");
+ }
+ }
+ }
+ }
+ }
+ return select(selector.replace(rtrim2, "$1"), context, results, seed);
+ }
+ function createCache() {
+ var keys = [];
+ function cache(key, value) {
+ if (keys.push(key + " ") > Expr.cacheLength) {
+ delete cache[keys.shift()];
+ }
+ return cache[key + " "] = value;
+ }
+ return cache;
+ }
+ function markFunction(fn2) {
+ fn2[expando] = true;
+ return fn2;
+ }
+ function assert(fn2) {
+ var el = document3.createElement("fieldset");
+ try {
+ return !!fn2(el);
+ } catch (e) {
+ return false;
+ } finally {
+ if (el.parentNode) {
+ el.parentNode.removeChild(el);
+ }
+ el = null;
+ }
+ }
+ function addHandle(attrs, handler) {
+ var arr3 = attrs.split("|"), i2 = arr3.length;
+ while (i2--) {
+ Expr.attrHandle[arr3[i2]] = handler;
+ }
+ }
+ function siblingCheck(a, b) {
+ var cur = b && a, diff = cur && a.nodeType === 1 && b.nodeType === 1 && a.sourceIndex - b.sourceIndex;
+ if (diff) {
+ return diff;
+ }
+ if (cur) {
+ while (cur = cur.nextSibling) {
+ if (cur === b) {
+ return -1;
+ }
+ }
+ }
+ return a ? 1 : -1;
+ }
+ function createInputPseudo(type) {
+ return function(elem) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === type;
+ };
+ }
+ function createButtonPseudo(type) {
+ return function(elem) {
+ var name = elem.nodeName.toLowerCase();
+ return (name === "input" || name === "button") && elem.type === type;
+ };
+ }
+ function createDisabledPseudo(disabled) {
+ return function(elem) {
+ if ("form" in elem) {
+ if (elem.parentNode && elem.disabled === false) {
+ if ("label" in elem) {
+ if ("label" in elem.parentNode) {
+ return elem.parentNode.disabled === disabled;
+ } else {
+ return elem.disabled === disabled;
+ }
+ }
+ return elem.isDisabled === disabled || elem.isDisabled !== !disabled && inDisabledFieldset(elem) === disabled;
+ }
+ return elem.disabled === disabled;
+ } else if ("label" in elem) {
+ return elem.disabled === disabled;
+ }
+ return false;
+ };
+ }
+ function createPositionalPseudo(fn2) {
+ return markFunction(function(argument) {
+ argument = +argument;
+ return markFunction(function(seed, matches2) {
+ var j, matchIndexes = fn2([], seed.length, argument), i2 = matchIndexes.length;
+ while (i2--) {
+ if (seed[j = matchIndexes[i2]]) {
+ seed[j] = !(matches2[j] = seed[j]);
+ }
+ }
+ });
+ });
+ }
+ function testContext(context) {
+ return context && typeof context.getElementsByTagName !== "undefined" && context;
+ }
+ support2 = Sizzle2.support = {};
+ isXML = Sizzle2.isXML = function(elem) {
+ var namespace = elem && elem.namespaceURI, docElem2 = elem && (elem.ownerDocument || elem).documentElement;
+ return !rhtml2.test(namespace || docElem2 && docElem2.nodeName || "HTML");
+ };
+ setDocument = Sizzle2.setDocument = function(node) {
+ var hasCompare, subWindow, doc2 = node ? node.ownerDocument || node : preferredDoc;
+ if (doc2 == document3 || doc2.nodeType !== 9 || !doc2.documentElement) {
+ return document3;
+ }
+ document3 = doc2;
+ docElem = document3.documentElement;
+ documentIsHTML = !isXML(document3);
+ if (preferredDoc != document3 && (subWindow = document3.defaultView) && subWindow.top !== subWindow) {
+ if (subWindow.addEventListener) {
+ subWindow.addEventListener("unload", unloadHandler, false);
+ } else if (subWindow.attachEvent) {
+ subWindow.attachEvent("onunload", unloadHandler);
+ }
+ }
+ support2.scope = assert(function(el) {
+ docElem.appendChild(el).appendChild(document3.createElement("div"));
+ return typeof el.querySelectorAll !== "undefined" && !el.querySelectorAll(":scope fieldset div").length;
+ });
+ support2.attributes = assert(function(el) {
+ el.className = "i";
+ return !el.getAttribute("className");
+ });
+ support2.getElementsByTagName = assert(function(el) {
+ el.appendChild(document3.createComment(""));
+ return !el.getElementsByTagName("*").length;
+ });
+ support2.getElementsByClassName = rnative.test(document3.getElementsByClassName);
+ support2.getById = assert(function(el) {
+ docElem.appendChild(el).id = expando;
+ return !document3.getElementsByName || !document3.getElementsByName(expando).length;
+ });
+ if (support2.getById) {
+ Expr.filter["ID"] = function(id) {
+ var attrId = id.replace(runescape, funescape);
+ return function(elem) {
+ return elem.getAttribute("id") === attrId;
+ };
+ };
+ Expr.find["ID"] = function(id, context) {
+ if (typeof context.getElementById !== "undefined" && documentIsHTML) {
+ var elem = context.getElementById(id);
+ return elem ? [elem] : [];
+ }
+ };
+ } else {
+ Expr.filter["ID"] = function(id) {
+ var attrId = id.replace(runescape, funescape);
+ return function(elem) {
+ var node2 = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
+ return node2 && node2.value === attrId;
+ };
+ };
+ Expr.find["ID"] = function(id, context) {
+ if (typeof context.getElementById !== "undefined" && documentIsHTML) {
+ var node2, i2, elems, elem = context.getElementById(id);
+ if (elem) {
+ node2 = elem.getAttributeNode("id");
+ if (node2 && node2.value === id) {
+ return [elem];
+ }
+ elems = context.getElementsByName(id);
+ i2 = 0;
+ while (elem = elems[i2++]) {
+ node2 = elem.getAttributeNode("id");
+ if (node2 && node2.value === id) {
+ return [elem];
+ }
+ }
+ }
+ return [];
+ }
+ };
+ }
+ Expr.find["TAG"] = support2.getElementsByTagName ? function(tag, context) {
+ if (typeof context.getElementsByTagName !== "undefined") {
+ return context.getElementsByTagName(tag);
+ } else if (support2.qsa) {
+ return context.querySelectorAll(tag);
+ }
+ } : function(tag, context) {
+ var elem, tmp = [], i2 = 0, results = context.getElementsByTagName(tag);
+ if (tag === "*") {
+ while (elem = results[i2++]) {
+ if (elem.nodeType === 1) {
+ tmp.push(elem);
+ }
+ }
+ return tmp;
+ }
+ return results;
+ };
+ Expr.find["CLASS"] = support2.getElementsByClassName && function(className, context) {
+ if (typeof context.getElementsByClassName !== "undefined" && documentIsHTML) {
+ return context.getElementsByClassName(className);
+ }
+ };
+ rbuggyMatches = [];
+ rbuggyQSA = [];
+ if (support2.qsa = rnative.test(document3.querySelectorAll)) {
+ assert(function(el) {
+ var input;
+ docElem.appendChild(el).innerHTML = "<a id='" + expando + "'></a><select id='" + expando + "-\r\\' msallowcapture=''><option selected=''></option></select>";
+ if (el.querySelectorAll("[msallowcapture^='']").length) {
+ rbuggyQSA.push("[*^$]=" + whitespace + `*(?:''|"")`);
+ }
+ if (!el.querySelectorAll("[selected]").length) {
+ rbuggyQSA.push("\\[" + whitespace + "*(?:value|" + booleans + ")");
+ }
+ if (!el.querySelectorAll("[id~=" + expando + "-]").length) {
+ rbuggyQSA.push("~=");
+ }
+ input = document3.createElement("input");
+ input.setAttribute("name", "");
+ el.appendChild(input);
+ if (!el.querySelectorAll("[name='']").length) {
+ rbuggyQSA.push("\\[" + whitespace + "*name" + whitespace + "*=" + whitespace + `*(?:''|"")`);
+ }
+ if (!el.querySelectorAll(":checked").length) {
+ rbuggyQSA.push(":checked");
+ }
+ if (!el.querySelectorAll("a#" + expando + "+*").length) {
+ rbuggyQSA.push(".#.+[+~]");
+ }
+ el.querySelectorAll("\\\f");
+ rbuggyQSA.push("[\\r\\n\\f]");
+ });
+ assert(function(el) {
+ el.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
+ var input = document3.createElement("input");
+ input.setAttribute("type", "hidden");
+ el.appendChild(input).setAttribute("name", "D");
+ if (el.querySelectorAll("[name=d]").length) {
+ rbuggyQSA.push("name" + whitespace + "*[*^$|!~]?=");
+ }
+ if (el.querySelectorAll(":enabled").length !== 2) {
+ rbuggyQSA.push(":enabled", ":disabled");
+ }
+ docElem.appendChild(el).disabled = true;
+ if (el.querySelectorAll(":disabled").length !== 2) {
+ rbuggyQSA.push(":enabled", ":disabled");
+ }
+ el.querySelectorAll("*,:x");
+ rbuggyQSA.push(",.*:");
+ });
+ }
+ if (support2.matchesSelector = rnative.test(matches = docElem.matches || docElem.webkitMatchesSelector || docElem.mozMatchesSelector || docElem.oMatchesSelector || docElem.msMatchesSelector)) {
+ assert(function(el) {
+ support2.disconnectedMatch = matches.call(el, "*");
+ matches.call(el, "[s!='']:x");
+ rbuggyMatches.push("!=", pseudos);
+ });
+ }
+ rbuggyQSA = rbuggyQSA.length && new RegExp(rbuggyQSA.join("|"));
+ rbuggyMatches = rbuggyMatches.length && new RegExp(rbuggyMatches.join("|"));
+ hasCompare = rnative.test(docElem.compareDocumentPosition);
+ contains2 = hasCompare || rnative.test(docElem.contains) ? function(a, b) {
+ var adown = a.nodeType === 9 ? a.documentElement : a, bup = b && b.parentNode;
+ return a === bup || !!(bup && bup.nodeType === 1 && (adown.contains ? adown.contains(bup) : a.compareDocumentPosition && a.compareDocumentPosition(bup) & 16));
+ } : function(a, b) {
+ if (b) {
+ while (b = b.parentNode) {
+ if (b === a) {
+ return true;
+ }
+ }
+ }
+ return false;
+ };
+ sortOrder = hasCompare ? function(a, b) {
+ if (a === b) {
+ hasDuplicate = true;
+ return 0;
+ }
+ var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
+ if (compare) {
+ return compare;
+ }
+ compare = (a.ownerDocument || a) == (b.ownerDocument || b) ? a.compareDocumentPosition(b) : 1;
+ if (compare & 1 || !support2.sortDetached && b.compareDocumentPosition(a) === compare) {
+ if (a == document3 || a.ownerDocument == preferredDoc && contains2(preferredDoc, a)) {
+ return -1;
+ }
+ if (b == document3 || b.ownerDocument == preferredDoc && contains2(preferredDoc, b)) {
+ return 1;
+ }
+ return sortInput ? indexOf2(sortInput, a) - indexOf2(sortInput, b) : 0;
+ }
+ return compare & 4 ? -1 : 1;
+ } : function(a, b) {
+ if (a === b) {
+ hasDuplicate = true;
+ return 0;
+ }
+ var cur, i2 = 0, aup = a.parentNode, bup = b.parentNode, ap = [a], bp = [b];
+ if (!aup || !bup) {
+ return a == document3 ? -1 : b == document3 ? 1 : aup ? -1 : bup ? 1 : sortInput ? indexOf2(sortInput, a) - indexOf2(sortInput, b) : 0;
+ } else if (aup === bup) {
+ return siblingCheck(a, b);
+ }
+ cur = a;
+ while (cur = cur.parentNode) {
+ ap.unshift(cur);
+ }
+ cur = b;
+ while (cur = cur.parentNode) {
+ bp.unshift(cur);
+ }
+ while (ap[i2] === bp[i2]) {
+ i2++;
+ }
+ return i2 ? siblingCheck(ap[i2], bp[i2]) : ap[i2] == preferredDoc ? -1 : bp[i2] == preferredDoc ? 1 : 0;
+ };
+ return document3;
+ };
+ Sizzle2.matches = function(expr, elements) {
+ return Sizzle2(expr, null, null, elements);
+ };
+ Sizzle2.matchesSelector = function(elem, expr) {
+ setDocument(elem);
+ if (support2.matchesSelector && documentIsHTML && !nonnativeSelectorCache[expr + " "] && (!rbuggyMatches || !rbuggyMatches.test(expr)) && (!rbuggyQSA || !rbuggyQSA.test(expr))) {
+ try {
+ var ret = matches.call(elem, expr);
+ if (ret || support2.disconnectedMatch || elem.document && elem.document.nodeType !== 11) {
+ return ret;
+ }
+ } catch (e) {
+ nonnativeSelectorCache(expr, true);
+ }
+ }
+ return Sizzle2(expr, document3, null, [elem]).length > 0;
+ };
+ Sizzle2.contains = function(context, elem) {
+ if ((context.ownerDocument || context) != document3) {
+ setDocument(context);
+ }
+ return contains2(context, elem);
+ };
+ Sizzle2.attr = function(elem, name) {
+ if ((elem.ownerDocument || elem) != document3) {
+ setDocument(elem);
+ }
+ var fn2 = Expr.attrHandle[name.toLowerCase()], val = fn2 && hasOwn2.call(Expr.attrHandle, name.toLowerCase()) ? fn2(elem, name, !documentIsHTML) : void 0;
+ return val !== void 0 ? val : support2.attributes || !documentIsHTML ? elem.getAttribute(name) : (val = elem.getAttributeNode(name)) && val.specified ? val.value : null;
+ };
+ Sizzle2.escape = function(sel) {
+ return (sel + "").replace(rcssescape, fcssescape);
+ };
+ Sizzle2.error = function(msg) {
+ throw new Error("Syntax error, unrecognized expression: " + msg);
+ };
+ Sizzle2.uniqueSort = function(results) {
+ var elem, duplicates = [], j = 0, i2 = 0;
+ hasDuplicate = !support2.detectDuplicates;
+ sortInput = !support2.sortStable && results.slice(0);
+ results.sort(sortOrder);
+ if (hasDuplicate) {
+ while (elem = results[i2++]) {
+ if (elem === results[i2]) {
+ j = duplicates.push(i2);
+ }
+ }
+ while (j--) {
+ results.splice(duplicates[j], 1);
+ }
+ }
+ sortInput = null;
+ return results;
+ };
+ getText = Sizzle2.getText = function(elem) {
+ var node, ret = "", i2 = 0, nodeType = elem.nodeType;
+ if (!nodeType) {
+ while (node = elem[i2++]) {
+ ret += getText(node);
+ }
+ } else if (nodeType === 1 || nodeType === 9 || nodeType === 11) {
+ if (typeof elem.textContent === "string") {
+ return elem.textContent;
+ } else {
+ for (elem = elem.firstChild; elem; elem = elem.nextSibling) {
+ ret += getText(elem);
+ }
+ }
+ } else if (nodeType === 3 || nodeType === 4) {
+ return elem.nodeValue;
+ }
+ return ret;
+ };
+ Expr = Sizzle2.selectors = {
+ cacheLength: 50,
+ createPseudo: markFunction,
+ match: matchExpr,
+ attrHandle: {},
+ find: {},
+ relative: {
+ ">": { dir: "parentNode", first: true },
+ " ": { dir: "parentNode" },
+ "+": { dir: "previousSibling", first: true },
+ "~": { dir: "previousSibling" }
+ },
+ preFilter: {
+ "ATTR": function(match) {
+ match[1] = match[1].replace(runescape, funescape);
+ match[3] = (match[3] || match[4] || match[5] || "").replace(runescape, funescape);
+ if (match[2] === "~=") {
+ match[3] = " " + match[3] + " ";
+ }
+ return match.slice(0, 4);
+ },
+ "CHILD": function(match) {
+ match[1] = match[1].toLowerCase();
+ if (match[1].slice(0, 3) === "nth") {
+ if (!match[3]) {
+ Sizzle2.error(match[0]);
+ }
+ match[4] = +(match[4] ? match[5] + (match[6] || 1) : 2 * (match[3] === "even" || match[3] === "odd"));
+ match[5] = +(match[7] + match[8] || match[3] === "odd");
+ } else if (match[3]) {
+ Sizzle2.error(match[0]);
+ }
+ return match;
+ },
+ "PSEUDO": function(match) {
+ var excess, unquoted = !match[6] && match[2];
+ if (matchExpr["CHILD"].test(match[0])) {
+ return null;
+ }
+ if (match[3]) {
+ match[2] = match[4] || match[5] || "";
+ } else if (unquoted && rpseudo.test(unquoted) && (excess = tokenize(unquoted, true)) && (excess = unquoted.indexOf(")", unquoted.length - excess) - unquoted.length)) {
+ match[0] = match[0].slice(0, excess);
+ match[2] = unquoted.slice(0, excess);
+ }
+ return match.slice(0, 3);
+ }
+ },
+ filter: {
+ "TAG": function(nodeNameSelector) {
+ var nodeName2 = nodeNameSelector.replace(runescape, funescape).toLowerCase();
+ return nodeNameSelector === "*" ? function() {
+ return true;
+ } : function(elem) {
+ return elem.nodeName && elem.nodeName.toLowerCase() === nodeName2;
+ };
+ },
+ "CLASS": function(className) {
+ var pattern = classCache[className + " "];
+ return pattern || (pattern = new RegExp("(^|" + whitespace + ")" + className + "(" + whitespace + "|$)")) && classCache(className, function(elem) {
+ return pattern.test(typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "");
+ });
+ },
+ "ATTR": function(name, operator, check) {
+ return function(elem) {
+ var result = Sizzle2.attr(elem, name);
+ if (result == null) {
+ return operator === "!=";
+ }
+ if (!operator) {
+ return true;
+ }
+ result += "";
+ return operator === "=" ? result === check : operator === "!=" ? result !== check : operator === "^=" ? check && result.indexOf(check) === 0 : operator === "*=" ? check && result.indexOf(check) > -1 : operator === "$=" ? check && result.slice(-check.length) === check : operator === "~=" ? (" " + result.replace(rwhitespace, " ") + " ").indexOf(check) > -1 : operator === "|=" ? result === check || result.slice(0, check.length + 1) === check + "-" : false;
+ };
+ },
+ "CHILD": function(type, what, _argument, first, last) {
+ var simple = type.slice(0, 3) !== "nth", forward = type.slice(-4) !== "last", ofType = what === "of-type";
+ return first === 1 && last === 0 ? function(elem) {
+ return !!elem.parentNode;
+ } : function(elem, _context, xml) {
+ var cache, uniqueCache, outerCache, node, nodeIndex, start2, dir2 = simple !== forward ? "nextSibling" : "previousSibling", parent = elem.parentNode, name = ofType && elem.nodeName.toLowerCase(), useCache = !xml && !ofType, diff = false;
+ if (parent) {
+ if (simple) {
+ while (dir2) {
+ node = elem;
+ while (node = node[dir2]) {
+ if (ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1) {
+ return false;
+ }
+ }
+ start2 = dir2 = type === "only" && !start2 && "nextSibling";
+ }
+ return true;
+ }
+ start2 = [forward ? parent.firstChild : parent.lastChild];
+ if (forward && useCache) {
+ node = parent;
+ outerCache = node[expando] || (node[expando] = {});
+ uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {});
+ cache = uniqueCache[type] || [];
+ nodeIndex = cache[0] === dirruns && cache[1];
+ diff = nodeIndex && cache[2];
+ node = nodeIndex && parent.childNodes[nodeIndex];
+ while (node = ++nodeIndex && node && node[dir2] || (diff = nodeIndex = 0) || start2.pop()) {
+ if (node.nodeType === 1 && ++diff && node === elem) {
+ uniqueCache[type] = [dirruns, nodeIndex, diff];
+ break;
+ }
+ }
+ } else {
+ if (useCache) {
+ node = elem;
+ outerCache = node[expando] || (node[expando] = {});
+ uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {});
+ cache = uniqueCache[type] || [];
+ nodeIndex = cache[0] === dirruns && cache[1];
+ diff = nodeIndex;
+ }
+ if (diff === false) {
+ while (node = ++nodeIndex && node && node[dir2] || (diff = nodeIndex = 0) || start2.pop()) {
+ if ((ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1) && ++diff) {
+ if (useCache) {
+ outerCache = node[expando] || (node[expando] = {});
+ uniqueCache = outerCache[node.uniqueID] || (outerCache[node.uniqueID] = {});
+ uniqueCache[type] = [dirruns, diff];
+ }
+ if (node === elem) {
+ break;
+ }
+ }
+ }
+ }
+ }
+ diff -= last;
+ return diff === first || diff % first === 0 && diff / first >= 0;
+ }
+ };
+ },
+ "PSEUDO": function(pseudo, argument) {
+ var args, fn2 = Expr.pseudos[pseudo] || Expr.setFilters[pseudo.toLowerCase()] || Sizzle2.error("unsupported pseudo: " + pseudo);
+ if (fn2[expando]) {
+ return fn2(argument);
+ }
+ if (fn2.length > 1) {
+ args = [pseudo, pseudo, "", argument];
+ return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase()) ? markFunction(function(seed, matches2) {
+ var idx, matched = fn2(seed, argument), i2 = matched.length;
+ while (i2--) {
+ idx = indexOf2(seed, matched[i2]);
+ seed[idx] = !(matches2[idx] = matched[i2]);
+ }
+ }) : function(elem) {
+ return fn2(elem, 0, args);
+ };
+ }
+ return fn2;
+ }
+ },
+ pseudos: {
+ "not": markFunction(function(selector) {
+ var input = [], results = [], matcher = compile(selector.replace(rtrim2, "$1"));
+ return matcher[expando] ? markFunction(function(seed, matches2, _context, xml) {
+ var elem, unmatched = matcher(seed, null, xml, []), i2 = seed.length;
+ while (i2--) {
+ if (elem = unmatched[i2]) {
+ seed[i2] = !(matches2[i2] = elem);
+ }
+ }
+ }) : function(elem, _context, xml) {
+ input[0] = elem;
+ matcher(input, null, xml, results);
+ input[0] = null;
+ return !results.pop();
+ };
+ }),
+ "has": markFunction(function(selector) {
+ return function(elem) {
+ return Sizzle2(selector, elem).length > 0;
+ };
+ }),
+ "contains": markFunction(function(text) {
+ text = text.replace(runescape, funescape);
+ return function(elem) {
+ return (elem.textContent || getText(elem)).indexOf(text) > -1;
+ };
+ }),
+ "lang": markFunction(function(lang) {
+ if (!ridentifier.test(lang || "")) {
+ Sizzle2.error("unsupported lang: " + lang);
+ }
+ lang = lang.replace(runescape, funescape).toLowerCase();
+ return function(elem) {
+ var elemLang;
+ do {
+ if (elemLang = documentIsHTML ? elem.lang : elem.getAttribute("xml:lang") || elem.getAttribute("lang")) {
+ elemLang = elemLang.toLowerCase();
+ return elemLang === lang || elemLang.indexOf(lang + "-") === 0;
+ }
+ } while ((elem = elem.parentNode) && elem.nodeType === 1);
+ return false;
+ };
+ }),
+ "target": function(elem) {
+ var hash3 = window3.location && window3.location.hash;
+ return hash3 && hash3.slice(1) === elem.id;
+ },
+ "root": function(elem) {
+ return elem === docElem;
+ },
+ "focus": function(elem) {
+ return elem === document3.activeElement && (!document3.hasFocus || document3.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
+ },
+ "enabled": createDisabledPseudo(false),
+ "disabled": createDisabledPseudo(true),
+ "checked": function(elem) {
+ var nodeName2 = elem.nodeName.toLowerCase();
+ return nodeName2 === "input" && !!elem.checked || nodeName2 === "option" && !!elem.selected;
+ },
+ "selected": function(elem) {
+ if (elem.parentNode) {
+ elem.parentNode.selectedIndex;
+ }
+ return elem.selected === true;
+ },
+ "empty": function(elem) {
+ for (elem = elem.firstChild; elem; elem = elem.nextSibling) {
+ if (elem.nodeType < 6) {
+ return false;
+ }
+ }
+ return true;
+ },
+ "parent": function(elem) {
+ return !Expr.pseudos["empty"](elem);
+ },
+ "header": function(elem) {
+ return rheader.test(elem.nodeName);
+ },
+ "input": function(elem) {
+ return rinputs.test(elem.nodeName);
+ },
+ "button": function(elem) {
+ var name = elem.nodeName.toLowerCase();
+ return name === "input" && elem.type === "button" || name === "button";
+ },
+ "text": function(elem) {
+ var attr;
+ return elem.nodeName.toLowerCase() === "input" && elem.type === "text" && ((attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text");
+ },
+ "first": createPositionalPseudo(function() {
+ return [0];
+ }),
+ "last": createPositionalPseudo(function(_matchIndexes, length) {
+ return [length - 1];
+ }),
+ "eq": createPositionalPseudo(function(_matchIndexes, length, argument) {
+ return [argument < 0 ? argument + length : argument];
+ }),
+ "even": createPositionalPseudo(function(matchIndexes, length) {
+ var i2 = 0;
+ for (; i2 < length; i2 += 2) {
+ matchIndexes.push(i2);
+ }
+ return matchIndexes;
+ }),
+ "odd": createPositionalPseudo(function(matchIndexes, length) {
+ var i2 = 1;
+ for (; i2 < length; i2 += 2) {
+ matchIndexes.push(i2);
+ }
+ return matchIndexes;
+ }),
+ "lt": createPositionalPseudo(function(matchIndexes, length, argument) {
+ var i2 = argument < 0 ? argument + length : argument > length ? length : argument;
+ for (; --i2 >= 0; ) {
+ matchIndexes.push(i2);
+ }
+ return matchIndexes;
+ }),
+ "gt": createPositionalPseudo(function(matchIndexes, length, argument) {
+ var i2 = argument < 0 ? argument + length : argument;
+ for (; ++i2 < length; ) {
+ matchIndexes.push(i2);
+ }
+ return matchIndexes;
+ })
+ }
+ };
+ Expr.pseudos["nth"] = Expr.pseudos["eq"];
+ for (i in { radio: true, checkbox: true, file: true, password: true, image: true }) {
+ Expr.pseudos[i] = createInputPseudo(i);
+ }
+ for (i in { submit: true, reset: true }) {
+ Expr.pseudos[i] = createButtonPseudo(i);
+ }
+ function setFilters() {
+ }
+ setFilters.prototype = Expr.filters = Expr.pseudos;
+ Expr.setFilters = new setFilters();
+ tokenize = Sizzle2.tokenize = function(selector, parseOnly) {
+ var matched, match, tokens, type, soFar, groups, preFilters, cached = tokenCache[selector + " "];
+ if (cached) {
+ return parseOnly ? 0 : cached.slice(0);
+ }
+ soFar = selector;
+ groups = [];
+ preFilters = Expr.preFilter;
+ while (soFar) {
+ if (!matched || (match = rcomma.exec(soFar))) {
+ if (match) {
+ soFar = soFar.slice(match[0].length) || soFar;
+ }
+ groups.push(tokens = []);
+ }
+ matched = false;
+ if (match = rcombinators.exec(soFar)) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ type: match[0].replace(rtrim2, " ")
+ });
+ soFar = soFar.slice(matched.length);
+ }
+ for (type in Expr.filter) {
+ if ((match = matchExpr[type].exec(soFar)) && (!preFilters[type] || (match = preFilters[type](match)))) {
+ matched = match.shift();
+ tokens.push({
+ value: matched,
+ type,
+ matches: match
+ });
+ soFar = soFar.slice(matched.length);
+ }
+ }
+ if (!matched) {
+ break;
+ }
+ }
+ return parseOnly ? soFar.length : soFar ? Sizzle2.error(selector) : tokenCache(selector, groups).slice(0);
+ };
+ function toSelector(tokens) {
+ var i2 = 0, len = tokens.length, selector = "";
+ for (; i2 < len; i2++) {
+ selector += tokens[i2].value;
+ }
+ return selector;
+ }
+ function addCombinator(matcher, combinator, base) {
+ var dir2 = combinator.dir, skip = combinator.next, key = skip || dir2, checkNonElements = base && key === "parentNode", doneName = done++;
+ return combinator.first ? function(elem, context, xml) {
+ while (elem = elem[dir2]) {
+ if (elem.nodeType === 1 || checkNonElements) {
+ return matcher(elem, context, xml);
+ }
+ }
+ return false;
+ } : function(elem, context, xml) {
+ var oldCache, uniqueCache, outerCache, newCache = [dirruns, doneName];
+ if (xml) {
+ while (elem = elem[dir2]) {
+ if (elem.nodeType === 1 || checkNonElements) {
+ if (matcher(elem, context, xml)) {
+ return true;
+ }
+ }
+ }
+ } else {
+ while (elem = elem[dir2]) {
+ if (elem.nodeType === 1 || checkNonElements) {
+ outerCache = elem[expando] || (elem[expando] = {});
+ uniqueCache = outerCache[elem.uniqueID] || (outerCache[elem.uniqueID] = {});
+ if (skip && skip === elem.nodeName.toLowerCase()) {
+ elem = elem[dir2] || elem;
+ } else if ((oldCache = uniqueCache[key]) && oldCache[0] === dirruns && oldCache[1] === doneName) {
+ return newCache[2] = oldCache[2];
+ } else {
+ uniqueCache[key] = newCache;
+ if (newCache[2] = matcher(elem, context, xml)) {
+ return true;
+ }
+ }
+ }
+ }
+ }
+ return false;
+ };
+ }
+ function elementMatcher(matchers) {
+ return matchers.length > 1 ? function(elem, context, xml) {
+ var i2 = matchers.length;
+ while (i2--) {
+ if (!matchers[i2](elem, context, xml)) {
+ return false;
+ }
+ }
+ return true;
+ } : matchers[0];
+ }
+ function multipleContexts(selector, contexts, results) {
+ var i2 = 0, len = contexts.length;
+ for (; i2 < len; i2++) {
+ Sizzle2(selector, contexts[i2], results);
+ }
+ return results;
+ }
+ function condense(unmatched, map, filter, context, xml) {
+ var elem, newUnmatched = [], i2 = 0, len = unmatched.length, mapped = map != null;
+ for (; i2 < len; i2++) {
+ if (elem = unmatched[i2]) {
+ if (!filter || filter(elem, context, xml)) {
+ newUnmatched.push(elem);
+ if (mapped) {
+ map.push(i2);
+ }
+ }
+ }
+ }
+ return newUnmatched;
+ }
+ function setMatcher(preFilter, selector, matcher, postFilter, postFinder, postSelector) {
+ if (postFilter && !postFilter[expando]) {
+ postFilter = setMatcher(postFilter);
+ }
+ if (postFinder && !postFinder[expando]) {
+ postFinder = setMatcher(postFinder, postSelector);
+ }
+ return markFunction(function(seed, results, context, xml) {
+ var temp, i2, elem, preMap = [], postMap = [], preexisting = results.length, elems = seed || multipleContexts(selector || "*", context.nodeType ? [context] : context, []), matcherIn = preFilter && (seed || !selector) ? condense(elems, preMap, preFilter, context, xml) : elems, matcherOut = matcher ? postFinder || (seed ? preFilter : preexisting || postFilter) ? [] : results : matcherIn;
+ if (matcher) {
+ matcher(matcherIn, matcherOut, context, xml);
+ }
+ if (postFilter) {
+ temp = condense(matcherOut, postMap);
+ postFilter(temp, [], context, xml);
+ i2 = temp.length;
+ while (i2--) {
+ if (elem = temp[i2]) {
+ matcherOut[postMap[i2]] = !(matcherIn[postMap[i2]] = elem);
+ }
+ }
+ }
+ if (seed) {
+ if (postFinder || preFilter) {
+ if (postFinder) {
+ temp = [];
+ i2 = matcherOut.length;
+ while (i2--) {
+ if (elem = matcherOut[i2]) {
+ temp.push(matcherIn[i2] = elem);
+ }
+ }
+ postFinder(null, matcherOut = [], temp, xml);
+ }
+ i2 = matcherOut.length;
+ while (i2--) {
+ if ((elem = matcherOut[i2]) && (temp = postFinder ? indexOf2(seed, elem) : preMap[i2]) > -1) {
+ seed[temp] = !(results[temp] = elem);
+ }
+ }
+ }
+ } else {
+ matcherOut = condense(matcherOut === results ? matcherOut.splice(preexisting, matcherOut.length) : matcherOut);
+ if (postFinder) {
+ postFinder(null, results, matcherOut, xml);
+ } else {
+ push2.apply(results, matcherOut);
+ }
+ }
+ });
+ }
+ function matcherFromTokens(tokens) {
+ var checkContext, matcher, j, len = tokens.length, leadingRelative = Expr.relative[tokens[0].type], implicitRelative = leadingRelative || Expr.relative[" "], i2 = leadingRelative ? 1 : 0, matchContext = addCombinator(function(elem) {
+ return elem === checkContext;
+ }, implicitRelative, true), matchAnyContext = addCombinator(function(elem) {
+ return indexOf2(checkContext, elem) > -1;
+ }, implicitRelative, true), matchers = [function(elem, context, xml) {
+ var ret = !leadingRelative && (xml || context !== outermostContext) || ((checkContext = context).nodeType ? matchContext(elem, context, xml) : matchAnyContext(elem, context, xml));
+ checkContext = null;
+ return ret;
+ }];
+ for (; i2 < len; i2++) {
+ if (matcher = Expr.relative[tokens[i2].type]) {
+ matchers = [addCombinator(elementMatcher(matchers), matcher)];
+ } else {
+ matcher = Expr.filter[tokens[i2].type].apply(null, tokens[i2].matches);
+ if (matcher[expando]) {
+ j = ++i2;
+ for (; j < len; j++) {
+ if (Expr.relative[tokens[j].type]) {
+ break;
+ }
+ }
+ return setMatcher(i2 > 1 && elementMatcher(matchers), i2 > 1 && toSelector(tokens.slice(0, i2 - 1).concat({ value: tokens[i2 - 2].type === " " ? "*" : "" })).replace(rtrim2, "$1"), matcher, i2 < j && matcherFromTokens(tokens.slice(i2, j)), j < len && matcherFromTokens(tokens = tokens.slice(j)), j < len && toSelector(tokens));
+ }
+ matchers.push(matcher);
+ }
+ }
+ return elementMatcher(matchers);
+ }
+ function matcherFromGroupMatchers(elementMatchers, setMatchers) {
+ var bySet = setMatchers.length > 0, byElement = elementMatchers.length > 0, superMatcher = function(seed, context, xml, results, outermost) {
+ var elem, j, matcher, matchedCount = 0, i2 = "0", unmatched = seed && [], setMatched = [], contextBackup = outermostContext, elems = seed || byElement && Expr.find["TAG"]("*", outermost), dirrunsUnique = dirruns += contextBackup == null ? 1 : Math.random() || 0.1, len = elems.length;
+ if (outermost) {
+ outermostContext = context == document3 || context || outermost;
+ }
+ for (; i2 !== len && (elem = elems[i2]) != null; i2++) {
+ if (byElement && elem) {
+ j = 0;
+ if (!context && elem.ownerDocument != document3) {
+ setDocument(elem);
+ xml = !documentIsHTML;
+ }
+ while (matcher = elementMatchers[j++]) {
+ if (matcher(elem, context || document3, xml)) {
+ results.push(elem);
+ break;
+ }
+ }
+ if (outermost) {
+ dirruns = dirrunsUnique;
+ }
+ }
+ if (bySet) {
+ if (elem = !matcher && elem) {
+ matchedCount--;
+ }
+ if (seed) {
+ unmatched.push(elem);
+ }
+ }
+ }
+ matchedCount += i2;
+ if (bySet && i2 !== matchedCount) {
+ j = 0;
+ while (matcher = setMatchers[j++]) {
+ matcher(unmatched, setMatched, context, xml);
+ }
+ if (seed) {
+ if (matchedCount > 0) {
+ while (i2--) {
+ if (!(unmatched[i2] || setMatched[i2])) {
+ setMatched[i2] = pop.call(results);
+ }
+ }
+ }
+ setMatched = condense(setMatched);
+ }
+ push2.apply(results, setMatched);
+ if (outermost && !seed && setMatched.length > 0 && matchedCount + setMatchers.length > 1) {
+ Sizzle2.uniqueSort(results);
+ }
+ }
+ if (outermost) {
+ dirruns = dirrunsUnique;
+ outermostContext = contextBackup;
+ }
+ return unmatched;
+ };
+ return bySet ? markFunction(superMatcher) : superMatcher;
+ }
+ compile = Sizzle2.compile = function(selector, match) {
+ var i2, setMatchers = [], elementMatchers = [], cached = compilerCache[selector + " "];
+ if (!cached) {
+ if (!match) {
+ match = tokenize(selector);
+ }
+ i2 = match.length;
+ while (i2--) {
+ cached = matcherFromTokens(match[i2]);
+ if (cached[expando]) {
+ setMatchers.push(cached);
+ } else {
+ elementMatchers.push(cached);
+ }
+ }
+ cached = compilerCache(selector, matcherFromGroupMatchers(elementMatchers, setMatchers));
+ cached.selector = selector;
+ }
+ return cached;
+ };
+ select = Sizzle2.select = function(selector, context, results, seed) {
+ var i2, tokens, token, type, find, compiled = typeof selector === "function" && selector, match = !seed && tokenize(selector = compiled.selector || selector);
+ results = results || [];
+ if (match.length === 1) {
+ tokens = match[0] = match[0].slice(0);
+ if (tokens.length > 2 && (token = tokens[0]).type === "ID" && context.nodeType === 9 && documentIsHTML && Expr.relative[tokens[1].type]) {
+ context = (Expr.find["ID"](token.matches[0].replace(runescape, funescape), context) || [])[0];
+ if (!context) {
+ return results;
+ } else if (compiled) {
+ context = context.parentNode;
+ }
+ selector = selector.slice(tokens.shift().value.length);
+ }
+ i2 = matchExpr["needsContext"].test(selector) ? 0 : tokens.length;
+ while (i2--) {
+ token = tokens[i2];
+ if (Expr.relative[type = token.type]) {
+ break;
+ }
+ if (find = Expr.find[type]) {
+ if (seed = find(token.matches[0].replace(runescape, funescape), rsibling.test(tokens[0].type) && testContext(context.parentNode) || context)) {
+ tokens.splice(i2, 1);
+ selector = seed.length && toSelector(tokens);
+ if (!selector) {
+ push2.apply(results, seed);
+ return results;
+ }
+ break;
+ }
+ }
+ }
+ }
+ (compiled || compile(selector, match))(seed, context, !documentIsHTML, results, !context || rsibling.test(selector) && testContext(context.parentNode) || context);
+ return results;
+ };
+ support2.sortStable = expando.split("").sort(sortOrder).join("") === expando;
+ support2.detectDuplicates = !!hasDuplicate;
+ setDocument();
+ support2.sortDetached = assert(function(el) {
+ return el.compareDocumentPosition(document3.createElement("fieldset")) & 1;
+ });
+ if (!assert(function(el) {
+ el.innerHTML = "<a href='#'></a>";
+ return el.firstChild.getAttribute("href") === "#";
+ })) {
+ addHandle("type|href|height|width", function(elem, name, isXML2) {
+ if (!isXML2) {
+ return elem.getAttribute(name, name.toLowerCase() === "type" ? 1 : 2);
+ }
+ });
+ }
+ if (!support2.attributes || !assert(function(el) {
+ el.innerHTML = "<input/>";
+ el.firstChild.setAttribute("value", "");
+ return el.firstChild.getAttribute("value") === "";
+ })) {
+ addHandle("value", function(elem, _name, isXML2) {
+ if (!isXML2 && elem.nodeName.toLowerCase() === "input") {
+ return elem.defaultValue;
+ }
+ });
+ }
+ if (!assert(function(el) {
+ return el.getAttribute("disabled") == null;
+ })) {
+ addHandle(booleans, function(elem, name, isXML2) {
+ var val;
+ if (!isXML2) {
+ return elem[name] === true ? name.toLowerCase() : (val = elem.getAttributeNode(name)) && val.specified ? val.value : null;
+ }
+ });
+ }
+ return Sizzle2;
+ }(window2);
+ jQuery.find = Sizzle;
+ jQuery.expr = Sizzle.selectors;
+ jQuery.expr[":"] = jQuery.expr.pseudos;
+ jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;
+ jQuery.text = Sizzle.getText;
+ jQuery.isXMLDoc = Sizzle.isXML;
+ jQuery.contains = Sizzle.contains;
+ jQuery.escapeSelector = Sizzle.escape;
+ var dir = function(elem, dir2, until) {
+ var matched = [], truncate = until !== void 0;
+ while ((elem = elem[dir2]) && elem.nodeType !== 9) {
+ if (elem.nodeType === 1) {
+ if (truncate && jQuery(elem).is(until)) {
+ break;
+ }
+ matched.push(elem);
+ }
+ }
+ return matched;
+ };
+ var siblings = function(n, elem) {
+ var matched = [];
+ for (; n; n = n.nextSibling) {
+ if (n.nodeType === 1 && n !== elem) {
+ matched.push(n);
+ }
+ }
+ return matched;
+ };
+ var rneedsContext = jQuery.expr.match.needsContext;
+ function nodeName(elem, name) {
+ return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
+ }
+ var rsingleTag = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
+ function winnow(elements, qualifier, not) {
+ if (isFunction(qualifier)) {
+ return jQuery.grep(elements, function(elem, i) {
+ return !!qualifier.call(elem, i, elem) !== not;
+ });
+ }
+ if (qualifier.nodeType) {
+ return jQuery.grep(elements, function(elem) {
+ return elem === qualifier !== not;
+ });
+ }
+ if (typeof qualifier !== "string") {
+ return jQuery.grep(elements, function(elem) {
+ return indexOf.call(qualifier, elem) > -1 !== not;
+ });
+ }
+ return jQuery.filter(qualifier, elements, not);
+ }
+ jQuery.filter = function(expr, elems, not) {
+ var elem = elems[0];
+ if (not) {
+ expr = ":not(" + expr + ")";
+ }
+ if (elems.length === 1 && elem.nodeType === 1) {
+ return jQuery.find.matchesSelector(elem, expr) ? [elem] : [];
+ }
+ return jQuery.find.matches(expr, jQuery.grep(elems, function(elem2) {
+ return elem2.nodeType === 1;
+ }));
+ };
+ jQuery.fn.extend({
+ find: function(selector) {
+ var i, ret, len = this.length, self2 = this;
+ if (typeof selector !== "string") {
+ return this.pushStack(jQuery(selector).filter(function() {
+ for (i = 0; i < len; i++) {
+ if (jQuery.contains(self2[i], this)) {
+ return true;
+ }
+ }
+ }));
+ }
+ ret = this.pushStack([]);
+ for (i = 0; i < len; i++) {
+ jQuery.find(selector, self2[i], ret);
+ }
+ return len > 1 ? jQuery.uniqueSort(ret) : ret;
+ },
+ filter: function(selector) {
+ return this.pushStack(winnow(this, selector || [], false));
+ },
+ not: function(selector) {
+ return this.pushStack(winnow(this, selector || [], true));
+ },
+ is: function(selector) {
+ return !!winnow(this, typeof selector === "string" && rneedsContext.test(selector) ? jQuery(selector) : selector || [], false).length;
+ }
+ });
+ var rootjQuery, rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, init = jQuery.fn.init = function(selector, context, root) {
+ var match, elem;
+ if (!selector) {
+ return this;
+ }
+ root = root || rootjQuery;
+ if (typeof selector === "string") {
+ if (selector[0] === "<" && selector[selector.length - 1] === ">" && selector.length >= 3) {
+ match = [null, selector, null];
+ } else {
+ match = rquickExpr.exec(selector);
+ }
+ if (match && (match[1] || !context)) {
+ if (match[1]) {
+ context = context instanceof jQuery ? context[0] : context;
+ jQuery.merge(this, jQuery.parseHTML(match[1], context && context.nodeType ? context.ownerDocument || context : document2, true));
+ if (rsingleTag.test(match[1]) && jQuery.isPlainObject(context)) {
+ for (match in context) {
+ if (isFunction(this[match])) {
+ this[match](context[match]);
+ } else {
+ this.attr(match, context[match]);
+ }
+ }
+ }
+ return this;
+ } else {
+ elem = document2.getElementById(match[2]);
+ if (elem) {
+ this[0] = elem;
+ this.length = 1;
+ }
+ return this;
+ }
+ } else if (!context || context.jquery) {
+ return (context || root).find(selector);
+ } else {
+ return this.constructor(context).find(selector);
+ }
+ } else if (selector.nodeType) {
+ this[0] = selector;
+ this.length = 1;
+ return this;
+ } else if (isFunction(selector)) {
+ return root.ready !== void 0 ? root.ready(selector) : selector(jQuery);
+ }
+ return jQuery.makeArray(selector, this);
+ };
+ init.prototype = jQuery.fn;
+ rootjQuery = jQuery(document2);
+ var rparentsprev = /^(?:parents|prev(?:Until|All))/, guaranteedUnique = {
+ children: true,
+ contents: true,
+ next: true,
+ prev: true
+ };
+ jQuery.fn.extend({
+ has: function(target) {
+ var targets = jQuery(target, this), l = targets.length;
+ return this.filter(function() {
+ var i = 0;
+ for (; i < l; i++) {
+ if (jQuery.contains(this, targets[i])) {
+ return true;
+ }
+ }
+ });
+ },
+ closest: function(selectors, context) {
+ var cur, i = 0, l = this.length, matched = [], targets = typeof selectors !== "string" && jQuery(selectors);
+ if (!rneedsContext.test(selectors)) {
+ for (; i < l; i++) {
+ for (cur = this[i]; cur && cur !== context; cur = cur.parentNode) {
+ if (cur.nodeType < 11 && (targets ? targets.index(cur) > -1 : cur.nodeType === 1 && jQuery.find.matchesSelector(cur, selectors))) {
+ matched.push(cur);
+ break;
+ }
+ }
+ }
+ }
+ return this.pushStack(matched.length > 1 ? jQuery.uniqueSort(matched) : matched);
+ },
+ index: function(elem) {
+ if (!elem) {
+ return this[0] && this[0].parentNode ? this.first().prevAll().length : -1;
+ }
+ if (typeof elem === "string") {
+ return indexOf.call(jQuery(elem), this[0]);
+ }
+ return indexOf.call(this, elem.jquery ? elem[0] : elem);
+ },
+ add: function(selector, context) {
+ return this.pushStack(jQuery.uniqueSort(jQuery.merge(this.get(), jQuery(selector, context))));
+ },
+ addBack: function(selector) {
+ return this.add(selector == null ? this.prevObject : this.prevObject.filter(selector));
+ }
+ });
+ function sibling(cur, dir2) {
+ while ((cur = cur[dir2]) && cur.nodeType !== 1) {
+ }
+ return cur;
+ }
+ jQuery.each({
+ parent: function(elem) {
+ var parent = elem.parentNode;
+ return parent && parent.nodeType !== 11 ? parent : null;
+ },
+ parents: function(elem) {
+ return dir(elem, "parentNode");
+ },
+ parentsUntil: function(elem, _i, until) {
+ return dir(elem, "parentNode", until);
+ },
+ next: function(elem) {
+ return sibling(elem, "nextSibling");
+ },
+ prev: function(elem) {
+ return sibling(elem, "previousSibling");
+ },
+ nextAll: function(elem) {
+ return dir(elem, "nextSibling");
+ },
+ prevAll: function(elem) {
+ return dir(elem, "previousSibling");
+ },
+ nextUntil: function(elem, _i, until) {
+ return dir(elem, "nextSibling", until);
+ },
+ prevUntil: function(elem, _i, until) {
+ return dir(elem, "previousSibling", until);
+ },
+ siblings: function(elem) {
+ return siblings((elem.parentNode || {}).firstChild, elem);
+ },
+ children: function(elem) {
+ return siblings(elem.firstChild);
+ },
+ contents: function(elem) {
+ if (elem.contentDocument != null && getProto(elem.contentDocument)) {
+ return elem.contentDocument;
+ }
+ if (nodeName(elem, "template")) {
+ elem = elem.content || elem;
+ }
+ return jQuery.merge([], elem.childNodes);
+ }
+ }, function(name, fn2) {
+ jQuery.fn[name] = function(until, selector) {
+ var matched = jQuery.map(this, fn2, until);
+ if (name.slice(-5) !== "Until") {
+ selector = until;
+ }
+ if (selector && typeof selector === "string") {
+ matched = jQuery.filter(selector, matched);
+ }
+ if (this.length > 1) {
+ if (!guaranteedUnique[name]) {
+ jQuery.uniqueSort(matched);
+ }
+ if (rparentsprev.test(name)) {
+ matched.reverse();
+ }
+ }
+ return this.pushStack(matched);
+ };
+ });
+ var rnothtmlwhite = /[^\x20\t\r\n\f]+/g;
+ function createOptions(options) {
+ var object = {};
+ jQuery.each(options.match(rnothtmlwhite) || [], function(_, flag) {
+ object[flag] = true;
+ });
+ return object;
+ }
+ jQuery.Callbacks = function(options) {
+ options = typeof options === "string" ? createOptions(options) : jQuery.extend({}, options);
+ var firing, memory, fired, locked, list = [], queue = [], firingIndex = -1, fire = function() {
+ locked = locked || options.once;
+ fired = firing = true;
+ for (; queue.length; firingIndex = -1) {
+ memory = queue.shift();
+ while (++firingIndex < list.length) {
+ if (list[firingIndex].apply(memory[0], memory[1]) === false && options.stopOnFalse) {
+ firingIndex = list.length;
+ memory = false;
+ }
+ }
+ }
+ if (!options.memory) {
+ memory = false;
+ }
+ firing = false;
+ if (locked) {
+ if (memory) {
+ list = [];
+ } else {
+ list = "";
+ }
+ }
+ }, self2 = {
+ add: function() {
+ if (list) {
+ if (memory && !firing) {
+ firingIndex = list.length - 1;
+ queue.push(memory);
+ }
+ (function add(args) {
+ jQuery.each(args, function(_, arg) {
+ if (isFunction(arg)) {
+ if (!options.unique || !self2.has(arg)) {
+ list.push(arg);
+ }
+ } else if (arg && arg.length && toType2(arg) !== "string") {
+ add(arg);
+ }
+ });
+ })(arguments);
+ if (memory && !firing) {
+ fire();
+ }
+ }
+ return this;
+ },
+ remove: function() {
+ jQuery.each(arguments, function(_, arg) {
+ var index;
+ while ((index = jQuery.inArray(arg, list, index)) > -1) {
+ list.splice(index, 1);
+ if (index <= firingIndex) {
+ firingIndex--;
+ }
+ }
+ });
+ return this;
+ },
+ has: function(fn2) {
+ return fn2 ? jQuery.inArray(fn2, list) > -1 : list.length > 0;
+ },
+ empty: function() {
+ if (list) {
+ list = [];
+ }
+ return this;
+ },
+ disable: function() {
+ locked = queue = [];
+ list = memory = "";
+ return this;
+ },
+ disabled: function() {
+ return !list;
+ },
+ lock: function() {
+ locked = queue = [];
+ if (!memory && !firing) {
+ list = memory = "";
+ }
+ return this;
+ },
+ locked: function() {
+ return !!locked;
+ },
+ fireWith: function(context, args) {
+ if (!locked) {
+ args = args || [];
+ args = [context, args.slice ? args.slice() : args];
+ queue.push(args);
+ if (!firing) {
+ fire();
+ }
+ }
+ return this;
+ },
+ fire: function() {
+ self2.fireWith(this, arguments);
+ return this;
+ },
+ fired: function() {
+ return !!fired;
+ }
+ };
+ return self2;
+ };
+ function Identity(v) {
+ return v;
+ }
+ function Thrower(ex) {
+ throw ex;
+ }
+ function adoptValue(value, resolve, reject, noValue) {
+ var method;
+ try {
+ if (value && isFunction(method = value.promise)) {
+ method.call(value).done(resolve).fail(reject);
+ } else if (value && isFunction(method = value.then)) {
+ method.call(value, resolve, reject);
+ } else {
+ resolve.apply(void 0, [value].slice(noValue));
+ }
+ } catch (value2) {
+ reject.apply(void 0, [value2]);
+ }
+ }
+ jQuery.extend({
+ Deferred: function(func) {
+ var tuples = [
+ [
+ "notify",
+ "progress",
+ jQuery.Callbacks("memory"),
+ jQuery.Callbacks("memory"),
+ 2
+ ],
+ [
+ "resolve",
+ "done",
+ jQuery.Callbacks("once memory"),
+ jQuery.Callbacks("once memory"),
+ 0,
+ "resolved"
+ ],
+ [
+ "reject",
+ "fail",
+ jQuery.Callbacks("once memory"),
+ jQuery.Callbacks("once memory"),
+ 1,
+ "rejected"
+ ]
+ ], state = "pending", promise = {
+ state: function() {
+ return state;
+ },
+ always: function() {
+ deferred.done(arguments).fail(arguments);
+ return this;
+ },
+ "catch": function(fn2) {
+ return promise.then(null, fn2);
+ },
+ pipe: function() {
+ var fns = arguments;
+ return jQuery.Deferred(function(newDefer) {
+ jQuery.each(tuples, function(_i, tuple) {
+ var fn2 = isFunction(fns[tuple[4]]) && fns[tuple[4]];
+ deferred[tuple[1]](function() {
+ var returned = fn2 && fn2.apply(this, arguments);
+ if (returned && isFunction(returned.promise)) {
+ returned.promise().progress(newDefer.notify).done(newDefer.resolve).fail(newDefer.reject);
+ } else {
+ newDefer[tuple[0] + "With"](this, fn2 ? [returned] : arguments);
+ }
+ });
+ });
+ fns = null;
+ }).promise();
+ },
+ then: function(onFulfilled, onRejected, onProgress) {
+ var maxDepth = 0;
+ function resolve(depth, deferred2, handler, special) {
+ return function() {
+ var that = this, args = arguments, mightThrow = function() {
+ var returned, then;
+ if (depth < maxDepth) {
+ return;
+ }
+ returned = handler.apply(that, args);
+ if (returned === deferred2.promise()) {
+ throw new TypeError("Thenable self-resolution");
+ }
+ then = returned && (typeof returned === "object" || typeof returned === "function") && returned.then;
+ if (isFunction(then)) {
+ if (special) {
+ then.call(returned, resolve(maxDepth, deferred2, Identity, special), resolve(maxDepth, deferred2, Thrower, special));
+ } else {
+ maxDepth++;
+ then.call(returned, resolve(maxDepth, deferred2, Identity, special), resolve(maxDepth, deferred2, Thrower, special), resolve(maxDepth, deferred2, Identity, deferred2.notifyWith));
+ }
+ } else {
+ if (handler !== Identity) {
+ that = void 0;
+ args = [returned];
+ }
+ (special || deferred2.resolveWith)(that, args);
+ }
+ }, process2 = special ? mightThrow : function() {
+ try {
+ mightThrow();
+ } catch (e) {
+ if (jQuery.Deferred.exceptionHook) {
+ jQuery.Deferred.exceptionHook(e, process2.stackTrace);
+ }
+ if (depth + 1 >= maxDepth) {
+ if (handler !== Thrower) {
+ that = void 0;
+ args = [e];
+ }
+ deferred2.rejectWith(that, args);
+ }
+ }
+ };
+ if (depth) {
+ process2();
+ } else {
+ if (jQuery.Deferred.getStackHook) {
+ process2.stackTrace = jQuery.Deferred.getStackHook();
+ }
+ window2.setTimeout(process2);
+ }
+ };
+ }
+ return jQuery.Deferred(function(newDefer) {
+ tuples[0][3].add(resolve(0, newDefer, isFunction(onProgress) ? onProgress : Identity, newDefer.notifyWith));
+ tuples[1][3].add(resolve(0, newDefer, isFunction(onFulfilled) ? onFulfilled : Identity));
+ tuples[2][3].add(resolve(0, newDefer, isFunction(onRejected) ? onRejected : Thrower));
+ }).promise();
+ },
+ promise: function(obj) {
+ return obj != null ? jQuery.extend(obj, promise) : promise;
+ }
+ }, deferred = {};
+ jQuery.each(tuples, function(i, tuple) {
+ var list = tuple[2], stateString = tuple[5];
+ promise[tuple[1]] = list.add;
+ if (stateString) {
+ list.add(function() {
+ state = stateString;
+ }, tuples[3 - i][2].disable, tuples[3 - i][3].disable, tuples[0][2].lock, tuples[0][3].lock);
+ }
+ list.add(tuple[3].fire);
+ deferred[tuple[0]] = function() {
+ deferred[tuple[0] + "With"](this === deferred ? void 0 : this, arguments);
+ return this;
+ };
+ deferred[tuple[0] + "With"] = list.fireWith;
+ });
+ promise.promise(deferred);
+ if (func) {
+ func.call(deferred, deferred);
+ }
+ return deferred;
+ },
+ when: function(singleValue) {
+ var remaining = arguments.length, i = remaining, resolveContexts = Array(i), resolveValues = slice.call(arguments), primary = jQuery.Deferred(), updateFunc = function(i2) {
+ return function(value) {
+ resolveContexts[i2] = this;
+ resolveValues[i2] = arguments.length > 1 ? slice.call(arguments) : value;
+ if (!--remaining) {
+ primary.resolveWith(resolveContexts, resolveValues);
+ }
+ };
+ };
+ if (remaining <= 1) {
+ adoptValue(singleValue, primary.done(updateFunc(i)).resolve, primary.reject, !remaining);
+ if (primary.state() === "pending" || isFunction(resolveValues[i] && resolveValues[i].then)) {
+ return primary.then();
+ }
+ }
+ while (i--) {
+ adoptValue(resolveValues[i], updateFunc(i), primary.reject);
+ }
+ return primary.promise();
+ }
+ });
+ var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
+ jQuery.Deferred.exceptionHook = function(error, stack) {
+ if (window2.console && window2.console.warn && error && rerrorNames.test(error.name)) {
+ window2.console.warn("jQuery.Deferred exception: " + error.message, error.stack, stack);
+ }
+ };
+ jQuery.readyException = function(error) {
+ window2.setTimeout(function() {
+ throw error;
+ });
+ };
+ var readyList = jQuery.Deferred();
+ jQuery.fn.ready = function(fn2) {
+ readyList.then(fn2).catch(function(error) {
+ jQuery.readyException(error);
+ });
+ return this;
+ };
+ jQuery.extend({
+ isReady: false,
+ readyWait: 1,
+ ready: function(wait) {
+ if (wait === true ? --jQuery.readyWait : jQuery.isReady) {
+ return;
+ }
+ jQuery.isReady = true;
+ if (wait !== true && --jQuery.readyWait > 0) {
+ return;
+ }
+ readyList.resolveWith(document2, [jQuery]);
+ }
+ });
+ jQuery.ready.then = readyList.then;
+ function completed() {
+ document2.removeEventListener("DOMContentLoaded", completed);
+ window2.removeEventListener("load", completed);
+ jQuery.ready();
+ }
+ if (document2.readyState === "complete" || document2.readyState !== "loading" && !document2.documentElement.doScroll) {
+ window2.setTimeout(jQuery.ready);
+ } else {
+ document2.addEventListener("DOMContentLoaded", completed);
+ window2.addEventListener("load", completed);
+ }
+ var access = function(elems, fn2, key, value, chainable, emptyGet, raw) {
+ var i = 0, len = elems.length, bulk = key == null;
+ if (toType2(key) === "object") {
+ chainable = true;
+ for (i in key) {
+ access(elems, fn2, i, key[i], true, emptyGet, raw);
+ }
+ } else if (value !== void 0) {
+ chainable = true;
+ if (!isFunction(value)) {
+ raw = true;
+ }
+ if (bulk) {
+ if (raw) {
+ fn2.call(elems, value);
+ fn2 = null;
+ } else {
+ bulk = fn2;
+ fn2 = function(elem, _key, value2) {
+ return bulk.call(jQuery(elem), value2);
+ };
+ }
+ }
+ if (fn2) {
+ for (; i < len; i++) {
+ fn2(elems[i], key, raw ? value : value.call(elems[i], i, fn2(elems[i], key)));
+ }
+ }
+ }
+ if (chainable) {
+ return elems;
+ }
+ if (bulk) {
+ return fn2.call(elems);
+ }
+ return len ? fn2(elems[0], key) : emptyGet;
+ };
+ var rmsPrefix = /^-ms-/, rdashAlpha = /-([a-z])/g;
+ function fcamelCase(_all, letter) {
+ return letter.toUpperCase();
+ }
+ function camelCase(string) {
+ return string.replace(rmsPrefix, "ms-").replace(rdashAlpha, fcamelCase);
+ }
+ var acceptData = function(owner) {
+ return owner.nodeType === 1 || owner.nodeType === 9 || !+owner.nodeType;
+ };
+ function Data2() {
+ this.expando = jQuery.expando + Data2.uid++;
+ }
+ Data2.uid = 1;
+ Data2.prototype = {
+ cache: function(owner) {
+ var value = owner[this.expando];
+ if (!value) {
+ value = {};
+ if (acceptData(owner)) {
+ if (owner.nodeType) {
+ owner[this.expando] = value;
+ } else {
+ Object.defineProperty(owner, this.expando, {
+ value,
+ configurable: true
+ });
+ }
+ }
+ }
+ return value;
+ },
+ set: function(owner, data, value) {
+ var prop, cache = this.cache(owner);
+ if (typeof data === "string") {
+ cache[camelCase(data)] = value;
+ } else {
+ for (prop in data) {
+ cache[camelCase(prop)] = data[prop];
+ }
+ }
+ return cache;
+ },
+ get: function(owner, key) {
+ return key === void 0 ? this.cache(owner) : owner[this.expando] && owner[this.expando][camelCase(key)];
+ },
+ access: function(owner, key, value) {
+ if (key === void 0 || key && typeof key === "string" && value === void 0) {
+ return this.get(owner, key);
+ }
+ this.set(owner, key, value);
+ return value !== void 0 ? value : key;
+ },
+ remove: function(owner, key) {
+ var i, cache = owner[this.expando];
+ if (cache === void 0) {
+ return;
+ }
+ if (key !== void 0) {
+ if (Array.isArray(key)) {
+ key = key.map(camelCase);
+ } else {
+ key = camelCase(key);
+ key = key in cache ? [key] : key.match(rnothtmlwhite) || [];
+ }
+ i = key.length;
+ while (i--) {
+ delete cache[key[i]];
+ }
+ }
+ if (key === void 0 || jQuery.isEmptyObject(cache)) {
+ if (owner.nodeType) {
+ owner[this.expando] = void 0;
+ } else {
+ delete owner[this.expando];
+ }
+ }
+ },
+ hasData: function(owner) {
+ var cache = owner[this.expando];
+ return cache !== void 0 && !jQuery.isEmptyObject(cache);
+ }
+ };
+ var dataPriv = new Data2();
+ var dataUser = new Data2();
+ var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, rmultiDash = /[A-Z]/g;
+ function getData(data) {
+ if (data === "true") {
+ return true;
+ }
+ if (data === "false") {
+ return false;
+ }
+ if (data === "null") {
+ return null;
+ }
+ if (data === +data + "") {
+ return +data;
+ }
+ if (rbrace.test(data)) {
+ return JSON.parse(data);
+ }
+ return data;
+ }
+ function dataAttr(elem, key, data) {
+ var name;
+ if (data === void 0 && elem.nodeType === 1) {
+ name = "data-" + key.replace(rmultiDash, "-$&").toLowerCase();
+ data = elem.getAttribute(name);
+ if (typeof data === "string") {
+ try {
+ data = getData(data);
+ } catch (e) {
+ }
+ dataUser.set(elem, key, data);
+ } else {
+ data = void 0;
+ }
+ }
+ return data;
+ }
+ jQuery.extend({
+ hasData: function(elem) {
+ return dataUser.hasData(elem) || dataPriv.hasData(elem);
+ },
+ data: function(elem, name, data) {
+ return dataUser.access(elem, name, data);
+ },
+ removeData: function(elem, name) {
+ dataUser.remove(elem, name);
+ },
+ _data: function(elem, name, data) {
+ return dataPriv.access(elem, name, data);
+ },
+ _removeData: function(elem, name) {
+ dataPriv.remove(elem, name);
+ }
+ });
+ jQuery.fn.extend({
+ data: function(key, value) {
+ var i, name, data, elem = this[0], attrs = elem && elem.attributes;
+ if (key === void 0) {
+ if (this.length) {
+ data = dataUser.get(elem);
+ if (elem.nodeType === 1 && !dataPriv.get(elem, "hasDataAttrs")) {
+ i = attrs.length;
+ while (i--) {
+ if (attrs[i]) {
+ name = attrs[i].name;
+ if (name.indexOf("data-") === 0) {
+ name = camelCase(name.slice(5));
+ dataAttr(elem, name, data[name]);
+ }
+ }
+ }
+ dataPriv.set(elem, "hasDataAttrs", true);
+ }
+ }
+ return data;
+ }
+ if (typeof key === "object") {
+ return this.each(function() {
+ dataUser.set(this, key);
+ });
+ }
+ return access(this, function(value2) {
+ var data2;
+ if (elem && value2 === void 0) {
+ data2 = dataUser.get(elem, key);
+ if (data2 !== void 0) {
+ return data2;
+ }
+ data2 = dataAttr(elem, key);
+ if (data2 !== void 0) {
+ return data2;
+ }
+ return;
+ }
+ this.each(function() {
+ dataUser.set(this, key, value2);
+ });
+ }, null, value, arguments.length > 1, null, true);
+ },
+ removeData: function(key) {
+ return this.each(function() {
+ dataUser.remove(this, key);
+ });
+ }
+ });
+ jQuery.extend({
+ queue: function(elem, type, data) {
+ var queue;
+ if (elem) {
+ type = (type || "fx") + "queue";
+ queue = dataPriv.get(elem, type);
+ if (data) {
+ if (!queue || Array.isArray(data)) {
+ queue = dataPriv.access(elem, type, jQuery.makeArray(data));
+ } else {
+ queue.push(data);
+ }
+ }
+ return queue || [];
+ }
+ },
+ dequeue: function(elem, type) {
+ type = type || "fx";
+ var queue = jQuery.queue(elem, type), startLength = queue.length, fn2 = queue.shift(), hooks = jQuery._queueHooks(elem, type), next = function() {
+ jQuery.dequeue(elem, type);
+ };
+ if (fn2 === "inprogress") {
+ fn2 = queue.shift();
+ startLength--;
+ }
+ if (fn2) {
+ if (type === "fx") {
+ queue.unshift("inprogress");
+ }
+ delete hooks.stop;
+ fn2.call(elem, next, hooks);
+ }
+ if (!startLength && hooks) {
+ hooks.empty.fire();
+ }
+ },
+ _queueHooks: function(elem, type) {
+ var key = type + "queueHooks";
+ return dataPriv.get(elem, key) || dataPriv.access(elem, key, {
+ empty: jQuery.Callbacks("once memory").add(function() {
+ dataPriv.remove(elem, [type + "queue", key]);
+ })
+ });
+ }
+ });
+ jQuery.fn.extend({
+ queue: function(type, data) {
+ var setter = 2;
+ if (typeof type !== "string") {
+ data = type;
+ type = "fx";
+ setter--;
+ }
+ if (arguments.length < setter) {
+ return jQuery.queue(this[0], type);
+ }
+ return data === void 0 ? this : this.each(function() {
+ var queue = jQuery.queue(this, type, data);
+ jQuery._queueHooks(this, type);
+ if (type === "fx" && queue[0] !== "inprogress") {
+ jQuery.dequeue(this, type);
+ }
+ });
+ },
+ dequeue: function(type) {
+ return this.each(function() {
+ jQuery.dequeue(this, type);
+ });
+ },
+ clearQueue: function(type) {
+ return this.queue(type || "fx", []);
+ },
+ promise: function(type, obj) {
+ var tmp, count = 1, defer = jQuery.Deferred(), elements = this, i = this.length, resolve = function() {
+ if (!--count) {
+ defer.resolveWith(elements, [elements]);
+ }
+ };
+ if (typeof type !== "string") {
+ obj = type;
+ type = void 0;
+ }
+ type = type || "fx";
+ while (i--) {
+ tmp = dataPriv.get(elements[i], type + "queueHooks");
+ if (tmp && tmp.empty) {
+ count++;
+ tmp.empty.add(resolve);
+ }
+ }
+ resolve();
+ return defer.promise(obj);
+ }
+ });
+ var pnum = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source;
+ var rcssNum = new RegExp("^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i");
+ var cssExpand = ["Top", "Right", "Bottom", "Left"];
+ var documentElement = document2.documentElement;
+ var isAttached = function(elem) {
+ return jQuery.contains(elem.ownerDocument, elem);
+ }, composed = { composed: true };
+ if (documentElement.getRootNode) {
+ isAttached = function(elem) {
+ return jQuery.contains(elem.ownerDocument, elem) || elem.getRootNode(composed) === elem.ownerDocument;
+ };
+ }
+ var isHiddenWithinTree = function(elem, el) {
+ elem = el || elem;
+ return elem.style.display === "none" || elem.style.display === "" && isAttached(elem) && jQuery.css(elem, "display") === "none";
+ };
+ function adjustCSS(elem, prop, valueParts, tween) {
+ var adjusted, scale, maxIterations = 20, currentValue = tween ? function() {
+ return tween.cur();
+ } : function() {
+ return jQuery.css(elem, prop, "");
+ }, initial = currentValue(), unit = valueParts && valueParts[3] || (jQuery.cssNumber[prop] ? "" : "px"), initialInUnit = elem.nodeType && (jQuery.cssNumber[prop] || unit !== "px" && +initial) && rcssNum.exec(jQuery.css(elem, prop));
+ if (initialInUnit && initialInUnit[3] !== unit) {
+ initial = initial / 2;
+ unit = unit || initialInUnit[3];
+ initialInUnit = +initial || 1;
+ while (maxIterations--) {
+ jQuery.style(elem, prop, initialInUnit + unit);
+ if ((1 - scale) * (1 - (scale = currentValue() / initial || 0.5)) <= 0) {
+ maxIterations = 0;
+ }
+ initialInUnit = initialInUnit / scale;
+ }
+ initialInUnit = initialInUnit * 2;
+ jQuery.style(elem, prop, initialInUnit + unit);
+ valueParts = valueParts || [];
+ }
+ if (valueParts) {
+ initialInUnit = +initialInUnit || +initial || 0;
+ adjusted = valueParts[1] ? initialInUnit + (valueParts[1] + 1) * valueParts[2] : +valueParts[2];
+ if (tween) {
+ tween.unit = unit;
+ tween.start = initialInUnit;
+ tween.end = adjusted;
+ }
+ }
+ return adjusted;
+ }
+ var defaultDisplayMap = {};
+ function getDefaultDisplay(elem) {
+ var temp, doc2 = elem.ownerDocument, nodeName2 = elem.nodeName, display = defaultDisplayMap[nodeName2];
+ if (display) {
+ return display;
+ }
+ temp = doc2.body.appendChild(doc2.createElement(nodeName2));
+ display = jQuery.css(temp, "display");
+ temp.parentNode.removeChild(temp);
+ if (display === "none") {
+ display = "block";
+ }
+ defaultDisplayMap[nodeName2] = display;
+ return display;
+ }
+ function showHide(elements, show) {
+ var display, elem, values = [], index = 0, length = elements.length;
+ for (; index < length; index++) {
+ elem = elements[index];
+ if (!elem.style) {
+ continue;
+ }
+ display = elem.style.display;
+ if (show) {
+ if (display === "none") {
+ values[index] = dataPriv.get(elem, "display") || null;
+ if (!values[index]) {
+ elem.style.display = "";
+ }
+ }
+ if (elem.style.display === "" && isHiddenWithinTree(elem)) {
+ values[index] = getDefaultDisplay(elem);
+ }
+ } else {
+ if (display !== "none") {
+ values[index] = "none";
+ dataPriv.set(elem, "display", display);
+ }
+ }
+ }
+ for (index = 0; index < length; index++) {
+ if (values[index] != null) {
+ elements[index].style.display = values[index];
+ }
+ }
+ return elements;
+ }
+ jQuery.fn.extend({
+ show: function() {
+ return showHide(this, true);
+ },
+ hide: function() {
+ return showHide(this);
+ },
+ toggle: function(state) {
+ if (typeof state === "boolean") {
+ return state ? this.show() : this.hide();
+ }
+ return this.each(function() {
+ if (isHiddenWithinTree(this)) {
+ jQuery(this).show();
+ } else {
+ jQuery(this).hide();
+ }
+ });
+ }
+ });
+ var rcheckableType = /^(?:checkbox|radio)$/i;
+ var rtagName = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i;
+ var rscriptType = /^$|^module$|\/(?:java|ecma)script/i;
+ (function() {
+ var fragment = document2.createDocumentFragment(), div = fragment.appendChild(document2.createElement("div")), input = document2.createElement("input");
+ input.setAttribute("type", "radio");
+ input.setAttribute("checked", "checked");
+ input.setAttribute("name", "t");
+ div.appendChild(input);
+ support.checkClone = div.cloneNode(true).cloneNode(true).lastChild.checked;
+ div.innerHTML = "<textarea>x</textarea>";
+ support.noCloneChecked = !!div.cloneNode(true).lastChild.defaultValue;
+ div.innerHTML = "<option></option>";
+ support.option = !!div.lastChild;
+ })();
+ var wrapMap = {
+ 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, "", ""]
+ };
+ wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
+ wrapMap.th = wrapMap.td;
+ if (!support.option) {
+ wrapMap.optgroup = wrapMap.option = [1, "<select multiple='multiple'>", "</select>"];
+ }
+ function getAll(context, tag) {
+ var ret;
+ if (typeof context.getElementsByTagName !== "undefined") {
+ ret = context.getElementsByTagName(tag || "*");
+ } else if (typeof context.querySelectorAll !== "undefined") {
+ ret = context.querySelectorAll(tag || "*");
+ } else {
+ ret = [];
+ }
+ if (tag === void 0 || tag && nodeName(context, tag)) {
+ return jQuery.merge([context], ret);
+ }
+ return ret;
+ }
+ function setGlobalEval(elems, refElements) {
+ var i = 0, l = elems.length;
+ for (; i < l; i++) {
+ dataPriv.set(elems[i], "globalEval", !refElements || dataPriv.get(refElements[i], "globalEval"));
+ }
+ }
+ var rhtml = /<|&#?\w+;/;
+ function buildFragment(elems, context, scripts, selection, ignored) {
+ var elem, tmp, tag, wrap, attached, j, fragment = context.createDocumentFragment(), nodes = [], i = 0, l = elems.length;
+ for (; i < l; i++) {
+ elem = elems[i];
+ if (elem || elem === 0) {
+ if (toType2(elem) === "object") {
+ jQuery.merge(nodes, elem.nodeType ? [elem] : elem);
+ } else if (!rhtml.test(elem)) {
+ nodes.push(context.createTextNode(elem));
+ } else {
+ tmp = tmp || fragment.appendChild(context.createElement("div"));
+ tag = (rtagName.exec(elem) || ["", ""])[1].toLowerCase();
+ wrap = wrapMap[tag] || wrapMap._default;
+ tmp.innerHTML = wrap[1] + jQuery.htmlPrefilter(elem) + wrap[2];
+ j = wrap[0];
+ while (j--) {
+ tmp = tmp.lastChild;
+ }
+ jQuery.merge(nodes, tmp.childNodes);
+ tmp = fragment.firstChild;
+ tmp.textContent = "";
+ }
+ }
+ }
+ fragment.textContent = "";
+ i = 0;
+ while (elem = nodes[i++]) {
+ if (selection && jQuery.inArray(elem, selection) > -1) {
+ if (ignored) {
+ ignored.push(elem);
+ }
+ continue;
+ }
+ attached = isAttached(elem);
+ tmp = getAll(fragment.appendChild(elem), "script");
+ if (attached) {
+ setGlobalEval(tmp);
+ }
+ if (scripts) {
+ j = 0;
+ while (elem = tmp[j++]) {
+ if (rscriptType.test(elem.type || "")) {
+ scripts.push(elem);
+ }
+ }
+ }
+ }
+ return fragment;
+ }
+ var rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
+ function returnTrue() {
+ return true;
+ }
+ function returnFalse() {
+ return false;
+ }
+ function expectSync(elem, type) {
+ return elem === safeActiveElement() === (type === "focus");
+ }
+ function safeActiveElement() {
+ try {
+ return document2.activeElement;
+ } catch (err) {
+ }
+ }
+ function on(elem, types, selector, data, fn2, one) {
+ var origFn, type;
+ if (typeof types === "object") {
+ if (typeof selector !== "string") {
+ data = data || selector;
+ selector = void 0;
+ }
+ for (type in types) {
+ on(elem, type, selector, data, types[type], one);
+ }
+ return elem;
+ }
+ if (data == null && fn2 == null) {
+ fn2 = selector;
+ data = selector = void 0;
+ } else if (fn2 == null) {
+ if (typeof selector === "string") {
+ fn2 = data;
+ data = void 0;
+ } else {
+ fn2 = data;
+ data = selector;
+ selector = void 0;
+ }
+ }
+ if (fn2 === false) {
+ fn2 = returnFalse;
+ } else if (!fn2) {
+ return elem;
+ }
+ if (one === 1) {
+ origFn = fn2;
+ fn2 = function(event) {
+ jQuery().off(event);
+ return origFn.apply(this, arguments);
+ };
+ fn2.guid = origFn.guid || (origFn.guid = jQuery.guid++);
+ }
+ return elem.each(function() {
+ jQuery.event.add(this, types, fn2, data, selector);
+ });
+ }
+ jQuery.event = {
+ global: {},
+ add: function(elem, types, handler, data, selector) {
+ var handleObjIn, eventHandle, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.get(elem);
+ if (!acceptData(elem)) {
+ return;
+ }
+ if (handler.handler) {
+ handleObjIn = handler;
+ handler = handleObjIn.handler;
+ selector = handleObjIn.selector;
+ }
+ if (selector) {
+ jQuery.find.matchesSelector(documentElement, selector);
+ }
+ if (!handler.guid) {
+ handler.guid = jQuery.guid++;
+ }
+ if (!(events = elemData.events)) {
+ events = elemData.events = Object.create(null);
+ }
+ if (!(eventHandle = elemData.handle)) {
+ eventHandle = elemData.handle = function(e) {
+ return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? jQuery.event.dispatch.apply(elem, arguments) : void 0;
+ };
+ }
+ types = (types || "").match(rnothtmlwhite) || [""];
+ t = types.length;
+ while (t--) {
+ tmp = rtypenamespace.exec(types[t]) || [];
+ type = origType = tmp[1];
+ namespaces = (tmp[2] || "").split(".").sort();
+ if (!type) {
+ continue;
+ }
+ special = jQuery.event.special[type] || {};
+ type = (selector ? special.delegateType : special.bindType) || type;
+ special = jQuery.event.special[type] || {};
+ handleObj = jQuery.extend({
+ type,
+ origType,
+ data,
+ handler,
+ guid: handler.guid,
+ selector,
+ needsContext: selector && jQuery.expr.match.needsContext.test(selector),
+ namespace: namespaces.join(".")
+ }, handleObjIn);
+ if (!(handlers = events[type])) {
+ handlers = events[type] = [];
+ handlers.delegateCount = 0;
+ if (!special.setup || special.setup.call(elem, data, namespaces, eventHandle) === false) {
+ if (elem.addEventListener) {
+ elem.addEventListener(type, eventHandle);
+ }
+ }
+ }
+ if (special.add) {
+ special.add.call(elem, handleObj);
+ if (!handleObj.handler.guid) {
+ handleObj.handler.guid = handler.guid;
+ }
+ }
+ if (selector) {
+ handlers.splice(handlers.delegateCount++, 0, handleObj);
+ } else {
+ handlers.push(handleObj);
+ }
+ jQuery.event.global[type] = true;
+ }
+ },
+ remove: function(elem, types, handler, selector, mappedTypes) {
+ var j, origCount, tmp, events, t, handleObj, special, handlers, type, namespaces, origType, elemData = dataPriv.hasData(elem) && dataPriv.get(elem);
+ if (!elemData || !(events = elemData.events)) {
+ return;
+ }
+ types = (types || "").match(rnothtmlwhite) || [""];
+ t = types.length;
+ while (t--) {
+ tmp = rtypenamespace.exec(types[t]) || [];
+ type = origType = tmp[1];
+ namespaces = (tmp[2] || "").split(".").sort();
+ if (!type) {
+ for (type in events) {
+ jQuery.event.remove(elem, type + types[t], handler, selector, true);
+ }
+ continue;
+ }
+ special = jQuery.event.special[type] || {};
+ type = (selector ? special.delegateType : special.bindType) || type;
+ handlers = events[type] || [];
+ tmp = tmp[2] && new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)");
+ origCount = j = handlers.length;
+ while (j--) {
+ handleObj = handlers[j];
+ if ((mappedTypes || origType === handleObj.origType) && (!handler || handler.guid === handleObj.guid) && (!tmp || tmp.test(handleObj.namespace)) && (!selector || selector === handleObj.selector || selector === "**" && handleObj.selector)) {
+ handlers.splice(j, 1);
+ if (handleObj.selector) {
+ handlers.delegateCount--;
+ }
+ if (special.remove) {
+ special.remove.call(elem, handleObj);
+ }
+ }
+ }
+ if (origCount && !handlers.length) {
+ if (!special.teardown || special.teardown.call(elem, namespaces, elemData.handle) === false) {
+ jQuery.removeEvent(elem, type, elemData.handle);
+ }
+ delete events[type];
+ }
+ }
+ if (jQuery.isEmptyObject(events)) {
+ dataPriv.remove(elem, "handle events");
+ }
+ },
+ dispatch: function(nativeEvent) {
+ var i, j, ret, matched, handleObj, handlerQueue, args = new Array(arguments.length), event = jQuery.event.fix(nativeEvent), handlers = (dataPriv.get(this, "events") || Object.create(null))[event.type] || [], special = jQuery.event.special[event.type] || {};
+ args[0] = event;
+ for (i = 1; i < arguments.length; i++) {
+ args[i] = arguments[i];
+ }
+ event.delegateTarget = this;
+ if (special.preDispatch && special.preDispatch.call(this, event) === false) {
+ return;
+ }
+ handlerQueue = jQuery.event.handlers.call(this, event, handlers);
+ i = 0;
+ while ((matched = handlerQueue[i++]) && !event.isPropagationStopped()) {
+ event.currentTarget = matched.elem;
+ j = 0;
+ while ((handleObj = matched.handlers[j++]) && !event.isImmediatePropagationStopped()) {
+ if (!event.rnamespace || handleObj.namespace === false || event.rnamespace.test(handleObj.namespace)) {
+ event.handleObj = handleObj;
+ event.data = handleObj.data;
+ ret = ((jQuery.event.special[handleObj.origType] || {}).handle || handleObj.handler).apply(matched.elem, args);
+ if (ret !== void 0) {
+ if ((event.result = ret) === false) {
+ event.preventDefault();
+ event.stopPropagation();
+ }
+ }
+ }
+ }
+ }
+ if (special.postDispatch) {
+ special.postDispatch.call(this, event);
+ }
+ return event.result;
+ },
+ handlers: function(event, handlers) {
+ var i, handleObj, sel, matchedHandlers, matchedSelectors, handlerQueue = [], delegateCount = handlers.delegateCount, cur = event.target;
+ if (delegateCount && cur.nodeType && !(event.type === "click" && event.button >= 1)) {
+ for (; cur !== this; cur = cur.parentNode || this) {
+ if (cur.nodeType === 1 && !(event.type === "click" && cur.disabled === true)) {
+ matchedHandlers = [];
+ matchedSelectors = {};
+ for (i = 0; i < delegateCount; i++) {
+ handleObj = handlers[i];
+ sel = handleObj.selector + " ";
+ if (matchedSelectors[sel] === void 0) {
+ matchedSelectors[sel] = handleObj.needsContext ? jQuery(sel, this).index(cur) > -1 : jQuery.find(sel, this, null, [cur]).length;
+ }
+ if (matchedSelectors[sel]) {
+ matchedHandlers.push(handleObj);
+ }
+ }
+ if (matchedHandlers.length) {
+ handlerQueue.push({ elem: cur, handlers: matchedHandlers });
+ }
+ }
+ }
+ }
+ cur = this;
+ if (delegateCount < handlers.length) {
+ handlerQueue.push({ elem: cur, handlers: handlers.slice(delegateCount) });
+ }
+ return handlerQueue;
+ },
+ addProp: function(name, hook) {
+ Object.defineProperty(jQuery.Event.prototype, name, {
+ enumerable: true,
+ configurable: true,
+ get: isFunction(hook) ? function() {
+ if (this.originalEvent) {
+ return hook(this.originalEvent);
+ }
+ } : function() {
+ if (this.originalEvent) {
+ return this.originalEvent[name];
+ }
+ },
+ set: function(value) {
+ Object.defineProperty(this, name, {
+ enumerable: true,
+ configurable: true,
+ writable: true,
+ value
+ });
+ }
+ });
+ },
+ fix: function(originalEvent) {
+ return originalEvent[jQuery.expando] ? originalEvent : new jQuery.Event(originalEvent);
+ },
+ special: {
+ load: {
+ noBubble: true
+ },
+ click: {
+ setup: function(data) {
+ var el = this || data;
+ if (rcheckableType.test(el.type) && el.click && nodeName(el, "input")) {
+ leverageNative(el, "click", returnTrue);
+ }
+ return false;
+ },
+ trigger: function(data) {
+ var el = this || data;
+ if (rcheckableType.test(el.type) && el.click && nodeName(el, "input")) {
+ leverageNative(el, "click");
+ }
+ return true;
+ },
+ _default: function(event) {
+ var target = event.target;
+ return rcheckableType.test(target.type) && target.click && nodeName(target, "input") && dataPriv.get(target, "click") || nodeName(target, "a");
+ }
+ },
+ beforeunload: {
+ postDispatch: function(event) {
+ if (event.result !== void 0 && event.originalEvent) {
+ event.originalEvent.returnValue = event.result;
+ }
+ }
+ }
+ }
+ };
+ function leverageNative(el, type, expectSync2) {
+ if (!expectSync2) {
+ if (dataPriv.get(el, type) === void 0) {
+ jQuery.event.add(el, type, returnTrue);
+ }
+ return;
+ }
+ dataPriv.set(el, type, false);
+ jQuery.event.add(el, type, {
+ namespace: false,
+ handler: function(event) {
+ var notAsync, result, saved = dataPriv.get(this, type);
+ if (event.isTrigger & 1 && this[type]) {
+ if (!saved.length) {
+ saved = slice.call(arguments);
+ dataPriv.set(this, type, saved);
+ notAsync = expectSync2(this, type);
+ this[type]();
+ result = dataPriv.get(this, type);
+ if (saved !== result || notAsync) {
+ dataPriv.set(this, type, false);
+ } else {
+ result = {};
+ }
+ if (saved !== result) {
+ event.stopImmediatePropagation();
+ event.preventDefault();
+ return result && result.value;
+ }
+ } else if ((jQuery.event.special[type] || {}).delegateType) {
+ event.stopPropagation();
+ }
+ } else if (saved.length) {
+ dataPriv.set(this, type, {
+ value: jQuery.event.trigger(jQuery.extend(saved[0], jQuery.Event.prototype), saved.slice(1), this)
+ });
+ event.stopImmediatePropagation();
+ }
+ }
+ });
+ }
+ jQuery.removeEvent = function(elem, type, handle) {
+ if (elem.removeEventListener) {
+ elem.removeEventListener(type, handle);
+ }
+ };
+ jQuery.Event = function(src, props) {
+ if (!(this instanceof jQuery.Event)) {
+ return new jQuery.Event(src, props);
+ }
+ if (src && src.type) {
+ this.originalEvent = src;
+ this.type = src.type;
+ this.isDefaultPrevented = src.defaultPrevented || src.defaultPrevented === void 0 && src.returnValue === false ? returnTrue : returnFalse;
+ this.target = src.target && src.target.nodeType === 3 ? src.target.parentNode : src.target;
+ this.currentTarget = src.currentTarget;
+ this.relatedTarget = src.relatedTarget;
+ } else {
+ this.type = src;
+ }
+ if (props) {
+ jQuery.extend(this, props);
+ }
+ this.timeStamp = src && src.timeStamp || Date.now();
+ this[jQuery.expando] = true;
+ };
+ jQuery.Event.prototype = {
+ constructor: jQuery.Event,
+ isDefaultPrevented: returnFalse,
+ isPropagationStopped: returnFalse,
+ isImmediatePropagationStopped: returnFalse,
+ isSimulated: false,
+ preventDefault: function() {
+ var e = this.originalEvent;
+ this.isDefaultPrevented = returnTrue;
+ if (e && !this.isSimulated) {
+ e.preventDefault();
+ }
+ },
+ stopPropagation: function() {
+ var e = this.originalEvent;
+ this.isPropagationStopped = returnTrue;
+ if (e && !this.isSimulated) {
+ e.stopPropagation();
+ }
+ },
+ stopImmediatePropagation: function() {
+ var e = this.originalEvent;
+ this.isImmediatePropagationStopped = returnTrue;
+ if (e && !this.isSimulated) {
+ e.stopImmediatePropagation();
+ }
+ this.stopPropagation();
+ }
+ };
+ jQuery.each({
+ altKey: true,
+ bubbles: true,
+ cancelable: true,
+ changedTouches: true,
+ ctrlKey: true,
+ detail: true,
+ eventPhase: true,
+ metaKey: true,
+ pageX: true,
+ pageY: true,
+ shiftKey: true,
+ view: true,
+ "char": true,
+ code: true,
+ charCode: true,
+ key: true,
+ keyCode: true,
+ button: true,
+ buttons: true,
+ clientX: true,
+ clientY: true,
+ offsetX: true,
+ offsetY: true,
+ pointerId: true,
+ pointerType: true,
+ screenX: true,
+ screenY: true,
+ targetTouches: true,
+ toElement: true,
+ touches: true,
+ which: true
+ }, jQuery.event.addProp);
+ jQuery.each({ focus: "focusin", blur: "focusout" }, function(type, delegateType) {
+ jQuery.event.special[type] = {
+ setup: function() {
+ leverageNative(this, type, expectSync);
+ return false;
+ },
+ trigger: function() {
+ leverageNative(this, type);
+ return true;
+ },
+ _default: function() {
+ return true;
+ },
+ delegateType
+ };
+ });
+ jQuery.each({
+ mouseenter: "mouseover",
+ mouseleave: "mouseout",
+ pointerenter: "pointerover",
+ pointerleave: "pointerout"
+ }, function(orig, fix) {
+ jQuery.event.special[orig] = {
+ delegateType: fix,
+ bindType: fix,
+ handle: function(event) {
+ var ret, target = this, related = event.relatedTarget, handleObj = event.handleObj;
+ if (!related || related !== target && !jQuery.contains(target, related)) {
+ event.type = handleObj.origType;
+ ret = handleObj.handler.apply(this, arguments);
+ event.type = fix;
+ }
+ return ret;
+ }
+ };
+ });
+ jQuery.fn.extend({
+ on: function(types, selector, data, fn2) {
+ return on(this, types, selector, data, fn2);
+ },
+ one: function(types, selector, data, fn2) {
+ return on(this, types, selector, data, fn2, 1);
+ },
+ off: function(types, selector, fn2) {
+ var handleObj, type;
+ if (types && types.preventDefault && types.handleObj) {
+ handleObj = types.handleObj;
+ jQuery(types.delegateTarget).off(handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, handleObj.selector, handleObj.handler);
+ return this;
+ }
+ if (typeof types === "object") {
+ for (type in types) {
+ this.off(type, selector, types[type]);
+ }
+ return this;
+ }
+ if (selector === false || typeof selector === "function") {
+ fn2 = selector;
+ selector = void 0;
+ }
+ if (fn2 === false) {
+ fn2 = returnFalse;
+ }
+ return this.each(function() {
+ jQuery.event.remove(this, types, fn2, selector);
+ });
+ }
+ });
+ var rnoInnerhtml = /<script|<style|<link/i, rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
+ function manipulationTarget(elem, content) {
+ if (nodeName(elem, "table") && nodeName(content.nodeType !== 11 ? content : content.firstChild, "tr")) {
+ return jQuery(elem).children("tbody")[0] || elem;
+ }
+ return elem;
+ }
+ function disableScript(elem) {
+ elem.type = (elem.getAttribute("type") !== null) + "/" + elem.type;
+ return elem;
+ }
+ function restoreScript(elem) {
+ if ((elem.type || "").slice(0, 5) === "true/") {
+ elem.type = elem.type.slice(5);
+ } else {
+ elem.removeAttribute("type");
+ }
+ return elem;
+ }
+ function cloneCopyEvent(src, dest) {
+ var i, l, type, pdataOld, udataOld, udataCur, events;
+ if (dest.nodeType !== 1) {
+ return;
+ }
+ if (dataPriv.hasData(src)) {
+ pdataOld = dataPriv.get(src);
+ events = pdataOld.events;
+ if (events) {
+ dataPriv.remove(dest, "handle events");
+ for (type in events) {
+ for (i = 0, l = events[type].length; i < l; i++) {
+ jQuery.event.add(dest, type, events[type][i]);
+ }
+ }
+ }
+ }
+ if (dataUser.hasData(src)) {
+ udataOld = dataUser.access(src);
+ udataCur = jQuery.extend({}, udataOld);
+ dataUser.set(dest, udataCur);
+ }
+ }
+ function fixInput(src, dest) {
+ var nodeName2 = dest.nodeName.toLowerCase();
+ if (nodeName2 === "input" && rcheckableType.test(src.type)) {
+ dest.checked = src.checked;
+ } else if (nodeName2 === "input" || nodeName2 === "textarea") {
+ dest.defaultValue = src.defaultValue;
+ }
+ }
+ function domManip(collection, args, callback, ignored) {
+ args = flat(args);
+ var fragment, first, scripts, hasScripts, node, doc2, i = 0, l = collection.length, iNoClone = l - 1, value = args[0], valueIsFunction = isFunction(value);
+ if (valueIsFunction || l > 1 && typeof value === "string" && !support.checkClone && rchecked.test(value)) {
+ return collection.each(function(index) {
+ var self2 = collection.eq(index);
+ if (valueIsFunction) {
+ args[0] = value.call(this, index, self2.html());
+ }
+ domManip(self2, args, callback, ignored);
+ });
+ }
+ if (l) {
+ fragment = buildFragment(args, collection[0].ownerDocument, false, collection, ignored);
+ first = fragment.firstChild;
+ if (fragment.childNodes.length === 1) {
+ fragment = first;
+ }
+ if (first || ignored) {
+ scripts = jQuery.map(getAll(fragment, "script"), disableScript);
+ hasScripts = scripts.length;
+ for (; i < l; i++) {
+ node = fragment;
+ if (i !== iNoClone) {
+ node = jQuery.clone(node, true, true);
+ if (hasScripts) {
+ jQuery.merge(scripts, getAll(node, "script"));
+ }
+ }
+ callback.call(collection[i], node, i);
+ }
+ if (hasScripts) {
+ doc2 = scripts[scripts.length - 1].ownerDocument;
+ jQuery.map(scripts, restoreScript);
+ for (i = 0; i < hasScripts; i++) {
+ node = scripts[i];
+ if (rscriptType.test(node.type || "") && !dataPriv.access(node, "globalEval") && jQuery.contains(doc2, node)) {
+ if (node.src && (node.type || "").toLowerCase() !== "module") {
+ if (jQuery._evalUrl && !node.noModule) {
+ jQuery._evalUrl(node.src, {
+ nonce: node.nonce || node.getAttribute("nonce")
+ }, doc2);
+ }
+ } else {
+ DOMEval(node.textContent.replace(rcleanScript, ""), node, doc2);
+ }
+ }
+ }
+ }
+ }
+ }
+ return collection;
+ }
+ function remove(elem, selector, keepData) {
+ var node, nodes = selector ? jQuery.filter(selector, elem) : elem, i = 0;
+ for (; (node = nodes[i]) != null; i++) {
+ if (!keepData && node.nodeType === 1) {
+ jQuery.cleanData(getAll(node));
+ }
+ if (node.parentNode) {
+ if (keepData && isAttached(node)) {
+ setGlobalEval(getAll(node, "script"));
+ }
+ node.parentNode.removeChild(node);
+ }
+ }
+ return elem;
+ }
+ jQuery.extend({
+ htmlPrefilter: function(html) {
+ return html;
+ },
+ clone: function(elem, dataAndEvents, deepDataAndEvents) {
+ var i, l, srcElements, destElements, clone2 = elem.cloneNode(true), inPage = isAttached(elem);
+ if (!support.noCloneChecked && (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem)) {
+ destElements = getAll(clone2);
+ srcElements = getAll(elem);
+ for (i = 0, l = srcElements.length; i < l; i++) {
+ fixInput(srcElements[i], destElements[i]);
+ }
+ }
+ if (dataAndEvents) {
+ if (deepDataAndEvents) {
+ srcElements = srcElements || getAll(elem);
+ destElements = destElements || getAll(clone2);
+ for (i = 0, l = srcElements.length; i < l; i++) {
+ cloneCopyEvent(srcElements[i], destElements[i]);
+ }
+ } else {
+ cloneCopyEvent(elem, clone2);
+ }
+ }
+ destElements = getAll(clone2, "script");
+ if (destElements.length > 0) {
+ setGlobalEval(destElements, !inPage && getAll(elem, "script"));
+ }
+ return clone2;
+ },
+ cleanData: function(elems) {
+ var data, elem, type, special = jQuery.event.special, i = 0;
+ for (; (elem = elems[i]) !== void 0; i++) {
+ if (acceptData(elem)) {
+ if (data = elem[dataPriv.expando]) {
+ if (data.events) {
+ for (type in data.events) {
+ if (special[type]) {
+ jQuery.event.remove(elem, type);
+ } else {
+ jQuery.removeEvent(elem, type, data.handle);
+ }
+ }
+ }
+ elem[dataPriv.expando] = void 0;
+ }
+ if (elem[dataUser.expando]) {
+ elem[dataUser.expando] = void 0;
+ }
+ }
+ }
+ }
+ });
+ jQuery.fn.extend({
+ detach: function(selector) {
+ return remove(this, selector, true);
+ },
+ remove: function(selector) {
+ return remove(this, selector);
+ },
+ text: function(value) {
+ return access(this, function(value2) {
+ return value2 === void 0 ? jQuery.text(this) : this.empty().each(function() {
+ if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) {
+ this.textContent = value2;
+ }
+ });
+ }, null, value, arguments.length);
+ },
+ append: function() {
+ return domManip(this, arguments, function(elem) {
+ if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) {
+ var target = manipulationTarget(this, elem);
+ target.appendChild(elem);
+ }
+ });
+ },
+ prepend: function() {
+ return domManip(this, arguments, function(elem) {
+ if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) {
+ var target = manipulationTarget(this, elem);
+ target.insertBefore(elem, target.firstChild);
+ }
+ });
+ },
+ before: function() {
+ return domManip(this, arguments, function(elem) {
+ if (this.parentNode) {
+ this.parentNode.insertBefore(elem, this);
+ }
+ });
+ },
+ after: function() {
+ return domManip(this, arguments, function(elem) {
+ if (this.parentNode) {
+ this.parentNode.insertBefore(elem, this.nextSibling);
+ }
+ });
+ },
+ empty: function() {
+ var elem, i = 0;
+ for (; (elem = this[i]) != null; i++) {
+ if (elem.nodeType === 1) {
+ jQuery.cleanData(getAll(elem, false));
+ elem.textContent = "";
+ }
+ }
+ return this;
+ },
+ clone: function(dataAndEvents, deepDataAndEvents) {
+ dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
+ deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
+ return this.map(function() {
+ return jQuery.clone(this, dataAndEvents, deepDataAndEvents);
+ });
+ },
+ html: function(value) {
+ return access(this, function(value2) {
+ var elem = this[0] || {}, i = 0, l = this.length;
+ if (value2 === void 0 && elem.nodeType === 1) {
+ return elem.innerHTML;
+ }
+ if (typeof value2 === "string" && !rnoInnerhtml.test(value2) && !wrapMap[(rtagName.exec(value2) || ["", ""])[1].toLowerCase()]) {
+ value2 = jQuery.htmlPrefilter(value2);
+ try {
+ for (; i < l; i++) {
+ elem = this[i] || {};
+ if (elem.nodeType === 1) {
+ jQuery.cleanData(getAll(elem, false));
+ elem.innerHTML = value2;
+ }
+ }
+ elem = 0;
+ } catch (e) {
+ }
+ }
+ if (elem) {
+ this.empty().append(value2);
+ }
+ }, null, value, arguments.length);
+ },
+ replaceWith: function() {
+ var ignored = [];
+ return domManip(this, arguments, function(elem) {
+ var parent = this.parentNode;
+ if (jQuery.inArray(this, ignored) < 0) {
+ jQuery.cleanData(getAll(this));
+ if (parent) {
+ parent.replaceChild(elem, this);
+ }
+ }
+ }, ignored);
+ }
+ });
+ jQuery.each({
+ appendTo: "append",
+ prependTo: "prepend",
+ insertBefore: "before",
+ insertAfter: "after",
+ replaceAll: "replaceWith"
+ }, function(name, original) {
+ jQuery.fn[name] = function(selector) {
+ var elems, ret = [], insert = jQuery(selector), last = insert.length - 1, i = 0;
+ for (; i <= last; i++) {
+ elems = i === last ? this : this.clone(true);
+ jQuery(insert[i])[original](elems);
+ push.apply(ret, elems.get());
+ }
+ return this.pushStack(ret);
+ };
+ });
+ var rnumnonpx = new RegExp("^(" + pnum + ")(?!px)[a-z%]+$", "i");
+ var getStyles = function(elem) {
+ var view = elem.ownerDocument.defaultView;
+ if (!view || !view.opener) {
+ view = window2;
+ }
+ return view.getComputedStyle(elem);
+ };
+ var swap = function(elem, options, callback) {
+ var ret, name, old = {};
+ for (name in options) {
+ old[name] = elem.style[name];
+ elem.style[name] = options[name];
+ }
+ ret = callback.call(elem);
+ for (name in options) {
+ elem.style[name] = old[name];
+ }
+ return ret;
+ };
+ var rboxStyle = new RegExp(cssExpand.join("|"), "i");
+ (function() {
+ function computeStyleTests() {
+ if (!div) {
+ return;
+ }
+ container.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0";
+ div.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%";
+ documentElement.appendChild(container).appendChild(div);
+ var divStyle = window2.getComputedStyle(div);
+ pixelPositionVal = divStyle.top !== "1%";
+ reliableMarginLeftVal = roundPixelMeasures(divStyle.marginLeft) === 12;
+ div.style.right = "60%";
+ pixelBoxStylesVal = roundPixelMeasures(divStyle.right) === 36;
+ boxSizingReliableVal = roundPixelMeasures(divStyle.width) === 36;
+ div.style.position = "absolute";
+ scrollboxSizeVal = roundPixelMeasures(div.offsetWidth / 3) === 12;
+ documentElement.removeChild(container);
+ div = null;
+ }
+ function roundPixelMeasures(measure) {
+ return Math.round(parseFloat(measure));
+ }
+ var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, reliableTrDimensionsVal, reliableMarginLeftVal, container = document2.createElement("div"), div = document2.createElement("div");
+ if (!div.style) {
+ return;
+ }
+ div.style.backgroundClip = "content-box";
+ div.cloneNode(true).style.backgroundClip = "";
+ support.clearCloneStyle = div.style.backgroundClip === "content-box";
+ jQuery.extend(support, {
+ boxSizingReliable: function() {
+ computeStyleTests();
+ return boxSizingReliableVal;
+ },
+ pixelBoxStyles: function() {
+ computeStyleTests();
+ return pixelBoxStylesVal;
+ },
+ pixelPosition: function() {
+ computeStyleTests();
+ return pixelPositionVal;
+ },
+ reliableMarginLeft: function() {
+ computeStyleTests();
+ return reliableMarginLeftVal;
+ },
+ scrollboxSize: function() {
+ computeStyleTests();
+ return scrollboxSizeVal;
+ },
+ reliableTrDimensions: function() {
+ var table, tr, trChild, trStyle;
+ if (reliableTrDimensionsVal == null) {
+ table = document2.createElement("table");
+ tr = document2.createElement("tr");
+ trChild = document2.createElement("div");
+ table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate";
+ tr.style.cssText = "border:1px solid";
+ tr.style.height = "1px";
+ trChild.style.height = "9px";
+ trChild.style.display = "block";
+ documentElement.appendChild(table).appendChild(tr).appendChild(trChild);
+ trStyle = window2.getComputedStyle(tr);
+ reliableTrDimensionsVal = parseInt(trStyle.height, 10) + parseInt(trStyle.borderTopWidth, 10) + parseInt(trStyle.borderBottomWidth, 10) === tr.offsetHeight;
+ documentElement.removeChild(table);
+ }
+ return reliableTrDimensionsVal;
+ }
+ });
+ })();
+ function curCSS(elem, name, computed) {
+ var width, minWidth, maxWidth, ret, style = elem.style;
+ computed = computed || getStyles(elem);
+ if (computed) {
+ ret = computed.getPropertyValue(name) || computed[name];
+ if (ret === "" && !isAttached(elem)) {
+ ret = jQuery.style(elem, name);
+ }
+ if (!support.pixelBoxStyles() && rnumnonpx.test(ret) && rboxStyle.test(name)) {
+ width = style.width;
+ minWidth = style.minWidth;
+ maxWidth = style.maxWidth;
+ style.minWidth = style.maxWidth = style.width = ret;
+ ret = computed.width;
+ style.width = width;
+ style.minWidth = minWidth;
+ style.maxWidth = maxWidth;
+ }
+ }
+ return ret !== void 0 ? ret + "" : ret;
+ }
+ function addGetHookIf(conditionFn, hookFn) {
+ return {
+ get: function() {
+ if (conditionFn()) {
+ delete this.get;
+ return;
+ }
+ return (this.get = hookFn).apply(this, arguments);
+ }
+ };
+ }
+ var cssPrefixes = ["Webkit", "Moz", "ms"], emptyStyle = document2.createElement("div").style, vendorProps = {};
+ function vendorPropName(name) {
+ var capName = name[0].toUpperCase() + name.slice(1), i = cssPrefixes.length;
+ while (i--) {
+ name = cssPrefixes[i] + capName;
+ if (name in emptyStyle) {
+ return name;
+ }
+ }
+ }
+ function finalPropName(name) {
+ var final = jQuery.cssProps[name] || vendorProps[name];
+ if (final) {
+ return final;
+ }
+ if (name in emptyStyle) {
+ return name;
+ }
+ return vendorProps[name] = vendorPropName(name) || name;
+ }
+ var rdisplayswap = /^(none|table(?!-c[ea]).+)/, rcustomProp = /^--/, cssShow = { position: "absolute", visibility: "hidden", display: "block" }, cssNormalTransform = {
+ letterSpacing: "0",
+ fontWeight: "400"
+ };
+ function setPositiveNumber(_elem, value, subtract) {
+ var matches = rcssNum.exec(value);
+ return matches ? Math.max(0, matches[2] - (subtract || 0)) + (matches[3] || "px") : value;
+ }
+ function boxModelAdjustment(elem, dimension, box, isBorderBox, styles, computedVal) {
+ var i = dimension === "width" ? 1 : 0, extra = 0, delta = 0;
+ if (box === (isBorderBox ? "border" : "content")) {
+ return 0;
+ }
+ for (; i < 4; i += 2) {
+ if (box === "margin") {
+ delta += jQuery.css(elem, box + cssExpand[i], true, styles);
+ }
+ if (!isBorderBox) {
+ delta += jQuery.css(elem, "padding" + cssExpand[i], true, styles);
+ if (box !== "padding") {
+ delta += jQuery.css(elem, "border" + cssExpand[i] + "Width", true, styles);
+ } else {
+ extra += jQuery.css(elem, "border" + cssExpand[i] + "Width", true, styles);
+ }
+ } else {
+ if (box === "content") {
+ delta -= jQuery.css(elem, "padding" + cssExpand[i], true, styles);
+ }
+ if (box !== "margin") {
+ delta -= jQuery.css(elem, "border" + cssExpand[i] + "Width", true, styles);
+ }
+ }
+ }
+ if (!isBorderBox && computedVal >= 0) {
+ delta += Math.max(0, Math.ceil(elem["offset" + dimension[0].toUpperCase() + dimension.slice(1)] - computedVal - delta - extra - 0.5)) || 0;
+ }
+ return delta;
+ }
+ function getWidthOrHeight(elem, dimension, extra) {
+ var styles = getStyles(elem), boxSizingNeeded = !support.boxSizingReliable() || extra, isBorderBox = boxSizingNeeded && jQuery.css(elem, "boxSizing", false, styles) === "border-box", valueIsBorderBox = isBorderBox, val = curCSS(elem, dimension, styles), offsetProp = "offset" + dimension[0].toUpperCase() + dimension.slice(1);
+ if (rnumnonpx.test(val)) {
+ if (!extra) {
+ return val;
+ }
+ val = "auto";
+ }
+ if ((!support.boxSizingReliable() && isBorderBox || !support.reliableTrDimensions() && nodeName(elem, "tr") || val === "auto" || !parseFloat(val) && jQuery.css(elem, "display", false, styles) === "inline") && elem.getClientRects().length) {
+ isBorderBox = jQuery.css(elem, "boxSizing", false, styles) === "border-box";
+ valueIsBorderBox = offsetProp in elem;
+ if (valueIsBorderBox) {
+ val = elem[offsetProp];
+ }
+ }
+ val = parseFloat(val) || 0;
+ return val + boxModelAdjustment(elem, dimension, extra || (isBorderBox ? "border" : "content"), valueIsBorderBox, styles, val) + "px";
+ }
+ jQuery.extend({
+ cssHooks: {
+ opacity: {
+ get: function(elem, computed) {
+ if (computed) {
+ var ret = curCSS(elem, "opacity");
+ return ret === "" ? "1" : ret;
+ }
+ }
+ }
+ },
+ cssNumber: {
+ "animationIterationCount": true,
+ "columnCount": true,
+ "fillOpacity": true,
+ "flexGrow": true,
+ "flexShrink": true,
+ "fontWeight": true,
+ "gridArea": true,
+ "gridColumn": true,
+ "gridColumnEnd": true,
+ "gridColumnStart": true,
+ "gridRow": true,
+ "gridRowEnd": true,
+ "gridRowStart": true,
+ "lineHeight": true,
+ "opacity": true,
+ "order": true,
+ "orphans": true,
+ "widows": true,
+ "zIndex": true,
+ "zoom": true
+ },
+ cssProps: {},
+ style: function(elem, name, value, extra) {
+ if (!elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style) {
+ return;
+ }
+ var ret, type, hooks, origName = camelCase(name), isCustomProp = rcustomProp.test(name), style = elem.style;
+ if (!isCustomProp) {
+ name = finalPropName(origName);
+ }
+ hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName];
+ if (value !== void 0) {
+ type = typeof value;
+ if (type === "string" && (ret = rcssNum.exec(value)) && ret[1]) {
+ value = adjustCSS(elem, name, ret);
+ type = "number";
+ }
+ if (value == null || value !== value) {
+ return;
+ }
+ if (type === "number" && !isCustomProp) {
+ value += ret && ret[3] || (jQuery.cssNumber[origName] ? "" : "px");
+ }
+ if (!support.clearCloneStyle && value === "" && name.indexOf("background") === 0) {
+ style[name] = "inherit";
+ }
+ if (!hooks || !("set" in hooks) || (value = hooks.set(elem, value, extra)) !== void 0) {
+ if (isCustomProp) {
+ style.setProperty(name, value);
+ } else {
+ style[name] = value;
+ }
+ }
+ } else {
+ if (hooks && "get" in hooks && (ret = hooks.get(elem, false, extra)) !== void 0) {
+ return ret;
+ }
+ return style[name];
+ }
+ },
+ css: function(elem, name, extra, styles) {
+ var val, num, hooks, origName = camelCase(name), isCustomProp = rcustomProp.test(name);
+ if (!isCustomProp) {
+ name = finalPropName(origName);
+ }
+ hooks = jQuery.cssHooks[name] || jQuery.cssHooks[origName];
+ if (hooks && "get" in hooks) {
+ val = hooks.get(elem, true, extra);
+ }
+ if (val === void 0) {
+ val = curCSS(elem, name, styles);
+ }
+ if (val === "normal" && name in cssNormalTransform) {
+ val = cssNormalTransform[name];
+ }
+ if (extra === "" || extra) {
+ num = parseFloat(val);
+ return extra === true || isFinite(num) ? num || 0 : val;
+ }
+ return val;
+ }
+ });
+ jQuery.each(["height", "width"], function(_i, dimension) {
+ jQuery.cssHooks[dimension] = {
+ get: function(elem, computed, extra) {
+ if (computed) {
+ return rdisplayswap.test(jQuery.css(elem, "display")) && (!elem.getClientRects().length || !elem.getBoundingClientRect().width) ? swap(elem, cssShow, function() {
+ return getWidthOrHeight(elem, dimension, extra);
+ }) : getWidthOrHeight(elem, dimension, extra);
+ }
+ },
+ set: function(elem, value, extra) {
+ var matches, styles = getStyles(elem), scrollboxSizeBuggy = !support.scrollboxSize() && styles.position === "absolute", boxSizingNeeded = scrollboxSizeBuggy || extra, isBorderBox = boxSizingNeeded && jQuery.css(elem, "boxSizing", false, styles) === "border-box", subtract = extra ? boxModelAdjustment(elem, dimension, extra, isBorderBox, styles) : 0;
+ if (isBorderBox && scrollboxSizeBuggy) {
+ subtract -= Math.ceil(elem["offset" + dimension[0].toUpperCase() + dimension.slice(1)] - parseFloat(styles[dimension]) - boxModelAdjustment(elem, dimension, "border", false, styles) - 0.5);
+ }
+ if (subtract && (matches = rcssNum.exec(value)) && (matches[3] || "px") !== "px") {
+ elem.style[dimension] = value;
+ value = jQuery.css(elem, dimension);
+ }
+ return setPositiveNumber(elem, value, subtract);
+ }
+ };
+ });
+ jQuery.cssHooks.marginLeft = addGetHookIf(support.reliableMarginLeft, function(elem, computed) {
+ if (computed) {
+ return (parseFloat(curCSS(elem, "marginLeft")) || elem.getBoundingClientRect().left - swap(elem, { marginLeft: 0 }, function() {
+ return elem.getBoundingClientRect().left;
+ })) + "px";
+ }
+ });
+ jQuery.each({
+ margin: "",
+ padding: "",
+ border: "Width"
+ }, function(prefix, suffix) {
+ jQuery.cssHooks[prefix + suffix] = {
+ expand: function(value) {
+ var i = 0, expanded = {}, parts = typeof value === "string" ? value.split(" ") : [value];
+ for (; i < 4; i++) {
+ expanded[prefix + cssExpand[i] + suffix] = parts[i] || parts[i - 2] || parts[0];
+ }
+ return expanded;
+ }
+ };
+ if (prefix !== "margin") {
+ jQuery.cssHooks[prefix + suffix].set = setPositiveNumber;
+ }
+ });
+ jQuery.fn.extend({
+ css: function(name, value) {
+ return access(this, function(elem, name2, value2) {
+ var styles, len, map = {}, i = 0;
+ if (Array.isArray(name2)) {
+ styles = getStyles(elem);
+ len = name2.length;
+ for (; i < len; i++) {
+ map[name2[i]] = jQuery.css(elem, name2[i], false, styles);
+ }
+ return map;
+ }
+ return value2 !== void 0 ? jQuery.style(elem, name2, value2) : jQuery.css(elem, name2);
+ }, name, value, arguments.length > 1);
+ }
+ });
+ function Tween(elem, options, prop, end2, easing) {
+ return new Tween.prototype.init(elem, options, prop, end2, easing);
+ }
+ jQuery.Tween = Tween;
+ Tween.prototype = {
+ constructor: Tween,
+ init: function(elem, options, prop, end2, easing, unit) {
+ this.elem = elem;
+ this.prop = prop;
+ this.easing = easing || jQuery.easing._default;
+ this.options = options;
+ this.start = this.now = this.cur();
+ this.end = end2;
+ this.unit = unit || (jQuery.cssNumber[prop] ? "" : "px");
+ },
+ cur: function() {
+ var hooks = Tween.propHooks[this.prop];
+ return hooks && hooks.get ? hooks.get(this) : Tween.propHooks._default.get(this);
+ },
+ run: function(percent) {
+ var eased, hooks = Tween.propHooks[this.prop];
+ if (this.options.duration) {
+ this.pos = eased = jQuery.easing[this.easing](percent, this.options.duration * percent, 0, 1, this.options.duration);
+ } else {
+ this.pos = eased = percent;
+ }
+ this.now = (this.end - this.start) * eased + this.start;
+ if (this.options.step) {
+ this.options.step.call(this.elem, this.now, this);
+ }
+ if (hooks && hooks.set) {
+ hooks.set(this);
+ } else {
+ Tween.propHooks._default.set(this);
+ }
+ return this;
+ }
+ };
+ Tween.prototype.init.prototype = Tween.prototype;
+ Tween.propHooks = {
+ _default: {
+ get: function(tween) {
+ var result;
+ if (tween.elem.nodeType !== 1 || tween.elem[tween.prop] != null && tween.elem.style[tween.prop] == null) {
+ return tween.elem[tween.prop];
+ }
+ result = jQuery.css(tween.elem, tween.prop, "");
+ return !result || result === "auto" ? 0 : result;
+ },
+ set: function(tween) {
+ if (jQuery.fx.step[tween.prop]) {
+ jQuery.fx.step[tween.prop](tween);
+ } else if (tween.elem.nodeType === 1 && (jQuery.cssHooks[tween.prop] || tween.elem.style[finalPropName(tween.prop)] != null)) {
+ jQuery.style(tween.elem, tween.prop, tween.now + tween.unit);
+ } else {
+ tween.elem[tween.prop] = tween.now;
+ }
+ }
+ }
+ };
+ Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
+ set: function(tween) {
+ if (tween.elem.nodeType && tween.elem.parentNode) {
+ tween.elem[tween.prop] = tween.now;
+ }
+ }
+ };
+ jQuery.easing = {
+ linear: function(p) {
+ return p;
+ },
+ swing: function(p) {
+ return 0.5 - Math.cos(p * Math.PI) / 2;
+ },
+ _default: "swing"
+ };
+ jQuery.fx = Tween.prototype.init;
+ jQuery.fx.step = {};
+ var fxNow, inProgress, rfxtypes = /^(?:toggle|show|hide)$/, rrun = /queueHooks$/;
+ function schedule() {
+ if (inProgress) {
+ if (document2.hidden === false && window2.requestAnimationFrame) {
+ window2.requestAnimationFrame(schedule);
+ } else {
+ window2.setTimeout(schedule, jQuery.fx.interval);
+ }
+ jQuery.fx.tick();
+ }
+ }
+ function createFxNow() {
+ window2.setTimeout(function() {
+ fxNow = void 0;
+ });
+ return fxNow = Date.now();
+ }
+ function genFx(type, includeWidth) {
+ var which, i = 0, attrs = { height: type };
+ includeWidth = includeWidth ? 1 : 0;
+ for (; i < 4; i += 2 - includeWidth) {
+ which = cssExpand[i];
+ attrs["margin" + which] = attrs["padding" + which] = type;
+ }
+ if (includeWidth) {
+ attrs.opacity = attrs.width = type;
+ }
+ return attrs;
+ }
+ function createTween(value, prop, animation) {
+ var tween, collection = (Animation.tweeners[prop] || []).concat(Animation.tweeners["*"]), index = 0, length = collection.length;
+ for (; index < length; index++) {
+ if (tween = collection[index].call(animation, prop, value)) {
+ return tween;
+ }
+ }
+ }
+ function defaultPrefilter(elem, props, opts) {
+ var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, isBox = "width" in props || "height" in props, anim = this, orig = {}, style = elem.style, hidden = elem.nodeType && isHiddenWithinTree(elem), dataShow = dataPriv.get(elem, "fxshow");
+ if (!opts.queue) {
+ hooks = jQuery._queueHooks(elem, "fx");
+ if (hooks.unqueued == null) {
+ hooks.unqueued = 0;
+ oldfire = hooks.empty.fire;
+ hooks.empty.fire = function() {
+ if (!hooks.unqueued) {
+ oldfire();
+ }
+ };
+ }
+ hooks.unqueued++;
+ anim.always(function() {
+ anim.always(function() {
+ hooks.unqueued--;
+ if (!jQuery.queue(elem, "fx").length) {
+ hooks.empty.fire();
+ }
+ });
+ });
+ }
+ for (prop in props) {
+ value = props[prop];
+ if (rfxtypes.test(value)) {
+ delete props[prop];
+ toggle = toggle || value === "toggle";
+ if (value === (hidden ? "hide" : "show")) {
+ if (value === "show" && dataShow && dataShow[prop] !== void 0) {
+ hidden = true;
+ } else {
+ continue;
+ }
+ }
+ orig[prop] = dataShow && dataShow[prop] || jQuery.style(elem, prop);
+ }
+ }
+ propTween = !jQuery.isEmptyObject(props);
+ if (!propTween && jQuery.isEmptyObject(orig)) {
+ return;
+ }
+ if (isBox && elem.nodeType === 1) {
+ opts.overflow = [style.overflow, style.overflowX, style.overflowY];
+ restoreDisplay = dataShow && dataShow.display;
+ if (restoreDisplay == null) {
+ restoreDisplay = dataPriv.get(elem, "display");
+ }
+ display = jQuery.css(elem, "display");
+ if (display === "none") {
+ if (restoreDisplay) {
+ display = restoreDisplay;
+ } else {
+ showHide([elem], true);
+ restoreDisplay = elem.style.display || restoreDisplay;
+ display = jQuery.css(elem, "display");
+ showHide([elem]);
+ }
+ }
+ if (display === "inline" || display === "inline-block" && restoreDisplay != null) {
+ if (jQuery.css(elem, "float") === "none") {
+ if (!propTween) {
+ anim.done(function() {
+ style.display = restoreDisplay;
+ });
+ if (restoreDisplay == null) {
+ display = style.display;
+ restoreDisplay = display === "none" ? "" : display;
+ }
+ }
+ style.display = "inline-block";
+ }
+ }
+ }
+ if (opts.overflow) {
+ style.overflow = "hidden";
+ anim.always(function() {
+ style.overflow = opts.overflow[0];
+ style.overflowX = opts.overflow[1];
+ style.overflowY = opts.overflow[2];
+ });
+ }
+ propTween = false;
+ for (prop in orig) {
+ if (!propTween) {
+ if (dataShow) {
+ if ("hidden" in dataShow) {
+ hidden = dataShow.hidden;
+ }
+ } else {
+ dataShow = dataPriv.access(elem, "fxshow", { display: restoreDisplay });
+ }
+ if (toggle) {
+ dataShow.hidden = !hidden;
+ }
+ if (hidden) {
+ showHide([elem], true);
+ }
+ anim.done(function() {
+ if (!hidden) {
+ showHide([elem]);
+ }
+ dataPriv.remove(elem, "fxshow");
+ for (prop in orig) {
+ jQuery.style(elem, prop, orig[prop]);
+ }
+ });
+ }
+ propTween = createTween(hidden ? dataShow[prop] : 0, prop, anim);
+ if (!(prop in dataShow)) {
+ dataShow[prop] = propTween.start;
+ if (hidden) {
+ propTween.end = propTween.start;
+ propTween.start = 0;
+ }
+ }
+ }
+ }
+ function propFilter(props, specialEasing) {
+ var index, name, easing, value, hooks;
+ for (index in props) {
+ name = camelCase(index);
+ easing = specialEasing[name];
+ value = props[index];
+ if (Array.isArray(value)) {
+ easing = value[1];
+ value = props[index] = value[0];
+ }
+ if (index !== name) {
+ props[name] = value;
+ delete props[index];
+ }
+ hooks = jQuery.cssHooks[name];
+ if (hooks && "expand" in hooks) {
+ value = hooks.expand(value);
+ delete props[name];
+ for (index in value) {
+ if (!(index in props)) {
+ props[index] = value[index];
+ specialEasing[index] = easing;
+ }
+ }
+ } else {
+ specialEasing[name] = easing;
+ }
+ }
+ }
+ function Animation(elem, properties, options) {
+ var result, stopped, index = 0, length = Animation.prefilters.length, deferred = jQuery.Deferred().always(function() {
+ delete tick.elem;
+ }), tick = function() {
+ if (stopped) {
+ return false;
+ }
+ var currentTime = fxNow || createFxNow(), remaining = Math.max(0, animation.startTime + animation.duration - currentTime), temp = remaining / animation.duration || 0, percent = 1 - temp, index2 = 0, length2 = animation.tweens.length;
+ for (; index2 < length2; index2++) {
+ animation.tweens[index2].run(percent);
+ }
+ deferred.notifyWith(elem, [animation, percent, remaining]);
+ if (percent < 1 && length2) {
+ return remaining;
+ }
+ if (!length2) {
+ deferred.notifyWith(elem, [animation, 1, 0]);
+ }
+ deferred.resolveWith(elem, [animation]);
+ return false;
+ }, animation = deferred.promise({
+ elem,
+ props: jQuery.extend({}, properties),
+ opts: jQuery.extend(true, {
+ specialEasing: {},
+ easing: jQuery.easing._default
+ }, options),
+ originalProperties: properties,
+ originalOptions: options,
+ startTime: fxNow || createFxNow(),
+ duration: options.duration,
+ tweens: [],
+ createTween: function(prop, end2) {
+ var tween = jQuery.Tween(elem, animation.opts, prop, end2, animation.opts.specialEasing[prop] || animation.opts.easing);
+ animation.tweens.push(tween);
+ return tween;
+ },
+ stop: function(gotoEnd) {
+ var index2 = 0, length2 = gotoEnd ? animation.tweens.length : 0;
+ if (stopped) {
+ return this;
+ }
+ stopped = true;
+ for (; index2 < length2; index2++) {
+ animation.tweens[index2].run(1);
+ }
+ if (gotoEnd) {
+ deferred.notifyWith(elem, [animation, 1, 0]);
+ deferred.resolveWith(elem, [animation, gotoEnd]);
+ } else {
+ deferred.rejectWith(elem, [animation, gotoEnd]);
+ }
+ return this;
+ }
+ }), props = animation.props;
+ propFilter(props, animation.opts.specialEasing);
+ for (; index < length; index++) {
+ result = Animation.prefilters[index].call(animation, elem, props, animation.opts);
+ if (result) {
+ if (isFunction(result.stop)) {
+ jQuery._queueHooks(animation.elem, animation.opts.queue).stop = result.stop.bind(result);
+ }
+ return result;
+ }
+ }
+ jQuery.map(props, createTween, animation);
+ if (isFunction(animation.opts.start)) {
+ animation.opts.start.call(elem, animation);
+ }
+ animation.progress(animation.opts.progress).done(animation.opts.done, animation.opts.complete).fail(animation.opts.fail).always(animation.opts.always);
+ jQuery.fx.timer(jQuery.extend(tick, {
+ elem,
+ anim: animation,
+ queue: animation.opts.queue
+ }));
+ return animation;
+ }
+ jQuery.Animation = jQuery.extend(Animation, {
+ tweeners: {
+ "*": [function(prop, value) {
+ var tween = this.createTween(prop, value);
+ adjustCSS(tween.elem, prop, rcssNum.exec(value), tween);
+ return tween;
+ }]
+ },
+ tweener: function(props, callback) {
+ if (isFunction(props)) {
+ callback = props;
+ props = ["*"];
+ } else {
+ props = props.match(rnothtmlwhite);
+ }
+ var prop, index = 0, length = props.length;
+ for (; index < length; index++) {
+ prop = props[index];
+ Animation.tweeners[prop] = Animation.tweeners[prop] || [];
+ Animation.tweeners[prop].unshift(callback);
+ }
+ },
+ prefilters: [defaultPrefilter],
+ prefilter: function(callback, prepend) {
+ if (prepend) {
+ Animation.prefilters.unshift(callback);
+ } else {
+ Animation.prefilters.push(callback);
+ }
+ }
+ });
+ jQuery.speed = function(speed, easing, fn2) {
+ var opt = speed && typeof speed === "object" ? jQuery.extend({}, speed) : {
+ complete: fn2 || !fn2 && easing || isFunction(speed) && speed,
+ duration: speed,
+ easing: fn2 && easing || easing && !isFunction(easing) && easing
+ };
+ if (jQuery.fx.off) {
+ opt.duration = 0;
+ } else {
+ if (typeof opt.duration !== "number") {
+ if (opt.duration in jQuery.fx.speeds) {
+ opt.duration = jQuery.fx.speeds[opt.duration];
+ } else {
+ opt.duration = jQuery.fx.speeds._default;
+ }
+ }
+ }
+ if (opt.queue == null || opt.queue === true) {
+ opt.queue = "fx";
+ }
+ opt.old = opt.complete;
+ opt.complete = function() {
+ if (isFunction(opt.old)) {
+ opt.old.call(this);
+ }
+ if (opt.queue) {
+ jQuery.dequeue(this, opt.queue);
+ }
+ };
+ return opt;
+ };
+ jQuery.fn.extend({
+ fadeTo: function(speed, to, easing, callback) {
+ return this.filter(isHiddenWithinTree).css("opacity", 0).show().end().animate({ opacity: to }, speed, easing, callback);
+ },
+ animate: function(prop, speed, easing, callback) {
+ var empty = jQuery.isEmptyObject(prop), optall = jQuery.speed(speed, easing, callback), doAnimation = function() {
+ var anim = Animation(this, jQuery.extend({}, prop), optall);
+ if (empty || dataPriv.get(this, "finish")) {
+ anim.stop(true);
+ }
+ };
+ doAnimation.finish = doAnimation;
+ return empty || optall.queue === false ? this.each(doAnimation) : this.queue(optall.queue, doAnimation);
+ },
+ stop: function(type, clearQueue, gotoEnd) {
+ var stopQueue = function(hooks) {
+ var stop = hooks.stop;
+ delete hooks.stop;
+ stop(gotoEnd);
+ };
+ if (typeof type !== "string") {
+ gotoEnd = clearQueue;
+ clearQueue = type;
+ type = void 0;
+ }
+ if (clearQueue) {
+ this.queue(type || "fx", []);
+ }
+ return this.each(function() {
+ var dequeue = true, index = type != null && type + "queueHooks", timers = jQuery.timers, data = dataPriv.get(this);
+ if (index) {
+ if (data[index] && data[index].stop) {
+ stopQueue(data[index]);
+ }
+ } else {
+ for (index in data) {
+ if (data[index] && data[index].stop && rrun.test(index)) {
+ stopQueue(data[index]);
+ }
+ }
+ }
+ for (index = timers.length; index--; ) {
+ if (timers[index].elem === this && (type == null || timers[index].queue === type)) {
+ timers[index].anim.stop(gotoEnd);
+ dequeue = false;
+ timers.splice(index, 1);
+ }
+ }
+ if (dequeue || !gotoEnd) {
+ jQuery.dequeue(this, type);
+ }
+ });
+ },
+ finish: function(type) {
+ if (type !== false) {
+ type = type || "fx";
+ }
+ return this.each(function() {
+ var index, data = dataPriv.get(this), queue = data[type + "queue"], hooks = data[type + "queueHooks"], timers = jQuery.timers, length = queue ? queue.length : 0;
+ data.finish = true;
+ jQuery.queue(this, type, []);
+ if (hooks && hooks.stop) {
+ hooks.stop.call(this, true);
+ }
+ for (index = timers.length; index--; ) {
+ if (timers[index].elem === this && timers[index].queue === type) {
+ timers[index].anim.stop(true);
+ timers.splice(index, 1);
+ }
+ }
+ for (index = 0; index < length; index++) {
+ if (queue[index] && queue[index].finish) {
+ queue[index].finish.call(this);
+ }
+ }
+ delete data.finish;
+ });
+ }
+ });
+ jQuery.each(["toggle", "show", "hide"], function(_i, name) {
+ var cssFn = jQuery.fn[name];
+ jQuery.fn[name] = function(speed, easing, callback) {
+ return speed == null || typeof speed === "boolean" ? cssFn.apply(this, arguments) : this.animate(genFx(name, true), speed, easing, callback);
+ };
+ });
+ jQuery.each({
+ slideDown: genFx("show"),
+ slideUp: genFx("hide"),
+ slideToggle: genFx("toggle"),
+ fadeIn: { opacity: "show" },
+ fadeOut: { opacity: "hide" },
+ fadeToggle: { opacity: "toggle" }
+ }, function(name, props) {
+ jQuery.fn[name] = function(speed, easing, callback) {
+ return this.animate(props, speed, easing, callback);
+ };
+ });
+ jQuery.timers = [];
+ jQuery.fx.tick = function() {
+ var timer, i = 0, timers = jQuery.timers;
+ fxNow = Date.now();
+ for (; i < timers.length; i++) {
+ timer = timers[i];
+ if (!timer() && timers[i] === timer) {
+ timers.splice(i--, 1);
+ }
+ }
+ if (!timers.length) {
+ jQuery.fx.stop();
+ }
+ fxNow = void 0;
+ };
+ jQuery.fx.timer = function(timer) {
+ jQuery.timers.push(timer);
+ jQuery.fx.start();
+ };
+ jQuery.fx.interval = 13;
+ jQuery.fx.start = function() {
+ if (inProgress) {
+ return;
+ }
+ inProgress = true;
+ schedule();
+ };
+ jQuery.fx.stop = function() {
+ inProgress = null;
+ };
+ jQuery.fx.speeds = {
+ slow: 600,
+ fast: 200,
+ _default: 400
+ };
+ jQuery.fn.delay = function(time, type) {
+ time = jQuery.fx ? jQuery.fx.speeds[time] || time : time;
+ type = type || "fx";
+ return this.queue(type, function(next, hooks) {
+ var timeout = window2.setTimeout(next, time);
+ hooks.stop = function() {
+ window2.clearTimeout(timeout);
+ };
+ });
+ };
+ (function() {
+ var input = document2.createElement("input"), select = document2.createElement("select"), opt = select.appendChild(document2.createElement("option"));
+ input.type = "checkbox";
+ support.checkOn = input.value !== "";
+ support.optSelected = opt.selected;
+ input = document2.createElement("input");
+ input.value = "t";
+ input.type = "radio";
+ support.radioValue = input.value === "t";
+ })();
+ var boolHook, attrHandle = jQuery.expr.attrHandle;
+ jQuery.fn.extend({
+ attr: function(name, value) {
+ return access(this, jQuery.attr, name, value, arguments.length > 1);
+ },
+ removeAttr: function(name) {
+ return this.each(function() {
+ jQuery.removeAttr(this, name);
+ });
+ }
+ });
+ jQuery.extend({
+ attr: function(elem, name, value) {
+ var ret, hooks, nType = elem.nodeType;
+ if (nType === 3 || nType === 8 || nType === 2) {
+ return;
+ }
+ if (typeof elem.getAttribute === "undefined") {
+ return jQuery.prop(elem, name, value);
+ }
+ if (nType !== 1 || !jQuery.isXMLDoc(elem)) {
+ hooks = jQuery.attrHooks[name.toLowerCase()] || (jQuery.expr.match.bool.test(name) ? boolHook : void 0);
+ }
+ if (value !== void 0) {
+ if (value === null) {
+ jQuery.removeAttr(elem, name);
+ return;
+ }
+ if (hooks && "set" in hooks && (ret = hooks.set(elem, value, name)) !== void 0) {
+ return ret;
+ }
+ elem.setAttribute(name, value + "");
+ return value;
+ }
+ if (hooks && "get" in hooks && (ret = hooks.get(elem, name)) !== null) {
+ return ret;
+ }
+ ret = jQuery.find.attr(elem, name);
+ return ret == null ? void 0 : ret;
+ },
+ attrHooks: {
+ type: {
+ set: function(elem, value) {
+ if (!support.radioValue && value === "radio" && nodeName(elem, "input")) {
+ var val = elem.value;
+ elem.setAttribute("type", value);
+ if (val) {
+ elem.value = val;
+ }
+ return value;
+ }
+ }
+ }
+ },
+ removeAttr: function(elem, value) {
+ var name, i = 0, attrNames = value && value.match(rnothtmlwhite);
+ if (attrNames && elem.nodeType === 1) {
+ while (name = attrNames[i++]) {
+ elem.removeAttribute(name);
+ }
+ }
+ }
+ });
+ boolHook = {
+ set: function(elem, value, name) {
+ if (value === false) {
+ jQuery.removeAttr(elem, name);
+ } else {
+ elem.setAttribute(name, name);
+ }
+ return name;
+ }
+ };
+ jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g), function(_i, name) {
+ var getter = attrHandle[name] || jQuery.find.attr;
+ attrHandle[name] = function(elem, name2, isXML) {
+ var ret, handle, lowercaseName = name2.toLowerCase();
+ if (!isXML) {
+ handle = attrHandle[lowercaseName];
+ attrHandle[lowercaseName] = ret;
+ ret = getter(elem, name2, isXML) != null ? lowercaseName : null;
+ attrHandle[lowercaseName] = handle;
+ }
+ return ret;
+ };
+ });
+ var rfocusable = /^(?:input|select|textarea|button)$/i, rclickable = /^(?:a|area)$/i;
+ jQuery.fn.extend({
+ prop: function(name, value) {
+ return access(this, jQuery.prop, name, value, arguments.length > 1);
+ },
+ removeProp: function(name) {
+ return this.each(function() {
+ delete this[jQuery.propFix[name] || name];
+ });
+ }
+ });
+ jQuery.extend({
+ prop: function(elem, name, value) {
+ var ret, hooks, nType = elem.nodeType;
+ if (nType === 3 || nType === 8 || nType === 2) {
+ return;
+ }
+ if (nType !== 1 || !jQuery.isXMLDoc(elem)) {
+ name = jQuery.propFix[name] || name;
+ hooks = jQuery.propHooks[name];
+ }
+ if (value !== void 0) {
+ if (hooks && "set" in hooks && (ret = hooks.set(elem, value, name)) !== void 0) {
+ return ret;
+ }
+ return elem[name] = value;
+ }
+ if (hooks && "get" in hooks && (ret = hooks.get(elem, name)) !== null) {
+ return ret;
+ }
+ return elem[name];
+ },
+ propHooks: {
+ tabIndex: {
+ get: function(elem) {
+ var tabindex = jQuery.find.attr(elem, "tabindex");
+ if (tabindex) {
+ return parseInt(tabindex, 10);
+ }
+ if (rfocusable.test(elem.nodeName) || rclickable.test(elem.nodeName) && elem.href) {
+ return 0;
+ }
+ return -1;
+ }
+ }
+ },
+ propFix: {
+ "for": "htmlFor",
+ "class": "className"
+ }
+ });
+ if (!support.optSelected) {
+ jQuery.propHooks.selected = {
+ get: function(elem) {
+ var parent = elem.parentNode;
+ if (parent && parent.parentNode) {
+ parent.parentNode.selectedIndex;
+ }
+ return null;
+ },
+ set: function(elem) {
+ var parent = elem.parentNode;
+ if (parent) {
+ parent.selectedIndex;
+ if (parent.parentNode) {
+ parent.parentNode.selectedIndex;
+ }
+ }
+ }
+ };
+ }
+ jQuery.each([
+ "tabIndex",
+ "readOnly",
+ "maxLength",
+ "cellSpacing",
+ "cellPadding",
+ "rowSpan",
+ "colSpan",
+ "useMap",
+ "frameBorder",
+ "contentEditable"
+ ], function() {
+ jQuery.propFix[this.toLowerCase()] = this;
+ });
+ function stripAndCollapse(value) {
+ var tokens = value.match(rnothtmlwhite) || [];
+ return tokens.join(" ");
+ }
+ function getClass(elem) {
+ return elem.getAttribute && elem.getAttribute("class") || "";
+ }
+ function classesToArray(value) {
+ if (Array.isArray(value)) {
+ return value;
+ }
+ if (typeof value === "string") {
+ return value.match(rnothtmlwhite) || [];
+ }
+ return [];
+ }
+ jQuery.fn.extend({
+ addClass: function(value) {
+ var classes, elem, cur, curValue, clazz, j, finalValue, i = 0;
+ if (isFunction(value)) {
+ return this.each(function(j2) {
+ jQuery(this).addClass(value.call(this, j2, getClass(this)));
+ });
+ }
+ classes = classesToArray(value);
+ if (classes.length) {
+ while (elem = this[i++]) {
+ curValue = getClass(elem);
+ cur = elem.nodeType === 1 && " " + stripAndCollapse(curValue) + " ";
+ if (cur) {
+ j = 0;
+ while (clazz = classes[j++]) {
+ if (cur.indexOf(" " + clazz + " ") < 0) {
+ cur += clazz + " ";
+ }
+ }
+ finalValue = stripAndCollapse(cur);
+ if (curValue !== finalValue) {
+ elem.setAttribute("class", finalValue);
+ }
+ }
+ }
+ }
+ return this;
+ },
+ removeClass: function(value) {
+ var classes, elem, cur, curValue, clazz, j, finalValue, i = 0;
+ if (isFunction(value)) {
+ return this.each(function(j2) {
+ jQuery(this).removeClass(value.call(this, j2, getClass(this)));
+ });
+ }
+ if (!arguments.length) {
+ return this.attr("class", "");
+ }
+ classes = classesToArray(value);
+ if (classes.length) {
+ while (elem = this[i++]) {
+ curValue = getClass(elem);
+ cur = elem.nodeType === 1 && " " + stripAndCollapse(curValue) + " ";
+ if (cur) {
+ j = 0;
+ while (clazz = classes[j++]) {
+ while (cur.indexOf(" " + clazz + " ") > -1) {
+ cur = cur.replace(" " + clazz + " ", " ");
+ }
+ }
+ finalValue = stripAndCollapse(cur);
+ if (curValue !== finalValue) {
+ elem.setAttribute("class", finalValue);
+ }
+ }
+ }
+ }
+ return this;
+ },
+ toggleClass: function(value, stateVal) {
+ var type = typeof value, isValidValue = type === "string" || Array.isArray(value);
+ if (typeof stateVal === "boolean" && isValidValue) {
+ return stateVal ? this.addClass(value) : this.removeClass(value);
+ }
+ if (isFunction(value)) {
+ return this.each(function(i) {
+ jQuery(this).toggleClass(value.call(this, i, getClass(this), stateVal), stateVal);
+ });
+ }
+ return this.each(function() {
+ var className, i, self2, classNames;
+ if (isValidValue) {
+ i = 0;
+ self2 = jQuery(this);
+ classNames = classesToArray(value);
+ while (className = classNames[i++]) {
+ if (self2.hasClass(className)) {
+ self2.removeClass(className);
+ } else {
+ self2.addClass(className);
+ }
+ }
+ } else if (value === void 0 || type === "boolean") {
+ className = getClass(this);
+ if (className) {
+ dataPriv.set(this, "__className__", className);
+ }
+ if (this.setAttribute) {
+ this.setAttribute("class", className || value === false ? "" : dataPriv.get(this, "__className__") || "");
+ }
+ }
+ });
+ },
+ hasClass: function(selector) {
+ var className, elem, i = 0;
+ className = " " + selector + " ";
+ while (elem = this[i++]) {
+ if (elem.nodeType === 1 && (" " + stripAndCollapse(getClass(elem)) + " ").indexOf(className) > -1) {
+ return true;
+ }
+ }
+ return false;
+ }
+ });
+ var rreturn = /\r/g;
+ jQuery.fn.extend({
+ val: function(value) {
+ var hooks, ret, valueIsFunction, elem = this[0];
+ if (!arguments.length) {
+ if (elem) {
+ hooks = jQuery.valHooks[elem.type] || jQuery.valHooks[elem.nodeName.toLowerCase()];
+ if (hooks && "get" in hooks && (ret = hooks.get(elem, "value")) !== void 0) {
+ return ret;
+ }
+ ret = elem.value;
+ if (typeof ret === "string") {
+ return ret.replace(rreturn, "");
+ }
+ return ret == null ? "" : ret;
+ }
+ return;
+ }
+ valueIsFunction = isFunction(value);
+ return this.each(function(i) {
+ var val;
+ if (this.nodeType !== 1) {
+ return;
+ }
+ if (valueIsFunction) {
+ val = value.call(this, i, jQuery(this).val());
+ } else {
+ val = value;
+ }
+ if (val == null) {
+ val = "";
+ } else if (typeof val === "number") {
+ val += "";
+ } else if (Array.isArray(val)) {
+ val = jQuery.map(val, function(value2) {
+ return value2 == null ? "" : value2 + "";
+ });
+ }
+ hooks = jQuery.valHooks[this.type] || jQuery.valHooks[this.nodeName.toLowerCase()];
+ if (!hooks || !("set" in hooks) || hooks.set(this, val, "value") === void 0) {
+ this.value = val;
+ }
+ });
+ }
+ });
+ jQuery.extend({
+ valHooks: {
+ option: {
+ get: function(elem) {
+ var val = jQuery.find.attr(elem, "value");
+ return val != null ? val : stripAndCollapse(jQuery.text(elem));
+ }
+ },
+ select: {
+ get: function(elem) {
+ var value, option, i, options = elem.options, index = elem.selectedIndex, one = elem.type === "select-one", values = one ? null : [], max2 = one ? index + 1 : options.length;
+ if (index < 0) {
+ i = max2;
+ } else {
+ i = one ? index : 0;
+ }
+ for (; i < max2; i++) {
+ option = options[i];
+ if ((option.selected || i === index) && !option.disabled && (!option.parentNode.disabled || !nodeName(option.parentNode, "optgroup"))) {
+ value = jQuery(option).val();
+ if (one) {
+ return value;
+ }
+ values.push(value);
+ }
+ }
+ return values;
+ },
+ set: function(elem, value) {
+ var optionSet, option, options = elem.options, values = jQuery.makeArray(value), i = options.length;
+ while (i--) {
+ option = options[i];
+ if (option.selected = jQuery.inArray(jQuery.valHooks.option.get(option), values) > -1) {
+ optionSet = true;
+ }
+ }
+ if (!optionSet) {
+ elem.selectedIndex = -1;
+ }
+ return values;
+ }
+ }
+ }
+ });
+ jQuery.each(["radio", "checkbox"], function() {
+ jQuery.valHooks[this] = {
+ set: function(elem, value) {
+ if (Array.isArray(value)) {
+ return elem.checked = jQuery.inArray(jQuery(elem).val(), value) > -1;
+ }
+ }
+ };
+ if (!support.checkOn) {
+ jQuery.valHooks[this].get = function(elem) {
+ return elem.getAttribute("value") === null ? "on" : elem.value;
+ };
+ }
+ });
+ support.focusin = "onfocusin" in window2;
+ var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, stopPropagationCallback = function(e) {
+ e.stopPropagation();
+ };
+ jQuery.extend(jQuery.event, {
+ trigger: function(event, data, elem, onlyHandlers) {
+ var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, eventPath = [elem || document2], type = hasOwn.call(event, "type") ? event.type : event, namespaces = hasOwn.call(event, "namespace") ? event.namespace.split(".") : [];
+ cur = lastElement = tmp = elem = elem || document2;
+ if (elem.nodeType === 3 || elem.nodeType === 8) {
+ return;
+ }
+ if (rfocusMorph.test(type + jQuery.event.triggered)) {
+ return;
+ }
+ if (type.indexOf(".") > -1) {
+ namespaces = type.split(".");
+ type = namespaces.shift();
+ namespaces.sort();
+ }
+ ontype = type.indexOf(":") < 0 && "on" + type;
+ event = event[jQuery.expando] ? event : new jQuery.Event(type, typeof event === "object" && event);
+ event.isTrigger = onlyHandlers ? 2 : 3;
+ event.namespace = namespaces.join(".");
+ event.rnamespace = event.namespace ? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
+ event.result = void 0;
+ if (!event.target) {
+ event.target = elem;
+ }
+ data = data == null ? [event] : jQuery.makeArray(data, [event]);
+ special = jQuery.event.special[type] || {};
+ if (!onlyHandlers && special.trigger && special.trigger.apply(elem, data) === false) {
+ return;
+ }
+ if (!onlyHandlers && !special.noBubble && !isWindow(elem)) {
+ bubbleType = special.delegateType || type;
+ if (!rfocusMorph.test(bubbleType + type)) {
+ cur = cur.parentNode;
+ }
+ for (; cur; cur = cur.parentNode) {
+ eventPath.push(cur);
+ tmp = cur;
+ }
+ if (tmp === (elem.ownerDocument || document2)) {
+ eventPath.push(tmp.defaultView || tmp.parentWindow || window2);
+ }
+ }
+ i = 0;
+ while ((cur = eventPath[i++]) && !event.isPropagationStopped()) {
+ lastElement = cur;
+ event.type = i > 1 ? bubbleType : special.bindType || type;
+ handle = (dataPriv.get(cur, "events") || Object.create(null))[event.type] && dataPriv.get(cur, "handle");
+ if (handle) {
+ handle.apply(cur, data);
+ }
+ handle = ontype && cur[ontype];
+ if (handle && handle.apply && acceptData(cur)) {
+ event.result = handle.apply(cur, data);
+ if (event.result === false) {
+ event.preventDefault();
+ }
+ }
+ }
+ event.type = type;
+ if (!onlyHandlers && !event.isDefaultPrevented()) {
+ if ((!special._default || special._default.apply(eventPath.pop(), data) === false) && acceptData(elem)) {
+ if (ontype && isFunction(elem[type]) && !isWindow(elem)) {
+ tmp = elem[ontype];
+ if (tmp) {
+ elem[ontype] = null;
+ }
+ jQuery.event.triggered = type;
+ if (event.isPropagationStopped()) {
+ lastElement.addEventListener(type, stopPropagationCallback);
+ }
+ elem[type]();
+ if (event.isPropagationStopped()) {
+ lastElement.removeEventListener(type, stopPropagationCallback);
+ }
+ jQuery.event.triggered = void 0;
+ if (tmp) {
+ elem[ontype] = tmp;
+ }
+ }
+ }
+ }
+ return event.result;
+ },
+ simulate: function(type, elem, event) {
+ var e = jQuery.extend(new jQuery.Event(), event, {
+ type,
+ isSimulated: true
+ });
+ jQuery.event.trigger(e, null, elem);
+ }
+ });
+ jQuery.fn.extend({
+ trigger: function(type, data) {
+ return this.each(function() {
+ jQuery.event.trigger(type, data, this);
+ });
+ },
+ triggerHandler: function(type, data) {
+ var elem = this[0];
+ if (elem) {
+ return jQuery.event.trigger(type, data, elem, true);
+ }
+ }
+ });
+ if (!support.focusin) {
+ jQuery.each({ focus: "focusin", blur: "focusout" }, function(orig, fix) {
+ var handler = function(event) {
+ jQuery.event.simulate(fix, event.target, jQuery.event.fix(event));
+ };
+ jQuery.event.special[fix] = {
+ setup: function() {
+ var doc2 = this.ownerDocument || this.document || this, attaches = dataPriv.access(doc2, fix);
+ if (!attaches) {
+ doc2.addEventListener(orig, handler, true);
+ }
+ dataPriv.access(doc2, fix, (attaches || 0) + 1);
+ },
+ teardown: function() {
+ var doc2 = this.ownerDocument || this.document || this, attaches = dataPriv.access(doc2, fix) - 1;
+ if (!attaches) {
+ doc2.removeEventListener(orig, handler, true);
+ dataPriv.remove(doc2, fix);
+ } else {
+ dataPriv.access(doc2, fix, attaches);
+ }
+ }
+ };
+ });
+ }
+ var location2 = window2.location;
+ var nonce = { guid: Date.now() };
+ var rquery = /\?/;
+ jQuery.parseXML = function(data) {
+ var xml, parserErrorElem;
+ if (!data || typeof data !== "string") {
+ return null;
+ }
+ try {
+ xml = new window2.DOMParser().parseFromString(data, "text/xml");
+ } catch (e) {
+ }
+ parserErrorElem = xml && xml.getElementsByTagName("parsererror")[0];
+ if (!xml || parserErrorElem) {
+ jQuery.error("Invalid XML: " + (parserErrorElem ? jQuery.map(parserErrorElem.childNodes, function(el) {
+ return el.textContent;
+ }).join("\n") : data));
+ }
+ return xml;
+ };
+ var rbracket = /\[\]$/, rCRLF = /\r?\n/g, rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, rsubmittable = /^(?:input|select|textarea|keygen)/i;
+ function buildParams(prefix, obj, traditional, add) {
+ var name;
+ if (Array.isArray(obj)) {
+ jQuery.each(obj, function(i, v) {
+ if (traditional || rbracket.test(prefix)) {
+ add(prefix, v);
+ } else {
+ buildParams(prefix + "[" + (typeof v === "object" && v != null ? i : "") + "]", v, traditional, add);
+ }
+ });
+ } else if (!traditional && toType2(obj) === "object") {
+ for (name in obj) {
+ buildParams(prefix + "[" + name + "]", obj[name], traditional, add);
+ }
+ } else {
+ add(prefix, obj);
+ }
+ }
+ jQuery.param = function(a, traditional) {
+ var prefix, s = [], add = function(key, valueOrFunction) {
+ var value = isFunction(valueOrFunction) ? valueOrFunction() : valueOrFunction;
+ s[s.length] = encodeURIComponent(key) + "=" + encodeURIComponent(value == null ? "" : value);
+ };
+ if (a == null) {
+ return "";
+ }
+ if (Array.isArray(a) || a.jquery && !jQuery.isPlainObject(a)) {
+ jQuery.each(a, function() {
+ add(this.name, this.value);
+ });
+ } else {
+ for (prefix in a) {
+ buildParams(prefix, a[prefix], traditional, add);
+ }
+ }
+ return s.join("&");
+ };
+ jQuery.fn.extend({
+ serialize: function() {
+ return jQuery.param(this.serializeArray());
+ },
+ serializeArray: function() {
+ return this.map(function() {
+ var elements = jQuery.prop(this, "elements");
+ return elements ? jQuery.makeArray(elements) : this;
+ }).filter(function() {
+ var type = this.type;
+ return this.name && !jQuery(this).is(":disabled") && rsubmittable.test(this.nodeName) && !rsubmitterTypes.test(type) && (this.checked || !rcheckableType.test(type));
+ }).map(function(_i, elem) {
+ var val = jQuery(this).val();
+ if (val == null) {
+ return null;
+ }
+ if (Array.isArray(val)) {
+ return jQuery.map(val, function(val2) {
+ return { name: elem.name, value: val2.replace(rCRLF, "\r\n") };
+ });
+ }
+ return { name: elem.name, value: val.replace(rCRLF, "\r\n") };
+ }).get();
+ }
+ });
+ var r20 = /%20/g, rhash = /#.*$/, rantiCache = /([?&])_=[^&]*/, rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, rnoContent = /^(?:GET|HEAD)$/, rprotocol = /^\/\//, prefilters = {}, transports = {}, allTypes = "*/".concat("*"), originAnchor = document2.createElement("a");
+ originAnchor.href = location2.href;
+ function addToPrefiltersOrTransports(structure) {
+ return function(dataTypeExpression, func) {
+ if (typeof dataTypeExpression !== "string") {
+ func = dataTypeExpression;
+ dataTypeExpression = "*";
+ }
+ var dataType, i = 0, dataTypes = dataTypeExpression.toLowerCase().match(rnothtmlwhite) || [];
+ if (isFunction(func)) {
+ while (dataType = dataTypes[i++]) {
+ if (dataType[0] === "+") {
+ dataType = dataType.slice(1) || "*";
+ (structure[dataType] = structure[dataType] || []).unshift(func);
+ } else {
+ (structure[dataType] = structure[dataType] || []).push(func);
+ }
+ }
+ }
+ };
+ }
+ function inspectPrefiltersOrTransports(structure, options, originalOptions, jqXHR) {
+ var inspected = {}, seekingTransport = structure === transports;
+ function inspect(dataType) {
+ var selected;
+ inspected[dataType] = true;
+ jQuery.each(structure[dataType] || [], function(_, prefilterOrFactory) {
+ var dataTypeOrTransport = prefilterOrFactory(options, originalOptions, jqXHR);
+ if (typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[dataTypeOrTransport]) {
+ options.dataTypes.unshift(dataTypeOrTransport);
+ inspect(dataTypeOrTransport);
+ return false;
+ } else if (seekingTransport) {
+ return !(selected = dataTypeOrTransport);
+ }
+ });
+ return selected;
+ }
+ return inspect(options.dataTypes[0]) || !inspected["*"] && inspect("*");
+ }
+ function ajaxExtend(target, src) {
+ var key, deep, flatOptions = jQuery.ajaxSettings.flatOptions || {};
+ for (key in src) {
+ if (src[key] !== void 0) {
+ (flatOptions[key] ? target : deep || (deep = {}))[key] = src[key];
+ }
+ }
+ if (deep) {
+ jQuery.extend(true, target, deep);
+ }
+ return target;
+ }
+ function ajaxHandleResponses(s, jqXHR, responses) {
+ var ct, type, finalDataType, firstDataType, contents = s.contents, dataTypes = s.dataTypes;
+ while (dataTypes[0] === "*") {
+ dataTypes.shift();
+ if (ct === void 0) {
+ ct = s.mimeType || jqXHR.getResponseHeader("Content-Type");
+ }
+ }
+ if (ct) {
+ for (type in contents) {
+ if (contents[type] && contents[type].test(ct)) {
+ dataTypes.unshift(type);
+ break;
+ }
+ }
+ }
+ if (dataTypes[0] in responses) {
+ finalDataType = dataTypes[0];
+ } else {
+ for (type in responses) {
+ if (!dataTypes[0] || s.converters[type + " " + dataTypes[0]]) {
+ finalDataType = type;
+ break;
+ }
+ if (!firstDataType) {
+ firstDataType = type;
+ }
+ }
+ finalDataType = finalDataType || firstDataType;
+ }
+ if (finalDataType) {
+ if (finalDataType !== dataTypes[0]) {
+ dataTypes.unshift(finalDataType);
+ }
+ return responses[finalDataType];
+ }
+ }
+ function ajaxConvert(s, response, jqXHR, isSuccess) {
+ var conv2, current, conv, tmp, prev, converters = {}, dataTypes = s.dataTypes.slice();
+ if (dataTypes[1]) {
+ for (conv in s.converters) {
+ converters[conv.toLowerCase()] = s.converters[conv];
+ }
+ }
+ current = dataTypes.shift();
+ while (current) {
+ if (s.responseFields[current]) {
+ jqXHR[s.responseFields[current]] = response;
+ }
+ if (!prev && isSuccess && s.dataFilter) {
+ response = s.dataFilter(response, s.dataType);
+ }
+ prev = current;
+ current = dataTypes.shift();
+ if (current) {
+ if (current === "*") {
+ current = prev;
+ } else if (prev !== "*" && prev !== current) {
+ conv = converters[prev + " " + current] || converters["* " + current];
+ if (!conv) {
+ for (conv2 in converters) {
+ tmp = conv2.split(" ");
+ if (tmp[1] === current) {
+ conv = converters[prev + " " + tmp[0]] || converters["* " + tmp[0]];
+ if (conv) {
+ if (conv === true) {
+ conv = converters[conv2];
+ } else if (converters[conv2] !== true) {
+ current = tmp[0];
+ dataTypes.unshift(tmp[1]);
+ }
+ break;
+ }
+ }
+ }
+ }
+ if (conv !== true) {
+ if (conv && s.throws) {
+ response = conv(response);
+ } else {
+ try {
+ response = conv(response);
+ } catch (e) {
+ return {
+ state: "parsererror",
+ error: conv ? e : "No conversion from " + prev + " to " + current
+ };
+ }
+ }
+ }
+ }
+ }
+ }
+ return { state: "success", data: response };
+ }
+ jQuery.extend({
+ active: 0,
+ lastModified: {},
+ etag: {},
+ ajaxSettings: {
+ url: location2.href,
+ type: "GET",
+ isLocal: rlocalProtocol.test(location2.protocol),
+ global: true,
+ processData: true,
+ async: true,
+ contentType: "application/x-www-form-urlencoded; charset=UTF-8",
+ accepts: {
+ "*": allTypes,
+ text: "text/plain",
+ html: "text/html",
+ xml: "application/xml, text/xml",
+ json: "application/json, text/javascript"
+ },
+ contents: {
+ xml: /\bxml\b/,
+ html: /\bhtml/,
+ json: /\bjson\b/
+ },
+ responseFields: {
+ xml: "responseXML",
+ text: "responseText",
+ json: "responseJSON"
+ },
+ converters: {
+ "* text": String,
+ "text html": true,
+ "text json": JSON.parse,
+ "text xml": jQuery.parseXML
+ },
+ flatOptions: {
+ url: true,
+ context: true
+ }
+ },
+ ajaxSetup: function(target, settings) {
+ return settings ? ajaxExtend(ajaxExtend(target, jQuery.ajaxSettings), settings) : ajaxExtend(jQuery.ajaxSettings, target);
+ },
+ ajaxPrefilter: addToPrefiltersOrTransports(prefilters),
+ ajaxTransport: addToPrefiltersOrTransports(transports),
+ ajax: function(url, options) {
+ if (typeof url === "object") {
+ options = url;
+ url = void 0;
+ }
+ options = options || {};
+ var transport, cacheURL, responseHeadersString, responseHeaders, timeoutTimer, urlAnchor, completed2, fireGlobals, i, uncached, s = jQuery.ajaxSetup({}, options), callbackContext = s.context || s, globalEventContext = s.context && (callbackContext.nodeType || callbackContext.jquery) ? jQuery(callbackContext) : jQuery.event, deferred = jQuery.Deferred(), completeDeferred = jQuery.Callbacks("once memory"), statusCode = s.statusCode || {}, requestHeaders = {}, requestHeadersNames = {}, strAbort = "canceled", jqXHR = {
+ readyState: 0,
+ getResponseHeader: function(key) {
+ var match;
+ if (completed2) {
+ if (!responseHeaders) {
+ responseHeaders = {};
+ while (match = rheaders.exec(responseHeadersString)) {
+ responseHeaders[match[1].toLowerCase() + " "] = (responseHeaders[match[1].toLowerCase() + " "] || []).concat(match[2]);
+ }
+ }
+ match = responseHeaders[key.toLowerCase() + " "];
+ }
+ return match == null ? null : match.join(", ");
+ },
+ getAllResponseHeaders: function() {
+ return completed2 ? responseHeadersString : null;
+ },
+ setRequestHeader: function(name, value) {
+ if (completed2 == null) {
+ name = requestHeadersNames[name.toLowerCase()] = requestHeadersNames[name.toLowerCase()] || name;
+ requestHeaders[name] = value;
+ }
+ return this;
+ },
+ overrideMimeType: function(type) {
+ if (completed2 == null) {
+ s.mimeType = type;
+ }
+ return this;
+ },
+ statusCode: function(map) {
+ var code;
+ if (map) {
+ if (completed2) {
+ jqXHR.always(map[jqXHR.status]);
+ } else {
+ for (code in map) {
+ statusCode[code] = [statusCode[code], map[code]];
+ }
+ }
+ }
+ return this;
+ },
+ abort: function(statusText) {
+ var finalText = statusText || strAbort;
+ if (transport) {
+ transport.abort(finalText);
+ }
+ done(0, finalText);
+ return this;
+ }
+ };
+ deferred.promise(jqXHR);
+ s.url = ((url || s.url || location2.href) + "").replace(rprotocol, location2.protocol + "//");
+ s.type = options.method || options.type || s.method || s.type;
+ s.dataTypes = (s.dataType || "*").toLowerCase().match(rnothtmlwhite) || [""];
+ if (s.crossDomain == null) {
+ urlAnchor = document2.createElement("a");
+ try {
+ urlAnchor.href = s.url;
+ urlAnchor.href = urlAnchor.href;
+ s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== urlAnchor.protocol + "//" + urlAnchor.host;
+ } catch (e) {
+ s.crossDomain = true;
+ }
+ }
+ if (s.data && s.processData && typeof s.data !== "string") {
+ s.data = jQuery.param(s.data, s.traditional);
+ }
+ inspectPrefiltersOrTransports(prefilters, s, options, jqXHR);
+ if (completed2) {
+ return jqXHR;
+ }
+ fireGlobals = jQuery.event && s.global;
+ if (fireGlobals && jQuery.active++ === 0) {
+ jQuery.event.trigger("ajaxStart");
+ }
+ s.type = s.type.toUpperCase();
+ s.hasContent = !rnoContent.test(s.type);
+ cacheURL = s.url.replace(rhash, "");
+ if (!s.hasContent) {
+ uncached = s.url.slice(cacheURL.length);
+ if (s.data && (s.processData || typeof s.data === "string")) {
+ cacheURL += (rquery.test(cacheURL) ? "&" : "?") + s.data;
+ delete s.data;
+ }
+ if (s.cache === false) {
+ cacheURL = cacheURL.replace(rantiCache, "$1");
+ uncached = (rquery.test(cacheURL) ? "&" : "?") + "_=" + nonce.guid++ + uncached;
+ }
+ s.url = cacheURL + uncached;
+ } else if (s.data && s.processData && (s.contentType || "").indexOf("application/x-www-form-urlencoded") === 0) {
+ s.data = s.data.replace(r20, "+");
+ }
+ if (s.ifModified) {
+ if (jQuery.lastModified[cacheURL]) {
+ jqXHR.setRequestHeader("If-Modified-Since", jQuery.lastModified[cacheURL]);
+ }
+ if (jQuery.etag[cacheURL]) {
+ jqXHR.setRequestHeader("If-None-Match", jQuery.etag[cacheURL]);
+ }
+ }
+ if (s.data && s.hasContent && s.contentType !== false || options.contentType) {
+ jqXHR.setRequestHeader("Content-Type", s.contentType);
+ }
+ jqXHR.setRequestHeader("Accept", s.dataTypes[0] && s.accepts[s.dataTypes[0]] ? s.accepts[s.dataTypes[0]] + (s.dataTypes[0] !== "*" ? ", " + allTypes + "; q=0.01" : "") : s.accepts["*"]);
+ for (i in s.headers) {
+ jqXHR.setRequestHeader(i, s.headers[i]);
+ }
+ if (s.beforeSend && (s.beforeSend.call(callbackContext, jqXHR, s) === false || completed2)) {
+ return jqXHR.abort();
+ }
+ strAbort = "abort";
+ completeDeferred.add(s.complete);
+ jqXHR.done(s.success);
+ jqXHR.fail(s.error);
+ transport = inspectPrefiltersOrTransports(transports, s, options, jqXHR);
+ if (!transport) {
+ done(-1, "No Transport");
+ } else {
+ jqXHR.readyState = 1;
+ if (fireGlobals) {
+ globalEventContext.trigger("ajaxSend", [jqXHR, s]);
+ }
+ if (completed2) {
+ return jqXHR;
+ }
+ if (s.async && s.timeout > 0) {
+ timeoutTimer = window2.setTimeout(function() {
+ jqXHR.abort("timeout");
+ }, s.timeout);
+ }
+ try {
+ completed2 = false;
+ transport.send(requestHeaders, done);
+ } catch (e) {
+ if (completed2) {
+ throw e;
+ }
+ done(-1, e);
+ }
+ }
+ function done(status, nativeStatusText, responses, headers) {
+ var isSuccess, success, error, response, modified, statusText = nativeStatusText;
+ if (completed2) {
+ return;
+ }
+ completed2 = true;
+ if (timeoutTimer) {
+ window2.clearTimeout(timeoutTimer);
+ }
+ transport = void 0;
+ responseHeadersString = headers || "";
+ jqXHR.readyState = status > 0 ? 4 : 0;
+ isSuccess = status >= 200 && status < 300 || status === 304;
+ if (responses) {
+ response = ajaxHandleResponses(s, jqXHR, responses);
+ }
+ if (!isSuccess && jQuery.inArray("script", s.dataTypes) > -1 && jQuery.inArray("json", s.dataTypes) < 0) {
+ s.converters["text script"] = function() {
+ };
+ }
+ response = ajaxConvert(s, response, jqXHR, isSuccess);
+ if (isSuccess) {
+ if (s.ifModified) {
+ modified = jqXHR.getResponseHeader("Last-Modified");
+ if (modified) {
+ jQuery.lastModified[cacheURL] = modified;
+ }
+ modified = jqXHR.getResponseHeader("etag");
+ if (modified) {
+ jQuery.etag[cacheURL] = modified;
+ }
+ }
+ if (status === 204 || s.type === "HEAD") {
+ statusText = "nocontent";
+ } else if (status === 304) {
+ statusText = "notmodified";
+ } else {
+ statusText = response.state;
+ success = response.data;
+ error = response.error;
+ isSuccess = !error;
+ }
+ } else {
+ error = statusText;
+ if (status || !statusText) {
+ statusText = "error";
+ if (status < 0) {
+ status = 0;
+ }
+ }
+ }
+ jqXHR.status = status;
+ jqXHR.statusText = (nativeStatusText || statusText) + "";
+ if (isSuccess) {
+ deferred.resolveWith(callbackContext, [success, statusText, jqXHR]);
+ } else {
+ deferred.rejectWith(callbackContext, [jqXHR, statusText, error]);
+ }
+ jqXHR.statusCode(statusCode);
+ statusCode = void 0;
+ if (fireGlobals) {
+ globalEventContext.trigger(isSuccess ? "ajaxSuccess" : "ajaxError", [jqXHR, s, isSuccess ? success : error]);
+ }
+ completeDeferred.fireWith(callbackContext, [jqXHR, statusText]);
+ if (fireGlobals) {
+ globalEventContext.trigger("ajaxComplete", [jqXHR, s]);
+ if (!--jQuery.active) {
+ jQuery.event.trigger("ajaxStop");
+ }
+ }
+ }
+ return jqXHR;
+ },
+ getJSON: function(url, data, callback) {
+ return jQuery.get(url, data, callback, "json");
+ },
+ getScript: function(url, callback) {
+ return jQuery.get(url, void 0, callback, "script");
+ }
+ });
+ jQuery.each(["get", "post"], function(_i, method) {
+ jQuery[method] = function(url, data, callback, type) {
+ if (isFunction(data)) {
+ type = type || callback;
+ callback = data;
+ data = void 0;
+ }
+ return jQuery.ajax(jQuery.extend({
+ url,
+ type: method,
+ dataType: type,
+ data,
+ success: callback
+ }, jQuery.isPlainObject(url) && url));
+ };
+ });
+ jQuery.ajaxPrefilter(function(s) {
+ var i;
+ for (i in s.headers) {
+ if (i.toLowerCase() === "content-type") {
+ s.contentType = s.headers[i] || "";
+ }
+ }
+ });
+ jQuery._evalUrl = function(url, options, doc2) {
+ return jQuery.ajax({
+ url,
+ type: "GET",
+ dataType: "script",
+ cache: true,
+ async: false,
+ global: false,
+ converters: {
+ "text script": function() {
+ }
+ },
+ dataFilter: function(response) {
+ jQuery.globalEval(response, options, doc2);
+ }
+ });
+ };
+ jQuery.fn.extend({
+ wrapAll: function(html) {
+ var wrap;
+ if (this[0]) {
+ if (isFunction(html)) {
+ html = html.call(this[0]);
+ }
+ wrap = jQuery(html, this[0].ownerDocument).eq(0).clone(true);
+ if (this[0].parentNode) {
+ wrap.insertBefore(this[0]);
+ }
+ wrap.map(function() {
+ var elem = this;
+ while (elem.firstElementChild) {
+ elem = elem.firstElementChild;
+ }
+ return elem;
+ }).append(this);
+ }
+ return this;
+ },
+ wrapInner: function(html) {
+ if (isFunction(html)) {
+ return this.each(function(i) {
+ jQuery(this).wrapInner(html.call(this, i));
+ });
+ }
+ return this.each(function() {
+ var self2 = jQuery(this), contents = self2.contents();
+ if (contents.length) {
+ contents.wrapAll(html);
+ } else {
+ self2.append(html);
+ }
+ });
+ },
+ wrap: function(html) {
+ var htmlIsFunction = isFunction(html);
+ return this.each(function(i) {
+ jQuery(this).wrapAll(htmlIsFunction ? html.call(this, i) : html);
+ });
+ },
+ unwrap: function(selector) {
+ this.parent(selector).not("body").each(function() {
+ jQuery(this).replaceWith(this.childNodes);
+ });
+ return this;
+ }
+ });
+ jQuery.expr.pseudos.hidden = function(elem) {
+ return !jQuery.expr.pseudos.visible(elem);
+ };
+ jQuery.expr.pseudos.visible = function(elem) {
+ return !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);
+ };
+ jQuery.ajaxSettings.xhr = function() {
+ try {
+ return new window2.XMLHttpRequest();
+ } catch (e) {
+ }
+ };
+ var xhrSuccessStatus = {
+ 0: 200,
+ 1223: 204
+ }, xhrSupported = jQuery.ajaxSettings.xhr();
+ support.cors = !!xhrSupported && "withCredentials" in xhrSupported;
+ support.ajax = xhrSupported = !!xhrSupported;
+ jQuery.ajaxTransport(function(options) {
+ var callback, errorCallback;
+ if (support.cors || xhrSupported && !options.crossDomain) {
+ return {
+ send: function(headers, complete) {
+ var i, xhr = options.xhr();
+ xhr.open(options.type, options.url, options.async, options.username, options.password);
+ if (options.xhrFields) {
+ for (i in options.xhrFields) {
+ xhr[i] = options.xhrFields[i];
+ }
+ }
+ if (options.mimeType && xhr.overrideMimeType) {
+ xhr.overrideMimeType(options.mimeType);
+ }
+ if (!options.crossDomain && !headers["X-Requested-With"]) {
+ headers["X-Requested-With"] = "XMLHttpRequest";
+ }
+ for (i in headers) {
+ xhr.setRequestHeader(i, headers[i]);
+ }
+ callback = function(type) {
+ return function() {
+ if (callback) {
+ callback = errorCallback = xhr.onload = xhr.onerror = xhr.onabort = xhr.ontimeout = xhr.onreadystatechange = null;
+ if (type === "abort") {
+ xhr.abort();
+ } else if (type === "error") {
+ if (typeof xhr.status !== "number") {
+ complete(0, "error");
+ } else {
+ complete(xhr.status, xhr.statusText);
+ }
+ } else {
+ complete(xhrSuccessStatus[xhr.status] || xhr.status, xhr.statusText, (xhr.responseType || "text") !== "text" || typeof xhr.responseText !== "string" ? { binary: xhr.response } : { text: xhr.responseText }, xhr.getAllResponseHeaders());
+ }
+ }
+ };
+ };
+ xhr.onload = callback();
+ errorCallback = xhr.onerror = xhr.ontimeout = callback("error");
+ if (xhr.onabort !== void 0) {
+ xhr.onabort = errorCallback;
+ } else {
+ xhr.onreadystatechange = function() {
+ if (xhr.readyState === 4) {
+ window2.setTimeout(function() {
+ if (callback) {
+ errorCallback();
+ }
+ });
+ }
+ };
+ }
+ callback = callback("abort");
+ try {
+ xhr.send(options.hasContent && options.data || null);
+ } catch (e) {
+ if (callback) {
+ throw e;
+ }
+ }
+ },
+ abort: function() {
+ if (callback) {
+ callback();
+ }
+ }
+ };
+ }
+ });
+ jQuery.ajaxPrefilter(function(s) {
+ if (s.crossDomain) {
+ s.contents.script = false;
+ }
+ });
+ jQuery.ajaxSetup({
+ accepts: {
+ script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
+ },
+ contents: {
+ script: /\b(?:java|ecma)script\b/
+ },
+ converters: {
+ "text script": function(text) {
+ jQuery.globalEval(text);
+ return text;
+ }
+ }
+ });
+ jQuery.ajaxPrefilter("script", function(s) {
+ if (s.cache === void 0) {
+ s.cache = false;
+ }
+ if (s.crossDomain) {
+ s.type = "GET";
+ }
+ });
+ jQuery.ajaxTransport("script", function(s) {
+ if (s.crossDomain || s.scriptAttrs) {
+ var script, callback;
+ return {
+ send: function(_, complete) {
+ script = jQuery("<script>").attr(s.scriptAttrs || {}).prop({ charset: s.scriptCharset, src: s.url }).on("load error", callback = function(evt) {
+ script.remove();
+ callback = null;
+ if (evt) {
+ complete(evt.type === "error" ? 404 : 200, evt.type);
+ }
+ });
+ document2.head.appendChild(script[0]);
+ },
+ abort: function() {
+ if (callback) {
+ callback();
+ }
+ }
+ };
+ }
+ });
+ var oldCallbacks = [], rjsonp = /(=)\?(?=&|$)|\?\?/;
+ jQuery.ajaxSetup({
+ jsonp: "callback",
+ jsonpCallback: function() {
+ var callback = oldCallbacks.pop() || jQuery.expando + "_" + nonce.guid++;
+ this[callback] = true;
+ return callback;
+ }
+ });
+ jQuery.ajaxPrefilter("json jsonp", function(s, originalSettings, jqXHR) {
+ var callbackName, overwritten, responseContainer, jsonProp = s.jsonp !== false && (rjsonp.test(s.url) ? "url" : typeof s.data === "string" && (s.contentType || "").indexOf("application/x-www-form-urlencoded") === 0 && rjsonp.test(s.data) && "data");
+ if (jsonProp || s.dataTypes[0] === "jsonp") {
+ callbackName = s.jsonpCallback = isFunction(s.jsonpCallback) ? s.jsonpCallback() : s.jsonpCallback;
+ if (jsonProp) {
+ s[jsonProp] = s[jsonProp].replace(rjsonp, "$1" + callbackName);
+ } else if (s.jsonp !== false) {
+ s.url += (rquery.test(s.url) ? "&" : "?") + s.jsonp + "=" + callbackName;
+ }
+ s.converters["script json"] = function() {
+ if (!responseContainer) {
+ jQuery.error(callbackName + " was not called");
+ }
+ return responseContainer[0];
+ };
+ s.dataTypes[0] = "json";
+ overwritten = window2[callbackName];
+ window2[callbackName] = function() {
+ responseContainer = arguments;
+ };
+ jqXHR.always(function() {
+ if (overwritten === void 0) {
+ jQuery(window2).removeProp(callbackName);
+ } else {
+ window2[callbackName] = overwritten;
+ }
+ if (s[callbackName]) {
+ s.jsonpCallback = originalSettings.jsonpCallback;
+ oldCallbacks.push(callbackName);
+ }
+ if (responseContainer && isFunction(overwritten)) {
+ overwritten(responseContainer[0]);
+ }
+ responseContainer = overwritten = void 0;
+ });
+ return "script";
+ }
+ });
+ support.createHTMLDocument = function() {
+ var body = document2.implementation.createHTMLDocument("").body;
+ body.innerHTML = "<form></form><form></form>";
+ return body.childNodes.length === 2;
+ }();
+ jQuery.parseHTML = function(data, context, keepScripts) {
+ if (typeof data !== "string") {
+ return [];
+ }
+ if (typeof context === "boolean") {
+ keepScripts = context;
+ context = false;
+ }
+ var base, parsed, scripts;
+ if (!context) {
+ if (support.createHTMLDocument) {
+ context = document2.implementation.createHTMLDocument("");
+ base = context.createElement("base");
+ base.href = document2.location.href;
+ context.head.appendChild(base);
+ } else {
+ context = document2;
+ }
+ }
+ parsed = rsingleTag.exec(data);
+ scripts = !keepScripts && [];
+ if (parsed) {
+ return [context.createElement(parsed[1])];
+ }
+ parsed = buildFragment([data], context, scripts);
+ if (scripts && scripts.length) {
+ jQuery(scripts).remove();
+ }
+ return jQuery.merge([], parsed.childNodes);
+ };
+ jQuery.fn.load = function(url, params, callback) {
+ var selector, type, response, self2 = this, off = url.indexOf(" ");
+ if (off > -1) {
+ selector = stripAndCollapse(url.slice(off));
+ url = url.slice(0, off);
+ }
+ if (isFunction(params)) {
+ callback = params;
+ params = void 0;
+ } else if (params && typeof params === "object") {
+ type = "POST";
+ }
+ if (self2.length > 0) {
+ jQuery.ajax({
+ url,
+ type: type || "GET",
+ dataType: "html",
+ data: params
+ }).done(function(responseText) {
+ response = arguments;
+ self2.html(selector ? jQuery("<div>").append(jQuery.parseHTML(responseText)).find(selector) : responseText);
+ }).always(callback && function(jqXHR, status) {
+ self2.each(function() {
+ callback.apply(this, response || [jqXHR.responseText, status, jqXHR]);
+ });
+ });
+ }
+ return this;
+ };
+ jQuery.expr.pseudos.animated = function(elem) {
+ return jQuery.grep(jQuery.timers, function(fn2) {
+ return elem === fn2.elem;
+ }).length;
+ };
+ jQuery.offset = {
+ setOffset: function(elem, options, i) {
+ var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition, position = jQuery.css(elem, "position"), curElem = jQuery(elem), props = {};
+ if (position === "static") {
+ elem.style.position = "relative";
+ }
+ curOffset = curElem.offset();
+ curCSSTop = jQuery.css(elem, "top");
+ curCSSLeft = jQuery.css(elem, "left");
+ calculatePosition = (position === "absolute" || position === "fixed") && (curCSSTop + curCSSLeft).indexOf("auto") > -1;
+ if (calculatePosition) {
+ curPosition = curElem.position();
+ curTop = curPosition.top;
+ curLeft = curPosition.left;
+ } else {
+ curTop = parseFloat(curCSSTop) || 0;
+ curLeft = parseFloat(curCSSLeft) || 0;
+ }
+ if (isFunction(options)) {
+ options = options.call(elem, i, jQuery.extend({}, curOffset));
+ }
+ if (options.top != null) {
+ props.top = options.top - curOffset.top + curTop;
+ }
+ if (options.left != null) {
+ props.left = options.left - curOffset.left + curLeft;
+ }
+ if ("using" in options) {
+ options.using.call(elem, props);
+ } else {
+ curElem.css(props);
+ }
+ }
+ };
+ jQuery.fn.extend({
+ offset: function(options) {
+ if (arguments.length) {
+ return options === void 0 ? this : this.each(function(i) {
+ jQuery.offset.setOffset(this, options, i);
+ });
+ }
+ var rect, win, elem = this[0];
+ if (!elem) {
+ return;
+ }
+ if (!elem.getClientRects().length) {
+ return { top: 0, left: 0 };
+ }
+ rect = elem.getBoundingClientRect();
+ win = elem.ownerDocument.defaultView;
+ return {
+ top: rect.top + win.pageYOffset,
+ left: rect.left + win.pageXOffset
+ };
+ },
+ position: function() {
+ if (!this[0]) {
+ return;
+ }
+ var offsetParent, offset2, doc2, elem = this[0], parentOffset = { top: 0, left: 0 };
+ if (jQuery.css(elem, "position") === "fixed") {
+ offset2 = elem.getBoundingClientRect();
+ } else {
+ offset2 = this.offset();
+ doc2 = elem.ownerDocument;
+ offsetParent = elem.offsetParent || doc2.documentElement;
+ while (offsetParent && (offsetParent === doc2.body || offsetParent === doc2.documentElement) && jQuery.css(offsetParent, "position") === "static") {
+ offsetParent = offsetParent.parentNode;
+ }
+ if (offsetParent && offsetParent !== elem && offsetParent.nodeType === 1) {
+ parentOffset = jQuery(offsetParent).offset();
+ parentOffset.top += jQuery.css(offsetParent, "borderTopWidth", true);
+ parentOffset.left += jQuery.css(offsetParent, "borderLeftWidth", true);
+ }
+ }
+ return {
+ top: offset2.top - parentOffset.top - jQuery.css(elem, "marginTop", true),
+ left: offset2.left - parentOffset.left - jQuery.css(elem, "marginLeft", true)
+ };
+ },
+ offsetParent: function() {
+ return this.map(function() {
+ var offsetParent = this.offsetParent;
+ while (offsetParent && jQuery.css(offsetParent, "position") === "static") {
+ offsetParent = offsetParent.offsetParent;
+ }
+ return offsetParent || documentElement;
+ });
+ }
+ });
+ jQuery.each({ scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function(m