﻿/*
This license text has to stay intact at all times:
fleXcroll Public License Version
Cross Browser Custom Scroll Bar Script by Hesido.
Public version - Free for non-commercial uses.

This script cannot be used in any commercially built
web sites, or in sites that relates to commercial
activities. This script is not for re-distribution.
For licensing options:
Contact Emrah BASKAYA @ www.hesido.com

Derivative works are only allowed for personal uses,
and they cannot be redistributed.

FleXcroll Public Key Code: 20050907122003339
MD5 hash for this license: 9ada3be4d7496200ab2665160807745d

End of license text---
*/

// fleXcroll v1.9.5f


var fleXenv={
	fleXcrollInit:function(){
		this.addTrggr(window,'load',this.globalInit)	
	},
	fleXcrollMain:function(f){
		var g=document,wD=window,nV=navigator;
		if(!g.getElementById||!g.createElement)
		return;
	if(typeof(f)=='string')f=document.getElementById(f);
	if(f==null||nV.userAgent.indexOf('OmniWeb')!=-1||((nV.userAgent.indexOf('AppleWebKit')!=-1||nV.userAgent.indexOf('Safari')!=-1)&&!(typeof(HTMLElement)!="undefined"&&HTMLElement.prototype))||nV.vendor=='KDE'||(nV.platform.indexOf('Mac')!=-1&&nV.userAgent.indexOf('MSIE')!=-1))
	return;
	if(f.scrollUpdate){
		f.scrollUpdate();
		return
	};
	if(!f.id||f.id==''){
		var h="flex__",c=1;
		while(document.getElementById(h+c)!=null){
			c++
		};
		f.id=h+c
	}
var k=f.id;
f.fleXdata=new Object();
var l=f.fleXdata;l.keyAct={_37:['-1s',0],_38:[0,'-1s'],_39:['1s',0],_40:[0,'1s'],_33:[0,'-1p'],_34:[0,'1p'],_36:[0,'-100p'],_35:[0,'+100p']};
l.wheelAct=["-2s","2s"];l.baseAct=["-2s","2s"];
var m=createDiv('contentwrapper',true),mDv=createDiv('mcontentwrapper',true),tDv=createDiv('scrollwrapper',true),pDv=createDiv('copyholder',true);
var o=createDiv('domfixdiv',true),fDv=createDiv('zoomdetectdiv',true),stdMode=false;
pDv.sY.border='1px solid blue';
pDv.fHide();
f.style.overflow='hidden';
fDv.sY.fontSize="12px";
fDv.sY.height="1em";
fDv.sY.width="1em";
fDv.sY.position="absolute";
fDv.sY.zIndex="-999";
fDv.fHide();

var p=f.offsetHeight,brdWidth=f.offsetWidth;
copyStyles(f,pDv,'0px',['border-left-width','border-right-width','border-top-width','border-bottom-width']);
var q=f.offsetHeight,intlWidth=f.offsetWidth,brdWidthLoss=brdWidth-intlWidth,brdHeightLoss=p-q;
var s=(f.scrollTop)?f.scrollTop:0,oScrollX=(f.scrollLeft)?f.scrollLeft:0;
var t=document.location.href,uReg=/#([^#.]*)$/;
var u=['textarea','input','select'];
l.scroller=[];
l.forcedBar=[];
l.containerSize=l.cntRSize=[];
l.contentSize=l.cntSize=[];
l.edge=[false,false];
l.reqS=[];
l.barSpace=[0,0];
l.forcedHide=[];
l.forcedPos=[];
l.paddings=[];
while(f.firstChild){
	m.appendChild(f.firstChild)};
	m.appendChild(o);
	f.appendChild(mDv);
	f.appendChild(pDv);
	if(getStyle(f,'position')!='absolute')f.style.position="relative";
	var w=getStyle(f,'text-align');
	f.style.textAlign='left';
	mDv.sY.width="100px";
	mDv.sY.height="100px";
	mDv.sY.top="0px";
	mDv.sY.left="0px";
copyStyles(f,pDv,"0px",['padding-left','padding-top','padding-right','padding-bottom']);
var x=f.offsetWidth,postHeight=f.offsetHeight,mHeight;
mHeight=mDv.offsetHeight;
mDv.sY.borderBottom="2px solid black";
if(mDv.offsetHeight>mHeight)stdMode=true;
mDv.sY.borderBottomWidth="0px";
copyStyles(pDv,f,false,['padding-left','padding-top','padding-right','padding-bottom']);
findPos(mDv);findPos(f);
l.paddings[0]=mDv.yPos-f.yPos;
l.paddings[2]=mDv.xPos-f.xPos;

f.style.paddingTop=getStyle(f,"padding-bottom");
f.style.paddingLeft=getStyle(f,"padding-right");
findPos(mDv);
findPos(f);
l.paddings[1]=mDv.yPos-f.yPos;l.paddings[3]=mDv.xPos-f.xPos;
f.style.paddingTop=getStyle(pDv,"padding-top");
f.style.paddingLeft=getStyle(pDv,"padding-left");
var y=l.paddings[2]+l.paddings[3],padHeightComp=l.paddings[0]+l.paddings[1];
mDv.style.textAlign=w;
copyStyles(f,mDv,false,['padding-left','padding-right','padding-top','padding-bottom']);
tDv.sY.width=f.offsetWidth+'px';
tDv.sY.height=f.offsetHeight+'px';
mDv.sY.width=x+'px';
mDv.sY.height=postHeight+'px';

tDv.sY.position='absolute';
tDv.sY.top='0px';
tDv.sY.left='0px';
mDv.appendChild(m);
f.appendChild(tDv);
tDv.appendChild(fDv);
m.sY.position='relative';

mDv.sY.position='relative';
m.sY.top="0px";
m.sY.width="100%";
mDv.sY.overflow='hidden';


mDv.sY.left="-"+l.paddings[2]+"px";
mDv.sY.top="-"+l.paddings[0]+"px";

l.zTHeight=fDv.offsetHeight;
l.getContentWidth=function(){
	var a=m.childNodes,maxCWidth=compPad=0;
	for(var i=0;i<a.length;i++){
		if(a[i].offsetWidth){
			maxCWidth=Math.max(a[i].offsetWidth,maxCWidth)
		}
	};
	l.cntRSize[0]=((l.reqS[1]&&!l.forcedHide[1])||l.forcedBar[1])?f.offsetWidth-l.barSpace[0]:f.offsetWidth;l.cntSize[0]=maxCWidth+y;
	return l.cntSize[0]
	};
	l.getContentHeight=function(){
		l.cntRSize[1]=((l.reqS[0]&&!l.forcedHide[0])||l.forcedBar[0])?f.offsetHeight-l.barSpace[1]:f.offsetHeight;l.cntSize[1]=m.offsetHeight+padHeightComp-2;
		return l.cntSize[1]
	};
	l.fixIEDispBug=function(){
		m.sY.display='none';m.sY.display='block'
	};
	l.setWidth=function(){
		mDv.sY.width=(stdMode)?(l.cntRSize[0]-y-brdWidthLoss)+'px':l.cntRSize[0]+'px'
	};
	l.setHeight=function(){
		mDv.sY.height=(stdMode)?(l.cntRSize[1]-padHeightComp-brdHeightLoss)+'px':l.cntRSize[1]+'px'};
	l.createScrollBars=function(){
		l.getContentWidth();l.getContentHeight();
		tDv.vrt=new Array();
		
		var a=tDv.vrt;createScrollBars(a,'vscroller');
		a.barPadding=[parseInt(getStyle(a.sBr,'padding-top')),parseInt(getStyle(a.sBr,'padding-bottom'))];
		a.sBr.sY.padding='0px';
		a.sBr.curPos=0;
		a.sBr.vertical=true;
		a.sBr.indx=1;
		m.vBar=a.sBr;prepareScroll(a,0);
		l.barSpace[0]=a.sDv.offsetWidth;
		l.setWidth();
		tDv.hrz=new Array();
		var b=tDv.hrz;createScrollBars(b,'hscroller');
		b.barPadding=[parseInt(getStyle(b.sBr,'padding-left')),parseInt(getStyle(b.sBr,'padding-right'))];
		b.sBr.sY.padding='0px';
		b.sBr.curPos=0;
		b.sBr.vertical=false;
		b.sBr.indx=0;
		m.hBar=b.sBr;
		if(wD.opera)b.sBr.sY.position='relative';
		prepareScroll(b,0);
		l.barSpace[1]=b.sDv.offsetHeight;
		l.setHeight();
		tDv.sY.height=f.offsetHeight+'px';

		b.jBox=createDiv('scrollerjogbox');
		tDv.appendChild(b.jBox);
		b.jBox.onmousedown=function(){
			b.sBr.scrollBoth=true;
			l.goScroll=b.sBr;
			b.sBr.clicked=true;
			b.sBr.moved=false;
			tDv.vrt.sBr.moved=false;
			fleXenv.addTrggr(g,'selectstart',retFalse);
			fleXenv.addTrggr(g,'mousemove',mMoveBar);
			fleXenv.addTrggr(g,'mouseup',mMouseUp);
			return false
		}
	};
	l.goScroll=null;
	l.createScrollBars();
	m.removeChild(o);
	if(!this.addChckTrggr(f,'mousewheel',mWheelProc)||!this.addChckTrggr(f,'DOMMouseScroll',mWheelProc)){
		f.onmousewheel=mWheelProc
	};
	this.addChckTrggr(f,'mousewheel',mWheelProc);
	this.addChckTrggr(f,'DOMMouseScroll',mWheelProc);
	f.setAttribute('tabIndex','0');
	this.addTrggr(f,'keydown',function(e){
									   if(f.focusProtect)return;
									   if(!e){
										   var e=wD.event
										};
	var a=e.keyCode;
	l.pkeY=a;
	l.mDPosFix();
	if(l.keyAct['_'+a]&&!window.opera){
		f.contentScroll(l.keyAct['_'+a][0],l.keyAct['_'+a][1],true);
	if(e.preventDefault)e.preventDefault();return false
	}
	});
	this.addTrggr(f,'keypress',function(e){
										if(f.focusProtect)return;
										if(!e){
											var e=wD.event
										};
										var a=e.keyCode;
	if(l.keyAct['_'+a]){
		f.contentScroll(l.keyAct['_'+a][0],l.keyAct['_'+a][1],true);
		if(e.preventDefault)e.preventDefault();
		return false
	}
	}
	);
	this.addTrggr(f,'keyup',function(){
									 l.pkeY=false
	});
	this.addTrggr(g,'mouseup',intClear);
	this.addTrggr(f,'mousedown',function(e){
										 if(!e)e=wD.event;
										 var a=(e.target)?e.target:(e.srcElement)?e.srcElement:false;
										 if(!a||(a.className&&a.className.match(RegExp("\\bscrollgeneric\\b"))))return;
										 l.inMposX=e.clientX;
										 l.inMposY=e.clientY;
										 pageScrolled();
										 findPos(f);
										 intClear();
										 fleXenv.addTrggr(g,'mousemove',tSelectMouse);
										 l.mTBox=[f.xPos+10,f.xPos+l.cntRSize[0]-10,f.yPos+10,f.yPos+l.cntRSize[1]-10]});
	function tSelectMouse(e){
		if(!e)e=wD.event;
		var a=e.clientX,mY=e.clientY,mdX=a+l.xScrld,mdY=mY+l.yScrld;
		l.mOnXEdge=(mdX<l.mTBox[0]||mdX>l.mTBox[1])?1:0;
		l.mOnYEdge=(mdY<l.mTBox[2]||mdY>l.mTBox[3])?1:0;l.xAw=a-l.inMposX;l.yAw=mY-l.inMposY;l.sXdir=(l.xAw>40)?1:(l.xAw<-40)?-1:0;l.sYdir=(l.yAw>40)?1:(l.yAw<-40)?-1:0;if((l.sXdir!=0||l.sYdir!=0)&&!l.tSelectFunc)l.tSelectFunc=wD.setInterval(function(){if(l.sXdir==0&&l.sYdir==0){wD.clearInterval(l.tSelectFunc);l.tSelectFunc=false;return};pageScrolled();if(l.mOnXEdge==1||l.mOnYEdge==1)f.contentScroll((l.sXdir*l.mOnXEdge)+"s",(l.sYdir*l.mOnYEdge)+"s",true)},45)};
	function intClear(){
		fleXenv.remTrggr(g,'mousemove',tSelectMouse);
		if(l.tSelectFunc)wD.clearInterval(l.tSelectFunc);
		l.tSelectFunc=false;
		if(l.barClickRetard)wD.clearTimeout(l.barClickRetard);
		if(l.barClickScroll)wD.clearInterval(l.barClickScroll)
	};
	function pageScrolled(){
		l.xScrld=(wD.pageXOffset)?wD.pageXOffset:(g.documentElement&&g.documentElement.scrollLeft)?g.documentElement.scrollLeft:0;
		l.yScrld=(wD.pageYOffset)?wD.pageYOffset:(g.documentElement&&g.documentElement.scrollTop)?g.documentElement.scrollTop:0
	};
	f.scrollUpdate=function(a){
		tDv.fShow();
		if(tDv.getSize[1]()===0||tDv.getSize[0]()===0)
		return;
		m.sY.padding='1px';
		var b=l.reqS[0],reqV=l.reqS[1],vBr=tDv.vrt,hBr=tDv.hrz,vUpReq,hUpReq,cPSize=[];
		tDv.sY.width=f.offsetWidth-brdWidthLoss+'px';
		tDv.sY.height=f.offsetHeight-brdHeightLoss+'px';
		cPSize[0]=l.cntRSize[0];
		cPSize[1]=l.cntRSize[1];
		l.reqS[0]=l.getContentWidth()>l.cntRSize[0];
		l.reqS[1]=l.getContentHeight()>l.cntRSize[1];
		var c=(b!=l.reqS[0]||reqV!=l.reqS[1]||cPSize[0]!=l.cntRSize[0]||cPSize[1]!=l.cntRSize[1])?true:false;
		vBr.sDv.setVisibility(l.reqS[1]);
		hBr.sDv.setVisibility(l.reqS[0]);
		vUpReq=(l.reqS[1]||l.forcedBar[1]);
		hUpReq=(l.reqS[0]||l.forcedBar[0]);
		l.getContentWidth();l.getContentHeight();
		l.setHeight();l.setWidth();
		if(!l.reqS[0]||!l.reqS[1]||l.forcedHide[0]||l.forcedHide[1])
			hBr.jBox.fHide();
		else 
			hBr.jBox.fShow();
		if(vUpReq)
			updateScroll(vBr,(hUpReq&&!l.forcedHide[0])?l.barSpace[1]:0);
		else 
			m.sY.top="0px";
			
		if(hUpReq)
			updateScroll(hBr,(vUpReq&&!l.forcedHide[1])?l.barSpace[0]:0);
		else
			m.sY.left="0";
		if(c&&!a)f.scrollUpdate(true);
		m.sY.padding='0px';
		l.edge[0]=l.edge[1]=false
		};
		f.commitScroll=f.contentScroll=function(a,b,c){
			var d=[[false,false],[false,false]],Bar;
			if((a||a===0)&&l.scroller[0]){
				a=calcCScrollVal(a,0);
				Bar=tDv.hrz.sBr;Bar.trgtScrll=(c)?Math.min(Math.max(Bar.mxScroll,Bar.trgtScrll-a),0):-a;Bar.contentScrollPos();
				d[0]=[-Bar.trgtScrll-Bar.targetSkew,-Bar.mxScroll]
			}
			if((b||b===0)&&l.scroller[1]){
				b=calcCScrollVal(b,1);
				Bar=tDv.vrt.sBr;
				Bar.trgtScrll=(c)?Math.min(Math.max(Bar.mxScroll,Bar.trgtScrll-b),0):-b;Bar.contentScrollPos();
				d[1]=[-Bar.trgtScrll-Bar.targetSkew,-Bar.mxScroll]
			}
			if(!c)l.edge[0]=l.edge[1]=false;return d};
			f.scrollToElement=function(a){
				if(a==null||!isddvChild(a))return;
				var b=findRCpos(a);
				f.contentScroll(b[0]+l.paddings[2],b[1]+l.paddings[0],false);
				f.contentScroll(0,0,true)};
				copyStyles(pDv,f,'0px',['border-left-width','border-right-width','border-top-width','border-bottom-width']);
				f.removeChild(pDv);
				f.scrollTop=0;
				f.scrollLeft=0;
				f.fleXcroll=true;
		classChange(f,'flexcrollactive',false);
		
		f.scrollUpdate();
		
		f.contentScroll(oScrollX,s,true);

		if(t.match(uReg)){
			f.scrollToElement(g.getElementById(t.match(uReg)[1]))
		};
		l.sizeChangeDetect=wD.setInterval(function(){
												   var n=fDv.offsetHeight;
												   if(n!=l.zTHeight){
													   f.scrollUpdate();
													   l.zTHeight=n
													}
													},2500);
		function calcCScrollVal(v,i){
			var a=v.toString();
			v=parseFloat(a);
			return parseInt((a.match(/p$/))?v*l.cntRSize[i]*0.9:(a.match(/s$/))?v*l.cntRSize[i]*0.1:v)
			
			}
		function camelConv(a){
			var a=a.split('-'),reT=a[0],i;
			for(i=1;parT=a[i];i++){
				reT+=parT.charAt(0).toUpperCase()+parT.substr(1)
			}
		return reT}				
		function getStyle(a,b){
			if(wD.getComputedStyle)return wD.getComputedStyle(a,null).getPropertyValue(b);
			if(a.currentStyle)return a.currentStyle[camelConv(b)];return false
		};
		function copyStyles(a,b,c,d){
			var e=new Array();
			for(var i=0;i<d.length;i++){
				e[i]=camelConv(d[i]);b.style[e[i]]=getStyle(a,d[i],e[i]);
				if(c)a.style[e[i]]=c
			}
		};
		function createDiv(b,c){
		var d=g.createElement('div');
		d.id=k+'_'+b;
		d.className=(c)?b:b+' scrollgeneric';
		d.getSize=[function(){return d.offsetWidth},function(){return d.offsetHeight}];d.setSize=[function(a){d.sY.width=a},function(a){d.sY.height=a
																																	
																																	 }];
		d.getPos=[function(){return getStyle(d,"left")},function(){return getStyle(d,"top")
																				   
																				   }];
		d.setPos=[function(a){d.sY.left=a},function(a){d.sY.top=a
													
													}];d.fHide=function(){d.sY.visibility="hidden"};
		d.fShow=function(a){
			d.sY.visibility=(a)?getStyle(a,'visibility'):"visible"};
			d.sY=d.style;
			return d
		};
		function createScrollBars(a,b){
			a.sDv=createDiv(b+'base');
			a.sFDv=createDiv(b+'basebeg');
			a.sSDv=createDiv(b+'baseend');
			a.sBr=createDiv(b+'bar');
			a.sFBr=createDiv(b+'barbeg');
			a.sSBr=createDiv(b+'barend');
			tDv.appendChild(a.sDv);
			a.sDv.appendChild(a.sBr);
			a.sDv.appendChild(a.sFDv);
			a.sDv.appendChild(a.sSDv);
			a.sBr.appendChild(a.sFBr);
			a.sBr.appendChild(a.sSBr)
		};
		function prepareScroll(b,c){
			var d=b.sDv,sBr=b.sBr,i=sBr.indx;sBr.minPos=b.barPadding[0];sBr.ofstParent=d;sBr.mDv=mDv;sBr.scrlTrgt=m;sBr.targetSkew=0;
			updateScroll(b,c,true);
			sBr.doScrollPos=function(){
				sBr.curPos=(Math.min(Math.max(sBr.curPos,0),sBr.maxPos));
				sBr.trgtScrll=parseInt((sBr.curPos/sBr.sRange)*sBr.mxScroll);
				sBr.targetSkew=(sBr.curPos==0)?0:(sBr.curPos==sBr.maxPos)?0:sBr.targetSkew;
				sBr.setPos[i](sBr.curPos+sBr.minPos+"px");
				m.setPos[i](sBr.trgtScrll+sBr.targetSkew+"px")};
			sBr.contentScrollPos=function(){
				sBr.curPos=parseInt((sBr.trgtScrll*sBr.sRange)/sBr.mxScroll);
				sBr.targetSkew=sBr.trgtScrll-parseInt((sBr.curPos/sBr.sRange)*sBr.mxScroll);
				sBr.curPos=(Math.min(Math.max(sBr.curPos,0),sBr.maxPos));
				sBr.setPos[i](sBr.curPos+sBr.minPos+"px");
				sBr.setPos[i](sBr.curPos+sBr.minPos+"px");
				m.setPos[i](sBr.trgtScrll+"px")};
				l.barZ=getStyle(sBr,'z-index');
				sBr.sY.zIndex=(l.barZ=="auto"||l.barZ=="0"||l.barZ=='normal')?2:l.barZ;mDv.sY.zIndex=getStyle(sBr,'z-index');
				sBr.onmousedown=function(){
					sBr.clicked=true;
					l.goScroll=sBr;
					sBr.scrollBoth=false;
					sBr.moved=false;fleXenv.addTrggr(g,'selectstart',retFalse);
					fleXenv.addTrggr(g,'mousemove',mMoveBar);
					fleXenv.addTrggr(g,'mouseup',mMouseUp);
					return false
					};
					sBr.onmouseover=intClear;
					d.onmousedown=d.ondblclick=function(e){
						if(!e){var e=wD.event}
						if(e.target&&(e.target==b.sFBr||e.target==b.sSBr||e.target==b.sBr))return;
						if(e.srcElement&&(e.srcElement==b.sFBr||e.srcElement==b.sSBr||e.srcElement==b.sBr))return;
						var a,mV=[];
						pageScrolled();
						l.mDPosFix();
						findPos(sBr);
						a=(sBr.vertical)?e.clientY+l.yScrld-sBr.yPos:e.clientX+l.xScrld-sBr.xPos;
						mV[sBr.indx]=(a<0)?l.baseAct[0]:l.baseAct[1];
						mV[1-sBr.indx]=0;
						f.contentScroll(mV[0],mV[1],true);
						if(e.type!="dblclick"){
							intClear();
							l.barClickRetard=wD.setTimeout(function(){
							l.barClickScroll=wD.setInterval(function(){
							f.contentScroll(mV[0],mV[1],true)},80)},425)
							}return false
							};
							d.setVisibility=function(r){
								if(r){
									d.fShow(f);
									l.forcedHide[i]=(getStyle(d,"visibility")=="hidden")?true:false;
								if(!l.forcedHide[i])sBr.fShow(f);
								else sBr.fHide();
								l.scroller[i]=true;
								classChange(d,"","flexinactive")
								}else{
									d.fHide();
									sBr.fHide();
									l.forcedBar[i]=(getStyle(d,"visibility")!="hidden")?true:false;
									l.scroller[i]=false;
									sBr.curPos=0;
									m.setPos[i]('0px');
									
									classChange(d,"flexinactive","")
								}
								mDv.setPos[1-i]((l.forcedPos[i]&&(r||l.forcedBar[i])&&!l.forcedHide[i])?l.barSpace[1-i]-l.paddings[i*2]+"px":"-"+l.paddings[i*2]+"px")
			
			};
			d.onmouseclick=retFalse
			};
			function updateScroll(a,b,c){
				var d=a.sDv,sBr=a.sBr,sFDv=a.sFDv,sFBr=a.sFBr,sSDv=a.sSDv,sSBr=a.sSBr,i=sBr.indx;
				d.setSize[i](tDv.getSize[i]()-b+'px');
				d.setPos[1-i](tDv.getSize[1-i]()-d.getSize[1-i]()+'px');
				l.forcedPos[i]=(parseInt(d.getPos[1-i]())===0)?true:false;
				a.padLoss=a.barPadding[0]+a.barPadding[1];
				a.baseProp=parseInt((d.getSize[i]()-a.padLoss)*0.75);
				sBr.aSize=Math.min(Math.max(Math.min(parseInt(l.cntRSize[i]/l.cntSize[i]*d.getSize[i]()),a.baseProp),45),a.baseProp);
				sBr.setSize[i](sBr.aSize+'px');
				sBr.maxPos=d.getSize[i]()-sBr.getSize[i]()-a.padLoss;
				sBr.curPos=Math.min(Math.max(0,sBr.curPos),sBr.maxPos);
				sBr.setPos[i](sBr.curPos+sBr.minPos+'px');
				sBr.mxScroll=mDv.getSize[i]()-l.cntSize[i];sBr.sRange=sBr.maxPos;
				sFDv.setSize[i](d.getSize[i]()-sSDv.getSize[i]()+'px');
				sFBr.setSize[i](sBr.getSize[i]()-sSBr.getSize[i]()+'px');
				sSBr.setPos[i](sBr.getSize[i]()-sSBr.getSize[i]()+'px');
				sSDv.setPos[i](d.getSize[i]()-sSDv.getSize[i]()+'px');
				if(!c)sBr.doScrollPos();
				l.fixIEDispBug()
			};
			l.mDPosFix=function(){
				mDv.scrollTop=0;
				mDv.scrollLeft=0;
				f.scrollTop=0;
				f.scrollLeft=0
			};
			this.addTrggr(wD,'load',function(){
											 if(f.fleXcroll)f.scrollUpdate()
											 });
			this.addTrggr(wD,'resize',function(){
											   if(f.refreshTimeout)wD.clearTimeout(f.refreshTimeout);
											   f.refreshTimeout=wD.setTimeout(function(){
																					   if(f.fleXcroll)f.scrollUpdate()},80)
											   });
			for(var j=0,inputName;inputName=u[j];j++){
				var z=f.getElementsByTagName(inputName);
				for(var i=0,formItem;formItem=z[i];i++){
					fleXenv.addTrggr(formItem,'focus',function(){f.focusProtect=true});
					fleXenv.addTrggr(formItem,'blur',onblur=function(){f.focusProtect=false})}
				};
				function retFalse(){return false};
				function mMoveBar(e){
					if(!e){var e=wD.event};
					var a=l.goScroll,movBr,maxx,xScroll,yScroll;
					if(a==null)return;
					if(!fleXenv.w3events&&!e.button)mMouseUp();
					maxx=(a.scrollBoth)?2:1;
					for(var i=0;i<maxx;i++){
						movBr=(i==1)?a.scrlTrgt.vBar:a;
						if(a.clicked){
							if(!movBr.moved){
								l.mDPosFix();
								findPos(movBr);
								findPos(movBr.ofstParent);
								movBr.pointerOffsetY=e.clientY-movBr.yPos;
								movBr.pointerOffsetX=e.clientX-movBr.xPos;
								movBr.inCurPos=movBr.curPos;
								movBr.moved=true
							};
							movBr.curPos=(movBr.vertical)?e.clientY-movBr.pointerOffsetY-movBr.ofstParent.yPos-movBr.minPos:e.clientX-movBr.pointerOffsetX-movBr.ofstParent.xPos-movBr.minPos;
							if(a.scrollBoth)movBr.curPos=movBr.curPos+(movBr.curPos-movBr.inCurPos);movBr.doScrollPos()
							}else movBr.moved=false
						}
					};
					function mMouseUp(){
						if(l.goScroll!=null){
							l.goScroll.clicked=false
						}
						l.goScroll=null;
						fleXenv.remTrggr(g,'selectstart',retFalse);
						fleXenv.remTrggr(g,'mousemove',mMoveBar);
						fleXenv.remTrggr(g,'mouseup',mMouseUp)};
					function mWheelProc(e){
						if(!e)e=wD.event;
						if(!this.fleXcroll)return;
						var a=this,vEdge,hEdge,hoverH=false,delta=0,iNDx;
						l.mDPosFix();
						hElem=(e.target)?e.target:(e.srcElement)?e.srcElement:this;
						if(hElem.id&&hElem.id.match(/_hscroller/))hoverH=true;
						if(e.wheelDelta)delta=-e.wheelDelta;
						if(e.detail)delta=e.detail;delta=(delta<0)?-1:+1;
						iNDx=(delta<0)?0:1;
						l.edge[1-iNDx]=false;
						if((l.edge[iNDx]&&!hoverH)||(!l.scroller[0]&&!l.scroller[1]))return;
						if(l.scroller[1]&&!hoverH)scrollState=f.contentScroll(false,l.wheelAct[iNDx],true);
						vEdge=!l.scroller[1]||hoverH||(l.scroller[1]&&((scrollState[1][0]==scrollState[1][1]&&delta>0)||(scrollState[1][0]==0&&delta<0)));
						if(l.scroller[0]&&(!l.scroller[1]||hoverH))scrollState=f.contentScroll(l.wheelAct[iNDx],false,true);
						hEdge=!l.scroller[0]||(l.scroller[0]&&l.scroller[1]&&vEdge&&!hoverH)||(l.scroller[0]&&((scrollState[0][0]==scrollState[0][1]&&delta>0)||(scrollState[0][0]==0&&delta<0)));
						if(vEdge&&hEdge&&!hoverH)l.edge[iNDx]=true;
						else l.edge[iNDx]=false;
						if(e.preventDefault)e.preventDefault();return false};
						function isddvChild(a){
							while(a.parentNode){
								a=a.parentNode;
								if(a==f)return true
							}return false
						};
						function findPos(a){
							var b=a,curleft=curtop=0;
							var c="";
							if(b.offsetParent){
								while(b){
								curleft+=b.offsetLeft;
								curtop+=b.offsetTop;
								b=b.offsetParent;
								c+=curtop+" "
								}
							}else if(b.x){
								curleft+=b.x;
								curtop+=b.y
							}
							a.xPos=curleft;
							a.yPos=curtop
						};
						function findRCpos(a){
							var b=a;curleft=curtop=0;
							while(!b.offsetHeight&&b.parentNode&&b!=m&&getStyle(b,'display')=="inline"){
								b=b.parentNode
							}
							if(b.offsetParent){
								while(b!=m){
									curleft+=b.offsetLeft;
									curtop+=b.offsetTop;
									b=b.offsetParent
								}
							}return[curleft,curtop]
						};
						function classChange(a,b,c){
							if(!a.className)a.className='';
							var d=a.className;
							if(b&&!d.match(RegExp("(^|\\s)"+b+"($|\\s)")))
							d=d.replace(/(\S$)/,'$1 ')+b;
							if(c)d=d.replace(RegExp("((^|\\s)+"+c+")+($|\\s)","g"),'$2').replace(/\s$/,'');a.className=d
							}
							},globalInit:function(){
				if(fleXenv.catchFastInit)window.clearInterval(fleXenv.catchFastInit);
				var d=/#([^#.]*)$/,urlExt=/(.*)#.*$/,matcH,i,anchoR,anchorList=document.getElementsByTagName("a"),urlBase=document.location.href;
				if(urlBase.match(urlExt))urlBase=urlBase.match(urlExt)[1];
				for(i=0;anchoR=anchorList[i];i++){
					if(anchoR.href&&anchoR.href.match(d)&&anchoR.href.match(urlExt)&&urlBase===anchoR.href.match(urlExt)[1]){
						anchoR.fleXanchor=true;
						fleXenv.addTrggr(anchoR,'click',function(e){
																 if(!e)e=window.event;
																 var a=(e.srcElement)?e.srcElement:this;
																 while(!a.fleXanchor&&a.parentNode){a=a.parentNode};
																 if(!a.fleXanchor)return;
																 var b=document.getElementById(a.href.match(d)[1]),eScroll=false;
	if(b==null)b=(b=document.getElementsByName(a.href.match(d)[1])[0])?b:null;if(b!=null){
		var c=b;
		while(c.parentNode){
			 c=c.parentNode;
			 if(c.scrollToElement){
				 c.scrollToElement(b);
				 eScroll=c
			}
		};
		if(eScroll){
			if(e.preventDefault)e.preventDefault();
			document.location.href="#"+a.href.match(d)[1];
			eScroll.fleXdata.mDPosFix();
			return false
		}
	}})}};
	fleXenv.initByClass();
	if(window.onfleXcrollRun)
	window.onfleXcrollRun()
	},initByClass:function(){
		if(fleXenv.initialized)
		return;
		fleXenv.initialized=true;
		var a=fleXenv.getByClassName(document.getElementsByTagName("body")[0],"div",'flexcroll');
		for(var i=0,tgDiv;tgDiv=a[i];i++)
		fleXenv.fleXcrollMain(tgDiv)
	},
	getByClassName:function(a,b,c){
		if(typeof(a)=='string')
			a=document.getElementById(a);
		if(a==null)
			return false;var d=new RegExp("(^|\\s)"+c+"($|\\s)"),clsnm,retArray=[],key=0;
			var e=a.getElementsByTagName(b);
			for(var i=0,pusher;pusher=e[i];i++){
				if(pusher.className&&pusher.className.match(d)){
					retArray[key]=pusher;
					key++
				}
			};
			return retArray
		},catchFastInit:window.setInterval(
										   function(){
											   var a=document.getElementById('flexcroll-init');
if(a!=null){
	fleXenv.initByClass();
	window.clearInterval(fleXenv.catchFastInit)}},100),
addTrggr:function(a,b,c){
	if(!fleXenv.addChckTrggr(a,b,c)&&a.attachEvent){
		a.attachEvent('on'+b,c)
	}
},
addChckTrggr:function(a,b,c){
	if(a.addEventListener){
	a.addEventListener(b,c,false);
fleXenv.w3events=true;
window.addEventListener("unload",function(){fleXenv.remTrggr(a,b,c)},false);
return true
}
else 
return false
},
remTrggr:function(a,b,c){
	if(!fleXenv.remChckTrggr(a,b,c)&&a.detachEvent)a.detachEvent('on'+b,c)},
remChckTrggr:
function(a,b,c){
if(a.removeEventListener){
a.removeEventListener(b,c,false);
return true}
else 
	return false}
};
function CSBfleXcroll(a){
	fleXenv.fleXcrollMain(a)
};
fleXenv.fleXcrollInit();

