From fecee266b680c01d1a89ab754bb25a81fd1c35be Mon Sep 17 00:00:00 2001 From: Hakim El Hattab Date: Fri, 16 Aug 2013 09:31:13 -0400 Subject: [PATCH] start work on logic for fitting an element to remaining slide height #244 #490 #561 --- js/reveal.js | 57 ++++++++++++++++++++++++++++++++++++++++++++++++ js/reveal.min.js | 4 ++-- 2 files changed, 59 insertions(+), 2 deletions(-) diff --git a/js/reveal.js b/js/reveal.js index 85e238a..acd5623 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -722,6 +722,56 @@ var Reveal = (function(){ } + function getComputedCSSProperty( element, prop ) { + + if( window.getComputedStyle ) { + return window.getComputedStyle( element )[ prop ]; + } + else { + return element.currentStyle ? element.currentStyle( prop ) : element.style[ prop ]; + } + + } + + /** + * Returns the remaining height within the parent element + * of the target after taking out the height of all + * siblings. + * + * remaining height = [parent height] - [ siblings height] + */ + function getRemainingHeight( element ) { + + var height = 0; + + if( element ) { + var parent = element.parentNode; + var siblings = parent.childNodes; + + height = config.height; + + // Remove the height of each sibling + toArray( siblings ).forEach( function( sibling ) { + + if( typeof sibling.offsetHeight === 'number' && sibling !== element ) { + + var marginTop = parseInt( getComputedCSSProperty( sibling, 'margin-top' ), 10 ); + var marginBottom = parseInt( getComputedCSSProperty( sibling, 'margin-bottom' ), 10 ); + + console.log( marginTop, marginBottom ); + + height -= sibling.offsetHeight + marginTop + marginBottom; + + } + + } ); + + } + + return height; + + } + /** * Checks if this instance is being used to print a PDF. */ @@ -1017,6 +1067,13 @@ var Reveal = (function(){ updateProgress(); + // Handle sizing of elements with the 'remaining-height' class + toArray( dom.slides.querySelectorAll( 'section > .remaining-height' ) ).forEach( function( element ) { + + element.style.height = getRemainingHeight( element ) + 'px'; + + } ); + } } diff --git a/js/reveal.min.js b/js/reveal.min.js index 5a83483..e50cdb6 100644 --- a/js/reveal.min.js +++ b/js/reveal.min.js @@ -1,8 +1,8 @@ /*! - * reveal.js 2.5.0 (2013-08-15, 08:53) + * reveal.js 2.5.0 (2013-08-16, 09:29) * http://lab.hakim.se/reveal-js * MIT licensed * * Copyright (C) 2013 Hakim El Hattab, http://hakim.se */ -var Reveal=function(){"use strict";function e(e){return t(),Rt||Ct?(window.addEventListener("load",x,!1),d(zt,e),h(),n(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){Ct="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,Rt="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,It=navigator.userAgent.match(/(iphone|ipod|android)/gi)}function n(){function e(){n.length&&head.js.apply(null,n),r()}for(var t=[],n=[],o=0,a=zt.dependencies.length;a>o;o++){var i=zt.dependencies[o];(!i.condition||i.condition())&&(i.async?n.push(i.src):t.push(i.src),"function"==typeof i.callback&&head.ready(i.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],i.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function r(){a(),o(),c(),B(),setTimeout(function(){_t.slides.classList.remove("no-transition"),Ut=!0,b("ready",{indexh:Mt,indexv:Pt,currentSlide:Nt})},1)}function o(){var e=f(document.querySelectorAll(Xt));e.forEach(function(e){var t=f(e.querySelectorAll("section"));t.forEach(function(e,t){t>0&&e.classList.add("future")})})}function a(){_t.theme=document.querySelector("#theme"),_t.wrapper=document.querySelector(".reveal"),_t.slides=document.querySelector(".reveal .slides"),_t.slides.classList.add("no-transition"),_t.background=i(_t.wrapper,"div","backgrounds",null),_t.progress=i(_t.wrapper,"div","progress",""),_t.progressbar=_t.progress.querySelector("span"),i(_t.wrapper,"aside","controls",''),i(_t.wrapper,"div","state-background",null),i(_t.wrapper,"div","pause-overlay",null),zt.controls&&(_t.controls=document.querySelector(".reveal .controls"),_t.controlsLeft=f(document.querySelectorAll(".navigate-left")),_t.controlsRight=f(document.querySelectorAll(".navigate-right")),_t.controlsUp=f(document.querySelectorAll(".navigate-up")),_t.controlsDown=f(document.querySelectorAll(".navigate-down")),_t.controlsPrev=f(document.querySelectorAll(".navigate-prev")),_t.controlsNext=f(document.querySelectorAll(".navigate-next")))}function i(e,t,n,r){var o=e.querySelector("."+n);return o||(o=document.createElement(t),o.classList.add(n),null!==r&&(o.innerHTML=r),e.appendChild(o)),o}function s(){function e(e,t){var n={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition")},r=document.createElement("div");return r.className="slide-background",n.background&&(/^(http|file|\/\/)/gi.test(n.background)||/\.(png|jpg|jpeg|gif|bmp)$/gi.test(n.background)?r.style.backgroundImage="url("+n.background+")":r.style.background=n.background),n.backgroundSize&&(r.style.backgroundSize=n.backgroundSize),n.backgroundImage&&(r.style.backgroundImage='url("'+n.backgroundImage+'")'),n.backgroundColor&&(r.style.backgroundColor=n.backgroundColor),n.backgroundRepeat&&(r.style.backgroundRepeat=n.backgroundRepeat),n.backgroundPosition&&(r.style.backgroundPosition=n.backgroundPosition),n.backgroundTransition&&r.setAttribute("data-background-transition",n.backgroundTransition),t.appendChild(r),r}m()&&document.body.classList.add("print-pdf"),_t.background.innerHTML="",_t.background.classList.add("no-transition"),f(document.querySelectorAll(Xt)).forEach(function(t){var n;n=m()?e(t,t):e(t,_t.background),f(t.querySelectorAll("section")).forEach(function(t){m()?e(t,t):e(t,n)})})}function c(e){if(_t.wrapper.classList.remove(zt.transition),"object"==typeof e&&d(zt,e),Ct===!1&&(zt.transition="linear"),_t.wrapper.classList.add(zt.transition),_t.wrapper.setAttribute("data-transition-speed",zt.transitionSpeed),_t.wrapper.setAttribute("data-background-transition",zt.backgroundTransition),_t.controls&&(_t.controls.style.display=zt.controls&&_t.controls?"block":"none"),_t.progress&&(_t.progress.style.display=zt.progress&&_t.progress?"block":"none"),zt.rtl?_t.wrapper.classList.add("rtl"):_t.wrapper.classList.remove("rtl"),zt.center?_t.wrapper.classList.add("center"):_t.wrapper.classList.remove("center"),zt.mouseWheel?(document.addEventListener("DOMMouseScroll",ht,!1),document.addEventListener("mousewheel",ht,!1)):(document.removeEventListener("DOMMouseScroll",ht,!1),document.removeEventListener("mousewheel",ht,!1)),zt.rollingLinks?w():L(),zt.previewLinks?E():(k(),E("[data-preview-link]")),zt.theme&&_t.theme){var t=_t.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];zt.theme!==r&&(t=t.replace(n,zt.theme),_t.theme.setAttribute("href",t))}U()}function l(){Bt=!0,window.addEventListener("hashchange",At,!1),window.addEventListener("resize",qt,!1),zt.touch&&(_t.wrapper.addEventListener("touchstart",dt,!1),_t.wrapper.addEventListener("touchmove",ft,!1),_t.wrapper.addEventListener("touchend",vt,!1),window.navigator.msPointerEnabled&&(_t.wrapper.addEventListener("MSPointerDown",pt,!1),_t.wrapper.addEventListener("MSPointerMove",gt,!1),_t.wrapper.addEventListener("MSPointerUp",mt,!1))),zt.keyboard&&document.addEventListener("keydown",ut,!1),zt.progress&&_t.progress&&_t.progress.addEventListener("click",yt,!1),zt.controls&&_t.controls&&["touchstart","click"].forEach(function(e){_t.controlsLeft.forEach(function(t){t.addEventListener(e,bt,!1)}),_t.controlsRight.forEach(function(t){t.addEventListener(e,wt,!1)}),_t.controlsUp.forEach(function(t){t.addEventListener(e,Lt,!1)}),_t.controlsDown.forEach(function(t){t.addEventListener(e,Et,!1)}),_t.controlsPrev.forEach(function(t){t.addEventListener(e,kt,!1)}),_t.controlsNext.forEach(function(t){t.addEventListener(e,St,!1)})})}function u(){Bt=!1,document.removeEventListener("keydown",ut,!1),window.removeEventListener("hashchange",At,!1),window.removeEventListener("resize",qt,!1),_t.wrapper.removeEventListener("touchstart",dt,!1),_t.wrapper.removeEventListener("touchmove",ft,!1),_t.wrapper.removeEventListener("touchend",vt,!1),window.navigator.msPointerEnabled&&(_t.wrapper.removeEventListener("MSPointerDown",pt,!1),_t.wrapper.removeEventListener("MSPointerMove",gt,!1),_t.wrapper.removeEventListener("MSPointerUp",mt,!1)),zt.progress&&_t.progress&&_t.progress.removeEventListener("click",yt,!1),zt.controls&&_t.controls&&["touchstart","click"].forEach(function(e){_t.controlsLeft.forEach(function(t){t.removeEventListener(e,bt,!1)}),_t.controlsRight.forEach(function(t){t.removeEventListener(e,wt,!1)}),_t.controlsUp.forEach(function(t){t.removeEventListener(e,Lt,!1)}),_t.controlsDown.forEach(function(t){t.removeEventListener(e,Et,!1)}),_t.controlsPrev.forEach(function(t){t.removeEventListener(e,kt,!1)}),_t.controlsNext.forEach(function(t){t.removeEventListener(e,St,!1)})})}function d(e,t){for(var n in t)e[n]=t[n]}function f(e){return Array.prototype.slice.call(e)}function v(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}function p(e,t){e.style.WebkitTransform=t,e.style.MozTransform=t,e.style.msTransform=t,e.style.OTransform=t,e.style.transform=t}function g(e){var t=0;if(e){var n=0;f(e.childNodes).forEach(function(e){"number"==typeof e.offsetTop&&e.style&&("absolute"===e.style.position&&(n+=1),t=Math.max(t,e.offsetTop+e.offsetHeight))}),0===n&&(t=e.offsetHeight)}return t}function m(){return/print-pdf/gi.test(window.location.search)}function h(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",y,!1),window.addEventListener("orientationchange",y,!1))}function y(){0===window.orientation?(document.documentElement.style.overflow="scroll",document.body.style.height="120%"):(document.documentElement.style.overflow="",document.body.style.height="100%"),setTimeout(function(){window.scrollTo(0,1)},10)}function b(e,t){var n=document.createEvent("HTMLEvents",1,2);n.initEvent(e,!0,!0),d(n,t),_t.wrapper.dispatchEvent(n)}function w(){if(Ct&&!("msPerspective"in document.body.style))for(var e=document.querySelectorAll(Yt+" a:not(.image)"),t=0,n=e.length;n>t;t++){var r=e[t];if(!(!r.textContent||r.querySelector("*")||r.className&&r.classList.contains(r,"roll"))){var o=document.createElement("span");o.setAttribute("data-title",r.text),o.innerHTML=r.innerHTML,r.classList.add("roll"),r.innerHTML="",r.appendChild(o)}}}function L(){for(var e=document.querySelectorAll(Yt+" a.roll"),t=0,n=e.length;n>t;t++){var r=e[t],o=r.querySelector("span");o&&(r.classList.remove("roll"),r.innerHTML=o.innerHTML)}}function E(e){var t=f(document.querySelectorAll(e?e:"a"));t.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",Tt,!1)})}function k(){var e=f(document.querySelectorAll("a"));e.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",Tt,!1)})}function S(e){A(),_t.preview=document.createElement("div"),_t.preview.classList.add("preview-link-overlay"),_t.wrapper.appendChild(_t.preview),_t.preview.innerHTML=["
",'','',"
",'
','
','',"
"].join(""),_t.preview.querySelector("iframe").addEventListener("load",function(){_t.preview.classList.add("loaded")},!1),_t.preview.querySelector(".close").addEventListener("click",function(e){A(),e.preventDefault()},!1),_t.preview.querySelector(".external").addEventListener("click",function(){A()},!1),setTimeout(function(){_t.preview.classList.add("visible")},1)}function A(){_t.preview&&(_t.preview.setAttribute("src",""),_t.preview.parentNode.removeChild(_t.preview),_t.preview=null)}function q(e){var t=f(e);return t.forEach(function(e,t){e.hasAttribute("data-fragment-index")||e.setAttribute("data-fragment-index",t)}),t.sort(function(e,t){return e.getAttribute("data-fragment-index")-t.getAttribute("data-fragment-index")}),t}function x(){if(_t.wrapper&&!m()){var e=_t.wrapper.offsetWidth,t=_t.wrapper.offsetHeight;e-=t*zt.margin,t-=t*zt.margin;var n=zt.width,r=zt.height;"string"==typeof n&&/%$/.test(n)&&(n=parseInt(n,10)/100*e),"string"==typeof r&&/%$/.test(r)&&(r=parseInt(r,10)/100*t),_t.slides.style.width=n+"px",_t.slides.style.height=r+"px",Ft=Math.min(e/n,t/r),Ft=Math.max(Ft,zt.minScale),Ft=Math.min(Ft,zt.maxScale),void 0===_t.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)?p(_t.slides,"translate(-50%, -50%) scale("+Ft+") translate(50%, 50%)"):_t.slides.style.zoom=Ft;for(var o=f(document.querySelectorAll(Yt)),a=0,i=o.length;i>a;a++){var s=o[a];"none"!==s.style.display&&(s.style.top=zt.center?s.classList.contains("stack")?0:Math.max(-(g(s)/2)-20,-r/2)+"px":"")}F()}}function T(e,t){"object"==typeof e&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function M(e){if("object"==typeof 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 P(){if(zt.overview){rt();var e=_t.wrapper.classList.contains("overview"),t=400>window.innerWidth?1e3:2500;_t.wrapper.classList.add("overview"),_t.wrapper.classList.remove("exit-overview"),clearTimeout(Zt),clearTimeout(Qt),Zt=setTimeout(function(){for(var n=document.querySelectorAll(Xt),r=0,o=n.length;o>r;r++){var a=n[r],i=zt.rtl?-105:105;if(a.setAttribute("data-index-h",r),p(a,"translateZ(-"+t+"px) translate("+(r-Mt)*i+"%, 0%)"),a.classList.contains("stack"))for(var s=a.querySelectorAll("section"),c=0,l=s.length;l>c;c++){var u=r===Mt?Pt:M(a),d=s[c];d.setAttribute("data-index-h",r),d.setAttribute("data-index-v",c),p(d,"translate(0%, "+105*(c-u)+"%)"),d.addEventListener("click",xt,!0)}else a.addEventListener("click",xt,!0)}j(),x(),e||b("overviewshown",{indexh:Mt,indexv:Pt,currentSlide:Nt})},10)}}function D(){if(zt.overview){clearTimeout(Zt),clearTimeout(Qt),_t.wrapper.classList.remove("overview"),_t.wrapper.classList.add("exit-overview"),Qt=setTimeout(function(){_t.wrapper.classList.remove("exit-overview")},10);for(var e=f(document.querySelectorAll(Yt)),t=0,n=e.length;n>t;t++){var r=e[t];r.style.display="",p(r,""),r.removeEventListener("click",xt,!0)}z(Mt,Pt),nt(),b("overviewhidden",{indexh:Mt,indexv:Pt,currentSlide:Nt})}}function N(e){"boolean"==typeof e?e?P():D():C()?D():P()}function C(){return _t.wrapper.classList.contains("overview")}function R(e){return e=e?e:Nt,e&&!!e.parentNode.nodeName.match(/section/i)}function I(){var e=document.body,t=e.requestFullScreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullScreen;t&&t.apply(e)}function Y(){var e=_t.wrapper.classList.contains("paused");rt(),_t.wrapper.classList.add("paused"),e===!1&&b("paused")}function X(){var e=_t.wrapper.classList.contains("paused");_t.wrapper.classList.remove("paused"),nt(),e&&b("resumed")}function H(){O()?X():Y()}function O(){return _t.wrapper.classList.contains("paused")}function z(e,t,n,r){Dt=Nt;var o=document.querySelectorAll(Xt);void 0===t&&(t=M(o[e])),Dt&&Dt.parentNode&&Dt.parentNode.classList.contains("stack")&&T(Dt.parentNode,Pt);var a=jt.concat();jt.length=0;var i=Mt,s=Pt;Mt=W(Xt,void 0===e?Mt:e),Pt=W(Ht,void 0===t?Pt:t),j(),x();e:for(var c=0,l=jt.length;l>c;c++){for(var u=0;a.length>u;u++)if(a[u]===jt[c]){a.splice(u,1);continue e}document.documentElement.classList.add(jt[c]),b(jt[c])}for(;a.length;)document.documentElement.classList.remove(a.pop());C()&&P();var d=o[Mt],v=d.querySelectorAll("section");if(Nt=v[Pt]||d,n!==void 0){var p=q(Nt.querySelectorAll(".fragment"));f(p).forEach(function(e,t){n>t?e.classList.add("visible"):e.classList.remove("visible")})}var g=Mt!==i||Pt!==s;g?b("slidechanged",{indexh:Mt,indexv:Pt,previousSlide:Dt,currentSlide:Nt,origin:r}):Dt=null,Dt&&(Dt.classList.remove("present"),document.querySelector(Ot).classList.contains("present")&&setTimeout(function(){var e,t=f(document.querySelectorAll(Xt+".stack"));for(e in t)t[e]&&T(t[e],0)},0)),g&&(Q(Dt),Z(Nt)),_(),F(),K(),G()}function U(){u(),l(),x(),Wt=zt.autoSlide,nt(),s(),_(),F(),K()}function W(e,t){var n=f(document.querySelectorAll(e)),r=n.length;if(r){zt.loop&&(t%=r,0>t&&(t=r+t)),t=Math.max(Math.min(t,r-1),0);for(var o=0;r>o;o++){var a=n[o],i=zt.rtl&&!R(a);if(a.classList.remove("past"),a.classList.remove("present"),a.classList.remove("future"),a.setAttribute("hidden",""),t>o)a.classList.add(i?"future":"past");else if(o>t){a.classList.add(i?"past":"future");for(var s=f(a.querySelectorAll(".fragment.visible"));s.length;)s.pop().classList.remove("visible")}a.querySelector("section")&&a.classList.add("stack")}n[t].classList.add("present"),n[t].removeAttribute("hidden");var c=n[t].getAttribute("data-state");c&&(jt=jt.concat(c.split(" ")));var l=n[t].getAttribute("data-autoslide");Wt=l?parseInt(l,10):zt.autoSlide,nt()}else t=0;return t}function j(){var e,t,n=f(document.querySelectorAll(Xt)),r=n.length;if(r){var o=C()?10:zt.viewDistance;It&&(o=C()?6:1);for(var a=0;r>a;a++){var i=n[a],s=f(i.querySelectorAll("section")),c=s.length;if(e=Math.abs((Mt-a)%(r-o))||0,c){i.style.display="block";for(var l=M(i),u=0;c>u;u++){var d=s[u];t=a===Mt?Math.abs(Pt-u):Math.abs(u-l),d.style.display=e+t>o?"none":"block"}}else i.style.display=e>o?"none":"block"}}}function F(){if(zt.progress&&_t.progress){var e=f(document.querySelectorAll(Xt)),t=document.querySelectorAll(Yt+":not(.stack)").length,n=0;e:for(var r=0;e.length>r;r++){for(var o=e[r],a=f(o.querySelectorAll("section")),i=0;a.length>i;i++){if(a[i].classList.contains("present"))break e;n++}if(o.classList.contains("present"))break;o.classList.contains("stack")===!1&&n++}_t.progressbar.style.width=n/(t-1)*window.innerWidth+"px"}}function _(){if(zt.controls&&_t.controls){var e=$(),t=V();_t.controlsLeft.concat(_t.controlsRight).concat(_t.controlsUp).concat(_t.controlsDown).concat(_t.controlsPrev).concat(_t.controlsNext).forEach(function(e){e.classList.remove("enabled"),e.classList.remove("fragmented")}),e.left&&_t.controlsLeft.forEach(function(e){e.classList.add("enabled")}),e.right&&_t.controlsRight.forEach(function(e){e.classList.add("enabled")}),e.up&&_t.controlsUp.forEach(function(e){e.classList.add("enabled")}),e.down&&_t.controlsDown.forEach(function(e){e.classList.add("enabled")}),(e.left||e.up)&&_t.controlsPrev.forEach(function(e){e.classList.add("enabled")}),(e.right||e.down)&&_t.controlsNext.forEach(function(e){e.classList.add("enabled")}),Nt&&(t.prev&&_t.controlsPrev.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&_t.controlsNext.forEach(function(e){e.classList.add("fragmented","enabled")}),R(Nt)?(t.prev&&_t.controlsUp.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&_t.controlsDown.forEach(function(e){e.classList.add("fragmented","enabled")})):(t.prev&&_t.controlsLeft.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&_t.controlsRight.forEach(function(e){e.classList.add("fragmented","enabled")})))}}function K(){f(_t.background.childNodes).forEach(function(e,t){var n=zt.rtl?"future":"past",r=zt.rtl?"past":"future";e.className="slide-background "+(Mt>t?n:t>Mt?r:"present"),f(e.childNodes).forEach(function(e,t){e.className="slide-background "+(Pt>t?"past":t>Pt?"future":"present")})}),setTimeout(function(){_t.background.classList.remove("no-transition")},1)}function $(){var e=document.querySelectorAll(Xt),t=document.querySelectorAll(Ht),n={left:Mt>0||zt.loop,right:e.length-1>Mt||zt.loop,up:Pt>0,down:t.length-1>Pt};if(zt.rtl){var r=n.left;n.left=n.right,n.right=r}return n}function V(){if(Nt&&zt.fragments){var e=Nt.querySelectorAll(".fragment"),t=Nt.querySelectorAll(".fragment:not(.visible)");return{prev:e.length-t.length>0,next:!!t.length}}return{prev:!1,next:!1}}function Z(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-autoplay")&&e.play()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-autoplay")&&e.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")}))}function Q(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-ignore")||e.pause()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.contentWindow.postMessage||e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}))}function B(){var e=window.location.hash,t=e.slice(2).split("/"),n=e.replace(/#|\//gi,"");if(isNaN(parseInt(t[0],10))&&n.length){var r=document.querySelector("#"+n);if(r){var o=Reveal.getIndices(r);z(o.h,o.v)}else z(Mt||0,Pt||0)}else{var a=parseInt(t[0],10)||0,i=parseInt(t[1],10)||0;(a!==Mt||i!==Pt)&&z(a,i)}}function G(e){if(zt.history)if(clearTimeout(Vt),"number"==typeof e)Vt=setTimeout(G,e);else{var t="/";Nt&&"string"==typeof Nt.getAttribute("id")?t="/"+Nt.getAttribute("id"):((Mt>0||Pt>0)&&(t+=Mt),Pt>0&&(t+="/"+Pt)),window.location.hash=t}}function J(e){var t,n=Mt,r=Pt;if(e){var o=R(e),a=o?e.parentNode:e,i=f(document.querySelectorAll(Xt));n=Math.max(i.indexOf(a),0),o&&(r=Math.max(f(e.parentNode.querySelectorAll("section")).indexOf(e),0))}if(!e&&Nt){var s=Nt.querySelectorAll(".fragment").length>0;if(s){var c=Nt.querySelectorAll(".fragment.visible");t=c.length}}return{h:n,v:r,f:t}}function et(){if(Nt&&zt.fragments){var e=q(Nt.querySelectorAll(".fragment:not(.visible)"));if(e.length){var t=e[0].getAttribute("data-fragment-index");return e=Nt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.add("visible")}),b("fragmentshown",{fragment:e[0],fragments:e}),_(),!0}}return!1}function tt(){if(Nt&&zt.fragments){var e=q(Nt.querySelectorAll(".fragment.visible"));if(e.length){var t=e[e.length-1].getAttribute("data-fragment-index");return e=Nt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.remove("visible")}),b("fragmenthidden",{fragment:e[0],fragments:e}),_(),!0}}return!1}function nt(){clearTimeout($t),!Wt||O()||C()||($t=setTimeout(lt,Wt))}function rt(){clearTimeout($t)}function ot(){zt.rtl?(C()||et()===!1)&&$().left&&z(Mt+1):(C()||tt()===!1)&&$().left&&z(Mt-1)}function at(){zt.rtl?(C()||tt()===!1)&&$().right&&z(Mt-1):(C()||et()===!1)&&$().right&&z(Mt+1)}function it(){(C()||tt()===!1)&&$().up&&z(Mt,Pt-1)}function st(){(C()||et()===!1)&&$().down&&z(Mt,Pt+1)}function ct(){if(tt()===!1)if($().up)it();else{var e=document.querySelector(Xt+".past:nth-child("+Mt+")");if(e){var t=e.querySelectorAll("section").length-1||void 0,n=Mt-1;z(n,t)}}}function lt(){et()===!1&&($().down?st():at()),nt()}function ut(e){document.activeElement;var t=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&"inherit"===document.activeElement.contentEditable);if(!(t||e.shiftKey&&32!==e.keyCode||e.altKey||e.ctrlKey||e.metaKey)){if(O()&&-1===[66,190,191].indexOf(e.keyCode))return!1;var n=!1;if("object"==typeof zt.keyboard)for(var r in zt.keyboard)if(parseInt(r,10)===e.keyCode){var o=zt.keyboard[r];"function"==typeof o?o.apply(null,[e]):"string"==typeof o&&"function"==typeof Reveal[o]&&Reveal[o].call(),n=!0}if(n===!1)switch(n=!0,e.keyCode){case 80:case 33:ct();break;case 78:case 34:lt();break;case 72:case 37:ot();break;case 76:case 39:at();break;case 75:case 38:it();break;case 74:case 40:st();break;case 36:z(0);break;case 35:z(Number.MAX_VALUE);break;case 32:C()?D():e.shiftKey?ct():lt();break;case 13:C()?D():n=!1;break;case 66:case 190:case 191:H();break;case 70:I();break;default:n=!1}n?e.preventDefault():27!==e.keyCode&&79!==e.keyCode||!Ct||(N(),e.preventDefault()),nt()}}function dt(e){Gt.startX=e.touches[0].clientX,Gt.startY=e.touches[0].clientY,Gt.startCount=e.touches.length,2===e.touches.length&&zt.overview&&(Gt.startSpan=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:Gt.startX,y:Gt.startY}))}function ft(e){if(Gt.captured)navigator.userAgent.match(/android/gi)&&e.preventDefault();else{var t=e.touches[0].clientX,n=e.touches[0].clientY;if(2===e.touches.length&&2===Gt.startCount&&zt.overview){var r=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:Gt.startX,y:Gt.startY});Math.abs(Gt.startSpan-r)>Gt.threshold&&(Gt.captured=!0,Gt.startSpan>r?P():D()),e.preventDefault()}else if(1===e.touches.length&&2!==Gt.startCount){var o=t-Gt.startX,a=n-Gt.startY;o>Gt.threshold&&Math.abs(o)>Math.abs(a)?(Gt.captured=!0,ot()):-Gt.threshold>o&&Math.abs(o)>Math.abs(a)?(Gt.captured=!0,at()):a>Gt.threshold?(Gt.captured=!0,it()):-Gt.threshold>a&&(Gt.captured=!0,st()),zt.embedded?(Gt.captured||R(Nt))&&e.preventDefault():e.preventDefault()}}}function vt(){Gt.captured=!1}function pt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],dt(e))}function gt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],ft(e))}function mt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],vt(e))}function ht(e){if(Date.now()-Kt>600){Kt=Date.now();var t=e.detail||-e.wheelDelta;t>0?lt():ct()}}function yt(e){e.preventDefault();var t=f(document.querySelectorAll(Xt)).length,n=Math.floor(e.clientX/_t.wrapper.offsetWidth*t);z(n)}function bt(e){e.preventDefault(),ot()}function wt(e){e.preventDefault(),at()}function Lt(e){e.preventDefault(),it()}function Et(e){e.preventDefault(),st()}function kt(e){e.preventDefault(),ct()}function St(e){e.preventDefault(),lt()}function At(){B()}function qt(){x()}function xt(e){if(Bt&&C()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(D(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),r=parseInt(t.getAttribute("data-index-v"),10);z(n,r)}}}function Tt(e){var t=e.target.getAttribute("href");t&&(S(t),e.preventDefault())}var Mt,Pt,Dt,Nt,Ct,Rt,It,Yt=".reveal .slides section",Xt=".reveal .slides>section",Ht=".reveal .slides>section.present>section",Ot=".reveal .slides>section:first-child",zt={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,mouseWheel:!1,rollingLinks:!1,previewLinks:!1,theme:null,transition:"default",transitionSpeed:"default",backgroundTransition:"default",viewDistance:3,dependencies:[]},Ut=!1,Wt=0,jt=[],Ft=1,_t={},Kt=0,$t=0,Vt=0,Zt=0,Qt=0,Bt=!1,Gt={startX:0,startY:0,startSpan:0,startCount:0,captured:!1,threshold:40};return{initialize:e,configure:c,sync:U,slide:z,left:ot,right:at,up:it,down:st,prev:ct,next:lt,prevFragment:tt,nextFragment:et,navigateTo:z,navigateLeft:ot,navigateRight:at,navigateUp:it,navigateDown:st,navigatePrev:ct,navigateNext:lt,layout:x,availableRoutes:$,availableFragments:V,toggleOverview:N,togglePause:H,isOverview:C,isPaused:O,addEventListeners:l,removeEventListeners:u,getIndices:J,getSlide:function(e,t){var n=document.querySelectorAll(Xt)[e],r=n&&n.querySelectorAll("section");return t!==void 0?r?r[t]:void 0:n},getPreviousSlide:function(){return Dt},getCurrentSlide:function(){return Nt},getScale:function(){return Ft},getConfig:function(){return zt},getQueryHash:function(){var e={};return location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(t){e[t.split("=").shift()]=t.split("=").pop()}),e},isFirstSlide:function(){return null==document.querySelector(Yt+".past")?!0:!1},isLastSlide:function(){return Nt&&Nt.classList.contains(".stack")?null==Nt.querySelector(Yt+".future")?!0:!1:null==document.querySelector(Yt+".future")?!0:!1},isReady:function(){return Ut},addEventListener:function(e,t,n){"addEventListener"in window&&(_t.wrapper||document.querySelector(".reveal")).addEventListener(e,t,n)},removeEventListener:function(e,t,n){"addEventListener"in window&&(_t.wrapper||document.querySelector(".reveal")).removeEventListener(e,t,n)}}}(); \ No newline at end of file +var Reveal=function(){"use strict";function e(e){return t(),Ht||It?(window.addEventListener("load",M,!1),d(Wt,e),b(),n(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){It="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,Ht="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,Yt=navigator.userAgent.match(/(iphone|ipod|android)/gi)}function n(){function e(){n.length&&head.js.apply(null,n),r()}for(var t=[],n=[],o=0,a=Wt.dependencies.length;a>o;o++){var i=Wt.dependencies[o];(!i.condition||i.condition())&&(i.async?n.push(i.src):t.push(i.src),"function"==typeof i.callback&&head.ready(i.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],i.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function r(){a(),o(),c(),J(),setTimeout(function(){$t.slides.classList.remove("no-transition"),jt=!0,L("ready",{indexh:Pt,indexv:Dt,currentSlide:Rt})},1)}function o(){var e=f(document.querySelectorAll(Ot));e.forEach(function(e){var t=f(e.querySelectorAll("section"));t.forEach(function(e,t){t>0&&e.classList.add("future")})})}function a(){$t.theme=document.querySelector("#theme"),$t.wrapper=document.querySelector(".reveal"),$t.slides=document.querySelector(".reveal .slides"),$t.slides.classList.add("no-transition"),$t.background=i($t.wrapper,"div","backgrounds",null),$t.progress=i($t.wrapper,"div","progress",""),$t.progressbar=$t.progress.querySelector("span"),i($t.wrapper,"aside","controls",''),i($t.wrapper,"div","state-background",null),i($t.wrapper,"div","pause-overlay",null),Wt.controls&&($t.controls=document.querySelector(".reveal .controls"),$t.controlsLeft=f(document.querySelectorAll(".navigate-left")),$t.controlsRight=f(document.querySelectorAll(".navigate-right")),$t.controlsUp=f(document.querySelectorAll(".navigate-up")),$t.controlsDown=f(document.querySelectorAll(".navigate-down")),$t.controlsPrev=f(document.querySelectorAll(".navigate-prev")),$t.controlsNext=f(document.querySelectorAll(".navigate-next")))}function i(e,t,n,r){var o=e.querySelector("."+n);return o||(o=document.createElement(t),o.classList.add(n),null!==r&&(o.innerHTML=r),e.appendChild(o)),o}function s(){function e(e,t){var n={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition")},r=document.createElement("div");return r.className="slide-background",n.background&&(/^(http|file|\/\/)/gi.test(n.background)||/\.(png|jpg|jpeg|gif|bmp)$/gi.test(n.background)?r.style.backgroundImage="url("+n.background+")":r.style.background=n.background),n.backgroundSize&&(r.style.backgroundSize=n.backgroundSize),n.backgroundImage&&(r.style.backgroundImage='url("'+n.backgroundImage+'")'),n.backgroundColor&&(r.style.backgroundColor=n.backgroundColor),n.backgroundRepeat&&(r.style.backgroundRepeat=n.backgroundRepeat),n.backgroundPosition&&(r.style.backgroundPosition=n.backgroundPosition),n.backgroundTransition&&r.setAttribute("data-background-transition",n.backgroundTransition),t.appendChild(r),r}y()&&document.body.classList.add("print-pdf"),$t.background.innerHTML="",$t.background.classList.add("no-transition"),f(document.querySelectorAll(Ot)).forEach(function(t){var n;n=y()?e(t,t):e(t,$t.background),f(t.querySelectorAll("section")).forEach(function(t){y()?e(t,t):e(t,n)})})}function c(e){if($t.wrapper.classList.remove(Wt.transition),"object"==typeof e&&d(Wt,e),It===!1&&(Wt.transition="linear"),$t.wrapper.classList.add(Wt.transition),$t.wrapper.setAttribute("data-transition-speed",Wt.transitionSpeed),$t.wrapper.setAttribute("data-background-transition",Wt.backgroundTransition),$t.controls&&($t.controls.style.display=Wt.controls&&$t.controls?"block":"none"),$t.progress&&($t.progress.style.display=Wt.progress&&$t.progress?"block":"none"),Wt.rtl?$t.wrapper.classList.add("rtl"):$t.wrapper.classList.remove("rtl"),Wt.center?$t.wrapper.classList.add("center"):$t.wrapper.classList.remove("center"),Wt.mouseWheel?(document.addEventListener("DOMMouseScroll",bt,!1),document.addEventListener("mousewheel",bt,!1)):(document.removeEventListener("DOMMouseScroll",bt,!1),document.removeEventListener("mousewheel",bt,!1)),Wt.rollingLinks?E():k(),Wt.previewLinks?S():(A(),S("[data-preview-link]")),Wt.theme&&$t.theme){var t=$t.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];Wt.theme!==r&&(t=t.replace(n,Wt.theme),$t.theme.setAttribute("href",t))}j()}function l(){Jt=!0,window.addEventListener("hashchange",xt,!1),window.addEventListener("resize",Tt,!1),Wt.touch&&($t.wrapper.addEventListener("touchstart",vt,!1),$t.wrapper.addEventListener("touchmove",pt,!1),$t.wrapper.addEventListener("touchend",gt,!1),window.navigator.msPointerEnabled&&($t.wrapper.addEventListener("MSPointerDown",mt,!1),$t.wrapper.addEventListener("MSPointerMove",ht,!1),$t.wrapper.addEventListener("MSPointerUp",yt,!1))),Wt.keyboard&&document.addEventListener("keydown",ft,!1),Wt.progress&&$t.progress&&$t.progress.addEventListener("click",wt,!1),Wt.controls&&$t.controls&&["touchstart","click"].forEach(function(e){$t.controlsLeft.forEach(function(t){t.addEventListener(e,Lt,!1)}),$t.controlsRight.forEach(function(t){t.addEventListener(e,Et,!1)}),$t.controlsUp.forEach(function(t){t.addEventListener(e,kt,!1)}),$t.controlsDown.forEach(function(t){t.addEventListener(e,St,!1)}),$t.controlsPrev.forEach(function(t){t.addEventListener(e,At,!1)}),$t.controlsNext.forEach(function(t){t.addEventListener(e,qt,!1)})})}function u(){Jt=!1,document.removeEventListener("keydown",ft,!1),window.removeEventListener("hashchange",xt,!1),window.removeEventListener("resize",Tt,!1),$t.wrapper.removeEventListener("touchstart",vt,!1),$t.wrapper.removeEventListener("touchmove",pt,!1),$t.wrapper.removeEventListener("touchend",gt,!1),window.navigator.msPointerEnabled&&($t.wrapper.removeEventListener("MSPointerDown",mt,!1),$t.wrapper.removeEventListener("MSPointerMove",ht,!1),$t.wrapper.removeEventListener("MSPointerUp",yt,!1)),Wt.progress&&$t.progress&&$t.progress.removeEventListener("click",wt,!1),Wt.controls&&$t.controls&&["touchstart","click"].forEach(function(e){$t.controlsLeft.forEach(function(t){t.removeEventListener(e,Lt,!1)}),$t.controlsRight.forEach(function(t){t.removeEventListener(e,Et,!1)}),$t.controlsUp.forEach(function(t){t.removeEventListener(e,kt,!1)}),$t.controlsDown.forEach(function(t){t.removeEventListener(e,St,!1)}),$t.controlsPrev.forEach(function(t){t.removeEventListener(e,At,!1)}),$t.controlsNext.forEach(function(t){t.removeEventListener(e,qt,!1)})})}function d(e,t){for(var n in t)e[n]=t[n]}function f(e){return Array.prototype.slice.call(e)}function v(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}function p(e,t){e.style.WebkitTransform=t,e.style.MozTransform=t,e.style.msTransform=t,e.style.OTransform=t,e.style.transform=t}function g(e){var t=0;if(e){var n=0;f(e.childNodes).forEach(function(e){"number"==typeof e.offsetTop&&e.style&&("absolute"===e.style.position&&(n+=1),t=Math.max(t,e.offsetTop+e.offsetHeight))}),0===n&&(t=e.offsetHeight)}return t}function m(e,t){return window.getComputedStyle?window.getComputedStyle(e)[t]:e.currentStyle?e.currentStyle(t):e.style[t]}function h(e){var t=0;if(e){var n=e.parentNode,r=n.childNodes;t=Wt.height,f(r).forEach(function(n){if("number"==typeof n.offsetHeight&&n!==e){var r=parseInt(m(n,"margin-top"),10),o=parseInt(m(n,"margin-bottom"),10);console.log(r,o),t-=n.offsetHeight+r+o}})}return t}function y(){return/print-pdf/gi.test(window.location.search)}function b(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",w,!1),window.addEventListener("orientationchange",w,!1))}function w(){0===window.orientation?(document.documentElement.style.overflow="scroll",document.body.style.height="120%"):(document.documentElement.style.overflow="",document.body.style.height="100%"),setTimeout(function(){window.scrollTo(0,1)},10)}function L(e,t){var n=document.createEvent("HTMLEvents",1,2);n.initEvent(e,!0,!0),d(n,t),$t.wrapper.dispatchEvent(n)}function E(){if(It&&!("msPerspective"in document.body.style))for(var e=document.querySelectorAll(Xt+" a:not(.image)"),t=0,n=e.length;n>t;t++){var r=e[t];if(!(!r.textContent||r.querySelector("*")||r.className&&r.classList.contains(r,"roll"))){var o=document.createElement("span");o.setAttribute("data-title",r.text),o.innerHTML=r.innerHTML,r.classList.add("roll"),r.innerHTML="",r.appendChild(o)}}}function k(){for(var e=document.querySelectorAll(Xt+" a.roll"),t=0,n=e.length;n>t;t++){var r=e[t],o=r.querySelector("span");o&&(r.classList.remove("roll"),r.innerHTML=o.innerHTML)}}function S(e){var t=f(document.querySelectorAll(e?e:"a"));t.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",Nt,!1)})}function A(){var e=f(document.querySelectorAll("a"));e.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",Nt,!1)})}function q(e){x(),$t.preview=document.createElement("div"),$t.preview.classList.add("preview-link-overlay"),$t.wrapper.appendChild($t.preview),$t.preview.innerHTML=["
",'','',"
",'
','
','',"
"].join(""),$t.preview.querySelector("iframe").addEventListener("load",function(){$t.preview.classList.add("loaded")},!1),$t.preview.querySelector(".close").addEventListener("click",function(e){x(),e.preventDefault()},!1),$t.preview.querySelector(".external").addEventListener("click",function(){x()},!1),setTimeout(function(){$t.preview.classList.add("visible")},1)}function x(){$t.preview&&($t.preview.setAttribute("src",""),$t.preview.parentNode.removeChild($t.preview),$t.preview=null)}function T(e){var t=f(e);return t.forEach(function(e,t){e.hasAttribute("data-fragment-index")||e.setAttribute("data-fragment-index",t)}),t.sort(function(e,t){return e.getAttribute("data-fragment-index")-t.getAttribute("data-fragment-index")}),t}function M(){if($t.wrapper&&!y()){var e=$t.wrapper.offsetWidth,t=$t.wrapper.offsetHeight;e-=t*Wt.margin,t-=t*Wt.margin;var n=Wt.width,r=Wt.height;"string"==typeof n&&/%$/.test(n)&&(n=parseInt(n,10)/100*e),"string"==typeof r&&/%$/.test(r)&&(r=parseInt(r,10)/100*t),$t.slides.style.width=n+"px",$t.slides.style.height=r+"px",Kt=Math.min(e/n,t/r),Kt=Math.max(Kt,Wt.minScale),Kt=Math.min(Kt,Wt.maxScale),void 0===$t.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)?p($t.slides,"translate(-50%, -50%) scale("+Kt+") translate(50%, 50%)"):$t.slides.style.zoom=Kt;for(var o=f(document.querySelectorAll(Xt)),a=0,i=o.length;i>a;a++){var s=o[a];"none"!==s.style.display&&(s.style.top=Wt.center?s.classList.contains("stack")?0:Math.max(-(g(s)/2)-20,-r/2)+"px":"")}K(),f($t.slides.querySelectorAll("section > .remaining-height")).forEach(function(e){e.style.height=h(e)+"px"})}}function N(e,t){"object"==typeof e&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function P(e){if("object"==typeof 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 D(){if(Wt.overview){at();var e=$t.wrapper.classList.contains("overview"),t=400>window.innerWidth?1e3:2500;$t.wrapper.classList.add("overview"),$t.wrapper.classList.remove("exit-overview"),clearTimeout(Bt),clearTimeout(Gt),Bt=setTimeout(function(){for(var n=document.querySelectorAll(Ot),r=0,o=n.length;o>r;r++){var a=n[r],i=Wt.rtl?-105:105;if(a.setAttribute("data-index-h",r),p(a,"translateZ(-"+t+"px) translate("+(r-Pt)*i+"%, 0%)"),a.classList.contains("stack"))for(var s=a.querySelectorAll("section"),c=0,l=s.length;l>c;c++){var u=r===Pt?Dt:P(a),d=s[c];d.setAttribute("data-index-h",r),d.setAttribute("data-index-v",c),p(d,"translate(0%, "+105*(c-u)+"%)"),d.addEventListener("click",Mt,!0)}else a.addEventListener("click",Mt,!0)}_(),M(),e||L("overviewshown",{indexh:Pt,indexv:Dt,currentSlide:Rt})},10)}}function C(){if(Wt.overview){clearTimeout(Bt),clearTimeout(Gt),$t.wrapper.classList.remove("overview"),$t.wrapper.classList.add("exit-overview"),Gt=setTimeout(function(){$t.wrapper.classList.remove("exit-overview")},10);for(var e=f(document.querySelectorAll(Xt)),t=0,n=e.length;n>t;t++){var r=e[t];r.style.display="",p(r,""),r.removeEventListener("click",Mt,!0)}W(Pt,Dt),ot(),L("overviewhidden",{indexh:Pt,indexv:Dt,currentSlide:Rt})}}function R(e){"boolean"==typeof e?e?D():C():I()?C():D()}function I(){return $t.wrapper.classList.contains("overview")}function H(e){return e=e?e:Rt,e&&!!e.parentNode.nodeName.match(/section/i)}function Y(){var e=document.body,t=e.requestFullScreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullScreen;t&&t.apply(e)}function X(){var e=$t.wrapper.classList.contains("paused");at(),$t.wrapper.classList.add("paused"),e===!1&&L("paused")}function O(){var e=$t.wrapper.classList.contains("paused");$t.wrapper.classList.remove("paused"),ot(),e&&L("resumed")}function z(){U()?O():X()}function U(){return $t.wrapper.classList.contains("paused")}function W(e,t,n,r){Ct=Rt;var o=document.querySelectorAll(Ot);void 0===t&&(t=P(o[e])),Ct&&Ct.parentNode&&Ct.parentNode.classList.contains("stack")&&N(Ct.parentNode,Dt);var a=_t.concat();_t.length=0;var i=Pt,s=Dt;Pt=F(Ot,void 0===e?Pt:e),Dt=F(zt,void 0===t?Dt:t),_(),M();e:for(var c=0,l=_t.length;l>c;c++){for(var u=0;a.length>u;u++)if(a[u]===_t[c]){a.splice(u,1);continue e}document.documentElement.classList.add(_t[c]),L(_t[c])}for(;a.length;)document.documentElement.classList.remove(a.pop());I()&&D();var d=o[Pt],v=d.querySelectorAll("section");if(Rt=v[Dt]||d,n!==void 0){var p=T(Rt.querySelectorAll(".fragment"));f(p).forEach(function(e,t){n>t?e.classList.add("visible"):e.classList.remove("visible")})}var g=Pt!==i||Dt!==s;g?L("slidechanged",{indexh:Pt,indexv:Dt,previousSlide:Ct,currentSlide:Rt,origin:r}):Ct=null,Ct&&(Ct.classList.remove("present"),document.querySelector(Ut).classList.contains("present")&&setTimeout(function(){var e,t=f(document.querySelectorAll(Ot+".stack"));for(e in t)t[e]&&N(t[e],0)},0)),g&&(G(Ct),B(Rt)),$(),K(),V(),et()}function j(){u(),l(),M(),Ft=Wt.autoSlide,ot(),s(),$(),K(),V()}function F(e,t){var n=f(document.querySelectorAll(e)),r=n.length;if(r){Wt.loop&&(t%=r,0>t&&(t=r+t)),t=Math.max(Math.min(t,r-1),0);for(var o=0;r>o;o++){var a=n[o],i=Wt.rtl&&!H(a);if(a.classList.remove("past"),a.classList.remove("present"),a.classList.remove("future"),a.setAttribute("hidden",""),t>o)a.classList.add(i?"future":"past");else if(o>t){a.classList.add(i?"past":"future");for(var s=f(a.querySelectorAll(".fragment.visible"));s.length;)s.pop().classList.remove("visible")}a.querySelector("section")&&a.classList.add("stack")}n[t].classList.add("present"),n[t].removeAttribute("hidden");var c=n[t].getAttribute("data-state");c&&(_t=_t.concat(c.split(" ")));var l=n[t].getAttribute("data-autoslide");Ft=l?parseInt(l,10):Wt.autoSlide,ot()}else t=0;return t}function _(){var e,t,n=f(document.querySelectorAll(Ot)),r=n.length;if(r){var o=I()?10:Wt.viewDistance;Yt&&(o=I()?6:1);for(var a=0;r>a;a++){var i=n[a],s=f(i.querySelectorAll("section")),c=s.length;if(e=Math.abs((Pt-a)%(r-o))||0,c){i.style.display="block";for(var l=P(i),u=0;c>u;u++){var d=s[u];t=a===Pt?Math.abs(Dt-u):Math.abs(u-l),d.style.display=e+t>o?"none":"block"}}else i.style.display=e>o?"none":"block"}}}function K(){if(Wt.progress&&$t.progress){var e=f(document.querySelectorAll(Ot)),t=document.querySelectorAll(Xt+":not(.stack)").length,n=0;e:for(var r=0;e.length>r;r++){for(var o=e[r],a=f(o.querySelectorAll("section")),i=0;a.length>i;i++){if(a[i].classList.contains("present"))break e;n++}if(o.classList.contains("present"))break;o.classList.contains("stack")===!1&&n++}$t.progressbar.style.width=n/(t-1)*window.innerWidth+"px"}}function $(){if(Wt.controls&&$t.controls){var e=Z(),t=Q();$t.controlsLeft.concat($t.controlsRight).concat($t.controlsUp).concat($t.controlsDown).concat($t.controlsPrev).concat($t.controlsNext).forEach(function(e){e.classList.remove("enabled"),e.classList.remove("fragmented")}),e.left&&$t.controlsLeft.forEach(function(e){e.classList.add("enabled")}),e.right&&$t.controlsRight.forEach(function(e){e.classList.add("enabled")}),e.up&&$t.controlsUp.forEach(function(e){e.classList.add("enabled")}),e.down&&$t.controlsDown.forEach(function(e){e.classList.add("enabled")}),(e.left||e.up)&&$t.controlsPrev.forEach(function(e){e.classList.add("enabled")}),(e.right||e.down)&&$t.controlsNext.forEach(function(e){e.classList.add("enabled")}),Rt&&(t.prev&&$t.controlsPrev.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&$t.controlsNext.forEach(function(e){e.classList.add("fragmented","enabled")}),H(Rt)?(t.prev&&$t.controlsUp.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&$t.controlsDown.forEach(function(e){e.classList.add("fragmented","enabled")})):(t.prev&&$t.controlsLeft.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&$t.controlsRight.forEach(function(e){e.classList.add("fragmented","enabled")})))}}function V(){f($t.background.childNodes).forEach(function(e,t){var n=Wt.rtl?"future":"past",r=Wt.rtl?"past":"future";e.className="slide-background "+(Pt>t?n:t>Pt?r:"present"),f(e.childNodes).forEach(function(e,t){e.className="slide-background "+(Dt>t?"past":t>Dt?"future":"present")})}),setTimeout(function(){$t.background.classList.remove("no-transition")},1)}function Z(){var e=document.querySelectorAll(Ot),t=document.querySelectorAll(zt),n={left:Pt>0||Wt.loop,right:e.length-1>Pt||Wt.loop,up:Dt>0,down:t.length-1>Dt};if(Wt.rtl){var r=n.left;n.left=n.right,n.right=r}return n}function Q(){if(Rt&&Wt.fragments){var e=Rt.querySelectorAll(".fragment"),t=Rt.querySelectorAll(".fragment:not(.visible)");return{prev:e.length-t.length>0,next:!!t.length}}return{prev:!1,next:!1}}function B(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-autoplay")&&e.play()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-autoplay")&&e.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")}))}function G(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-ignore")||e.pause()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.contentWindow.postMessage||e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}))}function J(){var e=window.location.hash,t=e.slice(2).split("/"),n=e.replace(/#|\//gi,"");if(isNaN(parseInt(t[0],10))&&n.length){var r=document.querySelector("#"+n);if(r){var o=Reveal.getIndices(r);W(o.h,o.v)}else W(Pt||0,Dt||0)}else{var a=parseInt(t[0],10)||0,i=parseInt(t[1],10)||0;(a!==Pt||i!==Dt)&&W(a,i)}}function et(e){if(Wt.history)if(clearTimeout(Qt),"number"==typeof e)Qt=setTimeout(et,e);else{var t="/";Rt&&"string"==typeof Rt.getAttribute("id")?t="/"+Rt.getAttribute("id"):((Pt>0||Dt>0)&&(t+=Pt),Dt>0&&(t+="/"+Dt)),window.location.hash=t}}function tt(e){var t,n=Pt,r=Dt;if(e){var o=H(e),a=o?e.parentNode:e,i=f(document.querySelectorAll(Ot));n=Math.max(i.indexOf(a),0),o&&(r=Math.max(f(e.parentNode.querySelectorAll("section")).indexOf(e),0))}if(!e&&Rt){var s=Rt.querySelectorAll(".fragment").length>0;if(s){var c=Rt.querySelectorAll(".fragment.visible");t=c.length}}return{h:n,v:r,f:t}}function nt(){if(Rt&&Wt.fragments){var e=T(Rt.querySelectorAll(".fragment:not(.visible)"));if(e.length){var t=e[0].getAttribute("data-fragment-index");return e=Rt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.add("visible")}),L("fragmentshown",{fragment:e[0],fragments:e}),$(),!0}}return!1}function rt(){if(Rt&&Wt.fragments){var e=T(Rt.querySelectorAll(".fragment.visible"));if(e.length){var t=e[e.length-1].getAttribute("data-fragment-index");return e=Rt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.remove("visible")}),L("fragmenthidden",{fragment:e[0],fragments:e}),$(),!0}}return!1}function ot(){clearTimeout(Zt),!Ft||U()||I()||(Zt=setTimeout(dt,Ft))}function at(){clearTimeout(Zt)}function it(){Wt.rtl?(I()||nt()===!1)&&Z().left&&W(Pt+1):(I()||rt()===!1)&&Z().left&&W(Pt-1)}function st(){Wt.rtl?(I()||rt()===!1)&&Z().right&&W(Pt-1):(I()||nt()===!1)&&Z().right&&W(Pt+1)}function ct(){(I()||rt()===!1)&&Z().up&&W(Pt,Dt-1)}function lt(){(I()||nt()===!1)&&Z().down&&W(Pt,Dt+1)}function ut(){if(rt()===!1)if(Z().up)ct();else{var e=document.querySelector(Ot+".past:nth-child("+Pt+")");if(e){var t=e.querySelectorAll("section").length-1||void 0,n=Pt-1;W(n,t)}}}function dt(){nt()===!1&&(Z().down?lt():st()),ot()}function ft(e){document.activeElement;var t=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&"inherit"===document.activeElement.contentEditable);if(!(t||e.shiftKey&&32!==e.keyCode||e.altKey||e.ctrlKey||e.metaKey)){if(U()&&-1===[66,190,191].indexOf(e.keyCode))return!1;var n=!1;if("object"==typeof Wt.keyboard)for(var r in Wt.keyboard)if(parseInt(r,10)===e.keyCode){var o=Wt.keyboard[r];"function"==typeof o?o.apply(null,[e]):"string"==typeof o&&"function"==typeof Reveal[o]&&Reveal[o].call(),n=!0}if(n===!1)switch(n=!0,e.keyCode){case 80:case 33:ut();break;case 78:case 34:dt();break;case 72:case 37:it();break;case 76:case 39:st();break;case 75:case 38:ct();break;case 74:case 40:lt();break;case 36:W(0);break;case 35:W(Number.MAX_VALUE);break;case 32:I()?C():e.shiftKey?ut():dt();break;case 13:I()?C():n=!1;break;case 66:case 190:case 191:z();break;case 70:Y();break;default:n=!1}n?e.preventDefault():27!==e.keyCode&&79!==e.keyCode||!It||(R(),e.preventDefault()),ot()}}function vt(e){en.startX=e.touches[0].clientX,en.startY=e.touches[0].clientY,en.startCount=e.touches.length,2===e.touches.length&&Wt.overview&&(en.startSpan=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:en.startX,y:en.startY}))}function pt(e){if(en.captured)navigator.userAgent.match(/android/gi)&&e.preventDefault();else{var t=e.touches[0].clientX,n=e.touches[0].clientY;if(2===e.touches.length&&2===en.startCount&&Wt.overview){var r=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:en.startX,y:en.startY});Math.abs(en.startSpan-r)>en.threshold&&(en.captured=!0,en.startSpan>r?D():C()),e.preventDefault()}else if(1===e.touches.length&&2!==en.startCount){var o=t-en.startX,a=n-en.startY;o>en.threshold&&Math.abs(o)>Math.abs(a)?(en.captured=!0,it()):-en.threshold>o&&Math.abs(o)>Math.abs(a)?(en.captured=!0,st()):a>en.threshold?(en.captured=!0,ct()):-en.threshold>a&&(en.captured=!0,lt()),Wt.embedded?(en.captured||H(Rt))&&e.preventDefault():e.preventDefault()}}}function gt(){en.captured=!1}function mt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],vt(e))}function ht(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],pt(e))}function yt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],gt(e))}function bt(e){if(Date.now()-Vt>600){Vt=Date.now();var t=e.detail||-e.wheelDelta;t>0?dt():ut()}}function wt(e){e.preventDefault();var t=f(document.querySelectorAll(Ot)).length,n=Math.floor(e.clientX/$t.wrapper.offsetWidth*t);W(n)}function Lt(e){e.preventDefault(),it()}function Et(e){e.preventDefault(),st()}function kt(e){e.preventDefault(),ct()}function St(e){e.preventDefault(),lt()}function At(e){e.preventDefault(),ut()}function qt(e){e.preventDefault(),dt()}function xt(){J()}function Tt(){M()}function Mt(e){if(Jt&&I()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(C(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),r=parseInt(t.getAttribute("data-index-v"),10);W(n,r)}}}function Nt(e){var t=e.target.getAttribute("href");t&&(q(t),e.preventDefault())}var Pt,Dt,Ct,Rt,It,Ht,Yt,Xt=".reveal .slides section",Ot=".reveal .slides>section",zt=".reveal .slides>section.present>section",Ut=".reveal .slides>section:first-child",Wt={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,mouseWheel:!1,rollingLinks:!1,previewLinks:!1,theme:null,transition:"default",transitionSpeed:"default",backgroundTransition:"default",viewDistance:3,dependencies:[]},jt=!1,Ft=0,_t=[],Kt=1,$t={},Vt=0,Zt=0,Qt=0,Bt=0,Gt=0,Jt=!1,en={startX:0,startY:0,startSpan:0,startCount:0,captured:!1,threshold:40};return{initialize:e,configure:c,sync:j,slide:W,left:it,right:st,up:ct,down:lt,prev:ut,next:dt,prevFragment:rt,nextFragment:nt,navigateTo:W,navigateLeft:it,navigateRight:st,navigateUp:ct,navigateDown:lt,navigatePrev:ut,navigateNext:dt,layout:M,availableRoutes:Z,availableFragments:Q,toggleOverview:R,togglePause:z,isOverview:I,isPaused:U,addEventListeners:l,removeEventListeners:u,getIndices:tt,getSlide:function(e,t){var n=document.querySelectorAll(Ot)[e],r=n&&n.querySelectorAll("section");return t!==void 0?r?r[t]:void 0:n},getPreviousSlide:function(){return Ct},getCurrentSlide:function(){return Rt},getScale:function(){return Kt},getConfig:function(){return Wt},getQueryHash:function(){var e={};return location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(t){e[t.split("=").shift()]=t.split("=").pop()}),e},isFirstSlide:function(){return null==document.querySelector(Xt+".past")?!0:!1},isLastSlide:function(){return Rt&&Rt.classList.contains(".stack")?null==Rt.querySelector(Xt+".future")?!0:!1:null==document.querySelector(Xt+".future")?!0:!1},isReady:function(){return jt},addEventListener:function(e,t,n){"addEventListener"in window&&($t.wrapper||document.querySelector(".reveal")).addEventListener(e,t,n)},removeEventListener:function(e,t,n){"addEventListener"in window&&($t.wrapper||document.querySelector(".reveal")).removeEventListener(e,t,n)}}}(); \ No newline at end of file -- 2.26.2