<!--
// @VERSAO 1.0 2009-04-22
// @AUTOR  DAC 
// @DESC  Quadros de apresentação de cálculo e regimede aposentação

var colWIDTH		= "20%"
var gLim12IAS		= ""
var gLim90R			= ""
var gLim90Ran		= ""
var gLim90Rno		= ""
var gRunPenalizacao	= ""
var gRunBonificacao	= ""
var ghaBonifccs		= ""
var gtxBonif_A		= 0.65
var gtxBonif_VNA	= 0
var gtxBGlobal		= 0
var gnB_A	= 0
var gnB_VNA	= 0
var str_L90R = "limitada a 90% de <B>R</B>"

var ghpm_idx	= ""
var str_ghpm	= ""
var ts_cga_ap	= ""

var ioSpan = "<SPAN class=cinza>"
var nr_t_penaliz = "Penalização"

var nr_t_regimes = new Array()
nr_t_regimes[0] = "<B>Tradicional<BR></B><SMALL>(-1/+3)</SMALL>"
nr_t_regimes[1] = "<B>Nova<BR></B><SMALL>(-0,5/+1)</SMALL>"
nr_t_regimes[2] = "<B>Futura<BR></B><SMALL>(-1/+3)</SMALL>"
nr_t_regimes[3] = "<B>Limite</B>"


var nr_v_tsTot = new Array("0","0","0","0")
var nr_v_cComp = new Array("0","0","0","0")
var nr_v_sMais = new Array("0","0","0","0")
var nr_v_ilApo = new Array("0","0","0","0")
var nr_v_cIdad = new Array("0","0","0","0")
var nr_v_idCon = new Array("0","0","0","0")
var nr_v_idSub = new Array("0","0","0","0")
var nr_v_idFal = new Array("0","0","0","0")
var nr_v_penal = new Array("0","0","0","0")

function q_sDireitos(q, r, ts_2005, ts_2007, ts_ap, id_2005, incapaz){
	var dtNascimento = document.getElementById("cga_dataNasc").value
	var id_2005 = getIdadeAquApos(dtNascimento, "2005-12-31","")
	var id_2007 = getIdadeAquApos(dtNascimento, "2007-12-31","")
	
	var sd_regime_a = "Salvaguarda de direitos do artigo 7.º, n.º 1, da Lei n.º 60/2005,<BR> de 29 de Dezembro" //a1,b12,c4
	var sd_regime_b = "Salvaguarda de direitos do artigo 7.º, n.º 2, da Lei n.º 60/2005,<BR> de 29 de Dezembro"
	var sd_regime_c = "Salvaguarda de direitos do artigo 7.º, n.º 3, da Lei n.º 52/2007,<BR> de 31 de Agosto"
	var sd_regime_d = "Regime introduzido pela Lei n.º 52/2007, de 31 de Agosto"
	
	var ti_sd = ""
	var dt_sDireitos= "2007-12-31"
	var ts_legal_na = 37
	var	id_legal_na = 61
	var ts_legal_a  = 37
	var ts_sDir		= ts_2007
	var id_sDir		= id_2007

	if ((ts_2005 >= 36)&& (incapaz == "n")){
		ti_sd = sd_regime_a
		if ((q == "a1")||(q == "b12")||(q == "c4")){
			ti_sd = sd_regime_a
		}else{
			if ((r == 4)||(r == 5)||(r == 6)) {ti_sd = sd_regime_b}
		}
		dt_sDireitos= "2005-12-31"
		id_legal_na = 60
		ts_legal_na = 36
		ts_legal_a  = 36
		ts_sDir		= ts_2005
		id_sDir		= id_2005
	}else{
		if ((ts_2007 >= 37)||((ts_2007 >= 36)&&(id_2007 >= 61))){
			ti_sd = sd_regime_c
			dt_sDireitos= "2007-12-31"
			id_legal_na = 61
			ts_legal_na = 36
			ts_legal_a  = 37
			ts_sDir		= ts_2007
			id_sDir		= id_2007
		}else{
			if (r == 3) {ti_sd = sd_regime_d} 
		}
	}
					
	q_sd = "<TABLE ALIGN=LEFT WIDTH='100%' cellspacing=0 STYLE=border-collapse:collapse;border:1px>"
	q_sd+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ ti_sd +"</TH></TR>"
	q_sd+= "<TR>"
		q_sd+= "<TD ROWSPAN=3>Condições de aposentação<BR>em "+dt_sDireitos+"</TD>"
		q_sd+= "<TD ROWSPAN=2>Não antecipada</TD>"
		q_sd+= "<TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(ts_legal_na, "ts") +"</TD>"
	q_sd+= "</TR>"
	q_sd+= "<TR><TD>Idade legal</TD><TD ALIGN=RIGHT>"+ formataTsId_am(id_legal_na, "id") +"</TD></TR>"
	q_sd+= "<TR><TD>Antecipada</TD><TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(ts_legal_a, "ts") +"</TD></TR>"
	q_sd+= "<TR>"
		q_sd+= "<TD COLSPAN=2 ROWSPAN=3>Situação do subscritor em "+dt_sDireitos+"</TD>"
		q_sd+= "<TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(ts_sDir, "ts") +"</TD>"
	q_sd+= "</TR>"
	q_sd+= "<TR><TD>Idade</TD><TD ALIGN=RIGHT>"+ formataTsId_am(id_sDir, "id") +"</TD></TR>"
	q_sd+= "</TABLE>"
	
	return q_sd;
}

function q_mAposentacao(riCGA, fundamento, ano_ap, dt_ap, ts_ap, id_ap, tsTC, idTC, incapacidade){
	var incapaz = "Não"
	var ts_legal = tsTC
	var id_legal = idTC
	var ts_legal_a = 30
	if ((incapacidade == "s")||(incapacidade == "S")){incapaz = "Sim"}
	if (ano_ap == 2008){ts_legal_a = 33}
	if ((riCGA!="1")||(ano_ap >= 2015)){
		ts_legal = 15
		id_legal = 65
	}
			
	q_b_MA = "<TABLE ALIGN=LEFT WIDTH='100%'cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_MA+= "<TH COLSPAN=4 ALIGN=center><B>"+ fundamento +"</B></TH>"
	q_b_MA+= "<TR>"
		q_b_MA+= "<TD ROWSPAN=3>Condições de aposentação<BR>em "+ formataAnoMes(dt_ap) +"</TD>"
		q_b_MA+= "<TD ROWSPAN=2>Não antecipada</TD>"
		q_b_MA+= "<TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(tsTC, "ts") +"</TD>"
	q_b_MA+= "</TR>"
	q_b_MA+= "<TR><TD>Idade legal</TD><TD ALIGN=RIGHT>"+ formataTsId_am(idTC, "id") +"</TD></TR>"
	q_b_MA+= "<TR><TD>Antecipada</TD><TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(ts_legal_a,"ts") +"</TD></TR>"
	
	q_b_MA+= "<TR>"
		q_b_MA+= "<TD COLSPAN=2 ROWSPAN=3>Situação do subscritor em "+ formataAnoMes(dt_ap) +"</TD>"
		q_b_MA+= "<TD>Tempo de serviço</TD><TD ALIGN=RIGHT>"+ formataTsId_am(ts_ap, "ts") +"</TD>"
	q_b_MA+= "</TR>"
	q_b_MA+= "<TR><TD>Idade</TD><TD ALIGN=RIGHT>"+ formataTsId_am(id_ap, "id") +"</TD></TR>"
	q_b_MA+= "<TR><TD>Incapacidade</TD><TD ALIGN=RIGHT>"+ incapaz +"</TD></TR>"
	q_b_MA+= "</TABLE>"
	
	return q_b_MA;
}

