//<!--
	// See KB article about changing this dynamic HTML -->
	dynamicanimAttr = 'dynamicanimation'
	animCancel = 'skipanim'
	fpanimationPrefix = 'fpAnim'
	animateElements = new Array()
	currentElement = 0
	speed = 1
	stepsZoom = 8
	stepsWord = 8
	stepsFly = 17
	stepsSpiral = 16
	stepsSpiralWord = 19
	stepsElastic = 32
	steps = stepsZoom
	step = 0
	cornerPhase=0
	outEffect=0
	function remSuffix(str)
	{
		ind=str.indexOf('FP')
		str = str.substring(0,ind)
		return str
	}
	function dynAnimOut(el)
	{
		outEffect=1
		dynAnimation(el)
		outEffect=0
	}
	function dynAnimation(obj)
	{		
		animateElements = new Array()
		var ms = navigator.appVersion.indexOf('MSIE')
		var macness = navigator.appVersion.indexOf('Macintosh')

		ie4 = (ms>0) && (parseInt(navigator.appVersion.substring(ms+5, ms+6)) >= 4)
		ns6 = false
		if(!ie4)
		{
			if((navigator.appName == 'Netscape') &&
				(parseInt(navigator.appVersion.substring(0, 1)) >= 5))
			{
				ns6=true
				doc_els=document.getElementsByTagName('*')
			}
			else if((navigator.appName == 'Netscape') &&
				(parseInt(navigator.appVersion.substring(0, 1)) == 4))
			{
				doc_els=document.layers
			}
			else
				return
		}
		else
			doc_els=document.all
        if(outEffect && !ie4)
            return
		if(ie4)
		{
		    for (index=document.all.length-1; index >= document.body.sourceIndex; index--)
			{
				el = document.all[index]
				if(outEffect && el != obj)
					continue
				if(outEffect)
					animationId = el.id.substring(9,el.id.length)
				else
					animationId = el.id.substring(6,el.id.length)
				animation=remSuffix(animationId)
				if(null != animation)
				{
					altcnt=0
					if(	animation == 'dropWord'				||
						animation == 'flyTopRightWord'			||
						animation == 'flyBottomRightWord'		||
						animation == 'waveWords'			||
						animation == 'hopWords')
					{
						ih = el.innerHTML
						outString = ''
						i1 = 0
						iend = ih.length
						while(true)
						{
							i2 = startWord(ih, i1)
							if(i2 == -1)
							i2 = iend
							outWord(ih, i1, i2, false, '', outEffect ? obj.id : el.id)
							if(i2 == iend)
								break
							i1 = i2
							i2 = endWord(ih, i1)
							if(i2 == -1)
								i2 = iend
							if (animation == 'waveWords')
								outWordAlt(ih, i1, i2, true, animation, altcnt)
							else
								outWord(ih, i1, i2, true, (outEffect ? 'Out' : '') + animation,
									outEffect ?  obj.id : el.id)

							if(i2 == iend)
								break
							i1 = i2
							altcnt++
						}
						document.all[index].innerHTML = outString
						document.all[index].style.posLeft = 0
						document.all[index].setAttribute(animCancel, true)
						document.all[index].style.visibility='visible'
					}
				}
			}
		}
		i = 0
		for (index=0; index < doc_els.length; index++)
		{
			el = doc_els[index]
			if(0 != el.id.indexOf(fpanimationPrefix))
				continue
			if (ie4)
			{
				elprops=el.style
				scrollOffsetTop=document.body.scrollTop
				docHeight=document.body.offsetHeight
				docWidth=document.body.offsetWidth
				elW=100
				elH=el.offsetHeight
			}
			else
			{
				scrollOffsetTop=window.pageYOffset
				docHeight=window.innerHeight
				docWidth=window.innerWidth
				if (ns6)
				{
					elprops=el.style
					elW=100
					elH=el.offsetHeight
				}
				else{
					elprops=el
					elW=el.clip.width
					elH=el.clip.height
				}
			}
			if(outEffect)
				animationId = el.id.substring(9,el.id.length)
			else
				animationId = el.id.substring(6,el.id.length)
			animation=remSuffix(animationId)
			if(outEffect && (obj != el))
			{
				if(el.SRCID != obj.id)
					continue
			}
			if (null != animation )
			{
				if(ie4 && null!=el.getAttribute(animCancel, false))
					continue
				if(!ie4)
				{
					elprops.posLeft=elprops.left
					elprops.posTop=elprops.top
				}
				el.startL=offsetLeft(el)
				if(animation == 'flyLeft')
				{
					elprops.posLeft = -offsetLeft(el)-elW
					elprops.posTop = 0
				}
				else if(animation == 'flyRight' || animation=='elasticRight')
				{
					elprops.posLeft = -offsetLeft(el)+docWidth
					elprops.posTop = 0
				}
				else if(animation == 'flyTop' || animation == 'dropWord')
				{
					elprops.posLeft = 0
					elprops.posTop = scrollOffsetTop-offsetTop(el)-elH
				}
				else if(animation == 'flyBottom' || animation == 'elasticBottom')
				{
					elprops.posLeft = 0
					elprops.posTop = scrollOffsetTop-offsetTop(el)+docHeight 
				}
				else if(animation == 'flyTopLeft')
				{
					elprops.posLeft = -offsetLeft(el)-elW
					elprops.posTop = scrollOffsetTop-offsetTop(el)-elH
				}
				else if(animation == 'flyTopRight' || animation == 'flyTopRightWord')
				{
					elprops.posLeft = -offsetLeft(el)+docWidth
					elprops.posTop = scrollOffsetTop-offsetTop(el)-elH
				}
				else if(animation == 'flyCorner')
				{
					elprops.posLeft = docWidth*0.2-offsetLeft(el)
					
					elprops.posTop = scrollOffsetTop-offsetTop(el)+docHeight 
				}
				else if(animation == 'flyBottomLeft')
				{
					elprops.posLeft = -offsetLeft(el)-elW
					elprops.posTop = scrollOffsetTop-offsetTop(el)+docHeight
				}
				else if(animation == 'flyBottomRight' || animation == 'flyBottomRightWord')
				{
					elprops.posLeft = -offsetLeft(el)+docWidth
					elprops.posTop = scrollOffsetTop-offsetTop(el)+docHeight
				}
				else if(animation == 'spiral')
				{
					elprops.posLeft = -offsetLeft(el)+docWidth
					elprops.posTop = scrollOffsetTop-offsetTop(el)+docHeight
				}
				else if((animation.indexOf('waveWords') != -1) || animation=='hopWords')
				{
					if(i)
					{
						prevEl=animateElements[i-1]
						elprops.r = offsetLeft(el)-prevEl.startL
					}
					else
						elprops.r = offsetLeft(el)
				}
				else if(animation == 'wipeLR' || animation == 'wipeMID')
				{
					if (ie4 && elprops.position=='absolute')
					{
						el.sizeW=el.offsetWidth

						if(macness < 0)
							elprops.clip='rect(0 0 0 0)'
					}
					else if (!ie4)
					{
						if (ns6)
						{
							elprops.clip='rect(0 0 0 0)'
						}
						else{
							el.sizeW=el.clip.width
							el.clip.width=0
						}
					}
				}
				else if(animation == 'wipeTB')
				{
					if (ie4 && elprops.position=='absolute')
					{
						elprops.clip='rect(0 0 0 0)'
					}
					else if(!ie4)
					{
						if (ns6)
						{
							elprops.clip='rect(0 0 0 0)'
						}
						else{
							el.sizeH=el.clip.height
							el.clip.height=0
						}
					}
				}
				else if(animation == 'zoomIn')
				{
					elprops.posLeft = 0
					elprops.posTop = 0
				}
				else if(animation == 'zoomOut')
				{
					elprops.posLeft = 0
					elprops.posTop = 0
				}
				else
				{
					continue
				}
				if(!outEffect)
				{
					el.initLeft = elprops.posLeft
					el.initTop  = elprops.posTop
					el.endLeft  = 0
					el.endTop   = 0
					elprops.visibility = 'hidden'
				}
				else
				{
					el.initLeft = 0
					el.initTop  = 0
					el.endLeft = elprops.posLeft
					el.endTop  = elprops.posTop
					elprops.posTop = 0
					elprops.posLeft = 0
				}
				if(!ie4)
				{
					elprops.left=elprops.initLeft
					elprops.top =elprops.initTop
				}
				animateElements[i++] = el
			}
		}
		if(animateElements.length > 0)
		{
			if(outEffect)
				window.setTimeout('animate(1);', speed, 'Javascript')
			else
				window.setTimeout('animate(0);', speed, 'Javascript')
		}
	}
	function offsetLeft(el)
	{
		if(ie4 || ns6)
		{
			x = el.offsetLeft
			for (e = el.offsetParent; e; e = e.offsetParent)
				x += e.offsetLeft
			return x
		}
		else
		{
			x = el.pageX
			return x
		}
	} 
	function offsetTop(el)
	{
		if(ie4 || ns6)
		{
			y = el.offsetTop
			for (e = el.offsetParent; e; e = e.offsetParent)
				y += e.offsetTop;
			return y
		}
		else
		{
			y = el.pageY
			return y	
		}
	}
	function startWord(ih, i)
	{
		for(tag = false; i < ih.length; i++)
		{
			c = ih.charAt(i)
			if(c == '<')
			{
				if(ih.substring(i+1, i+4) == 'IMG')
				return i;
				tag = true
			}
			if(!tag)
				return i
			if(c == '>')
				tag = false
		}
		return -1
	}
	function endWord(ih, i)
	{
		nonSpace = false
		space = false
		img = false
		if(ih.charAt(i) == '<')
		{
			img = true
			i++;
		}
		while(i < ih.length)
		{
			c = ih.charAt(i)
			if(c != ' ')
				nonSpace = true
			if(img && c == '>')
				img = false;
			if(nonSpace && !img && c == ' ')
				space = true
			if(c == '<')
				return i
			if(space && c != ' ')
				return i
			i++
		}
		return -1
	}
	function outWord(ih, i1, i2, dyn, anim, srcID)
	{
		if(dyn)
			if(!outEffect)
				outString += '<SPAN ID=\'' +  fpanimationPrefix + anim + 'FP\' style=\'position: relative; visibility: hidden;\'>'
			else
				outString += '<SPAN SRCID=\'' + srcID + '\'ID=\'' +  fpanimationPrefix + anim + 'FP\' style=\'position: relative;\'>'
		outString += ih.substring(i1, i2)
		if(dyn)
			outString += '</SPAN>'
	}
	function outWordAlt(ih, i1, i2, dyn, anim, altcnt)
	{
		if(dyn)
		{
			if(altcnt%2)
				outString += '<SPAN ID=\'' +  fpanimationPrefix + anim + 'LFP\' style=\'position: relative;  visibility: hidden;\'>'
			else
				outString += '<SPAN ID=\'' +  fpanimationPrefix + anim + 'RFP\' style=\'position: relative;  visibility: hidden;\'>'
		}
			
		outString += ih.substring(i1, i2)
		if(dyn)
			outString += '</SPAN>'
	}
	function animate(animOut)
	{
		{
			el = animateElements[currentElement]

			if(animOut)
				animationId = el.id.substring(9,el.id.length);
			else
				animationId = el.id.substring(6,el.id.length);
			animation=remSuffix(animationId)
			if (ie4)
				elprops=el.style
			else{
				if (ns6)
					elprops=el.style
				else
					elprops=el
			}

			if(!step && !animOut)
				elprops.visibility='visible'
			step++
			if(animation == 'spiral')
			{
				steps = stepsSpiral
				v = step/steps
				rf = 1.0 - v
				t = v * 2.0*Math.PI
				rx = Math.max(Math.abs(el.initLeft), 200)
				ry = Math.max(Math.abs(el.initTop),  200)
				elprops.posLeft = Math.ceil(-rf*Math.cos(t)*rx)
				elprops.posTop  = Math.ceil(-rf*Math.sin(t)*ry)
			}
			else if(animation == 'waveWordsL' || animation=='hopWords' || animation == 'waveWords')
			{
				steps = stepsSpiralWord
				v = step/steps
				rf = (1.0 - v)
				t = v * 1.0*Math.PI
				elprops.posLeft = Math.ceil(-rf*Math.cos(t)*elprops.r)
				elprops.posTop  = Math.ceil(-rf*Math.sin(t)*elprops.r)
			}
			else if(animation == 'waveWordsR')
			{
				steps = stepsSpiralWord
				v = step/steps
				rf = (1.0 - v)
				t = v * 1.0*Math.PI
				elprops.posLeft = Math.ceil(-rf*Math.cos(t)*elprops.r)
				elprops.posTop  = Math.ceil( rf*Math.sin(t)*elprops.r)
			}
			else if(animation == 'zoomIn')
			{
				steps = stepsZoom
				elprops.fontSize = Math.ceil(50+50*step/steps) + '%'
				elprops.posLeft = 0
			}
			else if(animation == 'zoomOut')
			{
				steps = stepsZoom
				fontSz=Math.ceil(100+200*(steps-step)/steps) + '%'
				elprops.fontSize = fontSz
				elprops.posLeft = 0
			}
			else if(animation == 'elasticRight')
			{
				steps = stepsElastic
				v = step/steps
				rf=Math.exp(-v*7)
				t = v * 1.5*Math.PI
				rx =Math.abs(el.initLeft)
				elprops.posLeft = rf*Math.cos(t)*rx
				elprops.posTop  = 0
			}
			else if(animation == 'elasticBottom')
			{
				steps = stepsElastic
				v = step/steps
				rf=Math.exp(-v*7)
				t = v * 2.5*Math.PI
				ry =Math.abs(el.initTop)
				elprops.posLeft = 0
				elprops.posTop  = rf*Math.cos(t)*ry
			}
			else if(animation == 'wipeLR')
			{
				steps = stepsElastic
				if(ie4 && elprops.position=='absolute')
					elprops.clip = 'rect(0 '+ step/steps*100 +'% 100% 0)'
				else if (!ie4)
				{
					if (ns6)
					{
						postop = elprops.top
						posleft = elprops.left
						str='position:absolute;top:'+postop+';left:'+posleft+';clip:rect(0px ' + step/steps*el.offsetWidth + 'px '+el.offsetHeight+'px 0px)';
						el.setAttribute('style',str);
					}
					else
						elprops.clip.right=step/steps*el.sizeW
				}
			}
			else if(animation == 'wipeTB')
			{
				steps = stepsElastic
				if(ie4 && elprops.position=='absolute')
					elprops.clip = 'rect(0 100% '+step/steps*el.offsetHeight+'px 0)'
				else{
					if (ns6)
					{
						postop = elprops.top
						posleft = elprops.left
						str='position:absolute;top:'+postop+';left:'+posleft+';clip:rect(0px '+ el.offsetWidth + 'px ' +step/steps*el.offsetHeight+'px 0px)';
						el.setAttribute('style',str);
					}
					else{
						elprops.clip.bottom=step/steps*el.sizeH		
					}
				}
			}
			else if(animation == 'wipeMID')
			{
				steps = stepsElastic
				if(ie4 && elprops.position=='absolute')
				{
					elprops.clip = 'rect(0 '+el.sizeW/2*(1+step/steps)+'px 100% '+el.sizeW/2*(1-step/steps)+')'
				}
				else if(!ie4)
				{
					if (ns6)
					{
						postop = elprops.top
						posleft = elprops.left
						str='position:absolute;top:'+postop+';left:'+posleft+';clip:rect(0px '+ el.offsetWidth/2*(1+step/steps) + 'px '+el.offsetHeight+'px '+el.offsetWidth/2*(1-step/steps)+'px)';
						el.setAttribute('style',str);	
					}
					else{
						elprops.clip.right=el.sizeW/2*(1+step/steps)
						elprops.clip.left=el.sizeW/2*(1-step/steps)
					}
				}
			}
			else if(animation == 'flyCorner')
			{
				if(!cornerPhase)
				{
					steps = stepsElastic/2
					v = step/steps
					rf=Math.exp(-v*7)
					t = v * 2.5*Math.PI
					ry =Math.abs(el.initTop)
					elprops.posTop  = Math.ceil(rf*Math.cos(t)*ry)
				}
				else
				{
					steps = stepsFly
					dl = el.initLeft / steps
					elprops.posLeft = elprops.posLeft - dl
					elprops.posTop = 0
				}
			}
			else
			{
				steps = stepsFly
				if(animation == 'dropWord' || animation == 'flyTopRightWord' || animation == 'flyBottomRightWord')
					steps = stepsWord
				dl = (el.endLeft - el.initLeft) / steps
				dt = (el.endTop  - el.initTop)  / steps
				elprops.posLeft = elprops.posLeft + dl
				elprops.posTop = elprops.posTop + dt
			}
			if (step >= steps) 
			{
				if(!(animation == 'wipeLR'	||
					animation  == 'wipeTB'	||
					animation  == 'wipeMID'	||
					(animation == 'flyCorner' && !cornerPhase)))
				{
					elprops.posLeft = el.endLeft
					elprops.posTop = el.endTop
				}
				if(animOut)
				{
					elprops.visibility='hidden'
				}

				step = 0
				if(animation=='flyCorner' && !cornerPhase)
					cornerPhase=1
				else
				{
					cornerPhase=0
					currentElement++
				}

			}
			if(!ie4)
			{
				elprops.left = elprops.posLeft
				elprops.top = elprops.posTop
			}
			if(currentElement < animateElements.length)
			{
				if(animOut)
					window.setTimeout('animate(1);', speed, 'Javascript')
				else					
					window.setTimeout('animate(0);', speed, 'Javascript')
			}
			else
				currentElement=0
		}
	}
	function rollIn(el)
	{
		var ms = navigator.appVersion.indexOf('MSIE')
		ie4 = (ms>0) && (parseInt(navigator.appVersion.substring(ms+5, ms+6)) >= 4)
		if(ie4)
		{
			el.initstyle=el.style.cssText;el.style.cssText=el.fprolloverstyle
		}
	}
	function rollOut(el)
	{
		var ms = navigator.appVersion.indexOf('MSIE')
		ie4 = (ms>0) && (parseInt(navigator.appVersion.substring(ms+5, ms+6)) >= 4)
		if(ie4)
		{
			el.style.cssText=el.initstyle
		}
	}
	function clickSwapStyle(el)
	{
		var ms = navigator.appVersion.indexOf('MSIE')
		ie4 = (ms>0) && (parseInt(navigator.appVersion.substring(ms+5, ms+6)) >= 4)
		if(ie4)
		{
			ts=el.style.cssText
			el.style.cssText=el.fprolloverstyle
			el.fprolloverstyle=ts
		}
	}
	function clickSwapImg(el)
	{
        if(document.all || document.layers)
        {
    		ts=el.src
    		el.src=el.lowsrc
    		el.lowsrc=ts
        }
	}
//-->


