aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHakim El Hattab <hakim.elhattab@gmail.com>2020-04-07 13:25:46 +0200
committerHakim El Hattab <hakim.elhattab@gmail.com>2020-04-07 13:25:46 +0200
commit6030043036cb247afc181e9083eec9d05e2065c9 (patch)
tree372345b26fdcc8ab139f4e67034e107e2c1f984c
parent094acd6a6aa17e465b45b65b6d3fb66d2f144b0d (diff)
downloadfosdem-2021-minimalism-presentation-6030043036cb247afc181e9083eec9d05e2065c9.tar
fosdem-2021-minimalism-presentation-6030043036cb247afc181e9083eec9d05e2065c9.tar.gz
move pointer logic out to own controller
-rw-r--r--dist/reveal.css2
-rw-r--r--dist/reveal.min.js2
-rw-r--r--js/controllers/pointer.js118
-rw-r--r--js/reveal.js99
4 files changed, 123 insertions, 98 deletions
diff --git a/dist/reveal.css b/dist/reveal.css
index a850ca0..be4e552 100644
--- a/dist/reveal.css
+++ b/dist/reveal.css
@@ -1,5 +1,5 @@
/*!
-* reveal.js 4.0.0-dev (Mon Apr 06 2020)
+* reveal.js 4.0.0-dev (Tue Apr 07 2020)
* https://revealjs.com
* MIT licensed
*
diff --git a/dist/reveal.min.js b/dist/reveal.min.js
index 6c50bdf..3c4b065 100644
--- a/dist/reveal.min.js
+++ b/dist/reveal.min.js
@@ -5,4 +5,4 @@
*
* Copyright (C) 2020 Hakim El Hattab, https://hakim.se
*/
-!function(e){var t={};function n(i){if(t[i])return t[i].exports;var a=t[i]={i:i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(i,a,function(t){return e[t]}.bind(null,a));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";n.r(t);var i=/registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/,a=/fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/,r=function(e,t){for(var n in t)e[n]=t[n];return e},o=function(e,t){return Array.from(e.querySelectorAll(t))},s=function(e){if("string"==typeof e){if("null"===e)return null;if("true"===e)return!0;if("false"===e)return!1;if(e.match(/^-?[\d\.]+$/))return parseFloat(e)}return e},l=function(e,t){e.style.transform=t},c=function(e,t){for(var n=e.parentNode;n;){var i=n.matches||n.matchesSelector||n.msMatchesSelector;if(i&&i.call(n,t))return n;n=n.parentNode}return null},d=function(e){var t=document.createElement("style");return t.type="text/css",e&&e.length>0&&(t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))),document.head.appendChild(t),t},u=function(){var e={};for(var t in location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi,(function(t){e[t.split("=").shift()]=t.split("=").pop()})),e){var n=e[t];e[t]=s(unescape(n))}return void 0!==e.dependencies&&delete e.dependencies,e},h=navigator.userAgent,v=document.createElement("div"),f=/(iphone|ipod|ipad|android)/gi.test(h)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,g=/chrome/i.test(h)&&!/edge/i.test(h),p=/android/gi.test(h),m="zoom"in v.style&&!f&&(g||/Version\/[\d\.]+.*Safari/.test(h)),y="function"==typeof window.history.replaceState&&!/PhantomJS/.test(h);function b(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var w=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.startEmbeddedIframe=this.startEmbeddedIframe.bind(this)}var t,n,i;return t=e,(n=[{key:"shouldPreload",value:function(e){var t=this.Reveal.getConfig().preloadIframes;return"boolean"!=typeof t&&(t=e.hasAttribute("data-preload")),t}},{key:"load",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.style.display=this.Reveal.getConfig().display,o(e,"img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((function(e){("IFRAME"!==e.tagName||t.shouldPreload(e))&&(e.setAttribute("src",e.getAttribute("data-src")),e.setAttribute("data-lazy-loaded",""),e.removeAttribute("data-src"))})),o(e,"video, audio").forEach((function(e){var t=0;o(e,"source[data-src]").forEach((function(e){e.setAttribute("src",e.getAttribute("data-src")),e.removeAttribute("data-src"),e.setAttribute("data-lazy-loaded",""),t+=1})),t>0&&e.load()}));var i=e.slideBackgroundElement;if(i){i.style.display="block";var a=e.slideBackgroundContentElement,r=e.getAttribute("data-background-iframe");if(!1===i.hasAttribute("data-loaded")){i.setAttribute("data-loaded","true");var s=e.getAttribute("data-background-image"),l=e.getAttribute("data-background-video"),c=e.hasAttribute("data-background-video-loop"),d=e.hasAttribute("data-background-video-muted");if(s)a.style.backgroundImage="url("+encodeURI(s)+")";else if(l&&!this.Reveal.isSpeakerNotes()){var u=document.createElement("video");c&&u.setAttribute("loop",""),d&&(u.muted=!0),f&&(u.muted=!0,u.autoplay=!0,u.setAttribute("playsinline","")),l.split(",").forEach((function(e){u.innerHTML+='<source src="'+e+'">'})),a.appendChild(u)}else if(r&&!0!==n.excludeIframes){var h=document.createElement("iframe");h.setAttribute("allowfullscreen",""),h.setAttribute("mozallowfullscreen",""),h.setAttribute("webkitallowfullscreen",""),h.setAttribute("allow","autoplay"),h.setAttribute("data-src",r),h.style.width="100%",h.style.height="100%",h.style.maxHeight="100%",h.style.maxWidth="100%",a.appendChild(h)}}var v=a.querySelector("iframe[data-src]");v&&this.shouldPreload(i)&&!/autoplay=(1|true|yes)/gi.test(r)&&v.getAttribute("src")!==r&&v.setAttribute("src",r)}}},{key:"unload",value:function(e){e.style.display="none";var t=this.Reveal.getSlideBackground(e);t&&(t.style.display="none",o(t,"iframe[src]").forEach((function(e){e.removeAttribute("src")}))),o(e,"video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")})),o(e,"video[data-lazy-loaded] source[src], audio source[src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")}))}},{key:"formatEmbeddedContent",value:function(){var e=this,t=function(t,n,i){o(e.Reveal.getSlidesElement(),"iframe["+t+'*="'+n+'"]').forEach((function(e){var n=e.getAttribute(t);n&&-1===n.indexOf(i)&&e.setAttribute(t,n+(/\?/.test(n)?"&":"?")+i)}))};t("src","youtube.com/embed/","enablejsapi=1"),t("data-src","youtube.com/embed/","enablejsapi=1"),t("src","player.vimeo.com/","api=1"),t("data-src","player.vimeo.com/","api=1")}},{key:"startEmbeddedContent",value:function(e){var t=this;e&&!this.Reveal.isSpeakerNotes()&&(o(e,'img[src$=".gif"]').forEach((function(e){e.setAttribute("src",e.getAttribute("src"))})),o(e,"video, audio").forEach((function(e){if(!c(e,".fragment")||c(e,".fragment.visible")){var n=t.Reveal.getConfig().autoPlayMedia;if("boolean"!=typeof n&&(n=e.hasAttribute("data-autoplay")||!!c(e,".slide-background")),n&&"function"==typeof e.play)if(e.readyState>1)t.startEmbeddedMedia({target:e});else if(f){var i=e.play();i&&"function"==typeof i.catch&&!1===e.controls&&i.catch((function(){e.controls=!0,e.addEventListener("play",(function(){e.controls=!1}))}))}else e.removeEventListener("loadeddata",t.startEmbeddedMedia),e.addEventListener("loadeddata",t.startEmbeddedMedia)}})),o(e,"iframe[src]").forEach((function(e){c(e,".fragment")&&!c(e,".fragment.visible")||t.startEmbeddedIframe({target:e})})),o(e,"iframe[data-src]").forEach((function(e){c(e,".fragment")&&!c(e,".fragment.visible")||e.getAttribute("src")!==e.getAttribute("data-src")&&(e.removeEventListener("load",t.startEmbeddedIframe),e.addEventListener("load",t.startEmbeddedIframe),e.setAttribute("src",e.getAttribute("data-src")))})))}},{key:"startEmbeddedMedia",value:function(e){var t=!!c(e.target,"html"),n=!!c(e.target,".present");t&&n&&(e.target.currentTime=0,e.target.play()),e.target.removeEventListener("loadeddata",this.startEmbeddedMedia)}},{key:"startEmbeddedIframe",value:function(e){var t=e.target;if(t&&t.contentWindow){var n=!!c(e.target,"html"),i=!!c(e.target,".present");if(n&&i){var a=this.Reveal.getConfig().autoPlayMedia;"boolean"!=typeof a&&(a=t.hasAttribute("data-autoplay")||!!c(t,".slide-background")),/youtube\.com\/embed\//.test(t.getAttribute("src"))&&a?t.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"):/player\.vimeo\.com\//.test(t.getAttribute("src"))&&a?t.contentWindow.postMessage('{"method":"play"}',"*"):t.contentWindow.postMessage("slide:start","*")}}}},{key:"stopEmbeddedContent",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n=r({unloadIframes:!0},n),e&&e.parentNode&&(o(e,"video, audio").forEach((function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.pause||(e.setAttribute("data-paused-by-reveal",""),e.pause())})),o(e,"iframe").forEach((function(e){e.contentWindow&&e.contentWindow.postMessage("slide:stop","*"),e.removeEventListener("load",t.startEmbeddedIframe)})),o(e,'iframe[src*="youtube.com/embed/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")})),o(e,'iframe[src*="player.vimeo.com/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"method":"pause"}',"*")})),!0===n.unloadIframes&&o(e,"iframe[data-src]").forEach((function(e){e.setAttribute("src","about:blank"),e.removeAttribute("src")})))}}])&&b(t.prototype,n),i&&b(t,i),e}();function k(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var A=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="slide-number",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){var n="none";e.slideNumber&&!this.Reveal.isPrintingPDF()&&("all"===e.showSlideNumber||"speaker"===e.showSlideNumber&&this.Reveal.isSpeakerNotes())&&(n="block"),this.element.style.display=n}},{key:"update",value:function(){this.Reveal.getConfig().slideNumber&&this.element&&(this.element.innerHTML=this.getSlideNumber())}},{key:"getSlideNumber",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide(),n=this.Reveal.getConfig(),i="h.v";if("function"==typeof n.slideNumber)e=n.slideNumber(t);else switch("string"==typeof n.slideNumber&&(i=n.slideNumber),/c/.test(i)||1!==this.Reveal.getHorizontalSlides().length||(i="c"),e=[],i){case"c":e.push(this.Reveal.getSlidePastCount(t)+1);break;case"c/t":e.push(this.Reveal.getSlidePastCount(t)+1,"/",this.Reveal.getTotalSlides());break;default:var a=this.Reveal.getIndices(t);e.push(a.h+1);var r="h/v"===i?"/":".";this.Reveal.isVerticalSlide(t)&&e.push(r,a.v+1)}var o="#"+this.Reveal.location.getHash(t);return this.formatNumber(e[0],e[1],e[2],o)}},{key:"formatNumber",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"#"+this.Reveal.location.getHash();return"number"!=typeof n||isNaN(n)?'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,"</span>\n\t\t\t\t\t</a>"):'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,'</span>\n\t\t\t\t\t<span class="slide-number-delimiter">').concat(t,'</span>\n\t\t\t\t\t<span class="slide-number-b">').concat(n,"</span>\n\t\t\t\t\t</a>")}}])&&k(t.prototype,n),i&&k(t,i),e}(),E=function(e){var t=e.match(/^#([0-9a-f]{3})$/i);if(t&&t[1])return t=t[1],{r:17*parseInt(t.charAt(0),16),g:17*parseInt(t.charAt(1),16),b:17*parseInt(t.charAt(2),16)};var n=e.match(/^#([0-9a-f]{6})$/i);if(n&&n[1])return n=n[1],{r:parseInt(n.substr(0,2),16),g:parseInt(n.substr(2,2),16),b:parseInt(n.substr(4,2),16)};var i=e.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(i)return{r:parseInt(i[1],10),g:parseInt(i[2],10),b:parseInt(i[3],10)};var a=e.match(/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i);return a?{r:parseInt(a[1],10),g:parseInt(a[2],10),b:parseInt(a[3],10),a:parseFloat(a[4])}:null};function R(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var S=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="backgrounds",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"create",value:function(){var e=this;this.Reveal.isPrintingPDF(),this.element.innerHTML="",this.element.classList.add("no-transition"),this.Reveal.getHorizontalSlides().forEach((function(t){var n=e.createBackground(t,e.element);o(t,"section").forEach((function(t){e.createBackground(t,n),n.classList.add("stack")}))})),this.Reveal.getConfig().parallaxBackgroundImage?(this.element.style.backgroundImage='url("'+this.Reveal.getConfig().parallaxBackgroundImage+'")',this.element.style.backgroundSize=this.Reveal.getConfig().parallaxBackgroundSize,this.element.style.backgroundRepeat=this.Reveal.getConfig().parallaxBackgroundRepeat,this.element.style.backgroundPosition=this.Reveal.getConfig().parallaxBackgroundPosition,setTimeout((function(){e.Reveal.getRevealElement().classList.add("has-parallax-background")}),1)):(this.element.style.backgroundImage="",this.Reveal.getRevealElement().classList.remove("has-parallax-background"))}},{key:"createBackground",value:function(e,t){var n=document.createElement("div");n.className="slide-background "+e.className.replace(/present|past|future/,"");var i=document.createElement("div");return i.className="slide-background-content",n.appendChild(i),t.appendChild(n),e.slideBackgroundElement=n,e.slideBackgroundContentElement=i,this.sync(e),n}},{key:"sync",value:function(e){var t=e.slideBackgroundElement,n=e.slideBackgroundContentElement;e.classList.remove("has-dark-background"),e.classList.remove("has-light-background"),t.removeAttribute("data-loaded"),t.removeAttribute("data-background-hash"),t.removeAttribute("data-background-size"),t.removeAttribute("data-background-transition"),t.style.backgroundColor="",n.style.backgroundSize="",n.style.backgroundRepeat="",n.style.backgroundPosition="",n.style.backgroundImage="",n.style.opacity="",n.innerHTML="";var i={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundVideo:e.getAttribute("data-background-video"),backgroundIframe:e.getAttribute("data-background-iframe"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition"),backgroundOpacity:e.getAttribute("data-background-opacity")};i.background&&(/^(http|file|\/\/)/gi.test(i.background)||/\.(svg|png|jpg|jpeg|gif|bmp)([?#\s]|$)/gi.test(i.background)?e.setAttribute("data-background-image",i.background):t.style.background=i.background),(i.background||i.backgroundColor||i.backgroundImage||i.backgroundVideo||i.backgroundIframe)&&t.setAttribute("data-background-hash",i.background+i.backgroundSize+i.backgroundImage+i.backgroundVideo+i.backgroundIframe+i.backgroundColor+i.backgroundRepeat+i.backgroundPosition+i.backgroundTransition+i.backgroundOpacity),i.backgroundSize&&t.setAttribute("data-background-size",i.backgroundSize),i.backgroundColor&&(t.style.backgroundColor=i.backgroundColor),i.backgroundTransition&&t.setAttribute("data-background-transition",i.backgroundTransition),e.hasAttribute("data-preload")&&t.setAttribute("data-preload",""),i.backgroundSize&&(n.style.backgroundSize=i.backgroundSize),i.backgroundRepeat&&(n.style.backgroundRepeat=i.backgroundRepeat),i.backgroundPosition&&(n.style.backgroundPosition=i.backgroundPosition),i.backgroundOpacity&&(n.style.opacity=i.backgroundOpacity);var a,r=i.backgroundColor;if(!r){var o=window.getComputedStyle(t);o&&o.backgroundColor&&(r=o.backgroundColor)}if(r){var s=E(r);s&&0!==s.a&&("string"==typeof(a=r)&&(a=E(a)),(a?(299*a.r+587*a.g+114*a.b)/1e3:null)<128?e.classList.add("has-dark-background"):e.classList.add("has-light-background"))}}},{key:"update",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.Reveal.getCurrentSlide(),i=this.Reveal.getIndices(),a=null,r=this.Reveal.getConfig().rtl?"future":"past",s=this.Reveal.getConfig().rtl?"past":"future";if(Array.from(this.element.childNodes).forEach((function(e,n){e.classList.remove("past","present","future"),n<i.h?e.classList.add(r):n>i.h?e.classList.add(s):(e.classList.add("present"),a=e),(t||n===i.h)&&o(e,".slide-background").forEach((function(e,t){e.classList.remove("past","present","future"),t<i.v?e.classList.add("past"):t>i.v?e.classList.add("future"):(e.classList.add("present"),n===i.h&&(a=e))}))})),this.previousBackground&&this.Reveal.slideContent.stopEmbeddedContent(this.previousBackground,{unloadIframes:!this.Reveal.slideContent.shouldPreload(this.previousBackground)}),a){this.Reveal.slideContent.startEmbeddedContent(a);var l=a.querySelector(".slide-background-content");if(l){var c=l.style.backgroundImage||"";/\.gif/i.test(c)&&(l.style.backgroundImage="",window.getComputedStyle(l).opacity,l.style.backgroundImage=c)}var d=this.previousBackground?this.previousBackground.getAttribute("data-background-hash"):null,u=a.getAttribute("data-background-hash");u&&u===d&&a!==this.previousBackground&&this.element.classList.add("no-transition"),this.previousBackground=a}n&&["has-light-background","has-dark-background"].forEach((function(t){n.classList.contains(t)?e.Reveal.getRevealElement().classList.add(t):e.Reveal.getRevealElement().classList.remove(t)}),this),setTimeout((function(){e.element.classList.remove("no-transition")}),1)}},{key:"updateParallax",value:function(){var e=this.Reveal.getIndices();if(this.Reveal.getConfig().parallaxBackgroundImage){var t,n,i=this.Reveal.getHorizontalSlides(),a=this.Reveal.getVerticalSlides(),r=this.element.style.backgroundSize.split(" ");1===r.length?t=n=parseInt(r[0],10):(t=parseInt(r[0],10),n=parseInt(r[1],10));var o,s=this.element.offsetWidth,l=i.length;o=("number"==typeof this.Reveal.getConfig().parallaxBackgroundHorizontal?this.Reveal.getConfig().parallaxBackgroundHorizontal:l>1?(t-s)/(l-1):0)*e.h*-1;var c,d,u=this.element.offsetHeight,h=a.length;c="number"==typeof this.Reveal.getConfig().parallaxBackgroundVertical?this.Reveal.getConfig().parallaxBackgroundVertical:(n-u)/(h-1),d=h>0?c*e.v:0,this.element.style.backgroundPosition=o+"px "+-d+"px"}}}])&&R(t.prototype,n),i&&R(t,i),e}();function L(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var x=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.autoAnimateCounter=0}var t,n,i;return t=e,(n=[{key:"run",value:function(e,t){var n=this;if(this.reset(),e.hasAttribute("data-auto-animate")&&t.hasAttribute("data-auto-animate")){this.autoAnimateStyleSheet=this.autoAnimateStyleSheet||d();var i=this.getAutoAnimateOptions(t);e.dataset.autoAnimate="pending",t.dataset.autoAnimate="pending";var a=this.Reveal.getSlides();i.slideDirection=a.indexOf(t)>a.indexOf(e)?"forward":"backward";var r=this.getAutoAnimatableElements(e,t).map((function(e){return n.autoAnimateElements(e.from,e.to,e.options||{},i,n.autoAnimateCounter++)}));if("false"!==t.dataset.autoAnimateUnmatched&&!0===this.Reveal.getConfig().autoAnimateUnmatched){var o=.8*i.duration,s=.2*i.duration;this.getUnmatchedAutoAnimateElements(t).forEach((function(e){var t=n.getAutoAnimateOptions(e,i),a="unmatched";t.duration===i.duration&&t.delay===i.delay||(a="unmatched-"+n.autoAnimateCounter++,r.push('[data-auto-animate="running"] [data-auto-animate-target="'.concat(a,'"] { transition: opacity ').concat(t.duration,"s ease ").concat(t.delay,"s; }"))),e.dataset.autoAnimateTarget=a}),this),r.push('[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity '.concat(o,"s ease ").concat(s,"s; }"))}this.autoAnimateStyleSheet.innerHTML=r.join(""),requestAnimationFrame((function(){n.autoAnimateStyleSheet&&(getComputedStyle(n.autoAnimateStyleSheet).fontWeight,t.dataset.autoAnimate="running")})),this.Reveal.dispatchEvent({type:"autoanimate",data:{fromSlide:e,toSlide:t,sheet:this.autoAnimateStyleSheet}})}}},{key:"reset",value:function(){o(this.Reveal.getRevealElement(),'[data-auto-animate]:not([data-auto-animate=""])').forEach((function(e){e.dataset.autoAnimate=""})),o(this.Reveal.getRevealElement(),"[data-auto-animate-target]").forEach((function(e){delete e.dataset.autoAnimateTarget})),this.autoAnimateStyleSheet&&this.autoAnimateStyleSheet.parentNode&&(this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet),this.autoAnimateStyleSheet=null)}},{key:"autoAnimateElements",value:function(e,t,n,i,r){e.dataset.autoAnimateTarget="",t.dataset.autoAnimateTarget=r;var o=this.getAutoAnimateOptions(t,i);void 0!==n.delay&&(o.delay=n.delay),void 0!==n.duration&&(o.duration=n.duration),void 0!==n.easing&&(o.easing=n.easing);var s=this.getAutoAnimatableProperties("from",e,n),l=this.getAutoAnimatableProperties("to",t,n);if(t.classList.contains("fragment")&&(delete l.styles.opacity,e.classList.contains("fragment")&&(e.className.match(a)||[""])[0]===(t.className.match(a)||[""])[0]&&"forward"===i.slideDirection&&t.classList.add("visible","disabled")),!1!==n.translate||!1!==n.scale){var c=this.Reveal.getScale(),d={x:(s.x-l.x)/c,y:(s.y-l.y)/c,scaleX:s.width/l.width,scaleY:s.height/l.height};d.x=Math.round(1e3*d.x)/1e3,d.y=Math.round(1e3*d.y)/1e3,d.scaleX=Math.round(1e3*d.scaleX)/1e3,d.scaleX=Math.round(1e3*d.scaleX)/1e3;var u=!1!==n.translate&&(0!==d.x||0!==d.y),h=!1!==n.scale&&(0!==d.scaleX||0!==d.scaleY);if(u||h){var v=[];u&&v.push("translate(".concat(d.x,"px, ").concat(d.y,"px)")),h&&v.push("scale(".concat(d.scaleX,", ").concat(d.scaleY,")")),s.styles.transform=v.join(" "),s.styles["transform-origin"]="top left",l.styles.transform="none"}}for(var f in l.styles){var g=l.styles[f],p=s.styles[f];g===p?delete l.styles[f]:(!0===g.explicitValue&&(l.styles[f]=g.value),!0===p.explicitValue&&(s.styles[f]=p.value))}var m="",y=Object.keys(l.styles);return y.length>0&&(s.styles.transition="none",l.styles.transition="all ".concat(o.duration,"s ").concat(o.easing," ").concat(o.delay,"s"),l.styles["transition-property"]=y.join(", "),l.styles["will-change"]=y.join(", "),m='[data-auto-animate-target="'+r+'"] {'+Object.keys(s.styles).map((function(e){return e+": "+s.styles[e]+" !important;"})).join("")+'}[data-auto-animate="running"] [data-auto-animate-target="'+r+'"] {'+Object.keys(l.styles).map((function(e){return e+": "+l.styles[e]+" !important;"})).join("")+"}"),m}},{key:"getAutoAnimateOptions",value:function(e,t){var n={easing:this.Reveal.getConfig().autoAnimateEasing,duration:this.Reveal.getConfig().autoAnimateDuration,delay:0};if(n=r(n,t),e.closest&&e.parentNode){var i=e.parentNode.closest("[data-auto-animate-target]");i&&(n=this.getAutoAnimateOptions(i,n))}return e.dataset.autoAnimateEasing&&(n.easing=e.dataset.autoAnimateEasing),e.dataset.autoAnimateDuration&&(n.duration=parseFloat(e.dataset.autoAnimateDuration)),e.dataset.autoAnimateDelay&&(n.delay=parseFloat(e.dataset.autoAnimateDelay)),n}},{key:"getAutoAnimatableProperties",value:function(e,t,n){var i,a={styles:[]};!1===n.translate&&!1===n.scale||(i="function"==typeof n.measure?n.measure(t):t.getBoundingClientRect(),a.x=i.x,a.y=i.y,a.width=i.width,a.height=i.height);var r=getComputedStyle(t);return(n.styles||this.Reveal.getConfig().autoAnimateStyles).forEach((function(t){var n;"string"==typeof t&&(t={property:t}),""!==(n=void 0!==t.from&&"from"===e?{value:t.from,explicitValue:!0}:void 0!==t.to&&"to"===e?{value:t.to,explicitValue:!0}:r[t.property])&&(a.styles[t.property]=n)})),a}},{key:"getAutoAnimatableElements",value:function(e,t){var n=("function"==typeof this.Reveal.getConfig().autoAnimateMatcher?this.Reveal.getConfig().autoAnimateMatcher:this.getAutoAnimatePairs).call(this,e,t),i=[];return n.filter((function(e,t){if(-1===i.indexOf(e.to))return i.push(e.to),!0}))}},{key:"getAutoAnimatePairs",value:function(e,t){var n=this,i=[],a="h1, h2, h3, h4, h5, h6, p, li";return this.findAutoAnimateMatches(i,e,t,"[data-id]",(function(e){return e.nodeName+":::"+e.getAttribute("data-id")})),this.findAutoAnimateMatches(i,e,t,a,(function(e){return e.nodeName+":::"+e.innerText})),this.findAutoAnimateMatches(i,e,t,"img, video, iframe",(function(e){return e.nodeName+":::"+(e.getAttribute("src")||e.getAttribute("data-src"))})),this.findAutoAnimateMatches(i,e,t,"pre",(function(e){return e.nodeName+":::"+e.innerText})),i.forEach((function(e){e.from.matches(a)?e.options={scale:!1}:e.from.matches("pre")&&(e.options={scale:!1,styles:["width","height"]},n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-code",(function(e){return e.textContent}),{scale:!1,styles:[],measure:n.getLocalBoundingBox.bind(n)}),n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-line[data-line-number]",(function(e){return e.getAttribute("data-line-number")}),{scale:!1,styles:["width"],measure:n.getLocalBoundingBox.bind(n)}))}),this),i}},{key:"getLocalBoundingBox",value:function(e){var t=this.Reveal.getScale();return{x:Math.round(e.offsetLeft*t*100)/100,y:Math.round(e.offsetTop*t*100)/100,width:Math.round(e.offsetWidth*t*100)/100,height:Math.round(e.offsetHeight*t*100)/100}}},{key:"findAutoAnimateMatches",value:function(e,t,n,i,a,r){var o={},s={};[].slice.call(t.querySelectorAll(i)).forEach((function(e,t){var n=a(e);"string"==typeof n&&n.length&&(o[n]=o[n]||[],o[n].push(e))})),[].slice.call(n.querySelectorAll(i)).forEach((function(t,n){var i,l=a(t);if(s[l]=s[l]||[],s[l].push(t),o[l]){var c=s[l].length-1,d=o[l].length-1;o[l][c]?(i=o[l][c],o[l][c]=null):o[l][d]&&(i=o[l][d],o[l][d]=null)}i&&e.push({from:i,to:t,options:r})}))}},{key:"getUnmatchedAutoAnimateElements",value:function(e){var t=this;return[].slice.call(e.children).reduce((function(e,n){var i=n.querySelector("[data-auto-animate-target]");return n.hasAttribute("data-auto-animate-target")||i||e.push(n),n.querySelector("[data-auto-animate-target]")&&(e=e.concat(t.getUnmatchedAutoAnimateElements(n))),e}),[])}}])&&L(t.prototype,n),i&&L(t,i),e}();function C(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var P=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"configure",value:function(e,t){!1===e.fragments?this.disable():!1===t.fragments&&this.enable()}},{key:"disable",value:function(){o(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))}},{key:"enable",value:function(){o(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.remove("visible"),e.classList.remove("current-fragment")}))}},{key:"availableRoutes",value:function(){var e=this.Reveal.getCurrentSlide();if(e&&this.Reveal.getConfig().fragments){var t=e.querySelectorAll(".fragment:not(.disabled)"),n=e.querySelectorAll(".fragment:not(.disabled):not(.visible)");return{prev:t.length-n.length>0,next:!!n.length}}return{prev:!1,next:!1}}},{key:"sort",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e=Array.from(e);var n=[],i=[],a=[];e.forEach((function(e){if(e.hasAttribute("data-fragment-index")){var t=parseInt(e.getAttribute("data-fragment-index"),10);n[t]||(n[t]=[]),n[t].push(e)}else i.push([e])})),n=n.concat(i);var r=0;return n.forEach((function(e){e.forEach((function(e){a.push(e),e.setAttribute("data-fragment-index",r)})),r++})),!0===t?n:a}},{key:"sortAll",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t){var n=o(t,"section");n.forEach((function(t,n){e.sort(t.querySelectorAll(".fragment"))}),e),0===n.length&&e.sort(t.querySelectorAll(".fragment"))}))}},{key:"update",value:function(e,t){var n=this,i={shown:[],hidden:[]},a=this.Reveal.getCurrentSlide();if(a&&this.Reveal.getConfig().fragments&&(t=t||this.sort(a.querySelectorAll(".fragment"))).length){var r=0;if("number"!=typeof e){var o=this.sort(a.querySelectorAll(".fragment.visible")).pop();o&&(e=parseInt(o.getAttribute("data-fragment-index")||0,10))}Array.from(t).forEach((function(t,a){if(t.hasAttribute("data-fragment-index")&&(a=parseInt(t.getAttribute("data-fragment-index"),10)),r=Math.max(r,a),a<=e){var o=t.classList.contains("visible");t.classList.add("visible"),t.classList.remove("current-fragment"),a===e&&(n.Reveal.announceStatus(n.Reveal.getStatusText(t)),t.classList.add("current-fragment"),n.Reveal.slideContent.startEmbeddedContent(t)),o||(i.shown.push(t),n.Reveal.dispatchEvent({target:t,type:"visible",bubbles:!1}))}else{var s=t.classList.contains("visible");t.classList.remove("visible"),t.classList.remove("current-fragment"),s&&(i.hidden.push(t),n.Reveal.dispatchEvent({target:t,type:"hidden",bubbles:!1}))}})),e="number"==typeof e?e:-1,e=Math.max(Math.min(e,r),-1),a.setAttribute("data-fragment",e)}return i}},{key:"sync",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();return this.sort(e.querySelectorAll(".fragment"))}},{key:"goto",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.Reveal.getCurrentSlide();if(n&&this.Reveal.getConfig().fragments){var i=this.sort(n.querySelectorAll(".fragment:not(.disabled)"));if(i.length){if("number"!=typeof e){var a=this.sort(n.querySelectorAll(".fragment:not(.disabled).visible")).pop();e=a?parseInt(a.getAttribute("data-fragment-index")||0,10):-1}e+=t;var r=this.update(e,i);return r.hidden.length&&this.Reveal.dispatchEvent({type:"fragmenthidden",data:{fragment:r.hidden[0],fragments:r.hidden}}),r.shown.length&&this.Reveal.dispatchEvent({type:"fragmentshown",data:{fragment:r.shown[0],fragments:r.shown}}),this.Reveal.controls.update(),this.Reveal.progress.update(),this.Reveal.getConfig().fragmentInURL&&this.Reveal.location.writeURL(),!(!r.shown.length&&!r.hidden.length)}}return!1}},{key:"next",value:function(){return this.goto(null,1)}},{key:"prev",value:function(){return this.goto(null,-1)}}])&&C(t.prototype,n),i&&C(t,i),e}();function N(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var M=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.active=!1,this.onSlideClicked=this.onSlideClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"activate",value:function(){var e=this;if(this.Reveal.getConfig().overview&&!this.isActive()){this.active=!0,this.Reveal.getRevealElement().classList.add("overview"),this.Reveal.cancelAutoSlide(),this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){t.classList.contains("stack")||t.addEventListener("click",e.onSlideClicked,!0)}));var t=this.Reveal.getComputedSlideSize();this.overviewSlideWidth=t.width+70,this.overviewSlideHeight=t.height+70,this.Reveal.getConfig().rtl&&(this.overviewSlideWidth=-this.overviewSlideWidth),this.Reveal.updateSlidesVisibility(),this.layout(),this.update(),this.Reveal.layout();var n=this.Reveal.getIndices();this.Reveal.dispatchEvent({type:"overviewshown",data:{indexh:n.h,indexv:n.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"layout",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t,n){t.setAttribute("data-index-h",n),l(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),t.classList.contains("stack")&&o(t,"section").forEach((function(t,i){t.setAttribute("data-index-h",n),t.setAttribute("data-index-v",i),l(t,"translate3d(0, "+i*e.overviewSlideHeight+"px, 0)")}))})),Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach((function(t,n){l(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),o(t,".slide-background").forEach((function(t,n){l(t,"translate3d(0, "+n*e.overviewSlideHeight+"px, 0)")}))}))}},{key:"update",value:function(){var e=Math.min(window.innerWidth,window.innerHeight),t=Math.max(e/5,150)/e,n=this.Reveal.getIndices();this.Reveal.transformSlides({overview:["scale("+t+")","translateX("+-n.h*this.overviewSlideWidth+"px)","translateY("+-n.v*this.overviewSlideHeight+"px)"].join(" ")})}},{key:"deactivate",value:function(){var e=this;if(this.Reveal.getConfig().overview){this.active=!1,this.Reveal.getRevealElement().classList.remove("overview"),this.Reveal.getRevealElement().classList.add("overview-deactivating"),setTimeout((function(){e.Reveal.getRevealElement().classList.remove("overview-deactivating")}),1),this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){l(t,""),t.removeEventListener("click",e.onSlideClicked,!0)})),o(this.Reveal.getBackgroundsElement(),".slide-background").forEach((function(e){l(e,"")})),this.Reveal.transformSlides({overview:""});var t=this.Reveal.getIndices();this.Reveal.slide(t.h,t.v),this.Reveal.layout(),this.Reveal.cueAutoSlide(),this.Reveal.dispatchEvent({type:"overviewhidden",data:{indexh:t.h,indexv:t.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"toggle",value:function(e){"boolean"==typeof e?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}},{key:"isActive",value:function(){return this.active}},{key:"onSlideClicked",value:function(e){if(this.isActive()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(this.deactivate(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),i=parseInt(t.getAttribute("data-index-v"),10);this.Reveal.slide(n,i)}}}}])&&N(t.prototype,n),i&&N(t,i),e}();function T(e){return(T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function I(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var D=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.shortcuts={},this.bindings={},this.onDocumentKeyDown=this.onDocumentKeyDown.bind(this),this.onDocumentKeyPress=this.onDocumentKeyPress.bind(this)}var t,n,i;return t=e,(n=[{key:"configure",value:function(e,t){"linear"===e.navigationMode?(this.shortcuts["&#8594; , &#8595; , SPACE , N , L , J"]="Next slide",this.shortcuts["&#8592; , &#8593; , P , H , K"]="Previous slide"):(this.shortcuts["N , SPACE"]="Next slide",this.shortcuts.P="Previous slide",this.shortcuts["&#8592; , H"]="Navigate left",this.shortcuts["&#8594; , L"]="Navigate right",this.shortcuts["&#8593; , K"]="Navigate up",this.shortcuts["&#8595; , J"]="Navigate down"),this.shortcuts["Home , Shift &#8592;"]="First slide",this.shortcuts["End , Shift &#8594;"]="Last slide",this.shortcuts["B , ."]="Pause",this.shortcuts.F="Fullscreen",this.shortcuts["ESC, O"]="Slide overview"}},{key:"bind",value:function(){document.addEventListener("keydown",this.onDocumentKeyDown,!1),document.addEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"unbind",value:function(){document.removeEventListener("keydown",this.onDocumentKeyDown,!1),document.removeEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"addKeyBinding",value:function(e,t){"object"===T(e)&&e.keyCode?this.bindings[e.keyCode]={callback:t,key:e.key,description:e.description}:this.bindings[e]={callback:t,key:null,description:null}}},{key:"removeKeyBinding",value:function(e){delete this.bindings[e]}},{key:"triggerKey",value:function(e){this.onDocumentKeyDown({keyCode:e})}},{key:"registerKeyboardShortcut",value:function(e,t){this.shortcuts[e]=t}},{key:"onDocumentKeyPress",value:function(e){e.shiftKey&&63===e.charCode&&this.Reveal.toggleHelp()}},{key:"onDocumentKeyDown",value:function(e){var t=this.Reveal.getConfig();if("function"==typeof t.keyboardCondition&&!1===t.keyboardCondition(e))return!0;var n=e.keyCode,i=!this.Reveal.isAutoSliding();this.Reveal.onUserInput(e);var a=document.activeElement&&"inherit"!==document.activeElement.contentEditable,r=document.activeElement&&document.activeElement.tagName&&/input|textarea/i.test(document.activeElement.tagName),o=document.activeElement&&document.activeElement.className&&/speaker-notes/i.test(document.activeElement.className),s=e.shiftKey&&32===e.keyCode,l=e.shiftKey&&37===n,c=e.shiftKey&&39===n,d=!s&&!l&&!c&&(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey);if(!(a||r||o||d)){var u,h=[66,86,190,191];if("object"===T(t.keyboard))for(u in t.keyboard)"togglePause"===t.keyboard[u]&&h.push(parseInt(u,10));if(this.Reveal.isPaused()&&-1===h.indexOf(n))return!1;var v,f,g="linear"===t.navigationMode||!this.Reveal.hasHorizontalSlides()||!this.Reveal.hasVerticalSlides(),p=!1;if("object"===T(t.keyboard))for(u in t.keyboard)if(parseInt(u,10)===n){var m=t.keyboard[u];"function"==typeof m?m.apply(null,[e]):"string"==typeof m&&"function"==typeof this.Reveal[m]&&this.Reveal[m].call(),p=!0}if(!1===p)for(u in this.bindings)if(parseInt(u,10)===n){var y=this.bindings[u].callback;"function"==typeof y?y.apply(null,[e]):"string"==typeof y&&"function"==typeof this.Reveal[y]&&this.Reveal[y].call(),p=!0}!1===p&&(p=!0,80===n||33===n?this.Reveal.prev():78===n||34===n?this.Reveal.next():72===n||37===n?l?this.Reveal.slide(0):!this.Reveal.overview.isActive()&&g?this.Reveal.prev():this.Reveal.left():76===n||39===n?c?this.Reveal.slide(Number.MAX_VALUE):!this.Reveal.overview.isActive()&&g?this.Reveal.next():this.Reveal.right():75===n||38===n?!this.Reveal.overview.isActive()&&g?this.Reveal.prev():this.Reveal.up():74===n||40===n?!this.Reveal.overview.isActive()&&g?this.Reveal.next():this.Reveal.down():36===n?this.Reveal.slide(0):35===n?this.Reveal.slide(Number.MAX_VALUE):32===n?(this.Reveal.overview.isActive()&&this.Reveal.overview.deactivate(),e.shiftKey?this.Reveal.prev():this.Reveal.next()):58===n||59===n||66===n||86===n||190===n||191===n?this.Reveal.togglePause():70===n?(v=document.documentElement,(f=v.requestFullscreen||v.webkitRequestFullscreen||v.webkitRequestFullScreen||v.mozRequestFullScreen||v.msRequestFullscreen)&&f.apply(v)):65===n?t.autoSlideStoppable&&this.Reveal.toggleAutoSlide(i):p=!1),p?e.preventDefault&&e.preventDefault():27!==n&&79!==n||(!1===this.Reveal.closeOverlay()&&this.Reveal.overview.toggle(),e.preventDefault&&e.preventDefault()),this.Reveal.cueAutoSlide()}}}])&&I(t.prototype,n),i&&I(t,i),e}();function O(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var B=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.writeURLTimeout=0}var t,n,i;return t=e,(n=[{key:"readURL",value:function(){var e=this.Reveal.getConfig(),t=this.Reveal.getIndices(),n=this.Reveal.getCurrentSlide(),i=window.location.hash,a=i.slice(2).split("/"),r=i.replace(/#|\//gi,"");if(!/^[0-9]*$/.test(a[0])&&r.length){var o;try{o=document.getElementById(decodeURIComponent(r))}catch(e){}var s=!!n&&n.getAttribute("id")===r;if(o){if(!s){var l=this.Reveal.getIndices(o);this.Reveal.slide(l.h,l.v)}}else this.Reveal.slide(t.h||0,t.v||0)}else{var c,d=e.hashOneBasedIndex?1:0,u=parseInt(a[0],10)-d||0,h=parseInt(a[1],10)-d||0;e.fragmentInURL&&(c=parseInt(a[2],10),isNaN(c)&&(c=void 0)),u===t.h&&h===t.v&&void 0===c||this.Reveal.slide(u,h,c)}}},{key:"writeURL",value:function(e){var t=this.Reveal.getConfig(),n=this.Reveal.getCurrentSlide();clearTimeout(this.writeURLTimeout),"number"==typeof e?this.writeURLTimeout=setTimeout(this.writeURL,e):n&&(t.history||!1===y?window.location.hash=this.getHash():t.hash?window.history.replaceState(null,null,"#"+this.getHash()):window.history.replaceState(null,null,window.location.pathname+window.location.search))}},{key:"getHash",value:function(e){var t="/",n=e||this.Reveal.getCurrentSlide(),i=n?n.getAttribute("id"):null;i&&(i=encodeURIComponent(i));var a=this.Reveal.getIndices(e);if(this.Reveal.getConfig().fragmentInURL||(a.f=void 0),"string"==typeof i&&i.length&&void 0===a.f)t="/"+i;else{var r=this.Reveal.getConfig().hashOneBasedIndex?1:0;(a.h>0||a.v>0||void 0!==a.f)&&(t+=a.h+r),(a.v>0||void 0!==a.f)&&(t+="/"+(a.v+r)),void 0!==a.f&&(t+="/"+a.f)}return t}}])&&O(t.prototype,n),i&&O(t,i),e}();function H(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function j(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var z=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.onNavigateLeftClicked=this.onNavigateLeftClicked.bind(this),this.onNavigateRightClicked=this.onNavigateRightClicked.bind(this),this.onNavigateUpClicked=this.onNavigateUpClicked.bind(this),this.onNavigateDownClicked=this.onNavigateDownClicked.bind(this),this.onNavigatePrevClicked=this.onNavigatePrevClicked.bind(this),this.onNavigateNextClicked=this.onNavigateNextClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"render",value:function(){var e=this.Reveal.getConfig().rtl,t=this.Reveal.getRevealElement();this.element=document.createElement("aside"),this.element.className="controls",this.element.innerHTML='<button class="navigate-left" aria-label="'.concat(e?"next slide":"previous slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-right" aria-label="').concat(e?"previous slide":"next slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>'),this.Reveal.getRevealElement().appendChild(this.element),this.controlsLeft=o(t,".navigate-left"),this.controlsRight=o(t,".navigate-right"),this.controlsUp=o(t,".navigate-up"),this.controlsDown=o(t,".navigate-down"),this.controlsPrev=o(t,".navigate-prev"),this.controlsNext=o(t,".navigate-next"),this.controlsRightArrow=this.element.querySelector(".navigate-right"),this.controlsLeftArrow=this.element.querySelector(".navigate-left"),this.controlsDownArrow=this.element.querySelector(".navigate-down")}},{key:"configure",value:function(e,t){this.element.style.display=e.controls?"block":"none",this.element.setAttribute("data-controls-layout",e.controlsLayout),this.element.setAttribute("data-controls-back-arrows",e.controlsBackArrows)}},{key:"bind",value:function(){var e=this,t=["touchstart","click"];p&&(t=["touchstart"]),t.forEach((function(t){e.controlsLeft.forEach((function(n){return n.addEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.addEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.addEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.addEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.addEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.addEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"unbind",value:function(){var e=this;["touchstart","click"].forEach((function(t){e.controlsLeft.forEach((function(n){return n.removeEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.removeEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.removeEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.removeEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.removeEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.removeEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"update",value:function(){var e=this.Reveal.availableRoutes();[].concat(H(this.controlsLeft),H(this.controlsRight),H(this.controlsUp),H(this.controlsDown),H(this.controlsPrev),H(this.controlsNext)).forEach((function(e){e.classList.remove("enabled","fragmented"),e.setAttribute("disabled","disabled")})),e.left&&this.controlsLeft.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.right&&this.controlsRight.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.up&&this.controlsUp.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.down&&this.controlsDown.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.left||e.up)&&this.controlsPrev.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.right||e.down)&&this.controlsNext.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")}));var t=this.Reveal.getCurrentSlide();if(t){var n=this.Reveal.fragments.availableRoutes();n.prev&&this.controlsPrev.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsNext.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),this.Reveal.isVerticalSlide(t)?(n.prev&&this.controlsUp.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsDown.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")}))):(n.prev&&this.controlsLeft.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsRight.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})))}if(this.Reveal.getConfig().controlsTutorial){var i=this.Reveal.getIndices();!this.Reveal.hasNavigatedVertically()&&e.down?this.controlsDownArrow.classList.add("highlight"):(this.controlsDownArrow.classList.remove("highlight"),this.Reveal.getConfig().rtl?!this.Reveal.hasNavigatedHorizontally()&&e.left&&0===i.v?this.controlsLeftArrow.classList.add("highlight"):this.controlsLeftArrow.classList.remove("highlight"):!this.Reveal.hasNavigatedHorizontally()&&e.right&&0===i.v?this.controlsRightArrow.classList.add("highlight"):this.controlsRightArrow.classList.remove("highlight"))}}},{key:"onNavigateLeftClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.prev():this.Reveal.left()}},{key:"onNavigateRightClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.next():this.Reveal.right()}},{key:"onNavigateUpClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.up()}},{key:"onNavigateDownClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.down()}},{key:"onNavigatePrevClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.prev()}},{key:"onNavigateNextClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.next()}}])&&j(t.prototype,n),i&&j(t,i),e}();function U(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var q=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.onProgressClicked=this.onProgressClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="progress",this.Reveal.getRevealElement().appendChild(this.element),this.bar=document.createElement("span"),this.element.appendChild(this.bar)}},{key:"configure",value:function(e,t){this.element.style.display=e.progress?"block":"none"}},{key:"bind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.addEventListener("click",this.onProgressClicked,!1)}},{key:"unbind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.removeEventListener("click",this.onProgressClicked,!1)}},{key:"update",value:function(){this.Reveal.getConfig().progress&&this.bar&&(this.bar.style.width=this.Reveal.getProgress()*this.getMaxWidth()+"px")}},{key:"getMaxWidth",value:function(){return this.Reveal.getRevealElement().offsetWidth}},{key:"onProgressClicked",value:function(e){this.Reveal.onUserInput(e),e.preventDefault();var t=this.Reveal.getHorizontalSlides().length,n=Math.floor(e.clientX/this.getMaxWidth()*t);this.Reveal.getConfig().rtl&&(n=t-n),this.Reveal.slide(n)}}])&&U(t.prototype,n),i&&U(t,i),e}(),K=function(e,t){var n=document.createElement("script");n.type="text/javascript",n.async=!1,n.defer=!1,n.src=e,"function"==typeof t&&(n.onload=n.onreadystatechange=function(e){("load"===e.type||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=n.onerror=null,t())},n.onerror=function(e){n.onload=n.onreadystatechange=n.onerror=null,t(new Error("Failed loading script: "+n.src+"\n"+e))});var i=document.querySelector("head");i.insertBefore(n,i.lastChild)};function W(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var V=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.state="idle",this.registeredPlugins={},this.asyncDependencies=[]}var t,n,i;return t=e,(n=[{key:"load",value:function(e){var t=this;return this.state="loading",new Promise((function(n){var i=[],a=0;if(e.forEach((function(e){e.condition&&!e.condition()||(e.async?t.asyncDependencies.push(e):i.push(e))})),i.length){a=i.length;var r=function(e){"function"==typeof e.callback&&e.callback(),0==--a&&t.initPlugins().then(n)};i.forEach((function(e){e.id?(t.registerPlugin(e.id,e.plugin),r(e)):K(e.src,(function(){return r(e)}))}))}else t.initPlugins().then(n)}))}},{key:"initPlugins",value:function(){var e=this;return new Promise((function(t){var n=Object.keys(e.registeredPlugins).length;if(0===n)e.loadAsync().then(t);else{var i=function(){0==--n&&e.loadAsync().then(t)};for(var a in e.registeredPlugins){var r=e.registeredPlugins[a];if("function"==typeof r.init){var o=r.init();o&&"function"==typeof o.then?o.then(i):i()}else i()}}}))}},{key:"loadAsync",value:function(){var e=this;return this.state="loaded",this.asyncDependencies.length&&this.asyncDependencies.forEach((function(t){t.id?(e.registerPlugin(t.id,t.plugin),"function"==typeof t.plugin.init&&t.plugin.init(),"function"==typeof t.callback&&t.callback()):K(t.src,t.callback)})),Promise.resolve()}},{key:"registerPlugin",value:function(e,t){void 0===this.registeredPlugins[e]?(this.registeredPlugins[e]=t,"loaded"===this.state&&"function"==typeof t.init&&t.init()):console.warn('reveal.js: "'+e+'" plugin has already been registered')}},{key:"hasPlugin",value:function(e){return!!this.registeredPlugins[e]}},{key:"getPlugin",value:function(e){return this.registeredPlugins[e]}},{key:"getRegisteredPlugins",value:function(){return this.registeredPlugins}}])&&W(t.prototype,n),i&&W(t,i),e}();function F(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var X=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"setupPDF",value:function(){var e=this.Reveal.getConfig(),t=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),n=Math.floor(t.width*(1+e.margin)),i=Math.floor(t.height*(1+e.margin)),a=t.width,r=t.height;d("@page{size:"+n+"px "+i+"px; margin: 0px;}"),d(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: "+a+"px; max-height:"+r+"px}"),document.documentElement.classList.add("print-pdf"),document.body.style.width=n+"px",document.body.style.height=i+"px",this.Reveal.layoutSlideContents(a,r);var s=e.slideNumber&&/all|print/i.test(e.showSlideNumber);o(this.Reveal.getRevealElement(),".slides section").forEach((function(e){e.setAttribute("data-slide-number",this.Reveal.slideNumber.getSlideNumber(e))}),this),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){if(!1===t.classList.contains("stack")){var l=(n-a)/2,c=(i-r)/2,d=t.scrollHeight,u=Math.max(Math.ceil(d/i),1);(1===(u=Math.min(u,e.pdfMaxPagesPerSlide))&&e.center||t.classList.contains("center"))&&(c=Math.max((i-d)/2,0));var h=document.createElement("div");if(h.className="pdf-page",h.style.height=(i+e.pdfPageHeightOffset)*u+"px",t.parentNode.insertBefore(h,t),h.appendChild(t),t.style.left=l+"px",t.style.top=c+"px",t.style.width=a+"px",t.slideBackgroundElement&&h.insertBefore(t.slideBackgroundElement,t),e.showNotes){var v=getSlideNotes(t);if(v){var f="string"==typeof e.showNotes?e.showNotes:"inline",g=document.createElement("div");g.classList.add("speaker-notes"),g.classList.add("speaker-notes-pdf"),g.setAttribute("data-layout",f),g.innerHTML=v,"separate-page"===f?h.parentNode.insertBefore(g,h.nextSibling):(g.style.left="8px",g.style.bottom="8px",g.style.width=n-16+"px",h.appendChild(g))}}if(s){var p=document.createElement("div");p.classList.add("slide-number"),p.classList.add("slide-number-pdf"),p.innerHTML=t.getAttribute("data-slide-number"),h.appendChild(p)}if(e.pdfSeparateFragments){var m,y,b=this.Reveal.fragments.sort(h.querySelectorAll(".fragment"),!0);b.forEach((function(e){m&&m.forEach((function(e){e.classList.remove("current-fragment")})),e.forEach((function(e){e.classList.add("visible","current-fragment")}),this);var t=h.cloneNode(!0);h.parentNode.insertBefore(t,(y||h).nextSibling),m=e,y=t}),this),b.forEach((function(e){e.forEach((function(e){e.classList.remove("visible","current-fragment")}))}))}else o(h,".fragment:not(.fade-out)").forEach((function(e){e.classList.add("visible")}))}}),this),this.Reveal.dispatchEvent({type:"pdf-ready"})}},{key:"isPrintingPDF",value:function(){return/print-pdf/gi.test(window.location.search)}}])&&F(t.prototype,n),i&&F(t,i),e}();function Y(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var _=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.touchStartX=0,this.touchStartY=0,this.touchStartCount=0,this.touchCaptured=!1,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this)}var t,n,i;return t=e,(n=[{key:"bind",value:function(){var e=this.Reveal.getRevealElement();"onpointerdown"in window?(e.addEventListener("pointerdown",this.onPointerDown,!1),e.addEventListener("pointermove",this.onPointerMove,!1),e.addEventListener("pointerup",this.onPointerUp,!1)):window.navigator.msPointerEnabled?(e.addEventListener("MSPointerDown",this.onPointerDown,!1),e.addEventListener("MSPointerMove",this.onPointerMove,!1),e.addEventListener("MSPointerUp",this.onPointerUp,!1)):(e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1))}},{key:"unbind",value:function(){var e=this.Reveal.getRevealElement();e.removeEventListener("pointerdown",this.onPointerDown,!1),e.removeEventListener("pointermove",this.onPointerMove,!1),e.removeEventListener("pointerup",this.onPointerUp,!1),e.removeEventListener("MSPointerDown",this.onPointerDown,!1),e.removeEventListener("MSPointerMove",this.onPointerMove,!1),e.removeEventListener("MSPointerUp",this.onPointerUp,!1),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1)}},{key:"isSwipePrevented",value:function(e){for(;e&&"function"==typeof e.hasAttribute;){if(e.hasAttribute("data-prevent-swipe"))return!0;e=e.parentNode}return!1}},{key:"onTouchStart",value:function(e){if(this.isSwipePrevented(e.target))return!0;this.touchStartX=e.touches[0].clientX,this.touchStartY=e.touches[0].clientY,this.touchStartCount=e.touches.length}},{key:"onTouchMove",value:function(e){if(this.isSwipePrevented(e.target))return!0;var t=this.Reveal.getConfig();if(this.touchCaptured)isAndroid&&e.preventDefault();else{this.Reveal.onUserInput(e);var n=e.touches[0].clientX,i=e.touches[0].clientY;if(1===e.touches.length&&2!==this.touchStartCount){var a=n-this.touchStartX,r=i-this.touchStartY;a>40&&Math.abs(a)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.next():this.Reveal.prev()():this.Reveal.left()):a<-40&&Math.abs(a)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.prev()():this.Reveal.next():this.Reveal.right()):r>40?(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.prev()():this.Reveal.up()):r<-40&&(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.next():this.Reveal.down()),t.embedded?(this.touchCaptured||this.Reveal.isVerticalSlide(currentSlide))&&e.preventDefault():e.preventDefault()}}}},{key:"onTouchEnd",value:function(e){this.touchCaptured=!1}},{key:"onPointerDown",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchStart(e))}},{key:"onPointerMove",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchMove(e))}},{key:"onPointerUp",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchEnd(e))}}])&&Y(t.prototype,n),i&&Y(t,i),e}();function $(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var J=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="speaker-notes",this.element.setAttribute("data-prevent-swipe",""),this.element.setAttribute("tabindex","0"),this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){e.showNotes&&this.element.setAttribute("data-layout","string"==typeof e.showNotes?e.showNotes:"inline")}},{key:"update",value:function(){this.Reveal.getConfig().showNotes&&this.element&&this.Reveal.getCurrentSlide()&&!this.Reveal.print.isPrintingPDF()&&(this.element.innerHTML=this.getSlideNotes()||'<span class="notes-placeholder">No notes on this slide.</span>')}},{key:"updateVisibility",value:function(){this.Reveal.getConfig().showNotes&&this.hasNotes()?this.Reveal.getRevealElement().classList.add("show-notes"):this.Reveal.getRevealElement().classList.remove("show-notes")}},{key:"hasNotes",value:function(){return this.Reveal.getSlidesElement().querySelectorAll("[data-notes], aside.notes").length>0}},{key:"isSpeakerNotesWindow",value:function(){return!!window.location.search.match(/receiver/gi)}},{key:"getSlideNotes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();if(e.hasAttribute("data-notes"))return e.getAttribute("data-notes");var t=e.querySelector("aside.notes");return t?t.innerHTML:null}}])&&$(t.prototype,n),i&&$(t,i),e}();function Q(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var Z=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.diameter=100,this.diameter2=this.diameter/2,this.thickness=6,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=t,this.progressCheck=n,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.canvas.style.width=this.diameter2+"px",this.canvas.style.height=this.diameter2+"px",this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}var t,n,i;return t=e,(n=[{key:"setPlaying",value:function(e){var t=this.playing;this.playing=e,!t&&this.playing?this.animate():this.render()}},{key:"animate",value:function(){var e=this.progress;this.progress=this.progressCheck(),e>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&requestAnimationFrame(this.animate.bind(this))}},{key:"render",value:function(){var e=this.playing?this.progress:0,t=this.diameter2-this.thickness,n=this.diameter2,i=this.diameter2;this.progressOffset+=.1*(1-this.progressOffset);var a=-Math.PI/2+e*(2*Math.PI),r=-Math.PI/2+this.progressOffset*(2*Math.PI);this.context.save(),this.context.clearRect(0,0,this.diameter,this.diameter),this.context.beginPath(),this.context.arc(n,i,t+4,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(n,i,t,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="rgba( 255, 255, 255, 0.2 )",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(n,i,t,r,a,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(n-14,i-14),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,10,28),this.context.fillRect(18,0,10,28)):(this.context.beginPath(),this.context.translate(4,0),this.context.moveTo(0,0),this.context.lineTo(24,14),this.context.lineTo(0,28),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()}},{key:"on",value:function(e,t){this.canvas.addEventListener(e,t,!1)}},{key:"off",value:function(e,t){this.canvas.removeEventListener(e,t,!1)}},{key:"destroy",value:function(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)}}])&&Q(t.prototype,n),i&&Q(t,i),e}(),G={width:960,height:700,margin:.04,minScale:.2,maxScale:2,controls:!0,controlsTutorial:!0,controlsLayout:"bottom-right",controlsBackArrows:"faded",progress:!0,slideNumber:!1,showSlideNumber:"all",hashOneBasedIndex:!1,hash:!1,history:!1,keyboard:!0,keyboardCondition:null,overview:!0,disableLayout:!1,center:!0,touch:!0,loop:!1,rtl:!1,navigationMode:"default",shuffle:!1,fragments:!0,fragmentInURL:!1,embedded:!1,help:!0,pause:!0,showNotes:!1,autoPlayMedia:null,preloadIframes:null,autoAnimate:!0,autoAnimateMatcher:null,autoAnimateEasing:"ease",autoAnimateDuration:1,autoAnimateUnmatched:!0,autoAnimateStyles:["opacity","color","background-color","padding","font-size","line-height","letter-spacing","border-width","border-color","border-radius","outline","outline-offset"],autoSlide:0,autoSlideStoppable:!0,autoSlideMethod:null,defaultTiming:null,mouseWheel:!1,previewLinks:!1,postMessage:!0,postMessageEvents:!1,focusBodyOnPageVisibilityChange:!0,transition:"slide",transitionSpeed:"default",backgroundTransition:"fade",parallaxBackgroundImage:"",parallaxBackgroundSize:"",parallaxBackgroundRepeat:"",parallaxBackgroundPosition:"",parallaxBackgroundHorizontal:null,parallaxBackgroundVertical:null,pdfMaxPagesPerSlide:Number.POSITIVE_INFINITY,pdfSeparateFragments:!0,pdfPageHeightOffset:-1,viewDistance:3,mobileViewDistance:2,display:"block",hideInactiveCursor:!0,hideCursorTime:5e3,dependencies:[]};function ee(e){return(ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?te(Object(n),!0).forEach((function(t){ie(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ie(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ae=function(e,t){var n,a,c,d,h,v,g={},p=!1,y={hasNavigatedHorizontally:!1,hasNavigatedVertically:!1},b=[],k=1,E=new w(g),R=new A(g),L=new x(g),C=new S(g),N=new P(g),T=new M(g),I=new D(g),O=new B(g),H=new z(g),j=new q(g),U=new V(g),K=new X(g),W=new _(g),F=new J(g),Y={layout:"",overview:""},$={},Q=0,te=!1,ie=0,ae=0,re=0,oe=-1,se=!1;function le(){p=!0,function(){$.slides.classList.add("no-transition"),f?$.wrapper.classList.add("no-hover"):$.wrapper.classList.remove("no-hover");C.render(),R.render(),H.render(),j.render(),F.render(),$.pauseOverlay=function(e,t,n){for(var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",a=e.querySelectorAll("."+n),r=0;r<a.length;r++){var o=a[r];if(o.parentNode===e)return o}var s=document.createElement(t);return s.className=n,s.innerHTML=i,e.appendChild(s),s}($.wrapper,"div","pause-overlay",n.controls?'<button class="resume-button">Resume presentation</button>':null),$.statusElement=function(){var e=$.wrapper.querySelector(".aria-status");e||((e=document.createElement("div")).style.position="absolute",e.style.height="1px",e.style.width="1px",e.style.overflow="hidden",e.style.clip="rect( 1px, 1px, 1px, 1px )",e.classList.add("aria-status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true"),$.wrapper.appendChild(e));return e}(),$.wrapper.setAttribute("role","application")}(),n.postMessage&&window.addEventListener("message",(function(e){var t=e.data;if("string"==typeof t&&"{"===t.charAt(0)&&"}"===t.charAt(t.length-1)&&(t=JSON.parse(t)).method&&"function"==typeof g[t.method])if(!1===i.test(t.method)){var n=g[t.method].apply(g,t.args);ye("callback",{method:t.method,result:n})}else console.warn('reveal.js: "'+t.method+'" is is blacklisted from the postMessage API')}),!1),setInterval((function(){0===$.wrapper.scrollTop&&0===$.wrapper.scrollLeft||($.wrapper.scrollTop=0,$.wrapper.scrollLeft=0)}),1e3),Ye().forEach((function(e){o(e,"section").forEach((function(e,t){t>0&&(e.classList.remove("present"),e.classList.remove("past"),e.classList.add("future"),e.setAttribute("aria-hidden","true"))}))})),ue(),O.readURL(),C.update(!0),setTimeout((function(){$.slides.classList.remove("no-transition"),$.wrapper.classList.add("ready"),me({type:"ready",data:{indexh:a,indexv:c,currentSlide:h}})}),1),K.isPrintingPDF()&&(ve(),"complete"===document.readyState?K.setupPDF():window.addEventListener("load",K.setupPDF))}function ce(e){$.statusElement.textContent=e}function de(e){var t="";if(3===e.nodeType)t+=e.textContent;else if(1===e.nodeType){var n=e.getAttribute("aria-hidden"),i="none"===window.getComputedStyle(e).display;"true"===n||i||Array.from(e.childNodes).forEach((function(e){t+=de(e)}))}return""===(t=t.trim())?"":t+" "}function ue(e){var t=ne({},n);if("object"===ee(e)&&r(n,e),!1!==g.isReady()){var i=$.wrapper.querySelectorAll(".slides section").length;$.wrapper.classList.remove(t.transition),$.wrapper.classList.add(n.transition),$.wrapper.setAttribute("data-transition-speed",n.transitionSpeed),$.wrapper.setAttribute("data-background-transition",n.backgroundTransition),n.shuffle&&Ue(),n.rtl?$.wrapper.classList.add("rtl"):$.wrapper.classList.remove("rtl"),n.center?$.wrapper.classList.add("center"):$.wrapper.classList.remove("center"),!1===n.pause&&Oe(),n.mouseWheel?(document.addEventListener("DOMMouseScroll",ut,!1),document.addEventListener("mousewheel",ut,!1)):(document.removeEventListener("DOMMouseScroll",ut,!1),document.removeEventListener("mousewheel",ut,!1)),n.hideInactiveCursor?(document.addEventListener("mousemove",dt,!1),document.addEventListener("mousedown",dt,!1)):(Te(),document.removeEventListener("mousemove",dt,!1),document.removeEventListener("mousedown",dt,!1)),n.previewLinks?(be(),we("[data-preview-link=false]")):(we(),be("[data-preview-link]:not([data-preview-link=false])")),L.reset(),v&&(v.destroy(),v=null),i>1&&n.autoSlide&&n.autoSlideStoppable&&((v=new Z($.wrapper,(function(){return Math.min(Math.max((Date.now()-oe)/ae,0),1)}))).on("click",pt),se=!1),"default"!==n.navigationMode?$.wrapper.setAttribute("data-navigation-mode",n.navigationMode):$.wrapper.removeAttribute("data-navigation-mode"),F.configure(n,t),H.configure(n,t),j.configure(n,t),I.configure(n,t),N.configure(n,t),R.configure(n,t),ze()}}function he(){!0,window.addEventListener("hashchange",ht,!1),window.addEventListener("resize",vt,!1),n.touch&&W.bind(),n.keyboard&&I.bind(),H.bind(),j.bind(),$.pauseOverlay.addEventListener("click",Oe,!1),n.focusBodyOnPageVisibilityChange&&document.addEventListener("visibilitychange",ft,!1)}function ve(){!1,W.unbind(),I.unbind(),H.unbind(),j.unbind(),window.removeEventListener("hashchange",ht,!1),window.removeEventListener("resize",vt,!1),$.pauseOverlay.removeEventListener("click",Oe,!1)}function fe(t,n,i){e.addEventListener(t,n,i)}function ge(t,n,i){e.removeEventListener(t,n,i)}function pe(e){"string"==typeof e.layout&&(Y.layout=e.layout),"string"==typeof e.overview&&(Y.overview=e.overview),Y.layout?l($.slides,Y.layout+" "+Y.overview):l($.slides,Y.overview)}function me(e){var t=e.target,n=void 0===t?$.wrapper:t,i=e.type,a=e.data,o=e.bubbles,s=void 0===o||o,l=document.createEvent("HTMLEvents",1,2);l.initEvent(i,s,!0),r(l,a),n.dispatchEvent(l),n===$.wrapper&&ye(i)}function ye(e,t){if(n.postMessageEvents&&window.parent!==window.self){var i={namespace:"reveal",eventName:e,state:Ge()};r(i,t),window.parent.postMessage(JSON.stringify(i),"*")}}function be(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from($.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",gt,!1)}))}function we(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from($.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",gt,!1)}))}function ke(){if(n.help){Ae(),$.overlay=document.createElement("div"),$.overlay.classList.add("overlay"),$.overlay.classList.add("overlay-help"),$.wrapper.appendChild($.overlay);var e='<p class="title">Keyboard Shortcuts</p><br/>';for(var t in e+="<table><th>KEY</th><th>ACTION</th>",I.shortcuts)e+="<tr><td>".concat(t,"</td><td>").concat(I.shortcuts[t],"</td></tr>");for(var i in I.registeredKeyBindings)I.registeredKeyBindings[i].key&&I.registeredKeyBindings[i].description&&(e+="<tr><td>".concat(I.registeredKeyBindings[i].key,"</td><td>").concat(I.registeredKeyBindings[i].description,"</td></tr>"));e+="</table>",$.overlay.innerHTML='\n\t\t\t\t<header>\n\t\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class="viewport">\n\t\t\t\t\t<div class="viewport-inner">'.concat(e,"</div>\n\t\t\t\t</div>\n\t\t\t"),$.overlay.querySelector(".close").addEventListener("click",(function(e){Ae(),e.preventDefault()}),!1)}}function Ae(){return!!$.overlay&&($.overlay.parentNode.removeChild($.overlay),$.overlay=null,!0)}function Ee(){if($.wrapper&&!K.isPrintingPDF()){if(!n.disableLayout){f&&document.documentElement.style.setProperty("--vh",.01*window.innerHeight+"px");var e=Se(),t=k;Re(n.width,n.height),$.slides.style.width=e.width+"px",$.slides.style.height=e.height+"px",k=Math.min(e.presentationWidth/e.width,e.presentationHeight/e.height),k=Math.max(k,n.minScale),1===(k=Math.min(k,n.maxScale))?($.slides.style.zoom="",$.slides.style.left="",$.slides.style.top="",$.slides.style.bottom="",$.slides.style.right="",pe({layout:""})):k>1&&m&&window.devicePixelRatio<2?($.slides.style.zoom=k,$.slides.style.left="",$.slides.style.top="",$.slides.style.bottom="",$.slides.style.right="",pe({layout:""})):($.slides.style.zoom="",$.slides.style.left="50%",$.slides.style.top="50%",$.slides.style.bottom="auto",$.slides.style.right="auto",pe({layout:"translate(-50%, -50%) scale("+k+")"}));for(var i=Array.from($.wrapper.querySelectorAll(".slides section")),a=0,r=i.length;a<r;a++){var o=i[a];"none"!==o.style.display&&(n.center||o.classList.contains("center")?o.classList.contains("stack")?o.style.top=0:o.style.top=Math.max((e.height-o.scrollHeight)/2,0)+"px":o.style.top="")}t!==k&&me({type:"resize",data:{oldScale:t,scale:k,size:e}})}j.update(),C.updateParallax(),T.isActive()&&T.update()}}function Re(e,t){o($.slides,"section > .stretch").forEach((function(n){var i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(e){var n,i=e.style.height;return e.style.height="0px",e.parentNode.style.height="auto",n=t-e.parentNode.offsetHeight,e.style.height=i+"px",e.parentNode.style.removeProperty("height"),n}return t}(n,t);if(/(img|video)/gi.test(n.nodeName)){var a=n.naturalWidth||n.videoWidth,r=n.naturalHeight||n.videoHeight,o=Math.min(e/a,i/r);n.style.width=a*o+"px",n.style.height=r*o+"px"}else n.style.width=e+"px",n.style.height=i+"px"}))}function Se(e,t){var i={width:n.width,height:n.height,presentationWidth:e||$.wrapper.offsetWidth,presentationHeight:t||$.wrapper.offsetHeight};return i.presentationWidth-=i.presentationWidth*n.margin,i.presentationHeight-=i.presentationHeight*n.margin,"string"==typeof i.width&&/%$/.test(i.width)&&(i.width=parseInt(i.width,10)/100*i.presentationWidth),"string"==typeof i.height&&/%$/.test(i.height)&&(i.height=parseInt(i.height,10)/100*i.presentationHeight),i}function Le(e,t){"object"===ee(e)&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function xe(e){if("object"===ee(e)&&"function"==typeof e.setAttribute&&e.classList.contains("stack")){var t=e.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(e.getAttribute(t)||0,10)}return 0}function Ce(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h;return e&&e.parentNode&&!!e.parentNode.nodeName.match(/section/i)}function Pe(){return!(!h||!Ce(h))&&!h.nextElementSibling}function Ne(){return 0===a&&0===c}function Me(){return!!h&&(!h.nextElementSibling&&(!Ce(h)||!h.parentNode.nextElementSibling))}function Te(){te&&(te=!1,$.wrapper.style.cursor="")}function Ie(){!1===te&&(te=!0,$.wrapper.style.cursor="none")}function De(){if(n.pause){var e=$.wrapper.classList.contains("paused");tt(),$.wrapper.classList.add("paused"),!1===e&&me({type:"paused"})}}function Oe(){var e=$.wrapper.classList.contains("paused");$.wrapper.classList.remove("paused"),et(),e&&me({type:"resumed"})}function Be(e){"boolean"==typeof e?e?De():Oe():He()?Oe():De()}function He(){return $.wrapper.classList.contains("paused")}function je(e,t,i,r){d=h;var s=$.wrapper.querySelectorAll(".slides>section");if(0!==s.length){void 0!==t||T.isActive()||(t=xe(s[e])),d&&d.parentNode&&d.parentNode.classList.contains("stack")&&Le(d.parentNode,c);var l=b.concat();b.length=0;var u=a||0,v=c||0;a=qe(".slides>section",void 0===e?a:e),c=qe(".slides>section.present>section",void 0===t?c:t);var f=a!==u||c!==v;f||(d=null);var g=s[a],p=g.querySelectorAll("section");h=p[c]||g;var m=!1;f&&d&&h&&!T.isActive()&&d.hasAttribute("data-auto-animate")&&h.hasAttribute("data-auto-animate")&&(m=!0,$.slides.classList.add("disable-slide-transitions")),Ke(),Ee(),T.isActive()&&T.update(),void 0!==i&&N.goto(i),d&&d!==h&&(d.classList.remove("present"),d.setAttribute("aria-hidden","true"),Ne()&&setTimeout((function(){o($.wrapper,".slides>section.stack").forEach((function(e){Le(e,0)}))}),0));e:for(var y=0,w=b.length;y<w;y++){for(var k=0;k<l.length;k++)if(l[k]===b[y]){l.splice(k,1);continue e}document.documentElement.classList.add(b[y]),me({type:b[y]})}for(;l.length;)document.documentElement.classList.remove(l.pop());f&&me({type:"slidechanged",data:{indexh:a,indexv:c,previousSlide:d,currentSlide:h,origin:r}}),!f&&d||(E.stopEmbeddedContent(d),E.startEmbeddedContent(h)),ce(de(h)),j.update(),H.update(),F.update(),C.update(),C.updateParallax(),R.update(),N.update(),O.writeURL(),et(),m&&(setTimeout((function(){$.slides.classList.remove("disable-slide-transitions")}),0),n.autoAnimate&&L.run(d,h))}}function ze(){ve(),he(),Ee(),ae=n.autoSlide,et(),C.create(),O.writeURL(),N.sortAll(),H.update(),j.update(),Ke(),F.update(),F.updateVisibility(),C.update(!0),R.update(),E.formatEmbeddedContent(),!1===n.autoPlayMedia?E.stopEmbeddedContent(h,{unloadIframes:!1}):E.startEmbeddedContent(h),T.isActive()&&T.layout()}function Ue(){Ye().forEach((function(e,t,n){$.slides.insertBefore(e,n[Math.floor(Math.random()*n.length)])}))}function qe(e,t){var i=o($.wrapper,e),a=i.length,r=K.isPrintingPDF();if(a){n.loop&&(t%=a)<0&&(t=a+t),t=Math.max(Math.min(t,a-1),0);for(var s=0;s<a;s++){var l=i[s],c=n.rtl&&!Ce(l);l.classList.remove("past","present","future"),l.setAttribute("hidden",""),l.setAttribute("aria-hidden","true"),l.querySelector("section")&&l.classList.add("stack"),r?l.classList.add("present"):s<t?(l.classList.add(c?"future":"past"),n.fragments&&o(l,".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))):s>t&&(l.classList.add(c?"past":"future"),n.fragments&&o(l,".fragment.visible").forEach((function(e){e.classList.remove("visible","current-fragment")})))}var d=i[t],u=d.classList.contains("present");d.classList.add("present"),d.removeAttribute("hidden"),d.removeAttribute("aria-hidden"),u||me({target:d,type:"visible",bubbles:!1});var h=d.getAttribute("data-state");h&&(b=b.concat(h.split(" ")))}else t=0;return t}function Ke(){var e,t=Ye(),i=t.length;if(i&&void 0!==a){var r=T.isActive()?10:n.viewDistance;f&&(r=T.isActive()?6:n.mobileViewDistance),K.isPrintingPDF()&&(r=Number.MAX_VALUE);for(var s=0;s<i;s++){var l=t[s],d=o(l,"section"),u=d.length;if(e=Math.abs((a||0)-s)||0,n.loop&&(e=Math.abs(((a||0)-s)%(i-r))||0),e<r?E.load(l):E.unload(l),u)for(var h=xe(l),v=0;v<u;v++){var g=d[v];e+(s===(a||0)?Math.abs((c||0)-v):Math.abs(v-h))<r?E.load(g):E.unload(g)}}Je()?$.wrapper.classList.add("has-vertical-slides"):$.wrapper.classList.remove("has-vertical-slides"),$e()?$.wrapper.classList.add("has-horizontal-slides"):$.wrapper.classList.remove("has-horizontal-slides")}}function We(){var e=$.wrapper.querySelectorAll(".slides>section"),t=$.wrapper.querySelectorAll(".slides>section.present>section"),i={left:a>0,right:a<e.length-1,up:c>0,down:c<t.length-1};if(n.loop&&(e.length>1&&(i.left=!0,i.right=!0),t.length>1&&(i.up=!0,i.down=!0)),e.length>1&&"linear"===n.navigationMode&&(i.right=i.right||i.down,i.left=i.left||i.up),n.rtl){var r=i.left;i.left=i.right,i.right=r}return i}function Ve(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,t=Ye(),n=0;e:for(var i=0;i<t.length;i++){for(var a=t[i],r=a.querySelectorAll("section"),o=0;o<r.length;o++){if(r[o]===e)break e;"uncounted"!==r[o].dataset.visibility&&n++}if(a===e)break;!1===a.classList.contains("stack")&&"uncounted"!==!a.dataset.visibility&&n++}return n}function Fe(e){var t,n=a,i=c;if(e){var r=Ce(e),s=r?e.parentNode:e,l=Ye();n=Math.max(l.indexOf(s),0),i=void 0,r&&(i=Math.max(o(e.parentNode,"section").indexOf(e),0))}if(!e&&h&&h.querySelectorAll(".fragment").length>0){var d=h.querySelector(".current-fragment");t=d&&d.hasAttribute("data-fragment-index")?parseInt(d.getAttribute("data-fragment-index"),10):h.querySelectorAll(".fragment.visible").length-1}return{h:n,v:i,f:t}}function Xe(){return o($.wrapper,'.slides section:not(.stack):not([data-visibility="uncounted"])')}function Ye(){return o($.wrapper,".slides>section")}function _e(){return o($.wrapper,".slides>section>section")}function $e(){return Ye().length>1}function Je(){return _e().length>1}function Qe(){return Xe().length}function Ze(e,t){var n=Ye()[e],i=n&&n.querySelectorAll("section");return i&&i.length&&"number"==typeof t?i?i[t]:void 0:n}function Ge(){var e=Fe();return{indexh:e.h,indexv:e.v,indexf:e.f,paused:He(),overview:T.isActive()}}function et(){if(tt(),h&&!1!==n.autoSlide){var e=h.querySelector(".current-fragment");e||(e=h.querySelector(".fragment"));var t=e?e.getAttribute("data-autoslide"):null,i=h.parentNode?h.parentNode.getAttribute("data-autoslide"):null,a=h.getAttribute("data-autoslide");ae=t?parseInt(t,10):a?parseInt(a,10):i?parseInt(i,10):n.autoSlide,0===h.querySelectorAll(".fragment").length&&o(h,"video, audio").forEach((function(e){e.hasAttribute("data-autoplay")&&ae&&1e3*e.duration/e.playbackRate>ae&&(ae=1e3*e.duration/e.playbackRate+1e3)})),!ae||se||He()||T.isActive()||Me()&&!N.availableRoutes().next&&!0!==n.loop||(re=setTimeout((function(){"function"==typeof n.autoSlideMethod?n.autoSlideMethod():ct(),et()}),ae),oe=Date.now()),v&&v.setPlaying(-1!==re)}}function tt(){clearTimeout(re),re=-1}function nt(){ae&&!se&&(se=!0,me({type:"autoslidepaused"}),clearTimeout(re),v&&v.setPlaying(!1))}function it(){ae&&se&&(se=!1,me({type:"autoslideresumed"}),et())}function at(){y.hasNavigatedHorizontally=!0,n.rtl?(T.isActive()||!1===N.next())&&We().left&&je(a+1,"grid"===n.navigationMode?c:void 0):(T.isActive()||!1===N.prev())&&We().left&&je(a-1,"grid"===n.navigationMode?c:void 0)}function rt(){y.hasNavigatedHorizontally=!0,n.rtl?(T.isActive()||!1===N.prev())&&We().right&&je(a-1,"grid"===n.navigationMode?c:void 0):(T.isActive()||!1===N.next())&&We().right&&je(a+1,"grid"===n.navigationMode?c:void 0)}function ot(){(T.isActive()||!1===N.prev())&&We().up&&je(a,c-1)}function st(){y.hasNavigatedVertically=!0,(T.isActive()||!1===N.next())&&We().down&&je(a,c+1)}function lt(){var e;if(!1===N.prev())if(We().up)ot();else if(e=n.rtl?o($.wrapper,".slides>section.future").pop():o($.wrapper,".slides>section.past").pop()){var t=e.querySelectorAll("section").length-1||void 0;je(a-1,t)}}function ct(){if(y.hasNavigatedHorizontally=!0,y.hasNavigatedVertically=!0,!1===N.next()){var e=We();e.down&&e.right&&n.loop&&Pe()&&(e.down=!1),e.down?st():n.rtl?at():rt()}}function dt(e){Te(),clearTimeout(ie),ie=setTimeout(Ie,n.hideCursorTime)}function ut(e){if(Date.now()-Q>600){Q=Date.now();var t=e.detail||-e.wheelDelta;t>0?ct():t<0&&lt()}}function ht(e){O.readURL()}function vt(e){Ee()}function ft(e){!1===document.hidden&&document.activeElement!==document.body&&("function"==typeof document.activeElement.blur&&document.activeElement.blur(),document.body.focus())}function gt(e){if(e.currentTarget&&e.currentTarget.hasAttribute("href")){var t=e.currentTarget.getAttribute("href");t&&(!function(e){Ae(),$.overlay=document.createElement("div"),$.overlay.classList.add("overlay"),$.overlay.classList.add("overlay-preview"),$.wrapper.appendChild($.overlay),$.overlay.innerHTML='<header>\n\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t<a class="external" href="'.concat(e,'" target="_blank"><span class="icon"></span></a>\n\t\t\t</header>\n\t\t\t<div class="spinner"></div>\n\t\t\t<div class="viewport">\n\t\t\t\t<iframe src="').concat(e,'"></iframe>\n\t\t\t\t<small class="viewport-inner">\n\t\t\t\t\t<span class="x-frame-error">Unable to load iframe. This is likely due to the site\'s policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>'),$.overlay.querySelector("iframe").addEventListener("load",(function(e){$.overlay.classList.add("loaded")}),!1),$.overlay.querySelector(".close").addEventListener("click",(function(e){Ae(),e.preventDefault()}),!1),$.overlay.querySelector(".external").addEventListener("click",(function(e){Ae()}),!1)}(t),e.preventDefault())}}function pt(e){Me()&&!1===n.loop?(je(0,0),it()):se?it():nt()}return r(g,{VERSION:"4.0.0-dev",initialize:function(){if(e)return $.wrapper=e,$.slides=e.querySelector(".slides"),!0===(n=ne({},G,{},t,{},u())).embedded?e.classList.add("reveal-viewport"):(document.body.classList.add("reveal-viewport"),document.documentElement.classList.add("reveal-full-page")),window.addEventListener("load",Ee,!1),U.load(n.dependencies).then(le),new Promise((function(e){return g.on("ready",e)}));console.warn("reveal.js can not initialize without a valid .reveal element.")},configure:ue,sync:ze,syncSlide:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h;C.sync(e),N.sync(e),E.load(e),C.update(),F.update()},syncFragments:N.sync.bind(N),slide:je,left:at,right:rt,up:ot,down:st,prev:lt,next:ct,navigateLeft:at,navigateRight:rt,navigateUp:ot,navigateDown:st,navigatePrev:lt,navigateNext:ct,navigateFragment:N.goto.bind(N),prevFragment:N.prev.bind(N),nextFragment:N.next.bind(N),on:fe,off:ge,addEventListener:fe,removeEventListener:ge,layout:Ee,shuffle:Ue,availableRoutes:We,availableFragments:N.availableRoutes.bind(N),toggleHelp:function(e){"boolean"==typeof e?e?ke():Ae():$.overlay?Ae():ke()},toggleOverview:T.toggle.bind(T),togglePause:Be,toggleAutoSlide:function(e){"boolean"==typeof e?e?it():nt():se?it():nt()},isFirstSlide:Ne,isLastSlide:Me,isLastVerticalSlide:Pe,isVerticalSlide:Ce,isPaused:He,isAutoSliding:function(){return!(!ae||se)},isSpeakerNotes:F.isSpeakerNotesWindow.bind(F),isOverview:T.isActive.bind(T),isPrintingPDF:K.isPrintingPDF.bind(K),loadSlide:E.load.bind(E),unloadSlide:E.unload.bind(E),addEventListeners:he,removeEventListeners:ve,dispatchEvent:me,getState:Ge,setState:function(e){if("object"===ee(e)){je(s(e.indexh),s(e.indexv),s(e.indexf));var t=s(e.paused),n=s(e.overview);"boolean"==typeof t&&t!==He()&&Be(t),"boolean"==typeof n&&n!==T.isActive()&&T.toggle(n)}},getSlidePastCount:Ve,getProgress:function(){var e=Qe(),t=Ve();if(h){var n=h.querySelectorAll(".fragment");if(n.length>0){t+=h.querySelectorAll(".fragment.visible").length/n.length*.9}}return Math.min(t/(e-1),1)},getIndices:Fe,getSlides:Xe,getSlidesAttributes:function(){return Xe().map((function(e){for(var t={},n=0;n<e.attributes.length;n++){var i=e.attributes[n];t[i.name]=i.value}return t}))},getTotalSlides:Qe,getSlide:Ze,getSlideBackground:function(e,t){var n="number"==typeof e?Ze(e,t):e;if(n)return n.slideBackgroundElement},getSlideNotes:F.getSlideNotes.bind(F),getHorizontalSlides:Ye,getVerticalSlides:_e,hasHorizontalSlides:$e,hasVerticalSlides:Je,hasNavigatedHorizontally:function(){return y.hasNavigatedHorizontally},hasNavigatedVertically:function(){return y.hasNavigatedVertically},addKeyBinding:I.addKeyBinding.bind(I),removeKeyBinding:I.removeKeyBinding.bind(I),triggerKey:I.triggerKey.bind(I),registerKeyboardShortcut:I.registerKeyboardShortcut.bind(I),registerPlugin:U.registerPlugin.bind(U),hasPlugin:U.hasPlugin.bind(U),getPlugin:U.getPlugin.bind(U),getPlugins:U.getRegisteredPlugins.bind(U),getComputedSlideSize:Se,getPreviousSlide:function(){return d},getCurrentSlide:function(){return h},getScale:function(){return k},getConfig:function(){return n},getQueryHash:u,getRevealElement:function(){return e},getSlidesElement:function(){return $.slides},getBackgroundsElement:function(){return C.element},isReady:function(){return p},announceStatus:ce,getStatusText:de,print:K,progress:j,controls:H,location:O,overview:T,fragments:N,slideContent:E,slideNumber:R,onUserInput:function(e){n.autoSlideStoppable&&nt()},closeOverlay:Ae,updateSlidesVisibility:Ke,layoutSlideContents:Re,transformSlides:pe,cueAutoSlide:et,cancelAutoSlide:tt})};window.Reveal=ae;var re=[];window.Reveal.initialize=function(e){return window.Reveal=new ae(document.querySelector(".reveal"),e),re.map((function(e){return e(window.Reveal)})),window.Reveal.initialize()},["on","off","addEventListener","removeEventListener"].forEach((function(e){window.Reveal[e]=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];re.push((function(t){var i;return(i=t[e]).call.apply(i,[null].concat(n))}))}}))}]); \ No newline at end of file
+!function(e){var t={};function n(i){if(t[i])return t[i].exports;var a=t[i]={i:i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(i,a,function(t){return e[t]}.bind(null,a));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";n.r(t);var i=/registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/,a=/fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/,r=function(e,t){for(var n in t)e[n]=t[n];return e},o=function(e,t){return Array.from(e.querySelectorAll(t))},s=function(e){if("string"==typeof e){if("null"===e)return null;if("true"===e)return!0;if("false"===e)return!1;if(e.match(/^-?[\d\.]+$/))return parseFloat(e)}return e},l=function(e,t){e.style.transform=t},c=function(e,t){for(var n=e.parentNode;n;){var i=n.matches||n.matchesSelector||n.msMatchesSelector;if(i&&i.call(n,t))return n;n=n.parentNode}return null},u=function(e){var t=document.createElement("style");return t.type="text/css",e&&e.length>0&&(t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))),document.head.appendChild(t),t},d=function(){var e={};for(var t in location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi,(function(t){e[t.split("=").shift()]=t.split("=").pop()})),e){var n=e[t];e[t]=s(unescape(n))}return void 0!==e.dependencies&&delete e.dependencies,e},h=navigator.userAgent,v=document.createElement("div"),f=/(iphone|ipod|ipad|android)/gi.test(h)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,g=/chrome/i.test(h)&&!/edge/i.test(h),p=/android/gi.test(h),m="zoom"in v.style&&!f&&(g||/Version\/[\d\.]+.*Safari/.test(h)),y="function"==typeof window.history.replaceState&&!/PhantomJS/.test(h);function b(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var w=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.startEmbeddedIframe=this.startEmbeddedIframe.bind(this)}var t,n,i;return t=e,(n=[{key:"shouldPreload",value:function(e){var t=this.Reveal.getConfig().preloadIframes;return"boolean"!=typeof t&&(t=e.hasAttribute("data-preload")),t}},{key:"load",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.style.display=this.Reveal.getConfig().display,o(e,"img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((function(e){("IFRAME"!==e.tagName||t.shouldPreload(e))&&(e.setAttribute("src",e.getAttribute("data-src")),e.setAttribute("data-lazy-loaded",""),e.removeAttribute("data-src"))})),o(e,"video, audio").forEach((function(e){var t=0;o(e,"source[data-src]").forEach((function(e){e.setAttribute("src",e.getAttribute("data-src")),e.removeAttribute("data-src"),e.setAttribute("data-lazy-loaded",""),t+=1})),t>0&&e.load()}));var i=e.slideBackgroundElement;if(i){i.style.display="block";var a=e.slideBackgroundContentElement,r=e.getAttribute("data-background-iframe");if(!1===i.hasAttribute("data-loaded")){i.setAttribute("data-loaded","true");var s=e.getAttribute("data-background-image"),l=e.getAttribute("data-background-video"),c=e.hasAttribute("data-background-video-loop"),u=e.hasAttribute("data-background-video-muted");if(s)a.style.backgroundImage="url("+encodeURI(s)+")";else if(l&&!this.Reveal.isSpeakerNotes()){var d=document.createElement("video");c&&d.setAttribute("loop",""),u&&(d.muted=!0),f&&(d.muted=!0,d.autoplay=!0,d.setAttribute("playsinline","")),l.split(",").forEach((function(e){d.innerHTML+='<source src="'+e+'">'})),a.appendChild(d)}else if(r&&!0!==n.excludeIframes){var h=document.createElement("iframe");h.setAttribute("allowfullscreen",""),h.setAttribute("mozallowfullscreen",""),h.setAttribute("webkitallowfullscreen",""),h.setAttribute("allow","autoplay"),h.setAttribute("data-src",r),h.style.width="100%",h.style.height="100%",h.style.maxHeight="100%",h.style.maxWidth="100%",a.appendChild(h)}}var v=a.querySelector("iframe[data-src]");v&&this.shouldPreload(i)&&!/autoplay=(1|true|yes)/gi.test(r)&&v.getAttribute("src")!==r&&v.setAttribute("src",r)}}},{key:"unload",value:function(e){e.style.display="none";var t=this.Reveal.getSlideBackground(e);t&&(t.style.display="none",o(t,"iframe[src]").forEach((function(e){e.removeAttribute("src")}))),o(e,"video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")})),o(e,"video[data-lazy-loaded] source[src], audio source[src]").forEach((function(e){e.setAttribute("data-src",e.getAttribute("src")),e.removeAttribute("src")}))}},{key:"formatEmbeddedContent",value:function(){var e=this,t=function(t,n,i){o(e.Reveal.getSlidesElement(),"iframe["+t+'*="'+n+'"]').forEach((function(e){var n=e.getAttribute(t);n&&-1===n.indexOf(i)&&e.setAttribute(t,n+(/\?/.test(n)?"&":"?")+i)}))};t("src","youtube.com/embed/","enablejsapi=1"),t("data-src","youtube.com/embed/","enablejsapi=1"),t("src","player.vimeo.com/","api=1"),t("data-src","player.vimeo.com/","api=1")}},{key:"startEmbeddedContent",value:function(e){var t=this;e&&!this.Reveal.isSpeakerNotes()&&(o(e,'img[src$=".gif"]').forEach((function(e){e.setAttribute("src",e.getAttribute("src"))})),o(e,"video, audio").forEach((function(e){if(!c(e,".fragment")||c(e,".fragment.visible")){var n=t.Reveal.getConfig().autoPlayMedia;if("boolean"!=typeof n&&(n=e.hasAttribute("data-autoplay")||!!c(e,".slide-background")),n&&"function"==typeof e.play)if(e.readyState>1)t.startEmbeddedMedia({target:e});else if(f){var i=e.play();i&&"function"==typeof i.catch&&!1===e.controls&&i.catch((function(){e.controls=!0,e.addEventListener("play",(function(){e.controls=!1}))}))}else e.removeEventListener("loadeddata",t.startEmbeddedMedia),e.addEventListener("loadeddata",t.startEmbeddedMedia)}})),o(e,"iframe[src]").forEach((function(e){c(e,".fragment")&&!c(e,".fragment.visible")||t.startEmbeddedIframe({target:e})})),o(e,"iframe[data-src]").forEach((function(e){c(e,".fragment")&&!c(e,".fragment.visible")||e.getAttribute("src")!==e.getAttribute("data-src")&&(e.removeEventListener("load",t.startEmbeddedIframe),e.addEventListener("load",t.startEmbeddedIframe),e.setAttribute("src",e.getAttribute("data-src")))})))}},{key:"startEmbeddedMedia",value:function(e){var t=!!c(e.target,"html"),n=!!c(e.target,".present");t&&n&&(e.target.currentTime=0,e.target.play()),e.target.removeEventListener("loadeddata",this.startEmbeddedMedia)}},{key:"startEmbeddedIframe",value:function(e){var t=e.target;if(t&&t.contentWindow){var n=!!c(e.target,"html"),i=!!c(e.target,".present");if(n&&i){var a=this.Reveal.getConfig().autoPlayMedia;"boolean"!=typeof a&&(a=t.hasAttribute("data-autoplay")||!!c(t,".slide-background")),/youtube\.com\/embed\//.test(t.getAttribute("src"))&&a?t.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"):/player\.vimeo\.com\//.test(t.getAttribute("src"))&&a?t.contentWindow.postMessage('{"method":"play"}',"*"):t.contentWindow.postMessage("slide:start","*")}}}},{key:"stopEmbeddedContent",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n=r({unloadIframes:!0},n),e&&e.parentNode&&(o(e,"video, audio").forEach((function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.pause||(e.setAttribute("data-paused-by-reveal",""),e.pause())})),o(e,"iframe").forEach((function(e){e.contentWindow&&e.contentWindow.postMessage("slide:stop","*"),e.removeEventListener("load",t.startEmbeddedIframe)})),o(e,'iframe[src*="youtube.com/embed/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")})),o(e,'iframe[src*="player.vimeo.com/"]').forEach((function(e){!e.hasAttribute("data-ignore")&&e.contentWindow&&"function"==typeof e.contentWindow.postMessage&&e.contentWindow.postMessage('{"method":"pause"}',"*")})),!0===n.unloadIframes&&o(e,"iframe[data-src]").forEach((function(e){e.setAttribute("src","about:blank"),e.removeAttribute("src")})))}}])&&b(t.prototype,n),i&&b(t,i),e}();function k(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var A=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="slide-number",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){var n="none";e.slideNumber&&!this.Reveal.isPrintingPDF()&&("all"===e.showSlideNumber||"speaker"===e.showSlideNumber&&this.Reveal.isSpeakerNotes())&&(n="block"),this.element.style.display=n}},{key:"update",value:function(){this.Reveal.getConfig().slideNumber&&this.element&&(this.element.innerHTML=this.getSlideNumber())}},{key:"getSlideNumber",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide(),n=this.Reveal.getConfig(),i="h.v";if("function"==typeof n.slideNumber)e=n.slideNumber(t);else switch("string"==typeof n.slideNumber&&(i=n.slideNumber),/c/.test(i)||1!==this.Reveal.getHorizontalSlides().length||(i="c"),e=[],i){case"c":e.push(this.Reveal.getSlidePastCount(t)+1);break;case"c/t":e.push(this.Reveal.getSlidePastCount(t)+1,"/",this.Reveal.getTotalSlides());break;default:var a=this.Reveal.getIndices(t);e.push(a.h+1);var r="h/v"===i?"/":".";this.Reveal.isVerticalSlide(t)&&e.push(r,a.v+1)}var o="#"+this.Reveal.location.getHash(t);return this.formatNumber(e[0],e[1],e[2],o)}},{key:"formatNumber",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"#"+this.Reveal.location.getHash();return"number"!=typeof n||isNaN(n)?'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,"</span>\n\t\t\t\t\t</a>"):'<a href="'.concat(i,'">\n\t\t\t\t\t<span class="slide-number-a">').concat(e,'</span>\n\t\t\t\t\t<span class="slide-number-delimiter">').concat(t,'</span>\n\t\t\t\t\t<span class="slide-number-b">').concat(n,"</span>\n\t\t\t\t\t</a>")}}])&&k(t.prototype,n),i&&k(t,i),e}(),E=function(e){var t=e.match(/^#([0-9a-f]{3})$/i);if(t&&t[1])return t=t[1],{r:17*parseInt(t.charAt(0),16),g:17*parseInt(t.charAt(1),16),b:17*parseInt(t.charAt(2),16)};var n=e.match(/^#([0-9a-f]{6})$/i);if(n&&n[1])return n=n[1],{r:parseInt(n.substr(0,2),16),g:parseInt(n.substr(2,2),16),b:parseInt(n.substr(4,2),16)};var i=e.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(i)return{r:parseInt(i[1],10),g:parseInt(i[2],10),b:parseInt(i[3],10)};var a=e.match(/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i);return a?{r:parseInt(a[1],10),g:parseInt(a[2],10),b:parseInt(a[3],10),a:parseFloat(a[4])}:null};function R(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var S=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="backgrounds",this.Reveal.getRevealElement().appendChild(this.element)}},{key:"create",value:function(){var e=this;this.Reveal.isPrintingPDF(),this.element.innerHTML="",this.element.classList.add("no-transition"),this.Reveal.getHorizontalSlides().forEach((function(t){var n=e.createBackground(t,e.element);o(t,"section").forEach((function(t){e.createBackground(t,n),n.classList.add("stack")}))})),this.Reveal.getConfig().parallaxBackgroundImage?(this.element.style.backgroundImage='url("'+this.Reveal.getConfig().parallaxBackgroundImage+'")',this.element.style.backgroundSize=this.Reveal.getConfig().parallaxBackgroundSize,this.element.style.backgroundRepeat=this.Reveal.getConfig().parallaxBackgroundRepeat,this.element.style.backgroundPosition=this.Reveal.getConfig().parallaxBackgroundPosition,setTimeout((function(){e.Reveal.getRevealElement().classList.add("has-parallax-background")}),1)):(this.element.style.backgroundImage="",this.Reveal.getRevealElement().classList.remove("has-parallax-background"))}},{key:"createBackground",value:function(e,t){var n=document.createElement("div");n.className="slide-background "+e.className.replace(/present|past|future/,"");var i=document.createElement("div");return i.className="slide-background-content",n.appendChild(i),t.appendChild(n),e.slideBackgroundElement=n,e.slideBackgroundContentElement=i,this.sync(e),n}},{key:"sync",value:function(e){var t=e.slideBackgroundElement,n=e.slideBackgroundContentElement;e.classList.remove("has-dark-background"),e.classList.remove("has-light-background"),t.removeAttribute("data-loaded"),t.removeAttribute("data-background-hash"),t.removeAttribute("data-background-size"),t.removeAttribute("data-background-transition"),t.style.backgroundColor="",n.style.backgroundSize="",n.style.backgroundRepeat="",n.style.backgroundPosition="",n.style.backgroundImage="",n.style.opacity="",n.innerHTML="";var i={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundVideo:e.getAttribute("data-background-video"),backgroundIframe:e.getAttribute("data-background-iframe"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition"),backgroundOpacity:e.getAttribute("data-background-opacity")};i.background&&(/^(http|file|\/\/)/gi.test(i.background)||/\.(svg|png|jpg|jpeg|gif|bmp)([?#\s]|$)/gi.test(i.background)?e.setAttribute("data-background-image",i.background):t.style.background=i.background),(i.background||i.backgroundColor||i.backgroundImage||i.backgroundVideo||i.backgroundIframe)&&t.setAttribute("data-background-hash",i.background+i.backgroundSize+i.backgroundImage+i.backgroundVideo+i.backgroundIframe+i.backgroundColor+i.backgroundRepeat+i.backgroundPosition+i.backgroundTransition+i.backgroundOpacity),i.backgroundSize&&t.setAttribute("data-background-size",i.backgroundSize),i.backgroundColor&&(t.style.backgroundColor=i.backgroundColor),i.backgroundTransition&&t.setAttribute("data-background-transition",i.backgroundTransition),e.hasAttribute("data-preload")&&t.setAttribute("data-preload",""),i.backgroundSize&&(n.style.backgroundSize=i.backgroundSize),i.backgroundRepeat&&(n.style.backgroundRepeat=i.backgroundRepeat),i.backgroundPosition&&(n.style.backgroundPosition=i.backgroundPosition),i.backgroundOpacity&&(n.style.opacity=i.backgroundOpacity);var a,r=i.backgroundColor;if(!r){var o=window.getComputedStyle(t);o&&o.backgroundColor&&(r=o.backgroundColor)}if(r){var s=E(r);s&&0!==s.a&&("string"==typeof(a=r)&&(a=E(a)),(a?(299*a.r+587*a.g+114*a.b)/1e3:null)<128?e.classList.add("has-dark-background"):e.classList.add("has-light-background"))}}},{key:"update",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=this.Reveal.getCurrentSlide(),i=this.Reveal.getIndices(),a=null,r=this.Reveal.getConfig().rtl?"future":"past",s=this.Reveal.getConfig().rtl?"past":"future";if(Array.from(this.element.childNodes).forEach((function(e,n){e.classList.remove("past","present","future"),n<i.h?e.classList.add(r):n>i.h?e.classList.add(s):(e.classList.add("present"),a=e),(t||n===i.h)&&o(e,".slide-background").forEach((function(e,t){e.classList.remove("past","present","future"),t<i.v?e.classList.add("past"):t>i.v?e.classList.add("future"):(e.classList.add("present"),n===i.h&&(a=e))}))})),this.previousBackground&&this.Reveal.slideContent.stopEmbeddedContent(this.previousBackground,{unloadIframes:!this.Reveal.slideContent.shouldPreload(this.previousBackground)}),a){this.Reveal.slideContent.startEmbeddedContent(a);var l=a.querySelector(".slide-background-content");if(l){var c=l.style.backgroundImage||"";/\.gif/i.test(c)&&(l.style.backgroundImage="",window.getComputedStyle(l).opacity,l.style.backgroundImage=c)}var u=this.previousBackground?this.previousBackground.getAttribute("data-background-hash"):null,d=a.getAttribute("data-background-hash");d&&d===u&&a!==this.previousBackground&&this.element.classList.add("no-transition"),this.previousBackground=a}n&&["has-light-background","has-dark-background"].forEach((function(t){n.classList.contains(t)?e.Reveal.getRevealElement().classList.add(t):e.Reveal.getRevealElement().classList.remove(t)}),this),setTimeout((function(){e.element.classList.remove("no-transition")}),1)}},{key:"updateParallax",value:function(){var e=this.Reveal.getIndices();if(this.Reveal.getConfig().parallaxBackgroundImage){var t,n,i=this.Reveal.getHorizontalSlides(),a=this.Reveal.getVerticalSlides(),r=this.element.style.backgroundSize.split(" ");1===r.length?t=n=parseInt(r[0],10):(t=parseInt(r[0],10),n=parseInt(r[1],10));var o,s=this.element.offsetWidth,l=i.length;o=("number"==typeof this.Reveal.getConfig().parallaxBackgroundHorizontal?this.Reveal.getConfig().parallaxBackgroundHorizontal:l>1?(t-s)/(l-1):0)*e.h*-1;var c,u,d=this.element.offsetHeight,h=a.length;c="number"==typeof this.Reveal.getConfig().parallaxBackgroundVertical?this.Reveal.getConfig().parallaxBackgroundVertical:(n-d)/(h-1),u=h>0?c*e.v:0,this.element.style.backgroundPosition=o+"px "+-u+"px"}}}])&&R(t.prototype,n),i&&R(t,i),e}();function L(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var x=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.autoAnimateCounter=0}var t,n,i;return t=e,(n=[{key:"run",value:function(e,t){var n=this;if(this.reset(),e.hasAttribute("data-auto-animate")&&t.hasAttribute("data-auto-animate")){this.autoAnimateStyleSheet=this.autoAnimateStyleSheet||u();var i=this.getAutoAnimateOptions(t);e.dataset.autoAnimate="pending",t.dataset.autoAnimate="pending";var a=this.Reveal.getSlides();i.slideDirection=a.indexOf(t)>a.indexOf(e)?"forward":"backward";var r=this.getAutoAnimatableElements(e,t).map((function(e){return n.autoAnimateElements(e.from,e.to,e.options||{},i,n.autoAnimateCounter++)}));if("false"!==t.dataset.autoAnimateUnmatched&&!0===this.Reveal.getConfig().autoAnimateUnmatched){var o=.8*i.duration,s=.2*i.duration;this.getUnmatchedAutoAnimateElements(t).forEach((function(e){var t=n.getAutoAnimateOptions(e,i),a="unmatched";t.duration===i.duration&&t.delay===i.delay||(a="unmatched-"+n.autoAnimateCounter++,r.push('[data-auto-animate="running"] [data-auto-animate-target="'.concat(a,'"] { transition: opacity ').concat(t.duration,"s ease ").concat(t.delay,"s; }"))),e.dataset.autoAnimateTarget=a}),this),r.push('[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity '.concat(o,"s ease ").concat(s,"s; }"))}this.autoAnimateStyleSheet.innerHTML=r.join(""),requestAnimationFrame((function(){n.autoAnimateStyleSheet&&(getComputedStyle(n.autoAnimateStyleSheet).fontWeight,t.dataset.autoAnimate="running")})),this.Reveal.dispatchEvent({type:"autoanimate",data:{fromSlide:e,toSlide:t,sheet:this.autoAnimateStyleSheet}})}}},{key:"reset",value:function(){o(this.Reveal.getRevealElement(),'[data-auto-animate]:not([data-auto-animate=""])').forEach((function(e){e.dataset.autoAnimate=""})),o(this.Reveal.getRevealElement(),"[data-auto-animate-target]").forEach((function(e){delete e.dataset.autoAnimateTarget})),this.autoAnimateStyleSheet&&this.autoAnimateStyleSheet.parentNode&&(this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet),this.autoAnimateStyleSheet=null)}},{key:"autoAnimateElements",value:function(e,t,n,i,r){e.dataset.autoAnimateTarget="",t.dataset.autoAnimateTarget=r;var o=this.getAutoAnimateOptions(t,i);void 0!==n.delay&&(o.delay=n.delay),void 0!==n.duration&&(o.duration=n.duration),void 0!==n.easing&&(o.easing=n.easing);var s=this.getAutoAnimatableProperties("from",e,n),l=this.getAutoAnimatableProperties("to",t,n);if(t.classList.contains("fragment")&&(delete l.styles.opacity,e.classList.contains("fragment")&&(e.className.match(a)||[""])[0]===(t.className.match(a)||[""])[0]&&"forward"===i.slideDirection&&t.classList.add("visible","disabled")),!1!==n.translate||!1!==n.scale){var c=this.Reveal.getScale(),u={x:(s.x-l.x)/c,y:(s.y-l.y)/c,scaleX:s.width/l.width,scaleY:s.height/l.height};u.x=Math.round(1e3*u.x)/1e3,u.y=Math.round(1e3*u.y)/1e3,u.scaleX=Math.round(1e3*u.scaleX)/1e3,u.scaleX=Math.round(1e3*u.scaleX)/1e3;var d=!1!==n.translate&&(0!==u.x||0!==u.y),h=!1!==n.scale&&(0!==u.scaleX||0!==u.scaleY);if(d||h){var v=[];d&&v.push("translate(".concat(u.x,"px, ").concat(u.y,"px)")),h&&v.push("scale(".concat(u.scaleX,", ").concat(u.scaleY,")")),s.styles.transform=v.join(" "),s.styles["transform-origin"]="top left",l.styles.transform="none"}}for(var f in l.styles){var g=l.styles[f],p=s.styles[f];g===p?delete l.styles[f]:(!0===g.explicitValue&&(l.styles[f]=g.value),!0===p.explicitValue&&(s.styles[f]=p.value))}var m="",y=Object.keys(l.styles);return y.length>0&&(s.styles.transition="none",l.styles.transition="all ".concat(o.duration,"s ").concat(o.easing," ").concat(o.delay,"s"),l.styles["transition-property"]=y.join(", "),l.styles["will-change"]=y.join(", "),m='[data-auto-animate-target="'+r+'"] {'+Object.keys(s.styles).map((function(e){return e+": "+s.styles[e]+" !important;"})).join("")+'}[data-auto-animate="running"] [data-auto-animate-target="'+r+'"] {'+Object.keys(l.styles).map((function(e){return e+": "+l.styles[e]+" !important;"})).join("")+"}"),m}},{key:"getAutoAnimateOptions",value:function(e,t){var n={easing:this.Reveal.getConfig().autoAnimateEasing,duration:this.Reveal.getConfig().autoAnimateDuration,delay:0};if(n=r(n,t),e.closest&&e.parentNode){var i=e.parentNode.closest("[data-auto-animate-target]");i&&(n=this.getAutoAnimateOptions(i,n))}return e.dataset.autoAnimateEasing&&(n.easing=e.dataset.autoAnimateEasing),e.dataset.autoAnimateDuration&&(n.duration=parseFloat(e.dataset.autoAnimateDuration)),e.dataset.autoAnimateDelay&&(n.delay=parseFloat(e.dataset.autoAnimateDelay)),n}},{key:"getAutoAnimatableProperties",value:function(e,t,n){var i,a={styles:[]};!1===n.translate&&!1===n.scale||(i="function"==typeof n.measure?n.measure(t):t.getBoundingClientRect(),a.x=i.x,a.y=i.y,a.width=i.width,a.height=i.height);var r=getComputedStyle(t);return(n.styles||this.Reveal.getConfig().autoAnimateStyles).forEach((function(t){var n;"string"==typeof t&&(t={property:t}),""!==(n=void 0!==t.from&&"from"===e?{value:t.from,explicitValue:!0}:void 0!==t.to&&"to"===e?{value:t.to,explicitValue:!0}:r[t.property])&&(a.styles[t.property]=n)})),a}},{key:"getAutoAnimatableElements",value:function(e,t){var n=("function"==typeof this.Reveal.getConfig().autoAnimateMatcher?this.Reveal.getConfig().autoAnimateMatcher:this.getAutoAnimatePairs).call(this,e,t),i=[];return n.filter((function(e,t){if(-1===i.indexOf(e.to))return i.push(e.to),!0}))}},{key:"getAutoAnimatePairs",value:function(e,t){var n=this,i=[],a="h1, h2, h3, h4, h5, h6, p, li";return this.findAutoAnimateMatches(i,e,t,"[data-id]",(function(e){return e.nodeName+":::"+e.getAttribute("data-id")})),this.findAutoAnimateMatches(i,e,t,a,(function(e){return e.nodeName+":::"+e.innerText})),this.findAutoAnimateMatches(i,e,t,"img, video, iframe",(function(e){return e.nodeName+":::"+(e.getAttribute("src")||e.getAttribute("data-src"))})),this.findAutoAnimateMatches(i,e,t,"pre",(function(e){return e.nodeName+":::"+e.innerText})),i.forEach((function(e){e.from.matches(a)?e.options={scale:!1}:e.from.matches("pre")&&(e.options={scale:!1,styles:["width","height"]},n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-code",(function(e){return e.textContent}),{scale:!1,styles:[],measure:n.getLocalBoundingBox.bind(n)}),n.findAutoAnimateMatches(i,e.from,e.to,".hljs .hljs-ln-line[data-line-number]",(function(e){return e.getAttribute("data-line-number")}),{scale:!1,styles:["width"],measure:n.getLocalBoundingBox.bind(n)}))}),this),i}},{key:"getLocalBoundingBox",value:function(e){var t=this.Reveal.getScale();return{x:Math.round(e.offsetLeft*t*100)/100,y:Math.round(e.offsetTop*t*100)/100,width:Math.round(e.offsetWidth*t*100)/100,height:Math.round(e.offsetHeight*t*100)/100}}},{key:"findAutoAnimateMatches",value:function(e,t,n,i,a,r){var o={},s={};[].slice.call(t.querySelectorAll(i)).forEach((function(e,t){var n=a(e);"string"==typeof n&&n.length&&(o[n]=o[n]||[],o[n].push(e))})),[].slice.call(n.querySelectorAll(i)).forEach((function(t,n){var i,l=a(t);if(s[l]=s[l]||[],s[l].push(t),o[l]){var c=s[l].length-1,u=o[l].length-1;o[l][c]?(i=o[l][c],o[l][c]=null):o[l][u]&&(i=o[l][u],o[l][u]=null)}i&&e.push({from:i,to:t,options:r})}))}},{key:"getUnmatchedAutoAnimateElements",value:function(e){var t=this;return[].slice.call(e.children).reduce((function(e,n){var i=n.querySelector("[data-auto-animate-target]");return n.hasAttribute("data-auto-animate-target")||i||e.push(n),n.querySelector("[data-auto-animate-target]")&&(e=e.concat(t.getUnmatchedAutoAnimateElements(n))),e}),[])}}])&&L(t.prototype,n),i&&L(t,i),e}();function C(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var P=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"configure",value:function(e,t){!1===e.fragments?this.disable():!1===t.fragments&&this.enable()}},{key:"disable",value:function(){o(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))}},{key:"enable",value:function(){o(this.Reveal.getSlidesElement(),".fragment").forEach((function(e){e.classList.remove("visible"),e.classList.remove("current-fragment")}))}},{key:"availableRoutes",value:function(){var e=this.Reveal.getCurrentSlide();if(e&&this.Reveal.getConfig().fragments){var t=e.querySelectorAll(".fragment:not(.disabled)"),n=e.querySelectorAll(".fragment:not(.disabled):not(.visible)");return{prev:t.length-n.length>0,next:!!n.length}}return{prev:!1,next:!1}}},{key:"sort",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e=Array.from(e);var n=[],i=[],a=[];e.forEach((function(e){if(e.hasAttribute("data-fragment-index")){var t=parseInt(e.getAttribute("data-fragment-index"),10);n[t]||(n[t]=[]),n[t].push(e)}else i.push([e])})),n=n.concat(i);var r=0;return n.forEach((function(e){e.forEach((function(e){a.push(e),e.setAttribute("data-fragment-index",r)})),r++})),!0===t?n:a}},{key:"sortAll",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t){var n=o(t,"section");n.forEach((function(t,n){e.sort(t.querySelectorAll(".fragment"))}),e),0===n.length&&e.sort(t.querySelectorAll(".fragment"))}))}},{key:"update",value:function(e,t){var n=this,i={shown:[],hidden:[]},a=this.Reveal.getCurrentSlide();if(a&&this.Reveal.getConfig().fragments&&(t=t||this.sort(a.querySelectorAll(".fragment"))).length){var r=0;if("number"!=typeof e){var o=this.sort(a.querySelectorAll(".fragment.visible")).pop();o&&(e=parseInt(o.getAttribute("data-fragment-index")||0,10))}Array.from(t).forEach((function(t,a){if(t.hasAttribute("data-fragment-index")&&(a=parseInt(t.getAttribute("data-fragment-index"),10)),r=Math.max(r,a),a<=e){var o=t.classList.contains("visible");t.classList.add("visible"),t.classList.remove("current-fragment"),a===e&&(n.Reveal.announceStatus(n.Reveal.getStatusText(t)),t.classList.add("current-fragment"),n.Reveal.slideContent.startEmbeddedContent(t)),o||(i.shown.push(t),n.Reveal.dispatchEvent({target:t,type:"visible",bubbles:!1}))}else{var s=t.classList.contains("visible");t.classList.remove("visible"),t.classList.remove("current-fragment"),s&&(i.hidden.push(t),n.Reveal.dispatchEvent({target:t,type:"hidden",bubbles:!1}))}})),e="number"==typeof e?e:-1,e=Math.max(Math.min(e,r),-1),a.setAttribute("data-fragment",e)}return i}},{key:"sync",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();return this.sort(e.querySelectorAll(".fragment"))}},{key:"goto",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.Reveal.getCurrentSlide();if(n&&this.Reveal.getConfig().fragments){var i=this.sort(n.querySelectorAll(".fragment:not(.disabled)"));if(i.length){if("number"!=typeof e){var a=this.sort(n.querySelectorAll(".fragment:not(.disabled).visible")).pop();e=a?parseInt(a.getAttribute("data-fragment-index")||0,10):-1}e+=t;var r=this.update(e,i);return r.hidden.length&&this.Reveal.dispatchEvent({type:"fragmenthidden",data:{fragment:r.hidden[0],fragments:r.hidden}}),r.shown.length&&this.Reveal.dispatchEvent({type:"fragmentshown",data:{fragment:r.shown[0],fragments:r.shown}}),this.Reveal.controls.update(),this.Reveal.progress.update(),this.Reveal.getConfig().fragmentInURL&&this.Reveal.location.writeURL(),!(!r.shown.length&&!r.hidden.length)}}return!1}},{key:"next",value:function(){return this.goto(null,1)}},{key:"prev",value:function(){return this.goto(null,-1)}}])&&C(t.prototype,n),i&&C(t,i),e}();function N(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var M=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.active=!1,this.onSlideClicked=this.onSlideClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"activate",value:function(){var e=this;if(this.Reveal.getConfig().overview&&!this.isActive()){this.active=!0,this.Reveal.getRevealElement().classList.add("overview"),this.Reveal.cancelAutoSlide(),this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){t.classList.contains("stack")||t.addEventListener("click",e.onSlideClicked,!0)}));var t=this.Reveal.getComputedSlideSize();this.overviewSlideWidth=t.width+70,this.overviewSlideHeight=t.height+70,this.Reveal.getConfig().rtl&&(this.overviewSlideWidth=-this.overviewSlideWidth),this.Reveal.updateSlidesVisibility(),this.layout(),this.update(),this.Reveal.layout();var n=this.Reveal.getIndices();this.Reveal.dispatchEvent({type:"overviewshown",data:{indexh:n.h,indexv:n.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"layout",value:function(){var e=this;this.Reveal.getHorizontalSlides().forEach((function(t,n){t.setAttribute("data-index-h",n),l(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),t.classList.contains("stack")&&o(t,"section").forEach((function(t,i){t.setAttribute("data-index-h",n),t.setAttribute("data-index-v",i),l(t,"translate3d(0, "+i*e.overviewSlideHeight+"px, 0)")}))})),Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach((function(t,n){l(t,"translate3d("+n*e.overviewSlideWidth+"px, 0, 0)"),o(t,".slide-background").forEach((function(t,n){l(t,"translate3d(0, "+n*e.overviewSlideHeight+"px, 0)")}))}))}},{key:"update",value:function(){var e=Math.min(window.innerWidth,window.innerHeight),t=Math.max(e/5,150)/e,n=this.Reveal.getIndices();this.Reveal.transformSlides({overview:["scale("+t+")","translateX("+-n.h*this.overviewSlideWidth+"px)","translateY("+-n.v*this.overviewSlideHeight+"px)"].join(" ")})}},{key:"deactivate",value:function(){var e=this;if(this.Reveal.getConfig().overview){this.active=!1,this.Reveal.getRevealElement().classList.remove("overview"),this.Reveal.getRevealElement().classList.add("overview-deactivating"),setTimeout((function(){e.Reveal.getRevealElement().classList.remove("overview-deactivating")}),1),this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){l(t,""),t.removeEventListener("click",e.onSlideClicked,!0)})),o(this.Reveal.getBackgroundsElement(),".slide-background").forEach((function(e){l(e,"")})),this.Reveal.transformSlides({overview:""});var t=this.Reveal.getIndices();this.Reveal.slide(t.h,t.v),this.Reveal.layout(),this.Reveal.cueAutoSlide(),this.Reveal.dispatchEvent({type:"overviewhidden",data:{indexh:t.h,indexv:t.v,currentSlide:this.Reveal.getCurrentSlide()}})}}},{key:"toggle",value:function(e){"boolean"==typeof e?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}},{key:"isActive",value:function(){return this.active}},{key:"onSlideClicked",value:function(e){if(this.isActive()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(this.deactivate(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),i=parseInt(t.getAttribute("data-index-v"),10);this.Reveal.slide(n,i)}}}}])&&N(t.prototype,n),i&&N(t,i),e}();function T(e){return(T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function I(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var D=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.shortcuts={},this.bindings={},this.onDocumentKeyDown=this.onDocumentKeyDown.bind(this),this.onDocumentKeyPress=this.onDocumentKeyPress.bind(this)}var t,n,i;return t=e,(n=[{key:"configure",value:function(e,t){"linear"===e.navigationMode?(this.shortcuts["&#8594; , &#8595; , SPACE , N , L , J"]="Next slide",this.shortcuts["&#8592; , &#8593; , P , H , K"]="Previous slide"):(this.shortcuts["N , SPACE"]="Next slide",this.shortcuts.P="Previous slide",this.shortcuts["&#8592; , H"]="Navigate left",this.shortcuts["&#8594; , L"]="Navigate right",this.shortcuts["&#8593; , K"]="Navigate up",this.shortcuts["&#8595; , J"]="Navigate down"),this.shortcuts["Home , Shift &#8592;"]="First slide",this.shortcuts["End , Shift &#8594;"]="Last slide",this.shortcuts["B , ."]="Pause",this.shortcuts.F="Fullscreen",this.shortcuts["ESC, O"]="Slide overview"}},{key:"bind",value:function(){document.addEventListener("keydown",this.onDocumentKeyDown,!1),document.addEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"unbind",value:function(){document.removeEventListener("keydown",this.onDocumentKeyDown,!1),document.removeEventListener("keypress",this.onDocumentKeyPress,!1)}},{key:"addKeyBinding",value:function(e,t){"object"===T(e)&&e.keyCode?this.bindings[e.keyCode]={callback:t,key:e.key,description:e.description}:this.bindings[e]={callback:t,key:null,description:null}}},{key:"removeKeyBinding",value:function(e){delete this.bindings[e]}},{key:"triggerKey",value:function(e){this.onDocumentKeyDown({keyCode:e})}},{key:"registerKeyboardShortcut",value:function(e,t){this.shortcuts[e]=t}},{key:"onDocumentKeyPress",value:function(e){e.shiftKey&&63===e.charCode&&this.Reveal.toggleHelp()}},{key:"onDocumentKeyDown",value:function(e){var t=this.Reveal.getConfig();if("function"==typeof t.keyboardCondition&&!1===t.keyboardCondition(e))return!0;var n=e.keyCode,i=!this.Reveal.isAutoSliding();this.Reveal.onUserInput(e);var a=document.activeElement&&"inherit"!==document.activeElement.contentEditable,r=document.activeElement&&document.activeElement.tagName&&/input|textarea/i.test(document.activeElement.tagName),o=document.activeElement&&document.activeElement.className&&/speaker-notes/i.test(document.activeElement.className),s=e.shiftKey&&32===e.keyCode,l=e.shiftKey&&37===n,c=e.shiftKey&&39===n,u=!s&&!l&&!c&&(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey);if(!(a||r||o||u)){var d,h=[66,86,190,191];if("object"===T(t.keyboard))for(d in t.keyboard)"togglePause"===t.keyboard[d]&&h.push(parseInt(d,10));if(this.Reveal.isPaused()&&-1===h.indexOf(n))return!1;var v,f,g="linear"===t.navigationMode||!this.Reveal.hasHorizontalSlides()||!this.Reveal.hasVerticalSlides(),p=!1;if("object"===T(t.keyboard))for(d in t.keyboard)if(parseInt(d,10)===n){var m=t.keyboard[d];"function"==typeof m?m.apply(null,[e]):"string"==typeof m&&"function"==typeof this.Reveal[m]&&this.Reveal[m].call(),p=!0}if(!1===p)for(d in this.bindings)if(parseInt(d,10)===n){var y=this.bindings[d].callback;"function"==typeof y?y.apply(null,[e]):"string"==typeof y&&"function"==typeof this.Reveal[y]&&this.Reveal[y].call(),p=!0}!1===p&&(p=!0,80===n||33===n?this.Reveal.prev():78===n||34===n?this.Reveal.next():72===n||37===n?l?this.Reveal.slide(0):!this.Reveal.overview.isActive()&&g?this.Reveal.prev():this.Reveal.left():76===n||39===n?c?this.Reveal.slide(Number.MAX_VALUE):!this.Reveal.overview.isActive()&&g?this.Reveal.next():this.Reveal.right():75===n||38===n?!this.Reveal.overview.isActive()&&g?this.Reveal.prev():this.Reveal.up():74===n||40===n?!this.Reveal.overview.isActive()&&g?this.Reveal.next():this.Reveal.down():36===n?this.Reveal.slide(0):35===n?this.Reveal.slide(Number.MAX_VALUE):32===n?(this.Reveal.overview.isActive()&&this.Reveal.overview.deactivate(),e.shiftKey?this.Reveal.prev():this.Reveal.next()):58===n||59===n||66===n||86===n||190===n||191===n?this.Reveal.togglePause():70===n?(v=document.documentElement,(f=v.requestFullscreen||v.webkitRequestFullscreen||v.webkitRequestFullScreen||v.mozRequestFullScreen||v.msRequestFullscreen)&&f.apply(v)):65===n?t.autoSlideStoppable&&this.Reveal.toggleAutoSlide(i):p=!1),p?e.preventDefault&&e.preventDefault():27!==n&&79!==n||(!1===this.Reveal.closeOverlay()&&this.Reveal.overview.toggle(),e.preventDefault&&e.preventDefault()),this.Reveal.cueAutoSlide()}}}])&&I(t.prototype,n),i&&I(t,i),e}();function O(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var B=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.writeURLTimeout=0}var t,n,i;return t=e,(n=[{key:"readURL",value:function(){var e=this.Reveal.getConfig(),t=this.Reveal.getIndices(),n=this.Reveal.getCurrentSlide(),i=window.location.hash,a=i.slice(2).split("/"),r=i.replace(/#|\//gi,"");if(!/^[0-9]*$/.test(a[0])&&r.length){var o;try{o=document.getElementById(decodeURIComponent(r))}catch(e){}var s=!!n&&n.getAttribute("id")===r;if(o){if(!s){var l=this.Reveal.getIndices(o);this.Reveal.slide(l.h,l.v)}}else this.Reveal.slide(t.h||0,t.v||0)}else{var c,u=e.hashOneBasedIndex?1:0,d=parseInt(a[0],10)-u||0,h=parseInt(a[1],10)-u||0;e.fragmentInURL&&(c=parseInt(a[2],10),isNaN(c)&&(c=void 0)),d===t.h&&h===t.v&&void 0===c||this.Reveal.slide(d,h,c)}}},{key:"writeURL",value:function(e){var t=this.Reveal.getConfig(),n=this.Reveal.getCurrentSlide();clearTimeout(this.writeURLTimeout),"number"==typeof e?this.writeURLTimeout=setTimeout(this.writeURL,e):n&&(t.history||!1===y?window.location.hash=this.getHash():t.hash?window.history.replaceState(null,null,"#"+this.getHash()):window.history.replaceState(null,null,window.location.pathname+window.location.search))}},{key:"getHash",value:function(e){var t="/",n=e||this.Reveal.getCurrentSlide(),i=n?n.getAttribute("id"):null;i&&(i=encodeURIComponent(i));var a=this.Reveal.getIndices(e);if(this.Reveal.getConfig().fragmentInURL||(a.f=void 0),"string"==typeof i&&i.length&&void 0===a.f)t="/"+i;else{var r=this.Reveal.getConfig().hashOneBasedIndex?1:0;(a.h>0||a.v>0||void 0!==a.f)&&(t+=a.h+r),(a.v>0||void 0!==a.f)&&(t+="/"+(a.v+r)),void 0!==a.f&&(t+="/"+a.f)}return t}}])&&O(t.prototype,n),i&&O(t,i),e}();function H(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function j(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var z=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.onNavigateLeftClicked=this.onNavigateLeftClicked.bind(this),this.onNavigateRightClicked=this.onNavigateRightClicked.bind(this),this.onNavigateUpClicked=this.onNavigateUpClicked.bind(this),this.onNavigateDownClicked=this.onNavigateDownClicked.bind(this),this.onNavigatePrevClicked=this.onNavigatePrevClicked.bind(this),this.onNavigateNextClicked=this.onNavigateNextClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"render",value:function(){var e=this.Reveal.getConfig().rtl,t=this.Reveal.getRevealElement();this.element=document.createElement("aside"),this.element.className="controls",this.element.innerHTML='<button class="navigate-left" aria-label="'.concat(e?"next slide":"previous slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-right" aria-label="').concat(e?"previous slide":"next slide",'"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>\n\t\t\t<button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>'),this.Reveal.getRevealElement().appendChild(this.element),this.controlsLeft=o(t,".navigate-left"),this.controlsRight=o(t,".navigate-right"),this.controlsUp=o(t,".navigate-up"),this.controlsDown=o(t,".navigate-down"),this.controlsPrev=o(t,".navigate-prev"),this.controlsNext=o(t,".navigate-next"),this.controlsRightArrow=this.element.querySelector(".navigate-right"),this.controlsLeftArrow=this.element.querySelector(".navigate-left"),this.controlsDownArrow=this.element.querySelector(".navigate-down")}},{key:"configure",value:function(e,t){this.element.style.display=e.controls?"block":"none",this.element.setAttribute("data-controls-layout",e.controlsLayout),this.element.setAttribute("data-controls-back-arrows",e.controlsBackArrows)}},{key:"bind",value:function(){var e=this,t=["touchstart","click"];p&&(t=["touchstart"]),t.forEach((function(t){e.controlsLeft.forEach((function(n){return n.addEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.addEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.addEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.addEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.addEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.addEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"unbind",value:function(){var e=this;["touchstart","click"].forEach((function(t){e.controlsLeft.forEach((function(n){return n.removeEventListener(t,e.onNavigateLeftClicked,!1)})),e.controlsRight.forEach((function(n){return n.removeEventListener(t,e.onNavigateRightClicked,!1)})),e.controlsUp.forEach((function(n){return n.removeEventListener(t,e.onNavigateUpClicked,!1)})),e.controlsDown.forEach((function(n){return n.removeEventListener(t,e.onNavigateDownClicked,!1)})),e.controlsPrev.forEach((function(n){return n.removeEventListener(t,e.onNavigatePrevClicked,!1)})),e.controlsNext.forEach((function(n){return n.removeEventListener(t,e.onNavigateNextClicked,!1)}))}))}},{key:"update",value:function(){var e=this.Reveal.availableRoutes();[].concat(H(this.controlsLeft),H(this.controlsRight),H(this.controlsUp),H(this.controlsDown),H(this.controlsPrev),H(this.controlsNext)).forEach((function(e){e.classList.remove("enabled","fragmented"),e.setAttribute("disabled","disabled")})),e.left&&this.controlsLeft.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.right&&this.controlsRight.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.up&&this.controlsUp.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),e.down&&this.controlsDown.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.left||e.up)&&this.controlsPrev.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")})),(e.right||e.down)&&this.controlsNext.forEach((function(e){e.classList.add("enabled"),e.removeAttribute("disabled")}));var t=this.Reveal.getCurrentSlide();if(t){var n=this.Reveal.fragments.availableRoutes();n.prev&&this.controlsPrev.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsNext.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),this.Reveal.isVerticalSlide(t)?(n.prev&&this.controlsUp.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsDown.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")}))):(n.prev&&this.controlsLeft.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})),n.next&&this.controlsRight.forEach((function(e){e.classList.add("fragmented","enabled"),e.removeAttribute("disabled")})))}if(this.Reveal.getConfig().controlsTutorial){var i=this.Reveal.getIndices();!this.Reveal.hasNavigatedVertically()&&e.down?this.controlsDownArrow.classList.add("highlight"):(this.controlsDownArrow.classList.remove("highlight"),this.Reveal.getConfig().rtl?!this.Reveal.hasNavigatedHorizontally()&&e.left&&0===i.v?this.controlsLeftArrow.classList.add("highlight"):this.controlsLeftArrow.classList.remove("highlight"):!this.Reveal.hasNavigatedHorizontally()&&e.right&&0===i.v?this.controlsRightArrow.classList.add("highlight"):this.controlsRightArrow.classList.remove("highlight"))}}},{key:"onNavigateLeftClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.prev():this.Reveal.left()}},{key:"onNavigateRightClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),"linear"===this.Reveal.getConfig().navigationMode?this.Reveal.next():this.Reveal.right()}},{key:"onNavigateUpClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.up()}},{key:"onNavigateDownClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.down()}},{key:"onNavigatePrevClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.prev()}},{key:"onNavigateNextClicked",value:function(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.next()}}])&&j(t.prototype,n),i&&j(t,i),e}();function U(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var q=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.onProgressClicked=this.onProgressClicked.bind(this)}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="progress",this.Reveal.getRevealElement().appendChild(this.element),this.bar=document.createElement("span"),this.element.appendChild(this.bar)}},{key:"configure",value:function(e,t){this.element.style.display=e.progress?"block":"none"}},{key:"bind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.addEventListener("click",this.onProgressClicked,!1)}},{key:"unbind",value:function(){this.Reveal.getConfig().progress&&this.element&&this.element.removeEventListener("click",this.onProgressClicked,!1)}},{key:"update",value:function(){this.Reveal.getConfig().progress&&this.bar&&(this.bar.style.width=this.Reveal.getProgress()*this.getMaxWidth()+"px")}},{key:"getMaxWidth",value:function(){return this.Reveal.getRevealElement().offsetWidth}},{key:"onProgressClicked",value:function(e){this.Reveal.onUserInput(e),e.preventDefault();var t=this.Reveal.getHorizontalSlides().length,n=Math.floor(e.clientX/this.getMaxWidth()*t);this.Reveal.getConfig().rtl&&(n=t-n),this.Reveal.slide(n)}}])&&U(t.prototype,n),i&&U(t,i),e}();function W(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var K=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.lastMouseWheelStep=0,this.cursorHidden=!1,this.cursorInactiveTimeout=0,this.onDocumentCursorActive=this.onDocumentCursorActive.bind(this),this.onDocumentMouseScroll=this.onDocumentMouseScroll.bind(this)}var t,n,i;return t=e,(n=[{key:"configure",value:function(e,t){e.mouseWheel?(document.addEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.addEventListener("mousewheel",this.onDocumentMouseScroll,!1)):(document.removeEventListener("DOMMouseScroll",this.onDocumentMouseScroll,!1),document.removeEventListener("mousewheel",this.onDocumentMouseScroll,!1)),e.hideInactiveCursor?(document.addEventListener("mousemove",this.onDocumentCursorActive,!1),document.addEventListener("mousedown",this.onDocumentCursorActive,!1)):(this.showCursor(),document.removeEventListener("mousemove",this.onDocumentCursorActive,!1),document.removeEventListener("mousedown",this.onDocumentCursorActive,!1))}},{key:"showCursor",value:function(){this.cursorHidden&&(this.cursorHidden=!1,this.Reveal.getRevealElement().style.cursor="")}},{key:"hideCursor",value:function(){!1===this.cursorHidden&&(this.cursorHidden=!0,this.Reveal.getRevealElement().style.cursor="none")}},{key:"onDocumentCursorActive",value:function(e){this.showCursor(),clearTimeout(this.cursorInactiveTimeout),this.cursorInactiveTimeout=setTimeout(this.hideCursor.bind(this),this.Reveal.getConfig().hideCursorTime)}},{key:"onDocumentMouseScroll",value:function(e){if(Date.now()-this.lastMouseWheelStep>1e3){this.lastMouseWheelStep=Date.now();var t=e.detail||-e.wheelDelta;t>0?this.Reveal.next():t<0&&this.Reveal.prev()}}}])&&W(t.prototype,n),i&&W(t,i),e}(),V=function(e,t){var n=document.createElement("script");n.type="text/javascript",n.async=!1,n.defer=!1,n.src=e,"function"==typeof t&&(n.onload=n.onreadystatechange=function(e){("load"===e.type||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=n.onerror=null,t())},n.onerror=function(e){n.onload=n.onreadystatechange=n.onerror=null,t(new Error("Failed loading script: "+n.src+"\n"+e))});var i=document.querySelector("head");i.insertBefore(n,i.lastChild)};function F(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var X=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.state="idle",this.registeredPlugins={},this.asyncDependencies=[]}var t,n,i;return t=e,(n=[{key:"load",value:function(e){var t=this;return this.state="loading",new Promise((function(n){var i=[],a=0;if(e.forEach((function(e){e.condition&&!e.condition()||(e.async?t.asyncDependencies.push(e):i.push(e))})),i.length){a=i.length;var r=function(e){"function"==typeof e.callback&&e.callback(),0==--a&&t.initPlugins().then(n)};i.forEach((function(e){e.id?(t.registerPlugin(e.id,e.plugin),r(e)):V(e.src,(function(){return r(e)}))}))}else t.initPlugins().then(n)}))}},{key:"initPlugins",value:function(){var e=this;return new Promise((function(t){var n=Object.keys(e.registeredPlugins).length;if(0===n)e.loadAsync().then(t);else{var i=function(){0==--n&&e.loadAsync().then(t)};for(var a in e.registeredPlugins){var r=e.registeredPlugins[a];if("function"==typeof r.init){var o=r.init();o&&"function"==typeof o.then?o.then(i):i()}else i()}}}))}},{key:"loadAsync",value:function(){var e=this;return this.state="loaded",this.asyncDependencies.length&&this.asyncDependencies.forEach((function(t){t.id?(e.registerPlugin(t.id,t.plugin),"function"==typeof t.plugin.init&&t.plugin.init(),"function"==typeof t.callback&&t.callback()):V(t.src,t.callback)})),Promise.resolve()}},{key:"registerPlugin",value:function(e,t){void 0===this.registeredPlugins[e]?(this.registeredPlugins[e]=t,"loaded"===this.state&&"function"==typeof t.init&&t.init()):console.warn('reveal.js: "'+e+'" plugin has already been registered')}},{key:"hasPlugin",value:function(e){return!!this.registeredPlugins[e]}},{key:"getPlugin",value:function(e){return this.registeredPlugins[e]}},{key:"getRegisteredPlugins",value:function(){return this.registeredPlugins}}])&&F(t.prototype,n),i&&F(t,i),e}();function Y(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var _=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"setupPDF",value:function(){var e=this.Reveal.getConfig(),t=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),n=Math.floor(t.width*(1+e.margin)),i=Math.floor(t.height*(1+e.margin)),a=t.width,r=t.height;u("@page{size:"+n+"px "+i+"px; margin: 0px;}"),u(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: "+a+"px; max-height:"+r+"px}"),document.documentElement.classList.add("print-pdf"),document.body.style.width=n+"px",document.body.style.height=i+"px",this.Reveal.layoutSlideContents(a,r);var s=e.slideNumber&&/all|print/i.test(e.showSlideNumber);o(this.Reveal.getRevealElement(),".slides section").forEach((function(e){e.setAttribute("data-slide-number",this.Reveal.slideNumber.getSlideNumber(e))}),this),o(this.Reveal.getRevealElement(),".slides section").forEach((function(t){if(!1===t.classList.contains("stack")){var l=(n-a)/2,c=(i-r)/2,u=t.scrollHeight,d=Math.max(Math.ceil(u/i),1);(1===(d=Math.min(d,e.pdfMaxPagesPerSlide))&&e.center||t.classList.contains("center"))&&(c=Math.max((i-u)/2,0));var h=document.createElement("div");if(h.className="pdf-page",h.style.height=(i+e.pdfPageHeightOffset)*d+"px",t.parentNode.insertBefore(h,t),h.appendChild(t),t.style.left=l+"px",t.style.top=c+"px",t.style.width=a+"px",t.slideBackgroundElement&&h.insertBefore(t.slideBackgroundElement,t),e.showNotes){var v=getSlideNotes(t);if(v){var f="string"==typeof e.showNotes?e.showNotes:"inline",g=document.createElement("div");g.classList.add("speaker-notes"),g.classList.add("speaker-notes-pdf"),g.setAttribute("data-layout",f),g.innerHTML=v,"separate-page"===f?h.parentNode.insertBefore(g,h.nextSibling):(g.style.left="8px",g.style.bottom="8px",g.style.width=n-16+"px",h.appendChild(g))}}if(s){var p=document.createElement("div");p.classList.add("slide-number"),p.classList.add("slide-number-pdf"),p.innerHTML=t.getAttribute("data-slide-number"),h.appendChild(p)}if(e.pdfSeparateFragments){var m,y,b=this.Reveal.fragments.sort(h.querySelectorAll(".fragment"),!0);b.forEach((function(e){m&&m.forEach((function(e){e.classList.remove("current-fragment")})),e.forEach((function(e){e.classList.add("visible","current-fragment")}),this);var t=h.cloneNode(!0);h.parentNode.insertBefore(t,(y||h).nextSibling),m=e,y=t}),this),b.forEach((function(e){e.forEach((function(e){e.classList.remove("visible","current-fragment")}))}))}else o(h,".fragment:not(.fade-out)").forEach((function(e){e.classList.add("visible")}))}}),this),this.Reveal.dispatchEvent({type:"pdf-ready"})}},{key:"isPrintingPDF",value:function(){return/print-pdf/gi.test(window.location.search)}}])&&Y(t.prototype,n),i&&Y(t,i),e}();function $(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var J=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t,this.touchStartX=0,this.touchStartY=0,this.touchStartCount=0,this.touchCaptured=!1,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this)}var t,n,i;return t=e,(n=[{key:"bind",value:function(){var e=this.Reveal.getRevealElement();"onpointerdown"in window?(e.addEventListener("pointerdown",this.onPointerDown,!1),e.addEventListener("pointermove",this.onPointerMove,!1),e.addEventListener("pointerup",this.onPointerUp,!1)):window.navigator.msPointerEnabled?(e.addEventListener("MSPointerDown",this.onPointerDown,!1),e.addEventListener("MSPointerMove",this.onPointerMove,!1),e.addEventListener("MSPointerUp",this.onPointerUp,!1)):(e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1))}},{key:"unbind",value:function(){var e=this.Reveal.getRevealElement();e.removeEventListener("pointerdown",this.onPointerDown,!1),e.removeEventListener("pointermove",this.onPointerMove,!1),e.removeEventListener("pointerup",this.onPointerUp,!1),e.removeEventListener("MSPointerDown",this.onPointerDown,!1),e.removeEventListener("MSPointerMove",this.onPointerMove,!1),e.removeEventListener("MSPointerUp",this.onPointerUp,!1),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1)}},{key:"isSwipePrevented",value:function(e){for(;e&&"function"==typeof e.hasAttribute;){if(e.hasAttribute("data-prevent-swipe"))return!0;e=e.parentNode}return!1}},{key:"onTouchStart",value:function(e){if(this.isSwipePrevented(e.target))return!0;this.touchStartX=e.touches[0].clientX,this.touchStartY=e.touches[0].clientY,this.touchStartCount=e.touches.length}},{key:"onTouchMove",value:function(e){if(this.isSwipePrevented(e.target))return!0;var t=this.Reveal.getConfig();if(this.touchCaptured)isAndroid&&e.preventDefault();else{this.Reveal.onUserInput(e);var n=e.touches[0].clientX,i=e.touches[0].clientY;if(1===e.touches.length&&2!==this.touchStartCount){var a=n-this.touchStartX,r=i-this.touchStartY;a>40&&Math.abs(a)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.next():this.Reveal.prev()():this.Reveal.left()):a<-40&&Math.abs(a)>Math.abs(r)?(this.touchCaptured=!0,"linear"===t.navigationMode?t.rtl?this.Reveal.prev()():this.Reveal.next():this.Reveal.right()):r>40?(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.prev()():this.Reveal.up()):r<-40&&(this.touchCaptured=!0,"linear"===t.navigationMode?this.Reveal.next():this.Reveal.down()),t.embedded?(this.touchCaptured||this.Reveal.isVerticalSlide(currentSlide))&&e.preventDefault():e.preventDefault()}}}},{key:"onTouchEnd",value:function(e){this.touchCaptured=!1}},{key:"onPointerDown",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchStart(e))}},{key:"onPointerMove",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchMove(e))}},{key:"onPointerUp",value:function(e){e.pointerType!==e.MSPOINTER_TYPE_TOUCH&&"touch"!==e.pointerType||(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchEnd(e))}}])&&$(t.prototype,n),i&&$(t,i),e}();function Q(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var Z=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.Reveal=t}var t,n,i;return t=e,(n=[{key:"render",value:function(){this.element=document.createElement("div"),this.element.className="speaker-notes",this.element.setAttribute("data-prevent-swipe",""),this.element.setAttribute("tabindex","0"),this.Reveal.getRevealElement().appendChild(this.element)}},{key:"configure",value:function(e,t){e.showNotes&&this.element.setAttribute("data-layout","string"==typeof e.showNotes?e.showNotes:"inline")}},{key:"update",value:function(){this.Reveal.getConfig().showNotes&&this.element&&this.Reveal.getCurrentSlide()&&!this.Reveal.print.isPrintingPDF()&&(this.element.innerHTML=this.getSlideNotes()||'<span class="notes-placeholder">No notes on this slide.</span>')}},{key:"updateVisibility",value:function(){this.Reveal.getConfig().showNotes&&this.hasNotes()?this.Reveal.getRevealElement().classList.add("show-notes"):this.Reveal.getRevealElement().classList.remove("show-notes")}},{key:"hasNotes",value:function(){return this.Reveal.getSlidesElement().querySelectorAll("[data-notes], aside.notes").length>0}},{key:"isSpeakerNotesWindow",value:function(){return!!window.location.search.match(/receiver/gi)}},{key:"getSlideNotes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.Reveal.getCurrentSlide();if(e.hasAttribute("data-notes"))return e.getAttribute("data-notes");var t=e.querySelector("aside.notes");return t?t.innerHTML:null}}])&&Q(t.prototype,n),i&&Q(t,i),e}();function G(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}var ee=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.diameter=100,this.diameter2=this.diameter/2,this.thickness=6,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=t,this.progressCheck=n,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.canvas.style.width=this.diameter2+"px",this.canvas.style.height=this.diameter2+"px",this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}var t,n,i;return t=e,(n=[{key:"setPlaying",value:function(e){var t=this.playing;this.playing=e,!t&&this.playing?this.animate():this.render()}},{key:"animate",value:function(){var e=this.progress;this.progress=this.progressCheck(),e>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&requestAnimationFrame(this.animate.bind(this))}},{key:"render",value:function(){var e=this.playing?this.progress:0,t=this.diameter2-this.thickness,n=this.diameter2,i=this.diameter2;this.progressOffset+=.1*(1-this.progressOffset);var a=-Math.PI/2+e*(2*Math.PI),r=-Math.PI/2+this.progressOffset*(2*Math.PI);this.context.save(),this.context.clearRect(0,0,this.diameter,this.diameter),this.context.beginPath(),this.context.arc(n,i,t+4,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(n,i,t,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="rgba( 255, 255, 255, 0.2 )",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(n,i,t,r,a,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(n-14,i-14),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,10,28),this.context.fillRect(18,0,10,28)):(this.context.beginPath(),this.context.translate(4,0),this.context.moveTo(0,0),this.context.lineTo(24,14),this.context.lineTo(0,28),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()}},{key:"on",value:function(e,t){this.canvas.addEventListener(e,t,!1)}},{key:"off",value:function(e,t){this.canvas.removeEventListener(e,t,!1)}},{key:"destroy",value:function(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)}}])&&G(t.prototype,n),i&&G(t,i),e}(),te={width:960,height:700,margin:.04,minScale:.2,maxScale:2,controls:!0,controlsTutorial:!0,controlsLayout:"bottom-right",controlsBackArrows:"faded",progress:!0,slideNumber:!1,showSlideNumber:"all",hashOneBasedIndex:!1,hash:!1,history:!1,keyboard:!0,keyboardCondition:null,overview:!0,disableLayout:!1,center:!0,touch:!0,loop:!1,rtl:!1,navigationMode:"default",shuffle:!1,fragments:!0,fragmentInURL:!1,embedded:!1,help:!0,pause:!0,showNotes:!1,autoPlayMedia:null,preloadIframes:null,autoAnimate:!0,autoAnimateMatcher:null,autoAnimateEasing:"ease",autoAnimateDuration:1,autoAnimateUnmatched:!0,autoAnimateStyles:["opacity","color","background-color","padding","font-size","line-height","letter-spacing","border-width","border-color","border-radius","outline","outline-offset"],autoSlide:0,autoSlideStoppable:!0,autoSlideMethod:null,defaultTiming:null,mouseWheel:!1,previewLinks:!1,postMessage:!0,postMessageEvents:!1,focusBodyOnPageVisibilityChange:!0,transition:"slide",transitionSpeed:"default",backgroundTransition:"fade",parallaxBackgroundImage:"",parallaxBackgroundSize:"",parallaxBackgroundRepeat:"",parallaxBackgroundPosition:"",parallaxBackgroundHorizontal:null,parallaxBackgroundVertical:null,pdfMaxPagesPerSlide:Number.POSITIVE_INFINITY,pdfSeparateFragments:!0,pdfPageHeightOffset:-1,viewDistance:3,mobileViewDistance:2,display:"block",hideInactiveCursor:!0,hideCursorTime:5e3,dependencies:[]};function ne(e){return(ne="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ie(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function ae(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ie(Object(n),!0).forEach((function(t){re(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ie(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function re(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var oe=function(e,t){var n,a,c,u,h,v,g={},p=!1,y={hasNavigatedHorizontally:!1,hasNavigatedVertically:!1},b=[],k=1,E=new w(g),R=new A(g),L=new x(g),C=new S(g),N=new P(g),T=new M(g),I=new D(g),O=new B(g),H=new z(g),j=new q(g),U=new K(g),W=new X(g),V=new _(g),F=new J(g),Y=new Z(g),$={layout:"",overview:""},Q={},G=0,ie=0,re=-1,oe=!1;function se(){p=!0,function(){Q.slides.classList.add("no-transition"),f?Q.wrapper.classList.add("no-hover"):Q.wrapper.classList.remove("no-hover");C.render(),R.render(),H.render(),j.render(),Y.render(),Q.pauseOverlay=function(e,t,n){for(var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",a=e.querySelectorAll("."+n),r=0;r<a.length;r++){var o=a[r];if(o.parentNode===e)return o}var s=document.createElement(t);return s.className=n,s.innerHTML=i,e.appendChild(s),s}(Q.wrapper,"div","pause-overlay",n.controls?'<button class="resume-button">Resume presentation</button>':null),Q.statusElement=function(){var e=Q.wrapper.querySelector(".aria-status");e||((e=document.createElement("div")).style.position="absolute",e.style.height="1px",e.style.width="1px",e.style.overflow="hidden",e.style.clip="rect( 1px, 1px, 1px, 1px )",e.classList.add("aria-status"),e.setAttribute("aria-live","polite"),e.setAttribute("aria-atomic","true"),Q.wrapper.appendChild(e));return e}(),Q.wrapper.setAttribute("role","application")}(),n.postMessage&&window.addEventListener("message",(function(e){var t=e.data;if("string"==typeof t&&"{"===t.charAt(0)&&"}"===t.charAt(t.length-1)&&(t=JSON.parse(t)).method&&"function"==typeof g[t.method])if(!1===i.test(t.method)){var n=g[t.method].apply(g,t.args);me("callback",{method:t.method,result:n})}else console.warn('reveal.js: "'+t.method+'" is is blacklisted from the postMessage API')}),!1),setInterval((function(){0===Q.wrapper.scrollTop&&0===Q.wrapper.scrollLeft||(Q.wrapper.scrollTop=0,Q.wrapper.scrollLeft=0)}),1e3),Ve().forEach((function(e){o(e,"section").forEach((function(e,t){t>0&&(e.classList.remove("present"),e.classList.remove("past"),e.classList.add("future"),e.setAttribute("aria-hidden","true"))}))})),ue(),O.readURL(),C.update(!0),setTimeout((function(){Q.slides.classList.remove("no-transition"),Q.wrapper.classList.add("ready"),pe({type:"ready",data:{indexh:a,indexv:c,currentSlide:h}})}),1),V.isPrintingPDF()&&(he(),"complete"===document.readyState?V.setupPDF():window.addEventListener("load",V.setupPDF))}function le(e){Q.statusElement.textContent=e}function ce(e){var t="";if(3===e.nodeType)t+=e.textContent;else if(1===e.nodeType){var n=e.getAttribute("aria-hidden"),i="none"===window.getComputedStyle(e).display;"true"===n||i||Array.from(e.childNodes).forEach((function(e){t+=ce(e)}))}return""===(t=t.trim())?"":t+" "}function ue(e){var t=ae({},n);if("object"===ne(e)&&r(n,e),!1!==g.isReady()){var i=Q.wrapper.querySelectorAll(".slides section").length;Q.wrapper.classList.remove(t.transition),Q.wrapper.classList.add(n.transition),Q.wrapper.setAttribute("data-transition-speed",n.transitionSpeed),Q.wrapper.setAttribute("data-background-transition",n.backgroundTransition),n.shuffle&&He(),n.rtl?Q.wrapper.classList.add("rtl"):Q.wrapper.classList.remove("rtl"),n.center?Q.wrapper.classList.add("center"):Q.wrapper.classList.remove("center"),!1===n.pause&&Te(),n.previewLinks?(ye(),be("[data-preview-link=false]")):(be(),ye("[data-preview-link]:not([data-preview-link=false])")),L.reset(),v&&(v.destroy(),v=null),i>1&&n.autoSlide&&n.autoSlideStoppable&&((v=new ee(Q.wrapper,(function(){return Math.min(Math.max((Date.now()-re)/G,0),1)}))).on("click",dt),oe=!1),"default"!==n.navigationMode?Q.wrapper.setAttribute("data-navigation-mode",n.navigationMode):Q.wrapper.removeAttribute("data-navigation-mode"),Y.configure(n,t),U.configure(n,t),H.configure(n,t),j.configure(n,t),I.configure(n,t),N.configure(n,t),R.configure(n,t),Be()}}function de(){!0,window.addEventListener("hashchange",st,!1),window.addEventListener("resize",lt,!1),n.touch&&F.bind(),n.keyboard&&I.bind(),H.bind(),j.bind(),Q.pauseOverlay.addEventListener("click",Te,!1),n.focusBodyOnPageVisibilityChange&&document.addEventListener("visibilitychange",ct,!1)}function he(){!1,F.unbind(),I.unbind(),H.unbind(),j.unbind(),window.removeEventListener("hashchange",st,!1),window.removeEventListener("resize",lt,!1),Q.pauseOverlay.removeEventListener("click",Te,!1)}function ve(t,n,i){e.addEventListener(t,n,i)}function fe(t,n,i){e.removeEventListener(t,n,i)}function ge(e){"string"==typeof e.layout&&($.layout=e.layout),"string"==typeof e.overview&&($.overview=e.overview),$.layout?l(Q.slides,$.layout+" "+$.overview):l(Q.slides,$.overview)}function pe(e){var t=e.target,n=void 0===t?Q.wrapper:t,i=e.type,a=e.data,o=e.bubbles,s=void 0===o||o,l=document.createEvent("HTMLEvents",1,2);l.initEvent(i,s,!0),r(l,a),n.dispatchEvent(l),n===Q.wrapper&&me(i)}function me(e,t){if(n.postMessageEvents&&window.parent!==window.self){var i={namespace:"reveal",eventName:e,state:Je()};r(i,t),window.parent.postMessage(JSON.stringify(i),"*")}}function ye(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from(Q.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",ut,!1)}))}function be(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"a";Array.from(Q.wrapper.querySelectorAll(e)).forEach((function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",ut,!1)}))}function we(){if(n.help){ke(),Q.overlay=document.createElement("div"),Q.overlay.classList.add("overlay"),Q.overlay.classList.add("overlay-help"),Q.wrapper.appendChild(Q.overlay);var e='<p class="title">Keyboard Shortcuts</p><br/>';for(var t in e+="<table><th>KEY</th><th>ACTION</th>",I.shortcuts)e+="<tr><td>".concat(t,"</td><td>").concat(I.shortcuts[t],"</td></tr>");for(var i in I.registeredKeyBindings)I.registeredKeyBindings[i].key&&I.registeredKeyBindings[i].description&&(e+="<tr><td>".concat(I.registeredKeyBindings[i].key,"</td><td>").concat(I.registeredKeyBindings[i].description,"</td></tr>"));e+="</table>",Q.overlay.innerHTML='\n\t\t\t\t<header>\n\t\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t</header>\n\t\t\t\t<div class="viewport">\n\t\t\t\t\t<div class="viewport-inner">'.concat(e,"</div>\n\t\t\t\t</div>\n\t\t\t"),Q.overlay.querySelector(".close").addEventListener("click",(function(e){ke(),e.preventDefault()}),!1)}}function ke(){return!!Q.overlay&&(Q.overlay.parentNode.removeChild(Q.overlay),Q.overlay=null,!0)}function Ae(){if(Q.wrapper&&!V.isPrintingPDF()){if(!n.disableLayout){f&&document.documentElement.style.setProperty("--vh",.01*window.innerHeight+"px");var e=Re(),t=k;Ee(n.width,n.height),Q.slides.style.width=e.width+"px",Q.slides.style.height=e.height+"px",k=Math.min(e.presentationWidth/e.width,e.presentationHeight/e.height),k=Math.max(k,n.minScale),1===(k=Math.min(k,n.maxScale))?(Q.slides.style.zoom="",Q.slides.style.left="",Q.slides.style.top="",Q.slides.style.bottom="",Q.slides.style.right="",ge({layout:""})):k>1&&m&&window.devicePixelRatio<2?(Q.slides.style.zoom=k,Q.slides.style.left="",Q.slides.style.top="",Q.slides.style.bottom="",Q.slides.style.right="",ge({layout:""})):(Q.slides.style.zoom="",Q.slides.style.left="50%",Q.slides.style.top="50%",Q.slides.style.bottom="auto",Q.slides.style.right="auto",ge({layout:"translate(-50%, -50%) scale("+k+")"}));for(var i=Array.from(Q.wrapper.querySelectorAll(".slides section")),a=0,r=i.length;a<r;a++){var o=i[a];"none"!==o.style.display&&(n.center||o.classList.contains("center")?o.classList.contains("stack")?o.style.top=0:o.style.top=Math.max((e.height-o.scrollHeight)/2,0)+"px":o.style.top="")}t!==k&&pe({type:"resize",data:{oldScale:t,scale:k,size:e}})}j.update(),C.updateParallax(),T.isActive()&&T.update()}}function Ee(e,t){o(Q.slides,"section > .stretch").forEach((function(n){var i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(e){var n,i=e.style.height;return e.style.height="0px",e.parentNode.style.height="auto",n=t-e.parentNode.offsetHeight,e.style.height=i+"px",e.parentNode.style.removeProperty("height"),n}return t}(n,t);if(/(img|video)/gi.test(n.nodeName)){var a=n.naturalWidth||n.videoWidth,r=n.naturalHeight||n.videoHeight,o=Math.min(e/a,i/r);n.style.width=a*o+"px",n.style.height=r*o+"px"}else n.style.width=e+"px",n.style.height=i+"px"}))}function Re(e,t){var i={width:n.width,height:n.height,presentationWidth:e||Q.wrapper.offsetWidth,presentationHeight:t||Q.wrapper.offsetHeight};return i.presentationWidth-=i.presentationWidth*n.margin,i.presentationHeight-=i.presentationHeight*n.margin,"string"==typeof i.width&&/%$/.test(i.width)&&(i.width=parseInt(i.width,10)/100*i.presentationWidth),"string"==typeof i.height&&/%$/.test(i.height)&&(i.height=parseInt(i.height,10)/100*i.presentationHeight),i}function Se(e,t){"object"===ne(e)&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function Le(e){if("object"===ne(e)&&"function"==typeof e.setAttribute&&e.classList.contains("stack")){var t=e.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(e.getAttribute(t)||0,10)}return 0}function xe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h;return e&&e.parentNode&&!!e.parentNode.nodeName.match(/section/i)}function Ce(){return!(!h||!xe(h))&&!h.nextElementSibling}function Pe(){return 0===a&&0===c}function Ne(){return!!h&&(!h.nextElementSibling&&(!xe(h)||!h.parentNode.nextElementSibling))}function Me(){if(n.pause){var e=Q.wrapper.classList.contains("paused");Ze(),Q.wrapper.classList.add("paused"),!1===e&&pe({type:"paused"})}}function Te(){var e=Q.wrapper.classList.contains("paused");Q.wrapper.classList.remove("paused"),Qe(),e&&pe({type:"resumed"})}function Ie(e){"boolean"==typeof e?e?Me():Te():De()?Te():Me()}function De(){return Q.wrapper.classList.contains("paused")}function Oe(e,t,i,r){u=h;var s=Q.wrapper.querySelectorAll(".slides>section");if(0!==s.length){void 0!==t||T.isActive()||(t=Le(s[e])),u&&u.parentNode&&u.parentNode.classList.contains("stack")&&Se(u.parentNode,c);var l=b.concat();b.length=0;var d=a||0,v=c||0;a=je(".slides>section",void 0===e?a:e),c=je(".slides>section.present>section",void 0===t?c:t);var f=a!==d||c!==v;f||(u=null);var g=s[a],p=g.querySelectorAll("section");h=p[c]||g;var m=!1;f&&u&&h&&!T.isActive()&&u.hasAttribute("data-auto-animate")&&h.hasAttribute("data-auto-animate")&&(m=!0,Q.slides.classList.add("disable-slide-transitions")),ze(),Ae(),T.isActive()&&T.update(),void 0!==i&&N.goto(i),u&&u!==h&&(u.classList.remove("present"),u.setAttribute("aria-hidden","true"),Pe()&&setTimeout((function(){o(Q.wrapper,".slides>section.stack").forEach((function(e){Se(e,0)}))}),0));e:for(var y=0,w=b.length;y<w;y++){for(var k=0;k<l.length;k++)if(l[k]===b[y]){l.splice(k,1);continue e}document.documentElement.classList.add(b[y]),pe({type:b[y]})}for(;l.length;)document.documentElement.classList.remove(l.pop());f&&pe({type:"slidechanged",data:{indexh:a,indexv:c,previousSlide:u,currentSlide:h,origin:r}}),!f&&u||(E.stopEmbeddedContent(u),E.startEmbeddedContent(h)),le(ce(h)),j.update(),H.update(),Y.update(),C.update(),C.updateParallax(),R.update(),N.update(),O.writeURL(),Qe(),m&&(setTimeout((function(){Q.slides.classList.remove("disable-slide-transitions")}),0),n.autoAnimate&&L.run(u,h))}}function Be(){he(),de(),Ae(),G=n.autoSlide,Qe(),C.create(),O.writeURL(),N.sortAll(),H.update(),j.update(),ze(),Y.update(),Y.updateVisibility(),C.update(!0),R.update(),E.formatEmbeddedContent(),!1===n.autoPlayMedia?E.stopEmbeddedContent(h,{unloadIframes:!1}):E.startEmbeddedContent(h),T.isActive()&&T.layout()}function He(){Ve().forEach((function(e,t,n){Q.slides.insertBefore(e,n[Math.floor(Math.random()*n.length)])}))}function je(e,t){var i=o(Q.wrapper,e),a=i.length,r=V.isPrintingPDF();if(a){n.loop&&(t%=a)<0&&(t=a+t),t=Math.max(Math.min(t,a-1),0);for(var s=0;s<a;s++){var l=i[s],c=n.rtl&&!xe(l);l.classList.remove("past","present","future"),l.setAttribute("hidden",""),l.setAttribute("aria-hidden","true"),l.querySelector("section")&&l.classList.add("stack"),r?l.classList.add("present"):s<t?(l.classList.add(c?"future":"past"),n.fragments&&o(l,".fragment").forEach((function(e){e.classList.add("visible"),e.classList.remove("current-fragment")}))):s>t&&(l.classList.add(c?"past":"future"),n.fragments&&o(l,".fragment.visible").forEach((function(e){e.classList.remove("visible","current-fragment")})))}var u=i[t],d=u.classList.contains("present");u.classList.add("present"),u.removeAttribute("hidden"),u.removeAttribute("aria-hidden"),d||pe({target:u,type:"visible",bubbles:!1});var h=u.getAttribute("data-state");h&&(b=b.concat(h.split(" ")))}else t=0;return t}function ze(){var e,t=Ve(),i=t.length;if(i&&void 0!==a){var r=T.isActive()?10:n.viewDistance;f&&(r=T.isActive()?6:n.mobileViewDistance),V.isPrintingPDF()&&(r=Number.MAX_VALUE);for(var s=0;s<i;s++){var l=t[s],u=o(l,"section"),d=u.length;if(e=Math.abs((a||0)-s)||0,n.loop&&(e=Math.abs(((a||0)-s)%(i-r))||0),e<r?E.load(l):E.unload(l),d)for(var h=Le(l),v=0;v<d;v++){var g=u[v];e+(s===(a||0)?Math.abs((c||0)-v):Math.abs(v-h))<r?E.load(g):E.unload(g)}}Ye()?Q.wrapper.classList.add("has-vertical-slides"):Q.wrapper.classList.remove("has-vertical-slides"),Xe()?Q.wrapper.classList.add("has-horizontal-slides"):Q.wrapper.classList.remove("has-horizontal-slides")}}function Ue(){var e=Q.wrapper.querySelectorAll(".slides>section"),t=Q.wrapper.querySelectorAll(".slides>section.present>section"),i={left:a>0,right:a<e.length-1,up:c>0,down:c<t.length-1};if(n.loop&&(e.length>1&&(i.left=!0,i.right=!0),t.length>1&&(i.up=!0,i.down=!0)),e.length>1&&"linear"===n.navigationMode&&(i.right=i.right||i.down,i.left=i.left||i.up),n.rtl){var r=i.left;i.left=i.right,i.right=r}return i}function qe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h,t=Ve(),n=0;e:for(var i=0;i<t.length;i++){for(var a=t[i],r=a.querySelectorAll("section"),o=0;o<r.length;o++){if(r[o]===e)break e;"uncounted"!==r[o].dataset.visibility&&n++}if(a===e)break;!1===a.classList.contains("stack")&&"uncounted"!==!a.dataset.visibility&&n++}return n}function We(e){var t,n=a,i=c;if(e){var r=xe(e),s=r?e.parentNode:e,l=Ve();n=Math.max(l.indexOf(s),0),i=void 0,r&&(i=Math.max(o(e.parentNode,"section").indexOf(e),0))}if(!e&&h&&h.querySelectorAll(".fragment").length>0){var u=h.querySelector(".current-fragment");t=u&&u.hasAttribute("data-fragment-index")?parseInt(u.getAttribute("data-fragment-index"),10):h.querySelectorAll(".fragment.visible").length-1}return{h:n,v:i,f:t}}function Ke(){return o(Q.wrapper,'.slides section:not(.stack):not([data-visibility="uncounted"])')}function Ve(){return o(Q.wrapper,".slides>section")}function Fe(){return o(Q.wrapper,".slides>section>section")}function Xe(){return Ve().length>1}function Ye(){return Fe().length>1}function _e(){return Ke().length}function $e(e,t){var n=Ve()[e],i=n&&n.querySelectorAll("section");return i&&i.length&&"number"==typeof t?i?i[t]:void 0:n}function Je(){var e=We();return{indexh:e.h,indexv:e.v,indexf:e.f,paused:De(),overview:T.isActive()}}function Qe(){if(Ze(),h&&!1!==n.autoSlide){var e=h.querySelector(".current-fragment");e||(e=h.querySelector(".fragment"));var t=e?e.getAttribute("data-autoslide"):null,i=h.parentNode?h.parentNode.getAttribute("data-autoslide"):null,a=h.getAttribute("data-autoslide");G=t?parseInt(t,10):a?parseInt(a,10):i?parseInt(i,10):n.autoSlide,0===h.querySelectorAll(".fragment").length&&o(h,"video, audio").forEach((function(e){e.hasAttribute("data-autoplay")&&G&&1e3*e.duration/e.playbackRate>G&&(G=1e3*e.duration/e.playbackRate+1e3)})),!G||oe||De()||T.isActive()||Ne()&&!N.availableRoutes().next&&!0!==n.loop||(ie=setTimeout((function(){"function"==typeof n.autoSlideMethod?n.autoSlideMethod():ot(),Qe()}),G),re=Date.now()),v&&v.setPlaying(-1!==ie)}}function Ze(){clearTimeout(ie),ie=-1}function Ge(){G&&!oe&&(oe=!0,pe({type:"autoslidepaused"}),clearTimeout(ie),v&&v.setPlaying(!1))}function et(){G&&oe&&(oe=!1,pe({type:"autoslideresumed"}),Qe())}function tt(){y.hasNavigatedHorizontally=!0,n.rtl?(T.isActive()||!1===N.next())&&Ue().left&&Oe(a+1,"grid"===n.navigationMode?c:void 0):(T.isActive()||!1===N.prev())&&Ue().left&&Oe(a-1,"grid"===n.navigationMode?c:void 0)}function nt(){y.hasNavigatedHorizontally=!0,n.rtl?(T.isActive()||!1===N.prev())&&Ue().right&&Oe(a-1,"grid"===n.navigationMode?c:void 0):(T.isActive()||!1===N.next())&&Ue().right&&Oe(a+1,"grid"===n.navigationMode?c:void 0)}function it(){(T.isActive()||!1===N.prev())&&Ue().up&&Oe(a,c-1)}function at(){y.hasNavigatedVertically=!0,(T.isActive()||!1===N.next())&&Ue().down&&Oe(a,c+1)}function rt(){var e;if(!1===N.prev())if(Ue().up)it();else if(e=n.rtl?o(Q.wrapper,".slides>section.future").pop():o(Q.wrapper,".slides>section.past").pop()){var t=e.querySelectorAll("section").length-1||void 0;Oe(a-1,t)}}function ot(){if(y.hasNavigatedHorizontally=!0,y.hasNavigatedVertically=!0,!1===N.next()){var e=Ue();e.down&&e.right&&n.loop&&Ce()&&(e.down=!1),e.down?at():n.rtl?tt():nt()}}function st(e){O.readURL()}function lt(e){Ae()}function ct(e){!1===document.hidden&&document.activeElement!==document.body&&("function"==typeof document.activeElement.blur&&document.activeElement.blur(),document.body.focus())}function ut(e){if(e.currentTarget&&e.currentTarget.hasAttribute("href")){var t=e.currentTarget.getAttribute("href");t&&(!function(e){ke(),Q.overlay=document.createElement("div"),Q.overlay.classList.add("overlay"),Q.overlay.classList.add("overlay-preview"),Q.wrapper.appendChild(Q.overlay),Q.overlay.innerHTML='<header>\n\t\t\t\t<a class="close" href="#"><span class="icon"></span></a>\n\t\t\t\t<a class="external" href="'.concat(e,'" target="_blank"><span class="icon"></span></a>\n\t\t\t</header>\n\t\t\t<div class="spinner"></div>\n\t\t\t<div class="viewport">\n\t\t\t\t<iframe src="').concat(e,'"></iframe>\n\t\t\t\t<small class="viewport-inner">\n\t\t\t\t\t<span class="x-frame-error">Unable to load iframe. This is likely due to the site\'s policy (x-frame-options).</span>\n\t\t\t\t</small>\n\t\t\t</div>'),Q.overlay.querySelector("iframe").addEventListener("load",(function(e){Q.overlay.classList.add("loaded")}),!1),Q.overlay.querySelector(".close").addEventListener("click",(function(e){ke(),e.preventDefault()}),!1),Q.overlay.querySelector(".external").addEventListener("click",(function(e){ke()}),!1)}(t),e.preventDefault())}}function dt(e){Ne()&&!1===n.loop?(Oe(0,0),et()):oe?et():Ge()}return r(g,{VERSION:"4.0.0-dev",initialize:function(){if(e)return Q.wrapper=e,Q.slides=e.querySelector(".slides"),!0===(n=ae({},te,{},t,{},d())).embedded?e.classList.add("reveal-viewport"):(document.body.classList.add("reveal-viewport"),document.documentElement.classList.add("reveal-full-page")),window.addEventListener("load",Ae,!1),W.load(n.dependencies).then(se),new Promise((function(e){return g.on("ready",e)}));console.warn("reveal.js can not initialize without a valid .reveal element.")},configure:ue,sync:Be,syncSlide:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h;C.sync(e),N.sync(e),E.load(e),C.update(),Y.update()},syncFragments:N.sync.bind(N),slide:Oe,left:tt,right:nt,up:it,down:at,prev:rt,next:ot,navigateLeft:tt,navigateRight:nt,navigateUp:it,navigateDown:at,navigatePrev:rt,navigateNext:ot,navigateFragment:N.goto.bind(N),prevFragment:N.prev.bind(N),nextFragment:N.next.bind(N),on:ve,off:fe,addEventListener:ve,removeEventListener:fe,layout:Ae,shuffle:He,availableRoutes:Ue,availableFragments:N.availableRoutes.bind(N),toggleHelp:function(e){"boolean"==typeof e?e?we():ke():Q.overlay?ke():we()},toggleOverview:T.toggle.bind(T),togglePause:Ie,toggleAutoSlide:function(e){"boolean"==typeof e?e?et():Ge():oe?et():Ge()},isFirstSlide:Pe,isLastSlide:Ne,isLastVerticalSlide:Ce,isVerticalSlide:xe,isPaused:De,isAutoSliding:function(){return!(!G||oe)},isSpeakerNotes:Y.isSpeakerNotesWindow.bind(Y),isOverview:T.isActive.bind(T),isPrintingPDF:V.isPrintingPDF.bind(V),loadSlide:E.load.bind(E),unloadSlide:E.unload.bind(E),addEventListeners:de,removeEventListeners:he,dispatchEvent:pe,getState:Je,setState:function(e){if("object"===ne(e)){Oe(s(e.indexh),s(e.indexv),s(e.indexf));var t=s(e.paused),n=s(e.overview);"boolean"==typeof t&&t!==De()&&Ie(t),"boolean"==typeof n&&n!==T.isActive()&&T.toggle(n)}},getSlidePastCount:qe,getProgress:function(){var e=_e(),t=qe();if(h){var n=h.querySelectorAll(".fragment");if(n.length>0){t+=h.querySelectorAll(".fragment.visible").length/n.length*.9}}return Math.min(t/(e-1),1)},getIndices:We,getSlides:Ke,getSlidesAttributes:function(){return Ke().map((function(e){for(var t={},n=0;n<e.attributes.length;n++){var i=e.attributes[n];t[i.name]=i.value}return t}))},getTotalSlides:_e,getSlide:$e,getSlideBackground:function(e,t){var n="number"==typeof e?$e(e,t):e;if(n)return n.slideBackgroundElement},getSlideNotes:Y.getSlideNotes.bind(Y),getHorizontalSlides:Ve,getVerticalSlides:Fe,hasHorizontalSlides:Xe,hasVerticalSlides:Ye,hasNavigatedHorizontally:function(){return y.hasNavigatedHorizontally},hasNavigatedVertically:function(){return y.hasNavigatedVertically},addKeyBinding:I.addKeyBinding.bind(I),removeKeyBinding:I.removeKeyBinding.bind(I),triggerKey:I.triggerKey.bind(I),registerKeyboardShortcut:I.registerKeyboardShortcut.bind(I),registerPlugin:W.registerPlugin.bind(W),hasPlugin:W.hasPlugin.bind(W),getPlugin:W.getPlugin.bind(W),getPlugins:W.getRegisteredPlugins.bind(W),getComputedSlideSize:Re,getPreviousSlide:function(){return u},getCurrentSlide:function(){return h},getScale:function(){return k},getConfig:function(){return n},getQueryHash:d,getRevealElement:function(){return e},getSlidesElement:function(){return Q.slides},getBackgroundsElement:function(){return C.element},isReady:function(){return p},announceStatus:le,getStatusText:ce,print:V,progress:j,controls:H,location:O,overview:T,fragments:N,slideContent:E,slideNumber:R,onUserInput:function(e){n.autoSlideStoppable&&Ge()},closeOverlay:ke,updateSlidesVisibility:ze,layoutSlideContents:Ee,transformSlides:ge,cueAutoSlide:Qe,cancelAutoSlide:Ze})};window.Reveal=oe;var se=[];window.Reveal.initialize=function(e){return window.Reveal=new oe(document.querySelector(".reveal"),e),se.map((function(e){return e(window.Reveal)})),window.Reveal.initialize()},["on","off","addEventListener","removeEventListener"].forEach((function(e){window.Reveal[e]=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];se.push((function(t){var i;return(i=t[e]).call.apply(i,[null].concat(n))}))}}))}]); \ No newline at end of file
diff --git a/js/controllers/pointer.js b/js/controllers/pointer.js
new file mode 100644
index 0000000..aec19d5
--- /dev/null
+++ b/js/controllers/pointer.js
@@ -0,0 +1,118 @@
+/**
+ * Handles hiding of the pointer/cursor when inactive.
+ */
+export default class Pointer {
+
+ constructor( Reveal ) {
+
+ this.Reveal = Reveal;
+
+ // Throttles mouse wheel navigation
+ this.lastMouseWheelStep = 0;
+
+ // Is the mouse pointer currently hidden from view
+ this.cursorHidden = false;
+
+ // Timeout used to determine when the cursor is inactive
+ this.cursorInactiveTimeout = 0;
+
+ this.onDocumentCursorActive = this.onDocumentCursorActive.bind( this );
+ this.onDocumentMouseScroll = this.onDocumentMouseScroll.bind( this );
+
+ }
+
+ /**
+ * Called when the reveal.js config is updated.
+ */
+ configure( config, oldConfig ) {
+
+ if( config.mouseWheel ) {
+ document.addEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF
+ document.addEventListener( 'mousewheel', this.onDocumentMouseScroll, false );
+ }
+ else {
+ document.removeEventListener( 'DOMMouseScroll', this.onDocumentMouseScroll, false ); // FF
+ document.removeEventListener( 'mousewheel', this.onDocumentMouseScroll, false );
+ }
+
+ // Auto-hide the mouse pointer when its inactive
+ if( config.hideInactiveCursor ) {
+ document.addEventListener( 'mousemove', this.onDocumentCursorActive, false );
+ document.addEventListener( 'mousedown', this.onDocumentCursorActive, false );
+ }
+ else {
+ this.showCursor();
+
+ document.removeEventListener( 'mousemove', this.onDocumentCursorActive, false );
+ document.removeEventListener( 'mousedown', this.onDocumentCursorActive, false );
+ }
+
+ }
+
+ /**
+ * Shows the mouse pointer after it has been hidden with
+ * #hideCursor.
+ */
+ showCursor() {
+
+ if( this.cursorHidden ) {
+ this.cursorHidden = false;
+ this.Reveal.getRevealElement().style.cursor = '';
+ }
+
+ }
+
+ /**
+ * Hides the mouse pointer when it's on top of the .reveal
+ * container.
+ */
+ hideCursor() {
+
+ if( this.cursorHidden === false ) {
+ this.cursorHidden = true;
+ this.Reveal.getRevealElement().style.cursor = 'none';
+ }
+
+ }
+
+ /**
+ * Called whenever there is mouse input at the document level
+ * to determine if the cursor is active or not.
+ *
+ * @param {object} event
+ */
+ onDocumentCursorActive( event ) {
+
+ this.showCursor();
+
+ clearTimeout( this.cursorInactiveTimeout );
+
+ this.cursorInactiveTimeout = setTimeout( this.hideCursor.bind( this ), this.Reveal.getConfig().hideCursorTime );
+
+ }
+
+ /**
+ * Handles mouse wheel scrolling, throttled to avoid skipping
+ * multiple slides.
+ *
+ * @param {object} event
+ */
+ onDocumentMouseScroll( event ) {
+
+ if( Date.now() - this.lastMouseWheelStep > 1000 ) {
+
+ this.lastMouseWheelStep = Date.now();
+
+ let delta = event.detail || -event.wheelDelta;
+ if( delta > 0 ) {
+ this.Reveal.next();
+ }
+ else if( delta < 0 ) {
+ this.Reveal.prev();
+ }
+
+ }
+
+ }
+
+} \ No newline at end of file
diff --git a/js/reveal.js b/js/reveal.js
index be161b7..09ec9c7 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -8,6 +8,7 @@ import Keyboard from './controllers/keyboard.js'
import Location from './controllers/location.js'
import Controls from './controllers/controls.js'
import Progress from './controllers/progress.js'
+import Pointer from './controllers/pointer.js'
import Plugins from './controllers/plugins.js'
import Print from './controllers/print.js'
import Touch from './controllers/touch.js'
@@ -87,6 +88,7 @@ export default function( revealElement, options ) {
location = new Location( Reveal ),
controls = new Controls( Reveal ),
progress = new Progress( Reveal ),
+ pointer = new Pointer( Reveal ),
plugins = new Plugins( Reveal ),
print = new Print( Reveal ),
touch = new Touch( Reveal ),
@@ -102,15 +104,6 @@ export default function( revealElement, options ) {
// List of asynchronously loaded reveal.js dependencies
asyncDependencies = [],
- // Throttles mouse wheel navigation
- lastMouseWheelStep = 0,
-
- // Is the mouse pointer currently hidden from view
- cursorHidden = false,
-
- // Timeout used to determine when the cursor is inactive
- cursorInactiveTimeout = 0,
-
// Flags if the interaction event listeners are bound
eventsAreBound = false,
@@ -437,27 +430,6 @@ export default function( revealElement, options ) {
resume();
}
- if( config.mouseWheel ) {
- document.addEventListener( 'DOMMouseScroll', onDocumentMouseScroll, false ); // FF
- document.addEventListener( 'mousewheel', onDocumentMouseScroll, false );
- }
- else {
- document.removeEventListener( 'DOMMouseScroll', onDocumentMouseScroll, false ); // FF
- document.removeEventListener( 'mousewheel', onDocumentMouseScroll, false );
- }
-
- // Auto-hide the mouse pointer when its inactive
- if( config.hideInactiveCursor ) {
- document.addEventListener( 'mousemove', onDocumentCursorActive, false );
- document.addEventListener( 'mousedown', onDocumentCursorActive, false );
- }
- else {
- showCursor();
-
- document.removeEventListener( 'mousemove', onDocumentCursorActive, false );
- document.removeEventListener( 'mousedown', onDocumentCursorActive, false );
- }
-
// Iframe link previews
if( config.previewLinks ) {
enablePreviewLinks();
@@ -496,6 +468,7 @@ export default function( revealElement, options ) {
}
notes.configure( config, oldConfig );
+ pointer.configure( config, oldConfig );
controls.configure( config, oldConfig );
progress.configure( config, oldConfig );
keyboard.configure( config, oldConfig );
@@ -1080,32 +1053,6 @@ export default function( revealElement, options ) {
}
/**
- * Shows the mouse pointer after it has been hidden with
- * #hideCursor.
- */
- function showCursor() {
-
- if( cursorHidden ) {
- cursorHidden = false;
- dom.wrapper.style.cursor = '';
- }
-
- }
-
- /**
- * Hides the mouse pointer when it's on top of the .reveal
- * container.
- */
- function hideCursor() {
-
- if( cursorHidden === false ) {
- cursorHidden = true;
- dom.wrapper.style.cursor = 'none';
- }
-
- }
-
- /**
* Enters the paused mode which fades everything on screen to
* black.
*/
@@ -2315,46 +2262,6 @@ export default function( revealElement, options ) {
}
/**
- * Called whenever there is mouse input at the document level
- * to determine if the cursor is active or not.
- *
- * @param {object} event
- */
- function onDocumentCursorActive( event ) {
-
- showCursor();
-
- clearTimeout( cursorInactiveTimeout );
-
- cursorInactiveTimeout = setTimeout( hideCursor, config.hideCursorTime );
-
- }
-
- /**
- * Handles mouse wheel scrolling, throttled to avoid skipping
- * multiple slides.
- *
- * @param {object} event
- */
- function onDocumentMouseScroll( event ) {
-
- if( Date.now() - lastMouseWheelStep > 600 ) {
-
- lastMouseWheelStep = Date.now();
-
- let delta = event.detail || -event.wheelDelta;
- if( delta > 0 ) {
- navigateNext();
- }
- else if( delta < 0 ) {
- navigatePrev();
- }
-
- }
-
- }
-
- /**
* Handler for the window level 'hashchange' event.
*
* @param {object} [event]