// informars.js

var NN4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) < 5);

var query_string = document.location.search;
var uri = document.location.href.substring(0,document.location.href.length - query_string.length);
var query_params = new Array();
if (query_string.length > 0)
{
	var tmp = query_string.substring(1).split('&');
	var i;
	for (i = 0; i < tmp.length; i++)
	{
		var temp = tmp[i].split('=');
		query_params[temp[0]] = temp[1];
	}
}

function getURL(uri, name, contentid, prodtype, prodcode, statename, regioncode, sort, fields)
{
	if (!prodtype)
		return null;
	var result = uri + '?qt=' + '%2Bprodtype%3A' + prodtype;
	if (prodcode) result += '+%2Bprodcode%3A' + prodcode;
	if (statename) result += '+%2Bstatename%3A' + statename;
	if (regioncode) result += '+%2Bregioncode%3A' + regioncode;
	if (sort) result += '+' + sort;
	if (name) result += '&name=' + name;
	if (fields) result += '&fields=' + fields;
	return result;
}

function doSearch(name, contentid, prodtype, prodcode, statename, regioncode, sort, fields)
{
	var problem_fields = new Array();
	if (prodtype == 'broker')
	{
		// do nothing, no validation needed for broker
	}
	else if (prodtype == 'creditcards')
	{
		if (!sort) problem_fields[problem_fields.length] = 'a search';
	}
	else // cdmoneymarket, iracds, interestchecking, businesschecking, newauto, usedauto, he, heloc, mortgages, sp
	{
		if (!prodcode) problem_fields[problem_fields.length] = 'a type';
		if (!statename) problem_fields[problem_fields.length] = 'a state';
		if (!regioncode) problem_fields[problem_fields.length] = 'a region';
		if (prodtype == 'sp' && !sort) problem_fields[problem_fields.length] = 'your credit score';
	}
	if (problem_fields.length > 0)
	{
		var error_message = 'Please select ';
		var i;
		for (i = 0; i < problem_fields.length; i++)
		{
			error_message += problem_fields[i];
			if (i == problem_fields.length - 1)
			{
				error_message += '.';
			}
			else if (i == problem_fields.length - 2)
			{
				if (problem_fields.length == 2)
					error_message += ' and ';
				else
					error_message += ', and ';
			}
			else if (i < problem_fields.length - 2)
			{
				error_message += ', ';
			}
		}
		alert(error_message);
		return;
	}
	//var uri = 'http://search.ibsys.com/query.html';
	//var uri = 'http://search.ibsys.com/informars.xml';
	var uri = 'http://' + document.domain + '/bankrates/' + contentid + '/detail.html';
	var this_url = getURL(uri, name, contentid, prodtype, prodcode, statename, regioncode, sort, fields);
	document.location.href = this_url;
}

function populateDroplists()
{
	populateProductDroplists();
	populateStateDroplists();
	refreshPage();
}

function populateProductDroplists()
{
	if (typeof(document.cdmoneymarket) != 'undefined')
		populateProducts(document.cdmoneymarket.prodcode, cdmoneymarket_products);
	if (typeof(document.iracds) != 'undefined')
		populateProducts(document.iracds.prodcode, iracds_products);
	if (typeof(document.interestchecking) != 'undefined')
		populateProducts(document.interestchecking.prodcode, interestchecking_products);
	if (typeof(document.businesschecking) != 'undefined')
		populateProducts(document.businesschecking.prodcode, businesschecking_products);
	if (typeof(document.newauto) != 'undefined')
		populateProducts(document.newauto.prodcode, newauto_products);
	if (typeof(document.usedauto) != 'undefined')
		populateProducts(document.usedauto.prodcode, usedauto_products);
	if (typeof(document.he) != 'undefined')
		populateProducts(document.he.prodcode, he_products);
	if (typeof(document.heloc) != 'undefined')
		populateProducts(document.heloc.prodcode, heloc_products);
	if (typeof(document.mortgages) != 'undefined')
		populateProducts(document.mortgages.prodcode, mortgages_products);
	if (typeof(document.sp) != 'undefined')
		populateProducts(document.sp.prodcode, sp_products);
	if (typeof(document.creditcards) != 'undefined')
		populateSorts(document.creditcards.sort, creditcards_products, "-", "%3A0");
	if (typeof(document.sp) != 'undefined')
		populateSorts(document.sp.sort, problemcredit_products, "%2B", "%3A1");
}

