var isIE = (navigator.appName.indexOf("Microsoft") > -1);
var d = document;

if (!levelArray)	var levelArray = new Array();


function init()
{
	genTopInfo();
	genTopNav();
	genFooter();
	if (d.getElementById('leftNavContainer')) genLeftNav();
	if (d.getElementById('toolsContainer'))	genTools();
	if (d.getElementById('letterNav')) genLetterNav();
	
	if (levelArray.length == 0)	getLevel();
	if (levelArray.length > 0)	highlightTopNav();
	if (levelArray.length > 0)	highlightLeftNav();
	
	if (levelArray.length > 0)	genBreadcrumbs();
	setFieldFocus();
	//setBtnOver();
	if (d.getElementById('calNav'))	showHideCal('bondItemsContainer', 'calNav', 0);
	if (d.getElementById('investNav'))	showHideObj('investContent', 'investNav', 'UL', 0);
}

function getLevel()
{
	var url = location.pathname;
	var array = url.split('/');
	
	for (var i=0; i<array.length; i++)
	{
		if (array[i].indexOf('_') >= 0)
		{
			var array1 = array[i].split('_');
			for (var j=0; j<array1.length; j++)
			{
				levelArray.push(array1[j]);
			}
			
		}
		else
		{
			levelArray.push(array[i]);
		}
	}
	
	levelArray.shift();
	levelArray.shift();
	
	if (levelArray[0] == 'hkgb')
	{
		levelArray.shift();
		
		var array = new Array();
		for (var i=0; i<levelArray.length; i++)
		{
			if (levelArray[i] == 'en' || levelArray[i] == 'tc' || levelArray[i] == 'sc')	continue;
			array.push(levelArray[i].replace('.pl', ''));
		}
		levelArray = array;
	}
	
	var obj = levelArray[levelArray.length-1];
	if (obj != 'index.html')
	{
		levelArray[levelArray.length-1] = obj.replace('.html', '');
	}
	else
	{
		levelArray.pop();
	}
	//alert(array);
}

function showPulldown(btn, id)
{
	//if (btn.className.indexOf('active') >= 0)	return;
	
	var menu = d.getElementById(id + '_menu');
	
	showLayer(1);
	btn.onmouseover		= function() {menu.hit = true;	showLayer(1);};
	menu.onmouseover	= function() {menu.hit = true;	showLayer(1);};
	btn.onmouseout		= function() {menu.hit = false;	showLayer(0);};
	menu.onmouseout		= function() {menu.hit = false;	showLayer(0);};
	
	function showLayer(over)
	{
		if (over == 1)
		{
			if (btn.id != levelArray[0] && btn.className.indexOf('active') < 0)	btn.className += ' active';
			menu.style.display = 'block';
		}
		else
		{
			if (btn.id != levelArray[0])	btn.className = btn.className.replace('active', '');
			
			setTimeout(function()
			{
				if (!menu.hit)
				{
					menu.style.display = 'none';
				}
			}, 10);
		}
	}
}

function highlightTopNav()
{
	var obj = levelArray[0];
	//alert(obj);
	if (!d.getElementById(obj))	return;
	
	var btn = d.getElementById(obj);
	btn.className += ' active';
	
	/*
	if (!d.getElementById(obj + '_menu'))	return;
	
	var menu = d.getElementById(obj + '_menu');
	menu.style.display = 'block';
	*/
}

function highlightLeftNav()
{
	var obj = levelArray[0];
	if (!d.getElementById(obj + '_leftMenu'))	return;
	//var btn = d.getElementById(obj);
	var menuM = d.getElementById(obj + '_leftMenu');
	menuM.style.display = 'block';
	//var btn = getElementByRel('leftNav', obj);
	//btn.className += ' active';
	//alert(levelArray);
	if (!levelArray[1])	return;
	
	var obj1 = levelArray[1];
	if (!getElementByRel('leftNavContainer', obj1))	return;
	
	var btn = getElementByRel('leftNavContainer', obj1);
	btn.className += ' active';
	
	if (!d.getElementById(obj1 + '_leftSubMenu'))	return;
	
	var menu = d.getElementById(obj1 + '_leftSubMenu');
	
	menu.style.display = 'block';
	
	var obj2 = levelArray[2];
	//alert(obj1 + '_leftSubMenu');
	var btn1 = getElementByRel(obj1 + '_leftSubMenu', obj2);
	btn1.className += ' active';
	
	if (!d.getElementById('toolsContainer'))	return;
	
}

