/*
 * jQuery Nivo Slider v2.6
 * http://nivo.dev7studios.com
 *
 * Copyright 2011, Gilbert Pellegrom
 * Free to use and abuse under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 * 
 * March 2010
 */

(function($){var NivoSlider=function(element,options){var settings=$.extend({},$.fn.nivoSlider.defaults,options);var vars={currentSlide:0,currentImage:'',totalSlides:0,randAnim:'',running:false,paused:false,stop:false};var slider=$(element);slider.data('nivo:vars',vars);slider.css('position','relative');slider.addClass('nivoSlider');var kids=slider.children();kids.each(function(){var child=$(this);var link='';if(!child.is('img')){if(child.is('a')){child.addClass('nivo-imageLink');link=child;}
child=child.find('img:first');}
var childWidth=child.width();if(childWidth==0)childWidth=child.attr('width');var childHeight=child.height();if(childHeight==0)childHeight=child.attr('height');if(childWidth>slider.width()){slider.width(childWidth);}
if(childHeight>slider.height()){slider.height(childHeight);}
if(link!=''){link.css('display','none');}
child.css('display','none');vars.totalSlides++;});if(settings.startSlide>0){if(settings.startSlide>=vars.totalSlides)settings.startSlide=vars.totalSlides-1;vars.currentSlide=settings.startSlide;}
if($(kids[vars.currentSlide]).is('img')){vars.currentImage=$(kids[vars.currentSlide]);}else{vars.currentImage=$(kids[vars.currentSlide]).find('img:first');}
if($(kids[vars.currentSlide]).is('a')){$(kids[vars.currentSlide]).css('display','block');}
slider.css('background','url("'+vars.currentImage.attr('src')+'") no-repeat');slider.append($('<div class="nivo-caption"><p></p></div>').css({display:'none',opacity:settings.captionOpacity}));var processCaption=function(settings){var nivoCaption=$('.nivo-caption',slider);if(vars.currentImage.attr('title')!=''&&vars.currentImage.attr('title')!=undefined){var title=vars.currentImage.attr('title');if(title.substr(0,1)=='#')title=$(title).html();if(nivoCaption.css('display')=='block'){nivoCaption.find('p').fadeOut(settings.animSpeed,function(){$(this).html(title);$(this).fadeIn(settings.animSpeed);});}else{nivoCaption.find('p').html(title);}
nivoCaption.fadeIn(settings.animSpeed);}else{nivoCaption.fadeOut(settings.animSpeed);}}
processCaption(settings);var timer=0;if(!settings.manualAdvance&&kids.length>1){timer=setInterval(function(){nivoRun(slider,kids,settings,false);},settings.pauseTime);}
if(settings.directionNav){slider.append('<div class="nivo-directionNav"><a class="nivo-prevNav">'+settings.prevText+'</a><a class="nivo-nextNav">'+settings.nextText+'</a></div>');if(settings.directionNavHide){$('.nivo-directionNav',slider).hide();slider.hover(function(){$('.nivo-directionNav',slider).show();},function(){$('.nivo-directionNav',slider).hide();});}
$('a.nivo-prevNav',slider).live('click',function(){if(vars.running)return false;clearInterval(timer);timer='';vars.currentSlide-=2;nivoRun(slider,kids,settings,'prev');});$('a.nivo-nextNav',slider).live('click',function(){if(vars.running)return false;clearInterval(timer);timer='';nivoRun(slider,kids,settings,'next');});}
if(settings.controlNav){var nivoControl=$('<div class="nivo-controlNav"></div>');slider.append(nivoControl);for(var i=0;i<kids.length;i++){if(settings.controlNavThumbs){var child=kids.eq(i);if(!child.is('img')){child=child.find('img:first');}
if(settings.controlNavThumbsFromRel){nivoControl.append('<a class="nivo-control" rel="'+i+'"><img src="'+child.attr('rel')+'" alt="" /></a>');}else{nivoControl.append('<a class="nivo-control" rel="'+i+'"><img src="'+child.attr('src').replace(settings.controlNavThumbsSearch,settings.controlNavThumbsReplace)+'" alt="" /></a>');}}else{nivoControl.append('<a class="nivo-control" rel="'+i+'">'+(i+1)+'</a>');}}
$('.nivo-controlNav a:eq('+vars.currentSlide+')',slider).addClass('active');$('.nivo-controlNav a',slider).live('click',function(){if(vars.running)return false;if($(this).hasClass('active'))return false;clearInterval(timer);timer='';slider.css('background','url("'+vars.currentImage.attr('src')+'") no-repeat');vars.currentSlide=$(this).attr('rel')-1;nivoRun(slider,kids,settings,'control');});}
if(settings.keyboardNav){$(window).keypress(function(event){if(event.keyCode=='37'){if(vars.running)return false;clearInterval(timer);timer='';vars.currentSlide-=2;nivoRun(slider,kids,settings,'prev');}
if(event.keyCode=='39'){if(vars.running)return false;clearInterval(timer);timer='';nivoRun(slider,kids,settings,'next');}});}
if(settings.pauseOnHover){slider.hover(function(){vars.paused=true;clearInterval(timer);timer='';},function(){vars.paused=false;if(timer==''&&!settings.manualAdvance){timer=setInterval(function(){nivoRun(slider,kids,settings,false);},settings.pauseTime);}});}
slider.bind('nivo:animFinished',function(){vars.running=false;$(kids).each(function(){if($(this).is('a')){$(this).css('display','none');}});if($(kids[vars.currentSlide]).is('a')){$(kids[vars.currentSlide]).css('display','block');}
if(timer==''&&!vars.paused&&!settings.manualAdvance){timer=setInterval(function(){nivoRun(slider,kids,settings,false);},settings.pauseTime);}
settings.afterChange.call(this);});var createSlices=function(slider,settings,vars){for(var i=0;i<settings.slices;i++){var sliceWidth=Math.round(slider.width()/settings.slices);if(i==settings.slices-1){slider.append($('<div class="nivo-slice"></div>').css({left:(sliceWidth*i)+'px',width:(slider.width()-(sliceWidth*i))+'px',height:'0px',opacity:'0',background:'url("'+vars.currentImage.attr('src')+'") no-repeat -'+((sliceWidth+(i*sliceWidth))-sliceWidth)+'px 0%'}));}else{slider.append($('<div class="nivo-slice"></div>').css({left:(sliceWidth*i)+'px',width:sliceWidth+'px',height:'0px',opacity:'0',background:'url("'+vars.currentImage.attr('src')+'") no-repeat -'+((sliceWidth+(i*sliceWidth))-sliceWidth)+'px 0%'}));}}}
var createBoxes=function(slider,settings,vars){var boxWidth=Math.round(slider.width()/settings.boxCols);var boxHeight=Math.round(slider.height()/settings.boxRows);for(var rows=0;rows<settings.boxRows;rows++){for(var cols=0;cols<settings.boxCols;cols++){if(cols==settings.boxCols-1){slider.append($('<div class="nivo-box"></div>').css({opacity:0,left:(boxWidth*cols)+'px',top:(boxHeight*rows)+'px',width:(slider.width()-(boxWidth*cols))+'px',height:boxHeight+'px',background:'url("'+vars.currentImage.attr('src')+'") no-repeat -'+((boxWidth+(cols*boxWidth))-boxWidth)+'px -'+((boxHeight+(rows*boxHeight))-boxHeight)+'px'}));}else{slider.append($('<div class="nivo-box"></div>').css({opacity:0,left:(boxWidth*cols)+'px',top:(boxHeight*rows)+'px',width:boxWidth+'px',height:boxHeight+'px',background:'url("'+vars.currentImage.attr('src')+'") no-repeat -'+((boxWidth+(cols*boxWidth))-boxWidth)+'px -'+((boxHeight+(rows*boxHeight))-boxHeight)+'px'}));}}}}
var nivoRun=function(slider,kids,settings,nudge){var vars=slider.data('nivo:vars');if(vars&&(vars.currentSlide==vars.totalSlides-1)){settings.lastSlide.call(this);}
if((!vars||vars.stop)&&!nudge)return false;settings.beforeChange.call(this);if(!nudge){slider.css('background','url("'+vars.currentImage.attr('src')+'") no-repeat');}else{if(nudge=='prev'){slider.css('background','url("'+vars.currentImage.attr('src')+'") no-repeat');}
if(nudge=='next'){slider.css('background','url("'+vars.currentImage.attr('src')+'") no-repeat');}}
vars.currentSlide++;if(vars.currentSlide==vars.totalSlides){vars.currentSlide=0;settings.slideshowEnd.call(this);}
if(vars.currentSlide<0)vars.currentSlide=(vars.totalSlides-1);if($(kids[vars.currentSlide]).is('img')){vars.currentImage=$(kids[vars.currentSlide]);}else{vars.currentImage=$(kids[vars.currentSlide]).find('img:first');}
if(settings.controlNav){$('.nivo-controlNav a',slider).removeClass('active');$('.nivo-controlNav a:eq('+vars.currentSlide+')',slider).addClass('active');}
processCaption(settings);$('.nivo-slice',slider).remove();$('.nivo-box',slider).remove();if(settings.effect=='random'){var anims=new Array('sliceDownRight','sliceDownLeft','sliceUpRight','sliceUpLeft','sliceUpDown','sliceUpDownLeft','fold','fade','boxRandom','boxRain','boxRainReverse','boxRainGrow','boxRainGrowReverse');vars.randAnim=anims[Math.floor(Math.random()*(anims.length+1))];if(vars.randAnim==undefined)vars.randAnim='fade';}
if(settings.effect.indexOf(',')!=-1){var anims=settings.effect.split(',');vars.randAnim=anims[Math.floor(Math.random()*(anims.length))];if(vars.randAnim==undefined)vars.randAnim='fade';}
vars.running=true;if(settings.effect=='sliceDown'||settings.effect=='sliceDownRight'||vars.randAnim=='sliceDownRight'||settings.effect=='sliceDownLeft'||vars.randAnim=='sliceDownLeft'){createSlices(slider,settings,vars);var timeBuff=0;var i=0;var slices=$('.nivo-slice',slider);if(settings.effect=='sliceDownLeft'||vars.randAnim=='sliceDownLeft')slices=$('.nivo-slice',slider)._reverse();slices.each(function(){var slice=$(this);slice.css({'top':'0px'});if(i==settings.slices-1){setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed,'',function(){slider.trigger('nivo:animFinished');});},(100+timeBuff));}else{setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed);},(100+timeBuff));}
timeBuff+=50;i++;});}
else if(settings.effect=='sliceUp'||settings.effect=='sliceUpRight'||vars.randAnim=='sliceUpRight'||settings.effect=='sliceUpLeft'||vars.randAnim=='sliceUpLeft'){createSlices(slider,settings,vars);var timeBuff=0;var i=0;var slices=$('.nivo-slice',slider);if(settings.effect=='sliceUpLeft'||vars.randAnim=='sliceUpLeft')slices=$('.nivo-slice',slider)._reverse();slices.each(function(){var slice=$(this);slice.css({'bottom':'0px'});if(i==settings.slices-1){setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed,'',function(){slider.trigger('nivo:animFinished');});},(100+timeBuff));}else{setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed);},(100+timeBuff));}
timeBuff+=50;i++;});}
else if(settings.effect=='sliceUpDown'||settings.effect=='sliceUpDownRight'||vars.randAnim=='sliceUpDown'||settings.effect=='sliceUpDownLeft'||vars.randAnim=='sliceUpDownLeft'){createSlices(slider,settings,vars);var timeBuff=0;var i=0;var v=0;var slices=$('.nivo-slice',slider);if(settings.effect=='sliceUpDownLeft'||vars.randAnim=='sliceUpDownLeft')slices=$('.nivo-slice',slider)._reverse();slices.each(function(){var slice=$(this);if(i==0){slice.css('top','0px');i++;}else{slice.css('bottom','0px');i=0;}
if(v==settings.slices-1){setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed,'',function(){slider.trigger('nivo:animFinished');});},(100+timeBuff));}else{setTimeout(function(){slice.animate({height:'100%',opacity:'1.0'},settings.animSpeed);},(100+timeBuff));}
timeBuff+=50;v++;});}
else if(settings.effect=='fold'||vars.randAnim=='fold'){createSlices(slider,settings,vars);var timeBuff=0;var i=0;$('.nivo-slice',slider).each(function(){var slice=$(this);var origWidth=slice.width();slice.css({top:'0px',height:'100%',width:'0px'});if(i==settings.slices-1){setTimeout(function(){slice.animate({width:origWidth,opacity:'1.0'},settings.animSpeed,'',function(){slider.trigger('nivo:animFinished');});},(100+timeBuff));}else{setTimeout(function(){slice.animate({width:origWidth,opacity:'1.0'},settings.animSpeed);},(100+timeBuff));}
timeBuff+=50;i++;});}
else if(settings.effect=='fade'||vars.randAnim=='fade'){createSlices(slider,settings,vars);var firstSlice=$('.nivo-slice:first',slider);firstSlice.css({'height':'100%','width':slider.width()+'px'});firstSlice.animate({opacity:'1.0'},(settings.animSpeed*2),'',function(){slider.trigger('nivo:animFinished');});}
else if(settings.effect=='slideInRight'||vars.randAnim=='slideInRight'){createSlices(slider,settings,vars);var firstSlice=$('.nivo-slice:first',slider);firstSlice.css({'height':'100%','width':'0px','opacity':'1'});firstSlice.animate({width:slider.width()+'px'},(settings.animSpeed*2),'',function(){slider.trigger('nivo:animFinished');});}
else if(settings.effect=='slideInLeft'||vars.randAnim=='slideInLeft'){createSlices(slider,settings,vars);var firstSlice=$('.nivo-slice:first',slider);firstSlice.css({'height':'100%','width':'0px','opacity':'1','left':'','right':'0px'});firstSlice.animate({width:slider.width()+'px'},(settings.animSpeed*2),'',function(){firstSlice.css({'left':'0px','right':''});slider.trigger('nivo:animFinished');});}
else if(settings.effect=='boxRandom'||vars.randAnim=='boxRandom'){createBoxes(slider,settings,vars);var totalBoxes=settings.boxCols*settings.boxRows;var i=0;var timeBuff=0;var boxes=shuffle($('.nivo-box',slider));boxes.each(function(){var box=$(this);if(i==totalBoxes-1){setTimeout(function(){box.animate({opacity:'1'},settings.animSpeed,'',function(){slider.trigger('nivo:animFinished');});},(100+timeBuff));}else{setTimeout(function(){box.animate({opacity:'1'},settings.animSpeed);},(100+timeBuff));}
timeBuff+=20;i++;});}
else if(settings.effect=='boxRain'||vars.randAnim=='boxRain'||settings.effect=='boxRainReverse'||vars.randAnim=='boxRainReverse'||settings.effect=='boxRainGrow'||vars.randAnim=='boxRainGrow'||settings.effect=='boxRainGrowReverse'||vars.randAnim=='boxRainGrowReverse'){createBoxes(slider,settings,vars);var totalBoxes=settings.boxCols*settings.boxRows;var i=0;var timeBuff=0;var rowIndex=0;var colIndex=0;var box2Darr=new Array();box2Darr[rowIndex]=new Array();var boxes=$('.nivo-box',slider);if(settings.effect=='boxRainReverse'||vars.randAnim=='boxRainReverse'||settings.effect=='boxRainGrowReverse'||vars.randAnim=='boxRainGrowReverse'){boxes=$('.nivo-box',slider)._reverse();}
boxes.each(function(){box2Darr[rowIndex][colIndex]=$(this);colIndex++;if(colIndex==settings.boxCols){rowIndex++;colIndex=0;box2Darr[rowIndex]=new Array();}});for(var cols=0;cols<(settings.boxCols*2);cols++){var prevCol=cols;for(var rows=0;rows<settings.boxRows;rows++){if(prevCol>=0&&prevCol<settings.boxCols){(function(row,col,time,i,totalBoxes){var box=$(box2Darr[row][col]);var w=box.width();var h=box.height();if(settings.effect=='boxRainGrow'||vars.randAnim=='boxRainGrow'||settings.effect=='boxRainGrowReverse'||vars.randAnim=='boxRainGrowReverse'){box.width(0).height(0);}
if(i==totalBoxes-1){setTimeout(function(){box.animate({opacity:'1',width:w,height:h},settings.animSpeed/1.3,'',function(){slider.trigger('nivo:animFinished');});},(100+time));}else{setTimeout(function(){box.animate({opacity:'1',width:w,height:h},settings.animSpeed/1.3);},(100+time));}})(rows,prevCol,timeBuff,i,totalBoxes);i++;}
prevCol--;}
timeBuff+=100;}}}
var shuffle=function(arr){for(var j,x,i=arr.length;i;j=parseInt(Math.random()*i),x=arr[--i],arr[i]=arr[j],arr[j]=x);return arr;}
var trace=function(msg){if(this.console&&typeof console.log!="undefined")
console.log(msg);}
this.stop=function(){if(!$(element).data('nivo:vars').stop){$(element).data('nivo:vars').stop=true;trace('Stop Slider');}}
this.start=function(){if($(element).data('nivo:vars').stop){$(element).data('nivo:vars').stop=false;trace('Start Slider');}}
settings.afterLoad.call(this);return this;};$.fn.nivoSlider=function(options){return this.each(function(key,value){var element=$(this);if(element.data('nivoslider'))return element.data('nivoslider');var nivoslider=new NivoSlider(this,options);element.data('nivoslider',nivoslider);});};$.fn.nivoSlider.defaults={effect:'random',slices:15,boxCols:8,boxRows:4,animSpeed:500,pauseTime:3000,startSlide:0,directionNav:true,directionNavHide:true,controlNav:true,controlNavThumbs:false,controlNavThumbsFromRel:false,controlNavThumbsSearch:'.jpg',controlNavThumbsReplace:'_thumb.jpg',keyboardNav:true,pauseOnHover:true,manualAdvance:false,captionOpacity:0.8,prevText:'Prev',nextText:'Next',beforeChange:function(){},afterChange:function(){},slideshowEnd:function(){},lastSlide:function(){},afterLoad:function(){}};$.fn._reverse=[].reverse;})(jQuery);