function populateStateDroplists()
{
	var i;
	for (i = 0; i < document.forms.length; i++)
	{
		var f = document.forms[i];
		if (f.statename)
			populateStates(f.statename);
	}
}

function populateProducts(droplist, products)
{
	droplist.options.length = 1;
	var i;
	droplist.options[0].selected = true;
	for (i = 0; i < products.length; i++)
	{
		 var obj = new Option();
		 obj.text = products[i][1];
		 obj.value = products[i][0];
		 if (typeof(prodcode) != 'undefined' && products[i][0] == prodcode)
			obj.selected = true;
		 droplist.options[droplist.options.length] = obj;
	}
}

function populateSorts(droplist, sorts, prefix, suffix)
{
	droplist.options.length = 1;
	var i;
	droplist.options[0].selected = true;
	for (i = 0; i < sorts.length; i++)
	{
		var obj = new Option();
		obj.text = sorts[i][1];
		var value = '';
		if (prefix)
			value += prefix;
		value += sorts[i][0]
		if (suffix)
			value += suffix;
		obj.value = value;
		if (typeof(sort) != 'undefined' && sorts[i][0] == sort)
		{
			obj.selected = true;
			sort = sorts[i][0];
		}
		droplist.options[droplist.options.length] = obj;
	}
}

function populateStates(droplist)
{
	droplist.options.length = 1;
	var i;
	droplist.options[0].selected = true;
	for (i = 0; i < states.length; i++)
	{
		 var obj = new Option();
		 obj.text = states[i][1];
		 obj.value = states[i][0];
		 if (typeof(statename) != 'undefined' && states[i][0] == statename)
		 {
			obj.selected = true;
			if (droplist.form.regioncode)
				populateRegions(statename, droplist.form.regioncode);
		 }
		 droplist.options[droplist.options.length] = obj;
	}
}

function populateRegions(state, droplist)
{
	droplist.options.length = 1;
	var i;
	droplist.options[0].selected = true;
	for (i = 0; i < regions.length; i++)
	{
		if (regions[i][0] == state)
		{
			 var obj = new Option();
			 obj.text = regions[i][1];
			 obj.value = regions[i][2];
			 if (typeof(regioncode) != 'undefined' && regions[i][2] == regioncode)
				obj.selected = true;
			 droplist.options[droplist.options.length] = obj;
		}
	}
}

function getStateName(statecode)
{
	var i;
	for (i = 0; i < states.length; i++)
	{
		if (states[i][0] == statecode)
		{
			return states[i][1];
		}
	}
	return null;
}

function getRegionName(regioncode)
{
	var i;
	for (i = 0; i < regions.length; i++)
	{
		if (regions[i][2] == regioncode)
		{
			return regions[i][1];
		}
	}
	return null;
}

function getProductArray(prodcode)
{
	var i, j, tmp;
	for (i = 0; i < all_products.length; i++)
	{
		tmp = all_products[i];
		for (j = 0; j < tmp.length; j++)
		{
			if (tmp[j][0] == prodcode)
			{
				return tmp;
			}
		}
	}
	return null;
}

function getProductName(prodcode)
{
	var i, tmp;
	tmp = getProductArray(prodcode);
	for (i = 0; i < tmp.length; i++)
	{
		if (tmp[i][0] == prodcode)
		{
			return tmp[i][1];
		}
	}
	return null;
}


function getProductType(prodcode)
{
	var i, tmp;
	tmp = getProductArray(prodcode);
	for (i = 0; i < tmp.length; i++)
	{
		if (tmp[i][0] == prodcode)
		{
			return tmp[i][2];
		}
	}
	return null;
}

function getProductNotes(prodcode)
{
	var i, tmp;
	tmp = getProductArray(prodcode);
	for (i = 0; i < tmp.length; i++)
	{
		if (tmp[i][0] == prodcode)
		{
			return tmp[i][3];
		}
	}
	return null;
}

