// Shared Code
//---------------------------all default vars--------------------------------
var viewportwidth;
var viewportheight;

var keypresstime=new Date();
var delayperiod=500;

var numberlwindows=0;

//page load start up function
$(document).ready(function(){
	init();
});
jQuery.extend(jQuery.expr[':'], {
    focus: function(element) { 
        return element == document.activeElement; 
    }
});
new function($) {
  $.fn.setCursorPosition = function(pos) {
    if ($(this).get(0).setSelectionRange) {
	  try{$(this).get(0).setSelectionRange(pos, pos);}
	  catch(e){}
    } else if ($(this).get(0).createTextRange) {
      var range = $(this).get(0).createTextRange();
      range.collapse(true);
      range.moveEnd('character', pos);
      range.moveStart('character', pos);
      range.select();
    }
  }
}(jQuery);
new function($) {
  $.fn.setCursorEnd = function() {
	  $(this).setCursorPosition($(this).val().length);
  }
}(jQuery);
new function($) {
	$.fn.slideUpDown = function(spd) {
		if($(this).is(':visible')){
			$(this).slideUp(spd, function(){
				$(this).parent().find('.mortgageratebox_title img')[0].src='images/slider/slider_right.png';
			});
		}
		else{
			$(this).slideDown(spd, function(){
				$(this).parent().find('.mortgageratebox_title img')[0].src='images/slider/slider_down.png';
			});
		}
	}
}(jQuery);
function isScrolledIntoView($div,$elem){
	var docViewTop = $div.scrollTop();
	var docViewBottom = docViewTop + $div.height();
	var elemTop = $elem.position().top + docViewTop;
	var elemBottom = elemTop + $elem.height();
	return ((elemBottom > docViewTop) && (elemTop < docViewBottom) && (elemBottom < docViewBottom) &&  (elemTop > docViewTop) );
}
function _stopPropagation(e){
	if(e){
		if(e.stopPropagation) e.stopPropagation();
		e.cancelBubble = true;
		e.returnValue = false;
	}
	if(window.event){
		if(window.event.cancelBubble)
			window.event.cancelBubble = true;
		if(window.event.returnValue)
			window.event.returnValue = false;
	}
	return false;
}
function getArrayIndex(array,value){
	for(var i=0;i<array.length;i++){
		if(array[i]==value)
			return i;
	}
}
function donothing(){}
//---------------------------all default vars--------------------------------
//-------------------------layout scripts start------------------------
function init(){
	setHeightWidth();
	$(window).resize(function() {
		setHeightWidth();
	});
	if(jQuery.browser.msie&&parseFloat(jQuery.browser.version)<8){
		$('input').css('margin','-1px 0 -1px 0');
	}
}
function setHeightWidth(){
	viewportwidth = getWindowWidth();
	viewportheight = getWindowHeight();
}
function getWindowWidth(){
	// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
	if(typeof window.innerWidth != 'undefined'){
		return window.innerWidth;
	}
	// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
	else if(typeof document.documentElement!='undefined'&&typeof document.documentElement.clientWidth!='undefined' && document.documentElement.clientWidth!=0){
		return document.documentElement.clientWidth;
	}
	// older versions of IE
	else{
		return document.getElementsByTagName('body')[0].clientWidth;
	}
}
function getWindowHeight(){
	// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
	if(typeof window.innerWidth != 'undefined'){
		return window.innerHeight;
	}
	// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
	else if(typeof document.documentElement!='undefined'&&typeof document.documentElement.clientWidth!='undefined' && document.documentElement.clientWidth!=0){
		return document.documentElement.clientHeight;
	}
	// older versions of IE
	else{
		return document.getElementsByTagName('body')[0].clientHeight;
	}
}
function getMouseOffset(target, ev){ 
	ev = ev || window.event; 
	var docPos = getPosition(target); 
	var mousePos = mouseCoords(ev); 
	return {x:mousePos.x - docPos.x, y:mousePos.y - docPos.y}; 
} 
function getPosition(e){ 
	var left = 0; 
	var top  = 0; 
	while (e.offsetParent){ 
		left += e.offsetLeft; 
		top += e.offsetTop; 
		e = e.offsetParent; 
	} 
	left += e.offsetLeft; 
	top  += e.offsetTop; 
	return {x:left, y:top}; 
}
function mouseCoords(ev){ 
	if(ev.pageX || ev.pageY){ 
		return {x:ev.pageX, y:ev.pageY}; 
	} 
	if(document.body)
		return {x:ev.clientX + document.body.scrollLeft - document.body.clientLeft, y:ev.clientY + document.body.scrollTop  - document.body.clientTop}; 
	else
		return {x:0,y:0};
} 
function mouseMove(ev){ 
	ev = ev || window.event; 
	var mousePos = mouseCoords(ev); 
	if(dragObject&&mousePos.x-mouseOffset.x>50&&mousePos.x-mouseOffset.x<viewportwidth-50){
		document.body.style.cursor = 'e-resize';
		document.getElementById('left_panel').style.width=String(mousePos.x-mouseOffset.x)+'px';
		document.getElementById('separator').style.left=String(mousePos.x-mouseOffset.x+borderleftwidth)+'px';
		document.getElementById('right_panel').style.left=String(mousePos.x-mouseOffset.x+separatorwidth+borderleftwidth)+'px';
		document.getElementById('right_panel').style.width=String(viewportwidth-(mousePos.x-mouseOffset.x)-separatorwidth-borderleftwidth-borderrightwidth)+'px'; //total - left panel - separator - padding left right
		return false; 
	} 
} 
function mouseUp(){ 
	if(dragObject!=null){
		dragObject = null; 
		setLeftPanelWidth();
		document.body.style.cursor = 'auto';
	}
}
//-------------------------layout scripts end--------------------------
// -----------------simulate drop down list (select) code start ------------------
function isInLW($lb){
	while($lb.parent().length){
		if($lb.attr("class").length)
			if($lb.attr("class").indexOf("lwindow")>=0)
				return true;
		$lb=$lb.parent();
	}
	return false;
}
function getElemLW($elem){
	while($elem.parent().length){
		if($elem.attr("class").length)
			if($elem.attr("class").indexOf("lwindow")>=0)
				return $elem;
		$elem=$elem.parent();
	}
	return null;
}
function getEventTarget(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3) // defeat Safari bug
		targ = targ.parentNode;
	return targ;
}
// -----------------similate drop down list (select) code end --------------------
//---------------General functions, Make XML element for Callback parameter start-----------------------
function trim(input){
	return input.replace(/^\s+|\s+$/g,"");
}
function replaceCBChar(input){
	var output = input;
	output = output.replace(/\r\n/g,'[NewLine]');
	output = output.replace(/\n\r/g,'[NewLine]');
	output = output.replace(/\r/g,'[NewLine]');
	output = output.replace(/\n/g,'[NewLine]');
	output = output.replace(/\&/g,'[And]');
	output = output.replace(/\</g,'[LessThan]');
	output = output.replace(/\>/g,'[GreaterThan]');
	output = output.replace(/\'/g,'[SingleQuote]');
	return output;
}
function replacenewline(input){
	var output = input;
	output = output.replace(/\r\n/g,'[NewLine]');
	output = output.replace(/\n\r/g,'[NewLine]');
	output = output.replace(/\r/g,'[NewLine]');
	output = output.replace(/\n/g,'[NewLine]');
	return output;
}
function makehtml(text) {
	var textneu = text.replace(/&/g,"&amp;");
	textneu = textneu.replace(/</g,"&lt;");
	textneu = textneu.replace(/>/g,"&gt;");
	//textneu = textneu.replace(/'/g,"&#39;");
	textneu = textneu.replace(/"/g,"&quot;");
	//textneu = textneu.replace(/\//g,"&#47;");
	textneu = textneu.replace(/\\/g,"&#92;");
	textneu = textneu.replace(/\r\n/g," ");
	textneu = textneu.replace(/\n/g," ");
	textneu = textneu.replace(/\r/g," ");
	return textneu;
}
function DateForDB(dt){
	var d=DateForDB_Date(dt);
	if(d!=null)
		return d.getFullYear()+'-'+(d.getMonth()+1)+'-'+d.getDate();
	else
		return dt;
}
function DateForDB_Date(dt){
	if(dt==null) return null;
	var d=null;
	var ymd=dt.split("-");
	if(ymd.length==3){
		if(isNaN(ymd[0])) return null;
		if(isNaN(ymd[1])) return null;
		if(isNaN(ymd[2])) return null;
		if(ymd[2]<1||ymd[2]>31) return null;
		if(ymd[1]<1||ymd[1]>12) return null;
		if(ymd[0]<1||ymd[0]>3000) return null;
		if(ymd.length>2){
			try{
				if(ymd[0].length==2)
					ymd[0]=(ymd[0]>30?'19':'20')+ymd[0];
				d=new Date();
				d.setFullYear(ymd[0],ymd[1]-1,ymd[2]);
			}
			catch(ex){}
		}
	}
	else{
		var dmy=dt.split("/");
		if(dmy.length!=3) return null;
		if(isNaN(dmy[0])) return null;
		if(isNaN(dmy[1])) return null;
		if(isNaN(dmy[2])) return null;
		if(dmy[0]<1||dmy[0]>31) return null;
		if(dmy[1]<1||dmy[1]>12) return null;
		if(dmy[2]<1||dmy[2]>3000) return null;
		if(dmy.length>2){
			try{
				if(dmy[2].length==2)
					dmy[2]=(dmy[2]>30?'19':'20')+dmy[2];
				d=new Date();
				d.setFullYear(dmy[2],dmy[1]-1,dmy[0]);
			}
			catch(ex){}
		}
	}
	return d;
}
function formatCurrency(num,e) {
	if(e!=null)
		if(getKeyCode(e)==9)
			return num;
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
		num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
		cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + num);
}
function getCurrencyNumber(c){
	var ret=String(c).replace(/\,/g,'').replace(/\ /g,'').replace(/\$/g,'');
	return (isNaN(ret)||ret==''?0:ret);
}
function IsNumeric(sText){
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
	for (i = 0; i < sText.length && IsNumber == true; i++) { 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1){
			IsNumber = false;
		}
	}
	return IsNumber;
}
function getHeight(elem) {
	return elem.offsetHeight;
}
function getWidth(elem) {
	return elem.offsetWidth;
}
function AddField(FieldName){
	var clientInput = '';
	if (document.getElementById(FieldName)){
		clientInput = '<ClientDetail>';
		clientInput+='<FieldName>';
		clientInput+=FieldName;
		clientInput+='</FieldName>';
		clientInput+='<FieldValue>';
		clientInput+=replaceCBChar(String(document.getElementById(FieldName).value));
		clientInput+='</FieldValue>';
		clientInput+='</ClientDetail>';
	}
	return clientInput;
}
function AddFieldValue(FieldName, FieldValue){
	var clientInput = '';
	clientInput = '<ClientDetail>';
	clientInput+='<FieldName>';
	clientInput+=FieldName;
	clientInput+='</FieldName>';
	clientInput+='<FieldValue>';
	clientInput+=replaceCBChar(String(FieldValue));
	clientInput+='</FieldValue>';
	clientInput+='</ClientDetail>';
	return clientInput;
}
function getCheckedValues(id){
	var $chkboxes=$('input[type=checkbox][id^='+id+']');
	var val='';
	for (var i=0;i<$chkboxes.length;i++) {
		if($chkboxes.eq(i).attr('checked')) {                          
			val+=$chkboxes.eq(i).attr('id').replace(id,'')+',';
		}
	}
	return val;
}
function getCheckedNames(id){
	var $chkboxes=$('input[type=checkbox][id^='+id+']');
	var val='';
	for (var i=0;i<$chkboxes.length;i++) {
		if($chkboxes.eq(i).attr('checked')) {                         
			val+=$chkboxes.eq(i).next().text()+',';
		}
	}
	return val;
}
function setRadioValue(id,val){
	var rdos=$('input[type=radio][name='+id+']');
	for (var i=0;i<rdos.length;i++) {
		if(rdos.eq(i).val()==val)
			rdos.eq(i).attr('checked',true);
		else
			rdos.eq(i).attr('checked',false);
	}
}
function getRadioValue(id){
	var rdos=$('input[type=radio][name='+id+']');
	for (var i=0;i<rdos.length;i++) {
		if(rdos[i].checked) {
			return rdos.eq(i).val();
		}
	}
	return '';
}
function getKeyCode(e){
	if(window.event)
		if(window.event.keyCode)
			return window.event.keyCode;
	if(e.keyCode)
		return e.keyCode;
	if(e.which)
		return e.which;
	return -1;
}
function hideValidation(divid){
	if(divid==null||divid=='') return;
	var isvalid=true;
	var inputs=$('#'+divid+' input');
	inputs=inputs.add('#'+divid+' textarea:visible');
	for(var i=0;i<inputs.length;i++){
		if(inputs.eq(i).attr('id'))
			$.validationEngine.closePrompt('#'+inputs.eq(i).attr('id'));
	}
}
function validate(divid){
	$('#'+divid+' .lw_content').scrollTop(0);
	var isvalid=true;
	var inputs=$('#'+divid+' input:visible');
	inputs=inputs.add('#'+divid+' textarea:visible');
	for(var i=0;i<inputs.length;i++){
		if(inputs.eq(i).attr('class').indexOf('validate')>=0){
			if($.validationEngine.loadValidation('#'+inputs.eq(i).attr('id'))){
				isvalid=false;
			}
		}
	}
	if(isvalid) $.validationEngine.closePrompt('.formError',true);
	$('.formError').unbind('click').click(function(){$.validationEngine.closePrompt($(this),true);});
	return isvalid;
}
function validateElem(elemid){
	var isvalid=true;
	var inputs=$('#'+elemid+':visible');
	for(var i=0;i<inputs.length;i++){
		if(inputs.eq(i).attr('class').indexOf('validate')>=0){
			if($.validationEngine.loadValidation('#'+inputs.eq(i).attr('id'))){
				isvalid=false;
			}
		}
	}
	if(isvalid) $.validationEngine.closePrompt('#'+elemid);
	return isvalid;
}
function textDefault($elem){
	$elem.val($elem.attr('title'));
	$elem.css('color','#888888');
	$elem.css('font-size','13px');
}
function textNormal($elem){
	$elem.css('color','');
	$elem.css('font-size','');
}
function setupTextWithTitle(divid){
	var $inputs=$('#'+divid+' input[title][type=text]');
	$inputs=$inputs.add('#'+divid+' textarea[title]');
	for(var i=0;i<$inputs.length;i++){
		if($inputs.eq(i).val()==''||$inputs.eq(i).val()=='0'||$inputs.eq(i).val()==$inputs.eq(i).attr('title')){
			textDefault($inputs.eq(i));
		}
		else{
			textNormal($inputs.eq(i));
		}
		$inputs.eq(i).unbind('blur').blur(function(){
			if($(this).val()==''||$(this).val()=='0'){
				textDefault($(this));
			}
		});
		$inputs.eq(i).unbind('focus').focus(function(){
			if($(this).val()==$(this).attr('title')){
				$(this).val('');
				textNormal($(this));
			}
		});
	}
}
//---------------General functions, Make XML element for Callback parameter end-----------------------
//----------------------------------light window functions start--------------------------------------
function isvalidemail(email){
	if(email.match(/^[a-zA-Z0-9_\.\-]+\@([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]{2,4}$/)) return true;
	return false;
}
function scrollLock(e) {
    var a=e.data.pos;
    window.scrollTo(a[0],a[1]);
    return false;
}
var scrolltop=0;
var scrollleft=0;
function showlw(elemid) {
	var $cvr = $("#cover");
	var $lw = $("#"+elemid);
	if($cvr.attr('id')){
		$('#iframe_cover').show();
		$('#iframe_cover').css("left","0");
		$('#iframe_cover').css("top","0");
		//$('#iframe_cover').css("height","100%");
		$('#iframe_cover').css("height",Math.max($(window).height(),$('#container').height())+'px');
		$('#iframe_cover').css("width",Math.max($(window).width(),$('#container').width())+'px');
		$('#iframe_cover').css("position","absolute");
		$('#iframe_cover').css("overflow","hidden");
		$cvr.show();
		//$cvr.css('height','100%');
		$cvr.css("height",Math.max($(window).height(),$('#container').height()+$('#container').next().height())+'px');
		$cvr.css('width',Math.max($(window).width(),$('#container').width())+'px');
		$cvr.css('overflow','hidden');
		//lock window scrolling
		scrollleft=self.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft;
		scrolltop=self.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop;
    	window.scrollTo(0,0);
		//$(window).bind('scroll',{pos: [0,0]},scrollLock);
	}
	if($lw.css('display')=='none'){
		if($lw.attr('id')!='div_lwloading') numberlwindows=numberlwindows+1;
		$lw.show();
		var leftval = Math.max((viewportwidth-$lw.width())/2-25,0)+(numberlwindows-1)*10;
		var topval = Math.max((viewportheight-$lw.height())/2-25,0)+(numberlwindows-1)*10;
		$lw.css("left",leftval+"px");
		$lw.css("top",topval+"px");
		if($lw.attr('id')=='div_lwloading'){
			$lw.css("z-index",1000000);
			$cvr.css("z-index",1000000-1);
			$('#iframe_cover').css("z-index",1000000-1);
		}
		else{
			$lw.css("z-index",100+numberlwindows*2);
			$cvr.css("z-index",100+numberlwindows*2-1);
			$('#iframe_cover').css("z-index",100+numberlwindows*2-1);
		}
		//hideAllBoxes();
	}
}
function closeAlllw(){
	$('.lwindow').hide();
	$('#iframe_cover').hide();
	$("#cover").hide();
	//$(window).unbind('scroll',scrollLock);
	window.scrollTo(scrollleft,scrolltop);
	numberlwindows=0;
}
function closelw(elemid){
	var $cvr = $("#cover");
	var $lw = $("#"+elemid);
	if($lw.attr('id')){
		if($lw.css('display')!='none'){
			$lw.hide();
			if($lw.attr('id')!='div_lwloading') numberlwindows=numberlwindows-1;
			//$.validationEngine.closePrompt(".formError", true);
		}
	}
	if($cvr.attr('id')&&(!haslw())){
		$('#iframe_cover').hide();
		$cvr.hide();
		//$(window).unbind('scroll',scrollLock);
		window.scrollTo(scrollleft,scrolltop);
		//closelwrefresh();
	}
	$cvr.css("z-index",100+numberlwindows*2-1);
	$('#iframe_cover').css("z-index",100+numberlwindows*2-1);
}
function haslw(id){
	if(id==null){
		if($('.lwindow:visible')[0])
			return true;
		return false;
	}
	else{
		if($('#'+id+':visible')[0])
			return true;
		return false;
	}
}
//----------------------------------light window functions end--------------------------------------


/*---------------------------------------------------------------------------------------------*/
/*------------------------------------------show crm-------------------------------------------*/
function showshowcrm(){
	showlw('div_lwshowcrm');
	lwshowcrm_show(1);
}
function lwshowcrm_getcurrent(){
	var $elem=$('div[id^=lwshowcrm_content]:visible');
	var currentstep=1;
	if($elem[0])
		currentstep=$elem.attr('id').replace('lwshowcrm_content','');
	if(isNaN(currentstep)) currentstep=1;
	return currentstep;
}
function lwshowcrm_next(){
	var currentstep=parseInt(lwshowcrm_getcurrent());
	if(currentstep==10) currentstep=1;
	else currentstep=currentstep+1;
	lwshowcrm_show(currentstep);
}
function lwshowcrm_back(){
	var currentstep=parseInt(lwshowcrm_getcurrent());
	if(currentstep==1) currentstep=10;
	else currentstep=currentstep-1;
	lwshowcrm_show(currentstep);
}
function lwshowcrm_show(id){
	if(id==1||id==4||id==10){
		$('#lwshowcrm_content'+id).children().css('background-image','url(images/showmycrm/step'+id+'.jpg)');
	}
	else{
		$('#lwshowcrm_content'+id).children().eq(0).css('background-image','url(images/showmycrm/step'+String(id-1)+'.jpg)');
		$('#lwshowcrm_content'+id).children().eq(1).find('img').attr('src','images/showmycrm/step'+id+'.jpg');
		$('#lwshowcrm_content'+id).children().eq(2).css('background-image','url(images/showmycrm/step'+String(id+1)+'.jpg)');
	}
	if(id==1||id==10){
		$('#lwshowcrm_stepfull').hide();
		$('#lwshowcrm_findoutmore').hide();
		$('#lwshowcrm_stepshort').show();
	}
	else{
		$('#lwshowcrm_stepshort').hide();
		$('#lwshowcrm_findoutmore').show();
		$('#lwshowcrm_stepfull').show();
	}
	$('div[id^=lwshowcrm_content]').hide();
	$('div[id^=lwshowcrm_title]').hide();
	$('div[id^=lwshowcrm_titlestep]').hide();
	$('div[id^=lwshowcrm_description]').hide();
	$('#lwshowcrm_content'+id).show();
	$('#lwshowcrm_title'+id).show();
	$('#lwshowcrm_titlestep'+id).show();
	$('#lwshowcrm_description'+id).show();
	$('#lwshowcrm_content'+id).find('.lwshowcrm_content_fade').fadeTo(0,0.2);
	$('#lwshowcrm_content'+id).find('.lwshowcrm_content_fade').fadeTo(0,0.2);
	$('div[id^=lwshowcrm_step][id!=lwshowcrm_step'+id+']').removeClass('active');
	$('div[id^=lwshowcrm_stepshort][id!=lwshowcrm_stepshort'+id+']').removeClass('active');
	if(!$('#lwshowcrm_step'+id).hasClass('active'))
		$('#lwshowcrm_step'+id).addClass('active');
	if(!$('#lwshowcrm_stepshort'+id).hasClass('active'))
		$('#lwshowcrm_stepshort'+id).addClass('active');
}

//request info
function showrequestnow(){
	showlw('div_lwrequestinfo');
	setupTextWithTitle('div_lwrequestinfo');
}
function showAddressSuggestion(addressEntered){
	if(addressEntered.indexOf(" ") > 0){
		if(addressEntered.substring(addressEntered.indexOf(" ")+1).length>3){
			//callback with parameter - addressEntered
		}
		else{
			$("#div_callbackAddress").hide();
		}
	}
	else{
		$("#div_callbackAddress").hide();
	}
}
function closeAddress(){
	$("#div_callbackAddress").hide();
}
function fillAddress(address){
	$("#CTRL_Life1_1317_all").val(address);
	$("#div_callbackAddress").hide();
}

//events
function showevent(){
	showlw('div_lwevent');
}
/*---------------------------------------------------------------------------------------------*/


/*---------------------------------------------------------------------------------------------*/
/*------------------------------------------default page events--------------------------------*/
function event_getcurrent(){
	var $elem=$('.homemain_panel .event_item:visible');
	if($elem[0]){
		return parseInt($elem.attr('id').replace('event_',''));
	}
	else
		return 1;
}
function event_getmax(){
	var $elem=$('.homemain_panel .event_item');
	if($elem[0]){
		return $elem.length;
	}
	else
		return 0;
}
function event_shownext(){
	var curr=event_getcurrent();
	$('#event_'+String(curr)).hide();
	var nxt=curr+1;
	if(nxt>event_getmax()) nxt=1;
	$('#event_'+String(nxt)).show();
}
function event_showback(){
	var curr=event_getcurrent();
	var curr=event_getcurrent();
	$('#event_'+String(curr)).hide();
	var nxt=curr-1;
	if(nxt<1) nxt=event_getmax();
	$('#event_'+String(nxt)).show();
}
/*---------------------------------------------------------------------------------------------*/