function q_penalizacao(q, ts_2005, ts_ap, id_ap, tsTC, idTC, ano_ap, dt_nasc, dt_ap){
	gRunPenalizacao = "ok"
	var nr_s_tsTot =" <B>A</B>. Serviço total do subscritor"
	var nr_s_cComp =" <B>B</B>. Carreira completa"
	var nr_s_sMais =" <B>C</B>. Serviço a mais</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>A</b>-<b>B</b></SPAN>"
	var nr_s_ilApo =" <B>D</B>. Idade legal de aposentação"
	var nr_s_cIdad =" <B>E</B>. Crédito na idade </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>C</b>:<b>3</b> ou <b>C</b>:<b>2</b></SPAN>"
	var nr_s_idCon =" <B>F</B>. Idade a considerar</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>D</b>-<b>E</b></SPAN>"
	var nr_s_idSub =" <B>G</B>. Idade do subscritor"
	var nr_s_idFal =" <B>H</B>. Idade em falta</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>F</b>-<b>G</b></SPAN>"
	var nr_s_penal =" <B>I</B>. Penalização </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>H</b>x4,5%</SPAN>"
	
	if (ts_2005 < 36){// alterações para a penalização 55/30(futura)
		if (ano_ap >= 2015){
			nr_s_tsTot =" <B>A</B>. Serviço total do subscritor aos 55 anos de idade"
			nr_s_cComp =" <B>B</B>. Tempo de serviço de referência aos 55 anos de idade"
			nr_s_cIdad =" <B>E</B>. Crédito na idade </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>C</b>:<b>3</b></SPAN>"
			nr_s_penal =" <B>I</B>. Penalização </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>H</b> x <b>0,5%</b></SPAN>"
		}
	}
	
	if (ts_2005 >= 36){ // salvaguarda de direitos de 2005 
		nr_s_penal =" <B>I</B>. Penalização </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>H</b>x4,5%</SPAN>"
	}
	
	var ts_ap_am = ts_ap // parametro para a funçao getTservicoAmais5530()
	ts_ap = parseInt(ts_ap,10) + (get_tsSoMeses(ts_ap)/12)
			
	for (i=0; i<3;i++){
		nr_v_tsTot[i] = ts_ap
		nr_v_cComp[i] = tsTC
		if (i==0){
			nr_v_cComp[i] = 36
			if (ts_2005 <36){nr_v_cComp[i] = tsTC}
		}
		nr_v_sMais[i] = ts_ap - nr_v_cComp[i]
		if (nr_v_sMais[i] < 0){nr_v_sMais[i]=0}
		nr_v_ilApo[i] = idTC
		nr_v_cIdad[i] = parseInt(nr_v_sMais[i]/3,10)
		
		if (i==1){nr_v_cIdad[i] = parseInt(nr_v_sMais[i],10)/2} // atenção! são diferentes
		if (i==2){nr_v_cIdad[i] = parseInt(nr_v_sMais[i]/2,10)} //   "
		
		nr_v_idCon[i] = idTC - nr_v_cIdad[i]
		nr_v_idSub[i] = id_ap
		nr_v_idFal[i] = Math.ceil(nr_v_idCon[i] - nr_v_idSub[i])
		if (i==2){
			nr_v_idFal[i] = (nr_v_idCon[i] - nr_v_idSub[i])
			var meses=0
			meses = getIdadeTServicoEmMeses(nr_v_idFal[i], "td")
			nr_v_idFal[i]= meses
		}
		if (nr_v_idFal[i] < 0){nr_v_idFal[i]=0}
		nr_v_penal[i] = nr_v_idFal[i] * 4.5
	
		if (i==2){nr_v_penal[i] = nr_v_idFal[i] * 0.5}
	
	}
	
	////////////////////// Futura 55_30 ano_ap >= 2015 /////////////////////////////
	
	var ts_5530  = getTSouDT55Idade(id_ap, ts_ap_am, dt_nasc, dt_ap, "ts")
	var ts_Amais = ts_5530 - 360 //360 meses sifnifica 30 anos
	var tsd_5530 = (ts_5530/12)
	var tsd_Amais= (ts_Amais/12)
	var tsd_5530 = parseInt(ts_5530/12,10)+"."+(ts_5530%12)
	var tsd_Amais= parseInt(ts_Amais/12,10)+"."+(ts_Amais%12)
	
	nr_v_tsTot[2] = tsd_5530
	nr_v_cComp[2] = 30
	nr_v_sMais[2] = tsd_Amais
	if (nr_v_sMais[2] < 0){nr_v_sMais[2]=0}//
	nr_v_ilApo[2] = idTC
	nr_v_cIdad[2] = parseInt(nr_v_sMais[2]/3,10)//
	nr_v_idCon[2] = nr_v_ilApo[2] - nr_v_cIdad[2]
	nr_v_idSub[2] = id_ap
	nr_v_idFal[2] = nr_v_idCon[2] - nr_v_idSub[2]
	if (nr_v_idFal[2] < 0){nr_v_idFal[2]=0}
	var meses=0
	meses = getIdadeTServicoEmMeses(nr_v_idFal[2], "td")
	nr_v_idFal[2] = meses
	nr_v_penal[2] = nr_v_idFal[2] * 0.5
	
	////////////////////////// LIMITE //////////////////////////////
	
	nr_v_tsTot[3] = ts_ap
	nr_v_cComp[3] = 36
	nr_v_sMais[3] = ts_ap - nr_v_cComp[3]
	if (nr_v_sMais[3] < 0){nr_v_sMais[3]=0}//
	nr_v_ilApo[3] = 60
	nr_v_cIdad[3] = parseInt(nr_v_sMais[3]/3,10)//
	nr_v_idCon[3] = nr_v_ilApo[3] - nr_v_cIdad[3]
	nr_v_idSub[3] = id_ap
	nr_v_idFal[3] = Math.ceil(nr_v_idCon[3] - nr_v_idSub[3])
	if (nr_v_idFal[3] < 0){nr_v_idFal[3]=0}
	nr_v_penal[3] = nr_v_idFal[3] * 4.5
	///////////////////////////////////////////////////////////////
	
	if (nr_v_penal[0] > 100){nr_v_penal[0]=100}
	if (nr_v_penal[1] > 100){nr_v_penal[1]=100}
	if (nr_v_penal[2] > 100){nr_v_penal[2]=100}
	
	var td_lb = new Array()//labels
	td_lb[0]= "<TD COLSPAN=2 ALIGN=CENTER><B>Descritivo</B></TD>"
	td_lb[1]= "<TD COLSPAN=2>"+ nr_s_tsTot	+"</TD>"
	td_lb[2]= "<TD COLSPAN=2>"+ nr_s_cComp	+"</TD>"
	td_lb[3]= "<TD COLSPAN=1>"+ nr_s_sMais	+"</TD>"
	td_lb[4]= "<TD COLSPAN=2>"+ nr_s_ilApo	+"</TD>"
	td_lb[5]= "<TD COLSPAN=1>"+ nr_s_cIdad	+"</TD>"
	td_lb[6]= "<TD COLSPAN=1>"+ nr_s_idCon	+"</TD>"
	td_lb[7]= "<TD COLSPAN=2>"+ nr_s_idSub	+"</TD>"
	td_lb[8]= "<TD COLSPAN=1>"+ nr_s_idFal	+"</TD>"
	td_lb[9]= "<TD COLSPAN=1>"+ nr_s_penal	+"</TD>"
		
	var td_t = new Array()//tradicional
	td_t[0]= "<TD ALIGN=CENTER>"+ nr_t_regimes[0]						+ "</TD>"
	td_t[1]= "<TD ALIGN=right>" + formataTsId_am(nr_v_tsTot[0], "id")	+ "</TD>"
	td_t[2]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cComp[0], "id")	+ "</TD>"
	td_t[3]= "<TD ALIGN=right>" + formataTsId_am(nr_v_sMais[0], "id")	+ "</TD>"
	td_t[4]= "<TD ALIGN=right>" + formataTsId_am(nr_v_ilApo[0], "id")	+ "</TD>"
	td_t[5]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cIdad[0], "id")	+ "</TD>"
	td_t[6]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idCon[0], "id")	+ "</TD>"
	td_t[7]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idSub[0], "id")	+ "</TD>"
	//td_t[8]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idFal[0], "id")	+ "</TD>"
	td_t[8]= "<TD ALIGN=right>" + nr_v_idFal[0]							+ "a</TD>"
	td_t[9]= "<TD ALIGN=right>" + formatNumEuro(nr_v_penal[0], 1, 1)	+ "%</TD>"
		
	var td_n = new Array()//nova
	td_n[0]= "<TD ALIGN=CENTER>"+ nr_t_regimes[1]						+ "</TD>"
	td_n[1]= "<TD ALIGN=right>" + formataTsId_am(nr_v_tsTot[1], "id")	+ "</TD>"
	td_n[2]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cComp[1], "id")	+ "</TD>"
	td_n[3]= "<TD ALIGN=right>" + formataTsId_am(nr_v_sMais[1], "id")	+ "</TD>"
	td_n[4]= "<TD ALIGN=right>" + formataTsId_am(nr_v_ilApo[1],	"id")	+ "</TD>"
	td_n[5]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cIdad[1],	"id")	+ "</TD>"
	td_n[6]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idCon[1],	"id")	+ "</TD>"
	td_n[7]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idSub[1],	"id")	+ "</TD>"
	//td_n[8]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idFal[1],	"id")	+ "</TD>"
	td_n[8]= "<TD ALIGN=right>" + nr_v_idFal[1] 						+ "a</TD>"
	td_n[9]= "<TD ALIGN=right>" + formatNumEuro(nr_v_penal[1], 1, 1)	+ "%</TD>"
		
	var td_f = new Array()//futura
	td_f[0]= "<TD ALIGN=CENTER>"+ nr_t_regimes[2]						+ "</TD>"
	td_f[1]= "<TD ALIGN=right>" + formataTsId_am(nr_v_tsTot[2], "id")	+ "</TD>"
	td_f[2]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cComp[2], "id")	+ "</TD>"
	td_f[3]= "<TD ALIGN=right>" + formataTsId_am(nr_v_sMais[2], "id")	+ "</TD>"
	td_f[4]= "<TD ALIGN=right>" + formataTsId_am(nr_v_ilApo[2], "id")	+ "</TD>"
	td_f[5]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cIdad[2], "id")	+ "</TD>"
	td_f[6]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idCon[2], "id")	+ "</TD>"
	td_f[7]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idSub[2], "id")	+ "</TD>"
	td_f[8]= "<TD ALIGN=right>" +				nr_v_idFal[2]			+ "m</TD>"
	td_f[9]= "<TD ALIGN=right>" + formatNumEuro(nr_v_penal[2], 1, 1)	+ "%</TD>"
	
	
	var td_l = new Array()//limite
	td_l[0]= "<TD ALIGN=CENTER>"+ nr_t_regimes[3]						+ "</TD>"
	td_l[1]= "<TD ALIGN=right>" + formataTsId_am(nr_v_tsTot[3], "id")	+ "</TD>"
	td_l[2]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cComp[3], "id")	+ "</TD>"
	td_l[3]= "<TD ALIGN=right>" + formataTsId_am(nr_v_sMais[3],	"id")	+ "</TD>"
	td_l[4]= "<TD ALIGN=right>" + formataTsId_am(nr_v_ilApo[3], "id")	+ "</TD>"
	td_l[5]= "<TD ALIGN=right>" + formataTsId_am(nr_v_cIdad[3], "id")	+ "</TD>"
	td_l[6]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idCon[3], "id")	+ "</TD>"
	td_l[7]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idSub[3], "id")	+ "</TD>"
	//td_l[8]= "<TD ALIGN=right>" + formataTsId_am(nr_v_idFal[3], "id")	+ "</TD>"
	td_l[8]= "<TD ALIGN=right>" + nr_v_idFal[3]							+ "a</TD>"
	td_l[9]= "<TD ALIGN=right>" + formatNumEuro(nr_v_penal[3], 1, 1)	+ "%</TD>"	
	

	var haQPenalizacoes =""
	var strColSpan=3
	var str_return=""
	q_b_penalizTB = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_penaliz =""
	
	for (i=0; i < td_lb.length;i++){
		q_b_penaliz+= "<TR>"+ td_lb[i]
																				//||
		if ((q == "a6")||(q == "a9")||(q == "a10")||(q == "b1")||(q == "b5")||(q == "c1")||(q == "c2")){
			q_b_penaliz+= td_t[i] + td_n[i]
			haQPenalizacoes="ok"
			strColSpan = 4
		}
	
		if ((q == "a3")||(q == "b14")||(q == "c6")||(q == "c7")){ // c7 inicialmente  tinha a(nova e limite)
			q_b_penaliz+= td_t[i]
			haQPenalizacoes="ok"
		}
		if ((q == "a4")||(q == "b15")){
			q_b_penaliz+= td_t[i] + td_n[i] + td_l[i]
			haQPenalizacoes="ok"
			strColSpan = 5
		}
		q_b_penaliz+= "</TR>"
	}	
	
	
	if (ts_2005 >= 36){
		q_b_penaliz = ""
		if(ano_ap >=2015){
			nr_s_cIdad =" <B>E</B>. Crédito na idade </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>C</b>:<b>3</b></SPAN>"
			td_lb[5]= "<TD COLSPAN=1>"+ nr_s_cIdad	+"</TD>"
			for (i=0; i < td_lb.length;i++){
				q_b_penaliz+= "<TR>"+ td_lb[i] + td_t[i]+ "</TR>"
			}
		}else{
			for (i=0; i < td_lb.length;i++){
				q_b_penaliz+= "<TR>"+ td_lb[i] + td_t[i] + td_n[i] + td_l[i] + "</TR>"
			}
		}
		haQPenalizacoes="ok"
		strColSpan = 5
	}
	
	if (ts_2005 < 36){ // não salvaguarda de direitos de 2005 
		q_b_penaliz=""
		if(ano_ap >=2015){
			for (i=0; i < td_lb.length;i++){
				q_b_penaliz+= "<TR>"+ td_lb[i] + td_f[i] + "</TR>"	
			}
			strColSpan = 3
			haQPenalizacoes="ok"
			
		}else{
			for (i=0; i < td_lb.length;i++){
				q_b_penaliz+= "<TR>"+ td_lb[i] + td_t[i] + td_n[i] + td_l[i] + "</TR>"	///nona
			}
			strColSpan = 5														
			haQPenalizacoes="ok"
		}
	}
	
	q_b_penaliz+= "</TABLE>"
	q_b_penalizTH = "<TR><TH COLSPAN="+ strColSpan +" ALIGN=CENTER>"+ nr_t_penaliz +"</TH></TR>"
	
	str_return = q_b_penalizTB + q_b_penalizTH + q_b_penaliz
	
	gPenalizacao="sim"
	if (ts_2005 >= 36){
		if(ano_ap >=2015){
			if (nr_v_penal[0]==0){gPenalizacao=""}
		}else{
			if ((nr_v_penal[0]==0)||(nr_v_penal[1]==0)){gPenalizacao=""}
		}
	}else{
		if(ano_ap >=2015){
			if (nr_v_penal[2]==0){gPenalizacao=""}
		}else{
			if ((nr_v_penal[0]==0)||(nr_v_penal[1]==0)){gPenalizacao=""}
		}
	}
		
	if (haQPenalizacoes == ""){str_return = ""}
	return str_return;
	
}


