
(function($){function showhide(elem,params){var opts={anim:'slow'};$.extend(opts,params);switch(elem.css('display')){case'block':elem.hide(opts.anim);break;case'none':elem.show(opts.anim);break;default:elem.show(opts.anim);break;}};function typewriter(elem,params){var opts={delay:150,pos:0,text:''};$.extend(opts,params);var tlen=opts.text.length;if(tlen==0){opts.text=elem.html();tlen=opts.text.length;}
elem.html('');for(i=opts.pos;i<tlen;i++){setTimeout(function(){elem.append(opts.text.charAt(opts.pos));opts.pos++;},i*opts.delay);}}
function decode(elem,params){var opts={delay:150,duration:3000,text:''};$.extend(opts,params);var tlen=opts.text.length;var srand='qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890!@$%^&*#';var slen=srand.length;var rand=0;var walk=1;var total=(opts.delay*tlen)+opts.duration;var out='';var tout=opts.delay;for(i=opts.delay;i<=total;i=i+opts.delay){for(j=0;j<tlen;j++){rand=Math.floor(Math.random()*slen);out=out+srand.charAt(rand);}
j=0;setTimeout(function(){out=''
j=j+opts.delay;if(j<=opts.duration){for(k=0;k<tlen;k++){rand=Math.floor(Math.random()*slen);out=out+srand.charAt(rand);}}else{for(k=0;k<walk;k++){out=out+opts.text.charAt(k);}
for(l=walk;k<tlen;k++){rand=Math.floor(Math.random()*slen);out=out+srand.charAt(rand);}
walk++;}
elem.html(out);},i);}}
function tego(elem,params){var opts={delay:150,text:'',anim:5,ranim:0};$.extend(opts,params);var tlen=opts.text.length;var srand='qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890!@$%^&*#';var slen=srand.length;var acount=opts.anim;var alim=acount-1;var count=0;var time=0;var rand=0;var tmp='';var tout='';var walk=0;while(count<tlen){if(opts.ranim>0){acount=opts.anim+Math.floor(Math.random()*opts.ranim);}
for(i=0;i<acount;i++){time+=opts.delay;if(i==alim){setTimeout(function(){tout+=opts.text.charAt(walk);elem.html(tout);elem.html(tout)
walk++;},time);}else if(i<alim){setTimeout(function(){rand=Math.floor(Math.random()*slen);tmp=tout+srand.charAt(rand);elem.html(tmp);},time);}}
count++;}}
$.fn.showhide=function(params){showhide(this,params);return this;};$.fn.typewriter=function(params){typewriter(this,params);return this;};$.fn.decode=function(params){decode(this,params);return this;};$.fn.tego=function(params){tego(this,params);return this;};})(jQuery);