/*! PhotoSwipe - v4.0.7 - 2015-05-04 * http://photoswipe.com * Copyright (c) 2015 Dmitry Semenov; */ !function(a,b){"function"==typeof define&&define.amd?define(b):"object"==typeof exports?module.exports=b():a.PhotoSwipe=b()}(this,function(){"use strict";var a=function(a,b,c,d){var e={features:null,bind:function(a,b,c,d){var e=(d?"remove":"add")+"EventListener";b=b.split(" ");for(var f=0;f0&&(g=parseInt(g[1],10),g>=1&&8>g&&(d.isOldIOSPhone=!0))}var h=f.match(/Android\s([0-9\.]*)/),i=h?h[1]:0;i=parseFloat(i),i>=1&&(4.4>i&&(d.isOldAndroid=!0),d.androidVersion=i),d.isMobileOpera=/opera mini|opera mobi/i.test(f)}for(var j,k,l=["transform","perspective","animationName"],m=["","webkit","Moz","ms","O"],n=0;4>n;n++){c=m[n];for(var o=0;3>o;o++)j=l[o],k=c+(c?j.charAt(0).toUpperCase()+j.slice(1):j),!d[j]&&k in b&&(d[j]=k);c&&!d.raf&&(c=c.toLowerCase(),d.raf=window[c+"RequestAnimationFrame"],d.raf&&(d.caf=window[c+"CancelAnimationFrame"]||window[c+"CancelRequestAnimationFrame"]))}if(!d.raf){var p=0;d.raf=function(a){var b=(new Date).getTime(),c=Math.max(0,16-(b-p)),d=window.setTimeout(function(){a(b+c)},c);return p=b+c,d},d.caf=function(a){clearTimeout(a)}}return d.svg=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,e.features=d,d}};e.detectFeatures(),e.features.oldIE&&(e.bind=function(a,b,c,d){b=b.split(" ");for(var e,f=(d?"detach":"attach")+"Event",g=function(){c.handleEvent.call(c)},h=0;hb-1?a-b:0>a?b+a:a},zb={},Ab=function(a,b){return zb[a]||(zb[a]=[]),zb[a].push(b)},Bb=function(a){var b=zb[a];if(b){var c=Array.prototype.slice.call(arguments);c.shift();for(var d=0;dc&&d>0||c>=$c()-1&&0>d)&&(a=rc.x+d*i.mainScrollEndFriction)}rc.x=a,Hb(a,n)},Jb=function(a,b){var c=sc[a]-rb[a];return nb[a]+mb[a]+c-c*(b/t)},Kb=function(a,b){a.x=b.x,a.y=b.y,b.id&&(a.id=b.id)},Lb=function(a){a.x=Math.round(a.x),a.y=Math.round(a.y)},Mb=null,Nb=function(){Mb&&(e.unbind(document,"mousemove",Nb),e.addClass(a,"pswp--has_mouse"),i.mouseUsed=!0,Bb("mouseUsed")),Mb=setTimeout(function(){Mb=null},100)},Ob=function(){e.bind(document,"keydown",f),N.transform&&e.bind(f.scrollWrap,"click",f),i.mouseUsed||e.bind(document,"mousemove",Nb),e.bind(window,"resize scroll",f),Bb("bindEvents")},Pb=function(){e.unbind(window,"resize",f),e.unbind(window,"scroll",r.scroll),e.unbind(document,"keydown",f),e.unbind(document,"mousemove",Nb),N.transform&&e.unbind(f.scrollWrap,"click",f),U&&e.unbind(window,p,f),Bb("unbindEvents")},Qb=function(a,b){var c=gd(f.currItem,pb,a);return b&&(cb=c),c},Rb=function(a){return a||(a=f.currItem),a.initialZoomLevel},Sb=function(a){return a||(a=f.currItem),a.w>0?i.maxSpreadZoom:1},Tb=function(a,b,c,d){return d===f.currItem.initialZoomLevel?(c[a]=f.currItem.initialPosition[a],!0):(c[a]=Jb(a,d),c[a]>b.min[a]?(c[a]=b.min[a],!0):c[a]1?1:a.fitRatio,c=a.container.style,d=b*a.w,e=b*a.h;c.width=d+"px",c.height=e+"px",c.left=a.initialPosition.x+"px",c.top=a.initialPosition.y+"px"},Fb=function(){if(db){var a=db,b=f.currItem,c=b.fitRatio>1?1:b.fitRatio,d=c*b.w,e=c*b.h;a.width=d+"px",a.height=e+"px",a.left=ob.x+"px",a.top=ob.y+"px"}}},Vb=function(a){var b="";i.escKey&&27===a.keyCode?b="close":i.arrowKeys&&(37===a.keyCode?b="prev":39===a.keyCode&&(b="next")),b&&(a.ctrlKey||a.altKey||a.shiftKey||a.metaKey||(a.preventDefault?a.preventDefault():a.returnValue=!1,f[b]()))},Wb=function(a){a&&(X||W||eb||S)&&(a.preventDefault(),a.stopPropagation())},Xb=function(){f.setScrollOffset(0,e.getScrollY())},Yb={},Zb=0,$b=function(a){Yb[a]&&(Yb[a].raf&&I(Yb[a].raf),Zb--,delete Yb[a])},_b=function(a){Yb[a]&&$b(a),Yb[a]||(Zb++,Yb[a]={})},ac=function(){for(var a in Yb)Yb.hasOwnProperty(a)&&$b(a)},bc=function(a,b,c,d,e,f,g){var h,i=Cb();_b(a);var j=function(){if(Yb[a]){if(h=Cb()-i,h>=d)return $b(a),f(c),void(g&&g());f((c-b)*e(h/d)+b),Yb[a].raf=H(j)}};j()},cc={shout:Bb,listen:Ab,viewportSize:pb,options:i,isMainScrollAnimating:function(){return eb},getZoomLevel:function(){return s},getCurrentIndex:function(){return m},isDragging:function(){return U},isZooming:function(){return _},setScrollOffset:function(a,b){rb.x=a,M=rb.y=b,Bb("updateScrollOffset",rb)},applyZoomPan:function(a,b,c){ob.x=b,ob.y=c,s=a,Fb()},init:function(){if(!j&&!k){var c;f.framework=e,f.template=a,f.bg=e.getChildByClass(a,"pswp__bg"),J=a.className,j=!0,N=e.detectFeatures(),H=N.raf,I=N.caf,E=N.transform,L=N.oldIE,f.scrollWrap=e.getChildByClass(a,"pswp__scroll-wrap"),f.container=e.getChildByClass(f.scrollWrap,"pswp__container"),n=f.container.style,f.itemHolders=y=[{el:f.container.children[0],wrap:0,index:-1},{el:f.container.children[1],wrap:0,index:-1},{el:f.container.children[2],wrap:0,index:-1}],y[0].el.style.display=y[2].el.style.display="none",Ub(),r={resize:f.updateSize,scroll:Xb,keydown:Vb,click:Wb};var d=N.isOldIOSPhone||N.isOldAndroid||N.isMobileOpera;for(N.animationName&&N.transform&&!d||(i.showAnimationDuration=i.hideAnimationDuration=0),c=0;cm||m>=$c())&&(m=0),f.currItem=Zc(m),(N.isOldIOSPhone||N.isOldAndroid)&&(ub=!1),a.setAttribute("aria-hidden","false"),i.modal&&(ub?a.style.position="fixed":(a.style.position="absolute",a.style.top=e.getScrollY()+"px")),void 0===M&&(Bb("initialLayout"),M=K=e.getScrollY());var l="pswp--open ";for(i.mainClass&&(l+=i.mainClass+" "),i.showHideOpacity&&(l+="pswp--animate_opacity "),l+=G?"pswp--touch":"pswp--notouch",l+=N.animationName?" pswp--css_animation":"",l+=N.svg?" pswp--svg":"",e.addClass(a,l),f.updateSize(),o=-1,tb=null,c=0;h>c;c++)Hb((c+o)*sb.x,y[c].el.style);L||e.bind(f.scrollWrap,q,f),Ab("initialZoomInEnd",function(){f.setContent(y[0],m-1),f.setContent(y[2],m+1),y[0].el.style.display=y[2].el.style.display="block",i.focus&&a.focus(),Ob()}),f.setContent(y[1],m),f.updateCurrItem(),Bb("afterInit"),ub||(w=setInterval(function(){Zb||U||_||s!==f.currItem.initialZoomLevel||f.updateSize()},1e3)),e.addClass(a,"pswp--visible")}},close:function(){j&&(j=!1,k=!0,Bb("close"),Pb(),ad(f.currItem,null,!0,f.destroy))},destroy:function(){Bb("destroy"),Vc&&clearTimeout(Vc),a.setAttribute("aria-hidden","true"),a.className=J,w&&clearInterval(w),e.unbind(f.scrollWrap,q,f),e.unbind(window,"scroll",f),xc(),ac(),zb=null},panTo:function(a,b,c){c||(a>cb.min.x?a=cb.min.x:acb.min.y?b=cb.min.y:ba;a++)y[a].item&&(y[a].item.needsUpdate=!0)},updateCurrItem:function(a){if(0!==tb){var b,c=Math.abs(tb);if(!(a&&2>c)){f.currItem=Zc(m),Bb("beforeChange",tb),c>=h&&(o+=tb+(tb>0?-h:h),c=h);for(var d=0;c>d;d++)tb>0?(b=y.shift(),y[h-1]=b,o++,Hb((o+2)*sb.x,b.el.style),f.setContent(b,m-c+d+1+1)):(b=y.pop(),y.unshift(b),o--,Hb(o*sb.x,b.el.style),f.setContent(b,m+c-d-1-1));if(db&&1===Math.abs(tb)){var e=Zc(z);e.initialZoomLevel!==s&&(gd(e,pb),Gb(e))}tb=0,f.updateCurrZoomItem(),z=m,Bb("afterChange")}}},updateSize:function(b){if(!ub&&i.modal){var c=e.getScrollY();if(M!==c&&(a.style.top=c+"px",M=c),!b&&wb.x===window.innerWidth&&wb.y===window.innerHeight)return;wb.x=window.innerWidth,wb.y=window.innerHeight,a.style.height=wb.y+"px"}if(pb.x=f.scrollWrap.clientWidth,pb.y=f.scrollWrap.clientHeight,Xb(),sb.x=pb.x+Math.round(pb.x*i.spacing),sb.y=pb.y,Ib(sb.x*qb),Bb("beforeResize"),void 0!==o){for(var d,g,j,k=0;h>k;k++)d=y[k],Hb((k+o)*sb.x,d.el.style),j=m+k-1,i.loop&&$c()>2&&(j=yb(j)),g=Zc(j),g&&(x||g.needsUpdate||!g.bounds)?(f.cleanSlide(g),f.setContent(d,j),1===k&&(f.currItem=g,f.updateCurrZoomItem(!0)),g.needsUpdate=!1):-1===d.index&&j>=0&&f.setContent(d,j),g&&g.container&&(gd(g,pb),Gb(g));x=!1}t=s=f.currItem.initialZoomLevel,cb=f.currItem.bounds,cb&&(ob.x=cb.center.x,ob.y=cb.center.y,Fb()),Bb("resize")},zoomTo:function(a,b,c,d,f){b&&(t=s,sc.x=Math.abs(b.x)-ob.x,sc.y=Math.abs(b.y)-ob.y,Kb(nb,ob));var g=Qb(a,!1),h={};Tb("x",g,h,a),Tb("y",g,h,a);var i=s,j={x:ob.x,y:ob.y};Lb(h);var k=function(b){1===b?(s=a,ob.x=h.x,ob.y=h.y):(s=(a-i)*b+i,ob.x=(h.x-j.x)*b+j.x,ob.y=(h.y-j.y)*b+j.y),f&&f(b),Fb()};c?bc("customZoomTo",0,1,c,d||e.easing.sine.inOut,k):k(1)}},dc=30,ec=10,fc={},gc={},hc={},ic={},jc={},kc=[],lc={},mc=[],nc={},oc=0,pc=lb(),qc=0,rc=lb(),sc=lb(),tc=lb(),uc=function(a,b){return a.x===b.x&&a.y===b.y},vc=function(a,b){return Math.abs(a.x-b.x)-1?!1:b(a)?a:Ac(a.parentNode,b):!1},Bc={},Cc=function(a,b){return Bc.prevent=!Ac(a.target,i.isClickableElement),Bb("preventDragEvent",a,b,Bc),Bc.prevent},Dc=function(a,b){return b.x=a.pageX,b.y=a.pageY,b.id=a.identifier,b},Ec=function(a,b,c){c.x=.5*(a.x+b.x),c.y=.5*(a.y+b.y)},Fc=function(a,b,c){if(a-P>50){var d=mc.length>2?mc.shift():{};d.x=b,d.y=c,mc.push(d),P=a}},Gc=function(){var a=ob.y-f.currItem.initialPosition.y;return 1-Math.abs(a/(pb.y/2))},Hc={},Ic={},Jc=[],Kc=function(a){for(;Jc.length>0;)Jc.pop();return F?(kb=0,kc.forEach(function(a){0===kb?Jc[0]=a:1===kb&&(Jc[1]=a),kb++})):a.type.indexOf("touch")>-1?a.touches&&a.touches.length>0&&(Jc[0]=Dc(a.touches[0],Hc),a.touches.length>1&&(Jc[1]=Dc(a.touches[1],Ic))):(Hc.x=a.pageX,Hc.y=a.pageY,Hc.id="",Jc[0]=Hc),Jc},Lc=function(a,b){var c,d,e,g,h=0,j=ob[a]+b[a],k=b[a]>0,l=rc.x+b.x,m=rc.x-lc.x;return c=j>cb.min[a]||jcb.min[a]&&(c=i.panEndFriction,h=cb.min[a]-j,d=cb.min[a]-nb[a]),(0>=d||0>m)&&$c()>1?(g=l,0>m&&l>lc.x&&(g=lc.x)):cb.min.x!==cb.max.x&&(e=j)):(j=d||m>0)&&$c()>1?(g=l,m>0&&lf.currItem.fitRatio&&(ob[a]+=b[a]*c)):(void 0!==g&&(Ib(g,!0),Z=g===lc.x?!1:!0),cb.min.x!==cb.max.x&&(void 0!==e?ob.x=e:Z||(ob.x+=b.x*c)),void 0!==g)},Mc=function(a){if(!("mousedown"===a.type&&a.button>0)){if(Yc)return void a.preventDefault();if(!T||"mousedown"!==a.type){if(Cc(a,!0)&&a.preventDefault(),Bb("pointerDown"),F){var b=e.arraySearch(kc,a.pointerId,"id");0>b&&(b=kc.length),kc[b]={x:a.pageX,y:a.pageY,id:a.pointerId}}var c=Kc(a),d=c.length;$=null,ac(),U&&1!==d||(U=gb=!0,e.bind(window,p,f),R=jb=hb=S=Z=X=V=W=!1,fb=null,Bb("firstTouchStart",c),Kb(nb,ob),mb.x=mb.y=0,Kb(ic,c[0]),Kb(jc,ic),lc.x=sb.x*qb,mc=[{x:ic.x,y:ic.y}],P=O=Cb(),Qb(s,!0),xc(),yc()),!_&&d>1&&!eb&&!Z&&(t=s,W=!1,_=V=!0,mb.y=mb.x=0,Kb(nb,ob),Kb(fc,c[0]),Kb(gc,c[1]),Ec(fc,gc,tc),sc.x=Math.abs(tc.x)-ob.x,sc.y=Math.abs(tc.y)-ob.y,ab=bb=wc(fc,gc))}}},Nc=function(a){if(a.preventDefault(),F){var b=e.arraySearch(kc,a.pointerId,"id");if(b>-1){var c=kc[b];c.x=a.pageX,c.y=a.pageY}}if(U){var d=Kc(a);if(fb||X||_)$=d;else{var f=Math.abs(d[0].x-ic.x)-Math.abs(d[0].y-ic.y);Math.abs(f)>=ec&&(fb=f>0?"h":"v",$=d)}}},Oc=function(){if($){var a=$.length;if(0!==a)if(Kb(fc,$[0]),hc.x=fc.x-ic.x,hc.y=fc.y-ic.y,_&&a>1){if(ic.x=fc.x,ic.y=fc.y,!hc.x&&!hc.y&&uc($[1],gc))return;Kb(gc,$[1]),W||(W=!0,Bb("zoomGestureStarted"));var b=wc(fc,gc),c=Tc(b);c>f.currItem.initialZoomLevel+f.currItem.initialZoomLevel/15&&(jb=!0);var d=1,e=Rb(),g=Sb();if(e>c)if(i.pinchToClose&&!jb&&t<=f.currItem.initialZoomLevel){var h=e-c,j=1-h/(e/1.2);Db(j),Bb("onPinchClose",j),hb=!0}else d=(e-c)/e,d>1&&(d=1),c=e-d*(e/3);else c>g&&(d=(c-g)/(6*e),d>1&&(d=1),c=g+d*e);0>d&&(d=0),ab=b,Ec(fc,gc,pc),mb.x+=pc.x-tc.x,mb.y+=pc.y-tc.y,Kb(tc,pc),ob.x=Jb("x",c),ob.y=Jb("y",c),R=c>s,s=c,Fb()}else{if(!fb)return;if(gb&&(gb=!1,Math.abs(hc.x)>=ec&&(hc.x-=$[0].x-jc.x),Math.abs(hc.y)>=ec&&(hc.y-=$[0].y-jc.y)),ic.x=fc.x,ic.y=fc.y,0===hc.x&&0===hc.y)return;if("v"===fb&&i.closeOnVerticalDrag&&!zc()){mb.y+=hc.y,ob.y+=hc.y;var k=Gc();return S=!0,Bb("onVerticalDrag",k),Db(k),void Fb()}Fc(Cb(),fc.x,fc.y),X=!0,cb=f.currItem.bounds;var l=Lc("x",hc);l||(Lc("y",hc),Lb(ob),Fb())}}},Pc=function(a){if(N.isOldAndroid){if(T&&"mouseup"===a.type)return;a.type.indexOf("touch")>-1&&(clearTimeout(T),T=setTimeout(function(){T=0},600))}Bb("pointerUp"),Cc(a,!1)&&a.preventDefault();var b;if(F){var c=e.arraySearch(kc,a.pointerId,"id");if(c>-1)if(b=kc.splice(c,1)[0],navigator.pointerEnabled)b.type=a.pointerType||"mouse";else{var d={4:"mouse",2:"touch",3:"pen"};b.type=d[a.pointerType],b.type||(b.type=a.pointerType||"mouse")}}var g,h=Kc(a),j=h.length;if("mouseup"===a.type&&(j=0),2===j)return $=null,!0;1===j&&Kb(jc,h[0]),0!==j||fb||eb||(b||("mouseup"===a.type?b={x:a.pageX,y:a.pageY,type:"mouse"}:a.changedTouches&&a.changedTouches[0]&&(b={x:a.changedTouches[0].pageX,y:a.changedTouches[0].pageY,type:"touch"})),Bb("touchRelease",a,b));var k=-1;if(0===j&&(U=!1,e.unbind(window,p,f),xc(),_?k=0:-1!==qc&&(k=Cb()-qc)),qc=1===j?Cb():-1,g=-1!==k&&150>k?"zoom":"swipe",_&&2>j&&(_=!1,1===j&&(g="zoomPointerUp"),Bb("zoomGestureEnded")),$=null,X||W||eb||S)if(ac(),Q||(Q=Qc()),Q.calculateSwipeSpeed("x"),S){var l=Gc();if(lf.currItem.fitRatio&&Rc(Q))}},Qc=function(){var a,b,c={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(d){mc.length>1?(a=Cb()-P+50,b=mc[mc.length-2][d]):(a=Cb()-O,b=jc[d]),c.lastFlickOffset[d]=ic[d]-b,c.lastFlickDist[d]=Math.abs(c.lastFlickOffset[d]),c.lastFlickSpeed[d]=c.lastFlickDist[d]>20?c.lastFlickOffset[d]/a:0,Math.abs(c.lastFlickSpeed[d])<.1&&(c.lastFlickSpeed[d]=0),c.slowDownRatio[d]=.95,c.slowDownRatioReverse[d]=1-c.slowDownRatio[d],c.speedDecelerationRatio[d]=1},calculateOverBoundsAnimOffset:function(a,b){c.backAnimStarted[a]||(ob[a]>cb.min[a]?c.backAnimDestination[a]=cb.min[a]:ob[a]dc&&(h||b.lastFlickOffset.x>20)?d=-1:-dc>g&&(h||b.lastFlickOffset.x<-20)&&(d=1)}var j;d&&(m+=d,0>m?(m=i.loop?$c()-1:0,j=!0):m>=$c()&&(m=i.loop?0:$c()-1,j=!0),(!j||i.loop)&&(tb+=d,qb-=d,c=!0));var k,l=sb.x*qb,n=Math.abs(l-rc.x);return c||l>rc.x==b.lastFlickSpeed.x>0?(k=Math.abs(b.lastFlickSpeed.x)>0?n/Math.abs(b.lastFlickSpeed.x):333,k=Math.min(k,400),k=Math.max(k,250)):k=333,oc===m&&(c=!1),eb=!0,Bb("mainScrollAnimStart"),bc("mainScroll",rc.x,l,k,e.easing.cubic.out,Ib,function(){ac(),eb=!1,oc=-1,(c||oc!==m)&&f.updateCurrItem(),Bb("mainScrollAnimComplete")}),c&&f.updateCurrItem(!0),c},Tc=function(a){return 1/bb*a*t},Uc=function(){var a=s,b=Rb(),c=Sb();b>s?a=b:s>c&&(a=c);var d,g=1,h=ib;return hb&&!R&&!jb&&b>s?(f.close(),!0):(hb&&(d=function(a){Db((g-h)*a+h)}),f.zoomTo(a,0,300,e.easing.cubic.out,d),!0)};xb("Gestures",{publicMethods:{initGestures:function(){var a=function(a,b,c,d,e){A=a+b,B=a+c,C=a+d,D=e?a+e:""};F=N.pointerEvent,F&&N.touch&&(N.touch=!1),F?navigator.pointerEnabled?a("pointer","down","move","up","cancel"):a("MSPointer","Down","Move","Up","Cancel"):N.touch?(a("touch","start","move","end","cancel"),G=!0):a("mouse","down","move","up"),p=B+" "+C+" "+D,q=A,F&&!G&&(G=navigator.maxTouchPoints>1||navigator.msMaxTouchPoints>1),f.likelyTouchDevice=G,r[A]=Mc,r[B]=Nc,r[C]=Pc,D&&(r[D]=r[C]),N.touch&&(q+=" mousedown",p+=" mousemove mouseup",r.mousedown=r[A],r.mousemove=r[B],r.mouseup=r[C]),G||(i.allowPanToNext=!1)}}});var Vc,Wc,Xc,Yc,Zc,$c,_c,ad=function(b,c,d,g){Vc&&clearTimeout(Vc),Yc=!0,Xc=!0;var h;b.initialLayout?(h=b.initialLayout,b.initialLayout=null):h=i.getThumbBoundsFn&&i.getThumbBoundsFn(m);var j=d?i.hideAnimationDuration:i.showAnimationDuration,k=function(){$b("initialZoom"),d?(f.template.removeAttribute("style"),f.bg.removeAttribute("style")):(Db(1),c&&(c.style.display="block"),e.addClass(a,"pswp--animated-in"),Bb("initialZoom"+(d?"OutEnd":"InEnd"))),g&&g(),Yc=!1};if(!j||!h||void 0===h.x){var n=function(){Bb("initialZoom"+(d?"Out":"In")),s=b.initialZoomLevel,Kb(ob,b.initialPosition),Fb(),a.style.opacity=d?0:1,Db(1),k()};return void n()}var o=function(){var c=l,g=!f.currItem.src||f.currItem.loadError||i.showHideOpacity;b.miniImg&&(b.miniImg.style.webkitBackfaceVisibility="hidden"),d||(s=h.w/b.w,ob.x=h.x,ob.y=h.y-K,f[g?"template":"bg"].style.opacity=.001,Fb()),_b("initialZoom"),d&&!c&&e.removeClass(a,"pswp--animated-in"),g&&(d?e[(c?"remove":"add")+"Class"](a,"pswp--animate_opacity"):setTimeout(function(){e.addClass(a,"pswp--animate_opacity")},30)),Vc=setTimeout(function(){if(Bb("initialZoom"+(d?"Out":"In")),d){var f=h.w/b.w,i={x:ob.x,y:ob.y},l=s,m=ib,n=function(b){1===b?(s=f,ob.x=h.x,ob.y=h.y-M):(s=(f-l)*b+l,ob.x=(h.x-i.x)*b+i.x,ob.y=(h.y-M-i.y)*b+i.y),Fb(),g?a.style.opacity=1-b:Db(m-b*m)};c?bc("initialZoom",0,1,j,e.easing.cubic.out,n,k):(n(1),Vc=setTimeout(k,j+20))}else s=b.initialZoomLevel,Kb(ob,b.initialPosition),Fb(),Db(1),g?a.style.opacity=1:Db(1),Vc=setTimeout(k,j+20)},d?25:90)};o()},bd={},cd=[],dd={index:0,errorMsg:'
The image could not be loaded.
',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return Wc.length}},ed=function(){return{center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}}},fd=function(a,b,c){var d=a.bounds;d.center.x=Math.round((bd.x-b)/2),d.center.y=Math.round((bd.y-c)/2)+a.vGap.top,d.max.x=b>bd.x?Math.round(bd.x-b):d.center.x,d.max.y=c>bd.y?Math.round(bd.y-c)+a.vGap.top:d.center.y,d.min.x=b>bd.x?0:d.center.x,d.min.y=c>bd.y?a.vGap.top:d.center.y},gd=function(a,b,c){if(a.src&&!a.loadError){var d=!c;if(d&&(a.vGap||(a.vGap={top:0,bottom:0}),Bb("parseVerticalMargin",a)),bd.x=b.x,bd.y=b.y-a.vGap.top-a.vGap.bottom,d){var e=bd.x/a.w,f=bd.y/a.h;a.fitRatio=f>e?e:f;var g=i.scaleMode;"orig"===g?c=1:"fit"===g&&(c=a.fitRatio),c>1&&(c=1),a.initialZoomLevel=c,a.bounds||(a.bounds=ed())}if(!c)return;return fd(a,a.w*c,a.h*c),d&&c===a.initialZoomLevel&&(a.initialPosition=a.bounds.center),a.bounds}return a.w=a.h=0,a.initialZoomLevel=a.fitRatio=1,a.bounds=ed(),a.initialPosition=a.bounds.center,a.bounds},hd=function(a,b,c,d,e,g){if(!b.loadError){var h,j=f.isDragging()&&!f.isZooming(),k=a===m||f.isMainScrollAnimating()||j;!e&&(G||i.alwaysFadeIn)&&k&&(h=!0),d&&(h&&(d.style.opacity=0),b.imageAppended=!0,kd(d,b.w,b.h),c.appendChild(d),h&&setTimeout(function(){d.style.opacity=1,g&&setTimeout(function(){b&&b.loaded&&b.placeholder&&(b.placeholder.style.display="none",b.placeholder=null)},500)},50))}},id=function(a){a.loading=!0,a.loaded=!1;var b=a.img=e.createEl("pswp__img","img"),c=function(){a.loading=!1,a.loaded=!0,a.loadComplete?a.loadComplete(a):a.img=null,b.onload=b.onerror=null,b=null};return b.onload=c,b.onerror=function(){a.loadError=!0,c()},b.src=a.src,b},jd=function(a,b){return a.src&&a.loadError&&a.container?(b&&(a.container.innerHTML=""),a.container.innerHTML=i.errorMsg.replace("%url%",a.src),!0):void 0},kd=function(a,b,c){a.style.width=b+"px",a.style.height=c+"px"},ld=function(){if(cd.length){for(var a,b=0;b0,e=Math.min(c[0],$c()),g=Math.min(c[1],$c());for(b=1;(d?g:e)>=b;b++)f.lazyLoadItem(m+b);for(b=1;(d?e:g)>=b;b++)f.lazyLoadItem(m-b)}),Ab("initialLayout",function(){f.currItem.initialLayout=i.getThumbBoundsFn&&i.getThumbBoundsFn(m)}),Ab("mainScrollAnimComplete",ld),Ab("initialZoomInEnd",ld),Ab("destroy",function(){for(var a,b=0;b=0&&void 0!==Wc[a]?Wc[a]:!1},allowProgressiveImg:function(){return i.forceProgressiveLoading||!G||i.mouseUsed||screen.width>1200},setContent:function(a,b){i.loop&&(b=yb(b));var c=f.getItemAt(a.index);c&&(c.container=null);var d,g=f.getItemAt(b);if(!g)return void(a.el.innerHTML="");Bb("gettingData",b,g),a.index=b,a.item=g;var h=g.container=e.createEl("pswp__zoom-wrap");if(!g.src&&g.html&&(g.html.tagName?h.appendChild(g.html):h.innerHTML=g.html),jd(g),!g.src||g.loadError||g.loaded)g.src&&!g.loadError&&(d=e.createEl("pswp__img","img"),d.style.webkitBackfaceVisibility="hidden",d.style.opacity=1,d.src=g.src,kd(d,g.w,g.h),hd(b,g,h,d,!0));else{if(g.loadComplete=function(c){if(j){if(c.img&&(c.img.style.webkitBackfaceVisibility="hidden"),a&&a.index===b){if(jd(c,!0))return c.loadComplete=c.img=null,gd(c,pb),Gb(c),void(a.index===m&&f.updateCurrZoomItem());c.imageAppended?!Yc&&c.placeholder&&(c.placeholder.style.display="none",c.placeholder=null):N.transform&&(eb||Yc)?cd.push({item:c,baseDiv:h,img:c.img,index:b,holder:a}):hd(b,c,h,c.img,eb||Yc)}c.loadComplete=null,c.img=null,Bb("imageLoadComplete",b,c)}},e.features.transform){var k="pswp__img pswp__img--placeholder";k+=g.msrc?"":" pswp__img--placeholder--blank";var l=e.createEl(k,g.msrc?"img":"");g.msrc&&(l.src=g.msrc),kd(l,g.w,g.h),h.appendChild(l),g.placeholder=l}g.loading||id(g),f.allowProgressiveImg()&&(!Xc&&N.transform?cd.push({item:g,baseDiv:h,img:g.img,index:b,holder:a}):hd(b,g,h,g.img,!0,!0))}gd(g,pb),Xc||b!==m?Gb(g):(db=h.style,ad(g,d||g.img)),a.el.innerHTML="",a.el.appendChild(h)},cleanSlide:function(a){a.img&&(a.img.onload=a.img.onerror=null),a.loaded=a.loading=a.img=a.imageAppended=!1}}});var md,nd={},od=function(a,b,c){var d=document.createEvent("CustomEvent"),e={origEvent:a,target:a.target,releasePoint:b,pointerType:c||"touch"};d.initCustomEvent("pswpTap",!0,!0,e),a.target.dispatchEvent(d)};xb("Tap",{publicMethods:{initTap:function(){Ab("firstTouchStart",f.onTapStart),Ab("touchRelease",f.onTapRelease),Ab("destroy",function(){nd={},md=null})},onTapStart:function(a){a.length>1&&(clearTimeout(md),md=null)},onTapRelease:function(a,b){if(b&&!X&&!V&&!Zb){var c=b;if(md&&(clearTimeout(md),md=null,vc(c,nd)))return void Bb("doubleTap",c);if("mouse"===b.type)return void od(a,b,"mouse");var d=a.target.tagName.toUpperCase();if("BUTTON"===d||e.hasClass(a.target,"pswp__single-tap"))return void od(a,b);Kb(nd,c),md=setTimeout(function(){od(a,b),md=null},300)}}}});var pd;xb("DesktopZoom",{publicMethods:{initDesktopZoom:function(){L||(G?Ab("mouseUsed",function(){f.setupDesktopZoom()}):f.setupDesktopZoom(!0))},setupDesktopZoom:function(b){pd={};var c="wheel mousewheel DOMMouseScroll";Ab("bindEvents",function(){e.bind(a,c,f.handleMouseWheel)}),Ab("unbindEvents",function(){pd&&e.unbind(a,c,f.handleMouseWheel)}),f.mouseZoomedIn=!1;var d,g=function(){f.mouseZoomedIn&&(e.removeClass(a,"pswp--zoomed-in"),f.mouseZoomedIn=!1),1>s?e.addClass(a,"pswp--zoom-allowed"):e.removeClass(a,"pswp--zoom-allowed"),h()},h=function(){d&&(e.removeClass(a,"pswp--dragging"),d=!1)};Ab("resize",g),Ab("afterChange",g),Ab("pointerDown",function(){f.mouseZoomedIn&&(d=!0,e.addClass(a,"pswp--dragging"))}),Ab("pointerUp",h),b||g()},handleMouseWheel:function(a){if(s<=f.currItem.fitRatio)return i.modal&&(i.closeOnScroll?E&&Math.abs(a.deltaY)>2&&(l=!0,f.close()):a.preventDefault()),!0;if(a.stopPropagation(),pd.x=0,"deltaX"in a)1===a.deltaMode?(pd.x=18*a.deltaX,pd.y=18*a.deltaY):(pd.x=a.deltaX,pd.y=a.deltaY);else if("wheelDelta"in a)a.wheelDeltaX&&(pd.x=-.16*a.wheelDeltaX),pd.y=a.wheelDeltaY?-.16*a.wheelDeltaY:-.16*a.wheelDelta;else{if(!("detail"in a))return;pd.y=a.detail}Qb(s,!0);var b=ob.x-pd.x,c=ob.y-pd.y;(i.modal||b<=cb.min.x&&b>=cb.max.x&&c<=cb.min.y&&c>=cb.max.y)&&a.preventDefault(),f.panTo(b,c)},toggleDesktopZoom:function(b){b=b||{x:pb.x/2+rb.x,y:pb.y/2+rb.y};var c=i.getDoubleTapZoom(!0,f.currItem),d=s===c;f.mouseZoomedIn=!d,f.zoomTo(d?f.currItem.initialZoomLevel:c,b,333),e[(d?"remove":"add")+"Class"](a,"pswp--zoomed-in")}}});var qd,rd,sd,td,ud,vd,wd,xd,yd,zd,Ad,Bd,Cd={history:!0,galleryUID:1},Dd=function(){return Ad.hash.substring(1)},Ed=function(){qd&&clearTimeout(qd),sd&&clearTimeout(sd)},Fd=function(){var a=Dd(),b={};if(a.length<5)return b;for(var c=a.split("&"),d=0;d-1&&(wd=wd.substring(0,b),"&"===wd.slice(-1)&&(wd=wd.slice(0,-1))),setTimeout(function(){j&&e.bind(window,"hashchange",f.onHashChange)},40)}},onHashChange:function(){return Dd()===wd?(yd=!0,void f.close()):void(td||(ud=!0,f.goTo(Fd().pid),ud=!1))},updateURL:function(){Ed(),ud||(xd?qd=setTimeout(Gd,800):Gd())}}}),e.extend(f,cc)};return a});