
if(typeof(Control) == 'undefined')
	var Control = {};
Control.Tabs = Class.create();
Object.extend(Control.Tabs,{
	instances: [],
	findByTabId: function(id){
		return Control.Tabs.instances.find(function(tab){
			return tab.links.find(function(link){
				return link.key == id;
			});
		});
	}
});
Object.extend(Control.Tabs.prototype,{
	initialize: function(tab_list_container,options){
		this.activeContainer = false;
		this.activeLink = false;
		this.containers = $H({});
		this.links = [];
		Control.Tabs.instances.push(this);
		this.options = {
			beforeChange: Prototype.emptyFunction,
			afterChange: Prototype.emptyFunction,
			hover: false,
			linkSelector: 'li a',
			setClassOnContainer: true,
			activeClassName: 'active',
			defaultTab: 'first',
			autoLinkExternal: true,
			targetRegExp: /#(.+)$/,
			showFunction: Element.show,
			hideFunction: Element.hide,
			activeTab:null,
			ajaxRequestUrl:null,
			ajaxResponseText:null,
			ajaxCanStartRequesting:false
		};
		Object.extend(this.options,options || {});
		// hack by shark n.1: ak je zadany tab v adrese, automaticky ho da ako aktivny [begin]
	        var textAfterSharp = window.location.href.replace(window.location.href.split('#')[0],'').split('/').last().replace(/#/,'');
	    	var selectedTab = null;
		if(textAfterSharp != '')
			selectedTab = textAfterSharp.split('=')[1];
		if(selectedTab != null && selectedTab != '')
			this.options.activeTab = selectedTab;
		// hack by shark n.1: [end]
		(typeof(this.options.linkSelector == 'string')
			? $(tab_list_container).getElementsBySelector(this.options.linkSelector)
			: this.options.linkSelector($(tab_list_container))
		).findAll(function(link){
			return (/^#/).exec(link.href.replace(window.location.href.split('#')[0],''));
		}).each(function(link){
			this.addTab(link);
		}.bind(this));
		this.containers.values().each(this.options.hideFunction);
		if(this.options.defaultTab == 'first')
			this.setActiveTab(this.links.first());
		else if(this.options.defaultTab == 'last')
			this.setActiveTab(this.links.last());
		else
			this.setActiveTab(this.options.defaultTab);
		var targets = this.options.targetRegExp.exec(window.location);
		if(targets && targets[1]){
			targets[1].split(',').each(function(target){
				this.links.each(function(target,link){
					if(link.key == target){
						this.setActiveTab(link);
						throw $break;
					}
				}.bind(this,target));
			}.bind(this));
		}
		if(this.options.autoLinkExternal){
			$A(document.getElementsByTagName('a')).each(function(a){
				if(!this.links.include(a)){
					var clean_href = a.href.replace(window.location.href.split('#')[0],'');
					if(clean_href.substring(0,1) == '#'){
						if(this.containers.keys().include(clean_href.substring(1))){
							$(a).observe('click',function(event,clean_href){
								this.setActiveTab(clean_href.substring(1));
							}.bindAsEventListener(this,clean_href));
						}
					}
				}
			}.bind(this));
		}
	},
	addTab: function(link){
		this.links.push(link);
		link.key = link.getAttribute('href').replace(link.getAttribute('href').split('#')[0],'').split('/').last().replace(/#/,'');
		link.key = link.key.split('=')[1];

		this.containers[link.key] = $(link.key);
		link[this.options.hover ? 'onmouseover' : 'onclick'] = function(link){
//			if(window.event)
//				Event.stop(window.event);
			this.options.ajaxCanStartRequesting = true;
			this.setActiveTab(link);
//			return false;
		}.bind(this,link);
	},
	setActiveTab: function(link){
		if(!link)
			return;
		if(typeof(link) == 'string'){
			this.links.each(function(_link){
				if(_link.key == link){
					this.setActiveTab(_link);
					throw $break;
				}
			}.bind(this));
		}else{
			this.notify('beforeChange',this.activeContainer);
			if(this.activeContainer)
				this.options.hideFunction(this.activeContainer);
			this.links.each(function(item){
				(this.options.setClassOnContainer ? $(item.parentNode) : item).removeClassName(this.options.activeClassName);
			}.bind(this));
//					onLoading: function() { this.containers[link.key].innerHTML = 'NACITAVAM'; }.bind(this),

			if(this.options.ajaxRequestUrl != null && this.options.ajaxCanStartRequesting == true) {
				new Ajax.Request(this.options.ajaxRequestUrl, {
					method:'get',
					onLoading: function() { this.containers[link.key].innerHTML = 'NACITAVAM'; }.bind(this),
					onSuccess: function(res) { this.containers[link.key].innerHTML = res.responseText; }.bind(this)					
					});
			}
			(this.options.setClassOnContainer ? $(link.parentNode) : link).addClassName(this.options.activeClassName);
			this.activeContainer = this.containers[link.key];
			this.activeLink = link;
			this.options.showFunction(this.containers[link.key]);
			this.notify('afterChange',this.containers[link.key]);
			// hack by shark n.1 pokr: ak je zadana premenna this.options.activeTab, tak zavola tuto metodu s touto premennou ako parametrom
			// co zaruci aktivovanie vybraneho tabu. Prvotne aktivovany tab sa zabuda aby sa nezacyklilo setActiveTab...
			if(this.options.activeTab != null) {
				var tabToShow = this.options.activeTab;
				this.options.activeTab = null;
				this.setActiveTab(tabToShow);
			}
			// hack by shark pokr [end]
		}
	},
	next: function(){
		this.links.each(function(link,i){
			if(this.activeLink == link && this.links[i + 1]){
				this.setActiveTab(this.links[i + 1]);
				throw $break;
			}
		}.bind(this));
		return false;
	},
	previous: function(){
		this.links.each(function(link,i){
			if(this.activeLink == link && this.links[i - 1]){
				this.setActiveTab(this.links[i - 1]);
				throw $break;
			}
		}.bind(this));
		return false;
	},
	first: function(){
		this.setActiveTab(this.links.first());
		return false;
	},
	last: function(){
		this.setActiveTab(this.links.last());
		return false;
	},
	notify: function(event_name){
		try{
			if(this.options[event_name])
				return [this.options[event_name].apply(this.options[event_name],$A(arguments).slice(1))];
		}catch(e){
			if(e != $break)
				throw e;
			else
				return false;
		}
	}
});
if(typeof(Object.Event) != 'undefined')
	Object.Event.extend(Control.Tabs);


if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;

var Prototip = {
  Version: '2.0.5'
};

var Tips = {
  options: {
    images: '../images/prototip/', // image path, can be relative to this file or an absolute url
    zIndex: 6000                   // raise if required
  }
};

Prototip.Styles = {
  // The default style every other style will inherit from.
  // Used when no style is set through the options on a tooltip.
  'default': {
    border: 0,
    borderColor: 'transparent',
    className: 'default',
    closeButton: false,
    hideAfter: false,
    hideOn: 'mouseleave',
    hook: false,
	  //images: '../styles/creamy/',    // Example: different images. An absolute url or relative to the images url defined above.
    radius: 1,
	showOn: 'mousemove',
    stem: {
      //position: 'topLeft',       // Example: optional default stem position, this will also enable the stem
      height: 0,
      width: 0
    }
  },

  'protoblue': {
    className: 'protoblue',
    border: 6,
    borderColor: '#116497',
    radius: 6,
    stem: { height: 12, width: 15 }
  },

  'darkgrey': {
    className: 'darkgrey',
    border: 6,
    borderColor: '#363636',
    radius: 6,
    stem: { height: 12, width: 15 }
  },

  'creamy': {
    className: 'creamy',
    border: 6,
    borderColor: '#ebe4b4',
    radius: 1,
    stem: { height: 12, width: 15 }
  },

  'protogrey': {
    className: 'protogrey',
    border: 6,
    borderColor: '#606060',
    radius: 6,
    stem: { height: 12, width: 15 }
  }
};

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}('P.11(X,{5V:"1.6.0.3",3U:c(){8.3C("25");b(/^(6x?:\\/\\/|\\/)/.6i(e.9.W)){e.W=e.9.W}13{h A=/1P(?:-[\\w\\d.]+)?\\.4G(.*)/;e.W=(($$("4C 4y[2b]").3t(c(B){O B.2b.2k(A)})||{}).2b||"").3j(A,"")+e.9.W}b(25.2r.3e&&!17.3X.v){17.3X.34("v","5L:5y-5r-5k:5d");17.1f("3G:32",c(){17.4P().4I("v\\\\:*","4H: 30(#2Z#4D);")})}e.2p();r.1f(2S,"2R",8.2R)},3C:c(A){b((4v 2S[A]=="4p")||(8.2P(2S[A].4l)<8.2P(8["4i"+A]))){4g("X 6p "+A+" >= "+8["4i"+A]);}},2P:c(A){h B=A.3j(/4c.*|\\./g,"");B=6h(B+"0".6e(4-B.3g));O A.66("4c")>-1?B-1:B},62:$w("43 60"),1U:c(A){b(25.2r.3e){O A}A=A.2s(c(E,D){h B=P.2A(8)?8:8.m,C=D.5J;5E(C&&C!=B){5x{C=C.5t}5q(F){C=B}}b(C==B){O}E(D)});O A},37:c(A){O(A>0)?(-1*A):(A).5g()},2R:c(){e.4j()}});P.11(e,{1D:[],1c:[],2p:c(){8.2G=8.1t},1p:(c(A){O{1k:(A?"29":"1k"),1a:(A?"1S":"1a"),29:(A?"29":"1k"),1S:(A?"1S":"1a")}})(25.2r.3e),3D:{1k:"1k",1a:"1a",29:"1k",1S:"1a"},2f:{k:"31",31:"k",i:"1s",1s:"i",1Y:"1Y",1e:"1h",1h:"1e"},3A:{q:"1e",p:"1h"},2U:c(A){O!!23[1]?8.2f[A]:A},1n:(c(B){h A=s 4x("4w ([\\\\d.]+)").4u(B);O A?(3u(A[1])<7):10})(4n.4m),2N:(25.2r.4k&&!17.6w),34:c(A){8.1D.2L(A)},1J:c(A){h B=8.1D.3t(c(C){O C.m==$(A)});b(B){B.4f();b(B.1b){B.o.1J();b(e.1n){B.1v.1J()}}8.1D=8.1D.4b(B)}A.1P=2a},4j:c(){8.1D.3m(c(A){8.1J(A.m)}.1j(8))},2J:c(C){b(C==8.49){O}b(8.1c.3g===0){8.2G=8.9.1t;3i(h B=0,A=8.1D.3g;B<A;B++){8.1D[B].o.f({1t:8.9.1t})}}C.o.f({1t:8.2G++});b(C.T){C.T.f({1t:8.2G})}8.49=C},47:c(A){8.3f(A);8.1c.2L(A)},3f:c(A){8.1c=8.1c.4b(A)},46:c(){e.1c.1Q("V")},Y:c(B,F){B=$(B),F=$(F);h K=P.11({1g:{x:0,y:0},R:10},23[2]||{});h D=K.1z||F.2t();D.k+=K.1g.x;D.i+=K.1g.y;h C=K.1z?[0,0]:F.3H(),A=17.1E.2D(),G=K.1z?"20":"15";D.k+=(-1*(C[0]-A[0]));D.i+=(-1*(C[1]-A[1]));b(K.1z){h E=[0,0];E.q=0;E.p=0}h I={m:B.21()},J={m:P.2c(D)};I[G]=K.1z?E:F.21();J[G]=P.2c(D);3i(h H 3Q J){3O(K[H]){U"5w":U"5u":J[H].k+=I[H].q;18;U"5s":J[H].k+=(I[H].q/2);18;U"5p":J[H].k+=I[H].q;J[H].i+=(I[H].p/2);18;U"5o":U"5m":J[H].i+=I[H].p;18;U"5l":U"5j":J[H].k+=I[H].q;J[H].i+=I[H].p;18;U"5h":J[H].k+=(I[H].q/2);J[H].i+=I[H].p;18;U"5f":J[H].i+=(I[H].p/2);18}}D.k+=-1*(J.m.k-J[G].k);D.i+=-1*(J.m.i-J[G].i);b(K.R){B.f({k:D.k+"j",i:D.i+"j"})}O D}});e.2p();h 5c=59.3J({2p:c(C,E){8.m=$(C);b(!8.m){4g("X: r 58 56, 55 3J a 1b.");O}e.1J(8.m);h A=(P.2F(E)||P.2A(E)),B=A?23[2]||[]:E;8.1u=A?E:2a;b(B.28){B=P.11(P.2c(X.33[B.28]),B)}8.9=P.11(P.11({1m:10,1i:0,3k:"#4R",1o:0,u:e.9.u,19:e.9.4L,1B:!(B.1d&&B.1d=="1Z")?0.14:10,1C:10,1x:"1S",3B:10,Y:B.Y,1g:B.Y?{x:0,y:0}:{x:16,y:16},1K:(B.Y&&!B.Y.1z)?1l:10,1d:"2q",n:10,28:"2Z",15:8.m,12:10,1E:(B.Y&&!B.Y.1z)?10:1l,q:10},X.33["2Z"]),B);8.15=$(8.9.15);8.1o=8.9.1o;8.1i=(8.1o>8.9.1i)?8.1o:8.9.1i;b(8.9.W){8.W=8.9.W.2Y("://")?8.9.W:e.W+8.9.W}13{8.W=e.W+"4F/"+(8.9.28||"")+"/"}b(!8.W.4E("/")){8.W+="/"}b(P.2F(8.9.n)){8.9.n={R:8.9.n}}b(8.9.n.R){8.9.n=P.11(P.2c(X.33[8.9.28].n)||{},8.9.n);8.9.n.R=[8.9.n.R.2k(/[a-z]+/)[0].2e(),8.9.n.R.2k(/[A-Z][a-z]+/)[0].2e()];8.9.n.1I=["k","31"].3z(8.9.n.R[0])?"1e":"1h";8.1r={1e:10,1h:10}}b(8.9.1m){8.9.1m.9=P.11({2V:25.4B},8.9.1m.9||{})}8.1p=$w("4A 43").3z(8.m.4z.2e())?e.3D:e.1p;b(8.9.Y.1z){h D=8.9.Y.1q.2k(/[a-z]+/)[0].2e();8.20=e.2f[D]+e.2f[8.9.Y.1q.2k(/[A-Z][a-z]+/)[0].2e()].2B()}8.3y=(e.2N&&8.1o);8.3x();e.34(8);8.3w();X.11(8)},3x:c(){8.o=s r("S",{u:"1P"}).f({1t:e.9.1t});b(8.3y){8.o.V=c(){8.f("k:-3v;i:-3v;1O:2o;");O 8};8.o.Q=c(){8.f("1O:1c");O 8};8.o.1c=c(){O(8.2Q("1O")=="1c"&&3u(8.2Q("i").3j("j",""))>-4t)}}8.o.V();b(e.1n){8.1v=s r("4s",{u:"1v",2b:"4r:10;",4q:0}).f({2m:"2i",1t:e.9.1t-1,4o:0})}b(8.9.1m){8.24=8.24.2s(8.2O)}8.1q=s r("S",{u:"1u"});8.12=s r("S",{u:"12"}).V();b(8.9.19||(8.9.1x.m&&8.9.1x.m=="19")){8.19=s r("S",{u:"2j"}).26(8.W+"2j.2l")}},2H:c(){b(17.32){8.3r();8.3s=1l;O 1l}13{b(!8.3s){17.1f("3G:32",8.3r);O 10}}},3r:c(){$(17.2M).N(8.o);b(e.1n){$(17.2M).N(8.1v)}b(8.9.1m){$(17.2M).N(8.T=s r("S",{u:"6v"}).26(8.W+"T.6t").V())}h G="o";b(8.9.n.R){8.n=s r("S",{u:"6r"}).f({p:8.9.n[8.9.n.1I=="1h"?"p":"q"]+"j"});h B=8.9.n.1I=="1e";8[G].N(8.3p=s r("S",{u:"6q 2K"}).N(8.4e=s r("S",{u:"6o 2K"})));8.n.N(8.1T=s r("S",{u:"6n"}).f({p:8.9.n[B?"q":"p"]+"j",q:8.9.n[B?"p":"q"]+"j"}));b(e.1n&&!8.9.n.R[1].4d().2Y("6m")){8.1T.f({2m:"6l"})}G="4e"}b(8.1i){h D=8.1i,F;8[G].N(8.1W=s r("6j",{u:"1W"}).N(8.1V=s r("3n",{u:"1V 3l"}).f("p: "+D+"j").N(s r("S",{u:"2n 6g"}).N(s r("S",{u:"1X"}))).N(F=s r("S",{u:"6f"}).f({p:D+"j"}).N(s r("S",{u:"4a"}).f({1w:"0 "+D+"j",p:D+"j"}))).N(s r("S",{u:"2n 6d"}).N(s r("S",{u:"1X"})))).N(8.2W=s r("3n",{u:"2W 3l"}).N(8.2T=s r("S",{u:"2T"}).f("2I: 0 "+D+"j"))).N(8.48=s r("3n",{u:"48 3l"}).f("p: "+D+"j").N(s r("S",{u:"2n 6c"}).N(s r("S",{u:"1X"}))).N(F.6b(1l)).N(s r("S",{u:"2n 69"}).N(s r("S",{u:"1X"})))));G="2T";h C=8.1W.2X(".1X");$w("68 67 65 63").3m(c(I,H){b(8.1o>0){X.45(C[H],I,{1L:8.9.3k,1i:D,1o:8.9.1o})}13{C[H].2E("44")}C[H].f({q:D+"j",p:D+"j"}).2E("1X"+I.2B())}.1j(8));8.1W.2X(".4a",".2W",".44").1Q("f",{1L:8.9.3k})}8[G].N(8.1b=s r("S",{u:"1b "+8.9.u}).N(8.27=s r("S",{u:"27"}).N(8.12)));b(8.9.q){h E=8.9.q;b(P.61(E)){E+="j"}8.1b.f("q:"+E)}b(8.n){h A={};A[8.9.n.1I=="1e"?"i":"1s"]=8.n;8.o.N(A);8.2g()}8.1b.N(8.1q);b(!8.9.1m){8.3d({12:8.9.12,1u:8.1u})}},3d:c(E){h A=8.o.2Q("1O");8.o.f("p:1M;q:1M;1O:2o").Q();b(8.1i){8.1V.f("p:0");8.1V.f("p:0")}b(E.12){8.12.Q().42(E.12);8.27.Q()}13{b(!8.19){8.12.V();8.27.V()}}b(P.2A(E.1u)){E.1u.Q()}b(P.2F(E.1u)||P.2A(E.1u)){8.1q.42(E.1u)}8.1b.f({q:8.1b.41()+"j"});8.o.f("1O:1c").Q();8.1b.Q();h C=8.1b.21(),B={q:C.q+"j"},D=[8.o];b(e.1n){D.2L(8.1v)}b(8.19){8.12.Q().N({i:8.19});8.27.Q()}b(E.12||8.19){8.27.f("q: 3c%")}B.p=2a;8.o.f({1O:A});8.1q.2E("2K");b(E.12||8.19){8.12.2E("2K")}b(8.1i){8.1V.f("p:"+8.1i+"j");8.1V.f("p:"+8.1i+"j");B="q: "+(C.q+2*8.1i)+"j";D.2L(8.1W)}D.1Q("f",B);b(8.n){8.2g();b(8.9.n.1I=="1e"){8.o.f({q:8.o.41()+8.9.n.p+"j"})}}8.o.V()},3w:c(){8.3b=8.24.1y(8);8.40=8.V.1y(8);b(8.9.1K&&8.9.1d=="2q"){8.9.1d="1k"}b(8.9.1d==8.9.1x){8.1R=8.3Z.1y(8);8.m.1f(8.9.1d,8.1R)}b(8.19){8.19.1f("1k",c(E){E.26(8.W+"5Y.2l")}.1j(8,8.19)).1f("1a",c(E){E.26(8.W+"2j.2l")}.1j(8,8.19))}h C={m:8.1R?[]:[8.m],15:8.1R?[]:[8.15],1q:8.1R?[]:[8.o],19:[],2i:[]},A=8.9.1x.m;8.39=A||(!8.9.1x?"2i":"m");8.1N=C[8.39];b(!8.1N&&A&&P.2F(A)){8.1N=8.1q.2X(A)}h D={29:"1k",1S:"1a"};$w("Q V").3m(c(H){h G=H.2B(),F=(8.9[H+"3Y"].38||8.9[H+"3Y"]);8[H+"3W"]=F;b(["29","1S","1k","1a"].2Y(F)){8[H+"3W"]=(8.1p[F]||F);8["38"+G]=X.1U(8["38"+G])}}.1j(8));b(!8.1R){8.m.1f(8.9.1d,8.3b)}b(8.1N){8.1N.1Q("1f",8.5X,8.40)}b(!8.9.1K&&8.9.1d=="1Z"){8.2u=8.R.1y(8);8.m.1f("2q",8.2u)}8.3V=8.V.2s(c(G,F){h E=F.5P(".2j");b(E){E.5N();F.5M();G(F)}}).1y(8);b(8.19||(8.9.1x&&(8.9.1x.m==".2j"))){8.o.1f("1Z",8.3V)}b(8.9.1d!="1Z"&&(8.39!="m")){8.2C=X.1U(c(){8.1G("Q")}).1y(8);8.m.1f(8.1p.1a,8.2C)}h B=[8.m,8.o];8.36=X.1U(c(){e.2J(8);8.2v()}).1y(8);8.35=X.1U(8.1C).1y(8);B.1Q("1f",8.1p.1k,8.36).1Q("1f",8.1p.1a,8.35);b(8.9.1m&&8.9.1d!="1Z"){8.2z=X.1U(8.3T).1y(8);8.m.1f(8.1p.1a,8.2z)}},4f:c(){b(8.9.1d==8.9.1x){8.m.1A(8.9.1d,8.1R)}13{8.m.1A(8.9.1d,8.3b);b(8.1N){8.1N.1Q("1A")}}b(8.2u){8.m.1A("2q",8.2u)}b(8.2C){8.m.1A("1a",8.2C)}8.o.1A();8.m.1A(8.1p.1k,8.36).1A(8.1p.1a,8.35);b(8.2z){8.m.1A(8.1p.1a,8.2z)}},2O:c(C,B){b(!8.1b){b(!8.2H()){O}}8.R(B);b(8.2y){O}13{b(8.3S){C(B);O}}8.2y=1l;h D={2h:{1F:22.1F(B),1H:22.1H(B)}};h A=P.2c(8.9.1m.9);A.2V=A.2V.2s(c(F,E){8.3d({12:8.9.12,1u:E.5I});8.R(D);(c(){F(E);h G=(8.T&&8.T.1c());b(8.T){8.1G("T");8.T.1J();8.T=2a}b(G){8.Q()}8.3S=1l;8.2y=2a}.1j(8)).1B(0.6)}.1j(8));8.5H=r.Q.1B(8.9.1B,8.T);8.o.V();8.2y=1l;8.T.Q();8.5F=(c(){s 5B.5A(8.9.1m.30,A)}.1j(8)).1B(8.9.1B);O 10},3T:c(){8.1G("T")},24:c(A){b(!8.1b){b(!8.2H()){O}}8.R(A);b(8.o.1c()){O}8.1G("Q");8.5z=8.Q.1j(8).1B(8.9.1B)},1G:c(A){b(8[A+"3N"]){5v(8[A+"3N"])}},Q:c(){b(8.o.1c()){O}b(e.1n){8.1v.Q()}b(8.9.3B){e.46()}e.47(8);8.1b.Q();8.o.Q();b(8.n){8.n.Q()}8.m.3M("1P:5C")},1C:c(A){b(8.9.1m){b(8.T&&8.9.1d!="1Z"){8.T.V()}}b(!8.9.1C){O}8.2v();8.5D=8.V.1j(8).1B(8.9.1C)},2v:c(){b(8.9.1C){8.1G("1C")}},V:c(){8.1G("Q");8.1G("T");b(!8.o.1c()){O}8.3L()},3L:c(){b(e.1n){8.1v.V()}b(8.T){8.T.V()}8.o.V();(8.1W||8.1b).Q();e.3f(8);8.m.3M("1P:2o")},3Z:c(A){b(8.o&&8.o.1c()){8.V(A)}13{8.24(A)}},2g:c(){h C=8.9.n,B=23[0]||8.1r,D=e.2U(C.R[0],B[C.1I]),F=e.2U(C.R[1],B[e.2f[C.1I]]),A=8.1o||0;8.1T.26(8.W+D+F+".2l");b(C.1I=="1e"){h E=(D=="k")?C.p:0;8.3p.f("k: "+E+"j;");8.1T.f({"2w":D});8.n.f({k:0,i:(F=="1s"?"3c%":F=="1Y"?"50%":0),5G:(F=="1s"?-1*C.q:F=="1Y"?-0.5*C.q:0)+(F=="1s"?-1*A:F=="i"?A:0)+"j"})}13{8.3p.f(D=="i"?"1w: 0; 2I: "+C.p+"j 0 0 0;":"2I: 0; 1w: 0 0 "+C.p+"j 0;");8.n.f(D=="i"?"i: 0; 1s: 1M;":"i: 1M; 1s: 0;");8.1T.f({1w:0,"2w":F!="1Y"?F:"2i"});b(F=="1Y"){8.1T.f("1w: 0 1M;")}13{8.1T.f("1w-"+F+": "+A+"j;")}b(e.2N){b(D=="1s"){8.n.f({R:"3P",5n:"5K",i:"1M",1s:"1M","2w":"k",q:"3c%",1w:(-1*C.p)+"j 0 0 0"});8.n.28.2m="3K"}13{8.n.f({R:"3R","2w":"2i",1w:0})}}}8.1r=B},R:c(B){b(!8.1b){b(!8.2H()){O}}e.2J(8);b(e.1n){h A=8.o.21();b(!8.2x||8.2x.p!=A.p||8.2x.q!=A.q){8.1v.f({q:A.q+"j",p:A.p+"j"})}8.2x=A}b(8.9.Y){h J,H;b(8.20){h K=17.1E.2D(),C=B.2h||{};h G,I=2;3O(8.20.4d()){U"5O":U"5i":G={x:0-I,y:0-I};18;U"5Q":G={x:0,y:0-I};18;U"5R":U"5S":G={x:I,y:0-I};18;U"5T":G={x:I,y:0};18;U"5U":U"5e":G={x:I,y:I};18;U"5W":G={x:0,y:I};18;U"5b":U"5a":G={x:0-I,y:I};18;U"5Z":G={x:0-I,y:0};18}G.x+=8.9.1g.x;G.y+=8.9.1g.y;J=P.11({1g:G},{m:8.9.Y.1q,20:8.20,1z:{i:C.1H||22.1H(B)-K.i,k:C.1F||22.1F(B)-K.k}});H=e.Y(8.o,8.15,J);b(8.9.1E){h M=8.3a(H),L=M.1r;H=M.R;H.k+=L.1h?2*X.37(G.x-8.9.1g.x):0;H.i+=L.1h?2*X.37(G.y-8.9.1g.y):0;b(8.n&&(8.1r.1e!=L.1e||8.1r.1h!=L.1h)){8.2g(L)}}H={k:H.k+"j",i:H.i+"j"};8.o.f(H)}13{J=P.11({1g:8.9.1g},{m:8.9.Y.1q,15:8.9.Y.15});H=e.Y(8.o,8.15,P.11({R:1l},J));H={k:H.k+"j",i:H.i+"j"}}b(8.T){h E=e.Y(8.T,8.15,P.11({R:1l},J))}b(e.1n){8.1v.f(H)}}13{h F=8.15.2t(),C=B.2h||{},H={k:((8.9.1K)?F[0]:C.1F||22.1F(B))+8.9.1g.x,i:((8.9.1K)?F[1]:C.1H||22.1H(B))+8.9.1g.y};b(!8.9.1K&&8.m!==8.15){h D=8.m.2t();H.k+=-1*(D[0]-F[0]);H.i+=-1*(D[1]-F[1])}b(!8.9.1K&&8.9.1E){h M=8.3a(H),L=M.1r;H=M.R;b(8.n&&(8.1r.1e!=L.1e||8.1r.1h!=L.1h)){8.2g(L)}}H={k:H.k+"j",i:H.i+"j"};8.o.f(H);b(8.T){8.T.f(H)}b(e.1n){8.1v.f(H)}}},3a:c(C){h E={1e:10,1h:10},D=8.o.21(),B=17.1E.2D(),A=17.1E.21(),G={k:"q",i:"p"};3i(h F 3Q G){b((C[F]+D[G[F]]-B[F])>A[G[F]]){C[F]=C[F]-(D[G[F]]+(2*8.9.1g[F=="k"?"x":"y"]));b(8.n){E[e.3A[G[F]]]=1l}}}O{R:C,1r:E}}});P.11(X,{45:c(G,H){h F=23[2]||8.9,B=F.1o,E=F.1i,D=s r("57",{u:"64"+H.2B(),q:E+"j",p:E+"j"}),A={i:(H.3I(0)=="t"),k:(H.3I(1)=="l")};b(D&&D.3h&&D.3h("2d")){G.N(D);h C=D.3h("2d");C.54=F.1L;C.53((A.k?B:E-B),(A.i?B:E-B),B,0,6a.52*2,1l);C.51();C.3F((A.k?B:0),0,E-B,E);C.3F(0,(A.i?B:0),E,E-B)}13{G.N(s r("S").f({q:E+"j",p:E+"j",1w:0,2I:0,2m:"3K",R:"3P",4Z:"2o"}).N(s r("v:4Y",{4X:F.1L,4W:"4V",4U:F.1L,4T:(B/E*0.5).4S(2)}).f({q:2*E-1+"j",p:2*E-1+"j",R:"3R",k:(A.k?0:(-1*E))+"j",i:(A.i?0:(-1*E))+"j"})))}}});r.6k({26:c(C,B){C=$(C);h A=P.11({3E:"i k",3q:"4Q-3q",3o:"4O",1L:""},23[2]||{});C.f(e.1n?{4N:"4M:6s.4K.6u(2b=\'"+B+"\'\', 3o=\'"+A.3o+"\')"}:{4J:A.1L+" 30("+B+") "+A.3E+" "+A.3q});O C}});X.4h={Q:c(){e.2J(8);8.2v();h D={};b(8.9.Y){D.2h={1F:0,1H:0}}13{h A=8.15.2t(),C=8.15.3H(),B=17.1E.2D();A.k+=(-1*(C[0]-B[0]));A.i+=(-1*(C[1]-B[1]));D.2h={1F:A.k,1H:A.i}}b(8.9.1m){8.2O(D)}13{8.24(D)}8.1C()}};X.11=c(A){A.m.1P={};P.11(A.m.1P,{Q:X.4h.Q.1j(A),V:A.V.1j(A),1J:e.1J.1j(e,A.m)})};X.3U();',62,406,'||||||||this|options||if|function||Tips|setStyle||var|top|px|left||element|stem|wrapper|height|width|Element|new||className|||||||||||||||||||insert|return|Object|show|position|div|loader|case|hide|images|Prototip|hook||false|extend|title|else||target||document|break|closeButton|mouseout|tooltip|visible|showOn|horizontal|observe|offset|vertical|border|bind|mouseover|true|ajax|fixIE|radius|useEvent|tip|stemInverse|bottom|zIndex|content|iframeShim|margin|hideOn|bindAsEventListener|mouse|stopObserving|delay|hideAfter|tips|viewport|pointerX|clearTimer|pointerY|orientation|remove|fixed|backgroundColor|auto|hideTargets|visibility|prototip|invoke|eventToggle|mouseleave|stemImage|capture|borderTop|borderFrame|prototip_Corner|middle|click|mouseHook|getDimensions|Event|arguments|showDelayed|Prototype|setPngBackground|toolbar|style|mouseenter|null|src|clone||toLowerCase|_inverse|positionStem|fakePointer|none|close|match|png|display|prototip_CornerWrapper|hidden|initialize|mousemove|Browser|wrap|cumulativeOffset|eventPosition|cancelHideAfter|float|iframeShimDimensions|ajaxContentLoading|ajaxHideEvent|isElement|capitalize|eventCheckDelay|getScrollOffsets|addClassName|isString|zIndexTop|build|padding|raise|clearfix|push|body|WebKit419|ajaxShow|convertVersionString|getStyle|unload|window|borderCenter|inverseStem|onComplete|borderMiddle|select|include|default|url|right|loaded|Styles|add|activityLeave|activityEnter|toggleInt|event|hideElement|getPositionWithinViewport|eventShow|100|_update|IE|removeVisible|length|getContext|for|replace|borderColor|borderRow|each|li|sizingMethod|stemWrapper|repeat|_build|_isBuilding|find|parseFloat|9500px|activate|setup|fixSafari2|member|_stemTranslation|hideOthers|require|specialEvent|align|fillRect|dom|cumulativeScrollOffset|charAt|create|block|afterHide|fire|Timer|switch|relative|in|absolute|ajaxContentLoaded|ajaxHide|start|buttonEvent|Action|namespaces|On|toggle|eventHide|getWidth|update|input|prototip_Fill|createCorner|hideAll|addVisibile|borderBottom|_highest|prototip_Between|without|_|toUpperCase|stemBox|deactivate|throw|Methods|REQUIRED_|removeAll|WebKit|Version|userAgent|navigator|opacity|undefined|frameBorder|javascript|iframe|9500|exec|typeof|MSIE|RegExp|script|tagName|area|emptyFunction|head|VML|endsWith|styles|js|behavior|addRule|background|Microsoft|closeButtons|progid|filter|scale|createStyleSheet|no|000000|toFixed|arcSize|strokeColor|1px|strokeWeight|fillcolor|roundrect|overflow||fill|PI|arc|fillStyle|cannot|available|canvas|not|Class|LEFTBOTTOM|BOTTOMLEFT|Tip|vml|BOTTOMRIGHT|leftMiddle|abs|bottomMiddle|TOPLEFT|rightBottom|com|bottomRight|leftBottom|clear|bottomLeft|rightMiddle|catch|microsoft|topMiddle|parentNode|rightTop|clearTimeout|topRight|try|schemas|showTimer|Request|Ajax|shown|hideAfterTimer|while|ajaxTimer|marginTop|loaderTimer|responseText|relatedTarget|both|urn|stop|blur|LEFTTOP|findElement|TOPMIDDLE|TOPRIGHT|RIGHTTOP|RIGHTMIDDLE|RIGHTBOTTOM|REQUIRED_Prototype|BOTTOMMIDDLE|hideAction|close_hover|LEFTMIDDLE|textarea|isNumber|_captureTroubleElements|br|cornerCanvas|bl|indexOf|tr|tl|prototip_CornerWrapperBottomRight|Math|cloneNode|prototip_CornerWrapperBottomLeft|prototip_CornerWrapperTopRight|times|prototip_BetweenCorners|prototip_CornerWrapperTopLeft|parseInt|test|ul|addMethods|inline|MIDDLE|prototip_StemImage|prototip_StemBox|requires|prototip_StemWrapper|prototip_Stem|DXImageTransform|gif|AlphaImageLoader|prototipLoader|evaluate|https'.split('|'),0,{}));


var Protofade = Class.create({

	initialize: function(element, options) {		
		this.options = {
      		duration: 1,
			delay: 2,
			randomize: false,
			autostart:true,
			controls:false,
			updatefunction: false,
			eSquare:false,
			eRows: 3, 
			eCols: 5,
			eColor: '#FFFFFF'
    	}
		Object.extend(this.options, options || {});

    	this.element        = $(element);
		this.slides			= this.element.childElements();
		this.num_slides		= this.slides.length;		
		this.current_slide 	= (this.options.randomize) ? (Math.floor(Math.random()*this.num_slides)) : 0;
		this.end_slide		= this.num_slides - 1;
		
		this.slides.invoke('hide');
		this.slides[this.current_slide].show();
				
		if (this.options.autostart) { 
			this.startSlideshow();
		}				
		if (this.options.controls) {
			this.addControls();
		}
		if (this.options.eSquare) {
			this.buildEsquare();
		}
	},
	
	addControls: function() {
		this.wrapper 		= this.element.up();
		this.controls		= new Element('div', { 'class': 'controls' });
		this.wrapper.insert(this.controls);
		
		this.btn_next 		= new Element('a', { 'class': 'next', 'title': 'Next', href: '#' }).update('Next');
		this.btn_previous	= new Element('a', { 'class': 'previous', 'title': 'Previous', href: '#' }).update('Previous');
		this.btn_start		= new Element('a', { 'class': 'start', 'title': 'Start', href: '#' }).update('Start');
		this.btn_stop		= new Element('a', { 'class': 'stop', 'title': 'Stop', href: '#' }).update('Stop');
		
		this.btns = [this.btn_previous, this.btn_next, this.btn_start, this.btn_stop];
		this.btns.each(function(el){
			this.controls.insert(el);
		}.bind(this));
		
		this.btn_previous.observe('click', this.moveToPrevious.bindAsEventListener(this));
		this.btn_next.observe('click', this.moveToNext.bindAsEventListener(this));
		this.btn_start.observe('click', this.startSlideshow.bindAsEventListener(this));
		this.btn_stop.observe('click', this.stopSlideshow.bindAsEventListener(this));
	},
	
	buildEsquare: function() {		
		this.eSquares 	= [];
		var elDimension	 	= this.element.getDimensions();
		var elWidth  		= elDimension.width;
		var elHeight 		= elDimension.height;
				
		var sqWidth 		= elWidth / this.options.eCols;
		var sqHeight 		= elHeight / this.options.eRows;
	
		$R(0, this.options.eCols-1).each(function(col) {
			this.eSquares[col] = [];							 	
			$R(0, this.options.eRows-1).each(function(row) {
				var sqLeft = col * sqWidth;
			    var sqTop  = row * sqHeight;
				this.eSquares[col][row] = new Element('div').setStyle({
 														    opacity: 0, backgroundColor: this.options.eColor,
															position: 'absolute', 'z-index': 5,
															left: sqLeft + 'px', top: sqTop + 'px',
															width: sqWidth + 'px', height: sqHeight + 'px'		
														});
				this.element.insert(this.eSquares[col][row]);				 							 										 
			}.bind(this))
		}.bind(this));			
	},

	startSlideshow: function(event) {
		if (event) { Event.stop(event); }
		if (!this.running)	{
			this.executer = new PeriodicalExecuter(function(){
	  			this.updateSlide(this.current_slide+1);
	 		}.bind(this),this.options.delay);
			this.running=true;
		}
	},
	
	stopSlideshow: function(event) {	
		if (event) { Event.stop(event); } 
		if (this.executer) { 
			this.executer.stop();
			this.running=false;
		}	 
	},

	moveToPrevious: function (event) {
		if (event) { Event.stop(event); }
		this.stopSlideshow();
  		this.updateSlide(this.current_slide-1);
	},

	moveToNext: function (event) {
		if (event) { Event.stop(event); }
		this.stopSlideshow();
  		this.updateSlide(this.current_slide+1);
	},
	
	updateSlide: function(next_slide) {		
		if (next_slide > this.end_slide) { 
			next_slide = 0; 
		} 
		else if ( next_slide == -1 ) {
			next_slide = this.end_slide;
		}	
		this.fadeInOut(next_slide, this.current_slide);		

		if (Object.isFunction(this.options.updatefunction)) {
			updatefunction = this.options.updatefunction;
			updatefunction(next_slide);
		}
	},

 	fadeInOut: function (next, current) {		
		new Effect.Parallel([
			new Effect.Fade(this.slides[current], { sync: true }),
			new Effect.Appear(this.slides[next], { sync: true }) 
  		], { duration: this.options.duration });
		
		if (this.options.eSquare) {			
			$R(0, this.options.eCols-1).each(function(col) {	 						 	
				$R(0, this.options.eRows-1).each(function(row) {
					var eSquare = this.eSquares[col][row];
					var delay = Math.random() * 150;				
					setTimeout(this.delayedAppear.bind(this, eSquare), delay);
				}.bind(this))
			}.bind(this));	
		}
		
		this.current_slide = next;		
	},
	
	delayedAppear: function(eSquare)	{
		var opacity = Math.random();
		new Effect.Parallel([ 
			new Effect.Appear ( eSquare, { from: 0, to: opacity, duration: this.options.duration/4 } ),
			new Effect.Appear ( eSquare, { from: opacity, to: 0, duration: this.options.duration/1.25} )
		], { sync: false });			
	}

});

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 E={4L:6(){Q.N(1i,\'4v\',Q.51)},3s:6(f){7 g=17,G=1i,1Z=6Q;5(!g.20||!g.4b)B;5(3M(f)==\'4f\')f=17.20(f);5(f==14||1Z.3b.2v(\'5H\')!=-1||((1Z.3b.2v(\'5l\')!=-1||1Z.3b.2v(\'6n\')!=-1)&&!(3M(4O)!="6y"&&4O.6z))||1Z.65==\'67\'||(1Z.6d.2v(\'5h\')!=-1&&1Z.3b.2v(\'5J\')!=-1))B;5(f.1G){f.1G();B};5(!f.1W||f.1W==\'\'){7 h="6h",c=1;1E(17.20(h+c)!=14){c++};f.1W=h+c}7 k=f.1W;f.3n=2n 5E();7 l=f.3n;l.1K={6G:[\'-1s\',0],5r:[0,\'-1s\'],5f:[\'1s\',0],5m:[0,\'1s\'],5w:[0,\'-1p\'],5M:[0,\'1p\'],5Z:[0,\'-52\'],66:[0,\'+52\']};l.3R=["-2s","2s"];l.3z=["-2s","2s"];7 m=Z(\'6e\',C),D=Z(\'6c\',C),H=Z(\'6m\',C),18=Z(\'6O\',C);7 o=Z(\'5x\',C),1g=Z(\'5O\',C),2M=8;18.A.1v=\'4B 4P 5F\';18.1N();f.19.4W=\'2w\';1g.A.6F="6J";1g.A.1x="4j";1g.A.T="4j";1g.A.1P="3X";1g.A.3F="-6u";1g.1N();7 p=f.R,4X=f.1e;2c(f,18,\'16\',[\'1v-12-T\',\'1v-26-T\',\'1v-13-T\',\'1v-1R-T\']);7 q=f.R,4g=f.1e,3A=4X-4g,3C=p-q;7 s=(f.1T)?f.1T:0,5b=(f.1S)?f.1S:0;7 t=17.3O.1k,3S=/#([^#.]*)$/;7 u=[\'5B\',\'60\',\'5c\'];l.V=[];l.21=[];l.5s=l.O=[];l.5A=l.1M=[];l.1u=[8,8];l.W=[];l.1H=[0,0];l.1m=[];l.3x=[];l.X=[];1E(f.4M){m.Y(f.4M)};m.Y(o);f.Y(D);f.Y(18);5(L(f,\'1P\')!=\'3X\')f.19.1P="37";7 w=L(f,\'6p-6r\');f.19.4d=\'12\';D.A.T="4x";D.A.1x="4x";D.A.13="16";D.A.12="16";2c(f,18,"16",[\'J-12\',\'J-13\',\'J-26\',\'J-1R\']);7 x=f.1e,4e=f.R,3p;3p=D.R;D.A.5g="6b 4P 6I";5(D.R>3p)2M=C;D.A.5j="16";2c(18,f,8,[\'J-12\',\'J-13\',\'J-26\',\'J-1R\']);1o(D);1o(f);l.X[0]=D.1f-f.1f;l.X[2]=D.1h-f.1h;f.19.53=L(f,"J-1R");f.19.4G=L(f,"J-26");1o(D);1o(f);l.X[1]=D.1f-f.1f;l.X[3]=D.1h-f.1h;f.19.53=L(18,"J-13");f.19.4G=L(18,"J-12");7 y=l.X[2]+l.X[3],3E=l.X[0]+l.X[1];D.19.4d=w;2c(f,D,8,[\'J-12\',\'J-26\',\'J-13\',\'J-1R\']);H.A.T=f.1e+\'F\';H.A.1x=f.R+\'F\';D.A.T=x+\'F\';D.A.1x=4e+\'F\';H.A.1P=\'3X\';H.A.13=\'16\';H.A.12=\'16\';D.Y(m);f.Y(H);H.Y(1g);m.A.1P=\'37\';D.A.1P=\'37\';m.A.13="0";m.A.T="4y%";D.A.4W=\'2w\';D.A.12="-"+l.X[2]+"F";D.A.13="-"+l.X[0]+"F";l.3T=1g.R;l.2G=6(){7 a=m.5Q,2H=6j=0;1q(7 i=0;i<a.4A;i++){5(a[i].1e){2H=11.1Y(a[i].1e,2H)}};l.O[0]=((l.W[1]&&!l.1m[1])||l.21[1])?f.1e-l.1H[0]:f.1e;l.1M[0]=2H+y;B l.1M[0]};l.2K=6(){l.O[1]=((l.W[0]&&!l.1m[0])||l.21[0])?f.R-l.1H[1]:f.R;l.1M[1]=m.R+3E-2;B l.1M[1]};l.4D=6(){m.A.3I=\'6g\';m.A.3I=\'5t\'};l.3K=6(){D.A.T=(2M)?(l.O[0]-y-3A)+\'F\':l.O[0]+\'F\'};l.3U=6(){D.A.1x=(2M)?(l.O[1]-3E-3C)+\'F\':l.O[1]+\'F\'};l.2m=6(){l.2G();l.2K();H.2E=2n 3v();7 a=H.2E;2m(a,\'6N\');a.2i=[1a(L(a.4,\'J-13\')),1a(L(a.4,\'J-1R\'))];a.4.A.J=\'16\';a.4.K=0;a.4.2O=C;a.4.2a=1;m.4h=a.4;3o(a,0);l.1H[0]=a.1b.1e;l.3K();H.2Q=2n 3v();7 b=H.2Q;2m(b,\'5p\');b.2i=[1a(L(b.4,\'J-12\')),1a(L(b.4,\'J-26\'))];b.4.A.J=\'16\';b.4.K=0;b.4.2O=8;b.4.2a=0;m.5D=b.4;5(G.4T)b.4.A.1P=\'37\';3o(b,0);l.1H[1]=b.1b.R;l.3U();H.A.1x=f.R+\'F\';b.2p=Z(\'68\');H.Y(b.2p);b.2p.3r=6(){b.4.2S=C;l.1Q=b.4;b.4.2U=C;b.4.29=8;H.2E.4.29=8;E.N(g,\'3G\',2x);E.N(g,\'2g\',2W);E.N(g,\'2X\',2F);B 8}};l.1Q=14;l.2m();m.57(o);5(!Q.28(f,\'49\',2f)||!Q.28(f,\'4a\',2f)){f.5C=2f};Q.28(f,\'49\',2f);Q.28(f,\'4a\',2f);f.5G(\'5I\',\'0\');Q.N(f,\'5K\',6(e){5(f.2Z)B;5(!e){7 e=G.1w};7 a=e.4k;l.4u=a;l.27();5(l.1K[\'1L\'+a]&&!1i.4T){f.1c(l.1K[\'1L\'+a][0],l.1K[\'1L\'+a][1],C);5(e.1J)e.1J();B 8}});Q.N(f,\'6q\',6(e){5(f.2Z)B;5(!e){7 e=G.1w};7 a=e.4k;5(l.1K[\'1L\'+a]){f.1c(l.1K[\'1L\'+a][0],l.1K[\'1L\'+a][1],C);5(e.1J)e.1J();B 8}});Q.N(f,\'6s\',6(){l.4u=8});Q.N(g,\'2X\',2A);Q.N(f,\'6w\',6(e){5(!e)e=G.1w;7 a=(e.1A)?e.1A:(e.1n)?e.1n:8;5(!a||(a.1r&&a.1r.U(31("\\\\64\\\\b"))))B;l.4i=e.2r;l.4t=e.2k;33();1o(f);2A();E.N(g,\'2g\',3V);l.2u=[f.1h+10,f.1h+l.O[0]-10,f.1f+10,f.1f+l.O[1]-10]});6 3V(e){5(!e)e=G.1w;7 a=e.2r,3B=e.2k,3j=a+l.3D,3c=3B+l.3d;l.3e=(3j<l.2u[0]||3j>l.2u[1])?1:0;l.3f=(3c<l.2u[2]||3c>l.2u[3])?1:0;l.3k=a-l.4i;l.3m=3B-l.4t;l.36=(l.3k>40)?1:(l.3k<-40)?-1:0;l.39=(l.3m>40)?1:(l.3m<-40)?-1:0;5((l.36!=0||l.39!=0)&&!l.1U)l.1U=G.3a(6(){5(l.36==0&&l.39==0){G.2l(l.1U);l.1U=8;B};33();5(l.3e==1||l.3f==1)f.1c((l.36*l.3e)+"s",(l.39*l.3f)+"s",C)},45)};6 2A(){E.2d(g,\'2g\',3V);5(l.1U)G.2l(l.1U);l.1U=8;5(l.44)G.4V(l.44);5(l.46)G.2l(l.46)};6 33(){l.3D=(G.4Z)?G.4Z:(g.2e&&g.2e.1S)?g.2e.1S:0;l.3d=(G.54)?G.54:(g.2e&&g.2e.1T)?g.2e.1T:0};f.1G=6(a){H.2C();5(H.M[1]()===0||H.M[0]()===0)B;m.A.J=\'4B\';7 b=l.W[0],4p=l.W[1],47=H.2E,2t=H.2Q,2V,2J,2z=[];H.A.T=f.1e-3A+\'F\';H.A.1x=f.R-3C+\'F\';2z[0]=l.O[0];2z[1]=l.O[1];l.W[0]=l.2G()>l.O[0];l.W[1]=l.2K()>l.O[1];7 c=(b!=l.W[0]||4p!=l.W[1]||2z[0]!=l.O[0]||2z[1]!=l.O[1])?C:8;47.1b.3H(l.W[1]);2t.1b.3H(l.W[0]);2V=(l.W[1]||l.21[1]);2J=(l.W[0]||l.21[0]);l.2G();l.2K();l.3U();l.3K();5(!l.W[0]||!l.W[1]||l.1m[0]||l.1m[1])2t.2p.1N();1l 2t.2p.2C();5(2V)2N(47,(2J&&!l.1m[0])?l.1H[1]:0);1l m.A.13="0";5(2J)2N(2t,(2V&&!l.1m[1])?l.1H[0]:0);1l m.A.12="0";5(c&&!a)f.1G(C);m.A.J=\'16\';l.1u[0]=l.1u[1]=8};f.62=f.1c=6(a,b,c){7 d=[[8,8],[8,8]],P;5((a||a===0)&&l.V[0]){a=3L(a,0);P=H.2Q.4;P.1d=(c)?11.22(11.1Y(P.1I,P.1d-a),0):-a;P.3Q();d[0]=[-P.1d-P.24,-P.1I]}5((b||b===0)&&l.V[1]){b=3L(b,1);P=H.2E.4;P.1d=(c)?11.22(11.1Y(P.1I,P.1d-b),0):-b;P.3Q();d[1]=[-P.1d-P.24,-P.1I]}5(!c)l.1u[0]=l.1u[1]=8;B d};f.2Y=6(a){5(a==14||!59(a))B;7 b=48(a);f.1c(b[0]+l.X[2],b[1]+l.X[0],8);f.1c(0,0,C)};2c(18,f,\'16\',[\'1v-12-T\',\'1v-26-T\',\'1v-13-T\',\'1v-1R-T\']);f.57(18);f.1T=0;f.1S=0;f.2I=C;30(f,\'6i\',8);f.1G();f.1c(5b,s,C);5(t.U(3S)){f.2Y(g.20(t.U(3S)[1]))};l.5L=G.3a(6(){7 n=1g.R;5(n!=l.3T){f.1G();l.3T=n}},5N);6 3L(v,i){7 a=v.5P();v=5i(a);B 1a((a.U(/p$/))?v*l.O[i]*0.9:(a.U(/s$/))?v*l.O[i]*0.1:v)}6 41(a){7 a=a.6x(\'-\'),42=a[0],i;1q(i=1;3q=a[i];i++){42+=3q.6B(0).5U()+3q.5z(1)}B 42}6 L(a,b){5(G.4m)B G.4m(a,14).5W(b);5(a.4o)B a.4o[41(b)];B 8};6 2c(a,b,c,d){7 e=2n 3v();1q(7 i=0;i<d.4A;i++){e[i]=41(d[i]);b.19[e[i]]=L(a,d[i],e[i]);5(c)a.19[e[i]]=c}};6 Z(b,c){7 d=g.4b(\'4q\');d.1W=k+\'1L\'+b;d.1r=(c)?b:b+\' 5Y\';d.M=[6(){B d.1e},6(){B d.R}];d.2h=[6(a){d.A.T=a},6(a){d.A.1x=a}];d.4s=[6(){B L(d,"12")},6(){B L(d,"13")}];d.15=[6(a){d.A.12=a},6(a){d.A.13=a}];d.1N=6(){d.A.2j="2w"};d.2C=6(a){d.A.2j=(a)?L(a,\'2j\'):"5d"};d.A=d.19;B d};6 2m(a,b){a.1b=Z(b+\'5e\');a.2o=Z(b+\'5k\');a.25=Z(b+\'5o\');a.4=Z(b+\'5q\');a.1V=Z(b+\'5u\');a.1t=Z(b+\'5y\');H.Y(a.1b);a.1b.Y(a.4);a.1b.Y(a.2o);a.1b.Y(a.25);a.4.Y(a.1V);a.4.Y(a.1t)};6 3o(b,c){7 d=b.1b,4=b.4,i=4.2a;4.1O=b.2i[0];4.2P=d;4.D=D;4.4w=m;4.24=0;2N(b,c,C);4.3h=6(){4.K=(11.22(11.1Y(4.K,0),4.2b));4.1d=1a((4.K/4.32)*4.1I);4.24=(4.K==0)?0:(4.K==4.2b)?0:4.24;4.15[i](4.K+4.1O+"F");m.15[i](4.1d+4.24+"F")};4.3Q=6(){4.K=1a((4.1d*4.32)/4.1I);4.24=4.1d-1a((4.K/4.32)*4.1I);4.K=(11.22(11.1Y(4.K,0),4.2b));4.15[i](4.K+4.1O+"F");4.15[i](4.K+4.1O+"F");m.15[i](4.1d+"F")};l.2B=L(4,\'z-4F\');4.A.3F=(l.2B=="5R"||l.2B=="0"||l.2B==\'5T\')?2:l.2B;D.A.3F=L(4,\'z-4F\');4.3r=6(){4.2U=C;l.1Q=4;4.2S=8;4.29=8;E.N(g,\'3G\',2x);E.N(g,\'2g\',2W);E.N(g,\'2X\',2F);B 8};4.5V=2A;d.3r=d.5X=6(e){5(!e){7 e=G.1w}5(e.1A&&(e.1A==b.1V||e.1A==b.1t||e.1A==b.4))B;5(e.1n&&(e.1n==b.1V||e.1n==b.1t||e.1n==b.4))B;7 a,1X=[];33();l.27();1o(4);a=(4.2O)?e.2k+l.3d-4.1f:e.2r+l.3D-4.1h;1X[4.2a]=(a<0)?l.3z[0]:l.3z[1];1X[1-4.2a]=0;f.1c(1X[0],1X[1],C);5(e.61!="63"){2A();l.44=G.4H(6(){l.46=G.3a(6(){f.1c(1X[0],1X[1],C)},4J)},69)}B 8};d.3H=6(r){5(r){d.2C(f);l.1m[i]=(L(d,"2j")=="2w")?C:8;5(!l.1m[i])4.2C(f);1l 4.1N();l.V[i]=C;30(d,"","4N")}1l{d.1N();4.1N();l.21[i]=(L(d,"2j")!="2w")?C:8;l.V[i]=8;4.K=0;m.15[i](\'16\');30(d,"4N","")}D.15[1-i]((l.3x[i]&&(r||l.21[i])&&!l.1m[i])?l.1H[1-i]-l.X[i*2]+"F":"-"+l.X[i*2]+"F")};d.6f=2x};6 2N(a,b,c){7 d=a.1b,4=a.4,2o=a.2o,1V=a.1V,25=a.25,1t=a.1t,i=4.2a;d.2h[i](H.M[i]()-b+\'F\');d.15[1-i](H.M[1-i]()-d.M[1-i]()+\'F\');l.3x[i]=(1a(d.4s[1-i]())===0)?C:8;a.3l=a.2i[0]+a.2i[1];a.3J=1a((d.M[i]()-a.3l)*0.6l);4.4R=11.22(11.1Y(11.22(1a(l.O[i]/l.1M[i]*d.M[i]()),a.3J),45),a.3J);4.2h[i](4.4R+\'F\');4.2b=d.M[i]()-4.M[i]()-a.3l;4.K=11.22(11.1Y(0,4.K),4.2b);4.15[i](4.K+4.1O+\'F\');4.1I=D.M[i]()-l.1M[i];4.32=4.2b;2o.2h[i](d.M[i]()-25.M[i]()+\'F\');1V.2h[i](4.M[i]()-1t.M[i]()+\'F\');1t.15[i](4.M[i]()-1t.M[i]()+\'F\');25.15[i](d.M[i]()-25.M[i]()+\'F\');5(!c)4.3h();l.4D()};l.27=6(){D.1T=0;D.1S=0;f.1T=0;f.1S=0};Q.N(G,\'4v\',6(){5(f.2I)f.1G()});Q.N(G,\'6o\',6(){5(f.3t)G.4V(f.3t);f.3t=G.4H(6(){5(f.2I)f.1G()},4J)});1q(7 j=0,3i;3i=u[j];j++){7 z=f.34(3i);1q(7 i=0,2R;2R=z[i];i++){E.N(2R,\'6A\',6(){f.2Z=C});E.N(2R,\'6C\',6E=6(){f.2Z=8})}};6 2x(){B 8};6 2W(e){5(!e){7 e=G.1w};7 a=l.1Q,I,3N,6K,6M;5(a==14)B;5(!E.56&&!e.6P)2F();3N=(a.2S)?2:1;1q(7 i=0;i<3N;i++){I=(i==1)?a.4w.4h:a;5(a.2U){5(!I.29){l.27();1o(I);1o(I.2P);I.58=e.2k-I.1f;I.5a=e.2r-I.1h;I.4E=I.K;I.29=C};I.K=(I.2O)?e.2k-I.58-I.2P.1f-I.1O:e.2r-I.5a-I.2P.1h-I.1O;5(a.2S)I.K=I.K+(I.K-I.4E);I.3h()}1l I.29=8}};6 2F(){5(l.1Q!=14){l.1Q.2U=8}l.1Q=14;E.2d(g,\'3G\',2x);E.2d(g,\'2g\',2W);E.2d(g,\'2X\',2F)};6 2f(e){5(!e)e=G.1w;5(!Q.2I)B;7 a=Q,35,3P,1C=8,1j=0,1D;l.27();3g=(e.1A)?e.1A:(e.1n)?e.1n:Q;5(3g.1W&&3g.1W.U(/6a/))1C=C;5(e.4K)1j=-e.4K;5(e.4r)1j=e.4r;1j=(1j<0)?-1:+1;1D=(1j<0)?0:1;l.1u[1-1D]=8;5((l.1u[1D]&&!1C)||(!l.V[0]&&!l.V[1]))B;5(l.V[1]&&!1C)1B=f.1c(8,l.3R[1D],C);35=!l.V[1]||1C||(l.V[1]&&((1B[1][0]==1B[1][1]&&1j>0)||(1B[1][0]==0&&1j<0)));5(l.V[0]&&(!l.V[1]||1C))1B=f.1c(l.3R[1D],8,C);3P=!l.V[0]||(l.V[0]&&l.V[1]&&35&&!1C)||(l.V[0]&&((1B[0][0]==1B[0][1]&&1j>0)||(1B[0][0]==0&&1j<0)));5(35&&3P&&!1C)l.1u[1D]=C;1l l.1u[1D]=8;5(e.1J)e.1J();B 8};6 59(a){1E(a.1y){a=a.1y;5(a==f)B C}B 8};6 1o(a){7 b=a,23=1z=0;7 c="";5(b.2T){1E(b){23+=b.4c;1z+=b.4Q;b=b.2T;c+=1z+" "}}1l 5(b.x){23+=b.x;1z+=b.y}a.1h=23;a.1f=1z};6 48(a){7 b=a;23=1z=0;1E(!b.R&&b.1y&&b!=m&&L(b,\'3I\')=="6k"){b=b.1y}5(b.2T){1E(b!=m){23+=b.4c;1z+=b.4Q;b=b.2T}}B[23,1z]};6 30(a,b,c){5(!a.1r)a.1r=\'\';7 d=a.1r;5(b&&!d.U(31("(^|\\\\s)"+b+"($|\\\\s)")))d=d.3W(/(\\S$)/,\'$1 \')+b;5(c)d=d.3W(31("((^|\\\\s)+"+c+")+($|\\\\s)","g"),\'$2\').3W(/\\s$/,\'\');a.1r=d}},51:6(){5(E.38)1i.2l(E.38);7 d=/#([^#.]*)$/,2q=/(.*)#.*$/,5v,i,1F,4U=17.34("a"),2y=17.3O.1k;5(2y.U(2q))2y=2y.U(2q)[1];1q(i=0;1F=4U[i];i++){5(1F.1k&&1F.1k.U(d)&&1F.1k.U(2q)&&2y===1F.1k.U(2q)[1]){1F.3Y=C;E.N(1F,\'6t\',6(e){5(!e)e=1i.1w;7 a=(e.1n)?e.1n:Q;1E(!a.3Y&&a.1y){a=a.1y};5(!a.3Y)B;7 b=17.20(a.1k.U(d)[1]),2L=8;5(b==14)b=(b=17.6v(a.1k.U(d)[1])[0])?b:14;5(b!=14){7 c=b;1E(c.1y){c=c.1y;5(c.2Y){c.2Y(b);2L=c}};5(2L){5(e.1J)e.1J();17.3O.1k="#"+a.1k.U(d)[1];2L.3n.27();B 8}}})}};E.3Z();5(1i.4Y)1i.4Y()},3Z:6(){5(E.4z)B;E.4z=C;7 a=E.50(17.34("5n")[0],"4q",\'4l\');1q(7 i=0,3u;3u=a[i];i++)E.3s(3u)},50:6(a,b,c){5(3M(a)==\'4f\')a=17.20(a);5(a==14)B 8;7 d=2n 31("(^|\\\\s)"+c+"($|\\\\s)"),6D,3w=[],43=0;7 e=a.34(b);1q(7 i=0,2D;2D=e[i];i++){5(2D.1r&&2D.1r.U(d)){3w[43]=2D;43++}};B 3w},38:1i.3a(6(){7 a=17.20(\'4l-6H\');5(a!=14){E.3Z();1i.2l(E.38)}},4y),N:6(a,b,c){5(!E.28(a,b,c)&&a.55){a.55(\'4C\'+b,c)}},28:6(a,b,c){5(a.3y){a.3y(b,c,8);E.56=C;1i.3y("6L",6(){E.2d(a,b,c)},8);B C}1l B 8},2d:6(a,b,c){5(!E.4n(a,b,c)&&a.4I)a.4I(\'4C\'+b,c)},4n:6(a,b,c){5(a.4S){a.4S(b,c,8);B C}1l B 8}};6 5S(a){E.3s(a)};E.4L();',62,425,'||||sBr|if|function|var|false||||||||||||||||||||||||||||sY|return|true|mDv|fleXenv|px|wD|tDv|movBr|padding|curPos|getStyle|getSize|addTrggr|cntRSize|Bar|this|offsetHeight||width|match|scroller|reqS|paddings|appendChild|createDiv||Math|left|top|null|setPos|0px|document|pDv|style|parseInt|sDv|contentScroll|trgtScrll|offsetWidth|yPos|fDv|xPos|window|delta|href|else|forcedHide|srcElement|findPos||for|className||sSBr|edge|border|event|height|parentNode|curtop|target|scrollState|hoverH|iNDx|while|anchoR|scrollUpdate|barSpace|mxScroll|preventDefault|keyAct|_|cntSize|fHide|minPos|position|goScroll|bottom|scrollLeft|scrollTop|tSelectFunc|sFBr|id|mV|max|nV|getElementById|forcedBar|min|curleft|targetSkew|sSDv|right|mDPosFix|addChckTrggr|moved|indx|maxPos|copyStyles|remTrggr|documentElement|mWheelProc|mousemove|setSize|barPadding|visibility|clientY|clearInterval|createScrollBars|new|sFDv|jBox|urlExt|clientX||hBr|mTBox|indexOf|hidden|retFalse|urlBase|cPSize|intClear|barZ|fShow|pusher|vrt|mMouseUp|getContentWidth|maxCWidth|fleXcroll|hUpReq|getContentHeight|eScroll|stdMode|updateScroll|vertical|ofstParent|hrz|formItem|scrollBoth|offsetParent|clicked|vUpReq|mMoveBar|mouseup|scrollToElement|focusProtect|classChange|RegExp|sRange|pageScrolled|getElementsByTagName|vEdge|sXdir|relative|catchFastInit|sYdir|setInterval|userAgent|mdY|yScrld|mOnXEdge|mOnYEdge|hElem|doScrollPos|inputName|mdX|xAw|padLoss|yAw|fleXdata|prepareScroll|mHeight|parT|onmousedown|fleXcrollMain|refreshTimeout|tgDiv|Array|retArray|forcedPos|addEventListener|baseAct|brdWidthLoss|mY|brdHeightLoss|xScrld|padHeightComp|zIndex|selectstart|setVisibility|display|baseProp|setWidth|calcCScrollVal|typeof|maxx|location|hEdge|contentScrollPos|wheelAct|uReg|zTHeight|setHeight|tSelectMouse|replace|absolute|fleXanchor|initByClass||camelConv|reT|key|barClickRetard||barClickScroll|vBr|findRCpos|mousewheel|DOMMouseScroll|createElement|offsetLeft|textAlign|postHeight|string|intlWidth|vBar|inMposX|1em|keyCode|flexcroll|getComputedStyle|remChckTrggr|currentStyle|reqV|div|detail|getPos|inMposY|pkeY|load|scrlTrgt|100px|100|initialized|length|1px|on|fixIEDispBug|inCurPos|index|paddingLeft|setTimeout|detachEvent|80|wheelDelta|fleXcrollInit|firstChild|flexinactive|HTMLElement|solid|offsetTop|aSize|removeEventListener|opera|anchorList|clearTimeout|overflow|brdWidth|onfleXcrollRun|pageXOffset|getByClassName|globalInit|100p|paddingTop|pageYOffset|attachEvent|w3events|removeChild|pointerOffsetY|isddvChild|pointerOffsetX|oScrollX|select|visible|base|_39|borderBottom|Mac|parseFloat|borderBottomWidth|basebeg|AppleWebKit|_40|body|baseend|hscroller|bar|_38|containerSize|block|barbeg|matcH|_33|domfixdiv|barend|substr|contentSize|textarea|onmousewheel|hBar|Object|blue|setAttribute|OmniWeb|tabIndex|MSIE|keydown|sizeChangeDetect|_34|2500|zoomdetectdiv|toString|childNodes|auto|CSBfleXcroll|normal|toUpperCase|onmouseover|getPropertyValue|ondblclick|scrollgeneric|_36|input|type|commitScroll|dblclick|bscrollgeneric|vendor|_35|KDE|scrollerjogbox|425|_hscroller|2px|mcontentwrapper|platform|contentwrapper|onmouseclick|none|flex__|flexcrollactive|compPad|inline|75|scrollwrapper|Safari|resize|text|keypress|align|keyup|click|999|getElementsByName|mousedown|split|undefined|prototype|focus|charAt|blur|clsnm|onblur|fontSize|_37|init|black|12px|xScroll|unload|yScroll|vscroller|copyholder|button|navigator'.split('|'),0,{}))

function limeMain(element_list) {
	$$(element_list).each( function(el) {
		$w(el.className).each(function(it){
			yt = it.replace('j-lime-', '');
			if (it.length != yt.length) yt = Number(yt);
		});
	
		el.observe('keyup', function(ev) {
			va = el.getValue();
			if (va.length > yt) { 
				alert('Dosiahli ste maximálny počet znakov('+yt+') ktoré môžete zadať!');
				el.setValue(va.slice(0,yt));
			}
		});
	});
}

function savoDoset(element, value) {
	//IE 7 textarea bug fix
	if ((element.tagName.toLowerCase() == 'textarea') && (element.value == '')) {  
		return;
	} 
	element.value = value;
}

function savoReset(element) {
  
  if (element.value == '') {
    savoDoset(element, element.readAttribute('title'));
  }
}

function savoMain(element_list) {
	$$(element_list).each(function(element) {
		element.observe('click', function(event) {
			if (element.value == element.readAttribute('title')) {
				savoDoset(event.element(), '');
			}
		});
		
		element.observe('blur', function(event) {
			savoReset(event.element())
		});
		savoReset(element, true);
	});
}

function autoExpandContract(el) {
	var __heightFromElement = el.offsetHeight;
	var __heightFromCSS = parseInt(getStyleFromCSS(el, 'height'));

	if (__heightFromCSS > 0) {
		__heightFromElement = __heightFromCSS;
	}

	$(el).setStyle({overflow: 'hidden', overflowX: 'auto'});

	el.style.width = getStyleFromCSS(el, 'width')+'px';
	el.style.height = getStyleFromCSS(el, 'height')+'px';

	var dummy_id = Math.floor(Math.random()*99999) + '_dummy';
	var div = document.createElement('div');

	div.setAttribute('id',dummy_id);
	document.body.appendChild(div);
	var dummy = $(dummy_id);

	dummy.style.fontFamily = getStyleFromCSS(el, 'font-family');
	dummy.style.fontWeight = getStyleFromCSS(el, 'font-weight');
	dummy.style.fontSize = getStyleFromCSS(el, 'font-size')+'px';


	if (navigator.userAgent.indexOf('MSIE') !=-1) {
		dummy.style.width = getStyleFromCSS(el, 'width');
	} else {
		dummy.style.width = getStyleFromCSS(el, 'width')+'px';
	}
	dummy.style.padding = getStyleFromCSS(el, 'padding');
	dummy.style.margin = getStyleFromCSS(el, 'margin');
	dummy.style.overflowX = 'auto';
	dummy.style.position = 'absolute';
	dummy.style.top = '0px';
	dummy.style.left = '-9999px';
	dummy.innerHTML = '&nbsp;42';

	var __lineHeight = dummy.offsetHeight;

	var checkExpandContract = function(){
		var html = el.value;

		html = html.replace(/\n/g, '<br />');
		if (dummy.innerHTML != html) {
			dummy.innerHTML = html;
			var __dummyHeight = dummy.offsetHeight;
			var __elHeight = el.offsetHeight;

			if (__elHeight != __dummyHeight) {
				if (__dummyHeight > __heightFromElement) {
					el.style.height = (__dummyHeight+__lineHeight) + 'px';
				} else {
					el.style.height = __heightFromElement+'px';
				}
			}
		}
	}

	var expandElement = function()	{
		interval = window.setInterval(function() {checkExpandContract()}, 250);
	}

	var contractElement = function() {
		clearInterval(interval);
	}

	$(el).observe('focus', expandElement);
	$(el).observe('blur', contractElement);
	checkExpandContract();
}

function getStyleFromCSS(el, style) {
	var value = $(el).getStyle(style);

	if(!value) {
		if(document.defaultView) {
			value = document.defaultView.getComputedStyle(el, null).getPropertyValue(style);
			} else if(el.currentStyle) {
			value = el.currentStyle[style];
			if (value.substring(value.length-2,value.length) == "px") {
				alert('style' + style);
				value = value+'px';
			}
		}
	}
	if(value.length > 0){
		if (value.charAt(value.length-1) == "x") {
			value = parseInt(value.substring(0,value.length-2))
		}
	}
	return value;

}

var FormStyle = {
		
	work: function(element_list) {
		$$('body').each(function(el) {
			el.observe('click', function(){
				Tips.hideAll();
			});
		});
	
		$$(element_list).each(function (el) {
			var select = el.down('select');
			//vytvorim potrebne elementy
			input = new Element('span', {'class': 'formstyle-input'}).insert(new Element('input', {
				'id'   : select.id,
				'name' : select.name,
				'value': select.value,
				'type' : 'hidden',
				'class' : 'h'
			})).insert(new Element('span', {'class': 'formstyle-data'}).update(select.options[select.selectedIndex].text));
			var button = new Element('span', {'class': 'formstyle-button'});
			//vytvorim list ktory bude v tipe
			var list = new Element('span', {'class': 'formstyle-list '+el.classNames().toArray().last() });
			$w(select.className).each(function (className) {list.addClassName(className)});
			select.childElements().each(function (opt) {
				var option = new Element('span').update(opt.innerHTML);
				if (opt.selected) option.addClassName('formstyle-selected');
				$w(opt.className).each(function (className) {option.addClassName(className)});
				
				// nastavenie hoveru
				option.observe('mouseover', function (e) {
					e.stop();
					this.addClassName('formstyle-active');
				}.bindAsEventListener(option));
				option.observe('mouseout', function (e) {
					e.stop();
					this.removeClassName('formstyle-active');
				}.bindAsEventListener(option));
				option.onclick = opt.ondblclick;
				
				// nastavenie clicku -> skrytie tipu, nastavenie hodnoty inputu
				option.observe('click', function (e, value) {
					e.stop();
					var target = e.element();
					this.prototip.hide();
					document.stopObserving('click', this.prototip.fx);
					this.down('span.formstyle-input').down('input').value = value;
					this.down('span.formstyle-input').down('span.formstyle-data').update(target.innerHTML);
					target.up().childElements().invoke('removeClassName', 'formstyle-selected');
					target.addClassName('formstyle-selected');
				}.bindAsEventListener(el, opt.value));
				
				list.insert(option);
			});
			
			list.insert('<b></b>');
			
			Element.remove(select);
			el.insert(input).insert(button);
			new Tip(el, list, {
				hook: {target: 'bottomLeft', tip: 'topLeft'},
				showOn: 'click',
				hideOn: false,
				width: 'auto',
				hideOthers: true,
				offset: { x: 0, y: 2}
			});
			el.prototip.combobox = true;
			
			el.removeClassName('.j-formstyle');
			
		});
	}
}

if (typeof Prototype == 'undefined' || !Prototype.Version.match("1.6")) throw ("Prototype-UI library require Prototype library >= 1.6.0");
if (Prototype.Browser.WebKit) {
    Prototype.Browser.WebKitVersion = parseFloat(navigator.userAgent.match(/AppleWebKit\/([\d\.\+]*)/)[1]);
    Prototype.Browser.Safari2 = (Prototype.Browser.WebKitVersion < 420)
}
if (Prototype.Browser.IE) {
    Prototype.Browser.IEVersion = parseFloat(navigator.appVersion.split(';')[1].strip().split(' ')[1]);
    Prototype.Browser.IE6 = Prototype.Browser.IEVersion == 6;
    Prototype.Browser.IE7 = Prototype.Browser.IEVersion == 7
}
Prototype.falseFunction = function () {
    return false
};
Prototype.trueFunction = function () {
    return true
};
var UI = {
    Abstract: {},
    Ajax: {}
};
Object.extend(Class.Methods, {
    extend: Object.extend.methodize(),
    addMethods: Class.Methods.addMethods.wrap(function (a, b) {
        if (!b) return this;
        if (!b.hasOwnProperty('methodsAdded')) return a(b);
        var c = b.methodsAdded;
        delete b.methodsAdded;
        a(b);
        c.call(b, this);
        b.methodsAdded = c;
        return this
    }),
    addMethod: function (a, b) {
        var c = {};
        c[a] = b;
        return this.addMethods(c)
    },
    method: function (a) {
        return this.prototype[a].valueOf()
    },
    classMethod: function () {
        $A(arguments).flatten().each(function (a) {
            this[a] = (function () {
                return this[a].apply(this, arguments)
            }).bind(this.prototype)
        }, this);
        return this
    },
    undefMethod: function (a) {
        this.prototype[a] = undefined;
        return this
    },
    removeMethod: function (a) {
        delete this.prototype[a];
        return this
    },
    aliasMethod: function (a, b) {
        this.prototype[a] = this.prototype[b];
        return this
    },
    aliasMethodChain: function (a, b) {
        b = b.camelcase();
        this.aliasMethod(a + "Without" + b, a);
        this.aliasMethod(a, a + "With" + b);
        return this
    }
});
Object.extend(Number.prototype, {
    snap: function (a) {
        return parseInt(a == 1 ? this : (this / a).floor() * a)
    }
});
Object.extend(String.prototype, {
    camelcase: function () {
        var a = this.dasherize().camelize();
        return a.charAt(0).toUpperCase() + a.slice(1)
    },
    makeElement: function () {
        var a = new Element('div');
        a.innerHTML = this;
        return a.down()
    }
});
Object.extend(Array.prototype, {
    empty: function () {
        return !this.length
    },
    extractOptions: function () {
        return this.last().constructor === Object ? this.pop() : {}
    },
    removeAt: function (a) {
        var b = this[a];
        this.splice(a, 1);
        return b
    },
    remove: function (a) {
        var b;
        while ((b = this.indexOf(a)) != -1) this.removeAt(b);
        return a
    },
    insert: function (a) {
        var b = $A(arguments);
        b.shift();
        this.splice.apply(this, [a, 0].concat(b));
        return this
    }
});
Element.addMethods({
    getScrollDimensions: function (a) {
        return {
            width: a.scrollWidth,
            height: a.scrollHeight
        }
    },
    getScrollOffset: function (a) {
        return Element._returnOffset(a.scrollLeft, a.scrollTop)
    },
    setScrollOffset: function (a, b) {
        a = $(a);
        if (arguments.length == 3) b = {
            left: b,
            top: arguments[2]
        };
        a.scrollLeft = b.left;
        a.scrollTop = b.top;
        return a
    },
    getNumStyle: function (a, b) {
        var c = parseFloat($(a).getStyle(b));
        return isNaN(c) ? null : c
    },
    appendText: function (a, b) {
        a = $(a);
        b = String.interpret(b);
        a.appendChild(document.createTextNode(b));
        return a
    }
});
document.whenReady = function (a) {
    if (document.loaded) a.call(document);
    else document.observe('dom:loaded', a)
};
Object.extend(document.viewport, {
    getScrollOffset: document.viewport.getScrollOffsets,
    setScrollOffset: function (a) {
        Element.setScrollOffset(Prototype.Browser.WebKit ? document.body : document.documentElement, a)
    },
    getScrollDimensions: function () {
        return Element.getScrollDimensions(Prototype.Browser.WebKit ? document.body : document.documentElement)
    }
});
(function () {
    UI.Options = {
        methodsAdded: function (a) {
            a.classMethod($w(' setOptions allOptions optionsGetter optionsSetter optionsAccessor '))
        },
        setOptions: function (a) {
            if (!this.hasOwnProperty('options')) this.options = this.allOptions();
            this.options = Object.extend(this.options, a || {})
        },
        allOptions: function () {
            var a = this.constructor.superclass,
                ancestor = a && a.prototype;
            return (ancestor && ancestor.allOptions) ? Object.extend(ancestor.allOptions(), this.options) : Object.clone(this.options)
        },
        optionsGetter: function () {
            addOptionsAccessors(this, arguments, false)
        },
        optionsSetter: function () {
            addOptionsAccessors(this, arguments, true)
        },
        optionsAccessor: function () {
            this.optionsGetter.apply(this, arguments);
            this.optionsSetter.apply(this, arguments)
        }
    };

    function addOptionsAccessors(d, e, f) {
        e = $A(e).flatten();
        if (e.empty()) e = Object.keys(d.allOptions());
        e.each(function (b) {
            var c = (f ? 'set' : 'get') + b.camelcase();
            d[c] = d[c] || (f ?
            function (a) {
                return this.options[b] = a
            } : function () {
                return this.options[b]
            })
        })
    }
})();
UI.Carousel = Class.create(UI.Options, {
    options: {
        direction: "horizontal",
        previousButton: ".previous_button",
        nextButton: ".next_button",
        container: ".container",
        scrollInc: "auto",
        disabledButtonSuffix: '_disabled',
        overButtonSuffix: '_over'
    },
    initialize: function (c, d) {
        this.setOptions(d);
        this.element = $(c);
        this.id = this.element.id;
        this.container = this.element.down(this.options.container).firstDescendant();
        this.elements = this.container.childElements();
        this.previousButton = this.options.previousButton == false ? null : this.element.down(this.options.previousButton);
        this.nextButton = this.options.nextButton == false ? null : this.element.down(this.options.nextButton);
        this.posAttribute = (this.options.direction == "horizontal" ? "left" : "top");
        this.dimAttribute = (this.options.direction == "horizontal" ? "width" : "height");
        this.elementSize = this.computeElementSize();
        this.nbVisible = this.currentSize() / this.elementSize;
        var e = this.options.scrollInc;
        if (e == "auto") e = Math.floor(this.nbVisible);
        [this.previousButton, this.nextButton].each(function (a) {
            if (!a) return;
            var b = (a == this.nextButton ? "next_button" : "previous_button") + this.options.overButtonSuffix;
            a.clickHandler = this.scroll.bind(this, (a == this.nextButton ? -1 : 1) * e * this.elementSize);
            a.observe("click", a.clickHandler).observe("mouseover", function () {
                a.addClassName(b)
            }.bind(this)).observe("mouseout", function () {
                a.removeClassName(b)
            }.bind(this))
        }, this);
        this.updateButtons()
    },
    destroy: function ($super) {
        [this.previousButton, this.nextButton].each(function (a) {
            if (!a) return;
            a.stopObserving("click", a.clickHandler)
        }, this);
        this.element.remove();
        this.fire('destroyed')
    },
    fire: function (a, b) {
        b = b || {};
        b.carousel = this;
        return this.element.fire('carousel:' + a, b)
    },
    observe: function (a, b) {
        this.element.observe('carousel:' + a, b.bind(this));
        return this
    },
    stopObserving: function (a, b) {
        this.element.stopObserving('carousel:' + a, b);
        return this
    },
    checkScroll: function (a, b) {
        if (a > 0) a = 0;
        else {
            var c = this.elements.last().positionedOffset()[this.posAttribute] + this.elementSize;
            var d = this.currentSize();
            if (a + c < d) a += d - (a + c);
            a = Math.min(a, 0)
        }
        if (b) this.container.style[this.posAttribute] = a + "px";
        return a
    },
    scroll: function (a) {
        if (this.animating) return this;
        var b = this.currentPosition() + a;
        b = this.checkScroll(b, false);
        a = b - this.currentPosition();
        if (a != 0) {
            this.animating = true;
            this.fire("scroll:started");
            var c = this;

						this.container.morph("opacity:0.5", {
                duration: 0.2,
                afterFinish: function () {
                    c.container.morph(c.posAttribute + ": " + b + "px", {
                        duration: 0.4,
                        delay: 0.2,
                        afterFinish: function () {
                            c.container.morph("opacity:1", {
                                duration: 0.2,
                                afterFinish: function () {
                                    c.animating = false;
                                    c.updateButtons().fire("scroll:ended", {
                                        shift: a / c.currentSize()
                                    })
                                }
                            })
                        }
                    })
                }
            })
        }
        return this
    },
    scrollTo: function (a) {
        if (this.animating || a < 0 || a > this.elements.length || a == this.currentIndex() || isNaN(parseInt(a))) return this;
        return this.scroll((this.currentIndex() - a) * this.elementSize)
    },
    updateButtons: function () {
        this.updatePreviousButton();
        this.updateNextButton();
        return this
    },
    updatePreviousButton: function () {
        var a = this.currentPosition();
        var b = "previous_button" + this.options.disabledButtonSuffix;
        if (this.previousButton.hasClassName(b) && a != 0) {
            this.previousButton.removeClassName(b);
            this.fire('previousButton:enabled')
        }
        if (!this.previousButton.hasClassName(b) && a == null) {
            this.previousButton.addClassName(b);
            this.fire('previousButton:disabled')
        }
    },
    updateNextButton: function () {
        var a = this.currentLastPosition();
        var b = this.currentSize();
        var c = "next_button" + this.options.disabledButtonSuffix;
        if (this.nextButton.hasClassName(c) && a != b) {
            this.nextButton.removeClassName(c);
            this.fire('nextButton:enabled')
        }
        if (!this.nextButton.hasClassName(c) && a <= b) {
            this.nextButton.addClassName(c);
            this.fire('nextButton:disabled')
        }
    },
    computeElementSize: function () {
        return this.elements.first().getDimensions()[this.dimAttribute]
    },
    currentIndex: function () {
        return -this.currentPosition() / this.elementSize
    },
    currentLastPosition: function () {
        if (this.container.childElements().empty()) return 0;
        return this.currentPosition() + this.elements.last().positionedOffset()[this.posAttribute] + this.elementSize
    },
    currentPosition: function () {
        return this.container.getNumStyle(this.posAttribute)
    },
    currentSize: function () {
        return this.container.parentNode.getDimensions()[this.dimAttribute]
    },
    updateSize: function () {
        this.nbVisible = this.currentSize() / this.elementSize;
        var b = this.options.scrollInc;
        if (b == "auto") b = Math.floor(this.nbVisible);
        [this.previousButton, this.nextButton].each(function (a) {
            if (!a) return;
            a.stopObserving("click", a.clickHandler);
            a.clickHandler = this.scroll.bind(this, (a == this.nextButton ? -1 : 1) * b * this.elementSize);
            a.observe("click", a.clickHandler)
        }, this);
        this.checkScroll(this.currentPosition(), true);
        this.updateButtons().fire('sizeUpdated');
        return this
    }
});
UI.Ajax.Carousel = Class.create(UI.Carousel, {
    options: {
        elementSize: -1,
        url: null
    },
    initialize: function ($super, d, e) {
        if (!e.url) throw ("url option is required for UI.Ajax.Carousel");
        if (!e.elementSize) throw ("elementSize option is required for UI.Ajax.Carousel");
        $super(d, e);
        this.endIndex = 0;
        this.hasMore = true;
        this.updateHandler = this.update.bind(this);
        this.updateAndScrollHandler = function (a, b, c) {
            this.update(b, c);
            this.scroll(a)
        }.bind(this);
        this.runRequest.bind(this).defer({
            parameters: {
                from: 0,
                to: Math.ceil(this.nbVisible) - 1
            },
            onSuccess: this.updateHandler
        })
    },
    runRequest: function (a) {
        this.requestRunning = true;
        new Ajax.Request(this.options.url, Object.extend({
            method: "GET"
        }, a));
        this.fire("request:started");
        return this
    },
    scroll: function ($super, a) {
        if (this.animating || this.requestRunning) return this;
        var b = (-a) / this.elementSize;
        if (this.hasMore && b > 0 && this.currentIndex() + this.nbVisible + b - 1 > this.endIndex) {
            var c = this.endIndex + 1;
            var d = Math.ceil(c + this.nbVisible - 1);
            this.runRequest({
                parameters: {
                    from: c,
                    to: d
                },
                onSuccess: this.updateAndScrollHandler.curry(a).bind(this)
            });
            return this
        } else $super(a)
    },
    update: function (a, b) {
        this.requestRunning = false;
        this.fire("request:ended");
        if (!b) b = a.responseJSON;
        this.hasMore = b.more;
        this.endIndex = Math.max(this.endIndex, b.to);
        this.elements = this.container.insert({
            bottom: b.html
        }).childElements();
        return this.updateButtons()
    },
    computeElementSize: function () {
        return this.options.elementSize
    },
    updateSize: function ($super) {
        var a = this.nbVisible;
        $super();
        if (Math.floor(this.nbVisible) - Math.floor(a) >= 1 && this.hasMore) {
            if (this.currentIndex() + Math.floor(this.nbVisible) >= this.endIndex) {
                var b = Math.floor(this.currentIndex() + Math.floor(this.nbVisible) - this.endIndex);
                this.runRequest({
                    parameters: {
                        from: this.endIndex + 1,
                        to: this.endIndex + b
                    },
                    onSuccess: this.updateHandler
                })
            }
        }
        return this
    },
    updateNextButton: function ($super) {
        var a = this.currentLastPosition();
        var b = this.currentSize();
        var c = "next_button" + this.options.disabledButtonSuffix;
        if (this.nextButton.hasClassName(c) && a != b) {
            this.nextButton.removeClassName(c);
            this.fire('nextButton:enabled')
        }
        if (!this.nextButton.hasClassName(c) && a == b && !this.hasMore) {
            this.nextButton.addClassName(c);
            this.fire('nextButton:disabled')
        }
    }
});
