/* plugin-collapse.js */
!function(){"use strict";var t="collapse",e="is-active",i="is-visible",s="collapse",l="collapsing",a="is-hidden",r={SHOW:t+".show",SHOWN:t+".shown",HIDE:t+".hide",HIDDEN:t+".hidden"},n='[data-toggle="collapse"]';window.Collapse=Util.createPlugin({defaults:{parent:!1,toggle:!0},optionTypes:{parent:"(string|element|boolean)",toggle:"boolean"},initialize:function(t){this._isTransitioning=!1,this._parent=t.parent?this._getParent():null,this._triggerArray=[].slice.call(document.querySelectorAll(n+'[href="#'+this.el.id+'"],'+n+'[data-target="#'+this.el.id+'"]'));for(var e=this,i=[].slice.call(document.querySelectorAll(n)),s=0,l=i.length;s<l;s++){var a=Util.getSelectorFromElement(i[s]),r=[].slice.call(document.querySelectorAll(a)).filter(function(t){return t===e.el});null!==a&&r.length>0&&(this._selector=a)}t.parent||this._addAriaAndCollapsedClass(this.el,this._triggerArray),t.toggle&&this.toggle()},_getTargetFromElement:function(t){var e=Util.getSelectorFromElement(t);return e?document.querySelector(e):null},_getParent:function(){var t;if(t=Util.isElement(this.options.parent)?this.options.parent:document.querySelector(this.options.parent))for(var e=n+'[data-parent="'+this.options.parent+'"]',i=[].slice.call(t.querySelectorAll(e)),s=0;s<i.length;s++)this._addAriaAndCollapsedClass(this._getTargetFromElement(i[s]),[i[s]]);return t},_addAriaAndCollapsedClass:function(t,s){var l=t.classList.contains(i);s.length&&s.forEach(function(t){t.classList.toggle(e,l),t.classList.toggle(a,!l),t.setAttribute("aria-expanded",l)})},_setTransitioning:function(t){this._isTransitioning=t},toggle:function(){this.el.classList.contains(i)?this.hide():this.show()},show:function(){if(!this._isTransitioning&&!this.el.classList.contains(i)){var n,o=this.options;this._parent&&0===(n=[].slice.call(this._parent.querySelectorAll("."+i+", ."+l)).filter(function(t){return"string"==typeof o.parent?t.getAttribute("data-parent")===o.parent:t.classList.contains(s)})).length&&(n=null);var c=Util.triggerEvent(this.el,r.SHOW,{relatedTargets:this._triggerArray});if(!c||!c.defaultPrevented){n&&n.forEach(function(e){var i=dataStorage.get(e,t);i?i.hide():dataStorage.put(e,t,new Collapse(e))}),this.el.classList.remove(s),this.el.classList.add(l),this.el.style.height="0px",this._triggerArray.length&&this._triggerArray.forEach(function(t){t.classList.add(e);var i=t.getAttribute("data-active-class");i&&t.classList.add.apply(t.classList,i.split(" ")),t.classList.remove(a),t.setAttribute("aria-expanded","true")}),this._setTransitioning(!0);var h=function(){this.el.classList.remove(l),this.el.classList.add(s),this.el.classList.add(i),this.el.style.height="",this._setTransitioning(!1),Util.triggerEvent(this.el,r.SHOWN,{relatedTargets:this._triggerArray})}.bind(this);Util.onTransitionEnd(this.el,h),this.el.style.height=this.el.scrollHeight+"px"}}},hide:function(){if(!this._isTransitioning&&this.el.classList.contains(i)){var t=Util.triggerEvent(this.el,r.HIDE,{relatedTargets:this._triggerArray});if(!t||!t.defaultPrevented){if(this.el.style.height=this.el.getBoundingClientRect().height+"px",this.el.classList.add(l),this.el.classList.remove(s),this.el.classList.remove(i),this._triggerArray.length>0)for(var n=0;n<this._triggerArray.length;n++){var o=this._triggerArray[n],c=Util.getSelectorFromElement(o);null!==c&&[].slice.call(document.querySelectorAll(c)).forEach(function(t){if(!t.classList.contains(i)){o.classList.add(a),o.classList.remove(e);var s=o.getAttribute("data-active-class");s&&o.classList.remove.apply(o.classList,s.split(" ")),o.setAttribute("aria-expanded","false")}})}this._setTransitioning(!0);var h=function(){this._setTransitioning(!1),this.el.classList.remove(l),this.el.classList.add(s),Util.triggerEvent(this.el,r.HIDDEN,{relatedTargets:this._triggerArray})}.bind(this);Util.onTransitionEnd(this.el,h),this.el.style.height=""}}}}),document.addEventListener("click",function(e){var i=e.target;if(i.matches(n)||(i=Util.closest(i,n))){"A"===i.tagName&&e.preventDefault();var s=Util.getSelectorFromElement(i);[].slice.call(document.querySelectorAll(s)).forEach(function(e){var i=dataStorage.get(e,t);i?i.toggle():dataStorage.put(e,t,new Collapse(e))})}},!1)}();

