diff options
author | Hakim El Hattab <hakim.elhattab@gmail.com> | 2013-10-30 12:22:00 -0400 |
---|---|---|
committer | Hakim El Hattab <hakim.elhattab@gmail.com> | 2013-10-30 12:22:00 -0400 |
commit | 89cc3f3a29c1b18ac716dde86dac8c81090ddf61 (patch) | |
tree | ebf49116efbc88d8d219d29c0ecb8fd6bf572c4d /js | |
parent | 080ae79b540c5cb9c16e1613322fec1f9c730b34 (diff) | |
download | fosdem-2018-presentation-89cc3f3a29c1b18ac716dde86dac8c81090ddf61.tar fosdem-2018-presentation-89cc3f3a29c1b18ac716dde86dac8c81090ddf61.tar.gz |
don't transition between identical backgrounds
Diffstat (limited to 'js')
-rw-r--r-- | js/reveal.js | 52 | ||||
-rw-r--r-- | js/reveal.min.js | 4 |
2 files changed, 49 insertions, 7 deletions
diff --git a/js/reveal.js b/js/reveal.js index e7debb5..a69a91f 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -122,6 +122,8 @@ var Reveal = (function(){ previousSlide, currentSlide, + previousBackgroundHash, + // Slides may hold a data-state attribute which we pick up and apply // as a class to the body. This list contains the combined state of // all current slides. @@ -442,6 +444,7 @@ var Reveal = (function(){ }; var element = document.createElement( 'div' ); + element.setAttribute( 'data-background-hash', data.background + data.backgroundSize + data.backgroundImage + data.backgroundColor + data.backgroundRepeat + data.backgroundPosition + data.backgroundTransition ); element.className = 'slide-background'; if( data.background ) { @@ -1891,24 +1894,63 @@ var Reveal = (function(){ */ function updateBackground() { + var currentBackground = null; + + // Reverse past/future classes when in RTL mode + var horizontalPast = config.rtl ? 'future' : 'past', + horizontalFuture = config.rtl ? 'past' : 'future'; + // Update the classes of all backgrounds to match the // states of their slides (past/present/future) toArray( dom.background.childNodes ).forEach( function( backgroundh, h ) { - // Reverse past/future classes when in RTL mode - var horizontalPast = config.rtl ? 'future' : 'past', - horizontalFuture = config.rtl ? 'past' : 'future'; + backgroundh.className = 'slide-background '; - backgroundh.className = 'slide-background ' + ( h < indexh ? horizontalPast : h > indexh ? horizontalFuture : 'present' ); + if( h < indexh ) { + backgroundh.className += horizontalPast; + } + else if ( h > indexh ) { + backgroundh.className += horizontalFuture; + } + else { + backgroundh.className += 'present'; + + // Store a reference to the current background element + currentBackground = backgroundh; + } toArray( backgroundh.childNodes ).forEach( function( backgroundv, v ) { - backgroundv.className = 'slide-background ' + ( v < indexv ? 'past' : v > indexv ? 'future' : 'present' ); + backgroundv.className = 'slide-background '; + + if( v < indexv ) { + backgroundv.className += 'past'; + } + else if ( v > indexv ) { + backgroundv.className += 'future'; + } + else { + backgroundv.className += 'present'; + + // Only if this is the present horizontal and vertical slide + if( h === indexh ) currentBackground = backgroundv; + } } ); } ); + // Don't transition between identical backgrounds. This + // prevents unwanted flicker. + if( currentBackground ) { + var currentBackgroundHash = currentBackground.getAttribute( 'data-background-hash' ); + if( currentBackgroundHash === previousBackgroundHash ) { + dom.background.classList.add( 'no-transition' ); + } + + previousBackgroundHash = currentBackgroundHash; + } + // Allow the first background to apply without transition setTimeout( function() { dom.background.classList.remove( 'no-transition' ); diff --git a/js/reveal.min.js b/js/reveal.min.js index c114ee6..c0e9c27 100644 --- a/js/reveal.min.js +++ b/js/reveal.min.js @@ -1,8 +1,8 @@ /*! - * reveal.js 2.6.0-dev (2013-10-28, 08:44) + * reveal.js 2.6.0-dev (2013-10-30, 12:19) * http://lab.hakim.se/reveal-js * MIT licensed * * Copyright (C) 2013 Hakim El Hattab, http://hakim.se */ -var Reveal=function(){"use strict";function a(a){if(b(),!ac.transforms2d&&!ac.transforms3d)return document.body.setAttribute("class","no-transforms"),void 0;window.addEventListener("load",C,!1);var d=Reveal.getQueryHash();"undefined"!=typeof d.dependencies&&delete d.dependencies,l(Xb,a),l(Xb,d),s(),c()}function b(){ac.transforms3d="WebkitPerspective"in document.body.style||"MozPerspective"in document.body.style||"msPerspective"in document.body.style||"OPerspective"in document.body.style||"perspective"in document.body.style,ac.transforms2d="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style,ac.requestAnimationFrameMethod=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame,ac.requestAnimationFrame="function"==typeof ac.requestAnimationFrameMethod,ac.canvas=!!document.createElement("canvas").getContext,Rb=navigator.userAgent.match(/(iphone|ipod|android)/gi)}function c(){function a(){c.length&&head.js.apply(null,c),d()}for(var b=[],c=[],e=0,f=Xb.dependencies.length;f>e;e++){var g=Xb.dependencies[e];(!g.condition||g.condition())&&(g.async?c.push(g.src):b.push(g.src),"function"==typeof g.callback&&head.ready(g.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],g.callback))}b.length?(head.ready(a),head.js.apply(null,b)):a()}function d(){f(),e(),i(),bb(),setTimeout(function(){_b.slides.classList.remove("no-transition"),Yb=!0,u("ready",{indexh:Nb,indexv:Ob,currentSlide:Qb})},1)}function e(){var a=m(document.querySelectorAll(Ub));a.forEach(function(a){var b=m(a.querySelectorAll("section"));b.forEach(function(a,b){b>0&&a.classList.add("future")})})}function f(){_b.theme=document.querySelector("#theme"),_b.wrapper=document.querySelector(".reveal"),_b.slides=document.querySelector(".reveal .slides"),_b.slides.classList.add("no-transition"),_b.background=g(_b.wrapper,"div","backgrounds",null),_b.progress=g(_b.wrapper,"div","progress","<span></span>"),_b.progressbar=_b.progress.querySelector("span"),g(_b.wrapper,"aside","controls",'<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>'),g(_b.wrapper,"div","state-background",null),g(_b.wrapper,"div","pause-overlay",null),_b.controls=document.querySelector(".reveal .controls"),_b.controlsLeft=m(document.querySelectorAll(".navigate-left")),_b.controlsRight=m(document.querySelectorAll(".navigate-right")),_b.controlsUp=m(document.querySelectorAll(".navigate-up")),_b.controlsDown=m(document.querySelectorAll(".navigate-down")),_b.controlsPrev=m(document.querySelectorAll(".navigate-prev")),_b.controlsNext=m(document.querySelectorAll(".navigate-next"))}function g(a,b,c,d){var e=a.querySelector("."+c);return e||(e=document.createElement(b),e.classList.add(c),null!==d&&(e.innerHTML=d),a.appendChild(e)),e}function h(){function a(a,b){var c={background:a.getAttribute("data-background"),backgroundSize:a.getAttribute("data-background-size"),backgroundImage:a.getAttribute("data-background-image"),backgroundColor:a.getAttribute("data-background-color"),backgroundRepeat:a.getAttribute("data-background-repeat"),backgroundPosition:a.getAttribute("data-background-position"),backgroundTransition:a.getAttribute("data-background-transition")},d=document.createElement("div");return d.className="slide-background",c.background&&(/^(http|file|\/\/)/gi.test(c.background)||/\.(svg|png|jpg|jpeg|gif|bmp)$/gi.test(c.background)?d.style.backgroundImage="url("+c.background+")":d.style.background=c.background),c.backgroundSize&&(d.style.backgroundSize=c.backgroundSize),c.backgroundImage&&(d.style.backgroundImage='url("'+c.backgroundImage+'")'),c.backgroundColor&&(d.style.backgroundColor=c.backgroundColor),c.backgroundRepeat&&(d.style.backgroundRepeat=c.backgroundRepeat),c.backgroundPosition&&(d.style.backgroundPosition=c.backgroundPosition),c.backgroundTransition&&d.setAttribute("data-background-transition",c.backgroundTransition),b.appendChild(d),d}r()&&document.body.classList.add("print-pdf"),_b.background.innerHTML="",_b.background.classList.add("no-transition"),m(document.querySelectorAll(Ub)).forEach(function(b){var c;c=r()?a(b,b):a(b,_b.background),m(b.querySelectorAll("section")).forEach(function(b){r()?a(b,b):a(b,c)})}),Xb.parallaxBackgroundImage?(_b.background.style.backgroundImage='url("'+Xb.parallaxBackgroundImage+'")',_b.background.style.backgroundSize=Xb.parallaxBackgroundSize,setTimeout(function(){_b.wrapper.classList.add("has-parallax-background")},1)):(_b.background.style.backgroundImage="",_b.wrapper.classList.remove("has-parallax-background"))}function i(a){var b=document.querySelectorAll(Tb).length;if(_b.wrapper.classList.remove(Xb.transition),"object"==typeof a&&l(Xb,a),ac.transforms3d===!1&&(Xb.transition="linear"),_b.wrapper.classList.add(Xb.transition),_b.wrapper.setAttribute("data-transition-speed",Xb.transitionSpeed),_b.wrapper.setAttribute("data-background-transition",Xb.backgroundTransition),_b.controls.style.display=Xb.controls?"block":"none",_b.progress.style.display=Xb.progress?"block":"none",Xb.rtl?_b.wrapper.classList.add("rtl"):_b.wrapper.classList.remove("rtl"),Xb.center?_b.wrapper.classList.add("center"):_b.wrapper.classList.remove("center"),Xb.mouseWheel?(document.addEventListener("DOMMouseScroll",yb,!1),document.addEventListener("mousewheel",yb,!1)):(document.removeEventListener("DOMMouseScroll",yb,!1),document.removeEventListener("mousewheel",yb,!1)),Xb.rollingLinks?v():w(),Xb.previewLinks?x():(y(),x("[data-preview-link]")),b>1&&Xb.autoSlide&&Xb.autoSlideStoppable&&ac.canvas&&ac.requestAnimationFrame?(Sb=new Mb(_b.wrapper,function(){return Math.min(Math.max((Date.now()-ic)/gc,0),1)}),Sb.on("click",Lb),jc=!1):Sb&&(Sb.destroy(),Sb=null),Xb.theme&&_b.theme){var c=_b.theme.getAttribute("href"),d=/[^\/]*?(?=\.css)/,e=c.match(d)[0];Xb.theme!==e&&(c=c.replace(d,Xb.theme),_b.theme.setAttribute("href",c))}R()}function j(){if(fc=!0,window.addEventListener("hashchange",Gb,!1),window.addEventListener("resize",Hb,!1),Xb.touch&&(_b.wrapper.addEventListener("touchstart",sb,!1),_b.wrapper.addEventListener("touchmove",tb,!1),_b.wrapper.addEventListener("touchend",ub,!1),window.navigator.msPointerEnabled&&(_b.wrapper.addEventListener("MSPointerDown",vb,!1),_b.wrapper.addEventListener("MSPointerMove",wb,!1),_b.wrapper.addEventListener("MSPointerUp",xb,!1))),Xb.keyboard&&document.addEventListener("keydown",rb,!1),Xb.progress&&_b.progress&&_b.progress.addEventListener("click",zb,!1),Xb.focusBodyOnPageVisiblityChange){var a;"hidden"in document?a="visibilitychange":"msHidden"in document?a="msvisibilitychange":"webkitHidden"in document&&(a="webkitvisibilitychange"),a&&document.addEventListener(a,Ib,!1)}["touchstart","click"].forEach(function(a){_b.controlsLeft.forEach(function(b){b.addEventListener(a,Ab,!1)}),_b.controlsRight.forEach(function(b){b.addEventListener(a,Bb,!1)}),_b.controlsUp.forEach(function(b){b.addEventListener(a,Cb,!1)}),_b.controlsDown.forEach(function(b){b.addEventListener(a,Db,!1)}),_b.controlsPrev.forEach(function(b){b.addEventListener(a,Eb,!1)}),_b.controlsNext.forEach(function(b){b.addEventListener(a,Fb,!1)})})}function k(){fc=!1,document.removeEventListener("keydown",rb,!1),window.removeEventListener("hashchange",Gb,!1),window.removeEventListener("resize",Hb,!1),_b.wrapper.removeEventListener("touchstart",sb,!1),_b.wrapper.removeEventListener("touchmove",tb,!1),_b.wrapper.removeEventListener("touchend",ub,!1),window.navigator.msPointerEnabled&&(_b.wrapper.removeEventListener("MSPointerDown",vb,!1),_b.wrapper.removeEventListener("MSPointerMove",wb,!1),_b.wrapper.removeEventListener("MSPointerUp",xb,!1)),Xb.progress&&_b.progress&&_b.progress.removeEventListener("click",zb,!1),["touchstart","click"].forEach(function(a){_b.controlsLeft.forEach(function(b){b.removeEventListener(a,Ab,!1)}),_b.controlsRight.forEach(function(b){b.removeEventListener(a,Bb,!1)}),_b.controlsUp.forEach(function(b){b.removeEventListener(a,Cb,!1)}),_b.controlsDown.forEach(function(b){b.removeEventListener(a,Db,!1)}),_b.controlsPrev.forEach(function(b){b.removeEventListener(a,Eb,!1)}),_b.controlsNext.forEach(function(b){b.removeEventListener(a,Fb,!1)})})}function l(a,b){for(var c in b)a[c]=b[c]}function m(a){return Array.prototype.slice.call(a)}function n(a,b){var c=a.x-b.x,d=a.y-b.y;return Math.sqrt(c*c+d*d)}function o(a,b){a.style.WebkitTransform=b,a.style.MozTransform=b,a.style.msTransform=b,a.style.OTransform=b,a.style.transform=b}function p(a){var b=0;if(a){var c=0;m(a.childNodes).forEach(function(a){"number"==typeof a.offsetTop&&a.style&&("absolute"===a.style.position&&(c+=1),b=Math.max(b,a.offsetTop+a.offsetHeight))}),0===c&&(b=a.offsetHeight)}return b}function q(a,b){if(b=b||0,a){var c=a.parentNode,d=c.childNodes;m(d).forEach(function(c){if("number"==typeof c.offsetHeight&&c!==a){var d=window.getComputedStyle(c),e=parseInt(d.marginTop,10),f=parseInt(d.marginBottom,10);b-=c.offsetHeight+e+f}});var e=window.getComputedStyle(a);b-=parseInt(e.marginTop,10)+parseInt(e.marginBottom,10)}return b}function r(){return/print-pdf/gi.test(window.location.search)}function s(){Xb.hideAddressBar&&Rb&&(window.addEventListener("load",t,!1),window.addEventListener("orientationchange",t,!1))}function t(){setTimeout(function(){window.scrollTo(0,1)},10)}function u(a,b){var c=document.createEvent("HTMLEvents",1,2);c.initEvent(a,!0,!0),l(c,b),_b.wrapper.dispatchEvent(c)}function v(){if(ac.transforms3d&&!("msPerspective"in document.body.style))for(var a=document.querySelectorAll(Tb+" a:not(.image)"),b=0,c=a.length;c>b;b++){var d=a[b];if(!(!d.textContent||d.querySelector("*")||d.className&&d.classList.contains(d,"roll"))){var e=document.createElement("span");e.setAttribute("data-title",d.text),e.innerHTML=d.innerHTML,d.classList.add("roll"),d.innerHTML="",d.appendChild(e)}}}function w(){for(var a=document.querySelectorAll(Tb+" a.roll"),b=0,c=a.length;c>b;b++){var d=a[b],e=d.querySelector("span");e&&(d.classList.remove("roll"),d.innerHTML=e.innerHTML)}}function x(a){var b=m(document.querySelectorAll(a?a:"a"));b.forEach(function(a){/^(http|www)/gi.test(a.getAttribute("href"))&&a.addEventListener("click",Kb,!1)})}function y(){var a=m(document.querySelectorAll("a"));a.forEach(function(a){/^(http|www)/gi.test(a.getAttribute("href"))&&a.removeEventListener("click",Kb,!1)})}function z(a){A(),_b.preview=document.createElement("div"),_b.preview.classList.add("preview-link-overlay"),_b.wrapper.appendChild(_b.preview),_b.preview.innerHTML=["<header>",'<a class="close" href="#"><span class="icon"></span></a>','<a class="external" href="'+a+'" target="_blank"><span class="icon"></span></a>',"</header>",'<div class="spinner"></div>','<div class="viewport">','<iframe src="'+a+'"></iframe>',"</div>"].join(""),_b.preview.querySelector("iframe").addEventListener("load",function(){_b.preview.classList.add("loaded")},!1),_b.preview.querySelector(".close").addEventListener("click",function(a){A(),a.preventDefault()},!1),_b.preview.querySelector(".external").addEventListener("click",function(){A()},!1),setTimeout(function(){_b.preview.classList.add("visible")},1)}function A(){_b.preview&&(_b.preview.setAttribute("src",""),_b.preview.parentNode.removeChild(_b.preview),_b.preview=null)}function B(a){var b=m(a);return b.forEach(function(a,b){a.hasAttribute("data-fragment-index")||a.setAttribute("data-fragment-index",b)}),b.sort(function(a,b){return a.getAttribute("data-fragment-index")-b.getAttribute("data-fragment-index")}),b}function C(){if(_b.wrapper&&!r()){var a=_b.wrapper.offsetWidth,b=_b.wrapper.offsetHeight;a-=b*Xb.margin,b-=b*Xb.margin;var c=Xb.width,d=Xb.height,e=20;D(Xb.width,Xb.height,e),"string"==typeof c&&/%$/.test(c)&&(c=parseInt(c,10)/100*a),"string"==typeof d&&/%$/.test(d)&&(d=parseInt(d,10)/100*b),_b.slides.style.width=c+"px",_b.slides.style.height=d+"px",$b=Math.min(a/c,b/d),$b=Math.max($b,Xb.minScale),$b=Math.min($b,Xb.maxScale),"undefined"==typeof _b.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)?o(_b.slides,"translate(-50%, -50%) scale("+$b+") translate(50%, 50%)"):_b.slides.style.zoom=$b;for(var f=m(document.querySelectorAll(Tb)),g=0,h=f.length;h>g;g++){var i=f[g];"none"!==i.style.display&&(i.style.top=Xb.center||i.classList.contains("center")?i.classList.contains("stack")?0:Math.max(-(p(i)/2)-e,-d/2)+"px":"")}U(),X()}}function D(a,b,c){m(_b.slides.querySelectorAll("section > .stretch")).forEach(function(d){var e=q(d,b-2*c);if(/(img|video)/gi.test(d.nodeName)){var f=d.naturalWidth||d.videoWidth,g=d.naturalHeight||d.videoHeight,h=Math.min(a/f,e/g);d.style.width=f*h+"px",d.style.height=g*h+"px"}else d.style.width=a+"px",d.style.height=e+"px"})}function E(a,b){"object"==typeof a&&"function"==typeof a.setAttribute&&a.setAttribute("data-previous-indexv",b||0)}function F(a){if("object"==typeof a&&"function"==typeof a.setAttribute&&a.classList.contains("stack")){var b=a.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(a.getAttribute(b)||0,10)}return 0}function G(){if(Xb.overview){hb();var a=_b.wrapper.classList.contains("overview"),b=window.innerWidth<400?1e3:2500;_b.wrapper.classList.add("overview"),_b.wrapper.classList.remove("overview-deactivating"),clearTimeout(dc),clearTimeout(ec),dc=setTimeout(function(){for(var c=document.querySelectorAll(Ub),d=0,e=c.length;e>d;d++){var f=c[d],g=Xb.rtl?-105:105;if(f.setAttribute("data-index-h",d),o(f,"translateZ(-"+b+"px) translate("+(d-Nb)*g+"%, 0%)"),f.classList.contains("stack"))for(var h=f.querySelectorAll("section"),i=0,j=h.length;j>i;i++){var k=d===Nb?Ob:F(f),l=h[i];l.setAttribute("data-index-h",d),l.setAttribute("data-index-v",i),o(l,"translate(0%, "+105*(i-k)+"%)"),l.addEventListener("click",Jb,!0)}else f.addEventListener("click",Jb,!0)}T(),C(),a||u("overviewshown",{indexh:Nb,indexv:Ob,currentSlide:Qb})},10)}}function H(){Xb.overview&&(clearTimeout(dc),clearTimeout(ec),_b.wrapper.classList.remove("overview"),_b.wrapper.classList.add("overview-deactivating"),ec=setTimeout(function(){_b.wrapper.classList.remove("overview-deactivating")},1),m(document.querySelectorAll(Tb)).forEach(function(a){o(a,""),a.removeEventListener("click",Jb,!0)}),Q(Nb,Ob),gb(),u("overviewhidden",{indexh:Nb,indexv:Ob,currentSlide:Qb}))}function I(a){"boolean"==typeof a?a?G():H():J()?H():G()}function J(){return _b.wrapper.classList.contains("overview")}function K(a){return a=a?a:Qb,a&&a.parentNode&&!!a.parentNode.nodeName.match(/section/i)}function L(){var a=document.body,b=a.requestFullScreen||a.webkitRequestFullscreen||a.webkitRequestFullScreen||a.mozRequestFullScreen||a.msRequestFullScreen;b&&b.apply(a)}function M(){var a=_b.wrapper.classList.contains("paused");hb(),_b.wrapper.classList.add("paused"),a===!1&&u("paused")}function N(){var a=_b.wrapper.classList.contains("paused");_b.wrapper.classList.remove("paused"),gb(),a&&u("resumed")}function O(){P()?N():M()}function P(){return _b.wrapper.classList.contains("paused")}function Q(a,b,c,d){Pb=Qb;var e=document.querySelectorAll(Ub);void 0===b&&(b=F(e[a])),Pb&&Pb.parentNode&&Pb.parentNode.classList.contains("stack")&&E(Pb.parentNode,Ob);var f=Zb.concat();Zb.length=0;var g=Nb||0,h=Ob||0;Nb=S(Ub,void 0===a?Nb:a),Ob=S(Vb,void 0===b?Ob:b),T(),C();a:for(var i=0,j=Zb.length;j>i;i++){for(var k=0;k<f.length;k++)if(f[k]===Zb[i]){f.splice(k,1);continue a}document.documentElement.classList.add(Zb[i]),u(Zb[i])}for(;f.length;)document.documentElement.classList.remove(f.pop());J()&&G();var l=e[Nb],n=l.querySelectorAll("section");if(Qb=n[Ob]||l,"undefined"!=typeof c){var o=B(Qb.querySelectorAll(".fragment"));m(o).forEach(function(a,b){c>b?a.classList.add("visible"):a.classList.remove("visible")})}var p=Nb!==g||Ob!==h;p?u("slidechanged",{indexh:Nb,indexv:Ob,previousSlide:Pb,currentSlide:Qb,origin:d}):Pb=null,Pb&&(Pb.classList.remove("present"),document.querySelector(Wb).classList.contains("present")&&setTimeout(function(){var a,b=m(document.querySelectorAll(Ub+".stack"));for(a in b)b[a]&&E(b[a],0)},0)),p&&(_(Pb),$(Qb)),V(),U(),W(),X(),cb(),gb()}function R(){k(),j(),C(),gc=Xb.autoSlide,gb(),h(),V(),U(),W()}function S(a,b){var c=m(document.querySelectorAll(a)),d=c.length;if(d){Xb.loop&&(b%=d,0>b&&(b=d+b)),b=Math.max(Math.min(b,d-1),0);for(var e=0;d>e;e++){var f=c[e],g=Xb.rtl&&!K(f);if(f.classList.remove("past"),f.classList.remove("present"),f.classList.remove("future"),f.setAttribute("hidden",""),b>e)f.classList.add(g?"future":"past");else if(e>b){f.classList.add(g?"past":"future");for(var h=m(f.querySelectorAll(".fragment.visible"));h.length;)h.pop().classList.remove("visible")}f.querySelector("section")&&f.classList.add("stack")}c[b].classList.add("present"),c[b].removeAttribute("hidden");var i=c[b].getAttribute("data-state");i&&(Zb=Zb.concat(i.split(" ")))}else b=0;return b}function T(){var a,b,c=m(document.querySelectorAll(Ub)),d=c.length;if(d){var e=J()?10:Xb.viewDistance;Rb&&(e=J()?6:1);for(var f=0;d>f;f++){var g=c[f],h=m(g.querySelectorAll("section")),i=h.length;if(a=Math.abs((Nb-f)%(d-e))||0,g.style.display=a>e?"none":"block",i)for(var j=F(g),k=0;i>k;k++){var l=h[k];b=f===Nb?Math.abs(Ob-k):Math.abs(k-j),l.style.display=a+b>e?"none":"block"}}}}function U(){if(Xb.progress&&_b.progress){var a=m(document.querySelectorAll(Ub)),b=document.querySelectorAll(Tb+":not(.stack)").length,c=0;a:for(var d=0;d<a.length;d++){for(var e=a[d],f=m(e.querySelectorAll("section")),g=0;g<f.length;g++){if(f[g].classList.contains("present"))break a;c++}if(e.classList.contains("present"))break;e.classList.contains("stack")===!1&&c++}_b.progressbar.style.width=c/(b-1)*window.innerWidth+"px"}}function V(){var a=Y(),b=Z();_b.controlsLeft.concat(_b.controlsRight).concat(_b.controlsUp).concat(_b.controlsDown).concat(_b.controlsPrev).concat(_b.controlsNext).forEach(function(a){a.classList.remove("enabled"),a.classList.remove("fragmented")}),a.left&&_b.controlsLeft.forEach(function(a){a.classList.add("enabled")}),a.right&&_b.controlsRight.forEach(function(a){a.classList.add("enabled")}),a.up&&_b.controlsUp.forEach(function(a){a.classList.add("enabled")}),a.down&&_b.controlsDown.forEach(function(a){a.classList.add("enabled")}),(a.left||a.up)&&_b.controlsPrev.forEach(function(a){a.classList.add("enabled")}),(a.right||a.down)&&_b.controlsNext.forEach(function(a){a.classList.add("enabled")}),Qb&&(b.prev&&_b.controlsPrev.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&_b.controlsNext.forEach(function(a){a.classList.add("fragmented","enabled")}),K(Qb)?(b.prev&&_b.controlsUp.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&_b.controlsDown.forEach(function(a){a.classList.add("fragmented","enabled")})):(b.prev&&_b.controlsLeft.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&_b.controlsRight.forEach(function(a){a.classList.add("fragmented","enabled")})))}function W(){m(_b.background.childNodes).forEach(function(a,b){var c=Xb.rtl?"future":"past",d=Xb.rtl?"past":"future";a.className="slide-background "+(Nb>b?c:b>Nb?d:"present"),m(a.childNodes).forEach(function(a,b){a.className="slide-background "+(Ob>b?"past":b>Ob?"future":"present")})}),setTimeout(function(){_b.background.classList.remove("no-transition")},1)}function X(){if(Xb.parallaxBackgroundImage){var a,b,c=document.querySelectorAll(Ub),d=document.querySelectorAll(Vb),e=_b.background.style.backgroundSize.split(" ");1===e.length?a=b=parseInt(e[0],10):(a=parseInt(e[0],10),b=parseInt(e[1],10));var f=_b.background.offsetWidth,g=c.length,h=-(a-f)/(g-1)*Nb,i=_b.background.offsetHeight,j=d.length,k=j>0?-(b-i)/(j-1)*Ob:0;_b.background.style.backgroundPosition=h+"px "+k+"px"}}function Y(){var a=document.querySelectorAll(Ub),b=document.querySelectorAll(Vb),c={left:Nb>0||Xb.loop,right:Nb<a.length-1||Xb.loop,up:Ob>0,down:Ob<b.length-1};if(Xb.rtl){var d=c.left;c.left=c.right,c.right=d}return c}function Z(){if(Qb&&Xb.fragments){var a=Qb.querySelectorAll(".fragment"),b=Qb.querySelectorAll(".fragment:not(.visible)");return{prev:a.length-b.length>0,next:!!b.length}}return{prev:!1,next:!1}}function $(a){a&&!ab()&&(m(a.querySelectorAll("video, audio")).forEach(function(a){a.hasAttribute("data-autoplay")&&a.play()}),m(a.querySelectorAll("iframe")).forEach(function(a){a.contentWindow.postMessage("slide:start","*")}),m(a.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(a){a.hasAttribute("data-autoplay")&&a.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")}))}function _(a){a&&(m(a.querySelectorAll("video, audio")).forEach(function(a){a.hasAttribute("data-ignore")||a.pause()}),m(a.querySelectorAll("iframe")).forEach(function(a){a.contentWindow.postMessage("slide:stop","*")}),m(a.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(a){a.hasAttribute("data-ignore")||"function"!=typeof a.contentWindow.postMessage||a.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}))}function ab(){return!!window.location.search.match(/receiver/gi)}function bb(){var a=window.location.hash,b=a.slice(2).split("/"),c=a.replace(/#|\//gi,"");if(isNaN(parseInt(b[0],10))&&c.length){var d=document.querySelector("#"+c);if(d){var e=Reveal.getIndices(d);Q(e.h,e.v)}else Q(Nb||0,Ob||0)}else{var f=parseInt(b[0],10)||0,g=parseInt(b[1],10)||0;(f!==Nb||g!==Ob)&&Q(f,g)}}function cb(a){if(Xb.history)if(clearTimeout(cc),"number"==typeof a)cc=setTimeout(cb,a);else{var b="/";Qb&&"string"==typeof Qb.getAttribute("id")?b="/"+Qb.getAttribute("id"):((Nb>0||Ob>0)&&(b+=Nb),Ob>0&&(b+="/"+Ob)),window.location.hash=b}}function db(a){var b,c=Nb,d=Ob;if(a){var e=K(a),f=e?a.parentNode:a,g=m(document.querySelectorAll(Ub));c=Math.max(g.indexOf(f),0),e&&(d=Math.max(m(a.parentNode.querySelectorAll("section")).indexOf(a),0))}if(!a&&Qb){var h=Qb.querySelectorAll(".fragment").length>0;if(h){var i=Qb.querySelectorAll(".fragment.visible");b=i.length}}return{h:c,v:d,f:b}}function eb(){if(Qb&&Xb.fragments){var a=B(Qb.querySelectorAll(".fragment:not(.visible)"));if(a.length){var b=a[0].getAttribute("data-fragment-index");return a=Qb.querySelectorAll('.fragment[data-fragment-index="'+b+'"]'),m(a).forEach(function(a){a.classList.add("visible")}),u("fragmentshown",{fragment:a[0],fragments:a}),V(),!0}}return!1}function fb(){if(Qb&&Xb.fragments){var a=B(Qb.querySelectorAll(".fragment.visible"));if(a.length){var b=a[a.length-1].getAttribute("data-fragment-index");return a=Qb.querySelectorAll('.fragment[data-fragment-index="'+b+'"]'),m(a).forEach(function(a){a.classList.remove("visible")}),u("fragmenthidden",{fragment:a[0],fragments:a}),V(),!0}}return!1}function gb(){if(hb(),Qb){var a=Qb.getAttribute("data-autoslide");gc=a?parseInt(a,10):Xb.autoSlide,!gc||jc||P()||J()||Reveal.isLastSlide()&&Xb.loop!==!0||(hc=setTimeout(pb,gc),ic=Date.now()),Sb&&Sb.setPlaying(-1!==hc)}}function hb(){clearTimeout(hc),hc=-1}function ib(){jc=!0,clearTimeout(hc),Sb&&Sb.setPlaying(!1)}function jb(){jc=!1,gb()}function kb(){Xb.rtl?(J()||eb()===!1)&&Y().left&&Q(Nb+1):(J()||fb()===!1)&&Y().left&&Q(Nb-1)}function lb(){Xb.rtl?(J()||fb()===!1)&&Y().right&&Q(Nb-1):(J()||eb()===!1)&&Y().right&&Q(Nb+1)}function mb(){(J()||fb()===!1)&&Y().up&&Q(Nb,Ob-1)}function nb(){(J()||eb()===!1)&&Y().down&&Q(Nb,Ob+1)}function ob(){if(fb()===!1)if(Y().up)mb();else{var a=document.querySelector(Ub+".past:nth-child("+Nb+")");if(a){var b=a.querySelectorAll("section").length-1||void 0,c=Nb-1;Q(c,b)}}}function pb(){eb()===!1&&(Y().down?nb():lb()),gb()}function qb(){Xb.autoSlideStoppable&&ib()}function rb(a){qb(a),document.activeElement;var b=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&"inherit"===document.activeElement.contentEditable);if(!(b||a.shiftKey&&32!==a.keyCode||a.altKey||a.ctrlKey||a.metaKey)){if(P()&&-1===[66,190,191].indexOf(a.keyCode))return!1;var c=!1;if("object"==typeof Xb.keyboard)for(var d in Xb.keyboard)if(parseInt(d,10)===a.keyCode){var e=Xb.keyboard[d];"function"==typeof e?e.apply(null,[a]):"string"==typeof e&&"function"==typeof Reveal[e]&&Reveal[e].call(),c=!0}if(c===!1)switch(c=!0,a.keyCode){case 80:case 33:ob();break;case 78:case 34:pb();break;case 72:case 37:kb();break;case 76:case 39:lb();break;case 75:case 38:mb();break;case 74:case 40:nb();break;case 36:Q(0);break;case 35:Q(Number.MAX_VALUE);break;case 32:J()?H():a.shiftKey?ob():pb();break;case 13:J()?H():c=!1;break;case 66:case 190:case 191:O();break;case 70:L();break;default:c=!1}c?a.preventDefault():27!==a.keyCode&&79!==a.keyCode||!ac.transforms3d||(_b.preview?A():I(),a.preventDefault()),gb()}}function sb(a){kc.startX=a.touches[0].clientX,kc.startY=a.touches[0].clientY,kc.startCount=a.touches.length,2===a.touches.length&&Xb.overview&&(kc.startSpan=n({x:a.touches[1].clientX,y:a.touches[1].clientY},{x:kc.startX,y:kc.startY}))}function tb(a){if(kc.captured)navigator.userAgent.match(/android/gi)&&a.preventDefault();else{qb(a);var b=a.touches[0].clientX,c=a.touches[0].clientY;if(2===a.touches.length&&2===kc.startCount&&Xb.overview){var d=n({x:a.touches[1].clientX,y:a.touches[1].clientY},{x:kc.startX,y:kc.startY});Math.abs(kc.startSpan-d)>kc.threshold&&(kc.captured=!0,d<kc.startSpan?G():H()),a.preventDefault()}else if(1===a.touches.length&&2!==kc.startCount){var e=b-kc.startX,f=c-kc.startY;e>kc.threshold&&Math.abs(e)>Math.abs(f)?(kc.captured=!0,kb()):e<-kc.threshold&&Math.abs(e)>Math.abs(f)?(kc.captured=!0,lb()):f>kc.threshold?(kc.captured=!0,mb()):f<-kc.threshold&&(kc.captured=!0,nb()),Xb.embedded?(kc.captured||K(Qb))&&a.preventDefault():a.preventDefault()}}}function ub(){kc.captured=!1}function vb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],sb(a))}function wb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],tb(a))}function xb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],ub(a))}function yb(a){if(Date.now()-bc>600){bc=Date.now();var b=a.detail||-a.wheelDelta;b>0?pb():ob()}}function zb(a){qb(a),a.preventDefault();var b=m(document.querySelectorAll(Ub)).length,c=Math.floor(a.clientX/_b.wrapper.offsetWidth*b);Q(c)}function Ab(a){a.preventDefault(),qb(),kb()}function Bb(a){a.preventDefault(),qb(),lb()}function Cb(a){a.preventDefault(),qb(),mb()}function Db(a){a.preventDefault(),qb(),nb()}function Eb(a){a.preventDefault(),qb(),ob()}function Fb(a){a.preventDefault(),qb(),pb()}function Gb(){bb()}function Hb(){C()}function Ib(){var a=document.webkitHidden||document.msHidden||document.hidden;a===!1&&document.activeElement!==document.body&&(document.activeElement.blur(),document.body.focus())}function Jb(a){if(fc&&J()){a.preventDefault();for(var b=a.target;b&&!b.nodeName.match(/section/gi);)b=b.parentNode;if(b&&!b.classList.contains("disabled")&&(H(),b.nodeName.match(/section/gi))){var c=parseInt(b.getAttribute("data-index-h"),10),d=parseInt(b.getAttribute("data-index-v"),10);Q(c,d)}}}function Kb(a){var b=a.target.getAttribute("href");b&&(z(b),a.preventDefault())}function Lb(){Reveal.isLastSlide()&&Xb.loop===!1?(Q(0,0),jb()):jc?jb():ib()}function Mb(a,b){this.diameter=50,this.thickness=3,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=a,this.progressCheck=b,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}var Nb,Ob,Pb,Qb,Rb,Sb,Tb=".reveal .slides section",Ub=".reveal .slides>section",Vb=".reveal .slides>section.present>section",Wb=".reveal .slides>section:first-of-type",Xb={width:960,height:700,margin:.1,minScale:.2,maxScale:1,controls:!0,progress:!0,history:!1,keyboard:!0,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,fragments:!0,embedded:!1,autoSlide:0,autoSlideStoppable:!0,mouseWheel:!1,rollingLinks:!1,hideAddressBar:!0,previewLinks:!1,focusBodyOnPageVisiblityChange:!0,theme:null,transition:"default",transitionSpeed:"default",backgroundTransition:"default",parallaxBackgroundImage:"",parallaxBackgroundSize:"",viewDistance:3,dependencies:[]},Yb=!1,Zb=[],$b=1,_b={},ac={},bc=0,cc=0,dc=0,ec=0,fc=!1,gc=0,hc=0,ic=-1,jc=!1,kc={startX:0,startY:0,startSpan:0,startCount:0,captured:!1,threshold:40};return Mb.prototype.setPlaying=function(a){var b=this.playing;this.playing=a,!b&&this.playing?this.animate():this.render()},Mb.prototype.animate=function(){var a=this.progress;this.progress=this.progressCheck(),a>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&ac.requestAnimationFrameMethod.call(window,this.animate.bind(this))},Mb.prototype.render=function(){var a=this.playing?this.progress:0,b=this.diameter/2-this.thickness,c=this.diameter/2,d=this.diameter/2,e=14;this.progressOffset+=.1*(1-this.progressOffset);var f=-Math.PI/2+a*2*Math.PI,g=-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(c,d,b+2,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(c,d,b,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#666",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(c,d,b,g,f,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(c-e/2,d-e/2),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,e/2-2,e),this.context.fillRect(e/2+2,0,e/2-2,e)):(this.context.beginPath(),this.context.translate(2,0),this.context.moveTo(0,0),this.context.lineTo(e-2,e/2),this.context.lineTo(0,e),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()},Mb.prototype.on=function(a,b){this.canvas.addEventListener(a,b,!1)},Mb.prototype.off=function(a,b){this.canvas.removeEventListener(a,b,!1)},Mb.prototype.destroy=function(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)},{initialize:a,configure:i,sync:R,slide:Q,left:kb,right:lb,up:mb,down:nb,prev:ob,next:pb,prevFragment:fb,nextFragment:eb,navigateTo:Q,navigateLeft:kb,navigateRight:lb,navigateUp:mb,navigateDown:nb,navigatePrev:ob,navigateNext:pb,layout:C,availableRoutes:Y,availableFragments:Z,toggleOverview:I,togglePause:O,isOverview:J,isPaused:P,addEventListeners:j,removeEventListeners:k,getIndices:db,getSlide:function(a,b){var c=document.querySelectorAll(Ub)[a],d=c&&c.querySelectorAll("section");return"undefined"!=typeof b?d?d[b]:void 0:c},getPreviousSlide:function(){return Pb},getCurrentSlide:function(){return Qb},getScale:function(){return $b},getConfig:function(){return Xb},getQueryHash:function(){var a={};location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(b){a[b.split("=").shift()]=b.split("=").pop()});for(var b in a){var c=a[b];"null"===c?a[b]=null:"true"===c?a[b]=!0:"false"===c?a[b]=!1:isNaN(parseFloat(c))||(a[b]=parseFloat(c))}return a},isFirstSlide:function(){return null==document.querySelector(Tb+".past")?!0:!1},isLastSlide:function(){return Qb?Qb.nextElementSibling?!1:K(Qb)&&Qb.parentNode.nextElementSibling?!1:!0:!1},isReady:function(){return Yb},addEventListener:function(a,b,c){"addEventListener"in window&&(_b.wrapper||document.querySelector(".reveal")).addEventListener(a,b,c)},removeEventListener:function(a,b,c){"addEventListener"in window&&(_b.wrapper||document.querySelector(".reveal")).removeEventListener(a,b,c)}}}();
\ No newline at end of file +var Reveal=function(){"use strict";function a(a){if(b(),!bc.transforms2d&&!bc.transforms3d)return document.body.setAttribute("class","no-transforms"),void 0;window.addEventListener("load",C,!1);var d=Reveal.getQueryHash();"undefined"!=typeof d.dependencies&&delete d.dependencies,l(Yb,a),l(Yb,d),s(),c()}function b(){bc.transforms3d="WebkitPerspective"in document.body.style||"MozPerspective"in document.body.style||"msPerspective"in document.body.style||"OPerspective"in document.body.style||"perspective"in document.body.style,bc.transforms2d="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style,bc.requestAnimationFrameMethod=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame,bc.requestAnimationFrame="function"==typeof bc.requestAnimationFrameMethod,bc.canvas=!!document.createElement("canvas").getContext,Sb=navigator.userAgent.match(/(iphone|ipod|android)/gi)}function c(){function a(){c.length&&head.js.apply(null,c),d()}for(var b=[],c=[],e=0,f=Yb.dependencies.length;f>e;e++){var g=Yb.dependencies[e];(!g.condition||g.condition())&&(g.async?c.push(g.src):b.push(g.src),"function"==typeof g.callback&&head.ready(g.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],g.callback))}b.length?(head.ready(a),head.js.apply(null,b)):a()}function d(){f(),e(),i(),bb(),setTimeout(function(){ac.slides.classList.remove("no-transition"),Zb=!0,u("ready",{indexh:Nb,indexv:Ob,currentSlide:Qb})},1)}function e(){var a=m(document.querySelectorAll(Vb));a.forEach(function(a){var b=m(a.querySelectorAll("section"));b.forEach(function(a,b){b>0&&a.classList.add("future")})})}function f(){ac.theme=document.querySelector("#theme"),ac.wrapper=document.querySelector(".reveal"),ac.slides=document.querySelector(".reveal .slides"),ac.slides.classList.add("no-transition"),ac.background=g(ac.wrapper,"div","backgrounds",null),ac.progress=g(ac.wrapper,"div","progress","<span></span>"),ac.progressbar=ac.progress.querySelector("span"),g(ac.wrapper,"aside","controls",'<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>'),g(ac.wrapper,"div","state-background",null),g(ac.wrapper,"div","pause-overlay",null),ac.controls=document.querySelector(".reveal .controls"),ac.controlsLeft=m(document.querySelectorAll(".navigate-left")),ac.controlsRight=m(document.querySelectorAll(".navigate-right")),ac.controlsUp=m(document.querySelectorAll(".navigate-up")),ac.controlsDown=m(document.querySelectorAll(".navigate-down")),ac.controlsPrev=m(document.querySelectorAll(".navigate-prev")),ac.controlsNext=m(document.querySelectorAll(".navigate-next"))}function g(a,b,c,d){var e=a.querySelector("."+c);return e||(e=document.createElement(b),e.classList.add(c),null!==d&&(e.innerHTML=d),a.appendChild(e)),e}function h(){function a(a,b){var c={background:a.getAttribute("data-background"),backgroundSize:a.getAttribute("data-background-size"),backgroundImage:a.getAttribute("data-background-image"),backgroundColor:a.getAttribute("data-background-color"),backgroundRepeat:a.getAttribute("data-background-repeat"),backgroundPosition:a.getAttribute("data-background-position"),backgroundTransition:a.getAttribute("data-background-transition")},d=document.createElement("div");return d.setAttribute("data-background-hash",c.background+c.backgroundSize+c.backgroundImage+c.backgroundColor+c.backgroundRepeat+c.backgroundPosition+c.backgroundTransition),d.className="slide-background",c.background&&(/^(http|file|\/\/)/gi.test(c.background)||/\.(svg|png|jpg|jpeg|gif|bmp)$/gi.test(c.background)?d.style.backgroundImage="url("+c.background+")":d.style.background=c.background),c.backgroundSize&&(d.style.backgroundSize=c.backgroundSize),c.backgroundImage&&(d.style.backgroundImage='url("'+c.backgroundImage+'")'),c.backgroundColor&&(d.style.backgroundColor=c.backgroundColor),c.backgroundRepeat&&(d.style.backgroundRepeat=c.backgroundRepeat),c.backgroundPosition&&(d.style.backgroundPosition=c.backgroundPosition),c.backgroundTransition&&d.setAttribute("data-background-transition",c.backgroundTransition),b.appendChild(d),d}r()&&document.body.classList.add("print-pdf"),ac.background.innerHTML="",ac.background.classList.add("no-transition"),m(document.querySelectorAll(Vb)).forEach(function(b){var c;c=r()?a(b,b):a(b,ac.background),m(b.querySelectorAll("section")).forEach(function(b){r()?a(b,b):a(b,c)})}),Yb.parallaxBackgroundImage?(ac.background.style.backgroundImage='url("'+Yb.parallaxBackgroundImage+'")',ac.background.style.backgroundSize=Yb.parallaxBackgroundSize,setTimeout(function(){ac.wrapper.classList.add("has-parallax-background")},1)):(ac.background.style.backgroundImage="",ac.wrapper.classList.remove("has-parallax-background"))}function i(a){var b=document.querySelectorAll(Ub).length;if(ac.wrapper.classList.remove(Yb.transition),"object"==typeof a&&l(Yb,a),bc.transforms3d===!1&&(Yb.transition="linear"),ac.wrapper.classList.add(Yb.transition),ac.wrapper.setAttribute("data-transition-speed",Yb.transitionSpeed),ac.wrapper.setAttribute("data-background-transition",Yb.backgroundTransition),ac.controls.style.display=Yb.controls?"block":"none",ac.progress.style.display=Yb.progress?"block":"none",Yb.rtl?ac.wrapper.classList.add("rtl"):ac.wrapper.classList.remove("rtl"),Yb.center?ac.wrapper.classList.add("center"):ac.wrapper.classList.remove("center"),Yb.mouseWheel?(document.addEventListener("DOMMouseScroll",yb,!1),document.addEventListener("mousewheel",yb,!1)):(document.removeEventListener("DOMMouseScroll",yb,!1),document.removeEventListener("mousewheel",yb,!1)),Yb.rollingLinks?v():w(),Yb.previewLinks?x():(y(),x("[data-preview-link]")),b>1&&Yb.autoSlide&&Yb.autoSlideStoppable&&bc.canvas&&bc.requestAnimationFrame?(Tb=new Mb(ac.wrapper,function(){return Math.min(Math.max((Date.now()-jc)/hc,0),1)}),Tb.on("click",Lb),kc=!1):Tb&&(Tb.destroy(),Tb=null),Yb.theme&&ac.theme){var c=ac.theme.getAttribute("href"),d=/[^\/]*?(?=\.css)/,e=c.match(d)[0];Yb.theme!==e&&(c=c.replace(d,Yb.theme),ac.theme.setAttribute("href",c))}R()}function j(){if(gc=!0,window.addEventListener("hashchange",Gb,!1),window.addEventListener("resize",Hb,!1),Yb.touch&&(ac.wrapper.addEventListener("touchstart",sb,!1),ac.wrapper.addEventListener("touchmove",tb,!1),ac.wrapper.addEventListener("touchend",ub,!1),window.navigator.msPointerEnabled&&(ac.wrapper.addEventListener("MSPointerDown",vb,!1),ac.wrapper.addEventListener("MSPointerMove",wb,!1),ac.wrapper.addEventListener("MSPointerUp",xb,!1))),Yb.keyboard&&document.addEventListener("keydown",rb,!1),Yb.progress&&ac.progress&&ac.progress.addEventListener("click",zb,!1),Yb.focusBodyOnPageVisiblityChange){var a;"hidden"in document?a="visibilitychange":"msHidden"in document?a="msvisibilitychange":"webkitHidden"in document&&(a="webkitvisibilitychange"),a&&document.addEventListener(a,Ib,!1)}["touchstart","click"].forEach(function(a){ac.controlsLeft.forEach(function(b){b.addEventListener(a,Ab,!1)}),ac.controlsRight.forEach(function(b){b.addEventListener(a,Bb,!1)}),ac.controlsUp.forEach(function(b){b.addEventListener(a,Cb,!1)}),ac.controlsDown.forEach(function(b){b.addEventListener(a,Db,!1)}),ac.controlsPrev.forEach(function(b){b.addEventListener(a,Eb,!1)}),ac.controlsNext.forEach(function(b){b.addEventListener(a,Fb,!1)})})}function k(){gc=!1,document.removeEventListener("keydown",rb,!1),window.removeEventListener("hashchange",Gb,!1),window.removeEventListener("resize",Hb,!1),ac.wrapper.removeEventListener("touchstart",sb,!1),ac.wrapper.removeEventListener("touchmove",tb,!1),ac.wrapper.removeEventListener("touchend",ub,!1),window.navigator.msPointerEnabled&&(ac.wrapper.removeEventListener("MSPointerDown",vb,!1),ac.wrapper.removeEventListener("MSPointerMove",wb,!1),ac.wrapper.removeEventListener("MSPointerUp",xb,!1)),Yb.progress&&ac.progress&&ac.progress.removeEventListener("click",zb,!1),["touchstart","click"].forEach(function(a){ac.controlsLeft.forEach(function(b){b.removeEventListener(a,Ab,!1)}),ac.controlsRight.forEach(function(b){b.removeEventListener(a,Bb,!1)}),ac.controlsUp.forEach(function(b){b.removeEventListener(a,Cb,!1)}),ac.controlsDown.forEach(function(b){b.removeEventListener(a,Db,!1)}),ac.controlsPrev.forEach(function(b){b.removeEventListener(a,Eb,!1)}),ac.controlsNext.forEach(function(b){b.removeEventListener(a,Fb,!1)})})}function l(a,b){for(var c in b)a[c]=b[c]}function m(a){return Array.prototype.slice.call(a)}function n(a,b){var c=a.x-b.x,d=a.y-b.y;return Math.sqrt(c*c+d*d)}function o(a,b){a.style.WebkitTransform=b,a.style.MozTransform=b,a.style.msTransform=b,a.style.OTransform=b,a.style.transform=b}function p(a){var b=0;if(a){var c=0;m(a.childNodes).forEach(function(a){"number"==typeof a.offsetTop&&a.style&&("absolute"===a.style.position&&(c+=1),b=Math.max(b,a.offsetTop+a.offsetHeight))}),0===c&&(b=a.offsetHeight)}return b}function q(a,b){if(b=b||0,a){var c=a.parentNode,d=c.childNodes;m(d).forEach(function(c){if("number"==typeof c.offsetHeight&&c!==a){var d=window.getComputedStyle(c),e=parseInt(d.marginTop,10),f=parseInt(d.marginBottom,10);b-=c.offsetHeight+e+f}});var e=window.getComputedStyle(a);b-=parseInt(e.marginTop,10)+parseInt(e.marginBottom,10)}return b}function r(){return/print-pdf/gi.test(window.location.search)}function s(){Yb.hideAddressBar&&Sb&&(window.addEventListener("load",t,!1),window.addEventListener("orientationchange",t,!1))}function t(){setTimeout(function(){window.scrollTo(0,1)},10)}function u(a,b){var c=document.createEvent("HTMLEvents",1,2);c.initEvent(a,!0,!0),l(c,b),ac.wrapper.dispatchEvent(c)}function v(){if(bc.transforms3d&&!("msPerspective"in document.body.style))for(var a=document.querySelectorAll(Ub+" a:not(.image)"),b=0,c=a.length;c>b;b++){var d=a[b];if(!(!d.textContent||d.querySelector("*")||d.className&&d.classList.contains(d,"roll"))){var e=document.createElement("span");e.setAttribute("data-title",d.text),e.innerHTML=d.innerHTML,d.classList.add("roll"),d.innerHTML="",d.appendChild(e)}}}function w(){for(var a=document.querySelectorAll(Ub+" a.roll"),b=0,c=a.length;c>b;b++){var d=a[b],e=d.querySelector("span");e&&(d.classList.remove("roll"),d.innerHTML=e.innerHTML)}}function x(a){var b=m(document.querySelectorAll(a?a:"a"));b.forEach(function(a){/^(http|www)/gi.test(a.getAttribute("href"))&&a.addEventListener("click",Kb,!1)})}function y(){var a=m(document.querySelectorAll("a"));a.forEach(function(a){/^(http|www)/gi.test(a.getAttribute("href"))&&a.removeEventListener("click",Kb,!1)})}function z(a){A(),ac.preview=document.createElement("div"),ac.preview.classList.add("preview-link-overlay"),ac.wrapper.appendChild(ac.preview),ac.preview.innerHTML=["<header>",'<a class="close" href="#"><span class="icon"></span></a>','<a class="external" href="'+a+'" target="_blank"><span class="icon"></span></a>',"</header>",'<div class="spinner"></div>','<div class="viewport">','<iframe src="'+a+'"></iframe>',"</div>"].join(""),ac.preview.querySelector("iframe").addEventListener("load",function(){ac.preview.classList.add("loaded")},!1),ac.preview.querySelector(".close").addEventListener("click",function(a){A(),a.preventDefault()},!1),ac.preview.querySelector(".external").addEventListener("click",function(){A()},!1),setTimeout(function(){ac.preview.classList.add("visible")},1)}function A(){ac.preview&&(ac.preview.setAttribute("src",""),ac.preview.parentNode.removeChild(ac.preview),ac.preview=null)}function B(a){var b=m(a);return b.forEach(function(a,b){a.hasAttribute("data-fragment-index")||a.setAttribute("data-fragment-index",b)}),b.sort(function(a,b){return a.getAttribute("data-fragment-index")-b.getAttribute("data-fragment-index")}),b}function C(){if(ac.wrapper&&!r()){var a=ac.wrapper.offsetWidth,b=ac.wrapper.offsetHeight;a-=b*Yb.margin,b-=b*Yb.margin;var c=Yb.width,d=Yb.height,e=20;D(Yb.width,Yb.height,e),"string"==typeof c&&/%$/.test(c)&&(c=parseInt(c,10)/100*a),"string"==typeof d&&/%$/.test(d)&&(d=parseInt(d,10)/100*b),ac.slides.style.width=c+"px",ac.slides.style.height=d+"px",_b=Math.min(a/c,b/d),_b=Math.max(_b,Yb.minScale),_b=Math.min(_b,Yb.maxScale),"undefined"==typeof ac.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)?o(ac.slides,"translate(-50%, -50%) scale("+_b+") translate(50%, 50%)"):ac.slides.style.zoom=_b;for(var f=m(document.querySelectorAll(Ub)),g=0,h=f.length;h>g;g++){var i=f[g];"none"!==i.style.display&&(i.style.top=Yb.center||i.classList.contains("center")?i.classList.contains("stack")?0:Math.max(-(p(i)/2)-e,-d/2)+"px":"")}U(),X()}}function D(a,b,c){m(ac.slides.querySelectorAll("section > .stretch")).forEach(function(d){var e=q(d,b-2*c);if(/(img|video)/gi.test(d.nodeName)){var f=d.naturalWidth||d.videoWidth,g=d.naturalHeight||d.videoHeight,h=Math.min(a/f,e/g);d.style.width=f*h+"px",d.style.height=g*h+"px"}else d.style.width=a+"px",d.style.height=e+"px"})}function E(a,b){"object"==typeof a&&"function"==typeof a.setAttribute&&a.setAttribute("data-previous-indexv",b||0)}function F(a){if("object"==typeof a&&"function"==typeof a.setAttribute&&a.classList.contains("stack")){var b=a.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(a.getAttribute(b)||0,10)}return 0}function G(){if(Yb.overview){hb();var a=ac.wrapper.classList.contains("overview"),b=window.innerWidth<400?1e3:2500;ac.wrapper.classList.add("overview"),ac.wrapper.classList.remove("overview-deactivating"),clearTimeout(ec),clearTimeout(fc),ec=setTimeout(function(){for(var c=document.querySelectorAll(Vb),d=0,e=c.length;e>d;d++){var f=c[d],g=Yb.rtl?-105:105;if(f.setAttribute("data-index-h",d),o(f,"translateZ(-"+b+"px) translate("+(d-Nb)*g+"%, 0%)"),f.classList.contains("stack"))for(var h=f.querySelectorAll("section"),i=0,j=h.length;j>i;i++){var k=d===Nb?Ob:F(f),l=h[i];l.setAttribute("data-index-h",d),l.setAttribute("data-index-v",i),o(l,"translate(0%, "+105*(i-k)+"%)"),l.addEventListener("click",Jb,!0)}else f.addEventListener("click",Jb,!0)}T(),C(),a||u("overviewshown",{indexh:Nb,indexv:Ob,currentSlide:Qb})},10)}}function H(){Yb.overview&&(clearTimeout(ec),clearTimeout(fc),ac.wrapper.classList.remove("overview"),ac.wrapper.classList.add("overview-deactivating"),fc=setTimeout(function(){ac.wrapper.classList.remove("overview-deactivating")},1),m(document.querySelectorAll(Ub)).forEach(function(a){o(a,""),a.removeEventListener("click",Jb,!0)}),Q(Nb,Ob),gb(),u("overviewhidden",{indexh:Nb,indexv:Ob,currentSlide:Qb}))}function I(a){"boolean"==typeof a?a?G():H():J()?H():G()}function J(){return ac.wrapper.classList.contains("overview")}function K(a){return a=a?a:Qb,a&&a.parentNode&&!!a.parentNode.nodeName.match(/section/i)}function L(){var a=document.body,b=a.requestFullScreen||a.webkitRequestFullscreen||a.webkitRequestFullScreen||a.mozRequestFullScreen||a.msRequestFullScreen;b&&b.apply(a)}function M(){var a=ac.wrapper.classList.contains("paused");hb(),ac.wrapper.classList.add("paused"),a===!1&&u("paused")}function N(){var a=ac.wrapper.classList.contains("paused");ac.wrapper.classList.remove("paused"),gb(),a&&u("resumed")}function O(){P()?N():M()}function P(){return ac.wrapper.classList.contains("paused")}function Q(a,b,c,d){Pb=Qb;var e=document.querySelectorAll(Vb);void 0===b&&(b=F(e[a])),Pb&&Pb.parentNode&&Pb.parentNode.classList.contains("stack")&&E(Pb.parentNode,Ob);var f=$b.concat();$b.length=0;var g=Nb||0,h=Ob||0;Nb=S(Vb,void 0===a?Nb:a),Ob=S(Wb,void 0===b?Ob:b),T(),C();a:for(var i=0,j=$b.length;j>i;i++){for(var k=0;k<f.length;k++)if(f[k]===$b[i]){f.splice(k,1);continue a}document.documentElement.classList.add($b[i]),u($b[i])}for(;f.length;)document.documentElement.classList.remove(f.pop());J()&&G();var l=e[Nb],n=l.querySelectorAll("section");if(Qb=n[Ob]||l,"undefined"!=typeof c){var o=B(Qb.querySelectorAll(".fragment"));m(o).forEach(function(a,b){c>b?a.classList.add("visible"):a.classList.remove("visible")})}var p=Nb!==g||Ob!==h;p?u("slidechanged",{indexh:Nb,indexv:Ob,previousSlide:Pb,currentSlide:Qb,origin:d}):Pb=null,Pb&&(Pb.classList.remove("present"),document.querySelector(Xb).classList.contains("present")&&setTimeout(function(){var a,b=m(document.querySelectorAll(Vb+".stack"));for(a in b)b[a]&&E(b[a],0)},0)),p&&(_(Pb),$(Qb)),V(),U(),W(),X(),cb(),gb()}function R(){k(),j(),C(),hc=Yb.autoSlide,gb(),h(),V(),U(),W()}function S(a,b){var c=m(document.querySelectorAll(a)),d=c.length;if(d){Yb.loop&&(b%=d,0>b&&(b=d+b)),b=Math.max(Math.min(b,d-1),0);for(var e=0;d>e;e++){var f=c[e],g=Yb.rtl&&!K(f);if(f.classList.remove("past"),f.classList.remove("present"),f.classList.remove("future"),f.setAttribute("hidden",""),b>e)f.classList.add(g?"future":"past");else if(e>b){f.classList.add(g?"past":"future");for(var h=m(f.querySelectorAll(".fragment.visible"));h.length;)h.pop().classList.remove("visible")}f.querySelector("section")&&f.classList.add("stack")}c[b].classList.add("present"),c[b].removeAttribute("hidden");var i=c[b].getAttribute("data-state");i&&($b=$b.concat(i.split(" ")))}else b=0;return b}function T(){var a,b,c=m(document.querySelectorAll(Vb)),d=c.length;if(d){var e=J()?10:Yb.viewDistance;Sb&&(e=J()?6:1);for(var f=0;d>f;f++){var g=c[f],h=m(g.querySelectorAll("section")),i=h.length;if(a=Math.abs((Nb-f)%(d-e))||0,g.style.display=a>e?"none":"block",i)for(var j=F(g),k=0;i>k;k++){var l=h[k];b=f===Nb?Math.abs(Ob-k):Math.abs(k-j),l.style.display=a+b>e?"none":"block"}}}}function U(){if(Yb.progress&&ac.progress){var a=m(document.querySelectorAll(Vb)),b=document.querySelectorAll(Ub+":not(.stack)").length,c=0;a:for(var d=0;d<a.length;d++){for(var e=a[d],f=m(e.querySelectorAll("section")),g=0;g<f.length;g++){if(f[g].classList.contains("present"))break a;c++}if(e.classList.contains("present"))break;e.classList.contains("stack")===!1&&c++}ac.progressbar.style.width=c/(b-1)*window.innerWidth+"px"}}function V(){var a=Y(),b=Z();ac.controlsLeft.concat(ac.controlsRight).concat(ac.controlsUp).concat(ac.controlsDown).concat(ac.controlsPrev).concat(ac.controlsNext).forEach(function(a){a.classList.remove("enabled"),a.classList.remove("fragmented")}),a.left&&ac.controlsLeft.forEach(function(a){a.classList.add("enabled")}),a.right&&ac.controlsRight.forEach(function(a){a.classList.add("enabled")}),a.up&&ac.controlsUp.forEach(function(a){a.classList.add("enabled")}),a.down&&ac.controlsDown.forEach(function(a){a.classList.add("enabled")}),(a.left||a.up)&&ac.controlsPrev.forEach(function(a){a.classList.add("enabled")}),(a.right||a.down)&&ac.controlsNext.forEach(function(a){a.classList.add("enabled")}),Qb&&(b.prev&&ac.controlsPrev.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&ac.controlsNext.forEach(function(a){a.classList.add("fragmented","enabled")}),K(Qb)?(b.prev&&ac.controlsUp.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&ac.controlsDown.forEach(function(a){a.classList.add("fragmented","enabled")})):(b.prev&&ac.controlsLeft.forEach(function(a){a.classList.add("fragmented","enabled")}),b.next&&ac.controlsRight.forEach(function(a){a.classList.add("fragmented","enabled")})))}function W(){var a=null,b=Yb.rtl?"future":"past",c=Yb.rtl?"past":"future";if(m(ac.background.childNodes).forEach(function(d,e){d.className="slide-background ",Nb>e?d.className+=b:e>Nb?d.className+=c:(d.className+="present",a=d),m(d.childNodes).forEach(function(b,c){b.className="slide-background ",Ob>c?b.className+="past":c>Ob?b.className+="future":(b.className+="present",e===Nb&&(a=b))})}),a){var d=a.getAttribute("data-background-hash");d===Rb&&ac.background.classList.add("no-transition"),Rb=d}setTimeout(function(){ac.background.classList.remove("no-transition")},1)}function X(){if(Yb.parallaxBackgroundImage){var a,b,c=document.querySelectorAll(Vb),d=document.querySelectorAll(Wb),e=ac.background.style.backgroundSize.split(" ");1===e.length?a=b=parseInt(e[0],10):(a=parseInt(e[0],10),b=parseInt(e[1],10));var f=ac.background.offsetWidth,g=c.length,h=-(a-f)/(g-1)*Nb,i=ac.background.offsetHeight,j=d.length,k=j>0?-(b-i)/(j-1)*Ob:0;ac.background.style.backgroundPosition=h+"px "+k+"px"}}function Y(){var a=document.querySelectorAll(Vb),b=document.querySelectorAll(Wb),c={left:Nb>0||Yb.loop,right:Nb<a.length-1||Yb.loop,up:Ob>0,down:Ob<b.length-1};if(Yb.rtl){var d=c.left;c.left=c.right,c.right=d}return c}function Z(){if(Qb&&Yb.fragments){var a=Qb.querySelectorAll(".fragment"),b=Qb.querySelectorAll(".fragment:not(.visible)");return{prev:a.length-b.length>0,next:!!b.length}}return{prev:!1,next:!1}}function $(a){a&&!ab()&&(m(a.querySelectorAll("video, audio")).forEach(function(a){a.hasAttribute("data-autoplay")&&a.play()}),m(a.querySelectorAll("iframe")).forEach(function(a){a.contentWindow.postMessage("slide:start","*")}),m(a.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(a){a.hasAttribute("data-autoplay")&&a.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")}))}function _(a){a&&(m(a.querySelectorAll("video, audio")).forEach(function(a){a.hasAttribute("data-ignore")||a.pause()}),m(a.querySelectorAll("iframe")).forEach(function(a){a.contentWindow.postMessage("slide:stop","*")}),m(a.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(a){a.hasAttribute("data-ignore")||"function"!=typeof a.contentWindow.postMessage||a.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}))}function ab(){return!!window.location.search.match(/receiver/gi)}function bb(){var a=window.location.hash,b=a.slice(2).split("/"),c=a.replace(/#|\//gi,"");if(isNaN(parseInt(b[0],10))&&c.length){var d=document.querySelector("#"+c);if(d){var e=Reveal.getIndices(d);Q(e.h,e.v)}else Q(Nb||0,Ob||0)}else{var f=parseInt(b[0],10)||0,g=parseInt(b[1],10)||0;(f!==Nb||g!==Ob)&&Q(f,g)}}function cb(a){if(Yb.history)if(clearTimeout(dc),"number"==typeof a)dc=setTimeout(cb,a);else{var b="/";Qb&&"string"==typeof Qb.getAttribute("id")?b="/"+Qb.getAttribute("id"):((Nb>0||Ob>0)&&(b+=Nb),Ob>0&&(b+="/"+Ob)),window.location.hash=b}}function db(a){var b,c=Nb,d=Ob;if(a){var e=K(a),f=e?a.parentNode:a,g=m(document.querySelectorAll(Vb));c=Math.max(g.indexOf(f),0),e&&(d=Math.max(m(a.parentNode.querySelectorAll("section")).indexOf(a),0))}if(!a&&Qb){var h=Qb.querySelectorAll(".fragment").length>0;if(h){var i=Qb.querySelectorAll(".fragment.visible");b=i.length}}return{h:c,v:d,f:b}}function eb(){if(Qb&&Yb.fragments){var a=B(Qb.querySelectorAll(".fragment:not(.visible)"));if(a.length){var b=a[0].getAttribute("data-fragment-index");return a=Qb.querySelectorAll('.fragment[data-fragment-index="'+b+'"]'),m(a).forEach(function(a){a.classList.add("visible")}),u("fragmentshown",{fragment:a[0],fragments:a}),V(),!0}}return!1}function fb(){if(Qb&&Yb.fragments){var a=B(Qb.querySelectorAll(".fragment.visible"));if(a.length){var b=a[a.length-1].getAttribute("data-fragment-index");return a=Qb.querySelectorAll('.fragment[data-fragment-index="'+b+'"]'),m(a).forEach(function(a){a.classList.remove("visible")}),u("fragmenthidden",{fragment:a[0],fragments:a}),V(),!0}}return!1}function gb(){if(hb(),Qb){var a=Qb.getAttribute("data-autoslide");hc=a?parseInt(a,10):Yb.autoSlide,!hc||kc||P()||J()||Reveal.isLastSlide()&&Yb.loop!==!0||(ic=setTimeout(pb,hc),jc=Date.now()),Tb&&Tb.setPlaying(-1!==ic)}}function hb(){clearTimeout(ic),ic=-1}function ib(){kc=!0,clearTimeout(ic),Tb&&Tb.setPlaying(!1)}function jb(){kc=!1,gb()}function kb(){Yb.rtl?(J()||eb()===!1)&&Y().left&&Q(Nb+1):(J()||fb()===!1)&&Y().left&&Q(Nb-1)}function lb(){Yb.rtl?(J()||fb()===!1)&&Y().right&&Q(Nb-1):(J()||eb()===!1)&&Y().right&&Q(Nb+1)}function mb(){(J()||fb()===!1)&&Y().up&&Q(Nb,Ob-1)}function nb(){(J()||eb()===!1)&&Y().down&&Q(Nb,Ob+1)}function ob(){if(fb()===!1)if(Y().up)mb();else{var a=document.querySelector(Vb+".past:nth-child("+Nb+")");if(a){var b=a.querySelectorAll("section").length-1||void 0,c=Nb-1;Q(c,b)}}}function pb(){eb()===!1&&(Y().down?nb():lb()),gb()}function qb(){Yb.autoSlideStoppable&&ib()}function rb(a){qb(a),document.activeElement;var b=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&"inherit"===document.activeElement.contentEditable);if(!(b||a.shiftKey&&32!==a.keyCode||a.altKey||a.ctrlKey||a.metaKey)){if(P()&&-1===[66,190,191].indexOf(a.keyCode))return!1;var c=!1;if("object"==typeof Yb.keyboard)for(var d in Yb.keyboard)if(parseInt(d,10)===a.keyCode){var e=Yb.keyboard[d];"function"==typeof e?e.apply(null,[a]):"string"==typeof e&&"function"==typeof Reveal[e]&&Reveal[e].call(),c=!0}if(c===!1)switch(c=!0,a.keyCode){case 80:case 33:ob();break;case 78:case 34:pb();break;case 72:case 37:kb();break;case 76:case 39:lb();break;case 75:case 38:mb();break;case 74:case 40:nb();break;case 36:Q(0);break;case 35:Q(Number.MAX_VALUE);break;case 32:J()?H():a.shiftKey?ob():pb();break;case 13:J()?H():c=!1;break;case 66:case 190:case 191:O();break;case 70:L();break;default:c=!1}c?a.preventDefault():27!==a.keyCode&&79!==a.keyCode||!bc.transforms3d||(ac.preview?A():I(),a.preventDefault()),gb()}}function sb(a){lc.startX=a.touches[0].clientX,lc.startY=a.touches[0].clientY,lc.startCount=a.touches.length,2===a.touches.length&&Yb.overview&&(lc.startSpan=n({x:a.touches[1].clientX,y:a.touches[1].clientY},{x:lc.startX,y:lc.startY}))}function tb(a){if(lc.captured)navigator.userAgent.match(/android/gi)&&a.preventDefault();else{qb(a);var b=a.touches[0].clientX,c=a.touches[0].clientY;if(2===a.touches.length&&2===lc.startCount&&Yb.overview){var d=n({x:a.touches[1].clientX,y:a.touches[1].clientY},{x:lc.startX,y:lc.startY});Math.abs(lc.startSpan-d)>lc.threshold&&(lc.captured=!0,d<lc.startSpan?G():H()),a.preventDefault()}else if(1===a.touches.length&&2!==lc.startCount){var e=b-lc.startX,f=c-lc.startY;e>lc.threshold&&Math.abs(e)>Math.abs(f)?(lc.captured=!0,kb()):e<-lc.threshold&&Math.abs(e)>Math.abs(f)?(lc.captured=!0,lb()):f>lc.threshold?(lc.captured=!0,mb()):f<-lc.threshold&&(lc.captured=!0,nb()),Yb.embedded?(lc.captured||K(Qb))&&a.preventDefault():a.preventDefault()}}}function ub(){lc.captured=!1}function vb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],sb(a))}function wb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],tb(a))}function xb(a){a.pointerType===a.MSPOINTER_TYPE_TOUCH&&(a.touches=[{clientX:a.clientX,clientY:a.clientY}],ub(a))}function yb(a){if(Date.now()-cc>600){cc=Date.now();var b=a.detail||-a.wheelDelta;b>0?pb():ob()}}function zb(a){qb(a),a.preventDefault();var b=m(document.querySelectorAll(Vb)).length,c=Math.floor(a.clientX/ac.wrapper.offsetWidth*b);Q(c)}function Ab(a){a.preventDefault(),qb(),kb()}function Bb(a){a.preventDefault(),qb(),lb()}function Cb(a){a.preventDefault(),qb(),mb()}function Db(a){a.preventDefault(),qb(),nb()}function Eb(a){a.preventDefault(),qb(),ob()}function Fb(a){a.preventDefault(),qb(),pb()}function Gb(){bb()}function Hb(){C()}function Ib(){var a=document.webkitHidden||document.msHidden||document.hidden;a===!1&&document.activeElement!==document.body&&(document.activeElement.blur(),document.body.focus())}function Jb(a){if(gc&&J()){a.preventDefault();for(var b=a.target;b&&!b.nodeName.match(/section/gi);)b=b.parentNode;if(b&&!b.classList.contains("disabled")&&(H(),b.nodeName.match(/section/gi))){var c=parseInt(b.getAttribute("data-index-h"),10),d=parseInt(b.getAttribute("data-index-v"),10);Q(c,d)}}}function Kb(a){var b=a.target.getAttribute("href");b&&(z(b),a.preventDefault())}function Lb(){Reveal.isLastSlide()&&Yb.loop===!1?(Q(0,0),jb()):kc?jb():ib()}function Mb(a,b){this.diameter=50,this.thickness=3,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=a,this.progressCheck=b,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}var Nb,Ob,Pb,Qb,Rb,Sb,Tb,Ub=".reveal .slides section",Vb=".reveal .slides>section",Wb=".reveal .slides>section.present>section",Xb=".reveal .slides>section:first-of-type",Yb={width:960,height:700,margin:.1,minScale:.2,maxScale:1,controls:!0,progress:!0,history:!1,keyboard:!0,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,fragments:!0,embedded:!1,autoSlide:0,autoSlideStoppable:!0,mouseWheel:!1,rollingLinks:!1,hideAddressBar:!0,previewLinks:!1,focusBodyOnPageVisiblityChange:!0,theme:null,transition:"default",transitionSpeed:"default",backgroundTransition:"default",parallaxBackgroundImage:"",parallaxBackgroundSize:"",viewDistance:3,dependencies:[]},Zb=!1,$b=[],_b=1,ac={},bc={},cc=0,dc=0,ec=0,fc=0,gc=!1,hc=0,ic=0,jc=-1,kc=!1,lc={startX:0,startY:0,startSpan:0,startCount:0,captured:!1,threshold:40};return Mb.prototype.setPlaying=function(a){var b=this.playing;this.playing=a,!b&&this.playing?this.animate():this.render()},Mb.prototype.animate=function(){var a=this.progress;this.progress=this.progressCheck(),a>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&bc.requestAnimationFrameMethod.call(window,this.animate.bind(this))},Mb.prototype.render=function(){var a=this.playing?this.progress:0,b=this.diameter/2-this.thickness,c=this.diameter/2,d=this.diameter/2,e=14;this.progressOffset+=.1*(1-this.progressOffset);var f=-Math.PI/2+a*2*Math.PI,g=-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(c,d,b+2,0,2*Math.PI,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(c,d,b,0,2*Math.PI,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#666",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(c,d,b,g,f,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(c-e/2,d-e/2),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,e/2-2,e),this.context.fillRect(e/2+2,0,e/2-2,e)):(this.context.beginPath(),this.context.translate(2,0),this.context.moveTo(0,0),this.context.lineTo(e-2,e/2),this.context.lineTo(0,e),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()},Mb.prototype.on=function(a,b){this.canvas.addEventListener(a,b,!1)},Mb.prototype.off=function(a,b){this.canvas.removeEventListener(a,b,!1)},Mb.prototype.destroy=function(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)},{initialize:a,configure:i,sync:R,slide:Q,left:kb,right:lb,up:mb,down:nb,prev:ob,next:pb,prevFragment:fb,nextFragment:eb,navigateTo:Q,navigateLeft:kb,navigateRight:lb,navigateUp:mb,navigateDown:nb,navigatePrev:ob,navigateNext:pb,layout:C,availableRoutes:Y,availableFragments:Z,toggleOverview:I,togglePause:O,isOverview:J,isPaused:P,addEventListeners:j,removeEventListeners:k,getIndices:db,getSlide:function(a,b){var c=document.querySelectorAll(Vb)[a],d=c&&c.querySelectorAll("section");return"undefined"!=typeof b?d?d[b]:void 0:c},getPreviousSlide:function(){return Pb},getCurrentSlide:function(){return Qb},getScale:function(){return _b},getConfig:function(){return Yb},getQueryHash:function(){var a={};location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(b){a[b.split("=").shift()]=b.split("=").pop()});for(var b in a){var c=a[b];"null"===c?a[b]=null:"true"===c?a[b]=!0:"false"===c?a[b]=!1:isNaN(parseFloat(c))||(a[b]=parseFloat(c))}return a},isFirstSlide:function(){return null==document.querySelector(Ub+".past")?!0:!1},isLastSlide:function(){return Qb?Qb.nextElementSibling?!1:K(Qb)&&Qb.parentNode.nextElementSibling?!1:!0:!1},isReady:function(){return Zb},addEventListener:function(a,b,c){"addEventListener"in window&&(ac.wrapper||document.querySelector(".reveal")).addEventListener(a,b,c)},removeEventListener:function(a,b,c){"addEventListener"in window&&(ac.wrapper||document.querySelector(".reveal")).removeEventListener(a,b,c)}}}();
\ No newline at end of file |