function GaEventHandler(){var n=Object.create(GaEventHandler.prototype);n.config={change:function(){var n=this;ga("send",{hitType:"event",eventCategory:location.pathname,eventAction:"change",eventLabel:n.getAttribute("data-ga-change-label")+" | "+n.value})},click:function(){var n=this;ga("send",{hitType:"event",eventCategory:location.pathname,eventAction:"click",eventLabel:n.getAttribute("data-ga-click-label")})}};n.scanAndRegister()}function SliderAnimator(n,t,i){var r=Object.create(SliderAnimator.prototype);return r._elements=n,r.intervalInMs=t||8e3,r.delayInMs=i||0,r.index=0,n[0].click(),n.forEach(function(n){n.on("click",function(){r.timeoutId&&clearTimeout(r.timeoutId);r.index=r._elements.indexOf(this);r.isStarted&&(r.timeoutId=setTimeout(function(){r.next()},r.intervalInMs))})}),r}function PsFormData(n){var t=Object.create(PsFormData.prototype),r,i;if(t.values=[],t.append("ajaxRequest",!0),n)for(r=n.elements,i=0;i<r.length;i++)t.appendObject(r[i]);return t}function UrlHistory(){return Object.create(UrlHistory.prototype)}function NotificationRenderer(){return Object.create(NotificationRenderer.prototype)}function Notification(n,t,i,r){var u=Object.create(Notification.prototype);return u.details=r,u.message=i,u.title=t,u.type=n,u}function NotificationDetail(n,t){var i=Object.create(NotificationDetail.prototype);return i.message=t,i.type=n,i}function Notifier(){return Object.create(Notifier.prototype)}function AjaxResultProcessor(){return Object.create(AjaxResultProcessor.prototype)}function TileColorManager(){var n=Object.create(TileColorManager.prototype);return n.colors=["#fff","#115f82","#159c80","#9160a5","#d60000","#f63","#ffaf10","#70d16d","#29ace5","#a5a9aa","#333332"],n}function TileRenderer(){var n=Object.create(TileRenderer.prototype);return n.colorManager=new TileColorManager,n}var ps=function(n){var t,r,u,i;if(typeof n=="object"){for(t in ps.wrapperFunctions)ps.wrapperFunctions.hasOwnProperty(t)&&(n[t]=ps.wrapperFunctions[t]);return n}for(r=document.querySelectorAll(n),u=[],i=0;i<r.length;i++)u.push(ps(r[i]));return u},hoverMenu,enableAdditionalComponents,names;ps.isArray=function(n){return Array.isArray(n)};ps.wrapperFunctions={};ps.wrapperFunctions.find=function(n){for(var i=this.querySelectorAll(n),r=[],t=0;t<i.length;t++)r.push(ps(i[t]));return r};ps.wrapperFunctions.has=function(n){return typeof n=="object"?this.contains(n):this.querySelector(n)!==null};ps.wrapperFunctions.on=function(n,t){var i=this;ps.isArray(n)?n.forEach(function(n){i.on(n,t)}):i.addEventListener(n,t)};window._=ps;ps.wrapperFunctions.attr=function(n){return this.getAttribute(n)};ps.wrapperFunctions.hasAttr=function(n){var t=this.getAttribute(n);return t!==undefined&&t!==null};ps.wrapperFunctions.replaceAttr=function(n,t){this.removeAttribute(n);this.setAttr(n,t)};ps.wrapperFunctions.removeAttr=function(n){this.removeAttribute(n)};ps.wrapperFunctions.setAttr=function(n,t){this.setAttribute(n,t)};ps.loadScript=function(n,t){var i=document.createElement("script"),r;i.async=!0;i.onload=i.onreadystatechange=function(n,r){(r||!i.readyState||/loaded|complete/.test(i.readyState))&&(i.onload=i.onreadystatechange=null,i=undefined,!r&&t&&t())};i.src=n;r=document.getElementsByTagName("script")[0];r.parentNode.insertBefore(i,r)};_.loadScript("https://www.google-analytics.com/analytics.js",function(){window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;ga("create","UA-58487031-1","auto");ga("set","transport","xhr");ga("send","pageview")});GaEventHandler.prototype.scanAndRegister=function(){var t=this.config,n,i,r;for(n in t)t.hasOwnProperty(n)&&(i=n.toLowerCase(),r="init-ga-"+i,_("["+r+"]").forEach(function(u){u.removeAttr(r);u.on(i,t[n])}))};ps.gaEventHandler=new GaEventHandler;SliderAnimator.prototype.next=function(){this.index++;this.index>=this._elements.length&&(this.index=0);this._elements[this.index].click()};SliderAnimator.prototype.start=function(){var n=this;n.isStarted=!0;n.timeoutId=setTimeout(function(){n._elements[0].click()},n.delayInMs)};ps.animateSlider=function(n,t,i){var r=ps("input[name="+n+"]");r.length>1&&(r[0].animator=new SliderAnimator(r,t,i),r[0].animator.start())};ps.wrapperFunctions.addClass=function(n){n&&this.classList.add(n)};ps.wrapperFunctions.hasClass=function(n){return n?this.classList.contains(n):!1};ps.wrapperFunctions.removeClass=function(n){n&&this.classList.remove(n)};ps.wrapperFunctions.toggleClass=function(n){this.hasClass(n)?this.removeClass(n):this.addClass(n)};ps.wrapperFunctions.expand=function(){var n=_(this.parentNode);n.hasClass("is-expandable")&&n.toggleClass("expanded")};_(".is-expandable").forEach(function(n){n.find("h2,h3,h4,h5").forEach(function(t){if(t.parentNode===n){t.on("click",n.expand);t.innerHTML+='<svg xmlns="http://www.w3.org/2000/svg" width="18" height="9" viewBox="0 0 18 9"><polygon points="17 -0.01 9 7.01 1 -0.01 0 1.09 9 8.99 18 1.09 17 -0.01" /><\/svg>'}})});ps.ready=function(n){(document.attachEvent?document.readyState==="complete":document.readyState!=="loading")?n():document.addEventListener("DOMContentLoaded",n)};ps.wrapperFunctions.matches=function(n){for(var i=(this.document||this.ownerDocument).querySelectorAll(n),t=i.length;--t>=0&&i.item(t)!==this;);return t>-1};hoverMenu=function(){var t=null,n=!1,i=function(n,t){var i=_(n);i.has(t)||(_("#"+i.getAttribute("data-hovermenuinputid"))[0].checked=!1)},r=function(){n&&(this.checked=!this.checked);n=!1},u=function(r,u){var e=_("#"+u)[0],f=_("#"+e.getAttribute("data-hovermenuinputid"))[0];f.checked||(_("[data-hovermenuinputid]").forEach(function(n){i(n,r.target)}),t!==u&&(f.checked=!0,t=u,n=!0,setTimeout(function(){n=!1},500)))},f=function(r){var u=_(this);r.relatedTarget==null||u.has(r.relatedTarget)||(t=null,n=!1,_("#"+u.getAttribute("data-hovermenuinputid"))[0].checked=!1,u.find("[data-hovermenuinputid]").forEach(function(n){i(n,r.relatedTarget)}))},e=function(n){_("[data-hovermenuinputid]").forEach(function(t){i(t,n.target)})},o=function(){if(!!("ontouchstart"in window)||window.navigator.msMaxTouchPoints>0||window.navigator.maxTouchPoints>0)_("body")[0].on("touchstart",e);_("[data-hovermenuinputid]").forEach(function(n){var t=_(n),i=t.getAttribute("id");if(!t.matches("[data-disablehover]")){_("#"+i)[0].on("mouseleave",f);_("#"+t.getAttribute("data-triggerid"))[0].on("mouseenter",function(n){u(n,i)})}_("#"+t.getAttribute("data-hovermenuinputid"))[0].on("change",r)})};return{enable:o}}();_.ready(hoverMenu.enable);String.prototype.startsWith||(String.prototype.startsWith=function(n,t){return t=t||0,this.indexOf(n,t)===t});PsFormData.prototype.append=function(n,t){n&&this.values.push({name:n,value:t})};PsFormData.prototype.appendObject=function(n){var i=this,t,r;if(ps.isArray(n))n.forEach(function(n){i.append(n.name,n.value)});else if(n instanceof HTMLCollection)for(t=0;t<n.length;t++)r=n[t],i.append(r.name,r.value);else i.append(n.name,n.value)};ps.params=function(n){var i=[],t;if(ps.isArray(n))n.forEach(function(n){i.push(encodeURIComponent(n.name)+"="+encodeURIComponent(n.value))});else for(t in n)n.hasOwnProperty(t)&&i.push(encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return i.join("&").replace(/%20/g,"+")};ps.ajax=function(n){var e=function(t){try{if(n.done)if(t.status===204)n.done(t,t.status);else{var i=t.getResponseHeader("content-type").startsWith("application/json");n.done(t,t.status,i?JSON.parse(t.responseText):t.responseText)}}catch(r){console.error(r)}},r=function(t){try{n.fail&&n.fail(t,t.status,t.statusText)}catch(i){console.error(i)}},u=function(t){try{n.always&&n.always(t,t.status)}catch(i){console.error(i)}},o=function(n,t){return t instanceof FormData?t:t instanceof PsFormData?(n.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),ps.params(t.values)):(n.setRequestHeader("Content-Type","application/json"),JSON.stringify(t))},t=new XMLHttpRequest,i,f;try{if(t.open(n.method||"GET",n.url),n.headers)for(i=0;i<n.headers.length;i++)t.setRequestHeader(n.headers[i].name,n.headers[i].value);n.data&&(f=o(t,n.data));t.onload=function(){t.status>=200&&t.status<300||t.status===304?e(t):r(t);u(t)};t.addEventListener("error",function(){r(t);u(t)});n.beforeSend&&n.beforeSend(t);t.send(f)}catch(s){r(t);u(t)}return t};ps.ajaxResultCodes={Error:1,NotFound:2,Redirect:3,Return:4,Ok:5,Warn:6};ps.notificationTypes={Error:"error",Info:"info",Success:"success",Warn:"warn"};ps.string={isNullOrEmpty:function(n){return typeof n=="undefined"||n===null||n.length===0},isNullOrWhiteSpaces:function(n){return typeof n=="undefined"||n===null||n.match(/^ *$/)!==null},isNullOrWhiteSpacesAndNewLines:function(n){return typeof n=="undefined"||n===null||ps.string.isNullOrEmpty(n.replace(/\s+/,""))},isValidHash:function(n){return/^#[a-z0-9-]+$/i.test(n)}};ps.url={isLocalUrl:function(n){return ps.string.isNullOrEmpty(n)?!1:n.charAt(0)!=="/"?!1:n.length===1||n.charAt(1).match(/[a-z0-9]/i)}};UrlHistory.prototype.items=[];UrlHistory.prototype.clear=function(){this.items=[];this.persistData()};UrlHistory.prototype.hasRecords=function(){return this.items.length>0};UrlHistory.prototype.persistData=function(){sessionStorage.setItem("urlHistory",JSON.stringify(this.items))};UrlHistory.prototype.pop=function(){var t=this,n;do n=t.items.pop();while(n===location.pathname);if(t.persistData(),ps.url.isLocalUrl(n))return n;throw new Error("Invalid URL.");};UrlHistory.prototype.push=function(n){var t=this;ps.url.isLocalUrl(n)&&(t.items.length===0||t.items[t.items.length-1]!==n)&&(t.items.push(n),t.persistData())};UrlHistory.prototype.update=function(){var n=this;n.items.length>2&&n.items[n.items.length-3]===n.items[n.items.length-1]&&(n.items.pop(),n.items.pop(),n.persistData())};ps.urlHistory=new UrlHistory;ps.wrapperFunctions.trigger=function(n,t){var i=document.createEvent("Event");i.initEvent(n,!0,!0);i.data=t;this.dispatchEvent(i)};NotificationRenderer.prototype.getDetailsElement=function(n,t){var r=this,i=ps(document.createElement("div"));return i.addClass("notification-detailboxes"),i.addClass("hidden"),i.addClass(t),n.details.forEach(function(n){var t=ps(document.createElement("div")),u,o,f,e;t.addClass("notification-detailbox");u=ps(document.createElement("div"));u.addClass("notification-detailbox-logobox");o=ps(document.createElement("span"));o.addClass(r.getTypeIconClass(n.type,!0));u.appendChild(o);t.appendChild(u);f=ps(document.createElement("div"));f.addClass("notification-detailbox-textbox");e=ps(document.createElement("div"));e.addClass("notification-detailbox-textbox-message");e.appendChild(document.createTextNode(n.message));f.appendChild(e);t.appendChild(f);i.appendChild(t)}),i};NotificationRenderer.prototype.getTypeIconClass=function(n,t){var i;switch(n){case ps.notificationTypes.Error:case ps.notificationTypes.Warn:i=t?"icomoonicon-notification":"icomoonicon-notification2";break;case ps.notificationTypes.Info:case ps.notificationTypes.Success:i=t?"icomoonicon-info":"icomoonicon-info2";break;default:i=""}return i};NotificationRenderer.prototype.getSummaryElement=function(n,t){var a=this,l="",i,f,e,o,h,c,s,r,u;if(n.message||(l="is-messageless"),i=ps(document.createElement("div")),i.addClass("notification-summarybox"),i.addClass(t),f=ps(document.createElement("div")),f.addClass("notification-summarybox-logobox"),f.addClass(l),e=ps(document.createElement("span")),e.addClass("notification-summarybox-logobox-icon"),e.addClass(a.getTypeIconClass(n.type)),e.addClass(l),f.appendChild(e),i.appendChild(f),o=ps(document.createElement("div")),o.addClass("notification-summarybox-textbox"),h=ps(document.createElement("div")),h.addClass("notification-summarybox-textbox-title"),h.appendChild(document.createTextNode(n.title)),o.appendChild(h),c=ps(document.createElement("div")),c.addClass("notification-summarybox-textbox-message"),c.appendChild(document.createTextNode(n.message)),o.appendChild(c),i.appendChild(o),s=ps(document.createElement("div")),s.addClass("notification-summarybox-actionbox"),n.hasDetails()){r=ps(document.createElement("span"));r.addClass("notification-summarybox-actionbox-icon");r.addClass("icomoonicon-circle-up2");r.addClass(t);r.on("click",function(){var n=ps(this);n.toggleClass("icomoonicon-circle-down2");n.trigger("togglenoticationdetails")});s.appendChild(r)}u=ps(document.createElement("span"));u.addClass("notification-summarybox-actionbox-icon");u.addClass("icomoonicon-cancel-circle");u.addClass(t);u.on("click",function(){ps(this).trigger("closenotification")});return s.appendChild(u),i.appendChild(s),i};NotificationRenderer.prototype.getTypeClass=function(n){var t;switch(n){case ps.notificationTypes.Error:t="is-error";break;case ps.notificationTypes.Info:t="is-info";break;case ps.notificationTypes.Success:t="is-success";break;case ps.notificationTypes.Warn:t="is-warn";break;default:t=""}return t};NotificationRenderer.prototype.run=function(n){var r=this,t=ps(document.createElement("div")),i;t.autoClose=n.type===ps.notificationTypes.Info||n.type===ps.notificationTypes.Success;t.close=function(){document.body.removeChild(this)};t.toggleDetails=function(){t.find(".notification-detailboxes")[0].toggleClass("hidden")};t.addClass("notification");i=r.getTypeClass(n.type);t.addClass(i);t.on("mouseover",function(){t.autoClose=!1});t.on("closenotification",t.close);t.on("togglenoticationdetails",t.toggleDetails);t.appendChild(r.getSummaryElement(n,i));n.hasDetails()&&t.appendChild(r.getDetailsElement(n,i));document.body.appendChild(t);t.autoClose&&setTimeout(function(){t.autoClose&&t.close()},8e3)};Notification.prototype.hasDetails=function(){return this.details.length!==0};Notifier.prototype.error=function(n,t){this.notify(new Notification(ps.notificationTypes.Error,n,t))};Notifier.prototype.info=function(n,t){this.notify(new Notification(ps.notificationTypes.Info,n,t))};Notifier.prototype.notify=function(n){(new NotificationRenderer).run(n)};Notifier.prototype.success=function(n,t){this.notify(new Notification(ps.notificationTypes.Success,n,t))};Notifier.prototype.warn=function(n,t){this.notify(new Notification(ps.notificationTypes.Warn,n,t))};AjaxResultProcessor.prototype.defaultResultCallback=function(n){this.displayNotification(n)};AjaxResultProcessor.prototype.displayNotification=function(n){var i=this,u=i.getNotificationType(n.Messages.Summary.Type),f=n.Messages.Summary.Title,r,t;n.Messages.Summary.Value&&(r=n.Messages.Summary.Value);n.Messages.Details.length>0&&(t=[],n.Messages.Details.forEach(function(n){t.push(new NotificationDetail(i.getNotificationType(n.Type),n.Value))}));(new Notifier).notify(new Notification(u,f,r,t))};AjaxResultProcessor.prototype.getNotificationType=function(n){var t;switch(n){case 1:t=ps.notificationTypes.Success;break;case 2:t=ps.notificationTypes.Warn;break;case 3:t=ps.notificationTypes.Error;break;default:t=ps.notificationTypes.Info}return t};AjaxResultProcessor.prototype.handleResult=function(n,t){var i=this,r,u;if(n.Status===ps.ajaxResultCodes.NotFound)window.location.replace("/notfound");else if(n.Status===ps.ajaxResultCodes.Redirect)n.AdditionalData&&typeof n.AdditionalData.ClearUrlHistory=="boolean"&&n.AdditionalData.ClearUrlHistory&&ps.urlHistory.clear(),window.location=n.ResultSet;else if(n.Status===ps.ajaxResultCodes.Return)try{r=ps.urlHistory.pop();ps.url.isLocalUrl(r)?window.location=r:i.reportError()}catch(f){i.reportError()}else u=t||i.defaultResultCallback,u.call(null,n)};AjaxResultProcessor.prototype.reportError=function(){(new Notifier).error("An error has occurred.","Please contact your administrator.")};TileColorManager.prototype.getColorCount=function(){return this.colors.length};TileColorManager.prototype.getColor=function(n){var t=this;return n>=t.getColorCount()&&(n=0),t.colors[n]};TileRenderer.prototype.run=function(){var n=this;_(".widget-tile-container").forEach(function(t){t.find(".tile-container.is-whitebackground").forEach(function(t){var i=t.attr("data-backgroundimageurl"),u,r;i&&(t.removeAttr("data-backgroundimageurl"),u=t.hasAttr("data-backgroundoverlay"),t.removeAttr("data-backgroundoverlay"),t.style.backgroundImage=u?"linear-gradient(rgba(50, 77, 92, 0.3), rgba(50, 77, 92, 0.3)),url('"+i+"')":"url('"+i+"')");r=t.attr("data-backgroundcolorid");typeof r!="undefined"&&(t.style.backgroundColor=n.colorManager.getColor(r));t.style.opacity=".9";t.removeClass("is-whitebackground")})})};onLaunchLabClick=function(){_(".pageloadingmask").forEach(function(n){n.removeClass("hidden")})};_(".cta-primary-2").forEach(function(n){n.on("click",onLaunchLabClick)});var onAcademyMaterialCompleteClick=function(n){var t,i,r;(n.preventDefault(),t=_("#widgetcheckbox-pagestatus")[0],t.hasClass("is-selected"))||(i=_("#PageCompleteForm")[0],t.addClass("is-selected"),r=_("#"+t.attr("data-spinnerid"))[0],r.addClass("is-selected"),_("#widget-pagestatus-completedtick")[0].addClass("hidden"),_.ajax({data:new PsFormData(i),method:"POST",url:i.action,done:function(n,i,u){(new AjaxResultProcessor).handleResult(u,function(){var i=_("#PageIsCompleted")[0],n=i.value.toLowerCase()==="true";t.removeClass("is-selected");r.removeClass("is-selected");_("#widget-pagestatus-completedtick")[0].removeClass("hidden");_("#PageCompletedContent")[0].className=n?"":"hidden";_("#PageNotCompleteContent")[0].className=n?"hidden":"";i.value=n?"false":"true";retrieveUpdatedLabStatus()})},fail:function(){window.location="/error"}}))},retrieveUpdatedLabStatus=function(){_("#AcademyAccountStatusWidget").length!==0&&_.ajax({method:"GET",url:"/Academy/Labs/AccountStatusPartial",done:function(n,t,i){(new AjaxResultProcessor).handleResult(i,function(n){_("#AcademyAccountStatusWidget")[0].outerHTML=n})},fail:function(){window.location="/error"}})},initAcademyMaterialComplete=function(){_("#widgetcheckbox-pagestatus").forEach(function(n){n.type="button";n.initialValue=n.value;n.on("click",onAcademyMaterialCompleteClick)});_("#widget-pagestatus-completedtick").forEach(function(n){n.type="button";n.initialValue=n.value;n.on("click",onAcademyMaterialCompleteClick)})};initAcademyMaterialComplete();enableAdditionalComponents=function(){var r=document.getElementById("AcademyAccountStatusWidget"),n,t,i;r!==null&&r.classList.add("pin-to-bottom");n=document.getElementById("open-progress");n!==null&&n.addEventListener("click",function(){var n=document.getElementsByClassName("back-to-top");n!==null&&n[0].classList.add("hidden");document.body.classList.add("no-scroll")});t=document.getElementById("close-progress");t!==null&&t.addEventListener("click",function(){var n=document.getElementsByClassName("back-to-top");n!==null&&n[0].classList.remove("hidden");document.body.classList.remove("no-scroll")});i=document.getElementsByClassName("back-to-top");i!==null&&i[0].classList.add("allow-for-pinned")};document.readyState!=="loading"?enableAdditionalComponents():window.addEventListener("DOMContentLoaded",function(){enableAdditionalComponents()});names=new Set;_("input[name^='slider-']").forEach(function(n){names.add(n.attr("name"))});names.forEach(function(n){ps.animateSlider(n)});(new TileRenderer).run()