/* plugin-tab.js */
!function(){"use strict";var t={HIDE:"tab.hide",HIDDEN:"tab.hidden",SHOW:"tab.show",SHOWN:"tab.shown"},e="is-active",i="is-disabled",a="is-shown",s={NAV:".nav",ACTIVE:"."+e,DATA_TOGGLE:'[data-toggle="tab"]'};window.Tab=Util.createPlugin({initialize:function(t){},show:function(){if(!(this.el.parentNode&&this.el.parentNode.nodeType===Node.ELEMENT_NODE&&this.el.classList.contains(e)||this.el.classList.contains(i))){var r,l,n=Util.closest(this.el,s.NAV)||this.el.parentNode,o=Util.getSelectorFromElement(this.el);if(n&&(r=n.querySelector(s.ACTIVE)),r){var c=Util.getSelectorFromElement(r),d=document.querySelector(c);if(d&&Util.getTransitionDuration(d)&&!d.classList.contains(a))return;var u=Util.triggerEvent(r,t.HIDE,{relatedTarget:this.el})}if(!(Util.triggerEvent(this.el,t.SHOW,{relatedTarget:r}).defaultPrevented||u&&u.defaultPrevented)){this._activate(this.el,n);var v=function(){r&&Util.triggerEvent(r,t.HIDDEN,{relatedTarget:this.el}),Util.triggerEvent(this.el,t.SHOWN,{relatedTarget:r})}.bind(this);o&&(l=document.querySelector(o)),l?this._activate(l,l.parentNode,v):v()}}},_activate:function(t,e,i){var r;r=e===t.parentNode?Array.prototype.filter.call(e.children,function(t){return t.matches(s.ACTIVE)})[0]||null:e.querySelector(s.ACTIVE);var l=function(){return this._transitionComplete(t,r,i)}.bind(this);r?(Util.onTransitionEnd(r,l),r.classList.remove(a)):l()},_transitionComplete:function(t,i,s){var r;i&&(i.classList.remove(e),(r=i.getAttribute("data-active-class"))&&i.classList.remove.apply(i.classList,r.split(" ")),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)),t.classList.add(e),(r=t.getAttribute("data-active-class"))&&t.classList.add.apply(t.classList,r.split(" ")),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),Util.reflow(t),t.classList.add(a),s&&s()}}),document.addEventListener("click",function(t){var e=t.target;if(e.matches(s.DATA_TOGGLE)||(e=Util.closest(e,s.DATA_TOGGLE))){"A"===e.tagName&&t.preventDefault();var i=dataStorage.get(e,"tab");i||(i=new Tab(e),dataStorage.put(e,"tab",i)),i.show()}},!1)}();

/* plugin-table-of-contents.js */
!function(){"use strict";var e={RENDER:"tableOfContents.render"};window.TableOfContents=Util.createPlugin({defaults:{parentElement:null,selector:"h1, h2, h3, h4, h5, h6",template:null},optionTypes:{parentElement:"(window|element|string|null)",selector:"string",template:"(string|null)"},initialize:function(e){if("string"!=typeof e.selector)throw new TypeError("Selectors must be a string");var t=this._getParentElement().querySelectorAll(this.options.selector);if(t){var n=["h1","h2","h3","h4","h5","h6"];this._headings=Array.prototype.slice.call(t).filter(function(e){return e.id&&n.indexOf(e.tagName.toLowerCase())>-1}),this.render(this._headings.map(function(e){return{html_url:"#"+e.id,name:e.childNodes[0].textContent}}))}},_getParentElement:function(){var e=this.options.parentElement;return e?Util.isElement(e)?e:"string"==typeof e&&document.querySelector(e)||document:document},render:function(t){var n,i,l="tmpl-"+this.options.template,r=this.options.template&&document.getElementById(l);n=r&&r.innerHTML?r.innerHTML:'<% if (items.length) { %>  <ul>    <% items.forEach(function(item) { %>      <li>        <a href="<%= item.html_url %>">          <%= item.name %>        </a>      </li>    <% }); %>  </ul><% } %>',(i=Util.template(n)({items:t}).replace(/(^\s+|\s+$)/g,""))?this.el.insertAdjacentHTML("afterbegin",i):this.el.remove(),Util.triggerEvent(this.el,e.RENDER,{relatedTarget:this.el})}}),window.addEventListener("load",function(){each('[data-element="table-of-contents"]',function(e){new TableOfContents(e)})})}();

