var OP = (function(){
		var queue = []
		return{
			observe: function(elem,behavior,callback){
				elem['on'+behavior] = callback;
			},
			
			addLoadProcess: function(func){
				queue.push(func);
			},
			
			onLoad: function(){
				for(var i=0; i < queue.length; i++){
					queue[i].call();
				}
				
				OP.getMaxAndAdjust(document.getElementById('content'));
				OP.getMaxAndAdjust(document.getElementById('column_wrap'));
				
			},
			
			getMaxAndAdjust: function(elem){
				var max = 0;
				for(var i=0; i < elem.childNodes.length; i++){
					var notWhitespace = /\S/;
					if ((elem.childNodes[i].nodeType == 3)&&(!notWhitespace.test(elem.childNodes[i].nodeValue))) {
						elem.removeChild(elem.childNodes[i]);
						i--;
					}
					else{
						max = elem.childNodes[i].offsetHeight > max ? elem.childNodes[i].offsetHeight : max;
					}
				}

				for(var j=0; j < elem.childNodes.length; j++){
					if(elem.childNodes[j].className != 'forclear'){
						elem.childNodes[j].style.height = max + 'px';
					}
						
				}
				
			}
		}
})();

OP.observe(window,'load',OP.onLoad);