//finding what fundcenter page we're on 
var url = window.location.href;
	if( url.match("FundOverviewCX") ) {
		page = "Overview";
		isfundcenter = "yes";
	} else if ( url.match("FundCharacteristicsCX") ) {
		page = "Characteristics";
		isfundcenter = "yes";
	} else if ( url.match("FundHoldingsCX") ) {
		page = "Holdings";
		isfundcenter = "yes";
	} else if ( url.match("FundLiteratureCX") ) {
		page = "Literature";
		isfundcenter = "yes";
	} else if ( url.match("FundPerformanceCX") ) {
		page = "Performance";
		isfundcenter = "yes";
	} else if ( url.match("FundFactsCX") ) {
		page = "Fund facts";
		isfundcenter = "yes";
	} else if ( url.match("FundDistributionsCX") ) {
		page = "Distributions";
		isfundcenter = "yes";
	} else if ( url.match("PrinterFriendly_Fund_InfoCX") ) {
		page = "fund_summary";
		isfundcenter = "yes";
	} else if ( url.match("FundFeaturesCX") ) {
		page = "Features";
		isfundcenter = "yes";
	} else if ( url.match("FundManagerCX") ) {
		page = "Fund managers";
		isfundcenter = "yes";
	} else if ( url.match("/prd/mut/dnn") ) {
		page = "Overview";
		isfundcenter = "yes";
	} else if ( url.match("/vip/") ) {
		page = "vip";
		isfundcenter = "no";
	} else if ( url.match("/prf/cls/") ) {
		page = "closedend";
		isfundcenter = "no";
	} else if ( url.match("/prd/cls/index.html&LFGContentID=/lfg/del/hom/pxy") ) {
		page = "closedend";
		isfundcenter = "no";
	} else if ( url.match("/prd/mut/gro/") ) {
		page = "gro";
		isfundcenter = "no";
	} else if ( url.match("/lfg/delinst/ist/dpt/plit/") ) {
		page = "plit";
		isfundcenter = "no";
	} else if ( url.match("/lfg/delinst/ist/dpt/str/") ) {
		page = "dptstr";
		isfundcenter = "no";
	} else if ( url.match("/prd/mut/fix/") ) {
		page = "fix";
		isfundcenter = "no";
	} else if ( url.match("/prd/mut/bln/") ) {
		page = "cor";
		isfundcenter = "no";
	} else if ( url.match("/lfg/delinst/prf/isc/") ) {
		page = "inst_prf";
		isfundcenter = "no";
	} else if ( url.match("/prf/mut/") ) {
		page = "ag_prf";
		isfundcenter = "no";
	} else{
		page = "";
		isfundcenter = "no";
	}

//finding audience
if(url.match("/lfg/del/" || "LFGPage=%2Flfg%2Fdel%2F")) {
	audience = "del";
} else if ( url.match("/lfg/delinst/") ) {
	audience = "old_inst";
} else if ( url.match("/lfg/inst/" || "/lfg/instpub/") ) {
	audience = "inst";
	$.getScript("http://www-rnd.lfg.com/lfg/inst/js/inst_jquery.js");
} else if ( url.match("/lfg/opt/") ) {
	audience = "opt";
} else if ( url.match("/lfg/delintra/") ) {
	audience = "delintra";
} else if ( url.match("/lfg/ucits/") ) {
	audience = "ucits";
} else{
	audience = "";
}

if(url.indexOf("LFGPage=%2Flfg%2Fdel%2F") != -1) {
	audience = "del";
}

/***getting todays date***/
var curdate = new Date();
var wday = curdate.getDate();
var month = (curdate.getMonth()) + 1;//add 1 because getMonth() is an array from 0 through 11
var year = curdate.getFullYear();

// pad them out - convert 1 to 01 for formatting
if (wday.toString().length==1)
{
    wday = "0" + wday;
}
if (month.toString().length==1)
{
    month = "0" + month;
}
if (year.toString().length==1)
{
    year = "0" + year;
}

var today = (year + month + wday);//yyyymmdd this format will create a number that has a logical value