function getSort(creditcards_products, problemcredit_products)
{
	var result = '';
	var i;
	for (i = 0; i < creditcards_products.length && result.length == 0; i++)
	{
		if (eval("typeof("+creditcards_products[i][0]+")") != 'undefined')
		{
			result = creditcards_products[i][0];
		}
	}

	for (i = 0; i < problemcredit_products.length && result.length == 0; i++)
	{
		if (eval("typeof("+problemcredit_products[i][0]+")") != 'undefined')
		{
			result = problemcredit_products[i][0];
		}
	}
	return result;
}

function getSortFields(index)
{
	if (index == 0)
		return null;
	return creditcards_fields[index - 1];
}

// grow the page by a pixel each direction and then shrink, causes NN4 to refresh screen and sizes of select objects
function refreshPage()
{
	if (NN4)
	{
		window.resizeBy(1,1);
		window.resizeBy(-1,-1);
	}
}

// get the value of a droplist (the selected item), needed for NN4 since it doesn't support value attribute
function v(widget)
{
	var result = null;
	if (NN4 && widget.type == "select-one")
	{
		result = widget.options[widget.selectedIndex].value;
	}
	else
	{
		result = widget.value;
	}
	return result;
}

// STRING function for table types (replaces STR provided by TTP, removes HTML tags and converts to upper case for case insensitive compare)
function STRING(s)
{
	return (s.replace(/<[^>]+>/ig,'')+'').toUpperCase();
}

// INTEGER function for table types (replaces NUM provided by TTP, uses parseInt function and treats n/c as zero and n/a as MAX_VALUE)
function INTEGER(s)
{
	var result = 0;
	if (s && s.length > 0)
	{
		if (s == 'n/a')
			result = Number.MAX_VALUE;
		else if (s == 'n/c')
			result = 0;
		else
			result = parseInt(s);
		if (isNaN(result)) result = 0;
	}
	return result;
}

// PERCENT function for table types (uses parseFloat function and treats n/c as zero and n/a as MAX_VALUE)
function PERCENT(s)
{
	var result = 0.0;
	if (s && s.length > 0)
	{
		if (s == 'n/a')
			result = Number.MAX_VALUE;
		else if (s == 'n/c')
			result = 0.0;
		else
			result = parseFloat(s);
		if (isNaN(result))
			result = 0.0;
	}
	return result;
}

// CURRENCY2 function for table types (replaces CURRENCY provided by TTP, uses parseFloat function and treats n/c as zero and n/a as MAX_VALUE)
function CURRENCY2(s)
{
	var result = 0.0;
	if (s && s.length > 0)
	{
		if (s == 'n/a')
			result = Number.MAX_VALUE;
		else if (s == 'n/c')
			result = 0.0;
		else
			result = parseFloat(s.replace(/[^0-9\-\.]/g, ''));
		if (isNaN(result))
			result = 0.0;
	}
	return result;
}

// DATE2 function for table types (replaces DATE provided by TTP, uses Date.parse() function)
function DATE2(s)
{
	var result = 0;
	if (s && s.length > 0)
	{
		result = Date.parse(s);
		if (isNaN(result))
			result = 0;
	}
	return result;
}

function write_notes(additional_notes)
{
	var text = '';
	text += '<table width="100%" bgcolor="#CCCCCC" border="0" cellpadding="5" cellspacing="0">';
	text += '<tr bgcolor="#CCCCCC"><td bgcolor="#CCCCCC" class="medium" style="border-top: 1px solid #FF0000">';
	if (typeof(prodcode) != 'undefined')
		text += getProductNotes(prodcode);
	else if (typeof(sort) != 'undefined')
		text += getProductNotes(sort);
	if (typeof(additional_notes) != 'undefined')
		text += ' ' + additional_notes;
	text += '</td></tr>';
	text += '</table>';
	document.write(text);
	return text;
}