function getElementByRel(parent, obj)
{
	var a = d.getElementById(parent).getElementsByTagName('a');
	
	for (var i=0; i<a.length; i++)
	{
		if (a[i].rel == obj)
		{
			return a[i];
		}
	}
}

function highlightContentTab()
{
	var obj = levelArray[3];
	if (!d.getElementById(obj))	return;
	
	var btn = d.getElementById(obj);
	btn.className += ' active';
}

function genBreadcrumbs()
{
	if (!d.getElementById('breadcrumb'))	return;
	var breadcrumbs = d.getElementById('breadcrumb');
	
	var a = createA('/en/index.html', '_self', 'Home');
	breadcrumbs.appendChild(a);
	
	for (var i=0; i<levelArray.length; i++)
	{
		if (!levelArray[i])	break;
		
		var obj = levelArray[i];
		if (d.getElementById(levelArray[i]))
		{			
			var btn = d.getElementById(levelArray[i]);
			//alert(levelArray[i]);
			
		}
		else
		{		//alert(levelArray[i]); 
				var btn = getElementByRel('leftNav', levelArray[i]);
		}
		if (!btn) break;
		var txt = (isIE)	?	btn.innerText	:	btn.textContent;
		var link = btn.href;
		
		breadcrumbs.innerHTML += ' > ';
		
		if (i < levelArray.length-1)
		{
			//var a = createA(getLink(i), '_self', txt);
			var a = createA(link, '_self', txt);
			breadcrumbs.appendChild(a);
			
		}
		else
		{			
			breadcrumbs.innerHTML += txt;
		}
	}
}

function checkURL(array)
{
	var url = window.top.location.href;
	var id;
	var va = [["/", "/"], ["=", ""]];
	
	for (var item=0; item<va.length; item++)
	{
		for (var i=0; i<array.length; i++)
		{
			if (url.indexOf((va[item][0] + array[i] + va[item][1])) >= 0)
			{
				id = array[i];
				break;
			}
		}
	}
	
	return id;
}

/*Change language*/
function changeLanguage(target)
{
	var array = new Array("en", "tc", "sc");
	var nowL = checkURL(array);
	var va = [["/", "/"], ["=", ""]];
	var url = window.top.location.href;
	for (var item=0; item<va.length; item++)
	{
		if (url.indexOf((va[item][0] + nowL + va[item][1])) >= 0)
		{
			url = url.replace((va[item][0] + nowL + va[item][1]), (va[item][0] + target + va[item][1]));
			break;
		}
	}
	if (url.substring((url.length-1), url.length) == '#')	url = url.substring(0, (url.length-1))
	
	window.top.location.href = url;
}

