		function ticker(id, images, delay, transition) {
			this.name='t'+id;
			this.active = true;
			this.position = 0;
			this.run = runTicker;
			this.delay = delay;
			this.transition = transition;
			this.images = images;
		}
		function tickerElement(section, image, headline, coid, topic, url) {
			this.headline = headline;
			this.coid = coid;
			this.section = section;
			this.topic = topic;
			this.url = url;
			this.image = image;
		}
		
		function initializeTicker(tickerName) {
			tickerHTML = '';
			tickerHTML += '<div class="ticker" id="' + tickerName + '" style="position:relative; overflow:hidden;">';
			elementList = tickers[tickerName].elements;
			for(e=0; e<elementList.length; e++) {
				tickerHTML += '<div  id="' + tickerName + e + '" onmouseover="tickers[\'' + tickerName + '\'].active = false;"  onmouseout="tickers[\'' + tickerName + '\'].active = true;" class="tickerElement" style="position:absolute; left:0px; top:0px; width:100%; visibility:hidden;">';
				tickerHTML += '<a href="' + fixString(elementList[e].url) + '">';
				if (elementList[e].image != '' && tickers[tickerName].images) tickerHTML += '<img src="' + elementList[e].image + '" alt="' + elementList[e].headline + '" align="left" border="0" />';
				tickerHTML += elementList[e].headline + '</a></div>';
			}
			tickerHTML += '</div>';
			document.write(tickerHTML);
			tickers[tickerName].run();
		}
		
		function nextTick(tickerid) {
			tickers[tickerid].run();
		}
		
		function runTicker() {
			switch (this.transition){
			case 'slideright':
				break;
			case 'fade':
				document.getElementById(this.name + this.position).style.visibility = 'hidden';
				if (this.position < this.elements.length-1) this.position++;
				else this.position = 0;
				document.getElementById(this.name + this.position).style.visibility = 'visible';
				fadeIn(this.name, true);
				setTimeout("fadeOut('" + this.name + "', true)", this.delay);
				break;
			default:
				break;
			}
		}

		function fadeIn(layerName, start) {
			if (start) document.getElementById(layerName).filters.item(0).opacity = 0 
			if (document.getElementById(layerName).filters.item(0).opacity+7 <= 100) {
				document.getElementById(layerName).filters.item(0).opacity += 7;
				setTimeout("fadeIn('" + layerName + "', " + false + ")", 5);
			} else {
				document.getElementById(layerName).filters.item(0).opacity = 100;
			}
		}
		function fadeOut(layerName, start) {
			if (start) document.getElementById(layerName).filters.item(0).opacity = 100 
			if (document.getElementById(layerName).filters.item(0).opacity-7 > 0) {
				document.getElementById(layerName).filters.item(0).opacity -= 7;
				setTimeout("fadeOut('" + layerName + "', " + false + ")", 5);
			} else {
				document.getElementById(layerName).filters.item(0).opacity = 0;
				setTimeout("nextTick('" + layerName + "')", 50);
			}
		}
		
		// FIX THE STRINGS (apostrophes)
		function fixString(strText) {
			var newstr = strText.replace(/~/g, "'");
			return newstr;
		}