/* plugin-tabs.js */
!function(){"use strict";var i="is-active",t={RENDER:"tabs.render"};window.Tabs=Util.createPlugin({defaults:{initial:0,activeClass:"",template:null,templateData:{}},optionTypes:{initial:"number",activeClass:"string",template:"(string|null)",templateData:"object"},initialize:function(i){this.el.children.length&&this.render(i)},render:function(e){var a,l,n="tmpl-"+e.template,s=e.template&&document.getElementById(n),d=i;e.activeClass&&(d+=" "+e.activeClass);var r='data-toggle="tab"';e.activeClass&&(r+=' data-active-class="'+e.activeClass+'"'),a=s&&s.innerHTML?s.innerHTML:'<% if (children.length) { %>  <div class="my-6">    <ul class="nav nav-tabs" id="<%= id %>">      <% children.forEach(function(child, index) { %>        <li class="nav-item">          <a class="nav-link text-inherit font-medium<% if (initial === index ) { %> '+d+'<% } %>" role="tab" '+r+' aria-expanded="<%= initial === index %>" href="#<%= id %>-<%= index %>">            <%= child.title %>          </a>        </li>      <% }); %>    </ul>    <div class="tabs">      <% children.forEach(function(child, index) { %>        <div class="tab list-unstyled p-5 mb-4 bg-white border border-radius-bottom<% if (initial === index ) { %> '+i+'<% } %>" id="<%= id %>-<%= index %>" role="tab-panel">          <%= child.innerHTML %>        </div>      <% }); %>    </div>  </div><% } %>';var c=Util.template(a),h=[].slice.call(this.el.children).map(function(i,t){return{innerHTML:i.innerHTML,title:i.getAttribute("data-title")||"Tab "+t}}),o={id:this.id,children:h,initial:e.initial,options:e};e.templateData&&(o=Util.extend(o,e.templateData)),(l=c(o).replace(/(^\s+|\s+$)/g,""))&&this.el.insertAdjacentHTML("afterend",l);var v=this.el.nextElementSibling;this.el.classList.forEach(function(i){v.classList.add(i)}),this.el.id&&(v.id=this.el.id),Util.triggerEvent(this.el,t.RENDER,{relatedTarget:v}),this.el.remove(),this.el=v}}),window.addEventListener("load",function(){each('[data-element="tabs"]',function(i){new Tabs(i)})})}();

/* plugin-toggles.js */
!function(){"use strict";var i={RENDER:"toggles.render"};window.Toggles=Util.createPlugin({defaults:{initial:-1,accordion:!1,activeClass:"",template:null,templateData:{}},optionTypes:{initial:"number",activeClass:"string",accordion:"boolean",template:"(string|null)",templateData:"object"},initialize:function(i){this.el.children.length&&this.render(i)},render:function(t){var e,l,a="tmpl-"+this.options.template,n=this.options.template&&document.getElementById(a),s='data-toggle="collapse"';t.activeClass&&(s+=' data-active-class="'+t.activeClass+'"'),e=n&&n.innerHTML?n.innerHTML:'<% if (children.length) { %>  <div class="my-6">    <ul class="list-unstyled list-bordered border border-radius" id="<%= id %>">      <% children.forEach(function(child, index) { %>        <% var isActive = (initial === index); %>        <li class="px-5 py-1">          <a class="toggle-title font-semibold text-inherit<% if (isActive && activeClass) { %> activeClass<% } %>" '+s+' aria-expanded="<%= isActive %>" href="#<%= id %>-<%= index %>">            <%= child.title %>          </a>          <div class="collapse<% if (isActive) { %> is-visible<% } %>" id="<%= id %>-<%= index %>" <% if (parent) { %>data-parent="<%= parent %>"<% } %>>            <div class="py-4">              <%= child.innerHTML %>            </div>          </div>        </li>      <% }); %>    </ul>  </div><% } %>';var d=Util.template(e),c=[].slice.call(this.el.children).map(function(i,t){return{innerHTML:i.innerHTML,title:i.getAttribute("data-title")||"Toggle "+t}}),r={id:this.id,children:c,parent:t.accordion?"#"+this.id:null,initial:t.initial,activeClass:t.activeClass};this.options.templateData&&(r=Util.extend(r,this.options.templateData)),(l=d(r).replace(/(^\s+|\s+$)/g,""))&&this.el.insertAdjacentHTML("afterend",l);var o=this.el.nextElementSibling;this.el.classList.forEach(function(i){o.classList.add(i)}),this.el.id&&(o.id=this.el.id),Util.triggerEvent(this.el,i.RENDER,{relatedTarget:o}),this.el.remove(),this.el=o}}),window.addEventListener("load",function(){each('[data-element="toggles"]',function(i){new Toggles(i)})})}();

