	function addEvent(obj,evtType,func,cap){

				cap=cap||false;

				if(obj.addEventListener){

					obj.addEventListener(evtType,func,cap);

					return true;

				}else if(obj.attachEvent){

					if(cap){

						obj.setCapture();

						return true;

					}else{

						return obj.attachEvent("on" + evtType,func);

					}

				}else{

					return false;

				}

			}

			function getPageScroll(){

				var xScroll,yScroll;

				if (self.pageXOffset) {

					xScroll = self.pageXOffset;

				} else if (document.documentElement && document.documentElement.scrollLeft){

					xScroll = document.documentElement.scrollLeft;

				} else if (document.body) {

					xScroll = document.body.scrollLeft;

				}

				if (self.pageYOffset) {

					yScroll = self.pageYOffset;

				} else if (document.documentElement && document.documentElement.scrollTop){

					yScroll = document.documentElement.scrollTop;

				} else if (document.body) {

					yScroll = document.body.scrollTop;

				}

				arrayPageScroll = new Array(xScroll,yScroll);

				return arrayPageScroll;

			}

			function GetPageSize(){

				var xScroll, yScroll;

				if (window.innerHeight && window.scrollMaxY) {	

					xScroll = document.body.scrollWidth;

					yScroll = window.innerHeight + window.scrollMaxY;

				} else if (document.body.scrollHeight > document.body.offsetHeight){

					xScroll = document.body.scrollWidth;

					yScroll = document.body.scrollHeight;

				} else {

					xScroll = document.body.offsetWidth;

					yScroll = document.body.offsetHeight;

				}

				var windowWidth, windowHeight;

				if (self.innerHeight) {

					windowWidth = self.innerWidth;

					windowHeight = self.innerHeight;

				} else if (document.documentElement && document.documentElement.clientHeight) {

					windowWidth = document.documentElement.clientWidth;

					windowHeight = document.documentElement.clientHeight;

				} else if (document.body) {

					windowWidth = document.body.clientWidth;

					windowHeight = document.body.clientHeight;

				}	

				if(yScroll < windowHeight){

					pageHeight = windowHeight;

				} else { 

					pageHeight = yScroll;

				}

				if(xScroll < windowWidth){	

					pageWidth = windowWidth;

				} else {

					pageWidth = xScroll;

				}

				arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 

				return arrayPageSize;

			}

			

			var AdMoveConfig=new Object();

			AdMoveConfig.IsInitialized=false;

			AdMoveConfig.ScrollX=0;

			AdMoveConfig.ScrollY=0;

			AdMoveConfig.MoveWidth=0;

			AdMoveConfig.MoveHeight=0;

			AdMoveConfig.Resize=function(){

				var winsize=GetPageSize();

				AdMoveConfig.MoveWidth=winsize[2];

				AdMoveConfig.MoveHeight=winsize[3];

				AdMoveConfig.Scroll();

			}

			AdMoveConfig.Scroll=function(){

				var winscroll=getPageScroll();

				AdMoveConfig.ScrollX=winscroll[0];

				AdMoveConfig.ScrollY=winscroll[1];

			}

			addEvent(window,"resize",AdMoveConfig.Resize);

			addEvent(window,"scroll",AdMoveConfig.Scroll);

			function AdMove(id){

				if(!AdMoveConfig.IsInitialized){

					AdMoveConfig.Resize();

					AdMoveConfig.IsInitialized=true;

				}

				var obj=document.getElementById(id);

				obj.style.position="absolute";

				var W=AdMoveConfig.MoveWidth-obj.offsetWidth;

				var H=AdMoveConfig.MoveHeight-obj.offsetHeight;

				var x = W*Math.random(),y = H*Math.random();

				var rad=(Math.random()+1)*Math.PI/6;

				var kx=Math.sin(rad),ky=Math.cos(rad);

				var dirx = (Math.random()<0.5?1:-1), diry = (Math.random()<0.5?1:-1);

				var step = 1;

				var interval;

				this.SetLocation=function(vx,vy){x=vx;y=vy;}

				this.SetDirection=function(vx,vy){dirx=vx;diry=vy;}

				y=0;

				obj.CustomMethod=function(){

				   // obj.style.left = (x + AdMoveConfig.ScrollX) + "px";

					obj.style.top = (y + AdMoveConfig.ScrollY) + "px";

					rad=(Math.random()+1)*Math.PI/6;

					W=AdMoveConfig.MoveWidth-obj.offsetWidth;

					H=AdMoveConfig.MoveHeight-obj.offsetHeight;

					x = x + step*kx*dirx;

					if (x < 0){dirx = 1;x = 0;kx=Math.sin(rad);ky=Math.cos(rad);} 

					if (x > W){dirx = -1;x = W;kx=Math.sin(rad);ky=Math.cos(rad);}

					y = y + step*ky*diry;

					if (y < 0){diry = 1;y = 0;kx=Math.sin(rad);ky=Math.cos(rad);} 

					if (y > H){diry = -1;y = H;kx=Math.sin(rad);ky=Math.cos(rad);}

				}

				this.Run=function(){

					var delay = 20;

					interval=setInterval(obj.CustomMethod,delay);

					obj.onmouseover=function(){clearInterval(interval);}

					obj.onmouseout=function(){interval=setInterval(obj.CustomMethod, delay);}

				}

			}