function q_bonificacao(nb_dt1v, ts_ap, idTC, dt_ap){
	//alert("nb_dt1v: "+nb_dt1v)
	gRunBonificacao = "ok"
	var dt1v = dt_ap
	var txB_Atotal	= 0
	var txB_VNAtotal= 0
	var ano_ap = dt_ap.substr(0,4)
	var arrSplit = nb_dt1v.split(";")
	gnB_A	= arrSplit[0]
	gnB_VNA	= arrSplit[1]
	dt1v	= arrSplit[2]
	///////////////////////////// xxxxxxx /////////////////////
	var ano1v = dt1v.substr(0,4)
	var mes1v = dt1v.substr(5,2)
	var ano1v_meses = (ano1v*12) + parseInt(mes1v,10)
	var anoVNA=""
	if (ano1v <=2008){
		ano1v = 2008
		ano1v_meses = ano1v*12
	}
	
	if (gnB_A > 0){
		ano1v_meses = ano1v_meses + parseInt(gnB_A,10)
	}else{
		if (gnB_VNA > 0){ano1v_meses = ano1v *12}
	}
	ano1v = parseInt(ano1v_meses/12,10)
		
	var id_legal = getIdadeTempoRBAnAA(ano1v,"iv")
	///////////////////////////////////////////////////////////
	ghaBonifccs=""
	if ((gnB_A > 0) ||(gnB_VNA > 0)) {ghaBonifccs ="ok"}
	gtxBonif_VNA = getTxBonificacao(ts_ap, ano_ap)
	
	var txB_Atotal	= gnB_A * gtxBonif_A
	var txB_VNAtotal= gnB_VNA * gtxBonif_VNA	
	gtxBGlobal= parseFloat(txB_Atotal) + parseFloat(txB_VNAtotal)
			
	var t_bonificacao="Bonificação"
	var s_dt_psPenaliz="<B>A1</B>. Pensão sem penalizações"
	var s_dt_aposentac="<B>A2</B>. Aposentação"
	var s_cMensais=" Créditos "
	
	
	var s_m65anos="<B>A3</B>. Meses de serviço até aos "+parseInt(id_legal,10)+" anos"
	var s_M65anos="<B>A4</B>. Meses de serviço após os "+parseInt(id_legal,10)+" anos"
	if (id_legal%1>0){
		var v_meses = Math.round((id_legal%1)*12)
		s_m65anos="<B>A3</B>. Meses de serviço até aos "+parseInt(id_legal,10)+" anos e "+ v_meses + " meses"
		s_M65anos="<B>A4</B>. Meses de serviço após os "+parseInt(id_legal,10)+" anos e "+ v_meses + " meses"
	}
		
	var s_bonific="<B>A5</B>. Bonificação </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>A3</b>x"+ formatNumEuro(gtxBonif_A,2,1)+"%+<b>A4</b>x"+formatNumEuro(gtxBonif_VNA,2,1)+"%</SPAN>"
		
	q_b_bonificacao = "<TABLE ALIGN=LEFT WIDTH='100%' cellspacing=0 STYLE=border-collapse:collapse;border:1px>"
	q_b_bonificacao+= "<TR><TH COLSPAN=3>"+ t_bonificacao	+"</TH></TR>"
	if (dt1v == "2007-12"){
		q_b_bonificacao+= "<TR><TD COLSPAN=2>"+ s_dt_psPenaliz	+"</TD><TD ALIGN=right>até " + formataAnoMes(dt1v) + "</TD></TR>"
	}else{
		q_b_bonificacao+= "<TR><TD COLSPAN=2>"+ s_dt_psPenaliz	+"</TD><TD ALIGN=right>" + formataAnoMes(dt1v) + "</TD></TR>"
	}
	q_b_bonificacao+= "<TR><TD COLSPAN=2>"+ s_dt_aposentac	+"</TD><TD ALIGN=right>" + formataAnoMes(dt_ap) + "</TD></TR>"
	q_b_bonificacao+= "<TR><TD ROWSPAN=2 ALIGN=CENTER>"+ s_cMensais		+"</TD>"
		q_b_bonificacao+= "<TD ROWSPAN=1>"+ s_m65anos		+"</TD><TD ALIGN=right>" + gnB_A + "</TD></TR>"
		q_b_bonificacao+= "<TR><TD COLSPAN=1>"+ s_M65anos	+"</TD><TD ALIGN=right>" + gnB_VNA + "</TD></TR>"
	q_b_bonificacao+= "<TR><TD COLSPAN=1>"+ s_bonific		+"</TD><TD ALIGN=right>" + formatNumEuro(gtxBGlobal,2,1) + "%</TD></TR>"
	q_b_bonificacao+= "</TABLE>"
	if (ghaBonifccs == ""){q_b_bonificacao = ""}
	return q_b_bonificacao;
}
 