function CreditCardDetail(creditcard)
{
	var text = '<style>.brokeragesTable {font-size:11px; font-family:verdana, sans-serif; padding:5px;}.brokeragesTableNopad {padding:0px;}</style>';
	text += '<table width="50%" border="1" cellpadding="0" cellspacing="0"><tr><td>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td class="large" colspan="4" bgcolor="#cccccc" align="left"><b>';
	if (typeof(creditcard.linkpartnerurl) != 'undefined')
		text += '<a href="' + creditcard.linkpartnerurl + '" target="_blank">';
	text += creditcard.cardname;
	if (typeof(creditcard.linkpartnerurl) != 'undefined')
		text += '</a>';
	text += '</b></td></tr>';
	text += '<tr><td colspan="4" align="left">' + creditcard.bankname + '<br />Phone: ' + creditcard.phone + '<br />Offer Code: ' + creditcard.sourcecode + '</td></tr>';
	text += '<tr><td width="100">Purchase Rate:</td><td width="100">' + creditcard.rate + '</td><td width="100">Rate Type:</td><td width="100">' + creditcard.ratetype + '</td></tr>';
	text += '<tr><td>Tier:</td><td>' + creditcard.cardclass + '</td><td>Card Type:</td><td>' + creditcard.type + '</td></tr>';
	text += '<tr><td>Card Name:</td><td>' + creditcard.cardname + '</td><td>Grace Period:</td><td>' + (typeof(creditcard.gracetime) == 'undefined' ? '&#160' : creditcard.gracetime) + '</td></tr>';
	text += '<tr><td>Credit Line Min:</td><td>' + (typeof(creditcard.creditmin) == 'undefined' ? '&#160;' : creditcard.creditmin) + '</td><td>Online Account Management:</td><td>' + creditcard.onlineaccess + '</td></tr>';
	text += '<tr><td>Credit Line Max:</td><td>' + (typeof(creditcard.creditmax) == 'undefined' ? '&#160;' : creditcard.creditmax) + '</td><td>Cash Back:</td><td>' + creditcard.cashback + '</td></tr>';
	text += '<tr><td valign="top">Rewards:</td><td colspan="3">' + (typeof(creditcard.group_) == 'undefined' ? '&#160;' : creditcard.group_) + '</td></tr>';
	text += '<tr><td colspan="4"><img src="http://images.ibsys.com/sh/images/structures/misc/spacer.gif" alt="" width="1" height="5" border="0" /><br /></td></tr>';
	text += '<tr><td colspan="4" class="large" bgcolor="#cccccc" align="left"><b>Secure Card Information</b></td></tr>';
	text += '<tr><td>Min Deposit:</td><td>' + (typeof(creditcard.mindeposit) == 'undefined' ? '&#160;' : creditcard.mindeposit) + '</td><td>Max Deposit:</td><td>' + (typeof(creditcard.maxdeposit) == 'undefined' ? '&#160;' : creditcard.maxdeposit) + '</td></tr>';
	text += '<tr><td>Min Income Req:</td><td>' + (typeof(creditcard.minincome) == 'undefined' ? '&#160;' : creditcard.minincome) + '</td><td></td><td></td></tr>';
	text += '<tr><td colspan="4"><img src="http://images.ibsys.com/sh/images/structures/misc/spacer.gif" alt="" width="1" height="5" border="0" /><br /></td></tr>';
	text += '<tr><td colspan="2" class="large" bgcolor="#cccccc" align="left"><b>Introductory Offer</b></td><td colspan="2" class="large" bgcolor="#cccccc" align="left"><b>Balance Transfers</b></td></tr>';
	text += '<tr><td>Rate:</td><td>' + (typeof(creditcard.introrate) == 'undefined' ? '&#160;' : creditcard.introrate) + '</td><td>Rate:</td><td>' + (typeof(creditcard.baltrsfrt) == 'undefined' ? '&#160;' : creditcard.baltrsfrt) + '</td></tr>';
	text += '<tr><td>Period:</td><td>' + (typeof(creditcard.introtime) == 'undefined' ? '&#160;' : creditcard.introtime) + '</td><td>Period:</td><td>' + (typeof(creditcard.baltrsftim) == 'undefined' ? '&#160;' : creditcard.baltrsftim) + '</td></tr>';
	text += '<tr><td>End Date:</td><td>' + (typeof(creditcard.introperiod) == 'undefined' ? '&#160;' : creditcard.introperiod) + '</td><td>Fee:</td><td>' + (typeof(creditcard.baltrsffee) == 'undefined' ? '&#160;' : creditcard.baltrsffee) + '</td></tr>';
	text += '<tr><td></td><td></td><td>Transfer Until:</td><td>' + (typeof(creditcard.baltrsfperiod) == 'undefined' ? '&#160;' : creditcard.baltrsfperiod) + '</td></tr>';
	text += '<tr><td colspan="4"><img src="http://images.ibsys.com/sh/images/structures/misc/spacer.gif" alt="" width="1" height="5" border="0" /><br /></td></tr>';
	text += '<tr><td colspan="2" class="large" bgcolor="#cccccc" align="left"><b>Cash Advances</b></td><td colspan="2" class="large" bgcolor="#cccccc" align="left"><b>Fees</b></td></tr>';
	text += '<tr><td>Rate:</td><td>' + (typeof(creditcard.caadvrate) == 'undefined' ? '&#160;' : creditcard.caadvrate) + '</td><td>Annual Fee:</td><td>' + (typeof(creditcard.annualfee) == 'undefined' ? '&#160;' : creditcard.annualfee) + '</td></tr>';
	text += '<tr><td>Rate Type:</td><td>' + (typeof(creditcard.caadvrttyp) == 'undefined' ? '&#160;' : creditcard.caadvrttyp) + '</td><td>Application Fee:</td><td>' + (typeof(creditcard.appfee) == 'undefined' ? '&#160;' : creditcard.appfee) + '</td></tr>';
	text += '<tr><td>Grace Period:</td><td>' + (typeof(creditcard.gracetime) == 'undefined' ? '&#160;' : creditcard.gracetime) + '</td><td>Min Finance Charge:</td><td>' + (typeof(creditcard.minfc) == 'undefined' ? '&#160;' : creditcard.minfc) + '</td></tr>';
	text += '<tr><td>Fee%:</td><td>' + (typeof(creditcard.caadvfert) == 'undefined' ? '&#160;' : creditcard.caadvfert) + '</td><td>Over Limit Fee:</td><td>' + (typeof(creditcard.overfee) == 'undefined' ? '&#160;' : creditcard.overfee) + '</td></tr>';
	text += '<tr><td>Fee Min:</td><td>' + (typeof(creditcard.caadvfemin) == 'undefined' ? '&#160;' : creditcard.caadvfemin) + '</td><td>Late Fee:</td><td>' + (typeof(creditcard.latefee) == 'undefined' ? '&#160;' : creditcard.latefee) + '</td></tr>';
	text += '<tr><td>Fee Max:</td><td>' + (typeof(creditcard.caadvfemax) == 'undefined' ? '&#160;' : creditcard.caadvfemax) + '</td><td>Late Pymt Rate:</td><td>' + (typeof(creditcard.defrate) == 'undefined' ? '&#160;' : creditcard.defrate) + '</td></tr>';
	text += '<tr><td valign="top">Rebates:</td><td colspan="3">' + (typeof(creditcard.rebate) == 'undefined' ? '&#160;' : creditcard.rebate) + '</td></tr>';
	text += '<tr><td valign="top">Benefits:</td><td colspan="3">' + (typeof(creditcard.benefit) == 'undefined' ? '&#160;' : creditcard.benefit) + '</td></tr>';
	text += '<tr><td valign="top">Conditions:</td><td colspan="3">' + (typeof(creditcard.condition) == 'undefined' ? '&#160;' : creditcard.condition) + '</td></tr>';
	text += '</table>';
	text += '</td></tr></table>';
	document.write(text);
	return text;
}

