/* X Library. Distributed under the terms of the GNU LGPL. 
Copyright (C) 2001,2002,2003,2004,2005 Michael Foster (Cross-Browser.com). 
Contributor copyrights, license and documentation are in the .txt file distributed with this file.*/
/* Compiled with XC v0.6a */
var xVersion='4.0',xOp7,xOp5or6,xIE4Up,xIE4,xIE5,xNN4,xMoz,xMac,xUA=navigator.userAgent.toLowerCase();


if (window.opera){
	xOp7=(xUA.indexOf('opera 7')!=-1 || xUA.indexOf('opera/7')!=-1);

	if (!xOp7) xOp5or6=(xUA.indexOf('opera 5')!=-1 || xUA.indexOf('opera/5')!=-1 || xUA.indexOf('opera 6')!=-1 || xUA.indexOf('opera/6')!=-1);
}
else if (document.all && xUA.indexOf('msie')!=-1) {
	xIE4Up=parseInt(navigator.appVersion)>=4;
xIE4=xUA.indexOf('msie 4')!=-1;
xIE5=xUA.indexOf('msie 5')!=-1;
}else if (document.layers) {
	xNN4=true;
}
xMoz=xUA.indexOf('gecko')!=-1;
xMac=xUA.indexOf('mac')!=-1;

function xGetElementById(e){
	if(typeof(e)!='string') return e;
	
	if(document.getElementById) e=document.getElementById(e);
	else if(document.all) e=document.all[e];
	else e=null;
	return e;
}

function xParent(e, bNode){
	if (!(e=xGetElementById(e))) return null;
	var p=null;
	if (!bNode && xDef(e.offsetParent)) p=e.offsetParent;
	else if (xDef(e.parentNode)) p=e.parentNode;
	else if (xDef(e.parentElement)) p=e.parentElement;
	return p;
}

function xStr(s){
	for(var i=0;
 	i<arguments.length;
 	++i){
		if(typeof(arguments[i])!='string') return false;
	}
	return true;
}

function xZIndex(e,uZ){
	if(!(e=xGetElementById(e))) return 0;
	if(e.style && xDef(e.style.zIndex)) {
		if(xNum(uZ)) e.style.zIndex=uZ;
		uZ=parseInt(e.style.zIndex);
	}
	return uZ;
}

function xColor(e,s){
	if(!(e=xGetElementById(e))) return '';
	var c='';
	if(e.style && xDef(e.style.color)) {if(xStr(s)) e.style.color=s;
	c=e.style.color;
	}
	return c;
}

function xBackground(e,c,i){
	if(!(e=xGetElementById(e))) return '';
	var bg='';
	if(e.style) {if(xStr(c)) {
		if(!xOp5or6) e.style.backgroundColor=c;
		else e.style.background=c;
	}
	if(xStr(i)) e.style.backgroundImage=(i!='')? 'url('+i+')' : null;
	if(!xOp5or6) bg=e.style.backgroundColor;
	else bg=e.style.background;
	}
	return bg;
}

function xLeft(e, iX){
	if(!(e=xGetElementById(e))) return 0;
	var css=xDef(e.style);
	if (css && xStr(e.style.left)) {if(xNum(iX)) e.style.left=iX+'px';
	else {
		iX=parseInt(e.style.left);
		if(isNaN(iX)) iX=0;
		}
	}
	else if(css && xDef(e.style.pixelLeft)) {if(xNum(iX)) e.style.pixelLeft=iX;
	else iX=e.style.pixelLeft;
	}
	return iX;
}

function xTop(e, iY){
	if(!(e=xGetElementById(e))) return 0;
	var css=xDef(e.style);
	if(css && xStr(e.style.top)) {if(xNum(iY)) e.style.top=iY+'px';
	else {
		iY=parseInt(e.style.top);
		if(isNaN(iY)) iY=0;
		}
	}else if(css && xDef(e.style.pixelTop)) {
		if(xNum(iY)) e.style.pixelTop=iY;
		else iY=e.style.pixelTop;
		}return iY;
}