function q_regCalculo(q, r, R, N, RRan, Pan, PIan, RRno, Pno, PIno, P, PI, P1, P2, C1, C2, C, FS,  pCNP, tipoPensao, ano_ap, rAplicavel, sDireitos, tProporcional){
	
	var rCalculo = r
	var nr_s_r	=	" <B>R</B>. Última remuneração mensal"
	var nr_s_p1 =	" <B>P1</B>. Pensão calculada segundo o regime antigo"
	var nr_s_p2 =	" <B>P2</B>. Pensão calculada segundo o regime novo"
	var nr_s_c1 =	" <B>C1</B>. Tempo de serviço até 2006-12-31"
	var nr_s_c2 =	" <B>C2</B>. Tempo de serviço após 2006-12-31"
	var nr_s_c  =	" <B>C</B>. Tempo de serviço total</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>C1</b>+<b>C2</b></SPAN>"
	var nr_s_fs =	" <B>FS</B>. Factor de sustentabilidade"
	var nr_s_vp =	" Valor da pensão"
	var nr_s_pI =	" <B>P</B>Pensão Inicial"
	var nr_s_pF =	" <B>P</B>Pensão Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>"
	var nr_s_pA =	" Pensão a atribuir"
	
	var nr_v_r  = R
	var nr_v_p1 = P1
	var nr_v_p2 = P2
	var nr_v_c1 = C1
	var nr_v_c2 = C2
	var nr_v_c  = C
	var nr_v_fs = FS.replace(".", ",")
	var nr_v_pI = P
	var nr_v_pF = P
	var nr_v_pA = P
	
	var nr_s_pu0 =	" <B>PU0</B> Ideal inicial"
	var nr_s_pu1 =	" <B>PU1</B> Ideal " 
	var nr_s_pu2 =	" <B>PU2</B> do CNP"
	var nr_s_pu3 =	" <B>PU3</B> Acréscimo do CNP </TD><TD ALIGN=RIGHT>"+ioSpan+"(<b>PU1</b>-(<b>P</b>+<b>PU2</b>)):<b>2</b></SPAN>"
	var nr_s_pu4 =	" <B>PU4</B> Global unificada </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>PU2</b>+<b>PU3</b></SPAN>"
	//////////////// recurso  /////////////////
	var nr_v_xpI	= parseFloat(P)
	var nr_v_xpIan	= parseFloat(Pan)
	var nr_v_xpIno	= parseFloat(Pno)
	//////////////////////////////////////////
	var nr_v_pI		= parseFloat(P)
	var nr_v_pu0	= parseFloat(PI)
	var nr_v_pu1	= parseFloat(PI)
	var nr_v_pu2	= parseFloat(pCNP)
	
	
	var nr_v_pu3 = (nr_v_pu1 - (parseFloat(nr_v_pI) + parseFloat(nr_v_pu2)))/2
	if (nr_v_pu3 < 0){nr_v_pu3 = 0}
	var nr_v_pu4 = nr_v_pI + nr_v_pu2 + nr_v_pu3
	
	//////////////////////////////////// SS ANTIGO ou SS NOVO ////////////////////////////////////////////////////
	
	
	var nr_s_rr		= " <B>RR</B>. Remuneração média mensal de toda a carreira"
	var nr_s_tafp	= " <B>TAFP</B>. Taxa anual de formação da pensão"
	var nr_s_tst	= " <B>N</B>. Tempo de serviço total"
	
	var nr_s_pIan	= " <B>P</B>. Pensão inicial"
	var nr_s_pFan	= " <B>P</B>. Pensão final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-(<b>P</b>x<b>I</b>)</SPAN>"
	var nr_s_pAan	= " Pensão a atribuir"
	
	var nr_s_pIno	= " <B>P</B>. Pensão inicial"
	var nr_s_pFno	= " <B>P</B>. Pensão final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-(<b>P</b>x<b>I</b>)</SPAN>"
	var nr_s_pAno	= " Pensão a atribuir"
	
	var nr_s_pu0an =	" <B>PU0</B>. Ideal inicial" 
	var nr_s_pu1an =	" <B>PU1</B>. Ideal " 
	var nr_s_pu2an =	" <B>PU2</B>. do CNP"
	var nr_s_pu3an =	" <B>PU3</B>. Acréscimo do CNP </TD><TD ALIGN=RIGHT>"+ioSpan+"(<b>PU1</b>-(<b>P</b> + <b>PU2</b>)):<b>2</b></SPAN>"
	var nr_s_pu4an =	" <B>PU4</B>. Global unificada </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>PU2</b>+<b>PU3</b></SPAN>"
	
	
	var nr_s_pu0no =	" <B>PU0</B>. Ideal inicial" 
	var nr_s_pu1no =	" <B>PU1</B>. Ideal " 
	var nr_s_pu2no =	" <B>PU2</B>. do CNP"
	var nr_s_pu3no =	" <B>PU3</B>. Acréscimo do CNP </TD><TD ALIGN=RIGHT>"+ioSpan+"(<b>PU1</b>-(<b>P</b> + <b>PU2</b>)):<b>2</b></SPAN>"
	var nr_s_pu4no =	" <B>PU4</B>. Global unificada </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>PU2</b>+<b>PU3</b></SPAN>"
	
	
	var nr_v_tafp	= "2%"
	var nr_v_tst	= N
	var nr_v_RRan	= RRan
	var nr_v_pIan	= Pan
	var nr_v_pFan	= Pan
	var nr_v_pAan	= Pan
	
	var nr_v_RRno	= RRno
	var nr_v_pIno	= Pno
	var nr_v_pFno	= Pno
	var nr_v_pAno	= Pno
	
	var nr_v_pIan	= parseFloat(Pan)
	var nr_v_pu0an	= parseFloat(PIan)
	var nr_v_pu1an	= parseFloat(PIan)
	var nr_v_pu2an	= parseFloat(pCNP)
	
	var nr_v_pIno	= parseFloat(Pno)
	var nr_v_pu0no	= parseFloat(PIno)
	var nr_v_pu1no	= parseFloat(PIno)
	var nr_v_pu2no	= parseFloat(pCNP)
	
	var nr_v_pu3an = (nr_v_pu1an - (parseFloat(nr_v_pIan) + parseFloat(nr_v_pu2an)))/2
	if (nr_v_pu3an < 0){nr_v_pu3an = 0}
	var nr_v_pu4an = nr_v_pIan + nr_v_pu2an + nr_v_pu3an
	
	var nr_v_pu3no = (nr_v_pu1no - (parseFloat(nr_v_pIno) + parseFloat(nr_v_pu2no)))/2
	if (nr_v_pu3no < 0){nr_v_pu3no = 0}
	var nr_v_pu4no = nr_v_pIno + nr_v_pu2no + nr_v_pu3no
	
	var tit_QFCan = ""
	var tit_QFCno = ""
	var tit_QFCpr = ""
	var fca_QFCan = ""
	var fca_QFCno = ""
	var fca_QFCpr = ""
	var fSustent = ""
	var tip_calc = ""
	
		
	fca_QFCpr = "<b>P</b> = ([(<b>P1</b> x <b>C1</b>) + (<b>P2</b> x <b>C2</b>)] : <b>C</b>) x <b>FS</b>"
	fca_QFCan = "<b>P</b> = (<b>RR</b> x <b>2%</b> x <b>N</b>) x <b>FS</b>"
	fca_QFCno = "<b>P</b> = (<b>RR</b> x <b>TAFP</b> x <b>N</b>) x <b>FS</b>"
	fSustent = "ok"
	if (sDireitos == "ok"){
		fca_QFCpr = "<b>P</b> = [(<b>P1</b> x <b>C1</b>) + (<b>P2</b> x <b>C2</b>)] : <b>C</b>"
		fca_QFCan = "<b>P</b> = <b>RR</b> x <b>2%</b> x <b>N</b>"
		fca_QFCno = "<b>P</b> = <b>RR</b> x <b>TAFP</b> x <b>N</b>"
		fSustent = ""
	}
	if (tProporcional == "20012"){
		nr_s_c1  = " <B>C1</B>. Tempo de serviço até 2001-12-31"
		nr_s_c2  = " <B>C2</B>. Tempo de serviço após 2001-12-31"
	}
	
	nr_s_pA		= " Valor da pensão a atribuir "
	nr_s_pAan	= " Valor da pensão a atribuir "
	nr_s_pAno	= " Valor da pensão a atribuir "
	gLim90R		= ""
	gLim90Ran	= ""
	gLim90Rno	= ""
	var haPenalizacao =""
	if (tipoPensao == "unificada"){
		nr_s_vp =	" Valor<BR>da<BR>pensão"
		nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
		nr_s_pu1	="<TD COLSPAN=2><B>PU1</B>. Ideal</TD>" 
		
		nr_s_pIan	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pu1an	="<TD COLSPAN=2><B>PU1</B>. Ideal</TD>" 
		
		nr_s_pIno	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pu1no	="<TD COLSPAN=2><B>PU1</B>. Ideal</TD>" 
		
		if (gRunPenalizacao == "ok"){
			if (!document.getElementById("incapaz").checked){
				if (nr_v_penal[0] > 0){//modalidade tradicional(antiga)
					nr_v_pIan	= nr_v_pIan - (nr_v_pIan * nr_v_penal[0]/100)
					nr_v_pu1an	= nr_v_pu1an - (nr_v_pu1an * nr_v_penal[0]/100)
					
					nr_v_pIno	= nr_v_pIno - (nr_v_pIno * nr_v_penal[0]/100)
					nr_v_pu1no	= nr_v_pu1no - (nr_v_pu1no * nr_v_penal[0]/100)
					
					nr_v_pI		= nr_v_pI - (nr_v_pI * nr_v_penal[1]/100)
					nr_v_pu1	= nr_v_pu1 - (nr_v_pu1 * nr_v_penal[0]/100)
					haPenalizacao = "ok"
				}
				if (nr_v_penal[1] > 0){//modalidade nova
					if (nr_v_penal[1] < nr_v_penal[1]){
						nr_v_pIan	= nr_v_pIan - (nr_v_pIan * nr_v_penal[0]/100)
						nr_v_pu1an	= nr_v_pu1an - (nr_v_pu1an * nr_v_penal[0]/100)
						
						nr_v_pIno	= nr_v_pIno - (nr_v_pIno * nr_v_penal[0]/100)
						nr_v_pu1no	= nr_v_pu1no - (nr_v_pu1no * nr_v_penal[0]/100)
						
						nr_v_pI		= nr_v_pI - (nr_v_pI * nr_v_penal[1]/100)
						nr_v_pu1	= nr_v_pu1 - (nr_v_pu1 * nr_v_penal[0]/100)
						haPenalizacao = "ok"
					}
				}
				
				if ((q == "a7")||(q == "b2")||(q == "b3")||(q == "b4")||(q == "c1")){ //futura -1/2
					if (nr_v_penal[2] > 0){
						nr_v_pIno	= nr_v_pIno - (nr_v_pIno * nr_v_penal[2]/100)
						nr_v_pu1no	= nr_v_pu1no - (nr_v_pu1no * nr_v_penal[2]/100)
						haPenalizacao="ok"
					}
				}
				nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"(<b>P</b>+<b>P</b>x<b>I</b>)</SPAN></TD>"
				nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
				nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b></SPAN></TD>" 
				
				nr_s_pIan	="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pu0an	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1an	="<TD COLSPAN=1><B>PU1</B>. Ideal final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b></SPAN></TD>"  
				
				nr_s_pIno	="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pu0no	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1no	="<TD COLSPAN=1><B>PU1</B>. Ideal final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b></SPAN></TD>"  
			}
		}

		if (ghaBonifccs == "ok"){
			var strHTML_L90R	= ""
			var strHTML_L90Ran	= ""
			var strHTML_L90Rno	= ""
			var strHTML_L90RU	= ""
			var strHTML_L90RUan	= ""
			var strHTML_L90RUno	= ""
			nr_v_pI		= nr_v_pI + (nr_v_pI * gtxBGlobal / 100)
			nr_v_pu1	= nr_v_pu1 + (nr_v_pu1 * gtxBGlobal / 100)
			
			nr_v_pIan	= nr_v_pIan + (nr_v_pIan * gtxBGlobal / 100)
			nr_v_pu1an	= nr_v_pu1an + (nr_v_pu1an * gtxBGlobal / 100)
			
			nr_v_pIno	= nr_v_pIno + (nr_v_pIno * gtxBGlobal / 100)
			nr_v_pu1no	= nr_v_pu1no + (nr_v_pu1no * gtxBGlobal / 100)
					
			var P_L90 = R * 0.9
			if(nr_v_pI > P_L90){
				strHTML_L90R = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pI = P_L90
				gLim90R = "ok"
			}
			if(nr_v_pIan > P_L90){
				strHTML_L90Ran = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pIan = P_L90
				gLim90Ran = "ok"
			}
			if(nr_v_pIno > P_L90){
				strHTML_L90Rno = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pIno = P_L90
				gLim90Rno = "ok"
			}
			
			if(nr_v_pu1 > P_L90){
				strHTML_L90RU = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pu1 = P_L90
			}
			if(nr_v_pu1an > P_L90){
				strHTML_L90RUan = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pu1an = P_L90
			}
			if(nr_v_pu1no > P_L90){
				strHTML_L90RUno = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pu1no = P_L90
			}
	
			nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
			nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RU+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>A5</b></SPAN></TD>" 
			
			nr_s_pIan	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90Ran+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			nr_s_pu0an	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
			nr_s_pu1an	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RUan+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>A5</b></SPAN></TD>"  
			
			nr_s_pIno	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90Rno+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			nr_s_pu0no	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
			nr_s_pu1no	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RUno+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>A5</b></SPAN></TD>"  
			
			if (haPenalizacao == "ok"){
				nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+"</TD><TD ALIGN=RIGHT><SMALL>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></SMALL></TD>"
				nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
				nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RU+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b>+<b>PU0</b>x<b>A5</b></SPAN></TD>" 
				
				nr_s_pIan	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90Ran+"</TD><TD ALIGN=RIGHT><SMALL>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></SMALL></TD>"
				nr_s_pu0an	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1an	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RUan+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b>+<b>PU0</b>x<b>A5</b></SPAN></TD>" 
				
				nr_s_pIno	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90Rno+"</TD><TD ALIGN=RIGHT><SMALL>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></SMALL></TD>"
				nr_s_pu0no	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1no	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90RUno+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b>+<b>PU0</b>x<b>A5</b></SPAN></TD>" 
			}
		}
		///////////////////////////// PENSÃO MÍNIMA quando unificada ////////////////////////////////
		var nr_s_pIMin = ""
		var nr_s_pIanMin = ""
		var nr_s_pInoMin = ""
		var v_pMinima = checkGetPensaoMinima()
		if ((v_pMinima > nr_v_pI)&&(nr_v_pI > 0)){
			nr_s_pIMin		= "ok"
			nr_v_pI			= vPminima
		}
		if ((vPminima > nr_v_pIan)&&(nr_v_pIan > 0)){
			nr_s_pIanMin	= "ok"
			nr_v_pIan		= vPminima
		}
		if ((vPminima > nr_v_pIno)&&(nr_v_pIno > 0)){
			nr_s_pInoMin	= "ok"
			nr_v_pIno		= vPminima
		}
		////////////////////////////////////////////////////////////
		
		nr_v_pu3 = (nr_v_pu1 - (parseFloat(nr_v_pI) + parseFloat(nr_v_pu2)))/2
		if (nr_v_pu3 < 0){nr_v_pu3 = 0}
		nr_v_pu4 = parseFloat(nr_v_pI) + parseFloat(nr_v_pu2) + parseFloat(nr_v_pu3)
		
		nr_v_pu3an = (nr_v_pu1an - (parseFloat(nr_v_pIan) + parseFloat(nr_v_pu2an)))/2
		if (nr_v_pu3an < 0){nr_v_pu3an = 0}
		nr_v_pu4an = parseFloat(nr_v_pIan) + parseFloat(nr_v_pu2an) + parseFloat(nr_v_pu3an)
		
		nr_v_pu3no = (nr_v_pu1no - (parseFloat(nr_v_pIno) + parseFloat(nr_v_pu2no)))/2
		if (nr_v_pu3no < 0){nr_v_pu3no = 0}
		nr_v_pu4no = parseFloat(nr_v_pIno) + parseFloat(nr_v_pu2no) + parseFloat(nr_v_pu3no)
		
		nr_v_pA  = nr_v_pu4
		nr_v_pAan = nr_v_pu4an
		nr_v_pAno = nr_v_pu4no

	}
	
	if (tipoPensao != "unificada"){
		nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P1</b>+<b>P2</b></SPAN></TD>"
		nr_s_pF		="<TD COLSPAN=2>Final</TD>"
		
		nr_s_pIan	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pFan	="<TD COLSPAN=2>Final</TD>"
		
		nr_s_pIno	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pFno	="<TD COLSPAN=2>Final</TD>"
				
		nr_v_pF		= nr_v_pI
		nr_v_pFan	= nr_v_pIan
		nr_v_pFno	= nr_v_pIno
		
		
		if (gRunPenalizacao == "ok"){
			if (!document.getElementById("incapaz").checked){
				nr_v_pF = nr_v_pI -(nr_v_pI * nr_v_penal[0]/100)
				nr_v_pFan = nr_v_pIan - (nr_v_pIan * nr_v_penal[0]/100)
				nr_v_pFno = nr_v_pIno - (nr_v_pIno * nr_v_penal[0]/100)
				if (nr_v_penal[1] < nr_v_penal[0]){ //nova < antiga
					nr_v_pF = nr_v_pI -(nr_v_pI * nr_v_penal[1]/100)
					nr_v_pFan = nr_v_pIan - (nr_v_pIan * nr_v_penal[1]/100)
					nr_v_pFno = nr_v_pIno - (nr_v_pIno * nr_v_penal[1]/100)
				}
				if ((nr_v_penal[0] > 0)||(nr_v_penal[1] > 0)){haPenalizacao = "ok"}
				
				if ((q == "a7")||(q == "b2")||(q == "b3")||(q == "b4")||(q == "c1")){ //futura -1/2
					if (nr_v_penal[2] > 0){	
						nr_v_pFno = nr_v_pIno - (nr_v_pIno * nr_v_penal[2]/100)
						haPenalizacao = "ok"
					}
				}
				nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pFan	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pFno	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				
			}
		}
		nr_v_pA		= nr_v_pF
		nr_v_pAan	= nr_v_pFan
		nr_v_pAno	= nr_v_pFno
		
		if (ghaBonifccs == "ok"){
			nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			nr_s_pIan	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
			nr_s_pFan	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			
			nr_s_pIno	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
			nr_s_pFno	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"

			if (haPenalizacao=="ok"){
				nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
				nr_s_pFan	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
				nr_s_pFno	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			}
			
			nr_v_pF		= nr_v_pF + (nr_v_pF * gtxBGlobal / 100)
			nr_v_pFan	= nr_v_pFan + (nr_v_pFan * gtxBGlobal / 100)
			nr_v_pFno	= nr_v_pFno + (nr_v_pFno * gtxBGlobal / 100)
						
			nr_v_pA  = nr_v_pF
			nr_v_pAan = nr_v_pFan
			nr_v_pAno = nr_v_pFno
			
			var P_L90 = R * 0.9
			if (nr_v_pF > P_L90){
				if (P_L90 < nr_v_pI){
					nr_v_pA = nr_v_pI
				}else{
					nr_s_pA = " Valor da pensão a atribuir <SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
					nr_v_pA = P_L90
					gLim90R = "ok"
				}
			}
			if (nr_v_pFan > P_L90){
				if (P_L90 < nr_v_pIan){
					nr_v_pAan = nr_v_pIan
				}else{
					nr_s_pAan = " Valor da pensão a atribuir <SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
					nr_v_pAan = P_L90
					gLim90Ran = "ok"
				}
			}
			if (nr_v_pFno > P_L90){
				if (P_L90 < nr_v_pIno){
					nr_v_pAno = nr_v_pIno
				}else{
					nr_s_pAno = " Valor da pensão a atribuir <SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
					nr_v_pAno = P_L90
					gLim90Rno = "ok"
				}
			}
		}
		///////////////////////////// PENSÃO MÍNIMA ////////////////////////////////
		var v_pMinima = checkGetPensaoMinima()
		if ((v_pMinima > nr_v_pA)&&(nr_v_pA > 0)){
			nr_s_pA		= " Valor da pensão a atribuir <SUP><B CLASS=azul>mínima</B></SUP>"
			nr_v_pA		= vPminima
		}
		if ((vPminima > nr_v_pAan)&&(nr_v_pAan > 0)){
			nr_s_pAan	= " Valor da pensão a atribuir <SUP><B CLASS=azul>mínima</B></SUP>"
			nr_v_pAan	= vPminima
		}
		if ((vPminima > nr_v_pAno)&&(nr_v_pAno > 0)){
			nr_s_pAno	= " Valor da pensão a atribuir <SUP><B CLASS=azul>mínima</B></SUP>"
			nr_v_pAno	= vPminima
		}
		///////////////////////////// PENSÃO MÍNIMA////////////////////////////////
	}
	
	
	var nr_s_pAtribuir = nr_s_pAno
	var nr_v_pAtribuir = nr_v_pAno
	if (rAplicavel == "pan"){
		var str = ""
		var maxStr = ""
		var maxVal = 0
		var arrValoresAtribuir = new Array()
		arrValoresAtribuir[0] = nr_v_pAan
		arrValoresAtribuir[1] = nr_v_pAno
		arrValoresAtribuir[2] = nr_v_pA
		var arrStringsAtribuir = new Array()
		arrStringsAtribuir[0] = nr_v_pAan+";"+nr_s_pAan
		arrStringsAtribuir[1] = nr_v_pAno+";"+nr_s_pAno
		arrStringsAtribuir[2] = nr_v_pA+";"+nr_s_pA
		

		arrValoresAtribuir_sort= arrValoresAtribuir.sort(function(a,b){return b - a;});
		maxVal = arrValoresAtribuir_sort[0]
		
		for(i=0; i<arrStringsAtribuir.length;i++){
			if (arrStringsAtribuir[i].search(maxVal)>=0){
				str = arrStringsAtribuir[i]
				break;
			}
		}
		if (str != ""){maxStr = str.split(";")}
		if (maxStr[1] != ""){nr_s_pAtribuir = maxStr[1]}
		if (maxVal > 0) {nr_v_pAtribuir = maxVal}
	}
	if (rAplicavel == "pa"){
		nr_s_pAtribuir = nr_s_pA
		nr_v_pAtribuir = nr_v_pA
		if (nr_v_pAan > nr_v_pA){
			nr_s_pAtribuir = nr_s_pAan
			nr_v_pAtribuir = nr_v_pAan
		}
	}
	if (rAplicavel == "pn"){
		nr_s_pAtribuir = nr_s_pA
		nr_v_pAtribuir = nr_v_pA
		if (nr_v_pAno > nr_v_pA){
			nr_s_pAtribuir = nr_s_pAno
			nr_v_pAtribuir = nr_v_pAno
		}
	}
	if (rAplicavel == "p"){
		nr_s_pAtribuir = nr_s_pA
		nr_v_pAtribuir = nr_v_pA
	}
	if (rAplicavel == "an"){
		nr_s_pAtribuir = nr_s_pAan
		nr_v_pAtribuir = nr_v_pAan
		if (nr_v_pAno > nr_v_pAan){
			nr_s_pAtribuir = nr_s_pAno
			nr_v_pAtribuir = nr_v_pAno
		}
	}
	if (rAplicavel == "a"){
		nr_s_pAtribuir = nr_s_pAan
		nr_v_pAtribuir = nr_v_pAan
	}

	tit_QFCan = "Cálculo da pensão"
	tit_QFCno = "Cálculo da pensão"
	tit_QFCpr = "Cálculo da pensão"
	
	var lblPenaliz = ""
	var lblBonific = ""
	if (gRunPenalizacao == "ok"){lblPenaliz = "<b>P</b>-<b>P</b>x<b>I</b>"}
	if (gRunPenalizacao == "ok"){
		if (ghaBonifccs == "ok"){lblBonific = "+<b>P</b>x<b>A5</b>"}
	}else{
		if (ghaBonifccs == "ok"){lblBonific = "<b>P</b>+<b>P</b>x<b>A5</b>"}
	}
	//alert("gRunPenalizacao "+gRunPenalizacao)
	//alert("ghaBonifccs "+ghaBonifccs)
	//alert("rAplicavel "+rAplicavel)
	
	if (rAplicavel.search("a") >= 0){
		var str_ts_minMax = ""
		if (nr_v_tst < 15) {str_ts_minMax = "<SUP><B CLASS=azul> mínimo 15 anos </B></SUP>"}
		if (nr_v_tst > 40) {str_ts_minMax = "<SUP><B CLASS=azul> máximo 40 anos </B></SUP>"}
		 
		nr_s_rr = "<B>RR</B>. Remuneração média mensal <BR>dos melhores 10 dos últimos 15 anos (Anexo I)"
		
		q_b_cAntigo = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
		q_b_cAntigo+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ tit_QFCan	+"</TH></TR>"
		q_b_cAntigo+= "<TR><TD COLSPAN=4 ALIGN=CENTER>"+ fca_QFCan	+"</TD></TR>"

		if (gLim90Ran == "ok"){
			q_b_cAntigo+= "<TR><TD COLSPAN=3>"+ nr_s_r		+"</TD><TD WIDTH='20%'ALIGN=right>" + formatNumEuro(nr_v_r,2,2)	+ "</TD></TR>"
		}
		q_b_cAntigo+= "<TR><TD COLSPAN=3>"+ nr_s_rr		+"</TD><TD WIDTH='20%'ALIGN=right>" + formatNumEuro(nr_v_RRan,2,2)	+ "</TD></TR>"
		q_b_cAntigo+= "<TR><TD COLSPAN=3>"+ nr_s_tst + str_ts_minMax +"</TD><TD ALIGN=right>"			+ formatNumEuro(nr_v_tst,1,1)	+ "</TD></TR>"

		if (tipoPensao == "unificada"){
			nr_s_pIan = "<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
			q_b_cAntigo+= "<TR><TD ROWSPAN=7 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
			if ((gRunPenalizacao != "ok")&&(ghaBonifccs != "ok")){
				nr_v_xpIan = nr_v_pIan
				if (nr_s_pIanMin == "ok"){nr_s_pIan = "<TD COLSPAN=2><B>P</B>. Inicial <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
			}
			q_b_cAntigo+= nr_s_pIan	+"<TD ALIGN=right>" + formatNumEuro(nr_v_xpIan,2,2) + "</TD></TR>"
			
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				nr_s_pIan ="<TD COLSPAN=1><B>P</B>. Final </TD><TD ALIGN=RIGHT>"+ioSpan + lblPenaliz + lblBonific+"</SPAN></TD>"
				if (nr_s_pIanMin == "ok"){nr_s_pIan = "<TD COLSPAN=2><B>P</B>. Final <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
				q_b_cAntigo+= nr_s_pIan	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pIan,2,2) + "</TD></TR>"
				q_b_cAntigo+= "<TR>"+ nr_s_pu0an	+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu0an,2,2)	+ "</TD></TR>"
			}
			
			q_b_cAntigo+= "<TR>"+ nr_s_pu1an					+"<TD ALIGN=right>" + formatNumEuro(nr_v_pu1an,2,2)	+ "</TD></TR>"
			q_b_cAntigo+= "<TR><TD COLSPAN=2>"+ nr_s_pu2an	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu2an,2,2)	+ "</TD></TR>"
			q_b_cAntigo+= "<TR><TD COLSPAN=1>"+ nr_s_pu3an	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu3an,2,2)  + "</TD></TR>"
			q_b_cAntigo+= "<TR><TD COLSPAN=1>"+ nr_s_pu4an	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu4an,2,2)	+ "</TD></TR>"
		}else{
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				q_b_cAntigo+= "<TR><TD ROWSPAN=3 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
				q_b_cAntigo+= nr_s_pIan +"<TD ALIGN=right>" + formatNumEuro(nr_v_pIan,2,2) + "</TD></TR>"
				q_b_cAntigo+= "<TR>"+ nr_s_pFan	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFan,2,2) + "</TD></TR>"
			}else{
				nr_s_pFan	="<TD COLSPAN=3><B>P</B>. Valor da pensão </TD>"
				q_b_cAntigo+= "<TR>"+ nr_s_pFan	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFan,2,2) + "</TD></TR>"
			}
		}
		q_b_cAntigo+= "</TABLE>"
	}

	if (rAplicavel.search("n") >= 0){
		var str_ts_minMax = ""
		if (nr_v_tst < 15) {str_ts_minMax = "<SUP><B CLASS=azul> mínimo 15 anos </B></SUP>"}
		if (nr_v_tst > 40) {str_ts_minMax = "<SUP><B CLASS=azul> máximo 40 anos </B></SUP>"}
		nr_s_rr = "<B>RR</B>. Remuneração média mensal de toda a carreira (Anexo II)"
		
		nr_v_tafp = "2,0%"
		if (C > 20){nr_v_tafp = "2,0% a 2,3%"}//se tempo de serviço > 20
		
		q_b_cNovo = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
		q_b_cNovo+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ tit_QFCno		+"</TH></TR>"
		q_b_cNovo+= "<TR><TD COLSPAN=4 ALIGN=CENTER>"+ fca_QFCno		+"</TD></TR>"
		
		if (gLim90Rno == "ok"){
			q_b_cNovo+= "<TR><TD COLSPAN=3>"+ nr_s_r		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_r,2,2)	+ "</TD></TR>"
		}
		q_b_cNovo+= "<TR><TD COLSPAN=3>"+ nr_s_rr		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_RRno,2,2)		+ "</TD></TR>"
		q_b_cNovo+= "<TR><TD COLSPAN=3>"+ nr_s_tafp		+"</TD><TD ALIGN=right>" + nr_v_tafp						+ "</TD></TR>"
		q_b_cNovo+= "<TR><TD COLSPAN=3>"+ nr_s_tst + str_ts_minMax + "</TD><TD ALIGN=right>" + formatNumEuro(nr_v_tst,1,1)		+ "</TD></TR>"
		
		if (fSustent == "ok"){//factor de sustentabilidade
			q_b_cNovo+= "<TR><TD COLSPAN=3>"+ nr_s_fs	+"</TD><TD ALIGN=right>" + nr_v_fs	+ "</TD></TR>"
		}
		
		if (tipoPensao == "unificada"){
			nr_s_pIno = "<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
			q_b_cNovo+= "<TR><TD ROWSPAN=7 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
			if ((gRunPenalizacao != "ok")&&(ghaBonifccs != "ok")){
				nr_v_xpIno = nr_v_pIno
				if (nr_s_pInoMin == "ok"){nr_s_pIno = "<TD COLSPAN=2><B>P</B>. Inicial <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
			}
			q_b_cNovo+= nr_s_pIno	+"<TD ALIGN=right>" + formatNumEuro(nr_v_xpIno,2,2) + "</TD></TR>"
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				nr_s_pIno ="<TD COLSPAN=1><B>P</B>. Final </TD><TD ALIGN=RIGHT>"+ioSpan + lblPenaliz + lblBonific+"</SPAN></TD>"
				if (nr_s_pInoMin == "ok"){nr_s_pIno = "<TD COLSPAN=2><B>P</B>. Final <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
				q_b_cNovo+= nr_s_pIno	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pIno,2,2) + "</TD></TR>"
				q_b_cNovo+= "<TR>"+ nr_s_pu0no	+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu0no,2,2)	+ "</TD></TR>"
			}
			q_b_cNovo+= "<TR>"+ nr_s_pu1no					+"<TD ALIGN=right>" + formatNumEuro(nr_v_pu1no,2,2) + "</TD></TR>"
			q_b_cNovo+= "<TR><TD COLSPAN=2>"+ nr_s_pu2no	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu2no,2,2) + "</TD></TR>"
			q_b_cNovo+= "<TR><TD COLSPAN=1>"+ nr_s_pu3no	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu3no,2,2) + "</TD></TR>"
			q_b_cNovo+= "<TR><TD COLSPAN=1>"+ nr_s_pu4no	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu4no,2,2) + "</TD></TR>"
		}else{
			
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				nr_s_pIno ="<TD COLSPAN=2><B>P</B>. Inicial </TD>"
				q_b_cNovo+= "<TR><TD ROWSPAN=3 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
				q_b_cNovo+= nr_s_pIno +"<TD ALIGN=right>" + formatNumEuro(nr_v_pIno,2,2) + "</TD></TR>"
				q_b_cNovo+= "<TR>"+ nr_s_pFno	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFno,2,2) + "</TD></TR>"
			}else{
				nr_s_pFno	="<TD COLSPAN=3><B>P</B>. Valor da pensão </TD>"
				q_b_cNovo+= "<TR>"+ nr_s_pFno	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFno,2,2) + "</TD></TR>"
			}
		}
		q_b_cNovo+= "</TABLE>"
	}
	
	if (rAplicavel.search("p") >= 0){
		q_b_cProp = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
		q_b_cProp+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ tit_QFCpr		+"</TH></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=4 ALIGN=CENTER>"+ fca_QFCpr		+"</TD></TR>"
		if (gLim90R == "ok"){
			q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_r		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_r,2,2)	+ "</TD></TR>"
		}
		if (gLim12IAS == "ok"){
			nr_s_p1		=" <B>P1</B>. Pensão calculada segundo o regime antigo <b><sup>limitada a 12 IAS</Sup></b>"
		}
		///////////////////////////////////Alterações para o Anexo II ////////////////////////
		var nr_s_rr1	= "<B>RR1</B>. Remuneração média mensal <BR>dos melhores 10 dos últimos 15 anos (Anexo I)"
		var nr_s_rr2	= "<B>RR2</B>. Remuneração média mensal de toda a carreira (Anexo II)"
		
		q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_rr1		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_RRan,2,2)		+ "</TD></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_rr2		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_RRno,2,2)		+ "</TD></TR>"
		
		nr_s_p1	=	" <B>P1</B>. Pensão calculada segundo o regime antigo </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>RR1</b>x<b>2,0%</b>x<b>C</b></SPAN>"
		nr_s_p2 =	" <B>P2</B>. Pensão calculada segundo o regime novo</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>RR2</b>x<b>"+nr_v_tafp+"</b>x<b>C</b></SPAN>"
		
		////////////////////////////////////////////////////////////////
		q_b_cProp+= "<TR><TD COLSPAN=2>"+ nr_s_p1		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_p1,2,2)	+ "</TD></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=2>"+ nr_s_p2		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_p2,2,2)	+ "</TD></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_c1		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_c1,1,1)	+ "</TD></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_c2		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_c2,1,1)	+ "</TD></TR>"
		q_b_cProp+= "<TR><TD COLSPAN=2>"+ nr_s_c		+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_c,1,1)	+ "</TD></TR>"
		if (fSustent == "ok"){//factor de sustentabilidade
			q_b_cProp+= "<TR><TD COLSPAN=3>"+ nr_s_fs	+"</TD><TD ALIGN=right>" + nr_v_fs	+ "</TD></TR>"
		}
		if (tipoPensao == "unificada"){
			nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
			q_b_cProp+= "<TR><TD ROWSPAN=7 ALIGN=CENTER>"+ nr_s_vp	+"</TD>"
			if ((gRunPenalizacao != "ok")&&(ghaBonifccs != "ok")){
				nr_v_xpI = nr_v_pI
				if (nr_s_pIMin == "ok"){nr_s_pI = "<TD COLSPAN=2><B>P</B>. Inicial <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
			}
			q_b_cProp+= nr_s_pI							+"<TD ALIGN=right>" + formatNumEuro(nr_v_xpI,2,2) + "</TD></TR>"
			
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				nr_s_pI		="<TD COLSPAN=1><B>P</B>. Final </TD><TD ALIGN=RIGHT>"+ioSpan + lblPenaliz + lblBonific+"</SPAN></TD>"
				if (nr_s_pIMin == "ok"){nr_s_pI = "<TD COLSPAN=2><B>P</B>. Final <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
				q_b_cProp+= nr_s_pI						+"<TD ALIGN=right>" + formatNumEuro(nr_v_pI,2,2) + "</TD></TR>"
				q_b_cProp+= "<TR>"+ nr_s_pu0			+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu0,2,2)	+ "</TD></TR>"
			}
			
			q_b_cProp+= "<TR>"+ nr_s_pu1				+"<TD ALIGN=right>" + formatNumEuro(nr_v_pu1,2,2) + "</TD></TR>"
			q_b_cProp+= "<TR><TD COLSPAN=2>"+ nr_s_pu2	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu2,2,2) + "</TD></TR>"
			q_b_cProp+= "<TR><TD COLSPAN=1>"+ nr_s_pu3	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu3,2,2)+ "</TD></TR>"
			q_b_cProp+= "<TR><TD COLSPAN=1>"+ nr_s_pu4	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu4,2,2) + "</TD></TR>"
		}else{
			nr_s_pF	=	"<TD COLSPAN=3><B>P</B>. Valor da pensão </TD>"
			if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
				nr_s_pI	=	"<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
				nr_s_pF	=	"<TD COLSPAN=1> final </TD><TD ALIGN=RIGHT>"+ioSpan + lblPenaliz + lblBonific+"</SPAN></TD>"
				q_b_cProp+= "<TR><TD ROWSPAN=3 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
				q_b_cProp+= nr_s_pI							+"<TD ALIGN=right>" + formatNumEuro(nr_v_xpI,2,2) + "</TD></TR>"
			}	
			q_b_cProp+= "<TR>"+ nr_s_pF	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pF,2,2) + "</TD></TR>"
		}
		q_b_cProp+= "</TABLE>"
	}
	
	q_b_cFim = "<BR><TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_cFim+= "<TR><TH ALIGN=RIGHT><B>"+ nr_s_pAtribuir+"</B></TH>"
	q_b_cFim+= "<TH ALIGN=RIGHT WIDTH='"+colWIDTH+"'><B>"+ formatNumEuro(nr_v_pAtribuir,2,2)	+ "</B></TH></TR>"		
	q_b_cFim+= "</TABLE>"
	
	q_b_calculo=""
	if (rAplicavel == "pan"){q_b_calculo=	q_b_cAntigo	+ "<BR>" + q_b_cNovo + "<BR>" + q_b_cProp}
	if (rAplicavel == "pa"){q_b_calculo =	q_b_cAntigo	+ "<BR>" + q_b_cProp}
	if (rAplicavel == "pn"){q_b_calculo =	q_b_cNovo	+ "<BR>" + q_b_cProp}
	if (rAplicavel == "an"){q_b_calculo =	q_b_cAntigo + "<BR>" + q_b_cNovo}
	if (rAplicavel == "p"){q_b_calculo  =	q_b_cProp}
	if (rAplicavel == "a"){q_b_calculo	=	q_b_cAntigo}
	if (rAplicavel == "n"){q_b_calculo	=	q_b_cNovo}
	
	ghaBonifccs =""
	gRunPenalizacao="";
	return q_b_calculo + "|" + q_b_cFim;
}