/*Popup a new window*/
function NewWindow(mypage, myname, w, h, scroll,resizable) {
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable='+resizable+','
	win = window.open(mypage, myname, winprops)
	win.self.focus()
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function createImg(src, alt, w, h, link, t, className)
{
	var img = d.createElement('img');
	if (src)	img.setAttribute('src', src);
	if (alt)	img.setAttribute('alt', alt);
	if (w)	img.setAttribute('width', w);
	if (h)	img.setAttribute('height', h);
	if (className)	img.className = className;
	
	if (link)
	{
		img.setAttribute('border', 0);
		
		var a = d.createElement('a');
		a.setAttribute('href', link);
		if (t && typeof(t) != 'undefined')	a.setAttribute('target', t);
		a.appendChild(img);
		return a;
	}
	else
	{	
		return img;
	}
}

function createA(link, t, txt, id, className)
{		
	var a = d.createElement('a');
	if (link)	a.setAttribute('href', link);
	if (t && typeof(t) != 'undefined')	a.setAttribute('target', t);
	
	//if (txt)	a.appendChild(d.createTextNode(txt));
	if (txt)	a.innerHTML = txt;
	if (id)	a.setAttribute('id', id);
	if (className)	a.className = className;
	
	return a;
}

function createDiv(id, className, txt)
{		
	var div = d.createElement('div');
	if (id)	div.setAttribute('id', id);
	if (className)	div.className = className;
	//if (txt)	div.appendChild(d.createTextNode(txt));
	if (txt)	div.innerHTML = txt;
	return div;
}

function createTag(tag, id, className)
{		
	var div = d.createElement(tag);
	if (id)	div.setAttribute('id', id);
	if (className)	div.className = className;
	return div;
}

function createInput(name, type, value, className)
{		
	var input = d.createElement('input');
	if (name)	input.setAttribute('name', name);
	if (type)	input.setAttribute('type', type);
	if (value)	input.setAttribute('value', value);
	if (className)	input.className = className;
	return input;
}

function startFading(el)
{
  if (el.fadinTimeout)	clearTimeout(el.fadinTimeout);
  el.style.visibility = 'visible';
  el.style.zIndex = 2;
  setOpacity(el, 0);
  fadeImage(el, 0);
}

function fadeImage(el, currentOpacity)
{
  currentOpacity += 10;

  if (currentOpacity > 100)
  {
    setOpacity(el, 100);
    el.style.zIndex = 1;
	if (el.fadinTimeout)	clearTimeout(el.fadinTimeout);
  }
  else
  {
    setOpacity(el, currentOpacity);
    el.fadinTimeout = setTimeout(function() { fadeImage(el, currentOpacity); }, 30);
  }
}

function setOpacity(el, opacity)
{
	opacity /= 100;
	el.style.opacity = opacity;
	el.style.MozOpacity = opacity;
	el.style.filter = "alpha(opacity=" + (opacity*100) + ")";
}

function setBtnOver()
{
	var img = d.getElementsByTagName('img');
	
	for (var i=0; i<img.length; i++)
	{
		if (img[i].className.indexOf('btnOver') < 0)	continue;
		if (img[i].src.indexOf('_over') >= 0)			img[i].clicked = true;
		
		img[i].onmouseover = function()
		{
			if (this.clicked)	return;
			var ext = this.src.substring(this.src.length-4, this.src.length);
			this.src = this.src.replace(ext, '_over' + ext);
		}
		
		img[i].onmouseout = function()
		{
			if (this.clicked)	return;
			var ext = this.src.substring(this.src.length-4, this.src.length);
			this.src = this.src.replace('_over' + ext, ext);
		}
	}
}

function setFieldFocus()
{
	var input = d.getElementsByTagName('input');
	
	for (var i=0; i<input.length; i++)
	{
		if (input[i].type != 'text')			continue;
		//if (input[i].className == 'routeField')	continue;
		
		input[i].onfocus = function()
		{
			if (this.value == this.defaultValue)	this.value = '';
		}
		
		input[i].onblur = function()
		{
			if (this.value == '')	this.value = this.defaultValue;
		}
	}
}

function setChildNodes(obj, tagName)
{
	var array = new Array();
	
	for (var i=0; i<obj.childNodes.length; i++)
	{
		if (tagName)
		{
			//alert(obj.childNodes[i].tagName)
			if (obj.childNodes[i].tagName != tagName)	continue;
		}
		if (obj.childNodes[i].toString().toLowerCase().indexOf('text') >= 0)	continue;
		array.push(obj.childNodes[i]);
	}
	
	return array;
}

//Specify spectrum of different font sizes:
var szs = new Array('85%', '90%', '105%');
//var szs = new Array('x-small', 'small', 'medium');
//var szs = new Array('1em', '1.05em', '1.10em', '1.15em');
var startSz = sz = 0;

function getFontSize()
{	
	if (getCookie('fontSize') == null)
	{		
		startSz = 0;
	}
	else
	{ 
		startSz = getCookie('fontSize');
		if (startSz == "NaN")	startSz = 0;
	}	
	changeFontSize(startSz, true);
}

function changeFontSize(inc, start)
{
	if (!document.getElementById) return;
	var d = document,cEl = null,sz = eval(startSz),i,j,cTags;
	
	if (!start)
	{
		sz += inc;
		
		if ( sz < 0 ) sz = 0;
		if ( sz > (szs.length-1) ) sz = (szs.length-1);
		startSz = sz;
	}
	else
	{
		sz = inc;
	}
	
	cEl = d.getElementsByTagName('body')[0];
	cEl.style.fontSize = szs[ sz ];	
	setCookie("fontSize", sz, nd, cpath, cdomain);

}

var nd= new Date();
nd.setTime(nd.getTime()+(365*24*60*60*1000));
//cdomain = (location.domain) ? location.domain : null;
var cdomain = (location.domain) ? location.domain : null;
var cpath = "/";

function setCookie(name, value, expires, path, domain, secure)
{
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");

  document.cookie = curCookie;
}

function getCookie(name)
{
	if (document.cookie.indexOf(name) < 0)
	{		
		return null;
	}
	else
	{	
		var startStr = document.cookie.indexOf(name) + name.length + 1;
		var endStr = document.cookie.indexOf(";", startStr);
		if (endStr == -1)	endStr = document.cookie.length;
		return unescape(document.cookie.substring(startStr, endStr));
	}
}
/*end of change fontsize*/

function showHideCal(obj, self, num)
{
	var div = setChildNodes(d.getElementById(obj), 'DIV');
	var btns = setChildNodes(d.getElementById(self), 'A');
	
	for (var i=0; i<div.length; i++)
	{
		div[i].style.display = 'none';
	}
	
	div[num].style.display = 'block';
	
	for (var i=0; i<btns.length; i++)
	{
		btns[i].className = btns[i].className.replace(/active/, '');
	}
	
	btns[num].className += ' active';
}

function showHideDiv(obj, num)
{
	var div = setChildNodes(d.getElementById(obj), 'DIV');
	
	for (var i=0; i<div.length; i++)
	{
		div[i].style.display = 'none';
	}
	
	div[num].style.display = 'block';
}

function showAll(obj)
{
	var div = setChildNodes(d.getElementById(obj), 'DIV');
	
	for (var i=0; i<div.length; i++)
	{
		div[i].style.display = 'block';
	}
}
function displayDropDownList(id) {
	var btnPull = d.getElementById(id);
	var menuPull = d.getElementById(id+"List");
	
	
	showLayer(1);
	btnPull.onmouseover		= function() {menuPull.hit = true;	showLayer(1);};
	menuPull.onmouseover	= function() {menuPull.hit = true;	showLayer(1);};
	btnPull.onmouseout		= function() {menuPull.hit = false;	showLayer(0);};
	menuPull.onmouseout		= function() {menuPull.hit = false;	showLayer(0);};
	
	function showLayer(over)
	{
		if (over == 1)
		{
			if (btnPull.className.indexOf('active') < 0)	btnPull.className += ' active';
			menuPull.style.display = 'block';
		}
		else
		{
			btnPull.className = btnPull.className.replace('active', '');
			setTimeout(function()
			{
				if (!menuPull.hit)
				{
					menuPull.style.display = 'none';
				}
			}, 10);
		}
	}
}
function showHideObj(obj, self, objType, num)
{
	var child = setChildNodes(d.getElementById(obj), objType);
	var btns = setChildNodes(d.getElementById(self), 'A');
	
	for (var i=0; i<child.length; i++)
	{
		child[i].style.display = 'none';
	}
	
	child[num].style.display = 'block';
	
	for (var i=0; i<btns.length; i++)
	{
		btns[i].className = btns[i].className.replace(/active/, '');
	}
	
	btns[num].className += ' active';
}

function GetParam(name)
{
	var start=location.search.indexOf("?"+name+"=");
	if (start<0) start=location.search.indexOf("&"+name+"=");
 	if (start<0) return '';
 	start += name.length+2;
 	var end=location.search.indexOf("&",start)-1;
 	if (end<0) end=location.search.length;
 	var result=location.search.substring(start,end);
 	var result='';
 	for(var i=start;i<=end;i++)
 	{
 		var c=location.search.charAt(i);
 		result=result+(c=='+'?' ':c);
 	}
 	//alert(unescape(result));
 	return unescape(result);
}

function checkParam(v, id)
{
	if (!GetParam(v))	return;
	var q = GetParam(v) - 1;
	
	showHideDiv(id, q);
}

function genTopInfo()
{
	var str;
	str = '';
	str += '<FORM onsubmit="if (validateForm()) { document.search.submit();} else {return false;}" method=get name=search action="/en/others/search_result.html">';
	str += '	<INPUT value=hkgb type=hidden name=tpl_id> ';
	str += '	<INPUT value=en type=hidden name=ui_lang>';
	str += '	<INPUT value=iso-8859-1 type=hidden name=ui_charset> ';
	str += '	<INPUT value=this type=hidden name=web> ';
	str += '	<INPUT value=hkgb_home type=hidden name=gp0> ';
	str += '	<INPUT value=hkgb_home type=hidden name=gp1> ';
	str += '	<INPUT value=1 type=hidden name=txtonly>';
	str += '<div id="topInfo">';
	str += '		<div id="topFaqList">';
	str += '			<ul>';
	str += '				<li><a href="/en/institutional/frequently.html">Institutional Bond Issuance Programme</a></li>';
	str += '				<li><a href="/en/retail/retail.html">Retail Bond Issuance Programme</a></li>';
	str += '			</ul>';
	str += '		</div>';
	str += '		<input name="query" type="text" class="topSearchField" value="Search" />';
	str += '		<input name="" type="button" class="topBtn" value="Go" onclick="if (validateForm()) { document.search.submit();} else {return false;}" />';
	str += '		<a href="/en/others/adv_search.html" class="advSearch">Advanced Search</a>';
	str += '		<div class="stroke"></div>';
	str += '		<a href="/en/others/contact.html">Contact Us</a>';
	str += '		<div class="stroke"></div>';
	str += '		<a href="/en/others/sitemap.html">Site Map</a>';
	str += '		<div class="stroke"></div>';
	str += '		<a href="javascript:;" onmouseover="displayDropDownList(\'topFaq\');" id="topFaq">FAQs</a>';
	str += '		<div class="stroke"></div>';
	str += '		<a href="javascript:changeLanguage(\'tc\');" class="chi">&#32321;&#39636;</a>';
	str += '		<div class="stroke"></div>';
	str += '		<a href="javascript:changeLanguage(\'sc\');" class="chi">&#31616;&#20307;</a>';
	str += '	</div>';
	str += '	<a href="/en/index.html" id="logo"><img src="/en/images/logo.gif" alt="The Government Bond Programme" /></a>';
	str += '	</FORM>';
	
	d.getElementById('topInfoContainer').innerHTML = str;
}

function genTopNav()
{
	var str;
	str = '';
	str += '	<dl>';
	str += '		<dt><a href="/en/overview/introduction.html" onmouseover="showPulldown(this, \'overview\');" id="overview">Overview</a>';
	str += '			<div class="subMenu" id="overview_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/overview/introduction.html">Introduction</a></li>';
	str += '							<li><a href="/en/overview/objective.html">Objective</a></li>';
	str += '							<li><a href="/en/overview/legal.html">Legal Backing</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '		<dd></dd>';
	str += '		<dt><a href="/en/institutional/key.html" onmouseover="showPulldown(this, \'institutional\');" id="institutional">Institutional Bond Issuance Programme</a>';
	str += '			<div class="subMenu" id="institutional_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/institutional/key.html">Key Facts at a Glance</a></li>';
	str += '							<li><a href="/en/institutional/information.html">Information Memorandum</a></li>';
	str += '							<li><a href="/en/institutional/market.html">Market Participants</a></li>';
	str += '							<li><a href="/en/institutional/offering.html">Offering and Trading</a></li>';
	str += '							<li><a href="/en/institutional/frequently.html">Frequently Asked Questions</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '		<dd></dd>';
	//str += '		<dt><a href="/en/retail/retail.html" onmouseover="(this, \'retail\');" id="retail">Retail Bond Issuance Programme</a>';
	//str += '		</dt>';
	//Update on 23 Nov Start
	str += '		<dt><a href="/en/investor/index.html" onmouseover="showPulldown(this, \'investor\');" id="investor">Investor Corner</a>';
	str += '			<div class="subMenu" id="investor_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/investor/what.html">What are Government Bonds</a></li>';
	str += '							<li><a href="/en/investor/investing.html">Investing in Government Bonds</a></li>';
	str += '							<li><a href="/en/investor/purchasing.html">Purchasing and selling Government Bonds </a></li>';
	str += '							<li><a href="/cgi-bin/hkgb/investor/en/tools_bond.pl">Tools and resources</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '		<dd></dd>';
	//Update on 23 Nov End
	str += '		<dt><a href="/en/timetable/institutionaltran.html" onmouseover="showPulldown(this, \'timetable\');" id="timetable">Issuance Timetable</a>';
	str += '			<div class="subMenu" id="timetable_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/timetable/institutionaltran.html">Institutional Bond Issuance Programme</a></li>';
	str += '							<li><a href="/en/timetable/retailtran.html">Retail Bond Issuance Programme</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '		<dd></dd>';
	str += '		<dt><a href="/en/statistics/fixings.html" onmouseover="showPulldown(this, \'statistics\');" id="statistics">Statistics</a>';
	str += '			<div class="subMenu" id="statistics_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/statistics/fixings.html">Daily Government Bond Fixings</a></li>';
	str += '							<li><a href="/en/statistics/closing.html">Daily Government Bond Closing Reference Rates</a></li>';
	str += '							<li><a href="/en/statistics/statistic.html">Government Bond Statistics</a></li>';
//	str += '							<li><a href="/en/statistics/statistic.html#issuance">New Issuance Amount</a></li>';
//	str += '							<li><a href="/en/statistics/statistic.html#outstanding">Outstanding Amount</a></li>';
//	str += '							<li><a href="/en/statistics/statistic.html#historical">Historical Yields</a></li>';
//	str += '							<li><a href="/en/statistics/statistic.html#tender">Tender Results</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '		<dd></dd>';
	str += '		<dt><a href="/en/news/press.html" onmouseover="showPulldown(this, \'news\');" id="news">News and Publications</a>';
	str += '			<div class="subMenu" id="news_menu">';
	str += '				<div class="subMenuL">';
	str += '					<div class="subMenuR">';
	str += '						<ul>';
	str += '							<li><a href="/en/news/press.html">Press Releases</a></li>';
	str += '						</ul>';
	str += '					</div>';
	str += '				</div>';
	str += '				<div class="subMenuBtm"></div>';
	str += '			</div>';
	str += '		</dt>';
	str += '	</dl>';

	d.getElementById('topNav').innerHTML = str;
}

function genFooter()
{
	var str;
	str = '';
	str += '<a href="/en/others/disclaimer.html">Disclaimer</a> | <a href="/en/others/privacy.html">Privacy Policy</a> | <a href="/en/others/copyright.html">Copyright Notice</a>';
	
	d.getElementById('footer').innerHTML = str;
}

function genLeftNav()
{
	var str;
	str = '';
	str += '<div class="leftMenu" id="overview_leftMenu">';
	str += '	<h3>Overview</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/overview/introduction.html" rel="introduction">Introduction</a></li>';
	str += '		<li><a href="/en/overview/objective.html" rel="objective">Objective</a></li>';
	str += '		<li><a href="/en/overview/legal.html" rel="legal">Legal Backing</a></li>';
	str += '	</ul>';
	str += '</div>';
	str += '<div class="leftMenu" id="institutional_leftMenu">';
	str += '	<h3>Institutional Bond Issuance Programme</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/institutional/key.html" rel="key">Key Facts at a Glance</a></li>';
	str += '		<li><a href="/en/institutional/information.html" rel="information">Information Memorandum</a></li>';
	str += '		<li><a href="/en/institutional/market.html" rel="market">Market Participants</a></li>';
	str += '		<li><a href="/en/institutional/offering.html" rel="offering">Offering and Trading</a></li>';
	str += '		<li><a href="/en/institutional/frequently.html" rel="frequently">Frequently Asked Questions</a></li>';
	str += '	</ul>';
	str += '</div>';
	/*str += '<div class="leftMenu" id="retail_leftMenu">';
	str += '	<h3>Retail Bond Issuance Programme</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/retail/retail.html" rel="retail">Retail Bond Issuance Programme</a></li>';
	
	str += '			<ul id="tools_leftSubMenu">';
	str += '				<li><a href="/cgi-bin/hkgb/investor/en/tools_bond.pl" rel="bond">Bond Calculator</a></li>';
	str += '				<li><a href="/en/schedule/institutionaltran.html" rel="schedule">Issuance Schedule</a></li>';
	str += '				<li><a href="/en/investor/tools_glossary.html" rel="glossary">Glossary</a></li>';
	str += '				<li><a href="/en/statistics/fixings.html" rel="news">Statistics &amp; News</a></li>';
	str += '			</ul>';
	
	str += '		</li>';
	str += '	</ul>';
	str += '</div>';*/
	str += '<div class="leftMenu" id="investor_leftMenu">';
	str += '	<h3>Investor Corner</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/investor/what.html" rel="what">What are Government Bonds</a></li>';
	str += '		<li><a href="/en/investor/investing.html" rel="investing">Investing in Government Bonds</a></li>';
	str += '		<li><a href="/en/investor/purchasing.html" rel="purchasing">Purchasing and selling Government</a></li>';
	str += '		<li><a href="/cgi-bin/hkgb/investor/en/tools_bond.pl" rel="tools">Tools and resources</a>';
	str += '			<ul id="tools_leftSubMenu">';
	str += '				<li><a href="/cgi-bin/hkgb/investor/en/tools_bond.pl" rel="bond">Bond Calculator</a></li>';
	str += '				<li><a href="/en/timetable/institutionaltran.html" rel="schedule">Issuance Schedule</a></li>';
	str += '				<li><a href="/en/investor/tools_glossary.html" rel="glossary">Glossary</a></li>';
	str += '				<li><a href="/en/statistics/fixings.html" rel="news">Statistics &amp; News</a></li>';
	str += '			</ul>';
	str += '		</li>';
	str += '	</ul>';
	str += '</div>';
	str += '<div class="leftMenu" id="timetable_leftMenu">';
	str += '	<h3>Issuance Timetable</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/timetable/institutionaltran.html" rel="institutionaltran">Institutional Bond Issuance Programme</a></li>';
	str += '		<li><a href="/en/timetable/retailtran.html" rel="retailtran">Retail Bond Issuance Programme</a></li>';
	str += '	</ul>';
	str += '</div>';
	str += '<div class="leftMenu" id="statistics_leftMenu">';
	str += '	<h3>Statistics</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/statistics/fixings.html" rel="fixings">Daily Government Bond Fixings</a></li>';
	str += '		<li><a href="/en/statistics/closing.html" rel="closing">Daily Government Bond Closing Reference Rates</a></li>';
	str += '		<li><a href="/en/statistics/statistic.html" rel="statistic">Government Bond Statistics</a></li>';
//	str += '		<li><a href="/en/statistics/statistic.html#issuance" rel="issuance">New Issuance Amount</a></li>';
//	str += '		<li><a href="/en/statistics/statistic.html#outstanding" rel="outstanding">Outstanding Amount</a></li>';
//	str += '		<li><a href="/en/statistics/statistic.html#historical" rel="historical">Historical Yields</a></li>';
//	str += '		<li><a href="/en/statistics/statistic.html#tender" rel="tender">Tender Results</a></li>';
	str += '	</ul>';
	str += '</div>';
	str += '<div class="leftMenu" id="news_leftMenu">';
	str += '	<h3>News and Publications</h3>';
	str += '	<ul>';
	str += '		<li><a href="/en/news/press.html" rel="press">Press Releases</a></li>';
	str += '	</ul>';
	str += '</div>';
	
	d.getElementById('leftNavContainer').innerHTML = str;
}

function genTools()
{
	var str;
	str = '';
	str += '	<h5>Tools and resources</h5>';
	str += '	<div class="tools">';
	//str += '		<a href="/en/investor/index.html" class="toolInvestor" rel="investor">Retail Bond Issuance Programme</a>';
	str += '		<a href="/en/timetable/institutionaltran.html" class="toolSchedule" rel="issuance">Issuance Timetable</a>';
	str += '		<a href="/cgi-bin/hkgb/investor/en/tools_bond.pl" class="toolBond" rel="bonds">Bond Calculator</a>';
	//str += '		<a href="/en/investor/tools_glossary.html" class="toolGlossary" rel="glossary">Glossary</a>';
	str += '		<a href="/en/statistics/fixings.html" class="toolStatistics" rel="statistics">Statistics</a>';
	str += '	</div>';
	
	d.getElementById('toolsContainer').innerHTML = str;
}
function genLetterNav()
{
	var str;
	str = '';
	str += '<a href="tools_glossary.html#a">A</a> | <a href="tools_glossary.html#b">B</a> | <a href="tools_glossary.html#c">C</a> | <a href="tools_glossary.html#d">D</a> | <a href="tools_glossary.html#e">E</a> | <a href="tools_glossary_2.html#f">F</a> | <a href="tools_glossary_2.html#g">G</a> | <a href="tools_glossary_2.html#h">H</a> | <a href="tools_glossary_2.html#i">I</a> | <a href="tools_glossary_2.html#j">J</a> | <a href="tools_glossary_3.html#k">K</a> | <a href="tools_glossary_3.html#l">L</a> | <a href="tools_glossary_3.html#m">M</a> | <a href="tools_glossary_3.html#n">N</a> | <a href="tools_glossary_3.html#o">O</a> | <a href="tools_glossary_4.html#p">P</a> | <a href="tools_glossary_4.html#q">Q</a> | <a href="tools_glossary_4.html#r">R</a> | <a href="tools_glossary_4.html#s">S</a> | <a href="tools_glossary_4.html#t">T</a> | <a href="tools_glossary_5.html#u">U</a> | <a href="tools_glossary_5.html#v">V</a> | <a href="tools_glossary_5.html#w">W</a> | <a href="tools_glossary_5.html#x">X</a> | <a href="tools_glossary_5.html#y">Y</a> | <a href="tools_glossary_5.html#z">Z</a>';
	
	d.getElementById('letterNav').innerHTML = str;
}

function genAnchorHighlight()
{
	var leftNav = d.getElementById('statistics_leftMenu');
	var a = leftNav.getElementsByTagName('a');
	var id = location.hash.replace('#', '');
	
	if (id)
	{
		highlightA(id);
	}
	
	for (var i=0; i<a.length; i++)
	{
		a[i].onclick = function() {highlightA(this.rel);};
	}
	
	function highlightA(id)
	{
		var nav = getElementByRel('statistics_leftMenu', id)
		nav.className += ' active';
		if (this.highlightNav)	this.highlightNav.className = this.highlightNav.className.replace(/active/, '');
		this.highlightNav = nav;
	}
}

function setPressPull(select, div)
{
	var self = this;
	var nav = d.getElementById(select);
	var obj = d.getElementById(div);
	var highlightA;
	
	this.init = function ()
	{
		this.setA();
	};
	
	this.setA = function ()
	{
		for (var i=0; i<nav.options.length; i++)
		{
			nav.options[i].value = i;
			nav.options[i].parent = this;
		}
		
		nav.onchange = function()
		{
			self.changeA(this.value, false);
		}
		
		this.changeA(0, false);
	};
	
	this.changeA = function (num, fadeIn)
	{	
		var div = setChildNodes(obj, 'DIV');
		div[num].style.display = 'block';
		if (highlightA != null)	div[highlightA].style.display = 'none';
		
		highlightA = num;
		if (fadeIn)	startFading(this.obj);
	};
	
	this.init();
}