diff --git a/js/reveal.js b/js/reveal.js
index b54536ea..97ee048a 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -1,5 +1,5 @@
/*!
- * reveal.js 2.2 r39
+ * reveal.js 2.2 r40
* http://lab.hakim.se/reveal-js
* MIT licensed
*
@@ -9,7 +9,8 @@ var Reveal = (function(){
'use strict';
- var HORIZONTAL_SLIDES_SELECTOR = '.reveal .slides>section',
+ var SLIDES_SELECTOR = '.reveal .slides section',
+ HORIZONTAL_SLIDES_SELECTOR = '.reveal .slides>section',
VERTICAL_SLIDES_SELECTOR = '.reveal .slides>section.present>section',
// Configurations defaults, can be overridden at initialization time
@@ -469,7 +470,7 @@ var Reveal = (function(){
*/
function linkify() {
if( supports3DTransforms && !( 'msPerspective' in document.body.style ) ) {
- var nodes = document.querySelectorAll( '.reveal .slides section a:not(.image)' );
+ var nodes = document.querySelectorAll( SLIDES_SELECTOR + ' a:not(.image)' );
for( var i = 0, len = nodes.length; i < len; i++ ) {
var node = nodes[i];
@@ -491,7 +492,7 @@ var Reveal = (function(){
if( config.center ) {
// Select all slides, vertical and horizontal
- var slides = Array.prototype.slice.call( document.querySelectorAll( '.reveal .slides section' ) );
+ var slides = toArray( document.querySelectorAll( SLIDES_SELECTOR ) );
// Determine the minimum top offset for slides
var minTop = -dom.wrapper.offsetHeight / 2;
@@ -583,7 +584,7 @@ var Reveal = (function(){
dom.wrapper.classList.remove( 'overview' );
// Select all slides
- var slides = Array.prototype.slice.call( document.querySelectorAll( '.reveal .slides section' ) );
+ var slides = toArray( document.querySelectorAll( SLIDES_SELECTOR ) );
for( var i = 0, len = slides.length; i < len; i++ ) {
var element = slides[i];
@@ -732,18 +733,11 @@ var Reveal = (function(){
document.documentElement.classList.remove( stateBefore.pop() );
}
- // Update progress if enabled
- if( config.progress && dom.progress ) {
- dom.progressbar.style.width = ( indexh / ( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ).length - 1 ) ) * window.innerWidth + 'px';
- }
-
// If the overview is active, re-activate it to update positions
if( isOverviewActive() ) {
activateOverview();
}
- updateControls();
-
// Update the URL hash after a delay since updating it mid-transition
// is likely to cause visual lag
clearTimeout( writeURLTimeout );
@@ -780,6 +774,9 @@ var Reveal = (function(){
if( previousSlide ) {
previousSlide.classList.remove( 'present' );
}
+
+ updateControls();
+ updateProgress();
}
/**
@@ -798,7 +795,7 @@ var Reveal = (function(){
function updateSlides( selector, index ) {
// Select all slides and convert the NodeList result to
// an array
- var slides = Array.prototype.slice.call( document.querySelectorAll( selector ) ),
+ var slides = toArray( document.querySelectorAll( selector ) ),
slidesLength = slides.length;
if( slidesLength ) {
@@ -878,7 +875,48 @@ var Reveal = (function(){
}
/**
- * Updates the state and link pointers of the controls.
+ * Updates the progress bar to reflect the current slide.
+ */
+ function updateProgress() {
+ // Update progress if enabled
+ if( config.progress && dom.progress ) {
+
+ var horizontalSlides = toArray( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) );
+
+ // The number of past and total slides
+ var totalCount = document.querySelectorAll( SLIDES_SELECTOR + ':not(.stack)' ).length;
+ var pastCount = 0;
+
+ // Step through all slides and count the past ones
+ mainLoop: for( var i = 0; i < horizontalSlides.length; i++ ) {
+
+ var horizontalSlide = horizontalSlides[i];
+ var verticalSlides = toArray( horizontalSlide.querySelectorAll( 'section' ) );
+
+ for( var j = 0; j < verticalSlides.length; j++ ) {
+
+ // Stop as soon as we arrive at the present
+ if( verticalSlides[j].classList.contains( 'present' ) ) break mainLoop;
+
+ pastCount++
+
+ }
+
+ // Stop as soon as we arrive at the present
+ if( horizontalSlide.classList.contains( 'present' ) ) break;
+
+ // Don't count the wrapping section for vertical slides
+ if( horizontalSlide.classList.contains( 'stack' ) === false ) pastCount++;
+
+ }
+
+ dom.progressbar.style.width = ( pastCount / ( totalCount - 1 ) ) * window.innerWidth + 'px';
+
+ }
+ }
+
+ /**
+ * Updates the state of all control/navigation arrows.
*/
function updateControls() {
if ( config.controls && dom.controls ) {
@@ -1002,14 +1040,14 @@ var Reveal = (function(){
var slideh = isVertical ? slide.parentNode : slide;
// Select all horizontal slides
- var horizontalSlides = Array.prototype.slice.call( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) );
+ var horizontalSlides = toArray( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) );
// Now that we know which the horizontal slide is, get its index
h = Math.max( horizontalSlides.indexOf( slideh ), 0 );
// If this is a vertical slide, grab the vertical index
if( isVertical ) {
- v = Math.max( Array.prototype.slice.call( slide.parentNode.children ).indexOf( slide ), 0 );
+ v = Math.max( toArray( slide.parentNode.children ).indexOf( slide ), 0 );
}
}
@@ -1356,7 +1394,7 @@ var Reveal = (function(){
* ( clickX / presentationWidth ) * numberOfSlides
*/
function onProgressClick( event ) {
- var slidesTotal = Array.prototype.slice.call( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) ).length;
+ var slidesTotal = toArray( document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR ) ).length;
var slideIndex = Math.floor( ( event.clientX / dom.wrapper.offsetWidth ) * slidesTotal );
slide( slideIndex );
diff --git a/js/reveal.min.js b/js/reveal.min.js
index 948c4119..16599e3c 100644
--- a/js/reveal.min.js
+++ b/js/reveal.min.js
@@ -1,93 +1,95 @@
/*!
- * reveal.js 2.2 r39
+ * reveal.js 2.2 r40
* http://lab.hakim.se/reveal-js
* MIT licensed
*
* Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
*/
-var Reveal=(function(){var m=".reveal .slides>section",b=".reveal .slides>section.present>section",U={controls:true,progress:true,history:false,keyboard:true,overview:true,center:false,loop:false,autoSlide:0,mouseWheel:true,rollingLinks:true,theme:null,transition:"default",dependencies:[]},ab=U.autoSlide,n=0,e=0,z,I,ao=[],f={},W="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,o="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,A=0,l=0,E=0,ag={startX:0,startY:0,startSpan:0,startCount:0,handled:false,threshold:80};
-function j(ap){if((!o&&!W)){document.body.setAttribute("class","no-transforms");return;}u(U,ap);d();Y();}function R(){f.theme=document.querySelector("#theme");
-f.wrapper=document.querySelector(".reveal");if(!f.wrapper.querySelector(".progress")&&U.progress){var at=document.createElement("div");at.classList.add("progress");
-at.innerHTML="";f.wrapper.appendChild(at);}if(!f.wrapper.querySelector(".controls")&&U.controls){var ar=document.createElement("aside");ar.classList.add("controls");
-ar.innerHTML='
';f.wrapper.appendChild(ar);
-}if(!f.wrapper.querySelector(".state-background")){var aq=document.createElement("div");aq.classList.add("state-background");f.wrapper.appendChild(aq);
-}if(!f.wrapper.querySelector(".pause-overlay")){var ap=document.createElement("div");ap.classList.add("pause-overlay");f.wrapper.appendChild(ap);}f.progress=document.querySelector(".reveal .progress");
-f.progressbar=document.querySelector(".reveal .progress span");if(U.controls){f.controls=document.querySelector(".reveal .controls");f.controlsLeft=H(document.querySelectorAll(".navigate-left"));
-f.controlsRight=H(document.querySelectorAll(".navigate-right"));f.controlsUp=H(document.querySelectorAll(".navigate-up"));f.controlsDown=H(document.querySelectorAll(".navigate-down"));
-f.controlsPrev=H(document.querySelectorAll(".navigate-prev"));f.controlsNext=H(document.querySelectorAll(".navigate-next"));}}function d(){if(navigator.userAgent.match(/(iphone|ipod|android)/i)){document.documentElement.style.overflow="scroll";
-document.body.style.height="120%";window.addEventListener("load",ah,false);window.addEventListener("orientationchange",ah,false);}}function Y(){var aq=[],av=[];
-for(var ar=0,ap=U.dependencies.length;ar'+at.innerHTML+"";}}}}function S(){if(U.center){var at=Array.prototype.slice.call(document.querySelectorAll(".reveal .slides section"));
-var au=-f.wrapper.offsetHeight/2;for(var ar=0,aq=at.length;ar3?"none":"block";
-}aq[av].classList.remove("past");aq[av].classList.remove("present");aq[av].classList.remove("future");if(avay){aq[av].classList.add("future");
-}}if(aw.querySelector("section")){aq[av].classList.add("stack");}}aq[ay].classList.add("present");var ar=aq[ay].getAttribute("data-state");if(ar){ao=ao.concat(ar.split(" "));
-}var au=aq[ay].getAttribute("data-autoslide");if(au){ab=parseInt(au);}else{ab=U.autoSlide;}}else{ay=0;}return ay;}function t(){if(U.controls&&f.controls){var ap=h();
-f.controlsLeft.concat(f.controlsRight).concat(f.controlsUp).concat(f.controlsDown).concat(f.controlsPrev).concat(f.controlsNext).forEach(function(aq){aq.classList.remove("enabled");
-});if(ap.left){f.controlsLeft.forEach(function(aq){aq.classList.add("enabled");});}if(ap.right){f.controlsRight.forEach(function(aq){aq.classList.add("enabled");
-});}if(ap.up){f.controlsUp.forEach(function(aq){aq.classList.add("enabled");});}if(ap.down){f.controlsDown.forEach(function(aq){aq.classList.add("enabled");
-});}if(ap.left||ap.up){f.controlsPrev.forEach(function(aq){aq.classList.add("enabled");});}if(ap.right||ap.down){f.controlsNext.forEach(function(aq){aq.classList.add("enabled");
-});}}}function h(){var ap=document.querySelectorAll(m),aq=document.querySelectorAll(b);return{left:n>0,right:n0,down:e0||e>0){ap+=n;}if(e>0){ap+="/"+e;}}window.location.hash=ap;}}function O(ap){var au=n,ar=e;if(ap){var av=!!ap.parentNode.nodeName.match(/section/gi);
-var at=av?ap.parentNode:ap;var aq=Array.prototype.slice.call(document.querySelectorAll(m));au=Math.max(aq.indexOf(at),0);if(av){ar=Math.max(Array.prototype.slice.call(ap.parentNode.children).indexOf(ap),0);
-}}return{h:au,v:ar};}function w(){if(document.querySelector(b+".present")){var aq=document.querySelectorAll(b+".present .fragment:not(.visible)");if(aq.length){aq[0].classList.add("visible");
-s("fragmentshown",{fragment:aq[0]});return true;}}else{var ap=document.querySelectorAll(m+".present .fragment:not(.visible)");if(ap.length){ap[0].classList.add("visible");
-s("fragmentshown",{fragment:ap[0]});return true;}}return false;}function T(){if(document.querySelector(b+".present")){var aq=document.querySelectorAll(b+".present .fragment.visible");
-if(aq.length){aq[aq.length-1].classList.remove("visible");s("fragmenthidden",{fragment:aq[aq.length-1]});return true;}}else{var ap=document.querySelectorAll(m+".present .fragment.visible");
-if(ap.length){ap[ap.length-1].classList.remove("visible");s("fragmenthidden",{fragment:ap[ap.length-1]});return true;}}return false;}function Q(){clearTimeout(l);
-if(ab){l=setTimeout(y,ab);}}function C(){if(h().left&&(N()||T()===false)){a(n-1,0);}}function k(){if(h().right&&(N()||w()===false)){a(n+1,0);}}function v(){if(h().up&&(N()||T()===false)){a(n,e-1);
-}}function G(){if(h().down&&(N()||w()===false)){a(n,e+1);}}function ac(){if(T()===false){if(h().up){v();}else{var ap=document.querySelector(".reveal .slides>section.past:nth-child("+n+")");
-if(ap){e=(ap.querySelectorAll("section").length+1)||0;n--;a();}}}}function y(){if(w()===false){h().down?G():k();}Q();}function al(ar){var aq=document.activeElement;
-var at=!!(document.activeElement&&(document.activeElement.type||document.activeElement.href||document.activeElement.contentEditable!=="inherit"));if(at||ar.shiftKey||ar.altKey||ar.ctrlKey||ar.metaKey){return;
-}var ap=true;switch(ar.keyCode){case 80:case 33:ac();break;case 78:case 34:y();break;case 72:case 37:C();break;case 76:case 39:k();break;case 75:case 38:v();
-break;case 74:case 40:G();break;case 36:a(0);break;case 35:a(Number.MAX_VALUE);break;case 32:N()?ai():y();break;case 13:N()?ai():ap=false;break;case 66:case 190:ad();
-break;case 70:af();break;default:ap=false;}if(ap){ar.preventDefault();}else{if(ar.keyCode===27&&W){aa();ar.preventDefault();}}Q();}function B(ap){ag.startX=ap.touches[0].clientX;
-ag.startY=ap.touches[0].clientY;ag.startCount=ap.touches.length;if(ap.touches.length===2&&U.overview){ag.startSpan=V({x:ap.touches[1].clientX,y:ap.touches[1].clientY},{x:ag.startX,y:ag.startY});
-}}function aj(av){if(!ag.handled){var at=av.touches[0].clientX;var ar=av.touches[0].clientY;if(av.touches.length===2&&ag.startCount===2&&U.overview){var au=V({x:av.touches[1].clientX,y:av.touches[1].clientY},{x:ag.startX,y:ag.startY});
-if(Math.abs(ag.startSpan-au)>ag.threshold){ag.handled=true;if(auag.threshold&&Math.abs(aq)>Math.abs(ap)){ag.handled=true;C();}else{if(aq<-ag.threshold&&Math.abs(aq)>Math.abs(ap)){ag.handled=true;k();}else{if(ap>ag.threshold){ag.handled=true;
-v();}else{if(ap<-ag.threshold){ag.handled=true;G();}}}}av.preventDefault();}}}else{if(navigator.userAgent.match(/android/gi)){av.preventDefault();}}}function Z(ap){ag.handled=false;
-}function p(ap){clearTimeout(A);A=setTimeout(function(){var aq=ap.detail||-ap.wheelDelta;if(aq>0){y();}else{ac();}},100);}function am(aq){var ap=Array.prototype.slice.call(document.querySelectorAll(m)).length;
-var ar=Math.floor((aq.clientX/f.wrapper.offsetWidth)*ap);a(ar);}function x(ap){L();}function g(ap){S();}function D(ap){if(N()){ap.preventDefault();ai();
-n=this.getAttribute("data-index-h");e=this.getAttribute("data-index-v");a();}}return{initialize:j,slide:a,left:C,right:k,up:v,down:G,prev:ac,next:y,prevFragment:T,nextFragment:w,navigateTo:a,navigateLeft:C,navigateRight:k,navigateUp:v,navigateDown:G,navigatePrev:ac,navigateNext:y,toggleOverview:aa,addEventListeners:F,removeEventListeners:X,getIndices:O,getPreviousSlide:function(){return z;
-},getCurrentSlide:function(){return I;},getQueryHash:function(){var ap={};location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(aq){ap[aq.split("=").shift()]=aq.split("=").pop();
-});return ap;},addEventListener:function(aq,ar,ap){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).addEventListener(aq,ar,ap);
-}},removeEventListener:function(aq,ar,ap){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).removeEventListener(aq,ar,ap);
+var Reveal=(function(){var ap=".reveal .slides section",m=".reveal .slides>section",b=".reveal .slides>section.present>section",V={controls:true,progress:true,history:false,keyboard:true,overview:true,center:false,loop:false,autoSlide:0,mouseWheel:true,rollingLinks:true,theme:null,transition:"default",dependencies:[]},ac=V.autoSlide,n=0,e=0,A,J,aq=[],f={},X="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,p="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,B=0,l=0,F=0,ah={startX:0,startY:0,startSpan:0,startCount:0,handled:false,threshold:80};
+function j(ar){if((!p&&!X)){document.body.setAttribute("class","no-transforms");return;}v(V,ar);d();Z();}function S(){f.theme=document.querySelector("#theme");
+f.wrapper=document.querySelector(".reveal");if(!f.wrapper.querySelector(".progress")&&V.progress){var av=document.createElement("div");av.classList.add("progress");
+av.innerHTML="";f.wrapper.appendChild(av);}if(!f.wrapper.querySelector(".controls")&&V.controls){var au=document.createElement("aside");au.classList.add("controls");
+au.innerHTML='';f.wrapper.appendChild(au);
+}if(!f.wrapper.querySelector(".state-background")){var at=document.createElement("div");at.classList.add("state-background");f.wrapper.appendChild(at);
+}if(!f.wrapper.querySelector(".pause-overlay")){var ar=document.createElement("div");ar.classList.add("pause-overlay");f.wrapper.appendChild(ar);}f.progress=document.querySelector(".reveal .progress");
+f.progressbar=document.querySelector(".reveal .progress span");if(V.controls){f.controls=document.querySelector(".reveal .controls");f.controlsLeft=I(document.querySelectorAll(".navigate-left"));
+f.controlsRight=I(document.querySelectorAll(".navigate-right"));f.controlsUp=I(document.querySelectorAll(".navigate-up"));f.controlsDown=I(document.querySelectorAll(".navigate-down"));
+f.controlsPrev=I(document.querySelectorAll(".navigate-prev"));f.controlsNext=I(document.querySelectorAll(".navigate-next"));}}function d(){if(navigator.userAgent.match(/(iphone|ipod|android)/i)){document.documentElement.style.overflow="scroll";
+document.body.style.height="120%";window.addEventListener("load",ai,false);window.addEventListener("orientationchange",ai,false);}}function Z(){var at=[],ax=[];
+for(var au=0,ar=V.dependencies.length;au'+av.innerHTML+"";}}}}function T(){if(V.center){var av=I(document.querySelectorAll(ap));var aw=-f.wrapper.offsetHeight/2;
+for(var au=0,at=av.length;au3?"none":"block";
+}at[ax].classList.remove("past");at[ax].classList.remove("present");at[ax].classList.remove("future");if(axaA){at[ax].classList.add("future");
+}}if(ay.querySelector("section")){at[ax].classList.add("stack");}}at[aA].classList.add("present");var au=at[aA].getAttribute("data-state");if(au){aq=aq.concat(au.split(" "));
+}var aw=at[aA].getAttribute("data-autoslide");if(aw){ac=parseInt(aw);}else{ac=V.autoSlide;}}else{aA=0;}return aA;}function o(){if(V.progress&&f.progress){var au=I(document.querySelectorAll(m));
+var at=document.querySelectorAll(ap+":not(.stack)").length;var ar=0;mainLoop:for(var aw=0;aw0,right:n0,down:e0||e>0){ar+=n;}if(e>0){ar+="/"+e;}}window.location.hash=ar;}}function P(ar){var aw=n,au=e;if(ar){var ax=!!ar.parentNode.nodeName.match(/section/gi);
+var av=ax?ar.parentNode:ar;var at=I(document.querySelectorAll(m));aw=Math.max(at.indexOf(av),0);if(ax){au=Math.max(I(ar.parentNode.children).indexOf(ar),0);
+}}return{h:aw,v:au};}function x(){if(document.querySelector(b+".present")){var at=document.querySelectorAll(b+".present .fragment:not(.visible)");if(at.length){at[0].classList.add("visible");
+t("fragmentshown",{fragment:at[0]});return true;}}else{var ar=document.querySelectorAll(m+".present .fragment:not(.visible)");if(ar.length){ar[0].classList.add("visible");
+t("fragmentshown",{fragment:ar[0]});return true;}}return false;}function U(){if(document.querySelector(b+".present")){var at=document.querySelectorAll(b+".present .fragment.visible");
+if(at.length){at[at.length-1].classList.remove("visible");t("fragmenthidden",{fragment:at[at.length-1]});return true;}}else{var ar=document.querySelectorAll(m+".present .fragment.visible");
+if(ar.length){ar[ar.length-1].classList.remove("visible");t("fragmenthidden",{fragment:ar[ar.length-1]});return true;}}return false;}function R(){clearTimeout(l);
+if(ac){l=setTimeout(z,ac);}}function D(){if(h().left&&(O()||U()===false)){a(n-1,0);}}function k(){if(h().right&&(O()||x()===false)){a(n+1,0);}}function w(){if(h().up&&(O()||U()===false)){a(n,e-1);
+}}function H(){if(h().down&&(O()||x()===false)){a(n,e+1);}}function ad(){if(U()===false){if(h().up){w();}else{var ar=document.querySelector(".reveal .slides>section.past:nth-child("+n+")");
+if(ar){e=(ar.querySelectorAll("section").length+1)||0;n--;a();}}}}function z(){if(x()===false){h().down?H():k();}R();}function am(au){var at=document.activeElement;
+var av=!!(document.activeElement&&(document.activeElement.type||document.activeElement.href||document.activeElement.contentEditable!=="inherit"));if(av||au.shiftKey||au.altKey||au.ctrlKey||au.metaKey){return;
+}var ar=true;switch(au.keyCode){case 80:case 33:ad();break;case 78:case 34:z();break;case 72:case 37:D();break;case 76:case 39:k();break;case 75:case 38:w();
+break;case 74:case 40:H();break;case 36:a(0);break;case 35:a(Number.MAX_VALUE);break;case 32:O()?aj():z();break;case 13:O()?aj():ar=false;break;case 66:case 190:ae();
+break;case 70:ag();break;default:ar=false;}if(ar){au.preventDefault();}else{if(au.keyCode===27&&X){ab();au.preventDefault();}}R();}function C(ar){ah.startX=ar.touches[0].clientX;
+ah.startY=ar.touches[0].clientY;ah.startCount=ar.touches.length;if(ar.touches.length===2&&V.overview){ah.startSpan=W({x:ar.touches[1].clientX,y:ar.touches[1].clientY},{x:ah.startX,y:ah.startY});
+}}function ak(ax){if(!ah.handled){var av=ax.touches[0].clientX;var au=ax.touches[0].clientY;if(ax.touches.length===2&&ah.startCount===2&&V.overview){var aw=W({x:ax.touches[1].clientX,y:ax.touches[1].clientY},{x:ah.startX,y:ah.startY});
+if(Math.abs(ah.startSpan-aw)>ah.threshold){ah.handled=true;if(awah.threshold&&Math.abs(at)>Math.abs(ar)){ah.handled=true;D();}else{if(at<-ah.threshold&&Math.abs(at)>Math.abs(ar)){ah.handled=true;k();}else{if(ar>ah.threshold){ah.handled=true;
+w();}else{if(ar<-ah.threshold){ah.handled=true;H();}}}}ax.preventDefault();}}}else{if(navigator.userAgent.match(/android/gi)){ax.preventDefault();}}}function aa(ar){ah.handled=false;
+}function q(ar){clearTimeout(B);B=setTimeout(function(){var at=ar.detail||-ar.wheelDelta;if(at>0){z();}else{ad();}},100);}function an(at){var ar=I(document.querySelectorAll(m)).length;
+var au=Math.floor((at.clientX/f.wrapper.offsetWidth)*ar);a(au);}function y(ar){M();}function g(ar){T();}function E(ar){if(O()){ar.preventDefault();aj();
+n=this.getAttribute("data-index-h");e=this.getAttribute("data-index-v");a();}}return{initialize:j,slide:a,left:D,right:k,up:w,down:H,prev:ad,next:z,prevFragment:U,nextFragment:x,navigateTo:a,navigateLeft:D,navigateRight:k,navigateUp:w,navigateDown:H,navigatePrev:ad,navigateNext:z,toggleOverview:ab,addEventListeners:G,removeEventListeners:Y,getIndices:P,getPreviousSlide:function(){return A;
+},getCurrentSlide:function(){return J;},getQueryHash:function(){var ar={};location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(at){ar[at.split("=").shift()]=at.split("=").pop();
+});return ar;},addEventListener:function(at,au,ar){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).addEventListener(at,au,ar);
+}},removeEventListener:function(at,au,ar){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).removeEventListener(at,au,ar);
}}};})();
\ No newline at end of file