function BrokeragesTable(brokerages)
{
	var text = '<style>.brokeragesTable {font-size:11px; font-family:verdana, sans-serif; padding:5px;}.brokeragesTableNopad {padding:0px;}</style>';
	text += '<table width="100%" bgcolor="ffffff" border="1" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td bgcolor="#cccccc" width="20%">&#160;</td>';
	var i;
	for (i = 0; i < brokerages.length; i++) {
		text += '<td class="large" bgcolor="#cccccc" align="center" width="' + Math.round(80/brokerages.length) + '%"><b>';
		if (typeof(brokerages[i].url) != 'undefined')
			text += '<a href="' + brokerages[i].url + '" target="_blank">';
		text += brokerages[i].brokername;
		if (typeof(brokerages[i].url) != 'undefined')
			text += '<br />Open Account</a>';
		text += '</b></td>';
	}
	text += '</tr>';
	text += '<tr class="brokeragesTableNopad"><td bgcolor="#cc0000" height="1" colspan="' + (brokerages.length+1) + '"><img src="http://images.ibsys.com/sh/images/structures/misc/spacer.gif" alt="" width="1" height="1" border="0" /><br /></td></tr>';
	text += '<tr><td bgcolor="#E8EFF5" colspan="' + (brokerages.length+1) + '"><b>Account Minimum Requirements</b></td></tr>';
	text += '<tr><td>Cash Account</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].cashmin + '</td>';
	text += '</tr>';
	text += '<tr><td>Margin Account</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].marginmin + '</td>';
	text += '</tr>';
	text += '<tr><td>Retirement Account (IRA)</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].retiremin + '</td>';
	text += '</tr>';
	text += '<tr><td bgcolor="#E8EFF5" colspan="' + (brokerages.length+1) + '"><b>Commision Schedule - Online Stock Trades</b></td></tr>';
	text += '<tr><td valign="top">Market Order</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + (typeof(brokerages[i].netstock1) == 'undefined' ? '&#160;' : brokerages[i].netstock1) + '</td>';
	text += '</tr>';
	text += '<tr><td valign="top">Limit Order</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].netlimit + '</td>';
	text += '</tr>';
	text += '<tr><td bgcolor="#E8EFF5" colspan="' + (brokerages.length+1) + '"><b>Fee Schedule</b></td></tr>';
	text += '<tr><td valign="top">Low Balance Fee</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].lowbalfee + '</td>';
	text += '</tr>';
	text += '<tr><td valign="top">Transfer Fee</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="right">' + brokerages[i].accttransfee + '</td>';
	text += '</tr>';
	text += '<tr><td>&#160;</td>';
	for (i = 0; i < brokerages.length; i++)
		text += '<td align="center">' + '<a href="' + uri + '?qt=%2Bbrokerid:' + brokerages[i].brokerid + '&name=brokerage_detail">More Info</a>' + '</td>';
	text += '</tr>';
	text += '<tr><td colspan="' + (brokerages.length+1) + '"><img src="http://images.ibsys.com/sh/images/structures/misc/spacer.gif" alt="" width="1" height="10" border="0" /><br /></td></tr>';
	text += '</table>';
	document.write(text);
	return text;
}