/************************************/
/**********Start of jQuery***********/
/************************************/
$(document).ready(function(){

//zebrastriping for tables
	$('.standardfund tr:even, .standardzebra tr:even, .rightBox li:even').addClass('alt');
	
	$('#sales div.sales_person:last, #right div p:last-child, #right div h4:last-child, #right div ul:last-child, #right div li:last-child').addClass('clearBottomMargin');
			
	$("table.standardzebra a[href$='.pdf'], table.standardzebra a[href*='?sku=']").addClass("pdfImage");	


if (audience == "old_inst"){
	if(page == "plit"){
		$("a.intermport2").each(
			function(){
				$(this).cluetip({
				local:true, 
				hideLocal: true, 
				arrows: true, 
				cursor: "pointer", 
				sticky: false 
				});
			});
	}
	if(page == "dptstr"){
		$("a.intermport2").each(
			function(){
				$(this).cluetip({
				local:true, 
				hideLocal: true, 
				arrows: true, 
				cursor: "pointer", 
				sticky: false 
				});
			});
	}
	
}

//All UCITS jQuery
if (audience == "ucits"){
	$('div.bottom_divider:eq(1)').hide();	// hide printable view
}


//All Intranet jQuery
if (audience == "delintra"){
			
			$('.rightBox li').hover(function () {
			  $(this).addClass('over');
		 	}, function () {
			  $(this).removeClass('over');
			}); 	

	var removedItalic = $('#hom h1#sifr').text();	 // removing Italics from PageHeaders
	$('#hom h1#sifr').hide().after('<h1>' + removedItalic + '</h1>');
	
	$("#hom h1:last:contains('INSIDE LINCOLN FINANCIAL GROUP')").hide();

}

/*Expire: searches all "a" tags with title attributes
(which should be in yyyymmdd format)and if they are 
less than or equal to today's date they are hidden*/
$("a")
		.filter(function (index) {
			  return ($(this).attr("title") != "") && ($(this).attr("title") <= today);//today is defined at the top
			})
		.hide();

/*adding column to fund facts table for waiver dates from an xml file
and adding a disclosure depending on if its Contractual or Voluntary*/
if(page == "Fund facts"||page == "fund_summary"||page == "inst_prf"){

	if(page == "Fund facts"||page == "fund_summary"){
		var pg_fnd_cod = url.substr(url.length - 2).toUpperCase();
		
		//adding footnote and link to it for cdsc as per Jim Oneal for foundation equity fund
		if (pg_fnd_cod == 'G8'){
			var aclsmxcdsc = $('b:contains("Max CDSC")').parent().next().text();
			var new_aclsmxcdsc = aclsmxcdsc + "<a href='#mxcdscdis'><sup>1</sup></a>";
			$('b:contains("Max CDSC")').parent().next().html(new_aclsmxcdsc);
			var mxcdscdis = "<a name='mxcdscdis'/><p class='legalText'><sup>1</sup> A purchase of Class A shares of $1 million or more may be made at net asset value (NAV). However, if you buy the shares through a financial advisor who is paid a commission, a contingent deferred sales charge will apply to redemptions made within one year of purchase (Limited CDSC). Additional Class A purchase options that involve a contingent deferred sales charge (CDSC) may be permitted from time to time and will be disclosed in the Prospectus if they are available.</p>";
			$('b:contains("Max CDSC")').parents('table:first').after(mxcdscdis);
		}
		
	}else if(page == "inst_prf"){
		var inst_ary = url.split("/");
		var pg_fnd_cod = inst_ary[8];
	}
	
	$.ajax({
		url: 'http://www.lfg.com/lfg/del/includes/fund_exp_limits_dis.xml',
		type: 'GET',
		dataType: 'xml',
		timeout: 1000,
		success: function(data){
			$(data).find('Fund').each(function() {
				var $fund = $(this);
				var xml_fund_code = $fund.find('fund_code').text();
				var expns_dis = $fund.find('disclosure').text();

				//if the fund code from the xml doc matches the fund of the page we're on then display the dates
				if(xml_fund_code == pg_fnd_cod){
					var dis_para = "<p class='legalText'>"+expns_dis+"</p>";
					var dis_para_ishr = "<p id='fees_waivers' class='disclosure_482'>"+expns_dis+"</p>";
					$("b:contains('Gross expense ratio')").parents("table:first").after(dis_para);
					$("#ishare-expenses").after(dis_para_ishr);
				}
			});//ending .each function
		}
	}); //ending ajax to bring in xml
	
	//hiding the printer friendly button because the jquery above doesn't print w/it.
	$('img[src$="/lfg/img/common/b_printfriendly.gif"]').parents('a:first').hide();
	
}//end fund facts page if for waivers info

/***************
all Retail jQuery
****************/
if (audience == "del") {
	
	//Temp fix for 7 day SEC Yield on cash reserve page
/*	if(url.match("3DD8%26perfPage")){
		var cash_dis = "<p><b>The performance quoted represents past performance and does not guarantee future results. Current performance may be lower or higher than the performance quoted.</b></p><p>An investment in the Fund is not insured or guaranteed by the Federal Deposit Insurance Corporation (FDIC) or any other government agency. Although the Fund seeks to preserve the value of an investment at $1.00 per share, it is possible to lose money by investing in the Fund.</p>";
		var yesterday = month + "/0" + (wday-1) + "/" + year;
		var sev_day_yield = "<tr><td class='hd1-3'><b class='bodyText'>&nbsp;7-Day SEC yield</b></td></tr><tr><td class='bodyText'>&nbsp;&nbsp;&nbsp;0.14% As of "+ yesterday +"</td></tr><br/>";
		
		$('form').parents('table:first').prev().prev().replaceWith(cash_dis);
		$('form').parents('tr:first').prev().before(sev_day_yield);
		$('p.legalText:last').prev().hide();	
	}
*/


	//Figures out what fund you are in for fund center pages by fund code
	var fund_code_href = $("a.l4-item:first").attr("href");
	fund_code_href = $.trim(fund_code_href); 
	
	if(fund_code_href == "" || fund_code_href == null){
		var fund_code = url.substr(url.length - 2);
	}else{
		var fund_code = fund_code_href.substr(fund_code_href.length - 2);
	}

	//if Foundation Equity
	if(fund_code == "G8"){
		if(page == "fund_summary"){
			//replacing disclosure per crn#4870, can remove when support wizard ticket are created and completed
			$("#482").children().eq(1).replaceWith("<p class='disclosure'>Performance includes reinvestment of all distributions and is subject to change. Expenses may have been subsidized. Had they not, performance would be lower. For more information, please call 800 523-1918. Class A shares have a maximum up-front sales charge of 5.75% and are subject to an annual distribution fee. Class C shares are subject to a 1.00% annual distribution and service fee and will be subject to a contingent deferred sales charge of 1.00% if redeemed within the first 12 months. Class R shares are subject to an annual distribution fee. Please see the fee table in the Fund's prospectus for more information.</p>");
			//hiding Portfolio Characteristics on funds summary page for 1 year, until Portfolio Turnover Ratio can be populated
			$("h3:contains('Portfolio Characteristics')").hide();
			$("h3:contains('Portfolio Characteristics')").next().hide();
			$("h3:contains('Portfolio Characteristics')").next().next().hide();
		}//end of fund summary if
		$("p:contains('Quoted performance')").replaceWith("<p class='legalText'><b>The performance quoted represents past performance and does not guarantee future results. Investment return and principal value of an investment will fluctuate so that shares, when redeemed, may be worth more or less than their original cost. Current performance may be lower or higher than the performance quoted.</b></p>");
		$("p:contains('Mutual funds, annuities')").replaceWith("<p class='legalText'>Please be sure to consult your financial advisor when making investments. Mutual funds are not insured by the FDIC or any other government agency; are not deposits or other obligations of, or guaranteed by, any bank or affiliate; and are subject to investment risks, including the possible loss of principal amount invested.</p>");
		//hiding portfolio characteristics for 1 year, until Portfolio Turnover Ratio can be populated
		$("a:contains('Portfolio characteristics')").parents("td:first").hide();
		if(page == "Characteristics"){
			$("b:contains('Equity statistics')").parents("table:first").replaceWith("<h2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;No characteristics available at this time</h2>");
		}
	}//foundation equity end
	
	//if performance is in the h1 the length will be 1 else length will be 0
	var prf_h1 = $("h1:contains('Performance')").length;
	
	//Hiding double digit returns disclosure if there are not double digit returns
	if(page == "prf"||prf_h1 == 1){
		//initially hiding the dd return
		$("p:contains('double-digit')").addClass("ddreturns").hide();
		//looping through each row that contains class
		$("b:contains('Class')").each(function() {
			//looping through each td that contains a % symbol
			$(this).parents("tr:first").next().children("td:contains('%')").each(function() {
				var percent_fields = $(this).text();
				var percent_splt_ary = percent_fields.split(".");
				var percent_no_dec = percent_splt_ary[0];
				//parsing out the percentage and determining if its greater or equal to 20
				//20% is the cut-off for dd return disclosure per compliance
				var percent_val = parseInt(percent_no_dec);
				if(percent_val >= 20){
					$(".ddreturns").show();	
				}
			});//end of % td .each function
			$(this).parents("tr:first").next().next().children("td:contains('%')").each(function() {
				var percent_fields = $(this).text();
				var percent_splt_ary = percent_fields.split(".");
				var percent_no_dec = percent_splt_ary[0];
				var percent_val = parseInt(percent_no_dec);
				if(percent_val >= 20){
					$(".ddreturns").show();	
				}
			});//end of 2nd % td .each function
		});//end of class row .each
				
	}//end of performance "if" for dd returns

	//all fund summary pages
	if(page == "fund_summary"){
		//removing printer friendly language from the first paragraph on all fund summary pages
		//this will need to be submitted as a support wizard
		var preformed_old_paragraph = $("p:contains('pre-formatted')").html();
		//Internet Explorer changes anchor tags to uppercase
		if(navigator.appName == "Microsoft Internet Explorer"){
			var preformed_array = preformed_old_paragraph.split("<A");
		}else{
			var preformed_array = preformed_old_paragraph.split("<a");
		}
		var last_part = "<A" + preformed_array[1];
		var first_part_array = preformed_array[0].split(". ");
		var first_part = first_part_array[0] + ". ";
		var preformed_new_paragraph = "<p>" + first_part + last_part + "</p>";
		$("p:contains('pre-formatted')").replaceWith(preformed_new_paragraph);
	}

	//hiding disclosures
	if(page == "ag_prf"){
		$('#231').parent().hide();
		$('#231').parent().next().hide();
		$('#231').parent().next().next().hide();
		$('#231').parent().next().next().next().hide();
		$('#231').parent().next().next().next().next().hide();
		$('#231').parent().next().next().next().next().next().hide();
		$('#231').parent().next().next().next().next().next().next().hide();
		$('#231').parent().next().next().next().next().next().next().next().hide();
		$('#231').parent().next().next().next().next().next().next().next().next().hide();
	}

//Closed-end replacing the ddlp with Delaware Management Holdings, Inc.
	if(page == "closedend"){
		$('#cr_company').replaceWith('Delaware Management Holdings, Inc.');
	}
	var closedendpg = $(".l2-itemH:contains('Closed-end funds')").length;
	if(closedendpg == 1){
		$('#cr_company').replaceWith('Delaware Management Holdings, Inc.');
		if(url.match("2Fcls")){
			$(".bodyText:last").hide();
			$(".bodyText:last").prev().hide();
		}
	}

	//temporarly hiding an outdated disclosure for Small Cap Core
	//if it's a fund center page
	if(isfundcenter == "yes"){
		//it the url's fund code = small cap core's
		var scc = url.substr(url.length - 2).toUpperCase();
		if(scc = "NS"){
			$("p.legalText:last").hide();
		}
	}
	
/*******Adding &reg; to the needed H1s - START**********/
		var h1_contains = $("h1:contains('Delaware Trend')").html();
		if (h1_contains == null) {
				var h1_contains = $("h1:contains('Delaware Delchester')").html();
				if (h1_contains == null) {
					var h1_contains = $("h1:contains('Delaware Value')").html();
				}
		}
			
		if(h1_contains != null){
			var h1_array = h1_contains.split("-");
			var dynm_pg = $.trim(h1_array[1]);
			var name_fund_array = $.trim(h1_array[0]);
			var name_array = name_fund_array.split(" ");
			if (name_array.length > 2){
				var array_length = name_array.length;
				var rest_of_name = "";
				for(var i = 2; i < array_length; i++){
					if (rest_of_name == ""){
						rest_of_name = name_array[i];
					}else{
						rest_of_name += " " + name_array[i];
					}
				}
			}
			var fund_name = $.trim(name_array[0] + " " + name_array[1]);
			//document.write(fund_name.lastIndexOf('Fund'));
			$("h1:contains('"+ fund_name +"')").replaceWith('<h1>'+ fund_name +'<sup>&reg;</sup> '+ rest_of_name +' - ' + dynm_pg + '</h1>');
		}
		/*******Adding &reg; to the needed H1s - END**********/
	
	
}//***********end del audience if**************

//Portfolio Characteristics; if we're on the characteristics page then run
	if(page == "Characteristics"){
		$.getScript("http://www.lfg.com/lfg/del/js/port_char.js");
	};

//adding SEC Yield without waiver for All funds
if(page=="Distributions"){
	var delhyo = $("h1:contains('Delaware High-Yield Opportunities')").html();
	var delcb = $("h1:contains('Delaware Core Bond')").html();
	var delcpb = $("h1:contains('Delaware Core Plus Bond')").html();
	var dellmtdiv = $("h1:contains('Delaware Limited-Term Diversified')").html();
	var deltfpa = $("h1:contains('Delaware Tax-Free Pennsylvania')").html();
	var deltfusa = $("h1:contains('Delaware Tax-Free USA Fund')").html();
	var deltfusitr = $("h1:contains('Delaware Tax-Free USA Intermediate')").html();
	var deldivinc = $("h1:contains('Delaware Diversified Income')").html();
	var delextdur = $("h1:contains('Delaware Extended Duration Bond')").html();
	var delcorp = $("h1:contains('Delaware Corporate Bond')").html();
	var deltfmin = $("h1:contains('Delaware Tax-Free Minnesota Fund')").html();
	var deltfminint = $("h1:contains('Delaware Tax-Free Minnesota Intermediate')").html();
	var delminhymb = $("h1:contains('Delaware Minnesota High-Yield')").html();
	var deltfaz = $("h1:contains('Delaware Tax-Free Arizona')").html();
	var delcal = $("h1:contains('Delaware Tax-Free California')").html();
	var delcol = $("h1:contains('Delaware Tax-Free Colorado')").html();
	var deltfid = $("h1:contains('Delaware Tax-Free Idaho')").html();
	var deltfny = $("h1:contains('Delaware Tax-Free New York')").html();
	var delnathymb = $("h1:contains('Delaware National High-Yield Municipal')").html();
	var delinpb = $("h1:contains('Delaware Inflation Protected Bond')").html();
	var dellcv = $("h1:contains('Delaware Large Cap Value')").html();
	var delreit = $("h1:contains('Delaware REIT')").html();
	var deldivdinc = $("h1:contains('Delaware Dividend Income')").html();
	var delintval = $("h1:contains('Delaware International Value Equity')").html();
	var delemgmrk = $("h1:contains('Delaware Emerging Markets')").html();
	var delglbval = $("h1:contains('Delaware Global Value')").html();
	var delval = $("h1:contains('Delaware Value')").html();
	var delaggap = $("h1:contains('Delaware  Aggressive Allocation Portfolio')").html();
	var delconap = $("h1:contains('Delaware  Conservative Allocation Portfolio')").html();
	var delmodap = $("h1:contains('Delaware  Moderate Allocation Portfolio')").html();

	if(delhyo != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>7.75%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delcb != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.07%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delcpb != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.98%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(dellmtdiv != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.62%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfpa != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.63%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfusa != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.38%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfusitr != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.44%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deldivinc != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>4.95%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delextdur != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>5.21%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delcorp != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>4.90%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfmin != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.29%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfminint != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.97%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delminhymb != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.31%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfaz != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.99%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delcal != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.88%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delcol != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>3.15%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfid != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.65%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deltfny != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.88%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delnathymb != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>4.86%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delinpb != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>0.47%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(dellcv != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.87%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delreit != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>0.85%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(deldivdinc != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>4.24%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delintval != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.60%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delemgmrk != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>0.31%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delval != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.63%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delconap != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.15%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delmodap != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>2.41%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delaggap != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.08%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}else if(delglbval != null){
		var secyield_nowav = "<tr><td class='bodyText' width='50%'><b class='bodyText'>SEC yield without waiver</b> (Class A as of 09/30/09)</td><td class='bodyText' width='50%'>1.01%</td></tr>"
		$("b.bodyText:contains('SEC yield')").append(' with waiver');
		$("b.bodyText:contains('SEC yield')").parents('tr:first').after(secyield_nowav);
	}
}

});//document . ready end



/* --- PLUG-INS START --- */


/* Form Validate */
/*
 * jQuery validation plug-in 1.5.2
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 Jörn Zaefferer
 *
 * $Id: jquery.validate.js 6243 2009-02-19 11:40:49Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return;}var validator=$.data(this[0],'validator');if(validator){return validator;}validator=new $.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true;});this.submit(function(event){if(validator.settings.debug)event.preventDefault();function handle(){if(validator.settings.submitHandler){validator.settings.submitHandler.call(validator,validator.currentForm);return false;}return true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false;}return handle();}else{validator.focusInvalid();return false;}});}return validator;},valid:function(){if($(this[0]).is('form')){return this.validate().form();}else{var valid=false;var validator=$(this[0].form).validate();this.each(function(){valid|=validator.element(this);});return valid;}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return result;},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,'validator').settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete staticRules[element.name];return existingRules;}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method];});return filtered;}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data);}return data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(a.value);},filled:function(a){return!!$.trim(a.value);},unchecked:function(a){return!a.checked;}});$.format=function(source,params){if(arguments.length==1)return function(){var args=$.makeArray(arguments);args.unshift(source);return $.format.apply(this,args);};if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n);});return source;};$.validator=function(options,form){this.settings=$.extend({},$.validator.defaults,options);this.currentForm=form;this.init();};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass);this.errorsFor(element).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name in this.submitted)this.element(element);},highlight:function(element,errorClass){$(element).addClass(errorClass);},unhighlight:function(element,errorClass){$(element).removeClass(errorClass);}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",dateDE:"Bitte geben Sie ein gültiges Datum ein.",number:"Please enter a valid number.",numberDE:"Bitte geben Sie eine Nummer ein.",digits:"Please enter only digits",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.format("Please enter no more than {0} characters."),minlength:$.format("Please enter at least {0} characters."),rangelength:$.format("Please enter a value between {0} and {1} characters long."),range:$.format("Please enter a value between {0} and {1}."),max:$.format("Please enter a value less than or equal to {0}."),min:$.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function delegate(event){var validator=$.data(this[0].form,"validator");validator.settings["on"+event.type]&&validator.settings["on"+event.type].call(validator,this[0]);}$(this.currentForm).delegate("focusin focusout keyup",":text, :password, :file, select, textarea",delegate).delegate("click",":radio, :checkbox",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid();},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name in errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return this.objectLength(this.invalid);},objectLength:function(obj){var count=0;for(var i in obj)count++;return count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return this.size()==0;},size:function(){return this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus();}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var validator=this,rulesCache={};return $([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules()))return false;rulesCache[this.name]=true;return true;});},clean:function(selector){return $(selector)[0];},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.formSubmitted=false;this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0];}var rules=$(element).rules();var dependencyMismatch=false;for(method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return false;}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id
+", check the '"+rule.method+"' method");throw e;}}if(dependencyMismatch)return;if(this.objectLength(rules))this.successList.push(element);return true;},customMetaMessage:function(element,method){if(!$.metadata)return;var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method];},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method]);},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined)return arguments[i];}return undefined;},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning: No message defined for "+element.name+"</strong>");},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method);if(typeof message=="function")message=message.call(this,rule.parameters,element);this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message;},addWrapper:function(toToggle){if(this.settings.wrapper)toToggle=toToggle.add(toToggle.parents(this.settings.wrapper));return toToggle;},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass);this.showLabel(error.element,error.message);}if(this.errorList.length){this.toShow=this.toShow.add(this.containers);}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i]);}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass);}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show();},validElements:function(){return this.currentElements.not(this.invalidElements());},invalidElements:function(){return $(this.errorList).map(function(){return this.element;});},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message);}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();}if(!this.labelContainer.append(label).length)this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element);}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label);}this.toShow=this.toShow.add(label);},errorsFor:function(element){return this.errors().filter("[for='"+this.idOrName(element)+"']");},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name);},checkable:function(element){return/radio|checkbox/i.test(element.type);},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(this.checkable(element))return this.findByName(element.name).filter(':checked').length;}return value.length;},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true;},dependTypes:{"boolean":function(param,element){return param;},"string":function(param,element){return!!$(param,element.form).length;},"function":function(param,element){return param(element);}},optional:function(element){return!$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch";},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true;}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();}else if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",previous={old:null,valid:true,message:this.defaultMessage(element,"remote")});}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className);},classRules:function(element){var rules={};var classes=$(element).attr('class');classes&&$.each(classes.split(' '),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this]);}});return rules;},attributeRules:function(element){var rules={};var $element=$(element);for(method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value;}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength;}return rules;},metadataRules:function(element){if(!$.metadata)return{};var meta=$.data(element.form,'validator').settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata();},staticRules:function(element){var rules={};var validator=$.data(element.form,'validator');if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{};}return rules;},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return;}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break;}if(keepRule){rules[prop]=val.param!==undefined?val.param:true;}else{delete rules[prop];}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter;});$.each(['minlength','maxlength','min','max'],function(){if(rules[this]){rules[this]=Number(rules[this]);}});$.each(['rangelength','range'],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])];}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max;}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength;}}if(rules.messages){delete rules.messages}return rules;},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true;});data=transformed;}return data;},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message;if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name));}},methods:{required:function(value,element,param){if(!this.depend(param,element))return"dependency-mismatch";switch(element.nodeName.toLowerCase()){case'select':var options=$("option:selected",element);return options.length>0&&(element.type=="select-multiple"||($.browser.msie&&!(options[0].attributes['value'].specified)?options[0].text:options[0].value).length>0);case'input':if(this.checkable(element))return this.getLength(value,element)>0;default:return $.trim(value).length>0;}},remote:function(value,element,param){if(this.optional(element))return"dependency-mismatch";var previous=this.previousValue(element);if(!this.settings.messages[element.name])this.settings.messages[element.name]={};this.settings.messages[element.name].remote=typeof previous.message=="function"?previous.message(value):previous.message;param=typeof param=="string"&&{url:param}||param;if(previous.old!==value){previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){if(response){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors();}else{var errors={};errors[element.name]=response||validator.defaultMessage(element,"remote");validator.showErrors(errors);}previous.valid=response;validator.stopRequest(element,response);}},param));return"pending";}else if(this.pending[element.name]){return"pending";}return previous.valid;},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param;},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param;},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1]);},min:function(value,element,param){return this.optional(element)||value>=param;},max:function(value,element,param){return this.optional(element)||value<=param;},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1]);},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value));},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);},dateDE:function(value,element){return this.optional(element)||/^\d\d?\.\d\d?\.\d\d\d?\d?$/.test(value);},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);},numberDE:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value);},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value);},creditcard:function(value,element){if(this.optional(element))return"dependency-mismatch";if(/[^0-9-]+/.test(value))return false;var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9)nDigit-=9;}nCheck+=nDigit;bEven=!bEven;}return(nCheck%10)==0;},accept:function(value,element,param){param=typeof param=="string"?param:"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"));},equalTo:function(value,element,param){return value==$(param).val();}}});})(jQuery);;(function($){var ajax=$.ajax;var pendingRequests={};$.ajax=function(settings){settings=$.extend(settings,$.extend({},$.ajaxSettings,settings));var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}return(pendingRequests[port]=ajax.apply(this,arguments));}return ajax.apply(this,arguments);};})(jQuery);;(function($){$.each({focus:'focusin',blur:'focusout'},function(original,fix){$.event.special[fix]={setup:function(){if($.browser.msie)return false;this.addEventListener(original,$.event.special[fix].handler,true);},teardown:function(){if($.browser.msie)return false;this.removeEventListener(original,$.event.special[fix].handler,true);},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments);}};});$.extend($.fn,{delegate:function(type,delegate,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments);}});},triggerEvent:function(type,target){return this.triggerHandler(type,[$.event.fix({type:type,target:target})]);}})})(jQuery);