function q_rCalculo_inscAte1993(q, r, R, RR, T1, T2, C, P, P1, P2, Pa, FS, pIdeal, pIdeal_a, pCNP, tipoPensao, ano_ap){
	haPenalizacao =""
	var rCalculo = r
			
	var nr_s_r		=" <B>R</B>. Última remuneraçao mensal"
	var nr_s_rr		=" <B>RR</B>. Remuneração média mensal após 2005-12-31"
	var nr_s_tafp	=" <B>TAFP</B>. Taxa anual de formação da pensão"
	var nr_s_t1		=" <B>T1</B>. Tempo de serviço até 2005-12-31"
	var nr_s_t2		=" <B>T2</B>. Tempo de serviço após 2005-12-31"
	var nr_s_c		=" <B>C</B>. Carreira completa no ano da aposentação"
	var nr_s_p1		=" <B>P1</B>. Primeira parcela da pensão"
	var nr_s_p2		=" <B>P2</B>. Segunda parcela da pensão"
	var nr_s_fs		=" <B>FS</B>. Factor de sustentabilidade"
	var nr_s_vp		=" Valor da pensão"
	var nr_s_pI		=" <B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P1</b>+<b>P2</b></SPAN>"
	var nr_s_pF		=" Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>"
	var nr_s_pA		=" Valor da pensão a atribuir "
	
	var nr_s_pu0=" <B>PU0</B>. Ideal inicial" 
	var nr_s_pu1=" <B>PU1</B>. Ideal" 
	var nr_s_pu2=" <B>PU2</B>. do CNP"
	var nr_s_pu3=" <B>PU3</B>. Acréscimo do CNP </TD><TD ALIGN=RIGHT>"+ioSpan+"(<b>PU1</b>-(<b>P</b>+<b>PU2</b>)):<b>2</b>"
	var nr_s_pu4=" <B>PU4</B>. Global unificada </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>PU2</b>+<b>PU3</b>"
	
	var nr_s_ra =" <B>R</B>. Última Remuneração mensal"
	var nr_s_t1 =" <B>T1</B>. Tempo de serviço até 2005-12-31"
	var nr_s_pIn =" <B>P</B>. Inicial "
	var nr_s_pFn =" Final  </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>)"
	var nr_s_pAn =" A atribuir"
	
	var nr_v_r  = R
	var nr_v_rr = RR
	var nr_v_tafp ="2%"
	var nr_v_t1 = T1
	var nr_v_t2 = T2
	var nr_v_c  = C
	var nr_v_p1 = P1
	var nr_v_p2 = P2
	var nr_v_fs = FS.replace(".", ",")
	
	//////////////// recurso  /////////////////
	var nr_v_xpI	= parseFloat(P);
	var nr_v_xpIn	= parseFloat(Pa);
	////////////////////////////////
	
	var nr_v_pI = parseFloat(P);
	var nr_v_pIn = parseFloat(Pa);
	var nr_v_pu0 = parseFloat(pIdeal)	
	var nr_v_pu1 = parseFloat(pIdeal);
	var nr_v_pu0n = parseFloat(pIdeal_a);
	var nr_v_pu1n = parseFloat(pIdeal_a);
	
	var nr_v_pF = nr_v_pI
	var nr_v_pA = nr_v_pI
	
	var nr_v_pu2 = parseFloat(pCNP)
	
	var nr_v_pu3 = (nr_v_pu1 - (parseFloat(nr_v_pI) + parseFloat(nr_v_pu2)))/2
	if (nr_v_pu3 < 0){nr_v_pu3 = 0}
	var nr_v_pu4 = nr_v_pI + nr_v_pu2 + nr_v_pu3
			
	var nr_v_ra =  R;
	var nr_v_pFn = nr_v_pIn;
	var nr_v_pAn = nr_v_pIn;
	
	
	var nr_v_pu2n = parseFloat(pCNP)
	var nr_v_pu3n = (nr_v_pu1n - (parseFloat(nr_v_pIn) + parseFloat(nr_v_pu2n)))/2
	if (nr_v_pu3n < 0){nr_v_pu3n = 0}
	var nr_v_pu4n = nr_v_pIn + nr_v_pu2n + nr_v_pu3n
		
		
	var tit_QFC1 = ""
	var fca_QFC1 = ""
	var tit_QFC2 = ""
	var fca_QFC2 = ""
	var fSustent = ""
	var tip_calc = ""
	
	tit_QFC1 = "Formula de cálculo da pensão"
	tit_QFC2 = "Formula de cálculo da pensão"
	
	var lblPenaliz = ""
	var lblBonific = ""
	if (gRunPenalizacao == "ok"){lblPenaliz = "<b>P</b>-<b>P</b>x<b>I</b>"}
	if (gRunPenalizacao == "ok"){
		if (ghaBonifccs == "ok"){lblBonific = "+<b>P</b>x<b>A5</b>"}
	}else{
		if (ghaBonifccs == "ok"){lblBonific = "<b>P</b>+<b>P</b>x<b>A5</b>"}
	}
		
	if (rCalculo == "1"){
		fca_QFC1 = "<b>P</b> = (<b>R</b> x 0,9 x <b>T1</b>):36"
		if ((q=="a1")||(q=="a2")){nr_s_pAn = " Valor da pensão a atribuir "}
	}
		
	if (rCalculo == "2"){
		fca_QFC2 = "<b>P</b> = <b>P1</b> + <b>P2</b>"
		fca_QFC2+= "<BR><b>P1</b> = (<b>R</b> x 0,9 x <b>T1</b>):<b>C</b>&nbsp;&nbsp;&nbsp;&nbsp;<b>P2</b> = (<b>RR</b> x <b>TAFP</b> x <b>T2</b>)"
	}
	
	if (rCalculo == "3"){
		fca_QFC2 = "<b>P</b> = (<b>P1</b> + <b>P2</b>) x <b>FS</b>"
		nr_s_p1 =" <b>P1</b>. Primeira parcela da pensão"
		if (gLim12IAS == "ok"){
			fca_QFC2+= "<BR><b>P1</b> = [(<b>R</b> x 0,9)<b><sup><=12IAS</Sup></b> x <b>T1</b>]:<b>C</b>&nbsp;&nbsp;&nbsp;&nbsp;<b>P2</b> = <b>RR</b> x <b>TAFP</b> x <b>T2</b>"
		}else{
			fca_QFC2+= "<BR><b>P1</b> = (<b>R</b> x 0,9 x <b>T1</b>):<b>C</b>&nbsp;&nbsp;&nbsp;&nbsp;<b>P2</b> = <b>RR</b> x <b>TAFP</b> x <b>T2</b>"
		}
		fSustent = "ok"
	}
	
	if (rCalculo == "4"){
		fca_QFC1 = "<b>P</b> = (<b>R</b> x 0,9 x <b>T1</b>):36"
		fca_QFC2 = "<b>P</b> = <b>P1</b> + <b>P2</b>"
		fca_QFC2+= "<BR><b>P1</b> = (<b>R</b> x 0,9 x <b>T1</b>):<b>C</b>&nbsp;&nbsp;&nbsp;&nbsp;<b>P2</b> = <b>RR</b> x <b>TAFP</b> x <b>T2</b>"
	}
	
	nr_s_pAn = " Valor da pensão a atribuir "
	nr_s_pA  = " Valor da pensão a atribuir "
	var haPenalizacao =""
	if (tipoPensao == "unificada"){
		nr_s_vp =	" Valor<BR>da<BR>pensão"
		nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P1</b>+<b>P2</b></SPAN></TD>"
		nr_s_pIn	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pu1	="<TD COLSPAN=2><B>PU1</B>. Ideal</TD>" 
		nr_s_pu1n	="<TD COLSPAN=2><B>PU1</B>. Ideal</TD>" 
		
		if (gRunPenalizacao == "ok"){
			if (!document.getElementById("incapaz").checked){
				if (nr_v_penal[0] > 0){//antiga
					nr_v_pIn	= nr_v_pIn - (nr_v_pIn * nr_v_penal[0]/100)
					nr_v_pu1n	= nr_v_pu1n - (nr_v_pu1n * nr_v_penal[0]/100)
					haPenalizacao = "ok"
				}
				if (nr_v_penal[1] > 0){//nova
					nr_v_pI		= nr_v_pI - (nr_v_pI * nr_v_penal[1]/100)
					nr_v_pu1	= nr_v_pu1 - (nr_v_pu1 * nr_v_penal[0]/100)
					haPenalizacao = "ok"
				}
				
				if ((q == "a7")||(q == "b2")||(q == "b3")||(q == "b4")||(q == "c1")){ //futura -1/2
					if (nr_v_penal[2] > 0){
						nr_v_pI		= nr_v_pI - (nr_v_pI * nr_v_penal[2]/100)
						nr_v_pu1	= nr_v_pu1 - (nr_v_pu1 * nr_v_penal[0]/100)
						haPenalizacao="ok"
					}
				}
				nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT><SMALL>"+ioSpan+"(<b>P1</b>+<b>P2</b>)-((<b>P1</b>+<b>P2</b>)x<b>I</b>)</SPAN></SMALL></TD>"
				nr_s_pIn	="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
				nr_s_pu0n	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b></SPAN></TD>" 
				nr_s_pu1n	="<TD COLSPAN=1><B>PU1</B>. Ideal final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b></SPAN></TD>"  
			}
		}
	
		if (ghaBonifccs == "ok"){
			var strHTML_L90R = ""
			nr_v_pI		= nr_v_pI + (nr_v_pI * gtxBGlobal / 100)
			nr_v_pIn	= nr_v_pIn + (nr_v_pIn * gtxBGlobal / 100)
			nr_v_pu1	= nr_v_pu1 + (nr_v_pu1 * gtxBGlobal / 100)
			nr_v_pu1n	= nr_v_pu1n + (nr_v_pu1n * gtxBGlobal / 100)
			
			var P_L90 = R * 0.9
			if(nr_v_pI > P_L90){
				strHTML_L90R = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pI = P_L90
			}
			if(nr_v_pIn > P_L90){
				strHTML_L90R = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pIn = P_L90
			}
			if(nr_v_pu1 > P_L90){
				strHTML_L90R = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pu1 = P_L90
			}
			if(nr_v_pu1n > P_L90){
				strHTML_L90R = "<SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
				nr_v_pu1n = P_L90
			}
	
			nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P1</b>+<b>P2</b>+((<b>P1</b>+<b>P2</b>)x<b>A5</b>)</SPAN></TD>"
			nr_s_pIn	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+" "+ioSpan+"<b>P</b>+(<b>P</b>x<b>A5</b>)</SPAN></TD>"
			nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
			nr_s_pu0n	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
			nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>A5</b></SPAN></TD>" 
			nr_s_pu1n	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>A5/b></SPAN></TD>"  
			
			if (haPenalizacao == "ok"){
				nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"(P1+P2)-((P1+P2)xI)+((P1+P2)xA5)</SPAN></TD>"
				nr_s_pIn	="<TD COLSPAN=1><B>P</B>. Inicial "+strHTML_L90R+" "+ioSpan+"P-PxI+PxA5</SPAN></TD>"
				nr_s_pu0	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>"
				nr_s_pu0n	="<TD COLSPAN=2><B>PU0</B>. Ideal inicial</TD>" 
				nr_s_pu1	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b>+<b>PU0</b>x<b>A5</b></SPAN></TD>" 
				nr_s_pu1n	="<TD COLSPAN=1><B>PU1</B>. Ideal final "+strHTML_L90R+"</TD><TD ALIGN=RIGHT>"+ioSpan+"<b>PU0</b>-<b>PU0</b>x<b>I</b>+<b>PU0</b>x<b>A5</b></SPAN></TD>" 
			}
		}
		///////////////////////////// PENSÃO MÍNIMA quando unificada ////////////////////////////////
		var nr_s_pIMin = ""
		var nr_s_pInMin = ""
		var v_pMinima = checkGetPensaoMinima()
		if ((v_pMinima > nr_v_pIn)&&(nr_v_pIn > 0)){
			nr_s_pInMin = "ok"
			nr_v_pIn	= vPminima
			//nr_v_xpIn	= vPminima
		}
		if ((vPminima > nr_v_pI)&&(nr_v_pI > 0)){
			nr_s_pIMin = "ok"
			nr_v_pI	= vPminima
		}
		////////////////////////////////////////////////////////////
		
		nr_v_pu3 = (nr_v_pu1 - (parseFloat(nr_v_pI) + parseFloat(nr_v_pu2)))/2
		if (nr_v_pu3 < 0){nr_v_pu3 = 0}
		nr_v_pu4 = parseFloat(nr_v_pI) + parseFloat(nr_v_pu2) + parseFloat(nr_v_pu3)
		
		nr_v_pu3n = (nr_v_pu1n - (parseFloat(nr_v_pIn) + parseFloat(nr_v_pu2n)))/2
		if (nr_v_pu3n < 0){nr_v_pu3n = 0}
		nr_v_pu4n = parseFloat(nr_v_pIn) + parseFloat(nr_v_pu2n) + parseFloat(nr_v_pu3n)
		
		nr_v_pAn = nr_v_pu4n
		nr_v_pA  = nr_v_pu4
		
	}
	//alert("nr_v_pu4 =" + nr_v_pI +"; "+ nr_v_pu2 +"; "+ nr_v_pu3)
	//alert("nr_v_pu4n =" + nr_v_pIn +"; "+ nr_v_pu2n +"; "+ nr_v_pu3n)
		
	if (tipoPensao != "unificada"){
		nr_s_pI		="<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P1</b>+<b>P2</b></SPAN></TD>"
		nr_s_pIn	="<TD COLSPAN=2><B>P</B>. Inicial</TD>"
		nr_s_pFn	="<TD COLSPAN=2>Final</TD>"
		nr_s_pF		="<TD COLSPAN=2>Final</TD>"
				
		nr_v_pFn = nr_v_pIn
		nr_v_pF  = nr_v_pI
		
		if (gRunPenalizacao == "ok"){
			if (!document.getElementById("incapaz").checked){
				if (nr_v_penal[0] > 0){nr_v_pFn = nr_v_pIn - (nr_v_pIn * nr_v_penal[0]/100)}//antiga
				if (nr_v_penal[1] > 0){nr_v_pF = nr_v_pI -(nr_v_pI * nr_v_penal[1]/100)}//nova
				if ((nr_v_penal[0] > 0)||(nr_v_penal[1] > 0)){haPenalizacao = "ok"}
				
				if ((q == "a7")||(q == "b2")||(q == "b3")||(q == "b4")||(q == "c1")){ //futura -1/2
					if (nr_v_penal[2] > 0){	
						nr_v_pF = nr_v_pI -(nr_v_pI * nr_v_penal[2]/100)
						haPenalizacao = "ok"
					}
				}
				nr_s_pFn	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
				nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b></SPAN></TD>"
			}
		}
		
		nr_v_pAn = nr_v_pFn
		nr_v_pA  = nr_v_pF
		
		if (ghaBonifccs == "ok"){
			nr_s_pFn	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>+<b>P</b>x<b>A5</b></SPAN></TD>"
			if (haPenalizacao=="ok"){
				nr_s_pFn	="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b><SPAN></TD>"
				nr_s_pF		="<TD COLSPAN=1>Final </TD><TD ALIGN=RIGHT>"+ioSpan+"<b>P</b>-<b>P</b>x<b>I</b>+<b>P</b>x<b>A5</b><SPAN></TD>"
			}
			
			nr_v_pFn = nr_v_pFn + (nr_v_pFn * gtxBGlobal / 100)
			nr_v_pF = nr_v_pF + (nr_v_pF * gtxBGlobal / 100)
						
			nr_v_pAn = nr_v_pFn
			nr_v_pA  = nr_v_pF
			
			
			
			var P_L90 = R * 0.9
			if (nr_v_pFn > P_L90){
				if (P_L90 < nr_v_pIn){
					nr_v_pAn = nr_v_pIn
				}else{
					nr_s_pAn = " Valor da pensão a atribuir <SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
					nr_v_pAn = P_L90
				}
			}
			
			if (nr_v_pF > P_L90){
				if (P_L90 < nr_v_pI){
					nr_v_pA = nr_v_pI
				}else{
					nr_s_pA = " Valor da pensão a atribuir <SUP><B CLASS=azul>"+str_L90R+"</B></SUP>"
					nr_v_pA = P_L90
				}
			}
		}
		///////////////////////////// PENSÃO MÍNIMA ////////////////////////////////
		var v_pMinima = checkGetPensaoMinima()
		if ((v_pMinima > nr_v_pAn)&&(nr_v_pAn > 0)){
			nr_s_pAn = " Valor da pensão a atribuir <SUP><B CLASS=azul>mínima</B></SUP>"
			nr_v_pAn= vPminima
		}
		if ((vPminima > nr_v_pA)&&(nr_v_pA > 0)){
			nr_s_pA = " Valor da pensão a atribuir <SUP><B CLASS=azul>mínima</B></SUP>"
			nr_v_pA	= vPminima
		}
		///////////////////////////// PENSÃO MÍNIMA////////////////////////////////
	}
	
	var nr_s_pAtribuir = nr_s_pAn
	var nr_v_pAtribuir = nr_v_pAn
	
	if (rCalculo == 1){
		nr_s_pAtribuir = nr_s_pAn
		nr_v_pAtribuir = nr_v_pAn
	}
	if ((rCalculo == 2)||(rCalculo == 3)){
		nr_s_pAtribuir = nr_s_pA
		nr_v_pAtribuir = nr_v_pA
	}
	if (rCalculo == 4){
		if (nr_v_idCon[1] >= nr_v_idCon[3]){ //se a idade a considerar (modalidade nova) > idade limite
			if (nr_v_pA > nr_v_pAn ){
				nr_s_pAtribuir = nr_s_pA
				nr_v_pAtribuir = nr_v_pA
			}
		}
	}
	tit_QFC1 = "Cálculo da pensão"
	tit_QFC2 = "Cálculo da pensão"
		
	q_b_cga1 = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_cga1+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ tit_QFC1	+"</TH></TR>"
	q_b_cga1+= "<TR><TD COLSPAN=4 ALIGN=CENTER>"+ fca_QFC1	+"</TD></TR>"
	q_b_cga1+= "<TR><TD COLSPAN=3>"+ nr_s_ra	+"</TD><TD WIDTH='20%' ALIGN=right>" + formatNumEuro(nr_v_ra,2,2)+ "</TD></TR>"
	q_b_cga1+= "<TR><TD COLSPAN=3>"+ nr_s_t1	+"</TD><TD WIDTH='20%' ALIGN=right>" + formatNumEuro(nr_v_t1,1,1)+ "</TD></TR>"
	
	//cga1: a1,a2,a3
	//cga1 e cga2: a4
	//cga2: outros
	//alert("Quadro: "+ q)
	//alert("gRunPenalizacao "+gRunPenalizacao)
	//alert("ghaBonifccs "+ghaBonifccs)
	if (tipoPensao == "unificada"){ 
		q_b_cga1+= "<TR><TD ROWSPAN=7 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
		nr_s_pIn = "<TD COLSPAN=1><B>P</B>. Inicial </TD><TD ALIGN=RIGHT></TD>"
		if ((gRunPenalizacao != "ok")&&(ghaBonifccs != "ok")){
			nr_v_xpIn = nr_v_pIn
			if (nr_s_pInMin == "ok"){nr_s_pIn = "<TD COLSPAN=2><B>P</B>. Inicial <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
		}
		q_b_cga1+=  nr_s_pIn						+ "<TD ALIGN=right>" + formatNumEuro(nr_v_xpIn,2,2)	+ "</TD></TR>"
		if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
			nr_s_pIn ="<TD COLSPAN=1><B>P</B>. Final </TD><TD ALIGN=RIGHT>"+ioSpan + lblPenaliz + lblBonific+"</SPAN></TD>"
			if (nr_s_pInMin == "ok"){nr_s_pIn = "<TD COLSPAN=2><B>P</B>. Final <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
			q_b_cga1+= nr_s_pIn	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pIn,2,2) + "</TD></TR>"
			q_b_cga1+= "<TR>"+ nr_s_pu0				+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu0n,2,2)	+ "</TD></TR>"
		}
		q_b_cga1+= "<TR>"+ nr_s_pu1					+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu1n,2,2)	+ "</TD></TR>"
		q_b_cga1+= "<TR><TD COLSPAN=2>"+ nr_s_pu2	+ "</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu2n,2,2)	+ "</TD></TR>"
		q_b_cga1+= "<TR><TD COLSPAN=1>"+ nr_s_pu3	+ "</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu3n,2,2)	+ "</TD></TR>"
		q_b_cga1+= "<TR><TD COLSPAN=1>"+ nr_s_pu4	+ "</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu4n,2,2)	+ "</TD></TR>"
	}else{
		if ((q == "a3")||(q == "a4")){//P inicial, P final
			q_b_cga1+= "<TR><TD ROWSPAN=3 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
			q_b_cga1+= nr_s_pIn			+"<TD ALIGN=right>" + formatNumEuro(nr_v_pIn,2,2) + "</TD></TR>"
			q_b_cga1+= "<TR>"+ nr_s_pFn	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFn,2,2) + "</TD></TR>"
		}
		if ((q == "a1")||(q == "a2")){//P inicial, P final
			nr_s_pFn	="<TD COLSPAN=3><B>P</B>. Valor da pensão </TD>"
			q_b_cga1+= "<TR>"+ nr_s_pFn	+"<TD ALIGN=right>" + formatNumEuro(nr_v_pFn,2,2) + "</TD></TR>"
		}
	}
	q_b_cga1+= "</TABLE>"

										
	nr_v_tafp = "2,0%"
	if (ano_ap > 2015){nr_v_tafp = "2,0% a 2,3%"}//se tempo de serviço > 20
	
	q_b_cga2 = "<TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_cga2+= "<TR><TH COLSPAN=4 ALIGN=CENTER>"+ tit_QFC2		+"</TH></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=4 ALIGN=CENTER>"+ fca_QFC2		+"</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_r			+"</TD><TD WIDTH='20%' ALIGN=right>"+ formatNumEuro(nr_v_r,2,2)		+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_rr		+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_rr,2,2)	+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_tafp		+"</TD><TD ALIGN=right>"+			nr_v_tafp			+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_t1		+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_t1,1,1)	+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_t2		+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_t2,1,1)	+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_c			+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_c,1,1)		+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_p1		+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_p1,2,2)	+ "</TD></TR>"
	q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_p2		+"</TD><TD ALIGN=right>"+ formatNumEuro(nr_v_p2,2,2)	+ "</TD></TR>"
	
	if (fSustent == "ok"){//factor de sustentabilidade
		q_b_cga2+= "<TR><TD COLSPAN=3>"+ nr_s_fs	+"</TD><TD ALIGN=right>"+ nr_v_fs	+ "</TD></TR>"
	}
	if (tipoPensao == "unificada"){ 
		q_b_cga2+= "<TR><TD ROWSPAN=7 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
		if (nr_s_pIMin == "ok"){nr_s_pI = "<TD COLSPAN=2><B>P</B>. Inicial <SUP><B CLASS=azul>mínima</B></SUP></TD>"}
		q_b_cga2+= nr_s_pI							+"<TD ALIGN=right>" + formatNumEuro(nr_v_pI,2,2)	+ "</TD></TR>"
		
		if ((gRunPenalizacao == "ok")||(ghaBonifccs == "ok")){
			q_b_cga2+= "<TR>"+ nr_s_pu0				+ "<TD ALIGN=right>" + formatNumEuro(nr_v_pu0,2,2)	+ "</TD></TR>"
		}
		q_b_cga2+= "<TR>"+ nr_s_pu1					+"<TD ALIGN=right>" + formatNumEuro(nr_v_pu1,2,2)	+ "</TD></TR>"
		q_b_cga2+= "<TR><TD COLSPAN=2>"+ nr_s_pu2	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu2,2,2)	+ "</TD></TR>"
		q_b_cga2+= "<TR><TD COLSPAN=1>"+ nr_s_pu3	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu3,2,2)	+ "</TD></TR>"
		q_b_cga2+= "<TR><TD COLSPAN=1>"+ nr_s_pu4	+"</TD><TD ALIGN=right>" + formatNumEuro(nr_v_pu4,2,2)	+ "</TD></TR>"
	}else{
		q_b_cga2+= "<TR><TD ROWSPAN=3 ALIGN=CENTER>"+ nr_s_vp+"</TD>"
		q_b_cga2+= nr_s_pI			+"<TD ALIGN=right>"+ formatNumEuro(nr_v_pI,2,2)	+ "</TD></TR>"
		q_b_cga2+= "<TR>"+ nr_s_pF	+"<TD ALIGN=right>"+ formatNumEuro(nr_v_pF,2,2)	+ "</TD></TR>"
	}
	q_b_cga2+= "</TABLE>"
		
	
	q_b_cga_fim = "<BR><TABLE WIDTH='100%' cellspacing=0 ALIGN=CENTER STYLE=border-collapse:collapse;border:1px>"
	q_b_cga_fim+= "<TR><TH ALIGN=RIGHT><B>"+ nr_s_pAtribuir	+" </B></TH>"
	q_b_cga_fim+= "<TH ALIGN=RIGHT WIDTH='"+colWIDTH+"'><B>"+ formatNumEuro(nr_v_pAtribuir,2,2)	+ "</B></TH></TR>"
	q_b_cga_fim+= "</TABLE>"
	
	q_b_calculo=""
	if ((q=="a1") || (q=="a2") || (q=="a3")){
		q_b_calculo = q_b_cga1
	}else{
		if (q=="a4"){
			q_b_calculo = q_b_cga1 + "<BR>" +q_b_cga2
		}else{
			q_b_calculo = q_b_cga2
		}
	}
	gRunPenalizacao = ""
	ghaBonifccs = ""
	
	return q_b_calculo +"|"+q_b_cga_fim;
	return q_b_calculo;
}

