/*! skrollr 0.6.30 (2015-08-12) | alexander prinzhorn - https://github.com/prinzhorn/skrollr | free to use under terms of mit license */ !function(a,b,c){"use strict";function d(c){if(e=b.documentelement,f=b.body,t(),ha=this,c=c||{},ma=c.constants||{},c.easing)for(var d in c.easing)w[d]=c.easing[d];ta=c.edgestrategy||"set",ka={beforerender:c.beforerender,render:c.render,keyframe:c.keyframe},la=c.forceheight!==!1,la&&(ka=c.scale||1),na=c.mobiledeceleration||y,pa=c.smoothscrolling!==!1,qa=c.smoothscrollingduration||a,ra={targettop:ha.getscrolltop()},sa=(c.mobilecheck||function(){return/android|iphone|ipad|ipod|blackberry/i.test(navigator.useragent||navigator.vendor||a.opera)})(),sa?(ja=b.getelementbyid(c.skrollrbody||z),ja&&ga(),x(),ea(e,[s,v],[t])):ea(e,[s,u],[t]),ha.refresh(),wa(a,"resize orientationchange",function(){var a=e.clientwidth,b=e.clientheight;(b!==pa||a!==oa)&&(pa=b,oa=a,qa=!0)});var g=u();return function h(){$(),va=g(h)}(),ha}var e,f,g={get:function(){return ha},init:function(a){return ha||new d(a)},version:"0.6.30"},h=object.prototype.hasownproperty,i=a.math,j=a.getcomputedstyle,k="touchstart",l="touchmove",m="touchcancel",n="touchend",o="skrollable",p=o+"-before",q=o+"-between",r=o+"-after",s="skrollr",t="no-"+s,u=s+"-desktop",v=s+"-mobile",w="linear",x=1e3,y=.004,z="skrollr-body",a=200,b="start",c="end",d="center",e="bottom",f="___skrollable_id",g=/^(?:input|textarea|button|select)$/i,h=/^\s+|\s+$/g,i=/^data(?:-(_\w+))?(?:-?(-?\d*\.?\d+p?))?(?:-?(start|end|top|center|bottom))?(?:-?(top|center|bottom))?$/,j=/\s*(@?[\w\-\[\]]+)\s*:\s*(.+?)\s*(?:;|$)/gi,k=/^(@?[a-z\-]+)\[(\w+)\]$/,l=/-([a-z0-9_])/g,m=function(a,b){return b.touppercase()},n=/[\-+]?[\d]*\.?[\d]+/g,o=/\{\?\}/g,p=/rgba?\(\s*-?\d+\s*,\s*-?\d+\s*,\s*-?\d+/g,q=/[a-z\-]+-gradient/g,r="",s="",t=function(){var a=/^(?:o|moz|webkit|ms)|(?:-(?:o|moz|webkit|ms)-)/;if(j){var b=j(f,null);for(var c in b)if(r=c.match(a)||+c==c&&b[c].match(a))break;if(!r)return void(r=s="");r=r[0],"-"===r.slice(0,1)?(s=r,r={"-webkit-":"webkit","-moz-":"moz","-ms-":"ms","-o-":"o"}[r]):s="-"+r.tolowercase()+"-"}},u=function(){var b=a.requestanimationframe||a[r.tolowercase()+"requestanimationframe"],c=ha();return(sa||!b)&&(b=function(b){var d=ha()-c,e=i.max(0,1e3/60-d);return a.settimeout(function(){c=ha(),b()},e)}),b},v=function(){var b=a.cancelanimationframe||a[r.tolowercase()+"cancelanimationframe"];return(sa||!b)&&(b=function(b){return a.cleartimeout(b)}),b},w={begin:function(){return 0},end:function(){return 1},linear:function(a){return a},quadratic:function(a){return a*a},cubic:function(a){return a*a*a},swing:function(a){return-i.cos(a*i.pi)/2+.5},sqrt:function(a){return i.sqrt(a)},outcubic:function(a){return i.pow(a-1,3)+1},bounce:function(a){var b;if(.5083>=a)b=3;else if(.8489>=a)b=9;else if(.96208>=a)b=27;else{if(!(.99981>=a))return 1;b=91}return 1-i.abs(3*i.cos(a*b*1.028)/b)}};d.prototype.refresh=function(a){var d,e,f=!1;for(a===c?(f=!0,ia=[],ra=0,a=b.getelementsbytagname("*")):a.length===c&&(a=[a]),d=0,e=a.length;e>d;d++){var g=a[d],h=g,i=[],j=pa,k=ta,l=!1;if(f&&f in g&&delete g[f],g.attributes){for(var m=0,n=g.attributes.length;n>m;m++){var p=g.attributes[m];if("data-anchor-target"!==p.name)if("data-smooth-scrolling"!==p.name)if("data-edge-strategy"!==p.name)if("data-emit-events"!==p.name){var q=p.name.match(i);if(null!==q){var r={props:p.value,element:g,eventtype:p.name.replace(l,m)};i.push(r);var s=q[1];s&&(r.constant=s.substr(1));var t=q[2];/p$/.test(t)?(r.ispercentage=!0,r.offset=(0|t.slice(0,-1))/100):r.offset=0|t;var u=q[3],v=q[4]||u;u&&u!==b&&u!==c?(r.mode="relative",r.anchors=[u,v]):(r.mode="absolute",u===c?r.isend=!0:r.ispercentage||(r.offset=r.offset*ka))}}else l=!0;else k=p.value;else j="off"!==p.value;else if(h=b.queryselector(p.value),null===h)throw'unable to find anchor target "'+p.value+'"'}if(i.length){var w,x,y;!f&&f in g?(y=g[f],w=ia[y].styleattr,x=ia[y].classattr):(y=g[f]=ra++,w=g.style.csstext,x=da(g)),ia[y]={element:g,styleattr:w,classattr:x,anchortarget:h,keyframes:i,smoothscrolling:j,edgestrategy:k,emitevents:l,lastframeindex:-1},ea(g,[o],[])}}}for(aa(),d=0,e=a.length;e>d;d++){var z=ia[a[d][f]];z!==c&&(_(z),ba(z))}return ha},d.prototype.relativetoabsolute=function(a,b,c){var d=e.clientheight,f=a.getboundingclientrect(),g=f.top,h=f.bottom-f.top;return b===e?g-=d:b===d&&(g-=d/2),c===e?g+=h:c===d&&(g+=h/2),g+=ha.getscrolltop(),g+.5|0},d.prototype.animateto=function(a,b){b=b||{};var d=ha(),e=ha.getscrolltop(),f=b.duration===c?x:b.duration;return oa={starttop:e,topdiff:a-e,targettop:a,duration:f,starttime:d,endtime:d+f,easing:w[b.easing||w],done:b.done},oa.topdiff||(oa.done&&oa.done.call(ha,!1),oa=c),ha},d.prototype.stopanimateto=function(){oa&&oa.done&&oa.done.call(ha,!0),oa=c},d.prototype.isanimatingto=function(){return!!oa},d.prototype.ismobile=function(){return sa},d.prototype.setscrolltop=function(b,c){return sa=c===!0,sa?ta=i.min(i.max(b,0),ja):a.scrollto(0,b),ha},d.prototype.getscrolltop=function(){return sa?ta:a.pageyoffset||e.scrolltop||f.scrolltop||0},d.prototype.getmaxscrolltop=function(){return ja},d.prototype.on=function(a,b){return ka[a]=b,ha},d.prototype.off=function(a){return delete ka[a],ha},d.prototype.destroy=function(){var a=v();a(va),ya(),ea(e,[t],[s,u,v]);for(var b=0,d=ia.length;d>b;b++)fa(ia[b].element);e.style.overflow=f.style.overflow="",e.style.height=f.style.height="",ja&&g.setstyle(ja,"transform","none"),ha=c,ja=c,ka=c,la=c,ja=0,ka=1,ma=c,na=c,la="down",ma=-1,oa=0,pa=0,qa=!1,oa=c,pa=c,qa=c,ra=c,sa=c,ra=0,ta=c,sa=!1,ta=0,ua=c};var x=function(){var d,g,h,j,o,p,q,r,s,t,u,v;wa(e,[k,l,m,n].join(" "),function(a){var e=a.changedtouches[0];for(j=a.target;3===j.nodetype;)j=j.parentnode;switch(o=e.clienty,p=e.clientx,t=a.timestamp,g.test(j.tagname)||a.preventdefault(),a.type){case k:d&&d.blur(),ha.stopanimateto(),d=j,g=q=o,h=p,s=t;break;case l:g.test(j.tagname)&&b.activeelement!==j&&a.preventdefault(),r=o-q,v=t-u,ha.setscrolltop(ta-r,!0),q=o,u=t;break;default:case m:case n:var f=g-o,w=h-p,x=w*w+f*f;if(49>x){if(!g.test(d.tagname)){d.focus();var y=b.createevent("mouseevents");y.initmouseevent("click",!0,!0,a.view,1,e.screenx,e.screeny,e.clientx,e.clienty,a.ctrlkey,a.altkey,a.shiftkey,a.metakey,0,null),d.dispatchevent(y)}return}d=c;var z=r/v;z=i.max(i.min(z,3),-3);var a=i.abs(z/na),b=z*a+.5*na*a*a,c=ha.getscrolltop()-b,d=0;c>ja?(d=(ja-c)/b,c=ja):0>c&&(d=-c/b,c=0),a*=1-d,ha.animateto(c+.5|0,{easing:"outcubic",duration:a})}}),a.scrollto(0,0),e.style.overflow=f.style.overflow="hidden"},y=function(){var a,b,c,d,f,g,h,j,k,l,m,n=e.clientheight,o=ba();for(j=0,k=ia.length;k>j;j++)for(a=ia[j],b=a.element,c=a.anchortarget,d=a.keyframes,f=0,g=d.length;g>f;f++)h=d[f],l=h.offset,m=o[h.constant]||0,h.frame=l,h.ispercentage&&(l*=n,h.frame=l),"relative"===h.mode&&(fa(b),h.frame=ha.relativetoabsolute(c,h.anchors[0],h.anchors[1])-l,fa(b,!0)),h.frame+=m,la&&!h.isend&&h.frame>ja&&(ja=h.frame);for(ja=i.max(ja,ca()),j=0,k=ia.length;k>j;j++){for(a=ia[j],d=a.keyframes,f=0,g=d.length;g>f;f++)h=d[f],m=o[h.constant]||0,h.isend&&(h.frame=ja-h.offset+m);a.keyframes.sort(ia)}},z=function(a,b){for(var c=0,d=ia.length;d>c;c++){var e,f,i=ia[c],j=i.element,k=i.smoothscrolling?a:b,l=i.keyframes,m=l.length,n=l[0],s=l[l.length-1],t=ks.frame,v=t?n:s,w=i.emitevents,x=i.lastframeindex;if(t||u){if(t&&-1===i.edge||u&&1===i.edge)continue;switch(t?(ea(j,[p],[r,q]),w&&x>-1&&(za(j,n.eventtype,la),i.lastframeindex=-1)):(ea(j,[r],[p,q]),w&&m>x&&(za(j,s.eventtype,la),i.lastframeindex=m)),i.edge=t?-1:1,i.edgestrategy){case"reset":fa(j);continue;case"ease":k=v.frame;break;default:case"set":var y=v.props;for(e in y)h.call(y,e)&&(f=ea(y[e].value),0===e.indexof("@")?j.setattribute(e.substr(1),f):g.setstyle(j,e,f));continue}}else 0!==i.edge&&(ea(j,[o,q],[p,r]),i.edge=0);for(var z=0;m-1>z;z++)if(k>=l[z].frame&&k<=l[z+1].frame){var a=l[z],b=l[z+1];for(e in a.props)if(h.call(a.props,e)){var c=(k-a.frame)/(b.frame-a.frame);c=a.props[e].easing(c),f=da(a.props[e].value,b.props[e].value,c),f=ea(f),0===e.indexof("@")?j.setattribute(e.substr(1),f):g.setstyle(j,e,f)}w&&x!==z&&("down"===la?za(j,a.eventtype,la):za(j,b.eventtype,la),i.lastframeindex=z);break}}},$=function(){qa&&(qa=!1,aa());var a,b,d=ha.getscrolltop(),e=ha();if(oa)e>=oa.endtime?(d=oa.targettop,a=oa.done,oa=c):(b=oa.easing((e-oa.starttime)/oa.duration),d=oa.starttop+b*oa.topdiff|0),ha.setscrolltop(d,!0);else if(!sa){var f=ra.targettop-d;f&&(ra={starttop:ma,topdiff:d-ma,targettop:d,starttime:na,endtime:na+qa}),e<=ra.endtime&&(b=w.sqrt((e-ra.starttime)/qa),d=ra.starttop+b*ra.topdiff|0)}if(sa||ma!==d){la=d>ma?"down":ma>d?"up":la,sa=!1;var h={curtop:d,lasttop:ma,maxtop:ja,direction:la},i=ka.beforerender&&ka.beforerender.call(ha,h);i!==!1&&(z(d,ha.getscrolltop()),sa&&ja&&g.setstyle(ja,"transform","translate(0, "+-ta+"px) "+ua),ma=d,ka.render&&ka.render.call(ha,h)),a&&a.call(ha,!1)}na=e},_=function(a){for(var b=0,c=a.keyframes.length;c>b;b++){for(var d,e,f,g,h=a.keyframes[b],i={};null!==(g=j.exec(h.props));)f=g[1],e=g[2],d=f.match(k),null!==d?(f=d[1],d=d[2]):d=w,e=e.indexof("!")?aa(e):[e.slice(1)],i[f]={value:e,easing:w[d]};h.props=i}},aa=function(a){var b=[];return p.lastindex=0,a=a.replace(p,function(a){return a.replace(n,function(a){return a/255*100+"%"})}),s&&(q.lastindex=0,a=a.replace(q,function(a){return s+a})),a=a.replace(n,function(a){return b.push(+a),"{?}"}),b.unshift(a),b},ba=function(a){var b,c,d={};for(b=0,c=a.keyframes.length;c>b;b++)ca(a.keyframes[b],d);for(d={},b=a.keyframes.length-1;b>=0;b--)ca(a.keyframes[b],d)},ca=function(a,b){var c;for(c in b)h.call(a.props,c)||(a.props[c]=b[c]);for(c in a.props)b[c]=a.props[c]},da=function(a,b,c){var d,e=a.length;if(e!==b.length)throw"can't interpolate between \""+a[0]+'" and "'+b[0]+'"';var f=[a[0]];for(d=1;e>d;d++)f[d]=a[d]+(b[d]-a[d])*c;return f},ea=function(a){var b=1;return o.lastindex=0,a[0].replace(o,function(){return a[b++]})},fa=function(a,b){a=[].concat(a);for(var c,d,e=0,f=a.length;f>e;e++)d=a[e],c=ia[d[f]],c&&(b?(d.style.csstext=c.dirtystyleattr,ea(d,c.dirtyclassattr)):(c.dirtystyleattr=d.style.csstext,c.dirtyclassattr=da(d),d.style.csstext=c.styleattr,ea(d,c.classattr)))},ga=function(){ua="translatez(0)",g.setstyle(ja,"transform",ua);var a=j(ja),b=a.getpropertyvalue("transform"),c=a.getpropertyvalue(s+"transform"),d=b&&"none"!==b||c&&"none"!==c;d||(ua="")};g.setstyle=function(a,b,c){var d=a.style;if(b=b.replace(l,m).replace("-",""),"zindex"===b)isnan(c)?d[b]=c:d[b]=""+(0|c);else if("float"===b)d.stylefloat=d.cssfloat=c;else try{r&&(d[r+b.slice(0,1).touppercase()+b.slice(1)]=c),d[b]=c}catch(e){}};var ha,ia,ja,ka,la,ma,na,oa,pa,qa,ra,sa,ta,ua,va,wa=g.addevent=function(b,c,d){var e=function(b){return b=b||a.event,b.target||(b.target=b.srcelement),b.preventdefault||(b.preventdefault=function(){b.returnvalue=!1,b.defaultprevented=!0}),d.call(this,b)};c=c.split(" ");for(var f,g=0,h=c.length;h>g;g++)f=c[g],b.addeventlistener?b.addeventlistener(f,d,!1):b.attachevent("on"+f,e),ua.push({element:b,name:f,listener:d})},xa=g.removeevent=function(a,b,c){b=b.split(" ");for(var d=0,e=b.length;e>d;d++)a.removeeventlistener?a.removeeventlistener(b[d],c,!1):a.detachevent("on"+b[d],c)},ya=function(){for(var a,b=0,c=ua.length;c>b;b++)a=ua[b],xa(a.element,a.name,a.listener);ua=[]},za=function(a,b,c){ka.keyframe&&ka.keyframe.call(ha,a,b,c)},aa=function(){var a=ha.getscrolltop();ja=0,la&&!sa&&(f.style.height=""),y(),la&&!sa&&(f.style.height=ja+e.clientheight+"px"),sa?ha.setscrolltop(i.min(ha.getscrolltop(),ja)):ha.setscrolltop(a,!0),sa=!0},ba=function(){var a,b,c=e.clientheight,d={};for(a in ma)b=ma[a],"function"==typeof b?b=b.call(ha):/p$/.test(b)&&(b=b.slice(0,-1)/100*c),d[a]=b;return d},ca=function(){var a,b=0;return ja&&(b=i.max(ja.offsetheight,ja.scrollheight)),a=i.max(b,f.scrollheight,f.offsetheight,e.scrollheight,e.offsetheight,e.clientheight),a-e.clientheight},da=function(b){var c="classname";return a.svgelement&&b instanceof a.svgelement&&(b=b[c],c="baseval"),b[c]},ea=function(b,d,e){var f="classname";if(a.svgelement&&b instanceof a.svgelement&&(b=b[f],f="baseval"),e===c)return void(b[f]=d);for(var g=b[f],h=0,i=e.length;i>h;h++)g=ga(g).replace(ga(e[h])," ");g=fa(g);for(var j=0,k=d.length;k>j;j++)-1===ga(g).indexof(ga(d[j]))&&(g+=" "+d[j]);b[f]=fa(g)},fa=function(a){return a.replace(h,"")},ga=function(a){return" "+a+" "},ha=date.now||function(){return+new date},ia=function(a,b){return a.frame-b.frame},ja=0,ka=1,la="down",ma=-1,na=ha(),oa=0,pa=0,qa=!1,ra=0,sa=!1,ta=0,ua=[];"function"==typeof define&&define.amd?define([],function(){return g}):"undefined"!=typeof module&&module.exports?module.exports=g:a.skrollr=g}(window,document);