function xPageX(e){
	if (!(e=xGetElementById(e))) return 0;
	var x = 0;
	while (e) {
		if (xDef(e.offsetLeft)) x += e.offsetLeft;
		e = xDef(e.offsetParent) ? e.offsetParent : null;
		}
	return x;
}

function xPageY(e){
	if (!(e=xGetElementById(e))) return 0;
	var y = 0;
	while (e) {
		if (xDef(e.offsetTop)) y += e.offsetTop;
		e = xDef(e.offsetParent) ? e.offsetParent : null;
		}
	return y;
}


function xOffsetLeft(e){
if (!(e=xGetElementById(e))) return 0;
if (xDef(e.offsetLeft)) return e.offsetLeft;
else return 0;
}

function xOffsetTop(e){
if (!(e=xGetElementById(e))) return 0;
if (xDef(e.offsetTop)) return e.offsetTop;
else return 0;
}

function xScrollLeft(e, bWin){
var offset=0;
if (!xDef(e) || bWin) {
var w = e || window;
if(w.document.documentElement && w.document.documentElement.scrollLeft) offset=w.document.documentElement.scrollLeft;
else if(w.document.body && xDef(w.document.body.scrollLeft)) offset=w.document.body.scrollLeft;
}
else {
e = xGetElementById(e);
if (e && xNum(e.scrollLeft)) offset = e.scrollLeft;
}
return offset;
}

function xScrollTop(e, bWin){
var offset=0;
if (!xDef(e) || bWin) {
var w = e || window;
if(w.document.documentElement && w.document.documentElement.scrollTop) offset=w.document.documentElement.scrollTop;
else if(w.document.body && xDef(w.document.body.scrollTop)) offset=w.document.body.scrollTop;

}
else {
e = xGetElementById(e);
if (e && xNum(e.scrollTop)) offset = e.scrollTop;
}
return offset;
}

function xHasPoint(e,x,y,t,r,b,l){
if (!xNum(t)){
t=r=b=l=0;
}
else if (!xNum(r)){
r=b=l=t;
}
else if (!xNum(b)){
l=r;
 b=t;
}
var eX = xPageX(e), eY = xPageY(e);
return (x >= eX + l && x <= eX + xWidth(e) - r &&y >= eY + t && y <= eY + xHeight(e) - b );
}

function xWidth(e,w){
if(!(e=xGetElementById(e))) return 0;
if (xNum(w)) {
if (w<0) w = 0;
else w=Math.round(w);
}
else w=-1;
var css=xDef(e.style);
if(css && xDef(e.offsetWidth) && xStr(e.style.width)) {
if(w>=0) {
var pl=0,pr=0,bl=0,br=0;
if (document.compatMode=='CSS1Compat') {
var gcs = xGetComputedStyle;
pl=gcs(e,'padding-left',1);
if (pl != null) {
pr=gcs(e,'padding-right',1);
bl=gcs(e,'border-left-width',1);
br=gcs(e,'border-right-width',1);
}
else if(xDef(e.offsetWidth,e.style.width)){
e.style.width=w+'px';
pl=e.offsetWidth-w;
}
}
w-=(pl+pr+bl+br);
if(isNaN(w)||w<0) return;
else e.style.width=w+'px';
}
w=e.offsetWidth;
}
else if(css && xDef(e.style.pixelWidth)) {
if(w>=0) e.style.pixelWidth=w;
w=e.style.pixelWidth;
}
return w;
}

