	//v1.4

	var __DOM_DEBUG = 0;
	var __DOM_MOUSEOVERS = new Array();
	var __DOM_MOUSEOUTS = new Array();
	var __DOM_CLICK_EVENTS = new Array();

	function dom_browser_is_ie() {

		try {

			var user_agent = dom_get_user_agent();
			if ( user_agent.indexOf('msie') != -1 ) {
				return true;
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
	   	}
		

	}

	function dom_get_user_agent() {

		try {

			return navigator.userAgent.toLowerCase();
		}
		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_get_object_by_id(objectId, frame) {

		try {

			if( document.getElementById ) {

				// W3C DOM
				if ( frame != null ) {
					if ( frame == 'parent' ) {
						if ( parent.document.getElementById(objectId) ) {
							return parent.document.getElementById(objectId);
						}
					}
					else {
						if ( document.frames ) {
							var frame_obj = eval( 'document.frames.' + frame );
							if ( frame_obj.document.getElementById(objectId) ) {
								return frame_obj.document.getElementById(objectId);
						}
						}
						else {
							return false;
						}
					}
				}
				else {
					if ( document.getElementById(objectId) ) {
						return document.getElementById(objectId);
					}
				}
    			}	 
    			else if (document.all) {
				// MSIE 4 DOM
				if ( frame != null ) {
					if ( frame == 'parent' ) {
						if ( parent.document.all(objectId) ) {
							return parent.document.all(objectId);
						}
					}
					else {
						var frame_obj = eval( 'document.frames.' + frame );

						if ( frame_obj.document.all(objectId) ) {
							return frame_obj.document.all(objectId);
						}
					}
				}	
				else {
					return document.all(objectId);
				}
    			} 
    			else if (document.layers && document.layers[objectId]) {
				// NN 4 DOM.. note: this won't find nested layers
				return document.layers[objectId];
   	 		} 
   	 		else {
 				return false;
  	 		}

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
	}

	function dom_object_set_class_name_by_id( obj_id, class_name ) {

		try {
			var obj;
	
			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_set_class_name(obj, class_name);
			}

			return null;
		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_set_class_name( obj, class_name ) {

		try {
			if ( obj ) {
				if ( typeof(obj.className) != 'undefined' ) {
					obj.className = class_name;
				}
			}
		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_get_style_by_id( obj_id ) {

		try {
			var obj;
	
			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_get_style(obj);
			}

			return null;
		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_get_style( obj ) {

		try {
			
			if ( obj && (typeof(obj.style) != 'undefined') ) {
				return obj.style;		
			}

			return null;

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_set_inner_text_by_id( obj_id, text ) {

                try {
                        var obj;

                        if ( obj = dom_get_object_by_id(obj_id) ) {
                                return dom_object_set_inner_text(obj, text);
                        }

                        return null;
                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_set_inner_text( obj, text ) {

		try {
			dom_object_clear_inner_text(obj);
			dom_object_add_inner_text( obj, text );

                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_add_inner_text( obj, text ) {

		try {
			if ( typeof(document.createTextNode) == 'function' ) {
				obj.appendChild( document.createTextNode(text) );
			}
			else {
				obj.innerHTML = obj.innerHTML + text;
			}

                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_clear_inner_text( obj ) {

		try {
			while( obj.firstChild ) {
				 obj.removeChild(obj.firstChild);
			}
                }
                catch (e) {
                        _Dom_handle_error(e);
                }

	}

	function dom_object_set_inner_html_by_id( obj_id, html ) {

                try {
                        var obj;

                        if ( obj = dom_get_object_by_id(obj_id) ) {
                                return dom_object_set_inner_html(obj, html);
                        }

                        return null;
                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_set_inner_html( obj, html ) {

		try {
			dom_object_clear_inner_html(obj);
			dom_object_add_inner_html( obj, html );

                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_add_inner_html( obj, html ) {

		try {
			obj.innerHTML = obj.innerHTML + html;

                }
                catch (e) {
                        _Dom_handle_error(e);
                }


	}

	function dom_object_clear_inner_html( obj ) {

		try {
			obj.innerHTML = '';
                }
                catch (e) {
                        _Dom_handle_error(e);
                }

	}


	function dom_object_make_visible( obj ) {

		try {
			return dom_object_set_visibility(obj, 'visible');

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
	}


	function dom_object_make_visible_by_id( obj_id ) {

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_make_visible(obj);				
			}

			return false;
			

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
	}


	function dom_object_make_invisible_by_id( obj_id ) {

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_make_invisible(obj);				
			}

			return false;
			

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
	}



	function dom_object_make_invisible( obj ) {

		try {
			return dom_object_set_visibility(obj, 'hidden');

	   	}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
	}

	function dom_object_set_visibility_by_id( obj_id ) {
		
		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_set_visibility(obj);
			}

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_set_visibility( obj, new_visibility ) {

		try {
			var obj_style;

			if ( obj_style = dom_object_get_style(obj) ) {
				obj_style.visibility = new_visibility;
			}
		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_get_visibility_by_id( obj_id ) {
		
		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_get_visibility(obj);
			}

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_get_visibility( obj ) {
		
		try {
			var obj_style;

			if ( obj_style = dom_object_get_style(obj) ) {
				return obj_style.visibility;
			}

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}

	}

	function dom_object_is_visible_by_id( obj_id ) {

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_is_visible(obj);
			}

			return null;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
		

	}


	function dom_object_is_visible( obj ) {

		try {
			var obj_style;

			if ( obj_style = dom_object_get_style(obj) ) {
				if ( obj_style.visibility != 'hidden' ) {
					
					return true;
				}
				else {
					return false;
				}
			}

			return null;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}
		

	}

	function dom_object_add_mouseover_by_id( obj_id, mouseover, capture_bubble ) {

		try {
			var obj_id;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_add_mouseover(obj, mouseover, capture_bubble );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}

	function dom_object_add_mouseover( obj, mouseover, capture_bubble ) {

		try {
			var func_string = '';
			var event_listener = false;
			var j;

			capture_bubble = ( capture_bubble ) ? capture_bubble : false;

			if ( typeof(obj.addEventListener) != 'undefined' ) {
				event_listener = true;
				obj.addEventListener( 'mouseover', new Function(mouseover), capture_bubble );
			}

			if ( typeof(obj.onmouseover) != 'undefined' ) {
				if ( !event_listener ) {

					if ( __DOM_MOUSEOVERS[obj.id] == null ) {
						__DOM_MOUSEOVERS[obj.id] = new Array();
					}

					__DOM_MOUSEOVERS[obj.id].push(mouseover);
				
				
					for ( j=0; j < __DOM_MOUSEOVERS[obj.id].length; j++ ) {
						func_string = func_string + "\n" + __DOM_MOUSEOVERS[obj.id][j];
					}
				
					obj.onmouseover = new Function( func_string );
							
					//alert( obj.onmouseover );

				}
				else {
					obj.onmouseover = null;
				}
			}
	
			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}

	function dom_object_set_mouseout_by_id( obj_id, mouseout ) {

		try {
			var obj_id;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_set_mouseout(obj, mouseout);
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}

	function dom_object_set_mouseout( obj, mouseout ) {

		try {
			var event_listener = false;

			if ( typeof(obj.addEventListener) != 'undefined' ) {
				event_listener = true;
				obj.addEventListener( 'mouseout', new Function(mouseout), false );
			}

			if ( typeof(obj.onmouseout) != 'undefined' ) {
				if ( !event_listener ) {
					obj.onmouseout = new Function ( mouseout );
				}
				else {
					obj.onmouseout = null;
				}
			}
	
			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}

	function dom_object_add_onclick_by_id( obj_id, click_event, capture_bubble ) {

		try {
			var obj_id;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_add_onclick(obj, click_event, capture_bubble );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}

	function dom_object_add_onclick( obj, click_event, capture_bubble ) {

		try {

			var func_string = '';
			var event_listener = false;
			var j;

			capture_bubble = ( capture_bubble ) ? capture_bubble : false;

			if ( typeof(obj.addEventListener) != 'undefined' ) {
				event_listener = true;
				obj.addEventListener( 'click', new Function(click_event), capture_bubble );
			}



			if ( typeof(obj.onclick) != 'undefined' ) {
				if ( !event_listener ) {

					if ( __DOM_CLICK_EVENTS[obj.id] == null ) {
						__DOM_CLICK_EVENTS[obj.id] = new Array();
					}

					__DOM_CLICK_EVENTS[obj.id].push(click_event);
				
				
					for ( j=0; j < __DOM_CLICK_EVENTS[obj.id].length; j++ ) {
						func_string = func_string + "\n" + __DOM_CLICK_EVENTS[obj.id][j];
					}
				
					obj.onclick = new Function( func_string );
							
					//alert( obj.onmouseover );

				}
				else {
					obj.onclick = null;
				}
			}
	
			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}



	}


	function dom_object_get_applied_height( obj ) {

		try {
			if ( typeof(obj.style.height) != 'undefined' && obj.style.height ) {
				var height = parseInt(obj.style.height);
				return height;
			}
			else {
				if ( (typeof(obj.offsetHeight) != 'undefined') && obj.offsetHeight ) {
					return obj.offsetHeight;
				}
			}

			return null;
			

		}
		catch(e) {
			_Dom_handle_error(e);
		}


	}

	function dom_object_get_applied_width( obj ) {

		try {
			if ( typeof(obj.style.width) != 'undefined' && obj.style.width ) {
				var width = parseInt(obj.style.width);
				return width;
			}
			else {
				if ( (typeof(obj.offsetWidth) != 'undefined') && obj.offsetWidth ) {
					return obj.offsetWidth;
				}
			}

			return null;
			

		}
		catch(e) {
			_Dom_handle_error(e);
		}


	}

	function dom_object_set_left_by_id( obj_id, left ) {

		try {
			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_set_left(dom_obj, left);
			}

			return false;
		}
		catch(e) {
			_Dom_handle_error(e);
		}
	}

	function dom_object_set_left( obj, left ) {

		try {
			obj.style.left = left.toString() + 'px';
		}
		catch(e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_set_top_by_id( obj_id, top ) {

		try {
			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_set_top(dom_obj, top);
			}

		}
		catch(e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_set_top( obj, top ) {

		try {
			obj.style.top = top.toString() + 'px';
		}
		catch(e) {
			_Dom_handle_error(e);
		}

	}


	function _Dom_handle_error( error_obj ) {
		try { 
			if ( (typeof(__DOM_DEBUG) != 'undefined') && __DOM_DEBUG ) {
				alert( error_obj.message );
			}
		}
		catch (ex) {
		}
	}

	function dom_object_get_x_offset( obj ) {
		var curleft = 0;
		if (obj.offsetParent) {

			while (obj.offsetParent) {
				curleft += obj.offsetLeft
				obj = obj.offsetParent;
			}
		}
		else if (obj.x) {
			curleft += obj.x;
		}

		return curleft;
	}

	function dom_object_get_y_offset( obj ) {

		var curtop = 0;
		if (obj.offsetParent) {

			while (obj.offsetParent) {
				curtop += obj.offsetTop;
				obj = obj.offsetParent;
			}

		}
		else if (obj.y) {
			curtop += obj.y;
		}

		
		return curtop;
	}
	
	function dom_object_enable_display_by_id( obj_id, display_type ) {

		try {
			var obj_id;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_enable_display( obj, display_type );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}


	}

	function dom_table_row_enable_display_by_id( obj_id ) {

		try {
			var obj_id;
			
			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_table_row_enable_display( obj );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}


	}

	function dom_table_row_enable_display( obj  ) {

		try {

			var display_type;

			if ( navigator.appName == "Microsoft Internet Explorer" ) { 
				display_type = 'block';
			}
			else {
				display_type = 'table-row';
			}

			return dom_object_change_display_type( obj, display_type );

		}
		catch(e) { 
			_Dom_handle_error(e);
		}

	}

	function dom_table_row_disable_display_by_id( obj_id ) {

		try {
			var obj_id;
			
			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_table_row_disable_display( obj );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}


	}

	function dom_table_row_disable_display( obj  ) {

		try {

			return dom_object_disable_display(obj);

		}
		catch(e) { 
			_Dom_handle_error(e);
		}

	}


	function dom_object_enable_display( obj, display_type ) {

		try {
			if ( !display_type ) {
				display_type = 'block';
			}

			return dom_object_change_display_type( obj, display_type );

		}
		catch(e) { 
			_Dom_handle_error(e);
		}

	}

	function dom_object_disable_display_by_id( obj_id, display_type ) {

		try {
			var obj_id;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_disable_display( obj, display_type );
			}

			return false;

		}
   		catch (e) {
			_Dom_handle_error(e);
	   	}


	}

	function dom_object_disable_display( obj, display_type ) {

		try {
			if ( !display_type ) {
				display_type = 'none';
			}

			return dom_object_change_display_type( obj, display_type );

		}
		catch(e) { 
			_Dom_handle_error(e);
		}

	}

	function dom_object_change_display_type( obj, new_display_type ) {

		try { 
			var style_object;
	
			if ( (new_display_type == 'table-row' || new_display_type == 'table') && navigator.appName == "Microsoft Internet Explorer" ) {
				new_display_type = 'block';
			}

			if ( style_object = dom_object_get_style(obj) ) {

				style_object.display = new_display_type;
				return true;
    			} 
			else {
				// we couldn't find the object, so we can't change its visibility
				return false;
		    	}
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_enable_by_id( obj_id ) { 

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_enable(obj);
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_enable( obj ) { 

		try {
			if ( typeof(obj.disabled) != 'undefined' ) {
				obj.disabled = false;
				return true;
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}


	function dom_object_disable_by_id( obj_id ) { 

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_disable(obj);
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_disable( obj ) { 

		try {
			if ( typeof(obj.disabled) != 'undefined' ) {
				obj.disabled = true;
				return true;
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}


	function dom_object_is_enabled_by_id( obj_id ) {

		try {
			var obj;

			if ( obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_is_enabled(obj);
			}

			return false;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_is_enabled( obj ) { 

		try {
			if ( typeof(obj.disabled) != 'undefined' ) {
				if ( obj.disabled == true ) {
					return false;
				}
			}

			return true;
		}
		catch (e) {
			_Dom_handle_error(e);
		}

	}


	function dom_get_scroll_top() {

		pos = 0;

		if (window.innerHeight) {
			pos = window.pageYOffset;
		}
		else if (document.documentElement && document.documentElement.scrollTop) {
			pos = document.documentElement.scrollTop;
		}
		else if (document.body) {
			pos = document.body.scrollTop;
		}

		return pos;
	}

	function dom_object_change_opacity_by_id( obj_id, opacity ) {

		try {
			var dom_obj;

			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_change_opacity(dom_obj, opacity);
			}

			return false;

		}
		catch(e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_change_opacity( obj, opacity ) {


		try { 

			var new_filter_string;
			var cur_filter_string;
			var opacity_filter = "alpha(opacity=" + opacity + ")";
			var match;


			if ( typeof(obj.style.opacity) != 'undefined' ) {		  
			    	obj.style.opacity = (opacity / 100); 
			}

			else if ( typeof(obj.style.MozOpacity) != 'undefined' ) {		  
			    	obj.style.MozOpacity = (opacity / 100);   
			}

			else if ( typeof(obj.style.KhtmlOpacity) != 'undefined' ) {		  
			    	obj.style.KhtmlOpacity = (opacity / 100);
			}

		    	else if ( typeof(obj.style.filter) != 'undefined' ) {

				if ( obj.style.filter ) {
					var opacRegexp = new RegExp("alpha\s*\\(\s*opacity\s*=\s*([0-9]+\\)\s*)");

					cur_filter_string = new String(obj.style.filter);	

				    	if ( cur_filter_string.match(opacRegexp) ) {

						new_filter_string = cur_filter_string.replace( opacRegexp, opacity_filter );
						obj.style.filter = new_filter_string;
					}
				    	else { 
					    	obj.style.filter = obj.style.filter + opacity_filter;
			    		}
			 	 }
				 else {
				 	obj.style.filter = opacity_filter;
	
				 }
			}

			
		}
		catch (e) {
			_Dom_handle_error(e);
		}


	}

	function dom_object_get_opacity_by_id( obj_id  ) {

		try {
			var dom_obj;

			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_get_opacity(dom_obj);
			}

			return false;

		}
		catch(e) {
			_Dom_handle_error(e);
		}

	}

	function dom_object_get_opacity( obj ) {


		try { 

			var found_opacity = false;
			var opacity_fractional = false; //some browsers use .2 to be 20% opacity, others use 20...
			var opacity_val;
			
			if ( typeof(obj.style.opacity) != 'undefined' ) {
				opacity_val = obj.style.opacity; 
				found_opacity = true;
				opacity_fractional = true;
			}

			else if ( typeof(obj.style.MozOpacity) != 'undefined' ) {	
			    	opacity_val = obj.style.MozOpacity;
				found_opacity = true;
				opacity_fractional = true;

			}

			else if ( typeof(obj.style.KhtmlOpacity) != 'undefined' ) {		  
			    	opacity_val = obj.style.KhtmlOpacity;
				found_opacity = true;
				opacity_fractional = true;
			}

		    	else if ( typeof(obj.style.filter) != 'undefined' ) {

				var cur_filter_string;
				var matches;
				var opacRegexp = new RegExp("alpha\s*\\(\s*opacity\s*=\s*(([0-9]+)\\)\s*)");

				cur_filter_string = new String(obj.style.filter);	

			    	if ( matches = cur_filter_string.match(opacRegexp) ) {
					opacity_val = matches[2];
				}
				else {
					opacity_val = 100;
				}

				found_opacity = true;
				opacity_fractional = false;


		 	 }

			 if ( found_opacity ) {
				if ( opacity_val ) {	

					if ( opacity_val < 1 ) {
						opacity_val = opacity_val * 100;
					}
					else if ( opacity_val == 1 && opacity_fractional ) {
						opacity_val = 100;
					}

				}
				else {
					opacity_val = 100;
				}

				return opacity_val;
			}

			return false;
			
		}
		catch (e) {
			_Dom_handle_error(e);
		}


	}

	function dom_object_opacity_fade_up_by_id( obj_id, end_value, increment, delay ) {

		try {
			var dom_obj;

			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_opacity_fade_up(dom_obj, end_value, increment, delay);
			}

			return false;

		}
		catch(e) {
			_Dom_handle_error(e);
		}
	}


	function dom_object_opacity_fade_down_by_id( obj_id, end_value, increment, delay ) {

		try {
			var dom_obj;

			if ( dom_obj = dom_get_object_by_id(obj_id) ) {
				return dom_object_opacity_fade_down(dom_obj, end_value, increment, delay);
			}

			return false;

		}
		catch(e) {
			_Dom_handle_error(e);
		}
	}

	function dom_object_opacity_fade_up( obj, end_value, increment, delay ) {

		try {
			return dom_object_opacity_fade( obj, end_value, increment, delay, __DOM_OBJECT_OPACITY_FADE_UP );
		}
		catch (e) {
			_Dom_handle_error(e);
		}


	}

	function dom_object_opacity_fade_down( obj, end_value, increment, delay ) {

		try {
			return dom_object_opacity_fade( obj, end_value, increment, delay, __DOM_OBJECT_OPACITY_FADE_DOWN );
		}
		catch (e) {
			_Dom_handle_error(e);
		}


	}


	function dom_object_opacity_fade( obj, end_value, increment, delay, direction ) {

		try {
			var cur_opacity;
			var new_opacity;
			var continue_fade = false;
			

			if ( !delay ) {
				delay = 10;
			}

			if ( !increment ) {
				increment = 10;
			}

			if ( !direction ) {
				throw 'Direction must be specified in dom_object_fade_opacity';
			}

			if ( cur_opacity = dom_object_get_opacity(obj) ) {
				
				if ( direction == __DOM_OBJECT_OPACITY_FADE_UP ) {
					if ( cur_opacity < end_value ) {
						continue_fade = true;
						
					}

					new_opacity = parseInt(cur_opacity) + increment;
				}
				else if ( direction == __DOM_OBJECT_OPACITY_FADE_DOWN ) {
					if ( cur_opacity > end_value ) {
						continue_fade = true;

					}

					new_opacity = parseInt(cur_opacity) - increment;
				}


				if ( continue_fade ) {
					
					
					if ( new_opacity > 100 ) {
						new_opacity = 100;
					}
					else if ( new_opacity < 0 ) {
						new_opacity = 0;
					}
					

					dom_object_change_opacity( obj, new_opacity );
					window.setTimeout( function () { dom_object_opacity_fade(obj, end_value, increment, delay, direction) }, delay );
				}

				
			}

		}
		catch (e) {
			_Dom_handle_error(e);
		}



	}