/*
 * jQuery WidowFix Plugin
 * http://matthewlein.com/widowfix/
 * Copyright (c) 2011 Matthew Lein
 * Version: 1.3.1 (2/09/2011)
 * Dual licensed under the MIT and GPL licenses
 * Requires: jQuery v1.4 or later
 */

(function(a){jQuery.fn.widowFix=function(d){var c={letterLimit:null,prevLimit:null,linkFix:false};var b=a.extend(c,d);return this.each(function(){var i=a(this),m;if(b.linkFix){var h=i.find("a:last");h.wrap("<var>");var e=a("var").html();m=h.contents()[0];h.contents().unwrap();}var f=a(this).html().split(" "),k=f.pop();if(f.length<=1){return;}function j(){if(k===""){k=f.pop();j();}}j();var l=f[f.length-1];if(b.linkFix){if(b.letterLimit!==null&&m.length>=b.letterLimit){i.find("var").each(function(){a(this).contents().replaceWith(e);a(this).contents().unwrap();});return;}else{if(b.prevLimit!==null&&l.length>=b.prevLimit){i.find("var").each(function(){a(this).contents().replaceWith(e);a(this).contents().unwrap();});return;}}}else{if(b.letterLimit!==null&&k.length>=b.letterLimit){return;}else{if(b.prevLimit!==null&&l.length>=b.prevLimit){return;}}}var g=f.join(" ")+"&nbsp;"+k;i.html(g);if(b.linkFix){i.find("var").each(function(){a(this).contents().replaceWith(e);a(this).contents().unwrap();});}});};})(jQuery);


