!function(n){"object"==typeof exports&&"undefined"!=typeof module?(module.exports=n(),module.exports.introJs=function(){return console.warn('Deprecated: please use require("intro.js") directly, instead of the introJs method of the function'),n().apply(this,arguments)}):"function"==typeof define&&define.amd?define([],n):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).introJs=n()}(function(){function c(n){this._targetElement=n;this._introItems=[];this._options={nextLabel:"Next &rarr;",prevLabel:"&larr; Back",skipLabel:"Skip",doneLabel:"Done",hidePrev:!1,hideNext:!1,tooltipPosition:"bottom",tooltipClass:"",highlightClass:"",exitOnEsc:!0,exitOnOverlayClick:!0,showStepNumbers:!0,keyboardNavigation:!0,showButtons:!0,showBullets:!0,showProgress:!1,scrollToElement:!0,scrollTo:"element",scrollPadding:30,overlayOpacity:.8,positionPrecedence:["bottom","top","right","left"],disableInteraction:!1,helperElementPadding:10,hintPosition:"top-middle",hintButtonLabel:"Got it",hintAnimation:!0,buttonClass:"introjs-button"}}function kt(t,i){var l=t.querySelectorAll("*[data-intro]"),r=[],c,f,a,h;if(this._options.steps)n(this._options.steps,function(n){var t=g(n),i;(t.step=r.length+1,"string"==typeof t.element&&(t.element=document.querySelector(t.element)),void 0===t.element||null===t.element)&&(i=document.querySelector(".introjsFloatingElement"),null===i&&((i=document.createElement("div")).className="introjsFloatingElement",document.body.appendChild(i)),t.element=i,t.position="floating");t.scrollTo=t.scrollTo||this._options.scrollTo;void 0===t.disableInteraction&&(t.disableInteraction=this._options.disableInteraction);null!==t.element&&r.push(t)}.bind(this));else{if(l.length<1)return!1;n(l,function(n){if((!i||n.getAttribute("data-intro-group")===i)&&"none"!==n.style.display){var t=parseInt(n.getAttribute("data-step"),10);c=void 0!==n.getAttribute("data-disable-interaction")?!!n.getAttribute("data-disable-interaction"):this._options.disableInteraction;0<t&&(r[t-1]={element:n,intro:n.getAttribute("data-intro"),step:parseInt(n.getAttribute("data-step"),10),tooltipClass:n.getAttribute("data-tooltipclass"),highlightClass:n.getAttribute("data-highlightclass"),position:n.getAttribute("data-position")||this._options.tooltipPosition,scrollTo:n.getAttribute("data-scrollto")||this._options.scrollTo,disableInteraction:c})}}.bind(this));f=0;n(l,function(n){if((!i||n.getAttribute("data-intro-group")===i)&&null===n.getAttribute("data-step")){for(;void 0!==r[f];)f++;c=void 0!==n.getAttribute("data-disable-interaction")?!!n.getAttribute("data-disable-interaction"):this._options.disableInteraction;r[f]={element:n,intro:n.getAttribute("data-intro"),step:f+1,tooltipClass:n.getAttribute("data-tooltipclass"),highlightClass:n.getAttribute("data-highlightclass"),position:n.getAttribute("data-position")||this._options.tooltipPosition,scrollTo:n.getAttribute("data-scrollto")||this._options.scrollTo,disableInteraction:c}}}.bind(this))}for(a=[],h=0;h<r.length;h++)r[h]&&a.push(r[h]);return(r=a).sort(function(n,t){return n.step-t.step}),this._introItems=r,function(n){var t=document.createElement("div"),i="",u=this,r;return(t.className="introjs-overlay",n.tagName&&"body"!==n.tagName.toLowerCase())?(r=e(n),r&&(i+="width: "+r.width+"px; height:"+r.height+"px; top:"+r.top+"px;left: "+r.left+"px;",t.style.cssText=i)):(i+="top: 0;bottom: 0; left: 0;right: 0;position: fixed;",t.style.cssText=i),n.appendChild(t),t.onclick=function(){!0===u._options.exitOnOverlayClick&&o.call(u,n)},window.setTimeout(function(){i+="opacity: "+u._options.overlayOpacity.toString()+";";t.style.cssText=i},10),!0}.call(this,t)&&(u.call(this),this._options.keyboardNavigation&&s.on(window,"keydown",et,this,!0),s.on(window,"resize",ft,this,!0)),!1}function ft(){this.refresh.call(this)}function et(n){var t=null===n.code?n.which:n.code,i;(null===t&&(t=null===n.charCode?n.keyCode:n.charCode),"Escape"!==t&&27!==t||!0!==this._options.exitOnEsc)?"ArrowLeft"===t||37===t?y.call(this):"ArrowRight"===t||39===t?u.call(this):("Enter"===t||13===t)&&(i=n.target||n.srcElement,i&&i.className.match("introjs-prevbutton")?y.call(this):i&&i.className.match("introjs-skipbutton")?(this._introItems.length-1===this._currentStep&&"function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this),o.call(this,this._targetElement)):i&&i.getAttribute("data-stepnumber")?i.click():u.call(this),n.preventDefault?n.preventDefault():n.returnValue=!1):o.call(this,this._targetElement)}function g(n){var i,t;if(null===n||"object"!=typeof n||void 0!==n.nodeType)return n;i={};for(t in n)i[t]=void 0!==window.jQuery&&n[t]instanceof window.jQuery?n[t]:g(n[t]);return i}function u(){this._direction="forward";void 0!==this._currentStepNumber&&n(this._introItems,function(n,t){n.step===this._currentStepNumber&&(this._currentStep=t-1,this._currentStepNumber=void 0)}.bind(this));void 0===this._currentStep?this._currentStep=0:++this._currentStep;var t=this._introItems[this._currentStep],i=!0;return void 0!==this._introBeforeChangeCallback&&(i=this._introBeforeChangeCallback.call(this,t.element)),!1===i?(--this._currentStep,!1):this._introItems.length<=this._currentStep?("function"==typeof this._introCompleteCallback&&this._introCompleteCallback.call(this),void o.call(this,this._targetElement)):void ot.call(this,t)}function y(){if(this._direction="backward",0===this._currentStep)return!1;--this._currentStep;var n=this._introItems[this._currentStep],t=!0;if(void 0!==this._introBeforeChangeCallback&&(t=this._introBeforeChangeCallback.call(this,n.element)),!1===t)return++this._currentStep,!1;ot.call(this,n)}function o(t,i){var h=!0,r,u,f,e,o;(void 0!==this._introBeforeExitCallback&&(h=this._introBeforeExitCallback.call(this)),i||!1!==h)&&(r=t.querySelectorAll(".introjs-overlay"),r&&r.length&&n(r,function(n){n.style.opacity=0;window.setTimeout(function(){this.parentNode&&this.parentNode.removeChild(this)}.bind(n),500)}.bind(this)),u=t.querySelector(".introjs-helperLayer"),u&&u.parentNode.removeChild(u),f=t.querySelector(".introjs-tooltipReferenceLayer"),f&&f.parentNode.removeChild(f),e=t.querySelector(".introjs-disableInteraction"),e&&e.parentNode.removeChild(e),o=document.querySelector(".introjsFloatingElement"),o&&o.parentNode.removeChild(o),ht(),n(document.querySelectorAll(".introjs-fixParent"),function(n){a(n,/introjs-fixParent/g)}),s.off(window,"keydown",et,this,!0),s.off(window,"resize",ft,this,!0),void 0!==this._introExitCallback&&this._introExitCallback.call(this),this._currentStep=void 0)}function p(n,i,r,u,o){var y,h,s,l,a,p="",v,c;if(o=o||!1,i.style.top=null,i.style.right=null,i.style.bottom=null,i.style.left=null,i.style.marginLeft=null,i.style.marginTop=null,r.style.display="inherit",null!=u&&(u.style.top=null,u.style.left=null),this._introItems[this._currentStep])switch(p="string"==typeof(y=this._introItems[this._currentStep]).tooltipClass?y.tooltipClass:this._options.tooltipClass,i.className=("introjs-tooltip "+p).replace(/^\s+|\s+$/g,""),i.setAttribute("role","dialog"),"floating"!==(a=this._introItems[this._currentStep].position)&&(a=function(n,t,i){var r=this._options.positionPrecedence.slice(),s=it(),h=e(t).height+10,c=e(t).width+20,u=n.getBoundingClientRect(),o="floating",v,l,a;return u.bottom+h+h>s.height&&f(r,"bottom"),u.top-h<0&&f(r,"top"),u.right+c>s.width&&f(r,"right"),u.left-c<0&&f(r,"left"),v=(l=i||"",a=l.indexOf("-"),-1!==a?l.substr(a):""),i&&(i=i.split("-")[0]),r.length&&(o="auto"!==i&&-1<r.indexOf(i)?i:r[0]),-1!==["top","bottom"].indexOf(o)&&(o+=function(n,t,i,r){var e=t/2,o=Math.min(i.width,window.screen.width),u=["-left-aligned","-middle-aligned","-right-aligned"];return o-n<t&&f(u,"-left-aligned"),(n<e||o-n<e)&&f(u,"-middle-aligned"),n<t&&f(u,"-right-aligned"),u.length?-1!==u.indexOf(r)?r:u[0]:"-middle-aligned"}(u.left,c,s,v)),o}.call(this,n,i,a)),s=e(n),h=e(i),l=it(),t(i,"introjs-"+a),a){case"top-right-aligned":r.className="introjs-arrow bottom-right";v=0;b(s,v,h,i);i.style.bottom=s.height+20+"px";break;case"top-middle-aligned":r.className="introjs-arrow bottom-middle";c=s.width/2-h.width/2;o&&(c+=5);b(s,c,h,i)&&(i.style.right=null,w(s,c,h,l,i));i.style.bottom=s.height+20+"px";break;case"top-left-aligned":case"top":r.className="introjs-arrow bottom";w(s,o?0:15,h,l,i);i.style.bottom=s.height+20+"px";break;case"right":i.style.left=s.width+20+"px";s.top+h.height>l.height?(r.className="introjs-arrow left-bottom",i.style.top="-"+(h.height-s.height-20)+"px"):r.className="introjs-arrow left";break;case"left":o||!0!==this._options.showStepNumbers||(i.style.top="15px");s.top+h.height>l.height?(i.style.top="-"+(h.height-s.height-20)+"px",r.className="introjs-arrow right-bottom"):r.className="introjs-arrow right";i.style.right=s.width+20+"px";break;case"floating":r.style.display="none";i.style.left="50%";i.style.top="50%";i.style.marginLeft="-"+h.width/2+"px";i.style.marginTop="-"+h.height/2+"px";null!=u&&(u.style.left="-"+(h.width/2+18)+"px",u.style.top="-"+(h.height/2+18)+"px");break;case"bottom-right-aligned":r.className="introjs-arrow top-right";b(s,v=0,h,i);i.style.top=s.height+20+"px";break;case"bottom-middle-aligned":r.className="introjs-arrow top-middle";c=s.width/2-h.width/2;o&&(c+=5);b(s,c,h,i)&&(i.style.right=null,w(s,c,h,l,i));i.style.top=s.height+20+"px";break;default:r.className="introjs-arrow top";w(s,0,h,l,i);i.style.top=s.height+20+"px"}}function w(n,t,i,r,u){return n.left+t+i.width>r.width?(u.style.left=r.width-i.width-n.left+"px",!1):(u.style.left=t+"px",!0)}function b(n,t,i,r){return n.left+n.width-t-i.width<0?(r.style.left=-n.left+"px",!1):(r.style.right=t+"px",!0)}function f(n,t){-1<n.indexOf(t)&&n.splice(n.indexOf(t),1)}function i(n){if(n){if(!this._introItems[this._currentStep])return;var u=this._introItems[this._currentStep],r=e(u.element),i=this._options.helperElementPadding;tt(u.element)?t(n,"introjs-fixedTooltip"):a(n,"introjs-fixedTooltip");"floating"===u.position&&(i=0);n.style.cssText="width: "+(r.width+i)+"px; height:"+(r.height+i)+"px; top:"+(r.top-i/2)+"px;left: "+(r.left-i/2)+"px;"}}function l(n){n.setAttribute("role","button");n.tabIndex=0}function ot(f){var at,ot,dt,b,it,ct;void 0!==this._introChangeCallback&&this._introChangeCallback.call(this,f.element);var h,c,s,rt,e=this,lt=document.querySelector(".introjs-helperLayer"),v=document.querySelector(".introjs-tooltipReferenceLayer"),ut="introjs-helperLayer";if("string"==typeof f.highlightClass&&(ut+=" "+f.highlightClass),"string"==typeof this._options.highlightClass&&(ut+=" "+this._options.highlightClass),null!==lt){var k=v.querySelector(".introjs-helperNumberLayer"),kt=v.querySelector(".introjs-tooltiptext"),gt=v.querySelector(".introjs-arrow"),nt=v.querySelector(".introjs-tooltip");(s=v.querySelector(".introjs-skipbutton"),c=v.querySelector(".introjs-prevbutton"),h=v.querySelector(".introjs-nextbutton"),lt.className=ut,nt.style.opacity=0,nt.style.display="none",null!==k)&&(at=this._introItems[0<=f.step-2?f.step-2:0],(null!==at&&"forward"===this._direction&&"floating"===at.position||"backward"===this._direction&&"floating"===f.position)&&(k.style.opacity=0));(rt=wt(f.element))!==document.body&&bt(rt,f.element);i.call(e,lt);i.call(e,v);n(document.querySelectorAll(".introjs-fixParent"),function(n){a(n,/introjs-fixParent/g)});ht();e._lastShowElementTimer&&window.clearTimeout(e._lastShowElementTimer);e._lastShowElementTimer=window.setTimeout(function(){null!==k&&(k.innerHTML=f.step);kt.innerHTML=f.intro;nt.style.display="block";p.call(e,f.element,nt,gt,k);e._options.showBullets&&(v.querySelector(".introjs-bullets li > a.active").className="",v.querySelector('.introjs-bullets li > a[data-stepnumber="'+f.step+'"]').className="active");v.querySelector(".introjs-progress .introjs-progressbar").style.cssText="width:"+d.call(e)+"%;";v.querySelector(".introjs-progress .introjs-progressbar").setAttribute("aria-valuenow",d.call(e));nt.style.opacity=1;k&&(k.style.opacity=1);null!=s&&/introjs-donebutton/gi.test(s.className)?s.focus():null!=h&&h.focus();st.call(e,f.scrollTo,f,kt)},350)}else{var vt=document.createElement("div"),tt=document.createElement("div"),yt=document.createElement("div"),w=document.createElement("div"),pt=document.createElement("div"),ft=document.createElement("div"),et=document.createElement("div"),g=document.createElement("div");vt.className=ut;tt.className="introjs-tooltipReferenceLayer";(rt=wt(f.element))!==document.body&&bt(rt,f.element);i.call(e,vt);i.call(e,tt);this._targetElement.appendChild(vt);this._targetElement.appendChild(tt);yt.className="introjs-arrow";pt.className="introjs-tooltiptext";pt.innerHTML=f.intro;!(ft.className="introjs-bullets")===this._options.showBullets&&(ft.style.display="none");ot=document.createElement("ul");ot.setAttribute("role","tablist");dt=function(){e.goToStep(this.getAttribute("data-stepnumber"))};n(this._introItems,function(n,t){var r=document.createElement("li"),i=document.createElement("a");r.setAttribute("role","presentation");i.setAttribute("role","tab");i.onclick=dt;t===f.step-1&&(i.className="active");l(i);i.innerHTML="&nbsp;";i.setAttribute("data-stepnumber",n.step);r.appendChild(i);ot.appendChild(r)});ft.appendChild(ot);!(et.className="introjs-progress")===this._options.showProgress&&(et.style.display="none");b=document.createElement("div");b.className="introjs-progressbar";b.setAttribute("role","progress");b.setAttribute("aria-valuemin",0);b.setAttribute("aria-valuemax",100);b.setAttribute("aria-valuenow",d.call(this));b.style.cssText="width:"+d.call(this)+"%;";et.appendChild(b);!(g.className="introjs-tooltipbuttons")===this._options.showButtons&&(g.style.display="none");w.className="introjs-tooltip";w.appendChild(pt);w.appendChild(ft);w.appendChild(et);it=document.createElement("span");!0===this._options.showStepNumbers&&(it.className="introjs-helperNumberLayer",it.innerHTML=f.step,tt.appendChild(it));w.appendChild(yt);tt.appendChild(w);(h=document.createElement("a")).onclick=function(){e._introItems.length-1!==e._currentStep&&u.call(e)};l(h);h.innerHTML=this._options.nextLabel;(c=document.createElement("a")).onclick=function(){0!==e._currentStep&&y.call(e)};l(c);c.innerHTML=this._options.prevLabel;(s=document.createElement("a")).className=this._options.buttonClass+" introjs-skipbutton ";l(s);s.innerHTML=this._options.skipLabel;s.onclick=function(){e._introItems.length-1===e._currentStep&&"function"==typeof e._introCompleteCallback&&e._introCompleteCallback.call(e);e._introItems.length-1!==e._currentStep&&"function"==typeof e._introExitCallback&&e._introExitCallback.call(e);"function"==typeof e._introSkipCallback&&e._introSkipCallback.call(e);o.call(e,e._targetElement)};g.appendChild(s);1<this._introItems.length&&(g.appendChild(c),g.appendChild(h));w.appendChild(g);p.call(e,f.element,w,yt,it);st.call(this,f.scrollTo,f,w)}ct=e._targetElement.querySelector(".introjs-disableInteraction");ct&&ct.parentNode.removeChild(ct);f.disableInteraction&&function(){var n=document.querySelector(".introjs-disableInteraction");null===n&&((n=document.createElement("div")).className="introjs-disableInteraction",this._targetElement.appendChild(n));i.call(this,n)}.call(e);0===this._currentStep&&1<this._introItems.length?(null!=s&&(s.className=this._options.buttonClass+" introjs-skipbutton"),null!=h&&(h.className=this._options.buttonClass+" introjs-nextbutton"),!0===this._options.hidePrev?(null!=c&&(c.className=this._options.buttonClass+" introjs-prevbutton introjs-hidden"),null!=h&&t(h,"introjs-fullbutton")):null!=c&&(c.className=this._options.buttonClass+" introjs-prevbutton introjs-disabled"),null!=s&&(s.innerHTML=this._options.skipLabel)):this._introItems.length-1===this._currentStep||1===this._introItems.length?(null!=s&&(s.innerHTML=this._options.doneLabel,t(s,"introjs-donebutton")),null!=c&&(c.className=this._options.buttonClass+" introjs-prevbutton"),!0===this._options.hideNext?(null!=h&&(h.className=this._options.buttonClass+" introjs-nextbutton introjs-hidden"),null!=c&&t(c,"introjs-fullbutton")):null!=h&&(h.className=this._options.buttonClass+" introjs-nextbutton introjs-disabled")):(null!=s&&(s.className=this._options.buttonClass+" introjs-skipbutton"),null!=c&&(c.className=this._options.buttonClass+" introjs-prevbutton"),null!=h&&(h.className=this._options.buttonClass+" introjs-nextbutton"),null!=s&&(s.innerHTML=this._options.skipLabel));c.setAttribute("role","button");h.setAttribute("role","button");s.setAttribute("role","button");null!=h&&h.focus(),function(n){var i,u;if(n.element instanceof SVGElement)for(i=n.element.parentNode;null!==n.element.parentNode&&i.tagName&&"body"!==i.tagName.toLowerCase();)"svg"===i.tagName.toLowerCase()&&t(i,"introjs-showElement introjs-relativePosition"),i=i.parentNode;for(t(n.element,"introjs-showElement"),u=r(n.element,"position"),"absolute"!==u&&"relative"!==u&&"fixed"!==u&&t(n.element,"introjs-relativePosition"),i=n.element.parentNode;null!==i&&i.tagName&&"body"!==i.tagName.toLowerCase();){var e=r(i,"z-index"),o=parseFloat(r(i,"opacity")),f=r(i,"transform")||r(i,"-webkit-transform")||r(i,"-moz-transform")||r(i,"-ms-transform")||r(i,"-o-transform");(/[0-9]+/.test(e)||o<1||"none"!==f&&void 0!==f)&&t(i,"introjs-fixParent");i=i.parentNode}}(f);void 0!==this._introAfterChangeCallback&&this._introAfterChangeCallback.call(this,f.element)}function st(n,t,i){var r,e,u,f;"off"===n||!this._options.scrollToElement||(r="tooltip"===n?i.getBoundingClientRect():t.element.getBoundingClientRect(),e=t.element,0<=(u=e.getBoundingClientRect()).top&&0<=u.left&&u.bottom+80<=window.innerHeight&&u.right<=window.innerWidth)||(f=it().height,r.bottom-(r.bottom-r.top)<0||t.element.clientHeight>f?window.scrollBy(0,r.top-(f/2-r.height/2)-this._options.scrollPadding):window.scrollBy(0,r.top-(f/2-r.height/2)+this._options.scrollPadding))}function ht(){n(document.querySelectorAll(".introjs-showElement"),function(n){a(n,/introjs-[a-zA-Z]+/g)})}function n(n,t,i){if(n)for(var r=0,u=n.length;r<u;r++)t(n[r],r);"function"==typeof i&&i()}function t(t,i){if(t instanceof SVGElement){var r=t.getAttribute("class")||"";t.setAttribute("class",r+" "+i)}else void 0!==t.classList?n(i.split(" "),function(n){t.classList.add(n)}):t.className.match(i)||(t.className+=" "+i)}function a(n,t){if(n instanceof SVGElement){var i=n.getAttribute("class")||"";n.setAttribute("class",i.replace(t,"").replace(/^\s+|\s+$/g,""))}else n.className=n.className.replace(t,"").replace(/^\s+|\s+$/g,"")}function r(n,t){var i="";return n.currentStyle?i=n.currentStyle[t]:document.defaultView&&document.defaultView.getComputedStyle&&(i=document.defaultView.getComputedStyle(n,null).getPropertyValue(t)),i&&i.toLowerCase?i.toLowerCase():i}function tt(n){var t=n.parentNode;return!(!t||"HTML"===t.nodeName)&&("fixed"===r(n,"position")||tt(t))}function it(){if(void 0!==window.innerWidth)return{width:window.innerWidth,height:window.innerHeight};var n=document.documentElement;return{width:n.clientWidth,height:n.clientHeight}}function rt(){var n=document.querySelector(".introjs-hintReference"),t;if(n)return t=n.getAttribute("data-step"),n.parentNode.removeChild(n),t}function ct(i){if(this._introItems=[],this._options.hints)n(this._options.hints,function(n){var t=g(n);"string"==typeof t.element&&(t.element=document.querySelector(t.element));t.hintPosition=t.hintPosition||this._options.hintPosition;t.hintAnimation=t.hintAnimation||this._options.hintAnimation;null!==t.element&&this._introItems.push(t)}.bind(this));else{var r=i.querySelectorAll("*[data-hint]");if(!r||!r.length)return!1;n(r,function(n){var t=n.getAttribute("data-hintanimation");t=t?"true"===t:this._options.hintAnimation;this._introItems.push({element:n,hint:n.getAttribute("data-hint"),hintPosition:n.getAttribute("data-hintposition")||this._options.hintPosition,hintAnimation:t,tooltipClass:n.getAttribute("data-tooltipclass"),position:n.getAttribute("data-position")||this._options.tooltipPosition})}.bind(this))}(function(){var r=this,i=document.querySelector(".introjs-hints");null===i&&((i=document.createElement("div")).className="introjs-hints");n(this._introItems,function(n,u){var s,f,e,o;document.querySelector('.introjs-hint[data-step="'+u+'"]')||(f=document.createElement("a"),l(f),f.onclick=(s=u,function(n){var t=n||window.event;t.stopPropagation&&t.stopPropagation();null!==t.cancelBubble&&(t.cancelBubble=!0);pt.call(r,s)}),f.className="introjs-hint",n.hintAnimation||t(f,"introjs-hint-no-anim"),tt(n.element)&&t(f,"introjs-fixedhint"),e=document.createElement("div"),e.className="introjs-hint-dot",o=document.createElement("div"),o.className="introjs-hint-pulse",f.appendChild(e),f.appendChild(o),f.setAttribute("data-step",u),n.targetElement=n.element,n.element=f,yt.call(this,n.hintPosition,f,n.targetElement),i.appendChild(f))}.bind(this));document.body.appendChild(i);void 0!==this._hintsAddedCallback&&this._hintsAddedCallback.call(this)}).call(this);s.on(document,"click",rt,this,!1);s.on(window,"resize",lt,this,!0)}function lt(){n(this._introItems,function(n){void 0!==n.targetElement&&yt.call(this,n.hintPosition,n.element,n.targetElement)}.bind(this))}function h(n){var t=document.querySelector(".introjs-hints");return t?t.querySelectorAll(n):[]}function ut(n){var i=h('.introjs-hint[data-step="'+n+'"]')[0];rt.call(this);i&&t(i,"introjs-hidehint");void 0!==this._hintCloseCallback&&this._hintCloseCallback.call(this,n)}function at(n){var t=h('.introjs-hint[data-step="'+n+'"]')[0];t&&a(t,/introjs-hidehint/g)}function vt(n){var t=h('.introjs-hint[data-step="'+n+'"]')[0];t&&t.parentNode.removeChild(t)}function yt(n,t,i){var r=e.call(this,i);switch(n){default:case"top-left":t.style.left=r.left+"px";t.style.top=r.top+"px";break;case"top-right":t.style.left=r.left+r.width-20+"px";t.style.top=r.top+"px";break;case"bottom-left":t.style.left=r.left+"px";t.style.top=r.top+r.height-20+"px";break;case"bottom-right":t.style.left=r.left+r.width-20+"px";t.style.top=r.top+r.height-20+"px";break;case"middle-left":t.style.left=r.left+"px";t.style.top=r.top+(r.height-20)/2+"px";break;case"middle-right":t.style.left=r.left+r.width-20+"px";t.style.top=r.top+(r.height-20)/2+"px";break;case"middle-middle":t.style.left=r.left+(r.width-20)/2+"px";t.style.top=r.top+(r.height-20)/2+"px";break;case"bottom-middle":t.style.left=r.left+(r.width-20)/2+"px";t.style.top=r.top+r.height-20+"px";break;case"top-middle":t.style.left=r.left+(r.width-20)/2+"px";t.style.top=r.top+"px"}}function pt(n){var f=document.querySelector('.introjs-hint[data-step="'+n+'"]'),h=this._introItems[n],c,s,r;if(void 0!==this._hintClickCallback&&this._hintClickCallback.call(this,f,h,n),c=rt.call(this),parseInt(c,10)!==n){var t=document.createElement("div"),e=document.createElement("div"),o=document.createElement("div"),u=document.createElement("div");t.className="introjs-tooltip";t.onclick=function(n){n.stopPropagation?n.stopPropagation():n.cancelBubble=!0};e.className="introjs-tooltiptext";s=document.createElement("p");s.innerHTML=h.hint;r=document.createElement("a");r.className=this._options.buttonClass;r.setAttribute("role","button");r.innerHTML=this._options.hintButtonLabel;r.onclick=ut.bind(this,n);e.appendChild(s);e.appendChild(r);o.className="introjs-arrow";t.appendChild(o);t.appendChild(e);this._currentStep=f.getAttribute("data-step");u.className="introjs-tooltipReferenceLayer introjs-hintReference";u.setAttribute("data-step",f.getAttribute("data-step"));i.call(this,u);u.appendChild(t);document.body.appendChild(u);p.call(this,f,t,o,null,!0)}}function e(n){var i=document.body,r=document.documentElement,u=window.pageYOffset||r.scrollTop||i.scrollTop,f=window.pageXOffset||r.scrollLeft||i.scrollLeft,t=n.getBoundingClientRect();return{top:t.top+u,width:t.width,height:t.height,left:t.left+f}}function wt(n){var t=window.getComputedStyle(n),r="absolute"===t.position,i;if("fixed"===t.position)return document.body;for(i=n;i=i.parentElement;)if(t=window.getComputedStyle(i),(!r||"static"!==t.position)&&/(auto|scroll)/.test(t.overflow+t.overflowY+t.overflowX))return i;return document.body}function bt(n,t){n.scrollTop=t.offsetTop-n.offsetTop}function d(){return parseInt(this._currentStep+1,10)/this._introItems.length*100}var k,nt=(k={},function(n,t){return k[t=t||"introjs-stamp"]=k[t]||0,void 0===n[t]&&(n[t]=k[t]++),n[t]}),s=new function(){var n="introjs_event";this._id=function(n,t,i,r){return t+nt(i)+(r?"_"+nt(r):"")};this.on=function(t,i,r,u,f){var o=this._id.apply(this,arguments),e=function(n){return r.call(u||t,n||window.event)};"addEventListener"in t?t.addEventListener(i,e,f):"attachEvent"in t&&t.attachEvent("on"+i,e);t[n]=t[n]||{};t[n][o]=e};this.off=function(t,i,r,u,f){var o=this._id.apply(this,arguments),e=t[n]&&t[n][o];e&&("removeEventListener"in t?t.removeEventListener(i,e,f):"detachEvent"in t&&t.detachEvent("on"+i,e),t[n][o]=null)}},v=function(n){var t,i;if("object"==typeof n)t=new c(n);else if("string"==typeof n){if(i=document.querySelector(n),!i)throw new Error("There is no element with given selector.");t=new c(i)}else t=new c(document.body);return v.instances[nt(t,"introjs-instance")]=t};return v.version="2.9.3",v.instances={},v.fn=c.prototype={clone:function(){return new c(this)},setOption:function(n,t){return this._options[n]=t,this},setOptions:function(n){return this._options=function(n,t){var i,r={};for(i in n)r[i]=n[i];for(i in t)r[i]=t[i];return r}(this._options,n),this},start:function(n){return kt.call(this,this._targetElement,n),this},goToStep:function(n){return function(n){this._currentStep=n-2;void 0!==this._introItems&&u.call(this)}.call(this,n),this},addStep:function(n){return this._options.steps||(this._options.steps=[]),this._options.steps.push(n),this},addSteps:function(n){if(n.length){for(var t=0;t<n.length;t++)this.addStep(n[t]);return this}},goToStepNumber:function(n){return function(n){this._currentStepNumber=n;void 0!==this._introItems&&u.call(this)}.call(this,n),this},nextStep:function(){return u.call(this),this},previousStep:function(){return y.call(this),this},exit:function(n){return o.call(this,this._targetElement,n),this},refresh:function(){return function(){if(i.call(this,document.querySelector(".introjs-helperLayer")),i.call(this,document.querySelector(".introjs-tooltipReferenceLayer")),i.call(this,document.querySelector(".introjs-disableInteraction")),void 0!==this._currentStep&&null!==this._currentStep){var n=document.querySelector(".introjs-helperNumberLayer"),t=document.querySelector(".introjs-arrow"),r=document.querySelector(".introjs-tooltip");p.call(this,this._introItems[this._currentStep].element,r,t,n)}return lt.call(this),this}.call(this),this},onbeforechange:function(n){if("function"!=typeof n)throw new Error("Provided callback for onbeforechange was not a function");return this._introBeforeChangeCallback=n,this},onchange:function(n){if("function"!=typeof n)throw new Error("Provided callback for onchange was not a function.");return this._introChangeCallback=n,this},onafterchange:function(n){if("function"!=typeof n)throw new Error("Provided callback for onafterchange was not a function");return this._introAfterChangeCallback=n,this},oncomplete:function(n){if("function"!=typeof n)throw new Error("Provided callback for oncomplete was not a function.");return this._introCompleteCallback=n,this},onhintsadded:function(n){if("function"!=typeof n)throw new Error("Provided callback for onhintsadded was not a function.");return this._hintsAddedCallback=n,this},onhintclick:function(n){if("function"!=typeof n)throw new Error("Provided callback for onhintclick was not a function.");return this._hintClickCallback=n,this},onhintclose:function(n){if("function"!=typeof n)throw new Error("Provided callback for onhintclose was not a function.");return this._hintCloseCallback=n,this},onexit:function(n){if("function"!=typeof n)throw new Error("Provided callback for onexit was not a function.");return this._introExitCallback=n,this},onskip:function(n){if("function"!=typeof n)throw new Error("Provided callback for onskip was not a function.");return this._introSkipCallback=n,this},onbeforeexit:function(n){if("function"!=typeof n)throw new Error("Provided callback for onbeforeexit was not a function.");return this._introBeforeExitCallback=n,this},addHints:function(){return ct.call(this,this._targetElement),this},hideHint:function(n){return ut.call(this,n),this},hideHints:function(){return function(){n(h(".introjs-hint"),function(n){ut.call(this,n.getAttribute("data-step"))}.bind(this))}.call(this),this},showHint:function(n){return at.call(this,n),this},showHints:function(){return function(){var t=h(".introjs-hint");t&&t.length?n(t,function(n){at.call(this,n.getAttribute("data-step"))}.bind(this)):ct.call(this,this._targetElement)}.call(this),this},removeHints:function(){return function(){n(h(".introjs-hint"),function(n){vt.call(this,n.getAttribute("data-step"))}.bind(this))}.call(this),this},removeHint:function(n){return vt.call(this,n),this},showHintDialog:function(n){return pt.call(this,n),this}},v});var introListDesktop,introMapMobile_NA,introMapMobile;$(function(){introMapMobile_NA=introJs();introMapMobile_NA.setOptions({disableInteraction:!0,nextLabel:resources.Next,prevLabel:resources.Previous,skipLabel:resources.Skip,doneLabel:resources.Done,steps:[{element:".test",intro:resources.MobileMapIntroPrestep},{element:".mobileLocationBar",intro:resources.MobileMapIntroStep1},{element:".UIControls .directions",intro:resources.MobileMapIntroStep2},{element:"#RoutesTab a h1",intro:resources.MobileMapIntroStep3},{element:".closeSideBar",intro:"Click to close Route Planner"},{element:".hideSideBar",intro:"Click to temporary hide Route Planner"},{element:"#routingInput .input-location",intro:resources.MobileMapIntroStep4},{element:"#routingInput #form-group-routingOptions",intro:resources.MobileMapIntroStep5},{element:"#routeTabs",intro:resources.MobileMapIntroStep6},{element:"#routeTabContent",intro:resources.MobileMapIntroStep7},{element:".UIControls .settingToggle",intro:resources.MobileMapIntroStep8},{element:"#legend-container #layerSelection",intro:resources.MobileMapIntroStep9},{element:".UIControls .myCam",intro:resources.MobileMapIntroStep10},{element:".myCamerasGroup .myCamerasContainer",intro:resources.MobileMapIntroStep11},]});introMapMobile_NA.onchange(function(){switch(this._currentStep){case 2:$("#startLocationText").val("26 Elvira St, Rochester, NY 14606, USA");$("#endLocationText").val("Valeo, Rochester, NY 14606, USA");$("#generateRouteBtn").trigger("click");break;case 3:$(".UIControls .directions").trigger("click");break;case 10:$("#sideBarColContainer .hideSideBar").trigger("click");break;case 11:$(".UIControls .settingToggle").trigger("click");$(".myCamerasGroup").is(":visible")&&$(".UIControls .myCam").trigger("click");break;case 12:$(".mobileSetting").is(":visible")&&$(".UIControls .settingToggle").trigger("click");break;case 13:$(".UIControls .myCam").trigger("click")}});introMapMobile_NA.oncomplete(function(){$("#routingInput #form-group-routingOptions #clearRouteBtn").trigger("click");$(".showSideBar").trigger("click");$("#sideBarColContainer .closeSideBar").trigger("click");$(".myCamerasGroup").hide()});introMapMobile_NA.onexit(function(){$("#routingInput #form-group-routingOptions #clearRouteBtn").trigger("click");$(".showSideBar").trigger("click");$("#sideBarColContainer .closeSideBar").trigger("click");$(".myCamerasGroup").hide()});introMapMobile=introJs();introMapMobile.setOptions({disableInteraction:!0,nextLabel:resources.Next,prevLabel:resources.Previous,skipLabel:resources.Skip,doneLabel:resources.Done,steps:[{element:".mobileLocationBar",intro:resources.MobileMapIntroStep1},{element:".UIControls .directions",intro:resources.MobileMapIntroStep2},{element:".UIControls .settingToggle",intro:resources.MobileMapIntroStep8},{element:".UIControls .myCam",intro:resources.MobileMapIntroStep10}]});resources.EnableSaveMapView=="true"&&introMapMobile.addStep({element:".saveMapViewControl",intro:resources.MobileMapIntroStep12});const i=location.href,t=location.search;var n=introJs(),r=$(".loginSection #logout-button").is(":visible"),u=r?resources.DesktopMapLoginIntroStep2:resources.DesktopMapLogoutIntroStep2;n.setOptions({disableInteraction:!0,keyboardNavigation:!0,steps:[{element:".test",intro:resources.DesktopMapIntroPrestep},{element:".topBanner .navbarTop-right .alertIcon",intro:resources.DesktopMapIntroStep1},{element:".topBanner .navbarTop-right .loginSection .navbar-nav",intro:u},{element:".regionRight .region-introjs",intro:"Select a region from the dropdown to zoom to that location when you are on the map page."},{element:".topBannerFixed .navbar-collapse .main-menu",intro:resources.DesktopMapIntroStep3},{element:"#mapLocation",intro:resources.DesktopMapIntroStep4},{element:".myRouteBtn",intro:resources.DesktopMapIntroStep5},{element:".sideBarColContainer",intro:resources.DesktopMapIntroStep6},{element:"#routingInput .input-location",intro:resources.DesktopMapIntroStep7},{element:"#routingInput #form-group-routingOptions",intro:resources.DesktopMapIntroStep8},{element:"#routeTabs",intro:resources.DesktopMapIntroStep9},{element:"#routeTabContent",intro:resources.DesktopMapIntroStep10},{element:".myCamerasRoutePlanner",intro:resources.DesktopMapIntroStep11},{element:"#legend-container .layerSelection",intro:resources.DesktopMapIntroStep12}]});n.onchange(function(){switch(this._currentStep){case 1:$("#startLocationText").val("26 Elvira St, Rochester, NY 14606, USA");$("#endLocationText").val("Valeo, Rochester, NY 14606, USA");break;case 6:$("#generateRouteBtn").trigger("click");break;case 7:$(".myRouteBtn").trigger("click");break;case 12:!$(".mapLegend input:first:checked").length>0&&$(".mapLegend input:first").trigger("click");!$(".mapLegend label#Cameras input:checked").length>0&&$(".mapLegend label#Cameras input").trigger("click")}});n.oncomplete(function(){$("#routingInput #form-group-routingOptions #clearRouteBtn").trigger("click");$("#sideBarColContainer .closeSideBar").trigger("click")});n.onexit(function(){$("#routingInput #form-group-routingOptions #clearRouteBtn").trigger("click");$("#sideBarColContainer .closeSideBar").trigger("click")});if(introListDesktop=introJs(),introListDesktop.setOptions({disableInteraction:!0,keyboardNavigation:!0,steps:[{element:".test",intro:resources.DesktopListIntroPreStep},{element:".topBanner .navbarTop-right .alertIcon",intro:resources.DesktopListIntroStep2},{element:".topBanner .navbarTop-right .loginSection .navbar-nav",intro:resources.DesktopListIntroStep3},{element:".regionRight .region-introjs",intro:resources.DesktopListIntroStep4},{element:".topBannerFixed .navbar-collapse .main-menu",intro:resources.DesktopListIntroStep5},{element:"#eventTable_length > label",intro:resources.DesktopListIntroStep6},{element:"#eventTable_filter > label",intro:resources.DesktopListIntroStep7},{element:"#eventTable > thead",intro:resources.DesktopListIntroStep8},{element:".pagination",intro:resources.DesktopListIntroStep9}]}),introListMobile=introJs(),introListMobile.setOptions({disableInteraction:!0,keyboardNavigation:!0,steps:[{element:".test",intro:"Start list page guide"},{element:".alertIcon > i",intro:"Alert Bell Icon shows a list of new notifications."},{element:".navbar-toggle",intro:"This section shows main navigation menus of the app."},{element:"#eventTable_length > label",intro:"Select the number of events to display per page."},{element:"#eventTable_filter > label",intro:"Search using keywords to refine results in event list. Eg. event id, owner name, type, subtype, etc."},{element:"#eventTable > thead",intro:"List view table column headers. Sort events in ascending or descending order by clicking the arrow icon on the respective column header."},{element:".pagination",intro:"Navigate between pages to view events easily."}]}),t.indexOf("?introMap")!=-1&&n.start(),t.indexOf("?introList")!=-1&&Modernizr&&(Modernizr.mq("(max-width: 768px)")?introListMobile.start():introListDesktop.start()),t.indexOf("?intro")!==-1){const n=i.substring(0,i.indexOf("?"));window.history.replaceState({},"",n)}})