fa23-si/js/reveal.min.js
2013-08-11 16:47:56 -04:00

8 lines
26 KiB
JavaScript

/*!
* reveal.js 2.5.0 (2013-08-11, 16:46)
* 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(),Nt||Dt?(window.addEventListener("load",A,!1),u(zt,e),a(),i(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){Dt="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,Nt="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,Ct=navigator.userAgent.match(/(iphone|ipod|android)/gi)}function n(){Ut.theme=document.querySelector("#theme"),Ut.wrapper=document.querySelector(".reveal"),Ut.slides=document.querySelector(".reveal .slides"),Ut.slides.classList.add("no-transition"),Ut.background=r(Ut.wrapper,"div","backgrounds",null),Ut.progress=r(Ut.wrapper,"div","progress","<span></span>"),Ut.progressbar=Ut.progress.querySelector("span"),r(Ut.wrapper,"aside","controls",'<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>'),r(Ut.wrapper,"div","state-background",null),r(Ut.wrapper,"div","pause-overlay",null),zt.controls&&(Ut.controls=document.querySelector(".reveal .controls"),Ut.controlsLeft=f(document.querySelectorAll(".navigate-left")),Ut.controlsRight=f(document.querySelectorAll(".navigate-right")),Ut.controlsUp=f(document.querySelectorAll(".navigate-up")),Ut.controlsDown=f(document.querySelectorAll(".navigate-down")),Ut.controlsPrev=f(document.querySelectorAll(".navigate-prev")),Ut.controlsNext=f(document.querySelectorAll(".navigate-next")))}function r(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 o(){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"),Ut.background.innerHTML="",Ut.background.classList.add("no-transition"),f(document.querySelectorAll(It)).forEach(function(t){var n;n=m()?e(t,t):e(t,Ut.background),f(t.querySelectorAll("section")).forEach(function(t){m()?e(t,t):e(t,n)})})}function a(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",g,!1),window.addEventListener("orientationchange",g,!1))}function i(){function e(){n.length&&head.js.apply(null,n),s()}for(var t=[],n=[],r=0,o=zt.dependencies.length;o>r;r++){var a=zt.dependencies[r];(!a.condition||a.condition())&&(a.async?n.push(a.src):t.push(a.src),"function"==typeof a.callback&&head.ready(a.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],a.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function s(){n(),c(),Z(),setTimeout(function(){Ut.slides.classList.remove("no-transition"),h("ready",{indexh:xt,indexv:Tt,currentSlide:Pt})},1)}function c(e){if(Ut.wrapper.classList.remove(zt.transition),"object"==typeof e&&u(zt,e),Dt===!1&&(zt.transition="linear"),Ut.wrapper.classList.add(zt.transition),Ut.wrapper.setAttribute("data-transition-speed",zt.transitionSpeed),Ut.wrapper.setAttribute("data-background-transition",zt.backgroundTransition),Ut.controls&&(Ut.controls.style.display=zt.controls&&Ut.controls?"block":"none"),Ut.progress&&(Ut.progress.style.display=zt.progress&&Ut.progress?"block":"none"),zt.rtl?Ut.wrapper.classList.add("rtl"):Ut.wrapper.classList.remove("rtl"),zt.center?Ut.wrapper.classList.add("center"):Ut.wrapper.classList.remove("center"),zt.mouseWheel?(document.addEventListener("DOMMouseScroll",mt,!1),document.addEventListener("mousewheel",mt,!1)):(document.removeEventListener("DOMMouseScroll",mt,!1),document.removeEventListener("mousewheel",mt,!1)),zt.rollingLinks?y():b(),zt.previewLinks?w():(L(),w("[data-preview-link]")),zt.theme&&Ut.theme){var t=Ut.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];zt.theme!==r&&(t=t.replace(n,zt.theme),Ut.theme.setAttribute("href",t))}X()}function l(){Vt=!0,window.addEventListener("hashchange",kt,!1),window.addEventListener("resize",St,!1),zt.touch&&(Ut.wrapper.addEventListener("touchstart",lt,!1),Ut.wrapper.addEventListener("touchmove",dt,!1),Ut.wrapper.addEventListener("touchend",ut,!1),window.navigator.msPointerEnabled&&(Ut.wrapper.addEventListener("MSPointerDown",ft,!1),Ut.wrapper.addEventListener("MSPointerMove",vt,!1),Ut.wrapper.addEventListener("MSPointerUp",pt,!1))),zt.keyboard&&document.addEventListener("keydown",ct,!1),zt.progress&&Ut.progress&&Ut.progress.addEventListener("click",gt,!1),zt.controls&&Ut.controls&&["touchstart","click"].forEach(function(e){Ut.controlsLeft.forEach(function(t){t.addEventListener(e,ht,!1)}),Ut.controlsRight.forEach(function(t){t.addEventListener(e,yt,!1)}),Ut.controlsUp.forEach(function(t){t.addEventListener(e,bt,!1)}),Ut.controlsDown.forEach(function(t){t.addEventListener(e,wt,!1)}),Ut.controlsPrev.forEach(function(t){t.addEventListener(e,Lt,!1)}),Ut.controlsNext.forEach(function(t){t.addEventListener(e,Et,!1)})})}function d(){Vt=!1,document.removeEventListener("keydown",ct,!1),window.removeEventListener("hashchange",kt,!1),window.removeEventListener("resize",St,!1),Ut.wrapper.removeEventListener("touchstart",lt,!1),Ut.wrapper.removeEventListener("touchmove",dt,!1),Ut.wrapper.removeEventListener("touchend",ut,!1),window.navigator.msPointerEnabled&&(Ut.wrapper.removeEventListener("MSPointerDown",ft,!1),Ut.wrapper.removeEventListener("MSPointerMove",vt,!1),Ut.wrapper.removeEventListener("MSPointerUp",pt,!1)),zt.progress&&Ut.progress&&Ut.progress.removeEventListener("click",gt,!1),zt.controls&&Ut.controls&&["touchstart","click"].forEach(function(e){Ut.controlsLeft.forEach(function(t){t.removeEventListener(e,ht,!1)}),Ut.controlsRight.forEach(function(t){t.removeEventListener(e,yt,!1)}),Ut.controlsUp.forEach(function(t){t.removeEventListener(e,bt,!1)}),Ut.controlsDown.forEach(function(t){t.removeEventListener(e,wt,!1)}),Ut.controlsPrev.forEach(function(t){t.removeEventListener(e,Lt,!1)}),Ut.controlsNext.forEach(function(t){t.removeEventListener(e,Et,!1)})})}function u(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){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 g(){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 h(e,t){var n=document.createEvent("HTMLEvents",1,2);n.initEvent(e,!0,!0),u(n,t),Ut.wrapper.dispatchEvent(n)}function y(){if(Dt&&!("msPerspective"in document.body.style))for(var e=document.querySelectorAll(Rt+" 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 b(){for(var e=document.querySelectorAll(Rt+" 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 w(e){var t=f(document.querySelectorAll(e?e:"a"));t.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",qt,!1)})}function L(){var e=f(document.querySelectorAll("a"));e.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",qt,!1)})}function E(e){k(),Ut.preview=document.createElement("div"),Ut.preview.classList.add("preview-link-overlay"),Ut.wrapper.appendChild(Ut.preview),Ut.preview.innerHTML=["<header>",'<a class="close" href="#"><span class="icon"></span></a>','<a class="external" href="'+e+'" target="_blank"><span class="icon"></span></a>',"</header>",'<div class="spinner"></div>','<div class="viewport">','<iframe src="'+e+'"></iframe>',"</div>"].join(""),Ut.preview.querySelector("iframe").addEventListener("load",function(){Ut.preview.classList.add("loaded")},!1),Ut.preview.querySelector(".close").addEventListener("click",function(e){k(),e.preventDefault()},!1),Ut.preview.querySelector(".external").addEventListener("click",function(){k()},!1),setTimeout(function(){Ut.preview.classList.add("visible")},1)}function k(){Ut.preview&&(Ut.preview.setAttribute("src",""),Ut.preview.parentNode.removeChild(Ut.preview),Ut.preview=null)}function S(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 A(){if(Ut.wrapper&&!m()){var e=Ut.wrapper.offsetWidth,t=Ut.wrapper.offsetHeight;e-=t*zt.margin,t-=t*zt.margin;var n=zt.width,r=zt.height;if("string"==typeof n&&/%$/.test(n)&&(n=parseInt(n,10)/100*e),"string"==typeof r&&/%$/.test(r)&&(r=parseInt(r,10)/100*t),Ut.slides.style.width=n+"px",Ut.slides.style.height=r+"px",Wt=Math.min(e/n,t/r),Wt=Math.max(Wt,zt.minScale),Wt=Math.min(Wt,zt.maxScale),void 0===Ut.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)){var o="translate(-50%, -50%) scale("+Wt+") translate(50%, 50%)";Ut.slides.style.WebkitTransform=o,Ut.slides.style.MozTransform=o,Ut.slides.style.msTransform=o,Ut.slides.style.OTransform=o,Ut.slides.style.transform=o}else Ut.slides.style.zoom=Wt;for(var a=f(document.querySelectorAll(Rt)),i=0,s=a.length;s>i;i++){var c=a[i];"none"!==c.style.display&&(c.style.top=zt.center?c.classList.contains("stack")?0:Math.max(-(p(c)/2)-20,-r/2)+"px":"")}U()}}function q(e,t){"object"==typeof e&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function x(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 T(){if(zt.overview){tt();var e=Ut.wrapper.classList.contains("overview"),t=400>window.innerWidth?1e3:2500;Ut.wrapper.classList.add("overview"),Ut.wrapper.classList.remove("exit-overview"),clearTimeout(Kt),clearTimeout($t),Kt=setTimeout(function(){for(var n=document.querySelectorAll(It),r=0,o=n.length;o>r;r++){var a=n[r],i=zt.rtl?-105:105,s="translateZ(-"+t+"px) translate("+(r-xt)*i+"%, 0%)";if(a.setAttribute("data-index-h",r),a.style.WebkitTransform=s,a.style.MozTransform=s,a.style.msTransform=s,a.style.OTransform=s,a.style.transform=s,a.classList.contains("stack"))for(var c=a.querySelectorAll("section"),l=0,d=c.length;d>l;l++){var u=r===xt?Tt:x(a),f=c[l],v="translate(0%, "+105*(l-u)+"%)";f.setAttribute("data-index-h",r),f.setAttribute("data-index-v",l),f.style.WebkitTransform=v,f.style.MozTransform=v,f.style.msTransform=v,f.style.OTransform=v,f.style.transform=v,f.addEventListener("click",At,!0)}else a.addEventListener("click",At,!0)}W(),A(),e||h("overviewshown",{indexh:xt,indexv:Tt,currentSlide:Pt})},10)}}function M(){if(zt.overview){clearTimeout(Kt),clearTimeout($t),Ut.wrapper.classList.remove("overview"),Ut.wrapper.classList.add("exit-overview"),$t=setTimeout(function(){Ut.wrapper.classList.remove("exit-overview")},10);for(var e=f(document.querySelectorAll(Rt)),t=0,n=e.length;n>t;t++){var r=e[t];r.style.display="",r.style.WebkitTransform="",r.style.MozTransform="",r.style.msTransform="",r.style.OTransform="",r.style.transform="",r.removeEventListener("click",At,!0)}z(xt,Tt),et(),h("overviewhidden",{indexh:xt,indexv:Tt,currentSlide:Pt})}}function P(e){"boolean"==typeof e?e?T():M():D()?M():T()}function D(){return Ut.wrapper.classList.contains("overview")}function N(e){return e=e?e:Pt,e&&!!e.parentNode.nodeName.match(/section/i)}function C(){var e=document.body,t=e.requestFullScreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullScreen;t&&t.apply(e)}function R(){var e=Ut.wrapper.classList.contains("paused");tt(),Ut.wrapper.classList.add("paused"),e===!1&&h("paused")}function I(){var e=Ut.wrapper.classList.contains("paused");Ut.wrapper.classList.remove("paused"),et(),e&&h("resumed")}function O(){Y()?I():R()}function Y(){return Ut.wrapper.classList.contains("paused")}function z(e,t,n,r){Mt=Pt;var o=document.querySelectorAll(It);void 0===t&&(t=x(o[e])),Mt&&Mt.parentNode&&Mt.parentNode.classList.contains("stack")&&q(Mt.parentNode,Tt);var a=Ht.concat();Ht.length=0;var i=xt,s=Tt;xt=H(It,void 0===e?xt:e),Tt=H(Ot,void 0===t?Tt:t),W(),A();e:for(var c=0,l=Ht.length;l>c;c++){for(var d=0;a.length>d;d++)if(a[d]===Ht[c]){a.splice(d,1);continue e}document.documentElement.classList.add(Ht[c]),h(Ht[c])}for(;a.length;)document.documentElement.classList.remove(a.pop());D()&&T();var u=o[xt],v=u.querySelectorAll("section");if(Pt=v[Tt]||u,n!==void 0){var p=S(Pt.querySelectorAll(".fragment"));f(p).forEach(function(e,t){n>t?e.classList.add("visible"):e.classList.remove("visible")})}var m=xt!==i||Tt!==s;m?h("slidechanged",{indexh:xt,indexv:Tt,previousSlide:Mt,currentSlide:Pt,origin:r}):Mt=null,Mt&&(Mt.classList.remove("present"),document.querySelector(Yt).classList.contains("present")&&setTimeout(function(){var e,t=f(document.querySelectorAll(It+".stack"));for(e in t)t[e]&&q(t[e],0)},0)),m&&(V(Mt),$(Pt)),j(),U(),F(),Q()}function X(){d(),l(),A(),Xt=zt.autoSlide,et(),o(),j(),U(),F()}function H(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&&!N(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&&(Ht=Ht.concat(c.split(" ")));var l=n[t].getAttribute("data-autoslide");Xt=l?parseInt(l,10):zt.autoSlide,et()}else t=0;return t}function W(){var e,t,n=f(document.querySelectorAll(It)),r=n.length;if(r){var o=D()?10:zt.viewDistance;Ct&&(o=D()?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((xt-a)%(r-o))||0,c){i.style.display="block";for(var l=x(i),d=0;c>d;d++){var u=s[d];t=a===xt?Math.abs(Tt-d):Math.abs(d-l),u.style.display=e+t>o?"none":"block"}}else i.style.display=e>o?"none":"block"}}}function U(){if(zt.progress&&Ut.progress){var e=f(document.querySelectorAll(It)),t=document.querySelectorAll(Rt+":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++}Ut.progressbar.style.width=n/(t-1)*window.innerWidth+"px"}}function j(){if(zt.controls&&Ut.controls){var e=_(),t=K();Ut.controlsLeft.concat(Ut.controlsRight).concat(Ut.controlsUp).concat(Ut.controlsDown).concat(Ut.controlsPrev).concat(Ut.controlsNext).forEach(function(e){e.classList.remove("enabled"),e.classList.remove("fragmented")}),e.left&&Ut.controlsLeft.forEach(function(e){e.classList.add("enabled")}),e.right&&Ut.controlsRight.forEach(function(e){e.classList.add("enabled")}),e.up&&Ut.controlsUp.forEach(function(e){e.classList.add("enabled")}),e.down&&Ut.controlsDown.forEach(function(e){e.classList.add("enabled")}),(e.left||e.up)&&Ut.controlsPrev.forEach(function(e){e.classList.add("enabled")}),(e.right||e.down)&&Ut.controlsNext.forEach(function(e){e.classList.add("enabled")}),Pt&&(t.prev&&Ut.controlsPrev.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&Ut.controlsNext.forEach(function(e){e.classList.add("fragmented","enabled")}),N(Pt)?(t.prev&&Ut.controlsUp.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&Ut.controlsDown.forEach(function(e){e.classList.add("fragmented","enabled")})):(t.prev&&Ut.controlsLeft.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&Ut.controlsRight.forEach(function(e){e.classList.add("fragmented","enabled")})))}}function F(){f(Ut.background.childNodes).forEach(function(e,t){var n=zt.rtl?"future":"past",r=zt.rtl?"past":"future";e.className="slide-background "+(xt>t?n:t>xt?r:"present"),f(e.childNodes).forEach(function(e,t){e.className="slide-background "+(Tt>t?"past":t>Tt?"future":"present")})}),setTimeout(function(){Ut.background.classList.remove("no-transition")},1)}function _(){var e=document.querySelectorAll(It),t=document.querySelectorAll(Ot),n={left:xt>0||zt.loop,right:e.length-1>xt||zt.loop,up:Tt>0,down:t.length-1>Tt};if(zt.rtl){var r=n.left;n.left=n.right,n.right=r}return n}function K(){if(Pt&&zt.fragments){var e=Pt.querySelectorAll(".fragment"),t=Pt.querySelectorAll(".fragment:not(.visible)");return{prev:e.length-t.length>0,next:!!t.length}}return{prev:!1,next:!1}}function $(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 V(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 Z(){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(xt||0,Tt||0)}else{var a=parseInt(t[0],10)||0,i=parseInt(t[1],10)||0;(a!==xt||i!==Tt)&&z(a,i)}}function Q(e){if(zt.history)if(clearTimeout(_t),"number"==typeof e)_t=setTimeout(Q,e);else{var t="/";Pt&&"string"==typeof Pt.getAttribute("id")?t="/"+Pt.getAttribute("id"):((xt>0||Tt>0)&&(t+=xt),Tt>0&&(t+="/"+Tt)),window.location.hash=t}}function B(e){var t,n=xt,r=Tt;if(e){var o=N(e),a=o?e.parentNode:e,i=f(document.querySelectorAll(It));n=Math.max(i.indexOf(a),0),o&&(r=Math.max(f(e.parentNode.querySelectorAll("section")).indexOf(e),0))}if(!e&&Pt){var s=Pt.querySelectorAll(".fragment").length>0;if(s){var c=Pt.querySelectorAll(".fragment.visible");t=c.length}}return{h:n,v:r,f:t}}function G(){if(Pt&&zt.fragments){var e=S(Pt.querySelectorAll(".fragment:not(.visible)"));if(e.length){var t=e[0].getAttribute("data-fragment-index");return e=Pt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.add("visible")}),h("fragmentshown",{fragment:e[0],fragments:e}),j(),!0}}return!1}function J(){if(Pt&&zt.fragments){var e=S(Pt.querySelectorAll(".fragment.visible"));if(e.length){var t=e[e.length-1].getAttribute("data-fragment-index");return e=Pt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.remove("visible")}),h("fragmenthidden",{fragment:e[0],fragments:e}),j(),!0}}return!1}function et(){clearTimeout(Ft),!Xt||Y()||D()||(Ft=setTimeout(st,Xt))}function tt(){clearTimeout(Ft)}function nt(){zt.rtl?(D()||G()===!1)&&_().left&&z(xt+1):(D()||J()===!1)&&_().left&&z(xt-1)}function rt(){zt.rtl?(D()||J()===!1)&&_().right&&z(xt-1):(D()||G()===!1)&&_().right&&z(xt+1)}function ot(){(D()||J()===!1)&&_().up&&z(xt,Tt-1)}function at(){(D()||G()===!1)&&_().down&&z(xt,Tt+1)}function it(){if(J()===!1)if(_().up)ot();else{var e=document.querySelector(It+".past:nth-child("+xt+")");if(e){var t=e.querySelectorAll("section").length-1||void 0,n=xt-1;z(n,t)}}}function st(){G()===!1&&(_().down?at():rt()),et()}function ct(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(Y()&&-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:it();break;case 78:case 34:st();break;case 72:case 37:nt();break;case 76:case 39:rt();break;case 75:case 38:ot();break;case 74:case 40:at();break;case 36:z(0);break;case 35:z(Number.MAX_VALUE);break;case 32:D()?M():e.shiftKey?it():st();break;case 13:D()?M():n=!1;break;case 66:case 190:case 191:O();break;case 70:C();break;default:n=!1}n?e.preventDefault():27!==e.keyCode&&79!==e.keyCode||!Dt||(P(),e.preventDefault()),et()}}function lt(e){Zt.startX=e.touches[0].clientX,Zt.startY=e.touches[0].clientY,Zt.startCount=e.touches.length,2===e.touches.length&&zt.overview&&(Zt.startSpan=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:Zt.startX,y:Zt.startY}))}function dt(e){if(Zt.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===Zt.startCount&&zt.overview){var r=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:Zt.startX,y:Zt.startY});Math.abs(Zt.startSpan-r)>Zt.threshold&&(Zt.captured=!0,Zt.startSpan>r?T():M()),e.preventDefault()}else if(1===e.touches.length&&2!==Zt.startCount){var o=t-Zt.startX,a=n-Zt.startY;o>Zt.threshold&&Math.abs(o)>Math.abs(a)?(Zt.captured=!0,nt()):-Zt.threshold>o&&Math.abs(o)>Math.abs(a)?(Zt.captured=!0,rt()):a>Zt.threshold?(Zt.captured=!0,ot()):-Zt.threshold>a&&(Zt.captured=!0,at()),zt.embedded?(Zt.captured||N(Pt))&&e.preventDefault():e.preventDefault()}}}function ut(){Zt.captured=!1}function ft(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],lt(e))}function vt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],dt(e))}function pt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],ut(e))}function mt(e){if(Date.now()-jt>600){jt=Date.now();var t=e.detail||-e.wheelDelta;t>0?st():it()}}function gt(e){e.preventDefault();var t=f(document.querySelectorAll(It)).length,n=Math.floor(e.clientX/Ut.wrapper.offsetWidth*t);z(n)}function ht(e){e.preventDefault(),nt()}function yt(e){e.preventDefault(),rt()}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(){Z()}function St(){A()}function At(e){if(Vt&&D()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(M(),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 qt(e){var t=e.target.getAttribute("href");t&&(E(t),e.preventDefault())}var xt,Tt,Mt,Pt,Dt,Nt,Ct,Rt=".reveal .slides section",It=".reveal .slides>section",Ot=".reveal .slides>section.present>section",Yt=".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:[]},Xt=0,Ht=[],Wt=1,Ut={},jt=0,Ft=0,_t=0,Kt=0,$t=0,Vt=!1,Zt={startX:0,startY:0,startSpan:0,startCount:0,captured:!1,threshold:40};return{initialize:e,configure:c,sync:X,slide:z,left:nt,right:rt,up:ot,down:at,prev:it,next:st,prevFragment:J,nextFragment:G,navigateTo:z,navigateLeft:nt,navigateRight:rt,navigateUp:ot,navigateDown:at,navigatePrev:it,navigateNext:st,layout:A,availableRoutes:_,availableFragments:K,toggleOverview:P,togglePause:O,isOverview:D,isPaused:Y,addEventListeners:l,removeEventListeners:d,getIndices:B,getSlide:function(e,t){var n=document.querySelectorAll(It)[e],r=n&&n.querySelectorAll("section");return t!==void 0?r?r[t]:void 0:n},getPreviousSlide:function(){return Mt},getCurrentSlide:function(){return Pt},getScale:function(){return Wt},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(Rt+".past")?!0:!1},isLastSlide:function(){return Pt&&Pt.classList.contains(".stack")?null==Pt.querySelector(Rt+".future")?!0:!1:null==document.querySelector(Rt+".future")?!0:!1},addEventListener:function(e,t,n){"addEventListener"in window&&(Ut.wrapper||document.querySelector(".reveal")).addEventListener(e,t,n)},removeEventListener:function(e,t,n){"addEventListener"in window&&(Ut.wrapper||document.querySelector(".reveal")).removeEventListener(e,t,n)}}}();