/*
 * jQuery validation plug-in 1.5.5
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 JÃ¶rn Zaefferer
 *
 * $Id: jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(7($){$.H($.2M,{1F:7(d){l(!6.F){d&&d.2p&&30.1z&&1z.57("3B 2B, 4L\'t 1F, 6e 3B");8}q c=$.17(6[0],\'u\');l(c){8 c}c=2c $.u(d,6[0]);$.17(6[0],\'u\',c);l(c.p.3C){6.3w("1x, 3n").1m(".4H").3e(7(){c.3b=w});l(c.p.2I){6.3w("1x, 3n").1m(":20").3e(7(){c.1U=6})}6.20(7(b){l(c.p.2p)b.5Y();7 2l(){l(c.p.2I){l(c.1U){q a=$("<1x 1k=\'5x\'/>").1t("v",c.1U.v).3L(c.1U.R).56(c.V)}c.p.2I.Z(c,c.V);l(c.1U){a.3F()}8 L}8 w}l(c.3b){c.3b=L;8 2l()}l(c.N()){l(c.1g){c.1v=w;8 L}8 2l()}1b{c.2w();8 L}})}8 c},M:7(){l($(6[0]).31(\'N\')){8 6.1F().N()}1b{q b=w;q a=$(6[0].N).1F();6.P(7(){b&=a.J(6)});8 b}},4G:7(c){q d={},$J=6;$.P(c.1T(/\\s/),7(a,b){d[b]=$J.1t(b);$J.6o(b)});8 d},1h:7(h,k){q f=6[0];l(h){q i=$.17(f.N,\'u\').p;q d=i.1h;q c=$.u.36(f);2q(h){1e"1f":$.H(c,$.u.1J(k));d[f.v]=c;l(k.I)i.I[f.v]=$.H(i.I[f.v],k.I);2L;1e"3F":l(!k){Q d[f.v];8 c}q e={};$.P(k.1T(/\\s/),7(a,b){e[b]=c[b];Q c[b]});8 e}}q g=$.u.41($.H({},$.u.3Y(f),$.u.3X(f),$.u.3S(f),$.u.36(f)),f);l(g.13){q j=g.13;Q g.13;g=$.H({13:j},g)}8 g}});$.H($.5u[":"],{5t:7(a){8!$.1j(a.R)},5o:7(a){8!!$.1j(a.R)},5k:7(a){8!a.3J}});$.u=7(b,a){6.p=$.H({},$.u.2N,b);6.V=a;6.4l()};$.u.15=7(c,b){l(U.F==1)8 7(){q a=$.3I(U);a.4V(c);8 $.u.15.1M(6,a)};l(U.F>2&&b.29!=3D){b=$.3I(U).4R(1)}l(b.29!=3D){b=[b]}$.P(b,7(i,n){c=c.27(2c 3z("\\\\{"+i+"\\\\}","g"),n)});8 c};$.H($.u,{2N:{I:{},26:{},1h:{},1c:"3t",24:"M",2E:"4N",2w:w,3s:$([]),2A:$([]),3C:w,3q:[],3p:L,4M:7(a){6.3l=a;l(6.p.4K&&!6.4J){6.p.1S&&6.p.1S.Z(6,a,6.p.1c,6.p.24);6.1P(a).2y()}},4E:7(a){l(!6.1u(a)&&(a.v 14 6.1o||!6.G(a))){6.J(a)}},6n:7(a){l(a.v 14 6.1o||a==6.4z){6.J(a)}},6l:7(a){l(a.v 14 6.1o)6.J(a)},34:7(a,c,b){$(a).1V(c).2t(b)},1S:7(a,c,b){$(a).2t(c).1V(b)}},6d:7(a){$.H($.u.2N,a)},I:{13:"6c 4p 31 13.",1Z:"K 37 6 4p.",1K:"K O a M 1K 67.",1p:"K O a M 66.",1r:"K O a M 1r.",22:"K O a M 1r (64).",2n:"4c 4b 49 2J 5Z¼5X 5U 2J.",1C:"K O a M 1C.",2f:"4c 4b 49 5P 5M 2J.",1O:"K O 5J 1O",2i:"K O a M 5G 5F 1C.",3W:"K O 3V 5B R 5z.",3R:"K O a R 5w a M 5v.",18:$.u.15("K O 3P 5s 2W {0} 2P."),1y:$.u.15("K O 5n 5l {0} 2P."),2k:$.u.15("K O a R 4A {0} 3K {1} 2P 5h."),2m:$.u.15("K O a R 4A {0} 3K {1}."),1A:$.u.15("K O a R 5d 2W 4d 4f 4s {0}."),1B:$.u.15("K O a R 53 2W 4d 4f 4s {0}.")},4r:L,4Z:{4l:7(){6.2u=$(6.p.2A);6.4v=6.2u.F&&6.2u||$(6.V);6.2o=$(6.p.3s).1f(6.p.2A);6.1o={};6.4T={};6.1g=0;6.1d={};6.1a={};6.1L();q f=(6.26={});$.P(6.p.26,7(d,c){$.P(c.1T(/\\s/),7(a,b){f[b]=d})});q e=6.p.1h;$.P(e,7(b,a){e[b]=$.u.1J(a)});7 1q(a){q b=$.17(6[0].N,"u");b.p["3H"+a.1k]&&b.p["3H"+a.1k].Z(b,6[0])}$(6.V).1q("3G 3E 4S",":2H, :4Q, :4P, 28, 4O",1q).1q("3e",":3A, :3y",1q);l(6.p.3x)$(6.V).3v("1a-N.1F",6.p.3x)},N:7(){6.3u();$.H(6.1o,6.1s);6.1a=$.H({},6.1s);l(!6.M())$(6.V).2G("1a-N",[6]);6.1i();8 6.M()},3u:7(){6.2F();S(q i=0,11=(6.23=6.11());11[i];i++){6.2a(11[i])}8 6.M()},J:7(a){a=6.2D(a);6.4z=a;6.2C(a);6.23=$(a);q b=6.2a(a);l(b){Q 6.1a[a.v]}1b{6.1a[a.v]=w}l(!6.3r()){6.12=6.12.1f(6.2o)}6.1i();8 b},1i:7(b){l(b){$.H(6.1s,b);6.T=[];S(q c 14 b){6.T.2e({19:b[c],J:6.21(c)[0]})}6.1l=$.3o(6.1l,7(a){8!(a.v 14 b)})}6.p.1i?6.p.1i.Z(6,6.1s,6.T):6.3m()},2U:7(){l($.2M.2U)$(6.V).2U();6.1o={};6.2F();6.2S();6.11().2t(6.p.1c)},3r:7(){8 6.2g(6.1a)},2g:7(a){q b=0;S(q i 14 a)b++;8 b},2S:7(){6.2z(6.12).2y()},M:7(){8 6.3k()==0},3k:7(){8 6.T.F},2w:7(){l(6.p.2w){3j{$(6.3i()||6.T.F&&6.T[0].J||[]).1m(":4I").3g()}3f(e){}}},3i:7(){q a=6.3l;8 a&&$.3o(6.T,7(n){8 n.J.v==a.v}).F==1&&a},11:7(){q a=6,2V={};8 $([]).1f(6.V.11).1m(":1x").1I(":20, :1L, :4F, [4D]").1I(6.p.3q).1m(7(){!6.v&&a.p.2p&&30.1z&&1z.3t("%o 4C 3P v 4B",6);l(6.v 14 2V||!a.2g($(6).1h()))8 L;2V[6.v]=w;8 w})},2D:7(a){8 $(a)[0]},2x:7(){8 $(6.p.2E+"."+6.p.1c,6.4v)},1L:7(){6.1l=[];6.T=[];6.1s={};6.1n=$([]);6.12=$([]);6.1v=L;6.23=$([])},2F:7(){6.1L();6.12=6.2x().1f(6.2o)},2C:7(a){6.1L();6.12=6.1P(a)},2a:7(d){d=6.2D(d);l(6.1u(d)){d=6.21(d.v)[0]}q a=$(d).1h();q c=L;S(X 14 a){q b={X:X,3d:a[X]};3j{q f=$.u.1Y[X].Z(6,d.R.27(/\\r/g,""),d,b.3d);l(f=="1X-1W"){c=w;6m}c=L;l(f=="1d"){6.12=6.12.1I(6.1P(d));8}l(!f){6.4y(d,b);8 L}}3f(e){6.p.2p&&30.1z&&1z.6k("6j 6i 6h 6g J "+d.4u+", 2a 3V \'"+b.X+"\' X");6f e;}}l(c)8;l(6.2g(a))6.1l.2e(d);8 w},4t:7(a,b){l(!$.1D)8;q c=6.p.39?$(a).1D()[6.p.39]:$(a).1D();8 c&&c.I&&c.I[b]},4q:7(a,b){q m=6.p.I[a];8 m&&(m.29==4o?m:m[b])},4w:7(){S(q i=0;i<U.F;i++){l(U[i]!==2s)8 U[i]}8 2s},2v:7(a,b){8 6.4w(6.4q(a.v,b),6.4t(a,b),!6.p.3p&&a.6b||2s,$.u.I[b],"<4n>6a: 69 19 68 S "+a.v+"</4n>")},4y:7(b,a){q c=6.2v(b,a.X);l(16 c=="7")c=c.Z(6,a.3d,b);6.T.2e({19:c,J:b});6.1s[b.v]=c;6.1o[b.v]=c},2z:7(a){l(6.p.2r)a=a.1f(a.4m(6.p.2r));8 a},3m:7(){S(q i=0;6.T[i];i++){q a=6.T[i];6.p.34&&6.p.34.Z(6,a.J,6.p.1c,6.p.24);6.35(a.J,a.19)}l(6.T.F){6.1n=6.1n.1f(6.2o)}l(6.p.1E){S(q i=0;6.1l[i];i++){6.35(6.1l[i])}}l(6.p.1S){S(q i=0,11=6.4k();11[i];i++){6.p.1S.Z(6,11[i],6.p.1c,6.p.24)}}6.12=6.12.1I(6.1n);6.2S();6.2z(6.1n).4j()},4k:7(){8 6.23.1I(6.4i())},4i:7(){8 $(6.T).4h(7(){8 6.J})},35:7(a,c){q b=6.1P(a);l(b.F){b.2t().1V(6.p.1c);b.1t("4g")&&b.3h(c)}1b{b=$("<"+6.p.2E+"/>").1t({"S":6.33(a),4g:w}).1V(6.p.1c).3h(c||"");l(6.p.2r){b=b.2y().4j().65("<"+6.p.2r+"/>").4m()}l(!6.2u.63(b).F)6.p.4e?6.p.4e(b,$(a)):b.62(a)}l(!c&&6.p.1E){b.2H("");16 6.p.1E=="1w"?b.1V(6.p.1E):6.p.1E(b)}6.1n=6.1n.1f(b)},1P:7(a){8 6.2x().1m("[S=\'"+6.33(a)+"\']")},33:7(a){8 6.26[a.v]||(6.1u(a)?a.v:a.4u||a.v)},1u:7(a){8/3A|3y/i.Y(a.1k)},21:7(d){q c=6.V;8 $(61.60(d)).4h(7(a,b){8 b.N==c&&b.v==d&&b||4a})},1N:7(a,b){2q(b.48.47()){1e\'28\':8 $("46:2B",b).F;1e\'1x\':l(6.1u(b))8 6.21(b.v).1m(\':3J\').F}8 a.F},45:7(b,a){8 6.2K[16 b]?6.2K[16 b](b,a):w},2K:{"5W":7(b,a){8 b},"1w":7(b,a){8!!$(b,a.N).F},"7":7(b,a){8 b(a)}},G:7(a){8!$.u.1Y.13.Z(6,$.1j(a.R),a)&&"1X-1W"},44:7(a){l(!6.1d[a.v]){6.1g++;6.1d[a.v]=w}},43:7(a,b){6.1g--;l(6.1g<0)6.1g=0;Q 6.1d[a.v];l(b&&6.1g==0&&6.1v&&6.N()){$(6.V).20()}1b l(!b&&6.1g==0&&6.1v){$(6.V).2G("1a-N",[6])}},2b:7(a){8 $.17(a,"2b")||$.17(a,"2b",5S={32:4a,M:w,19:6.2v(a,"1Z")})}},1Q:{13:{13:w},1K:{1K:w},1p:{1p:w},1r:{1r:w},22:{22:w},2n:{2n:w},1C:{1C:w},2f:{2f:w},1O:{1O:w},2i:{2i:w}},42:7(a,b){a.29==4o?6.1Q[a]=b:$.H(6.1Q,a)},3X:7(b){q a={};q c=$(b).1t(\'5O\');c&&$.P(c.1T(\' \'),7(){l(6 14 $.u.1Q){$.H(a,$.u.1Q[6])}});8 a},3S:7(c){q a={};q d=$(c);S(X 14 $.u.1Y){q b=d.1t(X);l(b){a[X]=b}}l(a.18&&/-1|5N|5L/.Y(a.18)){Q a.18}8 a},3Y:7(a){l(!$.1D)8{};q b=$.17(a.N,\'u\').p.39;8 b?$(a).1D()[b]:$(a).1D()},36:7(b){q a={};q c=$.17(b.N,\'u\');l(c.p.1h){a=$.u.1J(c.p.1h[b.v])||{}}8 a},41:7(d,e){$.P(d,7(c,b){l(b===L){Q d[c];8}l(b.2Z||b.2j){q a=w;2q(16 b.2j){1e"1w":a=!!$(b.2j,e.N).F;2L;1e"7":a=b.2j.Z(e,e);2L}l(a){d[c]=b.2Z!==2s?b.2Z:w}1b{Q d[c]}}});$.P(d,7(a,b){d[a]=$.5K(b)?b(e):b});$.P([\'1y\',\'18\',\'1B\',\'1A\'],7(){l(d[6]){d[6]=2Y(d[6])}});$.P([\'2k\',\'2m\'],7(){l(d[6]){d[6]=[2Y(d[6][0]),2Y(d[6][1])]}});l($.u.4r){l(d.1B&&d.1A){d.2m=[d.1B,d.1A];Q d.1B;Q d.1A}l(d.1y&&d.18){d.2k=[d.1y,d.18];Q d.1y;Q d.18}}l(d.I){Q d.I}8 d},1J:7(a){l(16 a=="1w"){q b={};$.P(a.1T(/\\s/),7(){b[6]=w});a=b}8 a},5I:7(c,a,b){$.u.1Y[c]=a;$.u.I[c]=b||$.u.I[c];l(a.F<3){$.u.42(c,$.u.1J(c))}},1Y:{13:7(b,c,a){l(!6.45(a,c))8"1X-1W";2q(c.48.47()){1e\'28\':q d=$("46:2B",c);8 d.F>0&&(c.1k=="28-5H"||($.2X.2R&&!(d[0].5E[\'R\'].5D)?d[0].2H:d[0].R).F>0);1e\'1x\':l(6.1u(c))8 6.1N(b,c)>0;5C:8 $.1j(b).F>0}},1Z:7(e,g,i){l(6.G(g))8"1X-1W";q f=6.2b(g);l(!6.p.I[g.v])6.p.I[g.v]={};6.p.I[g.v].1Z=16 f.19=="7"?f.19(e):f.19;i=16 i=="1w"&&{1p:i}||i;l(f.32!==e){f.32=e;q j=6;6.44(g);q h={};h[g.v]=e;$.2O($.H(w,{1p:i,3U:"2T",3T:"1F"+g.v,5A:"5y",17:h,1E:7(c){q b=c===w;l(b){q d=j.1v;j.2C(g);j.1v=d;j.1l.2e(g);j.1i()}1b{q a={};a[g.v]=f.19=c||j.2v(g,"1Z");j.1i(a)}f.M=b;j.43(g,b)}},i));8"1d"}1b l(6.1d[g.v]){8"1d"}8 f.M},1y:7(b,c,a){8 6.G(c)||6.1N($.1j(b),c)>=a},18:7(b,c,a){8 6.G(c)||6.1N($.1j(b),c)<=a},2k:7(b,d,a){q c=6.1N($.1j(b),d);8 6.G(d)||(c>=a[0]&&c<=a[1])},1B:7(b,c,a){8 6.G(c)||b>=a},1A:7(b,c,a){8 6.G(c)||b<=a},2m:7(b,c,a){8 6.G(c)||(b>=a[0]&&b<=a[1])},1K:7(a,b){8 6.G(b)||/^((([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^W`{\\|}~]|[\\A-\\y\\E-\\C\\x-\\B])+(\\.([a-z]|\\d|[!#\\$%&\'\\*\\+\\-\\/=\\?\\^W`{\\|}~]|[\\A-\\y\\E-\\C\\x-\\B])+)*)|((\\3Q)((((\\2h|\\1R)*(\\2Q\\3O))?(\\2h|\\1R)+)?(([\\3N-\\5r\\3M\\3Z\\5q-\\5p\\40]|\\5m|[\\5Q-\\5R]|[\\5j-\\5T]|[\\A-\\y\\E-\\C\\x-\\B])|(\\\\([\\3N-\\1R\\3M\\3Z\\2Q-\\40]|[\\A-\\y\\E-\\C\\x-\\B]))))*(((\\2h|\\1R)*(\\2Q\\3O))?(\\2h|\\1R)+)?(\\3Q)))@((([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])|(([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])*([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])))\\.)+(([a-z]|[\\A-\\y\\E-\\C\\x-\\B])|(([a-z]|[\\A-\\y\\E-\\C\\x-\\B])([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])*([a-z]|[\\A-\\y\\E-\\C\\x-\\B])))\\.?$/i.Y(a)},1p:7(a,b){8 6.G(b)||/^(5i?|5V):\\/\\/(((([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])|(%[\\1H-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:)*@)?(((\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d|[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5]))|((([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])|(([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])*([a-z]|\\d|[\\A-\\y\\E-\\C\\x-\\B])))\\.)+(([a-z]|[\\A-\\y\\E-\\C\\x-\\B])|(([a-z]|[\\A-\\y\\E-\\C\\x-\\B])([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])*([a-z]|[\\A-\\y\\E-\\C\\x-\\B])))\\.?)(:\\d*)?)(\\/((([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])|(%[\\1H-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)+(\\/(([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])|(%[\\1H-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)*)*)?)?(\\?((([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])|(%[\\1H-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|[\\5g-\\5f]|\\/|\\?)*)?(\\#((([a-z]|\\d|-|\\.|W|~|[\\A-\\y\\E-\\C\\x-\\B])|(%[\\1H-f]{2})|[!\\$&\'\\(\\)\\*\\+,;=]|:|@)|\\/|\\?)*)?$/i.Y(a)},1r:7(a,b){8 6.G(b)||!/5e|5c/.Y(2c 5b(a))},22:7(a,b){8 6.G(b)||/^\\d{4}[\\/-]\\d{1,2}[\\/-]\\d{1,2}$/.Y(a)},2n:7(a,b){8 6.G(b)||/^\\d\\d?\\.\\d\\d?\\.\\d\\d\\d?\\d?$/.Y(a)},1C:7(a,b){8 6.G(b)||/^-?(?:\\d+|\\d{1,3}(?:,\\d{3})+)(?:\\.\\d+)?$/.Y(a)},2f:7(a,b){8 6.G(b)||/^-?(?:\\d+|\\d{1,3}(?:\\.\\d{3})+)(?:,\\d+)?$/.Y(a)},1O:7(a,b){8 6.G(b)||/^\\d+$/.Y(a)},2i:7(b,e){l(6.G(e))8"1X-1W";l(/[^0-9-]+/.Y(b))8 L;q a=0,d=0,2d=L;b=b.27(/\\D/g,"");S(n=b.F-1;n>=0;n--){q c=b.5a(n);q d=59(c,10);l(2d){l((d*=2)>9)d-=9}a+=d;2d=!2d}8(a%10)==0},3R:7(b,c,a){a=16 a=="1w"?a.27(/,/g,\'|\'):"58|55?g|54";8 6.G(c)||b.52(2c 3z(".("+a+")$","i"))},3W:7(b,c,a){8 b==$(a).3L()}}});$.15=$.u.15})(38);(7($){q c=$.2O;q d={};$.2O=7(a){a=$.H(a,$.H({},$.51,a));q b=a.3T;l(a.3U=="2T"){l(d[b]){d[b].2T()}8(d[b]=c.1M(6,U))}8 c.1M(6,U)}})(38);(7($){$.P({3g:\'3G\',50:\'3E\'},7(b,a){$.1G.3a[a]={4Y:7(){l($.2X.2R)8 L;6.4X(b,$.1G.3a[a].3c,w)},4W:7(){l($.2X.2R)8 L;6.4U(b,$.1G.3a[a].3c,w)},3c:7(e){U[0]=$.1G.37(e);U[0].1k=a;8 $.1G.2l.1M(6,U)}}});$.H($.2M,{1q:7(d,e,c){8 6.3v(d,7(a){q b=$(a.4x);l(b.31(e)){8 c.1M(b,U)}})},6p:7(a,b){8 6.2G(a,[$.1G.37({1k:a,4x:b})])}})})(38);',62,398,'||||||this|function|return|||||||||||||if||||settings|var||||validator|name|true|uFDF0|uD7FF||u00A0|uFFEF|uFDCF||uF900|length|optional|extend|messages|element|Please|false|valid|form|enter|each|delete|value|for|errorList|arguments|currentForm|_|method|test|call||elements|toHide|required|in|format|typeof|data|maxlength|message|invalid|else|errorClass|pending|case|add|pendingRequest|rules|showErrors|trim|type|successList|filter|toShow|submitted|url|delegate|date|errorMap|attr|checkable|formSubmitted|string|input|minlength|console|max|min|number|metadata|success|validate|event|da|not|normalizeRule|email|reset|apply|getLength|digits|errorsFor|classRuleSettings|x09|unhighlight|split|submitButton|addClass|mismatch|dependency|methods|remote|submit|findByName|dateISO|currentElements|validClass||groups|replace|select|constructor|check|previousValue|new|bEven|push|numberDE|objectLength|x20|creditcard|depends|rangelength|handle|range|dateDE|containers|debug|switch|wrapper|undefined|removeClass|labelContainer|defaultMessage|focusInvalid|errors|hide|addWrapper|errorLabelContainer|selected|prepareElement|clean|errorElement|prepareForm|triggerHandler|text|submitHandler|ein|dependTypes|break|fn|defaults|ajax|characters|x0d|msie|hideErrors|abort|resetForm|rulesCache|than|browser|Number|param|window|is|old|idOrName|highlight|showLabel|staticRules|fix|jQuery|meta|special|cancelSubmit|handler|parameters|click|catch|focus|html|findLastActive|try|size|lastActive|defaultShowErrors|button|grep|ignoreTitle|ignore|numberOfInvalids|errorContainer|error|checkForm|bind|find|invalidHandler|checkbox|RegExp|radio|nothing|onsubmit|Array|focusout|remove|focusin|on|makeArray|checked|and|val|x0b|x01|x0a|no|x22|accept|attributeRules|port|mode|the|equalTo|classRules|metadataRules|x0c|x7f|normalizeRules|addClassRules|stopRequest|startRequest|depend|option|toLowerCase|nodeName|Sie|null|geben|Bitte|or|errorPlacement|equal|generated|map|invalidElements|show|validElements|init|parent|strong|String|field|customMessage|autoCreateRanges|to|customMetaMessage|id|errorContext|findDefined|target|formatAndAdd|lastElement|between|assigned|has|disabled|onfocusout|image|removeAttrs|cancel|visible|blockFocusCleanup|focusCleanup|can|onfocusin|label|textarea|file|password|slice|keyup|valueCache|removeEventListener|unshift|teardown|addEventListener|setup|prototype|blur|ajaxSettings|match|greater|gif|jpe|appendTo|warn|png|parseInt|charAt|Date|NaN|less|Invalid|uF8FF|uE000|long|https|x5d|unchecked|least|x21|at|filled|x1f|x0e|x08|more|blank|expr|extension|with|hidden|json|again|dataType|same|default|specified|attributes|card|credit|multiple|addMethod|only|isFunction|524288|Nummer|2147483647|class|eine|x23|x5b|previous|x7e|Datum|ftp|boolean|ltiges|preventDefault|gÃ|getElementsByName|document|insertAfter|append|ISO|wrap|URL|address|defined|No|Warning|title|This|setDefaults|returning|throw|checking|when|occured|exception|log|onclick|continue|onkeyup|removeAttr|triggerEvent'.split('|'),0,{}))



/**
 * Timeago is a jQuery plugin that makes it easy to support automatically
 * updating fuzzy timestamps (e.g. "4 minutes ago" or "about 1 day ago").
 *
 * @name timeago
 * @version 0.10.0
 * @requires jQuery v1.2.3+
 * @author Ryan McGeary
 * @license MIT License - http://www.opensource.org/licenses/mit-license.php
 *
 * For usage and examples, visit:
 * http://timeago.yarp.com/
 *
 * Copyright (c) 2008-2011, Ryan McGeary (ryanonjavascript -[at]- mcgeary [*dot*] org)
 */