function BrokerageDetail(brokerage)
{
	var text = '<style>.brokeragesTable {font-size:11px; font-family:verdana, sans-serif; padding:5px;}.brokeragesTableNopad {padding:0px;}</style>';
	text += '<table width="50%" cellpadding="0" cellspacing="0" border="0"><tr><td><table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" class="large">';
	if (typeof(brokerage.url) != 'undefined')
		text += '<a href="' + brokerage.url + '" target="_blank">';
	text += brokerage.brokername;
	if (typeof(brokerage.url) != 'undefined')
		text += '<br />Open Account</a>';
	text += '</td></tr>';
	text += '<tr><td align="left" class="large">' + brokerage.brokerphone + '</td></tr>';
	text += '</table>';
	text += '<br />';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" bgcolor="#CCCCCC" class="medium"><b>Account Minimum Requirements</b></td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td>Cash Account</td><td>' + brokerage.cashmin + '</td></tr>';
	text += '<tr><td>Margin Account</td><td>' + brokerage.marginmin + '</td></tr>';
	text += '<tr><td>Retirement Account (IRA)</td><td>' + brokerage.retiremin + '</td></tr>';
	text += '</table>';
	text += '<br />';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" bgcolor="#CCCCCC" class="medium"><b>Commision Schedule - Stock Trades</b></td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="5" class="brokeragesTable">';
	text += '<tr><td><b>Type Of Trade</b></td><td><b>Market Orders</b></td><td><b>Limit Orders</b></td></tr>';
	text += '<tr><td valign="top">Online Trades</td><td>' + (typeof(brokerage.netstock1) == 'undefined' ? '&#160;' : brokerage.netstock1) + '<br />' + (typeof(brokerage.netstock2) == 'undefined' ? '&#160;' : brokerage.netstock2) + '<br /></td><td valign="top">' + (typeof(brokerage.netlimit) == 'undefined' ? '&#160;' : brokerage.netlimit) + '</td></tr>';
	text += '<tr><td valign="top">Touchtone Phone</td><td>' + (typeof(brokerage.phonestock1) == 'undefined' ? '&#160;' : brokerage.phonestock1) + '<br />' + (typeof(brokerage.phonestock2) == 'undefined' ? '&#160;' : brokerage.phonestock2) + '<br />' + (typeof(brokerage.phonestock3) == 'undefined' ? '&#160;' : brokerage.phonestock3) + '<br />' + (typeof(brokerage.phonestock4) == 'undefined' ? '&#160;' : brokerage.phonestock4) + '<br />' + (typeof(brokerage.phonestock5) == 'undefined' ? '&#160;' : brokerage.phonestock5) + '</td><td valign="top">' + (typeof(brokerage.phonestocklimit) == 'undefined' ? '&#160;' : brokerage.phonestocklimit) + '</td></tr>';
	text += '<tr><td valign="top">Broker Assisted</td><td>' + (typeof(brokerage.brokerstock1) == 'undefined' ? '&#160;' : brokerage.brokerstock1) + '<br />' + (typeof(brokerage.brokerstock2) == 'undefined' ? '&#160;' : brokerage.brokerstock2) + '<br />' + (typeof(brokerage.brokerstock3) == 'undefined' ? '&#160;' : brokerage.brokerstock3) + '<br />' + (typeof(brokerage.brokerstock4) == 'undefined' ? '&#160;' : brokerage.brokerstock4) + '<br />' + (typeof(brokerage.brokerstock5) == 'undefined' ? '&#160;' : brokerage.brokerstock5) + '<br />' + (typeof(brokerage.brokerstock6) == 'undefined' ? '&#160;' : brokerage.brokerstock6) + '<br />' + (typeof(brokerage.brokerstock7) == 'undefined' ? '&#160;' : brokerage.brokerstock7) + '<br />' + (typeof(brokerage.brokerstock8) == 'undefined' ? '&#160;' : brokerage.brokerstock8) + '</td><td valign="top">' + (typeof(brokerage.brokerstocklimit) == 'undefined' ? '&#160;' : brokerage.brokerstocklimit) + '</td></tr>';
	text += '</table>';
	text += '<br />';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" bgcolor="#CCCCCC" class="medium"><b>Commision Schedule - Option Trades</b></td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="center"><b>Online Trades</b></td><td align="center"><b>Broker Assisted</b></td>';
	text += '<tr><td align="center">' + (typeof(brokerage.netoption1) == 'undefined' ? '&#160;' : brokerage.netoption1) + '<br />' + (typeof(brokerage.netoption2) == 'undefined' ? '&#160;' : brokerage.netoption2) + '<br />' + (typeof(brokerage.netoption3) == 'undefined' ? '&#160' : brokerage.netoption3) + '<br />' + (typeof(brokerage.netoption4) == 'undefined' ? '&#160;' : brokerage.netoption4) + '<br />' + (typeof(brokerage.netoption5) == 'undefined' ? '&#160;' : brokerage.netoption5) + '<br />' + (typeof(brokerage.netoption6) == 'undefined' ? '&#160;' : brokerage.netoption6) + '<br />' + (typeof(brokerage.netoption7) == 'undefined' ? '&#160;' : brokerage.netoption7) + '<br />' + (typeof(brokerage.netoption8) == 'undefined' ? '&#160;' : brokerage.netoption8) + '<br />' + (typeof(brokerage.netoption9) == 'undefined' ? '&#160;' : brokerage.netoption9) + '<br />' + (typeof(brokerage.netoption10) == 'undefined' ? '&#160;' : brokerage.netoption10) + '</td><td align="center">' + (typeof(brokerage.brokeroption1) == 'undefined' ? '&#160' : brokerage.brokeroption1) + '<br />' + (typeof(brokerage.brokeroption2) == 'undefined' ? '&#160;' : brokerage.brokeroption2) + '<br />' + (typeof(brokerage.brokeroption3) == 'undefined' ? '&#160;' : brokerage.brokeroption3) + '<br />' + (typeof(brokerage.brokeroption4) == 'undefined' ? '&#160' : brokerage.brokeroption4) + '<br />' + (typeof(brokerage.brokeroption5) == 'undefined' ? '&#160;' : brokerage.brokeroption5) + '<br />' + (typeof(brokerage.brokeroption6) == 'undefined' ? '&#160;' : brokerage.brokeroption6) + '<br />' + (typeof(brokerage.brokeroption7) == 'undefined' ? '&#160;' : brokerage.brokeroption7) + '<br />' + (typeof(brokerage.brokeroption8) == 'undefined' ? '&#160;' : brokerage.brokeroption8) + '<br />' + (typeof(brokerage.brokeroption9) == 'undefined' ? '&#160;' : brokerage.brokeroption9) + '<br />' + (typeof(brokerage.brokeroption10) == 'undefined' ? '&#160;' : brokerage.brokeroption10) + '</td></tr>';
	text += '</table>';
	text += '<br />';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" bgcolor="#CCCCCC" class="medium"><b>Fee Schedule</b></td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td>Account Transfer Fee</td><td>' + brokerage.accttransfee + '</td></tr>';
	text += '<tr><td>Certificate Fee</td><td>' + brokerage.certfee + '</td></tr>';
	text += '<tr><td>IRA Fee</td><td>' + brokerage.irafee + '</td></tr>';
	text += '<tr><td>Low Balance Fee</td><td>' + brokerage.lowbalfee + '</td></tr>';
	text += '<tr><td>Wire Out Fee</td><td>' + brokerage.wireoutfee + '</td></tr>';
	text += '</table>';
	text += '<br />';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left" bgcolor="#CCCCCC" class="medium"><b>Interest Rate Schedule - Margins</b></td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td align="left">' + brokerage.marginrates1 + '<br />' + brokerage.marginrates2 + '<br />' + brokerage.marginrates3 + '<br />' + brokerage.marginrates4 + '<br />' + brokerage.marginrates5 + '<br />' + brokerage.marginrates6 + '<br />' + brokerage.marginrates6 + '<br />' + brokerage.marginrates7 + '</td></tr>';
	text += '</table>';
	text += '<table width="100%" bgcolor="#ffffff" border="0" cellpadding="5" cellspacing="0" class="brokeragesTable">';
	text += '<tr><td colspan="2" align="left" bgcolor="#CCCCCC" class="medium"><b>Account Functionality</b></td></tr>';
	text += '<tr><td>Real-Time Quotes</td><td>' + brokerage.realtimequotes + '</td></tr>';
	text += '<tr><td>Alerts</td><td>' + brokerage.alerts + '</td></tr>';
	text += '<tr><td>Access to IPOs</td><td>' + brokerage.accesstoipos + '</td></tr>';
	text += '<tr><td>Online Banking</td><td>' + brokerage.onlinebanking + '</td></tr>';
	text += '<tr><td>Dividend Reinvestment</td><td>' + brokerage.dividendreinvestment + '</td></tr>';
	text += '<tr><td>Mutual Funds</td><td>' + brokerage.mutualfunds + '</td></tr>';
	text += '<tr><td>Canadian Stocks</td><td>' + brokerage.canadianstocks + '</td></tr>';
	text += '<tr><td>Foreign Stocks</td><td>' + brokerage.foreignstocks + '</td></tr>';
	text += '<tr><td>Bonds</td><td>' + brokerage.bonds + '</td></tr>';
	text += '<tr><td>Options</td><td>' + brokerage.options + '</td></tr>';
	text += '<tr><td>Bulletin Board Stocks</td><td>' + brokerage.bulletinboardstocks + '</td></tr>';
	text += '<tr><td colspan="2"><br /></td></tr>';
	text += '<tr><td colspan="2" align="left" bgcolor="#CCCCCC" class="medium"><b>Extras</b></td></tr>';
	text += '<tr><td>After Hours Trading</td><td>' + brokerage.afterhourstrading + '</td></tr>';
	text += '<tr><td>ATM/Debit Cards</td><td>' + brokerage.atm_debitcards + '</td></tr>';
	text += '<tr><td>Checking</td><td>' + brokerage.checking + '</td></tr>';
	text += '<tr><td>Compatible w/ MS Money & Quicken</td><td>' + brokerage.moneyquickencompat + '</td></tr>';
	text += '<tr><td>Local Offices</td><td>' + brokerage.localoffices + '</td></tr>';
	text += '</table>';
	text += '<br /></td></tr></table>';
	document.write(text);
	return text;
}
