\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function Pe(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&De.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Pe(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),Le)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,He),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(je,""),u,l))}return n}function Re(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Pe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Pe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Pe(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Ie=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},We=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Fe=new RegExp(ne.join("|"),"i");function Be(e,t,n){var r,i,o,a,s=e.style;return(n=n||Ie(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Me.test(a)&&Fe.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",n.style.height="9px",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=3<parseInt(r.height),re.removeChild(e)),a}}))}();var _e=["Webkit","Moz","ms"],ze=E.createElement("div").style,Ue={};function Xe(e){var t=S.cssProps[e]||Ue[e];return t||(e in ze?e:Ue[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in ze)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Ge=/^--/,Ye={position:"absolute",visibility:"hidden",display:"block"},Qe={letterSpacing:"0",fontWeight:"400"};function Je(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ke(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Ze(e,t,n){var r=Ie(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ke(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,i){return new et.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ge.test(t),l=e.style;if(u||(t=Xe(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ge.test(t)||(t=Xe(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ve.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Ze(e,u,n):We(e,Ye,function(){return Ze(e,u,n)})},set:function(e,t,n){var r,i=Ie(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Ke(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Ke(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Je(0,t,s)}}}),S.cssHooks.marginLeft=$e(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-We(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Je)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ie(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=et).prototype={constructor:et,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}}).init.prototype=et.prototype,(et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[Xe(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=et.prototype.init,S.fx.step={};var tt,nt,rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){nt&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(st):C.setTimeout(st,S.fx.interval),S.fx.tick())}function ut(){return C.setTimeout(function(){tt=void 0}),tt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(o,e,t){var n,a,r=0,i=ft.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=tt||ut(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:tt||ut(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=ft.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ct,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=ft(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&at.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(lt(r,!0),e,t,n)}}),S.each({slideDown:lt("show"),slideUp:lt("hide"),slideToggle:lt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),tt=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){nt||(nt=!0,st())},S.fx.stop=function(){nt=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},rt=E.createElement("input"),it=E.createElement("select").appendChild(E.createElement("option")),rt.type="checkbox",y.checkOn=""!==rt.value,y.optSelected=it.selected,(rt=E.createElement("input")).value="t",rt.type="radio",y.radioValue="t"===rt.value;var pt,dt=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=dt[t]||S.find.attr;dt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=dt[o],dt[o]=r,r=null!=a(e,t,n)?o:null,dt[o]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,yt(this)))});if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,yt(this)))});if(!arguments.length)return this.attr("class","");if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,yt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=mt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=yt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+vt(yt(n))+" ").indexOf(t))return!0;return!1}});var xt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(xt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:vt(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!bt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,bt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,wt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,wt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var Tt=C.location,Ct={guid:Date.now()},Et=/\?/;S.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||S.error("Invalid XML: "+e),t};var St=/\[\]$/,kt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||St.test(n)?i(n,t):Dt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)Dt(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)Dt(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\/\//,Rt={},Mt={},It="*/".concat("*"),Wt=E.createElement("a");function Ft(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Bt(t,i,o,a){var s={},u=t===Mt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function $t(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Wt.href=Tt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,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":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,S.ajaxSettings),t):$t(S.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Ht.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Wt.protocol+"//"+Wt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Bt(Rt,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Ot.test(v.type),f=v.url.replace(qt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(jt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Et.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Lt,"$1"),o=(Et.test(f)?"&":"?")+"_="+Ct.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+It+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Bt(Mt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=S.ajaxSettings.xhr();y.cors=!!zt&&"withCredentials"in zt,y.ajax=zt=!!zt,S.ajaxTransport(function(i){var o,a;if(y.cors||zt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(_t[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=vt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Gt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Gt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Yt=C.jQuery,Qt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Qt),e&&C.jQuery===S&&(C.jQuery=Yt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
</script><script>/*!
 * clipboard.js v2.0.11
 * https://clipboardjs.com/
 *
 * Licensed MIT © Zeno Rocha
 */
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return b}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),r=n.n(e);function c(t){try{return document.execCommand(t)}catch(t){return}}var a=function(t){t=r()(t);return c("cut"),t};function o(t,e){var n,o,t=(n=t,o="rtl"===document.documentElement.getAttribute("dir"),(t=document.createElement("textarea")).style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[o?"right":"left"]="-9999px",o=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(o,"px"),t.setAttribute("readonly",""),t.value=n,t);return e.container.appendChild(t),e=r()(t),c("copy"),t.remove(),e}var f=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body},n="";return"string"==typeof t?n=o(t,e):t instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(null==t?void 0:t.type)?n=o(t.value,e):(n=r()(t),c("copy")),n};function l(t){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var s=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.action,n=void 0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==e){if(!e||"object"!==l(e)||1!==e.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return t?f(t,{container:o}):e?"cut"===n?a(e):f(e,{container:o}):void 0};function p(t){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function y(t,e){return(y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function h(n){var o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=v(n);return t=o?(t=v(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeof t?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}function v(t){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))return e.getAttribute(t)}var b=function(){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());var t,e,n,o=h(r);function r(t,e){var n;return function(t){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}return t=r,n=[{key:"copy",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body};return f(t,e)}},{key:"cut",value:function(t){return a(t)}},{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"],t="string"==typeof t?[t]:t,e=!!document.queryCommandSupported;return t.forEach(function(t){e=e&&!!document.queryCommandSupported(t)}),e}}],(e=[{key:"resolveOptions",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===p(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=u()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget,n=this.action(e)||"copy",t=s({action:n,container:this.container,target:this.target(e),text:this.text(e)});this.emit(t?"success":"error",{action:n,text:t,trigger:e,clearSelection:function(){e&&e.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){return m("action",t)}},{key:"defaultTarget",value:function(t){t=m("target",t);if(t)return document.querySelector(t)}},{key:"defaultText",value:function(t){return m("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}])&&d(t.prototype,e),n&&d(t,n),r}()},828:function(t){var e;"undefined"==typeof Element||Element.prototype.matches||((e=Element.prototype).matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector),t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},438:function(t,e,n){var u=n(828);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=u(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},879:function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,n){var f=n(879),l=n(438);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!f.string(e))throw new TypeError("Second argument must be a String");if(!f.fn(n))throw new TypeError("Third argument must be a Function");if(f.node(t))return c=e,a=n,(u=t).addEventListener(c,a),{destroy:function(){u.removeEventListener(c,a)}};if(f.nodeList(t))return o=t,r=e,i=n,Array.prototype.forEach.call(o,function(t){t.addEventListener(r,i)}),{destroy:function(){Array.prototype.forEach.call(o,function(t){t.removeEventListener(r,i)})}};if(f.string(t))return t=t,e=e,n=n,l(document.body,t,e,n);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,u,c,a}},817:function(t){t.exports=function(t){var e,n="SELECT"===t.nodeName?(t.focus(),t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((e=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),e||t.removeAttribute("readonly"),t.value):(t.hasAttribute("contenteditable")&&t.focus(),n=window.getSelection(),(e=document.createRange()).selectNodeContents(t),n.removeAllRanges(),n.addRange(e),n.toString());return n}},279:function(t){function e(){}e.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,u=o.length;i<u;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=e,t.exports.TinyEmitter=e}},r={},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o(686).default;function o(t){if(r[t])return r[t].exports;var e=r[t]={exports:{}};return n[t](e,e.exports,o),e.exports}var n,r});</script>
<script src="data:application/javascript;base64,Ly8gdGFic2V0cy90YWJzZXRzLmpzCmZ1bmN0aW9uIGluaXQoKSB7CiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IiwgKF9ldmVudCkgPT4gewogICAgZnVuY3Rpb24gZ2V0VGFiU2V0dGluZ3MoKSB7CiAgICAgIGNvbnN0IGRhdGEgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgicXVhcnRvLXBlcnNpc3RlbnQtdGFic2V0cy1kYXRhIik7CiAgICAgIGlmICghZGF0YSkgewogICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCJxdWFydG8tcGVyc2lzdGVudC10YWJzZXRzLWRhdGEiLCAie30iKTsKICAgICAgICByZXR1cm4ge307CiAgICAgIH0KICAgICAgaWYgKGRhdGEpIHsKICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShkYXRhKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gc2V0VGFiU2V0dGluZ3MoZGF0YSkgewogICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgKICAgICAgICAicXVhcnRvLXBlcnNpc3RlbnQtdGFic2V0cy1kYXRhIiwKICAgICAgICBKU09OLnN0cmluZ2lmeShkYXRhKQogICAgICApOwogICAgfQogICAgZnVuY3Rpb24gc2V0VGFiU3RhdGUoZ3JvdXBOYW1lLCBncm91cFZhbHVlKSB7CiAgICAgIGNvbnN0IGRhdGEgPSBnZXRUYWJTZXR0aW5ncygpOwogICAgICBkYXRhW2dyb3VwTmFtZV0gPSBncm91cFZhbHVlOwogICAgICBzZXRUYWJTZXR0aW5ncyhkYXRhKTsKICAgIH0KICAgIGZ1bmN0aW9uIHRvZ2dsZVRhYih0YWIsIGFjdGl2ZSkgewogICAgICBjb25zdCB0YWJQYW5lbElkID0gdGFiLmdldEF0dHJpYnV0ZSgiYXJpYS1jb250cm9scyIpOwogICAgICBjb25zdCB0YWJQYW5lbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYlBhbmVsSWQpOwogICAgICBpZiAoYWN0aXZlKSB7CiAgICAgICAgdGFiLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpOwogICAgICAgIHRhYlBhbmVsLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpOwogICAgICB9IGVsc2UgewogICAgICAgIHRhYi5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKTsKICAgICAgICB0YWJQYW5lbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKTsKICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gdG9nZ2xlQWxsKHNlbGVjdGVkR3JvdXAsIHNlbGVjdG9yc1RvU3luYzIpIHsKICAgICAgZm9yIChjb25zdCBbdGhpc0dyb3VwLCB0YWJzXSBvZiBPYmplY3QuZW50cmllcyhzZWxlY3RvcnNUb1N5bmMyKSkgewogICAgICAgIGNvbnN0IGFjdGl2ZSA9IHNlbGVjdGVkR3JvdXAgPT09IHRoaXNHcm91cDsKICAgICAgICBmb3IgKGNvbnN0IHRhYiBvZiB0YWJzKSB7CiAgICAgICAgICB0b2dnbGVUYWIodGFiLCBhY3RpdmUpOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgZnVuY3Rpb24gZmluZFNlbGVjdG9yc1RvU3luY0J5TGFuZ3VhZ2UoKSB7CiAgICAgIGNvbnN0IHJlc3VsdCA9IHt9OwogICAgICBjb25zdCB0YWJzID0gQXJyYXkuZnJvbSgKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGBkaXZbZGF0YS1ncm91cF0gYVtpZF49J3RhYnNldC0nXWApCiAgICAgICk7CiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0YWJzKSB7CiAgICAgICAgY29uc3QgZGl2ID0gaXRlbS5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudDsKICAgICAgICBjb25zdCBncm91cCA9IGRpdi5nZXRBdHRyaWJ1dGUoImRhdGEtZ3JvdXAiKTsKICAgICAgICBpZiAoIXJlc3VsdFtncm91cF0pIHsKICAgICAgICAgIHJlc3VsdFtncm91cF0gPSB7fTsKICAgICAgICB9CiAgICAgICAgY29uc3Qgc2VsZWN0b3JzVG9TeW5jMiA9IHJlc3VsdFtncm91cF07CiAgICAgICAgY29uc3QgdmFsdWUgPSBpdGVtLmlubmVySFRNTDsKICAgICAgICBpZiAoIXNlbGVjdG9yc1RvU3luYzJbdmFsdWVdKSB7CiAgICAgICAgICBzZWxlY3RvcnNUb1N5bmMyW3ZhbHVlXSA9IFtdOwogICAgICAgIH0KICAgICAgICBzZWxlY3RvcnNUb1N5bmMyW3ZhbHVlXS5wdXNoKGl0ZW0pOwogICAgICB9CiAgICAgIHJldHVybiByZXN1bHQ7CiAgICB9CiAgICBmdW5jdGlvbiBzZXR1cFNlbGVjdG9yU3luYygpIHsKICAgICAgY29uc3Qgc2VsZWN0b3JzVG9TeW5jMiA9IGZpbmRTZWxlY3RvcnNUb1N5bmNCeUxhbmd1YWdlKCk7CiAgICAgIE9iamVjdC5lbnRyaWVzKHNlbGVjdG9yc1RvU3luYzIpLmZvckVhY2goKFtncm91cCwgdGFiU2V0c0J5VmFsdWVdKSA9PiB7CiAgICAgICAgT2JqZWN0LmVudHJpZXModGFiU2V0c0J5VmFsdWUpLmZvckVhY2goKFt2YWx1ZSwgaXRlbXNdKSA9PiB7CiAgICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7CiAgICAgICAgICAgIGl0ZW0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCAoX2V2ZW50MikgPT4gewogICAgICAgICAgICAgIHNldFRhYlN0YXRlKGdyb3VwLCB2YWx1ZSk7CiAgICAgICAgICAgICAgdG9nZ2xlQWxsKHZhbHVlLCBzZWxlY3RvcnNUb1N5bmMyW2dyb3VwXSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwogICAgICByZXR1cm4gc2VsZWN0b3JzVG9TeW5jMjsKICAgIH0KICAgIGNvbnN0IHNlbGVjdG9yc1RvU3luYyA9IHNldHVwU2VsZWN0b3JTeW5jKCk7CiAgICBmb3IgKGNvbnN0IFtncm91cCwgc2VsZWN0ZWROYW1lXSBvZiBPYmplY3QuZW50cmllcyhnZXRUYWJTZXR0aW5ncygpKSkgewogICAgICBjb25zdCBzZWxlY3RvcnMgPSBzZWxlY3RvcnNUb1N5bmNbZ3JvdXBdOwogICAgICBpZiAoc2VsZWN0b3JzKSB7CiAgICAgICAgdG9nZ2xlQWxsKHNlbGVjdGVkTmFtZSwgc2VsZWN0b3JzKTsKICAgICAgfQogICAgfQogIH0pOwp9CgovLyA8c3RkaW4+CnZhciBzZWN0aW9uQ2hhbmdlZCA9IG5ldyBDdXN0b21FdmVudCgicXVhcnRvLXNlY3Rpb25DaGFuZ2VkIiwgewogIGRldGFpbDoge30sCiAgYnViYmxlczogdHJ1ZSwKICBjYW5jZWxhYmxlOiBmYWxzZSwKICBjb21wb3NlZDogZmFsc2UKfSk7CnZhciBsYXlvdXRNYXJnaW5FbHMgPSAoKSA9PiB7CiAgY29uc3QgbWFyZ2luQ2hpbGRyZW4gPSB3aW5kb3cuZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIuY29sdW1uLW1hcmdpbi5jb2x1bW4tY29udGFpbmVyID4gKiwgLm1hcmdpbi1jYXB0aW9uLCAuYXNpZGUiCiAgKTsKICBsZXQgbGFzdEJvdHRvbSA9IDA7CiAgZm9yIChjb25zdCBtYXJnaW5DaGlsZCBvZiBtYXJnaW5DaGlsZHJlbikgewogICAgaWYgKG1hcmdpbkNoaWxkLm9mZnNldFBhcmVudCAhPT0gbnVsbCkgewogICAgICBtYXJnaW5DaGlsZC5zdHlsZS5tYXJnaW5Ub3AgPSBudWxsOwogICAgICBjb25zdCB0b3AgPSBtYXJnaW5DaGlsZC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgKyB3aW5kb3cuc2Nyb2xsWTsKICAgICAgaWYgKHRvcCA8IGxhc3RCb3R0b20pIHsKICAgICAgICBjb25zdCBtYXJnaW5DaGlsZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUobWFyZ2luQ2hpbGQpOwogICAgICAgIGNvbnN0IG1hcmdpbkJvdHRvbSA9IHBhcnNlRmxvYXQobWFyZ2luQ2hpbGRTdHlsZVsibWFyZ2luQm90dG9tIl0pOwogICAgICAgIGNvbnN0IG1hcmdpbiA9IGxhc3RCb3R0b20gLSB0b3AgKyBtYXJnaW5Cb3R0b207CiAgICAgICAgbWFyZ2luQ2hpbGQuc3R5bGUubWFyZ2luVG9wID0gYCR7bWFyZ2lufXB4YDsKICAgICAgfQogICAgICBjb25zdCBzdHlsZXMgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShtYXJnaW5DaGlsZCk7CiAgICAgIGNvbnN0IG1hcmdpblRvcCA9IHBhcnNlRmxvYXQoc3R5bGVzWyJtYXJnaW5Ub3AiXSk7CiAgICAgIGxhc3RCb3R0b20gPSB0b3AgKyBtYXJnaW5DaGlsZC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgKyBtYXJnaW5Ub3A7CiAgICB9CiAgfQp9Owp3aW5kb3cuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsIGZ1bmN0aW9uKF9ldmVudCkgewogIGlmICh3aW5kb3cuUmVzaXplT2JzZXJ2ZXIpIHsKICAgIGNvbnN0IHJlc2l6ZU9ic2VydmVyID0gbmV3IHdpbmRvdy5SZXNpemVPYnNlcnZlcigKICAgICAgdGhyb3R0bGUoKCkgPT4gewogICAgICAgIGxheW91dE1hcmdpbkVscygpOwogICAgICAgIGlmICh3aW5kb3cuZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCA8IDk5MCAmJiBpc1JlYWRlck1vZGUoKSkgewogICAgICAgICAgcXVhcnRvVG9nZ2xlUmVhZGVyKCk7CiAgICAgICAgfQogICAgICB9LCA1MCkKICAgICk7CiAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKHdpbmRvdy5kb2N1bWVudC5ib2R5KTsKICB9CiAgY29uc3QgdG9jRWwgPSB3aW5kb3cuZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbmF2LnRvYy1hY3RpdmVbcm9sZT0iZG9jLXRvYyJdJyk7CiAgY29uc3Qgc2lkZWJhckVsID0gd2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWFydG8tc2lkZWJhciIpOwogIGNvbnN0IGxlZnRUb2NFbCA9IHdpbmRvdy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVhcnRvLXNpZGViYXItdG9jLWxlZnQiKTsKICBjb25zdCBtYXJnaW5TaWRlYmFyRWwgPSB3aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoCiAgICAicXVhcnRvLW1hcmdpbi1zaWRlYmFyIgogICk7CiAgY29uc3QgcHJldlNpYmxpbmdJc0FjdGl2ZUxpbmsgPSAoZWwpID0+IHsKICAgIGNvbnN0IHNpYmxpbmcgPSBlbC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nOwogICAgaWYgKHNpYmxpbmcgJiYgc2libGluZy50YWdOYW1lID09PSAiQSIpIHsKICAgICAgcmV0dXJuIHNpYmxpbmcuY2xhc3NMaXN0LmNvbnRhaW5zKCJhY3RpdmUiKTsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9OwogIGZ1bmN0aW9uIGZpcmVTbGlkZUVudGVyKCkgewogICAgY29uc3QgZXZlbnQgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkV2ZW50Iik7CiAgICBldmVudC5pbml0RXZlbnQoInNsaWRlZW50ZXIiLCB0cnVlLCB0cnVlKTsKICAgIHdpbmRvdy5kb2N1bWVudC5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICB9CiAgY29uc3QgdGFicyA9IHdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdhW2RhdGEtYnMtdG9nZ2xlPSJ0YWIiXScpOwogIHRhYnMuZm9yRWFjaCgodGFiKSA9PiB7CiAgICB0YWIuYWRkRXZlbnRMaXN0ZW5lcigic2hvd24uYnMudGFiIiwgZmlyZVNsaWRlRW50ZXIpOwogIH0pOwogIGZ1bmN0aW9uIGRpc3RwYXRjaFNoaW55RXZlbnRzKHByZXZpb3VzLCBjdXJyZW50KSB7CiAgICBpZiAod2luZG93LmpRdWVyeSkgewogICAgICBpZiAocHJldmlvdXMpIHsKICAgICAgICB3aW5kb3cualF1ZXJ5KHByZXZpb3VzKS50cmlnZ2VyKCJoaWRkZW4iKTsKICAgICAgfQogICAgICBpZiAoY3VycmVudCkgewogICAgICAgIHdpbmRvdy5qUXVlcnkoY3VycmVudCkudHJpZ2dlcigic2hvd24iKTsKICAgICAgfQogICAgfQogIH0KICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKAogICAgInRhYmJ5IiwKICAgIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgIGZpcmVTbGlkZUVudGVyKCk7CiAgICAgIGRpc3RwYXRjaFNoaW55RXZlbnRzKGV2ZW50LmRldGFpbC5wcmV2aW91c1RhYiwgZXZlbnQuZGV0YWlsLnRhYik7CiAgICB9LAogICAgZmFsc2UKICApOwogIGNvbnN0IHRvY0xpbmtzID0gdG9jRWwgPyBbLi4udG9jRWwucXVlcnlTZWxlY3RvckFsbCgiYVtkYXRhLXNjcm9sbC10YXJnZXRdIildIDogW107CiAgY29uc3QgbWFrZUFjdGl2ZSA9IChsaW5rKSA9PiB0b2NMaW5rc1tsaW5rXS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTsKICBjb25zdCByZW1vdmVBY3RpdmUgPSAobGluaykgPT4gdG9jTGlua3NbbGlua10uY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIik7CiAgY29uc3QgcmVtb3ZlQWxsQWN0aXZlID0gKCkgPT4gWy4uLkFycmF5KHRvY0xpbmtzLmxlbmd0aCkua2V5cygpXS5mb3JFYWNoKChsaW5rKSA9PiByZW1vdmVBY3RpdmUobGluaykpOwogIHRvY0xpbmtzLmZvckVhY2goKGxpbmspID0+IHsKICAgIGxpbmsuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCAoKSA9PiB7CiAgICAgIGlmIChsaW5rLmhyZWYuaW5kZXhPZigiIyIpICE9PSAtMSkgewogICAgICAgIGNvbnN0IGFuY2hvciA9IGxpbmsuaHJlZi5zcGxpdCgiIyIpWzFdOwogICAgICAgIGNvbnN0IGhlYWRpbmcgPSB3aW5kb3cuZG9jdW1lbnQucXVlcnlTZWxlY3RvcigKICAgICAgICAgIGBbZGF0YS1hbmNob3ItaWQ9IiR7YW5jaG9yfSJdYAogICAgICAgICk7CiAgICAgICAgaWYgKGhlYWRpbmcpIHsKICAgICAgICAgIGhlYWRpbmcuY2xhc3NMaXN0LmFkZCgicmV2ZWFsLWFuY2hvcmpzLWxpbmsiKTsKICAgICAgICAgIGNvbnN0IGhhbmRsZU1vdXNlb3V0ID0gKCkgPT4gewogICAgICAgICAgICBoZWFkaW5nLmNsYXNzTGlzdC5yZW1vdmUoInJldmVhbC1hbmNob3Jqcy1saW5rIik7CiAgICAgICAgICAgIGhlYWRpbmcucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VvdXQiLCBoYW5kbGVNb3VzZW91dCk7CiAgICAgICAgICB9OwogICAgICAgICAgaGVhZGluZy5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW91dCIsIGhhbmRsZU1vdXNlb3V0KTsKICAgICAgICB9CiAgICAgIH0KICAgIH0pOwogIH0pOwogIGNvbnN0IHNlY3Rpb25zID0gdG9jTGlua3MubWFwKChsaW5rKSA9PiB7CiAgICBjb25zdCB0YXJnZXQgPSBsaW5rLmdldEF0dHJpYnV0ZSgiZGF0YS1zY3JvbGwtdGFyZ2V0Iik7CiAgICBpZiAodGFyZ2V0LnN0YXJ0c1dpdGgoIiMiKSkgewogICAgICByZXR1cm4gd2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGRlY29kZVVSSShgJHt0YXJnZXQuc2xpY2UoMSl9YCkpOwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuIHdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGRlY29kZVVSSShgJHt0YXJnZXR9YCkpOwogICAgfQogIH0pOwogIGNvbnN0IHNlY3Rpb25NYXJnaW4gPSAyMDA7CiAgbGV0IGN1cnJlbnRBY3RpdmUgPSAwOwogIGxldCBpbml0MiA9IGZhbHNlOwogIGNvbnN0IHVwZGF0ZUFjdGl2ZUxpbmsgPSAoKSA9PiB7CiAgICBsZXQgc2VjdGlvbkluZGV4ID0gLTE7CiAgICBpZiAod2luZG93LmlubmVySGVpZ2h0ICsgd2luZG93LnBhZ2VZT2Zmc2V0ID49IHdpbmRvdy5kb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodCkgewogICAgICBzZWN0aW9uSW5kZXggPSAwOwogICAgfSBlbHNlIHsKICAgICAgc2VjdGlvbkluZGV4ID0gWy4uLnNlY3Rpb25zXS5yZXZlcnNlKCkuZmluZEluZGV4KChzZWN0aW9uKSA9PiB7CiAgICAgICAgaWYgKHNlY3Rpb24pIHsKICAgICAgICAgIHJldHVybiB3aW5kb3cucGFnZVlPZmZzZXQgPj0gc2VjdGlvbi5vZmZzZXRUb3AgLSBzZWN0aW9uTWFyZ2luOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICAgIGlmIChzZWN0aW9uSW5kZXggPiAtMSkgewogICAgICBjb25zdCBjdXJyZW50ID0gc2VjdGlvbnMubGVuZ3RoIC0gc2VjdGlvbkluZGV4IC0gMTsKICAgICAgaWYgKGN1cnJlbnQgIT09IGN1cnJlbnRBY3RpdmUpIHsKICAgICAgICByZW1vdmVBbGxBY3RpdmUoKTsKICAgICAgICBjdXJyZW50QWN0aXZlID0gY3VycmVudDsKICAgICAgICBtYWtlQWN0aXZlKGN1cnJlbnQpOwogICAgICAgIGlmIChpbml0MikgewogICAgICAgICAgd2luZG93LmRpc3BhdGNoRXZlbnQoc2VjdGlvbkNoYW5nZWQpOwogICAgICAgIH0KICAgICAgICBpbml0MiA9IHRydWU7CiAgICAgIH0KICAgIH0KICB9OwogIGNvbnN0IGluSGlkZGVuUmVnaW9uID0gKHRvcCwgYm90dG9tLCBoaWRkZW5SZWdpb25zKSA9PiB7CiAgICBmb3IgKGNvbnN0IHJlZ2lvbiBvZiBoaWRkZW5SZWdpb25zKSB7CiAgICAgIGlmICh0b3AgPD0gcmVnaW9uLmJvdHRvbSAmJiBib3R0b20gPj0gcmVnaW9uLnRvcCkgewogICAgICAgIHJldHVybiB0cnVlOwogICAgICB9CiAgICB9CiAgICByZXR1cm4gZmFsc2U7CiAgfTsKICBjb25zdCBjYXRlZ29yeVNlbGVjdG9yID0gImhlYWRlci5xdWFydG8tdGl0bGUtYmxvY2sgLnF1YXJ0by1jYXRlZ29yeSI7CiAgY29uc3QgYWN0aXZhdGVDYXRlZ29yaWVzID0gKGhyZWYpID0+IHsKICAgIHRyeSB7CiAgICAgIGNvbnN0IGNhdGVnb3J5RWxzID0gd2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoY2F0ZWdvcnlTZWxlY3Rvcik7CiAgICAgIGZvciAoY29uc3QgY2F0ZWdvcnlFbCBvZiBjYXRlZ29yeUVscykgewogICAgICAgIGNvbnN0IGNhdGVnb3J5VGV4dCA9IGNhdGVnb3J5RWwudGV4dENvbnRlbnQ7CiAgICAgICAgaWYgKGNhdGVnb3J5VGV4dCkgewogICAgICAgICAgY29uc3QgbGluayA9IGAke2hyZWZ9I2NhdGVnb3J5PSR7ZW5jb2RlVVJJQ29tcG9uZW50KGNhdGVnb3J5VGV4dCl9YDsKICAgICAgICAgIGNvbnN0IGxpbmtFbCA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7CiAgICAgICAgICBsaW5rRWwuc2V0QXR0cmlidXRlKCJocmVmIiwgbGluayk7CiAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNhdGVnb3J5RWwuY2hpbGROb2RlcykgewogICAgICAgICAgICBsaW5rRWwuYXBwZW5kKGNoaWxkKTsKICAgICAgICAgIH0KICAgICAgICAgIGNhdGVnb3J5RWwuYXBwZW5kQ2hpbGQobGlua0VsKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0gY2F0Y2ggewogICAgfQogIH07CiAgZnVuY3Rpb24gaGFzVGl0bGVDYXRlZ29yaWVzKCkgewogICAgcmV0dXJuIHdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGNhdGVnb3J5U2VsZWN0b3IpICE9PSBudWxsOwogIH0KICBmdW5jdGlvbiBvZmZzZXRSZWxhdGl2ZVVybCh1cmwpIHsKICAgIGNvbnN0IG9mZnNldCA9IGdldE1ldGEoInF1YXJ0bzpvZmZzZXQiKTsKICAgIHJldHVybiBvZmZzZXQgPyBvZmZzZXQgKyB1cmwgOiB1cmw7CiAgfQogIGZ1bmN0aW9uIG9mZnNldEFic29sdXRlVXJsKHVybCkgewogICAgY29uc3Qgb2Zmc2V0ID0gZ2V0TWV0YSgicXVhcnRvOm9mZnNldCIpOwogICAgY29uc3QgYmFzZVVybCA9IG5ldyBVUkwob2Zmc2V0LCB3aW5kb3cubG9jYXRpb24pOwogICAgY29uc3QgcHJvalJlbGF0aXZlVXJsID0gdXJsLnJlcGxhY2UoYmFzZVVybCwgIiIpOwogICAgaWYgKHByb2pSZWxhdGl2ZVVybC5zdGFydHNXaXRoKCIvIikpIHsKICAgICAgcmV0dXJuIHByb2pSZWxhdGl2ZVVybDsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiAiLyIgKyBwcm9qUmVsYXRpdmVVcmw7CiAgICB9CiAgfQogIGZ1bmN0aW9uIGdldE1ldGEobWV0YU5hbWUpIHsKICAgIGNvbnN0IG1ldGFzID0gd2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJtZXRhIik7CiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1ldGFzLmxlbmd0aDsgaSsrKSB7CiAgICAgIGlmIChtZXRhc1tpXS5nZXRBdHRyaWJ1dGUoIm5hbWUiKSA9PT0gbWV0YU5hbWUpIHsKICAgICAgICByZXR1cm4gbWV0YXNbaV0uZ2V0QXR0cmlidXRlKCJjb250ZW50Iik7CiAgICAgIH0KICAgIH0KICAgIHJldHVybiAiIjsKICB9CiAgYXN5bmMgZnVuY3Rpb24gZmluZEFuZEFjdGl2YXRlQ2F0ZWdvcmllcygpIHsKICAgIGNvbnN0IGN1cnJlbnRQYWdlUGF0aCA9IG9mZnNldEFic29sdXRlVXJsKAogICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lCiAgICApOwogICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChvZmZzZXRSZWxhdGl2ZVVybCgibGlzdGluZ3MuanNvbiIpKTsKICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT0gMjAwKSB7CiAgICAgIHJldHVybiByZXNwb25zZS5qc29uKCkudGhlbihmdW5jdGlvbihsaXN0aW5nUGF0aHMpIHsKICAgICAgICBjb25zdCBsaXN0aW5nSHJlZnMgPSBbXTsKICAgICAgICBmb3IgKGNvbnN0IGxpc3RpbmdQYXRoIG9mIGxpc3RpbmdQYXRocykgewogICAgICAgICAgY29uc3QgcGF0aFdpdGhvdXRMZWFkaW5nU2xhc2ggPSBsaXN0aW5nUGF0aC5saXN0aW5nLnN1YnN0cmluZygxKTsKICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBsaXN0aW5nUGF0aC5pdGVtcykgewogICAgICAgICAgICBjb25zdCBlbmNvZGVkSXRlbSA9IGVuY29kZVVSSShpdGVtKTsKICAgICAgICAgICAgaWYgKGVuY29kZWRJdGVtID09PSBjdXJyZW50UGFnZVBhdGggfHwgZW5jb2RlZEl0ZW0gPT09IGN1cnJlbnRQYWdlUGF0aCArICJpbmRleC5odG1sIikgewogICAgICAgICAgICAgIGNvbnN0IHJlbGF0aXZlID0gb2Zmc2V0UmVsYXRpdmVVcmwocGF0aFdpdGhvdXRMZWFkaW5nU2xhc2gpOwogICAgICAgICAgICAgIGNvbnN0IGJhc2VVcmwgPSB3aW5kb3cubG9jYXRpb247CiAgICAgICAgICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gbmV3IFVSTChyZWxhdGl2ZSwgYmFzZVVybCk7CiAgICAgICAgICAgICAgbGlzdGluZ0hyZWZzLnB1c2gocmVzb2x2ZWRQYXRoLnBhdGhuYW1lKTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb25zdCBuZWFyZXN0TGlzdGluZyA9IGZpbmROZWFyZXN0UGFyZW50TGlzdGluZygKICAgICAgICAgIG9mZnNldEFic29sdXRlVXJsKHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSksCiAgICAgICAgICBsaXN0aW5nSHJlZnMKICAgICAgICApOwogICAgICAgIGlmIChuZWFyZXN0TGlzdGluZykgewogICAgICAgICAgYWN0aXZhdGVDYXRlZ29yaWVzKG5lYXJlc3RMaXN0aW5nKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgY29uc3QgcmVmZXJyZWRSZWxhdGl2ZVBhdGggPSBvZmZzZXRBYnNvbHV0ZVVybChkb2N1bWVudC5yZWZlcnJlcik7CiAgICAgICAgICBjb25zdCByZWZlcnJlckxpc3RpbmcgPSBsaXN0aW5nSHJlZnMuZmluZCgobGlzdGluZ0hyZWYpID0+IHsKICAgICAgICAgICAgY29uc3QgaXNMaXN0aW5nUmVmZXJyZXIgPSBsaXN0aW5nSHJlZiA9PT0gcmVmZXJyZWRSZWxhdGl2ZVBhdGggfHwgbGlzdGluZ0hyZWYgPT09IHJlZmVycmVkUmVsYXRpdmVQYXRoICsgImluZGV4Lmh0bWwiOwogICAgICAgICAgICByZXR1cm4gaXNMaXN0aW5nUmVmZXJyZXI7CiAgICAgICAgICB9KTsKICAgICAgICAgIGlmIChyZWZlcnJlckxpc3RpbmcpIHsKICAgICAgICAgICAgYWN0aXZhdGVDYXRlZ29yaWVzKHJlZmVycmVyTGlzdGluZyk7CiAgICAgICAgICB9IGVsc2UgaWYgKGxpc3RpbmdIcmVmcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGFjdGl2YXRlQ2F0ZWdvcmllcyhsaXN0aW5nSHJlZnNbMF0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICB9CiAgfQogIGlmIChoYXNUaXRsZUNhdGVnb3JpZXMoKSkgewogICAgZmluZEFuZEFjdGl2YXRlQ2F0ZWdvcmllcygpOwogIH0KICBjb25zdCBmaW5kTmVhcmVzdFBhcmVudExpc3RpbmcgPSAoaHJlZiwgbGlzdGluZ0hyZWZzKSA9PiB7CiAgICBpZiAoIWhyZWYgfHwgIWxpc3RpbmdIcmVmcykgewogICAgICByZXR1cm4gdm9pZCAwOwogICAgfQogICAgY29uc3QgcmVsYXRpdmVQYXJ0cyA9IGhyZWYuc3Vic3RyaW5nKDEpLnNwbGl0KCIvIik7CiAgICB3aGlsZSAocmVsYXRpdmVQYXJ0cy5sZW5ndGggPiAwKSB7CiAgICAgIGNvbnN0IHBhdGggPSByZWxhdGl2ZVBhcnRzLmpvaW4oIi8iKTsKICAgICAgZm9yIChjb25zdCBsaXN0aW5nSHJlZiBvZiBsaXN0aW5nSHJlZnMpIHsKICAgICAgICBpZiAobGlzdGluZ0hyZWYuc3RhcnRzV2l0aChwYXRoKSkgewogICAgICAgICAgcmV0dXJuIGxpc3RpbmdIcmVmOwogICAgICAgIH0KICAgICAgfQogICAgICByZWxhdGl2ZVBhcnRzLnBvcCgpOwogICAgfQogICAgcmV0dXJuIHZvaWQgMDsKICB9OwogIGNvbnN0IG1hbmFnZVNpZGViYXJWaXNpYmxpdHkgPSAoZWwsIHBsYWNlaG9sZGVyRGVzY3JpcHRvcikgPT4gewogICAgbGV0IGlzVmlzaWJsZSA9IHRydWU7CiAgICBsZXQgZWxSZWN0OwogICAgcmV0dXJuIChoaWRkZW5SZWdpb25zKSA9PiB7CiAgICAgIGlmIChlbCA9PT0gbnVsbCkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICBjb25zdCBsYXN0Q2hpbGRFbCA9IGVsLmxhc3RFbGVtZW50Q2hpbGQ7CiAgICAgIGlmIChsYXN0Q2hpbGRFbCkgewogICAgICAgIGNvbnN0IGNvbnZlcnRUb01lbnUgPSAoKSA9PiB7CiAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGVsLmNoaWxkcmVuKSB7CiAgICAgICAgICAgIGNoaWxkLnN0eWxlLm9wYWNpdHkgPSAwOwogICAgICAgICAgICBjaGlsZC5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4iOwogICAgICAgICAgICBjaGlsZC5zdHlsZS5wb2ludGVyRXZlbnRzID0gIm5vbmUiOwogICAgICAgICAgfQogICAgICAgICAgbmV4dHRpY2soKCkgPT4gewogICAgICAgICAgICBjb25zdCB0b2dnbGVDb250YWluZXIgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgICAgICAgIHRvZ2dsZUNvbnRhaW5lci5zdHlsZS53aWR0aCA9ICIxMDAlIjsKICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoInppbmRleC1vdmVyLWNvbnRlbnQiKTsKICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoInF1YXJ0by1zaWRlYmFyLXRvZ2dsZSIpOwogICAgICAgICAgICB0b2dnbGVDb250YWluZXIuY2xhc3NMaXN0LmFkZCgiaGVhZHJvb20tdGFyZ2V0Iik7CiAgICAgICAgICAgIHRvZ2dsZUNvbnRhaW5lci5pZCA9IHBsYWNlaG9sZGVyRGVzY3JpcHRvci5pZDsKICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLnN0eWxlLnBvc2l0aW9uID0gImZpeGVkIjsKICAgICAgICAgICAgY29uc3QgdG9nZ2xlSWNvbiA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpIik7CiAgICAgICAgICAgIHRvZ2dsZUljb24uY2xhc3NMaXN0LmFkZCgicXVhcnRvLXNpZGViYXItdG9nZ2xlLWljb24iKTsKICAgICAgICAgICAgdG9nZ2xlSWNvbi5jbGFzc0xpc3QuYWRkKCJiaSIpOwogICAgICAgICAgICB0b2dnbGVJY29uLmNsYXNzTGlzdC5hZGQoImJpLWNhcmV0LWRvd24tZmlsbCIpOwogICAgICAgICAgICBjb25zdCB0b2dnbGVUaXRsZSA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgICAgICAgY29uc3QgdGl0bGVFbCA9IHdpbmRvdy5kb2N1bWVudC5ib2R5LnF1ZXJ5U2VsZWN0b3IoCiAgICAgICAgICAgICAgcGxhY2Vob2xkZXJEZXNjcmlwdG9yLnRpdGxlU2VsZWN0b3IKICAgICAgICAgICAgKTsKICAgICAgICAgICAgaWYgKHRpdGxlRWwpIHsKICAgICAgICAgICAgICB0b2dnbGVUaXRsZS5hcHBlbmQoCiAgICAgICAgICAgICAgICB0aXRsZUVsLnRleHRDb250ZW50IHx8IHRpdGxlRWwuaW5uZXJUZXh0LAogICAgICAgICAgICAgICAgdG9nZ2xlSWNvbgogICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdG9nZ2xlVGl0bGUuY2xhc3NMaXN0LmFkZCgiemluZGV4LW92ZXItY29udGVudCIpOwogICAgICAgICAgICB0b2dnbGVUaXRsZS5jbGFzc0xpc3QuYWRkKCJxdWFydG8tc2lkZWJhci10b2dnbGUtdGl0bGUiKTsKICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLmFwcGVuZCh0b2dnbGVUaXRsZSk7CiAgICAgICAgICAgIGNvbnN0IHRvZ2dsZUNvbnRlbnRzID0gd2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgICAgICAgICB0b2dnbGVDb250ZW50cy5jbGFzc0xpc3QgPSBlbC5jbGFzc0xpc3Q7CiAgICAgICAgICAgIHRvZ2dsZUNvbnRlbnRzLmNsYXNzTGlzdC5hZGQoInppbmRleC1vdmVyLWNvbnRlbnQiKTsKICAgICAgICAgICAgdG9nZ2xlQ29udGVudHMuY2xhc3NMaXN0LmFkZCgicXVhcnRvLXNpZGViYXItdG9nZ2xlLWNvbnRlbnRzIik7CiAgICAgICAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgZWwuY2hpbGRyZW4pIHsKICAgICAgICAgICAgICBpZiAoY2hpbGQuaWQgPT09ICJ0b2MtdGl0bGUiKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY29uc3QgY2xvbmUgPSBjaGlsZC5jbG9uZU5vZGUodHJ1ZSk7CiAgICAgICAgICAgICAgY2xvbmUuc3R5bGUub3BhY2l0eSA9IDE7CiAgICAgICAgICAgICAgY2xvbmUuc3R5bGUucG9pbnRlckV2ZW50cyA9IG51bGw7CiAgICAgICAgICAgICAgY2xvbmUuc3R5bGUuZGlzcGxheSA9IG51bGw7CiAgICAgICAgICAgICAgdG9nZ2xlQ29udGVudHMuYXBwZW5kKGNsb25lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICB0b2dnbGVDb250ZW50cy5zdHlsZS5oZWlnaHQgPSAiMHB4IjsKICAgICAgICAgICAgY29uc3QgcG9zaXRpb25Ub2dnbGUgPSAoKSA9PiB7CiAgICAgICAgICAgICAgaWYgKCFlbFJlY3QpIHsKICAgICAgICAgICAgICAgIGVsUmVjdCA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0b2dnbGVDb250YWluZXIuc3R5bGUubGVmdCA9IGAke2VsUmVjdC5sZWZ0fXB4YDsKICAgICAgICAgICAgICB0b2dnbGVDb250YWluZXIuc3R5bGUudG9wID0gYCR7ZWxSZWN0LnRvcH1weGA7CiAgICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLnN0eWxlLndpZHRoID0gYCR7ZWxSZWN0LndpZHRofXB4YDsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgcG9zaXRpb25Ub2dnbGUoKTsKICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLmFwcGVuZCh0b2dnbGVDb250ZW50cyk7CiAgICAgICAgICAgIGVsLnBhcmVudEVsZW1lbnQucHJlcGVuZCh0b2dnbGVDb250YWluZXIpOwogICAgICAgICAgICBsZXQgdG9jU2hvd2luZyA9IGZhbHNlOwogICAgICAgICAgICBjb25zdCBjbGlja0VsID0gcGxhY2Vob2xkZXJEZXNjcmlwdG9yLmRpc21pc3NPbkNsaWNrID8gdG9nZ2xlQ29udGFpbmVyIDogdG9nZ2xlVGl0bGU7CiAgICAgICAgICAgIGNvbnN0IGNsb3NlVG9nZ2xlID0gKCkgPT4gewogICAgICAgICAgICAgIGlmICh0b2NTaG93aW5nKSB7CiAgICAgICAgICAgICAgICB0b2dnbGVDb250YWluZXIuY2xhc3NMaXN0LnJlbW92ZSgiZXhwYW5kZWQiKTsKICAgICAgICAgICAgICAgIHRvZ2dsZUNvbnRlbnRzLnN0eWxlLmhlaWdodCA9ICIwcHgiOwogICAgICAgICAgICAgICAgdG9jU2hvd2luZyA9IGZhbHNlOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgd2luZG93LmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoCiAgICAgICAgICAgICAgInNjcm9sbCIsCiAgICAgICAgICAgICAgdGhyb3R0bGUoKCkgPT4gewogICAgICAgICAgICAgICAgY2xvc2VUb2dnbGUoKTsKICAgICAgICAgICAgICB9LCA1MCkKICAgICAgICAgICAgKTsKICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoCiAgICAgICAgICAgICAgInJlc2l6ZSIsCiAgICAgICAgICAgICAgdGhyb3R0bGUoKCkgPT4gewogICAgICAgICAgICAgICAgZWxSZWN0ID0gdm9pZCAwOwogICAgICAgICAgICAgICAgcG9zaXRpb25Ub2dnbGUoKTsKICAgICAgICAgICAgICB9LCA1MCkKICAgICAgICAgICAgKTsKICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInF1YXJ0by1ockNoYW5nZWQiLCAoKSA9PiB7CiAgICAgICAgICAgICAgZWxSZWN0ID0gdm9pZCAwOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgY2xpY2tFbC5vbmNsaWNrID0gKCkgPT4gewogICAgICAgICAgICAgIGlmICghdG9jU2hvd2luZykgewogICAgICAgICAgICAgICAgdG9nZ2xlQ29udGFpbmVyLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIik7CiAgICAgICAgICAgICAgICB0b2dnbGVDb250ZW50cy5zdHlsZS5oZWlnaHQgPSBudWxsOwogICAgICAgICAgICAgICAgdG9jU2hvd2luZyA9IHRydWU7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGNsb3NlVG9nZ2xlKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgICAgfSk7CiAgICAgICAgfTsKICAgICAgICBjb25zdCBjb252ZXJ0VG9TaWRlYmFyID0gKCkgPT4gewogICAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBlbC5jaGlsZHJlbikgewogICAgICAgICAgICBjaGlsZC5zdHlsZS5vcGFjaXR5ID0gMTsKICAgICAgICAgICAgY2hpbGQuc3R5bGUub3ZlcmZsb3cgPSBudWxsOwogICAgICAgICAgICBjaGlsZC5zdHlsZS5wb2ludGVyRXZlbnRzID0gbnVsbDsKICAgICAgICAgIH0KICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyRWwgPSB3aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoCiAgICAgICAgICAgIHBsYWNlaG9sZGVyRGVzY3JpcHRvci5pZAogICAgICAgICAgKTsKICAgICAgICAgIGlmIChwbGFjZWhvbGRlckVsKSB7CiAgICAgICAgICAgIHBsYWNlaG9sZGVyRWwucmVtb3ZlKCk7CiAgICAgICAgICB9CiAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKCJyb2xsdXAiKTsKICAgICAgICB9OwogICAgICAgIGlmIChpc1JlYWRlck1vZGUoKSkgewogICAgICAgICAgY29udmVydFRvTWVudSgpOwogICAgICAgICAgaXNWaXNpYmxlID0gZmFsc2U7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNvbnN0IGVsVG9wID0gZWwub2Zmc2V0VG9wOwogICAgICAgICAgY29uc3QgZWxCb3R0b20gPSBlbFRvcCArIGxhc3RDaGlsZEVsLm9mZnNldFRvcCArIGxhc3RDaGlsZEVsLm9mZnNldEhlaWdodDsKICAgICAgICAgIGlmICghaXNWaXNpYmxlKSB7CiAgICAgICAgICAgIGlmICghaW5IaWRkZW5SZWdpb24oZWxUb3AsIGVsQm90dG9tLCBoaWRkZW5SZWdpb25zKSkgewogICAgICAgICAgICAgIGNvbnZlcnRUb1NpZGViYXIoKTsKICAgICAgICAgICAgICBpc1Zpc2libGUgPSB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAoaW5IaWRkZW5SZWdpb24oZWxUb3AsIGVsQm90dG9tLCBoaWRkZW5SZWdpb25zKSkgewogICAgICAgICAgICAgIGNvbnZlcnRUb01lbnUoKTsKICAgICAgICAgICAgICBpc1Zpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfTsKICB9OwogIGNvbnN0IHRhYkVscyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2FbZGF0YS1icy10b2dnbGU9InRhYiJdJyk7CiAgZm9yIChjb25zdCB0YWJFbCBvZiB0YWJFbHMpIHsKICAgIGNvbnN0IGlkID0gdGFiRWwuZ2V0QXR0cmlidXRlKCJkYXRhLWJzLXRhcmdldCIpOwogICAgaWYgKGlkKSB7CiAgICAgIGNvbnN0IGNvbHVtbkVsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigKICAgICAgICBgJHtpZH0gLmNvbHVtbi1tYXJnaW4sIC50YWJzZXQtbWFyZ2luLWNvbnRlbnRgCiAgICAgICk7CiAgICAgIGlmIChjb2x1bW5FbCkKICAgICAgICB0YWJFbC5hZGRFdmVudExpc3RlbmVyKCJzaG93bi5icy50YWIiLCBmdW5jdGlvbihldmVudCkgewogICAgICAgICAgY29uc3QgZWwgPSBldmVudC5zcmNFbGVtZW50OwogICAgICAgICAgaWYgKGVsKSB7CiAgICAgICAgICAgIGNvbnN0IHZpc2libGVDbHMgPSBgJHtlbC5pZH0tbWFyZ2luLWNvbnRlbnRgOwogICAgICAgICAgICBsZXQgcGFuZWxUYWJzZXRFbCA9IGVsLnBhcmVudEVsZW1lbnQ7CiAgICAgICAgICAgIHdoaWxlIChwYW5lbFRhYnNldEVsKSB7CiAgICAgICAgICAgICAgaWYgKHBhbmVsVGFic2V0RWwuY2xhc3NMaXN0LmNvbnRhaW5zKCJwYW5lbC10YWJzZXQiKSkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHBhbmVsVGFic2V0RWwgPSBwYW5lbFRhYnNldEVsLnBhcmVudEVsZW1lbnQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBhbmVsVGFic2V0RWwpIHsKICAgICAgICAgICAgICBjb25zdCBwcmV2U2liID0gcGFuZWxUYWJzZXRFbC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nOwogICAgICAgICAgICAgIGlmIChwcmV2U2liICYmIHByZXZTaWIuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0YWJzZXQtbWFyZ2luLWNvbnRhaW5lciIpKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVzID0gcHJldlNpYi5xdWVyeVNlbGVjdG9yQWxsKAogICAgICAgICAgICAgICAgICAiLnRhYnNldC1tYXJnaW4tY29udGVudCIKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkRWwgb2YgY2hpbGROb2RlcykgewogICAgICAgICAgICAgICAgICBpZiAoY2hpbGRFbC5jbGFzc0xpc3QuY29udGFpbnModmlzaWJsZUNscykpIHsKICAgICAgICAgICAgICAgICAgICBjaGlsZEVsLmNsYXNzTGlzdC5yZW1vdmUoImNvbGxhcHNlIik7CiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgY2hpbGRFbC5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZSIpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBsYXlvdXRNYXJnaW5FbHMoKTsKICAgICAgICB9KTsKICAgIH0KICB9CiAgY29uc3QgbWFyZ2luU2Nyb2xsVmlzaWJpbGl0eSA9IG1hbmFnZVNpZGViYXJWaXNpYmxpdHkobWFyZ2luU2lkZWJhckVsLCB7CiAgICBpZDogInF1YXJ0by10b2MtdG9nZ2xlIiwKICAgIHRpdGxlU2VsZWN0b3I6ICIjdG9jLXRpdGxlIiwKICAgIGRpc21pc3NPbkNsaWNrOiB0cnVlCiAgfSk7CiAgY29uc3Qgc2lkZWJhclNjcm9sbFZpc2libGl0eSA9IG1hbmFnZVNpZGViYXJWaXNpYmxpdHkoc2lkZWJhckVsLCB7CiAgICBpZDogInF1YXJ0by1zaWRlYmFybmF2LXRvZ2dsZSIsCiAgICB0aXRsZVNlbGVjdG9yOiAiLnRpdGxlIiwKICAgIGRpc21pc3NPbkNsaWNrOiBmYWxzZQogIH0pOwogIGxldCB0b2NMZWZ0U2Nyb2xsVmlzaWJpbGl0eTsKICBpZiAobGVmdFRvY0VsKSB7CiAgICB0b2NMZWZ0U2Nyb2xsVmlzaWJpbGl0eSA9IG1hbmFnZVNpZGViYXJWaXNpYmxpdHkobGVmdFRvY0VsLCB7CiAgICAgIGlkOiAicXVhcnRvLWxlZnR0b2MtdG9nZ2xlIiwKICAgICAgdGl0bGVTZWxlY3RvcjogIiN0b2MtdGl0bGUiLAogICAgICBkaXNtaXNzT25DbGljazogdHJ1ZQogICAgfSk7CiAgfQogIGNvbnN0IGNvbmZsaWN0aW5nRWxzID0gd2luZG93LmRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgKICAgICdbY2xhc3NePSJjb2x1bW4tIl0sIFtjbGFzcyo9IiBjb2x1bW4tIl0sIGFzaWRlLCBbY2xhc3MqPSJtYXJnaW4tY2FwdGlvbiJdLCBbY2xhc3MqPSIgbWFyZ2luLWNhcHRpb24iXSwgW2NsYXNzKj0ibWFyZ2luLXJlZiJdLCBbY2xhc3MqPSIgbWFyZ2luLXJlZiJdJwogICk7CiAgY29uc3QgYXJyQ29uZmxpY3RpbmdFbHMgPSBBcnJheS5mcm9tKGNvbmZsaWN0aW5nRWxzKTsKICBjb25zdCBsZWZ0U2lkZUNvbmZsaWN0RWxzID0gYXJyQ29uZmxpY3RpbmdFbHMuZmlsdGVyKChlbCkgPT4gewogICAgaWYgKGVsLnRhZ05hbWUgPT09ICJBU0lERSIpIHsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogICAgcmV0dXJuIEFycmF5LmZyb20oZWwuY2xhc3NMaXN0KS5maW5kKChjbGFzc05hbWUpID0+IHsKICAgICAgcmV0dXJuIGNsYXNzTmFtZSAhPT0gImNvbHVtbi1ib2R5IiAmJiBjbGFzc05hbWUuc3RhcnRzV2l0aCgiY29sdW1uLSIpICYmICFjbGFzc05hbWUuZW5kc1dpdGgoInJpZ2h0IikgJiYgIWNsYXNzTmFtZS5lbmRzV2l0aCgiY29udGFpbmVyIikgJiYgY2xhc3NOYW1lICE9PSAiY29sdW1uLW1hcmdpbiI7CiAgICB9KTsKICB9KTsKICBjb25zdCByaWdodFNpZGVDb25mbGljdEVscyA9IGFyckNvbmZsaWN0aW5nRWxzLmZpbHRlcigoZWwpID0+IHsKICAgIGlmIChlbC50YWdOYW1lID09PSAiQVNJREUiKSB7CiAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgY29uc3QgaGFzTWFyZ2luQ2FwdGlvbiA9IEFycmF5LmZyb20oZWwuY2xhc3NMaXN0KS5maW5kKChjbGFzc05hbWUpID0+IHsKICAgICAgcmV0dXJuIGNsYXNzTmFtZSA9PSAibWFyZ2luLWNhcHRpb24iOwogICAgfSk7CiAgICBpZiAoaGFzTWFyZ2luQ2FwdGlvbikgewogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIHJldHVybiBBcnJheS5mcm9tKGVsLmNsYXNzTGlzdCkuZmluZCgoY2xhc3NOYW1lKSA9PiB7CiAgICAgIHJldHVybiBjbGFzc05hbWUgIT09ICJjb2x1bW4tYm9keSIgJiYgIWNsYXNzTmFtZS5lbmRzV2l0aCgiY29udGFpbmVyIikgJiYgY2xhc3NOYW1lLnN0YXJ0c1dpdGgoImNvbHVtbi0iKSAmJiAhY2xhc3NOYW1lLmVuZHNXaXRoKCJsZWZ0Iik7CiAgICB9KTsKICB9KTsKICBjb25zdCBrT3ZlcmxhcFBhZGRpbmdTaXplID0gMTA7CiAgZnVuY3Rpb24gdG9SZWdpb25zKGVscykgewogICAgcmV0dXJuIGVscy5tYXAoKGVsKSA9PiB7CiAgICAgIGNvbnN0IGJvdW5kUmVjdCA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogICAgICBjb25zdCB0b3AgPSBib3VuZFJlY3QudG9wICsgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCAtIGtPdmVybGFwUGFkZGluZ1NpemU7CiAgICAgIHJldHVybiB7CiAgICAgICAgdG9wLAogICAgICAgIGJvdHRvbTogdG9wICsgZWwuc2Nyb2xsSGVpZ2h0ICsgMiAqIGtPdmVybGFwUGFkZGluZ1NpemUKICAgICAgfTsKICAgIH0pOwogIH0KICBsZXQgaGFzT2JzZXJ2ZWQgPSBmYWxzZTsKICBjb25zdCB2aXNpYmxlSXRlbU9ic2VydmVyID0gKGVscykgPT4gewogICAgbGV0IHZpc2libGVFbGVtZW50cyA9IFsuLi5lbHNdOwogICAgY29uc3QgaW50ZXJzZWN0aW9uT2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoCiAgICAgIChlbnRyaWVzLCBfb2JzZXJ2ZXIpID0+IHsKICAgICAgICBlbnRyaWVzLmZvckVhY2goKGVudHJ5KSA9PiB7CiAgICAgICAgICBpZiAoZW50cnkuaXNJbnRlcnNlY3RpbmcpIHsKICAgICAgICAgICAgaWYgKHZpc2libGVFbGVtZW50cy5pbmRleE9mKGVudHJ5LnRhcmdldCkgPT09IC0xKSB7CiAgICAgICAgICAgICAgdmlzaWJsZUVsZW1lbnRzLnB1c2goZW50cnkudGFyZ2V0KTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmlzaWJsZUVsZW1lbnRzID0gdmlzaWJsZUVsZW1lbnRzLmZpbHRlcigodmlzaWJsZUVudHJ5KSA9PiB7CiAgICAgICAgICAgICAgcmV0dXJuIHZpc2libGVFbnRyeSAhPT0gZW50cnk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIGlmICghaGFzT2JzZXJ2ZWQpIHsKICAgICAgICAgIGhpZGVPdmVybGFwcGVkU2lkZWJhcnMoKTsKICAgICAgICB9CiAgICAgICAgaGFzT2JzZXJ2ZWQgPSB0cnVlOwogICAgICB9LAogICAgICB7fQogICAgKTsKICAgIGVscy5mb3JFYWNoKChlbCkgPT4gewogICAgICBpbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKGVsKTsKICAgIH0pOwogICAgcmV0dXJuIHsKICAgICAgZ2V0VmlzaWJsZUVudHJpZXM6ICgpID0+IHsKICAgICAgICByZXR1cm4gdmlzaWJsZUVsZW1lbnRzOwogICAgICB9CiAgICB9OwogIH07CiAgY29uc3QgcmlnaHRFbGVtZW50T2JzZXJ2ZXIgPSB2aXNpYmxlSXRlbU9ic2VydmVyKHJpZ2h0U2lkZUNvbmZsaWN0RWxzKTsKICBjb25zdCBsZWZ0RWxlbWVudE9ic2VydmVyID0gdmlzaWJsZUl0ZW1PYnNlcnZlcihsZWZ0U2lkZUNvbmZsaWN0RWxzKTsKICBjb25zdCBoaWRlT3ZlcmxhcHBlZFNpZGViYXJzID0gKCkgPT4gewogICAgbWFyZ2luU2Nyb2xsVmlzaWJpbGl0eSh0b1JlZ2lvbnMocmlnaHRFbGVtZW50T2JzZXJ2ZXIuZ2V0VmlzaWJsZUVudHJpZXMoKSkpOwogICAgc2lkZWJhclNjcm9sbFZpc2libGl0eSh0b1JlZ2lvbnMobGVmdEVsZW1lbnRPYnNlcnZlci5nZXRWaXNpYmxlRW50cmllcygpKSk7CiAgICBpZiAodG9jTGVmdFNjcm9sbFZpc2liaWxpdHkpIHsKICAgICAgdG9jTGVmdFNjcm9sbFZpc2liaWxpdHkoCiAgICAgICAgdG9SZWdpb25zKGxlZnRFbGVtZW50T2JzZXJ2ZXIuZ2V0VmlzaWJsZUVudHJpZXMoKSkKICAgICAgKTsKICAgIH0KICB9OwogIHdpbmRvdy5xdWFydG9Ub2dnbGVSZWFkZXIgPSAoKSA9PiB7CiAgICBjb25zdCBzbG93VHJhbnNpdGlvbiA9IChzbG93KSA9PiB7CiAgICAgIGNvbnN0IG1hbmFnZVRyYW5zaXRpb24gPSAoaWQsIHNsb3cyKSA9PiB7CiAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7CiAgICAgICAgaWYgKGVsKSB7CiAgICAgICAgICBpZiAoc2xvdzIpIHsKICAgICAgICAgICAgZWwuY2xhc3NMaXN0LmFkZCgic2xvdyIpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZSgic2xvdyIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfTsKICAgICAgbWFuYWdlVHJhbnNpdGlvbigiVE9DIiwgc2xvdyk7CiAgICAgIG1hbmFnZVRyYW5zaXRpb24oInF1YXJ0by1zaWRlYmFyIiwgc2xvdyk7CiAgICB9OwogICAgY29uc3QgcmVhZGVyTW9kZSA9ICFpc1JlYWRlck1vZGUoKTsKICAgIHNldFJlYWRlck1vZGVWYWx1ZShyZWFkZXJNb2RlKTsKICAgIGlmIChyZWFkZXJNb2RlKSB7CiAgICAgIHNsb3dUcmFuc2l0aW9uKHJlYWRlck1vZGUpOwogICAgfQogICAgaGlnaGxpZ2h0UmVhZGVyVG9nZ2xlKHJlYWRlck1vZGUpOwogICAgaGlkZU92ZXJsYXBwZWRTaWRlYmFycygpOwogICAgaWYgKCFyZWFkZXJNb2RlKSB7CiAgICAgIHNsb3dUcmFuc2l0aW9uKCFyZWFkZXJNb2RlKTsKICAgIH0KICB9OwogIGNvbnN0IGhpZ2hsaWdodFJlYWRlclRvZ2dsZSA9IChyZWFkZXJNb2RlKSA9PiB7CiAgICBjb25zdCBlbHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucXVhcnRvLXJlYWRlci10b2dnbGUiKTsKICAgIGlmIChlbHMpIHsKICAgICAgZWxzLmZvckVhY2goKGVsKSA9PiB7CiAgICAgICAgaWYgKHJlYWRlck1vZGUpIHsKICAgICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoInJlYWRlciIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKCJyZWFkZXIiKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogIH07CiAgY29uc3Qgc2V0UmVhZGVyTW9kZVZhbHVlID0gKHZhbCkgPT4gewogICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCAhPT0gImZpbGU6IikgewogICAgICB3aW5kb3cubG9jYWxTdG9yYWdlLnNldEl0ZW0oInF1YXJ0by1yZWFkZXItbW9kZSIsIHZhbCk7CiAgICB9IGVsc2UgewogICAgICBsb2NhbFJlYWRlck1vZGUgPSB2YWw7CiAgICB9CiAgfTsKICBjb25zdCBpc1JlYWRlck1vZGUgPSAoKSA9PiB7CiAgICBpZiAod2luZG93LmxvY2F0aW9uLnByb3RvY29sICE9PSAiZmlsZToiKSB7CiAgICAgIHJldHVybiB3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oInF1YXJ0by1yZWFkZXItbW9kZSIpID09PSAidHJ1ZSI7CiAgICB9IGVsc2UgewogICAgICByZXR1cm4gbG9jYWxSZWFkZXJNb2RlOwogICAgfQogIH07CiAgbGV0IGxvY2FsUmVhZGVyTW9kZSA9IG51bGw7CiAgY29uc3QgdG9jT3BlbkRlcHRoU3RyID0gdG9jRWw/LmdldEF0dHJpYnV0ZSgiZGF0YS10b2MtZXhwYW5kZWQiKTsKICBjb25zdCB0b2NPcGVuRGVwdGggPSB0b2NPcGVuRGVwdGhTdHIgPyBOdW1iZXIodG9jT3BlbkRlcHRoU3RyKSA6IDE7CiAgY29uc3Qgd2FsayA9IChlbCwgZGVwdGgpID0+IHsKICAgIGlmIChlbC50YWdOYW1lID09PSAiVUwiKSB7CiAgICAgIGRlcHRoID0gZGVwdGggKyAxOwogICAgfQogICAgbGV0IGlzQWN0aXZlTm9kZSA9IGZhbHNlOwogICAgaWYgKGVsLnRhZ05hbWUgPT09ICJBIiAmJiBlbC5jbGFzc0xpc3QuY29udGFpbnMoImFjdGl2ZSIpKSB7CiAgICAgIGlzQWN0aXZlTm9kZSA9IHRydWU7CiAgICB9CiAgICBsZXQgaGFzQWN0aXZlQ2hpbGQgPSBmYWxzZTsKICAgIGZvciAoY29uc3QgY2hpbGQgb2YgZWwuY2hpbGRyZW4pIHsKICAgICAgaGFzQWN0aXZlQ2hpbGQgPSB3YWxrKGNoaWxkLCBkZXB0aCkgfHwgaGFzQWN0aXZlQ2hpbGQ7CiAgICB9CiAgICBpZiAoZWwudGFnTmFtZSA9PT0gIlVMIikgewogICAgICBpZiAodG9jT3BlbkRlcHRoID09PSAtMSAmJiBkZXB0aCA+IDEpIHsKICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZSIpOwogICAgICB9IGVsc2UgaWYgKGRlcHRoIDw9IHRvY09wZW5EZXB0aCB8fCBoYXNBY3RpdmVDaGlsZCB8fCBwcmV2U2libGluZ0lzQWN0aXZlTGluayhlbCkpIHsKICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZSIpOwogICAgICB9IGVsc2UgewogICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlIik7CiAgICAgIH0KICAgICAgZGVwdGggPSBkZXB0aCAtIDE7CiAgICB9CiAgICByZXR1cm4gaGFzQWN0aXZlQ2hpbGQgfHwgaXNBY3RpdmVOb2RlOwogIH07CiAgaWYgKHRvY0VsKSB7CiAgICB1cGRhdGVBY3RpdmVMaW5rKCk7CiAgICB3YWxrKHRvY0VsLCAwKTsKICB9CiAgd2luZG93LmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoCiAgICAic2Nyb2xsIiwKICAgIHRocm90dGxlKCgpID0+IHsKICAgICAgaWYgKHRvY0VsKSB7CiAgICAgICAgdXBkYXRlQWN0aXZlTGluaygpOwogICAgICAgIHdhbGsodG9jRWwsIDApOwogICAgICB9CiAgICAgIGlmICghaXNSZWFkZXJNb2RlKCkpIHsKICAgICAgICBoaWRlT3ZlcmxhcHBlZFNpZGViYXJzKCk7CiAgICAgIH0KICAgIH0sIDUpCiAgKTsKICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigKICAgICJyZXNpemUiLAogICAgdGhyb3R0bGUoKCkgPT4gewogICAgICBpZiAodG9jRWwpIHsKICAgICAgICB1cGRhdGVBY3RpdmVMaW5rKCk7CiAgICAgICAgd2Fsayh0b2NFbCwgMCk7CiAgICAgIH0KICAgICAgaWYgKCFpc1JlYWRlck1vZGUoKSkgewogICAgICAgIGhpZGVPdmVybGFwcGVkU2lkZWJhcnMoKTsKICAgICAgfQogICAgfSwgMTApCiAgKTsKICBoaWRlT3ZlcmxhcHBlZFNpZGViYXJzKCk7CiAgaGlnaGxpZ2h0UmVhZGVyVG9nZ2xlKGlzUmVhZGVyTW9kZSgpKTsKfSk7CmluaXQoKTsKZnVuY3Rpb24gdGhyb3R0bGUoZnVuYywgd2FpdCkgewogIGxldCB3YWl0aW5nID0gZmFsc2U7CiAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgaWYgKCF3YWl0aW5nKSB7CiAgICAgIGZ1bmMuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgd2FpdGluZyA9IHRydWU7CiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgd2FpdGluZyA9IGZhbHNlOwogICAgICB9LCB3YWl0KTsKICAgIH0KICB9Owp9CmZ1bmN0aW9uIG5leHR0aWNrKGZ1bmMpIHsKICByZXR1cm4gc2V0VGltZW91dChmdW5jLCAwKTsKfQo=" type="module"></script>
<script src="data:application/javascript;base64,Ly8gPHN0ZGluPgpmdW5jdGlvbiBpbml0KCkgewogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsIChfZXZlbnQpID0+IHsKICAgIGZ1bmN0aW9uIGdldFRhYlNldHRpbmdzKCkgewogICAgICBjb25zdCBkYXRhID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oInF1YXJ0by1wZXJzaXN0ZW50LXRhYnNldHMtZGF0YSIpOwogICAgICBpZiAoIWRhdGEpIHsKICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgicXVhcnRvLXBlcnNpc3RlbnQtdGFic2V0cy1kYXRhIiwgInt9Iik7CiAgICAgICAgcmV0dXJuIHt9OwogICAgICB9CiAgICAgIGlmIChkYXRhKSB7CiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZGF0YSk7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHNldFRhYlNldHRpbmdzKGRhdGEpIHsKICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oCiAgICAgICAgInF1YXJ0by1wZXJzaXN0ZW50LXRhYnNldHMtZGF0YSIsCiAgICAgICAgSlNPTi5zdHJpbmdpZnkoZGF0YSkKICAgICAgKTsKICAgIH0KICAgIGZ1bmN0aW9uIHNldFRhYlN0YXRlKGdyb3VwTmFtZSwgZ3JvdXBWYWx1ZSkgewogICAgICBjb25zdCBkYXRhID0gZ2V0VGFiU2V0dGluZ3MoKTsKICAgICAgZGF0YVtncm91cE5hbWVdID0gZ3JvdXBWYWx1ZTsKICAgICAgc2V0VGFiU2V0dGluZ3MoZGF0YSk7CiAgICB9CiAgICBmdW5jdGlvbiB0b2dnbGVUYWIodGFiLCBhY3RpdmUpIHsKICAgICAgY29uc3QgdGFiUGFuZWxJZCA9IHRhYi5nZXRBdHRyaWJ1dGUoImFyaWEtY29udHJvbHMiKTsKICAgICAgY29uc3QgdGFiUGFuZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWJQYW5lbElkKTsKICAgICAgaWYgKGFjdGl2ZSkgewogICAgICAgIHRhYi5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTsKICAgICAgICB0YWJQYW5lbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0YWIuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIik7CiAgICAgICAgdGFiUGFuZWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIik7CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHRvZ2dsZUFsbChzZWxlY3RlZEdyb3VwLCBzZWxlY3RvcnNUb1N5bmMyKSB7CiAgICAgIGZvciAoY29uc3QgW3RoaXNHcm91cCwgdGFic10gb2YgT2JqZWN0LmVudHJpZXMoc2VsZWN0b3JzVG9TeW5jMikpIHsKICAgICAgICBjb25zdCBhY3RpdmUgPSBzZWxlY3RlZEdyb3VwID09PSB0aGlzR3JvdXA7CiAgICAgICAgZm9yIChjb25zdCB0YWIgb2YgdGFicykgewogICAgICAgICAgdG9nZ2xlVGFiKHRhYiwgYWN0aXZlKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGZpbmRTZWxlY3RvcnNUb1N5bmNCeUxhbmd1YWdlKCkgewogICAgICBjb25zdCByZXN1bHQgPSB7fTsKICAgICAgY29uc3QgdGFicyA9IEFycmF5LmZyb20oCiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChgZGl2W2RhdGEtZ3JvdXBdIGFbaWRePSd0YWJzZXQtJ11gKQogICAgICApOwogICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGFicykgewogICAgICAgIGNvbnN0IGRpdiA9IGl0ZW0ucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQ7CiAgICAgICAgY29uc3QgZ3JvdXAgPSBkaXYuZ2V0QXR0cmlidXRlKCJkYXRhLWdyb3VwIik7CiAgICAgICAgaWYgKCFyZXN1bHRbZ3JvdXBdKSB7CiAgICAgICAgICByZXN1bHRbZ3JvdXBdID0ge307CiAgICAgICAgfQogICAgICAgIGNvbnN0IHNlbGVjdG9yc1RvU3luYzIgPSByZXN1bHRbZ3JvdXBdOwogICAgICAgIGNvbnN0IHZhbHVlID0gaXRlbS5pbm5lckhUTUw7CiAgICAgICAgaWYgKCFzZWxlY3RvcnNUb1N5bmMyW3ZhbHVlXSkgewogICAgICAgICAgc2VsZWN0b3JzVG9TeW5jMlt2YWx1ZV0gPSBbXTsKICAgICAgICB9CiAgICAgICAgc2VsZWN0b3JzVG9TeW5jMlt2YWx1ZV0ucHVzaChpdGVtKTsKICAgICAgfQogICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogICAgZnVuY3Rpb24gc2V0dXBTZWxlY3RvclN5bmMoKSB7CiAgICAgIGNvbnN0IHNlbGVjdG9yc1RvU3luYzIgPSBmaW5kU2VsZWN0b3JzVG9TeW5jQnlMYW5ndWFnZSgpOwogICAgICBPYmplY3QuZW50cmllcyhzZWxlY3RvcnNUb1N5bmMyKS5mb3JFYWNoKChbZ3JvdXAsIHRhYlNldHNCeVZhbHVlXSkgPT4gewogICAgICAgIE9iamVjdC5lbnRyaWVzKHRhYlNldHNCeVZhbHVlKS5mb3JFYWNoKChbdmFsdWUsIGl0ZW1zXSkgPT4gewogICAgICAgICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gewogICAgICAgICAgICBpdGVtLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgKF9ldmVudDIpID0+IHsKICAgICAgICAgICAgICBzZXRUYWJTdGF0ZShncm91cCwgdmFsdWUpOwogICAgICAgICAgICAgIHRvZ2dsZUFsbCh2YWx1ZSwgc2VsZWN0b3JzVG9TeW5jMltncm91cF0pOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICB9KTsKICAgICAgcmV0dXJuIHNlbGVjdG9yc1RvU3luYzI7CiAgICB9CiAgICBjb25zdCBzZWxlY3RvcnNUb1N5bmMgPSBzZXR1cFNlbGVjdG9yU3luYygpOwogICAgZm9yIChjb25zdCBbZ3JvdXAsIHNlbGVjdGVkTmFtZV0gb2YgT2JqZWN0LmVudHJpZXMoZ2V0VGFiU2V0dGluZ3MoKSkpIHsKICAgICAgY29uc3Qgc2VsZWN0b3JzID0gc2VsZWN0b3JzVG9TeW5jW2dyb3VwXTsKICAgICAgaWYgKHNlbGVjdG9ycykgewogICAgICAgIHRvZ2dsZUFsbChzZWxlY3RlZE5hbWUsIHNlbGVjdG9ycyk7CiAgICAgIH0KICAgIH0KICB9KTsKfQpleHBvcnQgewogIGluaXQKfTsK" type="module"></script>
<script>/**
 * @popperjs/core v2.11.7 - MIT License
 */

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function c(){return!/^((?!chrome|android).)*safari/i.test(f())}function p(e,o,i){void 0===o&&(o=!1),void 0===i&&(i=!1);var a=e.getBoundingClientRect(),f=1,p=1;o&&r(e)&&(f=e.offsetWidth>0&&s(a.width)/e.offsetWidth||1,p=e.offsetHeight>0&&s(a.height)/e.offsetHeight||1);var u=(n(e)?t(e):window).visualViewport,l=!c()&&i,d=(a.left+(l&&u?u.offsetLeft:0))/f,h=(a.top+(l&&u?u.offsetTop:0))/p,m=a.width/f,v=a.height/p;return{width:m,height:v,top:h,right:d+m,bottom:h+v,left:d,x:d,y:h}}function u(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function l(e){return e?(e.nodeName||"").toLowerCase():null}function d(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function h(e){return p(d(e)).left+u(e).scrollLeft}function m(e){return t(e).getComputedStyle(e)}function v(e){var t=m(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function y(e,n,o){void 0===o&&(o=!1);var i,a,f=r(n),c=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),m=d(n),y=p(e,c,o),g={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(f||!f&&!o)&&(("body"!==l(n)||v(m))&&(g=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:u(i)),r(n)?((b=p(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):m&&(b.x=h(m))),{x:y.left+g.scrollLeft-b.x,y:y.top+g.scrollTop-b.y,width:y.width,height:y.height}}function g(e){var t=p(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function b(e){return"html"===l(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||d(e)}function x(e){return["html","body","#document"].indexOf(l(e))>=0?e.ownerDocument.body:r(e)&&v(e)?e:x(b(e))}function w(e,n){var r;void 0===n&&(n=[]);var o=x(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],v(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(w(b(s)))}function O(e){return["table","td","th"].indexOf(l(e))>=0}function j(e){return r(e)&&"fixed"!==m(e).position?e.offsetParent:null}function E(e){for(var n=t(e),i=j(e);i&&O(i)&&"static"===m(i).position;)i=j(i);return i&&("html"===l(i)||"body"===l(i)&&"static"===m(i).position)?n:i||function(e){var t=/firefox/i.test(f());if(/Trident/i.test(f())&&r(e)&&"fixed"===m(e).position)return null;var n=b(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(l(n))<0;){var i=m(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var D="top",A="bottom",L="right",P="left",M="auto",k=[D,A,L,P],W="start",B="end",H="viewport",T="popper",R=k.reduce((function(e,t){return e.concat([t+"-"+W,t+"-"+B])}),[]),S=[].concat(k,[M]).reduce((function(e,t){return e.concat([t,t+"-"+W,t+"-"+B])}),[]),V=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function q(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function N(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function I(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function _(e,r,o){return r===H?I(function(e,n){var r=t(e),o=d(e),i=r.visualViewport,a=o.clientWidth,s=o.clientHeight,f=0,p=0;if(i){a=i.width,s=i.height;var u=c();(u||!u&&"fixed"===n)&&(f=i.offsetLeft,p=i.offsetTop)}return{width:a,height:s,x:f+h(e),y:p}}(e,o)):n(r)?function(e,t){var n=p(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(r,o):I(function(e){var t,n=d(e),r=u(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=i(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=i(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),f=-r.scrollLeft+h(e),c=-r.scrollTop;return"rtl"===m(o||n).direction&&(f+=i(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:f,y:c}}(d(e)))}function F(e,t,o,s){var f="clippingParents"===t?function(e){var t=w(b(e)),o=["absolute","fixed"].indexOf(m(e).position)>=0&&r(e)?E(e):e;return n(o)?t.filter((function(e){return n(e)&&N(e,o)&&"body"!==l(e)})):[]}(e):[].concat(t),c=[].concat(f,[o]),p=c[0],u=c.reduce((function(t,n){var r=_(e,n,s);return t.top=i(r.top,t.top),t.right=a(r.right,t.right),t.bottom=a(r.bottom,t.bottom),t.left=i(r.left,t.left),t}),_(e,p,s));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function U(e){return e.split("-")[1]}function z(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function X(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?C(o):null,a=o?U(o):null,s=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(i){case D:t={x:s,y:n.y-r.height};break;case A:t={x:s,y:n.y+n.height};break;case L:t={x:n.x+n.width,y:f};break;case P:t={x:n.x-r.width,y:f};break;default:t={x:n.x,y:n.y}}var c=i?z(i):null;if(null!=c){var p="y"===c?"height":"width";switch(a){case W:t[c]=t[c]-(n[p]/2-r[p]/2);break;case B:t[c]=t[c]+(n[p]/2-r[p]/2)}}return t}function Y(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function G(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function J(e,t){void 0===t&&(t={});var r=t,o=r.placement,i=void 0===o?e.placement:o,a=r.strategy,s=void 0===a?e.strategy:a,f=r.boundary,c=void 0===f?"clippingParents":f,u=r.rootBoundary,l=void 0===u?H:u,h=r.elementContext,m=void 0===h?T:h,v=r.altBoundary,y=void 0!==v&&v,g=r.padding,b=void 0===g?0:g,x=Y("number"!=typeof b?b:G(b,k)),w=m===T?"reference":T,O=e.rects.popper,j=e.elements[y?w:m],E=F(n(j)?j:j.contextElement||d(e.elements.popper),c,l,s),P=p(e.elements.reference),M=X({reference:P,element:O,strategy:"absolute",placement:i}),W=I(Object.assign({},O,M)),B=m===T?W:P,R={top:E.top-B.top+x.top,bottom:B.bottom-E.bottom+x.bottom,left:E.left-B.left+x.left,right:B.right-E.right+x.right},S=e.modifiersData.offset;if(m===T&&S){var V=S[i];Object.keys(R).forEach((function(e){var t=[L,A].indexOf(e)>=0?1:-1,n=[D,A].indexOf(e)>=0?"y":"x";R[e]+=V[n]*t}))}return R}var K={placement:"bottom",modifiers:[],strategy:"absolute"};function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function Z(e){void 0===e&&(e={});var t=e,r=t.defaultModifiers,o=void 0===r?[]:r,i=t.defaultOptions,a=void 0===i?K:i;return function(e,t,r){void 0===r&&(r=a);var i,s,f={placement:"bottom",orderedModifiers:[],options:Object.assign({},K,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],p=!1,u={state:f,setOptions:function(r){var i="function"==typeof r?r(f.options):r;l(),f.options=Object.assign({},a,f.options,i),f.scrollParents={reference:n(e)?w(e):e.contextElement?w(e.contextElement):[],popper:w(t)};var s,p,d=function(e){var t=q(e);return V.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}((s=[].concat(o,f.options.modifiers),p=s.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{}),Object.keys(p).map((function(e){return p[e]}))));return f.orderedModifiers=d.filter((function(e){return e.enabled})),f.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,o=e.effect;if("function"==typeof o){var i=o({state:f,name:t,instance:u,options:r}),a=function(){};c.push(i||a)}})),u.update()},forceUpdate:function(){if(!p){var e=f.elements,t=e.reference,n=e.popper;if(Q(t,n)){f.rects={reference:y(t,E(n),"fixed"===f.options.strategy),popper:g(n)},f.reset=!1,f.placement=f.options.placement,f.orderedModifiers.forEach((function(e){return f.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<f.orderedModifiers.length;r++)if(!0!==f.reset){var o=f.orderedModifiers[r],i=o.fn,a=o.options,s=void 0===a?{}:a,c=o.name;"function"==typeof i&&(f=i({state:f,options:s,name:c,instance:u})||f)}else f.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){u.forceUpdate(),e(f)}))},function(){return s||(s=new Promise((function(e){Promise.resolve().then((function(){s=void 0,e(i())}))}))),s}),destroy:function(){l(),p=!0}};if(!Q(e,t))return u;function l(){c.forEach((function(e){return e()})),c=[]}return u.setOptions(r).then((function(e){!p&&r.onFirstUpdate&&r.onFirstUpdate(e)})),u}}var $={passive:!0};var ee={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,r=e.instance,o=e.options,i=o.scroll,a=void 0===i||i,s=o.resize,f=void 0===s||s,c=t(n.elements.popper),p=[].concat(n.scrollParents.reference,n.scrollParents.popper);return a&&p.forEach((function(e){e.addEventListener("scroll",r.update,$)})),f&&c.addEventListener("resize",r.update,$),function(){a&&p.forEach((function(e){e.removeEventListener("scroll",r.update,$)})),f&&c.removeEventListener("resize",r.update,$)}},data:{}};var te={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=X({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},ne={top:"auto",right:"auto",bottom:"auto",left:"auto"};function re(e){var n,r=e.popper,o=e.popperRect,i=e.placement,a=e.variation,f=e.offsets,c=e.position,p=e.gpuAcceleration,u=e.adaptive,l=e.roundOffsets,h=e.isFixed,v=f.x,y=void 0===v?0:v,g=f.y,b=void 0===g?0:g,x="function"==typeof l?l({x:y,y:b}):{x:y,y:b};y=x.x,b=x.y;var w=f.hasOwnProperty("x"),O=f.hasOwnProperty("y"),j=P,M=D,k=window;if(u){var W=E(r),H="clientHeight",T="clientWidth";if(W===t(r)&&"static"!==m(W=d(r)).position&&"absolute"===c&&(H="scrollHeight",T="scrollWidth"),W=W,i===D||(i===P||i===L)&&a===B)M=A,b-=(h&&W===k&&k.visualViewport?k.visualViewport.height:W[H])-o.height,b*=p?1:-1;if(i===P||(i===D||i===A)&&a===B)j=L,y-=(h&&W===k&&k.visualViewport?k.visualViewport.width:W[T])-o.width,y*=p?1:-1}var R,S=Object.assign({position:c},u&&ne),V=!0===l?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:s(n*o)/o||0,y:s(r*o)/o||0}}({x:y,y:b},t(r)):{x:y,y:b};return y=V.x,b=V.y,p?Object.assign({},S,((R={})[M]=O?"0":"",R[j]=w?"0":"",R.transform=(k.devicePixelRatio||1)<=1?"translate("+y+"px, "+b+"px)":"translate3d("+y+"px, "+b+"px, 0)",R)):Object.assign({},S,((n={})[M]=O?b+"px":"",n[j]=w?y+"px":"",n.transform="",n))}var oe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,f=void 0===s||s,c={placement:C(t.placement),variation:U(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,re(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:f})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,re(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var ie={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},i=t.elements[e];r(i)&&l(i)&&(Object.assign(i.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});r(o)&&l(o)&&(Object.assign(o.style,a),Object.keys(i).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]};var ae={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,a=S.reduce((function(e,n){return e[n]=function(e,t,n){var r=C(e),o=[P,D].indexOf(r)>=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[P,L].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],f=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=f,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}},se={left:"right",right:"left",bottom:"top",top:"bottom"};function fe(e){return e.replace(/left|right|bottom|top/g,(function(e){return se[e]}))}var ce={start:"end",end:"start"};function pe(e){return e.replace(/start|end/g,(function(e){return ce[e]}))}function ue(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=void 0===f?S:f,p=U(r),u=p?s?R:R.filter((function(e){return U(e)===p})):k,l=u.filter((function(e){return c.indexOf(e)>=0}));0===l.length&&(l=u);var d=l.reduce((function(t,n){return t[n]=J(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[C(n)],t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}var le={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,f=n.fallbackPlacements,c=n.padding,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.flipVariations,h=void 0===d||d,m=n.allowedAutoPlacements,v=t.options.placement,y=C(v),g=f||(y===v||!h?[fe(v)]:function(e){if(C(e)===M)return[];var t=fe(e);return[pe(e),t,pe(t)]}(v)),b=[v].concat(g).reduce((function(e,n){return e.concat(C(n)===M?ue(t,{placement:n,boundary:p,rootBoundary:u,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,O=new Map,j=!0,E=b[0],k=0;k<b.length;k++){var B=b[k],H=C(B),T=U(B)===W,R=[D,A].indexOf(H)>=0,S=R?"width":"height",V=J(t,{placement:B,boundary:p,rootBoundary:u,altBoundary:l,padding:c}),q=R?T?L:P:T?A:D;x[S]>w[S]&&(q=fe(q));var N=fe(q),I=[];if(i&&I.push(V[H]<=0),s&&I.push(V[q]<=0,V[N]<=0),I.every((function(e){return e}))){E=B,j=!1;break}O.set(B,I)}if(j)for(var _=function(e){var t=b.find((function(t){var n=O.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return E=t,"break"},F=h?3:1;F>0;F--){if("break"===_(F))break}t.placement!==E&&(t.modifiersData[r]._skip=!0,t.placement=E,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function de(e,t,n){return i(e,a(t,n))}var he={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=void 0===o||o,f=n.altAxis,c=void 0!==f&&f,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.padding,h=n.tether,m=void 0===h||h,v=n.tetherOffset,y=void 0===v?0:v,b=J(t,{boundary:p,rootBoundary:u,padding:d,altBoundary:l}),x=C(t.placement),w=U(t.placement),O=!w,j=z(x),M="x"===j?"y":"x",k=t.modifiersData.popperOffsets,B=t.rects.reference,H=t.rects.popper,T="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,R="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,V={x:0,y:0};if(k){if(s){var q,N="y"===j?D:P,I="y"===j?A:L,_="y"===j?"height":"width",F=k[j],X=F+b[N],Y=F-b[I],G=m?-H[_]/2:0,K=w===W?B[_]:H[_],Q=w===W?-H[_]:-B[_],Z=t.elements.arrow,$=m&&Z?g(Z):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[N],ne=ee[I],re=de(0,B[_],$[_]),oe=O?B[_]/2-G-re-te-R.mainAxis:K-re-te-R.mainAxis,ie=O?-B[_]/2+G+re+ne+R.mainAxis:Q+re+ne+R.mainAxis,ae=t.elements.arrow&&E(t.elements.arrow),se=ae?"y"===j?ae.clientTop||0:ae.clientLeft||0:0,fe=null!=(q=null==S?void 0:S[j])?q:0,ce=F+ie-fe,pe=de(m?a(X,F+oe-fe-se):X,F,m?i(Y,ce):Y);k[j]=pe,V[j]=pe-F}if(c){var ue,le="x"===j?D:P,he="x"===j?A:L,me=k[M],ve="y"===M?"height":"width",ye=me+b[le],ge=me-b[he],be=-1!==[D,P].indexOf(x),xe=null!=(ue=null==S?void 0:S[M])?ue:0,we=be?ye:me-B[ve]-H[ve]-xe+R.altAxis,Oe=be?me+B[ve]+H[ve]-xe-R.altAxis:ge,je=m&&be?function(e,t,n){var r=de(e,t,n);return r>n?n:r}(we,me,Oe):de(m?we:ye,me,m?Oe:ge);k[M]=je,V[M]=je-me}t.modifiersData[r]=V}},requiresIfExists:["offset"]};var me={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=C(n.placement),f=z(s),c=[P,L].indexOf(s)>=0?"height":"width";if(i&&a){var p=function(e,t){return Y("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:G(e,k))}(o.padding,n),u=g(i),l="y"===f?D:P,d="y"===f?A:L,h=n.rects.reference[c]+n.rects.reference[f]-a[f]-n.rects.popper[c],m=a[f]-n.rects.reference[f],v=E(i),y=v?"y"===f?v.clientHeight||0:v.clientWidth||0:0,b=h/2-m/2,x=p[l],w=y-u[c]-p[d],O=y/2-u[c]/2+b,j=de(x,O,w),M=f;n.modifiersData[r]=((t={})[M]=j,t.centerOffset=j-O,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&N(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ve(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function ye(e){return[D,L,A,P].some((function(t){return e[t]>=0}))}var ge={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=J(t,{elementContext:"reference"}),s=J(t,{altBoundary:!0}),f=ve(a,r),c=ve(s,o,i),p=ye(f),u=ye(c);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":u})}},be=Z({defaultModifiers:[ee,te,oe,ie]}),xe=[ee,te,oe,ie,ae,le,he,me,ge],we=Z({defaultModifiers:xe});e.applyStyles=ie,e.arrow=me,e.computeStyles=oe,e.createPopper=we,e.createPopperLite=be,e.defaultModifiers=xe,e.detectOverflow=J,e.eventListeners=ee,e.flip=le,e.hide=ge,e.offset=ae,e.popperGenerator=Z,e.popperOffsets=te,e.preventOverflow=he,Object.defineProperty(e,"__esModule",{value:!0})}));

</script>
<script>!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],t):(e=e||self).tippy=t(e.Popper)}(this,(function(e){"use strict";var t={passive:!0,capture:!0},n=function(){return document.body};function r(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function o(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function i(e,t){return"function"==typeof e?e.apply(void 0,t):e}function a(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function s(e,t){var n=Object.assign({},e);return t.forEach((function(e){delete n[e]})),n}function u(e){return[].concat(e)}function c(e,t){-1===e.indexOf(t)&&e.push(t)}function p(e){return e.split("-")[0]}function f(e){return[].slice.call(e)}function l(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function d(){return document.createElement("div")}function v(e){return["Element","Fragment"].some((function(t){return o(e,t)}))}function m(e){return o(e,"MouseEvent")}function g(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function h(e){return v(e)?[e]:function(e){return o(e,"NodeList")}(e)?f(e):Array.isArray(e)?e:f(document.querySelectorAll(e))}function b(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function y(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function w(e){var t,n=u(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function E(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function O(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var x={isTouch:!1},C=0;function T(){x.isTouch||(x.isTouch=!0,window.performance&&document.addEventListener("mousemove",A))}function A(){var e=performance.now();e-C<20&&(x.isTouch=!1,document.removeEventListener("mousemove",A)),C=e}function L(){var e=document.activeElement;if(g(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var D=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto,R=Object.assign({appendTo:n,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),k=Object.keys(R);function P(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=R[o])?r:i);return t}),{});return Object.assign({},e,t)}function j(e,t){var n=Object.assign({},t,{content:i(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(P(Object.assign({},R,{plugins:t}))):k).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function M(e,t){e.innerHTML=t}function V(e){var t=d();return!0===e?t.className="tippy-arrow":(t.className="tippy-svg-arrow",v(e)?t.appendChild(e):M(t,e)),t}function I(e,t){v(t.content)?(M(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?M(e,t.content):e.textContent=t.content)}function S(e){var t=e.firstElementChild,n=f(t.children);return{box:t,content:n.find((function(e){return e.classList.contains("tippy-content")})),arrow:n.find((function(e){return e.classList.contains("tippy-arrow")||e.classList.contains("tippy-svg-arrow")})),backdrop:n.find((function(e){return e.classList.contains("tippy-backdrop")}))}}function N(e){var t=d(),n=d();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=d();function o(n,r){var o=S(t),i=o.box,a=o.content,s=o.arrow;r.theme?i.setAttribute("data-theme",r.theme):i.removeAttribute("data-theme"),"string"==typeof r.animation?i.setAttribute("data-animation",r.animation):i.removeAttribute("data-animation"),r.inertia?i.setAttribute("data-inertia",""):i.removeAttribute("data-inertia"),i.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?i.setAttribute("role",r.role):i.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||I(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(i.removeChild(s),i.appendChild(V(r.arrow))):i.appendChild(V(r.arrow)):s&&i.removeChild(s)}return r.className="tippy-content",r.setAttribute("data-state","hidden"),I(r,e.props),t.appendChild(n),n.appendChild(r),o(e.props,e.props),{popper:t,onUpdate:o}}N.$$tippy=!0;var B=1,H=[],U=[];function _(o,s){var v,g,h,C,T,A,L,k,M=j(o,Object.assign({},R,P(l(s)))),V=!1,I=!1,N=!1,_=!1,F=[],W=a(we,M.interactiveDebounce),X=B++,Y=(k=M.plugins).filter((function(e,t){return k.indexOf(e)===t})),$={id:X,reference:o,popper:d(),popperInstance:null,props:M,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:Y,clearDelayTimeouts:function(){clearTimeout(v),clearTimeout(g),cancelAnimationFrame(h)},setProps:function(e){if($.state.isDestroyed)return;ae("onBeforeUpdate",[$,e]),be();var t=$.props,n=j(o,Object.assign({},t,l(e),{ignoreAttributes:!0}));$.props=n,he(),t.interactiveDebounce!==n.interactiveDebounce&&(ce(),W=a(we,n.interactiveDebounce));t.triggerTarget&&!n.triggerTarget?u(t.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):n.triggerTarget&&o.removeAttribute("aria-expanded");ue(),ie(),J&&J(t,n);$.popperInstance&&(Ce(),Ae().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));ae("onAfterUpdate",[$,e])},setContent:function(e){$.setProps({content:e})},show:function(){var e=$.state.isVisible,t=$.state.isDestroyed,o=!$.state.isEnabled,a=x.isTouch&&!$.props.touch,s=r($.props.duration,0,R.duration);if(e||t||o||a)return;if(te().hasAttribute("disabled"))return;if(ae("onShow",[$],!1),!1===$.props.onShow($))return;$.state.isVisible=!0,ee()&&(z.style.visibility="visible");ie(),de(),$.state.isMounted||(z.style.transition="none");if(ee()){var u=re(),p=u.box,f=u.content;b([p,f],0)}A=function(){var e;if($.state.isVisible&&!_){if(_=!0,z.offsetHeight,z.style.transition=$.props.moveTransition,ee()&&$.props.animation){var t=re(),n=t.box,r=t.content;b([n,r],s),y([n,r],"visible")}se(),ue(),c(U,$),null==(e=$.popperInstance)||e.forceUpdate(),ae("onMount",[$]),$.props.animation&&ee()&&function(e,t){me(e,t)}(s,(function(){$.state.isShown=!0,ae("onShown",[$])}))}},function(){var e,t=$.props.appendTo,r=te();e=$.props.interactive&&t===n||"parent"===t?r.parentNode:i(t,[r]);e.contains(z)||e.appendChild(z);$.state.isMounted=!0,Ce()}()},hide:function(){var e=!$.state.isVisible,t=$.state.isDestroyed,n=!$.state.isEnabled,o=r($.props.duration,1,R.duration);if(e||t||n)return;if(ae("onHide",[$],!1),!1===$.props.onHide($))return;$.state.isVisible=!1,$.state.isShown=!1,_=!1,V=!1,ee()&&(z.style.visibility="hidden");if(ce(),ve(),ie(!0),ee()){var i=re(),a=i.box,s=i.content;$.props.animation&&(b([a,s],o),y([a,s],"hidden"))}se(),ue(),$.props.animation?ee()&&function(e,t){me(e,(function(){!$.state.isVisible&&z.parentNode&&z.parentNode.contains(z)&&t()}))}(o,$.unmount):$.unmount()},hideWithInteractivity:function(e){ne().addEventListener("mousemove",W),c(H,W),W(e)},enable:function(){$.state.isEnabled=!0},disable:function(){$.hide(),$.state.isEnabled=!1},unmount:function(){$.state.isVisible&&$.hide();if(!$.state.isMounted)return;Te(),Ae().forEach((function(e){e._tippy.unmount()})),z.parentNode&&z.parentNode.removeChild(z);U=U.filter((function(e){return e!==$})),$.state.isMounted=!1,ae("onHidden",[$])},destroy:function(){if($.state.isDestroyed)return;$.clearDelayTimeouts(),$.unmount(),be(),delete o._tippy,$.state.isDestroyed=!0,ae("onDestroy",[$])}};if(!M.render)return $;var q=M.render($),z=q.popper,J=q.onUpdate;z.setAttribute("data-tippy-root",""),z.id="tippy-"+$.id,$.popper=z,o._tippy=$,z._tippy=$;var G=Y.map((function(e){return e.fn($)})),K=o.hasAttribute("aria-expanded");return he(),ue(),ie(),ae("onCreate",[$]),M.showOnCreate&&Le(),z.addEventListener("mouseenter",(function(){$.props.interactive&&$.state.isVisible&&$.clearDelayTimeouts()})),z.addEventListener("mouseleave",(function(){$.props.interactive&&$.props.trigger.indexOf("mouseenter")>=0&&ne().addEventListener("mousemove",W)})),$;function Q(){var e=$.props.touch;return Array.isArray(e)?e:[e,0]}function Z(){return"hold"===Q()[0]}function ee(){var e;return!(null==(e=$.props.render)||!e.$$tippy)}function te(){return L||o}function ne(){var e=te().parentNode;return e?w(e):document}function re(){return S(z)}function oe(e){return $.state.isMounted&&!$.state.isVisible||x.isTouch||C&&"focus"===C.type?0:r($.props.delay,e?0:1,R.delay)}function ie(e){void 0===e&&(e=!1),z.style.pointerEvents=$.props.interactive&&!e?"":"none",z.style.zIndex=""+$.props.zIndex}function ae(e,t,n){var r;(void 0===n&&(n=!0),G.forEach((function(n){n[e]&&n[e].apply(n,t)})),n)&&(r=$.props)[e].apply(r,t)}function se(){var e=$.props.aria;if(e.content){var t="aria-"+e.content,n=z.id;u($.props.triggerTarget||o).forEach((function(e){var r=e.getAttribute(t);if($.state.isVisible)e.setAttribute(t,r?r+" "+n:n);else{var o=r&&r.replace(n,"").trim();o?e.setAttribute(t,o):e.removeAttribute(t)}}))}}function ue(){!K&&$.props.aria.expanded&&u($.props.triggerTarget||o).forEach((function(e){$.props.interactive?e.setAttribute("aria-expanded",$.state.isVisible&&e===te()?"true":"false"):e.removeAttribute("aria-expanded")}))}function ce(){ne().removeEventListener("mousemove",W),H=H.filter((function(e){return e!==W}))}function pe(e){if(!x.isTouch||!N&&"mousedown"!==e.type){var t=e.composedPath&&e.composedPath()[0]||e.target;if(!$.props.interactive||!O(z,t)){if(u($.props.triggerTarget||o).some((function(e){return O(e,t)}))){if(x.isTouch)return;if($.state.isVisible&&$.props.trigger.indexOf("click")>=0)return}else ae("onClickOutside",[$,e]);!0===$.props.hideOnClick&&($.clearDelayTimeouts(),$.hide(),I=!0,setTimeout((function(){I=!1})),$.state.isMounted||ve())}}}function fe(){N=!0}function le(){N=!1}function de(){var e=ne();e.addEventListener("mousedown",pe,!0),e.addEventListener("touchend",pe,t),e.addEventListener("touchstart",le,t),e.addEventListener("touchmove",fe,t)}function ve(){var e=ne();e.removeEventListener("mousedown",pe,!0),e.removeEventListener("touchend",pe,t),e.removeEventListener("touchstart",le,t),e.removeEventListener("touchmove",fe,t)}function me(e,t){var n=re().box;function r(e){e.target===n&&(E(n,"remove",r),t())}if(0===e)return t();E(n,"remove",T),E(n,"add",r),T=r}function ge(e,t,n){void 0===n&&(n=!1),u($.props.triggerTarget||o).forEach((function(r){r.addEventListener(e,t,n),F.push({node:r,eventType:e,handler:t,options:n})}))}function he(){var e;Z()&&(ge("touchstart",ye,{passive:!0}),ge("touchend",Ee,{passive:!0})),(e=$.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(ge(e,ye),e){case"mouseenter":ge("mouseleave",Ee);break;case"focus":ge(D?"focusout":"blur",Oe);break;case"focusin":ge("focusout",Oe)}}))}function be(){F.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),F=[]}function ye(e){var t,n=!1;if($.state.isEnabled&&!xe(e)&&!I){var r="focus"===(null==(t=C)?void 0:t.type);C=e,L=e.currentTarget,ue(),!$.state.isVisible&&m(e)&&H.forEach((function(t){return t(e)})),"click"===e.type&&($.props.trigger.indexOf("mouseenter")<0||V)&&!1!==$.props.hideOnClick&&$.state.isVisible?n=!0:Le(e),"click"===e.type&&(V=!n),n&&!r&&De(e)}}function we(e){var t=e.target,n=te().contains(t)||z.contains(t);"mousemove"===e.type&&n||function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,o=e.popperState,i=e.props.interactiveBorder,a=p(o.placement),s=o.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,c="top"===a?s.bottom.y:0,f="right"===a?s.left.x:0,l="left"===a?s.right.x:0,d=t.top-r+u>i,v=r-t.bottom-c>i,m=t.left-n+f>i,g=n-t.right-l>i;return d||v||m||g}))}(Ae().concat(z).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:M}:null})).filter(Boolean),e)&&(ce(),De(e))}function Ee(e){xe(e)||$.props.trigger.indexOf("click")>=0&&V||($.props.interactive?$.hideWithInteractivity(e):De(e))}function Oe(e){$.props.trigger.indexOf("focusin")<0&&e.target!==te()||$.props.interactive&&e.relatedTarget&&z.contains(e.relatedTarget)||De(e)}function xe(e){return!!x.isTouch&&Z()!==e.type.indexOf("touch")>=0}function Ce(){Te();var t=$.props,n=t.popperOptions,r=t.placement,i=t.offset,a=t.getReferenceClientRect,s=t.moveTransition,u=ee()?S(z).arrow:null,c=a?{getBoundingClientRect:a,contextElement:a.contextElement||te()}:o,p=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(ee()){var n=re().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}}];ee()&&u&&p.push({name:"arrow",options:{element:u,padding:3}}),p.push.apply(p,(null==n?void 0:n.modifiers)||[]),$.popperInstance=e.createPopper(c,z,Object.assign({},n,{placement:r,onFirstUpdate:A,modifiers:p}))}function Te(){$.popperInstance&&($.popperInstance.destroy(),$.popperInstance=null)}function Ae(){return f(z.querySelectorAll("[data-tippy-root]"))}function Le(e){$.clearDelayTimeouts(),e&&ae("onTrigger",[$,e]),de();var t=oe(!0),n=Q(),r=n[0],o=n[1];x.isTouch&&"hold"===r&&o&&(t=o),t?v=setTimeout((function(){$.show()}),t):$.show()}function De(e){if($.clearDelayTimeouts(),ae("onUntrigger",[$,e]),$.state.isVisible){if(!($.props.trigger.indexOf("mouseenter")>=0&&$.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&V)){var t=oe(!1);t?g=setTimeout((function(){$.state.isVisible&&$.hide()}),t):h=requestAnimationFrame((function(){$.hide()}))}}else ve()}}function F(e,n){void 0===n&&(n={});var r=R.plugins.concat(n.plugins||[]);document.addEventListener("touchstart",T,t),window.addEventListener("blur",L);var o=Object.assign({},n,{plugins:r}),i=h(e).reduce((function(e,t){var n=t&&_(t,o);return n&&e.push(n),e}),[]);return v(e)?i[0]:i}F.defaultProps=R,F.setDefaultProps=function(e){Object.keys(e).forEach((function(t){R[t]=e[t]}))},F.currentInput=x;var W=Object.assign({},e.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),X={mouseover:"mouseenter",focusin:"focus",click:"click"};var Y={name:"animateFill",defaultValue:!1,fn:function(e){var t;if(null==(t=e.props.render)||!t.$$tippy)return{};var n=S(e.popper),r=n.box,o=n.content,i=e.props.animateFill?function(){var e=d();return e.className="tippy-backdrop",y([e],"hidden"),e}():null;return{onCreate:function(){i&&(r.insertBefore(i,r.firstElementChild),r.setAttribute("data-animatefill",""),r.style.overflow="hidden",e.setProps({arrow:!1,animation:"shift-away"}))},onMount:function(){if(i){var e=r.style.transitionDuration,t=Number(e.replace("ms",""));o.style.transitionDelay=Math.round(t/10)+"ms",i.style.transitionDuration=e,y([i],"visible")}},onShow:function(){i&&(i.style.transitionDuration="0ms")},onHide:function(){i&&y([i],"hidden")}}}};var $={clientX:0,clientY:0},q=[];function z(e){var t=e.clientX,n=e.clientY;$={clientX:t,clientY:n}}var J={name:"followCursor",defaultValue:!1,fn:function(e){var t=e.reference,n=w(e.props.triggerTarget||t),r=!1,o=!1,i=!0,a=e.props;function s(){return"initial"===e.props.followCursor&&e.state.isVisible}function u(){n.addEventListener("mousemove",f)}function c(){n.removeEventListener("mousemove",f)}function p(){r=!0,e.setProps({getReferenceClientRect:null}),r=!1}function f(n){var r=!n.target||t.contains(n.target),o=e.props.followCursor,i=n.clientX,a=n.clientY,s=t.getBoundingClientRect(),u=i-s.left,c=a-s.top;!r&&e.props.interactive||e.setProps({getReferenceClientRect:function(){var e=t.getBoundingClientRect(),n=i,r=a;"initial"===o&&(n=e.left+u,r=e.top+c);var s="horizontal"===o?e.top:r,p="vertical"===o?e.right:n,f="horizontal"===o?e.bottom:r,l="vertical"===o?e.left:n;return{width:p-l,height:f-s,top:s,right:p,bottom:f,left:l}}})}function l(){e.props.followCursor&&(q.push({instance:e,doc:n}),function(e){e.addEventListener("mousemove",z)}(n))}function d(){0===(q=q.filter((function(t){return t.instance!==e}))).filter((function(e){return e.doc===n})).length&&function(e){e.removeEventListener("mousemove",z)}(n)}return{onCreate:l,onDestroy:d,onBeforeUpdate:function(){a=e.props},onAfterUpdate:function(t,n){var i=n.followCursor;r||void 0!==i&&a.followCursor!==i&&(d(),i?(l(),!e.state.isMounted||o||s()||u()):(c(),p()))},onMount:function(){e.props.followCursor&&!o&&(i&&(f($),i=!1),s()||u())},onTrigger:function(e,t){m(t)&&($={clientX:t.clientX,clientY:t.clientY}),o="focus"===t.type},onHidden:function(){e.props.followCursor&&(p(),c(),i=!0)}}}};var G={name:"inlinePositioning",defaultValue:!1,fn:function(e){var t,n=e.reference;var r=-1,o=!1,i=[],a={name:"tippyInlinePositioning",enabled:!0,phase:"afterWrite",fn:function(o){var a=o.state;e.props.inlinePositioning&&(-1!==i.indexOf(a.placement)&&(i=[]),t!==a.placement&&-1===i.indexOf(a.placement)&&(i.push(a.placement),e.setProps({getReferenceClientRect:function(){return function(e){return function(e,t,n,r){if(n.length<2||null===e)return t;if(2===n.length&&r>=0&&n[0].left>n[1].right)return n[r]||t;switch(e){case"top":case"bottom":var o=n[0],i=n[n.length-1],a="top"===e,s=o.top,u=i.bottom,c=a?o.left:i.left,p=a?o.right:i.right;return{top:s,bottom:u,left:c,right:p,width:p-c,height:u-s};case"left":case"right":var f=Math.min.apply(Math,n.map((function(e){return e.left}))),l=Math.max.apply(Math,n.map((function(e){return e.right}))),d=n.filter((function(t){return"left"===e?t.left===f:t.right===l})),v=d[0].top,m=d[d.length-1].bottom;return{top:v,bottom:m,left:f,right:l,width:l-f,height:m-v};default:return t}}(p(e),n.getBoundingClientRect(),f(n.getClientRects()),r)}(a.placement)}})),t=a.placement)}};function s(){var t;o||(t=function(e,t){var n;return{popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat(((null==(n=e.popperOptions)?void 0:n.modifiers)||[]).filter((function(e){return e.name!==t.name})),[t])})}}(e.props,a),o=!0,e.setProps(t),o=!1)}return{onCreate:s,onAfterUpdate:s,onTrigger:function(t,n){if(m(n)){var o=f(e.reference.getClientRects()),i=o.find((function(e){return e.left-2<=n.clientX&&e.right+2>=n.clientX&&e.top-2<=n.clientY&&e.bottom+2>=n.clientY})),a=o.indexOf(i);r=a>-1?a:r}},onHidden:function(){r=-1}}}};var K={name:"sticky",defaultValue:!1,fn:function(e){var t=e.reference,n=e.popper;function r(t){return!0===e.props.sticky||e.props.sticky===t}var o=null,i=null;function a(){var s=r("reference")?(e.popperInstance?e.popperInstance.state.elements.reference:t).getBoundingClientRect():null,u=r("popper")?n.getBoundingClientRect():null;(s&&Q(o,s)||u&&Q(i,u))&&e.popperInstance&&e.popperInstance.update(),o=s,i=u,e.state.isMounted&&requestAnimationFrame(a)}return{onMount:function(){e.props.sticky&&a()}}}};function Q(e,t){return!e||!t||(e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom||e.left!==t.left)}return F.setDefaultProps({plugins:[Y,J,G,K],render:N}),F.createSingleton=function(e,t){var n;void 0===t&&(t={});var r,o=e,i=[],a=[],c=t.overrides,p=[],f=!1;function l(){a=o.map((function(e){return u(e.props.triggerTarget||e.reference)})).reduce((function(e,t){return e.concat(t)}),[])}function v(){i=o.map((function(e){return e.reference}))}function m(e){o.forEach((function(t){e?t.enable():t.disable()}))}function g(e){return o.map((function(t){var n=t.setProps;return t.setProps=function(o){n(o),t.reference===r&&e.setProps(o)},function(){t.setProps=n}}))}function h(e,t){var n=a.indexOf(t);if(t!==r){r=t;var s=(c||[]).concat("content").reduce((function(e,t){return e[t]=o[n].props[t],e}),{});e.setProps(Object.assign({},s,{getReferenceClientRect:"function"==typeof s.getReferenceClientRect?s.getReferenceClientRect:function(){var e;return null==(e=i[n])?void 0:e.getBoundingClientRect()}}))}}m(!1),v(),l();var b={fn:function(){return{onDestroy:function(){m(!0)},onHidden:function(){r=null},onClickOutside:function(e){e.props.showOnCreate&&!f&&(f=!0,r=null)},onShow:function(e){e.props.showOnCreate&&!f&&(f=!0,h(e,i[0]))},onTrigger:function(e,t){h(e,t.currentTarget)}}}},y=F(d(),Object.assign({},s(t,["overrides"]),{plugins:[b].concat(t.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat((null==(n=t.popperOptions)?void 0:n.modifiers)||[],[W])})})),w=y.show;y.show=function(e){if(w(),!r&&null==e)return h(y,i[0]);if(!r||null!=e){if("number"==typeof e)return i[e]&&h(y,i[e]);if(o.indexOf(e)>=0){var t=e.reference;return h(y,t)}return i.indexOf(e)>=0?h(y,e):void 0}},y.showNext=function(){var e=i[0];if(!r)return y.show(0);var t=i.indexOf(r);y.show(i[t+1]||e)},y.showPrevious=function(){var e=i[i.length-1];if(!r)return y.show(e);var t=i.indexOf(r),n=i[t-1]||e;y.show(n)};var E=y.setProps;return y.setProps=function(e){c=e.overrides||c,E(e)},y.setInstances=function(e){m(!0),p.forEach((function(e){return e()})),o=e,m(!1),v(),l(),p=g(y),y.setProps({triggerTarget:a})},p=g(y),y},F.delegate=function(e,n){var r=[],o=[],i=!1,a=n.target,c=s(n,["target"]),p=Object.assign({},c,{trigger:"manual",touch:!1}),f=Object.assign({touch:R.touch},c,{showOnCreate:!0}),l=F(e,p);function d(e){if(e.target&&!i){var t=e.target.closest(a);if(t){var r=t.getAttribute("data-tippy-trigger")||n.trigger||R.trigger;if(!t._tippy&&!("touchstart"===e.type&&"boolean"==typeof f.touch||"touchstart"!==e.type&&r.indexOf(X[e.type])<0)){var s=F(t,f);s&&(o=o.concat(s))}}}}function v(e,t,n,o){void 0===o&&(o=!1),e.addEventListener(t,n,o),r.push({node:e,eventType:t,handler:n,options:o})}return u(l).forEach((function(e){var n=e.destroy,a=e.enable,s=e.disable;e.destroy=function(e){void 0===e&&(e=!0),e&&o.forEach((function(e){e.destroy()})),o=[],r.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),r=[],n()},e.enable=function(){a(),o.forEach((function(e){return e.enable()})),i=!1},e.disable=function(){s(),o.forEach((function(e){return e.disable()})),i=!0},function(e){var n=e.reference;v(n,"touchstart",d,t),v(n,"mouseover",d),v(n,"focusin",d),v(n,"click",d)}(e)})),l},F.hideAll=function(e){var t=void 0===e?{}:e,n=t.exclude,r=t.duration;U.forEach((function(e){var t=!1;if(n&&(t=g(n)?e.reference===n:e.popper===n.popper),!t){var o=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:o})}}))},F.roundArrow='<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>',F}));

</script>
<script>// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
//
// AnchorJS - v5.0.0 - 2023-01-18
// https://www.bryanbraun.com/anchorjs/
// Copyright (c) 2023 Bryan Braun; Licensed MIT
//
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(globalThis,function(){"use strict";return function(A){function u(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function d(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],u(this.options),this.add=function(A){var e,t,o,i,n,s,a,r,l,c,h,p=[];if(u(this.options),0!==(e=d(A=A||"h2, h3, h4, h5, h6")).length){for(null===document.head.querySelector("style.anchorjs")&&((A=document.createElement("style")).className="anchorjs",A.appendChild(document.createTextNode("")),void 0===(h=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(A):document.head.insertBefore(A,h),A.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",A.sheet.cssRules.length),A.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",A.sheet.cssRules.length),A.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",A.sheet.cssRules.length),A.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',A.sheet.cssRules.length)),h=document.querySelectorAll("[id]"),t=[].map.call(h,function(A){return A.id}),i=0;i<e.length;i++)if(this.hasAnchorJSLink(e[i]))p.push(i);else{if(e[i].hasAttribute("id"))o=e[i].getAttribute("id");else if(e[i].hasAttribute("data-anchor-id"))o=e[i].getAttribute("data-anchor-id");else{for(r=a=this.urlify(e[i].textContent),s=0;n=t.indexOf(r=void 0!==n?a+"-"+s:r),s+=1,-1!==n;);n=void 0,t.push(r),e[i].setAttribute("id",r),o=r}(l=document.createElement("a")).className="anchorjs-link "+this.options.class,l.setAttribute("aria-label",this.options.ariaLabel),l.setAttribute("data-anchorjs-icon",this.options.icon),this.options.titleText&&(l.title=this.options.titleText),c=document.querySelector("base")?window.location.pathname+window.location.search:"",c=this.options.base||c,l.href=c+"#"+o,"always"===this.options.visible&&(l.style.opacity="1"),""===this.options.icon&&(l.style.font="1em/1 anchorjs-icons","left"===this.options.placement)&&(l.style.lineHeight="inherit"),"left"===this.options.placement?(l.style.position="absolute",l.style.marginLeft="-1.25em",l.style.paddingRight=".25em",l.style.paddingLeft=".25em",e[i].insertBefore(l,e[i].firstChild)):(l.style.marginLeft=".1875em",l.style.paddingRight=".1875em",l.style.paddingLeft=".1875em",e[i].appendChild(l))}for(i=0;i<p.length;i++)e.splice(p[i]-i,1);this.elements=this.elements.concat(e)}return this},this.remove=function(A){for(var e,t,o=d(A),i=0;i<o.length;i++)(t=o[i].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(o[i]))&&this.elements.splice(e,1),o[i].removeChild(t));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(A){var e=document.createElement("textarea");return e.innerHTML=A,A=e.value,this.options.truncate||u(this.options),A.trim().replace(/'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}});
// @license-end</script>
<style type="text/css">.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}