(function($) {
  $.timeago = function(timestamp) {
    if (timestamp instanceof Date) {
      return inWords(timestamp);
    } else if (typeof timestamp === "string") {
      return inWords($.timeago.parse(timestamp));
    } else {
      return inWords($.timeago.datetime(timestamp));
    }
  };
  var $t = $.timeago;

  $.extend($.timeago, {
    settings: {
      refreshMillis: 60000,
      allowFuture: false,
      strings: {
        prefixAgo: null,
        prefixFromNow: null,
        suffixAgo: "ago",
        suffixFromNow: "from now",
        seconds: "less than a minute",
        minute: "about a minute",
        minutes: "%d minutes",
        hour: "about an hour",
        hours: "about %d hours",
        day: "a day",
        days: "%d days",
        month: "about a month",
        months: "%d months",
        year: "about a year",
        years: "%d years",
        numbers: []
      }
    },
    inWords: function(distanceMillis) {
      var $l = this.settings.strings;
      var prefix = $l.prefixAgo;
      var suffix = $l.suffixAgo;
      if (this.settings.allowFuture) {
        if (distanceMillis < 0) {
          prefix = $l.prefixFromNow;
          suffix = $l.suffixFromNow;
        }
      }

      var seconds = Math.abs(distanceMillis) / 1000;
      var minutes = seconds / 60;
      var hours = minutes / 60;
      var days = hours / 24;
      var years = days / 365;

      function substitute(stringOrFunction, number) {
        var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction;
        var value = ($l.numbers && $l.numbers[number]) || number;
        return string.replace(/%d/i, value);
      }

      var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) ||
        seconds < 90 && substitute($l.minute, 1) ||
        minutes < 45 && substitute($l.minutes, Math.round(minutes)) ||
        minutes < 90 && substitute($l.hour, 1) ||
        hours < 24 && substitute($l.hours, Math.round(hours)) ||
        hours < 48 && substitute($l.day, 1) ||
        days < 30 && substitute($l.days, Math.floor(days)) ||
        days < 60 && substitute($l.month, 1) ||
        days < 365 && substitute($l.months, Math.floor(days / 30)) ||
        years < 2 && substitute($l.year, 1) ||
        substitute($l.years, Math.floor(years));

      return $.trim([prefix, words, suffix].join(" "));
    },
    parse: function(iso8601) {
      var s = $.trim(iso8601);
      s = s.replace(/\.\d\d\d+/,""); // remove milliseconds
      s = s.replace(/-/,"/").replace(/-/,"/");
      s = s.replace(/T/," ").replace(/Z/," UTC");
      s = s.replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"); // -04:00 -> -0400
      return new Date(s);
    },
    datetime: function(elem) {
      // jQuery's `is()` doesn't play well with HTML5 in IE
      var isTime = $(elem).get(0).tagName.toLowerCase() === "time"; // $(elem).is("time");
      var iso8601 = isTime ? $(elem).attr("datetime") : $(elem).attr("title");
      return $t.parse(iso8601);
    }
  });

  $.fn.timeago = function() {
    var self = this;
    self.each(refresh);

    var $s = $t.settings;
    if ($s.refreshMillis > 0) {
      setInterval(function() { self.each(refresh); }, $s.refreshMillis);
    }
    return self;
  };

  function refresh() {
    var data = prepareData(this);
    if (!isNaN(data.datetime)) {
      $(this).text(inWords(data.datetime));
    }
    return this;
  }

  function prepareData(element) {
    element = $(element);
    if (!element.data("timeago")) {
      element.data("timeago", { datetime: $t.datetime(element) });
      var text = $.trim(element.text());
      if (text.length > 0) {
        element.attr("title", text);
      }
    }
    return element.data("timeago");
  }

  function inWords(date) {
    return $t.inWords(distance(date));
  }

  function distance(date) {
    return (new Date().getTime() - date.getTime());
  }

  // fix for IE6 suckage
  document.createElement("abbr");
  document.createElement("time");
}(jQuery));