/* plugin-sticky.js */
!function(){"use strict";var s="sticky",t={INITIALIZE:s+".initialize",STUCK:s+".stuck",UNSTUCK:s+".unstuck",HIDDEN:s+".hidden",SHOWN:s+".shown"};window.Sticky=Util.createPlugin({defaults:{scrollElement:window,offset:0,tolerance:8,hide:!1,classNames:{sticky:"sticky-top",unstuck:null,stuck:null,hidden:Util.classNames.hidden}},optionTypes:{scrollElement:"(window|element|string)",offset:"number",tolerance:"number",hide:"boolean",classNames:"(object|string)"},initialize:function(s){if(this._supportsSticky()){if("string"==typeof this.options.classNames)try{this.options.classNames=JSON.parse(this.options.classNames)}catch(s){this.options.classNames=this.defaults.classNames,console.error("Sticky: classNames option value is not valid.")}var i=this._getClassName("sticky");i&&this.el.classList.add.apply(this.el.classList,i.split(" ")),this.scrollElement=("string"==typeof s.scrollElement?document.querySelector(s.scrollElement):s.scrollElement)||window,this.lastScrollTop=this.scrollElement===window?window.scrollY||window.pageYOffset:this.scrollElement.scrollTop,this.scrolling=!1,this._addEventListeners(),this._onScroll(),Util.triggerEvent(this.el,t.INITIALIZE)}},_supportsSticky:function(){for(var s=["","-o-","-webkit-","-moz-","-ms-"],t=document.head.style,i=0;i<s.length;i+=1)t.position=s[i]+"sticky";var l=!!t.position;return t.position="",l},_addEventListeners:function(){this.scrollElement.addEventListener("scroll",this._onScroll.bind(this))},_getTopPosition:function(s){return s.getBoundingClientRect().top+(this.scrollElement.pageYOffset||document.documentElement.scrollTop)},_onScroll:function(){this.scrolling||(requestAnimationFrame(this._updateClassNames.bind(this)),this.scrolling=!0)},_updateClassNames:function(){var s=this.scrollElement===window?window.scrollY||window.pageYOffset:this.scrollElement.scrollTop,i=s>this._getTopPosition(this.el.parentElement)+this.options.offset;if(void 0===this.isStuck||this.isStuck!==i){this.isStuck=i;var l=this._getClassName("stuck"),e=this._getClassName("unstuck");if(i?(e&&this.el.classList.remove.apply(this.el.classList,e.split(" ")),l&&this.el.classList.add.apply(this.el.classList,l.split(" "))):(l&&this.el.classList.remove.apply(this.el.classList,l.split(" ")),e&&this.el.classList.add.apply(this.el.classList,e.split(" "))),Util.triggerEvent(this.el,i?t.STUCK:t.UNSTUCK),!0===this.options.hide){var o=this._getClassName("hidden");s>this.lastScrollTop+this.options.tolerance?(o&&this.el.classList.add.apply(this.el.classList,o.split(" ")),Util.triggerEvent(this.el,t.HIDDEN)):(s<this.lastScrollTop||s<=0)&&(o&&this.el.classList.remove.apply(this.el.classList,o.split(" ")),Util.triggerEvent(this.el,t.SHOWN))}this.lastScrollTop=s,this.scrolling=!1}else this.scrolling=!1}}),window.addEventListener("load",function(){each('[data-element="sticky"]',function(s){new Sticky(s)})})}();