function xHeight(e,h){
if(!(e=xGetElementById(e))) return 0;
if (xNum(h)) {
if (h<0) h = 0;
else h=Math.round(h);
}
else h=-1;
var css=xDef(e.style);
if(css && xDef(e.offsetHeight) && xStr(e.style.height)) {
if(h>=0) {
var pt=0,pb=0,bt=0,bb=0;
if (document.compatMode=='CSS1Compat') {
var gcs = xGetComputedStyle;
pt=gcs(e,'padding-top',1);
if (pt != null) {
pb=gcs(e,'padding-bottom',1);
bt=gcs(e,'border-top-width',1);
bb=gcs(e,'border-bottom-width',1);
}
else if(xDef(e.offsetHeight,e.style.height)){
e.style.height=h+'px';
pt=e.offsetHeight-h;
}
}
h-=(pt+pb+bt+bb);
if(isNaN(h)||h<0) return;
else e.style.height=h+'px';
}
h=e.offsetHeight;
}
else if(css && xDef(e.style.pixelHeight)) {
if(h>=0) e.style.pixelHeight=h;
h=e.style.pixelHeight;
}
return h;
}

function xClip(e,t,r,b,l){
if(!(e=xGetElementById(e))) return;
if(e.style) {
if (xNum(l)) e.style.clip='rect('+t+'px '+r+'px '+b+'px '+l+'px)';
else e.style.clip='rect(0 '+parseInt(e.style.width)+'px '+parseInt(e.style.height)+'px 0)';
}
}

function xClientWidth(){
var w=0;
if(xOp5or6) w=window.innerWidth;
else if(document.compatMode == 'CSS1Compat' && !window.opera && document.documentElement && document.documentElement.clientWidth)w=document.documentElement.clientWidth;
else if(document.body && document.body.clientWidth)w=document.body.clientWidth;
else if(xDef(window.innerWidth,window.innerHeight,document.height)) {
w=window.innerWidth;
if(document.height>window.innerHeight) w-=16;
}
return w;
}

function xClientHeight(){
var h=0;
if(xOp5or6) h=window.innerHeight;
else if(document.compatMode == 'CSS1Compat' && !window.opera && document.documentElement && document.documentElement.clientHeight)h=document.documentElement.clientHeight;
else if(document.body && document.body.clientHeight)h=document.body.clientHeight;
else if(xDef(window.innerWidth,window.innerHeight,document.width)) {
h=window.innerHeight;
if(document.width>window.innerWidth) h-=16;
}
return h;
}

function xGetComputedStyle(oEle, sProp, bInt){
var s, p = 'undefined';
var dv = document.defaultView;
if(dv && dv.getComputedStyle){
s = dv.getComputedStyle(oEle,'');
if (s) p = s.getPropertyValue(sProp);
}
else if(oEle.currentStyle) {
var a = sProp.split('-');
sProp = a[0];
for (var i=1;
 i<a.length;
 ++i) {
c = a[i].charAt(0);
sProp += a[i].replace(c, c.toUpperCase());
}
   p = oEle.currentStyle[sProp];
}
else return null;
return bInt ? (parseInt(p) || 0) : p;
}

function xShow(e) {
return xVisibility(e,1);
}

function xHide(e){
return xVisibility(e,0);
}

function xDisplay(e,s){
if(!(e=xGetElementById(e))) return null;
if(e.style && xDef(e.style.display)) {
if (xStr(s)) e.style.display = s;
return e.style.display;
}
return null;
}

function xDef(){
for(var i=0;
 i<arguments.length;
 ++i){
if(typeof(arguments[i])=='undefined') return false;
}
return true;
}

function xNum(n){
for(var i=0;
 i<arguments.length;
 ++i){
if(typeof(arguments[i])!='number') return false;
}
return true;
}

function xVisibility(e, bShow){
if(!(e=xGetElementById(e))) return null;
if(e.style && xDef(e.style.visibility)) {
if (xDef(bShow)) e.style.visibility = bShow ? 'visible' : 'hidden';
return e.style.visibility;
}
return null;
}

function xMoveTo(e,x,y){
xLeft(e,x);
xTop(e,y);
}

function xResizeTo(e,w,h){
xWidth(e,w);
xHeight(e,h);
}
