(function(g){function b(){this.regional=[];this.regional[""]={labels:["Years","Months","Weeks","Days","Hrs","Mins","Secs"],labels1:["Year","Month","Week","Day","Hr","Min","Sec"],compactLabels:["y","m","w","d"],timeSeparator:":",isRTL:false};this._defaults={until:null,since:null,timezone:null,format:"dHMS",layout:"",compact:false,description:"",expiryUrl:null,alwaysExpire:false,onExpiry:null,onTick:null};g.extend(this._defaults,this.regional[""])}var j="countdown";var c=0;var h=1;var d=2;var a=3;var k=4;var i=5;var f=6;g.extend(b.prototype,{markerClassName:"hasCountdown",_timer:setInterval(function(){g.countdown._updateTargets()},980),_timerTargets:[],setDefaults:function(l){this._resetExtraLabels(this._defaults,l);e(this._defaults,l||{})},UTCDate:function(n,r,p,s,t,m,o,l){if(typeof r=="object"&&r.constructor==Date){l=r.getMilliseconds();o=r.getSeconds();m=r.getMinutes();t=r.getHours();s=r.getDate();p=r.getMonth();r=r.getFullYear()}var q=new Date();q.setUTCFullYear(r);q.setUTCMonth(p||0);q.setUTCDate(s||1);q.setUTCHours(t||0);q.setUTCMinutes((m||0)-(Math.abs(n)<30?n*60:n));q.setUTCSeconds(o||0);q.setUTCMilliseconds(l||0);return q},_attachCountdown:function(o,m){var l=g(o);if(l.hasClass(this.markerClassName)){return}l.addClass(this.markerClassName);var n={options:g.extend({},m),_periods:[0,0,0,0,0,0,0]};g.data(o,j,n);this._changeCountdown(o)},_addTarget:function(l){if(!this._hasTarget(l)){this._timerTargets.push(l)}},_hasTarget:function(l){return(g.inArray(l,this._timerTargets)>-1)},_removeTarget:function(l){this._timerTargets=g.map(this._timerTargets,function(m){return(m==l?null:m)})},_updateTargets:function(){for(var l=0;l<this._timerTargets.length;l++){this._updateCountdown(this._timerTargets[l])}},_updateCountdown:function(r,q){var l=g(r);q=q||g.data(r,j);if(!q){return}l.html(this._generateHTML(q));l[(this._get(q,"isRTL")?"add":"remove")+"Class"]("countdown_rtl");var n=this._get(q,"onTick");if(n){n.apply(r,[q._hold!="lap"?q._periods:this._calculatePeriods(q,q._show,new Date())])}var o=q._hold!="pause"&&(q._since?q._now.getTime()<=q._since.getTime():q._now.getTime()>=q._until.getTime());if(o){if(this._hasTarget(r)||this._get(q,"alwaysExpire")){var p=this._get(q,"onExpiry");if(p){p.apply(r,[])}var m=this._get(q,"expiryUrl");if(m){window.location=m}}this._removeTarget(r)}else{if(q._hold=="pause"){this._removeTarget(r)}}g.data(r,j,q)},_changeCountdown:function(q,n,p){n=n||{};if(typeof n=="string"){var m=n;n={};n[m]=p}var o=g.data(q,j);if(o){this._resetExtraLabels(o.options,n);e(o.options,n);this._adjustSettings(o);g.data(q,j,o);var l=new Date();if((o._since&&o._since<l)||(o._until&&o._until>l)){this._addTarget(q)}this._updateCountdown(q,o)}},_resetExtraLabels:function(o,l){var m=false;for(var p in l){if(p.match(/[Ll]abels/)){m=true;break}}if(m){for(var p in o){if(p.match(/[Ll]abels[0-9]/)){o[p]=null}}}},_destroyCountdown:function(m){var l=g(m);if(!l.hasClass(this.markerClassName)){return}this._removeTarget(m);l.removeClass(this.markerClassName).empty();g.removeData(m,j)},_pauseCountdown:function(l){this._hold(l,"pause")},_lapCountdown:function(l){this._hold(l,"lap")},_resumeCountdown:function(l){this._hold(l,null)},_hold:function(o,n){var m=g.data(o,j);if(m){if(m._hold=="pause"&&!n){m._periods=m._savePeriods;var l=(m._since?"-":"+");m[m._since?"_since":"_until"]=this._determineTime(l+m._periods[0]+"y"+l+m._periods[1]+"o"+l+m._periods[2]+"w"+l+m._periods[3]+"d"+l+m._periods[4]+"h"+l+m._periods[5]+"m"+l+m._periods[6]+"s");this._addTarget(o)}m._hold=n;m._savePeriods=(n=="pause"?m._periods:null);g.data(o,j,m);this._updateCountdown(o,m)}},_getTimesCountdown:function(m){var l=g.data(m,j);return(!l?null:(!l._hold?l._periods:this._calculatePeriods(l,l._show,new Date())))},_get:function(m,l){return(m.options[l]!=null?m.options[l]:g.countdown._defaults[l])},_adjustSettings:function(n){var l=new Date();var m=this._get(n,"timezone");m=(m==null?-new Date().getTimezoneOffset():m);n._since=this._get(n,"since");if(n._since){n._since=this.UTCDate(m,this._determineTime(n._since,null))}n._until=this.UTCDate(m,this._determineTime(this._get(n,"until"),l));n._show=this._determineShow(n)},_determineTime:function(p,l){var o=function(s){var r=new Date();r.setTime(r.getTime()+s*1000);return r};var n=function(r,s){return 32-new Date(r,s,32).getDate()};var m=function(v){v=v.toLowerCase();var s=new Date();var z=s.getFullYear();var x=s.getMonth();var A=s.getDate();var u=s.getHours();var t=s.getMinutes();var r=s.getSeconds();var y=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;var w=y.exec(v);while(w){switch(w[2]||"s"){case"s":r+=parseInt(w[1],10);break;case"m":t+=parseInt(w[1],10);break;case"h":u+=parseInt(w[1],10);break;case"d":A+=parseInt(w[1],10);break;case"w":A+=parseInt(w[1],10)*7;break;case"o":x+=parseInt(w[1],10);A=Math.min(A,n(z,x));break;case"y":z+=parseInt(w[1],10);A=Math.min(A,n(z,x));break}w=y.exec(v)}return new Date(z,x,A,u,t,r,0)};var q=(p==null?l:(typeof p=="string"?m(p):(typeof p=="number"?o(p):p)));if(q){q.setMilliseconds(0)}return q},_generateHTML:function(n){n._periods=periods=(n._hold?n._periods:this._calculatePeriods(n,n._show,new Date()));var t=false;var l=0;for(var r=0;r<n._show.length;r++){t|=(n._show[r]=="?"&&periods[r]>0);n._show[r]=(n._show[r]=="?"&&!t?null:n._show[r]);l+=(n._show[r]?1:0)}var s=this._get(n,"compact");var p=this._get(n,"layout");var o=(s?this._get(n,"compactLabels"):this._get(n,"labels"));var v=this._get(n,"timeSeparator");var u=this._get(n,"description")||"";var q=function(x){var w=g.countdown._get(n,"compactLabels"+periods[x]);return(n._show[x]?periods[x]+(w?w[x]:o[x])+" ":"")};var m=function(x){var w=g.countdown._get(n,"labels"+periods[x]);return(n._show[x]?'<span class="countdown_section"><span class="countdown_amount">'+periods[x]+"</span>"+(w?w[x]:o[x])+"</span>":"")};return(p?this._buildLayout(n,p,s):((s?'<span class="countdown_row countdown_amount'+(n._hold?" countdown_holding":"")+'">'+q(c)+q(h)+q(d)+q(a)+(n._show[k]?this._twoDigits(periods[k]):"")+(n._show[i]?(n._show[k]?v:"")+this._twoDigits(periods[i]):"")+(n._show[f]?(n._show[k]||n._show[i]?v:"")+this._twoDigits(periods[f]):""):'<span class="countdown_row countdown_show'+l+(n._hold?" countdown_holding":"")+'">'+m(c)+m(h)+m(d)+m(a)+m(k)+m(i)+m(f))+"</span>"+(u?'<span class="countdown_row countdown_descr">'+u+"</span>":"")))},_buildLayout:function(o,r,t){var q=(t?this._get(o,"compactLabels"):this._get(o,"labels"));var l=function(v){return(g.countdown._get(o,(t?"compactLabels":"labels")+o._periods[v])||q)[v]};var m={yl:l(c),yn:o._periods[c],ynn:this._twoDigits(o._periods[c]),ol:l(h),on:o._periods[h],onn:this._twoDigits(o._periods[h]),wl:l(d),wn:o._periods[d],wnn:this._twoDigits(o._periods[d]),dl:l(a),dn:o._periods[a],dnn:this._twoDigits(o._periods[a]),hl:l(k),hn:o._periods[k],hnn:this._twoDigits(o._periods[k]),ml:l(i),mn:o._periods[i],mnn:this._twoDigits(o._periods[i]),sl:l(f),sn:o._periods[f],snn:this._twoDigits(o._periods[f])};var p=r;for(var n=0;n<7;n++){var s="yowdhms".charAt(n);var u=new RegExp("\\{"+s+"<\\}(.*)\\{"+s+">\\}","g");p=p.replace(u,(o._show[n]?"$1":""))}g.each(m,function(y,w){var x=new RegExp("\\{"+y+"\\}","g");p=p.replace(x,w)});return p},_twoDigits:function(l){return(l<10?"0":"")+l},_determineShow:function(m){var n=this._get(m,"format");var l=[];l[c]=(n.match("y")?"?":(n.match("Y")?"!":null));l[h]=(n.match("o")?"?":(n.match("O")?"!":null));l[d]=(n.match("w")?"?":(n.match("W")?"!":null));l[a]=(n.match("d")?"?":(n.match("D")?"!":null));l[k]=(n.match("h")?"?":(n.match("H")?"!":null));l[i]=(n.match("m")?"?":(n.match("M")?"!":null));l[f]=(n.match("s")?"?":(n.match("S")?"!":null));return l},_calculatePeriods:function(q,m,o){q._now=o;q._now.setMilliseconds(0);var s=new Date(q._now.getTime());if(q._since&&o.getTime()<q._since.getTime()){q._now=o=s}else{if(q._since){o=q._since}else{s.setTime(q._until.getTime());if(o.getTime()>q._until.getTime()){q._now=o=s}}}var p=[0,0,0,0,0,0,0];if(m[c]||m[h]){var l=Math.max(0,(s.getFullYear()-o.getFullYear())*12+s.getMonth()-o.getMonth()+(s.getDate()<o.getDate()?-1:0));p[c]=(m[c]?Math.floor(l/12):0);p[h]=(m[h]?l-p[c]*12:0);if(q._since){s.setFullYear(s.getFullYear()-p[c]);s.setMonth(s.getMonth()-p[h])}else{o=new Date(o.getTime());o.setFullYear(o.getFullYear()+p[c]);o.setMonth(o.getMonth()+p[h])}}var r=Math.floor((s.getTime()-o.getTime())/1000);var n=function(u,t){p[u]=(m[u]?Math.floor(r/t):0);r-=p[u]*t};n(d,604800);n(a,86400);n(k,3600);n(i,60);n(f,1);return p}});function e(n,m){g.extend(n,m);for(var l in m){if(m[l]==null){n[l]=null}}return n}g.fn.countdown=function(m){var l=Array.prototype.slice.call(arguments,1);if(m=="getTimes"){return g.countdown["_"+m+"Countdown"].apply(g.countdown,[this[0]].concat(l))}return this.each(function(){if(typeof m=="string"){g.countdown["_"+m+"Countdown"].apply(g.countdown,[this].concat(l))}else{g.countdown._attachCountdown(this,m)}})};g.countdown=new b()})(jQuery);