function checkGetPensaoMinima(v_pCalculada){
	var str_return ="0"
	ghpm_idx	= document.getElementById("hpm_idx").value
	str_ghpm	= ""
	ts_cga_ap	= getTempoServico_NR('1','0','am')
	ts_cga_ap	= ts_cga_ap.replace(",", ".")
	ghpm_idx = parseInt(ghpm_idx,10)+1
	for (i=0; i<ghpm_idx; i++){
		str_ghpm= document.getElementById("hpm"+i).value
		arr_ghpm= str_ghpm.split(";")
		ts_mp	= parseInt(arr_ghpm[1],10)
		ts_Mp	= parseInt(arr_ghpm[2],10)	
		vPminima= arr_ghpm[3].replace(",", ".")
		//alert(ts_cga_ap+" "+ts_mp+" "+ts_Mp)
		if ((ts_cga_ap >= ts_mp)&&(ts_cga_ap < ts_Mp)){
			str_return = vPminima
			return vPminima ;
			break;
		}
	}
}

function getQuadroProporcionalMinima(ts_cga){
	var str_html = "";
	var str_ghpm = 0;
	var tmp_CGA_meses =	ts_cga
	var tmp_CGA_meses = parseInt(ts_cga,10)*12 + parseInt(get_tsSoMeses(ts_cga),10)
	if(document.getElementById("hpm0")!= null){
		str_ghpm = document.getElementById("hpm0").value
		var arr_ghpm = str_ghpm.split(";")
		var vPminima = arr_ghpm[3].replace(",", ".")
	
		var pmn_CGA = vPminima
		var pen_CGA = (pmn_CGA *  tmp_CGA_meses)/60
		var str1 = "Pensão mínima CGA (60 meses)"
		var str2 = "Tempo CGA"//(meses)
		var str3 = "Pensão a atribuir"
		str_html=	"<TABLE WIDTH='100%' ALIGN=CENTER cellspacing=0 STYLE=border-collapse:collapse;border:1px>"
		str_html+=	"<TR><TH COLSPAN=3 ALIGN=center><B>Pensão CGA</B></TH></TR>"
		str_html+=	"<TR><TD COLSPAN=2 ALIGN=center>Descritivo</TD><TD COLSPAN=1 ALIGN=center>Proporcional<br>da mínima</TD></TR>"	
		str_html+=	"<TR><TD COLSPAN=2><B>A</B>. " + str1 + "</TD><TD ALIGN=right>" + formatNumEuro(pmn_CGA,2,2) +"</TD></TR>"
		str_html+=	"<TR><TD COLSPAN=2><B>B</B>. " + str2 + "</TD><TD ALIGN=right>" + tmp_CGA_meses				 + "m</TD></TR>"
		str_html+=	"<TR><TD><B>C</B>. " + str3 + "</TD><TD ALIGN=RIGHT><SPAN class=cinza>(<b>A</b>x<b>B</b>/60)</SPAN></TD><TD ALIGN=right><B>" + formatNumEuro(pen_CGA,2,2) + "</B></TD></TR>"
		str_html+=	"</TABLE>"
	}
	return str_html;
}
