$(document).ready(function() {
	if(xHeight('mainwrapper') < document.documentElement.clientHeight - 28) {
		xHeight('mainwrapper', document.documentElement.clientHeight - 28);
		xHeight('contentwapper', document.documentElement.clientHeight - 28);
		xHeight('logo-menu-container', document.documentElement.clientHeight - 28 - 37);
		xHeight('home-contents', document.documentElement.clientHeight - 28 - 37);
		xHeight('contents-2', document.documentElement.clientHeight - 28 - 37);
	} else {
		var left_height = xHeight('logo-menu-container');
		if(left_height > xHeight('home-contents')) {
			xHeight('home-contents', left_height);
		}

		var hc = xHeight('home-contents');
		var height = xHeight('contents-2');
		if($('#contents-2').position()) {
			var top = $('#contents-2').position().top;
			if(height + top < hc) {
				var diff = hc - top;
				if(diff > 0) xHeight('contents-2', diff + 75);	
			} 
		}
	}

	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 (e == document || e.tagName.toLowerCase() == 'html' || e.tagName.toLowerCase() == 'body') {
	    h = xClientHeight();
	  }
	  else 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);
		}
		// Should we try this as a last resort?
		// At this point getComputedStyle and currentStyle do not exist.
		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 xDef()
	{
	  for(var i=0; i<arguments.length; ++i){if(typeof(arguments[i])=='undefined') return false;}
	  return true;
	}

	function xStr(s)
	{
	  for(var i=0; i<arguments.length; ++i){if(typeof(arguments[i])!='string') return false;}
	  return true;
	}

	function xNum()
	{
	  for(var i=0; i<arguments.length; ++i){if(isNaN(arguments[i]) || typeof(arguments[i])!='number') return false;}
	  return true;
	}

	function xClientHeight()
	{
	  var v=0,d=document,w=window;
	  if((!d.compatMode || d.compatMode == 'CSS1Compat') && !w.opera && d.documentElement && d.documentElement.clientHeight)
	    {v=d.documentElement.clientHeight;}
	  else if(d.body && d.body.clientHeight)
	    {v=d.body.clientHeight;}
	  else if(xDef(w.innerWidth,w.innerHeight,d.width)) {
	    v=w.innerHeight;
	    if(d.width>w.innerWidth) v-=16;
	  }
	  return v;
	}

	function xGetElementById(e) {
		if(typeof(e)=='string') {
			if(document.getElementById) e=document.getElementById(e);
			else if(document.all) e=document.all[e];
			else e=null;
		}	
		return e;
	}

	function xGetComputedStyle(e, p, i)
	{
	  if(!(e=xGetElementById(e))) return null;
	  var s, v = 'undefined', dv = document.defaultView;

	  if(dv && dv.getComputedStyle){
	    s = dv.getComputedStyle(e,'');
	    if (s) v = s.getPropertyValue(p);
	  }
	  else if(e.currentStyle) {
	    v = e.currentStyle[xCamelize(p)];
	  }
	  else return null;
	  return i ? (parseInt(v) || 0) : v;
	}

	function xCamelize(cssPropStr)
	{
	  var i, c, a = cssPropStr.split('-');
	  var s = a[0];
	  for (i=1; i<a.length; ++i) {
	    c = a[i].charAt(0);
	    s += a[i].replace(c, c.toUpperCase());
	  }
	  return s;
	}

	function xTop(e, iY)
	{
	  if(typeof e != 'object') {
	    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=xGetComputedStyle(e,'top',1);
	      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 xGetY(obj) {
	    var curtop = 0;
	    if(obj.offsetParent)
		while(1) {
			curtop += obj.offsetTop;
			if(!obj.offsetParent)
				break;
			obj = obj.offsetParent;
		}
	    else if(obj.y)
		curtop += obj.y;

	    return curtop;
	}
});
